@theseam/ui-common 1.0.0-beta.8 → 1.0.0

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 (99) hide show
  1. package/buttons/index.d.ts +4 -1
  2. package/datatable/index.d.ts +92 -53
  3. package/fesm2022/theseam-ui-common-asset-reader.mjs +10 -10
  4. package/fesm2022/theseam-ui-common-asset-reader.mjs.map +1 -1
  5. package/fesm2022/theseam-ui-common-breadcrumbs.mjs +6 -6
  6. package/fesm2022/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  7. package/fesm2022/theseam-ui-common-buttons.mjs +35 -28
  8. package/fesm2022/theseam-ui-common-buttons.mjs.map +1 -1
  9. package/fesm2022/theseam-ui-common-card.mjs +16 -16
  10. package/fesm2022/theseam-ui-common-card.mjs.map +1 -1
  11. package/fesm2022/theseam-ui-common-carousel.mjs +10 -10
  12. package/fesm2022/theseam-ui-common-carousel.mjs.map +1 -1
  13. package/fesm2022/theseam-ui-common-checkbox.mjs +7 -7
  14. package/fesm2022/theseam-ui-common-checkbox.mjs.map +1 -1
  15. package/fesm2022/theseam-ui-common-confirm-dialog.mjs +13 -13
  16. package/fesm2022/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  17. package/fesm2022/theseam-ui-common-data-exporter.mjs +31 -14
  18. package/fesm2022/theseam-ui-common-data-exporter.mjs.map +1 -1
  19. package/fesm2022/theseam-ui-common-data-filters.mjs +13 -13
  20. package/fesm2022/theseam-ui-common-data-filters.mjs.map +1 -1
  21. package/fesm2022/theseam-ui-common-datatable-alterations-display.mjs +12 -12
  22. package/fesm2022/theseam-ui-common-datatable-alterations-display.mjs.map +1 -1
  23. package/fesm2022/theseam-ui-common-datatable-dynamic.mjs +25 -25
  24. package/fesm2022/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  25. package/fesm2022/theseam-ui-common-datatable.mjs +279 -185
  26. package/fesm2022/theseam-ui-common-datatable.mjs.map +1 -1
  27. package/fesm2022/theseam-ui-common-dynamic-component-loader.mjs +7 -7
  28. package/fesm2022/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  29. package/fesm2022/theseam-ui-common-dynamic.mjs +21 -21
  30. package/fesm2022/theseam-ui-common-dynamic.mjs.map +1 -1
  31. package/fesm2022/theseam-ui-common-footer-bar.mjs +7 -7
  32. package/fesm2022/theseam-ui-common-footer-bar.mjs.map +1 -1
  33. package/fesm2022/theseam-ui-common-form-field-error.mjs +16 -16
  34. package/fesm2022/theseam-ui-common-form-field-error.mjs.map +1 -1
  35. package/fesm2022/theseam-ui-common-form-field.mjs +22 -22
  36. package/fesm2022/theseam-ui-common-form-field.mjs.map +1 -1
  37. package/fesm2022/theseam-ui-common-framework.mjs +157 -157
  38. package/fesm2022/theseam-ui-common-framework.mjs.map +1 -1
  39. package/fesm2022/theseam-ui-common-google-maps.mjs +40 -40
  40. package/fesm2022/theseam-ui-common-google-maps.mjs.map +1 -1
  41. package/fesm2022/theseam-ui-common-graphql.mjs +3 -3
  42. package/fesm2022/theseam-ui-common-graphql.mjs.map +1 -1
  43. package/fesm2022/theseam-ui-common-icon.mjs +13 -13
  44. package/fesm2022/theseam-ui-common-icon.mjs.map +1 -1
  45. package/fesm2022/theseam-ui-common-layout.mjs +7 -7
  46. package/fesm2022/theseam-ui-common-layout.mjs.map +1 -1
  47. package/fesm2022/theseam-ui-common-loading.mjs +10 -10
  48. package/fesm2022/theseam-ui-common-loading.mjs.map +1 -1
  49. package/fesm2022/theseam-ui-common-menu.mjs +25 -25
  50. package/fesm2022/theseam-ui-common-menu.mjs.map +1 -1
  51. package/fesm2022/theseam-ui-common-modal.mjs +43 -43
  52. package/fesm2022/theseam-ui-common-modal.mjs.map +1 -1
  53. package/fesm2022/theseam-ui-common-navigation-reload.mjs +3 -3
  54. package/fesm2022/theseam-ui-common-navigation-reload.mjs.map +1 -1
  55. package/fesm2022/theseam-ui-common-popover.mjs +10 -10
  56. package/fesm2022/theseam-ui-common-popover.mjs.map +1 -1
  57. package/fesm2022/theseam-ui-common-progress.mjs +7 -7
  58. package/fesm2022/theseam-ui-common-progress.mjs.map +1 -1
  59. package/fesm2022/theseam-ui-common-rich-text.mjs +7 -7
  60. package/fesm2022/theseam-ui-common-rich-text.mjs.map +1 -1
  61. package/fesm2022/theseam-ui-common-scrollbar.mjs +6 -6
  62. package/fesm2022/theseam-ui-common-scrollbar.mjs.map +1 -1
  63. package/fesm2022/theseam-ui-common-services.mjs +12 -12
  64. package/fesm2022/theseam-ui-common-services.mjs.map +1 -1
  65. package/fesm2022/theseam-ui-common-shared.mjs +37 -37
  66. package/fesm2022/theseam-ui-common-shared.mjs.map +1 -1
  67. package/fesm2022/theseam-ui-common-storage.mjs +3 -3
  68. package/fesm2022/theseam-ui-common-storage.mjs.map +1 -1
  69. package/fesm2022/theseam-ui-common-story-helpers.mjs +26 -26
  70. package/fesm2022/theseam-ui-common-story-helpers.mjs.map +1 -1
  71. package/fesm2022/theseam-ui-common-tabbed.mjs +22 -22
  72. package/fesm2022/theseam-ui-common-tabbed.mjs.map +1 -1
  73. package/fesm2022/theseam-ui-common-table-cell-type.mjs +39 -11
  74. package/fesm2022/theseam-ui-common-table-cell-type.mjs.map +1 -1
  75. package/fesm2022/theseam-ui-common-table-cell-types.mjs +31 -31
  76. package/fesm2022/theseam-ui-common-table-cell-types.mjs.map +1 -1
  77. package/fesm2022/theseam-ui-common-table.mjs +23 -21
  78. package/fesm2022/theseam-ui-common-table.mjs.map +1 -1
  79. package/fesm2022/theseam-ui-common-tel-input.mjs +13 -13
  80. package/fesm2022/theseam-ui-common-tel-input.mjs.map +1 -1
  81. package/fesm2022/theseam-ui-common-tiled-select.mjs +22 -22
  82. package/fesm2022/theseam-ui-common-tiled-select.mjs.map +1 -1
  83. package/fesm2022/theseam-ui-common-toggle-edit.mjs +16 -16
  84. package/fesm2022/theseam-ui-common-toggle-edit.mjs.map +1 -1
  85. package/fesm2022/theseam-ui-common-toggle-group.mjs +10 -10
  86. package/fesm2022/theseam-ui-common-toggle-group.mjs.map +1 -1
  87. package/fesm2022/theseam-ui-common-tooltip.mjs +10 -10
  88. package/fesm2022/theseam-ui-common-tooltip.mjs.map +1 -1
  89. package/fesm2022/theseam-ui-common-unsaved-changes-dialog.mjs +10 -10
  90. package/fesm2022/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  91. package/fesm2022/theseam-ui-common-vertical-list-filter.mjs +3 -3
  92. package/fesm2022/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
  93. package/fesm2022/theseam-ui-common-viewers.mjs +12 -12
  94. package/fesm2022/theseam-ui-common-viewers.mjs.map +1 -1
  95. package/fesm2022/theseam-ui-common-widget.mjs +135 -135
  96. package/fesm2022/theseam-ui-common-widget.mjs.map +1 -1
  97. package/package.json +33 -33
  98. package/table/index.d.ts +1 -2
  99. package/table-cell-type/index.d.ts +27 -2
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-toggle-group.mjs","sources":["../../../projects/ui-common/toggle-group/toggle-group-option.directive.ts","../../../projects/ui-common/toggle-group/toggle-group.directive.ts","../../../projects/ui-common/toggle-group/toggle-group.module.ts","../../../projects/ui-common/toggle-group/theseam-ui-common-toggle-group.ts"],"sourcesContent":["import { coerceBooleanProperty } from '@angular/cdk/coercion'\nimport {\n ChangeDetectorRef,\n Directive,\n EventEmitter,\n HostBinding,\n inject,\n Input,\n Output,\n} from '@angular/core'\n\n@Directive({\n selector: '[seamToggleGroupOption]',\n exportAs: 'seamToggleGroupOption',\n})\nexport class ToggleGroupOptionDirective {\n private readonly _cdr = inject(ChangeDetectorRef)\n\n @Input() seamToggleGroupOption: string | undefined | null\n\n @Input()\n get selected(): boolean {\n return this._selected\n }\n set selected(value: boolean) {\n if (!this._canUnselect && !value) {\n return\n }\n this._selected = coerceBooleanProperty(value)\n this.selectionChange.emit(this._selected)\n this._cdr.markForCheck()\n }\n private _selected = false\n\n /** Internal use only for now. */\n _canUnselect = true\n\n @Output() selectionChange = new EventEmitter<boolean>()\n\n @HostBinding('class.lib-toggle-group-option-selected')\n get _checkioSelectedClass() {\n return this._selected\n }\n\n get value(): string | undefined | null {\n return this.seamToggleGroupOption\n }\n}\n","import { BooleanInput, coerceArray } from '@angular/cdk/coercion'\nimport {\n AfterViewInit,\n ContentChildren,\n Directive,\n EventEmitter,\n forwardRef,\n Input,\n OnDestroy,\n Output,\n QueryList,\n} from '@angular/core'\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms'\nimport { combineLatest, from, Observable, of, Subject } from 'rxjs'\nimport {\n filter,\n map,\n startWith,\n switchMap,\n takeUntil,\n tap,\n} from 'rxjs/operators'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\n\nimport { ToggleGroupOptionDirective } from './toggle-group-option.directive'\n\nexport const TOGGLE_GROUP_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ToggleGroupDirective),\n multi: true,\n}\n\n@Directive({\n selector: '[seamToggleGroup]',\n exportAs: 'seamToggleGroup',\n providers: [TOGGLE_GROUP_VALUE_ACCESSOR],\n})\nexport class ToggleGroupDirective\n implements OnDestroy, AfterViewInit, ControlValueAccessor\n{\n static ngAcceptInputType_disabled: BooleanInput\n static ngAcceptInputType_multiple: BooleanInput\n static ngAcceptInputType_selectionToggleable: BooleanInput\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('value') val: string | string[] | undefined | null\n\n @Input() @InputBoolean() disabled = false\n @Input() @InputBoolean() multiple = false\n @Input() @InputBoolean() selectionToggleable = true\n\n // TODO: Add min/max selected inputs to make toggling better for multi select\n\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() readonly change = new EventEmitter<\n string | string[] | undefined | null\n >()\n\n @ContentChildren(ToggleGroupOptionDirective)\n optionDirectives?: QueryList<ToggleGroupOptionDirective>\n\n public options?: Observable<ToggleGroupOptionDirective[]>\n\n onChange: any\n onTouched: any\n\n ngOnDestroy() {\n this._ngUnsubscribe.next()\n this._ngUnsubscribe.complete()\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n this._updateDirectiveStates()\n\n if (this.optionDirectives) {\n this.options = this.optionDirectives.changes.pipe(\n startWith(this.optionDirectives),\n map((v) => v.toArray() as ToggleGroupOptionDirective[]),\n takeUntil(this._ngUnsubscribe),\n )\n\n this.options\n .pipe(\n switchMap((opts) => {\n const _tmp = of(undefined)\n if (opts) {\n const _v: Observable<boolean>[] = []\n for (const opt of opts) {\n _v.push(\n opt.selectionChange.pipe(\n filter(\n (v) => opt.selected !== this.isSelected(opt.value),\n ),\n tap((v) => {\n if (this.isSelected(opt.value)) {\n this.unselectValue(opt.value)\n } else {\n this.selectValue(opt.value)\n }\n }),\n ),\n )\n }\n return combineLatest(_v)\n }\n return _tmp\n }),\n takeUntil(this._ngUnsubscribe),\n )\n .subscribe()\n }\n\n this.change\n .pipe(\n switchMap((_) =>\n from(this.optionDirectives?.toArray() || []).pipe(\n tap((opt) => {\n this._updateDirectiveState(opt)\n }),\n ),\n ),\n takeUntil(this._ngUnsubscribe),\n )\n .subscribe()\n })\n\n this.optionDirectives?.changes.subscribe(() =>\n this._updateDirectiveStates(),\n )\n }\n\n get value(): string | string[] | undefined | null {\n return this.val\n }\n\n set value(value: string | string[] | undefined | null) {\n const _value = this.multiple\n ? value !== null && value !== undefined\n ? coerceArray(value)\n : value\n : value\n\n this.val = this.multiple ? [...((_value as string[]) || [])] : _value || ''\n this.change.emit(this.val)\n if (this.onChange) {\n this.onChange(_value)\n }\n if (this.onTouched) {\n this.onTouched()\n }\n }\n\n writeValue(value: any): void {\n this.value = value\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled\n }\n\n isSelected(value: string | undefined | null) {\n if (this.multiple) {\n const idx = ((this.value as string[]) || []).findIndex((v) => v === value)\n return idx !== -1\n } else {\n // TODO: Clean this up when the directive no longer allows array value type when multiple is false\n const v =\n Array.isArray(this.value) && this.value.length === 1\n ? this.value[0]\n : this.value\n return v === value\n }\n }\n\n unselectValue(value: string | undefined | null) {\n if (this.multiple) {\n this.value = ((this.value as string[]) || []).filter((v) => v !== value)\n } else {\n this.value = undefined\n }\n }\n\n selectValue(value: string | undefined | null) {\n if (this.multiple) {\n const _value = [...((this.value as string[]) || [])]\n this.value = value ? [..._value, value] : _value\n } else {\n this.value = value\n }\n }\n\n getOptionDirectiveByValue(value: string) {\n if (!this.optionDirectives || this.optionDirectives.length < 1) {\n return null\n }\n\n return this.optionDirectives.toArray().find((opt) => opt.value === value)\n }\n\n private _updateDirectiveStates(): void {\n if (this.optionDirectives) {\n for (const opt of this.optionDirectives.toArray()) {\n this._updateDirectiveState(opt)\n }\n }\n }\n\n private _updateDirectiveState(opt: ToggleGroupOptionDirective): void {\n const selected = this.isSelected(opt.value)\n if (opt.selected !== selected) {\n if (!opt._canUnselect) {\n opt._canUnselect = true\n }\n opt.selected = selected\n }\n if (!this.selectionToggleable) {\n if (!this.multiple || (this.value && this.value.length <= 1)) {\n if (opt.selected) {\n if (opt._canUnselect) {\n opt._canUnselect = false\n }\n } else {\n if (!opt._canUnselect) {\n opt._canUnselect = true\n }\n }\n } else {\n if (!opt._canUnselect) {\n opt._canUnselect = true\n }\n }\n }\n }\n}\n","import { NgModule } from '@angular/core'\n\nimport { ToggleGroupOptionDirective } from './toggle-group-option.directive'\nimport { ToggleGroupDirective } from './toggle-group.directive'\n\n@NgModule({\n imports: [ToggleGroupDirective, ToggleGroupOptionDirective],\n exports: [ToggleGroupDirective, ToggleGroupOptionDirective],\n})\nexport class TheSeamToggleGroupModule {}\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":"theseam-ui-common-toggle-group.mjs","sources":["../../../projects/ui-common/toggle-group/toggle-group-option.directive.ts","../../../projects/ui-common/toggle-group/toggle-group.directive.ts","../../../projects/ui-common/toggle-group/toggle-group.module.ts","../../../projects/ui-common/toggle-group/theseam-ui-common-toggle-group.ts"],"sourcesContent":["import { coerceBooleanProperty } from '@angular/cdk/coercion'\nimport {\n ChangeDetectorRef,\n Directive,\n EventEmitter,\n HostBinding,\n inject,\n Input,\n Output,\n} from '@angular/core'\n\n@Directive({\n selector: '[seamToggleGroupOption]',\n exportAs: 'seamToggleGroupOption',\n})\nexport class ToggleGroupOptionDirective {\n private readonly _cdr = inject(ChangeDetectorRef)\n\n @Input() seamToggleGroupOption: string | undefined | null\n\n @Input()\n get selected(): boolean {\n return this._selected\n }\n set selected(value: boolean) {\n if (!this._canUnselect && !value) {\n return\n }\n this._selected = coerceBooleanProperty(value)\n this.selectionChange.emit(this._selected)\n this._cdr.markForCheck()\n }\n private _selected = false\n\n /** Internal use only for now. */\n _canUnselect = true\n\n @Output() selectionChange = new EventEmitter<boolean>()\n\n @HostBinding('class.lib-toggle-group-option-selected')\n get _checkioSelectedClass() {\n return this._selected\n }\n\n get value(): string | undefined | null {\n return this.seamToggleGroupOption\n }\n}\n","import { BooleanInput, coerceArray } from '@angular/cdk/coercion'\nimport {\n AfterViewInit,\n ContentChildren,\n Directive,\n EventEmitter,\n forwardRef,\n Input,\n OnDestroy,\n Output,\n QueryList,\n} from '@angular/core'\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms'\nimport { combineLatest, from, Observable, of, Subject } from 'rxjs'\nimport {\n filter,\n map,\n startWith,\n switchMap,\n takeUntil,\n tap,\n} from 'rxjs/operators'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\n\nimport { ToggleGroupOptionDirective } from './toggle-group-option.directive'\n\nexport const TOGGLE_GROUP_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ToggleGroupDirective),\n multi: true,\n}\n\n@Directive({\n selector: '[seamToggleGroup]',\n exportAs: 'seamToggleGroup',\n providers: [TOGGLE_GROUP_VALUE_ACCESSOR],\n})\nexport class ToggleGroupDirective\n implements OnDestroy, AfterViewInit, ControlValueAccessor\n{\n static ngAcceptInputType_disabled: BooleanInput\n static ngAcceptInputType_multiple: BooleanInput\n static ngAcceptInputType_selectionToggleable: BooleanInput\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('value') val: string | string[] | undefined | null\n\n @Input() @InputBoolean() disabled = false\n @Input() @InputBoolean() multiple = false\n @Input() @InputBoolean() selectionToggleable = true\n\n // TODO: Add min/max selected inputs to make toggling better for multi select\n\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() readonly change = new EventEmitter<\n string | string[] | undefined | null\n >()\n\n @ContentChildren(ToggleGroupOptionDirective)\n optionDirectives?: QueryList<ToggleGroupOptionDirective>\n\n public options?: Observable<ToggleGroupOptionDirective[]>\n\n onChange: any\n onTouched: any\n\n ngOnDestroy() {\n this._ngUnsubscribe.next()\n this._ngUnsubscribe.complete()\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n this._updateDirectiveStates()\n\n if (this.optionDirectives) {\n this.options = this.optionDirectives.changes.pipe(\n startWith(this.optionDirectives),\n map((v) => v.toArray() as ToggleGroupOptionDirective[]),\n takeUntil(this._ngUnsubscribe),\n )\n\n this.options\n .pipe(\n switchMap((opts) => {\n const _tmp = of(undefined)\n if (opts) {\n const _v: Observable<boolean>[] = []\n for (const opt of opts) {\n _v.push(\n opt.selectionChange.pipe(\n filter(\n (v) => opt.selected !== this.isSelected(opt.value),\n ),\n tap((v) => {\n if (this.isSelected(opt.value)) {\n this.unselectValue(opt.value)\n } else {\n this.selectValue(opt.value)\n }\n }),\n ),\n )\n }\n return combineLatest(_v)\n }\n return _tmp\n }),\n takeUntil(this._ngUnsubscribe),\n )\n .subscribe()\n }\n\n this.change\n .pipe(\n switchMap((_) =>\n from(this.optionDirectives?.toArray() || []).pipe(\n tap((opt) => {\n this._updateDirectiveState(opt)\n }),\n ),\n ),\n takeUntil(this._ngUnsubscribe),\n )\n .subscribe()\n })\n\n this.optionDirectives?.changes.subscribe(() =>\n this._updateDirectiveStates(),\n )\n }\n\n get value(): string | string[] | undefined | null {\n return this.val\n }\n\n set value(value: string | string[] | undefined | null) {\n const _value = this.multiple\n ? value !== null && value !== undefined\n ? coerceArray(value)\n : value\n : value\n\n this.val = this.multiple ? [...((_value as string[]) || [])] : _value || ''\n this.change.emit(this.val)\n if (this.onChange) {\n this.onChange(_value)\n }\n if (this.onTouched) {\n this.onTouched()\n }\n }\n\n writeValue(value: any): void {\n this.value = value\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled\n }\n\n isSelected(value: string | undefined | null) {\n if (this.multiple) {\n const idx = ((this.value as string[]) || []).findIndex((v) => v === value)\n return idx !== -1\n } else {\n // TODO: Clean this up when the directive no longer allows array value type when multiple is false\n const v =\n Array.isArray(this.value) && this.value.length === 1\n ? this.value[0]\n : this.value\n return v === value\n }\n }\n\n unselectValue(value: string | undefined | null) {\n if (this.multiple) {\n this.value = ((this.value as string[]) || []).filter((v) => v !== value)\n } else {\n this.value = undefined\n }\n }\n\n selectValue(value: string | undefined | null) {\n if (this.multiple) {\n const _value = [...((this.value as string[]) || [])]\n this.value = value ? [..._value, value] : _value\n } else {\n this.value = value\n }\n }\n\n getOptionDirectiveByValue(value: string) {\n if (!this.optionDirectives || this.optionDirectives.length < 1) {\n return null\n }\n\n return this.optionDirectives.toArray().find((opt) => opt.value === value)\n }\n\n private _updateDirectiveStates(): void {\n if (this.optionDirectives) {\n for (const opt of this.optionDirectives.toArray()) {\n this._updateDirectiveState(opt)\n }\n }\n }\n\n private _updateDirectiveState(opt: ToggleGroupOptionDirective): void {\n const selected = this.isSelected(opt.value)\n if (opt.selected !== selected) {\n if (!opt._canUnselect) {\n opt._canUnselect = true\n }\n opt.selected = selected\n }\n if (!this.selectionToggleable) {\n if (!this.multiple || (this.value && this.value.length <= 1)) {\n if (opt.selected) {\n if (opt._canUnselect) {\n opt._canUnselect = false\n }\n } else {\n if (!opt._canUnselect) {\n opt._canUnselect = true\n }\n }\n } else {\n if (!opt._canUnselect) {\n opt._canUnselect = true\n }\n }\n }\n }\n}\n","import { NgModule } from '@angular/core'\n\nimport { ToggleGroupOptionDirective } from './toggle-group-option.directive'\nimport { ToggleGroupDirective } from './toggle-group.directive'\n\n@NgModule({\n imports: [ToggleGroupDirective, ToggleGroupOptionDirective],\n exports: [ToggleGroupDirective, ToggleGroupOptionDirective],\n})\nexport class TheSeamToggleGroupModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -145,8 +145,8 @@ class TheSeamTooltipComponent {
145
145
  this._afterEnter.complete();
146
146
  }
