@spartan-ng/brain 0.0.1-alpha.707 → 0.0.1-alpha.708

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 (109) hide show
  1. package/fesm2022/spartan-ng-brain-accordion.mjs +30 -30
  2. package/fesm2022/spartan-ng-brain-accordion.mjs.map +1 -1
  3. package/fesm2022/spartan-ng-brain-alert-dialog.mjs +19 -19
  4. package/fesm2022/spartan-ng-brain-alert-dialog.mjs.map +1 -1
  5. package/fesm2022/spartan-ng-brain-autocomplete.mjs +89 -102
  6. package/fesm2022/spartan-ng-brain-autocomplete.mjs.map +1 -1
  7. package/fesm2022/spartan-ng-brain-avatar.mjs +15 -15
  8. package/fesm2022/spartan-ng-brain-avatar.mjs.map +1 -1
  9. package/fesm2022/spartan-ng-brain-button.mjs +4 -4
  10. package/fesm2022/spartan-ng-brain-button.mjs.map +1 -1
  11. package/fesm2022/spartan-ng-brain-calendar.mjs +120 -127
  12. package/fesm2022/spartan-ng-brain-calendar.mjs.map +1 -1
  13. package/fesm2022/spartan-ng-brain-checkbox.mjs +24 -24
  14. package/fesm2022/spartan-ng-brain-checkbox.mjs.map +1 -1
  15. package/fesm2022/spartan-ng-brain-collapsible.mjs +17 -17
  16. package/fesm2022/spartan-ng-brain-collapsible.mjs.map +1 -1
  17. package/fesm2022/spartan-ng-brain-combobox.mjs +151 -178
  18. package/fesm2022/spartan-ng-brain-combobox.mjs.map +1 -1
  19. package/fesm2022/spartan-ng-brain-command.mjs +43 -52
  20. package/fesm2022/spartan-ng-brain-command.mjs.map +1 -1
  21. package/fesm2022/spartan-ng-brain-core.mjs +5 -5
  22. package/fesm2022/spartan-ng-brain-core.mjs.map +1 -1
  23. package/fesm2022/spartan-ng-brain-date-time-luxon.mjs.map +1 -1
  24. package/fesm2022/spartan-ng-brain-date-time.mjs.map +1 -1
  25. package/fesm2022/spartan-ng-brain-dialog.mjs +72 -86
  26. package/fesm2022/spartan-ng-brain-dialog.mjs.map +1 -1
  27. package/fesm2022/spartan-ng-brain-field.mjs +38 -43
  28. package/fesm2022/spartan-ng-brain-field.mjs.map +1 -1
  29. package/fesm2022/spartan-ng-brain-forms.mjs +20 -20
  30. package/fesm2022/spartan-ng-brain-forms.mjs.map +1 -1
  31. package/fesm2022/spartan-ng-brain-hover-card.mjs +24 -32
  32. package/fesm2022/spartan-ng-brain-hover-card.mjs.map +1 -1
  33. package/fesm2022/spartan-ng-brain-input-otp.mjs +23 -25
  34. package/fesm2022/spartan-ng-brain-input-otp.mjs.map +1 -1
  35. package/fesm2022/spartan-ng-brain-input.mjs +6 -6
  36. package/fesm2022/spartan-ng-brain-input.mjs.map +1 -1
  37. package/fesm2022/spartan-ng-brain-label.mjs +6 -6
  38. package/fesm2022/spartan-ng-brain-label.mjs.map +1 -1
  39. package/fesm2022/spartan-ng-brain-navigation-menu.mjs +49 -53
  40. package/fesm2022/spartan-ng-brain-navigation-menu.mjs.map +1 -1
  41. package/fesm2022/spartan-ng-brain-popover.mjs +13 -15
  42. package/fesm2022/spartan-ng-brain-popover.mjs.map +1 -1
  43. package/fesm2022/spartan-ng-brain-progress.mjs +11 -13
  44. package/fesm2022/spartan-ng-brain-progress.mjs.map +1 -1
  45. package/fesm2022/spartan-ng-brain-radio-group.mjs +28 -34
  46. package/fesm2022/spartan-ng-brain-radio-group.mjs.map +1 -1
  47. package/fesm2022/spartan-ng-brain-resizable.mjs +23 -23
  48. package/fesm2022/spartan-ng-brain-resizable.mjs.map +1 -1
  49. package/fesm2022/spartan-ng-brain-select.mjs +102 -105
  50. package/fesm2022/spartan-ng-brain-select.mjs.map +1 -1
  51. package/fesm2022/spartan-ng-brain-separator.mjs +7 -7
  52. package/fesm2022/spartan-ng-brain-separator.mjs.map +1 -1
  53. package/fesm2022/spartan-ng-brain-sheet.mjs +24 -24
  54. package/fesm2022/spartan-ng-brain-sheet.mjs.map +1 -1
  55. package/fesm2022/spartan-ng-brain-slider.mjs +52 -76
  56. package/fesm2022/spartan-ng-brain-slider.mjs.map +1 -1
  57. package/fesm2022/spartan-ng-brain-sonner.mjs +108 -132
  58. package/fesm2022/spartan-ng-brain-sonner.mjs.map +1 -1
  59. package/fesm2022/spartan-ng-brain-switch.mjs +21 -23
  60. package/fesm2022/spartan-ng-brain-switch.mjs.map +1 -1
  61. package/fesm2022/spartan-ng-brain-tabs.mjs +36 -39
  62. package/fesm2022/spartan-ng-brain-tabs.mjs.map +1 -1
  63. package/fesm2022/spartan-ng-brain-textarea.mjs +6 -6
  64. package/fesm2022/spartan-ng-brain-textarea.mjs.map +1 -1
  65. package/fesm2022/spartan-ng-brain-toggle-group.mjs +21 -27
  66. package/fesm2022/spartan-ng-brain-toggle-group.mjs.map +1 -1
  67. package/fesm2022/spartan-ng-brain-toggle.mjs +10 -12
  68. package/fesm2022/spartan-ng-brain-toggle.mjs.map +1 -1
  69. package/fesm2022/spartan-ng-brain-tooltip.mjs +27 -27
  70. package/fesm2022/spartan-ng-brain-tooltip.mjs.map +1 -1
  71. package/hlm-tailwind-preset.css +6 -6
  72. package/package.json +44 -43
  73. package/{autocomplete/index.d.ts → types/spartan-ng-brain-autocomplete.d.ts} +10 -10
  74. package/{calendar/index.d.ts → types/spartan-ng-brain-calendar.d.ts} +2 -2
  75. package/{combobox/index.d.ts → types/spartan-ng-brain-combobox.d.ts} +10 -10
  76. package/{dialog/index.d.ts → types/spartan-ng-brain-dialog.d.ts} +1 -1
  77. package/{hover-card/index.d.ts → types/spartan-ng-brain-hover-card.d.ts} +1 -1
  78. package/{select/index.d.ts → types/spartan-ng-brain-select.d.ts} +11 -11
  79. /package/{accordion/index.d.ts → types/spartan-ng-brain-accordion.d.ts} +0 -0
  80. /package/{alert-dialog/index.d.ts → types/spartan-ng-brain-alert-dialog.d.ts} +0 -0
  81. /package/{avatar/index.d.ts → types/spartan-ng-brain-avatar.d.ts} +0 -0
  82. /package/{button/index.d.ts → types/spartan-ng-brain-button.d.ts} +0 -0
  83. /package/{checkbox/index.d.ts → types/spartan-ng-brain-checkbox.d.ts} +0 -0
  84. /package/{collapsible/index.d.ts → types/spartan-ng-brain-collapsible.d.ts} +0 -0
  85. /package/{command/index.d.ts → types/spartan-ng-brain-command.d.ts} +0 -0
  86. /package/{core/index.d.ts → types/spartan-ng-brain-core.d.ts} +0 -0
  87. /package/{date-time-luxon/index.d.ts → types/spartan-ng-brain-date-time-luxon.d.ts} +0 -0
  88. /package/{date-time/index.d.ts → types/spartan-ng-brain-date-time.d.ts} +0 -0
  89. /package/{field/index.d.ts → types/spartan-ng-brain-field.d.ts} +0 -0
  90. /package/{forms/index.d.ts → types/spartan-ng-brain-forms.d.ts} +0 -0
  91. /package/{input-otp/index.d.ts → types/spartan-ng-brain-input-otp.d.ts} +0 -0
  92. /package/{input/index.d.ts → types/spartan-ng-brain-input.d.ts} +0 -0
  93. /package/{label/index.d.ts → types/spartan-ng-brain-label.d.ts} +0 -0
  94. /package/{navigation-menu/index.d.ts → types/spartan-ng-brain-navigation-menu.d.ts} +0 -0
  95. /package/{popover/index.d.ts → types/spartan-ng-brain-popover.d.ts} +0 -0
  96. /package/{progress/index.d.ts → types/spartan-ng-brain-progress.d.ts} +0 -0
  97. /package/{radio-group/index.d.ts → types/spartan-ng-brain-radio-group.d.ts} +0 -0
  98. /package/{resizable/index.d.ts → types/spartan-ng-brain-resizable.d.ts} +0 -0
  99. /package/{separator/index.d.ts → types/spartan-ng-brain-separator.d.ts} +0 -0
  100. /package/{sheet/index.d.ts → types/spartan-ng-brain-sheet.d.ts} +0 -0
  101. /package/{slider/index.d.ts → types/spartan-ng-brain-slider.d.ts} +0 -0
  102. /package/{sonner/index.d.ts → types/spartan-ng-brain-sonner.d.ts} +0 -0
  103. /package/{switch/index.d.ts → types/spartan-ng-brain-switch.d.ts} +0 -0
  104. /package/{tabs/index.d.ts → types/spartan-ng-brain-tabs.d.ts} +0 -0
  105. /package/{textarea/index.d.ts → types/spartan-ng-brain-textarea.d.ts} +0 -0
  106. /package/{toggle-group/index.d.ts → types/spartan-ng-brain-toggle-group.d.ts} +0 -0
  107. /package/{toggle/index.d.ts → types/spartan-ng-brain-toggle.d.ts} +0 -0
  108. /package/{tooltip/index.d.ts → types/spartan-ng-brain-tooltip.d.ts} +0 -0
  109. /package/{index.d.ts → types/spartan-ng-brain.d.ts} +0 -0
