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.
- package/bin/markoc.js +18 -18
- package/dist/compiler/CompileContext.js +3 -8
- package/dist/core-tags/components/init-components-tag.js +1 -52
- package/dist/core-tags/components/package.json +1 -3
- package/dist/core-tags/components/preferred-script-location-tag.js +2 -2
- package/dist/core-tags/components/preserve-tag.js +1 -27
- package/dist/core-tags/core/await/AsyncValue.js +20 -20
- package/dist/core-tags/core/await/renderer.js +11 -12
- package/dist/core-tags/core/await/reorderer-renderer.js +11 -6
- package/dist/index.js +1 -39
- package/dist/node-require/index.js +11 -0
- package/dist/node_modules/@internal/components-beginComponent/index-browser.js +12 -0
- package/dist/{runtime/components/beginComponent.js → node_modules/@internal/components-beginComponent/index.js} +14 -14
- package/dist/node_modules/@internal/components-beginComponent/package.json +11 -0
- package/dist/{runtime/components/legacy/defineWidget-legacy-browser.js → node_modules/@internal/components-define-widget-legacy/index-browser.js} +47 -47
- package/dist/node_modules/@internal/components-define-widget-legacy/index.js +18 -0
- package/dist/node_modules/@internal/components-define-widget-legacy/package.json +11 -0
- package/dist/node_modules/@internal/components-endComponent/index.js +11 -0
- package/dist/node_modules/@internal/components-endComponent/package.json +11 -0
- package/dist/node_modules/@internal/components-entry/index-browser.js +9 -0
- package/dist/node_modules/@internal/components-entry/index.js +285 -0
- package/dist/node_modules/@internal/components-entry/package.json +11 -0
- package/dist/{runtime/components/legacy → node_modules/@internal/components-entry-legacy}/index-browser.js +14 -15
- package/dist/node_modules/@internal/components-entry-legacy/index.js +14 -0
- package/dist/node_modules/@internal/components-entry-legacy/package.json +11 -0
- package/dist/{runtime/components/init-components-browser.js → node_modules/@internal/components-registry/index-browser.js} +180 -79
- package/dist/node_modules/@internal/components-registry/index.js +34 -0
- package/dist/node_modules/@internal/components-registry/package.json +11 -0
- package/dist/{runtime/components/util-browser.js → node_modules/@internal/components-util/index-browser.js} +23 -24
- package/dist/{runtime/components/util.js → node_modules/@internal/components-util/index.js} +10 -12
- package/dist/node_modules/@internal/components-util/package.json +11 -0
- package/dist/node_modules/@internal/create-readable/index-browser.js +25 -0
- package/dist/node_modules/@internal/create-readable/index.js +52 -0
- package/dist/node_modules/@internal/create-readable/package.json +11 -0
- package/dist/node_modules/@internal/init-components-tag/index.js +52 -0
- package/dist/node_modules/@internal/init-components-tag/package.json +11 -0
- package/dist/{loader/index-default.js → node_modules/@internal/loader/index.js} +1 -1
- package/dist/node_modules/@internal/loader/package.json +11 -0
- package/dist/{core-tags/components/preserve-tag-browser.js → node_modules/@internal/preserve-tag/index-browser.js} +8 -8
- package/dist/node_modules/@internal/preserve-tag/index.js +27 -0
- package/dist/node_modules/@internal/preserve-tag/package.json +11 -0
- package/dist/node_modules/@internal/set-immediate/index-browser.js +17 -0
- package/dist/node_modules/@internal/set-immediate/index-worker.js +2 -0
- package/dist/node_modules/@internal/set-immediate/index.js +2 -0
- package/dist/node_modules/@internal/set-immediate/package.json +11 -0
- package/dist/runtime/RenderResult.js +24 -19
- package/dist/runtime/components/Component.js +154 -151
- package/dist/runtime/components/ComponentDef.js +28 -28
- package/dist/runtime/components/ComponentsContext.js +19 -19
- package/dist/runtime/components/GlobalComponentsContext.js +4 -4
- package/dist/runtime/components/KeySequence.js +3 -3
- package/dist/runtime/components/ServerComponent.js +13 -13
- package/dist/runtime/components/State.js +28 -28
- package/dist/runtime/components/attach-detach.js +9 -9
- package/dist/runtime/components/defineComponent.js +5 -5
- package/dist/runtime/components/dom-data.js +6 -6
- package/dist/runtime/components/event-delegation.js +15 -16
- package/dist/runtime/components/index.js +1 -285
- package/dist/runtime/components/legacy/browser.json +1 -1
- package/dist/runtime/components/legacy/defineComponent-legacy.js +1 -1
- package/dist/runtime/components/legacy/defineRenderer-legacy.js +18 -19
- package/dist/runtime/components/legacy/defineWidget-legacy.js +1 -18
- package/dist/runtime/components/legacy/dependencies/html.js +1 -1
- package/dist/runtime/components/legacy/dependencies/index.js +9 -9
- package/dist/runtime/components/legacy/helper-getWidgetFromOut.js +3 -3
- package/dist/runtime/components/legacy/index.js +1 -14
- package/dist/runtime/components/legacy/renderer-legacy.js +43 -43
- package/dist/runtime/components/registry.js +1 -34
- package/dist/runtime/components/renderer.js +38 -38
- package/dist/runtime/components/update-manager.js +10 -10
- package/dist/runtime/createOut.js +1 -1
- package/dist/runtime/dom-insert.js +6 -6
- package/dist/runtime/helpers/_change-case.js +2 -2
- package/dist/runtime/helpers/assign.js +3 -2
- package/dist/runtime/helpers/dynamic-tag.js +14 -16
- package/dist/runtime/helpers/load-template.js +1 -1
- package/dist/runtime/helpers/merge.js +3 -1
- package/dist/runtime/helpers/style-value.js +2 -2
- package/dist/runtime/html/AsyncStream.js +61 -52
- package/dist/runtime/html/BufferedWriter.js +5 -1
- package/dist/runtime/html/StringWriter.js +7 -3
- package/dist/runtime/html/helpers/_dynamic-attr.js +2 -2
- package/dist/runtime/html/helpers/attr.js +4 -4
- package/dist/runtime/html/helpers/attrs.js +3 -3
- package/dist/runtime/html/helpers/data-marko.js +4 -6
- package/dist/runtime/html/helpers/escape-quotes.js +2 -2
- package/dist/runtime/html/helpers/escape-xml.js +1 -1
- package/dist/runtime/html/helpers/props-script.js +1 -1
- package/dist/runtime/html/index.js +15 -12
- package/dist/runtime/renderable.js +5 -5
- package/dist/runtime/vdom/AsyncVDOMBuilder.js +102 -103
- package/dist/runtime/vdom/VComment.js +7 -7
- package/dist/runtime/vdom/VComponent.js +5 -5
- package/dist/runtime/vdom/VDocumentFragment.js +8 -8
- package/dist/runtime/vdom/VElement.js +55 -54
- package/dist/runtime/vdom/VFragment.js +9 -9
- package/dist/runtime/vdom/VNode.js +30 -30
- package/dist/runtime/vdom/VText.js +7 -7
- package/dist/runtime/vdom/helpers/v-element.js +1 -1
- package/dist/runtime/vdom/helpers/v-text.js +1 -1
- package/dist/runtime/vdom/index.js +12 -22
- package/dist/runtime/vdom/morphdom/fragment.js +5 -5
- package/dist/runtime/vdom/morphdom/helpers.js +3 -3
- package/dist/runtime/vdom/morphdom/index.js +72 -68
- package/dist/runtime/vdom/morphdom/specialElHandlers.js +8 -8
- package/dist/runtime/vdom/preserve-attrs.js +1 -1
- package/dist/runtime/vdom/vdom.js +19 -21
- package/docs/body-content.md +2 -2
- package/docs/class-components.md +3 -3
- package/docs/express.md +1 -1
- package/docs/lasso.md +3 -6
- package/docs/marko-v4.md +5 -5
- package/docs/redux.md +1 -1
- package/docs/server-side-rendering.md +2 -2
- package/docs/why-is-marko-fast.md +2 -10
- package/package.json +1 -1
- package/src/browser-refresh.js +2 -2
- package/src/compiler/CodeWriter.js +1 -3
- package/src/compiler/CompileContext.js +3 -8
- package/src/compiler/Compiler.js +4 -4
- package/src/compiler/HtmlJsParser.js +1 -1
- package/src/compiler/Migrator.js +1 -1
- package/src/compiler/Parser.js +3 -3
- package/src/compiler/ast/CustomTag.js +9 -11
- package/src/compiler/ast/HtmlAttribute/html/generateCode.js +2 -2
- package/src/compiler/ast/HtmlAttribute/index.js +1 -1
- package/src/compiler/ast/HtmlElement/vdom/HtmlElementVDOM.js +1 -1
- package/src/compiler/ast/HtmlElement/vdom/generateCode.js +1 -1
- package/src/compiler/ast/TemplateRoot.js +1 -1
- package/src/compiler/ast/Text/html/generateCode.js +3 -3
- package/src/compiler/ast/Text/vdom/generateCode.js +1 -1
- package/src/compiler/index.js +4 -4
- package/src/compiler/modules.js +4 -4
- package/src/compiler/util/finger-print.js +1 -1
- package/src/compiler/util/parseExpression.js +1 -1
- package/src/compiler/util/parseStatement.js +1 -1
- package/src/compiler/util/removeDashes.js +1 -1
- package/src/compiler/util/safeVarName.js +1 -1
- package/src/compiler/util/tokenizer.js +1 -1
- package/src/core-tags/cache/cached-fragment-tag-transformer.js +1 -1
- package/src/core-tags/cache/cached-fragment-tag.js +4 -4
- package/src/core-tags/cache/default-cache-manager.js +3 -3
- package/src/core-tags/components/TransformHelper/ComponentArgsCompiler.js +1 -1
- package/src/core-tags/components/TransformHelper/convertToComponent.js +1 -1
- package/src/core-tags/components/TransformHelper/handleComponentPreserveAttrs.js +1 -1
- package/src/core-tags/components/init-components-tag.js +1 -54
- package/src/core-tags/components/package.json +1 -3
- package/src/core-tags/components/preferred-script-location-tag.js +1 -1
- package/src/core-tags/components/preserve-tag.js +1 -27
- package/src/core-tags/components/util/getTransformHelper.js +1 -1
- package/src/core-tags/core/await/AsyncValue.js +3 -3
- package/src/core-tags/core/await/noop-render.js +1 -1
- package/src/core-tags/core/await/renderer.js +8 -7
- package/src/core-tags/core/await/reorderer-renderer.js +35 -14
- package/src/core-tags/core/await/transformer.js +1 -1
- package/src/core-tags/core/core-transformer.js +2 -2
- package/src/core-tags/migrate/all-tags/index.js +1 -1
- package/src/core-tags/migrate/all-templates/index.js +1 -1
- package/src/core-tags/migrate/include-tag.js +3 -2
- package/src/core-tags/migrate/util/parseFor.js +3 -2
- package/src/core-tags/migrate/util/printJS.js +1 -1
- package/src/defineRenderer.js +1 -1
- package/src/express.js +1 -1
- package/src/hot-reload.js +5 -5
- package/src/index.js +1 -41
- package/src/legacy-helpers/notEmpty.js +1 -1
- package/src/node-require/index.js +12 -1
- package/src/{runtime/components/beginComponent-browser.js → node_modules/@internal/components-beginComponent/index-browser.js} +1 -1
- package/src/{runtime/components/beginComponent.js → node_modules/@internal/components-beginComponent/index.js} +2 -2
- package/src/node_modules/@internal/components-beginComponent/package.json +11 -0
- package/src/{runtime/components/legacy/defineWidget-legacy-browser.js → node_modules/@internal/components-define-widget-legacy/index-browser.js} +21 -23
- package/src/node_modules/@internal/components-define-widget-legacy/index.js +18 -0
- package/src/node_modules/@internal/components-define-widget-legacy/package.json +11 -0
- package/src/{runtime/components/endComponent.js → node_modules/@internal/components-endComponent/index.js} +1 -1
- package/src/node_modules/@internal/components-endComponent/package.json +11 -0
- package/src/node_modules/@internal/components-entry/index-browser.js +9 -0
- package/src/node_modules/@internal/components-entry/index.js +301 -0
- package/src/node_modules/@internal/components-entry/package.json +11 -0
- package/src/node_modules/@internal/components-entry-legacy/index-browser.js +74 -0
- package/src/node_modules/@internal/components-entry-legacy/index.js +15 -0
- package/src/node_modules/@internal/components-entry-legacy/package.json +11 -0
- package/src/{runtime/components/init-components-browser.js → node_modules/@internal/components-registry/index-browser.js} +240 -75
- package/src/node_modules/@internal/components-registry/index.js +44 -0
- package/src/node_modules/@internal/components-registry/package.json +11 -0
- package/src/{runtime/components/util-browser.js → node_modules/@internal/components-util/index-browser.js} +11 -10
- package/src/{runtime/components/util.js → node_modules/@internal/components-util/index.js} +0 -2
- package/src/node_modules/@internal/components-util/package.json +11 -0
- package/src/node_modules/@internal/create-readable/index-browser.js +30 -0
- package/src/node_modules/@internal/create-readable/index.js +57 -0
- package/src/node_modules/@internal/create-readable/package.json +11 -0
- package/src/node_modules/@internal/init-components-tag/index.js +54 -0
- package/src/node_modules/@internal/init-components-tag/package.json +11 -0
- package/src/{loader/index-default.js → node_modules/@internal/loader/index.js} +2 -2
- package/src/node_modules/@internal/loader/package.json +11 -0
- package/src/node_modules/@internal/preserve-tag/index.js +27 -0
- package/src/node_modules/@internal/preserve-tag/package.json +11 -0
- package/src/node_modules/@internal/set-immediate/index-browser.js +17 -0
- package/src/node_modules/@internal/set-immediate/index-worker.js +2 -0
- package/src/node_modules/@internal/set-immediate/index.js +2 -0
- package/src/node_modules/@internal/set-immediate/package.json +11 -0
- package/src/runtime/RenderResult.js +20 -18
- package/src/runtime/components/Component.js +44 -41
- package/src/runtime/components/ComponentDef.js +9 -9
- package/src/runtime/components/ComponentsContext.js +4 -5
- package/src/runtime/components/GlobalComponentsContext.js +2 -1
- package/src/runtime/components/KeySequence.js +1 -1
- package/src/runtime/components/State.js +6 -6
- package/src/runtime/components/attach-detach.js +4 -4
- package/src/runtime/components/defineComponent.js +1 -1
- package/src/runtime/components/event-delegation.js +10 -10
- package/src/runtime/components/index.js +1 -301
- package/src/runtime/components/jquery.js +2 -2
- package/src/runtime/components/legacy/browser.json +1 -1
- package/src/runtime/components/legacy/defineRenderer-legacy.js +5 -6
- package/src/runtime/components/legacy/defineWidget-legacy.js +1 -18
- package/src/runtime/components/legacy/dependencies/html.js +1 -1
- package/src/runtime/components/legacy/dependencies/index.js +3 -3
- package/src/runtime/components/legacy/helper-getWidgetFromOut.js +3 -3
- package/src/runtime/components/legacy/index.js +1 -15
- package/src/runtime/components/legacy/renderer-legacy.js +7 -7
- package/src/runtime/components/ready.js +2 -2
- package/src/runtime/components/registry.js +1 -44
- package/src/runtime/components/renderer.js +4 -4
- package/src/runtime/components/update-manager.js +1 -1
- package/src/runtime/dom-insert.js +8 -8
- package/src/runtime/helpers/_weak-map.js +2 -2
- package/src/runtime/helpers/assign.js +3 -1
- package/src/runtime/helpers/bind-component.js +2 -2
- package/src/runtime/helpers/dynamic-tag.js +2 -4
- package/src/runtime/helpers/for-in.js +1 -1
- package/src/runtime/helpers/load-nested-tag.js +1 -1
- package/src/runtime/helpers/load-template.js +1 -1
- package/src/runtime/helpers/merge.js +3 -1
- package/src/runtime/helpers/noop.js +1 -1
- package/src/runtime/helpers/style-value.js +1 -1
- package/src/runtime/helpers/to-string.js +1 -1
- package/src/runtime/html/AsyncStream.js +90 -76
- package/src/runtime/html/BufferedWriter.js +6 -2
- package/src/runtime/html/StringWriter.js +15 -9
- package/src/runtime/html/helpers/attrs.js +3 -3
- package/src/runtime/html/helpers/data-marko.js +0 -2
- package/src/runtime/html/helpers/escape-quotes.js +1 -1
- package/src/runtime/html/helpers/escape-xml.js +1 -1
- package/src/runtime/html/index.js +23 -13
- package/src/runtime/queueMicrotask.js +2 -2
- package/src/runtime/renderable.js +9 -9
- package/src/runtime/vdom/AsyncVDOMBuilder.js +46 -51
- package/src/runtime/vdom/VComment.js +3 -3
- package/src/runtime/vdom/VDocumentFragment.js +3 -3
- package/src/runtime/vdom/VElement.js +17 -13
- package/src/runtime/vdom/VFragment.js +1 -1
- package/src/runtime/vdom/VNode.js +2 -2
- package/src/runtime/vdom/VText.js +3 -3
- package/src/runtime/vdom/helpers/attrs.js +1 -1
- package/src/runtime/vdom/helpers/const.js +2 -2
- package/src/runtime/vdom/helpers/v-element.js +1 -1
- package/src/runtime/vdom/helpers/v-text.js +1 -1
- package/src/runtime/vdom/index.js +21 -23
- package/src/runtime/vdom/morphdom/fragment.js +8 -7
- package/src/runtime/vdom/morphdom/index.js +19 -9
- package/src/runtime/vdom/morphdom/specialElHandlers.js +6 -6
- package/src/runtime/vdom/parse-html.js +4 -4
- package/src/runtime/vdom/preserve-attrs.js +1 -1
- package/src/runtime/vdom/vdom.js +5 -7
- package/src/taglib/taglib-finder/index.js +1 -1
- package/src/taglib/taglib-loader/Tag.js +5 -5
- package/src/taglib/taglib-loader/Taglib.js +2 -2
- package/src/taglib/taglib-loader/json-file-reader.js +1 -1
- package/src/taglib/taglib-loader/loadAttributeFromProps.js +1 -1
- package/src/taglib/taglib-loader/loadTagFromProps.js +5 -6
- package/src/taglib/taglib-loader/tag-def-from-code.js +2 -1
- package/src/taglib/taglib-lookup/TaglibLookup.js +2 -2
- package/src/taglib/taglib-lookup/index.js +1 -1
- package/dist/core-tags/core/await/client-reorder-browser.js +0 -1
- package/dist/core-tags/core/await/client-reorder-runtime.min.js +0 -5
- package/dist/core-tags/core/await/client-reorder.js +0 -11
- package/dist/core-tags/core/await/package.json +0 -6
- package/dist/index-browser.js +0 -4
- package/dist/loader/index.js +0 -7
- package/dist/loader/package.json +0 -5
- package/dist/node-require/index-browser.js +0 -1
- package/dist/package.json +0 -5
- package/dist/runtime/components/beginComponent-browser.js +0 -12
- package/dist/runtime/components/endComponent.js +0 -11
- package/dist/runtime/components/index-browser.js +0 -14
- package/dist/runtime/components/init-components.js +0 -1
- package/dist/runtime/components/legacy/package.json +0 -6
- package/dist/runtime/components/package.json +0 -12
- package/dist/runtime/components/registry-browser.js +0 -73
- package/dist/runtime/html/Template.js +0 -63
- package/dist/runtime/package.json +0 -5
- package/dist/runtime/setImmediate.js +0 -19
- package/src/core-tags/core/await/client-reorder-browser.js +0 -1
- package/src/core-tags/core/await/client-reorder-runtime.min.js +0 -1
- package/src/core-tags/core/await/client-reorder.js +0 -14
- package/src/core-tags/core/await/package.json +0 -6
- package/src/index-browser.js +0 -3
- package/src/loader/index.js +0 -7
- package/src/loader/package.json +0 -5
- package/src/node-require/index-browser.js +0 -1
- package/src/package.json +0 -5
- package/src/runtime/components/index-browser.js +0 -15
- package/src/runtime/components/init-components.js +0 -1
- package/src/runtime/components/legacy/index-browser.js +0 -73
- package/src/runtime/components/legacy/package.json +0 -6
- package/src/runtime/components/package.json +0 -12
- package/src/runtime/components/registry-browser.js +0 -103
- package/src/runtime/html/Template.js +0 -62
- package/src/runtime/package.json +0 -5
- package/src/runtime/setImmediate.js +0 -21
- /package/dist/{runtime/components/endComponent-browser.js → node_modules/@internal/components-endComponent/index-browser.js} +0 -0
- /package/dist/{core-tags/components/init-components-tag-browser.js → node_modules/@internal/init-components-tag/index-browser.js} +0 -0
- /package/dist/{loader → node_modules/@internal/loader}/index-browser.js +0 -0
- /package/src/{runtime/components/endComponent-browser.js → node_modules/@internal/components-endComponent/index-browser.js} +0 -0
- /package/src/{core-tags/components/init-components-tag-browser.js → node_modules/@internal/init-components-tag/index-browser.js} +0 -0
- /package/src/{loader → node_modules/@internal/loader}/index-browser.js +0 -0
- /package/src/{core-tags/components/preserve-tag-browser.js → node_modules/@internal/preserve-tag/index-browser.js} +0 -0
|
@@ -1,27 +1,114 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
1
|
var complain;
|
|
4
2
|
var warp10Finalize = require("warp10/finalize");
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var
|
|
8
|
-
var createFragmentNode = require("
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
var
|
|
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
|
-
|
|
24
|
-
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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,
|
|
146
|
-
var component = componentDef.
|
|
232
|
+
function initComponent(componentDef, host) {
|
|
233
|
+
var component = componentDef.v_;
|
|
147
234
|
|
|
148
|
-
if (!component || !component.
|
|
235
|
+
if (!component || !component.A_) {
|
|
149
236
|
return; // legacy
|
|
150
237
|
}
|
|
151
238
|
|
|
152
|
-
component.
|
|
153
|
-
component.
|
|
239
|
+
component._t_();
|
|
240
|
+
component.E_ = host;
|
|
154
241
|
|
|
155
|
-
var isExisting = componentDef.
|
|
242
|
+
var isExisting = componentDef._u_;
|
|
156
243
|
|
|
157
244
|
if (isExisting) {
|
|
158
|
-
component.
|
|
245
|
+
component._v_();
|
|
159
246
|
}
|
|
160
247
|
|
|
161
|
-
var domEvents = componentDef.
|
|
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.
|
|
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.
|
|
265
|
+
component._w_ = eventListenerHandles;
|
|
179
266
|
}
|
|
180
267
|
}
|
|
181
268
|
|
|
182
|
-
if (component.
|
|
183
|
-
component.
|
|
269
|
+
if (component._x_) {
|
|
270
|
+
component._y_();
|
|
184
271
|
} else {
|
|
185
|
-
component.
|
|
186
|
-
component.
|
|
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,
|
|
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.
|
|
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,
|
|
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,
|
|
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
|
-
|
|
349
|
+
host = document;
|
|
258
350
|
} else {
|
|
259
351
|
runtimeId = renderedComponents.r || DEFAULT_RUNTIME_ID;
|
|
260
|
-
|
|
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(
|
|
287
|
-
eventDelegation.
|
|
378
|
+
indexServerComponentBoundaries(host, runtimeId);
|
|
379
|
+
eventDelegation._A_(host);
|
|
288
380
|
|
|
289
381
|
if (renderedComponents.g) {
|
|
290
|
-
meta.
|
|
382
|
+
meta._B_ = renderedComponents.g;
|
|
291
383
|
}
|
|
292
384
|
|
|
293
385
|
if (renderedComponents.t) {
|
|
294
|
-
meta.
|
|
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
|
-
|
|
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
|
|
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
|
|
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.
|
|
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.
|
|
434
|
+
component._E_ = rootNode;
|
|
338
435
|
componentsByDOMNode.set(rootNode, component);
|
|
339
436
|
|
|
340
|
-
if (componentDef.
|
|
341
|
-
component.
|
|
342
|
-
renderResult = component.
|
|
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(
|
|
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,
|
|
449
|
+
initComponent(componentDef, host);
|
|
353
450
|
};
|
|
354
451
|
}
|
|
355
452
|
}
|
|
356
453
|
|
|
357
454
|
function trackComponent(componentDef) {
|
|
358
|
-
var component = componentDef.
|
|
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.
|
|
369
|
-
exports.
|
|
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;
|
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
var domData = require("
|
|
2
|
-
var componentsByDOMNode = domData.
|
|
3
|
-
var keysByDOMNode = domData.
|
|
4
|
-
var vElementsByDOMNode = domData.
|
|
5
|
-
var vPropsByDOMNode = domData.
|
|
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,
|
|
15
|
-
var node = typeof el == "string" ? (
|
|
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.
|
|
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.
|
|
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.
|
|
51
|
+
if (node === component.N_[key]) {
|
|
53
52
|
if (componentsByDOMNode.get(node) && /\[\]$/.test(key)) {
|
|
54
|
-
delete component.
|
|
53
|
+
delete component.N_[key][componentsByDOMNode.get(node).id];
|
|
55
54
|
} else {
|
|
56
|
-
delete component.
|
|
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.
|
|
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.
|
|
129
|
-
exports.
|
|
130
|
-
exports.
|
|
131
|
-
exports.
|
|
132
|
-
exports.
|
|
133
|
-
exports.
|
|
134
|
-
exports.
|
|
135
|
-
exports.
|
|
136
|
-
exports.
|
|
137
|
-
exports.
|
|
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.
|
|
22
|
-
var eventIndex = component.
|
|
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.
|
|
30
|
+
if (!(componentDef.x_ & FLAG_WILL_RERENDER_IN_BROWSER)) {
|
|
33
31
|
if (eventIndex === 0) {
|
|
34
|
-
component.
|
|
32
|
+
component.Z_ = [extraArgs];
|
|
35
33
|
} else {
|
|
36
|
-
component.
|
|
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.
|
|
48
|
-
exports.
|
|
49
|
-
exports.
|
|
50
|
-
exports.
|
|
51
|
-
exports.
|
|
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,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
|
+
};
|