@acorex/components 21.0.1-next.79 → 21.0.1-next.80

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 (122) hide show
  1. package/fesm2022/acorex-components-action-sheet.mjs +2 -2
  2. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  3. package/fesm2022/acorex-components-alert.mjs +2 -2
  4. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  5. package/fesm2022/acorex-components-avatar.mjs +2 -2
  6. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  7. package/fesm2022/acorex-components-bottom-navigation.mjs +2 -2
  8. package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
  9. package/fesm2022/acorex-components-breadcrumbs.mjs +2 -2
  10. package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
  11. package/fesm2022/acorex-components-button.mjs +2 -2
  12. package/fesm2022/acorex-components-button.mjs.map +1 -1
  13. package/fesm2022/acorex-components-calendar.mjs +2 -2
  14. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  15. package/fesm2022/acorex-components-check-box.mjs +2 -2
  16. package/fesm2022/acorex-components-check-box.mjs.map +1 -1
  17. package/fesm2022/acorex-components-circular-progress.mjs +2 -2
  18. package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
  19. package/fesm2022/acorex-components-color-box.mjs +2 -2
  20. package/fesm2022/acorex-components-color-box.mjs.map +1 -1
  21. package/fesm2022/acorex-components-color-palette.mjs +2 -2
  22. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  23. package/fesm2022/acorex-components-command.mjs +2 -2
  24. package/fesm2022/acorex-components-command.mjs.map +1 -1
  25. package/fesm2022/acorex-components-comment.mjs +4 -4
  26. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  27. package/fesm2022/acorex-components-data-pager.mjs +2 -2
  28. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  29. package/fesm2022/acorex-components-data-table.mjs +2 -2
  30. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  31. package/fesm2022/acorex-components-datetime-picker.mjs +2 -2
  32. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  33. package/fesm2022/acorex-components-decorators.mjs +2 -2
  34. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  35. package/fesm2022/acorex-components-dialog.mjs +2 -2
  36. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  37. package/fesm2022/acorex-components-dropdown-button.mjs +2 -2
  38. package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
  39. package/fesm2022/acorex-components-editor.mjs +2 -2
  40. package/fesm2022/acorex-components-editor.mjs.map +1 -1
  41. package/fesm2022/acorex-components-form.mjs +2 -2
  42. package/fesm2022/acorex-components-form.mjs.map +1 -1
  43. package/fesm2022/acorex-components-image-editor.mjs +8 -8
  44. package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
  45. package/fesm2022/acorex-components-json-viewer.mjs +2 -2
  46. package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
  47. package/fesm2022/acorex-components-kanban.mjs +2 -2
  48. package/fesm2022/acorex-components-kanban.mjs.map +1 -1
  49. package/fesm2022/acorex-components-label.mjs +2 -2
  50. package/fesm2022/acorex-components-label.mjs.map +1 -1
  51. package/fesm2022/acorex-components-list.mjs +2 -2
  52. package/fesm2022/acorex-components-list.mjs.map +1 -1
  53. package/fesm2022/acorex-components-loading-dialog.mjs +2 -2
  54. package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
  55. package/fesm2022/acorex-components-loading.mjs +4 -4
  56. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  57. package/fesm2022/acorex-components-media-viewer.mjs +4 -4
  58. package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
  59. package/fesm2022/acorex-components-menu.mjs +2 -2
  60. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  61. package/fesm2022/{acorex-components-modal-acorex-components-modal-DUHKpjKf.mjs → acorex-components-modal-acorex-components-modal-DWNqU6or.mjs} +2 -2
  62. package/fesm2022/{acorex-components-modal-acorex-components-modal-DUHKpjKf.mjs.map → acorex-components-modal-acorex-components-modal-DWNqU6or.mjs.map} +1 -1
  63. package/fesm2022/{acorex-components-modal-modal-content.component-BlGkolGr.mjs → acorex-components-modal-modal-content.component-DplJbJyk.mjs} +4 -4
  64. package/fesm2022/{acorex-components-modal-modal-content.component-BlGkolGr.mjs.map → acorex-components-modal-modal-content.component-DplJbJyk.mjs.map} +1 -1
  65. package/fesm2022/acorex-components-modal.mjs +1 -1
  66. package/fesm2022/acorex-components-notification.mjs +2 -2
  67. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  68. package/fesm2022/acorex-components-paint.mjs +4 -4
  69. package/fesm2022/acorex-components-paint.mjs.map +1 -1
  70. package/fesm2022/acorex-components-password-box.mjs +2 -2
  71. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  72. package/fesm2022/acorex-components-phone-box.mjs +2 -2
  73. package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
  74. package/fesm2022/acorex-components-picker.mjs +2 -2
  75. package/fesm2022/acorex-components-picker.mjs.map +1 -1
  76. package/fesm2022/acorex-components-popup.mjs +2 -2
  77. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  78. package/fesm2022/acorex-components-progress-bar.mjs +2 -2
  79. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
  80. package/fesm2022/acorex-components-query-builder.mjs +2 -2
  81. package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
  82. package/fesm2022/acorex-components-rail-navigation.mjs +2 -2
  83. package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
  84. package/fesm2022/acorex-components-range-slider.mjs +2 -2
  85. package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
  86. package/fesm2022/acorex-components-rate-picker.mjs +2 -2
  87. package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
  88. package/fesm2022/acorex-components-routing-progress.mjs +2 -2
  89. package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
  90. package/fesm2022/acorex-components-scheduler.mjs +18 -18
  91. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  92. package/fesm2022/acorex-components-select-box.mjs +2 -2
  93. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  94. package/fesm2022/acorex-components-selection-list-2.mjs +2 -2
  95. package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
  96. package/fesm2022/acorex-components-selection-list.mjs +2 -2
  97. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  98. package/fesm2022/acorex-components-side-menu.mjs +2 -2
  99. package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
  100. package/fesm2022/acorex-components-skeleton.mjs +2 -2
  101. package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
  102. package/fesm2022/acorex-components-sliding-item.mjs +2 -2
  103. package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
  104. package/fesm2022/acorex-components-step-wizard.mjs +2 -2
  105. package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
  106. package/fesm2022/acorex-components-switch.mjs +2 -2
  107. package/fesm2022/acorex-components-switch.mjs.map +1 -1
  108. package/fesm2022/acorex-components-tabs.mjs +2 -2
  109. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  110. package/fesm2022/acorex-components-time-line.mjs +4 -4
  111. package/fesm2022/acorex-components-time-line.mjs.map +1 -1
  112. package/fesm2022/acorex-components-toast.mjs +2 -2
  113. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  114. package/fesm2022/acorex-components-toolbar.mjs +2 -2
  115. package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
  116. package/fesm2022/acorex-components-tooltip.mjs +2 -2
  117. package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
  118. package/fesm2022/acorex-components-uploader.mjs +6 -6
  119. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  120. package/fesm2022/acorex-components-wysiwyg.mjs +2 -2
  121. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  122. package/package.json +3 -3
@@ -523,7 +523,7 @@ class AXActionSheetComponent extends MXBaseComponent {
523
523
  provide: AXFocusableComponent,
524
524
  useExisting: AXActionSheetComponent,
525
525
  },
526
- ], viewQueries: [{ propertyName: "contentContainerRef", first: true, predicate: ["contentContainer"], descendants: true, read: ViewContainerRef }], usesInheritance: true, ngImport: i0, template: "@if (data().draggable) {\n <div (mousedown)=\"handleMouseDown($event)\" (touchstart)=\"handleTouchDown($event)\" class=\"ax-drag-handle-container\">\n <div class=\"ax-drag-handle\"></div>\n </div>\n}\n@if (data().header) {\n <ax-header\n [class.draggable-header]=\"data().draggable\"\n (mousedown)=\"data().draggable ? handleMouseDown($event) : null\"\n (touchstart)=\"data().draggable ? handleTouchDown($event) : null\"\n >\n <ax-prefix>\n <ax-title class=\"line-clamp-1\">{{ data().title | translate | async }}</ax-title>\n\n @if (data().subTitle) {\n <ax-subtitle class=\"line-clamp-2\">\n {{ data().subTitle }}\n </ax-subtitle>\n }\n </ax-prefix>\n @if (data().closeButton) {\n <ax-suffix>\n <ax-close-button></ax-close-button>\n </ax-suffix>\n }\n </ax-header>\n}\n@if (data().content) {\n @if (templateContent()) {\n <ng-container *ngTemplateOutlet=\"templateContent(); context: templateContext()\"></ng-container>\n }\n <!-- Component content container - always present but only populated when componentContent() is truthy -->\n <ng-container #contentContainer></ng-container>\n}\n\n<div class=\"ax-action-list ax-action-list-vertical\">\n @for (item of data().items; let i = $index; track i) {\n @if (item.group?.title) {\n <ax-title>{{ item.group?.title }}</ax-title>\n }\n <div\n class=\"ax-action-item ax-{{ item.color || 'default' }}\"\n [class.ax-state-disabled]=\"item.disabled\"\n [tabindex]=\"i\"\n (click)=\"onItemClick(item)\"\n >\n <div class=\"ax-action-item-prefix\">\n @if (item.icon) {\n <span class=\"ax-item-icon\" [class]=\"item.icon\"></span>\n }\n <ax-text>{{ item.text | translate | async }}</ax-text>\n </div>\n <div class=\"ax-action-item-suffix\"></div>\n </div>\n @if (item.break) {\n <ax-divider></ax-divider>\n }\n }\n</div>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-font-weight:initial}}}@layer components{ax-action-sheet{background-color:var(--color-lightest,rgba(var(--ax-sys-color-lightest-surface)));width:100vw;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));display:block;position:relative}@media(min-width:48rem){ax-action-sheet{width:70vw}}@media(min-width:64rem){ax-action-sheet{width:50vw}}ax-action-sheet:where(.dark,.dark *){background-color:var(--color-darker,rgba(var(--ax-sys-color-darker-surface)))}ax-action-sheet .ax-drag-handle-container{padding-top:calc(var(--spacing,.25rem) * 2)}ax-action-sheet .ax-drag-handle-container .ax-drag-handle{height:calc(var(--spacing,.25rem) * 1);width:calc(var(--spacing,.25rem) * 12);border-radius:var(--radius-lg,.5rem);background-color:var(--color-surface,rgba(var(--ax-sys-color-surface)));margin:auto}ax-action-sheet ax-header{border-bottom-style:var(--tw-border-style);padding:calc(var(--spacing,.25rem) * 4);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);border-bottom-width:1px}@media(min-width:48rem){ax-action-sheet ax-header{font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)))}}ax-action-sheet ax-header.draggable-header{padding-top:calc(var(--spacing,.25rem) * 0);-webkit-user-select:none;user-select:none}ax-action-sheet ax-header ax-prefix,ax-action-sheet ax-header ax-suffix{flex-direction:column;justify-content:flex-start;display:flex}ax-action-sheet ax-header ax-prefix{align-items:flex-start}ax-action-sheet ax-header ax-prefix ax-title{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}ax-action-sheet ax-header ax-suffix{align-items:flex-end;max-width:fit-content}ax-action-sheet .ax-action-list{max-height:100vh;overflow-y:auto}ax-action-sheet .ax-action-list ax-title{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)))}ax-action-sheet .ax-action-list .ax-action-item{color:var(--ax-comp-bg);min-height:calc(var(--spacing,.25rem) * 14)!important;font-size:var(--text-base,1rem)!important;line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ))!important}ax-action-sheet .ax-action-list .ax-action-item:hover:not(ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-selected){background-color:var(--ax-comp-bg)!important}@supports (color:color-mix(in lab,red,red)){ax-action-sheet .ax-action-list .ax-action-item:hover:not(ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-selected){background-color:color-mix(in oklab,var(--ax-comp-bg) 10%,transparent)!important}}ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover:not(ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover.ax-state-selected){background-color:var(--color-surface,rgba(var(--ax-sys-color-surface)))!important}ax-action-sheet .ax-action-list .ax-action-item .ax-item-icon{font-size:var(--text-2xl,1.5rem)!important;line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)))!important;margin-inline-end:calc(var(--spacing,.25rem) * 3)!important}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:\"*\";inherits:false}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["closeAll", "icon"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
526
+ ], viewQueries: [{ propertyName: "contentContainerRef", first: true, predicate: ["contentContainer"], descendants: true, read: ViewContainerRef }], usesInheritance: true, ngImport: i0, template: "@if (data().draggable) {\n <div (mousedown)=\"handleMouseDown($event)\" (touchstart)=\"handleTouchDown($event)\" class=\"ax-drag-handle-container\">\n <div class=\"ax-drag-handle\"></div>\n </div>\n}\n@if (data().header) {\n <ax-header\n [class.draggable-header]=\"data().draggable\"\n (mousedown)=\"data().draggable ? handleMouseDown($event) : null\"\n (touchstart)=\"data().draggable ? handleTouchDown($event) : null\"\n >\n <ax-prefix>\n <ax-title class=\"line-clamp-1\">{{ data().title | translate | async }}</ax-title>\n\n @if (data().subTitle) {\n <ax-subtitle class=\"line-clamp-2\">\n {{ data().subTitle }}\n </ax-subtitle>\n }\n </ax-prefix>\n @if (data().closeButton) {\n <ax-suffix>\n <ax-close-button></ax-close-button>\n </ax-suffix>\n }\n </ax-header>\n}\n@if (data().content) {\n @if (templateContent()) {\n <ng-container *ngTemplateOutlet=\"templateContent(); context: templateContext()\"></ng-container>\n }\n <!-- Component content container - always present but only populated when componentContent() is truthy -->\n <ng-container #contentContainer></ng-container>\n}\n\n<div class=\"ax-action-list ax-action-list-vertical\">\n @for (item of data().items; let i = $index; track i) {\n @if (item.group?.title) {\n <ax-title>{{ item.group?.title }}</ax-title>\n }\n <div\n class=\"ax-action-item ax-{{ item.color || 'default' }}\"\n [class.ax-state-disabled]=\"item.disabled\"\n [tabindex]=\"i\"\n (click)=\"onItemClick(item)\"\n >\n <div class=\"ax-action-item-prefix\">\n @if (item.icon) {\n <span class=\"ax-item-icon\" [class]=\"item.icon\"></span>\n }\n <ax-text>{{ item.text | translate | async }}</ax-text>\n </div>\n <div class=\"ax-action-item-suffix\"></div>\n </div>\n @if (item.break) {\n <ax-divider></ax-divider>\n }\n }\n</div>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-font-weight:initial}}}@layer components{ax-action-sheet{background-color:rgba(var(--ax-sys-color-lightest-surface));width:100vw;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));display:block;position:relative}@media(min-width:48rem){ax-action-sheet{width:70vw}}@media(min-width:64rem){ax-action-sheet{width:50vw}}ax-action-sheet:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-darker-surface))}ax-action-sheet .ax-drag-handle-container{padding-top:calc(var(--spacing,.25rem) * 2)}ax-action-sheet .ax-drag-handle-container .ax-drag-handle{height:calc(var(--spacing,.25rem) * 1);width:calc(var(--spacing,.25rem) * 12);border-radius:var(--radius-lg,.5rem);background-color:rgba(var(--ax-sys-color-surface));margin:auto}ax-action-sheet ax-header{border-bottom-style:var(--tw-border-style);padding:calc(var(--spacing,.25rem) * 4);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);border-bottom-width:1px}@media(min-width:48rem){ax-action-sheet ax-header{font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)))}}ax-action-sheet ax-header.draggable-header{padding-top:calc(var(--spacing,.25rem) * 0);-webkit-user-select:none;user-select:none}ax-action-sheet ax-header ax-prefix,ax-action-sheet ax-header ax-suffix{flex-direction:column;justify-content:flex-start;display:flex}ax-action-sheet ax-header ax-prefix{align-items:flex-start}ax-action-sheet ax-header ax-prefix ax-title{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}ax-action-sheet ax-header ax-suffix{align-items:flex-end;max-width:fit-content}ax-action-sheet .ax-action-list{max-height:100vh;overflow-y:auto}ax-action-sheet .ax-action-list ax-title{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)))}ax-action-sheet .ax-action-list .ax-action-item{color:var(--ax-comp-bg);min-height:calc(var(--spacing,.25rem) * 14)!important;font-size:var(--text-base,1rem)!important;line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ))!important}ax-action-sheet .ax-action-list .ax-action-item:hover:not(ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-selected){background-color:var(--ax-comp-bg)!important}@supports (color:color-mix(in lab,red,red)){ax-action-sheet .ax-action-list .ax-action-item:hover:not(ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-selected){background-color:color-mix(in oklab,var(--ax-comp-bg) 10%,transparent)!important}}ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover:not(ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover.ax-state-selected){background-color:rgba(var(--ax-sys-color-surface))!important}ax-action-sheet .ax-action-list .ax-action-item .ax-item-icon{font-size:var(--text-2xl,1.5rem)!important;line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)))!important;margin-inline-end:calc(var(--spacing,.25rem) * 3)!important}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:\"*\";inherits:false}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["closeAll", "icon"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
527
527
  }
