{"remainingRequest":"/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/node_modules/babel-loader/lib/index.js!/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/node_modules/ts-loader/index.js?{\"transpileOnly\":true,\"appendTsSuffixTo\":[{}],\"happyPackMode\":false}!/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/node_modules/vue-loader/lib/selector.js?type=script&index=0!/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/src/components/Demo.vue","dependencies":[{"path":"/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/src/components/Demo.vue","mtime":1525407695544},{"path":"/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/.babelrc","mtime":1525205773949},{"path":"/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/node_modules/cache-loader/dist/cjs.js","mtime":0},{"path":"/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/node_modules/babel-loader/lib/index.js","mtime":1519636541000},{"path":"/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/node_modules/ts-loader/index.js","mtime":1518036502000},{"path":"/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/node_modules/vue-loader/lib/selector.js","mtime":1520395331000}],"contextDependencies":[],"result":["import Vue from 'vue';\nimport TreeNode from './TreeNode.vue';\nimport { MmmHtmlParser } from '../../../../../dist/index';\nexport default Vue.extend({\n  name: 'Demo',\n  components: {\n    TreeNode: TreeNode\n  },\n  created: function created() {\n    console.log('----- created -----');\n    MmmHtmlParser.options.trimRootWhitespace = true;\n    MmmHtmlParser.options.generateAdvancedObjects = true;\n    var root = new MmmHtmlParser().start(\"<li class=\\\"item\\\"><div :class=\\\"{'type-tag': model.type === 'Tag', 'type-text': model.type === 'Text'}\\\" @click=\\\"toggle\\\" @dblclick=\\\"changeType\\\"></div></li>\");\n    console.log('root.tagsTotalCount: ', root.tagsTotalCount);\n    console.log('root.tagsIgnoredCount: ', root.tagsIgnoredCount);\n    console.log('root.tagsOpenedCount: ', root.tagsOpenedCount);\n    console.log('- root.tagsClosedCount: ', root.tagsClosedCount);\n    console.log('= tagsRemainingCount: ', root.tagsOpenedCount - root.tagsClosedCount);\n    console[root.tagsErrorCount > 0 ? 'warn' : 'log']('! tagsErrorCount', root.tagsErrorCount);\n    this.treeData = root;\n  },\n  data: function data() {\n    return {\n      treeData: {},\n      markupMe: \"\\n        <li class=\\\"item\\\">\\n          <div\\n            :class=\\\"{'type-tag': model.type === 'Tag', 'type-text': model.type === 'Text'}\\\"\\n            @click=\\\"toggle\\\"\\n            @dblclick=\\\"changeType\\\"\\n          >\\n            <span\\n              v-if=\\\"isFolder\\\"\\n            >\\n              <span\\n                v-if=\\\"open\\\"\\n                class=\\\"open-indicator\\\"\\n              >\\n                &nbsp;&ndash;\\n              </span>\\n              <span\\n                v-else\\n                class=\\\"close-indicator\\\"\\n              >\\n                +\\n              </span>\\n            </span>\\n            {{ generateLabelFn ? generateLabelFn(model) : model.content }}\\n            <span\\n              v-if=\\\"!open\\\"\\n            >\\n              ... &lt;/{{ model.tagName }}&gt;\\n            </span>\\n          </div>\\n          <ul\\n            v-show=\\\"open\\\"\\n            v-if=\\\"isFolder\\\"\\n          >\\n            <Tree\\n              v-for=\\\"(model, index) in model.children\\\"\\n              :key=\\\"index\\\"\\n              :model=\\\"model\\\"\\n              :generateLabelFn=\\\"generateLabelFn\\\"\\n            >\\n            </Tree>\\n          </ul>\\n          <div\\n            v-if=\\\"open && model.type === 'Tag' && !model.isSelfClosingTag && !model.isVoidTag\\\"\\n            :class=\\\"{'type-tag': model.type === 'Tag', 'type-text': model.type === 'Text'}\\\"\\n          >\\n            &lt;{{ model.tagName }}&gt;\\n          </div>\\n        </li>\\n      \",\n      markup0: \"\\n        <span>\\n          Text without closing tag\\n      \",\n      markup1: \"\\n        <form action=\\\"/action_page.php\\\"><fieldset>\\n          <legend>Personal information:</legend>\\n          First\\n          name:\\n          <br />\\n          <self />\\n          <input type=\\\"text\\\" name=\\\"firstname\\\" value=\\\"Mickey\\\">\\n        </fieldset>\\n\\n      \",\n      markup2: \"\\n        <form action=\\\"/action_page.php\\\">\\n          <fieldset>\\n            <legend>Personal information:</legend>\\n            First name:<br>\\n            <input type=\\\"text\\\" name=\\\"firstname\\\" value=\\\"Mickey\\\"><br>\\n            Last name:<br>\\n            <input type=\\\"text\\\" name=\\\"lastname\\\" value=\\\"Mouse\\\"><br><br>\\n            <input type=\\\"submit\\\" value=\\\"Submit\\\">\\n          </fieldset>\\n        </form>\\n        <content>\\n          <div>\\n            <self />\\n          </div>\\n        </content>\\n\\n      \",\n      markupCodeEx: \"\\n        <code>\\n          <fieldset>\\n            <legend>Personal information:</legend>\\n            First name:<br>\\n            <input type=\\\"text\\\" name=\\\"firstname\\\" value=\\\"Mickey\\\"><br>\\n            Last name:<br>\\n            <input type=\\\"text\\\" name=\\\"lastname\\\" value=\\\"Mouse\\\"><br><br>\\n            <input type=\\\"submit\\\" value=\\\"Submit\\\">\\n          </fieldset>\\n        </code>\\n        <content>\\n          <div>\\n            <self />\\n          </div>\\n        </content>\\n      \",\n      markupCodeEx2: \"\\n        <code>\\n          <fieldset>\\n            <legend>Personal information:</legend>\\n            First name:<br>\\n            <input type=\\\"text\\\" name=\\\"firstname\\\" value=\\\"Mickey\\\"><br>\\n            Last name:<br>\\n            <input type=\\\"text\\\" name=\\\"lastname\\\" value=\\\"Mouse\\\"><br><br>\\n            <input type=\\\"submit\\\" value=\\\"Submit\\\">\\n          </fieldset>\\n      \"\n    };\n  },\n  computed: {\n    markup: function markup() {\n      return this.markupCodeEx;\n    }\n  },\n  methods: {\n    generateLabel: function generateLabel(model) {\n      switch (model.type) {\n        case 'Root':\n          {\n            return 'Root';\n          }\n\n        case 'Tag':\n          {\n            return model.content;\n          }\n\n        case 'Text':\n          {\n            return model.content.length > 200 ? \"\".concat(model.content.substring(0, 200), \" ... \") : model.content;\n          }\n      }\n    }\n  }\n});",{"version":3,"file":"/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/src/components/Demo.vue.ts","sourceRoot":"","sources":["/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/node_modules/vue-loader/lib/selector.js?type=script&index=0!/Users/christopherlcrum/Documents/cWork/$projects/npm/crummm-html-parser/examples/vue/vue-2.x-ts/src/components/Demo.vue"],"names":[],"mappings":"AAkBA,OAAO,AAAG,SAAM,AAAK,AAAC;AACtB,OAAO,AAAQ,cAAM,AAAgB,AAAC;AACtC,AAAO,SAAE,AAAa,AAAE,qBAAM,AAA2B,AAAC;AAK1D,mBAAmB,AAAM;AACvB,AAAI,QAAE,AAAM;AACZ,AAAU;AACR,AAAQ,AACT;AAFW;AAGZ,AAAO;AACL,AAAO,YAAC,AAAG,IAAC,AAAqB,AAAC,AAAC;AACnC,AAAa,kBAAC,AAAO,QAAC,AAAkB,qBAAG,AAAI,AAAC;AAChD,AAAa,kBAAC,AAAO,QAAC,AAAuB,0BAAG,AAAI,AAAC;AACrD,QAAM,AAAI,OAA6B,IAAI,AAAa,AAAE,gBAAC,AAAK,AAAC,AAA0J,AAAC,AAAC;AAC7N,AAAO,YAAC,AAAG,IAAC,AAAuB,yBAAE,AAAI,KAAC,AAAc,AAAC,AAAC;AAC1D,AAAO,YAAC,AAAG,IAAC,AAAyB,2BAAE,AAAI,KAAC,AAAgB,AAAC,AAAC;AAC9D,AAAO,YAAC,AAAG,IAAC,AAAwB,0BAAE,AAAI,KAAC,AAAe,AAAC,AAAC;AAC5D,AAAO,YAAC,AAAG,IAAC,AAA0B,4BAAE,AAAI,KAAC,AAAe,AAAC,AAAC;AAC9D,AAAO,YAAC,AAAG,IAAC,AAAwB,AAAE,0BAAC,AAAI,KAAC,AAAe,kBAAG,AAAI,KAAC,AAAe,AAAC,AAAC,AAAC;AACrF,AAAO,YAAC,AAAI,KAAC,AAAc,iBAAG,AAAC,AAAC,AAAC,IAAC,AAAM,AAAC,AAAC,SAAC,AAAK,AAAC,OAAC,AAAkB,oBAAE,AAAI,KAAC,AAAc,AAAC,AAAC;AAC3F,AAAI,SAAC,AAAQ,WAAG,AAAI,AAAC,AACvB;AAAC;AACD,AAAI;AACF;AACE,AAAQ,gBAAE,AAAE;AACZ,AAAQ,AAAE,AAiDT;AACD,AAAO,AAAE,AAGR;AACD,AAAO,AAAE,AAUR;AACD,AAAO,AAAE,AAiBR;AACD,AAAY,AAAE,AAgBb;AACD,AAAa,AAAE,AAUd,AACF,AACH;AAlHS;AAkHR;AACD,AAAQ;AACN,AAAM;AACJ,aAAO,AAAI,KAAC,AAAY,AAAC,AAC3B;AAAC,AACF;AAJS;AAKV,AAAO;AACL,AAAa,0CAAC,AAA2B;AACvC,cAAO,AAAK,MAAC,AAAI,AAAE;AACjB,aAAK,AAAM,AAAC;AAAC;AACX,mBAAO,AAAM;AACd;;AACD,aAAK,AAAK,AAAC;AAAC;AACV,mBAAO,AAAK,MAAC,AAAO,AAAC;AACtB;;AACD,aAAK,AAAM,AAAC;AAAC;AACX,mBAAO,AAAK,MAAC,AAAO,QAAC,AAAM,SAAG,AAAG,AAAC,AAAC,AAAC,gBAAG,AAAK,MAAC,AAAO,QAAC,AAAS,UAAC,AAAC,GAAE,AAAG,AAAC,AAAO,AAAC,AAAC,iBAAC,AAAK,MAAC,AAAO,AAAC;AAC/F,AACF,AACH;;AAAC,AACF,AACF,AAAC,AAAC;AAfQ;AA3Ie,CAAX,AAAG","sourcesContent":["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport TreeNode from './TreeNode.vue';\nimport { MmmHtmlParser } from '../../../../../dist/index';\nimport { MmmHtmlParserResultI } from \"../../../../../src\";\nimport { MmmHtmlParserResultTagI } from \"../../../../../src/MmmHtmlParserResultTagI\";\nimport { MmmHtmlParserResultRootI } from \"../../../../../src/MmmHtmlParserResultRootI\";\n\nexport default Vue.extend({\n  name: 'Demo',\n  components: {\n    TreeNode\n  },\n  created() {\n    console.log('----- created -----');\n    MmmHtmlParser.options.trimRootWhitespace = true;\n    MmmHtmlParser.options.generateAdvancedObjects = true;\n    const root: MmmHtmlParserResultRootI = new MmmHtmlParser().start(`<li class=\"item\"><div :class=\"{'type-tag': model.type === 'Tag', 'type-text': model.type === 'Text'}\" @click=\"toggle\" @dblclick=\"changeType\"></div></li>`);\n    console.log('root.tagsTotalCount: ', root.tagsTotalCount);\n    console.log('root.tagsIgnoredCount: ', root.tagsIgnoredCount);\n    console.log('root.tagsOpenedCount: ', root.tagsOpenedCount);\n    console.log('- root.tagsClosedCount: ', root.tagsClosedCount);\n    console.log('= tagsRemainingCount: ', (root.tagsOpenedCount - root.tagsClosedCount));\n    console[root.tagsErrorCount > 0 ? 'warn' : 'log']('! tagsErrorCount', root.tagsErrorCount);\n    this.treeData = root;\n  },\n  data() {\n    return {\n      treeData: {},\n      markupMe: `\n        <li class=\"item\">\n          <div\n            :class=\"{'type-tag': model.type === 'Tag', 'type-text': model.type === 'Text'}\"\n            @click=\"toggle\"\n            @dblclick=\"changeType\"\n          >\n            <span\n              v-if=\"isFolder\"\n            >\n              <span\n                v-if=\"open\"\n                class=\"open-indicator\"\n              >\n                &nbsp;&ndash;\n              </span>\n              <span\n                v-else\n                class=\"close-indicator\"\n              >\n                +\n              </span>\n            </span>\n            {{ generateLabelFn ? generateLabelFn(model) : model.content }}\n            <span\n              v-if=\"!open\"\n            >\n              ... &lt;/{{ model.tagName }}&gt;\n            </span>\n          </div>\n          <ul\n            v-show=\"open\"\n            v-if=\"isFolder\"\n          >\n            <Tree\n              v-for=\"(model, index) in model.children\"\n              :key=\"index\"\n              :model=\"model\"\n              :generateLabelFn=\"generateLabelFn\"\n            >\n            </Tree>\n          </ul>\n          <div\n            v-if=\"open && model.type === 'Tag' && !model.isSelfClosingTag && !model.isVoidTag\"\n            :class=\"{'type-tag': model.type === 'Tag', 'type-text': model.type === 'Text'}\"\n          >\n            &lt;{{ model.tagName }}&gt;\n          </div>\n        </li>\n      `,\n      markup0: `\n        <span>\n          Text without closing tag\n      `,\n      markup1: `\n        <form action=\"/action_page.php\"><fieldset>\n          <legend>Personal information:</legend>\n          First\n          name:\n          <br />\n          <self />\n          <input type=\"text\" name=\"firstname\" value=\"Mickey\">\n        </fieldset>\n\n      `,\n      markup2: `\n        <form action=\"/action_page.php\">\n          <fieldset>\n            <legend>Personal information:</legend>\n            First name:<br>\n            <input type=\"text\" name=\"firstname\" value=\"Mickey\"><br>\n            Last name:<br>\n            <input type=\"text\" name=\"lastname\" value=\"Mouse\"><br><br>\n            <input type=\"submit\" value=\"Submit\">\n          </fieldset>\n        </form>\n        <content>\n          <div>\n            <self />\n          </div>\n        </content>\n\n      `,\n      markupCodeEx: `\n        <code>\n          <fieldset>\n            <legend>Personal information:</legend>\n            First name:<br>\n            <input type=\"text\" name=\"firstname\" value=\"Mickey\"><br>\n            Last name:<br>\n            <input type=\"text\" name=\"lastname\" value=\"Mouse\"><br><br>\n            <input type=\"submit\" value=\"Submit\">\n          </fieldset>\n        </code>\n        <content>\n          <div>\n            <self />\n          </div>\n        </content>\n      `,\n      markupCodeEx2: `\n        <code>\n          <fieldset>\n            <legend>Personal information:</legend>\n            First name:<br>\n            <input type=\"text\" name=\"firstname\" value=\"Mickey\"><br>\n            Last name:<br>\n            <input type=\"text\" name=\"lastname\" value=\"Mouse\"><br><br>\n            <input type=\"submit\" value=\"Submit\">\n          </fieldset>\n      `\n    }\n  },\n  computed: {\n    markup(): string {\n      return this.markupCodeEx;\n    }\n  },\n  methods: {\n    generateLabel(model: MmmHtmlParserResultI) {\n      switch(model.type) {\n        case 'Root': {\n          return 'Root'\n        }\n        case 'Tag': {\n          return model.content;\n        }\n        case 'Text': {\n          return model.content.length > 200 ? `${model.content.substring(0, 200)} ... ` : model.content;\n        }\n      }\n    }\n  }\n});\n"]}]}