@wavemaker/angular-app 11.14.2-1.6424 → 11.14.2-2.6435
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/dependencies/pipe-provider.cjs.js +96 -370
- package/dependencies/transpilation-web.cjs.js +48 -185
- package/dependency-report.html +1 -1
- package/npm-shrinkwrap.json +361 -330
- package/package-lock.json +361 -330
- package/package.json +5 -5
|
@@ -99707,11 +99707,11 @@ const getRowActionAttrs = attrs => {
|
|
|
99707
99707
|
return tmpl;
|
|
99708
99708
|
};
|
|
99709
99709
|
|
|
99710
|
-
const $RAF = window.requestAnimationFrame;
|
|
99710
|
+
const $RAF$1 = window.requestAnimationFrame;
|
|
99711
99711
|
const $RAFQueue = [];
|
|
99712
99712
|
const invokeLater = fn => {
|
|
99713
99713
|
if (!$RAFQueue.length) {
|
|
99714
|
-
$RAF(() => {
|
|
99714
|
+
$RAF$1(() => {
|
|
99715
99715
|
$RAFQueue.forEach(f => f());
|
|
99716
99716
|
$RAFQueue.length = 0;
|
|
99717
99717
|
});
|
|
@@ -100269,220 +100269,83 @@ const getFnForEventExpr = (expr) => {
|
|
|
100269
100269
|
return fnExecutor(expr, ExpressionType.Action);
|
|
100270
100270
|
};
|
|
100271
100271
|
|
|
100272
|
-
// Constants
|
|
100273
|
-
const WIDGET_ID_REGEX = /^(widget-[^_]+)/;
|
|
100274
|
-
const WIDGET_PROPERTY_REGEX = /^widget-[^_]+_(.+)$/;
|
|
100275
|
-
const ARRAY_INDEX_PLACEHOLDER = '[$i]';
|
|
100276
|
-
const ARRAY_INDEX_ZERO = '[0]';
|
|
100277
100272
|
const registry = new Map();
|
|
100278
100273
|
const watchIdGenerator = new IDGenerator('watch-id-');
|
|
100279
|
-
const FIRST_TIME_WATCH =
|
|
100280
|
-
|
|
100281
|
-
* Extracts widget ID from identifier (e.g., "widget-id23_eventsource" -> "widget-id23")
|
|
100282
|
-
*/
|
|
100283
|
-
const getWidgetId = (identifier) => {
|
|
100284
|
-
if (!identifier || typeof identifier !== 'string') {
|
|
100285
|
-
return null;
|
|
100286
|
-
}
|
|
100287
|
-
const match = identifier.match(WIDGET_ID_REGEX);
|
|
100288
|
-
return match ? match[1] : null;
|
|
100289
|
-
};
|
|
100290
|
-
/**
|
|
100291
|
-
* Extracts property name from identifier (e.g., "widget-id23_eventsource" -> "eventsource")
|
|
100292
|
-
*/
|
|
100293
|
-
const getPropertyName = (identifier) => {
|
|
100294
|
-
if (!identifier || typeof identifier !== 'string') {
|
|
100295
|
-
return identifier;
|
|
100296
|
-
}
|
|
100297
|
-
const match = identifier.match(WIDGET_PROPERTY_REGEX);
|
|
100298
|
-
return match ? match[1] : identifier;
|
|
100299
|
-
};
|
|
100300
|
-
/**
|
|
100301
|
-
* Array consumer wrapper for array-based expressions
|
|
100302
|
-
*/
|
|
100274
|
+
const FIRST_TIME_WATCH = {};
|
|
100275
|
+
Object.freeze(FIRST_TIME_WATCH);
|
|
100303
100276
|
const arrayConsumer = (listenerFn, restExpr, newVal, oldVal) => {
|
|
100304
|
-
|
|
100305
|
-
|
|
100306
|
-
|
|
100307
|
-
|
|
100308
|
-
|
|
100309
|
-
|
|
100310
|
-
|
|
100277
|
+
let data = newVal, formattedData;
|
|
100278
|
+
if (isArray(data)) {
|
|
100279
|
+
formattedData = data.map(function (datum) {
|
|
100280
|
+
return findValueOf(datum, restExpr);
|
|
100281
|
+
});
|
|
100282
|
+
// If resulting structure is an array of array, flatten it
|
|
100283
|
+
if (isArray(formattedData[0])) {
|
|
100284
|
+
formattedData = flatten$1(formattedData);
|
|
100285
|
+
}
|
|
100286
|
+
listenerFn(formattedData, oldVal);
|
|
100311
100287
|
}
|
|
100312
|
-
listenerFn(formattedData, oldVal);
|
|
100313
100288
|
};
|
|
100314
|
-
|
|
100315
|
-
|
|
100316
|
-
|
|
100317
|
-
|
|
100318
|
-
const regex = /\[\$i\]/g;
|
|
100289
|
+
const getUpdatedWatcInfo = (expr, acceptsArray, listener) => {
|
|
100290
|
+
// listener doesn't accept array
|
|
100291
|
+
// replace all `[$i]` with `[0]` and return the expression
|
|
100292
|
+
let regex = /\[\$i\]/g, $I = '[$i]', $0 = '[0]';
|
|
100319
100293
|
if (!acceptsArray) {
|
|
100320
100294
|
return {
|
|
100321
|
-
expr: expr.replace(regex,
|
|
100322
|
-
listener
|
|
100295
|
+
'expr': expr.replace(regex, $0),
|
|
100296
|
+
'listener': listener
|
|
100323
100297
|
};
|
|
100324
100298
|
}
|
|
100325
|
-
|
|
100326
|
-
|
|
100327
|
-
|
|
100328
|
-
|
|
100329
|
-
|
|
100330
|
-
|
|
100299
|
+
// listener accepts array
|
|
100300
|
+
// replace all except the last `[$i]` with `[0]` and return the expression.
|
|
100301
|
+
var index = expr.lastIndexOf($I), _expr = expr.substr(0, index).replace($I, $0), restExpr = expr.substr(index + 5), arrayConsumerFn = listener;
|
|
100302
|
+
if (restExpr) {
|
|
100303
|
+
arrayConsumerFn = arrayConsumer.bind(undefined, listener, restExpr);
|
|
100304
|
+
}
|
|
100331
100305
|
return {
|
|
100332
|
-
expr:
|
|
100333
|
-
listener: arrayConsumerFn
|
|
100306
|
+
'expr': _expr,
|
|
100307
|
+
'listener': arrayConsumerFn
|
|
100334
100308
|
};
|
|
100335
100309
|
};
|
|
100336
|
-
/**
|
|
100337
|
-
* Determines if an expression is static (doesn't need to be watched)
|
|
100338
|
-
*/
|
|
100339
|
-
const STATIC_EXPRESSION_NAMES = [
|
|
100340
|
-
"row.getProperty('investment')",
|
|
100341
|
-
"row.getProperty('factsheetLink')",
|
|
100342
|
-
"row.getProperty('isRebalanceEligible')"
|
|
100343
|
-
];
|
|
100344
|
-
const isStaticExpression = (expr) => {
|
|
100345
|
-
if (typeof expr !== 'string') {
|
|
100346
|
-
return false;
|
|
100347
|
-
}
|
|
100348
|
-
const trimmedExpr = expr.trim();
|
|
100349
|
-
// Expressions that always evaluate to localization strings
|
|
100350
|
-
// if (trimmedExpr.includes('appLocale')) {
|
|
100351
|
-
// return true;
|
|
100352
|
-
// }
|
|
100353
|
-
// Hard-coded static expression names
|
|
100354
|
-
if (STATIC_EXPRESSION_NAMES.includes(trimmedExpr)) {
|
|
100355
|
-
return true;
|
|
100356
|
-
}
|
|
100357
|
-
return false;
|
|
100358
|
-
};
|
|
100359
|
-
/**
|
|
100360
|
-
* Gets the scope type from the scope object
|
|
100361
|
-
*/
|
|
100362
|
-
const getScopeType = ($scope) => {
|
|
100363
|
-
if (!$scope) {
|
|
100364
|
-
return null;
|
|
100365
|
-
}
|
|
100366
|
-
if ($scope.pageName)
|
|
100367
|
-
return 'Page';
|
|
100368
|
-
if ($scope.prefabName)
|
|
100369
|
-
return 'Prefab';
|
|
100370
|
-
if ($scope.partialName)
|
|
100371
|
-
return 'Partial';
|
|
100372
|
-
// Check for App scope
|
|
100373
|
-
if ($scope.Variables !== undefined &&
|
|
100374
|
-
$scope.Actions !== undefined &&
|
|
100375
|
-
!$scope.pageName &&
|
|
100376
|
-
!$scope.prefabName &&
|
|
100377
|
-
!$scope.partialName) {
|
|
100378
|
-
return 'App';
|
|
100379
|
-
}
|
|
100380
|
-
if ($scope.constructor?.name === 'AppRef') {
|
|
100381
|
-
return 'App';
|
|
100382
|
-
}
|
|
100383
|
-
return null;
|
|
100384
|
-
};
|
|
100385
|
-
/**
|
|
100386
|
-
* Gets scope name based on scope type
|
|
100387
|
-
*/
|
|
100388
|
-
const getScopeName = ($scope, scopeType) => {
|
|
100389
|
-
if (!scopeType || !$scope) {
|
|
100390
|
-
return null;
|
|
100391
|
-
}
|
|
100392
|
-
switch (scopeType) {
|
|
100393
|
-
case 'Prefab': return $scope.prefabName || null;
|
|
100394
|
-
case 'Partial': return $scope.partialName || null;
|
|
100395
|
-
case 'Page': return $scope.pageName || null;
|
|
100396
|
-
default: return null;
|
|
100397
|
-
}
|
|
100398
|
-
};
|
|
100399
|
-
/**
|
|
100400
|
-
* Main watch function
|
|
100401
|
-
*/
|
|
100402
100310
|
const $watch = (expr, $scope, $locals, listener, identifier = watchIdGenerator.nextUid(), doNotClone = false, config = {}, isMuted) => {
|
|
100403
|
-
|
|
100404
|
-
|
|
100405
|
-
const watchInfo = getUpdatedWatchInfo(expr, config.arrayType || config.isList || false, listener);
|
|
100311
|
+
if (expr.indexOf('[$i]') !== -1) {
|
|
100312
|
+
let watchInfo = getUpdatedWatcInfo(expr, config && (config.arrayType || config.isList), listener);
|
|
100406
100313
|
expr = watchInfo.expr;
|
|
100407
100314
|
listener = watchInfo.listener;
|
|
100408
100315
|
}
|
|
100409
|
-
// Handle static expressions
|
|
100410
|
-
if (isStaticExpression(expr)) {
|
|
100411
|
-
try {
|
|
100412
|
-
const fn = $parseExpr(expr);
|
|
100413
|
-
const staticValue = fn($scope, $locals);
|
|
100414
|
-
listener(staticValue, FIRST_TIME_WATCH);
|
|
100415
|
-
}
|
|
100416
|
-
catch (e) {
|
|
100417
|
-
console.warn(`Error evaluating static expression '${expr}':`, e);
|
|
100418
|
-
listener(undefined, FIRST_TIME_WATCH);
|
|
100419
|
-
}
|
|
100420
|
-
return () => { }; // No-op unsubscribe
|
|
100421
|
-
}
|
|
100422
100316
|
const fn = $parseExpr();
|
|
100423
|
-
|
|
100424
|
-
|
|
100425
|
-
const watchInfo = {
|
|
100426
|
-
fn: fn.bind(null, $scope, $locals),
|
|
100317
|
+
registry.set(identifier, {
|
|
100318
|
+
fn: fn.bind(expr, $scope, $locals),
|
|
100427
100319
|
listener,
|
|
100428
100320
|
expr,
|
|
100429
100321
|
last: FIRST_TIME_WATCH,
|
|
100430
100322
|
doNotClone,
|
|
100431
|
-
isMuted
|
|
100432
|
-
|
|
100433
|
-
scopeName
|
|
100434
|
-
};
|
|
100435
|
-
// Store in registry
|
|
100436
|
-
const widgetId = getWidgetId(identifier);
|
|
100437
|
-
if (widgetId) {
|
|
100438
|
-
const propertyName = getPropertyName(identifier);
|
|
100439
|
-
if (!registry.has(widgetId)) {
|
|
100440
|
-
registry.set(widgetId, {});
|
|
100441
|
-
}
|
|
100442
|
-
const widgetGroup = registry.get(widgetId);
|
|
100443
|
-
widgetGroup[propertyName] = watchInfo;
|
|
100444
|
-
}
|
|
100445
|
-
else {
|
|
100446
|
-
registry.set(identifier, watchInfo);
|
|
100447
|
-
}
|
|
100323
|
+
isMuted: isMuted
|
|
100324
|
+
});
|
|
100448
100325
|
return () => $unwatch(identifier);
|
|
100449
100326
|
};
|
|
100450
|
-
|
|
100451
|
-
|
|
100452
|
-
|
|
100453
|
-
const $
|
|
100454
|
-
|
|
100455
|
-
|
|
100456
|
-
|
|
100457
|
-
|
|
100458
|
-
if (
|
|
100459
|
-
|
|
100460
|
-
|
|
100461
|
-
delete widgetGroup[propertyName];
|
|
100462
|
-
// Clean up empty widget groups
|
|
100463
|
-
if (Object.keys(widgetGroup).length === 0) {
|
|
100464
|
-
registry.delete(widgetId);
|
|
100465
|
-
}
|
|
100466
|
-
return true;
|
|
100467
|
-
}
|
|
100327
|
+
const $unwatch = identifier => registry.delete(identifier);
|
|
100328
|
+
window.watchRegistry = registry;
|
|
100329
|
+
window.__WM_DEBUG_WATCHERS__ = false;
|
|
100330
|
+
/*export const $invokeWatchers = (force?: boolean, ignoreMuted?: boolean) => {
|
|
100331
|
+
if (force) {
|
|
100332
|
+
triggerWatchers(ignoreMuted);
|
|
100333
|
+
} else {
|
|
100334
|
+
|
|
100335
|
+
if (skipWatchers) {
|
|
100336
|
+
skipWatchers = false;
|
|
100337
|
+
return;
|
|
100468
100338
|
}
|
|
100339
|
+
debouncedTriggerWatchers();
|
|
100469
100340
|
}
|
|
100470
|
-
|
|
100471
|
-
if (registry.has(identifier)) {
|
|
100472
|
-
registry.delete(identifier);
|
|
100473
|
-
return true;
|
|
100474
|
-
}
|
|
100475
|
-
return false;
|
|
100476
|
-
};
|
|
100341
|
+
};*/
|
|
100477
100342
|
const $appDigest = (() => {
|
|
100478
|
-
return (force
|
|
100343
|
+
return (force) => {
|
|
100479
100344
|
{
|
|
100480
100345
|
return;
|
|
100481
100346
|
}
|
|
100482
100347
|
};
|
|
100483
100348
|
})();
|
|
100484
|
-
// Export registry for debugging
|
|
100485
|
-
window.watchRegistry = registry;
|
|
100486
100349
|
|
|
100487
100350
|
var ComponentType;
|
|
100488
100351
|
(function (ComponentType) {
|
package/dependency-report.html
CHANGED