@dereekb/dbx-web 12.3.2 → 12.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/esm2022/lib/action/action.confirm.directive.mjs +4 -1
  2. package/esm2022/lib/action/snackbar/action.snackbar.component.mjs +2 -2
  3. package/esm2022/lib/action/transition/transition.safety.dialog.component.mjs +2 -2
  4. package/esm2022/lib/button/button.component.mjs +15 -9
  5. package/esm2022/lib/extension/download/text/download.text.component.mjs +2 -2
  6. package/esm2022/lib/interaction/filter/filter.wrapper.component.mjs +2 -2
  7. package/esm2022/lib/interaction/popup/popup.controls.buttons.component.mjs +1 -1
  8. package/esm2022/lib/interaction/prompt/prompt.confirm.dialog.component.mjs +2 -2
  9. package/esm2022/lib/interaction/prompt/prompt.confirm.directive.mjs +9 -10
  10. package/esm2022/lib/layout/text/detail.block.component.mjs +6 -5
  11. package/esm2022/lib/layout/text/detail.block.header.component.mjs +29 -7
  12. package/esm2022/lib/layout/text/index.mjs +2 -1
  13. package/esm2022/lib/layout/text/number.limit.component.mjs +82 -0
  14. package/esm2022/lib/layout/text/text.module.mjs +4 -3
  15. package/fesm2022/dereekb-dbx-web.mjs +144 -35
  16. package/fesm2022/dereekb-dbx-web.mjs.map +1 -1
  17. package/lib/action/action.confirm.directive.d.ts +1 -0
  18. package/lib/button/_button.scss +12 -0
  19. package/lib/button/button.component.d.ts +17 -2
  20. package/lib/interaction/dialog/_dialog.scss +29 -0
  21. package/lib/interaction/prompt/prompt.confirm.directive.d.ts +3 -5
  22. package/lib/layout/text/_text.scss +23 -1
  23. package/lib/layout/text/detail.block.component.d.ts +2 -1
  24. package/lib/layout/text/detail.block.header.component.d.ts +2 -1
  25. package/lib/layout/text/index.d.ts +1 -0
  26. package/lib/layout/text/number.limit.component.d.ts +40 -0
  27. package/lib/layout/text/text.module.d.ts +9 -8
  28. package/package.json +1 -1
@@ -25,6 +25,7 @@ export declare class DbxActionConfirmDirective<T = unknown, O = unknown> extends
25
25
  private readonly _sourceSubscription;
26
26
  ngOnInit(): void;
27
27
  ngOnDestroy(): void;
28
+ protected getDefaultDialogConfig(): Maybe<DbxPromptConfirmConfig>;
28
29
  protected _handleDialogResult(result: boolean): boolean;
29
30
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxActionConfirmDirective<any, any>, never>;
30
31
  static ɵdir: i0.ɵɵDirectiveDeclaration<DbxActionConfirmDirective<any, any>, "[dbxActionConfirm]", never, { "dbxActionConfirm": { "alias": "dbxActionConfirm"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
@@ -23,6 +23,18 @@ $big-button-height: 46px; // 33% bigger
23
23
  }
24
24
  }
25
25
 
26
+ .dbx-button-wrap-group {
27
+ > dbx-button {
28
+ display: inline-block;
29
+ padding: 0 6px 6px 0;
30
+ }
31
+
32
+ > button,
33
+ > dbx-icon-button {
34
+ margin: 0 6px 6px 0;
35
+ }
36
+ }
37
+
26
38
  dbx-button.dbx-w100,
