@bravobit/bb-foundation 0.44.1 → 0.44.4

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 (151) hide show
  1. package/esm2022/auth/lib/auth.interceptor.mjs +3 -3
  2. package/esm2022/auth/lib/auth.module.mjs +4 -4
  3. package/esm2022/auth/lib/auth.service.mjs +3 -3
  4. package/esm2022/auth/lib/directives/authenticated.directive.mjs +3 -3
  5. package/esm2022/collections/lib/collections.module.mjs +4 -4
  6. package/esm2022/collections/lib/components/collections-actions/collections-actions.component.mjs +3 -3
  7. package/esm2022/collections/lib/components/collections-grid/collections-grid.component.mjs +3 -3
  8. package/esm2022/collections/lib/components/collections-pager/collections-pager.component.mjs +3 -3
  9. package/esm2022/collections/lib/components/collections-table/collections-table.component.mjs +3 -3
  10. package/esm2022/collections/lib/components/collections-table-label/collections-table-label.component.mjs +3 -3
  11. package/esm2022/collections/lib/components/collections-table-sorting/collections-table-sorting.component.mjs +3 -3
  12. package/esm2022/collections/lib/components/collections-viewer/collections-viewer.component.mjs +3 -3
  13. package/esm2022/collections/lib/directives/collections-data-row.directive.mjs +3 -3
  14. package/esm2022/collections/lib/directives/collections-data.directive.mjs +3 -3
  15. package/esm2022/collections/lib/directives/collections-empty.directive.mjs +3 -3
  16. package/esm2022/collections/lib/directives/collections-error.directive.mjs +3 -3
  17. package/esm2022/collections/lib/directives/collections-initial.directive.mjs +3 -3
  18. package/esm2022/collections/lib/directives/collections-item.directive.mjs +3 -3
  19. package/esm2022/combobox/combobox/combobox-container.directive.mjs +3 -3
  20. package/esm2022/combobox/combobox/combobox.component.mjs +3 -3
  21. package/esm2022/combobox/combobox-label.directive.mjs +3 -3
  22. package/esm2022/combobox/combobox-option.directive.mjs +3 -3
  23. package/esm2022/combobox/combobox-panel/combobox-panel.component.mjs +3 -3
  24. package/esm2022/dashboard/lib/dashboard/dashboard.component.mjs +3 -3
  25. package/esm2022/dashboard/lib/dashboard-header/dashboard-header.component.mjs +3 -3
  26. package/esm2022/dashboard/lib/dashboard-menu/dashboard-menu.component.mjs +3 -3
  27. package/esm2022/dashboard/lib/dashboard-menu-item/dashboard-menu-item.component.mjs +3 -3
  28. package/esm2022/dashboard/lib/dashboard-sidebar/dashboard-sidebar.component.mjs +3 -3
  29. package/esm2022/dashboard/lib/dashboard-sidebar-group/dashboard-sidebar-group.component.mjs +3 -3
  30. package/esm2022/dashboard/lib/dashboard-sidebar-item/dashboard-sidebar-item.component.mjs +3 -3
  31. package/esm2022/dashboard/lib/dashboard.module.mjs +4 -4
  32. package/esm2022/dialog/lib/dialog-actions/dialog-actions.component.mjs +3 -3
  33. package/esm2022/dialog/lib/dialog-confirm/dialog-confirm.component.mjs +3 -3
  34. package/esm2022/dialog/lib/dialog-container/dialog-container.component.mjs +3 -3
  35. package/esm2022/dialog/lib/dialog-header/dialog-header.component.mjs +3 -3
  36. package/esm2022/dialog/lib/dialog-link/dialog-link.component.mjs +3 -3
  37. package/esm2022/dialog/lib/dialog-modal/dialog-modal.component.mjs +3 -3
  38. package/esm2022/dialog/lib/dialog-overlay/dialog-overlay.component.mjs +3 -3
  39. package/esm2022/dialog/lib/dialog.insertion.mjs +3 -3
  40. package/esm2022/dialog/lib/dialog.module.mjs +4 -4
  41. package/esm2022/dialog/lib/dialog.service.mjs +3 -3
  42. package/esm2022/dialog/lib/directives/confirm.directive.mjs +3 -3
  43. package/esm2022/elements/lib/avatar/avatar.component.mjs +3 -3
  44. package/esm2022/elements/lib/button/button.component.mjs +9 -9
  45. package/esm2022/elements/lib/checkbox/checkbox.component.mjs +3 -3
  46. package/esm2022/elements/lib/checkbox-group/checkbox-group.component.mjs +3 -3
  47. package/esm2022/elements/lib/date-picker/date-picker.component.mjs +3 -3
  48. package/esm2022/elements/lib/directives/addon.directive.mjs +6 -6
  49. package/esm2022/elements/lib/directives/extra-error-controls.directive.mjs +3 -3
  50. package/esm2022/elements/lib/directives/file-drop.directive.mjs +3 -3
  51. package/esm2022/elements/lib/directives/form-submit.directive.mjs +3 -3
  52. package/esm2022/elements/lib/directives/form-submitter.directive.mjs +3 -3
  53. package/esm2022/elements/lib/directives/image-upload.directive.mjs +3 -3
  54. package/esm2022/elements/lib/directives/input.directive.mjs +3 -3
  55. package/esm2022/elements/lib/elements.module.mjs +4 -4
  56. package/esm2022/elements/lib/file-picker/file-picker.component.mjs +3 -3
  57. package/esm2022/elements/lib/form-control/form-control.component.mjs +3 -3
  58. package/esm2022/elements/lib/form-error/form-error.component.mjs +3 -3
  59. package/esm2022/elements/lib/form-group/form-group.component.mjs +3 -3
  60. package/esm2022/elements/lib/icon/icon.component.mjs +3 -3
  61. package/esm2022/elements/lib/image-picker/image-picker.component.mjs +3 -3
  62. package/esm2022/elements/lib/multi-file-control/multi-file-control.component.mjs +3 -3
  63. package/esm2022/elements/lib/pipes/date.pipe.mjs +3 -3
  64. package/esm2022/elements/lib/pipes/file-image.pipe.mjs +3 -3
  65. package/esm2022/elements/lib/pipes/file-size.pipe.mjs +3 -3
  66. package/esm2022/elements/lib/pipes/relative-time.pipe.mjs +3 -3
  67. package/esm2022/elements/lib/radio-button/radio-button.component.mjs +3 -3
  68. package/esm2022/elements/lib/radio-group/radio-group.component.mjs +3 -3
  69. package/esm2022/elements/lib/spinner/spinner.component.mjs +3 -3
  70. package/esm2022/http/lib/http.module.mjs +4 -4
  71. package/esm2022/http/lib/interceptors/base-url.interceptor.mjs +3 -3
  72. package/esm2022/http/lib/interceptors/error.interceptor.mjs +3 -3
  73. package/esm2022/lib/core/services/exif.service.mjs +3 -3
  74. package/esm2022/lib/core/services/file-loader.service.mjs +3 -3
  75. package/esm2022/lib/core/services/files.service.mjs +3 -3
  76. package/esm2022/lib/core/services/image-converter.service.mjs +3 -3
  77. package/esm2022/lib/core/services/languages.service.mjs +3 -3
  78. package/esm2022/lib/core/services/network.service.mjs +3 -3
  79. package/esm2022/lib/core/services/patch.service.mjs +3 -3
  80. package/esm2022/lib/core/tokens/global-focus-mode.token.mjs +10 -0
  81. package/esm2022/localize/lib/localize.module.mjs +4 -4
  82. package/esm2022/localize/lib/localize.pipe.mjs +3 -3
  83. package/esm2022/localize/lib/localize.service.mjs +3 -3
  84. package/esm2022/localize/lib/views/localize-string/localize-string.component.mjs +3 -3
  85. package/esm2022/localize/lib/views/localize-template.directive.mjs +3 -3
  86. package/esm2022/masking/lib/directives/currency-mask.directive.mjs +3 -3
  87. package/esm2022/masking/lib/directives/date-mask.directive.mjs +3 -3
  88. package/esm2022/masking/lib/directives/input-mask.directive.mjs +3 -3
  89. package/esm2022/masking/lib/masking.module.mjs +4 -4
  90. package/esm2022/masking/lib/masking.service.mjs +3 -3
  91. package/esm2022/notifications/lib/notifications-item/notifications-item.component.mjs +3 -3
  92. package/esm2022/notifications/lib/notifications-list/notifications-list.component.mjs +3 -3
  93. package/esm2022/notifications/lib/notifications.module.mjs +4 -4
  94. package/esm2022/notifications/lib/notifications.service.mjs +3 -3
  95. package/esm2022/permissions/lib/directives/permission.directive.mjs +3 -3
  96. package/esm2022/permissions/lib/permissions.module.mjs +4 -4
  97. package/esm2022/permissions/lib/permissions.service.mjs +3 -3
  98. package/esm2022/public_api.mjs +2 -1
  99. package/esm2022/recaptcha/lib/recaptcha/recaptcha.component.mjs +3 -3
  100. package/esm2022/recaptcha/lib/recaptcha-loader.service.mjs +3 -3
  101. package/esm2022/recaptcha/lib/recaptcha.module.mjs +4 -4
  102. package/esm2022/select/lib/select/select.component.mjs +17 -11
  103. package/esm2022/select/lib/select-label.directive.mjs +3 -3
  104. package/esm2022/select/lib/select-multi-label.directive.mjs +3 -3
  105. package/esm2022/select/lib/select-option-group.directive.mjs +3 -3
  106. package/esm2022/select/lib/select-option.directive.mjs +3 -3
  107. package/esm2022/select/lib/select.module.mjs +4 -4
  108. package/esm2022/storage/lib/storage.service.mjs +3 -3
  109. package/esm2022/table/lib/components/table/table.component.mjs +9 -9
  110. package/esm2022/table/lib/components/table-cell/table-cell.component.mjs +3 -3
  111. package/esm2022/table/lib/components/table-header-cell/table-header-cell.component.mjs +3 -3
  112. package/esm2022/table/lib/components/table-pager/table-pager.component.mjs +3 -3
  113. package/esm2022/table/lib/table.module.mjs +4 -4
  114. package/esm2022/tooltip/lib/tooltip-container/tooltip-container.component.mjs +3 -3
  115. package/esm2022/tooltip/lib/tooltip.directive.mjs +3 -3
  116. package/esm2022/tooltip/lib/tooltip.module.mjs +4 -4
  117. package/esm2022/utils/lib/directives/autosize.directive.mjs +3 -3
  118. package/esm2022/utils/lib/directives/focus-trap.directive.mjs +3 -3
  119. package/esm2022/utils/lib/directives/focus.directive.mjs +13 -10
  120. package/esm2022/utils/lib/directives/template.directive.mjs +3 -3
  121. package/esm2022/utils/lib/utils.module.mjs +4 -4
  122. package/fesm2022/bravobit-bb-foundation-auth.mjs +13 -13
  123. package/fesm2022/bravobit-bb-foundation-collections.mjs +43 -43
  124. package/fesm2022/bravobit-bb-foundation-combobox.mjs +15 -15
  125. package/fesm2022/bravobit-bb-foundation-dashboard.mjs +25 -25
  126. package/fesm2022/bravobit-bb-foundation-dialog.mjs +34 -34
  127. package/fesm2022/bravobit-bb-foundation-elements.mjs +90 -90
  128. package/fesm2022/bravobit-bb-foundation-elements.mjs.map +1 -1
  129. package/fesm2022/bravobit-bb-foundation-http.mjs +10 -10
  130. package/fesm2022/bravobit-bb-foundation-localize.mjs +16 -16
  131. package/fesm2022/bravobit-bb-foundation-masking.mjs +16 -16
  132. package/fesm2022/bravobit-bb-foundation-notifications.mjs +13 -13
  133. package/fesm2022/bravobit-bb-foundation-permissions.mjs +10 -10
  134. package/fesm2022/bravobit-bb-foundation-recaptcha.mjs +10 -10
  135. package/fesm2022/bravobit-bb-foundation-select.mjs +32 -26
  136. package/fesm2022/bravobit-bb-foundation-select.mjs.map +1 -1
  137. package/fesm2022/bravobit-bb-foundation-storage.mjs +3 -3
  138. package/fesm2022/bravobit-bb-foundation-table.mjs +22 -22
  139. package/fesm2022/bravobit-bb-foundation-tooltip.mjs +10 -10
  140. package/fesm2022/bravobit-bb-foundation-utils.mjs +25 -22
  141. package/fesm2022/bravobit-bb-foundation-utils.mjs.map +1 -1
  142. package/fesm2022/bravobit-bb-foundation.mjs +32 -23
  143. package/fesm2022/bravobit-bb-foundation.mjs.map +1 -1
  144. package/lib/core/tokens/global-focus-mode.token.d.ts +4 -0
  145. package/localize/lib/transforms/interpolate.transform.d.ts +1 -1
  146. package/localize/lib/transforms/plural.transform.d.ts +1 -1
  147. package/localize/lib/transforms/reference.transform.d.ts +1 -1
  148. package/package.json +25 -25
  149. package/public_api.d.ts +1 -0
  150. package/select/lib/select/select.component.d.ts +5 -3
  151. package/utils/lib/directives/focus.directive.d.ts +4 -3
