@wavemaker-ai/react-codegen 1.0.0-rc.647502 → 1.0.0-rc.647582
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/dist/transpiler/index.mjs +1007 -1033
- package/dist/transpiler/index.mjs.map +1 -1
- package/package-lock.json +125 -125
- package/package.json +1 -1
- package/src/transpile/bind.ex.transformer.js +18 -1
- package/src/transpile/bind.ex.transformer.js.map +1 -1
- package/src/transpile/components/container/accordion-pane.transformer.js +4 -20
- package/src/transpile/components/container/accordion-pane.transformer.js.map +1 -1
- package/src/transpile/components/container/container.transformer.js +7 -21
- package/src/transpile/components/container/container.transformer.js.map +1 -1
- package/src/transpile/components/container/panel.transformer.js +4 -20
- package/src/transpile/components/container/panel.transformer.js.map +1 -1
- package/src/transpile/components/container/tabpane.transformer.js +4 -20
- package/src/transpile/components/container/tabpane.transformer.js.map +1 -1
- package/src/transpile/components/container/wizardstep.transformer.js +4 -36
- package/src/transpile/components/container/wizardstep.transformer.js.map +1 -1
- package/src/transpile/components/data/card/card-content.transformer.js +4 -20
- package/src/transpile/components/data/card/card-content.transformer.js.map +1 -1
- package/src/transpile/components/data/form/field-widget-shared.js +9 -0
- package/src/transpile/components/data/form/field-widget-shared.js.map +1 -0
- package/src/transpile/components/data/form/form-field.transformer.js +24 -26
- package/src/transpile/components/data/form/form-field.transformer.js.map +1 -1
- package/src/transpile/components/data/list/list-transformer.js +9 -2
- package/src/transpile/components/data/list/list-transformer.js.map +1 -1
- package/src/transpile/components/data/live-filter-field.transformer.js +30 -32
- package/src/transpile/components/data/live-filter-field.transformer.js.map +1 -1
- package/src/transpile/components/data/live-form-shared.js +135 -0
- package/src/transpile/components/data/live-form-shared.js.map +1 -0
- package/src/transpile/components/data/livefilter.transformer.js +3 -123
- package/src/transpile/components/data/livefilter.transformer.js.map +1 -1
- package/src/transpile/components/data/liveform.transformer.js +9 -128
- package/src/transpile/components/data/liveform.transformer.js.map +1 -1
- package/src/transpile/components/data/table/table-column.transformer.js +6 -3
- package/src/transpile/components/data/table/table-column.transformer.js.map +1 -1
- package/src/transpile/components/data/table/table-row.transformer.js +9 -20
- package/src/transpile/components/data/table/table-row.transformer.js.map +1 -1
- package/src/transpile/components/data/table/table.transformer.js +5 -2
- package/src/transpile/components/data/table/table.transformer.js.map +1 -1
- package/src/transpile/components/data/table/utils.js +70 -0
- package/src/transpile/components/data/table/utils.js.map +1 -1
- package/src/transpile/components/dialogs/alert-dialog.transformer.js +5 -13
- package/src/transpile/components/dialogs/alert-dialog.transformer.js.map +1 -1
- package/src/transpile/components/dialogs/confirm-dialog.transformer.js +5 -13
- package/src/transpile/components/dialogs/confirm-dialog.transformer.js.map +1 -1
- package/src/transpile/components/dialogs/dialog-factory.js +18 -0
- package/src/transpile/components/dialogs/dialog-factory.js.map +1 -0
- package/src/transpile/components/dialogs/iframe-dialog.transformer.js +5 -13
- package/src/transpile/components/dialogs/iframe-dialog.transformer.js.map +1 -1
- package/src/transpile/components/layout/footer.transformer.js +7 -45
- package/src/transpile/components/layout/footer.transformer.js.map +1 -1
- package/src/transpile/components/layout/header.transformer.js +7 -45
- package/src/transpile/components/layout/header.transformer.js.map +1 -1
- package/src/transpile/components/layout/layout-region-factory.js +46 -0
- package/src/transpile/components/layout/layout-region-factory.js.map +1 -0
- package/src/transpile/components/layout/leftnav.transformer.js +7 -45
- package/src/transpile/components/layout/leftnav.transformer.js.map +1 -1
- package/src/transpile/components/layout/rightnav.transformer.js +7 -45
- package/src/transpile/components/layout/rightnav.transformer.js.map +1 -1
- package/src/transpile/components/layout/topnav.transformer.js +7 -45
- package/src/transpile/components/layout/topnav.transformer.js.map +1 -1
- package/src/transpile/components/navigation/popover.transformer.js +5 -21
- package/src/transpile/components/navigation/popover.transformer.js.map +1 -1
- package/src/transpile/components/page/build-partial-markup.js +55 -0
- package/src/transpile/components/page/build-partial-markup.js.map +1 -0
- package/src/transpile/components/page/partial-container.transformer.js +2 -47
- package/src/transpile/components/page/partial-container.transformer.js.map +1 -1
- package/src/transpile/components/page/with-partial-container.js +26 -0
- package/src/transpile/components/page/with-partial-container.js.map +1 -0
- package/src/transpile/components/partial/partial-content.transformer.js +2 -47
- package/src/transpile/components/partial/partial-content.transformer.js.map +1 -1
- package/src/transpile/components/utils.js +58 -67
- package/src/transpile/components/utils.js.map +1 -1
- package/src/transpile/transform-markup.js +5 -2
- package/src/transpile/transform-markup.js.map +1 -1
- package/src/transpile/transpile.js +265 -134
- package/src/transpile/transpile.js.map +1 -1
- package/src/transpile/widget-inline-style-processor.js +58 -20
- package/src/transpile/widget-inline-style-processor.js.map +1 -1
- package/src/utils/grouping-util.js +41 -13
- package/src/utils/grouping-util.js.map +1 -1
- package/src/variables/variable.transformer.js +64 -18
- package/src/variables/variable.transformer.js.map +1 -1
- package/templates/component/layout.hbs +1 -0
- package/templates/project/package.json +4 -4
- package/templates/variables.template +3 -0
|
@@ -3375,7 +3375,7 @@ var require_lodash = __commonJS({
|
|
|
3375
3375
|
}).sort(compareAscending));
|
|
3376
3376
|
return result2;
|
|
3377
3377
|
});
|
|
3378
|
-
function
|
|
3378
|
+
function remove(array, predicate) {
|
|
3379
3379
|
var result2 = [];
|
|
3380
3380
|
if (!(array && array.length)) {
|
|
3381
3381
|
return result2;
|
|
@@ -3670,7 +3670,7 @@ var require_lodash = __commonJS({
|
|
|
3670
3670
|
depth = depth === undefined2 ? 1 : toInteger(depth);
|
|
3671
3671
|
return baseFlatten(map(collection, iteratee2), depth);
|
|
3672
3672
|
}
|
|
3673
|
-
function
|
|
3673
|
+
function forEach4(collection, iteratee2) {
|
|
3674
3674
|
var func = isArray2(collection) ? arrayEach : baseEach;
|
|
3675
3675
|
return func(collection, getIteratee(iteratee2, 3));
|
|
3676
3676
|
}
|
|
@@ -4678,7 +4678,7 @@ var require_lodash = __commonJS({
|
|
|
4678
4678
|
}
|
|
4679
4679
|
string = toString(string);
|
|
4680
4680
|
options = assignInWith({}, options, settings, customDefaultsAssignIn);
|
|
4681
|
-
var
|
|
4681
|
+
var imports102 = assignInWith({}, options.imports, settings.imports, customDefaultsAssignIn), importsKeys = keys2(imports102), importsValues = baseValues(imports102, importsKeys);
|
|
4682
4682
|
var isEscaping, isEvaluating, index = 0, interpolate = options.interpolate || reNoMatch, source = "__p += '";
|
|
4683
4683
|
var reDelimiters = RegExp2(
|
|
4684
4684
|
(options.escape || reNoMatch).source + "|" + interpolate.source + "|" + (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + "|" + (options.evaluate || reNoMatch).source + "|$",
|
|
@@ -5119,7 +5119,7 @@ var require_lodash = __commonJS({
|
|
|
5119
5119
|
lodash.rangeRight = rangeRight;
|
|
5120
5120
|
lodash.rearg = rearg;
|
|
5121
5121
|
lodash.reject = reject;
|
|
5122
|
-
lodash.remove =
|
|
5122
|
+
lodash.remove = remove;
|
|
5123
5123
|
lodash.rest = rest;
|
|
5124
5124
|
lodash.reverse = reverse;
|
|
5125
5125
|
lodash.sampleSize = sampleSize;
|
|
@@ -5201,7 +5201,7 @@ var require_lodash = __commonJS({
|
|
|
5201
5201
|
lodash.findLastIndex = findLastIndex;
|
|
5202
5202
|
lodash.findLastKey = findLastKey;
|
|
5203
5203
|
lodash.floor = floor;
|
|
5204
|
-
lodash.forEach =
|
|
5204
|
+
lodash.forEach = forEach4;
|
|
5205
5205
|
lodash.forEachRight = forEachRight;
|
|
5206
5206
|
lodash.forIn = forIn;
|
|
5207
5207
|
lodash.forInRight = forInRight;
|
|
@@ -5324,7 +5324,7 @@ var require_lodash = __commonJS({
|
|
|
5324
5324
|
lodash.uniqueId = uniqueId;
|
|
5325
5325
|
lodash.upperCase = upperCase;
|
|
5326
5326
|
lodash.upperFirst = upperFirst2;
|
|
5327
|
-
lodash.each =
|
|
5327
|
+
lodash.each = forEach4;
|
|
5328
5328
|
lodash.eachRight = forEachRight;
|
|
5329
5329
|
lodash.first = head;
|
|
5330
5330
|
mixin(lodash, (function() {
|
|
@@ -16946,8 +16946,8 @@ var require_he = __commonJS({
|
|
|
16946
16946
|
var parseError = function(message) {
|
|
16947
16947
|
throw Error("Parse error: " + message);
|
|
16948
16948
|
};
|
|
16949
|
-
var
|
|
16950
|
-
options = merge3(options,
|
|
16949
|
+
var encode2 = function(string, options) {
|
|
16950
|
+
options = merge3(options, encode2.options);
|
|
16951
16951
|
var strict = options.strict;
|
|
16952
16952
|
if (strict && regexInvalidRawCodePoint.test(string)) {
|
|
16953
16953
|
parseError("forbidden code point");
|
|
@@ -16994,7 +16994,7 @@ var require_he = __commonJS({
|
|
|
16994
16994
|
return escapeCodePoint(codePoint);
|
|
16995
16995
|
}).replace(regexBmpWhitelist, escapeBmpSymbol);
|
|
16996
16996
|
};
|
|
16997
|
-
|
|
16997
|
+
encode2.options = {
|
|
16998
16998
|
"allowUnsafeSymbols": false,
|
|
16999
16999
|
"encodeEverything": false,
|
|
17000
17000
|
"strict": false,
|
|
@@ -17072,7 +17072,7 @@ var require_he = __commonJS({
|
|
|
17072
17072
|
};
|
|
17073
17073
|
var he = {
|
|
17074
17074
|
"version": "1.2.0",
|
|
17075
|
-
"encode":
|
|
17075
|
+
"encode": encode2,
|
|
17076
17076
|
"decode": decode,
|
|
17077
17077
|
"escape": escape,
|
|
17078
17078
|
"unescape": decode
|
|
@@ -18039,10 +18039,10 @@ var require_lib4 = __commonJS({
|
|
|
18039
18039
|
return (!level || level <= 0 ? decode_1.decodeXML : decode_1.decodeHTMLStrict)(data);
|
|
18040
18040
|
}
|
|
18041
18041
|
exports$1.decodeStrict = decodeStrict;
|
|
18042
|
-
function
|
|
18042
|
+
function encode2(data, level) {
|
|
18043
18043
|
return (!level || level <= 0 ? encode_1.encodeXML : encode_1.encodeHTML)(data);
|
|
18044
18044
|
}
|
|
18045
|
-
exports$1.encode =
|
|
18045
|
+
exports$1.encode = encode2;
|
|
18046
18046
|
var encode_2 = require_encode();
|
|
18047
18047
|
Object.defineProperty(exports$1, "encodeXML", { enumerable: true, get: function() {
|
|
18048
18048
|
return encode_2.encodeXML;
|
|
@@ -22223,7 +22223,7 @@ var require_lib9 = __commonJS({
|
|
|
22223
22223
|
level: "all",
|
|
22224
22224
|
numeric: "decimal"
|
|
22225
22225
|
};
|
|
22226
|
-
function
|
|
22226
|
+
function encode2(text, _a) {
|
|
22227
22227
|
var _b = _a === void 0 ? defaultEncodeOptions : _a, _c = _b.mode, mode = _c === void 0 ? "specialChars" : _c, _d = _b.numeric, numeric = _d === void 0 ? "decimal" : _d, _e = _b.level, level = _e === void 0 ? "all" : _e;
|
|
22228
22228
|
if (!text) {
|
|
22229
22229
|
return "";
|
|
@@ -22258,7 +22258,7 @@ var require_lib9 = __commonJS({
|
|
|
22258
22258
|
}
|
|
22259
22259
|
return _c;
|
|
22260
22260
|
}
|
|
22261
|
-
exports$1.encode =
|
|
22261
|
+
exports$1.encode = encode2;
|
|
22262
22262
|
var defaultDecodeOptions = {
|
|
22263
22263
|
scope: "body",
|
|
22264
22264
|
level: "all"
|
|
@@ -27034,7 +27034,7 @@ var R3JitReflector = class {
|
|
|
27034
27034
|
}
|
|
27035
27035
|
};
|
|
27036
27036
|
function compileNgModule(meta) {
|
|
27037
|
-
const { internalType, bootstrap, declarations, imports:
|
|
27037
|
+
const { internalType, bootstrap, declarations, imports: imports102, exports: exports$1, schemas, containsForwardDecls, id } = meta;
|
|
27038
27038
|
const statements = [];
|
|
27039
27039
|
const definitionMap = new DefinitionMap();
|
|
27040
27040
|
definitionMap.set("type", internalType);
|
|
@@ -27045,8 +27045,8 @@ function compileNgModule(meta) {
|
|
|
27045
27045
|
if (declarations.length > 0) {
|
|
27046
27046
|
definitionMap.set("declarations", refsToArray(declarations, containsForwardDecls));
|
|
27047
27047
|
}
|
|
27048
|
-
if (
|
|
27049
|
-
definitionMap.set("imports", refsToArray(
|
|
27048
|
+
if (imports102.length > 0) {
|
|
27049
|
+
definitionMap.set("imports", refsToArray(imports102, containsForwardDecls));
|
|
27050
27050
|
}
|
|
27051
27051
|
if (exports$1.length > 0) {
|
|
27052
27052
|
definitionMap.set("exports", refsToArray(exports$1, containsForwardDecls));
|
|
@@ -27085,11 +27085,11 @@ function compileNgModuleDeclarationExpression(meta) {
|
|
|
27085
27085
|
}
|
|
27086
27086
|
return importExpr(Identifiers.defineNgModule).callFn([definitionMap.toLiteralMap()]);
|
|
27087
27087
|
}
|
|
27088
|
-
function createNgModuleType({ type: moduleType, declarations, imports:
|
|
27088
|
+
function createNgModuleType({ type: moduleType, declarations, imports: imports102, exports: exports$1 }) {
|
|
27089
27089
|
return new ExpressionType(importExpr(Identifiers.NgModuleDeclaration, [
|
|
27090
27090
|
new ExpressionType(moduleType.type),
|
|
27091
27091
|
tupleTypeOf(declarations),
|
|
27092
|
-
tupleTypeOf(
|
|
27092
|
+
tupleTypeOf(imports102),
|
|
27093
27093
|
tupleTypeOf(exports$1)
|
|
27094
27094
|
]));
|
|
27095
27095
|
}
|
|
@@ -39326,6 +39326,7 @@ var htmlElements = [
|
|
|
39326
39326
|
|
|
39327
39327
|
// src/transpile/bind.ex.transformer.ts
|
|
39328
39328
|
var FORMAT_CONTEXT = "{formatContext:''}";
|
|
39329
|
+
var FORMAT_CONTEXT_REGEX = /\{formatContext:''\}/g;
|
|
39329
39330
|
var FRAGMENT_SCOPED_NAMES = ["appLocale", "Variables"];
|
|
39330
39331
|
var ExpressionTransformer = class {
|
|
39331
39332
|
constructor(ctx = "this", mode = "attr") {
|
|
@@ -39443,7 +39444,8 @@ var ExpressionTransformer = class {
|
|
|
39443
39444
|
const _args = [];
|
|
39444
39445
|
const exp = this.build(ast.exp);
|
|
39445
39446
|
for (const arg of ast.args) {
|
|
39446
|
-
|
|
39447
|
+
const argExp = this.build(arg);
|
|
39448
|
+
_args.push(argExp === "" ? "undefined" : argExp);
|
|
39447
39449
|
}
|
|
39448
39450
|
if (_args[0] && name === "custom") {
|
|
39449
39451
|
name = `custom.${_args[0]}`.replace(/"/g, "");
|
|
@@ -39452,6 +39454,9 @@ var ExpressionTransformer = class {
|
|
|
39452
39454
|
if (name === "currency") {
|
|
39453
39455
|
name = "toCurrency";
|
|
39454
39456
|
}
|
|
39457
|
+
if (name === "toCurrency" && _args.length === 1) {
|
|
39458
|
+
_args.push("undefined");
|
|
39459
|
+
}
|
|
39455
39460
|
_args.unshift(exp);
|
|
39456
39461
|
return `${this.ctx}?.formatters?.get('${name}')?.format(${_args}, ${FORMAT_CONTEXT})`;
|
|
39457
39462
|
}
|
|
@@ -39517,26 +39522,48 @@ var transform = (expr, scopeName = "this", mode = "attr") => {
|
|
|
39517
39522
|
}
|
|
39518
39523
|
};
|
|
39519
39524
|
var bind_ex_transformer_default = transform;
|
|
39525
|
+
function resolveFormatContext(expression, context) {
|
|
39526
|
+
var _a, _b;
|
|
39527
|
+
if ((_a = context == null ? void 0 : context.get) == null ? void 0 : _a.call(context, "isInsideList")) {
|
|
39528
|
+
return expression.replace(FORMAT_CONTEXT_REGEX, "$item");
|
|
39529
|
+
}
|
|
39530
|
+
if ((_b = context == null ? void 0 : context.get) == null ? void 0 : _b.call(context, "isInsideTableColumn")) {
|
|
39531
|
+
return expression.replace(FORMAT_CONTEXT_REGEX, "rowData");
|
|
39532
|
+
}
|
|
39533
|
+
return expression.replace(/,\s*\{formatContext:''\}/g, "").replace(FORMAT_CONTEXT_REGEX, "");
|
|
39534
|
+
}
|
|
39520
39535
|
|
|
39521
39536
|
// src/variables/variable.transformer.ts
|
|
39522
39537
|
var import_lodash2 = __toESM(require_lodash());
|
|
39538
|
+
function bindingValueIsStatic(value) {
|
|
39539
|
+
const v = Array.isArray(value) ? value[0] : value;
|
|
39540
|
+
return !v || !(typeof v === "string" && v.startsWith("bind:"));
|
|
39541
|
+
}
|
|
39542
|
+
function filterExpressionsAreStatic(filterExpressions) {
|
|
39543
|
+
if (!(filterExpressions == null ? void 0 : filterExpressions.rules)) return true;
|
|
39544
|
+
const ruleIsStatic = (rule) => {
|
|
39545
|
+
if (rule.rules) {
|
|
39546
|
+
return rule.rules.every(ruleIsStatic);
|
|
39547
|
+
}
|
|
39548
|
+
return bindingValueIsStatic(rule.value);
|
|
39549
|
+
};
|
|
39550
|
+
return filterExpressions.rules.every(ruleIsStatic);
|
|
39551
|
+
}
|
|
39523
39552
|
function isStaticParamsVariable(variable2) {
|
|
39524
39553
|
const db = variable2.dataBinding;
|
|
39525
|
-
|
|
39526
|
-
|
|
39527
|
-
|
|
39528
|
-
|
|
39529
|
-
|
|
39530
|
-
|
|
39531
|
-
|
|
39532
|
-
|
|
39533
|
-
|
|
39534
|
-
|
|
39535
|
-
|
|
39536
|
-
return opBindings.every(entryIsStatic);
|
|
39537
|
-
});
|
|
39554
|
+
const entryIsStatic = (entry) => bindingValueIsStatic(entry.value);
|
|
39555
|
+
if (db) {
|
|
39556
|
+
if (Array.isArray(db)) {
|
|
39557
|
+
if (!db.every(entryIsStatic)) return false;
|
|
39558
|
+
} else if ((0, import_lodash2.isObject)(db) && !Array.isArray(db)) {
|
|
39559
|
+
const allOpsStatic = Object.values(db).every((opBindings) => {
|
|
39560
|
+
if (!Array.isArray(opBindings)) return true;
|
|
39561
|
+
return opBindings.every(entryIsStatic);
|
|
39562
|
+
});
|
|
39563
|
+
if (!allOpsStatic) return false;
|
|
39564
|
+
}
|
|
39538
39565
|
}
|
|
39539
|
-
return
|
|
39566
|
+
return filterExpressionsAreStatic(variable2.filterExpressions);
|
|
39540
39567
|
}
|
|
39541
39568
|
function parseStaticJsonValue(value) {
|
|
39542
39569
|
const trimmedValue = value.trim();
|
|
@@ -39603,6 +39630,31 @@ function checkEmptyObject(obj) {
|
|
|
39603
39630
|
});
|
|
39604
39631
|
return isVariableEmpty;
|
|
39605
39632
|
}
|
|
39633
|
+
function transformDataSetBindings(dataSet, scope) {
|
|
39634
|
+
if (typeof dataSet === "string" && dataSet.startsWith("bind:")) {
|
|
39635
|
+
let v = dataSet.substring(5);
|
|
39636
|
+
v = (v || "").trim().replace(/;+\s*$/, "");
|
|
39637
|
+
if (v === "null") {
|
|
39638
|
+
return null;
|
|
39639
|
+
} else {
|
|
39640
|
+
const transformed = bind_ex_transformer_default(v, scope, "attr").replace(/\\n/g, "");
|
|
39641
|
+
if (transformed.trim().startsWith("{")) {
|
|
39642
|
+
return `${scope}.eval(() => (${transformed}))`;
|
|
39643
|
+
} else {
|
|
39644
|
+
return `${scope}.eval(() => ${transformed})`;
|
|
39645
|
+
}
|
|
39646
|
+
}
|
|
39647
|
+
} else if ((0, import_lodash2.isArray)(dataSet)) {
|
|
39648
|
+
return dataSet.map((item) => transformDataSetBindings(item, scope));
|
|
39649
|
+
} else if ((0, import_lodash2.isObject)(dataSet) && dataSet !== null) {
|
|
39650
|
+
const result = {};
|
|
39651
|
+
for (const [key, value] of Object.entries(dataSet)) {
|
|
39652
|
+
result[key] = transformDataSetBindings(value, scope);
|
|
39653
|
+
}
|
|
39654
|
+
return result;
|
|
39655
|
+
}
|
|
39656
|
+
return dataSet;
|
|
39657
|
+
}
|
|
39606
39658
|
function transformVariable(variable2, scope) {
|
|
39607
39659
|
var _a;
|
|
39608
39660
|
let params = {}, filters = {};
|
|
@@ -39614,7 +39666,7 @@ function transformVariable(variable2, scope) {
|
|
|
39614
39666
|
(0, import_lodash2.set)(params, name, value);
|
|
39615
39667
|
});
|
|
39616
39668
|
} else if (variable2.category === "wm.Variable") {
|
|
39617
|
-
params = (0, import_lodash2.clone)(variable2.dataSet);
|
|
39669
|
+
params = transformDataSetBindings((0, import_lodash2.clone)(variable2.dataSet), scope);
|
|
39618
39670
|
}
|
|
39619
39671
|
} else if ((0, import_lodash2.isBoolean)(variable2.dataSet) || (0, import_lodash2.isNumber)(variable2.dataSet)) {
|
|
39620
39672
|
if (variable2.category === "wm.Variable") {
|
|
@@ -39626,6 +39678,9 @@ function transformVariable(variable2, scope) {
|
|
|
39626
39678
|
(0, import_lodash2.set)(params, k, (0, import_lodash2.get)(variable2.dataSet, k));
|
|
39627
39679
|
}
|
|
39628
39680
|
});
|
|
39681
|
+
if (variable2.category === "wm.Variable") {
|
|
39682
|
+
params = transformDataSetBindings(params, scope);
|
|
39683
|
+
}
|
|
39629
39684
|
}
|
|
39630
39685
|
}
|
|
39631
39686
|
if (variable2.dataBinding) {
|
|
@@ -39959,7 +40014,7 @@ function transformTimerAction(variable2, scope) {
|
|
|
39959
40014
|
}
|
|
39960
40015
|
return tv;
|
|
39961
40016
|
}
|
|
39962
|
-
function transformNotificationAction(variable2, scope,
|
|
40017
|
+
function transformNotificationAction(variable2, scope, imports102) {
|
|
39963
40018
|
const tv = transformVariable(variable2, scope);
|
|
39964
40019
|
tv.classname = "NotificationAction";
|
|
39965
40020
|
tv.group = "action";
|
|
@@ -39989,8 +40044,8 @@ function transformNotificationAction(variable2, scope, imports111) {
|
|
|
39989
40044
|
if (partialContent) {
|
|
39990
40045
|
const partialName = partialContent.value.charAt(0).toUpperCase() + partialContent.value.slice(1);
|
|
39991
40046
|
const importItem = `import ${partialName} from "@/app/components/${partialContent.value}/${partialContent.value}";`;
|
|
39992
|
-
if (!
|
|
39993
|
-
|
|
40047
|
+
if (!imports102.includes(importItem)) {
|
|
40048
|
+
imports102.push(importItem);
|
|
39994
40049
|
}
|
|
39995
40050
|
tv.partialContent = { component: partialName };
|
|
39996
40051
|
}
|
|
@@ -40071,7 +40126,7 @@ function transformCrudVariable(variable2, scope) {
|
|
|
40071
40126
|
tv.isStaticParams = isStaticParamsVariable(variable2);
|
|
40072
40127
|
return tv;
|
|
40073
40128
|
}
|
|
40074
|
-
var variable_transformer_default = (variable2, scope, appUrl,
|
|
40129
|
+
var variable_transformer_default = (variable2, scope, appUrl, imports102) => {
|
|
40075
40130
|
switch (variable2.category) {
|
|
40076
40131
|
case "wm.Variable":
|
|
40077
40132
|
return transformModelVariable(variable2, scope);
|
|
@@ -40082,7 +40137,7 @@ var variable_transformer_default = (variable2, scope, appUrl, imports111) => {
|
|
|
40082
40137
|
case "wm.TimerAction":
|
|
40083
40138
|
return transformTimerAction(variable2, scope);
|
|
40084
40139
|
case "wm.NotificationAction":
|
|
40085
|
-
return transformNotificationAction(variable2, scope,
|
|
40140
|
+
return transformNotificationAction(variable2, scope, imports102);
|
|
40086
40141
|
case "wm.DeviceVariable":
|
|
40087
40142
|
return transformDeviceVariable(variable2, scope);
|
|
40088
40143
|
case "wm.LoginAction":
|
|
@@ -40359,41 +40414,51 @@ var transformRepeatChildAttr = (element, replace2, replaceWith) => {
|
|
|
40359
40414
|
}
|
|
40360
40415
|
});
|
|
40361
40416
|
};
|
|
40362
|
-
var
|
|
40363
|
-
var _a, _b
|
|
40364
|
-
let formWidgetDatavalue = null;
|
|
40417
|
+
var resolveBindExpression = (element) => {
|
|
40418
|
+
var _a, _b;
|
|
40365
40419
|
const datavalue = element.getAttribute("datavalue") || "";
|
|
40366
|
-
|
|
40367
|
-
|
|
40368
|
-
|
|
40369
|
-
|
|
40420
|
+
const parts = datavalue.endsWith(")") ? ((_a = element.getAttribute("dataset")) == null ? void 0 : _a.split(":")) || [] : ((_b = element.getAttribute("datavalue")) == null ? void 0 : _b.split(":")) || [];
|
|
40421
|
+
const bindExpr = parts.length > 1 ? parts[1] : null;
|
|
40422
|
+
if (!bindExpr || bindExpr.includes("?") || bindExpr.includes("Widgets") || bindExpr.includes("$formField")) {
|
|
40423
|
+
return null;
|
|
40370
40424
|
}
|
|
40371
|
-
|
|
40372
|
-
|
|
40425
|
+
return bindExpr;
|
|
40426
|
+
};
|
|
40427
|
+
var REPEATING_COMPONENT_TAGS = ["wm-list", "wm-carousel", "wm-tabs", "wm-wizard", "wm-accordion"];
|
|
40428
|
+
var findRepeatingParentContext = (element) => {
|
|
40429
|
+
var _a;
|
|
40430
|
+
let currentNode = element.parentNode;
|
|
40431
|
+
while (currentNode) {
|
|
40432
|
+
const tagName = (_a = currentNode.tagName) == null ? void 0 : _a.toLowerCase();
|
|
40433
|
+
if (tagName && REPEATING_COMPONENT_TAGS.includes(tagName)) {
|
|
40434
|
+
return currentNode.getAttribute("dataset") || null;
|
|
40435
|
+
}
|
|
40436
|
+
currentNode = currentNode.parentNode;
|
|
40437
|
+
}
|
|
40438
|
+
return null;
|
|
40439
|
+
};
|
|
40440
|
+
var buildOnChangeHandler = (config) => {
|
|
40441
|
+
const { variableName, updateExpr, value, oldValue, callbackEvent } = config;
|
|
40442
|
+
return `
|
|
40443
|
+
($event, widget, ${value}, ${oldValue}) => {
|
|
40444
|
+
if(fragment?.Variables?.${variableName}?.twoWayBinding) {
|
|
40445
|
+
${updateExpr}
|
|
40446
|
+
}
|
|
40447
|
+
${callbackEvent ? `${callbackEvent}` : ""};
|
|
40448
|
+
}
|
|
40449
|
+
`;
|
|
40450
|
+
};
|
|
40451
|
+
var getOnChangeExprforFormWidget = (element, eventName, context) => {
|
|
40452
|
+
const bindExpr = resolveBindExpression(element);
|
|
40453
|
+
if (!bindExpr) {
|
|
40373
40454
|
return "";
|
|
40374
40455
|
}
|
|
40375
40456
|
const value = eventName === "on-change" ? "newVal" : "selectedValue";
|
|
40376
40457
|
const oldValue = eventName === "on-change" ? "oldVal" : "";
|
|
40377
40458
|
let variableName = null;
|
|
40378
40459
|
let updateExpr = "";
|
|
40379
|
-
if (bindExpr
|
|
40380
|
-
const
|
|
40381
|
-
"wm-list",
|
|
40382
|
-
"wm-carousel",
|
|
40383
|
-
"wm-tabs",
|
|
40384
|
-
"wm-wizard",
|
|
40385
|
-
"wm-accordion"
|
|
40386
|
-
];
|
|
40387
|
-
let currentNode = element.parentNode;
|
|
40388
|
-
let parentDataset = null;
|
|
40389
|
-
while (currentNode) {
|
|
40390
|
-
const tagName = (_c = currentNode.tagName) == null ? void 0 : _c.toLowerCase();
|
|
40391
|
-
if (tagName && repeatingComponentTags.includes(tagName)) {
|
|
40392
|
-
parentDataset = currentNode.getAttribute("dataset");
|
|
40393
|
-
break;
|
|
40394
|
-
}
|
|
40395
|
-
currentNode = currentNode.parentNode;
|
|
40396
|
-
}
|
|
40460
|
+
if (bindExpr.includes("$item")) {
|
|
40461
|
+
const parentDataset = findRepeatingParentContext(element);
|
|
40397
40462
|
if (parentDataset && parentDataset.startsWith("bind:")) {
|
|
40398
40463
|
const parentDatasetExpr = parentDataset.substring(5);
|
|
40399
40464
|
let variableMatch = parentDatasetExpr.match(/fragment\.Variables\.([^.]+)\.dataSet/);
|
|
@@ -40417,35 +40482,31 @@ var getOnChangeExprforFormWidget = (element, eventName, context) => {
|
|
|
40417
40482
|
return "";
|
|
40418
40483
|
}
|
|
40419
40484
|
} else {
|
|
40420
|
-
const isVariable2 = bindExpr
|
|
40421
|
-
const variableExpr = bindExpr
|
|
40485
|
+
const isVariable2 = bindExpr.includes("Variables");
|
|
40486
|
+
const variableExpr = bindExpr.split(".");
|
|
40422
40487
|
variableName = isVariable2 && variableExpr ? variableExpr[2] : variableExpr ? variableExpr[1] : null;
|
|
40423
40488
|
if (variableName) {
|
|
40424
40489
|
const twoWayBindingVariables = context == null ? void 0 : context.get("twoWayBindingVariables");
|
|
40425
40490
|
const hasTwoWayBinding = (twoWayBindingVariables == null ? void 0 : twoWayBindingVariables.has(variableName)) === true;
|
|
40426
40491
|
if (hasTwoWayBinding) {
|
|
40427
|
-
updateExpr =
|
|
40492
|
+
updateExpr = `${bindExpr} = ${value};`;
|
|
40428
40493
|
}
|
|
40429
40494
|
}
|
|
40430
40495
|
}
|
|
40431
|
-
if (!variableName) {
|
|
40432
|
-
return "";
|
|
40433
|
-
}
|
|
40434
|
-
if (!updateExpr) {
|
|
40496
|
+
if (!variableName || !updateExpr) {
|
|
40435
40497
|
return "";
|
|
40436
40498
|
}
|
|
40437
40499
|
const callbackEvent = element.getAttribute(eventName);
|
|
40438
40500
|
if (callbackEvent) {
|
|
40439
40501
|
element.removeAttribute(eventName);
|
|
40440
40502
|
}
|
|
40441
|
-
return
|
|
40442
|
-
|
|
40443
|
-
|
|
40444
|
-
|
|
40445
|
-
|
|
40446
|
-
|
|
40447
|
-
|
|
40448
|
-
`;
|
|
40503
|
+
return buildOnChangeHandler({
|
|
40504
|
+
variableName,
|
|
40505
|
+
updateExpr,
|
|
40506
|
+
value,
|
|
40507
|
+
oldValue,
|
|
40508
|
+
callbackEvent: callbackEvent || null
|
|
40509
|
+
});
|
|
40449
40510
|
};
|
|
40450
40511
|
var inferTypeAndParseProperty = (name, valWithQuotes) => {
|
|
40451
40512
|
let val = valWithQuotes.startsWith('"') ? valWithQuotes.substring(1) : valWithQuotes;
|
|
@@ -41221,7 +41282,43 @@ var isBind = (v) => !!(v && (v.startsWith("bind:") || v.startsWith("{")));
|
|
|
41221
41282
|
var hasValidDir = (v) => v === "row" || v === "column";
|
|
41222
41283
|
var isAuto = (v) => v === "auto";
|
|
41223
41284
|
var normalizeGap = (v) => v != null && v !== "" && !isAuto(v) ? v : null;
|
|
41224
|
-
|
|
41285
|
+
function parseDimensionValue(value, element) {
|
|
41286
|
+
if (value === "auto") return "auto";
|
|
41287
|
+
if (value === "hug") return "fit-content";
|
|
41288
|
+
if (value === "fill") return "100%";
|
|
41289
|
+
if (/(%|vw|vh|em|rem|px|pt|pc|in|cm|mm)$/.test(value)) return value;
|
|
41290
|
+
const n = Number(value);
|
|
41291
|
+
if (!Number.isNaN(n)) return `${n}px`;
|
|
41292
|
+
return value;
|
|
41293
|
+
}
|
|
41294
|
+
var toCssLength = (v) => v == null || v === "auto" ? void 0 : parseDimensionValue(String(v));
|
|
41295
|
+
var SPACING_SHORTHAND_ATTRS = /* @__PURE__ */ new Set(["padding", "margin"]);
|
|
41296
|
+
var SPACING_SIDE_ATTRS = /* @__PURE__ */ new Set([
|
|
41297
|
+
"paddingtop",
|
|
41298
|
+
"paddingright",
|
|
41299
|
+
"paddingbottom",
|
|
41300
|
+
"paddingleft",
|
|
41301
|
+
"margintop",
|
|
41302
|
+
"marginright",
|
|
41303
|
+
"marginbottom",
|
|
41304
|
+
"marginleft"
|
|
41305
|
+
]);
|
|
41306
|
+
function isBareNumericSpacingToken(token) {
|
|
41307
|
+
const v = token.trim();
|
|
41308
|
+
return v !== "" && !Number.isNaN(Number(v));
|
|
41309
|
+
}
|
|
41310
|
+
function isValidSpacingShorthand(value) {
|
|
41311
|
+
const tokens = splitCssShorthandOnSpaces(value);
|
|
41312
|
+
if (tokens.length === 0) return false;
|
|
41313
|
+
if (tokens.length === 1) return true;
|
|
41314
|
+
return tokens.every((token) => {
|
|
41315
|
+
if (token.trim() === "0") return true;
|
|
41316
|
+
return !isBareNumericSpacingToken(token);
|
|
41317
|
+
});
|
|
41318
|
+
}
|
|
41319
|
+
function normalizeSpacingToken(token) {
|
|
41320
|
+
return parseDimensionValue(token.trim());
|
|
41321
|
+
}
|
|
41225
41322
|
function getBaseAlignment(key) {
|
|
41226
41323
|
return ALIGNMENT_MATRIX[key] || { justifyContent: "flex-start", alignItems: "flex-start" };
|
|
41227
41324
|
}
|
|
@@ -41395,7 +41492,7 @@ function computeLayoutCssProperties(props) {
|
|
|
41395
41492
|
css["justify-content"] = justifyContent;
|
|
41396
41493
|
css["align-items"] = alignItems;
|
|
41397
41494
|
}
|
|
41398
|
-
if (normGap != null) css["gap"] =
|
|
41495
|
+
if (normGap != null) css["gap"] = toCssLength(normGap);
|
|
41399
41496
|
}
|
|
41400
41497
|
} else {
|
|
41401
41498
|
const gapIsAuto = isAuto(props.gap);
|
|
@@ -41413,8 +41510,8 @@ function computeLayoutCssProperties(props) {
|
|
|
41413
41510
|
} else {
|
|
41414
41511
|
if (hasAlignment) css["align-content"] = alignItems;
|
|
41415
41512
|
}
|
|
41416
|
-
if (normGap != null) css["row-gap"] =
|
|
41417
|
-
if (normCgap != null) css["column-gap"] =
|
|
41513
|
+
if (normGap != null) css["row-gap"] = toCssLength(normGap);
|
|
41514
|
+
if (normCgap != null) css["column-gap"] = toCssLength(normCgap);
|
|
41418
41515
|
}
|
|
41419
41516
|
}
|
|
41420
41517
|
if (props.clipcontent) {
|
|
@@ -41480,18 +41577,9 @@ function getStaticLayoutPropsFromElement(element, dynamicGroups) {
|
|
|
41480
41577
|
}
|
|
41481
41578
|
return hasAny ? props : null;
|
|
41482
41579
|
}
|
|
41483
|
-
function parseDimensionValue(value, element) {
|
|
41484
|
-
if (value === "auto") return "auto";
|
|
41485
|
-
if (value === "hug") return "fit-content";
|
|
41486
|
-
if (value === "fill") return "100%";
|
|
41487
|
-
if (/(%|vw|vh|em|rem|px|pt|pc|in|cm|mm)$/.test(value)) return value;
|
|
41488
|
-
const n = Number(value);
|
|
41489
|
-
if (!Number.isNaN(n)) return `${n}px`;
|
|
41490
|
-
return value;
|
|
41491
|
-
}
|
|
41492
41580
|
function expandShorthand(value) {
|
|
41493
41581
|
const parts = splitCssShorthandOnSpaces(value).map(
|
|
41494
|
-
(v) => v !== "unset" ?
|
|
41582
|
+
(v) => v !== "unset" ? normalizeSpacingToken(v) : "unset"
|
|
41495
41583
|
);
|
|
41496
41584
|
if (parts.length === 1) return [parts[0], parts[0], parts[0], parts[0]];
|
|
41497
41585
|
if (parts.length === 2) return [parts[0], parts[1], parts[0], parts[1]];
|
|
@@ -41627,6 +41715,10 @@ var AutolayoutCodegen = class {
|
|
|
41627
41715
|
if (!raw || isBind(raw)) continue;
|
|
41628
41716
|
if (attrName === "width" || attrName === "height") continue;
|
|
41629
41717
|
if (info.type === "shorthand-4" && info.shorthandSides) {
|
|
41718
|
+
if (SPACING_SHORTHAND_ATTRS.has(attrName) && !isValidSpacingShorthand(raw)) {
|
|
41719
|
+
element.removeAttribute(attrName);
|
|
41720
|
+
continue;
|
|
41721
|
+
}
|
|
41630
41722
|
const [top, right, bottom, left] = expandShorthand(raw);
|
|
41631
41723
|
const sides = info.shorthandSides;
|
|
41632
41724
|
if (top !== "unset") classNames.push(this.registerClass(sides.top, top));
|
|
@@ -41641,6 +41733,8 @@ var AutolayoutCodegen = class {
|
|
|
41641
41733
|
if (attrName === "fontsize" && fontUnit && !isBind(fontUnit)) {
|
|
41642
41734
|
const n = Number(raw);
|
|
41643
41735
|
cssValue = !Number.isNaN(n) ? `${n}${fontUnit}` : parseDimensionValue(raw);
|
|
41736
|
+
} else if (SPACING_SIDE_ATTRS.has(attrName)) {
|
|
41737
|
+
cssValue = normalizeSpacingToken(raw);
|
|
41644
41738
|
} else {
|
|
41645
41739
|
cssValue = parseDimensionValue(raw);
|
|
41646
41740
|
}
|
|
@@ -41782,6 +41876,88 @@ var AutolayoutCodegen = class {
|
|
|
41782
41876
|
}
|
|
41783
41877
|
};
|
|
41784
41878
|
|
|
41879
|
+
// src/transpile/components/data/table/utils.ts
|
|
41880
|
+
var CUSTOM_PIPE_REGEX = /(custom(\s*:))/;
|
|
41881
|
+
function checkIsCustomPipeExpression(exp) {
|
|
41882
|
+
return CUSTOM_PIPE_REGEX.test(exp);
|
|
41883
|
+
}
|
|
41884
|
+
function findNearestElement(element, tagName) {
|
|
41885
|
+
var _a, _b;
|
|
41886
|
+
let current = element.parentNode;
|
|
41887
|
+
const target = tagName.toLowerCase();
|
|
41888
|
+
while (current) {
|
|
41889
|
+
if (((_a = current.tagName) == null ? void 0 : _a.toLowerCase()) === target) {
|
|
41890
|
+
return (_b = current.getAttribute("name")) != null ? _b : void 0;
|
|
41891
|
+
}
|
|
41892
|
+
current = current.parentNode;
|
|
41893
|
+
}
|
|
41894
|
+
return void 0;
|
|
41895
|
+
}
|
|
41896
|
+
function convertActionToClickHandler(actionAttr, tableName, liveTableName) {
|
|
41897
|
+
const statements = actionAttr.split(";").map((s) => s.trim()).filter(Boolean);
|
|
41898
|
+
const converted = statements.map((statement) => {
|
|
41899
|
+
statement = convertHyphenatedPropsToBracketNotation(statement);
|
|
41900
|
+
let cleaned = statement.replace(/\$event/g, "event");
|
|
41901
|
+
if (cleaned.startsWith("event.")) return cleaned;
|
|
41902
|
+
if (cleaned.startsWith("Actions") || cleaned.startsWith("Variables") || cleaned.startsWith("Widgets")) {
|
|
41903
|
+
return `fragment.${cleaned}`;
|
|
41904
|
+
}
|
|
41905
|
+
if (cleaned.includes("(")) {
|
|
41906
|
+
const funcName = cleaned.split("(")[0];
|
|
41907
|
+
if (tableName && funcName.startsWith(`${tableName}_`)) {
|
|
41908
|
+
return `fragment.${cleaned}`;
|
|
41909
|
+
}
|
|
41910
|
+
if (cleaned.includes("(event)")) {
|
|
41911
|
+
cleaned = cleaned.replace("(event)", "(event, widget, row)");
|
|
41912
|
+
}
|
|
41913
|
+
if (liveTableName && (funcName.endsWith("addNewRow") || funcName.endsWith("editRow"))) {
|
|
41914
|
+
return `fragment.Widgets.${liveTableName}.${cleaned}`;
|
|
41915
|
+
}
|
|
41916
|
+
return tableName ? `fragment.Widgets.${tableName}.${cleaned}` : `fragment.${cleaned}`;
|
|
41917
|
+
}
|
|
41918
|
+
return `fragment.${cleaned}`;
|
|
41919
|
+
});
|
|
41920
|
+
return `onClick={(event, widget, row) => {
|
|
41921
|
+
${converted.join("\n ")}
|
|
41922
|
+
}}`;
|
|
41923
|
+
}
|
|
41924
|
+
function transformTableColumnClassExpression(expression) {
|
|
41925
|
+
if (!expression) return "";
|
|
41926
|
+
let transformed = expression.replace(/fragment\??\.row/g, "rowData");
|
|
41927
|
+
transformed = transformed.replace(/\brow\./g, "rowData.");
|
|
41928
|
+
transformed = transformed.replace(/\brow\[/g, "rowData[");
|
|
41929
|
+
transformed = addOptionalChaining(transformed);
|
|
41930
|
+
transformed = transformed.replace(/(\w+)\?\.\s*\(/g, "$1(");
|
|
41931
|
+
transformed = transformed.replace(/"([^"]*)"/g, "'$1'");
|
|
41932
|
+
return transformed;
|
|
41933
|
+
}
|
|
41934
|
+
function getFormatCellExpression(element, context) {
|
|
41935
|
+
const binding = element.getAttribute("binding");
|
|
41936
|
+
if (!binding || binding === "rowOperations") {
|
|
41937
|
+
return null;
|
|
41938
|
+
}
|
|
41939
|
+
let formatPattern = element.getAttribute("custompipeformat") || element.getAttribute("formatpattern");
|
|
41940
|
+
if (!formatPattern || formatPattern === "None") {
|
|
41941
|
+
return null;
|
|
41942
|
+
}
|
|
41943
|
+
const columnValue = `row.getProperty('${binding}')`;
|
|
41944
|
+
let pipeExpression = "";
|
|
41945
|
+
if (checkIsCustomPipeExpression(formatPattern)) {
|
|
41946
|
+
pipeExpression = `${columnValue} | ${formatPattern} : row`;
|
|
41947
|
+
}
|
|
41948
|
+
if (!pipeExpression) {
|
|
41949
|
+
return null;
|
|
41950
|
+
}
|
|
41951
|
+
let transformed = bind_ex_transformer_default(pipeExpression, "fragment", "attr");
|
|
41952
|
+
transformed = transformed.replace(/fragment\??\.row/g, "rowData");
|
|
41953
|
+
transformed = transformed.replace(/\brow\./g, "rowData.");
|
|
41954
|
+
transformed = transformed.replace(/\brow\b(?![a-zA-Z_$0-9])/g, "rowData");
|
|
41955
|
+
transformed = resolveFormatContext(transformed, context);
|
|
41956
|
+
transformed = addOptionalChaining(transformed);
|
|
41957
|
+
transformed = transformed.replace(/(\w+)\?\.\s*\(/g, "$1(");
|
|
41958
|
+
return transformed;
|
|
41959
|
+
}
|
|
41960
|
+
|
|
41785
41961
|
// src/transpile/transpile.ts
|
|
41786
41962
|
var generateRandomString = (length = 10) => Math.random().toString(20).substr(2, length);
|
|
41787
41963
|
var EVENT_NAME_MAP = {
|
|
@@ -41865,7 +42041,7 @@ var TranspilationContext2 = class {
|
|
|
41865
42041
|
this.data[key] = value;
|
|
41866
42042
|
}
|
|
41867
42043
|
};
|
|
41868
|
-
var
|
|
42044
|
+
var _Transpiler = class _Transpiler {
|
|
41869
42045
|
constructor() {
|
|
41870
42046
|
this.transformers = /* @__PURE__ */ new Map();
|
|
41871
42047
|
this.componentNamesList = [];
|
|
@@ -42217,8 +42393,99 @@ var Transpiler = class {
|
|
|
42217
42393
|
className: addOptionalChaining(classes)
|
|
42218
42394
|
};
|
|
42219
42395
|
}
|
|
42396
|
+
// Parse arguments properly, handling commas inside object literals and arrays
|
|
42397
|
+
parseArguments(argString) {
|
|
42398
|
+
const args = [];
|
|
42399
|
+
let currentArg = "";
|
|
42400
|
+
let braceCount = 0;
|
|
42401
|
+
let bracketCount = 0;
|
|
42402
|
+
for (let i = 0; i < argString.length; i++) {
|
|
42403
|
+
const char = argString[i];
|
|
42404
|
+
if (char === "{") braceCount++;
|
|
42405
|
+
else if (char === "}") braceCount--;
|
|
42406
|
+
else if (char === "[") bracketCount++;
|
|
42407
|
+
else if (char === "]") bracketCount--;
|
|
42408
|
+
if (char === "," && braceCount === 0 && bracketCount === 0) {
|
|
42409
|
+
if (currentArg.trim()) {
|
|
42410
|
+
args.push(currentArg.trim());
|
|
42411
|
+
}
|
|
42412
|
+
currentArg = "";
|
|
42413
|
+
continue;
|
|
42414
|
+
}
|
|
42415
|
+
currentArg += char;
|
|
42416
|
+
}
|
|
42417
|
+
if (currentArg.trim()) {
|
|
42418
|
+
args.push(currentArg.trim());
|
|
42419
|
+
}
|
|
42420
|
+
return args;
|
|
42421
|
+
}
|
|
42422
|
+
// Droping literal arguments like strings, numbers, booleans, null/undefined
|
|
42423
|
+
isLiteral(s) {
|
|
42424
|
+
const v = s.trim();
|
|
42425
|
+
return /^(['"]).*\1$/.test(v) || /^-?\d+(?:\.\d+)?$/.test(v) || /^(true|false|null|undefined)$/i.test(v);
|
|
42426
|
+
}
|
|
42427
|
+
// Arithmetic/binary expressions (e.g. "0-5", "0+3") are not valid parameter names.
|
|
42428
|
+
// The Angular parser converts unary negatives like -5 into binary (0-5).
|
|
42429
|
+
isArithmeticExpression(s) {
|
|
42430
|
+
const v = s.trim();
|
|
42431
|
+
return /^\d+\s*[-+*/%]\s*\d+/.test(v);
|
|
42432
|
+
}
|
|
42433
|
+
// Check if argument contains a dot (property access), which makes it an expression, not a valid parameter name
|
|
42434
|
+
isPropertyAccess(s) {
|
|
42435
|
+
return s.trim().includes(".");
|
|
42436
|
+
}
|
|
42437
|
+
// Object literals should not be extracted as function parameters
|
|
42438
|
+
isObjectLiteral(s) {
|
|
42439
|
+
const trimmed = s.trim();
|
|
42440
|
+
if (trimmed.startsWith("{") && trimmed.includes(":")) {
|
|
42441
|
+
let braceCount = 0;
|
|
42442
|
+
let inString = false;
|
|
42443
|
+
let stringChar = "";
|
|
42444
|
+
for (let i = 0; i < trimmed.length; i++) {
|
|
42445
|
+
const char = trimmed[i];
|
|
42446
|
+
if ((char === '"' || char === "'") && (i === 0 || trimmed[i - 1] !== "\\")) {
|
|
42447
|
+
if (!inString) {
|
|
42448
|
+
inString = true;
|
|
42449
|
+
stringChar = char;
|
|
42450
|
+
} else if (char === stringChar) {
|
|
42451
|
+
inString = false;
|
|
42452
|
+
}
|
|
42453
|
+
} else if (!inString) {
|
|
42454
|
+
if (char === "{") braceCount++;
|
|
42455
|
+
else if (char === "}") braceCount--;
|
|
42456
|
+
}
|
|
42457
|
+
}
|
|
42458
|
+
return braceCount === 0 && trimmed.endsWith("}");
|
|
42459
|
+
}
|
|
42460
|
+
return false;
|
|
42461
|
+
}
|
|
42462
|
+
// Array literals should not be extracted as function parameters
|
|
42463
|
+
isArrayLiteral(s) {
|
|
42464
|
+
const trimmed = s.trim();
|
|
42465
|
+
if (trimmed.startsWith("[") && trimmed.endsWith("]")) {
|
|
42466
|
+
let bracketCount = 0;
|
|
42467
|
+
let inString = false;
|
|
42468
|
+
let stringChar = "";
|
|
42469
|
+
for (let i = 0; i < trimmed.length; i++) {
|
|
42470
|
+
const char = trimmed[i];
|
|
42471
|
+
if ((char === '"' || char === "'") && (i === 0 || trimmed[i - 1] !== "\\")) {
|
|
42472
|
+
if (!inString) {
|
|
42473
|
+
inString = true;
|
|
42474
|
+
stringChar = char;
|
|
42475
|
+
} else if (char === stringChar) {
|
|
42476
|
+
inString = false;
|
|
42477
|
+
}
|
|
42478
|
+
} else if (!inString) {
|
|
42479
|
+
if (char === "[") bracketCount++;
|
|
42480
|
+
else if (char === "]") bracketCount--;
|
|
42481
|
+
}
|
|
42482
|
+
}
|
|
42483
|
+
return bracketCount === 0;
|
|
42484
|
+
}
|
|
42485
|
+
return false;
|
|
42486
|
+
}
|
|
42220
42487
|
findArgs(str, context) {
|
|
42221
|
-
var _a;
|
|
42488
|
+
var _a, _b;
|
|
42222
42489
|
let argStr = "";
|
|
42223
42490
|
let maxSplits = 0;
|
|
42224
42491
|
(_a = str.match(/\([^;]*\)/g)) == null ? void 0 : _a.forEach((s) => {
|
|
@@ -42229,95 +42496,11 @@ var Transpiler = class {
|
|
|
42229
42496
|
}
|
|
42230
42497
|
});
|
|
42231
42498
|
argStr = argStr.replace(/\(|\)/g, "");
|
|
42232
|
-
if (context == null ? void 0 : context.get("isInsideList")) {
|
|
42499
|
+
if ((_b = context == null ? void 0 : context.get) == null ? void 0 : _b.call(context, "isInsideList")) {
|
|
42233
42500
|
argStr = argStr.split(",").filter((s) => !(0, import_lodash5.includes)(["$item", "currentItemWidgets"], s.trim())).join(",");
|
|
42234
42501
|
}
|
|
42235
|
-
const
|
|
42236
|
-
|
|
42237
|
-
let currentArg = "";
|
|
42238
|
-
let braceCount = 0;
|
|
42239
|
-
let bracketCount = 0;
|
|
42240
|
-
for (let i = 0; i < argString.length; i++) {
|
|
42241
|
-
const char = argString[i];
|
|
42242
|
-
if (char === "{") braceCount++;
|
|
42243
|
-
else if (char === "}") braceCount--;
|
|
42244
|
-
else if (char === "[") bracketCount++;
|
|
42245
|
-
else if (char === "]") bracketCount--;
|
|
42246
|
-
if (char === "," && braceCount === 0 && bracketCount === 0) {
|
|
42247
|
-
if (currentArg.trim()) {
|
|
42248
|
-
args2.push(currentArg.trim());
|
|
42249
|
-
}
|
|
42250
|
-
currentArg = "";
|
|
42251
|
-
continue;
|
|
42252
|
-
}
|
|
42253
|
-
currentArg += char;
|
|
42254
|
-
}
|
|
42255
|
-
if (currentArg.trim()) {
|
|
42256
|
-
args2.push(currentArg.trim());
|
|
42257
|
-
}
|
|
42258
|
-
return args2;
|
|
42259
|
-
};
|
|
42260
|
-
const isLiteral = (s) => {
|
|
42261
|
-
const v = s.trim();
|
|
42262
|
-
return /^(['"]).*\1$/.test(v) || /^-?\d+(?:\.\d+)?$/.test(v) || /^(true|false|null|undefined)$/i.test(v);
|
|
42263
|
-
};
|
|
42264
|
-
const isArithmeticExpression = (s) => {
|
|
42265
|
-
const v = s.trim();
|
|
42266
|
-
return /^\d+\s*[-+*/%]\s*\d+/.test(v);
|
|
42267
|
-
};
|
|
42268
|
-
const isPropertyAccess = (s) => {
|
|
42269
|
-
return s.trim().includes(".");
|
|
42270
|
-
};
|
|
42271
|
-
const isObjectLiteral = (s) => {
|
|
42272
|
-
const trimmed = s.trim();
|
|
42273
|
-
if (trimmed.startsWith("{") && trimmed.includes(":")) {
|
|
42274
|
-
let braceCount = 0;
|
|
42275
|
-
let inString = false;
|
|
42276
|
-
let stringChar = "";
|
|
42277
|
-
for (let i = 0; i < trimmed.length; i++) {
|
|
42278
|
-
const char = trimmed[i];
|
|
42279
|
-
if ((char === '"' || char === "'") && (i === 0 || trimmed[i - 1] !== "\\")) {
|
|
42280
|
-
if (!inString) {
|
|
42281
|
-
inString = true;
|
|
42282
|
-
stringChar = char;
|
|
42283
|
-
} else if (char === stringChar) {
|
|
42284
|
-
inString = false;
|
|
42285
|
-
}
|
|
42286
|
-
} else if (!inString) {
|
|
42287
|
-
if (char === "{") braceCount++;
|
|
42288
|
-
else if (char === "}") braceCount--;
|
|
42289
|
-
}
|
|
42290
|
-
}
|
|
42291
|
-
return braceCount === 0 && trimmed.endsWith("}");
|
|
42292
|
-
}
|
|
42293
|
-
return false;
|
|
42294
|
-
};
|
|
42295
|
-
const isArrayLiteral = (s) => {
|
|
42296
|
-
const trimmed = s.trim();
|
|
42297
|
-
if (trimmed.startsWith("[") && trimmed.endsWith("]")) {
|
|
42298
|
-
let bracketCount = 0;
|
|
42299
|
-
let inString = false;
|
|
42300
|
-
let stringChar = "";
|
|
42301
|
-
for (let i = 0; i < trimmed.length; i++) {
|
|
42302
|
-
const char = trimmed[i];
|
|
42303
|
-
if ((char === '"' || char === "'") && (i === 0 || trimmed[i - 1] !== "\\")) {
|
|
42304
|
-
if (!inString) {
|
|
42305
|
-
inString = true;
|
|
42306
|
-
stringChar = char;
|
|
42307
|
-
} else if (char === stringChar) {
|
|
42308
|
-
inString = false;
|
|
42309
|
-
}
|
|
42310
|
-
} else if (!inString) {
|
|
42311
|
-
if (char === "[") bracketCount++;
|
|
42312
|
-
else if (char === "]") bracketCount--;
|
|
42313
|
-
}
|
|
42314
|
-
}
|
|
42315
|
-
return bracketCount === 0;
|
|
42316
|
-
}
|
|
42317
|
-
return false;
|
|
42318
|
-
};
|
|
42319
|
-
const parsedArgs = parseArguments(argStr);
|
|
42320
|
-
const args = parsedArgs.filter(Boolean).filter((s) => !isLiteral(s)).filter((s) => !isArithmeticExpression(s)).filter((s) => !isPropertyAccess(s)).filter((s) => !isObjectLiteral(s)).filter((s) => !isArrayLiteral(s));
|
|
42502
|
+
const parsedArgs = this.parseArguments(argStr);
|
|
42503
|
+
const args = parsedArgs.filter(Boolean).filter((s) => !this.isLiteral(s)).filter((s) => !this.isArithmeticExpression(s)).filter((s) => !this.isPropertyAccess(s)).filter((s) => !this.isObjectLiteral(s)).filter((s) => !this.isArrayLiteral(s));
|
|
42321
42504
|
const usesBareEvent = /\$event\b/.test(str);
|
|
42322
42505
|
const hasEventParam = args.some((a) => a.trim() === "$event");
|
|
42323
42506
|
if (usesBareEvent && !hasEventParam) {
|
|
@@ -42325,6 +42508,96 @@ var Transpiler = class {
|
|
|
42325
42508
|
}
|
|
42326
42509
|
return `(${args.join(", ")})`;
|
|
42327
42510
|
}
|
|
42511
|
+
// Parse "($event, widget)" → ["$event", "widget"]; "()" → []
|
|
42512
|
+
parseArrowParamNames(argsStr) {
|
|
42513
|
+
const inner = argsStr.replace(/^\(|\)$/g, "").trim();
|
|
42514
|
+
if (!inner) return [];
|
|
42515
|
+
return inner.split(",").map((s) => s.trim()).filter(Boolean);
|
|
42516
|
+
}
|
|
42517
|
+
// Detect a `;` outside strings/parens/braces/brackets — signals multiple top-level statements
|
|
42518
|
+
hasTopLevelSemicolon(body) {
|
|
42519
|
+
let paren = 0;
|
|
42520
|
+
let brace = 0;
|
|
42521
|
+
let bracket = 0;
|
|
42522
|
+
let inString = false;
|
|
42523
|
+
let stringChar = "";
|
|
42524
|
+
for (let i = 0; i < body.length; i++) {
|
|
42525
|
+
const ch = body[i];
|
|
42526
|
+
if ((ch === '"' || ch === "'") && (i === 0 || body[i - 1] !== "\\")) {
|
|
42527
|
+
if (!inString) {
|
|
42528
|
+
inString = true;
|
|
42529
|
+
stringChar = ch;
|
|
42530
|
+
} else if (ch === stringChar) {
|
|
42531
|
+
inString = false;
|
|
42532
|
+
}
|
|
42533
|
+
continue;
|
|
42534
|
+
}
|
|
42535
|
+
if (inString) continue;
|
|
42536
|
+
if (ch === "(") paren++;
|
|
42537
|
+
else if (ch === ")") paren--;
|
|
42538
|
+
else if (ch === "{") brace++;
|
|
42539
|
+
else if (ch === "}") brace--;
|
|
42540
|
+
else if (ch === "[") bracket++;
|
|
42541
|
+
else if (ch === "]") bracket--;
|
|
42542
|
+
else if (ch === ";" && paren === 0 && brace === 0 && bracket === 0) return true;
|
|
42543
|
+
}
|
|
42544
|
+
return false;
|
|
42545
|
+
}
|
|
42546
|
+
isInstanceBoundFragmentCallee(calleeRef) {
|
|
42547
|
+
return _Transpiler.INSTANCE_BOUND_CALLEE.test(calleeRef);
|
|
42548
|
+
}
|
|
42549
|
+
// Match a body shaped like `fragment(...property chain...)?.(args)` — return callee ref + raw arg list
|
|
42550
|
+
extractFragmentMethodCall(body) {
|
|
42551
|
+
const trimmed = body.trim();
|
|
42552
|
+
if (!trimmed.endsWith(")") || !trimmed.startsWith("fragment")) return null;
|
|
42553
|
+
let depth = 0;
|
|
42554
|
+
let openIdx = -1;
|
|
42555
|
+
for (let i = trimmed.length - 1; i >= 0; i--) {
|
|
42556
|
+
const ch = trimmed[i];
|
|
42557
|
+
if (ch === ")") depth++;
|
|
42558
|
+
else if (ch === "(") {
|
|
42559
|
+
depth--;
|
|
42560
|
+
if (depth === 0) {
|
|
42561
|
+
openIdx = i;
|
|
42562
|
+
break;
|
|
42563
|
+
}
|
|
42564
|
+
}
|
|
42565
|
+
}
|
|
42566
|
+
if (openIdx < 2) return null;
|
|
42567
|
+
if (trimmed.substring(openIdx - 2, openIdx) !== "?.") return null;
|
|
42568
|
+
const calleeRef = trimmed.substring(0, openIdx - 2);
|
|
42569
|
+
if (!_Transpiler.FRAGMENT_CALLEE_REF.test(calleeRef)) return null;
|
|
42570
|
+
const argsStr = trimmed.substring(openIdx + 1, trimmed.length - 1);
|
|
42571
|
+
const callArgs = this.parseArguments(argsStr);
|
|
42572
|
+
return { calleeRef, callArgs };
|
|
42573
|
+
}
|
|
42574
|
+
// Decide if an `on-*` handler body can be emitted as a direct function reference instead of an arrow wrapper.
|
|
42575
|
+
// Eligible when body is a single `fragment?.x?.(...)` call whose args are all simple identifiers already
|
|
42576
|
+
// present in the synthesized arrow parameter list — i.e. nothing references closure-only values like `$item`,
|
|
42577
|
+
// `currentItemWidgetsRef.current`, literals, property-access expressions, or table column `rowData`.
|
|
42578
|
+
//
|
|
42579
|
+
// Additional exclusion: callee paths through `Actions` or `Variables` resolve to runtime instance
|
|
42580
|
+
// methods (NavigationAction.invoke, BaseVariable.invoke, setData, navigate, …) that rely on `this`.
|
|
42581
|
+
// Emitting them as detached refs strips the receiver and breaks runtime + WmAnchor's
|
|
42582
|
+
// `getGoToPageNameFromClickHandler` source-string detection, so always wrap those in an arrow.
|
|
42583
|
+
canUseDirectHandlerReference(body, arrowParams) {
|
|
42584
|
+
const trimmed = body.replace(/;+\s*$/, "").trim();
|
|
42585
|
+
if (!trimmed) return null;
|
|
42586
|
+
if (this.hasTopLevelSemicolon(trimmed)) return null;
|
|
42587
|
+
const parsed = this.extractFragmentMethodCall(trimmed);
|
|
42588
|
+
if (!parsed) return null;
|
|
42589
|
+
if (this.isInstanceBoundFragmentCallee(parsed.calleeRef)) return null;
|
|
42590
|
+
const paramSet = new Set(arrowParams);
|
|
42591
|
+
for (const raw of parsed.callArgs) {
|
|
42592
|
+
const a = raw.trim();
|
|
42593
|
+
if (!a) continue;
|
|
42594
|
+
if (this.isLiteral(a) || this.isArithmeticExpression(a) || this.isObjectLiteral(a) || this.isArrayLiteral(a) || this.isPropertyAccess(a)) {
|
|
42595
|
+
return null;
|
|
42596
|
+
}
|
|
42597
|
+
if (!paramSet.has(a)) return null;
|
|
42598
|
+
}
|
|
42599
|
+
return parsed.calleeRef;
|
|
42600
|
+
}
|
|
42328
42601
|
quoteAttr(v) {
|
|
42329
42602
|
return ("" + v).replace(/&/g, "&").replace(/'/g, "'").replace(/"/g, """).replace(/</g, "<").replace(/>/g, ">");
|
|
42330
42603
|
}
|
|
@@ -42344,6 +42617,7 @@ var Transpiler = class {
|
|
|
42344
42617
|
return attrName.endsWith("url") || attrName.endsWith("src");
|
|
42345
42618
|
}
|
|
42346
42619
|
transformAttr(tagName, name, value, context, tx) {
|
|
42620
|
+
var _a, _b, _c;
|
|
42347
42621
|
if (name === "styles" || name === "style" || name === "className") ; else if (name === "groupby" && value.includes("(")) {
|
|
42348
42622
|
value = `${this.findArgs(value, context)} => ${value}`;
|
|
42349
42623
|
value = `{${value}}`;
|
|
@@ -42352,16 +42626,23 @@ var Transpiler = class {
|
|
|
42352
42626
|
value = value.replace(/item,/g, "$item,");
|
|
42353
42627
|
value = value.replace(/item\./g, "$item.");
|
|
42354
42628
|
value = value.replace(/item\)/g, "$item)");
|
|
42355
|
-
if (context == null ? void 0 : context.get("isInsideList")) {
|
|
42629
|
+
if ((_a = context == null ? void 0 : context.get) == null ? void 0 : _a.call(context, "isInsideList")) {
|
|
42356
42630
|
value = value.replace(/;+\s*$/, "").trim();
|
|
42357
42631
|
value = addFragmentOptionalChaining(value, false);
|
|
42358
42632
|
}
|
|
42359
42633
|
const args = this.findArgs(value, context);
|
|
42360
|
-
if (context == null ? void 0 : context.get("isInsideTableColumn")) {
|
|
42634
|
+
if ((_b = context == null ? void 0 : context.get) == null ? void 0 : _b.call(context, "isInsideTableColumn")) {
|
|
42361
42635
|
value = value.replace(/\brow\b/g, "rowData");
|
|
42362
42636
|
}
|
|
42363
|
-
|
|
42364
|
-
|
|
42637
|
+
const arrowParams = this.parseArrowParamNames(args);
|
|
42638
|
+
const bodyForCheck = value.replace(/;+\s*$/, "").trim();
|
|
42639
|
+
const directRef = this.canUseDirectHandlerReference(bodyForCheck, arrowParams);
|
|
42640
|
+
if (directRef) {
|
|
42641
|
+
value = `{${directRef}}`;
|
|
42642
|
+
} else {
|
|
42643
|
+
value = `${args} => {${value}}`;
|
|
42644
|
+
value = `{${value}}`;
|
|
42645
|
+
}
|
|
42365
42646
|
} else if (name === "datasource" || name === "deletedatasource") {
|
|
42366
42647
|
if (value.startsWith("fragment")) {
|
|
42367
42648
|
value = `{${value}}`;
|
|
@@ -42373,7 +42654,8 @@ var Transpiler = class {
|
|
|
42373
42654
|
let exp = `${value.substring(5)}`;
|
|
42374
42655
|
exp = exp.replace("fragment.Page", "fragment");
|
|
42375
42656
|
const isProgressCircleDatavalue = tagName === "wm-progress-circle" && name === "datavalue";
|
|
42376
|
-
exp = modifyExpression(exp);
|
|
42657
|
+
exp = ((_c = context == null ? void 0 : context.get) == null ? void 0 : _c.call(context, "isInsideTableColumn")) ? transformTableColumnClassExpression(exp) : modifyExpression(exp);
|
|
42658
|
+
exp = resolveFormatContext(exp, context);
|
|
42377
42659
|
exp = this.convertStringBooleanTernary(exp);
|
|
42378
42660
|
if (!exp) {
|
|
42379
42661
|
exp = '""';
|
|
@@ -42486,9 +42768,18 @@ var Transpiler = class {
|
|
|
42486
42768
|
transpiler.transformers.set(tagName, transformer);
|
|
42487
42769
|
}
|
|
42488
42770
|
};
|
|
42771
|
+
// Pure property / safe-property / keyed-read chain rooted at `fragment`.
|
|
42772
|
+
// Rejects callee refs that contain intermediate calls (e.g. `fragment.a?.b?.()?.c`),
|
|
42773
|
+
// operators, assignments, whitespace — anything that would change semantics when
|
|
42774
|
+
// evaluated at render time instead of click time.
|
|
42775
|
+
_Transpiler.FRAGMENT_CALLEE_REF = /^fragment(?:\??\.[a-zA-Z_$][\w$]*|(?:\?\.)?\[[^\]]*\])*$/;
|
|
42776
|
+
// Callee paths rooted at runtime instance objects (Actions, Variables) whose methods
|
|
42777
|
+
// (invoke, navigate, setData, …) rely on `this` and must not be emitted as detached refs.
|
|
42778
|
+
_Transpiler.INSTANCE_BOUND_CALLEE = /(?:\?\.|\.)(?:Actions|Variables)(?:\?\.|\.|\[|$)/;
|
|
42779
|
+
var Transpiler = _Transpiler;
|
|
42489
42780
|
var transpiler = new Transpiler();
|
|
42490
42781
|
var registerTransformer = transpiler.registerTransformer.bind(transpiler);
|
|
42491
|
-
var transpileMarkup = (markup, isPartOfPrefab, splitCode, variables, preview) => {
|
|
42782
|
+
var transpileMarkup = (markup, isPartOfPrefab, splitCode, variables, preview, insideTableColumn) => {
|
|
42492
42783
|
const parsed = parse5(markup, {
|
|
42493
42784
|
blockTextElements: {}
|
|
42494
42785
|
});
|
|
@@ -42517,7 +42808,8 @@ var transpileMarkup = (markup, isPartOfPrefab, splitCode, variables, preview) =>
|
|
|
42517
42808
|
data: {
|
|
42518
42809
|
twoWayBindingVariables,
|
|
42519
42810
|
autolayoutCodegen,
|
|
42520
|
-
preview: preview === true
|
|
42811
|
+
preview: preview === true,
|
|
42812
|
+
...insideTableColumn ? { isInsideTableColumn: true } : {}
|
|
42521
42813
|
}
|
|
42522
42814
|
});
|
|
42523
42815
|
parsed.childNodes.forEach((node) => {
|
|
@@ -42581,15 +42873,14 @@ var createExpression = (element, attrName) => {
|
|
|
42581
42873
|
displayexpression = displayexpression.replace(/\$item\[fragment.(.*?)\]/g, "$item['$1']");
|
|
42582
42874
|
displayexpression = displayexpression.replace(/\$item\['(.*?)'\]/g, "_get($item, '$1')");
|
|
42583
42875
|
displayexpression = displayexpression.replace(/fragment.index/g, "$index");
|
|
42584
|
-
if (displayexpression
|
|
42585
|
-
displayexpression = displayexpression.
|
|
42876
|
+
if (/formatters/.test(displayexpression)) {
|
|
42877
|
+
displayexpression = displayexpression.split(FORMAT_CONTEXT).join("$item");
|
|
42586
42878
|
}
|
|
42587
42879
|
displayexpression = displayexpression.replace(
|
|
42588
42880
|
/fragment\.([a-zA-Z_$][a-zA-Z0-9_$]*)/g,
|
|
42589
42881
|
"$item.$1"
|
|
42590
42882
|
);
|
|
42591
|
-
displayexpression = displayexpression
|
|
42592
|
-
displayexpression = displayexpression.replace(/([a-zA-Z0-9_$\]])\[/g, "$1?.[");
|
|
42883
|
+
displayexpression = addOptionalChaining(displayexpression);
|
|
42593
42884
|
const exp = (0, import_lodash5.includes)(displayexpression, "(") ? `${displayexpression}` : displayexpression;
|
|
42594
42885
|
if (displayexpression.indexOf("$index") >= 0) {
|
|
42595
42886
|
return `{($item, $index, $length) => (${exp})}`;
|
|
@@ -42677,100 +42968,59 @@ var label_transformer_default = {
|
|
|
42677
42968
|
imports: (element, context) => imports2
|
|
42678
42969
|
};
|
|
42679
42970
|
|
|
42680
|
-
// src/transpile/components/
|
|
42681
|
-
var
|
|
42682
|
-
var imports3 = [];
|
|
42683
|
-
var ignoredAttributes = ["name", "show", "content", "class", "styles"];
|
|
42684
|
-
var partial_content_transformer_default = {
|
|
42685
|
-
pre: (element, context) => {
|
|
42686
|
-
let content = element.attributes["content"];
|
|
42687
|
-
const name = element.attributes["name"];
|
|
42688
|
-
if (content) {
|
|
42689
|
-
const params = {};
|
|
42690
|
-
if (!element.hasAttribute("is-table-row")) {
|
|
42691
|
-
Object.keys(element.attrs).forEach((k) => {
|
|
42692
|
-
if (!ignoredAttributes.includes(k)) {
|
|
42693
|
-
params[k] = element.attrs[k];
|
|
42694
|
-
}
|
|
42695
|
-
});
|
|
42696
|
-
}
|
|
42697
|
-
const watch = [];
|
|
42698
|
-
element.childNodes.filter((node) => isHTMLElement(node) && node.tagName === "WM-PARAM").forEach((node) => {
|
|
42699
|
-
const e = node;
|
|
42700
|
-
const name2 = e.getAttribute("name") || "";
|
|
42701
|
-
let value = e.getAttribute("value") || "";
|
|
42702
|
-
if (value.includes("currentItem")) {
|
|
42703
|
-
const match = value.match(/currentItem\..+/);
|
|
42704
|
-
if (match) {
|
|
42705
|
-
value = `bind:${match[0]}`;
|
|
42706
|
-
}
|
|
42707
|
-
}
|
|
42708
|
-
params[name2] = value;
|
|
42709
|
-
watch.push(name2);
|
|
42710
|
-
});
|
|
42711
|
-
let paramStr = Object.keys(params).filter((k) => k !== "on-load").map((k) => `${k}="${(0, import_html_entities.encode)(params[k])}"`).join(" ");
|
|
42712
|
-
paramStr = transformAttrs(
|
|
42713
|
-
parse5(`<wm-partial-content ${paramStr}/>`).firstChild,
|
|
42714
|
-
context,
|
|
42715
|
-
inferTypeAndParseProperty
|
|
42716
|
-
);
|
|
42717
|
-
paramStr += ` content={props.content}`;
|
|
42718
|
-
if (context.isPartOfPrefab) {
|
|
42719
|
-
paramStr += " prefab={fragment.prefab}";
|
|
42720
|
-
paramStr += "prefabName={fragment.prefabName}";
|
|
42721
|
-
paramStr += "Prefab={stateProxy}";
|
|
42722
|
-
}
|
|
42723
|
-
return `<WmPartialContent ${watch.length > 0 ? `params={${JSON.stringify(watch)}}` : ""} onLoad={onLoad} ${paramStr} partialName={'${name}'} listener={props.listener} />`;
|
|
42724
|
-
}
|
|
42725
|
-
return "";
|
|
42726
|
-
},
|
|
42727
|
-
post: (element, context) => "",
|
|
42728
|
-
imports: (element, context) => element.hasAttribute("content") ? imports3 : []
|
|
42729
|
-
};
|
|
42730
|
-
|
|
42731
|
-
// src/transpile/components/layout/header.transformer.ts
|
|
42732
|
-
var imports4 = [
|
|
42971
|
+
// src/transpile/components/layout/layout-region-factory.ts
|
|
42972
|
+
var partialContainerImport = [
|
|
42733
42973
|
{
|
|
42734
|
-
name: "
|
|
42735
|
-
from: "@wavemaker-ai/react-runtime/components/
|
|
42974
|
+
name: "WmPartialContainer",
|
|
42975
|
+
from: "@wavemaker-ai/react-runtime/components/page/partial-container"
|
|
42736
42976
|
}
|
|
42737
42977
|
];
|
|
42738
|
-
|
|
42739
|
-
|
|
42740
|
-
|
|
42741
|
-
|
|
42742
|
-
|
|
42743
|
-
|
|
42744
|
-
|
|
42745
|
-
|
|
42978
|
+
function createLayoutRegionTransformer(config) {
|
|
42979
|
+
const { component, importPath, defaultContent, defaultName } = config;
|
|
42980
|
+
const tag = component[0];
|
|
42981
|
+
const componentImports = component.map((name, i) => ({ name, from: importPath[i] }));
|
|
42982
|
+
return {
|
|
42983
|
+
pre: (element, context) => {
|
|
42984
|
+
const content = element.getAttribute("content") || defaultContent;
|
|
42985
|
+
const name = element.getAttribute("name") || defaultName;
|
|
42986
|
+
const isPreview = context.get("preview") === true;
|
|
42987
|
+
if (isPreview) {
|
|
42988
|
+
return `<${tag} ${transformAttrs(element, context)}>
|
|
42989
|
+
<WmPartialContainer content="${content}" isLayout={true} partialName="${name}" listener={fragment} />
|
|
42990
|
+
`;
|
|
42746
42991
|
}
|
|
42747
|
-
return
|
|
42748
|
-
}
|
|
42749
|
-
const content = element.getAttribute("content") || "header";
|
|
42750
|
-
const name = element.getAttribute("name") || "header";
|
|
42751
|
-
return `<WmHeader ${transformAttrs(element, context)}>
|
|
42992
|
+
return `<${tag} ${transformAttrs(element, context)}>
|
|
42752
42993
|
<${content.charAt(0).toUpperCase() + content.slice(1)} isLayout={true} partialName="${name}" />
|
|
42753
42994
|
`;
|
|
42754
|
-
|
|
42755
|
-
|
|
42756
|
-
|
|
42757
|
-
|
|
42758
|
-
|
|
42759
|
-
|
|
42995
|
+
},
|
|
42996
|
+
post: () => `</${tag}>`,
|
|
42997
|
+
imports: (element, context) => {
|
|
42998
|
+
const isPreview = context.get("preview") === true;
|
|
42999
|
+
if (isPreview) {
|
|
43000
|
+
return [...componentImports, ...partialContainerImport];
|
|
43001
|
+
}
|
|
43002
|
+
const content = element.getAttribute("content") || defaultContent;
|
|
43003
|
+
return [
|
|
43004
|
+
...componentImports,
|
|
43005
|
+
{
|
|
43006
|
+
name: content.charAt(0).toUpperCase() + content.slice(1),
|
|
43007
|
+
from: `@/app/components/${content}/${content}`
|
|
43008
|
+
}
|
|
43009
|
+
];
|
|
42760
43010
|
}
|
|
42761
|
-
|
|
42762
|
-
|
|
42763
|
-
|
|
42764
|
-
|
|
42765
|
-
|
|
42766
|
-
|
|
42767
|
-
|
|
42768
|
-
|
|
42769
|
-
|
|
42770
|
-
};
|
|
43011
|
+
};
|
|
43012
|
+
}
|
|
43013
|
+
|
|
43014
|
+
// src/transpile/components/layout/header.transformer.ts
|
|
43015
|
+
var header_transformer_default = createLayoutRegionTransformer({
|
|
43016
|
+
component: ["WmHeader"],
|
|
43017
|
+
importPath: ["@wavemaker-ai/react-runtime/components/layout/header"],
|
|
43018
|
+
defaultContent: "header",
|
|
43019
|
+
defaultName: "header"
|
|
43020
|
+
});
|
|
42771
43021
|
|
|
42772
43022
|
// src/transpile/components/page/page-content.transformer.ts
|
|
42773
|
-
var
|
|
43023
|
+
var imports3 = [
|
|
42774
43024
|
{
|
|
42775
43025
|
name: "WmPageContent",
|
|
42776
43026
|
from: "@wavemaker-ai/react-runtime/components/page/page-content"
|
|
@@ -42779,7 +43029,7 @@ var imports5 = [
|
|
|
42779
43029
|
var page_content_transformer_default = {
|
|
42780
43030
|
pre: (element, context) => `<WmPageContent ${transformAttrs(element, context)} >`,
|
|
42781
43031
|
post: (element, context) => "</WmPageContent>",
|
|
42782
|
-
imports: (element, context) =>
|
|
43032
|
+
imports: (element, context) => imports3,
|
|
42783
43033
|
createComponent: (element, context) => createComponent2(element, context)
|
|
42784
43034
|
};
|
|
42785
43035
|
|
|
@@ -42793,7 +43043,7 @@ var PAGE_EVENT_ATTRS = [
|
|
|
42793
43043
|
];
|
|
42794
43044
|
var PAGE_EVENT_KEYS = ["attach", "detach", "destroy", "orientationchange", "resize"];
|
|
42795
43045
|
var THREE_ARG_EVENTS = /* @__PURE__ */ new Set(["orientationchange", "resize"]);
|
|
42796
|
-
var
|
|
43046
|
+
var imports4 = [
|
|
42797
43047
|
{
|
|
42798
43048
|
name: "WmPage",
|
|
42799
43049
|
from: "@wavemaker-ai/react-runtime/components/page"
|
|
@@ -42824,12 +43074,12 @@ var page_transformer_default = {
|
|
|
42824
43074
|
return `<WmPage ${transformAttrs(element, context)} >`;
|
|
42825
43075
|
},
|
|
42826
43076
|
post: (element, context) => "</WmPage>",
|
|
42827
|
-
imports: (element, context) =>
|
|
43077
|
+
imports: (element, context) => imports4,
|
|
42828
43078
|
createComponent: (element, context) => createComponent2(element, context)
|
|
42829
43079
|
};
|
|
42830
43080
|
|
|
42831
43081
|
// src/transpile/components/container/layout-grid/grid.transformer.ts
|
|
42832
|
-
var
|
|
43082
|
+
var imports5 = [
|
|
42833
43083
|
{
|
|
42834
43084
|
name: "WmLayoutgrid",
|
|
42835
43085
|
from: "@wavemaker-ai/react-runtime/components/container/layout-grid"
|
|
@@ -42838,11 +43088,11 @@ var imports7 = [
|
|
|
42838
43088
|
var grid_transformer_default = {
|
|
42839
43089
|
pre: (element, context) => `<WmLayoutgrid iswidget="false" ${transformAttrs(element, context)}>`,
|
|
42840
43090
|
post: (element, context) => "</WmLayoutgrid>",
|
|
42841
|
-
imports: (element, context) =>
|
|
43091
|
+
imports: (element, context) => imports5
|
|
42842
43092
|
};
|
|
42843
43093
|
|
|
42844
43094
|
// src/transpile/components/container/layout-grid/grid-column.transformer.ts
|
|
42845
|
-
var
|
|
43095
|
+
var imports6 = [
|
|
42846
43096
|
{
|
|
42847
43097
|
name: "WmGridcolumn",
|
|
42848
43098
|
from: "@wavemaker-ai/react-runtime/components/container/layout-grid/grid-column"
|
|
@@ -42851,11 +43101,11 @@ var imports8 = [
|
|
|
42851
43101
|
var grid_column_transformer_default = {
|
|
42852
43102
|
pre: (element, context) => `<WmGridcolumn iswidget="false" ${transformAttrs(element, context)}>`,
|
|
42853
43103
|
post: (element, context) => "</WmGridcolumn>",
|
|
42854
|
-
imports: (element, context) =>
|
|
43104
|
+
imports: (element, context) => imports6
|
|
42855
43105
|
};
|
|
42856
43106
|
|
|
42857
43107
|
// src/transpile/components/container/layout-grid/grid-row.transformer.ts
|
|
42858
|
-
var
|
|
43108
|
+
var imports7 = [
|
|
42859
43109
|
{
|
|
42860
43110
|
name: "WmGridrow",
|
|
42861
43111
|
from: "@wavemaker-ai/react-runtime/components/container/layout-grid/grid-row"
|
|
@@ -42864,11 +43114,11 @@ var imports9 = [
|
|
|
42864
43114
|
var grid_row_transformer_default = {
|
|
42865
43115
|
pre: (element, context) => `<WmGridrow iswidget="false" ${transformAttrs(element, context)}>`,
|
|
42866
43116
|
post: (element, context) => "</WmGridrow>",
|
|
42867
|
-
imports: (element, context) =>
|
|
43117
|
+
imports: (element, context) => imports7
|
|
42868
43118
|
};
|
|
42869
43119
|
|
|
42870
43120
|
// src/transpile/components/page/content.transformer.ts
|
|
42871
|
-
var
|
|
43121
|
+
var imports8 = [
|
|
42872
43122
|
{
|
|
42873
43123
|
name: "WmContent",
|
|
42874
43124
|
from: "@wavemaker-ai/react-runtime/components/page/content"
|
|
@@ -42877,135 +43127,36 @@ var imports10 = [
|
|
|
42877
43127
|
var content_transformer_default = {
|
|
42878
43128
|
pre: (element, context) => `<WmContent data-role="page-content" role="main" ${transformAttrs(element, context)} >`,
|
|
42879
43129
|
post: (element, context) => "</WmContent>",
|
|
42880
|
-
imports: (element, context) =>
|
|
43130
|
+
imports: (element, context) => imports8,
|
|
42881
43131
|
createComponent: (element, context) => createComponent2(element, context)
|
|
42882
43132
|
};
|
|
42883
43133
|
|
|
42884
43134
|
// src/transpile/components/layout/footer.transformer.ts
|
|
42885
|
-
var
|
|
42886
|
-
|
|
42887
|
-
|
|
42888
|
-
|
|
42889
|
-
|
|
42890
|
-
|
|
42891
|
-
var footer_transformer_default = {
|
|
42892
|
-
pre: (element, context) => {
|
|
42893
|
-
const isPreview = context.get("preview") === true;
|
|
42894
|
-
if (isPreview) {
|
|
42895
|
-
let partial = partial_content_transformer_default.pre(element, context) || "";
|
|
42896
|
-
if (partial) {
|
|
42897
|
-
element.removeAttribute("name");
|
|
42898
|
-
partial = `render={(props:Record<string, any>, onLoad:()=>void) => (${partial})}`;
|
|
42899
|
-
}
|
|
42900
|
-
return `<WmFooter ${transformAttrs(element, context)} ${partial}>`;
|
|
42901
|
-
}
|
|
42902
|
-
const content = element.getAttribute("content") || "footer";
|
|
42903
|
-
const name = element.getAttribute("name") || "footer";
|
|
42904
|
-
return `<WmFooter ${transformAttrs(element, context)}>
|
|
42905
|
-
<${content.charAt(0).toUpperCase() + content.slice(1)} isLayout={true} partialName="${name}" />
|
|
42906
|
-
`;
|
|
42907
|
-
},
|
|
42908
|
-
post: (element, context) => "</WmFooter>",
|
|
42909
|
-
imports: (element, context) => {
|
|
42910
|
-
const isPreview = context.get("preview") === true;
|
|
42911
|
-
if (isPreview) {
|
|
42912
|
-
return imports11;
|
|
42913
|
-
}
|
|
42914
|
-
const content = element.getAttribute("content") || "footer";
|
|
42915
|
-
return [
|
|
42916
|
-
...imports11,
|
|
42917
|
-
{
|
|
42918
|
-
name: content.charAt(0).toUpperCase() + content.slice(1),
|
|
42919
|
-
from: `@/app/components/${content}/${content}`
|
|
42920
|
-
}
|
|
42921
|
-
];
|
|
42922
|
-
}
|
|
42923
|
-
};
|
|
43135
|
+
var footer_transformer_default = createLayoutRegionTransformer({
|
|
43136
|
+
component: ["WmFooter"],
|
|
43137
|
+
importPath: ["@wavemaker-ai/react-runtime/components/layout/footer"],
|
|
43138
|
+
defaultContent: "footer",
|
|
43139
|
+
defaultName: "footer"
|
|
43140
|
+
});
|
|
42924
43141
|
|
|
42925
43142
|
// src/transpile/components/layout/topnav.transformer.ts
|
|
42926
|
-
var
|
|
42927
|
-
|
|
42928
|
-
|
|
42929
|
-
|
|
42930
|
-
|
|
42931
|
-
|
|
42932
|
-
var topnav_transformer_default = {
|
|
42933
|
-
pre: (element, context) => {
|
|
42934
|
-
const isPreview = context.get("preview") === true;
|
|
42935
|
-
if (isPreview) {
|
|
42936
|
-
let partial = partial_content_transformer_default.pre(element, context) || "";
|
|
42937
|
-
if (partial) {
|
|
42938
|
-
element.removeAttribute("name");
|
|
42939
|
-
partial = `render={(props:Record<string, any>, onLoad:()=>void) => (${partial})}`;
|
|
42940
|
-
}
|
|
42941
|
-
return `<WmTopNav ${transformAttrs(element, context)} ${partial}>`;
|
|
42942
|
-
}
|
|
42943
|
-
const content = element.getAttribute("content") || "topnav";
|
|
42944
|
-
const name = element.getAttribute("name") || "top_nav1";
|
|
42945
|
-
return `<WmTopNav ${transformAttrs(element, context)}>
|
|
42946
|
-
<${content.charAt(0).toUpperCase() + content.slice(1)} isLayout={true} partialName="${name}" />
|
|
42947
|
-
`;
|
|
42948
|
-
},
|
|
42949
|
-
post: (element, context) => "</WmTopNav>",
|
|
42950
|
-
imports: (element, context) => {
|
|
42951
|
-
const isPreview = context.get("preview") === true;
|
|
42952
|
-
if (isPreview) {
|
|
42953
|
-
return imports12;
|
|
42954
|
-
}
|
|
42955
|
-
const content = element.getAttribute("content") || "topnav";
|
|
42956
|
-
return [
|
|
42957
|
-
...imports12,
|
|
42958
|
-
{
|
|
42959
|
-
name: content.charAt(0).toUpperCase() + content.slice(1),
|
|
42960
|
-
from: `@/app/components/${content}/${content}`
|
|
42961
|
-
}
|
|
42962
|
-
];
|
|
42963
|
-
}
|
|
42964
|
-
};
|
|
43143
|
+
var topnav_transformer_default = createLayoutRegionTransformer({
|
|
43144
|
+
component: ["WmTopNav"],
|
|
43145
|
+
importPath: ["@wavemaker-ai/react-runtime/components/layout/topnav"],
|
|
43146
|
+
defaultContent: "topnav",
|
|
43147
|
+
defaultName: "top_nav1"
|
|
43148
|
+
});
|
|
42965
43149
|
|
|
42966
43150
|
// src/transpile/components/layout/leftnav.transformer.ts
|
|
42967
|
-
var
|
|
42968
|
-
|
|
42969
|
-
|
|
42970
|
-
|
|
42971
|
-
|
|
42972
|
-
|
|
42973
|
-
var leftnav_transformer_default = {
|
|
42974
|
-
pre: (element, context) => {
|
|
42975
|
-
const isPreview = context.get("preview") === true;
|
|
42976
|
-
if (isPreview) {
|
|
42977
|
-
let partial = partial_content_transformer_default.pre(element, context) || "";
|
|
42978
|
-
if (partial) {
|
|
42979
|
-
element.removeAttribute("name");
|
|
42980
|
-
partial = `render={(props:Record<string, any>, onLoad:()=>void) => (${partial})}`;
|
|
42981
|
-
}
|
|
42982
|
-
return `<WmLeftPanel ${transformAttrs(element, context)} ${partial}>`;
|
|
42983
|
-
}
|
|
42984
|
-
const content = element.getAttribute("content") || "leftnav";
|
|
42985
|
-
const name = element.getAttribute("name") || "leftpanel";
|
|
42986
|
-
return `<WmLeftPanel ${transformAttrs(element, context)}>
|
|
42987
|
-
<${content.charAt(0).toUpperCase() + content.slice(1)} isLayout={true} partialName="${name}" />
|
|
42988
|
-
`;
|
|
42989
|
-
},
|
|
42990
|
-
post: (element, context) => "</WmLeftPanel>",
|
|
42991
|
-
imports: (element, context) => {
|
|
42992
|
-
const isPreview = context.get("preview") === true;
|
|
42993
|
-
if (isPreview) {
|
|
42994
|
-
return imports13;
|
|
42995
|
-
}
|
|
42996
|
-
const content = element.getAttribute("content") || "leftnav";
|
|
42997
|
-
return [
|
|
42998
|
-
...imports13,
|
|
42999
|
-
{
|
|
43000
|
-
name: content.charAt(0).toUpperCase() + content.slice(1),
|
|
43001
|
-
from: `@/app/components/${content}/${content}`
|
|
43002
|
-
}
|
|
43003
|
-
];
|
|
43004
|
-
}
|
|
43005
|
-
};
|
|
43151
|
+
var leftnav_transformer_default = createLayoutRegionTransformer({
|
|
43152
|
+
component: ["WmLeftPanel"],
|
|
43153
|
+
importPath: ["@wavemaker-ai/react-runtime/components/layout/leftnav"],
|
|
43154
|
+
defaultContent: "leftnav",
|
|
43155
|
+
defaultName: "leftpanel"
|
|
43156
|
+
});
|
|
43006
43157
|
|
|
43007
43158
|
// src/transpile/components/nav/navbar.transformer.ts
|
|
43008
|
-
var
|
|
43159
|
+
var imports9 = [
|
|
43009
43160
|
{
|
|
43010
43161
|
name: "WmNavbar",
|
|
43011
43162
|
from: "@wavemaker-ai/react-runtime/components/navbar"
|
|
@@ -43099,11 +43250,11 @@ var navbar_transformer_default = {
|
|
|
43099
43250
|
${transformAttrs(element, context)}>`;
|
|
43100
43251
|
},
|
|
43101
43252
|
post: (element, context) => "</WmNavbar>",
|
|
43102
|
-
imports: (element, context) =>
|
|
43253
|
+
imports: (element, context) => imports9
|
|
43103
43254
|
};
|
|
43104
43255
|
|
|
43105
43256
|
// src/transpile/components/nav/nav-item.transformer.ts
|
|
43106
|
-
var
|
|
43257
|
+
var imports10 = [
|
|
43107
43258
|
{
|
|
43108
43259
|
name: "WmNavItem",
|
|
43109
43260
|
from: "@wavemaker-ai/react-runtime/components/navbar/nav-item"
|
|
@@ -43120,21 +43271,21 @@ var nav_item_transformer_default = {
|
|
|
43120
43271
|
${transformAttrs(element, context)}>`;
|
|
43121
43272
|
},
|
|
43122
43273
|
post: (element, context) => "</WmNavItem>",
|
|
43123
|
-
imports: (element, context) =>
|
|
43274
|
+
imports: (element, context) => imports10
|
|
43124
43275
|
};
|
|
43125
43276
|
|
|
43126
43277
|
// src/transpile/components/basic/anchor.transformer.ts
|
|
43127
|
-
var
|
|
43278
|
+
var imports11 = [
|
|
43128
43279
|
{ name: "WmAnchor", from: "@wavemaker-ai/react-runtime/components/basic/anchor" }
|
|
43129
43280
|
];
|
|
43130
43281
|
var anchor_transformer_default = {
|
|
43131
43282
|
pre: (element, context) => `<WmAnchor listener={fragment} ${transformAttrs(element, context)} >`,
|
|
43132
43283
|
post: (element, context) => "</WmAnchor>",
|
|
43133
|
-
imports: (element, context) =>
|
|
43284
|
+
imports: (element, context) => imports11
|
|
43134
43285
|
};
|
|
43135
43286
|
|
|
43136
43287
|
// src/transpile/components/input/text.transformer.ts
|
|
43137
|
-
var
|
|
43288
|
+
var imports12 = [
|
|
43138
43289
|
{
|
|
43139
43290
|
name: "WmText",
|
|
43140
43291
|
from: "@wavemaker-ai/react-runtime/components/input/text"
|
|
@@ -43147,67 +43298,88 @@ var text_transformer_default = {
|
|
|
43147
43298
|
return `<WmText ${isFormField ? " {...$formField}" : ""} listener={fragment} ${transformAttrs(element, context)} ${onChange ? `onChange={${onChange}}` : ""}>`;
|
|
43148
43299
|
},
|
|
43149
43300
|
post: (element, context) => "</WmText>",
|
|
43150
|
-
imports: (element, context) =>
|
|
43301
|
+
imports: (element, context) => imports12
|
|
43151
43302
|
};
|
|
43152
43303
|
|
|
43304
|
+
// src/transpile/components/page/build-partial-markup.ts
|
|
43305
|
+
var import_html_entities = __toESM(require_lib9());
|
|
43306
|
+
var ignoredAttributes = ["name", "show", "content", "class", "styles"];
|
|
43307
|
+
function buildPartialMarkup(element, context, componentName) {
|
|
43308
|
+
const content = element.attributes["content"];
|
|
43309
|
+
const name = element.attributes["name"];
|
|
43310
|
+
if (!content) {
|
|
43311
|
+
return "";
|
|
43312
|
+
}
|
|
43313
|
+
const params = {};
|
|
43314
|
+
if (!element.hasAttribute("is-table-row")) {
|
|
43315
|
+
Object.keys(element.attrs).forEach((k) => {
|
|
43316
|
+
if (!ignoredAttributes.includes(k)) {
|
|
43317
|
+
params[k] = element.attrs[k];
|
|
43318
|
+
}
|
|
43319
|
+
});
|
|
43320
|
+
}
|
|
43321
|
+
const watch = [];
|
|
43322
|
+
element.childNodes.filter((node) => isHTMLElement(node) && node.tagName === "WM-PARAM").forEach((node) => {
|
|
43323
|
+
const e = node;
|
|
43324
|
+
const name2 = e.getAttribute("name") || "";
|
|
43325
|
+
let value = e.getAttribute("value") || "";
|
|
43326
|
+
if (value.includes("currentItem")) {
|
|
43327
|
+
const match = value.match(/currentItem\..+/);
|
|
43328
|
+
if (match) {
|
|
43329
|
+
value = `bind:${match[0]}`;
|
|
43330
|
+
}
|
|
43331
|
+
}
|
|
43332
|
+
params[name2] = value;
|
|
43333
|
+
watch.push(name2);
|
|
43334
|
+
});
|
|
43335
|
+
const syntheticTag = componentName.replace(/([A-Z])/g, "-$1").toLowerCase().replace(/^-/, "");
|
|
43336
|
+
let paramStr = Object.keys(params).filter((k) => k !== "on-load").map((k) => `${k}="${(0, import_html_entities.encode)(params[k])}"`).join(" ");
|
|
43337
|
+
paramStr = transformAttrs(
|
|
43338
|
+
parse5(`<${syntheticTag} ${paramStr}/>`).firstChild,
|
|
43339
|
+
context,
|
|
43340
|
+
inferTypeAndParseProperty
|
|
43341
|
+
);
|
|
43342
|
+
paramStr += ` content={props.content}`;
|
|
43343
|
+
if (context.isPartOfPrefab) {
|
|
43344
|
+
paramStr += " prefab={fragment.prefab}";
|
|
43345
|
+
paramStr += "prefabName={fragment.prefabName}";
|
|
43346
|
+
paramStr += "Prefab={stateProxy}";
|
|
43347
|
+
}
|
|
43348
|
+
return `<${componentName} ${watch.length > 0 ? `params={${JSON.stringify(watch)}}` : ""} onLoad={onLoad} ${paramStr} partialName={'${name}'} listener={props.listener} />`;
|
|
43349
|
+
}
|
|
43350
|
+
|
|
43153
43351
|
// src/transpile/components/page/partial-container.transformer.ts
|
|
43154
|
-
var
|
|
43155
|
-
var imports18 = [
|
|
43352
|
+
var imports13 = [
|
|
43156
43353
|
{
|
|
43157
43354
|
name: "WmPartialContainer",
|
|
43158
43355
|
from: "@wavemaker-ai/react-runtime/components/page/partial-container"
|
|
43159
43356
|
}
|
|
43160
43357
|
];
|
|
43161
|
-
var ignoredAttributes2 = ["name", "show", "content", "class", "styles"];
|
|
43162
43358
|
var partial_container_transformer_default = {
|
|
43163
|
-
pre: (element, context) =>
|
|
43164
|
-
let content = element.attributes["content"];
|
|
43165
|
-
const name = element.attributes["name"];
|
|
43166
|
-
if (content) {
|
|
43167
|
-
const params = {};
|
|
43168
|
-
if (!element.hasAttribute("is-table-row")) {
|
|
43169
|
-
Object.keys(element.attrs).forEach((k) => {
|
|
43170
|
-
if (!ignoredAttributes2.includes(k)) {
|
|
43171
|
-
params[k] = element.attrs[k];
|
|
43172
|
-
}
|
|
43173
|
-
});
|
|
43174
|
-
}
|
|
43175
|
-
const watch = [];
|
|
43176
|
-
element.childNodes.filter((node) => isHTMLElement(node) && node.tagName === "WM-PARAM").forEach((node) => {
|
|
43177
|
-
const e = node;
|
|
43178
|
-
const name2 = e.getAttribute("name") || "";
|
|
43179
|
-
let value = e.getAttribute("value") || "";
|
|
43180
|
-
if (value.includes("currentItem")) {
|
|
43181
|
-
const match = value.match(/currentItem\..+/);
|
|
43182
|
-
if (match) {
|
|
43183
|
-
value = `bind:${match[0]}`;
|
|
43184
|
-
}
|
|
43185
|
-
}
|
|
43186
|
-
params[name2] = value;
|
|
43187
|
-
watch.push(name2);
|
|
43188
|
-
});
|
|
43189
|
-
let paramStr = Object.keys(params).filter((k) => k !== "on-load").map((k) => `${k}="${(0, import_html_entities2.encode)(params[k])}"`).join(" ");
|
|
43190
|
-
paramStr = transformAttrs(
|
|
43191
|
-
parse5(`<wm-partial-container ${paramStr}/>`).firstChild,
|
|
43192
|
-
context,
|
|
43193
|
-
inferTypeAndParseProperty
|
|
43194
|
-
);
|
|
43195
|
-
paramStr += ` content={props.content}`;
|
|
43196
|
-
if (context.isPartOfPrefab) {
|
|
43197
|
-
paramStr += " prefab={fragment.prefab}";
|
|
43198
|
-
paramStr += "prefabName={fragment.prefabName}";
|
|
43199
|
-
paramStr += "Prefab={stateProxy}";
|
|
43200
|
-
}
|
|
43201
|
-
return `<WmPartialContainer ${watch.length > 0 ? `params={${JSON.stringify(watch)}}` : ""} onLoad={onLoad} ${paramStr} partialName={'${name}'} listener={props.listener} />`;
|
|
43202
|
-
}
|
|
43203
|
-
return "";
|
|
43204
|
-
},
|
|
43359
|
+
pre: (element, context) => buildPartialMarkup(element, context, "WmPartialContainer"),
|
|
43205
43360
|
post: (element, context) => "",
|
|
43206
|
-
imports: (element, context) => element.hasAttribute("content") ?
|
|
43361
|
+
imports: (element, context) => element.hasAttribute("content") ? imports13 : []
|
|
43207
43362
|
};
|
|
43208
43363
|
|
|
43364
|
+
// src/transpile/components/page/with-partial-container.ts
|
|
43365
|
+
function withPartialContainer(element, context, options) {
|
|
43366
|
+
let partial = partial_container_transformer_default.pre(element, context) || "";
|
|
43367
|
+
const extraImports = partial_container_transformer_default.imports(element, context);
|
|
43368
|
+
if (partial) {
|
|
43369
|
+
if (options.removeName) {
|
|
43370
|
+
element.removeAttribute("name");
|
|
43371
|
+
}
|
|
43372
|
+
const params = options.extraParams ? `props:Record<string, any>, onLoad:()=>void, ${options.extraParams}` : "props:Record<string, any>, onLoad:()=>void";
|
|
43373
|
+
partial = `${options.prop}={(${params}) => (${partial})}`;
|
|
43374
|
+
}
|
|
43375
|
+
return { partialAttr: partial, extraImports };
|
|
43376
|
+
}
|
|
43377
|
+
function getPartialImports(element, context) {
|
|
43378
|
+
return partial_container_transformer_default.imports(element, context);
|
|
43379
|
+
}
|
|
43380
|
+
|
|
43209
43381
|
// src/transpile/components/container/container.transformer.ts
|
|
43210
|
-
var
|
|
43382
|
+
var imports14 = [
|
|
43211
43383
|
{
|
|
43212
43384
|
name: "WmContainer",
|
|
43213
43385
|
from: "@wavemaker-ai/react-runtime/components/container"
|
|
@@ -43215,30 +43387,20 @@ var imports19 = [
|
|
|
43215
43387
|
];
|
|
43216
43388
|
var container_transformer_default = {
|
|
43217
43389
|
pre: (element, context) => {
|
|
43218
|
-
const
|
|
43219
|
-
|
|
43220
|
-
|
|
43221
|
-
|
|
43222
|
-
|
|
43223
|
-
partial2 = `renderPartial={(props:Record<string, any>, onLoad:()=>void) => (${partial2})}`;
|
|
43224
|
-
}
|
|
43225
|
-
return `<WmContainer ${transformAttrs(element, context)} ${partial2}>`;
|
|
43226
|
-
}
|
|
43227
|
-
let partial = partial_container_transformer_default.pre(element, context) || "";
|
|
43228
|
-
if (partial) {
|
|
43229
|
-
element.removeAttribute("name");
|
|
43230
|
-
partial = `renderPartial={(props:Record<string, any>, onLoad:()=>void) => (${partial})}`;
|
|
43231
|
-
}
|
|
43232
|
-
return `<WmContainer listener={fragment} ${transformAttrs(element, context)} ${partial}>`;
|
|
43390
|
+
const { partialAttr } = withPartialContainer(element, context, {
|
|
43391
|
+
prop: "renderPartial",
|
|
43392
|
+
removeName: true
|
|
43393
|
+
});
|
|
43394
|
+
return `<WmContainer listener={fragment} ${transformAttrs(element, context)} ${partialAttr}>`;
|
|
43233
43395
|
},
|
|
43234
43396
|
post: (element, context) => "</WmContainer>",
|
|
43235
43397
|
imports: (element, context) => {
|
|
43236
|
-
return
|
|
43398
|
+
return imports14.concat(getPartialImports(element, context));
|
|
43237
43399
|
}
|
|
43238
43400
|
};
|
|
43239
43401
|
|
|
43240
43402
|
// src/transpile/components/input/composite.transformer.ts
|
|
43241
|
-
var
|
|
43403
|
+
var imports15 = [
|
|
43242
43404
|
{
|
|
43243
43405
|
name: "WmComposite",
|
|
43244
43406
|
from: "@wavemaker-ai/react-runtime/components/input/composite"
|
|
@@ -43247,11 +43409,11 @@ var imports20 = [
|
|
|
43247
43409
|
var composite_transformer_default = {
|
|
43248
43410
|
pre: (element, context) => `<WmComposite ${transformAttrs(element, context)}>`,
|
|
43249
43411
|
post: (element, context) => "</WmComposite>",
|
|
43250
|
-
imports: (element, context) =>
|
|
43412
|
+
imports: (element, context) => imports15
|
|
43251
43413
|
};
|
|
43252
43414
|
|
|
43253
43415
|
// src/transpile/components/input/number.transformer.ts
|
|
43254
|
-
var
|
|
43416
|
+
var imports16 = [
|
|
43255
43417
|
{
|
|
43256
43418
|
name: "WmNumber",
|
|
43257
43419
|
from: "@wavemaker-ai/react-runtime/components/input/number"
|
|
@@ -43264,11 +43426,11 @@ var number_transformer_default = {
|
|
|
43264
43426
|
return `<WmNumber ${isFormField ? " {...$formField}" : ""} listener={fragment} ${transformAttrs(element, context)} >`;
|
|
43265
43427
|
},
|
|
43266
43428
|
post: (element, context) => "</WmNumber>",
|
|
43267
|
-
imports: (element, context) =>
|
|
43429
|
+
imports: (element, context) => imports16
|
|
43268
43430
|
};
|
|
43269
43431
|
|
|
43270
43432
|
// src/transpile/components/input/textarea.transformer.ts
|
|
43271
|
-
var
|
|
43433
|
+
var imports17 = [
|
|
43272
43434
|
{
|
|
43273
43435
|
name: "WmTextarea",
|
|
43274
43436
|
from: "@wavemaker-ai/react-runtime/components/input/textarea"
|
|
@@ -43280,11 +43442,11 @@ var textarea_transformer_default = {
|
|
|
43280
43442
|
return `<WmTextarea ${isFormField ? " {...$formField}" : ""} type="textarea" listener={fragment} ${transformAttrs(element, context)} `;
|
|
43281
43443
|
},
|
|
43282
43444
|
post: (element, context) => "/>",
|
|
43283
|
-
imports: (element, context) =>
|
|
43445
|
+
imports: (element, context) => imports17
|
|
43284
43446
|
};
|
|
43285
43447
|
|
|
43286
43448
|
// src/transpile/components/container/tile.transformer.ts
|
|
43287
|
-
var
|
|
43449
|
+
var imports18 = [
|
|
43288
43450
|
{
|
|
43289
43451
|
name: "WmTile",
|
|
43290
43452
|
from: "@wavemaker-ai/react-runtime/components/basic/tile"
|
|
@@ -43293,11 +43455,11 @@ var imports23 = [
|
|
|
43293
43455
|
var tile_transformer_default = {
|
|
43294
43456
|
pre: (element, context) => `<WmTile ${transformAttrs(element, context)}>`,
|
|
43295
43457
|
post: (element, context) => "</WmTile>",
|
|
43296
|
-
imports: (element, context) =>
|
|
43458
|
+
imports: (element, context) => imports18
|
|
43297
43459
|
};
|
|
43298
43460
|
|
|
43299
43461
|
// src/transpile/components/basic/picture.transformer.ts
|
|
43300
|
-
var
|
|
43462
|
+
var imports19 = [
|
|
43301
43463
|
{
|
|
43302
43464
|
name: "WmPicture",
|
|
43303
43465
|
from: "@wavemaker-ai/react-runtime/components/basic/picture"
|
|
@@ -43312,11 +43474,11 @@ var picture_transformer_default = {
|
|
|
43312
43474
|
return `<WmPicture listener={fragment} ${transformAttrs(element, context)} ${context.isPartOfPrefab ? " prefabName={fragment.prefabName}" : ""} >`;
|
|
43313
43475
|
},
|
|
43314
43476
|
post: (element, context) => "</WmPicture>",
|
|
43315
|
-
imports: (element, context) =>
|
|
43477
|
+
imports: (element, context) => imports19
|
|
43316
43478
|
};
|
|
43317
43479
|
|
|
43318
43480
|
// src/transpile/components/basic/icon.transformer.ts
|
|
43319
|
-
var
|
|
43481
|
+
var imports20 = [
|
|
43320
43482
|
{
|
|
43321
43483
|
name: "WmIcon",
|
|
43322
43484
|
from: "@wavemaker-ai/react-runtime/components/basic/icon"
|
|
@@ -43325,11 +43487,11 @@ var imports25 = [
|
|
|
43325
43487
|
var icon_transformer_default = {
|
|
43326
43488
|
pre: (element, context) => `<WmIcon ${transformAttrs(element, context)} ${context.isPartOfPrefab ? " prefabName={fragment.prefabName}" : ""} >`,
|
|
43327
43489
|
post: (element, context) => "</WmIcon>",
|
|
43328
|
-
imports: (element, context) =>
|
|
43490
|
+
imports: (element, context) => imports20
|
|
43329
43491
|
};
|
|
43330
43492
|
|
|
43331
43493
|
// src/transpile/components/basic/video.transformer.ts
|
|
43332
|
-
var
|
|
43494
|
+
var imports21 = [
|
|
43333
43495
|
{
|
|
43334
43496
|
name: "WmVideo",
|
|
43335
43497
|
from: "@wavemaker-ai/react-runtime/components/basic/video"
|
|
@@ -43338,11 +43500,11 @@ var imports26 = [
|
|
|
43338
43500
|
var video_transformer_default = {
|
|
43339
43501
|
pre: (element, context) => `<WmVideo ${transformAttrs(element, context)} ${context.isPartOfPrefab ? " prefabName={fragment.prefabName}" : ""}>`,
|
|
43340
43502
|
post: (element, context) => "</WmVideo>",
|
|
43341
|
-
imports: (element, context) =>
|
|
43503
|
+
imports: (element, context) => imports21
|
|
43342
43504
|
};
|
|
43343
43505
|
|
|
43344
43506
|
// src/transpile/components/basic/audio.transformer.ts
|
|
43345
|
-
var
|
|
43507
|
+
var imports22 = [
|
|
43346
43508
|
{
|
|
43347
43509
|
name: "WmAudio",
|
|
43348
43510
|
from: "@wavemaker-ai/react-runtime/components/basic/audio"
|
|
@@ -43351,11 +43513,11 @@ var imports27 = [
|
|
|
43351
43513
|
var audio_transformer_default = {
|
|
43352
43514
|
pre: (element, context) => `<WmAudio ${transformAttrs(element, context)} ${context.isPartOfPrefab ? " prefabName={fragment.prefabName}" : ""}>`,
|
|
43353
43515
|
post: (element, context) => "</WmAudio>",
|
|
43354
|
-
imports: (element, context) =>
|
|
43516
|
+
imports: (element, context) => imports22
|
|
43355
43517
|
};
|
|
43356
43518
|
|
|
43357
43519
|
// src/transpile/components/form/button.transformer.ts
|
|
43358
|
-
var
|
|
43520
|
+
var imports23 = [
|
|
43359
43521
|
{
|
|
43360
43522
|
name: "WmButton",
|
|
43361
43523
|
from: "@wavemaker-ai/react-runtime/components/form/button"
|
|
@@ -43372,11 +43534,11 @@ var button_transformer_default = {
|
|
|
43372
43534
|
return `<WmButton listener={fragment} ${stopPropagation} ${transformAttrs(element, context)} ${context.isPartOfPrefab ? " prefabName={fragment.prefabName}" : ""} >`;
|
|
43373
43535
|
},
|
|
43374
43536
|
post: (element, context) => "</WmButton>",
|
|
43375
|
-
imports: (element, context) =>
|
|
43537
|
+
imports: (element, context) => imports23
|
|
43376
43538
|
};
|
|
43377
43539
|
|
|
43378
43540
|
// src/transpile/components/form/button-group.transformer.ts
|
|
43379
|
-
var
|
|
43541
|
+
var imports24 = [
|
|
43380
43542
|
{
|
|
43381
43543
|
name: "WmButtonGroup",
|
|
43382
43544
|
from: "@wavemaker-ai/react-runtime/components/form/button-group"
|
|
@@ -43385,11 +43547,11 @@ var imports29 = [
|
|
|
43385
43547
|
var button_group_transformer_default = {
|
|
43386
43548
|
pre: (element, context) => `<WmButtonGroup ${transformAttrs(element, context)}>`,
|
|
43387
43549
|
post: (element, context) => "</WmButtonGroup>",
|
|
43388
|
-
imports: (element, context) =>
|
|
43550
|
+
imports: (element, context) => imports24
|
|
43389
43551
|
};
|
|
43390
43552
|
|
|
43391
43553
|
// src/transpile/components/nav/nav.transformer.ts
|
|
43392
|
-
var
|
|
43554
|
+
var imports25 = [
|
|
43393
43555
|
{
|
|
43394
43556
|
name: "WmNav",
|
|
43395
43557
|
from: "@wavemaker-ai/react-runtime/components/navbar/nav"
|
|
@@ -43443,52 +43605,19 @@ var nav_transformer_default = {
|
|
|
43443
43605
|
${itemlabelExpression ? `itemlabel=${itemlabelExpression}` : ""}>`;
|
|
43444
43606
|
},
|
|
43445
43607
|
post: (element, context) => "</WmNav>",
|
|
43446
|
-
imports: (element, context) =>
|
|
43608
|
+
imports: (element, context) => imports25
|
|
43447
43609
|
};
|
|
43448
43610
|
|
|
43449
43611
|
// src/transpile/components/layout/rightnav.transformer.ts
|
|
43450
|
-
var
|
|
43451
|
-
|
|
43452
|
-
|
|
43453
|
-
|
|
43454
|
-
|
|
43455
|
-
|
|
43456
|
-
var rightnav_transformer_default = {
|
|
43457
|
-
pre: (element, context) => {
|
|
43458
|
-
const isPreview = context.get("preview") === true;
|
|
43459
|
-
if (isPreview) {
|
|
43460
|
-
let partial = partial_content_transformer_default.pre(element, context) || "";
|
|
43461
|
-
if (partial) {
|
|
43462
|
-
element.removeAttribute("name");
|
|
43463
|
-
partial = `render={(props:Record<string, any>, onLoad:()=>void) => (${partial})}`;
|
|
43464
|
-
}
|
|
43465
|
-
return `<WmRightPanel ${transformAttrs(element, context)} ${partial}>`;
|
|
43466
|
-
}
|
|
43467
|
-
const content = element.getAttribute("content") || "rightnav";
|
|
43468
|
-
const name = element.getAttribute("name") || "rightnav";
|
|
43469
|
-
return `<WmRightPanel ${transformAttrs(element, context)}>
|
|
43470
|
-
<${content.charAt(0).toUpperCase() + content.slice(1)} isLayout={true} partialName="${name}" />
|
|
43471
|
-
`;
|
|
43472
|
-
},
|
|
43473
|
-
post: (element, context) => "</WmRightPanel>",
|
|
43474
|
-
imports: (element, context) => {
|
|
43475
|
-
const isPreview = context.get("preview") === true;
|
|
43476
|
-
if (isPreview) {
|
|
43477
|
-
return imports31;
|
|
43478
|
-
}
|
|
43479
|
-
const content = element.getAttribute("content") || "rightnav";
|
|
43480
|
-
return [
|
|
43481
|
-
...imports31,
|
|
43482
|
-
{
|
|
43483
|
-
name: content.charAt(0).toUpperCase() + content.slice(1),
|
|
43484
|
-
from: `@/app/components/${content}/${content}`
|
|
43485
|
-
}
|
|
43486
|
-
];
|
|
43487
|
-
}
|
|
43488
|
-
};
|
|
43612
|
+
var rightnav_transformer_default = createLayoutRegionTransformer({
|
|
43613
|
+
component: ["WmRightPanel"],
|
|
43614
|
+
importPath: ["@wavemaker-ai/react-runtime/components/layout/rightnav"],
|
|
43615
|
+
defaultContent: "rightnav",
|
|
43616
|
+
defaultName: "rightnav"
|
|
43617
|
+
});
|
|
43489
43618
|
|
|
43490
43619
|
// src/transpile/components/basic/iframe.transformer.ts
|
|
43491
|
-
var
|
|
43620
|
+
var imports26 = [
|
|
43492
43621
|
{
|
|
43493
43622
|
name: "WmIframe",
|
|
43494
43623
|
from: "@wavemaker-ai/react-runtime/components/basic/iframe"
|
|
@@ -43497,37 +43626,38 @@ var imports32 = [
|
|
|
43497
43626
|
var iframe_transformer_default = {
|
|
43498
43627
|
pre: (element, context) => `<WmIframe ${transformAttrs(element, context)}>`,
|
|
43499
43628
|
post: (element, context) => "</WmIframe>",
|
|
43500
|
-
imports: (element, context) =>
|
|
43629
|
+
imports: (element, context) => imports26
|
|
43501
43630
|
};
|
|
43502
43631
|
|
|
43632
|
+
// src/transpile/components/dialogs/dialog-factory.ts
|
|
43633
|
+
function createSelfClosingDialogTransformer(config) {
|
|
43634
|
+
const imports102 = [
|
|
43635
|
+
{
|
|
43636
|
+
name: config.component,
|
|
43637
|
+
from: config.importPath
|
|
43638
|
+
}
|
|
43639
|
+
];
|
|
43640
|
+
return {
|
|
43641
|
+
pre: (element, context) => `<${config.component} listener={fragment} ${transformAttrs(element, context)}`,
|
|
43642
|
+
post: (element, context) => "/>",
|
|
43643
|
+
imports: (element, context) => imports102
|
|
43644
|
+
};
|
|
43645
|
+
}
|
|
43646
|
+
|
|
43503
43647
|
// src/transpile/components/dialogs/confirm-dialog.transformer.ts
|
|
43504
|
-
var
|
|
43505
|
-
|
|
43506
|
-
|
|
43507
|
-
|
|
43508
|
-
}
|
|
43509
|
-
];
|
|
43510
|
-
var confirm_dialog_transformer_default = {
|
|
43511
|
-
pre: (element, context) => `<WmConfirmDialog listener={fragment} ${transformAttrs(element, context)}`,
|
|
43512
|
-
post: (element, context) => "/>",
|
|
43513
|
-
imports: (element, context) => imports33
|
|
43514
|
-
};
|
|
43648
|
+
var confirm_dialog_transformer_default = createSelfClosingDialogTransformer({
|
|
43649
|
+
component: "WmConfirmDialog",
|
|
43650
|
+
importPath: "@wavemaker-ai/react-runtime/components/dialogs/confirm-dialog"
|
|
43651
|
+
});
|
|
43515
43652
|
|
|
43516
43653
|
// src/transpile/components/dialogs/alert-dialog.transformer.ts
|
|
43517
|
-
var
|
|
43518
|
-
|
|
43519
|
-
|
|
43520
|
-
|
|
43521
|
-
}
|
|
43522
|
-
];
|
|
43523
|
-
var alert_dialog_transformer_default = {
|
|
43524
|
-
pre: (element, context) => `<WmAlertDialog listener={fragment} ${transformAttrs(element, context)}`,
|
|
43525
|
-
post: (element, context) => "/>",
|
|
43526
|
-
imports: (element, context) => imports34
|
|
43527
|
-
};
|
|
43654
|
+
var alert_dialog_transformer_default = createSelfClosingDialogTransformer({
|
|
43655
|
+
component: "WmAlertDialog",
|
|
43656
|
+
importPath: "@wavemaker-ai/react-runtime/components/dialogs/alert-dialog"
|
|
43657
|
+
});
|
|
43528
43658
|
|
|
43529
43659
|
// src/transpile/components/data/list/list-transformer.ts
|
|
43530
|
-
var
|
|
43660
|
+
var imports27 = [
|
|
43531
43661
|
{ name: "WmList", from: "@wavemaker-ai/react-runtime/components/data/list" }
|
|
43532
43662
|
];
|
|
43533
43663
|
var addTemplateClass = (element) => {
|
|
@@ -43611,6 +43741,10 @@ function serializeStyleObjectToParts(styleObj) {
|
|
|
43611
43741
|
var buildItemAttrsFromListTemplate = (template, context) => {
|
|
43612
43742
|
var _a, _b, _c;
|
|
43613
43743
|
if (!template || ((_a = template.tagName) == null ? void 0 : _a.toLowerCase()) !== "wm-listtemplate") return "";
|
|
43744
|
+
if (template.getAttribute("class")) {
|
|
43745
|
+
template.setAttribute("className", template.getAttribute("class"));
|
|
43746
|
+
template.removeAttribute("class");
|
|
43747
|
+
}
|
|
43614
43748
|
const autolayout = (_b = context.data) == null ? void 0 : _b.autolayoutCodegen;
|
|
43615
43749
|
const autoLayoutResult = (_c = autolayout == null ? void 0 : autolayout.processListTemplate(template)) != null ? _c : null;
|
|
43616
43750
|
const styleObj = style_transformer_default(template, (styleProp) => {
|
|
@@ -43758,8 +43892,10 @@ var list_transformer_default = {
|
|
|
43758
43892
|
}
|
|
43759
43893
|
const datasetAttr = element.getAttribute("dataset");
|
|
43760
43894
|
const datasourceAttr = element.getAttribute("datasource");
|
|
43761
|
-
if (datasetAttr && datasetAttr.startsWith("bind:fragment.Variables.") && datasetAttr.
|
|
43762
|
-
const match = datasetAttr.match(
|
|
43895
|
+
if (datasetAttr && datasetAttr.startsWith("bind:fragment.Variables.") && datasetAttr.includes(".dataSet")) {
|
|
43896
|
+
const match = datasetAttr.match(
|
|
43897
|
+
/^bind:fragment\.Variables\.([^.]+)\.dataSet(?=[^A-Za-z0-9_]|$)/
|
|
43898
|
+
);
|
|
43763
43899
|
if (match) {
|
|
43764
43900
|
const variableName = match[1];
|
|
43765
43901
|
if (!datasourceAttr) {
|
|
@@ -43816,7 +43952,7 @@ var list_transformer_default = {
|
|
|
43816
43952
|
context.data.listCount--;
|
|
43817
43953
|
return "</>)}}></WmList>";
|
|
43818
43954
|
},
|
|
43819
|
-
imports: (element, context) =>
|
|
43955
|
+
imports: (element, context) => imports27,
|
|
43820
43956
|
createComponent: (element, context) => {
|
|
43821
43957
|
if (!context.data.listCount) {
|
|
43822
43958
|
context.props = context.get("old_props") || [];
|
|
@@ -43828,7 +43964,7 @@ var list_transformer_default = {
|
|
|
43828
43964
|
};
|
|
43829
43965
|
|
|
43830
43966
|
// src/transpile/components/data/list/list-template-transformer.ts
|
|
43831
|
-
var
|
|
43967
|
+
var imports28 = [];
|
|
43832
43968
|
var list_template_transformer_default = {
|
|
43833
43969
|
pre: (element, context) => {
|
|
43834
43970
|
const name = element.getAttribute("name");
|
|
@@ -43842,16 +43978,16 @@ var list_template_transformer_default = {
|
|
|
43842
43978
|
element.removeAttribute("height");
|
|
43843
43979
|
return "</React.Fragment>";
|
|
43844
43980
|
},
|
|
43845
|
-
imports: (element, context) =>
|
|
43981
|
+
imports: (element, context) => imports28
|
|
43846
43982
|
};
|
|
43847
43983
|
|
|
43848
43984
|
// src/transpile/components/data/list/list-content.transformer.ts
|
|
43849
43985
|
var import_lodash6 = __toESM(require_lodash());
|
|
43850
|
-
var
|
|
43986
|
+
var imports29 = [];
|
|
43851
43987
|
var list_content_transformer_default = {
|
|
43852
43988
|
pre: (element, context) => ``,
|
|
43853
43989
|
post: (element, context) => "",
|
|
43854
|
-
imports: (element, context) =>
|
|
43990
|
+
imports: (element, context) => imports29,
|
|
43855
43991
|
createComponent: (e, context, component = "list") => {
|
|
43856
43992
|
const result = context.result;
|
|
43857
43993
|
const widgetName = (0, import_lodash6.capitalize)(e.attrs["name"]);
|
|
@@ -43917,17 +44053,19 @@ var DATASET_WIDGETS = [
|
|
|
43917
44053
|
"rating" /* RATING */
|
|
43918
44054
|
];
|
|
43919
44055
|
|
|
44056
|
+
// src/transpile/components/data/form/field-widget-shared.ts
|
|
44057
|
+
var getAttribute = (element, attrName) => {
|
|
44058
|
+
const value = element.getAttribute(attrName);
|
|
44059
|
+
return value == null ? void 0 : value.replace(/"/g, """);
|
|
44060
|
+
};
|
|
44061
|
+
|
|
43920
44062
|
// src/transpile/components/data/form/form-field.transformer.ts
|
|
43921
|
-
var
|
|
44063
|
+
var imports30 = [
|
|
43922
44064
|
{
|
|
43923
44065
|
name: "WmFormField",
|
|
43924
44066
|
from: "@wavemaker-ai/react-runtime/components/data/form/form-field"
|
|
43925
44067
|
}
|
|
43926
44068
|
];
|
|
43927
|
-
var getAttribute = (element, attrName) => {
|
|
43928
|
-
const value = element.getAttribute(attrName);
|
|
43929
|
-
return value == null ? void 0 : value.replace(/"/g, """);
|
|
43930
|
-
};
|
|
43931
44069
|
var extractField = (element, context, formElement) => {
|
|
43932
44070
|
const widgetType = getAttribute(element, "widget") || "text";
|
|
43933
44071
|
const widgetName = getAttribute(element, "key") || getAttribute(element, "name") || "text_formWidget";
|
|
@@ -43994,6 +44132,7 @@ var getDisplayExpression = (displayExpr) => {
|
|
|
43994
44132
|
return `displayexpression="${displayExpr}"`;
|
|
43995
44133
|
};
|
|
43996
44134
|
var getWidgetMarkup = (widgetType, widgetName, commonFields, element) => {
|
|
44135
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
43997
44136
|
let tmpl = "";
|
|
43998
44137
|
const getDisplayExpr = element.getAttribute("displayexpression") || element.getAttribute("displaylabel");
|
|
43999
44138
|
const displayExp = getDisplayExpr ? getDisplayExpression(getDisplayExpr) : "";
|
|
@@ -44006,16 +44145,16 @@ var getWidgetMarkup = (widgetType, widgetName, commonFields, element) => {
|
|
|
44006
44145
|
currentNode = currentNode.parentNode;
|
|
44007
44146
|
}
|
|
44008
44147
|
const isFloatingForm = (currentNode == null ? void 0 : currentNode.getAttribute("captionposition")) === "floating";
|
|
44009
|
-
const floatinglabel = formFieldTags.includes(widgetType) && isFloatingForm ? `floatinglabel=
|
|
44148
|
+
const floatinglabel = formFieldTags.includes(widgetType) && isFloatingForm ? `floatinglabel="${(_a = element.getAttribute("displayname")) == null ? void 0 : _a.replace(/"/g, """)}"` : "";
|
|
44010
44149
|
const dateTimeDialogTags = ["date", "time", "datetime"];
|
|
44011
44150
|
const isDateTimeTag = dateTimeDialogTags.includes(widgetType);
|
|
44012
|
-
const dateheadertitle = isDateTimeTag && element.getAttribute("dateheadertitle") ? `dateheadertitle=
|
|
44013
|
-
const dateconfirmationtitle = isDateTimeTag && element.getAttribute("dateconfirmationtitle") ? `dateconfirmationtitle=
|
|
44014
|
-
const datecanceltitle = isDateTimeTag && element.getAttribute("datecanceltitle") ? `datecanceltitle=
|
|
44015
|
-
const timeheadertitle = isDateTimeTag && element.getAttribute("timeheadertitle") ? `timeheadertitle=
|
|
44016
|
-
const timeconfirmationtitle = isDateTimeTag && element.getAttribute("timeconfirmationtitle") ? `timeconfirmationtitle=
|
|
44017
|
-
const timecanceltitle = isDateTimeTag && element.getAttribute("timecanceltitle") ? `timecanceltitle=
|
|
44018
|
-
const outputformat = element.getAttribute("outputformat") ? `outputformat=
|
|
44151
|
+
const dateheadertitle = isDateTimeTag && element.getAttribute("dateheadertitle") ? `dateheadertitle="${(_b = element.getAttribute("dateheadertitle")) == null ? void 0 : _b.replace(/"/g, """)}"` : "";
|
|
44152
|
+
const dateconfirmationtitle = isDateTimeTag && element.getAttribute("dateconfirmationtitle") ? `dateconfirmationtitle="${(_c = element.getAttribute("dateconfirmationtitle")) == null ? void 0 : _c.replace(/"/g, """)}"` : "";
|
|
44153
|
+
const datecanceltitle = isDateTimeTag && element.getAttribute("datecanceltitle") ? `datecanceltitle="${(_d = element.getAttribute("datecanceltitle")) == null ? void 0 : _d.replace(/"/g, """)}"` : "";
|
|
44154
|
+
const timeheadertitle = isDateTimeTag && element.getAttribute("timeheadertitle") ? `timeheadertitle="${(_e = element.getAttribute("timeheadertitle")) == null ? void 0 : _e.replace(/"/g, """)}"` : "";
|
|
44155
|
+
const timeconfirmationtitle = isDateTimeTag && element.getAttribute("timeconfirmationtitle") ? `timeconfirmationtitle="${(_f = element.getAttribute("timeconfirmationtitle")) == null ? void 0 : _f.replace(/"/g, """)}"` : "";
|
|
44156
|
+
const timecanceltitle = isDateTimeTag && element.getAttribute("timecanceltitle") ? `timecanceltitle="${(_g = element.getAttribute("timecanceltitle")) == null ? void 0 : _g.replace(/"/g, """)}"` : "";
|
|
44157
|
+
const outputformat = element.getAttribute("outputformat") ? `outputformat="${(_h = element.getAttribute("outputformat")) == null ? void 0 : _h.replace(/"/g, """)}"` : ``;
|
|
44019
44158
|
switch (widgetType) {
|
|
44020
44159
|
case "text":
|
|
44021
44160
|
case "password":
|
|
@@ -44304,13 +44443,13 @@ var form_field_transformer_default = {
|
|
|
44304
44443
|
return `<WmFormField ${formScope || ""} field="true" ${fieldcolumn ? `fieldcol="${fieldcolumn}"` : ""} role="form-field" ${extractDatasetInfo(element)} ${transformAttrs(element, context)} renderFormFields={($formField) => (<>`;
|
|
44305
44444
|
},
|
|
44306
44445
|
post: (element, context) => " </>)}></WmFormField>",
|
|
44307
|
-
imports: (element, context) =>
|
|
44446
|
+
imports: (element, context) => imports30,
|
|
44308
44447
|
createComponent: (element, context) => createComponent2(element, context)
|
|
44309
44448
|
};
|
|
44310
44449
|
|
|
44311
44450
|
// src/transpile/components/data/form/form.transformer.ts
|
|
44312
44451
|
var import_lodash7 = __toESM(require_lodash());
|
|
44313
|
-
var
|
|
44452
|
+
var imports31 = [
|
|
44314
44453
|
{ name: "WmForm", from: "@wavemaker-ai/react-runtime/components/data/form" }
|
|
44315
44454
|
];
|
|
44316
44455
|
var getOnChangeExpr = (element) => {
|
|
@@ -44443,11 +44582,11 @@ var form_transformer_default = {
|
|
|
44443
44582
|
>`;
|
|
44444
44583
|
},
|
|
44445
44584
|
post: (element, context) => `</WmForm>`,
|
|
44446
|
-
imports: (element, context) =>
|
|
44585
|
+
imports: (element, context) => imports31
|
|
44447
44586
|
};
|
|
44448
44587
|
|
|
44449
44588
|
// src/transpile/components/data/form/form-footer.transformer.ts
|
|
44450
|
-
var
|
|
44589
|
+
var imports32 = [
|
|
44451
44590
|
{
|
|
44452
44591
|
name: "WmFormFooter",
|
|
44453
44592
|
from: "@wavemaker-ai/react-runtime/components/data/form/form-footer"
|
|
@@ -44456,11 +44595,11 @@ var imports40 = [
|
|
|
44456
44595
|
var form_footer_transformer_default = {
|
|
44457
44596
|
pre: (element, context) => `<WmFormFooter ${transformAttrs(element, context)}>`,
|
|
44458
44597
|
post: (element, context) => "</WmFormFooter>",
|
|
44459
|
-
imports: (element, context) =>
|
|
44598
|
+
imports: (element, context) => imports32
|
|
44460
44599
|
};
|
|
44461
44600
|
|
|
44462
44601
|
// src/transpile/components/data/form/form-body.transformer.ts
|
|
44463
|
-
var
|
|
44602
|
+
var imports33 = [
|
|
44464
44603
|
{
|
|
44465
44604
|
name: "WmFormBody",
|
|
44466
44605
|
from: "@wavemaker-ai/react-runtime/components/data/form/form-body"
|
|
@@ -44469,11 +44608,11 @@ var imports41 = [
|
|
|
44469
44608
|
var form_body_transformer_default = {
|
|
44470
44609
|
pre: (element, context) => `<WmFormBody ${transformAttrs(element, context)}>`,
|
|
44471
44610
|
post: (element, context) => "</WmFormBody>",
|
|
44472
|
-
imports: (element, context) =>
|
|
44611
|
+
imports: (element, context) => imports33
|
|
44473
44612
|
};
|
|
44474
44613
|
|
|
44475
44614
|
// src/transpile/components/data/form/form-action.transformer.ts
|
|
44476
|
-
var
|
|
44615
|
+
var imports34 = [
|
|
44477
44616
|
{
|
|
44478
44617
|
name: "WmFormAction",
|
|
44479
44618
|
from: "@wavemaker-ai/react-runtime/components/data/form/form-action"
|
|
@@ -44570,24 +44709,17 @@ var form_action_transformer_default = {
|
|
|
44570
44709
|
${action && actionType ? `onClick={${getFormActionExpr(action, isAsyncAction)}} widgettype="${widgetType}"` : ""} `;
|
|
44571
44710
|
},
|
|
44572
44711
|
post: (element, context) => "/>",
|
|
44573
|
-
imports: (element, context) =>
|
|
44712
|
+
imports: (element, context) => imports34
|
|
44574
44713
|
};
|
|
44575
44714
|
|
|
44576
44715
|
// src/transpile/components/dialogs/iframe-dialog.transformer.ts
|
|
44577
|
-
var
|
|
44578
|
-
|
|
44579
|
-
|
|
44580
|
-
|
|
44581
|
-
}
|
|
44582
|
-
];
|
|
44583
|
-
var iframe_dialog_transformer_default = {
|
|
44584
|
-
pre: (element, context) => `<WmIFrameDialog listener={fragment} ${transformAttrs(element, context)}`,
|
|
44585
|
-
post: (element, context) => "/>",
|
|
44586
|
-
imports: (element, context) => imports43
|
|
44587
|
-
};
|
|
44716
|
+
var iframe_dialog_transformer_default = createSelfClosingDialogTransformer({
|
|
44717
|
+
component: "WmIFrameDialog",
|
|
44718
|
+
importPath: "@wavemaker-ai/react-runtime/components/dialogs/iframe-dialog"
|
|
44719
|
+
});
|
|
44588
44720
|
|
|
44589
44721
|
// src/transpile/components/dialogs/page-dialog.transformer.ts
|
|
44590
|
-
var
|
|
44722
|
+
var imports35 = [
|
|
44591
44723
|
{
|
|
44592
44724
|
name: "WmPageDialog",
|
|
44593
44725
|
from: "@wavemaker-ai/react-runtime/components/dialogs/page-dialog"
|
|
@@ -44596,11 +44728,11 @@ var imports44 = [
|
|
|
44596
44728
|
var page_dialog_transformer_default = {
|
|
44597
44729
|
pre: (element, context) => `<WmPageDialog listener={fragment} ${transformAttrs(element, context)}`,
|
|
44598
44730
|
post: (element, context) => "/>",
|
|
44599
|
-
imports: (element, context) =>
|
|
44731
|
+
imports: (element, context) => imports35
|
|
44600
44732
|
};
|
|
44601
44733
|
|
|
44602
44734
|
// src/transpile/components/dialogs/dialog.transformer.ts
|
|
44603
|
-
var
|
|
44735
|
+
var imports36 = [
|
|
44604
44736
|
{ name: "WmDialog", from: "@wavemaker-ai/react-runtime/components/dialogs/dialog" }
|
|
44605
44737
|
];
|
|
44606
44738
|
var dialog_transformer_default = {
|
|
@@ -44626,12 +44758,12 @@ var dialog_transformer_default = {
|
|
|
44626
44758
|
return `<WmDialog listener={fragment} ${transformAttrs(element, context)}>`;
|
|
44627
44759
|
},
|
|
44628
44760
|
post: (element, context) => "</WmDialog>",
|
|
44629
|
-
imports: (element, context) =>
|
|
44761
|
+
imports: (element, context) => imports36
|
|
44630
44762
|
};
|
|
44631
44763
|
|
|
44632
44764
|
// src/transpile/components/dialogs/dialog-actions.transformer.ts
|
|
44633
44765
|
var import_isString = __toESM(require_isString());
|
|
44634
|
-
var
|
|
44766
|
+
var imports37 = [
|
|
44635
44767
|
{
|
|
44636
44768
|
name: "WmDialogActions",
|
|
44637
44769
|
from: "@wavemaker-ai/react-runtime/components/dialogs/dialog-actions"
|
|
@@ -44677,22 +44809,22 @@ var dialog_actions_transformer_default = {
|
|
|
44677
44809
|
if (!(parent == null ? void 0 : parent.rawTagName.includes("dialog"))) {
|
|
44678
44810
|
return [];
|
|
44679
44811
|
}
|
|
44680
|
-
return
|
|
44812
|
+
return imports37;
|
|
44681
44813
|
}
|
|
44682
44814
|
};
|
|
44683
44815
|
|
|
44684
44816
|
// src/transpile/components/dialogs/dialog-body.transformer.ts
|
|
44685
|
-
var
|
|
44817
|
+
var imports38 = [
|
|
44686
44818
|
{ name: "WmDialogBody", from: "@wavemaker-ai/react-runtime/components/dialogs/dialog-body" }
|
|
44687
44819
|
];
|
|
44688
44820
|
var dialog_body_transformer_default = {
|
|
44689
44821
|
pre: (element, context) => `<WmDialogBody ${transformAttrs(element, context)}>`,
|
|
44690
44822
|
post: (element, context) => "</WmDialogBody>",
|
|
44691
|
-
imports: (element, context) =>
|
|
44823
|
+
imports: (element, context) => imports38
|
|
44692
44824
|
};
|
|
44693
44825
|
|
|
44694
44826
|
// src/transpile/components/container/tabs.transformer.ts
|
|
44695
|
-
var
|
|
44827
|
+
var imports39 = [
|
|
44696
44828
|
{ name: "WmTabs", from: "@wavemaker-ai/react-runtime/components/container/tabs" }
|
|
44697
44829
|
];
|
|
44698
44830
|
var transformAttr2 = (name, value) => {
|
|
@@ -44760,7 +44892,7 @@ var tabs_transformer_default = {
|
|
|
44760
44892
|
}
|
|
44761
44893
|
return "</WmTabs>";
|
|
44762
44894
|
},
|
|
44763
|
-
imports: (element, context) =>
|
|
44895
|
+
imports: (element, context) => imports39,
|
|
44764
44896
|
createComponent: (element, context) => {
|
|
44765
44897
|
if (!context.data.listCount) {
|
|
44766
44898
|
context.props = context.get("old_props") || [];
|
|
@@ -44772,7 +44904,7 @@ var tabs_transformer_default = {
|
|
|
44772
44904
|
};
|
|
44773
44905
|
|
|
44774
44906
|
// src/transpile/components/container/tabpane.transformer.ts
|
|
44775
|
-
var
|
|
44907
|
+
var imports40 = [
|
|
44776
44908
|
{ name: "WmTabPane", from: "@wavemaker-ai/react-runtime/components/container/tabs/tab-pane" }
|
|
44777
44909
|
];
|
|
44778
44910
|
function isInsideDynamicTabs(element) {
|
|
@@ -44789,39 +44921,27 @@ function isInsideDynamicTabs(element) {
|
|
|
44789
44921
|
}
|
|
44790
44922
|
var tabpane_transformer_default = {
|
|
44791
44923
|
pre: (element, context) => {
|
|
44792
|
-
const
|
|
44793
|
-
if (isPreview) {
|
|
44794
|
-
let partial2 = partial_content_transformer_default.pre(element, context) || "";
|
|
44795
|
-
if (partial2) {
|
|
44796
|
-
element.removeAttribute("name");
|
|
44797
|
-
partial2 = `renderPartial={(props:Record<string, any>, onLoad:()=>void) => (${partial2})}`;
|
|
44798
|
-
}
|
|
44799
|
-
return `<WmTabPane listener={fragment} ${transformAttrs(element, context)} ${partial2}>`;
|
|
44800
|
-
}
|
|
44801
|
-
let partial = partial_container_transformer_default.pre(element, context) || "";
|
|
44802
|
-
if (partial) {
|
|
44803
|
-
partial = `renderPartial={(props:Record<string, any>, onLoad:()=>void) => (${partial})}`;
|
|
44804
|
-
}
|
|
44924
|
+
const { partialAttr } = withPartialContainer(element, context, { prop: "renderPartial" });
|
|
44805
44925
|
const isDynamicTabs = isInsideDynamicTabs(element);
|
|
44806
44926
|
const itemProp = isDynamicTabs ? " item={$item}" : "";
|
|
44807
|
-
return `<WmTabPane listener={fragment} ${transformAttrs(element, context)}${itemProp} ${
|
|
44927
|
+
return `<WmTabPane listener={fragment} ${transformAttrs(element, context)}${itemProp} ${partialAttr}>`;
|
|
44808
44928
|
},
|
|
44809
44929
|
post: (element, context) => "</WmTabPane>",
|
|
44810
|
-
imports: (element, context) =>
|
|
44930
|
+
imports: (element, context) => imports40.concat(getPartialImports(element, context))
|
|
44811
44931
|
};
|
|
44812
44932
|
|
|
44813
44933
|
// src/transpile/components/container/tabheader.transformer.ts
|
|
44814
|
-
var
|
|
44934
|
+
var imports41 = [
|
|
44815
44935
|
{ name: "WmTabheader", from: "@wavemaker-ai/react-runtime/components/container/tabs/tabheader" }
|
|
44816
44936
|
];
|
|
44817
44937
|
var tabheader_transformer_default = {
|
|
44818
44938
|
pre: (element, context) => `<WmTabheader ${transformAttrs(element, context)}>`,
|
|
44819
44939
|
post: (element, context) => "</WmTabheader>",
|
|
44820
|
-
imports: (element, context) =>
|
|
44940
|
+
imports: (element, context) => imports41
|
|
44821
44941
|
};
|
|
44822
44942
|
|
|
44823
44943
|
// src/transpile/components/prefab/prefab-container.transformer.ts
|
|
44824
|
-
var
|
|
44944
|
+
var imports42 = [
|
|
44825
44945
|
{
|
|
44826
44946
|
name: "WmPrefabContainer",
|
|
44827
44947
|
from: "@wavemaker-ai/react-runtime/components/prefab/container"
|
|
@@ -44836,7 +44956,7 @@ var prefab_container_transformer_default = {
|
|
|
44836
44956
|
return `</WmPrefabContainer >`;
|
|
44837
44957
|
},
|
|
44838
44958
|
imports: (element, context) => {
|
|
44839
|
-
return
|
|
44959
|
+
return imports42;
|
|
44840
44960
|
},
|
|
44841
44961
|
createComponent: (element, context) => createComponent2(element, context),
|
|
44842
44962
|
prefabs: (element, context) => {
|
|
@@ -44919,17 +45039,17 @@ var prefab_transformer_default = {
|
|
|
44919
45039
|
const prefabName = element.getAttribute("prefabname");
|
|
44920
45040
|
const widgetname = element.getAttribute("widgetname");
|
|
44921
45041
|
const widgetmodule = element.getAttribute("widgetmodule");
|
|
44922
|
-
const
|
|
45042
|
+
const imports102 = [];
|
|
44923
45043
|
if (widgetname && !isPreview) {
|
|
44924
|
-
|
|
45044
|
+
imports102.push({ name: "Wm" + capitalize3(widgetname), from: widgetmodule });
|
|
44925
45045
|
} else if (!isPreview) {
|
|
44926
|
-
|
|
45046
|
+
imports102.push({
|
|
44927
45047
|
name: "Wm" + capitalize3(prefabName) + "Prefab",
|
|
44928
45048
|
from: `@/app/prefabs/${prefabName}/Main/Main`,
|
|
44929
45049
|
lazy: profile_default.lazyloadPrefabs
|
|
44930
45050
|
});
|
|
44931
45051
|
}
|
|
44932
|
-
return
|
|
45052
|
+
return imports102;
|
|
44933
45053
|
},
|
|
44934
45054
|
createComponent: (element, context) => createComponent2(element, context),
|
|
44935
45055
|
prefabs: (element, context) => {
|
|
@@ -44942,7 +45062,7 @@ var prefab_transformer_default = {
|
|
|
44942
45062
|
};
|
|
44943
45063
|
|
|
44944
45064
|
// src/transpile/components/navigation/popover.transformer.ts
|
|
44945
|
-
var
|
|
45065
|
+
var imports43 = [
|
|
44946
45066
|
{
|
|
44947
45067
|
name: "WmPopover",
|
|
44948
45068
|
from: "@wavemaker-ai/react-runtime/components/navigation/popover"
|
|
@@ -44950,30 +45070,18 @@ var imports52 = [
|
|
|
44950
45070
|
];
|
|
44951
45071
|
var popover_transformer_default = {
|
|
44952
45072
|
pre: (element, context) => {
|
|
44953
|
-
|
|
44954
|
-
if (isPreview) {
|
|
44955
|
-
let partial2 = partial_content_transformer_default.pre(element, context) || "";
|
|
44956
|
-
if (partial2) {
|
|
44957
|
-
element.removeAttribute("name");
|
|
44958
|
-
partial2 = `render={(props:Record<string, any>, onLoad:()=>void) => (${partial2})}`;
|
|
44959
|
-
}
|
|
44960
|
-
return `<WmPopover listener={fragment} ${transformAttrs(element, context)} ${partial2}>`;
|
|
44961
|
-
}
|
|
44962
|
-
let partial = null;
|
|
45073
|
+
let partialAttr = "";
|
|
44963
45074
|
if (element.getAttribute("contentsource") !== "inline") {
|
|
44964
|
-
|
|
44965
|
-
if (partial) {
|
|
44966
|
-
partial = `render={(props:Record<string, any>, onLoad:()=>void) => (${partial})}`;
|
|
44967
|
-
}
|
|
45075
|
+
({ partialAttr } = withPartialContainer(element, context, { prop: "render" }));
|
|
44968
45076
|
}
|
|
44969
|
-
return `<WmPopover listener={fragment} ${transformAttrs(element, context)} ${
|
|
45077
|
+
return `<WmPopover listener={fragment} ${transformAttrs(element, context)} ${partialAttr}>`;
|
|
44970
45078
|
},
|
|
44971
45079
|
post: (element, context) => "</WmPopover>",
|
|
44972
|
-
imports: (element, context) =>
|
|
45080
|
+
imports: (element, context) => imports43.concat(getPartialImports(element, context))
|
|
44973
45081
|
};
|
|
44974
45082
|
|
|
44975
45083
|
// src/transpile/components/input/switch.transformer.ts
|
|
44976
|
-
var
|
|
45084
|
+
var imports44 = [
|
|
44977
45085
|
{ name: "WmSwitch", from: "@wavemaker-ai/react-runtime/components/input/default/switch" }
|
|
44978
45086
|
];
|
|
44979
45087
|
var switch_transformer_default = {
|
|
@@ -44986,11 +45094,11 @@ var switch_transformer_default = {
|
|
|
44986
45094
|
return `<WmSwitch ${isFormField ? " {...$formField}" : ""} listener={fragment} ${extractDatasetInfo(element)} ${transformAttrs(element, context)} ${getDisplayExpression2 ? `displayExpression=${getDisplayExpression2}` : ""} >`;
|
|
44987
45095
|
},
|
|
44988
45096
|
post: (element) => "</WmSwitch>",
|
|
44989
|
-
imports: (element) =>
|
|
45097
|
+
imports: (element) => imports44
|
|
44990
45098
|
};
|
|
44991
45099
|
|
|
44992
45100
|
// src/transpile/components/input/slider.transformer.ts
|
|
44993
|
-
var
|
|
45101
|
+
var imports45 = [
|
|
44994
45102
|
{ name: "WmSlider", from: "@wavemaker-ai/react-runtime/components/input/slider" }
|
|
44995
45103
|
];
|
|
44996
45104
|
var slider_transformer_default = {
|
|
@@ -45011,11 +45119,11 @@ var slider_transformer_default = {
|
|
|
45011
45119
|
${getToolTipExpression ? `getToolTipExpression=${getToolTipExpression}` : ""}>`;
|
|
45012
45120
|
},
|
|
45013
45121
|
post: (element, context) => "</WmSlider>",
|
|
45014
|
-
imports: (element, context) =>
|
|
45122
|
+
imports: (element, context) => imports45
|
|
45015
45123
|
};
|
|
45016
45124
|
|
|
45017
45125
|
// src/transpile/components/input/select.transformer.ts
|
|
45018
|
-
var
|
|
45126
|
+
var imports46 = [
|
|
45019
45127
|
{ name: "WmSelect", from: "@wavemaker-ai/react-runtime/components/input/select" }
|
|
45020
45128
|
];
|
|
45021
45129
|
var getOnChangeExpr2 = (element) => {
|
|
@@ -45058,11 +45166,11 @@ var select_transformer_default = {
|
|
|
45058
45166
|
${dataPath ? `dataPath="${dataPath}"` : ""}>`;
|
|
45059
45167
|
},
|
|
45060
45168
|
post: (element, context) => "</WmSelect>",
|
|
45061
|
-
imports: (element, context) =>
|
|
45169
|
+
imports: (element, context) => imports46
|
|
45062
45170
|
};
|
|
45063
45171
|
|
|
45064
45172
|
// src/transpile/components/input/rating.transformer.ts
|
|
45065
|
-
var
|
|
45173
|
+
var imports47 = [
|
|
45066
45174
|
{ name: "WmRating", from: "@wavemaker-ai/react-runtime/components/input/rating" }
|
|
45067
45175
|
];
|
|
45068
45176
|
var rating_transformer_default = {
|
|
@@ -45075,11 +45183,11 @@ var rating_transformer_default = {
|
|
|
45075
45183
|
return `<WmRating ${isFormField ? " {...$formField}" : ""} listener={fragment} ${transformAttrs(element, context)} ${getDisplayExpression2 ? `getDisplayExpression=${getDisplayExpression2}` : ""}>`;
|
|
45076
45184
|
},
|
|
45077
45185
|
post: (element, context) => "</WmRating>",
|
|
45078
|
-
imports: (element, context) =>
|
|
45186
|
+
imports: (element, context) => imports47
|
|
45079
45187
|
};
|
|
45080
45188
|
|
|
45081
45189
|
// src/transpile/components/input/radio-set.transformer.ts
|
|
45082
|
-
var
|
|
45190
|
+
var imports48 = [
|
|
45083
45191
|
{
|
|
45084
45192
|
name: "WmRadioset",
|
|
45085
45193
|
from: "@wavemaker-ai/react-runtime/components/input/default/radioset"
|
|
@@ -45095,11 +45203,11 @@ var radio_set_transformer_default = {
|
|
|
45095
45203
|
return `<WmRadioset ${isFormField ? " {...$formField}" : ""} listener={fragment} ${extractDatasetInfo(element)} ${transformAttrs(element, context)} ${getDisplayExpression2 ? `getDisplayExpression=${getDisplayExpression2}` : ""} >`;
|
|
45096
45204
|
},
|
|
45097
45205
|
post: (element) => "</WmRadioset>",
|
|
45098
|
-
imports: (element) =>
|
|
45206
|
+
imports: (element) => imports48
|
|
45099
45207
|
};
|
|
45100
45208
|
|
|
45101
45209
|
// src/transpile/components/input/currency.transformer.ts
|
|
45102
|
-
var
|
|
45210
|
+
var imports49 = [
|
|
45103
45211
|
{
|
|
45104
45212
|
name: "WmCurrency",
|
|
45105
45213
|
from: "@wavemaker-ai/react-runtime/components/input/currency"
|
|
@@ -45111,11 +45219,11 @@ var currency_transformer_default = {
|
|
|
45111
45219
|
return `<WmCurrency ${isFormField ? " {...$formField}" : ""} listener={fragment} ${transformAttrs(element, context)}>`;
|
|
45112
45220
|
},
|
|
45113
45221
|
post: (element) => "</WmCurrency>",
|
|
45114
|
-
imports: (element) =>
|
|
45222
|
+
imports: (element) => imports49
|
|
45115
45223
|
};
|
|
45116
45224
|
|
|
45117
45225
|
// src/transpile/components/input/checkbox.transformer.ts
|
|
45118
|
-
var
|
|
45226
|
+
var imports50 = [
|
|
45119
45227
|
{
|
|
45120
45228
|
name: "WmCheckbox",
|
|
45121
45229
|
from: "@wavemaker-ai/react-runtime/components/input/default/checkbox"
|
|
@@ -45145,11 +45253,11 @@ var checkbox_transformer_default = {
|
|
|
45145
45253
|
return `<WmCheckbox ${isFormField ? " {...$formField}" : ""} listener={fragment} ${transformAttrs(element, context, transformNameInList)}>`;
|
|
45146
45254
|
},
|
|
45147
45255
|
post: (element, context) => "</WmCheckbox>",
|
|
45148
|
-
imports: (element, context) =>
|
|
45256
|
+
imports: (element, context) => imports50
|
|
45149
45257
|
};
|
|
45150
45258
|
|
|
45151
45259
|
// src/transpile/components/input/checkbox-set.transformer.ts
|
|
45152
|
-
var
|
|
45260
|
+
var imports51 = [
|
|
45153
45261
|
{
|
|
45154
45262
|
name: "WmCheckboxset",
|
|
45155
45263
|
from: "@wavemaker-ai/react-runtime/components/input/default/checkboxset"
|
|
@@ -45169,11 +45277,11 @@ var checkbox_set_transformer_default = {
|
|
|
45169
45277
|
return `<WmCheckboxset ${isFormField ? " {...$formField}" : ""} listener={fragment} ${extractDatasetInfo(element)} ${transformAttrs(element, context)} ${getDisplayExpression2 ? `getDisplayExpression=${getDisplayExpression2}` : ""} >`;
|
|
45170
45278
|
},
|
|
45171
45279
|
post: (element) => "</WmCheckboxset>",
|
|
45172
|
-
imports: (element) =>
|
|
45280
|
+
imports: (element) => imports51
|
|
45173
45281
|
};
|
|
45174
45282
|
|
|
45175
45283
|
// src/transpile/components/container/accordion.transformer.ts
|
|
45176
|
-
var
|
|
45284
|
+
var imports52 = [
|
|
45177
45285
|
{
|
|
45178
45286
|
name: "WmAccordion",
|
|
45179
45287
|
from: "@wavemaker-ai/react-runtime/components/container/accordion"
|
|
@@ -45209,7 +45317,7 @@ var accordion_transformer_default = {
|
|
|
45209
45317
|
}
|
|
45210
45318
|
return "</WmAccordion>";
|
|
45211
45319
|
},
|
|
45212
|
-
imports: (element, context) =>
|
|
45320
|
+
imports: (element, context) => imports52,
|
|
45213
45321
|
createComponent: (element, context) => {
|
|
45214
45322
|
context.props = [];
|
|
45215
45323
|
return createComponent2(element, context);
|
|
@@ -45217,7 +45325,7 @@ var accordion_transformer_default = {
|
|
|
45217
45325
|
};
|
|
45218
45326
|
|
|
45219
45327
|
// src/transpile/components/container/accordion-pane.transformer.ts
|
|
45220
|
-
var
|
|
45328
|
+
var imports53 = [
|
|
45221
45329
|
{
|
|
45222
45330
|
name: "WmAccordionPane",
|
|
45223
45331
|
from: "@wavemaker-ai/react-runtime/components/container/accordion/accordion-pane"
|
|
@@ -45226,19 +45334,7 @@ var imports62 = [
|
|
|
45226
45334
|
var accordion_pane_transformer_default = {
|
|
45227
45335
|
pre: (element, context) => {
|
|
45228
45336
|
transformRepeatChildAttr(element, `bind:fragment.item`, "bind:$item");
|
|
45229
|
-
const
|
|
45230
|
-
if (isPreview) {
|
|
45231
|
-
let partial2 = partial_content_transformer_default.pre(element, context) || "";
|
|
45232
|
-
if (partial2) {
|
|
45233
|
-
element.removeAttribute("name");
|
|
45234
|
-
partial2 = `render={(props:Record<string, any>, onLoad:()=>void) => (${partial2})}`;
|
|
45235
|
-
}
|
|
45236
|
-
return `<WmAccordionPane ${transformAttrs(element, context)} ${partial2}>`;
|
|
45237
|
-
}
|
|
45238
|
-
let partial = partial_container_transformer_default.pre(element, context) || "";
|
|
45239
|
-
if (partial) {
|
|
45240
|
-
partial = `render={(props:Record<string, any>, onLoad:()=>void) => (${partial})}`;
|
|
45241
|
-
}
|
|
45337
|
+
const { partialAttr } = withPartialContainer(element, context, { prop: "render" });
|
|
45242
45338
|
element.setAttribute(
|
|
45243
45339
|
"key",
|
|
45244
45340
|
element.getAttribute("title") || element.getAttribute("name") || ""
|
|
@@ -45248,14 +45344,14 @@ var accordion_pane_transformer_default = {
|
|
|
45248
45344
|
if (typeofdynamic && name) {
|
|
45249
45345
|
element.removeAttribute("name");
|
|
45250
45346
|
}
|
|
45251
|
-
return `<WmAccordionPane ${typeofdynamic && name ? `name={ "accordion_" + $index + "${name}" }` : ""} ${transformAttrs(element, context)} ${
|
|
45347
|
+
return `<WmAccordionPane ${typeofdynamic && name ? `name={ "accordion_" + $index + "${name}" }` : ""} ${transformAttrs(element, context)} ${partialAttr}>`;
|
|
45252
45348
|
},
|
|
45253
45349
|
post: (element, context) => "</WmAccordionPane>",
|
|
45254
|
-
imports: (element, context) =>
|
|
45350
|
+
imports: (element, context) => imports53.concat(getPartialImports(element, context))
|
|
45255
45351
|
};
|
|
45256
45352
|
|
|
45257
45353
|
// src/transpile/components/input/file-upload.transformer.ts
|
|
45258
|
-
var
|
|
45354
|
+
var imports54 = [
|
|
45259
45355
|
{
|
|
45260
45356
|
name: "WmFileupload",
|
|
45261
45357
|
from: "@wavemaker-ai/react-runtime/components/input/fileupload"
|
|
@@ -45283,11 +45379,11 @@ var file_upload_transformer_default = {
|
|
|
45283
45379
|
return `<WmFileupload ${isFormField ? " {...$formField}" : ""} listener={fragment} ${transformAttrs(element, context)}>`;
|
|
45284
45380
|
},
|
|
45285
45381
|
post: (element, context) => "</WmFileupload>",
|
|
45286
|
-
imports: (element, context) =>
|
|
45382
|
+
imports: (element, context) => imports54
|
|
45287
45383
|
};
|
|
45288
45384
|
|
|
45289
45385
|
// src/transpile/components/input/upload.transformer.ts
|
|
45290
|
-
var
|
|
45386
|
+
var imports55 = [
|
|
45291
45387
|
{
|
|
45292
45388
|
name: "WmUpload",
|
|
45293
45389
|
from: "@wavemaker-ai/react-runtime/components/input/upload"
|
|
@@ -45299,11 +45395,11 @@ var upload_transformer_default = {
|
|
|
45299
45395
|
return `<WmUpload ${isFormField ? " {...$formField}" : ""} listener={fragment} ${transformAttrs(element, context)}>`;
|
|
45300
45396
|
},
|
|
45301
45397
|
post: (element, context) => "</WmUpload>",
|
|
45302
|
-
imports: (element, context) =>
|
|
45398
|
+
imports: (element, context) => imports55
|
|
45303
45399
|
};
|
|
45304
45400
|
|
|
45305
45401
|
// src/transpile/components/basic/html.transformer.ts
|
|
45306
|
-
var
|
|
45402
|
+
var imports56 = [
|
|
45307
45403
|
{ name: "WmHtml", from: "@wavemaker-ai/react-runtime/components/basic/html" }
|
|
45308
45404
|
];
|
|
45309
45405
|
var html_transformer_default = {
|
|
@@ -45311,11 +45407,11 @@ var html_transformer_default = {
|
|
|
45311
45407
|
return `<WmHtml ${transformAttrs(element, context)}>`;
|
|
45312
45408
|
},
|
|
45313
45409
|
post: (element, context) => "</WmHtml>",
|
|
45314
|
-
imports: (element, context) =>
|
|
45410
|
+
imports: (element, context) => imports56
|
|
45315
45411
|
};
|
|
45316
45412
|
|
|
45317
45413
|
// src/transpile/components/basic/progress-bar.transformer.ts
|
|
45318
|
-
var
|
|
45414
|
+
var imports57 = [
|
|
45319
45415
|
{
|
|
45320
45416
|
name: "WmProgressBar",
|
|
45321
45417
|
from: "@wavemaker-ai/react-runtime/components/basic/progress-bar"
|
|
@@ -45326,11 +45422,11 @@ var progress_bar_transformer_default = {
|
|
|
45326
45422
|
return `<WmProgressBar ${transformAttrs(element, context)}>`;
|
|
45327
45423
|
},
|
|
45328
45424
|
post: (element, context) => "</WmProgressBar>",
|
|
45329
|
-
imports: (element, context) =>
|
|
45425
|
+
imports: (element, context) => imports57
|
|
45330
45426
|
};
|
|
45331
45427
|
|
|
45332
45428
|
// src/transpile/components/container/repeat-template.transformer.ts
|
|
45333
|
-
var
|
|
45429
|
+
var imports58 = [
|
|
45334
45430
|
{
|
|
45335
45431
|
name: "WmRepeatTemplate",
|
|
45336
45432
|
from: "@wavemaker-ai/react-runtime/components/container/repeat-template"
|
|
@@ -45339,11 +45435,11 @@ var imports67 = [
|
|
|
45339
45435
|
var repeat_template_transformer_default = {
|
|
45340
45436
|
pre: (element, context) => `<WmRepeatTemplate ${transformAttrs(element, context)}>`,
|
|
45341
45437
|
post: (element, context) => "</WmRepeatTemplate>",
|
|
45342
|
-
imports: (element, context) =>
|
|
45438
|
+
imports: (element, context) => imports58
|
|
45343
45439
|
};
|
|
45344
45440
|
|
|
45345
45441
|
// src/transpile/components/navigation/menu.transformer.ts
|
|
45346
|
-
var
|
|
45442
|
+
var imports59 = [
|
|
45347
45443
|
{ name: "WmMenu", from: "@wavemaker-ai/react-runtime/components/navigation/menu" }
|
|
45348
45444
|
];
|
|
45349
45445
|
var menu_transformer_default = {
|
|
@@ -45369,11 +45465,11 @@ var menu_transformer_default = {
|
|
|
45369
45465
|
${itemchildrenExpression ? `itemchildren=${itemchildrenExpression}` : ""}>`;
|
|
45370
45466
|
},
|
|
45371
45467
|
post: (element, context) => "</WmMenu>",
|
|
45372
|
-
imports: (element, context) =>
|
|
45468
|
+
imports: (element, context) => imports59
|
|
45373
45469
|
};
|
|
45374
45470
|
|
|
45375
45471
|
// src/transpile/components/basic/richtexteditor.transformer.ts
|
|
45376
|
-
var
|
|
45472
|
+
var imports60 = [
|
|
45377
45473
|
{
|
|
45378
45474
|
name: "WmRichtexteditor",
|
|
45379
45475
|
from: "@wavemaker-ai/react-runtime/components/basic/richtexteditor"
|
|
@@ -45386,11 +45482,11 @@ var richtexteditor_transformer_default = {
|
|
|
45386
45482
|
return `<WmRichtexteditor listener={fragment} ${isFormField ? " {...$formField}" : ""} ${transformAttrs(element, context)} ${onChange ? `onChange={${onChange}}` : ""}>`;
|
|
45387
45483
|
},
|
|
45388
45484
|
post: (element, context) => "</WmRichtexteditor>",
|
|
45389
|
-
imports: (element, context) =>
|
|
45485
|
+
imports: (element, context) => imports60
|
|
45390
45486
|
};
|
|
45391
45487
|
|
|
45392
45488
|
// src/transpile/components/basic/spinner.transformer.ts
|
|
45393
|
-
var
|
|
45489
|
+
var imports61 = [
|
|
45394
45490
|
{
|
|
45395
45491
|
name: "WmSpinner",
|
|
45396
45492
|
from: "@wavemaker-ai/react-runtime/components/basic/spinner"
|
|
@@ -45399,11 +45495,11 @@ var imports70 = [
|
|
|
45399
45495
|
var spinner_transformer_default = {
|
|
45400
45496
|
pre: (element, context) => `<WmSpinner listener={fragment} ${transformAttrs(element, context)}>`,
|
|
45401
45497
|
post: (element, context) => "</WmSpinner>",
|
|
45402
|
-
imports: (element, context) =>
|
|
45498
|
+
imports: (element, context) => imports61
|
|
45403
45499
|
};
|
|
45404
45500
|
|
|
45405
45501
|
// src/transpile/components/basic/progress-circle.transformer.ts
|
|
45406
|
-
var
|
|
45502
|
+
var imports62 = [
|
|
45407
45503
|
{
|
|
45408
45504
|
name: "WmProgressCircle",
|
|
45409
45505
|
from: "@wavemaker-ai/react-runtime/components/basic/progress-circle"
|
|
@@ -45412,11 +45508,11 @@ var imports71 = [
|
|
|
45412
45508
|
var progress_circle_transformer_default = {
|
|
45413
45509
|
pre: (element, context) => `<WmProgressCircle listener={fragment} ${transformAttrs(element, context)}>`,
|
|
45414
45510
|
post: (element, context) => "</WmProgressCircle>",
|
|
45415
|
-
imports: (element, context) =>
|
|
45511
|
+
imports: (element, context) => imports62
|
|
45416
45512
|
};
|
|
45417
45513
|
|
|
45418
45514
|
// src/transpile/components/basic/search.transformer.ts
|
|
45419
|
-
var
|
|
45515
|
+
var imports63 = [
|
|
45420
45516
|
{ name: "WmSearch", from: "@wavemaker-ai/react-runtime/components/basic/search" }
|
|
45421
45517
|
];
|
|
45422
45518
|
var search_transformer_default = {
|
|
@@ -45444,11 +45540,11 @@ var search_transformer_default = {
|
|
|
45444
45540
|
${getDisplayimagesrc ? `displayimagesrc=${getDisplayimagesrc} ` : ``} ${onSelect ? `onSelect={${onSelect}}` : ""}>`;
|
|
45445
45541
|
},
|
|
45446
45542
|
post: (element, context) => "</WmSearch>",
|
|
45447
|
-
imports: (element, context) =>
|
|
45543
|
+
imports: (element, context) => imports63
|
|
45448
45544
|
};
|
|
45449
45545
|
|
|
45450
45546
|
// src/transpile/components/navigation/breadcrumb.transformer.ts
|
|
45451
|
-
var
|
|
45547
|
+
var imports64 = [
|
|
45452
45548
|
{
|
|
45453
45549
|
name: "WmBreadcrumb",
|
|
45454
45550
|
from: "@wavemaker-ai/react-runtime/components/navigation/breadcrumb"
|
|
@@ -45457,11 +45553,11 @@ var imports73 = [
|
|
|
45457
45553
|
var breadcrumb_transformer_default = {
|
|
45458
45554
|
pre: (element, context) => `<WmBreadcrumb listener={fragment} ${transformAttrs(element, context)}`,
|
|
45459
45555
|
post: (element, context) => "/>",
|
|
45460
|
-
imports: (element, context) =>
|
|
45556
|
+
imports: (element, context) => imports64
|
|
45461
45557
|
};
|
|
45462
45558
|
|
|
45463
45559
|
// src/transpile/components/input/color-picker.transformer.ts
|
|
45464
|
-
var
|
|
45560
|
+
var imports65 = [
|
|
45465
45561
|
{
|
|
45466
45562
|
name: "WmColorPicker",
|
|
45467
45563
|
from: "@wavemaker-ai/react-runtime/components/input/color-picker"
|
|
@@ -45473,11 +45569,11 @@ var color_picker_transformer_default = {
|
|
|
45473
45569
|
return `<WmColorPicker ${isFormField ? " {...$formField}" : ""} listener={fragment} ${transformAttrs(element, context)}>`;
|
|
45474
45570
|
},
|
|
45475
45571
|
post: (element) => "</WmColorPicker>",
|
|
45476
|
-
imports: (element) =>
|
|
45572
|
+
imports: (element) => imports65
|
|
45477
45573
|
};
|
|
45478
45574
|
|
|
45479
45575
|
// src/transpile/components/container/panel.transformer.ts
|
|
45480
|
-
var
|
|
45576
|
+
var imports66 = [
|
|
45481
45577
|
{
|
|
45482
45578
|
name: "WmPanel, {WmPanelFooter}",
|
|
45483
45579
|
from: "@wavemaker-ai/react-runtime/components/container/panel"
|
|
@@ -45485,35 +45581,23 @@ var imports75 = [
|
|
|
45485
45581
|
];
|
|
45486
45582
|
var panel_transformer_default = {
|
|
45487
45583
|
pre: (element, context) => {
|
|
45488
|
-
const
|
|
45489
|
-
|
|
45490
|
-
let partial2 = partial_content_transformer_default.pre(element, context) || "";
|
|
45491
|
-
if (partial2) {
|
|
45492
|
-
element.removeAttribute("name");
|
|
45493
|
-
partial2 = `renderPartial={(props:Record<string, any>, onLoad:()=>void) => (${partial2})}`;
|
|
45494
|
-
}
|
|
45495
|
-
return `<WmPanel listener={fragment} ${transformAttrs(element, context)} ${partial2}>`;
|
|
45496
|
-
}
|
|
45497
|
-
let partial = partial_container_transformer_default.pre(element, context) || "";
|
|
45498
|
-
if (partial) {
|
|
45499
|
-
partial = `renderPartial={(props:Record<string, any>, onLoad:()=>void) => (${partial})}`;
|
|
45500
|
-
}
|
|
45501
|
-
return `<WmPanel listener={fragment} ${transformAttrs(element, context)} ${partial}>`;
|
|
45584
|
+
const { partialAttr } = withPartialContainer(element, context, { prop: "renderPartial" });
|
|
45585
|
+
return `<WmPanel listener={fragment} ${transformAttrs(element, context)} ${partialAttr}>`;
|
|
45502
45586
|
},
|
|
45503
45587
|
post: (element, context) => "</WmPanel>",
|
|
45504
|
-
imports: (element, context) =>
|
|
45588
|
+
imports: (element, context) => imports66.concat(getPartialImports(element, context))
|
|
45505
45589
|
};
|
|
45506
45590
|
|
|
45507
45591
|
// src/transpile/components/container/panel-footer.transformer.ts
|
|
45508
|
-
var
|
|
45592
|
+
var imports67 = [];
|
|
45509
45593
|
var panel_footer_transformer_default = {
|
|
45510
45594
|
pre: (element, context) => `<WmPanelFooter ${transformAttrs(element, context)}>`,
|
|
45511
45595
|
post: (element, context) => "</WmPanelFooter>",
|
|
45512
|
-
imports: (element, context) =>
|
|
45596
|
+
imports: (element, context) => imports67
|
|
45513
45597
|
};
|
|
45514
45598
|
|
|
45515
45599
|
// src/transpile/components/container/panel-content.transformer.ts
|
|
45516
|
-
var
|
|
45600
|
+
var imports68 = [
|
|
45517
45601
|
{
|
|
45518
45602
|
name: "WmPanelContent",
|
|
45519
45603
|
from: "@wavemaker-ai/react-runtime/components/container/panel/components/panel-content"
|
|
@@ -45522,11 +45606,11 @@ var imports77 = [
|
|
|
45522
45606
|
var panel_content_transformer_default = {
|
|
45523
45607
|
pre: (element, context) => `<WmPanelContent ${transformAttrs(element, context)}>`,
|
|
45524
45608
|
post: (element, context) => "</WmPanelContent>",
|
|
45525
|
-
imports: (element, context) =>
|
|
45609
|
+
imports: (element, context) => imports68
|
|
45526
45610
|
};
|
|
45527
45611
|
|
|
45528
45612
|
// src/transpile/components/input/epoch/date.transformer.ts
|
|
45529
|
-
var
|
|
45613
|
+
var imports69 = [
|
|
45530
45614
|
{ name: "WmDate", from: "@wavemaker-ai/react-runtime/components/input/epoch/date" }
|
|
45531
45615
|
];
|
|
45532
45616
|
var date_transformer_default = {
|
|
@@ -45535,11 +45619,11 @@ var date_transformer_default = {
|
|
|
45535
45619
|
return `<WmDate listener={fragment} ${isFormField ? " {...$formField}" : ""} ${transformAttrs(element, context)}>`;
|
|
45536
45620
|
},
|
|
45537
45621
|
post: (element, context) => "</WmDate>",
|
|
45538
|
-
imports: (element, context) =>
|
|
45622
|
+
imports: (element, context) => imports69
|
|
45539
45623
|
};
|
|
45540
45624
|
|
|
45541
45625
|
// src/transpile/components/input/epoch/time.transformer.ts
|
|
45542
|
-
var
|
|
45626
|
+
var imports70 = [
|
|
45543
45627
|
{ name: "WmTime", from: "@wavemaker-ai/react-runtime/components/input/epoch/time" }
|
|
45544
45628
|
];
|
|
45545
45629
|
var time_transformer_default = {
|
|
@@ -45548,11 +45632,11 @@ var time_transformer_default = {
|
|
|
45548
45632
|
return `<WmTime listener={fragment} ${isFormField ? " {...$formField}" : ""} ${transformAttrs(element, context)}>`;
|
|
45549
45633
|
},
|
|
45550
45634
|
post: (element, context) => "</WmTime>",
|
|
45551
|
-
imports: (element, context) =>
|
|
45635
|
+
imports: (element, context) => imports70
|
|
45552
45636
|
};
|
|
45553
45637
|
|
|
45554
45638
|
// src/transpile/components/input/epoch/datetime.transformer.ts
|
|
45555
|
-
var
|
|
45639
|
+
var imports71 = [
|
|
45556
45640
|
{ name: "WmDatetime", from: "@wavemaker-ai/react-runtime/components/input/epoch/datetime" }
|
|
45557
45641
|
];
|
|
45558
45642
|
var datetime_transformer_default = {
|
|
@@ -45561,11 +45645,11 @@ var datetime_transformer_default = {
|
|
|
45561
45645
|
return `<WmDatetime listener={fragment} ${isFormField ? " {...$formField}" : ""} ${transformAttrs(element, context)}>`;
|
|
45562
45646
|
},
|
|
45563
45647
|
post: (element, context) => "</WmDatetime>",
|
|
45564
|
-
imports: (element, context) =>
|
|
45648
|
+
imports: (element, context) => imports71
|
|
45565
45649
|
};
|
|
45566
45650
|
|
|
45567
45651
|
// src/transpile/components/dialogs/login-dialog.transformer.ts
|
|
45568
|
-
var
|
|
45652
|
+
var imports72 = [
|
|
45569
45653
|
{
|
|
45570
45654
|
name: "WmLoginDialog",
|
|
45571
45655
|
from: "@wavemaker-ai/react-runtime/components/dialogs/login-dialog"
|
|
@@ -45596,11 +45680,11 @@ var login_dialog_transformer_default = {
|
|
|
45596
45680
|
return `<WmLoginDialog eventsource={fragment?.Actions?.loginAction} listener={fragment} ${transformAttrs(element, context)} >`;
|
|
45597
45681
|
},
|
|
45598
45682
|
post: (element, context) => "</WmLoginDialog>",
|
|
45599
|
-
imports: (element, context) =>
|
|
45683
|
+
imports: (element, context) => imports72
|
|
45600
45684
|
};
|
|
45601
45685
|
|
|
45602
45686
|
// src/transpile/components/advanced/login.transformer.ts
|
|
45603
|
-
var
|
|
45687
|
+
var imports73 = [
|
|
45604
45688
|
{
|
|
45605
45689
|
name: "WmLogin",
|
|
45606
45690
|
from: "@wavemaker-ai/react-runtime/components/advanced/login"
|
|
@@ -45619,21 +45703,21 @@ var login_transformer_default = {
|
|
|
45619
45703
|
return `<WmLogin listener={fragment} eventSource={fragment?.Actions.loginAction} ${transformAttrs(element, context)} >`;
|
|
45620
45704
|
},
|
|
45621
45705
|
post: (element, context) => "</WmLogin>",
|
|
45622
|
-
imports: (element, context) =>
|
|
45706
|
+
imports: (element, context) => imports73
|
|
45623
45707
|
};
|
|
45624
45708
|
|
|
45625
45709
|
// src/transpile/components/input/calendar.transformer.ts
|
|
45626
|
-
var
|
|
45710
|
+
var imports74 = [
|
|
45627
45711
|
{ name: "WmCalendar", from: "@wavemaker-ai/react-runtime/components/input/calendar" }
|
|
45628
45712
|
];
|
|
45629
45713
|
var calendar_transformer_default = {
|
|
45630
45714
|
pre: (element, context) => `<WmCalendar listener={fragment} ${transformAttrs(element, context)}>`,
|
|
45631
45715
|
post: (element, context) => "</WmCalendar>",
|
|
45632
|
-
imports: (element, context) =>
|
|
45716
|
+
imports: (element, context) => imports74
|
|
45633
45717
|
};
|
|
45634
45718
|
|
|
45635
45719
|
// src/transpile/components/advanced/marquee.transformer.ts
|
|
45636
|
-
var
|
|
45720
|
+
var imports75 = [
|
|
45637
45721
|
{
|
|
45638
45722
|
name: "WmMarquee",
|
|
45639
45723
|
from: "@wavemaker-ai/react-runtime/components/advanced/marquee"
|
|
@@ -45642,11 +45726,11 @@ var imports84 = [
|
|
|
45642
45726
|
var marquee_transformer_default = {
|
|
45643
45727
|
pre: (element, context) => `<WmMarquee ${transformAttrs(element, context)}>`,
|
|
45644
45728
|
post: (element, context) => "</WmMarquee>",
|
|
45645
|
-
imports: (element, context) =>
|
|
45729
|
+
imports: (element, context) => imports75
|
|
45646
45730
|
};
|
|
45647
45731
|
|
|
45648
45732
|
// src/transpile/components/advanced/carousel.transformer.ts
|
|
45649
|
-
var
|
|
45733
|
+
var imports76 = [
|
|
45650
45734
|
{
|
|
45651
45735
|
name: "WmCarousel",
|
|
45652
45736
|
from: "@wavemaker-ai/react-runtime/components/advanced/carousel"
|
|
@@ -45686,7 +45770,7 @@ var carousel_transformer_default = {
|
|
|
45686
45770
|
}
|
|
45687
45771
|
return "</WmCarousel>";
|
|
45688
45772
|
},
|
|
45689
|
-
imports: (element, context) =>
|
|
45773
|
+
imports: (element, context) => imports76,
|
|
45690
45774
|
createComponent: (element, context) => {
|
|
45691
45775
|
if (!context.data.listCount) {
|
|
45692
45776
|
context.props = context.get("old_props") || [];
|
|
@@ -45698,7 +45782,7 @@ var carousel_transformer_default = {
|
|
|
45698
45782
|
};
|
|
45699
45783
|
|
|
45700
45784
|
// src/transpile/components/advanced/carousel-template.transformer.ts
|
|
45701
|
-
var
|
|
45785
|
+
var imports77 = [
|
|
45702
45786
|
{
|
|
45703
45787
|
name: "WmCarouselTemplate",
|
|
45704
45788
|
from: "@wavemaker-ai/react-runtime/components/advanced/carousel/template"
|
|
@@ -45707,21 +45791,21 @@ var imports86 = [
|
|
|
45707
45791
|
var carousel_template_transformer_default = {
|
|
45708
45792
|
pre: (element, context) => `<WmCarouselTemplate ${transformAttrs(element, context)}>`,
|
|
45709
45793
|
post: (element, context) => "</WmCarouselTemplate>",
|
|
45710
|
-
imports: (element, context) =>
|
|
45794
|
+
imports: (element, context) => imports77
|
|
45711
45795
|
};
|
|
45712
45796
|
|
|
45713
45797
|
// src/transpile/components/chart/chart.transformer.ts
|
|
45714
|
-
var
|
|
45798
|
+
var imports78 = [
|
|
45715
45799
|
{ name: "WmChart", from: "@wavemaker-ai/react-runtime/components/chart" }
|
|
45716
45800
|
];
|
|
45717
45801
|
var chart_transformer_default = {
|
|
45718
45802
|
pre: (element, context) => `<WmChart listener={fragment} ${transformAttrs(element, context)} >`,
|
|
45719
45803
|
post: (element, context) => "</WmChart>",
|
|
45720
|
-
imports: (element, context) =>
|
|
45804
|
+
imports: (element, context) => imports78
|
|
45721
45805
|
};
|
|
45722
45806
|
|
|
45723
45807
|
// src/transpile/components/input/chips.transformer.ts
|
|
45724
|
-
var
|
|
45808
|
+
var imports79 = [
|
|
45725
45809
|
{ name: "WmChips", from: "@wavemaker-ai/react-runtime/components/input/chips" }
|
|
45726
45810
|
];
|
|
45727
45811
|
var chips_transformer_default = {
|
|
@@ -45735,66 +45819,54 @@ var chips_transformer_default = {
|
|
|
45735
45819
|
return `<WmChips listener={fragment} ${isFormField ? " {...$formField}" : ""} ${getDisplayExpression2 ? `displayexpression=${getDisplayExpression2}` : ""} ${extractDatasetInfo(element)} ${transformAttrs(element, context)}>`;
|
|
45736
45820
|
},
|
|
45737
45821
|
post: (element, context) => "</WmChips>",
|
|
45738
|
-
imports: (element, context) =>
|
|
45822
|
+
imports: (element, context) => imports79
|
|
45739
45823
|
};
|
|
45740
45824
|
|
|
45741
45825
|
// src/transpile/components/data/card/card.transformer.ts
|
|
45742
|
-
var
|
|
45826
|
+
var imports80 = [
|
|
45743
45827
|
{ name: "WmCard", from: "@wavemaker-ai/react-runtime/components/data/card" }
|
|
45744
45828
|
];
|
|
45745
45829
|
var card_transformer_default = {
|
|
45746
45830
|
pre: (element, context) => `<WmCard ${transformAttrs(element, context)} listener={fragment} cardItem={typeof $item !== "undefined" ? $item : {}}>`,
|
|
45747
45831
|
post: (element, context) => "</WmCard>",
|
|
45748
|
-
imports: (element, context) =>
|
|
45832
|
+
imports: (element, context) => imports80
|
|
45749
45833
|
};
|
|
45750
45834
|
|
|
45751
45835
|
// src/transpile/components/data/card/card-content.transformer.ts
|
|
45752
|
-
var
|
|
45836
|
+
var imports81 = [
|
|
45753
45837
|
{ name: "WmCardContent", from: "@wavemaker-ai/react-runtime/components/data/card/card-content" }
|
|
45754
45838
|
];
|
|
45755
45839
|
var card_content_transformer_default = {
|
|
45756
45840
|
pre: (element, context) => {
|
|
45757
|
-
const
|
|
45758
|
-
|
|
45759
|
-
let partial2 = partial_content_transformer_default.pre(element, context) || "";
|
|
45760
|
-
if (partial2) {
|
|
45761
|
-
element.removeAttribute("name");
|
|
45762
|
-
partial2 = `renderPartial={(props:Record<string, any>, onLoad:()=>void) => (${partial2})}`;
|
|
45763
|
-
}
|
|
45764
|
-
return `<WmCardContent ${transformAttrs(element, context)} ${partial2}>`;
|
|
45765
|
-
}
|
|
45766
|
-
let partial = partial_container_transformer_default.pre(element, context) || "";
|
|
45767
|
-
if (partial) {
|
|
45768
|
-
partial = `renderPartial={(props:Record<string, any>, onLoad:()=>void) => (${partial})}`;
|
|
45769
|
-
}
|
|
45770
|
-
return `<WmCardContent ${transformAttrs(element, context)} ${partial}>`;
|
|
45841
|
+
const { partialAttr } = withPartialContainer(element, context, { prop: "renderPartial" });
|
|
45842
|
+
return `<WmCardContent ${transformAttrs(element, context)} ${partialAttr}>`;
|
|
45771
45843
|
},
|
|
45772
45844
|
post: (element, context) => "</WmCardContent>",
|
|
45773
|
-
imports: (element, context) =>
|
|
45845
|
+
imports: (element, context) => imports81.concat(getPartialImports(element, context))
|
|
45774
45846
|
};
|
|
45775
45847
|
|
|
45776
45848
|
// src/transpile/components/data/card/card-footer.transformer.ts
|
|
45777
|
-
var
|
|
45849
|
+
var imports82 = [
|
|
45778
45850
|
{ name: "WmCardFooter", from: "@wavemaker-ai/react-runtime/components/data/card/card-footer" }
|
|
45779
45851
|
];
|
|
45780
45852
|
var card_footer_transformer_default = {
|
|
45781
45853
|
pre: (element, context) => `<WmCardFooter ${transformAttrs(element, context)}>`,
|
|
45782
45854
|
post: (element, context) => "</WmCardFooter>",
|
|
45783
|
-
imports: (element, context) =>
|
|
45855
|
+
imports: (element, context) => imports82
|
|
45784
45856
|
};
|
|
45785
45857
|
|
|
45786
45858
|
// src/transpile/components/data/card/card-actions.transformer.ts
|
|
45787
|
-
var
|
|
45859
|
+
var imports83 = [
|
|
45788
45860
|
{ name: "WmCardActions", from: "@wavemaker-ai/react-runtime/components/data/card/card-actions" }
|
|
45789
45861
|
];
|
|
45790
45862
|
var card_actions_transformer_default = {
|
|
45791
45863
|
pre: (element, context) => `<WmCardActions ${transformAttrs(element, context)}>`,
|
|
45792
45864
|
post: (element, context) => "</WmCardActions>",
|
|
45793
|
-
imports: (element, context) =>
|
|
45865
|
+
imports: (element, context) => imports83
|
|
45794
45866
|
};
|
|
45795
45867
|
|
|
45796
45868
|
// src/transpile/components/basic/tree.transformer.ts
|
|
45797
|
-
var
|
|
45869
|
+
var imports84 = [
|
|
45798
45870
|
{
|
|
45799
45871
|
name: "WmTree",
|
|
45800
45872
|
from: "@wavemaker-ai/react-runtime/components/basic/tree"
|
|
@@ -45803,11 +45875,11 @@ var imports93 = [
|
|
|
45803
45875
|
var tree_transformer_default = {
|
|
45804
45876
|
pre: (element, context) => `<WmTree listener={fragment} ${transformAttrs(element, context)}>`,
|
|
45805
45877
|
post: (element, context) => "</WmTree>",
|
|
45806
|
-
imports: (element, context) =>
|
|
45878
|
+
imports: (element, context) => imports84
|
|
45807
45879
|
};
|
|
45808
45880
|
|
|
45809
45881
|
// src/transpile/components/container/wizard.transformer.ts
|
|
45810
|
-
var
|
|
45882
|
+
var imports85 = [
|
|
45811
45883
|
{ name: "WmWizard", from: "@wavemaker-ai/react-runtime/components/container/wizard" }
|
|
45812
45884
|
];
|
|
45813
45885
|
var wizard_transformer_default = {
|
|
@@ -45874,7 +45946,7 @@ var wizard_transformer_default = {
|
|
|
45874
45946
|
}
|
|
45875
45947
|
return "</WmWizard>";
|
|
45876
45948
|
},
|
|
45877
|
-
imports: (element, context) =>
|
|
45949
|
+
imports: (element, context) => imports85,
|
|
45878
45950
|
createComponent: (element, context) => {
|
|
45879
45951
|
if (!context.data.listCount) {
|
|
45880
45952
|
context.props = context.get("old_props") || [];
|
|
@@ -45886,7 +45958,7 @@ var wizard_transformer_default = {
|
|
|
45886
45958
|
};
|
|
45887
45959
|
|
|
45888
45960
|
// src/transpile/components/container/wizardstep.transformer.ts
|
|
45889
|
-
var
|
|
45961
|
+
var imports86 = [
|
|
45890
45962
|
{
|
|
45891
45963
|
name: "WmWizardstep",
|
|
45892
45964
|
from: "@wavemaker-ai/react-runtime/components/container/wizard/wizard-step"
|
|
@@ -45921,44 +45993,20 @@ function getNearestWizardType(element) {
|
|
|
45921
45993
|
}
|
|
45922
45994
|
var wizardstep_transformer_default = {
|
|
45923
45995
|
pre: (element, context) => {
|
|
45924
|
-
const
|
|
45925
|
-
if (isPreview) {
|
|
45926
|
-
let partial2 = partial_content_transformer_default.pre(element, context) || "";
|
|
45927
|
-
if (partial2) {
|
|
45928
|
-
element.removeAttribute("name");
|
|
45929
|
-
partial2 = `render={(props:Record<string, any>, onLoad:()=>void) => (${partial2})}`;
|
|
45930
|
-
return `<WmWizardstep ${transformAttrs(element, context)} ${partial2}>`;
|
|
45931
|
-
}
|
|
45932
|
-
if (element.childNodes && element.childNodes.length > 0) {
|
|
45933
|
-
return `<WmWizardstep ${transformAttrs(element, context)}
|
|
45934
|
-
render={(props:Record<string, any>, onLoad:()=>void) => (<>`;
|
|
45935
|
-
}
|
|
45936
|
-
return `<WmWizardstep ${transformAttrs(element, context)} >`;
|
|
45937
|
-
}
|
|
45938
|
-
let partial = partial_container_transformer_default.pre(element, context) || "";
|
|
45939
|
-
if (partial) {
|
|
45940
|
-
partial = `render={(props:Record<string, any>, onLoad:()=>void) => (${partial})}`;
|
|
45941
|
-
}
|
|
45996
|
+
const { partialAttr } = withPartialContainer(element, context, { prop: "render" });
|
|
45942
45997
|
const onNext = getOnNext(element);
|
|
45943
45998
|
const onPrev = getOnPrev(element);
|
|
45944
45999
|
element.removeAttribute("on-next");
|
|
45945
46000
|
element.removeAttribute("on-prev");
|
|
45946
46001
|
const type = getNearestWizardType(element);
|
|
45947
|
-
if ((type && type == "dynamic" || element.childNodes && element.childNodes.length > 0) && !
|
|
46002
|
+
if ((type && type == "dynamic" || element.childNodes && element.childNodes.length > 0) && !partialAttr) {
|
|
45948
46003
|
return `<WmWizardstep ${transformAttrs(element, context)}
|
|
45949
46004
|
${onNext ? `onNext={${onNext}}` : ""} ${onPrev ? `onPrev={${onPrev}}` : ""} render={(props:Record<string, any>, onLoad:()=>void) => (<>`;
|
|
45950
46005
|
}
|
|
45951
46006
|
return `<WmWizardstep ${transformAttrs(element, context)}
|
|
45952
|
-
${onNext ? `onNext={${onNext}}` : ""} ${onPrev ? `onPrev={${onPrev}}` : ""} ${
|
|
46007
|
+
${onNext ? `onNext={${onNext}}` : ""} ${onPrev ? `onPrev={${onPrev}}` : ""} ${partialAttr} >`;
|
|
45953
46008
|
},
|
|
45954
46009
|
post: (element, context) => {
|
|
45955
|
-
const isPreview = context.get("preview") === true;
|
|
45956
|
-
if (isPreview) {
|
|
45957
|
-
const hasPartial2 = !!element.getAttribute("content");
|
|
45958
|
-
if (hasPartial2) return "/>";
|
|
45959
|
-
if (element.childNodes && element.childNodes.length > 0) return " </>)}/>";
|
|
45960
|
-
return "</WmWizardstep>";
|
|
45961
|
-
}
|
|
45962
46010
|
const type = getNearestWizardType(element);
|
|
45963
46011
|
const hasPartial = !!element.getAttribute("content");
|
|
45964
46012
|
if ((type && type == "dynamic" || element.childNodes && element.childNodes.length > 0) && !hasPartial) {
|
|
@@ -45966,11 +46014,11 @@ var wizardstep_transformer_default = {
|
|
|
45966
46014
|
}
|
|
45967
46015
|
return "</WmWizardstep>";
|
|
45968
46016
|
},
|
|
45969
|
-
imports: (element, context) =>
|
|
46017
|
+
imports: (element, context) => imports86
|
|
45970
46018
|
};
|
|
45971
46019
|
|
|
45972
46020
|
// src/transpile/components/container/wizardaction.transformer.ts
|
|
45973
|
-
var
|
|
46021
|
+
var imports87 = [
|
|
45974
46022
|
{
|
|
45975
46023
|
name: "WmWizardAction",
|
|
45976
46024
|
from: "@wavemaker-ai/react-runtime/components/container/wizard/wizard-action"
|
|
@@ -46075,11 +46123,11 @@ renderActions={(actions: any) => (<>`;
|
|
|
46075
46123
|
)}
|
|
46076
46124
|
>
|
|
46077
46125
|
</WmWizardAction>`,
|
|
46078
|
-
imports: (element, context) =>
|
|
46126
|
+
imports: (element, context) => imports87
|
|
46079
46127
|
};
|
|
46080
46128
|
|
|
46081
46129
|
// src/transpile/components/basic/message.transformer.ts
|
|
46082
|
-
var
|
|
46130
|
+
var imports88 = [
|
|
46083
46131
|
{
|
|
46084
46132
|
name: "WmMessage",
|
|
46085
46133
|
from: "@wavemaker-ai/react-runtime/components/basic/message"
|
|
@@ -46088,48 +46136,14 @@ var imports97 = [
|
|
|
46088
46136
|
var message_transformer_default = {
|
|
46089
46137
|
pre: (element, context) => `<WmMessage ${transformAttrs(element, context)}>`,
|
|
46090
46138
|
post: (element, context) => "</WmMessage>",
|
|
46091
|
-
imports: (element, context) =>
|
|
46139
|
+
imports: (element, context) => imports88
|
|
46092
46140
|
};
|
|
46093
46141
|
|
|
46094
|
-
// src/transpile/components/data/
|
|
46142
|
+
// src/transpile/components/data/live-form-shared.ts
|
|
46095
46143
|
var import_lodash9 = __toESM(require_lodash());
|
|
46096
|
-
var imports98 = [
|
|
46097
|
-
{ name: "WmLiveForm", from: "@wavemaker-ai/react-runtime/components/data/live-form" }
|
|
46098
|
-
];
|
|
46099
46144
|
var getDataSetExpr = (element, bindExpr) => {
|
|
46100
46145
|
return element.getAttribute("isLogin") ? "" : `${bindExpr}[widget.props.name] = newVal;`;
|
|
46101
46146
|
};
|
|
46102
|
-
var getOnChangeExpr3 = (element) => {
|
|
46103
|
-
var _a;
|
|
46104
|
-
const formDataSet = ((_a = element.getAttribute("dataset")) == null ? void 0 : _a.split(":")) || [];
|
|
46105
|
-
let bindExpr = (formDataSet == null ? void 0 : formDataSet.length) > 1 ? formDataSet[1] : null;
|
|
46106
|
-
if (!bindExpr || (bindExpr == null ? void 0 : bindExpr.includes("Widgets"))) {
|
|
46107
|
-
return "";
|
|
46108
|
-
}
|
|
46109
|
-
let currentNode = element.parentNode;
|
|
46110
|
-
const variableArr = bindExpr.match(/fragment\.Variables\??\.[^.?]+/g);
|
|
46111
|
-
const variableName = variableArr && variableArr.length ? variableArr[0] : null;
|
|
46112
|
-
while (currentNode) {
|
|
46113
|
-
if (currentNode.rawTagName === "wm-liveform") {
|
|
46114
|
-
element.setAttribute("parentForm", currentNode.getAttribute("name") || "");
|
|
46115
|
-
element.setAttribute("childdatasetnode", element.getAttribute("name") || "");
|
|
46116
|
-
break;
|
|
46117
|
-
} else if (currentNode.rawTagName === "wm-prefab" || currentNode.rawTagName === "wm-prefab-container") {
|
|
46118
|
-
const prefabParentForm = currentNode.getAttribute("parentForm");
|
|
46119
|
-
if (prefabParentForm) {
|
|
46120
|
-
element.setAttribute("parentForm", prefabParentForm);
|
|
46121
|
-
}
|
|
46122
|
-
}
|
|
46123
|
-
currentNode = currentNode.parentNode;
|
|
46124
|
-
}
|
|
46125
|
-
return `
|
|
46126
|
-
($event, widget, newVal, oldVal) => {
|
|
46127
|
-
if(${variableName}?.twoWayBinding && newVal !== oldVal) {
|
|
46128
|
-
${bindExpr !== null ? getDataSetExpr(element, bindExpr) : ""}
|
|
46129
|
-
}
|
|
46130
|
-
}
|
|
46131
|
-
`;
|
|
46132
|
-
};
|
|
46133
46147
|
var getFormSubmitExpr2 = (element) => {
|
|
46134
46148
|
const dataset = element.getAttribute("dataset");
|
|
46135
46149
|
if (dataset) {
|
|
@@ -46169,23 +46183,54 @@ var getFormSuccessExpr = (element) => {
|
|
|
46169
46183
|
}
|
|
46170
46184
|
}
|
|
46171
46185
|
};
|
|
46172
|
-
var
|
|
46186
|
+
var getOnChangeExpr3 = (element, options) => {
|
|
46187
|
+
var _a;
|
|
46188
|
+
const formDataSet = ((_a = element.getAttribute("dataset")) == null ? void 0 : _a.split(":")) || [];
|
|
46189
|
+
let bindExpr = (formDataSet == null ? void 0 : formDataSet.length) > 1 ? formDataSet[1] : null;
|
|
46190
|
+
if (!bindExpr || (bindExpr == null ? void 0 : bindExpr.includes("Widgets"))) {
|
|
46191
|
+
return "";
|
|
46192
|
+
}
|
|
46193
|
+
let currentNode = element.parentNode;
|
|
46194
|
+
const variableArr = bindExpr.match(options.variableRegex);
|
|
46195
|
+
const variableName = variableArr && variableArr.length ? variableArr[0] : null;
|
|
46196
|
+
while (currentNode) {
|
|
46197
|
+
if (currentNode.rawTagName === "wm-liveform") {
|
|
46198
|
+
element.setAttribute("parentForm", currentNode.getAttribute("name") || "");
|
|
46199
|
+
element.setAttribute("childdatasetnode", element.getAttribute("name") || "");
|
|
46200
|
+
break;
|
|
46201
|
+
} else if ((currentNode.rawTagName === "wm-prefab" || currentNode.rawTagName === "wm-prefab-container")) {
|
|
46202
|
+
const prefabParentForm = currentNode.getAttribute("parentForm");
|
|
46203
|
+
if (prefabParentForm) {
|
|
46204
|
+
element.setAttribute("parentForm", prefabParentForm);
|
|
46205
|
+
}
|
|
46206
|
+
}
|
|
46207
|
+
currentNode = currentNode.parentNode;
|
|
46208
|
+
}
|
|
46209
|
+
return `
|
|
46210
|
+
($event, widget, newVal, oldVal) => {
|
|
46211
|
+
if(${variableName}?.twoWayBinding && newVal !== oldVal) {
|
|
46212
|
+
${bindExpr !== null ? getDataSetExpr(element, bindExpr) : ""}
|
|
46213
|
+
}
|
|
46214
|
+
}
|
|
46215
|
+
`;
|
|
46216
|
+
};
|
|
46217
|
+
var pluckFormActionNodes2 = (element, actionTags, actions = []) => {
|
|
46173
46218
|
if (element.childNodes.length) {
|
|
46174
46219
|
(0, import_lodash9.forEach)(element.childNodes, (n) => {
|
|
46175
46220
|
if (isHTMLElement(n) && n.rawTagName === "wm-form") {
|
|
46176
46221
|
return;
|
|
46177
|
-
} else if (isHTMLElement(n) && n.rawTagName
|
|
46222
|
+
} else if (isHTMLElement(n) && actionTags.includes(n.rawTagName)) {
|
|
46178
46223
|
actions.push(n);
|
|
46179
46224
|
n.remove();
|
|
46180
46225
|
} else {
|
|
46181
|
-
pluckFormActionNodes2(n, actions);
|
|
46226
|
+
pluckFormActionNodes2(n, actionTags, actions);
|
|
46182
46227
|
}
|
|
46183
46228
|
});
|
|
46184
46229
|
return actions;
|
|
46185
46230
|
}
|
|
46186
46231
|
};
|
|
46187
|
-
var setFormActions2 = (element, context) => {
|
|
46188
|
-
const formActions = pluckFormActionNodes2(element);
|
|
46232
|
+
var setFormActions2 = (element, context, actionTags) => {
|
|
46233
|
+
const formActions = pluckFormActionNodes2(element, actionTags);
|
|
46189
46234
|
const formFooter = parse5(`<wm-form-footer></wm-form-footer>`).firstChild;
|
|
46190
46235
|
formActions.forEach((formAction) => {
|
|
46191
46236
|
formAction.setAttribute("formKey", element.attrs["name"]);
|
|
@@ -46200,9 +46245,16 @@ var setFormActions2 = (element, context) => {
|
|
|
46200
46245
|
formBody.childNodes.push(formFooter);
|
|
46201
46246
|
}
|
|
46202
46247
|
};
|
|
46248
|
+
|
|
46249
|
+
// src/transpile/components/data/liveform.transformer.ts
|
|
46250
|
+
var imports89 = [
|
|
46251
|
+
{ name: "WmLiveForm", from: "@wavemaker-ai/react-runtime/components/data/live-form" }
|
|
46252
|
+
];
|
|
46253
|
+
var FORM_ACTION_TAGS = ["wm-form-action"];
|
|
46203
46254
|
var liveform_transformer_default = {
|
|
46204
46255
|
pre: (element, context) => {
|
|
46205
|
-
const onChange = getOnChangeExpr3(element
|
|
46256
|
+
const onChange = getOnChangeExpr3(element, {
|
|
46257
|
+
variableRegex: /fragment\.Variables\??\.[^.?]+/g});
|
|
46206
46258
|
const formSubmit = getFormSubmitExpr2(element);
|
|
46207
46259
|
const formSuccess = getFormSuccessExpr(element);
|
|
46208
46260
|
const datasetAttr = element.getAttribute("dataset");
|
|
@@ -46214,7 +46266,7 @@ var liveform_transformer_default = {
|
|
|
46214
46266
|
element.setAttribute("datasource", `{fragment?.Variables?.${variableName}}`);
|
|
46215
46267
|
}
|
|
46216
46268
|
}
|
|
46217
|
-
setFormActions2(element);
|
|
46269
|
+
setFormActions2(element, context, FORM_ACTION_TAGS);
|
|
46218
46270
|
return `<WmLiveForm listener={fragment} ${transformAttrs(element, context)}
|
|
46219
46271
|
${onChange ? `onChange={${onChange}}` : ""}
|
|
46220
46272
|
${formSuccess ? `formSuccess={${formSuccess}}` : ""}
|
|
@@ -46222,63 +46274,11 @@ var liveform_transformer_default = {
|
|
|
46222
46274
|
${datasourceAttr ? `datasource={${datasourceAttr}}` : ""}>`;
|
|
46223
46275
|
},
|
|
46224
46276
|
post: (element, context) => `</WmLiveForm>`,
|
|
46225
|
-
imports: (element, context) =>
|
|
46277
|
+
imports: (element, context) => imports89
|
|
46226
46278
|
};
|
|
46227
46279
|
|
|
46228
|
-
// src/transpile/components/data/table/utils.ts
|
|
46229
|
-
function findNearestElement(element, tagName) {
|
|
46230
|
-
var _a, _b;
|
|
46231
|
-
let current = element.parentNode;
|
|
46232
|
-
const target = tagName.toLowerCase();
|
|
46233
|
-
while (current) {
|
|
46234
|
-
if (((_a = current.tagName) == null ? void 0 : _a.toLowerCase()) === target) {
|
|
46235
|
-
return (_b = current.getAttribute("name")) != null ? _b : void 0;
|
|
46236
|
-
}
|
|
46237
|
-
current = current.parentNode;
|
|
46238
|
-
}
|
|
46239
|
-
return void 0;
|
|
46240
|
-
}
|
|
46241
|
-
function convertActionToClickHandler(actionAttr, tableName, liveTableName) {
|
|
46242
|
-
const statements = actionAttr.split(";").map((s) => s.trim()).filter(Boolean);
|
|
46243
|
-
const converted = statements.map((statement) => {
|
|
46244
|
-
statement = convertHyphenatedPropsToBracketNotation(statement);
|
|
46245
|
-
let cleaned = statement.replace(/\$event/g, "event");
|
|
46246
|
-
if (cleaned.startsWith("event.")) return cleaned;
|
|
46247
|
-
if (cleaned.startsWith("Actions") || cleaned.startsWith("Variables") || cleaned.startsWith("Widgets")) {
|
|
46248
|
-
return `fragment.${cleaned}`;
|
|
46249
|
-
}
|
|
46250
|
-
if (cleaned.includes("(")) {
|
|
46251
|
-
const funcName = cleaned.split("(")[0];
|
|
46252
|
-
if (tableName && funcName.startsWith(`${tableName}_`)) {
|
|
46253
|
-
return `fragment.${cleaned}`;
|
|
46254
|
-
}
|
|
46255
|
-
if (cleaned.includes("(event)")) {
|
|
46256
|
-
cleaned = cleaned.replace("(event)", "(event, widget, row)");
|
|
46257
|
-
}
|
|
46258
|
-
if (liveTableName && (funcName.endsWith("addNewRow") || funcName.endsWith("editRow"))) {
|
|
46259
|
-
return `fragment.Widgets.${liveTableName}.${cleaned}`;
|
|
46260
|
-
}
|
|
46261
|
-
return tableName ? `fragment.Widgets.${tableName}.${cleaned}` : `fragment.${cleaned}`;
|
|
46262
|
-
}
|
|
46263
|
-
return `fragment.${cleaned}`;
|
|
46264
|
-
});
|
|
46265
|
-
return `onClick={(event, widget, row) => {
|
|
46266
|
-
${converted.join("\n ")}
|
|
46267
|
-
}}`;
|
|
46268
|
-
}
|
|
46269
|
-
function transformTableColumnClassExpression(expression) {
|
|
46270
|
-
if (!expression) return "";
|
|
46271
|
-
let transformed = expression.replace(/fragment\??\.row/g, "rowData");
|
|
46272
|
-
transformed = transformed.replace(/\brow\./g, "rowData.");
|
|
46273
|
-
transformed = transformed.replace(/\brow\[/g, "rowData[");
|
|
46274
|
-
transformed = addOptionalChaining(transformed);
|
|
46275
|
-
transformed = transformed.replace(/(\w+)\?\.\s*\(/g, "$1(");
|
|
46276
|
-
transformed = transformed.replace(/"([^"]*)"/g, "'$1'");
|
|
46277
|
-
return transformed;
|
|
46278
|
-
}
|
|
46279
|
-
|
|
46280
46280
|
// src/transpile/components/data/table/table-column.transformer.ts
|
|
46281
|
-
var
|
|
46281
|
+
var imports90 = [
|
|
46282
46282
|
{ name: "WmTableColumn", from: "@wavemaker-ai/react-runtime/components/data/table/table-column" }
|
|
46283
46283
|
];
|
|
46284
46284
|
function transformColAttr(element) {
|
|
@@ -46332,6 +46332,7 @@ var table_column_transformer_default = {
|
|
|
46332
46332
|
updatedElement.setAttribute("class", combinedClass);
|
|
46333
46333
|
}
|
|
46334
46334
|
const template = element.childNodes.find((c) => isHTMLElement(c));
|
|
46335
|
+
const formatCellExp = getFormatCellExpression(updatedElement, context);
|
|
46335
46336
|
let customExp = null;
|
|
46336
46337
|
const textNodes = element.childNodes.filter((c) => c.nodeType === NodeType.TEXT_NODE);
|
|
46337
46338
|
for (const textNode of textNodes) {
|
|
@@ -46346,8 +46347,8 @@ var table_column_transformer_default = {
|
|
|
46346
46347
|
break;
|
|
46347
46348
|
}
|
|
46348
46349
|
}
|
|
46349
|
-
if (template || customExp) {
|
|
46350
|
-
context.
|
|
46350
|
+
if (template || customExp || formatCellExp) {
|
|
46351
|
+
context.set("isInsideTableColumn", true);
|
|
46351
46352
|
if (template) {
|
|
46352
46353
|
transformRepeatChildAttr(template, "fragment.row", "rowData");
|
|
46353
46354
|
const tableVarName = context.get("tableDatasetVariableName");
|
|
@@ -46357,9 +46358,10 @@ var table_column_transformer_default = {
|
|
|
46357
46358
|
}
|
|
46358
46359
|
}
|
|
46359
46360
|
const hasElementChildren = element.childNodes.some((c) => isHTMLElement(c));
|
|
46361
|
+
const cellContent = customExp || (formatCellExp ? `{${formatCellExp}}` : "");
|
|
46360
46362
|
return `<WmTableColumn listener={fragment} ${!rowOperations ? `editWidgetType="${editWidgetType}"` : ""} widgetType="${widgetType}" ${colClassAttr} ${transformAttrs(updatedElement, context)}
|
|
46361
46363
|
renderCellContent={(rowData:any , columnData : any) =>
|
|
46362
|
-
(<> ${
|
|
46364
|
+
(<> ${cellContent ? `${cellContent} </>)}` : ""} ${hasElementChildren ? "" : ">"}`;
|
|
46363
46365
|
}
|
|
46364
46366
|
return `<WmTableColumn listener={fragment} ${!rowOperations ? `editWidgetType="${editWidgetType}"` : ""} widgetType="${widgetType}" ${colClassAttr} ${transformAttrs(updatedElement, context)}>`;
|
|
46365
46367
|
},
|
|
@@ -46370,16 +46372,15 @@ var table_column_transformer_default = {
|
|
|
46370
46372
|
}
|
|
46371
46373
|
return "</WmTableColumn>";
|
|
46372
46374
|
},
|
|
46373
|
-
imports: (element, context) =>
|
|
46375
|
+
imports: (element, context) => imports90
|
|
46374
46376
|
};
|
|
46375
46377
|
|
|
46376
46378
|
// src/transpile/components/data/table/table-row.transformer.ts
|
|
46377
|
-
var
|
|
46379
|
+
var imports91 = [
|
|
46378
46380
|
{ name: "WmTableRow", from: "@wavemaker-ai/react-runtime/components/data/table/table-row" }
|
|
46379
46381
|
];
|
|
46380
46382
|
var table_row_transformer_default = {
|
|
46381
46383
|
pre: (element, context) => {
|
|
46382
|
-
const isPreview = context.get("preview") === true;
|
|
46383
46384
|
const content = element.getAttribute("content");
|
|
46384
46385
|
const widgetType = element.getAttribute("widget-type") || "button";
|
|
46385
46386
|
const displayName = element.getAttribute("display-name");
|
|
@@ -46389,29 +46390,24 @@ var table_row_transformer_default = {
|
|
|
46389
46390
|
}
|
|
46390
46391
|
element.removeAttribute("widget-type");
|
|
46391
46392
|
let partial = "";
|
|
46392
|
-
if (
|
|
46393
|
-
element.setAttribute("is-table-row", "true");
|
|
46394
|
-
let partial2 = partial_content_transformer_default.pre(element, context) || "";
|
|
46395
|
-
if (partial2) {
|
|
46396
|
-
element.removeAttribute("name");
|
|
46397
|
-
partial2 = `renderPartial={(props:Record<string, any>, onLoad:()=>void,currentItem:any) => (${partial2})}`;
|
|
46398
|
-
}
|
|
46399
|
-
element.removeAttribute("is-table-row");
|
|
46400
|
-
return `<WmTableRow listener={fragment} widgetType="${widgetType}" ${transformAttrs(element, context)} ${partial2}`;
|
|
46401
|
-
} else if (content) {
|
|
46393
|
+
if (content) {
|
|
46402
46394
|
element.setAttribute("is-table-row", "true");
|
|
46403
|
-
|
|
46404
|
-
|
|
46395
|
+
element.setAttribute("rowType", "expansion");
|
|
46396
|
+
const { partialAttr } = withPartialContainer(element, context, {
|
|
46397
|
+
prop: "renderPartial",
|
|
46398
|
+
extraParams: "currentItem:any"
|
|
46399
|
+
});
|
|
46400
|
+
partial = partialAttr;
|
|
46405
46401
|
element.removeAttribute("is-table-row");
|
|
46406
46402
|
}
|
|
46407
46403
|
return `<WmTableRow listener={fragment} widgetType="${widgetType}" ${transformAttrs(element, context)} ${partial}`;
|
|
46408
46404
|
},
|
|
46409
46405
|
post: (element, context) => "/>",
|
|
46410
|
-
imports: (element, context) =>
|
|
46406
|
+
imports: (element, context) => imports91.concat(getPartialImports(element, context))
|
|
46411
46407
|
};
|
|
46412
46408
|
|
|
46413
46409
|
// src/transpile/components/data/table/table-row-action.transformer.ts
|
|
46414
|
-
var
|
|
46410
|
+
var imports92 = [
|
|
46415
46411
|
{
|
|
46416
46412
|
name: "WmTableRowAction",
|
|
46417
46413
|
from: "@wavemaker-ai/react-runtime/components/data/table/table-row-action"
|
|
@@ -46437,11 +46433,11 @@ var table_row_action_transformer_default = {
|
|
|
46437
46433
|
return `<WmTableRowAction listener={fragment} widgettype="${widgetType}" ${onClickExpr} ${transformAttrs(element, context)}`;
|
|
46438
46434
|
},
|
|
46439
46435
|
post: (element, context) => "/>",
|
|
46440
|
-
imports: (element, context) =>
|
|
46436
|
+
imports: (element, context) => imports92
|
|
46441
46437
|
};
|
|
46442
46438
|
|
|
46443
46439
|
// src/transpile/components/data/table/table-action.transformer.ts
|
|
46444
|
-
var
|
|
46440
|
+
var imports93 = [
|
|
46445
46441
|
{ name: "WmTableAction", from: "@wavemaker-ai/react-runtime/components/data/table/table-action" }
|
|
46446
46442
|
];
|
|
46447
46443
|
var table_action_transformer_default = {
|
|
@@ -46462,11 +46458,11 @@ var table_action_transformer_default = {
|
|
|
46462
46458
|
return `<WmTableAction listener={fragment} ${onClickExpr} ${transformAttrs(element, context)}`;
|
|
46463
46459
|
},
|
|
46464
46460
|
post: (element, context) => "/>",
|
|
46465
|
-
imports: (element, context) =>
|
|
46461
|
+
imports: (element, context) => imports93
|
|
46466
46462
|
};
|
|
46467
46463
|
|
|
46468
46464
|
// src/transpile/components/data/table/table-group.transformer.ts
|
|
46469
|
-
var
|
|
46465
|
+
var imports94 = [
|
|
46470
46466
|
{
|
|
46471
46467
|
name: "WmTableGroup",
|
|
46472
46468
|
from: "@wavemaker-ai/react-runtime/components/data/table/table-group"
|
|
@@ -46475,11 +46471,11 @@ var imports103 = [
|
|
|
46475
46471
|
var table_group_transformer_default = {
|
|
46476
46472
|
pre: (element, context) => `<WmTableGroup ${transformAttrs(element, context)}>`,
|
|
46477
46473
|
post: (element, context) => "</WmTableGroup>",
|
|
46478
|
-
imports: (element, context) =>
|
|
46474
|
+
imports: (element, context) => imports94
|
|
46479
46475
|
};
|
|
46480
46476
|
|
|
46481
46477
|
// src/transpile/components/data/table/live-table.transformer.ts
|
|
46482
|
-
var
|
|
46478
|
+
var imports95 = [
|
|
46483
46479
|
{ name: "WmLiveTable", from: "@wavemaker-ai/react-runtime/components/data/table/live-table" }
|
|
46484
46480
|
];
|
|
46485
46481
|
var live_table_transformer_default = {
|
|
@@ -46487,11 +46483,11 @@ var live_table_transformer_default = {
|
|
|
46487
46483
|
return `<WmLiveTable listener={fragment} ${transformAttrs(element, context)}>`;
|
|
46488
46484
|
},
|
|
46489
46485
|
post: (element, context) => "</WmLiveTable>",
|
|
46490
|
-
imports: (element, context) =>
|
|
46486
|
+
imports: (element, context) => imports95
|
|
46491
46487
|
};
|
|
46492
46488
|
|
|
46493
46489
|
// src/transpile/components/data/table/table.transformer.ts
|
|
46494
|
-
var
|
|
46490
|
+
var imports96 = [
|
|
46495
46491
|
{ name: "WmTable", from: "@wavemaker-ai/react-runtime/components/data/table" }
|
|
46496
46492
|
];
|
|
46497
46493
|
var table_transformer_default = {
|
|
@@ -46499,8 +46495,10 @@ var table_transformer_default = {
|
|
|
46499
46495
|
const datasetAttr = element.getAttribute("dataset");
|
|
46500
46496
|
const datasourceAttr = element.getAttribute("datasource");
|
|
46501
46497
|
const binddatasetAttr = element.getAttribute("binddataset");
|
|
46502
|
-
if (datasetAttr && datasetAttr.startsWith("bind:fragment.Variables.") && datasetAttr.
|
|
46503
|
-
const match = datasetAttr.match(
|
|
46498
|
+
if (datasetAttr && datasetAttr.startsWith("bind:fragment.Variables.") && datasetAttr.includes(".dataSet")) {
|
|
46499
|
+
const match = datasetAttr.match(
|
|
46500
|
+
/^bind:fragment\.Variables\.([^.]+)\.dataSet(?=[^A-Za-z0-9_]|$)/
|
|
46501
|
+
);
|
|
46504
46502
|
if (match) {
|
|
46505
46503
|
const variableName = match[1];
|
|
46506
46504
|
context.set("tableDatasetVariableName", variableName);
|
|
@@ -46538,67 +46536,32 @@ var table_transformer_default = {
|
|
|
46538
46536
|
context.set("tableDatasetVariableName", void 0);
|
|
46539
46537
|
return "</WmTable>";
|
|
46540
46538
|
},
|
|
46541
|
-
imports: (element, context) =>
|
|
46539
|
+
imports: (element, context) => imports96
|
|
46542
46540
|
};
|
|
46543
46541
|
|
|
46544
46542
|
// src/transpile/components/data/livefilter.transformer.ts
|
|
46545
|
-
var
|
|
46546
|
-
var imports106 = [
|
|
46543
|
+
var imports97 = [
|
|
46547
46544
|
{ name: "WmLiveFilter", from: "@wavemaker-ai/react-runtime/components/data/live-filter" }
|
|
46548
46545
|
];
|
|
46549
|
-
var
|
|
46550
|
-
if (element.childNodes.length) {
|
|
46551
|
-
(0, import_lodash10.forEach)(element.childNodes, (n) => {
|
|
46552
|
-
if (isHTMLElement(n) && n.rawTagName === "wm-form") {
|
|
46553
|
-
return;
|
|
46554
|
-
} else if (isHTMLElement(n) && (n.rawTagName === "wm-form-action" || n.rawTagName === "wm-filter-action")) {
|
|
46555
|
-
actions.push(n);
|
|
46556
|
-
n.remove();
|
|
46557
|
-
} else {
|
|
46558
|
-
pluckFormActionNodes3(n, actions);
|
|
46559
|
-
}
|
|
46560
|
-
});
|
|
46561
|
-
return actions;
|
|
46562
|
-
}
|
|
46563
|
-
};
|
|
46564
|
-
var setFormActions3 = (element, context) => {
|
|
46565
|
-
const formActions = pluckFormActionNodes3(element);
|
|
46566
|
-
const formFooter = parse5(`<wm-form-footer></wm-form-footer>`).firstChild;
|
|
46567
|
-
formActions.forEach((formAction) => {
|
|
46568
|
-
formAction.setAttribute("formKey", element.attrs["name"]);
|
|
46569
|
-
formFooter.appendChild(formAction);
|
|
46570
|
-
});
|
|
46571
|
-
const container = parse5(`<wm-container class="form-elements"></wm-container>`).firstChild;
|
|
46572
|
-
const formBody = parse5(`<wm-form-body></wm-form-body>`).firstChild;
|
|
46573
|
-
formBody.childNodes.push(container);
|
|
46574
|
-
container.childNodes = element.childNodes;
|
|
46575
|
-
element.childNodes = [formBody];
|
|
46576
|
-
if (formActions.length) {
|
|
46577
|
-
formBody.childNodes.push(formFooter);
|
|
46578
|
-
}
|
|
46579
|
-
};
|
|
46546
|
+
var FILTER_ACTION_TAGS = ["wm-form-action", "wm-filter-action"];
|
|
46580
46547
|
var livefilter_transformer_default = {
|
|
46581
46548
|
pre: (element, context) => {
|
|
46582
46549
|
var _a;
|
|
46583
|
-
|
|
46550
|
+
setFormActions2(element, context, FILTER_ACTION_TAGS);
|
|
46584
46551
|
const dataSource = (_a = element.getAttribute("dataset")) == null ? void 0 : _a.split(".")[2];
|
|
46585
46552
|
return `<WmLiveFilter listener={fragment} dataSource="${dataSource}" ${transformAttrs(element, context)} >`;
|
|
46586
46553
|
},
|
|
46587
46554
|
post: (element, context) => `</WmLiveFilter>`,
|
|
46588
|
-
imports: (element, context) =>
|
|
46555
|
+
imports: (element, context) => imports97
|
|
46589
46556
|
};
|
|
46590
46557
|
|
|
46591
46558
|
// src/transpile/components/data/live-filter-field.transformer.ts
|
|
46592
|
-
var
|
|
46559
|
+
var imports98 = [
|
|
46593
46560
|
{
|
|
46594
46561
|
name: "WmLiveFilterField",
|
|
46595
46562
|
from: "@wavemaker-ai/react-runtime/components/data/form/form-field"
|
|
46596
46563
|
}
|
|
46597
46564
|
];
|
|
46598
|
-
var getAttribute2 = (element, attrName) => {
|
|
46599
|
-
const value = element.getAttribute(attrName);
|
|
46600
|
-
return value == null ? void 0 : value.replace(/"/g, """);
|
|
46601
|
-
};
|
|
46602
46565
|
var getStyleProps = (element) => {
|
|
46603
46566
|
const attributes = [
|
|
46604
46567
|
"fontsize",
|
|
@@ -46610,7 +46573,7 @@ var getStyleProps = (element) => {
|
|
|
46610
46573
|
"fontstyle"
|
|
46611
46574
|
];
|
|
46612
46575
|
return attributes.reduce((propsString, attr) => {
|
|
46613
|
-
const value =
|
|
46576
|
+
const value = getAttribute(element, attr);
|
|
46614
46577
|
if (value !== void 0) {
|
|
46615
46578
|
propsString += `${attr}=${value} `;
|
|
46616
46579
|
}
|
|
@@ -46618,14 +46581,14 @@ var getStyleProps = (element) => {
|
|
|
46618
46581
|
}, "");
|
|
46619
46582
|
};
|
|
46620
46583
|
var extractField2 = (element, context, filterElement) => {
|
|
46621
|
-
const widgetType =
|
|
46622
|
-
const widgetName =
|
|
46584
|
+
const widgetType = getAttribute(element, "widget") || "text";
|
|
46585
|
+
const widgetName = getAttribute(element, "key") || getAttribute(element, "name") || "text_filterWidget";
|
|
46623
46586
|
const isRange = element.getAttribute("is-range") === "true";
|
|
46624
46587
|
const result = getFilterWidgetTemplate(
|
|
46625
46588
|
widgetType,
|
|
46626
46589
|
widgetName,
|
|
46627
46590
|
element,
|
|
46628
|
-
|
|
46591
|
+
getAttribute(filterElement, "filterdata"),
|
|
46629
46592
|
false
|
|
46630
46593
|
);
|
|
46631
46594
|
if (widgetType === "number" && isRange) {
|
|
@@ -46633,7 +46596,7 @@ var extractField2 = (element, context, filterElement) => {
|
|
|
46633
46596
|
widgetType,
|
|
46634
46597
|
widgetName,
|
|
46635
46598
|
element,
|
|
46636
|
-
|
|
46599
|
+
getAttribute(filterElement, "filterdata"),
|
|
46637
46600
|
true
|
|
46638
46601
|
);
|
|
46639
46602
|
return {
|
|
@@ -46646,31 +46609,31 @@ var extractField2 = (element, context, filterElement) => {
|
|
|
46646
46609
|
var getFilterWidgetTemplate = (widgetType, widgetName, element, filterDataVariable, isMaxWidget = false) => {
|
|
46647
46610
|
var _a, _b;
|
|
46648
46611
|
widgetName = widgetName.replace(".", "_");
|
|
46649
|
-
const inputName = (_b = (_a =
|
|
46650
|
-
var labelMarkup = !isMaxWidget &&
|
|
46612
|
+
const inputName = (_b = (_a = getAttribute(element, "key")) == null ? void 0 : _a.split(".")) == null ? void 0 : _b.at(-1);
|
|
46613
|
+
var labelMarkup = !isMaxWidget && getAttribute(element, "displayname") ? `<wm-label
|
|
46651
46614
|
required="bind:$formField.required"
|
|
46652
46615
|
htmlFor="${inputName}"
|
|
46653
46616
|
caption="bind:$formField.displayname"
|
|
46654
46617
|
class="app-label control-label filterfield-label"
|
|
46655
46618
|
conditionalclass="bind:$formField.captionCls + ' ' + $formField.invalidCls"
|
|
46656
46619
|
name="${widgetName}_filterLabel"></wm-label>` : "";
|
|
46657
|
-
const onFocus =
|
|
46620
|
+
const onFocus = getAttribute(element, "on-focus");
|
|
46658
46621
|
if (onFocus) {
|
|
46659
46622
|
element.removeAttribute("on-focus");
|
|
46660
46623
|
}
|
|
46661
|
-
const onBlur =
|
|
46624
|
+
const onBlur = getAttribute(element, "on-blur");
|
|
46662
46625
|
if (onBlur) {
|
|
46663
46626
|
element.removeAttribute("on-blur");
|
|
46664
46627
|
}
|
|
46665
|
-
const onTap =
|
|
46628
|
+
const onTap = getAttribute(element, "on-tap");
|
|
46666
46629
|
if (onTap) {
|
|
46667
46630
|
element.removeAttribute("on-tap");
|
|
46668
46631
|
}
|
|
46669
|
-
const placeholder =
|
|
46632
|
+
const placeholder = getAttribute(element, "placeholder");
|
|
46670
46633
|
if (placeholder) {
|
|
46671
46634
|
element.removeAttribute("placeholder");
|
|
46672
46635
|
}
|
|
46673
|
-
const filterfieldName =
|
|
46636
|
+
const filterfieldName = getAttribute(element, "name");
|
|
46674
46637
|
const widgetNameSuffix = isMaxWidget ? "_maxWidget" : "";
|
|
46675
46638
|
const datavalueBinding = isMaxWidget ? "bind:$formField.maxDataValue || $formField.maxdefaultvalue" : "bind:$formField.datavalue || $formField.defaultvalue";
|
|
46676
46639
|
const isMaxWidgetProp = isMaxWidget ? "isMaxWidget={true}" : "";
|
|
@@ -46696,6 +46659,7 @@ var getFilterWidgetTemplate = (widgetType, widgetName, element, filterDataVariab
|
|
|
46696
46659
|
};
|
|
46697
46660
|
};
|
|
46698
46661
|
var getWidgetMarkup2 = (widgetType, widgetName, commonFields, element) => {
|
|
46662
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
46699
46663
|
let tmpl = "";
|
|
46700
46664
|
const getDisplayExpr = element.getAttribute("displayexpression") || element.getAttribute("displaylabel");
|
|
46701
46665
|
const displayExp = getDisplayExpr ? `displayexpression='${getDisplayExpr.replace(/'/g, "'")}'` : "";
|
|
@@ -46708,20 +46672,20 @@ var getWidgetMarkup2 = (widgetType, widgetName, commonFields, element) => {
|
|
|
46708
46672
|
currentNode = currentNode.parentNode;
|
|
46709
46673
|
}
|
|
46710
46674
|
const isFloatingFilter = currentNode.getAttribute("captionposition") === "floating";
|
|
46711
|
-
const floatinglabel = filterFieldTags.includes(widgetType) && isFloatingFilter ? `floatinglabel=
|
|
46675
|
+
const floatinglabel = filterFieldTags.includes(widgetType) && isFloatingFilter ? `floatinglabel="${(_a = element.getAttribute("displayname")) == null ? void 0 : _a.replace(/"/g, """)}"` : "";
|
|
46712
46676
|
const dateTimeDialogTags = ["date", "time", "datetime"];
|
|
46713
46677
|
const isDateTimeTag = dateTimeDialogTags.includes(widgetType);
|
|
46714
|
-
const dateheadertitle = isDateTimeTag && element.getAttribute("dateheadertitle") ? `dateheadertitle=
|
|
46715
|
-
const dateconfirmationtitle = isDateTimeTag && element.getAttribute("dateconfirmationtitle") ? `dateconfirmationtitle=
|
|
46716
|
-
const datecanceltitle = isDateTimeTag && element.getAttribute("datecanceltitle") ? `datecanceltitle=
|
|
46717
|
-
const timeheadertitle = isDateTimeTag && element.getAttribute("timeheadertitle") ? `timeheadertitle=
|
|
46718
|
-
const timeconfirmationtitle = isDateTimeTag && element.getAttribute("timeconfirmationtitle") ? `timeconfirmationtitle=
|
|
46719
|
-
const timecanceltitle = isDateTimeTag && element.getAttribute("timecanceltitle") ? `timecanceltitle=
|
|
46720
|
-
const outputformat = element.getAttribute("outputformat") ? `outputformat=
|
|
46678
|
+
const dateheadertitle = isDateTimeTag && element.getAttribute("dateheadertitle") ? `dateheadertitle="${(_b = element.getAttribute("dateheadertitle")) == null ? void 0 : _b.replace(/"/g, """)}"` : "";
|
|
46679
|
+
const dateconfirmationtitle = isDateTimeTag && element.getAttribute("dateconfirmationtitle") ? `dateconfirmationtitle="${(_c = element.getAttribute("dateconfirmationtitle")) == null ? void 0 : _c.replace(/"/g, """)}"` : "";
|
|
46680
|
+
const datecanceltitle = isDateTimeTag && element.getAttribute("datecanceltitle") ? `datecanceltitle="${(_d = element.getAttribute("datecanceltitle")) == null ? void 0 : _d.replace(/"/g, """)}"` : "";
|
|
46681
|
+
const timeheadertitle = isDateTimeTag && element.getAttribute("timeheadertitle") ? `timeheadertitle="${(_e = element.getAttribute("timeheadertitle")) == null ? void 0 : _e.replace(/"/g, """)}"` : "";
|
|
46682
|
+
const timeconfirmationtitle = isDateTimeTag && element.getAttribute("timeconfirmationtitle") ? `timeconfirmationtitle="${(_f = element.getAttribute("timeconfirmationtitle")) == null ? void 0 : _f.replace(/"/g, """)}"` : "";
|
|
46683
|
+
const timecanceltitle = isDateTimeTag && element.getAttribute("timecanceltitle") ? `timecanceltitle="${(_g = element.getAttribute("timecanceltitle")) == null ? void 0 : _g.replace(/"/g, """)}"` : "";
|
|
46684
|
+
const outputformat = element.getAttribute("outputformat") ? `outputformat="${(_h = element.getAttribute("outputformat")) == null ? void 0 : _h.replace(/"/g, """)}"` : ``;
|
|
46721
46685
|
switch (widgetType) {
|
|
46722
46686
|
case "text":
|
|
46723
46687
|
case "password":
|
|
46724
|
-
let inputtype = widgetType === "password" ? "password" :
|
|
46688
|
+
let inputtype = widgetType === "password" ? "password" : getAttribute(element, "inputtype");
|
|
46725
46689
|
inputtype = inputtype ? `type=${inputtype}` : "";
|
|
46726
46690
|
tmpl = `<wm-text ${inputtype} ${commonFields}
|
|
46727
46691
|
updateon="bind:$formField.updateon"
|
|
@@ -46864,10 +46828,10 @@ var getWidgetMarkup2 = (widgetType, widgetName, commonFields, element) => {
|
|
|
46864
46828
|
></wm-slider>`;
|
|
46865
46829
|
break;
|
|
46866
46830
|
case "rating":
|
|
46867
|
-
let showcaptions =
|
|
46831
|
+
let showcaptions = getAttribute(element, "showcaptions");
|
|
46868
46832
|
showcaptions = showcaptions ? `showcaptions="bind:$formField.showcaptions"` : "";
|
|
46869
46833
|
tmpl += `<wm-rating ${commonFields} ${displayExp}
|
|
46870
|
-
${
|
|
46834
|
+
${getAttribute(element, "dataset") ? 'dataset="bind:$formField.dataset"' : ""}
|
|
46871
46835
|
displayfield="bind:$formField.displayfield || 'value'"
|
|
46872
46836
|
datafield="bind:$formField.datafield || 'key'"
|
|
46873
46837
|
${showcaptions}
|
|
@@ -46876,16 +46840,16 @@ var getWidgetMarkup2 = (widgetType, widgetName, commonFields, element) => {
|
|
|
46876
46840
|
break;
|
|
46877
46841
|
case "fileupload":
|
|
46878
46842
|
case "file":
|
|
46879
|
-
const onSelect =
|
|
46880
|
-
const onDelete =
|
|
46843
|
+
const onSelect = getAttribute(element, "on-select");
|
|
46844
|
+
const onDelete = getAttribute(element, "on-delete");
|
|
46881
46845
|
tmpl = `<wm-fileupload ${commonFields}
|
|
46882
46846
|
${onSelect ? 'on-select="onSelect"' : ""}
|
|
46883
46847
|
${onDelete ? 'on-delete="onDelete"' : ""}
|
|
46884
46848
|
></wm-fileupload>`;
|
|
46885
46849
|
break;
|
|
46886
46850
|
case "upload":
|
|
46887
|
-
const onSelectUpload =
|
|
46888
|
-
const onDeleteUpload =
|
|
46851
|
+
const onSelectUpload = getAttribute(element, "on-select");
|
|
46852
|
+
const onDeleteUpload = getAttribute(element, "on-delete");
|
|
46889
46853
|
tmpl = `<wm-upload ${commonFields}
|
|
46890
46854
|
${onSelectUpload ? 'on-select="onSelect"' : ""}
|
|
46891
46855
|
${onDeleteUpload ? 'on-delete="onDelete"' : ""}
|
|
@@ -46906,7 +46870,7 @@ var getWidgetMarkup2 = (widgetType, widgetName, commonFields, element) => {
|
|
|
46906
46870
|
};
|
|
46907
46871
|
var live_filter_field_transformer_default = {
|
|
46908
46872
|
pre: (element, context) => {
|
|
46909
|
-
const widgetType =
|
|
46873
|
+
const widgetType = getAttribute(element, "widget") || "text" /* TEXT */;
|
|
46910
46874
|
let currentNode = element.parentNode;
|
|
46911
46875
|
while (currentNode) {
|
|
46912
46876
|
if (currentNode.rawTagName === "wm-livefilter" || currentNode.getAttribute("type") === "dynamic") {
|
|
@@ -46989,12 +46953,12 @@ var live_filter_field_transformer_default = {
|
|
|
46989
46953
|
return `<WmLiveFilterField ${filterScope || ""} field="true" ${fieldcolumn ? `fieldcol="${fieldcolumn}"` : ""} ${transformAttrs(element, context)} renderFormFields={($formField) => (<>`;
|
|
46990
46954
|
},
|
|
46991
46955
|
post: (element, context) => "</>)}></WmLiveFilterField>",
|
|
46992
|
-
imports: (element, context) =>
|
|
46956
|
+
imports: (element, context) => imports98,
|
|
46993
46957
|
createComponent: (element, context) => createComponent2(element, context)
|
|
46994
46958
|
};
|
|
46995
46959
|
|
|
46996
46960
|
// src/transpile/components/data/form/dynamic-fields.transformer.ts
|
|
46997
|
-
var
|
|
46961
|
+
var imports99 = [
|
|
46998
46962
|
{
|
|
46999
46963
|
name: "WmDynamicFields",
|
|
47000
46964
|
from: "@wavemaker-ai/react-runtime/components/data/form/dynamic-fields"
|
|
@@ -47011,11 +46975,11 @@ var dynamic_fields_transformer_default = {
|
|
|
47011
46975
|
return `<WmDynamicFields listener={fragment} ${beforeRender ? `onBeforeRender={${beforeRender}}` : ""} ${transformAttrs(element, context)}`;
|
|
47012
46976
|
},
|
|
47013
46977
|
post: (element, context) => "/>",
|
|
47014
|
-
imports: (element, context) =>
|
|
46978
|
+
imports: (element, context) => imports99
|
|
47015
46979
|
};
|
|
47016
46980
|
|
|
47017
46981
|
// src/transpile/components/container/linear-layout/linear-layout.ts
|
|
47018
|
-
var
|
|
46982
|
+
var imports100 = [
|
|
47019
46983
|
{
|
|
47020
46984
|
name: "WmLinearlayout",
|
|
47021
46985
|
from: "@wavemaker-ai/react-runtime/components/container/linear-layout"
|
|
@@ -47024,11 +46988,11 @@ var imports109 = [
|
|
|
47024
46988
|
var linear_layout_default = {
|
|
47025
46989
|
pre: (element, context) => `<WmLinearlayout iswidget="false" ${transformAttrs(element, context)}>`,
|
|
47026
46990
|
post: (element, context) => "</WmLinearlayout>",
|
|
47027
|
-
imports: (element, context) =>
|
|
46991
|
+
imports: (element, context) => imports100
|
|
47028
46992
|
};
|
|
47029
46993
|
|
|
47030
46994
|
// src/transpile/components/container/linear-layout/linear-layout-item.ts
|
|
47031
|
-
var
|
|
46995
|
+
var imports101 = [
|
|
47032
46996
|
{
|
|
47033
46997
|
name: "WmLinearlayoutItem",
|
|
47034
46998
|
from: "@wavemaker-ai/react-runtime/components/container/linear-layout/linear-layout-item"
|
|
@@ -47037,7 +47001,7 @@ var imports110 = [
|
|
|
47037
47001
|
var linear_layout_item_default = {
|
|
47038
47002
|
pre: (element, context) => `<WmLinearlayoutItem iswidget="false" ${transformAttrs(element, context)}>`,
|
|
47039
47003
|
post: (element, context) => "</WmLinearlayoutItem>",
|
|
47040
|
-
imports: (element, context) =>
|
|
47004
|
+
imports: (element, context) => imports101
|
|
47041
47005
|
};
|
|
47042
47006
|
|
|
47043
47007
|
// src/transpile/components/wmx-component/wmx-component.transformer.ts
|
|
@@ -47194,17 +47158,17 @@ function ensureRegistered() {
|
|
|
47194
47158
|
}
|
|
47195
47159
|
function transpileVariableDefinitions(variables, appUrl, scope) {
|
|
47196
47160
|
ensureRegistered();
|
|
47197
|
-
const
|
|
47198
|
-
const transformed = Object.values(variables != null ? variables : {}).map((v) => variable_transformer_default(v, scope, appUrl,
|
|
47161
|
+
const imports102 = [];
|
|
47162
|
+
const transformed = Object.values(variables != null ? variables : {}).map((v) => variable_transformer_default(v, scope, appUrl, imports102)).filter((v) => !!v);
|
|
47199
47163
|
return {
|
|
47200
47164
|
variables: transformed.filter((v) => v.group === "variable"),
|
|
47201
47165
|
actions: transformed.filter((v) => v.group === "action"),
|
|
47202
|
-
imports:
|
|
47166
|
+
imports: imports102
|
|
47203
47167
|
};
|
|
47204
47168
|
}
|
|
47205
47169
|
|
|
47206
47170
|
// src/transpile/serialize-variables.ts
|
|
47207
|
-
var
|
|
47171
|
+
var import_lodash10 = __toESM(require_lodash());
|
|
47208
47172
|
var isEvalExpression = (val) => /^[^\.]+\.eval\(/.test(val);
|
|
47209
47173
|
var processMapMarker = (marker) => {
|
|
47210
47174
|
const match = marker.match(/^__MAP__(.+?)__STRUCTURE__(.+?)__PARENT__(.+?)__ENDMAP__$/);
|
|
@@ -47242,7 +47206,7 @@ var processMapMarker = (marker) => {
|
|
|
47242
47206
|
parts.push(`"${key}":${formatValue(overrideValue)}`);
|
|
47243
47207
|
}
|
|
47244
47208
|
} else {
|
|
47245
|
-
if ((0,
|
|
47209
|
+
if ((0, import_lodash10.isString)(overrideValue) && isEvalExpression(overrideValue)) {
|
|
47246
47210
|
const unwrapMatch = overrideValue.match(/\.eval\(\(\)\s*=>\s*(.+)\)$/);
|
|
47247
47211
|
if (unwrapMatch) {
|
|
47248
47212
|
parts.push(`"${key}":${unwrapMatch[1]}`);
|
|
@@ -47272,7 +47236,7 @@ var processMapMarker = (marker) => {
|
|
|
47272
47236
|
return `${parentValue}.${arrayProp}.map(item=>(${mapBody}))`;
|
|
47273
47237
|
};
|
|
47274
47238
|
var formatValue = (val) => {
|
|
47275
|
-
if ((0,
|
|
47239
|
+
if ((0, import_lodash10.isString)(val)) {
|
|
47276
47240
|
if (val.startsWith("__MAP__")) {
|
|
47277
47241
|
return processMapMarker(val);
|
|
47278
47242
|
}
|
|
@@ -47280,7 +47244,7 @@ var formatValue = (val) => {
|
|
|
47280
47244
|
return val;
|
|
47281
47245
|
}
|
|
47282
47246
|
return JSON.stringify(val);
|
|
47283
|
-
} else if ((0,
|
|
47247
|
+
} else if ((0, import_lodash10.isNumber)(val) || val === true || val === false || val === null) {
|
|
47284
47248
|
return String(val);
|
|
47285
47249
|
} else if (Array.isArray(val)) {
|
|
47286
47250
|
return JSON.stringify(val);
|
|
@@ -47330,10 +47294,10 @@ var stringifyObject = (obj) => {
|
|
|
47330
47294
|
parts.push(`"${key}":${scopeVar}.eval(() => ({${body}}))`);
|
|
47331
47295
|
} else {
|
|
47332
47296
|
const baseFormatted = formatValue(baseVal);
|
|
47333
|
-
const baseSpread = (0,
|
|
47297
|
+
const baseSpread = (0, import_lodash10.isString)(baseVal) && (baseVal.trim().startsWith("{") || baseVal.trim().startsWith("[")) ? `JSON.parse(${baseFormatted})` : baseFormatted;
|
|
47334
47298
|
let hasMapMarker = false;
|
|
47335
47299
|
for (const nVal of Object.values(nestedProps)) {
|
|
47336
|
-
if ((0,
|
|
47300
|
+
if ((0, import_lodash10.isString)(nVal) && nVal.startsWith("__MAP__")) {
|
|
47337
47301
|
hasMapMarker = true;
|
|
47338
47302
|
break;
|
|
47339
47303
|
}
|
|
@@ -47341,7 +47305,7 @@ var stringifyObject = (obj) => {
|
|
|
47341
47305
|
if (hasMapMarker) {
|
|
47342
47306
|
const processedProps = [`...${baseSpread}`];
|
|
47343
47307
|
for (const [nKey, nVal] of Object.entries(nestedProps)) {
|
|
47344
|
-
if ((0,
|
|
47308
|
+
if ((0, import_lodash10.isString)(nVal) && nVal.startsWith("__MAP__")) {
|
|
47345
47309
|
processedProps.push(`"${nKey}":${processMapMarker(nVal)}`);
|
|
47346
47310
|
} else {
|
|
47347
47311
|
processedProps.push(`"${nKey}":${formatValue(nVal)}`);
|
|
@@ -47444,12 +47408,12 @@ var stringifyModelParams = (input, scope) => {
|
|
|
47444
47408
|
var quoteIfString = (arg) => {
|
|
47445
47409
|
if (arg === "") return `"${arg}"`;
|
|
47446
47410
|
if (!isNaN(arg) || arg === "true" || arg === "false") return arg;
|
|
47447
|
-
if ((0,
|
|
47448
|
-
if ((0,
|
|
47411
|
+
if ((0, import_lodash10.isString)(arg) && (isEvalExpression(arg) || arg.trim().startsWith("() =>"))) return arg;
|
|
47412
|
+
if ((0, import_lodash10.isString)(arg) && !isEvalExpression(arg)) return JSON.stringify(arg);
|
|
47449
47413
|
return arg;
|
|
47450
47414
|
};
|
|
47451
47415
|
var quoteKeyIfHyphen = (str) => {
|
|
47452
|
-
if ((0,
|
|
47416
|
+
if ((0, import_lodash10.isString)(str) && str.includes("-")) return JSON.stringify(str);
|
|
47453
47417
|
return str;
|
|
47454
47418
|
};
|
|
47455
47419
|
|
|
@@ -47576,6 +47540,9 @@ function serializeVariableEntry(v, scope, isPrefabApp, isPrefabScope, prefabName
|
|
|
47576
47540
|
lines.push(` isStaticParams: ${stringify3(v.isStaticParams)},`);
|
|
47577
47541
|
lines.push(` saveInPhonegap: ${v.saveInPhonegap},`);
|
|
47578
47542
|
lines.push(` crudOperationId: '${v.crudOperationId}',`);
|
|
47543
|
+
if (v._id) {
|
|
47544
|
+
lines.push(` _id: '${v._id}',`);
|
|
47545
|
+
}
|
|
47579
47546
|
lines.push(` transformationRequired: ${v.transformationRequired},`);
|
|
47580
47547
|
if (isPrefabScope) {
|
|
47581
47548
|
lines.push(` baseUrl: ${scope}.baseUrl + '/prefabs/' + ${scope}.prefabname,`);
|
|
@@ -47725,8 +47692,15 @@ export default (${scope}:any) => {
|
|
|
47725
47692
|
`;
|
|
47726
47693
|
}
|
|
47727
47694
|
function transformMarkup(markup, options = { appUrl: "", prefabName: "", isPartOfPrefab: false }) {
|
|
47728
|
-
const { isPartOfPrefab = false, variables, appUrl, prefabName } = options;
|
|
47729
|
-
const transpiledOutput = transpileMarkup(
|
|
47695
|
+
const { isPartOfPrefab = false, variables, appUrl, prefabName, insideTableColumn } = options;
|
|
47696
|
+
const transpiledOutput = transpileMarkup(
|
|
47697
|
+
markup,
|
|
47698
|
+
isPartOfPrefab,
|
|
47699
|
+
void 0,
|
|
47700
|
+
variables,
|
|
47701
|
+
true,
|
|
47702
|
+
insideTableColumn
|
|
47703
|
+
);
|
|
47730
47704
|
const transpiledVars = transpileVariableDefinitions(variables, appUrl, "Page");
|
|
47731
47705
|
const variablesCode = serializeVariablesToCode(transpiledVars, "Page", {
|
|
47732
47706
|
isPrefabApp: isPartOfPrefab,
|