marko 4.25.0 → 4.26.0

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 (317) hide show
  1. package/bin/markoc.js +18 -18
  2. package/dist/compiler/CompileContext.js +3 -8
  3. package/dist/core-tags/components/init-components-tag.js +1 -52
  4. package/dist/core-tags/components/package.json +1 -3
  5. package/dist/core-tags/components/preferred-script-location-tag.js +2 -2
  6. package/dist/core-tags/components/preserve-tag.js +1 -27
  7. package/dist/core-tags/core/await/AsyncValue.js +20 -20
  8. package/dist/core-tags/core/await/renderer.js +11 -12
  9. package/dist/core-tags/core/await/reorderer-renderer.js +11 -6
  10. package/dist/index.js +1 -39
  11. package/dist/node-require/index.js +11 -0
  12. package/dist/node_modules/@internal/components-beginComponent/index-browser.js +12 -0
  13. package/dist/{runtime/components/beginComponent.js → node_modules/@internal/components-beginComponent/index.js} +14 -14
  14. package/dist/node_modules/@internal/components-beginComponent/package.json +11 -0
  15. package/dist/{runtime/components/legacy/defineWidget-legacy-browser.js → node_modules/@internal/components-define-widget-legacy/index-browser.js} +47 -47
  16. package/dist/node_modules/@internal/components-define-widget-legacy/index.js +18 -0
  17. package/dist/node_modules/@internal/components-define-widget-legacy/package.json +11 -0
  18. package/dist/node_modules/@internal/components-endComponent/index.js +11 -0
  19. package/dist/node_modules/@internal/components-endComponent/package.json +11 -0
  20. package/dist/node_modules/@internal/components-entry/index-browser.js +9 -0
  21. package/dist/node_modules/@internal/components-entry/index.js +285 -0
  22. package/dist/node_modules/@internal/components-entry/package.json +11 -0
  23. package/dist/{runtime/components/legacy → node_modules/@internal/components-entry-legacy}/index-browser.js +14 -15
  24. package/dist/node_modules/@internal/components-entry-legacy/index.js +14 -0
  25. package/dist/node_modules/@internal/components-entry-legacy/package.json +11 -0
  26. package/dist/{runtime/components/init-components-browser.js → node_modules/@internal/components-registry/index-browser.js} +180 -79
  27. package/dist/node_modules/@internal/components-registry/index.js +34 -0
  28. package/dist/node_modules/@internal/components-registry/package.json +11 -0
  29. package/dist/{runtime/components/util-browser.js → node_modules/@internal/components-util/index-browser.js} +23 -24
  30. package/dist/{runtime/components/util.js → node_modules/@internal/components-util/index.js} +10 -12
  31. package/dist/node_modules/@internal/components-util/package.json +11 -0
  32. package/dist/node_modules/@internal/create-readable/index-browser.js +25 -0
  33. package/dist/node_modules/@internal/create-readable/index.js +52 -0
  34. package/dist/node_modules/@internal/create-readable/package.json +11 -0
  35. package/dist/node_modules/@internal/init-components-tag/index.js +52 -0
  36. package/dist/node_modules/@internal/init-components-tag/package.json +11 -0
  37. package/dist/{loader/index-default.js → node_modules/@internal/loader/index.js} +1 -1
  38. package/dist/node_modules/@internal/loader/package.json +11 -0
  39. package/dist/{core-tags/components/preserve-tag-browser.js → node_modules/@internal/preserve-tag/index-browser.js} +8 -8
  40. package/dist/node_modules/@internal/preserve-tag/index.js +27 -0
  41. package/dist/node_modules/@internal/preserve-tag/package.json +11 -0
  42. package/dist/node_modules/@internal/set-immediate/index-browser.js +17 -0
  43. package/dist/node_modules/@internal/set-immediate/index-worker.js +2 -0
  44. package/dist/node_modules/@internal/set-immediate/index.js +2 -0
  45. package/dist/node_modules/@internal/set-immediate/package.json +11 -0
  46. package/dist/runtime/RenderResult.js +24 -19
  47. package/dist/runtime/components/Component.js +154 -151
  48. package/dist/runtime/components/ComponentDef.js +28 -28
  49. package/dist/runtime/components/ComponentsContext.js +19 -19
  50. package/dist/runtime/components/GlobalComponentsContext.js +4 -4
  51. package/dist/runtime/components/KeySequence.js +3 -3
  52. package/dist/runtime/components/ServerComponent.js +13 -13
  53. package/dist/runtime/components/State.js +28 -28
  54. package/dist/runtime/components/attach-detach.js +9 -9
  55. package/dist/runtime/components/defineComponent.js +5 -5
  56. package/dist/runtime/components/dom-data.js +6 -6
  57. package/dist/runtime/components/event-delegation.js +15 -16
  58. package/dist/runtime/components/index.js +1 -285
  59. package/dist/runtime/components/legacy/browser.json +1 -1
  60. package/dist/runtime/components/legacy/defineComponent-legacy.js +1 -1
  61. package/dist/runtime/components/legacy/defineRenderer-legacy.js +18 -19
  62. package/dist/runtime/components/legacy/defineWidget-legacy.js +1 -18
  63. package/dist/runtime/components/legacy/dependencies/html.js +1 -1
  64. package/dist/runtime/components/legacy/dependencies/index.js +9 -9
  65. package/dist/runtime/components/legacy/helper-getWidgetFromOut.js +3 -3
  66. package/dist/runtime/components/legacy/index.js +1 -14
  67. package/dist/runtime/components/legacy/renderer-legacy.js +43 -43
  68. package/dist/runtime/components/registry.js +1 -34
  69. package/dist/runtime/components/renderer.js +38 -38
  70. package/dist/runtime/components/update-manager.js +10 -10
  71. package/dist/runtime/createOut.js +1 -1
  72. package/dist/runtime/dom-insert.js +6 -6
  73. package/dist/runtime/helpers/_change-case.js +2 -2
  74. package/dist/runtime/helpers/assign.js +3 -2
  75. package/dist/runtime/helpers/dynamic-tag.js +14 -16
  76. package/dist/runtime/helpers/load-template.js +1 -1
  77. package/dist/runtime/helpers/merge.js +3 -1
  78. package/dist/runtime/helpers/style-value.js +2 -2
  79. package/dist/runtime/html/AsyncStream.js +61 -52
  80. package/dist/runtime/html/BufferedWriter.js +5 -1
  81. package/dist/runtime/html/StringWriter.js +7 -3
  82. package/dist/runtime/html/helpers/_dynamic-attr.js +2 -2
  83. package/dist/runtime/html/helpers/attr.js +4 -4
  84. package/dist/runtime/html/helpers/attrs.js +3 -3
  85. package/dist/runtime/html/helpers/data-marko.js +4 -6
  86. package/dist/runtime/html/helpers/escape-quotes.js +2 -2
  87. package/dist/runtime/html/helpers/escape-xml.js +1 -1
  88. package/dist/runtime/html/helpers/props-script.js +1 -1
  89. package/dist/runtime/html/index.js +15 -12
  90. package/dist/runtime/renderable.js +5 -5
  91. package/dist/runtime/vdom/AsyncVDOMBuilder.js +102 -103
  92. package/dist/runtime/vdom/VComment.js +7 -7
  93. package/dist/runtime/vdom/VComponent.js +5 -5
  94. package/dist/runtime/vdom/VDocumentFragment.js +8 -8
  95. package/dist/runtime/vdom/VElement.js +55 -54
  96. package/dist/runtime/vdom/VFragment.js +9 -9
  97. package/dist/runtime/vdom/VNode.js +30 -30
  98. package/dist/runtime/vdom/VText.js +7 -7
  99. package/dist/runtime/vdom/helpers/v-element.js +1 -1
  100. package/dist/runtime/vdom/helpers/v-text.js +1 -1
  101. package/dist/runtime/vdom/index.js +12 -22
  102. package/dist/runtime/vdom/morphdom/fragment.js +5 -5
  103. package/dist/runtime/vdom/morphdom/helpers.js +3 -3
  104. package/dist/runtime/vdom/morphdom/index.js +72 -68
  105. package/dist/runtime/vdom/morphdom/specialElHandlers.js +8 -8
  106. package/dist/runtime/vdom/preserve-attrs.js +1 -1
  107. package/dist/runtime/vdom/vdom.js +19 -21
  108. package/docs/body-content.md +2 -2
  109. package/docs/class-components.md +3 -3
  110. package/docs/express.md +1 -1
  111. package/docs/lasso.md +3 -6
  112. package/docs/marko-v4.md +5 -5
  113. package/docs/redux.md +1 -1
  114. package/docs/server-side-rendering.md +2 -2
  115. package/docs/why-is-marko-fast.md +2 -10
  116. package/package.json +1 -1
  117. package/src/browser-refresh.js +2 -2
  118. package/src/compiler/CodeWriter.js +1 -3
  119. package/src/compiler/CompileContext.js +3 -8
  120. package/src/compiler/Compiler.js +4 -4
  121. package/src/compiler/HtmlJsParser.js +1 -1
  122. package/src/compiler/Migrator.js +1 -1
  123. package/src/compiler/Parser.js +3 -3
  124. package/src/compiler/ast/CustomTag.js +9 -11
  125. package/src/compiler/ast/HtmlAttribute/html/generateCode.js +2 -2
  126. package/src/compiler/ast/HtmlAttribute/index.js +1 -1
  127. package/src/compiler/ast/HtmlElement/vdom/HtmlElementVDOM.js +1 -1
  128. package/src/compiler/ast/HtmlElement/vdom/generateCode.js +1 -1
  129. package/src/compiler/ast/TemplateRoot.js +1 -1
  130. package/src/compiler/ast/Text/html/generateCode.js +3 -3
  131. package/src/compiler/ast/Text/vdom/generateCode.js +1 -1
  132. package/src/compiler/index.js +4 -4
  133. package/src/compiler/modules.js +4 -4
  134. package/src/compiler/util/finger-print.js +1 -1
  135. package/src/compiler/util/parseExpression.js +1 -1
  136. package/src/compiler/util/parseStatement.js +1 -1
  137. package/src/compiler/util/removeDashes.js +1 -1
  138. package/src/compiler/util/safeVarName.js +1 -1
  139. package/src/compiler/util/tokenizer.js +1 -1
  140. package/src/core-tags/cache/cached-fragment-tag-transformer.js +1 -1
  141. package/src/core-tags/cache/cached-fragment-tag.js +4 -4
  142. package/src/core-tags/cache/default-cache-manager.js +3 -3
  143. package/src/core-tags/components/TransformHelper/ComponentArgsCompiler.js +1 -1
  144. package/src/core-tags/components/TransformHelper/convertToComponent.js +1 -1
  145. package/src/core-tags/components/TransformHelper/handleComponentPreserveAttrs.js +1 -1
  146. package/src/core-tags/components/init-components-tag.js +1 -54
  147. package/src/core-tags/components/package.json +1 -3
  148. package/src/core-tags/components/preferred-script-location-tag.js +1 -1
  149. package/src/core-tags/components/preserve-tag.js +1 -27
  150. package/src/core-tags/components/util/getTransformHelper.js +1 -1
  151. package/src/core-tags/core/await/AsyncValue.js +3 -3
  152. package/src/core-tags/core/await/noop-render.js +1 -1
  153. package/src/core-tags/core/await/renderer.js +8 -7
  154. package/src/core-tags/core/await/reorderer-renderer.js +35 -14
  155. package/src/core-tags/core/await/transformer.js +1 -1
  156. package/src/core-tags/core/core-transformer.js +2 -2
  157. package/src/core-tags/migrate/all-tags/index.js +1 -1
  158. package/src/core-tags/migrate/all-templates/index.js +1 -1
  159. package/src/core-tags/migrate/include-tag.js +3 -2
  160. package/src/core-tags/migrate/util/parseFor.js +3 -2
  161. package/src/core-tags/migrate/util/printJS.js +1 -1
  162. package/src/defineRenderer.js +1 -1
  163. package/src/express.js +1 -1
  164. package/src/hot-reload.js +5 -5
  165. package/src/index.js +1 -41
  166. package/src/legacy-helpers/notEmpty.js +1 -1
  167. package/src/node-require/index.js +12 -1
  168. package/src/{runtime/components/beginComponent-browser.js → node_modules/@internal/components-beginComponent/index-browser.js} +1 -1
  169. package/src/{runtime/components/beginComponent.js → node_modules/@internal/components-beginComponent/index.js} +2 -2
  170. package/src/node_modules/@internal/components-beginComponent/package.json +11 -0
  171. package/src/{runtime/components/legacy/defineWidget-legacy-browser.js → node_modules/@internal/components-define-widget-legacy/index-browser.js} +21 -23
  172. package/src/node_modules/@internal/components-define-widget-legacy/index.js +18 -0
  173. package/src/node_modules/@internal/components-define-widget-legacy/package.json +11 -0
  174. package/src/{runtime/components/endComponent.js → node_modules/@internal/components-endComponent/index.js} +1 -1
  175. package/src/node_modules/@internal/components-endComponent/package.json +11 -0
  176. package/src/node_modules/@internal/components-entry/index-browser.js +9 -0
  177. package/src/node_modules/@internal/components-entry/index.js +301 -0
  178. package/src/node_modules/@internal/components-entry/package.json +11 -0
  179. package/src/node_modules/@internal/components-entry-legacy/index-browser.js +74 -0
  180. package/src/node_modules/@internal/components-entry-legacy/index.js +15 -0
  181. package/src/node_modules/@internal/components-entry-legacy/package.json +11 -0
  182. package/src/{runtime/components/init-components-browser.js → node_modules/@internal/components-registry/index-browser.js} +240 -75
  183. package/src/node_modules/@internal/components-registry/index.js +44 -0
  184. package/src/node_modules/@internal/components-registry/package.json +11 -0
  185. package/src/{runtime/components/util-browser.js → node_modules/@internal/components-util/index-browser.js} +11 -10
  186. package/src/{runtime/components/util.js → node_modules/@internal/components-util/index.js} +0 -2
  187. package/src/node_modules/@internal/components-util/package.json +11 -0
  188. package/src/node_modules/@internal/create-readable/index-browser.js +30 -0
  189. package/src/node_modules/@internal/create-readable/index.js +57 -0
  190. package/src/node_modules/@internal/create-readable/package.json +11 -0
  191. package/src/node_modules/@internal/init-components-tag/index.js +54 -0
  192. package/src/node_modules/@internal/init-components-tag/package.json +11 -0
  193. package/src/{loader/index-default.js → node_modules/@internal/loader/index.js} +2 -2
  194. package/src/node_modules/@internal/loader/package.json +11 -0
  195. package/src/node_modules/@internal/preserve-tag/index.js +27 -0
  196. package/src/node_modules/@internal/preserve-tag/package.json +11 -0
  197. package/src/node_modules/@internal/set-immediate/index-browser.js +17 -0
  198. package/src/node_modules/@internal/set-immediate/index-worker.js +2 -0
  199. package/src/node_modules/@internal/set-immediate/index.js +2 -0
  200. package/src/node_modules/@internal/set-immediate/package.json +11 -0
  201. package/src/runtime/RenderResult.js +20 -18
  202. package/src/runtime/components/Component.js +44 -41
  203. package/src/runtime/components/ComponentDef.js +9 -9
  204. package/src/runtime/components/ComponentsContext.js +4 -5
  205. package/src/runtime/components/GlobalComponentsContext.js +2 -1
  206. package/src/runtime/components/KeySequence.js +1 -1
  207. package/src/runtime/components/State.js +6 -6
  208. package/src/runtime/components/attach-detach.js +4 -4
  209. package/src/runtime/components/defineComponent.js +1 -1
  210. package/src/runtime/components/event-delegation.js +10 -10
  211. package/src/runtime/components/index.js +1 -301
  212. package/src/runtime/components/jquery.js +2 -2
  213. package/src/runtime/components/legacy/browser.json +1 -1
  214. package/src/runtime/components/legacy/defineRenderer-legacy.js +5 -6
  215. package/src/runtime/components/legacy/defineWidget-legacy.js +1 -18
  216. package/src/runtime/components/legacy/dependencies/html.js +1 -1
  217. package/src/runtime/components/legacy/dependencies/index.js +3 -3
  218. package/src/runtime/components/legacy/helper-getWidgetFromOut.js +3 -3
  219. package/src/runtime/components/legacy/index.js +1 -15
  220. package/src/runtime/components/legacy/renderer-legacy.js +7 -7
  221. package/src/runtime/components/ready.js +2 -2
  222. package/src/runtime/components/registry.js +1 -44
  223. package/src/runtime/components/renderer.js +4 -4
  224. package/src/runtime/components/update-manager.js +1 -1
  225. package/src/runtime/dom-insert.js +8 -8
  226. package/src/runtime/helpers/_weak-map.js +2 -2
  227. package/src/runtime/helpers/assign.js +3 -1
  228. package/src/runtime/helpers/bind-component.js +2 -2
  229. package/src/runtime/helpers/dynamic-tag.js +2 -4
  230. package/src/runtime/helpers/for-in.js +1 -1
  231. package/src/runtime/helpers/load-nested-tag.js +1 -1
  232. package/src/runtime/helpers/load-template.js +1 -1
  233. package/src/runtime/helpers/merge.js +3 -1
  234. package/src/runtime/helpers/noop.js +1 -1
  235. package/src/runtime/helpers/style-value.js +1 -1
  236. package/src/runtime/helpers/to-string.js +1 -1
  237. package/src/runtime/html/AsyncStream.js +90 -76
  238. package/src/runtime/html/BufferedWriter.js +6 -2
  239. package/src/runtime/html/StringWriter.js +15 -9
  240. package/src/runtime/html/helpers/attrs.js +3 -3
  241. package/src/runtime/html/helpers/data-marko.js +0 -2
  242. package/src/runtime/html/helpers/escape-quotes.js +1 -1
  243. package/src/runtime/html/helpers/escape-xml.js +1 -1
  244. package/src/runtime/html/index.js +23 -13
  245. package/src/runtime/queueMicrotask.js +2 -2
  246. package/src/runtime/renderable.js +9 -9
  247. package/src/runtime/vdom/AsyncVDOMBuilder.js +46 -51
  248. package/src/runtime/vdom/VComment.js +3 -3
  249. package/src/runtime/vdom/VDocumentFragment.js +3 -3
  250. package/src/runtime/vdom/VElement.js +17 -13
  251. package/src/runtime/vdom/VFragment.js +1 -1
  252. package/src/runtime/vdom/VNode.js +2 -2
  253. package/src/runtime/vdom/VText.js +3 -3
  254. package/src/runtime/vdom/helpers/attrs.js +1 -1
  255. package/src/runtime/vdom/helpers/const.js +2 -2
  256. package/src/runtime/vdom/helpers/v-element.js +1 -1
  257. package/src/runtime/vdom/helpers/v-text.js +1 -1
  258. package/src/runtime/vdom/index.js +21 -23
  259. package/src/runtime/vdom/morphdom/fragment.js +8 -7
  260. package/src/runtime/vdom/morphdom/index.js +19 -9
  261. package/src/runtime/vdom/morphdom/specialElHandlers.js +6 -6
  262. package/src/runtime/vdom/parse-html.js +4 -4
  263. package/src/runtime/vdom/preserve-attrs.js +1 -1
  264. package/src/runtime/vdom/vdom.js +5 -7
  265. package/src/taglib/taglib-finder/index.js +1 -1
  266. package/src/taglib/taglib-loader/Tag.js +5 -5
  267. package/src/taglib/taglib-loader/Taglib.js +2 -2
  268. package/src/taglib/taglib-loader/json-file-reader.js +1 -1
  269. package/src/taglib/taglib-loader/loadAttributeFromProps.js +1 -1
  270. package/src/taglib/taglib-loader/loadTagFromProps.js +5 -6
  271. package/src/taglib/taglib-loader/tag-def-from-code.js +2 -1
  272. package/src/taglib/taglib-lookup/TaglibLookup.js +2 -2
  273. package/src/taglib/taglib-lookup/index.js +1 -1
  274. package/dist/core-tags/core/await/client-reorder-browser.js +0 -1
  275. package/dist/core-tags/core/await/client-reorder-runtime.min.js +0 -5
  276. package/dist/core-tags/core/await/client-reorder.js +0 -11
  277. package/dist/core-tags/core/await/package.json +0 -6
  278. package/dist/index-browser.js +0 -4
  279. package/dist/loader/index.js +0 -7
  280. package/dist/loader/package.json +0 -5
  281. package/dist/node-require/index-browser.js +0 -1
  282. package/dist/package.json +0 -5
  283. package/dist/runtime/components/beginComponent-browser.js +0 -12
  284. package/dist/runtime/components/endComponent.js +0 -11
  285. package/dist/runtime/components/index-browser.js +0 -14
  286. package/dist/runtime/components/init-components.js +0 -1
  287. package/dist/runtime/components/legacy/package.json +0 -6
  288. package/dist/runtime/components/package.json +0 -12
  289. package/dist/runtime/components/registry-browser.js +0 -73
  290. package/dist/runtime/html/Template.js +0 -63
  291. package/dist/runtime/package.json +0 -5
  292. package/dist/runtime/setImmediate.js +0 -19
  293. package/src/core-tags/core/await/client-reorder-browser.js +0 -1
  294. package/src/core-tags/core/await/client-reorder-runtime.min.js +0 -1
  295. package/src/core-tags/core/await/client-reorder.js +0 -14
  296. package/src/core-tags/core/await/package.json +0 -6
  297. package/src/index-browser.js +0 -3
  298. package/src/loader/index.js +0 -7
  299. package/src/loader/package.json +0 -5
  300. package/src/node-require/index-browser.js +0 -1
  301. package/src/package.json +0 -5
  302. package/src/runtime/components/index-browser.js +0 -15
  303. package/src/runtime/components/init-components.js +0 -1
  304. package/src/runtime/components/legacy/index-browser.js +0 -73
  305. package/src/runtime/components/legacy/package.json +0 -6
  306. package/src/runtime/components/package.json +0 -12
  307. package/src/runtime/components/registry-browser.js +0 -103
  308. package/src/runtime/html/Template.js +0 -62
  309. package/src/runtime/package.json +0 -5
  310. package/src/runtime/setImmediate.js +0 -21
  311. /package/dist/{runtime/components/endComponent-browser.js → node_modules/@internal/components-endComponent/index-browser.js} +0 -0
  312. /package/dist/{core-tags/components/init-components-tag-browser.js → node_modules/@internal/init-components-tag/index-browser.js} +0 -0
  313. /package/dist/{loader → node_modules/@internal/loader}/index-browser.js +0 -0
  314. /package/src/{runtime/components/endComponent-browser.js → node_modules/@internal/components-endComponent/index-browser.js} +0 -0
  315. /package/src/{core-tags/components/init-components-tag-browser.js → node_modules/@internal/init-components-tag/index-browser.js} +0 -0
  316. /package/src/{loader → node_modules/@internal/loader}/index-browser.js +0 -0
  317. /package/src/{core-tags/components/preserve-tag-browser.js → node_modules/@internal/preserve-tag/index-browser.js} +0 -0