147
147
  }
148
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamTooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
149
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: TheSeamTooltipComponent, isStandalone: true, selector: "seam-tooltip", inputs: { content: "content", tooltipClass: "tooltipClass", context: "context", placement: "placement", actualPlacement: "actualPlacement", tooltipId: "tooltipId", triggerElement: "triggerElement" }, host: { listeners: { "@fadeInOut.start": "_onAnimationStart($event)", "@fadeInOut.done": "_onAnimationDone($event)" }, properties: { "id": "tooltipId", "@fadeInOut": "", "class": "this.hostClasses" }, classAttribute: "tooltip show" }, viewQueries: [{ propertyName: "innerElement", first: true, predicate: ["inner"], descendants: true, static: true }, { propertyName: "arrowElement", first: true, predicate: ["arrow"], descendants: true, static: true }], ngImport: i0, template: "<div #inner class=\"tooltip-inner\" [ngClass]=\"tooltipClass\">\n <!-- String content -->\n <span *ngIf=\"isStringContent\">{{ content }}</span>\n\n <!-- Template content -->\n <ng-container *ngIf=\"isTemplateContent\">\n <ng-container\n *ngTemplateOutlet=\"templateContent; context: context\"\n ></ng-container>\n </ng-container>\n</div>\n<div #arrow class=\"arrow\"></div>\n", styles: ["::ng-deep .cdk-overlay-pane .tooltip{position:relative}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
148
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
149
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: TheSeamTooltipComponent, isStandalone: true, selector: "seam-tooltip", inputs: { content: "content", tooltipClass: "tooltipClass", context: "context", placement: "placement", actualPlacement: "actualPlacement", tooltipId: "tooltipId", triggerElement: "triggerElement" }, host: { listeners: { "@fadeInOut.start": "_onAnimationStart($event)", "@fadeInOut.done": "_onAnimationDone($event)" }, properties: { "id": "tooltipId", "@fadeInOut": "", "class": "this.hostClasses" }, classAttribute: "tooltip show" }, viewQueries: [{ propertyName: "innerElement", first: true, predicate: ["inner"], descendants: true, static: true }, { propertyName: "arrowElement", first: true, predicate: ["arrow"], descendants: true, static: true }], ngImport: i0, template: "<div #inner class=\"tooltip-inner\" [ngClass]=\"tooltipClass\">\n <!-- String content -->\n <span *ngIf=\"isStringContent\">{{ content }}</span>\n\n <!-- Template content -->\n <ng-container *ngIf=\"isTemplateContent\">\n <ng-container\n *ngTemplateOutlet=\"templateContent; context: context\"\n ></ng-container>\n </ng-container>\n</div>\n<div #arrow class=\"arrow\"></div>\n", styles: ["::ng-deep .cdk-overlay-pane .tooltip{position:relative}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
150
150
  trigger('fadeInOut', [
151
151
  transition(':enter', [
152
152
  style({ opacity: 0 }),
@@ -159,7 +159,7 @@ class TheSeamTooltipComponent {
159
159
  ]),
160
160
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
161
161
  }
162
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamTooltipComponent, decorators: [{
162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTooltipComponent, decorators: [{
163
163
  type: Component,
164
164
  args: [{ selector: 'seam-tooltip', animations: [
165
165
  trigger('fadeInOut', [
@@ -691,10 +691,10 @@ class TheSeamTooltipDirective {
691
691
  // Default fallback
692
692
  return 'top';
693
693
  }
694
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamTooltipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
695
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.6", type: TheSeamTooltipDirective, isStandalone: true, selector: "[seamTooltip]", inputs: { seamTooltip: "seamTooltip", tooltipClass: "tooltipClass", placement: "placement", container: "container", disableTooltip: "disableTooltip", showDelay: "showDelay", hideDelay: "hideDelay", trigger: "trigger" }, host: { properties: { "attr.aria-describedby": "tooltipOpen() ? _tooltipId : null" } }, exportAs: ["seamTooltip"], usesOnChanges: true, ngImport: i0 });
694
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTooltipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
695
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: TheSeamTooltipDirective, isStandalone: true, selector: "[seamTooltip]", inputs: { seamTooltip: "seamTooltip", tooltipClass: "tooltipClass", placement: "placement", container: "container", disableTooltip: "disableTooltip", showDelay: "showDelay", hideDelay: "hideDelay", trigger: "trigger" }, host: { properties: { "attr.aria-describedby": "tooltipOpen() ? _tooltipId : null" } }, exportAs: ["seamTooltip"], usesOnChanges: true, ngImport: i0 });
696
696
  }
697
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamTooltipDirective, decorators: [{
697
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTooltipDirective, decorators: [{
698
698
  type: Directive,
699
699
  args: [{
700
700
  selector: '[seamTooltip]',
@@ -722,15 +722,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
722
722
  }] } });
723
723
 
724
724
  class TheSeamTooltipModule {
725
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
726
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: TheSeamTooltipModule, imports: [CommonModule,
725
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
726
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTooltipModule, imports: [CommonModule,
727
727
  OverlayModule,
728
728
  TheSeamTooltipComponent,
729
729
  TheSeamTooltipDirective], exports: [TheSeamTooltipDirective] });
730
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamTooltipModule, imports: [CommonModule,
730
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTooltipModule, imports: [CommonModule,
731
731
  OverlayModule] });
732
732
  }
733
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamTooltipModule, decorators: [{
733
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTooltipModule, decorators: [{
734
734
  type: NgModule,
735
735
  args: [{
736
736
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-tooltip.mjs","sources":["../../../projects/ui-common/tooltip/tooltip.component.ts","../../../projects/ui-common/tooltip/tooltip.component.html","../../../projects/ui-common/tooltip/tooltip.directive.ts","../../../projects/ui-common/tooltip/tooltip.module.ts","../../../projects/ui-common/tooltip/theseam-ui-common-tooltip.ts"],"sourcesContent":["import {\n AnimationEvent,\n transition,\n trigger,\n style,\n animate,\n} from '@angular/animations'\nimport { NgClass, NgIf, NgTemplateOutlet } from '@angular/common'\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnDestroy,\n TemplateRef,\n ViewChild,\n} from '@angular/core'\nimport { Subject } from 'rxjs'\n\nexport type TheSeamTooltipPlacement =\n | 'top'\n | 'top-left'\n | 'top-right'\n | 'bottom'\n | 'bottom-left'\n | 'bottom-right'\n | 'left'\n | 'left-top'\n | 'left-bottom'\n | 'right'\n | 'right-top'\n | 'right-bottom'\n | 'auto'\n\n@Component({\n selector: 'seam-tooltip',\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.component.scss'],\n animations: [\n trigger('fadeInOut', [\n transition(':enter', [\n style({ opacity: 0 }),\n animate('150ms ease-out', style({ opacity: 0.9 })),\n ]),\n transition(':leave', [\n style({ opacity: 0.9 }),\n animate('150ms ease-in', style({ opacity: 0 })),\n ]),\n ]),\n ],\n host: {\n class: 'tooltip show',\n '[id]': 'tooltipId',\n '[@fadeInOut]': '',\n '(@fadeInOut.start)': '_onAnimationStart($event)',\n '(@fadeInOut.done)': '_onAnimationDone($event)',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgIf, NgClass, NgTemplateOutlet],\n})\nexport class TheSeamTooltipComponent implements OnDestroy {\n @Input() content: string | TemplateRef<any> | null = null\n @Input() tooltipClass?: string\n @Input() context?: any\n @Input() placement: TheSeamTooltipPlacement = 'top'\n @Input() actualPlacement?: TheSeamTooltipPlacement // The actual placement determined by CDK Overlay\n @Input() tooltipId?: string\n @Input() triggerElement?: HTMLElement\n\n /** A subject emitting after the tooltip enters the view. */\n readonly _afterEnter = new Subject<void>()\n\n /** A subject emitting after the tooltip exits the view. */\n readonly _afterExit = new Subject<void>()\n\n @HostBinding('class')\n get hostClasses(): string {\n const baseClass = 'tooltip show'\n const placementClass = this._getPlacementClass()\n this._setArrowPosition()\n return `${baseClass} ${placementClass}`\n }\n\n @ViewChild('inner', { static: true }) innerElement!: ElementRef\n @ViewChild('arrow', { static: true }) arrowElement!: ElementRef\n\n ngOnDestroy() {\n this._afterEnter.complete()\n this._afterExit.complete()\n }\n\n get isStringContent(): boolean {\n return typeof this.content === 'string'\n }\n\n get isTemplateContent(): boolean {\n return this.content instanceof TemplateRef\n }\n\n get templateContent(): TemplateRef<any> | null {\n return this.isTemplateContent ? (this.content as TemplateRef<any>) : null\n }\n\n private _getPlacementClass(): string {\n // Use actualPlacement if available, otherwise fall back to initial placement\n const effectivePlacement = this.actualPlacement || this.placement\n\n switch (effectivePlacement) {\n case 'top':\n case 'top-left':\n case 'top-right':\n return 'bs-tooltip-top'\n case 'bottom':\n case 'bottom-left':\n case 'bottom-right':\n return 'bs-tooltip-bottom'\n case 'left':\n case 'left-top':\n case 'left-bottom':\n return 'bs-tooltip-left'\n case 'right':\n case 'right-top':\n case 'right-bottom':\n return 'bs-tooltip-right'\n case 'auto':\n return 'bs-tooltip-auto'\n default:\n return 'bs-tooltip-top'\n }\n }\n\n private _setArrowPosition() {\n if (!this.innerElement || !this.arrowElement || !this.triggerElement) {\n return\n }\n\n // Use actualPlacement if available, otherwise fall back to initial placement\n const effectivePlacement = this.actualPlacement || this.placement\n const paddingOffset = 8 // Default padding offset for arrow positioning\n const minDimension = 50 // Minimum tooltip width/height to use trigger-aligned positioning\n\n const triggerRect = this.triggerElement.getBoundingClientRect()\n const tooltipRect: DOMRect =\n this.innerElement.nativeElement.getBoundingClientRect()\n const arrowRect: DOMRect =\n this.arrowElement.nativeElement.getBoundingClientRect()\n\n // Default arrow offset (8px padding + half arrow size)\n const defaultArrowOffset =\n paddingOffset +\n (effectivePlacement.startsWith('top') ||\n effectivePlacement.startsWith('bottom')\n ? arrowRect.width / 2\n : arrowRect.height / 2)\n\n if (\n effectivePlacement.startsWith('top') ||\n effectivePlacement.startsWith('bottom')\n ) {\n // Check if tooltip is too narrow for trigger-aligned positioning\n if (tooltipRect.width < minDimension) {\n const arrowLeft = (tooltipRect.width - arrowRect.width) / 2\n this.arrowElement.nativeElement.style.left = `${arrowLeft}px`\n return\n }\n\n // Horizontal arrow positioning for top-* and bottom-* placements\n const triggerCenter = triggerRect.left + triggerRect.width / 2\n const adjustedArrowLeft =\n triggerCenter - tooltipRect.left - arrowRect.width / 2\n const arrowCenter =\n tooltipRect.left + adjustedArrowLeft + arrowRect.width / 2\n\n // If arrow's center is outside trigger's horizontal bounds, use default\n if (arrowCenter < triggerRect.left || arrowCenter > triggerRect.right) {\n this.arrowElement.nativeElement.style.left = `${defaultArrowOffset}px`\n return\n }\n\n // Ensure arrow's left is within rounded corner bounds\n const maxArrowLeft =\n tooltipRect.width - arrowRect.width - defaultArrowOffset\n const arrowLeft = Math.min(\n maxArrowLeft,\n Math.max(defaultArrowOffset, adjustedArrowLeft),\n )\n\n this.arrowElement.nativeElement.style.left = `${arrowLeft}px`\n } else if (\n effectivePlacement.startsWith('left') ||\n effectivePlacement.startsWith('right')\n ) {\n // Check if tooltip is too short for trigger-aligned positioning\n if (tooltipRect.height < minDimension) {\n const arrowTop = (tooltipRect.height - arrowRect.height) / 2\n this.arrowElement.nativeElement.style.top = `${arrowTop}px`\n return\n }\n\n // Vertical arrow positioning for left-* and right-* placements\n const triggerCenter = triggerRect.top + triggerRect.height / 2\n const adjustedArrowTop =\n triggerCenter - tooltipRect.top - arrowRect.height / 2\n const arrowCenter =\n tooltipRect.top + adjustedArrowTop + arrowRect.height / 2\n\n // If arrow's center is outside trigger's vertical bounds, use default\n if (arrowCenter < triggerRect.top || arrowCenter > triggerRect.bottom) {\n this.arrowElement.nativeElement.style.top = `${defaultArrowOffset}px`\n return\n }\n\n // Ensure arrow's top is within rounded corner bounds\n const maxArrowTop =\n tooltipRect.height - arrowRect.height - defaultArrowOffset\n const arrowTop = Math.min(\n maxArrowTop,\n Math.max(defaultArrowOffset, adjustedArrowTop),\n )\n\n this.arrowElement.nativeElement.style.top = `${arrowTop}px`\n }\n }\n\n /** Emit lifecycle events based on animation `start` callback. */\n _onAnimationStart(event: AnimationEvent) {\n // Animation start handling if needed\n }\n\n /** Emit lifecycle events based on animation `done` callback. */\n _onAnimationDone(event: AnimationEvent) {\n if (event.toState === 'void') {\n this._afterExit.next()\n this._afterExit.complete()\n } else {\n this._afterEnter.next()\n this._afterEnter.complete()\n }\n }\n}\n","<div #inner class=\"tooltip-inner\" [ngClass]=\"tooltipClass\">\n <!-- String content -->\n <span *ngIf=\"isStringContent\">{{ content }}</span>\n\n <!-- Template content -->\n <ng-container *ngIf=\"isTemplateContent\">\n <ng-container\n *ngTemplateOutlet=\"templateContent; context: context\"\n ></ng-container>\n </ng-container>\n</div>\n<div #arrow class=\"arrow\"></div>\n","import {\n coerceBooleanProperty,\n coerceNumberProperty,\n} from '@angular/cdk/coercion'\nimport { ESCAPE } from '@angular/cdk/keycodes'\nimport {\n ConnectionPositionPair,\n FlexibleConnectedPositionStrategy,\n Overlay,\n OverlayRef,\n} from '@angular/cdk/overlay'\nimport { ComponentPortal } from '@angular/cdk/portal'\nimport {\n ComponentRef,\n Directive,\n ElementRef,\n inject,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core'\nimport { BehaviorSubject, fromEvent, Subject } from 'rxjs'\nimport { takeUntil, filter } from 'rxjs/operators'\n\nimport {\n TheSeamTooltipComponent,\n TheSeamTooltipPlacement,\n} from './tooltip.component'\n\nexport type TheSeamTooltipTrigger = 'hover' | 'focus' | 'both'\nexport type TheSeamTooltipPlacementInput =\n | TheSeamTooltipPlacement\n | TheSeamTooltipPlacement[]\n | string\n\n/**\n * A custom tooltip directive that replaces \\`ngbTooltip\\` with zero dependencies.\n * Supports both string and template content with full Bootstrap 4.6 compatibility.\n *\n * ## Features\n * - **String & Template Content**: Support for both simple text and complex HTML content\n * - **Multiple Triggers**: Hover, focus, or both\n * - **Flexible Positioning**: 12 placement options with auto-fallback\n * - **Configurable Timing**: Customizable show/hide delays\n * - **Bootstrap Compatible**: Uses Bootstrap 4.6 classes for seamless integration\n * - **Accessibility**: Full ARIA support and keyboard navigation\n * - **Performance**: Lazy creation and proper cleanup\n *\n * ## Migration from ngbTooltip\n * ```typescript\n * // Before\n * <button ngbTooltip=\"Help text\" placement=\"top\" tooltipClass=\"custom\">\n *\n * // After\n * <button seamTooltip=\"Help text\" placement=\"top\" tooltipClass=\"custom\">\n * ```\n */\n@Directive({\n selector: '[seamTooltip]',\n host: {\n '[attr.aria-describedby]': 'tooltipOpen() ? _tooltipId : null',\n },\n exportAs: 'seamTooltip',\n})\nexport class TheSeamTooltipDirective implements OnInit, OnChanges, OnDestroy {\n private readonly _elementRef = inject(ElementRef<HTMLElement>)\n private readonly _viewContainerRef = inject(ViewContainerRef)\n private readonly _overlay = inject(Overlay)\n\n private readonly _ngUnsubscribe = new Subject<void>()\n private readonly _tooltipId = `seam-tooltip-${Math.random().toString(36).slice(2, 11)}`\n\n @Input() seamTooltip: string | TemplateRef<any> | null = null\n\n @Input() tooltipClass?: string\n\n @Input() placement?: TheSeamTooltipPlacementInput | null = 'top'\n\n @Input() container?: string | HTMLElement\n\n @Input()\n get disableTooltip() {\n return this._disableTooltip.value\n }\n set disableTooltip(val: boolean) {\n this._disableTooltip.next(coerceBooleanProperty(val))\n }\n private readonly _disableTooltip = new BehaviorSubject<boolean>(false)\n\n @Input()\n get showDelay() {\n return this._showDelay.value\n }\n set showDelay(val: number) {\n this._showDelay.next(coerceNumberProperty(val, 500))\n }\n private readonly _showDelay = new BehaviorSubject<number>(500)\n\n @Input()\n get hideDelay() {\n return this._hideDelay.value\n }\n set hideDelay(val: number) {\n this._hideDelay.next(coerceNumberProperty(val, 0))\n }\n private readonly _hideDelay = new BehaviorSubject<number>(0)\n\n @Input() trigger: TheSeamTooltipTrigger = 'both'\n\n private _active = false\n private _overlayRef: OverlayRef | null = null\n private _compRef: ComponentRef<TheSeamTooltipComponent> | null = null\n private _showTimeoutId: any = null\n private _hideTimeoutId: any = null\n private _eventListenersSubject = new Subject<void>()\n private _documentKeydownSubject = new Subject<void>()\n\n ngOnInit() {\n this._setupEventListeners()\n }\n\n ngOnChanges(changes: SimpleChanges) {\n // Re-setup event listeners if trigger changes\n if (changes['trigger'] && !changes['trigger'].firstChange) {\n // Clear any pending timeouts\n this._clearTimeouts()\n // Close any existing tooltip first\n this._closeTooltip()\n // Re-setup event listeners with new trigger\n this._setupEventListeners()\n }\n }\n\n ngOnDestroy() {\n this._clearTimeouts()\n this._closeTooltip()\n this._eventListenersSubject.next()\n this._eventListenersSubject.complete()\n this._documentKeydownSubject.next()\n this._documentKeydownSubject.complete()\n this._ngUnsubscribe.next()\n this._ngUnsubscribe.complete()\n }\n\n private _setupEventListeners() {\n // Clean up existing event listeners\n this._eventListenersSubject.next()\n this._eventListenersSubject.complete()\n this._eventListenersSubject = new Subject<void>()\n\n const element = this._elementRef.nativeElement\n\n // Mouse events for hover trigger\n if (this.trigger === 'hover' || this.trigger === 'both') {\n fromEvent(element, 'mouseenter')\n .pipe(\n filter(() => !this._disableTooltip.value && !!this.seamTooltip),\n takeUntil(this._eventListenersSubject),\n )\n .subscribe(() => this._scheduleShow())\n\n fromEvent(element, 'mouseleave')\n .pipe(takeUntil(this._eventListenersSubject))\n .subscribe(() => this._scheduleHide())\n }\n\n // Focus events for focus trigger\n if (this.trigger === 'focus' || this.trigger === 'both') {\n fromEvent(element, 'focus')\n .pipe(\n filter(() => !this._disableTooltip.value && !!this.seamTooltip),\n takeUntil(this._eventListenersSubject),\n )\n .subscribe(() => this._scheduleShow())\n\n fromEvent(element, 'blur')\n .pipe(takeUntil(this._eventListenersSubject))\n .subscribe(() => this._scheduleHide())\n }\n }\n\n private _scheduleShow() {\n this._clearTimeouts()\n\n if (this._active) {\n return\n }\n\n this._showTimeoutId = setTimeout(() => {\n this._showTooltip()\n }, this.showDelay)\n }\n\n private _scheduleHide() {\n this._clearTimeouts()\n\n if (!this._active) {\n return\n }\n\n this._hideTimeoutId = setTimeout(() => {\n this._closeTooltip()\n }, this.hideDelay)\n }\n\n private _clearTimeouts() {\n if (this._showTimeoutId) {\n clearTimeout(this._showTimeoutId)\n this._showTimeoutId = null\n }\n if (this._hideTimeoutId) {\n clearTimeout(this._hideTimeoutId)\n this._hideTimeoutId = null\n }\n }\n\n private _showTooltip(): void {\n if (this._active || !this.seamTooltip || this._disableTooltip.value) {\n return\n }\n\n this._active = true\n\n const positionStrategy = this._getOverlayPosition()\n this._overlayRef = this._overlay.create({\n positionStrategy,\n scrollStrategy: this._overlay.scrollStrategies.reposition(),\n })\n\n this._compRef = this._overlayRef.attach(\n new ComponentPortal(TheSeamTooltipComponent, this._viewContainerRef),\n )\n\n // Set component properties\n const parsedPlacements = this._parsePlacementInput(this.placement)\n this._compRef.instance.content = this.seamTooltip\n this._compRef.instance.tooltipClass = this.tooltipClass\n this._compRef.instance.placement = parsedPlacements[0] || 'top' // Use first placement for initial display\n this._compRef.instance.tooltipId = this._tooltipId\n this._compRef.instance.triggerElement = this._elementRef.nativeElement\n this._compRef.changeDetectorRef.markForCheck()\n\n // Listen for position changes to update placement class\n positionStrategy.positionChanges\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe((positionChange) => {\n if (this._compRef && positionChange.connectionPair) {\n const actualPlacement = this._getPlacementFromConnectionPair(\n positionChange.connectionPair,\n )\n this._compRef.instance.actualPlacement = actualPlacement\n this._compRef.changeDetectorRef.markForCheck()\n }\n })\n\n // Listen for tooltip exit animation\n this._compRef.instance._afterExit\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(() => {\n // Only detach if still attached (defensive check since _closeTooltip may have already detached)\n if (this._overlayRef?.hasAttached()) {\n this._overlayRef.detach()\n }\n // Ensure cleanup happens even if _closeTooltip didn't run\n if (this._active || this._overlayRef || this._compRef) {\n this._resetTooltip()\n }\n })\n\n // Set up document-level Escape key listener\n this._setupDocumentKeydownListener()\n }\n\n private _setupDocumentKeydownListener(): void {\n // Clean up any existing document listener\n this._documentKeydownSubject.next()\n this._documentKeydownSubject.complete()\n this._documentKeydownSubject = new Subject<void>()\n\n // Set up document-level Escape key listener\n fromEvent<KeyboardEvent>(document, 'keydown')\n .pipe(\n filter((event) => {\n // Check both keyCode and key for better compatibility\n return (\n (event.keyCode === ESCAPE || event.key === 'Escape') && this._active\n )\n }),\n takeUntil(this._documentKeydownSubject),\n takeUntil(this._ngUnsubscribe),\n )\n .subscribe(() => this._closeTooltip())\n }\n\n private _closeTooltip(): void {\n if (!this._active || !this._compRef) {\n return\n }\n\n // Mark as inactive immediately to prevent new tooltips from being blocked\n this._active = false\n\n // Clean up document listener\n this._documentKeydownSubject.next()\n\n // Immediately clean up for tests (when using NoopAnimationsModule)\n // In real usage, this will be handled by the animation callback\n this._resetTooltip()\n }\n\n private _resetTooltip(): void {\n this._active = false\n\n // Dispose of overlay if it exists and hasn't been disposed already\n if (this._overlayRef) {\n if (this._overlayRef.hasAttached()) {\n this._overlayRef.detach()\n }\n this._overlayRef.dispose()\n this._overlayRef = null\n }\n\n this._compRef = null\n }\n\n public tooltipOpen(): boolean {\n return this._active && this._compRef !== null\n }\n\n private _parsePlacementInput(\n placement?: TheSeamTooltipPlacementInput | null,\n ): TheSeamTooltipPlacement[] {\n if (placement === undefined || placement === null) {\n return ['top'] // Default placement\n }\n\n if (typeof placement === 'string') {\n if (placement === 'auto') {\n return ['auto']\n }\n // Parse space-delimited string\n const placements = placement.split(/\\s+/).filter((p) => p.trim())\n return placements.filter((p) =>\n this._isValidPlacement(p),\n ) as TheSeamTooltipPlacement[]\n }\n\n if (Array.isArray(placement)) {\n return placement.filter((p) => this._isValidPlacement(p))\n }\n\n return [placement]\n }\n\n private _isValidPlacement(\n placement: string,\n ): placement is TheSeamTooltipPlacement {\n const validPlacements: TheSeamTooltipPlacement[] = [\n 'top',\n 'top-left',\n 'top-right',\n 'bottom',\n 'bottom-left',\n 'bottom-right',\n 'left',\n 'left-top',\n 'left-bottom',\n 'right',\n 'right-top',\n 'right-bottom',\n 'auto',\n ]\n return validPlacements.includes(placement as TheSeamTooltipPlacement)\n }\n\n private _getOverlayPosition(): FlexibleConnectedPositionStrategy {\n const positions = this._getPositions()\n\n return this._overlay\n .position()\n .flexibleConnectedTo(this._elementRef)\n .withPositions(positions)\n .withFlexibleDimensions(false)\n .withPush(true)\n }\n\n private _getPositions(): ConnectionPositionPair[] {\n const parsedPlacements = this._parsePlacementInput(this.placement)\n\n // If 'auto' is specified or no valid placements, return all positions\n if (parsedPlacements.includes('auto') || parsedPlacements.length === 0) {\n return [\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n },\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n },\n {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n },\n {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n },\n ]\n }\n\n // Return positions for specified placements only\n const positions: ConnectionPositionPair[] = []\n\n for (const placement of parsedPlacements) {\n const placementPositions = this._getPositionForPlacement(placement)\n positions.push(...placementPositions)\n }\n\n return positions\n }\n\n private _getPositionForPlacement(\n placement: TheSeamTooltipPlacement,\n ): ConnectionPositionPair[] {\n switch (placement) {\n case 'top':\n return [\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n },\n ]\n case 'top-left':\n return [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n ]\n case 'top-right':\n return [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n ]\n case 'bottom':\n return [\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n },\n ]\n case 'bottom-left':\n return [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n ]\n case 'bottom-right':\n return [\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n ]\n case 'left':\n return [\n {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n },\n ]\n case 'left-top':\n return [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n },\n ]\n case 'left-bottom':\n return [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n ]\n case 'right':\n return [\n {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n },\n ]\n case 'right-top':\n return [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n },\n ]\n case 'right-bottom':\n return [\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n ]\n case 'auto':\n default:\n return [\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n },\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n },\n {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n },\n {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n },\n ]\n }\n }\n\n private _getPlacementFromConnectionPair(\n connectionPair: ConnectionPositionPair,\n ): TheSeamTooltipPlacement {\n const { originX, originY, overlayX, overlayY } = connectionPair\n\n // Top placements (overlay below origin)\n if (originY === 'top' && overlayY === 'bottom') {\n if (originX === 'start' && overlayX === 'start') return 'top-left'\n if (originX === 'end' && overlayX === 'end') return 'top-right'\n if (originX === 'center' && overlayX === 'center') return 'top'\n }\n\n // Bottom placements (overlay above origin)\n if (originY === 'bottom' && overlayY === 'top') {\n if (originX === 'start' && overlayX === 'start') return 'bottom-left'\n if (originX === 'end' && overlayX === 'end') return 'bottom-right'\n if (originX === 'center' && overlayX === 'center') return 'bottom'\n }\n\n // Left placements (overlay to the right of origin)\n if (originX === 'start' && overlayX === 'end') {\n if (originY === 'top' && overlayY === 'top') return 'left-top'\n if (originY === 'bottom' && overlayY === 'bottom') return 'left-bottom'\n if (originY === 'center' && overlayY === 'center') return 'left'\n }\n\n // Right placements (overlay to the left of origin)\n if (originX === 'end' && overlayX === 'start') {\n if (originY === 'top' && overlayY === 'top') return 'right-top'\n if (originY === 'bottom' && overlayY === 'bottom') return 'right-bottom'\n if (originY === 'center' && overlayY === 'center') return 'right'\n }\n\n // Default fallback\n return 'top'\n }\n}\n","import { NgModule } from '@angular/core'\nimport { CommonModule } from '@angular/common'\nimport { OverlayModule } from '@angular/cdk/overlay'\n\nimport { TheSeamTooltipComponent } from './tooltip.component'\nimport { TheSeamTooltipDirective } from './tooltip.directive'\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n TheSeamTooltipComponent,\n TheSeamTooltipDirective,\n ],\n exports: [TheSeamTooltipDirective],\n})\nexport class TheSeamTooltipModule {}\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":"theseam-ui-common-tooltip.mjs","sources":["../../../projects/ui-common/tooltip/tooltip.component.ts","../../../projects/ui-common/tooltip/tooltip.component.html","../../../projects/ui-common/tooltip/tooltip.directive.ts","../../../projects/ui-common/tooltip/tooltip.module.ts","../../../projects/ui-common/tooltip/theseam-ui-common-tooltip.ts"],"sourcesContent":["import {\n AnimationEvent,\n transition,\n trigger,\n style,\n animate,\n} from '@angular/animations'\nimport { NgClass, NgIf, NgTemplateOutlet } from '@angular/common'\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnDestroy,\n TemplateRef,\n ViewChild,\n} from '@angular/core'\nimport { Subject } from 'rxjs'\n\nexport type TheSeamTooltipPlacement =\n | 'top'\n | 'top-left'\n | 'top-right'\n | 'bottom'\n | 'bottom-left'\n | 'bottom-right'\n | 'left'\n | 'left-top'\n | 'left-bottom'\n | 'right'\n | 'right-top'\n | 'right-bottom'\n | 'auto'\n\n@Component({\n selector: 'seam-tooltip',\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.component.scss'],\n animations: [\n trigger('fadeInOut', [\n transition(':enter', [\n style({ opacity: 0 }),\n animate('150ms ease-out', style({ opacity: 0.9 })),\n ]),\n transition(':leave', [\n style({ opacity: 0.9 }),\n animate('150ms ease-in', style({ opacity: 0 })),\n ]),\n ]),\n ],\n host: {\n class: 'tooltip show',\n '[id]': 'tooltipId',\n '[@fadeInOut]': '',\n '(@fadeInOut.start)': '_onAnimationStart($event)',\n '(@fadeInOut.done)': '_onAnimationDone($event)',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgIf, NgClass, NgTemplateOutlet],\n})\nexport class TheSeamTooltipComponent implements OnDestroy {\n @Input() content: string | TemplateRef<any> | null = null\n @Input() tooltipClass?: string\n @Input() context?: any\n @Input() placement: TheSeamTooltipPlacement = 'top'\n @Input() actualPlacement?: TheSeamTooltipPlacement // The actual placement determined by CDK Overlay\n @Input() tooltipId?: string\n @Input() triggerElement?: HTMLElement\n\n /** A subject emitting after the tooltip enters the view. */\n readonly _afterEnter = new Subject<void>()\n\n /** A subject emitting after the tooltip exits the view. */\n readonly _afterExit = new Subject<void>()\n\n @HostBinding('class')\n get hostClasses(): string {\n const baseClass = 'tooltip show'\n const placementClass = this._getPlacementClass()\n this._setArrowPosition()\n return `${baseClass} ${placementClass}`\n }\n\n @ViewChild('inner', { static: true }) innerElement!: ElementRef\n @ViewChild('arrow', { static: true }) arrowElement!: ElementRef\n\n ngOnDestroy() {\n this._afterEnter.complete()\n this._afterExit.complete()\n }\n\n get isStringContent(): boolean {\n return typeof this.content === 'string'\n }\n\n get isTemplateContent(): boolean {\n return this.content instanceof TemplateRef\n }\n\n get templateContent(): TemplateRef<any> | null {\n return this.isTemplateContent ? (this.content as TemplateRef<any>) : null\n }\n\n private _getPlacementClass(): string {\n // Use actualPlacement if available, otherwise fall back to initial placement\n const effectivePlacement = this.actualPlacement || this.placement\n\n switch (effectivePlacement) {\n case 'top':\n case 'top-left':\n case 'top-right':\n return 'bs-tooltip-top'\n case 'bottom':\n case 'bottom-left':\n case 'bottom-right':\n return 'bs-tooltip-bottom'\n case 'left':\n case 'left-top':\n case 'left-bottom':\n return 'bs-tooltip-left'\n case 'right':\n case 'right-top':\n case 'right-bottom':\n return 'bs-tooltip-right'\n case 'auto':\n return 'bs-tooltip-auto'\n default:\n return 'bs-tooltip-top'\n }\n }\n\n private _setArrowPosition() {\n if (!this.innerElement || !this.arrowElement || !this.triggerElement) {\n return\n }\n\n // Use actualPlacement if available, otherwise fall back to initial placement\n const effectivePlacement = this.actualPlacement || this.placement\n const paddingOffset = 8 // Default padding offset for arrow positioning\n const minDimension = 50 // Minimum tooltip width/height to use trigger-aligned positioning\n\n const triggerRect = this.triggerElement.getBoundingClientRect()\n const tooltipRect: DOMRect =\n this.innerElement.nativeElement.getBoundingClientRect()\n const arrowRect: DOMRect =\n this.arrowElement.nativeElement.getBoundingClientRect()\n\n // Default arrow offset (8px padding + half arrow size)\n const defaultArrowOffset =\n paddingOffset +\n (effectivePlacement.startsWith('top') ||\n effectivePlacement.startsWith('bottom')\n ? arrowRect.width / 2\n : arrowRect.height / 2)\n\n if (\n effectivePlacement.startsWith('top') ||\n effectivePlacement.startsWith('bottom')\n ) {\n // Check if tooltip is too narrow for trigger-aligned positioning\n if (tooltipRect.width < minDimension) {\n const arrowLeft = (tooltipRect.width - arrowRect.width) / 2\n this.arrowElement.nativeElement.style.left = `${arrowLeft}px`\n return\n }\n\n // Horizontal arrow positioning for top-* and bottom-* placements\n const triggerCenter = triggerRect.left + triggerRect.width / 2\n const adjustedArrowLeft =\n triggerCenter - tooltipRect.left - arrowRect.width / 2\n const arrowCenter =\n tooltipRect.left + adjustedArrowLeft + arrowRect.width / 2\n\n // If arrow's center is outside trigger's horizontal bounds, use default\n if (arrowCenter < triggerRect.left || arrowCenter > triggerRect.right) {\n this.arrowElement.nativeElement.style.left = `${defaultArrowOffset}px`\n return\n }\n\n // Ensure arrow's left is within rounded corner bounds\n const maxArrowLeft =\n tooltipRect.width - arrowRect.width - defaultArrowOffset\n const arrowLeft = Math.min(\n maxArrowLeft,\n Math.max(defaultArrowOffset, adjustedArrowLeft),\n )\n\n this.arrowElement.nativeElement.style.left = `${arrowLeft}px`\n } else if (\n effectivePlacement.startsWith('left') ||\n effectivePlacement.startsWith('right')\n ) {\n // Check if tooltip is too short for trigger-aligned positioning\n if (tooltipRect.height < minDimension) {\n const arrowTop = (tooltipRect.height - arrowRect.height) / 2\n this.arrowElement.nativeElement.style.top = `${arrowTop}px`\n return\n }\n\n // Vertical arrow positioning for left-* and right-* placements\n const triggerCenter = triggerRect.top + triggerRect.height / 2\n const adjustedArrowTop =\n triggerCenter - tooltipRect.top - arrowRect.height / 2\n const arrowCenter =\n tooltipRect.top + adjustedArrowTop + arrowRect.height / 2\n\n // If arrow's center is outside trigger's vertical bounds, use default\n if (arrowCenter < triggerRect.top || arrowCenter > triggerRect.bottom) {\n this.arrowElement.nativeElement.style.top = `${defaultArrowOffset}px`\n return\n }\n\n // Ensure arrow's top is within rounded corner bounds\n const maxArrowTop =\n tooltipRect.height - arrowRect.height - defaultArrowOffset\n const arrowTop = Math.min(\n maxArrowTop,\n Math.max(defaultArrowOffset, adjustedArrowTop),\n )\n\n this.arrowElement.nativeElement.style.top = `${arrowTop}px`\n }\n }\n\n /** Emit lifecycle events based on animation `start` callback. */\n _onAnimationStart(event: AnimationEvent) {\n // Animation start handling if needed\n }\n\n /** Emit lifecycle events based on animation `done` callback. */\n _onAnimationDone(event: AnimationEvent) {\n if (event.toState === 'void') {\n this._afterExit.next()\n this._afterExit.complete()\n } else {\n this._afterEnter.next()\n this._afterEnter.complete()\n }\n }\n}\n","<div #inner class=\"tooltip-inner\" [ngClass]=\"tooltipClass\">\n <!-- String content -->\n <span *ngIf=\"isStringContent\">{{ content }}</span>\n\n <!-- Template content -->\n <ng-container *ngIf=\"isTemplateContent\">\n <ng-container\n *ngTemplateOutlet=\"templateContent; context: context\"\n ></ng-container>\n </ng-container>\n</div>\n<div #arrow class=\"arrow\"></div>\n","import {\n coerceBooleanProperty,\n coerceNumberProperty,\n} from '@angular/cdk/coercion'\nimport { ESCAPE } from '@angular/cdk/keycodes'\nimport {\n ConnectionPositionPair,\n FlexibleConnectedPositionStrategy,\n Overlay,\n OverlayRef,\n} from '@angular/cdk/overlay'\nimport { ComponentPortal } from '@angular/cdk/portal'\nimport {\n ComponentRef,\n Directive,\n ElementRef,\n inject,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core'\nimport { BehaviorSubject, fromEvent, Subject } from 'rxjs'\nimport { takeUntil, filter } from 'rxjs/operators'\n\nimport {\n TheSeamTooltipComponent,\n TheSeamTooltipPlacement,\n} from './tooltip.component'\n\nexport type TheSeamTooltipTrigger = 'hover' | 'focus' | 'both'\nexport type TheSeamTooltipPlacementInput =\n | TheSeamTooltipPlacement\n | TheSeamTooltipPlacement[]\n | string\n\n/**\n * A custom tooltip directive that replaces \\`ngbTooltip\\` with zero dependencies.\n * Supports both string and template content with full Bootstrap 4.6 compatibility.\n *\n * ## Features\n * - **String & Template Content**: Support for both simple text and complex HTML content\n * - **Multiple Triggers**: Hover, focus, or both\n * - **Flexible Positioning**: 12 placement options with auto-fallback\n * - **Configurable Timing**: Customizable show/hide delays\n * - **Bootstrap Compatible**: Uses Bootstrap 4.6 classes for seamless integration\n * - **Accessibility**: Full ARIA support and keyboard navigation\n * - **Performance**: Lazy creation and proper cleanup\n *\n * ## Migration from ngbTooltip\n * ```typescript\n * // Before\n * <button ngbTooltip=\"Help text\" placement=\"top\" tooltipClass=\"custom\">\n *\n * // After\n * <button seamTooltip=\"Help text\" placement=\"top\" tooltipClass=\"custom\">\n * ```\n */\n@Directive({\n selector: '[seamTooltip]',\n host: {\n '[attr.aria-describedby]': 'tooltipOpen() ? _tooltipId : null',\n },\n exportAs: 'seamTooltip',\n})\nexport class TheSeamTooltipDirective implements OnInit, OnChanges, OnDestroy {\n private readonly _elementRef = inject(ElementRef<HTMLElement>)\n private readonly _viewContainerRef = inject(ViewContainerRef)\n private readonly _overlay = inject(Overlay)\n\n private readonly _ngUnsubscribe = new Subject<void>()\n private readonly _tooltipId = `seam-tooltip-${Math.random().toString(36).slice(2, 11)}`\n\n @Input() seamTooltip: string | TemplateRef<any> | null = null\n\n @Input() tooltipClass?: string\n\n @Input() placement?: TheSeamTooltipPlacementInput | null = 'top'\n\n @Input() container?: string | HTMLElement\n\n @Input()\n get disableTooltip() {\n return this._disableTooltip.value\n }\n set disableTooltip(val: boolean) {\n this._disableTooltip.next(coerceBooleanProperty(val))\n }\n private readonly _disableTooltip = new BehaviorSubject<boolean>(false)\n\n @Input()\n get showDelay() {\n return this._showDelay.value\n }\n set showDelay(val: number) {\n this._showDelay.next(coerceNumberProperty(val, 500))\n }\n private readonly _showDelay = new BehaviorSubject<number>(500)\n\n @Input()\n get hideDelay() {\n return this._hideDelay.value\n }\n set hideDelay(val: number) {\n this._hideDelay.next(coerceNumberProperty(val, 0))\n }\n private readonly _hideDelay = new BehaviorSubject<number>(0)\n\n @Input() trigger: TheSeamTooltipTrigger = 'both'\n\n private _active = false\n private _overlayRef: OverlayRef | null = null\n private _compRef: ComponentRef<TheSeamTooltipComponent> | null = null\n private _showTimeoutId: any = null\n private _hideTimeoutId: any = null\n private _eventListenersSubject = new Subject<void>()\n private _documentKeydownSubject = new Subject<void>()\n\n ngOnInit() {\n this._setupEventListeners()\n }\n\n ngOnChanges(changes: SimpleChanges) {\n // Re-setup event listeners if trigger changes\n if (changes['trigger'] && !changes['trigger'].firstChange) {\n // Clear any pending timeouts\n this._clearTimeouts()\n // Close any existing tooltip first\n this._closeTooltip()\n // Re-setup event listeners with new trigger\n this._setupEventListeners()\n }\n }\n\n ngOnDestroy() {\n this._clearTimeouts()\n this._closeTooltip()\n this._eventListenersSubject.next()\n this._eventListenersSubject.complete()\n this._documentKeydownSubject.next()\n this._documentKeydownSubject.complete()\n this._ngUnsubscribe.next()\n this._ngUnsubscribe.complete()\n }\n\n private _setupEventListeners() {\n // Clean up existing event listeners\n this._eventListenersSubject.next()\n this._eventListenersSubject.complete()\n this._eventListenersSubject = new Subject<void>()\n\n const element = this._elementRef.nativeElement\n\n // Mouse events for hover trigger\n if (this.trigger === 'hover' || this.trigger === 'both') {\n fromEvent(element, 'mouseenter')\n .pipe(\n filter(() => !this._disableTooltip.value && !!this.seamTooltip),\n takeUntil(this._eventListenersSubject),\n )\n .subscribe(() => this._scheduleShow())\n\n fromEvent(element, 'mouseleave')\n .pipe(takeUntil(this._eventListenersSubject))\n .subscribe(() => this._scheduleHide())\n }\n\n // Focus events for focus trigger\n if (this.trigger === 'focus' || this.trigger === 'both') {\n fromEvent(element, 'focus')\n .pipe(\n filter(() => !this._disableTooltip.value && !!this.seamTooltip),\n takeUntil(this._eventListenersSubject),\n )\n .subscribe(() => this._scheduleShow())\n\n fromEvent(element, 'blur')\n .pipe(takeUntil(this._eventListenersSubject))\n .subscribe(() => this._scheduleHide())\n }\n }\n\n private _scheduleShow() {\n this._clearTimeouts()\n\n if (this._active) {\n return\n }\n\n this._showTimeoutId = setTimeout(() => {\n this._showTooltip()\n }, this.showDelay)\n }\n\n private _scheduleHide() {\n this._clearTimeouts()\n\n if (!this._active) {\n return\n }\n\n this._hideTimeoutId = setTimeout(() => {\n this._closeTooltip()\n }, this.hideDelay)\n }\n\n private _clearTimeouts() {\n if (this._showTimeoutId) {\n clearTimeout(this._showTimeoutId)\n this._showTimeoutId = null\n }\n if (this._hideTimeoutId) {\n clearTimeout(this._hideTimeoutId)\n this._hideTimeoutId = null\n }\n }\n\n private _showTooltip(): void {\n if (this._active || !this.seamTooltip || this._disableTooltip.value) {\n return\n }\n\n this._active = true\n\n const positionStrategy = this._getOverlayPosition()\n this._overlayRef = this._overlay.create({\n positionStrategy,\n scrollStrategy: this._overlay.scrollStrategies.reposition(),\n })\n\n this._compRef = this._overlayRef.attach(\n new ComponentPortal(TheSeamTooltipComponent, this._viewContainerRef),\n )\n\n // Set component properties\n const parsedPlacements = this._parsePlacementInput(this.placement)\n this._compRef.instance.content = this.seamTooltip\n this._compRef.instance.tooltipClass = this.tooltipClass\n this._compRef.instance.placement = parsedPlacements[0] || 'top' // Use first placement for initial display\n this._compRef.instance.tooltipId = this._tooltipId\n this._compRef.instance.triggerElement = this._elementRef.nativeElement\n this._compRef.changeDetectorRef.markForCheck()\n\n // Listen for position changes to update placement class\n positionStrategy.positionChanges\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe((positionChange) => {\n if (this._compRef && positionChange.connectionPair) {\n const actualPlacement = this._getPlacementFromConnectionPair(\n positionChange.connectionPair,\n )\n this._compRef.instance.actualPlacement = actualPlacement\n this._compRef.changeDetectorRef.markForCheck()\n }\n })\n\n // Listen for tooltip exit animation\n this._compRef.instance._afterExit\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(() => {\n // Only detach if still attached (defensive check since _closeTooltip may have already detached)\n if (this._overlayRef?.hasAttached()) {\n this._overlayRef.detach()\n }\n // Ensure cleanup happens even if _closeTooltip didn't run\n if (this._active || this._overlayRef || this._compRef) {\n this._resetTooltip()\n }\n })\n\n // Set up document-level Escape key listener\n this._setupDocumentKeydownListener()\n }\n\n private _setupDocumentKeydownListener(): void {\n // Clean up any existing document listener\n this._documentKeydownSubject.next()\n this._documentKeydownSubject.complete()\n this._documentKeydownSubject = new Subject<void>()\n\n // Set up document-level Escape key listener\n fromEvent<KeyboardEvent>(document, 'keydown')\n .pipe(\n filter((event) => {\n // Check both keyCode and key for better compatibility\n return (\n (event.keyCode === ESCAPE || event.key === 'Escape') && this._active\n )\n }),\n takeUntil(this._documentKeydownSubject),\n takeUntil(this._ngUnsubscribe),\n )\n .subscribe(() => this._closeTooltip())\n }\n\n private _closeTooltip(): void {\n if (!this._active || !this._compRef) {\n return\n }\n\n // Mark as inactive immediately to prevent new tooltips from being blocked\n this._active = false\n\n // Clean up document listener\n this._documentKeydownSubject.next()\n\n // Immediately clean up for tests (when using NoopAnimationsModule)\n // In real usage, this will be handled by the animation callback\n this._resetTooltip()\n }\n\n private _resetTooltip(): void {\n this._active = false\n\n // Dispose of overlay if it exists and hasn't been disposed already\n if (this._overlayRef) {\n if (this._overlayRef.hasAttached()) {\n this._overlayRef.detach()\n }\n this._overlayRef.dispose()\n this._overlayRef = null\n }\n\n this._compRef = null\n }\n\n public tooltipOpen(): boolean {\n return this._active && this._compRef !== null\n }\n\n private _parsePlacementInput(\n placement?: TheSeamTooltipPlacementInput | null,\n ): TheSeamTooltipPlacement[] {\n if (placement === undefined || placement === null) {\n return ['top'] // Default placement\n }\n\n if (typeof placement === 'string') {\n if (placement === 'auto') {\n return ['auto']\n }\n // Parse space-delimited string\n const placements = placement.split(/\\s+/).filter((p) => p.trim())\n return placements.filter((p) =>\n this._isValidPlacement(p),\n ) as TheSeamTooltipPlacement[]\n }\n\n if (Array.isArray(placement)) {\n return placement.filter((p) => this._isValidPlacement(p))\n }\n\n return [placement]\n }\n\n private _isValidPlacement(\n placement: string,\n ): placement is TheSeamTooltipPlacement {\n const validPlacements: TheSeamTooltipPlacement[] = [\n 'top',\n 'top-left',\n 'top-right',\n 'bottom',\n 'bottom-left',\n 'bottom-right',\n 'left',\n 'left-top',\n 'left-bottom',\n 'right',\n 'right-top',\n 'right-bottom',\n 'auto',\n ]\n return validPlacements.includes(placement as TheSeamTooltipPlacement)\n }\n\n private _getOverlayPosition(): FlexibleConnectedPositionStrategy {\n const positions = this._getPositions()\n\n return this._overlay\n .position()\n .flexibleConnectedTo(this._elementRef)\n .withPositions(positions)\n .withFlexibleDimensions(false)\n .withPush(true)\n }\n\n private _getPositions(): ConnectionPositionPair[] {\n const parsedPlacements = this._parsePlacementInput(this.placement)\n\n // If 'auto' is specified or no valid placements, return all positions\n if (parsedPlacements.includes('auto') || parsedPlacements.length === 0) {\n return [\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n },\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n },\n {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n },\n {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n },\n ]\n }\n\n // Return positions for specified placements only\n const positions: ConnectionPositionPair[] = []\n\n for (const placement of parsedPlacements) {\n const placementPositions = this._getPositionForPlacement(placement)\n positions.push(...placementPositions)\n }\n\n return positions\n }\n\n private _getPositionForPlacement(\n placement: TheSeamTooltipPlacement,\n ): ConnectionPositionPair[] {\n switch (placement) {\n case 'top':\n return [\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n },\n ]\n case 'top-left':\n return [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n ]\n case 'top-right':\n return [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n ]\n case 'bottom':\n return [\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n },\n ]\n case 'bottom-left':\n return [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n ]\n case 'bottom-right':\n return [\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n ]\n case 'left':\n return [\n {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n },\n ]\n case 'left-top':\n return [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n },\n ]\n case 'left-bottom':\n return [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n ]\n case 'right':\n return [\n {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n },\n ]\n case 'right-top':\n return [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n },\n ]\n case 'right-bottom':\n return [\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n ]\n case 'auto':\n default:\n return [\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n },\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n },\n {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n },\n {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n },\n ]\n }\n }\n\n private _getPlacementFromConnectionPair(\n connectionPair: ConnectionPositionPair,\n ): TheSeamTooltipPlacement {\n const { originX, originY, overlayX, overlayY } = connectionPair\n\n // Top placements (overlay below origin)\n if (originY === 'top' && overlayY === 'bottom') {\n if (originX === 'start' && overlayX === 'start') return 'top-left'\n if (originX === 'end' && overlayX === 'end') return 'top-right'\n if (originX === 'center' && overlayX === 'center') return 'top'\n }\n\n // Bottom placements (overlay above origin)\n if (originY === 'bottom' && overlayY === 'top') {\n if (originX === 'start' && overlayX === 'start') return 'bottom-left'\n if (originX === 'end' && overlayX === 'end') return 'bottom-right'\n if (originX === 'center' && overlayX === 'center') return 'bottom'\n }\n\n // Left placements (overlay to the right of origin)\n if (originX === 'start' && overlayX === 'end') {\n if (originY === 'top' && overlayY === 'top') return 'left-top'\n if (originY === 'bottom' && overlayY === 'bottom') return 'left-bottom'\n if (originY === 'center' && overlayY === 'center') return 'left'\n }\n\n // Right placements (overlay to the left of origin)\n if (originX === 'end' && overlayX === 'start') {\n if (originY === 'top' && overlayY === 'top') return 'right-top'\n if (originY === 'bottom' && overlayY === 'bottom') return 'right-bottom'\n if (originY === 'center' && overlayY === 'center') return 'right'\n }\n\n // Default fallback\n return 'top'\n }\n}\n","import { NgModule } from '@angular/core'\nimport { CommonModule } from '@angular/common'\nimport { OverlayModule } from '@angular/cdk/overlay'\n\nimport { TheSeamTooltipComponent } from './tooltip.component'\nimport { TheSeamTooltipDirective } from './tooltip.directive'\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n TheSeamTooltipComponent,\n TheSeamTooltipDirective,\n ],\n exports: [TheSeamTooltipDirective],\n})\nexport class TheSeamTooltipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -4,20 +4,20 @@ import { Component, NgModule, isDevMode, HostListener, Directive } from '@angula
4
4
  // TODO: Decide if this component should be implemented or just use the native
5
5
  // browser dialog for in-app routing also.
6
6
  class UnsavedChangesDialogComponent {
7
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UnsavedChangesDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: UnsavedChangesDialogComponent, isStandalone: true, selector: "seam-unsaved-changes-dialog", ngImport: i0, template: ``, isInline: true });
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UnsavedChangesDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: UnsavedChangesDialogComponent, isStandalone: true, selector: "seam-unsaved-changes-dialog", ngImport: i0, template: ``, isInline: true });
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UnsavedChangesDialogComponent, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UnsavedChangesDialogComponent, decorators: [{
11
11
  type: Component,
12
12
  args: [{ selector: 'seam-unsaved-changes-dialog', template: `` }]
13
13
  }] });
14
14
 
15
15
  class TheSeamUnsavedChangesDialogModule {
16
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamUnsavedChangesDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: TheSeamUnsavedChangesDialogModule, imports: [UnsavedChangesDialogComponent], exports: [UnsavedChangesDialogComponent] });
18
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamUnsavedChangesDialogModule });
16
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamUnsavedChangesDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: TheSeamUnsavedChangesDialogModule, imports: [UnsavedChangesDialogComponent], exports: [UnsavedChangesDialogComponent] });
18
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamUnsavedChangesDialogModule });
19
19
  }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamUnsavedChangesDialogModule, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamUnsavedChangesDialogModule, decorators: [{
21
21
  type: NgModule,
22
22
  args: [{
23
23
  imports: [UnsavedChangesDialogComponent],
@@ -62,10 +62,10 @@ class UnsavedChangesCanDeactivate {
62
62
  'You have unsaved changes! If you leave, your changes will be lost.';
63
63
  }
64
64
  }
65
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UnsavedChangesCanDeactivate, deps: [], target: i0.ɵɵFactoryTarget.Directive });
66
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.6", type: UnsavedChangesCanDeactivate, isStandalone: true, host: { listeners: { "window:beforeunload": "__unloadNotification($event)" } }, ngImport: i0 });
65
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UnsavedChangesCanDeactivate, deps: [], target: i0.ɵɵFactoryTarget.Directive });
66
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: UnsavedChangesCanDeactivate, isStandalone: true, host: { listeners: { "window:beforeunload": "__unloadNotification($event)" } }, ngImport: i0 });
67
67
  }
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UnsavedChangesCanDeactivate, decorators: [{
68
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UnsavedChangesCanDeactivate, decorators: [{
69
69
  type: Directive
70
70
  }], propDecorators: { __unloadNotification: [{
71
71
  type: HostListener,
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-unsaved-changes-dialog.mjs","sources":["../../../projects/ui-common/unsaved-changes-dialog/unsaved-changes-dialog.component.ts","../../../projects/ui-common/unsaved-changes-dialog/unsaved-changes-dialog.module.ts","../../../projects/ui-common/unsaved-changes-dialog/unsaved-changes-dialog.guard.ts","../../../projects/ui-common/unsaved-changes-dialog/unsaved-changes-can-deactivate.ts","../../../projects/ui-common/unsaved-changes-dialog/theseam-ui-common-unsaved-changes-dialog.ts"],"sourcesContent":["import { Component } from '@angular/core'\n\n// TODO: Decide if this component should be implemented or just use the native\n// browser dialog for in-app routing also.\n\n@Component({\n selector: 'seam-unsaved-changes-dialog',\n template: ``,\n styles: [],\n})\nexport class UnsavedChangesDialogComponent {}\n","import { NgModule } from '@angular/core'\n\nimport { UnsavedChangesDialogComponent } from './unsaved-changes-dialog.component'\n\n@NgModule({\n imports: [UnsavedChangesDialogComponent],\n exports: [UnsavedChangesDialogComponent],\n})\nexport class TheSeamUnsavedChangesDialogModule {}\n","import { isDevMode } from '@angular/core'\nimport { CanDeactivateFn } from '@angular/router'\n\nimport { UnsavedChangesCanDeactivate } from './unsaved-changes-can-deactivate'\n\nexport const UnsavedChangesDialogGuard: CanDeactivateFn<\n UnsavedChangesCanDeactivate\n> = (component, currentRoute, currentState, nextState) => {\n if (isDevMode()) {\n if (!component.unsavedChangesCanDeactivate) {\n // eslint-disable-next-line no-console\n console.warn(\n 'Route Component with `UnsavedChangesDialogGuard` guard must extend `UnsavedChangesCanDeactivate` class.',\n )\n }\n }\n\n const w = window as any\n // Avoid redirect prevention in Storybook\n if (w && w.__STORYBOOK_CLIENT_API__) {\n return true\n }\n\n if (!component.unsavedChangesCanDeactivate()) {\n return confirm(\n 'You have unsaved changes! If you leave, your changes will be lost.',\n )\n }\n\n return true\n}\n","import { Directive, HostListener, isDevMode } from '@angular/core'\n\n@Directive()\nexport abstract class UnsavedChangesCanDeactivate {\n abstract unsavedChangesCanDeactivate(): boolean\n\n @HostListener('window:beforeunload', ['$event'])\n __unloadNotification($event: any) {\n if (isDevMode()) {\n if (!this.unsavedChangesCanDeactivate) {\n // eslint-disable-next-line no-console\n console.warn(\n 'Route Component with [UnsavedChangesDialogGuard] guard must extend [UnsavedChangesCanDeactivate] class.',\n )\n }\n\n const w = window as any\n // Avoid redirect prevention in Storybook\n if (w && w.__STORYBOOK_CLIENT_API__) {\n return true\n }\n }\n\n if (!this.unsavedChangesCanDeactivate()) {\n // $event.returnValue = true\n $event.returnValue =\n 'You have unsaved changes! If you leave, your changes will be lost.'\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;AAEA;AACA;MAOa,6BAA6B,CAAA;uGAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA7B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,uFAH9B,CAAA,CAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA;;2FAGD,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBALzC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,6BAA6B,YAC7B,CAAA,CAAE,EAAA;;;MCCD,iCAAiC,CAAA;uGAAjC,iCAAiC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAjC,iCAAiC,EAAA,OAAA,EAAA,CAHlC,6BAA6B,CAAA,EAAA,OAAA,EAAA,CAC7B,6BAA6B,CAAA,EAAA,CAAA;wGAE5B,iCAAiC,EAAA,CAAA;;2FAAjC,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAJ7C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,6BAA6B,CAAC;oBACxC,OAAO,EAAE,CAAC,6BAA6B,CAAC;AACzC,iBAAA;;;ACFM,MAAM,yBAAyB,GAElC,CAAC,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,KAAI;IACvD,IAAI,SAAS,EAAE,EAAE;AACf,QAAA,IAAI,CAAC,SAAS,CAAC,2BAA2B,EAAE;;AAE1C,YAAA,OAAO,CAAC,IAAI,CACV,yGAAyG,CAC1G;QACH;IACF;IAEA,MAAM,CAAC,GAAG,MAAa;;AAEvB,IAAA,IAAI,CAAC,IAAI,CAAC,CAAC,wBAAwB,EAAE;AACnC,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,IAAI,CAAC,SAAS,CAAC,2BAA2B,EAAE,EAAE;AAC5C,QAAA,OAAO,OAAO,CACZ,oEAAoE,CACrE;IACH;AAEA,IAAA,OAAO,IAAI;AACb;;MC3BsB,2BAA2B,CAAA;AAI/C,IAAA,oBAAoB,CAAC,MAAW,EAAA;QAC9B,IAAI,SAAS,EAAE,EAAE;AACf,YAAA,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE;;AAErC,gBAAA,OAAO,CAAC,IAAI,CACV,yGAAyG,CAC1G;YACH;YAEA,MAAM,CAAC,GAAG,MAAa;;AAEvB,YAAA,IAAI,CAAC,IAAI,CAAC,CAAC,wBAAwB,EAAE;AACnC,gBAAA,OAAO,IAAI;YACb;QACF;AAEA,QAAA,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE;;AAEvC,YAAA,MAAM,CAAC,WAAW;AAChB,gBAAA,oEAAoE;QACxE;IACF;uGAzBoB,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAA3B,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,qBAAA,EAAA,8BAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAA3B,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBADhD;;sBAIE,YAAY;uBAAC,qBAAqB,EAAE,CAAC,QAAQ,CAAC;;;ACNjD;;AAEG;;;;"}
1
+ {"version":3,"file":"theseam-ui-common-unsaved-changes-dialog.mjs","sources":["../../../projects/ui-common/unsaved-changes-dialog/unsaved-changes-dialog.component.ts","../../../projects/ui-common/unsaved-changes-dialog/unsaved-changes-dialog.module.ts","../../../projects/ui-common/unsaved-changes-dialog/unsaved-changes-dialog.guard.ts","../../../projects/ui-common/unsaved-changes-dialog/unsaved-changes-can-deactivate.ts","../../../projects/ui-common/unsaved-changes-dialog/theseam-ui-common-unsaved-changes-dialog.ts"],"sourcesContent":["import { Component } from '@angular/core'\n\n// TODO: Decide if this component should be implemented or just use the native\n// browser dialog for in-app routing also.\n\n@Component({\n selector: 'seam-unsaved-changes-dialog',\n template: ``,\n styles: [],\n})\nexport class UnsavedChangesDialogComponent {}\n","import { NgModule } from '@angular/core'\n\nimport { UnsavedChangesDialogComponent } from './unsaved-changes-dialog.component'\n\n@NgModule({\n imports: [UnsavedChangesDialogComponent],\n exports: [UnsavedChangesDialogComponent],\n})\nexport class TheSeamUnsavedChangesDialogModule {}\n","import { isDevMode } from '@angular/core'\nimport { CanDeactivateFn } from '@angular/router'\n\nimport { UnsavedChangesCanDeactivate } from './unsaved-changes-can-deactivate'\n\nexport const UnsavedChangesDialogGuard: CanDeactivateFn<\n UnsavedChangesCanDeactivate\n> = (component, currentRoute, currentState, nextState) => {\n if (isDevMode()) {\n if (!component.unsavedChangesCanDeactivate) {\n // eslint-disable-next-line no-console\n console.warn(\n 'Route Component with `UnsavedChangesDialogGuard` guard must extend `UnsavedChangesCanDeactivate` class.',\n )\n }\n }\n\n const w = window as any\n // Avoid redirect prevention in Storybook\n if (w && w.__STORYBOOK_CLIENT_API__) {\n return true\n }\n\n if (!component.unsavedChangesCanDeactivate()) {\n return confirm(\n 'You have unsaved changes! If you leave, your changes will be lost.',\n )\n }\n\n return true\n}\n","import { Directive, HostListener, isDevMode } from '@angular/core'\n\n@Directive()\nexport abstract class UnsavedChangesCanDeactivate {\n abstract unsavedChangesCanDeactivate(): boolean\n\n @HostListener('window:beforeunload', ['$event'])\n __unloadNotification($event: any) {\n if (isDevMode()) {\n if (!this.unsavedChangesCanDeactivate) {\n // eslint-disable-next-line no-console\n console.warn(\n 'Route Component with [UnsavedChangesDialogGuard] guard must extend [UnsavedChangesCanDeactivate] class.',\n )\n }\n\n const w = window as any\n // Avoid redirect prevention in Storybook\n if (w && w.__STORYBOOK_CLIENT_API__) {\n return true\n }\n }\n\n if (!this.unsavedChangesCanDeactivate()) {\n // $event.returnValue = true\n $event.returnValue =\n 'You have unsaved changes! If you leave, your changes will be lost.'\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;AAEA;AACA;MAOa,6BAA6B,CAAA;wGAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA7B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,6BAA6B,uFAH9B,CAAA,CAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA;;4FAGD,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBALzC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,6BAA6B,YAC7B,CAAA,CAAE,EAAA;;;MCCD,iCAAiC,CAAA;wGAAjC,iCAAiC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;yGAAjC,iCAAiC,EAAA,OAAA,EAAA,CAHlC,6BAA6B,CAAA,EAAA,OAAA,EAAA,CAC7B,6BAA6B,CAAA,EAAA,CAAA;yGAE5B,iCAAiC,EAAA,CAAA;;4FAAjC,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAJ7C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,6BAA6B,CAAC;oBACxC,OAAO,EAAE,CAAC,6BAA6B,CAAC;AACzC,iBAAA;;;ACFM,MAAM,yBAAyB,GAElC,CAAC,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,KAAI;IACvD,IAAI,SAAS,EAAE,EAAE;AACf,QAAA,IAAI,CAAC,SAAS,CAAC,2BAA2B,EAAE;;AAE1C,YAAA,OAAO,CAAC,IAAI,CACV,yGAAyG,CAC1G;QACH;IACF;IAEA,MAAM,CAAC,GAAG,MAAa;;AAEvB,IAAA,IAAI,CAAC,IAAI,CAAC,CAAC,wBAAwB,EAAE;AACnC,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,IAAI,CAAC,SAAS,CAAC,2BAA2B,EAAE,EAAE;AAC5C,QAAA,OAAO,OAAO,CACZ,oEAAoE,CACrE;IACH;AAEA,IAAA,OAAO,IAAI;AACb;;MC3BsB,2BAA2B,CAAA;AAI/C,IAAA,oBAAoB,CAAC,MAAW,EAAA;QAC9B,IAAI,SAAS,EAAE,EAAE;AACf,YAAA,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE;;AAErC,gBAAA,OAAO,CAAC,IAAI,CACV,yGAAyG,CAC1G;YACH;YAEA,MAAM,CAAC,GAAG,MAAa;;AAEvB,YAAA,IAAI,CAAC,IAAI,CAAC,CAAC,wBAAwB,EAAE;AACnC,gBAAA,OAAO,IAAI;YACb;QACF;AAEA,QAAA,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE;;AAEvC,YAAA,MAAM,CAAC,WAAW;AAChB,gBAAA,oEAAoE;QACxE;IACF;wGAzBoB,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAA3B,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,qBAAA,EAAA,8BAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAA3B,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBADhD;;sBAIE,YAAY;uBAAC,qBAAqB,EAAE,CAAC,QAAQ,CAAC;;;ACNjD;;AAEG;;;;"}
@@ -84,10 +84,10 @@ class TheSeamVerticalListFilterComponent {
84
84
  clearFilter() {
85
85
  this.filterValue = undefined;
86
86
  }
87
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamVerticalListFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
88
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: TheSeamVerticalListFilterComponent, isStandalone: true, selector: "seam-vertical-list-filter", inputs: { showClearOption: "showClearOption", filterValue: "filterValue" }, host: { properties: { "attr.data-filter-value": "this._filterValueAttr" } }, ngImport: i0, template: "<div class=\"vertical-list-filter--list\">\n <ng-container *ngIf=\"showClearOption\">\n <span\n class=\"text-primary vertical-list-filter--clear\"\n [class.border-primary]=\"!filterValue || filterValue === ''\"\n (click)=\"clearFilter()\"\n >\n <svg\n class=\"vertical-list-filter--clear-icon\"\n viewBox=\"0 0 110 301\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"54.5\" cy=\"118.5\" r=\"7.5\" fill=\"currentColor\" />\n <circle cx=\"54.5\" cy=\"148.5\" r=\"7.5\" fill=\"currentColor\" />\n <circle cx=\"54.5\" cy=\"178.5\" r=\"7.5\" fill=\"currentColor\" />\n <path\n d=\"M48.12 56.48L45.816 65.12H65.832L63.672 56.48C62.328 51.776 61.032 46.784 59.784 41.504C58.536 36.224 57.288 31.136 56.04 26.24H55.464C54.312 31.232 53.112 36.368 51.864 41.648C50.712 46.832 49.464 51.776 48.12 56.48ZM75.912 104L70.152 81.68H41.496L35.736 104H14.136L43.512 10.112H69L98.376 104H75.912Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M48.12 56.48L43.3124 55.1064C43.3043 55.1348 43.2964 55.1632 43.2888 55.1917L48.12 56.48ZM45.816 65.12L40.9848 63.8317C40.5846 65.3326 40.9047 66.9344 41.8511 68.1662C42.7974 69.398 44.2626 70.12 45.816 70.12V65.12ZM65.832 65.12V70.12C67.3717 70.12 68.8255 69.4106 69.773 68.1971C70.7206 66.9835 71.0561 65.401 70.6827 63.9073L65.832 65.12ZM63.672 56.48L68.5227 55.2673C68.5092 55.2134 68.4949 55.1598 68.4796 55.1064L63.672 56.48ZM59.784 41.504L64.6499 40.3539L64.6499 40.3539L59.784 41.504ZM56.04 26.24L60.8851 25.005C60.3205 22.7901 58.3258 21.24 56.04 21.24V26.24ZM55.464 26.24V21.24C53.1357 21.24 51.1156 22.847 50.592 25.1157L55.464 26.24ZM51.864 41.648L46.9981 40.4979C46.9929 40.5197 46.9879 40.5415 46.9831 40.5633L51.864 41.648ZM75.912 104L71.0706 105.249C71.6404 107.457 73.6318 109 75.912 109V104ZM70.152 81.68L74.9934 80.4306C74.4236 78.2227 72.4322 76.68 70.152 76.68V81.68ZM41.496 81.68V76.68C39.2158 76.68 37.2244 78.2227 36.6546 80.4306L41.496 81.68ZM35.736 104V109C38.0162 109 40.0076 107.457 40.5774 105.249L35.736 104ZM14.136 104L9.36412 102.507C8.88907 104.025 9.16491 105.679 10.107 106.961C11.0492 108.243 12.5451 109 14.136 109L14.136 104ZM43.512 10.112V5.112C41.3257 5.112 39.393 6.53242 38.7401 8.61896L43.512 10.112ZM69 10.112L73.7719 8.61896C73.119 6.53242 71.1863 5.112 69 5.112V10.112ZM98.376 104V109C99.9669 109 101.463 108.243 102.405 106.961C103.347 105.679 103.623 104.025 103.148 102.507L98.376 104ZM43.2888 55.1917L40.9848 63.8317L50.6472 66.4083L52.9512 57.7683L43.2888 55.1917ZM45.816 70.12H65.832V60.12H45.816V70.12ZM70.6827 63.9073L68.5227 55.2673L58.8213 57.6927L60.9813 66.3327L70.6827 63.9073ZM68.4796 55.1064C67.1589 50.4839 65.8821 45.5669 64.6499 40.3539L54.9181 42.6541C56.1819 48.0011 57.4971 53.0681 58.8644 57.8536L68.4796 55.1064ZM64.6499 40.3539C63.3957 35.0476 62.1408 29.9312 60.8851 25.005L51.1949 27.475C52.4352 32.3408 53.6763 37.4004 54.9181 42.6541L64.6499 40.3539ZM56.04 21.24H55.464V31.24H56.04V21.24ZM50.592 25.1157C49.4421 30.0986 48.2442 35.226 46.9981 40.4979L56.7299 42.7981C57.9798 37.51 59.1819 32.3654 60.336 27.3643L50.592 25.1157ZM46.9831 40.5633C45.8508 45.6584 44.6269 50.5056 43.3124 55.1064L52.9276 57.8536C54.3011 53.0464 55.5732 48.0056 56.7449 42.7326L46.9831 40.5633ZM80.7534 102.751L74.9934 80.4306L65.3106 82.9294L71.0706 105.249L80.7534 102.751ZM70.152 76.68H41.496V86.68H70.152V76.68ZM36.6546 80.4306L30.8946 102.751L40.5774 105.249L46.3374 82.9294L36.6546 80.4306ZM35.736 99H14.136V109H35.736V99ZM18.9079 105.493L48.2839 11.605L38.7401 8.61896L9.36412 102.507L18.9079 105.493ZM43.512 15.112H69V5.112H43.512V15.112ZM64.2281 11.605L93.6041 105.493L103.148 102.507L73.7719 8.61896L64.2281 11.605ZM98.376 99H75.912V109H98.376V99Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M18.184 290V277.184L59.656 213.968H22.072V196.112H85.72V208.928L44.248 272.144H86.152V290H18.184Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M18.184 290H13.184C13.184 292.761 15.4226 295 18.184 295V290ZM18.184 277.184L14.0034 274.441C13.4688 275.256 13.184 276.209 13.184 277.184H18.184ZM59.656 213.968L63.8366 216.711C64.8445 215.174 64.9286 213.209 64.0556 211.592C63.1827 209.976 61.4933 208.968 59.656 208.968V213.968ZM22.072 213.968H17.072C17.072 216.729 19.3106 218.968 22.072 218.968V213.968ZM22.072 196.112V191.112C19.3106 191.112 17.072 193.351 17.072 196.112H22.072ZM85.72 196.112H90.72C90.72 193.351 88.4814 191.112 85.72 191.112V196.112ZM85.72 208.928L89.9006 211.671C90.4352 210.856 90.72 209.903 90.72 208.928H85.72ZM44.248 272.144L40.0674 269.401C39.0595 270.938 38.9754 272.903 39.8484 274.52C40.7213 276.136 42.4107 277.144 44.248 277.144V272.144ZM86.152 272.144H91.152C91.152 269.383 88.9134 267.144 86.152 267.144V272.144ZM86.152 290V295C88.9134 295 91.152 292.761 91.152 290H86.152ZM23.184 290V277.184H13.184V290H23.184ZM22.3646 279.927L63.8366 216.711L55.4754 211.225L14.0034 274.441L22.3646 279.927ZM59.656 208.968H22.072V218.968H59.656V208.968ZM27.072 213.968V196.112H17.072V213.968H27.072ZM22.072 201.112H85.72V191.112H22.072V201.112ZM80.72 196.112V208.928H90.72V196.112H80.72ZM81.5394 206.185L40.0674 269.401L48.4287 274.887L89.9006 211.671L81.5394 206.185ZM44.248 277.144H86.152V267.144H44.248V277.144ZM81.152 272.144V290H91.152V272.144H81.152ZM86.152 285H18.184V295H86.152V285Z\"\n fill=\"currentColor\"\n />\n </svg>\n </span>\n </ng-container>\n <span\n *ngFor=\"let c of _values\"\n class=\"vertical-list-filter--item text-primary\"\n [class.border-primary]=\"c === filterValue\"\n [attr.data-value]=\"c\"\n [attr.data-selected]=\"c === filterValue\"\n (click)=\"characterClick(c)\"\n >{{ c }}</span\n >\n</div>\n", styles: [".vertical-list-filter--list{display:flex;flex-direction:column;text-align:center;align-content:center}.vertical-list-filter--icon{cursor:pointer}.vertical-list-filter--item{cursor:pointer;padding-left:3px;padding-right:3px;border:2px solid transparent}.vertical-list-filter--item.is-selected{border-color:var(--primary)}.vertical-list-filter--clear{cursor:pointer;padding-top:3px;border:2px solid transparent}.vertical-list-filter--clear-icon{width:.875em;display:inline-block;font-size:inherit;height:1.5em;overflow:visible;vertical-align:-.125em}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
87
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamVerticalListFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
88
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: TheSeamVerticalListFilterComponent, isStandalone: true, selector: "seam-vertical-list-filter", inputs: { showClearOption: "showClearOption", filterValue: "filterValue" }, host: { properties: { "attr.data-filter-value": "this._filterValueAttr" } }, ngImport: i0, template: "<div class=\"vertical-list-filter--list\">\n <ng-container *ngIf=\"showClearOption\">\n <span\n class=\"text-primary vertical-list-filter--clear\"\n [class.border-primary]=\"!filterValue || filterValue === ''\"\n (click)=\"clearFilter()\"\n >\n <svg\n class=\"vertical-list-filter--clear-icon\"\n viewBox=\"0 0 110 301\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"54.5\" cy=\"118.5\" r=\"7.5\" fill=\"currentColor\" />\n <circle cx=\"54.5\" cy=\"148.5\" r=\"7.5\" fill=\"currentColor\" />\n <circle cx=\"54.5\" cy=\"178.5\" r=\"7.5\" fill=\"currentColor\" />\n <path\n d=\"M48.12 56.48L45.816 65.12H65.832L63.672 56.48C62.328 51.776 61.032 46.784 59.784 41.504C58.536 36.224 57.288 31.136 56.04 26.24H55.464C54.312 31.232 53.112 36.368 51.864 41.648C50.712 46.832 49.464 51.776 48.12 56.48ZM75.912 104L70.152 81.68H41.496L35.736 104H14.136L43.512 10.112H69L98.376 104H75.912Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M48.12 56.48L43.3124 55.1064C43.3043 55.1348 43.2964 55.1632 43.2888 55.1917L48.12 56.48ZM45.816 65.12L40.9848 63.8317C40.5846 65.3326 40.9047 66.9344 41.8511 68.1662C42.7974 69.398 44.2626 70.12 45.816 70.12V65.12ZM65.832 65.12V70.12C67.3717 70.12 68.8255 69.4106 69.773 68.1971C70.7206 66.9835 71.0561 65.401 70.6827 63.9073L65.832 65.12ZM63.672 56.48L68.5227 55.2673C68.5092 55.2134 68.4949 55.1598 68.4796 55.1064L63.672 56.48ZM59.784 41.504L64.6499 40.3539L64.6499 40.3539L59.784 41.504ZM56.04 26.24L60.8851 25.005C60.3205 22.7901 58.3258 21.24 56.04 21.24V26.24ZM55.464 26.24V21.24C53.1357 21.24 51.1156 22.847 50.592 25.1157L55.464 26.24ZM51.864 41.648L46.9981 40.4979C46.9929 40.5197 46.9879 40.5415 46.9831 40.5633L51.864 41.648ZM75.912 104L71.0706 105.249C71.6404 107.457 73.6318 109 75.912 109V104ZM70.152 81.68L74.9934 80.4306C74.4236 78.2227 72.4322 76.68 70.152 76.68V81.68ZM41.496 81.68V76.68C39.2158 76.68 37.2244 78.2227 36.6546 80.4306L41.496 81.68ZM35.736 104V109C38.0162 109 40.0076 107.457 40.5774 105.249L35.736 104ZM14.136 104L9.36412 102.507C8.88907 104.025 9.16491 105.679 10.107 106.961C11.0492 108.243 12.5451 109 14.136 109L14.136 104ZM43.512 10.112V5.112C41.3257 5.112 39.393 6.53242 38.7401 8.61896L43.512 10.112ZM69 10.112L73.7719 8.61896C73.119 6.53242 71.1863 5.112 69 5.112V10.112ZM98.376 104V109C99.9669 109 101.463 108.243 102.405 106.961C103.347 105.679 103.623 104.025 103.148 102.507L98.376 104ZM43.2888 55.1917L40.9848 63.8317L50.6472 66.4083L52.9512 57.7683L43.2888 55.1917ZM45.816 70.12H65.832V60.12H45.816V70.12ZM70.6827 63.9073L68.5227 55.2673L58.8213 57.6927L60.9813 66.3327L70.6827 63.9073ZM68.4796 55.1064C67.1589 50.4839 65.8821 45.5669 64.6499 40.3539L54.9181 42.6541C56.1819 48.0011 57.4971 53.0681 58.8644 57.8536L68.4796 55.1064ZM64.6499 40.3539C63.3957 35.0476 62.1408 29.9312 60.8851 25.005L51.1949 27.475C52.4352 32.3408 53.6763 37.4004 54.9181 42.6541L64.6499 40.3539ZM56.04 21.24H55.464V31.24H56.04V21.24ZM50.592 25.1157C49.4421 30.0986 48.2442 35.226 46.9981 40.4979L56.7299 42.7981C57.9798 37.51 59.1819 32.3654 60.336 27.3643L50.592 25.1157ZM46.9831 40.5633C45.8508 45.6584 44.6269 50.5056 43.3124 55.1064L52.9276 57.8536C54.3011 53.0464 55.5732 48.0056 56.7449 42.7326L46.9831 40.5633ZM80.7534 102.751L74.9934 80.4306L65.3106 82.9294L71.0706 105.249L80.7534 102.751ZM70.152 76.68H41.496V86.68H70.152V76.68ZM36.6546 80.4306L30.8946 102.751L40.5774 105.249L46.3374 82.9294L36.6546 80.4306ZM35.736 99H14.136V109H35.736V99ZM18.9079 105.493L48.2839 11.605L38.7401 8.61896L9.36412 102.507L18.9079 105.493ZM43.512 15.112H69V5.112H43.512V15.112ZM64.2281 11.605L93.6041 105.493L103.148 102.507L73.7719 8.61896L64.2281 11.605ZM98.376 99H75.912V109H98.376V99Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M18.184 290V277.184L59.656 213.968H22.072V196.112H85.72V208.928L44.248 272.144H86.152V290H18.184Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M18.184 290H13.184C13.184 292.761 15.4226 295 18.184 295V290ZM18.184 277.184L14.0034 274.441C13.4688 275.256 13.184 276.209 13.184 277.184H18.184ZM59.656 213.968L63.8366 216.711C64.8445 215.174 64.9286 213.209 64.0556 211.592C63.1827 209.976 61.4933 208.968 59.656 208.968V213.968ZM22.072 213.968H17.072C17.072 216.729 19.3106 218.968 22.072 218.968V213.968ZM22.072 196.112V191.112C19.3106 191.112 17.072 193.351 17.072 196.112H22.072ZM85.72 196.112H90.72C90.72 193.351 88.4814 191.112 85.72 191.112V196.112ZM85.72 208.928L89.9006 211.671C90.4352 210.856 90.72 209.903 90.72 208.928H85.72ZM44.248 272.144L40.0674 269.401C39.0595 270.938 38.9754 272.903 39.8484 274.52C40.7213 276.136 42.4107 277.144 44.248 277.144V272.144ZM86.152 272.144H91.152C91.152 269.383 88.9134 267.144 86.152 267.144V272.144ZM86.152 290V295C88.9134 295 91.152 292.761 91.152 290H86.152ZM23.184 290V277.184H13.184V290H23.184ZM22.3646 279.927L63.8366 216.711L55.4754 211.225L14.0034 274.441L22.3646 279.927ZM59.656 208.968H22.072V218.968H59.656V208.968ZM27.072 213.968V196.112H17.072V213.968H27.072ZM22.072 201.112H85.72V191.112H22.072V201.112ZM80.72 196.112V208.928H90.72V196.112H80.72ZM81.5394 206.185L40.0674 269.401L48.4287 274.887L89.9006 211.671L81.5394 206.185ZM44.248 277.144H86.152V267.144H44.248V277.144ZM81.152 272.144V290H91.152V272.144H81.152ZM86.152 285H18.184V295H86.152V285Z\"\n fill=\"currentColor\"\n />\n </svg>\n </span>\n </ng-container>\n <span\n *ngFor=\"let c of _values\"\n class=\"vertical-list-filter--item text-primary\"\n [class.border-primary]=\"c === filterValue\"\n [attr.data-value]=\"c\"\n [attr.data-selected]=\"c === filterValue\"\n (click)=\"characterClick(c)\"\n >{{ c }}</span\n >\n</div>\n", styles: [".vertical-list-filter--list{display:flex;flex-direction:column;text-align:center;align-content:center}.vertical-list-filter--icon{cursor:pointer}.vertical-list-filter--item{cursor:pointer;padding-left:3px;padding-right:3px;border:2px solid transparent}.vertical-list-filter--item.is-selected{border-color:var(--primary)}.vertical-list-filter--clear{cursor:pointer;padding-top:3px;border:2px solid transparent}.vertical-list-filter--clear-icon{width:.875em;display:inline-block;font-size:inherit;height:1.5em;overflow:visible;vertical-align:-.125em}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
89
89
  }
90
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TheSeamVerticalListFilterComponent, decorators: [{
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamVerticalListFilterComponent, decorators: [{
91
91
  type: Component,
92
92
  args: [{ selector: 'seam-vertical-list-filter', imports: [NgIf, NgFor], template: "<div class=\"vertical-list-filter--list\">\n <ng-container *ngIf=\"showClearOption\">\n <span\n class=\"text-primary vertical-list-filter--clear\"\n [class.border-primary]=\"!filterValue || filterValue === ''\"\n (click)=\"clearFilter()\"\n >\n <svg\n class=\"vertical-list-filter--clear-icon\"\n viewBox=\"0 0 110 301\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"54.5\" cy=\"118.5\" r=\"7.5\" fill=\"currentColor\" />\n <circle cx=\"54.5\" cy=\"148.5\" r=\"7.5\" fill=\"currentColor\" />\n <circle cx=\"54.5\" cy=\"178.5\" r=\"7.5\" fill=\"currentColor\" />\n <path\n d=\"M48.12 56.48L45.816 65.12H65.832L63.672 56.48C62.328 51.776 61.032 46.784 59.784 41.504C58.536 36.224 57.288 31.136 56.04 26.24H55.464C54.312 31.232 53.112 36.368 51.864 41.648C50.712 46.832 49.464 51.776 48.12 56.48ZM75.912 104L70.152 81.68H41.496L35.736 104H14.136L43.512 10.112H69L98.376 104H75.912Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M48.12 56.48L43.3124 55.1064C43.3043 55.1348 43.2964 55.1632 43.2888 55.1917L48.12 56.48ZM45.816 65.12L40.9848 63.8317C40.5846 65.3326 40.9047 66.9344 41.8511 68.1662C42.7974 69.398 44.2626 70.12 45.816 70.12V65.12ZM65.832 65.12V70.12C67.3717 70.12 68.8255 69.4106 69.773 68.1971C70.7206 66.9835 71.0561 65.401 70.6827 63.9073L65.832 65.12ZM63.672 56.48L68.5227 55.2673C68.5092 55.2134 68.4949 55.1598 68.4796 55.1064L63.672 56.48ZM59.784 41.504L64.6499 40.3539L64.6499 40.3539L59.784 41.504ZM56.04 26.24L60.8851 25.005C60.3205 22.7901 58.3258 21.24 56.04 21.24V26.24ZM55.464 26.24V21.24C53.1357 21.24 51.1156 22.847 50.592 25.1157L55.464 26.24ZM51.864 41.648L46.9981 40.4979C46.9929 40.5197 46.9879 40.5415 46.9831 40.5633L51.864 41.648ZM75.912 104L71.0706 105.249C71.6404 107.457 73.6318 109 75.912 109V104ZM70.152 81.68L74.9934 80.4306C74.4236 78.2227 72.4322 76.68 70.152 76.68V81.68ZM41.496 81.68V76.68C39.2158 76.68 37.2244 78.2227 36.6546 80.4306L41.496 81.68ZM35.736 104V109C38.0162 109 40.0076 107.457 40.5774 105.249L35.736 104ZM14.136 104L9.36412 102.507C8.88907 104.025 9.16491 105.679 10.107 106.961C11.0492 108.243 12.5451 109 14.136 109L14.136 104ZM43.512 10.112V5.112C41.3257 5.112 39.393 6.53242 38.7401 8.61896L43.512 10.112ZM69 10.112L73.7719 8.61896C73.119 6.53242 71.1863 5.112 69 5.112V10.112ZM98.376 104V109C99.9669 109 101.463 108.243 102.405 106.961C103.347 105.679 103.623 104.025 103.148 102.507L98.376 104ZM43.2888 55.1917L40.9848 63.8317L50.6472 66.4083L52.9512 57.7683L43.2888 55.1917ZM45.816 70.12H65.832V60.12H45.816V70.12ZM70.6827 63.9073L68.5227 55.2673L58.8213 57.6927L60.9813 66.3327L70.6827 63.9073ZM68.4796 55.1064C67.1589 50.4839 65.8821 45.5669 64.6499 40.3539L54.9181 42.6541C56.1819 48.0011 57.4971 53.0681 58.8644 57.8536L68.4796 55.1064ZM64.6499 40.3539C63.3957 35.0476 62.1408 29.9312 60.8851 25.005L51.1949 27.475C52.4352 32.3408 53.6763 37.4004 54.9181 42.6541L64.6499 40.3539ZM56.04 21.24H55.464V31.24H56.04V21.24ZM50.592 25.1157C49.4421 30.0986 48.2442 35.226 46.9981 40.4979L56.7299 42.7981C57.9798 37.51 59.1819 32.3654 60.336 27.3643L50.592 25.1157ZM46.9831 40.5633C45.8508 45.6584 44.6269 50.5056 43.3124 55.1064L52.9276 57.8536C54.3011 53.0464 55.5732 48.0056 56.7449 42.7326L46.9831 40.5633ZM80.7534 102.751L74.9934 80.4306L65.3106 82.9294L71.0706 105.249L80.7534 102.751ZM70.152 76.68H41.496V86.68H70.152V76.68ZM36.6546 80.4306L30.8946 102.751L40.5774 105.249L46.3374 82.9294L36.6546 80.4306ZM35.736 99H14.136V109H35.736V99ZM18.9079 105.493L48.2839 11.605L38.7401 8.61896L9.36412 102.507L18.9079 105.493ZM43.512 15.112H69V5.112H43.512V15.112ZM64.2281 11.605L93.6041 105.493L103.148 102.507L73.7719 8.61896L64.2281 11.605ZM98.376 99H75.912V109H98.376V99Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M18.184 290V277.184L59.656 213.968H22.072V196.112H85.72V208.928L44.248 272.144H86.152V290H18.184Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M18.184 290H13.184C13.184 292.761 15.4226 295 18.184 295V290ZM18.184 277.184L14.0034 274.441C13.4688 275.256 13.184 276.209 13.184 277.184H18.184ZM59.656 213.968L63.8366 216.711C64.8445 215.174 64.9286 213.209 64.0556 211.592C63.1827 209.976 61.4933 208.968 59.656 208.968V213.968ZM22.072 213.968H17.072C17.072 216.729 19.3106 218.968 22.072 218.968V213.968ZM22.072 196.112V191.112C19.3106 191.112 17.072 193.351 17.072 196.112H22.072ZM85.72 196.112H90.72C90.72 193.351 88.4814 191.112 85.72 191.112V196.112ZM85.72 208.928L89.9006 211.671C90.4352 210.856 90.72 209.903 90.72 208.928H85.72ZM44.248 272.144L40.0674 269.401C39.0595 270.938 38.9754 272.903 39.8484 274.52C40.7213 276.136 42.4107 277.144 44.248 277.144V272.144ZM86.152 272.144H91.152C91.152 269.383 88.9134 267.144 86.152 267.144V272.144ZM86.152 290V295C88.9134 295 91.152 292.761 91.152 290H86.152ZM23.184 290V277.184H13.184V290H23.184ZM22.3646 279.927L63.8366 216.711L55.4754 211.225L14.0034 274.441L22.3646 279.927ZM59.656 208.968H22.072V218.968H59.656V208.968ZM27.072 213.968V196.112H17.072V213.968H27.072ZM22.072 201.112H85.72V191.112H22.072V201.112ZM80.72 196.112V208.928H90.72V196.112H80.72ZM81.5394 206.185L40.0674 269.401L48.4287 274.887L89.9006 211.671L81.5394 206.185ZM44.248 277.144H86.152V267.144H44.248V277.144ZM81.152 272.144V290H91.152V272.144H81.152ZM86.152 285H18.184V295H86.152V285Z\"\n fill=\"currentColor\"\n />\n </svg>\n </span>\n </ng-container>\n <span\n *ngFor=\"let c of _values\"\n class=\"vertical-list-filter--item text-primary\"\n [class.border-primary]=\"c === filterValue\"\n [attr.data-value]=\"c\"\n [attr.data-selected]=\"c === filterValue\"\n (click)=\"characterClick(c)\"\n >{{ c }}</span\n >\n</div>\n", styles: [".vertical-list-filter--list{display:flex;flex-direction:column;text-align:center;align-content:center}.vertical-list-filter--icon{cursor:pointer}.vertical-list-filter--item{cursor:pointer;padding-left:3px;padding-right:3px;border:2px solid transparent}.vertical-list-filter--item.is-selected{border-color:var(--primary)}.vertical-list-filter--clear{cursor:pointer;padding-top:3px;border:2px solid transparent}.vertical-list-filter--clear-icon{width:.875em;display:inline-block;font-size:inherit;height:1.5em;overflow:visible;vertical-align:-.125em}\n"] }]
93
93
  }], ctorParameters: () => [], propDecorators: { showClearOption: [{
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-vertical-list-filter.mjs","sources":["../../../projects/ui-common/vertical-list-filter/testing/vertical-list-filter.harness.ts","../../../projects/ui-common/vertical-list-filter/vertical-list-filter.component.ts","../../../projects/ui-common/vertical-list-filter/vertical-list-filter.component.html","../../../projects/ui-common/vertical-list-filter/theseam-ui-common-vertical-list-filter.ts"],"sourcesContent":["import { ComponentHarness } from '@angular/cdk/testing'\n\nexport class TheSeamVerticalListFilterHarness extends ComponentHarness {\n static hostSelector = 'seam-vertical-list-filter'\n\n _clearOptionElement = this.locatorForOptional(`.vertical-list-filter--clear`)\n\n public async clickValue(value: string) {\n const element = await this.locatorFor(\n `.vertical-list-filter--item[data-value=\"${value}\"]`,\n )()\n return element.click()\n }\n\n public async filterValue(): Promise<string | undefined> {\n const filterValue = await (\n await this.host()\n ).getAttribute('data-filter-value')\n return filterValue ?? undefined\n }\n\n public async hasClearOption(): Promise<boolean> {\n const element = await this._clearOptionElement()\n return element !== null\n }\n\n public async clearFilter() {\n const element = await this._clearOptionElement()\n if (!element) {\n throw new Error('No clear option found.')\n }\n return element.click()\n }\n}\n","import { Component, Input, HostBinding } from '@angular/core'\nimport { NgFor, NgIf } from '@angular/common'\nimport { BehaviorSubject, Observable } from 'rxjs'\n\nexport const FILTER_VALUES: string[] = [\n 'A',\n 'B',\n 'C',\n 'D',\n 'E',\n 'F',\n 'G',\n 'H',\n 'I',\n 'J',\n 'K',\n 'L',\n 'M',\n 'N',\n 'O',\n 'P',\n 'Q',\n 'R',\n 'S',\n 'T',\n 'U',\n 'V',\n 'W',\n 'X',\n 'Y',\n 'Z',\n]\n\n@Component({\n selector: 'seam-vertical-list-filter',\n templateUrl: './vertical-list-filter.component.html',\n styleUrls: ['./vertical-list-filter.component.scss'],\n imports: [NgIf, NgFor],\n})\nexport class TheSeamVerticalListFilterComponent {\n readonly _values = FILTER_VALUES\n\n @Input() showClearOption = true\n\n @Input()\n get filterValue(): string | undefined {\n return this._filterValue.value\n }\n set filterValue(value: string | undefined) {\n this._filterValue.next(value)\n }\n private readonly _filterValue = new BehaviorSubject<string | undefined>(\n undefined,\n )\n public readonly filterValue$: Observable<string | undefined>\n\n @HostBinding('attr.data-filter-value')\n get _filterValueAttr(): string | undefined {\n return this.filterValue\n }\n\n constructor() {\n this.filterValue$ = this._filterValue.asObservable()\n }\n\n characterClick(character: string) {\n if (this.filterValue === character) {\n this.filterValue = undefined\n } else {\n this.filterValue = character\n }\n }\n\n clearFilter() {\n this.filterValue = undefined\n }\n}\n","<div class=\"vertical-list-filter--list\">\n <ng-container *ngIf=\"showClearOption\">\n <span\n class=\"text-primary vertical-list-filter--clear\"\n [class.border-primary]=\"!filterValue || filterValue === ''\"\n (click)=\"clearFilter()\"\n >\n <svg\n class=\"vertical-list-filter--clear-icon\"\n viewBox=\"0 0 110 301\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"54.5\" cy=\"118.5\" r=\"7.5\" fill=\"currentColor\" />\n <circle cx=\"54.5\" cy=\"148.5\" r=\"7.5\" fill=\"currentColor\" />\n <circle cx=\"54.5\" cy=\"178.5\" r=\"7.5\" fill=\"currentColor\" />\n <path\n d=\"M48.12 56.48L45.816 65.12H65.832L63.672 56.48C62.328 51.776 61.032 46.784 59.784 41.504C58.536 36.224 57.288 31.136 56.04 26.24H55.464C54.312 31.232 53.112 36.368 51.864 41.648C50.712 46.832 49.464 51.776 48.12 56.48ZM75.912 104L70.152 81.68H41.496L35.736 104H14.136L43.512 10.112H69L98.376 104H75.912Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M48.12 56.48L43.3124 55.1064C43.3043 55.1348 43.2964 55.1632 43.2888 55.1917L48.12 56.48ZM45.816 65.12L40.9848 63.8317C40.5846 65.3326 40.9047 66.9344 41.8511 68.1662C42.7974 69.398 44.2626 70.12 45.816 70.12V65.12ZM65.832 65.12V70.12C67.3717 70.12 68.8255 69.4106 69.773 68.1971C70.7206 66.9835 71.0561 65.401 70.6827 63.9073L65.832 65.12ZM63.672 56.48L68.5227 55.2673C68.5092 55.2134 68.4949 55.1598 68.4796 55.1064L63.672 56.48ZM59.784 41.504L64.6499 40.3539L64.6499 40.3539L59.784 41.504ZM56.04 26.24L60.8851 25.005C60.3205 22.7901 58.3258 21.24 56.04 21.24V26.24ZM55.464 26.24V21.24C53.1357 21.24 51.1156 22.847 50.592 25.1157L55.464 26.24ZM51.864 41.648L46.9981 40.4979C46.9929 40.5197 46.9879 40.5415 46.9831 40.5633L51.864 41.648ZM75.912 104L71.0706 105.249C71.6404 107.457 73.6318 109 75.912 109V104ZM70.152 81.68L74.9934 80.4306C74.4236 78.2227 72.4322 76.68 70.152 76.68V81.68ZM41.496 81.68V76.68C39.2158 76.68 37.2244 78.2227 36.6546 80.4306L41.496 81.68ZM35.736 104V109C38.0162 109 40.0076 107.457 40.5774 105.249L35.736 104ZM14.136 104L9.36412 102.507C8.88907 104.025 9.16491 105.679 10.107 106.961C11.0492 108.243 12.5451 109 14.136 109L14.136 104ZM43.512 10.112V5.112C41.3257 5.112 39.393 6.53242 38.7401 8.61896L43.512 10.112ZM69 10.112L73.7719 8.61896C73.119 6.53242 71.1863 5.112 69 5.112V10.112ZM98.376 104V109C99.9669 109 101.463 108.243 102.405 106.961C103.347 105.679 103.623 104.025 103.148 102.507L98.376 104ZM43.2888 55.1917L40.9848 63.8317L50.6472 66.4083L52.9512 57.7683L43.2888 55.1917ZM45.816 70.12H65.832V60.12H45.816V70.12ZM70.6827 63.9073L68.5227 55.2673L58.8213 57.6927L60.9813 66.3327L70.6827 63.9073ZM68.4796 55.1064C67.1589 50.4839 65.8821 45.5669 64.6499 40.3539L54.9181 42.6541C56.1819 48.0011 57.4971 53.0681 58.8644 57.8536L68.4796 55.1064ZM64.6499 40.3539C63.3957 35.0476 62.1408 29.9312 60.8851 25.005L51.1949 27.475C52.4352 32.3408 53.6763 37.4004 54.9181 42.6541L64.6499 40.3539ZM56.04 21.24H55.464V31.24H56.04V21.24ZM50.592 25.1157C49.4421 30.0986 48.2442 35.226 46.9981 40.4979L56.7299 42.7981C57.9798 37.51 59.1819 32.3654 60.336 27.3643L50.592 25.1157ZM46.9831 40.5633C45.8508 45.6584 44.6269 50.5056 43.3124 55.1064L52.9276 57.8536C54.3011 53.0464 55.5732 48.0056 56.7449 42.7326L46.9831 40.5633ZM80.7534 102.751L74.9934 80.4306L65.3106 82.9294L71.0706 105.249L80.7534 102.751ZM70.152 76.68H41.496V86.68H70.152V76.68ZM36.6546 80.4306L30.8946 102.751L40.5774 105.249L46.3374 82.9294L36.6546 80.4306ZM35.736 99H14.136V109H35.736V99ZM18.9079 105.493L48.2839 11.605L38.7401 8.61896L9.36412 102.507L18.9079 105.493ZM43.512 15.112H69V5.112H43.512V15.112ZM64.2281 11.605L93.6041 105.493L103.148 102.507L73.7719 8.61896L64.2281 11.605ZM98.376 99H75.912V109H98.376V99Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M18.184 290V277.184L59.656 213.968H22.072V196.112H85.72V208.928L44.248 272.144H86.152V290H18.184Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M18.184 290H13.184C13.184 292.761 15.4226 295 18.184 295V290ZM18.184 277.184L14.0034 274.441C13.4688 275.256 13.184 276.209 13.184 277.184H18.184ZM59.656 213.968L63.8366 216.711C64.8445 215.174 64.9286 213.209 64.0556 211.592C63.1827 209.976 61.4933 208.968 59.656 208.968V213.968ZM22.072 213.968H17.072C17.072 216.729 19.3106 218.968 22.072 218.968V213.968ZM22.072 196.112V191.112C19.3106 191.112 17.072 193.351 17.072 196.112H22.072ZM85.72 196.112H90.72C90.72 193.351 88.4814 191.112 85.72 191.112V196.112ZM85.72 208.928L89.9006 211.671C90.4352 210.856 90.72 209.903 90.72 208.928H85.72ZM44.248 272.144L40.0674 269.401C39.0595 270.938 38.9754 272.903 39.8484 274.52C40.7213 276.136 42.4107 277.144 44.248 277.144V272.144ZM86.152 272.144H91.152C91.152 269.383 88.9134 267.144 86.152 267.144V272.144ZM86.152 290V295C88.9134 295 91.152 292.761 91.152 290H86.152ZM23.184 290V277.184H13.184V290H23.184ZM22.3646 279.927L63.8366 216.711L55.4754 211.225L14.0034 274.441L22.3646 279.927ZM59.656 208.968H22.072V218.968H59.656V208.968ZM27.072 213.968V196.112H17.072V213.968H27.072ZM22.072 201.112H85.72V191.112H22.072V201.112ZM80.72 196.112V208.928H90.72V196.112H80.72ZM81.5394 206.185L40.0674 269.401L48.4287 274.887L89.9006 211.671L81.5394 206.185ZM44.248 277.144H86.152V267.144H44.248V277.144ZM81.152 272.144V290H91.152V272.144H81.152ZM86.152 285H18.184V295H86.152V285Z\"\n fill=\"currentColor\"\n />\n </svg>\n </span>\n </ng-container>\n <span\n *ngFor=\"let c of _values\"\n class=\"vertical-list-filter--item text-primary\"\n [class.border-primary]=\"c === filterValue\"\n [attr.data-value]=\"c\"\n [attr.data-selected]=\"c === filterValue\"\n (click)=\"characterClick(c)\"\n >{{ c }}</span\n >\n</div>\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":"theseam-ui-common-vertical-list-filter.mjs","sources":["../../../projects/ui-common/vertical-list-filter/testing/vertical-list-filter.harness.ts","../../../projects/ui-common/vertical-list-filter/vertical-list-filter.component.ts","../../../projects/ui-common/vertical-list-filter/vertical-list-filter.component.html","../../../projects/ui-common/vertical-list-filter/theseam-ui-common-vertical-list-filter.ts"],"sourcesContent":["import { ComponentHarness } from '@angular/cdk/testing'\n\nexport class TheSeamVerticalListFilterHarness extends ComponentHarness {\n static hostSelector = 'seam-vertical-list-filter'\n\n _clearOptionElement = this.locatorForOptional(`.vertical-list-filter--clear`)\n\n public async clickValue(value: string) {\n const element = await this.locatorFor(\n `.vertical-list-filter--item[data-value=\"${value}\"]`,\n )()\n return element.click()\n }\n\n public async filterValue(): Promise<string | undefined> {\n const filterValue = await (\n await this.host()\n ).getAttribute('data-filter-value')\n return filterValue ?? undefined\n }\n\n public async hasClearOption(): Promise<boolean> {\n const element = await this._clearOptionElement()\n return element !== null\n }\n\n public async clearFilter() {\n const element = await this._clearOptionElement()\n if (!element) {\n throw new Error('No clear option found.')\n }\n return element.click()\n }\n}\n","import { Component, Input, HostBinding } from '@angular/core'\nimport { NgFor, NgIf } from '@angular/common'\nimport { BehaviorSubject, Observable } from 'rxjs'\n\nexport const FILTER_VALUES: string[] = [\n 'A',\n 'B',\n 'C',\n 'D',\n 'E',\n 'F',\n 'G',\n 'H',\n 'I',\n 'J',\n 'K',\n 'L',\n 'M',\n 'N',\n 'O',\n 'P',\n 'Q',\n 'R',\n 'S',\n 'T',\n 'U',\n 'V',\n 'W',\n 'X',\n 'Y',\n 'Z',\n]\n\n@Component({\n selector: 'seam-vertical-list-filter',\n templateUrl: './vertical-list-filter.component.html',\n styleUrls: ['./vertical-list-filter.component.scss'],\n imports: [NgIf, NgFor],\n})\nexport class TheSeamVerticalListFilterComponent {\n readonly _values = FILTER_VALUES\n\n @Input() showClearOption = true\n\n @Input()\n get filterValue(): string | undefined {\n return this._filterValue.value\n }\n set filterValue(value: string | undefined) {\n this._filterValue.next(value)\n }\n private readonly _filterValue = new BehaviorSubject<string | undefined>(\n undefined,\n )\n public readonly filterValue$: Observable<string | undefined>\n\n @HostBinding('attr.data-filter-value')\n get _filterValueAttr(): string | undefined {\n return this.filterValue\n }\n\n constructor() {\n this.filterValue$ = this._filterValue.asObservable()\n }\n\n characterClick(character: string) {\n if (this.filterValue === character) {\n this.filterValue = undefined\n } else {\n this.filterValue = character\n }\n }\n\n clearFilter() {\n this.filterValue = undefined\n }\n}\n","<div class=\"vertical-list-filter--list\">\n <ng-container *ngIf=\"showClearOption\">\n <span\n class=\"text-primary vertical-list-filter--clear\"\n [class.border-primary]=\"!filterValue || filterValue === ''\"\n (click)=\"clearFilter()\"\n >\n <svg\n class=\"vertical-list-filter--clear-icon\"\n viewBox=\"0 0 110 301\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"54.5\" cy=\"118.5\" r=\"7.5\" fill=\"currentColor\" />\n <circle cx=\"54.5\" cy=\"148.5\" r=\"7.5\" fill=\"currentColor\" />\n <circle cx=\"54.5\" cy=\"178.5\" r=\"7.5\" fill=\"currentColor\" />\n <path\n d=\"M48.12 56.48L45.816 65.12H65.832L63.672 56.48C62.328 51.776 61.032 46.784 59.784 41.504C58.536 36.224 57.288 31.136 56.04 26.24H55.464C54.312 31.232 53.112 36.368 51.864 41.648C50.712 46.832 49.464 51.776 48.12 56.48ZM75.912 104L70.152 81.68H41.496L35.736 104H14.136L43.512 10.112H69L98.376 104H75.912Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M48.12 56.48L43.3124 55.1064C43.3043 55.1348 43.2964 55.1632 43.2888 55.1917L48.12 56.48ZM45.816 65.12L40.9848 63.8317C40.5846 65.3326 40.9047 66.9344 41.8511 68.1662C42.7974 69.398 44.2626 70.12 45.816 70.12V65.12ZM65.832 65.12V70.12C67.3717 70.12 68.8255 69.4106 69.773 68.1971C70.7206 66.9835 71.0561 65.401 70.6827 63.9073L65.832 65.12ZM63.672 56.48L68.5227 55.2673C68.5092 55.2134 68.4949 55.1598 68.4796 55.1064L63.672 56.48ZM59.784 41.504L64.6499 40.3539L64.6499 40.3539L59.784 41.504ZM56.04 26.24L60.8851 25.005C60.3205 22.7901 58.3258 21.24 56.04 21.24V26.24ZM55.464 26.24V21.24C53.1357 21.24 51.1156 22.847 50.592 25.1157L55.464 26.24ZM51.864 41.648L46.9981 40.4979C46.9929 40.5197 46.9879 40.5415 46.9831 40.5633L51.864 41.648ZM75.912 104L71.0706 105.249C71.6404 107.457 73.6318 109 75.912 109V104ZM70.152 81.68L74.9934 80.4306C74.4236 78.2227 72.4322 76.68 70.152 76.68V81.68ZM41.496 81.68V76.68C39.2158 76.68 37.2244 78.2227 36.6546 80.4306L41.496 81.68ZM35.736 104V109C38.0162 109 40.0076 107.457 40.5774 105.249L35.736 104ZM14.136 104L9.36412 102.507C8.88907 104.025 9.16491 105.679 10.107 106.961C11.0492 108.243 12.5451 109 14.136 109L14.136 104ZM43.512 10.112V5.112C41.3257 5.112 39.393 6.53242 38.7401 8.61896L43.512 10.112ZM69 10.112L73.7719 8.61896C73.119 6.53242 71.1863 5.112 69 5.112V10.112ZM98.376 104V109C99.9669 109 101.463 108.243 102.405 106.961C103.347 105.679 103.623 104.025 103.148 102.507L98.376 104ZM43.2888 55.1917L40.9848 63.8317L50.6472 66.4083L52.9512 57.7683L43.2888 55.1917ZM45.816 70.12H65.832V60.12H45.816V70.12ZM70.6827 63.9073L68.5227 55.2673L58.8213 57.6927L60.9813 66.3327L70.6827 63.9073ZM68.4796 55.1064C67.1589 50.4839 65.8821 45.5669 64.6499 40.3539L54.9181 42.6541C56.1819 48.0011 57.4971 53.0681 58.8644 57.8536L68.4796 55.1064ZM64.6499 40.3539C63.3957 35.0476 62.1408 29.9312 60.8851 25.005L51.1949 27.475C52.4352 32.3408 53.6763 37.4004 54.9181 42.6541L64.6499 40.3539ZM56.04 21.24H55.464V31.24H56.04V21.24ZM50.592 25.1157C49.4421 30.0986 48.2442 35.226 46.9981 40.4979L56.7299 42.7981C57.9798 37.51 59.1819 32.3654 60.336 27.3643L50.592 25.1157ZM46.9831 40.5633C45.8508 45.6584 44.6269 50.5056 43.3124 55.1064L52.9276 57.8536C54.3011 53.0464 55.5732 48.0056 56.7449 42.7326L46.9831 40.5633ZM80.7534 102.751L74.9934 80.4306L65.3106 82.9294L71.0706 105.249L80.7534 102.751ZM70.152 76.68H41.496V86.68H70.152V76.68ZM36.6546 80.4306L30.8946 102.751L40.5774 105.249L46.3374 82.9294L36.6546 80.4306ZM35.736 99H14.136V109H35.736V99ZM18.9079 105.493L48.2839 11.605L38.7401 8.61896L9.36412 102.507L18.9079 105.493ZM43.512 15.112H69V5.112H43.512V15.112ZM64.2281 11.605L93.6041 105.493L103.148 102.507L73.7719 8.61896L64.2281 11.605ZM98.376 99H75.912V109H98.376V99Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M18.184 290V277.184L59.656 213.968H22.072V196.112H85.72V208.928L44.248 272.144H86.152V290H18.184Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M18.184 290H13.184C13.184 292.761 15.4226 295 18.184 295V290ZM18.184 277.184L14.0034 274.441C13.4688 275.256 13.184 276.209 13.184 277.184H18.184ZM59.656 213.968L63.8366 216.711C64.8445 215.174 64.9286 213.209 64.0556 211.592C63.1827 209.976 61.4933 208.968 59.656 208.968V213.968ZM22.072 213.968H17.072C17.072 216.729 19.3106 218.968 22.072 218.968V213.968ZM22.072 196.112V191.112C19.3106 191.112 17.072 193.351 17.072 196.112H22.072ZM85.72 196.112H90.72C90.72 193.351 88.4814 191.112 85.72 191.112V196.112ZM85.72 208.928L89.9006 211.671C90.4352 210.856 90.72 209.903 90.72 208.928H85.72ZM44.248 272.144L40.0674 269.401C39.0595 270.938 38.9754 272.903 39.8484 274.52C40.7213 276.136 42.4107 277.144 44.248 277.144V272.144ZM86.152 272.144H91.152C91.152 269.383 88.9134 267.144 86.152 267.144V272.144ZM86.152 290V295C88.9134 295 91.152 292.761 91.152 290H86.152ZM23.184 290V277.184H13.184V290H23.184ZM22.3646 279.927L63.8366 216.711L55.4754 211.225L14.0034 274.441L22.3646 279.927ZM59.656 208.968H22.072V218.968H59.656V208.968ZM27.072 213.968V196.112H17.072V213.968H27.072ZM22.072 201.112H85.72V191.112H22.072V201.112ZM80.72 196.112V208.928H90.72V196.112H80.72ZM81.5394 206.185L40.0674 269.401L48.4287 274.887L89.9006 211.671L81.5394 206.185ZM44.248 277.144H86.152V267.144H44.248V277.144ZM81.152 272.144V290H91.152V272.144H81.152ZM86.152 285H18.184V295H86.152V285Z\"\n fill=\"currentColor\"\n />\n </svg>\n </span>\n </ng-container>\n <span\n *ngFor=\"let c of _values\"\n class=\"vertical-list-filter--item text-primary\"\n [class.border-primary]=\"c === filterValue\"\n [attr.data-value]=\"c\"\n [attr.data-selected]=\"c === filterValue\"\n (click)=\"characterClick(c)\"\n >{{ c }}</span\n >\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}