@acorex-platform/framework-client 2.0.0-next.20 → 2.0.0-next.22

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.
Files changed (44) hide show
  1. package/fesm2022/{acorex-platform-framework-client-common-common-settings.provider-Cyr1DaiD.mjs → acorex-platform-framework-client-common-common-settings.provider-Biu0_ryw.mjs} +18 -2
  2. package/fesm2022/acorex-platform-framework-client-common-common-settings.provider-Biu0_ryw.mjs.map +1 -0
  3. package/fesm2022/acorex-platform-framework-client-common.mjs +335 -168
  4. package/fesm2022/acorex-platform-framework-client-common.mjs.map +1 -1
  5. package/fesm2022/acorex-platform-framework-client-layout-builder.mjs +20 -0
  6. package/fesm2022/acorex-platform-framework-client-layout-builder.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-framework-client-layout-components.mjs +192 -29
  8. package/fesm2022/acorex-platform-framework-client-layout-components.mjs.map +1 -1
  9. package/fesm2022/{acorex-platform-framework-client-layout-entity-acorex-platform-framework-client-layout-entity-uEA2EE9v.mjs → acorex-platform-framework-client-layout-entity-acorex-platform-framework-client-layout-entity-CRocGF2a.mjs} +124 -23
  10. package/fesm2022/acorex-platform-framework-client-layout-entity-acorex-platform-framework-client-layout-entity-CRocGF2a.mjs.map +1 -0
  11. package/fesm2022/{acorex-platform-framework-client-layout-entity-attachments-page.component-i9bfszKb.mjs → acorex-platform-framework-client-layout-entity-attachments-page.component-ByeXrO6p.mjs} +2 -2
  12. package/fesm2022/{acorex-platform-framework-client-layout-entity-attachments-page.component-i9bfszKb.mjs.map → acorex-platform-framework-client-layout-entity-attachments-page.component-ByeXrO6p.mjs.map} +1 -1
  13. package/fesm2022/{acorex-platform-framework-client-layout-entity-bulk-entity.command-Ej4_qrGa.mjs → acorex-platform-framework-client-layout-entity-bulk-entity.command-C6dSe9Y2.mjs} +2 -2
  14. package/fesm2022/{acorex-platform-framework-client-layout-entity-bulk-entity.command-Ej4_qrGa.mjs.map → acorex-platform-framework-client-layout-entity-bulk-entity.command-C6dSe9Y2.mjs.map} +1 -1
  15. package/fesm2022/{acorex-platform-framework-client-layout-entity-file-list-popup.component-BbYsgq32.mjs → acorex-platform-framework-client-layout-entity-file-list-popup.component-BuI50fZ4.mjs} +2 -2
  16. package/fesm2022/{acorex-platform-framework-client-layout-entity-file-list-popup.component-BbYsgq32.mjs.map → acorex-platform-framework-client-layout-entity-file-list-popup.component-BuI50fZ4.mjs.map} +1 -1
  17. package/fesm2022/{acorex-platform-framework-client-layout-entity-gallery-page.component-CWc-6CZ8.mjs → acorex-platform-framework-client-layout-entity-gallery-page.component-DZ3lioc_.mjs} +2 -2
  18. package/fesm2022/{acorex-platform-framework-client-layout-entity-gallery-page.component-CWc-6CZ8.mjs.map → acorex-platform-framework-client-layout-entity-gallery-page.component-DZ3lioc_.mjs.map} +1 -1
  19. package/fesm2022/acorex-platform-framework-client-layout-entity.mjs +1 -1
  20. package/fesm2022/acorex-platform-framework-client-layout-widget-core.mjs +6 -0
  21. package/fesm2022/acorex-platform-framework-client-layout-widget-core.mjs.map +1 -1
  22. package/fesm2022/{acorex-platform-framework-client-layout-widgets-acorex-platform-framework-client-layout-widgets-DZMgisgf.mjs → acorex-platform-framework-client-layout-widgets-acorex-platform-framework-client-layout-widgets-CELbt6ig.mjs} +82 -22
  23. package/fesm2022/acorex-platform-framework-client-layout-widgets-acorex-platform-framework-client-layout-widgets-CELbt6ig.mjs.map +1 -0
  24. package/fesm2022/acorex-platform-framework-client-layout-widgets-filter-default-operators-widget-edit.component-DOEn58--.mjs +103 -0
  25. package/fesm2022/acorex-platform-framework-client-layout-widgets-filter-default-operators-widget-edit.component-DOEn58--.mjs.map +1 -0
  26. package/fesm2022/{acorex-platform-framework-client-layout-widgets-repeater-widget-column.component-BejeCu5q.mjs → acorex-platform-framework-client-layout-widgets-repeater-widget-column.component-BSjcMKNA.mjs} +2 -2
  27. package/fesm2022/{acorex-platform-framework-client-layout-widgets-repeater-widget-column.component-BejeCu5q.mjs.map → acorex-platform-framework-client-layout-widgets-repeater-widget-column.component-BSjcMKNA.mjs.map} +1 -1
  28. package/fesm2022/{acorex-platform-framework-client-layout-widgets-text-block-widget-designer.component-C2XsTtkl.mjs → acorex-platform-framework-client-layout-widgets-text-block-widget-designer.component-Co5_b33I.mjs} +2 -2
  29. package/fesm2022/{acorex-platform-framework-client-layout-widgets-text-block-widget-designer.component-C2XsTtkl.mjs.map → acorex-platform-framework-client-layout-widgets-text-block-widget-designer.component-Co5_b33I.mjs.map} +1 -1
  30. package/fesm2022/acorex-platform-framework-client-layout-widgets.mjs +1 -1
  31. package/fesm2022/acorex-platform-framework-client-themes-default.mjs +82 -26
  32. package/fesm2022/acorex-platform-framework-client-themes-default.mjs.map +1 -1
  33. package/i18n/en-AU/general.json +16 -0
  34. package/i18n/en-US/general.json +16 -0
  35. package/i18n/fa-IR/general.json +16 -0
  36. package/package.json +2 -2
  37. package/types/acorex-platform-framework-client-common.d.ts +44 -3
  38. package/types/acorex-platform-framework-client-layout-components.d.ts +12 -2
  39. package/types/acorex-platform-framework-client-layout-entity.d.ts +45 -5
  40. package/types/acorex-platform-framework-client-layout-widgets.d.ts +8 -0
  41. package/types/acorex-platform-framework-client-themes-default.d.ts +12 -0
  42. package/fesm2022/acorex-platform-framework-client-common-common-settings.provider-Cyr1DaiD.mjs.map +0 -1
  43. package/fesm2022/acorex-platform-framework-client-layout-entity-acorex-platform-framework-client-layout-entity-uEA2EE9v.mjs.map +0 -1
  44. package/fesm2022/acorex-platform-framework-client-layout-widgets-acorex-platform-framework-client-layout-widgets-DZMgisgf.mjs.map +0 -1
@@ -1,17 +1,17 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, inject, Injectable, Injector, signal, ApplicationRef, DestroyRef, makeEnvironmentProviders, NgModule, computed, input, ChangeDetectionStrategy, ViewEncapsulation, Component, output, effect, viewChild, afterNextRender, untracked, ErrorHandler, EventEmitter, Input, Output, Directive, Inject, runInInjectionContext, model, linkedSignal } from '@angular/core';
3
- import * as i5 from '@angular/router';
4
- import { Router, NavigationEnd, NavigationStart, ROUTES, RedirectCommand, UrlTree, RouterModule } from '@angular/router';
5
3
  import { AXPSessionService, AXPSessionStatus, AXPUnauthenticatedError, AXPAuthGuard, commandMessageTextForError } from '@acorex-platform/framework-client/auth';
6
4
  export { commandMessageTextForError } from '@acorex-platform/framework-client/auth';
7
- import { combineLatest, map, distinctUntilChanged, Subject, ReplaySubject, firstValueFrom, filter, take, timer, timeout, switchMap, from, of } from 'rxjs';
8
- import { unwrapValueProperty, isLocaleStringMap, coerceUnknownToDate, coerceUnknownToFiniteNumber, coerceUnknownToBoolean, coerceUnknownToTrimmedString, AXPPlatformScope, runtimeQueryPayloadData, runtimeCommandPayloadData, AXPRegionalSetting, AXPWidgetsCatalog, axpResolveUserNotificationDelivery, resolveMultiLanguageString, coerceUnknownToMultiLanguageString, AXPKeyboardShortcutPriority, AXP_PLATFORM_ERROR_CODES, AXPRequestError, mapUnknownToAXPErrorBody, AXPSystemActionType, runtimeQueryCollectionData, createRandomUuid, runtimeCommandFailure, runtimeCommandSuccessObject, runtimeQuerySuccessObject } from '@acorex-platform/framework-shared/core';
9
5
  import * as i4$2 from '@acorex-platform/framework-client/core';
10
6
  import { AXPDebugService, AXPBroadcastEventService, AXP_SETTINGS_DEFINITION_DIALOG_OPENER, objectKeyValueTransforms, AXPDataGenerator, AXPKeyboardShortcutRegistry, normalizeKeyboardShortcuts, AXPDeviceService, provideAppStartUpTask, AXP_APP_STARTUP_PRIORITY, chordToKbdItemKeys, hasForegroundOverlayLayer, AXPExpressionEvaluatorService, AXPContextEvalFactory, AXPModuleManifestModule, AXPComponentSlotModule, AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER, AXP_LOGO_IMAGE_SRC_RESOLVER, AXPHookService, AXPPageContextRegistry } from '@acorex-platform/framework-client/core';
