@dereekb/dbx-web 13.11.14 → 13.11.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/eslint/index.cjs.js +1637 -182
- package/eslint/index.esm.js +1630 -179
- package/eslint/package.json +6 -6
- package/eslint/src/lib/index.d.ts +7 -4
- package/eslint/src/lib/no-redundant-on-destroy.rule.d.ts +1 -1
- package/eslint/src/lib/plugin.d.ts +19 -7
- package/eslint/src/lib/require-clean-subscription.rule.d.ts +1 -1
- package/eslint/src/lib/require-complete-on-destroy.rule.d.ts +1 -1
- package/eslint/src/lib/require-component-config-input.rule.d.ts +50 -0
- package/eslint/src/lib/require-computed-signal-suffix.rule.d.ts +38 -0
- package/eslint/src/lib/require-top-level-computed-signals.rule.d.ts +66 -0
- package/eslint/src/lib/util.d.ts +13 -12
- package/fesm2022/dereekb-dbx-web-calendar.mjs +11 -13
- package/fesm2022/dereekb-dbx-web-calendar.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-web-mapbox.mjs +16 -12
- package/fesm2022/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-web-table.mjs +21 -17
- package/fesm2022/dereekb-dbx-web-table.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-web.mjs +702 -549
- package/fesm2022/dereekb-dbx-web.mjs.map +1 -1
- package/package.json +7 -7
- package/types/dereekb-dbx-web-calendar.d.ts +2 -10
- package/types/dereekb-dbx-web-mapbox.d.ts +5 -5
- package/types/dereekb-dbx-web-table.d.ts +13 -13
- package/types/dereekb-dbx-web.d.ts +419 -334
|
@@ -135,14 +135,14 @@ var CompactMode;
|
|
|
135
135
|
* Converts a boolean or `CompactMode` value into a normalized `CompactMode`.
|
|
136
136
|
* `true` maps to `CompactMode.COMPACT`, `false` maps to `CompactMode.FULL`.
|
|
137
137
|
*
|
|
138
|
+
* @param input - Boolean or CompactMode value to normalize.
|
|
139
|
+
* @returns The normalized CompactMode enum value.
|
|
140
|
+
*
|
|
138
141
|
* @example
|
|
139
142
|
* ```ts
|
|
140
143
|
* compactModeFromInput(true); // CompactMode.COMPACT
|
|
141
144
|
* compactModeFromInput(CompactMode.FULL); // CompactMode.FULL
|
|
142
145
|
* ```
|
|
143
|
-
*
|
|
144
|
-
* @param input - a boolean or CompactMode value to normalize
|
|
145
|
-
* @returns the normalized CompactMode enum value
|
|
146
146
|
*/
|
|
147
147
|
function compactModeFromInput(input) {
|
|
148
148
|
if (typeof input === 'boolean') {
|
|
@@ -154,6 +154,10 @@ function compactModeFromInput(input) {
|
|
|
154
154
|
* Maps an observable compact mode stream to the corresponding value from the config.
|
|
155
155
|
* Falls back to the config's `defaultMode` (or `FULL`) when the observable is nullish.
|
|
156
156
|
*
|
|
157
|
+
* @param mode$ - An observable of the current compact mode, or nullish to use the default.
|
|
158
|
+
* @param config - The mapping configuration containing values for each mode and an optional default.
|
|
159
|
+
* @returns An observable emitting the mapped value corresponding to the current compact mode.
|
|
160
|
+
*
|
|
157
161
|
* @example
|
|
158
162
|
* ```ts
|
|
159
163
|
* const value$ = mapCompactModeObs(mode$, {
|
|
@@ -162,10 +166,6 @@ function compactModeFromInput(input) {
|
|
|
162
166
|
* defaultMode: CompactMode.FULL
|
|
163
167
|
* });
|
|
164
168
|
* ```
|
|
165
|
-
*
|
|
166
|
-
* @param mode$ - an observable of the current compact mode, or nullish to use the default
|
|
167
|
-
* @param config - the mapping configuration containing values for each mode and an optional default
|
|
168
|
-
* @returns an observable emitting the mapped value corresponding to the current compact mode
|
|
169
169
|
*/
|
|
170
170
|
function mapCompactModeObs(mode$, config) {
|
|
171
171
|
const modeObs = mode$ ?? of(config.defaultMode ?? CompactMode.FULL);
|
|
@@ -503,16 +503,16 @@ class DbxPopoverComponent extends AbstractTransitionWatcherDirective {
|
|
|
503
503
|
this.popoverRef.close(value);
|
|
504
504
|
}
|
|
505
505
|
_useClosingValue(closeType, useValue) {
|
|
506
|
-
if (this.getClosingValueFn
|
|
506
|
+
if (this.getClosingValueFn == null) {
|
|
507
|
+
useValue();
|
|
508
|
+
}
|
|
509
|
+
else {
|
|
507
510
|
asPromise(this.getClosingValueFn(this.data, closeType)).then((x) => {
|
|
508
511
|
useValue(x);
|
|
509
512
|
}, () => {
|
|
510
513
|
useValue();
|
|
511
514
|
});
|
|
512
515
|
}
|
|
513
|
-
else {
|
|
514
|
-
useValue();
|
|
515
|
-
}
|
|
516
516
|
}
|
|
517
517
|
// Keypresses
|
|
518
518
|
handleKeydown() {
|
|
@@ -580,7 +580,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
580
580
|
/**
|
|
581
581
|
* Default key used when no key is specified.
|
|
582
582
|
*/
|
|
583
|
-
const
|
|
583
|
+
const DEFAULT_DBX_DETACH_KEY = 'default';
|
|
584
584
|
/**
|
|
585
585
|
* Possible display states for a detach instance.
|
|
586
586
|
*/
|
|
@@ -608,15 +608,16 @@ class DbxDetachController {
|
|
|
608
608
|
* Creates Angular providers that register a {@link DbxDetachController} implementation for DI.
|
|
609
609
|
*
|
|
610
610
|
* @param sourceType - The concrete class to provide as the controller.
|
|
611
|
-
* @returns
|
|
611
|
+
* @returns Array of Angular providers that bind the source type to {@link DbxDetachController}.
|
|
612
612
|
*
|
|
613
|
-
* @
|
|
614
|
-
* ```typescript
|
|
615
|
-
* @Component({
|
|
613
|
+
* @Component ({
|
|
616
614
|
* providers: provideDbxDetachController(MyDetachController),
|
|
617
615
|
* })
|
|
618
616
|
* export class MyComponent {}
|
|
619
617
|
* ```
|
|
618
|
+
*
|
|
619
|
+
* @example
|
|
620
|
+
* ```typescript
|
|
620
621
|
*/
|
|
621
622
|
function provideDbxDetachController(sourceType) {
|
|
622
623
|
return [
|
|
@@ -690,6 +691,9 @@ const DBX_THEME_COLORS = [...DBX_THEME_COLORS_MAIN, ...DBX_THEME_COLORS_EXTRA, .
|
|
|
690
691
|
* Any non-null object is treated as a config so template-only configs (i.e. `{ template: 'foo' }`)
|
|
691
692
|
* are detected before the service expands them.
|
|
692
693
|
*
|
|
694
|
+
* @param value - The value to test.
|
|
695
|
+
* @returns `true` when the value is a {@link DbxColorConfig}
|
|
696
|
+
*
|
|
693
697
|
* @example
|
|
694
698
|
* ```ts
|
|
695
699
|
* isDbxColorConfig('primary'); // false
|
|
@@ -697,9 +701,6 @@ const DBX_THEME_COLORS = [...DBX_THEME_COLORS_MAIN, ...DBX_THEME_COLORS_EXTRA, .
|
|
|
697
701
|
* isDbxColorConfig({ template: 'brand-positive' }); // true
|
|
698
702
|
* isDbxColorConfig(undefined); // false
|
|
699
703
|
* ```
|
|
700
|
-
*
|
|
701
|
-
* @param value - the value to test
|
|
702
|
-
* @returns `true` when the value is a {@link DbxColorConfig}
|
|
703
704
|
*/
|
|
704
705
|
function isDbxColorConfig(value) {
|
|
705
706
|
return typeof value === 'object' && value !== null;
|
|
@@ -719,15 +720,15 @@ const DBX_COLOR_CUSTOM_TEXT_CSS_CLASS = 'dbx-color-text';
|
|
|
719
720
|
/**
|
|
720
721
|
* Returns the CSS class name for a themed background color.
|
|
721
722
|
*
|
|
723
|
+
* @param color - The theme color, color config, or nullish/empty for the default class.
|
|
724
|
+
* @returns The CSS class name for the themed background (e.g., `'dbx-primary-bg'`, `'dbx-color-bg'`, or `'dbx-default'`)
|
|
725
|
+
*
|
|
722
726
|
* @example
|
|
723
727
|
* ```ts
|
|
724
728
|
* dbxColorBackground('primary'); // 'dbx-primary-bg'
|
|
725
729
|
* dbxColorBackground({ color: '#ff0066' }); // 'dbx-color-bg'
|
|
726
730
|
* dbxColorBackground(undefined); // 'dbx-default'
|
|
727
731
|
* ```
|
|
728
|
-
*
|
|
729
|
-
* @param color - the theme color, color config, or nullish/empty for the default class
|
|
730
|
-
* @returns the CSS class name for the themed background (e.g., `'dbx-primary-bg'`, `'dbx-color-bg'`, or `'dbx-default'`)
|
|
731
732
|
*/
|
|
732
733
|
function dbxColorBackground(color) {
|
|
733
734
|
let cssClass = 'dbx-default'; // default text color class (not -bg) to avoid setting --dbx-bg-color-current which interferes with button label color tokens
|
|
@@ -790,6 +791,7 @@ function dbxThemeColorCssTokenVar(color, returnDefault) {
|
|
|
790
791
|
return result;
|
|
791
792
|
}
|
|
792
793
|
// MARK: Compat
|
|
794
|
+
// COMPAT: Deprecated aliases
|
|
793
795
|
/**
|
|
794
796
|
* @deprecated Use {@link dbxThemeColorCssToken} instead.
|
|
795
797
|
*/
|
|
@@ -898,16 +900,14 @@ class AbstractProgressButtonDirective {
|
|
|
898
900
|
const workingValue = this.workingValueSignal();
|
|
899
901
|
const mode = config?.mode;
|
|
900
902
|
let result;
|
|
901
|
-
if (
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
result = 'indeterminate';
|
|
907
|
-
}
|
|
903
|
+
if (mode) {
|
|
904
|
+
result = mode;
|
|
905
|
+
}
|
|
906
|
+
else if (workingValue == null) {
|
|
907
|
+
result = 'indeterminate';
|
|
908
908
|
}
|
|
909
909
|
else {
|
|
910
|
-
result =
|
|
910
|
+
result = 'determinate';
|
|
911
911
|
}
|
|
912
912
|
return result;
|
|
913
913
|
}, ...(ngDevMode ? [{ debugName: "modeSignal" }] : /* istanbul ignore next */ []));
|
|
@@ -940,7 +940,8 @@ class AbstractProgressButtonDirective {
|
|
|
940
940
|
* Whether button content should be hidden via opacity (working spinner or echo overlay active).
|
|
941
941
|
*/
|
|
942
942
|
hideContentSignal = computed(() => {
|
|
943
|
-
|
|
943
|
+
const echoActive = this.echoActiveSignal();
|
|
944
|
+
return this.showProgressSignal() || echoActive;
|
|
944
945
|
}, ...(ngDevMode ? [{ debugName: "hideContentSignal" }] : /* istanbul ignore next */ []));
|
|
945
946
|
/**
|
|
946
947
|
* When true, the click handler will not call `stopImmediatePropagation()`,
|
|
@@ -977,9 +978,22 @@ class DbxColorServiceConfig {
|
|
|
977
978
|
* Service that registers named {@link DbxColorConfigTemplate} entries and expands
|
|
978
979
|
* {@link DbxColorConfig} values that reference a template by key.
|
|
979
980
|
*
|
|
980
|
-
*
|
|
981
|
-
*
|
|
982
|
-
*
|
|
981
|
+
* Seeded via `provideDbxStyleService({ dbxColorServiceConfig: { templates: [...] } })`,
|
|
982
|
+
* then injected by {@link DbxColorDirective} and {@link DbxTextColorDirective} to resolve
|
|
983
|
+
* template references at render time.
|
|
984
|
+
*
|
|
985
|
+
* @dbxWebComponent
|
|
986
|
+
* @dbxWebSlug color-service
|
|
987
|
+
* @dbxWebCategory layout
|
|
988
|
+
* @dbxWebRelated color, text-color, style-service
|
|
989
|
+
*
|
|
990
|
+
* @example
|
|
991
|
+
* ```ts
|
|
992
|
+
* const colorService = inject(DbxColorService);
|
|
993
|
+
* colorService.register({ key: 'brand-positive', config: { color: '#1f9b59', contrast: 'white', tone: 18 } });
|
|
994
|
+
* colorService.expandColorConfig({ template: 'brand-positive' });
|
|
995
|
+
* // -> { template: 'brand-positive', color: '#1f9b59', contrast: 'white', tone: 18 }
|
|
996
|
+
* ```
|
|
983
997
|
*/
|
|
984
998
|
class DbxColorService {
|
|
985
999
|
_templates = new Map();
|
|
@@ -992,8 +1006,8 @@ class DbxColorService {
|
|
|
992
1006
|
/**
|
|
993
1007
|
* Registers one or more {@link DbxColorConfigTemplate} entries.
|
|
994
1008
|
*
|
|
995
|
-
* @param templates -
|
|
996
|
-
* @param override -
|
|
1009
|
+
* @param templates - The template(s) to register.
|
|
1010
|
+
* @param override - Whether existing entries with the same key should be replaced (default true)
|
|
997
1011
|
*/
|
|
998
1012
|
register(templates, override = true) {
|
|
999
1013
|
useIterableOrValue(templates, (template) => {
|
|
@@ -1005,8 +1019,8 @@ class DbxColorService {
|
|
|
1005
1019
|
/**
|
|
1006
1020
|
* Returns whether a template with the given key has been registered.
|
|
1007
1021
|
*
|
|
1008
|
-
* @param key -
|
|
1009
|
-
* @returns
|
|
1022
|
+
* @param key - The template key to check.
|
|
1023
|
+
* @returns True when a template is registered under the given key.
|
|
1010
1024
|
*/
|
|
1011
1025
|
hasTemplate(key) {
|
|
1012
1026
|
return this._templates.has(key);
|
|
@@ -1014,8 +1028,8 @@ class DbxColorService {
|
|
|
1014
1028
|
/**
|
|
1015
1029
|
* Returns the {@link DbxColorConfigTemplate} registered under the given key, or undefined if none.
|
|
1016
1030
|
*
|
|
1017
|
-
* @param key -
|
|
1018
|
-
* @returns
|
|
1031
|
+
* @param key - The template key to look up.
|
|
1032
|
+
* @returns The registered template, or undefined when no template matches.
|
|
1019
1033
|
*/
|
|
1020
1034
|
getTemplate(key) {
|
|
1021
1035
|
return this._templates.get(key);
|
|
@@ -1023,7 +1037,7 @@ class DbxColorService {
|
|
|
1023
1037
|
/**
|
|
1024
1038
|
* Returns all currently registered template keys.
|
|
1025
1039
|
*
|
|
1026
|
-
* @returns
|
|
1040
|
+
* @returns Array of all registered template keys.
|
|
1027
1041
|
*/
|
|
1028
1042
|
getAllRegisteredTemplateKeys() {
|
|
1029
1043
|
return [...this._templates.keys()];
|
|
@@ -1034,6 +1048,9 @@ class DbxColorService {
|
|
|
1034
1048
|
*
|
|
1035
1049
|
* Returns the input unchanged when no template is set or when the template key is unknown.
|
|
1036
1050
|
*
|
|
1051
|
+
* @param config - The input config to expand.
|
|
1052
|
+
* @returns An expanded config, or the input unchanged when no expansion applies.
|
|
1053
|
+
*
|
|
1037
1054
|
* @example
|
|
1038
1055
|
* ```ts
|
|
1039
1056
|
* service.register({ key: 'brand-positive', config: { color: '#1f9b59', contrast: 'white', tone: 18 } });
|
|
@@ -1042,9 +1059,6 @@ class DbxColorService {
|
|
|
1042
1059
|
* service.expandColorConfig({ template: 'brand-positive', tone: 60 });
|
|
1043
1060
|
* // -> { template: 'brand-positive', color: '#1f9b59', contrast: 'white', tone: 60 }
|
|
1044
1061
|
* ```
|
|
1045
|
-
*
|
|
1046
|
-
* @param config - the input config to expand
|
|
1047
|
-
* @returns an expanded config, or the input unchanged when no expansion applies
|
|
1048
1062
|
*/
|
|
1049
1063
|
expandColorConfig(config) {
|
|
1050
1064
|
let result = config;
|
|
@@ -1076,6 +1090,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
1076
1090
|
* The standalone `[dbxColorTone]` input wins over `config.tone` when both are set; the same precedence
|
|
1077
1091
|
* applies to tonal mode.
|
|
1078
1092
|
*
|
|
1093
|
+
* @dbxWebComponent
|
|
1094
|
+
* @dbxWebSlug color
|
|
1095
|
+
* @dbxWebCategory layout
|
|
1096
|
+
* @dbxWebRelated text-color, color-service
|
|
1097
|
+
* @dbxWebMinimalExample ```html
|
|
1098
|
+
* <div [dbxColor]="'primary'"></div>
|
|
1099
|
+
* ```
|
|
1100
|
+
*
|
|
1079
1101
|
* @example
|
|
1080
1102
|
* ```html
|
|
1081
1103
|
* <div [dbxColor]="'primary'">Themed background</div>
|
|
@@ -1109,8 +1131,9 @@ class DbxColorDirective {
|
|
|
1109
1131
|
* Effective tone used for opacity. The standalone `[dbxColorTone]` input wins when set; otherwise `config.tone` applies.
|
|
1110
1132
|
*/
|
|
1111
1133
|
effectiveToneSignal = computed(() => {
|
|
1134
|
+
const _config = this._configSignal();
|
|
1112
1135
|
const inputTone = this.dbxColorTone();
|
|
1113
|
-
return inputTone ??
|
|
1136
|
+
return inputTone ?? _config?.tone;
|
|
1114
1137
|
}, ...(ngDevMode ? [{ debugName: "effectiveToneSignal" }] : /* istanbul ignore next */ []));
|
|
1115
1138
|
/**
|
|
1116
1139
|
* Whether tonal mode is active. Adds the `dbx-color-tonal` CSS class which
|
|
@@ -1122,10 +1145,11 @@ class DbxColorDirective {
|
|
|
1122
1145
|
* from `config.tone`.
|
|
1123
1146
|
*/
|
|
1124
1147
|
isTonalSignal = computed(() => {
|
|
1148
|
+
const _config = this._configSignal();
|
|
1125
1149
|
const inputTone = this.dbxColorTone();
|
|
1126
1150
|
let tonal = false;
|
|
1127
1151
|
if (inputTone == null) {
|
|
1128
|
-
const config =
|
|
1152
|
+
const config = _config;
|
|
1129
1153
|
if (config?.tonal != null) {
|
|
1130
1154
|
tonal = config.tonal;
|
|
1131
1155
|
}
|
|
@@ -1264,8 +1288,9 @@ class DbxProgressSpinnerButtonComponent extends AbstractProgressButtonDirective
|
|
|
1264
1288
|
return showText && config?.buttonIcon; // shows the button icon with showing the text.
|
|
1265
1289
|
}, ...(ngDevMode ? [{ debugName: "showTextButtonIconSignal" }] : /* istanbul ignore next */ []));
|
|
1266
1290
|
showIconSignal = computed(() => {
|
|
1291
|
+
const showTextContent = this.showTextContentSignal();
|
|
1267
1292
|
const config = this.configSignal();
|
|
1268
|
-
return (config?.buttonIcon && !
|
|
1293
|
+
return (config?.buttonIcon && !showTextContent // button icon must be defined
|
|
1269
1294
|
); // show icon if either fab or iconOnly is true
|
|
1270
1295
|
}, ...(ngDevMode ? [{ debugName: "showIconSignal" }] : /* istanbul ignore next */ []));
|
|
1271
1296
|
customSpinnerStyleSignal = computed(() => {
|
|
@@ -1395,22 +1420,27 @@ class DbxButtonComponent extends AbstractDbxButtonDirective {
|
|
|
1395
1420
|
allowClickPropagation = input(false, { ...(ngDevMode ? { debugName: "allowClickPropagation" } : /* istanbul ignore next */ {}), transform: isDefinedAndNotFalse });
|
|
1396
1421
|
mode = input(...(ngDevMode ? [undefined, { debugName: "mode" }] : /* istanbul ignore next */ []));
|
|
1397
1422
|
styleTypeSignal = computed(() => {
|
|
1423
|
+
const iconOnly = this.iconOnly();
|
|
1424
|
+
const raised = this.raised();
|
|
1425
|
+
const stroked = this.stroked();
|
|
1426
|
+
const flat = this.flat();
|
|
1427
|
+
const tonal = this.tonal();
|
|
1398
1428
|
const style = this.buttonStyle();
|
|
1399
1429
|
let type = this.type() ?? style?.type;
|
|
1400
1430
|
if (!type) {
|
|
1401
|
-
if (
|
|
1431
|
+
if (iconOnly) {
|
|
1402
1432
|
type = 'icon';
|
|
1403
1433
|
}
|
|
1404
|
-
else if (
|
|
1434
|
+
else if (raised) {
|
|
1405
1435
|
type = 'raised';
|
|
1406
1436
|
}
|
|
1407
|
-
else if (
|
|
1437
|
+
else if (stroked) {
|
|
1408
1438
|
type = 'stroked';
|
|
1409
1439
|
}
|
|
1410
|
-
else if (
|
|
1440
|
+
else if (flat) {
|
|
1411
1441
|
type = 'flat';
|
|
1412
1442
|
}
|
|
1413
|
-
else if (
|
|
1443
|
+
else if (tonal) {
|
|
1414
1444
|
type = 'tonal';
|
|
1415
1445
|
}
|
|
1416
1446
|
}
|
|
@@ -1418,8 +1448,10 @@ class DbxButtonComponent extends AbstractDbxButtonDirective {
|
|
|
1418
1448
|
}, ...(ngDevMode ? [{ debugName: "styleTypeSignal" }] : /* istanbul ignore next */ []));
|
|
1419
1449
|
configSignal = computed(() => {
|
|
1420
1450
|
// configure custom style
|
|
1451
|
+
const customContent = this.customContent();
|
|
1421
1452
|
const customStyle = {};
|
|
1422
1453
|
const buttonStyle = this.buttonStyle();
|
|
1454
|
+
// eslint-disable-next-line @typescript-eslint/no-deprecated -- reads the deprecated customButtonColor input/style for backward compatibility until removed
|
|
1423
1455
|
const customButtonColorValue = this.customButtonColor() ?? buttonStyle?.customButtonColor;
|
|
1424
1456
|
if (customButtonColorValue) {
|
|
1425
1457
|
customStyle['background'] = customButtonColorValue;
|
|
@@ -1439,7 +1471,7 @@ class DbxButtonComponent extends AbstractDbxButtonDirective {
|
|
|
1439
1471
|
const iconValue = this.iconSignal();
|
|
1440
1472
|
const buttonIcon = iconValue ? { fontIcon: iconValue } : undefined;
|
|
1441
1473
|
const textValue = this.textSignal();
|
|
1442
|
-
const hasTextContent = !!textValue || this._hasProjectedContent ||
|
|
1474
|
+
const hasTextContent = !!textValue || this._hasProjectedContent || customContent;
|
|
1443
1475
|
const isIconOnlyButton = buttonIcon && !hasTextContent;
|
|
1444
1476
|
const fab = this.fab() || buttonStyle?.fab;
|
|
1445
1477
|
const mode = this.mode() ?? buttonStyle?.mode;
|
|
@@ -2038,58 +2070,62 @@ class DbxDetachService {
|
|
|
2038
2070
|
* @returns The new or existing {@link DbxDetachInstance} for the given key.
|
|
2039
2071
|
*/
|
|
2040
2072
|
init(config) {
|
|
2041
|
-
const key = config.key ??
|
|
2073
|
+
const key = config.key ?? DEFAULT_DBX_DETACH_KEY;
|
|
2042
2074
|
const existing = this._entries.get(key);
|
|
2075
|
+
let instance;
|
|
2043
2076
|
if (existing) {
|
|
2044
|
-
|
|
2077
|
+
instance = new DbxDetachInstanceImpl(existing);
|
|
2045
2078
|
}
|
|
2046
|
-
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
|
|
2053
|
-
|
|
2054
|
-
|
|
2055
|
-
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
|
|
2062
|
-
|
|
2063
|
-
|
|
2064
|
-
|
|
2065
|
-
|
|
2066
|
-
|
|
2067
|
-
|
|
2068
|
-
|
|
2069
|
-
|
|
2070
|
-
|
|
2071
|
-
|
|
2072
|
-
|
|
2073
|
-
|
|
2079
|
+
else {
|
|
2080
|
+
const controller = new DbxDetachEntryController(key, config.data, this);
|
|
2081
|
+
// Build injector using shared utility, adding DbxDetachController provider
|
|
2082
|
+
const elementInjector = createInjectorForInjectionComponentConfig({
|
|
2083
|
+
config: {
|
|
2084
|
+
...config,
|
|
2085
|
+
providers: [{ provide: DbxDetachController, useValue: controller }, ...(config.providers ?? [])]
|
|
2086
|
+
},
|
|
2087
|
+
parentInjector: this._injector
|
|
2088
|
+
});
|
|
2089
|
+
// Create component imperatively (not in any VCR)
|
|
2090
|
+
const componentRef = createComponent(config.componentClass, {
|
|
2091
|
+
environmentInjector: this._envInjector,
|
|
2092
|
+
elementInjector
|
|
2093
|
+
});
|
|
2094
|
+
// Run init callback
|
|
2095
|
+
initInjectionComponent(componentRef, config);
|
|
2096
|
+
// Attach view to ApplicationRef for change detection
|
|
2097
|
+
this._appRef.attachView(componentRef.hostView);
|
|
2098
|
+
const overlayConfig = config.overlay ?? {};
|
|
2099
|
+
const entry = {
|
|
2100
|
+
key,
|
|
2101
|
+
componentRef,
|
|
2102
|
+
controller,
|
|
2103
|
+
overlayConfig
|
|
2104
|
+
};
|
|
2105
|
+
this._entries.set(key, entry);
|
|
2106
|
+
this._entries$.next(this._entries);
|
|
2107
|
+
instance = new DbxDetachInstanceImpl(entry);
|
|
2108
|
+
}
|
|
2109
|
+
return instance;
|
|
2074
2110
|
}
|
|
2075
2111
|
/**
|
|
2076
2112
|
* Gets the instance for the given key, if it exists.
|
|
2077
2113
|
*
|
|
2078
|
-
* @param key - The detach key to look up. Defaults to {@link
|
|
2114
|
+
* @param key - The detach key to look up. Defaults to {@link DEFAULT_DBX_DETACH_KEY}.
|
|
2079
2115
|
* @returns The instance if found, otherwise `undefined`.
|
|
2080
2116
|
*/
|
|
2081
2117
|
get(key) {
|
|
2082
|
-
const entry = this._entries.get(key ??
|
|
2118
|
+
const entry = this._entries.get(key ?? DEFAULT_DBX_DETACH_KEY);
|
|
2083
2119
|
return entry ? new DbxDetachInstanceImpl(entry) : undefined;
|
|
2084
2120
|
}
|
|
2085
2121
|
/**
|
|
2086
2122
|
* Observable of whether an entry exists for the given key.
|
|
2087
2123
|
*
|
|
2088
|
-
* @param key - The detach key to observe. Defaults to {@link
|
|
2124
|
+
* @param key - The detach key to observe. Defaults to {@link DEFAULT_DBX_DETACH_KEY}.
|
|
2089
2125
|
* @returns An observable that emits `true` when an entry exists for the key.
|
|
2090
2126
|
*/
|
|
2091
2127
|
has$(key) {
|
|
2092
|
-
const k = key ??
|
|
2128
|
+
const k = key ?? DEFAULT_DBX_DETACH_KEY;
|
|
2093
2129
|
return this._entries$.pipe(map((entries) => entries.has(k)), distinctUntilChanged());
|
|
2094
2130
|
}
|
|
2095
2131
|
/**
|
|
@@ -2103,19 +2139,17 @@ class DbxDetachService {
|
|
|
2103
2139
|
*/
|
|
2104
2140
|
attachToOutlet(key, outletElement) {
|
|
2105
2141
|
const entry = this._entries.get(key);
|
|
2106
|
-
if (
|
|
2107
|
-
|
|
2108
|
-
|
|
2109
|
-
|
|
2110
|
-
|
|
2111
|
-
|
|
2112
|
-
|
|
2142
|
+
if (entry) {
|
|
2143
|
+
const target = outletElement ?? entry.lastOutlet;
|
|
2144
|
+
// No outlet available or it's been removed from the DOM → skip
|
|
2145
|
+
if (target?.isConnected) {
|
|
2146
|
+
this._closeOverlay(entry);
|
|
2147
|
+
this._moveDomTo(entry, target);
|
|
2148
|
+
entry.currentOutlet = target;
|
|
2149
|
+
entry.lastOutlet = target;
|
|
2150
|
+
entry.controller.setWindowState(DbxDetachWindowState.ATTACHED);
|
|
2151
|
+
}
|
|
2113
2152
|
}
|
|
2114
|
-
this._closeOverlay(entry);
|
|
2115
|
-
this._moveDomTo(entry, target);
|
|
2116
|
-
entry.currentOutlet = target;
|
|
2117
|
-
entry.lastOutlet = target;
|
|
2118
|
-
entry.controller.setWindowState(DbxDetachWindowState.ATTACHED);
|
|
2119
2153
|
}
|
|
2120
2154
|
/**
|
|
2121
2155
|
* Moves the component to the floating overlay.
|
|
@@ -2295,7 +2329,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
2295
2329
|
class DbxDetachInitDirective {
|
|
2296
2330
|
_detachService = inject(DbxDetachService);
|
|
2297
2331
|
config = input.required({ ...(ngDevMode ? { debugName: "config" } : /* istanbul ignore next */ {}), alias: 'dbxDetachInit' });
|
|
2298
|
-
key = input(
|
|
2332
|
+
key = input(DEFAULT_DBX_DETACH_KEY, { ...(ngDevMode ? { debugName: "key" } : /* istanbul ignore next */ {}), alias: 'dbxDetachInitKey' });
|
|
2299
2333
|
ngOnInit() {
|
|
2300
2334
|
this._detachService.init({
|
|
2301
2335
|
...this.config(),
|
|
@@ -2335,7 +2369,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
2335
2369
|
class DbxDetachOutletComponent {
|
|
2336
2370
|
_detachService = inject(DbxDetachService);
|
|
2337
2371
|
_elementRef = inject(ElementRef);
|
|
2338
|
-
key = input(
|
|
2372
|
+
key = input(DEFAULT_DBX_DETACH_KEY, ...(ngDevMode ? [{ debugName: "key" }] : /* istanbul ignore next */ []));
|
|
2339
2373
|
/**
|
|
2340
2374
|
* When true, the component automatically moves to the floating overlay
|
|
2341
2375
|
* when this outlet is destroyed (e.g. page navigation). Defaults to false.
|
|
@@ -2483,8 +2517,14 @@ class DbxDialogContentFooterComponent {
|
|
|
2483
2517
|
config = input(...(ngDevMode ? [undefined, { debugName: "config" }] : /* istanbul ignore next */ []));
|
|
2484
2518
|
closeText = input(...(ngDevMode ? [undefined, { debugName: "closeText" }] : /* istanbul ignore next */ []));
|
|
2485
2519
|
buttonColor = input(...(ngDevMode ? [undefined, { debugName: "buttonColor" }] : /* istanbul ignore next */ []));
|
|
2486
|
-
closeTextSignal = computed(() =>
|
|
2487
|
-
|
|
2520
|
+
closeTextSignal = computed(() => {
|
|
2521
|
+
const config = this.config();
|
|
2522
|
+
return this.closeText() ?? config?.closeText ?? 'Close';
|
|
2523
|
+
}, ...(ngDevMode ? [{ debugName: "closeTextSignal" }] : /* istanbul ignore next */ []));
|
|
2524
|
+
buttonColorSignal = computed(() => {
|
|
2525
|
+
const config = this.config();
|
|
2526
|
+
return this.buttonColor() ?? config?.buttonColor ?? undefined;
|
|
2527
|
+
}, ...(ngDevMode ? [{ debugName: "buttonColorSignal" }] : /* istanbul ignore next */ []));
|
|
2488
2528
|
// eslint-disable-next-line @angular-eslint/no-output-native
|
|
2489
2529
|
close = output();
|
|
2490
2530
|
closeClicked() {
|
|
@@ -2535,9 +2575,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
2535
2575
|
*/
|
|
2536
2576
|
class DbxDialogContentDirective {
|
|
2537
2577
|
width = input('normal', { ...(ngDevMode ? { debugName: "width" } : /* istanbul ignore next */ {}), transform: (x) => x ?? 'normal' });
|
|
2538
|
-
|
|
2578
|
+
classConfigSignal = computed(() => `${this.width()}-dialog-content`, ...(ngDevMode ? [{ debugName: "classConfigSignal" }] : /* istanbul ignore next */ []));
|
|
2539
2579
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDialogContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
2540
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.11", type: DbxDialogContentDirective, isStandalone: true, selector: "dbx-dialog-content,[dbxDialogContent],.dbx-dialog-content", inputs: { width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "
|
|
2580
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.11", type: DbxDialogContentDirective, isStandalone: true, selector: "dbx-dialog-content,[dbxDialogContent],.dbx-dialog-content", inputs: { width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "classConfigSignal()" }, classAttribute: "dbx-dialog-content" }, ngImport: i0 });
|
|
2541
2581
|
}
|
|
2542
2582
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDialogContentDirective, decorators: [{
|
|
2543
2583
|
type: Directive,
|
|
@@ -2545,7 +2585,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
2545
2585
|
selector: 'dbx-dialog-content,[dbxDialogContent],.dbx-dialog-content',
|
|
2546
2586
|
host: {
|
|
2547
2587
|
class: 'dbx-dialog-content',
|
|
2548
|
-
'[class]': `
|
|
2588
|
+
'[class]': `classConfigSignal()`
|
|
2549
2589
|
},
|
|
2550
2590
|
standalone: true
|
|
2551
2591
|
}]
|
|
@@ -2654,8 +2694,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
2654
2694
|
/**
|
|
2655
2695
|
* Sanitizes a {@link DbxDialogContentConfig} by normalizing the panelClass into an array.
|
|
2656
2696
|
*
|
|
2657
|
-
* @param input - The dialog content config to sanitize, or null/undefined
|
|
2658
|
-
* @returns A new config with panelClass normalized to an array of CSS class strings
|
|
2697
|
+
* @param input - The dialog content config to sanitize, or null/undefined.
|
|
2698
|
+
* @returns A new config with panelClass normalized to an array of CSS class strings.
|
|
2659
2699
|
*
|
|
2660
2700
|
* @example
|
|
2661
2701
|
* ```ts
|
|
@@ -2884,8 +2924,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
2884
2924
|
*
|
|
2885
2925
|
* Must be called in an Angular injection context. Automatically disconnects the ResizeObserver on destroy.
|
|
2886
2926
|
*
|
|
2887
|
-
* @param inputElement -
|
|
2888
|
-
* @returns
|
|
2927
|
+
* @param inputElement - The element to observe; if omitted, the host element is injected via `ElementRef`
|
|
2928
|
+
* @returns A read-only signal of resize events.
|
|
2889
2929
|
*
|
|
2890
2930
|
* @example
|
|
2891
2931
|
* ```ts
|
|
@@ -3349,11 +3389,9 @@ class DbxFilterPopoverButtonComponent extends AbstractFilterPopoverButtonDirecti
|
|
|
3349
3389
|
buttonDisplayStyle = input(...(ngDevMode ? [undefined, { debugName: "buttonDisplayStyle" }] : /* istanbul ignore next */ []));
|
|
3350
3390
|
buttonDisplaySignal = computed(() => {
|
|
3351
3391
|
const pairDisplay = this.buttonDisplayStyle()?.display;
|
|
3392
|
+
// eslint-disable-next-line @typescript-eslint/no-deprecated -- reads the deprecated buttonDisplay input for backward compatibility until removed
|
|
3352
3393
|
const directDisplay = this.buttonDisplay();
|
|
3353
|
-
|
|
3354
|
-
return undefined;
|
|
3355
|
-
}
|
|
3356
|
-
return { ...pairDisplay, ...directDisplay };
|
|
3394
|
+
return !pairDisplay && !directDisplay ? undefined : { ...pairDisplay, ...directDisplay };
|
|
3357
3395
|
}, ...(ngDevMode ? [{ debugName: "buttonDisplaySignal" }] : /* istanbul ignore next */ []));
|
|
3358
3396
|
buttonStyleSignal = computed(() => this.buttonDisplayStyle()?.style, ...(ngDevMode ? [{ debugName: "buttonStyleSignal" }] : /* istanbul ignore next */ []));
|
|
3359
3397
|
showFilterPopover() {
|
|
@@ -3476,7 +3514,7 @@ class AbstractDbxPresetFilterMenuDirective {
|
|
|
3476
3514
|
this.presetSelected.emit(preset);
|
|
3477
3515
|
if (presetValue == null || (typeof presetValue !== 'function' && objectHasNoKeys(presetValue))) {
|
|
3478
3516
|
// set and then reset if the value is null or empty
|
|
3479
|
-
this.filterSourceDirective.setFilter(
|
|
3517
|
+
this.filterSourceDirective.setFilter(presetValue ?? {});
|
|
3480
3518
|
this.filterSourceDirective.resetFilter();
|
|
3481
3519
|
}
|
|
3482
3520
|
else {
|
|
@@ -3518,6 +3556,9 @@ class DbxRouterWebProviderConfig {
|
|
|
3518
3556
|
*
|
|
3519
3557
|
* Must be called in an Angular injection context.
|
|
3520
3558
|
*
|
|
3559
|
+
* @param config - Configuration specifying the click target, child element to intercept, and optional disabled signal.
|
|
3560
|
+
* @returns The created Angular effect reference.
|
|
3561
|
+
*
|
|
3521
3562
|
* @example
|
|
3522
3563
|
* ```ts
|
|
3523
3564
|
* overrideClickElementEffect({
|
|
@@ -3525,9 +3566,6 @@ class DbxRouterWebProviderConfig {
|
|
|
3525
3566
|
* childClickTarget: this.buttonElementRef
|
|
3526
3567
|
* });
|
|
3527
3568
|
* ```
|
|
3528
|
-
*
|
|
3529
|
-
* @param config - configuration specifying the click target, child element to intercept, and optional disabled signal
|
|
3530
|
-
* @returns the created Angular effect reference
|
|
3531
3569
|
*/
|
|
3532
3570
|
function overrideClickElementEffect(config) {
|
|
3533
3571
|
const { clickTarget, childClickTarget, disabledSignal } = config;
|
|
@@ -3721,19 +3759,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
3721
3759
|
*/
|
|
3722
3760
|
class DbxAnchorListComponent {
|
|
3723
3761
|
anchors = input.required({ ...(ngDevMode ? { debugName: "anchors" } : /* istanbul ignore next */ {}), transform: (x) => x ?? [] });
|
|
3724
|
-
|
|
3762
|
+
expandedAnchorsSignal = computed(() => {
|
|
3725
3763
|
const anchors = this.anchors();
|
|
3726
3764
|
return expandClickableAnchorLinkTrees(anchors).map((y) => {
|
|
3727
3765
|
y.classes = `${y.depth > 0 ? 'dbx-anchor-list-child' : 'dbx-anchor-list-root'} dbx-anchor-list-depth-${y.depth}`;
|
|
3728
3766
|
return y;
|
|
3729
3767
|
});
|
|
3730
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
3768
|
+
}, ...(ngDevMode ? [{ debugName: "expandedAnchorsSignal" }] : /* istanbul ignore next */ []));
|
|
3731
3769
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxAnchorListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3732
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxAnchorListComponent, isStandalone: true, selector: "dbx-anchor-list", inputs: { anchors: { classPropertyName: "anchors", publicName: "anchors", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<mat-nav-list class=\"dbx-anchor-list\">\n @for (expanded of
|
|
3770
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxAnchorListComponent, isStandalone: true, selector: "dbx-anchor-list", inputs: { anchors: { classPropertyName: "anchors", publicName: "anchors", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<mat-nav-list class=\"dbx-anchor-list\">\n @for (expanded of expandedAnchorsSignal(); track $index; let last = $last) {\n <dbx-anchor [anchor]=\"expanded.value\" [ngClass]=\"expanded.classes\">\n <a mat-list-item [disabled]=\"expanded.value.disabled\">\n @if (expanded.value.icon) {\n <mat-icon matListItemIcon>{{ expanded.value.icon }}</mat-icon>\n }\n <!-- TODO: Add an icon from a letter if anchor.icon is unavailable. -->\n <div matListItemTitle>{{ expanded.value.title }}</div>\n @if (expanded.value.hint) {\n <div matListItemLine class=\"dbx-small\">{{ expanded.value.hint }}</div>\n }\n @if (expanded.value.content) {\n <dbx-injection [config]=\"expanded.value.content\"></dbx-injection>\n }\n </a>\n @if (!last) {\n <mat-divider></mat-divider>\n }\n </dbx-anchor>\n }\n</mat-nav-list>\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: MatListItemLine, selector: "[matListItemLine]" }, { kind: "directive", type: MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: DbxAnchorComponent, selector: "dbx-anchor, [dbx-anchor]", inputs: ["block"] }, { kind: "component", type: DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3733
3771
|
}
|
|
3734
3772
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxAnchorListComponent, decorators: [{
|
|
3735
3773
|
type: Component,
|
|
3736
|
-
args: [{ selector: 'dbx-anchor-list', imports: [NgClass, MatNavList, MatListItem, MatListItemIcon, MatListItemLine, MatListItemTitle, MatIconModule, MatDivider, DbxAnchorComponent, DbxInjectionComponent], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<mat-nav-list class=\"dbx-anchor-list\">\n @for (expanded of
|
|
3774
|
+
args: [{ selector: 'dbx-anchor-list', imports: [NgClass, MatNavList, MatListItem, MatListItemIcon, MatListItemLine, MatListItemTitle, MatIconModule, MatDivider, DbxAnchorComponent, DbxInjectionComponent], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<mat-nav-list class=\"dbx-anchor-list\">\n @for (expanded of expandedAnchorsSignal(); track $index; let last = $last) {\n <dbx-anchor [anchor]=\"expanded.value\" [ngClass]=\"expanded.classes\">\n <a mat-list-item [disabled]=\"expanded.value.disabled\">\n @if (expanded.value.icon) {\n <mat-icon matListItemIcon>{{ expanded.value.icon }}</mat-icon>\n }\n <!-- TODO: Add an icon from a letter if anchor.icon is unavailable. -->\n <div matListItemTitle>{{ expanded.value.title }}</div>\n @if (expanded.value.hint) {\n <div matListItemLine class=\"dbx-small\">{{ expanded.value.hint }}</div>\n }\n @if (expanded.value.content) {\n <dbx-injection [config]=\"expanded.value.content\"></dbx-injection>\n }\n </a>\n @if (!last) {\n <mat-divider></mat-divider>\n }\n </dbx-anchor>\n }\n</mat-nav-list>\n" }]
|
|
3737
3775
|
}], propDecorators: { anchors: [{ type: i0.Input, args: [{ isSignal: true, alias: "anchors", required: true }] }] } });
|
|
3738
3776
|
|
|
3739
3777
|
/**
|
|
@@ -3766,10 +3804,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
3766
3804
|
/**
|
|
3767
3805
|
* Creates an observable that emits the button text for a preset filter menu based on the current selection.
|
|
3768
3806
|
*
|
|
3769
|
-
* @param config$ - Observable of the preset filter menu configuration
|
|
3770
|
-
* @param selection$ - Observable of the currently selected preset, used to derive the display title
|
|
3807
|
+
* @param config$ - Observable of the preset filter menu configuration.
|
|
3808
|
+
* @param selection$ - Observable of the currently selected preset, used to derive the display title.
|
|
3771
3809
|
* @param defaultText - Fallback text when no selection or unknownSelectionText is configured. Defaults to 'Filter'.
|
|
3772
|
-
* @returns An observable emitting the resolved button text string
|
|
3810
|
+
* @returns An observable emitting the resolved button text string.
|
|
3773
3811
|
*
|
|
3774
3812
|
* @example
|
|
3775
3813
|
* ```ts
|
|
@@ -3782,10 +3820,10 @@ function dbxPresetFilterMenuButtonTextObservable(config$, selection$, defaultTex
|
|
|
3782
3820
|
/**
|
|
3783
3821
|
* Creates an observable that emits the button icon for a preset filter menu based on the current selection and config.
|
|
3784
3822
|
*
|
|
3785
|
-
* @param config$ - Observable of the preset filter menu configuration controlling icon behavior
|
|
3786
|
-
* @param selection$ - Observable of the currently selected preset, used to derive the display icon
|
|
3823
|
+
* @param config$ - Observable of the preset filter menu configuration controlling icon behavior.
|
|
3824
|
+
* @param selection$ - Observable of the currently selected preset, used to derive the display icon.
|
|
3787
3825
|
* @param defaultIcon - Fallback icon when no filterIcon is configured. Defaults to 'arrow_drop_down'.
|
|
3788
|
-
* @returns An observable emitting the resolved icon string, or undefined when no icon should be shown
|
|
3826
|
+
* @returns An observable emitting the resolved icon string, or undefined when no icon should be shown.
|
|
3789
3827
|
*
|
|
3790
3828
|
* @example
|
|
3791
3829
|
* ```ts
|
|
@@ -3864,7 +3902,7 @@ class AbstractDbxPartialPresetFilterMenuDirective {
|
|
|
3864
3902
|
const presetValue = preset.partialPresetValue;
|
|
3865
3903
|
if (presetValue == null || (typeof presetValue !== 'function' && objectHasNoKeys(presetValue))) {
|
|
3866
3904
|
// set and then reset if the value is null or empty
|
|
3867
|
-
this.filterSourceDirective.setFilter(
|
|
3905
|
+
this.filterSourceDirective.setFilter(presetValue ?? {});
|
|
3868
3906
|
this.filterSourceDirective.resetFilter();
|
|
3869
3907
|
}
|
|
3870
3908
|
else {
|
|
@@ -4014,9 +4052,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
4014
4052
|
/**
|
|
4015
4053
|
* Opens a dialog containing a {@link DbxIframeComponent} to display a URL in an iframe.
|
|
4016
4054
|
*
|
|
4017
|
-
* @param matDialog - The Angular Material dialog service used to open the dialog
|
|
4018
|
-
* @param config - Configuration specifying the content URL and dialog options
|
|
4019
|
-
* @returns A reference to the opened dialog for controlling or subscribing to its lifecycle
|
|
4055
|
+
* @param matDialog - The Angular Material dialog service used to open the dialog.
|
|
4056
|
+
* @param config - Configuration specifying the content URL and dialog options.
|
|
4057
|
+
* @returns A reference to the opened dialog for controlling or subscribing to its lifecycle.
|
|
4020
4058
|
*
|
|
4021
4059
|
* @example
|
|
4022
4060
|
* ```ts
|
|
@@ -4163,9 +4201,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
4163
4201
|
/**
|
|
4164
4202
|
* Opens a dialog containing a {@link DbxEmbedComponent} to display embedded content from a URL or Blob.
|
|
4165
4203
|
*
|
|
4166
|
-
* @param matDialog - The Angular Material dialog service used to open the dialog
|
|
4167
|
-
* @param config - Configuration specifying the content source (URL or Blob), MIME type, and dialog options
|
|
4168
|
-
* @returns A reference to the opened dialog for controlling or subscribing to its lifecycle
|
|
4204
|
+
* @param matDialog - The Angular Material dialog service used to open the dialog.
|
|
4205
|
+
* @param config - Configuration specifying the content source (URL or Blob), MIME type, and dialog options.
|
|
4206
|
+
* @returns A reference to the opened dialog for controlling or subscribing to its lifecycle.
|
|
4169
4207
|
*
|
|
4170
4208
|
* @example
|
|
4171
4209
|
* ```ts
|
|
@@ -4700,12 +4738,13 @@ class DbxPromptConfirm {
|
|
|
4700
4738
|
* Provides a {@link DbxPromptConfirm} implementation for dependency injection.
|
|
4701
4739
|
*
|
|
4702
4740
|
* @param sourceType - The concrete class that implements {@link DbxPromptConfirm}
|
|
4703
|
-
* @returns
|
|
4741
|
+
* @returns The providers that register the given type as the {@link DbxPromptConfirm} implementation.
|
|
4742
|
+
*
|
|
4743
|
+
* @Directive ({ providers: provideDbxPromptConfirm(MyConfirmDirective) })
|
|
4744
|
+
* ```
|
|
4704
4745
|
*
|
|
4705
4746
|
* @example
|
|
4706
4747
|
* ```ts
|
|
4707
|
-
* @Directive({ providers: provideDbxPromptConfirm(MyConfirmDirective) })
|
|
4708
|
-
* ```
|
|
4709
4748
|
*/
|
|
4710
4749
|
function provideDbxPromptConfirm(sourceType) {
|
|
4711
4750
|
return [
|
|
@@ -4776,6 +4815,7 @@ class DbxSectionHeaderComponent {
|
|
|
4776
4815
|
hintInline = input(...(ngDevMode ? [undefined, { debugName: "hintInline" }] : /* istanbul ignore next */ []));
|
|
4777
4816
|
hintInlineDefault = signal(undefined, ...(ngDevMode ? [{ debugName: "hintInlineDefault" }] : /* istanbul ignore next */ []));
|
|
4778
4817
|
headerConfigSignal = computed(() => {
|
|
4818
|
+
const hintInlineDefault = this.hintInlineDefault();
|
|
4779
4819
|
const headerConfig = this.headerConfig();
|
|
4780
4820
|
const config = {
|
|
4781
4821
|
h: this.h() ?? headerConfig?.h,
|
|
@@ -4784,7 +4824,7 @@ class DbxSectionHeaderComponent {
|
|
|
4784
4824
|
onlyHeader: this.onlyHeader() ?? headerConfig?.onlyHeader,
|
|
4785
4825
|
icon: this.icon() ?? headerConfig?.icon,
|
|
4786
4826
|
hint: this.hint() ?? headerConfig?.hint,
|
|
4787
|
-
hintInline: this.hintInline() ?? headerConfig?.hintInline ??
|
|
4827
|
+
hintInline: this.hintInline() ?? headerConfig?.hintInline ?? hintInlineDefault
|
|
4788
4828
|
};
|
|
4789
4829
|
return config;
|
|
4790
4830
|
}, ...(ngDevMode ? [{ debugName: "headerConfigSignal" }] : /* istanbul ignore next */ []));
|
|
@@ -4940,11 +4980,11 @@ class DbxSectionComponent extends DbxSectionHeaderComponent {
|
|
|
4940
4980
|
* Apply elevated card styling.
|
|
4941
4981
|
*/
|
|
4942
4982
|
elevate = input(false, ...(ngDevMode ? [{ debugName: "elevate" }] : /* istanbul ignore next */ []));
|
|
4943
|
-
|
|
4983
|
+
classConfigSignal = computed(() => {
|
|
4944
4984
|
return this.elevate() ? 'dbx-section-elevate dbx-content-elevate' : '';
|
|
4945
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
4985
|
+
}, ...(ngDevMode ? [{ debugName: "classConfigSignal" }] : /* istanbul ignore next */ []));
|
|
4946
4986
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxSectionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
4947
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.11", type: DbxSectionComponent, isStandalone: true, selector: "dbx-section", inputs: { elevate: { classPropertyName: "elevate", publicName: "elevate", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "region" }, properties: { "class": "
|
|
4987
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.11", type: DbxSectionComponent, isStandalone: true, selector: "dbx-section", inputs: { elevate: { classPropertyName: "elevate", publicName: "elevate", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "region" }, properties: { "class": "classConfigSignal()", "attr.aria-label": "headerConfigSignal().header" }, classAttribute: "d-block dbx-section" }, usesInheritance: true, ngImport: i0, template: `
|
|
4948
4988
|
<div class="dbx-section-header" [h]="headerConfigSignal().h ?? 3" [header]="headerConfigSignal().header" [onlyHeader]="headerConfigSignal().onlyHeader" [icon]="headerConfigSignal().icon" [hint]="headerConfigSignal().hint" [hintInline]="headerConfigSignal().hintInline">
|
|
4949
4989
|
<ng-content select="[sectionHeader]"></ng-content>
|
|
4950
4990
|
</div>
|
|
@@ -4968,7 +5008,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
4968
5008
|
host: {
|
|
4969
5009
|
class: 'd-block dbx-section',
|
|
4970
5010
|
role: 'region',
|
|
4971
|
-
'[class]': '
|
|
5011
|
+
'[class]': 'classConfigSignal()',
|
|
4972
5012
|
'[attr.aria-label]': 'headerConfigSignal().header'
|
|
4973
5013
|
},
|
|
4974
5014
|
imports: [DbxSectionHeaderComponent],
|
|
@@ -5292,11 +5332,11 @@ class DbxContentContainerDirective {
|
|
|
5292
5332
|
grow = input('wide', ...(ngDevMode ? [{ debugName: "grow" }] : /* istanbul ignore next */ []));
|
|
5293
5333
|
padding = input('normal', ...(ngDevMode ? [{ debugName: "padding" }] : /* istanbul ignore next */ []));
|
|
5294
5334
|
topPadding = input('none', ...(ngDevMode ? [{ debugName: "topPadding" }] : /* istanbul ignore next */ []));
|
|
5295
|
-
|
|
5335
|
+
classConfigSignal = computed(() => {
|
|
5296
5336
|
return 'container-' + this.grow() + ' container-padding-' + this.padding() + ' container-top-padding-' + this.topPadding();
|
|
5297
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
5337
|
+
}, ...(ngDevMode ? [{ debugName: "classConfigSignal" }] : /* istanbul ignore next */ []));
|
|
5298
5338
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxContentContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
5299
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.11", type: DbxContentContainerDirective, isStandalone: true, selector: "dbx-content-container,[dbxContentContainer],.dbx-content-container", inputs: { grow: { classPropertyName: "grow", publicName: "grow", isSignal: true, isRequired: false, transformFunction: null }, padding: { classPropertyName: "padding", publicName: "padding", isSignal: true, isRequired: false, transformFunction: null }, topPadding: { classPropertyName: "topPadding", publicName: "topPadding", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "
|
|
5339
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.11", type: DbxContentContainerDirective, isStandalone: true, selector: "dbx-content-container,[dbxContentContainer],.dbx-content-container", inputs: { grow: { classPropertyName: "grow", publicName: "grow", isSignal: true, isRequired: false, transformFunction: null }, padding: { classPropertyName: "padding", publicName: "padding", isSignal: true, isRequired: false, transformFunction: null }, topPadding: { classPropertyName: "topPadding", publicName: "topPadding", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "classConfigSignal()" }, classAttribute: "d-block dbx-content-container" }, ngImport: i0 });
|
|
5300
5340
|
}
|
|
5301
5341
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxContentContainerDirective, decorators: [{
|
|
5302
5342
|
type: Directive,
|
|
@@ -5304,7 +5344,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
5304
5344
|
selector: 'dbx-content-container,[dbxContentContainer],.dbx-content-container',
|
|
5305
5345
|
host: {
|
|
5306
5346
|
class: 'd-block dbx-content-container',
|
|
5307
|
-
'[class]': `
|
|
5347
|
+
'[class]': `classConfigSignal()`
|
|
5308
5348
|
},
|
|
5309
5349
|
standalone: true
|
|
5310
5350
|
}]
|
|
@@ -5478,8 +5518,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
5478
5518
|
/**
|
|
5479
5519
|
* Returns a string that can be used as the "accept" attribute of a file input element.
|
|
5480
5520
|
*
|
|
5481
|
-
* @param accept - A file accept string or array of filter type strings to convert
|
|
5482
|
-
* @returns A comma-separated string suitable for the HTML accept attribute
|
|
5521
|
+
* @param accept - A file accept string or array of filter type strings to convert.
|
|
5522
|
+
* @returns A comma-separated string suitable for the HTML accept attribute.
|
|
5483
5523
|
*/
|
|
5484
5524
|
function fileAcceptString(accept) {
|
|
5485
5525
|
return typeof accept === 'string' ? accept : accept.join(',');
|
|
@@ -5487,8 +5527,8 @@ function fileAcceptString(accept) {
|
|
|
5487
5527
|
/**
|
|
5488
5528
|
* Converts a comma-separated accept string or array into a {@link FileAcceptFilterTypeStringArray}.
|
|
5489
5529
|
*
|
|
5490
|
-
* @param accept - A file accept string or array of filter type strings to normalize
|
|
5491
|
-
* @returns
|
|
5530
|
+
* @param accept - A file accept string or array of filter type strings to normalize.
|
|
5531
|
+
* @returns The individual filter type strings.
|
|
5492
5532
|
*
|
|
5493
5533
|
* @example
|
|
5494
5534
|
* ```ts
|
|
@@ -5502,8 +5542,8 @@ function fileAcceptFilterTypeStringArray(accept) {
|
|
|
5502
5542
|
/**
|
|
5503
5543
|
* Creates a {@link FileArrayAcceptMatchFunction} that filters and separates files based on accept criteria and multiple file support.
|
|
5504
5544
|
*
|
|
5505
|
-
* @param config - Configuration specifying the accept criteria and whether multiple files are allowed
|
|
5506
|
-
* @returns
|
|
5545
|
+
* @param config - Configuration specifying the accept criteria and whether multiple files are allowed.
|
|
5546
|
+
* @returns Accepts an array of files and returns the categorized match result.
|
|
5507
5547
|
*
|
|
5508
5548
|
* @example
|
|
5509
5549
|
* ```ts
|
|
@@ -5511,6 +5551,7 @@ function fileAcceptFilterTypeStringArray(accept) {
|
|
|
5511
5551
|
* const result = matchFn(fileList);
|
|
5512
5552
|
* console.log(result.accepted, result.rejected);
|
|
5513
5553
|
* ```
|
|
5554
|
+
*
|
|
5514
5555
|
* @__NO_SIDE_EFFECTS__
|
|
5515
5556
|
*/
|
|
5516
5557
|
function fileArrayAcceptMatchFunction(config) {
|
|
@@ -5531,8 +5572,8 @@ function fileArrayAcceptMatchFunction(config) {
|
|
|
5531
5572
|
/**
|
|
5532
5573
|
* Creates a {@link FileAcceptFunction} that checks individual files against accept criteria (MIME types, wildcards, or file extensions).
|
|
5533
5574
|
*
|
|
5534
|
-
* @param accept - A file accept string or array specifying which MIME types, wildcards, or file extensions to allow
|
|
5535
|
-
* @returns A decision function that returns true if a file matches any of the accept criteria
|
|
5575
|
+
* @param accept - A file accept string or array specifying which MIME types, wildcards, or file extensions to allow.
|
|
5576
|
+
* @returns A decision function that returns true if a file matches any of the accept criteria.
|
|
5536
5577
|
*
|
|
5537
5578
|
* @example
|
|
5538
5579
|
* ```ts
|
|
@@ -5540,6 +5581,7 @@ function fileArrayAcceptMatchFunction(config) {
|
|
|
5540
5581
|
* isAccepted({ name: 'photo.png', type: 'image/png' }); // true
|
|
5541
5582
|
* isAccepted({ name: 'doc.txt', type: 'text/plain' }); // false
|
|
5542
5583
|
* ```
|
|
5584
|
+
*
|
|
5543
5585
|
* @__NO_SIDE_EFFECTS__
|
|
5544
5586
|
*/
|
|
5545
5587
|
function fileAcceptFunction(accept) {
|
|
@@ -5588,12 +5630,13 @@ class DbxFileUploadActionCompatable {
|
|
|
5588
5630
|
* Provides a {@link DbxFileUploadActionCompatable} for dependency injection from the given component type.
|
|
5589
5631
|
*
|
|
5590
5632
|
* @param sourceType - The concrete component class that implements {@link DbxFileUploadActionCompatable}
|
|
5591
|
-
* @returns
|
|
5633
|
+
* @returns The providers that register the given type as the {@link DbxFileUploadActionCompatable} implementation.
|
|
5634
|
+
*
|
|
5635
|
+
* @Component ({ providers: provideDbxFileUploadActionCompatable(MyUploadComponent) })
|
|
5636
|
+
* ```
|
|
5592
5637
|
*
|
|
5593
5638
|
* @example
|
|
5594
5639
|
* ```ts
|
|
5595
|
-
* @Component({ providers: provideDbxFileUploadActionCompatable(MyUploadComponent) })
|
|
5596
|
-
* ```
|
|
5597
5640
|
*/
|
|
5598
5641
|
function provideDbxFileUploadActionCompatable(sourceType) {
|
|
5599
5642
|
return [
|
|
@@ -6141,15 +6184,16 @@ class DbxErrorWidgetService {
|
|
|
6141
6184
|
});
|
|
6142
6185
|
}
|
|
6143
6186
|
register(entry, override = true) {
|
|
6187
|
+
let registered = false;
|
|
6144
6188
|
if (override || !this._entries.has(entry.code)) {
|
|
6145
6189
|
this._entries.set(entry.code, {
|
|
6146
6190
|
...entry,
|
|
6147
6191
|
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
6148
6192
|
widgetComponentClass: entry.widgetComponentClass ?? entry.componentClass
|
|
6149
6193
|
});
|
|
6150
|
-
|
|
6194
|
+
registered = true;
|
|
6151
6195
|
}
|
|
6152
|
-
return
|
|
6196
|
+
return registered;
|
|
6153
6197
|
}
|
|
6154
6198
|
// MARK: Get
|
|
6155
6199
|
getErrorWidgetIdentifiers() {
|
|
@@ -6197,21 +6241,21 @@ class DbxErrorWidgetViewComponent {
|
|
|
6197
6241
|
let config;
|
|
6198
6242
|
if (error != null) {
|
|
6199
6243
|
const entry = this.dbxErrorWidgetService.getErrorWidgetEntry(error.code);
|
|
6200
|
-
if (entry
|
|
6201
|
-
const
|
|
6202
|
-
|
|
6203
|
-
if (componentClass != null) {
|
|
6244
|
+
if (entry == null) {
|
|
6245
|
+
const unknownEntry = this.dbxErrorWidgetService.getUnknownErrorWidgetEntry();
|
|
6246
|
+
if (unknownEntry?.widgetComponentClass != null) {
|
|
6204
6247
|
config = {
|
|
6205
|
-
componentClass,
|
|
6248
|
+
componentClass: unknownEntry?.widgetComponentClass,
|
|
6206
6249
|
data: error
|
|
6207
6250
|
};
|
|
6208
6251
|
}
|
|
6209
6252
|
}
|
|
6210
6253
|
else {
|
|
6211
|
-
const
|
|
6212
|
-
|
|
6254
|
+
const defaultEntry = this.dbxErrorWidgetService.getDefaultErrorWidgetEntry();
|
|
6255
|
+
const componentClass = entry.widgetComponentClass ?? defaultEntry?.widgetComponentClass;
|
|
6256
|
+
if (componentClass != null) {
|
|
6213
6257
|
config = {
|
|
6214
|
-
componentClass
|
|
6258
|
+
componentClass,
|
|
6215
6259
|
data: error
|
|
6216
6260
|
};
|
|
6217
6261
|
}
|
|
@@ -6338,6 +6382,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
6338
6382
|
* object carrying an arbitrary CSS color value. Unlike {@link DbxColorDirective} which sets the background,
|
|
6339
6383
|
* this directive only sets the foreground text color.
|
|
6340
6384
|
*
|
|
6385
|
+
* @dbxWebComponent
|
|
6386
|
+
* @dbxWebSlug text-color
|
|
6387
|
+
* @dbxWebCategory layout
|
|
6388
|
+
* @dbxWebRelated color, color-service
|
|
6389
|
+
* @dbxWebMinimalExample ```html
|
|
6390
|
+
* <span [dbxTextColor]="'primary'"></span>
|
|
6391
|
+
* ```
|
|
6392
|
+
*
|
|
6341
6393
|
* @example
|
|
6342
6394
|
* ```html
|
|
6343
6395
|
* <mat-icon [dbxTextColor]="'warn'">error</mat-icon>
|
|
@@ -6479,11 +6531,18 @@ class DbxErrorComponent {
|
|
|
6479
6531
|
error = input(...(ngDevMode ? [undefined, { debugName: "error" }] : /* istanbul ignore next */ []));
|
|
6480
6532
|
iconOnly = input(false, ...(ngDevMode ? [{ debugName: "iconOnly" }] : /* istanbul ignore next */ []));
|
|
6481
6533
|
_errorOverrideSignal = signal(undefined, ...(ngDevMode ? [{ debugName: "_errorOverrideSignal" }] : /* istanbul ignore next */ []));
|
|
6482
|
-
errorSignal = computed(() =>
|
|
6483
|
-
|
|
6534
|
+
errorSignal = computed(() => {
|
|
6535
|
+
const error = this.error();
|
|
6536
|
+
return this._errorOverrideSignal() ?? error;
|
|
6537
|
+
}, ...(ngDevMode ? [{ debugName: "errorSignal" }] : /* istanbul ignore next */ []));
|
|
6538
|
+
stateSignal = computed(() => {
|
|
6484
6539
|
const rawError = this.errorSignal();
|
|
6485
6540
|
const iconOnly = this.iconOnly();
|
|
6486
|
-
|
|
6541
|
+
let result;
|
|
6542
|
+
if (rawError == null) {
|
|
6543
|
+
result = { viewType: 'none' };
|
|
6544
|
+
}
|
|
6545
|
+
else {
|
|
6487
6546
|
const error = toReadableError(rawError);
|
|
6488
6547
|
const isDefaultError = iconOnly ? false : isDefaultReadableError(error);
|
|
6489
6548
|
let state = {
|
|
@@ -6510,19 +6569,19 @@ class DbxErrorComponent {
|
|
|
6510
6569
|
};
|
|
6511
6570
|
}
|
|
6512
6571
|
}
|
|
6513
|
-
|
|
6514
|
-
}
|
|
6515
|
-
return
|
|
6516
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
6517
|
-
viewTypeSignal = computed(() => this.
|
|
6518
|
-
isDefaultErrorSignal = computed(() => this.
|
|
6519
|
-
messageSignal = computed(() => this.
|
|
6520
|
-
customViewSignal = computed(() => this.
|
|
6572
|
+
result = state;
|
|
6573
|
+
}
|
|
6574
|
+
return result;
|
|
6575
|
+
}, ...(ngDevMode ? [{ debugName: "stateSignal" }] : /* istanbul ignore next */ []));
|
|
6576
|
+
viewTypeSignal = computed(() => this.stateSignal().viewType, ...(ngDevMode ? [{ debugName: "viewTypeSignal" }] : /* istanbul ignore next */ []));
|
|
6577
|
+
isDefaultErrorSignal = computed(() => this.stateSignal().isDefaultError, ...(ngDevMode ? [{ debugName: "isDefaultErrorSignal" }] : /* istanbul ignore next */ []));
|
|
6578
|
+
messageSignal = computed(() => this.stateSignal().message, ...(ngDevMode ? [{ debugName: "messageSignal" }] : /* istanbul ignore next */ []));
|
|
6579
|
+
customViewSignal = computed(() => this.stateSignal().customView, ...(ngDevMode ? [{ debugName: "customViewSignal" }] : /* istanbul ignore next */ []));
|
|
6521
6580
|
setError(error) {
|
|
6522
6581
|
this._errorOverrideSignal.set(error);
|
|
6523
6582
|
}
|
|
6524
6583
|
openErrorPopover(event) {
|
|
6525
|
-
const error = this.
|
|
6584
|
+
const error = this.stateSignal().error;
|
|
6526
6585
|
if (error != null) {
|
|
6527
6586
|
const popoverRef = DbxErrorPopoverComponent.openPopover(this.popoverService, {
|
|
6528
6587
|
origin: event.origin,
|
|
@@ -6596,8 +6655,8 @@ class DbxLoadingProgressComponent {
|
|
|
6596
6655
|
color = input('primary', ...(ngDevMode ? [{ debugName: "color" }] : /* istanbul ignore next */ []));
|
|
6597
6656
|
value = input(...(ngDevMode ? [undefined, { debugName: "value" }] : /* istanbul ignore next */ []));
|
|
6598
6657
|
bufferValue = input(...(ngDevMode ? [undefined, { debugName: "bufferValue" }] : /* istanbul ignore next */ []));
|
|
6599
|
-
|
|
6600
|
-
|
|
6658
|
+
bmodeSignal = computed(() => this.mode(), ...(ngDevMode ? [{ debugName: "bmodeSignal" }] : /* istanbul ignore next */ []));
|
|
6659
|
+
smodeSignal = computed(() => this.mode(), ...(ngDevMode ? [{ debugName: "smodeSignal" }] : /* istanbul ignore next */ []));
|
|
6601
6660
|
diameterSignal = computed(() => this.diameter() || this.defaultDiameter, ...(ngDevMode ? [{ debugName: "diameterSignal" }] : /* istanbul ignore next */ []));
|
|
6602
6661
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxLoadingProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6603
6662
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxLoadingProgressComponent, isStandalone: true, selector: "dbx-loading-progress", inputs: { diameter: { classPropertyName: "diameter", publicName: "diameter", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, linear: { classPropertyName: "linear", publicName: "linear", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, bufferValue: { classPropertyName: "bufferValue", publicName: "bufferValue", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
@@ -6605,10 +6664,10 @@ class DbxLoadingProgressComponent {
|
|
|
6605
6664
|
<span class="loading-progress-view-indicator" [dbxColor]="color()">
|
|
6606
6665
|
@switch (linear()) {
|
|
6607
6666
|
@case (true) {
|
|
6608
|
-
<mat-progress-bar [mode]="
|
|
6667
|
+
<mat-progress-bar [mode]="bmodeSignal()" [bufferValue]="bufferValue()" [value]="value()" style="margin: auto;"></mat-progress-bar>
|
|
6609
6668
|
}
|
|
6610
6669
|
@default {
|
|
6611
|
-
<mat-progress-spinner [diameter]="diameterSignal()" [mode]="
|
|
6670
|
+
<mat-progress-spinner [diameter]="diameterSignal()" [mode]="smodeSignal()" [value]="value()" style="margin: auto;"></mat-progress-spinner>
|
|
6612
6671
|
}
|
|
6613
6672
|
}
|
|
6614
6673
|
</span>
|
|
@@ -6627,10 +6686,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
6627
6686
|
<span class="loading-progress-view-indicator" [dbxColor]="color()">
|
|
6628
6687
|
@switch (linear()) {
|
|
6629
6688
|
@case (true) {
|
|
6630
|
-
<mat-progress-bar [mode]="
|
|
6689
|
+
<mat-progress-bar [mode]="bmodeSignal()" [bufferValue]="bufferValue()" [value]="value()" style="margin: auto;"></mat-progress-bar>
|
|
6631
6690
|
}
|
|
6632
6691
|
@default {
|
|
6633
|
-
<mat-progress-spinner [diameter]="diameterSignal()" [mode]="
|
|
6692
|
+
<mat-progress-spinner [diameter]="diameterSignal()" [mode]="smodeSignal()" [value]="value()" style="margin: auto;"></mat-progress-spinner>
|
|
6634
6693
|
}
|
|
6635
6694
|
}
|
|
6636
6695
|
</span>
|
|
@@ -6690,16 +6749,14 @@ class DbxBasicLoadingComponent {
|
|
|
6690
6749
|
const mode = this.mode();
|
|
6691
6750
|
const loadingProgress = this.loadingProgressSignal();
|
|
6692
6751
|
let result;
|
|
6693
|
-
if (
|
|
6694
|
-
|
|
6695
|
-
|
|
6696
|
-
|
|
6697
|
-
|
|
6698
|
-
result = 'indeterminate';
|
|
6699
|
-
}
|
|
6752
|
+
if (mode) {
|
|
6753
|
+
result = mode;
|
|
6754
|
+
}
|
|
6755
|
+
else if (loadingProgress == null) {
|
|
6756
|
+
result = 'indeterminate';
|
|
6700
6757
|
}
|
|
6701
6758
|
else {
|
|
6702
|
-
result =
|
|
6759
|
+
result = 'determinate';
|
|
6703
6760
|
}
|
|
6704
6761
|
return result;
|
|
6705
6762
|
}, ...(ngDevMode ? [{ debugName: "modeSignal" }] : /* istanbul ignore next */ []));
|
|
@@ -6773,7 +6830,10 @@ class DbxLoadingComponent {
|
|
|
6773
6830
|
loading = input(...(ngDevMode ? [undefined, { debugName: "loading" }] : /* istanbul ignore next */ []));
|
|
6774
6831
|
error = input(...(ngDevMode ? [undefined, { debugName: "error" }] : /* istanbul ignore next */ []));
|
|
6775
6832
|
context = input(...(ngDevMode ? [undefined, { debugName: "context" }] : /* istanbul ignore next */ []));
|
|
6776
|
-
contextSignal = computed(() =>
|
|
6833
|
+
contextSignal = computed(() => {
|
|
6834
|
+
const context = this.context();
|
|
6835
|
+
return this._contextOverrideSignal() ?? context;
|
|
6836
|
+
}, ...(ngDevMode ? [{ debugName: "contextSignal" }] : /* istanbul ignore next */ []));
|
|
6777
6837
|
contextStream$ = toObservable(this.contextSignal).pipe(maybeValueFromObservableOrValue(), switchMapMaybeLoadingContextStream(), shareReplay(1));
|
|
6778
6838
|
contextStreamSignal = toSignal(this.contextStream$);
|
|
6779
6839
|
stateSignal = computed(() => {
|
|
@@ -6804,7 +6864,7 @@ class DbxLoadingComponent {
|
|
|
6804
6864
|
/**
|
|
6805
6865
|
* Sets/overrides the context directly.
|
|
6806
6866
|
*
|
|
6807
|
-
* @param context Context source to use as an override.
|
|
6867
|
+
* @param context - Context source to use as an override.
|
|
6808
6868
|
*/
|
|
6809
6869
|
setContext(context) {
|
|
6810
6870
|
this._contextOverrideSignal.set(context);
|
|
@@ -7126,7 +7186,7 @@ const DBX_ACTION_SNACKBAR_DEFAULTS = {
|
|
|
7126
7186
|
* is included in the generated config.
|
|
7127
7187
|
*
|
|
7128
7188
|
* @param config - Per-state message configurations (idle, loading, success, error).
|
|
7129
|
-
* @returns
|
|
7189
|
+
* @returns Maps generator input to a snackbar display configuration.
|
|
7130
7190
|
*
|
|
7131
7191
|
* @example
|
|
7132
7192
|
* ```typescript
|
|
@@ -7160,15 +7220,15 @@ function makeDbxActionSnackbarDisplayConfigGeneratorFunction(config) {
|
|
|
7160
7220
|
else {
|
|
7161
7221
|
reference = getValueFromGetter(undoInput);
|
|
7162
7222
|
}
|
|
7163
|
-
if (
|
|
7164
|
-
console.error('Expected action source reference was not provided to undo...');
|
|
7165
|
-
}
|
|
7166
|
-
else {
|
|
7223
|
+
if (reference) {
|
|
7167
7224
|
building.action = {
|
|
7168
7225
|
button: undoButtonText ?? 'Undo',
|
|
7169
7226
|
reference
|
|
7170
7227
|
};
|
|
7171
7228
|
}
|
|
7229
|
+
else {
|
|
7230
|
+
console.error('Expected action source reference was not provided to undo...');
|
|
7231
|
+
}
|
|
7172
7232
|
}
|
|
7173
7233
|
result = building;
|
|
7174
7234
|
}
|
|
@@ -7470,8 +7530,8 @@ class DbxActionTransitionSafetyDirective {
|
|
|
7470
7530
|
}
|
|
7471
7531
|
_handleOnBeforeTransition(transition) {
|
|
7472
7532
|
return firstValueFrom(combineLatest([this.source.isModified$, this.safetyType$]).pipe(first(), mergeMap(([isModified, safetyType]) => {
|
|
7473
|
-
|
|
7474
|
-
|
|
7533
|
+
return isModified
|
|
7534
|
+
? race([
|
|
7475
7535
|
// Watch for success to occur. At that point, close everything.
|
|
7476
7536
|
this.source.success$.pipe(first(), map(() => [true, undefined])),
|
|
7477
7537
|
this._handleIsModifiedState(transition, safetyType).pipe(first(), map((x) => [undefined, x]))
|
|
@@ -7479,9 +7539,8 @@ class DbxActionTransitionSafetyDirective {
|
|
|
7479
7539
|
return saveSuccess ? true : handleResult;
|
|
7480
7540
|
}), tap(() => this._closeDialog()), // Close dialog if it is still open.
|
|
7481
7541
|
delay(10) // Delay to allow dialog to close before transition.
|
|
7482
|
-
)
|
|
7483
|
-
|
|
7484
|
-
return of(true);
|
|
7542
|
+
)
|
|
7543
|
+
: of(true);
|
|
7485
7544
|
}))).then((x) => x); // Resolve/Flatten potential promise result.
|
|
7486
7545
|
}
|
|
7487
7546
|
_handleIsModifiedState(transition, safetyType) {
|
|
@@ -7514,25 +7573,33 @@ class DbxActionTransitionSafetyDirective {
|
|
|
7514
7573
|
})));
|
|
7515
7574
|
}
|
|
7516
7575
|
_showDialog(_transition) {
|
|
7576
|
+
let result;
|
|
7517
7577
|
if (this.checkIsDestroyed()) {
|
|
7518
|
-
|
|
7578
|
+
result = of(true);
|
|
7519
7579
|
}
|
|
7520
|
-
|
|
7521
|
-
this._currentDialogRef
|
|
7522
|
-
|
|
7523
|
-
|
|
7524
|
-
|
|
7525
|
-
return this._currentDialogRef.afterClosed().pipe(first(), map((result = 'stay') => {
|
|
7526
|
-
// Default to Stay if the user clicks outside.
|
|
7527
|
-
switch (result) {
|
|
7528
|
-
case 'discard':
|
|
7529
|
-
case 'success':
|
|
7530
|
-
case 'none':
|
|
7531
|
-
return true;
|
|
7532
|
-
case 'stay':
|
|
7533
|
-
return false;
|
|
7580
|
+
else {
|
|
7581
|
+
if (!this._currentDialogRef) {
|
|
7582
|
+
this._currentDialogRef = this.dialog.open(DbxActionUIRouterTransitionSafetyDialogComponent, {
|
|
7583
|
+
viewContainerRef: this.viewContainerRef
|
|
7584
|
+
});
|
|
7534
7585
|
}
|
|
7535
|
-
|
|
7586
|
+
result = this._currentDialogRef.afterClosed().pipe(first(), map((dialogResult = 'stay') => {
|
|
7587
|
+
// Default to Stay if the user clicks outside.
|
|
7588
|
+
let outcome;
|
|
7589
|
+
switch (dialogResult) {
|
|
7590
|
+
case 'discard':
|
|
7591
|
+
case 'success':
|
|
7592
|
+
case 'none':
|
|
7593
|
+
outcome = true;
|
|
7594
|
+
break;
|
|
7595
|
+
case 'stay':
|
|
7596
|
+
outcome = false;
|
|
7597
|
+
break;
|
|
7598
|
+
}
|
|
7599
|
+
return outcome;
|
|
7600
|
+
}));
|
|
7601
|
+
}
|
|
7602
|
+
return result;
|
|
7536
7603
|
}
|
|
7537
7604
|
_closeDialog() {
|
|
7538
7605
|
if (this._currentDialogRef) {
|
|
@@ -7682,14 +7749,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
7682
7749
|
* Ensures that the error data is safe for serialization by running it through `JSON.stringify`/`JSON.parse`.
|
|
7683
7750
|
* Non-serializable data is stripped with a console warning.
|
|
7684
7751
|
*
|
|
7752
|
+
* @param httpError - The HTTP error response or generic error object to convert.
|
|
7753
|
+
* @returns A plain JSON-serializable {@link ServerError} object.
|
|
7754
|
+
*
|
|
7685
7755
|
* @example
|
|
7686
7756
|
* ```typescript
|
|
7687
7757
|
* const pojoError = convertToPOJOServerErrorResponse(httpErrorResponse);
|
|
7688
7758
|
* console.log(pojoError.message);
|
|
7689
7759
|
* ```
|
|
7690
|
-
*
|
|
7691
|
-
* @param httpError - The HTTP error response or generic error object to convert.
|
|
7692
|
-
* @returns A plain JSON-serializable {@link ServerError} object.
|
|
7693
7760
|
*/
|
|
7694
7761
|
function convertToPOJOServerErrorResponse(httpError) {
|
|
7695
7762
|
const result = convertToServerErrorResponse(httpError);
|
|
@@ -7716,6 +7783,9 @@ function convertToPOJOServerErrorResponse(httpError) {
|
|
|
7716
7783
|
* Handles HTTP 401 responses specially by returning an {@link UnauthorizedServerErrorResponse}.
|
|
7717
7784
|
* Returns `undefined` if the input is falsy.
|
|
7718
7785
|
*
|
|
7786
|
+
* @param error - The HTTP error response or generic error object to convert.
|
|
7787
|
+
* @returns A {@link ServerErrorResponse} derived from the error, or `undefined` if the input is falsy.
|
|
7788
|
+
*
|
|
7719
7789
|
* @example
|
|
7720
7790
|
* ```typescript
|
|
7721
7791
|
* const serverError = convertToServerErrorResponse(httpErrorResponse);
|
|
@@ -7723,9 +7793,6 @@ function convertToPOJOServerErrorResponse(httpError) {
|
|
|
7723
7793
|
* console.log(serverError.status, serverError.message);
|
|
7724
7794
|
* }
|
|
7725
7795
|
* ```
|
|
7726
|
-
*
|
|
7727
|
-
* @param error - The HTTP error response or generic error object to convert.
|
|
7728
|
-
* @returns A {@link ServerErrorResponse} derived from the error, or `undefined` if the input is falsy.
|
|
7729
7796
|
*/
|
|
7730
7797
|
function convertToServerErrorResponse(error) {
|
|
7731
7798
|
let result;
|
|
@@ -8039,14 +8106,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
8039
8106
|
/**
|
|
8040
8107
|
* Converts an HTTP error response into {@link ServerErrorParams} suitable for dispatching as an NgRx action prop.
|
|
8041
8108
|
*
|
|
8109
|
+
* @param httpError - The HTTP error response or generic error object to convert.
|
|
8110
|
+
* @returns A {@link ServerErrorParams} object wrapping the converted server error.
|
|
8111
|
+
*
|
|
8042
8112
|
* @example
|
|
8043
8113
|
* ```typescript
|
|
8044
8114
|
* const params = convertServerErrorParams(httpErrorResponse);
|
|
8045
8115
|
* store.dispatch(myErrorAction(params));
|
|
8046
8116
|
* ```
|
|
8047
|
-
*
|
|
8048
|
-
* @param httpError - The HTTP error response or generic error object to convert.
|
|
8049
|
-
* @returns A {@link ServerErrorParams} object wrapping the converted server error.
|
|
8050
8117
|
*/
|
|
8051
8118
|
function convertServerErrorParams(httpError) {
|
|
8052
8119
|
const error = convertToPOJOServerErrorResponse(httpError);
|
|
@@ -8055,6 +8122,10 @@ function convertServerErrorParams(httpError) {
|
|
|
8055
8122
|
/**
|
|
8056
8123
|
* RxJS operator that catches HTTP errors, converts them to {@link ServerErrorParams}, and dispatches the given NgRx action.
|
|
8057
8124
|
*
|
|
8125
|
+
* @param action - The NgRx action creator to dispatch with the converted error params.
|
|
8126
|
+
* @param mapError - Optional function to transform the {@link ServerErrorParams} before dispatching. Defaults to identity.
|
|
8127
|
+
* @returns An RxJS operator that catches errors and emits the corresponding error action.
|
|
8128
|
+
*
|
|
8058
8129
|
* @example
|
|
8059
8130
|
* ```typescript
|
|
8060
8131
|
* return this.actions$.pipe(
|
|
@@ -8064,10 +8135,6 @@ function convertServerErrorParams(httpError) {
|
|
|
8064
8135
|
* ))
|
|
8065
8136
|
* );
|
|
8066
8137
|
* ```
|
|
8067
|
-
*
|
|
8068
|
-
* @param action - The NgRx action creator to dispatch with the converted error params.
|
|
8069
|
-
* @param mapError - Optional function to transform the {@link ServerErrorParams} before dispatching. Defaults to identity.
|
|
8070
|
-
* @returns An RxJS operator that catches errors and emits the corresponding error action.
|
|
8071
8138
|
*/
|
|
8072
8139
|
function catchErrorServerParams(action, mapError = (error) => error) {
|
|
8073
8140
|
return catchError((error) => {
|
|
@@ -8133,9 +8200,9 @@ const FEATURE_KEY = 'app.model';
|
|
|
8133
8200
|
/**
|
|
8134
8201
|
* Combined reducer for the DbxModel NgRx feature state, delegating to sub-reducers for each state slice.
|
|
8135
8202
|
*
|
|
8136
|
-
* @param state The current DbxModel feature state, or undefined for initial state
|
|
8137
|
-
* @param action The NgRx action to process
|
|
8138
|
-
* @returns The new DbxModelState produced by the combined sub-reducers
|
|
8203
|
+
* @param state - The current DbxModel feature state, or undefined for initial state.
|
|
8204
|
+
* @param action - The NgRx action to process.
|
|
8205
|
+
* @returns The new DbxModelState produced by the combined sub-reducers.
|
|
8139
8206
|
*/
|
|
8140
8207
|
function reducers(state, action) {
|
|
8141
8208
|
return combineReducers({
|
|
@@ -8185,8 +8252,8 @@ class DbxModelViewTrackerStorage {
|
|
|
8185
8252
|
/**
|
|
8186
8253
|
* Persists a view tracker event to storage. Deduplicates by model key, sorts by date, and trims to the max event limit.
|
|
8187
8254
|
*
|
|
8188
|
-
* @param event - The event to record
|
|
8189
|
-
* @returns Observable that completes when the event has been persisted
|
|
8255
|
+
* @param event - The event to record.
|
|
8256
|
+
* @returns Observable that completes when the event has been persisted.
|
|
8190
8257
|
*/
|
|
8191
8258
|
addTrackerEvent(event) {
|
|
8192
8259
|
const storageKey = this.getStorageKeyForFolder(event.folder);
|
|
@@ -8211,7 +8278,7 @@ class DbxModelViewTrackerStorage {
|
|
|
8211
8278
|
* Returns all stored view events for the given folder.
|
|
8212
8279
|
*
|
|
8213
8280
|
* @param folder - Optional folder name; defaults to `'default'`
|
|
8214
|
-
* @returns Observable of all view tracker events in the folder
|
|
8281
|
+
* @returns Observable of all view tracker events in the folder.
|
|
8215
8282
|
*/
|
|
8216
8283
|
getAllEvents(folder) {
|
|
8217
8284
|
return this.getEventSet(folder).pipe(map((x) => x.e));
|
|
@@ -8220,7 +8287,7 @@ class DbxModelViewTrackerStorage {
|
|
|
8220
8287
|
* Returns the complete event set for the given folder.
|
|
8221
8288
|
*
|
|
8222
8289
|
* @param folder - Optional folder name; defaults to `'default'`
|
|
8223
|
-
* @returns Observable of the event set containing events and the last-update timestamp
|
|
8290
|
+
* @returns Observable of the event set containing events and the last-update timestamp.
|
|
8224
8291
|
*/
|
|
8225
8292
|
getEventSet(folder) {
|
|
8226
8293
|
const storageKey = this.getStorageKeyForFolder(folder);
|
|
@@ -8235,7 +8302,7 @@ class DbxModelViewTrackerStorage {
|
|
|
8235
8302
|
* Computes the storage key for a given folder name.
|
|
8236
8303
|
*
|
|
8237
8304
|
* @param folder - Optional folder name; defaults to `'default'`
|
|
8238
|
-
* @returns The computed storage key string combining the base key and folder name
|
|
8305
|
+
* @returns The computed storage key string combining the base key and folder name.
|
|
8239
8306
|
*/
|
|
8240
8307
|
getStorageKeyForFolder(folder) {
|
|
8241
8308
|
return `${this.storageKey}_${folder ?? 'default'}`;
|
|
@@ -8260,7 +8327,7 @@ class DbxModelTrackerService {
|
|
|
8260
8327
|
/**
|
|
8261
8328
|
* The default storage folder used when no folder is specified in tracking calls.
|
|
8262
8329
|
*
|
|
8263
|
-
* @returns The current default folder name, or undefined if not set
|
|
8330
|
+
* @returns The current default folder name, or undefined if not set.
|
|
8264
8331
|
*/
|
|
8265
8332
|
get defaultFolder() {
|
|
8266
8333
|
return this._defaultFolder;
|
|
@@ -8272,8 +8339,8 @@ class DbxModelTrackerService {
|
|
|
8272
8339
|
/**
|
|
8273
8340
|
* Records a view event for the given model, optionally in a specific context and folder.
|
|
8274
8341
|
*
|
|
8275
|
-
* @param modelKeyTypeNamePair - The model identity to track
|
|
8276
|
-
* @param context - Optional view context metadata
|
|
8342
|
+
* @param modelKeyTypeNamePair - The model identity to track.
|
|
8343
|
+
* @param context - Optional view context metadata.
|
|
8277
8344
|
* @param folder - Storage folder; defaults to {@link defaultFolder}
|
|
8278
8345
|
*/
|
|
8279
8346
|
trackViewedObject(modelKeyTypeNamePair, context, folder = this._defaultFolder) {
|
|
@@ -8290,7 +8357,7 @@ class DbxModelTrackerService {
|
|
|
8290
8357
|
* Returns all recorded view events for the given folder, sorted by most recent first.
|
|
8291
8358
|
*
|
|
8292
8359
|
* @param folder - Storage folder; defaults to {@link defaultFolder}
|
|
8293
|
-
* @returns Observable of view events sorted by most recent first
|
|
8360
|
+
* @returns Observable of view events sorted by most recent first.
|
|
8294
8361
|
*/
|
|
8295
8362
|
getAllViewEvents(folder = this._defaultFolder) {
|
|
8296
8363
|
return this._viewTrackerStorage.getAllEvents(folder);
|
|
@@ -8299,7 +8366,7 @@ class DbxModelTrackerService {
|
|
|
8299
8366
|
* Returns the complete event set (events and last-update timestamp) for the given folder.
|
|
8300
8367
|
*
|
|
8301
8368
|
* @param folder - Storage folder; defaults to {@link defaultFolder}
|
|
8302
|
-
* @returns Observable of the complete event set including events and last-update timestamp
|
|
8369
|
+
* @returns Observable of the complete event set including events and last-update timestamp.
|
|
8303
8370
|
*/
|
|
8304
8371
|
getViewEventSet(folder = this._defaultFolder) {
|
|
8305
8372
|
return this._viewTrackerStorage.getEventSet(folder);
|
|
@@ -8338,9 +8405,9 @@ class DbxModelObjectStateService {
|
|
|
8338
8405
|
/**
|
|
8339
8406
|
* Emit a model viewed event.
|
|
8340
8407
|
*
|
|
8341
|
-
* @param params - The model viewed event parameters
|
|
8342
|
-
* @param params.modelKeyTypeNamePair - Identifies the model that was viewed
|
|
8343
|
-
* @param params.context - Optional context describing how the model was viewed
|
|
8408
|
+
* @param params - The model viewed event parameters.
|
|
8409
|
+
* @param params.modelKeyTypeNamePair - Identifies the model that was viewed.
|
|
8410
|
+
* @param params.context - Optional context describing how the model was viewed.
|
|
8344
8411
|
*/
|
|
8345
8412
|
emitModelViewEvent({ modelKeyTypeNamePair, context }) {
|
|
8346
8413
|
this.store.dispatch(emitObjectViewEvent({ modelKeyTypeNamePair, context }));
|
|
@@ -8355,13 +8422,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
8355
8422
|
/**
|
|
8356
8423
|
* Creates a {@link StorageAccessor} for persisting model view tracker events using the `mtvs` storage prefix.
|
|
8357
8424
|
*
|
|
8425
|
+
* @param storageAccessorFactory - The factory used to create typed storage accessors.
|
|
8426
|
+
* @returns A storage accessor configured with the `mtvs` prefix for model view tracker events.
|
|
8427
|
+
*
|
|
8358
8428
|
* @example
|
|
8359
8429
|
* ```typescript
|
|
8360
8430
|
* const accessor = defaultDbxModelViewTrackerStorageAccessorFactory(storageAccessorFactory);
|
|
8361
8431
|
* ```
|
|
8362
8432
|
*
|
|
8363
|
-
* @param storageAccessorFactory - The factory used to create typed storage accessors
|
|
8364
|
-
* @returns A storage accessor configured with the `mtvs` prefix for model view tracker events
|
|
8365
8433
|
* @__NO_SIDE_EFFECTS__
|
|
8366
8434
|
*/
|
|
8367
8435
|
function defaultDbxModelViewTrackerStorageAccessorFactory(storageAccessorFactory) {
|
|
@@ -8372,7 +8440,8 @@ function defaultDbxModelViewTrackerStorageAccessorFactory(storageAccessorFactory
|
|
|
8372
8440
|
/**
|
|
8373
8441
|
* Creates EnvironmentProviders for providing DbxModelTrackerService, DbxModelObjectStateService and sets up the NgRx store for DbxModelTrackerEffects.
|
|
8374
8442
|
*
|
|
8375
|
-
* @returns EnvironmentProviders
|
|
8443
|
+
* @returns EnvironmentProviders.
|
|
8444
|
+
*
|
|
8376
8445
|
* @__NO_SIDE_EFFECTS__
|
|
8377
8446
|
*/
|
|
8378
8447
|
function provideDbxModelService() {
|
|
@@ -8397,13 +8466,13 @@ function provideDbxModelService() {
|
|
|
8397
8466
|
/**
|
|
8398
8467
|
* Extracts all model keys from a {@link DbxModelViewTrackerEventSet}.
|
|
8399
8468
|
*
|
|
8469
|
+
* @param eventSet - The event set from which to extract model keys.
|
|
8470
|
+
* @returns Array of model keys from all events in the set.
|
|
8471
|
+
*
|
|
8400
8472
|
* @example
|
|
8401
8473
|
* ```typescript
|
|
8402
8474
|
* const keys = allDbxModelViewTrackerEventSetModelKeys(eventSet);
|
|
8403
8475
|
* ```
|
|
8404
|
-
*
|
|
8405
|
-
* @param eventSet - The event set from which to extract model keys
|
|
8406
|
-
* @returns Array of model keys from all events in the set
|
|
8407
8476
|
*/
|
|
8408
8477
|
function allDbxModelViewTrackerEventSetModelKeys(eventSet) {
|
|
8409
8478
|
return allDbxModelViewTrackerEventModelKeys(eventSet.e);
|
|
@@ -8411,13 +8480,13 @@ function allDbxModelViewTrackerEventSetModelKeys(eventSet) {
|
|
|
8411
8480
|
/**
|
|
8412
8481
|
* Extracts all model keys from an array of {@link DbxModelViewTrackerEvent}.
|
|
8413
8482
|
*
|
|
8483
|
+
* @param events - Array of view tracker events from which to extract model keys.
|
|
8484
|
+
* @returns Array of model keys, one per event.
|
|
8485
|
+
*
|
|
8414
8486
|
* @example
|
|
8415
8487
|
* ```typescript
|
|
8416
8488
|
* const keys = allDbxModelViewTrackerEventModelKeys(events);
|
|
8417
8489
|
* ```
|
|
8418
|
-
*
|
|
8419
|
-
* @param events - Array of view tracker events from which to extract model keys
|
|
8420
|
-
* @returns Array of model keys, one per event
|
|
8421
8490
|
*/
|
|
8422
8491
|
function allDbxModelViewTrackerEventModelKeys(events) {
|
|
8423
8492
|
return events.map((y) => y.m.key);
|
|
@@ -8439,7 +8508,7 @@ class DbxModelTypesService {
|
|
|
8439
8508
|
/**
|
|
8440
8509
|
* Registers one or more model type configurations. Merges with any previously registered configs.
|
|
8441
8510
|
*
|
|
8442
|
-
* @param configs - Single or array of model type configurations to register
|
|
8511
|
+
* @param configs - Single or array of model type configurations to register.
|
|
8443
8512
|
*/
|
|
8444
8513
|
addTypeConfigs(configs) {
|
|
8445
8514
|
const types = {
|
|
@@ -8453,7 +8522,7 @@ class DbxModelTypesService {
|
|
|
8453
8522
|
/**
|
|
8454
8523
|
* Registers model type configurations from a map, merging with existing configs.
|
|
8455
8524
|
*
|
|
8456
|
-
* @param configs - Map of model type strings to their configurations
|
|
8525
|
+
* @param configs - Map of model type strings to their configurations.
|
|
8457
8526
|
*/
|
|
8458
8527
|
addTypeConfigsMap(configs) {
|
|
8459
8528
|
const newConfig = {
|
|
@@ -8497,8 +8566,8 @@ class DbxModelTypesService {
|
|
|
8497
8566
|
/**
|
|
8498
8567
|
* Returns an observable of the Material icon name for the given model type.
|
|
8499
8568
|
*
|
|
8500
|
-
* @param type - The model type string to look up
|
|
8501
|
-
* @returns Observable emitting the icon name for the given model type
|
|
8569
|
+
* @param type - The model type string to look up.
|
|
8570
|
+
* @returns Observable emitting the icon name for the given model type.
|
|
8502
8571
|
*/
|
|
8503
8572
|
iconForType(type) {
|
|
8504
8573
|
return this.iconMap$.pipe(map((x) => x[type]));
|
|
@@ -8594,15 +8663,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
8594
8663
|
/**
|
|
8595
8664
|
* Creates a {@link CopyToClipboardFunction} that retries the copy operation until success or timeout.
|
|
8596
8665
|
*
|
|
8597
|
-
* @param clipboard -
|
|
8598
|
-
* @param config -
|
|
8599
|
-
* @returns
|
|
8666
|
+
* @param clipboard - The Angular CDK Clipboard instance.
|
|
8667
|
+
* @param config - Optional timeout and retry settings.
|
|
8668
|
+
* @returns Copies text to the clipboard.
|
|
8600
8669
|
*
|
|
8601
8670
|
* @example
|
|
8602
8671
|
* ```ts
|
|
8603
8672
|
* const copy = copyToClipboardFunction(clipboard, { copyTimeoutSeconds: 10 });
|
|
8604
8673
|
* const success = await copy('some text');
|
|
8605
8674
|
* ```
|
|
8675
|
+
*
|
|
8606
8676
|
* @__NO_SIDE_EFFECTS__
|
|
8607
8677
|
*/
|
|
8608
8678
|
function copyToClipboardFunction(clipboard, config) {
|
|
@@ -8642,14 +8712,15 @@ function copyToClipboardFunction(clipboard, config) {
|
|
|
8642
8712
|
*
|
|
8643
8713
|
* Must be called in an Angular injection context.
|
|
8644
8714
|
*
|
|
8645
|
-
* @param config -
|
|
8646
|
-
* @returns
|
|
8715
|
+
* @param config - Optional timeout and retry settings.
|
|
8716
|
+
* @returns The clipboard copy function.
|
|
8647
8717
|
*
|
|
8648
8718
|
* @example
|
|
8649
8719
|
* ```ts
|
|
8650
8720
|
* const copy = injectCopyToClipboardFunction();
|
|
8651
8721
|
* await copy('copied text');
|
|
8652
8722
|
* ```
|
|
8723
|
+
*
|
|
8653
8724
|
* @__NO_SIDE_EFFECTS__
|
|
8654
8725
|
*/
|
|
8655
8726
|
function injectCopyToClipboardFunction(config) {
|
|
@@ -8661,8 +8732,8 @@ function injectCopyToClipboardFunction(config) {
|
|
|
8661
8732
|
*
|
|
8662
8733
|
* Must be called in an Angular injection context.
|
|
8663
8734
|
*
|
|
8664
|
-
* @param config -
|
|
8665
|
-
* @returns
|
|
8735
|
+
* @param config - Optional configuration for copy behavior and snackbar messages.
|
|
8736
|
+
* @returns Clipboard copy function with snackbar notification support.
|
|
8666
8737
|
*
|
|
8667
8738
|
* @example
|
|
8668
8739
|
* ```ts
|
|
@@ -8686,9 +8757,9 @@ function injectCopyToClipboardFunctionWithSnackbarMessage(config) {
|
|
|
8686
8757
|
const _setSnackbarMessagesConfig = (config) => {
|
|
8687
8758
|
if (config != null) {
|
|
8688
8759
|
const { successMessage: inputSuccessMessage, failureMessage: inputFailureMessage, snackbarDuration: inputSnackbarDuration } = config;
|
|
8689
|
-
successMessage = (inputSuccessMessage
|
|
8690
|
-
failureMessage = (inputFailureMessage
|
|
8691
|
-
snackbarDuration = (inputSnackbarDuration
|
|
8760
|
+
successMessage = (inputSuccessMessage === undefined ? successMessage : inputSuccessMessage) ?? DEFAULT_SUCCESS_MESSAGE;
|
|
8761
|
+
failureMessage = (inputFailureMessage === undefined ? failureMessage : inputFailureMessage) ?? DEFAULT_FAILURE_MESSAGE;
|
|
8762
|
+
snackbarDuration = (inputSnackbarDuration === undefined ? snackbarDuration : inputSnackbarDuration) ?? DEFAULT_SNACKBAR_DURATION;
|
|
8692
8763
|
}
|
|
8693
8764
|
};
|
|
8694
8765
|
if (config) {
|
|
@@ -8834,10 +8905,7 @@ class DbxDownloadTextViewComponent extends AbstractDbxClipboardDirective {
|
|
|
8834
8905
|
}, ...(ngDevMode ? [{ debugName: "contentLoadingStateSignal" }] : /* istanbul ignore next */ []));
|
|
8835
8906
|
contentLoadingState$ = toObservable(this.contentLoadingStateSignal);
|
|
8836
8907
|
content$ = this.contentLoadingState$.pipe(switchMap((x) => {
|
|
8837
|
-
|
|
8838
|
-
return of(x).pipe(valueFromFinishedLoadingState());
|
|
8839
|
-
}
|
|
8840
|
-
return of(undefined);
|
|
8908
|
+
return x ? of(x).pipe(valueFromFinishedLoadingState()) : of(undefined);
|
|
8841
8909
|
}));
|
|
8842
8910
|
contentSignal = toSignal(this.content$);
|
|
8843
8911
|
contentDataSignal = computed(() => this.contentSignal()?.content, ...(ngDevMode ? [{ debugName: "contentDataSignal" }] : /* istanbul ignore next */ []));
|
|
@@ -8857,10 +8925,7 @@ class DbxDownloadTextViewComponent extends AbstractDbxClipboardDirective {
|
|
|
8857
8925
|
context = loadingStateContext({ obs: this.contentLoadingState$ });
|
|
8858
8926
|
handleCopyToClipboard = () => {
|
|
8859
8927
|
return this.content$.pipe(first(), switchMap((downloadTextContent) => {
|
|
8860
|
-
|
|
8861
|
-
return this._copyToClipboard(downloadTextContent.content);
|
|
8862
|
-
}
|
|
8863
|
-
return of(false);
|
|
8928
|
+
return downloadTextContent ? this._copyToClipboard(downloadTextContent.content) : of(false);
|
|
8864
8929
|
}));
|
|
8865
8930
|
};
|
|
8866
8931
|
toggleExpandPreview() {
|
|
@@ -8881,8 +8946,8 @@ const DBX_WEB_FILE_PREVIEW_SERVICE_ENTRIES_TOKEN = new InjectionToken('DefaultDb
|
|
|
8881
8946
|
/**
|
|
8882
8947
|
* Creates a provider that registers the given entries with the {@link DbxWebFilePreviewService} via the {@link DBX_WEB_FILE_PREVIEW_SERVICE_ENTRIES_TOKEN}.
|
|
8883
8948
|
*
|
|
8884
|
-
* @param entries - Array of preview service entries to register, each mapping a MIME type to its preview component
|
|
8885
|
-
* @returns A provider configuration that supplies the entries via the injection token
|
|
8949
|
+
* @param entries - Array of preview service entries to register, each mapping a MIME type to its preview component.
|
|
8950
|
+
* @returns A provider configuration that supplies the entries via the injection token.
|
|
8886
8951
|
*
|
|
8887
8952
|
* @example
|
|
8888
8953
|
* ```typescript
|
|
@@ -8899,10 +8964,10 @@ function provideDbxWebFilePreviewServiceEntries(entries) {
|
|
|
8899
8964
|
/**
|
|
8900
8965
|
* Default preview component function that embeds files using {@link DbxEmbedComponent}. Images are rendered with an `img` element; all other types use `embed`.
|
|
8901
8966
|
*
|
|
8902
|
-
* @param input - The preview input containing blob data, source URL, and MIME type information
|
|
8903
|
-
* @returns An injection component config that initializes a {@link DbxEmbedComponent} with the appropriate embed element and content
|
|
8967
|
+
* @param input - The preview input containing blob data, source URL, and MIME type information.
|
|
8968
|
+
* @returns An injection component config that initializes a {@link DbxEmbedComponent} with the appropriate embed element and content.
|
|
8904
8969
|
*/
|
|
8905
|
-
const
|
|
8970
|
+
const DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_PREVIEW_COMPONENT_FUNCTION = (input) => {
|
|
8906
8971
|
const { blob, srcUrl, embedMimeType, sanitizeSrcUrl } = input;
|
|
8907
8972
|
let embedElement = 'embed';
|
|
8908
8973
|
if (embedMimeType) {
|
|
@@ -8929,10 +8994,10 @@ const DBX_WEB_FILE_PREVIEW_SERVICE_DEFAULT_PREVIEW_COMPONENT_FUNCTION = (input)
|
|
|
8929
8994
|
/**
|
|
8930
8995
|
* Default dialog-with-component function that opens the preview component inside a {@link DbxInjectionDialogComponent} with a close button.
|
|
8931
8996
|
*
|
|
8932
|
-
* @param input - The dialog input containing the MatDialog instance and the component config to display
|
|
8933
|
-
* @returns A MatDialogRef for the opened injection dialog
|
|
8997
|
+
* @param input - The dialog input containing the MatDialog instance and the component config to display.
|
|
8998
|
+
* @returns A MatDialogRef for the opened injection dialog.
|
|
8934
8999
|
*/
|
|
8935
|
-
const
|
|
9000
|
+
const DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_DIALOG_WITH_COMPONENT_FUNCTION = (input) => {
|
|
8936
9001
|
const { matDialog, componentConfig } = input;
|
|
8937
9002
|
return DbxInjectionDialogComponent.openDialog(matDialog, {
|
|
8938
9003
|
componentConfig,
|
|
@@ -8952,13 +9017,13 @@ class DbxWebFilePreviewService {
|
|
|
8952
9017
|
entries.forEach((x) => this.registerPreviewEntry(x));
|
|
8953
9018
|
}
|
|
8954
9019
|
}
|
|
8955
|
-
_defaultPreviewComponentFunction =
|
|
8956
|
-
_defaultPreviewDialogWithComponentFunction =
|
|
9020
|
+
_defaultPreviewComponentFunction = DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_PREVIEW_COMPONENT_FUNCTION;
|
|
9021
|
+
_defaultPreviewDialogWithComponentFunction = DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_DIALOG_WITH_COMPONENT_FUNCTION;
|
|
8957
9022
|
// Configuration
|
|
8958
9023
|
/**
|
|
8959
9024
|
* Registers one or more file preview entries, mapping MIME types to their preview components.
|
|
8960
9025
|
*
|
|
8961
|
-
* @param entries - Single or array of preview entries to register
|
|
9026
|
+
* @param entries - Single or array of preview entries to register.
|
|
8962
9027
|
*/
|
|
8963
9028
|
registerPreviewEntries(entries) {
|
|
8964
9029
|
asArray(entries).forEach((entry) => this.registerPreviewEntry(entry));
|
|
@@ -8966,7 +9031,7 @@ class DbxWebFilePreviewService {
|
|
|
8966
9031
|
/**
|
|
8967
9032
|
* Registers a single file preview entry for its MIME type(s).
|
|
8968
9033
|
*
|
|
8969
|
-
* @param entry - The preview entry to register
|
|
9034
|
+
* @param entry - The preview entry to register.
|
|
8970
9035
|
*/
|
|
8971
9036
|
registerPreviewEntry(entry) {
|
|
8972
9037
|
asArray(entry.mimeType).forEach((mimeType) => this._entries.set(mimeType, entry));
|
|
@@ -8974,7 +9039,7 @@ class DbxWebFilePreviewService {
|
|
|
8974
9039
|
/**
|
|
8975
9040
|
* Overrides the default preview component function used when no MIME-specific entry is registered.
|
|
8976
9041
|
*
|
|
8977
|
-
* @param previewFunction - The preview component function to use as the new default
|
|
9042
|
+
* @param previewFunction - The preview component function to use as the new default.
|
|
8978
9043
|
*/
|
|
8979
9044
|
setDefaultPreviewComponentFunction(previewFunction) {
|
|
8980
9045
|
this._defaultPreviewComponentFunction = previewFunction;
|
|
@@ -8982,7 +9047,7 @@ class DbxWebFilePreviewService {
|
|
|
8982
9047
|
/**
|
|
8983
9048
|
* Overrides the default dialog-with-component function used when no MIME-specific dialog handler is registered.
|
|
8984
9049
|
*
|
|
8985
|
-
* @param previewDialogWithComponentFunction - The dialog-with-component function to use as the new default
|
|
9050
|
+
* @param previewDialogWithComponentFunction - The dialog-with-component function to use as the new default.
|
|
8986
9051
|
*/
|
|
8987
9052
|
setDefaultPreviewDialogWithComponentFunction(previewDialogWithComponentFunction) {
|
|
8988
9053
|
this._defaultPreviewDialogWithComponentFunction = previewDialogWithComponentFunction;
|
|
@@ -8991,8 +9056,8 @@ class DbxWebFilePreviewService {
|
|
|
8991
9056
|
/**
|
|
8992
9057
|
* Creates an injection component config for previewing a file. Uses a MIME-specific preview function if registered, otherwise falls back to the default.
|
|
8993
9058
|
*
|
|
8994
|
-
* @param input - The preview input containing blob, URL, and MIME type information
|
|
8995
|
-
* @returns An injection component config suitable for rendering the file preview
|
|
9059
|
+
* @param input - The preview input containing blob, URL, and MIME type information.
|
|
9060
|
+
* @returns An injection component config suitable for rendering the file preview.
|
|
8996
9061
|
*/
|
|
8997
9062
|
createPreviewConfig(input) {
|
|
8998
9063
|
const { embedMimeType } = input;
|
|
@@ -9002,8 +9067,8 @@ class DbxWebFilePreviewService {
|
|
|
9002
9067
|
/**
|
|
9003
9068
|
* Opens a Material dialog to preview a file. Uses a MIME-specific dialog function if registered, otherwise creates a preview component and wraps it in the default dialog.
|
|
9004
9069
|
*
|
|
9005
|
-
* @param input - The dialog input containing file data and MIME type
|
|
9006
|
-
* @returns Reference to the opened dialog
|
|
9070
|
+
* @param input - The dialog input containing file data and MIME type.
|
|
9071
|
+
* @returns Reference to the opened dialog.
|
|
9007
9072
|
*/
|
|
9008
9073
|
openPreviewDialog(input) {
|
|
9009
9074
|
const { embedMimeType } = input;
|
|
@@ -9075,8 +9140,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
9075
9140
|
/**
|
|
9076
9141
|
* Builds a directory tree from an array of zip archive entries, enriching each node with MIME type detection and blob retrieval capability.
|
|
9077
9142
|
*
|
|
9078
|
-
* @param entries - Array of zip archive entries to build the tree from, or null/undefined for an empty tree
|
|
9079
|
-
* @returns The root node of the constructed directory tree with MIME types and blob getters attached
|
|
9143
|
+
* @param entries - Array of zip archive entries to build the tree from, or null/undefined for an empty tree.
|
|
9144
|
+
* @returns The root node of the constructed directory tree with MIME types and blob getters attached.
|
|
9080
9145
|
*
|
|
9081
9146
|
* @example
|
|
9082
9147
|
* ```typescript
|
|
@@ -9111,16 +9176,15 @@ const SCREEN_MEDIA_WIDTH_TYPE_SIZE_MAP = {
|
|
|
9111
9176
|
/**
|
|
9112
9177
|
* Returns `true` if the current screen width type is at least as wide as the given breakpoint.
|
|
9113
9178
|
*
|
|
9114
|
-
* @param current -
|
|
9115
|
-
* @param breakpoint -
|
|
9179
|
+
* @param current - The current screen width type.
|
|
9180
|
+
* @param breakpoint - The minimum width type to check against.
|
|
9181
|
+
* @returns `true` if the current width type meets or exceeds the breakpoint.
|
|
9116
9182
|
*
|
|
9117
9183
|
* @example
|
|
9118
9184
|
* ```ts
|
|
9119
9185
|
* screenMediaWidthTypeIsActive('tablet', 'small'); // true
|
|
9120
9186
|
* screenMediaWidthTypeIsActive('micro', 'tablet'); // false
|
|
9121
9187
|
* ```
|
|
9122
|
-
*
|
|
9123
|
-
* @returns `true` if the current width type meets or exceeds the breakpoint
|
|
9124
9188
|
*/
|
|
9125
9189
|
function screenMediaWidthTypeIsActive(current, breakpoint) {
|
|
9126
9190
|
return compareScreenMediaWidthTypes(current, breakpoint, (a, b) => a >= b);
|
|
@@ -9128,10 +9192,10 @@ function screenMediaWidthTypeIsActive(current, breakpoint) {
|
|
|
9128
9192
|
/**
|
|
9129
9193
|
* Compares two {@link ScreenMediaWidthType} values using a custom comparator on their numeric sizes.
|
|
9130
9194
|
*
|
|
9131
|
-
* @param a -
|
|
9132
|
-
* @param b -
|
|
9133
|
-
* @param compare -
|
|
9134
|
-
* @returns
|
|
9195
|
+
* @param a - The first screen width type.
|
|
9196
|
+
* @param b - The second screen width type.
|
|
9197
|
+
* @param compare - A comparator function applied to the numeric size values of `a` and `b`
|
|
9198
|
+
* @returns The result of applying the comparator to the mapped numeric sizes.
|
|
9135
9199
|
*/
|
|
9136
9200
|
function compareScreenMediaWidthTypes(a, b, compare) {
|
|
9137
9201
|
return compare(SCREEN_MEDIA_WIDTH_TYPE_SIZE_MAP[a], SCREEN_MEDIA_WIDTH_TYPE_SIZE_MAP[b]);
|
|
@@ -9204,8 +9268,8 @@ class DbxScreenMediaService {
|
|
|
9204
9268
|
/**
|
|
9205
9269
|
* Returns an observable that emits `true` when the current screen width is at least as wide as the given breakpoint.
|
|
9206
9270
|
*
|
|
9207
|
-
* @param inputBreakpoint -
|
|
9208
|
-
* @returns
|
|
9271
|
+
* @param inputBreakpoint - The minimum width type or an observable of it.
|
|
9272
|
+
* @returns Observable of whether the breakpoint is currently active.
|
|
9209
9273
|
*/
|
|
9210
9274
|
isBreakpointActive(inputBreakpoint) {
|
|
9211
9275
|
return combineLatest([this.widthType$, asObservable(inputBreakpoint)]).pipe(map(([current, breakpoint]) => screenMediaWidthTypeIsActive(current, breakpoint)), distinctUntilChanged(), shareReplay(1));
|
|
@@ -9296,6 +9360,7 @@ class DbxAccordionHeaderHeightDirective {
|
|
|
9296
9360
|
heightTextSmallScreenMultiplier = input(1.6, ...(ngDevMode ? [{ debugName: "heightTextSmallScreenMultiplier" }] : /* istanbul ignore next */ []));
|
|
9297
9361
|
widthTypeSignal = toSignal(this._screenMediaService.widthType$);
|
|
9298
9362
|
expansionPanelHeightSignal = computed(() => {
|
|
9363
|
+
const heightTextSmallScreenMultiplier = this.heightTextSmallScreenMultiplier();
|
|
9299
9364
|
const baseHeight = this.dbxAccordionHeaderHeight();
|
|
9300
9365
|
const text = this.heightText();
|
|
9301
9366
|
const textLines = this.heightTextLines();
|
|
@@ -9315,7 +9380,7 @@ class DbxAccordionHeaderHeightDirective {
|
|
|
9315
9380
|
const lineHeight = textLineHeight;
|
|
9316
9381
|
// on small screens text wraps more, so scale up estimated lines
|
|
9317
9382
|
if (isSmallScreen) {
|
|
9318
|
-
const multiplier =
|
|
9383
|
+
const multiplier = heightTextSmallScreenMultiplier ?? 1.6;
|
|
9319
9384
|
lines = Math.ceil(lines * multiplier);
|
|
9320
9385
|
}
|
|
9321
9386
|
height = (baseHeight ?? 60) + lines * lineHeight;
|
|
@@ -9413,8 +9478,9 @@ class DbxAvatarViewComponent {
|
|
|
9413
9478
|
return hideOnError && hasError;
|
|
9414
9479
|
}, ...(ngDevMode ? [{ debugName: "hideAvatarSignal" }] : /* istanbul ignore next */ []));
|
|
9415
9480
|
avatarIconSignal = computed(() => {
|
|
9481
|
+
const hasAvatarError = this.hasAvatarErrorSignal();
|
|
9416
9482
|
let icon = this.avatarIcon() ?? this.defaultContext?.icon;
|
|
9417
|
-
if (!icon &&
|
|
9483
|
+
if (!icon && hasAvatarError) {
|
|
9418
9484
|
icon = this.avatarService.defaultAvatarErrorIcon;
|
|
9419
9485
|
}
|
|
9420
9486
|
else {
|
|
@@ -9518,8 +9584,8 @@ class DbxAvatarViewService {
|
|
|
9518
9584
|
*
|
|
9519
9585
|
* Falls back to the default component config if no custom resolver is configured or if it returns null.
|
|
9520
9586
|
*
|
|
9521
|
-
* @param context -
|
|
9522
|
-
* @returns
|
|
9587
|
+
* @param context - The avatar context used to resolve the appropriate component configuration.
|
|
9588
|
+
* @returns The resolved injection component config, or the default if no custom resolver matches.
|
|
9523
9589
|
*/
|
|
9524
9590
|
avatarComponentForContext(context) {
|
|
9525
9591
|
let config = this._defaultAvatarComponentConfig;
|
|
@@ -9540,7 +9606,7 @@ class DbxAvatarViewService {
|
|
|
9540
9606
|
/**
|
|
9541
9607
|
* Sets the default avatar image URL used when no context-specific URL is provided.
|
|
9542
9608
|
*
|
|
9543
|
-
* @param url -
|
|
9609
|
+
* @param url - The URL to use as the default avatar image, or nullish to clear.
|
|
9544
9610
|
*/
|
|
9545
9611
|
setDefaultAvatarUrl(url) {
|
|
9546
9612
|
this._defaultAvatarUrl = url;
|
|
@@ -9548,7 +9614,7 @@ class DbxAvatarViewService {
|
|
|
9548
9614
|
/**
|
|
9549
9615
|
* Sets the default Material icon name used as a fallback when no avatar image is available.
|
|
9550
9616
|
*
|
|
9551
|
-
* @param icon -
|
|
9617
|
+
* @param icon - The Material icon name to use, or nullish to clear.
|
|
9552
9618
|
*/
|
|
9553
9619
|
setDefaultAvatarIcon(icon) {
|
|
9554
9620
|
this._defaultAvatarIcon = icon;
|
|
@@ -9556,7 +9622,7 @@ class DbxAvatarViewService {
|
|
|
9556
9622
|
/**
|
|
9557
9623
|
* Sets the Material icon name displayed when the avatar image fails to load.
|
|
9558
9624
|
*
|
|
9559
|
-
* @param icon -
|
|
9625
|
+
* @param icon - The Material icon name to display on image load error, or nullish to clear.
|
|
9560
9626
|
*/
|
|
9561
9627
|
setDefaultAvatarErrorIcon(icon) {
|
|
9562
9628
|
this._defaultAvatarErrorIcon = icon;
|
|
@@ -9564,7 +9630,7 @@ class DbxAvatarViewService {
|
|
|
9564
9630
|
/**
|
|
9565
9631
|
* Overrides the default component used to render avatars when no context-specific component is resolved.
|
|
9566
9632
|
*
|
|
9567
|
-
* @param config -
|
|
9633
|
+
* @param config - The injection component config to use as the new default.
|
|
9568
9634
|
*/
|
|
9569
9635
|
setDefaultAvatarComponentConfig(config) {
|
|
9570
9636
|
this._defaultAvatarComponentConfig = config;
|
|
@@ -10167,15 +10233,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
10167
10233
|
/**
|
|
10168
10234
|
* Creates Angular providers for a new {@link TwoColumnsContextStore} instance.
|
|
10169
10235
|
*
|
|
10170
|
-
* @
|
|
10171
|
-
*
|
|
10172
|
-
* @Component({
|
|
10236
|
+
* @returns Array of Angular providers that supply a new {@link TwoColumnsContextStore}
|
|
10237
|
+
*
|
|
10238
|
+
* @Component ({
|
|
10173
10239
|
* providers: provideTwoColumnsContext(),
|
|
10174
10240
|
* })
|
|
10175
10241
|
* export class MyColumnLayoutComponent { }
|
|
10176
10242
|
* ```
|
|
10177
10243
|
*
|
|
10178
|
-
* @
|
|
10244
|
+
* @example
|
|
10245
|
+
* ```typescript
|
|
10179
10246
|
*/
|
|
10180
10247
|
function provideTwoColumnsContext() {
|
|
10181
10248
|
return [
|
|
@@ -10759,16 +10826,17 @@ class DbxValueListItemModifier {
|
|
|
10759
10826
|
/**
|
|
10760
10827
|
* Registers a directive as a {@link DbxValueListItemModifier} provider for dependency injection.
|
|
10761
10828
|
*
|
|
10762
|
-
* @
|
|
10763
|
-
*
|
|
10764
|
-
*
|
|
10829
|
+
* @param sourceType - The directive class to register as the DbxValueListItemModifier provider.
|
|
10830
|
+
* @returns Array of Angular providers that wire up the directive as a DbxValueListItemModifier.
|
|
10831
|
+
*
|
|
10832
|
+
* @Directive ({
|
|
10765
10833
|
* providers: provideDbxValueListViewModifier(MyModifierDirective)
|
|
10766
10834
|
* })
|
|
10767
10835
|
* export class MyModifierDirective extends DbxValueListItemModifier<MyItem> { ... }
|
|
10768
10836
|
* ```
|
|
10769
10837
|
*
|
|
10770
|
-
* @
|
|
10771
|
-
*
|
|
10838
|
+
* @example
|
|
10839
|
+
* ```ts
|
|
10772
10840
|
*/
|
|
10773
10841
|
function provideDbxValueListViewModifier(sourceType) {
|
|
10774
10842
|
return [
|
|
@@ -10781,16 +10849,16 @@ function provideDbxValueListViewModifier(sourceType) {
|
|
|
10781
10849
|
/**
|
|
10782
10850
|
* Creates a {@link ListItemModifier} with the given key and modification function.
|
|
10783
10851
|
*
|
|
10852
|
+
* @param key - A unique string identifier for this modifier in the modifier map.
|
|
10853
|
+
* @param modify - The function that mutates list item properties during rendering.
|
|
10854
|
+
* @returns A new ListItemModifier with the given key and modification function.
|
|
10855
|
+
*
|
|
10784
10856
|
* @example
|
|
10785
10857
|
* ```ts
|
|
10786
10858
|
* const highlightModifier = listItemModifier<MyItem>('highlight', (item) => {
|
|
10787
10859
|
* item.selected = item.itemValue.isImportant;
|
|
10788
10860
|
* });
|
|
10789
10861
|
* ```
|
|
10790
|
-
*
|
|
10791
|
-
* @param key - a unique string identifier for this modifier in the modifier map
|
|
10792
|
-
* @param modify - the function that mutates list item properties during rendering
|
|
10793
|
-
* @returns a new ListItemModifier with the given key and modification function
|
|
10794
10862
|
*/
|
|
10795
10863
|
function listItemModifier(key, modify) {
|
|
10796
10864
|
return modifier(key, modify);
|
|
@@ -11031,16 +11099,16 @@ const SIDE_NAV_DISPLAY_MODE_ORDER = [SideNavDisplayMode.NONE, SideNavDisplayMode
|
|
|
11031
11099
|
* Falls back to the lowest allowed mode if no lower mode is available, or {@link SideNavDisplayMode.NONE}
|
|
11032
11100
|
* if the allowed set is empty or undefined.
|
|
11033
11101
|
*
|
|
11102
|
+
* @param mode - The requested display mode to resolve.
|
|
11103
|
+
* @param allowedModes - Set of modes that are permitted; if null/undefined, all modes are allowed.
|
|
11104
|
+
* @returns The resolved display mode, falling back to the nearest lower allowed mode or NONE.
|
|
11105
|
+
*
|
|
11034
11106
|
* @example
|
|
11035
11107
|
* ```ts
|
|
11036
11108
|
* // ICON not allowed, rounds down to MOBILE
|
|
11037
11109
|
* resolveSideNavDisplayMode(SideNavDisplayMode.ICON, new Set([SideNavDisplayMode.MOBILE, SideNavDisplayMode.FULL]));
|
|
11038
11110
|
* // => SideNavDisplayMode.MOBILE
|
|
11039
11111
|
* ```
|
|
11040
|
-
*
|
|
11041
|
-
* @param mode - The requested display mode to resolve.
|
|
11042
|
-
* @param allowedModes - Set of modes that are permitted; if null/undefined, all modes are allowed.
|
|
11043
|
-
* @returns The resolved display mode, falling back to the nearest lower allowed mode or NONE.
|
|
11044
11112
|
*/
|
|
11045
11113
|
function resolveSideNavDisplayMode(mode, allowedModes) {
|
|
11046
11114
|
let result;
|
|
@@ -11192,7 +11260,10 @@ class DbxSidenavComponent extends AbstractTransitionWatcherDirective {
|
|
|
11192
11260
|
toggleOpen = toggleOpen ?? !this.sidenav().opened;
|
|
11193
11261
|
const mode = this.stateSignal()?.mode;
|
|
11194
11262
|
let open;
|
|
11195
|
-
if (
|
|
11263
|
+
if (forced) {
|
|
11264
|
+
open = toggleOpen;
|
|
11265
|
+
}
|
|
11266
|
+
else {
|
|
11196
11267
|
switch (mode) {
|
|
11197
11268
|
case SideNavDisplayMode.MOBILE:
|
|
11198
11269
|
open = toggleOpen;
|
|
@@ -11205,9 +11276,6 @@ class DbxSidenavComponent extends AbstractTransitionWatcherDirective {
|
|
|
11205
11276
|
break;
|
|
11206
11277
|
}
|
|
11207
11278
|
}
|
|
11208
|
-
else {
|
|
11209
|
-
open = toggleOpen;
|
|
11210
|
-
}
|
|
11211
11279
|
if (open != null) {
|
|
11212
11280
|
if (open) {
|
|
11213
11281
|
void this.sidenav().open();
|
|
@@ -11512,14 +11580,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
11512
11580
|
/**
|
|
11513
11581
|
* Provides a {@link DbxRouterWebProviderConfig} that configures the application to use Angular Router for rendering segue-ref anchor links.
|
|
11514
11582
|
*
|
|
11583
|
+
* @returns Environment providers that configure the Angular Router-based segue anchor component.
|
|
11584
|
+
*
|
|
11515
11585
|
* @example
|
|
11516
11586
|
* ```typescript
|
|
11517
11587
|
* bootstrapApplication(AppComponent, {
|
|
11518
11588
|
* providers: [provideDbxRouterWebAngularRouterProviderConfig()]
|
|
11519
11589
|
* });
|
|
11520
11590
|
* ```
|
|
11521
|
-
*
|
|
11522
|
-
* @returns environment providers that configure the Angular Router-based segue anchor component
|
|
11523
11591
|
*/
|
|
11524
11592
|
function provideDbxRouterWebAngularRouterProviderConfig() {
|
|
11525
11593
|
const config = {
|
|
@@ -11565,14 +11633,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
11565
11633
|
/**
|
|
11566
11634
|
* Provides a {@link DbxRouterWebProviderConfig} that configures the application to use UIRouter for rendering segue-ref anchor links.
|
|
11567
11635
|
*
|
|
11636
|
+
* @returns Environment providers that configure the UIRouter-based segue anchor component.
|
|
11637
|
+
*
|
|
11568
11638
|
* @example
|
|
11569
11639
|
* ```typescript
|
|
11570
11640
|
* bootstrapApplication(AppComponent, {
|
|
11571
11641
|
* providers: [provideDbxRouterWebUiRouterProviderConfig()]
|
|
11572
11642
|
* });
|
|
11573
11643
|
* ```
|
|
11574
|
-
*
|
|
11575
|
-
* @returns environment providers that configure the UIRouter-based segue anchor component
|
|
11576
11644
|
*/
|
|
11577
11645
|
function provideDbxRouterWebUiRouterProviderConfig() {
|
|
11578
11646
|
const config = {
|
|
@@ -11814,8 +11882,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
11814
11882
|
class DbxContentBorderDirective {
|
|
11815
11883
|
color = input('default', ...(ngDevMode ? [{ debugName: "color" }] : /* istanbul ignore next */ []));
|
|
11816
11884
|
borderOpacity = input('lite', ...(ngDevMode ? [{ debugName: "borderOpacity" }] : /* istanbul ignore next */ []));
|
|
11817
|
-
|
|
11818
|
-
|
|
11885
|
+
borderColorVarSignal = computed(() => dbxThemeColorCssTokenVar(this.color(), true), ...(ngDevMode ? [{ debugName: "borderColorVarSignal" }] : /* istanbul ignore next */ []));
|
|
11886
|
+
borderOpacityValueSignal = computed(() => {
|
|
11819
11887
|
const color = this.color();
|
|
11820
11888
|
const opacity = this.borderOpacity();
|
|
11821
11889
|
let result;
|
|
@@ -11833,9 +11901,9 @@ class DbxContentBorderDirective {
|
|
|
11833
11901
|
break;
|
|
11834
11902
|
}
|
|
11835
11903
|
return result;
|
|
11836
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
11904
|
+
}, ...(ngDevMode ? [{ debugName: "borderOpacityValueSignal" }] : /* istanbul ignore next */ []));
|
|
11837
11905
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxContentBorderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
11838
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.11", type: DbxContentBorderDirective, isStandalone: true, selector: "dbx-content-border,[dbxContentBorder]", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, borderOpacity: { classPropertyName: "borderOpacity", publicName: "borderOpacity", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.--dbx-border-color": "
|
|
11906
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.11", type: DbxContentBorderDirective, isStandalone: true, selector: "dbx-content-border,[dbxContentBorder]", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, borderOpacity: { classPropertyName: "borderOpacity", publicName: "borderOpacity", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.--dbx-border-color": "borderColorVarSignal()", "style.--dbx-border-opacity": "borderOpacityValueSignal()" }, classAttribute: "d-block dbx-content-border" }, ngImport: i0 });
|
|
11839
11907
|
}
|
|
11840
11908
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxContentBorderDirective, decorators: [{
|
|
11841
11909
|
type: Directive,
|
|
@@ -11843,8 +11911,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
11843
11911
|
selector: 'dbx-content-border,[dbxContentBorder]',
|
|
11844
11912
|
host: {
|
|
11845
11913
|
class: 'd-block dbx-content-border',
|
|
11846
|
-
'[style.--dbx-border-color]': '
|
|
11847
|
-
'[style.--dbx-border-opacity]': '
|
|
11914
|
+
'[style.--dbx-border-color]': 'borderColorVarSignal()',
|
|
11915
|
+
'[style.--dbx-border-opacity]': 'borderOpacityValueSignal()'
|
|
11848
11916
|
},
|
|
11849
11917
|
standalone: true
|
|
11850
11918
|
}]
|
|
@@ -12322,16 +12390,17 @@ class DbxListView {
|
|
|
12322
12390
|
/**
|
|
12323
12391
|
* Registers a component as a {@link DbxListView} provider so it can be injected by parent list components.
|
|
12324
12392
|
*
|
|
12325
|
-
* @
|
|
12326
|
-
*
|
|
12327
|
-
*
|
|
12393
|
+
* @param sourceType - The component class to register as the DbxListView provider.
|
|
12394
|
+
* @returns Array of Angular providers that wire up the component as a DbxListView.
|
|
12395
|
+
*
|
|
12396
|
+
* @Component ({
|
|
12328
12397
|
* providers: provideDbxListView(MyCustomListViewComponent)
|
|
12329
12398
|
* })
|
|
12330
12399
|
* export class MyCustomListViewComponent extends DbxListView<MyItem> { ... }
|
|
12331
12400
|
* ```
|
|
12332
12401
|
*
|
|
12333
|
-
* @
|
|
12334
|
-
*
|
|
12402
|
+
* @example
|
|
12403
|
+
* ```ts
|
|
12335
12404
|
*/
|
|
12336
12405
|
function provideDbxListView(sourceType) {
|
|
12337
12406
|
// use of any here is allowed as typings are not relevant for providers
|
|
@@ -12361,9 +12430,9 @@ function dbxValueListItemDecisionFunction(decisionFunction) {
|
|
|
12361
12430
|
* Extracts a stable tracking key from an item value by checking for `key` ({@link ModelKeyRef}),
|
|
12362
12431
|
* `id` ({@link UniqueModel}), or falling back to a prefixed index string.
|
|
12363
12432
|
*
|
|
12364
|
-
* @param itemValue - The raw value to extract a key from
|
|
12365
|
-
* @param index - The item's position index, used as fallback
|
|
12366
|
-
* @returns
|
|
12433
|
+
* @param itemValue - The raw value to extract a key from.
|
|
12434
|
+
* @param index - The item's position index, used as fallback.
|
|
12435
|
+
* @returns Key for tracking the item. (string)
|
|
12367
12436
|
*
|
|
12368
12437
|
* @example
|
|
12369
12438
|
* ```ts
|
|
@@ -12378,9 +12447,9 @@ function dbxValueListItemKeyForItemValue(itemValue, index) {
|
|
|
12378
12447
|
/**
|
|
12379
12448
|
* Maps raw values into an observable of {@link DbxValueListItemConfig} items, applying the list view config's mapping function and attaching injection configuration.
|
|
12380
12449
|
*
|
|
12381
|
-
* @param listViewConfig The list view configuration containing the component and optional mapping function
|
|
12382
|
-
* @param itemValues The raw values to map into configured list items
|
|
12383
|
-
* @returns An observable emitting the mapped and configured list item configs
|
|
12450
|
+
* @param listViewConfig - The list view configuration containing the component and optional mapping function.
|
|
12451
|
+
* @param itemValues - The raw values to map into configured list items.
|
|
12452
|
+
* @returns An observable emitting the mapped and configured list item configs.
|
|
12384
12453
|
*
|
|
12385
12454
|
* @example
|
|
12386
12455
|
* ```ts
|
|
@@ -12396,9 +12465,9 @@ function mapValuesToValuesListItemConfigObs(listViewConfig, itemValues) {
|
|
|
12396
12465
|
/**
|
|
12397
12466
|
* Adds injection component configuration and meta configuration to each list item, producing fully configured {@link DbxValueListItemConfig} entries ready for rendering.
|
|
12398
12467
|
*
|
|
12399
|
-
* @param listViewConfig The list view configuration providing injection component config and optional meta config
|
|
12400
|
-
* @param listItems The list items to augment with configuration
|
|
12401
|
-
* @returns The list items extended with injection component configuration attached
|
|
12468
|
+
* @param listViewConfig - The list view configuration providing injection component config and optional meta config.
|
|
12469
|
+
* @param listItems - The list items to augment with configuration.
|
|
12470
|
+
* @returns The list items extended with injection component configuration attached.
|
|
12402
12471
|
*/
|
|
12403
12472
|
function addConfigToValueListItems(listViewConfig, listItems) {
|
|
12404
12473
|
const itemConfigs = listItems.map((listItem) => {
|
|
@@ -12439,16 +12508,17 @@ class DbxValueListView {
|
|
|
12439
12508
|
/**
|
|
12440
12509
|
* Registers a component as a {@link DbxValueListView} provider for dependency injection.
|
|
12441
12510
|
*
|
|
12442
|
-
* @param sourceType The component class type to register as the list view provider
|
|
12443
|
-
* @returns
|
|
12511
|
+
* @param sourceType - The component class type to register as the list view provider.
|
|
12512
|
+
* @returns Array of Angular providers that bind the given component to {@link DbxValueListView}
|
|
12444
12513
|
*
|
|
12445
|
-
* @
|
|
12446
|
-
* ```ts
|
|
12447
|
-
* @Component({
|
|
12514
|
+
* @Component ({
|
|
12448
12515
|
* providers: provideDbxValueListView(MyValueListViewComponent)
|
|
12449
12516
|
* })
|
|
12450
12517
|
* export class MyValueListViewComponent extends DbxValueListView<MyItem> { ... }
|
|
12451
12518
|
* ```
|
|
12519
|
+
*
|
|
12520
|
+
* @example
|
|
12521
|
+
* ```ts
|
|
12452
12522
|
*/
|
|
12453
12523
|
function provideDbxValueListView(sourceType) {
|
|
12454
12524
|
return [
|
|
@@ -12484,8 +12554,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
12484
12554
|
/**
|
|
12485
12555
|
* Default grouping function that places all items into a single unnamed group.
|
|
12486
12556
|
*
|
|
12487
|
-
* @param items The flat list of configured list items to group
|
|
12488
|
-
* @returns An array containing a single group with all input items
|
|
12557
|
+
* @param items - The flat list of configured list items to group.
|
|
12558
|
+
* @returns An array containing a single group with all input items.
|
|
12489
12559
|
*/
|
|
12490
12560
|
const defaultDbxValueListViewGroupValuesFunction = (items) => {
|
|
12491
12561
|
const data = {};
|
|
@@ -12505,7 +12575,7 @@ class DbxValueListViewGroupDelegate {
|
|
|
12505
12575
|
/**
|
|
12506
12576
|
* Creates a default {@link DbxValueListViewGroupDelegate} that places all items into a single ungrouped list.
|
|
12507
12577
|
*
|
|
12508
|
-
* @returns A group delegate that places all items into one unnamed group
|
|
12578
|
+
* @returns A group delegate that places all items into one unnamed group.
|
|
12509
12579
|
*
|
|
12510
12580
|
* @example
|
|
12511
12581
|
* ```ts
|
|
@@ -12520,16 +12590,17 @@ function defaultDbxValueListViewGroupDelegate() {
|
|
|
12520
12590
|
/**
|
|
12521
12591
|
* Registers a class as a {@link DbxValueListViewGroupDelegate} provider for dependency injection.
|
|
12522
12592
|
*
|
|
12523
|
-
* @param sourceType The class type to register as the group delegate provider
|
|
12524
|
-
* @returns
|
|
12593
|
+
* @param sourceType - The class type to register as the group delegate provider.
|
|
12594
|
+
* @returns Array of Angular providers that bind the given class to {@link DbxValueListViewGroupDelegate}
|
|
12525
12595
|
*
|
|
12526
|
-
* @
|
|
12527
|
-
* ```ts
|
|
12528
|
-
* @Directive({
|
|
12596
|
+
* @Directive ({
|
|
12529
12597
|
* providers: provideDbxValueListViewGroupDelegate(MyGroupDelegate)
|
|
12530
12598
|
* })
|
|
12531
12599
|
* export class MyGroupDelegate extends DbxValueListViewGroupDelegate<MyGroup, MyItem> { ... }
|
|
12532
12600
|
* ```
|
|
12601
|
+
*
|
|
12602
|
+
* @example
|
|
12603
|
+
* ```ts
|
|
12533
12604
|
*/
|
|
12534
12605
|
function provideDbxValueListViewGroupDelegate(sourceType) {
|
|
12535
12606
|
// use of any here is allowed as typings are not relevant for providers
|
|
@@ -12647,9 +12718,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
12647
12718
|
* Uses the item's {@link DbxValueListItem.key} when available for stable identity across
|
|
12648
12719
|
* data updates, falling back to a prefixed index string to avoid collisions with key values.
|
|
12649
12720
|
*
|
|
12650
|
-
* @param index -
|
|
12651
|
-
* @param item -
|
|
12652
|
-
* @returns
|
|
12721
|
+
* @param index - The item's position index in the list.
|
|
12722
|
+
* @param item - The list item whose identity key is resolved.
|
|
12723
|
+
* @returns The item's key, itemValue key/id, or a prefixed index string as a fallback.
|
|
12653
12724
|
*/
|
|
12654
12725
|
const DEFAULT_VALUE_LIST_VIEW_CONTENT_COMPONENT_TRACK_BY_FUNCTION = (index, item) => item.key;
|
|
12655
12726
|
/**
|
|
@@ -12756,14 +12827,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
12756
12827
|
/**
|
|
12757
12828
|
* Flattens grouped accordion items into a single array of render entries with stable track IDs.
|
|
12758
12829
|
*
|
|
12830
|
+
* @param groups - The grouped items to flatten.
|
|
12831
|
+
* @param trackByFn - The track-by function used to derive stable item identity.
|
|
12832
|
+
* @returns A flat array of render entries for use in a single `@for` loop.
|
|
12833
|
+
*
|
|
12759
12834
|
* @example
|
|
12760
12835
|
* ```ts
|
|
12761
12836
|
* const entries = flattenAccordionGroups(groups, trackByFn);
|
|
12762
12837
|
* ```
|
|
12763
|
-
*
|
|
12764
|
-
* @param groups - the grouped items to flatten
|
|
12765
|
-
* @param trackByFn - the track-by function used to derive stable item identity
|
|
12766
|
-
* @returns a flat array of render entries for use in a single `@for` loop
|
|
12767
12838
|
*/
|
|
12768
12839
|
function flattenAccordionGroups(groups, trackByFn) {
|
|
12769
12840
|
const entries = [];
|
|
@@ -13023,7 +13094,7 @@ class AbstractDbxListViewDirective {
|
|
|
13023
13094
|
valuesObs = asObservable(x);
|
|
13024
13095
|
}
|
|
13025
13096
|
else {
|
|
13026
|
-
valuesObs = combineLatest([this._inputValues$, this._inputValuesArray$]).pipe(switchMap(([x, y]) => (y
|
|
13097
|
+
valuesObs = combineLatest([this._inputValues$, this._inputValuesArray$]).pipe(switchMap(([x, y]) => (y == null ? asObservable(x) : of(y))));
|
|
13027
13098
|
}
|
|
13028
13099
|
return valuesObs;
|
|
13029
13100
|
}));
|
|
@@ -13322,10 +13393,10 @@ const dbxListGridViewComponentImportsAndExports = DBX_LIST_GRID_VIEW_COMPONENT_I
|
|
|
13322
13393
|
/**
|
|
13323
13394
|
* Injection token for providing a default meta icon string to {@link DbxListViewMetaIconComponent} instances.
|
|
13324
13395
|
*/
|
|
13325
|
-
const
|
|
13396
|
+
const DEFAULT_DBX_LIST_VIEW_META_ICON = new InjectionToken('DEFAULT_DBX_LIST_VIEW_META_ICON');
|
|
13326
13397
|
/**
|
|
13327
13398
|
* Displays a Material icon in the meta (trailing) area of a list item. Reads its icon from the item's meta
|
|
13328
|
-
* configuration or falls back to a default provided via {@link
|
|
13399
|
+
* configuration or falls back to a default provided via {@link DEFAULT_DBX_LIST_VIEW_META_ICON}.
|
|
13329
13400
|
*
|
|
13330
13401
|
* Use the static `metaConfig()` method to create the injection component config for use in list view configurations.
|
|
13331
13402
|
*
|
|
@@ -13336,14 +13407,14 @@ const DBX_LIST_VIEW_DEFAULT_META_ICON = new InjectionToken('DBX_LIST_VIEW_DEFAUL
|
|
|
13336
13407
|
*/
|
|
13337
13408
|
class DbxListViewMetaIconComponent {
|
|
13338
13409
|
item = inject(DBX_VALUE_LIST_VIEW_ITEM, { optional: true });
|
|
13339
|
-
defaultIcon = inject(
|
|
13410
|
+
defaultIcon = inject(DEFAULT_DBX_LIST_VIEW_META_ICON, { optional: true });
|
|
13340
13411
|
icon = this.item?.meta?.icon ?? this.defaultIcon;
|
|
13341
13412
|
static metaConfig(defaultIcon) {
|
|
13342
13413
|
return {
|
|
13343
13414
|
componentClass: DbxListViewMetaIconComponent,
|
|
13344
13415
|
providers: [
|
|
13345
13416
|
{
|
|
13346
|
-
provide:
|
|
13417
|
+
provide: DEFAULT_DBX_LIST_VIEW_META_ICON,
|
|
13347
13418
|
useValue: defaultIcon
|
|
13348
13419
|
}
|
|
13349
13420
|
]
|
|
@@ -13456,7 +13527,16 @@ class DbxListTitleGroupDirective {
|
|
|
13456
13527
|
groupValues = (items) => {
|
|
13457
13528
|
return this._delegate$.pipe(map((delegate) => {
|
|
13458
13529
|
let groups;
|
|
13459
|
-
if (delegate
|
|
13530
|
+
if (delegate == null) {
|
|
13531
|
+
groups = [
|
|
13532
|
+
{
|
|
13533
|
+
id: '_',
|
|
13534
|
+
data: { value: null, title: '' },
|
|
13535
|
+
items
|
|
13536
|
+
}
|
|
13537
|
+
];
|
|
13538
|
+
}
|
|
13539
|
+
else {
|
|
13460
13540
|
const groupsValuesMap = makeValuesGroupMap(items, delegate.groupValueForItem);
|
|
13461
13541
|
const { sortGroupsByData, cssClasses: inputCssClasses } = delegate;
|
|
13462
13542
|
const cssClassesForAllGroups = inputCssClasses ?? [];
|
|
@@ -13486,15 +13566,6 @@ class DbxListTitleGroupDirective {
|
|
|
13486
13566
|
groups.sort(compareWithMappedValuesFunction((x) => x.data, sortGroupsByData));
|
|
13487
13567
|
}
|
|
13488
13568
|
}
|
|
13489
|
-
else {
|
|
13490
|
-
groups = [
|
|
13491
|
-
{
|
|
13492
|
-
id: '_',
|
|
13493
|
-
data: { value: null, title: '' },
|
|
13494
|
-
items
|
|
13495
|
-
}
|
|
13496
|
-
];
|
|
13497
|
-
}
|
|
13498
13569
|
return groups;
|
|
13499
13570
|
}));
|
|
13500
13571
|
};
|
|
@@ -13518,10 +13589,10 @@ const DBX_LIST_ITEM_DISABLE_RIPPLE_LIST_ITEM_MODIFIER_KEY = 'disable_ripple_anch
|
|
|
13518
13589
|
* Default decision function that disables ripple on items that already have ripple disabled,
|
|
13519
13590
|
* lack an anchor, or have an anchor with no navigation target.
|
|
13520
13591
|
*
|
|
13521
|
-
* @param item -
|
|
13522
|
-
* @returns `true` if the ripple should be disabled for this item
|
|
13592
|
+
* @param item - The list item to evaluate for ripple disabling.
|
|
13593
|
+
* @returns `true` if the ripple should be disabled for this item.
|
|
13523
13594
|
*/
|
|
13524
|
-
const
|
|
13595
|
+
const DEFAULT_DBX_LIST_ITEM_DISABLE_FUNCTION = (item) => {
|
|
13525
13596
|
return item.rippleDisabled || !item.anchor || (!item.anchor.ref && !item.anchor.url && !item.anchor.onClick);
|
|
13526
13597
|
};
|
|
13527
13598
|
/**
|
|
@@ -13535,7 +13606,7 @@ const DBX_LIST_ITEM_DEFAULT_DISABLE_FUNCTION = (item) => {
|
|
|
13535
13606
|
*/
|
|
13536
13607
|
class DbxListItemDisableRippleModifierDirective extends AbstractDbxValueListItemModifierDirective {
|
|
13537
13608
|
disableRippleForItem = input(undefined, { ...(ngDevMode ? { debugName: "disableRippleForItem" } : /* istanbul ignore next */ {}), alias: 'dbxListItemDisableRippleModifier', transform: transformEmptyStringInputToUndefined });
|
|
13538
|
-
disableRippleForItemModifiers$ = toObservable(this.disableRippleForItem).pipe(map((x) => x ??
|
|
13609
|
+
disableRippleForItemModifiers$ = toObservable(this.disableRippleForItem).pipe(map((x) => x ?? DEFAULT_DBX_LIST_ITEM_DISABLE_FUNCTION), map((disableRippleForItem) => {
|
|
13539
13610
|
const modifiers = {
|
|
13540
13611
|
key: DBX_LIST_ITEM_DISABLE_RIPPLE_LIST_ITEM_MODIFIER_KEY,
|
|
13541
13612
|
modify: (x) => {
|
|
@@ -13568,8 +13639,8 @@ const DBX_LIST_ITEM_IS_SELECTED_ITEM_MODIFIER_KEY = 'is_selected_item_modifier';
|
|
|
13568
13639
|
/**
|
|
13569
13640
|
* Default decision function that returns the item's current `selected` state (defaulting to false).
|
|
13570
13641
|
*
|
|
13571
|
-
* @param item -
|
|
13572
|
-
* @returns `true` if the item is currently selected, `false` otherwise
|
|
13642
|
+
* @param item - The list item to check for selection.
|
|
13643
|
+
* @returns `true` if the item is currently selected, `false` otherwise.
|
|
13573
13644
|
*/
|
|
13574
13645
|
const DEFAULT_DBX_LIST_ITEM_IS_SELECTED_FUNCTION = (item) => {
|
|
13575
13646
|
return item.selected ?? false;
|
|
@@ -13709,11 +13780,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
13709
13780
|
/**
|
|
13710
13781
|
* Default infinite scroll distance multiplier for triggering load-more events.
|
|
13711
13782
|
*/
|
|
13712
|
-
const
|
|
13783
|
+
const DEFAULT_DBX_LIST_SCROLL_DISTANCE = 1.5;
|
|
13713
13784
|
/**
|
|
13714
13785
|
* Default throttle duration in milliseconds for scroll events.
|
|
13715
13786
|
*/
|
|
13716
|
-
const
|
|
13787
|
+
const DEFAULT_DBX_LIST_THROTTLE_SCROLL = 50;
|
|
13717
13788
|
/**
|
|
13718
13789
|
* Displays a potentially infinitely scrollable list of content. Supports load-more triggers, selection modes, and empty/loading states.
|
|
13719
13790
|
*
|
|
@@ -13769,8 +13840,8 @@ class DbxListComponent {
|
|
|
13769
13840
|
selectionMode$ = toObservable(this.selectionMode).pipe(distinctUntilChanged(), shareReplay(1));
|
|
13770
13841
|
hideOnEmpty$ = this.config$.pipe(filterMaybe(), map((x) => Boolean(x.hideOnEmpty)), distinctUntilChanged(), shareReplay(1));
|
|
13771
13842
|
invertedList$ = this.config$.pipe(filterMaybe(), map((x) => Boolean(x?.throttle)), distinctUntilChanged(), shareReplay(1));
|
|
13772
|
-
throttleScroll$ = this.config$.pipe(map((x) => x?.throttle ??
|
|
13773
|
-
scrollDistance$ = this.config$.pipe(map((x) => x?.scrollDistance ??
|
|
13843
|
+
throttleScroll$ = this.config$.pipe(map((x) => x?.throttle ?? DEFAULT_DBX_LIST_THROTTLE_SCROLL), distinctUntilChanged(), shareReplay(1));
|
|
13844
|
+
scrollDistance$ = this.config$.pipe(map((x) => x?.scrollDistance ?? DEFAULT_DBX_LIST_SCROLL_DISTANCE), distinctUntilChanged(), shareReplay(1));
|
|
13774
13845
|
scrollLoadMoreTrigger$ = this.config$.pipe(switchMap((config) => {
|
|
13775
13846
|
const loadNextDirection = config?.invertedList ? 'up' : 'down';
|
|
13776
13847
|
return this._scrollTrigger.pipe(filter((x) => x === loadNextDirection));
|
|
@@ -13835,8 +13906,8 @@ class DbxListComponent {
|
|
|
13835
13906
|
}
|
|
13836
13907
|
return this.hideOnEmpty$.pipe(switchMap((hide) => (hide === false ? of(false) : this.isEmpty$)), distinctUntilChanged(), shareReplay(1));
|
|
13837
13908
|
}), distinctUntilChanged(), shareReplay(1));
|
|
13838
|
-
infiniteScrollDistanceSignal = toSignal(this.scrollDistance$, { initialValue:
|
|
13839
|
-
infiniteScrollThrottleSignal = toSignal(this.throttleScroll$, { initialValue:
|
|
13909
|
+
infiniteScrollDistanceSignal = toSignal(this.scrollDistance$, { initialValue: DEFAULT_DBX_LIST_SCROLL_DISTANCE });
|
|
13910
|
+
infiniteScrollThrottleSignal = toSignal(this.throttleScroll$, { initialValue: DEFAULT_DBX_LIST_THROTTLE_SCROLL });
|
|
13840
13911
|
hideContentSignal = toSignal(this.hideContent$);
|
|
13841
13912
|
injectedComponentConfigSignal = toSignal(this.injectedComponentConfig$);
|
|
13842
13913
|
isEmptyAndNotLoadingSignal = toSignal(this.isEmptyAndNotLoading$);
|
|
@@ -13847,17 +13918,18 @@ class DbxListComponent {
|
|
|
13847
13918
|
}
|
|
13848
13919
|
getScrollPositionRelativeToBottom() {
|
|
13849
13920
|
const element = this.nativeElementSignal();
|
|
13921
|
+
let result = 0;
|
|
13850
13922
|
if (element) {
|
|
13851
13923
|
try {
|
|
13852
13924
|
// At max scroll, scrollHeight = scrollTop + clientHeight;
|
|
13853
13925
|
const { scrollTop, scrollHeight, clientHeight } = element;
|
|
13854
|
-
|
|
13926
|
+
result = scrollHeight - (scrollTop + clientHeight);
|
|
13855
13927
|
}
|
|
13856
13928
|
catch {
|
|
13857
13929
|
/* ignored */
|
|
13858
13930
|
}
|
|
13859
13931
|
}
|
|
13860
|
-
return
|
|
13932
|
+
return result;
|
|
13861
13933
|
}
|
|
13862
13934
|
jumpToBottom() {
|
|
13863
13935
|
const element = this.nativeElementSignal();
|
|
@@ -13958,10 +14030,12 @@ class AbstractDbxListWrapperDirective {
|
|
|
13958
14030
|
selectionMode = input(...(ngDevMode ? [undefined, { debugName: "selectionMode" }] : /* istanbul ignore next */ []));
|
|
13959
14031
|
state = input(...(ngDevMode ? [undefined, { debugName: "state" }] : /* istanbul ignore next */ []));
|
|
13960
14032
|
selectionModeSignal = computed(() => {
|
|
13961
|
-
|
|
14033
|
+
const selectionMode = this.selectionMode();
|
|
14034
|
+
return this._selectionModeOverrideSignal() ?? selectionMode;
|
|
13962
14035
|
}, ...(ngDevMode ? [{ debugName: "selectionModeSignal" }] : /* istanbul ignore next */ []));
|
|
13963
14036
|
disabledSignal = computed(() => {
|
|
13964
|
-
|
|
14037
|
+
const disabled = this.disabled();
|
|
14038
|
+
return this._disabledOverrideSignal() ?? disabled;
|
|
13965
14039
|
}, ...(ngDevMode ? [{ debugName: "disabledSignal" }] : /* istanbul ignore next */ []));
|
|
13966
14040
|
currentState$ = combineLatest([this._stateOverride, toObservable(this.state)]).pipe(map(([stateOverride, state]) => stateOverride ?? state), maybeValueFromObservableOrValue(), shareReplay(1));
|
|
13967
14041
|
config$ = this._config.pipe(maybeValueFromObservableOrValue(), map((x) => (x ? this._buildListConfig(x) : undefined)), shareReplay(1));
|
|
@@ -14047,20 +14121,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
14047
14121
|
/**
|
|
14048
14122
|
* Angular {@link TrackByFunction} that tracks {@link UniqueModel} items by their `id` property.
|
|
14049
14123
|
*
|
|
14050
|
-
* @param index -
|
|
14051
|
-
* @param model -
|
|
14052
|
-
* @returns
|
|
14124
|
+
* @param index - The item's index in the iterable.
|
|
14125
|
+
* @param model - The model whose `id` is used as the tracking identity.
|
|
14126
|
+
* @returns The model's unique `id` value.
|
|
14053
14127
|
*/
|
|
14054
14128
|
const TRACK_BY_MODEL_ID = (index, model) => model.id;
|
|
14055
14129
|
/**
|
|
14056
14130
|
* Returns a {@link TrackByFunction} that tracks items by their unique `id` property.
|
|
14057
14131
|
*
|
|
14132
|
+
* @returns A TrackByFunction that uses the item's `id` for identity tracking.
|
|
14133
|
+
*
|
|
14058
14134
|
* @example
|
|
14059
14135
|
* ```ts
|
|
14060
14136
|
* readonly trackBy = trackByUniqueIdentifier<MyModel>();
|
|
14061
14137
|
* ```
|
|
14062
|
-
*
|
|
14063
|
-
* @returns a TrackByFunction that uses the item's `id` for identity tracking
|
|
14064
14138
|
*/
|
|
14065
14139
|
function trackByUniqueIdentifier() {
|
|
14066
14140
|
return TRACK_BY_MODEL_ID;
|
|
@@ -14068,20 +14142,20 @@ function trackByUniqueIdentifier() {
|
|
|
14068
14142
|
/**
|
|
14069
14143
|
* Angular {@link TrackByFunction} that tracks {@link ModelKeyRef} items by their `key` property.
|
|
14070
14144
|
*
|
|
14071
|
-
* @param index -
|
|
14072
|
-
* @param model -
|
|
14073
|
-
* @returns
|
|
14145
|
+
* @param index - The item's index in the iterable.
|
|
14146
|
+
* @param model - The model whose `key` is used as the tracking identity.
|
|
14147
|
+
* @returns The model's `key` value.
|
|
14074
14148
|
*/
|
|
14075
14149
|
const TRACK_BY_MODEL_KEY = (index, model) => model.key;
|
|
14076
14150
|
/**
|
|
14077
14151
|
* Returns a {@link TrackByFunction} that tracks items by their model `key` property.
|
|
14078
14152
|
*
|
|
14153
|
+
* @returns A TrackByFunction that uses the item's `key` for identity tracking.
|
|
14154
|
+
*
|
|
14079
14155
|
* @example
|
|
14080
14156
|
* ```ts
|
|
14081
14157
|
* readonly trackBy = trackByModelKeyRef<MyModelRef>();
|
|
14082
14158
|
* ```
|
|
14083
|
-
*
|
|
14084
|
-
* @returns a TrackByFunction that uses the item's `key` for identity tracking
|
|
14085
14159
|
*/
|
|
14086
14160
|
function trackByModelKeyRef() {
|
|
14087
14161
|
return TRACK_BY_MODEL_KEY;
|
|
@@ -14295,16 +14369,17 @@ class DbxListViewWrapper {
|
|
|
14295
14369
|
/**
|
|
14296
14370
|
* Registers a component as a {@link DbxListViewWrapper} provider for dependency injection.
|
|
14297
14371
|
*
|
|
14298
|
-
* @
|
|
14299
|
-
*
|
|
14300
|
-
*
|
|
14372
|
+
* @param sourceType - The component class to register as the DbxListViewWrapper provider.
|
|
14373
|
+
* @returns Array of Angular providers that wire up the component as a DbxListViewWrapper.
|
|
14374
|
+
*
|
|
14375
|
+
* @Component ({
|
|
14301
14376
|
* providers: provideDbxListViewWrapper(MyListWrapperComponent)
|
|
14302
14377
|
* })
|
|
14303
14378
|
* export class MyListWrapperComponent extends DbxListViewWrapper<MyItem> { ... }
|
|
14304
14379
|
* ```
|
|
14305
14380
|
*
|
|
14306
|
-
* @
|
|
14307
|
-
*
|
|
14381
|
+
* @example
|
|
14382
|
+
* ```ts
|
|
14308
14383
|
*/
|
|
14309
14384
|
function provideDbxListViewWrapper(sourceType) {
|
|
14310
14385
|
return [
|
|
@@ -14422,15 +14497,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
14422
14497
|
*/
|
|
14423
14498
|
class DbxSectionPageComponent extends DbxSectionHeaderComponent {
|
|
14424
14499
|
scroll = input('all', ...(ngDevMode ? [{ debugName: "scroll" }] : /* istanbul ignore next */ []));
|
|
14425
|
-
|
|
14500
|
+
classConfigSignal = computed(() => {
|
|
14426
14501
|
return `dbx-section-page-scroll-${this.scroll()}`;
|
|
14427
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
14502
|
+
}, ...(ngDevMode ? [{ debugName: "classConfigSignal" }] : /* istanbul ignore next */ []));
|
|
14428
14503
|
constructor() {
|
|
14429
14504
|
super();
|
|
14430
14505
|
this.hintInlineDefault.set(true);
|
|
14431
14506
|
}
|
|
14432
14507
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxSectionPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
14433
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.11", type: DbxSectionPageComponent, isStandalone: true, selector: "dbx-section-page", inputs: { scroll: { classPropertyName: "scroll", publicName: "scroll", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "
|
|
14508
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.11", type: DbxSectionPageComponent, isStandalone: true, selector: "dbx-section-page", inputs: { scroll: { classPropertyName: "scroll", publicName: "scroll", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "classConfigSignal()" }, classAttribute: "d-block dbx-content-page dbx-section-page" }, usesInheritance: true, ngImport: i0, template: `
|
|
14434
14509
|
<div class="dbx-section-header" [h]="headerConfigSignal().h ?? 2" [header]="headerConfigSignal().header" [onlyHeader]="headerConfigSignal().onlyHeader" [icon]="headerConfigSignal().icon" [hint]="headerConfigSignal().hint" [hintInline]="headerConfigSignal().hintInline">
|
|
14435
14510
|
<ng-content select="[sectionHeader]"></ng-content>
|
|
14436
14511
|
</div>
|
|
@@ -14453,7 +14528,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
14453
14528
|
`,
|
|
14454
14529
|
host: {
|
|
14455
14530
|
class: 'd-block dbx-content-page dbx-section-page',
|
|
14456
|
-
'[class]': '
|
|
14531
|
+
'[class]': 'classConfigSignal()'
|
|
14457
14532
|
},
|
|
14458
14533
|
standalone: true,
|
|
14459
14534
|
imports: [DbxSectionHeaderComponent],
|
|
@@ -14482,15 +14557,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
14482
14557
|
/**
|
|
14483
14558
|
* Injection token for providing the default {@link DbxStyleConfig} to {@link DbxStyleService}.
|
|
14484
14559
|
*/
|
|
14485
|
-
const
|
|
14560
|
+
const DEFAULT_DBX_STYLE_CONFIG_TOKEN = new InjectionToken('DbxStyleServiceDefaultConfig');
|
|
14486
14561
|
/**
|
|
14487
14562
|
* Manages application-wide style classes and suffix modes (e.g., dark mode).
|
|
14488
14563
|
*
|
|
14489
14564
|
* Consumers can set a default style config, override it with an observable config,
|
|
14490
14565
|
* and toggle style suffixes to switch between style variants at runtime.
|
|
14566
|
+
*
|
|
14567
|
+
* Provided via `provideDbxStyleService()` from `style.providers`.
|
|
14568
|
+
*
|
|
14569
|
+
* @dbxWebComponent
|
|
14570
|
+
* @dbxWebSlug style-service
|
|
14571
|
+
* @dbxWebCategory layout
|
|
14572
|
+
* @dbxWebRelated style, set-style, style-body, color-service
|
|
14573
|
+
*
|
|
14574
|
+
* @example
|
|
14575
|
+
* ```ts
|
|
14576
|
+
* const styleService = inject(DbxStyleService);
|
|
14577
|
+
* styleService.toggleDarkSuffix(); // toggle dark mode on/off
|
|
14578
|
+
* styleService.setStyleClassSuffix('dark'); // force dark mode
|
|
14579
|
+
* ```
|
|
14491
14580
|
*/
|
|
14492
14581
|
class DbxStyleService {
|
|
14493
|
-
_defaultConfig = new BehaviorSubject(inject(
|
|
14582
|
+
_defaultConfig = new BehaviorSubject(inject(DEFAULT_DBX_STYLE_CONFIG_TOKEN));
|
|
14494
14583
|
_config = new BehaviorSubject(undefined);
|
|
14495
14584
|
_styleClassSuffix = new BehaviorSubject(undefined);
|
|
14496
14585
|
config$ = this._config.pipe(switchMap((x) => x ?? this._defaultConfig), filterMaybe(), distinctUntilChanged(), shareReplay(1));
|
|
@@ -14499,8 +14588,8 @@ class DbxStyleService {
|
|
|
14499
14588
|
/**
|
|
14500
14589
|
* Returns the style class given the input configuration.
|
|
14501
14590
|
*
|
|
14502
|
-
* @param configObs Observable containing the configuration to use.
|
|
14503
|
-
* @returns DbxStyleClass
|
|
14591
|
+
* @param configObs - Observable containing the configuration to use.
|
|
14592
|
+
* @returns DbxStyleClass.
|
|
14504
14593
|
*/
|
|
14505
14594
|
getStyleClassWithConfig(configObs) {
|
|
14506
14595
|
return combineLatest([configObs, this.styleClassSuffix$]).pipe(map(([config, suffix]) => {
|
|
@@ -14514,7 +14603,7 @@ class DbxStyleService {
|
|
|
14514
14603
|
/**
|
|
14515
14604
|
* Toggles the dark suffix on/off for the service.
|
|
14516
14605
|
*
|
|
14517
|
-
* @param toggle Whether to toggle the suffix on or off
|
|
14606
|
+
* @param toggle - Whether to toggle the suffix on or off.
|
|
14518
14607
|
*/
|
|
14519
14608
|
toggleDarkSuffix(toggle) {
|
|
14520
14609
|
this.toggleSuffix(DBX_DARK_STYLE_CLASS_SUFFIX, toggle);
|
|
@@ -14522,13 +14611,13 @@ class DbxStyleService {
|
|
|
14522
14611
|
/**
|
|
14523
14612
|
* Toggles the arbitrary suffix on/off for the service.
|
|
14524
14613
|
*
|
|
14525
|
-
* @param suffix The suffix to toggle
|
|
14526
|
-
* @param toggle Whether to toggle the suffix on or off
|
|
14614
|
+
* @param suffix - The suffix to toggle.
|
|
14615
|
+
* @param toggle - Whether to toggle the suffix on or off.
|
|
14527
14616
|
*/
|
|
14528
14617
|
toggleSuffix(suffix, toggle) {
|
|
14529
14618
|
// clean the suffix
|
|
14530
14619
|
suffix = dbxStyleClassCleanSuffix(suffix);
|
|
14531
|
-
const toggleValue = toggle
|
|
14620
|
+
const toggleValue = toggle == null ? this.currentStyleClassSuffix !== suffix : toggle;
|
|
14532
14621
|
let suffixValue = undefined;
|
|
14533
14622
|
if (toggleValue) {
|
|
14534
14623
|
suffixValue = suffix;
|
|
@@ -14541,7 +14630,7 @@ class DbxStyleService {
|
|
|
14541
14630
|
/**
|
|
14542
14631
|
* Returns the current style class suffix, if one is set.
|
|
14543
14632
|
*
|
|
14544
|
-
* @returns
|
|
14633
|
+
* @returns The currently active style class suffix, or undefined if none is set.
|
|
14545
14634
|
*/
|
|
14546
14635
|
get currentStyleClassSuffix() {
|
|
14547
14636
|
return this._styleClassSuffix.value;
|
|
@@ -14549,7 +14638,7 @@ class DbxStyleService {
|
|
|
14549
14638
|
/**
|
|
14550
14639
|
* Directly sets the active style class suffix, or clears it if null/undefined.
|
|
14551
14640
|
*
|
|
14552
|
-
* @param suffix -
|
|
14641
|
+
* @param suffix - The suffix to activate, or nullish to clear the current suffix.
|
|
14553
14642
|
*/
|
|
14554
14643
|
setStyleClassSuffix(suffix) {
|
|
14555
14644
|
this._styleClassSuffix.next(suffix ? dbxStyleClassCleanSuffix(suffix) : undefined);
|
|
@@ -14557,7 +14646,7 @@ class DbxStyleService {
|
|
|
14557
14646
|
/**
|
|
14558
14647
|
* Updates the default style configuration used when no override config is set.
|
|
14559
14648
|
*
|
|
14560
|
-
* @param defaultConfig -
|
|
14649
|
+
* @param defaultConfig - The style configuration to use as the new default.
|
|
14561
14650
|
*/
|
|
14562
14651
|
setDefaultConfig(defaultConfig) {
|
|
14563
14652
|
this._defaultConfig.next(defaultConfig);
|
|
@@ -14565,7 +14654,7 @@ class DbxStyleService {
|
|
|
14565
14654
|
/**
|
|
14566
14655
|
* Overrides the active style configuration with the given value or observable.
|
|
14567
14656
|
*
|
|
14568
|
-
* @param config -
|
|
14657
|
+
* @param config - A style configuration value or observable to set as the active override.
|
|
14569
14658
|
*/
|
|
14570
14659
|
setConfig(config) {
|
|
14571
14660
|
this._config.next(asObservable(config));
|
|
@@ -14573,7 +14662,7 @@ class DbxStyleService {
|
|
|
14573
14662
|
/**
|
|
14574
14663
|
* Clears the active config override if it matches the given reference, reverting to the default config.
|
|
14575
14664
|
*
|
|
14576
|
-
* @param config -
|
|
14665
|
+
* @param config - The config reference to compare against the current override.
|
|
14577
14666
|
*/
|
|
14578
14667
|
unsetConfig(config) {
|
|
14579
14668
|
if (this._config.value === config) {
|
|
@@ -14598,6 +14687,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
14598
14687
|
* Accepts a {@link DbxStyleName} and optional suffixes, then applies the computed style class
|
|
14599
14688
|
* depending on the configured {@link DbxSetStyleMode}.
|
|
14600
14689
|
*
|
|
14690
|
+
* @dbxWebComponent
|
|
14691
|
+
* @dbxWebSlug set-style
|
|
14692
|
+
* @dbxWebCategory layout
|
|
14693
|
+
* @dbxWebRelated style, style-service, style-body
|
|
14694
|
+
* @dbxWebMinimalExample ```html
|
|
14695
|
+
* <div [dbxSetStyle]="'my-app'"></div>
|
|
14696
|
+
* ```
|
|
14697
|
+
*
|
|
14601
14698
|
* @example
|
|
14602
14699
|
* ```html
|
|
14603
14700
|
* <div [dbxSetStyle]="'my-app'" [setStyleMode]="'both'" [suffixes]="'dark'">
|
|
@@ -14671,6 +14768,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
14671
14768
|
*
|
|
14672
14769
|
* Use this directive to propagate the active style class onto any element or component.
|
|
14673
14770
|
*
|
|
14771
|
+
* @dbxWebComponent
|
|
14772
|
+
* @dbxWebSlug style
|
|
14773
|
+
* @dbxWebCategory layout
|
|
14774
|
+
* @dbxWebRelated style-service, style-body, set-style
|
|
14775
|
+
* @dbxWebMinimalExample ```html
|
|
14776
|
+
* <div dbxStyle></div>
|
|
14777
|
+
* ```
|
|
14778
|
+
*
|
|
14674
14779
|
* @example
|
|
14675
14780
|
* ```html
|
|
14676
14781
|
* <div dbxStyle>Styled content</div>
|
|
@@ -14703,6 +14808,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
14703
14808
|
*
|
|
14704
14809
|
* Place this directive on a root-level element so that the body tag receives the active style class.
|
|
14705
14810
|
*
|
|
14811
|
+
* @dbxWebComponent
|
|
14812
|
+
* @dbxWebSlug style-body
|
|
14813
|
+
* @dbxWebCategory layout
|
|
14814
|
+
* @dbxWebRelated style, style-service, set-style
|
|
14815
|
+
* @dbxWebMinimalExample ```html
|
|
14816
|
+
* <div dbxStyleBody></div>
|
|
14817
|
+
* ```
|
|
14818
|
+
*
|
|
14706
14819
|
* @example
|
|
14707
14820
|
* ```html
|
|
14708
14821
|
* <div dbxStyleBody></div>
|
|
@@ -14756,6 +14869,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
14756
14869
|
/**
|
|
14757
14870
|
* Provides environment-level providers for {@link DbxStyleService}, {@link DbxColorService}, and their default configurations.
|
|
14758
14871
|
*
|
|
14872
|
+
* @param config - Configuration specifying the default style and optional color templates.
|
|
14873
|
+
* @returns Environment providers for the style and color services and their default config tokens.
|
|
14874
|
+
*
|
|
14759
14875
|
* @example
|
|
14760
14876
|
* ```ts
|
|
14761
14877
|
* provideDbxStyleService({
|
|
@@ -14766,8 +14882,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
14766
14882
|
* });
|
|
14767
14883
|
* ```
|
|
14768
14884
|
*
|
|
14769
|
-
* @param config - configuration specifying the default style and optional color templates
|
|
14770
|
-
* @returns environment providers for the style and color services and their default config tokens
|
|
14771
14885
|
* @__NO_SIDE_EFFECTS__
|
|
14772
14886
|
*/
|
|
14773
14887
|
function provideDbxStyleService(config) {
|
|
@@ -14775,7 +14889,7 @@ function provideDbxStyleService(config) {
|
|
|
14775
14889
|
const providers = [
|
|
14776
14890
|
// config
|
|
14777
14891
|
{
|
|
14778
|
-
provide:
|
|
14892
|
+
provide: DEFAULT_DBX_STYLE_CONFIG_TOKEN,
|
|
14779
14893
|
useValue: dbxStyleConfig
|
|
14780
14894
|
},
|
|
14781
14895
|
// services
|
|
@@ -15170,12 +15284,30 @@ class DbxStepBlockComponent {
|
|
|
15170
15284
|
hint = input(...(ngDevMode ? [undefined, { debugName: "hint" }] : /* istanbul ignore next */ []));
|
|
15171
15285
|
color = input(...(ngDevMode ? [undefined, { debugName: "color" }] : /* istanbul ignore next */ []));
|
|
15172
15286
|
center = input(...(ngDevMode ? [undefined, { debugName: "center" }] : /* istanbul ignore next */ []));
|
|
15173
|
-
stepSignal = computed(() =>
|
|
15174
|
-
|
|
15175
|
-
|
|
15176
|
-
|
|
15177
|
-
|
|
15178
|
-
|
|
15287
|
+
stepSignal = computed(() => {
|
|
15288
|
+
const config = this.config();
|
|
15289
|
+
return this.step() ?? config?.step ?? 1;
|
|
15290
|
+
}, ...(ngDevMode ? [{ debugName: "stepSignal" }] : /* istanbul ignore next */ []));
|
|
15291
|
+
iconSignal = computed(() => {
|
|
15292
|
+
const config = this.config();
|
|
15293
|
+
return this.icon() ?? config?.icon;
|
|
15294
|
+
}, ...(ngDevMode ? [{ debugName: "iconSignal" }] : /* istanbul ignore next */ []));
|
|
15295
|
+
headerSignal = computed(() => {
|
|
15296
|
+
const config = this.config();
|
|
15297
|
+
return this.header() ?? config?.header;
|
|
15298
|
+
}, ...(ngDevMode ? [{ debugName: "headerSignal" }] : /* istanbul ignore next */ []));
|
|
15299
|
+
hintSignal = computed(() => {
|
|
15300
|
+
const config = this.config();
|
|
15301
|
+
return this.hint() ?? config?.hint;
|
|
15302
|
+
}, ...(ngDevMode ? [{ debugName: "hintSignal" }] : /* istanbul ignore next */ []));
|
|
15303
|
+
colorSignal = computed(() => {
|
|
15304
|
+
const config = this.config();
|
|
15305
|
+
return this.color() ?? config?.color ?? 'primary';
|
|
15306
|
+
}, ...(ngDevMode ? [{ debugName: "colorSignal" }] : /* istanbul ignore next */ []));
|
|
15307
|
+
centerSignal = computed(() => {
|
|
15308
|
+
const config = this.config();
|
|
15309
|
+
return this.center() ?? config?.center ?? false;
|
|
15310
|
+
}, ...(ngDevMode ? [{ debugName: "centerSignal" }] : /* istanbul ignore next */ []));
|
|
15179
15311
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxStepBlockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
15180
15312
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxStepBlockComponent, isStandalone: true, selector: "dbx-step-block", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, center: { classPropertyName: "center", publicName: "center", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.dbx-step-block-center": "centerSignal()" }, classAttribute: "dbx-step-block d-block" }, ngImport: i0, template: `
|
|
15181
15313
|
<dbx-icon-tile class="dbx-step-block-badge" [icon]="iconSignal()" [dbxColor]="colorSignal()">
|
|
@@ -15291,7 +15423,7 @@ class DbxLinkifyService {
|
|
|
15291
15423
|
/**
|
|
15292
15424
|
* Registers the default entry.
|
|
15293
15425
|
*
|
|
15294
|
-
* @param entry Entry without the type field
|
|
15426
|
+
* @param entry - Entry without the type field.
|
|
15295
15427
|
*/
|
|
15296
15428
|
registerDefaultEntry(entry) {
|
|
15297
15429
|
this._entries.set(DEFAULT_DBX_LINKIFY_STRING_TYPE, {
|
|
@@ -15302,8 +15434,8 @@ class DbxLinkifyService {
|
|
|
15302
15434
|
/**
|
|
15303
15435
|
* Registers one or more entries by type.
|
|
15304
15436
|
*
|
|
15305
|
-
* @param entries One or more entries to register
|
|
15306
|
-
* @param override Whether to override existing entries (default: true)
|
|
15437
|
+
* @param entries - One or more entries to register.
|
|
15438
|
+
* @param override - Whether to override existing entries (default: true)
|
|
15307
15439
|
*/
|
|
15308
15440
|
register(entries, override = true) {
|
|
15309
15441
|
useIterableOrValue(entries, (entry) => {
|
|
@@ -15316,7 +15448,7 @@ class DbxLinkifyService {
|
|
|
15316
15448
|
/**
|
|
15317
15449
|
* Returns the default entry.
|
|
15318
15450
|
*
|
|
15319
|
-
* @returns
|
|
15451
|
+
* @returns The default linkify service entry, or undefined if none is registered.
|
|
15320
15452
|
*/
|
|
15321
15453
|
getDefaultEntry() {
|
|
15322
15454
|
return this._entries.get(DEFAULT_DBX_LINKIFY_STRING_TYPE);
|
|
@@ -15324,8 +15456,8 @@ class DbxLinkifyService {
|
|
|
15324
15456
|
/**
|
|
15325
15457
|
* Returns the entry for the given type.
|
|
15326
15458
|
*
|
|
15327
|
-
* @param type -
|
|
15328
|
-
* @returns
|
|
15459
|
+
* @param type - The linkify string type to look up.
|
|
15460
|
+
* @returns The registered entry for the given type, or undefined if not found.
|
|
15329
15461
|
*/
|
|
15330
15462
|
getEntryRegisteredForType(type) {
|
|
15331
15463
|
return this._entries.get(type);
|
|
@@ -15333,8 +15465,8 @@ class DbxLinkifyService {
|
|
|
15333
15465
|
/**
|
|
15334
15466
|
* Returns the entry for the given type, or the default type if there is no entry registered or the input type is null/undefined.
|
|
15335
15467
|
*
|
|
15336
|
-
* @param type -
|
|
15337
|
-
* @returns
|
|
15468
|
+
* @param type - The linkify string type to look up, or nullish to retrieve the default entry.
|
|
15469
|
+
* @returns The matching entry, or the default entry if the type is not provided.
|
|
15338
15470
|
*/
|
|
15339
15471
|
getEntry(type) {
|
|
15340
15472
|
return type ? this._entries.get(type) : this.getDefaultEntry();
|
|
@@ -15405,6 +15537,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
15405
15537
|
/**
|
|
15406
15538
|
* Creates environment-level providers for configuring {@link DbxLinkifyService} with a custom factory.
|
|
15407
15539
|
*
|
|
15540
|
+
* @param config - Configuration containing the factory function for creating the linkify service config.
|
|
15541
|
+
* @returns Environment providers that register the DbxLinkifyServiceConfig.
|
|
15542
|
+
*
|
|
15408
15543
|
* @example
|
|
15409
15544
|
* ```ts
|
|
15410
15545
|
* provideDbxLinkify({
|
|
@@ -15414,9 +15549,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
15414
15549
|
* })
|
|
15415
15550
|
* });
|
|
15416
15551
|
* ```
|
|
15417
|
-
*
|
|
15418
|
-
* @param config - configuration containing the factory function for creating the linkify service config
|
|
15419
|
-
* @returns environment providers that register the DbxLinkifyServiceConfig
|
|
15420
15552
|
*/
|
|
15421
15553
|
function provideDbxLinkify(config) {
|
|
15422
15554
|
const { dbxLinkifyServiceConfigFactory } = config;
|
|
@@ -15432,7 +15564,7 @@ function provideDbxLinkify(config) {
|
|
|
15432
15564
|
/**
|
|
15433
15565
|
* Default background tone percentage for tonal chip coloring.
|
|
15434
15566
|
*/
|
|
15435
|
-
const
|
|
15567
|
+
const DEFAULT_DBX_CHIP_TONE = 18;
|
|
15436
15568
|
/**
|
|
15437
15569
|
* Renders a styled chip element with optional small, block, and color modes.
|
|
15438
15570
|
*
|
|
@@ -15467,12 +15599,15 @@ class DbxChipDirective {
|
|
|
15467
15599
|
*/
|
|
15468
15600
|
display = input(...(ngDevMode ? [undefined, { debugName: "display" }] : /* istanbul ignore next */ []));
|
|
15469
15601
|
/**
|
|
15470
|
-
* Background tone level for tonal appearance. Defaults to {@link
|
|
15602
|
+
* Background tone level for tonal appearance. Defaults to {@link DEFAULT_DBX_CHIP_TONE}.
|
|
15471
15603
|
*
|
|
15472
15604
|
* Set to `100` for fully opaque background.
|
|
15473
15605
|
*/
|
|
15474
15606
|
tone = input(...(ngDevMode ? [undefined, { debugName: "tone" }] : /* istanbul ignore next */ []));
|
|
15475
|
-
colorSignal = computed(() =>
|
|
15607
|
+
colorSignal = computed(() => {
|
|
15608
|
+
const display = this.display();
|
|
15609
|
+
return this.color() ?? display?.color;
|
|
15610
|
+
}, ...(ngDevMode ? [{ debugName: "colorSignal" }] : /* istanbul ignore next */ []));
|
|
15476
15611
|
_configSignal = computed(() => {
|
|
15477
15612
|
const value = this.colorSignal();
|
|
15478
15613
|
return isDbxColorConfig(value) ? (this._colorService?.expandColorConfig(value) ?? value) : undefined;
|
|
@@ -15485,7 +15620,11 @@ class DbxChipDirective {
|
|
|
15485
15620
|
* Inline `--dbx-color-current` value applied when a {@link DbxColorConfig} is bound. Resolves to `null` for named-color strings.
|
|
15486
15621
|
*/
|
|
15487
15622
|
colorStyleSignal = computed(() => this._configSignal()?.contrast ?? null, ...(ngDevMode ? [{ debugName: "colorStyleSignal" }] : /* istanbul ignore next */ []));
|
|
15488
|
-
toneSignal = computed(() =>
|
|
15623
|
+
toneSignal = computed(() => {
|
|
15624
|
+
const display = this.display();
|
|
15625
|
+
const _config = this._configSignal();
|
|
15626
|
+
return this.tone() ?? display?.tone ?? _config?.tone ?? DEFAULT_DBX_CHIP_TONE;
|
|
15627
|
+
}, ...(ngDevMode ? [{ debugName: "toneSignal" }] : /* istanbul ignore next */ []));
|
|
15489
15628
|
styleSignal = computed(() => {
|
|
15490
15629
|
const display = this.display();
|
|
15491
15630
|
const small = this.small() ?? display?.small;
|
|
@@ -15505,9 +15644,10 @@ class DbxChipDirective {
|
|
|
15505
15644
|
* Only applied when a color is set.
|
|
15506
15645
|
*/
|
|
15507
15646
|
bgToneStyleSignal = computed(() => {
|
|
15647
|
+
const tone = this.toneSignal();
|
|
15508
15648
|
const color = this.colorSignal();
|
|
15509
15649
|
if (color) {
|
|
15510
|
-
return `${
|
|
15650
|
+
return `${tone}%`;
|
|
15511
15651
|
}
|
|
15512
15652
|
return null;
|
|
15513
15653
|
}, ...(ngDevMode ? [{ debugName: "bgToneStyleSignal" }] : /* istanbul ignore next */ []));
|
|
@@ -15517,8 +15657,9 @@ class DbxChipDirective {
|
|
|
15517
15657
|
* an inline style binding (which would conflict with `[ngStyle]`).
|
|
15518
15658
|
*/
|
|
15519
15659
|
isTonalSignal = computed(() => {
|
|
15660
|
+
const tone = this.toneSignal();
|
|
15520
15661
|
const color = this.colorSignal();
|
|
15521
|
-
return Boolean(color) &&
|
|
15662
|
+
return Boolean(color) && tone < 100;
|
|
15522
15663
|
}, ...(ngDevMode ? [{ debugName: "isTonalSignal" }] : /* istanbul ignore next */ []));
|
|
15523
15664
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxChipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
15524
15665
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.11", type: DbxChipDirective, isStandalone: true, selector: "dbx-chip", inputs: { small: { classPropertyName: "small", publicName: "small", isSignal: true, isRequired: false, transformFunction: null }, block: { classPropertyName: "block", publicName: "block", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, display: { classPropertyName: "display", publicName: "display", isSignal: true, isRequired: false, transformFunction: null }, tone: { classPropertyName: "tone", publicName: "tone", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "styleSignal()", "class.dbx-color-tonal": "isTonalSignal()", "style.--dbx-color-bg-tone": "bgToneStyleSignal()", "style.--dbx-bg-color-current": "bgColorStyleSignal()", "style.--dbx-color-current": "colorStyleSignal()" }, classAttribute: "dbx-chip mat-standard-chip" }, ngImport: i0 });
|
|
@@ -15606,8 +15747,8 @@ class DbxTextChipsComponent {
|
|
|
15606
15747
|
/**
|
|
15607
15748
|
* Returns the themed background CSS class for a chip's color.
|
|
15608
15749
|
*
|
|
15609
|
-
* @param chip -
|
|
15610
|
-
* @returns
|
|
15750
|
+
* @param chip - The chip to get the color class for.
|
|
15751
|
+
* @returns The CSS class name for the chip's background color, or empty string if no color.
|
|
15611
15752
|
*/
|
|
15612
15753
|
chipColorClass(chip) {
|
|
15613
15754
|
return chip.color ? dbxColorBackground(chip.color) : '';
|
|
@@ -15615,8 +15756,8 @@ class DbxTextChipsComponent {
|
|
|
15615
15756
|
/**
|
|
15616
15757
|
* Returns the inline `--dbx-bg-color-current` value for a chip when its color is a {@link DbxColorConfig}; otherwise null.
|
|
15617
15758
|
*
|
|
15618
|
-
* @param chip -
|
|
15619
|
-
* @returns
|
|
15759
|
+
* @param chip - The chip.
|
|
15760
|
+
* @returns The background color CSS value, or null for named-color strings.
|
|
15620
15761
|
*/
|
|
15621
15762
|
chipBgColorStyle(chip) {
|
|
15622
15763
|
return this._expandedChipConfig(chip)?.color ?? null;
|
|
@@ -15624,8 +15765,8 @@ class DbxTextChipsComponent {
|
|
|
15624
15765
|
/**
|
|
15625
15766
|
* Returns the inline `--dbx-color-current` value for a chip when its color is a {@link DbxColorConfig}; otherwise null.
|
|
15626
15767
|
*
|
|
15627
|
-
* @param chip -
|
|
15628
|
-
* @returns
|
|
15768
|
+
* @param chip - The chip.
|
|
15769
|
+
* @returns The contrast color CSS value, or null for named-color strings.
|
|
15629
15770
|
*/
|
|
15630
15771
|
chipColorStyle(chip) {
|
|
15631
15772
|
return this._expandedChipConfig(chip)?.contrast ?? null;
|
|
@@ -15687,7 +15828,7 @@ class DbxNumberWithLimitComponent {
|
|
|
15687
15828
|
}, ...(ngDevMode ? [{ debugName: "valueSignal" }] : /* istanbul ignore next */ []));
|
|
15688
15829
|
limitSignal = computed(() => {
|
|
15689
15830
|
const number = this.number();
|
|
15690
|
-
return number?.limit
|
|
15831
|
+
return number?.limit == null ? undefined : number?.formatNumber ? number.formatNumber(number.limit) : number?.limit;
|
|
15691
15832
|
}, ...(ngDevMode ? [{ debugName: "limitSignal" }] : /* istanbul ignore next */ []));
|
|
15692
15833
|
hasLimitSignal = computed(() => {
|
|
15693
15834
|
return this.number()?.limit != null;
|
|
@@ -15916,8 +16057,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
15916
16057
|
/**
|
|
15917
16058
|
* Returns the appropriate Material icon name for a zip entry tree node: "folder" for directories, "note" for files with a known MIME type, or "question_mark" for unknown files.
|
|
15918
16059
|
*
|
|
15919
|
-
* @param entry - The zip entry tree node to determine the icon for
|
|
15920
|
-
* @returns The Material icon name: "folder", "note", or "question_mark"
|
|
16060
|
+
* @param entry - The zip entry tree node to determine the icon for.
|
|
16061
|
+
* @returns The Material icon name: "folder", "note", or "question_mark".
|
|
15921
16062
|
*
|
|
15922
16063
|
* @example
|
|
15923
16064
|
* ```typescript
|
|
@@ -16068,11 +16209,11 @@ class DbxZipBlobPreviewComponent {
|
|
|
16068
16209
|
* If not defined, then the file cannot be downloaded directly.
|
|
16069
16210
|
*/
|
|
16070
16211
|
downloadFileName = input(...(ngDevMode ? [undefined, { debugName: "downloadFileName" }] : /* istanbul ignore next */ []));
|
|
16071
|
-
|
|
16072
|
-
|
|
16212
|
+
hasBlobSignal = computed(() => !!this.blob(), ...(ngDevMode ? [{ debugName: "hasBlobSignal" }] : /* istanbul ignore next */ []));
|
|
16213
|
+
zipReaderSignal = computed(() => {
|
|
16073
16214
|
const blob = this.blob();
|
|
16074
16215
|
return blob ? new ZipReader(new BlobReader(blob)) : undefined;
|
|
16075
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
16216
|
+
}, ...(ngDevMode ? [{ debugName: "zipReaderSignal" }] : /* istanbul ignore next */ []));
|
|
16076
16217
|
downloadZipFileBlobButtonConfigSignal = computed(() => {
|
|
16077
16218
|
const blob = this.blob();
|
|
16078
16219
|
const fileName = this.downloadFileName();
|
|
@@ -16094,7 +16235,7 @@ class DbxZipBlobPreviewComponent {
|
|
|
16094
16235
|
}
|
|
16095
16236
|
return result;
|
|
16096
16237
|
}, ...(ngDevMode ? [{ debugName: "downloadZipFileBlobButtonConfigSignal" }] : /* istanbul ignore next */ []));
|
|
16097
|
-
zipReader$ = toObservable(this.
|
|
16238
|
+
zipReader$ = toObservable(this.zipReaderSignal);
|
|
16098
16239
|
allEntriesLoadingState$ = loadingStateFromObs(this.zipReader$.pipe(switchMap((x) => (x ? x.getEntries() : of([])))));
|
|
16099
16240
|
allEntries$ = this.allEntriesLoadingState$.pipe(valueFromFinishedLoadingState(), distinctUntilChanged(), shareReplay(1));
|
|
16100
16241
|
allEntriesRoot$ = this.allEntries$.pipe(map((x) => dbxZipBlobPreviewEntryTreeFromEntries(x)), shareReplay(1));
|
|
@@ -16118,15 +16259,15 @@ class DbxZipBlobPreviewComponent {
|
|
|
16118
16259
|
return a.sort - b.sort;
|
|
16119
16260
|
}
|
|
16120
16261
|
};
|
|
16121
|
-
|
|
16262
|
+
modeSignal = computed(() => {
|
|
16122
16263
|
const selectedNode = this.selectedNodeSignal();
|
|
16123
16264
|
let mode = 'view_directory';
|
|
16124
16265
|
if (selectedNode && !selectedNode.value.value.directory) {
|
|
16125
16266
|
mode = 'view_entry';
|
|
16126
16267
|
}
|
|
16127
16268
|
return mode;
|
|
16128
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
16129
|
-
|
|
16269
|
+
}, ...(ngDevMode ? [{ debugName: "modeSignal" }] : /* istanbul ignore next */ []));
|
|
16270
|
+
listEntriesSignal = computed(() => {
|
|
16130
16271
|
const allEntries = this.allEntriesRootSignal();
|
|
16131
16272
|
const selectedNode = this.selectedNodeSignal();
|
|
16132
16273
|
let entries;
|
|
@@ -16142,8 +16283,8 @@ class DbxZipBlobPreviewComponent {
|
|
|
16142
16283
|
entries = allEntries?.children;
|
|
16143
16284
|
}
|
|
16144
16285
|
return entries ?? [];
|
|
16145
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
16146
|
-
listEntries$ = toObservable(this.
|
|
16286
|
+
}, ...(ngDevMode ? [{ debugName: "listEntriesSignal" }] : /* istanbul ignore next */ []));
|
|
16287
|
+
listEntries$ = toObservable(this.listEntriesSignal);
|
|
16147
16288
|
listEntriesState$ = loadingStateFromObs(this.listEntries$);
|
|
16148
16289
|
selectedNodeIconSignal = computed(() => {
|
|
16149
16290
|
const selectedNode = this.selectedNodeSignal();
|
|
@@ -16188,11 +16329,11 @@ class DbxZipBlobPreviewComponent {
|
|
|
16188
16329
|
this.selectedNodeSignal.set(selectedNode?.parent);
|
|
16189
16330
|
};
|
|
16190
16331
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxZipBlobPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
16191
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxZipBlobPreviewComponent, isStandalone: true, selector: "dbx-zip-blob-preview", inputs: { blob: { classPropertyName: "blob", publicName: "blob", isSignal: true, isRequired: false, transformFunction: null }, downloadFileName: { classPropertyName: "downloadFileName", publicName: "downloadFileName", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<dbx-loading [context]=\"context\">\n <div class=\"dbx-flex-bar dbx-zip-blob-preview-toolbar\">\n <dbx-button [disabled]=\"!selectedNodeSignal()\" icon=\"arrow_upward\" text=\"Back\" (buttonClick)=\"backClicked()\"></dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <dbx-button [disabled]=\"!selectedNodeSignal()\" icon=\"home\" text=\"Home\" (buttonClick)=\"homeClicked()\"></dbx-button>\n <dbx-spacer></dbx-spacer>\n @if (downloadZipFileBlobButtonConfigSignal()) {\n <dbx-download-blob-button [config]=\"downloadZipFileBlobButtonConfigSignal()\"></dbx-download-blob-button>\n }\n </div>\n <dbx-bar-header class=\"dbx-zip-blob-preview-header\" [icon]=\"selectedNodeIconSignal()\" [text]=\"selectedNodePathSignal()\"></dbx-bar-header>\n <div class=\"dbx-zip-blob-preview-content\">\n @switch (
|
|
16332
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxZipBlobPreviewComponent, isStandalone: true, selector: "dbx-zip-blob-preview", inputs: { blob: { classPropertyName: "blob", publicName: "blob", isSignal: true, isRequired: false, transformFunction: null }, downloadFileName: { classPropertyName: "downloadFileName", publicName: "downloadFileName", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<dbx-loading [context]=\"context\">\n <div class=\"dbx-flex-bar dbx-zip-blob-preview-toolbar\">\n <dbx-button [disabled]=\"!selectedNodeSignal()\" icon=\"arrow_upward\" text=\"Back\" (buttonClick)=\"backClicked()\"></dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <dbx-button [disabled]=\"!selectedNodeSignal()\" icon=\"home\" text=\"Home\" (buttonClick)=\"homeClicked()\"></dbx-button>\n <dbx-spacer></dbx-spacer>\n @if (downloadZipFileBlobButtonConfigSignal()) {\n <dbx-download-blob-button [config]=\"downloadZipFileBlobButtonConfigSignal()\"></dbx-download-blob-button>\n }\n </div>\n <dbx-bar-header class=\"dbx-zip-blob-preview-header\" [icon]=\"selectedNodeIconSignal()\" [text]=\"selectedNodePathSignal()\"></dbx-bar-header>\n <div class=\"dbx-zip-blob-preview-content\">\n @switch (modeSignal()) {\n @case ('view_directory') {\n <dbx-zip-preview-file-entry-list [state]=\"listEntriesState$\" [dbxListTitleGroup]=\"listTitleGroupDelegate\" [dbxListItemModifier] [dbxListItemAnchorModifier]=\"makeEntryAnchor\"></dbx-zip-preview-file-entry-list>\n }\n @case ('view_entry') {\n <dbx-embed class=\"dbx-zip-blob-preview-content-embed\" [blob]=\"selectedFileEntryBlobSignal()\"></dbx-embed>\n }\n }\n </div>\n</dbx-loading>\n", dependencies: [{ kind: "ngmodule", type: MatToolbarModule }, { kind: "directive", type: DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "component", type: DbxButtonComponent, selector: "dbx-button", inputs: ["bar", "type", "buttonStyle", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor", "basic", "tonal", "raised", "stroked", "flat", "iconOnly", "fab", "customContent", "allowClickPropagation", "mode"] }, { kind: "component", type: DbxBarHeaderComponent, selector: "dbx-bar-header", inputs: ["text", "icon", "color"] }, { kind: "directive", type: DbxListTitleGroupDirective, selector: "[dbxListTitleGroup]", inputs: ["dbxListTitleGroup"] }, { kind: "component", type: DbxZipPreviewEntryListComponent, selector: "dbx-zip-preview-file-entry-list" }, { kind: "component", type: DbxEmbedComponent, selector: "dbx-embed", inputs: ["embedElement", "sanitizeUrl", "srcUrl", "type", "blob"], outputs: ["embedElementChange", "sanitizeUrlChange", "srcUrlChange", "typeChange", "blobChange"] }, { kind: "component", type: DbxLoadingComponent, selector: "dbx-loading", inputs: ["padding", "show", "text", "mode", "color", "diameter", "linear", "loading", "error", "context"] }, { kind: "directive", type: DbxValueListItemModifierDirective, selector: "dbxListItemModifier,[dbxListItemModifier]", inputs: ["dbxListItemModifier"] }, { kind: "directive", type: DbxListItemAnchorModifierDirective, selector: "[dbxListItemAnchorModifier]", inputs: ["dbxListItemAnchorModifier"] }, { kind: "component", type: DbxDownloadBlobButtonComponent, selector: "dbx-download-blob-button", inputs: ["config"] }, { kind: "directive", type: DbxSpacerDirective, selector: "dbx-spacer, [dbxSpacer]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
16192
16333
|
}
|
|
16193
16334
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxZipBlobPreviewComponent, decorators: [{
|
|
16194
16335
|
type: Component,
|
|
16195
|
-
args: [{ selector: 'dbx-zip-blob-preview', standalone: true, imports: [MatToolbarModule, DbxButtonSpacerDirective, DbxButtonComponent, DbxBarHeaderComponent, DbxListTitleGroupDirective, DbxZipPreviewEntryListComponent, DbxEmbedComponent, DbxLoadingComponent, DbxValueListItemModifierDirective, DbxListItemAnchorModifierDirective, DbxListTitleGroupDirective, DbxDownloadBlobButtonComponent, DbxSpacerDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<dbx-loading [context]=\"context\">\n <div class=\"dbx-flex-bar dbx-zip-blob-preview-toolbar\">\n <dbx-button [disabled]=\"!selectedNodeSignal()\" icon=\"arrow_upward\" text=\"Back\" (buttonClick)=\"backClicked()\"></dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <dbx-button [disabled]=\"!selectedNodeSignal()\" icon=\"home\" text=\"Home\" (buttonClick)=\"homeClicked()\"></dbx-button>\n <dbx-spacer></dbx-spacer>\n @if (downloadZipFileBlobButtonConfigSignal()) {\n <dbx-download-blob-button [config]=\"downloadZipFileBlobButtonConfigSignal()\"></dbx-download-blob-button>\n }\n </div>\n <dbx-bar-header class=\"dbx-zip-blob-preview-header\" [icon]=\"selectedNodeIconSignal()\" [text]=\"selectedNodePathSignal()\"></dbx-bar-header>\n <div class=\"dbx-zip-blob-preview-content\">\n @switch (
|
|
16336
|
+
args: [{ selector: 'dbx-zip-blob-preview', standalone: true, imports: [MatToolbarModule, DbxButtonSpacerDirective, DbxButtonComponent, DbxBarHeaderComponent, DbxListTitleGroupDirective, DbxZipPreviewEntryListComponent, DbxEmbedComponent, DbxLoadingComponent, DbxValueListItemModifierDirective, DbxListItemAnchorModifierDirective, DbxListTitleGroupDirective, DbxDownloadBlobButtonComponent, DbxSpacerDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<dbx-loading [context]=\"context\">\n <div class=\"dbx-flex-bar dbx-zip-blob-preview-toolbar\">\n <dbx-button [disabled]=\"!selectedNodeSignal()\" icon=\"arrow_upward\" text=\"Back\" (buttonClick)=\"backClicked()\"></dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <dbx-button [disabled]=\"!selectedNodeSignal()\" icon=\"home\" text=\"Home\" (buttonClick)=\"homeClicked()\"></dbx-button>\n <dbx-spacer></dbx-spacer>\n @if (downloadZipFileBlobButtonConfigSignal()) {\n <dbx-download-blob-button [config]=\"downloadZipFileBlobButtonConfigSignal()\"></dbx-download-blob-button>\n }\n </div>\n <dbx-bar-header class=\"dbx-zip-blob-preview-header\" [icon]=\"selectedNodeIconSignal()\" [text]=\"selectedNodePathSignal()\"></dbx-bar-header>\n <div class=\"dbx-zip-blob-preview-content\">\n @switch (modeSignal()) {\n @case ('view_directory') {\n <dbx-zip-preview-file-entry-list [state]=\"listEntriesState$\" [dbxListTitleGroup]=\"listTitleGroupDelegate\" [dbxListItemModifier] [dbxListItemAnchorModifier]=\"makeEntryAnchor\"></dbx-zip-preview-file-entry-list>\n }\n @case ('view_entry') {\n <dbx-embed class=\"dbx-zip-blob-preview-content-embed\" [blob]=\"selectedFileEntryBlobSignal()\"></dbx-embed>\n }\n }\n </div>\n</dbx-loading>\n" }]
|
|
16196
16337
|
}], propDecorators: { blob: [{ type: i0.Input, args: [{ isSignal: true, alias: "blob", required: false }] }], downloadFileName: [{ type: i0.Input, args: [{ isSignal: true, alias: "downloadFileName", required: false }] }] } });
|
|
16197
16338
|
|
|
16198
16339
|
/**
|
|
@@ -16262,8 +16403,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
16262
16403
|
/**
|
|
16263
16404
|
* Opens a dialog with DbxZipPreviewComponent.
|
|
16264
16405
|
*
|
|
16265
|
-
* @param matDialog The MatDialog instance to use.
|
|
16266
|
-
* @param config The configuration for the dialog.
|
|
16406
|
+
* @param matDialog - The MatDialog instance to use.
|
|
16407
|
+
* @param config - The configuration for the dialog.
|
|
16267
16408
|
* @returns The MatDialogRef for the dialog.
|
|
16268
16409
|
*/
|
|
16269
16410
|
function openZipPreviewDialog(matDialog, config) {
|
|
@@ -16292,8 +16433,8 @@ function openZipPreviewDialog(matDialog, config) {
|
|
|
16292
16433
|
/**
|
|
16293
16434
|
* Preview component function preset that renders zip files using {@link DbxZipPreviewComponent}.
|
|
16294
16435
|
*
|
|
16295
|
-
* @param input - The preview input containing the source URL and MIME type of the zip file
|
|
16296
|
-
* @returns An injection component config that initializes a {@link DbxZipPreviewComponent} with the given source URL
|
|
16436
|
+
* @param input - The preview input containing the source URL and MIME type of the zip file.
|
|
16437
|
+
* @returns An injection component config that initializes a {@link DbxZipPreviewComponent} with the given source URL.
|
|
16297
16438
|
*/
|
|
16298
16439
|
const DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_COMPONENT_PRESET = (input) => {
|
|
16299
16440
|
const { srcUrl } = input;
|
|
@@ -16470,12 +16611,13 @@ class DbxWebPageTitleService {
|
|
|
16470
16611
|
*/
|
|
16471
16612
|
leafReference$ = this._references.pipe(switchMap((set) => {
|
|
16472
16613
|
const refs = [...set];
|
|
16473
|
-
|
|
16474
|
-
|
|
16475
|
-
|
|
16476
|
-
|
|
16477
|
-
|
|
16478
|
-
|
|
16614
|
+
const obs = refs.length === 0
|
|
16615
|
+
? of(undefined)
|
|
16616
|
+
: combineLatest(refs.map((ref) => ref.isLeaf$.pipe(map((isLeaf) => ({ ref, isLeaf }))))).pipe(map((items) => items
|
|
16617
|
+
.filter((x) => x.isLeaf)
|
|
16618
|
+
.map((x) => x.ref)
|
|
16619
|
+
.at(-1)));
|
|
16620
|
+
return obs;
|
|
16479
16621
|
}), distinctUntilChanged(), shareReplay(1));
|
|
16480
16622
|
/**
|
|
16481
16623
|
* The directive-supplied chain (root → leaf) for the active leaf. Empty when there is no active leaf. Excludes the service-level rootConfig (delivered separately to the delegate).
|
|
@@ -16590,9 +16732,9 @@ class DbxWebPageTitleInfoDirective {
|
|
|
16590
16732
|
});
|
|
16591
16733
|
}
|
|
16592
16734
|
/**
|
|
16593
|
-
* @internal Maintained by descendant directives to keep `isLeaf$` accurate.
|
|
16594
|
-
*
|
|
16595
16735
|
* @param child - The descendant directive to register as a child.
|
|
16736
|
+
*
|
|
16737
|
+
* @internal Maintained by descendant directives to keep `isLeaf$` accurate.
|
|
16596
16738
|
*/
|
|
16597
16739
|
_addChild(child) {
|
|
16598
16740
|
const next = new Set(this._children.value);
|
|
@@ -16600,9 +16742,9 @@ class DbxWebPageTitleInfoDirective {
|
|
|
16600
16742
|
this._children.next(next);
|
|
16601
16743
|
}
|
|
16602
16744
|
/**
|
|
16603
|
-
* @internal
|
|
16604
|
-
*
|
|
16605
16745
|
* @param child - The descendant directive to unregister.
|
|
16746
|
+
*
|
|
16747
|
+
* @internal
|
|
16606
16748
|
*/
|
|
16607
16749
|
_removeChild(child) {
|
|
16608
16750
|
const next = new Set(this._children.value);
|
|
@@ -16655,16 +16797,17 @@ class DbxWidgetService {
|
|
|
16655
16797
|
/**
|
|
16656
16798
|
* Used to register an entry. If an entry with the same type is already registered, this will override it by default.
|
|
16657
16799
|
*
|
|
16658
|
-
* @param entry - The widget entry mapping a type identifier to its component class
|
|
16800
|
+
* @param entry - The widget entry mapping a type identifier to its component class.
|
|
16659
16801
|
* @param override - Whether to replace an existing entry with the same type. Defaults to true.
|
|
16660
|
-
* @returns True if the entry was registered, false if an entry with the same type already exists and override is false
|
|
16802
|
+
* @returns True if the entry was registered, false if an entry with the same type already exists and override is false.
|
|
16661
16803
|
*/
|
|
16662
16804
|
register(entry, override = true) {
|
|
16805
|
+
let registered = false;
|
|
16663
16806
|
if (override || !this._entries.has(entry.type)) {
|
|
16664
16807
|
this._entries.set(entry.type, entry);
|
|
16665
|
-
|
|
16808
|
+
registered = true;
|
|
16666
16809
|
}
|
|
16667
|
-
return
|
|
16810
|
+
return registered;
|
|
16668
16811
|
}
|
|
16669
16812
|
// MARK: Get
|
|
16670
16813
|
getWidgetIdentifiers() {
|
|
@@ -16879,7 +17022,7 @@ class DbxHelpContextService {
|
|
|
16879
17022
|
/**
|
|
16880
17023
|
* Registers a help context reference, adding its keys to the active set.
|
|
16881
17024
|
*
|
|
16882
|
-
* @param reference - The help context reference to register
|
|
17025
|
+
* @param reference - The help context reference to register.
|
|
16883
17026
|
*/
|
|
16884
17027
|
register(reference) {
|
|
16885
17028
|
const referenceSet = this._contextReferences.value;
|
|
@@ -16889,7 +17032,7 @@ class DbxHelpContextService {
|
|
|
16889
17032
|
/**
|
|
16890
17033
|
* Unregisters a help context reference, removing its keys from the active set.
|
|
16891
17034
|
*
|
|
16892
|
-
* @param reference - The help context reference to unregister
|
|
17035
|
+
* @param reference - The help context reference to unregister.
|
|
16893
17036
|
*/
|
|
16894
17037
|
unregister(reference) {
|
|
16895
17038
|
const referenceSet = this._contextReferences.value;
|
|
@@ -16907,14 +17050,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
16907
17050
|
* Registers the given help context keys observable with the {@link DbxHelpContextService}. Must be called within an Angular injection context.
|
|
16908
17051
|
* Automatically unregisters on destroy, but also returns a destroy function for manual cleanup.
|
|
16909
17052
|
*
|
|
17053
|
+
* @param helpContextKeys - Observable or static array of help context keys to register with the service.
|
|
17054
|
+
* @returns A destroy function that unregisters the help context keys when called.
|
|
17055
|
+
*
|
|
16910
17056
|
* @example
|
|
16911
17057
|
* ```typescript
|
|
16912
17058
|
* // In a component or directive constructor
|
|
16913
17059
|
* const destroy = registerHelpContextKeysWithDbxHelpContextService(of(['feature-help', 'general-help']));
|
|
16914
17060
|
* ```
|
|
16915
17061
|
*
|
|
16916
|
-
* @param helpContextKeys - Observable or static array of help context keys to register with the service
|
|
16917
|
-
* @returns A destroy function that unregisters the help context keys when called
|
|
16918
17062
|
* @__NO_SIDE_EFFECTS__
|
|
16919
17063
|
*/
|
|
16920
17064
|
function registerHelpContextKeysWithDbxHelpContextService(helpContextKeys) {
|
|
@@ -17000,7 +17144,7 @@ class DbxHelpWidgetService {
|
|
|
17000
17144
|
/**
|
|
17001
17145
|
* Returns the component class used for unrecognized help context keys.
|
|
17002
17146
|
*
|
|
17003
|
-
* @returns The default widget component class, or undefined if not set
|
|
17147
|
+
* @returns The default widget component class, or undefined if not set.
|
|
17004
17148
|
*/
|
|
17005
17149
|
getDefaultWidgetComponentClass() {
|
|
17006
17150
|
return this._defaultWidgetComponentClass;
|
|
@@ -17011,7 +17155,7 @@ class DbxHelpWidgetService {
|
|
|
17011
17155
|
/**
|
|
17012
17156
|
* Returns the default icon used for help entries without a specific icon.
|
|
17013
17157
|
*
|
|
17014
|
-
* @returns The default icon string, or undefined if not set
|
|
17158
|
+
* @returns The default icon string, or undefined if not set.
|
|
17015
17159
|
*/
|
|
17016
17160
|
getDefaultIcon() {
|
|
17017
17161
|
return this._defaultIcon;
|
|
@@ -17022,7 +17166,7 @@ class DbxHelpWidgetService {
|
|
|
17022
17166
|
/**
|
|
17023
17167
|
* Returns the component config displayed in the popover header, if set.
|
|
17024
17168
|
*
|
|
17025
|
-
* @returns The popover header component config, or undefined if not set
|
|
17169
|
+
* @returns The popover header component config, or undefined if not set.
|
|
17026
17170
|
*/
|
|
17027
17171
|
getPopoverHeaderComponentConfig() {
|
|
17028
17172
|
return this._popoverHeaderComponentConfig;
|
|
@@ -17033,7 +17177,7 @@ class DbxHelpWidgetService {
|
|
|
17033
17177
|
/**
|
|
17034
17178
|
* Returns the component config displayed at the top of the help list view, if set.
|
|
17035
17179
|
*
|
|
17036
|
-
* @returns The help list header component config, or undefined if not set
|
|
17180
|
+
* @returns The help list header component config, or undefined if not set.
|
|
17037
17181
|
*/
|
|
17038
17182
|
getHelpListHeaderComponentConfig() {
|
|
17039
17183
|
return this._helpListHeaderComponentConfig;
|
|
@@ -17044,7 +17188,7 @@ class DbxHelpWidgetService {
|
|
|
17044
17188
|
/**
|
|
17045
17189
|
* Returns the component config displayed at the bottom of the help list view, if set.
|
|
17046
17190
|
*
|
|
17047
|
-
* @returns The help list footer component config, or undefined if not set
|
|
17191
|
+
* @returns The help list footer component config, or undefined if not set.
|
|
17048
17192
|
*/
|
|
17049
17193
|
getHelpListFooterComponentConfig() {
|
|
17050
17194
|
return this._helpListFooterComponentConfig;
|
|
@@ -17057,9 +17201,9 @@ class DbxHelpWidgetService {
|
|
|
17057
17201
|
*
|
|
17058
17202
|
* If an entry with the same identity is already registered, this will override it by default.
|
|
17059
17203
|
*
|
|
17060
|
-
* @param entries The entries to register
|
|
17061
|
-
* @param override Whether to override existing entries (default: true)
|
|
17062
|
-
* @returns Always returns true after registration completes
|
|
17204
|
+
* @param entries - The entries to register.
|
|
17205
|
+
* @param override - Whether to override existing entries (default: true)
|
|
17206
|
+
* @returns Always returns true after registration completes.
|
|
17063
17207
|
*/
|
|
17064
17208
|
register(entries, override = true) {
|
|
17065
17209
|
const entriesArray = asArray(entries);
|
|
@@ -17074,7 +17218,7 @@ class DbxHelpWidgetService {
|
|
|
17074
17218
|
/**
|
|
17075
17219
|
* Returns all currently registered help context keys.
|
|
17076
17220
|
*
|
|
17077
|
-
* @returns Array of all registered help context keys
|
|
17221
|
+
* @returns Array of all registered help context keys.
|
|
17078
17222
|
*/
|
|
17079
17223
|
getAllRegisteredHelpContextKeys() {
|
|
17080
17224
|
return [...this._entries.keys()];
|
|
@@ -17082,8 +17226,8 @@ class DbxHelpWidgetService {
|
|
|
17082
17226
|
/**
|
|
17083
17227
|
* Retrieves the widget entry for a given help context key. Falls back to a default entry if a default widget component class is configured.
|
|
17084
17228
|
*
|
|
17085
|
-
* @param helpContextKey - The help context key to look up
|
|
17086
|
-
* @returns The matching widget entry, a default entry if a default component class is configured, or undefined
|
|
17229
|
+
* @param helpContextKey - The help context key to look up.
|
|
17230
|
+
* @returns The matching widget entry, a default entry if a default component class is configured, or undefined.
|
|
17087
17231
|
*/
|
|
17088
17232
|
getHelpWidgetEntry(helpContextKey) {
|
|
17089
17233
|
return this._entries.get(helpContextKey) ?? (this._defaultWidgetComponentClass ? { helpContextKey, title: '<Missing Help Topic>', widgetComponentClass: this._defaultWidgetComponentClass } : undefined);
|
|
@@ -17091,8 +17235,8 @@ class DbxHelpWidgetService {
|
|
|
17091
17235
|
/**
|
|
17092
17236
|
* Retrieves widget entries for multiple help context keys, filtering out any unresolvable keys.
|
|
17093
17237
|
*
|
|
17094
|
-
* @param helpContextKeys - Array of help context keys to look up
|
|
17095
|
-
* @returns Array of resolved widget entries, excluding any keys that could not be resolved
|
|
17238
|
+
* @param helpContextKeys - Array of help context keys to look up.
|
|
17239
|
+
* @returns Array of resolved widget entries, excluding any keys that could not be resolved.
|
|
17096
17240
|
*/
|
|
17097
17241
|
getHelpWidgetEntriesForHelpContextKeys(helpContextKeys) {
|
|
17098
17242
|
return helpContextKeys.map((context) => this.getHelpWidgetEntry(context)).filter((entry) => !!entry);
|
|
@@ -17100,8 +17244,8 @@ class DbxHelpWidgetService {
|
|
|
17100
17244
|
/**
|
|
17101
17245
|
* Checks whether a widget entry is registered for the given help context key.
|
|
17102
17246
|
*
|
|
17103
|
-
* @param context - The help context key to check
|
|
17104
|
-
* @returns True if a widget entry exists for the given key
|
|
17247
|
+
* @param context - The help context key to check.
|
|
17248
|
+
* @returns True if a widget entry exists for the given key.
|
|
17105
17249
|
*/
|
|
17106
17250
|
hasHelpWidgetEntry(context) {
|
|
17107
17251
|
return this._entries.has(context);
|
|
@@ -17109,7 +17253,7 @@ class DbxHelpWidgetService {
|
|
|
17109
17253
|
/**
|
|
17110
17254
|
* Returns a cached map of help context keys to their sort priority values.
|
|
17111
17255
|
*
|
|
17112
|
-
* @returns Map of help context keys to their numeric sort priorities
|
|
17256
|
+
* @returns Map of help context keys to their numeric sort priorities.
|
|
17113
17257
|
*/
|
|
17114
17258
|
getSortPriorityMap() {
|
|
17115
17259
|
return this._sortPriorityMap();
|
|
@@ -17124,8 +17268,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
17124
17268
|
/**
|
|
17125
17269
|
* Creates EnvironmentProviders for the help context system.
|
|
17126
17270
|
*
|
|
17127
|
-
* @param config Optional configuration
|
|
17128
|
-
* @returns EnvironmentProviders
|
|
17271
|
+
* @param config - Optional configuration.
|
|
17272
|
+
* @returns EnvironmentProviders.
|
|
17273
|
+
*
|
|
17129
17274
|
* @__NO_SIDE_EFFECTS__
|
|
17130
17275
|
*/
|
|
17131
17276
|
function provideDbxHelpServices(config) {
|
|
@@ -17437,7 +17582,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
17437
17582
|
/**
|
|
17438
17583
|
* MIME types accepted by the PDF merge editor by default: PDF documents and PNG/JPEG images.
|
|
17439
17584
|
*/
|
|
17440
|
-
const
|
|
17585
|
+
const DEFAULT_PDF_MERGE_ACCEPT = [PDF_MIME_TYPE, PNG_MIME_TYPE, JPEG_MIME_TYPE];
|
|
17441
17586
|
/**
|
|
17442
17587
|
* MIME type emitted by the merged result blob.
|
|
17443
17588
|
*/
|
|
@@ -17696,12 +17841,16 @@ class DbxPdfMergeEditorStore extends ComponentStore {
|
|
|
17696
17841
|
*/
|
|
17697
17842
|
removeEntriesBySlotId = this.updater((state, slotId) => ({ ...state, rawEntries: state.rawEntries.filter((entry) => entry.slotId !== slotId) }));
|
|
17698
17843
|
moveEntry = this.updater((state, move) => {
|
|
17844
|
+
let nextState;
|
|
17699
17845
|
if (move.previousIndex === move.currentIndex) {
|
|
17700
|
-
|
|
17846
|
+
nextState = state;
|
|
17701
17847
|
}
|
|
17702
|
-
|
|
17703
|
-
|
|
17704
|
-
|
|
17848
|
+
else {
|
|
17849
|
+
const next = [...state.rawEntries];
|
|
17850
|
+
moveItemInArray(next, move.previousIndex, move.currentIndex);
|
|
17851
|
+
nextState = { ...state, rawEntries: next };
|
|
17852
|
+
}
|
|
17853
|
+
return nextState;
|
|
17705
17854
|
});
|
|
17706
17855
|
/**
|
|
17707
17856
|
* Reorders entries inside a single slot. The `previousIndex`/`currentIndex` are slot-local — the indices a {@link DbxPdfMergeEditorFileUploadComponent} sees in its filtered view of {@link entries$}. The updater translates them to global `rawEntries` positions and applies an in-place {@link moveItemInArray}, leaving entries from other slots untouched.
|
|
@@ -17952,8 +18101,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
17952
18101
|
/**
|
|
17953
18102
|
* Opens a dialog containing a {@link DbxPdfPreviewComponent} for previewing a PDF blob or URL.
|
|
17954
18103
|
*
|
|
17955
|
-
* @param matDialog The {@link MatDialog} instance to use.
|
|
17956
|
-
* @param config Source (blob or URL) and Material dialog options.
|
|
18104
|
+
* @param matDialog - The {@link MatDialog} instance to use.
|
|
18105
|
+
* @param config - Source (blob or URL) and Material dialog options.
|
|
17957
18106
|
* @returns The {@link MatDialogRef} for the opened dialog.
|
|
17958
18107
|
*/
|
|
17959
18108
|
function openPdfPreviewDialog(matDialog, config) {
|
|
@@ -18000,7 +18149,7 @@ class DbxPdfMergeEditorComponent {
|
|
|
18000
18149
|
* Single-slot subscription tracker for the deferred Preview path. Replacing the slot cancels any earlier in-flight wait so rapid clicks (or repeated programmatic calls) cannot stack pending dialogs.
|
|
18001
18150
|
*/
|
|
18002
18151
|
_pendingPreview = cleanSubscription();
|
|
18003
|
-
accept = input(
|
|
18152
|
+
accept = input(DEFAULT_PDF_MERGE_ACCEPT, ...(ngDevMode ? [{ debugName: "accept" }] : /* istanbul ignore next */ []));
|
|
18004
18153
|
multiple = input(true, ...(ngDevMode ? [{ debugName: "multiple" }] : /* istanbul ignore next */ []));
|
|
18005
18154
|
fileName = input(DEFAULT_MERGED_FILE_NAME, ...(ngDevMode ? [{ debugName: "fileName" }] : /* istanbul ignore next */ []));
|
|
18006
18155
|
showDownloadButton = input(false, ...(ngDevMode ? [{ debugName: "showDownloadButton" }] : /* istanbul ignore next */ []));
|
|
@@ -18024,7 +18173,10 @@ class DbxPdfMergeEditorComponent {
|
|
|
18024
18173
|
/**
|
|
18025
18174
|
* Computed gate for the Preview and Download affordances. Disabled while no entry is `ready` or while the registered validator delegate reports invalid.
|
|
18026
18175
|
*/
|
|
18027
|
-
canMergeSignal = computed(() =>
|
|
18176
|
+
canMergeSignal = computed(() => {
|
|
18177
|
+
const isValid = this.isValidSignal();
|
|
18178
|
+
return this.hasReadyEntriesSignal() && isValid;
|
|
18179
|
+
}, ...(ngDevMode ? [{ debugName: "canMergeSignal" }] : /* istanbul ignore next */ []));
|
|
18028
18180
|
/**
|
|
18029
18181
|
* Latest merged blob (or `undefined` while validation/merge is in flight or no entries are ready). Sourced from {@link DbxPdfMergeEditorStore.currentMergeOutput$} so the download button always reflects the current merge without needing the user to click Preview first.
|
|
18030
18182
|
*/
|
|
@@ -18168,7 +18320,7 @@ class DbxPdfMergeEditorFileUploadComponent {
|
|
|
18168
18320
|
_validator = inject(DbxPdfMergeEditorFileUploadValidatorDirective, { optional: true });
|
|
18169
18321
|
slotId = input.required(...(ngDevMode ? [{ debugName: "slotId" }] : /* istanbul ignore next */ []));
|
|
18170
18322
|
config = input(...(ngDevMode ? [undefined, { debugName: "config" }] : /* istanbul ignore next */ []));
|
|
18171
|
-
acceptSignal = computed(() => this.config()?.accept ??
|
|
18323
|
+
acceptSignal = computed(() => this.config()?.accept ?? DEFAULT_PDF_MERGE_ACCEPT, ...(ngDevMode ? [{ debugName: "acceptSignal" }] : /* istanbul ignore next */ []));
|
|
18172
18324
|
multipleSignal = computed(() => this.config()?.multiple ?? false, ...(ngDevMode ? [{ debugName: "multipleSignal" }] : /* istanbul ignore next */ []));
|
|
18173
18325
|
modeSignal = computed(() => this.config()?.mode ?? 'default', ...(ngDevMode ? [{ debugName: "modeSignal" }] : /* istanbul ignore next */ []));
|
|
18174
18326
|
labelSignal = computed(() => this.config()?.label, ...(ngDevMode ? [{ debugName: "labelSignal" }] : /* istanbul ignore next */ []));
|
|
@@ -18381,8 +18533,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
18381
18533
|
/**
|
|
18382
18534
|
* Creates Angular environment providers for {@link DbxScreenMediaService} and its configuration.
|
|
18383
18535
|
*
|
|
18384
|
-
* @param config -
|
|
18385
|
-
* @returns
|
|
18536
|
+
* @param config - Optional service configuration; uses default breakpoints if omitted.
|
|
18537
|
+
* @returns Environment providers to register in the application bootstrap.
|
|
18386
18538
|
*
|
|
18387
18539
|
* @example
|
|
18388
18540
|
* ```ts
|
|
@@ -18390,6 +18542,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
18390
18542
|
* providers: [provideDbxScreenMediaService()]
|
|
18391
18543
|
* });
|
|
18392
18544
|
* ```
|
|
18545
|
+
*
|
|
18393
18546
|
* @__NO_SIDE_EFFECTS__
|
|
18394
18547
|
*/
|
|
18395
18548
|
function provideDbxScreenMediaService(config = {}) {
|
|
@@ -18412,8 +18565,8 @@ function provideDbxScreenMediaService(config = {}) {
|
|
|
18412
18565
|
* Useful for preventing the default context menu from appearing over dialogs or popups.
|
|
18413
18566
|
*
|
|
18414
18567
|
* @param classes - CSS class name of the overlay container element to target. Defaults to `'cdk-overlay-container'`.
|
|
18415
|
-
* @param onEvent -
|
|
18416
|
-
* @returns
|
|
18568
|
+
* @param onEvent - Optional callback invoked on each suppressed right-click event.
|
|
18569
|
+
* @returns A cleanup function that removes the event listener.
|
|
18417
18570
|
*
|
|
18418
18571
|
* @example
|
|
18419
18572
|
* ```ts
|
|
@@ -18453,5 +18606,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
18453
18606
|
* Generated bundle index. Do not edit.
|
|
18454
18607
|
*/
|
|
18455
18608
|
|
|
18456
|
-
export { APP_POPUP_MINIMIZED_WIDTH, APP_POPUP_NORMAL_HEIGHT, APP_POPUP_NORMAL_WIDTH, AbstractDbxClipboardDirective, AbstractDbxErrorWidgetComponent, AbstractDbxFileUploadComponent, AbstractDbxHelpWidgetDirective, AbstractDbxListAccordionViewDirective, AbstractDbxListGridViewDirective, AbstractDbxListViewDirective, AbstractDbxListWrapperDirective, AbstractDbxPartialPresetFilterMenuDirective, AbstractDbxSegueAnchorDirective, AbstractDbxSelectionListViewDirective, AbstractDbxSelectionListWrapperDirective, AbstractDbxValueListItemModifierDirective, AbstractDbxValueListViewDirective, AbstractDbxValueListViewItemComponent, AbstractDbxWidgetComponent, AbstractDialogDirective, AbstractFilterPopoverButtonDirective, AbstractPopoverDirective, AbstractPopoverRefDirective, AbstractPopoverRefWithEventsDirective, AbstractPopupDirective, AbstractPromptConfirmDirective, CompactContextStore, CompactMode, DBX_ACTION_SNACKBAR_DEFAULTS, DBX_ACTION_SNACKBAR_SERVICE_CONFIG, DBX_AVATAR_CONTEXT_DATA_TOKEN, DBX_CHIP_DEFAULT_TONE, DBX_COLOR_CUSTOM_BG_CSS_CLASS, DBX_COLOR_CUSTOM_TEXT_CSS_CLASS, DBX_DARK_STYLE_CLASS_SUFFIX, DBX_DETACH_DEFAULT_KEY, DBX_HELP_WIDGET_ENTRY_DATA_TOKEN, DBX_LIST_ACCORDION_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_DEFAULT_SCROLL_DISTANCE, DBX_LIST_DEFAULT_THROTTLE_SCROLL, DBX_LIST_GRID_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_ITEM_DEFAULT_DISABLE_FUNCTION, DBX_LIST_ITEM_DISABLE_RIPPLE_LIST_ITEM_MODIFIER_KEY, DBX_LIST_ITEM_IS_SELECTED_ITEM_MODIFIER_KEY, DBX_LIST_VIEW_DEFAULT_META_ICON, DBX_MODEL_VIEW_TRACKER_STORAGE_ACCESSOR_TOKEN, DBX_PDF_MERGE_EDITOR_INITIAL_STATE, DBX_PROGRESS_BUTTON_GLOBAL_CONFIG, DBX_ROUTER_ANCHOR_COMPONENTS, DBX_ROUTER_VALUE_LIST_ITEM_MODIFIER_KEY, DBX_STYLE_DEFAULT_CONFIG_TOKEN, DBX_THEME_COLORS, DBX_THEME_COLORS_EXTRA, DBX_THEME_COLORS_EXTRA_SECONDARY, DBX_THEME_COLORS_MAIN, DBX_VALUE_LIST_VIEW_ITEM, DBX_WEB_FILE_PREVIEW_SERVICE_DEFAULT_DIALOG_WITH_COMPONENT_FUNCTION, DBX_WEB_FILE_PREVIEW_SERVICE_DEFAULT_PREVIEW_COMPONENT_FUNCTION, DBX_WEB_FILE_PREVIEW_SERVICE_ENTRIES_TOKEN, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_COMPONENT_PRESET, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_PRESET_ENTRY, DBX_WEB_PAGE_TITLE_SERVICE_CONFIG, DEFAULT_DBX_ERROR_SNACKBAR_CONFIG, DEFAULT_DBX_HELP_VIEW_POPOVER_KEY, DEFAULT_DBX_LINKIFY_STRING_TYPE, DEFAULT_DBX_LIST_ACCORDION_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_GRID_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_ITEM_IS_SELECTED_FUNCTION, DEFAULT_DBX_PROMPT_CONFIRM_DIALOG_CONFIG, DEFAULT_DBX_SELECTION_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_SIDENAV_MENU_ICON, DEFAULT_DBX_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_ERROR_POPOVER_KEY, DEFAULT_ERROR_WIDGET_CODE, DEFAULT_FILTER_POPOVER_KEY, DEFAULT_LIST_GRID_SIZE_CONFIG, DEFAULT_LIST_WRAPPER_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_LOADING_PROGRESS_DIAMETER, DEFAULT_SCREEN_MEDIA_SERVICE_CONFIG, DEFAULT_SNACKBAR_DIRECTIVE_DURATION, DEFAULT_TWO_COLUMNS_MIN_RIGHT_WIDTH, DEFAULT_VALUE_LIST_VIEW_CONTENT_COMPONENT_TRACK_BY_FUNCTION, DbxAccordionHeaderHeightDirective, DbxActionConfirmDirective, DbxActionDialogDirective, DbxActionErrorDirective, DbxActionKeyTriggerDirective, DbxActionLoadingContextDirective, DbxActionModule, DbxActionPopoverDirective, DbxActionSnackbarComponent, DbxActionSnackbarDirective, DbxActionSnackbarErrorDirective, DbxActionSnackbarModule, DbxActionSnackbarService, DbxActionTransitionSafetyDirective, DbxActionUIRouterTransitionSafetyDialogComponent, DbxAnchorComponent, DbxAnchorContentComponent, DbxAnchorIconComponent, DbxAnchorListComponent, DbxAngularRouterSegueAnchorComponent, DbxAvatarComponent, DbxAvatarViewService, DbxAvatarViewServiceConfig, DbxBarDirective, DbxBarHeaderComponent, DbxBarLayoutModule, DbxBasicLoadingComponent, DbxBodyDirective, DbxButtonComponent, DbxButtonModule, DbxButtonSpacerDirective, DbxCardBoxComponent, DbxCardBoxContainerDirective, DbxCardBoxLayoutModule, DbxChipDirective, DbxChipListComponent, DbxClickToCopyTextComponent, DbxClickToCopyTextDirective, DbxColorDirective, DbxColorService, DbxColorServiceConfig, DbxColumnLayoutModule, DbxCompactDirective, DbxCompactLayoutModule, DbxContentBorderDirective, DbxContentBoxDirective, DbxContentContainerDirective, DbxContentDirective, DbxContentElevateDirective, DbxContentLayoutModule, DbxContentPageDirective, DbxContentPitDirective, DbxDetachContentComponent, DbxDetachControlButtonsComponent, DbxDetachController, DbxDetachControlsComponent, DbxDetachInitDirective, DbxDetachInteractionModule, DbxDetachOutletComponent, DbxDetachOverlayComponent, DbxDetachService, DbxDetachWindowState, DbxDetailBlockComponent, DbxDetailBlockHeaderComponent, DbxDialogContentCloseComponent, DbxDialogContentDirective, DbxDialogContentFooterComponent, DbxDialogInteractionModule, DbxDialogModule, DbxDownloadBlobButtonComponent, DbxDownloadTextViewComponent, DbxEmbedComponent, DbxErrorComponent, DbxErrorDefaultErrorWidgetComponent, DbxErrorDetailsComponent, DbxErrorPopoverComponent, DbxErrorSnackbarComponent, DbxErrorSnackbarService, DbxErrorViewComponent, DbxErrorWidgetService, DbxErrorWidgetViewComponent, DbxFileUploadActionCompatable, DbxFileUploadActionSyncDirective, DbxFileUploadAreaComponent, DbxFileUploadButtonComponent, DbxFileUploadComponent, DbxFilterInteractionModule, DbxFilterPopoverButtonComponent, DbxFilterPopoverComponent, DbxFilterWrapperComponent, DbxFlagComponent, DbxFlagLayoutModule, DbxFlagPromptComponent, DbxFlexGroupDirective, DbxFlexLayoutModule, DbxFlexSizeDirective, DbxHelpContextDirective, DbxHelpContextService, DbxHelpViewListComponent, DbxHelpViewListEntryComponent, DbxHelpViewPopoverButtonComponent, DbxHelpViewPopoverComponent, DbxHelpWidgetService, DbxHelpWidgetServiceConfig, DbxIconButtonComponent, DbxIconButtonModule, DbxIconItemComponent, DbxIconSpacerDirective, DbxIconTileComponent, DbxIconTileDirective, DbxIfSidenavDisplayModeDirective, DbxIframeComponent, DbxInjectionDialogComponent, DbxInteractionModule, DbxIntroActionSectionComponent, DbxLabelBlockComponent, DbxLayoutModule, DbxLinkComponent, DbxLinkifyComponent, DbxLinkifyService, DbxLinkifyServiceConfig, DbxListAccordionViewComponentImportsModule, DbxListComponent, DbxListEmptyContentComponent, DbxListGridViewComponentImportsModule, DbxListInternalContentDirective, DbxListItemAnchorModifierDirective, DbxListItemDisableRippleModifierDirective, DbxListItemIsSelectedModifierDirective, DbxListModifierModule, DbxListModule, DbxListTitleGroupDirective, DbxListView, DbxListViewMetaIconComponent, DbxListViewWrapper, DbxListWrapperComponentImportsModule, DbxLoadingComponent, DbxLoadingErrorDirective, DbxLoadingModule, DbxLoadingProgressComponent, DbxModelObjectStateService, actions as DbxModelStateActions, model_actions as DbxModelStateModelActions, DbxModelTrackerService, DbxModelTypesService, DbxModelViewTrackerStorage, DbxNavbarComponent, DbxNumberWithLimitComponent, DbxOneColumnComponent, DbxOneColumnLayoutModule, DbxPagebarComponent, DbxPartialPresetFilterListComponent, DbxPartialPresetFilterMenuComponent, DbxPdfMergeEditorComponent, DbxPdfMergeEditorFileUploadComponent, DbxPdfMergeEditorFileUploadHasStateDirective, DbxPdfMergeEditorFileUploadValidatorDirective, DbxPdfMergeEditorStore, DbxPdfMergeEntryComponent, DbxPdfMergeListComponent, DbxPdfPreviewComponent, DbxPopoverCloseButtonComponent, DbxPopoverComponent, DbxPopoverComponentController, DbxPopoverContentComponent, DbxPopoverController, DbxPopoverControlsDirective, DbxPopoverCoordinatorComponent, DbxPopoverCoordinatorService, DbxPopoverHeaderComponent, DbxPopoverInteractionContentModule, DbxPopoverInteractionModule, DbxPopoverScrollContentDirective, DbxPopoverService, DbxPopupComponent, DbxPopupComponentController, DbxPopupContentComponent, DbxPopupControlButtonsComponent, DbxPopupController, DbxPopupControlsComponent, DbxPopupCoordinatorComponent, DbxPopupCoordinatorService, DbxPopupInteractionModule, DbxPopupService, DbxPopupWindowState, DbxPresetFilterListComponent, DbxPresetFilterMenuComponent, DbxProgressBarButtonComponent, DbxProgressButtonsModule, DbxProgressSpinnerButtonComponent, DbxPromptBoxDirective, DbxPromptComponent, DbxPromptConfirm, DbxPromptConfirmButtonDirective, DbxPromptConfirmComponent, DbxPromptConfirmDialogComponent, DbxPromptConfirmDirective, DbxPromptModule, DbxPromptPageComponent, DbxReadableErrorModule, DbxResizedDirective, DbxRouterAnchorModule, DbxRouterLayoutModule, DbxRouterSidenavModule, DbxRouterWebProviderConfig, DbxScreenMediaService, DbxScreenMediaServiceConfig, DbxSectionComponent, DbxSectionHeaderComponent, DbxSectionLayoutModule, DbxSectionPageComponent, DbxSelectionValueListViewComponent, DbxSelectionValueListViewComponentImportsModule, DbxSelectionValueListViewContentComponent, DbxSetStyleDirective, DbxSidenavButtonComponent, DbxSidenavComponent, DbxSidenavPageComponent, DbxSidenavPagebarComponent, DbxSpacerDirective, DbxStepBlockComponent, DbxStructureDirective, DbxStructureModule, DbxStyleBodyDirective, DbxStyleDirective, DbxStyleLayoutModule, DbxStyleService, DbxSubSectionComponent, DbxTextChipsComponent, DbxTextColorDirective, DbxTextModule, DbxTwoBlockComponent, DbxTwoColumnBackDirective, DbxTwoColumnColumnHeadDirective, DbxTwoColumnComponent, DbxTwoColumnContextDirective, DbxTwoColumnFullLeftDirective, DbxTwoColumnLayoutModule, DbxTwoColumnRightComponent, DbxTwoColumnSrefDirective, DbxTwoColumnSrefShowRightDirective, DbxUIRouterSegueAnchorComponent, DbxUnitedStatesAddressComponent, DbxValueListAccordionViewComponent, DbxValueListAccordionViewContentComponent, DbxValueListAccordionViewContentGroupComponent, DbxValueListGridSizeDirective, DbxValueListGridViewComponent, DbxValueListGridViewContentComponent, DbxValueListGridViewContentGroupComponent, DbxValueListItemModifier, DbxValueListItemModifierDirective, DbxValueListView, DbxValueListViewComponent, DbxValueListViewComponentImportsModule, DbxValueListViewContentComponent, DbxValueListViewContentGroupComponent, DbxValueListViewGroupDelegate, DbxWebFilePreviewComponent, DbxWebFilePreviewService, DbxWebModule, DbxWebPageTitleInfoDirective, DbxWebPageTitleService, DbxWidgetListGridComponent, DbxWidgetListGridViewComponent, DbxWidgetListGridViewItemComponent, DbxWidgetService, DbxWidgetViewComponent, DbxWindowKeyDownListenerDirective, DbxZipBlobPreviewComponent, DbxZipPreviewComponent, PDF_MERGE_DEFAULT_ACCEPT, PDF_MERGE_RESULT_MIME_TYPE, PopoverPositionStrategy, PopupGlobalPositionStrategy, SCREEN_MEDIA_WIDTH_TYPE_SIZE_MAP, SIDE_NAV_DISPLAY_MODE_ORDER, SideNavDisplayMode, TRACK_BY_MODEL_ID, TRACK_BY_MODEL_KEY, TwoColumnsContextStore, UNKNOWN_ERROR_WIDGET_CODE, addConfigToValueListItems, allDbxModelViewTrackerEventModelKeys, allDbxModelViewTrackerEventSetModelKeys, buildPdfMergeEntry, catchErrorServerParams, classifyPdfMergeFile, compactModeFromInput, compareScreenMediaWidthTypes, convertServerErrorParams, convertToPOJOServerErrorResponse, convertToServerErrorResponse, copyToClipboardFunction, dbxColorBackground, dbxListAccordionViewComponentImportsAndExports, dbxListGridViewComponentImportsAndExports, dbxPresetFilterMenuButtonIconObservable, dbxPresetFilterMenuButtonTextObservable, dbxStyleClassCleanSuffix, dbxThemeColorCssToken, dbxThemeColorCssTokenVar, dbxThemeColorCssVariable, dbxThemeColorCssVariableVar, dbxValueListItemDecisionFunction, dbxValueListItemKeyForItemValue, dbxWebDefaultPageTitleDelegate, dbxZipBlobPreviewEntryTreeFromEntries, defaultDbxModelViewTrackerStorageAccessorFactory, defaultDbxValueListViewGroupDelegate, defaultDbxValueListViewGroupValuesFunction, disableRightClickInCdkBackdrop, fileAcceptFilterTypeStringArray, fileAcceptFunction, fileAcceptString, fileArrayAcceptMatchFunction, flattenAccordionGroups, index as fromDbxModel, injectCopyToClipboardFunction, injectCopyToClipboardFunctionWithSnackbarMessage, isDbxColorConfig, listItemModifier, makeDbxActionSnackbarDisplayConfigGeneratorFunction, mapCompactModeObs, mapValuesToValuesListItemConfigObs, mergePdfMergeEntries, index$1 as onDbxModel, openEmbedDialog, openIframeDialog, openPdfPreviewDialog, openZipPreviewDialog, overrideClickElementEffect, provideDbxDetachController, provideDbxFileUploadActionCompatable, provideDbxHelpServices, provideDbxLinkify, provideDbxListView, provideDbxListViewWrapper, provideDbxModelService, provideDbxProgressButtonGlobalConfig, provideDbxPromptConfirm, provideDbxRouterWebAngularRouterProviderConfig, provideDbxRouterWebUiRouterProviderConfig, provideDbxScreenMediaService, provideDbxStyleService, provideDbxValueListView, provideDbxValueListViewGroupDelegate, provideDbxValueListViewModifier, provideDbxWebFilePreviewServiceEntries, provideDbxWebPageTitleService, provideTwoColumnsContext, registerHelpContextKeysWithDbxHelpContextService, resizeSignal, resolveSideNavDisplayMode, sanitizeDbxDialogContentConfig, screenMediaWidthTypeIsActive, trackByModelKeyRef, trackByUniqueIdentifier, validatePdfMergeEntry };
|
|
18609
|
+
export { APP_POPUP_MINIMIZED_WIDTH, APP_POPUP_NORMAL_HEIGHT, APP_POPUP_NORMAL_WIDTH, AbstractDbxClipboardDirective, AbstractDbxErrorWidgetComponent, AbstractDbxFileUploadComponent, AbstractDbxHelpWidgetDirective, AbstractDbxListAccordionViewDirective, AbstractDbxListGridViewDirective, AbstractDbxListViewDirective, AbstractDbxListWrapperDirective, AbstractDbxPartialPresetFilterMenuDirective, AbstractDbxSegueAnchorDirective, AbstractDbxSelectionListViewDirective, AbstractDbxSelectionListWrapperDirective, AbstractDbxValueListItemModifierDirective, AbstractDbxValueListViewDirective, AbstractDbxValueListViewItemComponent, AbstractDbxWidgetComponent, AbstractDialogDirective, AbstractFilterPopoverButtonDirective, AbstractPopoverDirective, AbstractPopoverRefDirective, AbstractPopoverRefWithEventsDirective, AbstractPopupDirective, AbstractPromptConfirmDirective, CompactContextStore, CompactMode, DBX_ACTION_SNACKBAR_DEFAULTS, DBX_ACTION_SNACKBAR_SERVICE_CONFIG, DBX_AVATAR_CONTEXT_DATA_TOKEN, DBX_COLOR_CUSTOM_BG_CSS_CLASS, DBX_COLOR_CUSTOM_TEXT_CSS_CLASS, DBX_DARK_STYLE_CLASS_SUFFIX, DBX_HELP_WIDGET_ENTRY_DATA_TOKEN, DBX_LIST_ACCORDION_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_GRID_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_ITEM_DISABLE_RIPPLE_LIST_ITEM_MODIFIER_KEY, DBX_LIST_ITEM_IS_SELECTED_ITEM_MODIFIER_KEY, DBX_MODEL_VIEW_TRACKER_STORAGE_ACCESSOR_TOKEN, DBX_PDF_MERGE_EDITOR_INITIAL_STATE, DBX_PROGRESS_BUTTON_GLOBAL_CONFIG, DBX_ROUTER_ANCHOR_COMPONENTS, DBX_ROUTER_VALUE_LIST_ITEM_MODIFIER_KEY, DBX_THEME_COLORS, DBX_THEME_COLORS_EXTRA, DBX_THEME_COLORS_EXTRA_SECONDARY, DBX_THEME_COLORS_MAIN, DBX_VALUE_LIST_VIEW_ITEM, DBX_WEB_FILE_PREVIEW_SERVICE_ENTRIES_TOKEN, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_COMPONENT_PRESET, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_PRESET_ENTRY, DBX_WEB_PAGE_TITLE_SERVICE_CONFIG, DEFAULT_DBX_CHIP_TONE, DEFAULT_DBX_DETACH_KEY, DEFAULT_DBX_ERROR_SNACKBAR_CONFIG, DEFAULT_DBX_HELP_VIEW_POPOVER_KEY, DEFAULT_DBX_LINKIFY_STRING_TYPE, DEFAULT_DBX_LIST_ACCORDION_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_GRID_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_ITEM_DISABLE_FUNCTION, DEFAULT_DBX_LIST_ITEM_IS_SELECTED_FUNCTION, DEFAULT_DBX_LIST_SCROLL_DISTANCE, DEFAULT_DBX_LIST_THROTTLE_SCROLL, DEFAULT_DBX_LIST_VIEW_META_ICON, DEFAULT_DBX_PROMPT_CONFIRM_DIALOG_CONFIG, DEFAULT_DBX_SELECTION_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_SIDENAV_MENU_ICON, DEFAULT_DBX_STYLE_CONFIG_TOKEN, DEFAULT_DBX_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_DIALOG_WITH_COMPONENT_FUNCTION, DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_PREVIEW_COMPONENT_FUNCTION, DEFAULT_ERROR_POPOVER_KEY, DEFAULT_ERROR_WIDGET_CODE, DEFAULT_FILTER_POPOVER_KEY, DEFAULT_LIST_GRID_SIZE_CONFIG, DEFAULT_LIST_WRAPPER_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_LOADING_PROGRESS_DIAMETER, DEFAULT_PDF_MERGE_ACCEPT, DEFAULT_SCREEN_MEDIA_SERVICE_CONFIG, DEFAULT_SNACKBAR_DIRECTIVE_DURATION, DEFAULT_TWO_COLUMNS_MIN_RIGHT_WIDTH, DEFAULT_VALUE_LIST_VIEW_CONTENT_COMPONENT_TRACK_BY_FUNCTION, DbxAccordionHeaderHeightDirective, DbxActionConfirmDirective, DbxActionDialogDirective, DbxActionErrorDirective, DbxActionKeyTriggerDirective, DbxActionLoadingContextDirective, DbxActionModule, DbxActionPopoverDirective, DbxActionSnackbarComponent, DbxActionSnackbarDirective, DbxActionSnackbarErrorDirective, DbxActionSnackbarModule, DbxActionSnackbarService, DbxActionTransitionSafetyDirective, DbxActionUIRouterTransitionSafetyDialogComponent, DbxAnchorComponent, DbxAnchorContentComponent, DbxAnchorIconComponent, DbxAnchorListComponent, DbxAngularRouterSegueAnchorComponent, DbxAvatarComponent, DbxAvatarViewService, DbxAvatarViewServiceConfig, DbxBarDirective, DbxBarHeaderComponent, DbxBarLayoutModule, DbxBasicLoadingComponent, DbxBodyDirective, DbxButtonComponent, DbxButtonModule, DbxButtonSpacerDirective, DbxCardBoxComponent, DbxCardBoxContainerDirective, DbxCardBoxLayoutModule, DbxChipDirective, DbxChipListComponent, DbxClickToCopyTextComponent, DbxClickToCopyTextDirective, DbxColorDirective, DbxColorService, DbxColorServiceConfig, DbxColumnLayoutModule, DbxCompactDirective, DbxCompactLayoutModule, DbxContentBorderDirective, DbxContentBoxDirective, DbxContentContainerDirective, DbxContentDirective, DbxContentElevateDirective, DbxContentLayoutModule, DbxContentPageDirective, DbxContentPitDirective, DbxDetachContentComponent, DbxDetachControlButtonsComponent, DbxDetachController, DbxDetachControlsComponent, DbxDetachInitDirective, DbxDetachInteractionModule, DbxDetachOutletComponent, DbxDetachOverlayComponent, DbxDetachService, DbxDetachWindowState, DbxDetailBlockComponent, DbxDetailBlockHeaderComponent, DbxDialogContentCloseComponent, DbxDialogContentDirective, DbxDialogContentFooterComponent, DbxDialogInteractionModule, DbxDialogModule, DbxDownloadBlobButtonComponent, DbxDownloadTextViewComponent, DbxEmbedComponent, DbxErrorComponent, DbxErrorDefaultErrorWidgetComponent, DbxErrorDetailsComponent, DbxErrorPopoverComponent, DbxErrorSnackbarComponent, DbxErrorSnackbarService, DbxErrorViewComponent, DbxErrorWidgetService, DbxErrorWidgetViewComponent, DbxFileUploadActionCompatable, DbxFileUploadActionSyncDirective, DbxFileUploadAreaComponent, DbxFileUploadButtonComponent, DbxFileUploadComponent, DbxFilterInteractionModule, DbxFilterPopoverButtonComponent, DbxFilterPopoverComponent, DbxFilterWrapperComponent, DbxFlagComponent, DbxFlagLayoutModule, DbxFlagPromptComponent, DbxFlexGroupDirective, DbxFlexLayoutModule, DbxFlexSizeDirective, DbxHelpContextDirective, DbxHelpContextService, DbxHelpViewListComponent, DbxHelpViewListEntryComponent, DbxHelpViewPopoverButtonComponent, DbxHelpViewPopoverComponent, DbxHelpWidgetService, DbxHelpWidgetServiceConfig, DbxIconButtonComponent, DbxIconButtonModule, DbxIconItemComponent, DbxIconSpacerDirective, DbxIconTileComponent, DbxIconTileDirective, DbxIfSidenavDisplayModeDirective, DbxIframeComponent, DbxInjectionDialogComponent, DbxInteractionModule, DbxIntroActionSectionComponent, DbxLabelBlockComponent, DbxLayoutModule, DbxLinkComponent, DbxLinkifyComponent, DbxLinkifyService, DbxLinkifyServiceConfig, DbxListAccordionViewComponentImportsModule, DbxListComponent, DbxListEmptyContentComponent, DbxListGridViewComponentImportsModule, DbxListInternalContentDirective, DbxListItemAnchorModifierDirective, DbxListItemDisableRippleModifierDirective, DbxListItemIsSelectedModifierDirective, DbxListModifierModule, DbxListModule, DbxListTitleGroupDirective, DbxListView, DbxListViewMetaIconComponent, DbxListViewWrapper, DbxListWrapperComponentImportsModule, DbxLoadingComponent, DbxLoadingErrorDirective, DbxLoadingModule, DbxLoadingProgressComponent, DbxModelObjectStateService, actions as DbxModelStateActions, model_actions as DbxModelStateModelActions, DbxModelTrackerService, DbxModelTypesService, DbxModelViewTrackerStorage, DbxNavbarComponent, DbxNumberWithLimitComponent, DbxOneColumnComponent, DbxOneColumnLayoutModule, DbxPagebarComponent, DbxPartialPresetFilterListComponent, DbxPartialPresetFilterMenuComponent, DbxPdfMergeEditorComponent, DbxPdfMergeEditorFileUploadComponent, DbxPdfMergeEditorFileUploadHasStateDirective, DbxPdfMergeEditorFileUploadValidatorDirective, DbxPdfMergeEditorStore, DbxPdfMergeEntryComponent, DbxPdfMergeListComponent, DbxPdfPreviewComponent, DbxPopoverCloseButtonComponent, DbxPopoverComponent, DbxPopoverComponentController, DbxPopoverContentComponent, DbxPopoverController, DbxPopoverControlsDirective, DbxPopoverCoordinatorComponent, DbxPopoverCoordinatorService, DbxPopoverHeaderComponent, DbxPopoverInteractionContentModule, DbxPopoverInteractionModule, DbxPopoverScrollContentDirective, DbxPopoverService, DbxPopupComponent, DbxPopupComponentController, DbxPopupContentComponent, DbxPopupControlButtonsComponent, DbxPopupController, DbxPopupControlsComponent, DbxPopupCoordinatorComponent, DbxPopupCoordinatorService, DbxPopupInteractionModule, DbxPopupService, DbxPopupWindowState, DbxPresetFilterListComponent, DbxPresetFilterMenuComponent, DbxProgressBarButtonComponent, DbxProgressButtonsModule, DbxProgressSpinnerButtonComponent, DbxPromptBoxDirective, DbxPromptComponent, DbxPromptConfirm, DbxPromptConfirmButtonDirective, DbxPromptConfirmComponent, DbxPromptConfirmDialogComponent, DbxPromptConfirmDirective, DbxPromptModule, DbxPromptPageComponent, DbxReadableErrorModule, DbxResizedDirective, DbxRouterAnchorModule, DbxRouterLayoutModule, DbxRouterSidenavModule, DbxRouterWebProviderConfig, DbxScreenMediaService, DbxScreenMediaServiceConfig, DbxSectionComponent, DbxSectionHeaderComponent, DbxSectionLayoutModule, DbxSectionPageComponent, DbxSelectionValueListViewComponent, DbxSelectionValueListViewComponentImportsModule, DbxSelectionValueListViewContentComponent, DbxSetStyleDirective, DbxSidenavButtonComponent, DbxSidenavComponent, DbxSidenavPageComponent, DbxSidenavPagebarComponent, DbxSpacerDirective, DbxStepBlockComponent, DbxStructureDirective, DbxStructureModule, DbxStyleBodyDirective, DbxStyleDirective, DbxStyleLayoutModule, DbxStyleService, DbxSubSectionComponent, DbxTextChipsComponent, DbxTextColorDirective, DbxTextModule, DbxTwoBlockComponent, DbxTwoColumnBackDirective, DbxTwoColumnColumnHeadDirective, DbxTwoColumnComponent, DbxTwoColumnContextDirective, DbxTwoColumnFullLeftDirective, DbxTwoColumnLayoutModule, DbxTwoColumnRightComponent, DbxTwoColumnSrefDirective, DbxTwoColumnSrefShowRightDirective, DbxUIRouterSegueAnchorComponent, DbxUnitedStatesAddressComponent, DbxValueListAccordionViewComponent, DbxValueListAccordionViewContentComponent, DbxValueListAccordionViewContentGroupComponent, DbxValueListGridSizeDirective, DbxValueListGridViewComponent, DbxValueListGridViewContentComponent, DbxValueListGridViewContentGroupComponent, DbxValueListItemModifier, DbxValueListItemModifierDirective, DbxValueListView, DbxValueListViewComponent, DbxValueListViewComponentImportsModule, DbxValueListViewContentComponent, DbxValueListViewContentGroupComponent, DbxValueListViewGroupDelegate, DbxWebFilePreviewComponent, DbxWebFilePreviewService, DbxWebModule, DbxWebPageTitleInfoDirective, DbxWebPageTitleService, DbxWidgetListGridComponent, DbxWidgetListGridViewComponent, DbxWidgetListGridViewItemComponent, DbxWidgetService, DbxWidgetViewComponent, DbxWindowKeyDownListenerDirective, DbxZipBlobPreviewComponent, DbxZipPreviewComponent, PDF_MERGE_RESULT_MIME_TYPE, PopoverPositionStrategy, PopupGlobalPositionStrategy, SCREEN_MEDIA_WIDTH_TYPE_SIZE_MAP, SIDE_NAV_DISPLAY_MODE_ORDER, SideNavDisplayMode, TRACK_BY_MODEL_ID, TRACK_BY_MODEL_KEY, TwoColumnsContextStore, UNKNOWN_ERROR_WIDGET_CODE, addConfigToValueListItems, allDbxModelViewTrackerEventModelKeys, allDbxModelViewTrackerEventSetModelKeys, buildPdfMergeEntry, catchErrorServerParams, classifyPdfMergeFile, compactModeFromInput, compareScreenMediaWidthTypes, convertServerErrorParams, convertToPOJOServerErrorResponse, convertToServerErrorResponse, copyToClipboardFunction, dbxColorBackground, dbxListAccordionViewComponentImportsAndExports, dbxListGridViewComponentImportsAndExports, dbxPresetFilterMenuButtonIconObservable, dbxPresetFilterMenuButtonTextObservable, dbxStyleClassCleanSuffix, dbxThemeColorCssToken, dbxThemeColorCssTokenVar, dbxThemeColorCssVariable, dbxThemeColorCssVariableVar, dbxValueListItemDecisionFunction, dbxValueListItemKeyForItemValue, dbxWebDefaultPageTitleDelegate, dbxZipBlobPreviewEntryTreeFromEntries, defaultDbxModelViewTrackerStorageAccessorFactory, defaultDbxValueListViewGroupDelegate, defaultDbxValueListViewGroupValuesFunction, disableRightClickInCdkBackdrop, fileAcceptFilterTypeStringArray, fileAcceptFunction, fileAcceptString, fileArrayAcceptMatchFunction, flattenAccordionGroups, index as fromDbxModel, injectCopyToClipboardFunction, injectCopyToClipboardFunctionWithSnackbarMessage, isDbxColorConfig, listItemModifier, makeDbxActionSnackbarDisplayConfigGeneratorFunction, mapCompactModeObs, mapValuesToValuesListItemConfigObs, mergePdfMergeEntries, index$1 as onDbxModel, openEmbedDialog, openIframeDialog, openPdfPreviewDialog, openZipPreviewDialog, overrideClickElementEffect, provideDbxDetachController, provideDbxFileUploadActionCompatable, provideDbxHelpServices, provideDbxLinkify, provideDbxListView, provideDbxListViewWrapper, provideDbxModelService, provideDbxProgressButtonGlobalConfig, provideDbxPromptConfirm, provideDbxRouterWebAngularRouterProviderConfig, provideDbxRouterWebUiRouterProviderConfig, provideDbxScreenMediaService, provideDbxStyleService, provideDbxValueListView, provideDbxValueListViewGroupDelegate, provideDbxValueListViewModifier, provideDbxWebFilePreviewServiceEntries, provideDbxWebPageTitleService, provideTwoColumnsContext, registerHelpContextKeysWithDbxHelpContextService, resizeSignal, resolveSideNavDisplayMode, sanitizeDbxDialogContentConfig, screenMediaWidthTypeIsActive, trackByModelKeyRef, trackByUniqueIdentifier, validatePdfMergeEntry };
|
|
18457
18610
|
//# sourceMappingURL=dereekb-dbx-web.mjs.map
|