novo-elements 13.2.0-next.11 → 13.2.0-next.13

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.
@@ -39,6 +39,14 @@
39
39
  }
40
40
  }
41
41
 
42
+ :host-context(:root[data-theme='bh2026']) {
43
+ ::ng-deep .cke {
44
+ border: 1px solid var(--card-color-border-default, #dee0e3);
45
+ border-radius: var(--field-border-radius-default, 0.4rem);
46
+ overflow: hidden;
47
+ }
48
+ }
49
+
42
50
  :host-context(.theme-dark) {
43
51
  ::ng-deep .cke_button {
44
52
  filter: invert(1);
@@ -840,6 +840,9 @@ control-prompt-modal {
840
840
  letter-spacing: var(--typography-input-label-sm-letter-spacing);
841
841
  text-transform: var(--typography-input-label-sm-text-transform);
842
842
  color: var(--color-text-body) !important;
843
+ margin-right: var(--spacing-gap-lg);
844
+ max-width: 128px;
845
+ min-width: 128px;
843
846
  }
844
847
  .novo-control-outer-container input:not([type='checkbox']):not([type='radio']) {
845
848
  font-size: var(--typography-input-value-default-font-size) !important;
@@ -864,4 +867,64 @@ control-prompt-modal {
864
867
  color: var(--color-text-subtle);
865
868
  }
866
869
  }
870
+
871
+ .novo-fieldset-container.card-section,
872
+ novo-form .novo-form-container.card-section {
873
+ border-radius: var(--border-radius-md);
874
+ border: 1px solid var(--color-border-default);
875
+ box-shadow: 0 4px 8px 0 var(--color-transparency-charcoal-charcoal-08);
876
+ background: var(--color-background-default);
877
+ padding-bottom: var(--spacing-padding-md);
878
+ overflow: hidden;
879
+ display: flex;
880
+ flex-direction: column;
881
+ gap: var(--spacing-gap-md);
882
+
883
+ .novo-form-row {
884
+ padding-left: var(--spacing-padding-lg);
885
+ padding-right: var(--spacing-padding-lg);
886
+ }
887
+
888
+ novo-control,
889
+ novo-custom-control-container {
890
+ margin-top: 0 !important;
891
+ }
892
+ }
893
+
894
+ .novo-fieldset-container.card-section {
895
+ padding-top: 0;
896
+ padding-left: 0;
897
+ padding-right: 0;
898
+ margin-bottom: 0;
899
+
900
+ &:not(:has(> novo-fieldset-header)) {
901
+ padding-top: var(--spacing-padding-md);
902
+ }
903
+ }
904
+
905
+ novo-form .novo-form-container.card-section {
906
+ padding-top: var(--spacing-padding-md);
907
+ }
908
+
909
+ novo-form,
910
+ novo-dynamic-form {
911
+ max-width: 720px;
912
+ width: 100%;
913
+ margin-left: auto;
914
+ margin-right: auto;
915
+ }
916
+
917
+ .novo-form-container form {
918
+ display: flex;
919
+ flex-direction: column;
920
+ gap: var(--spacing-gutter);
921
+
922
+ novo-fieldset {
923
+ margin-top: 0;
924
+ }
925
+ }
926
+
927
+ .novo-form-row.hidden {
928
+ display: none;
929
+ }
867
930
  }
@@ -15,3 +15,38 @@
15
15
  display: none;
16
16
  }
17
17
  }
