@dereekb/dbx-core 13.11.14 → 13.11.15

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.
@@ -80,6 +80,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
80
80
  * Registers the config token, the concrete loader, and the abstract
81
81
  * {@link AssetLoader} token pointing to the concrete implementation.
82
82
  *
83
+ * @param config - Optional configuration for the asset loader. Defaults to loading from `/assets/`.
84
+ * @returns Angular environment providers that register the {@link AssetLoader} and its configuration.
85
+ *
83
86
  * @example
84
87
  * ```ts
85
88
  * export const appConfig: ApplicationConfig = {
@@ -88,9 +91,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
88
91
  * ]
89
92
  * };
90
93
  * ```
91
- *
92
- * @param config - Optional configuration for the asset loader. Defaults to loading from `/assets/`.
93
- * @returns Angular environment providers that register the {@link AssetLoader} and its configuration.
94
94
  */
95
95
  function provideDbxAssetLoader(config = {}) {
96
96
  const providers = [
@@ -107,17 +107,20 @@ function provideDbxAssetLoader(config = {}) {
107
107
  *
108
108
  * Must be run in an Angular injection context.
109
109
  *
110
+ * @param input - The Destroyable object or destroy function to register for cleanup.
111
+ * @returns The same input, for chaining.
112
+ *
110
113
  * @example
114
+ * ```ts
111
115
  * // Clean up a Destroyable object (e.g., SubscriptionObject, LockSet):
112
116
  * const sub = new SubscriptionObject(obs$.subscribe(handler));
113
117
  * clean(sub);
114
- *
118
+ * ```
115
119
  * @example
120
+ * ```ts
116
121
  * // Clean up a destroy function directly:
117
122
  * clean(() => resource.release());
118
- *
119
- * @param input - The Destroyable object or destroy function to register for cleanup.
120
- * @returns The same input, for chaining.
123
+ * ```
121
124
  */
122
125
  function clean(input) {
123
126
  const destroyRef = inject(DestroyRef);
@@ -135,16 +138,19 @@ function clean(input) {
135
138
  *
136
139
  * Must be run in an Angular injection context.
137
140
  *
141
+ * @param input - The Subject to register for completion on destroy.
142
+ * @returns The same input, for chaining.
143
+ *
138
144
  * @example
145
+ * ```ts
139
146
  * // Complete a BehaviorSubject when the component is destroyed:
140
147
  * readonly value$ = completeOnDestroy(new BehaviorSubject<string>('initial'));
141
- *
148
+ * ```
142
149
  * @example
150
+ * ```ts
143
151
  * // Complete a ReplaySubject when the component is destroyed:
144
152
  * readonly events$ = completeOnDestroy(new ReplaySubject<Event>(1));
145
- *
146
- * @param input - The Subject to register for completion on destroy.
147
- * @returns The same input, for chaining.
153
+ * ```
148
154
  */
149
155
  function completeOnDestroy(input) {
150
156
  clean(() => input.complete());
@@ -157,16 +163,17 @@ function completeOnDestroy(input) {
157
163
  *
158
164
  * Must be run within an Angular injection context.
159
165
  *
166
+ * @param sub - Optional subscription or getter to wrap.
167
+ * @returns A SubscriptionObject that is automatically destroyed when the context is destroyed.
168
+ *
160
169
  * @example
170
+ * ```ts
161
171
  * // Pass a subscription directly - it will be cleaned up automatically:
162
172
  * cleanSubscription(obs$.subscribe(handler));
163
- *
164
173
  * // Or create first, then set the subscription later:
165
174
  * readonly _sub = cleanSubscription();
166
175
  * this._sub.subscription = obs$.subscribe(handler);
167
- *
168
- * @param sub - Optional subscription or getter to wrap.
169
- * @returns A SubscriptionObject that is automatically destroyed when the context is destroyed.
176
+ * ```
170
177
  */
171
178
  function cleanSubscription(sub) {
172
179
  const subscription = getValueFromGetter(sub);
@@ -184,14 +191,17 @@ function cleanSubscription(sub) {
184
191
  * @returns A CleanLockSet that is automatically destroyed when the context is destroyed.
185
192
  *
186
193
  * @example
194
+ * ```ts
187
195
  * // Create a simple lockset:
188
196
  * readonly lockSet = cleanLockSet();
189
- *
197
+ * ```
190
198
  * @example
199
+ * ```ts
191
200
  * // Create with a callback when the lockset is destroyed:
192
201
  * readonly lockSet = cleanLockSet({
193
202
  * onLockSetDestroy: () => console.log('lockset destroyed')
194
203
  * });
204
+ * ```
195
205
  */
196
206
  function cleanLockSet(config) {
197
207
  const { onDestroy, onLockSetDestroy, destroyLocksetTiming } = config ?? {};
@@ -217,12 +227,14 @@ function cleanLockSet(config) {
217
227
  *
218
228
  * Must be run within an Angular injection context.
219
229
  *
220
- * @param lockSet The lockset to use.
221
- * @param onDestroy The function to run when the lockset is unlocked.
230
+ * @param lockSet - The lockset to use.
231
+ * @param onDestroy - The function to run when the lockset is unlocked.
222
232
  *
223
233
  * @example
234
+ * ```ts
224
235
  * // Defer cleanup until the lockset unlocks after component destroy:
225
236
  * cleanWithLockSet(this.lockSet, () => resource.release());
237
+ * ```
226
238
  */
227
239
  function cleanWithLockSet(lockSet, onDestroy) {
228
240
  const destroyRef = inject(DestroyRef);
@@ -237,20 +249,23 @@ function cleanWithLockSet(lockSet, onDestroy) {
237
249
  *
238
250
  * Must be run within an Angular injection context.
239
251
  *
252
+ * @param input - Configuration specifying the lock set and optional initial subscription.
253
+ * @returns A SubscriptionObject that is destroyed when the context is destroyed and the lock set unlocks.
254
+ *
240
255
  * @example
256
+ * ```ts
241
257
  * // Pass a subscription that waits for the lockset to unlock before cleanup:
242
258
  * readonly _sub = cleanSubscriptionWithLockSet({
243
259
  * lockSet: this.lockSet,
244
260
  * sub: obs$.subscribe(handler)
245
261
  * });
246
- *
262
+ * ```
247
263
  * @example
264
+ * ```ts
248
265
  * // Create first, then set the subscription later:
249
266
  * readonly _sub = cleanSubscriptionWithLockSet({ lockSet: this.lockSet });
250
267
  * this._sub.subscription = obs$.subscribe(handler);
251
- *
252
- * @param input - Configuration specifying the lock set and optional initial subscription.
253
- * @returns A SubscriptionObject that is destroyed when the context is destroyed and the lock set unlocks.
268
+ * ```
254
269
  */
255
270
  function cleanSubscriptionWithLockSet(input) {
256
271
  const subscription = getValueFromGetter(input.sub);
@@ -264,17 +279,20 @@ function cleanSubscriptionWithLockSet(input) {
264
279
  *
265
280
  * Must be run within an Angular injection context.
266
281
  *
282
+ * @param input - Optional loading state context input configuration.
283
+ * @returns A mutable loading state context that is automatically destroyed on cleanup.
284
+ *
267
285
  * @example
286
+ * ```ts
268
287
  * // Create with an observable source:
269
288
  * readonly context = cleanLoadingContext<MyData>(this.data$);
270
- *
289
+ * ```
271
290
  * @example
291
+ * ```ts
272
292
  * // Create empty, then set the observable source later:
273
293
  * readonly context = cleanLoadingContext<MyData>();
274
294
  * this.context.obs = this.data$;
275
- *
276
- * @param input - Optional loading state context input configuration.
277
- * @returns A mutable loading state context that is automatically destroyed on cleanup.
295
+ * ```
278
296
  */
279
297
  function cleanLoadingContext(input) {
280
298
  return clean(loadingStateContext(input));
@@ -284,17 +302,20 @@ function cleanLoadingContext(input) {
284
302
  *
285
303
  * Must be run within an Angular injection context.
286
304
  *
305
+ * @param input - Optional list loading state context input configuration.
306
+ * @returns A mutable list loading state context that is automatically destroyed on cleanup.
307
+ *
287
308
  * @example
309
+ * ```ts
288
310
  * // Create with an observable source:
289
311
  * readonly listContext = cleanListLoadingContext<MyItem>(this.items$);
290
- *
312
+ * ```
291
313
  * @example
314
+ * ```ts
292
315
  * // Create empty, then set the observable source later:
293
316
  * readonly listContext = cleanListLoadingContext<MyItem>();
294
317
  * this.listContext.obs = this.items$;
295
- *
296
- * @param input - Optional list loading state context input configuration.
297
- * @returns A mutable list loading state context that is automatically destroyed on cleanup.
318
+ * ```
298
319
  */
299
320
  function cleanListLoadingContext(input) {
300
321
  return clean(listLoadingStateContext(input));
@@ -305,17 +326,20 @@ function cleanListLoadingContext(input) {
305
326
  *
306
327
  * Must be run within an Angular injection context.
307
328
  *
329
+ * @param input - Optional destroy function to wrap.
330
+ * @returns A DestroyFunctionObject that will be automatically destroyed when the context is destroyed.
331
+ *
308
332
  * @example
333
+ * ```ts
309
334
  * // Pass a destroy function directly:
310
335
  * cleanDestroy(() => resource.release());
311
- *
336
+ * ```
312
337
  * @example
338
+ * ```ts
313
339
  * // Create first, then set the destroy function later:
314
340
  * readonly _destroy = cleanDestroy();
315
341
  * this._destroy.setDestroyFunction(() => resource.release());
316
- *
317
- * @param input - Optional destroy function to wrap.
318
- * @returns A DestroyFunctionObject that will be automatically destroyed when the context is destroyed.
342
+ * ```
319
343
  */
320
344
  function cleanDestroy(input) {
321
345
  const destroyFunction = new DestroyFunctionObject(input);
@@ -355,10 +379,11 @@ class SecondaryActionContextStoreSource extends ActionContextStoreSource {
355
379
  /**
356
380
  * Filters null/undefined values from an observable of {@link ActionContextStore} instances.
357
381
  *
358
- * @typeParam T - The input value type.
359
- * @typeParam O - The output result type.
360
382
  * @param obs - The observable that may emit null/undefined store values.
361
383
  * @returns An observable that only emits non-null store instances.
384
+ *
385
+ * @typeParam T - The input value type.
386
+ * @typeParam O - The output result type.
362
387
  */
363
388
  function actionContextStoreSourcePipe(obs) {
364
389
  return obs.pipe(filterMaybe());
@@ -369,12 +394,13 @@ function actionContextStoreSourcePipe(obs) {
369
394
  * Subscribes to the source's store observable and applies the provided function
370
395
  * via switchMap, automatically switching to the latest store.
371
396
  *
372
- * @typeParam R - The return type of the derived observable.
373
- * @typeParam T - The input value type.
374
- * @typeParam O - The output result type.
375
397
  * @param source - The action context store source to read from.
376
398
  * @param pipeFn - The function to apply to each emitted store.
377
399
  * @returns An observable of the derived value.
400
+ *
401
+ * @typeParam R - The return type of the derived observable.
402
+ * @typeParam T - The input value type.
403
+ * @typeParam O - The output result type.
378
404
  */
379
405
  function pipeActionStore(source, pipeFn) {
380
406
  return source.store$.pipe(switchMap(pipeFn));
@@ -385,11 +411,12 @@ function pipeActionStore(source, pipeFn) {
385
411
  * This is a convenience for performing one-shot imperative operations on the store,
386
412
  * such as triggering an action or setting a value, without maintaining a long-lived subscription.
387
413
  *
388
- * @typeParam T - The input value type.
389
- * @typeParam O - The output result type.
390
414
  * @param source - The action context store source to read from.
391
415
  * @param useFn - The function to invoke with the store.
392
416
  * @returns The subscription (completes after first emission).
417
+ *
418
+ * @typeParam T - The input value type.
419
+ * @typeParam O - The output result type.
393
420
  */
394
421
  function useActionStore(source, useFn) {
395
422
  return source.store$.pipe(first()).subscribe(useFn);
@@ -658,10 +685,10 @@ class DbxActionAutoTriggerDirective {
658
685
  useFastTriggerPreset = input(false, { ...(ngDevMode ? { debugName: "useFastTriggerPreset" } : /* istanbul ignore next */ {}), transform: isDefinedAndNotFalse });
659
686
  useInstantTriggerPreset = input(false, { ...(ngDevMode ? { debugName: "useInstantTriggerPreset" } : /* istanbul ignore next */ {}), transform: isDefinedAndNotFalse });
660
687
  triggerDebounceSignal = computed(() => {
688
+ const useFastTrigger = this.useFastTriggerPreset();
689
+ const useInstantTrigger = this.useInstantTriggerPreset();
661
690
  let debounce = this.triggerDebounce();
662
691
  if (debounce == null) {
663
- const useFastTrigger = this.useFastTriggerPreset();
664
- const useInstantTrigger = this.useInstantTriggerPreset();
665
692
  if (useFastTrigger) {
666
693
  debounce = DBX_ACTION_AUTO_TRIGGER_FAST_TRIGGER_DEBOUNCE;
667
694
  }
@@ -672,10 +699,10 @@ class DbxActionAutoTriggerDirective {
672
699
  return debounce ?? DEFAULT_DEBOUNCE_MS;
673
700
  }, ...(ngDevMode ? [{ debugName: "triggerDebounceSignal" }] : /* istanbul ignore next */ []));
674
701
  triggerThrottleSignal = computed(() => {
702
+ const useFastTrigger = this.useFastTriggerPreset();
703
+ const useInstantTrigger = this.useInstantTriggerPreset();
675
704
  let throttle = this.triggerThrottle();
676
705
  if (throttle == null) {
677
- const useFastTrigger = this.useFastTriggerPreset();
678
- const useInstantTrigger = this.useInstantTriggerPreset();
679
706
  if (useFastTrigger) {
680
707
  throttle = DBX_ACTION_AUTO_TRIGGER_FAST_TRIGGER_DEBOUNCE;
681
708
  }
@@ -775,8 +802,8 @@ class DbxActionWorkInstanceDelegate {
775
802
  /**
776
803
  * Creates a working progress value from an array of working progress values.
777
804
  *
778
- * @param workOrWorkProgress The array of working progress values to use.
779
- * @param progressPercent An optional progress percent value to use if the working progress is a boolean.
805
+ * @param workOrWorkProgress - The array of working progress values to use.
806
+ * @param progressPercent - An optional progress percent value to use if the working progress is a boolean.
780
807
  * @returns The working progress value.
781
808
  */
782
809
  function dbxActionWorkProgress(workOrWorkProgress, progressPercent) {
@@ -871,17 +898,21 @@ const DEFAULT_ACTION_DISABLED_KEY = 'dbx_action_disabled';
871
898
  * @returns `true` if the state is idle-like, `false` if the action is in-progress.
872
899
  */
873
900
  function isIdleActionState(actionState) {
901
+ let result;
874
902
  switch (actionState) {
875
903
  case DbxActionState.IDLE:
876
904
  case DbxActionState.DISABLED:
877
905
  case DbxActionState.REJECTED:
878
906
  case DbxActionState.RESOLVED:
879
- return true;
907
+ result = true;
908
+ break;
880
909
  case DbxActionState.TRIGGERED:
881
910
  case DbxActionState.VALUE_READY:
882
911
  case DbxActionState.WORKING:
883
- return false;
912
+ result = false;
913
+ break;
884
914
  }
915
+ return result;
885
916
  }
886
917
  /**
887
918
  * Maps a {@link DbxActionState} to the corresponding {@link LoadingStateType}.
@@ -1023,9 +1054,10 @@ function actionContextHasNoErrorAndIsModifiedAndCanTrigger(state) {
1023
1054
  * - IDLE/DISABLED -> idle loading state
1024
1055
  * - All other states -> loading (with optional work progress)
1025
1056
  *
1026
- * @typeParam O - The output result type.
1027
1057
  * @param state - The action context state to convert.
1028
1058
  * @returns A loading state representation of the action context state.
1059
+ *
1060
+ * @typeParam O - The output result type.
1029
1061
  */
1030
1062
  function loadingStateForActionContextState(state) {
1031
1063
  let loadingState;
@@ -1059,7 +1091,7 @@ function loadingStateForActionContextState(state) {
1059
1091
  function loadingStateTypeForActionContextState(state) {
1060
1092
  return loadingStateTypeForActionState(state.actionState);
1061
1093
  }
1062
- const INITIAL_STATE = {
1094
+ const INITIAL_STATE$2 = {
1063
1095
  isModified: false,
1064
1096
  actionState: DbxActionState.IDLE
1065
1097
  };
@@ -1105,7 +1137,7 @@ class ActionContextStore extends ComponentStore {
1105
1137
  }
1106
1138
  });
1107
1139
  constructor() {
1108
- super({ ...INITIAL_STATE });
1140
+ super({ ...INITIAL_STATE$2 });
1109
1141
  this.lockSet.addLock('working', this.isWorking$);
1110
1142
  }
1111
1143
  // MARK: Accessors
@@ -1286,7 +1318,7 @@ class ActionContextStore extends ComponentStore {
1286
1318
  /**
1287
1319
  * Completely resets the store.
1288
1320
  */
1289
- reset = this.updater(() => ({ ...INITIAL_STATE }));
1321
+ reset = this.updater(() => ({ ...INITIAL_STATE$2 }));
1290
1322
  // MARK: Utility
1291
1323
  afterDistinctBoolean(fromState) {
1292
1324
  return this.state$.pipe(map((x) => fromState(x)), distinctUntilChanged(), shareReplay(1));
@@ -1483,17 +1515,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
1483
1515
  * When `sourceType` is provided, the existing class is registered as the source. When `null`,
1484
1516
  * a standalone {@link DbxActionContextMachineAsService} is created as the default implementation.
1485
1517
  *
1486
- * @param sourceType - The concrete source class to register, or `null` to use the default machine-based implementation
1487
- * @returns An array of Angular providers
1518
+ * @param sourceType - The concrete source class to register, or `null` to use the default machine-based implementation.
1519
+ * @returns Array of Angular providers.
1488
1520
  *
1489
- * @example
1490
- * ```typescript
1491
- * @Directive({
1521
+ * @Directive ({
1492
1522
  * selector: '[myAction]',
1493
1523
  * providers: provideActionStoreSource(MyActionDirective),
1494
1524
  * })
1495
1525
  * export class MyActionDirective extends ActionContextStoreSource { ... }
1496
1526
  * ```
1527
+ *
1528
+ * @example
1529
+ * ```typescript
1497
1530
  */
1498
1531
  function provideActionStoreSource(sourceType) {
1499
1532
  const storeSourceProvider = sourceType != null
@@ -1518,8 +1551,8 @@ function provideActionStoreSource(sourceType) {
1518
1551
  * Creates Angular DI providers for a {@link SecondaryActionContextStoreSource} along with
1519
1552
  * the standard {@link ActionContextStoreSource} and {@link DbxActionContextStoreSourceInstance} providers.
1520
1553
  *
1521
- * @param sourceType - The concrete secondary source class to register
1522
- * @returns An array of Angular providers
1554
+ * @param sourceType - The concrete secondary source class to register.
1555
+ * @returns Array of Angular providers.
1523
1556
  */
1524
1557
  function provideSecondaryActionStoreSource(sourceType) {
1525
1558
  return [
@@ -1896,10 +1929,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
1896
1929
  * The reader provides reactive utility functions to aggregate data across all stores
1897
1930
  * in the map (e.g., checking if any store is working, or reducing values from all stores).
1898
1931
  *
1899
- * @typeParam T - The input value type for the actions.
1900
- * @typeParam O - The output result type for the actions.
1901
1932
  * @param actionKeySourceMap$ - Observable (or static value) of the action key to source map.
1902
1933
  * @returns A reader with aggregate query functions over the map's stores.
1934
+ *
1935
+ * @typeParam T - The input value type for the actions.
1936
+ * @typeParam O - The output result type for the actions.
1903
1937
  */
1904
1938
  function actionContextStoreSourceMapReader(actionKeySourceMap$) {
1905
1939
  const sourceMap$ = asObservable(actionKeySourceMap$);
@@ -1922,8 +1956,8 @@ function actionContextStoreSourceMapReader(actionKeySourceMap$) {
1922
1956
  /**
1923
1957
  * Returns an Observable of the results of the mapFn for each source in the actionKeySourceMap$.
1924
1958
  *
1925
- * @param actionKeySourceMap$ Observable of the action key source map.
1926
- * @param mapFn Function to apply to each source.
1959
+ * @param actionKeySourceMap$ - Observable of the action key source map.
1960
+ * @param mapFn - Function to apply to each source.
1927
1961
  * @returns Observable of the results of the mapFn for each source.
1928
1962
  */
1929
1963
  function fromAllActionContextStoreSourceMapSources(actionKeySourceMap$, mapFn) {
@@ -2325,14 +2359,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
2325
2359
  * @param value - The input value to transform.
2326
2360
  * @returns The original value, or `undefined` if the value is an empty string.
2327
2361
  *
2328
- * @example
2329
- * ```typescript
2330
- * @Directive({ selector: '[appHighlight]' })
2362
+ * @Directive ({ selector: '[appHighlight]' })
2331
2363
  * export class HighlightDirective {
2332
2364
  * @Input({ alias: 'appHighlight', transform: transformEmptyStringInputToUndefined })
2333
2365
  * color?: string;
2334
2366
  * }
2335
2367
  * ```
2368
+ *
2369
+ * @example
2370
+ * ```typescript
2336
2371
  */
2337
2372
  const transformEmptyStringInputToUndefined = (value) => (value === '' ? undefined : value);
2338
2373
 
@@ -3116,10 +3151,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
3116
3151
  * The returned reference has a no-op `destroy()` method, making it suitable for cases
3117
3152
  * where the caller does not own the lifecycle of the source instance.
3118
3153
  *
3119
- * @typeParam T - The input value type.
3120
- * @typeParam O - The output result type.
3121
3154
  * @param sourceInstance - The source instance to wrap.
3122
3155
  * @returns A destroyable reference to the source instance.
3156
+ *
3157
+ * @typeParam T - The input value type.
3158
+ * @typeParam O - The output result type.
3159
+ *
3123
3160
  * @__NO_SIDE_EFFECTS__
3124
3161
  */
3125
3162
  function makeDbxActionContextSourceReference(sourceInstance) {
@@ -3132,11 +3169,11 @@ function makeDbxActionContextSourceReference(sourceInstance) {
3132
3169
  /**
3133
3170
  * Type guard that checks whether the given input is a {@link SegueRef} object (as opposed to a raw router link string).
3134
3171
  *
3135
- * @typeParam O - The type of the transition options.
3136
3172
  * @param input - The value to test.
3137
3173
  * @returns `true` if the input is a {@link SegueRef} with a non-empty `ref` property.
3138
3174
  *
3139
3175
  * @see {@link asSegueRef} for converting an input to a SegueRef
3176
+ * @typeParam O - The type of the transition options.
3140
3177
  */
3141
3178
  function isSegueRef(input) {
3142
3179
  return typeof input === 'object' && hasValueOrNotEmpty(input.ref);
@@ -3168,10 +3205,11 @@ function asSegueRefString(input) {
3168
3205
  /**
3169
3206
  * Creates a {@link SegueRef} from a string ref path and optional segue options.
3170
3207
  *
3171
- * @typeParam O - The type of the transition options.
3172
3208
  * @param ref - The string ref path to wrap.
3173
3209
  * @param options - Optional parameters and transition options to include.
3174
3210
  * @returns A new {@link SegueRef} containing the given ref and options.
3211
+ *
3212
+ * @typeParam O - The type of the transition options.
3175
3213
  */
3176
3214
  function refStringToSegueRef(ref, options) {
3177
3215
  return { ...options, ref };
@@ -3179,12 +3217,12 @@ function refStringToSegueRef(ref, options) {
3179
3217
  /**
3180
3218
  * Maps an observable of string ref paths to an observable of {@link SegueRef} objects.
3181
3219
  *
3182
- * @typeParam O - The type of the transition options.
3183
3220
  * @param obs - The source observable emitting string ref paths.
3184
3221
  * @param options - Optional parameters and transition options to include in each emitted SegueRef.
3185
3222
  * @returns An observable that emits {@link SegueRef} objects.
3186
3223
  *
3187
3224
  * @see {@link refStringToSegueRef}
3225
+ * @typeParam O - The type of the transition options.
3188
3226
  */
3189
3227
  function mapRefStringObsToSegueRefObs(obs, options) {
3190
3228
  return obs.pipe(map((x) => refStringToSegueRef(x, options)));
@@ -3317,6 +3355,9 @@ function makeAuthTransitionHook(config) {
3317
3355
  * redirect targets (static or dynamic) for that state.
3318
3356
  * @returns An {@link AuthTransitionRedirectTargetGetter} that resolves the redirect based on the current auth state.
3319
3357
  *
3358
+ * @see {@link AuthTransitionRedirectTargetOrGetter}
3359
+ * @see {@link AuthUserState}
3360
+ *
3320
3361
  * @example
3321
3362
  * ```ts
3322
3363
  * const redirectGetter = redirectBasedOnAuthUserState({
@@ -3326,9 +3367,6 @@ function makeAuthTransitionHook(config) {
3326
3367
  * 'user': '/app'
3327
3368
  * });
3328
3369
  * ```
3329
- *
3330
- * @see {@link AuthTransitionRedirectTargetOrGetter}
3331
- * @see {@link AuthUserState}
3332
3370
  */
3333
3371
  function redirectBasedOnAuthUserState(stateMap) {
3334
3372
  return (input) => {
@@ -3574,10 +3612,10 @@ var index$3 = /*#__PURE__*/Object.freeze({
3574
3612
  * The feature key for these items/reducers.
3575
3613
  */
3576
3614
  const DBX_APP_CONTEXT_STATE_FEATURE_KEY = 'data';
3577
- const initialState$1 = {
3615
+ const INITIAL_STATE$1 = {
3578
3616
  state: DBX_INIT_APP_CONTEXT_STATE
3579
3617
  };
3580
- const reducer$1 = createReducer(initialState$1,
3618
+ const reducer$1 = createReducer(INITIAL_STATE$1,
3581
3619
  /**
3582
3620
  * When DbxAppContextActions.dbxAppContextSetState is pushed, update the app's state to match the argument state.
3583
3621
  */
@@ -3588,7 +3626,7 @@ on(setState, (_, { state }) => ({ state })));
3588
3626
  */
3589
3627
  const FEATURE_KEY$1 = 'app.context';
3590
3628
  /**
3591
- * Reducers mapping for the DbxAppContextFeatureState
3629
+ * Reducers mapping for the DbxAppContextFeatureState.
3592
3630
  *
3593
3631
  * @param state - The current feature state, or undefined for initialization.
3594
3632
  * @param action - The dispatched action to reduce.
@@ -3633,7 +3671,7 @@ class AbstractOnDbxAppContextStateEffects {
3633
3671
  this._activeStatesSet = iterableToSet(activeStates);
3634
3672
  }
3635
3673
  /**
3636
- * Configures all actions of the sub-class to only activate when the DbxAppContextState in App
3674
+ * Configures all actions of the sub-class to only activate when the DbxAppContextState in App.
3637
3675
  *
3638
3676
  * @param resolvedEffects$
3639
3677
  * @returns
@@ -3778,13 +3816,13 @@ const DBX_APP_AUTH_USER_FEATURE_KEY = 'user';
3778
3816
  * Represents a fully unauthenticated state: no user identifier, not onboarded,
3779
3817
  * in the `'none'` auth state, with no roles assigned.
3780
3818
  */
3781
- const initialState = {
3819
+ const INITIAL_STATE = {
3782
3820
  userId: NO_AUTH_USER_IDENTIFIER,
3783
3821
  isOnboarded: false,
3784
3822
  userState: 'none',
3785
3823
  userRoles: []
3786
3824
  };
3787
- const reducer = createReducer(initialState, on(loggedOut, () => ({ ...initialState })), on(setUserIdentifier, (state, { id: userId }) => ({ ...state, userId })), on(setUserIsOnboarded, (state, { isOnboarded }) => ({ ...state, isOnboarded })), on(setUserState, (state, { state: userState }) => ({ ...state, userState })), on(setUserRoles, (state, { roles: userRoles }) => ({ ...state, userRoles: [...userRoles] })));
3825
+ const reducer = createReducer(INITIAL_STATE, on(loggedOut, () => ({ ...INITIAL_STATE })), on(setUserIdentifier, (state, { id: userId }) => ({ ...state, userId })), on(setUserIsOnboarded, (state, { isOnboarded }) => ({ ...state, isOnboarded })), on(setUserState, (state, { state: userState }) => ({ ...state, userState })), on(setUserRoles, (state, { roles: userRoles }) => ({ ...state, userRoles: [...userRoles] })));
3788
3826
 
3789
3827
  /**
3790
3828
  * NgRx feature key used to register the auth feature state in the global store.
@@ -3835,15 +3873,15 @@ var index = /*#__PURE__*/Object.freeze({
3835
3873
  * resolves it to a single value, and calls `go()` on the router service.
3836
3874
  *
3837
3875
  * @param dbxRouterService - The router service to use for navigation.
3838
- * @returns A function that navigates to the given route and returns a promise resolving to the navigation result.
3876
+ * @returns Navigates to the given route and returns a promise resolving to the navigation result.
3877
+ *
3878
+ * @see {@link GoWithRouter}
3839
3879
  *
3840
3880
  * @example
3841
3881
  * ```ts
3842
3882
  * const navigate = goWithRouter(routerService);
3843
3883
  * await navigate({ ref: 'app.dashboard' });
3844
3884
  * ```
3845
- *
3846
- * @see {@link GoWithRouter}
3847
3885
  */
3848
3886
  function goWithRouter(dbxRouterService) {
3849
3887
  return (route) => {
@@ -4034,12 +4072,14 @@ class DbxAppAuthRouterService {
4034
4072
  return this._checkCurrentRouteIgnored(this._ignoredRoutes.value);
4035
4073
  }
4036
4074
  _checkCurrentRouteIgnored(ignoredRefs) {
4075
+ let result = false;
4037
4076
  for (const ref of ignoredRefs) {
4038
4077
  if (this.dbxRouterService.isActive(ref)) {
4039
- return true;
4078
+ result = true;
4079
+ break;
4040
4080
  }
4041
4081
  }
4042
- return false;
4082
+ return result;
4043
4083
  }
4044
4084
  // MARK: Navigate
4045
4085
  /**
@@ -4142,15 +4182,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
4142
4182
  * @param config - Configuration specifying which app context states activate the auth router effects.
4143
4183
  * @returns Angular `EnvironmentProviders` for the auth router state effects.
4144
4184
  *
4185
+ * @see {@link provideDbxAppAuth} for the all-in-one provider that includes this.
4186
+ * @see {@link DbxAppAuthRouterEffects} for the effects that handle auth-based navigation.
4187
+ *
4145
4188
  * @example
4146
4189
  * ```ts
4147
4190
  * provideDbxAppAuthRouterState({
4148
4191
  * activeRoutesToApplyEffects: ['root']
4149
4192
  * });
4150
4193
  * ```
4151
- *
4152
- * @see {@link provideDbxAppAuth} for the all-in-one provider that includes this.
4153
- * @see {@link DbxAppAuthRouterEffects} for the effects that handle auth-based navigation.
4154
4194
  */
4155
4195
  function provideDbxAppAuthRouterState(config) {
4156
4196
  const { activeRoutesToApplyEffects } = config;
@@ -4175,6 +4215,8 @@ function provideDbxAppAuthRouterState(config) {
4175
4215
  * @param config - Configuration containing the auth routes to register.
4176
4216
  * @returns Angular `EnvironmentProviders` for the auth router.
4177
4217
  *
4218
+ * @see {@link provideDbxAppAuth} for the all-in-one provider that includes this.
4219
+ *
4178
4220
  * @example
4179
4221
  * ```ts
4180
4222
  * provideDbxAppAuthRouter({
@@ -4184,8 +4226,6 @@ function provideDbxAppAuthRouterState(config) {
4184
4226
  * }
4185
4227
  * });
4186
4228
  * ```
4187
- *
4188
- * @see {@link provideDbxAppAuth} for the all-in-one provider that includes this.
4189
4229
  */
4190
4230
  function provideDbxAppAuthRouter(config) {
4191
4231
  const { dbxAppAuthRoutes } = config;
@@ -4359,6 +4399,10 @@ function provideDbxAppAuthState() {
4359
4399
  * @param config - Combined auth configuration including routes and active states for effects.
4360
4400
  * @returns Angular `EnvironmentProviders` to be included in the application's provider list.
4361
4401
  *
4402
+ * @see {@link provideDbxAppAuthState}
4403
+ * @see {@link provideDbxAppAuthRouter}
4404
+ * @see {@link provideDbxAppAuthRouterState}
4405
+ *
4362
4406
  * @example
4363
4407
  * ```ts
4364
4408
  * // In your app config or module:
@@ -4370,10 +4414,6 @@ function provideDbxAppAuthState() {
4370
4414
  * activeRoutesToApplyEffects: ['root']
4371
4415
  * });
4372
4416
  * ```
4373
- *
4374
- * @see {@link provideDbxAppAuthState}
4375
- * @see {@link provideDbxAppAuthRouter}
4376
- * @see {@link provideDbxAppAuthRouterState}
4377
4417
  */
4378
4418
  function provideDbxAppAuth(config) {
4379
4419
  const { dbxAppAuthRoutes, activeRoutesToApplyEffects } = config;
@@ -4548,16 +4588,17 @@ class DbxButton {
4548
4588
  * Creates Angular providers that register a {@link DbxButton} implementation for DI.
4549
4589
  *
4550
4590
  * @param sourceType - The concrete button directive or component class to provide.
4551
- * @returns An array of Angular providers for the button.
4591
+ * @returns Array of Angular providers for the button.
4552
4592
  *
4553
- * @example
4554
- * ```typescript
4555
- * @Directive({
4593
+ * @Directive ({
4556
4594
  * selector: '[myCustomButton]',
4557
4595
  * providers: provideDbxButton(MyCustomButtonDirective),
4558
4596
  * })
4559
4597
  * export class MyCustomButtonDirective extends AbstractDbxButtonDirective {}
4560
4598
  * ```
4599
+ *
4600
+ * @example
4601
+ * ```typescript
4561
4602
  */
4562
4603
  function provideDbxButton(sourceType) {
4563
4604
  return [
@@ -4648,15 +4689,15 @@ const DBX_ACTION_BUTTON_ECHO_CONFIG = new InjectionToken('DbxActionButtonEchoCon
4648
4689
  /**
4649
4690
  * Creates a provider for the app-wide {@link DbxActionButtonEchoConfig}.
4650
4691
  *
4692
+ * @param config - The echo configuration controlling success/error icon behavior.
4693
+ * @returns An Angular provider that registers the given echo config for all action buttons.
4694
+ *
4651
4695
  * @example
4652
4696
  * ```typescript
4653
4697
  * providers: [
4654
4698
  * provideDbxActionButtonEchoConfig({ onSuccess: { icon: 'done', color: 'ok' }, onError: false })
4655
4699
  * ]
4656
4700
  * ```
4657
- *
4658
- * @param config - The echo configuration controlling success/error icon behavior.
4659
- * @returns An Angular provider that registers the given echo config for all action buttons.
4660
4701
  */
4661
4702
  function provideDbxActionButtonEchoConfig(config) {
4662
4703
  return { provide: DBX_ACTION_BUTTON_ECHO_CONFIG, useValue: config };
@@ -4720,16 +4761,19 @@ class DbxActionButtonDirective extends DbxActionButtonTriggerDirective {
4720
4761
  }
4721
4762
  _resolvedEchoConfig() {
4722
4763
  const instanceConfig = this.dbxActionButtonEcho();
4764
+ let result;
4723
4765
  // false disables all echoes
4724
4766
  if (instanceConfig === false) {
4725
- return { onSuccess: false, onError: false };
4767
+ result = { onSuccess: false, onError: false };
4768
+ }
4769
+ else {
4770
+ const injectedConfig = this._injectedEchoConfig;
4771
+ result = {
4772
+ ...DEFAULT_DBX_ACTION_BUTTON_ECHO_CONFIG,
4773
+ ...injectedConfig,
4774
+ ...instanceConfig
4775
+ };
4726
4776
  }
4727
- const injectedConfig = this._injectedEchoConfig;
4728
- const result = {
4729
- ...DEFAULT_DBX_ACTION_BUTTON_ECHO_CONFIG,
4730
- ...injectedConfig,
4731
- ...instanceConfig
4732
- };
4733
4777
  return result;
4734
4778
  }
4735
4779
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxActionButtonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
@@ -4819,8 +4863,14 @@ class AbstractDbxButtonDirective {
4819
4863
  _disabledSignal = signal(undefined, ...(ngDevMode ? [{ debugName: "_disabledSignal" }] : /* istanbul ignore next */ []));
4820
4864
  _workingSignal = signal(undefined, ...(ngDevMode ? [{ debugName: "_workingSignal" }] : /* istanbul ignore next */ []));
4821
4865
  _buttonDisplayContentSignal = signal(undefined, ...(ngDevMode ? [{ debugName: "_buttonDisplayContentSignal" }] : /* istanbul ignore next */ []));
4822
- disabledSignal = computed(() => this._disabledSignal() ?? this.disabled(), ...(ngDevMode ? [{ debugName: "disabledSignal" }] : /* istanbul ignore next */ []));
4823
- workingSignal = computed(() => this._workingSignal() ?? this.working(), ...(ngDevMode ? [{ debugName: "workingSignal" }] : /* istanbul ignore next */ []));
4866
+ disabledSignal = computed(() => {
4867
+ const disabled = this.disabled();
4868
+ return this._disabledSignal() ?? disabled;
4869
+ }, ...(ngDevMode ? [{ debugName: "disabledSignal" }] : /* istanbul ignore next */ []));
4870
+ workingSignal = computed(() => {
4871
+ const working = this.working();
4872
+ return this._workingSignal() ?? working;
4873
+ }, ...(ngDevMode ? [{ debugName: "workingSignal" }] : /* istanbul ignore next */ []));
4824
4874
  isWorkingSignal = computed(() => {
4825
4875
  const working = this.workingSignal();
4826
4876
  return isDefinedAndNotFalse(working);
@@ -5066,7 +5116,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
5066
5116
  /**
5067
5117
  * Creates EnvironmentProviders for providing the DbxAppContext state.
5068
5118
  *
5069
- * @returns EnvironmentProviders
5119
+ * @returns EnvironmentProviders.
5070
5120
  */
5071
5121
  function provideDbxAppContextState() {
5072
5122
  return makeEnvironmentProviders([provideState(FEATURE_KEY$1, reducers$1)]);
@@ -5251,18 +5301,19 @@ class DbxAnchor {
5251
5301
  /**
5252
5302
  * Creates Angular DI providers that register the given source type as a {@link DbxAnchor} provider using `forwardRef`.
5253
5303
  *
5254
- * @typeParam S - The concrete {@link DbxAnchor} subclass to provide.
5255
5304
  * @param sourceType - The class type to register as the anchor provider.
5256
- * @returns An array of Angular providers.
5305
+ * @returns Array of Angular providers.
5257
5306
  *
5258
- * @example
5259
- * ```ts
5260
- * @Directive({
5307
+ * @typeParam S - The concrete {@link DbxAnchor} subclass to provide.
5308
+ * @Directive ({
5261
5309
  * selector: '[myAnchor]',
5262
5310
  * providers: provideDbxAnchor(MyAnchorDirective)
5263
5311
  * })
5264
5312
  * class MyAnchorDirective extends DbxAnchor { ... }
5265
5313
  * ```
5314
+ *
5315
+ * @example
5316
+ * ```ts
5266
5317
  */
5267
5318
  function provideDbxAnchor(sourceType) {
5268
5319
  return [
@@ -5484,10 +5535,14 @@ function redirectForIdentifierParamHook(input) {
5484
5535
  }
5485
5536
  else if (defaultAllowedIdValue !== transitionTargetId) {
5486
5537
  redirectToId = canViewUser(transitionTargetId, authService, injector).pipe(map((x) => {
5538
+ let mapped;
5487
5539
  if (x == null || typeof x === 'boolean') {
5488
- return x ? transitionTargetId : defaultAllowedIdValue;
5540
+ mapped = x ? transitionTargetId : defaultAllowedIdValue;
5541
+ }
5542
+ else {
5543
+ mapped = x;
5489
5544
  }
5490
- return x;
5545
+ return mapped;
5491
5546
  }));
5492
5547
  }
5493
5548
  if (redirectToId != null) {
@@ -5815,6 +5870,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
5815
5870
  *
5816
5871
  * @returns Angular `EnvironmentProviders` for the UIRouter-based router service.
5817
5872
  *
5873
+ * @see {@link DbxUIRouterService}
5874
+ * @see {@link DbxCoreAngularRouterSegueModule} for the Angular Router alternative
5875
+ *
5818
5876
  * @example
5819
5877
  * ```ts
5820
5878
  * bootstrapApplication(AppComponent, {
@@ -5824,8 +5882,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
5824
5882
  * });
5825
5883
  * ```
5826
5884
  *
5827
- * @see {@link DbxUIRouterService}
5828
- * @see {@link DbxCoreAngularRouterSegueModule} for the Angular Router alternative
5829
5885
  * @__NO_SIDE_EFFECTS__
5830
5886
  */
5831
5887
  function provideDbxUIRouterService() {
@@ -5881,12 +5937,12 @@ function filterTransitionEvent(type) {
5881
5937
  * On each successful router transition, checks all configured routes against the router service
5882
5938
  * and emits an array of those that are active. The result is deduplicated by index and shared.
5883
5939
  *
5884
- * @typeParam T - The route configuration type, extending {@link LatestSuccessfulRoutesConfigRoute}.
5885
5940
  * @param config - Configuration specifying the router services and routes to monitor.
5886
5941
  * @returns An observable emitting an array of the currently active route configurations.
5887
5942
  *
5888
5943
  * @see {@link LatestSuccessfulRoutesConfig}
5889
5944
  * @see {@link isLatestSuccessfulRoute} for a boolean variant
5945
+ * @typeParam T - The route configuration type, extending {@link LatestSuccessfulRoutesConfigRoute}.
5890
5946
  */
5891
5947
  function latestSuccessfulRoutes(config) {
5892
5948
  const { dbxRouterTransitionService, dbxRouterService, routes: inputRoutes } = config;
@@ -6188,15 +6244,15 @@ class DbxRouteParamDefaultRedirectInstance {
6188
6244
  /**
6189
6245
  * Default identifier used by dbxRouteModelIdParamRedirect() that corresponds to the id param of the model in the current route.
6190
6246
  */
6191
- const DBX_ROUTE_MODEL_ID_PARAM_DEFAULT_ID_PARAM_KEY = 'id';
6247
+ const DEFAULT_DBX_ROUTE_MODEL_ID_PARAM_ID_PARAM_KEY = 'id';
6192
6248
  /**
6193
6249
  * Default identifier used by dbxRouteModelIdParamRedirect() that corresponds to the key param of the model in the current route.
6194
6250
  */
6195
- const DBX_ROUTE_MODEL_ID_PARAM_DEFAULT_KEY_PARAM_KEY = 'key';
6251
+ const DEFAULT_DBX_ROUTE_MODEL_ID_PARAM_KEY_PARAM_KEY = 'key';
6196
6252
  /**
6197
6253
  * Default value used by dbxRouteModelIdParamRedirect() for when a value is not available or provided.
6198
6254
  */
6199
- const DBX_ROUTE_MODEL_ID_PARAM_DEFAULT_USE_PARAM_VALUE = '0';
6255
+ const DEFAULT_DBX_ROUTE_MODEL_ID_PARAM_USE_PARAM_VALUE = '0';
6200
6256
  /**
6201
6257
  * Creates a {@link DbxRouteModelIdParamRedirectInstance} configured to read a "key" parameter from the current route.
6202
6258
  *
@@ -6208,7 +6264,7 @@ const DBX_ROUTE_MODEL_ID_PARAM_DEFAULT_USE_PARAM_VALUE = '0';
6208
6264
  *
6209
6265
  * @see {@link dbxRouteModelIdParamRedirect}
6210
6266
  */
6211
- function dbxRouteModelKeyParamRedirect(dbxRouterService, defaultParamKey = DBX_ROUTE_MODEL_ID_PARAM_DEFAULT_KEY_PARAM_KEY) {
6267
+ function dbxRouteModelKeyParamRedirect(dbxRouterService, defaultParamKey = DEFAULT_DBX_ROUTE_MODEL_ID_PARAM_KEY_PARAM_KEY) {
6212
6268
  return dbxRouteModelIdParamRedirect(dbxRouterService, defaultParamKey);
6213
6269
  }
6214
6270
  /**
@@ -6225,10 +6281,10 @@ function dbxRouteModelKeyParamRedirect(dbxRouterService, defaultParamKey = DBX_R
6225
6281
  * @see {@link DbxRouteModelIdParamRedirectInstance}
6226
6282
  * @see {@link dbxRouteModelKeyParamRedirect} for the key-based variant
6227
6283
  */
6228
- function dbxRouteModelIdParamRedirect(dbxRouterService, defaultParamKey = DBX_ROUTE_MODEL_ID_PARAM_DEFAULT_ID_PARAM_KEY) {
6284
+ function dbxRouteModelIdParamRedirect(dbxRouterService, defaultParamKey = DEFAULT_DBX_ROUTE_MODEL_ID_PARAM_ID_PARAM_KEY) {
6229
6285
  const _paramReader = dbxRouteParamReaderInstance(dbxRouterService, defaultParamKey);
6230
6286
  const _paramRedirect = new DbxRouteParamDefaultRedirectInstance(_paramReader);
6231
- const _useDefaultParamDecider = new BehaviorSubject(DBX_ROUTE_MODEL_ID_PARAM_DEFAULT_USE_PARAM_VALUE);
6287
+ const _useDefaultParamDecider = new BehaviorSubject(DEFAULT_DBX_ROUTE_MODEL_ID_PARAM_USE_PARAM_VALUE);
6232
6288
  const _useDefaultParam$ = _useDefaultParamDecider.pipe(map((x) => {
6233
6289
  let result;
6234
6290
  if (typeof x === 'string') {
@@ -6309,11 +6365,11 @@ class DbxRouteModelIdDirectiveDelegate {
6309
6365
  /**
6310
6366
  * Creates Angular DI providers that register the given source type as a {@link DbxRouteModelIdDirectiveDelegate}.
6311
6367
  *
6312
- * @typeParam S - The concrete delegate class type to register.
6313
6368
  * @param sourceType - The class to provide as the delegate.
6314
- * @returns An array of Angular providers.
6369
+ * @returns Array of Angular providers.
6315
6370
  *
6316
6371
  * @see {@link DbxRouteModelIdDirectiveDelegate}
6372
+ * @typeParam S - The concrete delegate class type to register.
6317
6373
  */
6318
6374
  function provideDbxRouteModelIdDirectiveDelegate(sourceType) {
6319
6375
  const providers = [
@@ -6352,11 +6408,11 @@ class DbxRouteModelKeyDirectiveDelegate {
6352
6408
  /**
6353
6409
  * Creates Angular DI providers that register the given source type as a {@link DbxRouteModelKeyDirectiveDelegate}.
6354
6410
  *
6355
- * @typeParam S - The concrete delegate class type to register.
6356
6411
  * @param sourceType - The class to provide as the delegate.
6357
- * @returns An array of Angular providers.
6412
+ * @returns Array of Angular providers.
6358
6413
  *
6359
6414
  * @see {@link DbxRouteModelKeyDirectiveDelegate}
6415
+ * @typeParam S - The concrete delegate class type to register.
6360
6416
  */
6361
6417
  function provideDbxRouteModelKeyDirectiveDelegate(sourceType) {
6362
6418
  const providers = [
@@ -6727,6 +6783,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
6727
6783
  class DateFormatDistancePipe {
6728
6784
  locale = inject(LOCALE_ID);
6729
6785
  transform(input, format, includeSeconds = false) {
6786
+ let result = undefined;
6730
6787
  if (input) {
6731
6788
  const date = toJsDate(input);
6732
6789
  if (isValid(date)) {
@@ -6735,10 +6792,10 @@ class DateFormatDistancePipe {
6735
6792
  includeSeconds,
6736
6793
  addSuffix: true
6737
6794
  });
6738
- return `${dateString} (${distance})`;
6795
+ result = `${dateString} (${distance})`;
6739
6796
  }
6740
6797
  }
6741
- return undefined;
6798
+ return result;
6742
6799
  }
6743
6800
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DateFormatDistancePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
6744
6801
  static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.11", ngImport: i0, type: DateFormatDistancePipe, isStandalone: true, name: "dateFormatDistance", pure: false });
@@ -6772,13 +6829,14 @@ class DateFormatFromToPipe {
6772
6829
  locale = inject(LOCALE_ID);
6773
6830
  // eslint-disable-next-line @typescript-eslint/max-params
6774
6831
  static formatFromTo(input, format, minutes, locale) {
6832
+ let result = undefined;
6775
6833
  if (input) {
6776
6834
  const date = toJsDate(input);
6777
6835
  const endDate = addMinutes(date, minutes);
6778
6836
  const dateString = formatDate(date, format, locale);
6779
- return dateString + ' - ' + formatToTimeString(endDate);
6837
+ result = dateString + ' - ' + formatToTimeString(endDate);
6780
6838
  }
6781
- return undefined;
6839
+ return result;
6782
6840
  }
6783
6841
  transform(input, format, minutes) {
6784
6842
  return DateFormatFromToPipe.formatFromTo(input, format, minutes, this.locale);
@@ -7482,16 +7540,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
7482
7540
  * Creates Angular providers that register a {@link FilterSource} implementation for DI.
7483
7541
  *
7484
7542
  * @param sourceType - The concrete filter source class to provide.
7485
- * @returns An array of Angular providers for the filter source.
7543
+ * @returns Array of Angular providers for the filter source.
7486
7544
  *
7487
- * @example
7488
- * ```typescript
7489
- * @Directive({
7545
+ * @Directive ({
7490
7546
  * selector: '[myFilterSource]',
7491
7547
  * providers: provideFilterSource(MyFilterSourceDirective),
7492
7548
  * })
7493
7549
  * export class MyFilterSourceDirective { ... }
7494
7550
  * ```
7551
+ *
7552
+ * @example
7553
+ * ```typescript
7495
7554
  */
7496
7555
  function provideFilterSource(sourceType) {
7497
7556
  return [
@@ -7505,7 +7564,7 @@ function provideFilterSource(sourceType) {
7505
7564
  * Creates Angular providers that register both a {@link FilterSourceConnector} and {@link FilterSource} for DI.
7506
7565
  *
7507
7566
  * @param sourceType - The concrete connector class to provide.
7508
- * @returns An array of Angular providers for the filter source connector.
7567
+ * @returns Array of Angular providers for the filter source connector.
7509
7568
  */
7510
7569
  function provideFilterSourceConnector(sourceType) {
7511
7570
  return [
@@ -7523,7 +7582,7 @@ function provideFilterSourceConnector(sourceType) {
7523
7582
  /**
7524
7583
  * DI token for providing a default filter value to {@link AbstractFilterSourceDirective}.
7525
7584
  */
7526
- const FILTER_SOURCE_DIRECTIVE_DEFAULT_FILTER_TOKEN = new InjectionToken('FILTER_SOURCE_DIRECTIVE_DEFAULT_FILTER_SOURCE_TOKEN');
7585
+ const DEFAULT_FILTER_SOURCE_DIRECTIVE_FILTER_TOKEN = new InjectionToken('FILTER_SOURCE_DIRECTIVE_DEFAULT_FILTER_SOURCE_TOKEN');
7527
7586
  /**
7528
7587
  * Abstract class defining the contract for a filter source directive that can be set, reset, and initialized with filters.
7529
7588
  *
@@ -7537,16 +7596,17 @@ class FilterSourceDirective {
7537
7596
  *
7538
7597
  * @param sourceType - The concrete directive class.
7539
7598
  * @param defaultFilterFactory - Optional factory to provide an initial filter value via DI.
7540
- * @returns An array of Angular providers for the filter source directive.
7599
+ * @returns Array of Angular providers for the filter source directive.
7541
7600
  *
7542
- * @example
7543
- * ```typescript
7544
- * @Directive({
7601
+ * @Directive ({
7545
7602
  * selector: '[myFilterSource]',
7546
7603
  * providers: provideFilterSourceDirective(MyFilterSourceDirective),
7547
7604
  * })
7548
7605
  * export class MyFilterSourceDirective extends AbstractFilterSourceDirective<MyFilter> {}
7549
7606
  * ```
7607
+ *
7608
+ * @example
7609
+ * ```typescript
7550
7610
  */
7551
7611
  function provideFilterSourceDirective(sourceType, defaultFilterFactory) {
7552
7612
  const providers = [
@@ -7558,7 +7618,7 @@ function provideFilterSourceDirective(sourceType, defaultFilterFactory) {
7558
7618
  ];
7559
7619
  if (defaultFilterFactory != null) {
7560
7620
  providers.push({
7561
- provide: FILTER_SOURCE_DIRECTIVE_DEFAULT_FILTER_TOKEN,
7621
+ provide: DEFAULT_FILTER_SOURCE_DIRECTIVE_FILTER_TOKEN,
7562
7622
  useFactory: defaultFilterFactory,
7563
7623
  deps: [Injector]
7564
7624
  });
@@ -7569,12 +7629,12 @@ function provideFilterSourceDirective(sourceType, defaultFilterFactory) {
7569
7629
  * Abstract directive providing a complete {@link FilterSource} implementation backed by a {@link FilterSourceInstance}.
7570
7630
  *
7571
7631
  * Supports setting/resetting filters, initializing from an external observable, and providing
7572
- * a default filter via the {@link FILTER_SOURCE_DIRECTIVE_DEFAULT_FILTER_TOKEN} DI token.
7632
+ * a default filter via the {@link DEFAULT_FILTER_SOURCE_DIRECTIVE_FILTER_TOKEN} DI token.
7573
7633
  *
7574
7634
  * @typeParam F - The filter type.
7575
7635
  */
7576
7636
  class AbstractFilterSourceDirective {
7577
- _defaultFilter = inject(FILTER_SOURCE_DIRECTIVE_DEFAULT_FILTER_TOKEN, { optional: true });
7637
+ _defaultFilter = inject(DEFAULT_FILTER_SOURCE_DIRECTIVE_FILTER_TOKEN, { optional: true });
7578
7638
  _defaultFilterSource = new FilterSourceInstance({
7579
7639
  defaultFilter: this._defaultFilter
7580
7640
  });
@@ -7908,7 +7968,7 @@ const dbxInjectionComponentConfigIsEqual = safeEqualityComparatorFunction((a, b)
7908
7968
  * Provider arrays are concatenated so that all providers from all configs are preserved.
7909
7969
  * All other properties are merged with later values taking precedence.
7910
7970
  *
7911
- * @param configs - An array of partial configs to merge. May contain `undefined`/`null` entries which are filtered out.
7971
+ * @param configs - The partial configs to merge. May contain `undefined`/`null` entries which are filtered out.
7912
7972
  * @returns A single merged partial configuration.
7913
7973
  */
7914
7974
  function mergeDbxInjectionComponentConfigs(configs) {
@@ -7962,13 +8022,17 @@ function createInjectorForInjectionComponentConfig(params) {
7962
8022
  const { config, parentInjector } = params;
7963
8023
  const { injector: inputInjector, providers, data } = config;
7964
8024
  const parent = inputInjector ?? parentInjector;
8025
+ let result;
7965
8026
  if (!providers && data == null) {
7966
- return parent;
8027
+ result = parent;
7967
8028
  }
7968
- return Injector.create({
7969
- parent,
7970
- providers: mergeStaticProviders({ provide: DBX_INJECTION_COMPONENT_DATA, useValue: data }, providers)
7971
- });
8029
+ else {
8030
+ result = Injector.create({
8031
+ parent,
8032
+ providers: mergeStaticProviders({ provide: DBX_INJECTION_COMPONENT_DATA, useValue: data }, providers)
8033
+ });
8034
+ }
8035
+ return result;
7972
8036
  }
7973
8037
  /**
7974
8038
  * Runs the init callback from a {@link DbxInjectionComponentConfig} on the given component ref,
@@ -8288,9 +8352,10 @@ class DbxInjectionContext {
8288
8352
  * This enables dependency injection consumers to request `DbxInjectionContext` and receive
8289
8353
  * the specific directive or service implementation.
8290
8354
  *
8291
- * @typeParam T - The concrete type that extends {@link DbxInjectionContext}.
8292
8355
  * @param type - The concrete class to register as the existing provider.
8293
- * @returns An array of Angular providers.
8356
+ * @returns Array of Angular providers.
8357
+ *
8358
+ * @typeParam T - The concrete type that extends {@link DbxInjectionContext}.
8294
8359
  */
8295
8360
  function provideDbxInjectionContext(type) {
8296
8361
  return [
@@ -8372,7 +8437,7 @@ class DbxInjectionContextDirective {
8372
8437
  * {@inheritDoc DbxInjectionContext.showContext}
8373
8438
  *
8374
8439
  * @param config - The injection context configuration describing the component and its usage.
8375
- * @returns A promise that resolves with the output of the injected component's usage.
8440
+ * @returns Resolves to the output of the injected component's usage.
8376
8441
  */
8377
8442
  async showContext(config) {
8378
8443
  // clear the current context before showing something new.
@@ -8405,7 +8470,7 @@ class DbxInjectionContextDirective {
8405
8470
  });
8406
8471
  this._currentPromise = promiseRef;
8407
8472
  // await the promise
8408
- await promiseRef.promise;
8473
+ result = await promiseRef.promise;
8409
8474
  }
8410
8475
  catch (e) {
8411
8476
  error = e;
@@ -8421,7 +8486,16 @@ class DbxInjectionContextDirective {
8421
8486
  if (error instanceof Error) {
8422
8487
  throw error;
8423
8488
  }
8424
- const message = typeof error === 'object' ? JSON.stringify(error) : String(error);
8489
+ let message;
8490
+ if (error == null) {
8491
+ message = String(error);
8492
+ }
8493
+ else if (typeof error === 'object') {
8494
+ message = JSON.stringify(error);
8495
+ }
8496
+ else {
8497
+ message = String(error);
8498
+ }
8425
8499
  throw new Error(message);
8426
8500
  }
8427
8501
  return result;
@@ -8510,7 +8584,7 @@ class AbstractForwardDbxInjectionContextDirective {
8510
8584
  * {@inheritDoc DbxInjectionContext.showContext}
8511
8585
  *
8512
8586
  * @param config - The injection context configuration to forward to the host context.
8513
- * @returns A promise that resolves with the output of the injected component's usage.
8587
+ * @returns Resolves to the output of the injected component's usage.
8514
8588
  */
8515
8589
  showContext(config) {
8516
8590
  return this.dbxInjectionContext.showContext(config);
@@ -8540,12 +8614,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
8540
8614
  * This is useful for reactive streams where an upstream value may indicate "use the default component"
8541
8615
  * rather than providing an explicit configuration.
8542
8616
  *
8543
- * @typeParam T - The specific {@link DbxInjectionComponentConfig} subtype.
8544
- * @typeParam X - The component type.
8545
8617
  * @param defaultConfig - A static value, getter, or component class to use as the fallback config.
8546
8618
  * @returns An RxJS operator compatible with `pipe()`.
8547
8619
  *
8548
8620
  * @see {@link DbxInjectionComponentConfig}
8621
+ * @typeParam T - The specific {@link DbxInjectionComponentConfig} subtype.
8622
+ * @typeParam X - The component type.
8549
8623
  *
8550
8624
  * @example
8551
8625
  * ```typescript
@@ -8574,11 +8648,12 @@ function switchMapDbxInjectionComponentConfig(defaultConfig) {
8574
8648
  * This is a convenience for one-off instantiation of an injectable class using a specific
8575
8649
  * parent injector, without needing to manually configure `Injector.create()`.
8576
8650
  *
8577
- * @typeParam T - The type to instantiate.
8578
8651
  * @param type - The injectable class to provide and resolve.
8579
8652
  * @param parent - The parent injector that supplies the type's dependencies.
8580
8653
  * @returns A new instance of `T`.
8581
8654
  *
8655
+ * @typeParam T - The type to instantiate.
8656
+ *
8582
8657
  * @example
8583
8658
  * ```typescript
8584
8659
  * const service = newWithInjector(MyService, parentInjector);
@@ -9043,16 +9118,18 @@ class FullLocalStorageObject {
9043
9118
  }
9044
9119
  get isAvailable() {
9045
9120
  const test = '_T_E_S_T_';
9121
+ let result;
9046
9122
  try {
9047
9123
  // Tests setting and removing an item. These will throw an
9048
9124
  // exception if the localstorage is not available
9049
9125
  this._localStorage.setItem(test, test);
9050
9126
  this._localStorage.removeItem(test);
9051
- return true;
9127
+ result = true;
9052
9128
  }
9053
9129
  catch {
9054
- return false;
9130
+ result = false;
9055
9131
  }
9132
+ return result;
9056
9133
  }
9057
9134
  get length() {
9058
9135
  return this._localStorage.length;
@@ -9154,17 +9231,85 @@ function provideDbxStorage() {
9154
9231
  return makeEnvironmentProviders(providers);
9155
9232
  }
9156
9233
 
9234
+ /**
9235
+ * Checks whether an `ng-content` wrapper element received any projected content from its parent.
9236
+ *
9237
+ * Returns `true` if the element has any child nodes, even if the projected content is empty.
9238
+ * Useful for conditionally showing fallback content when no projection is provided.
9239
+ *
9240
+ * @param ref - Reference to the wrapper element around `ng-content`.
9241
+ * @returns `true` if the wrapper element has any child nodes.
9242
+ *
9243
+ * @ViewChild ('contentWrapper', { static: false }) contentRef: ElementRef;
9244
+ *
9245
+ * get hasContent(): boolean {
9246
+ * return checkNgContentWrapperHasContent(this.contentRef);
9247
+ * }
9248
+ * ```
9249
+ *
9250
+ * @example
9251
+ * ```typescript
9252
+ * // In the component class:
9253
+ * @example
9254
+ * ```html
9255
+ * <!-- In the component template: -->
9256
+ * <div #contentWrapper>
9257
+ * <ng-content select="[content]"></ng-content>
9258
+ * </div>
9259
+ * <div *ngIf="!hasContent">No content provided</div>
9260
+ * ```
9261
+ */
9262
+ function checkNgContentWrapperHasContent(ref) {
9263
+ // https://github.com/angular/angular/issues/26083
9264
+ let hasContent = false;
9265
+ if (ref != null) {
9266
+ const childNodes = ref.nativeElement.childNodes;
9267
+ const hasChildNodes = childNodes && childNodes.length > 0;
9268
+ hasContent = Boolean(hasChildNodes);
9269
+ }
9270
+ return hasContent;
9271
+ }
9272
+ /**
9273
+ * Checks whether an element has any meaningful child nodes (non-whitespace text or element nodes).
9274
+ *
9275
+ * Useful for detecting whether projected content was provided to a component by checking
9276
+ * the host element's child nodes at construction time, before Angular moves them for content projection.
9277
+ *
9278
+ * @param element - The host element to check.
9279
+ * @returns `true` if the element has at least one element child or non-whitespace text node.
9280
+ *
9281
+ * @example
9282
+ * ```typescript
9283
+ * constructor() {
9284
+ * const el = inject(ElementRef<HTMLElement>);
9285
+ * this._hasProjectedContent = hasNonTrivialChildNodes(el.nativeElement);
9286
+ * }
9287
+ * ```
9288
+ */
9289
+ function hasNonTrivialChildNodes(element) {
9290
+ const nodes = element.childNodes;
9291
+ let result = false;
9292
+ for (let i = 0; i < nodes.length; i++) {
9293
+ const node = nodes.item(i);
9294
+ if (node.nodeType === Node.ELEMENT_NODE || (node.nodeType === Node.TEXT_NODE && node.textContent?.trim())) {
9295
+ result = true;
9296
+ break;
9297
+ }
9298
+ }
9299
+ return result;
9300
+ }
9301
+ // COMPAT: Deprecated aliases
9157
9302
  /**
9158
9303
  * RxJS operator that triggers `detectChanges()` on a `ChangeDetectorRef` after each emission.
9159
9304
  *
9160
9305
  * Wraps the detection call in a `setTimeout` to avoid triggering it during change detection cycles.
9161
9306
  *
9162
- * @deprecated Use Angular signals instead.
9163
- *
9164
9307
  * @param cdRef - The change detector to trigger. If `null`/`undefined`, the operator is a no-op.
9165
9308
  * @param timeout - Delay in milliseconds before calling `detectChanges`.
9166
9309
  * @returns An RxJS operator that triggers change detection on each emission.
9167
9310
  *
9311
+ * @deprecated Use Angular signals instead.
9312
+ *
9168
9313
  * @example
9169
9314
  * ```typescript
9170
9315
  * this.data$.pipe(tapDetectChanges(this.cdRef)).subscribe();
@@ -9177,9 +9322,9 @@ function tapDetectChanges(cdRef, timeout = 0) {
9177
9322
  /**
9178
9323
  * Safely calls `detectChanges()` on a `ChangeDetectorRef`, skipping the call if the view is already destroyed.
9179
9324
  *
9180
- * @deprecated Use Angular signals instead.
9181
- *
9182
9325
  * @param cdRef - The change detector to trigger.
9326
+ *
9327
+ * @deprecated Use Angular signals instead.
9183
9328
  */
9184
9329
  function safeDetectChanges(cdRef) {
9185
9330
  // eslint-disable-next-line @typescript-eslint/no-deprecated
@@ -9191,12 +9336,12 @@ function safeDetectChanges(cdRef) {
9191
9336
  * Intended for components using `OnPush` change detection that subscribe to observables
9192
9337
  * outside of the `async` pipe. Not needed when using the `async` pipe.
9193
9338
  *
9194
- * @deprecated Use Angular signals instead.
9195
- *
9196
9339
  * @param cdRef - The change detector to mark. If `null`/`undefined`, the operator is a no-op.
9197
9340
  * @param timeout - Delay in milliseconds before calling `markForCheck`.
9198
9341
  * @returns An RxJS operator that marks the view for check on each emission.
9199
9342
  *
9343
+ * @deprecated Use Angular signals instead.
9344
+ *
9200
9345
  * @example
9201
9346
  * ```typescript
9202
9347
  * this.data$.pipe(tapSafeMarkForCheck(this.cdRef)).subscribe();
@@ -9209,9 +9354,9 @@ function tapSafeMarkForCheck(cdRef, timeout = 0) {
9209
9354
  /**
9210
9355
  * Safely calls `markForCheck()` on a `ChangeDetectorRef`, skipping the call if the view is already destroyed.
9211
9356
  *
9212
- * @deprecated Use Angular signals instead.
9213
- *
9214
9357
  * @param cdRef - The change detector to mark.
9358
+ *
9359
+ * @deprecated Use Angular signals instead.
9215
9360
  */
9216
9361
  function safeMarkForCheck(cdRef) {
9217
9362
  // eslint-disable-next-line @typescript-eslint/no-deprecated
@@ -9220,87 +9365,20 @@ function safeMarkForCheck(cdRef) {
9220
9365
  /**
9221
9366
  * Executes a callback with the given `ChangeDetectorRef` only if its view has not been destroyed.
9222
9367
  *
9223
- * @deprecated Use Angular signals instead.
9224
- *
9225
9368
  * @param cdRef - The change detector to guard.
9226
9369
  * @param use - Callback to invoke with the change detector.
9370
+ *
9371
+ * @deprecated Use Angular signals instead.
9227
9372
  */
9228
9373
  function safeUseCdRef(cdRef, use) {
9229
9374
  if (!cdRef.destroyed) {
9230
9375
  use(cdRef);
9231
9376
  }
9232
9377
  }
9233
- /**
9234
- * Checks whether an `ng-content` wrapper element received any projected content from its parent.
9235
- *
9236
- * Returns `true` if the element has any child nodes, even if the projected content is empty.
9237
- * Useful for conditionally showing fallback content when no projection is provided.
9238
- *
9239
- * @param ref - Reference to the wrapper element around `ng-content`.
9240
- * @returns `true` if the wrapper element has any child nodes.
9241
- *
9242
- * @example
9243
- * ```typescript
9244
- * // In the component class:
9245
- * @ViewChild('contentWrapper', { static: false }) contentRef: ElementRef;
9246
- *
9247
- * get hasContent(): boolean {
9248
- * return checkNgContentWrapperHasContent(this.contentRef);
9249
- * }
9250
- * ```
9251
- *
9252
- * @example
9253
- * ```html
9254
- * <!-- In the component template: -->
9255
- * <div #contentWrapper>
9256
- * <ng-content select="[content]"></ng-content>
9257
- * </div>
9258
- * <div *ngIf="!hasContent">No content provided</div>
9259
- * ```
9260
- */
9261
- function checkNgContentWrapperHasContent(ref) {
9262
- // https://github.com/angular/angular/issues/26083
9263
- let hasContent = false;
9264
- if (ref != null) {
9265
- const childNodes = ref.nativeElement.childNodes;
9266
- const hasChildNodes = childNodes && childNodes.length > 0;
9267
- hasContent = Boolean(hasChildNodes);
9268
- }
9269
- return hasContent;
9270
- }
9271
- /**
9272
- * Checks whether an element has any meaningful child nodes (non-whitespace text or element nodes).
9273
- *
9274
- * Useful for detecting whether projected content was provided to a component by checking
9275
- * the host element's child nodes at construction time, before Angular moves them for content projection.
9276
- *
9277
- * @param element - The host element to check.
9278
- * @returns `true` if the element has at least one element child or non-whitespace text node.
9279
- *
9280
- * @example
9281
- * ```typescript
9282
- * constructor() {
9283
- * const el = inject(ElementRef<HTMLElement>);
9284
- * this._hasProjectedContent = hasNonTrivialChildNodes(el.nativeElement);
9285
- * }
9286
- * ```
9287
- */
9288
- function hasNonTrivialChildNodes(element) {
9289
- const nodes = element.childNodes;
9290
- let result = false;
9291
- for (let i = 0; i < nodes.length; i++) {
9292
- const node = nodes.item(i);
9293
- if (node.nodeType === Node.ELEMENT_NODE || (node.nodeType === Node.TEXT_NODE && node.textContent?.trim())) {
9294
- result = true;
9295
- break;
9296
- }
9297
- }
9298
- return result;
9299
- }
9300
9378
 
9301
9379
  /**
9302
9380
  * Generated bundle index. Do not edit.
9303
9381
  */
9304
9382
 
9305
- export { ACTION_CONTEXT_STORE_LOCKSET_DESTROY_DELAY_TIME, APP_ACTION_DISABLED_DIRECTIVE_KEY, APP_ACTION_DISABLED_ON_SUCCESS_DIRECTIVE_KEY, APP_ACTION_ENFORCE_MODIFIED_DIRECTIVE_KEY, AbstractDbxActionHandlerDirective, AbstractDbxActionValueGetterDirective, AbstractDbxAnchorDirective, AbstractDbxButtonDirective, AbstractDbxFilterMapInstanceDirective, AbstractDbxFilterMapSourceDirective, AbstractDbxInjectionDirective, AbstractFilterSourceConnectorDirective, AbstractFilterSourceDirective, AbstractForwardDbxInjectionContextDirective, AbstractIfDirective, AbstractTransitionDirective, AbstractTransitionWatcherDirective, ActionContextStore, ActionContextStoreSource, ActionContextStoreSourceMap, AsObservablePipe, CutTextPipe, DBX_ACTION_BUTTON_ECHO_CONFIG, DBX_ACTION_HANDLER_LOCK_KEY, DBX_APP_APP_CONTEXT_STATE, DBX_APP_AUTH_ROUTER_EFFECTS_TOKEN, DBX_ASSET_LOADER_CONFIG_TOKEN, DBX_AUTH_APP_CONTEXT_STATE, DBX_INIT_APP_CONTEXT_STATE, DBX_INJECTION_COMPONENT_DATA, DBX_KNOWN_APP_CONTEXT_STATES, DBX_OAUTH_APP_CONTEXT_STATE, DBX_ONBOARD_APP_CONTEXT_STATE, DBX_PUBLIC_APP_CONTEXT_STATE, DBX_ROUTE_MODEL_ID_PARAM_DEFAULT_ID_PARAM_KEY, DBX_ROUTE_MODEL_ID_PARAM_DEFAULT_KEY_PARAM_KEY, DBX_ROUTE_MODEL_ID_PARAM_DEFAULT_USE_PARAM_VALUE, DEFAULT_ACTION_DISABLED_KEY, DEFAULT_ACTION_MAP_WORKING_DISABLED_KEY, DEFAULT_DBX_ACTION_BUTTON_ECHO_CONFIG, DEFAULT_DBX_ACTION_BUTTON_ERROR_ECHO, DEFAULT_DBX_ACTION_BUTTON_SUCCESS_ECHO, DEFAULT_DBX_BUTTON_ECHO_DURATION, DEFAULT_LOCAL_ASSET_BASE_URL, DEFAULT_REDIRECT_FOR_IDENTIFIER_PARAM_KEY, DEFAULT_REDIRECT_FOR_IDENTIFIER_PARAM_VALUE, DEFAULT_REDIRECT_FOR_USER_IDENTIFIER_PARAM_KEY, DEFAULT_REDIRECT_FOR_USER_IDENTIFIER_PARAM_VALUE, DEFAULT_STORAGE_ACCESSOR_FACTORY_TOKEN, DEFAULT_STORAGE_OBJECT_TOKEN, DateDayRangePipe, DateDayTimeRangePipe, DateDistancePipe, DateFormatDistancePipe, DateFormatFromToPipe, DateRangeDistancePipe, DateTimeRangeOnlyDistancePipe, DateTimeRangeOnlyPipe, DateTimeRangePipe, DbxActionAutoModifyDirective, DbxActionAutoTriggerDirective, DbxActionButtonDirective, DbxActionButtonTriggerDirective, DbxActionContextBaseSource, DbxActionContextLoggerDirective, DbxActionContextMachine, DbxActionContextMachineAsService, DbxActionContextMapDirective, DbxActionContextStoreSourceInstance, DbxActionDirective, DbxActionDisabledDirective, DbxActionDisabledOnSuccessDirective, DbxActionEnforceModifiedDirective, DbxActionErrorHandlerDirective, DbxActionFromMapDirective, DbxActionHandlerDirective, DbxActionHandlerInstance, DbxActionHandlerValueDirective, DbxActionHasSuccessDirective, DbxActionIdleDirective, DbxActionIsModifiedDirective, DbxActionIsWorkingDirective, DbxActionMapSourceDirective, DbxActionMapWorkingDisableDirective, DbxActionPreSuccessDirective, DbxActionSourceDirective, DbxActionState, DbxActionSuccessHandlerDirective, DbxActionTriggeredDirective, DbxActionValueDirective, DbxActionValueGetterInstance, DbxActionValueStreamDirective, DbxActionValueTriggerDirective, DbxActionWorkInstanceDelegate, DbxAnchor, DbxAngularRouterService, DbxAppAuthRouterEffects, DbxAppAuthRouterService, DbxAppAuthRoutes, DbxAppAuthStateService, DbxAppContextService, DbxAppContextStateDirective, DbxAppEnvironment, DbxAppEnvironmentService, DbxAuthHasAnyRoleDirective, DbxAuthHasRolesDirective, DbxAuthNotAnyRoleDirective, DbxAuthService, DbxButton, DbxButtonDirective, DbxButtonSegueDirective, DbxCoreActionModule, DbxCoreAngularRouterSegueModule, DbxCoreAssetLoader, DbxCoreButtonModule, DbxCoreFilterModule, DbxFilterConnectSourceDirective, DbxFilterMapDirective, DbxFilterMapSourceConnectorDirective, DbxFilterMapSourceDirective, DbxFilterSourceConnectorDirective, DbxFilterSourceDirective, DbxInjectionArrayComponent, DbxInjectionComponent, DbxInjectionContext, DbxInjectionContextDirective, DbxInjectionInstance, DbxLoadingButtonDirective, DbxRouteModelIdDirective, DbxRouteModelIdDirectiveDelegate, DbxRouteModelIdFromAuthUserIdDirective, DbxRouteModelKeyDirective, DbxRouteModelKeyDirectiveDelegate, DbxRouteParamDefaultRedirectInstance, DbxRouterService, DbxRouterTransitionEventType, DbxRouterTransitionService, DbxUIRouterService, DollarAmountPipe, FILTER_SOURCE_DIRECTIVE_DEFAULT_FILTER_TOKEN, FilterSourceDirective, FullLocalStorageObject, GetValueOncePipe, GetValuePipe, InstantStorageAccessor, LimitedStorageAccessor, LockSetComponentStore, MemoryStorageObject, MinutesStringPipe, NO_AUTH_USER_IDENTIFIER, PrettyJsonPipe, SecondaryActionContextStoreSource, SimpleStorageAccessor, SimpleStorageAccessorFactory, StorageAccessor, StringStorageAccessor, StringifySimpleStorageAccessorConverter, SystemDateToTargetDatePipe, TargetDateToSystemDatePipe, TimeDistanceCountdownPipe, TimeDistancePipe, TimezoneAbbreviationPipe, ToJsDatePipe, ToMinutesPipe, WrapperSimpleStorageAccessorDelegate, actionContextHasNoErrorAndIsModifiedAndCanTrigger, actionContextIsModifiedAndCanTrigger, actionContextStoreSourceMap, actionContextStoreSourceMapReader, actionContextStoreSourcePipe, anchorTypeForAnchor, asSegueRef, asSegueRefString, assertValidStorageKeyPrefix, authRolesSetContainsAllRolesFrom, authRolesSetContainsAnyRoleFrom, authRolesSetContainsNoRolesFrom, authUserIdentifier, canReadyValue, canTriggerAction, canTriggerActionState, checkNgContentWrapperHasContent, clean, cleanDestroy, cleanListLoadingContext, cleanLoadingContext, cleanLockSet, cleanSubscription, cleanSubscriptionWithLockSet, cleanWithLockSet, clickableUrlInNewTab, clickableUrlMailTo, clickableUrlTel, completeOnDestroy, createInjectorForInjectionComponentConfig, dbxActionWorkProgress, dbxButtonDisplayType, dbxInjectionComponentConfigIsEqual, dbxRouteModelIdParamRedirect, dbxRouteModelKeyParamRedirect, dbxRouteParamReaderInstance, defaultStorageObjectFactory, enableHasAuthRoleHook, enableHasAuthStateHook, enableIsLoggedInHook, expandClickableAnchorLinkTree, expandClickableAnchorLinkTreeNode, expandClickableAnchorLinkTrees, filterTransitionEvent, filterTransitionSuccess, flattenExpandedClickableAnchorLinkTree, flattenExpandedClickableAnchorLinkTreeToLinks, fromAllActionContextStoreSourceMapSources, index as fromDbxAppAuth, index$2 as fromDbxAppContext, goWithRouter, hasAuthRoleDecisionPipe, hasNonTrivialChildNodes, initInjectionComponent, isActionContextDisabled, isActionContextEnabled, isClickableFilterPreset, isClickablePartialFilterPreset, isDisabledActionContextState, isIdleActionState, isLatestSuccessfulRoute, isSegueRef, isSegueRefActive, isSegueRefActiveFunction, isSegueRefActiveOnTransitionSuccess, isValidStorageKeyPrefix, isWorkingActionState, latestSuccessfulRoutes, loadingStateForActionContextState, loadingStateTypeForActionContextState, loadingStateTypeForActionState, loggedInObsFromIsLoggedIn, loggedOutObsFromIsLoggedIn, makeAuthTransitionHook, makeDbxActionContextSourceReference, mapRefStringObsToSegueRefObs, mergeDbxInjectionComponentConfigs, mergeStaticProviders, newWithInjector, index$1 as onDbxAppAuth, index$3 as onDbxAppContext, onRouterTransitionEventType, onRouterTransitionSuccessEvent, pipeActionStore, provideActionStoreSource, provideDbxActionButtonEchoConfig, provideDbxAnchor, provideDbxAppAuth, provideDbxAppAuthRouter, provideDbxAppAuthRouterState, provideDbxAppAuthState, provideDbxAppContextState, provideDbxAppEnvironment, provideDbxAssetLoader, provideDbxButton, provideDbxInjectionContext, provideDbxRouteModelIdDirectiveDelegate, provideDbxRouteModelKeyDirectiveDelegate, provideDbxStorage, provideDbxUIRouterService, provideFilterSource, provideFilterSourceConnector, provideFilterSourceDirective, provideSecondaryActionStoreSource, redirectBasedOnAuthUserState, redirectForIdentifierParamHook, redirectForUserIdentifierParamHook, refStringToSegueRef, safeDetectChanges, safeMarkForCheck, safeUseCdRef, successTransition, switchMapDbxInjectionComponentConfig, tapDetectChanges, tapSafeMarkForCheck, transformEmptyStringInputToUndefined, useActionStore };
9383
+ export { ACTION_CONTEXT_STORE_LOCKSET_DESTROY_DELAY_TIME, APP_ACTION_DISABLED_DIRECTIVE_KEY, APP_ACTION_DISABLED_ON_SUCCESS_DIRECTIVE_KEY, APP_ACTION_ENFORCE_MODIFIED_DIRECTIVE_KEY, AbstractDbxActionHandlerDirective, AbstractDbxActionValueGetterDirective, AbstractDbxAnchorDirective, AbstractDbxButtonDirective, AbstractDbxFilterMapInstanceDirective, AbstractDbxFilterMapSourceDirective, AbstractDbxInjectionDirective, AbstractFilterSourceConnectorDirective, AbstractFilterSourceDirective, AbstractForwardDbxInjectionContextDirective, AbstractIfDirective, AbstractTransitionDirective, AbstractTransitionWatcherDirective, ActionContextStore, ActionContextStoreSource, ActionContextStoreSourceMap, AsObservablePipe, CutTextPipe, DBX_ACTION_BUTTON_ECHO_CONFIG, DBX_ACTION_HANDLER_LOCK_KEY, DBX_APP_APP_CONTEXT_STATE, DBX_APP_AUTH_ROUTER_EFFECTS_TOKEN, DBX_ASSET_LOADER_CONFIG_TOKEN, DBX_AUTH_APP_CONTEXT_STATE, DBX_INIT_APP_CONTEXT_STATE, DBX_INJECTION_COMPONENT_DATA, DBX_KNOWN_APP_CONTEXT_STATES, DBX_OAUTH_APP_CONTEXT_STATE, DBX_ONBOARD_APP_CONTEXT_STATE, DBX_PUBLIC_APP_CONTEXT_STATE, DEFAULT_ACTION_DISABLED_KEY, DEFAULT_ACTION_MAP_WORKING_DISABLED_KEY, DEFAULT_DBX_ACTION_BUTTON_ECHO_CONFIG, DEFAULT_DBX_ACTION_BUTTON_ERROR_ECHO, DEFAULT_DBX_ACTION_BUTTON_SUCCESS_ECHO, DEFAULT_DBX_BUTTON_ECHO_DURATION, DEFAULT_DBX_ROUTE_MODEL_ID_PARAM_ID_PARAM_KEY, DEFAULT_DBX_ROUTE_MODEL_ID_PARAM_KEY_PARAM_KEY, DEFAULT_DBX_ROUTE_MODEL_ID_PARAM_USE_PARAM_VALUE, DEFAULT_FILTER_SOURCE_DIRECTIVE_FILTER_TOKEN, DEFAULT_LOCAL_ASSET_BASE_URL, DEFAULT_REDIRECT_FOR_IDENTIFIER_PARAM_KEY, DEFAULT_REDIRECT_FOR_IDENTIFIER_PARAM_VALUE, DEFAULT_REDIRECT_FOR_USER_IDENTIFIER_PARAM_KEY, DEFAULT_REDIRECT_FOR_USER_IDENTIFIER_PARAM_VALUE, DEFAULT_STORAGE_ACCESSOR_FACTORY_TOKEN, DEFAULT_STORAGE_OBJECT_TOKEN, DateDayRangePipe, DateDayTimeRangePipe, DateDistancePipe, DateFormatDistancePipe, DateFormatFromToPipe, DateRangeDistancePipe, DateTimeRangeOnlyDistancePipe, DateTimeRangeOnlyPipe, DateTimeRangePipe, DbxActionAutoModifyDirective, DbxActionAutoTriggerDirective, DbxActionButtonDirective, DbxActionButtonTriggerDirective, DbxActionContextBaseSource, DbxActionContextLoggerDirective, DbxActionContextMachine, DbxActionContextMachineAsService, DbxActionContextMapDirective, DbxActionContextStoreSourceInstance, DbxActionDirective, DbxActionDisabledDirective, DbxActionDisabledOnSuccessDirective, DbxActionEnforceModifiedDirective, DbxActionErrorHandlerDirective, DbxActionFromMapDirective, DbxActionHandlerDirective, DbxActionHandlerInstance, DbxActionHandlerValueDirective, DbxActionHasSuccessDirective, DbxActionIdleDirective, DbxActionIsModifiedDirective, DbxActionIsWorkingDirective, DbxActionMapSourceDirective, DbxActionMapWorkingDisableDirective, DbxActionPreSuccessDirective, DbxActionSourceDirective, DbxActionState, DbxActionSuccessHandlerDirective, DbxActionTriggeredDirective, DbxActionValueDirective, DbxActionValueGetterInstance, DbxActionValueStreamDirective, DbxActionValueTriggerDirective, DbxActionWorkInstanceDelegate, DbxAnchor, DbxAngularRouterService, DbxAppAuthRouterEffects, DbxAppAuthRouterService, DbxAppAuthRoutes, DbxAppAuthStateService, DbxAppContextService, DbxAppContextStateDirective, DbxAppEnvironment, DbxAppEnvironmentService, DbxAuthHasAnyRoleDirective, DbxAuthHasRolesDirective, DbxAuthNotAnyRoleDirective, DbxAuthService, DbxButton, DbxButtonDirective, DbxButtonSegueDirective, DbxCoreActionModule, DbxCoreAngularRouterSegueModule, DbxCoreAssetLoader, DbxCoreButtonModule, DbxCoreFilterModule, DbxFilterConnectSourceDirective, DbxFilterMapDirective, DbxFilterMapSourceConnectorDirective, DbxFilterMapSourceDirective, DbxFilterSourceConnectorDirective, DbxFilterSourceDirective, DbxInjectionArrayComponent, DbxInjectionComponent, DbxInjectionContext, DbxInjectionContextDirective, DbxInjectionInstance, DbxLoadingButtonDirective, DbxRouteModelIdDirective, DbxRouteModelIdDirectiveDelegate, DbxRouteModelIdFromAuthUserIdDirective, DbxRouteModelKeyDirective, DbxRouteModelKeyDirectiveDelegate, DbxRouteParamDefaultRedirectInstance, DbxRouterService, DbxRouterTransitionEventType, DbxRouterTransitionService, DbxUIRouterService, DollarAmountPipe, FilterSourceDirective, FullLocalStorageObject, GetValueOncePipe, GetValuePipe, InstantStorageAccessor, LimitedStorageAccessor, LockSetComponentStore, MemoryStorageObject, MinutesStringPipe, NO_AUTH_USER_IDENTIFIER, PrettyJsonPipe, SecondaryActionContextStoreSource, SimpleStorageAccessor, SimpleStorageAccessorFactory, StorageAccessor, StringStorageAccessor, StringifySimpleStorageAccessorConverter, SystemDateToTargetDatePipe, TargetDateToSystemDatePipe, TimeDistanceCountdownPipe, TimeDistancePipe, TimezoneAbbreviationPipe, ToJsDatePipe, ToMinutesPipe, WrapperSimpleStorageAccessorDelegate, actionContextHasNoErrorAndIsModifiedAndCanTrigger, actionContextIsModifiedAndCanTrigger, actionContextStoreSourceMap, actionContextStoreSourceMapReader, actionContextStoreSourcePipe, anchorTypeForAnchor, asSegueRef, asSegueRefString, assertValidStorageKeyPrefix, authRolesSetContainsAllRolesFrom, authRolesSetContainsAnyRoleFrom, authRolesSetContainsNoRolesFrom, authUserIdentifier, canReadyValue, canTriggerAction, canTriggerActionState, checkNgContentWrapperHasContent, clean, cleanDestroy, cleanListLoadingContext, cleanLoadingContext, cleanLockSet, cleanSubscription, cleanSubscriptionWithLockSet, cleanWithLockSet, clickableUrlInNewTab, clickableUrlMailTo, clickableUrlTel, completeOnDestroy, createInjectorForInjectionComponentConfig, dbxActionWorkProgress, dbxButtonDisplayType, dbxInjectionComponentConfigIsEqual, dbxRouteModelIdParamRedirect, dbxRouteModelKeyParamRedirect, dbxRouteParamReaderInstance, defaultStorageObjectFactory, enableHasAuthRoleHook, enableHasAuthStateHook, enableIsLoggedInHook, expandClickableAnchorLinkTree, expandClickableAnchorLinkTreeNode, expandClickableAnchorLinkTrees, filterTransitionEvent, filterTransitionSuccess, flattenExpandedClickableAnchorLinkTree, flattenExpandedClickableAnchorLinkTreeToLinks, fromAllActionContextStoreSourceMapSources, index as fromDbxAppAuth, index$2 as fromDbxAppContext, goWithRouter, hasAuthRoleDecisionPipe, hasNonTrivialChildNodes, initInjectionComponent, isActionContextDisabled, isActionContextEnabled, isClickableFilterPreset, isClickablePartialFilterPreset, isDisabledActionContextState, isIdleActionState, isLatestSuccessfulRoute, isSegueRef, isSegueRefActive, isSegueRefActiveFunction, isSegueRefActiveOnTransitionSuccess, isValidStorageKeyPrefix, isWorkingActionState, latestSuccessfulRoutes, loadingStateForActionContextState, loadingStateTypeForActionContextState, loadingStateTypeForActionState, loggedInObsFromIsLoggedIn, loggedOutObsFromIsLoggedIn, makeAuthTransitionHook, makeDbxActionContextSourceReference, mapRefStringObsToSegueRefObs, mergeDbxInjectionComponentConfigs, mergeStaticProviders, newWithInjector, index$1 as onDbxAppAuth, index$3 as onDbxAppContext, onRouterTransitionEventType, onRouterTransitionSuccessEvent, pipeActionStore, provideActionStoreSource, provideDbxActionButtonEchoConfig, provideDbxAnchor, provideDbxAppAuth, provideDbxAppAuthRouter, provideDbxAppAuthRouterState, provideDbxAppAuthState, provideDbxAppContextState, provideDbxAppEnvironment, provideDbxAssetLoader, provideDbxButton, provideDbxInjectionContext, provideDbxRouteModelIdDirectiveDelegate, provideDbxRouteModelKeyDirectiveDelegate, provideDbxStorage, provideDbxUIRouterService, provideFilterSource, provideFilterSourceConnector, provideFilterSourceDirective, provideSecondaryActionStoreSource, redirectBasedOnAuthUserState, redirectForIdentifierParamHook, redirectForUserIdentifierParamHook, refStringToSegueRef, safeDetectChanges, safeMarkForCheck, safeUseCdRef, successTransition, switchMapDbxInjectionComponentConfig, tapDetectChanges, tapSafeMarkForCheck, transformEmptyStringInputToUndefined, useActionStore };
9306
9384
  //# sourceMappingURL=dereekb-dbx-core.mjs.map