--- /dev/null
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = parseMedia;
+
+var _Container = require('./nodes/Container');
+
+var _Container2 = _interopRequireDefault(_Container);
+
+var _parsers = require('./parsers');
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+/**\r
+ * Parses a media query list into an array of nodes. A typical node signature:\r
+ * {string} node.type -- one of: 'media-query', 'media-type', 'keyword',\r
+ * 'media-feature-expression', 'media-feature', 'colon', 'value'\r
+ * {string} node.value -- the contents of a particular element, trimmed\r
+ * e.g.: `screen`, `max-width`, `1024px`\r
+ * {string} node.after -- whitespaces that follow the element\r
+ * {string} node.before -- whitespaces that precede the element\r
+ * {string} node.sourceIndex -- the index of the element in a source media\r
+ * query list, 0-based\r
+ * {object} node.parent -- a link to the parent node (a container)\r
+ *\r
+ * Some nodes (media queries, media feature expressions) contain other nodes.\r
+ * They additionally have:\r
+ * {array} node.nodes -- an array of nodes of the type described here\r
+ * {funciton} node.each -- traverses direct children of the node, calling\r
+ * a callback for each one\r
+ * {funciton} node.walk -- traverses ALL descendants of the node, calling\r
+ * a callback for each one\r
+ */
+
+function parseMedia(value) {
+ return new _Container2.default({
+ nodes: (0, _parsers.parseMediaList)(value),
+ type: 'media-query-list',
+ value: value.trim()
+ });
+}
\ No newline at end of file