18
+
19
+ :host-context([data-theme='bh2026'] .card-section) {
20
+ margin-top: 0;
21
+ margin-bottom: 0;
22
+ margin-left: 0;
23
+ margin-right: 0;
24
+ padding: var(--spacing-padding-md) var(--spacing-padding-lg);
25
+ background: var(--background-bright);
26
+ border-bottom: 1px solid var(--color-border-default);
27
+ align-items: center;
28
+ gap: var(--spacing-gap-sm);
29
+ font-size: var(--typography-title-small-font-size, 1.8rem);
30
+ font-weight: 600;
31
+ line-height: var(--typography-title-small-line-height, 2.4rem);
32
+ letter-spacing: var(--typography-title-small-letter-spacing, 0);
33
+ text-transform: capitalize;
34
+ color: var(--color-text-body);
35
+ > span {
36
+ flex: 1 0 0;
37
+ min-width: 0;
38
+ }
39
+ ::ng-deep novo-icon {
40
+ font-size: 1.6rem;
41
+ width: 1.6rem;
42
+ height: 1.6rem;
43
+ flex-shrink: 0;
44
+ color: var(--color-content-icon);
45
+ margin: 0;
46
+ i {
47
+ font-size: 1.6rem;
48
+ width: 1.6rem;
49
+ height: 1.6rem;
50
+ }
51
+ }
52
+ }
@@ -945,8 +945,10 @@ declare class NovoControlTemplates implements AfterViewInit {
945
945
  declare class NovoFieldsetHeaderElement {
946
946
  title: string;
947
947
  icon: string;
948
+ cardSection: boolean;
949
+ get cardIcon(): string;
948
950
  static ɵfac: i0.ɵɵFactoryDeclaration<NovoFieldsetHeaderElement, never>;
949
- static ɵcmp: i0.ɵɵComponentDeclaration<NovoFieldsetHeaderElement, "novo-fieldset-header", never, { "title": { "alias": "title"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; }, {}, never, ["*"], false, never>;
951
+ static ɵcmp: i0.ɵɵComponentDeclaration<NovoFieldsetHeaderElement, "novo-fieldset-header", never, { "title": { "alias": "title"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "cardSection": { "alias": "cardSection"; "required": false; }; }, {}, never, ["*"], false, never>;
950
952
  }
951
953
  declare class NovoFieldsetElement {
952
954
  controls: Array<any>;
@@ -958,8 +960,9 @@ declare class NovoFieldsetElement {
958
960
  isEmbedded: boolean;
959
961
  isInlineEmbedded: boolean;
960
962
  hidden: boolean;
963
+ cardSection: boolean;
961
964
  static ɵfac: i0.ɵɵFactoryDeclaration<NovoFieldsetElement, never>;
962
- static ɵcmp: i0.ɵɵComponentDeclaration<NovoFieldsetElement, "novo-fieldset", never, { "controls": { "alias": "controls"; "required": false; }; "form": { "alias": "form"; "required": false; }; "title": { "alias": "title"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "index": { "alias": "index"; "required": false; }; "autoFocus": { "alias": "autoFocus"; "required": false; }; "isEmbedded": { "alias": "isEmbedded"; "required": false; }; "isInlineEmbedded": { "alias": "isInlineEmbedded"; "required": false; }; "hidden": { "alias": "hidden"; "required": false; }; }, {}, never, never, false, never>;
965
+ static ɵcmp: i0.ɵɵComponentDeclaration<NovoFieldsetElement, "novo-fieldset", never, { "controls": { "alias": "controls"; "required": false; }; "form": { "alias": "form"; "required": false; }; "title": { "alias": "title"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "index": { "alias": "index"; "required": false; }; "autoFocus": { "alias": "autoFocus"; "required": false; }; "isEmbedded": { "alias": "isEmbedded"; "required": false; }; "isInlineEmbedded": { "alias": "isInlineEmbedded"; "required": false; }; "hidden": { "alias": "hidden"; "required": false; }; "cardSection": { "alias": "cardSection"; "required": false; }; }, {}, never, never, false, never>;
963
966
  }
964
967
  declare class NovoDynamicFormElement implements OnChanges, OnInit, AfterContentInit {
965
968
  private element;
@@ -970,6 +973,7 @@ declare class NovoDynamicFormElement implements OnChanges, OnInit, AfterContentI
970
973
  layout: string;
971
974
  hideNonRequiredFields: boolean;
972
975
  autoFocusFirstField: boolean;
976
+ readonly hasCardSections: i0.InputSignal<boolean>;
973
977
  customTemplates: QueryList<NovoTemplate>;
974
978
  private fieldsAlreadyHidden;
975
979
  allFieldsRequired: boolean;
@@ -977,10 +981,14 @@ declare class NovoDynamicFormElement implements OnChanges, OnInit, AfterContentI
977
981
  showingAllFields: boolean;
978
982
  showingRequiredFields: boolean;
979
983
  numControls: number;
984
+ private readonly theme;
985
+ readonly effectiveCardSections: i0.Signal<boolean>;
986
+ get visibleFieldsets(): NovoFieldset[];
980
987
  constructor(element: ElementRef, templates: NovoTemplateService);
981
988
  ngOnInit(): void;
982
989
  ngOnChanges(changes?: SimpleChanges): void;
983
990
  ngAfterContentInit(): void;
991
+ hasVisibleControls(fieldset: NovoFieldset): boolean;
984
992
  showAllFields(): void;
985
993
  showOnlyRequired(hideRequiredWithValue: any): void;
986
994
  get values(): any;
@@ -988,7 +996,7 @@ declare class NovoDynamicFormElement implements OnChanges, OnInit, AfterContentI
988
996
  updatedValues(): any;
989
997
  forceValidation(): void;
990
998
  static ɵfac: i0.ɵɵFactoryDeclaration<NovoDynamicFormElement, never>;
991
- static ɵcmp: i0.ɵɵComponentDeclaration<NovoDynamicFormElement, "novo-dynamic-form", never, { "controls": { "alias": "controls"; "required": false; }; "fieldsets": { "alias": "fieldsets"; "required": false; }; "form": { "alias": "form"; "required": false; }; "layout": { "alias": "layout"; "required": false; }; "hideNonRequiredFields": { "alias": "hideNonRequiredFields"; "required": false; }; "autoFocusFirstField": { "alias": "autoFocusFirstField"; "required": false; }; }, {}, ["customTemplates"], ["form-title", "form-subtitle"], false, never>;
999
+ static ɵcmp: i0.ɵɵComponentDeclaration<NovoDynamicFormElement, "novo-dynamic-form", never, { "controls": { "alias": "controls"; "required": false; }; "fieldsets": { "alias": "fieldsets"; "required": false; }; "form": { "alias": "form"; "required": false; }; "layout": { "alias": "layout"; "required": false; }; "hideNonRequiredFields": { "alias": "hideNonRequiredFields"; "required": false; }; "autoFocusFirstField": { "alias": "autoFocusFirstField"; "required": false; }; "hasCardSections": { "alias": "hasCardSections"; "required": false; "isSignal": true; }; }, {}, ["customTemplates"], ["form-title", "form-subtitle"], false, never>;
992
1000
  }
993
1001
 
994
1002
  interface AddressLookupResult {
@@ -1301,6 +1309,8 @@ declare class NovoFormElement implements AfterContentInit, OnInit {
1301
1309
  form: NovoFormGroup;
1302
1310
  layout: string;
1303
1311
  hideHeader: boolean;
1312
+ readonly hasCardSections: i0.InputSignal<boolean>;
1313
+ readonly effectiveCardSections: i0.Signal<boolean>;
1304
1314
  customTemplates: QueryList<NovoTemplate>;
1305
1315
  showingAllFields: boolean;
1306
1316
  showingRequiredFields: boolean;
@@ -1313,7 +1323,7 @@ declare class NovoFormElement implements AfterContentInit, OnInit {
1313
1323
  showOnlyRequired(hideRequiredWithValue: any): void;
1314
1324
  forceValidation(): void;
1315
1325
  static ɵfac: i0.ɵɵFactoryDeclaration<NovoFormElement, never>;
1316
- static ɵcmp: i0.ɵɵComponentDeclaration<NovoFormElement, "novo-form", never, { "form": { "alias": "form"; "required": false; }; "layout": { "alias": "layout"; "required": false; }; "hideHeader": { "alias": "hideHeader"; "required": false; }; }, {}, ["customTemplates"], ["form-title", "form-subtitle", "*"], false, never>;
1326
+ static ɵcmp: i0.ɵɵComponentDeclaration<NovoFormElement, "novo-form", never, { "form": { "alias": "form"; "required": false; }; "layout": { "alias": "layout"; "required": false; }; "hideHeader": { "alias": "hideHeader"; "required": false; }; "hasCardSections": { "alias": "hasCardSections"; "required": false; "isSignal": true; }; }, {}, ["customTemplates"], ["form-title", "form-subtitle", "*"], false, never>;
1317
1327
  }
1318
1328
 
1319
1329
  declare class NovoFormModule {
@@ -1,4 +1,4 @@
1
- $tooltip-background: var(--tooltip-background-color, #383838);
1
+ $tooltip-background: var(--tooltip-color-background-default, #3D464D);
2
2
  $tooltip-error-color: var(--color-shade-error, #b34e4d);
3
3
  $tooltip-info-color: var(--color-shade-info, #3986ac);
4
4
  $tooltip-warning-color: var(--color-shade-warning, #c09854);
@@ -25,14 +25,23 @@ $tooltip-success-color: var(--color-shade-success, #458746);
25
25
 
26
26
  :host {
27
27
  div {
28
+ display: flex;
29
+ max-width: 300px;
30
+ padding: var(--tooltip-spacing-container-medium-padding-vertical, 16px) var(--tooltip-spacing-container-medium-padding-horizontal, 16px);
31
+ justify-content: center;
32
+ align-items: flex-start;
33
+ gap: 10px;
34
+ border-radius: var(--tooltip-border-radius-medium, 8px);
28
35
  background: $tooltip-background;
29
- color: var(--color-white, #fff);
30
- border-radius: var(--border-radius-sm, 4px);
31
- padding: 8px 10px;
32
- font-size: var(--font-size-sm);
33
- line-height: 12px;
34
- white-space: nowrap;
35
- box-shadow: var(--shadow-2);
36
+ box-shadow: 0 1px 2px -1px rgba(40, 40, 40, 0.10), 0 1px 2px 0 rgba(40, 40, 40, 0.08), 0 2px 2px -1px rgba(40, 40, 40, 0.08);
37
+ color: var(--tooltip-color-content-default, #fff);
38
+ font-family: var(--typography-body-sm-font-family, Inter);
39
+ font-size: var(--typography-body-sm-font-size, 12px);
40
+ font-weight: var(--typography-body-sm-font-weight-default, 400);
41
+ line-height: var(--typography-body-sm-line-height, 16px);
42
+ letter-spacing: var(--typography-body-sm-letter-spacing, 0);
43
+ white-space: normal;
44
+ word-wrap: break-word;
36
45
 
37
46
  &.error {
38
47
  background-color: $tooltip-error-color;
@@ -117,16 +126,9 @@ $tooltip-success-color: var(--color-shade-success, #458746);
117
126
  }
118
127
 
119
128
  // Sizing
120
- &.extra-large,
121
- &.large,
122
- &.small,
123
- &.medium {
124
- white-space: normal;
125
- line-height: 1.4em;
126
- word-wrap: break-word;
127
- }
128
129
  &.extra-large {
129
130
  width: 400px;
131
+ max-width: unset;
130
132
  font-size: 1.2vh;
131
133
  }
132
134
  &.large {
@@ -139,7 +141,7 @@ $tooltip-success-color: var(--color-shade-success, #458746);
139
141
  width: 80px;
140
142
  }
141
143
  &.preline {
142
- white-space: pre-line;
144
+ flex-direction: column;
143
145
  }
144
146
 
145
147
  // Bounce
@@ -4,7 +4,8 @@ import { Overlay } from '@angular/cdk/overlay';
4
4
  import * as i3 from '@angular/common';
5
5
 
6
6
  declare class NovoTooltip {
7
- message: string;
7
+ readonly message: i0.WritableSignal<string>;
8
+ readonly messageLines: i0.Signal<string[]>;
8
9
  hidden: boolean;
9
10
  tooltipType: string;
10
11
  rounded: boolean;
@@ -227,11 +227,11 @@ class NovoCKEditorElement {
227
227
  this.instance.insertText(trimmedText);
228
228
  }
229
229
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: NovoCKEditorElement, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
230
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.19", type: NovoCKEditorElement, isStandalone: false, selector: "novo-editor", inputs: { config: "config", debounce: "debounce", name: "name", minimal: "minimal", customConfig: "customConfig", customFonts: "customFonts", startupFocus: "startupFocus", fileBrowserImageUploadUrl: "fileBrowserImageUploadUrl", disabled: "disabled", value: "value" }, outputs: { change: "change", ready: "ready", blur: "blur", focus: "focus", paste: "paste", loaded: "loaded" }, providers: [CKEDITOR_CONTROL_VALUE_ACCESSOR], viewQueries: [{ propertyName: "host", first: true, predicate: ["host"], descendants: true }], ngImport: i0, template: '<textarea [name]="name" [id]="name" #host></textarea>', isInline: true, styles: [":host ::ng-deep .cke{font:inherit!important;box-shadow:none;border-color:var(--background-muted)}:host ::ng-deep .cke .cke_top,:host ::ng-deep .cke .cke_bottom{background:var(--background-muted) none;box-shadow:none}:host ::ng-deep .cke .cke_bottom{border-top:none}.cke_dialog_background_cover{background-color:#000!important}.cke_dialog .cke_dialog_title{text-shadow:none;background:var(--background-muted) none;box-shadow:none;border-bottom:none}.cke_dialog .cke_dialog_footer{text-shadow:none;background:var(--background-muted) none;box-shadow:none;border-top:none}:host-context(.theme-dark) ::ng-deep .cke_button{filter:invert(1)}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:hover,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:active,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:focus,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button.cke_combo_on{background:var(--background-main);border:1px solid var(--border)}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button .cke_combo_text{color:#fff}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button .cke_combo_arrow{border-top-color:#fff}\n"] }); }
230
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.19", type: NovoCKEditorElement, isStandalone: false, selector: "novo-editor", inputs: { config: "config", debounce: "debounce", name: "name", minimal: "minimal", customConfig: "customConfig", customFonts: "customFonts", startupFocus: "startupFocus", fileBrowserImageUploadUrl: "fileBrowserImageUploadUrl", disabled: "disabled", value: "value" }, outputs: { change: "change", ready: "ready", blur: "blur", focus: "focus", paste: "paste", loaded: "loaded" }, providers: [CKEDITOR_CONTROL_VALUE_ACCESSOR], viewQueries: [{ propertyName: "host", first: true, predicate: ["host"], descendants: true }], ngImport: i0, template: '<textarea [name]="name" [id]="name" #host></textarea>', isInline: true, styles: [":host ::ng-deep .cke{font:inherit!important;box-shadow:none;border-color:var(--background-muted)}:host ::ng-deep .cke .cke_top,:host ::ng-deep .cke .cke_bottom{background:var(--background-muted) none;box-shadow:none}:host ::ng-deep .cke .cke_bottom{border-top:none}.cke_dialog_background_cover{background-color:#000!important}.cke_dialog .cke_dialog_title{text-shadow:none;background:var(--background-muted) none;box-shadow:none;border-bottom:none}.cke_dialog .cke_dialog_footer{text-shadow:none;background:var(--background-muted) none;box-shadow:none;border-top:none}:host-context(:root[data-theme=bh2026]) ::ng-deep .cke{border:1px solid var(--card-color-border-default, #dee0e3);border-radius:var(--field-border-radius-default, .4rem);overflow:hidden}:host-context(.theme-dark) ::ng-deep .cke_button{filter:invert(1)}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:hover,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:active,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:focus,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button.cke_combo_on{background:var(--background-main);border:1px solid var(--border)}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button .cke_combo_text{color:#fff}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button .cke_combo_arrow{border-top-color:#fff}\n"] }); }
231
231
  }
232
232
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: NovoCKEditorElement, decorators: [{
233
233
  type: Component,
234
- args: [{ selector: 'novo-editor', providers: [CKEDITOR_CONTROL_VALUE_ACCESSOR], template: '<textarea [name]="name" [id]="name" #host></textarea>', standalone: false, styles: [":host ::ng-deep .cke{font:inherit!important;box-shadow:none;border-color:var(--background-muted)}:host ::ng-deep .cke .cke_top,:host ::ng-deep .cke .cke_bottom{background:var(--background-muted) none;box-shadow:none}:host ::ng-deep .cke .cke_bottom{border-top:none}.cke_dialog_background_cover{background-color:#000!important}.cke_dialog .cke_dialog_title{text-shadow:none;background:var(--background-muted) none;box-shadow:none;border-bottom:none}.cke_dialog .cke_dialog_footer{text-shadow:none;background:var(--background-muted) none;box-shadow:none;border-top:none}:host-context(.theme-dark) ::ng-deep .cke_button{filter:invert(1)}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:hover,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:active,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:focus,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button.cke_combo_on{background:var(--background-main);border:1px solid var(--border)}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button .cke_combo_text{color:#fff}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button .cke_combo_arrow{border-top-color:#fff}\n"] }]
234
+ args: [{ selector: 'novo-editor', providers: [CKEDITOR_CONTROL_VALUE_ACCESSOR], template: '<textarea [name]="name" [id]="name" #host></textarea>', standalone: false, styles: [":host ::ng-deep .cke{font:inherit!important;box-shadow:none;border-color:var(--background-muted)}:host ::ng-deep .cke .cke_top,:host ::ng-deep .cke .cke_bottom{background:var(--background-muted) none;box-shadow:none}:host ::ng-deep .cke .cke_bottom{border-top:none}.cke_dialog_background_cover{background-color:#000!important}.cke_dialog .cke_dialog_title{text-shadow:none;background:var(--background-muted) none;box-shadow:none;border-bottom:none}.cke_dialog .cke_dialog_footer{text-shadow:none;background:var(--background-muted) none;box-shadow:none;border-top:none}:host-context(:root[data-theme=bh2026]) ::ng-deep .cke{border:1px solid var(--card-color-border-default, #dee0e3);border-radius:var(--field-border-radius-default, .4rem);overflow:hidden}:host-context(.theme-dark) ::ng-deep .cke_button{filter:invert(1)}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:hover,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:active,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button:focus,:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button.cke_combo_on{background:var(--background-main);border:1px solid var(--border)}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button .cke_combo_text{color:#fff}:host-context(.theme-dark) ::ng-deep .cke_combo a.cke_combo_button .cke_combo_arrow{border-top-color:#fff}\n"] }]
235
235
  }], ctorParameters: () => [{ type: i0.NgZone }], propDecorators: { config: [{
236
236
  type: Input
237
237
  }], debounce: [{
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-addons-ckeditor.mjs","sources":["../../../projects/novo-elements/src/addons/ckeditor/CKEditor.ts","../../../projects/novo-elements/src/addons/ckeditor/CKEditor.module.ts","../../../projects/novo-elements/src/addons/ckeditor/novo-elements-addons-ckeditor.ts"],"sourcesContent":["// NG2\nimport { AfterViewInit, Component, EventEmitter, forwardRef, Input, NgZone, OnDestroy, Output, ViewChild } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { fixCkEditorInputEvent } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst CKEDITOR_CONTROL_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoCKEditorElement),\n multi: true,\n};\n\ndeclare const CKEDITOR: any;\n\n// Prevents CKEDITOR from querying the page for all [contenteditable] elements (fixes a conflict against Codemirror Editor)\ntry {\n CKEDITOR.disableAutoInline = true;\n} catch (err) {\n // may be running in a context without CKEDITOR - ignore\n}\n\n/**\n * CKEditor component\n * Usage :\n * <novo-editor [(ngModel)]=\"data\" [config]=\"{...}\" debounce=\"500\"></novo-editor>\n */\n@Component({\n selector: 'novo-editor',\n providers: [CKEDITOR_CONTROL_VALUE_ACCESSOR],\n template: '<textarea [name]=\"name\" [id]=\"name\" #host></textarea>',\n styleUrls: ['./CKEditor.scss'],\n standalone: false,\n})\nexport class NovoCKEditorElement implements OnDestroy, AfterViewInit, ControlValueAccessor {\n @Input()\n config;\n @Input()\n debounce;\n @Input()\n name;\n @Input()\n minimal;\n @Input() customConfig: any = null;\n @Input() customFonts: string = '';\n @Input()\n startupFocus: boolean = false;\n @Input()\n fileBrowserImageUploadUrl: string = '';\n @Input()\n disabled: boolean = false;\n\n @Output()\n change = new EventEmitter();\n @Output()\n ready = new EventEmitter();\n @Output()\n blur = new EventEmitter();\n @Output()\n focus = new EventEmitter();\n @Output()\n paste = new EventEmitter();\n @Output()\n loaded = new EventEmitter();\n @ViewChild('host')\n host;\n\n _value: string = '';\n instance;\n debounceTimeout;\n private _ckEditorFixRemoveListener?: () => void;\n\n constructor(private zone: NgZone) {}\n\n get value() {\n return this._value;\n }\n\n @Input()\n set value(v) {\n if (v !== this._value) {\n this._value = v;\n this.onChange(v);\n }\n }\n\n ngOnDestroy() {\n if (this.instance) {\n this.instance.focusManager.blur(true); // Remove focus from editor\n this._ckEditorFixRemoveListener?.();\n setTimeout(() => {\n this.instance.removeAllListeners();\n const aInstance = CKEDITOR.instances[this.instance.name];\n if (aInstance) {\n aInstance.destroy();\n }\n this.instance.destroy();\n this.instance = null;\n });\n }\n }\n\n ngAfterViewInit() {\n const config = Object.assign(this.getBaseConfig(), this.config);\n if (this.startupFocus) {\n config.startupFocus = true;\n }\n if (this.disabled) {\n config.readOnly = true;\n }\n this.ckeditorInit(config);\n }\n\n updateValue(value) {\n this.zone.run(() => {\n this.value = value;\n this.onChange(value);\n this.onTouched();\n this.change.emit(value);\n });\n }\n\n private ckeditorInit(config) {\n if (!CKEDITOR) {\n console.error('Make sure to include CKEditor sources in your dependencies!');\n return;\n }\n\n // CKEditor replace textarea\n this.instance = CKEDITOR.replace(this.host.nativeElement, config);\n this._ckEditorFixRemoveListener = fixCkEditorInputEvent(this.instance);\n\n // Set initial value\n this.instance.setData(this.value);\n\n // listen for instanceReady event\n this.instance.on('instanceReady', (evt) => {\n // send the evt to the EventEmitter\n this.ready.emit(evt);\n });\n\n // CKEditor change event\n this.instance.on('change', () => {\n this.onTouched();\n const value = this.instance.getData();\n\n // Debounce update\n if (this.debounce) {\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n this.debounceTimeout = setTimeout(() => {\n this.updateValue(value);\n this.debounceTimeout = null;\n }, parseInt(this.debounce, 10));\n } else {\n this.updateValue(value);\n }\n });\n this.instance.on('blur', (event) => {\n this.blur.emit(event);\n });\n this.instance.on('focus', (event) => {\n this.focus.emit(event);\n });\n this.instance.on('paste', (event) => {\n this.paste.emit(event);\n });\n this.instance.on('loaded', (event) => {\n this.loaded.emit(event);\n });\n }\n\n getBaseConfig(): { [key: string]: any } {\n const baseConfig = {\n enterMode: CKEDITOR.ENTER_BR,\n entities: false,\n shiftEnterMode: CKEDITOR.ENTER_P,\n disableNativeSpellChecker: false,\n removePlugins: 'liststyle,tabletools,contextmenu,tableselection', // allows browser based spell checking\n extraAllowedContent: '*(*){*};table tbody tr td th[*];', // allows class names (*) and inline styles {*} for all and attributes [*] on tables\n font_names: this.customFonts ? this.customFonts :\n 'Arial/Arial, Helvetica, sans-serif;' +\n 'Calibri/Calibri, Verdana, Geneva, sans-serif;' +\n 'Comic Sans MS/Comic Sans MS, cursive;' +\n 'Courier New/Courier New, Courier, monospace;' +\n 'Georgia/Georgia, serif;' +\n 'Lucida Sans Unicode/Lucida Sans Unicode, Lucida Grande, sans-serif;' +\n 'Tahoma/Tahoma, Geneva, sans-serif;' +\n 'Times New Roman/Times New Roman, Times, serif;' +\n 'Trebuchet MS/Trebuchet MS, Helvetica, sans-serif;' +\n 'Verdana/Verdana, Geneva, sans-serif',\n };\n\n const minimalConfig = {\n toolbar: [\n {\n name: 'basicstyles',\n items: [\n 'Styles',\n 'FontSize',\n 'Bold',\n 'Italic',\n 'Underline',\n 'TextColor',\n '-',\n 'NumberedList',\n 'BulletedList',\n 'Outdent',\n 'Indent',\n 'Link',\n ],\n },\n ],\n };\n\n const extendedConfig = {\n toolbar: [\n { name: 'clipboard', items: ['Paste', 'PasteText', 'PasteFromWord', 'Undo', 'Redo'] },\n {\n name: 'paragraph',\n items: [\n 'NumberedList',\n 'BulletedList',\n 'Outdent',\n 'Indent',\n 'Blockquote',\n 'JustifyLeft',\n 'JustifyCenter',\n 'JustifyRight',\n 'JustifyBlock',\n 'BidiLtr',\n 'BidiRtl',\n ],\n },\n { name: 'links', items: ['Link'] },\n { name: 'insert', items: ['Image', 'Table', 'HorizontalRule'] },\n { name: 'tools', items: ['Maximize', 'Source'] },\n '/', // line break\n { name: 'basicstyles', items: ['Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript'] },\n { name: 'styles', items: ['Styles', 'Format', 'Font', 'FontSize'] },\n { name: 'colors', items: ['TextColor', 'BGColor'] },\n ],\n filebrowserImageUploadUrl: this.fileBrowserImageUploadUrl,\n };\n\n const config = this.customConfig\n ? this.customConfig\n : this.minimal ? minimalConfig : extendedConfig;\n\n return Object.assign(baseConfig, config);\n }\n\n writeValue(value) {\n this._value = value;\n if (this.instance) {\n this.instance.setData(value);\n }\n }\n\n onChange(value?: any) {}\n\n onTouched(event?) {}\n\n registerOnChange(fn) {\n this.onChange = fn;\n }\n\n registerOnTouched(fn) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n if (this.instance) {\n CKEDITOR.instances[this.instance.name].setReadOnly(disabled);\n }\n }\n\n insertText(text) {\n const trimmedText = text.trim();\n this.instance.insertText(trimmedText);\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n// APP\nimport { NovoCKEditorElement } from './CKEditor';\n\n@NgModule({\n imports: [CommonModule, FormsModule],\n declarations: [NovoCKEditorElement],\n exports: [NovoCKEditorElement],\n})\nexport class NovoNovoCKEditorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-addons-ckeditor.mjs","sources":["../../../projects/novo-elements/src/addons/ckeditor/CKEditor.ts","../../../projects/novo-elements/src/addons/ckeditor/CKEditor.module.ts","../../../projects/novo-elements/src/addons/ckeditor/novo-elements-addons-ckeditor.ts"],"sourcesContent":["// NG2\nimport { AfterViewInit, Component, EventEmitter, forwardRef, Input, NgZone, OnDestroy, Output, ViewChild } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { fixCkEditorInputEvent } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst CKEDITOR_CONTROL_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoCKEditorElement),\n multi: true,\n};\n\ndeclare const CKEDITOR: any;\n\n// Prevents CKEDITOR from querying the page for all [contenteditable] elements (fixes a conflict against Codemirror Editor)\ntry {\n CKEDITOR.disableAutoInline = true;\n} catch (err) {\n // may be running in a context without CKEDITOR - ignore\n}\n\n/**\n * CKEditor component\n * Usage :\n * <novo-editor [(ngModel)]=\"data\" [config]=\"{...}\" debounce=\"500\"></novo-editor>\n */\n@Component({\n selector: 'novo-editor',\n providers: [CKEDITOR_CONTROL_VALUE_ACCESSOR],\n template: '<textarea [name]=\"name\" [id]=\"name\" #host></textarea>',\n styleUrls: ['./CKEditor.scss'],\n standalone: false,\n})\nexport class NovoCKEditorElement implements OnDestroy, AfterViewInit, ControlValueAccessor {\n @Input()\n config;\n @Input()\n debounce;\n @Input()\n name;\n @Input()\n minimal;\n @Input() customConfig: any = null;\n @Input() customFonts: string = '';\n @Input()\n startupFocus: boolean = false;\n @Input()\n fileBrowserImageUploadUrl: string = '';\n @Input()\n disabled: boolean = false;\n\n @Output()\n change = new EventEmitter();\n @Output()\n ready = new EventEmitter();\n @Output()\n blur = new EventEmitter();\n @Output()\n focus = new EventEmitter();\n @Output()\n paste = new EventEmitter();\n @Output()\n loaded = new EventEmitter();\n @ViewChild('host')\n host;\n\n _value: string = '';\n instance;\n debounceTimeout;\n private _ckEditorFixRemoveListener?: () => void;\n\n constructor(private zone: NgZone) {}\n\n get value() {\n return this._value;\n }\n\n @Input()\n set value(v) {\n if (v !== this._value) {\n this._value = v;\n this.onChange(v);\n }\n }\n\n ngOnDestroy() {\n if (this.instance) {\n this.instance.focusManager.blur(true); // Remove focus from editor\n this._ckEditorFixRemoveListener?.();\n setTimeout(() => {\n this.instance.removeAllListeners();\n const aInstance = CKEDITOR.instances[this.instance.name];\n if (aInstance) {\n aInstance.destroy();\n }\n this.instance.destroy();\n this.instance = null;\n });\n }\n }\n\n ngAfterViewInit() {\n const config = Object.assign(this.getBaseConfig(), this.config);\n if (this.startupFocus) {\n config.startupFocus = true;\n }\n if (this.disabled) {\n config.readOnly = true;\n }\n this.ckeditorInit(config);\n }\n\n updateValue(value) {\n this.zone.run(() => {\n this.value = value;\n this.onChange(value);\n this.onTouched();\n this.change.emit(value);\n });\n }\n\n private ckeditorInit(config) {\n if (!CKEDITOR) {\n console.error('Make sure to include CKEditor sources in your dependencies!');\n return;\n }\n\n // CKEditor replace textarea\n this.instance = CKEDITOR.replace(this.host.nativeElement, config);\n this._ckEditorFixRemoveListener = fixCkEditorInputEvent(this.instance);\n\n // Set initial value\n this.instance.setData(this.value);\n\n // listen for instanceReady event\n this.instance.on('instanceReady', (evt) => {\n // send the evt to the EventEmitter\n this.ready.emit(evt);\n });\n\n // CKEditor change event\n this.instance.on('change', () => {\n this.onTouched();\n const value = this.instance.getData();\n\n // Debounce update\n if (this.debounce) {\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n this.debounceTimeout = setTimeout(() => {\n this.updateValue(value);\n this.debounceTimeout = null;\n }, parseInt(this.debounce, 10));\n } else {\n this.updateValue(value);\n }\n });\n this.instance.on('blur', (event) => {\n this.blur.emit(event);\n });\n this.instance.on('focus', (event) => {\n this.focus.emit(event);\n });\n this.instance.on('paste', (event) => {\n this.paste.emit(event);\n });\n this.instance.on('loaded', (event) => {\n this.loaded.emit(event);\n });\n }\n\n getBaseConfig(): { [key: string]: any } {\n const baseConfig = {\n enterMode: CKEDITOR.ENTER_BR,\n entities: false,\n shiftEnterMode: CKEDITOR.ENTER_P,\n disableNativeSpellChecker: false,\n removePlugins: 'liststyle,tabletools,contextmenu,tableselection', // allows browser based spell checking\n extraAllowedContent: '*(*){*};table tbody tr td th[*];', // allows class names (*) and inline styles {*} for all and attributes [*] on tables\n font_names: this.customFonts ? this.customFonts :\n 'Arial/Arial, Helvetica, sans-serif;' +\n 'Calibri/Calibri, Verdana, Geneva, sans-serif;' +\n 'Comic Sans MS/Comic Sans MS, cursive;' +\n 'Courier New/Courier New, Courier, monospace;' +\n 'Georgia/Georgia, serif;' +\n 'Lucida Sans Unicode/Lucida Sans Unicode, Lucida Grande, sans-serif;' +\n 'Tahoma/Tahoma, Geneva, sans-serif;' +\n 'Times New Roman/Times New Roman, Times, serif;' +\n 'Trebuchet MS/Trebuchet MS, Helvetica, sans-serif;' +\n 'Verdana/Verdana, Geneva, sans-serif',\n };\n\n const minimalConfig = {\n toolbar: [\n {\n name: 'basicstyles',\n items: [\n 'Styles',\n 'FontSize',\n 'Bold',\n 'Italic',\n 'Underline',\n 'TextColor',\n '-',\n 'NumberedList',\n 'BulletedList',\n 'Outdent',\n 'Indent',\n 'Link',\n ],\n },\n ],\n };\n\n const extendedConfig = {\n toolbar: [\n { name: 'clipboard', items: ['Paste', 'PasteText', 'PasteFromWord', 'Undo', 'Redo'] },\n {\n name: 'paragraph',\n items: [\n 'NumberedList',\n 'BulletedList',\n 'Outdent',\n 'Indent',\n 'Blockquote',\n 'JustifyLeft',\n 'JustifyCenter',\n 'JustifyRight',\n 'JustifyBlock',\n 'BidiLtr',\n 'BidiRtl',\n ],\n },\n { name: 'links', items: ['Link'] },\n { name: 'insert', items: ['Image', 'Table', 'HorizontalRule'] },\n { name: 'tools', items: ['Maximize', 'Source'] },\n '/', // line break\n { name: 'basicstyles', items: ['Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript'] },\n { name: 'styles', items: ['Styles', 'Format', 'Font', 'FontSize'] },\n { name: 'colors', items: ['TextColor', 'BGColor'] },\n ],\n filebrowserImageUploadUrl: this.fileBrowserImageUploadUrl,\n };\n\n const config = this.customConfig\n ? this.customConfig\n : this.minimal ? minimalConfig : extendedConfig;\n\n return Object.assign(baseConfig, config);\n }\n\n writeValue(value) {\n this._value = value;\n if (this.instance) {\n this.instance.setData(value);\n }\n }\n\n onChange(value?: any) {}\n\n onTouched(event?) {}\n\n registerOnChange(fn) {\n this.onChange = fn;\n }\n\n registerOnTouched(fn) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n if (this.instance) {\n CKEDITOR.instances[this.instance.name].setReadOnly(disabled);\n }\n }\n\n insertText(text) {\n const trimmedText = text.trim();\n this.instance.insertText(trimmedText);\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n// APP\nimport { NovoCKEditorElement } from './CKEditor';\n\n@NgModule({\n imports: [CommonModule, FormsModule],\n declarations: [NovoCKEditorElement],\n exports: [NovoCKEditorElement],\n})\nexport class NovoNovoCKEditorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -195,7 +195,7 @@ class CardElement {
195
195
  *ngIf="!(loading || config.loading) && !(message || config.message)"
196
196
  select="footer,novo-card-footer,[novo-card-footer],[novoCardFooter]"
197
197
  ></ng-content>
198
- `, isInline: true, styles: [":host{display:flex;flex-flow:column;background-color:var(--background-bright, #fff);box-shadow:0 -1px 3px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:var(--border-radius-round);position:relative;overflow-x:hidden}:root[data-theme=bh2026] :host{--spacing-md: var(--spacing-padding-md)}:host.loading{min-height:200px}:host div.card-loading-container{position:absolute;inset:43px 0 0;border-radius:var(--border-radius-round);background-color:var(--background-bright, #fff);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1}:host header{display:flex;flex-flow:row nowrap;align-items:center;justify-content:space-between;padding:.5em}:host header .title{display:flex;align-items:center;min-width:0;flex:1}:host header .title ::ng-deep i.bhi-move{color:var(--font-color-secondary);margin-right:.3em;cursor:pointer}:host header .title h1,:host header .title h2,:host header .title h3{font-size:var(--font-size-lg);font-weight:500;line-height:1.5;color:var(--text-main, #3d464d);width:100%;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host header .title h1 i,:host header .title h2 i,:host header .title h3 i{font-size:1.2em}:root:not([data-theme=bh2026]) :host header .title i.bhi-info{color:#dbdbdb}:host header .actions{color:hsl(from var(--color-dark) h s calc(l + 15));white-space:nowrap}:host p.card-message{padding:20px 0;max-width:inherit;text-align:center;line-height:25px;color:hsl(from var(--color-grey) h s calc(l + 10))}:host p.card-message i{display:block;font-size:24px;margin:0 0 .5em;color:hsl(from var(--color-grey) h s calc(l + 20))}:host footer{display:flex;justify-content:center}:host.novo-card-inline{display:inline-flex;justify-self:start;align-self:start}:host.novo-card-inset-none{padding:0}:host.novo-card-inset-small{padding:var(--spacing-sm)}:host.novo-card-inset-medium{padding:var(--spacing-md)}:host.novo-card-inset-large{padding:var(--spacing-lg)}:host ::ng-deep .novo-card-header+.novo-card-content.condensed,:host ::ng-deep .novo-card-header+:not(.novo-card-content){margin-top:var(--spacing-sm)}:host ::ng-deep [novo-card-image]{width:100%;margin:var(--spacing-md) 0}:host-context([data-theme=bh2026]){border-radius:var(--border-radius-md);border:1px solid var(--color-border-default);box-shadow:0 1px 2px var(--color-transparency-black-10)}:host-context([data-theme=bh2026]) div.card-loading-container{border-radius:var(--border-radius-md)}:host-context([data-theme=bh2026]) header{padding:var(--spacing-padding-md) var(--spacing-padding-lg) var(--spacing-padding-md) 0;border-bottom:1px solid var(--color-border-default)}:host-context([data-theme=bh2026]) header .title{padding-inline:var(--spacing-gutter)}:host-context([data-theme=bh2026]) header .title h1,:host-context([data-theme=bh2026]) header .title h2,:host-context([data-theme=bh2026]) header .title h3{font-size:var(--typography-card-header-font-size, var(--typography-font-size-18));font-weight:var(--typography-card-header-font-weight, var(--typography-font-weight-500))}:host-context([data-theme=bh2026]) header .title h1 ::ng-deep .card-flag-icon,:host-context([data-theme=bh2026]) header .title h2 ::ng-deep .card-flag-icon,:host-context([data-theme=bh2026]) header .title h3 ::ng-deep .card-flag-icon{font-size:var(--font-size-lg);vertical-align:10%}:host-context([data-theme=bh2026]) header .title ::ng-deep i{margin:0}:host-context([data-theme=bh2026]) header .card-move-handle{position:absolute;left:var(--spacing-padding-xxsm);color:var(--color-content-icon, #89909A)}:host-context([data-theme=bh2026]) header .actions{display:flex;align-items:center;gap:var(--spacing-gap-sm)}:host-context([data-theme=bh2026]) header novo-button{color:var(--color-text-subtle)}:host-context([data-theme=bh2026]) header ::ng-deep .novo-card-header-text{padding-inline-start:var(--spacing-padding-sm)}:host-context([data-theme=bh2026]) :host ::ng-deep .card-flag-icon{color:var(--color-content-subtle, #5d7798)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon{color:var(--page-entity-color, var(--color-content-subtle, #5d7798))}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-star{color:var(--color-entity-star)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-person{color:var(--color-entity-contact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-company{color:var(--color-entity-company)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-candidate{color:var(--color-entity-candidate)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-navigation{color:var(--color-entity-navigation)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-lead{color:var(--color-entity-lead)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-contact{color:var(--color-entity-contact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-clientcontact{color:var(--color-entity-clientcontact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-opportunity{color:var(--color-entity-opportunity)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-job{color:var(--color-entity-job)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-joborder{color:var(--color-entity-joborder)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-submission{color:var(--color-entity-submission)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-sendout{color:var(--color-entity-sendout)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-placement{color:var(--color-entity-placement)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-note{color:var(--color-entity-note)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-task{color:var(--color-entity-task)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-distributionList{color:var(--color-entity-distributionList)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-credential{color:var(--color-entity-credential)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-user{color:var(--color-entity-user)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-corporateuser{color:var(--color-entity-corporateuser)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-contract{color:var(--color-entity-contract)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-jobCode{color:var(--color-entity-jobCode)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-earnCode{color:var(--color-entity-earnCode)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-billableCharge{color:var(--color-entity-billableCharge)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-payableCharge{color:var(--color-entity-payableCharge)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-complianceManager{color:var(--color-entity-complianceManager)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-invoiceStatement{color:var(--color-entity-invoiceStatement)}:host-context([data-theme=bh2026]) :host.icon-color-parent ::ng-deep .card-flag-icon{color:var(--page-entity-color)}:host-context([data-theme=bh2026]) :host .novo-card-header{padding-inline-start:var(--spacing-gutter)}:host-context([data-theme=bh2026]) :host ::ng-deep .card-move-handle{position:absolute;left:var(--spacing-padding-xxsm);color:var(--color-content-icon, #89909A);transition:color .3s ease-in-out}:host-context([data-theme=bh2026]) :host header ::ng-deep:not(:hover) .card-move-handle,:host-context([data-theme=bh2026]) :host ::ng-deep .novo-card-header:not(:hover) .card-move-handle{color:transparent}:host-context([data-theme=bh2026]) :host header ::ng-deep .novo-icon.card-move-handle i,:host-context([data-theme=bh2026]) :host ::ng-deep .novo-card-header .novo-icon.card-move-handle i{color:inherit}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.NovoIconComponent, selector: "novo-icon", inputs: ["raised", "theme", "shape", "color", "size", "smaller", "larger", "alt", "name"] }, { kind: "component", type: i4.NovoButtonElement, selector: "novo-button,button[theme]", inputs: ["color", "side", "size", "theme", "loading", "icon", "secondIcon", "disabled"] }, { kind: "component", type: i5.NovoLoadingElement, selector: "novo-loading", inputs: ["theme", "color", "size"] }, { kind: "directive", type: i6.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltipPosition", "tooltipType", "tooltipSize", "tooltipBounce", "tooltipNoAnimate", "tooltipRounded", "tooltipAlways", "tooltipPreline", "removeTooltipArrow", "tooltipAutoPosition", "tooltipIsHTML", "tooltipCloseOnClick", "tooltipOnOverflow", "tooltipActive"] }, { kind: "directive", type: i7.ThemeColorDirective, selector: "[theme]", inputs: ["theme"] }, { kind: "pipe", type: i7.If2026ThemePipe, name: "ifBh2026Theme" }] }); }
198
+ `, isInline: true, styles: [":host{display:flex;flex-flow:column;background-color:var(--background-bright, #fff);box-shadow:0 -1px 3px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:var(--border-radius-round);position:relative;overflow-x:hidden}:root[data-theme=bh2026] :host{--spacing-md: var(--spacing-padding-md)}:host.loading{min-height:200px}:host div.card-loading-container{position:absolute;inset:43px 0 0;border-radius:var(--border-radius-round);background-color:var(--background-bright, #fff);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1}:host header{display:flex;flex-flow:row nowrap;align-items:center;justify-content:space-between;padding:.5em}:host header .title{display:flex;align-items:center;min-width:0;flex:1}:host header .title ::ng-deep i.bhi-move{color:var(--font-color-secondary);margin-right:.3em;cursor:pointer}:host header .title h1,:host header .title h2,:host header .title h3{font-size:var(--font-size-lg);font-weight:500;line-height:1.5;color:var(--text-main, #3d464d);width:100%;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host header .title h1 i,:host header .title h2 i,:host header .title h3 i{font-size:1.2em}:root:not([data-theme=bh2026]) :host header .title i.bhi-info{color:#dbdbdb}:host header .actions{color:hsl(from var(--color-dark) h s calc(l + 15));white-space:nowrap}:host p.card-message{padding:20px 0;max-width:inherit;text-align:center;line-height:25px;color:hsl(from var(--color-grey) h s calc(l + 10))}:host p.card-message i{display:block;font-size:24px;margin:0 0 .5em;color:hsl(from var(--color-grey) h s calc(l + 20))}:host footer{display:flex;justify-content:center}:host.novo-card-inline{display:inline-flex;justify-self:start;align-self:start}:host.novo-card-inset-none{padding:0}:host.novo-card-inset-small{padding:var(--spacing-sm)}:host.novo-card-inset-medium{padding:var(--spacing-md)}:host.novo-card-inset-large{padding:var(--spacing-lg)}:host ::ng-deep .novo-card-header+.novo-card-content.condensed,:host ::ng-deep .novo-card-header+:not(.novo-card-content){margin-top:var(--spacing-sm)}:host ::ng-deep [novo-card-image]{width:100%;margin:var(--spacing-md) 0}:host-context([data-theme=bh2026]){border-radius:var(--border-radius-md);border:1px solid var(--color-border-default);box-shadow:0 1px 2px var(--color-transparency-black-10)}:host-context([data-theme=bh2026]) div.card-loading-container{border-radius:var(--border-radius-md)}:host-context([data-theme=bh2026]) header{padding:var(--spacing-padding-md) var(--spacing-padding-lg) var(--spacing-padding-md) 0;border-bottom:1px solid var(--color-border-default)}:host-context([data-theme=bh2026]) header .title{padding-inline:var(--spacing-gutter)}:host-context([data-theme=bh2026]) header .title h1,:host-context([data-theme=bh2026]) header .title h2,:host-context([data-theme=bh2026]) header .title h3{font-size:var(--typography-card-header-font-size, var(--typography-font-size-18));font-weight:var(--typography-card-header-font-weight, var(--typography-font-weight-500))}:host-context([data-theme=bh2026]) header .title h1 ::ng-deep .card-flag-icon,:host-context([data-theme=bh2026]) header .title h2 ::ng-deep .card-flag-icon,:host-context([data-theme=bh2026]) header .title h3 ::ng-deep .card-flag-icon{font-size:var(--font-size-lg);vertical-align:10%}:host-context([data-theme=bh2026]) header .title ::ng-deep i{margin:0}:host-context([data-theme=bh2026]) header .card-move-handle{position:absolute;left:var(--spacing-padding-xxsm);color:var(--color-content-icon, #89909A)}:host-context([data-theme=bh2026]) header .actions{display:flex;align-items:center;gap:var(--spacing-gap-sm)}:host-context([data-theme=bh2026]) header novo-button{color:var(--color-text-subtle)}:host-context([data-theme=bh2026]) header ::ng-deep .novo-card-header-text{padding-inline-start:var(--spacing-padding-sm)}:host-context([data-theme=bh2026]) :host ::ng-deep .card-flag-icon{color:var(--color-content-subtle, #5d7798)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon{color:var(--page-entity-color, var(--color-content-subtle, #5d7798))}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-appointment{color:var(--color-entity-appointment)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-star{color:var(--color-entity-star)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-person{color:var(--color-entity-contact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-company{color:var(--color-entity-company)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-candidate{color:var(--color-entity-candidate)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-navigation{color:var(--color-entity-navigation)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-lead{color:var(--color-entity-lead)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-contact{color:var(--color-entity-contact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-clientcontact{color:var(--color-entity-clientcontact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-opportunity{color:var(--color-entity-opportunity)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-job{color:var(--color-entity-job)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-joborder{color:var(--color-entity-joborder)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-submission{color:var(--color-entity-submission)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-sendout{color:var(--color-entity-sendout)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-placement{color:var(--color-entity-placement)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-note{color:var(--color-entity-note)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-task{color:var(--color-entity-task)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-distributionList{color:var(--color-entity-distributionList)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-credential{color:var(--color-entity-credential)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-user{color:var(--color-entity-user)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-corporateuser{color:var(--color-entity-corporateuser)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-neutral{color:var(--color-entity-neutral)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-contract{color:var(--color-entity-contract)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-jobCode{color:var(--color-entity-jobCode)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-earnCode{color:var(--color-entity-earnCode)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-billableCharge{color:var(--color-entity-billableCharge)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-payableCharge{color:var(--color-entity-payableCharge)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-complianceManager{color:var(--color-entity-complianceManager)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-invoiceStatement{color:var(--color-entity-invoiceStatement)}:host-context([data-theme=bh2026]) :host.icon-color-parent ::ng-deep .card-flag-icon{color:var(--page-entity-color)}:host-context([data-theme=bh2026]) :host .novo-card-header{padding-inline-start:var(--spacing-gutter)}:host-context([data-theme=bh2026]) :host ::ng-deep .card-move-handle{position:absolute;left:var(--spacing-padding-xxsm);color:var(--color-content-icon, #89909A);transition:color .3s ease-in-out}:host-context([data-theme=bh2026]) :host header ::ng-deep:not(:hover) .card-move-handle,:host-context([data-theme=bh2026]) :host ::ng-deep .novo-card-header:not(:hover) .card-move-handle{color:transparent}:host-context([data-theme=bh2026]) :host header ::ng-deep .novo-icon.card-move-handle i,:host-context([data-theme=bh2026]) :host ::ng-deep .novo-card-header .novo-icon.card-move-handle i{color:inherit}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.NovoIconComponent, selector: "novo-icon", inputs: ["raised", "theme", "shape", "color", "size", "smaller", "larger", "alt", "name"] }, { kind: "component", type: i4.NovoButtonElement, selector: "novo-button,button[theme]", inputs: ["color", "side", "size", "theme", "loading", "icon", "secondIcon", "disabled"] }, { kind: "component", type: i5.NovoLoadingElement, selector: "novo-loading", inputs: ["theme", "color", "size"] }, { kind: "directive", type: i6.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltipPosition", "tooltipType", "tooltipSize", "tooltipBounce", "tooltipNoAnimate", "tooltipRounded", "tooltipAlways", "tooltipPreline", "removeTooltipArrow", "tooltipAutoPosition", "tooltipIsHTML", "tooltipCloseOnClick", "tooltipOnOverflow", "tooltipActive"] }, { kind: "directive", type: i7.ThemeColorDirective, selector: "[theme]", inputs: ["theme"] }, { kind: "pipe", type: i7.If2026ThemePipe, name: "ifBh2026Theme" }] }); }
199
199
  }
200
200
  __decorate([
201
201
  BooleanInput(),
@@ -269,7 +269,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
269
269
  *ngIf="!(loading || config.loading) && !(message || config.message)"
270
270
  select="footer,novo-card-footer,[novo-card-footer],[novoCardFooter]"
271
271
  ></ng-content>
272
- `, standalone: false, styles: [":host{display:flex;flex-flow:column;background-color:var(--background-bright, #fff);box-shadow:0 -1px 3px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:var(--border-radius-round);position:relative;overflow-x:hidden}:root[data-theme=bh2026] :host{--spacing-md: var(--spacing-padding-md)}:host.loading{min-height:200px}:host div.card-loading-container{position:absolute;inset:43px 0 0;border-radius:var(--border-radius-round);background-color:var(--background-bright, #fff);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1}:host header{display:flex;flex-flow:row nowrap;align-items:center;justify-content:space-between;padding:.5em}:host header .title{display:flex;align-items:center;min-width:0;flex:1}:host header .title ::ng-deep i.bhi-move{color:var(--font-color-secondary);margin-right:.3em;cursor:pointer}:host header .title h1,:host header .title h2,:host header .title h3{font-size:var(--font-size-lg);font-weight:500;line-height:1.5;color:var(--text-main, #3d464d);width:100%;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host header .title h1 i,:host header .title h2 i,:host header .title h3 i{font-size:1.2em}:root:not([data-theme=bh2026]) :host header .title i.bhi-info{color:#dbdbdb}:host header .actions{color:hsl(from var(--color-dark) h s calc(l + 15));white-space:nowrap}:host p.card-message{padding:20px 0;max-width:inherit;text-align:center;line-height:25px;color:hsl(from var(--color-grey) h s calc(l + 10))}:host p.card-message i{display:block;font-size:24px;margin:0 0 .5em;color:hsl(from var(--color-grey) h s calc(l + 20))}:host footer{display:flex;justify-content:center}:host.novo-card-inline{display:inline-flex;justify-self:start;align-self:start}:host.novo-card-inset-none{padding:0}:host.novo-card-inset-small{padding:var(--spacing-sm)}:host.novo-card-inset-medium{padding:var(--spacing-md)}:host.novo-card-inset-large{padding:var(--spacing-lg)}:host ::ng-deep .novo-card-header+.novo-card-content.condensed,:host ::ng-deep .novo-card-header+:not(.novo-card-content){margin-top:var(--spacing-sm)}:host ::ng-deep [novo-card-image]{width:100%;margin:var(--spacing-md) 0}:host-context([data-theme=bh2026]){border-radius:var(--border-radius-md);border:1px solid var(--color-border-default);box-shadow:0 1px 2px var(--color-transparency-black-10)}:host-context([data-theme=bh2026]) div.card-loading-container{border-radius:var(--border-radius-md)}:host-context([data-theme=bh2026]) header{padding:var(--spacing-padding-md) var(--spacing-padding-lg) var(--spacing-padding-md) 0;border-bottom:1px solid var(--color-border-default)}:host-context([data-theme=bh2026]) header .title{padding-inline:var(--spacing-gutter)}:host-context([data-theme=bh2026]) header .title h1,:host-context([data-theme=bh2026]) header .title h2,:host-context([data-theme=bh2026]) header .title h3{font-size:var(--typography-card-header-font-size, var(--typography-font-size-18));font-weight:var(--typography-card-header-font-weight, var(--typography-font-weight-500))}:host-context([data-theme=bh2026]) header .title h1 ::ng-deep .card-flag-icon,:host-context([data-theme=bh2026]) header .title h2 ::ng-deep .card-flag-icon,:host-context([data-theme=bh2026]) header .title h3 ::ng-deep .card-flag-icon{font-size:var(--font-size-lg);vertical-align:10%}:host-context([data-theme=bh2026]) header .title ::ng-deep i{margin:0}:host-context([data-theme=bh2026]) header .card-move-handle{position:absolute;left:var(--spacing-padding-xxsm);color:var(--color-content-icon, #89909A)}:host-context([data-theme=bh2026]) header .actions{display:flex;align-items:center;gap:var(--spacing-gap-sm)}:host-context([data-theme=bh2026]) header novo-button{color:var(--color-text-subtle)}:host-context([data-theme=bh2026]) header ::ng-deep .novo-card-header-text{padding-inline-start:var(--spacing-padding-sm)}:host-context([data-theme=bh2026]) :host ::ng-deep .card-flag-icon{color:var(--color-content-subtle, #5d7798)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon{color:var(--page-entity-color, var(--color-content-subtle, #5d7798))}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-star{color:var(--color-entity-star)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-person{color:var(--color-entity-contact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-company{color:var(--color-entity-company)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-candidate{color:var(--color-entity-candidate)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-navigation{color:var(--color-entity-navigation)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-lead{color:var(--color-entity-lead)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-contact{color:var(--color-entity-contact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-clientcontact{color:var(--color-entity-clientcontact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-opportunity{color:var(--color-entity-opportunity)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-job{color:var(--color-entity-job)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-joborder{color:var(--color-entity-joborder)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-submission{color:var(--color-entity-submission)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-sendout{color:var(--color-entity-sendout)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-placement{color:var(--color-entity-placement)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-note{color:var(--color-entity-note)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-task{color:var(--color-entity-task)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-distributionList{color:var(--color-entity-distributionList)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-credential{color:var(--color-entity-credential)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-user{color:var(--color-entity-user)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-corporateuser{color:var(--color-entity-corporateuser)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-contract{color:var(--color-entity-contract)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-jobCode{color:var(--color-entity-jobCode)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-earnCode{color:var(--color-entity-earnCode)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-billableCharge{color:var(--color-entity-billableCharge)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-payableCharge{color:var(--color-entity-payableCharge)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-complianceManager{color:var(--color-entity-complianceManager)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-invoiceStatement{color:var(--color-entity-invoiceStatement)}:host-context([data-theme=bh2026]) :host.icon-color-parent ::ng-deep .card-flag-icon{color:var(--page-entity-color)}:host-context([data-theme=bh2026]) :host .novo-card-header{padding-inline-start:var(--spacing-gutter)}:host-context([data-theme=bh2026]) :host ::ng-deep .card-move-handle{position:absolute;left:var(--spacing-padding-xxsm);color:var(--color-content-icon, #89909A);transition:color .3s ease-in-out}:host-context([data-theme=bh2026]) :host header ::ng-deep:not(:hover) .card-move-handle,:host-context([data-theme=bh2026]) :host ::ng-deep .novo-card-header:not(:hover) .card-move-handle{color:transparent}:host-context([data-theme=bh2026]) :host header ::ng-deep .novo-icon.card-move-handle i,:host-context([data-theme=bh2026]) :host ::ng-deep .novo-card-header .novo-icon.card-move-handle i{color:inherit}\n"] }]
272
+ `, standalone: false, styles: [":host{display:flex;flex-flow:column;background-color:var(--background-bright, #fff);box-shadow:0 -1px 3px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:var(--border-radius-round);position:relative;overflow-x:hidden}:root[data-theme=bh2026] :host{--spacing-md: var(--spacing-padding-md)}:host.loading{min-height:200px}:host div.card-loading-container{position:absolute;inset:43px 0 0;border-radius:var(--border-radius-round);background-color:var(--background-bright, #fff);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1}:host header{display:flex;flex-flow:row nowrap;align-items:center;justify-content:space-between;padding:.5em}:host header .title{display:flex;align-items:center;min-width:0;flex:1}:host header .title ::ng-deep i.bhi-move{color:var(--font-color-secondary);margin-right:.3em;cursor:pointer}:host header .title h1,:host header .title h2,:host header .title h3{font-size:var(--font-size-lg);font-weight:500;line-height:1.5;color:var(--text-main, #3d464d);width:100%;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host header .title h1 i,:host header .title h2 i,:host header .title h3 i{font-size:1.2em}:root:not([data-theme=bh2026]) :host header .title i.bhi-info{color:#dbdbdb}:host header .actions{color:hsl(from var(--color-dark) h s calc(l + 15));white-space:nowrap}:host p.card-message{padding:20px 0;max-width:inherit;text-align:center;line-height:25px;color:hsl(from var(--color-grey) h s calc(l + 10))}:host p.card-message i{display:block;font-size:24px;margin:0 0 .5em;color:hsl(from var(--color-grey) h s calc(l + 20))}:host footer{display:flex;justify-content:center}:host.novo-card-inline{display:inline-flex;justify-self:start;align-self:start}:host.novo-card-inset-none{padding:0}:host.novo-card-inset-small{padding:var(--spacing-sm)}:host.novo-card-inset-medium{padding:var(--spacing-md)}:host.novo-card-inset-large{padding:var(--spacing-lg)}:host ::ng-deep .novo-card-header+.novo-card-content.condensed,:host ::ng-deep .novo-card-header+:not(.novo-card-content){margin-top:var(--spacing-sm)}:host ::ng-deep [novo-card-image]{width:100%;margin:var(--spacing-md) 0}:host-context([data-theme=bh2026]){border-radius:var(--border-radius-md);border:1px solid var(--color-border-default);box-shadow:0 1px 2px var(--color-transparency-black-10)}:host-context([data-theme=bh2026]) div.card-loading-container{border-radius:var(--border-radius-md)}:host-context([data-theme=bh2026]) header{padding:var(--spacing-padding-md) var(--spacing-padding-lg) var(--spacing-padding-md) 0;border-bottom:1px solid var(--color-border-default)}:host-context([data-theme=bh2026]) header .title{padding-inline:var(--spacing-gutter)}:host-context([data-theme=bh2026]) header .title h1,:host-context([data-theme=bh2026]) header .title h2,:host-context([data-theme=bh2026]) header .title h3{font-size:var(--typography-card-header-font-size, var(--typography-font-size-18));font-weight:var(--typography-card-header-font-weight, var(--typography-font-weight-500))}:host-context([data-theme=bh2026]) header .title h1 ::ng-deep .card-flag-icon,:host-context([data-theme=bh2026]) header .title h2 ::ng-deep .card-flag-icon,:host-context([data-theme=bh2026]) header .title h3 ::ng-deep .card-flag-icon{font-size:var(--font-size-lg);vertical-align:10%}:host-context([data-theme=bh2026]) header .title ::ng-deep i{margin:0}:host-context([data-theme=bh2026]) header .card-move-handle{position:absolute;left:var(--spacing-padding-xxsm);color:var(--color-content-icon, #89909A)}:host-context([data-theme=bh2026]) header .actions{display:flex;align-items:center;gap:var(--spacing-gap-sm)}:host-context([data-theme=bh2026]) header novo-button{color:var(--color-text-subtle)}:host-context([data-theme=bh2026]) header ::ng-deep .novo-card-header-text{padding-inline-start:var(--spacing-padding-sm)}:host-context([data-theme=bh2026]) :host ::ng-deep .card-flag-icon{color:var(--color-content-subtle, #5d7798)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon{color:var(--page-entity-color, var(--color-content-subtle, #5d7798))}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-appointment{color:var(--color-entity-appointment)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-star{color:var(--color-entity-star)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-person{color:var(--color-entity-contact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-company{color:var(--color-entity-company)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-candidate{color:var(--color-entity-candidate)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-navigation{color:var(--color-entity-navigation)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-lead{color:var(--color-entity-lead)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-contact{color:var(--color-entity-contact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-clientcontact{color:var(--color-entity-clientcontact)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-opportunity{color:var(--color-entity-opportunity)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-job{color:var(--color-entity-job)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-joborder{color:var(--color-entity-joborder)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-submission{color:var(--color-entity-submission)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-sendout{color:var(--color-entity-sendout)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-placement{color:var(--color-entity-placement)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-note{color:var(--color-entity-note)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-task{color:var(--color-entity-task)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-distributionList{color:var(--color-entity-distributionList)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-credential{color:var(--color-entity-credential)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-user{color:var(--color-entity-user)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-corporateuser{color:var(--color-entity-corporateuser)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-neutral{color:var(--color-entity-neutral)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-contract{color:var(--color-entity-contract)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-jobCode{color:var(--color-entity-jobCode)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-earnCode{color:var(--color-entity-earnCode)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-billableCharge{color:var(--color-entity-billableCharge)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-payableCharge{color:var(--color-entity-payableCharge)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-complianceManager{color:var(--color-entity-complianceManager)}:host-context([data-theme=bh2026]) :host.icon-color-auto header .title ::ng-deep .card-flag-icon.bhi-invoiceStatement{color:var(--color-entity-invoiceStatement)}:host-context([data-theme=bh2026]) :host.icon-color-parent ::ng-deep .card-flag-icon{color:var(--page-entity-color)}:host-context([data-theme=bh2026]) :host .novo-card-header{padding-inline-start:var(--spacing-gutter)}:host-context([data-theme=bh2026]) :host ::ng-deep .card-move-handle{position:absolute;left:var(--spacing-padding-xxsm);color:var(--color-content-icon, #89909A);transition:color .3s ease-in-out}:host-context([data-theme=bh2026]) :host header ::ng-deep:not(:hover) .card-move-handle,:host-context([data-theme=bh2026]) :host ::ng-deep .novo-card-header:not(:hover) .card-move-handle{color:transparent}:host-context([data-theme=bh2026]) :host header ::ng-deep .novo-icon.card-move-handle i,:host-context([data-theme=bh2026]) :host ::ng-deep .novo-card-header .novo-icon.card-move-handle i{color:inherit}\n"] }]
273
273
  }], ctorParameters: () => [{ type: i1.NovoLabelService }], propDecorators: { padding: [{
274
274
  type: Input
275
275
  }], config: [{
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-card.mjs","sources":["../../../projects/novo-elements/src/elements/card/Card.ts","../../../projects/novo-elements/src/elements/card/Card.module.ts","../../../projects/novo-elements/src/elements/card/novo-elements-elements-card.ts"],"sourcesContent":["// NG2\nimport { Component, EventEmitter, HostBinding, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\nimport { BooleanInput } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-card-actions',\n template: '<ng-content></ng-content>',\n standalone: false,\n})\nexport class CardActionsElement {}\n\n/**\n * Content of a card, needed as it's used as a selector in the API.\n */\n@Component({\n selector: 'novo-card-content, [novo-card-content], [novoCardContent]',\n host: { class: 'novo-card-content', '[class.condensed]': 'condensed' },\n template: '<ng-content></ng-content>',\n styleUrls: ['./CardContent.scss'],\n standalone: false,\n})\nexport class CardContentElement {\n @Input() @BooleanInput() condensed: boolean = false;\n}\n\n/**\n * Content of a card, needed as it's used as a selector in the API.\n */\n@Component({\n selector: 'novo-card-header, [novo-card-header], [novoCardHeader]',\n host: { class: 'novo-card-header' },\n template: `\n <ng-content select=\"novo-avatar, [novo-avatar], novo-icon\"></ng-content>\n <div class=\"novo-card-header-text\">\n <ng-content select=\"novo-title, [novo-title], novo-text, novo-label, novo-caption\"></ng-content>\n </div>\n <ng-content></ng-content>\n <div class=\"novo-card-header-actions\">\n <ng-content select=\"novo-action\"></ng-content>\n </div>\n `,\n styleUrls: ['./CardHeader.scss'],\n standalone: false,\n})\nexport class CardHeaderElement {}\n\n@Component({\n selector: 'novo-card-footer, [novo-card-footer], [novoCardFooter]',\n host: { class: 'novo-card-footer' },\n template: '<ng-content></ng-content>',\n styleUrls: ['./CardFooter.scss'],\n standalone: false,\n})\nexport class CardFooterElement {}\n\n@Component({\n selector: 'novo-card',\n host: {\n class: 'novo-card',\n '[attr.data-automation-id]': 'cardAutomationId',\n '[class.loading]': 'loading || config.loading',\n },\n template: `\n <!--Loading-->\n <div class=\"card-loading-container\" *ngIf=\"loading || config.loading\">\n <novo-loading theme=\"line\" [attr.data-automation-id]=\"cardAutomationId + '-loading'\"></novo-loading>\n </div>\n <!--Card Header-->\n <header *ngIf=\"title || config.title\">\n <div class=\"title\">\n <!--Grabber Icon-->\n <novo-icon\n *ngIf=\"move || config.move\"\n tooltip=\"{{ labels.move }}\"\n tooltipPosition=\"bottom-right\"\n class=\"card-move-handle\"\n [attr.data-automation-id]=\"cardAutomationId + '-move'\"\n >move</novo-icon\n >\n <!--Card Title-->\n <h3 [attr.data-automation-id]=\"cardAutomationId + '-title'\">\n <span [tooltip]=\"iconTooltip\" tooltipPosition=\"right\"><i *ngIf=\"iconClass\" class=\"card-flag-icon\" [ngClass]=\"iconClass\"></i></span><!--\n --><span class=\"novo-card-header-text\">{{ title || config.title }}</span>\n </h3>\n </div>\n <!--Card Actions-->\n <div class=\"actions\" [attr.data-automation-id]=\"cardAutomationId + '-actions'\">\n <ng-content select=\"novo-card-actions\"></ng-content>\n <novo-button\n theme=\"icon\"\n [icon]=\"'refresh-o' | ifBh2026Theme : 'refresh'\"\n (click)=\"toggleRefresh()\"\n *ngIf=\"refresh || config.refresh\"\n [attr.data-automation-id]=\"cardAutomationId + '-refresh'\"\n tooltip=\"{{ labels.refresh }}\"\n tooltipPosition=\"bottom-left\"\n ></novo-button>\n\n <novo-button\n theme=\"icon\"\n [icon]=\"'x' | ifBh2026Theme : 'close-o'\"\n (click)=\"toggleClose()\"\n *ngIf=\"close || config.close\"\n [attr.data-automation-id]=\"cardAutomationId + '-close'\"\n tooltip=\"{{ labels.close }}\"\n tooltipPosition=\"bottom-left\"\n ></novo-button>\n </div>\n </header>\n <!--Content (transcluded)-->\n <ng-content *ngIf=\"!(loading || config.loading) && !(message || config.message)\"></ng-content>\n <!--Error/Empty Message-->\n <p\n class=\"card-message\"\n *ngIf=\"!(loading || config.loading) && (message || config.message)\"\n [attr.data-automation-id]=\"cardAutomationId + '-message'\"\n >\n <i *ngIf=\"messageIconClass\" [ngClass]=\"messageIconClass\"></i> <span [innerHtml]=\"message || config.message\"></span>\n </p>\n <!--Card Footer-->\n <ng-content\n *ngIf=\"!(loading || config.loading) && !(message || config.message)\"\n select=\"footer,novo-card-footer,[novo-card-footer],[novoCardFooter]\"\n ></ng-content>\n `,\n styleUrls: ['./Card.scss'],\n standalone: false,\n})\nexport class CardElement implements OnChanges, OnInit {\n @Input()\n padding: boolean = true;\n @Input()\n config: any = {};\n @Input()\n title: string;\n @Input()\n message: string;\n @Input()\n messageIcon: string;\n @Input()\n icon: string;\n // A feature for the 2026 styles that lets a card icon match either the icon default color (auto) or the --page-entity-color css variable\n @Input()\n iconColorClass: 'icon-color-auto' | 'icon-color-parent' | undefined;\n @Input()\n iconTooltip: string;\n @Input()\n refresh: boolean;\n @Input()\n close: boolean;\n @Input()\n move: boolean;\n @Input()\n loading: boolean;\n\n @Input()\n @BooleanInput()\n @HostBinding('class.novo-card-inline')\n inline: boolean;\n\n @Input()\n inset: string = 'none';\n\n @HostBinding('class')\n get cardClass() {\n return `${this.iconColorClass || ''} novo-card-inset-${this.inset}`;\n }\n\n @Output()\n onClose: EventEmitter<void> = new EventEmitter();\n @Output()\n onRefresh: EventEmitter<void> = new EventEmitter();\n\n cardAutomationId: string;\n labels: NovoLabelService;\n iconClass: string | null;\n messageIconClass: string;\n\n constructor(labels: NovoLabelService) {\n this.labels = labels;\n }\n\n ngOnInit() {\n this.config = this.config || {};\n }\n\n ngOnChanges(changes?: SimpleChanges) {\n this.config = this.config || {};\n this.cardAutomationId = `${(this.title || this.config.title || 'no-title').trim().toLowerCase().replace(/\\s/g, '-')}-card`;\n\n const newIcon: string = this.icon || this.config.icon;\n const newMessageIcon: string = this.messageIcon || this.config.messageIcon;\n this.iconClass = newIcon ? `bhi-${newIcon}` : null;\n this.messageIconClass = newMessageIcon ? `bhi-${newMessageIcon}` : null;\n }\n\n toggleClose() {\n if (!this.config.onClose) {\n this.onClose.next();\n } else {\n this.config.onClose();\n }\n }\n\n toggleRefresh() {\n if (!this.config.onRefresh) {\n this.onRefresh.next();\n } else {\n this.config.onRefresh();\n }\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { NovoLoadingModule } from 'novo-elements/elements/loading';\nimport { NovoTooltipModule } from 'novo-elements/elements/tooltip';\nimport { NovoCommonModule } from 'novo-elements/elements/common';\nimport { CardActionsElement, CardContentElement, CardElement, CardFooterElement, CardHeaderElement } from './Card';\n\n@NgModule({\n imports: [CommonModule, NovoIconModule, NovoButtonModule, NovoLoadingModule, NovoTooltipModule, NovoCommonModule],\n declarations: [CardElement, CardActionsElement, CardContentElement, CardHeaderElement, CardFooterElement],\n exports: [CardElement, CardActionsElement, CardContentElement, CardHeaderElement, CardFooterElement],\n})\nexport class NovoCardModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-elements-card.mjs","sources":["../../../projects/novo-elements/src/elements/card/Card.ts","../../../projects/novo-elements/src/elements/card/Card.module.ts","../../../projects/novo-elements/src/elements/card/novo-elements-elements-card.ts"],"sourcesContent":["// NG2\nimport { Component, EventEmitter, HostBinding, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\nimport { BooleanInput } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-card-actions',\n template: '<ng-content></ng-content>',\n standalone: false,\n})\nexport class CardActionsElement {}\n\n/**\n * Content of a card, needed as it's used as a selector in the API.\n */\n@Component({\n selector: 'novo-card-content, [novo-card-content], [novoCardContent]',\n host: { class: 'novo-card-content', '[class.condensed]': 'condensed' },\n template: '<ng-content></ng-content>',\n styleUrls: ['./CardContent.scss'],\n standalone: false,\n})\nexport class CardContentElement {\n @Input() @BooleanInput() condensed: boolean = false;\n}\n\n/**\n * Content of a card, needed as it's used as a selector in the API.\n */\n@Component({\n selector: 'novo-card-header, [novo-card-header], [novoCardHeader]',\n host: { class: 'novo-card-header' },\n template: `\n <ng-content select=\"novo-avatar, [novo-avatar], novo-icon\"></ng-content>\n <div class=\"novo-card-header-text\">\n <ng-content select=\"novo-title, [novo-title], novo-text, novo-label, novo-caption\"></ng-content>\n </div>\n <ng-content></ng-content>\n <div class=\"novo-card-header-actions\">\n <ng-content select=\"novo-action\"></ng-content>\n </div>\n `,\n styleUrls: ['./CardHeader.scss'],\n standalone: false,\n})\nexport class CardHeaderElement {}\n\n@Component({\n selector: 'novo-card-footer, [novo-card-footer], [novoCardFooter]',\n host: { class: 'novo-card-footer' },\n template: '<ng-content></ng-content>',\n styleUrls: ['./CardFooter.scss'],\n standalone: false,\n})\nexport class CardFooterElement {}\n\n@Component({\n selector: 'novo-card',\n host: {\n class: 'novo-card',\n '[attr.data-automation-id]': 'cardAutomationId',\n '[class.loading]': 'loading || config.loading',\n },\n template: `\n <!--Loading-->\n <div class=\"card-loading-container\" *ngIf=\"loading || config.loading\">\n <novo-loading theme=\"line\" [attr.data-automation-id]=\"cardAutomationId + '-loading'\"></novo-loading>\n </div>\n <!--Card Header-->\n <header *ngIf=\"title || config.title\">\n <div class=\"title\">\n <!--Grabber Icon-->\n <novo-icon\n *ngIf=\"move || config.move\"\n tooltip=\"{{ labels.move }}\"\n tooltipPosition=\"bottom-right\"\n class=\"card-move-handle\"\n [attr.data-automation-id]=\"cardAutomationId + '-move'\"\n >move</novo-icon\n >\n <!--Card Title-->\n <h3 [attr.data-automation-id]=\"cardAutomationId + '-title'\">\n <span [tooltip]=\"iconTooltip\" tooltipPosition=\"right\"><i *ngIf=\"iconClass\" class=\"card-flag-icon\" [ngClass]=\"iconClass\"></i></span><!--\n --><span class=\"novo-card-header-text\">{{ title || config.title }}</span>\n </h3>\n </div>\n <!--Card Actions-->\n <div class=\"actions\" [attr.data-automation-id]=\"cardAutomationId + '-actions'\">\n <ng-content select=\"novo-card-actions\"></ng-content>\n <novo-button\n theme=\"icon\"\n [icon]=\"'refresh-o' | ifBh2026Theme : 'refresh'\"\n (click)=\"toggleRefresh()\"\n *ngIf=\"refresh || config.refresh\"\n [attr.data-automation-id]=\"cardAutomationId + '-refresh'\"\n tooltip=\"{{ labels.refresh }}\"\n tooltipPosition=\"bottom-left\"\n ></novo-button>\n\n <novo-button\n theme=\"icon\"\n [icon]=\"'x' | ifBh2026Theme : 'close-o'\"\n (click)=\"toggleClose()\"\n *ngIf=\"close || config.close\"\n [attr.data-automation-id]=\"cardAutomationId + '-close'\"\n tooltip=\"{{ labels.close }}\"\n tooltipPosition=\"bottom-left\"\n ></novo-button>\n </div>\n </header>\n <!--Content (transcluded)-->\n <ng-content *ngIf=\"!(loading || config.loading) && !(message || config.message)\"></ng-content>\n <!--Error/Empty Message-->\n <p\n class=\"card-message\"\n *ngIf=\"!(loading || config.loading) && (message || config.message)\"\n [attr.data-automation-id]=\"cardAutomationId + '-message'\"\n >\n <i *ngIf=\"messageIconClass\" [ngClass]=\"messageIconClass\"></i> <span [innerHtml]=\"message || config.message\"></span>\n </p>\n <!--Card Footer-->\n <ng-content\n *ngIf=\"!(loading || config.loading) && !(message || config.message)\"\n select=\"footer,novo-card-footer,[novo-card-footer],[novoCardFooter]\"\n ></ng-content>\n `,\n styleUrls: ['./Card.scss'],\n standalone: false,\n})\nexport class CardElement implements OnChanges, OnInit {\n @Input()\n padding: boolean = true;\n @Input()\n config: any = {};\n @Input()\n title: string;\n @Input()\n message: string;\n @Input()\n messageIcon: string;\n @Input()\n icon: string;\n // A feature for the 2026 styles that lets a card icon match either the icon default color (auto) or the --page-entity-color css variable\n @Input()\n iconColorClass: 'icon-color-auto' | 'icon-color-parent' | undefined;\n @Input()\n iconTooltip: string;\n @Input()\n refresh: boolean;\n @Input()\n close: boolean;\n @Input()\n move: boolean;\n @Input()\n loading: boolean;\n\n @Input()\n @BooleanInput()\n @HostBinding('class.novo-card-inline')\n inline: boolean;\n\n @Input()\n inset: string = 'none';\n\n @HostBinding('class')\n get cardClass() {\n return `${this.iconColorClass || ''} novo-card-inset-${this.inset}`;\n }\n\n @Output()\n onClose: EventEmitter<void> = new EventEmitter();\n @Output()\n onRefresh: EventEmitter<void> = new EventEmitter();\n\n cardAutomationId: string;\n labels: NovoLabelService;\n iconClass: string | null;\n messageIconClass: string;\n\n constructor(labels: NovoLabelService) {\n this.labels = labels;\n }\n\n ngOnInit() {\n this.config = this.config || {};\n }\n\n ngOnChanges(changes?: SimpleChanges) {\n this.config = this.config || {};\n this.cardAutomationId = `${(this.title || this.config.title || 'no-title').trim().toLowerCase().replace(/\\s/g, '-')}-card`;\n\n const newIcon: string = this.icon || this.config.icon;\n const newMessageIcon: string = this.messageIcon || this.config.messageIcon;\n this.iconClass = newIcon ? `bhi-${newIcon}` : null;\n this.messageIconClass = newMessageIcon ? `bhi-${newMessageIcon}` : null;\n }\n\n toggleClose() {\n if (!this.config.onClose) {\n this.onClose.next();\n } else {\n this.config.onClose();\n }\n }\n\n toggleRefresh() {\n if (!this.config.onRefresh) {\n this.onRefresh.next();\n } else {\n this.config.onRefresh();\n }\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { NovoLoadingModule } from 'novo-elements/elements/loading';\nimport { NovoTooltipModule } from 'novo-elements/elements/tooltip';\nimport { NovoCommonModule } from 'novo-elements/elements/common';\nimport { CardActionsElement, CardContentElement, CardElement, CardFooterElement, CardHeaderElement } from './Card';\n\n@NgModule({\n imports: [CommonModule, NovoIconModule, NovoButtonModule, NovoLoadingModule, NovoTooltipModule, NovoCommonModule],\n declarations: [CardElement, CardActionsElement, CardContentElement, CardHeaderElement, CardFooterElement],\n exports: [CardElement, CardActionsElement, CardContentElement, CardHeaderElement, CardFooterElement],\n})\nexport class NovoCardModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}