acai-ui 1.65.5
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/CHANGELOG.md +795 -0
- package/README.md +64 -0
- package/dist/acai-ui.css +14627 -0
- package/dist/components/actions/acai-ui-actions.d.ts +3 -0
- package/dist/components/async-select/acai-ui-async-select-interface.d.ts +48 -0
- package/dist/components/async-select/acai-ui-async-select-interface.d.ts.map +1 -0
- package/dist/components/async-select/acai-ui-async-select.d.ts +3 -0
- package/dist/components/badge/acai-ui-badge-interface.d.ts +20 -0
- package/dist/components/badge/acai-ui-badge-interface.d.ts.map +1 -0
- package/dist/components/badge/acai-ui-badge.d.ts +3 -0
- package/dist/components/banner/acai-ui-banner-interface.d.ts +16 -0
- package/dist/components/banner/acai-ui-banner-interface.d.ts.map +1 -0
- package/dist/components/banner/acai-ui-banner.d.ts +3 -0
- package/dist/components/button/acai-ui-button-interface.d.ts +21 -0
- package/dist/components/button/acai-ui-button-interface.d.ts.map +1 -0
- package/dist/components/button/acai-ui-button.d.ts +3 -0
- package/dist/components/card/acai-ui-card-interface.d.ts +14 -0
- package/dist/components/card/acai-ui-card-interface.d.ts.map +1 -0
- package/dist/components/card/acai-ui-card.d.ts +3 -0
- package/dist/components/chart/acai-ui-chart-interface.d.ts +190 -0
- package/dist/components/chart/acai-ui-chart-interface.d.ts.map +1 -0
- package/dist/components/chart/acai-ui-chart.d.ts +3 -0
- package/dist/components/chart/chart-a11y.d.ts +40 -0
- package/dist/components/chart/chart-a11y.d.ts.map +1 -0
- package/dist/components/chart/chart-caminhos.d.ts +91 -0
- package/dist/components/chart/chart-caminhos.d.ts.map +1 -0
- package/dist/components/chart/chart-cartesiano.d.ts +3 -0
- package/dist/components/chart/chart-dados.d.ts +74 -0
- package/dist/components/chart/chart-dados.d.ts.map +1 -0
- package/dist/components/chart/chart-escalas.d.ts +45 -0
- package/dist/components/chart/chart-escalas.d.ts.map +1 -0
- package/dist/components/chart/chart-formatar.d.ts +21 -0
- package/dist/components/chart/chart-formatar.d.ts.map +1 -0
- package/dist/components/chart/chart-gauge.d.ts +3 -0
- package/dist/components/chart/chart-headless.d.ts +29 -0
- package/dist/components/chart/chart-headless.d.ts.map +1 -0
- package/dist/components/chart/chart-imagem.d.ts +51 -0
- package/dist/components/chart/chart-imagem.d.ts.map +1 -0
- package/dist/components/chart/chart-layout.d.ts +59 -0
- package/dist/components/chart/chart-layout.d.ts.map +1 -0
- package/dist/components/chart/chart-legenda.d.ts +3 -0
- package/dist/components/chart/chart-pizza.d.ts +3 -0
- package/dist/components/chart/chart-plano.d.ts +201 -0
- package/dist/components/chart/chart-plano.d.ts.map +1 -0
- package/dist/components/chart/chart-rotulos.d.ts +10 -0
- package/dist/components/chart/chart-rotulos.d.ts.map +1 -0
- package/dist/components/chart/chart-tabela.d.ts +3 -0
- package/dist/components/chart/chart-ticks.d.ts +35 -0
- package/dist/components/chart/chart-ticks.d.ts.map +1 -0
- package/dist/components/checkbox/acai-ui-checkbox-interface.d.ts +16 -0
- package/dist/components/checkbox/acai-ui-checkbox-interface.d.ts.map +1 -0
- package/dist/components/checkbox/acai-ui-checkbox.d.ts +3 -0
- package/dist/components/chip/acai-ui-chip-interface.d.ts +17 -0
- package/dist/components/chip/acai-ui-chip-interface.d.ts.map +1 -0
- package/dist/components/chip/acai-ui-chip.d.ts +3 -0
- package/dist/components/code/acai-ui-code-interface.d.ts +44 -0
- package/dist/components/code/acai-ui-code-interface.d.ts.map +1 -0
- package/dist/components/code/acai-ui-code.d.ts +3 -0
- package/dist/components/code/dobras-json.d.ts +14 -0
- package/dist/components/code/dobras-json.d.ts.map +1 -0
- package/dist/components/confirm/acai-ui-confirm.d.ts +3 -0
- package/dist/components/container/acai-ui-container-interface.d.ts +29 -0
- package/dist/components/container/acai-ui-container-interface.d.ts.map +1 -0
- package/dist/components/container/acai-ui-container.d.ts +3 -0
- package/dist/components/date/acai-ui-date-interface.d.ts +19 -0
- package/dist/components/date/acai-ui-date-interface.d.ts.map +1 -0
- package/dist/components/date/acai-ui-date.d.ts +3 -0
- package/dist/components/date-range/acai-ui-date-range-interface.d.ts +27 -0
- package/dist/components/date-range/acai-ui-date-range-interface.d.ts.map +1 -0
- package/dist/components/date-range/acai-ui-date-range.d.ts +3 -0
- package/dist/components/datetime/acai-ui-datetime-interface.d.ts +10 -0
- package/dist/components/datetime/acai-ui-datetime-interface.d.ts.map +1 -0
- package/dist/components/datetime/acai-ui-datetime.d.ts +3 -0
- package/dist/components/dialog/acai-ui-dialog-interface.d.ts +17 -0
- package/dist/components/dialog/acai-ui-dialog-interface.d.ts.map +1 -0
- package/dist/components/dialog/acai-ui-dialog.d.ts +3 -0
- package/dist/components/divider/acai-ui-divider-interface.d.ts +5 -0
- package/dist/components/divider/acai-ui-divider-interface.d.ts.map +1 -0
- package/dist/components/divider/acai-ui-divider.d.ts +3 -0
- package/dist/components/drawer/acai-ui-drawer-interface.d.ts +97 -0
- package/dist/components/drawer/acai-ui-drawer-interface.d.ts.map +1 -0
- package/dist/components/drawer/acai-ui-drawer.d.ts +3 -0
- package/dist/components/drawer/drawer-sidebar-helper.d.ts +4 -0
- package/dist/components/drawer/drawer-sidebar-helper.d.ts.map +1 -0
- package/dist/components/dropdown/acai-ui-dropdown-interface.d.ts +35 -0
- package/dist/components/dropdown/acai-ui-dropdown-interface.d.ts.map +1 -0
- package/dist/components/dropdown/acai-ui-dropdown-item.d.ts +3 -0
- package/dist/components/dropdown/acai-ui-dropdown.d.ts +3 -0
- package/dist/components/error-log/acai-ui-error-log-interface.d.ts +59 -0
- package/dist/components/error-log/acai-ui-error-log-interface.d.ts.map +1 -0
- package/dist/components/error-log/acai-ui-error-log-json-tree.d.ts +3 -0
- package/dist/components/error-log/acai-ui-error-log-redigir.d.ts +28 -0
- package/dist/components/error-log/acai-ui-error-log-redigir.d.ts.map +1 -0
- package/dist/components/error-log/acai-ui-error-log.d.ts +3 -0
- package/dist/components/file/acai-ui-file-interface.d.ts +13 -0
- package/dist/components/file/acai-ui-file-interface.d.ts.map +1 -0
- package/dist/components/file/acai-ui-file.d.ts +3 -0
- package/dist/components/form/acai-ui-form-interface.d.ts +37 -0
- package/dist/components/form/acai-ui-form-interface.d.ts.map +1 -0
- package/dist/components/form/acai-ui-form.d.ts +3 -0
- package/dist/components/help/acai-ui-help-interface.d.ts +184 -0
- package/dist/components/help/acai-ui-help-interface.d.ts.map +1 -0
- package/dist/components/help/acai-ui-help.d.ts +3 -0
- package/dist/components/help/acai-ui-tour.d.ts +3 -0
- package/dist/components/help/tour-escolha.d.ts +62 -0
- package/dist/components/help/tour-escolha.d.ts.map +1 -0
- package/dist/components/help/tour-posicionar.d.ts +39 -0
- package/dist/components/help/tour-posicionar.d.ts.map +1 -0
- package/dist/components/help/tour-registry.d.ts +54 -0
- package/dist/components/help/tour-registry.d.ts.map +1 -0
- package/dist/components/help/use-tour-visto.d.ts +11 -0
- package/dist/components/help/use-tour-visto.d.ts.map +1 -0
- package/dist/components/icon/acai-ui-icon-interface.d.ts +12 -0
- package/dist/components/icon/acai-ui-icon-interface.d.ts.map +1 -0
- package/dist/components/icon/acai-ui-icon.d.ts +3 -0
- package/dist/components/index.d.ts +89 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/input/acai-ui-input-interface.d.ts +20 -0
- package/dist/components/input/acai-ui-input-interface.d.ts.map +1 -0
- package/dist/components/input/acai-ui-input.d.ts +3 -0
- package/dist/components/modal/acai-ui-modal-interface.d.ts +16 -0
- package/dist/components/modal/acai-ui-modal-interface.d.ts.map +1 -0
- package/dist/components/modal/acai-ui-modal.d.ts +3 -0
- package/dist/components/pagination/acai-ui-pagination-interface.d.ts +9 -0
- package/dist/components/pagination/acai-ui-pagination-interface.d.ts.map +1 -0
- package/dist/components/pagination/acai-ui-pagination.d.ts +3 -0
- package/dist/components/preferences/acai-ui-preferences-interface.d.ts +5 -0
- package/dist/components/preferences/acai-ui-preferences-interface.d.ts.map +1 -0
- package/dist/components/preferences/acai-ui-preferences.d.ts +3 -0
- package/dist/components/progress/acai-ui-progress-interface.d.ts +18 -0
- package/dist/components/progress/acai-ui-progress-interface.d.ts.map +1 -0
- package/dist/components/progress/acai-ui-progress.d.ts +3 -0
- package/dist/components/radio/acai-ui-radio-interface.d.ts +13 -0
- package/dist/components/radio/acai-ui-radio-interface.d.ts.map +1 -0
- package/dist/components/radio/acai-ui-radio.d.ts +3 -0
- package/dist/components/section/acai-ui-section.d.ts +3 -0
- package/dist/components/select/acai-ui-select-interface.d.ts +18 -0
- package/dist/components/select/acai-ui-select-interface.d.ts.map +1 -0
- package/dist/components/select/acai-ui-select.d.ts +3 -0
- package/dist/components/session-clock/acai-ui-session-clock.d.ts +3 -0
- package/dist/components/stepper/acai-ui-step-interface.d.ts +18 -0
- package/dist/components/stepper/acai-ui-step-interface.d.ts.map +1 -0
- package/dist/components/stepper/acai-ui-step.d.ts +3 -0
- package/dist/components/stepper/acai-ui-stepper-interface.d.ts +53 -0
- package/dist/components/stepper/acai-ui-stepper-interface.d.ts.map +1 -0
- package/dist/components/stepper/acai-ui-stepper.d.ts +3 -0
- package/dist/components/swagger/acai-ui-swagger-interface.d.ts +53 -0
- package/dist/components/swagger/acai-ui-swagger-interface.d.ts.map +1 -0
- package/dist/components/swagger/acai-ui-swagger-operacao.d.ts +3 -0
- package/dist/components/swagger/acai-ui-swagger-requisicao.d.ts +76 -0
- package/dist/components/swagger/acai-ui-swagger-requisicao.d.ts.map +1 -0
- package/dist/components/swagger/acai-ui-swagger-schema.d.ts +3 -0
- package/dist/components/swagger/acai-ui-swagger.d.ts +3 -0
- package/dist/components/swagger/openapi-normalizar.d.ts +51 -0
- package/dist/components/swagger/openapi-normalizar.d.ts.map +1 -0
- package/dist/components/swagger/openapi-tipos.d.ts +167 -0
- package/dist/components/swagger/openapi-tipos.d.ts.map +1 -0
- package/dist/components/table/acai-ui-table-interface.d.ts +47 -0
- package/dist/components/table/acai-ui-table-interface.d.ts.map +1 -0
- package/dist/components/table/acai-ui-table-justificativa.d.ts +3 -0
- package/dist/components/table/acai-ui-table.d.ts +3 -0
- package/dist/components/tabs/acai-ui-tab.d.ts +3 -0
- package/dist/components/tabs/acai-ui-tabs-interface.d.ts +32 -0
- package/dist/components/tabs/acai-ui-tabs-interface.d.ts.map +1 -0
- package/dist/components/tabs/acai-ui-tabs.d.ts +3 -0
- package/dist/components/time/acai-ui-time-interface.d.ts +15 -0
- package/dist/components/time/acai-ui-time-interface.d.ts.map +1 -0
- package/dist/components/time/acai-ui-time.d.ts +3 -0
- package/dist/components/toggle/acai-ui-toggle-interface.d.ts +12 -0
- package/dist/components/toggle/acai-ui-toggle-interface.d.ts.map +1 -0
- package/dist/components/toggle/acai-ui-toggle.d.ts +3 -0
- package/dist/components/tooltip/acai-ui-tooltip-interface.d.ts +9 -0
- package/dist/components/tooltip/acai-ui-tooltip-interface.d.ts.map +1 -0
- package/dist/components/tooltip/acai-ui-tooltip.d.ts +3 -0
- package/dist/components/user-menu/acai-ui-user-menu-interface.d.ts +14 -0
- package/dist/components/user-menu/acai-ui-user-menu-interface.d.ts.map +1 -0
- package/dist/components/user-menu/acai-ui-user-menu.d.ts +3 -0
- package/dist/components/validation/acai-ui-validation.d.ts +3 -0
- package/dist/constants/chart-paleta.d.ts +47 -0
- package/dist/constants/chart-paleta.d.ts.map +1 -0
- package/dist/constants/efeitos.d.ts +22 -0
- package/dist/constants/efeitos.d.ts.map +1 -0
- package/dist/constants/index.d.ts +13 -0
- package/dist/constants/index.d.ts.map +1 -0
- package/dist/constants/lista-icons.d.ts +156 -0
- package/dist/constants/lista-icons.d.ts.map +1 -0
- package/dist/constants/medidas-espacos.d.ts +15 -0
- package/dist/constants/medidas-espacos.d.ts.map +1 -0
- package/dist/constants/radius.d.ts +15 -0
- package/dist/constants/radius.d.ts.map +1 -0
- package/dist/constants/status-badge.d.ts +17 -0
- package/dist/constants/status-badge.d.ts.map +1 -0
- package/dist/hooks/filtros-url-internos.d.ts +121 -0
- package/dist/hooks/filtros-url-internos.d.ts.map +1 -0
- package/dist/hooks/index.d.ts +18 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/notify.d.ts +8 -0
- package/dist/hooks/notify.d.ts.map +1 -0
- package/dist/hooks/use-contador-sessao.d.ts +22 -0
- package/dist/hooks/use-contador-sessao.d.ts.map +1 -0
- package/dist/hooks/use-filtros-na-url.d.ts +110 -0
- package/dist/hooks/use-filtros-na-url.d.ts.map +1 -0
- package/dist/hooks/use-leitura-voz.d.ts +60 -0
- package/dist/hooks/use-leitura-voz.d.ts.map +1 -0
- package/dist/hooks/use-listagem-na-url.d.ts +185 -0
- package/dist/hooks/use-listagem-na-url.d.ts.map +1 -0
- package/dist/hooks/use-preferencias.d.ts +60 -0
- package/dist/hooks/use-preferencias.d.ts.map +1 -0
- package/dist/hooks/use-repasse-quasar.d.ts +42 -0
- package/dist/hooks/use-repasse-quasar.d.ts.map +1 -0
- package/dist/hooks/use-tamanho-elemento.d.ts +26 -0
- package/dist/hooks/use-tamanho-elemento.d.ts.map +1 -0
- package/dist/hooks/use-tela.d.ts +84 -0
- package/dist/hooks/use-tela.d.ts.map +1 -0
- package/dist/hooks/use-validacao-visual.d.ts +40 -0
- package/dist/hooks/use-validacao-visual.d.ts.map +1 -0
- package/dist/index.cjs +249 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.mjs +249 -0
- package/dist/index.mjs.map +1 -0
- package/dist/index10.cjs +24 -0
- package/dist/index10.cjs.map +1 -0
- package/dist/index10.mjs +25 -0
- package/dist/index10.mjs.map +1 -0
- package/dist/index100.cjs +51 -0
- package/dist/index100.cjs.map +1 -0
- package/dist/index100.mjs +51 -0
- package/dist/index100.mjs.map +1 -0
- package/dist/index101.cjs +143 -0
- package/dist/index101.cjs.map +1 -0
- package/dist/index101.mjs +143 -0
- package/dist/index101.mjs.map +1 -0
- package/dist/index102.cjs +137 -0
- package/dist/index102.cjs.map +1 -0
- package/dist/index102.mjs +138 -0
- package/dist/index102.mjs.map +1 -0
- package/dist/index104.cjs +10 -0
- package/dist/index104.cjs.map +1 -0
- package/dist/index104.mjs +11 -0
- package/dist/index104.mjs.map +1 -0
- package/dist/index105.cjs +5 -0
- package/dist/index105.cjs.map +1 -0
- package/dist/index105.mjs +6 -0
- package/dist/index105.mjs.map +1 -0
- package/dist/index106.cjs +5 -0
- package/dist/index106.cjs.map +1 -0
- package/dist/index106.mjs +6 -0
- package/dist/index106.mjs.map +1 -0
- package/dist/index107.cjs +86 -0
- package/dist/index107.cjs.map +1 -0
- package/dist/index107.mjs +87 -0
- package/dist/index107.mjs.map +1 -0
- package/dist/index109.cjs +123 -0
- package/dist/index109.cjs.map +1 -0
- package/dist/index109.mjs +124 -0
- package/dist/index109.mjs.map +1 -0
- package/dist/index111.cjs +121 -0
- package/dist/index111.cjs.map +1 -0
- package/dist/index111.mjs +122 -0
- package/dist/index111.mjs.map +1 -0
- package/dist/index113.cjs +72 -0
- package/dist/index113.cjs.map +1 -0
- package/dist/index113.mjs +73 -0
- package/dist/index113.mjs.map +1 -0
- package/dist/index115.cjs +5 -0
- package/dist/index115.cjs.map +1 -0
- package/dist/index115.mjs +6 -0
- package/dist/index115.mjs.map +1 -0
- package/dist/index116.cjs +56 -0
- package/dist/index116.cjs.map +1 -0
- package/dist/index116.mjs +57 -0
- package/dist/index116.mjs.map +1 -0
- package/dist/index118.cjs +5 -0
- package/dist/index118.cjs.map +1 -0
- package/dist/index118.mjs +6 -0
- package/dist/index118.mjs.map +1 -0
- package/dist/index119.cjs +210 -0
- package/dist/index119.cjs.map +1 -0
- package/dist/index119.mjs +211 -0
- package/dist/index119.mjs.map +1 -0
- package/dist/index12.cjs +606 -0
- package/dist/index12.cjs.map +1 -0
- package/dist/index12.mjs +607 -0
- package/dist/index12.mjs.map +1 -0
- package/dist/index121.cjs +170 -0
- package/dist/index121.cjs.map +1 -0
- package/dist/index121.mjs +171 -0
- package/dist/index121.mjs.map +1 -0
- package/dist/index123.cjs +109 -0
- package/dist/index123.cjs.map +1 -0
- package/dist/index123.mjs +110 -0
- package/dist/index123.mjs.map +1 -0
- package/dist/index125.cjs +5 -0
- package/dist/index125.cjs.map +1 -0
- package/dist/index125.mjs +6 -0
- package/dist/index125.mjs.map +1 -0
- package/dist/index126.cjs +4 -0
- package/dist/index126.cjs.map +1 -0
- package/dist/index126.mjs +5 -0
- package/dist/index126.mjs.map +1 -0
- package/dist/index127.cjs +300 -0
- package/dist/index127.cjs.map +1 -0
- package/dist/index127.mjs +301 -0
- package/dist/index127.mjs.map +1 -0
- package/dist/index130.cjs +5 -0
- package/dist/index130.cjs.map +1 -0
- package/dist/index130.mjs +6 -0
- package/dist/index130.mjs.map +1 -0
- package/dist/index131.cjs +5 -0
- package/dist/index131.cjs.map +1 -0
- package/dist/index131.mjs +6 -0
- package/dist/index131.mjs.map +1 -0
- package/dist/index132.cjs +128 -0
- package/dist/index132.cjs.map +1 -0
- package/dist/index132.mjs +129 -0
- package/dist/index132.mjs.map +1 -0
- package/dist/index134.cjs +4 -0
- package/dist/index134.cjs.map +1 -0
- package/dist/index134.mjs +5 -0
- package/dist/index134.mjs.map +1 -0
- package/dist/index135.cjs +180 -0
- package/dist/index135.cjs.map +1 -0
- package/dist/index135.mjs +181 -0
- package/dist/index135.mjs.map +1 -0
- package/dist/index137.cjs +83 -0
- package/dist/index137.cjs.map +1 -0
- package/dist/index137.mjs +84 -0
- package/dist/index137.mjs.map +1 -0
- package/dist/index139.cjs +284 -0
- package/dist/index139.cjs.map +1 -0
- package/dist/index139.mjs +285 -0
- package/dist/index139.mjs.map +1 -0
- package/dist/index14.cjs +124 -0
- package/dist/index14.cjs.map +1 -0
- package/dist/index14.mjs +125 -0
- package/dist/index14.mjs.map +1 -0
- package/dist/index141.cjs +58 -0
- package/dist/index141.cjs.map +1 -0
- package/dist/index141.mjs +59 -0
- package/dist/index141.mjs.map +1 -0
- package/dist/index143.cjs +5 -0
- package/dist/index143.cjs.map +1 -0
- package/dist/index143.mjs +6 -0
- package/dist/index143.mjs.map +1 -0
- package/dist/index144.cjs +399 -0
- package/dist/index144.cjs.map +1 -0
- package/dist/index144.mjs +400 -0
- package/dist/index144.mjs.map +1 -0
- package/dist/index146.cjs +305 -0
- package/dist/index146.cjs.map +1 -0
- package/dist/index146.mjs +306 -0
- package/dist/index146.mjs.map +1 -0
- package/dist/index149.cjs +109 -0
- package/dist/index149.cjs.map +1 -0
- package/dist/index149.mjs +110 -0
- package/dist/index149.mjs.map +1 -0
- package/dist/index152.cjs +5 -0
- package/dist/index152.cjs.map +1 -0
- package/dist/index152.mjs +6 -0
- package/dist/index152.mjs.map +1 -0
- package/dist/index153.cjs +5 -0
- package/dist/index153.cjs.map +1 -0
- package/dist/index153.mjs +6 -0
- package/dist/index153.mjs.map +1 -0
- package/dist/index154.cjs +4 -0
- package/dist/index154.cjs.map +1 -0
- package/dist/index154.mjs +5 -0
- package/dist/index154.mjs.map +1 -0
- package/dist/index155.cjs +5 -0
- package/dist/index155.cjs.map +1 -0
- package/dist/index155.mjs +6 -0
- package/dist/index155.mjs.map +1 -0
- package/dist/index156.cjs +5 -0
- package/dist/index156.cjs.map +1 -0
- package/dist/index156.mjs +6 -0
- package/dist/index156.mjs.map +1 -0
- package/dist/index157.cjs +5 -0
- package/dist/index157.cjs.map +1 -0
- package/dist/index157.mjs +6 -0
- package/dist/index157.mjs.map +1 -0
- package/dist/index158.cjs +4 -0
- package/dist/index158.cjs.map +1 -0
- package/dist/index158.mjs +5 -0
- package/dist/index158.mjs.map +1 -0
- package/dist/index159.cjs +59 -0
- package/dist/index159.cjs.map +1 -0
- package/dist/index159.mjs +60 -0
- package/dist/index159.mjs.map +1 -0
- package/dist/index16.cjs +89 -0
- package/dist/index16.cjs.map +1 -0
- package/dist/index16.mjs +90 -0
- package/dist/index16.mjs.map +1 -0
- package/dist/index161.cjs +5 -0
- package/dist/index161.cjs.map +1 -0
- package/dist/index161.mjs +6 -0
- package/dist/index161.mjs.map +1 -0
- package/dist/index162.cjs +119 -0
- package/dist/index162.cjs.map +1 -0
- package/dist/index162.mjs +120 -0
- package/dist/index162.mjs.map +1 -0
- package/dist/index164.cjs +33 -0
- package/dist/index164.cjs.map +1 -0
- package/dist/index164.mjs +34 -0
- package/dist/index164.mjs.map +1 -0
- package/dist/index166.cjs +5 -0
- package/dist/index166.cjs.map +1 -0
- package/dist/index166.mjs +6 -0
- package/dist/index166.mjs.map +1 -0
- package/dist/index167.cjs +324 -0
- package/dist/index167.cjs.map +1 -0
- package/dist/index167.mjs +325 -0
- package/dist/index167.mjs.map +1 -0
- package/dist/index17.cjs +419 -0
- package/dist/index17.cjs.map +1 -0
- package/dist/index17.mjs +420 -0
- package/dist/index17.mjs.map +1 -0
- package/dist/index170.cjs +38 -0
- package/dist/index170.cjs.map +1 -0
- package/dist/index170.mjs +39 -0
- package/dist/index170.mjs.map +1 -0
- package/dist/index172.cjs +5 -0
- package/dist/index172.cjs.map +1 -0
- package/dist/index172.mjs +6 -0
- package/dist/index172.mjs.map +1 -0
- package/dist/index173.cjs +202 -0
- package/dist/index173.cjs.map +1 -0
- package/dist/index173.mjs +203 -0
- package/dist/index173.mjs.map +1 -0
- package/dist/index175.cjs +5 -0
- package/dist/index175.cjs.map +1 -0
- package/dist/index175.mjs +6 -0
- package/dist/index175.mjs.map +1 -0
- package/dist/index176.cjs +53 -0
- package/dist/index176.cjs.map +1 -0
- package/dist/index176.mjs +54 -0
- package/dist/index176.mjs.map +1 -0
- package/dist/index178.cjs +13 -0
- package/dist/index178.cjs.map +1 -0
- package/dist/index178.mjs +13 -0
- package/dist/index178.mjs.map +1 -0
- package/dist/index179.cjs +18 -0
- package/dist/index179.cjs.map +1 -0
- package/dist/index179.mjs +18 -0
- package/dist/index179.mjs.map +1 -0
- package/dist/index180.cjs +262 -0
- package/dist/index180.cjs.map +1 -0
- package/dist/index180.mjs +262 -0
- package/dist/index180.mjs.map +1 -0
- package/dist/index181.cjs +108 -0
- package/dist/index181.cjs.map +1 -0
- package/dist/index181.mjs +109 -0
- package/dist/index181.mjs.map +1 -0
- package/dist/index182.cjs +73 -0
- package/dist/index182.cjs.map +1 -0
- package/dist/index182.mjs +73 -0
- package/dist/index182.mjs.map +1 -0
- package/dist/index183.cjs +37 -0
- package/dist/index183.cjs.map +1 -0
- package/dist/index183.mjs +37 -0
- package/dist/index183.mjs.map +1 -0
- package/dist/index184.cjs +16 -0
- package/dist/index184.cjs.map +1 -0
- package/dist/index184.mjs +16 -0
- package/dist/index184.mjs.map +1 -0
- package/dist/index185.cjs +31 -0
- package/dist/index185.cjs.map +1 -0
- package/dist/index185.mjs +31 -0
- package/dist/index185.mjs.map +1 -0
- package/dist/index186.cjs +460 -0
- package/dist/index186.cjs.map +1 -0
- package/dist/index186.mjs +461 -0
- package/dist/index186.mjs.map +1 -0
- package/dist/index187.cjs +154 -0
- package/dist/index187.cjs.map +1 -0
- package/dist/index187.mjs +154 -0
- package/dist/index187.mjs.map +1 -0
- package/dist/index188.cjs +40 -0
- package/dist/index188.cjs.map +1 -0
- package/dist/index188.mjs +40 -0
- package/dist/index188.mjs.map +1 -0
- package/dist/index189.cjs +66 -0
- package/dist/index189.cjs.map +1 -0
- package/dist/index189.mjs +66 -0
- package/dist/index189.mjs.map +1 -0
- package/dist/index19.cjs +135 -0
- package/dist/index19.cjs.map +1 -0
- package/dist/index19.mjs +136 -0
- package/dist/index19.mjs.map +1 -0
- package/dist/index190.cjs +142 -0
- package/dist/index190.cjs.map +1 -0
- package/dist/index190.mjs +143 -0
- package/dist/index190.mjs.map +1 -0
- package/dist/index191.cjs +7 -0
- package/dist/index191.cjs.map +1 -0
- package/dist/index191.mjs +8 -0
- package/dist/index191.mjs.map +1 -0
- package/dist/index192.cjs +7 -0
- package/dist/index192.cjs.map +1 -0
- package/dist/index192.mjs +8 -0
- package/dist/index192.mjs.map +1 -0
- package/dist/index193.cjs +7 -0
- package/dist/index193.cjs.map +1 -0
- package/dist/index193.mjs +8 -0
- package/dist/index193.mjs.map +1 -0
- package/dist/index194.cjs +7 -0
- package/dist/index194.cjs.map +1 -0
- package/dist/index194.mjs +8 -0
- package/dist/index194.mjs.map +1 -0
- package/dist/index195.cjs +7 -0
- package/dist/index195.cjs.map +1 -0
- package/dist/index195.mjs +8 -0
- package/dist/index195.mjs.map +1 -0
- package/dist/index196.cjs +100 -0
- package/dist/index196.cjs.map +1 -0
- package/dist/index196.mjs +100 -0
- package/dist/index196.mjs.map +1 -0
- package/dist/index197.cjs +226 -0
- package/dist/index197.cjs.map +1 -0
- package/dist/index197.mjs +226 -0
- package/dist/index197.mjs.map +1 -0
- package/dist/index198.cjs +66 -0
- package/dist/index198.cjs.map +1 -0
- package/dist/index198.mjs +66 -0
- package/dist/index198.mjs.map +1 -0
- package/dist/index199.cjs +399 -0
- package/dist/index199.cjs.map +1 -0
- package/dist/index199.mjs +399 -0
- package/dist/index199.mjs.map +1 -0
- package/dist/index200.cjs +83 -0
- package/dist/index200.cjs.map +1 -0
- package/dist/index200.mjs +83 -0
- package/dist/index200.mjs.map +1 -0
- package/dist/index201.cjs +4 -0
- package/dist/index201.cjs.map +1 -0
- package/dist/index201.mjs +5 -0
- package/dist/index201.mjs.map +1 -0
- package/dist/index202.cjs +5 -0
- package/dist/index202.cjs.map +1 -0
- package/dist/index202.mjs +6 -0
- package/dist/index202.mjs.map +1 -0
- package/dist/index203.cjs +216 -0
- package/dist/index203.cjs.map +1 -0
- package/dist/index203.mjs +217 -0
- package/dist/index203.mjs.map +1 -0
- package/dist/index205.cjs +112 -0
- package/dist/index205.cjs.map +1 -0
- package/dist/index205.mjs +113 -0
- package/dist/index205.mjs.map +1 -0
- package/dist/index207.cjs +112 -0
- package/dist/index207.cjs.map +1 -0
- package/dist/index207.mjs +113 -0
- package/dist/index207.mjs.map +1 -0
- package/dist/index209.cjs +64 -0
- package/dist/index209.cjs.map +1 -0
- package/dist/index209.mjs +65 -0
- package/dist/index209.mjs.map +1 -0
- package/dist/index21.cjs +268 -0
- package/dist/index21.cjs.map +1 -0
- package/dist/index21.mjs +269 -0
- package/dist/index21.mjs.map +1 -0
- package/dist/index211.cjs +45 -0
- package/dist/index211.cjs.map +1 -0
- package/dist/index211.mjs +46 -0
- package/dist/index211.mjs.map +1 -0
- package/dist/index213.cjs +241 -0
- package/dist/index213.cjs.map +1 -0
- package/dist/index213.mjs +241 -0
- package/dist/index213.mjs.map +1 -0
- package/dist/index214.cjs +63 -0
- package/dist/index214.cjs.map +1 -0
- package/dist/index214.mjs +63 -0
- package/dist/index214.mjs.map +1 -0
- package/dist/index215.cjs +53 -0
- package/dist/index215.cjs.map +1 -0
- package/dist/index215.mjs +53 -0
- package/dist/index215.mjs.map +1 -0
- package/dist/index216.cjs +53 -0
- package/dist/index216.cjs.map +1 -0
- package/dist/index216.mjs +53 -0
- package/dist/index216.mjs.map +1 -0
- package/dist/index217.cjs +4 -0
- package/dist/index217.cjs.map +1 -0
- package/dist/index217.mjs +5 -0
- package/dist/index217.mjs.map +1 -0
- package/dist/index218.cjs +29 -0
- package/dist/index218.cjs.map +1 -0
- package/dist/index218.mjs +30 -0
- package/dist/index218.mjs.map +1 -0
- package/dist/index219.cjs +4 -0
- package/dist/index219.cjs.map +1 -0
- package/dist/index219.mjs +5 -0
- package/dist/index219.mjs.map +1 -0
- package/dist/index23.cjs +41 -0
- package/dist/index23.cjs.map +1 -0
- package/dist/index23.mjs +42 -0
- package/dist/index23.mjs.map +1 -0
- package/dist/index24.cjs +117 -0
- package/dist/index24.cjs.map +1 -0
- package/dist/index24.mjs +118 -0
- package/dist/index24.mjs.map +1 -0
- package/dist/index26.cjs +127 -0
- package/dist/index26.cjs.map +1 -0
- package/dist/index26.mjs +128 -0
- package/dist/index26.mjs.map +1 -0
- package/dist/index28.cjs +39 -0
- package/dist/index28.cjs.map +1 -0
- package/dist/index28.mjs +40 -0
- package/dist/index28.mjs.map +1 -0
- package/dist/index29.cjs +176 -0
- package/dist/index29.cjs.map +1 -0
- package/dist/index29.mjs +177 -0
- package/dist/index29.mjs.map +1 -0
- package/dist/index3.cjs +110 -0
- package/dist/index3.cjs.map +1 -0
- package/dist/index3.mjs +110 -0
- package/dist/index3.mjs.map +1 -0
- package/dist/index31.cjs +361 -0
- package/dist/index31.cjs.map +1 -0
- package/dist/index31.mjs +362 -0
- package/dist/index31.mjs.map +1 -0
- package/dist/index33.cjs +20 -0
- package/dist/index33.cjs.map +1 -0
- package/dist/index33.mjs +21 -0
- package/dist/index33.mjs.map +1 -0
- package/dist/index34.cjs +311 -0
- package/dist/index34.cjs.map +1 -0
- package/dist/index34.mjs +312 -0
- package/dist/index34.mjs.map +1 -0
- package/dist/index36.cjs +132 -0
- package/dist/index36.cjs.map +1 -0
- package/dist/index36.mjs +133 -0
- package/dist/index36.mjs.map +1 -0
- package/dist/index38.cjs +80 -0
- package/dist/index38.cjs.map +1 -0
- package/dist/index38.mjs +81 -0
- package/dist/index38.mjs.map +1 -0
- package/dist/index4.cjs +612 -0
- package/dist/index4.cjs.map +1 -0
- package/dist/index4.mjs +613 -0
- package/dist/index4.mjs.map +1 -0
- package/dist/index40.cjs +600 -0
- package/dist/index40.cjs.map +1 -0
- package/dist/index40.mjs +601 -0
- package/dist/index40.mjs.map +1 -0
- package/dist/index42.cjs +160 -0
- package/dist/index42.cjs.map +1 -0
- package/dist/index42.mjs +160 -0
- package/dist/index42.mjs.map +1 -0
- package/dist/index43.cjs +26 -0
- package/dist/index43.cjs.map +1 -0
- package/dist/index43.mjs +27 -0
- package/dist/index43.mjs.map +1 -0
- package/dist/index44.cjs +20 -0
- package/dist/index44.cjs.map +1 -0
- package/dist/index44.mjs +21 -0
- package/dist/index44.mjs.map +1 -0
- package/dist/index45.cjs +104 -0
- package/dist/index45.cjs.map +1 -0
- package/dist/index45.mjs +104 -0
- package/dist/index45.mjs.map +1 -0
- package/dist/index46.cjs +8 -0
- package/dist/index46.cjs.map +1 -0
- package/dist/index46.mjs +9 -0
- package/dist/index46.mjs.map +1 -0
- package/dist/index47.cjs +7 -0
- package/dist/index47.cjs.map +1 -0
- package/dist/index47.mjs +8 -0
- package/dist/index47.mjs.map +1 -0
- package/dist/index48.cjs +7 -0
- package/dist/index48.cjs.map +1 -0
- package/dist/index48.mjs +8 -0
- package/dist/index48.mjs.map +1 -0
- package/dist/index49.cjs +7 -0
- package/dist/index49.cjs.map +1 -0
- package/dist/index49.mjs +8 -0
- package/dist/index49.mjs.map +1 -0
- package/dist/index50.cjs +7 -0
- package/dist/index50.cjs.map +1 -0
- package/dist/index50.mjs +8 -0
- package/dist/index50.mjs.map +1 -0
- package/dist/index51.cjs +7 -0
- package/dist/index51.cjs.map +1 -0
- package/dist/index51.mjs +8 -0
- package/dist/index51.mjs.map +1 -0
- package/dist/index52.cjs +7 -0
- package/dist/index52.cjs.map +1 -0
- package/dist/index52.mjs +8 -0
- package/dist/index52.mjs.map +1 -0
- package/dist/index53.cjs +7 -0
- package/dist/index53.cjs.map +1 -0
- package/dist/index53.mjs +8 -0
- package/dist/index53.mjs.map +1 -0
- package/dist/index54.cjs +7 -0
- package/dist/index54.cjs.map +1 -0
- package/dist/index54.mjs +8 -0
- package/dist/index54.mjs.map +1 -0
- package/dist/index55.cjs +7 -0
- package/dist/index55.cjs.map +1 -0
- package/dist/index55.mjs +8 -0
- package/dist/index55.mjs.map +1 -0
- package/dist/index56.cjs +7 -0
- package/dist/index56.cjs.map +1 -0
- package/dist/index56.mjs +8 -0
- package/dist/index56.mjs.map +1 -0
- package/dist/index57.cjs +7 -0
- package/dist/index57.cjs.map +1 -0
- package/dist/index57.mjs +8 -0
- package/dist/index57.mjs.map +1 -0
- package/dist/index58.cjs +7 -0
- package/dist/index58.cjs.map +1 -0
- package/dist/index58.mjs +8 -0
- package/dist/index58.mjs.map +1 -0
- package/dist/index59.cjs +8 -0
- package/dist/index59.cjs.map +1 -0
- package/dist/index59.mjs +9 -0
- package/dist/index59.mjs.map +1 -0
- package/dist/index6.cjs +578 -0
- package/dist/index6.cjs.map +1 -0
- package/dist/index6.mjs +579 -0
- package/dist/index6.mjs.map +1 -0
- package/dist/index60.cjs +7 -0
- package/dist/index60.cjs.map +1 -0
- package/dist/index60.mjs +8 -0
- package/dist/index60.mjs.map +1 -0
- package/dist/index61.cjs +7 -0
- package/dist/index61.cjs.map +1 -0
- package/dist/index61.mjs +8 -0
- package/dist/index61.mjs.map +1 -0
- package/dist/index62.cjs +7 -0
- package/dist/index62.cjs.map +1 -0
- package/dist/index62.mjs +8 -0
- package/dist/index62.mjs.map +1 -0
- package/dist/index63.cjs +7 -0
- package/dist/index63.cjs.map +1 -0
- package/dist/index63.mjs +8 -0
- package/dist/index63.mjs.map +1 -0
- package/dist/index64.cjs +7 -0
- package/dist/index64.cjs.map +1 -0
- package/dist/index64.mjs +8 -0
- package/dist/index64.mjs.map +1 -0
- package/dist/index65.cjs +8 -0
- package/dist/index65.cjs.map +1 -0
- package/dist/index65.mjs +9 -0
- package/dist/index65.mjs.map +1 -0
- package/dist/index66.cjs +7 -0
- package/dist/index66.cjs.map +1 -0
- package/dist/index66.mjs +8 -0
- package/dist/index66.mjs.map +1 -0
- package/dist/index67.cjs +7 -0
- package/dist/index67.cjs.map +1 -0
- package/dist/index67.mjs +8 -0
- package/dist/index67.mjs.map +1 -0
- package/dist/index68.cjs +7 -0
- package/dist/index68.cjs.map +1 -0
- package/dist/index68.mjs +8 -0
- package/dist/index68.mjs.map +1 -0
- package/dist/index69.cjs +8 -0
- package/dist/index69.cjs.map +1 -0
- package/dist/index69.mjs +9 -0
- package/dist/index69.mjs.map +1 -0
- package/dist/index70.cjs +7 -0
- package/dist/index70.cjs.map +1 -0
- package/dist/index70.mjs +8 -0
- package/dist/index70.mjs.map +1 -0
- package/dist/index71.cjs +38 -0
- package/dist/index71.cjs.map +1 -0
- package/dist/index71.mjs +38 -0
- package/dist/index71.mjs.map +1 -0
- package/dist/index72.cjs +22 -0
- package/dist/index72.cjs.map +1 -0
- package/dist/index72.mjs +22 -0
- package/dist/index72.mjs.map +1 -0
- package/dist/index73.cjs +40 -0
- package/dist/index73.cjs.map +1 -0
- package/dist/index73.mjs +40 -0
- package/dist/index73.mjs.map +1 -0
- package/dist/index74.cjs +80 -0
- package/dist/index74.cjs.map +1 -0
- package/dist/index74.mjs +80 -0
- package/dist/index74.mjs.map +1 -0
- package/dist/index75.cjs +29 -0
- package/dist/index75.cjs.map +1 -0
- package/dist/index75.mjs +29 -0
- package/dist/index75.mjs.map +1 -0
- package/dist/index76.cjs +157 -0
- package/dist/index76.cjs.map +1 -0
- package/dist/index76.mjs +157 -0
- package/dist/index76.mjs.map +1 -0
- package/dist/index77.cjs +16 -0
- package/dist/index77.cjs.map +1 -0
- package/dist/index77.mjs +16 -0
- package/dist/index77.mjs.map +1 -0
- package/dist/index78.cjs +87 -0
- package/dist/index78.cjs.map +1 -0
- package/dist/index78.mjs +87 -0
- package/dist/index78.mjs.map +1 -0
- package/dist/index79.cjs +16 -0
- package/dist/index79.cjs.map +1 -0
- package/dist/index79.mjs +16 -0
- package/dist/index79.mjs.map +1 -0
- package/dist/index8.cjs +130 -0
- package/dist/index8.cjs.map +1 -0
- package/dist/index8.mjs +131 -0
- package/dist/index8.mjs.map +1 -0
- package/dist/index80.cjs +65 -0
- package/dist/index80.cjs.map +1 -0
- package/dist/index80.mjs +65 -0
- package/dist/index80.mjs.map +1 -0
- package/dist/index81.cjs +69 -0
- package/dist/index81.cjs.map +1 -0
- package/dist/index81.mjs +69 -0
- package/dist/index81.mjs.map +1 -0
- package/dist/index82.cjs +30 -0
- package/dist/index82.cjs.map +1 -0
- package/dist/index82.mjs +30 -0
- package/dist/index82.mjs.map +1 -0
- package/dist/index83.cjs +86 -0
- package/dist/index83.cjs.map +1 -0
- package/dist/index83.mjs +86 -0
- package/dist/index83.mjs.map +1 -0
- package/dist/index84.cjs +102 -0
- package/dist/index84.cjs.map +1 -0
- package/dist/index84.mjs +102 -0
- package/dist/index84.mjs.map +1 -0
- package/dist/index85.cjs +20 -0
- package/dist/index85.cjs.map +1 -0
- package/dist/index85.mjs +20 -0
- package/dist/index85.mjs.map +1 -0
- package/dist/index86.cjs +21 -0
- package/dist/index86.cjs.map +1 -0
- package/dist/index86.mjs +21 -0
- package/dist/index86.mjs.map +1 -0
- package/dist/index87.cjs +191 -0
- package/dist/index87.cjs.map +1 -0
- package/dist/index87.mjs +191 -0
- package/dist/index87.mjs.map +1 -0
- package/dist/index88.cjs +67 -0
- package/dist/index88.cjs.map +1 -0
- package/dist/index88.mjs +67 -0
- package/dist/index88.mjs.map +1 -0
- package/dist/index89.cjs +312 -0
- package/dist/index89.cjs.map +1 -0
- package/dist/index89.mjs +312 -0
- package/dist/index89.mjs.map +1 -0
- package/dist/index90.cjs +10 -0
- package/dist/index90.cjs.map +1 -0
- package/dist/index90.mjs +10 -0
- package/dist/index90.mjs.map +1 -0
- package/dist/index91.cjs +15 -0
- package/dist/index91.cjs.map +1 -0
- package/dist/index91.mjs +15 -0
- package/dist/index91.mjs.map +1 -0
- package/dist/index92.cjs +8 -0
- package/dist/index92.cjs.map +1 -0
- package/dist/index92.mjs +8 -0
- package/dist/index92.mjs.map +1 -0
- package/dist/index93.cjs +81 -0
- package/dist/index93.cjs.map +1 -0
- package/dist/index93.mjs +81 -0
- package/dist/index93.mjs.map +1 -0
- package/dist/index94.cjs +124 -0
- package/dist/index94.cjs.map +1 -0
- package/dist/index94.mjs +124 -0
- package/dist/index94.mjs.map +1 -0
- package/dist/index95.cjs +68 -0
- package/dist/index95.cjs.map +1 -0
- package/dist/index95.mjs +68 -0
- package/dist/index95.mjs.map +1 -0
- package/dist/index96.cjs +29 -0
- package/dist/index96.cjs.map +1 -0
- package/dist/index96.mjs +29 -0
- package/dist/index96.mjs.map +1 -0
- package/dist/index97.cjs +184 -0
- package/dist/index97.cjs.map +1 -0
- package/dist/index97.mjs +184 -0
- package/dist/index97.mjs.map +1 -0
- package/dist/index98.cjs +78 -0
- package/dist/index98.cjs.map +1 -0
- package/dist/index98.mjs +78 -0
- package/dist/index98.mjs.map +1 -0
- package/dist/index99.cjs +55 -0
- package/dist/index99.cjs.map +1 -0
- package/dist/index99.mjs +55 -0
- package/dist/index99.mjs.map +1 -0
- package/dist/plugin.d.ts +37 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/scss/_badge.scss +12 -0
- package/dist/scss/_breakpoints.scss +102 -0
- package/dist/scss/_color-utilities.scss +105 -0
- package/dist/scss/_controls.scss +135 -0
- package/dist/scss/_ds-input-base.scss +302 -0
- package/dist/scss/_ds-picker-m3.scss +179 -0
- package/dist/scss/_effects.scss +42 -0
- package/dist/scss/_overlays.scss +13 -0
- package/dist/scss/_radius.scss +24 -0
- package/dist/scss/_reset.scss +60 -0
- package/dist/scss/_scrollbar.scss +78 -0
- package/dist/scss/_spacing.scss +15 -0
- package/dist/scss/_themes.scss +493 -0
- package/dist/scss/_typography.scss +50 -0
- package/dist/scss/_utilities.scss +75 -0
- package/dist/scss/_variables.scss +143 -0
- package/dist/scss/api.scss +77 -0
- package/dist/scss/tokens.scss +13 -0
- package/dist/utils/date-utils.d.ts +48 -0
- package/dist/utils/date-utils.d.ts.map +1 -0
- package/dist/utils/dialog-utils.d.ts +17 -0
- package/dist/utils/dialog-utils.d.ts.map +1 -0
- package/dist/utils/file-utils.d.ts +20 -0
- package/dist/utils/file-utils.d.ts.map +1 -0
- package/dist/utils/filtro-input.d.ts +19 -0
- package/dist/utils/filtro-input.d.ts.map +1 -0
- package/dist/utils/form-rules.d.ts +74 -0
- package/dist/utils/form-rules.d.ts.map +1 -0
- package/dist/utils/formatadores.d.ts +15 -0
- package/dist/utils/formatadores.d.ts.map +1 -0
- package/dist/utils/gerador-id.d.ts +3 -0
- package/dist/utils/gerador-id.d.ts.map +1 -0
- package/dist/utils/hint-mensagem.d.ts +11 -0
- package/dist/utils/hint-mensagem.d.ts.map +1 -0
- package/dist/utils/index.d.ts +15 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/limpar-campos.d.ts +6 -0
- package/dist/utils/limpar-campos.d.ts.map +1 -0
- package/dist/utils/masks.d.ts +16 -0
- package/dist/utils/masks.d.ts.map +1 -0
- package/dist/utils/medidas-util.d.ts +3 -0
- package/dist/utils/medidas-util.d.ts.map +1 -0
- package/dist/utils/normalizar-label.d.ts +2 -0
- package/dist/utils/normalizar-label.d.ts.map +1 -0
- package/dist/utils/scroll-elemento.d.ts +16 -0
- package/dist/utils/scroll-elemento.d.ts.map +1 -0
- package/dist/utils/validar-campo.d.ts +7 -0
- package/dist/utils/validar-campo.d.ts.map +1 -0
- package/dist/utils/validar-documentos.d.ts +12 -0
- package/dist/utils/validar-documentos.d.ts.map +1 -0
- package/dist/utils/vnode-slot.d.ts +43 -0
- package/dist/utils/vnode-slot.d.ts.map +1 -0
- package/package.json +100 -0
- package/src/components/actions/acai-ui-actions.vue +225 -0
- package/src/components/async-select/acai-ui-async-select-interface.ts +49 -0
- package/src/components/async-select/acai-ui-async-select.vue +409 -0
- package/src/components/badge/acai-ui-badge-interface.ts +19 -0
- package/src/components/badge/acai-ui-badge.vue +40 -0
- package/src/components/banner/acai-ui-banner-interface.ts +17 -0
- package/src/components/banner/acai-ui-banner-styles.scss +47 -0
- package/src/components/banner/acai-ui-banner.vue +85 -0
- package/src/components/button/acai-ui-button-interface.ts +21 -0
- package/src/components/button/acai-ui-button.vue +378 -0
- package/src/components/card/acai-ui-card-interface.ts +14 -0
- package/src/components/card/acai-ui-card-styles.scss +94 -0
- package/src/components/card/acai-ui-card.vue +148 -0
- package/src/components/chart/acai-ui-chart-interface.ts +226 -0
- package/src/components/chart/acai-ui-chart-styles.scss +141 -0
- package/src/components/chart/acai-ui-chart.vue +679 -0
- package/src/components/chart/chart-a11y.ts +184 -0
- package/src/components/chart/chart-caminhos.ts +466 -0
- package/src/components/chart/chart-cartesiano.vue +247 -0
- package/src/components/chart/chart-dados.ts +381 -0
- package/src/components/chart/chart-escalas.ts +141 -0
- package/src/components/chart/chart-formatar.ts +98 -0
- package/src/components/chart/chart-gauge.vue +152 -0
- package/src/components/chart/chart-headless.ts +130 -0
- package/src/components/chart/chart-imagem.ts +247 -0
- package/src/components/chart/chart-layout.ts +184 -0
- package/src/components/chart/chart-legenda.vue +103 -0
- package/src/components/chart/chart-pizza.vue +134 -0
- package/src/components/chart/chart-plano.ts +818 -0
- package/src/components/chart/chart-rotulos.ts +75 -0
- package/src/components/chart/chart-tabela.vue +116 -0
- package/src/components/chart/chart-ticks.ts +116 -0
- package/src/components/checkbox/acai-ui-checkbox-interface.ts +17 -0
- package/src/components/checkbox/acai-ui-checkbox.vue +114 -0
- package/src/components/chip/acai-ui-chip-interface.ts +19 -0
- package/src/components/chip/acai-ui-chip.vue +61 -0
- package/src/components/code/acai-ui-code-interface.ts +43 -0
- package/src/components/code/acai-ui-code-styles.scss +407 -0
- package/src/components/code/acai-ui-code.vue +595 -0
- package/src/components/code/dobras-json.ts +52 -0
- package/src/components/confirm/acai-ui-confirm.vue +230 -0
- package/src/components/container/acai-ui-container-interface.ts +34 -0
- package/src/components/container/acai-ui-container-styles.scss +122 -0
- package/src/components/container/acai-ui-container.vue +140 -0
- package/src/components/date/acai-ui-date-interface.ts +18 -0
- package/src/components/date/acai-ui-date.vue +191 -0
- package/src/components/date-range/acai-ui-date-range-interface.ts +27 -0
- package/src/components/date-range/acai-ui-date-range.vue +300 -0
- package/src/components/datetime/acai-ui-datetime-interface.ts +10 -0
- package/src/components/datetime/acai-ui-datetime.vue +203 -0
- package/src/components/datetime/data-hora-styles.scss +18 -0
- package/src/components/dialog/acai-ui-dialog-interface.ts +18 -0
- package/src/components/dialog/acai-ui-dialog.vue +168 -0
- package/src/components/divider/acai-ui-divider-interface.ts +4 -0
- package/src/components/divider/acai-ui-divider-styles.scss +42 -0
- package/src/components/divider/acai-ui-divider.vue +20 -0
- package/src/components/drawer/acai-ui-drawer-interface.ts +99 -0
- package/src/components/drawer/acai-ui-drawer-styles.scss +586 -0
- package/src/components/drawer/acai-ui-drawer.vue +802 -0
- package/src/components/drawer/drawer-sidebar-helper.ts +117 -0
- package/src/components/dropdown/acai-ui-dropdown-interface.ts +41 -0
- package/src/components/dropdown/acai-ui-dropdown-item.vue +36 -0
- package/src/components/dropdown/acai-ui-dropdown-styles.scss +90 -0
- package/src/components/dropdown/acai-ui-dropdown.vue +77 -0
- package/src/components/error-log/acai-ui-error-log-interface.ts +59 -0
- package/src/components/error-log/acai-ui-error-log-json-tree.vue +426 -0
- package/src/components/error-log/acai-ui-error-log-redigir.ts +74 -0
- package/src/components/error-log/acai-ui-error-log-styles.scss +137 -0
- package/src/components/error-log/acai-ui-error-log.vue +318 -0
- package/src/components/file/acai-ui-file-interface.ts +28 -0
- package/src/components/file/acai-ui-file.vue +85 -0
- package/src/components/file/arquivo-styles.scss +109 -0
- package/src/components/form/acai-ui-form-grid.scss +145 -0
- package/src/components/form/acai-ui-form-interface.ts +37 -0
- package/src/components/form/acai-ui-form-styles.scss +159 -0
- package/src/components/form/acai-ui-form-validation-modal.vue +216 -0
- package/src/components/form/acai-ui-form.vue +410 -0
- package/src/components/help/acai-ui-help-interface.ts +200 -0
- package/src/components/help/acai-ui-help-styles.scss +209 -0
- package/src/components/help/acai-ui-help.vue +259 -0
- package/src/components/help/acai-ui-tour-styles.scss +292 -0
- package/src/components/help/acai-ui-tour.vue +766 -0
- package/src/components/help/tour-escolha.ts +139 -0
- package/src/components/help/tour-posicionar.ts +148 -0
- package/src/components/help/tour-registry.ts +177 -0
- package/src/components/help/use-tour-visto.ts +81 -0
- package/src/components/icon/acai-ui-icon-interface.ts +12 -0
- package/src/components/icon/acai-ui-icon.vue +33 -0
- package/src/components/index.ts +149 -0
- package/src/components/input/acai-ui-input-interface.ts +20 -0
- package/src/components/input/acai-ui-input.vue +146 -0
- package/src/components/modal/acai-ui-modal-interface.ts +19 -0
- package/src/components/modal/acai-ui-modal-styles.scss +131 -0
- package/src/components/modal/acai-ui-modal.vue +83 -0
- package/src/components/pagination/acai-ui-pagination-interface.ts +8 -0
- package/src/components/pagination/acai-ui-pagination.vue +36 -0
- package/src/components/preferences/acai-ui-preferences-interface.ts +4 -0
- package/src/components/preferences/acai-ui-preferences-styles.scss +387 -0
- package/src/components/preferences/acai-ui-preferences.vue +349 -0
- package/src/components/progress/acai-ui-progress-interface.ts +20 -0
- package/src/components/progress/acai-ui-progress.vue +124 -0
- package/src/components/radio/acai-ui-radio-interface.ts +14 -0
- package/src/components/radio/acai-ui-radio.vue +78 -0
- package/src/components/section/acai-ui-section-styles.scss +93 -0
- package/src/components/section/acai-ui-section.vue +134 -0
- package/src/components/select/acai-ui-select-interface.ts +18 -0
- package/src/components/select/acai-ui-select.vue +322 -0
- package/src/components/session-clock/acai-ui-session-clock.vue +111 -0
- package/src/components/stepper/acai-ui-step-interface.ts +18 -0
- package/src/components/stepper/acai-ui-step.vue +37 -0
- package/src/components/stepper/acai-ui-stepper-interface.ts +56 -0
- package/src/components/stepper/acai-ui-stepper-styles.scss +222 -0
- package/src/components/stepper/acai-ui-stepper.vue +231 -0
- package/src/components/swagger/acai-ui-swagger-interface.ts +54 -0
- package/src/components/swagger/acai-ui-swagger-operacao.vue +372 -0
- package/src/components/swagger/acai-ui-swagger-requisicao.ts +272 -0
- package/src/components/swagger/acai-ui-swagger-schema.vue +36 -0
- package/src/components/swagger/acai-ui-swagger-styles.scss +883 -0
- package/src/components/swagger/acai-ui-swagger.vue +349 -0
- package/src/components/swagger/openapi-normalizar.ts +514 -0
- package/src/components/swagger/openapi-tipos.ts +198 -0
- package/src/components/table/acai-ui-table-interface.ts +60 -0
- package/src/components/table/acai-ui-table-justificativa.vue +135 -0
- package/src/components/table/acai-ui-table-styles.scss +293 -0
- package/src/components/table/acai-ui-table.vue +340 -0
- package/src/components/tabs/acai-ui-tab.vue +10 -0
- package/src/components/tabs/acai-ui-tabs-interface.ts +48 -0
- package/src/components/tabs/acai-ui-tabs-styles.scss +78 -0
- package/src/components/tabs/acai-ui-tabs.vue +137 -0
- package/src/components/time/acai-ui-time-interface.ts +14 -0
- package/src/components/time/acai-ui-time.vue +86 -0
- package/src/components/toggle/acai-ui-toggle-interface.ts +13 -0
- package/src/components/toggle/acai-ui-toggle.vue +162 -0
- package/src/components/tooltip/acai-ui-tooltip-interface.ts +11 -0
- package/src/components/tooltip/acai-ui-tooltip-styles.scss +104 -0
- package/src/components/tooltip/acai-ui-tooltip.vue +90 -0
- package/src/components/user-menu/acai-ui-user-menu-interface.ts +13 -0
- package/src/components/user-menu/acai-ui-user-menu-styles.scss +125 -0
- package/src/components/user-menu/acai-ui-user-menu.vue +139 -0
- package/src/components/validation/acai-ui-validation.vue +236 -0
- package/src/constants/chart-paleta.ts +162 -0
- package/src/constants/efeitos.ts +24 -0
- package/src/constants/index.ts +24 -0
- package/src/constants/lista-icons.ts +156 -0
- package/src/constants/medidas-espacos.ts +15 -0
- package/src/constants/radius.ts +15 -0
- package/src/constants/status-badge.ts +44 -0
- package/src/env.d.ts +7 -0
- package/src/hooks/filtros-url-internos.ts +497 -0
- package/src/hooks/index.ts +22 -0
- package/src/hooks/notify.ts +18 -0
- package/src/hooks/use-contador-sessao.ts +95 -0
- package/src/hooks/use-filtros-na-url.ts +174 -0
- package/src/hooks/use-leitura-voz.ts +346 -0
- package/src/hooks/use-listagem-na-url.ts +614 -0
- package/src/hooks/use-preferencias.ts +152 -0
- package/src/hooks/use-repasse-quasar.ts +63 -0
- package/src/hooks/use-tamanho-elemento.ts +107 -0
- package/src/hooks/use-tela.ts +114 -0
- package/src/hooks/use-validacao-visual.ts +189 -0
- package/src/index.ts +30 -0
- package/src/plugin.ts +134 -0
- package/src/scss/_badge.scss +12 -0
- package/src/scss/_breakpoints.scss +102 -0
- package/src/scss/_color-utilities.scss +105 -0
- package/src/scss/_controls.scss +135 -0
- package/src/scss/_ds-input-base.scss +302 -0
- package/src/scss/_ds-picker-m3.scss +179 -0
- package/src/scss/_effects.scss +42 -0
- package/src/scss/_overlays.scss +13 -0
- package/src/scss/_radius.scss +24 -0
- package/src/scss/_reset.scss +60 -0
- package/src/scss/_scrollbar.scss +78 -0
- package/src/scss/_spacing.scss +15 -0
- package/src/scss/_themes.scss +493 -0
- package/src/scss/_typography.scss +50 -0
- package/src/scss/_utilities.scss +75 -0
- package/src/scss/_variables.scss +143 -0
- package/src/scss/api.scss +77 -0
- package/src/scss/tokens.scss +13 -0
- package/src/styles-global.scss +30 -0
- package/src/utils/date-utils.ts +128 -0
- package/src/utils/dialog-utils.ts +59 -0
- package/src/utils/file-utils.ts +85 -0
- package/src/utils/filtro-input.ts +41 -0
- package/src/utils/form-rules.ts +202 -0
- package/src/utils/formatadores.ts +97 -0
- package/src/utils/gerador-id.ts +29 -0
- package/src/utils/hint-mensagem.ts +25 -0
- package/src/utils/index.ts +32 -0
- package/src/utils/limpar-campos.ts +94 -0
- package/src/utils/masks.ts +19 -0
- package/src/utils/medidas-util.ts +5 -0
- package/src/utils/normalizar-label.ts +9 -0
- package/src/utils/scroll-elemento.ts +34 -0
- package/src/utils/validar-campo.ts +27 -0
- package/src/utils/validar-documentos.ts +86 -0
- package/src/utils/vnode-slot.ts +74 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { reactive, readonly, watch } from 'vue'
|
|
2
|
+
import { Dark } from 'quasar'
|
|
3
|
+
|
|
4
|
+
export type TemaAcaiUi = 'claro' | 'escuro'
|
|
5
|
+
export type DaltonismoAcaiUi =
|
|
6
|
+
| 'padrao'
|
|
7
|
+
| 'protanopia'
|
|
8
|
+
| 'deuteranopia'
|
|
9
|
+
| 'tritanopia'
|
|
10
|
+
| 'acromatopsia'
|
|
11
|
+
|
|
12
|
+
export interface PreferenciasAcaiUi {
|
|
13
|
+
/** Tema de cores. Aplicado de fato via Quasar `Dark` + a camada `_themes.scss`. */
|
|
14
|
+
tema: TemaAcaiUi
|
|
15
|
+
/** Tamanho da fonte em % da raiz (87.5 / 100 / 112.5 / 125). Aplicado de fato. */
|
|
16
|
+
tamanhoFonte: number
|
|
17
|
+
/** Tipo de daltonismo: ajusta as cores de status pra paleta distinguível na condição. */
|
|
18
|
+
daltonismo: DaltonismoAcaiUi
|
|
19
|
+
/** Reforço de bordas/contraste. (Persistido + marca o `<html>`.) */
|
|
20
|
+
altoContraste: boolean
|
|
21
|
+
/** Desliga transições/animações. Aplicado de fato (injeta regra global). */
|
|
22
|
+
reduzirAnimacoes: boolean
|
|
23
|
+
/**
|
|
24
|
+
* Mostra os botões de ouvir os textos da ajuda (leitura em voz alta).
|
|
25
|
+
*
|
|
26
|
+
* Não é "ler automaticamente": nada fala sem clique. Por isso não há efeito
|
|
27
|
+
* colateral no `aplicar()` — a preferência só é LIDA por quem desenha o botão.
|
|
28
|
+
*/
|
|
29
|
+
leituraVoz: boolean
|
|
30
|
+
/**
|
|
31
|
+
* Voz escolhida, pelo `name` do `SpeechSynthesisVoice`. Vazio = automática
|
|
32
|
+
* (voz local do idioma). Guardar o NOME e não o objeto é o que permite
|
|
33
|
+
* persistir; voz que sumiu da máquina cai na automática.
|
|
34
|
+
*/
|
|
35
|
+
vozNome: string
|
|
36
|
+
/**
|
|
37
|
+
* Velocidade da fala (`rate` da Web Speech API): 0.6 / 1 / 1.6.
|
|
38
|
+
*
|
|
39
|
+
* Valores medidos, não escolhidos por simetria: o motor do Windows arredonda o
|
|
40
|
+
* `rate` para degraus internos, e 0.85 / 1.15 soavam idênticos a 1.
|
|
41
|
+
*/
|
|
42
|
+
vozVelocidade: number
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
const CHAVE = 'acai-ui:preferencias'
|
|
46
|
+
|
|
47
|
+
const PADRAO: PreferenciasAcaiUi = {
|
|
48
|
+
tema: 'claro',
|
|
49
|
+
tamanhoFonte: 100,
|
|
50
|
+
daltonismo: 'padrao',
|
|
51
|
+
altoContraste: false,
|
|
52
|
+
reduzirAnimacoes: false,
|
|
53
|
+
// Ligada por padrão: o botão não faz nada até alguém clicar, e no atendimento
|
|
54
|
+
// presencial a descoberta do recurso vale mais que a economia de um ícone.
|
|
55
|
+
leituraVoz: true,
|
|
56
|
+
vozNome: '',
|
|
57
|
+
vozVelocidade: 1,
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// Singleton: painel de preferências e qualquer outro consumidor compartilham
|
|
61
|
+
// o mesmo estado reativo.
|
|
62
|
+
let estado: PreferenciasAcaiUi | null = null
|
|
63
|
+
|
|
64
|
+
function carregar(): PreferenciasAcaiUi {
|
|
65
|
+
if (typeof window === 'undefined') return { ...PADRAO }
|
|
66
|
+
try {
|
|
67
|
+
const bruto = window.localStorage.getItem(CHAVE)
|
|
68
|
+
if (bruto) {
|
|
69
|
+
const salvo = { ...PADRAO, ...(JSON.parse(bruto) as Partial<PreferenciasAcaiUi>) }
|
|
70
|
+
// Migração: o antigo 'seguro' (paleta CVD genérica) virou tipos específicos;
|
|
71
|
+
// mapeia pra deuteranopia (a mais comum, mesma paleta base Okabe-Ito).
|
|
72
|
+
if ((salvo.daltonismo as string) === 'seguro') salvo.daltonismo = 'deuteranopia'
|
|
73
|
+
// Migração: as velocidades 0.85/1.3 caíam no mesmo degrau do motor do
|
|
74
|
+
// Windows que 1 (medido) e foram trocadas por 0.6/1.6. Sem isto, quem já
|
|
75
|
+
// tinha escolhido ficaria com nenhuma opção marcada no painel.
|
|
76
|
+
if (salvo.vozVelocidade === 0.85) salvo.vozVelocidade = 0.6
|
|
77
|
+
if (salvo.vozVelocidade === 1.3) salvo.vozVelocidade = 1.6
|
|
78
|
+
return salvo
|
|
79
|
+
}
|
|
80
|
+
} catch {
|
|
81
|
+
/* localStorage indisponível ou JSON inválido — usa o padrão */
|
|
82
|
+
}
|
|
83
|
+
return { ...PADRAO }
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
const ID_ESTILO_ANIM = 'acai-ui-reduzir-anim'
|
|
87
|
+
|
|
88
|
+
function garantirEstiloReduzirAnim(): void {
|
|
89
|
+
if (typeof document === 'undefined' || document.getElementById(ID_ESTILO_ANIM)) return
|
|
90
|
+
const estilo = document.createElement('style')
|
|
91
|
+
estilo.id = ID_ESTILO_ANIM
|
|
92
|
+
estilo.textContent =
|
|
93
|
+
'html[data-acai-reduzir-anim] *, html[data-acai-reduzir-anim] *::before, html[data-acai-reduzir-anim] *::after' +
|
|
94
|
+
'{ transition-duration: .001ms !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; }'
|
|
95
|
+
document.head.appendChild(estilo)
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
function aplicar(p: PreferenciasAcaiUi): void {
|
|
99
|
+
if (typeof document === 'undefined') return
|
|
100
|
+
const html = document.documentElement
|
|
101
|
+
// Tamanho da fonte: aplicado de verdade (tudo na lib usa rem).
|
|
102
|
+
html.style.fontSize = `${p.tamanhoFonte}%`
|
|
103
|
+
// Tema escuro: Quasar liga `body.body--dark`, que escurece os componentes
|
|
104
|
+
// nativos; a lib complementa via `_themes.scss` (.body--dark). É a fonte de
|
|
105
|
+
// verdade do dark mode — o atributo abaixo fica só como gancho semântico.
|
|
106
|
+
try {
|
|
107
|
+
Dark.set(p.tema === 'escuro')
|
|
108
|
+
} catch {
|
|
109
|
+
/* Quasar Dark indisponível (fora de app Quasar) — segue só com o atributo */
|
|
110
|
+
}
|
|
111
|
+
// Atributos que a aplicação/lib podem usar pra tematizar (gancho pronto).
|
|
112
|
+
html.setAttribute('data-acai-tema', p.tema)
|
|
113
|
+
html.setAttribute('data-acai-daltonismo', p.daltonismo)
|
|
114
|
+
html.toggleAttribute('data-acai-contraste', p.altoContraste)
|
|
115
|
+
html.toggleAttribute('data-acai-reduzir-anim', p.reduzirAnimacoes)
|
|
116
|
+
if (p.reduzirAnimacoes) garantirEstiloReduzirAnim()
|
|
117
|
+
// Persistência
|
|
118
|
+
try {
|
|
119
|
+
window.localStorage.setItem(CHAVE, JSON.stringify(p))
|
|
120
|
+
} catch {
|
|
121
|
+
/* sem localStorage — segue sem persistir */
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Preferências de acessibilidade/aparência do app, persistidas neste dispositivo.
|
|
127
|
+
* Estado é singleton (compartilhado por todos os `usePreferencias()`).
|
|
128
|
+
*
|
|
129
|
+
* Aplica de fato: **tema escuro** (Quasar `Dark` + `_themes.scss`), **tamanho da
|
|
130
|
+
* fonte** (root font-size) e **reduzir animações** (regra global). Daltonismo e alto
|
|
131
|
+
* contraste ainda só marcam `<html data-acai-*>` — a camada de tema (`_themes.scss`)
|
|
132
|
+
* já está preparada pra ligá-los reusando os mesmos `--acai-*`.
|
|
133
|
+
*/
|
|
134
|
+
export function usePreferencias() {
|
|
135
|
+
if (!estado) {
|
|
136
|
+
estado = reactive(carregar())
|
|
137
|
+
aplicar(estado)
|
|
138
|
+
watch(estado, (p) => aplicar(p), { deep: true })
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
function redefinir(): void {
|
|
142
|
+
Object.assign(estado as PreferenciasAcaiUi, PADRAO)
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
return {
|
|
146
|
+
/** Estado reativo (mutável via bind direto nos controles). */
|
|
147
|
+
preferencias: estado,
|
|
148
|
+
/** Cópia somente-leitura, útil pra ler sem risco de escrita acidental. */
|
|
149
|
+
somenteLeitura: readonly(estado),
|
|
150
|
+
redefinir,
|
|
151
|
+
}
|
|
152
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { computed, type ComputedRef } from 'vue'
|
|
2
|
+
|
|
3
|
+
// INTERNO — de propósito fora do barrel `hooks/index.ts`. É detalhe de
|
|
4
|
+
// implementação dos wrappers de componente Quasar, não API pública da lib.
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Repassa ao `q-*` tudo o que o wrapper recebeu, menos o que a lib consome ou
|
|
8
|
+
* compõe por conta própria.
|
|
9
|
+
*
|
|
10
|
+
* **Por que existe:** os wrappers tipam props como `extends Omit<QXProps, ...>`,
|
|
11
|
+
* então TODA prop do Quasar — inclusive os eventos, que ele declara como
|
|
12
|
+
* `onFocus`, `onFilter`, ... — vira prop DECLARADA do wrapper. Prop declarada
|
|
13
|
+
* sai do `$attrs` e **não faz fallthrough**: só chega no `q-*` o que o wrapper
|
|
14
|
+
* repassar à mão. Enquanto esse repasse foi uma lista escrita à mão, o que
|
|
15
|
+
* ficava de fora nascia morto — aceito pelo TypeScript, montado sem erro e sem
|
|
16
|
+
* efeito nenhum. Já custou `@focus`/`@blur`, `@filter` (a busca server-side do
|
|
17
|
+
* `q-select`) e, do lado das props, `debounce`, `counter`, `autogrow` e
|
|
18
|
+
* `autofocus`.
|
|
19
|
+
*
|
|
20
|
+
* **Por que não tirar as props do Quasar do tipo:** `Omit<QXProps, \`on${string}\`>`
|
|
21
|
+
* seria a solução de raiz — virariam attrs e o fallthrough resolveria sozinho.
|
|
22
|
+
* Mas o `@vue/compiler-sfc` não resolve template literal em `Omit` e o build
|
|
23
|
+
* quebra com "Failed to resolve extends base type" (o `vue-tsc` aceita — o
|
|
24
|
+
* resolver do compiler é mais limitado que o do TS). E remover as props do tipo
|
|
25
|
+
* sem mais nada tiraria do consumidor o autocomplete e a checagem que ele tem
|
|
26
|
+
* hoje.
|
|
27
|
+
*
|
|
28
|
+
* **A inversão que isso traz:** a lista mantida à mão passa a ser a das props da
|
|
29
|
+
* PRÓPRIA lib (`naoRepassar`) — pequena, estável e sob nosso controle. A lista
|
|
30
|
+
* do Quasar, que muda fora do nosso controle, flui sozinha: prop nova dele já
|
|
31
|
+
* nasce ligada.
|
|
32
|
+
*
|
|
33
|
+
* 🔴 **Prop de três estados exige `default: undefined` no `withDefaults`.** O Vue
|
|
34
|
+
* casta prop booleana AUSENTE para `false`, e algumas props do Quasar são
|
|
35
|
+
* `Boolean | null` onde `null` significa "herda" e `false` significa "força
|
|
36
|
+
* desligado" — `dark` é a mais grave (`null` = segue o tema, `false` = força
|
|
37
|
+
* claro). Sem o `undefined` explícito, repassar tudo desligaria o tema escuro em
|
|
38
|
+
* todo campo de todo app. Com ele, a prop ausente fica `undefined` e é filtrada
|
|
39
|
+
* aqui, deixando o Quasar aplicar o default dele.
|
|
40
|
+
*
|
|
41
|
+
* @param props as props do wrapper (`defineProps`).
|
|
42
|
+
* @param naoRepassar props que a lib CONSOME (não existem no `q-*`, e vazariam
|
|
43
|
+
* como atributo no DOM) ou COMPÕE (o wrapper repassa com valor próprio).
|
|
44
|
+
*/
|
|
45
|
+
export function useRepasseQuasar(
|
|
46
|
+
props: object,
|
|
47
|
+
naoRepassar: readonly string[] = [],
|
|
48
|
+
): ComputedRef<Record<string, unknown>> {
|
|
49
|
+
// `modelValue`/`update:modelValue` vêm do `defineModel` em todo wrapper — o
|
|
50
|
+
// template já os liga por `v-model`, repassar aqui duplicaria a ligação.
|
|
51
|
+
const ignorados = new Set<string>(['modelValue', 'onUpdate:modelValue', ...naoRepassar])
|
|
52
|
+
|
|
53
|
+
return computed(() => {
|
|
54
|
+
const repasse: Record<string, unknown> = {}
|
|
55
|
+
for (const [nome, valor] of Object.entries(props)) {
|
|
56
|
+
// `undefined` é "não passou": deixa o Quasar aplicar o default dele, que
|
|
57
|
+
// nem sempre é `undefined` (`optionValue` é `'value'`, `dark` é `null`).
|
|
58
|
+
if (valor === undefined || ignorados.has(nome)) continue
|
|
59
|
+
repasse[nome] = valor
|
|
60
|
+
}
|
|
61
|
+
return repasse
|
|
62
|
+
})
|
|
63
|
+
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { onBeforeUnmount, onMounted, ref, type Ref } from 'vue'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Mede a caixa de um elemento e mantém a medida atualizada.
|
|
5
|
+
*
|
|
6
|
+
* Existe pro gráfico renderizar 1:1 em vez de esticar o `viewBox`. Esticar
|
|
7
|
+
* escalaria o TEXTO junto: a mesma folha em 380px e em 1400px teria rótulo de
|
|
8
|
+
* 8px e de 20px — abaixo do legível num caso, e ignorando a preferência de
|
|
9
|
+
* tamanho de fonte do usuário (`html { font-size: X% }`) no outro.
|
|
10
|
+
*
|
|
11
|
+
* SSR-safe: nada toca o DOM fora do `onMounted`, e cada observador é criado só
|
|
12
|
+
* se existir no ambiente.
|
|
13
|
+
*/
|
|
14
|
+
export interface TamanhoElemento {
|
|
15
|
+
largura: Ref<number>
|
|
16
|
+
altura: Ref<number>
|
|
17
|
+
/** `false` até a primeira medição real. Quem desenha usa o padrão nesse meio-tempo. */
|
|
18
|
+
medido: Ref<boolean>
|
|
19
|
+
/** Força uma releitura (troca de aba, fim de animação, mudança de fonte). */
|
|
20
|
+
remedir: () => void
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface PadraoTamanho {
|
|
24
|
+
largura?: number
|
|
25
|
+
altura?: number
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export function useTamanhoElemento(
|
|
29
|
+
alvo: Ref<HTMLElement | null | undefined>,
|
|
30
|
+
padrao: PadraoTamanho = {},
|
|
31
|
+
): TamanhoElemento {
|
|
32
|
+
// Antes de medir, renderizar no padrão em vez de esconder: dá HTML válido em
|
|
33
|
+
// SSR (bom pra impressão) e evita o salto de layout do "aparece do nada".
|
|
34
|
+
const largura = ref(padrao.largura ?? 640)
|
|
35
|
+
const altura = ref(padrao.altura ?? 320)
|
|
36
|
+
const medido = ref(false)
|
|
37
|
+
|
|
38
|
+
let observadorTamanho: ResizeObserver | null = null
|
|
39
|
+
let observadorVisibilidade: IntersectionObserver | null = null
|
|
40
|
+
let agendado = 0
|
|
41
|
+
|
|
42
|
+
function medir(): void {
|
|
43
|
+
const el = alvo.value
|
|
44
|
+
if (!el) return
|
|
45
|
+
const caixa = el.getBoundingClientRect()
|
|
46
|
+
// Caixa zerada = ainda sem layout (montado escondido). Manter o padrão é
|
|
47
|
+
// melhor do que gravar 0 e desenhar um SVG vazio.
|
|
48
|
+
if (caixa.width <= 0 && caixa.height <= 0) return
|
|
49
|
+
|
|
50
|
+
if (caixa.width > 0) largura.value = caixa.width
|
|
51
|
+
if (caixa.height > 0) altura.value = caixa.height
|
|
52
|
+
medido.value = true
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Agenda a medição para o próximo frame.
|
|
57
|
+
*
|
|
58
|
+
* Medir SÍNCRONO dentro do callback do ResizeObserver dispara o aviso
|
|
59
|
+
* "ResizeObserver loop completed with undelivered notifications" — e aqui é
|
|
60
|
+
* garantido, porque o próprio gráfico muda a altura do container que está
|
|
61
|
+
* sendo observado (`autoHeight`).
|
|
62
|
+
*/
|
|
63
|
+
function remedir(): void {
|
|
64
|
+
if (typeof requestAnimationFrame === 'undefined') {
|
|
65
|
+
medir()
|
|
66
|
+
return
|
|
67
|
+
}
|
|
68
|
+
if (agendado) return
|
|
69
|
+
agendado = requestAnimationFrame(() => {
|
|
70
|
+
agendado = 0
|
|
71
|
+
medir()
|
|
72
|
+
})
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
onMounted(() => {
|
|
76
|
+
medir()
|
|
77
|
+
// No frame do mount a fonte pode não ter sido diagramada ainda.
|
|
78
|
+
remedir()
|
|
79
|
+
|
|
80
|
+
const el = alvo.value
|
|
81
|
+
if (!el) return
|
|
82
|
+
|
|
83
|
+
if (typeof ResizeObserver !== 'undefined') {
|
|
84
|
+
observadorTamanho = new ResizeObserver(remedir)
|
|
85
|
+
observadorTamanho.observe(el)
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// Gráfico montado dentro de aba/expansion/modal fechado nasce com caixa 0 e
|
|
89
|
+
// só ganha layout ao aparecer — e aí a CAIXA não muda, então o
|
|
90
|
+
// ResizeObserver nunca dispara e o gráfico fica no tamanho padrão pra
|
|
91
|
+
// sempre. Mesma armadilha já documentada no acai-ui-table-justificativa.
|
|
92
|
+
if (typeof IntersectionObserver !== 'undefined') {
|
|
93
|
+
observadorVisibilidade = new IntersectionObserver((entradas) => {
|
|
94
|
+
if (entradas.some((e) => e.isIntersecting)) remedir()
|
|
95
|
+
})
|
|
96
|
+
observadorVisibilidade.observe(el)
|
|
97
|
+
}
|
|
98
|
+
})
|
|
99
|
+
|
|
100
|
+
onBeforeUnmount(() => {
|
|
101
|
+
observadorTamanho?.disconnect()
|
|
102
|
+
observadorVisibilidade?.disconnect()
|
|
103
|
+
if (agendado && typeof cancelAnimationFrame !== 'undefined') cancelAnimationFrame(agendado)
|
|
104
|
+
})
|
|
105
|
+
|
|
106
|
+
return { largura, altura, medido, remedir }
|
|
107
|
+
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { computed, toValue, type ComputedRef, type MaybeRefOrGetter } from 'vue'
|
|
2
|
+
import { useQuasar } from 'quasar'
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Breakpoints em número, espelhando `scss/_breakpoints.scss`.
|
|
6
|
+
*
|
|
7
|
+
* Existem em duplicata (SCSS + TS) porque não há como um `@media` ler uma
|
|
8
|
+
* constante de runtime nem o contrário. A regra é: quem muda só de ESTILO usa
|
|
9
|
+
* o mixin SCSS; quem muda de COMPORTAMENTO usa isto aqui. Mexeu num, mexe no
|
|
10
|
+
* outro.
|
|
11
|
+
*/
|
|
12
|
+
export const BREAKPOINTS = {
|
|
13
|
+
/** < 600px — celular */
|
|
14
|
+
sm: 600,
|
|
15
|
+
/** < 1024px — tablet paisagem / laptop */
|
|
16
|
+
md: 1024,
|
|
17
|
+
/** < 1440px — desktop */
|
|
18
|
+
lg: 1440,
|
|
19
|
+
/** < 1920px — desktop grande */
|
|
20
|
+
xl: 1920,
|
|
21
|
+
} as const
|
|
22
|
+
|
|
23
|
+
export interface TelaAcaiUi {
|
|
24
|
+
/** Largura da viewport em px. **0 enquanto não houve medição** — ver `medido`. */
|
|
25
|
+
largura: ComputedRef<number>
|
|
26
|
+
/**
|
|
27
|
+
* `false` no servidor (SSR) e durante o render de hidratação; `true` a partir
|
|
28
|
+
* do momento em que o Quasar mediu a viewport de verdade.
|
|
29
|
+
*
|
|
30
|
+
* Em SPA nasce `true`: o `Screen` do Quasar mede no `install`, antes do mount.
|
|
31
|
+
*/
|
|
32
|
+
medido: ComputedRef<boolean>
|
|
33
|
+
/** Viewport ≤ 599.98px (o `xs` do Quasar, o `ate-mobile` do SCSS). */
|
|
34
|
+
ehMobile: ComputedRef<boolean>
|
|
35
|
+
/** Viewport ≤ 1023.98px — celular ou tablet retrato (`ate-tablet` do SCSS). */
|
|
36
|
+
ateTablet: ComputedRef<boolean>
|
|
37
|
+
/** Ponteiro grosso (dedo/caneta). É sobre COMO se aponta, não sobre largura. */
|
|
38
|
+
ehToque: ComputedRef<boolean>
|
|
39
|
+
/** Viewport ≤ `limite`. Aceita número, ref ou getter (ex.: `() => props.breakpoint`). */
|
|
40
|
+
abaixoDe: (limite: MaybeRefOrGetter<number>) => ComputedRef<boolean>
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Leitura de viewport que funciona igual em SPA e em SSR.
|
|
45
|
+
*
|
|
46
|
+
* ## Por que não usar `$q.screen` direto
|
|
47
|
+
*
|
|
48
|
+
* `$q.screen.width` **é 0 em SSR**, e não por acidente. No fonte do Quasar
|
|
49
|
+
* (`plugins/screen/Screen.js`):
|
|
50
|
+
*
|
|
51
|
+
* - no servidor o `install()` retorna em `if (__QUASAR_SSR_SERVER__) return`
|
|
52
|
+
* logo depois de `$q.screen = this` — os defaults nunca são atualizados;
|
|
53
|
+
* - no cliente, quando a página veio do servidor, a medição (`start`) é
|
|
54
|
+
* empurrada pra `onSSRHydrated`, ou seja roda **depois** da hidratação.
|
|
55
|
+
*
|
|
56
|
+
* Isso é deliberado: servidor e render de hidratação enxergam o MESMO 0, então
|
|
57
|
+
* a marcação bate e não há erro de hidratação. O preço é que, entre o primeiro
|
|
58
|
+
* byte e o fim da hidratação, ninguém sabe a largura.
|
|
59
|
+
*
|
|
60
|
+
* Ler `$q.screen.width` cru nesse intervalo dá "0", e `0 <= breakpoint` é
|
|
61
|
+
* verdadeiro — um componente ingênuo renderiza **mobile no desktop** e pisca.
|
|
62
|
+
* Guardar com `width > 0` conserta o pisca mas inverte o erro: o celular recebe
|
|
63
|
+
* o layout de desktop na primeira pintura e só corrige depois de hidratar —
|
|
64
|
+
* salto de layout em toda navegação.
|
|
65
|
+
*
|
|
66
|
+
* ## O que este hook faz
|
|
67
|
+
*
|
|
68
|
+
* Enquanto não há medição, o palpite vem do **User-Agent**, que o Quasar
|
|
69
|
+
* resolve no servidor a partir do header da requisição (`Platform.parseSSR`) e
|
|
70
|
+
* mantém idêntico no cliente até a hidratação terminar (`preHydrationBrowser`,
|
|
71
|
+
* guardado justamente "in order to prevent hydration errors"). Servidor e
|
|
72
|
+
* cliente chegam à mesma resposta — sem mismatch — e um celular já recebe o
|
|
73
|
+
* layout de celular na primeira pintura. Assim que a medição chega, ela manda,
|
|
74
|
+
* e a UA vira irrelevante.
|
|
75
|
+
*
|
|
76
|
+
* Em SPA nada disso acontece: `medido` já é `true` no primeiro render e o
|
|
77
|
+
* caminho da UA nunca é exercido.
|
|
78
|
+
*
|
|
79
|
+
* ## Quando NÃO usar
|
|
80
|
+
*
|
|
81
|
+
* Se a mudança é só de estilo, use `@include ate-mobile` do
|
|
82
|
+
* `scss/_breakpoints.scss`. Media query é resolvida pelo navegador na primeira
|
|
83
|
+
* pintura, sem JS e sem hidratação — é sempre a opção mais correta e mais
|
|
84
|
+
* barata. Este hook é pro caso em que o COMPORTAMENTO muda: outra prop, outro
|
|
85
|
+
* componente, outra árvore.
|
|
86
|
+
*/
|
|
87
|
+
export function useTela(): TelaAcaiUi {
|
|
88
|
+
const $q = useQuasar()
|
|
89
|
+
|
|
90
|
+
const largura = computed<number>(() => $q.screen.width)
|
|
91
|
+
const medido = computed<boolean>(() => $q.screen.width > 0)
|
|
92
|
+
|
|
93
|
+
// Palpite pré-medição. `is.mobile` cobre celular e tablet — é grosso de
|
|
94
|
+
// propósito: a única pergunta que dá pra responder por UA com honestidade é
|
|
95
|
+
// "isto é um aparelho de mão?", não "quantos pixels tem".
|
|
96
|
+
const palpiteMobile = computed<boolean>(() => $q.platform.is.mobile === true)
|
|
97
|
+
|
|
98
|
+
function abaixoDe(limite: MaybeRefOrGetter<number>): ComputedRef<boolean> {
|
|
99
|
+
return computed<boolean>(() =>
|
|
100
|
+
medido.value ? $q.screen.width <= toValue(limite) : palpiteMobile.value,
|
|
101
|
+
)
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
return {
|
|
105
|
+
largura,
|
|
106
|
+
medido,
|
|
107
|
+
ehMobile: abaixoDe(BREAKPOINTS.sm - 0.02),
|
|
108
|
+
ateTablet: abaixoDe(BREAKPOINTS.md - 0.02),
|
|
109
|
+
// `has.touch` também é resolvido por UA no SSR, então segue a mesma regra
|
|
110
|
+
// de parceria servidor/cliente do resto do hook.
|
|
111
|
+
ehToque: computed<boolean>(() => $q.platform.has.touch === true),
|
|
112
|
+
abaixoDe,
|
|
113
|
+
}
|
|
114
|
+
}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import { ref, watch, nextTick, type Ref } from 'vue'
|
|
2
|
+
import { scrollParaElemento } from '../utils/scroll-elemento'
|
|
3
|
+
|
|
4
|
+
export interface ErroValidacao {
|
|
5
|
+
label: string
|
|
6
|
+
secao: string
|
|
7
|
+
aba: string
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface SeletoresValidacao {
|
|
11
|
+
secao?: string
|
|
12
|
+
secaoTitulo?: string
|
|
13
|
+
secaoIndicador?: string
|
|
14
|
+
secaoCabecalho?: string
|
|
15
|
+
campoErro?: string
|
|
16
|
+
scrollContainer?: string
|
|
17
|
+
campoLabel?: string
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export interface OpcoesValidacaoVisual {
|
|
21
|
+
tab: Ref<string>
|
|
22
|
+
formRef: Ref<{ validate: () => Promise<boolean> } | null>
|
|
23
|
+
labelAbas?: Record<string, string>
|
|
24
|
+
seletores?: SeletoresValidacao
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
const SELETORES_PADRAO: Required<SeletoresValidacao> = {
|
|
28
|
+
secao: '.secao-ficha',
|
|
29
|
+
secaoTitulo: '.secao-ficha__titulo',
|
|
30
|
+
secaoIndicador: '.secao-ficha__indicador',
|
|
31
|
+
secaoCabecalho: '.secao-ficha__cabecalho',
|
|
32
|
+
campoErro: '.q-field--error',
|
|
33
|
+
scrollContainer: '.q-page.container-page',
|
|
34
|
+
campoLabel: '.q-field__label',
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
function obterSecoesComErro(erros: ErroValidacao[], aba: string): Set<string> {
|
|
38
|
+
return new Set(erros.filter(e => e.aba === aba).map(e => e.secao))
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
function marcarBolinhasNoDOM(erros: ErroValidacao[], abaAtual: string, s: Required<SeletoresValidacao>): void {
|
|
42
|
+
const secoesComErro = obterSecoesComErro(erros, abaAtual)
|
|
43
|
+
const secoes = document.querySelectorAll(s.secao)
|
|
44
|
+
|
|
45
|
+
for (const secao of secoes) {
|
|
46
|
+
const title = secao.querySelector(s.secaoTitulo)?.textContent?.trim() ?? ''
|
|
47
|
+
const indicador = secao.querySelector(s.secaoIndicador)
|
|
48
|
+
if (!indicador) continue
|
|
49
|
+
|
|
50
|
+
indicador.classList.remove('secao-ficha__indicador--alerta')
|
|
51
|
+
if (secoesComErro.has(title)) {
|
|
52
|
+
indicador.classList.remove(
|
|
53
|
+
'secao-ficha__indicador--positivo',
|
|
54
|
+
'secao-ficha__indicador--negativo',
|
|
55
|
+
'secao-ficha__indicador--neutro',
|
|
56
|
+
)
|
|
57
|
+
indicador.classList.add('secao-ficha__indicador--alerta')
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
function abrirFecharSecoesNoDOM(erros: ErroValidacao[], abaAtual: string, s: Required<SeletoresValidacao>): void {
|
|
63
|
+
const secoesComErro = obterSecoesComErro(erros, abaAtual)
|
|
64
|
+
const secoes = document.querySelectorAll(s.secao)
|
|
65
|
+
|
|
66
|
+
for (const secao of secoes) {
|
|
67
|
+
const title = secao.querySelector(s.secaoTitulo)?.textContent?.trim() ?? ''
|
|
68
|
+
const cabecalho = secao.querySelector(s.secaoCabecalho) as HTMLElement | null
|
|
69
|
+
if (!cabecalho) continue
|
|
70
|
+
|
|
71
|
+
const expansao = secao.querySelector('.q-expansion-item')
|
|
72
|
+
const estaAberto = expansao?.classList.contains('q-expansion-item--expanded')
|
|
73
|
+
const temErro = secoesComErro.has(title)
|
|
74
|
+
|
|
75
|
+
if (temErro && !estaAberto) cabecalho.click()
|
|
76
|
+
else if (!temErro && estaAberto) cabecalho.click()
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
function abrirSecaoEspecificaNoDOM(secaoNome: string, s: Required<SeletoresValidacao>): void {
|
|
81
|
+
const secoes = document.querySelectorAll(s.secao)
|
|
82
|
+
for (const secaoEl of secoes) {
|
|
83
|
+
const title = secaoEl.querySelector(s.secaoTitulo)?.textContent?.trim() ?? ''
|
|
84
|
+
if (title !== secaoNome) continue
|
|
85
|
+
|
|
86
|
+
const expansao = secaoEl.querySelector('.q-expansion-item')
|
|
87
|
+
const estaAberto = expansao?.classList.contains('q-expansion-item--expanded')
|
|
88
|
+
if (!estaAberto) {
|
|
89
|
+
const cabecalho = secaoEl.querySelector(s.secaoCabecalho) as HTMLElement | null
|
|
90
|
+
cabecalho?.click()
|
|
91
|
+
}
|
|
92
|
+
break
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
function scrollParaPrimeiroErroNoDOM(s: Required<SeletoresValidacao>): void {
|
|
97
|
+
const primeiroErro = document.querySelector(s.campoErro)
|
|
98
|
+
if (!primeiroErro) return
|
|
99
|
+
scrollParaElemento(primeiroErro, s.scrollContainer)
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
function encontrarCampoPorLabel(label: string, secaoNome: string, s: Required<SeletoresValidacao>): Element | null {
|
|
103
|
+
const secoes = document.querySelectorAll(s.secao)
|
|
104
|
+
for (const secaoEl of secoes) {
|
|
105
|
+
const tituloSecao = secaoEl.querySelector(s.secaoTitulo)?.textContent?.trim() ?? ''
|
|
106
|
+
if (tituloSecao !== secaoNome) continue
|
|
107
|
+
|
|
108
|
+
const campos = secaoEl.querySelectorAll('.q-field')
|
|
109
|
+
for (const campo of campos) {
|
|
110
|
+
const labelEl = campo.querySelector(s.campoLabel)?.textContent?.trim()?.replace(/\s*\*\s*$/, '').trim()
|
|
111
|
+
if (labelEl === label) return campo
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return null
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
export function useValidacaoVisual(opcoes: OpcoesValidacaoVisual) {
|
|
118
|
+
const { tab, formRef } = opcoes
|
|
119
|
+
const labelAbas = opcoes.labelAbas ?? {}
|
|
120
|
+
const s: Required<SeletoresValidacao> = { ...SELETORES_PADRAO, ...opcoes.seletores }
|
|
121
|
+
|
|
122
|
+
const modalAberto = ref(false)
|
|
123
|
+
const erros = ref<ErroValidacao[]>([])
|
|
124
|
+
const campoAlvo = ref<ErroValidacao | null>(null)
|
|
125
|
+
|
|
126
|
+
function exibirErros(listaErros: ErroValidacao[]): void {
|
|
127
|
+
erros.value = listaErros
|
|
128
|
+
modalAberto.value = true
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
function marcarBolinhas(listaErros?: ErroValidacao[]): void {
|
|
132
|
+
marcarBolinhasNoDOM(listaErros ?? erros.value, tab.value, s)
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
function navegarParaCampo(campo: ErroValidacao): void {
|
|
136
|
+
campoAlvo.value = campo
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
function obterLabelAbas(): Record<string, string> {
|
|
140
|
+
return labelAbas
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
watch(modalAberto, async (novo, antigo) => {
|
|
144
|
+
if (!antigo || novo) return
|
|
145
|
+
const listaErros = erros.value
|
|
146
|
+
if (listaErros.length === 0) return
|
|
147
|
+
|
|
148
|
+
const alvo = campoAlvo.value
|
|
149
|
+
campoAlvo.value = null
|
|
150
|
+
|
|
151
|
+
const abaDestino = alvo?.aba
|
|
152
|
+
?? (listaErros.some(e => e.aba === tab.value) ? tab.value : listaErros[0]!.aba)
|
|
153
|
+
|
|
154
|
+
if (abaDestino !== tab.value) {
|
|
155
|
+
tab.value = abaDestino
|
|
156
|
+
await nextTick()
|
|
157
|
+
await nextTick()
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
await formRef.value?.validate()
|
|
161
|
+
await nextTick()
|
|
162
|
+
|
|
163
|
+
abrirFecharSecoesNoDOM(listaErros, tab.value, s)
|
|
164
|
+
marcarBolinhasNoDOM(listaErros, tab.value, s)
|
|
165
|
+
|
|
166
|
+
if (alvo) abrirSecaoEspecificaNoDOM(alvo.secao, s)
|
|
167
|
+
|
|
168
|
+
await new Promise(r => setTimeout(r, 300))
|
|
169
|
+
|
|
170
|
+
if (alvo) {
|
|
171
|
+
const campoEl = encontrarCampoPorLabel(alvo.label, alvo.secao, s)
|
|
172
|
+
if (campoEl) {
|
|
173
|
+
scrollParaElemento(campoEl, s.scrollContainer)
|
|
174
|
+
return
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
scrollParaPrimeiroErroNoDOM(s)
|
|
179
|
+
})
|
|
180
|
+
|
|
181
|
+
return {
|
|
182
|
+
modalAberto,
|
|
183
|
+
erros,
|
|
184
|
+
exibirErros,
|
|
185
|
+
marcarBolinhas,
|
|
186
|
+
navegarParaCampo,
|
|
187
|
+
obterLabelAbas,
|
|
188
|
+
}
|
|
189
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
// @para-springboot/acai-ui — entry point
|
|
2
|
+
|
|
3
|
+
// === Camada de tema global ===
|
|
4
|
+
// Torna o bundle `@para-springboot/acai-ui/styles` (dist/acai-ui.css) self-contained:
|
|
5
|
+
// emite os :root/.body--dark/[data-acai-*] com as custom properties `--acai-*`, pra
|
|
6
|
+
// dark/daltônico/contraste funcionarem mesmo importando só `/styles`.
|
|
7
|
+
import './styles-global.scss'
|
|
8
|
+
|
|
9
|
+
// === Components ===
|
|
10
|
+
export * from './components'
|
|
11
|
+
|
|
12
|
+
// === Constants ===
|
|
13
|
+
export * from './constants'
|
|
14
|
+
|
|
15
|
+
// === Utils ===
|
|
16
|
+
export * from './utils'
|
|
17
|
+
|
|
18
|
+
// === Hooks ===
|
|
19
|
+
export * from './hooks'
|
|
20
|
+
|
|
21
|
+
// === Plugin ===
|
|
22
|
+
export { AcaiUI, ACAI_UI_CONFIG } from './plugin'
|
|
23
|
+
export type {
|
|
24
|
+
AcaiUIOptions,
|
|
25
|
+
AcaiUIConfig,
|
|
26
|
+
BreadcrumbsResolver,
|
|
27
|
+
BreadcrumbsResolverResult,
|
|
28
|
+
} from './plugin'
|
|
29
|
+
|
|
30
|
+
export const VERSION = '0.2.0'
|