27
39
  dbx-button.dbx-button-wide {
28
40
  // when using dbx-w100 with dbx-button, make the button full width
@@ -1,8 +1,22 @@
1
+ import { ThemePalette } from '@angular/material/core';
1
2
  import { AbstractDbxButtonDirective } from '@dereekb/dbx-core';
2
3
  import { type Maybe } from '@dereekb/util';
3
4
  import { DbxProgressButtonConfig } from './progress/button.progress.config';
5
+ import { type DbxThemeColor } from '../layout/style/style';
4
6
  import * as i0 from "@angular/core";
5
7
  export type DbxButtonType = 'basic' | 'raised' | 'stroked' | 'flat' | 'icon';
8
+ /**
9
+ * Style details for the button
10
+ */
11
+ export interface DbxButtonStyle {
12
+ readonly type?: DbxButtonType;
13
+ readonly color?: ThemePalette | DbxThemeColor;
14
+ readonly spinnerColor?: ThemePalette | DbxThemeColor;
15
+ readonly customButtonColor?: string;
16
+ readonly customTextColor?: string;
17
+ readonly customSpinnerColor?: string;
18
+ readonly fab?: boolean;
19
+ }
6
20
  /**
7
21
  * @deprecated use DbxButtonType instead.
8
22
  */
@@ -17,6 +31,7 @@ export declare enum DbxButtonDisplayType {
17
31
  */
18
32
  export declare class DbxButtonComponent extends AbstractDbxButtonDirective {
19
33
  readonly type: import("@angular/core").InputSignal<Maybe<DbxButtonType>>;
34
+ readonly style: import("@angular/core").InputSignal<Maybe<DbxButtonStyle>>;
20
35
  readonly color: import("@angular/core").InputSignal<"primary" | "accent" | "warn" | "notice" | "ok" | "success" | "grey" | "background" | "disabled" | undefined>;
21
36
  readonly spinnerColor: import("@angular/core").InputSignal<"primary" | "accent" | "warn" | "notice" | "ok" | "success" | "grey" | "background" | "disabled" | undefined>;
22
37
  readonly customButtonColor: import("@angular/core").InputSignal<Maybe<string>>;
@@ -28,8 +43,8 @@ export declare class DbxButtonComponent extends AbstractDbxButtonDirective {
28
43
  readonly flat: import("@angular/core").InputSignalWithTransform<boolean, Maybe<boolean | "">>;
29
44
  readonly iconOnly: import("@angular/core").InputSignalWithTransform<boolean, Maybe<boolean | "">>;
30
45
  readonly fab: import("@angular/core").InputSignalWithTransform<boolean, Maybe<boolean | "">>;
31
- readonly typeSignal: import("@angular/core").Signal<"flat" | "icon" | "basic" | "raised" | "stroked">;
46
+ readonly typeSignal: import("@angular/core").Signal<DbxButtonType>;
32
47
  readonly configSignal: import("@angular/core").Signal<DbxProgressButtonConfig>;
33
48
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxButtonComponent, never>;
34
- static ɵcmp: i0.ɵɵComponentDeclaration<DbxButtonComponent, "dbx-button", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "spinnerColor": { "alias": "spinnerColor"; "required": false; "isSignal": true; }; "customButtonColor": { "alias": "customButtonColor"; "required": false; "isSignal": true; }; "customTextColor": { "alias": "customTextColor"; "required": false; "isSignal": true; }; "customSpinnerColor": { "alias": "customSpinnerColor"; "required": false; "isSignal": true; }; "basic": { "alias": "basic"; "required": false; "isSignal": true; }; "raised": { "alias": "raised"; "required": false; "isSignal": true; }; "stroked": { "alias": "stroked"; "required": false; "isSignal": true; }; "flat": { "alias": "flat"; "required": false; "isSignal": true; }; "iconOnly": { "alias": "iconOnly"; "required": false; "isSignal": true; }; "fab": { "alias": "fab"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
49
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxButtonComponent, "dbx-button", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "style": { "alias": "style"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "spinnerColor": { "alias": "spinnerColor"; "required": false; "isSignal": true; }; "customButtonColor": { "alias": "customButtonColor"; "required": false; "isSignal": true; }; "customTextColor": { "alias": "customTextColor"; "required": false; "isSignal": true; }; "customSpinnerColor": { "alias": "customSpinnerColor"; "required": false; "isSignal": true; }; "basic": { "alias": "basic"; "required": false; "isSignal": true; }; "raised": { "alias": "raised"; "required": false; "isSignal": true; }; "stroked": { "alias": "stroked"; "required": false; "isSignal": true; }; "flat": { "alias": "flat"; "required": false; "isSignal": true; }; "iconOnly": { "alias": "iconOnly"; "required": false; "isSignal": true; }; "fab": { "alias": "fab"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
35
50
  }
@@ -16,6 +16,35 @@ $dbx-dialog-content-close-right-offset: $dbx-dialog-content-close-edge-padding;
16
16
  padding: $mat-dialog-container-padding;
17
17
  }
18
18
 
19
+ .dbx-dialog-content-with-header {
20
+ height: 100%;
21
+ $dbx-dialog-content-header-height: 22px;
22
+ $dbx-dialog-content-header-padding: 18px;
23
+
24
+ .dbx-dialog-content-close.dbx-dialog-content-close-padding {
25
+ padding-bottom: 12px;
26
+ }
27
+
28
+ .dbx-dialog-content-header {
29
+ height: $dbx-dialog-content-header-height;
30
+ margin: 0;
31
+ }
32
+
33
+ &.dbx-p0 .dbx-dialog-content-header {
34
+ padding: $dbx-dialog-content-header-padding 0;
35
+ }
36
+
37
+ // h3 gets padded away from edge
38
+ &.dbx-p0 h3.dbx-dialog-content-header {
39
+ padding-left: $dbx-dialog-content-header-padding/2;
40
+ }
41
+
42
+ // add case specifically for dbx-two-column
43
+ .dbx-two-column {
44
+ height: calc(100% - ($dbx-dialog-content-header-height + ($dbx-dialog-content-header-padding * 2)));
45
+ }
46
+ }
47
+
19
48
  .dbx-dialog-content.normal-dialog-content {
20
49
  min-width: unset;
21
50
  }
@@ -11,11 +11,9 @@ export declare abstract class AbstractPromptConfirmDirective implements DbxPromp
11
11
  protected readonly matDialog: MatDialog;
12
12
  private _currentDialogRef?;
13
13
  private _currentDialogPromise?;
14
- /**
15
- * Config used when showDialog() is called.
16
- */
17
- config?: Maybe<DbxPromptConfirmConfig>;
14
+ protected abstract getDefaultDialogConfig(): Maybe<DbxPromptConfirmConfig>;
18
15
  showDialog(): Observable<boolean>;
16
+ protected showDialogWithConfig(config: Maybe<DbxPromptConfirmConfig>): Observable<boolean>;
19
17
  protected _handleDialogResult(result: boolean): boolean;
20
18
  static ɵfac: i0.ɵɵFactoryDeclaration<AbstractPromptConfirmDirective, never>;
21
19
  static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractPromptConfirmDirective, never, never, {}, {}, never, never, false, never>;
@@ -25,7 +23,7 @@ export declare abstract class AbstractPromptConfirmDirective implements DbxPromp
25
23
  */
26
24
  export declare class DbxPromptConfirmDirective extends AbstractPromptConfirmDirective {
27
25
  readonly dbxPromptConfirm: import("@angular/core").InputSignal<Maybe<DbxPromptConfirmConfig>>;
28
- protected readonly _dbxPromptConfirmConfigEffect: import("@angular/core").EffectRef;
26
+ protected getDefaultDialogConfig(): Maybe<DbxPromptConfirmConfig>;
29
27
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxPromptConfirmDirective, never>;
30
28
  static ɵdir: i0.ɵɵDirectiveDeclaration<DbxPromptConfirmDirective, "[dbxPromptConfirm]", never, { "dbxPromptConfirm": { "alias": "dbxPromptConfirm"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
31
29
  }
@@ -78,6 +78,12 @@ $dbx-detail-block-content-offset: 30px;
78
78
  padding-top: 3px;
79
79
  }
80
80
 
81
+ .dbx-detail-block-header.dbx-detail-block-header-align {
82
+ .dbx-detail-block-header-label {
83
+ white-space: pre;
84
+ }
85
+ }
86
+
81
87
  .dbx-detail-block {
82
88
  display: block;
83
89
 
@@ -213,12 +219,28 @@ $dbx-detail-block-content-offset: 30px;
213
219
 
214
220
  .dbx-outlined-text {
215
221
  color: $text-color;
216
- text-shadow: -1px -1px 0 $outlined-text-color, 1px -1px 0 $outlined-text-color, -1px 1px 0 $outlined-text-color, 1px 1px 0 $outlined-text-color;
222
+ text-shadow:
223
+ -1px -1px 0 $outlined-text-color,
224
+ 1px -1px 0 $outlined-text-color,
225
+ -1px 1px 0 $outlined-text-color,
226
+ 1px 1px 0 $outlined-text-color;
217
227
  }
218
228
 
219
229
  .dbx-nowrap {
220
230
  white-space: nowrap;
221
231
  }
232
+
233
+ .dbx-number-with-limit {
234
+ padding: 2px 6px;
235
+
236
+ .dbx-number-with-limit-divider {
237
+ margin: 0 3px;
238
+ }
239
+ }
240
+
241
+ .dbx-number-with-limit-rounded {
242
+ border-radius: 12px;
243
+ }
222
244
  }
223
245
 
224
246
  @mixin typography($theme-config-or-typography-config) {
@@ -6,6 +6,7 @@ import * as i0 from "@angular/core";
6
6
  export declare class DbxDetailBlockComponent {
7
7
  readonly icon: import("@angular/core").InputSignal<Maybe<string>>;
8
8
  readonly header: import("@angular/core").InputSignal<Maybe<string>>;
9
+ readonly alignHeader: import("@angular/core").InputSignal<boolean>;
9
10
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxDetailBlockComponent, never>;
10
- static ɵcmp: i0.ɵɵComponentDeclaration<DbxDetailBlockComponent, "dbx-detail-block", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; }, {}, never, ["[header]", "*"], true, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxDetailBlockComponent, "dbx-detail-block", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; "alignHeader": { "alias": "alignHeader"; "required": false; "isSignal": true; }; }, {}, never, ["[header]", "*"], true, never>;
11
12
  }
@@ -3,6 +3,7 @@ import * as i0 from "@angular/core";
3
3
  export declare class DbxDetailBlockHeaderComponent {
4
4
  readonly icon: import("@angular/core").InputSignal<Maybe<string>>;
5
5
  readonly header: import("@angular/core").InputSignal<Maybe<string>>;
6
+ readonly alignHeader: import("@angular/core").InputSignal<boolean>;
6
7
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxDetailBlockHeaderComponent, never>;
7
- static ɵcmp: i0.ɵɵComponentDeclaration<DbxDetailBlockHeaderComponent, "dbx-detail-block-header", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
8
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxDetailBlockHeaderComponent, "dbx-detail-block-header", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; "alignHeader": { "alias": "alignHeader"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
8
9
  }
@@ -6,4 +6,5 @@ export * from './label.block.component';
6
6
  export * from './linkify.component';
7
7
  export * from './text.chip.directive';
8
8
  export * from './text.chips.component';
9
+ export * from './number.limit.component';
9
10
  export * from './text.module';
@@ -0,0 +1,40 @@
1
+ import { Maybe } from '@dereekb/util';
2
+ import { DbxThemeColor } from '../style/style';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Configuration for the DbxNumberWithLimitComponent.
6
+ */
7
+ export interface NumberWithLimit<T extends number> {
8
+ /**
9
+ * Number to display, if applicable.
10
+ */
11
+ readonly value: T;
12
+ /**
13
+ * Limit to display, if applicable.
14
+ */
15
+ readonly limit?: Maybe<T>;
16
+ /**
17
+ * Function to format the input number(s) to a string before being displayed, if applicable.
18
+ */
19
+ readonly formatNumber?: Maybe<(number: T) => string>;
20
+ /**
21
+ * Prefix to add before the value
22
+ */
23
+ readonly prefix?: Maybe<string>;
24
+ /**
25
+ * Suffix to add after the value
26
+ */
27
+ readonly suffix?: Maybe<string>;
28
+ }
29
+ export declare class DbxNumberWithLimitComponent<T extends number> {
30
+ readonly number: import("@angular/core").InputSignal<NumberWithLimit<T> | undefined>;
31
+ readonly rounded: import("@angular/core").InputSignal<boolean | undefined>;
32
+ readonly valueSignal: import("@angular/core").Signal<string | T | undefined>;
33
+ readonly limitSignal: import("@angular/core").Signal<string | T | undefined>;
34
+ readonly hasLimitSignal: import("@angular/core").Signal<boolean>;
35
+ readonly prefixSignal: import("@angular/core").Signal<Maybe<string>>;
36
+ readonly suffixSignal: import("@angular/core").Signal<Maybe<string>>;
37
+ readonly colorSignal: import("@angular/core").Signal<Maybe<DbxThemeColor>>;
38
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxNumberWithLimitComponent<any>, never>;
39
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxNumberWithLimitComponent<any>, "dbx-number-with-limit", never, { "number": { "alias": "number"; "required": false; "isSignal": true; }; "rounded": { "alias": "rounded"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
40
+ }
@@ -1,14 +1,15 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./address.component";
3
- import * as i2 from "./text.chip.directive";
4
- import * as i3 from "./detail.block.component";
5
- import * as i4 from "./detail.block.header.component";
6
- import * as i5 from "./label.block.component";
7
- import * as i6 from "./linkify.component";
8
- import * as i7 from "./text.chips.component";
9
- import * as i8 from "./icon.spacer.component";
3
+ import * as i2 from "./number.limit.component";
4
+ import * as i3 from "./text.chip.directive";
5
+ import * as i4 from "./detail.block.component";
6
+ import * as i5 from "./detail.block.header.component";
7
+ import * as i6 from "./label.block.component";
8
+ import * as i7 from "./linkify.component";
9
+ import * as i8 from "./text.chips.component";
10
+ import * as i9 from "./icon.spacer.component";
10
11
  export declare class DbxTextModule {
11
12
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxTextModule, never>;
12
- static ɵmod: i0.ɵɵNgModuleDeclaration<DbxTextModule, never, [typeof i1.DbxUnitedStatesAddressComponent, typeof i2.DbxChipDirective, typeof i3.DbxDetailBlockComponent, typeof i4.DbxDetailBlockHeaderComponent, typeof i5.DbxLabelBlockComponent, typeof i6.DbxLinkifyComponent, typeof i7.DbxTextChipsComponent, typeof i8.DbxIconSpacerDirective], [typeof i1.DbxUnitedStatesAddressComponent, typeof i2.DbxChipDirective, typeof i3.DbxDetailBlockComponent, typeof i4.DbxDetailBlockHeaderComponent, typeof i5.DbxLabelBlockComponent, typeof i6.DbxLinkifyComponent, typeof i7.DbxTextChipsComponent, typeof i8.DbxIconSpacerDirective]>;
13
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DbxTextModule, never, [typeof i1.DbxUnitedStatesAddressComponent, typeof i2.DbxNumberWithLimitComponent, typeof i3.DbxChipDirective, typeof i4.DbxDetailBlockComponent, typeof i5.DbxDetailBlockHeaderComponent, typeof i6.DbxLabelBlockComponent, typeof i7.DbxLinkifyComponent, typeof i8.DbxTextChipsComponent, typeof i9.DbxIconSpacerDirective], [typeof i1.DbxUnitedStatesAddressComponent, typeof i2.DbxNumberWithLimitComponent, typeof i3.DbxChipDirective, typeof i4.DbxDetailBlockComponent, typeof i5.DbxDetailBlockHeaderComponent, typeof i6.DbxLabelBlockComponent, typeof i7.DbxLinkifyComponent, typeof i8.DbxTextChipsComponent, typeof i9.DbxIconSpacerDirective]>;
13
14
  static ɵinj: i0.ɵɵInjectorDeclaration<DbxTextModule>;
14
15
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/dbx-web",
3
- "version": "12.3.2",
3
+ "version": "12.3.3",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^18.0.0",
6
6
  "@angular/core": "^18.0.0",