@@ -0,0 +1,11 @@
1
+ {
2
+ "main": "./index.js",
3
+ "browser": "./index-browser.js",
4
+ "exports": {
5
+ ".": {
6
+ "worker": "./index.js",
7
+ "browser": "./index-browser.js",
8
+ "default": "./index.js"
9
+ }
10
+ }
11
+ }
@@ -1,27 +1,114 @@
1
- "use strict";
2
-
3
1
  var complain;
4
2
  var warp10Finalize = require("warp10/finalize");
5
- var eventDelegation = require("./event-delegation");
6
- var win = window;
7
- var defaultDocument = document;
8
- var createFragmentNode = require("../vdom/morphdom/fragment").au_;
9
- var componentsUtil = require("./util-browser");
10
- var componentLookup = componentsUtil.I_;
11
- var addComponentRootToKeyedElements = componentsUtil.av_;
12
- var ComponentDef = require("./ComponentDef");
13
- var registry = require("./registry");
14
- var domData = require("./dom-data");
15
- var keyedElementsByComponentId = domData.L_;
16
- var componentsByDOMNode = domData.K_;
3
+ var queueMicrotask = require("../../../runtime/queueMicrotask");
4
+ var defineComponent = require("../../../runtime/components/defineComponent");
5
+ var eventDelegation = require("../../../runtime/components/event-delegation");
6
+ var createFragmentNode = require("../../../runtime/vdom/morphdom/fragment")._m_;
7
+ var ComponentDef = require("../../../runtime/components/ComponentDef");
8
+ var domData = require("../../../runtime/components/dom-data");
9
+ var componentsUtil = require("@internal/components-util");
10
+ var componentLookup = componentsUtil._n_;
11
+ var addComponentRootToKeyedElements = componentsUtil._o_;
12
+ var keyedElementsByComponentId = domData._p_;
13
+ var componentsByDOMNode = domData._q_;
17
14
  var serverComponentRootNodes = {};
