marko 5.20.9 → 5.21.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (207) hide show
  1. package/dist/compiler/config.js +1 -2
  2. package/dist/compiler/index.js +1 -2
  3. package/dist/compiler/modules.js +1 -2
  4. package/dist/core-tags/components/init-components-tag.js +1 -2
  5. package/dist/core-tags/components/preferred-script-location-tag.js +1 -2
  6. package/dist/core-tags/components/preserve-tag/index-browser.js +1 -2
  7. package/dist/core-tags/components/preserve-tag/index.js +1 -2
  8. package/dist/core-tags/core/__flush_here_and_after__.js +35 -24
  9. package/dist/core-tags/core/await/AsyncValue.js +1 -2
  10. package/dist/core-tags/core/await/client-reorder-runtime.js +1 -2
  11. package/dist/core-tags/core/await/renderer.js +1 -2
  12. package/dist/core-tags/core/await/reorderer-renderer.js +1 -2
  13. package/dist/index.js +1 -2
  14. package/dist/loader/index-browser.js +1 -2
  15. package/dist/loader/index.js +1 -2
  16. package/dist/node-require/browser-refresh.js +1 -2
  17. package/dist/node-require/hot-reload.js +1 -2
  18. package/dist/node-require/index.js +1 -2
  19. package/dist/runtime/RenderResult.js +1 -2
  20. package/dist/runtime/components/Component.js +1 -2
  21. package/dist/runtime/components/ComponentDef.js +1 -2
  22. package/dist/runtime/components/ComponentsContext.js +1 -2
  23. package/dist/runtime/components/GlobalComponentsContext.js +1 -2
  24. package/dist/runtime/components/KeySequence.js +1 -2
  25. package/dist/runtime/components/ServerComponent.js +1 -2
  26. package/dist/runtime/components/State.js +1 -2
  27. package/dist/runtime/components/attach-detach.js +1 -2
  28. package/dist/runtime/components/beginComponent/index-browser.js +1 -2
  29. package/dist/runtime/components/beginComponent/index.js +1 -2
  30. package/dist/runtime/components/defineComponent.js +1 -2
  31. package/dist/runtime/components/dom-data.js +1 -2
  32. package/dist/runtime/components/endComponent/index-browser.js +1 -2
  33. package/dist/runtime/components/endComponent/index.js +1 -2
  34. package/dist/runtime/components/entry/index-browser.js +1 -2
  35. package/dist/runtime/components/entry/index.js +1 -2
  36. package/dist/runtime/components/event-delegation.js +1 -2
  37. package/dist/runtime/components/index.js +1 -2
  38. package/dist/runtime/components/init-components/index-browser.js +1 -2
  39. package/dist/runtime/components/init-components/index.js +1 -2
  40. package/dist/runtime/components/registry/index-browser.js +1 -2
  41. package/dist/runtime/components/registry/index.js +1 -2
  42. package/dist/runtime/components/renderer.js +1 -2
  43. package/dist/runtime/components/update-manager.js +1 -2
  44. package/dist/runtime/components/util/index-browser.js +1 -2
  45. package/dist/runtime/components/util/index.js +1 -2
  46. package/dist/runtime/createOut.js +1 -2
  47. package/dist/runtime/dom-insert.js +1 -2
  48. package/dist/runtime/events.js +1 -2
  49. package/dist/runtime/helpers/_change-case.js +1 -2
  50. package/dist/runtime/helpers/assign.js +1 -2
  51. package/dist/runtime/helpers/class-value.js +1 -2
  52. package/dist/runtime/helpers/dynamic-tag.js +1 -2
  53. package/dist/runtime/helpers/load-nested-tag.js +1 -2
  54. package/dist/runtime/helpers/merge.js +1 -2
  55. package/dist/runtime/helpers/render-tag.js +1 -2
  56. package/dist/runtime/helpers/style-value.js +1 -2
  57. package/dist/runtime/helpers/to-string.js +1 -2
  58. package/dist/runtime/html/AsyncStream.js +1 -2
  59. package/dist/runtime/html/BufferedWriter.js +1 -2
  60. package/dist/runtime/html/StringWriter.js +1 -2
  61. package/dist/runtime/html/create-readable/index-browser.js +1 -2
  62. package/dist/runtime/html/create-readable/index.js +1 -2
  63. package/dist/runtime/html/helpers/_dynamic-attr.js +1 -2
  64. package/dist/runtime/html/helpers/attr.js +1 -2
  65. package/dist/runtime/html/helpers/attrs.js +1 -2
  66. package/dist/runtime/html/helpers/class-attr.js +1 -2
  67. package/dist/runtime/html/helpers/data-marko.js +1 -2
  68. package/dist/runtime/html/helpers/escape-quotes.js +1 -2
  69. package/dist/runtime/html/helpers/escape-script-placeholder.js +1 -2
  70. package/dist/runtime/html/helpers/escape-style-placeholder.js +1 -2
  71. package/dist/runtime/html/helpers/escape-xml.js +1 -2
  72. package/dist/runtime/html/helpers/merge-attrs.js +1 -2
  73. package/dist/runtime/html/helpers/props-script.js +1 -2
  74. package/dist/runtime/html/helpers/style-attr.js +1 -2
  75. package/dist/runtime/html/hot-reload.js +1 -2
  76. package/dist/runtime/html/index.js +1 -2
  77. package/dist/runtime/queueMicrotask.js +1 -2
  78. package/dist/runtime/renderable.js +1 -2
  79. package/dist/runtime/setImmediate/index-browser.js +1 -2
  80. package/dist/runtime/setImmediate/index-worker.js +1 -2
  81. package/dist/runtime/setImmediate/index.js +1 -2
  82. package/dist/runtime/vdom/AsyncVDOMBuilder.js +1 -2
  83. package/dist/runtime/vdom/VComponent.js +1 -2
  84. package/dist/runtime/vdom/VDocumentFragment.js +1 -2
  85. package/dist/runtime/vdom/VElement.js +1 -2
  86. package/dist/runtime/vdom/VFragment.js +1 -2
  87. package/dist/runtime/vdom/VNode.js +1 -2
  88. package/dist/runtime/vdom/VText.js +1 -2
  89. package/dist/runtime/vdom/helpers/attrs.js +1 -2
  90. package/dist/runtime/vdom/helpers/const.js +1 -2
  91. package/dist/runtime/vdom/helpers/v-element.js +1 -2
  92. package/dist/runtime/vdom/helpers/v-text.js +1 -2
  93. package/dist/runtime/vdom/hot-reload.js +1 -2
  94. package/dist/runtime/vdom/index.js +1 -2
  95. package/dist/runtime/vdom/morphdom/fragment.js +1 -2
  96. package/dist/runtime/vdom/morphdom/helpers.js +1 -2
  97. package/dist/runtime/vdom/morphdom/index.js +1 -2
  98. package/dist/runtime/vdom/morphdom/specialElHandlers.js +1 -2
  99. package/dist/runtime/vdom/parse-html.js +1 -2
  100. package/dist/runtime/vdom/preserve-attrs.js +1 -2
  101. package/dist/runtime/vdom/vdom.js +1 -2
  102. package/dist/taglib/index.js +1 -2
  103. package/package.json +4 -5
  104. package/src/core-tags/core/__flush_here_and_after__.js +34 -22
  105. package/LICENSE +0 -21
  106. package/dist/compiler/config.js.map +0 -1
  107. package/dist/compiler/index.js.map +0 -1
  108. package/dist/compiler/modules.js.map +0 -1
  109. package/dist/core-tags/components/init-components-tag.js.map +0 -1
  110. package/dist/core-tags/components/preferred-script-location-tag.js.map +0 -1
  111. package/dist/core-tags/components/preserve-tag/index-browser.js.map +0 -1
  112. package/dist/core-tags/components/preserve-tag/index.js.map +0 -1
  113. package/dist/core-tags/core/__flush_here_and_after__.js.map +0 -1
  114. package/dist/core-tags/core/await/AsyncValue.js.map +0 -1
  115. package/dist/core-tags/core/await/client-reorder-runtime.js.map +0 -1
  116. package/dist/core-tags/core/await/renderer.js.map +0 -1
  117. package/dist/core-tags/core/await/reorderer-renderer.js.map +0 -1
  118. package/dist/index.js.map +0 -1
  119. package/dist/loader/index-browser.js.map +0 -1
  120. package/dist/loader/index.js.map +0 -1
  121. package/dist/node-require/browser-refresh.js.map +0 -1
  122. package/dist/node-require/hot-reload.js.map +0 -1
  123. package/dist/node-require/index.js.map +0 -1
  124. package/dist/runtime/RenderResult.js.map +0 -1
  125. package/dist/runtime/components/Component.js.map +0 -1
  126. package/dist/runtime/components/ComponentDef.js.map +0 -1
  127. package/dist/runtime/components/ComponentsContext.js.map +0 -1
  128. package/dist/runtime/components/GlobalComponentsContext.js.map +0 -1
  129. package/dist/runtime/components/KeySequence.js.map +0 -1
  130. package/dist/runtime/components/ServerComponent.js.map +0 -1
  131. package/dist/runtime/components/State.js.map +0 -1
  132. package/dist/runtime/components/attach-detach.js.map +0 -1
  133. package/dist/runtime/components/beginComponent/index-browser.js.map +0 -1
  134. package/dist/runtime/components/beginComponent/index.js.map +0 -1
  135. package/dist/runtime/components/defineComponent.js.map +0 -1
  136. package/dist/runtime/components/dom-data.js.map +0 -1
  137. package/dist/runtime/components/endComponent/index-browser.js.map +0 -1
  138. package/dist/runtime/components/endComponent/index.js.map +0 -1
  139. package/dist/runtime/components/entry/index-browser.js.map +0 -1
  140. package/dist/runtime/components/entry/index.js.map +0 -1
  141. package/dist/runtime/components/event-delegation.js.map +0 -1
  142. package/dist/runtime/components/index.js.map +0 -1
  143. package/dist/runtime/components/init-components/index-browser.js.map +0 -1
  144. package/dist/runtime/components/init-components/index.js.map +0 -1
  145. package/dist/runtime/components/registry/index-browser.js.map +0 -1
  146. package/dist/runtime/components/registry/index.js.map +0 -1
  147. package/dist/runtime/components/renderer.js.map +0 -1
  148. package/dist/runtime/components/update-manager.js.map +0 -1
  149. package/dist/runtime/components/util/index-browser.js.map +0 -1
  150. package/dist/runtime/components/util/index.js.map +0 -1
  151. package/dist/runtime/createOut.js.map +0 -1
  152. package/dist/runtime/dom-insert.js.map +0 -1
  153. package/dist/runtime/events.js.map +0 -1
  154. package/dist/runtime/helpers/_change-case.js.map +0 -1
  155. package/dist/runtime/helpers/assign.js.map +0 -1
  156. package/dist/runtime/helpers/class-value.js.map +0 -1
  157. package/dist/runtime/helpers/dynamic-tag.js.map +0 -1
  158. package/dist/runtime/helpers/load-nested-tag.js.map +0 -1
  159. package/dist/runtime/helpers/merge.js.map +0 -1
  160. package/dist/runtime/helpers/render-tag.js.map +0 -1
  161. package/dist/runtime/helpers/style-value.js.map +0 -1
  162. package/dist/runtime/helpers/to-string.js.map +0 -1
  163. package/dist/runtime/html/AsyncStream.js.map +0 -1
  164. package/dist/runtime/html/BufferedWriter.js.map +0 -1
  165. package/dist/runtime/html/StringWriter.js.map +0 -1
  166. package/dist/runtime/html/create-readable/index-browser.js.map +0 -1
  167. package/dist/runtime/html/create-readable/index.js.map +0 -1
  168. package/dist/runtime/html/helpers/_dynamic-attr.js.map +0 -1
  169. package/dist/runtime/html/helpers/attr.js.map +0 -1
  170. package/dist/runtime/html/helpers/attrs.js.map +0 -1
  171. package/dist/runtime/html/helpers/class-attr.js.map +0 -1
  172. package/dist/runtime/html/helpers/data-marko.js.map +0 -1
  173. package/dist/runtime/html/helpers/escape-quotes.js.map +0 -1
  174. package/dist/runtime/html/helpers/escape-script-placeholder.js.map +0 -1
  175. package/dist/runtime/html/helpers/escape-style-placeholder.js.map +0 -1
  176. package/dist/runtime/html/helpers/escape-xml.js.map +0 -1
  177. package/dist/runtime/html/helpers/merge-attrs.js.map +0 -1
  178. package/dist/runtime/html/helpers/props-script.js.map +0 -1
  179. package/dist/runtime/html/helpers/style-attr.js.map +0 -1
  180. package/dist/runtime/html/hot-reload.js.map +0 -1
  181. package/dist/runtime/html/index.js.map +0 -1
  182. package/dist/runtime/queueMicrotask.js.map +0 -1
  183. package/dist/runtime/renderable.js.map +0 -1
  184. package/dist/runtime/setImmediate/index-browser.js.map +0 -1
  185. package/dist/runtime/setImmediate/index-worker.js.map +0 -1
  186. package/dist/runtime/setImmediate/index.js.map +0 -1
  187. package/dist/runtime/vdom/AsyncVDOMBuilder.js.map +0 -1
  188. package/dist/runtime/vdom/VComponent.js.map +0 -1
  189. package/dist/runtime/vdom/VDocumentFragment.js.map +0 -1
  190. package/dist/runtime/vdom/VElement.js.map +0 -1
  191. package/dist/runtime/vdom/VFragment.js.map +0 -1
  192. package/dist/runtime/vdom/VNode.js.map +0 -1
  193. package/dist/runtime/vdom/VText.js.map +0 -1
  194. package/dist/runtime/vdom/helpers/attrs.js.map +0 -1
  195. package/dist/runtime/vdom/helpers/const.js.map +0 -1
  196. package/dist/runtime/vdom/helpers/v-element.js.map +0 -1
  197. package/dist/runtime/vdom/helpers/v-text.js.map +0 -1
  198. package/dist/runtime/vdom/hot-reload.js.map +0 -1
  199. package/dist/runtime/vdom/index.js.map +0 -1
  200. package/dist/runtime/vdom/morphdom/fragment.js.map +0 -1
  201. package/dist/runtime/vdom/morphdom/helpers.js.map +0 -1
  202. package/dist/runtime/vdom/morphdom/index.js.map +0 -1
  203. package/dist/runtime/vdom/morphdom/specialElHandlers.js.map +0 -1
  204. package/dist/runtime/vdom/parse-html.js.map +0 -1
  205. package/dist/runtime/vdom/preserve-attrs.js.map +0 -1
  206. package/dist/runtime/vdom/vdom.js.map +0 -1
  207. package/dist/taglib/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/runtime/vdom/morphdom/index.js"],"names":["specialElHandlers","require","KeySequence","componentsUtil","existingComponentLookup","destroyNodeRecursive","addComponentRootToKeyedElements","normalizeComponentKey","VElement","virtualizeElement","morphAttrs","eventDelegation","fragment","helpers","domData","keysByDOMNode","componentByDOMNode","vElementByDOMNode","detachedByDOMNode","insertBefore","insertAfter","nextSibling","firstChild","removeChild","createFragmentNode","beginFragmentNode","ELEMENT_NODE","TEXT_NODE","COMMENT_NODE","COMPONENT_NODE","FRAGMENT_NODE","DOCTYPE_NODE","isAutoKey","key","compareNodeNames","fromEl","toEl","caseInsensitiveCompare","a","b","toLowerCase","onNodeAdded","node","componentsContext","nodeType","morphdom","fromNode","toNode","host","globalComponentsContext","isHydrate","keySequences","Object","create","insertVirtualNodeBefore","vNode","referenceEl","parentEl","ownerComponent","parentComponent","realNode","namespaceURI","set","morphChildren","insertVirtualComponentBefore","vComponent","referenceNode","referenceNodeParentEl","component","rootNode","id","morphComponent","detachedNodes","detachNode","parentNode","push","destroyComponent","destroy","curFromNodeChild","curToNodeChild","curToNodeKey","curFromNodeKey","curToNodeType","fromNextSibling","toNextSibling","matchingFromEl","matchingFromComponent","curVFromNodeChild","fromComponent","outer","referenceComponent","undefined","get","curToNodeKeyOriginal","morphEl","nodeName","content","nodeValue","endNode","depth","indexOf","curFromNodeType","isCompatible","splitText","length","fragmentBoundary","vFromEl","constId","specialElHandler","forEach","detachedFromComponent","componentToDestroy","module","exports"],"mappings":"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","sourcesContent":["\"use strict\";\nvar specialElHandlers = require(\"./specialElHandlers\");\nvar KeySequence = require(\"../../components/KeySequence\");\nvar componentsUtil = require(\"../../components/util\");\nvar existingComponentLookup = componentsUtil.___componentLookup;\nvar destroyNodeRecursive = componentsUtil.___destroyNodeRecursive;\nvar addComponentRootToKeyedElements =\n componentsUtil.___addComponentRootToKeyedElements;\nvar normalizeComponentKey = componentsUtil.___normalizeComponentKey;\nvar VElement = require(\"../vdom\").___VElement;\nvar virtualizeElement = VElement.___virtualize;\nvar morphAttrs = VElement.___morphAttrs;\nvar eventDelegation = require(\"../../components/event-delegation\");\nvar fragment = require(\"./fragment\");\nvar helpers = require(\"./helpers\");\nvar domData = require(\"../../components/dom-data\");\nvar keysByDOMNode = domData.___keyByDOMNode;\nvar componentByDOMNode = domData.___componentByDOMNode;\nvar vElementByDOMNode = domData.___vElementByDOMNode;\nvar detachedByDOMNode = domData.___detachedByDOMNode;\n\nvar insertBefore = helpers.___insertBefore;\nvar insertAfter = helpers.___insertAfter;\nvar nextSibling = helpers.___nextSibling;\nvar firstChild = helpers.___firstChild;\nvar removeChild = helpers.___removeChild;\nvar createFragmentNode = fragment.___createFragmentNode;\nvar beginFragmentNode = fragment.___beginFragmentNode;\n\nvar ELEMENT_NODE = 1;\nvar TEXT_NODE = 3;\nvar COMMENT_NODE = 8;\nvar COMPONENT_NODE = 2;\nvar FRAGMENT_NODE = 12;\nvar DOCTYPE_NODE = 10;\n\n// var FLAG_SIMPLE_ATTRS = 1;\n// var FLAG_CUSTOM_ELEMENT = 2;\n// var FLAG_SPREAD_ATTRS = 4;\n\nfunction isAutoKey(key) {\n return key[0] !== \"@\";\n}\n\nfunction compareNodeNames(fromEl, toEl) {\n return fromEl.___nodeName === toEl.___nodeName;\n}\n\nfunction caseInsensitiveCompare(a, b) {\n return a.toLowerCase() === b.toLowerCase();\n}\n\nfunction onNodeAdded(node, componentsContext) {\n if (node.nodeType === ELEMENT_NODE) {\n eventDelegation.___handleNodeAttach(node, componentsContext);\n }\n}\n\nfunction morphdom(fromNode, toNode, host, componentsContext) {\n var globalComponentsContext;\n var isHydrate = false;\n var keySequences = Object.create(null);\n\n if (componentsContext) {\n globalComponentsContext = componentsContext.___globalContext;\n isHydrate = globalComponentsContext.___isHydrate;\n }\n\n function insertVirtualNodeBefore(\n vNode,\n key,\n referenceEl,\n parentEl,\n ownerComponent,\n parentComponent\n ) {\n var realNode = vNode.___actualize(host, parentEl.namespaceURI);\n insertBefore(realNode, referenceEl, parentEl);\n\n if (\n vNode.___nodeType === ELEMENT_NODE ||\n vNode.___nodeType === FRAGMENT_NODE\n ) {\n if (key) {\n keysByDOMNode.set(realNode, key);\n (isAutoKey(key) ? parentComponent : ownerComponent).___keyedElements[\n key\n ] = realNode;\n }\n\n if (vNode.___nodeName !== \"textarea\") {\n morphChildren(realNode, vNode, parentComponent);\n }\n\n onNodeAdded(realNode, componentsContext);\n }\n }\n\n function insertVirtualComponentBefore(\n vComponent,\n referenceNode,\n referenceNodeParentEl,\n component,\n key,\n ownerComponent,\n parentComponent\n ) {\n var rootNode = (component.___rootNode = insertBefore(\n createFragmentNode(),\n referenceNode,\n referenceNodeParentEl\n ));\n componentByDOMNode.set(rootNode, component);\n\n if (key && ownerComponent) {\n key = normalizeComponentKey(key, parentComponent.id);\n addComponentRootToKeyedElements(\n ownerComponent.___keyedElements,\n key,\n rootNode,\n component.id\n );\n keysByDOMNode.set(rootNode, key);\n }\n\n morphComponent(component, vComponent);\n }\n\n function morphComponent(component, vComponent) {\n morphChildren(component.___rootNode, vComponent, component);\n }\n\n var detachedNodes = [];\n\n function detachNode(node, parentNode, ownerComponent) {\n if (node.nodeType === ELEMENT_NODE || node.nodeType === FRAGMENT_NODE) {\n detachedNodes.push(node);\n detachedByDOMNode.set(node, ownerComponent || true);\n } else {\n destroyNodeRecursive(node);\n removeChild(node);\n }\n }\n\n function destroyComponent(component) {\n component.destroy();\n }\n\n function morphChildren(fromNode, toNode, parentComponent) {\n var curFromNodeChild = firstChild(fromNode);\n var curToNodeChild = toNode.___firstChild;\n\n var curToNodeKey;\n var curFromNodeKey;\n var curToNodeType;\n\n var fromNextSibling;\n var toNextSibling;\n var matchingFromEl;\n var matchingFromComponent;\n var curVFromNodeChild;\n var fromComponent;\n\n outer: while (curToNodeChild) {\n toNextSibling = curToNodeChild.___nextSibling;\n curToNodeType = curToNodeChild.___nodeType;\n curToNodeKey = curToNodeChild.___key;\n\n // Skip <!doctype>\n if (curFromNodeChild && curFromNodeChild.nodeType === DOCTYPE_NODE) {\n curFromNodeChild = nextSibling(curFromNodeChild);\n }\n\n var ownerComponent = curToNodeChild.___ownerComponent || parentComponent;\n var referenceComponent;\n\n if (curToNodeType === COMPONENT_NODE) {\n var component = curToNodeChild.___component;\n if (\n (matchingFromComponent = existingComponentLookup[component.id]) ===\n undefined\n ) {\n if (isHydrate === true) {\n var rootNode = beginFragmentNode(curFromNodeChild, fromNode);\n component.___rootNode = rootNode;\n componentByDOMNode.set(rootNode, component);\n\n if (ownerComponent && curToNodeKey) {\n curToNodeKey = normalizeComponentKey(\n curToNodeKey,\n parentComponent.id\n );\n addComponentRootToKeyedElements(\n ownerComponent.___keyedElements,\n curToNodeKey,\n rootNode,\n component.id\n );\n\n keysByDOMNode.set(rootNode, curToNodeKey);\n }\n\n morphComponent(component, curToNodeChild);\n\n curFromNodeChild = nextSibling(rootNode);\n } else {\n insertVirtualComponentBefore(\n curToNodeChild,\n curFromNodeChild,\n fromNode,\n component,\n curToNodeKey,\n ownerComponent,\n parentComponent\n );\n }\n } else {\n if (matchingFromComponent.___rootNode !== curFromNodeChild) {\n if (\n curFromNodeChild &&\n (fromComponent = componentByDOMNode.get(curFromNodeChild)) &&\n globalComponentsContext.___renderedComponentsById[\n fromComponent.id\n ] === undefined\n ) {\n // The component associated with the current real DOM node was not rendered\n // so we should just remove it out of the real DOM by destroying it\n curFromNodeChild = nextSibling(fromComponent.___rootNode);\n destroyComponent(fromComponent);\n continue;\n }\n\n // We need to move the existing component into\n // the correct location\n insertBefore(\n matchingFromComponent.___rootNode,\n curFromNodeChild,\n fromNode\n );\n } else {\n curFromNodeChild =\n curFromNodeChild && nextSibling(curFromNodeChild);\n }\n\n if (!curToNodeChild.___preserve) {\n morphComponent(component, curToNodeChild);\n }\n }\n\n curToNodeChild = toNextSibling;\n continue;\n } else if (curToNodeKey) {\n curVFromNodeChild = undefined;\n curFromNodeKey = undefined;\n var curToNodeKeyOriginal = curToNodeKey;\n\n if (isAutoKey(curToNodeKey)) {\n if (ownerComponent !== parentComponent) {\n curToNodeKey += \":\" + ownerComponent.id;\n }\n referenceComponent = parentComponent;\n } else {\n referenceComponent = ownerComponent;\n }\n\n // We have a keyed element. This is the fast path for matching\n // up elements\n curToNodeKey = (\n keySequences[referenceComponent.id] ||\n (keySequences[referenceComponent.id] = new KeySequence())\n ).___nextKey(curToNodeKey);\n\n if (curFromNodeChild) {\n curFromNodeKey = keysByDOMNode.get(curFromNodeChild);\n curVFromNodeChild = vElementByDOMNode.get(curFromNodeChild);\n fromNextSibling = nextSibling(curFromNodeChild);\n }\n\n if (curFromNodeKey === curToNodeKey) {\n // Elements line up. Now we just have to make sure they are compatible\n if (!curToNodeChild.___preserve) {\n // We just skip over the fromNode if it is preserved\n\n if (compareNodeNames(curToNodeChild, curVFromNodeChild)) {\n morphEl(\n curFromNodeChild,\n curVFromNodeChild,\n curToNodeChild,\n parentComponent\n );\n } else {\n // Remove the old node\n detachNode(curFromNodeChild, fromNode, ownerComponent);\n\n // Incompatible nodes. Just move the target VNode into the DOM at this position\n insertVirtualNodeBefore(\n curToNodeChild,\n curToNodeKey,\n curFromNodeChild,\n fromNode,\n ownerComponent,\n parentComponent\n );\n }\n }\n } else {\n matchingFromEl = referenceComponent.___keyedElements[curToNodeKey];\n if (\n matchingFromEl === undefined ||\n matchingFromEl === curFromNodeChild\n ) {\n if (isHydrate === true && curFromNodeChild) {\n if (\n curFromNodeChild.nodeType === ELEMENT_NODE &&\n (curToNodeChild.___preserve ||\n caseInsensitiveCompare(\n curFromNodeChild.nodeName,\n curToNodeChild.___nodeName || \"\"\n ))\n ) {\n curVFromNodeChild = virtualizeElement(curFromNodeChild);\n curVFromNodeChild.___nodeName = curToNodeChild.___nodeName;\n keysByDOMNode.set(curFromNodeChild, curToNodeKey);\n referenceComponent.___keyedElements[curToNodeKey] =\n curFromNodeChild;\n\n if (curToNodeChild.___preserve) {\n vElementByDOMNode.set(curFromNodeChild, curVFromNodeChild);\n } else {\n morphEl(\n curFromNodeChild,\n curVFromNodeChild,\n curToNodeChild,\n parentComponent\n );\n }\n\n curToNodeChild = toNextSibling;\n curFromNodeChild = fromNextSibling;\n continue;\n } else if (\n curToNodeChild.___nodeType === FRAGMENT_NODE &&\n curFromNodeChild.nodeType === COMMENT_NODE\n ) {\n var content = curFromNodeChild.nodeValue;\n if (content == \"F#\" + curToNodeKeyOriginal) {\n var endNode = curFromNodeChild.nextSibling;\n var depth = 0;\n var nodeValue;\n\n // eslint-disable-next-line no-constant-condition\n while (true) {\n if (endNode.nodeType === COMMENT_NODE) {\n nodeValue = endNode.nodeValue;\n if (nodeValue === \"F/\") {\n if (depth === 0) {\n break;\n } else {\n depth--;\n }\n } else if (nodeValue.indexOf(\"F#\") === 0) {\n depth++;\n }\n }\n endNode = endNode.nextSibling;\n }\n\n var fragment = createFragmentNode(\n curFromNodeChild,\n endNode.nextSibling,\n fromNode\n );\n keysByDOMNode.set(fragment, curToNodeKey);\n vElementByDOMNode.set(fragment, curToNodeChild);\n referenceComponent.___keyedElements[curToNodeKey] = fragment;\n removeChild(curFromNodeChild);\n removeChild(endNode);\n\n if (!curToNodeChild.___preserve) {\n morphChildren(fragment, curToNodeChild, parentComponent);\n }\n\n curToNodeChild = toNextSibling;\n curFromNodeChild = fragment.nextSibling;\n continue;\n }\n }\n }\n\n insertVirtualNodeBefore(\n curToNodeChild,\n curToNodeKey,\n curFromNodeChild,\n fromNode,\n ownerComponent,\n parentComponent\n );\n fromNextSibling = curFromNodeChild;\n } else {\n if (detachedByDOMNode.get(matchingFromEl) !== undefined) {\n detachedByDOMNode.set(matchingFromEl, undefined);\n }\n\n if (!curToNodeChild.___preserve) {\n curVFromNodeChild = vElementByDOMNode.get(matchingFromEl);\n\n if (compareNodeNames(curVFromNodeChild, curToNodeChild)) {\n if (fromNextSibling === matchingFromEl) {\n // Single element removal:\n // A <-> A\n // B <-> C <-- We are here\n // C D\n // D\n //\n // Single element swap:\n // A <-> A\n // B <-> C <-- We are here\n // C B\n\n if (\n toNextSibling &&\n toNextSibling.___key === curFromNodeKey\n ) {\n // Single element swap\n\n // We want to stay on the current real DOM node\n fromNextSibling = curFromNodeChild;\n\n // But move the matching element into place\n insertBefore(matchingFromEl, curFromNodeChild, fromNode);\n } else {\n // Single element removal\n\n // We need to remove the current real DOM node\n // and the matching real DOM node will fall into\n // place. We will continue diffing with next sibling\n // after the real DOM node that just fell into place\n fromNextSibling = nextSibling(fromNextSibling);\n\n if (curFromNodeChild) {\n detachNode(curFromNodeChild, fromNode, ownerComponent);\n }\n }\n } else {\n // A <-> A\n // B <-> D <-- We are here\n // C\n // D\n\n // We need to move the matching node into place\n insertAfter(matchingFromEl, curFromNodeChild, fromNode);\n\n if (curFromNodeChild) {\n detachNode(curFromNodeChild, fromNode, ownerComponent);\n }\n }\n\n morphEl(\n matchingFromEl,\n curVFromNodeChild,\n curToNodeChild,\n parentComponent\n );\n } else {\n insertVirtualNodeBefore(\n curToNodeChild,\n curToNodeKey,\n curFromNodeChild,\n fromNode,\n ownerComponent,\n parentComponent\n );\n detachNode(matchingFromEl, fromNode, ownerComponent);\n }\n } else {\n // preserve the node\n // but still we need to diff the current from node\n insertBefore(matchingFromEl, curFromNodeChild, fromNode);\n fromNextSibling = curFromNodeChild;\n }\n }\n }\n\n curToNodeChild = toNextSibling;\n curFromNodeChild = fromNextSibling;\n continue;\n }\n\n // The know the target node is not a VComponent node and we know\n // it is also not a preserve node. Let's now match up the HTML\n // element, text node, comment, etc.\n while (curFromNodeChild) {\n fromNextSibling = nextSibling(curFromNodeChild);\n\n if ((fromComponent = componentByDOMNode.get(curFromNodeChild))) {\n // The current \"to\" element is not associated with a component,\n // but the current \"from\" element is associated with a component\n\n // Even if we destroy the current component in the original\n // DOM or not, we still need to skip over it since it is\n // not compatible with the current \"to\" node\n curFromNodeChild = fromNextSibling;\n\n if (\n !globalComponentsContext.___renderedComponentsById[fromComponent.id]\n ) {\n destroyComponent(fromComponent);\n }\n\n continue; // Move to the next \"from\" node\n }\n\n var curFromNodeType = curFromNodeChild.nodeType;\n\n var isCompatible = undefined;\n\n if (curFromNodeType === curToNodeType) {\n if (curFromNodeType === ELEMENT_NODE) {\n // Both nodes being compared are Element nodes\n curVFromNodeChild = vElementByDOMNode.get(curFromNodeChild);\n if (curVFromNodeChild === undefined) {\n if (isHydrate === true) {\n curVFromNodeChild = virtualizeElement(curFromNodeChild);\n\n if (\n caseInsensitiveCompare(\n curVFromNodeChild.___nodeName,\n curToNodeChild.___nodeName\n )\n ) {\n curVFromNodeChild.___nodeName = curToNodeChild.___nodeName;\n }\n } else {\n // Skip over nodes that don't look like ours...\n curFromNodeChild = fromNextSibling;\n continue;\n }\n } else if ((curFromNodeKey = curVFromNodeChild.___key)) {\n // We have a keyed element here but our target VDOM node\n // is not keyed so this not doesn't belong\n isCompatible = false;\n }\n\n isCompatible =\n isCompatible !== false &&\n compareNodeNames(curVFromNodeChild, curToNodeChild) === true;\n\n if (isCompatible === true) {\n // We found compatible DOM elements so transform\n // the current \"from\" node to match the current\n // target DOM node.\n morphEl(\n curFromNodeChild,\n curVFromNodeChild,\n curToNodeChild,\n parentComponent\n );\n }\n } else if (\n curFromNodeType === TEXT_NODE ||\n curFromNodeType === COMMENT_NODE\n ) {\n // Both nodes being compared are Text or Comment nodes\n isCompatible = true;\n // Simply update nodeValue on the original node to\n // change the text value\n\n if (\n isHydrate === true &&\n toNextSibling &&\n curFromNodeType === TEXT_NODE &&\n toNextSibling.___nodeType === TEXT_NODE\n ) {\n fromNextSibling = curFromNodeChild.splitText(\n curToNodeChild.___nodeValue.length\n );\n }\n if (curFromNodeChild.nodeValue !== curToNodeChild.___nodeValue) {\n curFromNodeChild.nodeValue = curToNodeChild.___nodeValue;\n }\n }\n }\n\n if (isCompatible === true) {\n // Advance both the \"to\" child and the \"from\" child since we found a match\n curToNodeChild = toNextSibling;\n curFromNodeChild = fromNextSibling;\n continue outer;\n }\n\n detachNode(curFromNodeChild, fromNode, ownerComponent);\n curFromNodeChild = fromNextSibling;\n } // END: while (curFromNodeChild)\n\n // If we got this far then we did not find a candidate match for\n // our \"to node\" and we exhausted all of the children \"from\"\n // nodes. Therefore, we will just append the current \"to\" node\n // to the end\n insertVirtualNodeBefore(\n curToNodeChild,\n curToNodeKey,\n curFromNodeChild,\n fromNode,\n ownerComponent,\n parentComponent\n );\n\n curToNodeChild = toNextSibling;\n curFromNodeChild = fromNextSibling;\n }\n\n // We have processed all of the \"to nodes\".\n if (fromNode.___finishFragment) {\n // If we are in an unfinished fragment, we have reached the end of the nodes\n // we were matching up and need to end the fragment\n fromNode.___finishFragment(curFromNodeChild);\n } else {\n // If curFromNodeChild is non-null then we still have some from nodes\n // left over that need to be removed\n var fragmentBoundary =\n fromNode.nodeType === FRAGMENT_NODE ? fromNode.endNode : null;\n\n while (curFromNodeChild && curFromNodeChild !== fragmentBoundary) {\n fromNextSibling = nextSibling(curFromNodeChild);\n\n if ((fromComponent = componentByDOMNode.get(curFromNodeChild))) {\n curFromNodeChild = fromNextSibling;\n if (\n !globalComponentsContext.___renderedComponentsById[fromComponent.id]\n ) {\n destroyComponent(fromComponent);\n }\n continue;\n }\n\n curVFromNodeChild = vElementByDOMNode.get(curFromNodeChild);\n curFromNodeKey = keysByDOMNode.get(fromNode);\n\n // For transcluded content, we need to check if the element belongs to a different component\n // context than the current component and ensure it gets removed from its key index.\n if (!curFromNodeKey || isAutoKey(curFromNodeKey)) {\n referenceComponent = parentComponent;\n } else {\n referenceComponent =\n curVFromNodeChild && curVFromNodeChild.___ownerComponent;\n }\n\n detachNode(curFromNodeChild, fromNode, referenceComponent);\n\n curFromNodeChild = fromNextSibling;\n }\n }\n }\n\n function morphEl(fromEl, vFromEl, toEl, parentComponent) {\n var nodeName = toEl.___nodeName;\n\n var constId = toEl.___constId;\n if (constId !== undefined && vFromEl.___constId === constId) {\n return;\n }\n\n morphAttrs(fromEl, vFromEl, toEl);\n\n if (toEl.___preserveBody) {\n return;\n }\n\n if (nodeName !== \"textarea\") {\n morphChildren(fromEl, toEl, parentComponent);\n }\n\n var specialElHandler = specialElHandlers[nodeName];\n if (specialElHandler !== undefined) {\n specialElHandler(fromEl, toEl);\n }\n } // END: morphEl(...)\n\n // eslint-disable-next-line no-constant-condition\n if (\"MARKO_DEBUG\") {\n componentsUtil.___stopDOMManipulationWarning(host);\n }\n\n morphChildren(fromNode, toNode, toNode.___component);\n\n detachedNodes.forEach(function (node) {\n var detachedFromComponent = detachedByDOMNode.get(node);\n\n if (detachedFromComponent !== undefined) {\n detachedByDOMNode.set(node, undefined);\n\n var componentToDestroy = componentByDOMNode.get(node);\n if (componentToDestroy) {\n componentToDestroy.destroy();\n } else if (node.parentNode) {\n destroyNodeRecursive(\n node,\n detachedFromComponent !== true && detachedFromComponent\n );\n\n if (eventDelegation.___handleNodeDetach(node) != false) {\n removeChild(node);\n }\n }\n }\n });\n\n // eslint-disable-next-line no-constant-condition\n if (\"MARKO_DEBUG\") {\n componentsUtil.___startDOMManipulationWarning(host);\n }\n}\n\nmodule.exports = morphdom;\n"],"file":"index.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/runtime/vdom/morphdom/specialElHandlers.js"],"names":["syncBooleanAttrProp","fromEl","toEl","name","setAttribute","removeAttribute","forEachOption","el","fn","i","curChild","SpecialElHandlers","prototype","option","button","input","value","hasAttribute","textarea","newValue","firstChild","oldValue","nodeValue","placeholder","select","selected","selectedIndex","module","exports"],"mappings":"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","sourcesContent":["function syncBooleanAttrProp(fromEl, toEl, name) {\n if (fromEl[name] !== toEl[name]) {\n fromEl[name] = toEl[name];\n if (fromEl[name]) {\n fromEl.setAttribute(name, \"\");\n } else {\n fromEl.removeAttribute(name, \"\");\n }\n }\n}\n\nfunction forEachOption(el, fn, i) {\n var curChild = el.___firstChild;\n\n while (curChild) {\n if (curChild.___nodeName === \"option\") {\n fn(curChild, ++i);\n } else {\n i = forEachOption(curChild, fn, i);\n }\n\n curChild = curChild.___nextSibling;\n }\n\n return i;\n}\n\n// We use a JavaScript class to benefit from fast property lookup\nfunction SpecialElHandlers() {}\nSpecialElHandlers.prototype = {\n /**\n * Needed for IE. Apparently IE doesn't think that \"selected\" is an\n * attribute when reading over the attributes using selectEl.attributes\n */\n option: function (fromEl, toEl) {\n syncBooleanAttrProp(fromEl, toEl, \"selected\");\n },\n button: function (fromEl, toEl) {\n syncBooleanAttrProp(fromEl, toEl, \"disabled\");\n },\n /**\n * The \"value\" attribute is special for the <input> element since it sets\n * the initial value. Changing the \"value\" attribute without changing the\n * \"value\" property will have no effect since it is only used to the set the\n * initial value. Similar for the \"checked\" attribute, and \"disabled\".\n */\n input: function (fromEl, toEl) {\n syncBooleanAttrProp(fromEl, toEl, \"checked\");\n syncBooleanAttrProp(fromEl, toEl, \"disabled\");\n\n if (fromEl.value != toEl.___value) {\n fromEl.value = toEl.___value;\n }\n\n if (fromEl.hasAttribute(\"value\") && !toEl.___hasAttribute(\"value\")) {\n fromEl.removeAttribute(\"value\");\n }\n },\n\n textarea: function (fromEl, toEl) {\n if (toEl.___preserveTextAreaValue) {\n return;\n }\n\n var newValue = toEl.___value;\n if (fromEl.value != newValue) {\n fromEl.value = newValue;\n }\n\n var firstChild = fromEl.firstChild;\n if (firstChild) {\n // Needed for IE. Apparently IE sets the placeholder as the\n // node value and vise versa. This ignores an empty update.\n var oldValue = firstChild.nodeValue;\n\n if (\n oldValue == newValue ||\n (!newValue && oldValue == fromEl.placeholder)\n ) {\n return;\n }\n\n firstChild.nodeValue = newValue;\n }\n },\n select: function (fromEl, toEl) {\n if (!toEl.___hasAttribute(\"multiple\")) {\n var selected = 0;\n forEachOption(\n toEl,\n function (option, i) {\n if (option.___hasAttribute(\"selected\")) {\n selected = i;\n }\n },\n -1\n );\n\n if (fromEl.selectedIndex !== selected) {\n fromEl.selectedIndex = selected;\n }\n }\n }\n};\n\nmodule.exports = new SpecialElHandlers();\n"],"file":"specialElHandlers.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/runtime/vdom/parse-html.js"],"names":["parseHTML","html","container","document","createElement","content","innerHTML","module","exports","firstChild"],"mappings":"aAAA,IAAIA,SAAS,GAAG,UAAUC,IAAV,EAAgB;AAC9B,MAAIC,SAAS,GAAGC,QAAQ,CAACC,aAAT,CAAuB,UAAvB,CAAhB;AACAJ,EAAAA,SAAS,GAAGE,SAAS,CAACG,OAAV;AACR,YAAUJ,IAAV,EAAgB;AACdC,IAAAA,SAAS,CAACI,SAAV,GAAsBL,IAAtB;AACA,WAAOC,SAAS,CAACG,OAAjB;AACD,GAJO;AAKR,YAAUJ,IAAV,EAAgB;AACdC,IAAAA,SAAS,CAACI,SAAV,GAAsBL,IAAtB;AACA,WAAOC,SAAP;AACD,GARL;;AAUA,SAAOF,SAAS,CAACC,IAAD,CAAhB;AACD,CAbD;;AAeAM,MAAM,CAACC,OAAP,GAAiB,UAAUP,IAAV,EAAgB;AAC/B,SAAOD,SAAS,CAACC,IAAD,CAAT,CAAgBQ,UAAvB;AACD,CAFD","sourcesContent":["var parseHTML = function (html) {\n var container = document.createElement(\"template\");\n parseHTML = container.content\n ? function (html) {\n container.innerHTML = html;\n return container.content;\n }\n : function (html) {\n container.innerHTML = html;\n return container;\n };\n\n return parseHTML(html);\n};\n\nmodule.exports = function (html) {\n return parseHTML(html).firstChild;\n};\n"],"file":"parse-html.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/runtime/vdom/preserve-attrs.js"],"names":["extend","require","removePreservedAttributes","attrs","props","preservedAttrs","pa","forEach","preservedAttrName"],"mappings":"aAAA,IAAIA,MAAM,GAAGC,OAAO,CAAC,oBAAD,CAApB;;AAEA,SAASC,yBAAT,CAAmCC,KAAnC,EAA0CC,KAA1C,EAAiD;AAC/C,MAAIC,cAAc,GAAGD,KAAK,IAAIA,KAAK,CAACE,EAApC;AACA,MAAID,cAAJ,EAAoB;AAClBF,IAAAA,KAAK,GAAGH,MAAM,CAAC,EAAD,EAAKG,KAAL,CAAd;AACAE,IAAAA,cAAc,CAACE,OAAf,CAAuB,UAAUC,iBAAV,EAA6B;AAClD,aAAOL,KAAK,CAACK,iBAAD,CAAZ;AACD,KAFD;AAGD;;AAED,SAAOL,KAAP;AACD;;AAEDF,OAAO,CAAC,YAAD,CAAP,OAAqDC,yBAArD","sourcesContent":["var extend = require(\"raptor-util/extend\");\n\nfunction removePreservedAttributes(attrs, props) {\n var preservedAttrs = props && props.pa;\n if (preservedAttrs) {\n attrs = extend({}, attrs);\n preservedAttrs.forEach(function (preservedAttrName) {\n delete attrs[preservedAttrName];\n });\n }\n\n return attrs;\n}\n\nrequire(\"./VElement\").___removePreservedAttributes = removePreservedAttributes;\n"],"file":"preserve-attrs.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/runtime/vdom/vdom.js"],"names":["VNode","require","VDocumentFragment","VElement","VText","VComponent","VFragment","parseHTML","specialHtmlRegexp","virtualizeChildNodes","node","vdomParent","ownerComponent","curChild","firstChild","virtualize","nextSibling","nodeType","nodeValue","vdomDocFragment","virtualizeHTML","html","test","vdomFragment","Node_prototype","prototype","t","value","type","vdomNode","toHTML","toString","exports"],"mappings":"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","sourcesContent":["var VNode = require(\"./VNode\");\nvar VDocumentFragment = require(\"./VDocumentFragment\");\nvar VElement = require(\"./VElement\");\nvar VText = require(\"./VText\");\nvar VComponent = require(\"./VComponent\");\nvar VFragment = require(\"./VFragment\");\nvar parseHTML = require(\"./parse-html\");\n\nvar specialHtmlRegexp = /[&<]/;\n\nfunction virtualizeChildNodes(node, vdomParent, ownerComponent) {\n var curChild = node.firstChild;\n while (curChild) {\n vdomParent.___appendChild(virtualize(curChild, ownerComponent));\n curChild = curChild.nextSibling;\n }\n}\n\nfunction virtualize(node, ownerComponent) {\n switch (node.nodeType) {\n case 1:\n return VElement.___virtualize(node, virtualizeChildNodes, ownerComponent);\n case 3:\n return new VText(node.nodeValue, ownerComponent);\n case 11:\n var vdomDocFragment = new VDocumentFragment();\n virtualizeChildNodes(node, vdomDocFragment, ownerComponent);\n return vdomDocFragment;\n }\n}\n\nfunction virtualizeHTML(html, ownerComponent) {\n if (!specialHtmlRegexp.test(html)) {\n return new VText(html, ownerComponent);\n }\n\n var vdomFragment = new VDocumentFragment();\n var curChild = parseHTML(html);\n\n while (curChild) {\n vdomFragment.___appendChild(virtualize(curChild, ownerComponent));\n curChild = curChild.nextSibling;\n }\n\n return vdomFragment;\n}\n\nvar Node_prototype = VNode.prototype;\n\n/**\n * Shorthand method for creating and appending a Text node with a given value\n * @param {String} value The text value for the new Text node\n */\nNode_prototype.t = function (value) {\n var type = typeof value;\n var vdomNode;\n\n if (type !== \"string\") {\n if (value == null) {\n value = \"\";\n } else if (type === \"object\") {\n if (value.toHTML) {\n vdomNode = virtualizeHTML(value.toHTML());\n }\n }\n }\n\n this.___appendChild(vdomNode || new VText(value.toString()));\n return this.___finishChild();\n};\n\nNode_prototype.___appendDocumentFragment = function () {\n return this.___appendChild(new VDocumentFragment());\n};\n\nexports.___VDocumentFragment = VDocumentFragment;\nexports.___VElement = VElement;\nexports.___VText = VText;\nexports.___VComponent = VComponent;\nexports.___VFragment = VFragment;\nexports.___virtualize = virtualize;\nexports.___virtualizeHTML = virtualizeHTML;\n"],"file":"vdom.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/taglib/index.js"],"names":["compiler","require","clearCache","taglib","clearCaches","register","taglibProps","taglibPath","registerFromFile","_loader","loadTaglibFromFile","exports","buildLookup","excludeDir","excludePackage","loader","finder","_finder","lookup","dir","translator","Array","isArray","taglibs","registerTaglib","id"],"mappings":"AAAA;;;AAGA,MAAMA,QAAQ,GAAGC,OAAO,CAAC,iBAAD,CAAxB;;AAEA,SAASC,UAAT,GAAsB;AACpBF,EAAAA,QAAQ,CAACG,MAAT,CAAgBC,WAAhB;AACD;;AAED,SAASC,QAAT,CAAkBC,WAAlB,EAA+BC,UAA/B,EAA2C;AACzC,SAAOP,QAAQ,CAACG,MAAT,CAAgBE,QAAhB,CAAyBE,UAAzB,EAAqCD,WAArC,CAAP;AACD;;AAED,SAASE,gBAAT,CAA0BD,UAA1B,EAAsC;AACpC,SAAOF,QAAQ;AACbL,EAAAA,QAAQ,CAACG,MAAT,CAAgBM,OAAhB,CAAwBC,kBAAxB,CAA2CH,UAA3C,CADa;AAEbA,EAAAA,UAFa,CAAf;;AAID;;AAEDI,OAAO,CAACT,UAAR,GAAqBA,UAArB;AACAS,OAAO,CAACN,QAAR,GAAmBA,QAAnB;AACAM,OAAO,CAACH,gBAAR,GAA2BA,gBAA3B;AACAG,OAAO,CAACC,WAAR,GAAsBZ,QAAQ,CAACG,MAAT,CAAgBS,WAAtC;AACAD,OAAO,CAACE,UAAR,GAAqBb,QAAQ,CAACG,MAAT,CAAgBU,UAArC;AACAF,OAAO,CAACG,cAAR,GAAyBd,QAAQ,CAACG,MAAT,CAAgBW,cAAzC;AACAH,OAAO,CAACI,MAAR,GAAiBf,QAAQ,CAACG,MAAT,CAAgBM,OAAjC;AACAE,OAAO,CAACK,MAAR,GAAiBhB,QAAQ,CAACG,MAAT,CAAgBc,OAAjC;AACAN,OAAO,CAACO,MAAR,GAAiB;AACfN,EAAAA,WAAW,EAAE,UAAUO,GAAV,EAAeC,UAAf,EAA2B;AACtC,QAAI,CAACA,UAAD,IAAe,CAACC,KAAK,CAACC,OAAN,CAAcF,UAAU,CAACG,OAAzB,CAApB,EAAuD;AACrDH,MAAAA,UAAU,GAAGnB,OAAO,CAAC,2BAAD,CAApB;AACA;;;;;;AAMD;;AAED,WAAOD,QAAQ,CAACG,MAAT,CAAgBS,WAAhB,CAA4BO,GAA5B,EAAiCC,UAAjC,CAAP;AACD,GAbc;AAcfI,EAAAA,cAAc,CAACrB,MAAD,EAAS;AACrB,QAAI,OAAOA,MAAP,KAAkB,QAAtB,EAAgC;AAC9BK,MAAAA,gBAAgB,CAACL,MAAD,CAAhB;AACD,KAFD,MAEO;AACLE,MAAAA,QAAQ,CAACF,MAAD,EAASA,MAAM,CAACsB,EAAhB,CAAR;AACD;AACF,GApBc,EAAjB","sourcesContent":["\"use strict\";\n\nlet complain = \"MARKO_DEBUG\" && require(\"complain\");\nconst compiler = require(\"@marko/compiler\");\n\nfunction clearCache() {\n compiler.taglib.clearCaches();\n}\n\nfunction register(taglibProps, taglibPath) {\n return compiler.taglib.register(taglibPath, taglibProps);\n}\n\nfunction registerFromFile(taglibPath) {\n return register(\n compiler.taglib._loader.loadTaglibFromFile(taglibPath),\n taglibPath\n );\n}\n\nexports.clearCache = clearCache;\nexports.register = register;\nexports.registerFromFile = registerFromFile;\nexports.buildLookup = compiler.taglib.buildLookup;\nexports.excludeDir = compiler.taglib.excludeDir;\nexports.excludePackage = compiler.taglib.excludePackage;\nexports.loader = compiler.taglib._loader;\nexports.finder = compiler.taglib._finder;\nexports.lookup = {\n buildLookup: function (dir, translator) {\n if (!translator || !Array.isArray(translator.taglibs)) {\n translator = require(\"@marko/translator-default\");\n // eslint-disable-next-line no-constant-condition\n if (\"MARKO_DEBUG\") {\n complain(\n \"buildTaglibLookup now requires passing in a transltor as the second argument, eg `buildTaglibLookup(dir, require('@marko/translator-default'))`.\"\n );\n }\n }\n\n return compiler.taglib.buildLookup(dir, translator);\n },\n registerTaglib(taglib) {\n if (typeof taglib === \"string\") {\n registerFromFile(taglib);\n } else {\n register(taglib, taglib.id);\n }\n }\n};\n"],"file":"index.js"}