@dereekb/dbx-core 14.9.0 → 14.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,9 +1,9 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, EnvironmentProviders, Type, Provider, OnDestroy, Signal, OnInit, Injector, StaticProvider, NgModuleRef, TemplateRef, ViewRef, ModuleWithProviders, PipeTransform, ViewContainerRef, ComponentRef, AbstractType, ElementRef } from '@angular/core';
3
3
  import * as _dereekb_util from '@dereekb/util';
4
- import { SlashPathFolder, PercentNumber, Maybe, ReadableError, BooleanStringKeyArray, Destroyable, Initialized, GetterOrValue, FactoryWithInput, ArrayOrValue, AuthRoleSet, Milliseconds, FactoryWithRequiredInput, ObjectMap, AuthRole, SetIncludesMode, IterableOrValue, EmailAddress, ModelKey, WebsiteUrl, MailToUrlInput, PhoneNumber, E164PhoneNumberWithOptionalExtension, EqualityComparatorFunction, TreeNode, ExpandTreeFunction, FlattenTreeFunction, DateOrDateString, Minutes, TimezoneString, EmptyObject, ModelKeyRef, StoredDataString, ReadStoredData, StoredData, StoredDataStorageKey, FullStorageObject, StorageObject, DestroyFunction, DestroyFunctionObject } from '@dereekb/util';
4
+ import { SlashPathFolder, PercentNumber, Maybe, ReadableError, BooleanStringKeyArray, Destroyable, Initialized, GetterOrValue, FactoryWithInput, ArrayOrValue, AuthRoleSet, Milliseconds, FactoryWithRequiredInput, ObjectMap, AuthRole, SetIncludesMode, IterableOrValue, EmailAddress, ModelKey, WebsiteUrl, MailToUrlInput, PhoneNumber, E164PhoneNumberWithOptionalExtension, EqualityComparatorFunction, TreeNode, ExpandTreeFunction, FlattenTreeFunction, DateOrDateString, Minutes, TimezoneString, StoredDataString, ReadStoredData, StoredData, StoredDataStorageKey, FullStorageObject, EmptyObject, ModelKeyRef, StorageObject, DestroyFunction, DestroyFunctionObject } from '@dereekb/util';
5
5
  import * as _dereekb_rxjs from '@dereekb/rxjs';
6
- import { AssetLoader, AssetPathRef, AssetLoaderAssetInstance, LoadingStateType, LoadingState, LockSet, MaybeObservableOrValue, IsCheckFunction, ObservableOrValue, Work, IsModifiedFunction, IsEqualFunction, WorkInstanceDelegate, LoadingContext, MaybeObservableOrValueGetter, SwitchMapToDefaultFilterFunction, ObservableOrValueGetter, FilterSourceConnector, FilterSource, FilterSourceInstance, FilterMap, FilterMapKey, FilterWithPreset, FilterPresetStringRef, FilterWithPresetOptional, DestroyOnNextUnlockConfig, SubscriptionObject, ListLoadingState, ListLoadingStateContextInput, MutableListLoadingStateContext, LoadingContextEvent, LoadingStateContextInput, MutableLoadingStateContext } from '@dereekb/rxjs';
6
+ import { AssetLoader, AssetPathRef, AssetLoaderAssetInstance, LoadingStateType, LoadingState, LockSet, MaybeObservableOrValue, IsCheckFunction, ObservableOrValue, Work, IsModifiedFunction, IsEqualFunction, WorkInstanceDelegate, LoadingContext, MaybeObservableOrValueGetter, SwitchMapToDefaultFilterFunction, ObservableOrValueGetter, FilterSourceConnector, FilterSource, FilterSourceInstance, FilterMap, FilterMapKey, FilterJsonConverter, FilterWithPreset, FilterPresetStringRef, FilterWithPresetOptional, DestroyOnNextUnlockConfig, SubscriptionObject, ListLoadingState, ListLoadingStateContextInput, MutableListLoadingStateContext, LoadingContextEvent, LoadingStateContextInput, MutableLoadingStateContext } from '@dereekb/rxjs';
7
7
  import * as rxjs from 'rxjs';
8
8
  import { Observable, Subscription, OperatorFunction, Subject, BehaviorSubject, MonoTypeOperatorFunction, Unsubscribable } from 'rxjs';
9
9
  import * as _dereekb_dbx_core from '@dereekb/dbx-core';
@@ -7196,6 +7196,406 @@ declare class DbxFilterMapDirective<F> {
7196
7196
  static ɵdir: i0.ɵɵDirectiveDeclaration<DbxFilterMapDirective<any>, "[dbxFilterMap]", ["dbxFilterMap"], {}, {}, never, never, true, never>;
7197
7197
  }
7198
7198
 