@@ -7,18 +7,18 @@ class BrnTextarea {
7
7
  static _id = 0;
8
8
  _fieldControl = inject(BrnFieldControl, { optional: true });
9
9
  /** The id of the textarea. */
10
- id = input(`brn-textarea-${++BrnTextarea._id}`, ...(ngDevMode ? [{ debugName: "id" }] : []));
10
+ id = input(`brn-textarea-${++BrnTextarea._id}`, ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
11
11
  /** Whether to force the textarea into an invalid state. */
12
- forceInvalid = input(false, ...(ngDevMode ? [{ debugName: "forceInvalid", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
12
+ forceInvalid = input(false, { ...(ngDevMode ? { debugName: "forceInvalid" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
13
13
  labelableId = this.id;
14
14
  _ariaInvalid = this._fieldControl?.invalid;
15
15
  _touched = this._fieldControl?.touched;
16
16
  _dirty = this._fieldControl?.dirty;
17
- _spartanInvalid = computed(() => this.forceInvalid() || this._fieldControl?.spartanInvalid(), ...(ngDevMode ? [{ debugName: "_spartanInvalid" }] : []));
18
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnTextarea, deps: [], target: i0.ɵɵFactoryTarget.Directive });
19
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.17", type: BrnTextarea, isStandalone: true, selector: "[brnTextarea]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, forceInvalid: { classPropertyName: "forceInvalid", publicName: "forceInvalid", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "id": "id()", "attr.aria-invalid": "_ariaInvalid?.() ? \"true\" : null", "attr.data-invalid": "_ariaInvalid?.() ? \"true\" : null", "attr.data-touched": "_touched?.() ? \"true\" : null", "attr.data-dirty": "_dirty?.() ? \"true\" : null", "attr.data-matches-spartan-invalid": "_spartanInvalid() ? \"true\" : null" } }, providers: [provideBrnLabelable(BrnTextarea)], hostDirectives: [{ directive: i1.BrnFieldControl }], ngImport: i0 });
17
+ _spartanInvalid = computed(() => this.forceInvalid() || this._fieldControl?.spartanInvalid(), ...(ngDevMode ? [{ debugName: "_spartanInvalid" }] : /* istanbul ignore next */ []));
18
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnTextarea, deps: [], target: i0.ɵɵFactoryTarget.Directive });
19
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.16", type: BrnTextarea, isStandalone: true, selector: "[brnTextarea]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, forceInvalid: { classPropertyName: "forceInvalid", publicName: "forceInvalid", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "id": "id()", "attr.aria-invalid": "_ariaInvalid?.() ? \"true\" : null", "attr.data-invalid": "_ariaInvalid?.() ? \"true\" : null", "attr.data-touched": "_touched?.() ? \"true\" : null", "attr.data-dirty": "_dirty?.() ? \"true\" : null", "attr.data-matches-spartan-invalid": "_spartanInvalid() ? \"true\" : null" } }, providers: [provideBrnLabelable(BrnTextarea)], hostDirectives: [{ directive: i1.BrnFieldControl }], ngImport: i0 });
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnTextarea, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnTextarea, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
24
  selector: '[brnTextarea]',