528
528
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXActionSheetComponent, decorators: [{
529
529
  type: Component,
@@ -545,7 +545,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
545
545
  NgTemplateOutlet,
546
546
  AXTranslatorPipe,
547
547
  AsyncPipe,
548
- ], template: "@if (data().draggable) {\n <div (mousedown)=\"handleMouseDown($event)\" (touchstart)=\"handleTouchDown($event)\" class=\"ax-drag-handle-container\">\n <div class=\"ax-drag-handle\"></div>\n </div>\n}\n@if (data().header) {\n <ax-header\n [class.draggable-header]=\"data().draggable\"\n (mousedown)=\"data().draggable ? handleMouseDown($event) : null\"\n (touchstart)=\"data().draggable ? handleTouchDown($event) : null\"\n >\n <ax-prefix>\n <ax-title class=\"line-clamp-1\">{{ data().title | translate | async }}</ax-title>\n\n @if (data().subTitle) {\n <ax-subtitle class=\"line-clamp-2\">\n {{ data().subTitle }}\n </ax-subtitle>\n }\n </ax-prefix>\n @if (data().closeButton) {\n <ax-suffix>\n <ax-close-button></ax-close-button>\n </ax-suffix>\n }\n </ax-header>\n}\n@if (data().content) {\n @if (templateContent()) {\n <ng-container *ngTemplateOutlet=\"templateContent(); context: templateContext()\"></ng-container>\n }\n <!-- Component content container - always present but only populated when componentContent() is truthy -->\n <ng-container #contentContainer></ng-container>\n}\n\n<div class=\"ax-action-list ax-action-list-vertical\">\n @for (item of data().items; let i = $index; track i) {\n @if (item.group?.title) {\n <ax-title>{{ item.group?.title }}</ax-title>\n }\n <div\n class=\"ax-action-item ax-{{ item.color || 'default' }}\"\n [class.ax-state-disabled]=\"item.disabled\"\n [tabindex]=\"i\"\n (click)=\"onItemClick(item)\"\n >\n <div class=\"ax-action-item-prefix\">\n @if (item.icon) {\n <span class=\"ax-item-icon\" [class]=\"item.icon\"></span>\n }\n <ax-text>{{ item.text | translate | async }}</ax-text>\n </div>\n <div class=\"ax-action-item-suffix\"></div>\n </div>\n @if (item.break) {\n <ax-divider></ax-divider>\n }\n }\n</div>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-font-weight:initial}}}@layer components{ax-action-sheet{background-color:var(--color-lightest,rgba(var(--ax-sys-color-lightest-surface)));width:100vw;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));display:block;position:relative}@media(min-width:48rem){ax-action-sheet{width:70vw}}@media(min-width:64rem){ax-action-sheet{width:50vw}}ax-action-sheet:where(.dark,.dark *){background-color:var(--color-darker,rgba(var(--ax-sys-color-darker-surface)))}ax-action-sheet .ax-drag-handle-container{padding-top:calc(var(--spacing,.25rem) * 2)}ax-action-sheet .ax-drag-handle-container .ax-drag-handle{height:calc(var(--spacing,.25rem) * 1);width:calc(var(--spacing,.25rem) * 12);border-radius:var(--radius-lg,.5rem);background-color:var(--color-surface,rgba(var(--ax-sys-color-surface)));margin:auto}ax-action-sheet ax-header{border-bottom-style:var(--tw-border-style);padding:calc(var(--spacing,.25rem) * 4);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);border-bottom-width:1px}@media(min-width:48rem){ax-action-sheet ax-header{font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)))}}ax-action-sheet ax-header.draggable-header{padding-top:calc(var(--spacing,.25rem) * 0);-webkit-user-select:none;user-select:none}ax-action-sheet ax-header ax-prefix,ax-action-sheet ax-header ax-suffix{flex-direction:column;justify-content:flex-start;display:flex}ax-action-sheet ax-header ax-prefix{align-items:flex-start}ax-action-sheet ax-header ax-prefix ax-title{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}ax-action-sheet ax-header ax-suffix{align-items:flex-end;max-width:fit-content}ax-action-sheet .ax-action-list{max-height:100vh;overflow-y:auto}ax-action-sheet .ax-action-list ax-title{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)))}ax-action-sheet .ax-action-list .ax-action-item{color:var(--ax-comp-bg);min-height:calc(var(--spacing,.25rem) * 14)!important;font-size:var(--text-base,1rem)!important;line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ))!important}ax-action-sheet .ax-action-list .ax-action-item:hover:not(ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-selected){background-color:var(--ax-comp-bg)!important}@supports (color:color-mix(in lab,red,red)){ax-action-sheet .ax-action-list .ax-action-item:hover:not(ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-selected){background-color:color-mix(in oklab,var(--ax-comp-bg) 10%,transparent)!important}}ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover:not(ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover.ax-state-selected){background-color:var(--color-surface,rgba(var(--ax-sys-color-surface)))!important}ax-action-sheet .ax-action-list .ax-action-item .ax-item-icon{font-size:var(--text-2xl,1.5rem)!important;line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)))!important;margin-inline-end:calc(var(--spacing,.25rem) * 3)!important}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:\"*\";inherits:false}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"] }]
548
+ ], template: "@if (data().draggable) {\n <div (mousedown)=\"handleMouseDown($event)\" (touchstart)=\"handleTouchDown($event)\" class=\"ax-drag-handle-container\">\n <div class=\"ax-drag-handle\"></div>\n </div>\n}\n@if (data().header) {\n <ax-header\n [class.draggable-header]=\"data().draggable\"\n (mousedown)=\"data().draggable ? handleMouseDown($event) : null\"\n (touchstart)=\"data().draggable ? handleTouchDown($event) : null\"\n >\n <ax-prefix>\n <ax-title class=\"line-clamp-1\">{{ data().title | translate | async }}</ax-title>\n\n @if (data().subTitle) {\n <ax-subtitle class=\"line-clamp-2\">\n {{ data().subTitle }}\n </ax-subtitle>\n }\n </ax-prefix>\n @if (data().closeButton) {\n <ax-suffix>\n <ax-close-button></ax-close-button>\n </ax-suffix>\n }\n </ax-header>\n}\n@if (data().content) {\n @if (templateContent()) {\n <ng-container *ngTemplateOutlet=\"templateContent(); context: templateContext()\"></ng-container>\n }\n <!-- Component content container - always present but only populated when componentContent() is truthy -->\n <ng-container #contentContainer></ng-container>\n}\n\n<div class=\"ax-action-list ax-action-list-vertical\">\n @for (item of data().items; let i = $index; track i) {\n @if (item.group?.title) {\n <ax-title>{{ item.group?.title }}</ax-title>\n }\n <div\n class=\"ax-action-item ax-{{ item.color || 'default' }}\"\n [class.ax-state-disabled]=\"item.disabled\"\n [tabindex]=\"i\"\n (click)=\"onItemClick(item)\"\n >\n <div class=\"ax-action-item-prefix\">\n @if (item.icon) {\n <span class=\"ax-item-icon\" [class]=\"item.icon\"></span>\n }\n <ax-text>{{ item.text | translate | async }}</ax-text>\n </div>\n <div class=\"ax-action-item-suffix\"></div>\n </div>\n @if (item.break) {\n <ax-divider></ax-divider>\n }\n }\n</div>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-font-weight:initial}}}@layer components{ax-action-sheet{background-color:rgba(var(--ax-sys-color-lightest-surface));width:100vw;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));display:block;position:relative}@media(min-width:48rem){ax-action-sheet{width:70vw}}@media(min-width:64rem){ax-action-sheet{width:50vw}}ax-action-sheet:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-darker-surface))}ax-action-sheet .ax-drag-handle-container{padding-top:calc(var(--spacing,.25rem) * 2)}ax-action-sheet .ax-drag-handle-container .ax-drag-handle{height:calc(var(--spacing,.25rem) * 1);width:calc(var(--spacing,.25rem) * 12);border-radius:var(--radius-lg,.5rem);background-color:rgba(var(--ax-sys-color-surface));margin:auto}ax-action-sheet ax-header{border-bottom-style:var(--tw-border-style);padding:calc(var(--spacing,.25rem) * 4);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);border-bottom-width:1px}@media(min-width:48rem){ax-action-sheet ax-header{font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)))}}ax-action-sheet ax-header.draggable-header{padding-top:calc(var(--spacing,.25rem) * 0);-webkit-user-select:none;user-select:none}ax-action-sheet ax-header ax-prefix,ax-action-sheet ax-header ax-suffix{flex-direction:column;justify-content:flex-start;display:flex}ax-action-sheet ax-header ax-prefix{align-items:flex-start}ax-action-sheet ax-header ax-prefix ax-title{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}ax-action-sheet ax-header ax-suffix{align-items:flex-end;max-width:fit-content}ax-action-sheet .ax-action-list{max-height:100vh;overflow-y:auto}ax-action-sheet .ax-action-list ax-title{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)))}ax-action-sheet .ax-action-list .ax-action-item{color:var(--ax-comp-bg);min-height:calc(var(--spacing,.25rem) * 14)!important;font-size:var(--text-base,1rem)!important;line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ))!important}ax-action-sheet .ax-action-list .ax-action-item:hover:not(ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-selected){background-color:var(--ax-comp-bg)!important}@supports (color:color-mix(in lab,red,red)){ax-action-sheet .ax-action-list .ax-action-item:hover:not(ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item:hover.ax-state-selected){background-color:color-mix(in oklab,var(--ax-comp-bg) 10%,transparent)!important}}ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover:not(ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover.ax-state-disabled,ax-action-sheet .ax-action-list .ax-action-item.ax-default:hover.ax-state-selected){background-color:rgba(var(--ax-sys-color-surface))!important}ax-action-sheet .ax-action-list .ax-action-item .ax-item-icon{font-size:var(--text-2xl,1.5rem)!important;line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)))!important;margin-inline-end:calc(var(--spacing,.25rem) * 3)!important}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:\"*\";inherits:false}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"] }]
549
549
  }], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: true }] }], onClose: [{ type: i0.Input, args: [{ isSignal: true, alias: "onClose", required: false }] }], overlayRef: [{ type: i0.Input, args: [{ isSignal: true, alias: "overlayRef", required: false }] }], __actionSheetRef__: [{ type: i0.Input, args: [{ isSignal: true, alias: "__actionSheetRef__", required: false }] }], contentContainerRef: [{
550
550
  type: ViewChild,
551
551
  args: ['contentContainer', { read: ViewContainerRef }]
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-action-sheet.mjs","sources":["../../../../packages/components/action-sheet/src/lib/action-sheet.class.ts","../../../../packages/components/action-sheet/src/lib/action-sheet.service.ts","../../../../packages/components/action-sheet/src/lib/action-sheet.component.ts","../../../../packages/components/action-sheet/src/lib/action-sheet.component.html","../../../../packages/components/action-sheet/src/lib/action-sheet.module.ts","../../../../packages/components/action-sheet/src/acorex-components-action-sheet.ts"],"sourcesContent":["import { AXComponentCloseEvent, AXStyleColorType } from '@acorex/cdk/common';\nimport { AXOverlayRef } from '@acorex/cdk/overlay';\nimport { AXComponentInputs } from '@acorex/core/components';\nimport { Directive, input, TemplateRef, Type } from '@angular/core';\nimport { Subject } from 'rxjs';\n\nexport interface AXActionSheetItem {\n name?: string;\n text: string;\n icon?: string;\n disabled?: boolean;\n color?: AXStyleColorType;\n onClick?: () => void;\n suffix?: {\n text: string;\n };\n break?: boolean;\n group?: {\n name?: string;\n title?: string;\n };\n}\n\nexport type AXActionSheetContentType = TemplateRef<unknown> | Type<unknown>;\n\nexport interface AXActionSheetConfig {\n title?: string;\n subTitle?: string;\n closeButton?: boolean;\n header?: boolean;\n /** @deprecated Use `inputs` instead to pass data to the action sheet content component. */\n data?: unknown;\n /** Input values to pass to the content component */\n inputs?: unknown;\n closeOnBackdropClick?: boolean;\n items?: AXActionSheetItem[];\n content?: AXActionSheetContentType;\n draggable?: boolean;\n dragUp?: boolean;\n}\n\n/**\n * Reference to an open action sheet, providing methods to interact with it.\n */\nexport interface AXActionSheetRef<TResult = unknown> {\n /** Closes the action sheet with optional result data */\n close: (data?: TResult) => void;\n /** Sets input values on the content component */\n setInputs: (values: AXComponentInputs) => void;\n /** Observable that emits when the action sheet is closed */\n onClose: Subject<TResult>;\n}\n\n/**\n * Base class for components that are displayed inside an action sheet.\n * Extend this class to get access to the action sheet reference and helper methods.\n *\n * @example\n * ```typescript\n * @Component({...})\n * export class MyActionSheetContent extends AXActionSheetComponentBase {\n * save() {\n * this.close({ saved: true });\n * }\n * }\n * ```\n */\n@Directive()\nexport abstract class AXActionSheetComponentBase {\n /** Reference to the parent action sheet */\n __actionSheet__ = input<AXActionSheetRef>();\n\n /**\n * Closes the action sheet with optional result data.\n * @param data - Optional data to pass to the close handler\n */\n close(data: any = null) {\n this.__actionSheet__()?.close(data);\n }\n}\n\nexport interface AXActionSheetEvent {\n overlayRef?: AXOverlayRef<unknown>;\n nativeEvent?: Event;\n isUserInteraction: boolean;\n data: {\n state: 'open' | 'close' | 'dragStart' | 'dragEnd' | 'fullScreen' | 'normalSize';\n };\n}\n\n/**\n * @internal\n * Internal reference used by action sheet service to manage overlay instances\n */\nexport interface AXActionSheetInternalRef {\n overlayRef: AXOverlayRef<unknown>;\n close: (result?: AXComponentCloseEvent) => void;\n}\n","import { AXComponentCloseEvent } from '@acorex/cdk/common';\nimport { AXOverlayService } from '@acorex/cdk/overlay';\nimport { AXComponentInputs } from '@acorex/core/components';\nimport { ComponentRef, inject, Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport {\n AXActionSheetConfig,\n AXActionSheetEvent,\n AXActionSheetInternalRef,\n AXActionSheetRef,\n} from './action-sheet.class';\nimport { AXActionSheetComponent } from './action-sheet.component';\n\n/**\n * @deprecated Use `AXActionSheetRef` instead\n */\nexport interface AXActionSheetDialogRef<TResult = unknown> {\n close: (e?: TResult) => void;\n setInputs: (values: AXComponentInputs) => void;\n closed: Subject<{ data?: TResult }>;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXActionSheetService {\n private overlayService = inject(AXOverlayService);\n private readonly actionSheetEvent = new Subject<AXActionSheetEvent>();\n actionSheetEvent$ = this.actionSheetEvent.asObservable();\n\n /**\n * Opens an action sheet with the specified configuration.\n * This method creates and displays an action sheet component with the provided options.\n * The action sheet will slide up from the bottom of the screen and can be dismissed\n * by tapping outside, pressing escape, or calling the close method.\n *\n * @param config - The configuration object that defines the action sheet's appearance and behavior.\n * Must include at least a title or content property. Will be merged with default config.\n * @param isUserInteraction - Whether the action sheet is opened by user interaction (default: true).\n * This affects how the action sheet handles accessibility and focus management.\n * @returns A promise that resolves to a dialog reference containing methods to control the action sheet.\n * The reference includes methods like close(), setInputs() and a closed observable for tracking dialog state.\n * @example\n * ```typescript\n * const dialogRef = await actionSheetService.open({\n * title: 'Choose an option',\n * content: MyCustomComponent,\n * inputs: { userId: 123, userName: 'John' }\n * });\n *\n * // Update inputs dynamically\n * dialogRef.setInputs({ userName: 'Jane' });\n *\n * dialogRef.closed.subscribe(result => {\n * console.log('Action sheet closed with:', result.data);\n * });\n * ```\n */\n async open<TResult = any>(config: AXActionSheetConfig, isUserInteraction = true): Promise<AXActionSheetRef<TResult>> {\n const defaultConfig: AXActionSheetConfig = {\n title: 'action-sheet.title',\n closeButton: true,\n closeOnBackdropClick: true,\n header: true,\n };\n config = Object.assign(defaultConfig, config);\n\n const closed = new Subject<{ data?: TResult }>();\n const onClose = new Subject<TResult>();\n // Using let because internalRef is assigned after overlayRef is created\n // eslint-disable-next-line prefer-const\n let internalRef: AXActionSheetInternalRef;\n\n const closeActionSheet = (result?: AXComponentCloseEvent) => {\n if (internalRef) {\n internalRef.overlayRef.dispose();\n onClose.next(result?.data as TResult);\n onClose.complete();\n if (result?.data) {\n closed.next({ data: result.data as TResult });\n } else {\n closed.next({});\n }\n closed.complete();\n }\n };\n\n // Create the action sheet reference that will be passed to content components\n const actionSheetRef: AXActionSheetRef<TResult> = {\n close: (data?: TResult) => {\n const component = internalRef?.overlayRef.instance;\n if (component && 'close' in component) {\n (component as unknown as AXActionSheetComponent).close(data);\n } else {\n closeActionSheet({ data } as AXComponentCloseEvent);\n }\n },\n setInputs: (values: AXComponentInputs) => {\n const ref = internalRef?.overlayRef.instance;\n if (ref && ref instanceof ComponentRef) {\n const componentInstance = ref.instance as AXActionSheetComponent;\n componentInstance.setContentInputs(values);\n } else if (ref && 'setContentInputs' in ref) {\n (ref as unknown as AXActionSheetComponent).setContentInputs(values);\n }\n },\n onClose,\n };\n\n const overlayRef = await this.overlayService.create<AXActionSheetComponent>(AXActionSheetComponent, {\n inputs: {\n data: config,\n onClose: closeActionSheet,\n __actionSheetRef__: actionSheetRef,\n },\n centered: false,\n panelClass: ['ax-action-sheet-panel'],\n backdrop: {\n enabled: true,\n background: true,\n closeOnClick: config.closeOnBackdropClick,\n },\n onDispose: () => {\n // Clean up when disposed externally (e.g., backdrop click)\n closed.next({});\n closed.complete();\n },\n });\n\n internalRef = {\n overlayRef,\n close: closeActionSheet,\n };\n\n // Set the overlayRef input after creation\n if (overlayRef.instance && 'setInput' in overlayRef.instance) {\n (overlayRef.instance as { setInput: (name: string, value: unknown) => void }).setInput('overlayRef', overlayRef);\n }\n\n // Positioning is handled by CSS via .ax-action-sheet-panel class\n\n this.actionSheetEvent.next({\n overlayRef,\n data: { state: 'open' },\n isUserInteraction,\n });\n\n const axDialogRef: AXActionSheetRef<TResult> = {\n close: actionSheetRef.close,\n setInputs: actionSheetRef.setInputs,\n onClose: actionSheetRef.onClose,\n };\n\n return axDialogRef;\n }\n\n /**\n * Sets the current state of action sheet events.\n * This method is used internally to track action sheet lifecycle events such as open, close,\n * drag start, drag end, and full screen transitions. It emits events through the actionSheetEvent$\n * observable for external subscribers to monitor action sheet state changes.\n *\n * @param event - The action sheet event to emit. Contains information about the event type,\n * associated data, user interaction status, and overlay reference.\n * @returns void\n */\n setActionSheetEventState(event: AXActionSheetEvent): void {\n this.actionSheetEvent.next(event);\n }\n}\n","import {\n AXClosableComponent,\n AXComponent,\n AXComponentCloseEvent,\n AXFocusableComponent,\n MXBaseComponent,\n} from '@acorex/cdk/common';\nimport { AXOverlayRef } from '@acorex/cdk/overlay';\nimport { AXDecoratorCloseButtonComponent, AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXComponentInputs, AXComponentType } from '@acorex/core/components';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { AsyncPipe, isPlatformBrowser, NgTemplateOutlet } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ComponentRef,\n computed,\n DOCUMENT,\n inject,\n input,\n OnDestroy,\n OnInit,\n PLATFORM_ID,\n Renderer2,\n signal,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXActionSheetConfig, AXActionSheetItem, AXActionSheetRef } from './action-sheet.class';\nimport { AXActionSheetService } from './action-sheet.service';\n\n/**\n * A component for displaying an action sheet, which is a menu that slides up from the bottom of the screen.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-action-sheet',\n templateUrl: './action-sheet.component.html',\n styleUrls: ['./action-sheet.component.compiled.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '(keydown.escape)': 'onKeydownHandler()',\n },\n providers: [\n { provide: AXComponent, useExisting: AXActionSheetComponent },\n {\n provide: AXClosableComponent,\n useExisting: AXActionSheetComponent,\n },\n {\n provide: AXFocusableComponent,\n useExisting: AXActionSheetComponent,\n },\n ],\n imports: [\n AXDecoratorGenericComponent,\n AXDecoratorCloseButtonComponent,\n NgTemplateOutlet,\n AXTranslatorPipe,\n AsyncPipe,\n ],\n})\nexport class AXActionSheetComponent extends MXBaseComponent implements OnInit, AfterViewInit, OnDestroy {\n /** Action sheet configuration data */\n data = input.required<AXActionSheetConfig>();\n\n /** @internal Callback function to close the action sheet */\n onClose = input<(result?: AXComponentCloseEvent) => void>();\n\n /** @internal Overlay reference for event tracking */\n overlayRef = input<AXOverlayRef<unknown>>();\n\n /** @internal Reference to the action sheet for content components */\n __actionSheetRef__ = input<AXActionSheetRef>();\n\n @ViewChild('contentContainer', { read: ViewContainerRef })\n private contentContainerRef: ViewContainerRef;\n\n private document = inject(DOCUMENT);\n private platformID = inject(PLATFORM_ID);\n private renderer = inject(Renderer2);\n private actionSheetService = inject(AXActionSheetService);\n\n private onMouseMoveListenerFn = () => undefined;\n private onMouseUpListenerFn = () => undefined;\n private onTouchMoveListenerFn = () => undefined;\n private onTouchUpListenerFn = () => undefined;\n\n private isDragging = signal(false);\n private isFullScreen = signal(false);\n private curserOffset = signal(0);\n private actionSheetHeight = signal(0);\n private isActionSheetHeightSet = signal(false);\n private transitionDuration = signal(300);\n\n /**\n * @ignore\n */\n private _componentRef: ComponentRef<unknown> | null = null;\n\n /** Template content if data.content is a TemplateRef */\n protected templateContent = computed(() => {\n const content = this.data().content;\n return content instanceof TemplateRef ? content : null;\n });\n\n /** Component content if data.content is a component Type */\n protected componentContent = computed(() => {\n const content = this.data().content;\n return typeof content === 'function' ? (content as AXComponentType<unknown>) : null;\n });\n\n /** Template context for ngTemplateOutlet */\n protected templateContext = computed((): { $implicit: AXActionSheetConfig; ref: AXActionSheetComponent } => ({\n $implicit: this.data(),\n ref: this,\n }));\n\n /** Whether content has been rendered (for component content) */\n protected isContentRendered = signal(false);\n\n /**\n * @ignore\n */\n override ngOnInit(): void {\n super.ngOnInit();\n\n // Enter animation: start with height 0 and animate to natural height\n if (isPlatformBrowser(this.platformID)) {\n const hostElement = this.getHostElement();\n hostElement.style.height = '0';\n hostElement.style.overflow = 'hidden';\n\n // Use requestAnimationFrame to ensure the initial height is applied before animating\n requestAnimationFrame(() => {\n hostElement.style.transitionDuration = `${this.transitionDuration()}ms`;\n hostElement.style.height = 'auto';\n // Get the natural height\n const naturalHeight = hostElement.scrollHeight;\n hostElement.style.height = '0';\n\n requestAnimationFrame(() => {\n hostElement.style.height = `${naturalHeight}px`;\n // After animation completes, set height to auto for flexibility\n setTimeout(() => {\n hostElement.style.height = 'auto';\n hostElement.style.overflow = '';\n }, this.transitionDuration());\n });\n });\n }\n\n if (isPlatformBrowser(this.platformID) && this.data().draggable) {\n this.onMouseMoveListenerFn = this.renderer.listen(this.document, 'mousemove', (e) => {\n if (this.isDragging()) {\n e.preventDefault();\n this.getHostElement().style.height = `${this.heightCalculator(e.clientY) + this.curserOffset()}px`;\n }\n });\n this.onTouchMoveListenerFn = this.renderer.listen(this.document, 'touchmove', (e) => {\n if (this.isDragging()) {\n e.preventDefault();\n this.getHostElement().style.height = `${this.heightCalculator(e.touches[0].clientY) + this.curserOffset()}px`;\n }\n });\n this.onMouseUpListenerFn = this.renderer.listen(this.document, 'mouseup', (e) => {\n if (this.isDragging()) {\n this.isDragging.set(false);\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragEnd' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n this.snapToFinalPosition();\n }\n });\n this.onTouchUpListenerFn = this.renderer.listen(this.document, 'touchend', (e) => {\n if (this.isDragging()) {\n this.isDragging.set(false);\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragEnd' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n this.snapToFinalPosition();\n }\n });\n }\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit(): void {\n // Render component content after view is initialized (ViewChild is available)\n this.renderComponentContent();\n }\n\n /**\n * Renders the component content if provided.\n * Uses ViewContainerRef to create the component and properly set inputs.\n */\n private renderComponentContent(): void {\n const componentType = this.componentContent();\n if (!componentType || !this.contentContainerRef) return;\n\n const config = this.data();\n\n // Create the component using ViewContainerRef\n const componentRef = this.contentContainerRef.createComponent(componentType);\n this._componentRef = componentRef;\n\n // Get component input definitions to check before setting inputs\n const inputDefs = (componentRef.componentType as unknown as { ɵcmp?: { inputs?: Record<string, unknown> } })?.ɵcmp\n ?.inputs;\n\n // Set data inputs (legacy support - deprecated)\n if (config?.data && typeof config.data === 'object') {\n Object.entries(config.data).forEach(([key, value]) => {\n (componentRef.instance as Record<string, unknown>)[key] = value;\n });\n }\n\n // Set inputs using setInput for proper change detection\n if (config?.inputs && typeof config.inputs === 'object') {\n Object.entries(config.inputs).forEach(([key, value]) => {\n if (inputDefs && key in inputDefs) {\n componentRef.setInput(key, value);\n }\n });\n }\n\n // Set action sheet reference (only if the component has this input)\n if (inputDefs && '__actionSheet__' in inputDefs) {\n componentRef.setInput('__actionSheet__', this.__actionSheetRef__());\n }\n\n // Subscribe to close event if available\n const instance = componentRef.instance as {\n onClosed?: { subscribe: (fn: (e: AXComponentCloseEvent) => void) => void };\n };\n if (instance.onClosed) {\n instance.onClosed.subscribe((e: AXComponentCloseEvent) => {\n this.close(e);\n });\n }\n\n this.isContentRendered.set(true);\n this.cdr.markForCheck();\n }\n\n /**\n * Sets input values on the content component.\n * @param values - Object containing input values to set\n */\n setContentInputs(values: AXComponentInputs): void {\n if (this._componentRef) {\n Object.entries(values).forEach(([key, value]) => {\n this._componentRef.setInput(key, value);\n });\n }\n }\n\n ngOnDestroy(): void {\n this.onMouseMoveListenerFn();\n this.onMouseUpListenerFn();\n this.onTouchMoveListenerFn();\n this.onTouchUpListenerFn();\n\n // Clean up component reference\n if (this._componentRef) {\n this._componentRef.destroy();\n this._componentRef = null;\n }\n }\n\n protected handleMouseDown(e: MouseEvent) {\n if (!this.data().draggable || e.button !== 0) return;\n e.preventDefault();\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragStart' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n this.handleDown(e.clientY);\n }\n\n protected handleTouchDown(e: TouchEvent) {\n if (!this.data().draggable || (e.target as HTMLElement).className.includes('close')) return;\n e.preventDefault();\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragStart' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n this.handleDown(e.touches[0].clientY);\n }\n\n private handleDown(clientY: number) {\n this.isDragging.set(true);\n this.getHostElement().style.transitionDuration = '0ms';\n\n if (isPlatformBrowser(this.platformID)) {\n this.curserOffset.set(\n clientY - (this.document.documentElement.clientHeight - this.getHostElement().clientHeight),\n );\n }\n\n if (!this.isActionSheetHeightSet()) {\n this.actionSheetHeight.set(this.getHostElement().clientHeight);\n this.isActionSheetHeightSet.set(true);\n }\n }\n\n private snapToFinalPosition(): void {\n this.getHostElement().style.transitionDuration = `${this.transitionDuration()}ms`;\n const currentHeight = this.getHostElement().clientHeight;\n const initialHeight = this.actionSheetHeight();\n const windowHeight = this.document.documentElement.clientHeight;\n\n if (currentHeight < initialHeight * 0.75) {\n this.close(null);\n return;\n }\n if (this.isFullScreen() && currentHeight < windowHeight * 0.9) {\n this.getHostElement().style.height = `${initialHeight}px`;\n this.isFullScreen.set(false);\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'normalSize' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n return;\n }\n if (this.data().dragUp && currentHeight > (windowHeight + initialHeight) / 3) {\n this.getHostElement().style.height = '100vh';\n this.isFullScreen.set(true);\n this.document.body.parentElement.style.overscrollBehaviorY = 'contain';\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'fullScreen' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n return;\n }\n this.getHostElement().style.height = `${initialHeight}px`;\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'normalSize' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n }\n\n private heightCalculator(clientY: number): number {\n if (this.data().dragUp) {\n return this.document.documentElement.clientHeight - clientY;\n }\n if (clientY >= this.document.documentElement.clientHeight - this.actionSheetHeight()) {\n return this.document.documentElement.clientHeight - clientY;\n }\n return (\n this.actionSheetHeight() + (this.document.documentElement.clientHeight - clientY - this.actionSheetHeight()) / 10\n );\n }\n\n /**\n * Handles click events on action sheet items.\n * This method is called when a user clicks on an action sheet item. It closes the action sheet\n * with the clicked item as the result data and executes the item's onClick callback if provided.\n *\n * @param item - The action sheet item that was clicked. Contains the item's data and optional onClick callback.\n * @returns void\n */\n onItemClick(item: AXActionSheetItem): void {\n this.close(item);\n if (item?.onClick) item.onClick();\n }\n\n /**\n * Closes the action sheet with optional result data.\n * This method initiates the closing animation of the action sheet and eventually closes the dialog.\n * The closing process includes a height animation and cleanup of event listeners.\n *\n * @param e - The result data to pass when closing the action sheet. Can be any value including null.\n * If an AXActionSheetItem is passed, it represents the selected item.\n * @param isUserInteraction - Whether the close action was triggered by user interaction (default: true).\n * This affects how the action sheet handles accessibility and event tracking.\n * @returns void\n */\n close(e: unknown = null, isUserInteraction = true): void {\n this.getHostElement().style.height = `${this.getHostElement().clientHeight}px`;\n setTimeout(() => {\n this.getHostElement().style.height = '0vh';\n });\n setTimeout(() => {\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'close' },\n isUserInteraction,\n overlayRef: this.overlayRef(),\n });\n const closeCallback = this.onClose();\n if (closeCallback) {\n closeCallback({\n component: this._componentRef?.instance,\n htmlElement: this.getHostElement(),\n data: e,\n });\n }\n }, this.transitionDuration());\n }\n\n /**\n * @ignore\n */\n protected onKeydownHandler() {\n const focusedOrHasFocused = this.getHostElement().matches(':focus-within');\n if (this.data().closeButton && focusedOrHasFocused) {\n this.close(null);\n }\n }\n}\n","@if (data().draggable) {\n <div (mousedown)=\"handleMouseDown($event)\" (touchstart)=\"handleTouchDown($event)\" class=\"ax-drag-handle-container\">\n <div class=\"ax-drag-handle\"></div>\n </div>\n}\n@if (data().header) {\n <ax-header\n [class.draggable-header]=\"data().draggable\"\n (mousedown)=\"data().draggable ? handleMouseDown($event) : null\"\n (touchstart)=\"data().draggable ? handleTouchDown($event) : null\"\n >\n <ax-prefix>\n <ax-title class=\"line-clamp-1\">{{ data().title | translate | async }}</ax-title>\n\n @if (data().subTitle) {\n <ax-subtitle class=\"line-clamp-2\">\n {{ data().subTitle }}\n </ax-subtitle>\n }\n </ax-prefix>\n @if (data().closeButton) {\n <ax-suffix>\n <ax-close-button></ax-close-button>\n </ax-suffix>\n }\n </ax-header>\n}\n@if (data().content) {\n @if (templateContent()) {\n <ng-container *ngTemplateOutlet=\"templateContent(); context: templateContext()\"></ng-container>\n }\n <!-- Component content container - always present but only populated when componentContent() is truthy -->\n <ng-container #contentContainer></ng-container>\n}\n\n<div class=\"ax-action-list ax-action-list-vertical\">\n @for (item of data().items; let i = $index; track i) {\n @if (item.group?.title) {\n <ax-title>{{ item.group?.title }}</ax-title>\n }\n <div\n class=\"ax-action-item ax-{{ item.color || 'default' }}\"\n [class.ax-state-disabled]=\"item.disabled\"\n [tabindex]=\"i\"\n (click)=\"onItemClick(item)\"\n >\n <div class=\"ax-action-item-prefix\">\n @if (item.icon) {\n <span class=\"ax-item-icon\" [class]=\"item.icon\"></span>\n }\n <ax-text>{{ item.text | translate | async }}</ax-text>\n </div>\n <div class=\"ax-action-item-suffix\"></div>\n </div>\n @if (item.break) {\n <ax-divider></ax-divider>\n }\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { AXActionSheetComponent } from './action-sheet.component';\nimport { AXActionSheetService } from './action-sheet.service';\n\n@NgModule({\n imports: [AXActionSheetComponent],\n exports: [AXActionSheetComponent],\n providers: [AXActionSheetService],\n})\nexport class AXActionSheetModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-action-sheet.mjs","sources":["../../../../packages/components/action-sheet/src/lib/action-sheet.class.ts","../../../../packages/components/action-sheet/src/lib/action-sheet.service.ts","../../../../packages/components/action-sheet/src/lib/action-sheet.component.ts","../../../../packages/components/action-sheet/src/lib/action-sheet.component.html","../../../../packages/components/action-sheet/src/lib/action-sheet.module.ts","../../../../packages/components/action-sheet/src/acorex-components-action-sheet.ts"],"sourcesContent":["import { AXComponentCloseEvent, AXStyleColorType } from '@acorex/cdk/common';\nimport { AXOverlayRef } from '@acorex/cdk/overlay';\nimport { AXComponentInputs } from '@acorex/core/components';\nimport { Directive, input, TemplateRef, Type } from '@angular/core';\nimport { Subject } from 'rxjs';\n\nexport interface AXActionSheetItem {\n name?: string;\n text: string;\n icon?: string;\n disabled?: boolean;\n color?: AXStyleColorType;\n onClick?: () => void;\n suffix?: {\n text: string;\n };\n break?: boolean;\n group?: {\n name?: string;\n title?: string;\n };\n}\n\nexport type AXActionSheetContentType = TemplateRef<unknown> | Type<unknown>;\n\nexport interface AXActionSheetConfig {\n title?: string;\n subTitle?: string;\n closeButton?: boolean;\n header?: boolean;\n /** @deprecated Use `inputs` instead to pass data to the action sheet content component. */\n data?: unknown;\n /** Input values to pass to the content component */\n inputs?: unknown;\n closeOnBackdropClick?: boolean;\n items?: AXActionSheetItem[];\n content?: AXActionSheetContentType;\n draggable?: boolean;\n dragUp?: boolean;\n}\n\n/**\n * Reference to an open action sheet, providing methods to interact with it.\n */\nexport interface AXActionSheetRef<TResult = unknown> {\n /** Closes the action sheet with optional result data */\n close: (data?: TResult) => void;\n /** Sets input values on the content component */\n setInputs: (values: AXComponentInputs) => void;\n /** Observable that emits when the action sheet is closed */\n onClose: Subject<TResult>;\n}\n\n/**\n * Base class for components that are displayed inside an action sheet.\n * Extend this class to get access to the action sheet reference and helper methods.\n *\n * @example\n * ```typescript\n * @Component({...})\n * export class MyActionSheetContent extends AXActionSheetComponentBase {\n * save() {\n * this.close({ saved: true });\n * }\n * }\n * ```\n */\n@Directive()\nexport abstract class AXActionSheetComponentBase {\n /** Reference to the parent action sheet */\n __actionSheet__ = input<AXActionSheetRef>();\n\n /**\n * Closes the action sheet with optional result data.\n * @param data - Optional data to pass to the close handler\n */\n close(data: any = null) {\n this.__actionSheet__()?.close(data);\n }\n}\n\nexport interface AXActionSheetEvent {\n overlayRef?: AXOverlayRef<unknown>;\n nativeEvent?: Event;\n isUserInteraction: boolean;\n data: {\n state: 'open' | 'close' | 'dragStart' | 'dragEnd' | 'fullScreen' | 'normalSize';\n };\n}\n\n/**\n * @internal\n * Internal reference used by action sheet service to manage overlay instances\n */\nexport interface AXActionSheetInternalRef {\n overlayRef: AXOverlayRef<unknown>;\n close: (result?: AXComponentCloseEvent) => void;\n}\n","import { AXComponentCloseEvent } from '@acorex/cdk/common';\nimport { AXOverlayService } from '@acorex/cdk/overlay';\nimport { AXComponentInputs } from '@acorex/core/components';\nimport { ComponentRef, inject, Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport {\n AXActionSheetConfig,\n AXActionSheetEvent,\n AXActionSheetInternalRef,\n AXActionSheetRef,\n} from './action-sheet.class';\nimport { AXActionSheetComponent } from './action-sheet.component';\n\n/**\n * @deprecated Use `AXActionSheetRef` instead\n */\nexport interface AXActionSheetDialogRef<TResult = unknown> {\n close: (e?: TResult) => void;\n setInputs: (values: AXComponentInputs) => void;\n closed: Subject<{ data?: TResult }>;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXActionSheetService {\n private overlayService = inject(AXOverlayService);\n private readonly actionSheetEvent = new Subject<AXActionSheetEvent>();\n actionSheetEvent$ = this.actionSheetEvent.asObservable();\n\n /**\n * Opens an action sheet with the specified configuration.\n * This method creates and displays an action sheet component with the provided options.\n * The action sheet will slide up from the bottom of the screen and can be dismissed\n * by tapping outside, pressing escape, or calling the close method.\n *\n * @param config - The configuration object that defines the action sheet's appearance and behavior.\n * Must include at least a title or content property. Will be merged with default config.\n * @param isUserInteraction - Whether the action sheet is opened by user interaction (default: true).\n * This affects how the action sheet handles accessibility and focus management.\n * @returns A promise that resolves to a dialog reference containing methods to control the action sheet.\n * The reference includes methods like close(), setInputs() and a closed observable for tracking dialog state.\n * @example\n * ```typescript\n * const dialogRef = await actionSheetService.open({\n * title: 'Choose an option',\n * content: MyCustomComponent,\n * inputs: { userId: 123, userName: 'John' }\n * });\n *\n * // Update inputs dynamically\n * dialogRef.setInputs({ userName: 'Jane' });\n *\n * dialogRef.closed.subscribe(result => {\n * console.log('Action sheet closed with:', result.data);\n * });\n * ```\n */\n async open<TResult = any>(config: AXActionSheetConfig, isUserInteraction = true): Promise<AXActionSheetRef<TResult>> {\n const defaultConfig: AXActionSheetConfig = {\n title: 'action-sheet.title',\n closeButton: true,\n closeOnBackdropClick: true,\n header: true,\n };\n config = Object.assign(defaultConfig, config);\n\n const closed = new Subject<{ data?: TResult }>();\n const onClose = new Subject<TResult>();\n // Using let because internalRef is assigned after overlayRef is created\n // eslint-disable-next-line prefer-const\n let internalRef: AXActionSheetInternalRef;\n\n const closeActionSheet = (result?: AXComponentCloseEvent) => {\n if (internalRef) {\n internalRef.overlayRef.dispose();\n onClose.next(result?.data as TResult);\n onClose.complete();\n if (result?.data) {\n closed.next({ data: result.data as TResult });\n } else {\n closed.next({});\n }\n closed.complete();\n }\n };\n\n // Create the action sheet reference that will be passed to content components\n const actionSheetRef: AXActionSheetRef<TResult> = {\n close: (data?: TResult) => {\n const component = internalRef?.overlayRef.instance;\n if (component && 'close' in component) {\n (component as unknown as AXActionSheetComponent).close(data);\n } else {\n closeActionSheet({ data } as AXComponentCloseEvent);\n }\n },\n setInputs: (values: AXComponentInputs) => {\n const ref = internalRef?.overlayRef.instance;\n if (ref && ref instanceof ComponentRef) {\n const componentInstance = ref.instance as AXActionSheetComponent;\n componentInstance.setContentInputs(values);\n } else if (ref && 'setContentInputs' in ref) {\n (ref as unknown as AXActionSheetComponent).setContentInputs(values);\n }\n },\n onClose,\n };\n\n const overlayRef = await this.overlayService.create<AXActionSheetComponent>(AXActionSheetComponent, {\n inputs: {\n data: config,\n onClose: closeActionSheet,\n __actionSheetRef__: actionSheetRef,\n },\n centered: false,\n panelClass: ['ax-action-sheet-panel'],\n backdrop: {\n enabled: true,\n background: true,\n closeOnClick: config.closeOnBackdropClick,\n },\n onDispose: () => {\n // Clean up when disposed externally (e.g., backdrop click)\n closed.next({});\n closed.complete();\n },\n });\n\n internalRef = {\n overlayRef,\n close: closeActionSheet,\n };\n\n // Set the overlayRef input after creation\n if (overlayRef.instance && 'setInput' in overlayRef.instance) {\n (overlayRef.instance as { setInput: (name: string, value: unknown) => void }).setInput('overlayRef', overlayRef);\n }\n\n // Positioning is handled by CSS via .ax-action-sheet-panel class\n\n this.actionSheetEvent.next({\n overlayRef,\n data: { state: 'open' },\n isUserInteraction,\n });\n\n const axDialogRef: AXActionSheetRef<TResult> = {\n close: actionSheetRef.close,\n setInputs: actionSheetRef.setInputs,\n onClose: actionSheetRef.onClose,\n };\n\n return axDialogRef;\n }\n\n /**\n * Sets the current state of action sheet events.\n * This method is used internally to track action sheet lifecycle events such as open, close,\n * drag start, drag end, and full screen transitions. It emits events through the actionSheetEvent$\n * observable for external subscribers to monitor action sheet state changes.\n *\n * @param event - The action sheet event to emit. Contains information about the event type,\n * associated data, user interaction status, and overlay reference.\n * @returns void\n */\n setActionSheetEventState(event: AXActionSheetEvent): void {\n this.actionSheetEvent.next(event);\n }\n}\n","import {\n AXClosableComponent,\n AXComponent,\n AXComponentCloseEvent,\n AXFocusableComponent,\n MXBaseComponent,\n} from '@acorex/cdk/common';\nimport { AXOverlayRef } from '@acorex/cdk/overlay';\nimport { AXDecoratorCloseButtonComponent, AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXComponentInputs, AXComponentType } from '@acorex/core/components';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { AsyncPipe, isPlatformBrowser, NgTemplateOutlet } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ComponentRef,\n computed,\n DOCUMENT,\n inject,\n input,\n OnDestroy,\n OnInit,\n PLATFORM_ID,\n Renderer2,\n signal,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXActionSheetConfig, AXActionSheetItem, AXActionSheetRef } from './action-sheet.class';\nimport { AXActionSheetService } from './action-sheet.service';\n\n/**\n * A component for displaying an action sheet, which is a menu that slides up from the bottom of the screen.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-action-sheet',\n templateUrl: './action-sheet.component.html',\n styleUrls: ['./action-sheet.component.compiled.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '(keydown.escape)': 'onKeydownHandler()',\n },\n providers: [\n { provide: AXComponent, useExisting: AXActionSheetComponent },\n {\n provide: AXClosableComponent,\n useExisting: AXActionSheetComponent,\n },\n {\n provide: AXFocusableComponent,\n useExisting: AXActionSheetComponent,\n },\n ],\n imports: [\n AXDecoratorGenericComponent,\n AXDecoratorCloseButtonComponent,\n NgTemplateOutlet,\n AXTranslatorPipe,\n AsyncPipe,\n ],\n})\nexport class AXActionSheetComponent extends MXBaseComponent implements OnInit, AfterViewInit, OnDestroy {\n /** Action sheet configuration data */\n data = input.required<AXActionSheetConfig>();\n\n /** @internal Callback function to close the action sheet */\n onClose = input<(result?: AXComponentCloseEvent) => void>();\n\n /** @internal Overlay reference for event tracking */\n overlayRef = input<AXOverlayRef<unknown>>();\n\n /** @internal Reference to the action sheet for content components */\n __actionSheetRef__ = input<AXActionSheetRef>();\n\n @ViewChild('contentContainer', { read: ViewContainerRef })\n private contentContainerRef: ViewContainerRef;\n\n private document = inject(DOCUMENT);\n private platformID = inject(PLATFORM_ID);\n private renderer = inject(Renderer2);\n private actionSheetService = inject(AXActionSheetService);\n\n private onMouseMoveListenerFn = () => undefined;\n private onMouseUpListenerFn = () => undefined;\n private onTouchMoveListenerFn = () => undefined;\n private onTouchUpListenerFn = () => undefined;\n\n private isDragging = signal(false);\n private isFullScreen = signal(false);\n private curserOffset = signal(0);\n private actionSheetHeight = signal(0);\n private isActionSheetHeightSet = signal(false);\n private transitionDuration = signal(300);\n\n /**\n * @ignore\n */\n private _componentRef: ComponentRef<unknown> | null = null;\n\n /** Template content if data.content is a TemplateRef */\n protected templateContent = computed(() => {\n const content = this.data().content;\n return content instanceof TemplateRef ? content : null;\n });\n\n /** Component content if data.content is a component Type */\n protected componentContent = computed(() => {\n const content = this.data().content;\n return typeof content === 'function' ? (content as AXComponentType<unknown>) : null;\n });\n\n /** Template context for ngTemplateOutlet */\n protected templateContext = computed((): { $implicit: AXActionSheetConfig; ref: AXActionSheetComponent } => ({\n $implicit: this.data(),\n ref: this,\n }));\n\n /** Whether content has been rendered (for component content) */\n protected isContentRendered = signal(false);\n\n /**\n * @ignore\n */\n override ngOnInit(): void {\n super.ngOnInit();\n\n // Enter animation: start with height 0 and animate to natural height\n if (isPlatformBrowser(this.platformID)) {\n const hostElement = this.getHostElement();\n hostElement.style.height = '0';\n hostElement.style.overflow = 'hidden';\n\n // Use requestAnimationFrame to ensure the initial height is applied before animating\n requestAnimationFrame(() => {\n hostElement.style.transitionDuration = `${this.transitionDuration()}ms`;\n hostElement.style.height = 'auto';\n // Get the natural height\n const naturalHeight = hostElement.scrollHeight;\n hostElement.style.height = '0';\n\n requestAnimationFrame(() => {\n hostElement.style.height = `${naturalHeight}px`;\n // After animation completes, set height to auto for flexibility\n setTimeout(() => {\n hostElement.style.height = 'auto';\n hostElement.style.overflow = '';\n }, this.transitionDuration());\n });\n });\n }\n\n if (isPlatformBrowser(this.platformID) && this.data().draggable) {\n this.onMouseMoveListenerFn = this.renderer.listen(this.document, 'mousemove', (e) => {\n if (this.isDragging()) {\n e.preventDefault();\n this.getHostElement().style.height = `${this.heightCalculator(e.clientY) + this.curserOffset()}px`;\n }\n });\n this.onTouchMoveListenerFn = this.renderer.listen(this.document, 'touchmove', (e) => {\n if (this.isDragging()) {\n e.preventDefault();\n this.getHostElement().style.height = `${this.heightCalculator(e.touches[0].clientY) + this.curserOffset()}px`;\n }\n });\n this.onMouseUpListenerFn = this.renderer.listen(this.document, 'mouseup', (e) => {\n if (this.isDragging()) {\n this.isDragging.set(false);\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragEnd' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n this.snapToFinalPosition();\n }\n });\n this.onTouchUpListenerFn = this.renderer.listen(this.document, 'touchend', (e) => {\n if (this.isDragging()) {\n this.isDragging.set(false);\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragEnd' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n this.snapToFinalPosition();\n }\n });\n }\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit(): void {\n // Render component content after view is initialized (ViewChild is available)\n this.renderComponentContent();\n }\n\n /**\n * Renders the component content if provided.\n * Uses ViewContainerRef to create the component and properly set inputs.\n */\n private renderComponentContent(): void {\n const componentType = this.componentContent();\n if (!componentType || !this.contentContainerRef) return;\n\n const config = this.data();\n\n // Create the component using ViewContainerRef\n const componentRef = this.contentContainerRef.createComponent(componentType);\n this._componentRef = componentRef;\n\n // Get component input definitions to check before setting inputs\n const inputDefs = (componentRef.componentType as unknown as { ɵcmp?: { inputs?: Record<string, unknown> } })?.ɵcmp\n ?.inputs;\n\n // Set data inputs (legacy support - deprecated)\n if (config?.data && typeof config.data === 'object') {\n Object.entries(config.data).forEach(([key, value]) => {\n (componentRef.instance as Record<string, unknown>)[key] = value;\n });\n }\n\n // Set inputs using setInput for proper change detection\n if (config?.inputs && typeof config.inputs === 'object') {\n Object.entries(config.inputs).forEach(([key, value]) => {\n if (inputDefs && key in inputDefs) {\n componentRef.setInput(key, value);\n }\n });\n }\n\n // Set action sheet reference (only if the component has this input)\n if (inputDefs && '__actionSheet__' in inputDefs) {\n componentRef.setInput('__actionSheet__', this.__actionSheetRef__());\n }\n\n // Subscribe to close event if available\n const instance = componentRef.instance as {\n onClosed?: { subscribe: (fn: (e: AXComponentCloseEvent) => void) => void };\n };\n if (instance.onClosed) {\n instance.onClosed.subscribe((e: AXComponentCloseEvent) => {\n this.close(e);\n });\n }\n\n this.isContentRendered.set(true);\n this.cdr.markForCheck();\n }\n\n /**\n * Sets input values on the content component.\n * @param values - Object containing input values to set\n */\n setContentInputs(values: AXComponentInputs): void {\n if (this._componentRef) {\n Object.entries(values).forEach(([key, value]) => {\n this._componentRef.setInput(key, value);\n });\n }\n }\n\n ngOnDestroy(): void {\n this.onMouseMoveListenerFn();\n this.onMouseUpListenerFn();\n this.onTouchMoveListenerFn();\n this.onTouchUpListenerFn();\n\n // Clean up component reference\n if (this._componentRef) {\n this._componentRef.destroy();\n this._componentRef = null;\n }\n }\n\n protected handleMouseDown(e: MouseEvent) {\n if (!this.data().draggable || e.button !== 0) return;\n e.preventDefault();\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragStart' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n this.handleDown(e.clientY);\n }\n\n protected handleTouchDown(e: TouchEvent) {\n if (!this.data().draggable || (e.target as HTMLElement).className.includes('close')) return;\n e.preventDefault();\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragStart' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n this.handleDown(e.touches[0].clientY);\n }\n\n private handleDown(clientY: number) {\n this.isDragging.set(true);\n this.getHostElement().style.transitionDuration = '0ms';\n\n if (isPlatformBrowser(this.platformID)) {\n this.curserOffset.set(\n clientY - (this.document.documentElement.clientHeight - this.getHostElement().clientHeight),\n );\n }\n\n if (!this.isActionSheetHeightSet()) {\n this.actionSheetHeight.set(this.getHostElement().clientHeight);\n this.isActionSheetHeightSet.set(true);\n }\n }\n\n private snapToFinalPosition(): void {\n this.getHostElement().style.transitionDuration = `${this.transitionDuration()}ms`;\n const currentHeight = this.getHostElement().clientHeight;\n const initialHeight = this.actionSheetHeight();\n const windowHeight = this.document.documentElement.clientHeight;\n\n if (currentHeight < initialHeight * 0.75) {\n this.close(null);\n return;\n }\n if (this.isFullScreen() && currentHeight < windowHeight * 0.9) {\n this.getHostElement().style.height = `${initialHeight}px`;\n this.isFullScreen.set(false);\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'normalSize' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n return;\n }\n if (this.data().dragUp && currentHeight > (windowHeight + initialHeight) / 3) {\n this.getHostElement().style.height = '100vh';\n this.isFullScreen.set(true);\n this.document.body.parentElement.style.overscrollBehaviorY = 'contain';\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'fullScreen' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n return;\n }\n this.getHostElement().style.height = `${initialHeight}px`;\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'normalSize' },\n isUserInteraction: true,\n overlayRef: this.overlayRef(),\n });\n }\n\n private heightCalculator(clientY: number): number {\n if (this.data().dragUp) {\n return this.document.documentElement.clientHeight - clientY;\n }\n if (clientY >= this.document.documentElement.clientHeight - this.actionSheetHeight()) {\n return this.document.documentElement.clientHeight - clientY;\n }\n return (\n this.actionSheetHeight() + (this.document.documentElement.clientHeight - clientY - this.actionSheetHeight()) / 10\n );\n }\n\n /**\n * Handles click events on action sheet items.\n * This method is called when a user clicks on an action sheet item. It closes the action sheet\n * with the clicked item as the result data and executes the item's onClick callback if provided.\n *\n * @param item - The action sheet item that was clicked. Contains the item's data and optional onClick callback.\n * @returns void\n */\n onItemClick(item: AXActionSheetItem): void {\n this.close(item);\n if (item?.onClick) item.onClick();\n }\n\n /**\n * Closes the action sheet with optional result data.\n * This method initiates the closing animation of the action sheet and eventually closes the dialog.\n * The closing process includes a height animation and cleanup of event listeners.\n *\n * @param e - The result data to pass when closing the action sheet. Can be any value including null.\n * If an AXActionSheetItem is passed, it represents the selected item.\n * @param isUserInteraction - Whether the close action was triggered by user interaction (default: true).\n * This affects how the action sheet handles accessibility and event tracking.\n * @returns void\n */\n close(e: unknown = null, isUserInteraction = true): void {\n this.getHostElement().style.height = `${this.getHostElement().clientHeight}px`;\n setTimeout(() => {\n this.getHostElement().style.height = '0vh';\n });\n setTimeout(() => {\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'close' },\n isUserInteraction,\n overlayRef: this.overlayRef(),\n });\n const closeCallback = this.onClose();\n if (closeCallback) {\n closeCallback({\n component: this._componentRef?.instance,\n htmlElement: this.getHostElement(),\n data: e,\n });\n }\n }, this.transitionDuration());\n }\n\n /**\n * @ignore\n */\n protected onKeydownHandler() {\n const focusedOrHasFocused = this.getHostElement().matches(':focus-within');\n if (this.data().closeButton && focusedOrHasFocused) {\n this.close(null);\n }\n }\n}\n","@if (data().draggable) {\n <div (mousedown)=\"handleMouseDown($event)\" (touchstart)=\"handleTouchDown($event)\" class=\"ax-drag-handle-container\">\n <div class=\"ax-drag-handle\"></div>\n </div>\n}\n@if (data().header) {\n <ax-header\n [class.draggable-header]=\"data().draggable\"\n (mousedown)=\"data().draggable ? handleMouseDown($event) : null\"\n (touchstart)=\"data().draggable ? handleTouchDown($event) : null\"\n >\n <ax-prefix>\n <ax-title class=\"line-clamp-1\">{{ data().title | translate | async }}</ax-title>\n\n @if (data().subTitle) {\n <ax-subtitle class=\"line-clamp-2\">\n {{ data().subTitle }}\n </ax-subtitle>\n }\n </ax-prefix>\n @if (data().closeButton) {\n <ax-suffix>\n <ax-close-button></ax-close-button>\n </ax-suffix>\n }\n </ax-header>\n}\n@if (data().content) {\n @if (templateContent()) {\n <ng-container *ngTemplateOutlet=\"templateContent(); context: templateContext()\"></ng-container>\n }\n <!-- Component content container - always present but only populated when componentContent() is truthy -->\n <ng-container #contentContainer></ng-container>\n}\n\n<div class=\"ax-action-list ax-action-list-vertical\">\n @for (item of data().items; let i = $index; track i) {\n @if (item.group?.title) {\n <ax-title>{{ item.group?.title }}</ax-title>\n }\n <div\n class=\"ax-action-item ax-{{ item.color || 'default' }}\"\n [class.ax-state-disabled]=\"item.disabled\"\n [tabindex]=\"i\"\n (click)=\"onItemClick(item)\"\n >\n <div class=\"ax-action-item-prefix\">\n @if (item.icon) {\n <span class=\"ax-item-icon\" [class]=\"item.icon\"></span>\n }\n <ax-text>{{ item.text | translate | async }}</ax-text>\n </div>\n <div class=\"ax-action-item-suffix\"></div>\n </div>\n @if (item.break) {\n <ax-divider></ax-divider>\n }\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { AXActionSheetComponent } from './action-sheet.component';\nimport { AXActionSheetService } from './action-sheet.service';\n\n@NgModule({\n imports: [AXActionSheetComponent],\n exports: [AXActionSheetComponent],\n providers: [AXActionSheetService],\n})\nexport class AXActionSheetModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -131,14 +131,14 @@ class AXAlertComponent extends MXColorComponent {
131
131
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: AXAlertComponent, isStandalone: true, selector: "ax-alert", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, timeOut: { classPropertyName: "timeOut", publicName: "timeOut", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { colorChange: "colorChange", onClosed: "onClosed", timeOut: "timeOutChange" }, host: { properties: { "class": "this.__hostClass" } }, providers: [
132
132
  { provide: AXClosableComponent, useExisting: AXAlertComponent },
133
133
  { provide: AXComponent, useExisting: AXAlertComponent },
134
- ], queries: [{ propertyName: "axIcon", first: true, predicate: ["ax-icon"], descendants: true, isSignal: true }, { propertyName: "axTitle", first: true, predicate: ["ax-title"], descendants: true, isSignal: true }, { propertyName: "axContent", first: true, predicate: ["ax-content"], descendants: true, isSignal: true }, { propertyName: "axFooter", first: true, predicate: ["ax-footer"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@if (showInline()) {\n <div class=\"ax-alert-inline\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <div class=\"ax-alert-buttons\">\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container>\n </div>\n} @else {\n <div class=\"ax-alert-block\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-content\">\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"footer\"></ng-container>\n </div>\n <div><ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container></div>\n </div>\n}\n\n@if (timeOut()) {\n <div class=\"ax-alert-progress\" [style.animation-duration.ms]=\"timeOut()\"></div>\n}\n\n<ng-template #buttons>\n <ng-content select=\"ax-button\"> </ng-content>\n</ng-template>\n<ng-template #closeButton>\n <ng-content select=\"ax-close-button\"> </ng-content>\n</ng-template>\n<ng-template #title>\n <ng-content select=\"ax-title\"> </ng-content>\n</ng-template>\n<ng-template #icon>\n <ng-content select=\"ax-icon\"> </ng-content>\n</ng-template>\n<ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n</ng-template>\n<ng-template #footer>\n <ng-content select=\"ax-footer\"> </ng-content>\n</ng-template>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial}}}@layer components{ax-alert{gap:calc(var(--spacing,.25rem) * 4);border-radius:var(--radius-lg,.5rem);border-style:var(--tw-border-style);border-width:1px;border-color:var(--ax-comp-bg);background-color:var(--ax-comp-bg);width:100%;display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){ax-alert{background-color:color-mix(in oklab,var(--ax-comp-bg) 15%,transparent)}}ax-alert{padding:calc(var(--spacing,.25rem) * 4);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)))}ax-alert ax-title,ax-alert ax-content{color:var(--color-on-lightest,rgba(var(--ax-sys-color-on-lightest-surface)))}ax-alert .ax-alert-progress{background-color:var(--ax-comp-text)}ax-alert .ax-alert-inline{flex:1;justify-content:center;align-items:center;display:flex}ax-alert .ax-alert-block{width:100%;display:flex}ax-alert .ax-alert-block .ax-alert-content{--tw-leading:calc(var(--spacing,.25rem) * 6);line-height:calc(var(--spacing,.25rem) * 6);flex-direction:column;flex:1;display:flex}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:empty{display:none}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:not(:empty)+ax-content:not(:empty){margin-top:calc(var(--spacing,.25rem) * 2)}ax-alert .ax-alert-block .ax-alert-content ax-footer{margin-top:calc(var(--spacing,.25rem) * 4)}ax-alert .ax-alert-icon{font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)));color:var(--ax-comp-bg);border-radius:3.40282e38px;align-items:flex-start;padding-inline-end:calc(var(--spacing,.25rem) * 2);display:grid}ax-alert .ax-alert-icon ax-icon{--tw-leading:var(--leading-normal,1.5);line-height:var(--leading-normal,1.5)}ax-alert .ax-alert-buttons{padding-inline-start:calc(var(--spacing,.25rem) * 4)}ax-alert .ax-alert-title{flex-direction:column;flex:1;display:flex}ax-alert .ax-alert-title ax-title{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}ax-alert .ax-alert-progress{inset-inline-start:calc(var(--spacing,.25rem) * 0);bottom:calc(var(--spacing,.25rem) * 0);height:calc(var(--spacing,.25rem) * 1);position:absolute}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
134
+ ], queries: [{ propertyName: "axIcon", first: true, predicate: ["ax-icon"], descendants: true, isSignal: true }, { propertyName: "axTitle", first: true, predicate: ["ax-title"], descendants: true, isSignal: true }, { propertyName: "axContent", first: true, predicate: ["ax-content"], descendants: true, isSignal: true }, { propertyName: "axFooter", first: true, predicate: ["ax-footer"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@if (showInline()) {\n <div class=\"ax-alert-inline\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <div class=\"ax-alert-buttons\">\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container>\n </div>\n} @else {\n <div class=\"ax-alert-block\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-content\">\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"footer\"></ng-container>\n </div>\n <div><ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container></div>\n </div>\n}\n\n@if (timeOut()) {\n <div class=\"ax-alert-progress\" [style.animation-duration.ms]=\"timeOut()\"></div>\n}\n\n<ng-template #buttons>\n <ng-content select=\"ax-button\"> </ng-content>\n</ng-template>\n<ng-template #closeButton>\n <ng-content select=\"ax-close-button\"> </ng-content>\n</ng-template>\n<ng-template #title>\n <ng-content select=\"ax-title\"> </ng-content>\n</ng-template>\n<ng-template #icon>\n <ng-content select=\"ax-icon\"> </ng-content>\n</ng-template>\n<ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n</ng-template>\n<ng-template #footer>\n <ng-content select=\"ax-footer\"> </ng-content>\n</ng-template>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial}}}@layer components{ax-alert{gap:calc(var(--spacing,.25rem) * 4);border-radius:var(--radius-lg,.5rem);border-style:var(--tw-border-style);border-width:1px;border-color:var(--ax-comp-bg);background-color:var(--ax-comp-bg);width:100%;display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){ax-alert{background-color:color-mix(in oklab,var(--ax-comp-bg) 15%,transparent)}}ax-alert{padding:calc(var(--spacing,.25rem) * 4);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)))}ax-alert ax-title,ax-alert ax-content{color:rgba(var(--ax-sys-color-on-lightest-surface))}ax-alert .ax-alert-progress{background-color:var(--ax-comp-text)}ax-alert .ax-alert-inline{flex:1;justify-content:center;align-items:center;display:flex}ax-alert .ax-alert-block{width:100%;display:flex}ax-alert .ax-alert-block .ax-alert-content{--tw-leading:calc(var(--spacing,.25rem) * 6);line-height:calc(var(--spacing,.25rem) * 6);flex-direction:column;flex:1;display:flex}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:empty{display:none}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:not(:empty)+ax-content:not(:empty){margin-top:calc(var(--spacing,.25rem) * 2)}ax-alert .ax-alert-block .ax-alert-content ax-footer{margin-top:calc(var(--spacing,.25rem) * 4)}ax-alert .ax-alert-icon{font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)));color:var(--ax-comp-bg);border-radius:3.40282e38px;align-items:flex-start;padding-inline-end:calc(var(--spacing,.25rem) * 2);display:grid}ax-alert .ax-alert-icon ax-icon{--tw-leading:var(--leading-normal,1.5);line-height:var(--leading-normal,1.5)}ax-alert .ax-alert-buttons{padding-inline-start:calc(var(--spacing,.25rem) * 4)}ax-alert .ax-alert-title{flex-direction:column;flex:1;display:flex}ax-alert .ax-alert-title ax-title{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}ax-alert .ax-alert-progress{inset-inline-start:calc(var(--spacing,.25rem) * 0);bottom:calc(var(--spacing,.25rem) * 0);height:calc(var(--spacing,.25rem) * 1);position:absolute}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
135
135
  }
136
136
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXAlertComponent, decorators: [{
137
137
  type: Component,
138
138
  args: [{ selector: 'ax-alert', inputs: ['color'], outputs: ['colorChange'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
139
139
  { provide: AXClosableComponent, useExisting: AXAlertComponent },
140
140
  { provide: AXComponent, useExisting: AXAlertComponent },
141
- ], imports: [NgTemplateOutlet], template: "@if (showInline()) {\n <div class=\"ax-alert-inline\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <div class=\"ax-alert-buttons\">\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container>\n </div>\n} @else {\n <div class=\"ax-alert-block\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-content\">\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"footer\"></ng-container>\n </div>\n <div><ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container></div>\n </div>\n}\n\n@if (timeOut()) {\n <div class=\"ax-alert-progress\" [style.animation-duration.ms]=\"timeOut()\"></div>\n}\n\n<ng-template #buttons>\n <ng-content select=\"ax-button\"> </ng-content>\n</ng-template>\n<ng-template #closeButton>\n <ng-content select=\"ax-close-button\"> </ng-content>\n</ng-template>\n<ng-template #title>\n <ng-content select=\"ax-title\"> </ng-content>\n</ng-template>\n<ng-template #icon>\n <ng-content select=\"ax-icon\"> </ng-content>\n</ng-template>\n<ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n</ng-template>\n<ng-template #footer>\n <ng-content select=\"ax-footer\"> </ng-content>\n</ng-template>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial}}}@layer components{ax-alert{gap:calc(var(--spacing,.25rem) * 4);border-radius:var(--radius-lg,.5rem);border-style:var(--tw-border-style);border-width:1px;border-color:var(--ax-comp-bg);background-color:var(--ax-comp-bg);width:100%;display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){ax-alert{background-color:color-mix(in oklab,var(--ax-comp-bg) 15%,transparent)}}ax-alert{padding:calc(var(--spacing,.25rem) * 4);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)))}ax-alert ax-title,ax-alert ax-content{color:var(--color-on-lightest,rgba(var(--ax-sys-color-on-lightest-surface)))}ax-alert .ax-alert-progress{background-color:var(--ax-comp-text)}ax-alert .ax-alert-inline{flex:1;justify-content:center;align-items:center;display:flex}ax-alert .ax-alert-block{width:100%;display:flex}ax-alert .ax-alert-block .ax-alert-content{--tw-leading:calc(var(--spacing,.25rem) * 6);line-height:calc(var(--spacing,.25rem) * 6);flex-direction:column;flex:1;display:flex}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:empty{display:none}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:not(:empty)+ax-content:not(:empty){margin-top:calc(var(--spacing,.25rem) * 2)}ax-alert .ax-alert-block .ax-alert-content ax-footer{margin-top:calc(var(--spacing,.25rem) * 4)}ax-alert .ax-alert-icon{font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)));color:var(--ax-comp-bg);border-radius:3.40282e38px;align-items:flex-start;padding-inline-end:calc(var(--spacing,.25rem) * 2);display:grid}ax-alert .ax-alert-icon ax-icon{--tw-leading:var(--leading-normal,1.5);line-height:var(--leading-normal,1.5)}ax-alert .ax-alert-buttons{padding-inline-start:calc(var(--spacing,.25rem) * 4)}ax-alert .ax-alert-title{flex-direction:column;flex:1;display:flex}ax-alert .ax-alert-title ax-title{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}ax-alert .ax-alert-progress{inset-inline-start:calc(var(--spacing,.25rem) * 0);bottom:calc(var(--spacing,.25rem) * 0);height:calc(var(--spacing,.25rem) * 1);position:absolute}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"] }]
141
+ ], imports: [NgTemplateOutlet], template: "@if (showInline()) {\n <div class=\"ax-alert-inline\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <div class=\"ax-alert-buttons\">\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container>\n </div>\n} @else {\n <div class=\"ax-alert-block\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-content\">\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"footer\"></ng-container>\n </div>\n <div><ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container></div>\n </div>\n}\n\n@if (timeOut()) {\n <div class=\"ax-alert-progress\" [style.animation-duration.ms]=\"timeOut()\"></div>\n}\n\n<ng-template #buttons>\n <ng-content select=\"ax-button\"> </ng-content>\n</ng-template>\n<ng-template #closeButton>\n <ng-content select=\"ax-close-button\"> </ng-content>\n</ng-template>\n<ng-template #title>\n <ng-content select=\"ax-title\"> </ng-content>\n</ng-template>\n<ng-template #icon>\n <ng-content select=\"ax-icon\"> </ng-content>\n</ng-template>\n<ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n</ng-template>\n<ng-template #footer>\n <ng-content select=\"ax-footer\"> </ng-content>\n</ng-template>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial}}}@layer components{ax-alert{gap:calc(var(--spacing,.25rem) * 4);border-radius:var(--radius-lg,.5rem);border-style:var(--tw-border-style);border-width:1px;border-color:var(--ax-comp-bg);background-color:var(--ax-comp-bg);width:100%;display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){ax-alert{background-color:color-mix(in oklab,var(--ax-comp-bg) 15%,transparent)}}ax-alert{padding:calc(var(--spacing,.25rem) * 4);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)))}ax-alert ax-title,ax-alert ax-content{color:rgba(var(--ax-sys-color-on-lightest-surface))}ax-alert .ax-alert-progress{background-color:var(--ax-comp-text)}ax-alert .ax-alert-inline{flex:1;justify-content:center;align-items:center;display:flex}ax-alert .ax-alert-block{width:100%;display:flex}ax-alert .ax-alert-block .ax-alert-content{--tw-leading:calc(var(--spacing,.25rem) * 6);line-height:calc(var(--spacing,.25rem) * 6);flex-direction:column;flex:1;display:flex}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:empty{display:none}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:not(:empty)+ax-content:not(:empty){margin-top:calc(var(--spacing,.25rem) * 2)}ax-alert .ax-alert-block .ax-alert-content ax-footer{margin-top:calc(var(--spacing,.25rem) * 4)}ax-alert .ax-alert-icon{font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)));color:var(--ax-comp-bg);border-radius:3.40282e38px;align-items:flex-start;padding-inline-end:calc(var(--spacing,.25rem) * 2);display:grid}ax-alert .ax-alert-icon ax-icon{--tw-leading:var(--leading-normal,1.5);line-height:var(--leading-normal,1.5)}ax-alert .ax-alert-buttons{padding-inline-start:calc(var(--spacing,.25rem) * 4)}ax-alert .ax-alert-title{flex-direction:column;flex:1;display:flex}ax-alert .ax-alert-title ax-title{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}ax-alert .ax-alert-progress{inset-inline-start:calc(var(--spacing,.25rem) * 0);bottom:calc(var(--spacing,.25rem) * 0);height:calc(var(--spacing,.25rem) * 1);position:absolute}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"] }]
142
142
  }], ctorParameters: () => [], propDecorators: { axIcon: [{ type: i0.ContentChild, args: ['ax-icon', { isSignal: true }] }], axTitle: [{ type: i0.ContentChild, args: ['ax-title', { isSignal: true }] }], axContent: [{ type: i0.ContentChild, args: ['ax-content', { isSignal: true }] }], axFooter: [{ type: i0.ContentChild, args: ['ax-footer', { isSignal: true }] }], onClosed: [{ type: i0.Output, args: ["onClosed"] }], timeOut: [{ type: i0.Input, args: [{ isSignal: true, alias: "timeOut", required: false }] }, { type: i0.Output, args: ["timeOutChange"] }], __hostClass: [{
143
143
  type: HostBinding,
144
144
  args: ['class']
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-alert.mjs","sources":["../../../../packages/components/alert/src/lib/alert.component.ts","../../../../packages/components/alert/src/lib/alert.component.html","../../../../packages/components/alert/src/lib/alert.module.ts","../../../../packages/components/alert/src/acorex-components-alert.ts"],"sourcesContent":["import { AXClosableComponent, AXComponent, AXEvent, MXColorComponent } from '@acorex/cdk/common';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { isBrowser } from '@acorex/core/platform';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n contentChild,\n effect,\n HostBinding,\n model,\n output,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * The Alert component is used to display notifications or alerts to users.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-alert',\n templateUrl: './alert.component.html',\n styleUrls: ['./alert.component.compiled.css'],\n inputs: ['color'],\n outputs: ['colorChange'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXClosableComponent, useExisting: AXAlertComponent },\n { provide: AXComponent, useExisting: AXAlertComponent },\n ],\n imports: [NgTemplateOutlet],\n})\nexport class AXAlertComponent extends MXColorComponent {\n /**\n * @ignore\n */\n axIcon = contentChild<AXDecoratorIconComponent>('ax-icon');\n /**\n * @ignore\n */\n axTitle = contentChild<AXDecoratorGenericComponent>('ax-title');\n /**\n * @ignore\n */\n axContent = contentChild<AXDecoratorGenericComponent>('ax-content');\n /**\n * @ignore\n */\n axFooter = contentChild<AXDecoratorGenericComponent>('ax-footer');\n\n /**\n * @ignore\n */\n protected showInline = signal(false);\n\n /**\n * Emits an event when the alert component is closed.\n *\n * @event\n */\n onClosed = output<AXEvent>();\n\n /**\n * @ignore\n */\n private customIcon = signal('');\n\n /**\n * @ignore\n */\n private _timeOutRef: number;\n\n /**\n * Sets the duration (in milliseconds) after which the alert will automatically close.\n *\n * @defaultValue 0\n */\n timeOut = model<number>(0);\n\n /**\n * @ignore\n */\n //TODO: Check Console for effect() can only be used within an injection context such as a constructor, a factory function, a field initializer, or a function used with `runInInjectionContext`\n timeOutEffect = () => {\n effect(() => {\n if (this.timeOut()) {\n clearTimeout(this._timeOutRef);\n this._timeOutRef = window.setTimeout(() => {\n this.close();\n }, this.timeOut());\n }\n });\n };\n\n /**\n * @ignore\n */\n constructor() {\n super();\n afterNextRender(() => {\n this.onOptionChanged.subscribe(this._handleOnOptionChanged.bind(this));\n this._setLayout();\n this.customIcon.set(this.axIcon()?.icon);\n });\n this.timeOutEffect();\n }\n\n /**\n * @ignore\n */\n private _setLayout() {\n this._setIcon();\n this.showInline.set(this.axContent() == null && this.axFooter() == null);\n this.cdr.markForCheck();\n }\n\n /**\n * @ignore\n */\n protected _handleOnOptionChanged() {\n this._setIcon();\n }\n\n /**\n * @ignore\n */\n private _setIcon() {\n if (!this.axIcon() || this.axIcon().getHostElement().firstElementChild) return;\n\n switch (this.color) {\n case 'ax-success':\n this.axIcon().icon = 'ax-icon ax-icon-check-circle';\n break;\n case 'ax-danger':\n this.axIcon().icon = 'ax-icon ax-icon-error';\n break;\n case 'ax-warning':\n this.axIcon().icon = 'ax-icon ax-icon-warning';\n break;\n default:\n this.axIcon().icon = this.customIcon() || 'ax-icon ax-icon-info';\n break;\n }\n }\n\n /**\n * Removes the alert from the container after a transition effect.\n *\n * @returns void - No return value. The alert is removed from the DOM and the onClosed event is emitted.\n */\n close(): void {\n if (isBrowser()) {\n const host = this.getHostElement();\n host.parentElement?.removeChild(host);\n this.onClosed.emit({\n component: this,\n });\n }\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n get __hostClass(): string {\n return `ax-alert ax-none ${this.color}`;\n }\n}\n","@if (showInline()) {\n <div class=\"ax-alert-inline\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <div class=\"ax-alert-buttons\">\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container>\n </div>\n} @else {\n <div class=\"ax-alert-block\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-content\">\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"footer\"></ng-container>\n </div>\n <div><ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container></div>\n </div>\n}\n\n@if (timeOut()) {\n <div class=\"ax-alert-progress\" [style.animation-duration.ms]=\"timeOut()\"></div>\n}\n\n<ng-template #buttons>\n <ng-content select=\"ax-button\"> </ng-content>\n</ng-template>\n<ng-template #closeButton>\n <ng-content select=\"ax-close-button\"> </ng-content>\n</ng-template>\n<ng-template #title>\n <ng-content select=\"ax-title\"> </ng-content>\n</ng-template>\n<ng-template #icon>\n <ng-content select=\"ax-icon\"> </ng-content>\n</ng-template>\n<ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n</ng-template>\n<ng-template #footer>\n <ng-content select=\"ax-footer\"> </ng-content>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { AXAlertComponent } from './alert.component';\n\n@NgModule({\n imports: [AXAlertComponent],\n exports: [AXAlertComponent],\n})\nexport class AXAlertModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-alert.mjs","sources":["../../../../packages/components/alert/src/lib/alert.component.ts","../../../../packages/components/alert/src/lib/alert.component.html","../../../../packages/components/alert/src/lib/alert.module.ts","../../../../packages/components/alert/src/acorex-components-alert.ts"],"sourcesContent":["import { AXClosableComponent, AXComponent, AXEvent, MXColorComponent } from '@acorex/cdk/common';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { isBrowser } from '@acorex/core/platform';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n contentChild,\n effect,\n HostBinding,\n model,\n output,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * The Alert component is used to display notifications or alerts to users.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-alert',\n templateUrl: './alert.component.html',\n styleUrls: ['./alert.component.compiled.css'],\n inputs: ['color'],\n outputs: ['colorChange'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXClosableComponent, useExisting: AXAlertComponent },\n { provide: AXComponent, useExisting: AXAlertComponent },\n ],\n imports: [NgTemplateOutlet],\n})\nexport class AXAlertComponent extends MXColorComponent {\n /**\n * @ignore\n */\n axIcon = contentChild<AXDecoratorIconComponent>('ax-icon');\n /**\n * @ignore\n */\n axTitle = contentChild<AXDecoratorGenericComponent>('ax-title');\n /**\n * @ignore\n */\n axContent = contentChild<AXDecoratorGenericComponent>('ax-content');\n /**\n * @ignore\n */\n axFooter = contentChild<AXDecoratorGenericComponent>('ax-footer');\n\n /**\n * @ignore\n */\n protected showInline = signal(false);\n\n /**\n * Emits an event when the alert component is closed.\n *\n * @event\n */\n onClosed = output<AXEvent>();\n\n /**\n * @ignore\n */\n private customIcon = signal('');\n\n /**\n * @ignore\n */\n private _timeOutRef: number;\n\n /**\n * Sets the duration (in milliseconds) after which the alert will automatically close.\n *\n * @defaultValue 0\n */\n timeOut = model<number>(0);\n\n /**\n * @ignore\n */\n //TODO: Check Console for effect() can only be used within an injection context such as a constructor, a factory function, a field initializer, or a function used with `runInInjectionContext`\n timeOutEffect = () => {\n effect(() => {\n if (this.timeOut()) {\n clearTimeout(this._timeOutRef);\n this._timeOutRef = window.setTimeout(() => {\n this.close();\n }, this.timeOut());\n }\n });\n };\n\n /**\n * @ignore\n */\n constructor() {\n super();\n afterNextRender(() => {\n this.onOptionChanged.subscribe(this._handleOnOptionChanged.bind(this));\n this._setLayout();\n this.customIcon.set(this.axIcon()?.icon);\n });\n this.timeOutEffect();\n }\n\n /**\n * @ignore\n */\n private _setLayout() {\n this._setIcon();\n this.showInline.set(this.axContent() == null && this.axFooter() == null);\n this.cdr.markForCheck();\n }\n\n /**\n * @ignore\n */\n protected _handleOnOptionChanged() {\n this._setIcon();\n }\n\n /**\n * @ignore\n */\n private _setIcon() {\n if (!this.axIcon() || this.axIcon().getHostElement().firstElementChild) return;\n\n switch (this.color) {\n case 'ax-success':\n this.axIcon().icon = 'ax-icon ax-icon-check-circle';\n break;\n case 'ax-danger':\n this.axIcon().icon = 'ax-icon ax-icon-error';\n break;\n case 'ax-warning':\n this.axIcon().icon = 'ax-icon ax-icon-warning';\n break;\n default:\n this.axIcon().icon = this.customIcon() || 'ax-icon ax-icon-info';\n break;\n }\n }\n\n /**\n * Removes the alert from the container after a transition effect.\n *\n * @returns void - No return value. The alert is removed from the DOM and the onClosed event is emitted.\n */\n close(): void {\n if (isBrowser()) {\n const host = this.getHostElement();\n host.parentElement?.removeChild(host);\n this.onClosed.emit({\n component: this,\n });\n }\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n get __hostClass(): string {\n return `ax-alert ax-none ${this.color}`;\n }\n}\n","@if (showInline()) {\n <div class=\"ax-alert-inline\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <div class=\"ax-alert-buttons\">\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container>\n </div>\n} @else {\n <div class=\"ax-alert-block\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-content\">\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"footer\"></ng-container>\n </div>\n <div><ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container></div>\n </div>\n}\n\n@if (timeOut()) {\n <div class=\"ax-alert-progress\" [style.animation-duration.ms]=\"timeOut()\"></div>\n}\n\n<ng-template #buttons>\n <ng-content select=\"ax-button\"> </ng-content>\n</ng-template>\n<ng-template #closeButton>\n <ng-content select=\"ax-close-button\"> </ng-content>\n</ng-template>\n<ng-template #title>\n <ng-content select=\"ax-title\"> </ng-content>\n</ng-template>\n<ng-template #icon>\n <ng-content select=\"ax-icon\"> </ng-content>\n</ng-template>\n<ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n</ng-template>\n<ng-template #footer>\n <ng-content select=\"ax-footer\"> </ng-content>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { AXAlertComponent } from './alert.component';\n\n@NgModule({\n imports: [AXAlertComponent],\n exports: [AXAlertComponent],\n})\nexport class AXAlertModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAiBA;;;;AAIG;AAeG,MAAO,gBAAiB,SAAQ,gBAAgB,CAAA;AA8DpD;;AAEG;AACH,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;AAjET;;AAEG;AACH,QAAA,IAAA,CAAA,MAAM,GAAG,YAAY,CAA2B,SAAS,kDAAC;AAC1D;;AAEG;AACH,QAAA,IAAA,CAAA,OAAO,GAAG,YAAY,CAA8B,UAAU,mDAAC;AAC/D;;AAEG;AACH,QAAA,IAAA,CAAA,SAAS,GAAG,YAAY,CAA8B,YAAY,qDAAC;AACnE;;AAEG;AACH,QAAA,IAAA,CAAA,QAAQ,GAAG,YAAY,CAA8B,WAAW,oDAAC;AAEjE;;AAEG;AACO,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,KAAK,sDAAC;AAEpC;;;;AAIG;QACH,IAAA,CAAA,QAAQ,GAAG,MAAM,EAAW;AAE5B;;AAEG;AACK,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,EAAE,sDAAC;AAO/B;;;;AAIG;AACH,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAS,CAAC,mDAAC;AAE1B;;AAEG;;QAEH,IAAA,CAAA,aAAa,GAAG,MAAK;YACnB,MAAM,CAAC,MAAK;AACV,gBAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;AAClB,oBAAA,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC;oBAC9B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,MAAK;wBACxC,IAAI,CAAC,KAAK,EAAE;AACd,oBAAA,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACpB;AACF,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC;QAOC,eAAe,CAAC,MAAK;AACnB,YAAA,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtE,IAAI,CAAC,UAAU,EAAE;AACjB,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC;AAC1C,QAAA,CAAC,CAAC;QACF,IAAI,CAAC,aAAa,EAAE;IACtB;AAEA;;AAEG;IACK,UAAU,GAAA;QAChB,IAAI,CAAC,QAAQ,EAAE;AACf,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC;AACxE,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;IACzB;AAEA;;AAEG;IACO,sBAAsB,GAAA;QAC9B,IAAI,CAAC,QAAQ,EAAE;IACjB;AAEA;;AAEG;IACK,QAAQ,GAAA;AACd,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,cAAc,EAAE,CAAC,iBAAiB;YAAE;AAExE,QAAA,QAAQ,IAAI,CAAC,KAAK;AAChB,YAAA,KAAK,YAAY;AACf,gBAAA,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,GAAG,8BAA8B;gBACnD;AACF,YAAA,KAAK,WAAW;AACd,gBAAA,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,GAAG,uBAAuB;gBAC5C;AACF,YAAA,KAAK,YAAY;AACf,gBAAA,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,GAAG,yBAAyB;gBAC9C;AACF,YAAA;AACE,gBAAA,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,IAAI,sBAAsB;gBAChE;;IAEN;AAEA;;;;AAIG;IACH,KAAK,GAAA;QACH,IAAI,SAAS,EAAE,EAAE;AACf,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,EAAE;AAClC,YAAA,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,IAAI,CAAC;AACrC,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;AACjB,gBAAA,SAAS,EAAE,IAAI;AAChB,aAAA,CAAC;QACJ;IACF;AAEA;;AAEG;AACH,IAAA,IACI,WAAW,GAAA;AACb,QAAA,OAAO,CAAA,iBAAA,EAAoB,IAAI,CAAC,KAAK,EAAE;IACzC;8GAtIW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EANhB;AACT,YAAA,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,gBAAgB,EAAE;AAC/D,YAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE;SACxD,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,SAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,YAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,WAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjCH,gsDAmDA,ixFDjBY,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAEf,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAd5B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,UAAU,UAGZ,CAAC,OAAO,CAAC,EAAA,OAAA,EACR,CAAC,aAAa,CAAC,EAAA,eAAA,EACP,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,SAAA,EAC1B;AACT,wBAAA,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,kBAAkB,EAAE;AAC/D,wBAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,kBAAkB,EAAE;qBACxD,EAAA,OAAA,EACQ,CAAC,gBAAgB,CAAC,EAAA,QAAA,EAAA,gsDAAA,EAAA,MAAA,EAAA,CAAA,ytFAAA,CAAA,EAAA;AAMqB,SAAA,CAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,IAAA,EAAA,CAAA,SAAS,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,IAAA,EAAA,CAIL,UAAU,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,IAAA,EAAA,CAIR,YAAY,qEAIb,WAAW,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,eAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA;sBAmH/D,WAAW;uBAAC,OAAO;;;MEhKT,aAAa,CAAA;8GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAb,aAAa,EAAA,OAAA,EAAA,CAHd,gBAAgB,CAAA,EAAA,OAAA,EAAA,CAChB,gBAAgB,CAAA,EAAA,CAAA,CAAA;+GAEf,aAAa,EAAA,CAAA,CAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAJzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,gBAAgB,CAAC;oBAC3B,OAAO,EAAE,CAAC,gBAAgB,CAAC;AAC5B,iBAAA;;;ACND;;AAEG;;;;"}
@@ -61,11 +61,11 @@ class AXAvatarComponent extends MXColorComponent {
61
61
  return `width: ${this.size()}px; height: ${this.size()}px`;
62
62
  }
63
63
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXAvatarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
64
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: AXAvatarComponent, isStandalone: true, selector: "ax-avatar", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, shape: { classPropertyName: "shape", publicName: "shape", isSignal: true, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { size: "sizeChange" }, host: { properties: { "class": "this.__hostClass", "style": "this.__hostStyle" } }, providers: [{ provide: AXComponent, useExisting: AXAvatarComponent }], queries: [{ propertyName: "children", predicate: ["ax-image, ax-icon, ax-text"], isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect style=\"fill: var(--ax-comp-bg, rgba(var(--ax-sys-color-surface)))\" width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface))); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle\n cx=\"257.71\"\n cy=\"255.94\"\n r=\"99.24\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface)))\"\n />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}@layer components{ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:calc(var(--spacing,.25rem) * -1);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-surface,rgba(var(--ax-sys-color-surface)));overflow:hidden}ax-avatar{justify-content:space-between;display:flex;position:relative}ax-avatar.ax-sharp{border-radius:0}ax-avatar.ax-soft{border-radius:var(--radius-default,var(--ax-sys-border-radius))}ax-avatar.ax-rounded{border-radius:3.40282e38px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:var(--text-2xl,1.5rem);line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)))}ax-avatar ax-icon,ax-avatar ax-text{min-width:100%;min-height:100%;fill:var(--ax-comp-bg);justify-content:center;align-items:center;display:flex}ax-avatar ax-badge{position:absolute}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
64
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: AXAvatarComponent, isStandalone: true, selector: "ax-avatar", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, shape: { classPropertyName: "shape", publicName: "shape", isSignal: true, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { size: "sizeChange" }, host: { properties: { "class": "this.__hostClass", "style": "this.__hostStyle" } }, providers: [{ provide: AXComponent, useExisting: AXAvatarComponent }], queries: [{ propertyName: "children", predicate: ["ax-image, ax-icon, ax-text"], isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect style=\"fill: var(--ax-comp-bg, rgba(var(--ax-sys-color-surface)))\" width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface))); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle\n cx=\"257.71\"\n cy=\"255.94\"\n r=\"99.24\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface)))\"\n />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}@layer components{ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:calc(var(--spacing,.25rem) * -1);border-style:var(--tw-border-style);border-width:1px;border-color:rgba(var(--ax-sys-color-surface));overflow:hidden}ax-avatar{justify-content:space-between;display:flex;position:relative}ax-avatar.ax-sharp{border-radius:0}ax-avatar.ax-soft{border-radius:var(--ax-sys-border-radius)}ax-avatar.ax-rounded{border-radius:3.40282e38px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:var(--text-2xl,1.5rem);line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)))}ax-avatar ax-icon,ax-avatar ax-text{min-width:100%;min-height:100%;fill:var(--ax-comp-bg);justify-content:center;align-items:center;display:flex}ax-avatar ax-badge{position:absolute}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
65
65
  }
66
66
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXAvatarComponent, decorators: [{
67
67
  type: Component,
68
- args: [{ selector: 'ax-avatar', inputs: ['color'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: AXComponent, useExisting: AXAvatarComponent }], template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect style=\"fill: var(--ax-comp-bg, rgba(var(--ax-sys-color-surface)))\" width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface))); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle\n cx=\"257.71\"\n cy=\"255.94\"\n r=\"99.24\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface)))\"\n />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}@layer components{ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:calc(var(--spacing,.25rem) * -1);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-surface,rgba(var(--ax-sys-color-surface)));overflow:hidden}ax-avatar{justify-content:space-between;display:flex;position:relative}ax-avatar.ax-sharp{border-radius:0}ax-avatar.ax-soft{border-radius:var(--radius-default,var(--ax-sys-border-radius))}ax-avatar.ax-rounded{border-radius:3.40282e38px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:var(--text-2xl,1.5rem);line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)))}ax-avatar ax-icon,ax-avatar ax-text{min-width:100%;min-height:100%;fill:var(--ax-comp-bg);justify-content:center;align-items:center;display:flex}ax-avatar ax-badge{position:absolute}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"] }]
68
+ args: [{ selector: 'ax-avatar', inputs: ['color'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: AXComponent, useExisting: AXAvatarComponent }], template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect style=\"fill: var(--ax-comp-bg, rgba(var(--ax-sys-color-surface)))\" width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface))); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle\n cx=\"257.71\"\n cy=\"255.94\"\n r=\"99.24\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface)))\"\n />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}@layer components{ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:calc(var(--spacing,.25rem) * -1);border-style:var(--tw-border-style);border-width:1px;border-color:rgba(var(--ax-sys-color-surface));overflow:hidden}ax-avatar{justify-content:space-between;display:flex;position:relative}ax-avatar.ax-sharp{border-radius:0}ax-avatar.ax-soft{border-radius:var(--ax-sys-border-radius)}ax-avatar.ax-rounded{border-radius:3.40282e38px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:var(--text-2xl,1.5rem);line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)))}ax-avatar ax-icon,ax-avatar ax-text{min-width:100%;min-height:100%;fill:var(--ax-comp-bg);justify-content:center;align-items:center;display:flex}ax-avatar ax-badge{position:absolute}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"] }]
69
69
  }], propDecorators: { children: [{ type: i0.ContentChildren, args: ['ax-image, ax-icon, ax-text', { isSignal: true }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }, { type: i0.Output, args: ["sizeChange"] }], shape: [{ type: i0.Input, args: [{ isSignal: true, alias: "shape", required: false }] }], look: [{ type: i0.Input, args: [{ isSignal: true, alias: "look", required: false }] }], __hostClass: [{
70
70
  type: HostBinding,
71
71
  args: ['class']
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-avatar.mjs","sources":["../../../../packages/components/avatar/src/lib/avatar-group.component.ts","../../../../packages/components/avatar/src/lib/avatar.component.ts","../../../../packages/components/avatar/src/lib/avatar.component.html","../../../../packages/components/avatar/src/lib/avatar.module.ts","../../../../packages/components/avatar/src/acorex-components-avatar.ts"],"sourcesContent":["import { AXComponent } from '@acorex/cdk/common';\nimport { Component } from '@angular/core';\n\n@Component({\n selector: 'ax-avatar-group',\n template: `<ng-content select=\"ax-avatar\"></ng-content>`,\n providers: [{ provide: AXComponent, useExisting: AXAvatarGroupComponent }],\n})\nexport class AXAvatarGroupComponent {}\n","import { AXComponent, MXColorComponent } from '@acorex/cdk/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n HostBinding,\n input,\n model,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * The Avatar component displays a user's profile image or initials, typically used for user identification.\n * It supports multiple content types including text, icons, images, and badges.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-avatar',\n templateUrl: './avatar.component.html',\n styleUrls: ['./avatar.component.compiled.css'],\n inputs: ['color'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXComponent, useExisting: AXAvatarComponent }],\n})\nexport class AXAvatarComponent extends MXColorComponent {\n /**\n * Content children for avatar content (ax-image, ax-icon, ax-text).\n * Used internally to determine if fallback SVG should be shown.\n */\n protected children = contentChildren<QueryList<unknown>>('ax-image, ax-icon, ax-text');\n\n /**\n * Defines the size of the avatar in pixels.\n *\n * @defaultValue 48\n */\n size = model<number>(48);\n\n /**\n * Specifies the visual style of the avatar's corners.\n *\n * @defaultValue 'rounded'\n */\n shape = input<'sharp' | 'soft' | 'rounded'>('rounded');\n\n /**\n * Specifies the visual style of the avatar appearance.\n *\n * @defaultValue 'solid'\n */\n look = input<'solid' | 'twotone'>('solid');\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n return `${this.color} ax-${this.look()} ax-${this.shape()} `;\n }\n\n /**\n * @ignore\n */\n @HostBinding('style')\n private get __hostStyle(): string {\n return `width: ${this.size()}px; height: ${this.size()}px`;\n }\n}\n","<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect style=\"fill: var(--ax-comp-bg, rgba(var(--ax-sys-color-surface)))\" width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface))); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle\n cx=\"257.71\"\n cy=\"255.94\"\n r=\"99.24\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface)))\"\n />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n","import { NgModule } from '@angular/core';\nimport { AXAvatarGroupComponent } from './avatar-group.component';\nimport { AXAvatarComponent } from './avatar.component';\n\n@NgModule({\n imports: [AXAvatarComponent, AXAvatarGroupComponent],\n exports: [AXAvatarComponent, AXAvatarGroupComponent],\n})\nexport class AXAvatarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-avatar.mjs","sources":["../../../../packages/components/avatar/src/lib/avatar-group.component.ts","../../../../packages/components/avatar/src/lib/avatar.component.ts","../../../../packages/components/avatar/src/lib/avatar.component.html","../../../../packages/components/avatar/src/lib/avatar.module.ts","../../../../packages/components/avatar/src/acorex-components-avatar.ts"],"sourcesContent":["import { AXComponent } from '@acorex/cdk/common';\nimport { Component } from '@angular/core';\n\n@Component({\n selector: 'ax-avatar-group',\n template: `<ng-content select=\"ax-avatar\"></ng-content>`,\n providers: [{ provide: AXComponent, useExisting: AXAvatarGroupComponent }],\n})\nexport class AXAvatarGroupComponent {}\n","import { AXComponent, MXColorComponent } from '@acorex/cdk/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n HostBinding,\n input,\n model,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * The Avatar component displays a user's profile image or initials, typically used for user identification.\n * It supports multiple content types including text, icons, images, and badges.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-avatar',\n templateUrl: './avatar.component.html',\n styleUrls: ['./avatar.component.compiled.css'],\n inputs: ['color'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXComponent, useExisting: AXAvatarComponent }],\n})\nexport class AXAvatarComponent extends MXColorComponent {\n /**\n * Content children for avatar content (ax-image, ax-icon, ax-text).\n * Used internally to determine if fallback SVG should be shown.\n */\n protected children = contentChildren<QueryList<unknown>>('ax-image, ax-icon, ax-text');\n\n /**\n * Defines the size of the avatar in pixels.\n *\n * @defaultValue 48\n */\n size = model<number>(48);\n\n /**\n * Specifies the visual style of the avatar's corners.\n *\n * @defaultValue 'rounded'\n */\n shape = input<'sharp' | 'soft' | 'rounded'>('rounded');\n\n /**\n * Specifies the visual style of the avatar appearance.\n *\n * @defaultValue 'solid'\n */\n look = input<'solid' | 'twotone'>('solid');\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n return `${this.color} ax-${this.look()} ax-${this.shape()} `;\n }\n\n /**\n * @ignore\n */\n @HostBinding('style')\n private get __hostStyle(): string {\n return `width: ${this.size()}px; height: ${this.size()}px`;\n }\n}\n","<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect style=\"fill: var(--ax-comp-bg, rgba(var(--ax-sys-color-surface)))\" width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface))); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle\n cx=\"257.71\"\n cy=\"255.94\"\n r=\"99.24\"\n style=\"fill: var(--ax-comp-text, rgba(var(--ax-sys-color-on-surface)))\"\n />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n","import { NgModule } from '@angular/core';\nimport { AXAvatarGroupComponent } from './avatar-group.component';\nimport { AXAvatarComponent } from './avatar.component';\n\n@NgModule({\n imports: [AXAvatarComponent, AXAvatarGroupComponent],\n exports: [AXAvatarComponent, AXAvatarGroupComponent],\n})\nexport class AXAvatarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}