18
15
  var serverRenderedMeta = {};
16
+ var win = window;
19
17
 
20
18
  var DEFAULT_RUNTIME_ID = "M";
21
19
  var FLAG_WILL_RERENDER_IN_BROWSER = 1;
22
20
  // var FLAG_HAS_RENDER_BODY = 2;
23
- // var FLAG_IS_LEGACY = 4;
24
- // var FLAG_OLD_HYDRATE_NO_CREATE = 8;
21
+
22
+ var registered = {};
23
+ var loaded = {};
24
+ var componentTypes = {};
25
+ var deferredDefs;
26
+ var pendingDefs;
27
+
28
+ function register(type, def) {
29
+ var pendingForType;
30
+ if (pendingDefs) {
31
+ pendingForType = pendingDefs[type];
32
+ }
33
+ registered[type] = def;
34
+ delete loaded[type];
35
+ delete componentTypes[type];
36
+
37
+ if (pendingForType) {
38
+ delete pendingDefs[type];
39
+ queueMicrotask(function () {
40
+ pendingForType.forEach(function (args) {
41
+ tryHydrateComponent(args[0], args[1], args[2], args[3])();
42
+ });
43
+ });
44
+ }
45
+
46
+ return type;
47
+ }
48
+
49
+ function addPendingDef(def, type, meta, host, runtimeId) {
50
+ if (!pendingDefs) {
51
+ pendingDefs = {};
52
+
53
+ // eslint-disable-next-line no-constant-condition
54
+ }
55
+ (pendingDefs[type] = pendingDefs[type] || []).push([def, meta, host, runtimeId]);
56
+ }
57
+
58
+ function load(typeName, isLegacy) {
59
+ var target = loaded[typeName];
60
+ if (!target) {
61
+ target = registered[typeName];
62
+
63
+ if (target) {
64
+ target = target();
65
+ } else if (isLegacy) {
66
+ target = exports._j_.load(typeName);
67
+ } else {
68
+ target = loader(typeName);
69
+ // eslint-disable-next-line no-constant-condition
70
+ }
71
+
72
+ if (!target) {
73
+ throw Error("Component not found: " + typeName);
74
+ }
75
+
76
+ loaded[typeName] = target;
77
+ }
78
+
79
+ return target;
80
+ }
81
+
82
+ function getComponentClass(typeName, isLegacy) {
83
+ var ComponentClass = componentTypes[typeName];
84
+
85
+ if (ComponentClass) {
86
+ return ComponentClass;
87
+ }
88
+
89
+ ComponentClass = load(typeName, isLegacy);
90
+
91
+ ComponentClass = ComponentClass.Component || ComponentClass;
92
+
93
+ if (!ComponentClass.A_) {
94
+ ComponentClass = defineComponent(ComponentClass, ComponentClass.renderer);
95
+ }
96
+
97
+ // Make the component "type" accessible on each component instance
98
+ ComponentClass.prototype.e_ = typeName;
99
+
100
+ // eslint-disable-next-line no-constant-condition
101
+
102
+
103
+ componentTypes[typeName] = ComponentClass;
104
+
105
+ return ComponentClass;
106
+ }
107
+
108
+ function createComponent(typeName, id, isLegacy) {
109
+ var ComponentClass = getComponentClass(typeName, isLegacy);
110
+ return new ComponentClass(id);
111
+ }
25
112
 