11
7
  export { AXPDebugService } from '@acorex-platform/framework-client/core';
8
+ import { unwrapValueProperty, isLocaleStringMap, coerceUnknownToDate, coerceUnknownToFiniteNumber, coerceUnknownToBoolean, coerceUnknownToTrimmedString, AXPPlatformScope, runtimeQueryPayloadData, runtimeCommandPayloadData, AXPRegionalSetting, AXPWidgetsCatalog, axpResolveUserNotificationDelivery, resolveMultiLanguageString, coerceUnknownToMultiLanguageString, AXPKeyboardShortcutPriority, AXP_PLATFORM_ERROR_CODES, AXPRequestError, mapUnknownToAXPErrorBody, AXPSystemActionType, runtimeQueryCollectionData, createRandomUuid, runtimeCommandFailure, runtimeCommandSuccessObject, runtimeQuerySuccessObject } from '@acorex-platform/framework-shared/core';
12
9
  import { merge, sortBy, isString, toString, isPlainObject, mergeWith, defaultTo, isEmpty, isEqual, cloneDeep, get, isNumber, isNil, isObject, omit, uniq } from 'lodash-es';
10
+ import { combineLatest, map, distinctUntilChanged, Subject, ReplaySubject, firstValueFrom, filter, take, timer, timeout, switchMap, from, of } from 'rxjs';
13
11
  import { AXPQueryService, AXPCommandService, provideCommandSetups, provideQuerySetups } from '@acorex-platform/framework-client/runtime';
14
12
  import Dexie from 'dexie';
13
+ import * as i5 from '@angular/router';
14
+ import { Router, NavigationEnd, NavigationStart, ROUTES, RedirectCommand, UrlTree, RouterModule } from '@angular/router';
15
15
  import { AXDialogService } from '@acorex/components/dialog';
16
16
  import * as i6 from '@acorex/core/translation';
17
17
  import { AXTranslationService, AXTranslationModule, translateSync, resolveMultiLanguageString as resolveMultiLanguageString$1 } from '@acorex/core/translation';
@@ -238,162 +238,109 @@ const ALL_DEFAULT_OPERATORS = [
238
238
  BETWEEN_OPER,
239
239
  ];
240
240
 
