marko 5.37.6 → 6.0.0-3.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (648) hide show
  1. package/dist/common/attr-tag.d.ts +8 -0
  2. package/dist/common/compat-meta.d.ts +2 -0
  3. package/dist/common/for.d.ts +5 -0
  4. package/dist/common/helpers.d.ts +7 -0
  5. package/dist/common/meta.d.ts +2 -0
  6. package/dist/common/types.d.ts +105 -0
  7. package/dist/debug/dom.js +2111 -0
  8. package/dist/debug/dom.mjs +2088 -0
  9. package/dist/debug/html.js +2740 -0
  10. package/dist/debug/html.mjs +2663 -0
  11. package/dist/dom/abort-signal.d.ts +3 -0
  12. package/dist/dom/compat.d.ts +20 -0
  13. package/dist/dom/control-flow.d.ts +14 -0
  14. package/dist/dom/controllable.d.ts +12 -0
  15. package/dist/dom/dom.d.ts +19 -0
  16. package/dist/dom/event.d.ts +4 -0
  17. package/dist/dom/parse-html.d.ts +5 -0
  18. package/dist/dom/queue.d.ts +10 -0
  19. package/dist/dom/reconcile.d.ts +2 -0
  20. package/dist/dom/renderer.d.ts +21 -0
  21. package/dist/dom/resolve-cursor-position.d.ts +1 -0
  22. package/dist/dom/resume.d.ts +9 -0
  23. package/dist/dom/schedule.d.ts +2 -0
  24. package/dist/dom/scope.d.ts +7 -0
  25. package/dist/dom/signals.d.ts +39 -0
  26. package/dist/dom/template.d.ts +3 -0
  27. package/dist/dom/walker.d.ts +4 -0
  28. package/dist/dom.d.ts +15 -0
  29. package/dist/dom.js +1370 -0
  30. package/dist/dom.mjs +1350 -0
  31. package/dist/html/attrs.d.ts +14 -0
  32. package/dist/html/compat.d.ts +14 -0
  33. package/dist/html/content.d.ts +5 -0
  34. package/dist/html/dynamic-tag.d.ts +12 -0
  35. package/dist/html/for.d.ts +4 -0
  36. package/dist/html/inlined-runtimes.d.ts +2 -0
  37. package/dist/html/serializer.d.ts +14 -0
  38. package/dist/html/template.d.ts +3 -0
  39. package/dist/html/writer.d.ts +114 -0
  40. package/dist/html.d.ts +9 -0
  41. package/dist/html.js +1818 -0
  42. package/dist/html.mjs +1744 -0
  43. package/dist/translator/core/attrs.d.ts +3 -0
  44. package/dist/translator/core/client.d.ts +14 -0
  45. package/dist/translator/core/const.d.ts +3 -0
  46. package/dist/translator/core/debug.d.ts +3 -0
  47. package/dist/translator/core/define.d.ts +3 -0
  48. package/dist/translator/core/effect.d.ts +3 -0
  49. package/dist/translator/core/export.d.ts +3 -0
  50. package/dist/translator/core/for.d.ts +67 -0
  51. package/dist/translator/core/html-comment.d.ts +12 -0
  52. package/dist/translator/core/html-script.d.ts +9 -0
  53. package/dist/translator/core/html-style.d.ts +9 -0
  54. package/dist/translator/core/id.d.ts +3 -0
  55. package/dist/translator/core/if.d.ts +53 -0
  56. package/dist/translator/core/import.d.ts +3 -0
  57. package/dist/translator/core/index.d.ts +152 -0
  58. package/dist/translator/core/let.d.ts +8 -0
  59. package/dist/translator/core/lifecycle.d.ts +10 -0
  60. package/dist/translator/core/log.d.ts +3 -0
  61. package/dist/translator/core/return.d.ts +6 -0
  62. package/dist/translator/core/script.d.ts +3 -0
  63. package/dist/translator/core/server.d.ts +14 -0
  64. package/dist/translator/core/static.d.ts +14 -0
  65. package/dist/translator/core/style.d.ts +3 -0
  66. package/dist/translator/index.d.ts +201 -0
  67. package/dist/translator/index.js +9134 -490
  68. package/dist/translator/util/assert.d.ts +3 -0
  69. package/dist/translator/util/binding-has-downstream-expressions.d.ts +2 -0
  70. package/dist/translator/util/entry-builder.d.ts +19 -0
  71. package/dist/translator/util/evaluate.d.ts +11 -0
  72. package/dist/translator/util/for-each-identifier.d.ts +2 -0
  73. package/dist/translator/util/get-defined-binding-expression.d.ts +3 -0
  74. package/dist/translator/util/get-known-attr-values.d.ts +2 -0
  75. package/dist/translator/util/get-parent-tag.d.ts +2 -0
  76. package/dist/translator/util/get-root.d.ts +7 -0
  77. package/dist/translator/util/get-tag-name.d.ts +2 -0
  78. package/dist/translator/util/is-core-tag.d.ts +10 -0
  79. package/dist/translator/util/is-stateful.d.ts +3 -0
  80. package/dist/translator/util/is-static.d.ts +2 -0
  81. package/dist/translator/util/marko-config.d.ts +4 -0
  82. package/dist/translator/util/nested-attribute-tags.d.ts +17 -0
  83. package/dist/translator/util/normalize-string-expression.d.ts +3 -0
  84. package/dist/translator/util/optional.d.ts +20 -0
  85. package/dist/translator/util/plugin-hooks.d.ts +4 -0
  86. package/dist/translator/util/references.d.ts +84 -0
  87. package/dist/translator/util/runtime-info.d.ts +5 -0
  88. package/dist/translator/util/runtime.d.ts +15 -0
  89. package/dist/translator/util/scope-read.d.ts +6 -0
  90. package/dist/translator/util/sections.d.ts +51 -0
  91. package/dist/translator/util/signals.d.ts +61 -0
  92. package/dist/translator/util/simplify-fn.d.ts +5 -0
  93. package/dist/translator/util/state.d.ts +3 -0
  94. package/dist/translator/util/tag-name-type.d.ts +16 -0
  95. package/dist/translator/util/to-first-expression-or-block.d.ts +3 -0
  96. package/dist/translator/util/to-first-statement-or-block.d.ts +2 -0
  97. package/dist/translator/util/to-property-name.d.ts +7 -0
  98. package/dist/translator/util/translate-attrs.d.ts +12 -0
  99. package/dist/translator/util/translate-var.d.ts +2 -0
  100. package/dist/translator/util/traverse.d.ts +9 -0
  101. package/dist/translator/util/visitors.d.ts +11 -0
  102. package/dist/translator/util/walks.d.ts +15 -0
  103. package/dist/translator/util/with-previous-location.d.ts +2 -0
  104. package/dist/translator/util/writer.d.ts +13 -0
  105. package/dist/translator/visitors/cdata.d.ts +7 -0
  106. package/dist/translator/visitors/comment.d.ts +7 -0
  107. package/dist/translator/visitors/declaration.d.ts +7 -0
  108. package/dist/translator/visitors/document-type.d.ts +7 -0
  109. package/dist/translator/visitors/function.d.ts +19 -0
  110. package/dist/translator/visitors/import-declaration.d.ts +8 -0
  111. package/dist/translator/visitors/placeholder.d.ts +22 -0
  112. package/dist/translator/visitors/program/dom.d.ts +7 -0
  113. package/dist/translator/visitors/program/html.d.ts +8 -0
  114. package/dist/translator/visitors/program/index.d.ts +39 -0
  115. package/dist/translator/visitors/referenced-identifier.d.ts +7 -0
  116. package/dist/translator/visitors/scriptlet.d.ts +8 -0
  117. package/dist/translator/visitors/tag/attribute-tag.d.ts +11 -0
  118. package/dist/translator/visitors/tag/custom-tag.d.ts +19 -0
  119. package/dist/translator/visitors/tag/dynamic-tag.d.ts +18 -0
  120. package/dist/translator/visitors/tag/index.d.ts +15 -0
  121. package/dist/translator/visitors/tag/native-tag.d.ts +25 -0
  122. package/dist/translator/visitors/text.d.ts +7 -0
  123. package/index.d.ts +30 -261
  124. package/package.json +40 -67
  125. package/tag-types/const.d.marko +7 -0
  126. package/tag-types/debug.d.marko +5 -0
  127. package/tag-types/define.d.marko +5 -0
  128. package/tag-types/do.d.marko +5 -0
  129. package/tag-types/effect.d.marko +5 -0
  130. package/tag-types/id.d.marko +3 -0
  131. package/tag-types/let.d.marko +8 -0
  132. package/tag-types/lifecycle.d.marko +7 -0
  133. package/tag-types/log.d.marko +5 -0
  134. package/tag-types/script.d.marko +5 -0
  135. package/tags-html.d.ts +85 -5
  136. package/README.md +0 -161
  137. package/bin/markoc +0 -2
  138. package/bin/markoc.js +0 -441
  139. package/browser-refresh.js +0 -5
  140. package/compiler-browser.marko +0 -15
  141. package/compiler.js +0 -7
  142. package/components-browser.marko +0 -15
  143. package/components.js +0 -7
  144. package/dist/build.json +0 -3
  145. package/dist/compiler/config.js +0 -45
  146. package/dist/compiler/index.js +0 -164
  147. package/dist/compiler/modules.js +0 -5
  148. package/dist/core-tags/components/init-components-tag.js +0 -54
  149. package/dist/core-tags/components/preferred-script-location-tag.js +0 -25
  150. package/dist/core-tags/components/preserve-tag.js +0 -1
  151. package/dist/core-tags/core/__flush_here_and_after__.js +0 -44
  152. package/dist/core-tags/core/await/AsyncValue.js +0 -121
  153. package/dist/core-tags/core/await/client-reorder-runtime.js +0 -51
  154. package/dist/core-tags/core/await/index.d.marko +0 -10
  155. package/dist/core-tags/core/await/renderer.js +0 -249
  156. package/dist/core-tags/core/await/reorderer-renderer.js +0 -156
  157. package/dist/index.js +0 -4
  158. package/dist/node-require/browser-refresh.js +0 -1
  159. package/dist/node-require/hot-reload.js +0 -45
  160. package/dist/node-require/index.js +0 -103
  161. package/dist/node_modules/@internal/components-beginComponent/index-browser.js +0 -23
  162. package/dist/node_modules/@internal/components-beginComponent/index.js +0 -84
  163. package/dist/node_modules/@internal/components-beginComponent/package.json +0 -11
  164. package/dist/node_modules/@internal/components-define-widget-legacy/index-browser.js +0 -335
  165. package/dist/node_modules/@internal/components-define-widget-legacy/index.js +0 -18
  166. package/dist/node_modules/@internal/components-define-widget-legacy/package.json +0 -11
  167. package/dist/node_modules/@internal/components-endComponent/index-browser.js +0 -5
  168. package/dist/node_modules/@internal/components-endComponent/index.js +0 -11
  169. package/dist/node_modules/@internal/components-endComponent/package.json +0 -11
  170. package/dist/node_modules/@internal/components-entry/index-browser.js +0 -11
  171. package/dist/node_modules/@internal/components-entry/index.js +0 -301
  172. package/dist/node_modules/@internal/components-entry/package.json +0 -11
  173. package/dist/node_modules/@internal/components-entry-legacy/index-browser.js +0 -76
  174. package/dist/node_modules/@internal/components-entry-legacy/index.js +0 -16
  175. package/dist/node_modules/@internal/components-entry-legacy/package.json +0 -11
  176. package/dist/node_modules/@internal/components-registry/index-browser.js +0 -586
  177. package/dist/node_modules/@internal/components-registry/index.js +0 -44
  178. package/dist/node_modules/@internal/components-registry/package.json +0 -11
  179. package/dist/node_modules/@internal/components-util/index-browser.js +0 -152
  180. package/dist/node_modules/@internal/components-util/index.js +0 -71
  181. package/dist/node_modules/@internal/components-util/package.json +0 -11
  182. package/dist/node_modules/@internal/create-readable/index-browser.js +0 -30
  183. package/dist/node_modules/@internal/create-readable/index.js +0 -57
  184. package/dist/node_modules/@internal/create-readable/package.json +0 -11
  185. package/dist/node_modules/@internal/loader/fallback-node.js +0 -89
  186. package/dist/node_modules/@internal/loader/index-browser.js +0 -2
  187. package/dist/node_modules/@internal/loader/index.js +0 -23
  188. package/dist/node_modules/@internal/loader/package.json +0 -10
  189. package/dist/node_modules/@internal/preserve-tag/index-browser.js +0 -46
  190. package/dist/node_modules/@internal/preserve-tag/index.js +0 -34
  191. package/dist/node_modules/@internal/preserve-tag/package.json +0 -11
  192. package/dist/node_modules/@internal/require/index-browser.js +0 -15
  193. package/dist/node_modules/@internal/require/index-legacy-browser.js +0 -20
  194. package/dist/node_modules/@internal/require/index-webpack.js +0 -16
  195. package/dist/node_modules/@internal/require/index.js +0 -15
  196. package/dist/node_modules/@internal/require/package.json +0 -11
  197. package/dist/node_modules/@internal/set-immediate/index-browser.js +0 -19
  198. package/dist/node_modules/@internal/set-immediate/index-worker.js +0 -31
  199. package/dist/node_modules/@internal/set-immediate/index.js +0 -3
  200. package/dist/node_modules/@internal/set-immediate/package.json +0 -11
  201. package/dist/node_modules/@internal/set-immediate/queueMicrotask.js +0 -8
  202. package/dist/runtime/RenderResult.js +0 -112
  203. package/dist/runtime/components/Component.js +0 -663
  204. package/dist/runtime/components/ComponentDef.js +0 -169
  205. package/dist/runtime/components/ComponentsContext.js +0 -59
  206. package/dist/runtime/components/GlobalComponentsContext.js +0 -10
  207. package/dist/runtime/components/KeySequence.js +0 -16
  208. package/dist/runtime/components/ServerComponent.js +0 -73
  209. package/dist/runtime/components/State.js +0 -101
  210. package/dist/runtime/components/attach-detach.js +0 -60
  211. package/dist/runtime/components/defineComponent.js +0 -60
  212. package/dist/runtime/components/dom-data.js +0 -8
  213. package/dist/runtime/components/event-delegation.js +0 -144
  214. package/dist/runtime/components/index.js +0 -1
  215. package/dist/runtime/components/legacy/browser.json +0 -9
  216. package/dist/runtime/components/legacy/defineComponent-legacy.js +0 -27
  217. package/dist/runtime/components/legacy/defineRenderer-legacy.js +0 -171
  218. package/dist/runtime/components/legacy/defineWidget-legacy.js +0 -1
  219. package/dist/runtime/components/legacy/dependencies/html.js +0 -3
  220. package/dist/runtime/components/legacy/dependencies/index.js +0 -177
  221. package/dist/runtime/components/legacy/dependencies/vdom.js +0 -3
  222. package/dist/runtime/components/legacy/index.js +0 -1
  223. package/dist/runtime/components/legacy/jquery.js +0 -52
  224. package/dist/runtime/components/legacy/ready.js +0 -152
  225. package/dist/runtime/components/legacy/renderer-legacy.js +0 -231
  226. package/dist/runtime/components/registry.js +0 -1
  227. package/dist/runtime/components/renderer.js +0 -236
  228. package/dist/runtime/components/update-manager.js +0 -94
  229. package/dist/runtime/createOut.js +0 -13
  230. package/dist/runtime/dom-insert.js +0 -77
  231. package/dist/runtime/events.js +0 -2
  232. package/dist/runtime/helpers/_change-case.js +0 -45
  233. package/dist/runtime/helpers/assign.js +0 -21
  234. package/dist/runtime/helpers/attr-tag.js +0 -43
  235. package/dist/runtime/helpers/class-value.js +0 -30
  236. package/dist/runtime/helpers/dynamic-tag.js +0 -181
  237. package/dist/runtime/helpers/empty-component.js +0 -1
  238. package/dist/runtime/helpers/merge.js +0 -13
  239. package/dist/runtime/helpers/of-fallback.js +0 -4
  240. package/dist/runtime/helpers/render-tag.js +0 -20
  241. package/dist/runtime/helpers/serialize-noop.js +0 -5
  242. package/dist/runtime/helpers/style-value.js +0 -45
  243. package/dist/runtime/helpers/tags-compat/dom-debug.js +0 -1
  244. package/dist/runtime/helpers/tags-compat/dom-debug.mjs +0 -4
  245. package/dist/runtime/helpers/tags-compat/dom.js +0 -1
  246. package/dist/runtime/helpers/tags-compat/dom.mjs +0 -4
  247. package/dist/runtime/helpers/tags-compat/html-debug.js +0 -3
  248. package/dist/runtime/helpers/tags-compat/html-debug.mjs +0 -4
  249. package/dist/runtime/helpers/tags-compat/html.js +0 -3
  250. package/dist/runtime/helpers/tags-compat/html.mjs +0 -4
  251. package/dist/runtime/helpers/tags-compat/runtime-dom.js +0 -239
  252. package/dist/runtime/helpers/tags-compat/runtime-html.js +0 -136
  253. package/dist/runtime/helpers/to-string.js +0 -5
  254. package/dist/runtime/html/AsyncStream.js +0 -805
  255. package/dist/runtime/html/BufferedWriter.js +0 -52
  256. package/dist/runtime/html/StringWriter.js +0 -73
  257. package/dist/runtime/html/helpers/_dynamic-attr.js +0 -35
  258. package/dist/runtime/html/helpers/attr.js +0 -80
  259. package/dist/runtime/html/helpers/attrs.js +0 -26
  260. package/dist/runtime/html/helpers/class-attr.js +0 -8
  261. package/dist/runtime/html/helpers/data-marko.js +0 -36
  262. package/dist/runtime/html/helpers/escape-quotes.js +0 -35
  263. package/dist/runtime/html/helpers/escape-script-placeholder.js +0 -24
  264. package/dist/runtime/html/helpers/escape-style-placeholder.js +0 -22
  265. package/dist/runtime/html/helpers/escape-xml.js +0 -21
  266. package/dist/runtime/html/helpers/merge-attrs.js +0 -55
  267. package/dist/runtime/html/helpers/props-script.js +0 -32
  268. package/dist/runtime/html/helpers/style-attr.js +0 -8
  269. package/dist/runtime/html/hot-reload.js +0 -26
  270. package/dist/runtime/html/index.js +0 -33
  271. package/dist/runtime/html/marko-namespace.js +0 -3
  272. package/dist/runtime/renderable.js +0 -194
  273. package/dist/runtime/vdom/AsyncVDOMBuilder.js +0 -456
  274. package/dist/runtime/vdom/VComment.js +0 -24
  275. package/dist/runtime/vdom/VComponent.js +0 -17
  276. package/dist/runtime/vdom/VDocumentFragment.js +0 -34
  277. package/dist/runtime/vdom/VElement.js +0 -375
  278. package/dist/runtime/vdom/VFragment.js +0 -26
  279. package/dist/runtime/vdom/VNode.js +0 -100
  280. package/dist/runtime/vdom/VText.js +0 -25
  281. package/dist/runtime/vdom/helpers/attrs.js +0 -62
  282. package/dist/runtime/vdom/helpers/const-element.js +0 -25
  283. package/dist/runtime/vdom/helpers/merge-attrs.js +0 -16
  284. package/dist/runtime/vdom/hot-reload.js +0 -115
  285. package/dist/runtime/vdom/index.js +0 -30
  286. package/dist/runtime/vdom/is-text-only.js +0 -10
  287. package/dist/runtime/vdom/marko-namespace.js +0 -3
  288. package/dist/runtime/vdom/morphdom/fragment.js +0 -95
  289. package/dist/runtime/vdom/morphdom/helpers.js +0 -42
  290. package/dist/runtime/vdom/morphdom/index.js +0 -741
  291. package/dist/runtime/vdom/parse-html.js +0 -18
  292. package/dist/runtime/vdom/vdom.js +0 -88
  293. package/dist/taglib/index.js +0 -51
  294. package/dist/translator/cdata/index.js +0 -15
  295. package/dist/translator/cdata/index[html].js +0 -15
  296. package/dist/translator/cdata/index[vdom].js +0 -12
  297. package/dist/translator/class.js +0 -65
  298. package/dist/translator/comment/index.js +0 -15
  299. package/dist/translator/comment/index[html].js +0 -17
  300. package/dist/translator/comment/index[vdom].js +0 -3
  301. package/dist/translator/declaration/index.js +0 -15
  302. package/dist/translator/declaration/index[html].js +0 -12
  303. package/dist/translator/declaration/index[vdom].js +0 -3
  304. package/dist/translator/document-type/index.js +0 -15
  305. package/dist/translator/document-type/index[html].js +0 -12
  306. package/dist/translator/document-type/index[vdom].js +0 -3
  307. package/dist/translator/placeholder/index.js +0 -15
  308. package/dist/translator/placeholder/index[html].js +0 -93
  309. package/dist/translator/placeholder/index[vdom].js +0 -22
  310. package/dist/translator/scriptlet.js +0 -4
  311. package/dist/translator/tag/attribute/directives/class.js +0 -42
  312. package/dist/translator/tag/attribute/directives/index.js +0 -15
  313. package/dist/translator/tag/attribute/directives/no-update-body-if.js +0 -15
  314. package/dist/translator/tag/attribute/directives/no-update-body.js +0 -10
  315. package/dist/translator/tag/attribute/directives/no-update-if.js +0 -12
  316. package/dist/translator/tag/attribute/directives/no-update.js +0 -48
  317. package/dist/translator/tag/attribute/directives/style.js +0 -42
  318. package/dist/translator/tag/attribute/index.js +0 -150
  319. package/dist/translator/tag/attribute/modifiers/index.js +0 -7
  320. package/dist/translator/tag/attribute/modifiers/no-update.js +0 -14
  321. package/dist/translator/tag/attribute/modifiers/scoped.js +0 -23
  322. package/dist/translator/tag/attribute-tag.js +0 -149
  323. package/dist/translator/tag/custom-tag.js +0 -146
  324. package/dist/translator/tag/dynamic-tag.js +0 -74
  325. package/dist/translator/tag/index.js +0 -287
  326. package/dist/translator/tag/macro-tag.js +0 -7
  327. package/dist/translator/tag/native-tag.js +0 -27
  328. package/dist/translator/tag/native-tag[html]/attributes.js +0 -151
  329. package/dist/translator/tag/native-tag[html]/index.js +0 -221
  330. package/dist/translator/tag/native-tag[vdom]/attributes.js +0 -105
  331. package/dist/translator/tag/native-tag[vdom]/index.js +0 -189
  332. package/dist/translator/tag/util.js +0 -246
  333. package/dist/translator/taglib/core/conditional/translate-else-if.js +0 -20
  334. package/dist/translator/taglib/core/conditional/translate-else.js +0 -20
  335. package/dist/translator/taglib/core/conditional/translate-if.js +0 -8
  336. package/dist/translator/taglib/core/conditional/util.js +0 -41
  337. package/dist/translator/taglib/core/index.js +0 -474
  338. package/dist/translator/taglib/core/macro/parse.js +0 -17
  339. package/dist/translator/taglib/core/macro/translate.js +0 -48
  340. package/dist/translator/taglib/core/parse-class.js +0 -79
  341. package/dist/translator/taglib/core/parse-export.js +0 -14
  342. package/dist/translator/taglib/core/parse-import.js +0 -14
  343. package/dist/translator/taglib/core/parse-module-code.js +0 -18
  344. package/dist/translator/taglib/core/parse-static.js +0 -18
  345. package/dist/translator/taglib/core/transform-style.js +0 -66
  346. package/dist/translator/taglib/core/translate-await.js +0 -41
  347. package/dist/translator/taglib/core/translate-body.js +0 -17
  348. package/dist/translator/taglib/core/translate-for.js +0 -156
  349. package/dist/translator/taglib/core/translate-html-comment.js +0 -52
  350. package/dist/translator/taglib/core/translate-include-content.js +0 -53
  351. package/dist/translator/taglib/core/translate-server-only.js +0 -5
  352. package/dist/translator/taglib/core/translate-while.js +0 -32
  353. package/dist/translator/taglib/index.js +0 -6
  354. package/dist/translator/taglib/migrate/all-templates.js +0 -46
  355. package/dist/translator/taglib/migrate/index.js +0 -5
  356. package/dist/translator/text/index.js +0 -10
  357. package/dist/translator/text/index[html].js +0 -12
  358. package/dist/translator/text/index[vdom].js +0 -20
  359. package/dist/translator/util/add-dependencies.js +0 -329
  360. package/dist/translator/util/escape-regexp.js +0 -4
  361. package/dist/translator/util/get-component-files.js +0 -86
  362. package/dist/translator/util/html-out-write.js +0 -15
  363. package/dist/translator/util/key-manager.js +0 -176
  364. package/dist/translator/util/optimize-html-writes.js +0 -52
  365. package/dist/translator/util/optimize-vdom-create.js +0 -164
  366. package/dist/translator/util/plugin-hooks.js +0 -22
  367. package/dist/translator/util/runtime-flags.js +0 -3
  368. package/dist/translator/util/vdom-out-write.js +0 -10
  369. package/dist/translator/util/with-previous-location.js +0 -6
  370. package/docs/10-awesome-marko-features.md +0 -291
  371. package/docs/body-content.md +0 -355
  372. package/docs/class-components.md +0 -1001
  373. package/docs/cloudflare-workers.md +0 -32
  374. package/docs/compiler-hooks.png +0 -0
  375. package/docs/compiler.md +0 -473
  376. package/docs/component-diagram.afdesign +0 -0
  377. package/docs/component-diagram.svg +0 -87
  378. package/docs/concise.md +0 -141
  379. package/docs/conditionals-and-lists.md +0 -72
  380. package/docs/core-tags.md +0 -325
  381. package/docs/custom-tags.md +0 -201
  382. package/docs/editor-plugins.md +0 -45
  383. package/docs/events.md +0 -131
  384. package/docs/express.md +0 -66
  385. package/docs/fastify.md +0 -65
  386. package/docs/getting-started.md +0 -95
  387. package/docs/http.md +0 -34
  388. package/docs/icons/js.svg +0 -4
  389. package/docs/icons/marko.svg +0 -1
  390. package/docs/icons/ts.svg +0 -1
  391. package/docs/installing.md +0 -51
  392. package/docs/koa.md +0 -35
  393. package/docs/lasso.md +0 -196
  394. package/docs/marko-5-upgrade.md +0 -59
  395. package/docs/marko-json.md +0 -248
  396. package/docs/marko-vs-react.md +0 -854
  397. package/docs/redux.md +0 -61
  398. package/docs/rendering.md +0 -268
  399. package/docs/rollup.md +0 -352
  400. package/docs/state.md +0 -105
  401. package/docs/structure.json +0 -49
  402. package/docs/styles.md +0 -29
  403. package/docs/syntax.md +0 -601
  404. package/docs/troubleshooting-streaming.md +0 -68
  405. package/docs/typescript.md +0 -406
  406. package/docs/vite.md +0 -86
  407. package/docs/webpack.md +0 -205
  408. package/docs/why-is-marko-fast.md +0 -239
  409. package/env.js +0 -7
  410. package/helpers/README.md +0 -3
  411. package/helpers/empty.js +0 -4
  412. package/helpers/notEmpty.js +0 -11
  413. package/index-browser.marko +0 -15
  414. package/index.js +0 -7
  415. package/legacy-components-browser.marko +0 -15
  416. package/legacy-components.js +0 -7
  417. package/node-require.js +0 -8
  418. package/src/build.json +0 -3
  419. package/src/compiler/config.js +0 -45
  420. package/src/compiler/index.js +0 -164
  421. package/src/compiler/modules.js +0 -5
  422. package/src/core-tags/.eslintrc +0 -5
  423. package/src/core-tags/components/init-components-tag.js +0 -54
  424. package/src/core-tags/components/preferred-script-location-tag.js +0 -25
  425. package/src/core-tags/components/preserve-tag.js +0 -1
  426. package/src/core-tags/core/__flush_here_and_after__.js +0 -44
  427. package/src/core-tags/core/await/AsyncValue.js +0 -121
  428. package/src/core-tags/core/await/client-reorder-runtime.js +0 -51
  429. package/src/core-tags/core/await/index.d.marko +0 -10
  430. package/src/core-tags/core/await/renderer.js +0 -249
  431. package/src/core-tags/core/await/reorderer-renderer.js +0 -156
  432. package/src/index.js +0 -4
  433. package/src/node-require/browser-refresh.js +0 -18
  434. package/src/node-require/hot-reload.js +0 -45
  435. package/src/node-require/index.js +0 -103
  436. package/src/node_modules/@internal/components-beginComponent/index-browser.js +0 -23
  437. package/src/node_modules/@internal/components-beginComponent/index.js +0 -84
  438. package/src/node_modules/@internal/components-beginComponent/package.json +0 -11
  439. package/src/node_modules/@internal/components-define-widget-legacy/index-browser.js +0 -335
  440. package/src/node_modules/@internal/components-define-widget-legacy/index.js +0 -18
  441. package/src/node_modules/@internal/components-define-widget-legacy/package.json +0 -11
  442. package/src/node_modules/@internal/components-endComponent/index-browser.js +0 -5
  443. package/src/node_modules/@internal/components-endComponent/index.js +0 -11
  444. package/src/node_modules/@internal/components-endComponent/package.json +0 -11
  445. package/src/node_modules/@internal/components-entry/index-browser.js +0 -11
  446. package/src/node_modules/@internal/components-entry/index.js +0 -301
  447. package/src/node_modules/@internal/components-entry/package.json +0 -11
  448. package/src/node_modules/@internal/components-entry-legacy/index-browser.js +0 -76
  449. package/src/node_modules/@internal/components-entry-legacy/index.js +0 -16
  450. package/src/node_modules/@internal/components-entry-legacy/package.json +0 -11
  451. package/src/node_modules/@internal/components-registry/index-browser.js +0 -586
  452. package/src/node_modules/@internal/components-registry/index.js +0 -44
  453. package/src/node_modules/@internal/components-registry/package.json +0 -11
  454. package/src/node_modules/@internal/components-util/index-browser.js +0 -152
  455. package/src/node_modules/@internal/components-util/index.js +0 -75
  456. package/src/node_modules/@internal/components-util/package.json +0 -11
  457. package/src/node_modules/@internal/create-readable/index-browser.js +0 -30
  458. package/src/node_modules/@internal/create-readable/index.js +0 -57
  459. package/src/node_modules/@internal/create-readable/package.json +0 -11
  460. package/src/node_modules/@internal/loader/fallback-node.js +0 -89
  461. package/src/node_modules/@internal/loader/index-browser.js +0 -2
  462. package/src/node_modules/@internal/loader/index.js +0 -23
  463. package/src/node_modules/@internal/loader/package.json +0 -10
  464. package/src/node_modules/@internal/preserve-tag/index-browser.js +0 -46
  465. package/src/node_modules/@internal/preserve-tag/index.js +0 -34
  466. package/src/node_modules/@internal/preserve-tag/package.json +0 -11
  467. package/src/node_modules/@internal/require/index-browser.js +0 -15
  468. package/src/node_modules/@internal/require/index-legacy-browser.js +0 -20
  469. package/src/node_modules/@internal/require/index-webpack.js +0 -16
  470. package/src/node_modules/@internal/require/index.js +0 -15
  471. package/src/node_modules/@internal/require/package.json +0 -11
  472. package/src/node_modules/@internal/set-immediate/index-browser.js +0 -19
  473. package/src/node_modules/@internal/set-immediate/index-worker.js +0 -31
  474. package/src/node_modules/@internal/set-immediate/index.js +0 -3
  475. package/src/node_modules/@internal/set-immediate/package.json +0 -11
  476. package/src/node_modules/@internal/set-immediate/queueMicrotask.js +0 -8
  477. package/src/runtime/.eslintrc +0 -5
  478. package/src/runtime/RenderResult.js +0 -112
  479. package/src/runtime/components/Component.js +0 -663
  480. package/src/runtime/components/ComponentDef.js +0 -169
  481. package/src/runtime/components/ComponentsContext.js +0 -59
  482. package/src/runtime/components/GlobalComponentsContext.js +0 -10
  483. package/src/runtime/components/KeySequence.js +0 -16
  484. package/src/runtime/components/ServerComponent.js +0 -73
  485. package/src/runtime/components/State.js +0 -101
  486. package/src/runtime/components/attach-detach.js +0 -60
  487. package/src/runtime/components/defineComponent.js +0 -60
  488. package/src/runtime/components/dom-data.js +0 -8
  489. package/src/runtime/components/event-delegation.js +0 -144
  490. package/src/runtime/components/index.js +0 -1
  491. package/src/runtime/components/legacy/browser.json +0 -9
  492. package/src/runtime/components/legacy/defineComponent-legacy.js +0 -27
  493. package/src/runtime/components/legacy/defineRenderer-legacy.js +0 -171
  494. package/src/runtime/components/legacy/defineWidget-legacy.js +0 -1
  495. package/src/runtime/components/legacy/dependencies/html.js +0 -3
  496. package/src/runtime/components/legacy/dependencies/index.js +0 -177
  497. package/src/runtime/components/legacy/dependencies/vdom.js +0 -3
  498. package/src/runtime/components/legacy/index.js +0 -1
  499. package/src/runtime/components/legacy/jquery.js +0 -52
  500. package/src/runtime/components/legacy/ready.js +0 -152
  501. package/src/runtime/components/legacy/renderer-legacy.js +0 -231
  502. package/src/runtime/components/registry.js +0 -1
  503. package/src/runtime/components/renderer.js +0 -236
  504. package/src/runtime/components/update-manager.js +0 -94
  505. package/src/runtime/createOut.js +0 -13
  506. package/src/runtime/dom-insert.js +0 -77
  507. package/src/runtime/events.js +0 -2
  508. package/src/runtime/helpers/_change-case.js +0 -45
  509. package/src/runtime/helpers/assign.js +0 -21
  510. package/src/runtime/helpers/attr-tag.js +0 -43
  511. package/src/runtime/helpers/class-value.js +0 -30
  512. package/src/runtime/helpers/dynamic-tag.js +0 -181
  513. package/src/runtime/helpers/empty-component.js +0 -1
  514. package/src/runtime/helpers/merge.js +0 -13
  515. package/src/runtime/helpers/of-fallback.js +0 -4
  516. package/src/runtime/helpers/render-tag.js +0 -20
  517. package/src/runtime/helpers/serialize-noop.js +0 -5
  518. package/src/runtime/helpers/style-value.js +0 -45
  519. package/src/runtime/helpers/tags-compat/dom-debug.js +0 -1
  520. package/src/runtime/helpers/tags-compat/dom-debug.mjs +0 -4
  521. package/src/runtime/helpers/tags-compat/dom.js +0 -1
  522. package/src/runtime/helpers/tags-compat/dom.mjs +0 -4
  523. package/src/runtime/helpers/tags-compat/html-debug.js +0 -3
  524. package/src/runtime/helpers/tags-compat/html-debug.mjs +0 -4
  525. package/src/runtime/helpers/tags-compat/html.js +0 -3
  526. package/src/runtime/helpers/tags-compat/html.mjs +0 -4
  527. package/src/runtime/helpers/tags-compat/runtime-dom.js +0 -239
  528. package/src/runtime/helpers/tags-compat/runtime-html.js +0 -136
  529. package/src/runtime/helpers/to-string.js +0 -5
  530. package/src/runtime/html/AsyncStream.js +0 -805
  531. package/src/runtime/html/BufferedWriter.js +0 -52
  532. package/src/runtime/html/StringWriter.js +0 -73
  533. package/src/runtime/html/helpers/_dynamic-attr.js +0 -35
  534. package/src/runtime/html/helpers/attr.js +0 -80
  535. package/src/runtime/html/helpers/attrs.js +0 -26
  536. package/src/runtime/html/helpers/class-attr.js +0 -8
  537. package/src/runtime/html/helpers/data-marko.js +0 -36
  538. package/src/runtime/html/helpers/escape-quotes.js +0 -35
  539. package/src/runtime/html/helpers/escape-script-placeholder.js +0 -24
  540. package/src/runtime/html/helpers/escape-style-placeholder.js +0 -22
  541. package/src/runtime/html/helpers/escape-xml.js +0 -21
  542. package/src/runtime/html/helpers/merge-attrs.js +0 -55
  543. package/src/runtime/html/helpers/props-script.js +0 -32
  544. package/src/runtime/html/helpers/style-attr.js +0 -8
  545. package/src/runtime/html/hot-reload.js +0 -26
  546. package/src/runtime/html/index.js +0 -33
  547. package/src/runtime/html/marko-namespace.js +0 -3
  548. package/src/runtime/renderable.js +0 -194
  549. package/src/runtime/vdom/AsyncVDOMBuilder.js +0 -456
  550. package/src/runtime/vdom/VComment.js +0 -24
  551. package/src/runtime/vdom/VComponent.js +0 -17
  552. package/src/runtime/vdom/VDocumentFragment.js +0 -34
  553. package/src/runtime/vdom/VElement.js +0 -375
  554. package/src/runtime/vdom/VFragment.js +0 -26
  555. package/src/runtime/vdom/VNode.js +0 -100
  556. package/src/runtime/vdom/VText.js +0 -25
  557. package/src/runtime/vdom/helpers/attrs.js +0 -62
  558. package/src/runtime/vdom/helpers/const-element.js +0 -25
  559. package/src/runtime/vdom/helpers/merge-attrs.js +0 -16
  560. package/src/runtime/vdom/hot-reload.js +0 -115
  561. package/src/runtime/vdom/index.js +0 -30
  562. package/src/runtime/vdom/is-text-only.js +0 -10
  563. package/src/runtime/vdom/marko-namespace.js +0 -3
  564. package/src/runtime/vdom/morphdom/fragment.js +0 -95
  565. package/src/runtime/vdom/morphdom/helpers.js +0 -42
  566. package/src/runtime/vdom/morphdom/index.js +0 -741
  567. package/src/runtime/vdom/parse-html.js +0 -18
  568. package/src/runtime/vdom/vdom.js +0 -88
  569. package/src/taglib/index.js +0 -51
  570. package/src/translator/cdata/index.js +0 -15
  571. package/src/translator/cdata/index[html].js +0 -15
  572. package/src/translator/cdata/index[vdom].js +0 -12
  573. package/src/translator/class.js +0 -65
  574. package/src/translator/comment/index.js +0 -15
  575. package/src/translator/comment/index[html].js +0 -17
  576. package/src/translator/comment/index[vdom].js +0 -3
  577. package/src/translator/declaration/index.js +0 -15
  578. package/src/translator/declaration/index[html].js +0 -12
  579. package/src/translator/declaration/index[vdom].js +0 -3
  580. package/src/translator/document-type/index.js +0 -15
  581. package/src/translator/document-type/index[html].js +0 -12
  582. package/src/translator/document-type/index[vdom].js +0 -3
  583. package/src/translator/index.js +0 -552
  584. package/src/translator/placeholder/index.js +0 -15
  585. package/src/translator/placeholder/index[html].js +0 -93
  586. package/src/translator/placeholder/index[vdom].js +0 -22
  587. package/src/translator/scriptlet.js +0 -4
  588. package/src/translator/tag/attribute/directives/class.js +0 -42
  589. package/src/translator/tag/attribute/directives/index.js +0 -15
  590. package/src/translator/tag/attribute/directives/no-update-body-if.js +0 -15
  591. package/src/translator/tag/attribute/directives/no-update-body.js +0 -10
  592. package/src/translator/tag/attribute/directives/no-update-if.js +0 -12
  593. package/src/translator/tag/attribute/directives/no-update.js +0 -48
  594. package/src/translator/tag/attribute/directives/style.js +0 -42
  595. package/src/translator/tag/attribute/index.js +0 -150
  596. package/src/translator/tag/attribute/modifiers/index.js +0 -7
  597. package/src/translator/tag/attribute/modifiers/no-update.js +0 -14
  598. package/src/translator/tag/attribute/modifiers/scoped.js +0 -23
  599. package/src/translator/tag/attribute-tag.js +0 -149
  600. package/src/translator/tag/custom-tag.js +0 -146
  601. package/src/translator/tag/dynamic-tag.js +0 -74
  602. package/src/translator/tag/index.js +0 -287
  603. package/src/translator/tag/macro-tag.js +0 -7
  604. package/src/translator/tag/native-tag.js +0 -27
  605. package/src/translator/tag/native-tag[html]/attributes.js +0 -151
  606. package/src/translator/tag/native-tag[html]/index.js +0 -221
  607. package/src/translator/tag/native-tag[vdom]/attributes.js +0 -105
  608. package/src/translator/tag/native-tag[vdom]/index.js +0 -189
  609. package/src/translator/tag/util.js +0 -246
  610. package/src/translator/taglib/core/conditional/translate-else-if.js +0 -20
  611. package/src/translator/taglib/core/conditional/translate-else.js +0 -20
  612. package/src/translator/taglib/core/conditional/translate-if.js +0 -8
  613. package/src/translator/taglib/core/conditional/util.js +0 -41
  614. package/src/translator/taglib/core/index.js +0 -474
  615. package/src/translator/taglib/core/macro/parse.js +0 -17
  616. package/src/translator/taglib/core/macro/translate.js +0 -48
  617. package/src/translator/taglib/core/parse-class.js +0 -79
  618. package/src/translator/taglib/core/parse-export.js +0 -14
  619. package/src/translator/taglib/core/parse-import.js +0 -14
  620. package/src/translator/taglib/core/parse-module-code.js +0 -18
  621. package/src/translator/taglib/core/parse-static.js +0 -18
  622. package/src/translator/taglib/core/transform-style.js +0 -66
  623. package/src/translator/taglib/core/translate-await.js +0 -41
  624. package/src/translator/taglib/core/translate-body.js +0 -17
  625. package/src/translator/taglib/core/translate-for.js +0 -156
  626. package/src/translator/taglib/core/translate-html-comment.js +0 -52
  627. package/src/translator/taglib/core/translate-include-content.js +0 -53
  628. package/src/translator/taglib/core/translate-server-only.js +0 -5
  629. package/src/translator/taglib/core/translate-while.js +0 -32
  630. package/src/translator/taglib/index.js +0 -7
  631. package/src/translator/taglib/migrate/all-templates.js +0 -46
  632. package/src/translator/taglib/migrate/index.js +0 -5
  633. package/src/translator/text/index.js +0 -10
  634. package/src/translator/text/index[html].js +0 -12
  635. package/src/translator/text/index[vdom].js +0 -20
  636. package/src/translator/util/add-dependencies.js +0 -329
  637. package/src/translator/util/escape-regexp.js +0 -4
  638. package/src/translator/util/get-component-files.js +0 -86
  639. package/src/translator/util/html-out-write.js +0 -15
  640. package/src/translator/util/key-manager.js +0 -176
  641. package/src/translator/util/optimize-html-writes.js +0 -52
  642. package/src/translator/util/optimize-vdom-create.js +0 -164
  643. package/src/translator/util/plugin-hooks.js +0 -22
  644. package/src/translator/util/runtime-flags.js +0 -3
  645. package/src/translator/util/vdom-out-write.js +0 -10
  646. package/src/translator/util/with-previous-location.js +0 -6
  647. package/translator/index.d.ts +0 -7
  648. package/translator/package.json +0 -5