26
113
  function indexServerComponentBoundaries(node, runtimeId, stack) {
27
114
  var componentId;
@@ -63,7 +150,7 @@ function indexServerComponentBoundaries(node, runtimeId, stack) {
63
150
  ownerId = parts[1];
64
151
  componentId = parts[0];
65
152
  if (ownerComponent = componentLookup[ownerId]) {
66
- keyedElements = ownerComponent.q_;
153
+ keyedElements = ownerComponent.N_;
67
154
  } else {
68
155
  keyedElements = keyedElementsByComponentId[ownerId] || (keyedElementsByComponentId[ownerId] = {});
69
156
  }
@@ -79,13 +166,13 @@ function indexServerComponentBoundaries(node, runtimeId, stack) {
79
166
  } else if (node.nodeType === 1) {
80
167
  // HTML element node
81
168
  var markoKey = node.getAttribute("data-marko-key");
82
- var markoProps = componentsUtil.an_(node);
169
+ var markoProps = componentsUtil._r_(node);
83
170
  if (markoKey) {
84
171
  var separatorIndex = markoKey.indexOf(" ");
85
172
  ownerId = markoKey.substring(separatorIndex + 1);
86
173
  markoKey = markoKey.substring(0, separatorIndex);
87
174
  if (ownerComponent = componentLookup[ownerId]) {
88
- keyedElements = ownerComponent.q_;
175
+ keyedElements = ownerComponent.N_;
89
176
  } else {
90
177
  keyedElements = keyedElementsByComponentId[ownerId] || (keyedElementsByComponentId[ownerId] = {});
91
178
  }
@@ -94,7 +181,7 @@ function indexServerComponentBoundaries(node, runtimeId, stack) {
94
181
  if (markoProps) {
95
182
  Object.keys(markoProps).forEach(function (key) {
96
183
  if (key.slice(0, 2) === "on") {
97
- eventDelegation._I_(key.slice(2));
184
+ eventDelegation._s_(key.slice(2));
98
185
  }
99
186
  });
100
187
  }
@@ -142,23 +229,23 @@ function addDOMEventListeners(component, el, eventType, targetMethodName, isOnce
142
229
  handles.push(removeListener);
143
230
  }
144
231
 
145
- function initComponent(componentDef, doc) {
146
- var component = componentDef.n_;
232
+ function initComponent(componentDef, host) {
233
+ var component = componentDef.v_;
147
234
 
148
- if (!component || !component._d_) {
235
+ if (!component || !component.A_) {
149
236
  return; // legacy
150
237
  }
151
238
 
152
- component.O_();
153
- component._c_ = doc;
239
+ component._t_();
240
+ component.E_ = host;
154
241
 
155
- var isExisting = componentDef._L_;
242
+ var isExisting = componentDef._u_;
156
243
 
157
244
  if (isExisting) {
158
- component._h_();
245
+ component._v_();
159
246
  }
160
247
 
161
- var domEvents = componentDef._K_;
248
+ var domEvents = componentDef._d_;
162
249
  if (domEvents) {
163
250
  var eventListenerHandles = [];
164
251
 
@@ -167,7 +254,7 @@ function initComponent(componentDef, doc) {
167
254
 
168
255
  var eventType = domEventArgs[0];
169
256
  var targetMethodName = domEventArgs[1];
170
- var eventEl = component.q_[domEventArgs[2]];
257
+ var eventEl = component.N_[domEventArgs[2]];
171
258
  var isOnce = domEventArgs[3];
172
259
  var extraArgs = domEventArgs[4];
173
260
 
@@ -175,15 +262,15 @@ function initComponent(componentDef, doc) {
175
262
  });
176
263
 
177
264
  if (eventListenerHandles.length) {
178
- component.S_ = eventListenerHandles;
265
+ component._w_ = eventListenerHandles;
179
266
  }
180
267
  }
181
268
 
182
- if (component.X_) {
183
- component.N_();
269
+ if (component._x_) {
270
+ component._y_();
184
271
  } else {
185
- component.X_ = true;
186
- component._E_();
272
+ component._x_ = true;
273
+ component._z_();
187
274
  }
188
275
  }
189
276
 
@@ -195,12 +282,11 @@ function initComponent(componentDef, doc) {
195
282
  * in the components context (nested components are initialized before ancestor components).
196
283
  * @param {Array<marko-components/lib/ComponentDef>} componentDefs An array of ComponentDef instances
197
284
  */
198
- function initClientRendered(componentDefs, doc) {
285
+ function initClientRendered(componentDefs, host) {
286
+ if (!host) host = document;
199
287
  // Ensure that event handlers to handle delegating events are
200
288
  // always attached before initializing any components
201
- eventDelegation.ao_(doc);
202
-
203
- doc = doc || defaultDocument;
289
+ eventDelegation._A_(host);
204
290
  var len = componentDefs.length;
205
291
  var componentDef;
206
292
  var i;
@@ -212,7 +298,7 @@ function initClientRendered(componentDefs, doc) {
212
298
 
213
299
  for (i = len; i--;) {
214
300
  componentDef = componentDefs[i];
215
- initComponent(componentDef, doc);
301
+ initComponent(componentDef, host);
216
302
  }
217
303
  }
218
304
 
@@ -220,7 +306,7 @@ function initClientRendered(componentDefs, doc) {
220
306
  * This method initializes all components that were rendered on the server by iterating over all
221
307
  * of the component IDs.
222
308
  */
223
- function initServerRendered(renderedComponents, doc) {
309
+ function initServerRendered(renderedComponents, host) {
224
310
  var type = typeof renderedComponents;
225
311
  var globalKey = "$";
226
312
  var runtimeId;
@@ -235,11 +321,17 @@ function initServerRendered(renderedComponents, doc) {
235
321
 
236
322
  renderedComponents = win[globalKey];
237
323
 
324
+ // eslint-disable-next-line no-constant-condition
325
+
326
+
238
327
  var fakeArray = win[globalKey] = {
239
328
  r: runtimeId,
240
329
  concat: initServerRendered
241
330
  };
242
331
 
332
+ // eslint-disable-next-line no-constant-condition
333
+
334
+
243
335
  if (renderedComponents && renderedComponents.forEach) {
244
336
  renderedComponents.forEach(function (renderedComponent) {
245
337
  fakeArray.concat(renderedComponent);
@@ -254,10 +346,10 @@ function initServerRendered(renderedComponents, doc) {
254
346
 
255
347
  if (isFromSerializedGlobals) {
256
348
  runtimeId = this.r;
257
- doc = defaultDocument;
349
+ host = document;
258
350
  } else {
259
351
  runtimeId = renderedComponents.r || DEFAULT_RUNTIME_ID;
260
- doc = doc || defaultDocument;
352
+ if (!host) host = document;
261
353
 
262
354
  // eslint-disable-next-line no-constant-condition
263
355
  }
@@ -283,79 +375,84 @@ function initServerRendered(renderedComponents, doc) {
283
375
 
284
376
  // Ensure that event handlers to handle delegating events are
285
377
  // always attached before initializing any components
286
- indexServerComponentBoundaries(doc, runtimeId);
287
- eventDelegation.ao_(doc);
378
+ indexServerComponentBoundaries(host, runtimeId);
379
+ eventDelegation._A_(host);
288
380
 
289
381
  if (renderedComponents.g) {
290
- meta.aw_ = renderedComponents.g;
382
+ meta._B_ = renderedComponents.g;
291
383
  }
292
384
 
293
385
  if (renderedComponents.t) {
294
- meta.ax_ = meta.ax_ ? meta.ax_.concat(renderedComponents.t) : renderedComponents.t;
386
+ meta._C_ = meta._C_ ? meta._C_.concat(renderedComponents.t) : renderedComponents.t;
295
387
  }
296
388
 
297
389
  // hydrate components top down (leaf nodes last)
298
390
  // and return an array of functions to mount these components
299
- var deferredDefs;
300
391
  (renderedComponents.w || []).map(function (componentDef) {
301
- componentDef = ComponentDef._S_(componentDef, meta.ax_, meta.aw_, registry);
302
-
303
- var mount = hydrateComponentAndGetMount(componentDef, doc);
304
-
305
- if (!mount) {
306
- // hydrateComponentAndGetMount will return false if there is not rootNode
307
- // for the component. If this is the case, we'll wait until the
308
- // DOM has fully loaded to attempt to init the component again.
309
- if (deferredDefs) {
310
- deferredDefs.push(componentDef);
311
- } else {
312
- deferredDefs = [componentDef];
313
- doc.addEventListener("DOMContentLoaded", function () {
314
- indexServerComponentBoundaries(doc, runtimeId);
315
- deferredDefs.map(function (componentDef) {
316
- return hydrateComponentAndGetMount(componentDef, doc);
317
- }).reverse().forEach(tryInvoke);
318
- });
319
- }
320
- }
392
+ var typeName = meta._C_[componentDef[1]];
321
393
 
322
- return mount;
394
+ return registered[typeName] || document.readyState === "complete" ? tryHydrateComponent(componentDef, meta, host, runtimeId) : addPendingDef(componentDef, typeName, meta, host, runtimeId);
323
395
  }).reverse().forEach(tryInvoke);
324
396
 
325
397
  return this;
326
398
  }
327
399
 
328
- function hydrateComponentAndGetMount(componentDef, doc) {
400
+ function tryHydrateComponent(rawDef, meta, host, runtimeId) {
401
+ var componentDef = ComponentDef._D_(rawDef, meta._C_, meta._B_, exports);
402
+ var mount = hydrateComponentAndGetMount(componentDef, host);
403
+
404
+ if (!mount) {
405
+ // hydrateComponentAndGetMount will return false if there is not rootNode
406
+ // for the component. If this is the case, we'll wait until the
407
+ // DOM has fully loaded to attempt to init the component again.
408
+ if (deferredDefs) {
409
+ deferredDefs.push(componentDef);
410
+ } else {
411
+ deferredDefs = [componentDef];
412
+ document.addEventListener("DOMContentLoaded", function () {
413
+ indexServerComponentBoundaries(host, runtimeId);
414
+ deferredDefs.map(function (componentDef) {
415
+ return hydrateComponentAndGetMount(componentDef, host);
416
+ }).reverse().forEach(tryInvoke);
417
+ deferredDefs = undefined;
418
+ });
419
+ }
420
+ }
421
+
422
+ return mount;
423
+ }
424
+
425
+ function hydrateComponentAndGetMount(componentDef, host) {
329
426
  var componentId = componentDef.id;
330
- var component = componentDef.n_;
427
+ var component = componentDef.v_;
331
428
  var rootNode = serverComponentRootNodes[componentId];
332
429
  var renderResult;
333
430
 
334
431
  if (rootNode) {
335
432
  delete serverComponentRootNodes[componentId];
336
433
 
337
- component.Q_ = rootNode;
434
+ component._E_ = rootNode;
338
435
  componentsByDOMNode.set(rootNode, component);
339
436
 
340
- if (componentDef._N_ & FLAG_WILL_RERENDER_IN_BROWSER) {
341
- component._c_ = doc;
342
- renderResult = component._v_(component.W_, true);
437
+ if (componentDef.x_ & FLAG_WILL_RERENDER_IN_BROWSER) {
438
+ component.E_ = host;
439
+ renderResult = component._F_(component.R_, true);
343
440
  trackComponent(componentDef);
344
441
  return function mount() {
345
- renderResult.afterInsert(doc);
442
+ renderResult.afterInsert(host);
346
443
  };
347
444
  } else {
348
445
  trackComponent(componentDef);
349
446
  }
350
447
 
351
448
  return function mount() {
352
- initComponent(componentDef, doc);
449
+ initComponent(componentDef, host);
353
450
  };
354
451
  }
355
452
  }
356
453
 
357
454
  function trackComponent(componentDef) {
358
- var component = componentDef.n_;
455
+ var component = componentDef.v_;
359
456
  if (component) {
360
457
  componentLookup[component.id] = component;
361
458
  }
@@ -365,5 +462,9 @@ function tryInvoke(fn) {
365
462
  if (fn) fn();
366
463
  }
367
464
 
368
- exports._W_ = initClientRendered;
369
- exports.aq_ = initServerRendered;
465
+ exports.r = register;
466
+ exports._G_ = createComponent;
467
+ exports._H_ = getComponentClass;
468
+ exports.W_ = win.$initComponents = initServerRendered;
469
+
470
+ require("../../../runtime/components/ComponentsContext")._I_ = initClientRendered;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ const copyProps = require("raptor-util/copyProps");
4
+ const constructorCache = new Map();
5
+ const BaseServerComponent = require("../../../runtime/components/ServerComponent");
6
+
7
+ function createServerComponentClass(renderingLogic) {
8
+ var renderingLogicProps = typeof renderingLogic === "function" ? renderingLogic.prototype : renderingLogic;
9
+
10
+ class ServerComponent extends BaseServerComponent {}
11
+
12
+ copyProps(renderingLogicProps, ServerComponent.prototype);
13
+
14
+ return ServerComponent;
15
+ }
16
+ function createComponent(renderingLogic, id, input, out, typeName, customEvents, scope) {
17
+ let ServerComponent;
18
+
19
+ if (renderingLogic) {
20
+ ServerComponent = constructorCache.get(renderingLogic);
21
+
22
+ if (!ServerComponent) {
23
+ ServerComponent = createServerComponentClass(renderingLogic);
24
+ constructorCache.set(renderingLogic, ServerComponent);
25
+ }
26
+ } else {
27
+ ServerComponent = BaseServerComponent;
28
+ }
29
+
30
+ return new ServerComponent(id, input, out, typeName, customEvents, scope);
31
+ }
32
+
33
+ exports._J_ = true;
34
+ exports._G_ = createComponent;
@@ -0,0 +1,11 @@
1
+ {
2
+ "main": "./index.js",
3
+ "browser": "./index-browser.js",
4
+ "exports": {
5
+ ".": {
6
+ "worker": "./index.js",
7
+ "browser": "./index-browser.js",
8
+ "default": "./index.js"
9
+ }
10
+ }
11
+ }
@@ -1,18 +1,17 @@
1
- var domData = require("./dom-data");
2
- var componentsByDOMNode = domData.K_;
3
- var keysByDOMNode = domData.al_;
4
- var vElementsByDOMNode = domData.aj_;
5
- var vPropsByDOMNode = domData.ai_;
1
+ var domData = require("../../../runtime/components/dom-data");
2
+ var componentsByDOMNode = domData._q_;
3
+ var keysByDOMNode = domData._K_;
4
+ var vElementsByDOMNode = domData._L_;
5
+ var vPropsByDOMNode = domData._M_;
6
6
  var markoUID = window.$MUID || (window.$MUID = { i: 0 });
7
7
  var runtimeId = markoUID.i++;
8
8
 
9
9
  var componentLookup = {};
10
10
 
11
- var defaultDocument = document;
12
11
  var EMPTY_OBJECT = {};
13
12
 
14
- function getComponentForEl(el, doc) {
15
- var node = typeof el == "string" ? (doc || defaultDocument).getElementById(el) : el;
13
+ function getComponentForEl(el, host) {
14
+ var node = typeof el == "string" ? ((host ? host.ownerDocument : host) || document).getElementById(el) : el;
16
15
  var component;
17
16
  var vElement;
18
17
 
@@ -25,7 +24,7 @@ function getComponentForEl(el, doc) {
25
24
  component = componentsByDOMNode.get(node);
26
25
  }
27
26
  } else if (vElement = vElementsByDOMNode.get(node)) {
28
- component = vElement.aU_;
27
+ component = vElement._N_;
29
28
  }
30
29
 
31
30
  if (component) {
@@ -39,7 +38,7 @@ function getComponentForEl(el, doc) {
39
38
  function destroyComponentForNode(node) {
40
39
  var componentToDestroy = componentsByDOMNode.get(node.fragment || node);
41
40
  if (componentToDestroy) {
42
- componentToDestroy._e_();
41
+ componentToDestroy._O_();
43
42
  delete componentLookup[componentToDestroy.id];
44
43
  }
45
44
  }
@@ -49,11 +48,11 @@ function destroyNodeRecursive(node, component) {
49
48
  var key;
50
49
 
51
50
  if (component && (key = keysByDOMNode.get(node))) {
52
- if (node === component.q_[key]) {
51
+ if (node === component.N_[key]) {
53
52
  if (componentsByDOMNode.get(node) && /\[\]$/.test(key)) {
54
- delete component.q_[key][componentsByDOMNode.get(node).id];
53
+ delete component.N_[key][componentsByDOMNode.get(node).id];
55
54
  } else {
56
- delete component.q_[key];
55
+ delete component.N_[key];
57
56
  }
58
57
  }
59
58
  }
@@ -94,7 +93,7 @@ function getMarkoPropsFromEl(el) {
94
93
  var virtualProps;
95
94
 
96
95
  if (vElement) {
97
- virtualProps = vElement.aV_;
96
+ virtualProps = vElement._P_;
98
97
  } else {
99
98
  virtualProps = vPropsByDOMNode.get(el);
100
99
  if (!virtualProps) {
@@ -125,13 +124,13 @@ function addComponentRootToKeyedElements(keyedElements, key, rootNode, component
125
124
  // eslint-disable-next-line no-constant-condition
126
125
 
127
126
 
128
- exports.am_ = runtimeId;
129
- exports.I_ = componentLookup;
130
- exports.ap_ = getComponentForEl;
131
- exports.aW_ = destroyComponentForNode;
132
- exports.J_ = destroyNodeRecursive;
133
- exports._Y_ = nextComponentIdProvider;
134
- exports._H_ = attachBubblingEvent;
135
- exports.an_ = getMarkoPropsFromEl;
136
- exports.av_ = addComponentRootToKeyedElements;
137
- exports.aX_ = normalizeComponentKey;
127
+ exports._Q_ = runtimeId;
128
+ exports._n_ = componentLookup;
129
+ exports.V_ = getComponentForEl;
130
+ exports._R_ = destroyComponentForNode;
131
+ exports._S_ = destroyNodeRecursive;
132
+ exports._T_ = nextComponentIdProvider;
133
+ exports._U_ = attachBubblingEvent;
134
+ exports._r_ = getMarkoPropsFromEl;
135
+ exports._o_ = addComponentRootToKeyedElements;
136
+ exports._V_ = normalizeComponentKey;
@@ -1,7 +1,5 @@
1
1
  var FLAG_WILL_RERENDER_IN_BROWSER = 1;
2
2
  // var FLAG_HAS_RENDER_BODY = 2;
3
- // var FLAG_IS_LEGACY = 4;
4
- // var FLAG_OLD_HYDRATE_NO_CREATE = 8;
5
3
 
6
4
  function nextComponentIdProvider(out) {
7
5
  var prefix = out.global.componentIdPrefix || out.global.widgetIdPrefix || "s"; // "s" is for server (we use "b" for the browser)
@@ -18,8 +16,8 @@ function nextComponentIdProvider(out) {
18
16
  function attachBubblingEvent(componentDef, handlerMethodName, isOnce, extraArgs) {
19
17
  if (handlerMethodName) {
20
18
  if (extraArgs) {
21
- var component = componentDef.n_;
22
- var eventIndex = component.aa_++;
19
+ var component = componentDef.v_;
20
+ var eventIndex = component._a_++;
23
21
 
24
22
  // If we are not going to be doing a rerender in the browser
25
23
  // then we need to actually store the extra args with the UI component
@@ -29,11 +27,11 @@ function attachBubblingEvent(componentDef, handlerMethodName, isOnce, extraArgs)
29
27
  // where the extra args will be found when the UI component is
30
28
  // rerendered in the browser
31
29
 
32
- if (!(componentDef._N_ & FLAG_WILL_RERENDER_IN_BROWSER)) {
30
+ if (!(componentDef.x_ & FLAG_WILL_RERENDER_IN_BROWSER)) {
33
31
  if (eventIndex === 0) {
34
- component.T_ = [extraArgs];
32
+ component.Z_ = [extraArgs];
35
33
  } else {
36
- component.T_.push(extraArgs);
34
+ component.Z_.push(extraArgs);
37
35
  }
38
36
  }
39
37
 
@@ -44,10 +42,10 @@ function attachBubblingEvent(componentDef, handlerMethodName, isOnce, extraArgs)
44
42
  }
45
43
  }
46
44
 
47
- exports._Y_ = nextComponentIdProvider;
48
- exports.aR_ = true;
49
- exports._H_ = attachBubblingEvent;
50
- exports.aW_ = function noop() {};
51
- exports.J_ = function noop() {};
45
+ exports._T_ = nextComponentIdProvider;
46
+ exports._J_ = true;
47
+ exports._U_ = attachBubblingEvent;
48
+ exports._R_ = function noop() {};
49
+ exports._S_ = function noop() {};
52
50
 
53
51
  // eslint-disable-next-line no-constant-condition
@@ -0,0 +1,11 @@
1
+ {
2
+ "main": "./index.js",
3
+ "browser": "./index-browser.js",
4
+ "exports": {
5
+ ".": {
6
+ "worker": "./index.js",
7
+ "browser": "./index-browser.js",
8
+ "default": "./index.js"
9
+ }
10
+ }
11
+ }
@@ -0,0 +1,25 @@
1
+ var encoder = new TextEncoder();
2
+ var noop = function () {};
3
+
4
+ module.exports = function (data) {
5
+ // eslint-disable-next-line no-undef
6
+ var transformStream = new TransformStream();
7
+ var writer = transformStream.writable.getWriter();
8
+ var facade = {
9
+ write: function (string) {
10
+ writer.write(encoder.encode(string));
11
+ },
12
+ end: function () {
13
+ writer.close();
14
+ }
15
+ };
16
+ var out = this.createOut(data && data.$global, facade, undefined, this._W_);
17
+ out.once("error", err => {
18
+ facade.write = facade.end = noop;
19
+ writer.abort(err);
20
+ });
21
+ this.render(data, out);
22
+ out.end();
23
+
24
+ return transformStream.readable;
25
+ };