marko 4.26.3 → 4.27.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/README.md +1 -1
- package/bin/markoc.js +15 -15
- package/dist/compiler/ast/CustomTag.js +2 -2
- package/dist/core-tags/components/TransformHelper/handleLegacyBind.js +0 -4
- package/dist/core-tags/core/await/renderer.js +0 -4
- package/dist/core-tags/migrate/all-tags/body-only-if.js +0 -1
- package/dist/core-tags/migrate/all-tags/control-flow-directives.js +0 -1
- package/dist/core-tags/migrate/all-tags/dynamic-attributes.js +1 -2
- package/dist/core-tags/migrate/all-tags/include-directive.js +0 -2
- package/dist/core-tags/migrate/all-tags/legacy-nested-tag.js +0 -2
- package/dist/core-tags/migrate/all-tags/marko-init.js +0 -2
- package/dist/core-tags/migrate/all-tags/modifier-key.js +0 -2
- package/dist/core-tags/migrate/all-tags/ref.js +1 -3
- package/dist/core-tags/migrate/all-tags/w-bind.js +0 -2
- package/dist/core-tags/migrate/all-tags/w-body.js +0 -2
- package/dist/core-tags/migrate/all-tags/w-config.js +0 -2
- package/dist/core-tags/migrate/all-tags/w-for.js +0 -3
- package/dist/core-tags/migrate/all-tags/w-id.js +1 -4
- package/dist/core-tags/migrate/all-tags/w-on.js +1 -4
- package/dist/core-tags/migrate/all-tags/w-preserve-attrs.js +0 -2
- package/dist/core-tags/migrate/all-tags/w-preserve.js +1 -3
- package/dist/core-tags/migrate/all-tags/widget-in-attrs.js +2 -11
- package/dist/core-tags/migrate/all-templates/non-standard-template-literals.js +0 -4
- package/dist/core-tags/migrate/all-templates/render-calls.js +0 -2
- package/dist/core-tags/migrate/assign-tag.js +0 -2
- package/dist/core-tags/migrate/async-fragment-tag.js +0 -2
- package/dist/core-tags/migrate/async-fragments-tag.js +0 -2
- package/dist/core-tags/migrate/await-tag.js +0 -7
- package/dist/core-tags/migrate/class-tag.js +0 -2
- package/dist/core-tags/migrate/component-globals-tag.js +0 -2
- package/dist/core-tags/migrate/for-tag.js +0 -2
- package/dist/core-tags/migrate/include-tag.js +0 -1
- package/dist/core-tags/migrate/invoke-tag.js +0 -2
- package/dist/core-tags/migrate/layout-placeholder-tag.js +0 -1
- package/dist/core-tags/migrate/layout-put-tag.js +0 -1
- package/dist/core-tags/migrate/layout-use-tag.js +0 -1
- package/dist/core-tags/migrate/macro-body-tag.js +0 -2
- package/dist/core-tags/migrate/macro-tag.js +0 -2
- package/dist/core-tags/migrate/unless-tag.js +0 -1
- package/dist/core-tags/migrate/var-tag.js +0 -2
- package/dist/node_modules/@internal/components-define-widget-legacy/index-browser.js +0 -10
- package/dist/node_modules/@internal/components-entry-legacy/index-browser.js +0 -4
- package/dist/runtime/RenderResult.js +0 -3
- package/dist/runtime/components/Component.js +0 -6
- package/dist/runtime/components/ComponentDef.js +0 -3
- package/dist/runtime/components/ServerComponent.js +0 -4
- package/dist/runtime/components/legacy/defineComponent-legacy.js +0 -3
- package/dist/runtime/components/legacy/defineRenderer-legacy.js +1 -6
- package/dist/runtime/components/legacy/index.js +3 -1
- package/dist/runtime/helpers/for-of.js +3 -1
- package/dist/runtime/html/helpers/attr.js +0 -4
- package/dist/runtime/html/helpers/attrs.js +0 -2
- package/dist/runtime/html/helpers/merge-attrs.js +0 -3
- package/dist/runtime/vdom/VElement.js +0 -3
- package/dist/runtime/vdom/helpers/attrs.js +0 -2
- package/dist/taglib/taglib-loader/loadTagFromProps.js +15 -0
- package/docs/10-awesome-marko-features.md +1 -1
- package/docs/body-content.md +3 -3
- package/docs/class-components.md +6 -6
- package/docs/express.md +1 -1
- package/docs/fastify.md +4 -4
- package/docs/hapi.md +3 -3
- package/docs/http.md +1 -1
- package/docs/huncwot.md +1 -1
- package/docs/installing.md +2 -2
- package/docs/koa.md +2 -2
- package/docs/lasso.md +1 -1
- package/docs/marko-4-upgrade.md +1 -1
- package/docs/marko-v4.md +4 -4
- package/docs/marko-vs-react.md +2 -2
- package/docs/rendering.md +6 -6
- package/docs/server-side-rendering.md +3 -3
- package/docs/webpack.md +16 -16
- package/docs/why-is-marko-fast.md +3 -3
- package/package.json +1 -1
- package/src/compiler/Builder.js +13 -13
- package/src/compiler/CodeGenerator.js +2 -2
- package/src/compiler/CodeWriter.js +1 -1
- package/src/compiler/CompileContext.js +30 -30
- package/src/compiler/Compiler.js +3 -3
- package/src/compiler/HtmlJsParser.js +4 -4
- package/src/compiler/Migrator.js +2 -2
- package/src/compiler/Normalizer.js +5 -5
- package/src/compiler/Parser.js +11 -11
- package/src/compiler/Walker.js +1 -1
- package/src/compiler/ast/ArrayExpression.js +1 -1
- package/src/compiler/ast/BinaryExpression.js +1 -1
- package/src/compiler/ast/ConditionalExpression.js +1 -1
- package/src/compiler/ast/CustomTag.js +14 -14
- package/src/compiler/ast/Declaration.js +2 -2
- package/src/compiler/ast/DocumentType.js +2 -2
- package/src/compiler/ast/ForEach.js +1 -1
- package/src/compiler/ast/ForEachProp.js +1 -1
- package/src/compiler/ast/ForRange.js +1 -1
- package/src/compiler/ast/HtmlAttribute/html/generateCode.js +4 -4
- package/src/compiler/ast/HtmlAttribute/vdom/generateCode.js +2 -2
- package/src/compiler/ast/HtmlAttributeCollection.js +3 -3
- package/src/compiler/ast/HtmlComment.js +1 -1
- package/src/compiler/ast/HtmlElement/html/EndTag.js +1 -1
- package/src/compiler/ast/HtmlElement/html/StartTag.js +3 -3
- package/src/compiler/ast/HtmlElement/html/generateCode.js +5 -5
- package/src/compiler/ast/HtmlElement/index.js +1 -1
- package/src/compiler/ast/HtmlElement/vdom/HtmlElementVDOM.js +1 -1
- package/src/compiler/ast/HtmlElement/vdom/generateCode.js +3 -3
- package/src/compiler/ast/If.js +1 -1
- package/src/compiler/ast/LogicalExpression.js +1 -1
- package/src/compiler/ast/MemberExpression.js +1 -1
- package/src/compiler/ast/NewExpression.js +1 -1
- package/src/compiler/ast/Node.js +4 -4
- package/src/compiler/ast/ObjectExpression.js +2 -2
- package/src/compiler/ast/Property.js +1 -1
- package/src/compiler/ast/SequenceExpression.js +1 -1
- package/src/compiler/ast/TemplateLiteral.js +1 -1
- package/src/compiler/ast/TemplateRoot.js +3 -3
- package/src/compiler/ast/Text/index.js +1 -1
- package/src/compiler/ast/UnaryExpression.js +1 -1
- package/src/compiler/ast/UpdateExpression.js +1 -1
- package/src/compiler/config.js +1 -1
- package/src/compiler/index.js +5 -5
- package/src/compiler/modules.js +2 -2
- package/src/compiler/util/UniqueVars.js +4 -4
- package/src/compiler/util/convertRawJavaScriptAst.js +1 -1
- package/src/compiler/util/javaScriptReservedWords.js +1 -1
- package/src/compiler/util/macros.js +1 -1
- package/src/compiler/util/mergeProps.js +3 -3
- package/src/compiler/util/parseJavaScriptArgs.js +1 -1
- package/src/compiler/util/parseJavaScriptParams.js +1 -1
- package/src/compiler/util/parseRawJavaScriptAst.js +1 -1
- package/src/compiler/util/removeComments.js +6 -6
- package/src/compiler/util/tokenizer.js +3 -3
- package/src/compiler/util/vdom/VDOMOptimizer.js +2 -2
- package/src/core-tags/cache/cached-fragment-tag.js +2 -2
- package/src/core-tags/cache/default-cache-manager.js +2 -2
- package/src/core-tags/components/TransformHelper/ComponentArgsCompiler.js +3 -3
- package/src/core-tags/components/TransformHelper/assignComponentId.js +3 -3
- package/src/core-tags/components/TransformHelper/convertToComponent.js +4 -4
- package/src/core-tags/components/TransformHelper/getComponentFiles.js +1 -1
- package/src/core-tags/components/TransformHelper/handleComponentEvents.js +3 -3
- package/src/core-tags/components/TransformHelper/handleComponentPreserve.js +7 -7
- package/src/core-tags/components/TransformHelper/handleLegacyBind.js +2 -8
- package/src/core-tags/components/TransformHelper/handleRootNodes.js +14 -14
- package/src/core-tags/components/TransformHelper/handleScopedAttrs.js +1 -1
- package/src/core-tags/components/TransformHelper/index.js +1 -1
- package/src/core-tags/components/component-tag.js +1 -1
- package/src/core-tags/components/components-transformer.js +2 -2
- package/src/core-tags/components/util/generateRegisterComponentCode.js +2 -2
- package/src/core-tags/components/widget-types-tag.js +2 -2
- package/src/core-tags/core/await/AsyncValue.js +1 -1
- package/src/core-tags/core/await/renderer.js +3 -12
- package/src/core-tags/core/await/reorderer-renderer.js +1 -1
- package/src/core-tags/core/core-transformer.js +5 -5
- package/src/core-tags/core/html-comment-tag.js +1 -1
- package/src/core-tags/core/import-tag.js +1 -1
- package/src/core-tags/core/util/parseImport.js +8 -8
- package/src/core-tags/html/normalize-script-text.js +1 -1
- package/src/core-tags/migrate/all-tags/body-only-if.js +4 -5
- package/src/core-tags/migrate/all-tags/control-flow-directives.js +2 -5
- package/src/core-tags/migrate/all-tags/dynamic-attributes.js +1 -4
- package/src/core-tags/migrate/all-tags/include-directive.js +0 -4
- package/src/core-tags/migrate/all-tags/index.js +2 -2
- package/src/core-tags/migrate/all-tags/legacy-nested-tag.js +0 -5
- package/src/core-tags/migrate/all-tags/marko-init.js +2 -8
- package/src/core-tags/migrate/all-tags/modifier-key.js +1 -7
- package/src/core-tags/migrate/all-tags/params.js +1 -1
- package/src/core-tags/migrate/all-tags/ref.js +1 -5
- package/src/core-tags/migrate/all-tags/w-bind.js +8 -12
- package/src/core-tags/migrate/all-tags/w-body.js +3 -7
- package/src/core-tags/migrate/all-tags/w-config.js +1 -5
- package/src/core-tags/migrate/all-tags/w-for.js +1 -8
- package/src/core-tags/migrate/all-tags/w-id.js +1 -8
- package/src/core-tags/migrate/all-tags/w-on.js +2 -9
- package/src/core-tags/migrate/all-tags/w-preserve-attrs.js +1 -5
- package/src/core-tags/migrate/all-tags/w-preserve.js +3 -7
- package/src/core-tags/migrate/all-tags/widget-in-attrs.js +4 -17
- package/src/core-tags/migrate/all-templates/index.js +2 -2
- package/src/core-tags/migrate/all-templates/non-standard-template-literals.js +6 -12
- package/src/core-tags/migrate/all-templates/render-calls.js +4 -8
- package/src/core-tags/migrate/all-templates/widget-data-is-state.js +2 -2
- package/src/core-tags/migrate/all-templates/widget-get-template-data.js +2 -2
- package/src/core-tags/migrate/assign-tag.js +2 -6
- package/src/core-tags/migrate/async-fragment-tag.js +2 -6
- package/src/core-tags/migrate/async-fragments-tag.js +0 -4
- package/src/core-tags/migrate/await-tag.js +8 -23
- package/src/core-tags/migrate/class-tag.js +0 -4
- package/src/core-tags/migrate/component-globals-tag.js +0 -4
- package/src/core-tags/migrate/for-tag.js +12 -16
- package/src/core-tags/migrate/include-tag.js +2 -5
- package/src/core-tags/migrate/invoke-tag.js +2 -6
- package/src/core-tags/migrate/layout-placeholder-tag.js +0 -3
- package/src/core-tags/migrate/layout-put-tag.js +0 -3
- package/src/core-tags/migrate/layout-use-tag.js +0 -3
- package/src/core-tags/migrate/macro-body-tag.js +0 -5
- package/src/core-tags/migrate/macro-tag.js +5 -10
- package/src/core-tags/migrate/unless-tag.js +0 -3
- package/src/core-tags/migrate/util/addIdScopedAttr.js +1 -1
- package/src/core-tags/migrate/util/import-tag.js +6 -6
- package/src/core-tags/migrate/util/parseFor.js +20 -20
- package/src/core-tags/migrate/util/renderCallToDynamicTag.js +7 -7
- package/src/core-tags/migrate/var-tag.js +4 -8
- package/src/express.js +1 -1
- package/src/hot-reload.js +3 -3
- package/src/node-require/index.js +1 -1
- package/src/node_modules/@internal/components-define-widget-legacy/index-browser.js +4 -55
- package/src/node_modules/@internal/components-entry-legacy/index-browser.js +0 -10
- package/src/runtime/RenderResult.js +3 -16
- package/src/runtime/components/Component.js +2 -23
- package/src/runtime/components/ComponentDef.js +2 -8
- package/src/runtime/components/ComponentsContext.js +1 -1
- package/src/runtime/components/ServerComponent.js +0 -6
- package/src/runtime/components/State.js +2 -2
- package/src/runtime/components/attach-detach.js +1 -1
- package/src/runtime/components/dom-data.js +1 -1
- package/src/runtime/components/legacy/defineComponent-legacy.js +0 -5
- package/src/runtime/components/legacy/defineRenderer-legacy.js +1 -16
- package/src/runtime/components/legacy/dependencies/index.js +10 -10
- package/src/runtime/components/legacy/index.js +5 -0
- package/src/runtime/components/legacy/renderer-legacy.js +1 -1
- package/src/runtime/components/update-manager.js +1 -1
- package/src/runtime/dom-insert.js +1 -1
- package/src/runtime/helpers/_weak-map.js +1 -1
- package/src/runtime/helpers/bind-component.js +1 -1
- package/src/runtime/helpers/for-of.js +1 -6
- package/src/runtime/html/AsyncStream.js +5 -5
- package/src/runtime/html/BufferedWriter.js +1 -1
- package/src/runtime/html/StringWriter.js +1 -1
- package/src/runtime/html/helpers/attr.js +0 -9
- package/src/runtime/html/helpers/attrs.js +0 -6
- package/src/runtime/html/helpers/merge-attrs.js +0 -8
- package/src/runtime/html/index.js +1 -1
- package/src/runtime/renderable.js +1 -1
- package/src/runtime/vdom/AsyncVDOMBuilder.js +2 -2
- package/src/runtime/vdom/VComment.js +1 -1
- package/src/runtime/vdom/VComponent.js +1 -1
- package/src/runtime/vdom/VDocumentFragment.js +1 -1
- package/src/runtime/vdom/VElement.js +4 -11
- package/src/runtime/vdom/VFragment.js +1 -1
- package/src/runtime/vdom/VNode.js +1 -1
- package/src/runtime/vdom/VText.js +1 -1
- package/src/runtime/vdom/helpers/attrs.js +0 -7
- package/src/runtime/vdom/index.js +1 -1
- package/src/runtime/vdom/morphdom/fragment.js +1 -1
- package/src/runtime/vdom/morphdom/specialElHandlers.js +1 -1
- package/src/taglib/taglib-finder/index.js +5 -5
- package/src/taglib/taglib-loader/Tag.js +8 -8
- package/src/taglib/taglib-loader/Taglib.js +1 -1
- package/src/taglib/taglib-loader/loadAttributeFromProps.js +1 -1
- package/src/taglib/taglib-loader/loadTagFromProps.js +29 -14
- package/src/taglib/taglib-loader/loadTaglibFromProps.js +9 -9
- package/src/taglib/taglib-loader/scanTagsDir.js +6 -6
- package/src/taglib/taglib-lookup/TaglibLookup.js +8 -8
package/README.md
CHANGED
package/bin/markoc.js
CHANGED
|
@@ -42,7 +42,7 @@ markoCompiler.defaultOptions.checkUpToDate = false;
|
|
|
42
42
|
var mmOptions = {
|
|
43
43
|
matchBase: true,
|
|
44
44
|
dot: true,
|
|
45
|
-
flipNegate: true
|
|
45
|
+
flipNegate: true,
|
|
46
46
|
};
|
|
47
47
|
|
|
48
48
|
function relPath(path) {
|
|
@@ -55,41 +55,41 @@ var args = require("argly")
|
|
|
55
55
|
.createParser({
|
|
56
56
|
"--help": {
|
|
57
57
|
type: "boolean",
|
|
58
|
-
description: "Show this help message"
|
|
58
|
+
description: "Show this help message",
|
|
59
59
|
},
|
|
60
60
|
"--files --file -f *": {
|
|
61
61
|
type: "string[]",
|
|
62
|
-
description: "A set of directories or files to compile"
|
|
62
|
+
description: "A set of directories or files to compile",
|
|
63
63
|
},
|
|
64
64
|
"--ignore -i": {
|
|
65
65
|
type: "string[]",
|
|
66
|
-
description: 'An ignore rule (default: --ignore "/node_modules" ".*")'
|
|
66
|
+
description: 'An ignore rule (default: --ignore "/node_modules" ".*")',
|
|
67
67
|
},
|
|
68
68
|
"--clean -c": {
|
|
69
69
|
type: "boolean",
|
|
70
|
-
description: "Clean all of the *.marko.js files"
|
|
70
|
+
description: "Clean all of the *.marko.js files",
|
|
71
71
|
},
|
|
72
72
|
"--force": {
|
|
73
73
|
type: "boolean",
|
|
74
|
-
description: "Force template recompilation even if unchanged"
|
|
74
|
+
description: "Force template recompilation even if unchanged",
|
|
75
75
|
},
|
|
76
76
|
"--paths -p": {
|
|
77
77
|
type: "string[]",
|
|
78
78
|
description:
|
|
79
|
-
"Additional directories to add to the Node.js module search path"
|
|
79
|
+
"Additional directories to add to the Node.js module search path",
|
|
80
80
|
},
|
|
81
81
|
"--quiet -q": {
|
|
82
82
|
type: "boolean",
|
|
83
|
-
description: "Only print warnings and errors"
|
|
83
|
+
description: "Only print warnings and errors",
|
|
84
84
|
},
|
|
85
85
|
"--vdom -V": {
|
|
86
86
|
type: "boolean",
|
|
87
|
-
description: "VDOM output"
|
|
87
|
+
description: "VDOM output",
|
|
88
88
|
},
|
|
89
89
|
"--version -v": {
|
|
90
90
|
type: "boolean",
|
|
91
|
-
description: "Print markoc and marko compiler versions to the console"
|
|
92
|
-
}
|
|
91
|
+
description: "Print markoc and marko compiler versions to the console",
|
|
92
|
+
},
|
|
93
93
|
})
|
|
94
94
|
.usage("Usage: $0 <pattern> [options]")
|
|
95
95
|
.example("Compile a single template", "$0 template.marko")
|
|
@@ -141,7 +141,7 @@ var compileOptions = {
|
|
|
141
141
|
output: output,
|
|
142
142
|
browser: isForBrowser,
|
|
143
143
|
compilerType: "markoc",
|
|
144
|
-
compilerVersion: markoPkgVersion || markocPkgVersion
|
|
144
|
+
compilerVersion: markoPkgVersion || markocPkgVersion,
|
|
145
145
|
};
|
|
146
146
|
|
|
147
147
|
var force = args.force;
|
|
@@ -240,7 +240,7 @@ function walk(files, options, done) {
|
|
|
240
240
|
done(null);
|
|
241
241
|
}
|
|
242
242
|
}
|
|
243
|
-
}
|
|
243
|
+
},
|
|
244
244
|
};
|
|
245
245
|
|
|
246
246
|
function doWalk(dir) {
|
|
@@ -314,7 +314,7 @@ if (args.clean) {
|
|
|
314
314
|
context.endAsync();
|
|
315
315
|
});
|
|
316
316
|
}
|
|
317
|
-
}
|
|
317
|
+
},
|
|
318
318
|
},
|
|
319
319
|
function () {
|
|
320
320
|
if (deleteCount === 0) {
|
|
@@ -392,7 +392,7 @@ if (args.clean) {
|
|
|
392
392
|
) {
|
|
393
393
|
compile(file, context);
|
|
394
394
|
}
|
|
395
|
-
}
|
|
395
|
+
},
|
|
396
396
|
},
|
|
397
397
|
function (err) {
|
|
398
398
|
if (err) {
|
|
@@ -506,8 +506,8 @@ class CustomTag extends HtmlElement {
|
|
|
506
506
|
return builder.property(builder.literal(propName), properties[propName]);
|
|
507
507
|
})) : builder.literalNull()];
|
|
508
508
|
} else {
|
|
509
|
-
loadTag = builder.functionCall(context.helper("loadTag"), [requireRendererFunctionCall // The first param is the renderer
|
|
510
|
-
|
|
509
|
+
loadTag = builder.functionCall(context.helper("loadTag"), [requireRendererFunctionCall] // The first param is the renderer
|
|
510
|
+
);
|
|
511
511
|
|
|
512
512
|
tagArgs = [inputProps, builder.identifierOut()];
|
|
513
513
|
}
|
|
@@ -35,10 +35,6 @@ module.exports = function handleLegacyBind() {
|
|
|
35
35
|
|
|
36
36
|
const hasWidgetTypes = context.isFlagSet("hasWidgetTypes");
|
|
37
37
|
|
|
38
|
-
if (hasWidgetTypes) {
|
|
39
|
-
context.deprecate("The <widget-types> tag is deprecated. Please remove it. See: https://github.com/marko-js/marko/issues/514");
|
|
40
|
-
}
|
|
41
|
-
|
|
42
38
|
if (bindAttrValue != null && !bindAttr.isLiteralValue()) {
|
|
43
39
|
// This is a dynamic expression. The <widget-types> should have been found.
|
|
44
40
|
if (!hasWidgetTypes) {
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var complain;
|
|
4
3
|
var AsyncValue = require("./AsyncValue");
|
|
5
4
|
|
|
6
5
|
function safeRenderBody(renderBody, targetOut, data) {
|
|
@@ -15,7 +14,6 @@ function requestData(provider, timeout) {
|
|
|
15
14
|
var asyncValue = new AsyncValue();
|
|
16
15
|
|
|
17
16
|
if (typeof provider === "function") {
|
|
18
|
-
|
|
19
17
|
var callback = function (err, data) {
|
|
20
18
|
if (err) {
|
|
21
19
|
asyncValue.l_(err);
|
|
@@ -23,8 +21,6 @@ function requestData(provider, timeout) {
|
|
|
23
21
|
asyncValue.m_(data);
|
|
24
22
|
}
|
|
25
23
|
};
|
|
26
|
-
// eslint-disable-next-line no-constant-condition
|
|
27
|
-
|
|
28
24
|
|
|
29
25
|
var value = provider.length === 1 ? // one argument so only provide callback to function call
|
|
30
26
|
provider(callback) : // two arguments so provide args and callback to function call
|
|
@@ -4,7 +4,6 @@ module.exports = function migrator(node, context) {
|
|
|
4
4
|
const arg = node.getAttribute("body-only-if");
|
|
5
5
|
|
|
6
6
|
if (arg) {
|
|
7
|
-
context.deprecate('The "body-only-if(x)" tag is deprecated. Please use "<${test ? null : tag>" instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-body‐only‐if');
|
|
8
7
|
// Check if body-only-if(true) is set and automatically unwrap element
|
|
9
8
|
if (arg.argument === "true") {
|
|
10
9
|
// w-body will take care of the unwrapping
|
|
@@ -7,7 +7,6 @@ module.exports = function migrate(el, context) {
|
|
|
7
7
|
const name = attr.name;
|
|
8
8
|
if (CONTROL_FLOW_ATTRIBUTES.includes(name) && (name === "else" || attr.argument) && !(el.tagName === "else" && name === "if") // <else if(x)> gets passed through
|
|
9
9
|
) {
|
|
10
|
-
context.deprecate(`The "${name}" attribute is deprecated. Please use the <${name}> tag instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-control-flow-attributes`);
|
|
11
10
|
el.removeAttribute(name);
|
|
12
11
|
el.wrapWith(builder.htmlElement(name, undefined, undefined, attr.argument));
|
|
13
12
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
module.exports = function migrate(el
|
|
1
|
+
module.exports = function migrate(el) {
|
|
2
2
|
el.forEachAttribute((attr, index) => {
|
|
3
3
|
if (!attr.name && !attr.spread) {
|
|
4
|
-
context.deprecate('The "${attributes}" is deprecated. Please use "...attributes" modifier instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes');
|
|
5
4
|
const attribute = el.attributes.splice(index, 1)[0];
|
|
6
5
|
attribute.spread = true;
|
|
7
6
|
el.attributes.unshift(attribute);
|
|
@@ -6,8 +6,6 @@ module.exports = function migrate(el, context) {
|
|
|
6
6
|
return;
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
-
context.deprecate('The "include" attribute is deprecated. Please use the <${dynamic}> tag instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-include-tag');
|
|
10
|
-
|
|
11
9
|
el.removeAttribute("include");
|
|
12
10
|
el.appendChild(builder.htmlElement("include", undefined, undefined, attr.argument));
|
|
13
11
|
};
|
|
@@ -12,6 +12,4 @@ module.exports = function migrate(el, context) {
|
|
|
12
12
|
|
|
13
13
|
const nestedTagName = match[1];
|
|
14
14
|
el.tagName = `@${nestedTagName}`;
|
|
15
|
-
|
|
16
|
-
context.deprecate('The "<my-tag:nested>" tagName syntax is deprecated. Please use the "<@nested>" tagName syntax instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-legacy-nested-tags', el);
|
|
17
15
|
};
|
|
@@ -8,7 +8,6 @@ module.exports = function migrate(el, context) {
|
|
|
8
8
|
return;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
context.deprecate('The "marko-init" attribute is deprecated. Use the static tag instead. See https://github.com/marko-js/marko/wiki/Deprecation:-script-template-helpers');
|
|
12
11
|
el.removeAttribute("marko-init");
|
|
13
12
|
} else if (el.hasAttribute("template-helpers")) {
|
|
14
13
|
if (el.tagName !== "script") {
|
|
@@ -16,7 +15,6 @@ module.exports = function migrate(el, context) {
|
|
|
16
15
|
return;
|
|
17
16
|
}
|
|
18
17
|
|
|
19
|
-
context.deprecate('The "template-helpers" attribute is deprecated and will be removed in the next release candidate. Use the static tag instead. See https://github.com/marko-js/marko/wiki/Deprecation:-script-template-helpers');
|
|
20
18
|
el.removeAttribute("template-helpers");
|
|
21
19
|
} else {
|
|
22
20
|
return;
|
|
@@ -7,10 +7,8 @@ module.exports = function migrate(el, context) {
|
|
|
7
7
|
let value = attr.value;
|
|
8
8
|
|
|
9
9
|
if (name && name.endsWith(":key")) {
|
|
10
|
-
context.deprecate(`The ":key" modifier is deprecated. Please use ":scoped" modifier instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes`);
|
|
11
10
|
name = name.slice(0, 0 - ":key".length) + ":scoped";
|
|
12
11
|
} else if (value && value.type === "FunctionCall" && componentElId.test(attr.rawValue)) {
|
|
13
|
-
context.deprecate(`Using component.${value.callee.property.name} as an attribute is deprecated. Please use ":scoped" modifier instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes`);
|
|
14
12
|
name += ":scoped";
|
|
15
13
|
value = value.args[0];
|
|
16
14
|
} else {
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
module.exports = function migrate(el
|
|
1
|
+
module.exports = function migrate(el) {
|
|
2
2
|
const attr = el.getAttribute("ref");
|
|
3
3
|
if (!attr) {
|
|
4
4
|
return;
|
|
5
5
|
}
|
|
6
6
|
|
|
7
|
-
context.deprecate(`The "ref" attribute is deprecated. Please use "key" attribute instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-ref-attribute`);
|
|
8
|
-
|
|
9
7
|
el.setAttributeValue("key", attr.value);
|
|
10
8
|
el.removeAttribute(attr.name);
|
|
11
9
|
};
|
|
@@ -14,8 +14,6 @@ module.exports = function migrate(el, context) {
|
|
|
14
14
|
|
|
15
15
|
context.setMeta("legacy", true);
|
|
16
16
|
|
|
17
|
-
context.deprecate("Legacy components using w-bind and defineRenderer/defineComponent or defineComponent are deprecated. See: https://github.com/marko-js/marko/issues/421");
|
|
18
|
-
|
|
19
17
|
if (value == null) {
|
|
20
18
|
componentModule = getDefaultWidgetFile(context.dirname);
|
|
21
19
|
|
|
@@ -5,8 +5,6 @@ module.exports = function migrate(el, context) {
|
|
|
5
5
|
return;
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
context.deprecate('The "w-body" attribute is deprecated. Please use the "<${dynamicTag}/>" tag instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-Widget-body-(w‐body)');
|
|
9
|
-
|
|
10
8
|
const builder = context.builder;
|
|
11
9
|
const defaultValue = builder.identifier("input");
|
|
12
10
|
const bodyValue = el.getAttributeValue("w-body") || defaultValue;
|
|
@@ -7,8 +7,6 @@ module.exports = function migrate(el, context) {
|
|
|
7
7
|
return;
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
context.deprecate('The "w-config" attribute is deprecated. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐config');
|
|
11
|
-
|
|
12
10
|
if (attr.value) {
|
|
13
11
|
el.insertSiblingBefore(builder.scriptlet({
|
|
14
12
|
value: printJS(builder.assignment(builder.memberExpression(builder.identifier("component"), builder.identifier("widgetConfig")), attr.value, "="), context)
|
|
@@ -10,10 +10,7 @@ module.exports = function migrate(el, context) {
|
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
if (name === "w-for" && !findBoundParent(el)) {
|
|
13
|
-
context.deprecate(`Using "w-for" in a template without a "w-bind" is deprecated. The "${name}" attribute is also deprecated. Please use "for:scoped" instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes`);
|
|
14
13
|
context.setMigrationFlag("legacyWidgetAttrsWithoutBind");
|
|
15
|
-
} else {
|
|
16
|
-
context.deprecate(`The "${name}" attribute is deprecated. Please use "for:scoped" instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes`);
|
|
17
14
|
}
|
|
18
15
|
|
|
19
16
|
if (el.hasAttribute("for:scoped")) {
|
|
@@ -6,10 +6,7 @@ module.exports = function migrate(el, context) {
|
|
|
6
6
|
return;
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
-
if (findBoundParent(el)) {
|
|
10
|
-
context.deprecate(`The "w-id" attribute is deprecated. Please use "key" attribute instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes`);
|
|
11
|
-
} else {
|
|
12
|
-
context.deprecate(`Using "w-id" in a template without a "w-bind" is deprecated. The "w-id" attribute is also deprecated. Please use "key" attribute instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes`);
|
|
9
|
+
if (!findBoundParent(el)) {
|
|
13
10
|
context.setMigrationFlag("legacyWidgetAttrsWithoutBind");
|
|
14
11
|
}
|
|
15
12
|
|
|
@@ -8,10 +8,7 @@ module.exports = function migrate(el, context) {
|
|
|
8
8
|
return;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
if (findBoundParent(el)) {
|
|
12
|
-
context.deprecate(`The "w-on*" attributes are deprecated. Please use "on*()" instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes`);
|
|
13
|
-
} else {
|
|
14
|
-
context.deprecate(`Using "w-on*" in a template without a "w-bind" is deprecated. The "w-on*" attributes are also deprecated. Please use "on*()" instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes`);
|
|
11
|
+
if (!findBoundParent(el)) {
|
|
15
12
|
context.setMigrationFlag("legacyWidgetAttrsWithoutBind");
|
|
16
13
|
}
|
|
17
14
|
|
|
@@ -5,8 +5,6 @@ module.exports = function migrate(el, context) {
|
|
|
5
5
|
}
|
|
6
6
|
|
|
7
7
|
const values = attr.value.value;
|
|
8
|
-
context.deprecate(`The "w-preserve-attrs" attribute is deprecated. Please use ":no-update" modifier instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes`);
|
|
9
|
-
|
|
10
8
|
values.split(",").forEach(val => {
|
|
11
9
|
const existingAttr = el.getAttribute(val);
|
|
12
10
|
|
|
@@ -4,7 +4,7 @@ const newTags = {
|
|
|
4
4
|
"w-preserve-body": "no-update-body",
|
|
5
5
|
"w-preserve-body-if": "no-update-body-if"
|
|
6
6
|
};
|
|
7
|
-
module.exports = function migrate(el
|
|
7
|
+
module.exports = function migrate(el) {
|
|
8
8
|
el.forEachAttribute(attr => {
|
|
9
9
|
const name = attr.name;
|
|
10
10
|
if (!name || !Object.keys(newTags).includes(name)) {
|
|
@@ -12,8 +12,6 @@ module.exports = function migrate(el, context) {
|
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
const newAttrName = newTags[name];
|
|
15
|
-
context.deprecate(`The "${name}" attribute is deprecated. Please use "${newAttrName}" attribute instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes`);
|
|
16
|
-
|
|
17
15
|
attr.name = newAttrName;
|
|
18
16
|
});
|
|
19
17
|
};
|
|
@@ -3,27 +3,18 @@ module.exports = function migrate(el, context) {
|
|
|
3
3
|
const value = attr.value;
|
|
4
4
|
|
|
5
5
|
if (isWidgetElIdFunctionCall(value) && el.tagName !== "var" && el.tagName !== "assign") {
|
|
6
|
-
context.deprecate(`The "*=widget.elId("someId")" is deprecated. Please use "*:scoped="someId"" modifier instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-w‐*-Attributes`);
|
|
7
|
-
|
|
8
6
|
attr.name += ":scoped";
|
|
9
7
|
attr.value = value.args[0];
|
|
10
8
|
return;
|
|
11
9
|
}
|
|
12
10
|
|
|
13
|
-
|
|
14
|
-
const walker = context.createWalker({
|
|
11
|
+
context.createWalker({
|
|
15
12
|
enter(node) {
|
|
16
13
|
if (isWidgetMemberExpression(node)) {
|
|
17
14
|
node.object.name = "component";
|
|
18
|
-
found = true;
|
|
19
15
|
}
|
|
20
16
|
}
|
|
21
|
-
});
|
|
22
|
-
walker.walk(value);
|
|
23
|
-
|
|
24
|
-
if (found) {
|
|
25
|
-
context.deprecate(`The "widget" variable is deprecated. Please use "component" instead.`);
|
|
26
|
-
}
|
|
17
|
+
}).walk(value);
|
|
27
18
|
});
|
|
28
19
|
};
|
|
29
20
|
|
|
@@ -25,10 +25,6 @@ module.exports = function migrator(el, context) {
|
|
|
25
25
|
|
|
26
26
|
walker.walk(el);
|
|
27
27
|
|
|
28
|
-
if (found) {
|
|
29
|
-
context.deprecate("Non standard template literals have been deprecated, please use javascript template literals instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-nonstandard-template-literals");
|
|
30
|
-
}
|
|
31
|
-
|
|
32
28
|
if (literals.length) {
|
|
33
29
|
context.addMigration({
|
|
34
30
|
description: "Migrate template with non standard template literals",
|
|
@@ -19,8 +19,6 @@ module.exports = function migrator(el, context) {
|
|
|
19
19
|
return;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
context.deprecate("Directly rendering by passing `out` to a function is deprecated. Please use the dynamic tag instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-imperative-render-calls");
|
|
23
|
-
|
|
24
22
|
if (hasErrors) {
|
|
25
23
|
return;
|
|
26
24
|
}
|
|
@@ -7,8 +7,6 @@ module.exports = function migrator(elNode, context) {
|
|
|
7
7
|
commonTagMigrator(elNode, context);
|
|
8
8
|
elNode.setTransformerApplied(commonTagMigrator);
|
|
9
9
|
|
|
10
|
-
context.deprecate('The "<assign>" tag is deprecated. Please use "$ <js_code>" for JavaScript in the template. See: https://github.com/marko-js/marko/wiki/Deprecation:-var,-assign,-invoke-tags');
|
|
11
|
-
|
|
12
10
|
if (!attributes) {
|
|
13
11
|
context.addError("Invalid <assign> tag. Argument is missing. Example; <assign x=123 />");
|
|
14
12
|
return elNode;
|
|
@@ -8,8 +8,6 @@ module.exports = function migrator(elNode, context) {
|
|
|
8
8
|
const builder = context.builder;
|
|
9
9
|
const attributes = elNode.attributes;
|
|
10
10
|
|
|
11
|
-
context.deprecate(`The "<async-fragment>" tag is deprecated. Please use "<await>" instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-async-fragment`);
|
|
12
|
-
|
|
13
11
|
if (!attributes || !attributes.length) {
|
|
14
12
|
context.addError('Invalid <async-fragment> tag. Argument is missing. Example; <async-fragment data-provider=data.userInfo var="userInfo" />');
|
|
15
13
|
return elNode;
|
|
@@ -5,8 +5,6 @@ module.exports = function migrator(elNode, context) {
|
|
|
5
5
|
commonTagMigrator(elNode, context);
|
|
6
6
|
elNode.setTransformerApplied(commonTagMigrator);
|
|
7
7
|
|
|
8
|
-
context.deprecate(`The "<async-fragments>" tag is deprecated. Please use "<await-reorderer>" instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-async-fragment`);
|
|
9
|
-
|
|
10
8
|
// all this tag ever did was handling of client reordering
|
|
11
9
|
// we'll remove the attribute as that's all this new tag does
|
|
12
10
|
elNode.removeAttribute("client-reorder");
|
|
@@ -9,8 +9,6 @@ module.exports = function migrator(elNode, context) {
|
|
|
9
9
|
return;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
context.deprecate('The "<await(result from promise)>" syntax has been deprecated, please use the modern syntax of "<await(promise)><@then|result|>". See: https://github.com/marko-js/marko/wiki/Deprecation:-legacy-await');
|
|
13
|
-
|
|
14
12
|
elNode.argument = undefined;
|
|
15
13
|
let provider = builder.expression(match[2]);
|
|
16
14
|
const varName = match[1];
|
|
@@ -70,23 +68,18 @@ module.exports = function migrator(elNode, context) {
|
|
|
70
68
|
|
|
71
69
|
let placeholderBody;
|
|
72
70
|
if (elNode.hasAttribute("placeholder")) {
|
|
73
|
-
context.deprecate('The "placeholder" attribute on the "<await>" tag is deprecated. Please use the "<@placeholder>" nested tag instead.');
|
|
74
|
-
|
|
75
71
|
placeholderBody = [builder.text(elNode.getAttributeValue("placeholder"))];
|
|
76
72
|
elNode.removeAttribute("placeholder");
|
|
77
73
|
}
|
|
78
74
|
|
|
79
75
|
let timeoutBody;
|
|
80
76
|
if (elNode.hasAttribute("timeout-message")) {
|
|
81
|
-
context.deprecate('The "timeout-message" attribute on the "<await>" tag is deprecated. Please use the "<@catch|err|>" nested tag instead with a check for "err.name === "TimeoutError".');
|
|
82
|
-
|
|
83
77
|
timeoutBody = [builder.text(elNode.getAttributeValue("timeout-message"))];
|
|
84
78
|
elNode.removeAttribute("timeout-message");
|
|
85
79
|
}
|
|
86
80
|
|
|
87
81
|
let errorBody;
|
|
88
82
|
if (elNode.hasAttribute("error-message")) {
|
|
89
|
-
context.deprecate('The "error-message" attribute on the "<await>" tag is deprecated. Please use the "<@catch>" nested tag instead.');
|
|
90
83
|
errorBody = [builder.text(elNode.getAttributeValue("error-message"))];
|
|
91
84
|
elNode.removeAttribute("error-message");
|
|
92
85
|
}
|
|
@@ -9,7 +9,5 @@ module.exports = function migrator(el, context) {
|
|
|
9
9
|
context.addError("class is a static tag and can only be declared at the template root");
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
context.deprecate("Having a named class at the top level of a file is deprecated. Use `class {...}` without a name instead.");
|
|
13
|
-
|
|
14
12
|
el.tagString = el.tagString.replace(classNamedRegexp, "$1$2");
|
|
15
13
|
};
|
|
@@ -1,5 +1,3 @@
|
|
|
1
1
|
module.exports = function render(elNode, context) {
|
|
2
|
-
context.deprecate("The <component-globals> tag is deprecated. This functionality has been added to the '<init-components>' tag (which is automatically inserted at the end of the <body> tag), you can safely remove the '<component-globals>' tag.");
|
|
3
|
-
|
|
4
2
|
elNode.detach();
|
|
5
3
|
};
|
|
@@ -19,8 +19,6 @@ function migrateForLoop(elNode, context) {
|
|
|
19
19
|
return;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
context.deprecate('The "<for(...)>" syntax has been deprecated, checkout the modern syntax here: https://github.com/marko-js/marko/wiki/Deprecation:-legacy-for');
|
|
23
|
-
|
|
24
22
|
try {
|
|
25
23
|
parsed = parseFor(elNode.argument);
|
|
26
24
|
elNode.argument = undefined;
|
|
@@ -5,7 +5,6 @@ const commonTagMigrator = require("./all-tags");
|
|
|
5
5
|
module.exports = function migrator(elNode, context) {
|
|
6
6
|
commonTagMigrator(elNode, context);
|
|
7
7
|
elNode.setTransformerApplied(commonTagMigrator);
|
|
8
|
-
context.deprecate('The "<include>" tag is deprecated. Please use the "<${dynamic}/>" tag or regular text replacement instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-include-tag');
|
|
9
8
|
|
|
10
9
|
const builder = context.builder;
|
|
11
10
|
const rawArg = elNode.argument;
|
|
@@ -8,8 +8,6 @@ module.exports = function migrator(elNode, context) {
|
|
|
8
8
|
const functionAttr = elNode.attributes[0];
|
|
9
9
|
const functionArgs = functionAttr.argument;
|
|
10
10
|
|
|
11
|
-
context.deprecate('The "<invoke>" tag is deprecated. Please use "$ <js_code>" for JavaScript in the template. See: https://github.com/marko-js/marko/wiki/Deprecation:-var,-assign,-invoke-tags');
|
|
12
|
-
|
|
13
11
|
if (!functionAttr) {
|
|
14
12
|
context.addError('Invalid <invoke> tag. Missing function attribute. Expected: <invoke console.log("Hello World")');
|
|
15
13
|
return;
|
|
@@ -5,7 +5,6 @@ const commonTagMigrator = require("./all-tags");
|
|
|
5
5
|
module.exports = function render(elNode, context) {
|
|
6
6
|
commonTagMigrator(elNode, context);
|
|
7
7
|
elNode.setTransformerApplied(commonTagMigrator);
|
|
8
|
-
context.deprecate("The <layout-placeholder> tag is deprecated. Please use the <${dynamic}> tag instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-layout-tag");
|
|
9
8
|
|
|
10
9
|
const builder = context.builder;
|
|
11
10
|
const name = elNode.getAttributeValue("name");
|
|
@@ -3,7 +3,6 @@ const commonTagMigrator = require("./all-tags");
|
|
|
3
3
|
module.exports = function migrator(oldNode, context) {
|
|
4
4
|
commonTagMigrator(oldNode, context);
|
|
5
5
|
oldNode.setTransformerApplied(commonTagMigrator);
|
|
6
|
-
context.deprecate('The "<layout-put>" tag is deprecated and replaced with first class language support. See: https://github.com/marko-js/marko/wiki/Deprecation:-layout-tag');
|
|
7
6
|
|
|
8
7
|
const attributes = oldNode.attributes;
|
|
9
8
|
if (!attributes) {
|
|
@@ -5,7 +5,6 @@ const commonTagMigrator = require("./all-tags");
|
|
|
5
5
|
module.exports = function render(elNode, context) {
|
|
6
6
|
commonTagMigrator(elNode, context);
|
|
7
7
|
elNode.setTransformerApplied(commonTagMigrator);
|
|
8
|
-
context.deprecate("The <layout-use> tag is deprecated. Please use a combination of the <${dynamic}> tag and imports instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-layout-tag");
|
|
9
8
|
|
|
10
9
|
const rawArg = elNode.argument;
|
|
11
10
|
const attributes = elNode.attributes;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
module.exports = function codeGenerator(elNode, context) {
|
|
2
|
-
context.deprecate('The "<macro-body>" tag has been deprecated. Please use the <${dynamic}/> tag instead, eg: "<macro|input| ...><${input.renderBody}/></macro>". See: https://github.com/marko-js/marko/wiki/Deprecation:-legacy-macro', elNode);
|
|
3
|
-
|
|
4
2
|
const builder = context.builder;
|
|
5
3
|
const dynamicTag = builder.htmlElement(undefined, elNode.attributes);
|
|
6
4
|
dynamicTag.rawTagNameExpression = "macroInput";
|
|
@@ -14,8 +14,6 @@ module.exports = function migrator(elNode, context) {
|
|
|
14
14
|
return elNode;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
context.deprecate('The "<macro my-macro(input)>" syntax has been deprecated. Please use the new tag param syntax, eg: "<macro|input| name="my-macro">. See: https://github.com/marko-js/marko/wiki/Deprecation:-legacy-macro', elNode);
|
|
18
|
-
|
|
19
17
|
const name = defAttr.name;
|
|
20
18
|
const params = defAttr.argument ? builder.parseJavaScriptParams(defAttr.argument) : [];
|
|
21
19
|
elNode.params = [builder.identifier("macroInput")];
|
|
@@ -4,7 +4,6 @@ module.exports = function migrator(oldNode, context) {
|
|
|
4
4
|
const attributes = oldNode.attributes;
|
|
5
5
|
const argument = oldNode.argument;
|
|
6
6
|
|
|
7
|
-
context.deprecate('The "<unless(x)>" tag is deprecated. Please use "<if(!x)>" instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-unless-tag');
|
|
8
7
|
if (!argument) {
|
|
9
8
|
context.addError("Invalid <unless> tag. Argument is missing. Example; <unless(foo === true)>");
|
|
10
9
|
return oldNode;
|
|
@@ -17,8 +17,6 @@ module.exports = function nodeFactory(elNode, context) {
|
|
|
17
17
|
return elNode;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
context.deprecate('The "<var>" tag is deprecated. Please use "$ <js_code>" for JavaScript in the template. See: https://github.com/marko-js/marko/wiki/Deprecation:-var,-assign,-invoke-tags');
|
|
21
|
-
|
|
22
20
|
if (firstChild && firstChild.type === "Text" && /^\s+/.test(firstChild.argument.value)) {
|
|
23
21
|
firstChild.argument.value = firstChild.argument.value.trimLeft();
|
|
24
22
|
}
|
|
@@ -78,9 +78,6 @@ module.exports = function defineWidget(def, renderer) {
|
|
|
78
78
|
},
|
|
79
79
|
set: function (newState) {
|
|
80
80
|
newState = newState || {};
|
|
81
|
-
// eslint-disable-next-line no-constant-condition
|
|
82
|
-
|
|
83
|
-
|
|
84
81
|
this.setState(newState);
|
|
85
82
|
}
|
|
86
83
|
});
|
|
@@ -88,15 +85,12 @@ module.exports = function defineWidget(def, renderer) {
|
|
|
88
85
|
Object.defineProperty(proto, "__document", {
|
|
89
86
|
get: function () {
|
|
90
87
|
return this.E_;
|
|
91
|
-
// eslint-disable-next-line no-constant-condition
|
|
92
88
|
}
|
|
93
89
|
});
|
|
94
90
|
|
|
95
91
|
Object.defineProperty(proto, "el", {
|
|
96
92
|
get: function () {
|
|
97
|
-
|
|
98
93
|
return this.F_;
|
|
99
|
-
// eslint-disable-next-line no-constant-condition
|
|
100
94
|
}
|
|
101
95
|
});
|
|
102
96
|
|
|
@@ -176,8 +170,6 @@ module.exports = function defineWidget(def, renderer) {
|
|
|
176
170
|
this.J_ && this.J_(this.widgetConfig || {});
|
|
177
171
|
this.G_ && this.G_({ firstRender: true });
|
|
178
172
|
this.O_ = legacyRender;
|
|
179
|
-
|
|
180
|
-
// eslint-disable-next-line no-constant-condition
|
|
181
173
|
el.__widget = this;
|
|
182
174
|
}
|
|
183
175
|
} else if (el) {
|
|
@@ -256,10 +248,8 @@ module.exports = function defineWidget(def, renderer) {
|
|
|
256
248
|
Component.renderSync = renderer.renderSync;
|
|
257
249
|
}
|
|
258
250
|
|
|
259
|
-
// eslint-disable-next-line no-constant-condition
|
|
260
251
|
Component._isWidget = true;
|
|
261
252
|
|
|
262
|
-
|
|
263
253
|
return Component;
|
|
264
254
|
};
|
|
265
255
|
|
|
@@ -2,8 +2,6 @@ var Component = require("../../../runtime/components/Component");
|
|
|
2
2
|
var loader = require("@internal/loader");
|
|
3
3
|
var getComponentForEl = require("@internal/components-util").V_;
|
|
4
4
|
|
|
5
|
-
var complain;
|
|
6
|
-
|
|
7
5
|
// expose legacy
|
|
8
6
|
require("@internal/components-registry")._j_ = exports;
|
|
9
7
|
exports.load = function (typeName) {
|
|
@@ -54,11 +52,9 @@ var RenderResult = require("../../../runtime/RenderResult");
|
|
|
54
52
|
|
|
55
53
|
RenderResult.prototype.getWidget = function () {
|
|
56
54
|
return this.getWidgets()[0];
|
|
57
|
-
// eslint-disable-next-line no-constant-condition
|
|
58
55
|
};
|
|
59
56
|
RenderResult.prototype.getWidgets = function () {
|
|
60
57
|
return RenderResult.prototype.getComponents.apply(this, arguments).filter(function (component) {
|
|
61
58
|
return component.B_;
|
|
62
59
|
});
|
|
63
|
-
// eslint-disable-next-line no-constant-condition
|
|
64
60
|
};
|