241
- const DEFAULT_DATE_FILTER_PRESETS = [
242
- { id: 'today', title: '@general:terms.date-presets.today', kind: 'computed' },
243
- { id: 'this-week', title: '@general:terms.date-presets.this-week', kind: 'computed' },
244
- { id: 'this-month', title: '@general:terms.date-presets.this-month', kind: 'computed' },
245
- { id: 'yesterday', title: '@general:terms.date-presets.yesterday', kind: 'computed' },
246
- { id: 'last-week', title: '@general:terms.date-presets.last-week', kind: 'computed' },
247
- { id: 'last-month', title: '@general:terms.date-presets.last-month', kind: 'computed' },
248
- { id: 'tomorrow', title: '@general:terms.date-presets.tomorrow', kind: 'computed' },
249
- { id: 'next-week', title: '@general:terms.date-presets.next-week', kind: 'computed' },
250
- { id: 'next-month', title: '@general:terms.date-presets.next-month', kind: 'computed' },
251
- { id: 'between', title: BETWEEN_OPER.title, kind: 'manual', operationType: 'between' },
252
- { id: 'greater-than', title: '@general:terms.operators.greater-than', kind: 'manual', operationType: 'greaterThan' },
253
- { id: 'less-than', title: '@general:terms.operators.less-than', kind: 'manual', operationType: 'lessThan' },
241
+ //#endregion
242
+ //#region ----- Catalog -----
243
+ const I18N$1 = '@general:settings.experience.entity.filter-default-operators.widgets';
244
+ /** Single-value choice filters. `in` stays on the multiple-selection path. */
245
+ const EQUALITY_OPERATORS = [EQ_OPER, NOT_EQ_OPER];
246
+ function toChoices(operators) {
247
+ return operators.map((operator) => ({ name: operator.name, titleKey: operator.title }));
248
+ }
249
+ /**
250
+ * One row per filter widget. `codeDefault` matches the widget config constant
251
+ * (`AXP_*_FILTER_DEFAULT_OPERATOR`). Stored settings keep only values that differ from it.
252
+ */
253
+ const AXP_FILTER_DEFAULT_OPERATOR_WIDGETS = [
254
+ {
255
+ widgetName: 'string-filter',
256
+ titleKey: `${I18N$1}.string-filter`,
257
+ codeDefault: 'contains',
258
+ operators: toChoices(STRING_OPERATORS),
259
+ },
260
+ {
261
+ widgetName: 'number-filter',
262
+ titleKey: `${I18N$1}.number-filter`,
263
+ codeDefault: 'equal',
264
+ operators: toChoices(NUMBER_OPERATORS),
265
+ },
266
+ {
267
+ widgetName: 'datetime-filter',
268
+ titleKey: `${I18N$1}.datetime-filter`,
269
+ codeDefault: 'equal',
270
+ operators: toChoices(DATE_OPERATORS),
271
+ },
272
+ {
273
+ widgetName: 'boolean-filter',
274
+ titleKey: `${I18N$1}.boolean-filter`,
275
+ codeDefault: 'equal',
276
+ operators: toChoices(BOOLEAN_OPERATORS),
277
+ },
278
+ {
279
+ widgetName: 'select-filter',
280
+ titleKey: `${I18N$1}.select-filter`,
281
+ codeDefault: 'equal',
282
+ operators: toChoices(EQUALITY_OPERATORS),
283
+ },
284
+ {
285
+ widgetName: 'lookup-filter',
286
+ titleKey: `${I18N$1}.lookup-filter`,
287
+ codeDefault: 'equal',
288
+ operators: toChoices(EQUALITY_OPERATORS),
289
+ },
290
+ {
291
+ widgetName: 'status-filter',
292
+ titleKey: `${I18N$1}.status-filter`,
293
+ codeDefault: 'equal',
294
+ operators: toChoices(EQUALITY_OPERATORS),
295
+ },
296
+ {
297
+ widgetName: 'time-duration-filter',
298
+ titleKey: `${I18N$1}.time-duration-filter`,
299
+ codeDefault: 'equal',
300
+ operators: toChoices(NUMBER_OPERATORS),
301
+ },
254
302
  ];
255
- function resolveDateFilterPresets(customPresets, presetIds) {
256
- let presets = customPresets?.length ? customPresets : DEFAULT_DATE_FILTER_PRESETS;
257
- if (presetIds?.length) {
258
- presets = presets.filter((p) => presetIds.includes(p.id));
303
+ const AXP_FILTER_DEFAULT_OPERATORS_WIDGET_NAME = 'filter-default-operators';
304
+ //#endregion
305
+ //#region ----- Map helpers -----
306
+ function readFilterDefaultOperatorMap(value) {
307
+ if (value == null || typeof value !== 'object' || Array.isArray(value)) {
308
+ return {};
259
309
  }
260
- return presets;
261
- }
262
- function applyDateFilterPreset(presetId, calendarService) {
263
- const currentDate = calendarService.now().date;
264
- const calendar = calendarService.calendar;
265
- switch (presetId) {
266
- case 'today':
267
- return {
268
- operation: { type: 'between' },
269
- value: {
270
- from: calendar.startOf(currentDate, 'day').date.toISOString(),
271
- to: calendar.endOf(currentDate, 'day').date.toISOString(),
272
- },
273
- };
274
- case 'this-week':
275
- return {
276
- operation: { type: 'between' },
277
- value: {
278
- from: calendar.startOf(currentDate, 'week').date.toISOString(),
279
- to: calendar.endOf(currentDate, 'week').date.toISOString(),
280
- },
281
- };
282
- case 'this-month':
283
- return {
284
- operation: { type: 'between' },
285
- value: {
286
- from: calendar.startOf(currentDate, 'month').date.toISOString(),
287
- to: calendar.endOf(currentDate, 'month').date.toISOString(),
288
- },
289
- };
290
- case 'yesterday': {
291
- const yesterday = calendar.add(currentDate, 'day', -1);
292
- return {
293
- operation: { type: 'between' },
294
- value: {
295
- from: yesterday.startOf('day').date.toISOString(),
296
- to: yesterday.endOf('day').date.toISOString(),
297
- },
298
- };
299
- }
300
- case 'last-week': {
301
- const lastWeek = calendar.add(currentDate, 'week', -1);
302
- return {
303
- operation: { type: 'between' },
304
- value: {
305
- from: lastWeek.startOf('week').date.toISOString(),
306
- to: lastWeek.endOf('week').date.toISOString(),
307
- },
308
- };
309
- }
310
- case 'last-month': {
311
- const lastMonth = calendar.add(currentDate, 'month', -1);
312
- return {
313
- operation: { type: 'between' },
314
- value: {
315
- from: lastMonth.startOf('month').date.toISOString(),
316
- to: lastMonth.endOf('month').date.toISOString(),
317
- },
318
- };
310
+ const result = {};
311
+ for (const [widgetName, operatorName] of Object.entries(value)) {
312
+ if (typeof operatorName === 'string' && operatorName.length > 0) {
313
+ result[widgetName] = operatorName;
319
314
  }
320
- case 'tomorrow': {
321
- const tomorrow = calendar.add(currentDate, 'day', 1);
322
- return {
323
- operation: { type: 'between' },
324
- value: {
325
- from: tomorrow.startOf('day').date.toISOString(),
326
- to: tomorrow.endOf('day').date.toISOString(),
327
- },
328
- };
329
- }
330
- case 'next-week': {
331
- const nextWeek = calendar.add(currentDate, 'week', 1);
332
- return {
333
- operation: { type: 'between' },
334
- value: {
335
- from: nextWeek.startOf('week').date.toISOString(),
336
- to: nextWeek.endOf('week').date.toISOString(),
337
- },
338
- };
339
- }
340
- case 'next-month': {
341
- const nextMonth = calendar.add(currentDate, 'month', 1);
342
- return {
343
- operation: { type: 'between' },
344
- value: {
345
- from: nextMonth.startOf('month').date.toISOString(),
346
- to: nextMonth.endOf('month').date.toISOString(),
347
- },
348
- };
349
- }
350
- case 'between':
351
- return { operation: { type: 'between' } };
352
- case 'greater-than':
353
- return { operation: { type: 'greaterThan' } };
354
- case 'less-than':
355
- return { operation: { type: 'lessThan' } };
356
- default:
357
- return {
358
- operation: { type: 'between' },
359
- value: { from: '', to: '' },
360
- };
361
315
  }
316
+ return result;
362
317
  }
363
- function findManualPresetIdByOperation(operationType, presets) {
364
- if (!operationType) {
365
- return undefined;
366
- }
367
- return presets.find((p) => p.kind === 'manual' && p.operationType === operationType)?.id;
318
+ function findFilterDefaultOperatorWidget(widgetName) {
319
+ return AXP_FILTER_DEFAULT_OPERATOR_WIDGETS.find((widget) => widget.widgetName === widgetName);
368
320
  }
369
-
370
- const AXP_HOME_PAGES = new InjectionToken('AXP_HOME_PAGES');
371
- const AXP_HOME_PAGE_DEFAULT_KEY = new InjectionToken('AXP_HOME_PAGE_DEFAULT_KEY', {
372
- factory: () => 'home'
373
- });
374
-
375
- /** Strict descendants allowed to override a setting owned at `scope`. */
376
- const AXP_SETTING_SCOPE_DESCENDANTS = {
377
- P: ['T', 'U'],
378
- T: ['U'],
379
- U: [],
380
- };
381
- function normalizeOverridableAt(ownerScope, overridableAt) {
382
- const scopes = overridableAt ?? [];
383
- const allowed = AXP_SETTING_SCOPE_DESCENDANTS[ownerScope];
384
- for (const scope of scopes) {
385
- if (!allowed.includes(scope)) {
386
- throw new Error(`Setting at scope "${ownerScope}" cannot be overridable at "${scope}". Allowed: [${allowed.join(', ')}].`);
387
- }
321
+ /** Stored operator when it belongs to that widget; otherwise the code default. */
322
+ function resolveStoredFilterDefaultOperator(widgetName, stored, codeDefault) {
323
+ const selected = readFilterDefaultOperatorMap(stored)[widgetName];
324
+ if (!selected) {
325
+ return codeDefault;
388
326
  }
389
- return scopes;
327
+ const widget = findFilterDefaultOperatorWidget(widgetName);
328
+ if (widget && !widget.operators.some((operator) => operator.name === selected)) {
329
+ return codeDefault;
330
+ }
331
+ return selected;
390
332
  }
391
- function isSettingVisibleOnScope(setting, pageScope) {
392
- if (setting.scope === pageScope) {
393
- return true;
333
+ /** Persist a change only when it differs from the widget's code default. */
334
+ function writeFilterDefaultOperatorOverride(current, widgetName, operatorName, codeDefault) {
335
+ const next = { ...readFilterDefaultOperatorMap(current) };
336
+ if (!operatorName || operatorName === codeDefault) {
337
+ delete next[widgetName];
338
+ return next;
394
339
  }
395
- return (setting.overridableAt ?? []).includes(pageScope);
340
+ next[widgetName] = operatorName;
341
+ return next;
396
342
  }
343
+ //#endregion
397
344
 
398
345
  var AXPCommonSettings;
399
346
  (function (AXPCommonSettings) {
@@ -428,6 +375,8 @@ var AXPCommonSettings;
428
375
  AXPCommonSettings["MaxOpenTabs"] = "Common:Setting:Navigation.MaxOpenTabs";
429
376
  /** When true with entity list quick-search input, filters emit {@link AXP_QUERY_QUICK_SEARCH_FIELD} instead of inline OR. */
430
377
  AXPCommonSettings["QuickSearchEnabled"] = "Common:Setting:Entity.QuickSearchEnabled";
378
+ /** Platform map of filter widget name → operator. Only overrides are stored. */
379
+ AXPCommonSettings["FilterDefaultOperators"] = "Common:Setting:Entity.FilterDefaultOperators";
431
380
  })(AXPCommonSettings || (AXPCommonSettings = {}));
432
381
  /**
433
382
  * File-chooser keys live here so `common` can register Experience settings
@@ -453,6 +402,29 @@ const AXP_ENTITY_LIST_DISPLAY_MODE_DEFAULT = 'table';
453
402
  /** User status stays visible until a platform setting turns it off. */
454
403
  const AXP_USER_STATUS_ENABLED_DEFAULT = true;
455
404
 
405
+ /** Strict descendants allowed to override a setting owned at `scope`. */
406
+ const AXP_SETTING_SCOPE_DESCENDANTS = {
407
+ P: ['T', 'U'],
408
+ T: ['U'],
409
+ U: [],
410
+ };
411
+ function normalizeOverridableAt(ownerScope, overridableAt) {
412
+ const scopes = overridableAt ?? [];
413
+ const allowed = AXP_SETTING_SCOPE_DESCENDANTS[ownerScope];
414
+ for (const scope of scopes) {
415
+ if (!allowed.includes(scope)) {
416
+ throw new Error(`Setting at scope "${ownerScope}" cannot be overridable at "${scope}". Allowed: [${allowed.join(', ')}].`);
417
+ }
418
+ }
419
+ return scopes;
420
+ }
421
+ function isSettingVisibleOnScope(setting, pageScope) {
422
+ if (setting.scope === pageScope) {
423
+ return true;
424
+ }
425
+ return (setting.overridableAt ?? []).includes(pageScope);
426
+ }
427
+
456
428
  class AXPSettingDefinitionProviderContext {
457
429
  constructor() {
458
430
  this.rootGroups = [];
@@ -2834,6 +2806,187 @@ class ScopedSettingService {
2834
2806
  }
2835
2807
  }
2836
2808
 
2809
+ //#region ----- Service -----
2810
+ class AXPFilterDefaultOperatorService {
2811
+ //#endregion
2812
+ //#region ----- Lifecycle -----
2813
+ constructor() {
2814
+ //#region ----- Services & Dependencies -----
2815
+ this.settings = inject(AXPSettingsService);
2816
+ //#endregion
2817
+ //#region ----- State Signals -----
2818
+ this.overrides = signal({}, /* @ts-ignore */
2819
+ ...(ngDevMode ? [{ debugName: "overrides" }] : /* istanbul ignore next */ []));
2820
+ this.refresh();
2821
+ this.settings.onChanged.subscribe(() => {
2822
+ this.refresh();
2823
+ });
2824
+ }
2825
+ //#endregion
2826
+ //#region ----- Resolve -----
2827
+ /** Platform override for this filter widget, or `codeDefault` when unset. */
2828
+ resolve(widgetName, codeDefault) {
2829
+ return resolveStoredFilterDefaultOperator(widgetName, this.overrides(), codeDefault);
2830
+ }
2831
+ //#endregion
2832
+ //#region ----- Cache -----
2833
+ refresh() {
2834
+ this.overrides.set(readFilterDefaultOperatorMap(this.settings.peekCached(AXPCommonSettings.FilterDefaultOperators)));
2835
+ }
2836
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPFilterDefaultOperatorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2837
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPFilterDefaultOperatorService, providedIn: 'root' }); }
2838
+ }
2839
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPFilterDefaultOperatorService, decorators: [{
2840
+ type: Injectable,
2841
+ args: [{ providedIn: 'root' }]
2842
+ }], ctorParameters: () => [] });
2843
+ //#endregion
2844
+ //#region ----- Widget lookup overlay -----
2845
+ function withFilterDefaultOperator(service, widgetName, widget) {
2846
+ if (!widget?.defaultFilterOperator) {
2847
+ return widget;
2848
+ }
2849
+ const resolved = service.resolve(widgetName, widget.defaultFilterOperator);
2850
+ if (resolved === widget.defaultFilterOperator) {
2851
+ return widget;
2852
+ }
2853
+ return { ...widget, defaultFilterOperator: resolved };
2854
+ }
2855
+
2856
+ const DEFAULT_DATE_FILTER_PRESETS = [
2857
+ { id: 'today', title: '@general:terms.date-presets.today', kind: 'computed' },
2858
+ { id: 'this-week', title: '@general:terms.date-presets.this-week', kind: 'computed' },
2859
+ { id: 'this-month', title: '@general:terms.date-presets.this-month', kind: 'computed' },
2860
+ { id: 'yesterday', title: '@general:terms.date-presets.yesterday', kind: 'computed' },
2861
+ { id: 'last-week', title: '@general:terms.date-presets.last-week', kind: 'computed' },
2862
+ { id: 'last-month', title: '@general:terms.date-presets.last-month', kind: 'computed' },
2863
+ { id: 'tomorrow', title: '@general:terms.date-presets.tomorrow', kind: 'computed' },
2864
+ { id: 'next-week', title: '@general:terms.date-presets.next-week', kind: 'computed' },
2865
+ { id: 'next-month', title: '@general:terms.date-presets.next-month', kind: 'computed' },
2866
+ { id: 'between', title: BETWEEN_OPER.title, kind: 'manual', operationType: 'between' },
2867
+ { id: 'greater-than', title: '@general:terms.operators.greater-than', kind: 'manual', operationType: 'greaterThan' },
2868
+ { id: 'less-than', title: '@general:terms.operators.less-than', kind: 'manual', operationType: 'lessThan' },
2869
+ ];
2870
+ function resolveDateFilterPresets(customPresets, presetIds) {
2871
+ let presets = customPresets?.length ? customPresets : DEFAULT_DATE_FILTER_PRESETS;
2872
+ if (presetIds?.length) {
2873
+ presets = presets.filter((p) => presetIds.includes(p.id));
2874
+ }
2875
+ return presets;
2876
+ }
2877
+ function applyDateFilterPreset(presetId, calendarService) {
2878
+ const currentDate = calendarService.now().date;
2879
+ const calendar = calendarService.calendar;
2880
+ switch (presetId) {
2881
+ case 'today':
2882
+ return {
2883
+ operation: { type: 'between' },
2884
+ value: {
2885
+ from: calendar.startOf(currentDate, 'day').date.toISOString(),
2886
+ to: calendar.endOf(currentDate, 'day').date.toISOString(),
2887
+ },
2888
+ };
2889
+ case 'this-week':
2890
+ return {
2891
+ operation: { type: 'between' },
2892
+ value: {
2893
+ from: calendar.startOf(currentDate, 'week').date.toISOString(),
2894
+ to: calendar.endOf(currentDate, 'week').date.toISOString(),
2895
+ },
2896
+ };
2897
+ case 'this-month':
2898
+ return {
2899
+ operation: { type: 'between' },
2900
+ value: {
2901
+ from: calendar.startOf(currentDate, 'month').date.toISOString(),
2902
+ to: calendar.endOf(currentDate, 'month').date.toISOString(),
2903
+ },
2904
+ };
2905
+ case 'yesterday': {
2906
+ const yesterday = calendar.add(currentDate, 'day', -1);
2907
+ return {
2908
+ operation: { type: 'between' },
2909
+ value: {
2910
+ from: yesterday.startOf('day').date.toISOString(),
2911
+ to: yesterday.endOf('day').date.toISOString(),
2912
+ },
2913
+ };
2914
+ }
2915
+ case 'last-week': {
2916
+ const lastWeek = calendar.add(currentDate, 'week', -1);
2917
+ return {
2918
+ operation: { type: 'between' },
2919
+ value: {
2920
+ from: lastWeek.startOf('week').date.toISOString(),
2921
+ to: lastWeek.endOf('week').date.toISOString(),
2922
+ },
2923
+ };
2924
+ }
2925
+ case 'last-month': {
2926
+ const lastMonth = calendar.add(currentDate, 'month', -1);
2927
+ return {
2928
+ operation: { type: 'between' },
2929
+ value: {
2930
+ from: lastMonth.startOf('month').date.toISOString(),
2931
+ to: lastMonth.endOf('month').date.toISOString(),
2932
+ },
2933
+ };
2934
+ }
2935
+ case 'tomorrow': {
2936
+ const tomorrow = calendar.add(currentDate, 'day', 1);
2937
+ return {
2938
+ operation: { type: 'between' },
2939
+ value: {
2940
+ from: tomorrow.startOf('day').date.toISOString(),
2941
+ to: tomorrow.endOf('day').date.toISOString(),
2942
+ },
2943
+ };
2944
+ }
2945
+ case 'next-week': {
2946
+ const nextWeek = calendar.add(currentDate, 'week', 1);
2947
+ return {
2948
+ operation: { type: 'between' },
2949
+ value: {
2950
+ from: nextWeek.startOf('week').date.toISOString(),
2951
+ to: nextWeek.endOf('week').date.toISOString(),
2952
+ },
2953
+ };
2954
+ }
2955
+ case 'next-month': {
2956
+ const nextMonth = calendar.add(currentDate, 'month', 1);
2957
+ return {
2958
+ operation: { type: 'between' },
2959
+ value: {
2960
+ from: nextMonth.startOf('month').date.toISOString(),
2961
+ to: nextMonth.endOf('month').date.toISOString(),
2962
+ },
2963
+ };
2964
+ }
2965
+ case 'between':
2966
+ return { operation: { type: 'between' } };
2967
+ case 'greater-than':
2968
+ return { operation: { type: 'greaterThan' } };
2969
+ case 'less-than':
2970
+ return { operation: { type: 'lessThan' } };
2971
+ default:
2972
+ return {
2973
+ operation: { type: 'between' },
2974
+ value: { from: '', to: '' },
2975
+ };
2976
+ }
2977
+ }
2978
+ function findManualPresetIdByOperation(operationType, presets) {
2979
+ if (!operationType) {
2980
+ return undefined;
2981
+ }
2982
+ return presets.find((p) => p.kind === 'manual' && p.operationType === operationType)?.id;
2983
+ }
2984
+
2985
+ const AXP_HOME_PAGES = new InjectionToken('AXP_HOME_PAGES');
2986
+ const AXP_HOME_PAGE_DEFAULT_KEY = new InjectionToken('AXP_HOME_PAGE_DEFAULT_KEY', {
2987
+ factory: () => 'home'
2988
+ });
2989
+
2837
2990
  const DEFAULT_APPLY_DEFAULT_MULTILANGUAGE = true;
2838
2991
  /**
2839
2992
  * Synchronous access to default multi-language behavior for named entity fields and widget
@@ -8818,7 +8971,12 @@ class AXPLocalEntityOutboxService {
8818
8971
  this.handlers.delete(entityKey);
8819
8972
  }
8820
8973
  pendingFor(entityKey) {
8821
- return this.pendingOps().filter((op) => op.entityKey === entityKey);
8974
+ const userKey = this.resolveUserKey();
8975
+ return this.pendingOps().filter((op) => op.entityKey === entityKey && op.userKey === userKey);
8976
+ }
8977
+ /** Await durable operations before a feature overlays pending rows after reload. */
8978
+ hydrate() {
8979
+ return this.refreshPending();
8822
8980
  }
8823
8981
  async enqueue(input) {
8824
8982
  const userKey = this.resolveUserKey();
@@ -8829,10 +8987,7 @@ class AXPLocalEntityOutboxService {
8829
8987
  }
8830
8988
  const recordIds = [...new Set((input.recordIds ?? []).map((id) => id?.trim()).filter(Boolean))];
8831
8989
  const existing = await this.loadUserOps(userKey);
8832
- const duplicate = existing.find((op) => op.entityKey === entityKey &&
8833
- op.action === action &&
8834
- sameIdSet(op.recordIds, recordIds) &&
8835
- stablePayload(op.payload) === stablePayload(input.payload));
8990
+ const duplicate = existing.find((op) => op.entityKey === entityKey && op.action === action && sameIdSet(op.recordIds, recordIds) && stablePayload(op.payload) === stablePayload(input.payload));
8836
8991
  if (duplicate) {
8837
8992
  return;
8838
8993
  }
@@ -8843,7 +8998,8 @@ class AXPLocalEntityOutboxService {
8843
8998
  action,
8844
8999
  recordIds,
8845
9000
  payload: input.payload,
8846
- queuedAt: new Date().toISOString(),
9001
+ // Keep dependent operations ordered even if send and edit enqueue in the same millisecond.
9002
+ queuedAt: new Date(Math.max(Date.now(), ...existing.map((op) => Date.parse(op.queuedAt) + 1))).toISOString(),
8847
9003
  attempts: 0,
8848
9004
  lastError: null,
8849
9005
  };
@@ -8881,6 +9037,10 @@ class AXPLocalEntityOutboxService {
8881
9037
  }
8882
9038
  const ops = (await this.loadUserOps(userKey)).sort((left, right) => left.queuedAt.localeCompare(right.queuedAt));
8883
9039
  for (const op of ops) {
9040
+ // A queued batch must never continue under another account after an awaited HTTP call.
9041
+ if (userKey !== this.resolveUserKey() || !this.sessionService.isReadyForAppScopedApi) {
9042
+ break;
9043
+ }
8884
9044
  const handler = this.handlers.get(op.entityKey);
8885
9045
  if (!handler) {
8886
9046
  continue;
@@ -8936,6 +9096,8 @@ class AXPLocalEntityOutboxService {
8936
9096
  return;
8937
9097
  }
8938
9098
  const ops = await this.loadUserOps(userKey);
9099
+ if (userKey !== this.resolveUserKey())
9100
+ return;
8939
9101
  ops.sort((left, right) => left.queuedAt.localeCompare(right.queuedAt));
8940
9102
  this.pendingOps.set(ops);
8941
9103
  }
@@ -11366,7 +11528,7 @@ class AXPCommonModule {
11366
11528
  provide: AXP_SETTING_DEFINITION_PROVIDER,
11367
11529
  useFactory: async () => {
11368
11530
  const injector = inject(Injector);
11369
- const provider = (await import('./acorex-platform-framework-client-common-common-settings.provider-Cyr1DaiD.mjs')).AXPCommonSettingProvider;
11531
+ const provider = (await import('./acorex-platform-framework-client-common-common-settings.provider-Biu0_ryw.mjs')).AXPCommonSettingProvider;
11370
11532
  return new provider(injector);
11371
11533
  },
11372
11534
  multi: true,
@@ -11489,7 +11651,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
11489
11651
  provide: AXP_SETTING_DEFINITION_PROVIDER,
11490
11652
  useFactory: async () => {
11491
11653
  const injector = inject(Injector);
11492
- const provider = (await import('./acorex-platform-framework-client-common-common-settings.provider-Cyr1DaiD.mjs')).AXPCommonSettingProvider;
11654
+ const provider = (await import('./acorex-platform-framework-client-common-common-settings.provider-Biu0_ryw.mjs')).AXPCommonSettingProvider;
11493
11655
  return new provider(injector);
11494
11656
  },
11495
11657
  multi: true,
@@ -12438,8 +12600,11 @@ class AXPLocalEntityEngine {
12438
12600
  return bucket.syncInFlight;
12439
12601
  }
12440
12602
  bucket.syncInFlight = (async () => {
12603
+ const userKey = this.resolveUserKey();
12441
12604
  const result = await fetchHot();
12442
- await this.replaceAll(entityKey, result.items ?? []);
12605
+ if (userKey === this.resolveUserKey()) {
12606
+ await this.replaceAll(entityKey, result.items ?? []);
12607
+ }
12443
12608
  })().finally(() => {
12444
12609
  bucket.syncInFlight = null;
12445
12610
  });
@@ -12514,6 +12679,8 @@ class AXPLocalEntityEngine {
12514
12679
  await axpLocalEntityIndexedDb.transaction('rw', axpLocalEntityIndexedDb.items, async () => {
12515
12680
  await axpLocalEntityIndexedDb.items.bulkDelete(storageIds);
12516
12681
  });
12682
+ if (userKey !== this.resolveUserKey())
12683
+ return;
12517
12684
  bucket.items.set(next);
12518
12685
  bucket.hydrated.set(true);
12519
12686
  this.publish({ type: 'store-changed', entityKey, userKey, originId: this.originId });
@@ -12572,10 +12739,9 @@ class AXPLocalEntityEngine {
12572
12739
  bucket.hydrated.set(true);
12573
12740
  return;
12574
12741
  }
12575
- const stored = await axpLocalEntityIndexedDb.items
12576
- .where('[entityKey+userKey]')
12577
- .equals([entityKey, userKey])
12578
- .toArray();
12742
+ const stored = await axpLocalEntityIndexedDb.items.where('[entityKey+userKey]').equals([entityKey, userKey]).toArray();
12743
+ if (userKey !== this.resolveUserKey())
12744
+ return;
12579
12745
  const items = this.prune(entityKey, stored.map((row) => row.payload));
12580
12746
  this.userKeySignal.set(userKey);
12581
12747
  bucket.items.set(items);
@@ -12598,10 +12764,7 @@ class AXPLocalEntityEngine {
12598
12764
  const keepIds = new Set(stored.map((row) => row.storageId));
12599
12765
  const metaId = buildLocalEntityMetaId(entityKey, userKey);
12600
12766
  await axpLocalEntityIndexedDb.transaction('rw', axpLocalEntityIndexedDb.items, axpLocalEntityIndexedDb.meta, async () => {
12601
- const existing = await axpLocalEntityIndexedDb.items
12602
- .where('[entityKey+userKey]')
12603
- .equals([entityKey, userKey])
12604
- .primaryKeys();
12767
+ const existing = await axpLocalEntityIndexedDb.items.where('[entityKey+userKey]').equals([entityKey, userKey]).primaryKeys();
12605
12768
  const staleIds = existing.filter((id) => !keepIds.has(String(id)));
12606
12769
  if (staleIds.length > 0) {
12607
12770
  await axpLocalEntityIndexedDb.items.bulkDelete(staleIds);
@@ -12616,6 +12779,8 @@ class AXPLocalEntityEngine {
12616
12779
  lastSyncedAt: new Date().toISOString(),
12617
12780
  });
12618
12781
  });
12782
+ if (userKey !== this.resolveUserKey())
12783
+ return;
12619
12784
  this.userKeySignal.set(userKey);
12620
12785
  bucket.items.set(items);
12621
12786
  bucket.hydrated.set(true);
@@ -12637,6 +12802,8 @@ class AXPLocalEntityEngine {
12637
12802
  }
12638
12803
  this.userKeySignal.set(userKey);
12639
12804
  for (const [entityKey, bucket] of this.buckets) {
12805
+ bucket.items.set([]);
12806
+ bucket.hydrated.set(false);
12640
12807
  bucket.bootstrapPromise = null;
12641
12808
  bucket.hydratePromise = null;
12642
12809
  bucket.syncInFlight = null;
@@ -14279,5 +14446,5 @@ const axpPageGetContextQueryDefinition = defineQuery({
14279
14446
  * Generated bundle index. Do not edit.
14280
14447
  */
14281
14448
 
14282
- export { ALL_DEFAULT_OPERATORS, AXPAcorexFileTypeBridgeProvider, AXPAcorexFileTypeModule, AXPAppVersionService, AXPBackgroundOperationCompletionService, AXPBackgroundOperationEntityStoreService, AXPBackgroundOperationHandler, AXPBackgroundOperationNotificationService, AXPBackgroundOperationProvider, AXPBackgroundOperationRootConfig, AXPBackgroundOperationService, AXPBackgroundOperationSlotComponent, AXPBrowserTitleService, AXPCleanNestedFilters, AXPClipBoardService, AXPCommonModule, AXPCommonSettings, AXPCustomOperatorService, AXPCustomOperatorServiceImpl, AXPDataProvider, AXPDefaultMultiLanguageConfigService, AXPEntityDetailsNavTrailService, AXPErrorHandlerRegistryService, AXPExportService, AXPFileActionsService, AXPFileChooserSettings, AXPFileStorageEvaluatorScopeProvider, AXPFileStorageService, AXPFileTypeProviderService, AXPFilterOperatorMiddlewareService, AXPFilterOperatorMiddlewareServiceImpl, AXPFooterTextSlotComponent, AXPGlobalErrorHandler, AXPHomePageModule, AXPHomePageService, AXPIndexedDbSettingValueProvider, AXPIntegrationDomainProviderContext, AXPIntegrationDomainRegistryFacade, AXPIntegrationDomainRegistryService, AXPIntegrationOAuthService, AXPIntegrationProviderContext, AXPIntegrationProviderRegistryService, AXPIntegrationRuntimeService, AXPKeyboardShortcutsHelpComponent, AXPKeyboardShortcutsHelpService, AXPLocalEntityEngine, AXPLocalEntityIndexedDb, AXPLocalEntityOfflineRuntime, AXPLocalEntityOutboxService, AXPLocalEntityRealtimeBridge, AXPLockService, AXPLogoImageSrcResolverService, AXPMenuKeyboardShortcutService, AXPMenuMiddlewareRegistry, AXPMenuProviderService, AXPMenuRouteAccessService, AXPMenuRouteGuard, AXPMenuSearchDefinitionProvider, AXPMenuSearchProvider, AXPMenuService, AXPMenuVisibilityService, AXPNavBarSlotComponent, AXPNavigateCommand, AXPNetworkConnectivityService, AXPNotFoundCatchAllRoute, AXPNotFoundError, AXPOutputContractTranscriptSegmentService, AXPPageGetContextQuery, AXPPageRunActionCommand, AXPPlatformBrandingService, AXPPlatformDefaultConfigs, AXPPlatformSettingsLoadState, AXPPlatformSettingsOfflineBootstrapService, AXPQueryEvaluatorScopeProvider, AXPQueryParamsEvaluatorScopeProvider, AXPRegionalCalendarService, AXPSearchCommandProvider, AXPSearchDefinitionActionBuilder, AXPSearchDefinitionBuilder, AXPSearchDefinitionProviderContext, AXPSearchDefinitionProviderService, AXPSearchService, AXPSettingDefaultValuesAggregatorService, AXPSettingDefinitionGroupBuilder, AXPSettingDefinitionProviderContext, AXPSettingDefinitionProviderService, AXPSettingDefinitionSectionBuilder, AXPSettingsBulkSyncService, AXPSettingsEvaluatorScopeProvider, AXPSettingsIndexedDb, AXPSettingsService, AXPStateMessageComponent, AXPStatusDefinitionProviderService, AXPStickyDirective, AXPTabNavigationService, AXPTabPreviewService, AXPTabRouteCacheRegistry, AXPTokenDefinitionService, AXPTokenEvaluatorScopeProvider, AXPTranslateFormatter, AXPUnsavedChangesConfirmService, AXPUnsavedChangesPopstateService, AXPUserNotificationService, AXPUserStatusFeatureService, AXPVersioningService, AXP_AGENT_OUTPUT_CONTRACT_DEFAULT_STRUCTURED_RETRIES, AXP_APP_VERSION_PROVIDER, AXP_BACKGROUND_OPERATION_ENTITY_STORAGE, AXP_BACKGROUND_OPERATION_HANDLERS, AXP_BACKGROUND_OPERATION_PROVIDERS, AXP_BREADCRUMB_COLLAPSE_HEAD_COUNT, AXP_BREADCRUMB_COLLAPSE_TAIL_COUNT, AXP_DOCUMENT_FILE_TYPE_PURPOSES, AXP_ENTITY_LIST_DISPLAY_MODE_DEFAULT, AXP_ENTITY_VIEW_ACCESS, AXP_EXPERIENCE_SETTINGS_GROUP, AXP_EXPERIENCE_SETTINGS_SECTIONS, AXP_FILE_ACTION_PROVIDER, AXP_FILE_TYPE_INFO_PROVIDER, AXP_HOME_PAGES, AXP_HOME_PAGE_DEFAULT_KEY, AXP_HOME_TAB_KEY, AXP_INTEGRATION_CONNECTION_ESTABLISHED, AXP_INTEGRATION_CONNECTION_LIFECYCLE, AXP_INTEGRATION_DOMAIN_PROVIDER, AXP_INTEGRATION_OAUTH_SERVICE, AXP_INTEGRATION_PROVIDER, AXP_INTEGRATION_RUNTIME_PROVIDER, AXP_INTEGRATION_SECRET_STORE, AXP_IN_APP_NOTIFICATION_SERVICE, AXP_LOCALE_MANAGEMENT_PORT, AXP_LOCAL_ENTITY_BROADCAST_CHANNEL, AXP_LOCAL_ENTITY_DEFAULT_MAX_ITEMS, AXP_LOCAL_ENTITY_OUTBOX_LOCK, AXP_MENU_MIDDLEWARE, AXP_MENU_PROVIDER, AXP_NOT_FOUND_CATCH_ALL_ROUTE, AXP_NOT_FOUND_ROUTE, AXP_OUTPUT_CONTRACT_TRANSCRIPT_SEGMENT_PROVIDER, AXP_PLATFORM_BRANDING_SETTING_KEYS, AXP_PLATFORM_CONFIG_TOKEN, AXP_PROTECTED_ROUTE_GUARDS, AXP_ROOT_CONFIG_TOKEN, AXP_RUNTIME_QUERY_CACHE_DEFAULTS, AXP_SEARCH_DEFINITION_LAZY_RESOLVER, AXP_SEARCH_DEFINITION_PROVIDER, AXP_SEARCH_PROVIDER, AXP_SETTINGS_CACHE_SYNC, AXP_SETTINGS_SYNC_DEBOUNCE_MS, AXP_SETTINGS_SYNC_KEYS, AXP_SETTINGS_SYNC_RETRY_BACKOFF_MS, AXP_SETTINGS_SYNC_TTL_MS, AXP_SETTING_DEFAULT_VALUES_PROVIDERS, AXP_SETTING_DEFINITION_PROVIDER, AXP_SETTING_SCOPE_DESCENDANTS, AXP_SETTING_VALUE_PROVIDER, AXP_STATUS_PROVIDERS, AXP_TAB_BREADCRUMB_JOIN_SEPARATOR, AXP_TAB_ROUTE_DATA_KEY, AXP_TOKEN_DEFINITION_PROVIDER, AXP_UNAUTHORIZED_ROUTE, AXP_USER_NOTIFICATION_SERVICE, AXP_USER_STATUS_ENABLED_DEFAULT, AXVChangeType, AX_FILE_TYPE_METADATA_SUPPORT_BY_FILE_VIEWER, BETWEEN_OPER, BOOLEAN_OPERATORS, CONTAINS_OPER, DATE_OPERATORS, DEFAULT_DATE_FILTER_PRESETS, DEFAULT_MULTILANGUAGE_FIELD_NAMES, ENDS_WITH_OPER, ENTITY_LIST_DEFAULT_INSTANCE_ID, ENTITY_LIST_INSTANCE_QUERY_PARAM, ENVIRONMENT, EQ_OPER, FILE_VIEWER_PREVIEW_EXTENSIONS, GTE_OPER, GT_OPER, IN_OPER, IS_EMPTY_OPER, IS_NOT_EMPTY_OPER, LTE_OPER, LT_OPER, MULTILANGUAGE_CAPABLE_WIDGET_TYPES, NOT_CONTAINS_OPER, NOT_EQ_OPER, NUMBER_OPERATORS, SETTINGS_TRACE_NS, SETTINGS_TRACE_TITLE, STARTS_WITH_OPER, STRING_OPERATORS, UploadFromComputerActionProvider, applyDateFilterPreset, axpBackgroundOperationCapabilities, axpBackgroundOperationDisplayTime, axpBackgroundOperationDurationMs, axpBackgroundOperationEntityName, axpBackgroundOperationEstimateEndDate, axpBackgroundOperationFailurePolicy, axpBackgroundOperationFromEntityModel, axpBackgroundOperationRemainingMs, axpBackgroundOperationStatusTextParams, axpBackgroundOperationToEntityModel, axpBeginCommandSubFlowNavigation, axpBuildBackgroundOperation, axpBuildTabKey, axpClearEntityDetailsNavTrail, axpCloneBreadcrumbItems, axpCoerceBackgroundOperationDate, axpComposeEntityDetailsNavTrail, axpCreateBackgroundOperationId, axpEndCommandSubFlowNavigation, axpEnsureEntityListInstanceQueryParam, axpEntityKeyFromDetailsPath, axpEntityListNavigationTabKey, axpFallbackTabTitle, axpFindMenuItemByRoute, axpFormatBackgroundOperationDurationMs, axpGetBreadcrumbNavigatePath, axpGetEntityDetailsNavTrail, axpGetEntityListInstanceIdFromParamMap, axpGetEntityListInstanceIdFromPath, axpGetEntityListInstanceIdFromQueryString, axpGetEntityListReturnUrl, axpGetLeafRouteSnapshot, axpHasTabScope, axpInterpolateNavigatePath, axpIsActiveBackgroundOperationStatus, axpIsBackgroundOperationI18nText, axpIsCommandSubFlowNavigationSuspended, axpIsCompletedBackgroundOperationStatus, axpIsCompletedPanelBackgroundOperation, axpIsEntityDetailsPath, axpIsEntityDetailsViewRoute, axpIsEntityListPath, axpIsEntityListRoute, axpIsEntityRecordNotFound, axpIsInProgressPanelBackgroundOperation, axpIsLikelyNetworkFailure, axpIsSameEntityDetailsRecord, axpIsTabEligibleUrl, axpIsTrayVisibleBackgroundOperation, axpJoinTabTitleSegments, axpLocalEntityCanServeListLocally, axpLocalEntityHotListRequest, axpLocalEntityIndexedDb, axpLocalEntityRecordId, axpLocalEntitySortAt, axpLocalEntitySupportsOfflineWrite, axpLocalEntityToPayload, axpMenuItemListInstanceId, axpMenuPathsMatch, axpNavigateAppPath, axpNavigateCommandDefinition, axpNormalizeEntityListInstanceId, axpPageGetContextQueryDefinition, axpPageRunActionCommandDefinition, axpParseAppPath, axpParseEntityDetailsRoute, axpParseEntityListRoute, axpPathFromSnapshot, axpPeekCommandSubFlowReturnUrl, axpPlatformSettingsAvailableGuard, axpPrepareOriginNavTrail, axpRedirectToNotFound, axpRedirectToUnauthorized, axpReplaceEntityListRouteQueryParams, axpResolveNavigatePath, axpResolveTabKey, axpResolveTabKeyFromRouteConfig, axpResolveTabKeyFromSnapshot, axpResolveTabTitleParts, axpSaveEntityDetailsNavTrail, axpSaveEntityListReturnUrl, axpSetEntityDetailsPageQuery, axpSettingsIndexedDb, axpSnapshotDeclaresTabScope, axpSplitCollapsedBreadcrumbs, axpStampEntityListMenuInstancePaths, axpStripHomeBreadcrumb, axpStripTrailingCommandlessCrumbs, axpTabScopePathFromSnapshot, axpTrimNavTrailBeforeTarget, backgroundOperationEntityFactory, buildFileStorageDownloadUrl, buildLocalEntityMetaId, buildLocalEntityStorageId, buildScopedSettingsSnapshotId, chooseSystemFiles, coerceAXPSettingRawValue, coerceAXPSettingRawValueByKind, configPlatform, createBackgroundOperationStore, createDefaultSettingValueProviders, createEmptyScopedSettingsSnapshot, createEntityCommandOptions, createEntityRowExpressionScope, createEntitySearchCommand, createFileTypeOpenContext, createIndexedDbSettingValueProviders, createMenuContext, createMenuMiddleware, createUnsavedChangesCanDeactivateGuard, downloadGraphicFromElement, evaluateEntityDisplayTemplate, extractFileExtension, extractHttpRequestErrorInfo, extractRequestErrorInfo, findManualPresetIdByOperation, formatEntityRowDisplayTitle, formatRequestError, hasFileTypeOpenHandler, hydrateSettingsValuesFromIndexedDb, inferSettingCoercionKind, isFileNameShownInViewer, isFileTypeShownInViewer, isFileViewerPreviewExtension, isOneWaySettingsIndexedDbCache, isPendingCascadeFilter, isSettingKeyCacheable, isSettingVisibleOnScope, isStoredImageFileId, normalizeAvailableLanguageCodes, normalizeDocumentFileTypePurposes, normalizeDocumentToFileListItem, normalizeOverridableAt, normalizePositiveNumberOption, normalizeRouterUrl, normalizeStoredImageRef, openSystemFileDialog, peelSettingValueKey, platformErrorI18nKey, primaryLanguageSubtag, printGraphicFromElement, projectSettingsValuesForIndexedDb, provideAXPUserNotificationService, provideDynamicHomePage, provideLocalEntityOfflineRuntime, provideMenuMiddleware, purgeLegacyTenantScopedSettingsSnapshots, resolveDateFilterPresets, resolveEffectiveAvailableLanguageCodes, resolveEntityCreateListBehavior, resolveEntityDetailsRouteAccess, resolveEntityModifyPopupTitle, resolveEntityRowDisplayText, resolveEntityRowDisplayTitle, resolveEntityRowDisplayTitleFromColumnContext, resolveEntitySearchTitleFallback, resolveExplorerFileDisplayName, resolveFileTypeDisplay, resolveFileViewerType, resolveGraphicElementSize, resolveGraphicPrintContent, resolveQueryMatchingDisplayText, resolveSearchDisplayTemplate, resolveSearchableText, resolveStoredImageDisplayUrl, searchInRecordValues, searchInSearchableValue, serializeSvgElement, shouldApplyDefaultMultiLanguageToEntityProperty, shouldApplyDefaultMultiLanguageToWidgetNode, shouldApplyDefaultMultiLanguageToWidgetProperty, shouldPersistSettingsInIndexedDb, stripAccidentalNestedSettingParents, throwIfCommandFailed, toAXPRequestError, toExecuteCommandFailureResult, traceSettingsAppStartupLoadComplete, traceSettingsAppStartupLoadStarted, traceSettingsClientTool, traceSettingsFlush, traceSettingsLocalPersist, traceSettingsPageLoadComplete, traceSettingsPageLoadStarted, traceSettingsPageRouteLoad, traceSettingsRetryScheduled, traceSettingsRevalidateFailed, traceSettingsServerApiCall, traceSettingsServiceLoadComplete, traceSettingsServiceLoadFailed, traceSettingsServiceLoadStarted, traceSettingsServiceReload, traceSettingsSyncFailed, triggerBrowserDownload, tryOpenFileByCatalogType, withDefaultMultiLanguageOnWidgetNodeTree, withDefaultMultiLanguageOnWidgetProperty };
14449
+ export { ALL_DEFAULT_OPERATORS, AXPAcorexFileTypeBridgeProvider, AXPAcorexFileTypeModule, AXPAppVersionService, AXPBackgroundOperationCompletionService, AXPBackgroundOperationEntityStoreService, AXPBackgroundOperationHandler, AXPBackgroundOperationNotificationService, AXPBackgroundOperationProvider, AXPBackgroundOperationRootConfig, AXPBackgroundOperationService, AXPBackgroundOperationSlotComponent, AXPBrowserTitleService, AXPCleanNestedFilters, AXPClipBoardService, AXPCommonModule, AXPCommonSettings, AXPCustomOperatorService, AXPCustomOperatorServiceImpl, AXPDataProvider, AXPDefaultMultiLanguageConfigService, AXPEntityDetailsNavTrailService, AXPErrorHandlerRegistryService, AXPExportService, AXPFileActionsService, AXPFileChooserSettings, AXPFileStorageEvaluatorScopeProvider, AXPFileStorageService, AXPFileTypeProviderService, AXPFilterDefaultOperatorService, AXPFilterOperatorMiddlewareService, AXPFilterOperatorMiddlewareServiceImpl, AXPFooterTextSlotComponent, AXPGlobalErrorHandler, AXPHomePageModule, AXPHomePageService, AXPIndexedDbSettingValueProvider, AXPIntegrationDomainProviderContext, AXPIntegrationDomainRegistryFacade, AXPIntegrationDomainRegistryService, AXPIntegrationOAuthService, AXPIntegrationProviderContext, AXPIntegrationProviderRegistryService, AXPIntegrationRuntimeService, AXPKeyboardShortcutsHelpComponent, AXPKeyboardShortcutsHelpService, AXPLocalEntityEngine, AXPLocalEntityIndexedDb, AXPLocalEntityOfflineRuntime, AXPLocalEntityOutboxService, AXPLocalEntityRealtimeBridge, AXPLockService, AXPLogoImageSrcResolverService, AXPMenuKeyboardShortcutService, AXPMenuMiddlewareRegistry, AXPMenuProviderService, AXPMenuRouteAccessService, AXPMenuRouteGuard, AXPMenuSearchDefinitionProvider, AXPMenuSearchProvider, AXPMenuService, AXPMenuVisibilityService, AXPNavBarSlotComponent, AXPNavigateCommand, AXPNetworkConnectivityService, AXPNotFoundCatchAllRoute, AXPNotFoundError, AXPOutputContractTranscriptSegmentService, AXPPageGetContextQuery, AXPPageRunActionCommand, AXPPlatformBrandingService, AXPPlatformDefaultConfigs, AXPPlatformSettingsLoadState, AXPPlatformSettingsOfflineBootstrapService, AXPQueryEvaluatorScopeProvider, AXPQueryParamsEvaluatorScopeProvider, AXPRegionalCalendarService, AXPSearchCommandProvider, AXPSearchDefinitionActionBuilder, AXPSearchDefinitionBuilder, AXPSearchDefinitionProviderContext, AXPSearchDefinitionProviderService, AXPSearchService, AXPSettingDefaultValuesAggregatorService, AXPSettingDefinitionGroupBuilder, AXPSettingDefinitionProviderContext, AXPSettingDefinitionProviderService, AXPSettingDefinitionSectionBuilder, AXPSettingsBulkSyncService, AXPSettingsEvaluatorScopeProvider, AXPSettingsIndexedDb, AXPSettingsService, AXPStateMessageComponent, AXPStatusDefinitionProviderService, AXPStickyDirective, AXPTabNavigationService, AXPTabPreviewService, AXPTabRouteCacheRegistry, AXPTokenDefinitionService, AXPTokenEvaluatorScopeProvider, AXPTranslateFormatter, AXPUnsavedChangesConfirmService, AXPUnsavedChangesPopstateService, AXPUserNotificationService, AXPUserStatusFeatureService, AXPVersioningService, AXP_AGENT_OUTPUT_CONTRACT_DEFAULT_STRUCTURED_RETRIES, AXP_APP_VERSION_PROVIDER, AXP_BACKGROUND_OPERATION_ENTITY_STORAGE, AXP_BACKGROUND_OPERATION_HANDLERS, AXP_BACKGROUND_OPERATION_PROVIDERS, AXP_BREADCRUMB_COLLAPSE_HEAD_COUNT, AXP_BREADCRUMB_COLLAPSE_TAIL_COUNT, AXP_DOCUMENT_FILE_TYPE_PURPOSES, AXP_ENTITY_LIST_DISPLAY_MODE_DEFAULT, AXP_ENTITY_VIEW_ACCESS, AXP_EXPERIENCE_SETTINGS_GROUP, AXP_EXPERIENCE_SETTINGS_SECTIONS, AXP_FILE_ACTION_PROVIDER, AXP_FILE_TYPE_INFO_PROVIDER, AXP_FILTER_DEFAULT_OPERATORS_WIDGET_NAME, AXP_FILTER_DEFAULT_OPERATOR_WIDGETS, AXP_HOME_PAGES, AXP_HOME_PAGE_DEFAULT_KEY, AXP_HOME_TAB_KEY, AXP_INTEGRATION_CONNECTION_ESTABLISHED, AXP_INTEGRATION_CONNECTION_LIFECYCLE, AXP_INTEGRATION_DOMAIN_PROVIDER, AXP_INTEGRATION_OAUTH_SERVICE, AXP_INTEGRATION_PROVIDER, AXP_INTEGRATION_RUNTIME_PROVIDER, AXP_INTEGRATION_SECRET_STORE, AXP_IN_APP_NOTIFICATION_SERVICE, AXP_LOCALE_MANAGEMENT_PORT, AXP_LOCAL_ENTITY_BROADCAST_CHANNEL, AXP_LOCAL_ENTITY_DEFAULT_MAX_ITEMS, AXP_LOCAL_ENTITY_OUTBOX_LOCK, AXP_MENU_MIDDLEWARE, AXP_MENU_PROVIDER, AXP_NOT_FOUND_CATCH_ALL_ROUTE, AXP_NOT_FOUND_ROUTE, AXP_OUTPUT_CONTRACT_TRANSCRIPT_SEGMENT_PROVIDER, AXP_PLATFORM_BRANDING_SETTING_KEYS, AXP_PLATFORM_CONFIG_TOKEN, AXP_PROTECTED_ROUTE_GUARDS, AXP_ROOT_CONFIG_TOKEN, AXP_RUNTIME_QUERY_CACHE_DEFAULTS, AXP_SEARCH_DEFINITION_LAZY_RESOLVER, AXP_SEARCH_DEFINITION_PROVIDER, AXP_SEARCH_PROVIDER, AXP_SETTINGS_CACHE_SYNC, AXP_SETTINGS_SYNC_DEBOUNCE_MS, AXP_SETTINGS_SYNC_KEYS, AXP_SETTINGS_SYNC_RETRY_BACKOFF_MS, AXP_SETTINGS_SYNC_TTL_MS, AXP_SETTING_DEFAULT_VALUES_PROVIDERS, AXP_SETTING_DEFINITION_PROVIDER, AXP_SETTING_SCOPE_DESCENDANTS, AXP_SETTING_VALUE_PROVIDER, AXP_STATUS_PROVIDERS, AXP_TAB_BREADCRUMB_JOIN_SEPARATOR, AXP_TAB_ROUTE_DATA_KEY, AXP_TOKEN_DEFINITION_PROVIDER, AXP_UNAUTHORIZED_ROUTE, AXP_USER_NOTIFICATION_SERVICE, AXP_USER_STATUS_ENABLED_DEFAULT, AXVChangeType, AX_FILE_TYPE_METADATA_SUPPORT_BY_FILE_VIEWER, BETWEEN_OPER, BOOLEAN_OPERATORS, CONTAINS_OPER, DATE_OPERATORS, DEFAULT_DATE_FILTER_PRESETS, DEFAULT_MULTILANGUAGE_FIELD_NAMES, ENDS_WITH_OPER, ENTITY_LIST_DEFAULT_INSTANCE_ID, ENTITY_LIST_INSTANCE_QUERY_PARAM, ENVIRONMENT, EQ_OPER, FILE_VIEWER_PREVIEW_EXTENSIONS, GTE_OPER, GT_OPER, IN_OPER, IS_EMPTY_OPER, IS_NOT_EMPTY_OPER, LTE_OPER, LT_OPER, MULTILANGUAGE_CAPABLE_WIDGET_TYPES, NOT_CONTAINS_OPER, NOT_EQ_OPER, NUMBER_OPERATORS, SETTINGS_TRACE_NS, SETTINGS_TRACE_TITLE, STARTS_WITH_OPER, STRING_OPERATORS, UploadFromComputerActionProvider, applyDateFilterPreset, axpBackgroundOperationCapabilities, axpBackgroundOperationDisplayTime, axpBackgroundOperationDurationMs, axpBackgroundOperationEntityName, axpBackgroundOperationEstimateEndDate, axpBackgroundOperationFailurePolicy, axpBackgroundOperationFromEntityModel, axpBackgroundOperationRemainingMs, axpBackgroundOperationStatusTextParams, axpBackgroundOperationToEntityModel, axpBeginCommandSubFlowNavigation, axpBuildBackgroundOperation, axpBuildTabKey, axpClearEntityDetailsNavTrail, axpCloneBreadcrumbItems, axpCoerceBackgroundOperationDate, axpComposeEntityDetailsNavTrail, axpCreateBackgroundOperationId, axpEndCommandSubFlowNavigation, axpEnsureEntityListInstanceQueryParam, axpEntityKeyFromDetailsPath, axpEntityListNavigationTabKey, axpFallbackTabTitle, axpFindMenuItemByRoute, axpFormatBackgroundOperationDurationMs, axpGetBreadcrumbNavigatePath, axpGetEntityDetailsNavTrail, axpGetEntityListInstanceIdFromParamMap, axpGetEntityListInstanceIdFromPath, axpGetEntityListInstanceIdFromQueryString, axpGetEntityListReturnUrl, axpGetLeafRouteSnapshot, axpHasTabScope, axpInterpolateNavigatePath, axpIsActiveBackgroundOperationStatus, axpIsBackgroundOperationI18nText, axpIsCommandSubFlowNavigationSuspended, axpIsCompletedBackgroundOperationStatus, axpIsCompletedPanelBackgroundOperation, axpIsEntityDetailsPath, axpIsEntityDetailsViewRoute, axpIsEntityListPath, axpIsEntityListRoute, axpIsEntityRecordNotFound, axpIsInProgressPanelBackgroundOperation, axpIsLikelyNetworkFailure, axpIsSameEntityDetailsRecord, axpIsTabEligibleUrl, axpIsTrayVisibleBackgroundOperation, axpJoinTabTitleSegments, axpLocalEntityCanServeListLocally, axpLocalEntityHotListRequest, axpLocalEntityIndexedDb, axpLocalEntityRecordId, axpLocalEntitySortAt, axpLocalEntitySupportsOfflineWrite, axpLocalEntityToPayload, axpMenuItemListInstanceId, axpMenuPathsMatch, axpNavigateAppPath, axpNavigateCommandDefinition, axpNormalizeEntityListInstanceId, axpPageGetContextQueryDefinition, axpPageRunActionCommandDefinition, axpParseAppPath, axpParseEntityDetailsRoute, axpParseEntityListRoute, axpPathFromSnapshot, axpPeekCommandSubFlowReturnUrl, axpPlatformSettingsAvailableGuard, axpPrepareOriginNavTrail, axpRedirectToNotFound, axpRedirectToUnauthorized, axpReplaceEntityListRouteQueryParams, axpResolveNavigatePath, axpResolveTabKey, axpResolveTabKeyFromRouteConfig, axpResolveTabKeyFromSnapshot, axpResolveTabTitleParts, axpSaveEntityDetailsNavTrail, axpSaveEntityListReturnUrl, axpSetEntityDetailsPageQuery, axpSettingsIndexedDb, axpSnapshotDeclaresTabScope, axpSplitCollapsedBreadcrumbs, axpStampEntityListMenuInstancePaths, axpStripHomeBreadcrumb, axpStripTrailingCommandlessCrumbs, axpTabScopePathFromSnapshot, axpTrimNavTrailBeforeTarget, backgroundOperationEntityFactory, buildFileStorageDownloadUrl, buildLocalEntityMetaId, buildLocalEntityStorageId, buildScopedSettingsSnapshotId, chooseSystemFiles, coerceAXPSettingRawValue, coerceAXPSettingRawValueByKind, configPlatform, createBackgroundOperationStore, createDefaultSettingValueProviders, createEmptyScopedSettingsSnapshot, createEntityCommandOptions, createEntityRowExpressionScope, createEntitySearchCommand, createFileTypeOpenContext, createIndexedDbSettingValueProviders, createMenuContext, createMenuMiddleware, createUnsavedChangesCanDeactivateGuard, downloadGraphicFromElement, evaluateEntityDisplayTemplate, extractFileExtension, extractHttpRequestErrorInfo, extractRequestErrorInfo, findFilterDefaultOperatorWidget, findManualPresetIdByOperation, formatEntityRowDisplayTitle, formatRequestError, hasFileTypeOpenHandler, hydrateSettingsValuesFromIndexedDb, inferSettingCoercionKind, isFileNameShownInViewer, isFileTypeShownInViewer, isFileViewerPreviewExtension, isOneWaySettingsIndexedDbCache, isPendingCascadeFilter, isSettingKeyCacheable, isSettingVisibleOnScope, isStoredImageFileId, normalizeAvailableLanguageCodes, normalizeDocumentFileTypePurposes, normalizeDocumentToFileListItem, normalizeOverridableAt, normalizePositiveNumberOption, normalizeRouterUrl, normalizeStoredImageRef, openSystemFileDialog, peelSettingValueKey, platformErrorI18nKey, primaryLanguageSubtag, printGraphicFromElement, projectSettingsValuesForIndexedDb, provideAXPUserNotificationService, provideDynamicHomePage, provideLocalEntityOfflineRuntime, provideMenuMiddleware, purgeLegacyTenantScopedSettingsSnapshots, readFilterDefaultOperatorMap, resolveDateFilterPresets, resolveEffectiveAvailableLanguageCodes, resolveEntityCreateListBehavior, resolveEntityDetailsRouteAccess, resolveEntityModifyPopupTitle, resolveEntityRowDisplayText, resolveEntityRowDisplayTitle, resolveEntityRowDisplayTitleFromColumnContext, resolveEntitySearchTitleFallback, resolveExplorerFileDisplayName, resolveFileTypeDisplay, resolveFileViewerType, resolveGraphicElementSize, resolveGraphicPrintContent, resolveQueryMatchingDisplayText, resolveSearchDisplayTemplate, resolveSearchableText, resolveStoredFilterDefaultOperator, resolveStoredImageDisplayUrl, searchInRecordValues, searchInSearchableValue, serializeSvgElement, shouldApplyDefaultMultiLanguageToEntityProperty, shouldApplyDefaultMultiLanguageToWidgetNode, shouldApplyDefaultMultiLanguageToWidgetProperty, shouldPersistSettingsInIndexedDb, stripAccidentalNestedSettingParents, throwIfCommandFailed, toAXPRequestError, toExecuteCommandFailureResult, traceSettingsAppStartupLoadComplete, traceSettingsAppStartupLoadStarted, traceSettingsClientTool, traceSettingsFlush, traceSettingsLocalPersist, traceSettingsPageLoadComplete, traceSettingsPageLoadStarted, traceSettingsPageRouteLoad, traceSettingsRetryScheduled, traceSettingsRevalidateFailed, traceSettingsServerApiCall, traceSettingsServiceLoadComplete, traceSettingsServiceLoadFailed, traceSettingsServiceLoadStarted, traceSettingsServiceReload, traceSettingsSyncFailed, triggerBrowserDownload, tryOpenFileByCatalogType, withDefaultMultiLanguageOnWidgetNodeTree, withDefaultMultiLanguageOnWidgetProperty, withFilterDefaultOperator, writeFilterDefaultOperatorOverride };
14283
14450
  //# sourceMappingURL=acorex-platform-framework-client-common.mjs.map