@@ -15,10 +15,10 @@ class BbSelectOptionGroup {
15
15
  constructor(template) {
16
16
  this.template = template;
17
17
  }
18
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: BbSelectOptionGroup, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
19
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.4", type: BbSelectOptionGroup, isStandalone: true, selector: "ng-template[bbSelectOptionGroup]", ngImport: i0 });
18
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BbSelectOptionGroup, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
19
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: BbSelectOptionGroup, isStandalone: true, selector: "ng-template[bbSelectOptionGroup]", ngImport: i0 });
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: BbSelectOptionGroup, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BbSelectOptionGroup, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
24
  selector: 'ng-template[bbSelectOptionGroup]',
@@ -31,10 +31,10 @@ class BbSelectMultiLabel {
31
31
  constructor(template) {
32
32
  this.template = template;
33
33
  }
34
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: BbSelectMultiLabel, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
35
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.4", type: BbSelectMultiLabel, isStandalone: true, selector: "ng-template[bbSelectMultiLabel]", ngImport: i0 });
34
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BbSelectMultiLabel, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
35
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: BbSelectMultiLabel, isStandalone: true, selector: "ng-template[bbSelectMultiLabel]", ngImport: i0 });
36
36
  }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: BbSelectMultiLabel, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BbSelectMultiLabel, decorators: [{
38
38
  type: Directive,
39
39
  args: [{
40
40
  selector: 'ng-template[bbSelectMultiLabel]',
@@ -47,10 +47,10 @@ class BbSelectOption {
47
47
  constructor(template) {
48
48
  this.template = template;
49
49
  }
50
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: BbSelectOption, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
51
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.4", type: BbSelectOption, isStandalone: true, selector: "ng-template[bbSelectOption]", ngImport: i0 });
50
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BbSelectOption, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
51
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: BbSelectOption, isStandalone: true, selector: "ng-template[bbSelectOption]", ngImport: i0 });
52
52
  }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: BbSelectOption, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BbSelectOption, decorators: [{
54
54
  type: Directive,
55
55
  args: [{
56
56
  selector: 'ng-template[bbSelectOption]',
@@ -63,10 +63,10 @@ class BbSelectLabel {
63
63
  constructor(template) {
64
64
  this.template = template;
65
65
  }
66
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: BbSelectLabel, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
67
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.4", type: BbSelectLabel, isStandalone: true, selector: "ng-template[bbSelectLabel]", ngImport: i0 });
66
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BbSelectLabel, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
67
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: BbSelectLabel, isStandalone: true, selector: "ng-template[bbSelectLabel]", ngImport: i0 });
68
68
  }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: BbSelectLabel, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BbSelectLabel, decorators: [{
70
70
  type: Directive,
71
71
  args: [{
72
72
  selector: 'ng-template[bbSelectLabel]',
@@ -91,7 +91,6 @@ class BbSelect {
91
91
  hint = null;
92
92
  data = null;
93
93
  required = false;
94
- disabled = false;
95
94
  readonly = false;
96
95
  grouped = false;
97
96
  hideErrors = false;
@@ -117,6 +116,13 @@ class BbSelect {
117
116
  clearSearchOnAdd = null;
118
117
  addTag = false;
119
118
  appendTo = 'body';
119
+ set disabled(value) {
120
+ this._disabled = value;
121
+ this._disabled ? this.control?.disable() : this.control?.enable();
122
+ }
123
+ get disabled() {
124
+ return this._disabled;
125
+ }
120
126
  get value() {
121
127
  return this.control.value;
122
128
  }
@@ -129,6 +135,7 @@ class BbSelect {
129
135
  }
130
136
  // State.
131
137
  error = false;
138
+ _disabled = false;
132
139
  // Callbacks.
133
140
  onTouchedCallback = () => ({});
134
141
  onChangeCallback = () => ({});
@@ -151,7 +158,6 @@ class BbSelect {
151
158
  }
152
159
  setDisabledState(isDisabled) {
153
160
  this.disabled = isDisabled;
154
- this.disabled ? this.control?.disable() : this.control?.enable();
155
161
  }
156
162
  onErrorChange(error) {
157
163
  this.error = !!error;
@@ -161,14 +167,14 @@ class BbSelect {
161
167
  .subscribe(value => this.onChangeCallback?.(value));
162
168
  this._subscription.add(subscription);
163
169
  }
164
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: BbSelect, deps: [], target: i0.ɵɵFactoryTarget.Component });
165
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.4", type: BbSelect, isStandalone: true, selector: "bb-select", inputs: { label: "label", hint: "hint", data: ["data", "data", observableAttribute], required: ["required", "required", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], readonly: ["readonly", "readonly", booleanAttribute], grouped: ["grouped", "grouped", booleanAttribute], hideErrors: ["hideErrors", "hideErrors", booleanAttribute], loading: ["loading", "loading", booleanAttribute], multiple: ["multiple", "multiple", booleanAttribute], clearable: ["clearable", "clearable", booleanAttribute], searchable: ["searchable", "searchable", booleanAttribute], virtualScroll: ["virtualScroll", "virtualScroll", booleanAttribute], closeOnSelect: ["closeOnSelect", "closeOnSelect", booleanAttribute], selectableGroup: ["selectableGroup", "selectableGroup", booleanAttribute], selectableGroupAsModel: ["selectableGroupAsModel", "selectableGroupAsModel", booleanAttribute], hideArrow: ["hideArrow", "hideArrow", booleanAttribute], selectOnTab: ["selectOnTab", "selectOnTab", booleanAttribute], hideSelected: ["hideSelected", "hideSelected", booleanAttribute], maxSelectedItems: ["maxSelectedItems", "maxSelectedItems", numberAttribute], bindLabel: "bindLabel", bindValue: "bindValue", placeholder: "placeholder", typeahead: "typeahead", trackByFn: "trackByFn", groupBy: "groupBy", isOpen: "isOpen", clearSearchOnAdd: "clearSearchOnAdd", addTag: "addTag", appendTo: "appendTo", value: "value" }, outputs: { valueChange: "valueChange", onBlur: "onBlur", onChange: "onChange" }, host: { properties: { "class.required": "required", "class.readonly": "readonly", "class.disabled": "disabled", "class.grouped": "grouped", "class.error": "error", "class.hide-arrow": "hideArrow" }, classAttribute: "bb-select" }, providers: [{
170
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BbSelect, deps: [], target: i0.ɵɵFactoryTarget.Component });
171
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: BbSelect, isStandalone: true, selector: "bb-select", inputs: { label: "label", hint: "hint", data: ["data", "data", observableAttribute], required: ["required", "required", booleanAttribute], readonly: ["readonly", "readonly", booleanAttribute], grouped: ["grouped", "grouped", booleanAttribute], hideErrors: ["hideErrors", "hideErrors", booleanAttribute], loading: ["loading", "loading", booleanAttribute], multiple: ["multiple", "multiple", booleanAttribute], clearable: ["clearable", "clearable", booleanAttribute], searchable: ["searchable", "searchable", booleanAttribute], virtualScroll: ["virtualScroll", "virtualScroll", booleanAttribute], closeOnSelect: ["closeOnSelect", "closeOnSelect", booleanAttribute], selectableGroup: ["selectableGroup", "selectableGroup", booleanAttribute], selectableGroupAsModel: ["selectableGroupAsModel", "selectableGroupAsModel", booleanAttribute], hideArrow: ["hideArrow", "hideArrow", booleanAttribute], selectOnTab: ["selectOnTab", "selectOnTab", booleanAttribute], hideSelected: ["hideSelected", "hideSelected", booleanAttribute], maxSelectedItems: ["maxSelectedItems", "maxSelectedItems", numberAttribute], bindLabel: "bindLabel", bindValue: "bindValue", placeholder: "placeholder", typeahead: "typeahead", trackByFn: "trackByFn", groupBy: "groupBy", isOpen: "isOpen", clearSearchOnAdd: "clearSearchOnAdd", addTag: "addTag", appendTo: "appendTo", disabled: ["disabled", "disabled", booleanAttribute], value: "value" }, outputs: { valueChange: "valueChange", onBlur: "onBlur", onChange: "onChange" }, host: { properties: { "class.required": "required", "class.readonly": "readonly", "class.disabled": "disabled", "class.grouped": "grouped", "class.error": "error", "class.hide-arrow": "hideArrow" }, classAttribute: "bb-select" }, providers: [{
166
172
  provide: NG_VALUE_ACCESSOR,
167
173
  useExisting: forwardRef(() => BbSelect),
168
174
  multi: true
169
- }], queries: [{ propertyName: "optionTemplate", first: true, predicate: BbSelectOption, descendants: true, read: TemplateRef }, { propertyName: "optionGroupTemplate", first: true, predicate: BbSelectOptionGroup, descendants: true, read: TemplateRef }, { propertyName: "labelTemplate", first: true, predicate: BbSelectLabel, descendants: true, read: TemplateRef }, { propertyName: "multiLabelTemplate", first: true, predicate: BbSelectMultiLabel, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "selectComponent", first: true, predicate: NgSelectComponent, descendants: true, static: true }], ngImport: i0, template: "<!-- Label of the form control. -->\n@if (label; as labelContent) {\n <label [attr.for]=\"labelId\"\n class=\"bb-select-label\">\n <ng-template [bbTemplate]=\"labelContent\">{{ labelContent }}</ng-template>\n </label>\n}\n\n<ng-select [formControl]=\"control\"\n [notFoundText]=\"'select.not_found_text' | bbLocalize\"\n [clearAllText]=\"'select.clear_all_text' | bbLocalize\"\n [loadingText]=\"'select.loading_text' | bbLocalize\"\n [typeToSearchText]=\"'select.type_to_search_text' | bbLocalize\"\n [addTagText]=\"'select.add_tag_text' | bbLocalize\"\n [virtualScroll]=\"virtualScroll\"\n [items]=\"data | async\"\n [multiple]=\"multiple\"\n [loading]=\"loading\"\n [labelForId]=\"labelId\"\n [searchable]=\"searchable\"\n [placeholder]=\"placeholder\"\n [clearable]=\"clearable\"\n [closeOnSelect]=\"closeOnSelect\"\n [trackByFn]=\"trackByFn\"\n [typeahead]=\"typeahead\"\n [bindLabel]=\"bindLabel\"\n [bindValue]=\"bindValue\"\n [selectableGroup]=\"selectableGroup\"\n [selectableGroupAsModel]=\"selectableGroupAsModel\"\n [clearSearchOnAdd]=\"clearSearchOnAdd\"\n [hideSelected]=\"hideSelected\"\n [maxSelectedItems]=\"maxSelectedItems\"\n [groupBy]=\"groupBy\"\n [isOpen]=\"isOpen\"\n [readonly]=\"readonly\"\n [addTag]=\"addTag\"\n [inputAttrs]=\"{autocorrect: 'off', autocapitalize: 'none', spellcheck: 'false', autocomplete: 'off'}\"\n [appendTo]=\"appendTo\"\n (blur)=\"onBlur?.emit($event)\"\n (change)=\"onChange?.emit($event)\">\n @if (optionTemplate) {\n <ng-template ng-option-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (labelTemplate) {\n <ng-template ng-label-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"labelTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (multiLabelTemplate) {\n <ng-template ng-multi-label-tmp\n let-items=\"items\"\n let-clear=\"clear\">\n <ng-container *ngTemplateOutlet=\"multiLabelTemplate; context: {items: items, clear: clear}\"></ng-container>\n </ng-template>\n }\n @if (optionGroupTemplate) {\n <ng-template ng-optgroup-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionGroupTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n</ng-select>\n\n@if (!hideErrors) {\n <bb-form-error (errorChange)=\"onErrorChange($event)\"></bb-form-error>\n}\n\n<!-- The form control hint. -->\n@if (hint; as hintContent) {\n <p class=\"bb-select-hint\">\n <ng-template [bbTemplate]=\"hintContent\">{{ hintContent }}</ng-template>\n </p>\n}\n", styles: [".bb-select{color:#2d3c4d;display:block;font-size:1rem}.bb-select.grouped{margin-bottom:1.5rem}.bb-select.required>.bb-select-label:after{content:\"*\";font-size:.75rem;vertical-align:top;color:var(--bb-form-label-required-color)}.bb-select.error>.bb-select-label{color:#c23934}.bb-select.error>.ng-select>.ng-select-container,.bb-select.error>.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:0 .375rem .375rem -.375rem #0000001a,0 0 0 .1875rem #f8d3d3}.bb-select.error>.ng-select>.ng-select-container{border:1px solid hsl(0,73%,30%);background-color:#f8d3d3}.bb-select.error>.ng-select>.ng-select-container>.ng-value-container>.ng-placeholder{color:#ea7b7b}.bb-select.readonly>.ng-select>.ng-select-container{cursor:default;border-style:dotted;border-color:#bdc4c9;color:#111;background-color:var(--bb-select-background-color)}.bb-select.hide-arrow .ng-arrow-wrapper{width:0;opacity:0;overflow:hidden;-webkit-user-select:none;user-select:none;pointer-events:none}.bb-select-label{display:block;margin-bottom:.25rem;color:var(--bb-form-label-color);font-size:var(--bb-form-label-font-size);font-weight:var(--bb-form-label-font-weight)}.bb-select-hint{display:block;line-height:1.5;margin-top:.25rem;font-size:.8125rem;color:#758795}.ng-select.ng-select-opened>.ng-select-container{background:var(--bb-select-background-color)}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:var(--bb-select-box-shadow)}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-.125rem;border-width:0 .3125rem .3125rem;border-color:transparent transparent var(--bb-select-border-color)}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-left-radius:0;border-top-right-radius:0}.ng-select.ng-select-opened.ng-select-right>.ng-select-container{border-top-right-radius:0;border-bottom-right-radius:0}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-left>.ng-select-container{border-top-left-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container{border-color:#757e8a;box-shadow:var(--bb-select-focus-box-shadow)}.ng-select.ng-select-disabled>.ng-select-container{color:gray;background-color:#e6e6e6}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{align-items:center;transition-duration:.25s;min-height:2.625rem;color:#111;background-color:var(--bb-select-background-color);box-shadow:var(--bb-select-box-shadow);border:1px solid var(--bb-select-border-color);border-radius:var(--bb-select-border-radius);transition-property:background-color,box-shadow;transition-timing-function:cubic-bezier(0,0,.2,1)}.ng-select .ng-select-container .ng-value-container{align-items:center;padding-left:.5rem}.ng-select .ng-select-container .ng-value-container .ng-placeholder{color:#d1d1d1}.ng-select.ng-select-single .ng-select-container{height:2.625rem}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{left:0;top:50%;padding-right:3.125rem;transform:translateY(-50%);padding-left:.5rem}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{border-radius:.25rem;border:1px solid var(--bb-select-border-color);background-color:#f9f9f9}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 .3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:.3125rem;padding-left:.4375rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{line-height:1.6;margin-right:.3125rem;border-radius:.125rem;margin-bottom:.3125rem;color:#111;font-size:1rem;background-color:#ebf5ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:.3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:.0625rem .3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 .1875rem .1875rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#111}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-left:.1875rem;padding-bottom:.3125rem}.ng-select .ng-clear-wrapper{margin-left:.5rem;color:var(--bb-select-border-color)}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus{outline:none}.ng-select .ng-spinner-zone{padding:.3125rem .3125rem 0 0}.ng-select .ng-arrow-wrapper{width:1.5625rem;padding-right:.3125rem}.ng-select .ng-arrow-wrapper .ng-arrow{border-style:solid;border-width:.3125rem .3125rem .15625rem;border-color:var(--bb-select-border-color) transparent transparent}.ng-dropdown-panel{left:0;overflow:hidden;box-shadow:0 1px #0000000f;background-color:var(--bb-select-background-color);border:1px solid var(--bb-select-border-color)}.ng-dropdown-panel.ng-select-top{bottom:100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-left-radius:var(--bb-select-border-radius);border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-left-radius:var(--bb-select-border-radius);border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-right{top:0;left:100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-right-radius:var(--bb-select-border-radius);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-right .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-bottom{top:100%;margin-top:-1px;border-top-color:var(--bb-select-border-color);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-left{top:0;left:-100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-left-radius:var(--bb-select-border-radius);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-left .ng-dropdown-panel-items .ng-option:first-child{border-top-left-radius:var(--bb-select-border-radius)}.ng-dropdown-panel .ng-dropdown-header{padding:.3125rem .4375rem;border-bottom:1px solid var(--bb-select-border-color)}.ng-dropdown-panel .ng-dropdown-footer{padding:.3125rem .4375rem;border-top:1px solid var(--bb-select-border-color)}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{cursor:pointer;font-weight:500;-webkit-user-select:none;user-select:none;padding:.5rem .625rem;color:#0000008a}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{font-weight:500;background-color:#ebf5ff;color:#0000008a}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{font-size:1rem;font-weight:400;padding:.5rem .625rem;color:#000000de;background-color:var(--bb-select-background-color)}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#111;background-color:#ebf5ff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:500}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{color:#111;background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#aaa}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:1.375rem}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:.3125rem}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: BbTemplate, selector: "[bbTemplate]", inputs: ["bbTemplate"] }, { kind: "component", type: BbFormError, selector: "bb-form-error", inputs: ["control"], outputs: ["errorChange"] }, { kind: "pipe", type: BbLocalize, name: "bbLocalize" }, { kind: "component", type: NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "preventToggleOnRightClick", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "ngClass", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: NgOptionTemplateDirective, selector: "[ng-option-tmp]" }, { kind: "directive", type: NgLabelTemplateDirective, selector: "[ng-label-tmp]" }, { kind: "directive", type: NgMultiLabelTemplateDirective, selector: "[ng-multi-label-tmp]" }, { kind: "directive", type: NgOptgroupTemplateDirective, selector: "[ng-optgroup-tmp]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
175
+ }], queries: [{ propertyName: "optionTemplate", first: true, predicate: BbSelectOption, descendants: true, read: TemplateRef }, { propertyName: "optionGroupTemplate", first: true, predicate: BbSelectOptionGroup, descendants: true, read: TemplateRef }, { propertyName: "labelTemplate", first: true, predicate: BbSelectLabel, descendants: true, read: TemplateRef }, { propertyName: "multiLabelTemplate", first: true, predicate: BbSelectMultiLabel, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "selectComponent", first: true, predicate: NgSelectComponent, descendants: true, static: true }], ngImport: i0, template: "<!-- Label of the form control. -->\n@if (label; as labelContent) {\n <label [attr.for]=\"labelId\"\n class=\"bb-select-label\">\n <ng-template [bbTemplate]=\"labelContent\">{{ labelContent }}</ng-template>\n </label>\n}\n\n<ng-select [formControl]=\"control\"\n [notFoundText]=\"'select.not_found_text' | bbLocalize\"\n [clearAllText]=\"'select.clear_all_text' | bbLocalize\"\n [loadingText]=\"'select.loading_text' | bbLocalize\"\n [typeToSearchText]=\"'select.type_to_search_text' | bbLocalize\"\n [addTagText]=\"'select.add_tag_text' | bbLocalize\"\n [virtualScroll]=\"virtualScroll\"\n [items]=\"data | async\"\n [multiple]=\"multiple\"\n [loading]=\"loading\"\n [labelForId]=\"labelId\"\n [searchable]=\"searchable\"\n [placeholder]=\"placeholder\"\n [clearable]=\"clearable\"\n [closeOnSelect]=\"closeOnSelect\"\n [trackByFn]=\"trackByFn\"\n [typeahead]=\"typeahead\"\n [bindLabel]=\"bindLabel\"\n [bindValue]=\"bindValue\"\n [selectableGroup]=\"selectableGroup\"\n [selectableGroupAsModel]=\"selectableGroupAsModel\"\n [clearSearchOnAdd]=\"clearSearchOnAdd\"\n [hideSelected]=\"hideSelected\"\n [maxSelectedItems]=\"maxSelectedItems\"\n [groupBy]=\"groupBy\"\n [isOpen]=\"isOpen\"\n [readonly]=\"readonly\"\n [addTag]=\"addTag\"\n [appendTo]=\"appendTo\"\n (blur)=\"onBlur?.emit($event)\"\n (change)=\"onChange?.emit($event)\">\n @if (optionTemplate) {\n <ng-template ng-option-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (labelTemplate) {\n <ng-template ng-label-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"labelTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (multiLabelTemplate) {\n <ng-template ng-multi-label-tmp\n let-items=\"items\"\n let-clear=\"clear\">\n <ng-container *ngTemplateOutlet=\"multiLabelTemplate; context: {items: items, clear: clear}\"></ng-container>\n </ng-template>\n }\n @if (optionGroupTemplate) {\n <ng-template ng-optgroup-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionGroupTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n</ng-select>\n\n@if (!hideErrors) {\n <bb-form-error (errorChange)=\"onErrorChange($event)\"></bb-form-error>\n}\n\n<!-- The form control hint. -->\n@if (hint; as hintContent) {\n <p class=\"bb-select-hint\">\n <ng-template [bbTemplate]=\"hintContent\">{{ hintContent }}</ng-template>\n </p>\n}\n", styles: [".bb-select{color:#2d3c4d;display:block;font-size:1rem}.bb-select.grouped{margin-bottom:1.5rem}.bb-select.required>.bb-select-label:after{content:\"*\";font-size:.75rem;vertical-align:top;color:var(--bb-form-label-required-color)}.bb-select.error>.bb-select-label{color:#c23934}.bb-select.error>.ng-select>.ng-select-container,.bb-select.error>.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:0 .375rem .375rem -.375rem #0000001a,0 0 0 .1875rem #f8d3d3}.bb-select.error>.ng-select>.ng-select-container{border:1px solid hsl(0,73%,30%);background-color:#f8d3d3}.bb-select.error>.ng-select>.ng-select-container>.ng-value-container>.ng-placeholder{color:#ea7b7b}.bb-select.readonly>.ng-select>.ng-select-container{cursor:default;border-style:dotted;border-color:#bdc4c9;color:#111;background-color:var(--bb-select-background-color)}.bb-select.hide-arrow .ng-arrow-wrapper{width:0;opacity:0;overflow:hidden;-webkit-user-select:none;user-select:none;pointer-events:none}.bb-select-label{display:block;margin-bottom:.25rem;color:var(--bb-form-label-color);font-size:var(--bb-form-label-font-size);font-weight:var(--bb-form-label-font-weight)}.bb-select-hint{display:block;line-height:1.5;margin-top:.25rem;font-size:.8125rem;color:#758795}.ng-select.ng-select-opened>.ng-select-container{background:var(--bb-select-background-color)}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:var(--bb-select-box-shadow)}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-.125rem;border-width:0 .3125rem .3125rem;border-color:transparent transparent var(--bb-select-border-color)}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-left-radius:0;border-top-right-radius:0}.ng-select.ng-select-opened.ng-select-right>.ng-select-container{border-top-right-radius:0;border-bottom-right-radius:0}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-left>.ng-select-container{border-top-left-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container{border-color:#757e8a;box-shadow:var(--bb-select-focus-box-shadow)}.ng-select:has(.ng-input input:focus)>.ng-select-container{border-color:#757e8a;box-shadow:var(--bb-select-focus-box-shadow)}.ng-select.ng-select-disabled>.ng-select-container{color:gray;background-color:#e6e6e6}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{align-items:center;transition-duration:.25s;min-height:2.625rem;color:#111;background-color:var(--bb-select-background-color);box-shadow:var(--bb-select-box-shadow);border:1px solid var(--bb-select-border-color);border-radius:var(--bb-select-border-radius);transition-property:background-color,box-shadow;transition-timing-function:cubic-bezier(0,0,.2,1)}.ng-select .ng-select-container .ng-value-container{align-items:center;padding-left:.5rem}.ng-select .ng-select-container .ng-value-container .ng-placeholder{color:#d1d1d1}.ng-select.ng-select-single .ng-select-container{height:2.625rem}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{left:0;top:50%;padding-right:3.125rem;transform:translateY(-50%);padding-left:.5rem}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{border-radius:.25rem;border:1px solid var(--bb-select-border-color);background-color:#f9f9f9}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 .3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:.3125rem;padding-left:.4375rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{line-height:1.6;margin-right:.3125rem;border-radius:.125rem;margin-bottom:.3125rem;color:#111;font-size:1rem;background-color:#ebf5ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:.3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:.0625rem .3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 .1875rem .1875rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#111}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-left:.1875rem;padding-bottom:.3125rem}.ng-select .ng-clear-wrapper{margin-left:.5rem;color:var(--bb-select-border-color)}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus{outline:none}.ng-select .ng-spinner-zone{padding:.3125rem .3125rem 0 0}.ng-select .ng-arrow-wrapper{width:1.5625rem;padding-right:.3125rem}.ng-select .ng-arrow-wrapper .ng-arrow{border-style:solid;border-width:.3125rem .3125rem .15625rem;border-color:var(--bb-select-border-color) transparent transparent}.ng-dropdown-panel{left:0;overflow:hidden;box-shadow:0 1px #0000000f;background-color:var(--bb-select-background-color);border:1px solid var(--bb-select-border-color)}.ng-dropdown-panel.ng-select-top{bottom:100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-left-radius:var(--bb-select-border-radius);border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-left-radius:var(--bb-select-border-radius);border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-right{top:0;left:100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-right-radius:var(--bb-select-border-radius);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-right .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-bottom{top:100%;margin-top:-1px;border-top-color:var(--bb-select-border-color);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-left{top:0;left:-100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-left-radius:var(--bb-select-border-radius);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-left .ng-dropdown-panel-items .ng-option:first-child{border-top-left-radius:var(--bb-select-border-radius)}.ng-dropdown-panel .ng-dropdown-header{padding:.3125rem .4375rem;border-bottom:1px solid var(--bb-select-border-color)}.ng-dropdown-panel .ng-dropdown-footer{padding:.3125rem .4375rem;border-top:1px solid var(--bb-select-border-color)}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{cursor:pointer;font-weight:500;-webkit-user-select:none;user-select:none;padding:.5rem .625rem;color:#0000008a}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{font-weight:500;background-color:#ebf5ff;color:#0000008a}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{font-size:1rem;font-weight:400;padding:.5rem .625rem;color:#000000de;background-color:var(--bb-select-background-color)}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#111;background-color:#ebf5ff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:500}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{color:#111;background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#aaa}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:1.375rem}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:.3125rem}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: BbTemplate, selector: "[bbTemplate]", inputs: ["bbTemplate"] }, { kind: "component", type: BbFormError, selector: "bb-form-error", inputs: ["control"], outputs: ["errorChange"] }, { kind: "pipe", type: BbLocalize, name: "bbLocalize" }, { kind: "component", type: NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "ariaLabel", "markFirst", "placeholder", "fixedPlaceholder", "notFoundText", "typeToSearchText", "preventToggleOnRightClick", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "ngClass", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick", "keyDownFn"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: NgOptionTemplateDirective, selector: "[ng-option-tmp]" }, { kind: "directive", type: NgLabelTemplateDirective, selector: "[ng-label-tmp]" }, { kind: "directive", type: NgMultiLabelTemplateDirective, selector: "[ng-multi-label-tmp]" }, { kind: "directive", type: NgOptgroupTemplateDirective, selector: "[ng-optgroup-tmp]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
170
176
  }
171
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: BbSelect, decorators: [{
177
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BbSelect, decorators: [{
172
178
  type: Component,
173
179
  args: [{ selector: 'bb-select', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{
174
180
  provide: NG_VALUE_ACCESSOR,
@@ -194,7 +200,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
194
200
  NgLabelTemplateDirective,
195
201
  NgMultiLabelTemplateDirective,
196
202
  NgOptgroupTemplateDirective
197
- ], template: "<!-- Label of the form control. -->\n@if (label; as labelContent) {\n <label [attr.for]=\"labelId\"\n class=\"bb-select-label\">\n <ng-template [bbTemplate]=\"labelContent\">{{ labelContent }}</ng-template>\n </label>\n}\n\n<ng-select [formControl]=\"control\"\n [notFoundText]=\"'select.not_found_text' | bbLocalize\"\n [clearAllText]=\"'select.clear_all_text' | bbLocalize\"\n [loadingText]=\"'select.loading_text' | bbLocalize\"\n [typeToSearchText]=\"'select.type_to_search_text' | bbLocalize\"\n [addTagText]=\"'select.add_tag_text' | bbLocalize\"\n [virtualScroll]=\"virtualScroll\"\n [items]=\"data | async\"\n [multiple]=\"multiple\"\n [loading]=\"loading\"\n [labelForId]=\"labelId\"\n [searchable]=\"searchable\"\n [placeholder]=\"placeholder\"\n [clearable]=\"clearable\"\n [closeOnSelect]=\"closeOnSelect\"\n [trackByFn]=\"trackByFn\"\n [typeahead]=\"typeahead\"\n [bindLabel]=\"bindLabel\"\n [bindValue]=\"bindValue\"\n [selectableGroup]=\"selectableGroup\"\n [selectableGroupAsModel]=\"selectableGroupAsModel\"\n [clearSearchOnAdd]=\"clearSearchOnAdd\"\n [hideSelected]=\"hideSelected\"\n [maxSelectedItems]=\"maxSelectedItems\"\n [groupBy]=\"groupBy\"\n [isOpen]=\"isOpen\"\n [readonly]=\"readonly\"\n [addTag]=\"addTag\"\n [inputAttrs]=\"{autocorrect: 'off', autocapitalize: 'none', spellcheck: 'false', autocomplete: 'off'}\"\n [appendTo]=\"appendTo\"\n (blur)=\"onBlur?.emit($event)\"\n (change)=\"onChange?.emit($event)\">\n @if (optionTemplate) {\n <ng-template ng-option-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (labelTemplate) {\n <ng-template ng-label-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"labelTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (multiLabelTemplate) {\n <ng-template ng-multi-label-tmp\n let-items=\"items\"\n let-clear=\"clear\">\n <ng-container *ngTemplateOutlet=\"multiLabelTemplate; context: {items: items, clear: clear}\"></ng-container>\n </ng-template>\n }\n @if (optionGroupTemplate) {\n <ng-template ng-optgroup-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionGroupTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n</ng-select>\n\n@if (!hideErrors) {\n <bb-form-error (errorChange)=\"onErrorChange($event)\"></bb-form-error>\n}\n\n<!-- The form control hint. -->\n@if (hint; as hintContent) {\n <p class=\"bb-select-hint\">\n <ng-template [bbTemplate]=\"hintContent\">{{ hintContent }}</ng-template>\n </p>\n}\n", styles: [".bb-select{color:#2d3c4d;display:block;font-size:1rem}.bb-select.grouped{margin-bottom:1.5rem}.bb-select.required>.bb-select-label:after{content:\"*\";font-size:.75rem;vertical-align:top;color:var(--bb-form-label-required-color)}.bb-select.error>.bb-select-label{color:#c23934}.bb-select.error>.ng-select>.ng-select-container,.bb-select.error>.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:0 .375rem .375rem -.375rem #0000001a,0 0 0 .1875rem #f8d3d3}.bb-select.error>.ng-select>.ng-select-container{border:1px solid hsl(0,73%,30%);background-color:#f8d3d3}.bb-select.error>.ng-select>.ng-select-container>.ng-value-container>.ng-placeholder{color:#ea7b7b}.bb-select.readonly>.ng-select>.ng-select-container{cursor:default;border-style:dotted;border-color:#bdc4c9;color:#111;background-color:var(--bb-select-background-color)}.bb-select.hide-arrow .ng-arrow-wrapper{width:0;opacity:0;overflow:hidden;-webkit-user-select:none;user-select:none;pointer-events:none}.bb-select-label{display:block;margin-bottom:.25rem;color:var(--bb-form-label-color);font-size:var(--bb-form-label-font-size);font-weight:var(--bb-form-label-font-weight)}.bb-select-hint{display:block;line-height:1.5;margin-top:.25rem;font-size:.8125rem;color:#758795}.ng-select.ng-select-opened>.ng-select-container{background:var(--bb-select-background-color)}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:var(--bb-select-box-shadow)}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-.125rem;border-width:0 .3125rem .3125rem;border-color:transparent transparent var(--bb-select-border-color)}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-left-radius:0;border-top-right-radius:0}.ng-select.ng-select-opened.ng-select-right>.ng-select-container{border-top-right-radius:0;border-bottom-right-radius:0}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-left>.ng-select-container{border-top-left-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container{border-color:#757e8a;box-shadow:var(--bb-select-focus-box-shadow)}.ng-select.ng-select-disabled>.ng-select-container{color:gray;background-color:#e6e6e6}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{align-items:center;transition-duration:.25s;min-height:2.625rem;color:#111;background-color:var(--bb-select-background-color);box-shadow:var(--bb-select-box-shadow);border:1px solid var(--bb-select-border-color);border-radius:var(--bb-select-border-radius);transition-property:background-color,box-shadow;transition-timing-function:cubic-bezier(0,0,.2,1)}.ng-select .ng-select-container .ng-value-container{align-items:center;padding-left:.5rem}.ng-select .ng-select-container .ng-value-container .ng-placeholder{color:#d1d1d1}.ng-select.ng-select-single .ng-select-container{height:2.625rem}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{left:0;top:50%;padding-right:3.125rem;transform:translateY(-50%);padding-left:.5rem}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{border-radius:.25rem;border:1px solid var(--bb-select-border-color);background-color:#f9f9f9}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 .3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:.3125rem;padding-left:.4375rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{line-height:1.6;margin-right:.3125rem;border-radius:.125rem;margin-bottom:.3125rem;color:#111;font-size:1rem;background-color:#ebf5ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:.3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:.0625rem .3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 .1875rem .1875rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#111}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-left:.1875rem;padding-bottom:.3125rem}.ng-select .ng-clear-wrapper{margin-left:.5rem;color:var(--bb-select-border-color)}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus{outline:none}.ng-select .ng-spinner-zone{padding:.3125rem .3125rem 0 0}.ng-select .ng-arrow-wrapper{width:1.5625rem;padding-right:.3125rem}.ng-select .ng-arrow-wrapper .ng-arrow{border-style:solid;border-width:.3125rem .3125rem .15625rem;border-color:var(--bb-select-border-color) transparent transparent}.ng-dropdown-panel{left:0;overflow:hidden;box-shadow:0 1px #0000000f;background-color:var(--bb-select-background-color);border:1px solid var(--bb-select-border-color)}.ng-dropdown-panel.ng-select-top{bottom:100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-left-radius:var(--bb-select-border-radius);border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-left-radius:var(--bb-select-border-radius);border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-right{top:0;left:100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-right-radius:var(--bb-select-border-radius);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-right .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-bottom{top:100%;margin-top:-1px;border-top-color:var(--bb-select-border-color);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-left{top:0;left:-100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-left-radius:var(--bb-select-border-radius);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-left .ng-dropdown-panel-items .ng-option:first-child{border-top-left-radius:var(--bb-select-border-radius)}.ng-dropdown-panel .ng-dropdown-header{padding:.3125rem .4375rem;border-bottom:1px solid var(--bb-select-border-color)}.ng-dropdown-panel .ng-dropdown-footer{padding:.3125rem .4375rem;border-top:1px solid var(--bb-select-border-color)}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{cursor:pointer;font-weight:500;-webkit-user-select:none;user-select:none;padding:.5rem .625rem;color:#0000008a}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{font-weight:500;background-color:#ebf5ff;color:#0000008a}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{font-size:1rem;font-weight:400;padding:.5rem .625rem;color:#000000de;background-color:var(--bb-select-background-color)}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#111;background-color:#ebf5ff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:500}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{color:#111;background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#aaa}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:1.375rem}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:.3125rem}\n"] }]
203
+ ], template: "<!-- Label of the form control. -->\n@if (label; as labelContent) {\n <label [attr.for]=\"labelId\"\n class=\"bb-select-label\">\n <ng-template [bbTemplate]=\"labelContent\">{{ labelContent }}</ng-template>\n </label>\n}\n\n<ng-select [formControl]=\"control\"\n [notFoundText]=\"'select.not_found_text' | bbLocalize\"\n [clearAllText]=\"'select.clear_all_text' | bbLocalize\"\n [loadingText]=\"'select.loading_text' | bbLocalize\"\n [typeToSearchText]=\"'select.type_to_search_text' | bbLocalize\"\n [addTagText]=\"'select.add_tag_text' | bbLocalize\"\n [virtualScroll]=\"virtualScroll\"\n [items]=\"data | async\"\n [multiple]=\"multiple\"\n [loading]=\"loading\"\n [labelForId]=\"labelId\"\n [searchable]=\"searchable\"\n [placeholder]=\"placeholder\"\n [clearable]=\"clearable\"\n [closeOnSelect]=\"closeOnSelect\"\n [trackByFn]=\"trackByFn\"\n [typeahead]=\"typeahead\"\n [bindLabel]=\"bindLabel\"\n [bindValue]=\"bindValue\"\n [selectableGroup]=\"selectableGroup\"\n [selectableGroupAsModel]=\"selectableGroupAsModel\"\n [clearSearchOnAdd]=\"clearSearchOnAdd\"\n [hideSelected]=\"hideSelected\"\n [maxSelectedItems]=\"maxSelectedItems\"\n [groupBy]=\"groupBy\"\n [isOpen]=\"isOpen\"\n [readonly]=\"readonly\"\n [addTag]=\"addTag\"\n [appendTo]=\"appendTo\"\n (blur)=\"onBlur?.emit($event)\"\n (change)=\"onChange?.emit($event)\">\n @if (optionTemplate) {\n <ng-template ng-option-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (labelTemplate) {\n <ng-template ng-label-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"labelTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (multiLabelTemplate) {\n <ng-template ng-multi-label-tmp\n let-items=\"items\"\n let-clear=\"clear\">\n <ng-container *ngTemplateOutlet=\"multiLabelTemplate; context: {items: items, clear: clear}\"></ng-container>\n </ng-template>\n }\n @if (optionGroupTemplate) {\n <ng-template ng-optgroup-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionGroupTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n</ng-select>\n\n@if (!hideErrors) {\n <bb-form-error (errorChange)=\"onErrorChange($event)\"></bb-form-error>\n}\n\n<!-- The form control hint. -->\n@if (hint; as hintContent) {\n <p class=\"bb-select-hint\">\n <ng-template [bbTemplate]=\"hintContent\">{{ hintContent }}</ng-template>\n </p>\n}\n", styles: [".bb-select{color:#2d3c4d;display:block;font-size:1rem}.bb-select.grouped{margin-bottom:1.5rem}.bb-select.required>.bb-select-label:after{content:\"*\";font-size:.75rem;vertical-align:top;color:var(--bb-form-label-required-color)}.bb-select.error>.bb-select-label{color:#c23934}.bb-select.error>.ng-select>.ng-select-container,.bb-select.error>.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:0 .375rem .375rem -.375rem #0000001a,0 0 0 .1875rem #f8d3d3}.bb-select.error>.ng-select>.ng-select-container{border:1px solid hsl(0,73%,30%);background-color:#f8d3d3}.bb-select.error>.ng-select>.ng-select-container>.ng-value-container>.ng-placeholder{color:#ea7b7b}.bb-select.readonly>.ng-select>.ng-select-container{cursor:default;border-style:dotted;border-color:#bdc4c9;color:#111;background-color:var(--bb-select-background-color)}.bb-select.hide-arrow .ng-arrow-wrapper{width:0;opacity:0;overflow:hidden;-webkit-user-select:none;user-select:none;pointer-events:none}.bb-select-label{display:block;margin-bottom:.25rem;color:var(--bb-form-label-color);font-size:var(--bb-form-label-font-size);font-weight:var(--bb-form-label-font-weight)}.bb-select-hint{display:block;line-height:1.5;margin-top:.25rem;font-size:.8125rem;color:#758795}.ng-select.ng-select-opened>.ng-select-container{background:var(--bb-select-background-color)}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:var(--bb-select-box-shadow)}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-.125rem;border-width:0 .3125rem .3125rem;border-color:transparent transparent var(--bb-select-border-color)}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-left-radius:0;border-top-right-radius:0}.ng-select.ng-select-opened.ng-select-right>.ng-select-container{border-top-right-radius:0;border-bottom-right-radius:0}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-left>.ng-select-container{border-top-left-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container{border-color:#757e8a;box-shadow:var(--bb-select-focus-box-shadow)}.ng-select:has(.ng-input input:focus)>.ng-select-container{border-color:#757e8a;box-shadow:var(--bb-select-focus-box-shadow)}.ng-select.ng-select-disabled>.ng-select-container{color:gray;background-color:#e6e6e6}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{align-items:center;transition-duration:.25s;min-height:2.625rem;color:#111;background-color:var(--bb-select-background-color);box-shadow:var(--bb-select-box-shadow);border:1px solid var(--bb-select-border-color);border-radius:var(--bb-select-border-radius);transition-property:background-color,box-shadow;transition-timing-function:cubic-bezier(0,0,.2,1)}.ng-select .ng-select-container .ng-value-container{align-items:center;padding-left:.5rem}.ng-select .ng-select-container .ng-value-container .ng-placeholder{color:#d1d1d1}.ng-select.ng-select-single .ng-select-container{height:2.625rem}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{left:0;top:50%;padding-right:3.125rem;transform:translateY(-50%);padding-left:.5rem}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{border-radius:.25rem;border:1px solid var(--bb-select-border-color);background-color:#f9f9f9}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 .3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:.3125rem;padding-left:.4375rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{line-height:1.6;margin-right:.3125rem;border-radius:.125rem;margin-bottom:.3125rem;color:#111;font-size:1rem;background-color:#ebf5ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:.3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:.0625rem .3125rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 .1875rem .1875rem}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#111}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-left:.1875rem;padding-bottom:.3125rem}.ng-select .ng-clear-wrapper{margin-left:.5rem;color:var(--bb-select-border-color)}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus{outline:none}.ng-select .ng-spinner-zone{padding:.3125rem .3125rem 0 0}.ng-select .ng-arrow-wrapper{width:1.5625rem;padding-right:.3125rem}.ng-select .ng-arrow-wrapper .ng-arrow{border-style:solid;border-width:.3125rem .3125rem .15625rem;border-color:var(--bb-select-border-color) transparent transparent}.ng-dropdown-panel{left:0;overflow:hidden;box-shadow:0 1px #0000000f;background-color:var(--bb-select-background-color);border:1px solid var(--bb-select-border-color)}.ng-dropdown-panel.ng-select-top{bottom:100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-left-radius:var(--bb-select-border-radius);border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-left-radius:var(--bb-select-border-radius);border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-right{top:0;left:100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-right-radius:var(--bb-select-border-radius);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-right .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-bottom{top:100%;margin-top:-1px;border-top-color:var(--bb-select-border-color);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-left{top:0;left:-100%;margin-bottom:-1px;border-bottom-color:var(--bb-select-border-color);border-top-left-radius:var(--bb-select-border-radius);border-bottom-left-radius:var(--bb-select-border-radius);border-bottom-right-radius:var(--bb-select-border-radius)}.ng-dropdown-panel.ng-select-left .ng-dropdown-panel-items .ng-option:first-child{border-top-left-radius:var(--bb-select-border-radius)}.ng-dropdown-panel .ng-dropdown-header{padding:.3125rem .4375rem;border-bottom:1px solid var(--bb-select-border-color)}.ng-dropdown-panel .ng-dropdown-footer{padding:.3125rem .4375rem;border-top:1px solid var(--bb-select-border-color)}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{cursor:pointer;font-weight:500;-webkit-user-select:none;user-select:none;padding:.5rem .625rem;color:#0000008a}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{font-weight:500;background-color:#ebf5ff;color:#0000008a}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{font-size:1rem;font-weight:400;padding:.5rem .625rem;color:#000000de;background-color:var(--bb-select-background-color)}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#111;background-color:#ebf5ff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:500}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{color:#111;background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#aaa}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:1.375rem}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:.3125rem}\n"] }]
198
204
  }], propDecorators: { optionTemplate: [{
199
205
  type: ContentChild,
200
206
  args: [BbSelectOption, { read: TemplateRef }]
@@ -220,9 +226,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
220
226
  }], required: [{
221
227
  type: Input,
222
228
  args: [{ transform: booleanAttribute }]
223
- }], disabled: [{
224
- type: Input,
225
- args: [{ transform: booleanAttribute }]
226
229
  }], readonly: [{
227
230
  type: Input,
228
231
  args: [{ transform: booleanAttribute }]
@@ -288,6 +291,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
288
291
  type: Input
289
292
  }], appendTo: [{
290
293
  type: Input
294
+ }], disabled: [{
295
+ type: Input,
296
+ args: [{ transform: booleanAttribute }]
291
297
  }], value: [{
292
298
  type: Input
293
299
  }], valueChange: [{
@@ -305,8 +311,8 @@ function provideSelectConfig() {
305
311
  }
306
312
 
307
313
  class SelectModule {
308
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: SelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
309
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.4", ngImport: i0, type: SelectModule, imports: [BbSelect,
314
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
315
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: SelectModule, imports: [BbSelect,
310
316
  BbSelectLabel,
311
317
  BbSelectOption,
312
318
  BbSelectOptionGroup,
@@ -315,11 +321,11 @@ class SelectModule {
315
321
  BbSelectOption,
316
322
  BbSelectOptionGroup,
317
323
  BbSelectMultiLabel] });
318
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: SelectModule, providers: [
324
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SelectModule, providers: [
319
325
  provideSelectConfig()
320
326
  ], imports: [BbSelect] });
321
327
  }
322
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: SelectModule, decorators: [{
328
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SelectModule, decorators: [{
323
329
  type: NgModule,
324
330
  args: [{
325
331
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"bravobit-bb-foundation-select.mjs","sources":["../../../projects/bb-foundation/select/src/lib/select-option-group.directive.ts","../../../projects/bb-foundation/select/src/lib/select-multi-label.directive.ts","../../../projects/bb-foundation/select/src/lib/select-option.directive.ts","../../../projects/bb-foundation/select/src/lib/select-label.directive.ts","../../../projects/bb-foundation/select/src/lib/select/select.component.ts","../../../projects/bb-foundation/select/src/lib/select/select.component.html","../../../projects/bb-foundation/select/src/lib/select.config.ts","../../../projects/bb-foundation/select/src/lib/select.module.ts","../../../projects/bb-foundation/select/src/bravobit-bb-foundation-select.ts"],"sourcesContent":["import {Directive, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[bbSelectOptionGroup]',\n standalone: true\n})\nexport class BbSelectOptionGroup {\n\n constructor(public template: TemplateRef<any>) {\n }\n\n}\n","import {Directive, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[bbSelectMultiLabel]',\n standalone: true\n})\nexport class BbSelectMultiLabel {\n\n constructor(public template: TemplateRef<any>) {\n }\n\n}\n","import {Directive, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[bbSelectOption]',\n standalone: true\n})\nexport class BbSelectOption {\n\n constructor(public template: TemplateRef<any>) {\n }\n\n}\n","import {Directive, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[bbSelectLabel]',\n standalone: true\n})\nexport class BbSelectLabel {\n\n constructor(public template: TemplateRef<any>) {\n }\n\n}\n","import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n EventEmitter,\n forwardRef,\n Input,\n numberAttribute,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport {NgLabelTemplateDirective, NgMultiLabelTemplateDirective, NgOptgroupTemplateDirective, NgOptionTemplateDirective, NgSelectComponent} from '@ng-select/ng-select';\nimport {ControlValueAccessor, NG_VALUE_ACCESSOR, FormControl, ReactiveFormsModule} from '@angular/forms';\nimport {BbSelectOptionGroup} from '../select-option-group.directive';\nimport {BbSelectMultiLabel} from '../select-multi-label.directive';\nimport {BbFormError} from '@bravobit/bb-foundation/elements';\nimport {AsyncPipe, NgTemplateOutlet} from '@angular/common';\nimport {observableAttribute} from '@bravobit/bb-foundation';\nimport {BbLocalize} from '@bravobit/bb-foundation/localize';\nimport {BbSelectOption} from '../select-option.directive';\nimport {BbTemplate} from '@bravobit/bb-foundation/utils';\nimport {BbSelectLabel} from '../select-label.directive';\nimport {Observable, Subject, Subscription} from 'rxjs';\n\nlet nextUniqueId = 0;\n\n@Component({\n selector: 'bb-select',\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => BbSelect),\n multi: true\n }],\n host: {\n 'class': 'bb-select',\n '[class.required]': 'required',\n '[class.readonly]': 'readonly',\n '[class.disabled]': 'disabled',\n '[class.grouped]': 'grouped',\n '[class.error]': 'error',\n '[class.hide-arrow]': 'hideArrow'\n },\n preserveWhitespaces: false,\n standalone: true,\n imports: [\n ReactiveFormsModule,\n AsyncPipe,\n NgTemplateOutlet,\n BbTemplate,\n BbFormError,\n BbLocalize,\n NgSelectComponent,\n NgOptionTemplateDirective,\n NgLabelTemplateDirective,\n NgMultiLabelTemplateDirective,\n NgOptgroupTemplateDirective\n ]\n})\nexport class BbSelect<T> implements ControlValueAccessor, OnInit, OnDestroy {\n\n // Readonly data.\n readonly labelId = `bb-select-${nextUniqueId++}`;\n readonly control = new FormControl();\n\n // Content children.\n @ContentChild(BbSelectOption, {read: TemplateRef}) optionTemplate: TemplateRef<any>;\n @ContentChild(BbSelectOptionGroup, {read: TemplateRef}) optionGroupTemplate: TemplateRef<any>;\n @ContentChild(BbSelectLabel, {read: TemplateRef}) labelTemplate: TemplateRef<any>;\n @ContentChild(BbSelectMultiLabel, {read: TemplateRef}) multiLabelTemplate: TemplateRef<any>;\n\n // View children.\n @ViewChild(NgSelectComponent, {static: true}) selectComponent: NgSelectComponent;\n\n // Inputs.\n @Input() label: string | TemplateRef<any> | null = null;\n @Input() hint: string | TemplateRef<any> | null = null;\n @Input({transform: observableAttribute}) data: Observable<T[]> | null = null;\n @Input({transform: booleanAttribute}) required: boolean = false;\n @Input({transform: booleanAttribute}) disabled: boolean = false;\n @Input({transform: booleanAttribute}) readonly: boolean = false;\n @Input({transform: booleanAttribute}) grouped: boolean = false;\n @Input({transform: booleanAttribute}) hideErrors: boolean = false;\n @Input({transform: booleanAttribute}) loading: boolean = false;\n @Input({transform: booleanAttribute}) multiple: boolean = false;\n @Input({transform: booleanAttribute}) clearable: boolean = true;\n @Input({transform: booleanAttribute}) searchable: boolean = true;\n @Input({transform: booleanAttribute}) virtualScroll: boolean = true;\n @Input({transform: booleanAttribute}) closeOnSelect: boolean = true;\n @Input({transform: booleanAttribute}) selectableGroup: boolean = false;\n @Input({transform: booleanAttribute}) selectableGroupAsModel: boolean = false;\n @Input({transform: booleanAttribute}) hideArrow: boolean = false;\n @Input({transform: booleanAttribute}) selectOnTab: boolean = false;\n @Input({transform: booleanAttribute}) hideSelected: boolean = false;\n @Input({transform: numberAttribute}) maxSelectedItems: number | null = null;\n @Input() bindLabel: string | null = null;\n @Input() bindValue: string | null = null;\n @Input() placeholder: string | null = null;\n @Input() typeahead: Subject<string> | null = null;\n @Input() trackByFn: any | null = null;\n @Input() groupBy: string | null = null;\n @Input() isOpen: boolean = null;\n @Input() clearSearchOnAdd: boolean = null;\n @Input() addTag: boolean | ((term: string) => any | Promise<any>) = false;\n @Input() appendTo: string | null = 'body';\n\n @Input()\n get value() {\n return this.control.value;\n }\n\n @Output() valueChange = new EventEmitter<any | null>();\n @Output() onBlur = new EventEmitter<FocusEvent>();\n @Output() onChange = new EventEmitter<any | null>();\n\n set value(value: any | null) {\n this.control.setValue(value);\n this.valueChange.emit(value);\n }\n\n // State.\n error: boolean = false;\n\n // Callbacks.\n onTouchedCallback: () => void = () => ({});\n onChangeCallback: (_: T | null) => void = () => ({});\n\n // Subscriptions.\n private _subscription = new Subscription();\n\n ngOnInit() {\n this.handleValueChanges();\n }\n\n ngOnDestroy() {\n this._subscription?.unsubscribe();\n }\n\n writeValue(value: T | null) {\n this.control.patchValue(value, {emitEvent: false});\n }\n\n registerOnChange(method: (_: T | null) => void) {\n this.onChangeCallback = method;\n }\n\n registerOnTouched(method: () => void) {\n this.onTouchedCallback = method;\n }\n\n setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n this.disabled ? this.control?.disable() : this.control?.enable();\n }\n\n onErrorChange(error: { token: string, data?: any } | null) {\n this.error = !!error;\n }\n\n private handleValueChanges() {\n const subscription = this.control.valueChanges\n .subscribe(value => this.onChangeCallback?.(value));\n this._subscription.add(subscription);\n }\n\n}\n","<!-- Label of the form control. -->\n@if (label; as labelContent) {\n <label [attr.for]=\"labelId\"\n class=\"bb-select-label\">\n <ng-template [bbTemplate]=\"labelContent\">{{ labelContent }}</ng-template>\n </label>\n}\n\n<ng-select [formControl]=\"control\"\n [notFoundText]=\"'select.not_found_text' | bbLocalize\"\n [clearAllText]=\"'select.clear_all_text' | bbLocalize\"\n [loadingText]=\"'select.loading_text' | bbLocalize\"\n [typeToSearchText]=\"'select.type_to_search_text' | bbLocalize\"\n [addTagText]=\"'select.add_tag_text' | bbLocalize\"\n [virtualScroll]=\"virtualScroll\"\n [items]=\"data | async\"\n [multiple]=\"multiple\"\n [loading]=\"loading\"\n [labelForId]=\"labelId\"\n [searchable]=\"searchable\"\n [placeholder]=\"placeholder\"\n [clearable]=\"clearable\"\n [closeOnSelect]=\"closeOnSelect\"\n [trackByFn]=\"trackByFn\"\n [typeahead]=\"typeahead\"\n [bindLabel]=\"bindLabel\"\n [bindValue]=\"bindValue\"\n [selectableGroup]=\"selectableGroup\"\n [selectableGroupAsModel]=\"selectableGroupAsModel\"\n [clearSearchOnAdd]=\"clearSearchOnAdd\"\n [hideSelected]=\"hideSelected\"\n [maxSelectedItems]=\"maxSelectedItems\"\n [groupBy]=\"groupBy\"\n [isOpen]=\"isOpen\"\n [readonly]=\"readonly\"\n [addTag]=\"addTag\"\n [inputAttrs]=\"{autocorrect: 'off', autocapitalize: 'none', spellcheck: 'false', autocomplete: 'off'}\"\n [appendTo]=\"appendTo\"\n (blur)=\"onBlur?.emit($event)\"\n (change)=\"onChange?.emit($event)\">\n @if (optionTemplate) {\n <ng-template ng-option-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (labelTemplate) {\n <ng-template ng-label-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"labelTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (multiLabelTemplate) {\n <ng-template ng-multi-label-tmp\n let-items=\"items\"\n let-clear=\"clear\">\n <ng-container *ngTemplateOutlet=\"multiLabelTemplate; context: {items: items, clear: clear}\"></ng-container>\n </ng-template>\n }\n @if (optionGroupTemplate) {\n <ng-template ng-optgroup-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionGroupTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n</ng-select>\n\n@if (!hideErrors) {\n <bb-form-error (errorChange)=\"onErrorChange($event)\"></bb-form-error>\n}\n\n<!-- The form control hint. -->\n@if (hint; as hintContent) {\n <p class=\"bb-select-hint\">\n <ng-template [bbTemplate]=\"hintContent\">{{ hintContent }}</ng-template>\n </p>\n}\n","import {DefaultSelectionModelFactory, SELECTION_MODEL_FACTORY} from '@ng-select/ng-select';\nimport {EnvironmentProviders, makeEnvironmentProviders} from '@angular/core';\n\nexport function provideSelectConfig(): EnvironmentProviders {\n return makeEnvironmentProviders([\n {provide: SELECTION_MODEL_FACTORY, useValue: DefaultSelectionModelFactory}\n ]);\n}\n","import {BbSelectOptionGroup} from './select-option-group.directive';\nimport {BbSelectMultiLabel} from './select-multi-label.directive';\nimport {BbSelectOption} from './select-option.directive';\nimport {BbSelectLabel} from './select-label.directive';\nimport {provideSelectConfig} from './select.config';\nimport {BbSelect} from './select/select.component';\nimport {NgModule} from '@angular/core';\n\n@NgModule({\n imports: [\n BbSelect,\n BbSelectLabel,\n BbSelectOption,\n BbSelectOptionGroup,\n BbSelectMultiLabel\n ],\n exports: [\n BbSelect,\n BbSelectLabel,\n BbSelectOption,\n BbSelectOptionGroup,\n BbSelectMultiLabel\n ],\n providers: [\n provideSelectConfig()\n ]\n})\nexport class SelectModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bravobit-bb-foundation-select.mjs","sources":["../../../projects/bb-foundation/select/src/lib/select-option-group.directive.ts","../../../projects/bb-foundation/select/src/lib/select-multi-label.directive.ts","../../../projects/bb-foundation/select/src/lib/select-option.directive.ts","../../../projects/bb-foundation/select/src/lib/select-label.directive.ts","../../../projects/bb-foundation/select/src/lib/select/select.component.ts","../../../projects/bb-foundation/select/src/lib/select/select.component.html","../../../projects/bb-foundation/select/src/lib/select.config.ts","../../../projects/bb-foundation/select/src/lib/select.module.ts","../../../projects/bb-foundation/select/src/bravobit-bb-foundation-select.ts"],"sourcesContent":["import {Directive, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[bbSelectOptionGroup]',\n standalone: true\n})\nexport class BbSelectOptionGroup {\n\n constructor(public template: TemplateRef<any>) {\n }\n\n}\n","import {Directive, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[bbSelectMultiLabel]',\n standalone: true\n})\nexport class BbSelectMultiLabel {\n\n constructor(public template: TemplateRef<any>) {\n }\n\n}\n","import {Directive, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[bbSelectOption]',\n standalone: true\n})\nexport class BbSelectOption {\n\n constructor(public template: TemplateRef<any>) {\n }\n\n}\n","import {Directive, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[bbSelectLabel]',\n standalone: true\n})\nexport class BbSelectLabel {\n\n constructor(public template: TemplateRef<any>) {\n }\n\n}\n","import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n EventEmitter,\n forwardRef,\n Input,\n numberAttribute,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport {NgLabelTemplateDirective, NgMultiLabelTemplateDirective, NgOptgroupTemplateDirective, NgOptionTemplateDirective, NgSelectComponent} from '@ng-select/ng-select';\nimport {ControlValueAccessor, NG_VALUE_ACCESSOR, FormControl, ReactiveFormsModule} from '@angular/forms';\nimport {BbSelectOptionGroup} from '../select-option-group.directive';\nimport {BbSelectMultiLabel} from '../select-multi-label.directive';\nimport {BbFormError} from '@bravobit/bb-foundation/elements';\nimport {AsyncPipe, NgTemplateOutlet} from '@angular/common';\nimport {observableAttribute} from '@bravobit/bb-foundation';\nimport {BbLocalize} from '@bravobit/bb-foundation/localize';\nimport {BbSelectOption} from '../select-option.directive';\nimport {BbTemplate} from '@bravobit/bb-foundation/utils';\nimport {BbSelectLabel} from '../select-label.directive';\nimport {Observable, Subject, Subscription} from 'rxjs';\n\nlet nextUniqueId = 0;\n\n@Component({\n selector: 'bb-select',\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => BbSelect),\n multi: true\n }],\n host: {\n 'class': 'bb-select',\n '[class.required]': 'required',\n '[class.readonly]': 'readonly',\n '[class.disabled]': 'disabled',\n '[class.grouped]': 'grouped',\n '[class.error]': 'error',\n '[class.hide-arrow]': 'hideArrow'\n },\n preserveWhitespaces: false,\n standalone: true,\n imports: [\n ReactiveFormsModule,\n AsyncPipe,\n NgTemplateOutlet,\n BbTemplate,\n BbFormError,\n BbLocalize,\n NgSelectComponent,\n NgOptionTemplateDirective,\n NgLabelTemplateDirective,\n NgMultiLabelTemplateDirective,\n NgOptgroupTemplateDirective\n ]\n})\nexport class BbSelect<T> implements ControlValueAccessor, OnInit, OnDestroy {\n\n // Readonly data.\n readonly labelId = `bb-select-${nextUniqueId++}`;\n readonly control = new FormControl();\n\n // Content children.\n @ContentChild(BbSelectOption, {read: TemplateRef}) optionTemplate: TemplateRef<any>;\n @ContentChild(BbSelectOptionGroup, {read: TemplateRef}) optionGroupTemplate: TemplateRef<any>;\n @ContentChild(BbSelectLabel, {read: TemplateRef}) labelTemplate: TemplateRef<any>;\n @ContentChild(BbSelectMultiLabel, {read: TemplateRef}) multiLabelTemplate: TemplateRef<any>;\n\n // View children.\n @ViewChild(NgSelectComponent, {static: true}) selectComponent: NgSelectComponent;\n\n // Inputs.\n @Input() label: string | TemplateRef<any> | null = null;\n @Input() hint: string | TemplateRef<any> | null = null;\n @Input({transform: observableAttribute}) data: Observable<T[]> | null = null;\n @Input({transform: booleanAttribute}) required: boolean = false;\n @Input({transform: booleanAttribute}) readonly: boolean = false;\n @Input({transform: booleanAttribute}) grouped: boolean = false;\n @Input({transform: booleanAttribute}) hideErrors: boolean = false;\n @Input({transform: booleanAttribute}) loading: boolean = false;\n @Input({transform: booleanAttribute}) multiple: boolean = false;\n @Input({transform: booleanAttribute}) clearable: boolean = true;\n @Input({transform: booleanAttribute}) searchable: boolean = true;\n @Input({transform: booleanAttribute}) virtualScroll: boolean = true;\n @Input({transform: booleanAttribute}) closeOnSelect: boolean = true;\n @Input({transform: booleanAttribute}) selectableGroup: boolean = false;\n @Input({transform: booleanAttribute}) selectableGroupAsModel: boolean = false;\n @Input({transform: booleanAttribute}) hideArrow: boolean = false;\n @Input({transform: booleanAttribute}) selectOnTab: boolean = false;\n @Input({transform: booleanAttribute}) hideSelected: boolean = false;\n @Input({transform: numberAttribute}) maxSelectedItems: number | null = null;\n @Input() bindLabel: string | null = null;\n @Input() bindValue: string | null = null;\n @Input() placeholder: string | null = null;\n @Input() typeahead: Subject<string> | null = null;\n @Input() trackByFn: any | null = null;\n @Input() groupBy: string | null = null;\n @Input() isOpen: boolean = null;\n @Input() clearSearchOnAdd: boolean = null;\n @Input() addTag: boolean | ((term: string) => any | Promise<any>) = false;\n @Input() appendTo: string | null = 'body';\n\n @Input({transform: booleanAttribute})\n set disabled(value: boolean) {\n this._disabled = value;\n this._disabled ? this.control?.disable() : this.control?.enable();\n }\n\n get disabled() {\n return this._disabled;\n }\n\n @Input()\n get value() {\n return this.control.value;\n }\n\n @Output() valueChange = new EventEmitter<any | null>();\n @Output() onBlur = new EventEmitter<FocusEvent>();\n @Output() onChange = new EventEmitter<any | null>();\n\n set value(value: any | null) {\n this.control.setValue(value);\n this.valueChange.emit(value);\n }\n\n // State.\n error: boolean = false;\n private _disabled: boolean = false;\n\n // Callbacks.\n onTouchedCallback: () => void = () => ({});\n onChangeCallback: (_: T | null) => void = () => ({});\n\n // Subscriptions.\n private _subscription = new Subscription();\n\n ngOnInit() {\n this.handleValueChanges();\n }\n\n ngOnDestroy() {\n this._subscription?.unsubscribe();\n }\n\n writeValue(value: T | null) {\n this.control.patchValue(value, {emitEvent: false});\n }\n\n registerOnChange(method: (_: T | null) => void) {\n this.onChangeCallback = method;\n }\n\n registerOnTouched(method: () => void) {\n this.onTouchedCallback = method;\n }\n\n setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n }\n\n onErrorChange(error: { token: string, data?: any } | null) {\n this.error = !!error;\n }\n\n private handleValueChanges() {\n const subscription = this.control.valueChanges\n .subscribe(value => this.onChangeCallback?.(value));\n this._subscription.add(subscription);\n }\n\n}\n","<!-- Label of the form control. -->\n@if (label; as labelContent) {\n <label [attr.for]=\"labelId\"\n class=\"bb-select-label\">\n <ng-template [bbTemplate]=\"labelContent\">{{ labelContent }}</ng-template>\n </label>\n}\n\n<ng-select [formControl]=\"control\"\n [notFoundText]=\"'select.not_found_text' | bbLocalize\"\n [clearAllText]=\"'select.clear_all_text' | bbLocalize\"\n [loadingText]=\"'select.loading_text' | bbLocalize\"\n [typeToSearchText]=\"'select.type_to_search_text' | bbLocalize\"\n [addTagText]=\"'select.add_tag_text' | bbLocalize\"\n [virtualScroll]=\"virtualScroll\"\n [items]=\"data | async\"\n [multiple]=\"multiple\"\n [loading]=\"loading\"\n [labelForId]=\"labelId\"\n [searchable]=\"searchable\"\n [placeholder]=\"placeholder\"\n [clearable]=\"clearable\"\n [closeOnSelect]=\"closeOnSelect\"\n [trackByFn]=\"trackByFn\"\n [typeahead]=\"typeahead\"\n [bindLabel]=\"bindLabel\"\n [bindValue]=\"bindValue\"\n [selectableGroup]=\"selectableGroup\"\n [selectableGroupAsModel]=\"selectableGroupAsModel\"\n [clearSearchOnAdd]=\"clearSearchOnAdd\"\n [hideSelected]=\"hideSelected\"\n [maxSelectedItems]=\"maxSelectedItems\"\n [groupBy]=\"groupBy\"\n [isOpen]=\"isOpen\"\n [readonly]=\"readonly\"\n [addTag]=\"addTag\"\n [appendTo]=\"appendTo\"\n (blur)=\"onBlur?.emit($event)\"\n (change)=\"onChange?.emit($event)\">\n @if (optionTemplate) {\n <ng-template ng-option-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (labelTemplate) {\n <ng-template ng-label-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"labelTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n @if (multiLabelTemplate) {\n <ng-template ng-multi-label-tmp\n let-items=\"items\"\n let-clear=\"clear\">\n <ng-container *ngTemplateOutlet=\"multiLabelTemplate; context: {items: items, clear: clear}\"></ng-container>\n </ng-template>\n }\n @if (optionGroupTemplate) {\n <ng-template ng-optgroup-tmp\n let-item=\"item\"\n let-item$=\"item$\"\n let-index=\"index\">\n <ng-container\n *ngTemplateOutlet=\"optionGroupTemplate; context: {item: item, item$: item$, index: index}\"></ng-container>\n </ng-template>\n }\n</ng-select>\n\n@if (!hideErrors) {\n <bb-form-error (errorChange)=\"onErrorChange($event)\"></bb-form-error>\n}\n\n<!-- The form control hint. -->\n@if (hint; as hintContent) {\n <p class=\"bb-select-hint\">\n <ng-template [bbTemplate]=\"hintContent\">{{ hintContent }}</ng-template>\n </p>\n}\n","import {DefaultSelectionModelFactory, SELECTION_MODEL_FACTORY} from '@ng-select/ng-select';\nimport {EnvironmentProviders, makeEnvironmentProviders} from '@angular/core';\n\nexport function provideSelectConfig(): EnvironmentProviders {\n return makeEnvironmentProviders([\n {provide: SELECTION_MODEL_FACTORY, useValue: DefaultSelectionModelFactory}\n ]);\n}\n","import {BbSelectOptionGroup} from './select-option-group.directive';\nimport {BbSelectMultiLabel} from './select-multi-label.directive';\nimport {BbSelectOption} from './select-option.directive';\nimport {BbSelectLabel} from './select-label.directive';\nimport {provideSelectConfig} from './select.config';\nimport {BbSelect} from './select/select.component';\nimport {NgModule} from '@angular/core';\n\n@NgModule({\n imports: [\n BbSelect,\n BbSelectLabel,\n BbSelectOption,\n BbSelectOptionGroup,\n BbSelectMultiLabel\n ],\n exports: [\n BbSelect,\n BbSelectLabel,\n BbSelectOption,\n BbSelectOptionGroup,\n BbSelectMultiLabel\n ],\n providers: [\n provideSelectConfig()\n ]\n})\nexport class SelectModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -392,10 +392,10 @@ class Storage {
392
392
  return null;
393
393
  }
394
394
  };
395
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: Storage, deps: [{ token: i1.Platform }, { token: COOKIE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
396
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: Storage, providedIn: 'root' });
395
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: Storage, deps: [{ token: i1.Platform }, { token: COOKIE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
396
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: Storage, providedIn: 'root' });
397
397
  }
398
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: Storage, decorators: [{
398
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: Storage, decorators: [{
399
399
  type: Injectable,
400
400
  args: [{
401
401
  providedIn: 'root'