@ojiepermana/angular 21.3.0 → 21.3.4
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 +76 -12
- package/component/accordion/package.json +4 -0
- package/component/alert/package.json +4 -0
- package/component/alert-dialog/package.json +4 -0
- package/component/aspect-ratio/package.json +4 -0
- package/component/avatar/package.json +4 -0
- package/component/badge/package.json +4 -0
- package/component/breadcrumb/package.json +4 -0
- package/component/button/package.json +4 -0
- package/component/button-group/package.json +4 -0
- package/component/calendar/package.json +4 -0
- package/component/card/package.json +4 -0
- package/component/carousel/package.json +4 -0
- package/component/chart/area/package.json +4 -0
- package/component/chart/bar/package.json +4 -0
- package/component/chart/line/package.json +4 -0
- package/component/chart/package.json +4 -0
- package/component/chart/pie/package.json +4 -0
- package/component/chart/radar/package.json +4 -0
- package/component/chart/radial/package.json +4 -0
- package/component/chart/scatter/package.json +4 -0
- package/component/checkbox/package.json +4 -0
- package/component/collapsible/package.json +4 -0
- package/component/combobox/package.json +4 -0
- package/component/command/package.json +4 -0
- package/component/context-menu/package.json +4 -0
- package/component/date-picker/package.json +4 -0
- package/component/dialog/package.json +4 -0
- package/component/drawer/package.json +4 -0
- package/component/dropdown-menu/package.json +4 -0
- package/component/form/package.json +4 -0
- package/component/input/package.json +4 -0
- package/component/input-group/package.json +4 -0
- package/component/item/package.json +4 -0
- package/component/label/package.json +4 -0
- package/component/pagination/package.json +4 -0
- package/component/popover/package.json +4 -0
- package/component/progress/package.json +4 -0
- package/component/radio/package.json +4 -0
- package/component/scroll-area/package.json +4 -0
- package/component/select/package.json +4 -0
- package/component/separator/package.json +4 -0
- package/component/sheet/package.json +4 -0
- package/component/skeleton/package.json +4 -0
- package/component/slider/package.json +4 -0
- package/component/switch/package.json +4 -0
- package/component/table/package.json +4 -0
- package/component/tabs/package.json +4 -0
- package/component/textarea/package.json +4 -0
- package/component/toast/package.json +4 -0
- package/component/tooltip/package.json +4 -0
- package/component/utils/package.json +4 -0
- package/fesm2022/{ojiepermana-angular-ui-component-accordion.mjs → ojiepermana-angular-component-accordion.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-accordion.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-alert-dialog.mjs → ojiepermana-angular-component-alert-dialog.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-alert-dialog.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-alert.mjs → ojiepermana-angular-component-alert.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-alert.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-aspect-ratio.mjs → ojiepermana-angular-component-aspect-ratio.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-aspect-ratio.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-avatar.mjs → ojiepermana-angular-component-avatar.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-avatar.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-badge.mjs → ojiepermana-angular-component-badge.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-badge.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-breadcrumb.mjs → ojiepermana-angular-component-breadcrumb.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-breadcrumb.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-button-group.mjs → ojiepermana-angular-component-button-group.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-button-group.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-button.mjs → ojiepermana-angular-component-button.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-button.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-calendar.mjs → ojiepermana-angular-component-calendar.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-calendar.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-card.mjs → ojiepermana-angular-component-card.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-card.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-carousel.mjs → ojiepermana-angular-component-carousel.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-carousel.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-chart-area.mjs → ojiepermana-angular-component-chart-area.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-chart-area.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-chart-bar.mjs → ojiepermana-angular-component-chart-bar.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-chart-bar.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-chart-line.mjs → ojiepermana-angular-component-chart-line.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-chart-line.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-chart-pie.mjs → ojiepermana-angular-component-chart-pie.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-chart-pie.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-chart-radar.mjs → ojiepermana-angular-component-chart-radar.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-chart-radar.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-chart-radial.mjs → ojiepermana-angular-component-chart-radial.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-chart-radial.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-chart-scatter.mjs → ojiepermana-angular-component-chart-scatter.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-chart-scatter.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-chart.mjs → ojiepermana-angular-component-chart.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-chart.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-checkbox.mjs → ojiepermana-angular-component-checkbox.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-checkbox.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-collapsible.mjs → ojiepermana-angular-component-collapsible.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-collapsible.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-combobox.mjs → ojiepermana-angular-component-combobox.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-combobox.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-command.mjs → ojiepermana-angular-component-command.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-command.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-context-menu.mjs → ojiepermana-angular-component-context-menu.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-context-menu.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-date-picker.mjs → ojiepermana-angular-component-date-picker.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-date-picker.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-dialog.mjs → ojiepermana-angular-component-dialog.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-dialog.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-drawer.mjs → ojiepermana-angular-component-drawer.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-drawer.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-dropdown-menu.mjs → ojiepermana-angular-component-dropdown-menu.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-dropdown-menu.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-form.mjs → ojiepermana-angular-component-form.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-form.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-input-group.mjs → ojiepermana-angular-component-input-group.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-input-group.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-input.mjs → ojiepermana-angular-component-input.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-input.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-item.mjs → ojiepermana-angular-component-item.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-item.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-label.mjs → ojiepermana-angular-component-label.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-label.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-pagination.mjs → ojiepermana-angular-component-pagination.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-pagination.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-popover.mjs → ojiepermana-angular-component-popover.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-popover.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-progress.mjs → ojiepermana-angular-component-progress.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-progress.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-radio.mjs → ojiepermana-angular-component-radio.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-radio.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-scroll-area.mjs → ojiepermana-angular-component-scroll-area.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-scroll-area.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-select.mjs → ojiepermana-angular-component-select.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-select.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-separator.mjs → ojiepermana-angular-component-separator.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-separator.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-sheet.mjs → ojiepermana-angular-component-sheet.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-sheet.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-skeleton.mjs → ojiepermana-angular-component-skeleton.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-skeleton.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-slider.mjs → ojiepermana-angular-component-slider.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-slider.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-switch.mjs → ojiepermana-angular-component-switch.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-switch.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-table.mjs → ojiepermana-angular-component-table.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-table.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-tabs.mjs → ojiepermana-angular-component-tabs.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-tabs.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-textarea.mjs → ojiepermana-angular-component-textarea.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-textarea.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-toast.mjs → ojiepermana-angular-component-toast.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-toast.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-tooltip.mjs → ojiepermana-angular-component-tooltip.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-tooltip.mjs.map +1 -0
- package/fesm2022/{ojiepermana-angular-ui-component-utils.mjs → ojiepermana-angular-component-utils.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-component-utils.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-generator-api.mjs +2 -1
- package/fesm2022/ojiepermana-angular-generator-api.mjs.map +1 -1
- package/fesm2022/{ojiepermana-angular-layout-theme.mjs → ojiepermana-angular-layout-component.mjs} +1 -1
- package/fesm2022/ojiepermana-angular-layout-component.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-layout-empty.mjs +49 -0
- package/fesm2022/ojiepermana-angular-layout-empty.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-layout-horizontal.mjs +119 -0
- package/fesm2022/ojiepermana-angular-layout-horizontal.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-layout-provider.mjs +21 -0
- package/fesm2022/ojiepermana-angular-layout-provider.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-layout-services.mjs +114 -0
- package/fesm2022/ojiepermana-angular-layout-services.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-layout-shell.mjs +48 -0
- package/fesm2022/ojiepermana-angular-layout-shell.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-layout-token-directive.mjs +27 -0
- package/fesm2022/ojiepermana-angular-layout-token-directive.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-layout-token.mjs +33 -0
- package/fesm2022/ojiepermana-angular-layout-token.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-layout-vertical.mjs +113 -0
- package/fesm2022/ojiepermana-angular-layout-vertical.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-layout.mjs +140 -137
- package/fesm2022/ojiepermana-angular-layout.mjs.map +1 -1
- package/fesm2022/ojiepermana-angular-navigation-demo-data.mjs +334 -0
- package/fesm2022/ojiepermana-angular-navigation-demo-data.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-navigation-icon.mjs.map +1 -1
- package/fesm2022/ojiepermana-angular-navigation-item.mjs +548 -0
- package/fesm2022/ojiepermana-angular-navigation-item.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-navigation-service.mjs +204 -0
- package/fesm2022/ojiepermana-angular-navigation-service.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-navigation-sidebar.mjs +373 -0
- package/fesm2022/ojiepermana-angular-navigation-sidebar.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-navigation-topbar.mjs +433 -0
- package/fesm2022/ojiepermana-angular-navigation-topbar.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-navigation-types.mjs +4 -0
- package/fesm2022/ojiepermana-angular-navigation-types.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-theme-provider.mjs +35 -0
- package/fesm2022/ojiepermana-angular-theme-provider.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-theme-services.mjs +286 -0
- package/fesm2022/ojiepermana-angular-theme-services.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-theme-token.mjs +56 -0
- package/fesm2022/ojiepermana-angular-theme-token.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-theme.mjs +31 -56
- package/fesm2022/ojiepermana-angular-theme.mjs.map +1 -1
- package/fesm2022/ojiepermana-angular.mjs +3 -4
- package/fesm2022/ojiepermana-angular.mjs.map +1 -1
- package/generator/api/README.md +25 -19
- package/generator/api/bin/schematics/init/index.js +4 -2
- package/generator/api/bin/src/config/schema.js +2 -1
- package/generator/api/bin/src/emit/navigation.js +1 -1
- package/generator/api/bin/src/layout/per-domain.js +7 -3
- package/generator/api/bin/src/writer/index.js +45 -3
- package/generator/api/sdk.config.example.json +4 -2
- package/layout/component/package.json +4 -0
- package/layout/empty/package.json +4 -0
- package/layout/horizontal/package.json +4 -0
- package/layout/provider/package.json +4 -0
- package/layout/services/package.json +4 -0
- package/layout/shell/package.json +4 -0
- package/layout/token/directive/package.json +4 -0
- package/layout/token/package.json +4 -0
- package/layout/vertical/package.json +4 -0
- package/navigation/demo-data/package.json +4 -0
- package/navigation/icon/package.json +4 -0
- package/navigation/item/package.json +4 -0
- package/navigation/service/package.json +4 -0
- package/navigation/sidebar/package.json +4 -0
- package/navigation/topbar/package.json +4 -0
- package/navigation/types/package.json +4 -0
- package/package.json +196 -128
- package/theme/README.md +67 -0
- package/theme/provider/package.json +4 -0
- package/theme/services/package.json +4 -0
- package/theme/styles/index.css +12 -7
- package/theme/token/package.json +4 -0
- package/types/{ojiepermana-angular-ui-component-chart.d.ts → ojiepermana-angular-component-chart.d.ts} +15 -15
- package/types/ojiepermana-angular-generator-api.d.ts +2 -1
- package/types/ojiepermana-angular-layout-empty.d.ts +22 -0
- package/types/ojiepermana-angular-layout-horizontal.d.ts +36 -0
- package/types/ojiepermana-angular-layout-provider.d.ts +6 -0
- package/types/ojiepermana-angular-layout-services.d.ts +25 -0
- package/types/ojiepermana-angular-layout-shell.d.ts +8 -0
- package/types/ojiepermana-angular-layout-token-directive.d.ts +13 -0
- package/types/ojiepermana-angular-layout-token.d.ts +36 -0
- package/types/ojiepermana-angular-layout-vertical.d.ts +38 -0
- package/types/ojiepermana-angular-layout.d.ts +26 -25
- package/types/ojiepermana-angular-navigation-demo-data.d.ts +5 -0
- package/types/ojiepermana-angular-navigation-item.d.ts +54 -0
- package/types/ojiepermana-angular-navigation-service.d.ts +77 -0
- package/types/ojiepermana-angular-navigation-sidebar.d.ts +75 -0
- package/types/ojiepermana-angular-navigation-topbar.d.ts +54 -0
- package/types/ojiepermana-angular-navigation-types.d.ts +129 -0
- package/types/ojiepermana-angular-theme-provider.d.ts +11 -0
- package/types/ojiepermana-angular-theme-services.d.ts +55 -0
- package/types/ojiepermana-angular-theme-token.d.ts +57 -0
- package/types/ojiepermana-angular-theme.d.ts +11 -66
- package/fesm2022/ojiepermana-angular-layout-theme.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-navigation.mjs +0 -2317
- package/fesm2022/ojiepermana-angular-navigation.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-accordion.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-alert-dialog.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-alert.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-aspect-ratio.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-avatar.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-badge.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-breadcrumb.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-button-group.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-button.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-calendar.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-card.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-carousel.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-chart-area.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-chart-bar.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-chart-line.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-chart-pie.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-chart-radar.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-chart-radial.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-chart-scatter.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-chart.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-checkbox.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-collapsible.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-combobox.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-command.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-context-menu.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-date-picker.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-dialog.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-drawer.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-dropdown-menu.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-form.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-input-group.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-input.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-item.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-label.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-pagination.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-popover.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-progress.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-radio.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-scroll-area.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-select.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-separator.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-sheet.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-skeleton.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-slider.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-switch.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-table.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-tabs.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-textarea.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-toast.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-tooltip.mjs.map +0 -1
- package/fesm2022/ojiepermana-angular-ui-component-utils.mjs.map +0 -1
- package/layout/theme/package.json +0 -4
- package/navigation/package.json +0 -4
- package/navigation-icon/package.json +0 -4
- package/types/ojiepermana-angular-navigation.d.ts +0 -375
- package/ui/component/accordion/package.json +0 -4
- package/ui/component/alert/package.json +0 -4
- package/ui/component/alert-dialog/package.json +0 -4
- package/ui/component/aspect-ratio/package.json +0 -4
- package/ui/component/avatar/package.json +0 -4
- package/ui/component/badge/package.json +0 -4
- package/ui/component/breadcrumb/package.json +0 -4
- package/ui/component/button/package.json +0 -4
- package/ui/component/button-group/package.json +0 -4
- package/ui/component/calendar/package.json +0 -4
- package/ui/component/card/package.json +0 -4
- package/ui/component/carousel/package.json +0 -4
- package/ui/component/chart/area/package.json +0 -4
- package/ui/component/chart/bar/package.json +0 -4
- package/ui/component/chart/line/package.json +0 -4
- package/ui/component/chart/package.json +0 -4
- package/ui/component/chart/pie/package.json +0 -4
- package/ui/component/chart/radar/package.json +0 -4
- package/ui/component/chart/radial/package.json +0 -4
- package/ui/component/chart/scatter/package.json +0 -4
- package/ui/component/checkbox/package.json +0 -4
- package/ui/component/collapsible/package.json +0 -4
- package/ui/component/combobox/package.json +0 -4
- package/ui/component/command/package.json +0 -4
- package/ui/component/context-menu/package.json +0 -4
- package/ui/component/date-picker/package.json +0 -4
- package/ui/component/dialog/package.json +0 -4
- package/ui/component/drawer/package.json +0 -4
- package/ui/component/dropdown-menu/package.json +0 -4
- package/ui/component/form/package.json +0 -4
- package/ui/component/input/package.json +0 -4
- package/ui/component/input-group/package.json +0 -4
- package/ui/component/item/package.json +0 -4
- package/ui/component/label/package.json +0 -4
- package/ui/component/pagination/package.json +0 -4
- package/ui/component/popover/package.json +0 -4
- package/ui/component/progress/package.json +0 -4
- package/ui/component/radio/package.json +0 -4
- package/ui/component/scroll-area/package.json +0 -4
- package/ui/component/select/package.json +0 -4
- package/ui/component/separator/package.json +0 -4
- package/ui/component/sheet/package.json +0 -4
- package/ui/component/skeleton/package.json +0 -4
- package/ui/component/slider/package.json +0 -4
- package/ui/component/switch/package.json +0 -4
- package/ui/component/table/package.json +0 -4
- package/ui/component/tabs/package.json +0 -4
- package/ui/component/textarea/package.json +0 -4
- package/ui/component/toast/package.json +0 -4
- package/ui/component/tooltip/package.json +0 -4
- package/ui/component/utils/package.json +0 -4
- /package/{ui/component → component}/chart/README.md +0 -0
- /package/theme/styles/{themes/library/_components.css → foundation/components.css} +0 -0
- /package/theme/styles/{themes/library/_layers.css → foundation/layers.css} +0 -0
- /package/theme/styles/{themes/library/_tokens.css → foundation/tokens.css} +0 -0
- /package/theme/styles/{themes/library/_material-overrides.css → integrations/material.css} +0 -0
- /package/theme/styles/{themes → integrations}/tailwind.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/amber.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/base.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/blue.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/cyan.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/emerald.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/fuchsia.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/green.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/index.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/indigo.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/lime.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/orange.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/pink.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/purple.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/red.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/rose.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/sky.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/teal.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/violet.css +0 -0
- /package/theme/styles/{themes/library → variants}/color/yellow.css +0 -0
- /package/theme/styles/{themes → variants}/mode/dark.css +0 -0
- /package/theme/styles/{themes → variants}/mode/index.css +0 -0
- /package/theme/styles/{themes → variants}/mode/light.css +0 -0
- /package/theme/styles/{themes/library → variants}/style/brutal.css +0 -0
- /package/theme/styles/{themes/library → variants}/style/default.css +0 -0
- /package/theme/styles/{themes/library → variants}/style/index.css +0 -0
- /package/theme/styles/{themes/library → variants}/style/sharp.css +0 -0
- /package/theme/styles/{themes/library → variants}/style/soft.css +0 -0
- /package/types/{ojiepermana-angular-ui-component-accordion.d.ts → ojiepermana-angular-component-accordion.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-alert-dialog.d.ts → ojiepermana-angular-component-alert-dialog.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-alert.d.ts → ojiepermana-angular-component-alert.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-aspect-ratio.d.ts → ojiepermana-angular-component-aspect-ratio.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-avatar.d.ts → ojiepermana-angular-component-avatar.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-badge.d.ts → ojiepermana-angular-component-badge.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-breadcrumb.d.ts → ojiepermana-angular-component-breadcrumb.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-button-group.d.ts → ojiepermana-angular-component-button-group.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-button.d.ts → ojiepermana-angular-component-button.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-calendar.d.ts → ojiepermana-angular-component-calendar.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-card.d.ts → ojiepermana-angular-component-card.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-carousel.d.ts → ojiepermana-angular-component-carousel.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-chart-area.d.ts → ojiepermana-angular-component-chart-area.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-chart-bar.d.ts → ojiepermana-angular-component-chart-bar.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-chart-line.d.ts → ojiepermana-angular-component-chart-line.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-chart-pie.d.ts → ojiepermana-angular-component-chart-pie.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-chart-radar.d.ts → ojiepermana-angular-component-chart-radar.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-chart-radial.d.ts → ojiepermana-angular-component-chart-radial.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-chart-scatter.d.ts → ojiepermana-angular-component-chart-scatter.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-checkbox.d.ts → ojiepermana-angular-component-checkbox.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-collapsible.d.ts → ojiepermana-angular-component-collapsible.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-combobox.d.ts → ojiepermana-angular-component-combobox.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-command.d.ts → ojiepermana-angular-component-command.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-context-menu.d.ts → ojiepermana-angular-component-context-menu.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-date-picker.d.ts → ojiepermana-angular-component-date-picker.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-dialog.d.ts → ojiepermana-angular-component-dialog.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-drawer.d.ts → ojiepermana-angular-component-drawer.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-dropdown-menu.d.ts → ojiepermana-angular-component-dropdown-menu.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-form.d.ts → ojiepermana-angular-component-form.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-input-group.d.ts → ojiepermana-angular-component-input-group.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-input.d.ts → ojiepermana-angular-component-input.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-item.d.ts → ojiepermana-angular-component-item.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-label.d.ts → ojiepermana-angular-component-label.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-pagination.d.ts → ojiepermana-angular-component-pagination.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-popover.d.ts → ojiepermana-angular-component-popover.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-progress.d.ts → ojiepermana-angular-component-progress.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-radio.d.ts → ojiepermana-angular-component-radio.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-scroll-area.d.ts → ojiepermana-angular-component-scroll-area.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-select.d.ts → ojiepermana-angular-component-select.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-separator.d.ts → ojiepermana-angular-component-separator.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-sheet.d.ts → ojiepermana-angular-component-sheet.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-skeleton.d.ts → ojiepermana-angular-component-skeleton.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-slider.d.ts → ojiepermana-angular-component-slider.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-switch.d.ts → ojiepermana-angular-component-switch.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-table.d.ts → ojiepermana-angular-component-table.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-tabs.d.ts → ojiepermana-angular-component-tabs.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-textarea.d.ts → ojiepermana-angular-component-textarea.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-toast.d.ts → ojiepermana-angular-component-toast.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-tooltip.d.ts → ojiepermana-angular-component-tooltip.d.ts} +0 -0
- /package/types/{ojiepermana-angular-ui-component-utils.d.ts → ojiepermana-angular-component-utils.d.ts} +0 -0
- /package/types/{ojiepermana-angular-layout-theme.d.ts → ojiepermana-angular-layout-component.d.ts} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { Type, Signal, TemplateRef } from '@angular/core';
|
|
3
|
-
import * as
|
|
3
|
+
import * as _ojiepermana_angular_component_chart from '@ojiepermana/angular/component/chart';
|
|
4
4
|
import { ScaleBand, ScaleLinear, scaleBand, scaleLinear, scalePoint, ScalePoint } from 'd3-scale';
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -75,7 +75,7 @@ declare class ChartContext {
|
|
|
75
75
|
/** Stable instance id — used in the `data-chart` attribute and CSS scope. */
|
|
76
76
|
readonly id: _angular_core.WritableSignal<string>;
|
|
77
77
|
/** User-provided series config. */
|
|
78
|
-
readonly config: _angular_core.WritableSignal<Readonly<Record<string,
|
|
78
|
+
readonly config: _angular_core.WritableSignal<Readonly<Record<string, _ojiepermana_angular_component_chart.ChartSeriesConfig>>>;
|
|
79
79
|
/** Measured render-area dimensions (ResizeObserver-driven). */
|
|
80
80
|
readonly dimensions: _angular_core.WritableSignal<ChartDimensions>;
|
|
81
81
|
/** Currently highlighted data point (tooltip / crosshair). */
|
|
@@ -135,7 +135,7 @@ declare class ChartContainer {
|
|
|
135
135
|
private readonly platformId;
|
|
136
136
|
private readonly destroyRef;
|
|
137
137
|
/** Series configuration. Required for color / label resolution. */
|
|
138
|
-
readonly config: _angular_core.InputSignal<Readonly<Record<string,
|
|
138
|
+
readonly config: _angular_core.InputSignal<Readonly<Record<string, _ojiepermana_angular_component_chart.ChartSeriesConfig>>>;
|
|
139
139
|
/**
|
|
140
140
|
* Tailwind aspect-ratio utility for the container. Defaults to `aspect-video`
|
|
141
141
|
* for cartesian charts; override with `aspect-square` for radial / pie layouts.
|
|
@@ -279,7 +279,7 @@ declare class ChartAxisY {
|
|
|
279
279
|
declare class ChartGrid {
|
|
280
280
|
private readonly ctx;
|
|
281
281
|
readonly tickCount: _angular_core.InputSignal<number>;
|
|
282
|
-
protected readonly ticks: _angular_core.Signal<
|
|
282
|
+
protected readonly ticks: _angular_core.Signal<_ojiepermana_angular_component_chart.ChartTick[]>;
|
|
283
283
|
protected readonly line: (offset: number) => {
|
|
284
284
|
x1: number;
|
|
285
285
|
x2: number;
|
|
@@ -565,7 +565,7 @@ declare class BarChart {
|
|
|
565
565
|
readonly barClick: _angular_core.OutputEmitterRef<BarClickEvent>;
|
|
566
566
|
protected readonly innerWidth: _angular_core.Signal<number>;
|
|
567
567
|
protected readonly innerHeight: _angular_core.Signal<number>;
|
|
568
|
-
protected readonly layout: _angular_core.Signal<
|
|
568
|
+
protected readonly layout: _angular_core.Signal<_ojiepermana_angular_component_chart.BarLayoutResult>;
|
|
569
569
|
protected readonly bars: _angular_core.Signal<readonly BarRect[]>;
|
|
570
570
|
protected readonly viewBox: _angular_core.Signal<string>;
|
|
571
571
|
protected readonly innerTransform: _angular_core.Signal<string>;
|
|
@@ -669,7 +669,7 @@ declare class LineChart {
|
|
|
669
669
|
protected readonly innerHeight: _angular_core.Signal<number>;
|
|
670
670
|
protected readonly visibleStartIndex: _angular_core.Signal<number>;
|
|
671
671
|
protected readonly visibleData: _angular_core.Signal<readonly Readonly<Record<string, unknown>>[]>;
|
|
672
|
-
protected readonly layout: _angular_core.Signal<
|
|
672
|
+
protected readonly layout: _angular_core.Signal<_ojiepermana_angular_component_chart.LineLayoutResult>;
|
|
673
673
|
protected readonly series: _angular_core.Signal<readonly LineSeriesPath[]>;
|
|
674
674
|
protected readonly viewBox: _angular_core.Signal<string>;
|
|
675
675
|
protected readonly innerTransform: _angular_core.Signal<string>;
|
|
@@ -741,7 +741,7 @@ declare class AreaChart {
|
|
|
741
741
|
protected readonly innerHeight: _angular_core.Signal<number>;
|
|
742
742
|
protected readonly visibleStartIndex: _angular_core.Signal<number>;
|
|
743
743
|
protected readonly visibleData: _angular_core.Signal<readonly Readonly<Record<string, unknown>>[]>;
|
|
744
|
-
protected readonly layout: _angular_core.Signal<
|
|
744
|
+
protected readonly layout: _angular_core.Signal<_ojiepermana_angular_component_chart.AreaLayoutResult>;
|
|
745
745
|
protected readonly series: _angular_core.Signal<readonly LineSeriesPath[]>;
|
|
746
746
|
protected readonly viewBox: _angular_core.Signal<string>;
|
|
747
747
|
protected readonly innerTransform: _angular_core.Signal<string>;
|
|
@@ -830,7 +830,7 @@ declare class PieChart {
|
|
|
830
830
|
readonly sliceClick: _angular_core.OutputEmitterRef<PieSliceClickEvent>;
|
|
831
831
|
protected readonly innerWidth: _angular_core.Signal<number>;
|
|
832
832
|
protected readonly innerHeight: _angular_core.Signal<number>;
|
|
833
|
-
protected readonly layout: _angular_core.Signal<
|
|
833
|
+
protected readonly layout: _angular_core.Signal<_ojiepermana_angular_component_chart.PieLayout>;
|
|
834
834
|
protected readonly viewBox: _angular_core.Signal<string>;
|
|
835
835
|
protected readonly innerTransform: _angular_core.Signal<string>;
|
|
836
836
|
protected readonly ariaSummary: _angular_core.Signal<string>;
|
|
@@ -909,7 +909,7 @@ declare class RadarChart {
|
|
|
909
909
|
readonly linesOnly: _angular_core.InputSignal<boolean>;
|
|
910
910
|
protected readonly innerWidth: _angular_core.Signal<number>;
|
|
911
911
|
protected readonly innerHeight: _angular_core.Signal<number>;
|
|
912
|
-
protected readonly layout: _angular_core.Signal<
|
|
912
|
+
protected readonly layout: _angular_core.Signal<_ojiepermana_angular_component_chart.RadarLayout>;
|
|
913
913
|
protected readonly viewBox: _angular_core.Signal<string>;
|
|
914
914
|
protected readonly innerTransform: _angular_core.Signal<string>;
|
|
915
915
|
protected readonly ariaSummary: _angular_core.Signal<string>;
|
|
@@ -988,7 +988,7 @@ declare class RadialChart {
|
|
|
988
988
|
readonly barClick: _angular_core.OutputEmitterRef<RadialBarClickEvent>;
|
|
989
989
|
protected readonly innerWidth: _angular_core.Signal<number>;
|
|
990
990
|
protected readonly innerHeight: _angular_core.Signal<number>;
|
|
991
|
-
protected readonly layout: _angular_core.Signal<
|
|
991
|
+
protected readonly layout: _angular_core.Signal<_ojiepermana_angular_component_chart.RadialLayout>;
|
|
992
992
|
protected readonly viewBox: _angular_core.Signal<string>;
|
|
993
993
|
protected readonly innerTransform: _angular_core.Signal<string>;
|
|
994
994
|
protected readonly ariaSummary: _angular_core.Signal<string>;
|
|
@@ -1073,12 +1073,12 @@ declare class ScatterChart {
|
|
|
1073
1073
|
protected readonly innerWidth: _angular_core.Signal<number>;
|
|
1074
1074
|
protected readonly innerHeight: _angular_core.Signal<number>;
|
|
1075
1075
|
protected readonly resolvedDomains: _angular_core.Signal<{
|
|
1076
|
-
xDomain:
|
|
1077
|
-
yDomain:
|
|
1076
|
+
xDomain: _ojiepermana_angular_component_chart.NumericDomain;
|
|
1077
|
+
yDomain: _ojiepermana_angular_component_chart.NumericDomain;
|
|
1078
1078
|
}>;
|
|
1079
|
-
protected readonly currentXDomain: _angular_core.Signal<
|
|
1080
|
-
protected readonly currentYDomain: _angular_core.Signal<
|
|
1081
|
-
protected readonly layout: _angular_core.Signal<
|
|
1079
|
+
protected readonly currentXDomain: _angular_core.Signal<_ojiepermana_angular_component_chart.NumericDomain>;
|
|
1080
|
+
protected readonly currentYDomain: _angular_core.Signal<_ojiepermana_angular_component_chart.NumericDomain>;
|
|
1081
|
+
protected readonly layout: _angular_core.Signal<_ojiepermana_angular_component_chart.ScatterLayout>;
|
|
1082
1082
|
protected readonly viewBox: _angular_core.Signal<string>;
|
|
1083
1083
|
protected readonly innerTransform: _angular_core.Signal<string>;
|
|
1084
1084
|
protected readonly clipPathId: _angular_core.Signal<string>;
|
|
@@ -40,7 +40,8 @@ interface SdkTargetConfig {
|
|
|
40
40
|
/**
|
|
41
41
|
* When `true`, reorganize emitted files into one folder per domain (derived
|
|
42
42
|
* from OpenAPI tags). Models shared by multiple domains live in `shared/`,
|
|
43
|
-
* domain-owned models live inside each domain.
|
|
43
|
+
* domain-owned models live inside each domain. Defaults to `true` for
|
|
44
|
+
* `mode: "library"` and `false` otherwise.
|
|
44
45
|
*/
|
|
45
46
|
splitByDomain?: boolean;
|
|
46
47
|
/**
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Empty layout — full-viewport, flex-centered main.
|
|
5
|
+
*
|
|
6
|
+
* Cocok untuk halaman login / error / onboarding (pola shadcn `login-05`).
|
|
7
|
+
* Konten dirender lewat `<router-outlet>`; consumer men-style card / form
|
|
8
|
+
* milik halaman route sendiri.
|
|
9
|
+
*
|
|
10
|
+
* Markup:
|
|
11
|
+
* ```html
|
|
12
|
+
* <empty>
|
|
13
|
+
* <!-- router-outlet dirender oleh komponen -->
|
|
14
|
+
* </empty>
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
declare class EmptyLayoutComponent {
|
|
18
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EmptyLayoutComponent, never>;
|
|
19
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<EmptyLayoutComponent, "empty", never, {}, {}, never, never, true, never>;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export { EmptyLayoutComponent };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { TopbarAppearance } from '@ojiepermana/angular/navigation/types';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Horizontal layout — themed topbar + main (scrollable).
|
|
6
|
+
*
|
|
7
|
+
* Data navigasi diambil dari `NavigationService`.
|
|
8
|
+
* Consumer app dapat memproyeksikan brand kiri dan profile kanan.
|
|
9
|
+
*
|
|
10
|
+
* Markup:
|
|
11
|
+
* ```html
|
|
12
|
+
* <horizontal>
|
|
13
|
+
* <a ui-layout-brand>Brand</a>
|
|
14
|
+
* <button ui-layout-profile type="button">Profile</button>
|
|
15
|
+
* </horizontal>
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
declare class HorizontalLayoutComponent {
|
|
19
|
+
private readonly layout;
|
|
20
|
+
private readonly theme;
|
|
21
|
+
readonly topbarAppearance: _angular_core.InputSignal<TopbarAppearance>;
|
|
22
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
23
|
+
protected readonly layoutWidth: _angular_core.Signal<"full" | "container" | "wide">;
|
|
24
|
+
protected readonly themeStyle: _angular_core.Signal<"default" | "sharp" | "brutal" | "soft">;
|
|
25
|
+
protected readonly isConstrainedWidth: _angular_core.Signal<boolean>;
|
|
26
|
+
protected readonly isWideWidth: _angular_core.Signal<boolean>;
|
|
27
|
+
protected readonly shellBorderWidth: _angular_core.Signal<"var(--border-width)" | null>;
|
|
28
|
+
protected readonly dividerBorderWidth: _angular_core.Signal<string>;
|
|
29
|
+
protected readonly hostClasses: _angular_core.Signal<string>;
|
|
30
|
+
protected readonly frameClasses: _angular_core.Signal<string>;
|
|
31
|
+
protected readonly mainClasses: _angular_core.Signal<string>;
|
|
32
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<HorizontalLayoutComponent, never>;
|
|
33
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<HorizontalLayoutComponent, "horizontal", never, { "topbarAppearance": { "alias": "topbarAppearance"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, ["[ui-layout-brand],[topbar-start]", "[ui-layout-profile],[topbar-end]"], true, never>;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export { HorizontalLayoutComponent };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { LayoutMode, LayoutWidth } from '@ojiepermana/angular/layout/token';
|
|
3
|
+
|
|
4
|
+
declare class LayoutService {
|
|
5
|
+
private readonly document;
|
|
6
|
+
private readonly config;
|
|
7
|
+
private readonly _mode;
|
|
8
|
+
private readonly _width;
|
|
9
|
+
readonly mode: _angular_core.Signal<"vertical" | "horizontal" | "empty">;
|
|
10
|
+
readonly width: _angular_core.Signal<"full" | "container" | "wide">;
|
|
11
|
+
constructor();
|
|
12
|
+
setMode(mode: LayoutMode): void;
|
|
13
|
+
toggleMode(): void;
|
|
14
|
+
setWidth(width: LayoutWidth): void;
|
|
15
|
+
toggleWidth(): void;
|
|
16
|
+
private resolveConfig;
|
|
17
|
+
private readPersistedMode;
|
|
18
|
+
private readPersistedWidth;
|
|
19
|
+
private persistMode;
|
|
20
|
+
private persistWidth;
|
|
21
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutService, never>;
|
|
22
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<LayoutService>;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export { LayoutService };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
|
|
3
|
+
declare class ShellPagesComponent {
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ShellPagesComponent, never>;
|
|
5
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ShellPagesComponent, "shell-pages", never, {}, {}, never, ["[shell-pages-header]", "[shell-pages-main]", "[shell-pages-footer]"], true, never>;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export { ShellPagesComponent };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { PopoverTriggerDefaults, PopoverSide, PopoverAlign } from '@ojiepermana/angular/component/popover';
|
|
3
|
+
|
|
4
|
+
declare class LayoutProfilePopoverDefaultsDirective implements PopoverTriggerDefaults {
|
|
5
|
+
private readonly layout;
|
|
6
|
+
readonly side: _angular_core.Signal<PopoverSide>;
|
|
7
|
+
readonly align: _angular_core.Signal<PopoverAlign>;
|
|
8
|
+
readonly sideOffset: _angular_core.Signal<-20 | 12>;
|
|
9
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutProfilePopoverDefaultsDirective, never>;
|
|
10
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<LayoutProfilePopoverDefaultsDirective, "[ui-layout-profile][uiPopoverTrigger]", never, {}, {}, never, never, true, never>;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export { LayoutProfilePopoverDefaultsDirective };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
|
|
3
|
+
declare const LAYOUT_MODES: readonly ["vertical", "horizontal", "empty"];
|
|
4
|
+
type LayoutMode = (typeof LAYOUT_MODES)[number];
|
|
5
|
+
declare const LAYOUT_WIDTHS: readonly ["full", "container", "wide"];
|
|
6
|
+
type LayoutWidth = (typeof LAYOUT_WIDTHS)[number];
|
|
7
|
+
/** @deprecated Use `container` instead. */
|
|
8
|
+
type LegacyLayoutWidth = 'fixed';
|
|
9
|
+
type ConfiguredLayoutWidth = LayoutWidth | LegacyLayoutWidth;
|
|
10
|
+
interface MaterialLayoutConfig {
|
|
11
|
+
/** Initial layout mode. */
|
|
12
|
+
readonly mode?: LayoutMode;
|
|
13
|
+
/** Initial layout width. */
|
|
14
|
+
readonly width?: ConfiguredLayoutWidth;
|
|
15
|
+
/** @deprecated Use `mode` instead. */
|
|
16
|
+
/** Initial layout mode. Defaults to `vertical`. */
|
|
17
|
+
readonly defaultMode?: LayoutMode;
|
|
18
|
+
/** localStorage key used to persist the layout mode. Set to `null` to disable persistence. */
|
|
19
|
+
readonly storageKey?: string | null;
|
|
20
|
+
/** localStorage key used to persist the layout width. Set to `null` to disable persistence. */
|
|
21
|
+
readonly widthStorageKey?: string | null;
|
|
22
|
+
}
|
|
23
|
+
interface ResolvedMaterialLayoutConfig {
|
|
24
|
+
readonly defaultMode: LayoutMode;
|
|
25
|
+
readonly defaultWidth: LayoutWidth;
|
|
26
|
+
readonly storageKey: string | null;
|
|
27
|
+
readonly widthStorageKey: string | null;
|
|
28
|
+
}
|
|
29
|
+
declare const MATERIAL_LAYOUT_CONFIG: InjectionToken<MaterialLayoutConfig>;
|
|
30
|
+
declare const DEFAULT_MATERIAL_LAYOUT_CONFIG: ResolvedMaterialLayoutConfig;
|
|
31
|
+
declare function isLayoutMode(value: string | null | undefined): value is LayoutMode;
|
|
32
|
+
declare function isLayoutWidth(value: string | null | undefined): value is LayoutWidth;
|
|
33
|
+
declare function normalizeLayoutWidth(value: string | null | undefined): LayoutWidth | null;
|
|
34
|
+
|
|
35
|
+
export { DEFAULT_MATERIAL_LAYOUT_CONFIG, LAYOUT_MODES, LAYOUT_WIDTHS, MATERIAL_LAYOUT_CONFIG, isLayoutMode, isLayoutWidth, normalizeLayoutWidth };
|
|
36
|
+
export type { ConfiguredLayoutWidth, LayoutMode, LayoutWidth, LegacyLayoutWidth, MaterialLayoutConfig, ResolvedMaterialLayoutConfig };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { SidebarAppearance, SidebarPosition, SidebarMode } from '@ojiepermana/angular/navigation/types';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Vertical layout — sidebar + main (scrollable).
|
|
6
|
+
*
|
|
7
|
+
* Data navigasi diambil dari `NavigationService` (register via
|
|
8
|
+
* `NavigationService.registerItems()` di bootstrap). Main memegang
|
|
9
|
+
* `<router-outlet>` dan scroll jika konten panjang.
|
|
10
|
+
*
|
|
11
|
+
* Markup:
|
|
12
|
+
* ```html
|
|
13
|
+
* <vertical>
|
|
14
|
+
* <a ui-layout-brand>Brand</a>
|
|
15
|
+
* <button ui-layout-profile type="button">Profile</button>
|
|
16
|
+
* </vertical>
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
declare class VerticalLayoutComponent {
|
|
20
|
+
private readonly layout;
|
|
21
|
+
private readonly theme;
|
|
22
|
+
readonly sidebarAppearance: _angular_core.InputSignal<SidebarAppearance>;
|
|
23
|
+
readonly sidebarPosition: _angular_core.InputSignal<SidebarPosition>;
|
|
24
|
+
readonly sidebarMode: _angular_core.InputSignal<SidebarMode>;
|
|
25
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
26
|
+
protected readonly layoutWidth: _angular_core.Signal<"full" | "container" | "wide">;
|
|
27
|
+
protected readonly themeStyle: _angular_core.Signal<"default" | "sharp" | "brutal" | "soft">;
|
|
28
|
+
protected readonly isConstrainedWidth: _angular_core.Signal<boolean>;
|
|
29
|
+
protected readonly isWideWidth: _angular_core.Signal<boolean>;
|
|
30
|
+
protected readonly shellBorderWidth: _angular_core.Signal<"var(--border-width)" | null>;
|
|
31
|
+
protected readonly hostClasses: _angular_core.Signal<string>;
|
|
32
|
+
protected readonly frameClasses: _angular_core.Signal<string>;
|
|
33
|
+
protected readonly mainClasses: _angular_core.Signal<string>;
|
|
34
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<VerticalLayoutComponent, never>;
|
|
35
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<VerticalLayoutComponent, "vertical", never, { "sidebarAppearance": { "alias": "sidebarAppearance"; "required": false; "isSignal": true; }; "sidebarPosition": { "alias": "sidebarPosition"; "required": false; "isSignal": true; }; "sidebarMode": { "alias": "sidebarMode"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, ["[ui-layout-brand],[sidebar-header]", "[ui-layout-profile],[sidebar-footer]"], true, never>;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export { VerticalLayoutComponent };
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import { SidebarAppearance, SidebarPosition, SidebarMode, TopbarAppearance } from '@ojiepermana/angular/navigation';
|
|
2
|
+
import { EnvironmentProviders, InjectionToken } from '@angular/core';
|
|
3
|
+
import { SidebarAppearance, SidebarPosition, SidebarMode, TopbarAppearance } from '@ojiepermana/angular/navigation/types';
|
|
4
4
|
import { PopoverTriggerDefaults, PopoverSide, PopoverAlign } from '@ojiepermana/angular/component/popover';
|
|
5
|
+
import { MaterialLayoutConfig as MaterialLayoutConfig$1, LayoutMode as LayoutMode$1, LayoutWidth as LayoutWidth$1 } from '@ojiepermana/angular/layout/token';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* Vertical layout — sidebar + main (scrollable).
|
|
@@ -93,6 +94,29 @@ declare class ShellPagesComponent {
|
|
|
93
94
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShellPagesComponent, "shell-pages", never, {}, {}, never, ["[shell-pages-header]", "[shell-pages-main]", "[shell-pages-footer]"], true, never>;
|
|
94
95
|
}
|
|
95
96
|
|
|
97
|
+
declare function provideMaterialLayout(config?: MaterialLayoutConfig$1): EnvironmentProviders;
|
|
98
|
+
|
|
99
|
+
declare class LayoutService {
|
|
100
|
+
private readonly document;
|
|
101
|
+
private readonly config;
|
|
102
|
+
private readonly _mode;
|
|
103
|
+
private readonly _width;
|
|
104
|
+
readonly mode: _angular_core.Signal<"vertical" | "horizontal" | "empty">;
|
|
105
|
+
readonly width: _angular_core.Signal<"full" | "container" | "wide">;
|
|
106
|
+
constructor();
|
|
107
|
+
setMode(mode: LayoutMode$1): void;
|
|
108
|
+
toggleMode(): void;
|
|
109
|
+
setWidth(width: LayoutWidth$1): void;
|
|
110
|
+
toggleWidth(): void;
|
|
111
|
+
private resolveConfig;
|
|
112
|
+
private readPersistedMode;
|
|
113
|
+
private readPersistedWidth;
|
|
114
|
+
private persistMode;
|
|
115
|
+
private persistWidth;
|
|
116
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutService, never>;
|
|
117
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<LayoutService>;
|
|
118
|
+
}
|
|
119
|
+
|
|
96
120
|
declare const LAYOUT_MODES: readonly ["vertical", "horizontal", "empty"];
|
|
97
121
|
type LayoutMode = (typeof LAYOUT_MODES)[number];
|
|
98
122
|
declare const LAYOUT_WIDTHS: readonly ["full", "container", "wide"];
|
|
@@ -125,29 +149,6 @@ declare function isLayoutMode(value: string | null | undefined): value is Layout
|
|
|
125
149
|
declare function isLayoutWidth(value: string | null | undefined): value is LayoutWidth;
|
|
126
150
|
declare function normalizeLayoutWidth(value: string | null | undefined): LayoutWidth | null;
|
|
127
151
|
|
|
128
|
-
declare class LayoutService {
|
|
129
|
-
private readonly document;
|
|
130
|
-
private readonly config;
|
|
131
|
-
private readonly _mode;
|
|
132
|
-
private readonly _width;
|
|
133
|
-
readonly mode: _angular_core.Signal<"vertical" | "horizontal" | "empty">;
|
|
134
|
-
readonly width: _angular_core.Signal<"full" | "container" | "wide">;
|
|
135
|
-
constructor();
|
|
136
|
-
setMode(mode: LayoutMode): void;
|
|
137
|
-
toggleMode(): void;
|
|
138
|
-
setWidth(width: LayoutWidth): void;
|
|
139
|
-
toggleWidth(): void;
|
|
140
|
-
private resolveConfig;
|
|
141
|
-
private readPersistedMode;
|
|
142
|
-
private readPersistedWidth;
|
|
143
|
-
private persistMode;
|
|
144
|
-
private persistWidth;
|
|
145
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutService, never>;
|
|
146
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<LayoutService>;
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
declare function provideMaterialLayout(config?: MaterialLayoutConfig): EnvironmentProviders;
|
|
150
|
-
|
|
151
152
|
declare class LayoutProfilePopoverDefaultsDirective implements PopoverTriggerDefaults {
|
|
152
153
|
private readonly layout;
|
|
153
154
|
readonly side: _angular_core.Signal<PopoverSide>;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { NavigationItem, NavigationGroupItem, NavigationCollapsableItem, NavigationMegaItem, NavigationAsideItem, NavigationBasicItem } from '@ojiepermana/angular/navigation/types';
|
|
3
|
+
import { ClassValue } from 'clsx';
|
|
4
|
+
|
|
5
|
+
/** Concatenate and dedupe Tailwind class names. */
|
|
6
|
+
declare function cn(...inputs: ClassValue[]): string;
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Recursive navigation item renderer (vertical context).
|
|
10
|
+
*
|
|
11
|
+
* Menerima item polymorphic dan delegasi ke template sesuai `type`.
|
|
12
|
+
* Mega dirender sebagai group biasa saat muncul di konteks vertical.
|
|
13
|
+
*/
|
|
14
|
+
declare class UiNavItemComponent {
|
|
15
|
+
private readonly nav;
|
|
16
|
+
protected readonly cn: typeof cn;
|
|
17
|
+
readonly item: _angular_core.InputSignal<NavigationItem>;
|
|
18
|
+
readonly level: _angular_core.InputSignal<number>;
|
|
19
|
+
/** Compact / icon-only rendering (sidebar `thin`). */
|
|
20
|
+
readonly compact: _angular_core.InputSignal<boolean>;
|
|
21
|
+
/** True when this branch sits inside a collapsable rail and can draw a connector back to it. */
|
|
22
|
+
readonly railConnector: _angular_core.InputSignal<boolean>;
|
|
23
|
+
protected readonly railConnectorDotClasses = "pointer-events-none absolute -left-[11px] top-1/2 z-10 h-1 w-1 -translate-x-1/2 -translate-y-1/2 rounded-full bg-foreground/80";
|
|
24
|
+
protected readonly exactMatch: {
|
|
25
|
+
readonly exact: true;
|
|
26
|
+
readonly paths: "exact";
|
|
27
|
+
readonly queryParams: "exact";
|
|
28
|
+
readonly fragment: "exact";
|
|
29
|
+
readonly matrixParams: "exact";
|
|
30
|
+
};
|
|
31
|
+
protected readonly inexactMatch: {
|
|
32
|
+
readonly paths: "subset";
|
|
33
|
+
readonly queryParams: "subset";
|
|
34
|
+
readonly fragment: "ignored";
|
|
35
|
+
readonly matrixParams: "ignored";
|
|
36
|
+
};
|
|
37
|
+
protected readonly type: _angular_core.Signal<"aside" | "collapsable" | "group" | "mega" | "basic" | "divider" | "spacer">;
|
|
38
|
+
protected readonly groupItem: _angular_core.Signal<NavigationGroupItem>;
|
|
39
|
+
protected readonly collapsableItem: _angular_core.Signal<NavigationCollapsableItem>;
|
|
40
|
+
protected readonly megaItem: _angular_core.Signal<NavigationMegaItem>;
|
|
41
|
+
protected readonly asideItem: _angular_core.Signal<NavigationAsideItem>;
|
|
42
|
+
protected readonly basicItem: _angular_core.Signal<NavigationBasicItem>;
|
|
43
|
+
protected readonly headingId: _angular_core.Signal<string>;
|
|
44
|
+
protected isGroupOpen(): boolean;
|
|
45
|
+
protected isTrailActive(): boolean;
|
|
46
|
+
protected railConnectorClasses(active: boolean): string;
|
|
47
|
+
protected showRailConnector(active: boolean): boolean;
|
|
48
|
+
protected toggleGroup(): void;
|
|
49
|
+
protected runAction(): void;
|
|
50
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<UiNavItemComponent, never>;
|
|
51
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<UiNavItemComponent, "ui-nav-item", never, { "item": { "alias": "item"; "required": true; "isSignal": true; }; "level": { "alias": "level"; "required": false; "isSignal": true; }; "compact": { "alias": "compact"; "required": false; "isSignal": true; }; "railConnector": { "alias": "railConnector"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export { UiNavItemComponent };
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { NavigationItem, SidebarAppearance } from '@ojiepermana/angular/navigation/types';
|
|
3
|
+
|
|
4
|
+
/** Default registry key used when no id is specified. */
|
|
5
|
+
declare const DEFAULT_NAVIGATION_ID = "main";
|
|
6
|
+
/**
|
|
7
|
+
* Signal-based global state untuk navigation (sidebar/topbar).
|
|
8
|
+
*
|
|
9
|
+
* Items disimpan dalam registry ber-key. Key default adalah `'main'`.
|
|
10
|
+
* Komponen `sidebar` / `topbar` memilih registry via input `navigationId`.
|
|
11
|
+
*/
|
|
12
|
+
declare class NavigationService {
|
|
13
|
+
private readonly doc;
|
|
14
|
+
private readonly router;
|
|
15
|
+
private readonly destroyRef;
|
|
16
|
+
private readonly persistedSidebarCollapsed;
|
|
17
|
+
/** Internal version counter — incremented on every registry mutation. */
|
|
18
|
+
private readonly _version;
|
|
19
|
+
/** Internal map of registered navigation trees. */
|
|
20
|
+
private readonly _registry;
|
|
21
|
+
private readonly _collapsed;
|
|
22
|
+
private readonly _hasStoredSidebarCollapse;
|
|
23
|
+
/**
|
|
24
|
+
* Backward-compatible accessor — returns items for the default (`'main'`) key.
|
|
25
|
+
* Prefer `getItems(id)` when working with named registries.
|
|
26
|
+
*/
|
|
27
|
+
readonly items: _angular_core.Signal<readonly NavigationItem[]>;
|
|
28
|
+
/** Sidebar appearance preference (`default` or `thin`). */
|
|
29
|
+
readonly sidebarAppearance: _angular_core.Signal<SidebarAppearance>;
|
|
30
|
+
readonly hasStoredSidebarCollapse: _angular_core.Signal<boolean>;
|
|
31
|
+
/** Sidebar collapsed (default ↔ thin) toggle untuk desktop. */
|
|
32
|
+
readonly collapsed: _angular_core.Signal<boolean>;
|
|
33
|
+
/** Sheet drawer terbuka di mobile. */
|
|
34
|
+
readonly mobileOpen: _angular_core.WritableSignal<boolean>;
|
|
35
|
+
/** Set id grup / collapsable yang sedang terbuka. */
|
|
36
|
+
readonly openGroups: _angular_core.WritableSignal<ReadonlySet<string>>;
|
|
37
|
+
/** URL aktif terakhir. Update otomatis dari Router `NavigationEnd`. */
|
|
38
|
+
readonly activeUrl: _angular_core.WritableSignal<string>;
|
|
39
|
+
/** Trail id item yang sedang match dengan URL aktif (across ALL registries). */
|
|
40
|
+
readonly activeTrail: _angular_core.Signal<ReadonlySet<string>>;
|
|
41
|
+
constructor();
|
|
42
|
+
/**
|
|
43
|
+
* Register items di registry.
|
|
44
|
+
*
|
|
45
|
+
* Overload:
|
|
46
|
+
* - `registerItems(items)` → key `'main'`
|
|
47
|
+
* - `registerItems(id, items)` → key spesifik
|
|
48
|
+
*/
|
|
49
|
+
registerItems(items: NavigationItem[]): void;
|
|
50
|
+
registerItems(id: string, items: NavigationItem[]): void;
|
|
51
|
+
/** Remove a named registry entry. */
|
|
52
|
+
removeItems(id: string): void;
|
|
53
|
+
/**
|
|
54
|
+
* Computed yang mengembalikan items untuk key tertentu.
|
|
55
|
+
* Reactive terhadap perubahan registry.
|
|
56
|
+
*/
|
|
57
|
+
getItems(id: string): () => readonly NavigationItem[];
|
|
58
|
+
setSidebarAppearance(value: SidebarAppearance): void;
|
|
59
|
+
toggleSidebarAppearance(currentAppearance?: SidebarAppearance): void;
|
|
60
|
+
/** Toggle sidebar collapsed (default ↔ thin). */
|
|
61
|
+
toggleCollapsed(): void;
|
|
62
|
+
setCollapsed(value: boolean): void;
|
|
63
|
+
openMobile(): void;
|
|
64
|
+
closeMobile(): void;
|
|
65
|
+
toggleMobile(): void;
|
|
66
|
+
isGroupOpen(id: string): boolean;
|
|
67
|
+
toggleGroup(id: string): void;
|
|
68
|
+
setGroupOpen(id: string, open: boolean): void;
|
|
69
|
+
/** Apakah id termasuk dalam active trail saat ini. */
|
|
70
|
+
isActive(id: string | undefined): boolean;
|
|
71
|
+
private readPersistedSidebarCollapsed;
|
|
72
|
+
private persistSidebarCollapsed;
|
|
73
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavigationService, never>;
|
|
74
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<NavigationService>;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export { DEFAULT_NAVIGATION_ID, NavigationService };
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { NavigationItem, SidebarAppearance, SidebarBorderSource, SidebarPosition } from '@ojiepermana/angular/navigation/types';
|
|
3
|
+
export { SidebarAppearance, SidebarBorderSource, SidebarMode, SidebarPosition } from '@ojiepermana/angular/navigation/types';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Vertical navigation (sidebar) — shadcn-styled.
|
|
7
|
+
*
|
|
8
|
+
* Variants:
|
|
9
|
+
* - `default`: 17.5rem, label + icon
|
|
10
|
+
* - `thin`: 4rem icon-only; hover memunculkan overlay expand (tidak push konten)
|
|
11
|
+
*
|
|
12
|
+
* Mobile (`< md`): saat `autoMobile=true` (default), host desktop disembunyikan
|
|
13
|
+
* dan konten dirender lewat CDK Overlay drawer dengan focus trap. State buka
|
|
14
|
+
* dikontrol lewat `NavigationService.mobileOpen`.
|
|
15
|
+
*/
|
|
16
|
+
declare class SidebarComponent {
|
|
17
|
+
private readonly nav;
|
|
18
|
+
private readonly bp;
|
|
19
|
+
private readonly overlay;
|
|
20
|
+
private readonly vcr;
|
|
21
|
+
private readonly focusTrapFactory;
|
|
22
|
+
private readonly doc;
|
|
23
|
+
private readonly destroyRef;
|
|
24
|
+
readonly items: _angular_core.InputSignal<NavigationItem[]>;
|
|
25
|
+
/** Registry key di `NavigationService`. Default `'main'`. */
|
|
26
|
+
readonly navigationId: _angular_core.InputSignal<string>;
|
|
27
|
+
readonly appearance: _angular_core.InputSignal<SidebarAppearance>;
|
|
28
|
+
/** Desktop border can be owned by the sidebar or by the surrounding layout shell. */
|
|
29
|
+
readonly borderSource: _angular_core.InputSignal<SidebarBorderSource>;
|
|
30
|
+
readonly position: _angular_core.InputSignal<SidebarPosition>;
|
|
31
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
32
|
+
readonly header: _angular_core.InputSignal<boolean>;
|
|
33
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
34
|
+
/** Auto switch ke CDK overlay drawer saat viewport `< md`. */
|
|
35
|
+
readonly autoMobile: _angular_core.InputSignal<boolean>;
|
|
36
|
+
/** Auto-register `items` ke `NavigationService` agar `activeTrail` bekerja. */
|
|
37
|
+
readonly autoRegister: _angular_core.InputSignal<boolean>;
|
|
38
|
+
/** Resolved items: input jika disediakan, fallback ke registry NavigationService. */
|
|
39
|
+
protected readonly resolvedItems: _angular_core.Signal<readonly NavigationItem[]>;
|
|
40
|
+
private readonly hovered;
|
|
41
|
+
private readonly suppressHoverUntilLeave;
|
|
42
|
+
private readonly drawerTpl;
|
|
43
|
+
private drawerRef;
|
|
44
|
+
private focusTrap;
|
|
45
|
+
private previouslyFocused;
|
|
46
|
+
/** True saat viewport `< md` (767.98px). */
|
|
47
|
+
protected readonly isMobileMedia: _angular_core.Signal<boolean>;
|
|
48
|
+
protected readonly isMobile: _angular_core.Signal<boolean>;
|
|
49
|
+
protected readonly resolvedCollapsed: _angular_core.Signal<boolean>;
|
|
50
|
+
protected readonly resolvedAppearance: _angular_core.Signal<SidebarAppearance>;
|
|
51
|
+
protected readonly hoverActive: _angular_core.Signal<boolean>;
|
|
52
|
+
protected readonly isExpanded: _angular_core.Signal<boolean>;
|
|
53
|
+
protected readonly isCompact: _angular_core.Signal<boolean>;
|
|
54
|
+
protected readonly toggleButtonLabel: _angular_core.Signal<"Expand sidebar" | "Collapse sidebar">;
|
|
55
|
+
constructor();
|
|
56
|
+
protected readonly hostClasses: _angular_core.Signal<string>;
|
|
57
|
+
protected readonly headerClasses: _angular_core.Signal<string>;
|
|
58
|
+
protected readonly headerSlotClasses: _angular_core.Signal<string>;
|
|
59
|
+
protected readonly navClasses: _angular_core.Signal<string>;
|
|
60
|
+
protected readonly scrollViewportClasses: _angular_core.Signal<string>;
|
|
61
|
+
protected readonly footerClasses: _angular_core.Signal<string>;
|
|
62
|
+
protected readonly footerSlotClasses: _angular_core.Signal<string>;
|
|
63
|
+
protected readonly innerClasses: _angular_core.Signal<string>;
|
|
64
|
+
protected onHoverEnter(): void;
|
|
65
|
+
protected onHoverLeave(): void;
|
|
66
|
+
protected toggleAppearance(event: MouseEvent): void;
|
|
67
|
+
/** Touch fallback: tap pada strip thin (ketika belum expanded) untuk expand. */
|
|
68
|
+
protected onHostClick(event: MouseEvent): void;
|
|
69
|
+
private openDrawer;
|
|
70
|
+
private closeDrawer;
|
|
71
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SidebarComponent, never>;
|
|
72
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SidebarComponent, "sidebar", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "navigationId": { "alias": "navigationId"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "borderSource": { "alias": "borderSource"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; "autoMobile": { "alias": "autoMobile"; "required": false; "isSignal": true; }; "autoRegister": { "alias": "autoRegister"; "required": false; "isSignal": true; }; }, {}, never, ["[sidebar-header]", "[sidebar-footer]"], true, never>;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export { SidebarComponent };
|