voa-ds-core 1.0.3
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/dist/cjs/icons-zJ6d3Dsx.js +43 -0
- package/dist/cjs/icons-zJ6d3Dsx.js.map +1 -0
- package/dist/cjs/index-TzstRlIU.js +1895 -0
- package/dist/cjs/index-TzstRlIU.js.map +1 -0
- package/dist/cjs/index.cjs.js +3 -0
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/loader.cjs.js +13 -0
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/cjs/voa-accordion.cjs.entry.js +75 -0
- package/dist/cjs/voa-accordion.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-alert.cjs.entry.js +73 -0
- package/dist/cjs/voa-alert.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-avatar.cjs.entry.js +80 -0
- package/dist/cjs/voa-avatar.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-badge.cjs.entry.js +99 -0
- package/dist/cjs/voa-badge.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-breadcrumbs-divider.cjs.entry.js +40 -0
- package/dist/cjs/voa-breadcrumbs-divider.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-breadcrumbs-item.cjs.entry.js +27 -0
- package/dist/cjs/voa-breadcrumbs-item.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-breadcrumbs.cjs.entry.js +26 -0
- package/dist/cjs/voa-breadcrumbs.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-button.cjs.entry.js +90 -0
- package/dist/cjs/voa-button.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-card.cjs.entry.js +18 -0
- package/dist/cjs/voa-card.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-checkbox.cjs.entry.js +124 -0
- package/dist/cjs/voa-checkbox.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-container-multi-select.cjs.entry.js +90 -0
- package/dist/cjs/voa-container-multi-select.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-datepicker.cjs.entry.js +22 -0
- package/dist/cjs/voa-datepicker.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-drawer.cjs.entry.js +23 -0
- package/dist/cjs/voa-drawer.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-dropdown.cjs.entry.js +27 -0
- package/dist/cjs/voa-dropdown.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-input-addon.cjs.entry.js +123 -0
- package/dist/cjs/voa-input-addon.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-input.cjs.entry.js +191 -0
- package/dist/cjs/voa-input.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-keybinding.cjs.entry.js +30 -0
- package/dist/cjs/voa-keybinding.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-link.cjs.entry.js +19 -0
- package/dist/cjs/voa-link.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-list.cjs.entry.js +19 -0
- package/dist/cjs/voa-list.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-modal.cjs.entry.js +23 -0
- package/dist/cjs/voa-modal.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-option.cjs.entry.js +85 -0
- package/dist/cjs/voa-option.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-pagination-item.cjs.entry.js +53 -0
- package/dist/cjs/voa-pagination-item.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-pagination.cjs.entry.js +82 -0
- package/dist/cjs/voa-pagination.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-progress.cjs.entry.js +19 -0
- package/dist/cjs/voa-progress.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-radio.cjs.entry.js +61 -0
- package/dist/cjs/voa-radio.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-select-base.cjs.entry.js +177 -0
- package/dist/cjs/voa-select-base.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-select.cjs.entry.js +142 -0
- package/dist/cjs/voa-select.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-skeleton.cjs.entry.js +24 -0
- package/dist/cjs/voa-skeleton.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-stepper.cjs.entry.js +26 -0
- package/dist/cjs/voa-stepper.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-switch.cjs.entry.js +107 -0
- package/dist/cjs/voa-switch.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-tab-item.cjs.entry.js +85 -0
- package/dist/cjs/voa-tab-item.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-tab.cjs.entry.js +129 -0
- package/dist/cjs/voa-tab.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-table.cjs.entry.js +20 -0
- package/dist/cjs/voa-table.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-tag.cjs.entry.js +45 -0
- package/dist/cjs/voa-tag.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-text-area.cjs.entry.js +118 -0
- package/dist/cjs/voa-text-area.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-timepicker.cjs.entry.js +18 -0
- package/dist/cjs/voa-timepicker.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-tooltip-arrow.cjs.entry.js +32 -0
- package/dist/cjs/voa-tooltip-arrow.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-tooltip.cjs.entry.js +78 -0
- package/dist/cjs/voa-tooltip.entry.cjs.js.map +1 -0
- package/dist/cjs/voa-upload.cjs.entry.js +18 -0
- package/dist/cjs/voa-upload.entry.cjs.js.map +1 -0
- package/dist/cjs/voa.cjs.js +25 -0
- package/dist/cjs/voa.cjs.js.map +1 -0
- package/dist/collection/Stories/SaasDashboard.stories.js +527 -0
- package/dist/collection/Stories/SaasDashboard.stories.js.map +1 -0
- package/dist/collection/Stories/styles/voa-radio.styles.js +155 -0
- package/dist/collection/Stories/styles/voa-radio.styles.js.map +1 -0
- package/dist/collection/collection-manifest.json +50 -0
- package/dist/collection/components/GetStarted/AddingNewBrand.stories.js +214 -0
- package/dist/collection/components/GetStarted/AddingNewBrand.stories.js.map +1 -0
- package/dist/collection/components/GetStarted/ComoUsar.stories.js +486 -0
- package/dist/collection/components/GetStarted/ComoUsar.stories.js.map +1 -0
- package/dist/collection/components/GetStarted/GetStarted.stories.js +202 -0
- package/dist/collection/components/GetStarted/GetStarted.stories.js.map +1 -0
- package/dist/collection/components/SaasDashboard/SaasDashboard.stories.js +693 -0
- package/dist/collection/components/SaasDashboard/SaasDashboard.stories.js.map +1 -0
- package/dist/collection/components/Theme/ThemeProvider.js +71 -0
- package/dist/collection/components/Theme/ThemeProvider.js.map +1 -0
- package/dist/collection/components/Theme/generate-css-variables.js +32 -0
- package/dist/collection/components/Theme/generate-css-variables.js.map +1 -0
- package/dist/collection/components/voa-accordion/voa-accordion.css +75 -0
- package/dist/collection/components/voa-accordion/voa-accordion.js +188 -0
- package/dist/collection/components/voa-accordion/voa-accordion.js.map +1 -0
- package/dist/collection/components/voa-accordion/voa-accordion.stories.js +332 -0
- package/dist/collection/components/voa-accordion/voa-accordion.stories.js.map +1 -0
- package/dist/collection/components/voa-alert/voa-alert.css +78 -0
- package/dist/collection/components/voa-alert/voa-alert.js +342 -0
- package/dist/collection/components/voa-alert/voa-alert.js.map +1 -0
- package/dist/collection/components/voa-alert/voa-alert.stories.js +495 -0
- package/dist/collection/components/voa-alert/voa-alert.stories.js.map +1 -0
- package/dist/collection/components/voa-avatar/voa-avatar.css +103 -0
- package/dist/collection/components/voa-avatar/voa-avatar.js +221 -0
- package/dist/collection/components/voa-avatar/voa-avatar.js.map +1 -0
- package/dist/collection/components/voa-avatar/voa-avatar.stories.js +423 -0
- package/dist/collection/components/voa-avatar/voa-avatar.stories.js.map +1 -0
- package/dist/collection/components/voa-badge/voa-badge.css +59 -0
- package/dist/collection/components/voa-badge/voa-badge.js +266 -0
- package/dist/collection/components/voa-badge/voa-badge.js.map +1 -0
- package/dist/collection/components/voa-badge/voa-badge.stories.js +387 -0
- package/dist/collection/components/voa-badge/voa-badge.stories.js.map +1 -0
- package/dist/collection/components/voa-breadcrumbs/voa-breadcrumbs.css +29 -0
- package/dist/collection/components/voa-breadcrumbs/voa-breadcrumbs.js +58 -0
- package/dist/collection/components/voa-breadcrumbs/voa-breadcrumbs.js.map +1 -0
- package/dist/collection/components/voa-breadcrumbs/voa-breadcrumbs.stories.js +410 -0
- package/dist/collection/components/voa-breadcrumbs/voa-breadcrumbs.stories.js.map +1 -0
- package/dist/collection/components/voa-breadcrumbs-divider/voa-breadcrumbs-divider.css +39 -0
- package/dist/collection/components/voa-breadcrumbs-divider/voa-breadcrumbs-divider.js +77 -0
- package/dist/collection/components/voa-breadcrumbs-divider/voa-breadcrumbs-divider.js.map +1 -0
- package/dist/collection/components/voa-breadcrumbs-item/voa-breadcrumbs-item.css +62 -0
- package/dist/collection/components/voa-breadcrumbs-item/voa-breadcrumbs-item.js +92 -0
- package/dist/collection/components/voa-breadcrumbs-item/voa-breadcrumbs-item.js.map +1 -0
- package/dist/collection/components/voa-button/voa-button.css +95 -0
- package/dist/collection/components/voa-button/voa-button.js +292 -0
- package/dist/collection/components/voa-button/voa-button.js.map +1 -0
- package/dist/collection/components/voa-button/voa-button.stories.js +435 -0
- package/dist/collection/components/voa-button/voa-button.stories.js.map +1 -0
- package/dist/collection/components/voa-card/voa-card.css +22 -0
- package/dist/collection/components/voa-card/voa-card.js +19 -0
- package/dist/collection/components/voa-card/voa-card.js.map +1 -0
- package/dist/collection/components/voa-card/voa-card.stories.js +270 -0
- package/dist/collection/components/voa-card/voa-card.stories.js.map +1 -0
- package/dist/collection/components/voa-checkbox/voa-checkbox.css +75 -0
- package/dist/collection/components/voa-checkbox/voa-checkbox.js +275 -0
- package/dist/collection/components/voa-checkbox/voa-checkbox.js.map +1 -0
- package/dist/collection/components/voa-checkbox/voa-checkbox.stories.js +377 -0
- package/dist/collection/components/voa-checkbox/voa-checkbox.stories.js.map +1 -0
- package/dist/collection/components/voa-datepicker/datepicker.css +7 -0
- package/dist/collection/components/voa-datepicker/datepicker.js +53 -0
- package/dist/collection/components/voa-datepicker/datepicker.js.map +1 -0
- package/dist/collection/components/voa-datepicker/datepicker.stories.js +23 -0
- package/dist/collection/components/voa-datepicker/datepicker.stories.js.map +1 -0
- package/dist/collection/components/voa-drawer/drawer.css +16 -0
- package/dist/collection/components/voa-drawer/drawer.js +55 -0
- package/dist/collection/components/voa-drawer/drawer.js.map +1 -0
- package/dist/collection/components/voa-drawer/drawer.stories.js +25 -0
- package/dist/collection/components/voa-drawer/drawer.stories.js.map +1 -0
- package/dist/collection/components/voa-dropdown/dropdown.css +36 -0
- package/dist/collection/components/voa-dropdown/dropdown.js +58 -0
- package/dist/collection/components/voa-dropdown/dropdown.js.map +1 -0
- package/dist/collection/components/voa-dropdown/dropdown.stories.js +23 -0
- package/dist/collection/components/voa-dropdown/dropdown.stories.js.map +1 -0
- package/dist/collection/components/voa-input/voa-input.css +90 -0
- package/dist/collection/components/voa-input/voa-input.js +640 -0
- package/dist/collection/components/voa-input/voa-input.js.map +1 -0
- package/dist/collection/components/voa-input/voa-input.stories.js +448 -0
- package/dist/collection/components/voa-input/voa-input.stories.js.map +1 -0
- package/dist/collection/components/voa-input-addon/voa-input-addon.css +58 -0
- package/dist/collection/components/voa-input-addon/voa-input-addon.js +346 -0
- package/dist/collection/components/voa-input-addon/voa-input-addon.js.map +1 -0
- package/dist/collection/components/voa-input-addon/voa-input-addon.stories.js +380 -0
- package/dist/collection/components/voa-input-addon/voa-input-addon.stories.js.map +1 -0
- package/dist/collection/components/voa-keybinding/voa-keybinding.css +25 -0
- package/dist/collection/components/voa-keybinding/voa-keybinding.js +87 -0
- package/dist/collection/components/voa-keybinding/voa-keybinding.js.map +1 -0
- package/dist/collection/components/voa-keybinding/voa-keybinding.stories.js +241 -0
- package/dist/collection/components/voa-keybinding/voa-keybinding.stories.js.map +1 -0
- package/dist/collection/components/voa-link/link.css +9 -0
- package/dist/collection/components/voa-link/link.js +65 -0
- package/dist/collection/components/voa-link/link.js.map +1 -0
- package/dist/collection/components/voa-link/link.stories.js +21 -0
- package/dist/collection/components/voa-link/link.stories.js.map +1 -0
- package/dist/collection/components/voa-list/list.css +14 -0
- package/dist/collection/components/voa-list/list.js +44 -0
- package/dist/collection/components/voa-list/list.js.map +1 -0
- package/dist/collection/components/voa-list/list.stories.js +16 -0
- package/dist/collection/components/voa-list/list.stories.js.map +1 -0
- package/dist/collection/components/voa-modal/modal.css +40 -0
- package/dist/collection/components/voa-modal/modal.js +55 -0
- package/dist/collection/components/voa-modal/modal.js.map +1 -0
- package/dist/collection/components/voa-modal/modal.stories.js +18 -0
- package/dist/collection/components/voa-modal/modal.stories.js.map +1 -0
- package/dist/collection/components/voa-option/voa-option.css +55 -0
- package/dist/collection/components/voa-option/voa-option.js +222 -0
- package/dist/collection/components/voa-option/voa-option.js.map +1 -0
- package/dist/collection/components/voa-option/voa-option.stories.js +581 -0
- package/dist/collection/components/voa-option/voa-option.stories.js.map +1 -0
- package/dist/collection/components/voa-pagination/voa-pagination-item.css +34 -0
- package/dist/collection/components/voa-pagination/voa-pagination-item.js +137 -0
- package/dist/collection/components/voa-pagination/voa-pagination-item.js.map +1 -0
- package/dist/collection/components/voa-pagination/voa-pagination.css +20 -0
- package/dist/collection/components/voa-pagination/voa-pagination.js +174 -0
- package/dist/collection/components/voa-pagination/voa-pagination.js.map +1 -0
- package/dist/collection/components/voa-pagination/voa-pagination.stories.js +257 -0
- package/dist/collection/components/voa-pagination/voa-pagination.stories.js.map +1 -0
- package/dist/collection/components/voa-progress/progress.css +12 -0
- package/dist/collection/components/voa-progress/progress.js +46 -0
- package/dist/collection/components/voa-progress/progress.js.map +1 -0
- package/dist/collection/components/voa-progress/progress.stories.js +16 -0
- package/dist/collection/components/voa-progress/progress.stories.js.map +1 -0
- package/dist/collection/components/voa-radio/voa-radio.css +82 -0
- package/dist/collection/components/voa-radio/voa-radio.js +227 -0
- package/dist/collection/components/voa-radio/voa-radio.js.map +1 -0
- package/dist/collection/components/voa-radio/voa-radio.stories.js +363 -0
- package/dist/collection/components/voa-radio/voa-radio.stories.js.map +1 -0
- package/dist/collection/components/voa-select/voa-container-multi-select.css +177 -0
- package/dist/collection/components/voa-select/voa-container-multi-select.js +192 -0
- package/dist/collection/components/voa-select/voa-container-multi-select.js.map +1 -0
- package/dist/collection/components/voa-select/voa-container-multi-select.stories.js +218 -0
- package/dist/collection/components/voa-select/voa-container-multi-select.stories.js.map +1 -0
- package/dist/collection/components/voa-select/voa-select-base.css +170 -0
- package/dist/collection/components/voa-select/voa-select-base.js +357 -0
- package/dist/collection/components/voa-select/voa-select-base.js.map +1 -0
- package/dist/collection/components/voa-select/voa-select.css +109 -0
- package/dist/collection/components/voa-select/voa-select.js +449 -0
- package/dist/collection/components/voa-select/voa-select.js.map +1 -0
- package/dist/collection/components/voa-select/voa-select.stories.js +581 -0
- package/dist/collection/components/voa-select/voa-select.stories.js.map +1 -0
- package/dist/collection/components/voa-skeleton/skeleton.css +30 -0
- package/dist/collection/components/voa-skeleton/skeleton.js +90 -0
- package/dist/collection/components/voa-skeleton/skeleton.js.map +1 -0
- package/dist/collection/components/voa-skeleton/skeleton.stories.js +36 -0
- package/dist/collection/components/voa-skeleton/skeleton.stories.js.map +1 -0
- package/dist/collection/components/voa-stepper/stepper.css +23 -0
- package/dist/collection/components/voa-stepper/stepper.js +93 -0
- package/dist/collection/components/voa-stepper/stepper.js.map +1 -0
- package/dist/collection/components/voa-stepper/stepper.stories.js +21 -0
- package/dist/collection/components/voa-stepper/stepper.stories.js.map +1 -0
- package/dist/collection/components/voa-switch/voa-switch.css +81 -0
- package/dist/collection/components/voa-switch/voa-switch.js +232 -0
- package/dist/collection/components/voa-switch/voa-switch.js.map +1 -0
- package/dist/collection/components/voa-switch/voa-switch.stories.js +359 -0
- package/dist/collection/components/voa-switch/voa-switch.stories.js.map +1 -0
- package/dist/collection/components/voa-tab/voa-tab.css +32 -0
- package/dist/collection/components/voa-tab/voa-tab.js +209 -0
- package/dist/collection/components/voa-tab/voa-tab.js.map +1 -0
- package/dist/collection/components/voa-tab/voa-tab.stories.js +405 -0
- package/dist/collection/components/voa-tab/voa-tab.stories.js.map +1 -0
- package/dist/collection/components/voa-tab-item/voa-tab-item.css +52 -0
- package/dist/collection/components/voa-tab-item/voa-tab-item.js +261 -0
- package/dist/collection/components/voa-tab-item/voa-tab-item.js.map +1 -0
- package/dist/collection/components/voa-table/table.css +15 -0
- package/dist/collection/components/voa-table/table.js +63 -0
- package/dist/collection/components/voa-table/table.js.map +1 -0
- package/dist/collection/components/voa-table/table.stories.js +21 -0
- package/dist/collection/components/voa-table/table.stories.js.map +1 -0
- package/dist/collection/components/voa-tag/voa-tag.css +31 -0
- package/dist/collection/components/voa-tag/voa-tag.js +183 -0
- package/dist/collection/components/voa-tag/voa-tag.js.map +1 -0
- package/dist/collection/components/voa-tag/voa-tag.stories.js +347 -0
- package/dist/collection/components/voa-tag/voa-tag.stories.js.map +1 -0
- package/dist/collection/components/voa-text-area/voa-text-area.css +68 -0
- package/dist/collection/components/voa-text-area/voa-text-area.js +519 -0
- package/dist/collection/components/voa-text-area/voa-text-area.js.map +1 -0
- package/dist/collection/components/voa-text-area/voa-text-area.stories.js +390 -0
- package/dist/collection/components/voa-text-area/voa-text-area.stories.js.map +1 -0
- package/dist/collection/components/voa-timepicker/timepicker.css +7 -0
- package/dist/collection/components/voa-timepicker/timepicker.js +42 -0
- package/dist/collection/components/voa-timepicker/timepicker.js.map +1 -0
- package/dist/collection/components/voa-timepicker/timepicker.stories.js +16 -0
- package/dist/collection/components/voa-timepicker/timepicker.stories.js.map +1 -0
- package/dist/collection/components/voa-tooltip/voa-tooltip.css +283 -0
- package/dist/collection/components/voa-tooltip/voa-tooltip.js +230 -0
- package/dist/collection/components/voa-tooltip/voa-tooltip.js.map +1 -0
- package/dist/collection/components/voa-tooltip/voa-tooltip.stories.js +471 -0
- package/dist/collection/components/voa-tooltip/voa-tooltip.stories.js.map +1 -0
- package/dist/collection/components/voa-tooltip-arrow/voa-tooltip-arrow.css +158 -0
- package/dist/collection/components/voa-tooltip-arrow/voa-tooltip-arrow.js +89 -0
- package/dist/collection/components/voa-tooltip-arrow/voa-tooltip-arrow.js.map +1 -0
- package/dist/collection/components/voa-upload/upload.css +28 -0
- package/dist/collection/components/voa-upload/upload.js +19 -0
- package/dist/collection/components/voa-upload/upload.js.map +1 -0
- package/dist/collection/components/voa-upload/upload.stories.js +8 -0
- package/dist/collection/components/voa-upload/upload.stories.js.map +1 -0
- package/dist/collection/icons/arrow.svg +3 -0
- package/dist/collection/icons/bell.svg +1 -0
- package/dist/collection/icons/calendar.svg +1 -0
- package/dist/collection/icons/check.svg +4 -0
- package/dist/collection/icons/chevron-right.svg +3 -0
- package/dist/collection/icons/circle.svg +4 -0
- package/dist/collection/icons/clear.svg +1 -0
- package/dist/collection/icons/close.svg +3 -0
- package/dist/collection/icons/error.svg +3 -0
- package/dist/collection/icons/eye-off.svg +1 -0
- package/dist/collection/icons/eye.svg +1 -0
- package/dist/collection/icons/home.svg +3 -0
- package/dist/collection/icons/index.js +18 -0
- package/dist/collection/icons/index.js.map +1 -0
- package/dist/collection/icons/info.svg +3 -0
- package/dist/collection/icons/loading.svg +1 -0
- package/dist/collection/icons/person.svg +4 -0
- package/dist/collection/icons/resize-handle.svg +3 -0
- package/dist/collection/icons/search.svg +1 -0
- package/dist/collection/icons/settings.svg +1 -0
- package/dist/collection/icons/warning.svg +3 -0
- package/dist/collection/token/base/colors.js +42 -0
- package/dist/collection/token/base/colors.js.map +1 -0
- package/dist/collection/token/base/mediaQueries.js +12 -0
- package/dist/collection/token/base/mediaQueries.js.map +1 -0
- package/dist/collection/token/base/radius.js +8 -0
- package/dist/collection/token/base/radius.js.map +1 -0
- package/dist/collection/token/base/spacing.js +13 -0
- package/dist/collection/token/base/spacing.js.map +1 -0
- package/dist/collection/token/branding/coi.js +58 -0
- package/dist/collection/token/branding/coi.js.map +1 -0
- package/dist/collection/token/branding/devops.js +58 -0
- package/dist/collection/token/branding/devops.js.map +1 -0
- package/dist/collection/token/branding/godrive.js +58 -0
- package/dist/collection/token/branding/godrive.js.map +1 -0
- package/dist/collection/token/branding/index.js +9 -0
- package/dist/collection/token/branding/index.js.map +1 -0
- package/dist/collection/token/branding/type.js +2 -0
- package/dist/collection/token/branding/type.js.map +1 -0
- package/dist/collection/token/colors.js +84 -0
- package/dist/collection/token/colors.js.map +1 -0
- package/dist/collection/tokens/global.css +867 -0
- package/dist/collection/tokens/voa-tokens.css +776 -0
- package/dist/collection/utils/icons.js +35 -0
- package/dist/collection/utils/icons.js.map +1 -0
- package/dist/collection/utils/utils.js +4 -0
- package/dist/collection/utils/utils.js.map +1 -0
- package/dist/custom-elements/index.d.ts +33 -0
- package/dist/custom-elements/index.js +1463 -0
- package/dist/custom-elements/index.js.map +1 -0
- package/dist/custom-elements/p-B2P7cgN3.js +125 -0
- package/dist/custom-elements/p-B2P7cgN3.js.map +1 -0
- package/dist/custom-elements/p-CQr0ZKZZ.js +75 -0
- package/dist/custom-elements/p-CQr0ZKZZ.js.map +1 -0
- package/dist/custom-elements/p-Cp28eWhS.js +40 -0
- package/dist/custom-elements/p-Cp28eWhS.js.map +1 -0
- package/dist/custom-elements/p-DKnM_Ozb.js +207 -0
- package/dist/custom-elements/p-DKnM_Ozb.js.map +1 -0
- package/dist/custom-elements/p-DPyVgztA.js +51 -0
- package/dist/custom-elements/p-DPyVgztA.js.map +1 -0
- package/dist/custom-elements/p-Dto9R8Te.js +117 -0
- package/dist/custom-elements/p-Dto9R8Te.js.map +1 -0
- package/dist/custom-elements/voa-accordion.d.ts +11 -0
- package/dist/custom-elements/voa-accordion.js +104 -0
- package/dist/custom-elements/voa-accordion.js.map +1 -0
- package/dist/custom-elements/voa-alert.d.ts +11 -0
- package/dist/custom-elements/voa-alert.js +111 -0
- package/dist/custom-elements/voa-alert.js.map +1 -0
- package/dist/custom-elements/voa-avatar.d.ts +11 -0
- package/dist/custom-elements/voa-avatar.js +108 -0
- package/dist/custom-elements/voa-avatar.js.map +1 -0
- package/dist/custom-elements/voa-badge.d.ts +11 -0
- package/dist/custom-elements/voa-badge.js +9 -0
- package/dist/custom-elements/voa-badge.js.map +1 -0
- package/dist/custom-elements/voa-breadcrumbs-divider.d.ts +11 -0
- package/dist/custom-elements/voa-breadcrumbs-divider.js +63 -0
- package/dist/custom-elements/voa-breadcrumbs-divider.js.map +1 -0
- package/dist/custom-elements/voa-breadcrumbs-item.d.ts +11 -0
- package/dist/custom-elements/voa-breadcrumbs-item.js +52 -0
- package/dist/custom-elements/voa-breadcrumbs-item.js.map +1 -0
- package/dist/custom-elements/voa-breadcrumbs.d.ts +11 -0
- package/dist/custom-elements/voa-breadcrumbs.js +49 -0
- package/dist/custom-elements/voa-breadcrumbs.js.map +1 -0
- package/dist/custom-elements/voa-button.d.ts +11 -0
- package/dist/custom-elements/voa-button.js +9 -0
- package/dist/custom-elements/voa-button.js.map +1 -0
- package/dist/custom-elements/voa-card.d.ts +11 -0
- package/dist/custom-elements/voa-card.js +39 -0
- package/dist/custom-elements/voa-card.js.map +1 -0
- package/dist/custom-elements/voa-checkbox.d.ts +11 -0
- package/dist/custom-elements/voa-checkbox.js +149 -0
- package/dist/custom-elements/voa-checkbox.js.map +1 -0
- package/dist/custom-elements/voa-container-multi-select.d.ts +11 -0
- package/dist/custom-elements/voa-container-multi-select.js +122 -0
- package/dist/custom-elements/voa-container-multi-select.js.map +1 -0
- package/dist/custom-elements/voa-datepicker.d.ts +11 -0
- package/dist/custom-elements/voa-datepicker.js +46 -0
- package/dist/custom-elements/voa-datepicker.js.map +1 -0
- package/dist/custom-elements/voa-drawer.d.ts +11 -0
- package/dist/custom-elements/voa-drawer.js +47 -0
- package/dist/custom-elements/voa-drawer.js.map +1 -0
- package/dist/custom-elements/voa-dropdown.d.ts +11 -0
- package/dist/custom-elements/voa-dropdown.js +52 -0
- package/dist/custom-elements/voa-dropdown.js.map +1 -0
- package/dist/custom-elements/voa-input-addon.d.ts +11 -0
- package/dist/custom-elements/voa-input-addon.js +160 -0
- package/dist/custom-elements/voa-input-addon.js.map +1 -0
- package/dist/custom-elements/voa-input.d.ts +11 -0
- package/dist/custom-elements/voa-input.js +237 -0
- package/dist/custom-elements/voa-input.js.map +1 -0
- package/dist/custom-elements/voa-keybinding.d.ts +11 -0
- package/dist/custom-elements/voa-keybinding.js +9 -0
- package/dist/custom-elements/voa-keybinding.js.map +1 -0
- package/dist/custom-elements/voa-link.d.ts +11 -0
- package/dist/custom-elements/voa-link.js +43 -0
- package/dist/custom-elements/voa-link.js.map +1 -0
- package/dist/custom-elements/voa-list.d.ts +11 -0
- package/dist/custom-elements/voa-list.js +42 -0
- package/dist/custom-elements/voa-list.js.map +1 -0
- package/dist/custom-elements/voa-modal.d.ts +11 -0
- package/dist/custom-elements/voa-modal.js +47 -0
- package/dist/custom-elements/voa-modal.js.map +1 -0
- package/dist/custom-elements/voa-option.d.ts +11 -0
- package/dist/custom-elements/voa-option.js +109 -0
- package/dist/custom-elements/voa-option.js.map +1 -0
- package/dist/custom-elements/voa-pagination-item.d.ts +11 -0
- package/dist/custom-elements/voa-pagination-item.js +9 -0
- package/dist/custom-elements/voa-pagination-item.js.map +1 -0
- package/dist/custom-elements/voa-pagination.d.ts +11 -0
- package/dist/custom-elements/voa-pagination.js +116 -0
- package/dist/custom-elements/voa-pagination.js.map +1 -0
- package/dist/custom-elements/voa-progress.d.ts +11 -0
- package/dist/custom-elements/voa-progress.js +42 -0
- package/dist/custom-elements/voa-progress.js.map +1 -0
- package/dist/custom-elements/voa-radio.d.ts +11 -0
- package/dist/custom-elements/voa-radio.js +88 -0
- package/dist/custom-elements/voa-radio.js.map +1 -0
- package/dist/custom-elements/voa-select-base.d.ts +11 -0
- package/dist/custom-elements/voa-select-base.js +9 -0
- package/dist/custom-elements/voa-select-base.js.map +1 -0
- package/dist/custom-elements/voa-select.d.ts +11 -0
- package/dist/custom-elements/voa-select.js +189 -0
- package/dist/custom-elements/voa-select.js.map +1 -0
- package/dist/custom-elements/voa-skeleton.d.ts +11 -0
- package/dist/custom-elements/voa-skeleton.js +48 -0
- package/dist/custom-elements/voa-skeleton.js.map +1 -0
- package/dist/custom-elements/voa-stepper.d.ts +11 -0
- package/dist/custom-elements/voa-stepper.js +51 -0
- package/dist/custom-elements/voa-stepper.js.map +1 -0
- package/dist/custom-elements/voa-switch.d.ts +11 -0
- package/dist/custom-elements/voa-switch.js +131 -0
- package/dist/custom-elements/voa-switch.js.map +1 -0
- package/dist/custom-elements/voa-tab-item.d.ts +11 -0
- package/dist/custom-elements/voa-tab-item.js +114 -0
- package/dist/custom-elements/voa-tab-item.js.map +1 -0
- package/dist/custom-elements/voa-tab.d.ts +11 -0
- package/dist/custom-elements/voa-tab.js +156 -0
- package/dist/custom-elements/voa-tab.js.map +1 -0
- package/dist/custom-elements/voa-table.d.ts +11 -0
- package/dist/custom-elements/voa-table.js +44 -0
- package/dist/custom-elements/voa-table.js.map +1 -0
- package/dist/custom-elements/voa-tag.d.ts +11 -0
- package/dist/custom-elements/voa-tag.js +73 -0
- package/dist/custom-elements/voa-tag.js.map +1 -0
- package/dist/custom-elements/voa-text-area.d.ts +11 -0
- package/dist/custom-elements/voa-text-area.js +155 -0
- package/dist/custom-elements/voa-text-area.js.map +1 -0
- package/dist/custom-elements/voa-timepicker.d.ts +11 -0
- package/dist/custom-elements/voa-timepicker.js +41 -0
- package/dist/custom-elements/voa-timepicker.js.map +1 -0
- package/dist/custom-elements/voa-tooltip-arrow.d.ts +11 -0
- package/dist/custom-elements/voa-tooltip-arrow.js +56 -0
- package/dist/custom-elements/voa-tooltip-arrow.js.map +1 -0
- package/dist/custom-elements/voa-tooltip.d.ts +11 -0
- package/dist/custom-elements/voa-tooltip.js +107 -0
- package/dist/custom-elements/voa-tooltip.js.map +1 -0
- package/dist/custom-elements/voa-upload.d.ts +11 -0
- package/dist/custom-elements/voa-upload.js +39 -0
- package/dist/custom-elements/voa-upload.js.map +1 -0
- package/dist/esm/icons-Bjdap-bM.js +40 -0
- package/dist/esm/icons-Bjdap-bM.js.map +1 -0
- package/dist/esm/index-Dh8480Ec.js +1867 -0
- package/dist/esm/index-Dh8480Ec.js.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/loader.js +11 -0
- package/dist/esm/loader.js.map +1 -0
- package/dist/esm/voa-accordion.entry.js +73 -0
- package/dist/esm/voa-accordion.entry.js.map +1 -0
- package/dist/esm/voa-alert.entry.js +71 -0
- package/dist/esm/voa-alert.entry.js.map +1 -0
- package/dist/esm/voa-avatar.entry.js +78 -0
- package/dist/esm/voa-avatar.entry.js.map +1 -0
- package/dist/esm/voa-badge.entry.js +97 -0
- package/dist/esm/voa-badge.entry.js.map +1 -0
- package/dist/esm/voa-breadcrumbs-divider.entry.js +38 -0
- package/dist/esm/voa-breadcrumbs-divider.entry.js.map +1 -0
- package/dist/esm/voa-breadcrumbs-item.entry.js +25 -0
- package/dist/esm/voa-breadcrumbs-item.entry.js.map +1 -0
- package/dist/esm/voa-breadcrumbs.entry.js +24 -0
- package/dist/esm/voa-breadcrumbs.entry.js.map +1 -0
- package/dist/esm/voa-button.entry.js +88 -0
- package/dist/esm/voa-button.entry.js.map +1 -0
- package/dist/esm/voa-card.entry.js +16 -0
- package/dist/esm/voa-card.entry.js.map +1 -0
- package/dist/esm/voa-checkbox.entry.js +122 -0
- package/dist/esm/voa-checkbox.entry.js.map +1 -0
- package/dist/esm/voa-container-multi-select.entry.js +88 -0
- package/dist/esm/voa-container-multi-select.entry.js.map +1 -0
- package/dist/esm/voa-datepicker.entry.js +20 -0
- package/dist/esm/voa-datepicker.entry.js.map +1 -0
- package/dist/esm/voa-drawer.entry.js +21 -0
- package/dist/esm/voa-drawer.entry.js.map +1 -0
- package/dist/esm/voa-dropdown.entry.js +25 -0
- package/dist/esm/voa-dropdown.entry.js.map +1 -0
- package/dist/esm/voa-input-addon.entry.js +121 -0
- package/dist/esm/voa-input-addon.entry.js.map +1 -0
- package/dist/esm/voa-input.entry.js +189 -0
- package/dist/esm/voa-input.entry.js.map +1 -0
- package/dist/esm/voa-keybinding.entry.js +28 -0
- package/dist/esm/voa-keybinding.entry.js.map +1 -0
- package/dist/esm/voa-link.entry.js +17 -0
- package/dist/esm/voa-link.entry.js.map +1 -0
- package/dist/esm/voa-list.entry.js +17 -0
- package/dist/esm/voa-list.entry.js.map +1 -0
- package/dist/esm/voa-modal.entry.js +21 -0
- package/dist/esm/voa-modal.entry.js.map +1 -0
- package/dist/esm/voa-option.entry.js +83 -0
- package/dist/esm/voa-option.entry.js.map +1 -0
- package/dist/esm/voa-pagination-item.entry.js +51 -0
- package/dist/esm/voa-pagination-item.entry.js.map +1 -0
- package/dist/esm/voa-pagination.entry.js +80 -0
- package/dist/esm/voa-pagination.entry.js.map +1 -0
- package/dist/esm/voa-progress.entry.js +17 -0
- package/dist/esm/voa-progress.entry.js.map +1 -0
- package/dist/esm/voa-radio.entry.js +59 -0
- package/dist/esm/voa-radio.entry.js.map +1 -0
- package/dist/esm/voa-select-base.entry.js +175 -0
- package/dist/esm/voa-select-base.entry.js.map +1 -0
- package/dist/esm/voa-select.entry.js +140 -0
- package/dist/esm/voa-select.entry.js.map +1 -0
- package/dist/esm/voa-skeleton.entry.js +22 -0
- package/dist/esm/voa-skeleton.entry.js.map +1 -0
- package/dist/esm/voa-stepper.entry.js +24 -0
- package/dist/esm/voa-stepper.entry.js.map +1 -0
- package/dist/esm/voa-switch.entry.js +105 -0
- package/dist/esm/voa-switch.entry.js.map +1 -0
- package/dist/esm/voa-tab-item.entry.js +83 -0
- package/dist/esm/voa-tab-item.entry.js.map +1 -0
- package/dist/esm/voa-tab.entry.js +127 -0
- package/dist/esm/voa-tab.entry.js.map +1 -0
- package/dist/esm/voa-table.entry.js +18 -0
- package/dist/esm/voa-table.entry.js.map +1 -0
- package/dist/esm/voa-tag.entry.js +43 -0
- package/dist/esm/voa-tag.entry.js.map +1 -0
- package/dist/esm/voa-text-area.entry.js +116 -0
- package/dist/esm/voa-text-area.entry.js.map +1 -0
- package/dist/esm/voa-timepicker.entry.js +16 -0
- package/dist/esm/voa-timepicker.entry.js.map +1 -0
- package/dist/esm/voa-tooltip-arrow.entry.js +30 -0
- package/dist/esm/voa-tooltip-arrow.entry.js.map +1 -0
- package/dist/esm/voa-tooltip.entry.js +76 -0
- package/dist/esm/voa-tooltip.entry.js.map +1 -0
- package/dist/esm/voa-upload.entry.js +16 -0
- package/dist/esm/voa-upload.entry.js.map +1 -0
- package/dist/esm/voa.js +21 -0
- package/dist/esm/voa.js.map +1 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/styles/voa-components.css +4839 -0
- package/dist/types/Stories/SaasDashboard.stories.d.ts +22 -0
- package/dist/types/Stories/styles/voa-radio.styles.d.ts +1 -0
- package/dist/types/components/GetStarted/AddingNewBrand.stories.d.ts +4 -0
- package/dist/types/components/GetStarted/ComoUsar.stories.d.ts +4 -0
- package/dist/types/components/GetStarted/GetStarted.stories.d.ts +4 -0
- package/dist/types/components/SaasDashboard/SaasDashboard.stories.d.ts +17 -0
- package/dist/types/components/Theme/ThemeProvider.d.ts +26 -0
- package/dist/types/components/Theme/generate-css-variables.d.ts +2 -0
- package/dist/types/components/voa-accordion/voa-accordion.d.ts +29 -0
- package/dist/types/components/voa-accordion/voa-accordion.stories.d.ts +70 -0
- package/dist/types/components/voa-alert/voa-alert.d.ts +82 -0
- package/dist/types/components/voa-alert/voa-alert.stories.d.ts +88 -0
- package/dist/types/components/voa-avatar/voa-avatar.d.ts +48 -0
- package/dist/types/components/voa-avatar/voa-avatar.stories.d.ts +73 -0
- package/dist/types/components/voa-badge/voa-badge.d.ts +91 -0
- package/dist/types/components/voa-badge/voa-badge.stories.d.ts +21 -0
- package/dist/types/components/voa-breadcrumbs/voa-breadcrumbs.d.ts +13 -0
- package/dist/types/components/voa-breadcrumbs/voa-breadcrumbs.stories.d.ts +57 -0
- package/dist/types/components/voa-breadcrumbs-divider/voa-breadcrumbs-divider.d.ts +19 -0
- package/dist/types/components/voa-breadcrumbs-item/voa-breadcrumbs-item.d.ts +17 -0
- package/dist/types/components/voa-button/voa-button.d.ts +69 -0
- package/dist/types/components/voa-button/voa-button.stories.d.ts +78 -0
- package/dist/types/components/voa-card/voa-card.d.ts +3 -0
- package/dist/types/components/voa-card/voa-card.stories.d.ts +30 -0
- package/dist/types/components/voa-checkbox/voa-checkbox.d.ts +73 -0
- package/dist/types/components/voa-checkbox/voa-checkbox.stories.d.ts +126 -0
- package/dist/types/components/voa-datepicker/datepicker.d.ts +6 -0
- package/dist/types/components/voa-datepicker/datepicker.stories.d.ts +4 -0
- package/dist/types/components/voa-drawer/drawer.d.ts +6 -0
- package/dist/types/components/voa-drawer/drawer.stories.d.ts +4 -0
- package/dist/types/components/voa-dropdown/dropdown.d.ts +8 -0
- package/dist/types/components/voa-dropdown/dropdown.stories.d.ts +4 -0
- package/dist/types/components/voa-input/voa-input.d.ts +153 -0
- package/dist/types/components/voa-input/voa-input.stories.d.ts +140 -0
- package/dist/types/components/voa-input-addon/voa-input-addon.d.ts +70 -0
- package/dist/types/components/voa-input-addon/voa-input-addon.stories.d.ts +139 -0
- package/dist/types/components/voa-keybinding/voa-keybinding.d.ts +22 -0
- package/dist/types/components/voa-keybinding/voa-keybinding.stories.d.ts +58 -0
- package/dist/types/components/voa-link/link.d.ts +5 -0
- package/dist/types/components/voa-link/link.stories.d.ts +4 -0
- package/dist/types/components/voa-list/list.d.ts +4 -0
- package/dist/types/components/voa-list/list.stories.d.ts +4 -0
- package/dist/types/components/voa-modal/modal.d.ts +6 -0
- package/dist/types/components/voa-modal/modal.stories.d.ts +4 -0
- package/dist/types/components/voa-option/voa-option.d.ts +58 -0
- package/dist/types/components/voa-option/voa-option.stories.d.ts +114 -0
- package/dist/types/components/voa-pagination/voa-pagination-item.d.ts +23 -0
- package/dist/types/components/voa-pagination/voa-pagination.d.ts +21 -0
- package/dist/types/components/voa-pagination/voa-pagination.stories.d.ts +28 -0
- package/dist/types/components/voa-progress/progress.d.ts +4 -0
- package/dist/types/components/voa-progress/progress.stories.d.ts +4 -0
- package/dist/types/components/voa-radio/voa-radio.d.ts +56 -0
- package/dist/types/components/voa-radio/voa-radio.stories.d.ts +42 -0
- package/dist/types/components/voa-select/voa-container-multi-select.d.ts +53 -0
- package/dist/types/components/voa-select/voa-container-multi-select.stories.d.ts +33 -0
- package/dist/types/components/voa-select/voa-select-base.d.ts +76 -0
- package/dist/types/components/voa-select/voa-select.d.ts +115 -0
- package/dist/types/components/voa-select/voa-select.stories.d.ts +100 -0
- package/dist/types/components/voa-skeleton/skeleton.d.ts +7 -0
- package/dist/types/components/voa-skeleton/skeleton.stories.d.ts +6 -0
- package/dist/types/components/voa-stepper/stepper.d.ts +9 -0
- package/dist/types/components/voa-stepper/stepper.stories.d.ts +4 -0
- package/dist/types/components/voa-switch/voa-switch.d.ts +28 -0
- package/dist/types/components/voa-switch/voa-switch.stories.d.ts +124 -0
- package/dist/types/components/voa-tab/voa-tab.d.ts +38 -0
- package/dist/types/components/voa-tab/voa-tab.stories.d.ts +81 -0
- package/dist/types/components/voa-tab-item/voa-tab-item.d.ts +66 -0
- package/dist/types/components/voa-table/table.d.ts +5 -0
- package/dist/types/components/voa-table/table.stories.d.ts +4 -0
- package/dist/types/components/voa-tag/voa-tag.d.ts +40 -0
- package/dist/types/components/voa-tag/voa-tag.stories.d.ts +66 -0
- package/dist/types/components/voa-text-area/voa-text-area.d.ts +47 -0
- package/dist/types/components/voa-text-area/voa-text-area.stories.d.ts +74 -0
- package/dist/types/components/voa-timepicker/timepicker.d.ts +4 -0
- package/dist/types/components/voa-timepicker/timepicker.stories.d.ts +4 -0
- package/dist/types/components/voa-tooltip/voa-tooltip.d.ts +54 -0
- package/dist/types/components/voa-tooltip/voa-tooltip.stories.d.ts +69 -0
- package/dist/types/components/voa-tooltip-arrow/voa-tooltip-arrow.d.ts +24 -0
- package/dist/types/components/voa-upload/upload.d.ts +3 -0
- package/dist/types/components/voa-upload/upload.stories.d.ts +4 -0
- package/dist/types/components.d.ts +2731 -0
- package/dist/types/icons/index.d.ts +16 -0
- package/dist/types/stencil-public-runtime.d.ts +1756 -0
- package/dist/types/token/base/colors.d.ts +2 -0
- package/dist/types/token/base/mediaQueries.d.ts +11 -0
- package/dist/types/token/base/radius.d.ts +7 -0
- package/dist/types/token/base/spacing.d.ts +12 -0
- package/dist/types/token/branding/coi.d.ts +2 -0
- package/dist/types/token/branding/devops.d.ts +2 -0
- package/dist/types/token/branding/godrive.d.ts +2 -0
- package/dist/types/token/branding/index.d.ts +2 -0
- package/dist/types/token/branding/type.d.ts +102 -0
- package/dist/types/token/colors.d.ts +16 -0
- package/dist/types/utils/icons.d.ts +45 -0
- package/dist/types/utils/utils.d.ts +1 -0
- package/dist/voa/index.esm.js +2 -0
- package/dist/voa/index.esm.js.map +1 -0
- package/dist/voa/loader.esm.js.map +1 -0
- package/dist/voa/p-01b6b7f5.entry.js +2 -0
- package/dist/voa/p-01b6b7f5.entry.js.map +1 -0
- package/dist/voa/p-0470367c.entry.js +2 -0
- package/dist/voa/p-0470367c.entry.js.map +1 -0
- package/dist/voa/p-17dfc5c3.entry.js +2 -0
- package/dist/voa/p-17dfc5c3.entry.js.map +1 -0
- package/dist/voa/p-19e64a8c.entry.js +2 -0
- package/dist/voa/p-19e64a8c.entry.js.map +1 -0
- package/dist/voa/p-3830cf95.entry.js +2 -0
- package/dist/voa/p-3830cf95.entry.js.map +1 -0
- package/dist/voa/p-3a2ad02b.entry.js +2 -0
- package/dist/voa/p-3a2ad02b.entry.js.map +1 -0
- package/dist/voa/p-41fce5ed.entry.js +2 -0
- package/dist/voa/p-41fce5ed.entry.js.map +1 -0
- package/dist/voa/p-4fdf73ab.entry.js +2 -0
- package/dist/voa/p-4fdf73ab.entry.js.map +1 -0
- package/dist/voa/p-52c0c7b6.entry.js +2 -0
- package/dist/voa/p-52c0c7b6.entry.js.map +1 -0
- package/dist/voa/p-5e5cadf6.entry.js +2 -0
- package/dist/voa/p-5e5cadf6.entry.js.map +1 -0
- package/dist/voa/p-61ff0737.entry.js +2 -0
- package/dist/voa/p-61ff0737.entry.js.map +1 -0
- package/dist/voa/p-6216d4ee.entry.js +2 -0
- package/dist/voa/p-6216d4ee.entry.js.map +1 -0
- package/dist/voa/p-6dbe9bf2.entry.js +2 -0
- package/dist/voa/p-6dbe9bf2.entry.js.map +1 -0
- package/dist/voa/p-77a4cdda.entry.js +2 -0
- package/dist/voa/p-77a4cdda.entry.js.map +1 -0
- package/dist/voa/p-788024a5.entry.js +2 -0
- package/dist/voa/p-788024a5.entry.js.map +1 -0
- package/dist/voa/p-8ba8f569.entry.js +2 -0
- package/dist/voa/p-8ba8f569.entry.js.map +1 -0
- package/dist/voa/p-8e0271ec.entry.js +2 -0
- package/dist/voa/p-8e0271ec.entry.js.map +1 -0
- package/dist/voa/p-8e20a0ce.entry.js +2 -0
- package/dist/voa/p-8e20a0ce.entry.js.map +1 -0
- package/dist/voa/p-9409e8a0.entry.js +2 -0
- package/dist/voa/p-9409e8a0.entry.js.map +1 -0
- package/dist/voa/p-Dh8480Ec.js +3 -0
- package/dist/voa/p-Dh8480Ec.js.map +1 -0
- package/dist/voa/p-Du_B3oI3.js +2 -0
- package/dist/voa/p-Du_B3oI3.js.map +1 -0
- package/dist/voa/p-a9d14872.entry.js +2 -0
- package/dist/voa/p-a9d14872.entry.js.map +1 -0
- package/dist/voa/p-b305463b.entry.js +2 -0
- package/dist/voa/p-b305463b.entry.js.map +1 -0
- package/dist/voa/p-b36a6198.entry.js +2 -0
- package/dist/voa/p-b36a6198.entry.js.map +1 -0
- package/dist/voa/p-b7133c1f.entry.js +2 -0
- package/dist/voa/p-b7133c1f.entry.js.map +1 -0
- package/dist/voa/p-ba6839f4.entry.js +2 -0
- package/dist/voa/p-ba6839f4.entry.js.map +1 -0
- package/dist/voa/p-c1226e48.entry.js +2 -0
- package/dist/voa/p-c1226e48.entry.js.map +1 -0
- package/dist/voa/p-c1481257.entry.js +2 -0
- package/dist/voa/p-c1481257.entry.js.map +1 -0
- package/dist/voa/p-c3867e8e.entry.js +2 -0
- package/dist/voa/p-c3867e8e.entry.js.map +1 -0
- package/dist/voa/p-c9b7e0e5.entry.js +2 -0
- package/dist/voa/p-c9b7e0e5.entry.js.map +1 -0
- package/dist/voa/p-cc7ec720.entry.js +2 -0
- package/dist/voa/p-cc7ec720.entry.js.map +1 -0
- package/dist/voa/p-d5d426cc.entry.js +2 -0
- package/dist/voa/p-d5d426cc.entry.js.map +1 -0
- package/dist/voa/p-dce8719e.entry.js +2 -0
- package/dist/voa/p-dce8719e.entry.js.map +1 -0
- package/dist/voa/p-de0944ab.entry.js +2 -0
- package/dist/voa/p-de0944ab.entry.js.map +1 -0
- package/dist/voa/p-decd2e4d.entry.js +2 -0
- package/dist/voa/p-decd2e4d.entry.js.map +1 -0
- package/dist/voa/p-e56f72ee.entry.js +2 -0
- package/dist/voa/p-e56f72ee.entry.js.map +1 -0
- package/dist/voa/p-f28e13b2.entry.js +2 -0
- package/dist/voa/p-f28e13b2.entry.js.map +1 -0
- package/dist/voa/p-f432a015.entry.js +2 -0
- package/dist/voa/p-f432a015.entry.js.map +1 -0
- package/dist/voa/p-f5c3d298.entry.js +2 -0
- package/dist/voa/p-f5c3d298.entry.js.map +1 -0
- package/dist/voa/p-faec36a5.entry.js +2 -0
- package/dist/voa/p-faec36a5.entry.js.map +1 -0
- package/dist/voa/p-fd7aa1e3.entry.js +2 -0
- package/dist/voa/p-fd7aa1e3.entry.js.map +1 -0
- package/dist/voa/tokens/global.css +867 -0
- package/dist/voa/tokens/voa-tokens.css +776 -0
- package/dist/voa/voa-accordion.entry.esm.js.map +1 -0
- package/dist/voa/voa-alert.entry.esm.js.map +1 -0
- package/dist/voa/voa-avatar.entry.esm.js.map +1 -0
- package/dist/voa/voa-badge.entry.esm.js.map +1 -0
- package/dist/voa/voa-breadcrumbs-divider.entry.esm.js.map +1 -0
- package/dist/voa/voa-breadcrumbs-item.entry.esm.js.map +1 -0
- package/dist/voa/voa-breadcrumbs.entry.esm.js.map +1 -0
- package/dist/voa/voa-button.entry.esm.js.map +1 -0
- package/dist/voa/voa-card.entry.esm.js.map +1 -0
- package/dist/voa/voa-checkbox.entry.esm.js.map +1 -0
- package/dist/voa/voa-container-multi-select.entry.esm.js.map +1 -0
- package/dist/voa/voa-datepicker.entry.esm.js.map +1 -0
- package/dist/voa/voa-drawer.entry.esm.js.map +1 -0
- package/dist/voa/voa-dropdown.entry.esm.js.map +1 -0
- package/dist/voa/voa-input-addon.entry.esm.js.map +1 -0
- package/dist/voa/voa-input.entry.esm.js.map +1 -0
- package/dist/voa/voa-keybinding.entry.esm.js.map +1 -0
- package/dist/voa/voa-link.entry.esm.js.map +1 -0
- package/dist/voa/voa-list.entry.esm.js.map +1 -0
- package/dist/voa/voa-modal.entry.esm.js.map +1 -0
- package/dist/voa/voa-option.entry.esm.js.map +1 -0
- package/dist/voa/voa-pagination-item.entry.esm.js.map +1 -0
- package/dist/voa/voa-pagination.entry.esm.js.map +1 -0
- package/dist/voa/voa-progress.entry.esm.js.map +1 -0
- package/dist/voa/voa-radio.entry.esm.js.map +1 -0
- package/dist/voa/voa-select-base.entry.esm.js.map +1 -0
- package/dist/voa/voa-select.entry.esm.js.map +1 -0
- package/dist/voa/voa-skeleton.entry.esm.js.map +1 -0
- package/dist/voa/voa-stepper.entry.esm.js.map +1 -0
- package/dist/voa/voa-switch.entry.esm.js.map +1 -0
- package/dist/voa/voa-tab-item.entry.esm.js.map +1 -0
- package/dist/voa/voa-tab.entry.esm.js.map +1 -0
- package/dist/voa/voa-table.entry.esm.js.map +1 -0
- package/dist/voa/voa-tag.entry.esm.js.map +1 -0
- package/dist/voa/voa-text-area.entry.esm.js.map +1 -0
- package/dist/voa/voa-timepicker.entry.esm.js.map +1 -0
- package/dist/voa/voa-tooltip-arrow.entry.esm.js.map +1 -0
- package/dist/voa/voa-tooltip.entry.esm.js.map +1 -0
- package/dist/voa/voa-upload.entry.esm.js.map +1 -0
- package/dist/voa/voa.css +1 -0
- package/dist/voa/voa.esm.js +2 -0
- package/dist/voa/voa.esm.js.map +1 -0
- package/package.json +37 -0
|
@@ -0,0 +1,581 @@
|
|
|
1
|
+
import { html } from "lit";
|
|
2
|
+
import { ifDefined } from "lit/directives/if-defined.js";
|
|
3
|
+
import "../../Stories/styles/voa-option.external.css";
|
|
4
|
+
/**
|
|
5
|
+
* **Option Component**
|
|
6
|
+
*
|
|
7
|
+
* Acts as a Radio Button. Should be used within a group logic.
|
|
8
|
+
*
|
|
9
|
+
* This is a standalone radio option component that manages its own checked state
|
|
10
|
+
* and syncs with the Native Form API via ElementInternals.
|
|
11
|
+
*
|
|
12
|
+
* Baseado no design do Figma:
|
|
13
|
+
* https://www.figma.com/design/wDStUEuqpl7Tu1oHpiAml6/Voa-Design-System?node-id=442-9725
|
|
14
|
+
*/
|
|
15
|
+
const meta = {
|
|
16
|
+
title: "Componentes/Dados/Option",
|
|
17
|
+
tags: ['autodocs'],
|
|
18
|
+
parameters: {
|
|
19
|
+
docs: {
|
|
20
|
+
description: {
|
|
21
|
+
component: `
|
|
22
|
+
**Option Component - Radio Button Pattern**
|
|
23
|
+
|
|
24
|
+
Acts as a Radio Button. Should be used within a group logic.
|
|
25
|
+
|
|
26
|
+
## CSS Parts
|
|
27
|
+
- \`base\`: Root container
|
|
28
|
+
- \`indicator\`: The outer circle
|
|
29
|
+
- \`indicator-dot\`: The inner selected circle
|
|
30
|
+
- \`label\`: Label text
|
|
31
|
+
|
|
32
|
+
## Features
|
|
33
|
+
- Manages internal checked state
|
|
34
|
+
- Syncs with Native Form API
|
|
35
|
+
- Delegated focus for accessibility
|
|
36
|
+
- Keyboard support (Space, Enter)
|
|
37
|
+
- Support for labels and slots
|
|
38
|
+
`
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
design: {
|
|
42
|
+
type: 'figma',
|
|
43
|
+
url: 'https://www.figma.com/design/wDStUEuqpl7Tu1oHpiAml6/Voa-Design-System?node-id=442-9725',
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
render: (args) => html `
|
|
47
|
+
<voa-option
|
|
48
|
+
?checked=${args.checked}
|
|
49
|
+
?disabled=${args.disabled}
|
|
50
|
+
.label=${ifDefined(args.label)}
|
|
51
|
+
.name=${ifDefined(args.name)}
|
|
52
|
+
.value=${ifDefined(args.value)}
|
|
53
|
+
@dsChange=${args.onDsChange}
|
|
54
|
+
></voa-option>
|
|
55
|
+
`,
|
|
56
|
+
argTypes: {
|
|
57
|
+
checked: {
|
|
58
|
+
control: 'boolean',
|
|
59
|
+
description: 'If true, this option is selected'
|
|
60
|
+
},
|
|
61
|
+
disabled: {
|
|
62
|
+
control: 'boolean',
|
|
63
|
+
description: 'If true, this option is disabled'
|
|
64
|
+
},
|
|
65
|
+
label: {
|
|
66
|
+
control: 'text',
|
|
67
|
+
description: 'The label text displayed next to the radio indicator'
|
|
68
|
+
},
|
|
69
|
+
name: {
|
|
70
|
+
control: 'text',
|
|
71
|
+
description: 'The name attribute for the radio group'
|
|
72
|
+
},
|
|
73
|
+
value: {
|
|
74
|
+
control: 'text',
|
|
75
|
+
description: 'The value returned when this option is selected'
|
|
76
|
+
},
|
|
77
|
+
onDsChange: {
|
|
78
|
+
action: 'dsChange',
|
|
79
|
+
description: 'Emitted when the user selects this option'
|
|
80
|
+
},
|
|
81
|
+
},
|
|
82
|
+
args: {
|
|
83
|
+
checked: false,
|
|
84
|
+
disabled: false,
|
|
85
|
+
label: 'Option Item',
|
|
86
|
+
name: 'demo-group',
|
|
87
|
+
value: 'opt-1'
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
export default meta;
|
|
91
|
+
/**
|
|
92
|
+
* Default unchecked option with label
|
|
93
|
+
*/
|
|
94
|
+
export const Default = {};
|
|
95
|
+
/**
|
|
96
|
+
* Checked option
|
|
97
|
+
*/
|
|
98
|
+
export const Checked = {
|
|
99
|
+
args: {
|
|
100
|
+
checked: true,
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* Disabled option
|
|
105
|
+
*/
|
|
106
|
+
export const Disabled = {
|
|
107
|
+
args: {
|
|
108
|
+
disabled: true,
|
|
109
|
+
},
|
|
110
|
+
};
|
|
111
|
+
/**
|
|
112
|
+
* Disabled and checked
|
|
113
|
+
*/
|
|
114
|
+
export const DisabledChecked = {
|
|
115
|
+
args: {
|
|
116
|
+
disabled: true,
|
|
117
|
+
checked: true,
|
|
118
|
+
},
|
|
119
|
+
};
|
|
120
|
+
/**
|
|
121
|
+
* Without label
|
|
122
|
+
*/
|
|
123
|
+
export const WithoutLabel = {
|
|
124
|
+
args: {
|
|
125
|
+
label: '',
|
|
126
|
+
},
|
|
127
|
+
};
|
|
128
|
+
/**
|
|
129
|
+
* Interactive radio group demo
|
|
130
|
+
*/
|
|
131
|
+
export const RadioGroupDemo = {
|
|
132
|
+
render: () => html `
|
|
133
|
+
<div style="display: flex; flex-direction: column; gap: 10px;">
|
|
134
|
+
<p style="margin-top: 0; font-weight: 600;">Select a plan:</p>
|
|
135
|
+
<voa-option name="plan" value="basic" label="Basic Plan"></voa-option>
|
|
136
|
+
<voa-option name="plan" value="pro" label="Pro Plan (Recommended)" ?checked=${true}></voa-option>
|
|
137
|
+
<voa-option name="plan" value="enterprise" label="Enterprise"></voa-option>
|
|
138
|
+
</div>
|
|
139
|
+
<script>
|
|
140
|
+
// Simple logic to mock radio group behavior for the demo
|
|
141
|
+
const container = document.currentScript.previousElementSibling;
|
|
142
|
+
const options = container.querySelectorAll('voa-option');
|
|
143
|
+
|
|
144
|
+
options.forEach(opt => {
|
|
145
|
+
opt.addEventListener('dsChange', (e) => {
|
|
146
|
+
// Uncheck others
|
|
147
|
+
options.forEach(other => {
|
|
148
|
+
if (other !== opt) other.checked = false;
|
|
149
|
+
});
|
|
150
|
+
});
|
|
151
|
+
});
|
|
152
|
+
</script>
|
|
153
|
+
`
|
|
154
|
+
};
|
|
155
|
+
/**
|
|
156
|
+
* All visual states grid
|
|
157
|
+
*/
|
|
158
|
+
export const AllStates = {
|
|
159
|
+
render: () => html `
|
|
160
|
+
<div style="display: grid; grid-template-columns: repeat(2, 1fr); gap: 2rem;">
|
|
161
|
+
<!-- With Label Column -->
|
|
162
|
+
<div>
|
|
163
|
+
<h3 style="margin-top: 0;">With Label</h3>
|
|
164
|
+
<div style="display: flex; flex-direction: column; gap: 1.5rem;">
|
|
165
|
+
<div>
|
|
166
|
+
<p style="margin: 0 0 8px 0; font-size: 0.875rem; color: #666;">Default</p>
|
|
167
|
+
<voa-option name="with-label" value="default" label="Option"></voa-option>
|
|
168
|
+
</div>
|
|
169
|
+
<div>
|
|
170
|
+
<p style="margin: 0 0 8px 0; font-size: 0.875rem; color: #666;">Checked</p>
|
|
171
|
+
<voa-option name="with-label" value="checked" label="Option" ?checked=${true}></voa-option>
|
|
172
|
+
</div>
|
|
173
|
+
<div>
|
|
174
|
+
<p style="margin: 0 0 8px 0; font-size: 0.875rem; color: #666;">Disabled</p>
|
|
175
|
+
<voa-option name="with-label" value="disabled" label="Option" ?disabled=${true}></voa-option>
|
|
176
|
+
</div>
|
|
177
|
+
<div>
|
|
178
|
+
<p style="margin: 0 0 8px 0; font-size: 0.875rem; color: #666;">Disabled & Checked</p>
|
|
179
|
+
<voa-option name="with-label" value="disabled-checked" label="Option" ?disabled=${true} ?checked=${true}></voa-option>
|
|
180
|
+
</div>
|
|
181
|
+
</div>
|
|
182
|
+
</div>
|
|
183
|
+
|
|
184
|
+
<!-- Without Label Column -->
|
|
185
|
+
<div>
|
|
186
|
+
<h3 style="margin-top: 0;">Without Label</h3>
|
|
187
|
+
<div style="display: flex; flex-direction: column; gap: 1.5rem;">
|
|
188
|
+
<div>
|
|
189
|
+
<p style="margin: 0 0 8px 0; font-size: 0.875rem; color: #666;">Default</p>
|
|
190
|
+
<voa-option name="no-label" value="default"></voa-option>
|
|
191
|
+
</div>
|
|
192
|
+
<div>
|
|
193
|
+
<p style="margin: 0 0 8px 0; font-size: 0.875rem; color: #666;">Checked</p>
|
|
194
|
+
<voa-option name="no-label" value="checked" ?checked=${true}></voa-option>
|
|
195
|
+
</div>
|
|
196
|
+
<div>
|
|
197
|
+
<p style="margin: 0 0 8px 0; font-size: 0.875rem; color: #666;">Disabled</p>
|
|
198
|
+
<voa-option name="no-label" value="disabled" ?disabled=${true}></voa-option>
|
|
199
|
+
</div>
|
|
200
|
+
<div>
|
|
201
|
+
<p style="margin: 0 0 8px 0; font-size: 0.875rem; color: #666;">Disabled & Checked</p>
|
|
202
|
+
<voa-option name="no-label" value="disabled-checked" ?disabled=${true} ?checked=${true}></voa-option>
|
|
203
|
+
</div>
|
|
204
|
+
</div>
|
|
205
|
+
</div>
|
|
206
|
+
</div>
|
|
207
|
+
`,
|
|
208
|
+
};
|
|
209
|
+
/**
|
|
210
|
+
* Todas as variantes do Figma organizadas em grid
|
|
211
|
+
* Estados: default, hover, focused, disabled × Active: checked/unchecked × Label: com/sem
|
|
212
|
+
*/
|
|
213
|
+
export const AllVariants = {
|
|
214
|
+
render: () => html `
|
|
215
|
+
<div style="display: grid; grid-template-columns: repeat(2, auto); gap: 24px; align-items: start;">
|
|
216
|
+
<div style="display:flex;flex-direction:column;gap:16px;">
|
|
217
|
+
<h4 style="margin:0 0 8px 0">Com Label</h4>
|
|
218
|
+
<voa-option name="variants-with-label" value="default-unchecked" label="Opção"></voa-option>
|
|
219
|
+
<voa-option name="variants-with-label" value="default-checked" label="Opção" ?checked=${true}></voa-option>
|
|
220
|
+
<voa-option name="variants-with-label" value="hover-unchecked" label="Opção" style="cursor:pointer"></voa-option>
|
|
221
|
+
<voa-option name="variants-with-label" value="hover-checked" label="Opção" ?checked=${true} style="cursor:pointer"></voa-option>
|
|
222
|
+
<voa-option name="variants-with-label" value="focused-unchecked" label="Opção" tabindex="0"></voa-option>
|
|
223
|
+
<voa-option name="variants-with-label" value="focused-checked" label="Opção" ?checked=${true} tabindex="0"></voa-option>
|
|
224
|
+
<voa-option name="variants-with-label" value="disabled-unchecked" label="Opção" ?disabled=${true}></voa-option>
|
|
225
|
+
<voa-option name="variants-with-label" value="disabled-checked" label="Opção" ?checked=${true} ?disabled=${true}></voa-option>
|
|
226
|
+
</div>
|
|
227
|
+
<div style="display:flex;flex-direction:column;gap:16px;">
|
|
228
|
+
<h4 style="margin:0 0 8px 0">Sem Label</h4>
|
|
229
|
+
<voa-option name="variants-no-label" value="default-unchecked"></voa-option>
|
|
230
|
+
<voa-option name="variants-no-label" value="default-checked" ?checked=${true}></voa-option>
|
|
231
|
+
<voa-option name="variants-no-label" value="hover-unchecked" style="cursor:pointer"></voa-option>
|
|
232
|
+
<voa-option name="variants-no-label" value="hover-checked" ?checked=${true} style="cursor:pointer"></voa-option>
|
|
233
|
+
<voa-option name="variants-no-label" value="focused-unchecked" tabindex="0"></voa-option>
|
|
234
|
+
<voa-option name="variants-no-label" value="focused-checked" ?checked=${true} tabindex="0"></voa-option>
|
|
235
|
+
<voa-option name="variants-no-label" value="disabled-unchecked" ?disabled=${true}></voa-option>
|
|
236
|
+
<voa-option name="variants-no-label" value="disabled-checked" ?checked=${true} ?disabled=${true}></voa-option>
|
|
237
|
+
</div>
|
|
238
|
+
</div>
|
|
239
|
+
`,
|
|
240
|
+
};
|
|
241
|
+
/**
|
|
242
|
+
* Grupo de opções interativas
|
|
243
|
+
*/
|
|
244
|
+
export const Group = {
|
|
245
|
+
render: () => {
|
|
246
|
+
const container = document.createElement('div');
|
|
247
|
+
container.style.display = 'flex';
|
|
248
|
+
container.style.flexDirection = 'column';
|
|
249
|
+
container.style.gap = '12px';
|
|
250
|
+
const option1 = document.createElement('voa-option');
|
|
251
|
+
option1.name = 'group';
|
|
252
|
+
option1.value = 'opcao1';
|
|
253
|
+
option1.label = 'Primeira opção';
|
|
254
|
+
const option2 = document.createElement('voa-option');
|
|
255
|
+
option2.name = 'group';
|
|
256
|
+
option2.value = 'opcao2';
|
|
257
|
+
option2.label = 'Segunda opção';
|
|
258
|
+
option2.checked = true;
|
|
259
|
+
const option3 = document.createElement('voa-option');
|
|
260
|
+
option3.name = 'group';
|
|
261
|
+
option3.value = 'opcao3';
|
|
262
|
+
option3.label = 'Terceira opção';
|
|
263
|
+
const option4 = document.createElement('voa-option');
|
|
264
|
+
option4.name = 'group';
|
|
265
|
+
option4.value = 'opcao4';
|
|
266
|
+
option4.label = 'Opção desabilitada';
|
|
267
|
+
option4.disabled = true;
|
|
268
|
+
container.appendChild(option1);
|
|
269
|
+
container.appendChild(option2);
|
|
270
|
+
container.appendChild(option3);
|
|
271
|
+
container.appendChild(option4);
|
|
272
|
+
return container;
|
|
273
|
+
},
|
|
274
|
+
};
|
|
275
|
+
/**
|
|
276
|
+
* Estados visuais organizados
|
|
277
|
+
*/
|
|
278
|
+
export const VisualStates = {
|
|
279
|
+
render: () => {
|
|
280
|
+
const container = document.createElement('div');
|
|
281
|
+
container.style.display = 'grid';
|
|
282
|
+
container.style.gridTemplateColumns = 'repeat(4, auto)';
|
|
283
|
+
container.style.gap = '16px';
|
|
284
|
+
container.style.alignItems = 'center';
|
|
285
|
+
// Headers
|
|
286
|
+
const headers = ['Default', 'Hover', 'Focused', 'Disabled'];
|
|
287
|
+
headers.forEach((header) => {
|
|
288
|
+
const headerEl = document.createElement('h4');
|
|
289
|
+
headerEl.style.margin = '0';
|
|
290
|
+
headerEl.textContent = header;
|
|
291
|
+
container.appendChild(headerEl);
|
|
292
|
+
});
|
|
293
|
+
// Unchecked row
|
|
294
|
+
const defaultUnchecked = document.createElement('voa-option');
|
|
295
|
+
defaultUnchecked.name = 'visual-states';
|
|
296
|
+
defaultUnchecked.value = 'default-unchecked';
|
|
297
|
+
defaultUnchecked.label = 'Opção';
|
|
298
|
+
const hoverUnchecked = document.createElement('voa-option');
|
|
299
|
+
hoverUnchecked.name = 'visual-states';
|
|
300
|
+
hoverUnchecked.value = 'hover-unchecked';
|
|
301
|
+
hoverUnchecked.label = 'Opção';
|
|
302
|
+
hoverUnchecked.style.cursor = 'pointer';
|
|
303
|
+
const focusedUnchecked = document.createElement('voa-option');
|
|
304
|
+
focusedUnchecked.name = 'visual-states';
|
|
305
|
+
focusedUnchecked.value = 'focused-unchecked';
|
|
306
|
+
focusedUnchecked.label = 'Opção';
|
|
307
|
+
focusedUnchecked.setAttribute('tabindex', '0');
|
|
308
|
+
const disabledUnchecked = document.createElement('voa-option');
|
|
309
|
+
disabledUnchecked.name = 'visual-states';
|
|
310
|
+
disabledUnchecked.value = 'disabled-unchecked';
|
|
311
|
+
disabledUnchecked.label = 'Opção';
|
|
312
|
+
disabledUnchecked.disabled = true;
|
|
313
|
+
container.appendChild(defaultUnchecked);
|
|
314
|
+
container.appendChild(hoverUnchecked);
|
|
315
|
+
container.appendChild(focusedUnchecked);
|
|
316
|
+
container.appendChild(disabledUnchecked);
|
|
317
|
+
// Checked row
|
|
318
|
+
const defaultChecked = document.createElement('voa-option');
|
|
319
|
+
defaultChecked.name = 'visual-states-checked';
|
|
320
|
+
defaultChecked.value = 'default-checked';
|
|
321
|
+
defaultChecked.label = 'Opção';
|
|
322
|
+
defaultChecked.checked = true;
|
|
323
|
+
const hoverChecked = document.createElement('voa-option');
|
|
324
|
+
hoverChecked.name = 'visual-states-checked';
|
|
325
|
+
hoverChecked.value = 'hover-checked';
|
|
326
|
+
hoverChecked.label = 'Opção';
|
|
327
|
+
hoverChecked.checked = true;
|
|
328
|
+
hoverChecked.style.cursor = 'pointer';
|
|
329
|
+
const focusedChecked = document.createElement('voa-option');
|
|
330
|
+
focusedChecked.name = 'visual-states-checked';
|
|
331
|
+
focusedChecked.value = 'focused-checked';
|
|
332
|
+
focusedChecked.label = 'Opção';
|
|
333
|
+
focusedChecked.checked = true;
|
|
334
|
+
focusedChecked.setAttribute('tabindex', '0');
|
|
335
|
+
const disabledChecked = document.createElement('voa-option');
|
|
336
|
+
disabledChecked.name = 'visual-states-checked';
|
|
337
|
+
disabledChecked.value = 'disabled-checked';
|
|
338
|
+
disabledChecked.label = 'Opção';
|
|
339
|
+
disabledChecked.checked = true;
|
|
340
|
+
disabledChecked.disabled = true;
|
|
341
|
+
container.appendChild(defaultChecked);
|
|
342
|
+
container.appendChild(hoverChecked);
|
|
343
|
+
container.appendChild(focusedChecked);
|
|
344
|
+
container.appendChild(disabledChecked);
|
|
345
|
+
return container;
|
|
346
|
+
},
|
|
347
|
+
};
|
|
348
|
+
// ============================================
|
|
349
|
+
// Usage - Exemplos de Código
|
|
350
|
+
// ============================================
|
|
351
|
+
export const Usage = {
|
|
352
|
+
parameters: {
|
|
353
|
+
docs: {
|
|
354
|
+
description: {
|
|
355
|
+
story: `
|
|
356
|
+
## Uso do Componente
|
|
357
|
+
|
|
358
|
+
Este componente pode ser usado em diferentes frameworks. Abaixo estão exemplos de código para cada um:
|
|
359
|
+
|
|
360
|
+
### HTML (Web Components)
|
|
361
|
+
|
|
362
|
+
\`\`\`html
|
|
363
|
+
<!-- Opção básica -->
|
|
364
|
+
<voa-option
|
|
365
|
+
name="opcao"
|
|
366
|
+
value="opcao1"
|
|
367
|
+
label="Opção 1"
|
|
368
|
+
checked
|
|
369
|
+
onoptionChange={(e) => console.log('Changed', e.detail)}
|
|
370
|
+
></voa-option>
|
|
371
|
+
|
|
372
|
+
<!-- Grupo de opções -->
|
|
373
|
+
<voa-option name="opcao" value="opcao1" label="Opção 1" checked></voa-option>
|
|
374
|
+
<voa-option name="opcao" value="opcao2" label="Opção 2"></voa-option>
|
|
375
|
+
<voa-option name="opcao" value="opcao3" label="Opção 3"></voa-option>
|
|
376
|
+
\`\`\`
|
|
377
|
+
|
|
378
|
+
### React
|
|
379
|
+
|
|
380
|
+
\`\`\`tsx
|
|
381
|
+
import { VoaOption } from '@voa-ds/react';
|
|
382
|
+
import { useState } from 'react';
|
|
383
|
+
|
|
384
|
+
function MyComponent() {
|
|
385
|
+
const [selected, setSelected] = useState('opcao1');
|
|
386
|
+
|
|
387
|
+
const handleChange = (e: CustomEvent<{ checked: boolean; value: string; name: string }>) => {
|
|
388
|
+
if (e.detail.checked) {
|
|
389
|
+
setSelected(e.detail.value);
|
|
390
|
+
}
|
|
391
|
+
console.log('Changed', e.detail);
|
|
392
|
+
};
|
|
393
|
+
|
|
394
|
+
return (
|
|
395
|
+
<>
|
|
396
|
+
{/* Grupo de opções */}
|
|
397
|
+
<VoaOption
|
|
398
|
+
name="opcao"
|
|
399
|
+
value="opcao1"
|
|
400
|
+
label="Opção 1"
|
|
401
|
+
checked={selected === 'opcao1'}
|
|
402
|
+
onOptionChange={handleChange}
|
|
403
|
+
/>
|
|
404
|
+
<VoaOption
|
|
405
|
+
name="opcao"
|
|
406
|
+
value="opcao2"
|
|
407
|
+
label="Opção 2"
|
|
408
|
+
checked={selected === 'opcao2'}
|
|
409
|
+
onOptionChange={handleChange}
|
|
410
|
+
/>
|
|
411
|
+
<VoaOption
|
|
412
|
+
name="opcao"
|
|
413
|
+
value="opcao3"
|
|
414
|
+
label="Opção 3"
|
|
415
|
+
checked={selected === 'opcao3'}
|
|
416
|
+
onOptionChange={handleChange}
|
|
417
|
+
/>
|
|
418
|
+
</>
|
|
419
|
+
);
|
|
420
|
+
}
|
|
421
|
+
\`\`\`
|
|
422
|
+
|
|
423
|
+
### Angular
|
|
424
|
+
|
|
425
|
+
\`\`\`typescript
|
|
426
|
+
import { VoaOption } from '@voa-ds/angular';
|
|
427
|
+
|
|
428
|
+
@Component({
|
|
429
|
+
selector: 'app-example',
|
|
430
|
+
template: \`
|
|
431
|
+
<!-- Grupo de opções -->
|
|
432
|
+
<voa-option
|
|
433
|
+
[name]="'opcao'"
|
|
434
|
+
[value]="'opcao1'"
|
|
435
|
+
[label]="'Opção 1'"
|
|
436
|
+
[checked]="selected === 'opcao1'"
|
|
437
|
+
(optionChange)="handleChange($event)"
|
|
438
|
+
></voa-option>
|
|
439
|
+
<voa-option
|
|
440
|
+
[name]="'opcao'"
|
|
441
|
+
[value]="'opcao2'"
|
|
442
|
+
[label]="'Opção 2'"
|
|
443
|
+
[checked]="selected === 'opcao2'"
|
|
444
|
+
(optionChange)="handleChange($event)"
|
|
445
|
+
></voa-option>
|
|
446
|
+
<voa-option
|
|
447
|
+
[name]="'opcao'"
|
|
448
|
+
[value]="'opcao3'"
|
|
449
|
+
[label]="'Opção 3'"
|
|
450
|
+
[checked]="selected === 'opcao3'"
|
|
451
|
+
(optionChange)="handleChange($event)"
|
|
452
|
+
></voa-option>
|
|
453
|
+
\`
|
|
454
|
+
})
|
|
455
|
+
export class ExampleComponent {
|
|
456
|
+
selected = 'opcao1';
|
|
457
|
+
|
|
458
|
+
handleChange(event: CustomEvent<{ checked: boolean; value: string; name: string }>) {
|
|
459
|
+
if (event.detail.checked) {
|
|
460
|
+
this.selected = event.detail.value;
|
|
461
|
+
}
|
|
462
|
+
console.log('Changed', event.detail);
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
\`\`\`
|
|
466
|
+
|
|
467
|
+
### Vue
|
|
468
|
+
|
|
469
|
+
\`\`\`vue
|
|
470
|
+
<template>
|
|
471
|
+
<div>
|
|
472
|
+
<!-- Grupo de opções -->
|
|
473
|
+
<VoaOption
|
|
474
|
+
name="opcao"
|
|
475
|
+
value="opcao1"
|
|
476
|
+
label="Opção 1"
|
|
477
|
+
:checked="selected === 'opcao1'"
|
|
478
|
+
@optionChange="handleChange"
|
|
479
|
+
/>
|
|
480
|
+
<VoaOption
|
|
481
|
+
name="opcao"
|
|
482
|
+
value="opcao2"
|
|
483
|
+
label="Opção 2"
|
|
484
|
+
:checked="selected === 'opcao2'"
|
|
485
|
+
@optionChange="handleChange"
|
|
486
|
+
/>
|
|
487
|
+
<VoaOption
|
|
488
|
+
name="opcao"
|
|
489
|
+
value="opcao3"
|
|
490
|
+
label="Opção 3"
|
|
491
|
+
:checked="selected === 'opcao3'"
|
|
492
|
+
@optionChange="handleChange"
|
|
493
|
+
/>
|
|
494
|
+
</div>
|
|
495
|
+
</template>
|
|
496
|
+
|
|
497
|
+
<script setup lang="ts">
|
|
498
|
+
import { ref } from 'vue';
|
|
499
|
+
import { VoaOption } from '@voa-ds/vue';
|
|
500
|
+
|
|
501
|
+
const selected = ref('opcao1');
|
|
502
|
+
|
|
503
|
+
const handleChange = (event: CustomEvent<{ checked: boolean; value: string; name: string }>) => {
|
|
504
|
+
if (event.detail.checked) {
|
|
505
|
+
selected.value = event.detail.value;
|
|
506
|
+
}
|
|
507
|
+
console.log('Changed', event.detail);
|
|
508
|
+
};
|
|
509
|
+
</script>
|
|
510
|
+
\`\`\`
|
|
511
|
+
|
|
512
|
+
## Instalação
|
|
513
|
+
|
|
514
|
+
### HTML
|
|
515
|
+
\`\`\`bash
|
|
516
|
+
# NPM
|
|
517
|
+
npm install @voa-ds/components
|
|
518
|
+
|
|
519
|
+
# Importar no HTML
|
|
520
|
+
<script type="module" src="https://unpkg.com/@voa-ds/components/dist/voa-ds/voa-ds.esm.js"></script>
|
|
521
|
+
\`\`\`
|
|
522
|
+
|
|
523
|
+
### React
|
|
524
|
+
\`\`\`bash
|
|
525
|
+
npm install @voa-ds/components @voa-ds/react
|
|
526
|
+
\`\`\`
|
|
527
|
+
|
|
528
|
+
### Angular
|
|
529
|
+
\`\`\`bash
|
|
530
|
+
npm install @voa-ds/components @voa-ds/angular
|
|
531
|
+
\`\`\`
|
|
532
|
+
|
|
533
|
+
### Vue
|
|
534
|
+
\`\`\`bash
|
|
535
|
+
npm install @voa-ds/components @voa-ds/vue
|
|
536
|
+
\`\`\`
|
|
537
|
+
`
|
|
538
|
+
}
|
|
539
|
+
}
|
|
540
|
+
},
|
|
541
|
+
render: () => {
|
|
542
|
+
// Criar container que inclui o componente e a documentação
|
|
543
|
+
const container = document.createElement('div');
|
|
544
|
+
container.style.cssText = 'padding: 2rem; max-width: 100%;';
|
|
545
|
+
// Adicionar título
|
|
546
|
+
const title = document.createElement('h2');
|
|
547
|
+
title.textContent = 'Uso do Componente';
|
|
548
|
+
title.style.cssText = 'margin-top: 0; margin-bottom: 1.5rem; font-size: 1.5rem; font-weight: 600;';
|
|
549
|
+
container.appendChild(title);
|
|
550
|
+
// Adicionar descrição
|
|
551
|
+
const description = document.createElement('p');
|
|
552
|
+
description.textContent = 'Este componente pode ser usado em diferentes frameworks. Abaixo estão exemplos de código para cada um:';
|
|
553
|
+
description.style.cssText = 'margin-bottom: 2rem; color: #666;';
|
|
554
|
+
container.appendChild(description);
|
|
555
|
+
// Adicionar componente de exemplo
|
|
556
|
+
const exampleTitle = document.createElement('h3');
|
|
557
|
+
exampleTitle.textContent = 'Exemplo Interativo';
|
|
558
|
+
exampleTitle.style.cssText = 'margin-top: 2rem; margin-bottom: 1rem; font-size: 1.25rem; font-weight: 600;';
|
|
559
|
+
container.appendChild(exampleTitle);
|
|
560
|
+
const el = document.createElement('voa-option');
|
|
561
|
+
el.name = 'example';
|
|
562
|
+
el.value = 'opcao1';
|
|
563
|
+
el.label = 'Exemplo de Uso';
|
|
564
|
+
el.checked = true;
|
|
565
|
+
el.style.cssText = 'margin-bottom: 2rem;';
|
|
566
|
+
container.appendChild(el);
|
|
567
|
+
// Adicionar nota sobre documentação completa
|
|
568
|
+
const note = document.createElement('div');
|
|
569
|
+
note.style.cssText = 'margin-top: 2rem; padding: 1rem; background: #f5f5f5; border-radius: 4px; border-left: 4px solid #0064cb;';
|
|
570
|
+
note.innerHTML = `
|
|
571
|
+
<p style="margin: 0; font-weight: 600; margin-bottom: 0.5rem;">📚 Documentação Completa</p>
|
|
572
|
+
<p style="margin: 0; color: #666; font-size: 0.9rem;">
|
|
573
|
+
Para ver exemplos de código completos para HTML, React, Angular e Vue,
|
|
574
|
+
<a href="?path=/docs/components-voaoption--docs#usage" style="color: #0064cb; text-decoration: none; font-weight: 600;">clique aqui para ir à página Docs</a>.
|
|
575
|
+
</p>
|
|
576
|
+
`;
|
|
577
|
+
container.appendChild(note);
|
|
578
|
+
return container;
|
|
579
|
+
}
|
|
580
|
+
};
|
|
581
|
+
//# sourceMappingURL=voa-option.stories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"voa-option.stories.js","sourceRoot":"","sources":["../../../src/components/voa-option/voa-option.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Meta, StoryObj } from '@storybook/web-components';\r\nimport { html } from 'lit';\r\nimport { ifDefined } from 'lit/directives/if-defined.js';\r\nimport '../../Stories/styles/voa-option.external.css';\r\n\r\ninterface OptionArgs {\r\n checked: boolean;\r\n disabled: boolean;\r\n label: string;\r\n name: string;\r\n value: string;\r\n onDsChange?: (e: CustomEvent) => void;\r\n}\r\n\r\n/**\r\n * **Option Component**\r\n * \r\n * Acts as a Radio Button. Should be used within a group logic.\r\n * \r\n * This is a standalone radio option component that manages its own checked state\r\n * and syncs with the Native Form API via ElementInternals.\r\n * \r\n * Baseado no design do Figma:\r\n * https://www.figma.com/design/wDStUEuqpl7Tu1oHpiAml6/Voa-Design-System?node-id=442-9725\r\n */\r\nconst meta = {\r\n title: \"Componentes/Dados/Option\",\r\n tags: ['autodocs'],\r\n parameters: {\r\n docs: {\r\n description: {\r\n component: `\r\n**Option Component - Radio Button Pattern**\r\n\r\nActs as a Radio Button. Should be used within a group logic.\r\n\r\n## CSS Parts\r\n- \\`base\\`: Root container\r\n- \\`indicator\\`: The outer circle\r\n- \\`indicator-dot\\`: The inner selected circle\r\n- \\`label\\`: Label text\r\n\r\n## Features\r\n- Manages internal checked state\r\n- Syncs with Native Form API\r\n- Delegated focus for accessibility\r\n- Keyboard support (Space, Enter)\r\n- Support for labels and slots\r\n `\r\n }\r\n },\r\n design: {\r\n type: 'figma',\r\n url: 'https://www.figma.com/design/wDStUEuqpl7Tu1oHpiAml6/Voa-Design-System?node-id=442-9725',\r\n },\r\n },\r\n render: (args: OptionArgs) => html`\r\n <voa-option\r\n ?checked=${args.checked}\r\n ?disabled=${args.disabled}\r\n .label=${ifDefined(args.label)}\r\n .name=${ifDefined(args.name)}\r\n .value=${ifDefined(args.value)}\r\n @dsChange=${args.onDsChange}\r\n ></voa-option>\r\n `,\r\n argTypes: {\r\n checked: { \r\n control: 'boolean',\r\n description: 'If true, this option is selected'\r\n },\r\n disabled: { \r\n control: 'boolean',\r\n description: 'If true, this option is disabled'\r\n },\r\n label: { \r\n control: 'text',\r\n description: 'The label text displayed next to the radio indicator'\r\n },\r\n name: { \r\n control: 'text',\r\n description: 'The name attribute for the radio group'\r\n },\r\n value: { \r\n control: 'text',\r\n description: 'The value returned when this option is selected'\r\n },\r\n onDsChange: { \r\n action: 'dsChange',\r\n description: 'Emitted when the user selects this option'\r\n },\r\n },\r\n args: {\r\n checked: false,\r\n disabled: false,\r\n label: 'Option Item',\r\n name: 'demo-group',\r\n value: 'opt-1'\r\n },\r\n} satisfies Meta<OptionArgs>;\r\n\r\nexport default meta;\r\ntype Story = StoryObj<OptionArgs>;\r\n\r\n/**\r\n * Default unchecked option with label\r\n */\r\nexport const Default: Story = {};\r\n\r\n/**\r\n * Checked option\r\n */\r\nexport const Checked: Story = {\r\n args: {\r\n checked: true,\r\n },\r\n};\r\n\r\n/**\r\n * Disabled option\r\n */\r\nexport const Disabled: Story = {\r\n args: {\r\n disabled: true,\r\n },\r\n};\r\n\r\n/**\r\n * Disabled and checked\r\n */\r\nexport const DisabledChecked: Story = {\r\n args: {\r\n disabled: true,\r\n checked: true,\r\n },\r\n};\r\n\r\n/**\r\n * Without label\r\n */\r\nexport const WithoutLabel: Story = {\r\n args: {\r\n label: '',\r\n },\r\n};\r\n\r\n/**\r\n * Interactive radio group demo\r\n */\r\nexport const RadioGroupDemo: Story = {\r\n render: () => html`\r\n <div style=\"display: flex; flex-direction: column; gap: 10px;\">\r\n <p style=\"margin-top: 0; font-weight: 600;\">Select a plan:</p>\r\n <voa-option name=\"plan\" value=\"basic\" label=\"Basic Plan\"></voa-option>\r\n <voa-option name=\"plan\" value=\"pro\" label=\"Pro Plan (Recommended)\" ?checked=${true}></voa-option>\r\n <voa-option name=\"plan\" value=\"enterprise\" label=\"Enterprise\"></voa-option>\r\n </div>\r\n <script>\r\n // Simple logic to mock radio group behavior for the demo\r\n const container = document.currentScript.previousElementSibling;\r\n const options = container.querySelectorAll('voa-option');\r\n \r\n options.forEach(opt => {\r\n opt.addEventListener('dsChange', (e) => {\r\n // Uncheck others\r\n options.forEach(other => {\r\n if (other !== opt) other.checked = false;\r\n });\r\n });\r\n });\r\n </script>\r\n `\r\n};\r\n\r\n/**\r\n * All visual states grid\r\n */\r\nexport const AllStates: Story = {\r\n render: () => html`\r\n <div style=\"display: grid; grid-template-columns: repeat(2, 1fr); gap: 2rem;\">\r\n <!-- With Label Column -->\r\n <div>\r\n <h3 style=\"margin-top: 0;\">With Label</h3>\r\n <div style=\"display: flex; flex-direction: column; gap: 1.5rem;\">\r\n <div>\r\n <p style=\"margin: 0 0 8px 0; font-size: 0.875rem; color: #666;\">Default</p>\r\n <voa-option name=\"with-label\" value=\"default\" label=\"Option\"></voa-option>\r\n </div>\r\n <div>\r\n <p style=\"margin: 0 0 8px 0; font-size: 0.875rem; color: #666;\">Checked</p>\r\n <voa-option name=\"with-label\" value=\"checked\" label=\"Option\" ?checked=${true}></voa-option>\r\n </div>\r\n <div>\r\n <p style=\"margin: 0 0 8px 0; font-size: 0.875rem; color: #666;\">Disabled</p>\r\n <voa-option name=\"with-label\" value=\"disabled\" label=\"Option\" ?disabled=${true}></voa-option>\r\n </div>\r\n <div>\r\n <p style=\"margin: 0 0 8px 0; font-size: 0.875rem; color: #666;\">Disabled & Checked</p>\r\n <voa-option name=\"with-label\" value=\"disabled-checked\" label=\"Option\" ?disabled=${true} ?checked=${true}></voa-option>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Without Label Column -->\r\n <div>\r\n <h3 style=\"margin-top: 0;\">Without Label</h3>\r\n <div style=\"display: flex; flex-direction: column; gap: 1.5rem;\">\r\n <div>\r\n <p style=\"margin: 0 0 8px 0; font-size: 0.875rem; color: #666;\">Default</p>\r\n <voa-option name=\"no-label\" value=\"default\"></voa-option>\r\n </div>\r\n <div>\r\n <p style=\"margin: 0 0 8px 0; font-size: 0.875rem; color: #666;\">Checked</p>\r\n <voa-option name=\"no-label\" value=\"checked\" ?checked=${true}></voa-option>\r\n </div>\r\n <div>\r\n <p style=\"margin: 0 0 8px 0; font-size: 0.875rem; color: #666;\">Disabled</p>\r\n <voa-option name=\"no-label\" value=\"disabled\" ?disabled=${true}></voa-option>\r\n </div>\r\n <div>\r\n <p style=\"margin: 0 0 8px 0; font-size: 0.875rem; color: #666;\">Disabled & Checked</p>\r\n <voa-option name=\"no-label\" value=\"disabled-checked\" ?disabled=${true} ?checked=${true}></voa-option>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n `,\r\n};\r\n\r\n/**\r\n * Todas as variantes do Figma organizadas em grid\r\n * Estados: default, hover, focused, disabled × Active: checked/unchecked × Label: com/sem\r\n */\r\nexport const AllVariants: Story = {\r\n render: () => html`\r\n <div style=\"display: grid; grid-template-columns: repeat(2, auto); gap: 24px; align-items: start;\">\r\n <div style=\"display:flex;flex-direction:column;gap:16px;\">\r\n <h4 style=\"margin:0 0 8px 0\">Com Label</h4>\r\n <voa-option name=\"variants-with-label\" value=\"default-unchecked\" label=\"Opção\"></voa-option>\r\n <voa-option name=\"variants-with-label\" value=\"default-checked\" label=\"Opção\" ?checked=${true}></voa-option>\r\n <voa-option name=\"variants-with-label\" value=\"hover-unchecked\" label=\"Opção\" style=\"cursor:pointer\"></voa-option>\r\n <voa-option name=\"variants-with-label\" value=\"hover-checked\" label=\"Opção\" ?checked=${true} style=\"cursor:pointer\"></voa-option>\r\n <voa-option name=\"variants-with-label\" value=\"focused-unchecked\" label=\"Opção\" tabindex=\"0\"></voa-option>\r\n <voa-option name=\"variants-with-label\" value=\"focused-checked\" label=\"Opção\" ?checked=${true} tabindex=\"0\"></voa-option>\r\n <voa-option name=\"variants-with-label\" value=\"disabled-unchecked\" label=\"Opção\" ?disabled=${true}></voa-option>\r\n <voa-option name=\"variants-with-label\" value=\"disabled-checked\" label=\"Opção\" ?checked=${true} ?disabled=${true}></voa-option>\r\n </div>\r\n <div style=\"display:flex;flex-direction:column;gap:16px;\">\r\n <h4 style=\"margin:0 0 8px 0\">Sem Label</h4>\r\n <voa-option name=\"variants-no-label\" value=\"default-unchecked\"></voa-option>\r\n <voa-option name=\"variants-no-label\" value=\"default-checked\" ?checked=${true}></voa-option>\r\n <voa-option name=\"variants-no-label\" value=\"hover-unchecked\" style=\"cursor:pointer\"></voa-option>\r\n <voa-option name=\"variants-no-label\" value=\"hover-checked\" ?checked=${true} style=\"cursor:pointer\"></voa-option>\r\n <voa-option name=\"variants-no-label\" value=\"focused-unchecked\" tabindex=\"0\"></voa-option>\r\n <voa-option name=\"variants-no-label\" value=\"focused-checked\" ?checked=${true} tabindex=\"0\"></voa-option>\r\n <voa-option name=\"variants-no-label\" value=\"disabled-unchecked\" ?disabled=${true}></voa-option>\r\n <voa-option name=\"variants-no-label\" value=\"disabled-checked\" ?checked=${true} ?disabled=${true}></voa-option>\r\n </div>\r\n </div>\r\n `,\r\n};\r\n\r\n/**\r\n * Grupo de opções interativas\r\n */\r\nexport const Group: Story = {\r\n render: () => {\r\n const container = document.createElement('div');\r\n container.style.display = 'flex';\r\n container.style.flexDirection = 'column';\r\n container.style.gap = '12px';\r\n \r\n const option1 = document.createElement('voa-option') as any;\r\n option1.name = 'group';\r\n option1.value = 'opcao1';\r\n option1.label = 'Primeira opção';\r\n \r\n const option2 = document.createElement('voa-option') as any;\r\n option2.name = 'group';\r\n option2.value = 'opcao2';\r\n option2.label = 'Segunda opção';\r\n option2.checked = true;\r\n \r\n const option3 = document.createElement('voa-option') as any;\r\n option3.name = 'group';\r\n option3.value = 'opcao3';\r\n option3.label = 'Terceira opção';\r\n \r\n const option4 = document.createElement('voa-option') as any;\r\n option4.name = 'group';\r\n option4.value = 'opcao4';\r\n option4.label = 'Opção desabilitada';\r\n option4.disabled = true;\r\n \r\n container.appendChild(option1);\r\n container.appendChild(option2);\r\n container.appendChild(option3);\r\n container.appendChild(option4);\r\n \r\n return container;\r\n },\r\n};\r\n\r\n/**\r\n * Estados visuais organizados\r\n */\r\nexport const VisualStates: Story = {\r\n render: () => {\r\n const container = document.createElement('div');\r\n container.style.display = 'grid';\r\n container.style.gridTemplateColumns = 'repeat(4, auto)';\r\n container.style.gap = '16px';\r\n container.style.alignItems = 'center';\r\n \r\n // Headers\r\n const headers = ['Default', 'Hover', 'Focused', 'Disabled'];\r\n headers.forEach((header) => {\r\n const headerEl = document.createElement('h4');\r\n headerEl.style.margin = '0';\r\n headerEl.textContent = header;\r\n container.appendChild(headerEl);\r\n });\r\n \r\n // Unchecked row\r\n const defaultUnchecked = document.createElement('voa-option') as any;\r\n defaultUnchecked.name = 'visual-states';\r\n defaultUnchecked.value = 'default-unchecked';\r\n defaultUnchecked.label = 'Opção';\r\n \r\n const hoverUnchecked = document.createElement('voa-option') as any;\r\n hoverUnchecked.name = 'visual-states';\r\n hoverUnchecked.value = 'hover-unchecked';\r\n hoverUnchecked.label = 'Opção';\r\n hoverUnchecked.style.cursor = 'pointer';\r\n \r\n const focusedUnchecked = document.createElement('voa-option') as any;\r\n focusedUnchecked.name = 'visual-states';\r\n focusedUnchecked.value = 'focused-unchecked';\r\n focusedUnchecked.label = 'Opção';\r\n focusedUnchecked.setAttribute('tabindex', '0');\r\n \r\n const disabledUnchecked = document.createElement('voa-option') as any;\r\n disabledUnchecked.name = 'visual-states';\r\n disabledUnchecked.value = 'disabled-unchecked';\r\n disabledUnchecked.label = 'Opção';\r\n disabledUnchecked.disabled = true;\r\n \r\n container.appendChild(defaultUnchecked);\r\n container.appendChild(hoverUnchecked);\r\n container.appendChild(focusedUnchecked);\r\n container.appendChild(disabledUnchecked);\r\n \r\n // Checked row\r\n const defaultChecked = document.createElement('voa-option') as any;\r\n defaultChecked.name = 'visual-states-checked';\r\n defaultChecked.value = 'default-checked';\r\n defaultChecked.label = 'Opção';\r\n defaultChecked.checked = true;\r\n \r\n const hoverChecked = document.createElement('voa-option') as any;\r\n hoverChecked.name = 'visual-states-checked';\r\n hoverChecked.value = 'hover-checked';\r\n hoverChecked.label = 'Opção';\r\n hoverChecked.checked = true;\r\n hoverChecked.style.cursor = 'pointer';\r\n \r\n const focusedChecked = document.createElement('voa-option') as any;\r\n focusedChecked.name = 'visual-states-checked';\r\n focusedChecked.value = 'focused-checked';\r\n focusedChecked.label = 'Opção';\r\n focusedChecked.checked = true;\r\n focusedChecked.setAttribute('tabindex', '0');\r\n \r\n const disabledChecked = document.createElement('voa-option') as any;\r\n disabledChecked.name = 'visual-states-checked';\r\n disabledChecked.value = 'disabled-checked';\r\n disabledChecked.label = 'Opção';\r\n disabledChecked.checked = true;\r\n disabledChecked.disabled = true;\r\n \r\n container.appendChild(defaultChecked);\r\n container.appendChild(hoverChecked);\r\n container.appendChild(focusedChecked);\r\n container.appendChild(disabledChecked);\r\n \r\n return container;\r\n },\r\n};\r\n\r\n// ============================================\r\n// Usage - Exemplos de Código\r\n// ============================================\r\n\r\nexport const Usage: Story = {\r\n parameters: {\r\n docs: {\r\n description: {\r\n story: `\r\n## Uso do Componente\r\n\r\nEste componente pode ser usado em diferentes frameworks. Abaixo estão exemplos de código para cada um:\r\n\r\n### HTML (Web Components)\r\n\r\n\\`\\`\\`html\r\n<!-- Opção básica -->\r\n<voa-option \r\n name=\"opcao\"\r\n value=\"opcao1\"\r\n label=\"Opção 1\"\r\n checked\r\n onoptionChange={(e) => console.log('Changed', e.detail)}\r\n></voa-option>\r\n\r\n<!-- Grupo de opções -->\r\n<voa-option name=\"opcao\" value=\"opcao1\" label=\"Opção 1\" checked></voa-option>\r\n<voa-option name=\"opcao\" value=\"opcao2\" label=\"Opção 2\"></voa-option>\r\n<voa-option name=\"opcao\" value=\"opcao3\" label=\"Opção 3\"></voa-option>\r\n\\`\\`\\`\r\n\r\n### React\r\n\r\n\\`\\`\\`tsx\r\nimport { VoaOption } from '@voa-ds/react';\r\nimport { useState } from 'react';\r\n\r\nfunction MyComponent() {\r\n const [selected, setSelected] = useState('opcao1');\r\n\r\n const handleChange = (e: CustomEvent<{ checked: boolean; value: string; name: string }>) => {\r\n if (e.detail.checked) {\r\n setSelected(e.detail.value);\r\n }\r\n console.log('Changed', e.detail);\r\n };\r\n\r\n return (\r\n <>\r\n {/* Grupo de opções */}\r\n <VoaOption\r\n name=\"opcao\"\r\n value=\"opcao1\"\r\n label=\"Opção 1\"\r\n checked={selected === 'opcao1'}\r\n onOptionChange={handleChange}\r\n />\r\n <VoaOption\r\n name=\"opcao\"\r\n value=\"opcao2\"\r\n label=\"Opção 2\"\r\n checked={selected === 'opcao2'}\r\n onOptionChange={handleChange}\r\n />\r\n <VoaOption\r\n name=\"opcao\"\r\n value=\"opcao3\"\r\n label=\"Opção 3\"\r\n checked={selected === 'opcao3'}\r\n onOptionChange={handleChange}\r\n />\r\n </>\r\n );\r\n}\r\n\\`\\`\\`\r\n\r\n### Angular\r\n\r\n\\`\\`\\`typescript\r\nimport { VoaOption } from '@voa-ds/angular';\r\n\r\n@Component({\r\n selector: 'app-example',\r\n template: \\`\r\n <!-- Grupo de opções -->\r\n <voa-option\r\n [name]=\"'opcao'\"\r\n [value]=\"'opcao1'\"\r\n [label]=\"'Opção 1'\"\r\n [checked]=\"selected === 'opcao1'\"\r\n (optionChange)=\"handleChange($event)\"\r\n ></voa-option>\r\n <voa-option\r\n [name]=\"'opcao'\"\r\n [value]=\"'opcao2'\"\r\n [label]=\"'Opção 2'\"\r\n [checked]=\"selected === 'opcao2'\"\r\n (optionChange)=\"handleChange($event)\"\r\n ></voa-option>\r\n <voa-option\r\n [name]=\"'opcao'\"\r\n [value]=\"'opcao3'\"\r\n [label]=\"'Opção 3'\"\r\n [checked]=\"selected === 'opcao3'\"\r\n (optionChange)=\"handleChange($event)\"\r\n ></voa-option>\r\n \\`\r\n})\r\nexport class ExampleComponent {\r\n selected = 'opcao1';\r\n\r\n handleChange(event: CustomEvent<{ checked: boolean; value: string; name: string }>) {\r\n if (event.detail.checked) {\r\n this.selected = event.detail.value;\r\n }\r\n console.log('Changed', event.detail);\r\n }\r\n}\r\n\\`\\`\\`\r\n\r\n### Vue\r\n\r\n\\`\\`\\`vue\r\n<template>\r\n <div>\r\n <!-- Grupo de opções -->\r\n <VoaOption\r\n name=\"opcao\"\r\n value=\"opcao1\"\r\n label=\"Opção 1\"\r\n :checked=\"selected === 'opcao1'\"\r\n @optionChange=\"handleChange\"\r\n />\r\n <VoaOption\r\n name=\"opcao\"\r\n value=\"opcao2\"\r\n label=\"Opção 2\"\r\n :checked=\"selected === 'opcao2'\"\r\n @optionChange=\"handleChange\"\r\n />\r\n <VoaOption\r\n name=\"opcao\"\r\n value=\"opcao3\"\r\n label=\"Opção 3\"\r\n :checked=\"selected === 'opcao3'\"\r\n @optionChange=\"handleChange\"\r\n />\r\n </div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { ref } from 'vue';\r\nimport { VoaOption } from '@voa-ds/vue';\r\n\r\nconst selected = ref('opcao1');\r\n\r\nconst handleChange = (event: CustomEvent<{ checked: boolean; value: string; name: string }>) => {\r\n if (event.detail.checked) {\r\n selected.value = event.detail.value;\r\n }\r\n console.log('Changed', event.detail);\r\n};\r\n</script>\r\n\\`\\`\\`\r\n\r\n## Instalação\r\n\r\n### HTML\r\n\\`\\`\\`bash\r\n# NPM\r\nnpm install @voa-ds/components\r\n\r\n# Importar no HTML\r\n<script type=\"module\" src=\"https://unpkg.com/@voa-ds/components/dist/voa-ds/voa-ds.esm.js\"></script>\r\n\\`\\`\\`\r\n\r\n### React\r\n\\`\\`\\`bash\r\nnpm install @voa-ds/components @voa-ds/react\r\n\\`\\`\\`\r\n\r\n### Angular\r\n\\`\\`\\`bash\r\nnpm install @voa-ds/components @voa-ds/angular\r\n\\`\\`\\`\r\n\r\n### Vue\r\n\\`\\`\\`bash\r\nnpm install @voa-ds/components @voa-ds/vue\r\n\\`\\`\\`\r\n `\r\n }\r\n }\r\n },\r\n render: () => {\r\n // Criar container que inclui o componente e a documentação\r\n const container = document.createElement('div');\r\n container.style.cssText = 'padding: 2rem; max-width: 100%;';\r\n \r\n // Adicionar título\r\n const title = document.createElement('h2');\r\n title.textContent = 'Uso do Componente';\r\n title.style.cssText = 'margin-top: 0; margin-bottom: 1.5rem; font-size: 1.5rem; font-weight: 600;';\r\n container.appendChild(title);\r\n \r\n // Adicionar descrição\r\n const description = document.createElement('p');\r\n description.textContent = 'Este componente pode ser usado em diferentes frameworks. Abaixo estão exemplos de código para cada um:';\r\n description.style.cssText = 'margin-bottom: 2rem; color: #666;';\r\n container.appendChild(description);\r\n \r\n // Adicionar componente de exemplo\r\n const exampleTitle = document.createElement('h3');\r\n exampleTitle.textContent = 'Exemplo Interativo';\r\n exampleTitle.style.cssText = 'margin-top: 2rem; margin-bottom: 1rem; font-size: 1.25rem; font-weight: 600;';\r\n container.appendChild(exampleTitle);\r\n \r\n const el = document.createElement('voa-option') as any;\r\n el.name = 'example';\r\n el.value = 'opcao1';\r\n el.label = 'Exemplo de Uso';\r\n el.checked = true;\r\n el.style.cssText = 'margin-bottom: 2rem;';\r\n container.appendChild(el);\r\n \r\n // Adicionar nota sobre documentação completa\r\n const note = document.createElement('div');\r\n note.style.cssText = 'margin-top: 2rem; padding: 1rem; background: #f5f5f5; border-radius: 4px; border-left: 4px solid #0064cb;';\r\n note.innerHTML = `\r\n <p style=\"margin: 0; font-weight: 600; margin-bottom: 0.5rem;\">📚 Documentação Completa</p>\r\n <p style=\"margin: 0; color: #666; font-size: 0.9rem;\">\r\n Para ver exemplos de código completos para HTML, React, Angular e Vue, \r\n <a href=\"?path=/docs/components-voaoption--docs#usage\" style=\"color: #0064cb; text-decoration: none; font-weight: 600;\">clique aqui para ir à página Docs</a>.\r\n </p>\r\n `;\r\n container.appendChild(note);\r\n \r\n return container;\r\n }\r\n};\r\n\r\n"]}
|