7199
+ /**
7200
+ * Provides a read-only {@link FilterSource} that merges the filters of several keys in an ancestor {@link FilterMap} into one filter. Lets separate filter controls (e.g. a date popover and an attributes popover) each own a key while children consume a single combined filter.
7201
+ *
7202
+ * Keys later in the array win when two keys set the same field, and the merged filter has no `preset`. Every key needs a value (e.g. a default filter) before the merged filter emits.
7203
+ *
7204
+ * @dbxFilter
7205
+ * @dbxFilterSlug map-merge-source
7206
+ * @dbxFilterRelated map, map-source, map-source-connector
7207
+ * @dbxFilterSkillRefs dbx__ref__dbx-component-patterns
7208
+ *
7209
+ * @example
7210
+ * ```html
7211
+ * <div dbxFilterMap>
7212
+ * <my-date-filter-button [dbxFilterMapSourceConnector]="'date'"></my-date-filter-button>
7213
+ * <my-attributes-filter-button [dbxFilterMapSourceConnector]="'attributes'"></my-attributes-filter-button>
7214
+ * <div [dbxFilterMapMergeSource]="['date', 'attributes']">
7215
+ * <my-filtered-list></my-filtered-list>
7216
+ * </div>
7217
+ * </div>
7218
+ * ```
7219
+ */
7220
+ declare class DbxFilterMapMergeSourceDirective<F> implements FilterSource<F> {
7221
+ readonly dbxFilterMap: FilterMap<any>;
7222
+ /**
7223
+ * The map keys to merge, in priority order.
7224
+ */
7225
+ readonly dbxFilterMapMergeSource: i0.InputSignal<Maybe<string[]>>;
7226
+ readonly filterMapKeys$: Observable<string[]>;
7227
+ readonly filter$: Observable<F>;
7228
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxFilterMapMergeSourceDirective<any>, never>;
7229
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DbxFilterMapMergeSourceDirective<any>, "[dbxFilterMapMergeSource]", ["dbxFilterMapMergeSource"], { "dbxFilterMapMergeSource": { "alias": "dbxFilterMapMergeSource"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
7230
+ }
7231
+
7232
+ /**
7233
+ * Abstract storage accessor providing key-value get/set/remove operations and a clear-all method.
7234
+ *
7235
+ * All operations return observables for consistency across sync and async storage backends.
7236
+ *
7237
+ * @typeParam T - The type of values stored.
7238
+ *
7239
+ * @see {@link StorageAccessor} for extended functionality including key/value enumeration.
7240
+ */
7241
+ declare abstract class LimitedStorageAccessor<T> {
7242
+ /**
7243
+ * Attempts to get the value. Throws a DataDoesNotExistError if not available.
7244
+ */
7245
+ abstract get(key: string): Observable<Maybe<T>>;
7246
+ abstract set(key: string, value: Maybe<T>): Observable<void>;
7247
+ abstract remove(key: string): Observable<void>;
7248
+ abstract clear(): Observable<object>;
7249
+ }
7250
+ /**
7251
+ * Extended storage accessor that adds the ability to enumerate all stored keys and values,
7252
+ * optionally filtered by a key prefix.
7253
+ *
7254
+ * @typeParam T - The type of values stored.
7255
+ */
7256
+ declare abstract class StorageAccessor<T> extends LimitedStorageAccessor<T> {
7257
+ /**
7258
+ * Returns all values. Filtered by keys of a given prefix.
7259
+ */
7260
+ abstract all(prefix?: string): Observable<T[]>;
7261
+ /**
7262
+ * Returns all keys. Filtered by keys of a given prefix.
7263
+ */
7264
+ abstract allKeys(prefix?: string): Observable<string[]>;
7265
+ }
7266
+ /**
7267
+ * Synchronous storage accessor for scenarios where blocking get/set/remove is acceptable.
7268
+ *
7269
+ * @typeParam T - The type of values stored.
7270
+ */
7271
+ declare abstract class InstantStorageAccessor<T> {
7272
+ abstract getNow(key: string): T | undefined;
7273
+ abstract setNow(key: string, value: T): void;
7274
+ abstract removeNow(key: string): void;
7275
+ }
7276
+
7277
+ /**
7278
+ * Strategy for converting values to and from their stored string representation.
7279
+ *
7280
+ * @typeParam T - The type of value being converted.
7281
+ */
7282
+ interface SimpleStorageAccessorConverter<T> {
7283
+ /**
7284
+ * Converts the input value to a string.
7285
+ */
7286
+ stringifyValue(value: T): StoredDataString;
7287
+ /**
7288
+ * Converts the data string into a value.
7289
+ */
7290
+ parseValue(data: StoredDataString): T;
7291
+ }
7292
+ /**
7293
+ * Combined interface providing both value conversion and raw string storage capabilities.
7294
+ * Used as the backing delegate for {@link SimpleStorageAccessor}.
7295
+ *
7296
+ * @typeParam T - The type of value being stored.
7297
+ */
7298
+ interface SimpleStorageAccessorDelegate<T> extends SimpleStorageAccessorConverter<T>, StorageAccessor<StoredDataString> {
7299
+ }
7300
+ /**
7301
+ * Default {@link SimpleStorageAccessorConverter} that uses `JSON.stringify`/`JSON.parse` for conversion.
7302
+ *
7303
+ * @typeParam T - The type of value being converted.
7304
+ */
7305
+ declare class StringifySimpleStorageAccessorConverter<T> implements SimpleStorageAccessorConverter<T> {
7306
+ stringifyValue(value: T): StoredDataString;
7307
+ parseValue(data: StoredDataString): T;
7308
+ }
7309
+ /**
7310
+ * Composes a {@link StorageAccessor} and a {@link SimpleStorageAccessorConverter} into a single
7311
+ * {@link SimpleStorageAccessorDelegate} implementation.
7312
+ *
7313
+ * @typeParam T - The type of value being stored.
7314
+ */
7315
+ declare class WrapperSimpleStorageAccessorDelegate<T> implements SimpleStorageAccessorDelegate<T> {
7316
+ private readonly _delegate;
7317
+ private readonly _converter;
7318
+ constructor(delegate: StorageAccessor<StoredDataString>, converter: SimpleStorageAccessorConverter<T>);
7319
+ get(key: string): Observable<Maybe<StoredDataString>>;
7320
+ set(key: string, value: StoredDataString): Observable<void>;
7321
+ remove(key: string): Observable<void>;
7322
+ clear(): Observable<object>;
7323
+ all(prefix?: string): Observable<string[]>;
7324
+ allKeys(prefix?: string): Observable<string[]>;
7325
+ stringifyValue(value: T): StoredDataString;
7326
+ parseValue(data: StoredDataString): T;
7327
+ }
7328
+ /**
7329
+ * Configuration for a {@link SimpleStorageAccessor}, controlling key namespacing and expiration.
7330
+ *
7331
+ * @example
7332
+ * ```typescript
7333
+ * const config: SimpleStorageAccessorConfig = {
7334
+ * prefix: 'myapp_settings',
7335
+ * expiresIn: 24 * 60 * 60 * 1000, // 24 hours
7336
+ * };
7337
+ * ```
7338
+ */
7339
+ interface SimpleStorageAccessorConfig {
7340
+ /**
7341
+ * Prefix prepended to all storage keys to namespace entries.
7342
+ */
7343
+ readonly prefix: string;
7344
+ /**
7345
+ * Separator between the prefix and the key. Defaults to `'::'`.
7346
+ */
7347
+ readonly prefixSplitter?: string;
7348
+ /**
7349
+ * Time in milliseconds after which stored data is considered expired.
7350
+ */
7351
+ readonly expiresIn?: Milliseconds;
7352
+ }
7353
+ interface ConfiguredSimpleStorageAccessorConfig extends SimpleStorageAccessorConfig {
7354
+ readonly prefixSplitter: string;
7355
+ readonly fullPrefix: string;
7356
+ }
7357
+ /**
7358
+ * Validates that a storage key prefix is non-empty and does not contain the prefix splitter character.
7359
+ *
7360
+ * @param prefix - The prefix string to validate.
7361
+ * @param prefixSplitter - The splitter string that separates the prefix from the key.
7362
+ * @throws {Error} If the prefix is invalid or the splitter is empty.
7363
+ */
7364
+ declare function assertValidStorageKeyPrefix(prefix: string, prefixSplitter: string): void;
7365
+ /**
7366
+ * Checks whether a storage key prefix is valid (non-empty and does not contain the splitter).
7367
+ *
7368
+ * @param prefix - The prefix string to validate.
7369
+ * @param prefixSpltter - The splitter string that separates the prefix from the key.
7370
+ * @returns `true` if the prefix is valid.
7371
+ */
7372
+ declare function isValidStorageKeyPrefix(prefix: string, prefixSpltter: string): boolean;
7373
+ /**
7374
+ * Full-featured {@link StorageAccessor} that adds key namespacing, JSON serialization,
7375
+ * and optional time-based expiration on top of a raw string storage backend.
7376
+ *
7377
+ * Values are stored as JSON with metadata (timestamp) and automatically checked
7378
+ * for expiration on read.
7379
+ *
7380
+ * @typeParam T - The type of values stored.
7381
+ *
7382
+ * @throws {DataDoesNotExistError} When reading a key that does not exist.
7383
+ * @throws {DataIsExpiredError} When reading a key whose stored data has expired.
7384
+ *
7385
+ * @example
7386
+ * ```typescript
7387
+ * const accessor = factory.createStorageAccessor<UserSettings>({
7388
+ * prefix: 'user_prefs',
7389
+ * expiresIn: 3600000,
7390
+ * });
7391
+ *
7392
+ * accessor.set('theme', { dark: true }).subscribe();
7393
+ * accessor.get('theme').subscribe(settings => console.log(settings));
7394
+ * ```
7395
+ */
7396
+ declare class SimpleStorageAccessor<T> implements StorageAccessor<T> {
7397
+ static readonly PREFIX_SPLITTER = "::";
7398
+ private readonly _delegate;
7399
+ protected readonly _config: ConfiguredSimpleStorageAccessorConfig;
7400
+ constructor(delegate: SimpleStorageAccessorDelegate<T>, config: SimpleStorageAccessorConfig);
7401
+ get delegate(): SimpleStorageAccessorDelegate<T>;
7402
+ get config(): ConfiguredSimpleStorageAccessorConfig;
7403
+ get(inputKey: string): Observable<T>;
7404
+ set(inputKey: string, inputValue: T): Observable<void>;
7405
+ remove(key: string): Observable<void>;
7406
+ all(): Observable<T[]>;
7407
+ allKeys(): Observable<string[]>;
7408
+ clear(): Observable<object>;
7409
+ protected readStoredData(storedDataString: StoredDataString): ReadStoredData<T>;
7410
+ protected buildStoredData(value: T): StoredData;
7411
+ protected isExpiredStoredData(storeData: StoredData): boolean;
7412
+ protected makeStorageKey(key: string): StoredDataStorageKey;
7413
+ protected isKeyOfAccessor(storageKey: StoredDataStorageKey): boolean;
7414
+ protected decodeStorageKey(storageKey: StoredDataStorageKey): string;
7415
+ protected stringifyValue(value: T): string;
7416
+ }
7417
+
7418
+ /**
7419
+ * Configuration for creating a {@link SimpleStorageAccessor} via the factory,
7420
+ * with optional overrides for the storage backend and value converter.
7421
+ *
7422
+ * @typeParam T - The type of values the created accessor will store.
7423
+ */
7424
+ interface StorageAccessorFactoryConfig<T> extends SimpleStorageAccessorConfig {
7425
+ readonly storage?: StorageAccessor<StoredDataString>;
7426
+ readonly converter?: SimpleStorageAccessorConverter<T>;
7427
+ }
7428
+ /**
7429
+ * Injectable factory for creating namespaced {@link SimpleStorageAccessor} instances
7430
+ * backed by the application's default storage object.
7431
+ *
7432
+ * @example
7433
+ * ```typescript
7434
+ * @Injectable()
7435
+ * export class UserPrefsService {
7436
+ * private readonly storage = inject(SimpleStorageAccessorFactory)
7437
+ * .createStorageAccessor<UserPrefs>({ prefix: 'user_prefs' });
7438
+ *
7439
+ * save(prefs: UserPrefs) { return this.storage.set('current', prefs); }
7440
+ * load() { return this.storage.get('current'); }
7441
+ * }
7442
+ * ```
7443
+ */
7444
+ declare class SimpleStorageAccessorFactory {
7445
+ readonly storageObject: FullStorageObject;
7446
+ createStorageAccessor<T>(config: StorageAccessorFactoryConfig<T>): SimpleStorageAccessor<T>;
7447
+ static ɵfac: i0.ɵɵFactoryDeclaration<SimpleStorageAccessorFactory, never>;
7448
+ static ɵprov: i0.ɵɵInjectableDeclaration<SimpleStorageAccessorFactory>;
7449
+ }
7450
+
7451
+ /**
7452
+ * Key a filter is saved under in storage.
7453
+ */
7454
+ type DbxFilterStorageKey = string;
7455
+ /**
7456
+ * Default storage key prefix used by {@link DbxFilterStorageService}.
7457
+ */
7458
+ declare const DEFAULT_DBX_FILTER_STORAGE_PREFIX = "dbxf";
7459
+ /**
7460
+ * Configuration for {@link DbxFilterStorageService}.
7461
+ */
7462
+ interface DbxFilterStorageServiceConfig {
7463
+ /**
7464
+ * Storage key prefix that namespaces all saved filters.
7465
+ *
7466
+ * Defaults to {@link DEFAULT_DBX_FILTER_STORAGE_PREFIX}.
7467
+ */
7468
+ readonly prefix?: Maybe<string>;
7469
+ }
7470
+ /**
7471
+ * Optional injection token for the {@link DbxFilterStorageServiceConfig}.
7472
+ */
7473
+ declare const DBX_FILTER_STORAGE_SERVICE_CONFIG_TOKEN: InjectionToken<DbxFilterStorageServiceConfig>;
7474
+ /**
7475
+ * Saves and loads filters to storage (localStorage by default, via {@link SimpleStorageAccessorFactory}).
7476
+ *
7477
+ * Filters are saved as JSON. Filters with fields that JSON cannot represent, such as Date or Set fields, pass a {@link FilterJsonConverter}.
7478
+ *
7479
+ * To save and load the filter of a {@link FilterMap} key, use the {@link DbxFilterMapStorageDirective} in the template instead of calling this service directly.
7480
+ *
7481
+ * Provided by {@link provideDbxFilterStorage}, which requires {@link provideDbxStorage}.
7482
+ */
7483
+ declare class DbxFilterStorageService {
7484
+ readonly storageAccessorFactory: SimpleStorageAccessorFactory;
7485
+ readonly config: DbxFilterStorageServiceConfig | null;
7486
+ readonly prefix: string;
7487
+ readonly storageAccessor: StorageAccessor<unknown>;
7488
+ /**
7489
+ * Loads the saved filter for the given storage key.
7490
+ *
7491
+ * @param storageKey - Key the filter was saved under.
7492
+ * @param jsonConverter - Converts the saved JSON value back to the filter. Without one, the saved value is returned as-is.
7493
+ * @returns Observable of the saved filter, or undefined if nothing is saved or the saved value cannot be read.
7494
+ */
7495
+ loadFilter<F, J = unknown>(storageKey: DbxFilterStorageKey, jsonConverter?: Maybe<FilterJsonConverter<F, J>>): Observable<Maybe<F>>;
7496
+ /**
7497
+ * Saves the filter under the given storage key.
7498
+ *
7499
+ * @param storageKey - Key to save the filter under.
7500
+ * @param filter - Filter to save.
7501
+ * @param jsonConverter - Converts the filter to the JSON value that is saved. Without one, the filter is saved as-is.
7502
+ * @returns Observable that emits once the filter is saved.
7503
+ */
7504
+ saveFilter<F, J = unknown>(storageKey: DbxFilterStorageKey, filter: F, jsonConverter?: Maybe<FilterJsonConverter<F, J>>): Observable<void>;
7505
+ /**
7506
+ * Removes the saved filter for the given storage key.
7507
+ *
7508
+ * @param storageKey - Key the filter was saved under.
7509
+ * @returns Observable that emits once the filter is removed.
7510
+ */
7511
+ clearFilter(storageKey: DbxFilterStorageKey): Observable<void>;
7512
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxFilterStorageService, never>;
7513
+ static ɵprov: i0.ɵɵInjectableDeclaration<DbxFilterStorageService>;
7514
+ }
7515
+
7516
+ /**
7517
+ * Configuration for {@link DbxFilterMapStorageDirective}.
7518
+ *
7519
+ * @typeParam F - The filter type.
7520
+ * @typeParam J - The JSON-safe value the filter is saved as.
7521
+ */
7522
+ interface DbxFilterMapStorageConfig<F, J = unknown> {
7523
+ /**
7524
+ * Filter map key to load into and save from.
7525
+ */
7526
+ readonly key: FilterMapKey;
7527
+ /**
7528
+ * Key the filter is saved under in storage. Defaults to the filter map key.
7529
+ */
7530
+ readonly storageKey?: Maybe<DbxFilterStorageKey>;
7531
+ /**
7532
+ * Filter to use when nothing has been saved yet, and when the filter is reset.
7533
+ */
7534
+ readonly defaultFilter?: Maybe<ObservableOrValue<F>>;
7535
+ /**
7536
+ * Maps a loaded filter before it is used, e.g. to refresh preset values that depend on the current date.
7537
+ *
7538
+ * Return null/undefined to discard the saved filter and use the default filter instead.
7539
+ */
7540
+ readonly mapLoadedFilter?: Maybe<(filter: F) => Maybe<F>>;
7541
+ /**
7542
+ * Converts the filter to and from the JSON value that is saved.
7543
+ *
7544
+ * Required for filters that JSON cannot represent, such as filters with Date or Set fields. Without a converter the filter is saved as-is.
7545
+ */
7546
+ readonly jsonConverter?: Maybe<FilterJsonConverter<F, J>>;
7547
+ }
7548
+ /**
7549
+ * Saves the filter of a keyed entry in an ancestor {@link FilterMap} to storage (localStorage by default), and loads it again when the page loads. The saved filter becomes the key's default filter, and every later change to the key is saved.
7550
+ *
7551
+ * Use {@link reset} to set the key back to its default filter and remove the saved filter.
7552
+ *
7553
+ * Requires {@link provideDbxFilterStorage}.
7554
+ *
7555
+ * @dbxFilter
7556
+ * @dbxFilterSlug map-storage
7557
+ * @dbxFilterRelated map, map-source-connector, map-merge-source
7558
+ * @dbxFilterSkillRefs dbx__ref__dbx-component-patterns
7559
+ *
7560
+ * @example
7561
+ * ```html
7562
+ * <div dbxFilterMap>
7563
+ * <my-filter-button [dbxFilterMapSourceConnector]="'list'" [dbxFilterMapStorage]="{ key: 'list', storageKey: 'my.list.filter', defaultFilter: {} }"></my-filter-button>
7564
+ * </div>
7565
+ * ```
7566
+ */
7567
+ declare class DbxFilterMapStorageDirective<F, J = unknown> {
7568
+ readonly dbxFilterMap: FilterMap<any>;
7569
+ readonly dbxFilterStorageService: DbxFilterStorageService;
7570
+ /**
7571
+ * The key to save and how to save it.
7572
+ */
7573
+ readonly dbxFilterMapStorage: i0.InputSignal<Maybe<DbxFilterMapStorageConfig<F, J>>>;
7574
+ readonly config$: Observable<DbxFilterMapStorageConfig<F, J>>;
7575
+ /**
7576
+ * Set while reset() sets the key back to the default filter, so the default filter is not saved.
7577
+ */
7578
+ private _resetting;
7579
+ constructor();
7580
+ /**
7581
+ * Sets the key back to the default filter and removes the saved filter.
7582
+ *
7583
+ * The default filter is not saved, so the next page load also starts from the default filter.
7584
+ *
7585
+ * @returns Observable that emits once the key is reset and the saved filter is removed.
7586
+ */
7587
+ reset(): Observable<void>;
7588
+ /**
7589
+ * Loads the saved filter as the key's default filter, then returns an observable that saves every later change to the key.
7590
+ *
7591
+ * @param config - The key to save and how to save it.
7592
+ * @returns Observable that saves the key's filter while subscribed.
7593
+ */
7594
+ private _loadAndSaveFilter;
7595
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxFilterMapStorageDirective<any, any>, never>;
7596
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DbxFilterMapStorageDirective<any, any>, "[dbxFilterMapStorage]", ["dbxFilterMapStorage"], { "dbxFilterMapStorage": { "alias": "dbxFilterMapStorage"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
7597
+ }
7598
+
7199
7599
  /**
7200
7600
  * Pattern for declaring a preset filter chip — combines an anchor display (title, icon, disabled) with a preset string identifier and a `presetValue` getter. A `null` or empty preset value resets the filter.
7201
7601
  *
@@ -7286,10 +7686,27 @@ declare class DbxFilterSourceDirective<F> extends AbstractFilterSourceDirective<
7286
7686
 
7287
7687
  declare class DbxCoreFilterModule {
7288
7688
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxCoreFilterModule, never>;
7289
- static ɵmod: i0.ɵɵNgModuleDeclaration<DbxCoreFilterModule, never, [typeof DbxFilterSourceDirective, typeof DbxFilterMapSourceConnectorDirective, typeof DbxFilterConnectSourceDirective, typeof DbxFilterSourceConnectorDirective, typeof DbxFilterMapDirective, typeof DbxFilterMapSourceDirective], [typeof DbxFilterSourceDirective, typeof DbxFilterMapSourceConnectorDirective, typeof DbxFilterConnectSourceDirective, typeof DbxFilterSourceConnectorDirective, typeof DbxFilterMapDirective, typeof DbxFilterMapSourceDirective]>;
7689
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DbxCoreFilterModule, never, [typeof DbxFilterSourceDirective, typeof DbxFilterMapSourceConnectorDirective, typeof DbxFilterConnectSourceDirective, typeof DbxFilterSourceConnectorDirective, typeof DbxFilterMapDirective, typeof DbxFilterMapSourceDirective, typeof DbxFilterMapMergeSourceDirective, typeof DbxFilterMapStorageDirective], [typeof DbxFilterSourceDirective, typeof DbxFilterMapSourceConnectorDirective, typeof DbxFilterConnectSourceDirective, typeof DbxFilterSourceConnectorDirective, typeof DbxFilterMapDirective, typeof DbxFilterMapSourceDirective, typeof DbxFilterMapMergeSourceDirective, typeof DbxFilterMapStorageDirective]>;
7290
7690
  static ɵinj: i0.ɵɵInjectorDeclaration<DbxCoreFilterModule>;
7291
7691
  }
7292
7692
 
7693
+ /**
7694
+ * Registers {@link DbxFilterStorageService} as an environment-level provider.
7695
+ *
7696
+ * Requires {@link provideDbxStorage} to also be provided.
7697
+ *
7698
+ * @param config - Optional service configuration.
7699
+ * @returns The environment providers for filter storage.
7700
+ *
7701
+ * @example
7702
+ * ```typescript
7703
+ * export const appConfig: ApplicationConfig = {
7704
+ * providers: [provideDbxStorage(), provideDbxFilterStorage()],
7705
+ * };
7706
+ * ```
7707
+ */
7708
+ declare function provideDbxFilterStorage(config?: Maybe<DbxFilterStorageServiceConfig>): EnvironmentProviders;
7709
+
7293
7710
  /**
7294
7711
  * A keyed entry that pairs a unique model key with a {@link DbxInjectionComponentConfig},
7295
7712
  * enabling Angular's `@for` / `trackBy` to efficiently diff arrays of dynamic injection configs.
@@ -7848,225 +8265,6 @@ declare abstract class LockSetComponentStore<S extends object> extends Component
7848
8265
  static ɵprov: i0.ɵɵInjectableDeclaration<LockSetComponentStore<any>>;
7849
8266
  }
7850
8267
 
7851
- /**
7852
- * Abstract storage accessor providing key-value get/set/remove operations and a clear-all method.
7853
- *
7854
- * All operations return observables for consistency across sync and async storage backends.
7855
- *
7856
- * @typeParam T - The type of values stored.
7857
- *
7858
- * @see {@link StorageAccessor} for extended functionality including key/value enumeration.
7859
- */
7860
- declare abstract class LimitedStorageAccessor<T> {
7861
- /**
7862
- * Attempts to get the value. Throws a DataDoesNotExistError if not available.
7863
- */
7864
- abstract get(key: string): Observable<Maybe<T>>;
7865
- abstract set(key: string, value: Maybe<T>): Observable<void>;
7866
- abstract remove(key: string): Observable<void>;
7867
- abstract clear(): Observable<object>;
7868
- }
7869
- /**
7870
- * Extended storage accessor that adds the ability to enumerate all stored keys and values,
7871
- * optionally filtered by a key prefix.
7872
- *
7873
- * @typeParam T - The type of values stored.
7874
- */
7875
- declare abstract class StorageAccessor<T> extends LimitedStorageAccessor<T> {
7876
- /**
7877
- * Returns all values. Filtered by keys of a given prefix.
7878
- */
7879
- abstract all(prefix?: string): Observable<T[]>;
7880
- /**
7881
- * Returns all keys. Filtered by keys of a given prefix.
7882
- */
7883
- abstract allKeys(prefix?: string): Observable<string[]>;
7884
- }
7885
- /**
7886
- * Synchronous storage accessor for scenarios where blocking get/set/remove is acceptable.
7887
- *
7888
- * @typeParam T - The type of values stored.
7889
- */
7890
- declare abstract class InstantStorageAccessor<T> {
7891
- abstract getNow(key: string): T | undefined;
7892
- abstract setNow(key: string, value: T): void;
7893
- abstract removeNow(key: string): void;
7894
- }
7895
-
7896
- /**
7897
- * Strategy for converting values to and from their stored string representation.
7898
- *
7899
- * @typeParam T - The type of value being converted.
7900
- */
7901
- interface SimpleStorageAccessorConverter<T> {
7902
- /**
7903
- * Converts the input value to a string.
7904
- */
7905
- stringifyValue(value: T): StoredDataString;
7906
- /**
7907
- * Converts the data string into a value.
7908
- */
7909
- parseValue(data: StoredDataString): T;
7910
- }
7911
- /**
7912
- * Combined interface providing both value conversion and raw string storage capabilities.
7913
- * Used as the backing delegate for {@link SimpleStorageAccessor}.
7914
- *
7915
- * @typeParam T - The type of value being stored.
7916
- */
7917
- interface SimpleStorageAccessorDelegate<T> extends SimpleStorageAccessorConverter<T>, StorageAccessor<StoredDataString> {
7918
- }
7919
- /**
7920
- * Default {@link SimpleStorageAccessorConverter} that uses `JSON.stringify`/`JSON.parse` for conversion.
7921
- *
7922
- * @typeParam T - The type of value being converted.
7923
- */
7924
- declare class StringifySimpleStorageAccessorConverter<T> implements SimpleStorageAccessorConverter<T> {
7925
- stringifyValue(value: T): StoredDataString;
7926
- parseValue(data: StoredDataString): T;
7927
- }
7928
- /**
7929
- * Composes a {@link StorageAccessor} and a {@link SimpleStorageAccessorConverter} into a single
7930
- * {@link SimpleStorageAccessorDelegate} implementation.
7931
- *
7932
- * @typeParam T - The type of value being stored.
7933
- */
7934
- declare class WrapperSimpleStorageAccessorDelegate<T> implements SimpleStorageAccessorDelegate<T> {
7935
- private readonly _delegate;
7936
- private readonly _converter;
7937
- constructor(delegate: StorageAccessor<StoredDataString>, converter: SimpleStorageAccessorConverter<T>);
7938
- get(key: string): Observable<Maybe<StoredDataString>>;
7939
- set(key: string, value: StoredDataString): Observable<void>;
7940
- remove(key: string): Observable<void>;
7941
- clear(): Observable<object>;
7942
- all(prefix?: string): Observable<string[]>;
7943
- allKeys(prefix?: string): Observable<string[]>;
7944
- stringifyValue(value: T): StoredDataString;
7945
- parseValue(data: StoredDataString): T;
7946
- }
7947
- /**
7948
- * Configuration for a {@link SimpleStorageAccessor}, controlling key namespacing and expiration.
7949
- *
7950
- * @example
7951
- * ```typescript
7952
- * const config: SimpleStorageAccessorConfig = {
7953
- * prefix: 'myapp_settings',
7954
- * expiresIn: 24 * 60 * 60 * 1000, // 24 hours
7955
- * };
7956
- * ```
7957
- */
7958
- interface SimpleStorageAccessorConfig {
7959
- /**
7960
- * Prefix prepended to all storage keys to namespace entries.
7961
- */
7962
- readonly prefix: string;
7963
- /**
7964
- * Separator between the prefix and the key. Defaults to `'::'`.
7965
- */
7966
- readonly prefixSplitter?: string;
7967
- /**
7968
- * Time in milliseconds after which stored data is considered expired.
7969
- */
7970
- readonly expiresIn?: Milliseconds;
7971
- }
7972
- interface ConfiguredSimpleStorageAccessorConfig extends SimpleStorageAccessorConfig {
7973
- readonly prefixSplitter: string;
7974
- readonly fullPrefix: string;
7975
- }
7976
- /**
7977
- * Validates that a storage key prefix is non-empty and does not contain the prefix splitter character.
7978
- *
7979
- * @param prefix - The prefix string to validate.
7980
- * @param prefixSplitter - The splitter string that separates the prefix from the key.
7981
- * @throws {Error} If the prefix is invalid or the splitter is empty.
7982
- */
7983
- declare function assertValidStorageKeyPrefix(prefix: string, prefixSplitter: string): void;
7984
- /**
7985
- * Checks whether a storage key prefix is valid (non-empty and does not contain the splitter).
7986
- *
7987
- * @param prefix - The prefix string to validate.
7988
- * @param prefixSpltter - The splitter string that separates the prefix from the key.
7989
- * @returns `true` if the prefix is valid.
7990
- */
7991
- declare function isValidStorageKeyPrefix(prefix: string, prefixSpltter: string): boolean;
7992
- /**
7993
- * Full-featured {@link StorageAccessor} that adds key namespacing, JSON serialization,
7994
- * and optional time-based expiration on top of a raw string storage backend.
7995
- *
7996
- * Values are stored as JSON with metadata (timestamp) and automatically checked
7997
- * for expiration on read.
7998
- *
7999
- * @typeParam T - The type of values stored.
8000
- *
8001
- * @throws {DataDoesNotExistError} When reading a key that does not exist.
8002
- * @throws {DataIsExpiredError} When reading a key whose stored data has expired.
8003
- *
8004
- * @example
8005
- * ```typescript
8006
- * const accessor = factory.createStorageAccessor<UserSettings>({
8007
- * prefix: 'user_prefs',
8008
- * expiresIn: 3600000,
8009
- * });
8010
- *
8011
- * accessor.set('theme', { dark: true }).subscribe();
8012
- * accessor.get('theme').subscribe(settings => console.log(settings));
8013
- * ```
8014
- */
8015
- declare class SimpleStorageAccessor<T> implements StorageAccessor<T> {
8016
- static readonly PREFIX_SPLITTER = "::";
8017
- private readonly _delegate;
8018
- protected readonly _config: ConfiguredSimpleStorageAccessorConfig;
8019
- constructor(delegate: SimpleStorageAccessorDelegate<T>, config: SimpleStorageAccessorConfig);
8020
- get delegate(): SimpleStorageAccessorDelegate<T>;
8021
- get config(): ConfiguredSimpleStorageAccessorConfig;
8022
- get(inputKey: string): Observable<T>;
8023
- set(inputKey: string, inputValue: T): Observable<void>;
8024
- remove(key: string): Observable<void>;
8025
- all(): Observable<T[]>;
8026
- allKeys(): Observable<string[]>;
8027
- clear(): Observable<object>;
8028
- protected readStoredData(storedDataString: StoredDataString): ReadStoredData<T>;
8029
- protected buildStoredData(value: T): StoredData;
8030
- protected isExpiredStoredData(storeData: StoredData): boolean;
8031
- protected makeStorageKey(key: string): StoredDataStorageKey;
8032
- protected isKeyOfAccessor(storageKey: StoredDataStorageKey): boolean;
8033
- protected decodeStorageKey(storageKey: StoredDataStorageKey): string;
8034
- protected stringifyValue(value: T): string;
8035
- }
8036
-
8037
- /**
8038
- * Configuration for creating a {@link SimpleStorageAccessor} via the factory,
8039
- * with optional overrides for the storage backend and value converter.
8040
- *
8041
- * @typeParam T - The type of values the created accessor will store.
8042
- */
8043
- interface StorageAccessorFactoryConfig<T> extends SimpleStorageAccessorConfig {
8044
- readonly storage?: StorageAccessor<StoredDataString>;
8045
- readonly converter?: SimpleStorageAccessorConverter<T>;
8046
- }
8047
- /**
8048
- * Injectable factory for creating namespaced {@link SimpleStorageAccessor} instances
8049
- * backed by the application's default storage object.
8050
- *
8051
- * @example
8052
- * ```typescript
8053
- * @Injectable()
8054
- * export class UserPrefsService {
8055
- * private readonly storage = inject(SimpleStorageAccessorFactory)
8056
- * .createStorageAccessor<UserPrefs>({ prefix: 'user_prefs' });
8057
- *
8058
- * save(prefs: UserPrefs) { return this.storage.set('current', prefs); }
8059
- * load() { return this.storage.get('current'); }
8060
- * }
8061
- * ```
8062
- */
8063
- declare class SimpleStorageAccessorFactory {
8064
- readonly storageObject: FullStorageObject;
8065
- createStorageAccessor<T>(config: StorageAccessorFactoryConfig<T>): SimpleStorageAccessor<T>;
8066
- static ɵfac: i0.ɵɵFactoryDeclaration<SimpleStorageAccessorFactory, never>;
8067
- static ɵprov: i0.ɵɵInjectableDeclaration<SimpleStorageAccessorFactory>;
8068
- }
8069
-
8070
8268
  /**
8071
8269
  * {@link StorageAccessor} implementation that wraps a {@link FullStorageObject} and stores raw strings.
8072
8270
  *
@@ -8470,5 +8668,5 @@ declare function hasNonTrivialChildNodes(element: HTMLElement): boolean;
8470
8668
  */
8471
8669
  declare const transformEmptyStringInputToUndefined: <T>(value: T | "") => T | undefined;
8472
8670
 
8473
- 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, DbxActionWorkable, DbxAnchor, DbxAngularRouterService, DbxAppAuthRouterEffects, DbxAppAuthRouterService, DbxAppAuthRoutes, DbxAppAuthStateService, DbxAppContextService, DbxAppContextStateDirective, DbxAppEnvironment, DbxAppEnvironmentService, DbxAuthHasAnyRoleDirective, DbxAuthHasRolesDirective, DbxAuthImpersonationDelegate, DbxAuthImpersonationQuerySyncDirective, DbxAuthImpersonationService, DbxAuthImpersonationTriggerDirective, 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_d$1 as fromDbxAppAuth, index_d$3 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_d as onDbxAppAuth, index_d$2 as onDbxAppContext, onRouterTransitionEventType, onRouterTransitionSuccessEvent, pipeActionStore, provideActionStoreSource, provideDbxActionButtonEchoConfig, provideDbxActionWorkable, provideDbxAnchor, provideDbxAppAuth, provideDbxAppAuthRouter, provideDbxAppAuthRouterState, provideDbxAppAuthState, provideDbxAppContextState, provideDbxAppEnvironment, provideDbxAssetLoader, provideDbxAuthImpersonation, provideDbxAuthImpersonationDelegate, provideDbxButton, provideDbxInjectionContext, provideDbxRouteModelIdDirectiveDelegate, provideDbxRouteModelKeyDirectiveDelegate, provideDbxStorage, provideDbxUIRouterService, provideFilterSource, provideFilterSourceConnector, provideFilterSourceDirective, provideSecondaryActionStoreSource, redirectBasedOnAuthUserState, redirectForIdentifierParamHook, redirectForUserIdentifierParamHook, refStringToSegueRef, successTransition, switchMapDbxInjectionComponentConfig, transformEmptyStringInputToUndefined, useActionStore };
8474
- export type { ActionContextState, ActionContextStoreSourceMapReader, ActionKey, AuthTransitionDecision, AuthTransitionDecisionGetterInput, AuthTransitionHookConfig, AuthTransitionHookOptions, AuthTransitionRedirectTarget, AuthTransitionRedirectTargetGetter, AuthTransitionRedirectTargetOrGetter, AuthTransitionStateData, AuthUserIdentifier, AuthUserState, CleanLockSet, CleanLockSetConfig, CleanSubscriptionWithLockSetConfig, ClickableAnchor, ClickableAnchorLink, ClickableAnchorLinkSegueRef, ClickableAnchorLinkTree, ClickableAnchorType, ClickableFilterPreset, ClickableFilterPresetOrPartialPreset, ClickableFunction, ClickableIconAnchorLink, ClickablePartialFilterPreset, ClickableUrl, DbxActionButtonEchoConfig, DbxActionContextMachineConfig, DbxActionContextSourceReference, DbxActionDisabledKey, DbxActionErrorHandlerFunction, DbxActionRejectedPair, DbxActionSuccessHandlerFunction, DbxActionSuccessPair, DbxActionValueGetterDirectiveComputeInputsConfig, DbxActionValueGetterInstanceConfig, DbxActionValueGetterResult, DbxActionValueGetterValueGetterFunction, DbxActionWorkOrWorkProgress, DbxActionWorkProgress, DbxAppAuthFullState, DbxAppContextFullState, DbxAppContextState, DbxAuthImpersonationDetails, DbxAuthImpersonationEvent, DbxAuthImpersonationEventReason, DbxAuthImpersonationEventType, DbxAuthImpersonationQuerySyncConfig, DbxButtonDisplay, DbxButtonDisplayDelegate, DbxButtonDisplayType, DbxButtonEcho, DbxButtonInterceptor, DbxButtonWorking, DbxButtonWorkingProgress, DbxCoreAssetLoaderConfig, DbxInjectionArrayEntry, DbxInjectionComponentConfig, DbxInjectionComponentConfigFactory, DbxInjectionComponentConfigWithoutInjector, DbxInjectionComponentInjectorParams, DbxInjectionContextConfig, DbxInjectionTemplateConfig, DbxKnownAppContextState, DbxRouteModelIdParamRedirect, DbxRouteModelIdParamRedirectInstance, DbxRouteParamReader, DbxRouteParamReaderInstance, DbxRouterTransitionEvent, ExpandedClickableAnchorLinkTree, GoWithRouter, HasAuthRoleHookConfig, HasAuthRoleStateData, HasAuthRoleStateRoleConfig, HasAuthStateConfig, HasAuthStateData, HasAuthStateHookConfig, HasAuthStateObjectConfig, IconAndTitle, InjectableType, IsLatestSuccessfulRouteConfig, IsLoggedInHookConfig, IsLoggedInStateData, IsSegueRefActiveConfig, IsSegueRefActiveFunction, IsSegueRefActiveFunctionConfig, LatestSuccessfulRoutesConfig, LatestSuccessfulRoutesConfigRoute, LockSetComponent, LockSetComponentStoreConfig, MousableFunction, MouseEventPair, MouseEventType, NoAuthUserIdentifier, ParsedHasAuthRoleStateRoleConfig, PipeActionStoreFunction, ProvideDbxAppAuthConfig, ProvideDbxAppAuthRouterConfig, ProvideDbxAppAuthRouterStateConfig, ProvideDbxAuthImpersonationConfig, ProvideFilterSourceDirectiveDefaultFilterFactoryFunction, RedirectForIdentifierParamHookInput, RedirectForUserIdentifierParamHookInput, SegueRef, SegueRefOptions, SegueRefOrSegueRefRouterLink, SegueRefRawSegueParams, SegueRefRouterLink, SimpleStorageAccessorConfig, SimpleStorageAccessorConverter, SimpleStorageAccessorDelegate, StorageAccessorFactoryConfig, UseActionStoreFunction };
8671
+ 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_FILTER_STORAGE_SERVICE_CONFIG_TOKEN, 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_FILTER_STORAGE_PREFIX, 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, DbxActionWorkable, DbxAnchor, DbxAngularRouterService, DbxAppAuthRouterEffects, DbxAppAuthRouterService, DbxAppAuthRoutes, DbxAppAuthStateService, DbxAppContextService, DbxAppContextStateDirective, DbxAppEnvironment, DbxAppEnvironmentService, DbxAuthHasAnyRoleDirective, DbxAuthHasRolesDirective, DbxAuthImpersonationDelegate, DbxAuthImpersonationQuerySyncDirective, DbxAuthImpersonationService, DbxAuthImpersonationTriggerDirective, DbxAuthNotAnyRoleDirective, DbxAuthService, DbxButton, DbxButtonDirective, DbxButtonSegueDirective, DbxCoreActionModule, DbxCoreAngularRouterSegueModule, DbxCoreAssetLoader, DbxCoreButtonModule, DbxCoreFilterModule, DbxFilterConnectSourceDirective, DbxFilterMapDirective, DbxFilterMapMergeSourceDirective, DbxFilterMapSourceConnectorDirective, DbxFilterMapSourceDirective, DbxFilterMapStorageDirective, DbxFilterSourceConnectorDirective, DbxFilterSourceDirective, DbxFilterStorageService, 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_d$1 as fromDbxAppAuth, index_d$3 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_d as onDbxAppAuth, index_d$2 as onDbxAppContext, onRouterTransitionEventType, onRouterTransitionSuccessEvent, pipeActionStore, provideActionStoreSource, provideDbxActionButtonEchoConfig, provideDbxActionWorkable, provideDbxAnchor, provideDbxAppAuth, provideDbxAppAuthRouter, provideDbxAppAuthRouterState, provideDbxAppAuthState, provideDbxAppContextState, provideDbxAppEnvironment, provideDbxAssetLoader, provideDbxAuthImpersonation, provideDbxAuthImpersonationDelegate, provideDbxButton, provideDbxFilterStorage, provideDbxInjectionContext, provideDbxRouteModelIdDirectiveDelegate, provideDbxRouteModelKeyDirectiveDelegate, provideDbxStorage, provideDbxUIRouterService, provideFilterSource, provideFilterSourceConnector, provideFilterSourceDirective, provideSecondaryActionStoreSource, redirectBasedOnAuthUserState, redirectForIdentifierParamHook, redirectForUserIdentifierParamHook, refStringToSegueRef, successTransition, switchMapDbxInjectionComponentConfig, transformEmptyStringInputToUndefined, useActionStore };
8672
+ export type { ActionContextState, ActionContextStoreSourceMapReader, ActionKey, AuthTransitionDecision, AuthTransitionDecisionGetterInput, AuthTransitionHookConfig, AuthTransitionHookOptions, AuthTransitionRedirectTarget, AuthTransitionRedirectTargetGetter, AuthTransitionRedirectTargetOrGetter, AuthTransitionStateData, AuthUserIdentifier, AuthUserState, CleanLockSet, CleanLockSetConfig, CleanSubscriptionWithLockSetConfig, ClickableAnchor, ClickableAnchorLink, ClickableAnchorLinkSegueRef, ClickableAnchorLinkTree, ClickableAnchorType, ClickableFilterPreset, ClickableFilterPresetOrPartialPreset, ClickableFunction, ClickableIconAnchorLink, ClickablePartialFilterPreset, ClickableUrl, DbxActionButtonEchoConfig, DbxActionContextMachineConfig, DbxActionContextSourceReference, DbxActionDisabledKey, DbxActionErrorHandlerFunction, DbxActionRejectedPair, DbxActionSuccessHandlerFunction, DbxActionSuccessPair, DbxActionValueGetterDirectiveComputeInputsConfig, DbxActionValueGetterInstanceConfig, DbxActionValueGetterResult, DbxActionValueGetterValueGetterFunction, DbxActionWorkOrWorkProgress, DbxActionWorkProgress, DbxAppAuthFullState, DbxAppContextFullState, DbxAppContextState, DbxAuthImpersonationDetails, DbxAuthImpersonationEvent, DbxAuthImpersonationEventReason, DbxAuthImpersonationEventType, DbxAuthImpersonationQuerySyncConfig, DbxButtonDisplay, DbxButtonDisplayDelegate, DbxButtonDisplayType, DbxButtonEcho, DbxButtonInterceptor, DbxButtonWorking, DbxButtonWorkingProgress, DbxCoreAssetLoaderConfig, DbxFilterMapStorageConfig, DbxFilterStorageKey, DbxFilterStorageServiceConfig, DbxInjectionArrayEntry, DbxInjectionComponentConfig, DbxInjectionComponentConfigFactory, DbxInjectionComponentConfigWithoutInjector, DbxInjectionComponentInjectorParams, DbxInjectionContextConfig, DbxInjectionTemplateConfig, DbxKnownAppContextState, DbxRouteModelIdParamRedirect, DbxRouteModelIdParamRedirectInstance, DbxRouteParamReader, DbxRouteParamReaderInstance, DbxRouterTransitionEvent, ExpandedClickableAnchorLinkTree, GoWithRouter, HasAuthRoleHookConfig, HasAuthRoleStateData, HasAuthRoleStateRoleConfig, HasAuthStateConfig, HasAuthStateData, HasAuthStateHookConfig, HasAuthStateObjectConfig, IconAndTitle, InjectableType, IsLatestSuccessfulRouteConfig, IsLoggedInHookConfig, IsLoggedInStateData, IsSegueRefActiveConfig, IsSegueRefActiveFunction, IsSegueRefActiveFunctionConfig, LatestSuccessfulRoutesConfig, LatestSuccessfulRoutesConfigRoute, LockSetComponent, LockSetComponentStoreConfig, MousableFunction, MouseEventPair, MouseEventType, NoAuthUserIdentifier, ParsedHasAuthRoleStateRoleConfig, PipeActionStoreFunction, ProvideDbxAppAuthConfig, ProvideDbxAppAuthRouterConfig, ProvideDbxAppAuthRouterStateConfig, ProvideDbxAuthImpersonationConfig, ProvideFilterSourceDirectiveDefaultFilterFactoryFunction, RedirectForIdentifierParamHookInput, RedirectForUserIdentifierParamHookInput, SegueRef, SegueRefOptions, SegueRefOrSegueRefRouterLink, SegueRefRawSegueParams, SegueRefRouterLink, SimpleStorageAccessorConfig, SimpleStorageAccessorConverter, SimpleStorageAccessorDelegate, StorageAccessorFactoryConfig, UseActionStoreFunction };