@ojiepermana/angular 22.1.10 → 22.1.12
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 +32 -26
- package/chart/README.md +272 -0
- package/component/README.md +89 -0
- package/component/accordion/README.md +195 -0
- package/component/alert/README.md +184 -0
- package/component/alert-dialog/README.md +255 -0
- package/component/aspect-ratio/README.md +116 -0
- package/component/avatar/README.md +182 -0
- package/component/badge/README.md +143 -0
- package/component/breadcrumb/README.md +223 -0
- package/component/button/README.md +141 -0
- package/component/button-group/README.md +214 -0
- package/component/calendar/README.md +137 -0
- package/component/card/README.md +232 -0
- package/component/carousel/README.md +276 -0
- package/component/checkbox/README.md +153 -0
- package/component/collapsible/README.md +216 -0
- package/component/combobox/README.md +202 -0
- package/component/command/README.md +287 -0
- package/component/composer/README.md +241 -0
- package/component/context-menu/README.md +268 -0
- package/component/date-picker/README.md +202 -0
- package/component/dialog/README.md +276 -0
- package/component/drawer/README.md +147 -0
- package/component/dropdown-menu/README.md +336 -0
- package/component/editor/README.md +152 -0
- package/component/empty/README.md +193 -0
- package/component/form/README.md +216 -0
- package/component/hover-card/README.md +150 -0
- package/component/icon/README.md +25 -0
- package/component/input/README.md +160 -0
- package/component/input-group/README.md +245 -0
- package/component/input-otp/README.md +331 -0
- package/component/item/README.md +254 -0
- package/component/kanban/README.md +81 -0
- package/component/kbd/README.md +141 -0
- package/component/label/README.md +137 -0
- package/component/menubar/README.md +270 -0
- package/component/native-select/README.md +176 -0
- package/component/navigation-menu/README.md +165 -0
- package/component/pagination/README.md +151 -0
- package/component/pillbox/README.md +68 -0
- package/component/popover/README.md +54 -0
- package/component/progress/README.md +160 -0
- package/component/radio/README.md +212 -0
- package/component/resizable/README.md +178 -0
- package/component/scroll-area/README.md +150 -0
- package/component/select/README.md +228 -0
- package/component/separator/README.md +175 -0
- package/component/sheet/README.md +190 -0
- package/component/skeleton/README.md +158 -0
- package/component/slider/README.md +207 -0
- package/component/spinner/README.md +160 -0
- package/component/switch/README.md +170 -0
- package/component/table/README.md +292 -0
- package/component/tabs/README.md +220 -0
- package/component/textarea/README.md +169 -0
- package/component/timeline/README.md +94 -0
- package/component/toast/README.md +173 -0
- package/component/toggle/README.md +133 -0
- package/component/toggle-group/README.md +234 -0
- package/component/tooltip/README.md +230 -0
- package/fesm2022/ojiepermana-angular-chart-area.mjs +289 -3
- package/fesm2022/ojiepermana-angular-chart-bar.mjs +722 -3
- package/fesm2022/ojiepermana-angular-chart-core.mjs +1482 -3
- package/fesm2022/ojiepermana-angular-chart-line.mjs +294 -3
- package/fesm2022/ojiepermana-angular-chart-pie.mjs +291 -3
- package/fesm2022/ojiepermana-angular-chart-primitives.mjs +1301 -3
- package/fesm2022/ojiepermana-angular-chart-radar.mjs +421 -3
- package/fesm2022/ojiepermana-angular-chart-radial.mjs +295 -3
- package/fesm2022/ojiepermana-angular-chart-scatter.mjs +306 -3
- package/fesm2022/ojiepermana-angular-chart.mjs +12 -3
- package/fesm2022/ojiepermana-angular-component-accordion.mjs +267 -3
- package/fesm2022/ojiepermana-angular-component-alert-dialog.mjs +359 -3
- package/fesm2022/ojiepermana-angular-component-alert.mjs +101 -3
- package/fesm2022/ojiepermana-angular-component-aspect-ratio.mjs +31 -3
- package/fesm2022/ojiepermana-angular-component-avatar.mjs +139 -3
- package/fesm2022/ojiepermana-angular-component-badge.mjs +57 -3
- package/fesm2022/ojiepermana-angular-component-breadcrumb.mjs +192 -3
- package/fesm2022/ojiepermana-angular-component-button-group.mjs +95 -3
- package/fesm2022/ojiepermana-angular-component-button.mjs +73 -3
- package/fesm2022/ojiepermana-angular-component-calendar.mjs +718 -3
- package/fesm2022/ojiepermana-angular-component-card.mjs +167 -3
- package/fesm2022/ojiepermana-angular-component-carousel.mjs +326 -3
- package/fesm2022/ojiepermana-angular-component-checkbox.mjs +190 -3
- package/fesm2022/ojiepermana-angular-component-collapsible.mjs +117 -3
- package/fesm2022/ojiepermana-angular-component-combobox.mjs +327 -3
- package/fesm2022/ojiepermana-angular-component-command.mjs +351 -3
- package/fesm2022/ojiepermana-angular-component-composer.mjs +359 -3
- package/fesm2022/ojiepermana-angular-component-context-menu.mjs +158 -3
- package/fesm2022/ojiepermana-angular-component-date-picker.mjs +482 -3
- package/fesm2022/ojiepermana-angular-component-dialog.mjs +400 -3
- package/fesm2022/ojiepermana-angular-component-drawer.mjs +1 -3
- package/fesm2022/ojiepermana-angular-component-dropdown-menu.mjs +689 -3
- package/fesm2022/ojiepermana-angular-component-editor.mjs +511 -3
- package/fesm2022/ojiepermana-angular-component-empty.mjs +134 -3
- package/fesm2022/ojiepermana-angular-component-form.mjs +438 -3
- package/fesm2022/ojiepermana-angular-component-hover-card.mjs +273 -3
- package/fesm2022/ojiepermana-angular-component-icon.mjs +139 -3
- package/fesm2022/ojiepermana-angular-component-input-group.mjs +176 -3
- package/fesm2022/ojiepermana-angular-component-input-otp.mjs +550 -3
- package/fesm2022/ojiepermana-angular-component-input.mjs +52 -3
- package/fesm2022/ojiepermana-angular-component-item.mjs +264 -3
- package/fesm2022/ojiepermana-angular-component-kanban.mjs +310 -3
- package/fesm2022/ojiepermana-angular-component-kbd.mjs +48 -3
- package/fesm2022/ojiepermana-angular-component-label.mjs +27 -3
- package/fesm2022/ojiepermana-angular-component-menubar.mjs +327 -3
- package/fesm2022/ojiepermana-angular-component-native-select.mjs +62 -3
- package/fesm2022/ojiepermana-angular-component-navigation-menu.mjs +378 -3
- package/fesm2022/ojiepermana-angular-component-pagination.mjs +238 -3
- package/fesm2022/ojiepermana-angular-component-pillbox.mjs +999 -3
- package/fesm2022/ojiepermana-angular-component-popover.mjs +201 -3
- package/fesm2022/ojiepermana-angular-component-progress.mjs +57 -3
- package/fesm2022/ojiepermana-angular-component-radio.mjs +180 -3
- package/fesm2022/ojiepermana-angular-component-resizable.mjs +493 -3
- package/fesm2022/ojiepermana-angular-component-scroll-area.mjs +51 -3
- package/fesm2022/ojiepermana-angular-component-segmented-control.mjs +227 -3
- package/fesm2022/ojiepermana-angular-component-select.mjs +609 -3
- package/fesm2022/ojiepermana-angular-component-separator.mjs +31 -3
- package/fesm2022/ojiepermana-angular-component-sheet.mjs +407 -3
- package/fesm2022/ojiepermana-angular-component-skeleton.mjs +25 -3
- package/fesm2022/ojiepermana-angular-component-slider.mjs +456 -3
- package/fesm2022/ojiepermana-angular-component-spinner.mjs +56 -3
- package/fesm2022/ojiepermana-angular-component-switch.mjs +145 -3
- package/fesm2022/ojiepermana-angular-component-table.mjs +155 -3
- package/fesm2022/ojiepermana-angular-component-tabs.mjs +315 -3
- package/fesm2022/ojiepermana-angular-component-textarea.mjs +46 -3
- package/fesm2022/ojiepermana-angular-component-timeline.mjs +237 -3
- package/fesm2022/ojiepermana-angular-component-toast.mjs +241 -3
- package/fesm2022/ojiepermana-angular-component-toggle-group.mjs +290 -3
- package/fesm2022/ojiepermana-angular-component-toggle.mjs +76 -3
- package/fesm2022/ojiepermana-angular-component-tooltip.mjs +519 -3
- package/fesm2022/ojiepermana-angular-component-utils-core.mjs +310 -3
- package/fesm2022/ojiepermana-angular-component-utils-overlay.mjs +62 -3
- package/fesm2022/ojiepermana-angular-component-utils-scale.mjs +34 -3
- package/fesm2022/ojiepermana-angular-component-utils.mjs +3 -2
- package/fesm2022/ojiepermana-angular-component.mjs +4 -4
- package/fesm2022/ojiepermana-angular-navigation-core.mjs +21 -3
- package/fesm2022/ojiepermana-angular-navigation-icon.mjs +20 -3
- package/fesm2022/ojiepermana-angular-navigation-navigation-badge-count.component-CDBxQ8rk.mjs +91 -0
- package/fesm2022/ojiepermana-angular-navigation-navigation-dockbar-menu.component-DBQHdvGa.mjs +512 -0
- package/fesm2022/ojiepermana-angular-navigation-navigation-entry-grid.component-Cd-jh6tg.mjs +623 -0
- package/fesm2022/ojiepermana-angular-navigation-navigation-flyout-menu.component-BCGvhoYj.mjs +404 -0
- package/fesm2022/ojiepermana-angular-navigation-navigation-horizontal.component-Dk_03e-6.mjs +466 -0
- package/fesm2022/ojiepermana-angular-navigation-ojiepermana-angular-navigation-DNKU6viC.mjs +2642 -0
- package/fesm2022/ojiepermana-angular-navigation-service.mjs +725 -3
- package/fesm2022/ojiepermana-angular-navigation-types.mjs +65 -4
- package/fesm2022/ojiepermana-angular-navigation.mjs +4 -10
- package/fesm2022/ojiepermana-angular-sdk.mjs +204 -4
- package/fesm2022/ojiepermana-angular-theme-component-settings.mjs +1387 -3
- package/fesm2022/ojiepermana-angular-theme-layout-services.mjs +331 -3
- package/fesm2022/ojiepermana-angular-theme-layout-types.mjs +45 -4
- package/fesm2022/ojiepermana-angular-theme-layout-wrapper.mjs +1044 -3
- package/fesm2022/ojiepermana-angular-theme-layout.mjs +729 -3
- package/fesm2022/ojiepermana-angular-theme-page-core.mjs +381 -3
- package/fesm2022/ojiepermana-angular-theme-page-filter.mjs +267 -3
- package/fesm2022/ojiepermana-angular-theme-page-root.mjs +361 -3
- package/fesm2022/ojiepermana-angular-theme-page-side.mjs +198 -3
- package/fesm2022/ojiepermana-angular-theme-page-slots.mjs +110 -3
- package/fesm2022/ojiepermana-angular-theme-page.mjs +7 -2
- package/fesm2022/ojiepermana-angular-theme-shell-services.mjs +338 -3
- package/fesm2022/ojiepermana-angular-theme-shell-types.mjs +160 -4
- package/fesm2022/ojiepermana-angular-theme-shell.mjs +811 -3
- package/fesm2022/ojiepermana-angular-theme-styles.mjs +783 -3
- package/fesm2022/ojiepermana-angular-theme.mjs +4 -4
- package/fesm2022/ojiepermana-angular.mjs +6 -11
- package/navigation/README.md +374 -0
- package/package.json +81 -20
- package/sdk/README.md +212 -0
- package/sdk/schematics/collection.json +20 -0
- package/sdk/schematics/init/index.js +83 -0
- package/sdk/schematics/init/schema.json +19 -0
- package/sdk/schematics/ng-add/index.js +147 -0
- package/sdk/schematics/ng-add/schema.json +14 -0
- package/sdk/schematics/package.json +3 -0
- package/sdk/schematics/sdk/index.js +175 -0
- package/sdk/schematics/sdk/schema.json +19 -0
- package/sdk/sdk.config.example.json +24 -0
- package/sdk/src/config/loader.js +43 -0
- package/sdk/src/config/schema.js +59 -0
- package/sdk/src/emit/client.js +251 -0
- package/sdk/src/emit/metadata.js +310 -0
- package/sdk/src/emit/models.js +104 -0
- package/sdk/src/emit/navigation.js +56 -0
- package/sdk/src/emit/operations.js +118 -0
- package/sdk/src/emit/public-api.js +54 -0
- package/sdk/src/emit/services.js +110 -0
- package/sdk/src/engine.js +67 -0
- package/sdk/src/layout/per-domain.js +360 -0
- package/sdk/src/package.json +3 -0
- package/sdk/src/parser/bundle.js +25 -0
- package/sdk/src/parser/ir.js +429 -0
- package/sdk/src/parser/types.js +7 -0
- package/sdk/src/render/template.js +152 -0
- package/sdk/src/writer/index.js +286 -0
- package/theme/README.md +126 -0
- package/theme/component/settings/README.md +135 -0
- package/theme/layout/README.md +539 -0
- package/theme/page/README.md +453 -0
- package/theme/shell/README.md +340 -0
- package/theme/styles/README.md +178 -0
- package/theme/styles/css/base/components.css +553 -0
- package/theme/styles/css/base/index.css +14 -0
- package/theme/styles/css/base/package.css +9 -0
- package/theme/styles/css/base/prefers-dark.css +86 -0
- package/theme/styles/css/base/print.css +62 -0
- package/theme/styles/css/base/status.css +38 -0
- package/theme/styles/css/base/tailwind.css +165 -0
- package/theme/styles/css/base/theme.css +373 -0
- package/theme/styles/css/base/tokens.css +361 -0
- package/theme/styles/css/color/amber.css +72 -0
- package/theme/styles/css/color/blue.css +72 -0
- package/theme/styles/css/color/brand.css +38 -0
- package/theme/styles/css/color/cyan.css +72 -0
- package/theme/styles/css/color/emerald.css +72 -0
- package/theme/styles/css/color/fuchsia.css +72 -0
- package/theme/styles/css/color/green.css +72 -0
- package/theme/styles/css/color/index.css +19 -0
- package/theme/styles/css/color/indigo.css +72 -0
- package/theme/styles/css/color/lime.css +72 -0
- package/theme/styles/css/color/orange.css +72 -0
- package/theme/styles/css/color/pink.css +72 -0
- package/theme/styles/css/color/purple.css +72 -0
- package/theme/styles/css/color/red.css +72 -0
- package/theme/styles/css/color/rose.css +72 -0
- package/theme/styles/css/color/sky.css +72 -0
- package/theme/styles/css/color/teal.css +72 -0
- package/theme/styles/css/color/violet.css +72 -0
- package/theme/styles/css/color/yellow.css +72 -0
- package/theme/styles/css/index.css +18 -0
- package/theme/styles/css/neutral/gray.css +63 -0
- package/theme/styles/css/neutral/index.css +11 -0
- package/theme/styles/css/neutral/mauve.css +63 -0
- package/theme/styles/css/neutral/mist.css +63 -0
- package/theme/styles/css/neutral/neutral.css +63 -0
- package/theme/styles/css/neutral/olive.css +63 -0
- package/theme/styles/css/neutral/slate.css +63 -0
- package/theme/styles/css/neutral/stone.css +63 -0
- package/theme/styles/css/neutral/taupe.css +63 -0
- package/theme/styles/css/neutral/zinc.css +63 -0
- package/theme/styles/css/radius/index.css +30 -0
- package/theme/styles/css/space/index.css +20 -0
- package/types/ojiepermana-angular-chart-area.d.ts +76 -1
- package/types/ojiepermana-angular-chart-bar.d.ts +201 -1
- package/types/ojiepermana-angular-chart-core.d.ts +811 -1
- package/types/ojiepermana-angular-chart-line.d.ts +75 -1
- package/types/ojiepermana-angular-chart-pie.d.ts +131 -1
- package/types/ojiepermana-angular-chart-primitives.d.ts +291 -1
- package/types/ojiepermana-angular-chart-radar.d.ts +116 -1
- package/types/ojiepermana-angular-chart-radial.d.ts +116 -1
- package/types/ojiepermana-angular-chart-scatter.d.ts +125 -1
- package/types/ojiepermana-angular-chart.d.ts +2 -1
- package/types/ojiepermana-angular-component-accordion.d.ts +85 -1
- package/types/ojiepermana-angular-component-alert-dialog.d.ts +140 -1
- package/types/ojiepermana-angular-component-alert.d.ts +42 -1
- package/types/ojiepermana-angular-component-aspect-ratio.d.ts +12 -1
- package/types/ojiepermana-angular-component-avatar.d.ts +56 -1
- package/types/ojiepermana-angular-component-badge.d.ts +24 -1
- package/types/ojiepermana-angular-component-breadcrumb.d.ts +46 -1
- package/types/ojiepermana-angular-component-button-group.d.ts +26 -1
- package/types/ojiepermana-angular-component-button.d.ts +27 -1
- package/types/ojiepermana-angular-component-calendar.d.ts +111 -1
- package/types/ojiepermana-angular-component-card.d.ts +69 -1
- package/types/ojiepermana-angular-component-carousel.d.ts +86 -1
- package/types/ojiepermana-angular-component-checkbox.d.ts +42 -1
- package/types/ojiepermana-angular-component-collapsible.d.ts +42 -1
- package/types/ojiepermana-angular-component-combobox.d.ts +60 -1
- package/types/ojiepermana-angular-component-command.d.ts +130 -1
- package/types/ojiepermana-angular-component-composer.d.ts +90 -1
- package/types/ojiepermana-angular-component-context-menu.d.ts +54 -1
- package/types/ojiepermana-angular-component-date-picker.d.ts +109 -1
- package/types/ojiepermana-angular-component-dialog.d.ts +136 -1
- package/types/ojiepermana-angular-component-drawer.d.ts +1 -1
- package/types/ojiepermana-angular-component-dropdown-menu.d.ts +248 -1
- package/types/ojiepermana-angular-component-editor.d.ts +135 -1
- package/types/ojiepermana-angular-component-empty.d.ts +50 -1
- package/types/ojiepermana-angular-component-form.d.ts +159 -1
- package/types/ojiepermana-angular-component-hover-card.d.ts +75 -1
- package/types/ojiepermana-angular-component-icon.d.ts +89 -1
- package/types/ojiepermana-angular-component-input-group.d.ts +51 -1
- package/types/ojiepermana-angular-component-input-otp.d.ts +155 -1
- package/types/ojiepermana-angular-component-input.d.ts +21 -1
- package/types/ojiepermana-angular-component-item.d.ts +93 -1
- package/types/ojiepermana-angular-component-kanban.d.ts +70 -1
- package/types/ojiepermana-angular-component-kbd.d.ts +16 -1
- package/types/ojiepermana-angular-component-label.d.ts +11 -1
- package/types/ojiepermana-angular-component-menubar.d.ts +93 -1
- package/types/ojiepermana-angular-component-native-select.d.ts +26 -1
- package/types/ojiepermana-angular-component-navigation-menu.d.ts +104 -1
- package/types/ojiepermana-angular-component-pagination.d.ts +33 -1
- package/types/ojiepermana-angular-component-pillbox.d.ts +222 -1
- package/types/ojiepermana-angular-component-popover.d.ts +66 -1
- package/types/ojiepermana-angular-component-progress.d.ts +17 -1
- package/types/ojiepermana-angular-component-radio.d.ts +60 -1
- package/types/ojiepermana-angular-component-resizable.d.ts +117 -1
- package/types/ojiepermana-angular-component-scroll-area.d.ts +19 -1
- package/types/ojiepermana-angular-component-segmented-control.d.ts +58 -1
- package/types/ojiepermana-angular-component-select.d.ts +122 -1
- package/types/ojiepermana-angular-component-separator.d.ts +14 -1
- package/types/ojiepermana-angular-component-sheet.d.ts +130 -1
- package/types/ojiepermana-angular-component-skeleton.d.ts +10 -1
- package/types/ojiepermana-angular-component-slider.d.ts +83 -1
- package/types/ojiepermana-angular-component-spinner.d.ts +13 -1
- package/types/ojiepermana-angular-component-switch.d.ts +44 -1
- package/types/ojiepermana-angular-component-table.d.ts +57 -1
- package/types/ojiepermana-angular-component-tabs.d.ts +124 -1
- package/types/ojiepermana-angular-component-textarea.d.ts +17 -1
- package/types/ojiepermana-angular-component-timeline.d.ts +64 -1
- package/types/ojiepermana-angular-component-toast.d.ts +64 -1
- package/types/ojiepermana-angular-component-toggle-group.d.ts +90 -1
- package/types/ojiepermana-angular-component-toggle.d.ts +25 -1
- package/types/ojiepermana-angular-component-tooltip.d.ts +143 -1
- package/types/ojiepermana-angular-component-utils-core.d.ts +184 -1
- package/types/ojiepermana-angular-component-utils-overlay.d.ts +21 -1
- package/types/ojiepermana-angular-component-utils-scale.d.ts +19 -1
- package/types/ojiepermana-angular-component-utils.d.ts +2 -1
- package/types/ojiepermana-angular-component.d.ts +2 -1
- package/types/ojiepermana-angular-navigation-core.d.ts +59 -1
- package/types/ojiepermana-angular-navigation-icon.d.ts +12 -1
- package/types/ojiepermana-angular-navigation-service.d.ts +116 -1
- package/types/ojiepermana-angular-navigation-types.d.ts +144 -1
- package/types/ojiepermana-angular-navigation.d.ts +507 -1
- package/types/ojiepermana-angular-sdk.d.ts +89 -1
- package/types/ojiepermana-angular-theme-component-settings.d.ts +154 -1
- package/types/ojiepermana-angular-theme-layout-services.d.ts +147 -1
- package/types/ojiepermana-angular-theme-layout-types.d.ts +40 -1
- package/types/ojiepermana-angular-theme-layout-wrapper.d.ts +299 -1
- package/types/ojiepermana-angular-theme-layout.d.ts +129 -1
- package/types/ojiepermana-angular-theme-page-core.d.ts +157 -1
- package/types/ojiepermana-angular-theme-page-filter.d.ts +77 -1
- package/types/ojiepermana-angular-theme-page-root.d.ts +88 -1
- package/types/ojiepermana-angular-theme-page-side.d.ts +50 -1
- package/types/ojiepermana-angular-theme-page-slots.d.ts +40 -1
- package/types/ojiepermana-angular-theme-page.d.ts +5 -1
- package/types/ojiepermana-angular-theme-shell-services.d.ts +193 -1
- package/types/ojiepermana-angular-theme-shell-types.d.ts +105 -1
- package/types/ojiepermana-angular-theme-shell.d.ts +100 -1
- package/types/ojiepermana-angular-theme-styles.d.ts +319 -1
- package/types/ojiepermana-angular-theme.d.ts +2 -1
- package/types/ojiepermana-angular.d.ts +5 -5
|
@@ -1 +1,93 @@
|
|
|
1
|
-
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { TemplateRef } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
type MenubarAlign = 'start' | 'center' | 'end';
|
|
5
|
+
declare class MenubarComponent {
|
|
6
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
7
|
+
readonly loop: _angular_core.InputSignal<boolean>;
|
|
8
|
+
private readonly triggers;
|
|
9
|
+
private readonly host;
|
|
10
|
+
private readonly row;
|
|
11
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
12
|
+
setActiveTrigger(trigger: MenubarTriggerDirective): void;
|
|
13
|
+
tabIndexFor(trigger: MenubarTriggerDirective): number;
|
|
14
|
+
hasOpenTrigger(except?: MenubarTriggerDirective): boolean;
|
|
15
|
+
notifyOpen(trigger: MenubarTriggerDirective): void;
|
|
16
|
+
notifyClosed(trigger: MenubarTriggerDirective): void;
|
|
17
|
+
/**
|
|
18
|
+
* Move from an open menu to the neighbouring menubar item.
|
|
19
|
+
*
|
|
20
|
+
* A trigger calls this when a left or right arrow arrives while focus is
|
|
21
|
+
* inside its overlay, which the menubar itself cannot see: the overlay renders
|
|
22
|
+
* at the end of the document, so the keydown never bubbles up to here. The
|
|
23
|
+
* open menu closes, focus lands on the neighbour, and the neighbour's menu
|
|
24
|
+
* opens, which is the menubar keyboard pattern.
|
|
25
|
+
*/
|
|
26
|
+
moveToSiblingMenu(from: MenubarTriggerDirective, direction: 'previous' | 'next'): void;
|
|
27
|
+
protected onKeydown(event: KeyboardEvent): void;
|
|
28
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenubarComponent, never>;
|
|
29
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenubarComponent, "Menubar", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; "loop": { "alias": "loop"; "required": false; "isSignal": true; }; }, {}, ["triggers"], ["*"], true, never>;
|
|
30
|
+
}
|
|
31
|
+
declare class MenubarMenuComponent {
|
|
32
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenubarMenuComponent, never>;
|
|
33
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenubarMenuComponent, "MenubarMenu", never, {}, {}, never, ["*"], true, never>;
|
|
34
|
+
}
|
|
35
|
+
declare class MenubarContentDirective {
|
|
36
|
+
readonly template: TemplateRef<unknown>;
|
|
37
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenubarContentDirective, never>;
|
|
38
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MenubarContentDirective, "ng-template[MenubarContent]", ["MenubarContent"], {}, {}, never, never, true, never>;
|
|
39
|
+
}
|
|
40
|
+
declare class MenubarTriggerDirective {
|
|
41
|
+
readonly MenubarTrigger: _angular_core.InputSignal<MenubarContentDirective>;
|
|
42
|
+
readonly align: _angular_core.InputSignal<MenubarAlign>;
|
|
43
|
+
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
44
|
+
/**
|
|
45
|
+
* Close the menu when an item is chosen, which is the menu pattern and the
|
|
46
|
+
* default. Matches the input of the same name on `[MenuTrigger]`, because both
|
|
47
|
+
* render the same `MenuSurface` and `MenuItem` components.
|
|
48
|
+
*/
|
|
49
|
+
readonly closeOnSelect: _angular_core.InputSignal<boolean>;
|
|
50
|
+
/** Ties `aria-controls` here to `aria-labelledby` on the surface. */
|
|
51
|
+
readonly triggerId: string;
|
|
52
|
+
readonly surfaceId: string;
|
|
53
|
+
readonly openedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
54
|
+
readonly isOpen: _angular_core.WritableSignal<boolean>;
|
|
55
|
+
private readonly overlay;
|
|
56
|
+
private readonly vcr;
|
|
57
|
+
private readonly el;
|
|
58
|
+
private readonly menubar;
|
|
59
|
+
private readonly destroyRef;
|
|
60
|
+
private readonly injector;
|
|
61
|
+
private overlayRef;
|
|
62
|
+
constructor();
|
|
63
|
+
toggle(): void;
|
|
64
|
+
open(options?: {
|
|
65
|
+
focusFirstItem?: boolean;
|
|
66
|
+
}): void;
|
|
67
|
+
close(options?: {
|
|
68
|
+
restoreFocus?: boolean;
|
|
69
|
+
emitOpenedChange?: boolean;
|
|
70
|
+
}): void;
|
|
71
|
+
focus(): void;
|
|
72
|
+
containsTarget(target: EventTarget | null): boolean;
|
|
73
|
+
protected tabIndex(): number;
|
|
74
|
+
/**
|
|
75
|
+
* A disabled trigger normally carries the native `disabled` attribute, which
|
|
76
|
+
* takes it out of the tab order for free. The one exception is the trigger
|
|
77
|
+
* holding the menubar's only tab stop, which happens when every sibling is
|
|
78
|
+
* disabled too: there the native attribute would undo the tab stop the
|
|
79
|
+
* menubar just handed out, so the state travels as `aria-disabled` alone.
|
|
80
|
+
* Every action on this directive already refuses on `disabled()`, so nothing
|
|
81
|
+
* becomes operable by dropping the attribute.
|
|
82
|
+
*/
|
|
83
|
+
protected nativeDisabled(): boolean;
|
|
84
|
+
protected openFromKeyboard(event: KeyboardEvent, focusFirstItem: boolean): void;
|
|
85
|
+
protected syncActiveState(): void;
|
|
86
|
+
protected openFromHover(): void;
|
|
87
|
+
private focusFirstItem;
|
|
88
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenubarTriggerDirective, never>;
|
|
89
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MenubarTriggerDirective, "[MenubarTrigger]", ["MenubarTrigger"], { "MenubarTrigger": { "alias": "MenubarTrigger"; "required": true; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "closeOnSelect": { "alias": "closeOnSelect"; "required": false; "isSignal": true; }; }, { "openedChange": "openedChange"; }, never, never, true, never>;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
export { MenubarComponent, MenubarContentDirective, MenubarMenuComponent, MenubarTriggerDirective };
|
|
93
|
+
export type { MenubarAlign };
|
|
@@ -1 +1,26 @@
|
|
|
1
|
-
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
|
|
3
|
+
declare class NativeSelectComponent {
|
|
4
|
+
private readonly el;
|
|
5
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
6
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
7
|
+
focus(): void;
|
|
8
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NativeSelectComponent, never>;
|
|
9
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NativeSelectComponent, "select[NativeSelect]", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
declare class NativeSelectOptionDirective {
|
|
13
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
14
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
15
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NativeSelectOptionDirective, never>;
|
|
16
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NativeSelectOptionDirective, "option[NativeSelectOption]", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
declare class NativeSelectOptGroupDirective {
|
|
20
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
21
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
22
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NativeSelectOptGroupDirective, never>;
|
|
23
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NativeSelectOptGroupDirective, "optgroup[NativeSelectOptGroup]", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export { NativeSelectComponent, NativeSelectOptGroupDirective, NativeSelectOptionDirective };
|
|
@@ -1 +1,104 @@
|
|
|
1
|
-
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { ElementRef, TemplateRef } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
type NavigationMenuAlign = 'start' | 'center' | 'end';
|
|
5
|
+
type NavigationMenuLinkVariant = 'trigger' | 'content';
|
|
6
|
+
declare abstract class NavigationMenuRootItem {
|
|
7
|
+
protected readonly elementRef: ElementRef<HTMLElement>;
|
|
8
|
+
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
9
|
+
isWithin(container: HTMLElement): boolean;
|
|
10
|
+
focus(): void;
|
|
11
|
+
containsTarget(target: EventTarget | null): boolean;
|
|
12
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavigationMenuRootItem, never>;
|
|
13
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NavigationMenuRootItem, never, never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
14
|
+
}
|
|
15
|
+
declare class NavigationMenuComponent {
|
|
16
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
17
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
18
|
+
readonly loop: _angular_core.InputSignal<boolean>;
|
|
19
|
+
private readonly items;
|
|
20
|
+
private readonly host;
|
|
21
|
+
private readonly row;
|
|
22
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
23
|
+
setActiveItem(item: NavigationMenuRootItem): void;
|
|
24
|
+
tabIndexFor(item: NavigationMenuRootItem): number;
|
|
25
|
+
hasOpenTrigger(except?: NavigationMenuTriggerDirective): boolean;
|
|
26
|
+
notifyOpen(trigger: NavigationMenuTriggerDirective): void;
|
|
27
|
+
notifyClosed(trigger: NavigationMenuTriggerDirective): void;
|
|
28
|
+
protected onKeydown(event: KeyboardEvent): void;
|
|
29
|
+
private enter;
|
|
30
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavigationMenuComponent, never>;
|
|
31
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NavigationMenuComponent, "NavigationMenu", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "loop": { "alias": "loop"; "required": false; "isSignal": true; }; }, {}, ["items"], ["*"], true, never>;
|
|
32
|
+
}
|
|
33
|
+
declare class NavigationMenuListComponent {
|
|
34
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
35
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
36
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavigationMenuListComponent, never>;
|
|
37
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NavigationMenuListComponent, "NavigationMenuList", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
38
|
+
}
|
|
39
|
+
declare class NavigationMenuItemComponent {
|
|
40
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
41
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
42
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavigationMenuItemComponent, never>;
|
|
43
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NavigationMenuItemComponent, "NavigationMenuItem", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
44
|
+
}
|
|
45
|
+
declare class NavigationMenuContentDirective {
|
|
46
|
+
readonly template: TemplateRef<unknown>;
|
|
47
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavigationMenuContentDirective, never>;
|
|
48
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NavigationMenuContentDirective, "ng-template[NavigationMenuContent]", ["NavigationMenuContent"], {}, {}, never, never, true, never>;
|
|
49
|
+
}
|
|
50
|
+
declare class NavigationMenuTriggerDirective extends NavigationMenuRootItem {
|
|
51
|
+
readonly NavigationMenuTrigger: _angular_core.InputSignal<NavigationMenuContentDirective>;
|
|
52
|
+
readonly align: _angular_core.InputSignal<NavigationMenuAlign>;
|
|
53
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
54
|
+
/** Ties `aria-controls` here to the overlay this trigger discloses. */
|
|
55
|
+
readonly panelId: string;
|
|
56
|
+
readonly openedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
57
|
+
readonly isOpen: _angular_core.WritableSignal<boolean>;
|
|
58
|
+
private readonly overlay;
|
|
59
|
+
private readonly vcr;
|
|
60
|
+
private readonly navigationMenu;
|
|
61
|
+
private readonly destroyRef;
|
|
62
|
+
private overlayRef;
|
|
63
|
+
constructor();
|
|
64
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
65
|
+
toggle(): void;
|
|
66
|
+
open(options?: {
|
|
67
|
+
focusFirstItem?: boolean;
|
|
68
|
+
}): void;
|
|
69
|
+
close(options?: {
|
|
70
|
+
restoreFocus?: boolean;
|
|
71
|
+
emitOpenedChange?: boolean;
|
|
72
|
+
}): void;
|
|
73
|
+
protected tabIndex(): number;
|
|
74
|
+
/**
|
|
75
|
+
* A disabled trigger normally carries the native `disabled` attribute, which
|
|
76
|
+
* takes it out of the tab order for free. The one exception is the trigger
|
|
77
|
+
* holding the menu's only tab stop, which happens when every sibling is
|
|
78
|
+
* disabled too: there the native attribute would undo the tab stop, so the
|
|
79
|
+
* state travels as `aria-disabled` alone. Every action here already refuses
|
|
80
|
+
* on `disabled()`, so nothing becomes operable by dropping the attribute.
|
|
81
|
+
*/
|
|
82
|
+
protected nativeDisabled(): boolean;
|
|
83
|
+
protected openFromKeyboard(event: KeyboardEvent, focusFirstItem: boolean): void;
|
|
84
|
+
protected syncActiveState(): void;
|
|
85
|
+
protected openFromHover(): void;
|
|
86
|
+
private focusFirstItem;
|
|
87
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavigationMenuTriggerDirective, never>;
|
|
88
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NavigationMenuTriggerDirective, "[NavigationMenuTrigger]", ["NavigationMenuTrigger"], { "NavigationMenuTrigger": { "alias": "NavigationMenuTrigger"; "required": true; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "openedChange": "openedChange"; }, never, never, true, never>;
|
|
89
|
+
}
|
|
90
|
+
declare class NavigationMenuLinkDirective extends NavigationMenuRootItem {
|
|
91
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
92
|
+
readonly variant: _angular_core.InputSignal<NavigationMenuLinkVariant>;
|
|
93
|
+
private readonly navigationMenu;
|
|
94
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
95
|
+
protected tabIndex(): number;
|
|
96
|
+
focus(): void;
|
|
97
|
+
protected syncActiveState(): void;
|
|
98
|
+
protected preventDisabled(event: MouseEvent): void;
|
|
99
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavigationMenuLinkDirective, never>;
|
|
100
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NavigationMenuLinkDirective, "a[NavigationMenuLink], button[NavigationMenuLink]", ["NavigationMenuLink"], { "class": { "alias": "class"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export { NavigationMenuComponent, NavigationMenuContentDirective, NavigationMenuItemComponent, NavigationMenuLinkDirective, NavigationMenuListComponent, NavigationMenuRootItem, NavigationMenuTriggerDirective };
|
|
104
|
+
export type { NavigationMenuAlign, NavigationMenuLinkVariant };
|
|
@@ -1 +1,33 @@
|
|
|
1
|
-
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Simple pagination. Emits the desired page via `(pageChange)` and reflects
|
|
5
|
+
* the current page through the `page` model input while allowing lightweight
|
|
6
|
+
* label and visibility tweaks for localized and icon-only demos.
|
|
7
|
+
*/
|
|
8
|
+
declare class PaginationComponent {
|
|
9
|
+
readonly page: _angular_core.ModelSignal<number>;
|
|
10
|
+
readonly total: _angular_core.InputSignal<number>;
|
|
11
|
+
/** Number of sibling pages on each side of current. */
|
|
12
|
+
readonly siblingCount: _angular_core.InputSignal<number>;
|
|
13
|
+
readonly showPageNumbers: _angular_core.InputSignal<boolean>;
|
|
14
|
+
readonly previousText: _angular_core.InputSignal<string>;
|
|
15
|
+
readonly nextText: _angular_core.InputSignal<string>;
|
|
16
|
+
readonly previousAriaLabel: _angular_core.InputSignal<string>;
|
|
17
|
+
readonly nextAriaLabel: _angular_core.InputSignal<string>;
|
|
18
|
+
readonly formatPageLabel: _angular_core.InputSignal<(page: number) => string>;
|
|
19
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
20
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
21
|
+
protected readonly pages: _angular_core.Signal<{
|
|
22
|
+
key: string;
|
|
23
|
+
kind: "page" | "ellipsis";
|
|
24
|
+
value: number;
|
|
25
|
+
}[]>;
|
|
26
|
+
protected navClasses(hasText: boolean): string;
|
|
27
|
+
protected pageClasses(active: boolean): string;
|
|
28
|
+
protected go(target: number): void;
|
|
29
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PaginationComponent, never>;
|
|
30
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PaginationComponent, "Pagination, nav[Pagination]", never, { "page": { "alias": "page"; "required": false; "isSignal": true; }; "total": { "alias": "total"; "required": false; "isSignal": true; }; "siblingCount": { "alias": "siblingCount"; "required": false; "isSignal": true; }; "showPageNumbers": { "alias": "showPageNumbers"; "required": false; "isSignal": true; }; "previousText": { "alias": "previousText"; "required": false; "isSignal": true; }; "nextText": { "alias": "nextText"; "required": false; "isSignal": true; }; "previousAriaLabel": { "alias": "previousAriaLabel"; "required": false; "isSignal": true; }; "nextAriaLabel": { "alias": "nextAriaLabel"; "required": false; "isSignal": true; }; "formatPageLabel": { "alias": "formatPageLabel"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "page": "pageChange"; }, never, never, true, never>;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export { PaginationComponent };
|
|
@@ -1 +1,222 @@
|
|
|
1
|
-
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { TemplateRef, WritableSignal, Signal } from '@angular/core';
|
|
3
|
+
import { ControlValueAccessor } from '@angular/forms';
|
|
4
|
+
|
|
5
|
+
declare class PillboxSelectedDirective {
|
|
6
|
+
readonly template: TemplateRef<unknown>;
|
|
7
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PillboxSelectedDirective, never>;
|
|
8
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<PillboxSelectedDirective, "ng-template[PillboxSelected]", ["PillboxSelected"], {}, {}, never, never, true, never>;
|
|
9
|
+
}
|
|
10
|
+
declare class PillboxOptionComponent extends PillboxRovingOption {
|
|
11
|
+
private readonly context;
|
|
12
|
+
private readonly element;
|
|
13
|
+
private readonly selectedTemplate;
|
|
14
|
+
readonly value: _angular_core.InputSignal<unknown>;
|
|
15
|
+
readonly label: _angular_core.InputSignal<string>;
|
|
16
|
+
readonly selectedLabel: _angular_core.InputSignal<string>;
|
|
17
|
+
readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
18
|
+
readonly filterable: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
19
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
20
|
+
readonly selectedChange: _angular_core.OutputEmitterRef<unknown>;
|
|
21
|
+
protected readonly selected: _angular_core.Signal<boolean>;
|
|
22
|
+
protected readonly visible: _angular_core.Signal<boolean>;
|
|
23
|
+
protected readonly tabIndex: _angular_core.Signal<number>;
|
|
24
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
25
|
+
rovingVisible(): boolean;
|
|
26
|
+
nativeElement(): HTMLElement;
|
|
27
|
+
focus(): void;
|
|
28
|
+
textLabel(): string;
|
|
29
|
+
pillLabel(): string;
|
|
30
|
+
pillTemplate(): TemplateRef<unknown> | null;
|
|
31
|
+
protected handleClick(event: Event): void;
|
|
32
|
+
protected handleFocus(): void;
|
|
33
|
+
protected handleKeydown(event: KeyboardEvent): void;
|
|
34
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PillboxOptionComponent, never>;
|
|
35
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PillboxOptionComponent, "PillboxOption, button[PillboxOption]", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "selectedLabel": { "alias": "selectedLabel"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "filterable": { "alias": "filterable"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "selectedChange": "selectedChange"; }, ["selectedTemplate"], ["*"], true, never>;
|
|
36
|
+
}
|
|
37
|
+
declare class PillboxOptionCreateComponent extends PillboxRovingOption {
|
|
38
|
+
private readonly context;
|
|
39
|
+
private readonly element;
|
|
40
|
+
readonly minLength: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
41
|
+
readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
42
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
43
|
+
readonly selected: _angular_core.OutputEmitterRef<string>;
|
|
44
|
+
protected readonly visible: _angular_core.Signal<boolean>;
|
|
45
|
+
protected readonly tabIndex: _angular_core.Signal<number>;
|
|
46
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
47
|
+
rovingVisible(): boolean;
|
|
48
|
+
nativeElement(): HTMLElement;
|
|
49
|
+
focus(): void;
|
|
50
|
+
protected handleClick(event: Event): void;
|
|
51
|
+
protected handleFocus(): void;
|
|
52
|
+
protected handleKeydown(event: KeyboardEvent): void;
|
|
53
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PillboxOptionCreateComponent, never>;
|
|
54
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PillboxOptionCreateComponent, "PillboxOptionCreate, button[PillboxOptionCreate]", never, { "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "selected": "selected"; }, never, ["*"], true, never>;
|
|
55
|
+
}
|
|
56
|
+
declare class PillboxOptionEmptyComponent {
|
|
57
|
+
protected readonly context: PillboxContext;
|
|
58
|
+
readonly whenLoading: _angular_core.InputSignal<string>;
|
|
59
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
60
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
61
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PillboxOptionEmptyComponent, never>;
|
|
62
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PillboxOptionEmptyComponent, "PillboxOptionEmpty", never, { "whenLoading": { "alias": "whenLoading"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* What roving focus needs from one option, whichever kind of option it is.
|
|
67
|
+
*
|
|
68
|
+
* `Pillbox` renders two things with `role="option"` into the same listbox -- a
|
|
69
|
+
* value option and the "create" affordance -- and a listbox owes exactly one tab
|
|
70
|
+
* stop across all of them. Both kinds implement this, so the roving model can
|
|
71
|
+
* treat them as one ordered list without caring which is which.
|
|
72
|
+
*/
|
|
73
|
+
declare abstract class PillboxRovingOption {
|
|
74
|
+
abstract readonly disabled: Signal<boolean>;
|
|
75
|
+
/** Whether the option is currently rendered, i.e. not filtered out. */
|
|
76
|
+
abstract rovingVisible(): boolean;
|
|
77
|
+
abstract nativeElement(): HTMLElement;
|
|
78
|
+
abstract focus(): void;
|
|
79
|
+
}
|
|
80
|
+
declare abstract class PillboxContext {
|
|
81
|
+
abstract readonly query: WritableSignal<string>;
|
|
82
|
+
abstract readonly openState: Signal<boolean>;
|
|
83
|
+
abstract optionVisible(option: PillboxOptionComponent): boolean;
|
|
84
|
+
abstract optionSelected(option: PillboxOptionComponent): boolean;
|
|
85
|
+
abstract chooseOption(option: PillboxOptionComponent, event: Event): void;
|
|
86
|
+
abstract createVisible(option: PillboxOptionCreateComponent): boolean;
|
|
87
|
+
abstract chooseCreate(option: PillboxOptionCreateComponent, event: Event): void;
|
|
88
|
+
abstract emptyVisible(): boolean;
|
|
89
|
+
abstract emptyMessage(): string;
|
|
90
|
+
/** The roving `tabindex` for one option: `0` for the single tab stop, else `-1`. */
|
|
91
|
+
abstract optionTabIndex(option: PillboxRovingOption): number;
|
|
92
|
+
/** Move the tab stop onto an option that just took focus. */
|
|
93
|
+
abstract activateOption(option: PillboxRovingOption): void;
|
|
94
|
+
/** Arrows, Home, End and Escape while focus sits on an option. */
|
|
95
|
+
abstract handleOptionKeydown(option: PillboxRovingOption, event: KeyboardEvent): void;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
type PillboxSize = 'default' | 'sm';
|
|
99
|
+
type PillboxVariant = 'default' | 'combobox';
|
|
100
|
+
interface PillboxSelectedItem {
|
|
101
|
+
readonly value: unknown;
|
|
102
|
+
readonly label: string;
|
|
103
|
+
readonly template: TemplateRef<unknown> | null;
|
|
104
|
+
readonly track: unknown;
|
|
105
|
+
}
|
|
106
|
+
declare class PillboxComponent extends PillboxContext implements ControlValueAccessor {
|
|
107
|
+
private readonly element;
|
|
108
|
+
private readonly document;
|
|
109
|
+
private readonly destroyRef;
|
|
110
|
+
readonly id: _angular_core.InputSignal<string | null>;
|
|
111
|
+
readonly placeholder: _angular_core.InputSignal<string>;
|
|
112
|
+
readonly searchPlaceholder: _angular_core.InputSignal<string>;
|
|
113
|
+
readonly size: _angular_core.InputSignal<PillboxSize>;
|
|
114
|
+
readonly variant: _angular_core.InputSignal<PillboxVariant>;
|
|
115
|
+
readonly multiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
116
|
+
readonly searchable: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
117
|
+
readonly filter: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
118
|
+
readonly clearable: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
119
|
+
readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
120
|
+
readonly invalid: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
121
|
+
readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
122
|
+
/**
|
|
123
|
+
* How a bound value is matched against an option's value. The default is
|
|
124
|
+
* identity, which never matches objects re-fetched from a server: pass a key
|
|
125
|
+
* comparison there instead.
|
|
126
|
+
*/
|
|
127
|
+
readonly compareWith: _angular_core.InputSignal<(left: unknown, right: unknown) => boolean>;
|
|
128
|
+
readonly emptyText: _angular_core.InputSignal<string>;
|
|
129
|
+
readonly loadingText: _angular_core.InputSignal<string>;
|
|
130
|
+
readonly ariaLabel: _angular_core.InputSignal<string | null>;
|
|
131
|
+
readonly ariaDescribedby: _angular_core.InputSignal<string | null>;
|
|
132
|
+
readonly ariaLabelledby: _angular_core.InputSignal<string | null>;
|
|
133
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
134
|
+
readonly valueChange: _angular_core.OutputEmitterRef<unknown>;
|
|
135
|
+
readonly searchChange: _angular_core.OutputEmitterRef<string>;
|
|
136
|
+
readonly create: _angular_core.OutputEmitterRef<string>;
|
|
137
|
+
readonly openedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
138
|
+
readonly query: _angular_core.WritableSignal<string>;
|
|
139
|
+
readonly openState: _angular_core.WritableSignal<boolean>;
|
|
140
|
+
private readonly selectedValues;
|
|
141
|
+
private readonly activeOption;
|
|
142
|
+
private readonly disabledFromControl;
|
|
143
|
+
private readonly generatedId;
|
|
144
|
+
private readonly trigger;
|
|
145
|
+
private readonly inlineSearch;
|
|
146
|
+
private readonly panelSearch;
|
|
147
|
+
private readonly options;
|
|
148
|
+
private readonly createOptions;
|
|
149
|
+
private readonly emptyOptions;
|
|
150
|
+
private removeDocumentListener;
|
|
151
|
+
private onChange;
|
|
152
|
+
private onTouched;
|
|
153
|
+
protected readonly panelId: string;
|
|
154
|
+
protected readonly resolvedId: _angular_core.Signal<string>;
|
|
155
|
+
/**
|
|
156
|
+
* Whether the widget renders a text input. When it does, that input is the
|
|
157
|
+
* combobox -- ARIA puts the role on the field the user types into, and a
|
|
158
|
+
* combobox-roled wrapper around it would leave the field itself unannounced
|
|
159
|
+
* and add a second tab stop in front of it.
|
|
160
|
+
*/
|
|
161
|
+
protected readonly hasInlineSearch: _angular_core.Signal<boolean>;
|
|
162
|
+
protected readonly disabledState: _angular_core.Signal<boolean>;
|
|
163
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
164
|
+
protected readonly triggerClasses: _angular_core.Signal<string>;
|
|
165
|
+
protected readonly pillClasses: _angular_core.Signal<string>;
|
|
166
|
+
protected readonly panelClasses: _angular_core.Signal<string>;
|
|
167
|
+
protected readonly selectedItems: _angular_core.Signal<readonly PillboxSelectedItem[]>;
|
|
168
|
+
constructor();
|
|
169
|
+
/**
|
|
170
|
+
* Every option the user can reach right now, in the order they are painted.
|
|
171
|
+
*
|
|
172
|
+
* Both kinds of `role="option"` live in the same listbox, so they rove as one
|
|
173
|
+
* list. `contentChildren` only orders within a single type, hence the document
|
|
174
|
+
* comparison: it is the rendered order that a roving model has to follow.
|
|
175
|
+
*/
|
|
176
|
+
private readonly rovingOptions;
|
|
177
|
+
/**
|
|
178
|
+
* A listbox carries exactly one tab stop, not one per option. The option that
|
|
179
|
+
* last held focus keeps it, falling back to the first reachable option -- so
|
|
180
|
+
* Tab enters the list once, and the arrows do the rest.
|
|
181
|
+
*/
|
|
182
|
+
optionTabIndex(option: PillboxRovingOption): number;
|
|
183
|
+
activateOption(option: PillboxRovingOption): void;
|
|
184
|
+
handleOptionKeydown(option: PillboxRovingOption, event: KeyboardEvent): void;
|
|
185
|
+
/** Where one navigation key lands, or `null` when the key is not ours. */
|
|
186
|
+
private rovingTarget;
|
|
187
|
+
optionVisible(option: PillboxOptionComponent): boolean;
|
|
188
|
+
optionSelected(option: PillboxOptionComponent): boolean;
|
|
189
|
+
chooseOption(option: PillboxOptionComponent, event: Event): void;
|
|
190
|
+
createVisible(option: PillboxOptionCreateComponent): boolean;
|
|
191
|
+
chooseCreate(option: PillboxOptionCreateComponent, event: Event): void;
|
|
192
|
+
emptyVisible(): boolean;
|
|
193
|
+
emptyMessage(): string;
|
|
194
|
+
protected handleTriggerClick(): void;
|
|
195
|
+
protected handleTriggerKeydown(event: KeyboardEvent): void;
|
|
196
|
+
protected handleSearchInput(event: Event): void;
|
|
197
|
+
protected handleInlineBackspace(event: KeyboardEvent): void;
|
|
198
|
+
protected clearSearch(event: Event): void;
|
|
199
|
+
protected clear(event: Event): void;
|
|
200
|
+
protected removeSelected(value: unknown, event: Event): void;
|
|
201
|
+
open(): void;
|
|
202
|
+
close(): void;
|
|
203
|
+
focus(): void;
|
|
204
|
+
writeValue(value: unknown): void;
|
|
205
|
+
registerOnChange(fn: (value: unknown) => void): void;
|
|
206
|
+
registerOnTouched(fn: () => void): void;
|
|
207
|
+
setDisabledState(disabled: boolean): void;
|
|
208
|
+
private emitValue;
|
|
209
|
+
private hasValue;
|
|
210
|
+
private findOption;
|
|
211
|
+
private hasVisibleOptions;
|
|
212
|
+
private hasVisibleCreateOption;
|
|
213
|
+
private sameValue;
|
|
214
|
+
private focusSearchInput;
|
|
215
|
+
private bindOutsideListener;
|
|
216
|
+
private removeOutsideListener;
|
|
217
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PillboxComponent, never>;
|
|
218
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PillboxComponent, "Pillbox", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "compareWith": { "alias": "compareWith"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "loadingText": { "alias": "loadingText"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; "ariaDescribedby": { "alias": "aria-describedby"; "required": false; "isSignal": true; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "searchChange": "searchChange"; "create": "create"; "openedChange": "openedChange"; }, ["options", "createOptions", "emptyOptions"], ["*"], true, never>;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
export { PillboxComponent, PillboxOptionComponent, PillboxOptionCreateComponent, PillboxOptionEmptyComponent, PillboxSelectedDirective };
|
|
222
|
+
export type { PillboxSize, PillboxVariant };
|
|
@@ -1 +1,66 @@
|
|
|
1
|
-
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { TemplateRef, InjectionToken, Signal } from '@angular/core';
|
|
3
|
+
import * as i1 from '@ojiepermana/angular/component/utils/scale';
|
|
4
|
+
import { ComponentScaleDirective } from '@ojiepermana/angular/component/utils/scale';
|
|
5
|
+
import { OverlaySide, OverlayAlign } from '@ojiepermana/angular/component/utils/overlay';
|
|
6
|
+
|
|
7
|
+
declare class PopoverContentDirective {
|
|
8
|
+
protected readonly componentScale: ComponentScaleDirective;
|
|
9
|
+
readonly radius: _angular_core.InputSignal<"inherit" | "none" | "xs" | "sm" | "md" | "xl" | "full">;
|
|
10
|
+
readonly density: _angular_core.InputSignal<"inherit" | "compact" | "normal" | "relaxed" | "spacious">;
|
|
11
|
+
readonly template: TemplateRef<unknown>;
|
|
12
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PopoverContentDirective, never>;
|
|
13
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<PopoverContentDirective, "ng-template[PopoverContent]", ["PopoverContent"], {}, {}, never, never, true, [{ directive: typeof i1.ComponentScaleDirective; inputs: { "radius": "radius"; "density": "density"; }; outputs: {}; }]>;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
type PopoverSide = OverlaySide;
|
|
17
|
+
type PopoverAlign = OverlayAlign;
|
|
18
|
+
interface PopoverTriggerDefaults {
|
|
19
|
+
readonly side?: Signal<PopoverSide>;
|
|
20
|
+
readonly align?: Signal<PopoverAlign>;
|
|
21
|
+
readonly sideOffset?: Signal<number>;
|
|
22
|
+
}
|
|
23
|
+
declare const POPOVER_TRIGGER_DEFAULTS: InjectionToken<PopoverTriggerDefaults>;
|
|
24
|
+
declare class PopoverTriggerDirective {
|
|
25
|
+
private readonly overlay;
|
|
26
|
+
private readonly vcr;
|
|
27
|
+
private readonly el;
|
|
28
|
+
private readonly destroyRef;
|
|
29
|
+
private readonly defaults;
|
|
30
|
+
private readonly idGenerator;
|
|
31
|
+
readonly PopoverTrigger: _angular_core.InputSignal<PopoverContentDirective>;
|
|
32
|
+
readonly side: _angular_core.InputSignal<OverlaySide | undefined>;
|
|
33
|
+
readonly align: _angular_core.InputSignal<OverlayAlign | undefined>;
|
|
34
|
+
readonly sideOffset: _angular_core.InputSignal<number | undefined>;
|
|
35
|
+
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
36
|
+
readonly openedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
37
|
+
private overlayRef;
|
|
38
|
+
readonly isOpen: _angular_core.WritableSignal<boolean>;
|
|
39
|
+
constructor();
|
|
40
|
+
toggle(): void;
|
|
41
|
+
onKeyboardToggle(event: Event): void;
|
|
42
|
+
open(): void;
|
|
43
|
+
close(options?: {
|
|
44
|
+
restoreFocus?: boolean;
|
|
45
|
+
emitOpenedChange?: boolean;
|
|
46
|
+
}): void;
|
|
47
|
+
/**
|
|
48
|
+
* The pane opens with focus, because the trigger is the only way into it: a
|
|
49
|
+
* keyboard user who is left standing on the trigger can never reach the content
|
|
50
|
+
* at all (WCAG 2.4.3). A pane with nothing tabbable takes focus itself, so the
|
|
51
|
+
* content is at least announced and Escape still reaches the overlay.
|
|
52
|
+
*/
|
|
53
|
+
private focusPane;
|
|
54
|
+
/**
|
|
55
|
+
* The trigger advertises `aria-haspopup="dialog"`, so the opened pane must be
|
|
56
|
+
* a dialog: non-modal, labelled by its trigger so screen readers announce
|
|
57
|
+
* which control the content belongs to.
|
|
58
|
+
*/
|
|
59
|
+
private applyDialogSemantics;
|
|
60
|
+
private usesNativeKeyboardActivation;
|
|
61
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PopoverTriggerDirective, never>;
|
|
62
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<PopoverTriggerDirective, "[PopoverTrigger]", ["PopoverTrigger"], { "PopoverTrigger": { "alias": "PopoverTrigger"; "required": true; "isSignal": true; }; "side": { "alias": "side"; "required": false; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "sideOffset": { "alias": "sideOffset"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "openedChange": "openedChange"; }, never, never, true, never>;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export { POPOVER_TRIGGER_DEFAULTS, PopoverContentDirective, PopoverTriggerDirective };
|
|
66
|
+
export type { PopoverAlign, PopoverSide, PopoverTriggerDefaults };
|
|
@@ -1 +1,17 @@
|
|
|
1
|
-
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
|
|
3
|
+
declare class ProgressComponent {
|
|
4
|
+
readonly value: _angular_core.InputSignal<number | null>;
|
|
5
|
+
readonly max: _angular_core.InputSignal<number>;
|
|
6
|
+
readonly indeterminate: _angular_core.InputSignal<boolean>;
|
|
7
|
+
readonly ariaLabel: _angular_core.InputSignal<string | null>;
|
|
8
|
+
readonly ariaLabelledby: _angular_core.InputSignal<string | null>;
|
|
9
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
10
|
+
protected readonly clamped: _angular_core.Signal<number>;
|
|
11
|
+
protected readonly indicatorTransform: _angular_core.Signal<string>;
|
|
12
|
+
protected readonly classes: _angular_core.Signal<string>;
|
|
13
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProgressComponent, never>;
|
|
14
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProgressComponent, "ProgressBar", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "indeterminate": { "alias": "indeterminate"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export { ProgressComponent };
|