diff --git a/packages/marko/src/runtime/vdom/AsyncVDOMBuilder.js b/packages/marko/src/runtime/vdom/AsyncVDOMBuilder.js index f1d77e7a3f..42b2e0d9b5 100644 --- a/packages/marko/src/runtime/vdom/AsyncVDOMBuilder.js +++ b/packages/marko/src/runtime/vdom/AsyncVDOMBuilder.js @@ -116,7 +116,7 @@ var proto = (AsyncVDOMBuilder.prototype = { return this; }, - text: function(text) { + text: function(text, ownerComponent) { var type = typeof text; if (type != "string") { @@ -124,24 +124,28 @@ var proto = (AsyncVDOMBuilder.prototype = { return; } else if (type === "object") { if (text.toHTML) { - return this.h(text.toHTML()); + return this.h(text.toHTML(), ownerComponent); } } text = text.toString(); } - this.___parent.___appendChild(new VText(text)); + this.___parent.___appendChild(new VText(text, ownerComponent)); return this; }, - comment: function(comment) { - return this.node(new VComment(comment)); + comment: function(comment, ownerComponent) { + return this.node(new VComment(comment, ownerComponent)); }, - html: function(html) { + html: function(html, ownerComponent) { if (html != null) { - var vdomNode = virtualizeHTML(html, this.___document || document); + var vdomNode = virtualizeHTML( + html, + this.___document || document, + ownerComponent + ); this.node(vdomNode); } diff --git a/packages/marko/src/runtime/vdom/VComment.js b/packages/marko/src/runtime/vdom/VComment.js index d0f6b81f2b..633b0d64bd 100644 --- a/packages/marko/src/runtime/vdom/VComment.js +++ b/packages/marko/src/runtime/vdom/VComment.js @@ -1,8 +1,8 @@ var VNode = require("./VNode"); var inherit = require("raptor-util/inherit"); -function VComment(value) { - this.___VNode(-1 /* no children */); +function VComment(value, ownerComponent) { + this.___VNode(-1 /* no children */, ownerComponent); this.___nodeValue = value; } diff --git a/packages/marko/src/runtime/vdom/VComponent.js b/packages/marko/src/runtime/vdom/VComponent.js index ad0273aa87..77f8c1b236 100644 --- a/packages/marko/src/runtime/vdom/VComponent.js +++ b/packages/marko/src/runtime/vdom/VComponent.js @@ -2,10 +2,9 @@ var VNode = require("./VNode"); var inherit = require("raptor-util/inherit"); function VComponent(component, key, ownerComponent, preserve) { - this.___VNode(null /* childCount */); + this.___VNode(null /* childCount */, ownerComponent); this.___key = key; this.___component = component; - this.___ownerComponent = ownerComponent; this.___preserve = preserve; } diff --git a/packages/marko/src/runtime/vdom/VElement.js b/packages/marko/src/runtime/vdom/VElement.js index 84b5a37103..9348041d00 100644 --- a/packages/marko/src/runtime/vdom/VElement.js +++ b/packages/marko/src/runtime/vdom/VElement.js @@ -83,7 +83,7 @@ function VElement( flags, props ) { - this.___VNode(childCount); + this.___VNode(childCount, ownerComponent); var constId; @@ -93,7 +93,6 @@ function VElement( this.___key = key; this.___flags = flags || 0; - this.___ownerComponent = ownerComponent; this.___attributes = attrs || EMPTY_OBJECT; this.___properties = props || EMPTY_OBJECT; this.___nodeName = tagName; @@ -234,7 +233,7 @@ VElement.___removePreservedAttributes = function(attrs) { return attrs; }; -function virtualizeElement(node, virtualizeChildNodes) { +function virtualizeElement(node, virtualizeChildNodes, ownerComponent) { var attributes = node.attributes; var attrCount = attributes.length; @@ -266,7 +265,7 @@ function virtualizeElement(node, virtualizeChildNodes) { tagName, attrs, null /*key*/, - null /*ownerComponent*/, + ownerComponent, 0 /*child count*/, 0 /*flags*/, null /*props*/ @@ -275,7 +274,7 @@ function virtualizeElement(node, virtualizeChildNodes) { if (vdomEl.___nodeName === "textarea") { vdomEl.___valueInternal = node.value; } else if (virtualizeChildNodes) { - virtualizeChildNodes(node, vdomEl); + virtualizeChildNodes(node, vdomEl, ownerComponent); } return vdomEl; diff --git a/packages/marko/src/runtime/vdom/VFragment.js b/packages/marko/src/runtime/vdom/VFragment.js index 968a3863d3..3d51d35a48 100644 --- a/packages/marko/src/runtime/vdom/VFragment.js +++ b/packages/marko/src/runtime/vdom/VFragment.js @@ -6,9 +6,8 @@ var inherit = require("raptor-util/inherit"); var createFragmentNode = require("./morphdom/fragment").___createFragmentNode; function VFragment(key, ownerComponent, preserve) { - this.___VNode(null /* childCount */); + this.___VNode(null /* childCount */, ownerComponent); this.___key = key; - this.___ownerComponent = ownerComponent; this.___preserve = preserve; } diff --git a/packages/marko/src/runtime/vdom/VNode.js b/packages/marko/src/runtime/vdom/VNode.js index 36874330e5..1374ae577f 100644 --- a/packages/marko/src/runtime/vdom/VNode.js +++ b/packages/marko/src/runtime/vdom/VNode.js @@ -2,17 +2,16 @@ function VNode() {} VNode.prototype = { - ___VNode: function(finalChildCount) { + ___VNode: function(finalChildCount, ownerComponent) { this.___finalChildCount = finalChildCount; this.___childCount = 0; this.___firstChildInternal = null; this.___lastChild = null; this.___parentNode = null; this.___nextSiblingInternal = null; + this.___ownerComponent = ownerComponent; }, - ___ownerComponent: null, - get ___firstChild() { var firstChild = this.___firstChildInternal; diff --git a/packages/marko/src/runtime/vdom/VText.js b/packages/marko/src/runtime/vdom/VText.js index 8918ff39c2..4ced1b8213 100644 --- a/packages/marko/src/runtime/vdom/VText.js +++ b/packages/marko/src/runtime/vdom/VText.js @@ -1,8 +1,8 @@ var VNode = require("./VNode"); var inherit = require("raptor-util/inherit"); -function VText(value) { - this.___VNode(-1 /* no children */); +function VText(value, ownerComponent) { + this.___VNode(-1 /* no children */, ownerComponent); this.___nodeValue = value; } diff --git a/packages/marko/src/runtime/vdom/vdom.js b/packages/marko/src/runtime/vdom/vdom.js index af5f0c5723..27a64dd7af 100644 --- a/packages/marko/src/runtime/vdom/vdom.js +++ b/packages/marko/src/runtime/vdom/vdom.js @@ -9,32 +9,32 @@ var VFragment = require("./VFragment"); var defaultDocument = typeof document != "undefined" && document; var specialHtmlRegexp = /[&<]/; -function virtualizeChildNodes(node, vdomParent) { +function virtualizeChildNodes(node, vdomParent, ownerComponent) { var curChild = node.firstChild; while (curChild) { - vdomParent.___appendChild(virtualize(curChild)); + vdomParent.___appendChild(virtualize(curChild, ownerComponent)); curChild = curChild.nextSibling; } } -function virtualize(node) { +function virtualize(node, ownerComponent) { switch (node.nodeType) { case 1: - return VElement.___virtualize(node, virtualizeChildNodes); + return VElement.___virtualize(node, virtualizeChildNodes, ownerComponent); case 3: - return new VText(node.nodeValue); + return new VText(node.nodeValue, ownerComponent); case 8: - return new VComment(node.nodeValue); + return new VComment(node.nodeValue, ownerComponent); case 11: var vdomDocFragment = new VDocumentFragment(); - virtualizeChildNodes(node, vdomDocFragment); + virtualizeChildNodes(node, vdomDocFragment, ownerComponent); return vdomDocFragment; } } -function virtualizeHTML(html, doc) { +function virtualizeHTML(html, doc, ownerComponent) { if (!specialHtmlRegexp.test(html)) { - return new VText(html); + return new VText(html, ownerComponent); } var container = doc.createElement("body"); @@ -43,7 +43,7 @@ function virtualizeHTML(html, doc) { var curChild = container.firstChild; while (curChild) { - vdomFragment.___appendChild(virtualize(curChild)); + vdomFragment.___appendChild(virtualize(curChild, ownerComponent)); curChild = curChild.nextSibling; } diff --git a/packages/marko/test/api-compiler/fixtures/compileFileForBrowser-callback.js/expected.js b/packages/marko/test/api-compiler/fixtures/compileFileForBrowser-callback.js/expected.js index 9c619fb52c..82df8d6b22 100644 --- a/packages/marko/test/api-compiler/fixtures/compileFileForBrowser-callback.js/expected.js +++ b/packages/marko/test/api-compiler/fixtures/compileFileForBrowser-callback.js/expected.js @@ -1 +1 @@ -"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.default = void 0;var _renderer = _interopRequireDefault(require("marko/src/runtime/components/renderer"));var _vdom = require("marko/src/runtime/vdom");var _registryBrowser = require("marko/src/runtime/components/registry-browser");var _defineComponent = _interopRequireDefault(require("marko/src/runtime/components/defineComponent"));const _marko_template = (0, _vdom.t)(__filename);var _default = _marko_template;exports.default = _default;const _marko_componentType = (0, _registryBrowser.r)("R6GeK_TQ", () => _marko_template),_marko_component = {};_marko_template._ = (0, _renderer.default)(function (input, out, _component, component, state) {out.t("Hello ");out.t(input.name);out.t("!");}, { t: _marko_componentType, i: true }, _marko_component);_marko_template.Component = (0, _defineComponent.default)(_marko_component, _marko_template._); \ No newline at end of file +"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.default = void 0;var _renderer = _interopRequireDefault(require("marko/src/runtime/components/renderer"));var _vdom = require("marko/src/runtime/vdom");var _registryBrowser = require("marko/src/runtime/components/registry-browser");var _defineComponent = _interopRequireDefault(require("marko/src/runtime/components/defineComponent"));const _marko_template = (0, _vdom.t)(__filename);var _default = _marko_template;exports.default = _default;const _marko_componentType = (0, _registryBrowser.r)("R6GeK_TQ", () => _marko_template),_marko_component = {};_marko_template._ = (0, _renderer.default)(function (input, out, _component, component, state) {out.t("Hello ", component);out.t(input.name);out.t("!", component);}, { t: _marko_componentType, i: true }, _marko_component);_marko_template.Component = (0, _defineComponent.default)(_marko_component, _marko_template._); \ No newline at end of file diff --git a/packages/marko/test/api-compiler/fixtures/compileFileForBrowser.js/expected.js b/packages/marko/test/api-compiler/fixtures/compileFileForBrowser.js/expected.js index 60635e9552..db402734e8 100644 --- a/packages/marko/test/api-compiler/fixtures/compileFileForBrowser.js/expected.js +++ b/packages/marko/test/api-compiler/fixtures/compileFileForBrowser.js/expected.js @@ -1 +1 @@ -"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.default = void 0;var _renderer = _interopRequireDefault(require("marko/src/runtime/components/renderer"));var _vdom = require("marko/src/runtime/vdom");var _registryBrowser = require("marko/src/runtime/components/registry-browser");var _defineComponent = _interopRequireDefault(require("marko/src/runtime/components/defineComponent"));const _marko_template = (0, _vdom.t)(__filename);var _default = _marko_template;exports.default = _default;const _marko_componentType = (0, _registryBrowser.r)("73lE6A3Z", () => _marko_template),_marko_component = {};_marko_template._ = (0, _renderer.default)(function (input, out, _component, component, state) {out.t("Hello ");out.t(input.name);out.t("!");}, { t: _marko_componentType, i: true }, _marko_component);_marko_template.Component = (0, _defineComponent.default)(_marko_component, _marko_template._); \ No newline at end of file +"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.default = void 0;var _renderer = _interopRequireDefault(require("marko/src/runtime/components/renderer"));var _vdom = require("marko/src/runtime/vdom");var _registryBrowser = require("marko/src/runtime/components/registry-browser");var _defineComponent = _interopRequireDefault(require("marko/src/runtime/components/defineComponent"));const _marko_template = (0, _vdom.t)(__filename);var _default = _marko_template;exports.default = _default;const _marko_componentType = (0, _registryBrowser.r)("73lE6A3Z", () => _marko_template),_marko_component = {};_marko_template._ = (0, _renderer.default)(function (input, out, _component, component, state) {out.t("Hello ", component);out.t(input.name);out.t("!", component);}, { t: _marko_componentType, i: true }, _marko_component);_marko_template.Component = (0, _defineComponent.default)(_marko_component, _marko_template._); \ No newline at end of file diff --git a/packages/marko/test/api-compiler/fixtures/compileForBrowser-callback.js/expected.js b/packages/marko/test/api-compiler/fixtures/compileForBrowser-callback.js/expected.js index 3cfd034206..5ff0410c73 100644 --- a/packages/marko/test/api-compiler/fixtures/compileForBrowser-callback.js/expected.js +++ b/packages/marko/test/api-compiler/fixtures/compileForBrowser-callback.js/expected.js @@ -1 +1 @@ -"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.default = void 0;var _renderer = _interopRequireDefault(require("marko/src/runtime/components/renderer"));var _vdom = require("marko/src/runtime/vdom");var _registryBrowser = require("marko/src/runtime/components/registry-browser");var _defineComponent = _interopRequireDefault(require("marko/src/runtime/components/defineComponent"));const _marko_template = (0, _vdom.t)(__filename);var _default = _marko_template;exports.default = _default;const _marko_componentType = (0, _registryBrowser.r)("UjcD7_Jz", () => _marko_template),_marko_component = {};_marko_template._ = (0, _renderer.default)(function (input, out, _component, component, state) {out.t("Hello ");out.t(input.name);out.t("!");}, { t: _marko_componentType, i: true }, _marko_component);_marko_template.Component = (0, _defineComponent.default)(_marko_component, _marko_template._); \ No newline at end of file +"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.default = void 0;var _renderer = _interopRequireDefault(require("marko/src/runtime/components/renderer"));var _vdom = require("marko/src/runtime/vdom");var _registryBrowser = require("marko/src/runtime/components/registry-browser");var _defineComponent = _interopRequireDefault(require("marko/src/runtime/components/defineComponent"));const _marko_template = (0, _vdom.t)(__filename);var _default = _marko_template;exports.default = _default;const _marko_componentType = (0, _registryBrowser.r)("UjcD7_Jz", () => _marko_template),_marko_component = {};_marko_template._ = (0, _renderer.default)(function (input, out, _component, component, state) {out.t("Hello ", component);out.t(input.name);out.t("!", component);}, { t: _marko_componentType, i: true }, _marko_component);_marko_template.Component = (0, _defineComponent.default)(_marko_component, _marko_template._); \ No newline at end of file diff --git a/packages/marko/test/api-compiler/fixtures/compileForBrowser.js/expected.js b/packages/marko/test/api-compiler/fixtures/compileForBrowser.js/expected.js index fde588d687..bb10ac2872 100644 --- a/packages/marko/test/api-compiler/fixtures/compileForBrowser.js/expected.js +++ b/packages/marko/test/api-compiler/fixtures/compileForBrowser.js/expected.js @@ -1 +1 @@ -"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.default = void 0;var _renderer = _interopRequireDefault(require("marko/src/runtime/components/renderer"));var _vdom = require("marko/src/runtime/vdom");var _registryBrowser = require("marko/src/runtime/components/registry-browser");var _defineComponent = _interopRequireDefault(require("marko/src/runtime/components/defineComponent"));const _marko_template = (0, _vdom.t)(__filename);var _default = _marko_template;exports.default = _default;const _marko_componentType = (0, _registryBrowser.r)("E0Fkd6Tw", () => _marko_template),_marko_component = {};_marko_template._ = (0, _renderer.default)(function (input, out, _component, component, state) {out.t("Hello ");out.t(input.name);out.t("!");}, { t: _marko_componentType, i: true }, _marko_component);_marko_template.Component = (0, _defineComponent.default)(_marko_component, _marko_template._); \ No newline at end of file +"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.default = void 0;var _renderer = _interopRequireDefault(require("marko/src/runtime/components/renderer"));var _vdom = require("marko/src/runtime/vdom");var _registryBrowser = require("marko/src/runtime/components/registry-browser");var _defineComponent = _interopRequireDefault(require("marko/src/runtime/components/defineComponent"));const _marko_template = (0, _vdom.t)(__filename);var _default = _marko_template;exports.default = _default;const _marko_componentType = (0, _registryBrowser.r)("E0Fkd6Tw", () => _marko_template),_marko_component = {};_marko_template._ = (0, _renderer.default)(function (input, out, _component, component, state) {out.t("Hello ", component);out.t(input.name);out.t("!", component);}, { t: _marko_componentType, i: true }, _marko_component);_marko_template.Component = (0, _defineComponent.default)(_marko_component, _marko_template._); \ No newline at end of file diff --git a/packages/marko/test/compiler/fixtures-html/no-update-multiple/expected.js b/packages/marko/test/compiler/fixtures-html/no-update-multiple/expected.js deleted file mode 100644 index fbd3e9e053..0000000000 --- a/packages/marko/test/compiler/fixtures-html/no-update-multiple/expected.js +++ /dev/null @@ -1,38 +0,0 @@ -"use strict"; - -var marko_template = module.exports = require("marko/src/html").t(__filename), - marko_componentType = "/marko-test$1.0.0/compiler/fixtures-html/no-update-multiple/template.marko", - marko_renderer = require("marko/src/runtime/components/renderer"), - marko_dataMarko = require("marko/src/runtime/html/helpers/data-marko"), - marko_attr = require("marko/src/runtime/html/helpers/attr"); - -require("marko/src/runtime/vdom/preserve-attrs"); - -function render(input, out, __component, component, state) { - var data = input; - - out.w("
"); -} - -marko_template._ = marko_renderer(render, { - ___implicit: true, - ___type: marko_componentType - }); - -marko_template.meta = { - id: "/marko-test$1.0.0/compiler/fixtures-html/no-update-multiple/template.marko" - }; diff --git a/packages/marko/test/compiler/fixtures-html/no-update/expected.js b/packages/marko/test/compiler/fixtures-html/no-update/expected.js deleted file mode 100644 index ddb8264dfc..0000000000 --- a/packages/marko/test/compiler/fixtures-html/no-update/expected.js +++ /dev/null @@ -1,31 +0,0 @@ -"use strict"; - -var marko_template = module.exports = require("marko/src/html").t(__filename), - marko_componentType = "/marko-test$1.0.0/compiler/fixtures-html/no-update/template.marko", - marko_renderer = require("marko/src/runtime/components/renderer"), - marko_dataMarko = require("marko/src/runtime/html/helpers/data-marko"), - marko_attr = require("marko/src/runtime/html/helpers/attr"); - -require("marko/src/runtime/vdom/preserve-attrs"); - -function render(input, out, __component, component, state) { - var data = input; - - out.w(""); -} - -marko_template._ = marko_renderer(render, { - ___implicit: true, - ___type: marko_componentType - }); - -marko_template.meta = { - id: "/marko-test$1.0.0/compiler/fixtures-html/no-update/template.marko" - }; diff --git a/packages/translator-default/src/text/index[vdom].js b/packages/translator-default/src/text/index[vdom].js index 6b4b8e3f29..4f971de312 100644 --- a/packages/translator-default/src/text/index[vdom].js +++ b/packages/translator-default/src/text/index[vdom].js @@ -7,6 +7,6 @@ export default function(path) { const { node } = path; path.replaceWith( - withPreviousLocation(write("t", t.stringLiteral(decode(node.value))), node) + withPreviousLocation(write("t", t.stringLiteral(decode(node.value)), t.identifier("component")), node) ); } diff --git a/packages/translator-default/test/fixtures/at-tag-inside-if-tag/vdom-expected.js b/packages/translator-default/test/fixtures/at-tag-inside-if-tag/vdom-expected.js index 1f72dd12d7..ac1f807001 100644 --- a/packages/translator-default/test/fixtures/at-tag-inside-if-tag/vdom-expected.js +++ b/packages/translator-default/test/fixtures/at-tag-inside-if-tag/vdom-expected.js @@ -20,7 +20,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, _thing = { "x": 1, "renderBody": out => { - out.t("Hello"); + out.t("Hello", component); } }; } diff --git a/packages/translator-default/test/fixtures/at-tags-dynamic-tag-parent/vdom-expected.js b/packages/translator-default/test/fixtures/at-tags-dynamic-tag-parent/vdom-expected.js index d33c42f5e7..8f76e2cc28 100644 --- a/packages/translator-default/test/fixtures/at-tags-dynamic-tag-parent/vdom-expected.js +++ b/packages/translator-default/test/fixtures/at-tags-dynamic-tag-parent/vdom-expected.js @@ -14,17 +14,17 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, "header": { "class": "my-header", "renderBody": out => { - out.t("Header content"); + out.t("Header content", component); } }, "footer": { "class": "my-footer", "renderBody": out => { - out.t("Footer content"); + out.t("Footer content", component); } } }), out => { - out.t("Body content"); + out.t("Body content", component); }, null, null, _component, "0"); }, { t: _marko_componentType, diff --git a/packages/translator-default/test/fixtures/at-tags-dynamic/vdom-expected.js b/packages/translator-default/test/fixtures/at-tags-dynamic/vdom-expected.js index b7f59c8645..155f59ec2c 100644 --- a/packages/translator-default/test/fixtures/at-tags-dynamic/vdom-expected.js +++ b/packages/translator-default/test/fixtures/at-tags-dynamic/vdom-expected.js @@ -27,7 +27,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, color }, "renderBody": out => { - out.t("foo"); + out.t("foo", component); } }); } else { @@ -36,7 +36,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, color }, "renderBody": out => { - out.t("bar"); + out.t("bar", component); } }); } @@ -84,7 +84,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, _rows2.push({ "row": -1, "renderBody": out => { - out.t("Outside"); + out.t("Outside", component); } }); diff --git a/packages/translator-default/test/fixtures/at-tags/vdom-expected.js b/packages/translator-default/test/fixtures/at-tags/vdom-expected.js index 2683a60076..2165a5ac27 100644 --- a/packages/translator-default/test/fixtures/at-tags/vdom-expected.js +++ b/packages/translator-default/test/fixtures/at-tags/vdom-expected.js @@ -17,7 +17,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, _hello_tag({ "foo": { "renderBody": out => { - out.t("Foo!"); + out.t("Foo!", component); } } }, out, _component, "0"); diff --git a/packages/translator-default/test/fixtures/attr-class/vdom-expected.js b/packages/translator-default/test/fixtures/attr-class/vdom-expected.js index d515342f8b..80915d28c5 100644 --- a/packages/translator-default/test/fixtures/attr-class/vdom-expected.js +++ b/packages/translator-default/test/fixtures/attr-class/vdom-expected.js @@ -54,7 +54,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, d }], "renderBody": out => { - out.t("Hello"); + out.t("Hello", component); } } }), null, null, null, _component, "5"); diff --git a/packages/translator-default/test/fixtures/attr-style/vdom-expected.js b/packages/translator-default/test/fixtures/attr-style/vdom-expected.js index 70ed142279..3fb199638c 100644 --- a/packages/translator-default/test/fixtures/attr-style/vdom-expected.js +++ b/packages/translator-default/test/fixtures/attr-style/vdom-expected.js @@ -56,7 +56,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, color: "green" }, "renderBody": out => { - out.t("Hello"); + out.t("Hello", component); } } }), null, null, null, _component, "6"); diff --git a/packages/translator-default/test/fixtures/cdata/vdom-expected.js b/packages/translator-default/test/fixtures/cdata/vdom-expected.js index 36e85ca551..4ae594aea0 100644 --- a/packages/translator-default/test/fixtures/cdata/vdom-expected.js +++ b/packages/translator-default/test/fixtures/cdata/vdom-expected.js @@ -10,9 +10,9 @@ const _marko_componentType = _marko_registerComponent("Yf6hG3qo", () => _marko_t _marko_template._ = _marko_renderer(function (input, out, _component, component, state) { out.be("div", null, "0", component, null, 0); - out.t("Here is a CDATA section: "); + out.t("Here is a CDATA section: ", component); out.t(" < > & "); - out.t(" with all kinds of unescaped text."); + out.t(" with all kinds of unescaped text.", component); out.ee(); }, { t: _marko_componentType, diff --git a/packages/translator-default/test/fixtures/custom-tag-parameters/vdom-expected.js b/packages/translator-default/test/fixtures/custom-tag-parameters/vdom-expected.js index 39f6780e05..716ec25e59 100644 --- a/packages/translator-default/test/fixtures/custom-tag-parameters/vdom-expected.js +++ b/packages/translator-default/test/fixtures/custom-tag-parameters/vdom-expected.js @@ -20,9 +20,9 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, }) => { out.be("div", null, "1", component, null, 0); out.t(a); - out.t(" "); + out.t(" ", component); out.t(b); - out.t(" "); + out.t(" ", component); out.t(c); out.ee(); } diff --git a/packages/translator-default/test/fixtures/custom-tag-render-body/vdom-expected.js b/packages/translator-default/test/fixtures/custom-tag-render-body/vdom-expected.js index b09283cf03..ffb75c7b13 100644 --- a/packages/translator-default/test/fixtures/custom-tag-render-body/vdom-expected.js +++ b/packages/translator-default/test/fixtures/custom-tag-render-body/vdom-expected.js @@ -17,7 +17,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, _testBodyFunction_tag({ "name": "World", "renderBody": out => { - out.t("This is the body content"); + out.t("This is the body content", component); } }, out, _component, "0"); }, { diff --git a/packages/translator-default/test/fixtures/data-marko-implicit-component/vdom-expected.js b/packages/translator-default/test/fixtures/data-marko-implicit-component/vdom-expected.js index 0622e98ed5..088fa9a5f8 100644 --- a/packages/translator-default/test/fixtures/data-marko-implicit-component/vdom-expected.js +++ b/packages/translator-default/test/fixtures/data-marko-implicit-component/vdom-expected.js @@ -15,7 +15,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, }, "0", component, null, 0, { noupdate: ["class"] }); - out.t("Hello "); + out.t("Hello ", component); out.t(input.name); out.ee(); }, { diff --git a/packages/translator-default/test/fixtures/data-migration/vdom-expected.js b/packages/translator-default/test/fixtures/data-migration/vdom-expected.js index cdd704fa95..50646a39d1 100644 --- a/packages/translator-default/test/fixtures/data-migration/vdom-expected.js +++ b/packages/translator-default/test/fixtures/data-migration/vdom-expected.js @@ -17,13 +17,13 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, _test_tag({ "class": input.class, "renderBody": (out, data) => { - out.t("Hello "); + out.t("Hello ", component); out.t(data.name); } }, out, _component, "0"); out.be("div", null, "1", component, null, 0); - out.t("Hello "); + out.t("Hello ", component); out.t(input.name); out.be("span", null, "2", component, null, 0); @@ -33,13 +33,13 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, console.log(data); }; - out.t("Hello "); + out.t("Hello ", component); out.t(input); out.ee(); if (true) { const data = "bar"; - out.t("Hello "); + out.t("Hello ", component); out.t(data); } diff --git a/packages/translator-default/test/fixtures/declaration/vdom-expected.js b/packages/translator-default/test/fixtures/declaration/vdom-expected.js index dd4b1e4aa9..cef2b75a24 100644 --- a/packages/translator-default/test/fixtures/declaration/vdom-expected.js +++ b/packages/translator-default/test/fixtures/declaration/vdom-expected.js @@ -11,7 +11,7 @@ const _marko_componentType = _marko_registerComponent("YGIRzvLP", () => _marko_t _marko_template._ = _marko_renderer(function (input, out, _component, component, state) { out.be("contact-info", null, "0", component, null, 0); out.be("name", null, "1", component, null, 0); - out.t("Hello World"); + out.t("Hello World", component); out.ee(); out.ee(); }, { diff --git a/packages/translator-default/test/fixtures/doctype/vdom-expected.js b/packages/translator-default/test/fixtures/doctype/vdom-expected.js index 903d2a8152..d03d1d1ded 100644 --- a/packages/translator-default/test/fixtures/doctype/vdom-expected.js +++ b/packages/translator-default/test/fixtures/doctype/vdom-expected.js @@ -25,14 +25,14 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, out.be("html", null, "0", component, null, 0); out.be("head", null, "1", component, null, 0); out.be("title", null, "2", component, null, 0); - out.t("Title of the document"); + out.t("Title of the document", component); out.ee(); out.ee(); out.be("body", null, "3", component, null, 0); _componentGlobals_tag({}, out, _component, "4"); - out.t("The content of the document......"); + out.t("The content of the document......", component); _initComponents_tag({}, out, _component, "5"); diff --git a/packages/translator-default/test/fixtures/entities/vdom-expected.js b/packages/translator-default/test/fixtures/entities/vdom-expected.js index 9e6ae7f8f3..3cf8cc53e4 100644 --- a/packages/translator-default/test/fixtures/entities/vdom-expected.js +++ b/packages/translator-default/test/fixtures/entities/vdom-expected.js @@ -9,7 +9,7 @@ const _marko_componentType = _marko_registerComponent("UkPdJEa2", () => _marko_t _marko_component = {}; _marko_template._ = _marko_renderer(function (input, out, _component, component, state) { - out.t("Hello John & Suzy Invalid Entity: &b ; Valid Numeric Entity: \" Valid Hexadecimal Entity: \xA2"); + out.t("Hello John & Suzy Invalid Entity: &b ; Valid Numeric Entity: \" Valid Hexadecimal Entity: \xA2", component); }, { t: _marko_componentType, i: true diff --git a/packages/translator-default/test/fixtures/error-repeated-closing-dynamic-tag/vdom-expected.js b/packages/translator-default/test/fixtures/error-repeated-closing-dynamic-tag/vdom-expected.js index 444eabd595..9cd9a02cb6 100644 --- a/packages/translator-default/test/fixtures/error-repeated-closing-dynamic-tag/vdom-expected.js +++ b/packages/translator-default/test/fixtures/error-repeated-closing-dynamic-tag/vdom-expected.js @@ -11,7 +11,7 @@ const _marko_componentType = _marko_registerComponent("bnC1CPSF", () => _marko_t _marko_template._ = _marko_renderer(function (input, out, _component, component, state) { _marko_dynamic_tag(out, input.x, null, out => { - out.t("Hello"); + out.t("Hello", component); }, null, null, _component, "0"); }, { t: _marko_componentType, diff --git a/packages/translator-default/test/fixtures/for-tag/vdom-expected.js b/packages/translator-default/test/fixtures/for-tag/vdom-expected.js index 5c684d2a85..4ed48bf5a9 100644 --- a/packages/translator-default/test/fixtures/for-tag/vdom-expected.js +++ b/packages/translator-default/test/fixtures/for-tag/vdom-expected.js @@ -16,7 +16,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, const _keyScope = `[${i}]`; out.be("div", null, "0" + _keyScope, component, null, 0); out.t(i); - out.t(": "); + out.t(": ", component); out.t(val); out.ee(); out.be("div", null, "1" + _keyScope, component, 0, 0); @@ -30,7 +30,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, const _keyScope2 = `[${key}]`; out.be("div", null, "3" + _keyScope2, component, null, 0); out.t(key); - out.t(": "); + out.t(": ", component); out.t(val); out.ee(); out.be("div", null, "4" + _keyScope2, component, 0, 0); @@ -59,7 +59,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, _keyScope4 = `[${_keyValue}]`; out.be("div", null, _keyValue, component, null, 0); out.t(i); - out.t(": "); + out.t(": ", component); out.t(val); out.ee(); out.be("div", null, "9" + _keyScope4, component, 0, 0); @@ -76,7 +76,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, const _keyValue2 = `@${i}`; out.be("div", null, _keyValue2, component, null, 0); out.t(list.length); - out.t(": "); + out.t(": ", component); out.t(val); out.ee(); } @@ -87,7 +87,7 @@ _marko_template._ = _marko_renderer(function (input, out, _component, component, _keyScope5 = `[${_keyValue3}]`; out.be("div", null, _keyValue3, component, null, 0); out.t(key); - out.t(": "); + out.t(": ", component); out.t(val); out.ee(); out.be("div", null, "10" + _keyScope5, component, 0, 0); diff --git a/packages/translator-default/test/fixtures/hello-dynamic/vdom-expected.js b/packages/translator-default/test/fixtures/hello-dynamic/vdom-expected.js index 19d99c06d6..f0b86dfe5d 100644 --- a/packages/translator-default/test/fixtures/hello-dynamic/vdom-expected.js +++ b/packages/translator-default/test/fixtures/hello-dynamic/vdom-expected.js @@ -9,13 +9,13 @@ const _marko_componentType = _marko_registerComponent("5nWTrVOu", () => _marko_t _marko_component = {}; _marko_template._ = _marko_renderer(function (input, out, _component, component, state) { - out.t("Hello "); + out.t("Hello ", component); out.t(input.name); - out.t("! Hello "); + out.t("! Hello ", component); out.h(input.name); - out.t("! Hello "); + out.t("! Hello ", component); out.h(input.missing); - out.t("!"); + out.t("!", component); }, { t: _marko_componentType, i: true diff --git a/packages/translator-default/test/fixtures/html-entity/vdom-expected.js b/packages/translator-default/test/fixtures/html-entity/vdom-expected.js index 2e67275ae3..0d1dd6cfbc 100644 --- a/packages/translator-default/test/fixtures/html-entity/vdom-expected.js +++ b/packages/translator-default/test/fixtures/html-entity/vdom-expected.js @@ -10,7 +10,7 @@ const _marko_componentType = _marko_registerComponent("w5F2RVUv", () => _marko_t _marko_template._ = _marko_renderer(function (input, out, _component, component, state) { out.be("div", null, "0", component, null, 0); - out.t("