@lifecorner/angular-ui-kit 3.4.0 → 3.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +367 -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,346 @@
|
|
|
1
|
+
import { ControlValueAccessor } from "@angular/forms";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/** Values of the native `autocapitalize` attribute. */
|
|
4
|
+
export type InputAutocapitalize = 'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters';
|
|
5
|
+
/** Values of the native `enterkeyhint` attribute (label of the on-screen keyboard's Enter key). */
|
|
6
|
+
export type InputEnterKeyHint = 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send';
|
|
7
|
+
/**
|
|
8
|
+
* Input component for single-line text form data entry.
|
|
9
|
+
*
|
|
10
|
+
* Features:
|
|
11
|
+
* - Type variants (text, email, password, number, tel, url)
|
|
12
|
+
* - Size presets (xs, sm, md, lg)
|
|
13
|
+
* - Leading and trailing icon support
|
|
14
|
+
* - Character count display with maxLength (announced only near the limit)
|
|
15
|
+
* - Validation error message display
|
|
16
|
+
* - Helper text support
|
|
17
|
+
* - Disabled and readonly states (read-only values can wrap: `readonlyWrap`)
|
|
18
|
+
* - Input purpose and keyboard hints: `autocomplete`, `name`, `autocapitalize`,
|
|
19
|
+
* `spellcheck`, `enterkeyhint`
|
|
20
|
+
* - ControlValueAccessor integration for reactive forms
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```html
|
|
24
|
+
* <lc-input label="Name" autocomplete="name" autocapitalize="words" [spellcheck]="false" [(ngModel)]="name" />
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export declare class InputComponent implements ControlValueAccessor {
|
|
28
|
+
/**
|
|
29
|
+
* Input label (displayed above input)
|
|
30
|
+
*/
|
|
31
|
+
readonly label: import("@angular/core").InputSignal<string | undefined>;
|
|
32
|
+
/**
|
|
33
|
+
* Placeholder text
|
|
34
|
+
* @default ''
|
|
35
|
+
*/
|
|
36
|
+
readonly placeholder: import("@angular/core").InputSignal<string>;
|
|
37
|
+
/**
|
|
38
|
+
* Input type
|
|
39
|
+
* @default 'text'
|
|
40
|
+
*/
|
|
41
|
+
readonly type: import("@angular/core").InputSignal<"number" | "text" | "email" | "password" | "tel" | "url">;
|
|
42
|
+
/**
|
|
43
|
+
* Size of the input
|
|
44
|
+
* @default 'md'
|
|
45
|
+
*/
|
|
46
|
+
readonly size: import("@angular/core").InputSignal<"xs" | "sm" | "md" | "lg">;
|
|
47
|
+
/**
|
|
48
|
+
* Whether the input is disabled
|
|
49
|
+
* @default false
|
|
50
|
+
*/
|
|
51
|
+
readonly disabled: import("@angular/core").InputSignal<boolean>;
|
|
52
|
+
/**
|
|
53
|
+
* Whether the input is read-only
|
|
54
|
+
* @default false
|
|
55
|
+
*/
|
|
56
|
+
readonly readonly: import("@angular/core").InputSignal<boolean>;
|
|
57
|
+
/**
|
|
58
|
+
* Read-only values wrap onto more lines instead of being clipped (WCAG 1.4.10):
|
|
59
|
+
* the value is shown as text (a read-only textbox named by the label), and a
|
|
60
|
+
* hidden native input keeps the value, `name` and `autocomplete` for forms and
|
|
61
|
+
* password managers. Only applies while `readonly` is set.
|
|
62
|
+
* @default false
|
|
63
|
+
*/
|
|
64
|
+
readonly readonlyWrap: import("@angular/core").InputSignal<boolean>;
|
|
65
|
+
/**
|
|
66
|
+
* Whether the input is required
|
|
67
|
+
* @default false
|
|
68
|
+
*/
|
|
69
|
+
readonly required: import("@angular/core").InputSignal<boolean>;
|
|
70
|
+
/**
|
|
71
|
+
* Show the `*` after the label of a `required` field. `false` keeps the
|
|
72
|
+
* required semantics (`required`, `aria-required`) without the asterisk —
|
|
73
|
+
* for forms where every field is required.
|
|
74
|
+
* @default true
|
|
75
|
+
*/
|
|
76
|
+
readonly requiredIndicator: import("@angular/core").InputSignal<boolean>;
|
|
77
|
+
/**
|
|
78
|
+
* Error message to display (if validation fails)
|
|
79
|
+
*/
|
|
80
|
+
readonly error: import("@angular/core").InputSignal<string | undefined>;
|
|
81
|
+
/**
|
|
82
|
+
* Helper text to display below input
|
|
83
|
+
*/
|
|
84
|
+
readonly helperText: import("@angular/core").InputSignal<string | undefined>;
|
|
85
|
+
/**
|
|
86
|
+
* Icon to display before input text (Tabler icon name)
|
|
87
|
+
* @example 'envelope'
|
|
88
|
+
*/
|
|
89
|
+
readonly iconBefore: import("@angular/core").InputSignal<string | undefined>;
|
|
90
|
+
/**
|
|
91
|
+
* Icon to display after input text (Tabler icon name)
|
|
92
|
+
* @example 'eye'
|
|
93
|
+
*/
|
|
94
|
+
readonly iconAfter: import("@angular/core").InputSignal<string | undefined>;
|
|
95
|
+
/**
|
|
96
|
+
* Maximum number of characters
|
|
97
|
+
*/
|
|
98
|
+
readonly maxLength: import("@angular/core").InputSignal<number | undefined>;
|
|
99
|
+
/**
|
|
100
|
+
* Whether to show character count
|
|
101
|
+
* @default false
|
|
102
|
+
*/
|
|
103
|
+
readonly showCharCount: import("@angular/core").InputSignal<boolean>;
|
|
104
|
+
/**
|
|
105
|
+
* Screen-reader announcement of the character count near the limit;
|
|
106
|
+
* `{remaining}` is replaced.
|
|
107
|
+
* @default 'Characters remaining: {remaining}'
|
|
108
|
+
*/
|
|
109
|
+
readonly charCountRemainingLabel: import("@angular/core").InputSignal<string>;
|
|
110
|
+
/**
|
|
111
|
+
* Remaining characters from which the count is announced (the visible count
|
|
112
|
+
* is always shown). Unset = the last 10 % of `maxLength` (at least 1).
|
|
113
|
+
*/
|
|
114
|
+
readonly charCountAnnounceThreshold: import("@angular/core").InputSignal<number | undefined>;
|
|
115
|
+
/**
|
|
116
|
+
* ARIA label for accessibility
|
|
117
|
+
*/
|
|
118
|
+
readonly ariaLabel: import("@angular/core").InputSignal<string | undefined>;
|
|
119
|
+
/**
|
|
120
|
+
* Native `autocomplete` — the input purpose (WCAG 1.3.5), so browsers and
|
|
121
|
+
* password managers fill the field: `name`, `email`, `username`,
|
|
122
|
+
* `username webauthn` (offers passkeys in the field), `current-password`,
|
|
123
|
+
* `new-password`, `one-time-code`, `tel`, `off` … Unset = no attribute.
|
|
124
|
+
*/
|
|
125
|
+
readonly autocomplete: import("@angular/core").InputSignal<string | undefined>;
|
|
126
|
+
/** Native `name` of the inner `<input>` (form posts, password managers). Unset = no attribute. */
|
|
127
|
+
readonly name: import("@angular/core").InputSignal<string | undefined>;
|
|
128
|
+
/**
|
|
129
|
+
* Native `autocapitalize` for on-screen keyboards: `off` for addresses,
|
|
130
|
+
* user names and codes, `words` for names. Unset = no attribute.
|
|
131
|
+
*/
|
|
132
|
+
readonly autocapitalize: import("@angular/core").InputSignal<InputAutocapitalize | undefined>;
|
|
133
|
+
/** Native `spellcheck`: `false` for names, addresses and codes. Unset = no attribute. */
|
|
134
|
+
readonly spellcheck: import("@angular/core").InputSignal<boolean | undefined>;
|
|
135
|
+
/** Native `enterkeyhint`: the label of the on-screen keyboard's Enter key. Unset = no attribute. */
|
|
136
|
+
readonly enterkeyhint: import("@angular/core").InputSignal<InputEnterKeyHint | undefined>;
|
|
137
|
+
/** Accessible name of the `*` marker shown for `required` fields. */
|
|
138
|
+
readonly requiredAriaLabel: import("@angular/core").InputSignal<string>;
|
|
139
|
+
/**
|
|
140
|
+
* Current value (two-way bindable: `[value]` / `[(value)]`). Emits
|
|
141
|
+
* `valueChange` whenever it changes — once per user keystroke, on `clear()`
|
|
142
|
+
* and when a bound form control writes a value.
|
|
143
|
+
*/
|
|
144
|
+
readonly value: import("@angular/core").ModelSignal<string>;
|
|
145
|
+
/**
|
|
146
|
+
* Emitted when input receives focus
|
|
147
|
+
*/
|
|
148
|
+
readonly focused: import("@angular/core").OutputEmitterRef<void>;
|
|
149
|
+
/**
|
|
150
|
+
* Emitted when input loses focus
|
|
151
|
+
*/
|
|
152
|
+
readonly blurred: import("@angular/core").OutputEmitterRef<void>;
|
|
153
|
+
/**
|
|
154
|
+
* Emitted when Enter key is pressed
|
|
155
|
+
*/
|
|
156
|
+
readonly enterPressed: import("@angular/core").OutputEmitterRef<void>;
|
|
157
|
+
readonly inputId: string;
|
|
158
|
+
private readonly inputElement;
|
|
159
|
+
private readonly readonlyValueElement;
|
|
160
|
+
private readonly _formDisabled;
|
|
161
|
+
private onChange;
|
|
162
|
+
private onTouched;
|
|
163
|
+
/** The read-only value is shown as wrapping text (SI-10). */
|
|
164
|
+
protected readonly wrapsReadonlyValue: import("@angular/core").Signal<boolean>;
|
|
165
|
+
/** `aria-describedby`: only the texts that are rendered (the error replaces the helper text). */
|
|
166
|
+
protected readonly describedBy: import("@angular/core").Signal<string | null>;
|
|
167
|
+
/** Screen-reader text of the character count: empty until the limit is near. */
|
|
168
|
+
protected readonly charCountAnnouncement: import("@angular/core").Signal<string>;
|
|
169
|
+
/**
|
|
170
|
+
* Computed disabled state from both input and form control
|
|
171
|
+
*/
|
|
172
|
+
protected get isDisabled(): boolean;
|
|
173
|
+
/**
|
|
174
|
+
* Gets current character count
|
|
175
|
+
*/
|
|
176
|
+
protected get charCount(): number;
|
|
177
|
+
/**
|
|
178
|
+
* Determines if error state should be shown
|
|
179
|
+
*/
|
|
180
|
+
protected get hasError(): boolean;
|
|
181
|
+
/**
|
|
182
|
+
* Programmatically focus the input (the visible value while `readonlyWrap` applies)
|
|
183
|
+
*/
|
|
184
|
+
focus(): void;
|
|
185
|
+
/**
|
|
186
|
+
* Programmatically select input text
|
|
187
|
+
*/
|
|
188
|
+
select(): void;
|
|
189
|
+
/**
|
|
190
|
+
* Clear the input value
|
|
191
|
+
*/
|
|
192
|
+
clear(): void;
|
|
193
|
+
writeValue(value: string | null): void;
|
|
194
|
+
registerOnChange(fn: (value: string) => void): void;
|
|
195
|
+
registerOnTouched(fn: () => void): void;
|
|
196
|
+
setDisabledState(isDisabled: boolean): void;
|
|
197
|
+
/**
|
|
198
|
+
* Handles input value changes
|
|
199
|
+
*/
|
|
200
|
+
protected onInput(event: Event): void;
|
|
201
|
+
/**
|
|
202
|
+
* Handles input focus
|
|
203
|
+
*/
|
|
204
|
+
protected onFocus(): void;
|
|
205
|
+
/**
|
|
206
|
+
* Handles input blur
|
|
207
|
+
*/
|
|
208
|
+
protected onBlur(): void;
|
|
209
|
+
/**
|
|
210
|
+
* Handles keydown events
|
|
211
|
+
*/
|
|
212
|
+
protected onKeydown(event: KeyboardEvent): void;
|
|
213
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<InputComponent, never>;
|
|
214
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<InputComponent, "lc-input", never, {
|
|
215
|
+
"label": {
|
|
216
|
+
"alias": "label";
|
|
217
|
+
"required": false;
|
|
218
|
+
"isSignal": true;
|
|
219
|
+
};
|
|
220
|
+
"placeholder": {
|
|
221
|
+
"alias": "placeholder";
|
|
222
|
+
"required": false;
|
|
223
|
+
"isSignal": true;
|
|
224
|
+
};
|
|
225
|
+
"type": {
|
|
226
|
+
"alias": "type";
|
|
227
|
+
"required": false;
|
|
228
|
+
"isSignal": true;
|
|
229
|
+
};
|
|
230
|
+
"size": {
|
|
231
|
+
"alias": "size";
|
|
232
|
+
"required": false;
|
|
233
|
+
"isSignal": true;
|
|
234
|
+
};
|
|
235
|
+
"disabled": {
|
|
236
|
+
"alias": "disabled";
|
|
237
|
+
"required": false;
|
|
238
|
+
"isSignal": true;
|
|
239
|
+
};
|
|
240
|
+
"readonly": {
|
|
241
|
+
"alias": "readonly";
|
|
242
|
+
"required": false;
|
|
243
|
+
"isSignal": true;
|
|
244
|
+
};
|
|
245
|
+
"readonlyWrap": {
|
|
246
|
+
"alias": "readonlyWrap";
|
|
247
|
+
"required": false;
|
|
248
|
+
"isSignal": true;
|
|
249
|
+
};
|
|
250
|
+
"required": {
|
|
251
|
+
"alias": "required";
|
|
252
|
+
"required": false;
|
|
253
|
+
"isSignal": true;
|
|
254
|
+
};
|
|
255
|
+
"requiredIndicator": {
|
|
256
|
+
"alias": "requiredIndicator";
|
|
257
|
+
"required": false;
|
|
258
|
+
"isSignal": true;
|
|
259
|
+
};
|
|
260
|
+
"error": {
|
|
261
|
+
"alias": "error";
|
|
262
|
+
"required": false;
|
|
263
|
+
"isSignal": true;
|
|
264
|
+
};
|
|
265
|
+
"helperText": {
|
|
266
|
+
"alias": "helperText";
|
|
267
|
+
"required": false;
|
|
268
|
+
"isSignal": true;
|
|
269
|
+
};
|
|
270
|
+
"iconBefore": {
|
|
271
|
+
"alias": "iconBefore";
|
|
272
|
+
"required": false;
|
|
273
|
+
"isSignal": true;
|
|
274
|
+
};
|
|
275
|
+
"iconAfter": {
|
|
276
|
+
"alias": "iconAfter";
|
|
277
|
+
"required": false;
|
|
278
|
+
"isSignal": true;
|
|
279
|
+
};
|
|
280
|
+
"maxLength": {
|
|
281
|
+
"alias": "maxLength";
|
|
282
|
+
"required": false;
|
|
283
|
+
"isSignal": true;
|
|
284
|
+
};
|
|
285
|
+
"showCharCount": {
|
|
286
|
+
"alias": "showCharCount";
|
|
287
|
+
"required": false;
|
|
288
|
+
"isSignal": true;
|
|
289
|
+
};
|
|
290
|
+
"charCountRemainingLabel": {
|
|
291
|
+
"alias": "charCountRemainingLabel";
|
|
292
|
+
"required": false;
|
|
293
|
+
"isSignal": true;
|
|
294
|
+
};
|
|
295
|
+
"charCountAnnounceThreshold": {
|
|
296
|
+
"alias": "charCountAnnounceThreshold";
|
|
297
|
+
"required": false;
|
|
298
|
+
"isSignal": true;
|
|
299
|
+
};
|
|
300
|
+
"ariaLabel": {
|
|
301
|
+
"alias": "ariaLabel";
|
|
302
|
+
"required": false;
|
|
303
|
+
"isSignal": true;
|
|
304
|
+
};
|
|
305
|
+
"autocomplete": {
|
|
306
|
+
"alias": "autocomplete";
|
|
307
|
+
"required": false;
|
|
308
|
+
"isSignal": true;
|
|
309
|
+
};
|
|
310
|
+
"name": {
|
|
311
|
+
"alias": "name";
|
|
312
|
+
"required": false;
|
|
313
|
+
"isSignal": true;
|
|
314
|
+
};
|
|
315
|
+
"autocapitalize": {
|
|
316
|
+
"alias": "autocapitalize";
|
|
317
|
+
"required": false;
|
|
318
|
+
"isSignal": true;
|
|
319
|
+
};
|
|
320
|
+
"spellcheck": {
|
|
321
|
+
"alias": "spellcheck";
|
|
322
|
+
"required": false;
|
|
323
|
+
"isSignal": true;
|
|
324
|
+
};
|
|
325
|
+
"enterkeyhint": {
|
|
326
|
+
"alias": "enterkeyhint";
|
|
327
|
+
"required": false;
|
|
328
|
+
"isSignal": true;
|
|
329
|
+
};
|
|
330
|
+
"requiredAriaLabel": {
|
|
331
|
+
"alias": "requiredAriaLabel";
|
|
332
|
+
"required": false;
|
|
333
|
+
"isSignal": true;
|
|
334
|
+
};
|
|
335
|
+
"value": {
|
|
336
|
+
"alias": "value";
|
|
337
|
+
"required": false;
|
|
338
|
+
"isSignal": true;
|
|
339
|
+
};
|
|
340
|
+
}, {
|
|
341
|
+
"value": "valueChange";
|
|
342
|
+
"focused": "focused";
|
|
343
|
+
"blurred": "blurred";
|
|
344
|
+
"enterPressed": "enterPressed";
|
|
345
|
+
}, never, never, true, never>;
|
|
346
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Colour helpers for text drawn on top of chart fills.
|
|
3
|
+
*/
|
|
4
|
+
/** Parses `#rgb`, `#rrggbb`, `rgb()` and `rgba()`. Anything else → null. */
|
|
5
|
+
export declare function parseRgb(color: string): [number, number, number] | null;
|
|
6
|
+
/**
|
|
7
|
+
* Ink that stays readable on `fill`, or `null` when that cannot be decided.
|
|
8
|
+
*
|
|
9
|
+
* A literal colour (`#…`, `rgb()`) is measured by its relative luminance and
|
|
10
|
+
* gets a dark or light ink. A `var(--…)` token can't be resolved without the
|
|
11
|
+
* DOM — and its resolution flips with the theme — so `null` is returned and
|
|
12
|
+
* the caller should draw the label in `--color-text-primary` with a
|
|
13
|
+
* `--color-surface` halo (`paint-order: stroke`), which reads on any fill in
|
|
14
|
+
* both themes.
|
|
15
|
+
*/
|
|
16
|
+
export declare function readableInk(fill: string): string | null;
|
|
17
|
+
/**
|
|
18
|
+
* Default categorical palette for the chart family.
|
|
19
|
+
*
|
|
20
|
+
* Every entry is a theme token whose light *and* dark resolutions sit clearly
|
|
21
|
+
* against `--color-surface`: the 500 brand shades and the status defaults flip
|
|
22
|
+
* to their pastel tints in the dark theme, the 700 shades to their light tints,
|
|
23
|
+
* so consecutive hues stay distinguishable on both themes. (The 300 shades and
|
|
24
|
+
* `-light` status tints some charts used before resolve to dark, low-contrast
|
|
25
|
+
* colours on the dark theme, which is why they are not in this list.)
|
|
26
|
+
*
|
|
27
|
+
* Charts fall back to this list when a series/segment brings no `color` of its
|
|
28
|
+
* own; per-item colours always win.
|
|
29
|
+
*/
|
|
30
|
+
export declare const CHART_PALETTE: readonly string[];
|
|
31
|
+
/** Palette colour for the series/segment at `index`, wrapping around. */
|
|
32
|
+
export declare function chartColor(index: number): string;
|
|
33
|
+
/**
|
|
34
|
+
* SVG path builders shared by the line-shaped charts (line, area, sparkline).
|
|
35
|
+
*/
|
|
36
|
+
export interface ChartPoint {
|
|
37
|
+
x: number;
|
|
38
|
+
y: number;
|
|
39
|
+
}
|
|
40
|
+
/** `M x,y L x,y …` polyline through the points; '' for fewer than two points. */
|
|
41
|
+
export declare function linearPath(points: readonly ChartPoint[]): string;
|
|
42
|
+
/**
|
|
43
|
+
* Smooth cubic path through the points (Catmull-Rom → Bézier approximation);
|
|
44
|
+
* '' for fewer than two points.
|
|
45
|
+
*/
|
|
46
|
+
export declare function smoothPath(points: readonly ChartPoint[]): string;
|
|
47
|
+
/**
|
|
48
|
+
* Numeric helpers shared by the chart family: a "nice" linear scale for axes
|
|
49
|
+
* and grids, float-safe value formatting, and a NaN guard for caller data.
|
|
50
|
+
*
|
|
51
|
+
* Every chart used to place its grid on its own ad-hoc rounding
|
|
52
|
+
* (`Math.ceil(max / 4)`, `Math.round(v * 10) / 10`, `toFixed`), which let the
|
|
53
|
+
* top tick disagree with the value at the plot edge and leaked binary float
|
|
54
|
+
* noise (`0.30000000000000004`) into tick labels. This module is the one
|
|
55
|
+
* routine they all go through instead.
|
|
56
|
+
*/
|
|
57
|
+
/** Signature of a chart's `formatValue` input. */
|
|
58
|
+
export type ChartValueFormatter = (value: number) => string;
|
|
59
|
+
/** `value` if it is a finite number, otherwise `fallback` (NaN, ±Infinity, undefined, null…). */
|
|
60
|
+
export declare function toFinite(value: unknown, fallback?: number): number;
|
|
61
|
+
/** Strips binary float noise (0.1 + 0.2 → 0.3) and normalises -0 to 0. */
|
|
62
|
+
export declare function cleanNumber(value: number): number;
|
|
63
|
+
/** Default tick/value formatter: float-clean `String(value)`, no locale, no unit. */
|
|
64
|
+
export declare function formatChartValue(value: number): string;
|
|
65
|
+
export interface NiceScale {
|
|
66
|
+
/** Lower bound — a multiple of `step`, ≤ the requested min. */
|
|
67
|
+
min: number;
|
|
68
|
+
/** Upper bound — a multiple of `step`, ≥ the requested max. */
|
|
69
|
+
max: number;
|
|
70
|
+
/** Tick interval: 1, 2, 2.5 or 5 × 10ⁿ. */
|
|
71
|
+
step: number;
|
|
72
|
+
/** All tick values from `min` to `max` inclusive. */
|
|
73
|
+
ticks: number[];
|
|
74
|
+
}
|
|
75
|
+
/** Rounds a raw interval up to the nearest 1, 2, 2.5 or 5 × 10ⁿ. */
|
|
76
|
+
export declare function niceStep(raw: number): number;
|
|
77
|
+
/**
|
|
78
|
+
* Linear scale whose bounds are multiples of a nice step, so every tick label
|
|
79
|
+
* is a round number and the outermost ticks equal the values at the plot
|
|
80
|
+
* edges. Bounds are only ever extended outward, never shrunk. A degenerate
|
|
81
|
+
* range (`min === max`) is widened towards zero, or to [0, 1] when both are 0.
|
|
82
|
+
*
|
|
83
|
+
* `intervals` is the *target* number of steps; the result may have one more
|
|
84
|
+
* or fewer because the bounds snap to the step.
|
|
85
|
+
*/
|
|
86
|
+
export declare function niceScale(min: number, max: number, intervals?: number): NiceScale;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
/**
|
|
3
|
+
* Keeps the open overlays (modal, drawer, popover, menu, tooltip, …) in
|
|
4
|
+
* opening order so that a dismiss gesture — Escape, click outside — reaches
|
|
5
|
+
* only the top-most one instead of closing every open layer at once.
|
|
6
|
+
*
|
|
7
|
+
* Every overlay pushes its id when it opens and removes it when it closes or
|
|
8
|
+
* is destroyed. Internal to the library; not part of the public API.
|
|
9
|
+
*/
|
|
10
|
+
export declare class OverlayStackService {
|
|
11
|
+
private readonly stack;
|
|
12
|
+
/**
|
|
13
|
+
* Events already consumed by an overlay. All overlays listen on `document`,
|
|
14
|
+
* where listeners fire in registration order — not z-order — so by the time a
|
|
15
|
+
* lower overlay's listener runs, the top one may already have closed and left
|
|
16
|
+
* the stack, making the lower one "top" for the very same event.
|
|
17
|
+
*/
|
|
18
|
+
private readonly claimed;
|
|
19
|
+
/** Register `id` as the new top-most overlay (re-pushing moves it to the top). */
|
|
20
|
+
push(id: string): void;
|
|
21
|
+
remove(id: string): void;
|
|
22
|
+
isTop(id: string): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Whether overlay `id` may act on this dismiss event. True only for the
|
|
25
|
+
* top-most overlay and only once per event; the caller then closes and, for
|
|
26
|
+
* keyboard events, stops propagation so nothing outside the stack sees it.
|
|
27
|
+
*/
|
|
28
|
+
claim(id: string, event: Event): boolean;
|
|
29
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OverlayStackService, never>;
|
|
30
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<any>;
|
|
31
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* URL scheme checks shared by the components that put caller- or user-supplied
|
|
3
|
+
* URLs into `href`, `src`, iframe or download attributes.
|
|
4
|
+
*
|
|
5
|
+
* Angular's own sanitizer already refuses `javascript:` in a bound `[href]` or
|
|
6
|
+
* `[src]`, but a URL that reaches the DOM through `bypassSecurityTrust*`, a
|
|
7
|
+
* hand-built HTML string or a programmatic `a.click()` never meets it. These
|
|
8
|
+
* helpers are the check those paths apply instead — allow-lists, not
|
|
9
|
+
* deny-lists, so an unknown scheme is refused rather than let through.
|
|
10
|
+
*/
|
|
11
|
+
/** The URL's scheme, lower-cased, or null for a relative URL / fragment / query. */
|
|
12
|
+
export declare function urlScheme(url: string): string | null;
|
|
13
|
+
/** For `<a href>`: http(s), mailto, tel, or relative. */
|
|
14
|
+
export declare function isSafeLinkUrl(url: string): boolean;
|
|
15
|
+
/** For `<img src>`: everything a link may be, plus blob: and data: images. */
|
|
16
|
+
export declare function isSafeImageUrl(url: string): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* For iframes and programmatic downloads: http(s), blob:, data: PDFs, or
|
|
19
|
+
* relative. Stricter than a link — an iframe navigates a whole browsing
|
|
20
|
+
* context, and a download link is clicked without the user seeing it.
|
|
21
|
+
*/
|
|
22
|
+
export declare function isSafeResourceUrl(url: string): boolean;
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export interface KanbanCard {
|
|
3
|
+
id: string;
|
|
4
|
+
title: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
labels?: KanbanLabel[];
|
|
7
|
+
assignee?: string;
|
|
8
|
+
priority?: 'low' | 'medium' | 'high' | 'critical';
|
|
9
|
+
}
|
|
10
|
+
export interface KanbanLabel {
|
|
11
|
+
text: string;
|
|
12
|
+
color?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface KanbanColumn {
|
|
15
|
+
id: string;
|
|
16
|
+
title: string;
|
|
17
|
+
cards: KanbanCard[];
|
|
18
|
+
color?: string;
|
|
19
|
+
limit?: number;
|
|
20
|
+
}
|
|
21
|
+
export interface KanbanMoveEvent {
|
|
22
|
+
cardId: string;
|
|
23
|
+
fromColumnId: string;
|
|
24
|
+
toColumnId: string;
|
|
25
|
+
toIndex: number;
|
|
26
|
+
}
|
|
27
|
+
export declare class KanbanBoardComponent {
|
|
28
|
+
readonly columns: import("@angular/core").InputSignal<KanbanColumn[]>;
|
|
29
|
+
readonly showCardCount: import("@angular/core").InputSignal<boolean>;
|
|
30
|
+
readonly showWipLimit: import("@angular/core").InputSignal<boolean>;
|
|
31
|
+
readonly readonly: import("@angular/core").InputSignal<boolean>;
|
|
32
|
+
/** Placeholder text of an empty column. */
|
|
33
|
+
readonly emptyColumnLabel: import("@angular/core").InputSignal<string>;
|
|
34
|
+
/** Accessible name prefix of a card's priority marker, followed by the priority. */
|
|
35
|
+
readonly priorityAriaLabel: import("@angular/core").InputSignal<string>;
|
|
36
|
+
readonly cardMoved: import("@angular/core").OutputEmitterRef<KanbanMoveEvent>;
|
|
37
|
+
readonly cardClick: import("@angular/core").OutputEmitterRef<{
|
|
38
|
+
card: KanbanCard;
|
|
39
|
+
columnId: string;
|
|
40
|
+
}>;
|
|
41
|
+
private readonly host;
|
|
42
|
+
private readonly injector;
|
|
43
|
+
/**
|
|
44
|
+
* Local working copy of the columns. Re-seeded from the `columns` input
|
|
45
|
+
* whenever the parent provides a new value, while drops / keyboard moves
|
|
46
|
+
* update it locally without waiting for the parent to echo the change back.
|
|
47
|
+
*/
|
|
48
|
+
protected internalColumns: import("@angular/core").WritableSignal<KanbanColumn[]>;
|
|
49
|
+
protected draggedCard: import("@angular/core").WritableSignal<{
|
|
50
|
+
card: KanbanCard;
|
|
51
|
+
columnId: string;
|
|
52
|
+
} | null>;
|
|
53
|
+
protected dropTargetColumn: import("@angular/core").WritableSignal<string | null>;
|
|
54
|
+
protected dropTargetIndex: import("@angular/core").WritableSignal<number>;
|
|
55
|
+
protected readonly displayColumns: import("@angular/core").Signal<KanbanColumn[]>;
|
|
56
|
+
protected isOverLimit(col: KanbanColumn): boolean;
|
|
57
|
+
protected getPriorityIcon(priority?: string): string;
|
|
58
|
+
protected getPriorityColor(priority?: string): string;
|
|
59
|
+
protected onDragStart(event: DragEvent, card: KanbanCard, columnId: string): void;
|
|
60
|
+
protected onDragOver(event: DragEvent, columnId: string, index: number): void;
|
|
61
|
+
protected onDragOverColumn(event: DragEvent, columnId: string): void;
|
|
62
|
+
protected onDragLeave(): void;
|
|
63
|
+
protected onDrop(event: DragEvent, toColumnId: string, toIndex?: number): void;
|
|
64
|
+
/**
|
|
65
|
+
* Keyboard alternative to drag & drop: Enter / Space activate the card,
|
|
66
|
+
* Alt+ArrowLeft / Alt+ArrowRight move it to the neighbouring column,
|
|
67
|
+
* Alt+ArrowUp / Alt+ArrowDown reorder it within its column. Moves are
|
|
68
|
+
* suppressed in readonly mode, exactly like drag & drop.
|
|
69
|
+
*/
|
|
70
|
+
protected onCardKeydown(event: KeyboardEvent, card: KanbanCard, columnId: string): void;
|
|
71
|
+
/** Moves a card between / within columns and emits `cardMoved`. */
|
|
72
|
+
private moveCard;
|
|
73
|
+
protected onDragEnd(): void;
|
|
74
|
+
protected onCardClick(card: KanbanCard, columnId: string): void;
|
|
75
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KanbanBoardComponent, never>;
|
|
76
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<KanbanBoardComponent, "lc-kanban-board", never, {
|
|
77
|
+
"columns": {
|
|
78
|
+
"alias": "columns";
|
|
79
|
+
"required": true;
|
|
80
|
+
"isSignal": true;
|
|
81
|
+
};
|
|
82
|
+
"showCardCount": {
|
|
83
|
+
"alias": "showCardCount";
|
|
84
|
+
"required": false;
|
|
85
|
+
"isSignal": true;
|
|
86
|
+
};
|
|
87
|
+
"showWipLimit": {
|
|
88
|
+
"alias": "showWipLimit";
|
|
89
|
+
"required": false;
|
|
90
|
+
"isSignal": true;
|
|
91
|
+
};
|
|
92
|
+
"readonly": {
|
|
93
|
+
"alias": "readonly";
|
|
94
|
+
"required": false;
|
|
95
|
+
"isSignal": true;
|
|
96
|
+
};
|
|
97
|
+
"emptyColumnLabel": {
|
|
98
|
+
"alias": "emptyColumnLabel";
|
|
99
|
+
"required": false;
|
|
100
|
+
"isSignal": true;
|
|
101
|
+
};
|
|
102
|
+
"priorityAriaLabel": {
|
|
103
|
+
"alias": "priorityAriaLabel";
|
|
104
|
+
"required": false;
|
|
105
|
+
"isSignal": true;
|
|
106
|
+
};
|
|
107
|
+
}, {
|
|
108
|
+
"cardMoved": "cardMoved";
|
|
109
|
+
"cardClick": "cardClick";
|
|
110
|
+
}, never, never, true, never>;
|
|
111
|
+
}
|