@@ -1,194 +0,0 @@
1
- "use strict";
2
-
3
- var extend = require("raptor-util/extend");
4
- var setImmediate = require("@internal/set-immediate")._k_;
5
- var defaultCreateOut = require("./createOut");
6
-
7
- function safeRender(renderFunc, finalData, finalOut, shouldEnd) {
8
- try {
9
- renderFunc(finalData, finalOut);
10
-
11
- if (shouldEnd) {
12
- finalOut.end();
13
- }
14
- } catch (err) {
15
- var actualEnd = finalOut.end;
16
- finalOut.end = function () {};
17
-
18
- setImmediate(function () {
19
- finalOut.end = actualEnd;
20
- finalOut.error(err);
21
- });
22
- }
23
- return finalOut;
24
- }
25
-
26
- module.exports = function (target, renderer) {
27
- var renderFunc =
28
- renderer && (renderer.renderer || renderer.render || renderer);
29
- var createOut = target.createOut || renderer.createOut || defaultCreateOut;
30
-
31
- return extend(target, {
32
- _: renderFunc,
33
- createOut: createOut,
34
-
35
- renderToString: function (data, callback) {
36
- var localData = data || {};
37
- var render = renderFunc || this._;
38
- var globalData = localData.$global;
39
- var out = createOut(globalData);
40
-
41
- out.global.template = this;
42
-
43
- if (globalData) {
44
- localData.$global = undefined;
45
- }
46
-
47
- if (callback) {
48
- out.
49
- on("finish", function () {
50
- callback(null, out.toString(), out);
51
- }).
52
- once("error", callback);
53
-
54
- return safeRender(render, localData, out, true);
55
- } else {
56
- out.sync();
57
- render(localData, out);
58
- return out.toString();
59
- }
60
- },
61
-
62
- renderSync: function (data) {
63
- var localData = data || {};
64
- var render = renderFunc || this._;
65
- var globalData = localData.$global;
66
- var out = createOut(globalData);
67
- out.sync();
68
-
69
- out.global.template = this;
70
-
71
- if (globalData) {
72
- localData.$global = undefined;
73
- }
74
-
75
- render(localData, out);
76
- return out.o_();
77
- },
78
-
79
- /**
80
- * Renders a template to nodes and inserts them into the DOM relative
81
- * to the provided reference based on the optional position parameter.
82
- *
83
- * Supported signatures:
84
- *
85
- * mount(data, reference)
86
- * mount(data, reference, position)
87
- *
88
- * @param {Object} data The view model data for the template
89
- * @param {Node} reference DOM node to insert the rendered node(s) relative to
90
- * @param {string} [position] A string representing the position relative to the `reference`; must match (case-insensitively) one of the following strings:
91
- * 'beforebegin': Before the targetElement itself.
92
- * 'afterbegin': Just inside the targetElement, before its first child.
93
- * 'beforeend': Just inside the targetElement, after its last child.
94
- * 'afterend': After the targetElement itself.
95
- * @return {TemplateInstance} Object with `update` and `dispose` methods
96
- */
97
- mount: function (data, reference, position) {
98
- const result = this.renderSync(data);
99
-
100
- switch (position) {
101
- case "afterbegin":
102
- result.prependTo(reference);
103
- break;
104
- case "afterend":
105
- result.insertAfter(reference);
106
- break;
107
- case "beforebegin":
108
- result.insertBefore(reference);
109
- break;
110
- default:
111
- result.appendTo(reference);
112
- break;
113
- }
114
-
115
- const component = result.getComponent();
116
-
117
- return {
118
- update(input) {
119
- component.input = input;
120
- component.update();
121
- },
122
- destroy() {
123
- component.destroy();
124
- }
125
- };
126
- },
127
-
128
- /**
129
- * Renders a template to either a stream (if the last
130
- * argument is a Stream instance) or
131
- * provides the output to a callback function (if the last
132
- * argument is a Function).
133
- *
134
- * Supported signatures:
135
- *
136
- * render(data)
137
- * render(data, out)
138
- * render(data, stream)
139
- * render(data, callback)
140
- *
141
- * @param {Object} data The view model data for the template
142
- * @param {AsyncStream/AsyncVDOMBuilder} out A Stream, an AsyncStream/AsyncVDOMBuilder instance, or a callback function
143
- * @return {AsyncStream/AsyncVDOMBuilder} Returns the AsyncStream/AsyncVDOMBuilder instance that the template is rendered to
144
- */
145
- render: function (data, out) {
146
- var callback;
147
- var finalOut;
148
- var finalData;
149
- var globalData;
150
- var render = renderFunc || this._;
151
- var shouldBuffer = this._W_;
152
- var shouldEnd = true;
153
-
154
- if (data) {
155
- finalData = data;
156
- if (globalData = data.$global) {
157
- finalData.$global = undefined;
158
- }
159
- } else {
160
- finalData = {};
161
- }
162
-
163
- if (out && out.bu_) {
164
- finalOut = out;
165
- shouldEnd = false;
166
- extend(out.global, globalData);
167
- } else if (typeof out == "function") {
168
- finalOut = createOut(globalData);
169
- callback = out;
170
- } else {
171
- finalOut = createOut(
172
- globalData, // global
173
- out, // writer(AsyncStream) or parentNode(AsyncVDOMBuilder)
174
- undefined, // parentOut
175
- shouldBuffer // ignored by AsyncVDOMBuilder
176
- );
177
- }
178
-
179
- if (callback) {
180
- finalOut.
181
- on("finish", function () {
182
- callback(null, finalOut.o_(), finalOut);
183
- }).
184
- once("error", callback);
185
- }
186
-
187
- globalData = finalOut.global;
188
-
189
- globalData.template = globalData.template || this;
190
-
191
- return safeRender(render, finalData, finalOut, shouldEnd);
192
- }
193
- });
194
- };
@@ -1,456 +0,0 @@
1
- "use strict";var EventEmitter = require("events-light");
2
- var RenderResult = require("../RenderResult");
3
- var attrsHelper = require("./helpers/attrs");
4
- var morphdom = require("./morphdom");
5
- var vdom = require("./vdom");
6
- var VElement = vdom.bz_;
7
- var VComment = vdom.bA_;
8
- var VDocumentFragment = vdom.bB_;
9
- var VText = vdom.bC_;
10
- var VComponent = vdom.bD_;
11
- var VFragment = vdom.bE_;
12
- var virtualizeHTML = vdom.bF_;
13
-
14
- var EVENT_UPDATE = "update";
15
- var EVENT_FINISH = "finish";
16
-
17
- function State(tree) {
18
- this.bG_ = new EventEmitter();
19
- this.bH_ = tree;
20
- this.bI_ = false;
21
- }
22
-
23
- function AsyncVDOMBuilder(globalData, parentNode, parentOut) {
24
- if (!parentNode) {
25
- parentNode = new VDocumentFragment();
26
- }
27
-
28
- var state;
29
-
30
- if (parentOut) {
31
- state = parentOut.A_;
32
- } else {
33
- state = new State(parentNode);
34
- }
35
-
36
- this.bJ_ = 1;
37
- this.bK_ = 0;
38
- this.bL_ = null;
39
- this.bM_ = parentOut;
40
-
41
- this.data = {};
42
- this.A_ = state;
43
- this.ac_ = parentNode;
44
- this.global = globalData || {};
45
- this.bN_ = [parentNode];
46
- this.bO_ = false;
47
- this.bP_ = undefined;
48
- this.b_ = null;
49
-
50
- this.aa_ = null;
51
- this.ab_ = null;
52
- this.bd_ = null;
53
- }
54
-
55
- var proto = AsyncVDOMBuilder.prototype = {
56
- bu_: true,
57
- C_: typeof document === "object" && document,
58
-
59
- bc: function (component, key, ownerComponent) {
60
- var vComponent = new VComponent(component, key, ownerComponent);
61
- return this.bQ_(vComponent, 0, true);
62
- },
63
-
64
- be_: function (component, key, ownerComponent) {
65
- var vComponent = new VComponent(component, key, ownerComponent, true);
66
- this.bQ_(vComponent, 0);
67
- },
68
-
69
- bQ_: function (child, childCount, pushToStack) {
70
- this.ac_.bR_(child);
71
- if (pushToStack === true) {
72
- this.bN_.push(child);
73
- this.ac_ = child;
74
- }
75
- return childCount === 0 ? this : child;
76
- },
77
-
78
- element: function (tagName, attrs, key, component, childCount, flags, props) {
79
- var element = new VElement(
80
- tagName,
81
- attrs,
82
- key,
83
- component,
84
- childCount,
85
- flags,
86
- props
87
- );
88
- return this.bQ_(element, childCount);
89
- },
90
-
91
- bn_: function (tagName, attrs, key, componentDef, props) {
92
- return this.element(
93
- tagName,
94
- attrsHelper(attrs),
95
- key,
96
- componentDef.t_,
97
- 0,
98
- 0,
99
- props
100
- );
101
- },
102
-
103
- n: function (node, component) {
104
- // NOTE: We do a shallow clone since we assume the node is being reused
105
- // and a node can only have one parent node.
106
- var clone = node.bS_();
107
- this.node(clone);
108
- clone._N_ = component;
109
-
110
- return this;
111
- },
112
-
113
- node: function (node) {
114
- this.ac_.bR_(node);
115
- return this;
116
- },
117
-
118
- text: function (text, ownerComponent) {
119
- var type = typeof text;
120
-
121
- if (type != "string") {
122
- if (text == null) {
123
- return;
124
- } else if (type === "object") {
125
- if (text.toHTML) {
126
- return this.h(text.toHTML(), ownerComponent);
127
- }
128
- }
129
-
130
- text = text.toString();
131
- }
132
-
133
- this.ac_.bR_(new VText(text, ownerComponent));
134
- return this;
135
- },
136
-
137
- comment: function (comment, ownerComponent) {
138
- return this.node(new VComment(comment, ownerComponent));
139
- },
140
-
141
- html: function (html, ownerComponent) {
142
- if (html != null) {
143
- var vdomNode = virtualizeHTML(html, ownerComponent);
144
- this.node(vdomNode);
145
- }
146
-
147
- return this;
148
- },
149
-
150
- beginElement: function (
151
- tagName,
152
- attrs,
153
- key,
154
- component,
155
- childCount,
156
- flags,
157
- props)
158
- {
159
- var element = new VElement(
160
- tagName,
161
- attrs,
162
- key,
163
- component,
164
- childCount,
165
- flags,
166
- props
167
- );
168
- this.bQ_(element, childCount, true);
169
- return this;
170
- },
171
-
172
- bl_: function (tagName, attrs, key, componentDef, props) {
173
- return this.beginElement(
174
- tagName,
175
- attrsHelper(attrs),
176
- key,
177
- componentDef.t_,
178
- 0,
179
- 0,
180
- props
181
- );
182
- },
183
-
184
- bf: function (key, component, preserve) {
185
- var fragment = new VFragment(key, component, preserve);
186
- this.bQ_(fragment, null, true);
187
- return this;
188
- },
189
-
190
- ef: function () {
191
- this.endElement();
192
- },
193
-
194
- endElement: function () {
195
- var stack = this.bN_;
196
- stack.pop();
197
- this.ac_ = stack[stack.length - 1];
198
- },
199
-
200
- end: function () {
201
- this.ac_ = undefined;
202
-
203
- var remaining = --this.bJ_;
204
- var parentOut = this.bM_;
205
-
206
- if (remaining === 0) {
207
- if (parentOut) {
208
- parentOut.bT_();
209
- } else {
210
- this.bU_();
211
- }
212
- } else if (remaining - this.bK_ === 0) {
213
- this.bV_();
214
- }
215
-
216
- return this;
217
- },
218
-
219
- bT_: function () {
220
- var remaining = --this.bJ_;
221
-
222
- if (remaining === 0) {
223
- var parentOut = this.bM_;
224
- if (parentOut) {
225
- parentOut.bT_();
226
- } else {
227
- this.bU_();
228
- }
229
- } else if (remaining - this.bK_ === 0) {
230
- this.bV_();
231
- }
232
- },
233
-
234
- bU_: function () {
235
- var state = this.A_;
236
- state.bI_ = true;
237
- state.bG_.emit(EVENT_FINISH, this.o_());
238
- },
239
-
240
- bV_: function () {
241
- var lastArray = this._last;
242
-
243
- var i = 0;
244
-
245
- function next() {
246
- if (i === lastArray.length) {
247
- return;
248
- }
249
- var lastCallback = lastArray[i++];
250
- lastCallback(next);
251
-
252
- if (!lastCallback.length) {
253
- next();
254
- }
255
- }
256
-
257
- next();
258
- },
259
-
260
- error: function (e) {
261
- try {
262
- this.emit("error", e);
263
- } finally {
264
- // If there is no listener for the error event then it will
265
- // throw a new Error here. In order to ensure that the async fragment
266
- // is still properly ended we need to put the end() in a `finally`
267
- // block
268
- this.end();
269
- }
270
-
271
- return this;
272
- },
273
-
274
- beginAsync: function (options) {
275
- if (this.bO_) {
276
- throw Error(
277
- "Tried to render async while in sync mode. Note: Client side await is not currently supported in re-renders (Issue: #942)."
278
- );
279
- }
280
-
281
- var state = this.A_;
282
-
283
- if (options) {
284
- if (options.last) {
285
- this.bK_++;
286
- }
287
- }
288
-
289
- this.bJ_++;
290
-
291
- var documentFragment = this.ac_.bW_();
292
- var asyncOut = new AsyncVDOMBuilder(this.global, documentFragment, this);
293
-
294
- state.bG_.emit("beginAsync", {
295
- out: asyncOut,
296
- parentOut: this
297
- });
298
-
299
- return asyncOut;
300
- },
301
-
302
- createOut: function () {
303
- return new AsyncVDOMBuilder(this.global);
304
- },
305
-
306
- flush: function () {
307
- var events = this.A_.bG_;
308
-
309
- if (events.listenerCount(EVENT_UPDATE)) {
310
- events.emit(EVENT_UPDATE, new RenderResult(this));
311
- }
312
- },
313
-
314
- ai_: function () {
315
- return this.A_.bH_;
316
- },
317
-
318
- o_: function () {
319
- return this.bX_ || (this.bX_ = new RenderResult(this));
320
- },
321
-
322
- on: function (event, callback) {
323
- var state = this.A_;
324
-
325
- if (event === EVENT_FINISH && state.bI_) {
326
- callback(this.o_());
327
- } else if (event === "last") {
328
- this.onLast(callback);
329
- } else {
330
- state.bG_.on(event, callback);
331
- }
332
-
333
- return this;
334
- },
335
-
336
- once: function (event, callback) {
337
- var state = this.A_;
338
-
339
- if (event === EVENT_FINISH && state.bI_) {
340
- callback(this.o_());
341
- } else if (event === "last") {
342
- this.onLast(callback);
343
- } else {
344
- state.bG_.once(event, callback);
345
- }
346
-
347
- return this;
348
- },
349
-
350
- emit: function (type, arg) {
351
- var events = this.A_.bG_;
352
- switch (arguments.length) {
353
- case 1:
354
- events.emit(type);
355
- break;
356
- case 2:
357
- events.emit(type, arg);
358
- break;
359
- default:
360
- events.emit.apply(events, arguments);
361
- break;
362
- }
363
- return this;
364
- },
365
-
366
- removeListener: function () {
367
- var events = this.A_.bG_;
368
- events.removeListener.apply(events, arguments);
369
- return this;
370
- },
371
-
372
- sync: function () {
373
- this.bO_ = true;
374
- },
375
-
376
- isSync: function () {
377
- return this.bO_;
378
- },
379
-
380
- onLast: function (callback) {
381
- var lastArray = this._last;
382
-
383
- if (lastArray === undefined) {
384
- this._last = [callback];
385
- } else {
386
- lastArray.push(callback);
387
- }
388
-
389
- return this;
390
- },
391
-
392
- ah_: function (host) {
393
- var node = this.bP_;
394
- if (!node) {
395
- var vdomTree = this.ai_();
396
-
397
- if (!host) host = this.C_;
398
- this.bP_ = node = vdomTree.bp_(host, null);
399
- morphdom(node, vdomTree, host, this.b_);
400
- }
401
- return node;
402
- },
403
-
404
- toString: function (host) {
405
- var docFragment = this.ah_(host);
406
- var html = "";
407
-
408
- var child = docFragment.firstChild;
409
- while (child) {
410
- var nextSibling = child.nextSibling;
411
- if (child.nodeType != 1) {
412
- var container = docFragment.ownerDocument.createElement("div");
413
- container.appendChild(child.cloneNode());
414
- html += container.innerHTML;
415
- } else {
416
- html += child.outerHTML;
417
- }
418
-
419
- child = nextSibling;
420
- }
421
-
422
- return html;
423
- },
424
-
425
- then: function (fn, fnErr) {
426
- // eslint-disable-next-line @typescript-eslint/no-this-alias
427
- var out = this;
428
- var promise = new Promise(function (resolve, reject) {
429
- out.on("error", reject).on(EVENT_FINISH, function (result) {
430
- resolve(result);
431
- });
432
- });
433
-
434
- return Promise.resolve(promise).then(fn, fnErr);
435
- },
436
-
437
- catch: function (fnErr) {
438
- return this.then(undefined, fnErr);
439
- },
440
-
441
- isVDOM: true,
442
-
443
- c: function (componentDef, key, customEvents) {
444
- this.aa_ = componentDef;
445
- this.ab_ = key;
446
- this.bd_ = customEvents;
447
- }
448
- };
449
-
450
- proto.e = proto.element;
451
- proto.be = proto.beginElement;
452
- proto.ee = proto.bm_ = proto.endElement;
453
- proto.t = proto.text;
454
- proto.h = proto.w = proto.write = proto.html;
455
-
456
- module.exports = AsyncVDOMBuilder;
@@ -1,24 +0,0 @@
1
- "use strict";var VNode = require("./VNode");
2
- var inherit = require("raptor-util/inherit");
3
-
4
- function VComment(value, ownerComponent) {
5
- this.bY_(-1 /* no children */, ownerComponent);
6
- this.bZ_ = value;
7
- }
8
-
9
- VComment.prototype = {
10
- c__: 8,
11
-
12
- bp_: function (host) {
13
- var nodeValue = this.bZ_;
14
- return (host.ownerDocument || host).createComment(nodeValue);
15
- },
16
-
17
- bS_: function () {
18
- return new VComment(this.bZ_);
19
- }
20
- };
21
-
22
- inherit(VComment, VNode);
23
-
24
- module.exports = VComment;
@@ -1,17 +0,0 @@
1
- "use strict";var inherit = require("raptor-util/inherit");
2
- var VNode = require("./VNode");
3
-
4
- function VComponent(component, key, ownerComponent, preserve) {
5
- this.bY_(null /* childCount */, ownerComponent);
6
- this.ca_ = key;
7
- this.t_ = component;
8
- this.ae_ = preserve;
9
- }
10
-
11
- VComponent.prototype = {
12
- c__: 2
13
- };
14
-
15
- inherit(VComponent, VNode);
16
-
17
- module.exports = VComponent;
@@ -1,34 +0,0 @@
1
- "use strict";var extend = require("raptor-util/extend");
2
- var inherit = require("raptor-util/inherit");
3
- var VNode = require("./VNode");
4
-
5
- function VDocumentFragmentClone(other) {
6
- extend(this, other);
7
- this.cb_ = null;
8
- this.cc_ = null;
9
- }
10
-
11
- function VDocumentFragment(out) {
12
- this.bY_(null /* childCount */);
13
- this.s_ = out;
14
- }
15
-
16
- VDocumentFragment.prototype = {
17
- c__: 11,
18
-
19
- cd_: true,
20
-
21
- bS_: function () {
22
- return new VDocumentFragmentClone(this);
23
- },
24
-
25
- bp_: function (host) {
26
- return (host.ownerDocument || host).createDocumentFragment();
27
- }
28
- };
29
-
30
- inherit(VDocumentFragment, VNode);
31
-
32
- VDocumentFragmentClone.prototype = VDocumentFragment.prototype;
33
-
34
- module.exports = VDocumentFragment;