structra-ui 0.1.13 → 0.1.15
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/package.json +6 -4
- package/app/_utils/date-pt-br.utils.d.ts +0 -24
- package/app/_utils/decimal-br.utils.d.ts +0 -52
- package/app/_utils/estados-br.data.d.ts +0 -10
- package/app/_utils/integer-br.utils.d.ts +0 -17
- package/app/_utils/integer-value.utils.d.ts +0 -5
- package/app/_utils/scroll/body-scroll-lock.util.d.ts +0 -44
- package/app/app-shell/_models/breadcrumb-item.model.d.ts +0 -13
- package/app/app-shell/app-shell-sidebar-template.directive.d.ts +0 -19
- package/app/app-shell/app-shell.component.d.ts +0 -41
- package/app/app-shell/breadcrumb/breadcrumb.component.d.ts +0 -10
- package/app/app-shell/index.d.ts +0 -19
- package/app/app-shell/sidebar/app-sidebar-toolbar.directive.d.ts +0 -14
- package/app/app-shell/sidebar/shell-sidebar-toggle.component.d.ts +0 -19
- package/app/app-shell/sidebar/sidebar.component.d.ts +0 -36
- package/app/app-shell/sidebar-reveal.constants.d.ts +0 -8
- package/app/app-shell/topbar/topbar.component.d.ts +0 -8
- package/app/app-shell/user-menu/user-menu.component.d.ts +0 -25
- package/app/buttons/base-button/base-button.component.d.ts +0 -43
- package/app/buttons/index.d.ts +0 -1
- package/app/data-display/_models/card-item-view.model.d.ts +0 -8
- package/app/data-display/_models/data-display.models.d.ts +0 -11
- package/app/data-display/_models/data-grid-column.model.d.ts +0 -13
- package/app/data-display/_models/index.d.ts +0 -2
- package/app/data-display/adaptive-data-view/adaptive-data-view.component.d.ts +0 -53
- package/app/data-display/card-list/card-list.component.d.ts +0 -70
- package/app/data-display/dashboard-section/dashboard-section.component.d.ts +0 -12
- package/app/data-display/data-card/data-card.component.d.ts +0 -16
- package/app/data-display/data-grid/data-grid-actions-cell-renderer.component.d.ts +0 -21
- package/app/data-display/data-grid/data-grid.component.d.ts +0 -76
- package/app/data-display/data-list/data-list.component.d.ts +0 -18
- package/app/data-display/data-toolbar/data-toolbar.component.d.ts +0 -6
- package/app/data-display/details-field/details-field.component.d.ts +0 -10
- package/app/data-display/details-view/details-view.component.d.ts +0 -26
- package/app/data-display/empty-state/empty-state-overlay.util.d.ts +0 -5
- package/app/data-display/empty-state/empty-state.component.d.ts +0 -13
- package/app/data-display/index.d.ts +0 -20
- package/app/data-display/list-item/list-item.component.d.ts +0 -22
- package/app/data-display/stat-card/stat-card.component.d.ts +0 -23
- package/app/data-display/status-badge/status-badge.component.d.ts +0 -17
- package/app/data-display/table-empty-state/table-empty-state.component.d.ts +0 -14
- package/app/data-display/table-toolbar/table-toolbar.component.d.ts +0 -11
- package/app/dialogs/_models/lib-dialog-size.model.d.ts +0 -6
- package/app/dialogs/_utils/app-lib-light-block-scroll-strategy.d.ts +0 -12
- package/app/dialogs/_utils/lib-dialog-panel-classes.d.ts +0 -3
- package/app/dialogs/app-dialog/app-dialog.component.d.ts +0 -71
- package/app/dialogs/app-dialog/dialog-footer.directive.d.ts +0 -6
- package/app/dialogs/confirm-dialog/confirm-dialog-data.model.d.ts +0 -13
- package/app/dialogs/confirm-dialog/confirm-dialog.component.d.ts +0 -20
- package/app/dialogs/confirm-dialog/confirm-dialog.service.d.ts +0 -17
- package/app/dialogs/index.d.ts +0 -14
- package/app/dialogs/loading-dialog/loading-dialog-data.model.d.ts +0 -7
- package/app/dialogs/loading-dialog/loading-dialog.component.d.ts +0 -9
- package/app/dialogs/loading-dialog/loading-dialog.service.d.ts +0 -15
- package/app/dialogs/toast/toast-host.component.d.ts +0 -13
- package/app/dialogs/toast/toast.models.d.ts +0 -26
- package/app/dialogs/toast/toast.service.d.ts +0 -17
- package/app/fields/checkbox-fields/_base/boolean-field.directive.d.ts +0 -42
- package/app/fields/checkbox-fields/checkbox-field/checkbox-field.component.d.ts +0 -8
- package/app/fields/checkbox-fields/index.d.ts +0 -3
- package/app/fields/checkbox-fields/switch-field/switch-field.component.d.ts +0 -8
- package/app/fields/dropdown-fields/_base/dropdown-base/dropdown-base.component.d.ts +0 -62
- package/app/fields/dropdown-fields/_base/dropdown-multi-option-field.base.d.ts +0 -40
- package/app/fields/dropdown-fields/_base/dropdown-option-field.base.d.ts +0 -47
- package/app/fields/dropdown-fields/_base/dropdown-trigger-blur.util.d.ts +0 -18
- package/app/fields/dropdown-fields/_models/dropdown-list-bindings.model.d.ts +0 -13
- package/app/fields/dropdown-fields/_models/dropdown-search-page-requested.model.d.ts +0 -7
- package/app/fields/dropdown-fields/_models/index.d.ts +0 -4
- package/app/fields/dropdown-fields/_models/select-option.model.d.ts +0 -5
- package/app/fields/dropdown-fields/_models/select-pagination.model.d.ts +0 -6
- package/app/fields/dropdown-fields/dropdown-search-field/dropdown-search-field.component.d.ts +0 -84
- package/app/fields/dropdown-fields/index.d.ts +0 -7
- package/app/fields/dropdown-fields/multiselect-field/multiselect-field.component.d.ts +0 -49
- package/app/fields/dropdown-fields/select-field/select-field.component.d.ts +0 -54
- package/app/fields/input-fields/_base/base-field.component.d.ts +0 -60
- package/app/fields/input-fields/_base/base-field.directive.d.ts +0 -102
- package/app/fields/input-fields/_base/masked-text-field.base.d.ts +0 -34
- package/app/fields/input-fields/_base/ng-control-field.directive.d.ts +0 -43
- package/app/fields/input-fields/_models/field-common-inputs.model.d.ts +0 -49
- package/app/fields/input-fields/_models/index.d.ts +0 -1
- package/app/fields/input-fields/_utils/mask-complete.validators.d.ts +0 -18
- package/app/fields/input-fields/_utils/mask-format.utils.d.ts +0 -13
- package/app/fields/input-fields/cep-field/cep-field.component.d.ts +0 -12
- package/app/fields/input-fields/cpf-cnpj-field/cpf-cnpj-field.component.d.ts +0 -20
- package/app/fields/input-fields/date-field/date-field.component.d.ts +0 -30
- package/app/fields/input-fields/decimal-field/decimal-field.component.d.ts +0 -17
- package/app/fields/input-fields/index.d.ts +0 -22
- package/app/fields/input-fields/input-mask-field/input-mask-field.component.d.ts +0 -16
- package/app/fields/input-fields/integer-field/integer-field.component.d.ts +0 -17
- package/app/fields/input-fields/password-field/password-field.component.d.ts +0 -30
- package/app/fields/input-fields/phone-field/phone-field.component.d.ts +0 -22
- package/app/fields/input-fields/text-field/text-field.component.d.ts +0 -16
- package/app/fields/input-fields/textarea-field/textarea-field.component.d.ts +0 -31
- package/app/form-layout/_models/form-layout.model.d.ts +0 -41
- package/app/form-layout/_models/form-tabs.model.d.ts +0 -1
- package/app/form-layout/_models/index.d.ts +0 -3
- package/app/form-layout/_models/validation-summary.model.d.ts +0 -8
- package/app/form-layout/form-actions/form-actions.component.d.ts +0 -21
- package/app/form-layout/form-col/form-col.component.d.ts +0 -25
- package/app/form-layout/form-group/form-group.component.d.ts +0 -125
- package/app/form-layout/form-group/form-path.utils.d.ts +0 -16
- package/app/form-layout/form-group/form-root-invalid-ui-refresh.util.d.ts +0 -8
- package/app/form-layout/form-row/form-row.component.d.ts +0 -14
- package/app/form-layout/form-section/form-section.component.d.ts +0 -13
- package/app/form-layout/form-tab/form-tab.component.d.ts +0 -32
- package/app/form-layout/form-tabs/form-tabs.component.d.ts +0 -44
- package/app/form-layout/index.d.ts +0 -14
- package/app/form-layout/layout-stack/layout-stack.component.d.ts +0 -25
- package/app/form-layout/validation-summary/validation-summary.component.d.ts +0 -105
- package/app/loading/skeleton-loading/index.d.ts +0 -6
- package/app/loading/skeleton-loading/skeleton-block/skeleton-block.component.d.ts +0 -15
- package/app/loading/skeleton-loading/skeleton-card/skeleton-card.component.d.ts +0 -10
- package/app/loading/skeleton-loading/skeleton-field-shell/skeleton-field-shell.component.d.ts +0 -21
- package/app/loading/skeleton-loading/skeleton-list/skeleton-list.component.d.ts +0 -17
- package/app/loading/skeleton-loading/skeleton-table/skeleton-table.component.d.ts +0 -16
- package/app/loading/skeleton-loading/skeleton-text/skeleton-text.component.d.ts +0 -17
- package/app/menus/_models/drawer-side.model.d.ts +0 -6
- package/app/menus/_models/drawer-size.model.d.ts +0 -6
- package/app/menus/_models/menu-dropdown-placement.model.d.ts +0 -10
- package/app/menus/_models/menu-item.model.d.ts +0 -47
- package/app/menus/_utils/menu-connected-positions.util.d.ts +0 -4
- package/app/menus/_utils/menu-rows.util.d.ts +0 -22
- package/app/menus/_utils/submenu-connected-positions.util.d.ts +0 -5
- package/app/menus/action-menu/action-menu.component.d.ts +0 -24
- package/app/menus/context-menu/context-menu.component.d.ts +0 -32
- package/app/menus/drawer/drawer.component.d.ts +0 -38
- package/app/menus/dropdown-menu/dropdown-menu.component.d.ts +0 -33
- package/app/menus/index.d.ts +0 -11
- package/app/menus/menu-divider/menu-divider.component.d.ts +0 -8
- package/app/menus/menu-group/menu-group.component.d.ts +0 -13
- package/app/menus/menu-list/menu-list.component.d.ts +0 -77
- package/app/overlay/_models/overlay-placement.model.d.ts +0 -9
- package/app/overlay/_utils/anchored-overlay-positions.util.d.ts +0 -9
- package/app/overlay/anchored-overlay/anchored-overlay.component.d.ts +0 -51
- package/app/overlay/index.d.ts +0 -20
- package/app/overlay/popover/popover-body-template.directive.d.ts +0 -7
- package/app/overlay/popover/popover-footer-template.directive.d.ts +0 -7
- package/app/overlay/popover/popover-trigger.directive.d.ts +0 -6
- package/app/overlay/popover/popover.component.d.ts +0 -38
- package/app/overlay/tooltip/tooltip-panel-template.directive.d.ts +0 -10
- package/app/overlay/tooltip/tooltip.component.d.ts +0 -40
- package/app/theme/app-theme.service.d.ts +0 -25
- package/app/theme/index.d.ts +0 -1
- package/esm2022/app/_utils/date-pt-br.utils.mjs +0 -82
- package/esm2022/app/_utils/decimal-br.utils.mjs +0 -154
- package/esm2022/app/_utils/estados-br.data.mjs +0 -37
- package/esm2022/app/_utils/integer-br.utils.mjs +0 -48
- package/esm2022/app/_utils/integer-value.utils.mjs +0 -19
- package/esm2022/app/_utils/scroll/body-scroll-lock.util.mjs +0 -97
- package/esm2022/app/app-shell/_models/breadcrumb-item.model.mjs +0 -2
- package/esm2022/app/app-shell/app-shell-sidebar-template.directive.mjs +0 -29
- package/esm2022/app/app-shell/app-shell.component.mjs +0 -105
- package/esm2022/app/app-shell/breadcrumb/breadcrumb.component.mjs +0 -18
- package/esm2022/app/app-shell/index.mjs +0 -19
- package/esm2022/app/app-shell/sidebar/app-sidebar-toolbar.directive.mjs +0 -23
- package/esm2022/app/app-shell/sidebar/shell-sidebar-toggle.component.mjs +0 -36
- package/esm2022/app/app-shell/sidebar/sidebar.component.mjs +0 -84
- package/esm2022/app/app-shell/sidebar-reveal.constants.mjs +0 -9
- package/esm2022/app/app-shell/topbar/topbar.component.mjs +0 -14
- package/esm2022/app/app-shell/user-menu/user-menu.component.mjs +0 -52
- package/esm2022/app/buttons/base-button/base-button.component.mjs +0 -97
- package/esm2022/app/buttons/index.mjs +0 -2
- package/esm2022/app/data-display/_models/card-item-view.model.mjs +0 -2
- package/esm2022/app/data-display/_models/data-display.models.mjs +0 -2
- package/esm2022/app/data-display/_models/data-grid-column.model.mjs +0 -2
- package/esm2022/app/data-display/_models/index.mjs +0 -2
- package/esm2022/app/data-display/adaptive-data-view/adaptive-data-view.component.mjs +0 -124
- package/esm2022/app/data-display/card-list/card-list.component.mjs +0 -208
- package/esm2022/app/data-display/dashboard-section/dashboard-section.component.mjs +0 -25
- package/esm2022/app/data-display/data-card/data-card.component.mjs +0 -40
- package/esm2022/app/data-display/data-grid/data-grid-actions-cell-renderer.component.mjs +0 -41
- package/esm2022/app/data-display/data-grid/data-grid.component.mjs +0 -253
- package/esm2022/app/data-display/data-list/data-list.component.mjs +0 -40
- package/esm2022/app/data-display/data-toolbar/data-toolbar.component.mjs +0 -12
- package/esm2022/app/data-display/details-field/details-field.component.mjs +0 -21
- package/esm2022/app/data-display/details-view/details-view.component.mjs +0 -44
- package/esm2022/app/data-display/empty-state/empty-state-overlay.util.mjs +0 -19
- package/esm2022/app/data-display/empty-state/empty-state.component.mjs +0 -30
- package/esm2022/app/data-display/index.mjs +0 -19
- package/esm2022/app/data-display/list-item/list-item.component.mjs +0 -59
- package/esm2022/app/data-display/stat-card/stat-card.component.mjs +0 -59
- package/esm2022/app/data-display/status-badge/status-badge.component.mjs +0 -41
- package/esm2022/app/data-display/table-empty-state/table-empty-state.component.mjs +0 -31
- package/esm2022/app/data-display/table-toolbar/table-toolbar.component.mjs +0 -22
- package/esm2022/app/dialogs/_models/lib-dialog-size.model.mjs +0 -8
- package/esm2022/app/dialogs/_utils/app-lib-light-block-scroll-strategy.mjs +0 -22
- package/esm2022/app/dialogs/_utils/lib-dialog-panel-classes.mjs +0 -6
- package/esm2022/app/dialogs/app-dialog/app-dialog.component.mjs +0 -200
- package/esm2022/app/dialogs/app-dialog/dialog-footer.directive.mjs +0 -15
- package/esm2022/app/dialogs/confirm-dialog/confirm-dialog-data.model.mjs +0 -2
- package/esm2022/app/dialogs/confirm-dialog/confirm-dialog.component.mjs +0 -36
- package/esm2022/app/dialogs/confirm-dialog/confirm-dialog.service.mjs +0 -47
- package/esm2022/app/dialogs/index.mjs +0 -12
- package/esm2022/app/dialogs/loading-dialog/loading-dialog-data.model.mjs +0 -2
- package/esm2022/app/dialogs/loading-dialog/loading-dialog.component.mjs +0 -19
- package/esm2022/app/dialogs/loading-dialog/loading-dialog.service.mjs +0 -38
- package/esm2022/app/dialogs/toast/toast-host.component.mjs +0 -65
- package/esm2022/app/dialogs/toast/toast.models.mjs +0 -2
- package/esm2022/app/dialogs/toast/toast.service.mjs +0 -76
- package/esm2022/app/fields/checkbox-fields/_base/boolean-field.directive.mjs +0 -158
- package/esm2022/app/fields/checkbox-fields/checkbox-field/checkbox-field.component.mjs +0 -36
- package/esm2022/app/fields/checkbox-fields/index.mjs +0 -4
- package/esm2022/app/fields/checkbox-fields/switch-field/switch-field.component.mjs +0 -35
- package/esm2022/app/fields/dropdown-fields/_base/dropdown-base/dropdown-base.component.mjs +0 -117
- package/esm2022/app/fields/dropdown-fields/_base/dropdown-multi-option-field.base.mjs +0 -152
- package/esm2022/app/fields/dropdown-fields/_base/dropdown-option-field.base.mjs +0 -149
- package/esm2022/app/fields/dropdown-fields/_base/dropdown-trigger-blur.util.mjs +0 -32
- package/esm2022/app/fields/dropdown-fields/_models/dropdown-list-bindings.model.mjs +0 -2
- package/esm2022/app/fields/dropdown-fields/_models/dropdown-search-page-requested.model.mjs +0 -2
- package/esm2022/app/fields/dropdown-fields/_models/index.mjs +0 -2
- package/esm2022/app/fields/dropdown-fields/_models/select-option.model.mjs +0 -2
- package/esm2022/app/fields/dropdown-fields/_models/select-pagination.model.mjs +0 -2
- package/esm2022/app/fields/dropdown-fields/dropdown-search-field/dropdown-search-field.component.mjs +0 -520
- package/esm2022/app/fields/dropdown-fields/index.mjs +0 -7
- package/esm2022/app/fields/dropdown-fields/multiselect-field/multiselect-field.component.mjs +0 -379
- package/esm2022/app/fields/dropdown-fields/select-field/select-field.component.mjs +0 -359
- package/esm2022/app/fields/input-fields/_base/base-field.component.mjs +0 -151
- package/esm2022/app/fields/input-fields/_base/base-field.directive.mjs +0 -224
- package/esm2022/app/fields/input-fields/_base/masked-text-field.base.mjs +0 -135
- package/esm2022/app/fields/input-fields/_base/ng-control-field.directive.mjs +0 -127
- package/esm2022/app/fields/input-fields/_models/field-common-inputs.model.mjs +0 -2
- package/esm2022/app/fields/input-fields/_models/index.mjs +0 -2
- package/esm2022/app/fields/input-fields/_utils/mask-complete.validators.mjs +0 -61
- package/esm2022/app/fields/input-fields/_utils/mask-format.utils.mjs +0 -40
- package/esm2022/app/fields/input-fields/cep-field/cep-field.component.mjs +0 -48
- package/esm2022/app/fields/input-fields/cpf-cnpj-field/cpf-cnpj-field.component.mjs +0 -61
- package/esm2022/app/fields/input-fields/date-field/date-field.component.mjs +0 -147
- package/esm2022/app/fields/input-fields/decimal-field/decimal-field.component.mjs +0 -166
- package/esm2022/app/fields/input-fields/index.mjs +0 -22
- package/esm2022/app/fields/input-fields/input-mask-field/input-mask-field.component.mjs +0 -52
- package/esm2022/app/fields/input-fields/integer-field/integer-field.component.mjs +0 -143
- package/esm2022/app/fields/input-fields/password-field/password-field.component.mjs +0 -130
- package/esm2022/app/fields/input-fields/phone-field/phone-field.component.mjs +0 -66
- package/esm2022/app/fields/input-fields/text-field/text-field.component.mjs +0 -90
- package/esm2022/app/fields/input-fields/textarea-field/textarea-field.component.mjs +0 -125
- package/esm2022/app/form-layout/_models/form-layout.model.mjs +0 -48
- package/esm2022/app/form-layout/_models/form-tabs.model.mjs +0 -2
- package/esm2022/app/form-layout/_models/index.mjs +0 -2
- package/esm2022/app/form-layout/_models/validation-summary.model.mjs +0 -2
- package/esm2022/app/form-layout/form-actions/form-actions.component.mjs +0 -55
- package/esm2022/app/form-layout/form-col/form-col.component.mjs +0 -76
- package/esm2022/app/form-layout/form-group/form-group.component.mjs +0 -358
- package/esm2022/app/form-layout/form-group/form-path.utils.mjs +0 -65
- package/esm2022/app/form-layout/form-group/form-root-invalid-ui-refresh.util.mjs +0 -54
- package/esm2022/app/form-layout/form-row/form-row.component.mjs +0 -49
- package/esm2022/app/form-layout/form-section/form-section.component.mjs +0 -43
- package/esm2022/app/form-layout/form-tab/form-tab.component.mjs +0 -67
- package/esm2022/app/form-layout/form-tabs/form-tabs.component.mjs +0 -126
- package/esm2022/app/form-layout/index.mjs +0 -14
- package/esm2022/app/form-layout/layout-stack/layout-stack.component.mjs +0 -56
- package/esm2022/app/form-layout/validation-summary/validation-summary.component.mjs +0 -343
- package/esm2022/app/loading/skeleton-loading/index.mjs +0 -7
- package/esm2022/app/loading/skeleton-loading/skeleton-block/skeleton-block.component.mjs +0 -43
- package/esm2022/app/loading/skeleton-loading/skeleton-card/skeleton-card.component.mjs +0 -23
- package/esm2022/app/loading/skeleton-loading/skeleton-field-shell/skeleton-field-shell.component.mjs +0 -34
- package/esm2022/app/loading/skeleton-loading/skeleton-list/skeleton-list.component.mjs +0 -38
- package/esm2022/app/loading/skeleton-loading/skeleton-table/skeleton-table.component.mjs +0 -37
- package/esm2022/app/loading/skeleton-loading/skeleton-text/skeleton-text.component.mjs +0 -45
- package/esm2022/app/menus/_models/drawer-side.model.mjs +0 -8
- package/esm2022/app/menus/_models/drawer-size.model.mjs +0 -8
- package/esm2022/app/menus/_models/menu-dropdown-placement.model.mjs +0 -12
- package/esm2022/app/menus/_models/menu-item.model.mjs +0 -6
- package/esm2022/app/menus/_utils/menu-connected-positions.util.mjs +0 -41
- package/esm2022/app/menus/_utils/menu-rows.util.mjs +0 -39
- package/esm2022/app/menus/_utils/submenu-connected-positions.util.mjs +0 -23
- package/esm2022/app/menus/action-menu/action-menu.component.mjs +0 -48
- package/esm2022/app/menus/context-menu/context-menu.component.mjs +0 -112
- package/esm2022/app/menus/drawer/drawer.component.mjs +0 -142
- package/esm2022/app/menus/dropdown-menu/dropdown-menu.component.mjs +0 -99
- package/esm2022/app/menus/index.mjs +0 -11
- package/esm2022/app/menus/menu-divider/menu-divider.component.mjs +0 -14
- package/esm2022/app/menus/menu-group/menu-group.component.mjs +0 -32
- package/esm2022/app/menus/menu-list/menu-list.component.mjs +0 -399
- package/esm2022/app/overlay/_models/overlay-placement.model.mjs +0 -11
- package/esm2022/app/overlay/_utils/anchored-overlay-positions.util.mjs +0 -84
- package/esm2022/app/overlay/anchored-overlay/anchored-overlay.component.mjs +0 -121
- package/esm2022/app/overlay/index.mjs +0 -21
- package/esm2022/app/overlay/popover/popover-body-template.directive.mjs +0 -17
- package/esm2022/app/overlay/popover/popover-footer-template.directive.mjs +0 -17
- package/esm2022/app/overlay/popover/popover-trigger.directive.mjs +0 -15
- package/esm2022/app/overlay/popover/popover.component.mjs +0 -93
- package/esm2022/app/overlay/tooltip/tooltip-panel-template.directive.mjs +0 -20
- package/esm2022/app/overlay/tooltip/tooltip.component.mjs +0 -118
- package/esm2022/app/theme/app-theme.service.mjs +0 -49
- package/esm2022/app/theme/index.mjs +0 -2
- package/esm2022/structra-public-api.mjs +0 -18
- package/esm2022/structra-ui.mjs +0 -5
- package/esm2022/structra-version.mjs +0 -3
- package/fesm2022/structra-ui.mjs +0 -8971
- package/fesm2022/structra-ui.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/structra-public-api.d.ts +0 -17
- package/structra-version.d.ts +0 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "structra-ui",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.15",
|
|
4
4
|
"description": "Biblioteca de componentes Angular da StructraLab (UI reutilizável).",
|
|
5
5
|
"homepage": "https://structralab.com/",
|
|
6
6
|
"license": "MIT",
|
|
@@ -17,6 +17,11 @@
|
|
|
17
17
|
"structra-ui",
|
|
18
18
|
"structralab"
|
|
19
19
|
],
|
|
20
|
+
"schematics": "./scripts/collection.json",
|
|
21
|
+
"files": [
|
|
22
|
+
"dist/",
|
|
23
|
+
"scripts/"
|
|
24
|
+
],
|
|
20
25
|
"peerDependencies": {
|
|
21
26
|
"@angular/animations": ">=17.0.0 <22.0.0",
|
|
22
27
|
"@angular/common": ">=17.0.0 <22.0.0",
|
|
@@ -32,9 +37,6 @@
|
|
|
32
37
|
"@angular/router": {
|
|
33
38
|
"optional": true
|
|
34
39
|
},
|
|
35
|
-
"@angular/cdk": {
|
|
36
|
-
"optional": true
|
|
37
|
-
},
|
|
38
40
|
"@angular/material": {
|
|
39
41
|
"optional": true
|
|
40
42
|
},
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Formatação e normalização de data/hora no padrão pt-BR (lib ui-fields).
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Exibe data como dd/mm/aaaa; com `showTimeHours`, dd/mm/aaaa hh:mm:ss (24h).
|
|
6
|
-
*/
|
|
7
|
-
export declare function formatDateTimePtBr(date: Date, showTimeHours: boolean): string;
|
|
8
|
-
/**
|
|
9
|
-
* Interpreta valor vindo do formulário / API.
|
|
10
|
-
* Aceita data local sem fuso (`YYYY-MM-DD` ou `YYYY-MM-DDTHH:mm:ss`), `Date`, número ou ISO com `Z`.
|
|
11
|
-
*/
|
|
12
|
-
export declare function parseUiFieldDateValue(value: unknown): Date | null;
|
|
13
|
-
/**
|
|
14
|
-
* Valor persistido no `FormControl`: horário de parede local, sem `Z`
|
|
15
|
-
* (evita 14:59 no input virar 17:59 no `JSON.stringify` de `Date`).
|
|
16
|
-
*/
|
|
17
|
-
export declare function formatUiFieldDateValue(d: Date, showTimeHours: boolean): string;
|
|
18
|
-
/** @deprecated use {@link parseUiFieldDateValue} */
|
|
19
|
-
export declare function normalizeFormDateValue(value: unknown): Date | null;
|
|
20
|
-
/**
|
|
21
|
-
* Data escolhida no calendário: meia-noite local, ou com `showTimeHours` a hora completa
|
|
22
|
-
* (h, min, s, ms) do instante da seleção.
|
|
23
|
-
*/
|
|
24
|
-
export declare function applyPickedCalendarDate(picked: Date, showTimeHours: boolean): Date;
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utilitários pt-BR fixo: vírgula decimal, ponto milhar, duas casas na formatação final.
|
|
3
|
-
*/
|
|
4
|
-
export { formatIntegerThousandsBr } from './integer-br.utils';
|
|
5
|
-
export declare function sanitizeDecimalBrInput(raw: string): string;
|
|
6
|
-
/**
|
|
7
|
-
* Remove pontos e interpreta a última vírgula como separador decimal.
|
|
8
|
-
* Retorna apenas dígitos na parte inteira e até 2 na fracionária.
|
|
9
|
-
*/
|
|
10
|
-
export declare function extractDecimalBrParts(rawDisplay: string): {
|
|
11
|
-
intDigits: string;
|
|
12
|
-
fracDigits: string;
|
|
13
|
-
hasComma: boolean;
|
|
14
|
-
};
|
|
15
|
-
/**
|
|
16
|
-
* Monta o texto exibido durante a digitação (milhares com ponto, vírgula decimal).
|
|
17
|
-
*/
|
|
18
|
-
export declare function buildDecimalBrDisplay(parts: {
|
|
19
|
-
intDigits: string;
|
|
20
|
-
fracDigits: string;
|
|
21
|
-
hasComma: boolean;
|
|
22
|
-
}): string;
|
|
23
|
-
/**
|
|
24
|
-
* Posição semântica do cursor para remapear após reformatar.
|
|
25
|
-
*/
|
|
26
|
-
export declare function semanticCaretAt(value: string, caret: number): {
|
|
27
|
-
intCount: number;
|
|
28
|
-
afterComma: boolean;
|
|
29
|
-
fracCount: number;
|
|
30
|
-
};
|
|
31
|
-
/**
|
|
32
|
-
* Índice do caret no texto formatado a partir da posição semântica.
|
|
33
|
-
*/
|
|
34
|
-
export declare function caretIndexFromSemantic(display: string, target: {
|
|
35
|
-
intCount: number;
|
|
36
|
-
afterComma: boolean;
|
|
37
|
-
fracCount: number;
|
|
38
|
-
}): number;
|
|
39
|
-
/**
|
|
40
|
-
* String passível de parseDecimalBr a partir das partes editáveis.
|
|
41
|
-
*/
|
|
42
|
-
export declare function buildDecimalBrParseString(parts: {
|
|
43
|
-
intDigits: string;
|
|
44
|
-
fracDigits: string;
|
|
45
|
-
hasComma: boolean;
|
|
46
|
-
}): string;
|
|
47
|
-
/**
|
|
48
|
-
* Interpreta string já sanitizada e retorna número com até 2 casas decimais (arredondamento).
|
|
49
|
-
* Vazio → null. Vírgula como separador decimal; pontos são removidos da parte inteira.
|
|
50
|
-
*/
|
|
51
|
-
export declare function parseDecimalBr(sanitized: string): number | null;
|
|
52
|
-
export declare function formatDecimalBr(value: number): string;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { UiSelectOption } from '../fields/dropdown-fields/_models/select-option.model';
|
|
2
|
-
/** Unidades federativas do Brasil (nome + sigla). Ordem alfabética por nome. */
|
|
3
|
-
export declare const BR_ESTADOS_NOME_SIGLA: ReadonlyArray<{
|
|
4
|
-
nome: string;
|
|
5
|
-
sigla: string;
|
|
6
|
-
}>;
|
|
7
|
-
export declare function mapEstadosToOptions(slice: ReadonlyArray<{
|
|
8
|
-
nome: string;
|
|
9
|
-
sigla: string;
|
|
10
|
-
}>): UiSelectOption<string>[];
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Formatação pt-BR para inteiros: apenas separador de milhar com ponto.
|
|
3
|
-
* Usado pelo campo inteiro e pela parte inteira do decimal.
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Formata sequência de dígitos com pontos de milhar (ex.: 1234567 → 1.234.567).
|
|
7
|
-
* Aceita string vazia; não normaliza zeros à esquerda.
|
|
8
|
-
*/
|
|
9
|
-
export declare function formatIntegerThousandsBr(intDigits: string): string;
|
|
10
|
-
/**
|
|
11
|
-
* Quantidade de dígitos à esquerda do caret na máscara (pontos ignorados).
|
|
12
|
-
*/
|
|
13
|
-
export declare function semanticIntegerDigitCountLeft(display: string, caret: number): number;
|
|
14
|
-
/**
|
|
15
|
-
* Índice do caret após o enésimo dígito na string formatada (fim se não houver tantos).
|
|
16
|
-
*/
|
|
17
|
-
export declare function caretIndexFromIntegerDigitCount(display: string, digitCount: number): number;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Bloqueio de scroll global **alinhado ao CDK** (`BlockScrollStrategy`):
|
|
3
|
-
* classe `cdk-global-scrollblock` no `documentElement` + deslocamento `left`/`top`
|
|
4
|
-
* para congelar a posição de scroll.
|
|
5
|
-
*
|
|
6
|
-
* Também define `overflow: hidden` no `body` enquanto o lock está activo — o `html`
|
|
7
|
-
* **não** usa `overflow-y: scroll` (isso forçava barra no viewport sem necessidade).
|
|
8
|
-
*
|
|
9
|
-
* Requer regras CSS em `styles.scss` para `.cdk-global-scrollblock` e
|
|
10
|
-
* `[data-app-scroll-lock]`.
|
|
11
|
-
*/
|
|
12
|
-
export interface ScrollLockSnapshot {
|
|
13
|
-
readonly htmlLeft: string;
|
|
14
|
-
readonly htmlTop: string;
|
|
15
|
-
readonly scrollX: number;
|
|
16
|
-
readonly scrollY: number;
|
|
17
|
-
readonly bodyOverflow: string;
|
|
18
|
-
readonly bodyTouchAction: string;
|
|
19
|
-
}
|
|
20
|
-
/** Aplica o mesmo padrão visual do overlay CDK Dialog (confirm, etc.). */
|
|
21
|
-
export declare function lockPageScrollCdkStyle(): ScrollLockSnapshot;
|
|
22
|
-
export declare function unlockPageScrollCdkStyle(s: ScrollLockSnapshot): void;
|
|
23
|
-
/**
|
|
24
|
-
* Bloqueio de scroll para o `app-dialog` declarativo: **sem** `position: fixed` nem `left`/`top`
|
|
25
|
-
* negativos no `documentElement` (padrão CDK em {@link lockPageScrollCdkStyle}).
|
|
26
|
-
*
|
|
27
|
-
* Com esse padrão, em Chromium/WebKit o `position: fixed` do scrim deixa de ficar ancorado ao
|
|
28
|
-
* `html` deslocado — evita faixa de conteúdo visível no topo e scrim branco/cinza errado em
|
|
29
|
-
* apps onde o `body` faz scroll (ex.: site de documentação).
|
|
30
|
-
*/
|
|
31
|
-
export interface AppDialogScrollLockSnapshot {
|
|
32
|
-
readonly scrollX: number;
|
|
33
|
-
readonly scrollY: number;
|
|
34
|
-
readonly htmlOverflow: string;
|
|
35
|
-
readonly bodyOverflow: string;
|
|
36
|
-
readonly bodyTouchAction: string;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Incrementa um contador de aninhamento: o primeiro lock aplica o DOM; locks interiores
|
|
40
|
-
* (ex.: `app-dialog` + CDK Dialog) só incrementam a profundidade.
|
|
41
|
-
*/
|
|
42
|
-
export declare function lockPageScrollAppDialog(): AppDialogScrollLockSnapshot;
|
|
43
|
-
/** Par com {@link lockPageScrollAppDialog}; o snapshot pode ser ignorado — usa-se a pilha interna. */
|
|
44
|
-
export declare function unlockPageScrollAppDialog(_s: AppDialogScrollLockSnapshot): void;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Segmento do filo de navegação (`app-breadcrumb`).
|
|
3
|
-
* Prioridade de navegação: se `route` estiver definido, usa-se `RouterLink`; senão, `href` (âncora nativa).
|
|
4
|
-
*/
|
|
5
|
-
export interface BreadcrumbItem {
|
|
6
|
-
label: string;
|
|
7
|
-
/** Rota Angular (`routerLink`) quando o segmento é navegável dentro da app. */
|
|
8
|
-
route?: string | readonly unknown[];
|
|
9
|
-
/**
|
|
10
|
-
* URL quando não se usa o router (ex.: link externo). Ignorado se `route` estiver definido.
|
|
11
|
-
*/
|
|
12
|
-
href?: string;
|
|
13
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { TemplateRef } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Marca o `ng-template` cuja instância é projectada na barra lateral (desktop) e no `app-drawer` (mobile).
|
|
5
|
-
*
|
|
6
|
-
* ```html
|
|
7
|
-
* <app-shell>
|
|
8
|
-
* <ng-template appShellSidebar>
|
|
9
|
-
* <app-sidebar ... />
|
|
10
|
-
* </ng-template>
|
|
11
|
-
* ...
|
|
12
|
-
* </app-shell>
|
|
13
|
-
* ```
|
|
14
|
-
*/
|
|
15
|
-
export declare class AppShellSidebarTemplateDirective {
|
|
16
|
-
readonly templateRef: TemplateRef<any>;
|
|
17
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppShellSidebarTemplateDirective, never>;
|
|
18
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<AppShellSidebarTemplateDirective, "ng-template[appShellSidebar]", never, {}, {}, never, never, true, never>;
|
|
19
|
-
}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { EventEmitter, OnInit, TemplateRef } from '@angular/core';
|
|
2
|
-
import { DrawerSide } from '../menus/_models/drawer-side.model';
|
|
3
|
-
import { DrawerSize } from '../menus/_models/drawer-size.model';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Estrutura principal: barra lateral, topo e conteúdo. Em mobile a lateral projecta-se no `app-drawer`.
|
|
7
|
-
*
|
|
8
|
-
* Use `exportAs: 'appShell'` e `toggleMobileNav` / `toggleSidebarCollapsed` a partir da topbar.
|
|
9
|
-
*/
|
|
10
|
-
export declare class AppShellComponent implements OnInit {
|
|
11
|
-
private readonly bp;
|
|
12
|
-
private readonly cdr;
|
|
13
|
-
private readonly destroyRef;
|
|
14
|
-
private readonly theme;
|
|
15
|
-
protected get hostThemeClasses(): string;
|
|
16
|
-
private readonly sidebarSlot?;
|
|
17
|
-
/** Conteúdo lateral (obrigatório): `<ng-template appShellSidebar>...</ng-template>`. */
|
|
18
|
-
get sidebarTemplate(): TemplateRef<unknown> | null;
|
|
19
|
-
/** Barra lateral estreita (ícones + compressão de texto na lista). */
|
|
20
|
-
sidebarCollapsed: boolean;
|
|
21
|
-
readonly sidebarCollapsedChange: EventEmitter<boolean>;
|
|
22
|
-
/** Estado do drawer mobile (usar `[(mobileNavOpen)]` para controlar o menu hamburger). */
|
|
23
|
-
mobileNavOpen: boolean;
|
|
24
|
-
readonly mobileNavOpenChange: EventEmitter<boolean>;
|
|
25
|
-
/** Consulta CDK para modo mobile (por omissão igual à vista adaptativa). */
|
|
26
|
-
mobileLayoutQuery: string;
|
|
27
|
-
isMobileLayout: boolean;
|
|
28
|
-
readonly DrawerSide: typeof DrawerSide;
|
|
29
|
-
readonly DrawerSize: typeof DrawerSize;
|
|
30
|
-
ngOnInit(): void;
|
|
31
|
-
onMobileDrawerOpenChange(next: boolean): void;
|
|
32
|
-
/** Emite alteração; com `[(mobileNavOpen)]` no pai o `@Input` actualiza o estado do drawer. */
|
|
33
|
-
private emitMobileNavOpen;
|
|
34
|
-
toggleMobileNav(): void;
|
|
35
|
-
toggleSidebarCollapsed(): void;
|
|
36
|
-
closeMobileNav(): void;
|
|
37
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppShellComponent, never>;
|
|
38
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppShellComponent, "app-shell", ["appShell"], { "sidebarCollapsed": { "alias": "sidebarCollapsed"; "required": false; }; "mobileNavOpen": { "alias": "mobileNavOpen"; "required": false; }; "mobileLayoutQuery": { "alias": "mobileLayoutQuery"; "required": false; }; }, { "sidebarCollapsedChange": "sidebarCollapsedChange"; "mobileNavOpenChange": "mobileNavOpenChange"; }, ["sidebarSlot"], ["[appShellTopbar]", "*"], true, never>;
|
|
39
|
-
static ngAcceptInputType_sidebarCollapsed: unknown;
|
|
40
|
-
static ngAcceptInputType_mobileNavOpen: unknown;
|
|
41
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { BreadcrumbItem } from '../_models/breadcrumb-item.model';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Filo hierárquico com `nav` + lista ordenada; último segmento com `aria-current="page"`.
|
|
5
|
-
*/
|
|
6
|
-
export declare class AppBreadcrumbComponent {
|
|
7
|
-
items: readonly BreadcrumbItem[];
|
|
8
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppBreadcrumbComponent, never>;
|
|
9
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppBreadcrumbComponent, "app-breadcrumb", never, { "items": { "alias": "items"; "required": true; }; }, {}, never, never, true, never>;
|
|
10
|
-
}
|
package/app/app-shell/index.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* **App Shell & Navigation** — estrutura de aplicação (barra lateral, topo, filo, usuário).
|
|
3
|
-
*
|
|
4
|
-
* - **`AppShellComponent`**: grade principal; em viewports estreitos a sidebar projeta-se em `app-drawer` (`menus/`).
|
|
5
|
-
* - **`AppSidebarComponent`**: delega em `app-menu-list` (`MenuNodeItem`, teclado, submenus); `[appSidebarToolbar]` + **`AppShellSidebarToggleComponent`** no topo (recolher).
|
|
6
|
-
* - **`AppTopbarComponent`**: projeção por zonas (`appTopbarStart` / `appTopbarTitle` / `appTopbarEnd`).
|
|
7
|
-
* - **`AppUserMenuComponent`**: `app-dropdown-menu` com gatilho avatar/nome (sem menu duplicado).
|
|
8
|
-
* - **`AppBreadcrumbComponent`**: `nav` + lista; segmentos com `route` ou `href`.
|
|
9
|
-
*/
|
|
10
|
-
export { APP_SIDEBAR_LAYOUT_DURATION_MS, APP_SIDEBAR_LABEL_REVEAL_LAG_MS, APP_SIDEBAR_NAV_REVEAL_TOTAL_MS, } from './sidebar-reveal.constants';
|
|
11
|
-
export { AppShellComponent } from './app-shell.component';
|
|
12
|
-
export { AppShellSidebarTemplateDirective } from './app-shell-sidebar-template.directive';
|
|
13
|
-
export { AppSidebarComponent } from './sidebar/sidebar.component';
|
|
14
|
-
export { AppSidebarToolbarDirective } from './sidebar/app-sidebar-toolbar.directive';
|
|
15
|
-
export { AppShellSidebarToggleComponent } from './sidebar/shell-sidebar-toggle.component';
|
|
16
|
-
export { AppTopbarComponent } from './topbar/topbar.component';
|
|
17
|
-
export { AppUserMenuComponent } from './user-menu/user-menu.component';
|
|
18
|
-
export { AppBreadcrumbComponent } from './breadcrumb/breadcrumb.component';
|
|
19
|
-
export type { BreadcrumbItem } from './_models/breadcrumb-item.model';
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
/**
|
|
3
|
-
* Marca conteúdo a projectar no topo da sidebar (ex.: botão recolher/expandir).
|
|
4
|
-
*
|
|
5
|
-
* ```html
|
|
6
|
-
* <app-sidebar [items]="nav">
|
|
7
|
-
* <app-shell-sidebar-toggle appSidebarToolbar [collapsed]="collapsed" (toggle)="onToggle()" />
|
|
8
|
-
* </app-sidebar>
|
|
9
|
-
* ```
|
|
10
|
-
*/
|
|
11
|
-
export declare class AppSidebarToolbarDirective {
|
|
12
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppSidebarToolbarDirective, never>;
|
|
13
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<AppSidebarToolbarDirective, "[appSidebarToolbar]", never, {}, {}, never, never, true, never>;
|
|
14
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Botão só ícone (setas «abrir/fechar») para recolher/expandir a largura da lateral.
|
|
5
|
-
* Na demo, usar com `appSidebarToolbar` projectado em `app-sidebar`.
|
|
6
|
-
*/
|
|
7
|
-
export declare class AppShellSidebarToggleComponent {
|
|
8
|
-
/** `true` quando a lateral está estreita / recolhida. */
|
|
9
|
-
collapsed: boolean;
|
|
10
|
-
/** Rótulos acessíveis quando `collapsed` é `true` (accção: expandir). */
|
|
11
|
-
expandLabel: string;
|
|
12
|
-
/** Rótulos quando `collapsed` é `false` (accção: recolher). */
|
|
13
|
-
collapseLabel: string;
|
|
14
|
-
readonly toggle: EventEmitter<void>;
|
|
15
|
-
onClick(): void;
|
|
16
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppShellSidebarToggleComponent, never>;
|
|
17
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppShellSidebarToggleComponent, "app-shell-sidebar-toggle", never, { "collapsed": { "alias": "collapsed"; "required": false; }; "expandLabel": { "alias": "expandLabel"; "required": false; }; "collapseLabel": { "alias": "collapseLabel"; "required": false; }; }, { "toggle": "toggle"; }, never, never, true, never>;
|
|
18
|
-
static ngAcceptInputType_collapsed: unknown;
|
|
19
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
|
|
2
|
-
import type { MenuNodeItem } from '../../menus/_models/menu-item.model';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* Navegação lateral com o mesmo modelo `MenuNodeItem` dos menus da lib (grupos, submenus, teclado).
|
|
6
|
-
* Com `collapsed`, `app-menu-list` usa `compressText`: rótulos de grupo (ex. «Principal») ficam ocultos;
|
|
7
|
-
* itens mostram só ícones com `title` / `aria-label` para acessibilidade.
|
|
8
|
-
*/
|
|
9
|
-
export declare class AppSidebarComponent<T extends string = string> implements OnChanges {
|
|
10
|
-
private readonly theme;
|
|
11
|
-
private readonly destroyRef;
|
|
12
|
-
/**
|
|
13
|
-
* Garante `.app-library-theme` + `theme-*` no host para tokens `--app-color-nav-*` e lista
|
|
14
|
-
* herdarem a paleta activa (útil fora da demo ou sem antepassado tematizado).
|
|
15
|
-
*/
|
|
16
|
-
protected get hostThemeClasses(): string;
|
|
17
|
-
items: readonly MenuNodeItem<T>[];
|
|
18
|
-
menuId: string;
|
|
19
|
-
/** Sincronizar com o item de navegação activo (realce persistente). */
|
|
20
|
-
selectedItemId: T | null;
|
|
21
|
-
/** Modo estreito: só ícones + `compressText` na lista (rótulos via `title` / `aria-label`). */
|
|
22
|
-
collapsed: boolean;
|
|
23
|
-
readonly itemSelect: EventEmitter<T>;
|
|
24
|
-
/**
|
|
25
|
-
* Valor efectivo de `compressText` em `app-menu-list`: ao expandir, mantém-se comprimido
|
|
26
|
-
* até a lateral terminar a animação de largura (evita flicker de texto).
|
|
27
|
-
*/
|
|
28
|
-
readonly listCompressText: import("@angular/core").WritableSignal<boolean>;
|
|
29
|
-
private listRevealTimeoutId;
|
|
30
|
-
constructor();
|
|
31
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
32
|
-
private clearListRevealTimeout;
|
|
33
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppSidebarComponent<any>, never>;
|
|
34
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppSidebarComponent<any>, "app-sidebar", never, { "items": { "alias": "items"; "required": true; }; "menuId": { "alias": "menuId"; "required": false; }; "selectedItemId": { "alias": "selectedItemId"; "required": false; }; "collapsed": { "alias": "collapsed"; "required": false; }; }, { "itemSelect": "itemSelect"; }, never, ["[appSidebarToolbar]"], true, never>;
|
|
35
|
-
static ngAcceptInputType_collapsed: unknown;
|
|
36
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Duração da animação de largura da lateral (`flex-basis` / `width` / `padding`).
|
|
3
|
-
* Manter alinhado com `$app-sidebar-layout-duration` em `_sidebar-reveal.scss`.
|
|
4
|
-
*/
|
|
5
|
-
export declare const APP_SIDEBAR_LAYOUT_DURATION_MS = 0;
|
|
6
|
-
/** Folga após o layout, antes de revelar rótulos (evita texto a “comprimir”). */
|
|
7
|
-
export declare const APP_SIDEBAR_LABEL_REVEAL_LAG_MS = 48;
|
|
8
|
-
export declare const APP_SIDEBAR_NAV_REVEAL_TOTAL_MS: number;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
/**
|
|
3
|
-
* Barra superior com três zonas de projeção: início (ex.: menu), título, fim (ex.: usuário).
|
|
4
|
-
*/
|
|
5
|
-
export declare class AppTopbarComponent {
|
|
6
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppTopbarComponent, never>;
|
|
7
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppTopbarComponent, "app-topbar", never, {}, {}, never, ["[appTopbarStart]", "[appTopbarTitle]", "[appTopbarEnd]"], true, never>;
|
|
8
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from '@angular/core';
|
|
2
|
-
import { MenuDropdownPlacement } from '../../menus/_models/menu-dropdown-placement.model';
|
|
3
|
-
import type { MenuNodeItem } from '../../menus/_models/menu-item.model';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Menu do usuário: `app-dropdown-menu` com gatilho personalizado (avatar ou ícone).
|
|
7
|
-
*/
|
|
8
|
-
export declare class AppUserMenuComponent<T extends string = string> {
|
|
9
|
-
items: readonly MenuNodeItem<T>[];
|
|
10
|
-
menuId: string;
|
|
11
|
-
placement: MenuDropdownPlacement;
|
|
12
|
-
minWidthPx: number;
|
|
13
|
-
/** Texto junto ao avatar (oculto em ecrãs muito estreitos via CSS). */
|
|
14
|
-
displayName: string;
|
|
15
|
-
/** URL de imagem para avatar; sem valor usa ícone genérico. */
|
|
16
|
-
avatarUrl: string;
|
|
17
|
-
triggerLabel: string;
|
|
18
|
-
showName: boolean;
|
|
19
|
-
readonly itemSelect: EventEmitter<T>;
|
|
20
|
-
readonly openChange: EventEmitter<boolean>;
|
|
21
|
-
readonly MenuDropdownPlacement: typeof MenuDropdownPlacement;
|
|
22
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppUserMenuComponent<any>, never>;
|
|
23
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppUserMenuComponent<any>, "app-user-menu", never, { "items": { "alias": "items"; "required": true; }; "menuId": { "alias": "menuId"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "minWidthPx": { "alias": "minWidthPx"; "required": false; }; "displayName": { "alias": "displayName"; "required": false; }; "avatarUrl": { "alias": "avatarUrl"; "required": false; }; "triggerLabel": { "alias": "triggerLabel"; "required": false; }; "showName": { "alias": "showName"; "required": false; }; }, { "itemSelect": "itemSelect"; "openChange": "openChange"; }, never, never, true, never>;
|
|
24
|
-
static ngAcceptInputType_showName: unknown;
|
|
25
|
-
}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
export declare enum BaseButtonVariant {
|
|
3
|
-
Primary = "primary",
|
|
4
|
-
Secondary = "secondary",
|
|
5
|
-
/** Texto/ícone sem caixa — navegação secundária, “link” com aparência de botão acessível. */
|
|
6
|
-
Ghost = "ghost"
|
|
7
|
-
}
|
|
8
|
-
export declare enum BaseButtonType {
|
|
9
|
-
Button = "button",
|
|
10
|
-
Submit = "submit",
|
|
11
|
-
Reset = "reset"
|
|
12
|
-
}
|
|
13
|
-
export declare class BaseButtonComponent {
|
|
14
|
-
private nativeBtn?;
|
|
15
|
-
/** `submit` envia o `<form>` ancestral; use `button` para ações sem submit. */
|
|
16
|
-
type: BaseButtonType;
|
|
17
|
-
disabled: boolean;
|
|
18
|
-
/**
|
|
19
|
-
* Não interage (como `disabled`), mas com aparência em cinza (tema somente leitura),
|
|
20
|
-
* distinta do estado desabilitado genérico.
|
|
21
|
-
*/
|
|
22
|
-
readonly: boolean;
|
|
23
|
-
/**
|
|
24
|
-
* `true` (por defeito): estica à largura do contentor (útil em `app-layout-stack` com `fill`).
|
|
25
|
-
* `false`: largura só ao conteúdo (texto + padding).
|
|
26
|
-
*/
|
|
27
|
-
fullWidth: boolean;
|
|
28
|
-
/** Placeholder de carregamento (skeleton no lugar do rótulo). */
|
|
29
|
-
loading: boolean;
|
|
30
|
-
/** Estilo visual base; pode ser estendido no SCSS do projeto. */
|
|
31
|
-
variant: BaseButtonVariant;
|
|
32
|
-
/** Alias de {@link variant} (nome comum em design systems). */
|
|
33
|
-
set appearance(value: BaseButtonVariant);
|
|
34
|
-
get hostClasses(): string;
|
|
35
|
-
/** Foca o `<button>` nativo (o host do componente não é focável). */
|
|
36
|
-
focusNative(options?: FocusOptions): void;
|
|
37
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<BaseButtonComponent, never>;
|
|
38
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<BaseButtonComponent, "app-base-button", never, { "type": { "alias": "type"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "fullWidth": { "alias": "fullWidth"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; }, {}, never, ["*"], true, never>;
|
|
39
|
-
static ngAcceptInputType_disabled: unknown;
|
|
40
|
-
static ngAcceptInputType_readonly: unknown;
|
|
41
|
-
static ngAcceptInputType_fullWidth: unknown;
|
|
42
|
-
static ngAcceptInputType_loading: unknown;
|
|
43
|
-
}
|
package/app/buttons/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { BaseButtonComponent, BaseButtonType, BaseButtonVariant, } from './base-button/base-button.component';
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/** Vista mapeada por item para {@link CardListComponent}. */
|
|
2
|
-
export interface CardItemView {
|
|
3
|
-
title: string;
|
|
4
|
-
subtitle?: string;
|
|
5
|
-
/** Texto curto para o avatar (ex.: iniciais). */
|
|
6
|
-
avatarText?: string;
|
|
7
|
-
}
|
|
8
|
-
export type CardListMapFn<T> = (item: T) => CardItemView;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/** Variantes visuais do `app-status-badge` (cores semânticas da lib). */
|
|
2
|
-
export type StatusBadgeVariant = 'success' | 'error' | 'warning' | 'info' | 'neutral';
|
|
3
|
-
/** Tamanho do `app-status-badge`. */
|
|
4
|
-
export type StatusBadgeSize = 'sm' | 'md';
|
|
5
|
-
/** Linha chave → valor para `app-details-view` (modo lista). */
|
|
6
|
-
export interface DetailsViewItem {
|
|
7
|
-
label: string;
|
|
8
|
-
value?: string | null;
|
|
9
|
-
}
|
|
10
|
-
/** Tom da variação opcional no `app-stat-card` (ex.: +12% vs mês anterior). */
|
|
11
|
-
export type StatCardDeltaTone = 'positive' | 'negative' | 'neutral';
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Configuração de coluna da lib — convertida internamente para `ColDef` do AG Grid.
|
|
3
|
-
*/
|
|
4
|
-
export interface DataGridColumn<T = unknown> {
|
|
5
|
-
/** Campo no registro ou identificador lógico (ex.: `__actions` para coluna de ações). */
|
|
6
|
-
key: keyof T | string;
|
|
7
|
-
header: string;
|
|
8
|
-
width?: number;
|
|
9
|
-
flex?: number;
|
|
10
|
-
type?: 'text' | 'number' | 'actions';
|
|
11
|
-
/** Por omissão `true` para texto/número; ignorado para `actions`. */
|
|
12
|
-
sortable?: boolean;
|
|
13
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { EventEmitter, OnInit } from '@angular/core';
|
|
2
|
-
import type { DataGridColumn } from '../_models/data-grid-column.model';
|
|
3
|
-
import type { CardListMapFn } from '../_models/card-item-view.model';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/** Limite de largura para tratar como “mobile” na escolha grid vs card. */
|
|
6
|
-
export declare const ADAPTIVE_DATA_VIEW_MOBILE_QUERY = "(max-width: 767.98px)";
|
|
7
|
-
export type AdaptiveDataViewMode = 'grid' | 'card';
|
|
8
|
-
/**
|
|
9
|
-
* Escolhe **um** de `app-data-grid` ou `app-card-list` conforme breakpoint e preferências.
|
|
10
|
-
* Nunca renderiza os dois em simultâneo.
|
|
11
|
-
*/
|
|
12
|
-
export declare class AdaptiveDataViewComponent<T = unknown> implements OnInit {
|
|
13
|
-
private readonly bp;
|
|
14
|
-
private readonly cdr;
|
|
15
|
-
private readonly destroyRef;
|
|
16
|
-
items: T[];
|
|
17
|
-
gridColumns: DataGridColumn<T>[];
|
|
18
|
-
mapItem: CardListMapFn<T>;
|
|
19
|
-
pageSize: number;
|
|
20
|
-
gridHeight: string | null;
|
|
21
|
-
cardScrollMaxHeight: string | null;
|
|
22
|
-
emptyMessageGrid: string;
|
|
23
|
-
emptyMessageCard: string;
|
|
24
|
-
pagination: boolean;
|
|
25
|
-
showActionsColumn: boolean;
|
|
26
|
-
showCardItemActions: boolean;
|
|
27
|
-
scrollBatchSize: number;
|
|
28
|
-
showCardFooter: boolean;
|
|
29
|
-
/** Estado de carregamento reposto no grid ou na lista conforme a vista ativa. */
|
|
30
|
-
loading: boolean;
|
|
31
|
-
/**
|
|
32
|
-
* Mostra uma linha de contagem **abaixo** da grade ou da lista (incluindo paginação interna).
|
|
33
|
-
* Texto padrão em português; use `{count}` como marcador do número de linhas em `items`.
|
|
34
|
-
*/
|
|
35
|
-
showResultCount: boolean;
|
|
36
|
-
resultCountTemplate: string;
|
|
37
|
-
/** Vista quando `ADAPTIVE_DATA_VIEW_MOBILE_QUERY` corresponde. Por padrão `card`. */
|
|
38
|
-
mobileView: AdaptiveDataViewMode;
|
|
39
|
-
/** Vista quando a tela é maior. Por padrão `grid`. */
|
|
40
|
-
desktopView: AdaptiveDataViewMode;
|
|
41
|
-
readonly edit: EventEmitter<T>;
|
|
42
|
-
readonly remove: EventEmitter<T>;
|
|
43
|
-
readonly loadMore: EventEmitter<void>;
|
|
44
|
-
/** Corresponde ao breakpoint mobile. */
|
|
45
|
-
isMobileLayout: boolean;
|
|
46
|
-
ngOnInit(): void;
|
|
47
|
-
get effectiveKind(): AdaptiveDataViewMode;
|
|
48
|
-
get showGrid(): boolean;
|
|
49
|
-
get showCard(): boolean;
|
|
50
|
-
get resultCountDisplay(): string;
|
|
51
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AdaptiveDataViewComponent<any>, never>;
|
|
52
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AdaptiveDataViewComponent<any>, "app-adaptive-data-view", never, { "items": { "alias": "items"; "required": true; }; "gridColumns": { "alias": "gridColumns"; "required": true; }; "mapItem": { "alias": "mapItem"; "required": true; }; "pageSize": { "alias": "pageSize"; "required": false; }; "gridHeight": { "alias": "gridHeight"; "required": false; }; "cardScrollMaxHeight": { "alias": "cardScrollMaxHeight"; "required": false; }; "emptyMessageGrid": { "alias": "emptyMessageGrid"; "required": false; }; "emptyMessageCard": { "alias": "emptyMessageCard"; "required": false; }; "pagination": { "alias": "pagination"; "required": false; }; "showActionsColumn": { "alias": "showActionsColumn"; "required": false; }; "showCardItemActions": { "alias": "showCardItemActions"; "required": false; }; "scrollBatchSize": { "alias": "scrollBatchSize"; "required": false; }; "showCardFooter": { "alias": "showCardFooter"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "showResultCount": { "alias": "showResultCount"; "required": false; }; "resultCountTemplate": { "alias": "resultCountTemplate"; "required": false; }; "mobileView": { "alias": "mobileView"; "required": false; }; "desktopView": { "alias": "desktopView"; "required": false; }; }, { "edit": "edit"; "remove": "remove"; "loadMore": "loadMore"; }, never, never, true, never>;
|
|
53
|
-
}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
|
|
2
|
-
import type { CardItemView, CardListMapFn } from '../_models/card-item-view.model';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* - **memory**: `items` tem a lista completa (ex.: 500 em memória); só se mostram
|
|
6
|
-
* `scrollBatchSize` de cada vez até o usuário fazer scroll (fatia local).
|
|
7
|
-
* - **remote**: `items` são só as linhas já devolvidas pela API; ao fim do scroll
|
|
8
|
-
* emite `loadMore` para pedir a próxima página (SQL OFFSET/FETCH no backend).
|
|
9
|
-
*/
|
|
10
|
-
export type CardListDataMode = 'memory' | 'remote';
|
|
11
|
-
export declare class CardListComponent<T = unknown> implements OnChanges {
|
|
12
|
-
private readonly cdr;
|
|
13
|
-
items: T[];
|
|
14
|
-
loading: boolean;
|
|
15
|
-
/**
|
|
16
|
-
* Com itens já visíveis: mostra **um** skeleton no fundo (próxima página remota)
|
|
17
|
-
* para não saltar o scroll nem ocupar altura de vários cartões. O carregamento inicial
|
|
18
|
-
* continua a usar só {@link loading} (lista vazia ou refresh completo com `loading` e sem `loadingMore`).
|
|
19
|
-
*/
|
|
20
|
-
loadingMore: boolean;
|
|
21
|
-
emptyMessage: string;
|
|
22
|
-
variant: 'default';
|
|
23
|
-
mapItem: CardListMapFn<T>;
|
|
24
|
-
showItemActions: boolean;
|
|
25
|
-
trackByProp: keyof T | string;
|
|
26
|
-
dataMode: CardListDataMode;
|
|
27
|
-
/** Em modo `memory`: quantos itens revelar por cada passo de scroll. Por omissão `10`. */
|
|
28
|
-
scrollBatchSize: number;
|
|
29
|
-
scrollLoadThresholdPx: number;
|
|
30
|
-
/** Mostra o rodapé com o resumo (“X de Y”) e dica. Por omissão `true`; com `false` oculta o footer. */
|
|
31
|
-
showFooter: boolean;
|
|
32
|
-
scrollMaxHeight: string | null;
|
|
33
|
-
/**
|
|
34
|
-
* Modo **remote**: total de registros no servidor (ex.: COUNT SQL), para o texto “X de Y”.
|
|
35
|
-
* Se `null`, usa `items.length`.
|
|
36
|
-
*/
|
|
37
|
-
totalCountRemote: number | null;
|
|
38
|
-
/** Modo **remote**: existe página seguinte para pedir ao backend. */
|
|
39
|
-
hasNextPage: boolean;
|
|
40
|
-
/** Modo **remote**: pedido de mais dados (próxima página). */
|
|
41
|
-
readonly loadMore: EventEmitter<void>;
|
|
42
|
-
readonly edit: EventEmitter<T>;
|
|
43
|
-
readonly remove: EventEmitter<T>;
|
|
44
|
-
/** Modo memory: quantos cartões renderizar (fatia inicial = scrollBatchSize). */
|
|
45
|
-
visibleCount: number;
|
|
46
|
-
private loadMorePending;
|
|
47
|
-
/** Skeleton que ocupa a lista inteira (carregamento inicial / refresh com `loading`). */
|
|
48
|
-
get showFullSkeleton(): boolean;
|
|
49
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
50
|
-
get totalItemCount(): number;
|
|
51
|
-
/** Total para o rodapé “X de Y”. */
|
|
52
|
-
get totalForStatus(): number;
|
|
53
|
-
get visibleItems(): T[];
|
|
54
|
-
get scrollStatusLabel(): string;
|
|
55
|
-
get scrollAreaStyle(): Record<string, string>;
|
|
56
|
-
/** Há mais linhas para mostrar (memória) ou para pedir à API (remote). */
|
|
57
|
-
get hasMoreToReveal(): boolean;
|
|
58
|
-
viewFor(item: T): CardItemView;
|
|
59
|
-
skeletonCardIndices(): number[];
|
|
60
|
-
/** Um único cartão skeleton no fundo durante `loadingMore` (mantém o scroll estável). */
|
|
61
|
-
skeletonTailIndices(): number[];
|
|
62
|
-
trackFn: (index: number, item: T) => unknown;
|
|
63
|
-
onScroll(ev: Event): void;
|
|
64
|
-
private requestRemotePage;
|
|
65
|
-
private loadMoreMemoryChunk;
|
|
66
|
-
private resetVisibleWindow;
|
|
67
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<CardListComponent<any>, never>;
|
|
68
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<CardListComponent<any>, "app-card-list", never, { "items": { "alias": "items"; "required": true; }; "loading": { "alias": "loading"; "required": false; }; "loadingMore": { "alias": "loadingMore"; "required": false; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "mapItem": { "alias": "mapItem"; "required": true; }; "showItemActions": { "alias": "showItemActions"; "required": false; }; "trackByProp": { "alias": "trackByProp"; "required": false; }; "dataMode": { "alias": "dataMode"; "required": false; }; "scrollBatchSize": { "alias": "scrollBatchSize"; "required": false; }; "scrollLoadThresholdPx": { "alias": "scrollLoadThresholdPx"; "required": false; }; "showFooter": { "alias": "showFooter"; "required": false; }; "scrollMaxHeight": { "alias": "scrollMaxHeight"; "required": false; }; "totalCountRemote": { "alias": "totalCountRemote"; "required": false; }; "hasNextPage": { "alias": "hasNextPage"; "required": false; }; }, { "loadMore": "loadMore"; "edit": "edit"; "remove": "remove"; }, never, never, true, never>;
|
|
69
|
-
static ngAcceptInputType_loadingMore: unknown;
|
|
70
|
-
}
|