@@ -1 +1 @@
1
- {"version":3,"file":"spartan-ng-brain-textarea.mjs","sources":["../../../../libs/brain/textarea/src/lib/brn-textarea.ts","../../../../libs/brain/textarea/src/index.ts","../../../../libs/brain/textarea/src/spartan-ng-brain-textarea.ts"],"sourcesContent":["import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, computed, Directive, inject, input } from '@angular/core';\nimport { BrnFieldControl, provideBrnLabelable } from '@spartan-ng/brain/field';\n\n@Directive({\n\tselector: '[brnTextarea]',\n\tproviders: [provideBrnLabelable(BrnTextarea)],\n\thostDirectives: [BrnFieldControl],\n\thost: {\n\t\t'[id]': 'id()',\n\t\t'[attr.aria-invalid]': '_ariaInvalid?.() ? \"true\" : null',\n\t\t'[attr.data-invalid]': '_ariaInvalid?.() ? \"true\" : null',\n\t\t'[attr.data-touched]': '_touched?.() ? \"true\" : null',\n\t\t'[attr.data-dirty]': '_dirty?.() ? \"true\" : null',\n\t\t'[attr.data-matches-spartan-invalid]': '_spartanInvalid() ? \"true\" : null',\n\t},\n})\nexport class BrnTextarea {\n\tprivate static _id = 0;\n\n\tprivate readonly _fieldControl = inject(BrnFieldControl, { optional: true });\n\n\t/** The id of the textarea. */\n\tpublic readonly id = input<string | undefined>(`brn-textarea-${++BrnTextarea._id}`);\n\n\t/** Whether to force the textarea into an invalid state. */\n\tpublic readonly forceInvalid = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\tpublic readonly labelableId = this.id;\n\n\tprotected readonly _ariaInvalid = this._fieldControl?.invalid;\n\tprotected readonly _touched = this._fieldControl?.touched;\n\tprotected readonly _dirty = this._fieldControl?.dirty;\n\tprotected readonly _spartanInvalid = computed(() => this.forceInvalid() || this._fieldControl?.spartanInvalid());\n}\n","import { BrnTextarea } from './lib/brn-textarea';\n\nexport * from './lib/brn-textarea';\n\nexport const BrnTextareaImports = [BrnTextarea] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAiBa,WAAW,CAAA;AACf,IAAA,OAAO,GAAG,GAAG,CAAC;IAEL,aAAa,GAAG,MAAM,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;IAG5D,EAAE,GAAG,KAAK,CAAqB,CAAA,aAAA,EAAgB,EAAE,WAAW,CAAC,GAAG,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;;AAGnE,IAAA,YAAY,GAAG,KAAK,CAAwB,KAAK,gDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAA,GAAA,CAA7B,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAC;AAEnF,IAAA,WAAW,GAAG,IAAI,CAAC,EAAE;AAElB,IAAA,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,OAAO;AAC1C,IAAA,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,OAAO;AACtC,IAAA,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,KAAK;AAClC,IAAA,eAAe,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,cAAc,EAAE,2DAAC;2HAhBpG,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAX,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,WAAW,wpBAXZ,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,eAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAWjC,WAAW,EAAA,UAAA,EAAA,CAAA;kBAbvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,SAAS,EAAE,CAAC,mBAAmB,CAAA,WAAA,CAAa,CAAC;oBAC7C,cAAc,EAAE,CAAC,eAAe,CAAC;AACjC,oBAAA,IAAI,EAAE;AACL,wBAAA,MAAM,EAAE,MAAM;AACd,wBAAA,qBAAqB,EAAE,kCAAkC;AACzD,wBAAA,qBAAqB,EAAE,kCAAkC;AACzD,wBAAA,qBAAqB,EAAE,8BAA8B;AACrD,wBAAA,mBAAmB,EAAE,4BAA4B;AACjD,wBAAA,qCAAqC,EAAE,mCAAmC;AAC1E,qBAAA;AACD,iBAAA;;;ACZM,MAAM,kBAAkB,GAAG,CAAC,WAAW;;ACJ9C;;AAEG;;;;"}
1
+ {"version":3,"file":"spartan-ng-brain-textarea.mjs","sources":["../../../../libs/brain/textarea/src/lib/brn-textarea.ts","../../../../libs/brain/textarea/src/index.ts","../../../../libs/brain/textarea/src/spartan-ng-brain-textarea.ts"],"sourcesContent":["import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, computed, Directive, inject, input } from '@angular/core';\nimport { BrnFieldControl, provideBrnLabelable } from '@spartan-ng/brain/field';\n\n@Directive({\n\tselector: '[brnTextarea]',\n\tproviders: [provideBrnLabelable(BrnTextarea)],\n\thostDirectives: [BrnFieldControl],\n\thost: {\n\t\t'[id]': 'id()',\n\t\t'[attr.aria-invalid]': '_ariaInvalid?.() ? \"true\" : null',\n\t\t'[attr.data-invalid]': '_ariaInvalid?.() ? \"true\" : null',\n\t\t'[attr.data-touched]': '_touched?.() ? \"true\" : null',\n\t\t'[attr.data-dirty]': '_dirty?.() ? \"true\" : null',\n\t\t'[attr.data-matches-spartan-invalid]': '_spartanInvalid() ? \"true\" : null',\n\t},\n})\nexport class BrnTextarea {\n\tprivate static _id = 0;\n\n\tprivate readonly _fieldControl = inject(BrnFieldControl, { optional: true });\n\n\t/** The id of the textarea. */\n\tpublic readonly id = input<string | undefined>(`brn-textarea-${++BrnTextarea._id}`);\n\n\t/** Whether to force the textarea into an invalid state. */\n\tpublic readonly forceInvalid = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\tpublic readonly labelableId = this.id;\n\n\tprotected readonly _ariaInvalid = this._fieldControl?.invalid;\n\tprotected readonly _touched = this._fieldControl?.touched;\n\tprotected readonly _dirty = this._fieldControl?.dirty;\n\tprotected readonly _spartanInvalid = computed(() => this.forceInvalid() || this._fieldControl?.spartanInvalid());\n}\n","import { BrnTextarea } from './lib/brn-textarea';\n\nexport * from './lib/brn-textarea';\n\nexport const BrnTextareaImports = [BrnTextarea] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAiBa,WAAW,CAAA;AACf,IAAA,OAAO,GAAG,GAAG,CAAC;IAEL,aAAa,GAAG,MAAM,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;IAG5D,EAAE,GAAG,KAAK,CAAqB,CAAA,aAAA,EAAgB,EAAE,WAAW,CAAC,GAAG,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;IAGnE,YAAY,GAAG,KAAK,CAAwB,KAAK,oFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAEnF,IAAA,WAAW,GAAG,IAAI,CAAC,EAAE;AAElB,IAAA,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,OAAO;AAC1C,IAAA,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,OAAO;AACtC,IAAA,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,KAAK;AAClC,IAAA,eAAe,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,cAAc,EAAE,sFAAC;2HAhBpG,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAX,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,WAAW,wpBAXZ,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,eAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAWjC,WAAW,EAAA,UAAA,EAAA,CAAA;kBAbvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,SAAS,EAAE,CAAC,mBAAmB,CAAA,WAAA,CAAa,CAAC;oBAC7C,cAAc,EAAE,CAAC,eAAe,CAAC;AACjC,oBAAA,IAAI,EAAE;AACL,wBAAA,MAAM,EAAE,MAAM;AACd,wBAAA,qBAAqB,EAAE,kCAAkC;AACzD,wBAAA,qBAAqB,EAAE,kCAAkC;AACzD,wBAAA,qBAAqB,EAAE,8BAA8B;AACrD,wBAAA,mBAAmB,EAAE,4BAA4B;AACjD,wBAAA,qCAAqC,EAAE,mCAAmC;AAC1E,qBAAA;AACD,iBAAA;;;ACZM,MAAM,kBAAkB,GAAG,CAAC,WAAW;;ACJ9C;;AAEG;;;;"}
@@ -25,23 +25,19 @@ class BrnButtonToggleChange {
25
25
  }
26
26
  class BrnToggleGroup {
27
27
  /** The type of the toggle group. */
28
- type = input('single', ...(ngDevMode ? [{ debugName: "type" }] : []));
28
+ type = input('single', ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
29
29
  /** Whether the toggle group allows multiple selections. */
30
- _multiple = computed(() => this.type() === 'multiple', ...(ngDevMode ? [{ debugName: "_multiple" }] : []));
30
+ _multiple = computed(() => this.type() === 'multiple', ...(ngDevMode ? [{ debugName: "_multiple" }] : /* istanbul ignore next */ []));
31
31
  /** Value of the toggle group. */
32
- value = model(undefined, ...(ngDevMode ? [{ debugName: "value" }] : []));
32
+ value = model(undefined, ...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
33
33
  /** Emits when the value changes. */
34
34
  valueChange = output();
35
35
  /** Whether no button toggles need to be selected. */
36
- nullable = input(true, ...(ngDevMode ? [{ debugName: "nullable", transform: booleanAttribute }] : [{
37
- transform: booleanAttribute,
38
- }]));
36
+ nullable = input(true, { ...(ngDevMode ? { debugName: "nullable" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
39
37
  /** Whether the button toggle group is disabled. */
40
- disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", transform: booleanAttribute }] : [{
41
- transform: booleanAttribute,
42
- }]));
38
+ disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
43
39
  /** The disabled state. */
44
- disabledState = linkedSignal(this.disabled, ...(ngDevMode ? [{ debugName: "disabledState" }] : []));
40
+ disabledState = linkedSignal(this.disabled, ...(ngDevMode ? [{ debugName: "disabledState" }] : /* istanbul ignore next */ []));
45
41
  /** Emit event when the group value changes. */
46
42
  change = output();
47
43
  /**
@@ -136,10 +132,10 @@ class BrnToggleGroup {
136
132
  this._onChange(value);
137
133
  this.change.emit(new BrnButtonToggleChange(source, this.value()));
138
134
  }
139
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnToggleGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive });
140
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.17", type: BrnToggleGroup, isStandalone: true, selector: "[brnToggleGroup],brn-toggle-group", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, nullable: { classPropertyName: "nullable", publicName: "nullable", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", valueChange: "valueChange", change: "change" }, host: { attributes: { "role": "group" }, listeners: { "focusout": "onTouched()" }, properties: { "attr.aria-disabled": "disabledState()", "attr.data-disabled": "disabledState()" } }, providers: [provideBrnToggleGroup(BrnToggleGroup), BRN_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR], exportAs: ["brnToggleGroup"], ngImport: i0 });
135
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnToggleGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive });
136
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.16", type: BrnToggleGroup, isStandalone: true, selector: "[brnToggleGroup],brn-toggle-group", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, nullable: { classPropertyName: "nullable", publicName: "nullable", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", valueChange: "valueChange", change: "change" }, host: { attributes: { "role": "group" }, listeners: { "focusout": "onTouched()" }, properties: { "attr.aria-disabled": "disabledState()", "attr.data-disabled": "disabledState()" } }, providers: [provideBrnToggleGroup(BrnToggleGroup), BRN_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR], exportAs: ["brnToggleGroup"], ngImport: i0 });
141
137
  }
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnToggleGroup, decorators: [{
138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnToggleGroup, decorators: [{
143
139
  type: Directive,
144
140
  args: [{
145
141
  selector: '[brnToggleGroup],brn-toggle-group',
@@ -159,33 +155,31 @@ class BrnToggleGroupItem {
159
155
  /** Access the toggle group if available. */
160
156
  _group = injectBrnToggleGroup();
161
157
  /** The id of the toggle. */
162
- id = input(`brn-toggle-group-item-${++BrnToggleGroupItem._uniqueId}`, ...(ngDevMode ? [{ debugName: "id" }] : []));
158
+ id = input(`brn-toggle-group-item-${++BrnToggleGroupItem._uniqueId}`, ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
163
159
  /** The value this toggle represents. */
164
- value = input(...(ngDevMode ? [undefined, { debugName: "value" }] : []));
160
+ value = input(...(ngDevMode ? [undefined, { debugName: "value" }] : /* istanbul ignore next */ []));
165
161
  /** Whether the toggle is disabled. */
166
- disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", transform: booleanAttribute }] : [{
167
- transform: booleanAttribute,
168
- }]));
162
+ disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
169
163
  /** Whether the toggle is disabled either from itself or from the group. */
170
- _disabled = computed(() => this.disabled() || this._group?.disabled(), ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
164
+ _disabled = computed(() => this.disabled() || this._group?.disabled(), ...(ngDevMode ? [{ debugName: "_disabled" }] : /* istanbul ignore next */ []));
171
165
  /** The current state of the toggle when not used in a group. */
172
- state = model('off', ...(ngDevMode ? [{ debugName: "state" }] : []));
166
+ state = model('off', ...(ngDevMode ? [{ debugName: "state" }] : /* istanbul ignore next */ []));
173
167
  /** The type of the button. */
174
- type = input('button', ...(ngDevMode ? [{ debugName: "type" }] : []));
168
+ type = input('button', ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
175
169
  /**
176
170
  * Accessibility label for screen readers.
177
171
  * Use when no visible label exists.
178
172
  */
179
- ariaLabel = input(null, ...(ngDevMode ? [{ debugName: "ariaLabel", alias: 'aria-label' }] : [{ alias: 'aria-label' }]));
173
+ ariaLabel = input(null, { ...(ngDevMode ? { debugName: "ariaLabel" } : /* istanbul ignore next */ {}), alias: 'aria-label' });
180
174
  /** Whether the toggle is in the on state. */
181
- _isOn = computed(() => this._state() === 'on', ...(ngDevMode ? [{ debugName: "_isOn" }] : []));
175
+ _isOn = computed(() => this._state() === 'on', ...(ngDevMode ? [{ debugName: "_isOn" }] : /* istanbul ignore next */ []));
182
176
  /** The current state that reflects the group state or the model state. */
183
177
  _state = computed(() => {
184
178
  if (this._group) {
185
179
  return this._group.isSelected(this.value()) ? 'on' : 'off';
186
180
  }
187
181
  return this.state();
188
- }, ...(ngDevMode ? [{ debugName: "_state" }] : []));
182
+ }, ...(ngDevMode ? [{ debugName: "_state" }] : /* istanbul ignore next */ []));
189
183
  toggle() {
190
184
  if (this._disabled())
191
185
  return;
@@ -201,10 +195,10 @@ class BrnToggleGroupItem {
201
195
  this.state.set(this._isOn() ? 'off' : 'on');
202
196
  }
203
197
  }
204
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnToggleGroupItem, deps: [], target: i0.ɵɵFactoryTarget.Directive });
205
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.17", type: BrnToggleGroupItem, isStandalone: true, selector: "button[brnToggleGroupItem]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { state: "stateChange" }, host: { listeners: { "click": "toggle()" }, properties: { "id": "id()", "attr.disabled": "_disabled() ? true : null", "attr.data-disabled": "_disabled() ? true : null", "attr.data-state": "_state()", "attr.aria-pressed": "_isOn()", "attr.aria-label": "ariaLabel() || null", "type": "type()" } }, ngImport: i0 });
198
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnToggleGroupItem, deps: [], target: i0.ɵɵFactoryTarget.Directive });
199
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.16", type: BrnToggleGroupItem, isStandalone: true, selector: "button[brnToggleGroupItem]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { state: "stateChange" }, host: { listeners: { "click": "toggle()" }, properties: { "id": "id()", "attr.disabled": "_disabled() ? true : null", "attr.data-disabled": "_disabled() ? true : null", "attr.data-state": "_state()", "attr.aria-pressed": "_isOn()", "attr.aria-label": "ariaLabel() || null", "type": "type()" } }, ngImport: i0 });
206
200
  }
