@lifecorner/angular-ui-kit 3.4.1 → 3.5.1
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.
- package/README.md +12 -2
- package/fesm2022/lifecorner-angular-ui-kit-accordion.mjs +454 -0
- package/fesm2022/lifecorner-angular-ui-kit-accordion.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-alert.mjs +297 -0
- package/fesm2022/lifecorner-angular-ui-kit-alert.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-app-shell.mjs +190 -0
- package/fesm2022/lifecorner-angular-ui-kit-app-shell.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-area-chart.mjs +446 -0
- package/fesm2022/lifecorner-angular-ui-kit-area-chart.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-avatar-group.mjs +158 -0
- package/fesm2022/lifecorner-angular-ui-kit-avatar-group.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-avatar.mjs +216 -0
- package/fesm2022/lifecorner-angular-ui-kit-avatar.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-badge.mjs +121 -0
- package/fesm2022/lifecorner-angular-ui-kit-badge.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-bar-chart.mjs +360 -0
- package/fesm2022/lifecorner-angular-ui-kit-bar-chart.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-bottom-nav.mjs +344 -0
- package/fesm2022/lifecorner-angular-ui-kit-bottom-nav.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-breadcrumbs.mjs +191 -0
- package/fesm2022/lifecorner-angular-ui-kit-breadcrumbs.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-button.mjs +423 -0
- package/fesm2022/lifecorner-angular-ui-kit-button.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-calendar.mjs +368 -0
- package/fesm2022/lifecorner-angular-ui-kit-calendar.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-callout.mjs +203 -0
- package/fesm2022/lifecorner-angular-ui-kit-callout.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-card.mjs +323 -0
- package/fesm2022/lifecorner-angular-ui-kit-card.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-chat.mjs +790 -0
- package/fesm2022/lifecorner-angular-ui-kit-chat.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-checkbox.mjs +325 -0
- package/fesm2022/lifecorner-angular-ui-kit-checkbox.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-chip.mjs +214 -0
- package/fesm2022/lifecorner-angular-ui-kit-chip.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-choice-prompt.mjs +375 -0
- package/fesm2022/lifecorner-angular-ui-kit-choice-prompt.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-code-block.mjs +518 -0
- package/fesm2022/lifecorner-angular-ui-kit-code-block.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-color-picker.mjs +278 -0
- package/fesm2022/lifecorner-angular-ui-kit-color-picker.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-combobox.mjs +688 -0
- package/fesm2022/lifecorner-angular-ui-kit-combobox.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-confirm-dialog.mjs +494 -0
- package/fesm2022/lifecorner-angular-ui-kit-confirm-dialog.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-container.mjs +103 -0
- package/fesm2022/lifecorner-angular-ui-kit-container.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-copy-field.mjs +308 -0
- package/fesm2022/lifecorner-angular-ui-kit-copy-field.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-date-range-picker.mjs +466 -0
- package/fesm2022/lifecorner-angular-ui-kit-date-range-picker.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-datepicker.mjs +810 -0
- package/fesm2022/lifecorner-angular-ui-kit-datepicker.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-dependency-viewer.mjs +1761 -0
- package/fesm2022/lifecorner-angular-ui-kit-dependency-viewer.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-description-list.mjs +165 -0
- package/fesm2022/lifecorner-angular-ui-kit-description-list.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-diff-viewer.mjs +356 -0
- package/fesm2022/lifecorner-angular-ui-kit-diff-viewer.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-divider.mjs +119 -0
- package/fesm2022/lifecorner-angular-ui-kit-divider.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-document-viewer.mjs +762 -0
- package/fesm2022/lifecorner-angular-ui-kit-document-viewer.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-donut-chart.mjs +255 -0
- package/fesm2022/lifecorner-angular-ui-kit-donut-chart.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-drawer.mjs +308 -0
- package/fesm2022/lifecorner-angular-ui-kit-drawer.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-email-input.mjs +519 -0
- package/fesm2022/lifecorner-angular-ui-kit-email-input.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-empty-state.mjs +143 -0
- package/fesm2022/lifecorner-angular-ui-kit-empty-state.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-error-display.mjs +306 -0
- package/fesm2022/lifecorner-angular-ui-kit-error-display.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-field-group.mjs +154 -0
- package/fesm2022/lifecorner-angular-ui-kit-field-group.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-file-upload.mjs +281 -0
- package/fesm2022/lifecorner-angular-ui-kit-file-upload.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-filter-bar.mjs +258 -0
- package/fesm2022/lifecorner-angular-ui-kit-filter-bar.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-footer.mjs +200 -0
- package/fesm2022/lifecorner-angular-ui-kit-footer.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-funnel-chart.mjs +292 -0
- package/fesm2022/lifecorner-angular-ui-kit-funnel-chart.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-gallery.mjs +563 -0
- package/fesm2022/lifecorner-angular-ui-kit-gallery.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-gantt-chart.mjs +314 -0
- package/fesm2022/lifecorner-angular-ui-kit-gantt-chart.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-gauge.mjs +265 -0
- package/fesm2022/lifecorner-angular-ui-kit-gauge.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-header.mjs +955 -0
- package/fesm2022/lifecorner-angular-ui-kit-header.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-heatmap.mjs +305 -0
- package/fesm2022/lifecorner-angular-ui-kit-heatmap.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-hero.mjs +168 -0
- package/fesm2022/lifecorner-angular-ui-kit-hero.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-icon-names.mjs +9 -0
- package/fesm2022/lifecorner-angular-ui-kit-icon-names.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-icon.mjs +1026 -0
- package/fesm2022/lifecorner-angular-ui-kit-icon.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-input.mjs +595 -0
- package/fesm2022/lifecorner-angular-ui-kit-input.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-internal-chart.mjs +105 -0
- package/fesm2022/lifecorner-angular-ui-kit-internal-chart.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-internal-overlay.mjs +50 -0
- package/fesm2022/lifecorner-angular-ui-kit-internal-overlay.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-internal-url.mjs +22 -0
- package/fesm2022/lifecorner-angular-ui-kit-internal-url.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-kanban-board.mjs +319 -0
- package/fesm2022/lifecorner-angular-ui-kit-kanban-board.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-line-chart.mjs +413 -0
- package/fesm2022/lifecorner-angular-ui-kit-line-chart.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-list.mjs +338 -0
- package/fesm2022/lifecorner-angular-ui-kit-list.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-log-viewer.mjs +813 -0
- package/fesm2022/lifecorner-angular-ui-kit-log-viewer.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-logo.mjs +226 -0
- package/fesm2022/lifecorner-angular-ui-kit-logo.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-markdown.mjs +756 -0
- package/fesm2022/lifecorner-angular-ui-kit-markdown.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-menu.mjs +321 -0
- package/fesm2022/lifecorner-angular-ui-kit-menu.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-modal.mjs +329 -0
- package/fesm2022/lifecorner-angular-ui-kit-modal.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-models.mjs +0 -0
- package/fesm2022/lifecorner-angular-ui-kit-next-step-card.mjs +419 -0
- package/fesm2022/lifecorner-angular-ui-kit-next-step-card.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-notification-center.mjs +644 -0
- package/fesm2022/lifecorner-angular-ui-kit-notification-center.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-number-input.mjs +401 -0
- package/fesm2022/lifecorner-angular-ui-kit-number-input.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-page-header.mjs +266 -0
- package/fesm2022/lifecorner-angular-ui-kit-page-header.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-page-layout.mjs +127 -0
- package/fesm2022/lifecorner-angular-ui-kit-page-layout.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-pagination.mjs +343 -0
- package/fesm2022/lifecorner-angular-ui-kit-pagination.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-password-input.mjs +696 -0
- package/fesm2022/lifecorner-angular-ui-kit-password-input.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-pie-chart.mjs +162 -0
- package/fesm2022/lifecorner-angular-ui-kit-pie-chart.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-pipeline.mjs +159 -0
- package/fesm2022/lifecorner-angular-ui-kit-pipeline.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-popover.mjs +190 -0
- package/fesm2022/lifecorner-angular-ui-kit-popover.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-progress-bar.mjs +190 -0
- package/fesm2022/lifecorner-angular-ui-kit-progress-bar.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-progress-ring.mjs +175 -0
- package/fesm2022/lifecorner-angular-ui-kit-progress-ring.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-provider-button.mjs +255 -0
- package/fesm2022/lifecorner-angular-ui-kit-provider-button.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-radar-chart.mjs +309 -0
- package/fesm2022/lifecorner-angular-ui-kit-radar-chart.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-radio.mjs +708 -0
- package/fesm2022/lifecorner-angular-ui-kit-radio.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-rating.mjs +327 -0
- package/fesm2022/lifecorner-angular-ui-kit-rating.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-rich-text-editor.mjs +718 -0
- package/fesm2022/lifecorner-angular-ui-kit-rich-text-editor.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-scatter-plot.mjs +415 -0
- package/fesm2022/lifecorner-angular-ui-kit-scatter-plot.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-search-input.mjs +290 -0
- package/fesm2022/lifecorner-angular-ui-kit-search-input.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-section.mjs +127 -0
- package/fesm2022/lifecorner-angular-ui-kit-section.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-select.mjs +650 -0
- package/fesm2022/lifecorner-angular-ui-kit-select.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-sidenav.mjs +691 -0
- package/fesm2022/lifecorner-angular-ui-kit-sidenav.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-skeleton.mjs +144 -0
- package/fesm2022/lifecorner-angular-ui-kit-skeleton.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-slider.mjs +204 -0
- package/fesm2022/lifecorner-angular-ui-kit-slider.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-spacer.mjs +73 -0
- package/fesm2022/lifecorner-angular-ui-kit-spacer.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-sparkline.mjs +318 -0
- package/fesm2022/lifecorner-angular-ui-kit-sparkline.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-spinner.mjs +95 -0
- package/fesm2022/lifecorner-angular-ui-kit-spinner.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-split-pane.mjs +298 -0
- package/fesm2022/lifecorner-angular-ui-kit-split-pane.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-stack.mjs +162 -0
- package/fesm2022/lifecorner-angular-ui-kit-stack.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-stacked-bar-chart.mjs +412 -0
- package/fesm2022/lifecorner-angular-ui-kit-stacked-bar-chart.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-stage-list.mjs +186 -0
- package/fesm2022/lifecorner-angular-ui-kit-stage-list.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-stat-trend.mjs +224 -0
- package/fesm2022/lifecorner-angular-ui-kit-stat-trend.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-status-dot.mjs +122 -0
- package/fesm2022/lifecorner-angular-ui-kit-status-dot.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-stepper.mjs +209 -0
- package/fesm2022/lifecorner-angular-ui-kit-stepper.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-switch.mjs +249 -0
- package/fesm2022/lifecorner-angular-ui-kit-switch.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-table.mjs +1434 -0
- package/fesm2022/lifecorner-angular-ui-kit-table.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-tabs.mjs +407 -0
- package/fesm2022/lifecorner-angular-ui-kit-tabs.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-tag-input.mjs +380 -0
- package/fesm2022/lifecorner-angular-ui-kit-tag-input.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-textarea.mjs +440 -0
- package/fesm2022/lifecorner-angular-ui-kit-textarea.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-theme.mjs +145 -0
- package/fesm2022/lifecorner-angular-ui-kit-theme.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-timeline.mjs +262 -0
- package/fesm2022/lifecorner-angular-ui-kit-timeline.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-toast.mjs +352 -0
- package/fesm2022/lifecorner-angular-ui-kit-toast.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-toggle-group.mjs +215 -0
- package/fesm2022/lifecorner-angular-ui-kit-toggle-group.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-tokens.mjs +134 -0
- package/fesm2022/lifecorner-angular-ui-kit-tokens.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-toolbar.mjs +225 -0
- package/fesm2022/lifecorner-angular-ui-kit-toolbar.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-tooltip.mjs +386 -0
- package/fesm2022/lifecorner-angular-ui-kit-tooltip.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-tree-view.mjs +509 -0
- package/fesm2022/lifecorner-angular-ui-kit-tree-view.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-typography.mjs +209 -0
- package/fesm2022/lifecorner-angular-ui-kit-typography.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-verification-code-input.mjs +365 -0
- package/fesm2022/lifecorner-angular-ui-kit-verification-code-input.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit-waterfall-chart.mjs +371 -0
- package/fesm2022/lifecorner-angular-ui-kit-waterfall-chart.mjs.map +1 -0
- package/fesm2022/lifecorner-angular-ui-kit.mjs +109 -38925
- package/package.json +449 -1
- package/types/lifecorner-angular-ui-kit-accordion.d.ts +239 -0
- package/types/lifecorner-angular-ui-kit-alert.d.ts +189 -0
- package/types/lifecorner-angular-ui-kit-app-shell.d.ts +148 -0
- package/types/lifecorner-angular-ui-kit-area-chart.d.ts +180 -0
- package/types/lifecorner-angular-ui-kit-avatar-group.d.ts +62 -0
- package/types/lifecorner-angular-ui-kit-avatar.d.ts +131 -0
- package/types/lifecorner-angular-ui-kit-badge.d.ts +59 -0
- package/types/lifecorner-angular-ui-kit-bar-chart.d.ts +157 -0
- package/types/lifecorner-angular-ui-kit-bottom-nav.d.ts +184 -0
- package/types/lifecorner-angular-ui-kit-breadcrumbs.d.ts +55 -0
- package/types/lifecorner-angular-ui-kit-button.d.ts +181 -0
- package/types/lifecorner-angular-ui-kit-calendar.d.ts +136 -0
- package/types/lifecorner-angular-ui-kit-callout.d.ts +77 -0
- package/types/lifecorner-angular-ui-kit-card.d.ts +213 -0
- package/types/lifecorner-angular-ui-kit-chat.d.ts +379 -0
- package/types/lifecorner-angular-ui-kit-checkbox.d.ts +116 -0
- package/types/lifecorner-angular-ui-kit-chip.d.ts +104 -0
- package/types/lifecorner-angular-ui-kit-choice-prompt.d.ts +186 -0
- package/types/lifecorner-angular-ui-kit-code-block.d.ts +85 -0
- package/types/lifecorner-angular-ui-kit-color-picker.d.ts +88 -0
- package/types/lifecorner-angular-ui-kit-combobox.d.ts +222 -0
- package/types/lifecorner-angular-ui-kit-confirm-dialog.d.ts +211 -0
- package/types/lifecorner-angular-ui-kit-container.d.ts +47 -0
- package/types/lifecorner-angular-ui-kit-copy-field.d.ts +89 -0
- package/types/lifecorner-angular-ui-kit-date-range-picker.d.ts +126 -0
- package/types/lifecorner-angular-ui-kit-datepicker.d.ts +363 -0
- package/types/lifecorner-angular-ui-kit-dependency-viewer.d.ts +568 -0
- package/types/lifecorner-angular-ui-kit-description-list.d.ts +137 -0
- package/types/lifecorner-angular-ui-kit-diff-viewer.d.ts +93 -0
- package/types/lifecorner-angular-ui-kit-divider.d.ts +66 -0
- package/types/lifecorner-angular-ui-kit-document-viewer.d.ts +256 -0
- package/types/lifecorner-angular-ui-kit-donut-chart.d.ts +92 -0
- package/types/lifecorner-angular-ui-kit-drawer.d.ts +124 -0
- package/types/lifecorner-angular-ui-kit-email-input.d.ts +292 -0
- package/types/lifecorner-angular-ui-kit-empty-state.d.ts +81 -0
- package/types/lifecorner-angular-ui-kit-error-display.d.ts +157 -0
- package/types/lifecorner-angular-ui-kit-field-group.d.ts +69 -0
- package/types/lifecorner-angular-ui-kit-file-upload.d.ts +122 -0
- package/types/lifecorner-angular-ui-kit-filter-bar.d.ts +116 -0
- package/types/lifecorner-angular-ui-kit-footer.d.ts +97 -0
- package/types/lifecorner-angular-ui-kit-funnel-chart.d.ts +97 -0
- package/types/lifecorner-angular-ui-kit-gallery.d.ts +240 -0
- package/types/lifecorner-angular-ui-kit-gantt-chart.d.ts +133 -0
- package/types/lifecorner-angular-ui-kit-gauge.d.ts +94 -0
- package/types/lifecorner-angular-ui-kit-header.d.ts +496 -0
- package/types/lifecorner-angular-ui-kit-heatmap.d.ts +126 -0
- package/types/lifecorner-angular-ui-kit-hero.d.ts +121 -0
- package/types/lifecorner-angular-ui-kit-icon-names.d.ts +21 -0
- package/types/lifecorner-angular-ui-kit-icon.d.ts +260 -0
- package/types/lifecorner-angular-ui-kit-input.d.ts +346 -0
- package/types/lifecorner-angular-ui-kit-internal-chart.d.ts +86 -0
- package/types/lifecorner-angular-ui-kit-internal-overlay.d.ts +31 -0
- package/types/lifecorner-angular-ui-kit-internal-url.d.ts +22 -0
- package/types/lifecorner-angular-ui-kit-kanban-board.d.ts +111 -0
- package/types/lifecorner-angular-ui-kit-line-chart.d.ts +186 -0
- package/types/lifecorner-angular-ui-kit-list.d.ts +215 -0
- package/types/lifecorner-angular-ui-kit-log-viewer.d.ts +355 -0
- package/types/lifecorner-angular-ui-kit-logo.d.ts +182 -0
- package/types/lifecorner-angular-ui-kit-markdown.d.ts +278 -0
- package/types/lifecorner-angular-ui-kit-menu.d.ts +152 -0
- package/types/lifecorner-angular-ui-kit-modal.d.ts +207 -0
- package/types/lifecorner-angular-ui-kit-models.d.ts +62 -0
- package/types/lifecorner-angular-ui-kit-next-step-card.d.ts +262 -0
- package/types/lifecorner-angular-ui-kit-notification-center.d.ts +237 -0
- package/types/lifecorner-angular-ui-kit-number-input.d.ts +126 -0
- package/types/lifecorner-angular-ui-kit-page-header.d.ts +178 -0
- package/types/lifecorner-angular-ui-kit-page-layout.d.ts +61 -0
- package/types/lifecorner-angular-ui-kit-pagination.d.ts +141 -0
- package/types/lifecorner-angular-ui-kit-password-input.d.ts +361 -0
- package/types/lifecorner-angular-ui-kit-pie-chart.d.ts +58 -0
- package/types/lifecorner-angular-ui-kit-pipeline.d.ts +89 -0
- package/types/lifecorner-angular-ui-kit-popover.d.ts +104 -0
- package/types/lifecorner-angular-ui-kit-progress-bar.d.ts +116 -0
- package/types/lifecorner-angular-ui-kit-progress-ring.d.ts +67 -0
- package/types/lifecorner-angular-ui-kit-provider-button.d.ts +137 -0
- package/types/lifecorner-angular-ui-kit-radar-chart.d.ts +113 -0
- package/types/lifecorner-angular-ui-kit-radio.d.ts +297 -0
- package/types/lifecorner-angular-ui-kit-rating.d.ts +115 -0
- package/types/lifecorner-angular-ui-kit-rich-text-editor.d.ts +226 -0
- package/types/lifecorner-angular-ui-kit-scatter-plot.d.ts +190 -0
- package/types/lifecorner-angular-ui-kit-search-input.d.ts +137 -0
- package/types/lifecorner-angular-ui-kit-section.d.ts +34 -0
- package/types/lifecorner-angular-ui-kit-select.d.ts +274 -0
- package/types/lifecorner-angular-ui-kit-sidenav.d.ts +368 -0
- package/types/lifecorner-angular-ui-kit-skeleton.d.ts +61 -0
- package/types/lifecorner-angular-ui-kit-slider.d.ts +79 -0
- package/types/lifecorner-angular-ui-kit-spacer.d.ts +27 -0
- package/types/lifecorner-angular-ui-kit-sparkline.d.ts +113 -0
- package/types/lifecorner-angular-ui-kit-spinner.d.ts +50 -0
- package/types/lifecorner-angular-ui-kit-split-pane.d.ts +131 -0
- package/types/lifecorner-angular-ui-kit-stack.d.ts +49 -0
- package/types/lifecorner-angular-ui-kit-stacked-bar-chart.d.ts +171 -0
- package/types/lifecorner-angular-ui-kit-stage-list.d.ts +69 -0
- package/types/lifecorner-angular-ui-kit-stat-trend.d.ts +62 -0
- package/types/lifecorner-angular-ui-kit-status-dot.d.ts +62 -0
- package/types/lifecorner-angular-ui-kit-stepper.d.ts +113 -0
- package/types/lifecorner-angular-ui-kit-switch.d.ts +141 -0
- package/types/lifecorner-angular-ui-kit-table.d.ts +632 -0
- package/types/lifecorner-angular-ui-kit-tabs.d.ts +196 -0
- package/types/lifecorner-angular-ui-kit-tag-input.d.ts +123 -0
- package/types/lifecorner-angular-ui-kit-textarea.d.ts +225 -0
- package/types/lifecorner-angular-ui-kit-theme.d.ts +91 -0
- package/types/lifecorner-angular-ui-kit-timeline.d.ts +162 -0
- package/types/lifecorner-angular-ui-kit-toast.d.ts +204 -0
- package/types/lifecorner-angular-ui-kit-toggle-group.d.ts +100 -0
- package/types/lifecorner-angular-ui-kit-tokens.d.ts +134 -0
- package/types/lifecorner-angular-ui-kit-toolbar.d.ts +120 -0
- package/types/lifecorner-angular-ui-kit-tooltip.d.ts +120 -0
- package/types/lifecorner-angular-ui-kit-tree-view.d.ts +231 -0
- package/types/lifecorner-angular-ui-kit-typography.d.ts +126 -0
- package/types/lifecorner-angular-ui-kit-verification-code-input.d.ts +187 -0
- package/types/lifecorner-angular-ui-kit-waterfall-chart.d.ts +163 -0
- package/types/lifecorner-angular-ui-kit.d.ts +109 -17401
- package/fesm2022/lifecorner-angular-ui-kit.mjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecorner-angular-ui-kit-icon.mjs","names":[],"sources":["../../../../libs/angular-ui-kit/src/lib/icon/icon-aliases.ts","../../../../libs/angular-ui-kit/src/lib/icon/icon-inline-svgs.ts","../../../../libs/angular-ui-kit/src/lib/icon/icon-inline-tabler.data.ts","../../../../libs/angular-ui-kit/src/lib/icon/icon-inline-lookup.ts","../../../../libs/angular-ui-kit/src/lib/icon/icon-svg-builder.ts","../../../../libs/angular-ui-kit/src/lib/icon/icon-placeholder.ts","../../../../libs/angular-ui-kit/src/lib/icon/icon-trusted-types.ts","../../../../libs/angular-ui-kit/src/lib/icon/icon-dom.ts","../../../../libs/angular-ui-kit/src/lib/icon/icon.component.ts","../../../../libs/angular-ui-kit/src/lib/icon/icon.component.html","../../../../libs/angular-ui-kit/src/lib/icon/icon-catalog.ts"],"sourcesContent":["/**\n * Alias map for non-Tabler icon names.\n *\n * `lc-icon` serves the **Tabler** icon set, but components across the ecosystem\n * frequently reference **Heroicon** (and a few Material Design) names, which use\n * different identifiers. Each entry here maps such an alias to its Tabler\n * equivalent so HTTP loading resolves correctly.\n *\n * This map is part of the public API so consumers can see exactly which\n * non-Tabler names are supported (and lint against them). Every key is also\n * included in {@link ICON_NAMES} as a valid `lc-icon` name.\n *\n * @see ICON_NAMES\n * @see isValidIconName\n */\nexport const ICON_ALIASES: Readonly<Record<string, string>> = {\n // ── Material Design aliases ──\n account_balance: 'building-bank',\n analytics: 'chart-line',\n notifications_active: 'bell-ringing',\n today: 'calendar',\n create: 'pencil',\n done: 'check',\n error: 'circle-x',\n run: 'play',\n copy: 'copy',\n\n // ── Heroicon → Tabler name map ──\n // Components reference Heroicon names, but the served icon set is Tabler,\n // which uses different names. Translate them here so HTTP loading resolves.\n 'magnifying-glass': 'search',\n 'cog-6-tooth': 'settings',\n 'cog-8-tooth': 'settings',\n cog: 'settings',\n 'x-mark': 'x',\n 'x-circle': 'circle-x',\n 'check-circle': 'circle-check',\n 'information-circle': 'info-circle',\n 'exclamation-circle': 'alert-circle',\n 'exclamation-triangle': 'alert-triangle',\n 'arrow-trending-up': 'trending-up',\n 'arrow-trending-down': 'trending-down',\n 'trending-up': 'trending-up',\n 'trending-down': 'trending-down',\n 'arrow-up': 'arrow-up',\n 'arrow-down': 'arrow-down',\n 'arrow-left': 'arrow-left',\n 'arrow-right': 'arrow-right',\n 'arrow-down-tray': 'download',\n 'arrow-up-tray': 'upload',\n 'arrow-top-right-on-square': 'external-link',\n 'arrows-pointing-out': 'arrows-maximize',\n 'arrows-pointing-in': 'arrows-minimize',\n document: 'file',\n 'document-text': 'file-text',\n 'document-duplicate': 'copy',\n 'clipboard-document': 'clipboard',\n 'clipboard-document-check': 'clipboard-check',\n 'clipboard-document-list': 'clipboard-list',\n 'archive-box': 'archive',\n 'cpu-chip': 'cpu',\n 'puzzle-piece': 'puzzle',\n 'paper-airplane': 'send',\n 'presentation-chart-bar': 'presentation-analytics',\n 'chat-bubble-left': 'message-circle',\n 'chat-bubble-left-right': 'messages',\n 'building-office': 'building',\n 'rocket-launch': 'rocket',\n // Heroicon's logout arrow — v2 name plus the v1 spelling still in the wild.\n 'arrow-right-start-on-rectangle': 'logout',\n 'arrow-right-on-rectangle': 'logout',\n folder: 'folder',\n 'folder-open': 'folder-open',\n envelope: 'mail',\n bell: 'bell',\n 'bell-alert': 'bell-ringing',\n trash: 'trash',\n users: 'users',\n 'user-group': 'users',\n 'user-circle': 'user-circle',\n 'credit-card': 'credit-card',\n 'currency-dollar': 'currency-dollar',\n 'globe-alt': 'world',\n 'map-pin': 'map-pin',\n phone: 'phone',\n heart: 'heart',\n inbox: 'inbox',\n sparkles: 'sparkles',\n 'shield-check': 'shield-check',\n truck: 'truck',\n 'cloud-arrow-up': 'cloud-upload',\n 'cloud-arrow-down': 'cloud-download',\n 'eye-slash': 'eye-off',\n 'lock-closed': 'lock',\n 'lock-open': 'lock-open',\n locked: 'lock',\n identification: 'id',\n 'chart-bar': 'chart-bar',\n 'chart-bar-square': 'chart-bar',\n 'chevron-up': 'chevron-up',\n 'chevron-down': 'chevron-down',\n 'chevron-left': 'chevron-left',\n 'chevron-right': 'chevron-right',\n 'bars-3': 'menu-2',\n 'bars-3-bottom-left': 'menu-2',\n 'bars-3-bottom-right': 'menu-2',\n 'ellipsis-horizontal': 'dots',\n 'ellipsis-vertical': 'dots-vertical',\n bold: 'bold',\n italic: 'italic',\n underline: 'underline',\n share: 'share',\n percent: 'percentage',\n 'plus-circle': 'circle-plus',\n 'minus-circle': 'circle-minus',\n};\n","import type { IconVariant } from './icon.component';\n\n/**\n * Inline SVG map for common icons.\n *\n * These are rendered directly (avoiding an HTTP request) for the most frequently\n * used icons, and act as a resilient fallback in environments where the Tabler\n * assets are not served. Keyed by the (alias-resolved) icon name, then variant.\n *\n * Every key is included in {@link ICON_NAMES} as a valid `lc-icon` name.\n *\n * @see ICON_NAMES\n */\nexport const INLINE_ICON_SVGS: Readonly<\n Record<string, Record<IconVariant, string>>\n> = {\n home: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m2.25 12 8.954-8.955c.44-.439 1.152-.439 1.591 0L21.75 12M4.5 9.75v10.125c0 .621.504 1.125 1.125 1.125H9.75v-4.875c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125V21h4.125c.621 0 1.125-.504 1.125-1.125V9.75M8.25 21h8.25\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M11.47 3.841a.75.75 0 0 1 1.06 0l8.69 8.69a.75.75 0 1 0 1.06-1.061l-8.689-8.69a2.25 2.25 0 0 0-3.182 0l-8.69 8.69a.75.75 0 1 0 1.061 1.06l8.69-8.689Z\" /><path d=\"m12 5.432 8.159 8.159c.03.03.06.058.091.086v6.198c0 1.035-.84 1.875-1.875 1.875H15a.75.75 0 0 1-.75-.75v-4.5a.75.75 0 0 0-.75-.75h-3a.75.75 0 0 0-.75.75V21a.75.75 0 0 1-.75.75H5.625a1.875 1.875 0 0 1-1.875-1.875v-6.198a2.29 2.29 0 0 0 .091-.086L12 5.432Z\" /></svg>',\n },\n 'chart-bar-square': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M7.5 14.25v2.25m3-4.5v4.5m3-6.75v6.75m3-9v9M6 20.25h12A2.25 2.25 0 0 0 20.25 18V6A2.25 2.25 0 0 0 18 3.75H6A2.25 2.25 0 0 0 3.75 6v12A2.25 2.25 0 0 0 6 20.25Z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M3 6a3 3 0 0 1 3-3h12a3 3 0 0 1 3 3v12a3 3 0 0 1-3 3H6a3 3 0 0 1-3-3V6Zm4.5 7.5a.75.75 0 0 1 .75.75v2.25a.75.75 0 0 1-1.5 0v-2.25a.75.75 0 0 1 .75-.75Zm3.75-1.5a.75.75 0 0 0-1.5 0v4.5a.75.75 0 0 0 1.5 0V12Zm2.25-3a.75.75 0 0 1 .75.75v6.75a.75.75 0 0 1-1.5 0V9.75A.75.75 0 0 1 13.5 9Zm3.75-1.5a.75.75 0 0 0-1.5 0v9a.75.75 0 0 0 1.5 0v-9Z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'light-bulb': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 18v-5.25m0 0a6.01 6.01 0 0 0 1.5-.189m-1.5.189a6.01 6.01 0 0 1-1.5-.189m3.75 7.478a12.06 12.06 0 0 1-4.5 0m3.75 2.383a14.406 14.406 0 0 1-3 0M14.25 18v-.192c0-.983.658-1.823 1.508-2.316a7.5 7.5 0 1 0-7.517 0c.85.493 1.509 1.333 1.509 2.316V18\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 .75a8.25 8.25 0 0 0-4.135 15.39c.686.398 1.115 1.008 1.134 1.623a.75.75 0 0 0 .577.706c.352.083.71.148 1.074.195.323.041.6-.218.6-.544v-4.661a6.714 6.714 0 0 1-.937-.171.75.75 0 1 1 .374-1.453 5.261 5.261 0 0 0 2.626 0 .75.75 0 1 1 .374 1.452 6.712 6.712 0 0 1-.937.172v4.66c0 .327.277.586.6.545.364-.047.722-.112 1.074-.195a.75.75 0 0 0 .577-.706c.02-.615.448-1.225 1.134-1.623A8.25 8.25 0 0 0 12 .75Z\" /><path fill-rule=\"evenodd\" d=\"M9.013 19.9a.75.75 0 0 1 .877-.597 11.319 11.319 0 0 0 4.22 0 .75.75 0 1 1 .28 1.473 12.819 12.819 0 0 1-4.78 0 .75.75 0 0 1-.597-.876ZM9.754 22.344a.75.75 0 0 1 .824-.668 13.682 13.682 0 0 0 2.844 0 .75.75 0 1 1 .156 1.492 15.156 15.156 0 0 1-3.156 0 .75.75 0 0 1-.668-.824Z\" clip-rule=\"evenodd\" /></svg>',\n },\n banknotes: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M2.25 18.75a60.07 60.07 0 0 1 15.797 2.101c.727.198 1.453-.342 1.453-1.096V18.75M3.75 4.5v.75A.75.75 0 0 1 3 6h-.75m0 0v-.375c0-.621.504-1.125 1.125-1.125H20.25M2.25 6v9m18-10.5v.75c0 .414.336.75.75.75h.75m-1.5-1.5h.375c.621 0 1.125.504 1.125 1.125v9.75c0 .621-.504 1.125-1.125 1.125h-.375m1.5-1.5H21a.75.75 0 0 0-.75.75v.75m0 0H3.75m0 0h-.375a1.125 1.125 0 0 1-1.125-1.125V15m1.5 1.5v-.75A.75.75 0 0 0 3 15h-.75M15 10.5a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm3 0h.008v.008H18V10.5Zm-12 0h.008v.008H6V10.5Z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 7.5a2.25 2.25 0 1 0 0 4.5 2.25 2.25 0 0 0 0-4.5Z\" /><path fill-rule=\"evenodd\" d=\"M1.5 4.875C1.5 3.839 2.34 3 3.375 3h17.25c1.035 0 1.875.84 1.875 1.875v9.75c0 1.036-.84 1.875-1.875 1.875H3.375A1.875 1.875 0 0 1 1.5 14.625v-9.75ZM8.25 9.75a3.75 3.75 0 1 1 7.5 0 3.75 3.75 0 0 1-7.5 0ZM18.75 9a.75.75 0 0 0-.75.75v.008c0 .414.336.75.75.75h.008a.75.75 0 0 0 .75-.75V9.75a.75.75 0 0 0-.75-.75h-.008ZM4.5 9.75A.75.75 0 0 1 5.25 9h.008a.75.75 0 0 1 .75.75v.008a.75.75 0 0 1-.75.75H5.25a.75.75 0 0 1-.75-.75V9.75Z\" clip-rule=\"evenodd\" /><path d=\"M2.25 18a.75.75 0 0 0 0 1.5c5.4 0 10.63.722 15.6 2.075 1.19.324 2.4-.558 2.4-1.82V18.75a.75.75 0 0 0-.75-.75H2.25Z\" /></svg>',\n },\n 'play-circle': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z\" /><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M15.91 11.672a.375.375 0 0 1 0 .656l-5.603 3.113a.375.375 0 0 1-.557-.328V8.887c0-.286.307-.466.557-.327l5.603 3.112Z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'x-mark': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M6 18L18 6M6 6l12 12\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M5.47 5.47a.75.75 0 011.06 0L12 10.94l5.47-5.47a.75.75 0 111.06 1.06L13.06 12l5.47 5.47a.75.75 0 11-1.06 1.06L12 13.06l-5.47 5.47a.75.75 0 01-1.06-1.06L10.94 12 5.47 6.53a.75.75 0 010-1.06z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'bars-3': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3.75 6.75h16.5M3.75 12h16.5m-16.5 5.25h16.5\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M3 6.75A.75.75 0 013.75 6h16.5a.75.75 0 010 1.5H3.75A.75.75 0 013 6.75zM3 12a.75.75 0 01.75-.75h16.5a.75.75 0 010 1.5H3.75A.75.75 0 013 12zm0 5.25a.75.75 0 01.75-.75h16.5a.75.75 0 010 1.5H3.75a.75.75 0 01-.75-.75z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'globe-alt': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 21a9.004 9.004 0 008.716-6.747M12 21a9.004 9.004 0 01-8.716-6.747M12 21c2.485 0 4.5-4.03 4.5-9S14.485 3 12 3m0 18c-2.485 0-4.5-4.03-4.5-9S9.515 3 12 3m0 0a8.997 8.997 0 017.843 4.582M12 3a8.997 8.997 0 00-7.843 4.582m15.686 0A11.953 11.953 0 0112 10.5c-2.998 0-5.74-1.1-7.843-2.918m15.686 0A8.959 8.959 0 0121 12c0 .778-.099 1.533-.284 2.253m0 0A17.919 17.919 0 0112 16.5c-3.162 0-6.133-.815-8.716-2.247m0 0A9.015 9.015 0 013 12c0-1.605.42-3.113 1.157-4.418\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M21.721 12.752a9.711 9.711 0 00-.945-5.003 12.754 12.754 0 01-4.339 2.708 18.991 18.991 0 01-.214 4.772 17.165 17.165 0 005.498-2.477zM14.634 15.55a17.324 17.324 0 00.332-4.647c-.952.227-1.945.347-2.966.347-1.021 0-2.014-.12-2.966-.347a17.515 17.515 0 00.332 4.647 17.385 17.385 0 005.268 0zM9.772 17.119a18.963 18.963 0 004.456 0A17.182 17.182 0 0112 21.724a17.18 17.18 0 01-2.228-4.605zM7.777 15.23a18.87 18.87 0 01-.214-4.774 12.753 12.753 0 01-4.34-2.708 9.711 9.711 0 00-.944 5.004 17.165 17.165 0 005.498 2.477zM21.356 14.752a9.765 9.765 0 01-7.478 6.817 18.64 18.64 0 001.988-4.718 18.627 18.627 0 005.49-2.098zM2.644 14.752c1.682.971 3.53 1.688 5.49 2.099a18.64 18.64 0 001.988 4.718 9.765 9.765 0 01-7.478-6.816zM13.878 2.43a9.755 9.755 0 016.116 3.986 11.267 11.267 0 01-3.746 2.504 18.63 18.63 0 00-2.37-6.49zM12 2.276a17.152 17.152 0 012.805 7.121c-.897.23-1.837.353-2.805.353-.968 0-1.908-.122-2.805-.353A17.151 17.151 0 0112 2.276zM10.122 2.43a18.629 18.629 0 00-2.37 6.49 11.266 11.266 0 01-3.746-2.504 9.754 9.754 0 016.116-3.985z\" /></svg>',\n },\n calendar: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 012.25-2.25h13.5A2.25 2.25 0 0121 7.5v11.25m-18 0A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75m-18 0v-7.5A2.25 2.25 0 015.25 9h13.5A2.25 2.25 0 0121 11.25v7.5\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12.75 12.75a.75.75 0 11-1.5 0 .75.75 0 011.5 0zM7.5 15.75a.75.75 0 100-1.5.75.75 0 000 1.5zM8.25 17.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zM9.75 15.75a.75.75 0 100-1.5.75.75 0 000 1.5zM10.5 17.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zM12 15.75a.75.75 0 100-1.5.75.75 0 000 1.5zM12.75 17.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zM14.25 15.75a.75.75 0 100-1.5.75.75 0 000 1.5zM15 17.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zM16.5 15.75a.75.75 0 100-1.5.75.75 0 000 1.5zM15 12.75a.75.75 0 11-1.5 0 .75.75 0 011.5 0zM16.5 13.5a.75.75 0 100-1.5.75.75 0 000 1.5z\" /><path fill-rule=\"evenodd\" d=\"M6.75 2.25A.75.75 0 017.5 3v1.5h9V3A.75.75 0 0118 3v1.5h.75a3 3 0 013 3v11.25a3 3 0 01-3 3H5.25a3 3 0 01-3-3V7.5a3 3 0 013-3H6V3a.75.75 0 01.75-.75zm13.5 9a1.5 1.5 0 00-1.5-1.5H5.25a1.5 1.5 0 00-1.5 1.5v7.5a1.5 1.5 0 001.5 1.5h13.5a1.5 1.5 0 001.5-1.5v-7.5z\" clip-rule=\"evenodd\" /></svg>',\n },\n hashtag: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5.25 8.25h15m-16.5 7.5h15m-1.8-13.5l-3.9 19.5m-2.1-19.5l-3.9 19.5\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M11.097 1.515a.75.75 0 01.589.882L10.666 7.5h4.47l1.079-5.397a.75.75 0 111.47.294L16.665 7.5h3.585a.75.75 0 010 1.5h-3.885l-1.2 6h3.585a.75.75 0 010 1.5h-3.885l-1.08 5.397a.75.75 0 11-1.47-.294l1.02-5.103h-4.47l-1.08 5.397a.75.75 0 01-1.47-.294l1.02-5.103H3.75a.75.75 0 010-1.5h3.885l1.2-6H5.25a.75.75 0 010-1.5h3.885l1.08-5.397a.75.75 0 01.882-.588zM10.365 9l-1.2 6h4.47l1.2-6h-4.47z\" clip-rule=\"evenodd\" /></svg>',\n },\n sun: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 3v2.25m6.364.386l-1.591 1.591M21 12h-2.25m-.386 6.364l-1.591-1.591M12 18.75V21m-4.773-4.227l-1.591 1.591M5.25 12H3m4.227-4.773L5.636 5.636M15.75 12a3.75 3.75 0 11-7.5 0 3.75 3.75 0 017.5 0z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 2.25a.75.75 0 01.75.75v2.25a.75.75 0 01-1.5 0V3a.75.75 0 01.75-.75zM7.5 12a4.5 4.5 0 119 0 4.5 4.5 0 01-9 0zM18.894 6.166a.75.75 0 00-1.06-1.06l-1.591 1.59a.75.75 0 101.06 1.061l1.591-1.59zM21.75 12a.75.75 0 01-.75.75h-2.25a.75.75 0 010-1.5H21a.75.75 0 01.75.75zM17.834 18.894a.75.75 0 001.06-1.06l-1.59-1.591a.75.75 0 10-1.061 1.06l1.59 1.591zM12 18a.75.75 0 01.75.75V21a.75.75 0 01-1.5 0v-2.25A.75.75 0 0112 18zM7.758 17.303a.75.75 0 00-1.061-1.06l-1.591 1.59a.75.75 0 001.06 1.061l1.591-1.59zM6 12a.75.75 0 01-.75.75H3a.75.75 0 010-1.5h2.25A.75.75 0 016 12zM6.697 7.757a.75.75 0 001.06-1.06l-1.59-1.591a.75.75 0 00-1.061 1.06l1.59 1.591z\" /></svg>',\n },\n moon: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M21.752 15.002A9.718 9.718 0 0118 15.75c-5.385 0-9.75-4.365-9.75-9.75 0-1.33.266-2.597.748-3.752A9.753 9.753 0 003 11.25C3 16.635 7.365 21 12.75 21a9.753 9.753 0 009.002-5.998z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M9.528 1.718a.75.75 0 01.162.819A8.97 8.97 0 009 6a9 9 0 009 9 8.97 8.97 0 003.463-.69.75.75 0 01.981.98 10.503 10.503 0 01-9.694 6.46c-5.799 0-10.5-4.701-10.5-10.5 0-4.368 2.667-8.112 6.46-9.694a.75.75 0 01.818.162z\" clip-rule=\"evenodd\" /></svg>',\n },\n user: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M15.75 6a3.75 3.75 0 11-7.5 0 3.75 3.75 0 017.5 0zM4.501 20.118a7.5 7.5 0 0114.998 0A17.933 17.933 0 0112 21.75c-2.676 0-5.216-.584-7.499-1.632z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M7.5 6a4.5 4.5 0 119 0 4.5 4.5 0 01-9 0zM3.751 20.105a8.25 8.25 0 0116.498 0 .75.75 0 01-.437.695A18.683 18.683 0 0112 22.5c-2.786 0-5.433-.608-7.812-1.7a.75.75 0 01-.437-.695z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'chevron-down': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M19.5 8.25l-7.5 7.5-7.5-7.5\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M12.53 16.28a.75.75 0 01-1.06 0l-7.5-7.5a.75.75 0 011.06-1.06L12 14.69l6.97-6.97a.75.75 0 111.06 1.06l-7.5 7.5z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'chevron-up': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 15.75l7.5-7.5 7.5 7.5\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M11.47 7.72a.75.75 0 011.06 0l7.5 7.5a.75.75 0 11-1.06 1.06L12 9.31l-6.97 6.97a.75.75 0 01-1.06-1.06l7.5-7.5z\" clip-rule=\"evenodd\" /></svg>',\n },\n eye: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M2.036 12.322a1.012 1.012 0 010-.639C3.423 7.51 7.36 4.5 12 4.5c4.638 0 8.573 3.007 9.963 7.178.07.207.07.431 0 .639C20.577 16.49 16.64 19.5 12 19.5c-4.638 0-8.573-3.007-9.963-7.178z\" /><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M15 12a3 3 0 11-6 0 3 3 0 016 0z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 15a3 3 0 100-6 3 3 0 000 6z\" /><path fill-rule=\"evenodd\" d=\"M1.323 11.447C2.811 6.976 7.028 3.75 12.001 3.75c4.97 0 9.185 3.223 10.675 7.69.12.362.12.752 0 1.113-1.487 4.471-5.705 7.697-10.677 7.697-4.97 0-9.186-3.223-10.675-7.69a1.762 1.762 0 010-1.113zM17.25 12a5.25 5.25 0 11-10.5 0 5.25 5.25 0 0110.5 0z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'eye-slash': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3.98 8.223A10.477 10.477 0 001.934 12C3.226 16.338 7.244 19.5 12 19.5c.993 0 1.953-.138 2.863-.395M6.228 6.228A10.45 10.45 0 0112 4.5c4.756 0 8.773 3.162 10.065 7.498a10.523 10.523 0 01-4.293 5.774M6.228 6.228L3 3m3.228 3.228l3.65 3.65m7.894 7.894L21 21m-3.228-3.228l-3.65-3.65m0 0a3 3 0 10-4.243-4.243m4.242 4.242L9.88 9.88\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M3.53 2.47a.75.75 0 00-1.06 1.06l18 18a.75.75 0 101.06-1.06l-18-18zM22.676 12.553a11.249 11.249 0 01-2.631 4.31l-3.099-3.099a5.25 5.25 0 00-6.71-6.71L7.759 4.577a11.217 11.217 0 014.242-.827c4.97 0 9.185 3.223 10.675 7.69.12.362.12.752 0 1.113z\" /><path d=\"M15.75 12c0 .18-.013.357-.037.53l-4.244-4.243A3.75 3.75 0 0115.75 12zM12.53 15.713l-4.243-4.244a3.75 3.75 0 004.243 4.243z\" /><path d=\"M6.75 12c0-.619.107-1.213.304-1.764l-3.1-3.1a11.25 11.25 0 00-2.63 4.31c-.12.362-.12.752 0 1.114 1.489 4.467 5.704 7.69 10.675 7.69 1.5 0 2.933-.294 4.242-.827l-2.477-2.477A5.25 5.25 0 016.75 12z\" /></svg>',\n },\n 'check-circle': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 12.75L11.25 15 15 9.75M21 12a9 9 0 11-18 0 9 9 0 0118 0z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12zm13.36-1.814a.75.75 0 10-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 00-1.06 1.06l2.25 2.25a.75.75 0 001.14-.094l3.75-5.25z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'exclamation-triangle': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'information-circle': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M11.25 11.25l.041-.02a.75.75 0 011.063.852l-.708 2.836a.75.75 0 001.063.853l.041-.021M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9-3.75h.008v.008H12V8.25z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12zm8.706-1.442c1.146-.573 2.437.463 2.126 1.706l-.709 2.836.042-.02a.75.75 0 01.67 1.34l-.04.022c-1.147.573-2.438-.463-2.127-1.706l.71-2.836-.042.02a.75.75 0 11-.671-1.34l.041-.022zM12 9a.75.75 0 100-1.5.75.75 0 000 1.5z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'exclamation-circle': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 9v3.75m9-.75a9 9 0 11-18 0 9 9 0 0118 0zm-9 3.75h.008v.008H12v-.008z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z\" clip-rule=\"evenodd\" /></svg>',\n },\n clock: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 6v6h4.5m4.5 0a9 9 0 11-18 0 9 9 0 0118 0z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M12 2.25c-5.385 0-9.75 4.365-9.75 9.75s4.365 9.75 9.75 9.75 9.75-4.365 9.75-9.75S17.385 2.25 12 2.25zM12.75 6a.75.75 0 00-1.5 0v6c0 .414.336.75.75.75h4.5a.75.75 0 000-1.5h-3.75V6z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'arrow-path': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.023 9.348h4.992v-.001M2.985 19.644v-4.992m0 0h4.992m-4.993 0l3.181 3.183a8.25 8.25 0 0013.803-3.7M4.031 9.865a8.25 8.25 0 0113.803-3.7l3.181 3.182m0-4.991v4.99\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M4.755 10.059a7.5 7.5 0 0112.548-3.364l1.903 1.903h-3.183a.75.75 0 100 1.5h4.992a.75.75 0 00.75-.75V4.356a.75.75 0 00-1.5 0v3.18l-1.9-1.9A9 9 0 003.306 9.67a.75.75 0 101.45.388zm15.408 3.352a.75.75 0 00-.919.53 7.5 7.5 0 01-12.548 3.364l-1.902-1.903h3.183a.75.75 0 000-1.5H2.984a.75.75 0 00-.75.75v4.992a.75.75 0 001.5 0v-3.18l1.9 1.9A9 9 0 0020.16 14.339a.75.75 0 00-.53-.918z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'building-library': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 21v-8.25M15.75 21v-8.25M8.25 21v-8.25M3 9l9-6 9 6m-1.5 12V10.332A48.36 48.36 0 0 0 12 9.75c-2.551 0-5.056.2-7.5.582V21M3 21h18M12 6.75h.008v.008H12V6.75Z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M11.584 2.376a.75.75 0 0 1 .832 0l9 6a.75.75 0 1 1-.832 1.248L12 3.901 3.416 9.624a.75.75 0 0 1-.832-1.248l9-6Z\" /><path fill-rule=\"evenodd\" d=\"M20.25 10.332v9.918H21a.75.75 0 0 1 0 1.5H3a.75.75 0 0 1 0-1.5h.75v-9.918a.75.75 0 0 1 .634-.74A49.109 49.109 0 0 1 12 9c2.59 0 5.134.202 7.616.592a.75.75 0 0 1 .634.74Zm-7.5 2.418a.75.75 0 0 0-1.5 0v6.75a.75.75 0 0 0 1.5 0v-6.75Zm3-.75a.75.75 0 0 1 .75.75v6.75a.75.75 0 0 1-1.5 0v-6.75a.75.75 0 0 1 .75-.75ZM9 12.75a.75.75 0 0 0-1.5 0v6.75a.75.75 0 0 0 1.5 0v-6.75Z\" clip-rule=\"evenodd\" /><path d=\"M12 7.875a1.125 1.125 0 1 0 0-2.25 1.125 1.125 0 0 0 0 2.25Z\" /></svg>',\n },\n 'arrow-trending-up': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M2.25 18 9 11.25l4.306 4.306a11.95 11.95 0 0 1 5.814-5.518l2.74-1.22m0 0-5.94-2.281m5.94 2.28-2.28 5.941\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M15.22 6.268a.75.75 0 0 1 .968-.431l5.942 2.28a.75.75 0 0 1 .431.97l-2.28 5.94a.75.75 0 1 1-1.4-.537l1.63-4.251-1.086.484a11.2 11.2 0 0 0-5.45 5.173.75.75 0 0 1-1.199.19L9 12.312l-6.22 6.22a.75.75 0 0 1-1.06-1.061l6.75-6.75a.75.75 0 0 1 1.06 0l3.606 3.606a12.695 12.695 0 0 1 5.68-4.974l1.086-.483-4.251-1.632a.75.75 0 0 1-.432-.97Z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'arrow-trending-down': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M2.25 6 9 12.75l4.286-4.286a11.948 11.948 0 0 1 4.306 6.43l.776 2.898m0 0 3.182-5.511m-3.182 5.51-5.511-3.181\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M1.72 5.47a.75.75 0 0 1 1.06 0L9 11.69l3.756-3.756a.75.75 0 0 1 .985-.066 12.698 12.698 0 0 1 4.575 6.832l.308 1.149 2.277-3.943a.75.75 0 1 1 1.299.75l-3.182 5.51a.75.75 0 0 1-1.025.275l-5.511-3.181a.75.75 0 0 1 .75-1.3l3.943 2.277-.308-1.149a11.194 11.194 0 0 0-3.528-5.617l-3.809 3.81a.75.75 0 0 1-1.06 0L1.72 6.53a.75.75 0 0 1 0-1.061Z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'percent-badge': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m8.99 14.993 6-6m6 3.001c0 1.268-.63 2.39-1.593 3.069a3.746 3.746 0 0 1-1.043 3.296 3.745 3.745 0 0 1-3.296 1.043 3.745 3.745 0 0 1-3.068 1.593c-1.268 0-2.39-.63-3.068-1.593a3.745 3.745 0 0 1-3.296-1.043 3.746 3.746 0 0 1-1.043-3.297 3.746 3.746 0 0 1-1.593-3.068c0-1.268.63-2.39 1.593-3.068a3.746 3.746 0 0 1 1.043-3.297 3.745 3.745 0 0 1 3.296-1.042 3.745 3.745 0 0 1 3.068-1.594c1.268 0 2.39.63 3.068 1.593a3.745 3.745 0 0 1 3.296 1.043 3.746 3.746 0 0 1 1.043 3.297 3.746 3.746 0 0 1 1.593 3.068ZM9.74 9.743h.008v.007H9.74v-.007Zm.375 0a.375.375 0 1 1-.75 0 .375.375 0 0 1 .75 0Zm4.125 4.5h.008v.008h-.008v-.008Zm.375 0a.375.375 0 1 1-.75 0 .375.375 0 0 1 .75 0Z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M11.99 2.243a4.49 4.49 0 0 0-3.398 1.55 4.49 4.49 0 0 0-3.497 1.306 4.491 4.491 0 0 0-1.307 3.498 4.491 4.491 0 0 0-1.548 3.397c0 1.357.6 2.573 1.548 3.397a4.491 4.491 0 0 0 1.307 3.498 4.49 4.49 0 0 0 3.498 1.307 4.49 4.49 0 0 0 3.397 1.549 4.49 4.49 0 0 0 3.397-1.549 4.49 4.49 0 0 0 3.497-1.307 4.491 4.491 0 0 0 1.306-3.497 4.491 4.491 0 0 0 1.55-3.398c0-1.357-.601-2.573-1.549-3.397a4.491 4.491 0 0 0-1.307-3.498 4.49 4.49 0 0 0-3.498-1.307 4.49 4.49 0 0 0-3.396-1.549Zm3.53 7.28a.75.75 0 0 0-1.06-1.06l-6 6a.75.75 0 1 0 1.06 1.06l6-6Zm-5.78-.905a1.125 1.125 0 1 0 0 2.25 1.125 1.125 0 0 0 0-2.25Zm4.5 4.5a1.125 1.125 0 1 0 0 2.25 1.125 1.125 0 0 0 0-2.25Z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'presentation-chart-line': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3.75 3v11.25A2.25 2.25 0 0 0 6 16.5h2.25M3.75 3h-1.5m1.5 0h16.5m0 0h1.5m-1.5 0v11.25A2.25 2.25 0 0 1 18 16.5h-2.25m-7.5 0h7.5m-7.5 0-1 3m8.5-3 1 3m0 0 .5 1.5m-.5-1.5h-9.5m0 0-.5 1.5m.75-9 3-3 2.148 2.148A12.061 12.061 0 0 1 16.5 7.605\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M2.25 2.25a.75.75 0 0 0 0 1.5H3v10.5a3 3 0 0 0 3 3h1.21l-1.172 3.513a.75.75 0 0 0 1.424.474l.329-.987h8.418l.33.987a.75.75 0 0 0 1.422-.474l-1.17-3.513H18a3 3 0 0 0 3-3V3.75h.75a.75.75 0 0 0 0-1.5H2.25Zm6.54 15h6.42l.5 1.5H8.29l.5-1.5Zm8.085-8.995a.75.75 0 1 0-.75-1.299 12.81 12.81 0 0 0-3.558 3.05L11.03 8.47a.75.75 0 0 0-1.06 0l-3 3a.75.75 0 1 0 1.06 1.06l2.47-2.47 1.617 1.618a.75.75 0 0 0 1.146-.102 11.312 11.312 0 0 1 3.612-3.321Z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'bell-alert': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M14.857 17.082a23.848 23.848 0 0 0 5.454-1.31A8.967 8.967 0 0 1 18 9.75V9A6 6 0 0 0 6 9v.75a8.967 8.967 0 0 1-2.312 6.022c1.733.64 3.56 1.085 5.455 1.31m5.714 0a24.255 24.255 0 0 1-5.714 0m5.714 0a3 3 0 1 1-5.714 0M3.124 7.5A8.969 8.969 0 0 1 5.292 3m13.416 0a8.969 8.969 0 0 1 2.168 4.5\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M5.85 3.5a.75.75 0 0 0-1.117-1 9.719 9.719 0 0 0-2.348 4.876.75.75 0 0 0 1.479.248A8.219 8.219 0 0 1 5.85 3.5ZM19.267 2.5a.75.75 0 1 0-1.118 1 8.22 8.22 0 0 1 1.987 4.124.75.75 0 0 0 1.48-.248A9.72 9.72 0 0 0 19.266 2.5Z\" /><path fill-rule=\"evenodd\" d=\"M12 2.25A6.75 6.75 0 0 0 5.25 9v.75a8.217 8.217 0 0 1-2.119 5.52.75.75 0 0 0 .298 1.206c1.544.57 3.16.99 4.831 1.243a3.75 3.75 0 1 0 7.48 0 24.583 24.583 0 0 0 4.83-1.244.75.75 0 0 0 .298-1.205 8.217 8.217 0 0 1-2.118-5.52V9A6.75 6.75 0 0 0 12 2.25ZM9.75 18c0-.034 0-.067.002-.1a25.05 25.05 0 0 0 4.496 0l.002.1a2.25 2.25 0 1 1-4.5 0Z\" clip-rule=\"evenodd\" /></svg>',\n },\n pencil: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L6.832 19.82a4.5 4.5 0 0 1-1.897 1.13l-2.685.8.8-2.685a4.5 4.5 0 0 1 1.13-1.897L16.863 4.487Zm0 0L19.5 7.125\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M21.731 2.269a2.625 2.625 0 0 0-3.712 0l-1.157 1.157 3.712 3.712 1.157-1.157a2.625 2.625 0 0 0 0-3.712ZM19.513 8.199l-3.712-3.712-12.15 12.15a5.25 5.25 0 0 0-1.32 2.214l-.8 2.685a.75.75 0 0 0 .933.933l2.685-.8a5.25 5.25 0 0 0 2.214-1.32L19.513 8.2Z\" /></svg>',\n },\n play: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5.25 5.653c0-.856.917-1.398 1.667-.986l11.54 6.347a1.125 1.125 0 0 1 0 1.972l-11.54 6.347a1.125 1.125 0 0 1-1.667-.986V5.653Z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M4.5 5.653c0-1.427 1.529-2.33 2.779-1.643l11.54 6.347c1.295.712 1.295 2.573 0 3.286L7.28 19.99c-1.25.687-2.779-.217-2.779-1.643V5.653Z\" clip-rule=\"evenodd\" /></svg>',\n },\n check: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m4.5 12.75 6 6 9-13.5\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M19.916 4.626a.75.75 0 0 1 .208 1.04l-9 13.5a.75.75 0 0 1-1.154.114l-6-6a.75.75 0 0 1 1.06-1.06l5.353 5.353 8.493-12.74a.75.75 0 0 1 1.04-.207Z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'document-duplicate': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M7.5 3.375c0-1.036.84-1.875 1.875-1.875h.375a3.75 3.75 0 0 1 3.75 3.75v1.875C13.5 8.161 14.34 9 15.375 9h1.875A3.75 3.75 0 0 1 21 12.75v3.375C21 17.16 20.16 18 19.125 18h-9.75A1.875 1.875 0 0 1 7.5 16.125V3.375Z\" /><path d=\"M15 5.25a5.23 5.23 0 0 0-1.279-3.434 9.768 9.768 0 0 1 6.963 6.963A5.23 5.23 0 0 0 17.25 7.5h-1.875A.375.375 0 0 1 15 7.125V5.25ZM4.875 6H6v10.125A3.375 3.375 0 0 0 9.375 19.5H16.5v1.125c0 1.035-.84 1.875-1.875 1.875h-9.75A1.875 1.875 0 0 1 3 20.625V7.875C3 6.839 3.84 6 4.875 6Z\" /></svg>',\n },\n 'chart-bar': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3 13.125C3 12.504 3.504 12 4.125 12h2.25c.621 0 1.125.504 1.125 1.125v6.75C7.5 20.496 6.996 21 6.375 21h-2.25A1.125 1.125 0 0 1 3 19.875v-6.75ZM9.75 8.625c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125v11.25c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V8.625ZM16.5 4.125c0-.621.504-1.125 1.125-1.125h2.25C20.496 3 21 3.504 21 4.125v15.75c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V4.125Z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M18.375 2.25c-1.035 0-1.875.84-1.875 1.875v15.75c0 1.035.84 1.875 1.875 1.875h.75c1.035 0 1.875-.84 1.875-1.875V4.125c0-1.036-.84-1.875-1.875-1.875h-.75ZM9.75 8.625c0-1.036.84-1.875 1.875-1.875h.75c1.036 0 1.875.84 1.875 1.875v11.25c0 1.035-.84 1.875-1.875 1.875h-.75a1.875 1.875 0 0 1-1.875-1.875V8.625ZM3 13.125c0-1.036.84-1.875 1.875-1.875h.75c1.036 0 1.875.84 1.875 1.875v6.75c0 1.035-.84 1.875-1.875 1.875h-.75A1.875 1.875 0 0 1 3 19.875v-6.75Z\" /></svg>',\n },\n bolt: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m3.75 13.5 10.5-11.25L12 10.5h8.25L9.75 21.75 12 13.5H3.75Z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M14.615 1.595a.75.75 0 0 1 .359.852L12.982 9.75h7.268a.75.75 0 0 1 .548 1.262l-10.5 11.25a.75.75 0 0 1-1.272-.71l1.992-7.302H3.75a.75.75 0 0 1-.548-1.262l10.5-11.25a.75.75 0 0 1 .913-.143Z\" clip-rule=\"evenodd\" /></svg>',\n },\n star: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M11.48 3.499a.562.562 0 0 1 1.04 0l2.125 5.111a.563.563 0 0 0 .475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.563.563 0 0 0-.182.557l1.285 5.385a.562.562 0 0 1-.84.61l-4.725-2.885a.562.562 0 0 0-.586 0L6.982 20.54a.562.562 0 0 1-.84-.61l1.285-5.386a.562.562 0 0 0-.182-.557l-4.204-3.602a.562.562 0 0 1 .321-.988l5.518-.442a.563.563 0 0 0 .475-.345L11.48 3.5Z\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M10.788 3.21c.448-1.077 1.976-1.077 2.424 0l2.082 5.006 5.404.434c1.164.093 1.636 1.545.749 2.305l-4.117 3.527 1.257 5.273c.271 1.136-.964 2.033-1.96 1.425L12 18.354 7.373 21.18c-.996.608-2.231-.29-1.96-1.425l1.257-5.273-4.117-3.527c-.887-.76-.415-2.212.749-2.305l5.404-.434 2.082-5.005Z\" clip-rule=\"evenodd\" /></svg>',\n },\n plus: {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 4.5v15m7.5-7.5h-15\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M12 3.75a.75.75 0 0 1 .75.75v6.75h6.75a.75.75 0 0 1 0 1.5h-6.75v6.75a.75.75 0 0 1-1.5 0v-6.75H4.5a.75.75 0 0 1 0-1.5h6.75V4.5a.75.75 0 0 1 .75-.75Z\" clip-rule=\"evenodd\" /></svg>',\n },\n 'bell-slash': {\n outline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9.143 17.082a24.248 24.248 0 0 0 3.844.148m-3.844-.148a23.856 23.856 0 0 1-5.455-1.31 8.964 8.964 0 0 0 2.3-5.542m3.155 6.852a3 3 0 0 0 5.667 1.97m1.965-2.277L21 21m-4.225-4.225a23.81 23.81 0 0 0 3.536-1.003A8.967 8.967 0 0 1 18 9.75V9A6 6 0 0 0 6.53 6.53m10.245 10.245L6.53 6.53M3 3l3.53 3.53\" /></svg>',\n solid:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M3.53 2.47a.75.75 0 0 0-1.06 1.06l18 18a.75.75 0 1 0 1.06-1.06l-18-18ZM20.57 16.476c-.223.082-.448.161-.674.238L7.319 4.137A6.75 6.75 0 0 1 18.75 9v.75c0 2.123.8 4.057 2.118 5.52a.75.75 0 0 1-.297 1.206Z\" /><path fill-rule=\"evenodd\" d=\"M5.25 9c0-.184.007-.366.022-.546l10.384 10.384a3.751 3.751 0 0 1-7.396-1.119 24.585 24.585 0 0 1-4.831-1.244.75.75 0 0 1-.298-1.205A8.217 8.217 0 0 0 5.25 9.75V9Zm4.502 8.9a2.25 2.25 0 1 0 4.496 0 25.057 25.057 0 0 1-4.496 0Z\" clip-rule=\"evenodd\" /></svg>',\n },\n};\n","// AUTO-GENERATED by scripts/generate-icon-names.mjs — do not edit by hand.\n// Regenerate with: node scripts/generate-icon-names.mjs\n\nimport type { IconVariant } from './icon.component';\n\n/**\n * Tabler icons inlined at build time (3.3, G-7), keyed by Tabler name, then\n * variant (`solid` only where Tabler has a filled icon). `lc-icon` uses them\n * after the hand-picked {@link INLINE_ICON_SVGS} and before any request, so\n * they render offline and in prerendered HTML.\n */\nexport const INLINE_TABLER_SVGS: Readonly<Record<string, Partial<Record<IconVariant, string>>>> = {\n 'mail': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10\"/><path d=\"M3 7l9 6l9 -6\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M22 7.535v9.465a3 3 0 0 1 -2.824 2.995l-.176 .005h-14a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-9.465l9.445 6.297l.116 .066a1 1 0 0 0 .878 0l.116 -.066l9.445 -6.297z\"/><path d=\"M19 4c1.08 0 2.027 .57 2.555 1.427l-9.555 6.37l-9.555 -6.37a2.999 2.999 0 0 1 2.354 -1.42l.201 -.007h14z\"/></svg>',\n },\n 'file-text': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M14 3v4a1 1 0 0 0 1 1h4\"/><path d=\"M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2\"/><path d=\"M9 9l1 0\"/><path d=\"M9 13l6 0\"/><path d=\"M9 17l6 0\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 2l.117 .007a1 1 0 0 1 .876 .876l.007 .117v4l.005 .15a2 2 0 0 0 1.838 1.844l.157 .006h4l.117 .007a1 1 0 0 1 .876 .876l.007 .117v9a3 3 0 0 1 -2.824 2.995l-.176 .005h-10a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-14a3 3 0 0 1 2.824 -2.995l.176 -.005zm3 14h-6a1 1 0 0 0 0 2h6a1 1 0 0 0 0 -2m0 -4h-6a1 1 0 0 0 0 2h6a1 1 0 0 0 0 -2m-5 -4h-1a1 1 0 1 0 0 2h1a1 1 0 0 0 0 -2\"/><path d=\"M19 7h-4l-.001 -4.001z\"/></svg>',\n },\n 'file': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M14 3v4a1 1 0 0 0 1 1h4\"/><path d=\"M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 2l.117 .007a1 1 0 0 1 .876 .876l.007 .117v4l.005 .15a2 2 0 0 0 1.838 1.844l.157 .006h4l.117 .007a1 1 0 0 1 .876 .876l.007 .117v9a3 3 0 0 1 -2.824 2.995l-.176 .005h-10a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-14a3 3 0 0 1 2.824 -2.995l.176 -.005h5z\"/><path d=\"M19 7h-4l-.001 -4.001z\"/></svg>',\n },\n 'arrow-right': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M5 12l14 0\"/><path d=\"M13 18l6 -6\"/><path d=\"M13 6l6 6\"/></svg>',\n },\n 'arrow-left': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M5 12l14 0\"/><path d=\"M5 12l6 6\"/><path d=\"M5 12l6 -6\"/></svg>',\n },\n 'external-link': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 6h-6a2 2 0 0 0 -2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-6\"/><path d=\"M11 13l9 -9\"/><path d=\"M15 4h5v5\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 5a1 1 0 0 1 0 2h-6a1 1 0 0 0 -1 1v10a1 1 0 0 0 1 1h10a1 1 0 0 0 1 -1v-6a1 1 0 0 1 2 0v6a3 3 0 0 1 -3 3h-10a3 3 0 0 1 -3 -3v-10a3 3 0 0 1 3 -3zm3 -2h5l.075 .003l.126 .017l.111 .03l.111 .044l.098 .052l.096 .067l.09 .08q .054 .053 .097 .112l.071 .11l.054 .114l.035 .105l.03 .148l.006 .118v5a1 1 0 0 1 -2 0v-2.586l-7.293 7.293a1 1 0 0 1 -1.414 -1.414l7.291 -7.293h-2.584a1 1 0 0 1 0 -2\"/></svg>',\n },\n 'world': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0\"/><path d=\"M3.6 9h16.8\"/><path d=\"M3.6 15h16.8\"/><path d=\"M11.5 3a17 17 0 0 0 0 18\"/><path d=\"M12.5 3a17 17 0 0 1 0 18\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M21.165 16a10 10 0 0 1 -8.434 5.973a1 1 0 0 0 .617 -.444a18 18 0 0 0 2.28 -5.528z\"/><path d=\"M8.372 16a18 18 0 0 0 2.28 5.53a1 1 0 0 0 .616 .443a10 10 0 0 1 -8.433 -5.973z\"/><path d=\"M13.57 16a16 16 0 0 1 -1.57 3.884a16 16 0 0 1 -1.57 -3.884\"/><path d=\"M8.034 10a18 18 0 0 0 0 4h-5.832a10 10 0 0 1 -.002 -4z\"/><path d=\"M13.952 10a16 16 0 0 1 0 4h-3.904a16 16 0 0 1 0 -4z\"/><path d=\"M21.8 10a10.05 10.05 0 0 1 -.002 4h-5.832c.149 -1.329 .149 -2.67 0 -4z\"/><path d=\"M11.267 2.027a1 1 0 0 0 -.615 .444a18 18 0 0 0 -2.28 5.529h-5.54a10.01 10.01 0 0 1 8.334 -5.967z\"/><path d=\"M12 4.116a16 16 0 0 1 1.57 3.885h-3.14c.34 -1.317 .85 -2.6 1.53 -3.817z\"/><path d=\"M12.733 2.026a10.01 10.01 0 0 1 8.435 5.974h-5.54a18 18 0 0 0 -2.28 -5.53a1 1 0 0 0 -.517 -.414z\"/></svg>',\n },\n 'menu-2': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M4 6l16 0\"/><path d=\"M4 12l16 0\"/><path d=\"M4 18l16 0\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M21 6a1 1 0 0 1 -1 1h-16a1 1 0 1 1 0 -2h16a1 1 0 0 1 1 1\"/><path d=\"M21 12a1 1 0 0 1 -1 1h-16a1 1 0 0 1 0 -2h16a1 1 0 0 1 1 1\"/><path d=\"M21 18a1 1 0 0 1 -1 1h-16a1 1 0 0 1 0 -2h16a1 1 0 0 1 1 1\"/></svg>',\n },\n 'x': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M18 6l-12 12\"/><path d=\"M6 6l12 12\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M6.707 5.293l5.293 5.292l5.293 -5.292a1 1 0 0 1 1.414 1.414l-5.292 5.293l5.292 5.293a1 1 0 0 1 -1.414 1.414l-5.293 -5.292l-5.293 5.292a1 1 0 1 1 -1.414 -1.414l5.292 -5.293l-5.292 -5.293a1 1 0 0 1 1.414 -1.414\"/></svg>',\n },\n 'users': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M5 7a4 4 0 1 0 8 0a4 4 0 1 0 -8 0\"/><path d=\"M3 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2\"/><path d=\"M16 3.13a4 4 0 0 1 0 7.75\"/><path d=\"M21 21v-2a4 4 0 0 0 -3 -3.85\"/></svg>',\n },\n 'user-plus': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0\"/><path d=\"M16 19h6\"/><path d=\"M19 16v6\"/><path d=\"M6 21v-2a4 4 0 0 1 4 -4h4\"/></svg>',\n },\n 'settings': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M10.325 4.317c.426 -1.756 2.924 -1.756 3.35 0a1.724 1.724 0 0 0 2.573 1.066c1.543 -.94 3.31 .826 2.37 2.37a1.724 1.724 0 0 0 1.065 2.572c1.756 .426 1.756 2.924 0 3.35a1.724 1.724 0 0 0 -1.066 2.573c.94 1.543 -.826 3.31 -2.37 2.37a1.724 1.724 0 0 0 -2.572 1.065c-.426 1.756 -2.924 1.756 -3.35 0a1.724 1.724 0 0 0 -2.573 -1.066c-1.543 .94 -3.31 -.826 -2.37 -2.37a1.724 1.724 0 0 0 -1.065 -2.572c-1.756 -.426 -1.756 -2.924 0 -3.35a1.724 1.724 0 0 0 1.066 -2.573c-.94 -1.543 .826 -3.31 2.37 -2.37c1 .608 2.296 .07 2.572 -1.065\"/><path d=\"M9 12a3 3 0 1 0 6 0a3 3 0 0 0 -6 0\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M14.647 4.081a.724 .724 0 0 0 1.08 .448c2.439 -1.485 5.23 1.305 3.745 3.744a.724 .724 0 0 0 .447 1.08c2.775 .673 2.775 4.62 0 5.294a.724 .724 0 0 0 -.448 1.08c1.485 2.439 -1.305 5.23 -3.744 3.745a.724 .724 0 0 0 -1.08 .447c-.673 2.775 -4.62 2.775 -5.294 0a.724 .724 0 0 0 -1.08 -.448c-2.439 1.485 -5.23 -1.305 -3.745 -3.744a.724 .724 0 0 0 -.447 -1.08c-2.775 -.673 -2.775 -4.62 0 -5.294a.724 .724 0 0 0 .448 -1.08c-1.485 -2.439 1.305 -5.23 3.744 -3.745a.722 .722 0 0 0 1.08 -.447c.673 -2.775 4.62 -2.775 5.294 0zm-2.647 4.919a3 3 0 1 0 0 6a3 3 0 0 0 0 -6\"/></svg>',\n },\n 'logout': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M14 8v-2a2 2 0 0 0 -2 -2h-7a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h7a2 2 0 0 0 2 -2v-2\"/><path d=\"M9 12h12l-3 -3\"/><path d=\"M18 15l3 -3\"/></svg>',\n },\n 'dots': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M4 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\"/><path d=\"M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\"/><path d=\"M18 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M7 12a2 2 0 1 1 -4 0q 0 -.053 .005 -.102a1.996 1.996 0 0 1 1.995 -1.898a2 2 0 0 1 2 2\"/><path d=\"M14 12a2 2 0 1 1 -4 0q 0 -.053 .005 -.102a1.996 1.996 0 0 1 1.995 -1.898a2 2 0 0 1 2 2\"/><path d=\"M21 12a2 2 0 1 1 -4 0q 0 -.053 .005 -.102a1.996 1.996 0 0 1 1.995 -1.898a2 2 0 0 1 2 2\"/></svg>',\n },\n 'wifi-off': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 18l.01 0\"/><path d=\"M9.172 15.172a4 4 0 0 1 5.656 0\"/><path d=\"M6.343 12.343a7.963 7.963 0 0 1 3.864 -2.14m4.163 .155a7.965 7.965 0 0 1 3.287 2\"/><path d=\"M3.515 9.515a12 12 0 0 1 3.544 -2.455m3.101 -.92a12 12 0 0 1 10.325 3.374\"/><path d=\"M3 3l18 18\"/></svg>',\n },\n 'chevron-right': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M9 6l6 6l-6 6\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M9.707 5.293l6 6a1 1 0 0 1 0 1.414l-6 6a1 1 0 1 1 -1.414 -1.414l5.293 -5.293l-5.293 -5.293a1 1 0 0 1 1.414 -1.414\"/></svg>',\n },\n 'chevron-left': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M15 6l-6 6l6 6\"/></svg>',\n },\n 'login': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M15 8v-2a2 2 0 0 0 -2 -2h-7a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h7a2 2 0 0 0 2 -2v-2\"/><path d=\"M21 12h-13l3 -3\"/><path d=\"M11 15l-3 -3\"/></svg>',\n },\n 'key': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M16.555 3.843l3.602 3.602a2.877 2.877 0 0 1 0 4.069l-2.643 2.643a2.877 2.877 0 0 1 -4.069 0l-.301 -.301l-6.558 6.558a2 2 0 0 1 -1.239 .578l-.175 .008h-1.172a1 1 0 0 1 -.993 -.883l-.007 -.117v-1.172a2 2 0 0 1 .467 -1.284l.119 -.13l.414 -.414h2v-2h2v-2l2.144 -2.144l-.301 -.301a2.877 2.877 0 0 1 0 -4.069l2.643 -2.643a2.877 2.877 0 0 1 4.069 0\"/><path d=\"M15 9h.01\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M14.52 2c1.029 0 2.015 .409 2.742 1.136l3.602 3.602a3.877 3.877 0 0 1 0 5.483l-2.643 2.643a3.88 3.88 0 0 1 -4.941 .452l-.105 -.078l-5.882 5.883a3 3 0 0 1 -1.68 .843l-.22 .027l-.221 .009h-1.172c-1.014 0 -1.867 -.759 -1.991 -1.823l-.009 -.177v-1.172c0 -.704 .248 -1.386 .73 -1.96l.149 -.161l.414 -.414a1 1 0 0 1 .707 -.293h1v-1a1 1 0 0 1 .883 -.993l.117 -.007h1v-1a1 1 0 0 1 .206 -.608l.087 -.1l1.468 -1.469l-.076 -.103a3.9 3.9 0 0 1 -.678 -1.963l-.007 -.236c0 -1.029 .409 -2.015 1.136 -2.742l2.643 -2.643a3.88 3.88 0 0 1 2.741 -1.136m.495 5h-.02a2 2 0 1 0 0 4h.02a2 2 0 1 0 0 -4\"/></svg>',\n },\n 'password': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 10v4\"/><path d=\"M10 13l4 -2\"/><path d=\"M10 11l4 2\"/><path d=\"M5 10v4\"/><path d=\"M3 13l4 -2\"/><path d=\"M3 11l4 2\"/><path d=\"M19 10v4\"/><path d=\"M17 13l4 -2\"/><path d=\"M17 11l4 2\"/></svg>',\n },\n 'shield-check': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M11.46 20.846a12 12 0 0 1 -7.96 -14.846a12 12 0 0 0 8.5 -3a12 12 0 0 0 8.5 3a12 12 0 0 1 -.09 7.06\"/><path d=\"M15 19l2 2l4 -4\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M11.998 2l.118 .007l.059 .008l.061 .013l.111 .034a.993 .993 0 0 1 .217 .112l.104 .082l.255 .218a11 11 0 0 0 7.189 2.537l.342 -.01a1 1 0 0 1 1.005 .717a13 13 0 0 1 -9.208 16.25a1 1 0 0 1 -.502 0a13 13 0 0 1 -9.209 -16.25a1 1 0 0 1 1.005 -.717a11 11 0 0 0 7.531 -2.527l.263 -.225l.096 -.075a.993 .993 0 0 1 .217 -.112l.112 -.034a.97 .97 0 0 1 .119 -.021l.115 -.007zm3.71 7.293a1 1 0 0 0 -1.415 0l-3.293 3.292l-1.293 -1.292l-.094 -.083a1 1 0 0 0 -1.32 1.497l2 2l.094 .083a1 1 0 0 0 1.32 -.083l4 -4l.083 -.094a1 1 0 0 0 -.083 -1.32z\"/></svg>',\n },\n 'robot': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M6 6a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v4a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2l0 -4\"/><path d=\"M12 2v2\"/><path d=\"M9 12v9\"/><path d=\"M15 12v9\"/><path d=\"M5 16l4 -2\"/><path d=\"M15 14l4 2\"/><path d=\"M9 18h6\"/><path d=\"M10 8v.01\"/><path d=\"M14 8v.01\"/></svg>',\n },\n 'plug-connected': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M7 12l5 5l-1.5 1.5a3.536 3.536 0 1 1 -5 -5l1.5 -1.5\"/><path d=\"M17 12l-5 -5l1.5 -1.5a3.536 3.536 0 1 1 5 5l-1.5 1.5\"/><path d=\"M3 21l2.5 -2.5\"/><path d=\"M18.5 5.5l2.5 -2.5\"/><path d=\"M10 11l-2 2\"/><path d=\"M13 14l-2 2\"/></svg>',\n },\n 'device-mobile': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M6 5a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2v-14\"/><path d=\"M11 4h2\"/><path d=\"M12 17v.01\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M16 2a3 3 0 0 1 2.995 2.824l.005 .176v14a3 3 0 0 1 -2.824 2.995l-.176 .005h-8a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-14a3 3 0 0 1 2.824 -2.995l.176 -.005h8zm-4 14a1 1 0 0 0 -.993 .883l-.007 .117l.007 .127a1 1 0 0 0 1.986 0l.007 -.117l-.007 -.127a1 1 0 0 0 -.993 -.883zm1 -12h-2l-.117 .007a1 1 0 0 0 0 1.986l.117 .007h2l.117 -.007a1 1 0 0 0 0 -1.986l-.117 -.007z\"/></svg>',\n },\n 'device-desktop': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 5a1 1 0 0 1 1 -1h16a1 1 0 0 1 1 1v10a1 1 0 0 1 -1 1h-16a1 1 0 0 1 -1 -1v-10\"/><path d=\"M7 20h10\"/><path d=\"M9 16v4\"/><path d=\"M15 16v4\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M7 21a1 1 0 0 1 0 -2h1v-2h-4a2 2 0 0 1 -2 -2v-10a2 2 0 0 1 2 -2h16a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-4v2h1a1 1 0 0 1 0 2zm7 -4h-4v2h4z\"/></svg>',\n },\n 'device-laptop': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 19l18 0\"/><path d=\"M5 7a1 1 0 0 1 1 -1h12a1 1 0 0 1 1 1v8a1 1 0 0 1 -1 1h-12a1 1 0 0 1 -1 -1l0 -8\"/></svg>',\n },\n 'copy': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M7 9.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667l0 -8.666\"/><path d=\"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M20.926 7.074a3.67 3.67 0 0 1 1.074 2.593v8.666a3.667 3.667 0 0 1 -3.667 3.667h-8.666a3.667 3.667 0 0 1 -3.667 -3.667v-8.666q 0 -.053 .005 -.102a3.66 3.66 0 0 1 3.662 -3.565h8.666c.973 0 1.905 .386 2.593 1.074\"/><path d=\"M17.374 3.514a1 1 0 1 1 -1.748 .972c-.221 -.398 -.342 -.486 -.626 -.486h-10c-.548 0 -1 .452 -1 1v9.998c0 .36 .194 .692 .507 .87a1 1 0 1 1 -.99 1.738a3 3 0 0 1 -1.517 -2.606v-10c0 -1.652 1.348 -3 3 -3h10c1.094 0 1.828 .533 2.374 1.514\"/></svg>',\n },\n 'share': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 12a3 3 0 1 0 6 0a3 3 0 1 0 -6 0\"/><path d=\"M15 6a3 3 0 1 0 6 0a3 3 0 1 0 -6 0\"/><path d=\"M15 18a3 3 0 1 0 6 0a3 3 0 1 0 -6 0\"/><path d=\"M8.7 10.7l6.6 -3.4\"/><path d=\"M8.7 13.3l6.6 3.4\"/></svg>',\n },\n 'link': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M9 15l6 -6\"/><path d=\"M11 6l.463 -.536a5 5 0 0 1 7.071 7.072l-.534 .464\"/><path d=\"M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M15.707 8.293a1 1 0 0 1 0 1.414l-6 6a1 1 0 1 1 -1.414 -1.414l6 -6a1 1 0 0 1 1.414 0\"/><path d=\"M19.242 4.757c2.343 2.344 2.342 6.143 -.052 8.534l-.534 .464a1 1 0 1 1 -1.312 -1.51l.483 -.416a4 4 0 0 0 0 -5.657c-1.562 -1.563 -4.095 -1.563 -5.607 -.054l-.463 .536a1 1 0 1 1 -1.514 -1.308l.513 -.59a6 6 0 0 1 8.486 .001\"/><path d=\"M6.75 10.338a1 1 0 0 1 -.088 1.411l-.483 .425a3.97 3.97 0 0 0 0 5.649a4.064 4.064 0 0 0 5.678 .038l.34 -.458a1 1 0 1 1 1.606 1.194l-.397 .534l-.1 .114a6.07 6.07 0 0 1 -8.533 0a5.97 5.97 0 0 1 -1.773 -4.247c0 -1.595 .638 -3.124 1.814 -4.284l.524 -.463a1 1 0 0 1 1.411 .087\"/></svg>',\n },\n 'trash': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M4 7l16 0\"/><path d=\"M10 11l0 6\"/><path d=\"M14 11l0 6\"/><path d=\"M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12\"/><path d=\"M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M20 6a1 1 0 0 1 .117 1.993l-.117 .007h-.081l-.919 11a3 3 0 0 1 -2.824 2.995l-.176 .005h-8c-1.598 0 -2.904 -1.249 -2.992 -2.75l-.005 -.167l-.923 -11.083h-.08a1 1 0 0 1 -.117 -1.993l.117 -.007zm-10 4a1 1 0 0 0 -1 1v6a1 1 0 0 0 2 0v-6a1 1 0 0 0 -1 -1m4 0a1 1 0 0 0 -1 1v6a1 1 0 0 0 2 0v-6a1 1 0 0 0 -1 -1\"/><path d=\"M14 2a2 2 0 0 1 2 2a1 1 0 0 1 -1.993 .117l-.007 -.117h-4l-.007 .117a1 1 0 0 1 -1.993 -.117a2 2 0 0 1 1.85 -1.995l.15 -.005z\"/></svg>',\n },\n 'info-circle': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0\"/><path d=\"M12 9h.01\"/><path d=\"M11 12h1v4h1\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 2c5.523 0 10 4.477 10 10a10 10 0 0 1 -19.995 .324l-.005 -.324l.004 -.28c.148 -5.393 4.566 -9.72 9.996 -9.72zm0 9h-1l-.117 .007a1 1 0 0 0 0 1.986l.117 .007v3l.007 .117a1 1 0 0 0 .876 .876l.117 .007h1l.117 -.007a1 1 0 0 0 .876 -.876l.007 -.117l-.007 -.117a1 1 0 0 0 -.764 -.857l-.112 -.02l-.117 -.006v-3l-.007 -.117a1 1 0 0 0 -.876 -.876l-.117 -.007zm.01 -3l-.127 .007a1 1 0 0 0 0 1.986l.117 .007l.127 -.007a1 1 0 0 0 0 -1.986l-.117 -.007z\"/></svg>',\n },\n 'circle-check': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0\"/><path d=\"M9 12l2 2l4 -4\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M17 3.34a10 10 0 1 1 -14.995 8.984l-.005 -.324l.005 -.324a10 10 0 0 1 14.995 -8.336zm-1.293 5.953a1 1 0 0 0 -1.32 -.083l-.094 .083l-3.293 3.292l-1.293 -1.292l-.094 -.083a1 1 0 0 0 -1.403 1.403l.083 .094l2 2l.094 .083a1 1 0 0 0 1.226 0l.094 -.083l4 -4l.083 -.094a1 1 0 0 0 -.083 -1.32z\"/></svg>',\n },\n 'alert-triangle': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 9v4\"/><path d=\"M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0\"/><path d=\"M12 16h.01\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 1.67c.955 0 1.845 .467 2.39 1.247l.105 .16l8.114 13.548a2.914 2.914 0 0 1 -2.307 4.363l-.195 .008h-16.225a2.914 2.914 0 0 1 -2.582 -4.2l.099 -.185l8.11 -13.538a2.914 2.914 0 0 1 2.491 -1.403zm.01 13.33l-.127 .007a1 1 0 0 0 0 1.986l.117 .007l.127 -.007a1 1 0 0 0 0 -1.986l-.117 -.007zm-.01 -7a1 1 0 0 0 -.993 .883l-.007 .117v4l.007 .117a1 1 0 0 0 1.986 0l.007 -.117v-4l-.007 -.117a1 1 0 0 0 -.993 -.883z\"/></svg>',\n },\n 'alert-circle': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0\"/><path d=\"M12 8v4\"/><path d=\"M12 16h.01\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 2c5.523 0 10 4.477 10 10a10 10 0 0 1 -19.995 .324l-.005 -.324l.004 -.28c.148 -5.393 4.566 -9.72 9.996 -9.72zm.01 13l-.127 .007a1 1 0 0 0 0 1.986l.117 .007l.127 -.007a1 1 0 0 0 0 -1.986l-.117 -.007zm-.01 -8a1 1 0 0 0 -.993 .883l-.007 .117v4l.007 .117a1 1 0 0 0 1.986 0l.007 -.117v-4l-.007 -.117a1 1 0 0 0 -.993 -.883z\"/></svg>',\n },\n 'circle-x': {\n outline: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0\"/><path d=\"M10 10l4 4m0 -4l-4 4\"/></svg>',\n solid: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M17 3.34a10 10 0 1 1 -14.995 8.984l-.005 -.324l.005 -.324a10 10 0 0 1 14.995 -8.336zm-6.489 5.8a1 1 0 0 0 -1.218 1.567l1.292 1.293l-1.292 1.293l-.083 .094a1 1 0 0 0 1.497 1.32l1.293 -1.292l1.293 1.292l.094 .083a1 1 0 0 0 1.32 -1.497l-1.292 -1.293l1.292 -1.293l.083 -.094a1 1 0 0 0 -1.497 -1.32l-1.293 1.292l-1.293 -1.292l-.094 -.083z\"/></svg>',\n },\n};\n\n/** The names in {@link INLINE_TABLER_SVGS}, in generator order. */\nexport const INLINE_TABLER_NAMES: readonly string[] = [\n 'mail',\n 'file-text',\n 'file',\n 'arrow-right',\n 'arrow-left',\n 'external-link',\n 'world',\n 'menu-2',\n 'x',\n 'users',\n 'user-plus',\n 'settings',\n 'logout',\n 'dots',\n 'wifi-off',\n 'chevron-right',\n 'chevron-left',\n 'login',\n 'key',\n 'password',\n 'shield-check',\n 'robot',\n 'plug-connected',\n 'device-mobile',\n 'device-desktop',\n 'device-laptop',\n 'copy',\n 'share',\n 'link',\n 'trash',\n 'info-circle',\n 'circle-check',\n 'alert-triangle',\n 'alert-circle',\n 'circle-x',\n];\n","import type { IconVariant } from './icon.component';\nimport { ICON_ALIASES } from './icon-aliases';\nimport { INLINE_ICON_SVGS } from './icon-inline-svgs';\nimport { INLINE_TABLER_SVGS } from './icon-inline-tabler.data';\n\n/**\n * The inline markup for a name and variant, or `undefined` when the icon has\n * to be fetched. Order (3.3, gap G-7):\n *\n * 1. the hand-picked {@link INLINE_ICON_SVGS} by the name as written — many of\n * its keys are aliases themselves (`x-mark`, `check-circle`,\n * `information-circle`); 3.2 resolved the alias first and never found them;\n * 2. the same map by the alias target;\n * 3. the Tabler icons inlined at build time ({@link INLINE_TABLER_SVGS}) by the\n * alias target.\n *\n * @internal\n */\nexport function resolveInlineIconSvg(name: string, variant: IconVariant): string | undefined {\n const resolved = ICON_ALIASES[name] ?? name;\n return (\n INLINE_ICON_SVGS[name]?.[variant] ??\n INLINE_ICON_SVGS[resolved]?.[variant] ??\n INLINE_TABLER_SVGS[resolved]?.[variant]\n );\n}\n","/**\n * The sink-free SVG builder of `lc-icon` (3.5, gap AS-14).\n *\n * Fetched icon files are not the kit's own strings, so they never go through\n * the `lc-icon` Trusted Types policy. Instead this strict tokenizer reads the\n * text and creates the `<svg>` with `createElementNS`, `setAttribute` and\n * `createTextNode` only — no HTML or XML parser, so no Trusted Types sink in\n * any browser. It accepts a small allow-list: basic shapes with paint and\n * geometry attributes (Tabler's files use only `svg` and `path`). Anything\n * else rejects the whole icon with a reason for the console, and `lc-icon`\n * shows its placeholder. The server renders the kit's bundled icons through\n * it too, so prerendered HTML and the browser carry the same SVG.\n *\n * @internal\n */\n\nexport const SVG_NS = 'http://www.w3.org/2000/svg';\nconst XMLNS_NS = 'http://www.w3.org/2000/xmlns/';\n\n/** Longest accepted input, in characters (Tabler's largest file has 2,666 bytes). */\nexport const MAX_SVG_LENGTH = 32_768;\nconst MAX_DEPTH = 16;\n\n/** Elements an icon may contain; `svg` only as the root. Any other element rejects the icon. */\nconst ELEMENTS: ReadonlySet<string> = new Set([\n 'svg', 'g', 'path', 'circle', 'ellipse', 'line', 'polyline', 'polygon', 'rect', 'text',\n]);\n\n/** Attributes that are kept (in source order); every other one is dropped silently. */\nconst ATTRIBUTES: ReadonlySet<string> = new Set([\n 'viewBox', 'width', 'height', 'preserveAspectRatio', 'class',\n 'd', 'points', 'x', 'y', 'x1', 'y1', 'x2', 'y2', 'cx', 'cy', 'r', 'rx', 'ry', 'transform', 'pathLength',\n 'fill', 'fill-rule', 'fill-opacity', 'clip-rule', 'stroke', 'stroke-width', 'stroke-linecap',\n 'stroke-linejoin', 'stroke-miterlimit', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-opacity',\n 'opacity', 'color', 'vector-effect', 'shape-rendering',\n 'text-anchor', 'dominant-baseline', 'font-family', 'font-size', 'font-weight', 'font-style', 'letter-spacing',\n]);\n\nconst NAMED_ENTITIES: Readonly<Record<string, string>> = { amp: '&', lt: '<', gt: '>', quot: '\"', apos: \"'\" };\nconst ENTITY = /&(?:#x([0-9a-fA-F]{1,6})|#([0-9]{1,7})|(amp|lt|gt|quot|apos));/g;\nconst NAME = /[A-Za-z_][A-Za-z0-9_.:-]*/y;\nconst WHITESPACE = /[ \\t\\r\\n]*/y;\n\n/** The reasons `buildSvg` gives; they end up in the console warning. */\nexport const SVG_REJECTION = {\n tooLarge: 'it is larger than 32 KB',\n doctype: 'a DOCTYPE is not allowed',\n malformed: 'it is not well-formed',\n element: (name: string) => `<${name}> is not allowed`,\n attribute: (name: string) => `the attribute \"${name}\" is not allowed`,\n reference: (value: string) => `a reference to \"${value}\" is not allowed`,\n} as const;\n\n/** The built `<svg>`, or why the text was rejected. */\nexport type SvgBuildResult = { svg: SVGElement; reason?: undefined } | { svg?: undefined; reason: string };\n\nclass SvgRejected extends Error {\n constructor(readonly reason: string) {\n super(reason);\n }\n}\n\n/**\n * Builds an `<svg>` element of `doc` from SVG text, through the allow-list.\n * Never throws for bad input: the result names the reason instead.\n */\nexport function buildSvg(doc: Document, text: string): SvgBuildResult {\n if (text.length > MAX_SVG_LENGTH) return { reason: SVG_REJECTION.tooLarge };\n try {\n return { svg: new SvgBuilder(doc, text).build() };\n } catch (error) {\n if (error instanceof SvgRejected) return { reason: error.reason };\n throw error;\n }\n}\n\n/**\n * Whether the text is meant to be an SVG document (its first element is\n * `<svg>`), as opposed to an HTML page such as a SPA's `index.html` fallback.\n * Only decides which console message `lc-icon` prints; `buildSvg` decides\n * what renders.\n */\nexport function looksLikeSvgDocument(text: string): boolean {\n return /^\\uFEFF?\\s*(?:<\\?xml[^>]*\\?>\\s*)?(?:<!--[\\s\\S]*?-->\\s*)*(?:<!DOCTYPE[^[>]*(?:\\[[\\s\\S]*?\\])?\\s*>\\s*)?(?:<!--[\\s\\S]*?-->\\s*)*<svg[\\s/>]/i.test(\n text,\n );\n}\n\nclass SvgBuilder {\n private i = 0;\n\n constructor(\n private readonly doc: Document,\n private readonly text: string,\n ) {}\n\n build(): SVGElement {\n const { text } = this;\n if (text.charCodeAt(0) === 0xfeff) this.i = 1;\n if (text.startsWith('<?xml', this.i)) {\n const end = text.indexOf('?>', this.i);\n if (end < 0 || !/^<\\?xml[ \\t\\r\\n?]/.test(text.slice(this.i, this.i + 6))) this.reject(SVG_REJECTION.malformed);\n this.i = end + 2;\n }\n this.skipMisc();\n if (text[this.i] !== '<') this.reject(SVG_REJECTION.malformed);\n const root = this.element(1);\n this.skipMisc();\n if (this.i !== text.length) this.reject(SVG_REJECTION.malformed);\n return root;\n }\n\n /** Whitespace and comments around the root element; anything else that starts with `<!` or `<?` is rejected. */\n private skipMisc(): void {\n for (;;) {\n this.skipWhitespace();\n if (this.text.startsWith('<!--', this.i)) this.skipComment();\n else if (this.text.startsWith('<!', this.i) || this.text.startsWith('<?', this.i)) this.rejectMarkupDeclaration();\n else return;\n }\n }\n\n private skipComment(): void {\n const end = this.text.indexOf('-->', this.i + 4);\n if (end < 0) this.reject(SVG_REJECTION.malformed);\n this.i = end + 3;\n }\n\n private rejectMarkupDeclaration(): never {\n const head = this.text.slice(this.i, this.i + 9).toUpperCase();\n this.reject(head.startsWith('<!DOCTYPE') || head.startsWith('<!ENTITY') ? SVG_REJECTION.doctype : SVG_REJECTION.malformed);\n }\n\n private skipWhitespace(): boolean {\n WHITESPACE.lastIndex = this.i;\n WHITESPACE.exec(this.text);\n const moved = WHITESPACE.lastIndex > this.i;\n this.i = WHITESPACE.lastIndex;\n return moved;\n }\n\n private name(): string {\n NAME.lastIndex = this.i;\n const match = NAME.exec(this.text);\n if (!match) this.reject(SVG_REJECTION.malformed);\n this.i = NAME.lastIndex;\n return match[0];\n }\n\n /** One element and its content; the cursor is on its `<`. */\n private element(depth: number): SVGElement {\n const { text } = this;\n this.i++;\n const name = this.name();\n if (depth > MAX_DEPTH) this.reject(SVG_REJECTION.malformed);\n const isRoot = depth === 1;\n if (!ELEMENTS.has(name) || isRoot !== (name === 'svg')) this.reject(SVG_REJECTION.element(name));\n const element = this.doc.createElementNS(SVG_NS, name) as SVGElement;\n\n const seen = new Set<string>();\n let selfClosing = false;\n for (;;) {\n const separated = this.skipWhitespace();\n if (text.startsWith('/>', this.i)) {\n this.i += 2;\n selfClosing = true;\n break;\n }\n if (text[this.i] === '>') {\n this.i++;\n break;\n }\n if (!separated) this.reject(SVG_REJECTION.malformed);\n const attribute = this.name();\n this.skipWhitespace();\n if (text[this.i] !== '=') this.reject(SVG_REJECTION.malformed);\n this.i++;\n this.skipWhitespace();\n const quote = text[this.i];\n if (quote !== '\"' && quote !== \"'\") this.reject(SVG_REJECTION.malformed);\n const end = text.indexOf(quote, this.i + 1);\n if (end < 0) this.reject(SVG_REJECTION.malformed);\n const raw = text.slice(this.i + 1, end);\n if (raw.includes('<')) this.reject(SVG_REJECTION.malformed);\n this.i = end + 1;\n if (seen.has(attribute)) this.reject(SVG_REJECTION.malformed);\n seen.add(attribute);\n // XML attribute-value normalisation: literal tabs and line breaks become spaces.\n this.attribute(element, attribute, this.decode(raw.replace(/[\\t\\r\\n]/g, ' ')), isRoot);\n }\n\n if (!selfClosing) this.content(element, name, depth);\n return element;\n }\n\n private attribute(element: SVGElement, name: string, value: string, isRoot: boolean): void {\n const lower = name.toLowerCase();\n if (lower.startsWith('on')) this.reject(SVG_REJECTION.attribute(name));\n if (lower === 'href' || lower.endsWith(':href')) this.reject(SVG_REJECTION.reference(value));\n if (/url\\s*\\(|javascript:/i.test(value)) this.reject(SVG_REJECTION.reference(value));\n if (name === 'xmlns') {\n if (value !== SVG_NS) this.reject(SVG_REJECTION.malformed);\n if (isRoot) element.setAttributeNS(XMLNS_NS, 'xmlns', value);\n return;\n }\n if (ATTRIBUTES.has(name)) element.setAttribute(name, value);\n }\n\n /** Children and text up to the closing tag of `name`. */\n private content(element: SVGElement, name: string, depth: number): void {\n const { text } = this;\n for (;;) {\n if (this.i >= text.length) this.reject(SVG_REJECTION.malformed);\n if (text.startsWith('</', this.i)) {\n this.i += 2;\n const closing = this.name();\n this.skipWhitespace();\n if (closing !== name || text[this.i] !== '>') this.reject(SVG_REJECTION.malformed);\n this.i++;\n return;\n }\n if (text.startsWith('<!--', this.i)) {\n this.skipComment();\n continue;\n }\n if (text.startsWith('<!', this.i) || text.startsWith('<?', this.i)) this.rejectMarkupDeclaration();\n if (text[this.i] === '<') {\n element.appendChild(this.element(depth + 1));\n continue;\n }\n const next = text.indexOf('<', this.i);\n const end = next < 0 ? text.length : next;\n const value = this.decode(text.slice(this.i, end));\n this.i = end;\n // Text only inside <text>; elsewhere only whitespace, kept so the DOM\n // equals what an XML parser makes of the same string.\n if (name !== 'text' && /[^ \\t\\r\\n]/.test(value)) this.reject(SVG_REJECTION.malformed);\n if (value) element.appendChild(this.doc.createTextNode(value));\n }\n }\n\n /** Resolves the five predefined entities and numeric references; any other `&` rejects the icon. */\n private decode(raw: string): string {\n if (!raw.includes('&')) return raw;\n if (raw.replace(ENTITY, '').includes('&')) this.reject(SVG_REJECTION.malformed);\n return raw.replace(ENTITY, (_, hex: string | undefined, dec: string | undefined, named: string | undefined) => {\n if (named) return NAMED_ENTITIES[named];\n const code = hex ? parseInt(hex, 16) : parseInt(dec ?? '', 10);\n if (!code || code > 0x10ffff || (code >= 0xd800 && code <= 0xdfff)) this.reject(SVG_REJECTION.malformed);\n return String.fromCodePoint(code);\n });\n }\n\n private reject(reason: string): never {\n throw new SvgRejected(reason);\n }\n}\n","/**\n * Visible placeholder rendered when an icon cannot be resolved (unknown name,\n * failed asset load, a dropped response, or a Trusted Types policy the page\n * refused). Deliberately distinct from any real icon — a dashed frame with a\n * \"?\" — so missing icons are immediately obvious instead of showing an empty\n * space or an ambiguous glyph.\n *\n * @internal\n */\nexport const ICON_FALLBACK_SVG =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\">' +\n '<rect x=\"3.5\" y=\"3.5\" width=\"17\" height=\"17\" rx=\"3\" stroke-dasharray=\"2.5 2.5\" />' +\n '<text x=\"12\" y=\"16.5\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" font-family=\"system-ui, -apple-system, sans-serif\" fill=\"currentColor\" stroke=\"none\">?</text>' +\n '</svg>';\n","import { INLINE_ICON_SVGS } from './icon-inline-svgs';\nimport { INLINE_TABLER_SVGS } from './icon-inline-tabler.data';\nimport { ICON_FALLBACK_SVG } from './icon-placeholder';\n\n/**\n * The `lc-icon` Trusted Types policy (3.5, gap AS-14).\n *\n * Bundled icons are the kit's own SVG strings. In a browser with\n * `window.trustedTypes` they are parsed through exactly one policy, named\n * `lc-icon`, whose `createHTML` returns its input only when it is identical\n * to one of those strings and throws for anything else. The policy is created\n * on the first icon render, never at import time and never on the server, and\n * at most once per page: when the page's CSP refuses it, the kit says so once\n * and never asks again. Not exported from the entry.\n *\n * @internal\n */\nexport const ICON_POLICY_NAME = 'lc-icon';\n\n/** The few Trusted Types shapes this module needs, declared locally (no dependency, no global types). */\nexport interface IconTrustedHtml {\n toString(): string;\n}\nexport interface IconPolicyRules {\n createHTML(input: string): string;\n}\ninterface IconPolicy {\n createHTML(input: string): IconTrustedHtml;\n}\ninterface TrustedTypePolicyFactoryLike {\n createPolicy(name: string, rules: IconPolicyRules): IconPolicy;\n}\n\n/** What a page has: a policy, no Trusted Types at all, or a CSP that refused the policy. */\nexport type IconPolicyState = { kind: 'ready'; policy: IconPolicy } | { kind: 'none' } | { kind: 'refused' };\n\nconst NONE: IconPolicyState = { kind: 'none' };\nconst REFUSED: IconPolicyState = { kind: 'refused' };\n\nexport const ICON_POLICY_REFUSED_WARNING =\n '[lc-icon] Icons render a placeholder: the Trusted Types policy \"lc-icon\" could not be created. ' +\n 'Add lc-icon to the trusted-types directive of the Content Security Policy.';\n\n/** One state per page (keyed by its window). */\nlet states = new WeakMap<object, IconPolicyState>();\nlet bundled: ReadonlySet<string> | undefined;\n\n/** Every SVG string the kit ships: the hand-picked set, the inlined Tabler set and the placeholder. */\nexport function bundledIconSvgs(): ReadonlySet<string> {\n if (!bundled) {\n const svgs = new Set<string>([ICON_FALLBACK_SVG]);\n for (const set of [INLINE_ICON_SVGS, INLINE_TABLER_SVGS]) {\n for (const variants of Object.values(set)) {\n for (const svg of Object.values(variants)) if (svg) svgs.add(svg);\n }\n }\n bundled = svgs;\n }\n return bundled;\n}\n\n/** The policy's rules: `createHTML` only, and only for the kit's own strings. */\nexport function iconPolicyRules(): IconPolicyRules {\n return {\n createHTML(input: string): string {\n if (typeof input === 'string' && bundledIconSvgs().has(input)) return input;\n throw new TypeError('lc-icon: not a bundled icon');\n },\n };\n}\n\n/**\n * The page's policy state, creating the policy on the first call in a\n * browser that has Trusted Types. Feature-detected through the window, so\n * it is safe without Trusted Types, in jsdom and in Angular 21 apps.\n */\nexport function iconPolicy(win: Window | null): IconPolicyState {\n if (!win) return NONE;\n const known = states.get(win);\n if (known) return known;\n const factory = (win as unknown as { trustedTypes?: TrustedTypePolicyFactoryLike }).trustedTypes;\n let state: IconPolicyState = NONE;\n if (factory && typeof factory.createPolicy === 'function') {\n try {\n state = { kind: 'ready', policy: factory.createPolicy(ICON_POLICY_NAME, iconPolicyRules()) };\n } catch {\n state = REFUSED;\n console.warn(ICON_POLICY_REFUSED_WARNING);\n }\n }\n states.set(win, state);\n return state;\n}\n\n/**\n * Forgets the policy state of every page. Unit tests only (a real page must\n * never create the policy twice).\n * @internal\n */\nexport function resetIconPolicy(): void {\n states = new WeakMap();\n}\n","import { buildSvg } from './icon-svg-builder';\nimport { ICON_FALLBACK_SVG } from './icon-placeholder';\nimport { iconPolicy, resetIconPolicy } from './icon-trusted-types';\n\n/**\n * How `lc-icon` turns markup into DOM (3.5, gap AS-14). Every `<svg>` is a\n * fresh element that the component appends to its container; there is no\n * HTML binding and no sanitizer bypass.\n *\n * | Source | Server | Browser without Trusted Types | Browser with the policy | Policy refused |\n * |-------------------|---------|-------------------------------|--------------------------------|----------------|\n * | bundled constant | builder | XML parse of the constant | XML parse of `createHTML(…)` | placeholder (builder) |\n * | fetched text | — | builder | builder | builder |\n *\n * @internal\n */\n\n/** The parsed bundled constants of each page, cloned per instance (the policy runs once per distinct icon). */\nlet parsed = new WeakMap<Document, Map<string, SVGElement>>();\n\n/**\n * A bundled SVG constant as a fresh `<svg>` of `doc`, for the browser. `null`\n * when the page refused the `lc-icon` policy (the caller shows the\n * placeholder through the builder) or the constant would not parse.\n */\nexport function parseBundledSvg(doc: Document, markup: string): SVGElement | null {\n const state = iconPolicy(doc.defaultView);\n if (state.kind === 'refused') return null;\n let cache = parsed.get(doc);\n if (!cache) parsed.set(doc, (cache = new Map()));\n let template = cache.get(markup);\n if (!template) {\n if (typeof DOMParser === 'undefined') return buildSvg(doc, markup).svg ?? null;\n // With Trusted Types the parser only takes the policy's TrustedHTML; the\n // policy hands back nothing but the kit's own strings.\n const input = state.kind === 'ready' ? state.policy.createHTML(markup) : markup;\n const xml = new DOMParser().parseFromString(input as string, 'image/svg+xml');\n const root = xml.documentElement;\n if (root.nodeName !== 'svg' || xml.getElementsByTagName('parsererror').length > 0) return null;\n template = doc.importNode(root, true) as unknown as SVGElement;\n cache.set(markup, template);\n }\n return template.cloneNode(true) as SVGElement;\n}\n\n/** The placeholder as a fresh `<svg>`: parsed like a bundled icon in the browser, built everywhere else. */\nexport function placeholderSvg(doc: Document, browser: boolean): SVGElement {\n return (browser ? parseBundledSvg(doc, ICON_FALLBACK_SVG) : null) ?? (buildSvg(doc, ICON_FALLBACK_SVG).svg as SVGElement);\n}\n\n/** What the component applies to its `<svg>`; consumer values reach attributes and `style.color` only. */\nexport interface IconDecoration {\n size: string;\n color: string;\n decorative: boolean;\n label: string | undefined;\n}\n\n/** Sets size, colour and accessibility on the element in place (the order 3.4 used). */\nexport function decorateSvg(svg: SVGElement, decoration: IconDecoration): void {\n svg.setAttribute('width', decoration.size);\n svg.setAttribute('height', decoration.size);\n const style = (svg as Partial<ElementCSSInlineStyle>).style;\n if (style) style.color = decoration.color;\n if (decoration.decorative) {\n svg.setAttribute('aria-hidden', 'true');\n svg.removeAttribute('role');\n svg.removeAttribute('aria-label');\n } else {\n svg.setAttribute('role', 'img');\n svg.removeAttribute('aria-hidden');\n if (decoration.label) svg.setAttribute('aria-label', decoration.label);\n else svg.removeAttribute('aria-label');\n }\n}\n\n/**\n * Forgets the parsed constants and the policy state. Unit tests only.\n * @internal\n */\nexport function resetIconRendering(): void {\n parsed = new WeakMap();\n resetIconPolicy();\n}\n","import {\n Component,\n ElementRef,\n input,\n computed,\n signal,\n effect,\n isDevMode,\n ChangeDetectionStrategy,\n inject,\n PLATFORM_ID,\n viewChild,\n} from '@angular/core';\nimport { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\nimport { Observable, catchError, map, of, retry, shareReplay, tap, throwError, timer } from 'rxjs';\nimport { isValidIconName } from '@lifecorner/angular-ui-kit/icon-names';\nimport { ICON_ALIASES } from './icon-aliases';\nimport { resolveInlineIconSvg } from './icon-inline-lookup';\nimport { buildSvg, looksLikeSvgDocument } from './icon-svg-builder';\nimport { decorateSvg, parseBundledSvg, placeholderSvg } from './icon-dom';\n\nexport type IconVariant = 'outline' | 'solid';\nexport type IconSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\n/**\n * The form every icon name has (all 5,161 do): lower-case words joined by `-`\n * or `_`, at most 64 characters. Production builds check names by this form\n * only; the full list is for development builds (3.5, AS-15).\n */\nconst ICON_NAME_FORM = /^[a-z0-9]+(?:[-_][a-z0-9]+)*$/;\nconst MAX_ICON_NAME_LENGTH = 64;\n\n/**\n * Icon names already reported to the console. A page with dozens of instances\n * of the same typo must produce exactly one warning, not one per instance —\n * and the warning fires in production too (unlike the old dev-only warning,\n * which left prod incidents invisible in the console).\n */\nconst warnedIconNames = new Set<string>();\n\nfunction warnOnce(name: string, message: string): void {\n if (warnedIconNames.has(name)) return;\n warnedIconNames.add(name);\n console.warn(message);\n}\n\n/**\n * Clears the warn-once-per-name registry. Only needed by unit tests that\n * assert on console warnings across multiple cases.\n * @internal\n */\nexport function resetIconWarnings(): void {\n warnedIconNames.clear();\n}\n\nconst unknownIconMessage = (name: string) =>\n `[lc-icon] Unknown icon \"${name}\". Use a Tabler name or a documented alias (see ICON_NAMES / ICON_ALIASES). Rendering a placeholder instead.`;\n\n/**\n * Outcome of one asset fetch. A 404 is an outcome too, so the cache keeps it\n * and a later instance of the same missing name asks no second time.\n */\ntype IconFetchResult =\n | { kind: 'svg'; svg: SVGElement }\n | { kind: 'non-svg'; contentType: string }\n | { kind: 'dropped'; reason: string }\n | { kind: 'failed'; status: string };\n\n/**\n * One in-flight/completed fetch per asset path, shared by every `lc-icon`\n * instance on the page (a table with 200 rows of the same status icon used to\n * fire 200 identical requests). Transient failures are evicted so the next\n * instance tries again; a completed one — valid, dropped or 404 — is kept.\n */\nconst iconFetchCache = new Map<string, Observable<IconFetchResult>>();\n\nconst isNotFound = (error: unknown) => error instanceof HttpErrorResponse && error.status === 404;\n\nfunction fetchIcon(http: HttpClient, doc: Document, path: string): Observable<IconFetchResult> {\n let cached = iconFetchCache.get(path);\n if (!cached) {\n cached = http.get(path, { observe: 'response', responseType: 'text' }).pipe(\n // Transient failures (connection reset, timeout, 5xx) — e.g. a burst of\n // icons overwhelming the dev server — are retried with a short backoff\n // before falling back, so a hiccup does not leave an otherwise-valid\n // icon stuck on the placeholder. A genuine 404 (missing asset) is not\n // retried.\n retry({\n count: 2,\n delay: (error, retryCount) => (isNotFound(error) ? throwError(() => error) : timer(200 * retryCount)),\n }),\n // Validate before anything touches the DOM: SPA deployments answer\n // missing asset paths with `index.html` and status 200 — that document\n // must be dropped, never rendered. A text/html content-type is rejected\n // outright; everything else is rebuilt through the allow-list builder,\n // which creates the <svg> node by node and never hands text to a parser.\n map((response): IconFetchResult => {\n const contentType = response.headers.get('content-type') ?? '';\n const body = response.body ?? '';\n if (contentType.includes('text/html') || !looksLikeSvgDocument(body)) return { kind: 'non-svg', contentType };\n const built = buildSvg(doc, body);\n return built.svg ? { kind: 'svg', svg: built.svg } : { kind: 'dropped', reason: built.reason };\n }),\n catchError((error: unknown) => (isNotFound(error) ? of<IconFetchResult>({ kind: 'failed', status: '404' }) : throwError(() => error))),\n tap({ error: () => iconFetchCache.delete(path) }),\n shareReplay({ bufferSize: 1, refCount: false })\n );\n iconFetchCache.set(path, cached);\n }\n return cached;\n}\n\n/**\n * Clears the shared per-path fetch cache. Only needed by unit tests, whose\n * `HttpTestingController` is recreated per test.\n * @internal\n */\nexport function resetIconCache(): void {\n iconFetchCache.clear();\n}\n\n/** What the container shows: nothing, a bundled constant, a fetched (built) icon, or the placeholder. */\ntype IconSource =\n | { kind: 'none' }\n | { kind: 'bundled'; markup: string }\n | { kind: 'fetched'; svg: SVGElement }\n | { kind: 'placeholder' };\n\nconst NO_ICON: IconSource = { kind: 'none' };\nconst PLACEHOLDER: IconSource = { kind: 'placeholder' };\n\n/**\n * Icon component - Tabler Icons wrapper for displaying SVG icons\n *\n * Features:\n * - Signal-based reactive API\n * - Support for outline and solid variants\n * - Multiple size options (xs, sm, md, lg, xl)\n * - Custom color support (CSS colors, variables)\n * - Accessibility attributes (ARIA labels, decorative icons)\n * - Inline SVGs for the common icons (a hand-picked set plus Tabler icons\n * inlined at build time, see {@link isInlineIconName}): no request, they\n * render offline and in prerendered HTML; looked up by the name as written,\n * then by its alias target\n * - Dynamic SVG loading from Tabler Icons for everything else\n * - Fail-loud on unknown names: a console warning (once per name, in dev AND\n * prod) + a visible placeholder (never a silent empty space). Development\n * builds check every name against {@link ICON_NAMES} / {@link isValidIconName}\n * and request **no** unknown name, because in SPA deployments the server\n * answers missing asset paths with the index.html fallback. Production\n * builds leave the ~5,000 names out of the bundle (3.5, AS-15): they check\n * a name only by its form, request a well-formed unknown name once per\n * page, and show the placeholder when the answer is not an icon. See\n * {@link ICON_ALIASES} for the supported Heroicon/Material aliases.\n * - Fetched responses are validated before anything reaches the page: a\n * `text/html` or non-SVG response (e.g. the SPA index.html fallback) is\n * dropped, and an SVG is rebuilt from an allow-list — basic shapes (`g`,\n * `path`, `circle`, `ellipse`, `line`, `polyline`, `polygon`, `rect`,\n * `text`) with paint and geometry attributes. Scripts, event handlers,\n * references (`href`, `url(…)`) and anything else drop the icon, which\n * then shows the placeholder.\n * - One request per asset path per page (shared cache, a 404 included); a\n * name change cancels the instance's pending load so a slow old response\n * never overwrites the newer icon; `size` / `color` / `decorative` /\n * `ariaLabel` re-decorate the rendered `<svg>` in place, without refetching.\n *\n * **Trusted Types** (3.5, AS-14): bundled icons go through one policy,\n * `lc-icon`, created on the first icon render; it accepts only the kit's own\n * SVG strings. If your Content Security Policy enforces Trusted Types, add\n * `lc-icon` to its `trusted-types` directive (with two copies of the kit on\n * one page, the second needs `'allow-duplicates'`). Fetched icons need no\n * policy: they are rebuilt node by node from the allow-list above. When the\n * page refuses the policy, bundled icons show the placeholder and the console\n * says so once. No sanitizer bypass, no HTML binding.\n *\n * @example\n * ```html\n * <!-- Basic usage -->\n * <lc-icon name=\"user\" />\n *\n * <!-- With variant and size -->\n * <lc-icon name=\"check\" variant=\"solid\" size=\"lg\" />\n *\n * <!-- With custom color -->\n * <lc-icon name=\"arrow-right\" color=\"#FF5733\" />\n *\n * <!-- With CSS variable color -->\n * <lc-icon name=\"star\" color=\"var(--color-primary-500)\" />\n *\n * <!-- With accessibility label -->\n * <lc-icon name=\"user\" ariaLabel=\"User profile\" />\n *\n * <!-- Decorative icon (hidden from screen readers) -->\n * <lc-icon name=\"sparkles\" [decorative]=\"true\" />\n *\n * <!-- Strict: throw in dev when the name is unknown (catch typos in CI) -->\n * <lc-icon name=\"beaker\" [strict]=\"true\" />\n * ```\n */\n@Component({\n selector: 'lc-icon',\n standalone: true,\n imports: [],\n templateUrl: './icon.component.html',\n styleUrls: ['./icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class IconComponent {\n private readonly http = inject(HttpClient);\n private readonly doc = inject(DOCUMENT);\n /**\n * Fetching needs a browser; the server renders inline icons and the\n * placeholder (through the allow-list builder) and leaves fetched names\n * empty — the client takes over on hydration.\n */\n private readonly isBrowser = isPlatformBrowser(inject(PLATFORM_ID));\n private readonly container = viewChild.required<ElementRef<HTMLElement>>('container');\n\n /**\n * Icon name from Tabler Icons library\n * @example \"user\", \"check\", \"arrow-right\"\n */\n readonly name = input<string>('');\n\n /**\n * Icon variant (outline or solid)\n * @default \"outline\"\n */\n readonly variant = input<IconVariant>('outline');\n\n /**\n * Icon size\n * - xs: 16px\n * - sm: 20px\n * - md: 24px (default)\n * - lg: 32px\n * - xl: 40px\n * @default \"md\"\n */\n readonly size = input<IconSize>('md');\n\n /**\n * Icon color\n * Can be:\n * - CSS color: \"#FF5733\", \"rgb(255, 87, 51)\"\n * - CSS variable: \"var(--color-primary-500)\"\n * - \"currentColor\" (default - inherits from parent)\n * @default \"currentColor\"\n */\n readonly color = input<string>('currentColor');\n\n /**\n * Accessible label for screen readers\n * Required if icon has semantic meaning\n */\n readonly ariaLabel = input<string>();\n\n /**\n * Whether icon is purely decorative (hidden from screen readers)\n * @default false\n */\n readonly decorative = input<boolean>(false);\n\n /**\n * Strict mode. When `true` and the name is not a valid icon (see\n * {@link isValidIconName}), the component **throws** in development mode\n * instead of only warning — useful as a CI guard to catch typos/unknown\n * names. No effect in production builds.\n * @default false\n */\n readonly strict = input<boolean>(false);\n\n /**\n * What the container shows for the current name/variant. Loading writes\n * here; the element and its decoration are derived below.\n */\n private readonly source = signal<IconSource>(NO_ICON);\n\n /**\n * A fresh `<svg>` for the current source, undecorated. It depends on the\n * source only, so a change of `size`, `color`, `decorative` or `ariaLabel`\n * re-decorates the same element instead of building a new one.\n */\n private readonly svgElement = computed<SVGElement | null>(() => {\n const source = this.source();\n switch (source.kind) {\n case 'none':\n return null;\n case 'fetched':\n return source.svg.cloneNode(true) as SVGElement;\n case 'bundled': {\n const svg = this.isBrowser ? parseBundledSvg(this.doc, source.markup) : (buildSvg(this.doc, source.markup).svg ?? null);\n return svg ?? placeholderSvg(this.doc, this.isBrowser);\n }\n case 'placeholder':\n return placeholderSvg(this.doc, this.isBrowser);\n }\n });\n\n /**\n * Computed path to SVG file\n * @internal\n */\n readonly iconPath = computed(() => {\n const rawName = this.name();\n const iconVariant = this.variant();\n if (!rawName) return '';\n const iconName = ICON_ALIASES[rawName] ?? rawName;\n const tablerVariant = iconVariant === 'solid' ? 'filled' : 'outline';\n return `/tabler-icons/${tablerVariant}/${iconName}.svg`;\n });\n\n /**\n * Computed size in pixels\n * @internal\n */\n readonly sizeInPixels = computed(() => {\n const sizeMap: Record<IconSize, string> = {\n xs: '16px',\n sm: '20px',\n md: '24px',\n lg: '32px',\n xl: '40px',\n };\n return sizeMap[this.size()];\n });\n\n /**\n * Computed CSS classes\n * @internal\n */\n readonly computedClasses = computed(() => {\n const classes = ['icon-container', `icon-${this.size()}`, `icon-${this.variant()}`];\n\n return classes.join(' ');\n });\n\n /**\n * Computed inline color style\n * @internal\n */\n readonly colorStyle = computed(() => {\n return this.color();\n });\n\n constructor() {\n // Resolve the source when name or variant changes.\n effect((onCleanup) => {\n const rawName = this.name();\n const iconVariant = this.variant();\n\n if (!rawName) {\n this.source.set(NO_ICON);\n return;\n }\n\n // Fail loud on names outside the canonical set (typos, un-aliased\n // Heroicon names, …), once per name. Development builds check the full\n // list and never fetch an unknown name: in SPA deployments the server\n // answers missing asset paths with the index.html fallback (status 200).\n // Production builds fold this branch away (ngDevMode is false there),\n // so the list stays out of the bundle; they check the name's form and\n // validate whatever the server answers instead.\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n if (!isValidIconName(rawName)) {\n warnOnce(rawName, unknownIconMessage(rawName));\n if (isDevMode() && this.strict()) {\n throw new Error(\n `[lc-icon] Unknown icon \"${rawName}\" (strict mode). Use a Tabler name or a documented alias.`\n );\n }\n this.source.set(PLACEHOLDER);\n return;\n }\n } else if (rawName.length > MAX_ICON_NAME_LENGTH || !ICON_NAME_FORM.test(rawName)) {\n warnOnce(rawName, unknownIconMessage(rawName));\n this.source.set(PLACEHOLDER);\n return;\n }\n\n // Inline markup first (no request; renders offline and in prerendered\n // HTML): by the name as written, then by its alias target (G-7).\n const inlineSvg = resolveInlineIconSvg(rawName, iconVariant);\n if (inlineSvg) {\n this.source.set({ kind: 'bundled', markup: inlineSvg });\n return;\n }\n\n // Everything else is fetched, in the browser only. While it loads the\n // container is empty (it keeps its px size).\n const path = this.iconPath();\n this.source.set(NO_ICON);\n if (!path || !this.isBrowser) return;\n\n const subscription = fetchIcon(this.http, this.doc, path).subscribe({\n next: (result) => {\n switch (result.kind) {\n case 'svg':\n this.source.set({ kind: 'fetched', svg: result.svg });\n return;\n case 'non-svg':\n warnOnce(\n rawName,\n `[lc-icon] \"${rawName}\": ${path} returned non-SVG content` +\n (result.contentType ? ` (${result.contentType})` : '') +\n ' — dropped. In SPA deployments this is typically the index.html fallback for a missing asset.'\n );\n break;\n case 'dropped':\n warnOnce(\n rawName,\n `[lc-icon] \"${rawName}\": ${path} was dropped: ${result.reason}. Fetched icons may contain only basic shapes with paint and geometry attributes. Rendering a placeholder instead.`\n );\n break;\n case 'failed':\n this.warnLoadFailure(rawName, path, result.status);\n break;\n }\n this.source.set(PLACEHOLDER);\n },\n error: (error: unknown) => {\n // Asset unreachable after the retries: render a visible placeholder\n // so the gap is obvious rather than an empty space.\n this.warnLoadFailure(rawName, path, error instanceof HttpErrorResponse && error.status ? String(error.status) : 'network error');\n this.source.set(PLACEHOLDER);\n },\n });\n // A name/variant change (or destroy) while the load is in flight: stop\n // listening, so a slow old response cannot overwrite the newer icon.\n onCleanup(() => subscription.unsubscribe());\n });\n\n // Put the element into the container and decorate it with the CURRENT\n // inputs. Runs during change detection, so it also runs on the server and\n // the prerendered HTML carries the decorated <svg>. After hydration it\n // replaces the server's <svg> with the client's. Built with the document's\n // own DOM APIs, never the renderer: the renderer would stamp _ngcontent\n // attributes onto every node and change the SVG's DOM.\n effect(() => {\n const host = this.container().nativeElement;\n const svg = this.svgElement();\n if (svg) {\n decorateSvg(svg, {\n size: this.sizeInPixels(),\n color: this.colorStyle(),\n decorative: this.decorative(),\n label: this.ariaLabel(),\n });\n }\n const inPlace = svg ? host.childNodes.length === 1 && host.firstChild === svg : host.childNodes.length === 0;\n if (inPlace) return;\n while (host.firstChild) host.removeChild(host.firstChild);\n if (svg) host.appendChild(svg);\n });\n }\n\n /**\n * A known name whose asset can't be loaded stays quiet in development (as\n * before: unit tests and offline work have no assets). Production can't\n * tell it from a typo — the list isn't there — so it says so, once.\n */\n private warnLoadFailure(name: string, path: string, status: string): void {\n if (typeof ngDevMode === 'undefined' || ngDevMode) return;\n warnOnce(\n name,\n `[lc-icon] \"${name}\": ${path} could not be loaded (${status}) — an unknown name or a missing asset. Rendering a placeholder instead.`\n );\n }\n}\n","<div\n #container\n [class]=\"computedClasses()\"\n [style.width]=\"sizeInPixels()\"\n [style.height]=\"sizeInPixels()\"\n></div>\n","// `lc-icon` name helpers (public API). The full name list and `isValidIconName`\n// live in `@lifecorner/angular-ui-kit/icon-names`.\nimport type { IconVariant } from './icon.component';\nimport { resolveInlineIconSvg } from './icon-inline-lookup';\n\nexport { ICON_ALIASES } from './icon-aliases';\n\n/**\n * A valid `lc-icon` name.\n *\n * There are ~5000 valid names, so this is intentionally a broad `string` alias\n * rather than a giant union type (which would bloat editors and builds). Prefer\n * runtime validation via {@link isValidIconName}, or lint your usages against\n * the {@link ICON_NAMES} array (also shipped as `icon-names.json`), both from\n * `@lifecorner/angular-ui-kit/icon-names`.\n */\nexport type IconName = string;\n\n/**\n * Whether `name` renders from markup shipped in the kit — no request, so it\n * shows offline, at once and in prerendered HTML (3.3, gap G-7). Covers the\n * hand-picked inline set, the Tabler icons inlined at build time (mail,\n * users, settings, logout, key, chevron-right, …) and aliases that resolve\n * to either. Use it to lint an app or a static site against icons that would\n * be fetched.\n *\n * @example\n * ```ts\n * isInlineIconName('x-mark'); // true (hand-picked, by its alias name)\n * isInlineIconName('envelope'); // true (alias of the inlined Tabler `mail`)\n * isInlineIconName('anchor'); // false (fetched from the Tabler assets)\n * isInlineIconName('robot', 'solid'); // false (Tabler has no filled robot)\n * ```\n */\nexport function isInlineIconName(name: string, variant: IconVariant = 'outline'): boolean {\n return resolveInlineIconSvg(name, variant) !== undefined;\n}\n"],"mappings":";;;;;;AAeA,MAAa,eAAiD;CAE5D,iBAAiB;CACjB,WAAW;CACX,sBAAsB;CACtB,OAAO;CACP,QAAQ;CACR,MAAM;CACN,OAAO;CACP,KAAK;CACL,MAAM;CAKN,oBAAoB;CACpB,eAAe;CACf,eAAe;CACf,KAAK;CACL,UAAU;CACV,YAAY;CACZ,gBAAgB;CAChB,sBAAsB;CACtB,sBAAsB;CACtB,wBAAwB;CACxB,qBAAqB;CACrB,uBAAuB;CACvB,eAAe;CACf,iBAAiB;CACjB,YAAY;CACZ,cAAc;CACd,cAAc;CACd,eAAe;CACf,mBAAmB;CACnB,iBAAiB;CACjB,6BAA6B;CAC7B,uBAAuB;CACvB,sBAAsB;CACtB,UAAU;CACV,iBAAiB;CACjB,sBAAsB;CACtB,sBAAsB;CACtB,4BAA4B;CAC5B,2BAA2B;CAC3B,eAAe;CACf,YAAY;CACZ,gBAAgB;CAChB,kBAAkB;CAClB,0BAA0B;CAC1B,oBAAoB;CACpB,0BAA0B;CAC1B,mBAAmB;CACnB,iBAAiB;CAEjB,kCAAkC;CAClC,4BAA4B;CAC5B,QAAQ;CACR,eAAe;CACf,UAAU;CACV,MAAM;CACN,cAAc;CACd,OAAO;CACP,OAAO;CACP,cAAc;CACd,eAAe;CACf,eAAe;CACf,mBAAmB;CACnB,aAAa;CACb,WAAW;CACX,OAAO;CACP,OAAO;CACP,OAAO;CACP,UAAU;CACV,gBAAgB;CAChB,OAAO;CACP,kBAAkB;CAClB,oBAAoB;CACpB,aAAa;CACb,eAAe;CACf,aAAa;CACb,QAAQ;CACR,gBAAgB;CAChB,aAAa;CACb,oBAAoB;CACpB,cAAc;CACd,gBAAgB;CAChB,gBAAgB;CAChB,iBAAiB;CACjB,UAAU;CACV,sBAAsB;CACtB,uBAAuB;CACvB,uBAAuB;CACvB,qBAAqB;CACrB,MAAM;CACN,QAAQ;CACR,WAAW;CACX,OAAO;CACP,SAAS;CACT,eAAe;CACf,gBAAgB;AACjB;ACtGD,MAAa,mBAET;CACF,MAAM;EACJ,SACE;EACF,OACE;CACH;CACD,oBAAoB;EAClB,SACE;EACF,OACE;CACH;CACD,cAAc;EACZ,SACE;EACF,OACE;CACH;CACD,WAAW;EACT,SACE;EACF,OACE;CACH;CACD,eAAe;EACb,SACE;EACF,OACE;CACH;CACD,UAAU;EACR,SACE;EACF,OACE;CACH;CACD,UAAU;EACR,SACE;EACF,OACE;CACH;CACD,aAAa;EACX,SACE;EACF,OACE;CACH;CACD,UAAU;EACR,SACE;EACF,OACE;CACH;CACD,SAAS;EACP,SACE;EACF,OACE;CACH;CACD,KAAK;EACH,SACE;EACF,OACE;CACH;CACD,MAAM;EACJ,SACE;EACF,OACE;CACH;CACD,MAAM;EACJ,SACE;EACF,OACE;CACH;CACD,gBAAgB;EACd,SACE;EACF,OACE;CACH;CACD,cAAc;EACZ,SACE;EACF,OACE;CACH;CACD,KAAK;EACH,SACE;EACF,OACE;CACH;CACD,aAAa;EACX,SACE;EACF,OACE;CACH;CACD,gBAAgB;EACd,SACE;EACF,OACE;CACH;CACD,wBAAwB;EACtB,SACE;EACF,OACE;CACH;CACD,sBAAsB;EACpB,SACE;EACF,OACE;CACH;CACD,sBAAsB;EACpB,SACE;EACF,OACE;CACH;CACD,OAAO;EACL,SACE;EACF,OACE;CACH;CACD,cAAc;EACZ,SACE;EACF,OACE;CACH;CACD,oBAAoB;EAClB,SACE;EACF,OACE;CACH;CACD,qBAAqB;EACnB,SACE;EACF,OACE;CACH;CACD,uBAAuB;EACrB,SACE;EACF,OACE;CACH;CACD,iBAAiB;EACf,SACE;EACF,OACE;CACH;CACD,2BAA2B;EACzB,SACE;EACF,OACE;CACH;CACD,cAAc;EACZ,SACE;EACF,OACE;CACH;CACD,QAAQ;EACN,SACE;EACF,OACE;CACH;CACD,MAAM;EACJ,SACE;EACF,OACE;CACH;CACD,OAAO;EACL,SACE;EACF,OACE;CACH;CACD,sBAAsB;EACpB,SACE;EACF,OACE;CACH;CACD,aAAa;EACX,SACE;EACF,OACE;CACH;CACD,MAAM;EACJ,SACE;EACF,OACE;CACH;CACD,MAAM;EACJ,SACE;EACF,OACE;CACH;CACD,MAAM;EACJ,SACE;EACF,OACE;CACH;CACD,cAAc;EACZ,SACE;EACF,OACE;CACH;AACF;ACzOD,MAAa,qBAAqF;CAChG,QAAQ;EACN,SAAS;EACT,OAAO;CACR;CACD,aAAa;EACX,SAAS;EACT,OAAO;CACR;CACD,QAAQ;EACN,SAAS;EACT,OAAO;CACR;CACD,eAAe,EACb,SAAS,6PACV;CACD,cAAc,EACZ,SAAS,4PACV;CACD,iBAAiB;EACf,SAAS;EACT,OAAO;CACR;CACD,SAAS;EACP,SAAS;EACT,OAAO;CACR;CACD,UAAU;EACR,SAAS;EACT,OAAO;CACR;CACD,KAAK;EACH,SAAS;EACT,OAAO;CACR;CACD,SAAS,EACP,SAAS,4WACV;CACD,aAAa,EACX,SAAS,uTACV;CACD,YAAY;EACV,SAAS;EACT,OAAO;CACR;CACD,UAAU,EACR,SAAS,uUACV;CACD,QAAQ;EACN,SAAS;EACT,OAAO;CACR;CACD,YAAY,EACV,SAAS,ycACV;CACD,iBAAiB;EACf,SAAS;EACT,OAAO;CACR;CACD,gBAAgB,EACd,SAAS,iNACV;CACD,SAAS,EACP,SAAS,yUACV;CACD,OAAO;EACL,SAAS;EACT,OAAO;CACR;CACD,YAAY,EACV,SAAS,uYACV;CACD,gBAAgB;EACd,SAAS;EACT,OAAO;CACR;CACD,SAAS,EACP,SAAS,kcACV;CACD,kBAAkB,EAChB,SAAS,saACV;CACD,iBAAiB;EACf,SAAS;EACT,OAAO;CACR;CACD,kBAAkB;EAChB,SAAS;EACT,OAAO;CACR;CACD,iBAAiB,EACf,SAAS,ySACV;CACD,QAAQ;EACN,SAAS;EACT,OAAO;CACR;CACD,SAAS,EACP,SAAS,qYACV;CACD,QAAQ;EACN,SAAS;EACT,OAAO;CACR;CACD,SAAS;EACP,SAAS;EACT,OAAO;CACR;CACD,eAAe;EACb,SAAS;EACT,OAAO;CACR;CACD,gBAAgB;EACd,SAAS;EACT,OAAO;CACR;CACD,kBAAkB;EAChB,SAAS;EACT,OAAO;CACR;CACD,gBAAgB;EACd,SAAS;EACT,OAAO;CACR;CACD,YAAY;E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"}
|