@cloudbase/cals 1.1.8-alpha.0 → 1.1.9
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/parser/cals/utils/block/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAqB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAKxG,OAAO,EAAE,eAAe,EAAsD,MAAM,+BAA+B,CAAC;AAOpH,OAAO,EAAmB,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAG3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,UAAU,aAAa;IACrB,SAAS,CAAC,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACtC;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAyD9F;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/parser/cals/utils/block/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAqB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAKxG,OAAO,EAAE,eAAe,EAAsD,MAAM,+BAA+B,CAAC;AAOpH,OAAO,EAAmB,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAG3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,UAAU,aAAa;IACrB,SAAS,CAAC,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACtC;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAyD9F;AAwJD,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,qBAAqB,GAAG;IAAE,QAAQ,EAAE,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAAC,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,EAClH,UAAU,EAAE,kBAAkB,EAAE,GAC/B,kBAAkB,EAAE,CAiBtB;AAED,UAAU,cAAc;IACtB,IAAI,EAAE,YAAY,CAAC;IACnB,aAAa,CAAC,EAAE;QACd,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;KAC5C,CAAC;CACH;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE;IAAE,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;CAAE,EAAE,IAAI,EAAE,cAAc,EAAE,gBA8E1G;AAED,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,qBAAqB,GAAG;IAAE,QAAQ,EAAE,eAAe,CAAA;CAAE,EAC1D,SAAS,EAAE,kBAAkB,OAiE9B;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,qBAAqB,EAAE,SAAS,KAAA,OA2B/E;AAaD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,OAAO,EAAE,YAAY,CAAC;CACvB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,GAAG,OAqE1E"}
|
|
@@ -135,9 +135,48 @@ function parseDirectivesCals(ctx, directives) {
|
|
|
135
135
|
}
|
|
136
136
|
function parseValueCals(ctx, value) {
|
|
137
137
|
var _a, _b;
|
|
138
|
+
function processExpression(ctx, value) {
|
|
139
|
+
const regex = /\$([\w.]+)\.dataset\.(state|params)\.([\w$]+)/gm;
|
|
140
|
+
const matches = value.match(regex) || [];
|
|
141
|
+
for (let i = 0; i < matches.length; i++) {
|
|
142
|
+
const match = matches[i];
|
|
143
|
+
const [_, scope, type, varName] = regex.exec(match);
|
|
144
|
+
let key = '';
|
|
145
|
+
switch (scope) {
|
|
146
|
+
case 'page':
|
|
147
|
+
case 'w.page': {
|
|
148
|
+
key = '$page';
|
|
149
|
+
break;
|
|
150
|
+
}
|
|
151
|
+
case 'app':
|
|
152
|
+
case 'w.app': {
|
|
153
|
+
key = '$app';
|
|
154
|
+
break;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
if (key && type && varName) {
|
|
158
|
+
if (!ctx.datasetMap[key]) {
|
|
159
|
+
ctx.datasetMap[key] = {};
|
|
160
|
+
}
|
|
161
|
+
ctx.datasetMap[key][`${type}.${varName}`] = true;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
let res;
|
|
138
166
|
try {
|
|
139
167
|
let parser = new expression_1.DynamicValueParser(value, { pageId: '$page' });
|
|
140
|
-
|
|
168
|
+
res = parser.parse();
|
|
169
|
+
}
|
|
170
|
+
catch (e) {
|
|
171
|
+
try {
|
|
172
|
+
processExpression(ctx, value);
|
|
173
|
+
}
|
|
174
|
+
catch (e) {
|
|
175
|
+
console.error(e);
|
|
176
|
+
}
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
try {
|
|
141
180
|
switch (res.type) {
|
|
142
181
|
case expression_1.PropBindType.params:
|
|
143
182
|
case expression_1.PropBindType.stateData: {
|
|
@@ -170,28 +209,7 @@ function parseValueCals(ctx, value) {
|
|
|
170
209
|
break;
|
|
171
210
|
}
|
|
172
211
|
case expression_1.PropBindType.expression: {
|
|
173
|
-
|
|
174
|
-
const matches = res.value.match(regex);
|
|
175
|
-
for (let i = 0; i < matches.length; i++) {
|
|
176
|
-
const match = matches[i];
|
|
177
|
-
const [scope, type, varName] = regex.exec(match);
|
|
178
|
-
let key = '';
|
|
179
|
-
switch (scope) {
|
|
180
|
-
case 'page':
|
|
181
|
-
case 'w.page': {
|
|
182
|
-
key = '$page';
|
|
183
|
-
break;
|
|
184
|
-
}
|
|
185
|
-
case 'app':
|
|
186
|
-
case 'w.app': {
|
|
187
|
-
key = '$app';
|
|
188
|
-
break;
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
if (key && type && varName) {
|
|
192
|
-
ctx.datasetMap[key][`${type}.${varName}`] = true;
|
|
193
|
-
}
|
|
194
|
-
}
|
|
212
|
+
processExpression(ctx, value);
|
|
195
213
|
}
|
|
196
214
|
}
|
|
197
215
|
}
|