207
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnToggleGroupItem, decorators: [{
201
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnToggleGroupItem, decorators: [{
208
202
  type: Directive,
209
203
  args: [{
210
204
  selector: 'button[brnToggleGroupItem]',
@@ -1 +1 @@
1
- {"version":3,"file":"spartan-ng-brain-toggle-group.mjs","sources":["../../../../libs/brain/toggle-group/src/lib/brn-toggle-group.token.ts","../../../../libs/brain/toggle-group/src/lib/brn-toggle-group.ts","../../../../libs/brain/toggle-group/src/lib/brn-toggle-item.ts","../../../../libs/brain/toggle-group/src/index.ts","../../../../libs/brain/toggle-group/src/spartan-ng-brain-toggle-group.ts"],"sourcesContent":["import { type ExistingProvider, InjectionToken, type Type, inject } from '@angular/core';\nimport type { BrnToggleGroup } from './brn-toggle-group';\n\nconst BrnToggleGroupToken = new InjectionToken<BrnToggleGroup>('BrnToggleGroupToken');\n\nexport function injectBrnToggleGroup<T>(): BrnToggleGroup<T> | null {\n\treturn inject(BrnToggleGroupToken, { optional: true }) as BrnToggleGroup<T> | null;\n}\n\nexport function provideBrnToggleGroup<T>(value: Type<BrnToggleGroup<T>>): ExistingProvider {\n\treturn { provide: BrnToggleGroupToken, useExisting: value };\n}\n","import type { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, computed, Directive, forwardRef, input, linkedSignal, model, output } from '@angular/core';\nimport { type ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { provideBrnToggleGroup } from './brn-toggle-group.token';\nimport type { BrnToggleGroupItem } from './brn-toggle-item';\n\nexport const BRN_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR = {\n\tprovide: NG_VALUE_ACCESSOR,\n\tuseExisting: forwardRef(() => BrnToggleGroup),\n\tmulti: true,\n};\n\nexport class BrnButtonToggleChange<T = unknown> {\n\tconstructor(\n\t\tpublic source: BrnToggleGroupItem<T>,\n\t\tpublic value: ToggleValue<T>,\n\t) {}\n}\n\n@Directive({\n\tselector: '[brnToggleGroup],brn-toggle-group',\n\texportAs: 'brnToggleGroup',\n\tproviders: [provideBrnToggleGroup(BrnToggleGroup), BRN_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR],\n\thost: {\n\t\trole: 'group',\n\t\t'[attr.aria-disabled]': 'disabledState()',\n\t\t'[attr.data-disabled]': 'disabledState()',\n\t\t'(focusout)': 'onTouched()',\n\t},\n})\nexport class BrnToggleGroup<T = unknown> implements ControlValueAccessor {\n\t/** The type of the toggle group. */\n\tpublic readonly type = input<ToggleType>('single');\n\n\t/** Whether the toggle group allows multiple selections. */\n\tprotected readonly _multiple = computed(() => this.type() === 'multiple');\n\n\t/** Value of the toggle group. */\n\tpublic readonly value = model<ToggleValue<T>>(undefined);\n\n\t/** Emits when the value changes. */\n\tpublic readonly valueChange = output<ToggleValue<T>>();\n\n\t/** Whether no button toggles need to be selected. */\n\tpublic readonly nullable = input<boolean, BooleanInput>(true, {\n\t\ttransform: booleanAttribute,\n\t});\n\n\t/** Whether the button toggle group is disabled. */\n\tpublic readonly disabled = input<boolean, BooleanInput>(false, {\n\t\ttransform: booleanAttribute,\n\t});\n\n\t/** The disabled state. */\n\tpublic readonly disabledState = linkedSignal(this.disabled);\n\n\t/** Emit event when the group value changes. */\n\tpublic readonly change = output<BrnButtonToggleChange<T>>();\n\n\t/**\n\t * The method to be called in order to update ngModel.\n\t */\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\tprivate _onChange: (value: ToggleValue<T>) => void = () => {};\n\n\t/** onTouch function registered via registerOnTouch (ControlValueAccessor). */\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\tprotected onTouched: () => void = () => {};\n\n\twriteValue(value: ToggleValue<T>): void {\n\t\tthis.value.set(value);\n\t}\n\n\tregisterOnChange(fn: (value: ToggleValue<T>) => void) {\n\t\tthis._onChange = fn;\n\t}\n\n\tregisterOnTouched(fn: () => void) {\n\t\tthis.onTouched = fn;\n\t}\n\n\tsetDisabledState(isDisabled: boolean): void {\n\t\tthis.disabledState.set(isDisabled);\n\t}\n\n\t/**\n\t * @internal\n\t * Determines whether a value can be set on the group.\n\t */\n\tcanDeselect(value: ToggleValue<T>): boolean {\n\t\t// if null values are allowed, the group can always be nullable\n\t\tif (this.nullable()) return true;\n\n\t\tconst currentValue = this.value();\n\n\t\tif (this._multiple() && Array.isArray(currentValue)) {\n\t\t\treturn !(currentValue.length === 1 && currentValue[0] === value);\n\t\t}\n\n\t\treturn currentValue !== value;\n\t}\n\n\t/**\n\t * @internal\n\t * Selects a value.\n\t */\n\tselect(value: T, source: BrnToggleGroupItem<T>): void {\n\t\tif (this.disabledState() || this.isSelected(value)) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentValue = this.value();\n\n\t\t// emit the valueChange event here as we should only emit based on user interaction\n\t\tif (this._multiple()) {\n\t\t\tthis.emitSelectionChange([...((currentValue ?? []) as T[]), value], source);\n\t\t} else {\n\t\t\tthis.emitSelectionChange(value, source);\n\t\t}\n\n\t\tthis._onChange(this.value());\n\t\tthis.change.emit(new BrnButtonToggleChange<T>(source, this.value()));\n\t}\n\n\t/**\n\t * @internal\n\t * Deselects a value.\n\t */\n\tdeselect(value: T, source: BrnToggleGroupItem<T>): void {\n\t\tif (this.disabledState() || !this.isSelected(value) || !this.canDeselect(value)) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentValue = this.value();\n\n\t\tif (this._multiple()) {\n\t\t\tthis.emitSelectionChange(\n\t\t\t\t((currentValue ?? []) as T[]).filter((v) => v !== value),\n\t\t\t\tsource,\n\t\t\t);\n\t\t} else if (currentValue === value) {\n\t\t\tthis.emitSelectionChange(null, source);\n\t\t}\n\t}\n\n\t/**\n\t * @internal\n\t * Determines whether a value is selected.\n\t */\n\tisSelected(value: T): boolean {\n\t\tconst currentValue = this.value();\n\n\t\tif (\n\t\t\tcurrentValue == null ||\n\t\t\tcurrentValue === undefined ||\n\t\t\t(Array.isArray(currentValue) && currentValue.length === 0)\n\t\t) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (this._multiple()) {\n\t\t\treturn (currentValue as T[])?.includes(value);\n\t\t}\n\t\treturn currentValue === value;\n\t}\n\n\t/** Update the value of the group */\n\tprivate emitSelectionChange(value: ToggleValue<T>, source: BrnToggleGroupItem<T>): void {\n\t\tthis.value.set(value);\n\t\tthis.valueChange.emit(value);\n\t\tthis._onChange(value);\n\t\tthis.change.emit(new BrnButtonToggleChange<T>(source, this.value()));\n\t}\n}\n\nexport type ToggleValue<T> = T | T[] | null | undefined;\nexport type ToggleType = 'single' | 'multiple';\n","import type { BooleanInput } from '@angular/cdk/coercion';\nimport { Directive, booleanAttribute, computed, input, model } from '@angular/core';\nimport { injectBrnToggleGroup } from './brn-toggle-group.token';\n\n@Directive({\n\tselector: 'button[brnToggleGroupItem]',\n\thost: {\n\t\t'[id]': 'id()',\n\t\t'[attr.disabled]': '_disabled() ? true : null',\n\t\t'[attr.data-disabled]': '_disabled() ? true : null',\n\t\t'[attr.data-state]': '_state()',\n\t\t'[attr.aria-pressed]': '_isOn()',\n\t\t'[attr.aria-label]': 'ariaLabel() || null',\n\t\t'[type]': 'type()',\n\t\t'(click)': 'toggle()',\n\t},\n})\nexport class BrnToggleGroupItem<T> {\n\tprivate static _uniqueId = 0;\n\n\t/** Access the toggle group if available. */\n\tprotected readonly _group = injectBrnToggleGroup<T>();\n\n\t/** The id of the toggle. */\n\tpublic readonly id = input<string>(`brn-toggle-group-item-${++BrnToggleGroupItem._uniqueId}`);\n\n\t/** The value this toggle represents. */\n\tpublic readonly value = input<T>();\n\n\t/** Whether the toggle is disabled. */\n\tpublic readonly disabled = input<boolean, BooleanInput>(false, {\n\t\ttransform: booleanAttribute,\n\t});\n\n\t/** Whether the toggle is disabled either from itself or from the group. */\n\tprotected readonly _disabled = computed(() => this.disabled() || this._group?.disabled());\n\n\t/** The current state of the toggle when not used in a group. */\n\tpublic readonly state = model<'on' | 'off'>('off');\n\n\t/** The type of the button. */\n\tpublic readonly type = input<'button' | 'submit' | 'reset'>('button');\n\n\t/**\n\t * Accessibility label for screen readers.\n\t * Use when no visible label exists.\n\t */\n\tpublic readonly ariaLabel = input<string | null>(null, { alias: 'aria-label' });\n\n\t/** Whether the toggle is in the on state. */\n\tprotected readonly _isOn = computed(() => this._state() === 'on');\n\n\t/** The current state that reflects the group state or the model state. */\n\tprotected readonly _state = computed(() => {\n\t\tif (this._group) {\n\t\t\treturn this._group.isSelected(this.value() as T) ? 'on' : 'off';\n\t\t}\n\t\treturn this.state();\n\t});\n\n\ttoggle(): void {\n\t\tif (this._disabled()) return;\n\n\t\tif (this._group) {\n\t\t\tif (this._isOn()) {\n\t\t\t\tthis._group.deselect(this.value() as T, this);\n\t\t\t} else {\n\t\t\t\tthis._group.select(this.value() as T, this);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.state.set(this._isOn() ? 'off' : 'on');\n\t\t}\n\t}\n}\n","import { BrnToggleGroup } from './lib/brn-toggle-group';\nimport { BrnToggleGroupItem } from './lib/brn-toggle-item';\n\nexport * from './lib/brn-toggle-group';\nexport * from './lib/brn-toggle-group.token';\nexport * from './lib/brn-toggle-item';\n\nexport const BrnToggleGroupImports = [BrnToggleGroup, BrnToggleGroupItem] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAGA,MAAM,mBAAmB,GAAG,IAAI,cAAc,CAAiB,qBAAqB,CAAC;SAErE,oBAAoB,GAAA;IACnC,OAAO,MAAM,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAA6B;AACnF;AAEM,SAAU,qBAAqB,CAAI,KAA8B,EAAA;IACtE,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,KAAK,EAAE;AAC5D;;ACLO,MAAM,sCAAsC,GAAG;AACrD,IAAA,OAAO,EAAE,iBAAiB;AAC1B,IAAA,WAAW,EAAE,UAAU,CAAC,MAAM,cAAc,CAAC;AAC7C,IAAA,KAAK,EAAE,IAAI;;MAGC,qBAAqB,CAAA;AAEzB,IAAA,MAAA;AACA,IAAA,KAAA;IAFR,WAAA,CACQ,MAA6B,EAC7B,KAAqB,EAAA;QADrB,IAAA,CAAA,MAAM,GAAN,MAAM;QACN,IAAA,CAAA,KAAK,GAAL,KAAK;;AAEb;MAaY,cAAc,CAAA;;AAEV,IAAA,IAAI,GAAG,KAAK,CAAa,QAAQ,gDAAC;;AAG/B,IAAA,SAAS,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,KAAK,UAAU,qDAAC;;AAGzD,IAAA,KAAK,GAAG,KAAK,CAAiB,SAAS,iDAAC;;IAGxC,WAAW,GAAG,MAAM,EAAkB;;IAGtC,QAAQ,GAAG,KAAK,CAAwB,IAAI,4CAC3D,SAAS,EAAE,gBAAgB,EAAA,CAAA,GAAA,CADkC;AAC7D,YAAA,SAAS,EAAE,gBAAgB;AAC3B,SAAA,CAAA,CAAA,CAAC;;IAGc,QAAQ,GAAG,KAAK,CAAwB,KAAK,4CAC5D,SAAS,EAAE,gBAAgB,EAAA,CAAA,GAAA,CADmC;AAC9D,YAAA,SAAS,EAAE,gBAAgB;AAC3B,SAAA,CAAA,CAAA,CAAC;;AAGc,IAAA,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,yDAAC;;IAG3C,MAAM,GAAG,MAAM,EAA4B;AAE3D;;AAEG;;AAEK,IAAA,SAAS,GAAoC,MAAK,GAAG;;;AAInD,IAAA,SAAS,GAAe,MAAK,GAAG;AAE1C,IAAA,UAAU,CAAC,KAAqB,EAAA;AAC/B,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;;AAGtB,IAAA,gBAAgB,CAAC,EAAmC,EAAA;AACnD,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;;AAGpB,IAAA,iBAAiB,CAAC,EAAc,EAAA;AAC/B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;;AAGpB,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AACnC,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC;;AAGnC;;;AAGG;AACH,IAAA,WAAW,CAAC,KAAqB,EAAA;;QAEhC,IAAI,IAAI,CAAC,QAAQ,EAAE;AAAE,YAAA,OAAO,IAAI;AAEhC,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,EAAE;AAEjC,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;AACpD,YAAA,OAAO,EAAE,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;;QAGjE,OAAO,YAAY,KAAK,KAAK;;AAG9B;;;AAGG;IACH,MAAM,CAAC,KAAQ,EAAE,MAA6B,EAAA;AAC7C,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YACnD;;AAGD,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,EAAE;;AAGjC,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;AACrB,YAAA,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAK,YAAY,IAAI,EAAE,CAAS,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC;;aACrE;AACN,YAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC;;QAGxC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;AAC5B,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,qBAAqB,CAAI,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;;AAGrE;;;AAGG;IACH,QAAQ,CAAC,KAAQ,EAAE,MAA6B,EAAA;QAC/C,IAAI,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;YAChF;;AAGD,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,EAAE;AAEjC,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;YACrB,IAAI,CAAC,mBAAmB,CACtB,CAAC,YAAY,IAAI,EAAE,EAAU,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,EACxD,MAAM,CACN;;AACK,aAAA,IAAI,YAAY,KAAK,KAAK,EAAE;AAClC,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC;;;AAIxC;;;AAGG;AACH,IAAA,UAAU,CAAC,KAAQ,EAAA;AAClB,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,EAAE;QAEjC,IACC,YAAY,IAAI,IAAI;AACpB,YAAA,YAAY,KAAK,SAAS;AAC1B,aAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,EACzD;AACD,YAAA,OAAO,KAAK;;AAGb,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;AACrB,YAAA,OAAQ,YAAoB,EAAE,QAAQ,CAAC,KAAK,CAAC;;QAE9C,OAAO,YAAY,KAAK,KAAK;;;IAItB,mBAAmB,CAAC,KAAqB,EAAE,MAA6B,EAAA;AAC/E,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;AACrB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;AAC5B,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;AACrB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,qBAAqB,CAAI,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;;2HA7IzD,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mCAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,OAAA,EAAA,EAAA,SAAA,EAAA,EAAA,UAAA,EAAA,aAAA,EAAA,EAAA,UAAA,EAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,SAAA,EARf,CAAC,qBAAqB,CAAC,cAAc,CAAC,EAAE,sCAAsC,CAAC,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAQ9E,cAAc,EAAA,UAAA,EAAA,CAAA;kBAX1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,mCAAmC;AAC7C,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,SAAS,EAAE,CAAC,qBAAqB,CAAA,cAAA,CAAgB,EAAE,sCAAsC,CAAC;AAC1F,oBAAA,IAAI,EAAE;AACL,wBAAA,IAAI,EAAE,OAAO;AACb,wBAAA,sBAAsB,EAAE,iBAAiB;AACzC,wBAAA,sBAAsB,EAAE,iBAAiB;AACzC,wBAAA,YAAY,EAAE,aAAa;AAC3B,qBAAA;AACD,iBAAA;;;MCZY,kBAAkB,CAAA;AACtB,IAAA,OAAO,SAAS,GAAG,CAAC;;IAGT,MAAM,GAAG,oBAAoB,EAAK;;IAGrC,EAAE,GAAG,KAAK,CAAS,CAAA,sBAAA,EAAyB,EAAE,kBAAkB,CAAC,SAAS,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;;IAG7E,KAAK,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,OAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAK;;IAGlB,QAAQ,GAAG,KAAK,CAAwB,KAAK,4CAC5D,SAAS,EAAE,gBAAgB,EAAA,CAAA,GAAA,CADmC;AAC9D,YAAA,SAAS,EAAE,gBAAgB;AAC3B,SAAA,CAAA,CAAA,CAAC;;AAGiB,IAAA,SAAS,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,qDAAC;;AAGzE,IAAA,KAAK,GAAG,KAAK,CAAe,KAAK,iDAAC;;AAGlC,IAAA,IAAI,GAAG,KAAK,CAAgC,QAAQ,gDAAC;AAErE;;;AAGG;AACa,IAAA,SAAS,GAAG,KAAK,CAAgB,IAAI,6CAAI,KAAK,EAAE,YAAY,EAAA,CAAA,GAAA,CAArB,EAAE,KAAK,EAAE,YAAY,EAAE,GAAC;;AAG5D,IAAA,KAAK,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,iDAAC;;AAG9C,IAAA,MAAM,GAAG,QAAQ,CAAC,MAAK;AACzC,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;AAChB,YAAA,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAO,CAAC,GAAG,IAAI,GAAG,KAAK;;AAEhE,QAAA,OAAO,IAAI,CAAC,KAAK,EAAE;AACpB,KAAC,kDAAC;IAEF,MAAM,GAAA;QACL,IAAI,IAAI,CAAC,SAAS,EAAE;YAAE;AAEtB,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;AAChB,YAAA,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE;AACjB,gBAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAO,EAAE,IAAI,CAAC;;iBACvC;AACN,gBAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAO,EAAE,IAAI,CAAC;;;aAEtC;AACN,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC;;;2HArDjC,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,UAAA,EAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,eAAA,EAAA,2BAAA,EAAA,oBAAA,EAAA,2BAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAb9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,IAAI,EAAE;AACL,wBAAA,MAAM,EAAE,MAAM;AACd,wBAAA,iBAAiB,EAAE,2BAA2B;AAC9C,wBAAA,sBAAsB,EAAE,2BAA2B;AACnD,wBAAA,mBAAmB,EAAE,UAAU;AAC/B,wBAAA,qBAAqB,EAAE,SAAS;AAChC,wBAAA,mBAAmB,EAAE,qBAAqB;AAC1C,wBAAA,QAAQ,EAAE,QAAQ;AAClB,wBAAA,SAAS,EAAE,UAAU;AACrB,qBAAA;AACD,iBAAA;;;MCTY,qBAAqB,GAAG,CAAC,cAAc,EAAE,kBAAkB;;ACPxE;;AAEG;;;;"}
1
+ {"version":3,"file":"spartan-ng-brain-toggle-group.mjs","sources":["../../../../libs/brain/toggle-group/src/lib/brn-toggle-group.token.ts","../../../../libs/brain/toggle-group/src/lib/brn-toggle-group.ts","../../../../libs/brain/toggle-group/src/lib/brn-toggle-item.ts","../../../../libs/brain/toggle-group/src/index.ts","../../../../libs/brain/toggle-group/src/spartan-ng-brain-toggle-group.ts"],"sourcesContent":["import { type ExistingProvider, InjectionToken, type Type, inject } from '@angular/core';\nimport type { BrnToggleGroup } from './brn-toggle-group';\n\nconst BrnToggleGroupToken = new InjectionToken<BrnToggleGroup>('BrnToggleGroupToken');\n\nexport function injectBrnToggleGroup<T>(): BrnToggleGroup<T> | null {\n\treturn inject(BrnToggleGroupToken, { optional: true }) as BrnToggleGroup<T> | null;\n}\n\nexport function provideBrnToggleGroup<T>(value: Type<BrnToggleGroup<T>>): ExistingProvider {\n\treturn { provide: BrnToggleGroupToken, useExisting: value };\n}\n","import type { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, computed, Directive, forwardRef, input, linkedSignal, model, output } from '@angular/core';\nimport { type ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { provideBrnToggleGroup } from './brn-toggle-group.token';\nimport type { BrnToggleGroupItem } from './brn-toggle-item';\n\nexport const BRN_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR = {\n\tprovide: NG_VALUE_ACCESSOR,\n\tuseExisting: forwardRef(() => BrnToggleGroup),\n\tmulti: true,\n};\n\nexport class BrnButtonToggleChange<T = unknown> {\n\tconstructor(\n\t\tpublic source: BrnToggleGroupItem<T>,\n\t\tpublic value: ToggleValue<T>,\n\t) {}\n}\n\n@Directive({\n\tselector: '[brnToggleGroup],brn-toggle-group',\n\texportAs: 'brnToggleGroup',\n\tproviders: [provideBrnToggleGroup(BrnToggleGroup), BRN_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR],\n\thost: {\n\t\trole: 'group',\n\t\t'[attr.aria-disabled]': 'disabledState()',\n\t\t'[attr.data-disabled]': 'disabledState()',\n\t\t'(focusout)': 'onTouched()',\n\t},\n})\nexport class BrnToggleGroup<T = unknown> implements ControlValueAccessor {\n\t/** The type of the toggle group. */\n\tpublic readonly type = input<ToggleType>('single');\n\n\t/** Whether the toggle group allows multiple selections. */\n\tprotected readonly _multiple = computed(() => this.type() === 'multiple');\n\n\t/** Value of the toggle group. */\n\tpublic readonly value = model<ToggleValue<T>>(undefined);\n\n\t/** Emits when the value changes. */\n\tpublic readonly valueChange = output<ToggleValue<T>>();\n\n\t/** Whether no button toggles need to be selected. */\n\tpublic readonly nullable = input<boolean, BooleanInput>(true, {\n\t\ttransform: booleanAttribute,\n\t});\n\n\t/** Whether the button toggle group is disabled. */\n\tpublic readonly disabled = input<boolean, BooleanInput>(false, {\n\t\ttransform: booleanAttribute,\n\t});\n\n\t/** The disabled state. */\n\tpublic readonly disabledState = linkedSignal(this.disabled);\n\n\t/** Emit event when the group value changes. */\n\tpublic readonly change = output<BrnButtonToggleChange<T>>();\n\n\t/**\n\t * The method to be called in order to update ngModel.\n\t */\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\tprivate _onChange: (value: ToggleValue<T>) => void = () => {};\n\n\t/** onTouch function registered via registerOnTouch (ControlValueAccessor). */\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\tprotected onTouched: () => void = () => {};\n\n\twriteValue(value: ToggleValue<T>): void {\n\t\tthis.value.set(value);\n\t}\n\n\tregisterOnChange(fn: (value: ToggleValue<T>) => void) {\n\t\tthis._onChange = fn;\n\t}\n\n\tregisterOnTouched(fn: () => void) {\n\t\tthis.onTouched = fn;\n\t}\n\n\tsetDisabledState(isDisabled: boolean): void {\n\t\tthis.disabledState.set(isDisabled);\n\t}\n\n\t/**\n\t * @internal\n\t * Determines whether a value can be set on the group.\n\t */\n\tcanDeselect(value: ToggleValue<T>): boolean {\n\t\t// if null values are allowed, the group can always be nullable\n\t\tif (this.nullable()) return true;\n\n\t\tconst currentValue = this.value();\n\n\t\tif (this._multiple() && Array.isArray(currentValue)) {\n\t\t\treturn !(currentValue.length === 1 && currentValue[0] === value);\n\t\t}\n\n\t\treturn currentValue !== value;\n\t}\n\n\t/**\n\t * @internal\n\t * Selects a value.\n\t */\n\tselect(value: T, source: BrnToggleGroupItem<T>): void {\n\t\tif (this.disabledState() || this.isSelected(value)) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentValue = this.value();\n\n\t\t// emit the valueChange event here as we should only emit based on user interaction\n\t\tif (this._multiple()) {\n\t\t\tthis.emitSelectionChange([...((currentValue ?? []) as T[]), value], source);\n\t\t} else {\n\t\t\tthis.emitSelectionChange(value, source);\n\t\t}\n\n\t\tthis._onChange(this.value());\n\t\tthis.change.emit(new BrnButtonToggleChange<T>(source, this.value()));\n\t}\n\n\t/**\n\t * @internal\n\t * Deselects a value.\n\t */\n\tdeselect(value: T, source: BrnToggleGroupItem<T>): void {\n\t\tif (this.disabledState() || !this.isSelected(value) || !this.canDeselect(value)) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentValue = this.value();\n\n\t\tif (this._multiple()) {\n\t\t\tthis.emitSelectionChange(\n\t\t\t\t((currentValue ?? []) as T[]).filter((v) => v !== value),\n\t\t\t\tsource,\n\t\t\t);\n\t\t} else if (currentValue === value) {\n\t\t\tthis.emitSelectionChange(null, source);\n\t\t}\n\t}\n\n\t/**\n\t * @internal\n\t * Determines whether a value is selected.\n\t */\n\tisSelected(value: T): boolean {\n\t\tconst currentValue = this.value();\n\n\t\tif (\n\t\t\tcurrentValue == null ||\n\t\t\tcurrentValue === undefined ||\n\t\t\t(Array.isArray(currentValue) && currentValue.length === 0)\n\t\t) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (this._multiple()) {\n\t\t\treturn (currentValue as T[])?.includes(value);\n\t\t}\n\t\treturn currentValue === value;\n\t}\n\n\t/** Update the value of the group */\n\tprivate emitSelectionChange(value: ToggleValue<T>, source: BrnToggleGroupItem<T>): void {\n\t\tthis.value.set(value);\n\t\tthis.valueChange.emit(value);\n\t\tthis._onChange(value);\n\t\tthis.change.emit(new BrnButtonToggleChange<T>(source, this.value()));\n\t}\n}\n\nexport type ToggleValue<T> = T | T[] | null | undefined;\nexport type ToggleType = 'single' | 'multiple';\n","import type { BooleanInput } from '@angular/cdk/coercion';\nimport { Directive, booleanAttribute, computed, input, model } from '@angular/core';\nimport { injectBrnToggleGroup } from './brn-toggle-group.token';\n\n@Directive({\n\tselector: 'button[brnToggleGroupItem]',\n\thost: {\n\t\t'[id]': 'id()',\n\t\t'[attr.disabled]': '_disabled() ? true : null',\n\t\t'[attr.data-disabled]': '_disabled() ? true : null',\n\t\t'[attr.data-state]': '_state()',\n\t\t'[attr.aria-pressed]': '_isOn()',\n\t\t'[attr.aria-label]': 'ariaLabel() || null',\n\t\t'[type]': 'type()',\n\t\t'(click)': 'toggle()',\n\t},\n})\nexport class BrnToggleGroupItem<T> {\n\tprivate static _uniqueId = 0;\n\n\t/** Access the toggle group if available. */\n\tprotected readonly _group = injectBrnToggleGroup<T>();\n\n\t/** The id of the toggle. */\n\tpublic readonly id = input<string>(`brn-toggle-group-item-${++BrnToggleGroupItem._uniqueId}`);\n\n\t/** The value this toggle represents. */\n\tpublic readonly value = input<T>();\n\n\t/** Whether the toggle is disabled. */\n\tpublic readonly disabled = input<boolean, BooleanInput>(false, {\n\t\ttransform: booleanAttribute,\n\t});\n\n\t/** Whether the toggle is disabled either from itself or from the group. */\n\tprotected readonly _disabled = computed(() => this.disabled() || this._group?.disabled());\n\n\t/** The current state of the toggle when not used in a group. */\n\tpublic readonly state = model<'on' | 'off'>('off');\n\n\t/** The type of the button. */\n\tpublic readonly type = input<'button' | 'submit' | 'reset'>('button');\n\n\t/**\n\t * Accessibility label for screen readers.\n\t * Use when no visible label exists.\n\t */\n\tpublic readonly ariaLabel = input<string | null>(null, { alias: 'aria-label' });\n\n\t/** Whether the toggle is in the on state. */\n\tprotected readonly _isOn = computed(() => this._state() === 'on');\n\n\t/** The current state that reflects the group state or the model state. */\n\tprotected readonly _state = computed(() => {\n\t\tif (this._group) {\n\t\t\treturn this._group.isSelected(this.value() as T) ? 'on' : 'off';\n\t\t}\n\t\treturn this.state();\n\t});\n\n\ttoggle(): void {\n\t\tif (this._disabled()) return;\n\n\t\tif (this._group) {\n\t\t\tif (this._isOn()) {\n\t\t\t\tthis._group.deselect(this.value() as T, this);\n\t\t\t} else {\n\t\t\t\tthis._group.select(this.value() as T, this);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.state.set(this._isOn() ? 'off' : 'on');\n\t\t}\n\t}\n}\n","import { BrnToggleGroup } from './lib/brn-toggle-group';\nimport { BrnToggleGroupItem } from './lib/brn-toggle-item';\n\nexport * from './lib/brn-toggle-group';\nexport * from './lib/brn-toggle-group.token';\nexport * from './lib/brn-toggle-item';\n\nexport const BrnToggleGroupImports = [BrnToggleGroup, BrnToggleGroupItem] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -4,33 +4,31 @@ import { input, booleanAttribute, model, computed, Directive } from '@angular/co
4
4
  class BrnToggle {
5
5
  static _uniqueId = 0;
6
6
  /** The id of the toggle. */
7
- id = input(`brn-toggle-${++BrnToggle._uniqueId}`, ...(ngDevMode ? [{ debugName: "id" }] : []));
7
+ id = input(`brn-toggle-${++BrnToggle._uniqueId}`, ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
8
8
  /** The value this toggle represents. */
9
- value = input(...(ngDevMode ? [undefined, { debugName: "value" }] : []));
9
+ value = input(...(ngDevMode ? [undefined, { debugName: "value" }] : /* istanbul ignore next */ []));
10
10
  /** Whether the toggle is disabled. */
11
- disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", transform: booleanAttribute }] : [{
12
- transform: booleanAttribute,
13
- }]));
11
+ disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
14
12
  /** The current state of the toggle when not used in a group. */
15
- state = model('off', ...(ngDevMode ? [{ debugName: "state" }] : []));
13
+ state = model('off', ...(ngDevMode ? [{ debugName: "state" }] : /* istanbul ignore next */ []));
16
14
  /** The type of the button. */
17
- type = input('button', ...(ngDevMode ? [{ debugName: "type" }] : []));
15
+ type = input('button', ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
18
16
  /**
19
17
  * Accessibility label for screen readers.
20
18
  * Use when no visible label exists.
21
19
  */
22
- ariaLabel = input(null, ...(ngDevMode ? [{ debugName: "ariaLabel", alias: 'aria-label' }] : [{ alias: 'aria-label' }]));
20
+ ariaLabel = input(null, { ...(ngDevMode ? { debugName: "ariaLabel" } : /* istanbul ignore next */ {}), alias: 'aria-label' });
23
21
  /** Whether the toggle is in the on state. */
24
- _isOn = computed(() => this.state() === 'on', ...(ngDevMode ? [{ debugName: "_isOn" }] : []));
22
+ _isOn = computed(() => this.state() === 'on', ...(ngDevMode ? [{ debugName: "_isOn" }] : /* istanbul ignore next */ []));
25
23
  toggle() {
26
24
  if (this.disabled())
27
25
  return;
28
26
  this.state.set(this._isOn() ? 'off' : 'on');
29
27
  }
30
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnToggle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
31
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.17", type: BrnToggle, isStandalone: true, selector: "button[brnToggle]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { state: "stateChange" }, host: { listeners: { "click": "toggle()" }, properties: { "id": "id()", "attr.disabled": "disabled() ? true : null", "attr.data-disabled": "disabled() ? true : null", "attr.data-state": "state()", "attr.aria-pressed": "_isOn()", "attr.aria-label": "ariaLabel() || null", "type": "type()" } }, ngImport: i0 });
28
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnToggle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
29
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.16", type: BrnToggle, isStandalone: true, selector: "button[brnToggle]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { state: "stateChange" }, host: { listeners: { "click": "toggle()" }, properties: { "id": "id()", "attr.disabled": "disabled() ? true : null", "attr.data-disabled": "disabled() ? true : null", "attr.data-state": "state()", "attr.aria-pressed": "_isOn()", "attr.aria-label": "ariaLabel() || null", "type": "type()" } }, ngImport: i0 });
32
30
  }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnToggle, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnToggle, decorators: [{
34
32
  type: Directive,
35
33
  args: [{
36
34
  selector: 'button[brnToggle]',
@@ -1 +1 @@
1
- {"version":3,"file":"spartan-ng-brain-toggle.mjs","sources":["../../../../libs/brain/toggle/src/lib/brn-toggle.ts","../../../../libs/brain/toggle/src/index.ts","../../../../libs/brain/toggle/src/spartan-ng-brain-toggle.ts"],"sourcesContent":["import type { BooleanInput } from '@angular/cdk/coercion';\nimport { Directive, booleanAttribute, computed, input, model } from '@angular/core';\n\n@Directive({\n\tselector: 'button[brnToggle]',\n\thost: {\n\t\t'[id]': 'id()',\n\t\t'[attr.disabled]': 'disabled() ? true : null',\n\t\t'[attr.data-disabled]': 'disabled() ? true : null',\n\t\t'[attr.data-state]': 'state()',\n\t\t'[attr.aria-pressed]': '_isOn()',\n\t\t'[attr.aria-label]': 'ariaLabel() || null',\n\t\t'[type]': 'type()',\n\t\t'(click)': 'toggle()',\n\t},\n})\nexport class BrnToggle<T> {\n\tprivate static _uniqueId = 0;\n\n\t/** The id of the toggle. */\n\tpublic readonly id = input<string>(`brn-toggle-${++BrnToggle._uniqueId}`);\n\n\t/** The value this toggle represents. */\n\tpublic readonly value = input<T>();\n\n\t/** Whether the toggle is disabled. */\n\tpublic readonly disabled = input<boolean, BooleanInput>(false, {\n\t\ttransform: booleanAttribute,\n\t});\n\n\t/** The current state of the toggle when not used in a group. */\n\tpublic readonly state = model<'on' | 'off'>('off');\n\n\t/** The type of the button. */\n\tpublic readonly type = input<'button' | 'submit' | 'reset'>('button');\n\n\t/**\n\t * Accessibility label for screen readers.\n\t * Use when no visible label exists.\n\t */\n\tpublic readonly ariaLabel = input<string | null>(null, { alias: 'aria-label' });\n\n\t/** Whether the toggle is in the on state. */\n\tprotected readonly _isOn = computed(() => this.state() === 'on');\n\n\ttoggle(): void {\n\t\tif (this.disabled()) return;\n\n\t\tthis.state.set(this._isOn() ? 'off' : 'on');\n\t}\n}\n","import { BrnToggle } from './lib/brn-toggle';\n\nexport * from './lib/brn-toggle';\n\nexport const BrnToggleImports = [BrnToggle] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spartan-ng-brain-toggle.mjs","sources":["../../../../libs/brain/toggle/src/lib/brn-toggle.ts","../../../../libs/brain/toggle/src/index.ts","../../../../libs/brain/toggle/src/spartan-ng-brain-toggle.ts"],"sourcesContent":["import type { BooleanInput } from '@angular/cdk/coercion';\nimport { Directive, booleanAttribute, computed, input, model } from '@angular/core';\n\n@Directive({\n\tselector: 'button[brnToggle]',\n\thost: {\n\t\t'[id]': 'id()',\n\t\t'[attr.disabled]': 'disabled() ? true : null',\n\t\t'[attr.data-disabled]': 'disabled() ? true : null',\n\t\t'[attr.data-state]': 'state()',\n\t\t'[attr.aria-pressed]': '_isOn()',\n\t\t'[attr.aria-label]': 'ariaLabel() || null',\n\t\t'[type]': 'type()',\n\t\t'(click)': 'toggle()',\n\t},\n})\nexport class BrnToggle<T> {\n\tprivate static _uniqueId = 0;\n\n\t/** The id of the toggle. */\n\tpublic readonly id = input<string>(`brn-toggle-${++BrnToggle._uniqueId}`);\n\n\t/** The value this toggle represents. */\n\tpublic readonly value = input<T>();\n\n\t/** Whether the toggle is disabled. */\n\tpublic readonly disabled = input<boolean, BooleanInput>(false, {\n\t\ttransform: booleanAttribute,\n\t});\n\n\t/** The current state of the toggle when not used in a group. */\n\tpublic readonly state = model<'on' | 'off'>('off');\n\n\t/** The type of the button. */\n\tpublic readonly type = input<'button' | 'submit' | 'reset'>('button');\n\n\t/**\n\t * Accessibility label for screen readers.\n\t * Use when no visible label exists.\n\t */\n\tpublic readonly ariaLabel = input<string | null>(null, { alias: 'aria-label' });\n\n\t/** Whether the toggle is in the on state. */\n\tprotected readonly _isOn = computed(() => this.state() === 'on');\n\n\ttoggle(): void {\n\t\tif (this.disabled()) return;\n\n\t\tthis.state.set(this._isOn() ? 'off' : 'on');\n\t}\n}\n","import { BrnToggle } from './lib/brn-toggle';\n\nexport * from './lib/brn-toggle';\n\nexport const BrnToggleImports = [BrnToggle] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -20,8 +20,8 @@ class BrnTooltipStringTemplateOutlet {
20
20
  _lastOutletWasTemplate = false;
21
21
  _lastTemplateRef = null;
22
22
  _lastContext;
23
- brnTooltipStringTemplateOutletContext = input(undefined, ...(ngDevMode ? [{ debugName: "brnTooltipStringTemplateOutletContext" }] : []));
24
- brnTooltipStringTemplateOutlet = input.required(...(ngDevMode ? [{ debugName: "brnTooltipStringTemplateOutlet" }] : []));
23
+ brnTooltipStringTemplateOutletContext = input(undefined, ...(ngDevMode ? [{ debugName: "brnTooltipStringTemplateOutletContext" }] : /* istanbul ignore next */ []));
24
+ brnTooltipStringTemplateOutlet = input.required(...(ngDevMode ? [{ debugName: "brnTooltipStringTemplateOutlet" }] : /* istanbul ignore next */ []));
25
25
  _hasContextShapeChanged(context) {
26
26
  if (!context) {
27
27
  return false;
@@ -76,7 +76,7 @@ class BrnTooltipStringTemplateOutlet {
76
76
  else {
77
77
  this._updateContext(stringTemplateOutlet, stringTemplateOutletContext);
78
78
  }
79
- }, ...(ngDevMode ? [{ debugName: "_viewEffect" }] : []));
79
+ }, ...(ngDevMode ? [{ debugName: "_viewEffect" }] : /* istanbul ignore next */ []));
80
80
  _recreateView(outlet, context) {
81
81
  this._viewContainer.clear();
82
82
  if (isTemplateRef(outlet)) {
@@ -107,10 +107,10 @@ class BrnTooltipStringTemplateOutlet {
107
107
  this._viewContainer.clear();
108
108
  this._embeddedViewRef = null;
109
109
  }
110
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnTooltipStringTemplateOutlet, deps: [], target: i0.ɵɵFactoryTarget.Directive });
111
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.17", type: BrnTooltipStringTemplateOutlet, isStandalone: true, selector: "[brnTooltipStringTemplateOutlet]", inputs: { brnTooltipStringTemplateOutletContext: { classPropertyName: "brnTooltipStringTemplateOutletContext", publicName: "brnTooltipStringTemplateOutletContext", isSignal: true, isRequired: false, transformFunction: null }, brnTooltipStringTemplateOutlet: { classPropertyName: "brnTooltipStringTemplateOutlet", publicName: "brnTooltipStringTemplateOutlet", isSignal: true, isRequired: true, transformFunction: null } }, exportAs: ["brnTooltipStringTemplateOutlet"], ngImport: i0 });
110
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnTooltipStringTemplateOutlet, deps: [], target: i0.ɵɵFactoryTarget.Directive });
111
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.16", type: BrnTooltipStringTemplateOutlet, isStandalone: true, selector: "[brnTooltipStringTemplateOutlet]", inputs: { brnTooltipStringTemplateOutletContext: { classPropertyName: "brnTooltipStringTemplateOutletContext", publicName: "brnTooltipStringTemplateOutletContext", isSignal: true, isRequired: false, transformFunction: null }, brnTooltipStringTemplateOutlet: { classPropertyName: "brnTooltipStringTemplateOutlet", publicName: "brnTooltipStringTemplateOutlet", isSignal: true, isRequired: true, transformFunction: null } }, exportAs: ["brnTooltipStringTemplateOutlet"], ngImport: i0 });
112
112
  }
113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnTooltipStringTemplateOutlet, decorators: [{
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnTooltipStringTemplateOutlet, decorators: [{
114
114
  type: Directive,
115
115
  args: [{
116
116
  selector: '[brnTooltipStringTemplateOutlet]',
@@ -120,13 +120,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
120
120
 
121
121
  let uniqueId = 0;
122
122
  class BrnTooltipContent {
123
- id = input(`brn-tooltip-${++uniqueId}`, ...(ngDevMode ? [{ debugName: "id" }] : []));
124
- state = signal('closed', ...(ngDevMode ? [{ debugName: "state" }] : []));
125
- _tooltipClass = signal('', ...(ngDevMode ? [{ debugName: "_tooltipClass" }] : []));
126
- _arrowClass = signal('', ...(ngDevMode ? [{ debugName: "_arrowClass" }] : []));
127
- _svgClass = signal('', ...(ngDevMode ? [{ debugName: "_svgClass" }] : []));
128
- _position = signal('top', ...(ngDevMode ? [{ debugName: "_position" }] : []));
129
- _tooltipText = signal(null, ...(ngDevMode ? [{ debugName: "_tooltipText" }] : []));
123
+ id = input(`brn-tooltip-${++uniqueId}`, ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
124
+ state = signal('closed', ...(ngDevMode ? [{ debugName: "state" }] : /* istanbul ignore next */ []));
125
+ _tooltipClass = signal('', ...(ngDevMode ? [{ debugName: "_tooltipClass" }] : /* istanbul ignore next */ []));
126
+ _arrowClass = signal('', ...(ngDevMode ? [{ debugName: "_arrowClass" }] : /* istanbul ignore next */ []));
127
+ _svgClass = signal('', ...(ngDevMode ? [{ debugName: "_svgClass" }] : /* istanbul ignore next */ []));
128
+ _position = signal('top', ...(ngDevMode ? [{ debugName: "_position" }] : /* istanbul ignore next */ []));
129
+ _tooltipText = signal(null, ...(ngDevMode ? [{ debugName: "_tooltipText" }] : /* istanbul ignore next */ []));
130
130
  setProps(tooltipText, position, tooltipClasses, arrowClasses, svgClasses) {
131
131
  if (tooltipText) {
132
132
  this._tooltipText.set(tooltipText);
@@ -136,8 +136,8 @@ class BrnTooltipContent {
136
136
  this._arrowClass.set(arrowClasses);
137
137
  this._svgClass.set(svgClasses);
138
138
  }
139
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnTooltipContent, deps: [], target: i0.ɵɵFactoryTarget.Component });
140
- /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.17", type: BrnTooltipContent, isStandalone: true, selector: "ng-component", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "tooltip" }, properties: { "class": "_tooltipClass()", "attr.id": "id()", "attr.data-side": "_position()", "attr.data-state": "state()" } }, ngImport: i0, template: `
139
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnTooltipContent, deps: [], target: i0.ɵɵFactoryTarget.Component });
140
+ /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.16", type: BrnTooltipContent, isStandalone: true, selector: "ng-component", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "tooltip" }, properties: { "class": "_tooltipClass()", "attr.id": "id()", "attr.data-side": "_position()", "attr.data-state": "state()" } }, ngImport: i0, template: `
141
141
  <ng-container *brnTooltipStringTemplateOutlet="_tooltipText()">{{ _tooltipText() }}</ng-container>
142
142
 
143
143
  <span [class]="_arrowClass()">
@@ -147,7 +147,7 @@ class BrnTooltipContent {
147
147
  </span>
148
148
  `, isInline: true, dependencies: [{ kind: "directive", type: BrnTooltipStringTemplateOutlet, selector: "[brnTooltipStringTemplateOutlet]", inputs: ["brnTooltipStringTemplateOutletContext", "brnTooltipStringTemplateOutlet"], exportAs: ["brnTooltipStringTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
149
149
  }
150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnTooltipContent, decorators: [{
150
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnTooltipContent, decorators: [{
151
151
  type: Component,
152
152
  args: [{
153
153
  imports: [BrnTooltipStringTemplateOutlet],
@@ -256,12 +256,12 @@ class BrnTooltip {
256
256
  _overlayRef = undefined;
257
257
  _ariaEffectRef = undefined;
258
258
  _positionChangeSub = undefined;
259
- tooltipDisabled = input(false, ...(ngDevMode ? [{ debugName: "tooltipDisabled", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
260
- mutableTooltipDisabled = linkedSignal(this.tooltipDisabled, ...(ngDevMode ? [{ debugName: "mutableTooltipDisabled" }] : []));
261
- position = input(this._config.position ?? 'top', ...(ngDevMode ? [{ debugName: "position" }] : []));
262
- brnTooltip = input(null, ...(ngDevMode ? [{ debugName: "brnTooltip" }] : []));
263
- showDelay = input(this._config.showDelay, ...(ngDevMode ? [{ debugName: "showDelay", transform: numberAttribute }] : [{ transform: numberAttribute }]));
264
- hideDelay = input(this._config.hideDelay, ...(ngDevMode ? [{ debugName: "hideDelay", transform: numberAttribute }] : [{ transform: numberAttribute }]));
259
+ tooltipDisabled = input(false, { ...(ngDevMode ? { debugName: "tooltipDisabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
260
+ mutableTooltipDisabled = linkedSignal(this.tooltipDisabled, ...(ngDevMode ? [{ debugName: "mutableTooltipDisabled" }] : /* istanbul ignore next */ []));
261
+ position = input(this._config.position ?? 'top', ...(ngDevMode ? [{ debugName: "position" }] : /* istanbul ignore next */ []));
262
+ brnTooltip = input(null, ...(ngDevMode ? [{ debugName: "brnTooltip" }] : /* istanbul ignore next */ []));
263
+ showDelay = input(this._config.showDelay, { ...(ngDevMode ? { debugName: "showDelay" } : /* istanbul ignore next */ {}), transform: numberAttribute });
264
+ hideDelay = input(this._config.hideDelay, { ...(ngDevMode ? { debugName: "hideDelay" } : /* istanbul ignore next */ {}), transform: numberAttribute });
265
265
  show = output();
266
266
  hide = output();
267
267
  _tooltipText = computed(() => {
@@ -273,7 +273,7 @@ class BrnTooltip {
273
273
  tooltipText = tooltipText.trim();
274
274
  }
275
275
  return tooltipText;
276
- }, ...(ngDevMode ? [{ debugName: "_tooltipText" }] : []));
276
+ }, ...(ngDevMode ? [{ debugName: "_tooltipText" }] : /* istanbul ignore next */ []));
277
277
  constructor() {
278
278
  afterNextRender(() => {
279
279
  this._overlayRef = this._overlay.create({
@@ -412,7 +412,7 @@ class BrnTooltip {
412
412
  this._ariaEffectRef?.destroy();
413
413
  this._ariaEffectRef = undefined;
414
414
  }
415
- }, ...(ngDevMode ? [{ debugName: "_ariaEffectRef" }] : []));
415
+ }, ...(ngDevMode ? [{ debugName: "_ariaEffectRef" }] : /* istanbul ignore next */ []));
416
416
  });
417
417
  this.show.emit();
418
418
  }
@@ -433,10 +433,10 @@ class BrnTooltip {
433
433
  this._ariaEffectRef = undefined;
434
434
  }
435
435
  }
436
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnTooltip, deps: [], target: i0.ɵɵFactoryTarget.Directive });
437
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.17", type: BrnTooltip, isStandalone: true, selector: "[brnTooltip]", inputs: { tooltipDisabled: { classPropertyName: "tooltipDisabled", publicName: "tooltipDisabled", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, brnTooltip: { classPropertyName: "brnTooltip", publicName: "brnTooltip", isSignal: true, isRequired: false, transformFunction: null }, showDelay: { classPropertyName: "showDelay", publicName: "showDelay", isSignal: true, isRequired: false, transformFunction: null }, hideDelay: { classPropertyName: "hideDelay", publicName: "hideDelay", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { show: "show", hide: "hide" }, exportAs: ["brnTooltip"], ngImport: i0 });
436
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnTooltip, deps: [], target: i0.ɵɵFactoryTarget.Directive });
437
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.16", type: BrnTooltip, isStandalone: true, selector: "[brnTooltip]", inputs: { tooltipDisabled: { classPropertyName: "tooltipDisabled", publicName: "tooltipDisabled", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, brnTooltip: { classPropertyName: "brnTooltip", publicName: "brnTooltip", isSignal: true, isRequired: false, transformFunction: null }, showDelay: { classPropertyName: "showDelay", publicName: "showDelay", isSignal: true, isRequired: false, transformFunction: null }, hideDelay: { classPropertyName: "hideDelay", publicName: "hideDelay", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { show: "show", hide: "hide" }, exportAs: ["brnTooltip"], ngImport: i0 });
438
438
  }
439
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: BrnTooltip, decorators: [{
439
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnTooltip, decorators: [{
440
440
  type: Directive,
441
441
  args: [{ selector: '[brnTooltip]', exportAs: 'brnTooltip' }]
442
442
  }], ctorParameters: () => [], propDecorators: { tooltipDisabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "tooltipDisabled", required: false }] }], position: [{ type: i0.Input, args: [{ isSignal: true, alias: "position", required: false }] }], brnTooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "brnTooltip", required: false }] }], showDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "showDelay", required: false }] }], hideDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideDelay", required: false }] }], show: [{ type: i0.Output, args: ["show"] }], hide: [{ type: i0.Output, args: ["hide"] }] } });