fokus-styles 2.0.0
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 +891 -0
- package/LICENSE +21 -0
- package/README.md +216 -0
- package/assets/fonts/plus-jakarta-sans/OFL.txt +93 -0
- package/assets/fonts/plus-jakarta-sans/plus-jakarta-sans-latin-ext.woff2 +0 -0
- package/assets/fonts/plus-jakarta-sans/plus-jakarta-sans-latin.woff2 +0 -0
- package/assets/fonts/source-code-pro/OFL.txt +93 -0
- package/assets/fonts/source-code-pro/source-code-pro-latin-ext.woff2 +0 -0
- package/assets/fonts/source-code-pro/source-code-pro-latin.woff2 +0 -0
- package/dist/css/components.css +3542 -0
- package/dist/css/components.css.map +1 -0
- package/dist/css/components.min.css +2 -0
- package/dist/css/components.min.css.map +1 -0
- package/dist/css/fokus.css +8220 -0
- package/dist/css/fokus.css.map +1 -0
- package/dist/css/fokus.min.css +2 -0
- package/dist/css/fokus.min.css.map +1 -0
- package/dist/css/fonts.css +33 -0
- package/dist/css/fonts.css.map +1 -0
- package/dist/css/fonts.min.css +2 -0
- package/dist/css/fonts.min.css.map +1 -0
- package/dist/css/forms.css +1167 -0
- package/dist/css/forms.css.map +1 -0
- package/dist/css/forms.min.css +2 -0
- package/dist/css/forms.min.css.map +1 -0
- package/dist/css/helpers.css +3802 -0
- package/dist/css/helpers.css.map +1 -0
- package/dist/css/helpers.min.css +2 -0
- package/dist/css/helpers.min.css.map +1 -0
- package/dist/css/layout.css +1005 -0
- package/dist/css/layout.css.map +1 -0
- package/dist/css/layout.min.css +2 -0
- package/dist/css/layout.min.css.map +1 -0
- package/dist/js/fokus.js +3828 -0
- package/dist/js/fokus.js.map +7 -0
- package/dist/js/fokus.min.js +39 -0
- package/dist/js/fokus.min.js.map +7 -0
- package/docs/README.md +86 -0
- package/docs/comparison.md +124 -0
- package/docs/components/accordion.md +101 -0
- package/docs/components/alert-dialog.md +99 -0
- package/docs/components/alert.md +59 -0
- package/docs/components/badge.md +82 -0
- package/docs/components/breadcrumb.md +93 -0
- package/docs/components/button.md +98 -0
- package/docs/components/card.md +111 -0
- package/docs/components/carousel.md +167 -0
- package/docs/components/checkbox.md +97 -0
- package/docs/components/collapse.md +78 -0
- package/docs/components/combobox.md +123 -0
- package/docs/components/command-palette.md +131 -0
- package/docs/components/datatable.md +173 -0
- package/docs/components/datepicker.md +137 -0
- package/docs/components/divider.md +57 -0
- package/docs/components/dropdown.md +103 -0
- package/docs/components/empty-state.md +65 -0
- package/docs/components/file-upload-advanced.md +116 -0
- package/docs/components/file-upload.md +93 -0
- package/docs/components/input-group.md +73 -0
- package/docs/components/input.md +90 -0
- package/docs/components/modal.md +117 -0
- package/docs/components/navbar.md +71 -0
- package/docs/components/nested-menu.md +90 -0
- package/docs/components/notification-center.md +116 -0
- package/docs/components/offcanvas.md +102 -0
- package/docs/components/pagination.md +142 -0
- package/docs/components/popover.md +105 -0
- package/docs/components/progress.md +126 -0
- package/docs/components/radio.md +70 -0
- package/docs/components/range.md +83 -0
- package/docs/components/rating.md +91 -0
- package/docs/components/segmented-control.md +82 -0
- package/docs/components/select.md +89 -0
- package/docs/components/skeleton.md +67 -0
- package/docs/components/stepper.md +107 -0
- package/docs/components/switch.md +75 -0
- package/docs/components/table.md +87 -0
- package/docs/components/tabs.md +104 -0
- package/docs/components/tag.md +129 -0
- package/docs/components/tile.md +112 -0
- package/docs/components/timeline.md +78 -0
- package/docs/components/toast.md +95 -0
- package/docs/components/tooltip.md +77 -0
- package/docs/components/tree-view.md +118 -0
- package/docs/contributing/contributing.md +18 -0
- package/docs/getting-started/installation.md +70 -0
- package/docs/getting-started/usage.md +105 -0
- package/docs/guides/accessibility.md +102 -0
- package/docs/guides/charts.md +73 -0
- package/docs/guides/dark-mode.md +90 -0
- package/docs/guides/icons.md +99 -0
- package/docs/guides/layout-advanced.md +118 -0
- package/docs/guides/migration-clarus-to-fokus.md +48 -0
- package/docs/guides/migration-external.md +123 -0
- package/docs/guides/migration-v1.md +63 -0
- package/docs/guides/print.md +30 -0
- package/docs/guides/theming.md +140 -0
- package/docs/prompts/prompt-plan.md +45 -0
- package/docs/reference/accessibility-matrix.md +77 -0
- package/docs/reference/browser-support.md +75 -0
- package/docs/reference/contrast-report.md +50 -0
- package/docs/reference/definitions.md +864 -0
- package/docs/reference/design-tokens.md +194 -0
- package/docs/reference/scss-architecture.md +227 -0
- package/docs/reference/size-baseline.json +34 -0
- package/docs/reference/stability.md +89 -0
- package/docs/showcase.md +25 -0
- package/mockup/README.md +41 -0
- package/mockup/assets/carousel-planning.png +0 -0
- package/mockup/assets/carousel-workspace.png +0 -0
- package/mockup/assets/example-theme.css +6 -0
- package/mockup/assets/example-theme.js +9 -0
- package/mockup/assets/showcase-contracts.js +84 -0
- package/mockup/assets/showcase.css +89 -0
- package/mockup/assets/showcase.js +722 -0
- package/mockup/content-data.html +9 -0
- package/mockup/examples/accordion-tabs-toast.html +149 -0
- package/mockup/examples/alert-dialog.html +84 -0
- package/mockup/examples/alerts.html +41 -0
- package/mockup/examples/badges-alerts.html +77 -0
- package/mockup/examples/buttons.html +58 -0
- package/mockup/examples/cards.html +132 -0
- package/mockup/examples/carousel.html +126 -0
- package/mockup/examples/charts.html +102 -0
- package/mockup/examples/check-radio-switch.html +144 -0
- package/mockup/examples/collapse.html +69 -0
- package/mockup/examples/combobox.html +60 -0
- package/mockup/examples/command-palette.html +64 -0
- package/mockup/examples/datatable.html +113 -0
- package/mockup/examples/datepicker.html +62 -0
- package/mockup/examples/divider.html +45 -0
- package/mockup/examples/dropdown-tooltip.html +77 -0
- package/mockup/examples/empty-state.html +56 -0
- package/mockup/examples/file-drop.html +74 -0
- package/mockup/examples/file-upload-advanced.html +68 -0
- package/mockup/examples/forms-advanced.html +77 -0
- package/mockup/examples/hover-card.html +86 -0
- package/mockup/examples/icons.html +157 -0
- package/mockup/examples/input-group.html +74 -0
- package/mockup/examples/js-foundation.html +190 -0
- package/mockup/examples/layout.html +134 -0
- package/mockup/examples/modal-select.html +127 -0
- package/mockup/examples/nested-menu.html +73 -0
- package/mockup/examples/notification-center.html +86 -0
- package/mockup/examples/offcanvas-popover.html +133 -0
- package/mockup/examples/pagination-breadcrumbs.html +92 -0
- package/mockup/examples/range.html +69 -0
- package/mockup/examples/rating.html +103 -0
- package/mockup/examples/segmented-control.html +96 -0
- package/mockup/examples/skeletons.html +82 -0
- package/mockup/examples/spinner-progress.html +130 -0
- package/mockup/examples/stepper.html +119 -0
- package/mockup/examples/tables-navbar.html +85 -0
- package/mockup/examples/tag.html +105 -0
- package/mockup/examples/theming.html +67 -0
- package/mockup/examples/tile.html +107 -0
- package/mockup/examples/timeline.html +108 -0
- package/mockup/examples/tree-view.html +68 -0
- package/mockup/feedback-actions.html +9 -0
- package/mockup/forms.html +13 -0
- package/mockup/foundations.html +7 -0
- package/mockup/kitchen-sink.html +696 -0
- package/mockup/navigation-disclosure.html +11 -0
- package/mockup/overlays-commands.html +12 -0
- package/mockup/templates/README.md +20 -0
- package/mockup/templates/admin.html +334 -0
- package/mockup/templates/auth.html +234 -0
- package/mockup/templates/dashboard.html +442 -0
- package/mockup/templates/landing.html +397 -0
- package/package.json +145 -0
- package/packages/fokus-cli/README.md +52 -0
- package/packages/fokus-cli/bin/fokus.mjs +135 -0
- package/packages/fokus-cli/lib/analyze.mjs +36 -0
- package/packages/fokus-cli/lib/build.mjs +35 -0
- package/packages/fokus-cli/lib/index.mjs +3 -0
- package/packages/fokus-cli/lib/theme.mjs +71 -0
- package/packages/fokus-components/scss/components/_accordion.scss +82 -0
- package/packages/fokus-components/scss/components/_alert-dialog.scss +14 -0
- package/packages/fokus-components/scss/components/_alerts.scss +24 -0
- package/packages/fokus-components/scss/components/_badges.scss +153 -0
- package/packages/fokus-components/scss/components/_breadcrumbs.scss +71 -0
- package/packages/fokus-components/scss/components/_buttons.scss +126 -0
- package/packages/fokus-components/scss/components/_cards.scss +120 -0
- package/packages/fokus-components/scss/components/_carousel.scss +466 -0
- package/packages/fokus-components/scss/components/_collapse.scss +10 -0
- package/packages/fokus-components/scss/components/_combobox.scss +16 -0
- package/packages/fokus-components/scss/components/_command-palette.scss +58 -0
- package/packages/fokus-components/scss/components/_datatable.scss +65 -0
- package/packages/fokus-components/scss/components/_datepicker.scss +137 -0
- package/packages/fokus-components/scss/components/_divider.scss +33 -0
- package/packages/fokus-components/scss/components/_dropdown.scss +88 -0
- package/packages/fokus-components/scss/components/_empty-state.scss +53 -0
- package/packages/fokus-components/scss/components/_index.scss +36 -0
- package/packages/fokus-components/scss/components/_modal.scss +70 -0
- package/packages/fokus-components/scss/components/_navbar.scss +61 -0
- package/packages/fokus-components/scss/components/_nested-menu.scss +50 -0
- package/packages/fokus-components/scss/components/_notification-center.scss +142 -0
- package/packages/fokus-components/scss/components/_offcanvas.scss +101 -0
- package/packages/fokus-components/scss/components/_pagination.scss +101 -0
- package/packages/fokus-components/scss/components/_popover.scss +103 -0
- package/packages/fokus-components/scss/components/_rating.scss +71 -0
- package/packages/fokus-components/scss/components/_segmented-control.scss +88 -0
- package/packages/fokus-components/scss/components/_skeleton.scss +82 -0
- package/packages/fokus-components/scss/components/_spinner.scss +243 -0
- package/packages/fokus-components/scss/components/_stepper.scss +164 -0
- package/packages/fokus-components/scss/components/_tables.scss +61 -0
- package/packages/fokus-components/scss/components/_tabs.scss +98 -0
- package/packages/fokus-components/scss/components/_tag.scss +214 -0
- package/packages/fokus-components/scss/components/_tile.scss +121 -0
- package/packages/fokus-components/scss/components/_timeline.scss +138 -0
- package/packages/fokus-components/scss/components/_toasts.scss +48 -0
- package/packages/fokus-components/scss/components/_tooltips.scss +55 -0
- package/packages/fokus-components/scss/components/_tree-view.scss +62 -0
- package/packages/fokus-components/scss/forms/_check-radio-switch.scss +363 -0
- package/packages/fokus-components/scss/forms/_file-upload-advanced.scss +75 -0
- package/packages/fokus-components/scss/forms/_forms.scss +365 -0
- package/packages/fokus-components/scss/forms/_index.scss +4 -0
- package/packages/fokus-components/scss/forms/_range.scss +99 -0
- package/packages/fokus-core/scss/base/_index.scss +3 -0
- package/packages/fokus-core/scss/base/_motion.scss +24 -0
- package/packages/fokus-core/scss/base/_reset.scss +22 -0
- package/packages/fokus-core/scss/base/_typography.scss +57 -0
- package/packages/fokus-core/scss/layout/_cluster.scss +20 -0
- package/packages/fokus-core/scss/layout/_containers.scss +27 -0
- package/packages/fokus-core/scss/layout/_grid.scss +51 -0
- package/packages/fokus-core/scss/layout/_index.scss +5 -0
- package/packages/fokus-core/scss/layout/_sidebar.scss +41 -0
- package/packages/fokus-core/scss/layout/_stack.scss +19 -0
- package/packages/fokus-core/scss/settings/_breakpoints.scss +32 -0
- package/packages/fokus-core/scss/settings/_colors.scss +182 -0
- package/packages/fokus-core/scss/settings/_container-queries.scss +10 -0
- package/packages/fokus-core/scss/settings/_index.scss +5 -0
- package/packages/fokus-core/scss/settings/_spacing.scss +23 -0
- package/packages/fokus-core/scss/settings/_typography.scss +27 -0
- package/packages/fokus-core/scss/themes/_brands.scss +150 -0
- package/packages/fokus-core/scss/themes/_dark.scss +95 -0
- package/packages/fokus-core/scss/themes/_index.scss +2 -0
- package/packages/fokus-core/scss/tokens/_charts.scss +20 -0
- package/packages/fokus-core/scss/tokens/_index.scss +3 -0
- package/packages/fokus-core/scss/tokens/_root.scss +117 -0
- package/packages/fokus-core/scss/tokens/_semantic.scss +31 -0
- package/packages/fokus-core/scss/tools/_index.scss +1 -0
- package/packages/fokus-core/scss/tools/_mixins.scss +102 -0
- package/packages/fokus-fonts/scss/_fonts.scss +52 -0
- package/packages/fokus-icons/LICENSE +21 -0
- package/packages/fokus-icons/LICENSE-LUCIDE.txt +43 -0
- package/packages/fokus-icons/README.md +48 -0
- package/packages/fokus-icons/icons/a-arrow-down.js +1 -0
- package/packages/fokus-icons/icons/a-arrow-up.js +1 -0
- package/packages/fokus-icons/icons/a-large-small.js +1 -0
- package/packages/fokus-icons/icons/accessibility.js +1 -0
- package/packages/fokus-icons/icons/activity-square.js +1 -0
- package/packages/fokus-icons/icons/activity.js +1 -0
- package/packages/fokus-icons/icons/ad.js +1 -0
- package/packages/fokus-icons/icons/air-vent.js +1 -0
- package/packages/fokus-icons/icons/airplay.js +1 -0
- package/packages/fokus-icons/icons/alarm-check.js +1 -0
- package/packages/fokus-icons/icons/alarm-clock-check.js +1 -0
- package/packages/fokus-icons/icons/alarm-clock-minus.js +1 -0
- package/packages/fokus-icons/icons/alarm-clock-off.js +1 -0
- package/packages/fokus-icons/icons/alarm-clock-plus.js +1 -0
- package/packages/fokus-icons/icons/alarm-clock.js +1 -0
- package/packages/fokus-icons/icons/alarm-minus.js +1 -0
- package/packages/fokus-icons/icons/alarm-plus.js +1 -0
- package/packages/fokus-icons/icons/alarm-smoke.js +1 -0
- package/packages/fokus-icons/icons/album.js +1 -0
- package/packages/fokus-icons/icons/alert-circle.js +1 -0
- package/packages/fokus-icons/icons/alert-octagon.js +1 -0
- package/packages/fokus-icons/icons/alert-triangle.js +1 -0
- package/packages/fokus-icons/icons/align-center-horizontal.js +1 -0
- package/packages/fokus-icons/icons/align-center-vertical.js +1 -0
- package/packages/fokus-icons/icons/align-center.js +1 -0
- package/packages/fokus-icons/icons/align-end-horizontal.js +1 -0
- package/packages/fokus-icons/icons/align-end-vertical.js +1 -0
- package/packages/fokus-icons/icons/align-horizontal-distribute-center.js +1 -0
- package/packages/fokus-icons/icons/align-horizontal-distribute-end.js +1 -0
- package/packages/fokus-icons/icons/align-horizontal-distribute-start.js +1 -0
- package/packages/fokus-icons/icons/align-horizontal-justify-center.js +1 -0
- package/packages/fokus-icons/icons/align-horizontal-justify-end.js +1 -0
- package/packages/fokus-icons/icons/align-horizontal-justify-start.js +1 -0
- package/packages/fokus-icons/icons/align-horizontal-space-around.js +1 -0
- package/packages/fokus-icons/icons/align-horizontal-space-between.js +1 -0
- package/packages/fokus-icons/icons/align-justify.js +1 -0
- package/packages/fokus-icons/icons/align-left.js +1 -0
- package/packages/fokus-icons/icons/align-right.js +1 -0
- package/packages/fokus-icons/icons/align-start-horizontal.js +1 -0
- package/packages/fokus-icons/icons/align-start-vertical.js +1 -0
- package/packages/fokus-icons/icons/align-vertical-distribute-center.js +1 -0
- package/packages/fokus-icons/icons/align-vertical-distribute-end.js +1 -0
- package/packages/fokus-icons/icons/align-vertical-distribute-start.js +1 -0
- package/packages/fokus-icons/icons/align-vertical-justify-center.js +1 -0
- package/packages/fokus-icons/icons/align-vertical-justify-end.js +1 -0
- package/packages/fokus-icons/icons/align-vertical-justify-start.js +1 -0
- package/packages/fokus-icons/icons/align-vertical-space-around.js +1 -0
- package/packages/fokus-icons/icons/align-vertical-space-between.js +1 -0
- package/packages/fokus-icons/icons/ambulance.js +1 -0
- package/packages/fokus-icons/icons/ampersand.js +1 -0
- package/packages/fokus-icons/icons/ampersands.js +1 -0
- package/packages/fokus-icons/icons/amphora.js +1 -0
- package/packages/fokus-icons/icons/anchor.js +1 -0
- package/packages/fokus-icons/icons/angry.js +1 -0
- package/packages/fokus-icons/icons/annoyed.js +1 -0
- package/packages/fokus-icons/icons/antenna.js +1 -0
- package/packages/fokus-icons/icons/anvil.js +1 -0
- package/packages/fokus-icons/icons/aperture.js +1 -0
- package/packages/fokus-icons/icons/app-window-mac.js +1 -0
- package/packages/fokus-icons/icons/app-window.js +1 -0
- package/packages/fokus-icons/icons/apple.js +1 -0
- package/packages/fokus-icons/icons/archive-restore.js +1 -0
- package/packages/fokus-icons/icons/archive-x.js +1 -0
- package/packages/fokus-icons/icons/archive.js +1 -0
- package/packages/fokus-icons/icons/area-chart.js +1 -0
- package/packages/fokus-icons/icons/armchair.js +1 -0
- package/packages/fokus-icons/icons/arrow-big-down-dash.js +1 -0
- package/packages/fokus-icons/icons/arrow-big-down.js +1 -0
- package/packages/fokus-icons/icons/arrow-big-left-dash.js +1 -0
- package/packages/fokus-icons/icons/arrow-big-left.js +1 -0
- package/packages/fokus-icons/icons/arrow-big-right-dash.js +1 -0
- package/packages/fokus-icons/icons/arrow-big-right.js +1 -0
- package/packages/fokus-icons/icons/arrow-big-up-dash.js +1 -0
- package/packages/fokus-icons/icons/arrow-big-up.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-0-1.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-01.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-1-0.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-10.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-a-z.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-az.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-circle.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-from-line.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-left-from-circle.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-left-from-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-left-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-left.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-narrow-wide.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-right-from-circle.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-right-from-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-right-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-right.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-to-dot.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-to-line.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-up.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-wide-narrow.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-z-a.js +1 -0
- package/packages/fokus-icons/icons/arrow-down-za.js +1 -0
- package/packages/fokus-icons/icons/arrow-down.js +1 -0
- package/packages/fokus-icons/icons/arrow-left-circle.js +1 -0
- package/packages/fokus-icons/icons/arrow-left-from-line.js +1 -0
- package/packages/fokus-icons/icons/arrow-left-right.js +1 -0
- package/packages/fokus-icons/icons/arrow-left-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-left-to-line.js +1 -0
- package/packages/fokus-icons/icons/arrow-left.js +1 -0
- package/packages/fokus-icons/icons/arrow-right-circle.js +1 -0
- package/packages/fokus-icons/icons/arrow-right-from-line.js +1 -0
- package/packages/fokus-icons/icons/arrow-right-left.js +1 -0
- package/packages/fokus-icons/icons/arrow-right-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-right-to-line.js +1 -0
- package/packages/fokus-icons/icons/arrow-right.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-0-1.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-01.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-1-0.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-10.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-a-z.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-az.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-circle.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-down.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-from-dot.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-from-line.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-left-from-circle.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-left-from-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-left-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-left.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-narrow-wide.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-right-from-circle.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-right-from-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-right-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-right.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-square.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-to-line.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-wide-narrow.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-z-a.js +1 -0
- package/packages/fokus-icons/icons/arrow-up-za.js +1 -0
- package/packages/fokus-icons/icons/arrow-up.js +1 -0
- package/packages/fokus-icons/icons/arrows-up-from-line.js +1 -0
- package/packages/fokus-icons/icons/asterisk-square.js +1 -0
- package/packages/fokus-icons/icons/asterisk.js +1 -0
- package/packages/fokus-icons/icons/astroid.js +1 -0
- package/packages/fokus-icons/icons/at-sign.js +1 -0
- package/packages/fokus-icons/icons/atom.js +1 -0
- package/packages/fokus-icons/icons/audio-lines.js +1 -0
- package/packages/fokus-icons/icons/audio-waveform.js +1 -0
- package/packages/fokus-icons/icons/award.js +1 -0
- package/packages/fokus-icons/icons/axe.js +1 -0
- package/packages/fokus-icons/icons/axis-3-d.js +1 -0
- package/packages/fokus-icons/icons/axis-3d.js +1 -0
- package/packages/fokus-icons/icons/baby.js +1 -0
- package/packages/fokus-icons/icons/backpack.js +1 -0
- package/packages/fokus-icons/icons/badge-alert.js +1 -0
- package/packages/fokus-icons/icons/badge-cent.js +1 -0
- package/packages/fokus-icons/icons/badge-check.js +1 -0
- package/packages/fokus-icons/icons/badge-dollar-sign.js +1 -0
- package/packages/fokus-icons/icons/badge-euro.js +1 -0
- package/packages/fokus-icons/icons/badge-help.js +1 -0
- package/packages/fokus-icons/icons/badge-indian-rupee.js +1 -0
- package/packages/fokus-icons/icons/badge-info.js +1 -0
- package/packages/fokus-icons/icons/badge-japanese-yen.js +1 -0
- package/packages/fokus-icons/icons/badge-minus.js +1 -0
- package/packages/fokus-icons/icons/badge-percent.js +1 -0
- package/packages/fokus-icons/icons/badge-plus.js +1 -0
- package/packages/fokus-icons/icons/badge-pound-sterling.js +1 -0
- package/packages/fokus-icons/icons/badge-question-mark.js +1 -0
- package/packages/fokus-icons/icons/badge-russian-ruble.js +1 -0
- package/packages/fokus-icons/icons/badge-swiss-franc.js +1 -0
- package/packages/fokus-icons/icons/badge-turkish-lira.js +1 -0
- package/packages/fokus-icons/icons/badge-x.js +1 -0
- package/packages/fokus-icons/icons/badge.js +1 -0
- package/packages/fokus-icons/icons/baggage-claim.js +1 -0
- package/packages/fokus-icons/icons/balloon.js +1 -0
- package/packages/fokus-icons/icons/ban.js +1 -0
- package/packages/fokus-icons/icons/banana.js +1 -0
- package/packages/fokus-icons/icons/bandage.js +1 -0
- package/packages/fokus-icons/icons/banknote-arrow-down.js +1 -0
- package/packages/fokus-icons/icons/banknote-arrow-up.js +1 -0
- package/packages/fokus-icons/icons/banknote-check.js +1 -0
- package/packages/fokus-icons/icons/banknote-x.js +1 -0
- package/packages/fokus-icons/icons/banknote.js +1 -0
- package/packages/fokus-icons/icons/bar-chart-2.js +1 -0
- package/packages/fokus-icons/icons/bar-chart-3.js +1 -0
- package/packages/fokus-icons/icons/bar-chart-4.js +1 -0
- package/packages/fokus-icons/icons/bar-chart-big.js +1 -0
- package/packages/fokus-icons/icons/bar-chart-horizontal-big.js +1 -0
- package/packages/fokus-icons/icons/bar-chart-horizontal.js +1 -0
- package/packages/fokus-icons/icons/bar-chart.js +1 -0
- package/packages/fokus-icons/icons/barcode.js +1 -0
- package/packages/fokus-icons/icons/barrel.js +1 -0
- package/packages/fokus-icons/icons/baseline.js +1 -0
- package/packages/fokus-icons/icons/bath.js +1 -0
- package/packages/fokus-icons/icons/battery-charging.js +1 -0
- package/packages/fokus-icons/icons/battery-full.js +1 -0
- package/packages/fokus-icons/icons/battery-low.js +1 -0
- package/packages/fokus-icons/icons/battery-medium.js +1 -0
- package/packages/fokus-icons/icons/battery-plus.js +1 -0
- package/packages/fokus-icons/icons/battery-warning.js +1 -0
- package/packages/fokus-icons/icons/battery.js +1 -0
- package/packages/fokus-icons/icons/beaker.js +1 -0
- package/packages/fokus-icons/icons/bean-off.js +1 -0
- package/packages/fokus-icons/icons/bean.js +1 -0
- package/packages/fokus-icons/icons/bed-double.js +1 -0
- package/packages/fokus-icons/icons/bed-single.js +1 -0
- package/packages/fokus-icons/icons/bed.js +1 -0
- package/packages/fokus-icons/icons/beef-off.js +1 -0
- package/packages/fokus-icons/icons/beef.js +1 -0
- package/packages/fokus-icons/icons/beer-off.js +1 -0
- package/packages/fokus-icons/icons/beer.js +1 -0
- package/packages/fokus-icons/icons/bell-check.js +1 -0
- package/packages/fokus-icons/icons/bell-dot.js +1 -0
- package/packages/fokus-icons/icons/bell-electric.js +1 -0
- package/packages/fokus-icons/icons/bell-minus.js +1 -0
- package/packages/fokus-icons/icons/bell-off.js +1 -0
- package/packages/fokus-icons/icons/bell-plus.js +1 -0
- package/packages/fokus-icons/icons/bell-ring.js +1 -0
- package/packages/fokus-icons/icons/bell.js +1 -0
- package/packages/fokus-icons/icons/between-horizonal-end.js +1 -0
- package/packages/fokus-icons/icons/between-horizonal-start.js +1 -0
- package/packages/fokus-icons/icons/between-horizontal-end.js +1 -0
- package/packages/fokus-icons/icons/between-horizontal-start.js +1 -0
- package/packages/fokus-icons/icons/between-vertical-end.js +1 -0
- package/packages/fokus-icons/icons/between-vertical-start.js +1 -0
- package/packages/fokus-icons/icons/biceps-flexed.js +1 -0
- package/packages/fokus-icons/icons/bike.js +1 -0
- package/packages/fokus-icons/icons/binary.js +1 -0
- package/packages/fokus-icons/icons/binoculars.js +1 -0
- package/packages/fokus-icons/icons/biohazard.js +1 -0
- package/packages/fokus-icons/icons/bird.js +1 -0
- package/packages/fokus-icons/icons/birdhouse.js +1 -0
- package/packages/fokus-icons/icons/bitcoin.js +1 -0
- package/packages/fokus-icons/icons/blend.js +1 -0
- package/packages/fokus-icons/icons/blender.js +1 -0
- package/packages/fokus-icons/icons/blinds.js +1 -0
- package/packages/fokus-icons/icons/blocks.js +1 -0
- package/packages/fokus-icons/icons/bluetooth-connected.js +1 -0
- package/packages/fokus-icons/icons/bluetooth-off.js +1 -0
- package/packages/fokus-icons/icons/bluetooth-searching.js +1 -0
- package/packages/fokus-icons/icons/bluetooth.js +1 -0
- package/packages/fokus-icons/icons/bold.js +1 -0
- package/packages/fokus-icons/icons/bolt.js +1 -0
- package/packages/fokus-icons/icons/bomb.js +1 -0
- package/packages/fokus-icons/icons/bone-fracture.js +1 -0
- package/packages/fokus-icons/icons/bone.js +1 -0
- package/packages/fokus-icons/icons/book-a.js +1 -0
- package/packages/fokus-icons/icons/book-alert.js +1 -0
- package/packages/fokus-icons/icons/book-audio.js +1 -0
- package/packages/fokus-icons/icons/book-check.js +1 -0
- package/packages/fokus-icons/icons/book-copy.js +1 -0
- package/packages/fokus-icons/icons/book-dashed.js +1 -0
- package/packages/fokus-icons/icons/book-down.js +1 -0
- package/packages/fokus-icons/icons/book-headphones.js +1 -0
- package/packages/fokus-icons/icons/book-heart.js +1 -0
- package/packages/fokus-icons/icons/book-image.js +1 -0
- package/packages/fokus-icons/icons/book-key.js +1 -0
- package/packages/fokus-icons/icons/book-lock.js +1 -0
- package/packages/fokus-icons/icons/book-marked.js +1 -0
- package/packages/fokus-icons/icons/book-minus.js +1 -0
- package/packages/fokus-icons/icons/book-open-check.js +1 -0
- package/packages/fokus-icons/icons/book-open-text.js +1 -0
- package/packages/fokus-icons/icons/book-open.js +1 -0
- package/packages/fokus-icons/icons/book-plus.js +1 -0
- package/packages/fokus-icons/icons/book-search.js +1 -0
- package/packages/fokus-icons/icons/book-template.js +1 -0
- package/packages/fokus-icons/icons/book-text.js +1 -0
- package/packages/fokus-icons/icons/book-type.js +1 -0
- package/packages/fokus-icons/icons/book-up-2.js +1 -0
- package/packages/fokus-icons/icons/book-up.js +1 -0
- package/packages/fokus-icons/icons/book-user.js +1 -0
- package/packages/fokus-icons/icons/book-x.js +1 -0
- package/packages/fokus-icons/icons/book.js +1 -0
- package/packages/fokus-icons/icons/bookmark-check.js +1 -0
- package/packages/fokus-icons/icons/bookmark-minus.js +1 -0
- package/packages/fokus-icons/icons/bookmark-off.js +1 -0
- package/packages/fokus-icons/icons/bookmark-plus.js +1 -0
- package/packages/fokus-icons/icons/bookmark-x.js +1 -0
- package/packages/fokus-icons/icons/bookmark.js +1 -0
- package/packages/fokus-icons/icons/boom-box.js +1 -0
- package/packages/fokus-icons/icons/bot-message-square.js +1 -0
- package/packages/fokus-icons/icons/bot-off.js +1 -0
- package/packages/fokus-icons/icons/bot.js +1 -0
- package/packages/fokus-icons/icons/bottle-wine.js +1 -0
- package/packages/fokus-icons/icons/bow-arrow.js +1 -0
- package/packages/fokus-icons/icons/box-select.js +1 -0
- package/packages/fokus-icons/icons/box.js +1 -0
- package/packages/fokus-icons/icons/boxes.js +1 -0
- package/packages/fokus-icons/icons/braces.js +1 -0
- package/packages/fokus-icons/icons/brackets.js +1 -0
- package/packages/fokus-icons/icons/brain-circuit.js +1 -0
- package/packages/fokus-icons/icons/brain-cog.js +1 -0
- package/packages/fokus-icons/icons/brain.js +1 -0
- package/packages/fokus-icons/icons/brick-wall-fire.js +1 -0
- package/packages/fokus-icons/icons/brick-wall-shield.js +1 -0
- package/packages/fokus-icons/icons/brick-wall.js +1 -0
- package/packages/fokus-icons/icons/briefcase-business.js +1 -0
- package/packages/fokus-icons/icons/briefcase-conveyor-belt.js +1 -0
- package/packages/fokus-icons/icons/briefcase-medical.js +1 -0
- package/packages/fokus-icons/icons/briefcase.js +1 -0
- package/packages/fokus-icons/icons/bring-to-front.js +1 -0
- package/packages/fokus-icons/icons/broccoli.js +1 -0
- package/packages/fokus-icons/icons/brush-cleaning.js +1 -0
- package/packages/fokus-icons/icons/brush.js +1 -0
- package/packages/fokus-icons/icons/bubbles.js +1 -0
- package/packages/fokus-icons/icons/bug-off.js +1 -0
- package/packages/fokus-icons/icons/bug-play.js +1 -0
- package/packages/fokus-icons/icons/bug.js +1 -0
- package/packages/fokus-icons/icons/building-2.js +1 -0
- package/packages/fokus-icons/icons/building.js +1 -0
- package/packages/fokus-icons/icons/bus-front.js +1 -0
- package/packages/fokus-icons/icons/bus.js +1 -0
- package/packages/fokus-icons/icons/cable-car.js +1 -0
- package/packages/fokus-icons/icons/cable.js +1 -0
- package/packages/fokus-icons/icons/cake-slice.js +1 -0
- package/packages/fokus-icons/icons/cake.js +1 -0
- package/packages/fokus-icons/icons/calculator.js +1 -0
- package/packages/fokus-icons/icons/calendar-1.js +1 -0
- package/packages/fokus-icons/icons/calendar-arrow-down.js +1 -0
- package/packages/fokus-icons/icons/calendar-arrow-up.js +1 -0
- package/packages/fokus-icons/icons/calendar-check-2.js +1 -0
- package/packages/fokus-icons/icons/calendar-check.js +1 -0
- package/packages/fokus-icons/icons/calendar-clock.js +1 -0
- package/packages/fokus-icons/icons/calendar-cog.js +1 -0
- package/packages/fokus-icons/icons/calendar-days.js +1 -0
- package/packages/fokus-icons/icons/calendar-fold.js +1 -0
- package/packages/fokus-icons/icons/calendar-heart.js +1 -0
- package/packages/fokus-icons/icons/calendar-minus-2.js +1 -0
- package/packages/fokus-icons/icons/calendar-minus.js +1 -0
- package/packages/fokus-icons/icons/calendar-off.js +1 -0
- package/packages/fokus-icons/icons/calendar-plus-2.js +1 -0
- package/packages/fokus-icons/icons/calendar-plus.js +1 -0
- package/packages/fokus-icons/icons/calendar-range.js +1 -0
- package/packages/fokus-icons/icons/calendar-search.js +1 -0
- package/packages/fokus-icons/icons/calendar-sync.js +1 -0
- package/packages/fokus-icons/icons/calendar-x-2.js +1 -0
- package/packages/fokus-icons/icons/calendar-x.js +1 -0
- package/packages/fokus-icons/icons/calendar.js +1 -0
- package/packages/fokus-icons/icons/calendars.js +1 -0
- package/packages/fokus-icons/icons/camera-off.js +1 -0
- package/packages/fokus-icons/icons/camera.js +1 -0
- package/packages/fokus-icons/icons/candlestick-chart.js +1 -0
- package/packages/fokus-icons/icons/candy-cane.js +1 -0
- package/packages/fokus-icons/icons/candy-off.js +1 -0
- package/packages/fokus-icons/icons/candy.js +1 -0
- package/packages/fokus-icons/icons/cannabis-off.js +1 -0
- package/packages/fokus-icons/icons/cannabis.js +1 -0
- package/packages/fokus-icons/icons/captions-off.js +1 -0
- package/packages/fokus-icons/icons/captions.js +1 -0
- package/packages/fokus-icons/icons/car-front.js +1 -0
- package/packages/fokus-icons/icons/car-taxi-front.js +1 -0
- package/packages/fokus-icons/icons/car.js +1 -0
- package/packages/fokus-icons/icons/caravan.js +1 -0
- package/packages/fokus-icons/icons/card-sim.js +1 -0
- package/packages/fokus-icons/icons/carrot.js +1 -0
- package/packages/fokus-icons/icons/case-lower.js +1 -0
- package/packages/fokus-icons/icons/case-sensitive.js +1 -0
- package/packages/fokus-icons/icons/case-upper.js +1 -0
- package/packages/fokus-icons/icons/cassette-tape.js +1 -0
- package/packages/fokus-icons/icons/cast.js +1 -0
- package/packages/fokus-icons/icons/castle.js +1 -0
- package/packages/fokus-icons/icons/cat.js +1 -0
- package/packages/fokus-icons/icons/cctv-off.js +1 -0
- package/packages/fokus-icons/icons/cctv.js +1 -0
- package/packages/fokus-icons/icons/chart-area.js +1 -0
- package/packages/fokus-icons/icons/chart-bar-big.js +1 -0
- package/packages/fokus-icons/icons/chart-bar-decreasing.js +1 -0
- package/packages/fokus-icons/icons/chart-bar-increasing.js +1 -0
- package/packages/fokus-icons/icons/chart-bar-stacked.js +1 -0
- package/packages/fokus-icons/icons/chart-bar.js +1 -0
- package/packages/fokus-icons/icons/chart-candlestick.js +1 -0
- package/packages/fokus-icons/icons/chart-column-big.js +1 -0
- package/packages/fokus-icons/icons/chart-column-decreasing.js +1 -0
- package/packages/fokus-icons/icons/chart-column-increasing.js +1 -0
- package/packages/fokus-icons/icons/chart-column-stacked.js +1 -0
- package/packages/fokus-icons/icons/chart-column.js +1 -0
- package/packages/fokus-icons/icons/chart-gantt.js +1 -0
- package/packages/fokus-icons/icons/chart-line.js +1 -0
- package/packages/fokus-icons/icons/chart-network.js +1 -0
- package/packages/fokus-icons/icons/chart-no-axes-column-decreasing.js +1 -0
- package/packages/fokus-icons/icons/chart-no-axes-column-increasing.js +1 -0
- package/packages/fokus-icons/icons/chart-no-axes-column.js +1 -0
- package/packages/fokus-icons/icons/chart-no-axes-combined.js +1 -0
- package/packages/fokus-icons/icons/chart-no-axes-gantt.js +1 -0
- package/packages/fokus-icons/icons/chart-pie.js +1 -0
- package/packages/fokus-icons/icons/chart-scatter.js +1 -0
- package/packages/fokus-icons/icons/chart-spline.js +1 -0
- package/packages/fokus-icons/icons/check-check.js +1 -0
- package/packages/fokus-icons/icons/check-circle-2.js +1 -0
- package/packages/fokus-icons/icons/check-circle.js +1 -0
- package/packages/fokus-icons/icons/check-line.js +1 -0
- package/packages/fokus-icons/icons/check-square-2.js +1 -0
- package/packages/fokus-icons/icons/check-square.js +1 -0
- package/packages/fokus-icons/icons/check.js +1 -0
- package/packages/fokus-icons/icons/chef-hat.js +1 -0
- package/packages/fokus-icons/icons/cherry.js +1 -0
- package/packages/fokus-icons/icons/chess-bishop.js +1 -0
- package/packages/fokus-icons/icons/chess-king.js +1 -0
- package/packages/fokus-icons/icons/chess-knight.js +1 -0
- package/packages/fokus-icons/icons/chess-pawn.js +1 -0
- package/packages/fokus-icons/icons/chess-queen.js +1 -0
- package/packages/fokus-icons/icons/chess-rook.js +1 -0
- package/packages/fokus-icons/icons/chevron-down-circle.js +1 -0
- package/packages/fokus-icons/icons/chevron-down-square.js +1 -0
- package/packages/fokus-icons/icons/chevron-down.js +1 -0
- package/packages/fokus-icons/icons/chevron-first.js +1 -0
- package/packages/fokus-icons/icons/chevron-last.js +1 -0
- package/packages/fokus-icons/icons/chevron-left-circle.js +1 -0
- package/packages/fokus-icons/icons/chevron-left-square.js +1 -0
- package/packages/fokus-icons/icons/chevron-left.js +1 -0
- package/packages/fokus-icons/icons/chevron-right-circle.js +1 -0
- package/packages/fokus-icons/icons/chevron-right-square.js +1 -0
- package/packages/fokus-icons/icons/chevron-right.js +1 -0
- package/packages/fokus-icons/icons/chevron-up-circle.js +1 -0
- package/packages/fokus-icons/icons/chevron-up-square.js +1 -0
- package/packages/fokus-icons/icons/chevron-up.js +1 -0
- package/packages/fokus-icons/icons/chevrons-down-up.js +1 -0
- package/packages/fokus-icons/icons/chevrons-down.js +1 -0
- package/packages/fokus-icons/icons/chevrons-left-right-ellipsis.js +1 -0
- package/packages/fokus-icons/icons/chevrons-left-right.js +1 -0
- package/packages/fokus-icons/icons/chevrons-left.js +1 -0
- package/packages/fokus-icons/icons/chevrons-right-left.js +1 -0
- package/packages/fokus-icons/icons/chevrons-right.js +1 -0
- package/packages/fokus-icons/icons/chevrons-up-down.js +1 -0
- package/packages/fokus-icons/icons/chevrons-up.js +1 -0
- package/packages/fokus-icons/icons/church.js +1 -0
- package/packages/fokus-icons/icons/cigarette-off.js +1 -0
- package/packages/fokus-icons/icons/cigarette.js +1 -0
- package/packages/fokus-icons/icons/circle-alert.js +1 -0
- package/packages/fokus-icons/icons/circle-arrow-down.js +1 -0
- package/packages/fokus-icons/icons/circle-arrow-left.js +1 -0
- package/packages/fokus-icons/icons/circle-arrow-out-down-left.js +1 -0
- package/packages/fokus-icons/icons/circle-arrow-out-down-right.js +1 -0
- package/packages/fokus-icons/icons/circle-arrow-out-up-left.js +1 -0
- package/packages/fokus-icons/icons/circle-arrow-out-up-right.js +1 -0
- package/packages/fokus-icons/icons/circle-arrow-right.js +1 -0
- package/packages/fokus-icons/icons/circle-arrow-up.js +1 -0
- package/packages/fokus-icons/icons/circle-check-big.js +1 -0
- package/packages/fokus-icons/icons/circle-check.js +1 -0
- package/packages/fokus-icons/icons/circle-chevron-down.js +1 -0
- package/packages/fokus-icons/icons/circle-chevron-left.js +1 -0
- package/packages/fokus-icons/icons/circle-chevron-right.js +1 -0
- package/packages/fokus-icons/icons/circle-chevron-up.js +1 -0
- package/packages/fokus-icons/icons/circle-dashed.js +1 -0
- package/packages/fokus-icons/icons/circle-divide.js +1 -0
- package/packages/fokus-icons/icons/circle-dollar-sign.js +1 -0
- package/packages/fokus-icons/icons/circle-dot-dashed.js +1 -0
- package/packages/fokus-icons/icons/circle-dot.js +1 -0
- package/packages/fokus-icons/icons/circle-ellipsis.js +1 -0
- package/packages/fokus-icons/icons/circle-equal.js +1 -0
- package/packages/fokus-icons/icons/circle-fading-arrow-up.js +1 -0
- package/packages/fokus-icons/icons/circle-fading-plus.js +1 -0
- package/packages/fokus-icons/icons/circle-gauge.js +1 -0
- package/packages/fokus-icons/icons/circle-help.js +1 -0
- package/packages/fokus-icons/icons/circle-minus.js +1 -0
- package/packages/fokus-icons/icons/circle-off.js +1 -0
- package/packages/fokus-icons/icons/circle-parking-off.js +1 -0
- package/packages/fokus-icons/icons/circle-parking.js +1 -0
- package/packages/fokus-icons/icons/circle-pause.js +1 -0
- package/packages/fokus-icons/icons/circle-percent.js +1 -0
- package/packages/fokus-icons/icons/circle-pile.js +1 -0
- package/packages/fokus-icons/icons/circle-play.js +1 -0
- package/packages/fokus-icons/icons/circle-plus.js +1 -0
- package/packages/fokus-icons/icons/circle-pound-sterling.js +1 -0
- package/packages/fokus-icons/icons/circle-power.js +1 -0
- package/packages/fokus-icons/icons/circle-question-mark.js +1 -0
- package/packages/fokus-icons/icons/circle-slash-2.js +1 -0
- package/packages/fokus-icons/icons/circle-slash.js +1 -0
- package/packages/fokus-icons/icons/circle-slashed.js +1 -0
- package/packages/fokus-icons/icons/circle-small.js +1 -0
- package/packages/fokus-icons/icons/circle-star.js +1 -0
- package/packages/fokus-icons/icons/circle-stop.js +1 -0
- package/packages/fokus-icons/icons/circle-user-round.js +1 -0
- package/packages/fokus-icons/icons/circle-user.js +1 -0
- package/packages/fokus-icons/icons/circle-x.js +1 -0
- package/packages/fokus-icons/icons/circle.js +1 -0
- package/packages/fokus-icons/icons/circuit-board.js +1 -0
- package/packages/fokus-icons/icons/citrus.js +1 -0
- package/packages/fokus-icons/icons/clapperboard.js +1 -0
- package/packages/fokus-icons/icons/clipboard-check.js +1 -0
- package/packages/fokus-icons/icons/clipboard-clock.js +1 -0
- package/packages/fokus-icons/icons/clipboard-copy.js +1 -0
- package/packages/fokus-icons/icons/clipboard-edit.js +1 -0
- package/packages/fokus-icons/icons/clipboard-list.js +1 -0
- package/packages/fokus-icons/icons/clipboard-minus.js +1 -0
- package/packages/fokus-icons/icons/clipboard-paste.js +1 -0
- package/packages/fokus-icons/icons/clipboard-pen-line.js +1 -0
- package/packages/fokus-icons/icons/clipboard-pen.js +1 -0
- package/packages/fokus-icons/icons/clipboard-plus.js +1 -0
- package/packages/fokus-icons/icons/clipboard-signature.js +1 -0
- package/packages/fokus-icons/icons/clipboard-type.js +1 -0
- package/packages/fokus-icons/icons/clipboard-x.js +1 -0
- package/packages/fokus-icons/icons/clipboard.js +1 -0
- package/packages/fokus-icons/icons/clock-1.js +1 -0
- package/packages/fokus-icons/icons/clock-10.js +1 -0
- package/packages/fokus-icons/icons/clock-11.js +1 -0
- package/packages/fokus-icons/icons/clock-12.js +1 -0
- package/packages/fokus-icons/icons/clock-2.js +1 -0
- package/packages/fokus-icons/icons/clock-3.js +1 -0
- package/packages/fokus-icons/icons/clock-4.js +1 -0
- package/packages/fokus-icons/icons/clock-5.js +1 -0
- package/packages/fokus-icons/icons/clock-6.js +1 -0
- package/packages/fokus-icons/icons/clock-7.js +1 -0
- package/packages/fokus-icons/icons/clock-8.js +1 -0
- package/packages/fokus-icons/icons/clock-9.js +1 -0
- package/packages/fokus-icons/icons/clock-alert.js +1 -0
- package/packages/fokus-icons/icons/clock-arrow-down.js +1 -0
- package/packages/fokus-icons/icons/clock-arrow-left.js +1 -0
- package/packages/fokus-icons/icons/clock-arrow-right.js +1 -0
- package/packages/fokus-icons/icons/clock-arrow-up.js +1 -0
- package/packages/fokus-icons/icons/clock-check.js +1 -0
- package/packages/fokus-icons/icons/clock-fading.js +1 -0
- package/packages/fokus-icons/icons/clock-plus.js +1 -0
- package/packages/fokus-icons/icons/clock.js +1 -0
- package/packages/fokus-icons/icons/closed-caption.js +1 -0
- package/packages/fokus-icons/icons/cloud-alert.js +1 -0
- package/packages/fokus-icons/icons/cloud-backup.js +1 -0
- package/packages/fokus-icons/icons/cloud-check.js +1 -0
- package/packages/fokus-icons/icons/cloud-cog.js +1 -0
- package/packages/fokus-icons/icons/cloud-download.js +1 -0
- package/packages/fokus-icons/icons/cloud-drizzle.js +1 -0
- package/packages/fokus-icons/icons/cloud-fog.js +1 -0
- package/packages/fokus-icons/icons/cloud-hail.js +1 -0
- package/packages/fokus-icons/icons/cloud-lightning.js +1 -0
- package/packages/fokus-icons/icons/cloud-moon-rain.js +1 -0
- package/packages/fokus-icons/icons/cloud-moon.js +1 -0
- package/packages/fokus-icons/icons/cloud-off.js +1 -0
- package/packages/fokus-icons/icons/cloud-rain-wind.js +1 -0
- package/packages/fokus-icons/icons/cloud-rain.js +1 -0
- package/packages/fokus-icons/icons/cloud-snow.js +1 -0
- package/packages/fokus-icons/icons/cloud-sun-rain.js +1 -0
- package/packages/fokus-icons/icons/cloud-sun.js +1 -0
- package/packages/fokus-icons/icons/cloud-sync.js +1 -0
- package/packages/fokus-icons/icons/cloud-upload.js +1 -0
- package/packages/fokus-icons/icons/cloud.js +1 -0
- package/packages/fokus-icons/icons/cloudy.js +1 -0
- package/packages/fokus-icons/icons/clover.js +1 -0
- package/packages/fokus-icons/icons/club.js +1 -0
- package/packages/fokus-icons/icons/code-2.js +1 -0
- package/packages/fokus-icons/icons/code-square.js +1 -0
- package/packages/fokus-icons/icons/code-xml.js +1 -0
- package/packages/fokus-icons/icons/code.js +1 -0
- package/packages/fokus-icons/icons/coffee.js +1 -0
- package/packages/fokus-icons/icons/cog.js +1 -0
- package/packages/fokus-icons/icons/coins.js +1 -0
- package/packages/fokus-icons/icons/columns-2.js +1 -0
- package/packages/fokus-icons/icons/columns-3-cog.js +1 -0
- package/packages/fokus-icons/icons/columns-3.js +1 -0
- package/packages/fokus-icons/icons/columns-4.js +1 -0
- package/packages/fokus-icons/icons/columns-settings.js +1 -0
- package/packages/fokus-icons/icons/columns.js +1 -0
- package/packages/fokus-icons/icons/combine.js +1 -0
- package/packages/fokus-icons/icons/command.js +1 -0
- package/packages/fokus-icons/icons/compass.js +1 -0
- package/packages/fokus-icons/icons/component.js +1 -0
- package/packages/fokus-icons/icons/computer.js +1 -0
- package/packages/fokus-icons/icons/concierge-bell.js +1 -0
- package/packages/fokus-icons/icons/cone.js +1 -0
- package/packages/fokus-icons/icons/construction.js +1 -0
- package/packages/fokus-icons/icons/contact-2.js +1 -0
- package/packages/fokus-icons/icons/contact-round.js +1 -0
- package/packages/fokus-icons/icons/contact.js +1 -0
- package/packages/fokus-icons/icons/container.js +1 -0
- package/packages/fokus-icons/icons/contrast.js +1 -0
- package/packages/fokus-icons/icons/cookie.js +1 -0
- package/packages/fokus-icons/icons/cooking-pot.js +1 -0
- package/packages/fokus-icons/icons/copy-check.js +1 -0
- package/packages/fokus-icons/icons/copy-minus.js +1 -0
- package/packages/fokus-icons/icons/copy-plus.js +1 -0
- package/packages/fokus-icons/icons/copy-slash.js +1 -0
- package/packages/fokus-icons/icons/copy-x.js +1 -0
- package/packages/fokus-icons/icons/copy.js +1 -0
- package/packages/fokus-icons/icons/copyleft.js +1 -0
- package/packages/fokus-icons/icons/copyright.js +1 -0
- package/packages/fokus-icons/icons/corner-down-left.js +1 -0
- package/packages/fokus-icons/icons/corner-down-right.js +1 -0
- package/packages/fokus-icons/icons/corner-left-down.js +1 -0
- package/packages/fokus-icons/icons/corner-left-up.js +1 -0
- package/packages/fokus-icons/icons/corner-right-down.js +1 -0
- package/packages/fokus-icons/icons/corner-right-up.js +1 -0
- package/packages/fokus-icons/icons/corner-up-left.js +1 -0
- package/packages/fokus-icons/icons/corner-up-right.js +1 -0
- package/packages/fokus-icons/icons/cpu.js +1 -0
- package/packages/fokus-icons/icons/creative-commons.js +1 -0
- package/packages/fokus-icons/icons/credit-card.js +1 -0
- package/packages/fokus-icons/icons/croissant.js +1 -0
- package/packages/fokus-icons/icons/crop.js +1 -0
- package/packages/fokus-icons/icons/cross.js +1 -0
- package/packages/fokus-icons/icons/crosshair.js +1 -0
- package/packages/fokus-icons/icons/crown.js +1 -0
- package/packages/fokus-icons/icons/cuboid.js +1 -0
- package/packages/fokus-icons/icons/cup-soda.js +1 -0
- package/packages/fokus-icons/icons/curly-braces.js +1 -0
- package/packages/fokus-icons/icons/currency.js +1 -0
- package/packages/fokus-icons/icons/cylinder.js +1 -0
- package/packages/fokus-icons/icons/dam.js +1 -0
- package/packages/fokus-icons/icons/database-arrow-down.js +1 -0
- package/packages/fokus-icons/icons/database-arrow-up.js +1 -0
- package/packages/fokus-icons/icons/database-backup.js +1 -0
- package/packages/fokus-icons/icons/database-check.js +1 -0
- package/packages/fokus-icons/icons/database-minus.js +1 -0
- package/packages/fokus-icons/icons/database-plus.js +1 -0
- package/packages/fokus-icons/icons/database-search.js +1 -0
- package/packages/fokus-icons/icons/database-x.js +1 -0
- package/packages/fokus-icons/icons/database-zap.js +1 -0
- package/packages/fokus-icons/icons/database.js +1 -0
- package/packages/fokus-icons/icons/decimals-arrow-left.js +1 -0
- package/packages/fokus-icons/icons/decimals-arrow-right.js +1 -0
- package/packages/fokus-icons/icons/delete.js +1 -0
- package/packages/fokus-icons/icons/dessert.js +1 -0
- package/packages/fokus-icons/icons/diameter.js +1 -0
- package/packages/fokus-icons/icons/diamond-minus.js +1 -0
- package/packages/fokus-icons/icons/diamond-percent.js +1 -0
- package/packages/fokus-icons/icons/diamond-plus.js +1 -0
- package/packages/fokus-icons/icons/diamond.js +1 -0
- package/packages/fokus-icons/icons/dice-1.js +1 -0
- package/packages/fokus-icons/icons/dice-2.js +1 -0
- package/packages/fokus-icons/icons/dice-3.js +1 -0
- package/packages/fokus-icons/icons/dice-4.js +1 -0
- package/packages/fokus-icons/icons/dice-5.js +1 -0
- package/packages/fokus-icons/icons/dice-6.js +1 -0
- package/packages/fokus-icons/icons/dices.js +1 -0
- package/packages/fokus-icons/icons/diff.js +1 -0
- package/packages/fokus-icons/icons/disc-2.js +1 -0
- package/packages/fokus-icons/icons/disc-3.js +1 -0
- package/packages/fokus-icons/icons/disc-album.js +1 -0
- package/packages/fokus-icons/icons/disc.js +1 -0
- package/packages/fokus-icons/icons/divide-circle.js +1 -0
- package/packages/fokus-icons/icons/divide-square.js +1 -0
- package/packages/fokus-icons/icons/divide.js +1 -0
- package/packages/fokus-icons/icons/dna-off.js +1 -0
- package/packages/fokus-icons/icons/dna.js +1 -0
- package/packages/fokus-icons/icons/dock.js +1 -0
- package/packages/fokus-icons/icons/dog.js +1 -0
- package/packages/fokus-icons/icons/dollar-sign.js +1 -0
- package/packages/fokus-icons/icons/donut.js +1 -0
- package/packages/fokus-icons/icons/door-closed-locked.js +1 -0
- package/packages/fokus-icons/icons/door-closed.js +1 -0
- package/packages/fokus-icons/icons/door-open.js +1 -0
- package/packages/fokus-icons/icons/dot-square.js +1 -0
- package/packages/fokus-icons/icons/dot.js +1 -0
- package/packages/fokus-icons/icons/download-cloud.js +1 -0
- package/packages/fokus-icons/icons/download.js +1 -0
- package/packages/fokus-icons/icons/drafting-compass.js +1 -0
- package/packages/fokus-icons/icons/drama.js +1 -0
- package/packages/fokus-icons/icons/drill.js +1 -0
- package/packages/fokus-icons/icons/drone.js +1 -0
- package/packages/fokus-icons/icons/droplet-off.js +1 -0
- package/packages/fokus-icons/icons/droplet.js +1 -0
- package/packages/fokus-icons/icons/droplets.js +1 -0
- package/packages/fokus-icons/icons/drum.js +1 -0
- package/packages/fokus-icons/icons/drumstick.js +1 -0
- package/packages/fokus-icons/icons/dumbbell.js +1 -0
- package/packages/fokus-icons/icons/ear-off.js +1 -0
- package/packages/fokus-icons/icons/ear.js +1 -0
- package/packages/fokus-icons/icons/earth-lock.js +1 -0
- package/packages/fokus-icons/icons/earth.js +1 -0
- package/packages/fokus-icons/icons/eclipse.js +1 -0
- package/packages/fokus-icons/icons/edit-2.js +1 -0
- package/packages/fokus-icons/icons/edit-3.js +1 -0
- package/packages/fokus-icons/icons/edit.js +1 -0
- package/packages/fokus-icons/icons/egg-fried.js +1 -0
- package/packages/fokus-icons/icons/egg-off.js +1 -0
- package/packages/fokus-icons/icons/egg.js +1 -0
- package/packages/fokus-icons/icons/ellipse.js +1 -0
- package/packages/fokus-icons/icons/ellipsis-vertical.js +1 -0
- package/packages/fokus-icons/icons/ellipsis.js +1 -0
- package/packages/fokus-icons/icons/equal-approximately.js +1 -0
- package/packages/fokus-icons/icons/equal-not.js +1 -0
- package/packages/fokus-icons/icons/equal-square.js +1 -0
- package/packages/fokus-icons/icons/equal.js +1 -0
- package/packages/fokus-icons/icons/eraser.js +1 -0
- package/packages/fokus-icons/icons/ethernet-port.js +1 -0
- package/packages/fokus-icons/icons/euro.js +1 -0
- package/packages/fokus-icons/icons/ev-charger.js +1 -0
- package/packages/fokus-icons/icons/expand.js +1 -0
- package/packages/fokus-icons/icons/external-link.js +1 -0
- package/packages/fokus-icons/icons/eye-closed.js +1 -0
- package/packages/fokus-icons/icons/eye-dashed.js +1 -0
- package/packages/fokus-icons/icons/eye-off.js +1 -0
- package/packages/fokus-icons/icons/eye.js +1 -0
- package/packages/fokus-icons/icons/factory.js +1 -0
- package/packages/fokus-icons/icons/fan.js +1 -0
- package/packages/fokus-icons/icons/fast-forward.js +1 -0
- package/packages/fokus-icons/icons/feather.js +1 -0
- package/packages/fokus-icons/icons/fence.js +1 -0
- package/packages/fokus-icons/icons/ferris-wheel.js +1 -0
- package/packages/fokus-icons/icons/file-archive.js +1 -0
- package/packages/fokus-icons/icons/file-audio-2.js +1 -0
- package/packages/fokus-icons/icons/file-audio.js +1 -0
- package/packages/fokus-icons/icons/file-axis-3-d.js +1 -0
- package/packages/fokus-icons/icons/file-axis-3d.js +1 -0
- package/packages/fokus-icons/icons/file-badge-2.js +1 -0
- package/packages/fokus-icons/icons/file-badge.js +1 -0
- package/packages/fokus-icons/icons/file-bar-chart-2.js +1 -0
- package/packages/fokus-icons/icons/file-bar-chart.js +1 -0
- package/packages/fokus-icons/icons/file-box.js +1 -0
- package/packages/fokus-icons/icons/file-braces-corner.js +1 -0
- package/packages/fokus-icons/icons/file-braces.js +1 -0
- package/packages/fokus-icons/icons/file-chart-column-increasing.js +1 -0
- package/packages/fokus-icons/icons/file-chart-column.js +1 -0
- package/packages/fokus-icons/icons/file-chart-line.js +1 -0
- package/packages/fokus-icons/icons/file-chart-pie.js +1 -0
- package/packages/fokus-icons/icons/file-check-2.js +1 -0
- package/packages/fokus-icons/icons/file-check-corner.js +1 -0
- package/packages/fokus-icons/icons/file-check.js +1 -0
- package/packages/fokus-icons/icons/file-clock.js +1 -0
- package/packages/fokus-icons/icons/file-code-2.js +1 -0
- package/packages/fokus-icons/icons/file-code-corner.js +1 -0
- package/packages/fokus-icons/icons/file-code.js +1 -0
- package/packages/fokus-icons/icons/file-cog-2.js +1 -0
- package/packages/fokus-icons/icons/file-cog.js +1 -0
- package/packages/fokus-icons/icons/file-diff.js +1 -0
- package/packages/fokus-icons/icons/file-digit.js +1 -0
- package/packages/fokus-icons/icons/file-down.js +1 -0
- package/packages/fokus-icons/icons/file-edit.js +1 -0
- package/packages/fokus-icons/icons/file-exclamation-point.js +1 -0
- package/packages/fokus-icons/icons/file-headphone.js +1 -0
- package/packages/fokus-icons/icons/file-heart.js +1 -0
- package/packages/fokus-icons/icons/file-image.js +1 -0
- package/packages/fokus-icons/icons/file-input.js +1 -0
- package/packages/fokus-icons/icons/file-json-2.js +1 -0
- package/packages/fokus-icons/icons/file-json.js +1 -0
- package/packages/fokus-icons/icons/file-key-2.js +1 -0
- package/packages/fokus-icons/icons/file-key.js +1 -0
- package/packages/fokus-icons/icons/file-line-chart.js +1 -0
- package/packages/fokus-icons/icons/file-lock-2.js +1 -0
- package/packages/fokus-icons/icons/file-lock.js +1 -0
- package/packages/fokus-icons/icons/file-minus-2.js +1 -0
- package/packages/fokus-icons/icons/file-minus-corner.js +1 -0
- package/packages/fokus-icons/icons/file-minus.js +1 -0
- package/packages/fokus-icons/icons/file-music.js +1 -0
- package/packages/fokus-icons/icons/file-output.js +1 -0
- package/packages/fokus-icons/icons/file-pen-line.js +1 -0
- package/packages/fokus-icons/icons/file-pen.js +1 -0
- package/packages/fokus-icons/icons/file-pie-chart.js +1 -0
- package/packages/fokus-icons/icons/file-play.js +1 -0
- package/packages/fokus-icons/icons/file-plus-2.js +1 -0
- package/packages/fokus-icons/icons/file-plus-corner.js +1 -0
- package/packages/fokus-icons/icons/file-plus.js +1 -0
- package/packages/fokus-icons/icons/file-question-mark.js +1 -0
- package/packages/fokus-icons/icons/file-question.js +1 -0
- package/packages/fokus-icons/icons/file-scan.js +1 -0
- package/packages/fokus-icons/icons/file-search-2.js +1 -0
- package/packages/fokus-icons/icons/file-search-corner.js +1 -0
- package/packages/fokus-icons/icons/file-search.js +1 -0
- package/packages/fokus-icons/icons/file-signal.js +1 -0
- package/packages/fokus-icons/icons/file-signature.js +1 -0
- package/packages/fokus-icons/icons/file-sliders.js +1 -0
- package/packages/fokus-icons/icons/file-spreadsheet.js +1 -0
- package/packages/fokus-icons/icons/file-stack.js +1 -0
- package/packages/fokus-icons/icons/file-symlink.js +1 -0
- package/packages/fokus-icons/icons/file-terminal.js +1 -0
- package/packages/fokus-icons/icons/file-text.js +1 -0
- package/packages/fokus-icons/icons/file-type-2.js +1 -0
- package/packages/fokus-icons/icons/file-type-corner.js +1 -0
- package/packages/fokus-icons/icons/file-type.js +1 -0
- package/packages/fokus-icons/icons/file-up.js +1 -0
- package/packages/fokus-icons/icons/file-user.js +1 -0
- package/packages/fokus-icons/icons/file-video-2.js +1 -0
- package/packages/fokus-icons/icons/file-video-camera.js +1 -0
- package/packages/fokus-icons/icons/file-video.js +1 -0
- package/packages/fokus-icons/icons/file-volume-2.js +1 -0
- package/packages/fokus-icons/icons/file-volume.js +1 -0
- package/packages/fokus-icons/icons/file-warning.js +1 -0
- package/packages/fokus-icons/icons/file-x-2.js +1 -0
- package/packages/fokus-icons/icons/file-x-corner.js +1 -0
- package/packages/fokus-icons/icons/file-x.js +1 -0
- package/packages/fokus-icons/icons/file.js +1 -0
- package/packages/fokus-icons/icons/files.js +1 -0
- package/packages/fokus-icons/icons/film.js +1 -0
- package/packages/fokus-icons/icons/filter-x.js +1 -0
- package/packages/fokus-icons/icons/filter.js +1 -0
- package/packages/fokus-icons/icons/fingerprint-pattern.js +1 -0
- package/packages/fokus-icons/icons/fingerprint.js +1 -0
- package/packages/fokus-icons/icons/fire-extinguisher.js +1 -0
- package/packages/fokus-icons/icons/fish-off.js +1 -0
- package/packages/fokus-icons/icons/fish-symbol.js +1 -0
- package/packages/fokus-icons/icons/fish.js +1 -0
- package/packages/fokus-icons/icons/fishing-hook.js +1 -0
- package/packages/fokus-icons/icons/fishing-rod.js +1 -0
- package/packages/fokus-icons/icons/flag-off.js +1 -0
- package/packages/fokus-icons/icons/flag-triangle-left.js +1 -0
- package/packages/fokus-icons/icons/flag-triangle-right.js +1 -0
- package/packages/fokus-icons/icons/flag.js +1 -0
- package/packages/fokus-icons/icons/flame-kindling.js +1 -0
- package/packages/fokus-icons/icons/flame.js +1 -0
- package/packages/fokus-icons/icons/flashlight-off.js +1 -0
- package/packages/fokus-icons/icons/flashlight.js +1 -0
- package/packages/fokus-icons/icons/flask-conical-off.js +1 -0
- package/packages/fokus-icons/icons/flask-conical.js +1 -0
- package/packages/fokus-icons/icons/flask-round.js +1 -0
- package/packages/fokus-icons/icons/flip-horizontal-2.js +1 -0
- package/packages/fokus-icons/icons/flip-horizontal.js +1 -0
- package/packages/fokus-icons/icons/flip-vertical-2.js +1 -0
- package/packages/fokus-icons/icons/flip-vertical.js +1 -0
- package/packages/fokus-icons/icons/flower-2.js +1 -0
- package/packages/fokus-icons/icons/flower.js +1 -0
- package/packages/fokus-icons/icons/focus.js +1 -0
- package/packages/fokus-icons/icons/fold-horizontal.js +1 -0
- package/packages/fokus-icons/icons/fold-vertical.js +1 -0
- package/packages/fokus-icons/icons/folder-archive.js +1 -0
- package/packages/fokus-icons/icons/folder-bookmark.js +1 -0
- package/packages/fokus-icons/icons/folder-check.js +1 -0
- package/packages/fokus-icons/icons/folder-clock.js +1 -0
- package/packages/fokus-icons/icons/folder-closed.js +1 -0
- package/packages/fokus-icons/icons/folder-code.js +1 -0
- package/packages/fokus-icons/icons/folder-cog-2.js +1 -0
- package/packages/fokus-icons/icons/folder-cog.js +1 -0
- package/packages/fokus-icons/icons/folder-dot.js +1 -0
- package/packages/fokus-icons/icons/folder-down.js +1 -0
- package/packages/fokus-icons/icons/folder-edit.js +1 -0
- package/packages/fokus-icons/icons/folder-git-2.js +1 -0
- package/packages/fokus-icons/icons/folder-git.js +1 -0
- package/packages/fokus-icons/icons/folder-heart.js +1 -0
- package/packages/fokus-icons/icons/folder-input.js +1 -0
- package/packages/fokus-icons/icons/folder-kanban.js +1 -0
- package/packages/fokus-icons/icons/folder-key.js +1 -0
- package/packages/fokus-icons/icons/folder-lock.js +1 -0
- package/packages/fokus-icons/icons/folder-minus.js +1 -0
- package/packages/fokus-icons/icons/folder-open-dot.js +1 -0
- package/packages/fokus-icons/icons/folder-open.js +1 -0
- package/packages/fokus-icons/icons/folder-output.js +1 -0
- package/packages/fokus-icons/icons/folder-pen.js +1 -0
- package/packages/fokus-icons/icons/folder-plus.js +1 -0
- package/packages/fokus-icons/icons/folder-root.js +1 -0
- package/packages/fokus-icons/icons/folder-search-2.js +1 -0
- package/packages/fokus-icons/icons/folder-search.js +1 -0
- package/packages/fokus-icons/icons/folder-symlink.js +1 -0
- package/packages/fokus-icons/icons/folder-sync.js +1 -0
- package/packages/fokus-icons/icons/folder-tree.js +1 -0
- package/packages/fokus-icons/icons/folder-up.js +1 -0
- package/packages/fokus-icons/icons/folder-x.js +1 -0
- package/packages/fokus-icons/icons/folder.js +1 -0
- package/packages/fokus-icons/icons/folders.js +1 -0
- package/packages/fokus-icons/icons/footprints.js +1 -0
- package/packages/fokus-icons/icons/fork-knife-crossed.js +1 -0
- package/packages/fokus-icons/icons/fork-knife.js +1 -0
- package/packages/fokus-icons/icons/forklift.js +1 -0
- package/packages/fokus-icons/icons/form-input.js +1 -0
- package/packages/fokus-icons/icons/form.js +1 -0
- package/packages/fokus-icons/icons/forward.js +1 -0
- package/packages/fokus-icons/icons/frame.js +1 -0
- package/packages/fokus-icons/icons/frown.js +1 -0
- package/packages/fokus-icons/icons/fuel.js +1 -0
- package/packages/fokus-icons/icons/fullscreen.js +1 -0
- package/packages/fokus-icons/icons/function-square.js +1 -0
- package/packages/fokus-icons/icons/funnel-plus.js +1 -0
- package/packages/fokus-icons/icons/funnel-x.js +1 -0
- package/packages/fokus-icons/icons/funnel.js +1 -0
- package/packages/fokus-icons/icons/gallery-horizontal-end.js +1 -0
- package/packages/fokus-icons/icons/gallery-horizontal.js +1 -0
- package/packages/fokus-icons/icons/gallery-thumbnails.js +1 -0
- package/packages/fokus-icons/icons/gallery-vertical-end.js +1 -0
- package/packages/fokus-icons/icons/gallery-vertical.js +1 -0
- package/packages/fokus-icons/icons/gamepad-2.js +1 -0
- package/packages/fokus-icons/icons/gamepad-directional.js +1 -0
- package/packages/fokus-icons/icons/gamepad.js +1 -0
- package/packages/fokus-icons/icons/gantt-chart-square.js +1 -0
- package/packages/fokus-icons/icons/gantt-chart.js +1 -0
- package/packages/fokus-icons/icons/gauge-circle.js +1 -0
- package/packages/fokus-icons/icons/gauge.js +1 -0
- package/packages/fokus-icons/icons/gavel.js +1 -0
- package/packages/fokus-icons/icons/gem.js +1 -0
- package/packages/fokus-icons/icons/georgian-lari.js +1 -0
- package/packages/fokus-icons/icons/ghost.js +1 -0
- package/packages/fokus-icons/icons/gift.js +1 -0
- package/packages/fokus-icons/icons/git-branch-minus.js +1 -0
- package/packages/fokus-icons/icons/git-branch-plus.js +1 -0
- package/packages/fokus-icons/icons/git-branch.js +1 -0
- package/packages/fokus-icons/icons/git-commit-horizontal.js +1 -0
- package/packages/fokus-icons/icons/git-commit-vertical.js +1 -0
- package/packages/fokus-icons/icons/git-commit.js +1 -0
- package/packages/fokus-icons/icons/git-compare-arrows.js +1 -0
- package/packages/fokus-icons/icons/git-compare.js +1 -0
- package/packages/fokus-icons/icons/git-fork.js +1 -0
- package/packages/fokus-icons/icons/git-graph.js +1 -0
- package/packages/fokus-icons/icons/git-merge-conflict.js +1 -0
- package/packages/fokus-icons/icons/git-merge.js +1 -0
- package/packages/fokus-icons/icons/git-pull-request-arrow.js +1 -0
- package/packages/fokus-icons/icons/git-pull-request-closed.js +1 -0
- package/packages/fokus-icons/icons/git-pull-request-create-arrow.js +1 -0
- package/packages/fokus-icons/icons/git-pull-request-create.js +1 -0
- package/packages/fokus-icons/icons/git-pull-request-draft.js +1 -0
- package/packages/fokus-icons/icons/git-pull-request.js +1 -0
- package/packages/fokus-icons/icons/glass-water.js +1 -0
- package/packages/fokus-icons/icons/glasses.js +1 -0
- package/packages/fokus-icons/icons/globe-2.js +1 -0
- package/packages/fokus-icons/icons/globe-check.js +1 -0
- package/packages/fokus-icons/icons/globe-lock.js +1 -0
- package/packages/fokus-icons/icons/globe-off.js +1 -0
- package/packages/fokus-icons/icons/globe-x.js +1 -0
- package/packages/fokus-icons/icons/globe.js +1 -0
- package/packages/fokus-icons/icons/goal.js +1 -0
- package/packages/fokus-icons/icons/gpu.js +1 -0
- package/packages/fokus-icons/icons/grab.js +1 -0
- package/packages/fokus-icons/icons/graduation-cap.js +1 -0
- package/packages/fokus-icons/icons/grape.js +1 -0
- package/packages/fokus-icons/icons/grid-2-x-2-check.js +1 -0
- package/packages/fokus-icons/icons/grid-2-x-2-plus.js +1 -0
- package/packages/fokus-icons/icons/grid-2-x-2-x.js +1 -0
- package/packages/fokus-icons/icons/grid-2-x-2.js +1 -0
- package/packages/fokus-icons/icons/grid-2x2-check.js +1 -0
- package/packages/fokus-icons/icons/grid-2x2-plus.js +1 -0
- package/packages/fokus-icons/icons/grid-2x2-x.js +1 -0
- package/packages/fokus-icons/icons/grid-2x2.js +1 -0
- package/packages/fokus-icons/icons/grid-3-x-3.js +1 -0
- package/packages/fokus-icons/icons/grid-3x2.js +1 -0
- package/packages/fokus-icons/icons/grid-3x3.js +1 -0
- package/packages/fokus-icons/icons/grid.js +1 -0
- package/packages/fokus-icons/icons/grip-horizontal.js +1 -0
- package/packages/fokus-icons/icons/grip-vertical.js +1 -0
- package/packages/fokus-icons/icons/grip.js +1 -0
- package/packages/fokus-icons/icons/group.js +1 -0
- package/packages/fokus-icons/icons/guitar.js +1 -0
- package/packages/fokus-icons/icons/ham.js +1 -0
- package/packages/fokus-icons/icons/hamburger.js +1 -0
- package/packages/fokus-icons/icons/hammer.js +1 -0
- package/packages/fokus-icons/icons/hand-coins.js +1 -0
- package/packages/fokus-icons/icons/hand-fist.js +1 -0
- package/packages/fokus-icons/icons/hand-grab.js +1 -0
- package/packages/fokus-icons/icons/hand-heart.js +1 -0
- package/packages/fokus-icons/icons/hand-helping.js +1 -0
- package/packages/fokus-icons/icons/hand-metal.js +1 -0
- package/packages/fokus-icons/icons/hand-platter.js +1 -0
- package/packages/fokus-icons/icons/hand.js +1 -0
- package/packages/fokus-icons/icons/handbag.js +1 -0
- package/packages/fokus-icons/icons/handshake.js +1 -0
- package/packages/fokus-icons/icons/hard-drive-download.js +1 -0
- package/packages/fokus-icons/icons/hard-drive-upload.js +1 -0
- package/packages/fokus-icons/icons/hard-drive.js +1 -0
- package/packages/fokus-icons/icons/hard-hat.js +1 -0
- package/packages/fokus-icons/icons/hash.js +1 -0
- package/packages/fokus-icons/icons/hat-glasses.js +1 -0
- package/packages/fokus-icons/icons/haze.js +1 -0
- package/packages/fokus-icons/icons/hd.js +1 -0
- package/packages/fokus-icons/icons/hdmi-port.js +1 -0
- package/packages/fokus-icons/icons/heading-1.js +1 -0
- package/packages/fokus-icons/icons/heading-2.js +1 -0
- package/packages/fokus-icons/icons/heading-3.js +1 -0
- package/packages/fokus-icons/icons/heading-4.js +1 -0
- package/packages/fokus-icons/icons/heading-5.js +1 -0
- package/packages/fokus-icons/icons/heading-6.js +1 -0
- package/packages/fokus-icons/icons/heading.js +1 -0
- package/packages/fokus-icons/icons/headphone-off.js +1 -0
- package/packages/fokus-icons/icons/headphones.js +1 -0
- package/packages/fokus-icons/icons/headset.js +1 -0
- package/packages/fokus-icons/icons/heart-crack.js +1 -0
- package/packages/fokus-icons/icons/heart-handshake.js +1 -0
- package/packages/fokus-icons/icons/heart-minus.js +1 -0
- package/packages/fokus-icons/icons/heart-off.js +1 -0
- package/packages/fokus-icons/icons/heart-plus.js +1 -0
- package/packages/fokus-icons/icons/heart-pulse.js +1 -0
- package/packages/fokus-icons/icons/heart-x.js +1 -0
- package/packages/fokus-icons/icons/heart.js +1 -0
- package/packages/fokus-icons/icons/heater.js +1 -0
- package/packages/fokus-icons/icons/helicopter.js +1 -0
- package/packages/fokus-icons/icons/help-circle.js +1 -0
- package/packages/fokus-icons/icons/helping-hand.js +1 -0
- package/packages/fokus-icons/icons/hexagon.js +1 -0
- package/packages/fokus-icons/icons/highlighter.js +1 -0
- package/packages/fokus-icons/icons/history.js +1 -0
- package/packages/fokus-icons/icons/home.js +1 -0
- package/packages/fokus-icons/icons/hop-off.js +1 -0
- package/packages/fokus-icons/icons/hop.js +1 -0
- package/packages/fokus-icons/icons/hospital.js +1 -0
- package/packages/fokus-icons/icons/hotel.js +1 -0
- package/packages/fokus-icons/icons/hourglass.js +1 -0
- package/packages/fokus-icons/icons/house-heart.js +1 -0
- package/packages/fokus-icons/icons/house-plug.js +1 -0
- package/packages/fokus-icons/icons/house-plus.js +1 -0
- package/packages/fokus-icons/icons/house-wifi.js +1 -0
- package/packages/fokus-icons/icons/house.js +1 -0
- package/packages/fokus-icons/icons/ice-cream-2.js +1 -0
- package/packages/fokus-icons/icons/ice-cream-bowl.js +1 -0
- package/packages/fokus-icons/icons/ice-cream-cone.js +1 -0
- package/packages/fokus-icons/icons/ice-cream.js +1 -0
- package/packages/fokus-icons/icons/id-card-lanyard.js +1 -0
- package/packages/fokus-icons/icons/id-card.js +1 -0
- package/packages/fokus-icons/icons/image-down.js +1 -0
- package/packages/fokus-icons/icons/image-minus.js +1 -0
- package/packages/fokus-icons/icons/image-off.js +1 -0
- package/packages/fokus-icons/icons/image-play.js +1 -0
- package/packages/fokus-icons/icons/image-plus.js +1 -0
- package/packages/fokus-icons/icons/image-up.js +1 -0
- package/packages/fokus-icons/icons/image-upscale.js +1 -0
- package/packages/fokus-icons/icons/image.js +1 -0
- package/packages/fokus-icons/icons/images.js +1 -0
- package/packages/fokus-icons/icons/import.js +1 -0
- package/packages/fokus-icons/icons/inbox.js +1 -0
- package/packages/fokus-icons/icons/indent-decrease.js +1 -0
- package/packages/fokus-icons/icons/indent-increase.js +1 -0
- package/packages/fokus-icons/icons/indent.js +1 -0
- package/packages/fokus-icons/icons/indian-rupee.js +1 -0
- package/packages/fokus-icons/icons/infinity.js +1 -0
- package/packages/fokus-icons/icons/info.js +1 -0
- package/packages/fokus-icons/icons/inspect.js +1 -0
- package/packages/fokus-icons/icons/inspection-panel.js +1 -0
- package/packages/fokus-icons/icons/italic.js +1 -0
- package/packages/fokus-icons/icons/iteration-ccw.js +1 -0
- package/packages/fokus-icons/icons/iteration-cw.js +1 -0
- package/packages/fokus-icons/icons/japanese-yen.js +1 -0
- package/packages/fokus-icons/icons/joystick.js +1 -0
- package/packages/fokus-icons/icons/kanban-square-dashed.js +1 -0
- package/packages/fokus-icons/icons/kanban-square.js +1 -0
- package/packages/fokus-icons/icons/kanban.js +1 -0
- package/packages/fokus-icons/icons/kayak.js +1 -0
- package/packages/fokus-icons/icons/key-round.js +1 -0
- package/packages/fokus-icons/icons/key-square.js +1 -0
- package/packages/fokus-icons/icons/key.js +1 -0
- package/packages/fokus-icons/icons/keyboard-music.js +1 -0
- package/packages/fokus-icons/icons/keyboard-off.js +1 -0
- package/packages/fokus-icons/icons/keyboard.js +1 -0
- package/packages/fokus-icons/icons/lamp-ceiling.js +1 -0
- package/packages/fokus-icons/icons/lamp-desk.js +1 -0
- package/packages/fokus-icons/icons/lamp-floor.js +1 -0
- package/packages/fokus-icons/icons/lamp-wall-down.js +1 -0
- package/packages/fokus-icons/icons/lamp-wall-up.js +1 -0
- package/packages/fokus-icons/icons/lamp.js +1 -0
- package/packages/fokus-icons/icons/land-plot.js +1 -0
- package/packages/fokus-icons/icons/landmark.js +1 -0
- package/packages/fokus-icons/icons/languages.js +1 -0
- package/packages/fokus-icons/icons/laptop-2.js +1 -0
- package/packages/fokus-icons/icons/laptop-minimal-check.js +1 -0
- package/packages/fokus-icons/icons/laptop-minimal.js +1 -0
- package/packages/fokus-icons/icons/laptop.js +1 -0
- package/packages/fokus-icons/icons/lasso-select.js +1 -0
- package/packages/fokus-icons/icons/lasso.js +1 -0
- package/packages/fokus-icons/icons/laugh.js +1 -0
- package/packages/fokus-icons/icons/layers-2.js +1 -0
- package/packages/fokus-icons/icons/layers-3.js +1 -0
- package/packages/fokus-icons/icons/layers-minus.js +1 -0
- package/packages/fokus-icons/icons/layers-plus.js +1 -0
- package/packages/fokus-icons/icons/layers.js +1 -0
- package/packages/fokus-icons/icons/layout-dashboard.js +1 -0
- package/packages/fokus-icons/icons/layout-grid.js +1 -0
- package/packages/fokus-icons/icons/layout-list.js +1 -0
- package/packages/fokus-icons/icons/layout-panel-left.js +1 -0
- package/packages/fokus-icons/icons/layout-panel-top.js +1 -0
- package/packages/fokus-icons/icons/layout-template.js +1 -0
- package/packages/fokus-icons/icons/layout.js +1 -0
- package/packages/fokus-icons/icons/leaf.js +1 -0
- package/packages/fokus-icons/icons/leafy-green.js +1 -0
- package/packages/fokus-icons/icons/lectern.js +1 -0
- package/packages/fokus-icons/icons/lens-concave.js +1 -0
- package/packages/fokus-icons/icons/lens-convex.js +1 -0
- package/packages/fokus-icons/icons/letter-text.js +1 -0
- package/packages/fokus-icons/icons/library-big.js +1 -0
- package/packages/fokus-icons/icons/library-square.js +1 -0
- package/packages/fokus-icons/icons/library.js +1 -0
- package/packages/fokus-icons/icons/life-buoy.js +1 -0
- package/packages/fokus-icons/icons/ligature.js +1 -0
- package/packages/fokus-icons/icons/lightbulb-off.js +1 -0
- package/packages/fokus-icons/icons/lightbulb.js +1 -0
- package/packages/fokus-icons/icons/line-chart.js +1 -0
- package/packages/fokus-icons/icons/line-dot-right-horizontal.js +1 -0
- package/packages/fokus-icons/icons/line-squiggle.js +1 -0
- package/packages/fokus-icons/icons/line-style.js +1 -0
- package/packages/fokus-icons/icons/link-2-off.js +1 -0
- package/packages/fokus-icons/icons/link-2.js +1 -0
- package/packages/fokus-icons/icons/link.js +1 -0
- package/packages/fokus-icons/icons/list-check.js +1 -0
- package/packages/fokus-icons/icons/list-checks.js +1 -0
- package/packages/fokus-icons/icons/list-chevrons-down-up.js +1 -0
- package/packages/fokus-icons/icons/list-chevrons-up-down.js +1 -0
- package/packages/fokus-icons/icons/list-collapse.js +1 -0
- package/packages/fokus-icons/icons/list-end.js +1 -0
- package/packages/fokus-icons/icons/list-filter-plus.js +1 -0
- package/packages/fokus-icons/icons/list-filter.js +1 -0
- package/packages/fokus-icons/icons/list-indent-decrease.js +1 -0
- package/packages/fokus-icons/icons/list-indent-increase.js +1 -0
- package/packages/fokus-icons/icons/list-minus.js +1 -0
- package/packages/fokus-icons/icons/list-music.js +1 -0
- package/packages/fokus-icons/icons/list-ordered.js +1 -0
- package/packages/fokus-icons/icons/list-plus.js +1 -0
- package/packages/fokus-icons/icons/list-restart.js +1 -0
- package/packages/fokus-icons/icons/list-sort-ascending.js +1 -0
- package/packages/fokus-icons/icons/list-sort-descending.js +1 -0
- package/packages/fokus-icons/icons/list-start.js +1 -0
- package/packages/fokus-icons/icons/list-todo.js +1 -0
- package/packages/fokus-icons/icons/list-tree.js +1 -0
- package/packages/fokus-icons/icons/list-video.js +1 -0
- package/packages/fokus-icons/icons/list-x.js +1 -0
- package/packages/fokus-icons/icons/list.js +1 -0
- package/packages/fokus-icons/icons/loader-2.js +1 -0
- package/packages/fokus-icons/icons/loader-circle.js +1 -0
- package/packages/fokus-icons/icons/loader-pinwheel.js +1 -0
- package/packages/fokus-icons/icons/loader.js +1 -0
- package/packages/fokus-icons/icons/locate-fixed.js +1 -0
- package/packages/fokus-icons/icons/locate-off.js +1 -0
- package/packages/fokus-icons/icons/locate.js +1 -0
- package/packages/fokus-icons/icons/location-edit.js +1 -0
- package/packages/fokus-icons/icons/lock-keyhole-open.js +1 -0
- package/packages/fokus-icons/icons/lock-keyhole.js +1 -0
- package/packages/fokus-icons/icons/lock-open.js +1 -0
- package/packages/fokus-icons/icons/lock.js +1 -0
- package/packages/fokus-icons/icons/log-in.js +1 -0
- package/packages/fokus-icons/icons/log-out.js +1 -0
- package/packages/fokus-icons/icons/logs.js +1 -0
- package/packages/fokus-icons/icons/lollipop.js +1 -0
- package/packages/fokus-icons/icons/luggage.js +1 -0
- package/packages/fokus-icons/icons/m-square.js +1 -0
- package/packages/fokus-icons/icons/magnet.js +1 -0
- package/packages/fokus-icons/icons/mail-check.js +1 -0
- package/packages/fokus-icons/icons/mail-minus.js +1 -0
- package/packages/fokus-icons/icons/mail-open.js +1 -0
- package/packages/fokus-icons/icons/mail-plus.js +1 -0
- package/packages/fokus-icons/icons/mail-question-mark.js +1 -0
- package/packages/fokus-icons/icons/mail-question.js +1 -0
- package/packages/fokus-icons/icons/mail-search.js +1 -0
- package/packages/fokus-icons/icons/mail-warning.js +1 -0
- package/packages/fokus-icons/icons/mail-x.js +1 -0
- package/packages/fokus-icons/icons/mail.js +1 -0
- package/packages/fokus-icons/icons/mailbox.js +1 -0
- package/packages/fokus-icons/icons/mails.js +1 -0
- package/packages/fokus-icons/icons/map-minus.js +1 -0
- package/packages/fokus-icons/icons/map-pin-check-inside.js +1 -0
- package/packages/fokus-icons/icons/map-pin-check.js +1 -0
- package/packages/fokus-icons/icons/map-pin-house.js +1 -0
- package/packages/fokus-icons/icons/map-pin-minus-inside.js +1 -0
- package/packages/fokus-icons/icons/map-pin-minus.js +1 -0
- package/packages/fokus-icons/icons/map-pin-off.js +1 -0
- package/packages/fokus-icons/icons/map-pin-pen.js +1 -0
- package/packages/fokus-icons/icons/map-pin-plus-inside.js +1 -0
- package/packages/fokus-icons/icons/map-pin-plus.js +1 -0
- package/packages/fokus-icons/icons/map-pin-search.js +1 -0
- package/packages/fokus-icons/icons/map-pin-x-inside.js +1 -0
- package/packages/fokus-icons/icons/map-pin-x.js +1 -0
- package/packages/fokus-icons/icons/map-pin.js +1 -0
- package/packages/fokus-icons/icons/map-pinned.js +1 -0
- package/packages/fokus-icons/icons/map-plus.js +1 -0
- package/packages/fokus-icons/icons/map.js +1 -0
- package/packages/fokus-icons/icons/mars-stroke.js +1 -0
- package/packages/fokus-icons/icons/mars.js +1 -0
- package/packages/fokus-icons/icons/martini.js +1 -0
- package/packages/fokus-icons/icons/maximize-2.js +1 -0
- package/packages/fokus-icons/icons/maximize.js +1 -0
- package/packages/fokus-icons/icons/medal.js +1 -0
- package/packages/fokus-icons/icons/megaphone-off.js +1 -0
- package/packages/fokus-icons/icons/megaphone.js +1 -0
- package/packages/fokus-icons/icons/meh.js +1 -0
- package/packages/fokus-icons/icons/memory-stick.js +1 -0
- package/packages/fokus-icons/icons/menu-square.js +1 -0
- package/packages/fokus-icons/icons/menu.js +1 -0
- package/packages/fokus-icons/icons/merge.js +1 -0
- package/packages/fokus-icons/icons/message-circle-check.js +1 -0
- package/packages/fokus-icons/icons/message-circle-code.js +1 -0
- package/packages/fokus-icons/icons/message-circle-dashed.js +1 -0
- package/packages/fokus-icons/icons/message-circle-heart.js +1 -0
- package/packages/fokus-icons/icons/message-circle-more.js +1 -0
- package/packages/fokus-icons/icons/message-circle-off.js +1 -0
- package/packages/fokus-icons/icons/message-circle-plus.js +1 -0
- package/packages/fokus-icons/icons/message-circle-question-mark.js +1 -0
- package/packages/fokus-icons/icons/message-circle-question.js +1 -0
- package/packages/fokus-icons/icons/message-circle-reply.js +1 -0
- package/packages/fokus-icons/icons/message-circle-warning.js +1 -0
- package/packages/fokus-icons/icons/message-circle-x.js +1 -0
- package/packages/fokus-icons/icons/message-circle.js +1 -0
- package/packages/fokus-icons/icons/message-square-check.js +1 -0
- package/packages/fokus-icons/icons/message-square-code.js +1 -0
- package/packages/fokus-icons/icons/message-square-dashed.js +1 -0
- package/packages/fokus-icons/icons/message-square-diff.js +1 -0
- package/packages/fokus-icons/icons/message-square-dot.js +1 -0
- package/packages/fokus-icons/icons/message-square-heart.js +1 -0
- package/packages/fokus-icons/icons/message-square-lock.js +1 -0
- package/packages/fokus-icons/icons/message-square-more.js +1 -0
- package/packages/fokus-icons/icons/message-square-off.js +1 -0
- package/packages/fokus-icons/icons/message-square-plus.js +1 -0
- package/packages/fokus-icons/icons/message-square-quote.js +1 -0
- package/packages/fokus-icons/icons/message-square-reply.js +1 -0
- package/packages/fokus-icons/icons/message-square-share.js +1 -0
- package/packages/fokus-icons/icons/message-square-text.js +1 -0
- package/packages/fokus-icons/icons/message-square-warning.js +1 -0
- package/packages/fokus-icons/icons/message-square-x.js +1 -0
- package/packages/fokus-icons/icons/message-square.js +1 -0
- package/packages/fokus-icons/icons/messages-square.js +1 -0
- package/packages/fokus-icons/icons/metronome.js +1 -0
- package/packages/fokus-icons/icons/mic-2.js +1 -0
- package/packages/fokus-icons/icons/mic-off.js +1 -0
- package/packages/fokus-icons/icons/mic-vocal.js +1 -0
- package/packages/fokus-icons/icons/mic.js +1 -0
- package/packages/fokus-icons/icons/microchip.js +1 -0
- package/packages/fokus-icons/icons/microscope.js +1 -0
- package/packages/fokus-icons/icons/microwave.js +1 -0
- package/packages/fokus-icons/icons/milestone.js +1 -0
- package/packages/fokus-icons/icons/milk-off.js +1 -0
- package/packages/fokus-icons/icons/milk.js +1 -0
- package/packages/fokus-icons/icons/minimize-2.js +1 -0
- package/packages/fokus-icons/icons/minimize.js +1 -0
- package/packages/fokus-icons/icons/minus-circle.js +1 -0
- package/packages/fokus-icons/icons/minus-square.js +1 -0
- package/packages/fokus-icons/icons/minus.js +1 -0
- package/packages/fokus-icons/icons/mirror-rectangular.js +1 -0
- package/packages/fokus-icons/icons/mirror-round.js +1 -0
- package/packages/fokus-icons/icons/monitor-check.js +1 -0
- package/packages/fokus-icons/icons/monitor-cloud.js +1 -0
- package/packages/fokus-icons/icons/monitor-cog.js +1 -0
- package/packages/fokus-icons/icons/monitor-dot.js +1 -0
- package/packages/fokus-icons/icons/monitor-down.js +1 -0
- package/packages/fokus-icons/icons/monitor-off.js +1 -0
- package/packages/fokus-icons/icons/monitor-pause.js +1 -0
- package/packages/fokus-icons/icons/monitor-play.js +1 -0
- package/packages/fokus-icons/icons/monitor-smartphone.js +1 -0
- package/packages/fokus-icons/icons/monitor-speaker.js +1 -0
- package/packages/fokus-icons/icons/monitor-stop.js +1 -0
- package/packages/fokus-icons/icons/monitor-up.js +1 -0
- package/packages/fokus-icons/icons/monitor-x.js +1 -0
- package/packages/fokus-icons/icons/monitor.js +1 -0
- package/packages/fokus-icons/icons/moon-star.js +1 -0
- package/packages/fokus-icons/icons/moon.js +1 -0
- package/packages/fokus-icons/icons/more-horizontal.js +1 -0
- package/packages/fokus-icons/icons/more-vertical.js +1 -0
- package/packages/fokus-icons/icons/motorbike.js +1 -0
- package/packages/fokus-icons/icons/mountain-snow.js +1 -0
- package/packages/fokus-icons/icons/mountain.js +1 -0
- package/packages/fokus-icons/icons/mouse-left.js +1 -0
- package/packages/fokus-icons/icons/mouse-off.js +1 -0
- package/packages/fokus-icons/icons/mouse-pointer-2-off.js +1 -0
- package/packages/fokus-icons/icons/mouse-pointer-2.js +1 -0
- package/packages/fokus-icons/icons/mouse-pointer-ban.js +1 -0
- package/packages/fokus-icons/icons/mouse-pointer-click.js +1 -0
- package/packages/fokus-icons/icons/mouse-pointer-square-dashed.js +1 -0
- package/packages/fokus-icons/icons/mouse-pointer.js +1 -0
- package/packages/fokus-icons/icons/mouse-right.js +1 -0
- package/packages/fokus-icons/icons/mouse.js +1 -0
- package/packages/fokus-icons/icons/move-3-d.js +1 -0
- package/packages/fokus-icons/icons/move-3d.js +1 -0
- package/packages/fokus-icons/icons/move-diagonal-2.js +1 -0
- package/packages/fokus-icons/icons/move-diagonal.js +1 -0
- package/packages/fokus-icons/icons/move-down-left.js +1 -0
- package/packages/fokus-icons/icons/move-down-right.js +1 -0
- package/packages/fokus-icons/icons/move-down.js +1 -0
- package/packages/fokus-icons/icons/move-horizontal.js +1 -0
- package/packages/fokus-icons/icons/move-left.js +1 -0
- package/packages/fokus-icons/icons/move-right.js +1 -0
- package/packages/fokus-icons/icons/move-up-left.js +1 -0
- package/packages/fokus-icons/icons/move-up-right.js +1 -0
- package/packages/fokus-icons/icons/move-up.js +1 -0
- package/packages/fokus-icons/icons/move-vertical.js +1 -0
- package/packages/fokus-icons/icons/move.js +1 -0
- package/packages/fokus-icons/icons/music-2.js +1 -0
- package/packages/fokus-icons/icons/music-3.js +1 -0
- package/packages/fokus-icons/icons/music-4.js +1 -0
- package/packages/fokus-icons/icons/music.js +1 -0
- package/packages/fokus-icons/icons/navigation-2-off.js +1 -0
- package/packages/fokus-icons/icons/navigation-2.js +1 -0
- package/packages/fokus-icons/icons/navigation-off.js +1 -0
- package/packages/fokus-icons/icons/navigation.js +1 -0
- package/packages/fokus-icons/icons/network.js +1 -0
- package/packages/fokus-icons/icons/newspaper.js +1 -0
- package/packages/fokus-icons/icons/nfc.js +1 -0
- package/packages/fokus-icons/icons/non-binary.js +1 -0
- package/packages/fokus-icons/icons/notebook-pen.js +1 -0
- package/packages/fokus-icons/icons/notebook-tabs.js +1 -0
- package/packages/fokus-icons/icons/notebook-text.js +1 -0
- package/packages/fokus-icons/icons/notebook.js +1 -0
- package/packages/fokus-icons/icons/notepad-text-dashed.js +1 -0
- package/packages/fokus-icons/icons/notepad-text.js +1 -0
- package/packages/fokus-icons/icons/nut-off.js +1 -0
- package/packages/fokus-icons/icons/nut.js +1 -0
- package/packages/fokus-icons/icons/octagon-alert.js +1 -0
- package/packages/fokus-icons/icons/octagon-minus.js +1 -0
- package/packages/fokus-icons/icons/octagon-pause.js +1 -0
- package/packages/fokus-icons/icons/octagon-x.js +1 -0
- package/packages/fokus-icons/icons/octagon.js +1 -0
- package/packages/fokus-icons/icons/omega.js +1 -0
- package/packages/fokus-icons/icons/option.js +1 -0
- package/packages/fokus-icons/icons/orbit.js +1 -0
- package/packages/fokus-icons/icons/origami.js +1 -0
- package/packages/fokus-icons/icons/outdent.js +1 -0
- package/packages/fokus-icons/icons/package-2.js +1 -0
- package/packages/fokus-icons/icons/package-check.js +1 -0
- package/packages/fokus-icons/icons/package-minus.js +1 -0
- package/packages/fokus-icons/icons/package-open.js +1 -0
- package/packages/fokus-icons/icons/package-plus.js +1 -0
- package/packages/fokus-icons/icons/package-search.js +1 -0
- package/packages/fokus-icons/icons/package-x.js +1 -0
- package/packages/fokus-icons/icons/package.js +1 -0
- package/packages/fokus-icons/icons/paint-bucket.js +1 -0
- package/packages/fokus-icons/icons/paint-roller.js +1 -0
- package/packages/fokus-icons/icons/paintbrush-2.js +1 -0
- package/packages/fokus-icons/icons/paintbrush-vertical.js +1 -0
- package/packages/fokus-icons/icons/paintbrush.js +1 -0
- package/packages/fokus-icons/icons/palette.js +1 -0
- package/packages/fokus-icons/icons/palmtree.js +1 -0
- package/packages/fokus-icons/icons/panda.js +1 -0
- package/packages/fokus-icons/icons/panel-bottom-close.js +1 -0
- package/packages/fokus-icons/icons/panel-bottom-dashed.js +1 -0
- package/packages/fokus-icons/icons/panel-bottom-inactive.js +1 -0
- package/packages/fokus-icons/icons/panel-bottom-open.js +1 -0
- package/packages/fokus-icons/icons/panel-bottom.js +1 -0
- package/packages/fokus-icons/icons/panel-left-close.js +1 -0
- package/packages/fokus-icons/icons/panel-left-dashed.js +1 -0
- package/packages/fokus-icons/icons/panel-left-inactive.js +1 -0
- package/packages/fokus-icons/icons/panel-left-open.js +1 -0
- package/packages/fokus-icons/icons/panel-left-right-dashed.js +1 -0
- package/packages/fokus-icons/icons/panel-left.js +1 -0
- package/packages/fokus-icons/icons/panel-right-close.js +1 -0
- package/packages/fokus-icons/icons/panel-right-dashed.js +1 -0
- package/packages/fokus-icons/icons/panel-right-inactive.js +1 -0
- package/packages/fokus-icons/icons/panel-right-open.js +1 -0
- package/packages/fokus-icons/icons/panel-right.js +1 -0
- package/packages/fokus-icons/icons/panel-top-bottom-dashed.js +1 -0
- package/packages/fokus-icons/icons/panel-top-close.js +1 -0
- package/packages/fokus-icons/icons/panel-top-dashed.js +1 -0
- package/packages/fokus-icons/icons/panel-top-inactive.js +1 -0
- package/packages/fokus-icons/icons/panel-top-open.js +1 -0
- package/packages/fokus-icons/icons/panel-top.js +1 -0
- package/packages/fokus-icons/icons/panels-left-bottom.js +1 -0
- package/packages/fokus-icons/icons/panels-left-right.js +1 -0
- package/packages/fokus-icons/icons/panels-right-bottom.js +1 -0
- package/packages/fokus-icons/icons/panels-top-bottom.js +1 -0
- package/packages/fokus-icons/icons/panels-top-left.js +1 -0
- package/packages/fokus-icons/icons/paper-bag.js +1 -0
- package/packages/fokus-icons/icons/paperclip.js +1 -0
- package/packages/fokus-icons/icons/parasol.js +1 -0
- package/packages/fokus-icons/icons/parentheses.js +1 -0
- package/packages/fokus-icons/icons/parking-circle-off.js +1 -0
- package/packages/fokus-icons/icons/parking-circle.js +1 -0
- package/packages/fokus-icons/icons/parking-meter.js +1 -0
- package/packages/fokus-icons/icons/parking-square-off.js +1 -0
- package/packages/fokus-icons/icons/parking-square.js +1 -0
- package/packages/fokus-icons/icons/party-popper.js +1 -0
- package/packages/fokus-icons/icons/pause-circle.js +1 -0
- package/packages/fokus-icons/icons/pause-octagon.js +1 -0
- package/packages/fokus-icons/icons/pause.js +1 -0
- package/packages/fokus-icons/icons/paw-print.js +1 -0
- package/packages/fokus-icons/icons/pc-case.js +1 -0
- package/packages/fokus-icons/icons/pen-box.js +1 -0
- package/packages/fokus-icons/icons/pen-line.js +1 -0
- package/packages/fokus-icons/icons/pen-off.js +1 -0
- package/packages/fokus-icons/icons/pen-square.js +1 -0
- package/packages/fokus-icons/icons/pen-tool.js +1 -0
- package/packages/fokus-icons/icons/pen.js +1 -0
- package/packages/fokus-icons/icons/pencil-line.js +1 -0
- package/packages/fokus-icons/icons/pencil-off.js +1 -0
- package/packages/fokus-icons/icons/pencil-ruler.js +1 -0
- package/packages/fokus-icons/icons/pencil-sparkles.js +1 -0
- package/packages/fokus-icons/icons/pencil.js +1 -0
- package/packages/fokus-icons/icons/pentagon.js +1 -0
- package/packages/fokus-icons/icons/percent-circle.js +1 -0
- package/packages/fokus-icons/icons/percent-diamond.js +1 -0
- package/packages/fokus-icons/icons/percent-square.js +1 -0
- package/packages/fokus-icons/icons/percent.js +1 -0
- package/packages/fokus-icons/icons/person-standing.js +1 -0
- package/packages/fokus-icons/icons/phi.js +1 -0
- package/packages/fokus-icons/icons/philippine-peso.js +1 -0
- package/packages/fokus-icons/icons/phone-call.js +1 -0
- package/packages/fokus-icons/icons/phone-forwarded.js +1 -0
- package/packages/fokus-icons/icons/phone-incoming.js +1 -0
- package/packages/fokus-icons/icons/phone-missed.js +1 -0
- package/packages/fokus-icons/icons/phone-off.js +1 -0
- package/packages/fokus-icons/icons/phone-outgoing.js +1 -0
- package/packages/fokus-icons/icons/phone.js +1 -0
- package/packages/fokus-icons/icons/pi-square.js +1 -0
- package/packages/fokus-icons/icons/pi.js +1 -0
- package/packages/fokus-icons/icons/piano.js +1 -0
- package/packages/fokus-icons/icons/pickaxe.js +1 -0
- package/packages/fokus-icons/icons/picture-in-picture-2.js +1 -0
- package/packages/fokus-icons/icons/picture-in-picture.js +1 -0
- package/packages/fokus-icons/icons/pie-chart.js +1 -0
- package/packages/fokus-icons/icons/piggy-bank.js +1 -0
- package/packages/fokus-icons/icons/pilcrow-left.js +1 -0
- package/packages/fokus-icons/icons/pilcrow-right.js +1 -0
- package/packages/fokus-icons/icons/pilcrow-square.js +1 -0
- package/packages/fokus-icons/icons/pilcrow.js +1 -0
- package/packages/fokus-icons/icons/pill-bottle.js +1 -0
- package/packages/fokus-icons/icons/pill.js +1 -0
- package/packages/fokus-icons/icons/pin-off.js +1 -0
- package/packages/fokus-icons/icons/pin.js +1 -0
- package/packages/fokus-icons/icons/pipette.js +1 -0
- package/packages/fokus-icons/icons/pizza.js +1 -0
- package/packages/fokus-icons/icons/plane-landing.js +1 -0
- package/packages/fokus-icons/icons/plane-takeoff.js +1 -0
- package/packages/fokus-icons/icons/plane.js +1 -0
- package/packages/fokus-icons/icons/play-circle.js +1 -0
- package/packages/fokus-icons/icons/play-off.js +1 -0
- package/packages/fokus-icons/icons/play-square.js +1 -0
- package/packages/fokus-icons/icons/play.js +1 -0
- package/packages/fokus-icons/icons/plug-2.js +1 -0
- package/packages/fokus-icons/icons/plug-zap-2.js +1 -0
- package/packages/fokus-icons/icons/plug-zap.js +1 -0
- package/packages/fokus-icons/icons/plug.js +1 -0
- package/packages/fokus-icons/icons/plus-circle.js +1 -0
- package/packages/fokus-icons/icons/plus-square.js +1 -0
- package/packages/fokus-icons/icons/plus.js +1 -0
- package/packages/fokus-icons/icons/pocket-knife.js +1 -0
- package/packages/fokus-icons/icons/podcast.js +1 -0
- package/packages/fokus-icons/icons/podium.js +1 -0
- package/packages/fokus-icons/icons/pointer-off.js +1 -0
- package/packages/fokus-icons/icons/pointer.js +1 -0
- package/packages/fokus-icons/icons/popcorn.js +1 -0
- package/packages/fokus-icons/icons/popsicle.js +1 -0
- package/packages/fokus-icons/icons/pound-sterling.js +1 -0
- package/packages/fokus-icons/icons/power-circle.js +1 -0
- package/packages/fokus-icons/icons/power-off.js +1 -0
- package/packages/fokus-icons/icons/power-square.js +1 -0
- package/packages/fokus-icons/icons/power.js +1 -0
- package/packages/fokus-icons/icons/presentation.js +1 -0
- package/packages/fokus-icons/icons/printer-check.js +1 -0
- package/packages/fokus-icons/icons/printer-x.js +1 -0
- package/packages/fokus-icons/icons/printer.js +1 -0
- package/packages/fokus-icons/icons/projector.js +1 -0
- package/packages/fokus-icons/icons/proportions.js +1 -0
- package/packages/fokus-icons/icons/puzzle.js +1 -0
- package/packages/fokus-icons/icons/pyramid.js +1 -0
- package/packages/fokus-icons/icons/qr-code.js +1 -0
- package/packages/fokus-icons/icons/quote.js +1 -0
- package/packages/fokus-icons/icons/rabbit.js +1 -0
- package/packages/fokus-icons/icons/radar.js +1 -0
- package/packages/fokus-icons/icons/radiation.js +1 -0
- package/packages/fokus-icons/icons/radical.js +1 -0
- package/packages/fokus-icons/icons/radio-off.js +1 -0
- package/packages/fokus-icons/icons/radio-receiver.js +1 -0
- package/packages/fokus-icons/icons/radio-tower.js +1 -0
- package/packages/fokus-icons/icons/radio.js +1 -0
- package/packages/fokus-icons/icons/radius.js +1 -0
- package/packages/fokus-icons/icons/rainbow.js +1 -0
- package/packages/fokus-icons/icons/rat.js +1 -0
- package/packages/fokus-icons/icons/ratio.js +1 -0
- package/packages/fokus-icons/icons/receipt-cent.js +1 -0
- package/packages/fokus-icons/icons/receipt-euro.js +1 -0
- package/packages/fokus-icons/icons/receipt-indian-rupee.js +1 -0
- package/packages/fokus-icons/icons/receipt-japanese-yen.js +1 -0
- package/packages/fokus-icons/icons/receipt-pound-sterling.js +1 -0
- package/packages/fokus-icons/icons/receipt-russian-ruble.js +1 -0
- package/packages/fokus-icons/icons/receipt-swiss-franc.js +1 -0
- package/packages/fokus-icons/icons/receipt-text.js +1 -0
- package/packages/fokus-icons/icons/receipt-turkish-lira.js +1 -0
- package/packages/fokus-icons/icons/receipt.js +1 -0
- package/packages/fokus-icons/icons/rectangle-circle.js +1 -0
- package/packages/fokus-icons/icons/rectangle-ellipsis.js +1 -0
- package/packages/fokus-icons/icons/rectangle-goggles.js +1 -0
- package/packages/fokus-icons/icons/rectangle-horizontal.js +1 -0
- package/packages/fokus-icons/icons/rectangle-vertical.js +1 -0
- package/packages/fokus-icons/icons/recycle.js +1 -0
- package/packages/fokus-icons/icons/redo-2.js +1 -0
- package/packages/fokus-icons/icons/redo-dot.js +1 -0
- package/packages/fokus-icons/icons/redo.js +1 -0
- package/packages/fokus-icons/icons/refresh-ccw-dot.js +1 -0
- package/packages/fokus-icons/icons/refresh-ccw.js +1 -0
- package/packages/fokus-icons/icons/refresh-cw-off.js +1 -0
- package/packages/fokus-icons/icons/refresh-cw.js +1 -0
- package/packages/fokus-icons/icons/refrigerator.js +1 -0
- package/packages/fokus-icons/icons/regex.js +1 -0
- package/packages/fokus-icons/icons/remove-formatting.js +1 -0
- package/packages/fokus-icons/icons/repeat-1.js +1 -0
- package/packages/fokus-icons/icons/repeat-2.js +1 -0
- package/packages/fokus-icons/icons/repeat-off.js +1 -0
- package/packages/fokus-icons/icons/repeat.js +1 -0
- package/packages/fokus-icons/icons/replace-all.js +1 -0
- package/packages/fokus-icons/icons/replace.js +1 -0
- package/packages/fokus-icons/icons/reply-all.js +1 -0
- package/packages/fokus-icons/icons/reply.js +1 -0
- package/packages/fokus-icons/icons/rewind.js +1 -0
- package/packages/fokus-icons/icons/ribbon.js +1 -0
- package/packages/fokus-icons/icons/road.js +1 -0
- package/packages/fokus-icons/icons/rocket.js +1 -0
- package/packages/fokus-icons/icons/rocking-chair.js +1 -0
- package/packages/fokus-icons/icons/roller-coaster.js +1 -0
- package/packages/fokus-icons/icons/rose.js +1 -0
- package/packages/fokus-icons/icons/rotate-3-d.js +1 -0
- package/packages/fokus-icons/icons/rotate-3d.js +1 -0
- package/packages/fokus-icons/icons/rotate-ccw-key.js +1 -0
- package/packages/fokus-icons/icons/rotate-ccw-square.js +1 -0
- package/packages/fokus-icons/icons/rotate-ccw.js +1 -0
- package/packages/fokus-icons/icons/rotate-cw-square.js +1 -0
- package/packages/fokus-icons/icons/rotate-cw.js +1 -0
- package/packages/fokus-icons/icons/route-off.js +1 -0
- package/packages/fokus-icons/icons/route.js +1 -0
- package/packages/fokus-icons/icons/router.js +1 -0
- package/packages/fokus-icons/icons/rows-2.js +1 -0
- package/packages/fokus-icons/icons/rows-3.js +1 -0
- package/packages/fokus-icons/icons/rows-4.js +1 -0
- package/packages/fokus-icons/icons/rows.js +1 -0
- package/packages/fokus-icons/icons/rss.js +1 -0
- package/packages/fokus-icons/icons/ruler-dimension-line.js +1 -0
- package/packages/fokus-icons/icons/ruler.js +1 -0
- package/packages/fokus-icons/icons/russian-ruble.js +1 -0
- package/packages/fokus-icons/icons/sailboat.js +1 -0
- package/packages/fokus-icons/icons/salad.js +1 -0
- package/packages/fokus-icons/icons/sandwich.js +1 -0
- package/packages/fokus-icons/icons/satellite-dish.js +1 -0
- package/packages/fokus-icons/icons/satellite.js +1 -0
- package/packages/fokus-icons/icons/saudi-riyal.js +1 -0
- package/packages/fokus-icons/icons/save-all.js +1 -0
- package/packages/fokus-icons/icons/save-check.js +1 -0
- package/packages/fokus-icons/icons/save-off.js +1 -0
- package/packages/fokus-icons/icons/save-pen.js +1 -0
- package/packages/fokus-icons/icons/save-plus.js +1 -0
- package/packages/fokus-icons/icons/save.js +1 -0
- package/packages/fokus-icons/icons/scale-3-d.js +1 -0
- package/packages/fokus-icons/icons/scale-3d.js +1 -0
- package/packages/fokus-icons/icons/scale.js +1 -0
- package/packages/fokus-icons/icons/scaling.js +1 -0
- package/packages/fokus-icons/icons/scan-barcode.js +1 -0
- package/packages/fokus-icons/icons/scan-eye.js +1 -0
- package/packages/fokus-icons/icons/scan-face.js +1 -0
- package/packages/fokus-icons/icons/scan-heart.js +1 -0
- package/packages/fokus-icons/icons/scan-line.js +1 -0
- package/packages/fokus-icons/icons/scan-qr-code.js +1 -0
- package/packages/fokus-icons/icons/scan-search.js +1 -0
- package/packages/fokus-icons/icons/scan-text.js +1 -0
- package/packages/fokus-icons/icons/scan.js +1 -0
- package/packages/fokus-icons/icons/scatter-chart.js +1 -0
- package/packages/fokus-icons/icons/school-2.js +1 -0
- package/packages/fokus-icons/icons/school.js +1 -0
- package/packages/fokus-icons/icons/scissors-line-dashed.js +1 -0
- package/packages/fokus-icons/icons/scissors-square-dashed-bottom.js +1 -0
- package/packages/fokus-icons/icons/scissors-square.js +1 -0
- package/packages/fokus-icons/icons/scissors.js +1 -0
- package/packages/fokus-icons/icons/scooter.js +1 -0
- package/packages/fokus-icons/icons/screen-share-off.js +1 -0
- package/packages/fokus-icons/icons/screen-share.js +1 -0
- package/packages/fokus-icons/icons/scroll-text.js +1 -0
- package/packages/fokus-icons/icons/scroll.js +1 -0
- package/packages/fokus-icons/icons/search-alert.js +1 -0
- package/packages/fokus-icons/icons/search-check.js +1 -0
- package/packages/fokus-icons/icons/search-code.js +1 -0
- package/packages/fokus-icons/icons/search-slash.js +1 -0
- package/packages/fokus-icons/icons/search-x.js +1 -0
- package/packages/fokus-icons/icons/search.js +1 -0
- package/packages/fokus-icons/icons/section.js +1 -0
- package/packages/fokus-icons/icons/send-horizonal.js +1 -0
- package/packages/fokus-icons/icons/send-horizontal.js +1 -0
- package/packages/fokus-icons/icons/send-to-back.js +1 -0
- package/packages/fokus-icons/icons/send.js +1 -0
- package/packages/fokus-icons/icons/separator-horizontal.js +1 -0
- package/packages/fokus-icons/icons/separator-vertical.js +1 -0
- package/packages/fokus-icons/icons/server-cog.js +1 -0
- package/packages/fokus-icons/icons/server-crash.js +1 -0
- package/packages/fokus-icons/icons/server-off.js +1 -0
- package/packages/fokus-icons/icons/server.js +1 -0
- package/packages/fokus-icons/icons/settings-2.js +1 -0
- package/packages/fokus-icons/icons/settings.js +1 -0
- package/packages/fokus-icons/icons/shapes.js +1 -0
- package/packages/fokus-icons/icons/share-2.js +1 -0
- package/packages/fokus-icons/icons/share.js +1 -0
- package/packages/fokus-icons/icons/sheet.js +1 -0
- package/packages/fokus-icons/icons/shell.js +1 -0
- package/packages/fokus-icons/icons/shelving-unit.js +1 -0
- package/packages/fokus-icons/icons/shield-alert.js +1 -0
- package/packages/fokus-icons/icons/shield-ban.js +1 -0
- package/packages/fokus-icons/icons/shield-check.js +1 -0
- package/packages/fokus-icons/icons/shield-close.js +1 -0
- package/packages/fokus-icons/icons/shield-cog-corner.js +1 -0
- package/packages/fokus-icons/icons/shield-cog.js +1 -0
- package/packages/fokus-icons/icons/shield-ellipsis.js +1 -0
- package/packages/fokus-icons/icons/shield-half.js +1 -0
- package/packages/fokus-icons/icons/shield-minus.js +1 -0
- package/packages/fokus-icons/icons/shield-off.js +1 -0
- package/packages/fokus-icons/icons/shield-plus.js +1 -0
- package/packages/fokus-icons/icons/shield-question-mark.js +1 -0
- package/packages/fokus-icons/icons/shield-question.js +1 -0
- package/packages/fokus-icons/icons/shield-user.js +1 -0
- package/packages/fokus-icons/icons/shield-x.js +1 -0
- package/packages/fokus-icons/icons/shield.js +1 -0
- package/packages/fokus-icons/icons/ship-wheel.js +1 -0
- package/packages/fokus-icons/icons/ship.js +1 -0
- package/packages/fokus-icons/icons/shirt.js +1 -0
- package/packages/fokus-icons/icons/shopping-bag.js +1 -0
- package/packages/fokus-icons/icons/shopping-basket.js +1 -0
- package/packages/fokus-icons/icons/shopping-cart.js +1 -0
- package/packages/fokus-icons/icons/shovel.js +1 -0
- package/packages/fokus-icons/icons/shower-head.js +1 -0
- package/packages/fokus-icons/icons/shredder.js +1 -0
- package/packages/fokus-icons/icons/shrimp.js +1 -0
- package/packages/fokus-icons/icons/shrink.js +1 -0
- package/packages/fokus-icons/icons/shrub.js +1 -0
- package/packages/fokus-icons/icons/shuffle.js +1 -0
- package/packages/fokus-icons/icons/sidebar-close.js +1 -0
- package/packages/fokus-icons/icons/sidebar-open.js +1 -0
- package/packages/fokus-icons/icons/sidebar.js +1 -0
- package/packages/fokus-icons/icons/sigma-square.js +1 -0
- package/packages/fokus-icons/icons/sigma.js +1 -0
- package/packages/fokus-icons/icons/signal-high.js +1 -0
- package/packages/fokus-icons/icons/signal-low.js +1 -0
- package/packages/fokus-icons/icons/signal-medium.js +1 -0
- package/packages/fokus-icons/icons/signal-zero.js +1 -0
- package/packages/fokus-icons/icons/signal.js +1 -0
- package/packages/fokus-icons/icons/signature.js +1 -0
- package/packages/fokus-icons/icons/signpost-big.js +1 -0
- package/packages/fokus-icons/icons/signpost.js +1 -0
- package/packages/fokus-icons/icons/siren.js +1 -0
- package/packages/fokus-icons/icons/skip-back.js +1 -0
- package/packages/fokus-icons/icons/skip-forward.js +1 -0
- package/packages/fokus-icons/icons/skull.js +1 -0
- package/packages/fokus-icons/icons/slash-square.js +1 -0
- package/packages/fokus-icons/icons/slash.js +1 -0
- package/packages/fokus-icons/icons/slice.js +1 -0
- package/packages/fokus-icons/icons/sliders-horizontal.js +1 -0
- package/packages/fokus-icons/icons/sliders-vertical.js +1 -0
- package/packages/fokus-icons/icons/sliders.js +1 -0
- package/packages/fokus-icons/icons/smartphone-charging.js +1 -0
- package/packages/fokus-icons/icons/smartphone-nfc.js +1 -0
- package/packages/fokus-icons/icons/smartphone.js +1 -0
- package/packages/fokus-icons/icons/smile-plus.js +1 -0
- package/packages/fokus-icons/icons/smile.js +1 -0
- package/packages/fokus-icons/icons/snail.js +1 -0
- package/packages/fokus-icons/icons/snowflake.js +1 -0
- package/packages/fokus-icons/icons/soap-dispenser-droplet.js +1 -0
- package/packages/fokus-icons/icons/sofa.js +1 -0
- package/packages/fokus-icons/icons/solar-panel.js +1 -0
- package/packages/fokus-icons/icons/sort-asc.js +1 -0
- package/packages/fokus-icons/icons/sort-desc.js +1 -0
- package/packages/fokus-icons/icons/soup.js +1 -0
- package/packages/fokus-icons/icons/space.js +1 -0
- package/packages/fokus-icons/icons/spade.js +1 -0
- package/packages/fokus-icons/icons/sparkle.js +1 -0
- package/packages/fokus-icons/icons/sparkles.js +1 -0
- package/packages/fokus-icons/icons/speaker.js +1 -0
- package/packages/fokus-icons/icons/speech.js +1 -0
- package/packages/fokus-icons/icons/spell-check-2.js +1 -0
- package/packages/fokus-icons/icons/spell-check.js +1 -0
- package/packages/fokus-icons/icons/spline-pointer.js +1 -0
- package/packages/fokus-icons/icons/spline.js +1 -0
- package/packages/fokus-icons/icons/split-square-horizontal.js +1 -0
- package/packages/fokus-icons/icons/split-square-vertical.js +1 -0
- package/packages/fokus-icons/icons/split.js +1 -0
- package/packages/fokus-icons/icons/spool.js +1 -0
- package/packages/fokus-icons/icons/sport-shoe.js +1 -0
- package/packages/fokus-icons/icons/spotlight.js +1 -0
- package/packages/fokus-icons/icons/spray-can.js +1 -0
- package/packages/fokus-icons/icons/sprout.js +1 -0
- package/packages/fokus-icons/icons/square-activity.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-down-left.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-down-right.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-down.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-left.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-out-down-left.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-out-down-right.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-out-up-left.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-out-up-right.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-right-enter.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-right-exit.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-right.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-up-left.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-up-right.js +1 -0
- package/packages/fokus-icons/icons/square-arrow-up.js +1 -0
- package/packages/fokus-icons/icons/square-asterisk.js +1 -0
- package/packages/fokus-icons/icons/square-bottom-dashed-scissors.js +1 -0
- package/packages/fokus-icons/icons/square-centerline-dashed-horizontal.js +1 -0
- package/packages/fokus-icons/icons/square-centerline-dashed-vertical.js +1 -0
- package/packages/fokus-icons/icons/square-chart-gantt.js +1 -0
- package/packages/fokus-icons/icons/square-check-big.js +1 -0
- package/packages/fokus-icons/icons/square-check.js +1 -0
- package/packages/fokus-icons/icons/square-chevron-down.js +1 -0
- package/packages/fokus-icons/icons/square-chevron-left.js +1 -0
- package/packages/fokus-icons/icons/square-chevron-right.js +1 -0
- package/packages/fokus-icons/icons/square-chevron-up.js +1 -0
- package/packages/fokus-icons/icons/square-code.js +1 -0
- package/packages/fokus-icons/icons/square-dashed-bottom-code.js +1 -0
- package/packages/fokus-icons/icons/square-dashed-bottom.js +1 -0
- package/packages/fokus-icons/icons/square-dashed-kanban.js +1 -0
- package/packages/fokus-icons/icons/square-dashed-mouse-pointer.js +1 -0
- package/packages/fokus-icons/icons/square-dashed-text.js +1 -0
- package/packages/fokus-icons/icons/square-dashed-top-solid.js +1 -0
- package/packages/fokus-icons/icons/square-dashed.js +1 -0
- package/packages/fokus-icons/icons/square-divide.js +1 -0
- package/packages/fokus-icons/icons/square-dot.js +1 -0
- package/packages/fokus-icons/icons/square-equal.js +1 -0
- package/packages/fokus-icons/icons/square-function.js +1 -0
- package/packages/fokus-icons/icons/square-gantt-chart.js +1 -0
- package/packages/fokus-icons/icons/square-kanban.js +1 -0
- package/packages/fokus-icons/icons/square-library.js +1 -0
- package/packages/fokus-icons/icons/square-m.js +1 -0
- package/packages/fokus-icons/icons/square-menu.js +1 -0
- package/packages/fokus-icons/icons/square-minus.js +1 -0
- package/packages/fokus-icons/icons/square-mouse-pointer.js +1 -0
- package/packages/fokus-icons/icons/square-parking-off.js +1 -0
- package/packages/fokus-icons/icons/square-parking.js +1 -0
- package/packages/fokus-icons/icons/square-pause.js +1 -0
- package/packages/fokus-icons/icons/square-pen.js +1 -0
- package/packages/fokus-icons/icons/square-percent.js +1 -0
- package/packages/fokus-icons/icons/square-pi.js +1 -0
- package/packages/fokus-icons/icons/square-pilcrow.js +1 -0
- package/packages/fokus-icons/icons/square-play.js +1 -0
- package/packages/fokus-icons/icons/square-plus.js +1 -0
- package/packages/fokus-icons/icons/square-power.js +1 -0
- package/packages/fokus-icons/icons/square-radical.js +1 -0
- package/packages/fokus-icons/icons/square-round-corner.js +1 -0
- package/packages/fokus-icons/icons/square-scissors.js +1 -0
- package/packages/fokus-icons/icons/square-sigma.js +1 -0
- package/packages/fokus-icons/icons/square-slash.js +1 -0
- package/packages/fokus-icons/icons/square-split-horizontal.js +1 -0
- package/packages/fokus-icons/icons/square-split-vertical.js +1 -0
- package/packages/fokus-icons/icons/square-square.js +1 -0
- package/packages/fokus-icons/icons/square-stack.js +1 -0
- package/packages/fokus-icons/icons/square-star.js +1 -0
- package/packages/fokus-icons/icons/square-stop.js +1 -0
- package/packages/fokus-icons/icons/square-terminal.js +1 -0
- package/packages/fokus-icons/icons/square-user-round.js +1 -0
- package/packages/fokus-icons/icons/square-user.js +1 -0
- package/packages/fokus-icons/icons/square-x.js +1 -0
- package/packages/fokus-icons/icons/square.js +1 -0
- package/packages/fokus-icons/icons/squares-exclude.js +1 -0
- package/packages/fokus-icons/icons/squares-intersect.js +1 -0
- package/packages/fokus-icons/icons/squares-subtract.js +1 -0
- package/packages/fokus-icons/icons/squares-unite.js +1 -0
- package/packages/fokus-icons/icons/squircle-dashed.js +1 -0
- package/packages/fokus-icons/icons/squircle.js +1 -0
- package/packages/fokus-icons/icons/squirrel.js +1 -0
- package/packages/fokus-icons/icons/stamp.js +1 -0
- package/packages/fokus-icons/icons/star-check.js +1 -0
- package/packages/fokus-icons/icons/star-half.js +1 -0
- package/packages/fokus-icons/icons/star-minus.js +1 -0
- package/packages/fokus-icons/icons/star-off.js +1 -0
- package/packages/fokus-icons/icons/star-plus.js +1 -0
- package/packages/fokus-icons/icons/star-x.js +1 -0
- package/packages/fokus-icons/icons/star.js +1 -0
- package/packages/fokus-icons/icons/stars.js +1 -0
- package/packages/fokus-icons/icons/step-back.js +1 -0
- package/packages/fokus-icons/icons/step-forward.js +1 -0
- package/packages/fokus-icons/icons/stethoscope.js +1 -0
- package/packages/fokus-icons/icons/sticker.js +1 -0
- package/packages/fokus-icons/icons/sticky-note-check.js +1 -0
- package/packages/fokus-icons/icons/sticky-note-minus.js +1 -0
- package/packages/fokus-icons/icons/sticky-note-off.js +1 -0
- package/packages/fokus-icons/icons/sticky-note-plus.js +1 -0
- package/packages/fokus-icons/icons/sticky-note-x.js +1 -0
- package/packages/fokus-icons/icons/sticky-note.js +1 -0
- package/packages/fokus-icons/icons/sticky-notes.js +1 -0
- package/packages/fokus-icons/icons/stone.js +1 -0
- package/packages/fokus-icons/icons/stop-circle.js +1 -0
- package/packages/fokus-icons/icons/store.js +1 -0
- package/packages/fokus-icons/icons/stretch-horizontal.js +1 -0
- package/packages/fokus-icons/icons/stretch-vertical.js +1 -0
- package/packages/fokus-icons/icons/strikethrough.js +1 -0
- package/packages/fokus-icons/icons/subscript.js +1 -0
- package/packages/fokus-icons/icons/subtitles.js +1 -0
- package/packages/fokus-icons/icons/summary.js +1 -0
- package/packages/fokus-icons/icons/sun-dim.js +1 -0
- package/packages/fokus-icons/icons/sun-medium.js +1 -0
- package/packages/fokus-icons/icons/sun-moon.js +1 -0
- package/packages/fokus-icons/icons/sun-snow.js +1 -0
- package/packages/fokus-icons/icons/sun.js +1 -0
- package/packages/fokus-icons/icons/sunrise.js +1 -0
- package/packages/fokus-icons/icons/sunset.js +1 -0
- package/packages/fokus-icons/icons/superscript.js +1 -0
- package/packages/fokus-icons/icons/swatch-book.js +1 -0
- package/packages/fokus-icons/icons/swiss-franc.js +1 -0
- package/packages/fokus-icons/icons/switch-camera.js +1 -0
- package/packages/fokus-icons/icons/sword.js +1 -0
- package/packages/fokus-icons/icons/swords.js +1 -0
- package/packages/fokus-icons/icons/syringe.js +1 -0
- package/packages/fokus-icons/icons/table-2.js +1 -0
- package/packages/fokus-icons/icons/table-cells-merge.js +1 -0
- package/packages/fokus-icons/icons/table-cells-split.js +1 -0
- package/packages/fokus-icons/icons/table-columns-split.js +1 -0
- package/packages/fokus-icons/icons/table-config.js +1 -0
- package/packages/fokus-icons/icons/table-of-contents.js +1 -0
- package/packages/fokus-icons/icons/table-properties.js +1 -0
- package/packages/fokus-icons/icons/table-rows-split.js +1 -0
- package/packages/fokus-icons/icons/table.js +1 -0
- package/packages/fokus-icons/icons/tablet-smartphone.js +1 -0
- package/packages/fokus-icons/icons/tablet.js +1 -0
- package/packages/fokus-icons/icons/tablets.js +1 -0
- package/packages/fokus-icons/icons/tag-plus.js +1 -0
- package/packages/fokus-icons/icons/tag-x.js +1 -0
- package/packages/fokus-icons/icons/tag.js +1 -0
- package/packages/fokus-icons/icons/tags.js +1 -0
- package/packages/fokus-icons/icons/tally-1.js +1 -0
- package/packages/fokus-icons/icons/tally-2.js +1 -0
- package/packages/fokus-icons/icons/tally-3.js +1 -0
- package/packages/fokus-icons/icons/tally-4.js +1 -0
- package/packages/fokus-icons/icons/tally-5.js +1 -0
- package/packages/fokus-icons/icons/tangent.js +1 -0
- package/packages/fokus-icons/icons/target.js +1 -0
- package/packages/fokus-icons/icons/telescope.js +1 -0
- package/packages/fokus-icons/icons/tent-tree.js +1 -0
- package/packages/fokus-icons/icons/tent.js +1 -0
- package/packages/fokus-icons/icons/terminal-square.js +1 -0
- package/packages/fokus-icons/icons/terminal.js +1 -0
- package/packages/fokus-icons/icons/test-tube-2.js +1 -0
- package/packages/fokus-icons/icons/test-tube-diagonal.js +1 -0
- package/packages/fokus-icons/icons/test-tube.js +1 -0
- package/packages/fokus-icons/icons/test-tubes.js +1 -0
- package/packages/fokus-icons/icons/text-align-center.js +1 -0
- package/packages/fokus-icons/icons/text-align-end.js +1 -0
- package/packages/fokus-icons/icons/text-align-justify.js +1 -0
- package/packages/fokus-icons/icons/text-align-start.js +1 -0
- package/packages/fokus-icons/icons/text-cursor-input.js +1 -0
- package/packages/fokus-icons/icons/text-cursor.js +1 -0
- package/packages/fokus-icons/icons/text-initial.js +1 -0
- package/packages/fokus-icons/icons/text-quote.js +1 -0
- package/packages/fokus-icons/icons/text-search.js +1 -0
- package/packages/fokus-icons/icons/text-select.js +1 -0
- package/packages/fokus-icons/icons/text-selection.js +1 -0
- package/packages/fokus-icons/icons/text-wrap.js +1 -0
- package/packages/fokus-icons/icons/text.js +1 -0
- package/packages/fokus-icons/icons/theater.js +1 -0
- package/packages/fokus-icons/icons/thermometer-snowflake.js +1 -0
- package/packages/fokus-icons/icons/thermometer-sun.js +1 -0
- package/packages/fokus-icons/icons/thermometer.js +1 -0
- package/packages/fokus-icons/icons/thumbs-down.js +1 -0
- package/packages/fokus-icons/icons/thumbs-up.js +1 -0
- package/packages/fokus-icons/icons/ticket-check.js +1 -0
- package/packages/fokus-icons/icons/ticket-minus.js +1 -0
- package/packages/fokus-icons/icons/ticket-percent.js +1 -0
- package/packages/fokus-icons/icons/ticket-plus.js +1 -0
- package/packages/fokus-icons/icons/ticket-slash.js +1 -0
- package/packages/fokus-icons/icons/ticket-x.js +1 -0
- package/packages/fokus-icons/icons/ticket.js +1 -0
- package/packages/fokus-icons/icons/tickets-plane.js +1 -0
- package/packages/fokus-icons/icons/tickets.js +1 -0
- package/packages/fokus-icons/icons/timeline.js +1 -0
- package/packages/fokus-icons/icons/timer-off.js +1 -0
- package/packages/fokus-icons/icons/timer-reset.js +1 -0
- package/packages/fokus-icons/icons/timer.js +1 -0
- package/packages/fokus-icons/icons/toggle-left.js +1 -0
- package/packages/fokus-icons/icons/toggle-right.js +1 -0
- package/packages/fokus-icons/icons/toilet.js +1 -0
- package/packages/fokus-icons/icons/tool-case.js +1 -0
- package/packages/fokus-icons/icons/toolbox.js +1 -0
- package/packages/fokus-icons/icons/tornado.js +1 -0
- package/packages/fokus-icons/icons/torus.js +1 -0
- package/packages/fokus-icons/icons/touchpad-off.js +1 -0
- package/packages/fokus-icons/icons/touchpad.js +1 -0
- package/packages/fokus-icons/icons/towel-rack.js +1 -0
- package/packages/fokus-icons/icons/tower-control.js +1 -0
- package/packages/fokus-icons/icons/toy-brick.js +1 -0
- package/packages/fokus-icons/icons/tractor.js +1 -0
- package/packages/fokus-icons/icons/traffic-cone.js +1 -0
- package/packages/fokus-icons/icons/train-front-tunnel.js +1 -0
- package/packages/fokus-icons/icons/train-front.js +1 -0
- package/packages/fokus-icons/icons/train-track.js +1 -0
- package/packages/fokus-icons/icons/train.js +1 -0
- package/packages/fokus-icons/icons/tram-front.js +1 -0
- package/packages/fokus-icons/icons/transgender.js +1 -0
- package/packages/fokus-icons/icons/trash-2.js +1 -0
- package/packages/fokus-icons/icons/trash.js +1 -0
- package/packages/fokus-icons/icons/tree-deciduous.js +1 -0
- package/packages/fokus-icons/icons/tree-palm.js +1 -0
- package/packages/fokus-icons/icons/tree-pine.js +1 -0
- package/packages/fokus-icons/icons/trees.js +1 -0
- package/packages/fokus-icons/icons/trending-down.js +1 -0
- package/packages/fokus-icons/icons/trending-up-down.js +1 -0
- package/packages/fokus-icons/icons/trending-up.js +1 -0
- package/packages/fokus-icons/icons/triangle-alert.js +1 -0
- package/packages/fokus-icons/icons/triangle-dashed.js +1 -0
- package/packages/fokus-icons/icons/triangle-right.js +1 -0
- package/packages/fokus-icons/icons/triangle.js +1 -0
- package/packages/fokus-icons/icons/trophy.js +1 -0
- package/packages/fokus-icons/icons/truck-electric.js +1 -0
- package/packages/fokus-icons/icons/truck.js +1 -0
- package/packages/fokus-icons/icons/turkish-lira.js +1 -0
- package/packages/fokus-icons/icons/turntable.js +1 -0
- package/packages/fokus-icons/icons/turtle.js +1 -0
- package/packages/fokus-icons/icons/tv-2.js +1 -0
- package/packages/fokus-icons/icons/tv-minimal-play.js +1 -0
- package/packages/fokus-icons/icons/tv-minimal.js +1 -0
- package/packages/fokus-icons/icons/tv.js +1 -0
- package/packages/fokus-icons/icons/type-outline.js +1 -0
- package/packages/fokus-icons/icons/type.js +1 -0
- package/packages/fokus-icons/icons/umbrella-off.js +1 -0
- package/packages/fokus-icons/icons/umbrella.js +1 -0
- package/packages/fokus-icons/icons/underline.js +1 -0
- package/packages/fokus-icons/icons/undo-2.js +1 -0
- package/packages/fokus-icons/icons/undo-dot.js +1 -0
- package/packages/fokus-icons/icons/undo.js +1 -0
- package/packages/fokus-icons/icons/unfold-horizontal.js +1 -0
- package/packages/fokus-icons/icons/unfold-vertical.js +1 -0
- package/packages/fokus-icons/icons/ungroup.js +1 -0
- package/packages/fokus-icons/icons/university.js +1 -0
- package/packages/fokus-icons/icons/unlink-2.js +1 -0
- package/packages/fokus-icons/icons/unlink.js +1 -0
- package/packages/fokus-icons/icons/unlock-keyhole.js +1 -0
- package/packages/fokus-icons/icons/unlock.js +1 -0
- package/packages/fokus-icons/icons/unplug.js +1 -0
- package/packages/fokus-icons/icons/upload-cloud.js +1 -0
- package/packages/fokus-icons/icons/upload.js +1 -0
- package/packages/fokus-icons/icons/usb.js +1 -0
- package/packages/fokus-icons/icons/user-2.js +1 -0
- package/packages/fokus-icons/icons/user-check-2.js +1 -0
- package/packages/fokus-icons/icons/user-check.js +1 -0
- package/packages/fokus-icons/icons/user-circle-2.js +1 -0
- package/packages/fokus-icons/icons/user-circle.js +1 -0
- package/packages/fokus-icons/icons/user-cog-2.js +1 -0
- package/packages/fokus-icons/icons/user-cog.js +1 -0
- package/packages/fokus-icons/icons/user-key.js +1 -0
- package/packages/fokus-icons/icons/user-lock.js +1 -0
- package/packages/fokus-icons/icons/user-minus-2.js +1 -0
- package/packages/fokus-icons/icons/user-minus.js +1 -0
- package/packages/fokus-icons/icons/user-pen.js +1 -0
- package/packages/fokus-icons/icons/user-plus-2.js +1 -0
- package/packages/fokus-icons/icons/user-plus.js +1 -0
- package/packages/fokus-icons/icons/user-round-arrow-left.js +1 -0
- package/packages/fokus-icons/icons/user-round-check.js +1 -0
- package/packages/fokus-icons/icons/user-round-cog.js +1 -0
- package/packages/fokus-icons/icons/user-round-key.js +1 -0
- package/packages/fokus-icons/icons/user-round-minus.js +1 -0
- package/packages/fokus-icons/icons/user-round-pen.js +1 -0
- package/packages/fokus-icons/icons/user-round-plus.js +1 -0
- package/packages/fokus-icons/icons/user-round-search.js +1 -0
- package/packages/fokus-icons/icons/user-round-x.js +1 -0
- package/packages/fokus-icons/icons/user-round.js +1 -0
- package/packages/fokus-icons/icons/user-search.js +1 -0
- package/packages/fokus-icons/icons/user-square-2.js +1 -0
- package/packages/fokus-icons/icons/user-square.js +1 -0
- package/packages/fokus-icons/icons/user-star.js +1 -0
- package/packages/fokus-icons/icons/user-x-2.js +1 -0
- package/packages/fokus-icons/icons/user-x.js +1 -0
- package/packages/fokus-icons/icons/user.js +1 -0
- package/packages/fokus-icons/icons/users-2.js +1 -0
- package/packages/fokus-icons/icons/users-round.js +1 -0
- package/packages/fokus-icons/icons/users.js +1 -0
- package/packages/fokus-icons/icons/utensils-crossed.js +1 -0
- package/packages/fokus-icons/icons/utensils.js +1 -0
- package/packages/fokus-icons/icons/utility-pole.js +1 -0
- package/packages/fokus-icons/icons/van.js +1 -0
- package/packages/fokus-icons/icons/variable.js +1 -0
- package/packages/fokus-icons/icons/vault.js +1 -0
- package/packages/fokus-icons/icons/vector-square.js +1 -0
- package/packages/fokus-icons/icons/vegan.js +1 -0
- package/packages/fokus-icons/icons/venetian-mask.js +1 -0
- package/packages/fokus-icons/icons/venus-and-mars.js +1 -0
- package/packages/fokus-icons/icons/venus.js +1 -0
- package/packages/fokus-icons/icons/verified.js +1 -0
- package/packages/fokus-icons/icons/vibrate-off.js +1 -0
- package/packages/fokus-icons/icons/vibrate.js +1 -0
- package/packages/fokus-icons/icons/video-off.js +1 -0
- package/packages/fokus-icons/icons/video.js +1 -0
- package/packages/fokus-icons/icons/videotape.js +1 -0
- package/packages/fokus-icons/icons/view.js +1 -0
- package/packages/fokus-icons/icons/voicemail.js +1 -0
- package/packages/fokus-icons/icons/volleyball.js +1 -0
- package/packages/fokus-icons/icons/volume-1.js +1 -0
- package/packages/fokus-icons/icons/volume-2.js +1 -0
- package/packages/fokus-icons/icons/volume-off.js +1 -0
- package/packages/fokus-icons/icons/volume-x.js +1 -0
- package/packages/fokus-icons/icons/volume.js +1 -0
- package/packages/fokus-icons/icons/vote.js +1 -0
- package/packages/fokus-icons/icons/wallet-2.js +1 -0
- package/packages/fokus-icons/icons/wallet-cards.js +1 -0
- package/packages/fokus-icons/icons/wallet-minimal.js +1 -0
- package/packages/fokus-icons/icons/wallet.js +1 -0
- package/packages/fokus-icons/icons/wallpaper.js +1 -0
- package/packages/fokus-icons/icons/wand-2.js +1 -0
- package/packages/fokus-icons/icons/wand-sparkles.js +1 -0
- package/packages/fokus-icons/icons/wand.js +1 -0
- package/packages/fokus-icons/icons/warehouse.js +1 -0
- package/packages/fokus-icons/icons/washing-machine.js +1 -0
- package/packages/fokus-icons/icons/watch.js +1 -0
- package/packages/fokus-icons/icons/waves-arrow-down.js +1 -0
- package/packages/fokus-icons/icons/waves-arrow-up.js +1 -0
- package/packages/fokus-icons/icons/waves-horizontal.js +1 -0
- package/packages/fokus-icons/icons/waves-ladder.js +1 -0
- package/packages/fokus-icons/icons/waves-vertical.js +1 -0
- package/packages/fokus-icons/icons/waves.js +1 -0
- package/packages/fokus-icons/icons/waypoints.js +1 -0
- package/packages/fokus-icons/icons/webcam-off.js +1 -0
- package/packages/fokus-icons/icons/webcam.js +1 -0
- package/packages/fokus-icons/icons/webhook-off.js +1 -0
- package/packages/fokus-icons/icons/webhook.js +1 -0
- package/packages/fokus-icons/icons/weight-tilde.js +1 -0
- package/packages/fokus-icons/icons/weight.js +1 -0
- package/packages/fokus-icons/icons/wheat-off.js +1 -0
- package/packages/fokus-icons/icons/wheat.js +1 -0
- package/packages/fokus-icons/icons/whole-word.js +1 -0
- package/packages/fokus-icons/icons/wifi-cog.js +1 -0
- package/packages/fokus-icons/icons/wifi-high.js +1 -0
- package/packages/fokus-icons/icons/wifi-low.js +1 -0
- package/packages/fokus-icons/icons/wifi-off.js +1 -0
- package/packages/fokus-icons/icons/wifi-pen.js +1 -0
- package/packages/fokus-icons/icons/wifi-sync.js +1 -0
- package/packages/fokus-icons/icons/wifi-zero.js +1 -0
- package/packages/fokus-icons/icons/wifi.js +1 -0
- package/packages/fokus-icons/icons/wind-arrow-down.js +1 -0
- package/packages/fokus-icons/icons/wind.js +1 -0
- package/packages/fokus-icons/icons/wine-off.js +1 -0
- package/packages/fokus-icons/icons/wine.js +1 -0
- package/packages/fokus-icons/icons/workflow.js +1 -0
- package/packages/fokus-icons/icons/worm.js +1 -0
- package/packages/fokus-icons/icons/wrap-text.js +1 -0
- package/packages/fokus-icons/icons/wrench-off.js +1 -0
- package/packages/fokus-icons/icons/wrench.js +1 -0
- package/packages/fokus-icons/icons/x-circle.js +1 -0
- package/packages/fokus-icons/icons/x-line-top.js +1 -0
- package/packages/fokus-icons/icons/x-octagon.js +1 -0
- package/packages/fokus-icons/icons/x-square.js +1 -0
- package/packages/fokus-icons/icons/x.js +1 -0
- package/packages/fokus-icons/icons/zap-off.js +1 -0
- package/packages/fokus-icons/icons/zap.js +1 -0
- package/packages/fokus-icons/icons/zodiac-aquarius.js +1 -0
- package/packages/fokus-icons/icons/zodiac-aries.js +1 -0
- package/packages/fokus-icons/icons/zodiac-cancer.js +1 -0
- package/packages/fokus-icons/icons/zodiac-capricorn.js +1 -0
- package/packages/fokus-icons/icons/zodiac-gemini.js +1 -0
- package/packages/fokus-icons/icons/zodiac-leo.js +1 -0
- package/packages/fokus-icons/icons/zodiac-libra.js +1 -0
- package/packages/fokus-icons/icons/zodiac-ophiuchus.js +1 -0
- package/packages/fokus-icons/icons/zodiac-pisces.js +1 -0
- package/packages/fokus-icons/icons/zodiac-sagittarius.js +1 -0
- package/packages/fokus-icons/icons/zodiac-scorpio.js +1 -0
- package/packages/fokus-icons/icons/zodiac-taurus.js +1 -0
- package/packages/fokus-icons/icons/zodiac-virgo.js +1 -0
- package/packages/fokus-icons/icons/zoom-in.js +1 -0
- package/packages/fokus-icons/icons/zoom-out.js +1 -0
- package/packages/fokus-icons/index.js +1990 -0
- package/packages/fokus-icons/package.json +46 -0
- package/packages/fokus-icons/svg/a-arrow-down.svg +1 -0
- package/packages/fokus-icons/svg/a-arrow-up.svg +1 -0
- package/packages/fokus-icons/svg/a-large-small.svg +1 -0
- package/packages/fokus-icons/svg/accessibility.svg +1 -0
- package/packages/fokus-icons/svg/activity-square.svg +1 -0
- package/packages/fokus-icons/svg/activity.svg +1 -0
- package/packages/fokus-icons/svg/ad.svg +1 -0
- package/packages/fokus-icons/svg/air-vent.svg +1 -0
- package/packages/fokus-icons/svg/airplay.svg +1 -0
- package/packages/fokus-icons/svg/alarm-check.svg +1 -0
- package/packages/fokus-icons/svg/alarm-clock-check.svg +1 -0
- package/packages/fokus-icons/svg/alarm-clock-minus.svg +1 -0
- package/packages/fokus-icons/svg/alarm-clock-off.svg +1 -0
- package/packages/fokus-icons/svg/alarm-clock-plus.svg +1 -0
- package/packages/fokus-icons/svg/alarm-clock.svg +1 -0
- package/packages/fokus-icons/svg/alarm-minus.svg +1 -0
- package/packages/fokus-icons/svg/alarm-plus.svg +1 -0
- package/packages/fokus-icons/svg/alarm-smoke.svg +1 -0
- package/packages/fokus-icons/svg/album.svg +1 -0
- package/packages/fokus-icons/svg/alert-circle.svg +1 -0
- package/packages/fokus-icons/svg/alert-octagon.svg +1 -0
- package/packages/fokus-icons/svg/alert-triangle.svg +1 -0
- package/packages/fokus-icons/svg/align-center-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/align-center-vertical.svg +1 -0
- package/packages/fokus-icons/svg/align-center.svg +1 -0
- package/packages/fokus-icons/svg/align-end-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/align-end-vertical.svg +1 -0
- package/packages/fokus-icons/svg/align-horizontal-distribute-center.svg +1 -0
- package/packages/fokus-icons/svg/align-horizontal-distribute-end.svg +1 -0
- package/packages/fokus-icons/svg/align-horizontal-distribute-start.svg +1 -0
- package/packages/fokus-icons/svg/align-horizontal-justify-center.svg +1 -0
- package/packages/fokus-icons/svg/align-horizontal-justify-end.svg +1 -0
- package/packages/fokus-icons/svg/align-horizontal-justify-start.svg +1 -0
- package/packages/fokus-icons/svg/align-horizontal-space-around.svg +1 -0
- package/packages/fokus-icons/svg/align-horizontal-space-between.svg +1 -0
- package/packages/fokus-icons/svg/align-justify.svg +1 -0
- package/packages/fokus-icons/svg/align-left.svg +1 -0
- package/packages/fokus-icons/svg/align-right.svg +1 -0
- package/packages/fokus-icons/svg/align-start-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/align-start-vertical.svg +1 -0
- package/packages/fokus-icons/svg/align-vertical-distribute-center.svg +1 -0
- package/packages/fokus-icons/svg/align-vertical-distribute-end.svg +1 -0
- package/packages/fokus-icons/svg/align-vertical-distribute-start.svg +1 -0
- package/packages/fokus-icons/svg/align-vertical-justify-center.svg +1 -0
- package/packages/fokus-icons/svg/align-vertical-justify-end.svg +1 -0
- package/packages/fokus-icons/svg/align-vertical-justify-start.svg +1 -0
- package/packages/fokus-icons/svg/align-vertical-space-around.svg +1 -0
- package/packages/fokus-icons/svg/align-vertical-space-between.svg +1 -0
- package/packages/fokus-icons/svg/ambulance.svg +1 -0
- package/packages/fokus-icons/svg/ampersand.svg +1 -0
- package/packages/fokus-icons/svg/ampersands.svg +1 -0
- package/packages/fokus-icons/svg/amphora.svg +1 -0
- package/packages/fokus-icons/svg/anchor.svg +1 -0
- package/packages/fokus-icons/svg/angry.svg +1 -0
- package/packages/fokus-icons/svg/annoyed.svg +1 -0
- package/packages/fokus-icons/svg/antenna.svg +1 -0
- package/packages/fokus-icons/svg/anvil.svg +1 -0
- package/packages/fokus-icons/svg/aperture.svg +1 -0
- package/packages/fokus-icons/svg/app-window-mac.svg +1 -0
- package/packages/fokus-icons/svg/app-window.svg +1 -0
- package/packages/fokus-icons/svg/apple.svg +1 -0
- package/packages/fokus-icons/svg/archive-restore.svg +1 -0
- package/packages/fokus-icons/svg/archive-x.svg +1 -0
- package/packages/fokus-icons/svg/archive.svg +1 -0
- package/packages/fokus-icons/svg/area-chart.svg +1 -0
- package/packages/fokus-icons/svg/armchair.svg +1 -0
- package/packages/fokus-icons/svg/arrow-big-down-dash.svg +1 -0
- package/packages/fokus-icons/svg/arrow-big-down.svg +1 -0
- package/packages/fokus-icons/svg/arrow-big-left-dash.svg +1 -0
- package/packages/fokus-icons/svg/arrow-big-left.svg +1 -0
- package/packages/fokus-icons/svg/arrow-big-right-dash.svg +1 -0
- package/packages/fokus-icons/svg/arrow-big-right.svg +1 -0
- package/packages/fokus-icons/svg/arrow-big-up-dash.svg +1 -0
- package/packages/fokus-icons/svg/arrow-big-up.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-0-1.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-01.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-1-0.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-10.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-a-z.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-az.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-circle.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-from-line.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-left-from-circle.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-left-from-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-left-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-left.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-narrow-wide.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-right-from-circle.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-right-from-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-right-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-right.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-to-dot.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-to-line.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-up.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-wide-narrow.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-z-a.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down-za.svg +1 -0
- package/packages/fokus-icons/svg/arrow-down.svg +1 -0
- package/packages/fokus-icons/svg/arrow-left-circle.svg +1 -0
- package/packages/fokus-icons/svg/arrow-left-from-line.svg +1 -0
- package/packages/fokus-icons/svg/arrow-left-right.svg +1 -0
- package/packages/fokus-icons/svg/arrow-left-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-left-to-line.svg +1 -0
- package/packages/fokus-icons/svg/arrow-left.svg +1 -0
- package/packages/fokus-icons/svg/arrow-right-circle.svg +1 -0
- package/packages/fokus-icons/svg/arrow-right-from-line.svg +1 -0
- package/packages/fokus-icons/svg/arrow-right-left.svg +1 -0
- package/packages/fokus-icons/svg/arrow-right-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-right-to-line.svg +1 -0
- package/packages/fokus-icons/svg/arrow-right.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-0-1.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-01.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-1-0.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-10.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-a-z.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-az.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-circle.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-down.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-from-dot.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-from-line.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-left-from-circle.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-left-from-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-left-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-left.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-narrow-wide.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-right-from-circle.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-right-from-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-right-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-right.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-square.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-to-line.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-wide-narrow.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-z-a.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up-za.svg +1 -0
- package/packages/fokus-icons/svg/arrow-up.svg +1 -0
- package/packages/fokus-icons/svg/arrows-up-from-line.svg +1 -0
- package/packages/fokus-icons/svg/asterisk-square.svg +1 -0
- package/packages/fokus-icons/svg/asterisk.svg +1 -0
- package/packages/fokus-icons/svg/astroid.svg +1 -0
- package/packages/fokus-icons/svg/at-sign.svg +1 -0
- package/packages/fokus-icons/svg/atom.svg +1 -0
- package/packages/fokus-icons/svg/audio-lines.svg +1 -0
- package/packages/fokus-icons/svg/audio-waveform.svg +1 -0
- package/packages/fokus-icons/svg/award.svg +1 -0
- package/packages/fokus-icons/svg/axe.svg +1 -0
- package/packages/fokus-icons/svg/axis-3-d.svg +1 -0
- package/packages/fokus-icons/svg/axis-3d.svg +1 -0
- package/packages/fokus-icons/svg/baby.svg +1 -0
- package/packages/fokus-icons/svg/backpack.svg +1 -0
- package/packages/fokus-icons/svg/badge-alert.svg +1 -0
- package/packages/fokus-icons/svg/badge-cent.svg +1 -0
- package/packages/fokus-icons/svg/badge-check.svg +1 -0
- package/packages/fokus-icons/svg/badge-dollar-sign.svg +1 -0
- package/packages/fokus-icons/svg/badge-euro.svg +1 -0
- package/packages/fokus-icons/svg/badge-help.svg +1 -0
- package/packages/fokus-icons/svg/badge-indian-rupee.svg +1 -0
- package/packages/fokus-icons/svg/badge-info.svg +1 -0
- package/packages/fokus-icons/svg/badge-japanese-yen.svg +1 -0
- package/packages/fokus-icons/svg/badge-minus.svg +1 -0
- package/packages/fokus-icons/svg/badge-percent.svg +1 -0
- package/packages/fokus-icons/svg/badge-plus.svg +1 -0
- package/packages/fokus-icons/svg/badge-pound-sterling.svg +1 -0
- package/packages/fokus-icons/svg/badge-question-mark.svg +1 -0
- package/packages/fokus-icons/svg/badge-russian-ruble.svg +1 -0
- package/packages/fokus-icons/svg/badge-swiss-franc.svg +1 -0
- package/packages/fokus-icons/svg/badge-turkish-lira.svg +1 -0
- package/packages/fokus-icons/svg/badge-x.svg +1 -0
- package/packages/fokus-icons/svg/badge.svg +1 -0
- package/packages/fokus-icons/svg/baggage-claim.svg +1 -0
- package/packages/fokus-icons/svg/balloon.svg +1 -0
- package/packages/fokus-icons/svg/ban.svg +1 -0
- package/packages/fokus-icons/svg/banana.svg +1 -0
- package/packages/fokus-icons/svg/bandage.svg +1 -0
- package/packages/fokus-icons/svg/banknote-arrow-down.svg +1 -0
- package/packages/fokus-icons/svg/banknote-arrow-up.svg +1 -0
- package/packages/fokus-icons/svg/banknote-check.svg +1 -0
- package/packages/fokus-icons/svg/banknote-x.svg +1 -0
- package/packages/fokus-icons/svg/banknote.svg +1 -0
- package/packages/fokus-icons/svg/bar-chart-2.svg +1 -0
- package/packages/fokus-icons/svg/bar-chart-3.svg +1 -0
- package/packages/fokus-icons/svg/bar-chart-4.svg +1 -0
- package/packages/fokus-icons/svg/bar-chart-big.svg +1 -0
- package/packages/fokus-icons/svg/bar-chart-horizontal-big.svg +1 -0
- package/packages/fokus-icons/svg/bar-chart-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/bar-chart.svg +1 -0
- package/packages/fokus-icons/svg/barcode.svg +1 -0
- package/packages/fokus-icons/svg/barrel.svg +1 -0
- package/packages/fokus-icons/svg/baseline.svg +1 -0
- package/packages/fokus-icons/svg/bath.svg +1 -0
- package/packages/fokus-icons/svg/battery-charging.svg +1 -0
- package/packages/fokus-icons/svg/battery-full.svg +1 -0
- package/packages/fokus-icons/svg/battery-low.svg +1 -0
- package/packages/fokus-icons/svg/battery-medium.svg +1 -0
- package/packages/fokus-icons/svg/battery-plus.svg +1 -0
- package/packages/fokus-icons/svg/battery-warning.svg +1 -0
- package/packages/fokus-icons/svg/battery.svg +1 -0
- package/packages/fokus-icons/svg/beaker.svg +1 -0
- package/packages/fokus-icons/svg/bean-off.svg +1 -0
- package/packages/fokus-icons/svg/bean.svg +1 -0
- package/packages/fokus-icons/svg/bed-double.svg +1 -0
- package/packages/fokus-icons/svg/bed-single.svg +1 -0
- package/packages/fokus-icons/svg/bed.svg +1 -0
- package/packages/fokus-icons/svg/beef-off.svg +1 -0
- package/packages/fokus-icons/svg/beef.svg +1 -0
- package/packages/fokus-icons/svg/beer-off.svg +1 -0
- package/packages/fokus-icons/svg/beer.svg +1 -0
- package/packages/fokus-icons/svg/bell-check.svg +1 -0
- package/packages/fokus-icons/svg/bell-dot.svg +1 -0
- package/packages/fokus-icons/svg/bell-electric.svg +1 -0
- package/packages/fokus-icons/svg/bell-minus.svg +1 -0
- package/packages/fokus-icons/svg/bell-off.svg +1 -0
- package/packages/fokus-icons/svg/bell-plus.svg +1 -0
- package/packages/fokus-icons/svg/bell-ring.svg +1 -0
- package/packages/fokus-icons/svg/bell.svg +1 -0
- package/packages/fokus-icons/svg/between-horizonal-end.svg +1 -0
- package/packages/fokus-icons/svg/between-horizonal-start.svg +1 -0
- package/packages/fokus-icons/svg/between-horizontal-end.svg +1 -0
- package/packages/fokus-icons/svg/between-horizontal-start.svg +1 -0
- package/packages/fokus-icons/svg/between-vertical-end.svg +1 -0
- package/packages/fokus-icons/svg/between-vertical-start.svg +1 -0
- package/packages/fokus-icons/svg/biceps-flexed.svg +1 -0
- package/packages/fokus-icons/svg/bike.svg +1 -0
- package/packages/fokus-icons/svg/binary.svg +1 -0
- package/packages/fokus-icons/svg/binoculars.svg +1 -0
- package/packages/fokus-icons/svg/biohazard.svg +1 -0
- package/packages/fokus-icons/svg/bird.svg +1 -0
- package/packages/fokus-icons/svg/birdhouse.svg +1 -0
- package/packages/fokus-icons/svg/bitcoin.svg +1 -0
- package/packages/fokus-icons/svg/blend.svg +1 -0
- package/packages/fokus-icons/svg/blender.svg +1 -0
- package/packages/fokus-icons/svg/blinds.svg +1 -0
- package/packages/fokus-icons/svg/blocks.svg +1 -0
- package/packages/fokus-icons/svg/bluetooth-connected.svg +1 -0
- package/packages/fokus-icons/svg/bluetooth-off.svg +1 -0
- package/packages/fokus-icons/svg/bluetooth-searching.svg +1 -0
- package/packages/fokus-icons/svg/bluetooth.svg +1 -0
- package/packages/fokus-icons/svg/bold.svg +1 -0
- package/packages/fokus-icons/svg/bolt.svg +1 -0
- package/packages/fokus-icons/svg/bomb.svg +1 -0
- package/packages/fokus-icons/svg/bone-fracture.svg +1 -0
- package/packages/fokus-icons/svg/bone.svg +1 -0
- package/packages/fokus-icons/svg/book-a.svg +1 -0
- package/packages/fokus-icons/svg/book-alert.svg +1 -0
- package/packages/fokus-icons/svg/book-audio.svg +1 -0
- package/packages/fokus-icons/svg/book-check.svg +1 -0
- package/packages/fokus-icons/svg/book-copy.svg +1 -0
- package/packages/fokus-icons/svg/book-dashed.svg +1 -0
- package/packages/fokus-icons/svg/book-down.svg +1 -0
- package/packages/fokus-icons/svg/book-headphones.svg +1 -0
- package/packages/fokus-icons/svg/book-heart.svg +1 -0
- package/packages/fokus-icons/svg/book-image.svg +1 -0
- package/packages/fokus-icons/svg/book-key.svg +1 -0
- package/packages/fokus-icons/svg/book-lock.svg +1 -0
- package/packages/fokus-icons/svg/book-marked.svg +1 -0
- package/packages/fokus-icons/svg/book-minus.svg +1 -0
- package/packages/fokus-icons/svg/book-open-check.svg +1 -0
- package/packages/fokus-icons/svg/book-open-text.svg +1 -0
- package/packages/fokus-icons/svg/book-open.svg +1 -0
- package/packages/fokus-icons/svg/book-plus.svg +1 -0
- package/packages/fokus-icons/svg/book-search.svg +1 -0
- package/packages/fokus-icons/svg/book-template.svg +1 -0
- package/packages/fokus-icons/svg/book-text.svg +1 -0
- package/packages/fokus-icons/svg/book-type.svg +1 -0
- package/packages/fokus-icons/svg/book-up-2.svg +1 -0
- package/packages/fokus-icons/svg/book-up.svg +1 -0
- package/packages/fokus-icons/svg/book-user.svg +1 -0
- package/packages/fokus-icons/svg/book-x.svg +1 -0
- package/packages/fokus-icons/svg/book.svg +1 -0
- package/packages/fokus-icons/svg/bookmark-check.svg +1 -0
- package/packages/fokus-icons/svg/bookmark-minus.svg +1 -0
- package/packages/fokus-icons/svg/bookmark-off.svg +1 -0
- package/packages/fokus-icons/svg/bookmark-plus.svg +1 -0
- package/packages/fokus-icons/svg/bookmark-x.svg +1 -0
- package/packages/fokus-icons/svg/bookmark.svg +1 -0
- package/packages/fokus-icons/svg/boom-box.svg +1 -0
- package/packages/fokus-icons/svg/bot-message-square.svg +1 -0
- package/packages/fokus-icons/svg/bot-off.svg +1 -0
- package/packages/fokus-icons/svg/bot.svg +1 -0
- package/packages/fokus-icons/svg/bottle-wine.svg +1 -0
- package/packages/fokus-icons/svg/bow-arrow.svg +1 -0
- package/packages/fokus-icons/svg/box-select.svg +1 -0
- package/packages/fokus-icons/svg/box.svg +1 -0
- package/packages/fokus-icons/svg/boxes.svg +1 -0
- package/packages/fokus-icons/svg/braces.svg +1 -0
- package/packages/fokus-icons/svg/brackets.svg +1 -0
- package/packages/fokus-icons/svg/brain-circuit.svg +1 -0
- package/packages/fokus-icons/svg/brain-cog.svg +1 -0
- package/packages/fokus-icons/svg/brain.svg +1 -0
- package/packages/fokus-icons/svg/brick-wall-fire.svg +1 -0
- package/packages/fokus-icons/svg/brick-wall-shield.svg +1 -0
- package/packages/fokus-icons/svg/brick-wall.svg +1 -0
- package/packages/fokus-icons/svg/briefcase-business.svg +1 -0
- package/packages/fokus-icons/svg/briefcase-conveyor-belt.svg +1 -0
- package/packages/fokus-icons/svg/briefcase-medical.svg +1 -0
- package/packages/fokus-icons/svg/briefcase.svg +1 -0
- package/packages/fokus-icons/svg/bring-to-front.svg +1 -0
- package/packages/fokus-icons/svg/broccoli.svg +1 -0
- package/packages/fokus-icons/svg/brush-cleaning.svg +1 -0
- package/packages/fokus-icons/svg/brush.svg +1 -0
- package/packages/fokus-icons/svg/bubbles.svg +1 -0
- package/packages/fokus-icons/svg/bug-off.svg +1 -0
- package/packages/fokus-icons/svg/bug-play.svg +1 -0
- package/packages/fokus-icons/svg/bug.svg +1 -0
- package/packages/fokus-icons/svg/building-2.svg +1 -0
- package/packages/fokus-icons/svg/building.svg +1 -0
- package/packages/fokus-icons/svg/bus-front.svg +1 -0
- package/packages/fokus-icons/svg/bus.svg +1 -0
- package/packages/fokus-icons/svg/cable-car.svg +1 -0
- package/packages/fokus-icons/svg/cable.svg +1 -0
- package/packages/fokus-icons/svg/cake-slice.svg +1 -0
- package/packages/fokus-icons/svg/cake.svg +1 -0
- package/packages/fokus-icons/svg/calculator.svg +1 -0
- package/packages/fokus-icons/svg/calendar-1.svg +1 -0
- package/packages/fokus-icons/svg/calendar-arrow-down.svg +1 -0
- package/packages/fokus-icons/svg/calendar-arrow-up.svg +1 -0
- package/packages/fokus-icons/svg/calendar-check-2.svg +1 -0
- package/packages/fokus-icons/svg/calendar-check.svg +1 -0
- package/packages/fokus-icons/svg/calendar-clock.svg +1 -0
- package/packages/fokus-icons/svg/calendar-cog.svg +1 -0
- package/packages/fokus-icons/svg/calendar-days.svg +1 -0
- package/packages/fokus-icons/svg/calendar-fold.svg +1 -0
- package/packages/fokus-icons/svg/calendar-heart.svg +1 -0
- package/packages/fokus-icons/svg/calendar-minus-2.svg +1 -0
- package/packages/fokus-icons/svg/calendar-minus.svg +1 -0
- package/packages/fokus-icons/svg/calendar-off.svg +1 -0
- package/packages/fokus-icons/svg/calendar-plus-2.svg +1 -0
- package/packages/fokus-icons/svg/calendar-plus.svg +1 -0
- package/packages/fokus-icons/svg/calendar-range.svg +1 -0
- package/packages/fokus-icons/svg/calendar-search.svg +1 -0
- package/packages/fokus-icons/svg/calendar-sync.svg +1 -0
- package/packages/fokus-icons/svg/calendar-x-2.svg +1 -0
- package/packages/fokus-icons/svg/calendar-x.svg +1 -0
- package/packages/fokus-icons/svg/calendar.svg +1 -0
- package/packages/fokus-icons/svg/calendars.svg +1 -0
- package/packages/fokus-icons/svg/camera-off.svg +1 -0
- package/packages/fokus-icons/svg/camera.svg +1 -0
- package/packages/fokus-icons/svg/candlestick-chart.svg +1 -0
- package/packages/fokus-icons/svg/candy-cane.svg +1 -0
- package/packages/fokus-icons/svg/candy-off.svg +1 -0
- package/packages/fokus-icons/svg/candy.svg +1 -0
- package/packages/fokus-icons/svg/cannabis-off.svg +1 -0
- package/packages/fokus-icons/svg/cannabis.svg +1 -0
- package/packages/fokus-icons/svg/captions-off.svg +1 -0
- package/packages/fokus-icons/svg/captions.svg +1 -0
- package/packages/fokus-icons/svg/car-front.svg +1 -0
- package/packages/fokus-icons/svg/car-taxi-front.svg +1 -0
- package/packages/fokus-icons/svg/car.svg +1 -0
- package/packages/fokus-icons/svg/caravan.svg +1 -0
- package/packages/fokus-icons/svg/card-sim.svg +1 -0
- package/packages/fokus-icons/svg/carrot.svg +1 -0
- package/packages/fokus-icons/svg/case-lower.svg +1 -0
- package/packages/fokus-icons/svg/case-sensitive.svg +1 -0
- package/packages/fokus-icons/svg/case-upper.svg +1 -0
- package/packages/fokus-icons/svg/cassette-tape.svg +1 -0
- package/packages/fokus-icons/svg/cast.svg +1 -0
- package/packages/fokus-icons/svg/castle.svg +1 -0
- package/packages/fokus-icons/svg/cat.svg +1 -0
- package/packages/fokus-icons/svg/cctv-off.svg +1 -0
- package/packages/fokus-icons/svg/cctv.svg +1 -0
- package/packages/fokus-icons/svg/chart-area.svg +1 -0
- package/packages/fokus-icons/svg/chart-bar-big.svg +1 -0
- package/packages/fokus-icons/svg/chart-bar-decreasing.svg +1 -0
- package/packages/fokus-icons/svg/chart-bar-increasing.svg +1 -0
- package/packages/fokus-icons/svg/chart-bar-stacked.svg +1 -0
- package/packages/fokus-icons/svg/chart-bar.svg +1 -0
- package/packages/fokus-icons/svg/chart-candlestick.svg +1 -0
- package/packages/fokus-icons/svg/chart-column-big.svg +1 -0
- package/packages/fokus-icons/svg/chart-column-decreasing.svg +1 -0
- package/packages/fokus-icons/svg/chart-column-increasing.svg +1 -0
- package/packages/fokus-icons/svg/chart-column-stacked.svg +1 -0
- package/packages/fokus-icons/svg/chart-column.svg +1 -0
- package/packages/fokus-icons/svg/chart-gantt.svg +1 -0
- package/packages/fokus-icons/svg/chart-line.svg +1 -0
- package/packages/fokus-icons/svg/chart-network.svg +1 -0
- package/packages/fokus-icons/svg/chart-no-axes-column-decreasing.svg +1 -0
- package/packages/fokus-icons/svg/chart-no-axes-column-increasing.svg +1 -0
- package/packages/fokus-icons/svg/chart-no-axes-column.svg +1 -0
- package/packages/fokus-icons/svg/chart-no-axes-combined.svg +1 -0
- package/packages/fokus-icons/svg/chart-no-axes-gantt.svg +1 -0
- package/packages/fokus-icons/svg/chart-pie.svg +1 -0
- package/packages/fokus-icons/svg/chart-scatter.svg +1 -0
- package/packages/fokus-icons/svg/chart-spline.svg +1 -0
- package/packages/fokus-icons/svg/check-check.svg +1 -0
- package/packages/fokus-icons/svg/check-circle-2.svg +1 -0
- package/packages/fokus-icons/svg/check-circle.svg +1 -0
- package/packages/fokus-icons/svg/check-line.svg +1 -0
- package/packages/fokus-icons/svg/check-square-2.svg +1 -0
- package/packages/fokus-icons/svg/check-square.svg +1 -0
- package/packages/fokus-icons/svg/check.svg +1 -0
- package/packages/fokus-icons/svg/chef-hat.svg +1 -0
- package/packages/fokus-icons/svg/cherry.svg +1 -0
- package/packages/fokus-icons/svg/chess-bishop.svg +1 -0
- package/packages/fokus-icons/svg/chess-king.svg +1 -0
- package/packages/fokus-icons/svg/chess-knight.svg +1 -0
- package/packages/fokus-icons/svg/chess-pawn.svg +1 -0
- package/packages/fokus-icons/svg/chess-queen.svg +1 -0
- package/packages/fokus-icons/svg/chess-rook.svg +1 -0
- package/packages/fokus-icons/svg/chevron-down-circle.svg +1 -0
- package/packages/fokus-icons/svg/chevron-down-square.svg +1 -0
- package/packages/fokus-icons/svg/chevron-down.svg +1 -0
- package/packages/fokus-icons/svg/chevron-first.svg +1 -0
- package/packages/fokus-icons/svg/chevron-last.svg +1 -0
- package/packages/fokus-icons/svg/chevron-left-circle.svg +1 -0
- package/packages/fokus-icons/svg/chevron-left-square.svg +1 -0
- package/packages/fokus-icons/svg/chevron-left.svg +1 -0
- package/packages/fokus-icons/svg/chevron-right-circle.svg +1 -0
- package/packages/fokus-icons/svg/chevron-right-square.svg +1 -0
- package/packages/fokus-icons/svg/chevron-right.svg +1 -0
- package/packages/fokus-icons/svg/chevron-up-circle.svg +1 -0
- package/packages/fokus-icons/svg/chevron-up-square.svg +1 -0
- package/packages/fokus-icons/svg/chevron-up.svg +1 -0
- package/packages/fokus-icons/svg/chevrons-down-up.svg +1 -0
- package/packages/fokus-icons/svg/chevrons-down.svg +1 -0
- package/packages/fokus-icons/svg/chevrons-left-right-ellipsis.svg +1 -0
- package/packages/fokus-icons/svg/chevrons-left-right.svg +1 -0
- package/packages/fokus-icons/svg/chevrons-left.svg +1 -0
- package/packages/fokus-icons/svg/chevrons-right-left.svg +1 -0
- package/packages/fokus-icons/svg/chevrons-right.svg +1 -0
- package/packages/fokus-icons/svg/chevrons-up-down.svg +1 -0
- package/packages/fokus-icons/svg/chevrons-up.svg +1 -0
- package/packages/fokus-icons/svg/church.svg +1 -0
- package/packages/fokus-icons/svg/cigarette-off.svg +1 -0
- package/packages/fokus-icons/svg/cigarette.svg +1 -0
- package/packages/fokus-icons/svg/circle-alert.svg +1 -0
- package/packages/fokus-icons/svg/circle-arrow-down.svg +1 -0
- package/packages/fokus-icons/svg/circle-arrow-left.svg +1 -0
- package/packages/fokus-icons/svg/circle-arrow-out-down-left.svg +1 -0
- package/packages/fokus-icons/svg/circle-arrow-out-down-right.svg +1 -0
- package/packages/fokus-icons/svg/circle-arrow-out-up-left.svg +1 -0
- package/packages/fokus-icons/svg/circle-arrow-out-up-right.svg +1 -0
- package/packages/fokus-icons/svg/circle-arrow-right.svg +1 -0
- package/packages/fokus-icons/svg/circle-arrow-up.svg +1 -0
- package/packages/fokus-icons/svg/circle-check-big.svg +1 -0
- package/packages/fokus-icons/svg/circle-check.svg +1 -0
- package/packages/fokus-icons/svg/circle-chevron-down.svg +1 -0
- package/packages/fokus-icons/svg/circle-chevron-left.svg +1 -0
- package/packages/fokus-icons/svg/circle-chevron-right.svg +1 -0
- package/packages/fokus-icons/svg/circle-chevron-up.svg +1 -0
- package/packages/fokus-icons/svg/circle-dashed.svg +1 -0
- package/packages/fokus-icons/svg/circle-divide.svg +1 -0
- package/packages/fokus-icons/svg/circle-dollar-sign.svg +1 -0
- package/packages/fokus-icons/svg/circle-dot-dashed.svg +1 -0
- package/packages/fokus-icons/svg/circle-dot.svg +1 -0
- package/packages/fokus-icons/svg/circle-ellipsis.svg +1 -0
- package/packages/fokus-icons/svg/circle-equal.svg +1 -0
- package/packages/fokus-icons/svg/circle-fading-arrow-up.svg +1 -0
- package/packages/fokus-icons/svg/circle-fading-plus.svg +1 -0
- package/packages/fokus-icons/svg/circle-gauge.svg +1 -0
- package/packages/fokus-icons/svg/circle-help.svg +1 -0
- package/packages/fokus-icons/svg/circle-minus.svg +1 -0
- package/packages/fokus-icons/svg/circle-off.svg +1 -0
- package/packages/fokus-icons/svg/circle-parking-off.svg +1 -0
- package/packages/fokus-icons/svg/circle-parking.svg +1 -0
- package/packages/fokus-icons/svg/circle-pause.svg +1 -0
- package/packages/fokus-icons/svg/circle-percent.svg +1 -0
- package/packages/fokus-icons/svg/circle-pile.svg +1 -0
- package/packages/fokus-icons/svg/circle-play.svg +1 -0
- package/packages/fokus-icons/svg/circle-plus.svg +1 -0
- package/packages/fokus-icons/svg/circle-pound-sterling.svg +1 -0
- package/packages/fokus-icons/svg/circle-power.svg +1 -0
- package/packages/fokus-icons/svg/circle-question-mark.svg +1 -0
- package/packages/fokus-icons/svg/circle-slash-2.svg +1 -0
- package/packages/fokus-icons/svg/circle-slash.svg +1 -0
- package/packages/fokus-icons/svg/circle-slashed.svg +1 -0
- package/packages/fokus-icons/svg/circle-small.svg +1 -0
- package/packages/fokus-icons/svg/circle-star.svg +1 -0
- package/packages/fokus-icons/svg/circle-stop.svg +1 -0
- package/packages/fokus-icons/svg/circle-user-round.svg +1 -0
- package/packages/fokus-icons/svg/circle-user.svg +1 -0
- package/packages/fokus-icons/svg/circle-x.svg +1 -0
- package/packages/fokus-icons/svg/circle.svg +1 -0
- package/packages/fokus-icons/svg/circuit-board.svg +1 -0
- package/packages/fokus-icons/svg/citrus.svg +1 -0
- package/packages/fokus-icons/svg/clapperboard.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-check.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-clock.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-copy.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-edit.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-list.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-minus.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-paste.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-pen-line.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-pen.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-plus.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-signature.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-type.svg +1 -0
- package/packages/fokus-icons/svg/clipboard-x.svg +1 -0
- package/packages/fokus-icons/svg/clipboard.svg +1 -0
- package/packages/fokus-icons/svg/clock-1.svg +1 -0
- package/packages/fokus-icons/svg/clock-10.svg +1 -0
- package/packages/fokus-icons/svg/clock-11.svg +1 -0
- package/packages/fokus-icons/svg/clock-12.svg +1 -0
- package/packages/fokus-icons/svg/clock-2.svg +1 -0
- package/packages/fokus-icons/svg/clock-3.svg +1 -0
- package/packages/fokus-icons/svg/clock-4.svg +1 -0
- package/packages/fokus-icons/svg/clock-5.svg +1 -0
- package/packages/fokus-icons/svg/clock-6.svg +1 -0
- package/packages/fokus-icons/svg/clock-7.svg +1 -0
- package/packages/fokus-icons/svg/clock-8.svg +1 -0
- package/packages/fokus-icons/svg/clock-9.svg +1 -0
- package/packages/fokus-icons/svg/clock-alert.svg +1 -0
- package/packages/fokus-icons/svg/clock-arrow-down.svg +1 -0
- package/packages/fokus-icons/svg/clock-arrow-left.svg +1 -0
- package/packages/fokus-icons/svg/clock-arrow-right.svg +1 -0
- package/packages/fokus-icons/svg/clock-arrow-up.svg +1 -0
- package/packages/fokus-icons/svg/clock-check.svg +1 -0
- package/packages/fokus-icons/svg/clock-fading.svg +1 -0
- package/packages/fokus-icons/svg/clock-plus.svg +1 -0
- package/packages/fokus-icons/svg/clock.svg +1 -0
- package/packages/fokus-icons/svg/closed-caption.svg +1 -0
- package/packages/fokus-icons/svg/cloud-alert.svg +1 -0
- package/packages/fokus-icons/svg/cloud-backup.svg +1 -0
- package/packages/fokus-icons/svg/cloud-check.svg +1 -0
- package/packages/fokus-icons/svg/cloud-cog.svg +1 -0
- package/packages/fokus-icons/svg/cloud-download.svg +1 -0
- package/packages/fokus-icons/svg/cloud-drizzle.svg +1 -0
- package/packages/fokus-icons/svg/cloud-fog.svg +1 -0
- package/packages/fokus-icons/svg/cloud-hail.svg +1 -0
- package/packages/fokus-icons/svg/cloud-lightning.svg +1 -0
- package/packages/fokus-icons/svg/cloud-moon-rain.svg +1 -0
- package/packages/fokus-icons/svg/cloud-moon.svg +1 -0
- package/packages/fokus-icons/svg/cloud-off.svg +1 -0
- package/packages/fokus-icons/svg/cloud-rain-wind.svg +1 -0
- package/packages/fokus-icons/svg/cloud-rain.svg +1 -0
- package/packages/fokus-icons/svg/cloud-snow.svg +1 -0
- package/packages/fokus-icons/svg/cloud-sun-rain.svg +1 -0
- package/packages/fokus-icons/svg/cloud-sun.svg +1 -0
- package/packages/fokus-icons/svg/cloud-sync.svg +1 -0
- package/packages/fokus-icons/svg/cloud-upload.svg +1 -0
- package/packages/fokus-icons/svg/cloud.svg +1 -0
- package/packages/fokus-icons/svg/cloudy.svg +1 -0
- package/packages/fokus-icons/svg/clover.svg +1 -0
- package/packages/fokus-icons/svg/club.svg +1 -0
- package/packages/fokus-icons/svg/code-2.svg +1 -0
- package/packages/fokus-icons/svg/code-square.svg +1 -0
- package/packages/fokus-icons/svg/code-xml.svg +1 -0
- package/packages/fokus-icons/svg/code.svg +1 -0
- package/packages/fokus-icons/svg/coffee.svg +1 -0
- package/packages/fokus-icons/svg/cog.svg +1 -0
- package/packages/fokus-icons/svg/coins.svg +1 -0
- package/packages/fokus-icons/svg/columns-2.svg +1 -0
- package/packages/fokus-icons/svg/columns-3-cog.svg +1 -0
- package/packages/fokus-icons/svg/columns-3.svg +1 -0
- package/packages/fokus-icons/svg/columns-4.svg +1 -0
- package/packages/fokus-icons/svg/columns-settings.svg +1 -0
- package/packages/fokus-icons/svg/columns.svg +1 -0
- package/packages/fokus-icons/svg/combine.svg +1 -0
- package/packages/fokus-icons/svg/command.svg +1 -0
- package/packages/fokus-icons/svg/compass.svg +1 -0
- package/packages/fokus-icons/svg/component.svg +1 -0
- package/packages/fokus-icons/svg/computer.svg +1 -0
- package/packages/fokus-icons/svg/concierge-bell.svg +1 -0
- package/packages/fokus-icons/svg/cone.svg +1 -0
- package/packages/fokus-icons/svg/construction.svg +1 -0
- package/packages/fokus-icons/svg/contact-2.svg +1 -0
- package/packages/fokus-icons/svg/contact-round.svg +1 -0
- package/packages/fokus-icons/svg/contact.svg +1 -0
- package/packages/fokus-icons/svg/container.svg +1 -0
- package/packages/fokus-icons/svg/contrast.svg +1 -0
- package/packages/fokus-icons/svg/cookie.svg +1 -0
- package/packages/fokus-icons/svg/cooking-pot.svg +1 -0
- package/packages/fokus-icons/svg/copy-check.svg +1 -0
- package/packages/fokus-icons/svg/copy-minus.svg +1 -0
- package/packages/fokus-icons/svg/copy-plus.svg +1 -0
- package/packages/fokus-icons/svg/copy-slash.svg +1 -0
- package/packages/fokus-icons/svg/copy-x.svg +1 -0
- package/packages/fokus-icons/svg/copy.svg +1 -0
- package/packages/fokus-icons/svg/copyleft.svg +1 -0
- package/packages/fokus-icons/svg/copyright.svg +1 -0
- package/packages/fokus-icons/svg/corner-down-left.svg +1 -0
- package/packages/fokus-icons/svg/corner-down-right.svg +1 -0
- package/packages/fokus-icons/svg/corner-left-down.svg +1 -0
- package/packages/fokus-icons/svg/corner-left-up.svg +1 -0
- package/packages/fokus-icons/svg/corner-right-down.svg +1 -0
- package/packages/fokus-icons/svg/corner-right-up.svg +1 -0
- package/packages/fokus-icons/svg/corner-up-left.svg +1 -0
- package/packages/fokus-icons/svg/corner-up-right.svg +1 -0
- package/packages/fokus-icons/svg/cpu.svg +1 -0
- package/packages/fokus-icons/svg/creative-commons.svg +1 -0
- package/packages/fokus-icons/svg/credit-card.svg +1 -0
- package/packages/fokus-icons/svg/croissant.svg +1 -0
- package/packages/fokus-icons/svg/crop.svg +1 -0
- package/packages/fokus-icons/svg/cross.svg +1 -0
- package/packages/fokus-icons/svg/crosshair.svg +1 -0
- package/packages/fokus-icons/svg/crown.svg +1 -0
- package/packages/fokus-icons/svg/cuboid.svg +1 -0
- package/packages/fokus-icons/svg/cup-soda.svg +1 -0
- package/packages/fokus-icons/svg/curly-braces.svg +1 -0
- package/packages/fokus-icons/svg/currency.svg +1 -0
- package/packages/fokus-icons/svg/cylinder.svg +1 -0
- package/packages/fokus-icons/svg/dam.svg +1 -0
- package/packages/fokus-icons/svg/database-arrow-down.svg +1 -0
- package/packages/fokus-icons/svg/database-arrow-up.svg +1 -0
- package/packages/fokus-icons/svg/database-backup.svg +1 -0
- package/packages/fokus-icons/svg/database-check.svg +1 -0
- package/packages/fokus-icons/svg/database-minus.svg +1 -0
- package/packages/fokus-icons/svg/database-plus.svg +1 -0
- package/packages/fokus-icons/svg/database-search.svg +1 -0
- package/packages/fokus-icons/svg/database-x.svg +1 -0
- package/packages/fokus-icons/svg/database-zap.svg +1 -0
- package/packages/fokus-icons/svg/database.svg +1 -0
- package/packages/fokus-icons/svg/decimals-arrow-left.svg +1 -0
- package/packages/fokus-icons/svg/decimals-arrow-right.svg +1 -0
- package/packages/fokus-icons/svg/delete.svg +1 -0
- package/packages/fokus-icons/svg/dessert.svg +1 -0
- package/packages/fokus-icons/svg/diameter.svg +1 -0
- package/packages/fokus-icons/svg/diamond-minus.svg +1 -0
- package/packages/fokus-icons/svg/diamond-percent.svg +1 -0
- package/packages/fokus-icons/svg/diamond-plus.svg +1 -0
- package/packages/fokus-icons/svg/diamond.svg +1 -0
- package/packages/fokus-icons/svg/dice-1.svg +1 -0
- package/packages/fokus-icons/svg/dice-2.svg +1 -0
- package/packages/fokus-icons/svg/dice-3.svg +1 -0
- package/packages/fokus-icons/svg/dice-4.svg +1 -0
- package/packages/fokus-icons/svg/dice-5.svg +1 -0
- package/packages/fokus-icons/svg/dice-6.svg +1 -0
- package/packages/fokus-icons/svg/dices.svg +1 -0
- package/packages/fokus-icons/svg/diff.svg +1 -0
- package/packages/fokus-icons/svg/disc-2.svg +1 -0
- package/packages/fokus-icons/svg/disc-3.svg +1 -0
- package/packages/fokus-icons/svg/disc-album.svg +1 -0
- package/packages/fokus-icons/svg/disc.svg +1 -0
- package/packages/fokus-icons/svg/divide-circle.svg +1 -0
- package/packages/fokus-icons/svg/divide-square.svg +1 -0
- package/packages/fokus-icons/svg/divide.svg +1 -0
- package/packages/fokus-icons/svg/dna-off.svg +1 -0
- package/packages/fokus-icons/svg/dna.svg +1 -0
- package/packages/fokus-icons/svg/dock.svg +1 -0
- package/packages/fokus-icons/svg/dog.svg +1 -0
- package/packages/fokus-icons/svg/dollar-sign.svg +1 -0
- package/packages/fokus-icons/svg/donut.svg +1 -0
- package/packages/fokus-icons/svg/door-closed-locked.svg +1 -0
- package/packages/fokus-icons/svg/door-closed.svg +1 -0
- package/packages/fokus-icons/svg/door-open.svg +1 -0
- package/packages/fokus-icons/svg/dot-square.svg +1 -0
- package/packages/fokus-icons/svg/dot.svg +1 -0
- package/packages/fokus-icons/svg/download-cloud.svg +1 -0
- package/packages/fokus-icons/svg/download.svg +1 -0
- package/packages/fokus-icons/svg/drafting-compass.svg +1 -0
- package/packages/fokus-icons/svg/drama.svg +1 -0
- package/packages/fokus-icons/svg/drill.svg +1 -0
- package/packages/fokus-icons/svg/drone.svg +1 -0
- package/packages/fokus-icons/svg/droplet-off.svg +1 -0
- package/packages/fokus-icons/svg/droplet.svg +1 -0
- package/packages/fokus-icons/svg/droplets.svg +1 -0
- package/packages/fokus-icons/svg/drum.svg +1 -0
- package/packages/fokus-icons/svg/drumstick.svg +1 -0
- package/packages/fokus-icons/svg/dumbbell.svg +1 -0
- package/packages/fokus-icons/svg/ear-off.svg +1 -0
- package/packages/fokus-icons/svg/ear.svg +1 -0
- package/packages/fokus-icons/svg/earth-lock.svg +1 -0
- package/packages/fokus-icons/svg/earth.svg +1 -0
- package/packages/fokus-icons/svg/eclipse.svg +1 -0
- package/packages/fokus-icons/svg/edit-2.svg +1 -0
- package/packages/fokus-icons/svg/edit-3.svg +1 -0
- package/packages/fokus-icons/svg/edit.svg +1 -0
- package/packages/fokus-icons/svg/egg-fried.svg +1 -0
- package/packages/fokus-icons/svg/egg-off.svg +1 -0
- package/packages/fokus-icons/svg/egg.svg +1 -0
- package/packages/fokus-icons/svg/ellipse.svg +1 -0
- package/packages/fokus-icons/svg/ellipsis-vertical.svg +1 -0
- package/packages/fokus-icons/svg/ellipsis.svg +1 -0
- package/packages/fokus-icons/svg/equal-approximately.svg +1 -0
- package/packages/fokus-icons/svg/equal-not.svg +1 -0
- package/packages/fokus-icons/svg/equal-square.svg +1 -0
- package/packages/fokus-icons/svg/equal.svg +1 -0
- package/packages/fokus-icons/svg/eraser.svg +1 -0
- package/packages/fokus-icons/svg/ethernet-port.svg +1 -0
- package/packages/fokus-icons/svg/euro.svg +1 -0
- package/packages/fokus-icons/svg/ev-charger.svg +1 -0
- package/packages/fokus-icons/svg/expand.svg +1 -0
- package/packages/fokus-icons/svg/external-link.svg +1 -0
- package/packages/fokus-icons/svg/eye-closed.svg +1 -0
- package/packages/fokus-icons/svg/eye-dashed.svg +1 -0
- package/packages/fokus-icons/svg/eye-off.svg +1 -0
- package/packages/fokus-icons/svg/eye.svg +1 -0
- package/packages/fokus-icons/svg/factory.svg +1 -0
- package/packages/fokus-icons/svg/fan.svg +1 -0
- package/packages/fokus-icons/svg/fast-forward.svg +1 -0
- package/packages/fokus-icons/svg/feather.svg +1 -0
- package/packages/fokus-icons/svg/fence.svg +1 -0
- package/packages/fokus-icons/svg/ferris-wheel.svg +1 -0
- package/packages/fokus-icons/svg/file-archive.svg +1 -0
- package/packages/fokus-icons/svg/file-audio-2.svg +1 -0
- package/packages/fokus-icons/svg/file-audio.svg +1 -0
- package/packages/fokus-icons/svg/file-axis-3-d.svg +1 -0
- package/packages/fokus-icons/svg/file-axis-3d.svg +1 -0
- package/packages/fokus-icons/svg/file-badge-2.svg +1 -0
- package/packages/fokus-icons/svg/file-badge.svg +1 -0
- package/packages/fokus-icons/svg/file-bar-chart-2.svg +1 -0
- package/packages/fokus-icons/svg/file-bar-chart.svg +1 -0
- package/packages/fokus-icons/svg/file-box.svg +1 -0
- package/packages/fokus-icons/svg/file-braces-corner.svg +1 -0
- package/packages/fokus-icons/svg/file-braces.svg +1 -0
- package/packages/fokus-icons/svg/file-chart-column-increasing.svg +1 -0
- package/packages/fokus-icons/svg/file-chart-column.svg +1 -0
- package/packages/fokus-icons/svg/file-chart-line.svg +1 -0
- package/packages/fokus-icons/svg/file-chart-pie.svg +1 -0
- package/packages/fokus-icons/svg/file-check-2.svg +1 -0
- package/packages/fokus-icons/svg/file-check-corner.svg +1 -0
- package/packages/fokus-icons/svg/file-check.svg +1 -0
- package/packages/fokus-icons/svg/file-clock.svg +1 -0
- package/packages/fokus-icons/svg/file-code-2.svg +1 -0
- package/packages/fokus-icons/svg/file-code-corner.svg +1 -0
- package/packages/fokus-icons/svg/file-code.svg +1 -0
- package/packages/fokus-icons/svg/file-cog-2.svg +1 -0
- package/packages/fokus-icons/svg/file-cog.svg +1 -0
- package/packages/fokus-icons/svg/file-diff.svg +1 -0
- package/packages/fokus-icons/svg/file-digit.svg +1 -0
- package/packages/fokus-icons/svg/file-down.svg +1 -0
- package/packages/fokus-icons/svg/file-edit.svg +1 -0
- package/packages/fokus-icons/svg/file-exclamation-point.svg +1 -0
- package/packages/fokus-icons/svg/file-headphone.svg +1 -0
- package/packages/fokus-icons/svg/file-heart.svg +1 -0
- package/packages/fokus-icons/svg/file-image.svg +1 -0
- package/packages/fokus-icons/svg/file-input.svg +1 -0
- package/packages/fokus-icons/svg/file-json-2.svg +1 -0
- package/packages/fokus-icons/svg/file-json.svg +1 -0
- package/packages/fokus-icons/svg/file-key-2.svg +1 -0
- package/packages/fokus-icons/svg/file-key.svg +1 -0
- package/packages/fokus-icons/svg/file-line-chart.svg +1 -0
- package/packages/fokus-icons/svg/file-lock-2.svg +1 -0
- package/packages/fokus-icons/svg/file-lock.svg +1 -0
- package/packages/fokus-icons/svg/file-minus-2.svg +1 -0
- package/packages/fokus-icons/svg/file-minus-corner.svg +1 -0
- package/packages/fokus-icons/svg/file-minus.svg +1 -0
- package/packages/fokus-icons/svg/file-music.svg +1 -0
- package/packages/fokus-icons/svg/file-output.svg +1 -0
- package/packages/fokus-icons/svg/file-pen-line.svg +1 -0
- package/packages/fokus-icons/svg/file-pen.svg +1 -0
- package/packages/fokus-icons/svg/file-pie-chart.svg +1 -0
- package/packages/fokus-icons/svg/file-play.svg +1 -0
- package/packages/fokus-icons/svg/file-plus-2.svg +1 -0
- package/packages/fokus-icons/svg/file-plus-corner.svg +1 -0
- package/packages/fokus-icons/svg/file-plus.svg +1 -0
- package/packages/fokus-icons/svg/file-question-mark.svg +1 -0
- package/packages/fokus-icons/svg/file-question.svg +1 -0
- package/packages/fokus-icons/svg/file-scan.svg +1 -0
- package/packages/fokus-icons/svg/file-search-2.svg +1 -0
- package/packages/fokus-icons/svg/file-search-corner.svg +1 -0
- package/packages/fokus-icons/svg/file-search.svg +1 -0
- package/packages/fokus-icons/svg/file-signal.svg +1 -0
- package/packages/fokus-icons/svg/file-signature.svg +1 -0
- package/packages/fokus-icons/svg/file-sliders.svg +1 -0
- package/packages/fokus-icons/svg/file-spreadsheet.svg +1 -0
- package/packages/fokus-icons/svg/file-stack.svg +1 -0
- package/packages/fokus-icons/svg/file-symlink.svg +1 -0
- package/packages/fokus-icons/svg/file-terminal.svg +1 -0
- package/packages/fokus-icons/svg/file-text.svg +1 -0
- package/packages/fokus-icons/svg/file-type-2.svg +1 -0
- package/packages/fokus-icons/svg/file-type-corner.svg +1 -0
- package/packages/fokus-icons/svg/file-type.svg +1 -0
- package/packages/fokus-icons/svg/file-up.svg +1 -0
- package/packages/fokus-icons/svg/file-user.svg +1 -0
- package/packages/fokus-icons/svg/file-video-2.svg +1 -0
- package/packages/fokus-icons/svg/file-video-camera.svg +1 -0
- package/packages/fokus-icons/svg/file-video.svg +1 -0
- package/packages/fokus-icons/svg/file-volume-2.svg +1 -0
- package/packages/fokus-icons/svg/file-volume.svg +1 -0
- package/packages/fokus-icons/svg/file-warning.svg +1 -0
- package/packages/fokus-icons/svg/file-x-2.svg +1 -0
- package/packages/fokus-icons/svg/file-x-corner.svg +1 -0
- package/packages/fokus-icons/svg/file-x.svg +1 -0
- package/packages/fokus-icons/svg/file.svg +1 -0
- package/packages/fokus-icons/svg/files.svg +1 -0
- package/packages/fokus-icons/svg/film.svg +1 -0
- package/packages/fokus-icons/svg/filter-x.svg +1 -0
- package/packages/fokus-icons/svg/filter.svg +1 -0
- package/packages/fokus-icons/svg/fingerprint-pattern.svg +1 -0
- package/packages/fokus-icons/svg/fingerprint.svg +1 -0
- package/packages/fokus-icons/svg/fire-extinguisher.svg +1 -0
- package/packages/fokus-icons/svg/fish-off.svg +1 -0
- package/packages/fokus-icons/svg/fish-symbol.svg +1 -0
- package/packages/fokus-icons/svg/fish.svg +1 -0
- package/packages/fokus-icons/svg/fishing-hook.svg +1 -0
- package/packages/fokus-icons/svg/fishing-rod.svg +1 -0
- package/packages/fokus-icons/svg/flag-off.svg +1 -0
- package/packages/fokus-icons/svg/flag-triangle-left.svg +1 -0
- package/packages/fokus-icons/svg/flag-triangle-right.svg +1 -0
- package/packages/fokus-icons/svg/flag.svg +1 -0
- package/packages/fokus-icons/svg/flame-kindling.svg +1 -0
- package/packages/fokus-icons/svg/flame.svg +1 -0
- package/packages/fokus-icons/svg/flashlight-off.svg +1 -0
- package/packages/fokus-icons/svg/flashlight.svg +1 -0
- package/packages/fokus-icons/svg/flask-conical-off.svg +1 -0
- package/packages/fokus-icons/svg/flask-conical.svg +1 -0
- package/packages/fokus-icons/svg/flask-round.svg +1 -0
- package/packages/fokus-icons/svg/flip-horizontal-2.svg +1 -0
- package/packages/fokus-icons/svg/flip-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/flip-vertical-2.svg +1 -0
- package/packages/fokus-icons/svg/flip-vertical.svg +1 -0
- package/packages/fokus-icons/svg/flower-2.svg +1 -0
- package/packages/fokus-icons/svg/flower.svg +1 -0
- package/packages/fokus-icons/svg/focus.svg +1 -0
- package/packages/fokus-icons/svg/fold-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/fold-vertical.svg +1 -0
- package/packages/fokus-icons/svg/folder-archive.svg +1 -0
- package/packages/fokus-icons/svg/folder-bookmark.svg +1 -0
- package/packages/fokus-icons/svg/folder-check.svg +1 -0
- package/packages/fokus-icons/svg/folder-clock.svg +1 -0
- package/packages/fokus-icons/svg/folder-closed.svg +1 -0
- package/packages/fokus-icons/svg/folder-code.svg +1 -0
- package/packages/fokus-icons/svg/folder-cog-2.svg +1 -0
- package/packages/fokus-icons/svg/folder-cog.svg +1 -0
- package/packages/fokus-icons/svg/folder-dot.svg +1 -0
- package/packages/fokus-icons/svg/folder-down.svg +1 -0
- package/packages/fokus-icons/svg/folder-edit.svg +1 -0
- package/packages/fokus-icons/svg/folder-git-2.svg +1 -0
- package/packages/fokus-icons/svg/folder-git.svg +1 -0
- package/packages/fokus-icons/svg/folder-heart.svg +1 -0
- package/packages/fokus-icons/svg/folder-input.svg +1 -0
- package/packages/fokus-icons/svg/folder-kanban.svg +1 -0
- package/packages/fokus-icons/svg/folder-key.svg +1 -0
- package/packages/fokus-icons/svg/folder-lock.svg +1 -0
- package/packages/fokus-icons/svg/folder-minus.svg +1 -0
- package/packages/fokus-icons/svg/folder-open-dot.svg +1 -0
- package/packages/fokus-icons/svg/folder-open.svg +1 -0
- package/packages/fokus-icons/svg/folder-output.svg +1 -0
- package/packages/fokus-icons/svg/folder-pen.svg +1 -0
- package/packages/fokus-icons/svg/folder-plus.svg +1 -0
- package/packages/fokus-icons/svg/folder-root.svg +1 -0
- package/packages/fokus-icons/svg/folder-search-2.svg +1 -0
- package/packages/fokus-icons/svg/folder-search.svg +1 -0
- package/packages/fokus-icons/svg/folder-symlink.svg +1 -0
- package/packages/fokus-icons/svg/folder-sync.svg +1 -0
- package/packages/fokus-icons/svg/folder-tree.svg +1 -0
- package/packages/fokus-icons/svg/folder-up.svg +1 -0
- package/packages/fokus-icons/svg/folder-x.svg +1 -0
- package/packages/fokus-icons/svg/folder.svg +1 -0
- package/packages/fokus-icons/svg/folders.svg +1 -0
- package/packages/fokus-icons/svg/footprints.svg +1 -0
- package/packages/fokus-icons/svg/fork-knife-crossed.svg +1 -0
- package/packages/fokus-icons/svg/fork-knife.svg +1 -0
- package/packages/fokus-icons/svg/forklift.svg +1 -0
- package/packages/fokus-icons/svg/form-input.svg +1 -0
- package/packages/fokus-icons/svg/form.svg +1 -0
- package/packages/fokus-icons/svg/forward.svg +1 -0
- package/packages/fokus-icons/svg/frame.svg +1 -0
- package/packages/fokus-icons/svg/frown.svg +1 -0
- package/packages/fokus-icons/svg/fuel.svg +1 -0
- package/packages/fokus-icons/svg/fullscreen.svg +1 -0
- package/packages/fokus-icons/svg/function-square.svg +1 -0
- package/packages/fokus-icons/svg/funnel-plus.svg +1 -0
- package/packages/fokus-icons/svg/funnel-x.svg +1 -0
- package/packages/fokus-icons/svg/funnel.svg +1 -0
- package/packages/fokus-icons/svg/gallery-horizontal-end.svg +1 -0
- package/packages/fokus-icons/svg/gallery-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/gallery-thumbnails.svg +1 -0
- package/packages/fokus-icons/svg/gallery-vertical-end.svg +1 -0
- package/packages/fokus-icons/svg/gallery-vertical.svg +1 -0
- package/packages/fokus-icons/svg/gamepad-2.svg +1 -0
- package/packages/fokus-icons/svg/gamepad-directional.svg +1 -0
- package/packages/fokus-icons/svg/gamepad.svg +1 -0
- package/packages/fokus-icons/svg/gantt-chart-square.svg +1 -0
- package/packages/fokus-icons/svg/gantt-chart.svg +1 -0
- package/packages/fokus-icons/svg/gauge-circle.svg +1 -0
- package/packages/fokus-icons/svg/gauge.svg +1 -0
- package/packages/fokus-icons/svg/gavel.svg +1 -0
- package/packages/fokus-icons/svg/gem.svg +1 -0
- package/packages/fokus-icons/svg/georgian-lari.svg +1 -0
- package/packages/fokus-icons/svg/ghost.svg +1 -0
- package/packages/fokus-icons/svg/gift.svg +1 -0
- package/packages/fokus-icons/svg/git-branch-minus.svg +1 -0
- package/packages/fokus-icons/svg/git-branch-plus.svg +1 -0
- package/packages/fokus-icons/svg/git-branch.svg +1 -0
- package/packages/fokus-icons/svg/git-commit-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/git-commit-vertical.svg +1 -0
- package/packages/fokus-icons/svg/git-commit.svg +1 -0
- package/packages/fokus-icons/svg/git-compare-arrows.svg +1 -0
- package/packages/fokus-icons/svg/git-compare.svg +1 -0
- package/packages/fokus-icons/svg/git-fork.svg +1 -0
- package/packages/fokus-icons/svg/git-graph.svg +1 -0
- package/packages/fokus-icons/svg/git-merge-conflict.svg +1 -0
- package/packages/fokus-icons/svg/git-merge.svg +1 -0
- package/packages/fokus-icons/svg/git-pull-request-arrow.svg +1 -0
- package/packages/fokus-icons/svg/git-pull-request-closed.svg +1 -0
- package/packages/fokus-icons/svg/git-pull-request-create-arrow.svg +1 -0
- package/packages/fokus-icons/svg/git-pull-request-create.svg +1 -0
- package/packages/fokus-icons/svg/git-pull-request-draft.svg +1 -0
- package/packages/fokus-icons/svg/git-pull-request.svg +1 -0
- package/packages/fokus-icons/svg/glass-water.svg +1 -0
- package/packages/fokus-icons/svg/glasses.svg +1 -0
- package/packages/fokus-icons/svg/globe-2.svg +1 -0
- package/packages/fokus-icons/svg/globe-check.svg +1 -0
- package/packages/fokus-icons/svg/globe-lock.svg +1 -0
- package/packages/fokus-icons/svg/globe-off.svg +1 -0
- package/packages/fokus-icons/svg/globe-x.svg +1 -0
- package/packages/fokus-icons/svg/globe.svg +1 -0
- package/packages/fokus-icons/svg/goal.svg +1 -0
- package/packages/fokus-icons/svg/gpu.svg +1 -0
- package/packages/fokus-icons/svg/grab.svg +1 -0
- package/packages/fokus-icons/svg/graduation-cap.svg +1 -0
- package/packages/fokus-icons/svg/grape.svg +1 -0
- package/packages/fokus-icons/svg/grid-2-x-2-check.svg +1 -0
- package/packages/fokus-icons/svg/grid-2-x-2-plus.svg +1 -0
- package/packages/fokus-icons/svg/grid-2-x-2-x.svg +1 -0
- package/packages/fokus-icons/svg/grid-2-x-2.svg +1 -0
- package/packages/fokus-icons/svg/grid-2x2-check.svg +1 -0
- package/packages/fokus-icons/svg/grid-2x2-plus.svg +1 -0
- package/packages/fokus-icons/svg/grid-2x2-x.svg +1 -0
- package/packages/fokus-icons/svg/grid-2x2.svg +1 -0
- package/packages/fokus-icons/svg/grid-3-x-3.svg +1 -0
- package/packages/fokus-icons/svg/grid-3x2.svg +1 -0
- package/packages/fokus-icons/svg/grid-3x3.svg +1 -0
- package/packages/fokus-icons/svg/grid.svg +1 -0
- package/packages/fokus-icons/svg/grip-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/grip-vertical.svg +1 -0
- package/packages/fokus-icons/svg/grip.svg +1 -0
- package/packages/fokus-icons/svg/group.svg +1 -0
- package/packages/fokus-icons/svg/guitar.svg +1 -0
- package/packages/fokus-icons/svg/ham.svg +1 -0
- package/packages/fokus-icons/svg/hamburger.svg +1 -0
- package/packages/fokus-icons/svg/hammer.svg +1 -0
- package/packages/fokus-icons/svg/hand-coins.svg +1 -0
- package/packages/fokus-icons/svg/hand-fist.svg +1 -0
- package/packages/fokus-icons/svg/hand-grab.svg +1 -0
- package/packages/fokus-icons/svg/hand-heart.svg +1 -0
- package/packages/fokus-icons/svg/hand-helping.svg +1 -0
- package/packages/fokus-icons/svg/hand-metal.svg +1 -0
- package/packages/fokus-icons/svg/hand-platter.svg +1 -0
- package/packages/fokus-icons/svg/hand.svg +1 -0
- package/packages/fokus-icons/svg/handbag.svg +1 -0
- package/packages/fokus-icons/svg/handshake.svg +1 -0
- package/packages/fokus-icons/svg/hard-drive-download.svg +1 -0
- package/packages/fokus-icons/svg/hard-drive-upload.svg +1 -0
- package/packages/fokus-icons/svg/hard-drive.svg +1 -0
- package/packages/fokus-icons/svg/hard-hat.svg +1 -0
- package/packages/fokus-icons/svg/hash.svg +1 -0
- package/packages/fokus-icons/svg/hat-glasses.svg +1 -0
- package/packages/fokus-icons/svg/haze.svg +1 -0
- package/packages/fokus-icons/svg/hd.svg +1 -0
- package/packages/fokus-icons/svg/hdmi-port.svg +1 -0
- package/packages/fokus-icons/svg/heading-1.svg +1 -0
- package/packages/fokus-icons/svg/heading-2.svg +1 -0
- package/packages/fokus-icons/svg/heading-3.svg +1 -0
- package/packages/fokus-icons/svg/heading-4.svg +1 -0
- package/packages/fokus-icons/svg/heading-5.svg +1 -0
- package/packages/fokus-icons/svg/heading-6.svg +1 -0
- package/packages/fokus-icons/svg/heading.svg +1 -0
- package/packages/fokus-icons/svg/headphone-off.svg +1 -0
- package/packages/fokus-icons/svg/headphones.svg +1 -0
- package/packages/fokus-icons/svg/headset.svg +1 -0
- package/packages/fokus-icons/svg/heart-crack.svg +1 -0
- package/packages/fokus-icons/svg/heart-handshake.svg +1 -0
- package/packages/fokus-icons/svg/heart-minus.svg +1 -0
- package/packages/fokus-icons/svg/heart-off.svg +1 -0
- package/packages/fokus-icons/svg/heart-plus.svg +1 -0
- package/packages/fokus-icons/svg/heart-pulse.svg +1 -0
- package/packages/fokus-icons/svg/heart-x.svg +1 -0
- package/packages/fokus-icons/svg/heart.svg +1 -0
- package/packages/fokus-icons/svg/heater.svg +1 -0
- package/packages/fokus-icons/svg/helicopter.svg +1 -0
- package/packages/fokus-icons/svg/help-circle.svg +1 -0
- package/packages/fokus-icons/svg/helping-hand.svg +1 -0
- package/packages/fokus-icons/svg/hexagon.svg +1 -0
- package/packages/fokus-icons/svg/highlighter.svg +1 -0
- package/packages/fokus-icons/svg/history.svg +1 -0
- package/packages/fokus-icons/svg/home.svg +1 -0
- package/packages/fokus-icons/svg/hop-off.svg +1 -0
- package/packages/fokus-icons/svg/hop.svg +1 -0
- package/packages/fokus-icons/svg/hospital.svg +1 -0
- package/packages/fokus-icons/svg/hotel.svg +1 -0
- package/packages/fokus-icons/svg/hourglass.svg +1 -0
- package/packages/fokus-icons/svg/house-heart.svg +1 -0
- package/packages/fokus-icons/svg/house-plug.svg +1 -0
- package/packages/fokus-icons/svg/house-plus.svg +1 -0
- package/packages/fokus-icons/svg/house-wifi.svg +1 -0
- package/packages/fokus-icons/svg/house.svg +1 -0
- package/packages/fokus-icons/svg/ice-cream-2.svg +1 -0
- package/packages/fokus-icons/svg/ice-cream-bowl.svg +1 -0
- package/packages/fokus-icons/svg/ice-cream-cone.svg +1 -0
- package/packages/fokus-icons/svg/ice-cream.svg +1 -0
- package/packages/fokus-icons/svg/id-card-lanyard.svg +1 -0
- package/packages/fokus-icons/svg/id-card.svg +1 -0
- package/packages/fokus-icons/svg/image-down.svg +1 -0
- package/packages/fokus-icons/svg/image-minus.svg +1 -0
- package/packages/fokus-icons/svg/image-off.svg +1 -0
- package/packages/fokus-icons/svg/image-play.svg +1 -0
- package/packages/fokus-icons/svg/image-plus.svg +1 -0
- package/packages/fokus-icons/svg/image-up.svg +1 -0
- package/packages/fokus-icons/svg/image-upscale.svg +1 -0
- package/packages/fokus-icons/svg/image.svg +1 -0
- package/packages/fokus-icons/svg/images.svg +1 -0
- package/packages/fokus-icons/svg/import.svg +1 -0
- package/packages/fokus-icons/svg/inbox.svg +1 -0
- package/packages/fokus-icons/svg/indent-decrease.svg +1 -0
- package/packages/fokus-icons/svg/indent-increase.svg +1 -0
- package/packages/fokus-icons/svg/indent.svg +1 -0
- package/packages/fokus-icons/svg/indian-rupee.svg +1 -0
- package/packages/fokus-icons/svg/infinity.svg +1 -0
- package/packages/fokus-icons/svg/info.svg +1 -0
- package/packages/fokus-icons/svg/inspect.svg +1 -0
- package/packages/fokus-icons/svg/inspection-panel.svg +1 -0
- package/packages/fokus-icons/svg/italic.svg +1 -0
- package/packages/fokus-icons/svg/iteration-ccw.svg +1 -0
- package/packages/fokus-icons/svg/iteration-cw.svg +1 -0
- package/packages/fokus-icons/svg/japanese-yen.svg +1 -0
- package/packages/fokus-icons/svg/joystick.svg +1 -0
- package/packages/fokus-icons/svg/kanban-square-dashed.svg +1 -0
- package/packages/fokus-icons/svg/kanban-square.svg +1 -0
- package/packages/fokus-icons/svg/kanban.svg +1 -0
- package/packages/fokus-icons/svg/kayak.svg +1 -0
- package/packages/fokus-icons/svg/key-round.svg +1 -0
- package/packages/fokus-icons/svg/key-square.svg +1 -0
- package/packages/fokus-icons/svg/key.svg +1 -0
- package/packages/fokus-icons/svg/keyboard-music.svg +1 -0
- package/packages/fokus-icons/svg/keyboard-off.svg +1 -0
- package/packages/fokus-icons/svg/keyboard.svg +1 -0
- package/packages/fokus-icons/svg/lamp-ceiling.svg +1 -0
- package/packages/fokus-icons/svg/lamp-desk.svg +1 -0
- package/packages/fokus-icons/svg/lamp-floor.svg +1 -0
- package/packages/fokus-icons/svg/lamp-wall-down.svg +1 -0
- package/packages/fokus-icons/svg/lamp-wall-up.svg +1 -0
- package/packages/fokus-icons/svg/lamp.svg +1 -0
- package/packages/fokus-icons/svg/land-plot.svg +1 -0
- package/packages/fokus-icons/svg/landmark.svg +1 -0
- package/packages/fokus-icons/svg/languages.svg +1 -0
- package/packages/fokus-icons/svg/laptop-2.svg +1 -0
- package/packages/fokus-icons/svg/laptop-minimal-check.svg +1 -0
- package/packages/fokus-icons/svg/laptop-minimal.svg +1 -0
- package/packages/fokus-icons/svg/laptop.svg +1 -0
- package/packages/fokus-icons/svg/lasso-select.svg +1 -0
- package/packages/fokus-icons/svg/lasso.svg +1 -0
- package/packages/fokus-icons/svg/laugh.svg +1 -0
- package/packages/fokus-icons/svg/layers-2.svg +1 -0
- package/packages/fokus-icons/svg/layers-3.svg +1 -0
- package/packages/fokus-icons/svg/layers-minus.svg +1 -0
- package/packages/fokus-icons/svg/layers-plus.svg +1 -0
- package/packages/fokus-icons/svg/layers.svg +1 -0
- package/packages/fokus-icons/svg/layout-dashboard.svg +1 -0
- package/packages/fokus-icons/svg/layout-grid.svg +1 -0
- package/packages/fokus-icons/svg/layout-list.svg +1 -0
- package/packages/fokus-icons/svg/layout-panel-left.svg +1 -0
- package/packages/fokus-icons/svg/layout-panel-top.svg +1 -0
- package/packages/fokus-icons/svg/layout-template.svg +1 -0
- package/packages/fokus-icons/svg/layout.svg +1 -0
- package/packages/fokus-icons/svg/leaf.svg +1 -0
- package/packages/fokus-icons/svg/leafy-green.svg +1 -0
- package/packages/fokus-icons/svg/lectern.svg +1 -0
- package/packages/fokus-icons/svg/lens-concave.svg +1 -0
- package/packages/fokus-icons/svg/lens-convex.svg +1 -0
- package/packages/fokus-icons/svg/letter-text.svg +1 -0
- package/packages/fokus-icons/svg/library-big.svg +1 -0
- package/packages/fokus-icons/svg/library-square.svg +1 -0
- package/packages/fokus-icons/svg/library.svg +1 -0
- package/packages/fokus-icons/svg/life-buoy.svg +1 -0
- package/packages/fokus-icons/svg/ligature.svg +1 -0
- package/packages/fokus-icons/svg/lightbulb-off.svg +1 -0
- package/packages/fokus-icons/svg/lightbulb.svg +1 -0
- package/packages/fokus-icons/svg/line-chart.svg +1 -0
- package/packages/fokus-icons/svg/line-dot-right-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/line-squiggle.svg +1 -0
- package/packages/fokus-icons/svg/line-style.svg +1 -0
- package/packages/fokus-icons/svg/link-2-off.svg +1 -0
- package/packages/fokus-icons/svg/link-2.svg +1 -0
- package/packages/fokus-icons/svg/link.svg +1 -0
- package/packages/fokus-icons/svg/list-check.svg +1 -0
- package/packages/fokus-icons/svg/list-checks.svg +1 -0
- package/packages/fokus-icons/svg/list-chevrons-down-up.svg +1 -0
- package/packages/fokus-icons/svg/list-chevrons-up-down.svg +1 -0
- package/packages/fokus-icons/svg/list-collapse.svg +1 -0
- package/packages/fokus-icons/svg/list-end.svg +1 -0
- package/packages/fokus-icons/svg/list-filter-plus.svg +1 -0
- package/packages/fokus-icons/svg/list-filter.svg +1 -0
- package/packages/fokus-icons/svg/list-indent-decrease.svg +1 -0
- package/packages/fokus-icons/svg/list-indent-increase.svg +1 -0
- package/packages/fokus-icons/svg/list-minus.svg +1 -0
- package/packages/fokus-icons/svg/list-music.svg +1 -0
- package/packages/fokus-icons/svg/list-ordered.svg +1 -0
- package/packages/fokus-icons/svg/list-plus.svg +1 -0
- package/packages/fokus-icons/svg/list-restart.svg +1 -0
- package/packages/fokus-icons/svg/list-sort-ascending.svg +1 -0
- package/packages/fokus-icons/svg/list-sort-descending.svg +1 -0
- package/packages/fokus-icons/svg/list-start.svg +1 -0
- package/packages/fokus-icons/svg/list-todo.svg +1 -0
- package/packages/fokus-icons/svg/list-tree.svg +1 -0
- package/packages/fokus-icons/svg/list-video.svg +1 -0
- package/packages/fokus-icons/svg/list-x.svg +1 -0
- package/packages/fokus-icons/svg/list.svg +1 -0
- package/packages/fokus-icons/svg/loader-2.svg +1 -0
- package/packages/fokus-icons/svg/loader-circle.svg +1 -0
- package/packages/fokus-icons/svg/loader-pinwheel.svg +1 -0
- package/packages/fokus-icons/svg/loader.svg +1 -0
- package/packages/fokus-icons/svg/locate-fixed.svg +1 -0
- package/packages/fokus-icons/svg/locate-off.svg +1 -0
- package/packages/fokus-icons/svg/locate.svg +1 -0
- package/packages/fokus-icons/svg/location-edit.svg +1 -0
- package/packages/fokus-icons/svg/lock-keyhole-open.svg +1 -0
- package/packages/fokus-icons/svg/lock-keyhole.svg +1 -0
- package/packages/fokus-icons/svg/lock-open.svg +1 -0
- package/packages/fokus-icons/svg/lock.svg +1 -0
- package/packages/fokus-icons/svg/log-in.svg +1 -0
- package/packages/fokus-icons/svg/log-out.svg +1 -0
- package/packages/fokus-icons/svg/logs.svg +1 -0
- package/packages/fokus-icons/svg/lollipop.svg +1 -0
- package/packages/fokus-icons/svg/luggage.svg +1 -0
- package/packages/fokus-icons/svg/m-square.svg +1 -0
- package/packages/fokus-icons/svg/magnet.svg +1 -0
- package/packages/fokus-icons/svg/mail-check.svg +1 -0
- package/packages/fokus-icons/svg/mail-minus.svg +1 -0
- package/packages/fokus-icons/svg/mail-open.svg +1 -0
- package/packages/fokus-icons/svg/mail-plus.svg +1 -0
- package/packages/fokus-icons/svg/mail-question-mark.svg +1 -0
- package/packages/fokus-icons/svg/mail-question.svg +1 -0
- package/packages/fokus-icons/svg/mail-search.svg +1 -0
- package/packages/fokus-icons/svg/mail-warning.svg +1 -0
- package/packages/fokus-icons/svg/mail-x.svg +1 -0
- package/packages/fokus-icons/svg/mail.svg +1 -0
- package/packages/fokus-icons/svg/mailbox.svg +1 -0
- package/packages/fokus-icons/svg/mails.svg +1 -0
- package/packages/fokus-icons/svg/map-minus.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-check-inside.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-check.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-house.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-minus-inside.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-minus.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-off.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-pen.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-plus-inside.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-plus.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-search.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-x-inside.svg +1 -0
- package/packages/fokus-icons/svg/map-pin-x.svg +1 -0
- package/packages/fokus-icons/svg/map-pin.svg +1 -0
- package/packages/fokus-icons/svg/map-pinned.svg +1 -0
- package/packages/fokus-icons/svg/map-plus.svg +1 -0
- package/packages/fokus-icons/svg/map.svg +1 -0
- package/packages/fokus-icons/svg/mars-stroke.svg +1 -0
- package/packages/fokus-icons/svg/mars.svg +1 -0
- package/packages/fokus-icons/svg/martini.svg +1 -0
- package/packages/fokus-icons/svg/maximize-2.svg +1 -0
- package/packages/fokus-icons/svg/maximize.svg +1 -0
- package/packages/fokus-icons/svg/medal.svg +1 -0
- package/packages/fokus-icons/svg/megaphone-off.svg +1 -0
- package/packages/fokus-icons/svg/megaphone.svg +1 -0
- package/packages/fokus-icons/svg/meh.svg +1 -0
- package/packages/fokus-icons/svg/memory-stick.svg +1 -0
- package/packages/fokus-icons/svg/menu-square.svg +1 -0
- package/packages/fokus-icons/svg/menu.svg +1 -0
- package/packages/fokus-icons/svg/merge.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-check.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-code.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-dashed.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-heart.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-more.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-off.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-plus.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-question-mark.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-question.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-reply.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-warning.svg +1 -0
- package/packages/fokus-icons/svg/message-circle-x.svg +1 -0
- package/packages/fokus-icons/svg/message-circle.svg +1 -0
- package/packages/fokus-icons/svg/message-square-check.svg +1 -0
- package/packages/fokus-icons/svg/message-square-code.svg +1 -0
- package/packages/fokus-icons/svg/message-square-dashed.svg +1 -0
- package/packages/fokus-icons/svg/message-square-diff.svg +1 -0
- package/packages/fokus-icons/svg/message-square-dot.svg +1 -0
- package/packages/fokus-icons/svg/message-square-heart.svg +1 -0
- package/packages/fokus-icons/svg/message-square-lock.svg +1 -0
- package/packages/fokus-icons/svg/message-square-more.svg +1 -0
- package/packages/fokus-icons/svg/message-square-off.svg +1 -0
- package/packages/fokus-icons/svg/message-square-plus.svg +1 -0
- package/packages/fokus-icons/svg/message-square-quote.svg +1 -0
- package/packages/fokus-icons/svg/message-square-reply.svg +1 -0
- package/packages/fokus-icons/svg/message-square-share.svg +1 -0
- package/packages/fokus-icons/svg/message-square-text.svg +1 -0
- package/packages/fokus-icons/svg/message-square-warning.svg +1 -0
- package/packages/fokus-icons/svg/message-square-x.svg +1 -0
- package/packages/fokus-icons/svg/message-square.svg +1 -0
- package/packages/fokus-icons/svg/messages-square.svg +1 -0
- package/packages/fokus-icons/svg/metronome.svg +1 -0
- package/packages/fokus-icons/svg/mic-2.svg +1 -0
- package/packages/fokus-icons/svg/mic-off.svg +1 -0
- package/packages/fokus-icons/svg/mic-vocal.svg +1 -0
- package/packages/fokus-icons/svg/mic.svg +1 -0
- package/packages/fokus-icons/svg/microchip.svg +1 -0
- package/packages/fokus-icons/svg/microscope.svg +1 -0
- package/packages/fokus-icons/svg/microwave.svg +1 -0
- package/packages/fokus-icons/svg/milestone.svg +1 -0
- package/packages/fokus-icons/svg/milk-off.svg +1 -0
- package/packages/fokus-icons/svg/milk.svg +1 -0
- package/packages/fokus-icons/svg/minimize-2.svg +1 -0
- package/packages/fokus-icons/svg/minimize.svg +1 -0
- package/packages/fokus-icons/svg/minus-circle.svg +1 -0
- package/packages/fokus-icons/svg/minus-square.svg +1 -0
- package/packages/fokus-icons/svg/minus.svg +1 -0
- package/packages/fokus-icons/svg/mirror-rectangular.svg +1 -0
- package/packages/fokus-icons/svg/mirror-round.svg +1 -0
- package/packages/fokus-icons/svg/monitor-check.svg +1 -0
- package/packages/fokus-icons/svg/monitor-cloud.svg +1 -0
- package/packages/fokus-icons/svg/monitor-cog.svg +1 -0
- package/packages/fokus-icons/svg/monitor-dot.svg +1 -0
- package/packages/fokus-icons/svg/monitor-down.svg +1 -0
- package/packages/fokus-icons/svg/monitor-off.svg +1 -0
- package/packages/fokus-icons/svg/monitor-pause.svg +1 -0
- package/packages/fokus-icons/svg/monitor-play.svg +1 -0
- package/packages/fokus-icons/svg/monitor-smartphone.svg +1 -0
- package/packages/fokus-icons/svg/monitor-speaker.svg +1 -0
- package/packages/fokus-icons/svg/monitor-stop.svg +1 -0
- package/packages/fokus-icons/svg/monitor-up.svg +1 -0
- package/packages/fokus-icons/svg/monitor-x.svg +1 -0
- package/packages/fokus-icons/svg/monitor.svg +1 -0
- package/packages/fokus-icons/svg/moon-star.svg +1 -0
- package/packages/fokus-icons/svg/moon.svg +1 -0
- package/packages/fokus-icons/svg/more-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/more-vertical.svg +1 -0
- package/packages/fokus-icons/svg/motorbike.svg +1 -0
- package/packages/fokus-icons/svg/mountain-snow.svg +1 -0
- package/packages/fokus-icons/svg/mountain.svg +1 -0
- package/packages/fokus-icons/svg/mouse-left.svg +1 -0
- package/packages/fokus-icons/svg/mouse-off.svg +1 -0
- package/packages/fokus-icons/svg/mouse-pointer-2-off.svg +1 -0
- package/packages/fokus-icons/svg/mouse-pointer-2.svg +1 -0
- package/packages/fokus-icons/svg/mouse-pointer-ban.svg +1 -0
- package/packages/fokus-icons/svg/mouse-pointer-click.svg +1 -0
- package/packages/fokus-icons/svg/mouse-pointer-square-dashed.svg +1 -0
- package/packages/fokus-icons/svg/mouse-pointer.svg +1 -0
- package/packages/fokus-icons/svg/mouse-right.svg +1 -0
- package/packages/fokus-icons/svg/mouse.svg +1 -0
- package/packages/fokus-icons/svg/move-3-d.svg +1 -0
- package/packages/fokus-icons/svg/move-3d.svg +1 -0
- package/packages/fokus-icons/svg/move-diagonal-2.svg +1 -0
- package/packages/fokus-icons/svg/move-diagonal.svg +1 -0
- package/packages/fokus-icons/svg/move-down-left.svg +1 -0
- package/packages/fokus-icons/svg/move-down-right.svg +1 -0
- package/packages/fokus-icons/svg/move-down.svg +1 -0
- package/packages/fokus-icons/svg/move-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/move-left.svg +1 -0
- package/packages/fokus-icons/svg/move-right.svg +1 -0
- package/packages/fokus-icons/svg/move-up-left.svg +1 -0
- package/packages/fokus-icons/svg/move-up-right.svg +1 -0
- package/packages/fokus-icons/svg/move-up.svg +1 -0
- package/packages/fokus-icons/svg/move-vertical.svg +1 -0
- package/packages/fokus-icons/svg/move.svg +1 -0
- package/packages/fokus-icons/svg/music-2.svg +1 -0
- package/packages/fokus-icons/svg/music-3.svg +1 -0
- package/packages/fokus-icons/svg/music-4.svg +1 -0
- package/packages/fokus-icons/svg/music.svg +1 -0
- package/packages/fokus-icons/svg/navigation-2-off.svg +1 -0
- package/packages/fokus-icons/svg/navigation-2.svg +1 -0
- package/packages/fokus-icons/svg/navigation-off.svg +1 -0
- package/packages/fokus-icons/svg/navigation.svg +1 -0
- package/packages/fokus-icons/svg/network.svg +1 -0
- package/packages/fokus-icons/svg/newspaper.svg +1 -0
- package/packages/fokus-icons/svg/nfc.svg +1 -0
- package/packages/fokus-icons/svg/non-binary.svg +1 -0
- package/packages/fokus-icons/svg/notebook-pen.svg +1 -0
- package/packages/fokus-icons/svg/notebook-tabs.svg +1 -0
- package/packages/fokus-icons/svg/notebook-text.svg +1 -0
- package/packages/fokus-icons/svg/notebook.svg +1 -0
- package/packages/fokus-icons/svg/notepad-text-dashed.svg +1 -0
- package/packages/fokus-icons/svg/notepad-text.svg +1 -0
- package/packages/fokus-icons/svg/nut-off.svg +1 -0
- package/packages/fokus-icons/svg/nut.svg +1 -0
- package/packages/fokus-icons/svg/octagon-alert.svg +1 -0
- package/packages/fokus-icons/svg/octagon-minus.svg +1 -0
- package/packages/fokus-icons/svg/octagon-pause.svg +1 -0
- package/packages/fokus-icons/svg/octagon-x.svg +1 -0
- package/packages/fokus-icons/svg/octagon.svg +1 -0
- package/packages/fokus-icons/svg/omega.svg +1 -0
- package/packages/fokus-icons/svg/option.svg +1 -0
- package/packages/fokus-icons/svg/orbit.svg +1 -0
- package/packages/fokus-icons/svg/origami.svg +1 -0
- package/packages/fokus-icons/svg/outdent.svg +1 -0
- package/packages/fokus-icons/svg/package-2.svg +1 -0
- package/packages/fokus-icons/svg/package-check.svg +1 -0
- package/packages/fokus-icons/svg/package-minus.svg +1 -0
- package/packages/fokus-icons/svg/package-open.svg +1 -0
- package/packages/fokus-icons/svg/package-plus.svg +1 -0
- package/packages/fokus-icons/svg/package-search.svg +1 -0
- package/packages/fokus-icons/svg/package-x.svg +1 -0
- package/packages/fokus-icons/svg/package.svg +1 -0
- package/packages/fokus-icons/svg/paint-bucket.svg +1 -0
- package/packages/fokus-icons/svg/paint-roller.svg +1 -0
- package/packages/fokus-icons/svg/paintbrush-2.svg +1 -0
- package/packages/fokus-icons/svg/paintbrush-vertical.svg +1 -0
- package/packages/fokus-icons/svg/paintbrush.svg +1 -0
- package/packages/fokus-icons/svg/palette.svg +1 -0
- package/packages/fokus-icons/svg/palmtree.svg +1 -0
- package/packages/fokus-icons/svg/panda.svg +1 -0
- package/packages/fokus-icons/svg/panel-bottom-close.svg +1 -0
- package/packages/fokus-icons/svg/panel-bottom-dashed.svg +1 -0
- package/packages/fokus-icons/svg/panel-bottom-inactive.svg +1 -0
- package/packages/fokus-icons/svg/panel-bottom-open.svg +1 -0
- package/packages/fokus-icons/svg/panel-bottom.svg +1 -0
- package/packages/fokus-icons/svg/panel-left-close.svg +1 -0
- package/packages/fokus-icons/svg/panel-left-dashed.svg +1 -0
- package/packages/fokus-icons/svg/panel-left-inactive.svg +1 -0
- package/packages/fokus-icons/svg/panel-left-open.svg +1 -0
- package/packages/fokus-icons/svg/panel-left-right-dashed.svg +1 -0
- package/packages/fokus-icons/svg/panel-left.svg +1 -0
- package/packages/fokus-icons/svg/panel-right-close.svg +1 -0
- package/packages/fokus-icons/svg/panel-right-dashed.svg +1 -0
- package/packages/fokus-icons/svg/panel-right-inactive.svg +1 -0
- package/packages/fokus-icons/svg/panel-right-open.svg +1 -0
- package/packages/fokus-icons/svg/panel-right.svg +1 -0
- package/packages/fokus-icons/svg/panel-top-bottom-dashed.svg +1 -0
- package/packages/fokus-icons/svg/panel-top-close.svg +1 -0
- package/packages/fokus-icons/svg/panel-top-dashed.svg +1 -0
- package/packages/fokus-icons/svg/panel-top-inactive.svg +1 -0
- package/packages/fokus-icons/svg/panel-top-open.svg +1 -0
- package/packages/fokus-icons/svg/panel-top.svg +1 -0
- package/packages/fokus-icons/svg/panels-left-bottom.svg +1 -0
- package/packages/fokus-icons/svg/panels-left-right.svg +1 -0
- package/packages/fokus-icons/svg/panels-right-bottom.svg +1 -0
- package/packages/fokus-icons/svg/panels-top-bottom.svg +1 -0
- package/packages/fokus-icons/svg/panels-top-left.svg +1 -0
- package/packages/fokus-icons/svg/paper-bag.svg +1 -0
- package/packages/fokus-icons/svg/paperclip.svg +1 -0
- package/packages/fokus-icons/svg/parasol.svg +1 -0
- package/packages/fokus-icons/svg/parentheses.svg +1 -0
- package/packages/fokus-icons/svg/parking-circle-off.svg +1 -0
- package/packages/fokus-icons/svg/parking-circle.svg +1 -0
- package/packages/fokus-icons/svg/parking-meter.svg +1 -0
- package/packages/fokus-icons/svg/parking-square-off.svg +1 -0
- package/packages/fokus-icons/svg/parking-square.svg +1 -0
- package/packages/fokus-icons/svg/party-popper.svg +1 -0
- package/packages/fokus-icons/svg/pause-circle.svg +1 -0
- package/packages/fokus-icons/svg/pause-octagon.svg +1 -0
- package/packages/fokus-icons/svg/pause.svg +1 -0
- package/packages/fokus-icons/svg/paw-print.svg +1 -0
- package/packages/fokus-icons/svg/pc-case.svg +1 -0
- package/packages/fokus-icons/svg/pen-box.svg +1 -0
- package/packages/fokus-icons/svg/pen-line.svg +1 -0
- package/packages/fokus-icons/svg/pen-off.svg +1 -0
- package/packages/fokus-icons/svg/pen-square.svg +1 -0
- package/packages/fokus-icons/svg/pen-tool.svg +1 -0
- package/packages/fokus-icons/svg/pen.svg +1 -0
- package/packages/fokus-icons/svg/pencil-line.svg +1 -0
- package/packages/fokus-icons/svg/pencil-off.svg +1 -0
- package/packages/fokus-icons/svg/pencil-ruler.svg +1 -0
- package/packages/fokus-icons/svg/pencil-sparkles.svg +1 -0
- package/packages/fokus-icons/svg/pencil.svg +1 -0
- package/packages/fokus-icons/svg/pentagon.svg +1 -0
- package/packages/fokus-icons/svg/percent-circle.svg +1 -0
- package/packages/fokus-icons/svg/percent-diamond.svg +1 -0
- package/packages/fokus-icons/svg/percent-square.svg +1 -0
- package/packages/fokus-icons/svg/percent.svg +1 -0
- package/packages/fokus-icons/svg/person-standing.svg +1 -0
- package/packages/fokus-icons/svg/phi.svg +1 -0
- package/packages/fokus-icons/svg/philippine-peso.svg +1 -0
- package/packages/fokus-icons/svg/phone-call.svg +1 -0
- package/packages/fokus-icons/svg/phone-forwarded.svg +1 -0
- package/packages/fokus-icons/svg/phone-incoming.svg +1 -0
- package/packages/fokus-icons/svg/phone-missed.svg +1 -0
- package/packages/fokus-icons/svg/phone-off.svg +1 -0
- package/packages/fokus-icons/svg/phone-outgoing.svg +1 -0
- package/packages/fokus-icons/svg/phone.svg +1 -0
- package/packages/fokus-icons/svg/pi-square.svg +1 -0
- package/packages/fokus-icons/svg/pi.svg +1 -0
- package/packages/fokus-icons/svg/piano.svg +1 -0
- package/packages/fokus-icons/svg/pickaxe.svg +1 -0
- package/packages/fokus-icons/svg/picture-in-picture-2.svg +1 -0
- package/packages/fokus-icons/svg/picture-in-picture.svg +1 -0
- package/packages/fokus-icons/svg/pie-chart.svg +1 -0
- package/packages/fokus-icons/svg/piggy-bank.svg +1 -0
- package/packages/fokus-icons/svg/pilcrow-left.svg +1 -0
- package/packages/fokus-icons/svg/pilcrow-right.svg +1 -0
- package/packages/fokus-icons/svg/pilcrow-square.svg +1 -0
- package/packages/fokus-icons/svg/pilcrow.svg +1 -0
- package/packages/fokus-icons/svg/pill-bottle.svg +1 -0
- package/packages/fokus-icons/svg/pill.svg +1 -0
- package/packages/fokus-icons/svg/pin-off.svg +1 -0
- package/packages/fokus-icons/svg/pin.svg +1 -0
- package/packages/fokus-icons/svg/pipette.svg +1 -0
- package/packages/fokus-icons/svg/pizza.svg +1 -0
- package/packages/fokus-icons/svg/plane-landing.svg +1 -0
- package/packages/fokus-icons/svg/plane-takeoff.svg +1 -0
- package/packages/fokus-icons/svg/plane.svg +1 -0
- package/packages/fokus-icons/svg/play-circle.svg +1 -0
- package/packages/fokus-icons/svg/play-off.svg +1 -0
- package/packages/fokus-icons/svg/play-square.svg +1 -0
- package/packages/fokus-icons/svg/play.svg +1 -0
- package/packages/fokus-icons/svg/plug-2.svg +1 -0
- package/packages/fokus-icons/svg/plug-zap-2.svg +1 -0
- package/packages/fokus-icons/svg/plug-zap.svg +1 -0
- package/packages/fokus-icons/svg/plug.svg +1 -0
- package/packages/fokus-icons/svg/plus-circle.svg +1 -0
- package/packages/fokus-icons/svg/plus-square.svg +1 -0
- package/packages/fokus-icons/svg/plus.svg +1 -0
- package/packages/fokus-icons/svg/pocket-knife.svg +1 -0
- package/packages/fokus-icons/svg/podcast.svg +1 -0
- package/packages/fokus-icons/svg/podium.svg +1 -0
- package/packages/fokus-icons/svg/pointer-off.svg +1 -0
- package/packages/fokus-icons/svg/pointer.svg +1 -0
- package/packages/fokus-icons/svg/popcorn.svg +1 -0
- package/packages/fokus-icons/svg/popsicle.svg +1 -0
- package/packages/fokus-icons/svg/pound-sterling.svg +1 -0
- package/packages/fokus-icons/svg/power-circle.svg +1 -0
- package/packages/fokus-icons/svg/power-off.svg +1 -0
- package/packages/fokus-icons/svg/power-square.svg +1 -0
- package/packages/fokus-icons/svg/power.svg +1 -0
- package/packages/fokus-icons/svg/presentation.svg +1 -0
- package/packages/fokus-icons/svg/printer-check.svg +1 -0
- package/packages/fokus-icons/svg/printer-x.svg +1 -0
- package/packages/fokus-icons/svg/printer.svg +1 -0
- package/packages/fokus-icons/svg/projector.svg +1 -0
- package/packages/fokus-icons/svg/proportions.svg +1 -0
- package/packages/fokus-icons/svg/puzzle.svg +1 -0
- package/packages/fokus-icons/svg/pyramid.svg +1 -0
- package/packages/fokus-icons/svg/qr-code.svg +1 -0
- package/packages/fokus-icons/svg/quote.svg +1 -0
- package/packages/fokus-icons/svg/rabbit.svg +1 -0
- package/packages/fokus-icons/svg/radar.svg +1 -0
- package/packages/fokus-icons/svg/radiation.svg +1 -0
- package/packages/fokus-icons/svg/radical.svg +1 -0
- package/packages/fokus-icons/svg/radio-off.svg +1 -0
- package/packages/fokus-icons/svg/radio-receiver.svg +1 -0
- package/packages/fokus-icons/svg/radio-tower.svg +1 -0
- package/packages/fokus-icons/svg/radio.svg +1 -0
- package/packages/fokus-icons/svg/radius.svg +1 -0
- package/packages/fokus-icons/svg/rainbow.svg +1 -0
- package/packages/fokus-icons/svg/rat.svg +1 -0
- package/packages/fokus-icons/svg/ratio.svg +1 -0
- package/packages/fokus-icons/svg/receipt-cent.svg +1 -0
- package/packages/fokus-icons/svg/receipt-euro.svg +1 -0
- package/packages/fokus-icons/svg/receipt-indian-rupee.svg +1 -0
- package/packages/fokus-icons/svg/receipt-japanese-yen.svg +1 -0
- package/packages/fokus-icons/svg/receipt-pound-sterling.svg +1 -0
- package/packages/fokus-icons/svg/receipt-russian-ruble.svg +1 -0
- package/packages/fokus-icons/svg/receipt-swiss-franc.svg +1 -0
- package/packages/fokus-icons/svg/receipt-text.svg +1 -0
- package/packages/fokus-icons/svg/receipt-turkish-lira.svg +1 -0
- package/packages/fokus-icons/svg/receipt.svg +1 -0
- package/packages/fokus-icons/svg/rectangle-circle.svg +1 -0
- package/packages/fokus-icons/svg/rectangle-ellipsis.svg +1 -0
- package/packages/fokus-icons/svg/rectangle-goggles.svg +1 -0
- package/packages/fokus-icons/svg/rectangle-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/rectangle-vertical.svg +1 -0
- package/packages/fokus-icons/svg/recycle.svg +1 -0
- package/packages/fokus-icons/svg/redo-2.svg +1 -0
- package/packages/fokus-icons/svg/redo-dot.svg +1 -0
- package/packages/fokus-icons/svg/redo.svg +1 -0
- package/packages/fokus-icons/svg/refresh-ccw-dot.svg +1 -0
- package/packages/fokus-icons/svg/refresh-ccw.svg +1 -0
- package/packages/fokus-icons/svg/refresh-cw-off.svg +1 -0
- package/packages/fokus-icons/svg/refresh-cw.svg +1 -0
- package/packages/fokus-icons/svg/refrigerator.svg +1 -0
- package/packages/fokus-icons/svg/regex.svg +1 -0
- package/packages/fokus-icons/svg/remove-formatting.svg +1 -0
- package/packages/fokus-icons/svg/repeat-1.svg +1 -0
- package/packages/fokus-icons/svg/repeat-2.svg +1 -0
- package/packages/fokus-icons/svg/repeat-off.svg +1 -0
- package/packages/fokus-icons/svg/repeat.svg +1 -0
- package/packages/fokus-icons/svg/replace-all.svg +1 -0
- package/packages/fokus-icons/svg/replace.svg +1 -0
- package/packages/fokus-icons/svg/reply-all.svg +1 -0
- package/packages/fokus-icons/svg/reply.svg +1 -0
- package/packages/fokus-icons/svg/rewind.svg +1 -0
- package/packages/fokus-icons/svg/ribbon.svg +1 -0
- package/packages/fokus-icons/svg/road.svg +1 -0
- package/packages/fokus-icons/svg/rocket.svg +1 -0
- package/packages/fokus-icons/svg/rocking-chair.svg +1 -0
- package/packages/fokus-icons/svg/roller-coaster.svg +1 -0
- package/packages/fokus-icons/svg/rose.svg +1 -0
- package/packages/fokus-icons/svg/rotate-3-d.svg +1 -0
- package/packages/fokus-icons/svg/rotate-3d.svg +1 -0
- package/packages/fokus-icons/svg/rotate-ccw-key.svg +1 -0
- package/packages/fokus-icons/svg/rotate-ccw-square.svg +1 -0
- package/packages/fokus-icons/svg/rotate-ccw.svg +1 -0
- package/packages/fokus-icons/svg/rotate-cw-square.svg +1 -0
- package/packages/fokus-icons/svg/rotate-cw.svg +1 -0
- package/packages/fokus-icons/svg/route-off.svg +1 -0
- package/packages/fokus-icons/svg/route.svg +1 -0
- package/packages/fokus-icons/svg/router.svg +1 -0
- package/packages/fokus-icons/svg/rows-2.svg +1 -0
- package/packages/fokus-icons/svg/rows-3.svg +1 -0
- package/packages/fokus-icons/svg/rows-4.svg +1 -0
- package/packages/fokus-icons/svg/rows.svg +1 -0
- package/packages/fokus-icons/svg/rss.svg +1 -0
- package/packages/fokus-icons/svg/ruler-dimension-line.svg +1 -0
- package/packages/fokus-icons/svg/ruler.svg +1 -0
- package/packages/fokus-icons/svg/russian-ruble.svg +1 -0
- package/packages/fokus-icons/svg/sailboat.svg +1 -0
- package/packages/fokus-icons/svg/salad.svg +1 -0
- package/packages/fokus-icons/svg/sandwich.svg +1 -0
- package/packages/fokus-icons/svg/satellite-dish.svg +1 -0
- package/packages/fokus-icons/svg/satellite.svg +1 -0
- package/packages/fokus-icons/svg/saudi-riyal.svg +1 -0
- package/packages/fokus-icons/svg/save-all.svg +1 -0
- package/packages/fokus-icons/svg/save-check.svg +1 -0
- package/packages/fokus-icons/svg/save-off.svg +1 -0
- package/packages/fokus-icons/svg/save-pen.svg +1 -0
- package/packages/fokus-icons/svg/save-plus.svg +1 -0
- package/packages/fokus-icons/svg/save.svg +1 -0
- package/packages/fokus-icons/svg/scale-3-d.svg +1 -0
- package/packages/fokus-icons/svg/scale-3d.svg +1 -0
- package/packages/fokus-icons/svg/scale.svg +1 -0
- package/packages/fokus-icons/svg/scaling.svg +1 -0
- package/packages/fokus-icons/svg/scan-barcode.svg +1 -0
- package/packages/fokus-icons/svg/scan-eye.svg +1 -0
- package/packages/fokus-icons/svg/scan-face.svg +1 -0
- package/packages/fokus-icons/svg/scan-heart.svg +1 -0
- package/packages/fokus-icons/svg/scan-line.svg +1 -0
- package/packages/fokus-icons/svg/scan-qr-code.svg +1 -0
- package/packages/fokus-icons/svg/scan-search.svg +1 -0
- package/packages/fokus-icons/svg/scan-text.svg +1 -0
- package/packages/fokus-icons/svg/scan.svg +1 -0
- package/packages/fokus-icons/svg/scatter-chart.svg +1 -0
- package/packages/fokus-icons/svg/school-2.svg +1 -0
- package/packages/fokus-icons/svg/school.svg +1 -0
- package/packages/fokus-icons/svg/scissors-line-dashed.svg +1 -0
- package/packages/fokus-icons/svg/scissors-square-dashed-bottom.svg +1 -0
- package/packages/fokus-icons/svg/scissors-square.svg +1 -0
- package/packages/fokus-icons/svg/scissors.svg +1 -0
- package/packages/fokus-icons/svg/scooter.svg +1 -0
- package/packages/fokus-icons/svg/screen-share-off.svg +1 -0
- package/packages/fokus-icons/svg/screen-share.svg +1 -0
- package/packages/fokus-icons/svg/scroll-text.svg +1 -0
- package/packages/fokus-icons/svg/scroll.svg +1 -0
- package/packages/fokus-icons/svg/search-alert.svg +1 -0
- package/packages/fokus-icons/svg/search-check.svg +1 -0
- package/packages/fokus-icons/svg/search-code.svg +1 -0
- package/packages/fokus-icons/svg/search-slash.svg +1 -0
- package/packages/fokus-icons/svg/search-x.svg +1 -0
- package/packages/fokus-icons/svg/search.svg +1 -0
- package/packages/fokus-icons/svg/section.svg +1 -0
- package/packages/fokus-icons/svg/send-horizonal.svg +1 -0
- package/packages/fokus-icons/svg/send-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/send-to-back.svg +1 -0
- package/packages/fokus-icons/svg/send.svg +1 -0
- package/packages/fokus-icons/svg/separator-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/separator-vertical.svg +1 -0
- package/packages/fokus-icons/svg/server-cog.svg +1 -0
- package/packages/fokus-icons/svg/server-crash.svg +1 -0
- package/packages/fokus-icons/svg/server-off.svg +1 -0
- package/packages/fokus-icons/svg/server.svg +1 -0
- package/packages/fokus-icons/svg/settings-2.svg +1 -0
- package/packages/fokus-icons/svg/settings.svg +1 -0
- package/packages/fokus-icons/svg/shapes.svg +1 -0
- package/packages/fokus-icons/svg/share-2.svg +1 -0
- package/packages/fokus-icons/svg/share.svg +1 -0
- package/packages/fokus-icons/svg/sheet.svg +1 -0
- package/packages/fokus-icons/svg/shell.svg +1 -0
- package/packages/fokus-icons/svg/shelving-unit.svg +1 -0
- package/packages/fokus-icons/svg/shield-alert.svg +1 -0
- package/packages/fokus-icons/svg/shield-ban.svg +1 -0
- package/packages/fokus-icons/svg/shield-check.svg +1 -0
- package/packages/fokus-icons/svg/shield-close.svg +1 -0
- package/packages/fokus-icons/svg/shield-cog-corner.svg +1 -0
- package/packages/fokus-icons/svg/shield-cog.svg +1 -0
- package/packages/fokus-icons/svg/shield-ellipsis.svg +1 -0
- package/packages/fokus-icons/svg/shield-half.svg +1 -0
- package/packages/fokus-icons/svg/shield-minus.svg +1 -0
- package/packages/fokus-icons/svg/shield-off.svg +1 -0
- package/packages/fokus-icons/svg/shield-plus.svg +1 -0
- package/packages/fokus-icons/svg/shield-question-mark.svg +1 -0
- package/packages/fokus-icons/svg/shield-question.svg +1 -0
- package/packages/fokus-icons/svg/shield-user.svg +1 -0
- package/packages/fokus-icons/svg/shield-x.svg +1 -0
- package/packages/fokus-icons/svg/shield.svg +1 -0
- package/packages/fokus-icons/svg/ship-wheel.svg +1 -0
- package/packages/fokus-icons/svg/ship.svg +1 -0
- package/packages/fokus-icons/svg/shirt.svg +1 -0
- package/packages/fokus-icons/svg/shopping-bag.svg +1 -0
- package/packages/fokus-icons/svg/shopping-basket.svg +1 -0
- package/packages/fokus-icons/svg/shopping-cart.svg +1 -0
- package/packages/fokus-icons/svg/shovel.svg +1 -0
- package/packages/fokus-icons/svg/shower-head.svg +1 -0
- package/packages/fokus-icons/svg/shredder.svg +1 -0
- package/packages/fokus-icons/svg/shrimp.svg +1 -0
- package/packages/fokus-icons/svg/shrink.svg +1 -0
- package/packages/fokus-icons/svg/shrub.svg +1 -0
- package/packages/fokus-icons/svg/shuffle.svg +1 -0
- package/packages/fokus-icons/svg/sidebar-close.svg +1 -0
- package/packages/fokus-icons/svg/sidebar-open.svg +1 -0
- package/packages/fokus-icons/svg/sidebar.svg +1 -0
- package/packages/fokus-icons/svg/sigma-square.svg +1 -0
- package/packages/fokus-icons/svg/sigma.svg +1 -0
- package/packages/fokus-icons/svg/signal-high.svg +1 -0
- package/packages/fokus-icons/svg/signal-low.svg +1 -0
- package/packages/fokus-icons/svg/signal-medium.svg +1 -0
- package/packages/fokus-icons/svg/signal-zero.svg +1 -0
- package/packages/fokus-icons/svg/signal.svg +1 -0
- package/packages/fokus-icons/svg/signature.svg +1 -0
- package/packages/fokus-icons/svg/signpost-big.svg +1 -0
- package/packages/fokus-icons/svg/signpost.svg +1 -0
- package/packages/fokus-icons/svg/siren.svg +1 -0
- package/packages/fokus-icons/svg/skip-back.svg +1 -0
- package/packages/fokus-icons/svg/skip-forward.svg +1 -0
- package/packages/fokus-icons/svg/skull.svg +1 -0
- package/packages/fokus-icons/svg/slash-square.svg +1 -0
- package/packages/fokus-icons/svg/slash.svg +1 -0
- package/packages/fokus-icons/svg/slice.svg +1 -0
- package/packages/fokus-icons/svg/sliders-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/sliders-vertical.svg +1 -0
- package/packages/fokus-icons/svg/sliders.svg +1 -0
- package/packages/fokus-icons/svg/smartphone-charging.svg +1 -0
- package/packages/fokus-icons/svg/smartphone-nfc.svg +1 -0
- package/packages/fokus-icons/svg/smartphone.svg +1 -0
- package/packages/fokus-icons/svg/smile-plus.svg +1 -0
- package/packages/fokus-icons/svg/smile.svg +1 -0
- package/packages/fokus-icons/svg/snail.svg +1 -0
- package/packages/fokus-icons/svg/snowflake.svg +1 -0
- package/packages/fokus-icons/svg/soap-dispenser-droplet.svg +1 -0
- package/packages/fokus-icons/svg/sofa.svg +1 -0
- package/packages/fokus-icons/svg/solar-panel.svg +1 -0
- package/packages/fokus-icons/svg/sort-asc.svg +1 -0
- package/packages/fokus-icons/svg/sort-desc.svg +1 -0
- package/packages/fokus-icons/svg/soup.svg +1 -0
- package/packages/fokus-icons/svg/space.svg +1 -0
- package/packages/fokus-icons/svg/spade.svg +1 -0
- package/packages/fokus-icons/svg/sparkle.svg +1 -0
- package/packages/fokus-icons/svg/sparkles.svg +1 -0
- package/packages/fokus-icons/svg/speaker.svg +1 -0
- package/packages/fokus-icons/svg/speech.svg +1 -0
- package/packages/fokus-icons/svg/spell-check-2.svg +1 -0
- package/packages/fokus-icons/svg/spell-check.svg +1 -0
- package/packages/fokus-icons/svg/spline-pointer.svg +1 -0
- package/packages/fokus-icons/svg/spline.svg +1 -0
- package/packages/fokus-icons/svg/split-square-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/split-square-vertical.svg +1 -0
- package/packages/fokus-icons/svg/split.svg +1 -0
- package/packages/fokus-icons/svg/spool.svg +1 -0
- package/packages/fokus-icons/svg/sport-shoe.svg +1 -0
- package/packages/fokus-icons/svg/spotlight.svg +1 -0
- package/packages/fokus-icons/svg/spray-can.svg +1 -0
- package/packages/fokus-icons/svg/sprout.svg +1 -0
- package/packages/fokus-icons/svg/square-activity.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-down-left.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-down-right.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-down.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-left.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-out-down-left.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-out-down-right.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-out-up-left.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-out-up-right.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-right-enter.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-right-exit.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-right.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-up-left.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-up-right.svg +1 -0
- package/packages/fokus-icons/svg/square-arrow-up.svg +1 -0
- package/packages/fokus-icons/svg/square-asterisk.svg +1 -0
- package/packages/fokus-icons/svg/square-bottom-dashed-scissors.svg +1 -0
- package/packages/fokus-icons/svg/square-centerline-dashed-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/square-centerline-dashed-vertical.svg +1 -0
- package/packages/fokus-icons/svg/square-chart-gantt.svg +1 -0
- package/packages/fokus-icons/svg/square-check-big.svg +1 -0
- package/packages/fokus-icons/svg/square-check.svg +1 -0
- package/packages/fokus-icons/svg/square-chevron-down.svg +1 -0
- package/packages/fokus-icons/svg/square-chevron-left.svg +1 -0
- package/packages/fokus-icons/svg/square-chevron-right.svg +1 -0
- package/packages/fokus-icons/svg/square-chevron-up.svg +1 -0
- package/packages/fokus-icons/svg/square-code.svg +1 -0
- package/packages/fokus-icons/svg/square-dashed-bottom-code.svg +1 -0
- package/packages/fokus-icons/svg/square-dashed-bottom.svg +1 -0
- package/packages/fokus-icons/svg/square-dashed-kanban.svg +1 -0
- package/packages/fokus-icons/svg/square-dashed-mouse-pointer.svg +1 -0
- package/packages/fokus-icons/svg/square-dashed-text.svg +1 -0
- package/packages/fokus-icons/svg/square-dashed-top-solid.svg +1 -0
- package/packages/fokus-icons/svg/square-dashed.svg +1 -0
- package/packages/fokus-icons/svg/square-divide.svg +1 -0
- package/packages/fokus-icons/svg/square-dot.svg +1 -0
- package/packages/fokus-icons/svg/square-equal.svg +1 -0
- package/packages/fokus-icons/svg/square-function.svg +1 -0
- package/packages/fokus-icons/svg/square-gantt-chart.svg +1 -0
- package/packages/fokus-icons/svg/square-kanban.svg +1 -0
- package/packages/fokus-icons/svg/square-library.svg +1 -0
- package/packages/fokus-icons/svg/square-m.svg +1 -0
- package/packages/fokus-icons/svg/square-menu.svg +1 -0
- package/packages/fokus-icons/svg/square-minus.svg +1 -0
- package/packages/fokus-icons/svg/square-mouse-pointer.svg +1 -0
- package/packages/fokus-icons/svg/square-parking-off.svg +1 -0
- package/packages/fokus-icons/svg/square-parking.svg +1 -0
- package/packages/fokus-icons/svg/square-pause.svg +1 -0
- package/packages/fokus-icons/svg/square-pen.svg +1 -0
- package/packages/fokus-icons/svg/square-percent.svg +1 -0
- package/packages/fokus-icons/svg/square-pi.svg +1 -0
- package/packages/fokus-icons/svg/square-pilcrow.svg +1 -0
- package/packages/fokus-icons/svg/square-play.svg +1 -0
- package/packages/fokus-icons/svg/square-plus.svg +1 -0
- package/packages/fokus-icons/svg/square-power.svg +1 -0
- package/packages/fokus-icons/svg/square-radical.svg +1 -0
- package/packages/fokus-icons/svg/square-round-corner.svg +1 -0
- package/packages/fokus-icons/svg/square-scissors.svg +1 -0
- package/packages/fokus-icons/svg/square-sigma.svg +1 -0
- package/packages/fokus-icons/svg/square-slash.svg +1 -0
- package/packages/fokus-icons/svg/square-split-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/square-split-vertical.svg +1 -0
- package/packages/fokus-icons/svg/square-square.svg +1 -0
- package/packages/fokus-icons/svg/square-stack.svg +1 -0
- package/packages/fokus-icons/svg/square-star.svg +1 -0
- package/packages/fokus-icons/svg/square-stop.svg +1 -0
- package/packages/fokus-icons/svg/square-terminal.svg +1 -0
- package/packages/fokus-icons/svg/square-user-round.svg +1 -0
- package/packages/fokus-icons/svg/square-user.svg +1 -0
- package/packages/fokus-icons/svg/square-x.svg +1 -0
- package/packages/fokus-icons/svg/square.svg +1 -0
- package/packages/fokus-icons/svg/squares-exclude.svg +1 -0
- package/packages/fokus-icons/svg/squares-intersect.svg +1 -0
- package/packages/fokus-icons/svg/squares-subtract.svg +1 -0
- package/packages/fokus-icons/svg/squares-unite.svg +1 -0
- package/packages/fokus-icons/svg/squircle-dashed.svg +1 -0
- package/packages/fokus-icons/svg/squircle.svg +1 -0
- package/packages/fokus-icons/svg/squirrel.svg +1 -0
- package/packages/fokus-icons/svg/stamp.svg +1 -0
- package/packages/fokus-icons/svg/star-check.svg +1 -0
- package/packages/fokus-icons/svg/star-half.svg +1 -0
- package/packages/fokus-icons/svg/star-minus.svg +1 -0
- package/packages/fokus-icons/svg/star-off.svg +1 -0
- package/packages/fokus-icons/svg/star-plus.svg +1 -0
- package/packages/fokus-icons/svg/star-x.svg +1 -0
- package/packages/fokus-icons/svg/star.svg +1 -0
- package/packages/fokus-icons/svg/stars.svg +1 -0
- package/packages/fokus-icons/svg/step-back.svg +1 -0
- package/packages/fokus-icons/svg/step-forward.svg +1 -0
- package/packages/fokus-icons/svg/stethoscope.svg +1 -0
- package/packages/fokus-icons/svg/sticker.svg +1 -0
- package/packages/fokus-icons/svg/sticky-note-check.svg +1 -0
- package/packages/fokus-icons/svg/sticky-note-minus.svg +1 -0
- package/packages/fokus-icons/svg/sticky-note-off.svg +1 -0
- package/packages/fokus-icons/svg/sticky-note-plus.svg +1 -0
- package/packages/fokus-icons/svg/sticky-note-x.svg +1 -0
- package/packages/fokus-icons/svg/sticky-note.svg +1 -0
- package/packages/fokus-icons/svg/sticky-notes.svg +1 -0
- package/packages/fokus-icons/svg/stone.svg +1 -0
- package/packages/fokus-icons/svg/stop-circle.svg +1 -0
- package/packages/fokus-icons/svg/store.svg +1 -0
- package/packages/fokus-icons/svg/stretch-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/stretch-vertical.svg +1 -0
- package/packages/fokus-icons/svg/strikethrough.svg +1 -0
- package/packages/fokus-icons/svg/subscript.svg +1 -0
- package/packages/fokus-icons/svg/subtitles.svg +1 -0
- package/packages/fokus-icons/svg/summary.svg +1 -0
- package/packages/fokus-icons/svg/sun-dim.svg +1 -0
- package/packages/fokus-icons/svg/sun-medium.svg +1 -0
- package/packages/fokus-icons/svg/sun-moon.svg +1 -0
- package/packages/fokus-icons/svg/sun-snow.svg +1 -0
- package/packages/fokus-icons/svg/sun.svg +1 -0
- package/packages/fokus-icons/svg/sunrise.svg +1 -0
- package/packages/fokus-icons/svg/sunset.svg +1 -0
- package/packages/fokus-icons/svg/superscript.svg +1 -0
- package/packages/fokus-icons/svg/swatch-book.svg +1 -0
- package/packages/fokus-icons/svg/swiss-franc.svg +1 -0
- package/packages/fokus-icons/svg/switch-camera.svg +1 -0
- package/packages/fokus-icons/svg/sword.svg +1 -0
- package/packages/fokus-icons/svg/swords.svg +1 -0
- package/packages/fokus-icons/svg/syringe.svg +1 -0
- package/packages/fokus-icons/svg/table-2.svg +1 -0
- package/packages/fokus-icons/svg/table-cells-merge.svg +1 -0
- package/packages/fokus-icons/svg/table-cells-split.svg +1 -0
- package/packages/fokus-icons/svg/table-columns-split.svg +1 -0
- package/packages/fokus-icons/svg/table-config.svg +1 -0
- package/packages/fokus-icons/svg/table-of-contents.svg +1 -0
- package/packages/fokus-icons/svg/table-properties.svg +1 -0
- package/packages/fokus-icons/svg/table-rows-split.svg +1 -0
- package/packages/fokus-icons/svg/table.svg +1 -0
- package/packages/fokus-icons/svg/tablet-smartphone.svg +1 -0
- package/packages/fokus-icons/svg/tablet.svg +1 -0
- package/packages/fokus-icons/svg/tablets.svg +1 -0
- package/packages/fokus-icons/svg/tag-plus.svg +1 -0
- package/packages/fokus-icons/svg/tag-x.svg +1 -0
- package/packages/fokus-icons/svg/tag.svg +1 -0
- package/packages/fokus-icons/svg/tags.svg +1 -0
- package/packages/fokus-icons/svg/tally-1.svg +1 -0
- package/packages/fokus-icons/svg/tally-2.svg +1 -0
- package/packages/fokus-icons/svg/tally-3.svg +1 -0
- package/packages/fokus-icons/svg/tally-4.svg +1 -0
- package/packages/fokus-icons/svg/tally-5.svg +1 -0
- package/packages/fokus-icons/svg/tangent.svg +1 -0
- package/packages/fokus-icons/svg/target.svg +1 -0
- package/packages/fokus-icons/svg/telescope.svg +1 -0
- package/packages/fokus-icons/svg/tent-tree.svg +1 -0
- package/packages/fokus-icons/svg/tent.svg +1 -0
- package/packages/fokus-icons/svg/terminal-square.svg +1 -0
- package/packages/fokus-icons/svg/terminal.svg +1 -0
- package/packages/fokus-icons/svg/test-tube-2.svg +1 -0
- package/packages/fokus-icons/svg/test-tube-diagonal.svg +1 -0
- package/packages/fokus-icons/svg/test-tube.svg +1 -0
- package/packages/fokus-icons/svg/test-tubes.svg +1 -0
- package/packages/fokus-icons/svg/text-align-center.svg +1 -0
- package/packages/fokus-icons/svg/text-align-end.svg +1 -0
- package/packages/fokus-icons/svg/text-align-justify.svg +1 -0
- package/packages/fokus-icons/svg/text-align-start.svg +1 -0
- package/packages/fokus-icons/svg/text-cursor-input.svg +1 -0
- package/packages/fokus-icons/svg/text-cursor.svg +1 -0
- package/packages/fokus-icons/svg/text-initial.svg +1 -0
- package/packages/fokus-icons/svg/text-quote.svg +1 -0
- package/packages/fokus-icons/svg/text-search.svg +1 -0
- package/packages/fokus-icons/svg/text-select.svg +1 -0
- package/packages/fokus-icons/svg/text-selection.svg +1 -0
- package/packages/fokus-icons/svg/text-wrap.svg +1 -0
- package/packages/fokus-icons/svg/text.svg +1 -0
- package/packages/fokus-icons/svg/theater.svg +1 -0
- package/packages/fokus-icons/svg/thermometer-snowflake.svg +1 -0
- package/packages/fokus-icons/svg/thermometer-sun.svg +1 -0
- package/packages/fokus-icons/svg/thermometer.svg +1 -0
- package/packages/fokus-icons/svg/thumbs-down.svg +1 -0
- package/packages/fokus-icons/svg/thumbs-up.svg +1 -0
- package/packages/fokus-icons/svg/ticket-check.svg +1 -0
- package/packages/fokus-icons/svg/ticket-minus.svg +1 -0
- package/packages/fokus-icons/svg/ticket-percent.svg +1 -0
- package/packages/fokus-icons/svg/ticket-plus.svg +1 -0
- package/packages/fokus-icons/svg/ticket-slash.svg +1 -0
- package/packages/fokus-icons/svg/ticket-x.svg +1 -0
- package/packages/fokus-icons/svg/ticket.svg +1 -0
- package/packages/fokus-icons/svg/tickets-plane.svg +1 -0
- package/packages/fokus-icons/svg/tickets.svg +1 -0
- package/packages/fokus-icons/svg/timeline.svg +1 -0
- package/packages/fokus-icons/svg/timer-off.svg +1 -0
- package/packages/fokus-icons/svg/timer-reset.svg +1 -0
- package/packages/fokus-icons/svg/timer.svg +1 -0
- package/packages/fokus-icons/svg/toggle-left.svg +1 -0
- package/packages/fokus-icons/svg/toggle-right.svg +1 -0
- package/packages/fokus-icons/svg/toilet.svg +1 -0
- package/packages/fokus-icons/svg/tool-case.svg +1 -0
- package/packages/fokus-icons/svg/toolbox.svg +1 -0
- package/packages/fokus-icons/svg/tornado.svg +1 -0
- package/packages/fokus-icons/svg/torus.svg +1 -0
- package/packages/fokus-icons/svg/touchpad-off.svg +1 -0
- package/packages/fokus-icons/svg/touchpad.svg +1 -0
- package/packages/fokus-icons/svg/towel-rack.svg +1 -0
- package/packages/fokus-icons/svg/tower-control.svg +1 -0
- package/packages/fokus-icons/svg/toy-brick.svg +1 -0
- package/packages/fokus-icons/svg/tractor.svg +1 -0
- package/packages/fokus-icons/svg/traffic-cone.svg +1 -0
- package/packages/fokus-icons/svg/train-front-tunnel.svg +1 -0
- package/packages/fokus-icons/svg/train-front.svg +1 -0
- package/packages/fokus-icons/svg/train-track.svg +1 -0
- package/packages/fokus-icons/svg/train.svg +1 -0
- package/packages/fokus-icons/svg/tram-front.svg +1 -0
- package/packages/fokus-icons/svg/transgender.svg +1 -0
- package/packages/fokus-icons/svg/trash-2.svg +1 -0
- package/packages/fokus-icons/svg/trash.svg +1 -0
- package/packages/fokus-icons/svg/tree-deciduous.svg +1 -0
- package/packages/fokus-icons/svg/tree-palm.svg +1 -0
- package/packages/fokus-icons/svg/tree-pine.svg +1 -0
- package/packages/fokus-icons/svg/trees.svg +1 -0
- package/packages/fokus-icons/svg/trending-down.svg +1 -0
- package/packages/fokus-icons/svg/trending-up-down.svg +1 -0
- package/packages/fokus-icons/svg/trending-up.svg +1 -0
- package/packages/fokus-icons/svg/triangle-alert.svg +1 -0
- package/packages/fokus-icons/svg/triangle-dashed.svg +1 -0
- package/packages/fokus-icons/svg/triangle-right.svg +1 -0
- package/packages/fokus-icons/svg/triangle.svg +1 -0
- package/packages/fokus-icons/svg/trophy.svg +1 -0
- package/packages/fokus-icons/svg/truck-electric.svg +1 -0
- package/packages/fokus-icons/svg/truck.svg +1 -0
- package/packages/fokus-icons/svg/turkish-lira.svg +1 -0
- package/packages/fokus-icons/svg/turntable.svg +1 -0
- package/packages/fokus-icons/svg/turtle.svg +1 -0
- package/packages/fokus-icons/svg/tv-2.svg +1 -0
- package/packages/fokus-icons/svg/tv-minimal-play.svg +1 -0
- package/packages/fokus-icons/svg/tv-minimal.svg +1 -0
- package/packages/fokus-icons/svg/tv.svg +1 -0
- package/packages/fokus-icons/svg/type-outline.svg +1 -0
- package/packages/fokus-icons/svg/type.svg +1 -0
- package/packages/fokus-icons/svg/umbrella-off.svg +1 -0
- package/packages/fokus-icons/svg/umbrella.svg +1 -0
- package/packages/fokus-icons/svg/underline.svg +1 -0
- package/packages/fokus-icons/svg/undo-2.svg +1 -0
- package/packages/fokus-icons/svg/undo-dot.svg +1 -0
- package/packages/fokus-icons/svg/undo.svg +1 -0
- package/packages/fokus-icons/svg/unfold-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/unfold-vertical.svg +1 -0
- package/packages/fokus-icons/svg/ungroup.svg +1 -0
- package/packages/fokus-icons/svg/university.svg +1 -0
- package/packages/fokus-icons/svg/unlink-2.svg +1 -0
- package/packages/fokus-icons/svg/unlink.svg +1 -0
- package/packages/fokus-icons/svg/unlock-keyhole.svg +1 -0
- package/packages/fokus-icons/svg/unlock.svg +1 -0
- package/packages/fokus-icons/svg/unplug.svg +1 -0
- package/packages/fokus-icons/svg/upload-cloud.svg +1 -0
- package/packages/fokus-icons/svg/upload.svg +1 -0
- package/packages/fokus-icons/svg/usb.svg +1 -0
- package/packages/fokus-icons/svg/user-2.svg +1 -0
- package/packages/fokus-icons/svg/user-check-2.svg +1 -0
- package/packages/fokus-icons/svg/user-check.svg +1 -0
- package/packages/fokus-icons/svg/user-circle-2.svg +1 -0
- package/packages/fokus-icons/svg/user-circle.svg +1 -0
- package/packages/fokus-icons/svg/user-cog-2.svg +1 -0
- package/packages/fokus-icons/svg/user-cog.svg +1 -0
- package/packages/fokus-icons/svg/user-key.svg +1 -0
- package/packages/fokus-icons/svg/user-lock.svg +1 -0
- package/packages/fokus-icons/svg/user-minus-2.svg +1 -0
- package/packages/fokus-icons/svg/user-minus.svg +1 -0
- package/packages/fokus-icons/svg/user-pen.svg +1 -0
- package/packages/fokus-icons/svg/user-plus-2.svg +1 -0
- package/packages/fokus-icons/svg/user-plus.svg +1 -0
- package/packages/fokus-icons/svg/user-round-arrow-left.svg +1 -0
- package/packages/fokus-icons/svg/user-round-check.svg +1 -0
- package/packages/fokus-icons/svg/user-round-cog.svg +1 -0
- package/packages/fokus-icons/svg/user-round-key.svg +1 -0
- package/packages/fokus-icons/svg/user-round-minus.svg +1 -0
- package/packages/fokus-icons/svg/user-round-pen.svg +1 -0
- package/packages/fokus-icons/svg/user-round-plus.svg +1 -0
- package/packages/fokus-icons/svg/user-round-search.svg +1 -0
- package/packages/fokus-icons/svg/user-round-x.svg +1 -0
- package/packages/fokus-icons/svg/user-round.svg +1 -0
- package/packages/fokus-icons/svg/user-search.svg +1 -0
- package/packages/fokus-icons/svg/user-square-2.svg +1 -0
- package/packages/fokus-icons/svg/user-square.svg +1 -0
- package/packages/fokus-icons/svg/user-star.svg +1 -0
- package/packages/fokus-icons/svg/user-x-2.svg +1 -0
- package/packages/fokus-icons/svg/user-x.svg +1 -0
- package/packages/fokus-icons/svg/user.svg +1 -0
- package/packages/fokus-icons/svg/users-2.svg +1 -0
- package/packages/fokus-icons/svg/users-round.svg +1 -0
- package/packages/fokus-icons/svg/users.svg +1 -0
- package/packages/fokus-icons/svg/utensils-crossed.svg +1 -0
- package/packages/fokus-icons/svg/utensils.svg +1 -0
- package/packages/fokus-icons/svg/utility-pole.svg +1 -0
- package/packages/fokus-icons/svg/van.svg +1 -0
- package/packages/fokus-icons/svg/variable.svg +1 -0
- package/packages/fokus-icons/svg/vault.svg +1 -0
- package/packages/fokus-icons/svg/vector-square.svg +1 -0
- package/packages/fokus-icons/svg/vegan.svg +1 -0
- package/packages/fokus-icons/svg/venetian-mask.svg +1 -0
- package/packages/fokus-icons/svg/venus-and-mars.svg +1 -0
- package/packages/fokus-icons/svg/venus.svg +1 -0
- package/packages/fokus-icons/svg/verified.svg +1 -0
- package/packages/fokus-icons/svg/vibrate-off.svg +1 -0
- package/packages/fokus-icons/svg/vibrate.svg +1 -0
- package/packages/fokus-icons/svg/video-off.svg +1 -0
- package/packages/fokus-icons/svg/video.svg +1 -0
- package/packages/fokus-icons/svg/videotape.svg +1 -0
- package/packages/fokus-icons/svg/view.svg +1 -0
- package/packages/fokus-icons/svg/voicemail.svg +1 -0
- package/packages/fokus-icons/svg/volleyball.svg +1 -0
- package/packages/fokus-icons/svg/volume-1.svg +1 -0
- package/packages/fokus-icons/svg/volume-2.svg +1 -0
- package/packages/fokus-icons/svg/volume-off.svg +1 -0
- package/packages/fokus-icons/svg/volume-x.svg +1 -0
- package/packages/fokus-icons/svg/volume.svg +1 -0
- package/packages/fokus-icons/svg/vote.svg +1 -0
- package/packages/fokus-icons/svg/wallet-2.svg +1 -0
- package/packages/fokus-icons/svg/wallet-cards.svg +1 -0
- package/packages/fokus-icons/svg/wallet-minimal.svg +1 -0
- package/packages/fokus-icons/svg/wallet.svg +1 -0
- package/packages/fokus-icons/svg/wallpaper.svg +1 -0
- package/packages/fokus-icons/svg/wand-2.svg +1 -0
- package/packages/fokus-icons/svg/wand-sparkles.svg +1 -0
- package/packages/fokus-icons/svg/wand.svg +1 -0
- package/packages/fokus-icons/svg/warehouse.svg +1 -0
- package/packages/fokus-icons/svg/washing-machine.svg +1 -0
- package/packages/fokus-icons/svg/watch.svg +1 -0
- package/packages/fokus-icons/svg/waves-arrow-down.svg +1 -0
- package/packages/fokus-icons/svg/waves-arrow-up.svg +1 -0
- package/packages/fokus-icons/svg/waves-horizontal.svg +1 -0
- package/packages/fokus-icons/svg/waves-ladder.svg +1 -0
- package/packages/fokus-icons/svg/waves-vertical.svg +1 -0
- package/packages/fokus-icons/svg/waves.svg +1 -0
- package/packages/fokus-icons/svg/waypoints.svg +1 -0
- package/packages/fokus-icons/svg/webcam-off.svg +1 -0
- package/packages/fokus-icons/svg/webcam.svg +1 -0
- package/packages/fokus-icons/svg/webhook-off.svg +1 -0
- package/packages/fokus-icons/svg/webhook.svg +1 -0
- package/packages/fokus-icons/svg/weight-tilde.svg +1 -0
- package/packages/fokus-icons/svg/weight.svg +1 -0
- package/packages/fokus-icons/svg/wheat-off.svg +1 -0
- package/packages/fokus-icons/svg/wheat.svg +1 -0
- package/packages/fokus-icons/svg/whole-word.svg +1 -0
- package/packages/fokus-icons/svg/wifi-cog.svg +1 -0
- package/packages/fokus-icons/svg/wifi-high.svg +1 -0
- package/packages/fokus-icons/svg/wifi-low.svg +1 -0
- package/packages/fokus-icons/svg/wifi-off.svg +1 -0
- package/packages/fokus-icons/svg/wifi-pen.svg +1 -0
- package/packages/fokus-icons/svg/wifi-sync.svg +1 -0
- package/packages/fokus-icons/svg/wifi-zero.svg +1 -0
- package/packages/fokus-icons/svg/wifi.svg +1 -0
- package/packages/fokus-icons/svg/wind-arrow-down.svg +1 -0
- package/packages/fokus-icons/svg/wind.svg +1 -0
- package/packages/fokus-icons/svg/wine-off.svg +1 -0
- package/packages/fokus-icons/svg/wine.svg +1 -0
- package/packages/fokus-icons/svg/workflow.svg +1 -0
- package/packages/fokus-icons/svg/worm.svg +1 -0
- package/packages/fokus-icons/svg/wrap-text.svg +1 -0
- package/packages/fokus-icons/svg/wrench-off.svg +1 -0
- package/packages/fokus-icons/svg/wrench.svg +1 -0
- package/packages/fokus-icons/svg/x-circle.svg +1 -0
- package/packages/fokus-icons/svg/x-line-top.svg +1 -0
- package/packages/fokus-icons/svg/x-octagon.svg +1 -0
- package/packages/fokus-icons/svg/x-square.svg +1 -0
- package/packages/fokus-icons/svg/x.svg +1 -0
- package/packages/fokus-icons/svg/zap-off.svg +1 -0
- package/packages/fokus-icons/svg/zap.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-aquarius.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-aries.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-cancer.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-capricorn.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-gemini.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-leo.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-libra.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-ophiuchus.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-pisces.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-sagittarius.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-scorpio.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-taurus.svg +1 -0
- package/packages/fokus-icons/svg/zodiac-virgo.svg +1 -0
- package/packages/fokus-icons/svg/zoom-in.svg +1 -0
- package/packages/fokus-icons/svg/zoom-out.svg +1 -0
- package/packages/fokus-js/js/accordion.d.ts +9 -0
- package/packages/fokus-js/js/accordion.js +84 -0
- package/packages/fokus-js/js/breadcrumb.d.ts +15 -0
- package/packages/fokus-js/js/breadcrumb.js +131 -0
- package/packages/fokus-js/js/carousel.d.ts +14 -0
- package/packages/fokus-js/js/carousel.js +301 -0
- package/packages/fokus-js/js/collapse.d.ts +13 -0
- package/packages/fokus-js/js/collapse.js +73 -0
- package/packages/fokus-js/js/combobox.d.ts +22 -0
- package/packages/fokus-js/js/combobox.js +245 -0
- package/packages/fokus-js/js/command-palette.d.ts +22 -0
- package/packages/fokus-js/js/command-palette.js +262 -0
- package/packages/fokus-js/js/confirm.d.ts +9 -0
- package/packages/fokus-js/js/confirm.js +77 -0
- package/packages/fokus-js/js/core/focus.d.ts +8 -0
- package/packages/fokus-js/js/core/focus.js +52 -0
- package/packages/fokus-js/js/core/index.d.ts +5 -0
- package/packages/fokus-js/js/core/index.js +5 -0
- package/packages/fokus-js/js/core/overlay.d.ts +3 -0
- package/packages/fokus-js/js/core/overlay.js +47 -0
- package/packages/fokus-js/js/core/positioning.d.ts +29 -0
- package/packages/fokus-js/js/core/positioning.js +112 -0
- package/packages/fokus-js/js/core/register.d.ts +14 -0
- package/packages/fokus-js/js/core/register.js +31 -0
- package/packages/fokus-js/js/core/transition.d.ts +7 -0
- package/packages/fokus-js/js/core/transition.js +93 -0
- package/packages/fokus-js/js/datatable.d.ts +25 -0
- package/packages/fokus-js/js/datatable.js +388 -0
- package/packages/fokus-js/js/datepicker.d.ts +23 -0
- package/packages/fokus-js/js/datepicker.js +423 -0
- package/packages/fokus-js/js/dropdown.d.ts +21 -0
- package/packages/fokus-js/js/dropdown.js +172 -0
- package/packages/fokus-js/js/file-drop.d.ts +10 -0
- package/packages/fokus-js/js/file-drop.js +84 -0
- package/packages/fokus-js/js/file-upload-advanced.d.ts +20 -0
- package/packages/fokus-js/js/file-upload-advanced.js +179 -0
- package/packages/fokus-js/js/fokus.d.ts +26 -0
- package/packages/fokus-js/js/fokus.js +26 -0
- package/packages/fokus-js/js/global.d.ts +11 -0
- package/packages/fokus-js/js/modal.d.ts +19 -0
- package/packages/fokus-js/js/modal.js +115 -0
- package/packages/fokus-js/js/nested-menu.d.ts +21 -0
- package/packages/fokus-js/js/nested-menu.js +309 -0
- package/packages/fokus-js/js/notification-center.d.ts +44 -0
- package/packages/fokus-js/js/notification-center.js +286 -0
- package/packages/fokus-js/js/offcanvas.d.ts +20 -0
- package/packages/fokus-js/js/offcanvas.js +141 -0
- package/packages/fokus-js/js/popover.d.ts +22 -0
- package/packages/fokus-js/js/popover.js +193 -0
- package/packages/fokus-js/js/range.d.ts +10 -0
- package/packages/fokus-js/js/range.js +57 -0
- package/packages/fokus-js/js/select.d.ts +13 -0
- package/packages/fokus-js/js/select.js +126 -0
- package/packages/fokus-js/js/stepper.d.ts +14 -0
- package/packages/fokus-js/js/stepper.js +144 -0
- package/packages/fokus-js/js/tabs.d.ts +10 -0
- package/packages/fokus-js/js/tabs.js +101 -0
- package/packages/fokus-js/js/tag.d.ts +11 -0
- package/packages/fokus-js/js/tag.js +67 -0
- package/packages/fokus-js/js/toast.d.ts +13 -0
- package/packages/fokus-js/js/toast.js +74 -0
- package/packages/fokus-js/js/tooltip.d.ts +22 -0
- package/packages/fokus-js/js/tooltip.js +114 -0
- package/packages/fokus-js/js/tree-view.d.ts +13 -0
- package/packages/fokus-js/js/tree-view.js +195 -0
- package/packages/fokus-react/README.md +100 -0
- package/packages/fokus-react/src/Dropdown.js +37 -0
- package/packages/fokus-react/src/Modal.js +34 -0
- package/packages/fokus-react/src/Tabs.js +24 -0
- package/packages/fokus-react/src/index.d.ts +64 -0
- package/packages/fokus-react/src/index.js +3 -0
- package/packages/fokus-utilities/scss/utilities/_container-queries.scss +33 -0
- package/packages/fokus-utilities/scss/utilities/_display.scss +21 -0
- package/packages/fokus-utilities/scss/utilities/_flex.scss +54 -0
- package/packages/fokus-utilities/scss/utilities/_icon.scss +39 -0
- package/packages/fokus-utilities/scss/utilities/_index.scss +10 -0
- package/packages/fokus-utilities/scss/utilities/_position.scss +16 -0
- package/packages/fokus-utilities/scss/utilities/_print.scss +27 -0
- package/packages/fokus-utilities/scss/utilities/_shadow.scss +13 -0
- package/packages/fokus-utilities/scss/utilities/_spacing.scss +129 -0
- package/packages/fokus-utilities/scss/utilities/_typography.scss +100 -0
- package/packages/fokus-utilities/scss/utilities/_visibility.scss +9 -0
- package/scripts/migrate-fokus-map.json +1366 -0
- package/scripts/migrate-fokus.mjs +97 -0
- package/scss/_index.scss +2 -0
- package/scss/entries/components-entry.scss +5 -0
- package/scss/entries/fonts-entry.scss +6 -0
- package/scss/entries/forms-entry.scss +5 -0
- package/scss/entries/layout-entry.scss +5 -0
- package/scss/entries/utilities-entry.scss +5 -0
- package/scss/fokus.scss +8 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../packages/fokus-js/js/fokus.js", "../../packages/fokus-js/js/core/index.js", "../../packages/fokus-js/js/core/positioning.js", "../../packages/fokus-js/js/core/overlay.js", "../../packages/fokus-js/js/core/focus.js", "../../packages/fokus-js/js/core/transition.js", "../../packages/fokus-js/js/core/register.js", "../../packages/fokus-js/js/dropdown.js", "../../packages/fokus-js/js/tooltip.js", "../../packages/fokus-js/js/popover.js", "../../packages/fokus-js/js/modal.js", "../../packages/fokus-js/js/confirm.js", "../../packages/fokus-js/js/tag.js", "../../packages/fokus-js/js/file-drop.js", "../../packages/fokus-js/js/offcanvas.js", "../../packages/fokus-js/js/select.js", "../../packages/fokus-js/js/accordion.js", "../../packages/fokus-js/js/collapse.js", "../../packages/fokus-js/js/tabs.js", "../../packages/fokus-js/js/toast.js", "../../packages/fokus-js/js/carousel.js", "../../packages/fokus-js/js/stepper.js", "../../packages/fokus-js/js/breadcrumb.js", "../../packages/fokus-js/js/notification-center.js", "../../packages/fokus-js/js/nested-menu.js", "../../packages/fokus-js/js/combobox.js", "../../packages/fokus-js/js/datepicker.js", "../../packages/fokus-js/js/datatable.js", "../../packages/fokus-js/js/command-palette.js", "../../packages/fokus-js/js/tree-view.js", "../../packages/fokus-js/js/range.js", "../../packages/fokus-js/js/file-upload-advanced.js"],
|
|
4
|
+
"sourcesContent": ["export * as core from \"./core/index.js\";\nexport { Dropdown } from \"./dropdown.js\";\nexport { Tooltip } from \"./tooltip.js\";\nexport { Popover } from \"./popover.js\";\nexport { Modal } from \"./modal.js\";\nexport { confirm } from \"./confirm.js\";\nexport { Tag } from \"./tag.js\";\nexport { FileDrop } from \"./file-drop.js\";\nexport { Offcanvas } from \"./offcanvas.js\";\nexport { Select } from \"./select.js\";\nexport { Accordion } from \"./accordion.js\";\nexport { Collapse } from \"./collapse.js\";\nexport { Tabs } from \"./tabs.js\";\nexport { Toast } from \"./toast.js\";\nexport { Carousel } from \"./carousel.js\";\nexport { Stepper } from \"./stepper.js\";\nexport { Breadcrumb } from \"./breadcrumb.js\";\nexport { NotificationCenter } from \"./notification-center.js\";\nexport { NestedMenu } from \"./nested-menu.js\";\nexport { Combobox } from \"./combobox.js\";\nexport { Datepicker } from \"./datepicker.js\";\nexport { DataTable } from \"./datatable.js\";\nexport { CommandPalette } from \"./command-palette.js\";\nexport { TreeView } from \"./tree-view.js\";\nexport { RangeSlider } from \"./range.js\";\nexport { FileUploadAdvanced } from \"./file-upload-advanced.js\";\n", "export * from \"./positioning.js\";\nexport * from \"./overlay.js\";\nexport * from \"./focus.js\";\nexport * from \"./transition.js\";\nexport * from \"./register.js\";\n", "const OPPOSITE_PLACEMENT = {\n top: \"bottom\",\n bottom: \"top\",\n left: \"right\",\n right: \"left\",\n};\n\nfunction fitsPlacement(placement, referenceRect, floatingRect, offset, viewportWidth, viewportHeight) {\n switch (placement) {\n case \"top\":\n return referenceRect.top - floatingRect.height - offset >= 0;\n case \"bottom\":\n return referenceRect.bottom + floatingRect.height + offset <= viewportHeight;\n case \"left\":\n return referenceRect.left - floatingRect.width - offset >= 0;\n case \"right\":\n return referenceRect.right + floatingRect.width + offset <= viewportWidth;\n default:\n return true;\n }\n}\n\nfunction alignCrossAxis(align, referenceStart, referenceSize, floatingSize) {\n switch (align) {\n case \"start\":\n return referenceStart;\n case \"end\":\n return referenceStart + referenceSize - floatingSize;\n default:\n return referenceStart + (referenceSize - floatingSize) / 2;\n }\n}\n\nexport function computePosition(referenceEl, floatingEl, options = {}) {\n const { placement = \"bottom\", align = \"center\", offset = 8, padding = 8 } = options;\n\n const referenceRect = referenceEl.getBoundingClientRect();\n const floatingRect = floatingEl.getBoundingClientRect();\n const viewportWidth = document.documentElement.clientWidth;\n const viewportHeight = document.documentElement.clientHeight;\n\n let finalPlacement = placement;\n\n if (\n !fitsPlacement(placement, referenceRect, floatingRect, offset, viewportWidth, viewportHeight) &&\n fitsPlacement(OPPOSITE_PLACEMENT[placement], referenceRect, floatingRect, offset, viewportWidth, viewportHeight)\n ) {\n finalPlacement = OPPOSITE_PLACEMENT[placement];\n }\n\n let top;\n let left;\n\n if (finalPlacement === \"top\" || finalPlacement === \"bottom\") {\n top =\n finalPlacement === \"top\"\n ? referenceRect.top - floatingRect.height - offset\n : referenceRect.bottom + offset;\n left = alignCrossAxis(align, referenceRect.left, referenceRect.width, floatingRect.width);\n } else {\n left =\n finalPlacement === \"left\"\n ? referenceRect.left - floatingRect.width - offset\n : referenceRect.right + offset;\n top = alignCrossAxis(align, referenceRect.top, referenceRect.height, floatingRect.height);\n }\n\n const maxLeft = Math.max(padding, viewportWidth - floatingRect.width - padding);\n const maxTop = Math.max(padding, viewportHeight - floatingRect.height - padding);\n left = Math.min(Math.max(left, padding), maxLeft);\n top = Math.min(Math.max(top, padding), maxTop);\n\n return {\n top: top + window.scrollY,\n left: left + window.scrollX,\n placement: finalPlacement,\n };\n}\n\n// Mant\u00E9m overlays alinhados quando o viewport ou o pr\u00F3prio conte\u00FAdo muda.\n// O ResizeObserver \u00E9 opcional para preservar compatibilidade com navegadores\n// que n\u00E3o o implementam; scroll/resize continuam cobrindo o caso b\u00E1sico.\nexport function watchPosition(referenceEl, floatingEl, options = {}) {\n const update = () => applyPosition(floatingEl, computePosition(referenceEl, floatingEl, options));\n let frame = null;\n const schedule = () => {\n if (frame !== null) return;\n frame = requestAnimationFrame(() => {\n frame = null;\n update();\n });\n };\n\n window.addEventListener(\"resize\", schedule, { passive: true });\n window.addEventListener(\"scroll\", schedule, { passive: true, capture: true });\n const observer = typeof ResizeObserver === \"function\" ? new ResizeObserver(schedule) : null;\n observer?.observe(referenceEl);\n observer?.observe(floatingEl);\n\n return () => {\n window.removeEventListener(\"resize\", schedule);\n window.removeEventListener(\"scroll\", schedule, true);\n if (frame !== null) cancelAnimationFrame(frame);\n observer?.disconnect();\n };\n}\n\nexport function applyPosition(floatingEl, position) {\n floatingEl.style.position = \"absolute\";\n floatingEl.style.top = `${position.top}px`;\n floatingEl.style.left = `${position.left}px`;\n}\n", "let lockCount = 0;\nlet paddingCompensated = false;\nlet previousOverflow = \"\";\nlet previousPaddingRight = \"\";\n\nexport function lockScroll() {\n lockCount += 1;\n if (lockCount > 1) return;\n\n const scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;\n previousOverflow = document.body.style.overflow;\n previousPaddingRight = document.body.style.paddingRight;\n document.body.style.overflow = \"hidden\";\n\n if (scrollbarWidth > 0) {\n document.body.style.paddingRight = `${scrollbarWidth}px`;\n paddingCompensated = true;\n }\n}\n\nexport function unlockScroll() {\n lockCount = Math.max(0, lockCount - 1);\n if (lockCount > 0) return;\n\n document.body.style.overflow = previousOverflow;\n\n if (paddingCompensated) {\n document.body.style.paddingRight = previousPaddingRight;\n paddingCompensated = false;\n }\n}\n\nexport function onClickOutside(el, callback) {\n const handler = (event) => {\n if (!el.contains(event.target)) callback(event);\n };\n\n // Listener de captura registrado imediatamente: o clique que abriu o\n // elemento j\u00E1 passou pelo document na fase de captura, ent\u00E3o n\u00E3o dispara\n // o fechamento \u2014 e um clique fora logo em seguida j\u00E1 encontra o listener\n // ativo (adiar com setTimeout criava uma janela em que ele era perdido).\n document.addEventListener(\"click\", handler, true);\n\n return () => {\n document.removeEventListener(\"click\", handler, true);\n };\n}\n", "const FOCUSABLE_SELECTOR =\n 'a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])';\n\nexport function getFocusableElements(container) {\n return Array.from(container.querySelectorAll(FOCUSABLE_SELECTOR)).filter((el) => el.offsetParent !== null);\n}\n\nexport function createFocusTrap(container) {\n function handleKeydown(event) {\n if (event.key !== \"Tab\") return;\n\n const focusable = getFocusableElements(container);\n\n if (focusable.length === 0) {\n event.preventDefault();\n return;\n }\n\n const first = focusable[0];\n const last = focusable[focusable.length - 1];\n\n if (event.shiftKey && document.activeElement === first) {\n event.preventDefault();\n last.focus();\n } else if (!event.shiftKey && document.activeElement === last) {\n event.preventDefault();\n first.focus();\n }\n }\n\n container.addEventListener(\"keydown\", handleKeydown);\n\n return {\n activate() {\n const focusable = getFocusableElements(container);\n if (focusable.length > 0) focusable[0].focus();\n },\n deactivate() {\n container.removeEventListener(\"keydown\", handleKeydown);\n },\n };\n}\n\nexport function onEscapeKey(callback) {\n const handler = (event) => {\n if (event.key === \"Escape\") callback(event);\n };\n\n document.addEventListener(\"keydown\", handler);\n\n return () => document.removeEventListener(\"keydown\", handler);\n}\n", "function prefersReducedMotion() {\n return window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n}\n\nfunction waitForHeightTransition(el) {\n return new Promise((resolve) => {\n let settled = false;\n const settle = () => {\n if (settled) return;\n settled = true;\n clearTimeout(timeout);\n el.removeEventListener(\"transitionend\", handleEnd);\n resolve();\n };\n const handleEnd = (event) => {\n if (event.target !== el || event.propertyName !== \"height\") return;\n settle();\n };\n\n el.addEventListener(\"transitionend\", handleEnd);\n const timeout = window.setTimeout(settle, 450);\n });\n}\n\nexport function collapse(el, options = {}) {\n if (prefersReducedMotion()) {\n el.style.display = \"none\";\n return Promise.resolve();\n }\n\n const duration = options.duration ?? 200;\n\n el.style.overflow = \"hidden\";\n el.style.height = `${el.scrollHeight}px`;\n el.style.transition = `height ${duration}ms ease`;\n\n const done = waitForHeightTransition(el).then(() => {\n el.style.display = \"none\";\n el.style.removeProperty(\"height\");\n el.style.removeProperty(\"overflow\");\n el.style.removeProperty(\"transition\");\n });\n\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n el.style.height = \"0px\";\n });\n });\n\n return done;\n}\n\nexport function expand(el, options = {}) {\n el.style.display = \"\";\n\n if (prefersReducedMotion()) {\n return Promise.resolve();\n }\n\n const duration = options.duration ?? 200;\n const targetHeight = `${el.scrollHeight}px`;\n\n el.style.overflow = \"hidden\";\n el.style.height = \"0px\";\n el.style.transition = `height ${duration}ms ease`;\n\n const done = waitForHeightTransition(el).then(() => {\n el.style.removeProperty(\"height\");\n el.style.removeProperty(\"overflow\");\n el.style.removeProperty(\"transition\");\n });\n\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n el.style.height = targetHeight;\n });\n });\n\n return done;\n}\n\nexport function onTransitionEnd(el, propertyName) {\n return new Promise((resolve) => {\n const handleEnd = (event) => {\n if (event.target !== el) return;\n if (propertyName && event.propertyName !== propertyName) return;\n el.removeEventListener(\"transitionend\", handleEnd);\n resolve();\n };\n\n el.addEventListener(\"transitionend\", handleEnd);\n });\n}\n", "export function createInstanceRegistry() {\n const instances = new WeakMap();\n\n return {\n get(el) {\n return instances.get(el);\n },\n set(el, instance) {\n instances.set(el, instance);\n },\n delete(el) {\n instances.delete(el);\n },\n };\n}\n\nexport function autoInit(name, Ctor) {\n if (typeof document === \"undefined\") return;\n\n const init = () => {\n document.querySelectorAll(`[data-fs=\"${name}\"]`).forEach((el) => {\n if (!Ctor.getInstance(el)) new Ctor(el);\n });\n };\n\n if (document.readyState === \"loading\") {\n document.addEventListener(\"DOMContentLoaded\", init);\n } else {\n init();\n }\n}\n", "import { computePosition, applyPosition, watchPosition } from \"./core/positioning.js\";\nimport { onClickOutside } from \"./core/overlay.js\";\nimport { onEscapeKey } from \"./core/focus.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nexport class Dropdown {\n constructor(toggleEl, options = {}) {\n const targetSelector = toggleEl.getAttribute(\"data-fs-target\");\n const menuEl = targetSelector ? document.querySelector(targetSelector) : toggleEl.nextElementSibling;\n\n if (!menuEl) {\n throw new Error(\"FokusStyles.Dropdown: elemento do menu n\u00E3o encontrado (data-fs-target).\");\n }\n\n this.toggleEl = toggleEl;\n this.menuEl = menuEl;\n this.placement = options.placement ?? toggleEl.getAttribute(\"data-placement\") ?? \"bottom\";\n this.align = options.align ?? toggleEl.getAttribute(\"data-align\") ?? \"start\";\n this.isOpen = false;\n this._outsideClickCleanup = null;\n this._positionCleanup = null;\n this._originalParent = this.menuEl.parentNode;\n this._originalNextSibling = this.menuEl.nextSibling;\n\n document.body.appendChild(this.menuEl);\n\n this.toggleEl.setAttribute(\"aria-haspopup\", \"menu\");\n this.toggleEl.setAttribute(\"aria-expanded\", \"false\");\n this.toggleEl.setAttribute(\"aria-controls\", this.menuEl.id || `fs-dropdown-${Math.random().toString(36).slice(2)}`);\n if (!this.menuEl.id) this.menuEl.id = this.toggleEl.getAttribute(\"aria-controls\");\n this.menuEl.setAttribute(\"role\", \"menu\");\n this.menuEl.querySelectorAll(\".fs-dropdown-item\").forEach((item) => {\n if (!item.hasAttribute(\"role\")) item.setAttribute(\"role\", \"menuitem\");\n });\n\n this._handleToggleClick = this._handleToggleClick.bind(this);\n this._handleMenuKeydown = this._handleMenuKeydown.bind(this);\n this._handleMenuClick = this._handleMenuClick.bind(this);\n\n this.toggleEl.addEventListener(\"click\", this._handleToggleClick);\n this.menuEl.addEventListener(\"keydown\", this._handleMenuKeydown);\n this.menuEl.addEventListener(\"click\", this._handleMenuClick);\n\n this._removeEscapeListener = onEscapeKey(() => {\n if (this.isOpen) {\n this.hide();\n this.toggleEl.focus();\n }\n });\n\n instances.set(toggleEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _handleToggleClick(event) {\n event.preventDefault();\n this.toggle();\n }\n\n _handleMenuClick(event) {\n if (event.target.closest(\".fs-dropdown-item\")) {\n this.hide();\n this.toggleEl.focus();\n }\n }\n\n _handleMenuKeydown(event) {\n const items = Array.from(this.menuEl.querySelectorAll(\".fs-dropdown-item:not(.is-disabled)\"));\n const currentIndex = items.indexOf(document.activeElement);\n\n if (event.key === \"ArrowDown\") {\n event.preventDefault();\n items[(currentIndex + 1) % items.length]?.focus();\n } else if (event.key === \"ArrowUp\") {\n event.preventDefault();\n items[(currentIndex - 1 + items.length) % items.length]?.focus();\n } else if (event.key === \"Home\") {\n event.preventDefault();\n items[0]?.focus();\n } else if (event.key === \"End\") {\n event.preventDefault();\n items[items.length - 1]?.focus();\n } else if (event.key === \"Escape\") {\n event.preventDefault();\n this.hide();\n this.toggleEl.focus();\n }\n }\n\n show() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n const theme = this.toggleEl.closest(\"[data-theme]\")?.getAttribute(\"data-theme\");\n if (theme) {\n this.menuEl.setAttribute(\"data-theme\", theme);\n } else {\n this.menuEl.removeAttribute(\"data-theme\");\n }\n\n this.menuEl.classList.add(\"is-open\");\n\n const position = computePosition(this.toggleEl, this.menuEl, {\n placement: this.placement,\n align: this.align,\n offset: 4,\n });\n applyPosition(this.menuEl, position);\n this._positionCleanup = watchPosition(this.toggleEl, this.menuEl, {\n placement: this.placement,\n align: this.align,\n offset: 4,\n });\n\n this.toggleEl.setAttribute(\"aria-expanded\", \"true\");\n\n const firstItem = this.menuEl.querySelector(\".fs-dropdown-item:not(.is-disabled)\");\n firstItem?.focus();\n\n this._outsideClickCleanup = onClickOutside(this.menuEl, (event) => {\n if (this.toggleEl.contains(event.target)) return;\n this.hide();\n });\n\n this.toggleEl.dispatchEvent(new CustomEvent(\"fs:dropdown:shown\", { bubbles: true }));\n }\n\n hide() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n this.menuEl.classList.remove(\"is-open\");\n this.menuEl.style.removeProperty(\"position\");\n this.menuEl.style.removeProperty(\"top\");\n this.menuEl.style.removeProperty(\"left\");\n this.toggleEl.setAttribute(\"aria-expanded\", \"false\");\n\n this._outsideClickCleanup?.();\n this._outsideClickCleanup = null;\n this._positionCleanup?.();\n this._positionCleanup = null;\n\n this.toggleEl.dispatchEvent(new CustomEvent(\"fs:dropdown:hidden\", { bubbles: true }));\n }\n\n toggle() {\n if (this.isOpen) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n dispose() {\n this.hide();\n this._removeEscapeListener();\n this.toggleEl.removeEventListener(\"click\", this._handleToggleClick);\n this.menuEl.removeEventListener(\"keydown\", this._handleMenuKeydown);\n this.menuEl.removeEventListener(\"click\", this._handleMenuClick);\n if (this._originalParent) {\n this._originalParent.insertBefore(this.menuEl, this._originalNextSibling);\n }\n instances.delete(this.toggleEl);\n }\n}\n\nautoInit(\"dropdown\", Dropdown);\n", "import { computePosition, applyPosition, watchPosition } from \"./core/positioning.js\";\nimport { onEscapeKey } from \"./core/focus.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\nlet idCounter = 0;\n\nexport class Tooltip {\n constructor(referenceEl, options = {}) {\n const title = referenceEl.getAttribute(\"title\") ?? referenceEl.getAttribute(\"data-title\") ?? options.title;\n\n if (!title) {\n throw new Error(\"FokusStyles.Tooltip: elemento sem texto (atributo title/data-title).\");\n }\n\n referenceEl.removeAttribute(\"title\");\n\n idCounter += 1;\n\n this.referenceEl = referenceEl;\n this.title = title;\n this.placement = options.placement ?? referenceEl.getAttribute(\"data-placement\") ?? \"top\";\n this.isOpen = false;\n this.id = `fokus-tooltip-${idCounter}`;\n this._positionCleanup = null;\n this._originalDescribedBy = referenceEl.getAttribute(\"aria-describedby\");\n\n this.tooltipEl = document.createElement(\"div\");\n this.tooltipEl.className = \"fs-tooltip\";\n this.tooltipEl.id = this.id;\n this.tooltipEl.setAttribute(\"role\", \"tooltip\");\n this.tooltipEl.innerHTML = '<div class=\"fs-tooltip-arrow\"></div><div class=\"fs-tooltip-inner\"></div>';\n this.tooltipEl.querySelector(\".fs-tooltip-inner\").textContent = this.title;\n document.body.appendChild(this.tooltipEl);\n\n referenceEl.setAttribute(\"aria-describedby\", this.id);\n\n this._handleShow = this.show.bind(this);\n this._handleHide = this.hide.bind(this);\n\n referenceEl.addEventListener(\"mouseenter\", this._handleShow);\n referenceEl.addEventListener(\"mouseleave\", this._handleHide);\n referenceEl.addEventListener(\"focus\", this._handleShow);\n referenceEl.addEventListener(\"blur\", this._handleHide);\n\n this._removeEscapeListener = onEscapeKey(() => {\n if (this.isOpen) this.hide();\n });\n\n instances.set(referenceEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n show() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n const theme = this.referenceEl.closest(\"[data-theme]\")?.getAttribute(\"data-theme\");\n if (theme) {\n this.tooltipEl.setAttribute(\"data-theme\", theme);\n } else {\n this.tooltipEl.removeAttribute(\"data-theme\");\n }\n\n this.tooltipEl.classList.add(\"is-open\");\n\n const position = computePosition(this.referenceEl, this.tooltipEl, { placement: this.placement, offset: 10 });\n applyPosition(this.tooltipEl, position);\n this._positionCleanup = watchPosition(this.referenceEl, this.tooltipEl, {\n placement: this.placement,\n offset: 10,\n });\n this.tooltipEl.setAttribute(\"data-placement\", position.placement);\n\n this.referenceEl.dispatchEvent(new CustomEvent(\"fs:tooltip:shown\", { bubbles: true }));\n }\n\n hide() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n this.tooltipEl.classList.remove(\"is-open\");\n this._positionCleanup?.();\n this._positionCleanup = null;\n\n this.referenceEl.dispatchEvent(new CustomEvent(\"fs:tooltip:hidden\", { bubbles: true }));\n }\n\n toggle() {\n if (this.isOpen) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n dispose() {\n this.hide();\n this.referenceEl.removeEventListener(\"mouseenter\", this._handleShow);\n this.referenceEl.removeEventListener(\"mouseleave\", this._handleHide);\n this.referenceEl.removeEventListener(\"focus\", this._handleShow);\n this.referenceEl.removeEventListener(\"blur\", this._handleHide);\n this._removeEscapeListener();\n if (this._originalDescribedBy === null) this.referenceEl.removeAttribute(\"aria-describedby\");\n else this.referenceEl.setAttribute(\"aria-describedby\", this._originalDescribedBy);\n this.tooltipEl.remove();\n instances.delete(this.referenceEl);\n }\n}\n\nautoInit(\"tooltip\", Tooltip);\n", "import { computePosition, applyPosition, watchPosition } from \"./core/positioning.js\";\nimport { onClickOutside } from \"./core/overlay.js\";\nimport { onEscapeKey } from \"./core/focus.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\nlet idCounter = 0;\nconst HOVER_HIDE_DELAY = 100;\n\nexport class Popover {\n constructor(triggerEl, options = {}) {\n const targetSelector = triggerEl.getAttribute(\"data-fs-target\");\n const popoverEl = targetSelector ? document.querySelector(targetSelector) : null;\n\n if (!popoverEl) {\n throw new Error(\"FokusStyles.Popover: elemento n\u00E3o encontrado (data-fs-target).\");\n }\n\n this.triggerEl = triggerEl;\n this.popoverEl = popoverEl;\n this.placement = options.placement ?? triggerEl.getAttribute(\"data-placement\") ?? \"top\";\n this.align = options.align ?? triggerEl.getAttribute(\"data-align\") ?? \"center\";\n this.trigger = options.trigger ?? triggerEl.getAttribute(\"data-trigger\") ?? \"click\";\n this.isOpen = false;\n this._outsideClickCleanup = null;\n this._removeEscapeListener = null;\n this._hideTimer = null;\n this._positionCleanup = null;\n this._originalParent = popoverEl.parentNode;\n this._originalNextSibling = popoverEl.nextSibling;\n\n document.body.appendChild(popoverEl);\n\n popoverEl.setAttribute(\"role\", \"dialog\");\n popoverEl.setAttribute(\"aria-modal\", \"false\");\n\n idCounter += 1;\n if (!popoverEl.id) popoverEl.id = `fokus-popover-${idCounter}`;\n\n const headerEl = popoverEl.querySelector(\".fs-popover-header\");\n if (headerEl) {\n if (!headerEl.id) headerEl.id = `fokus-popover-header-${idCounter}`;\n popoverEl.setAttribute(\"aria-labelledby\", headerEl.id);\n }\n\n triggerEl.setAttribute(\"aria-controls\", popoverEl.id);\n triggerEl.setAttribute(\"aria-expanded\", \"false\");\n\n this._handleDismissClick = this._handleDismissClick.bind(this);\n popoverEl.addEventListener(\"click\", this._handleDismissClick);\n\n this._bindTrigger();\n\n instances.set(triggerEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _bindTrigger() {\n if (this.trigger === \"manual\") return;\n\n if (this.trigger === \"click\") {\n this._handleTriggerClick = (event) => {\n event.preventDefault();\n this.toggle();\n };\n this.triggerEl.addEventListener(\"click\", this._handleTriggerClick);\n } else if (this.trigger === \"hover\") {\n this._handleMouseEnter = () => {\n clearTimeout(this._hideTimer);\n this.show();\n };\n this._handleMouseLeave = () => {\n this._hideTimer = setTimeout(() => this.hide(), HOVER_HIDE_DELAY);\n };\n this.triggerEl.addEventListener(\"mouseenter\", this._handleMouseEnter);\n this.triggerEl.addEventListener(\"mouseleave\", this._handleMouseLeave);\n this.popoverEl.addEventListener(\"mouseenter\", this._handleMouseEnter);\n this.popoverEl.addEventListener(\"mouseleave\", this._handleMouseLeave);\n } else if (this.trigger === \"focus\") {\n this._handleTriggerFocus = () => this.show();\n this._handleTriggerFocusOut = (event) => {\n if (this.popoverEl.contains(event.relatedTarget)) return;\n this.hide();\n };\n this._handlePopoverFocusOut = (event) => {\n if (this.triggerEl.contains(event.relatedTarget) || this.popoverEl.contains(event.relatedTarget)) return;\n this.hide();\n };\n this.triggerEl.addEventListener(\"focus\", this._handleTriggerFocus);\n this.triggerEl.addEventListener(\"focusout\", this._handleTriggerFocusOut);\n this.popoverEl.addEventListener(\"focusout\", this._handlePopoverFocusOut);\n }\n\n if (this.trigger !== \"manual\") {\n this._removeEscapeListener = onEscapeKey(() => {\n if (!this.isOpen) return;\n this.hide();\n this.triggerEl.focus();\n });\n }\n }\n\n _handleDismissClick(event) {\n if (event.target.closest('[data-fs-dismiss=\"popover\"]')) {\n this.hide();\n }\n }\n\n show() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n const theme = this.triggerEl.closest(\"[data-theme]\")?.getAttribute(\"data-theme\");\n if (theme) {\n this.popoverEl.setAttribute(\"data-theme\", theme);\n } else {\n this.popoverEl.removeAttribute(\"data-theme\");\n }\n\n this.popoverEl.classList.add(\"is-open\");\n\n const position = computePosition(this.triggerEl, this.popoverEl, {\n placement: this.placement,\n align: this.align,\n offset: 10,\n });\n applyPosition(this.popoverEl, position);\n this._positionCleanup = watchPosition(this.triggerEl, this.popoverEl, {\n placement: this.placement,\n align: this.align,\n offset: 10,\n });\n this.popoverEl.setAttribute(\"data-placement\", position.placement);\n\n this.triggerEl.setAttribute(\"aria-expanded\", \"true\");\n\n if (this.trigger === \"click\") {\n this._outsideClickCleanup = onClickOutside(this.popoverEl, (event) => {\n if (this.triggerEl.contains(event.target)) return;\n this.hide();\n });\n }\n\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:popover:shown\", { bubbles: true }));\n }\n\n hide() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n this.popoverEl.classList.remove(\"is-open\");\n this._positionCleanup?.();\n this._positionCleanup = null;\n this.triggerEl.setAttribute(\"aria-expanded\", \"false\");\n\n this._outsideClickCleanup?.();\n this._outsideClickCleanup = null;\n\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:popover:hidden\", { bubbles: true }));\n }\n\n toggle() {\n if (this.isOpen) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n dispose() {\n this.hide();\n clearTimeout(this._hideTimer);\n this._removeEscapeListener?.();\n this.popoverEl.removeEventListener(\"click\", this._handleDismissClick);\n this.triggerEl.removeEventListener(\"click\", this._handleTriggerClick);\n this.triggerEl.removeEventListener(\"mouseenter\", this._handleMouseEnter);\n this.triggerEl.removeEventListener(\"mouseleave\", this._handleMouseLeave);\n this.popoverEl.removeEventListener(\"mouseenter\", this._handleMouseEnter);\n this.popoverEl.removeEventListener(\"mouseleave\", this._handleMouseLeave);\n this.triggerEl.removeEventListener(\"focus\", this._handleTriggerFocus);\n this.triggerEl.removeEventListener(\"focusout\", this._handleTriggerFocusOut);\n this.popoverEl.removeEventListener(\"focusout\", this._handlePopoverFocusOut);\n if (this._originalParent) {\n this._originalParent.insertBefore(this.popoverEl, this._originalNextSibling);\n }\n instances.delete(this.triggerEl);\n }\n}\n\nautoInit(\"popover\", Popover);\n", "import { lockScroll, unlockScroll, onClickOutside } from \"./core/overlay.js\";\nimport { createFocusTrap, onEscapeKey } from \"./core/focus.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nexport class Modal {\n constructor(triggerEl, options = {}) {\n const targetSelector = triggerEl.getAttribute(\"data-fs-target\");\n const modalEl = targetSelector ? document.querySelector(targetSelector) : null;\n\n if (!modalEl) {\n throw new Error(\"FokusStyles.Modal: elemento do modal n\u00E3o encontrado (data-fs-target).\");\n }\n\n this.triggerEl = triggerEl;\n this.modalEl = modalEl;\n this.dialogEl = modalEl.querySelector(\".fs-modal-dialog\") ?? modalEl;\n this.staticBackdrop = (options.backdrop ?? modalEl.getAttribute(\"data-backdrop\")) === \"static\";\n this.isOpen = false;\n this._focusTrap = null;\n this._outsideClickCleanup = null;\n\n modalEl.setAttribute(\"role\", \"dialog\");\n modalEl.setAttribute(\"aria-modal\", \"true\");\n modalEl.setAttribute(\"aria-hidden\", \"true\");\n const titleEl = modalEl.querySelector(\".fs-modal-title\");\n if (titleEl) {\n if (!titleEl.id) titleEl.id = `fs-modal-title-${Math.random().toString(36).slice(2)}`;\n modalEl.setAttribute(\"aria-labelledby\", titleEl.id);\n }\n\n this._handleTriggerClick = this._handleTriggerClick.bind(this);\n this._handleDismissClick = this._handleDismissClick.bind(this);\n\n triggerEl.addEventListener(\"click\", this._handleTriggerClick);\n modalEl.addEventListener(\"click\", this._handleDismissClick);\n\n this._removeEscapeListener = onEscapeKey(() => {\n if (this.isOpen && !this.staticBackdrop) this.hide();\n });\n\n instances.set(triggerEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _handleTriggerClick(event) {\n event.preventDefault();\n this.show();\n }\n\n _handleDismissClick(event) {\n if (event.target.closest('[data-fs-dismiss=\"modal\"]')) {\n this.hide();\n }\n }\n\n show() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n this.modalEl.classList.add(\"is-open\");\n this.modalEl.setAttribute(\"aria-hidden\", \"false\");\n lockScroll();\n\n this._focusTrap = createFocusTrap(this.dialogEl);\n this._focusTrap.activate();\n\n if (!this.staticBackdrop) {\n this._outsideClickCleanup = onClickOutside(this.dialogEl, () => this.hide());\n }\n\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:modal:shown\", { bubbles: true }));\n }\n\n hide() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n this.modalEl.classList.remove(\"is-open\");\n this.modalEl.setAttribute(\"aria-hidden\", \"true\");\n unlockScroll();\n\n this._focusTrap?.deactivate();\n this._focusTrap = null;\n\n this._outsideClickCleanup?.();\n this._outsideClickCleanup = null;\n\n this.triggerEl.focus();\n\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:modal:hidden\", { bubbles: true }));\n }\n\n toggle() {\n if (this.isOpen) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n dispose() {\n this.hide();\n this._removeEscapeListener();\n this.triggerEl.removeEventListener(\"click\", this._handleTriggerClick);\n this.modalEl.removeEventListener(\"click\", this._handleDismissClick);\n instances.delete(this.triggerEl);\n }\n}\n\nautoInit(\"modal\", Modal);\n", "import { Modal } from \"./modal.js\";\n\nlet idCounter = 0;\n\nfunction escapeHtml(value) {\n const div = document.createElement(\"div\");\n div.textContent = value;\n return div.innerHTML;\n}\n\n// Alert Dialog / Confirm: ao contr\u00E1rio dos demais componentes (auto-init\n// declarativo via data-fs), \u00E9 100% program\u00E1tico \u2014 monta o modal na hora,\n// reaproveitando js/modal.js (foco/teclado/overlay j\u00E1 prontos) sem precisar\n// de marca\u00E7\u00E3o pr\u00E9-declarada na p\u00E1gina. Resolve `true` (confirmado), `false`\n// (cancelado ou fechado por Escape/clique fora).\nexport function confirm(options = {}) {\n const { title = \"Tem certeza?\", message = \"\", confirmText = \"Confirmar\", cancelText = \"Cancelar\", variant = \"danger\" } = options;\n\n return new Promise((resolve) => {\n idCounter += 1;\n const modalId = `fokus-confirm-${idCounter}`;\n const invokerEl = document.activeElement instanceof HTMLElement ? document.activeElement : document.body;\n\n const modalEl = document.createElement(\"div\");\n modalEl.className = \"fs-modal fs-alert-dialog\";\n modalEl.id = modalId;\n modalEl.innerHTML = `\n <div class=\"fs-modal-dialog fs-modal-sm\">\n <div class=\"fs-modal-content\">\n <div class=\"fs-modal-body\">\n <h3 class=\"fs-modal-title\">${escapeHtml(title)}</h3>\n ${message ? `<p class=\"fs-alert-dialog-message\">${escapeHtml(message)}</p>` : \"\"}\n </div>\n <div class=\"fs-modal-footer\">\n <button type=\"button\" class=\"fs-btn\" data-action=\"cancel\">${escapeHtml(cancelText)}</button>\n <button type=\"button\" class=\"fs-btn fs-btn-${variant}\" data-action=\"confirm\">${escapeHtml(confirmText)}</button>\n </div>\n </div>\n </div>\n `;\n document.body.appendChild(modalEl);\n\n // Modal exige um gatilho com data-fs-target; sint\u00E9tico porque n\u00E3o h\u00E1 um\n // bot\u00E3o real \"abrindo\" este modal (ele nasce j\u00E1 aberto).\n const triggerEl = document.createElement(\"button\");\n triggerEl.type = \"button\";\n triggerEl.setAttribute(\"data-fs-target\", `#${modalId}`);\n triggerEl.style.display = \"none\";\n document.body.appendChild(triggerEl);\n\n const modal = new Modal(triggerEl);\n let settled = false;\n\n const finish = (result) => {\n if (settled) return;\n settled = true;\n\n modal.dispose();\n modalEl.remove();\n triggerEl.remove();\n invokerEl.focus?.();\n resolve(result);\n };\n\n modalEl.addEventListener(\"click\", (event) => {\n const action = event.target.closest(\"[data-action]\")?.dataset.action;\n if (action === \"confirm\") finish(true);\n else if (action === \"cancel\") finish(false);\n });\n\n // Escape e clique fora chamam modal.hide() internamente, que dispara\n // este evento no gatilho (n\u00E3o no modalEl) \u2014 conta como cancelamento.\n triggerEl.addEventListener(\"fs:modal:hidden\", () => finish(false));\n\n modal.show();\n });\n}\n", "import { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\n// Badge dismiss\u00EDvel / Tag: o \u00FAnico componente CSS-first desta leva que\n// precisa de JS \u2014 s\u00F3 o suficiente pra remover o elemento do DOM ao clicar\n// no .fs-btn-close, sem posicionamento/foco/overlay.\nexport class Tag {\n constructor(tagEl) {\n this.tagEl = tagEl;\n this._isLoading = tagEl.classList.contains(\"is-loading\") || tagEl.getAttribute(\"aria-busy\") === \"true\";\n\n this._handleClick = this._handleClick.bind(this);\n tagEl.addEventListener(\"click\", this._handleClick);\n\n this.setLoading(this._isLoading);\n\n instances.set(tagEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _handleClick(event) {\n if (!this._isLoading && event.target.closest('[data-fs-dismiss=\"tag\"]')) {\n this.dismiss();\n }\n }\n\n // Dispara um evento cancel\u00E1vel antes de remover (mesmo esp\u00EDrito de\n // fs:stepper:beforechange): preventDefault() bloqueia a remo\u00E7\u00E3o.\n dismiss() {\n if (this._isLoading) return false;\n\n const event = new CustomEvent(\"fs:tag:dismissed\", { bubbles: true, cancelable: true });\n this.tagEl.dispatchEvent(event);\n if (event.defaultPrevented) return false;\n\n this.tagEl.remove();\n return true;\n }\n\n // Estado \u00FAtil enquanto uma remo\u00E7\u00E3o ou atualiza\u00E7\u00E3o ass\u00EDncrona est\u00E1 pendente.\n // Al\u00E9m da apar\u00EAncia, bloqueia o dismiss e comunica o estado a AT.\n setLoading(loading) {\n this._isLoading = Boolean(loading);\n this.tagEl.classList.toggle(\"is-loading\", this._isLoading);\n if (this._isLoading) {\n this.tagEl.setAttribute(\"aria-busy\", \"true\");\n } else {\n this.tagEl.removeAttribute(\"aria-busy\");\n }\n\n const dismissButton = this.tagEl.querySelector('[data-fs-dismiss=\"tag\"]');\n if (dismissButton) dismissButton.disabled = this._isLoading;\n\n return this;\n }\n\n dispose() {\n this.tagEl.removeEventListener(\"click\", this._handleClick);\n instances.delete(this.tagEl);\n }\n}\n\nautoInit(\"tag\", Tag);\n", "import { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\n// Evolui o upload de arquivo (scss/forms/_forms.scss, Fase 6) com\n// arrastar-e-soltar sobre o `.fs-file-label`. Auto-init com\n// `data-fs=\"file-drop\"` no pr\u00F3prio `<label for=\"...\">` \u2014 o input nativo\n// associado \u00E9 resolvido pelo atributo `for`, mesmo v\u00EDnculo que j\u00E1 existe\n// entre `.fs-file-input`/`.fs-file-label`.\nexport class FileDrop {\n constructor(labelEl) {\n const inputEl = document.getElementById(labelEl.getAttribute(\"for\"));\n\n if (!inputEl) {\n throw new Error(\"FokusStyles.FileDrop: input associado (via for=) n\u00E3o encontrado.\");\n }\n\n this.labelEl = labelEl;\n this.inputEl = inputEl;\n this._dragDepth = 0;\n\n this._handleDragEnter = this._handleDragEnter.bind(this);\n this._handleDragOver = this._handleDragOver.bind(this);\n this._handleDragLeave = this._handleDragLeave.bind(this);\n this._handleDrop = this._handleDrop.bind(this);\n\n labelEl.addEventListener(\"dragenter\", this._handleDragEnter);\n labelEl.addEventListener(\"dragover\", this._handleDragOver);\n labelEl.addEventListener(\"dragleave\", this._handleDragLeave);\n labelEl.addEventListener(\"drop\", this._handleDrop);\n\n instances.set(labelEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n // Conta entradas/sa\u00EDdas (dragenter/dragleave tamb\u00E9m disparam nos filhos do\n // label, ex. o texto do hint) \u2014 s\u00F3 remove o estado visual quando a\n // contagem volta a zero, sen\u00E3o `.is-dragover` pisca ao arrastar por cima\n // de um elemento interno.\n _handleDragEnter(event) {\n event.preventDefault();\n this._dragDepth += 1;\n this.labelEl.classList.add(\"is-dragover\");\n }\n\n _handleDragOver(event) {\n event.preventDefault();\n }\n\n _handleDragLeave(event) {\n event.preventDefault();\n this._dragDepth = Math.max(0, this._dragDepth - 1);\n if (this._dragDepth === 0) {\n this.labelEl.classList.remove(\"is-dragover\");\n }\n }\n\n _handleDrop(event) {\n event.preventDefault();\n this._dragDepth = 0;\n this.labelEl.classList.remove(\"is-dragover\");\n\n if (this.inputEl.disabled) return;\n\n const files = event.dataTransfer?.files;\n if (!files || files.length === 0) return;\n\n this.inputEl.files = files;\n this.inputEl.dispatchEvent(new Event(\"change\", { bubbles: true }));\n }\n\n dispose() {\n this.labelEl.removeEventListener(\"dragenter\", this._handleDragEnter);\n this.labelEl.removeEventListener(\"dragover\", this._handleDragOver);\n this.labelEl.removeEventListener(\"dragleave\", this._handleDragLeave);\n this.labelEl.removeEventListener(\"drop\", this._handleDrop);\n instances.delete(this.labelEl);\n }\n}\n\nautoInit(\"file-drop\", FileDrop);\n", "import { lockScroll, unlockScroll, onClickOutside } from \"./core/overlay.js\";\nimport { createFocusTrap, onEscapeKey } from \"./core/focus.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nexport class Offcanvas {\n constructor(triggerEl, options = {}) {\n const targetSelector = triggerEl.getAttribute(\"data-fs-target\");\n const offcanvasEl = targetSelector ? document.querySelector(targetSelector) : null;\n\n if (!offcanvasEl) {\n throw new Error(\"FokusStyles.Offcanvas: elemento n\u00E3o encontrado (data-fs-target).\");\n }\n\n this.triggerEl = triggerEl;\n this.offcanvasEl = offcanvasEl;\n this.hasBackdrop = (options.backdrop ?? offcanvasEl.getAttribute(\"data-backdrop\")) !== \"false\";\n this.staticBackdrop = (options.backdrop ?? offcanvasEl.getAttribute(\"data-backdrop\")) === \"static\";\n this.isOpen = false;\n this._focusTrap = null;\n this._outsideClickCleanup = null;\n this._backdropEl = null;\n\n offcanvasEl.setAttribute(\"role\", \"dialog\");\n offcanvasEl.setAttribute(\"aria-modal\", \"true\");\n offcanvasEl.setAttribute(\"aria-hidden\", \"true\");\n const titleEl = offcanvasEl.querySelector(\".fs-offcanvas-title\");\n if (titleEl) {\n if (!titleEl.id) titleEl.id = `fs-offcanvas-title-${Math.random().toString(36).slice(2)}`;\n offcanvasEl.setAttribute(\"aria-labelledby\", titleEl.id);\n }\n\n this._handleTriggerClick = this._handleTriggerClick.bind(this);\n this._handleDismissClick = this._handleDismissClick.bind(this);\n\n triggerEl.addEventListener(\"click\", this._handleTriggerClick);\n offcanvasEl.addEventListener(\"click\", this._handleDismissClick);\n\n this._removeEscapeListener = onEscapeKey(() => {\n if (this.isOpen && !this.staticBackdrop) this.hide();\n });\n\n instances.set(triggerEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _handleTriggerClick(event) {\n event.preventDefault();\n this.show();\n }\n\n _handleDismissClick(event) {\n if (event.target.closest('[data-fs-dismiss=\"offcanvas\"]')) {\n this.hide();\n }\n }\n\n show() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n if (this.hasBackdrop) {\n this._backdropEl = document.createElement(\"div\");\n this._backdropEl.className = \"fs-offcanvas-backdrop\";\n document.body.appendChild(this._backdropEl);\n // For\u00E7a reflow antes de adicionar `.is-open` para a transi\u00E7\u00E3o de opacidade\n // rodar (elemento rec\u00E9m-criado come\u00E7a sem a classe).\n void this._backdropEl.offsetHeight;\n this._backdropEl.classList.add(\"is-open\");\n }\n\n this.offcanvasEl.classList.add(\"is-open\");\n this.offcanvasEl.setAttribute(\"aria-hidden\", \"false\");\n lockScroll();\n\n this._focusTrap = createFocusTrap(this.offcanvasEl);\n // `visibility: hidden` mant\u00E9m `offsetParent` n\u00E3o nulo (diferente de\n // `display: none`), ent\u00E3o o elemento s\u00F3 fica de fato foc\u00E1vel depois que o\n // navegador processa a transi\u00E7\u00E3o de `visibility` para \"visible\" \u2014 em\n // Chromium isso s\u00F3 \u00E9 garantido ap\u00F3s um ciclo completo de paint, da\u00ED o\n // duplo requestAnimationFrame antes de mover o foco.\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n if (this.isOpen) this._focusTrap.activate();\n });\n });\n\n if (!this.staticBackdrop) {\n this._outsideClickCleanup = onClickOutside(this.offcanvasEl, (event) => {\n if (this.triggerEl.contains(event.target)) return;\n this.hide();\n });\n }\n\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:offcanvas:shown\", { bubbles: true }));\n }\n\n hide() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n this.offcanvasEl.classList.remove(\"is-open\");\n this.offcanvasEl.setAttribute(\"aria-hidden\", \"true\");\n unlockScroll();\n\n this._backdropEl?.remove();\n this._backdropEl = null;\n\n this._focusTrap?.deactivate();\n this._focusTrap = null;\n\n this._outsideClickCleanup?.();\n this._outsideClickCleanup = null;\n\n this.triggerEl.focus();\n\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:offcanvas:hidden\", { bubbles: true }));\n }\n\n toggle() {\n if (this.isOpen) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n dispose() {\n this.hide();\n this._removeEscapeListener();\n this.triggerEl.removeEventListener(\"click\", this._handleTriggerClick);\n this.offcanvasEl.removeEventListener(\"click\", this._handleDismissClick);\n instances.delete(this.triggerEl);\n }\n}\n\nautoInit(\"offcanvas\", Offcanvas);\n", "import { Dropdown } from \"./dropdown.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nexport class Select {\n constructor(selectEl) {\n if (selectEl.tagName !== \"SELECT\") {\n throw new Error(\"FokusStyles.Select: elemento precisa ser um <select> nativo.\");\n }\n\n this.selectEl = selectEl;\n this.size = selectEl.getAttribute(\"data-size\");\n this._originalDisplay = selectEl.style.display;\n\n this._buildMarkup();\n this._syncFromNativeSelect();\n\n this.dropdown = new Dropdown(this.toggleEl);\n\n this.toggleEl.setAttribute(\"aria-haspopup\", \"listbox\");\n this.menuEl.setAttribute(\"role\", \"listbox\");\n\n this.toggleEl.addEventListener(\"fs:dropdown:shown\", () => {\n this.menuEl.style.width = `${this.toggleEl.offsetWidth}px`;\n });\n\n this._handleItemClick = this._handleItemClick.bind(this);\n this._handleNativeChange = this._handleNativeChange.bind(this);\n this.menuEl.addEventListener(\"click\", this._handleItemClick);\n this.selectEl.addEventListener(\"change\", this._handleNativeChange);\n\n instances.set(selectEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _buildMarkup() {\n const wrapper = document.createElement(\"div\");\n wrapper.className = \"fs-dropdown fs-form-select-dropdown\";\n\n const toggle = document.createElement(\"button\");\n toggle.type = \"button\";\n toggle.className = \"fs-form-select\";\n if (this.size === \"sm\" || this.size === \"lg\") {\n toggle.classList.add(`fs-form-select-${this.size}`);\n }\n toggle.disabled = this.selectEl.disabled;\n\n const menu = document.createElement(\"div\");\n menu.className = \"fs-dropdown-menu\";\n\n Array.from(this.selectEl.options).forEach((option) => {\n const item = document.createElement(\"button\");\n item.type = \"button\";\n item.className = \"fs-dropdown-item\";\n item.setAttribute(\"role\", \"option\");\n item.textContent = option.textContent;\n if (option.disabled) item.classList.add(\"is-disabled\");\n menu.appendChild(item);\n });\n\n this.selectEl.insertAdjacentElement(\"afterend\", wrapper);\n wrapper.appendChild(toggle);\n wrapper.appendChild(menu);\n\n this.selectEl.style.display = \"none\";\n this.wrapperEl = wrapper;\n this.toggleEl = toggle;\n this.menuEl = menu;\n }\n\n _syncFromNativeSelect() {\n const selectedOption = this.selectEl.options[this.selectEl.selectedIndex];\n this.toggleEl.textContent = selectedOption ? selectedOption.textContent : \"\";\n\n Array.from(this.menuEl.children).forEach((item, index) => {\n const isSelected = index === this.selectEl.selectedIndex;\n item.classList.toggle(\"is-active\", isSelected);\n item.setAttribute(\"aria-selected\", String(isSelected));\n });\n }\n\n _handleItemClick(event) {\n const item = event.target.closest(\".fs-dropdown-item:not(.is-disabled)\");\n if (!item) return;\n\n const index = Array.from(this.menuEl.children).indexOf(item);\n this.selectEl.selectedIndex = index;\n this._syncFromNativeSelect();\n\n this.selectEl.dispatchEvent(new Event(\"change\", { bubbles: true }));\n this.selectEl.dispatchEvent(\n new CustomEvent(\"fs:select:changed\", { bubbles: true, detail: { value: this.selectEl.value } }),\n );\n }\n\n _handleNativeChange() {\n this._syncFromNativeSelect();\n }\n\n show() {\n this.dropdown.show();\n }\n\n hide() {\n this.dropdown.hide();\n }\n\n toggle() {\n this.dropdown.toggle();\n }\n\n dispose() {\n this.dropdown.dispose();\n this.menuEl.removeEventListener(\"click\", this._handleItemClick);\n this.selectEl.removeEventListener(\"change\", this._handleNativeChange);\n this.wrapperEl.remove();\n this.selectEl.style.display = this._originalDisplay;\n instances.delete(this.selectEl);\n }\n}\n\nautoInit(\"select\", Select);\n", "import { collapse, expand } from \"./core/transition.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\nlet idCounter = 0;\n\nexport class Accordion {\n constructor(accordionEl) {\n this.accordionEl = accordionEl;\n this.exclusive = accordionEl.getAttribute(\"data-multiple\") !== \"true\";\n this.items = [];\n\n const buttons = Array.from(accordionEl.querySelectorAll(\".fs-accordion-button\"));\n\n buttons.forEach((button) => {\n const panel = button.closest(\".fs-accordion-item\").querySelector(\".fs-accordion-collapse\");\n\n idCounter += 1;\n if (!panel.id) panel.id = `fokus-accordion-panel-${idCounter}`;\n if (!button.id) button.id = `fokus-accordion-button-${idCounter}`;\n\n button.setAttribute(\"aria-controls\", panel.id);\n panel.setAttribute(\"role\", \"region\");\n panel.setAttribute(\"aria-labelledby\", button.id);\n\n const startsOpen = button.getAttribute(\"aria-expanded\") === \"true\";\n button.setAttribute(\"aria-expanded\", String(startsOpen));\n if (!startsOpen) {\n panel.style.display = \"none\";\n }\n panel.hidden = !startsOpen;\n\n const entry = { button, panel, handleClick: () => this._toggle(entry) };\n this.items.push(entry);\n button.addEventListener(\"click\", entry.handleClick);\n });\n\n instances.set(accordionEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _toggle(entry) {\n const isOpen = entry.button.getAttribute(\"aria-expanded\") === \"true\";\n\n if (isOpen) {\n this._close(entry);\n return;\n }\n\n if (this.exclusive) {\n this.items\n .filter((other) => other !== entry && other.button.getAttribute(\"aria-expanded\") === \"true\")\n .forEach((other) => this._close(other));\n }\n\n this._open(entry);\n }\n\n _open(entry) {\n entry.button.setAttribute(\"aria-expanded\", \"true\");\n entry.panel.hidden = false;\n expand(entry.panel).then(() => {\n entry.button.dispatchEvent(new CustomEvent(\"fs:accordion:shown\", { bubbles: true }));\n });\n }\n\n _close(entry) {\n entry.button.setAttribute(\"aria-expanded\", \"false\");\n collapse(entry.panel).then(() => {\n entry.panel.hidden = true;\n entry.button.dispatchEvent(new CustomEvent(\"fs:accordion:hidden\", { bubbles: true }));\n });\n }\n\n dispose() {\n this.items.forEach((entry) => entry.button.removeEventListener(\"click\", entry.handleClick));\n instances.delete(this.accordionEl);\n }\n}\n\nautoInit(\"accordion\", Accordion);\n", "import { collapse, expand } from \"./core/transition.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\nlet idCounter = 0;\n\nexport class Collapse {\n constructor(triggerEl) {\n const targetSelector = triggerEl.getAttribute(\"data-fs-target\");\n const collapseEl = targetSelector ? document.querySelector(targetSelector) : null;\n\n if (!collapseEl) {\n throw new Error(\"FokusStyles.Collapse: elemento n\u00E3o encontrado (data-fs-target).\");\n }\n\n this.triggerEl = triggerEl;\n this.collapseEl = collapseEl;\n this.isOpen = triggerEl.getAttribute(\"aria-expanded\") === \"true\";\n\n idCounter += 1;\n if (!collapseEl.id) collapseEl.id = `fokus-collapse-${idCounter}`;\n triggerEl.setAttribute(\"aria-controls\", collapseEl.id);\n triggerEl.setAttribute(\"aria-expanded\", String(this.isOpen));\n\n if (!this.isOpen) {\n collapseEl.style.display = \"none\";\n }\n\n this._handleClick = () => this.toggle();\n triggerEl.addEventListener(\"click\", this._handleClick);\n\n instances.set(triggerEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n show() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n this.triggerEl.setAttribute(\"aria-expanded\", \"true\");\n expand(this.collapseEl).then(() => {\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:collapse:shown\", { bubbles: true }));\n });\n }\n\n hide() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n this.triggerEl.setAttribute(\"aria-expanded\", \"false\");\n collapse(this.collapseEl).then(() => {\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:collapse:hidden\", { bubbles: true }));\n });\n }\n\n toggle() {\n if (this.isOpen) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n dispose() {\n this.triggerEl.removeEventListener(\"click\", this._handleClick);\n instances.delete(this.triggerEl);\n }\n}\n\nautoInit(\"collapse\", Collapse);\n", "import { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\nlet idCounter = 0;\n\nexport class Tabs {\n constructor(tablistEl) {\n this.tablistEl = tablistEl;\n this.tabs = Array.from(tablistEl.querySelectorAll(\".fs-nav-link\"));\n this.manualActivation = tablistEl.getAttribute(\"data-tabs-activation\") === \"manual\";\n\n tablistEl.setAttribute(\"role\", \"tablist\");\n\n this.tabs.forEach((tab) => {\n const isActive = tab.classList.contains(\"is-active\");\n\n idCounter += 1;\n if (!tab.id) tab.id = `fokus-tab-${idCounter}`;\n\n tab.setAttribute(\"role\", \"tab\");\n tab.setAttribute(\"aria-selected\", String(isActive));\n tab.setAttribute(\"tabindex\", isActive ? \"0\" : \"-1\");\n\n const paneSelector = tab.getAttribute(\"data-fs-target\");\n const pane = paneSelector ? document.querySelector(paneSelector) : null;\n\n if (pane) {\n pane.setAttribute(\"role\", \"tabpanel\");\n pane.setAttribute(\"aria-labelledby\", tab.id);\n pane.setAttribute(\"tabindex\", \"0\");\n pane.hidden = !isActive;\n }\n });\n\n this._handleClick = this._handleClick.bind(this);\n this._handleKeydown = this._handleKeydown.bind(this);\n\n tablistEl.addEventListener(\"click\", this._handleClick);\n tablistEl.addEventListener(\"keydown\", this._handleKeydown);\n\n instances.set(tablistEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _handleClick(event) {\n const tab = event.target.closest(\".fs-nav-link:not(.is-disabled)\");\n if (!tab || !this.tabs.includes(tab)) return;\n this.show(tab);\n }\n\n _handleKeydown(event) {\n const enabledTabs = this.tabs.filter((tab) => !tab.classList.contains(\"is-disabled\"));\n const currentIndex = enabledTabs.indexOf(document.activeElement);\n if (currentIndex === -1) return;\n\n let nextIndex = null;\n if (event.key === \"ArrowRight\") nextIndex = (currentIndex + 1) % enabledTabs.length;\n else if (event.key === \"ArrowLeft\") nextIndex = (currentIndex - 1 + enabledTabs.length) % enabledTabs.length;\n else if (event.key === \"Home\") nextIndex = 0;\n else if (event.key === \"End\") nextIndex = enabledTabs.length - 1;\n\n if (nextIndex === null) return;\n\n event.preventDefault();\n const nextTab = enabledTabs[nextIndex];\n nextTab.focus();\n if (!this.manualActivation) this.show(nextTab);\n }\n\n show(tab) {\n if (tab.classList.contains(\"is-active\")) return;\n\n this.tabs.forEach((otherTab) => {\n const isActive = otherTab === tab;\n\n otherTab.classList.toggle(\"is-active\", isActive);\n otherTab.setAttribute(\"aria-selected\", String(isActive));\n otherTab.setAttribute(\"tabindex\", isActive ? \"0\" : \"-1\");\n\n const paneSelector = otherTab.getAttribute(\"data-fs-target\");\n const pane = paneSelector ? document.querySelector(paneSelector) : null;\n pane?.classList.toggle(\"is-active\", isActive);\n if (pane) pane.hidden = !isActive;\n });\n\n tab.dispatchEvent(\n new CustomEvent(\"fs:tab:changed\", { bubbles: true, detail: { target: tab.getAttribute(\"data-fs-target\") } }),\n );\n }\n\n dispose() {\n this.tablistEl.removeEventListener(\"click\", this._handleClick);\n this.tablistEl.removeEventListener(\"keydown\", this._handleKeydown);\n instances.delete(this.tablistEl);\n }\n}\n\nautoInit(\"tabs\", Tabs);\n", "import { collapse, expand } from \"./core/transition.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nexport class Toast {\n constructor(toastEl) {\n this.toastEl = toastEl;\n this.delay = Number(toastEl.getAttribute(\"data-delay\")) || 4000;\n this.autohide = toastEl.getAttribute(\"data-autohide\") !== \"false\";\n this.isOpen = false;\n this._hideTimer = null;\n\n toastEl.setAttribute(\"role\", \"status\");\n toastEl.setAttribute(\"aria-live\", \"polite\");\n toastEl.style.display = \"none\";\n\n this._handleDismissClick = this._handleDismissClick.bind(this);\n toastEl.addEventListener(\"click\", this._handleDismissClick);\n\n instances.set(toastEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _handleDismissClick(event) {\n if (event.target.closest('[data-fs-dismiss=\"toast\"]')) {\n this.hide();\n }\n }\n\n show() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n expand(this.toastEl).then(() => {\n this.toastEl.dispatchEvent(new CustomEvent(\"fs:toast:shown\", { bubbles: true }));\n });\n\n if (this.autohide) {\n this._hideTimer = setTimeout(() => this.hide(), this.delay);\n }\n }\n\n hide() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n clearTimeout(this._hideTimer);\n this._hideTimer = null;\n\n collapse(this.toastEl).then(() => {\n this.toastEl.dispatchEvent(new CustomEvent(\"fs:toast:hidden\", { bubbles: true }));\n });\n }\n\n toggle() {\n if (this.isOpen) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n dispose() {\n clearTimeout(this._hideTimer);\n this.toastEl.removeEventListener(\"click\", this._handleDismissClick);\n instances.delete(this.toastEl);\n }\n}\n\nautoInit(\"toast\", Toast);\n", "import { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\nconst interactiveSelector = \"a, button, input, select, textarea, label, [contenteditable='true']\";\n\nexport class Carousel {\n constructor(carouselEl) {\n this.carouselEl = carouselEl;\n this.inner = carouselEl.querySelector(\".fs-carousel-inner\");\n this.items = Array.from(carouselEl.querySelectorAll(\".fs-carousel-item\"));\n this.indicators = Array.from(carouselEl.querySelectorAll(\".fs-carousel-indicators button\"));\n this.prevBtn = carouselEl.querySelector(\".fs-carousel-control-prev\");\n this.nextBtn = carouselEl.querySelector(\".fs-carousel-control-next\");\n this.toggleBtn = carouselEl.querySelector(\"[data-fs-carousel-toggle]\");\n this.counterEl = carouselEl.querySelector(\"[data-fs-carousel-counter]\");\n this.progressEl = carouselEl.querySelector(\"[data-fs-carousel-progress]\");\n\n this.interval = Number(carouselEl.getAttribute(\"data-interval\")) || 5000;\n this.autoplay = carouselEl.getAttribute(\"data-autoplay\") === \"true\";\n this.dragEnabled = carouselEl.getAttribute(\"data-drag\") !== \"false\";\n this.timer = null;\n this.userPaused = false;\n this.isHovering = false;\n this.isFocusWithin = false;\n this.drag = null;\n this.isStatic = this.items.length < 2;\n this.index = Math.max(this.items.findIndex((item) => item.classList.contains(\"is-active\")), 0);\n\n carouselEl.setAttribute(\"role\", \"group\");\n carouselEl.setAttribute(\"aria-roledescription\", \"carousel\");\n carouselEl.classList.toggle(\"is-static\", this.isStatic);\n carouselEl.classList.toggle(\"is-two-slides\", this.items.length === 2);\n if (!this.isStatic && !carouselEl.hasAttribute(\"tabindex\")) {\n carouselEl.setAttribute(\"tabindex\", \"0\");\n this.managesTabindex = true;\n }\n\n this._render();\n\n this._handlePrev = () => this.prev();\n this._handleNext = () => this.next();\n this._handleToggle = () => (this.userPaused ? this.play() : this.pause());\n this._handleIndicator = (event) => {\n const index = this.indicators.indexOf(event.currentTarget);\n if (index !== -1) this.goTo(index);\n };\n this._handleKeydown = this._handleKeydown.bind(this);\n this._handlePointerDown = this._handlePointerDown.bind(this);\n this._handlePointerMove = this._handlePointerMove.bind(this);\n this._handlePointerEnd = this._handlePointerEnd.bind(this);\n this._handleVisibilityChange = this._handleVisibilityChange.bind(this);\n this._handleMouseEnter = () => {\n this.isHovering = true;\n this._syncAutoplay();\n };\n this._handleMouseLeave = () => {\n this.isHovering = false;\n this._syncAutoplay();\n };\n this._handleFocusIn = () => {\n this.isFocusWithin = true;\n this._syncAutoplay();\n };\n this._handleFocusOut = () => {\n queueMicrotask(() => {\n this.isFocusWithin = carouselEl.contains(document.activeElement);\n this._syncAutoplay();\n });\n };\n\n this.prevBtn?.addEventListener(\"click\", this._handlePrev);\n this.nextBtn?.addEventListener(\"click\", this._handleNext);\n this.toggleBtn?.addEventListener(\"click\", this._handleToggle);\n this.indicators.forEach((btn) => btn.addEventListener(\"click\", this._handleIndicator));\n carouselEl.addEventListener(\"keydown\", this._handleKeydown);\n carouselEl.addEventListener(\"pointerdown\", this._handlePointerDown);\n carouselEl.addEventListener(\"pointermove\", this._handlePointerMove);\n carouselEl.addEventListener(\"pointerup\", this._handlePointerEnd);\n carouselEl.addEventListener(\"pointercancel\", this._handlePointerEnd);\n carouselEl.addEventListener(\"mouseenter\", this._handleMouseEnter);\n carouselEl.addEventListener(\"mouseleave\", this._handleMouseLeave);\n carouselEl.addEventListener(\"focusin\", this._handleFocusIn);\n carouselEl.addEventListener(\"focusout\", this._handleFocusOut);\n document.addEventListener(\"visibilitychange\", this._handleVisibilityChange);\n\n instances.set(carouselEl, this);\n this._syncAutoplay();\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _isDocumentVisible() {\n return document.visibilityState !== \"hidden\";\n }\n\n _isTemporarilyPaused() {\n return this.isHovering || this.isFocusWithin || !this._isDocumentVisible() || Boolean(this.drag);\n }\n\n _isAutoplayEnabled() {\n return this.autoplay && !this.isStatic && !this.userPaused && !this._isTemporarilyPaused();\n }\n\n _syncAutoplay() {\n if (this.timer) {\n clearInterval(this.timer);\n this.timer = null;\n }\n if (this._isAutoplayEnabled()) this.timer = setInterval(() => this.next(), this.interval);\n this._syncAutoplayA11y();\n }\n\n _syncAutoplayA11y() {\n if (this.inner) this.inner.setAttribute(\"aria-live\", this.timer ? \"off\" : \"polite\");\n this.carouselEl.classList.toggle(\n \"is-autoplay-paused\",\n this.autoplay && !this.isStatic && !this.timer,\n );\n if (this.progressEl) {\n this.progressEl.style.setProperty(\"--fs-carousel-progress-duration\", `${this.interval}ms`);\n this.progressEl.classList.remove(\"is-running\");\n if (this.timer) {\n void this.progressEl.offsetWidth;\n this.progressEl.classList.add(\"is-running\");\n }\n }\n if (!this.toggleBtn) return;\n\n const isPlaying = this.autoplay && !this.userPaused && !this.isStatic;\n this.toggleBtn.disabled = !this.autoplay || this.isStatic;\n this.toggleBtn.setAttribute(\"aria-pressed\", String(isPlaying));\n this.toggleBtn.setAttribute(\n \"aria-label\",\n isPlaying ? \"Pausar reprodu\u00E7\u00E3o autom\u00E1tica\" : \"Reproduzir reprodu\u00E7\u00E3o autom\u00E1tica\",\n );\n }\n\n _render() {\n if (this.inner && !this.carouselEl.classList.contains(\"fs-carousel-fade\")) {\n this.inner.style.transform = `translate3d(-${this.index * 100}%, 0, 0)`;\n }\n\n this.items.forEach((item, index) => {\n item.classList.toggle(\"is-active\", index === this.index);\n item.setAttribute(\"aria-hidden\", String(index !== this.index));\n item.toggleAttribute(\"inert\", index !== this.index);\n });\n this.indicators.forEach((btn, index) => {\n btn.classList.toggle(\"is-active\", index === this.index);\n btn.setAttribute(\"aria-current\", String(index === this.index));\n });\n if (this.counterEl) this.counterEl.textContent = `${this.index + 1} de ${this.items.length}`;\n this._syncAutoplayA11y();\n }\n\n _goToIndex(nextIndex) {\n const count = this.items.length;\n if (count < 2) return;\n\n const from = this.index;\n const to = ((nextIndex % count) + count) % count;\n if (to === from) return;\n\n this.index = to;\n this._render();\n this.carouselEl.dispatchEvent(\n new CustomEvent(\"fs:carousel:slid\", { bubbles: true, detail: { from, to } }),\n );\n }\n\n next() {\n this._goToIndex(this.index + 1);\n }\n\n prev() {\n this._goToIndex(this.index - 1);\n }\n\n goTo(index) {\n this._goToIndex(index);\n }\n\n pause() {\n if (!this.autoplay) return;\n this.userPaused = true;\n this._syncAutoplay();\n }\n\n play() {\n if (!this.autoplay || this.isStatic) return;\n this.userPaused = false;\n this._syncAutoplay();\n }\n\n _handleKeydown(event) {\n if (event.target !== this.carouselEl) return;\n if (event.key === \"ArrowRight\") {\n event.preventDefault();\n this.next();\n } else if (event.key === \"ArrowLeft\") {\n event.preventDefault();\n this.prev();\n } else if (event.key === \"Home\") {\n event.preventDefault();\n this.goTo(0);\n } else if (event.key === \"End\") {\n event.preventDefault();\n this.goTo(this.items.length - 1);\n }\n }\n\n _handlePointerDown(event) {\n if (!this.dragEnabled || this.isStatic || this.carouselEl.classList.contains(\"fs-carousel-fade\")) return;\n if (event.isPrimary === false || (event.pointerType === \"mouse\" && event.button !== 0)) return;\n if (event.target.closest?.(interactiveSelector)) return;\n\n this.drag = { id: event.pointerId, startX: event.clientX, startY: event.clientY, deltaX: 0, horizontal: false };\n try {\n this.carouselEl.setPointerCapture?.(event.pointerId);\n } catch {\n // Alguns ambientes de teste n\u00E3o implementam pointer capture.\n }\n this._syncAutoplay();\n }\n\n _handlePointerMove(event) {\n if (!this.drag || event.pointerId !== this.drag.id) return;\n const deltaX = event.clientX - this.drag.startX;\n const deltaY = event.clientY - this.drag.startY;\n\n if (!this.drag.horizontal) {\n if (Math.abs(deltaY) > 8 && Math.abs(deltaY) >= Math.abs(deltaX)) {\n this._clearDrag();\n return;\n }\n if (Math.abs(deltaX) <= 8 || Math.abs(deltaX) < Math.abs(deltaY)) return;\n this.drag.horizontal = true;\n this.carouselEl.classList.add(\"is-dragging\");\n }\n\n this.drag.deltaX = deltaX;\n this.inner.style.transform = `translate3d(calc(-${this.index * 100}% + ${deltaX}px), 0, 0)`;\n event.preventDefault();\n }\n\n _handlePointerEnd(event) {\n if (!this.drag || event.pointerId !== this.drag.id) return;\n const { deltaX, horizontal } = this.drag;\n this._clearDrag();\n this._render();\n if (event.type === \"pointercancel\" || !horizontal) return;\n\n const width = this.carouselEl.getBoundingClientRect().width;\n const threshold = Math.min(80, Math.max(40, width * 0.12));\n if (Math.abs(deltaX) < threshold) return;\n if (deltaX < 0) this.next();\n else this.prev();\n }\n\n _clearDrag() {\n if (!this.drag) return;\n try {\n if (this.carouselEl.hasPointerCapture?.(this.drag.id)) this.carouselEl.releasePointerCapture(this.drag.id);\n } catch {\n // Pointer capture pode j\u00E1 ter sido liberado pelo navegador.\n }\n this.drag = null;\n this.carouselEl.classList.remove(\"is-dragging\");\n this._syncAutoplay();\n }\n\n _handleVisibilityChange() {\n this._syncAutoplay();\n }\n\n dispose() {\n this.userPaused = true;\n this._clearDrag();\n this._syncAutoplay();\n this.prevBtn?.removeEventListener(\"click\", this._handlePrev);\n this.nextBtn?.removeEventListener(\"click\", this._handleNext);\n this.toggleBtn?.removeEventListener(\"click\", this._handleToggle);\n this.indicators.forEach((btn) => btn.removeEventListener(\"click\", this._handleIndicator));\n this.carouselEl.removeEventListener(\"keydown\", this._handleKeydown);\n this.carouselEl.removeEventListener(\"pointerdown\", this._handlePointerDown);\n this.carouselEl.removeEventListener(\"pointermove\", this._handlePointerMove);\n this.carouselEl.removeEventListener(\"pointerup\", this._handlePointerEnd);\n this.carouselEl.removeEventListener(\"pointercancel\", this._handlePointerEnd);\n this.carouselEl.removeEventListener(\"mouseenter\", this._handleMouseEnter);\n this.carouselEl.removeEventListener(\"mouseleave\", this._handleMouseLeave);\n this.carouselEl.removeEventListener(\"focusin\", this._handleFocusIn);\n this.carouselEl.removeEventListener(\"focusout\", this._handleFocusOut);\n document.removeEventListener(\"visibilitychange\", this._handleVisibilityChange);\n if (this.managesTabindex) this.carouselEl.removeAttribute(\"tabindex\");\n instances.delete(this.carouselEl);\n }\n}\n\nautoInit(\"carousel\", Carousel);\n", "import { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nexport class Stepper {\n constructor(stepperEl) {\n this.stepperEl = stepperEl;\n this.steps = Array.from(stepperEl.querySelectorAll(\".fs-step\"));\n this.linear = stepperEl.getAttribute(\"data-linear\") !== \"false\";\n\n const contentPanels = Array.from(stepperEl.querySelectorAll(\".fs-step-panel\"));\n this.panels = this.steps.map((step, i) =>\n step.dataset.fsTarget ? stepperEl.querySelector(step.dataset.fsTarget) : contentPanels[i],\n );\n\n this.prevBtn = stepperEl.querySelector('[data-stepper=\"prev\"]');\n this.nextBtn = stepperEl.querySelector('[data-stepper=\"next\"]');\n this.finished = false;\n\n this.current = Math.max(\n this.steps.findIndex((step) => step.classList.contains(\"fs-step-active\")),\n 0,\n );\n\n this.steps.forEach((step, i) => {\n step.setAttribute(\"role\", \"listitem\");\n step.handleClick = () => this._onStepClick(i);\n step.addEventListener(\"click\", step.handleClick);\n step.handleKeydown = (event) => {\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault();\n this._onStepClick(i);\n }\n };\n step.addEventListener(\"keydown\", step.handleKeydown);\n });\n\n this._handlePrev = () => this.prev();\n this._handleNext = () => this.next();\n this.prevBtn?.addEventListener(\"click\", this._handlePrev);\n this.nextBtn?.addEventListener(\"click\", this._handleNext);\n\n this._render();\n instances.set(stepperEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _onStepClick(index) {\n // Modo linear: s\u00F3 permite voltar para passos j\u00E1 conclu\u00EDdos (ou o atual).\n if (this.linear && index > this.current) return;\n this.goTo(index);\n }\n\n _render() {\n this.steps.forEach((step, i) => {\n const isActive = i === this.current && !this.finished;\n const isCompleted = i < this.current || this.finished;\n\n step.classList.toggle(\"fs-step-active\", isActive);\n step.classList.toggle(\"fs-step-completed\", isCompleted);\n step.setAttribute(\"aria-current\", isActive ? \"step\" : \"false\");\n\n const clickable = this.linear ? isCompleted : true;\n step.classList.toggle(\"fs-step-clickable\", clickable);\n step.setAttribute(\"tabindex\", clickable ? \"0\" : \"-1\");\n\n const panel = this.panels[i];\n if (panel) panel.classList.toggle(\"is-active\", i === this.current);\n });\n\n if (this.prevBtn) this.prevBtn.disabled = this.current === 0 && !this.finished;\n }\n\n _change(to) {\n const from = this.current;\n const target = Math.max(0, Math.min(to, this.steps.length - 1));\n if (target === from && !this.finished) return false;\n\n const before = new CustomEvent(\"fs:stepper:beforechange\", {\n bubbles: true,\n cancelable: true,\n detail: { from, to: target },\n });\n this.stepperEl.dispatchEvent(before);\n if (before.defaultPrevented) return false;\n\n this.finished = false;\n this.current = target;\n this._render();\n\n this.stepperEl.dispatchEvent(\n new CustomEvent(\"fs:stepper:changed\", { bubbles: true, detail: { from, to: target } }),\n );\n return true;\n }\n\n next() {\n if (this.current < this.steps.length - 1) return this._change(this.current + 1);\n return this.complete();\n }\n\n prev() {\n return this._change(this.current - 1);\n }\n\n goTo(index) {\n return this._change(index);\n }\n\n setError(index, hasError = true) {\n const step = this.steps[index];\n if (step) step.classList.toggle(\"fs-step-error\", hasError);\n }\n\n complete() {\n const before = new CustomEvent(\"fs:stepper:beforechange\", {\n bubbles: true,\n cancelable: true,\n detail: { from: this.current, to: this.current, completing: true },\n });\n this.stepperEl.dispatchEvent(before);\n if (before.defaultPrevented) return false;\n\n this.finished = true;\n this._render();\n this.stepperEl.dispatchEvent(new CustomEvent(\"fs:stepper:completed\", { bubbles: true }));\n return true;\n }\n\n dispose() {\n this.steps.forEach((step) => {\n step.removeEventListener(\"click\", step.handleClick);\n step.removeEventListener(\"keydown\", step.handleKeydown);\n });\n this.prevBtn?.removeEventListener(\"click\", this._handlePrev);\n this.nextBtn?.removeEventListener(\"click\", this._handleNext);\n instances.delete(this.stepperEl);\n }\n}\n\nautoInit(\"stepper\", Stepper);\n", "import { Dropdown } from \"./dropdown.js\";\nimport { Tooltip } from \"./tooltip.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nexport class Breadcrumb {\n constructor(listEl, options = {}) {\n this.listEl = listEl;\n this.maxItems = Number(options.maxItems ?? listEl.getAttribute(\"data-max-items\") ?? 4);\n this.items = Array.from(listEl.children).filter((el) => el.classList.contains(\"fs-breadcrumb-item\"));\n this.isCollapsed = false;\n this._moreItem = null;\n this._dropdown = null;\n // Abaixo do breakpoint `sm` (scss/settings/_breakpoints.scss, 640px). Por\n // inst\u00E2ncia (em vez de m\u00F3dulo) para poder ser mockado por teste e para o\n // listener ser removido de forma isolada em dispose().\n this._collapseQuery = window.matchMedia(\"(max-width: 639.98px)\");\n\n this._setupTruncation();\n\n this._handleMediaChange = () => this._render();\n this._collapseQuery.addEventListener(\"change\", this._handleMediaChange);\n\n this._render();\n\n instances.set(listEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n // Trunca com retic\u00EAncias (CSS) e s\u00F3 anexa tooltip (js/tooltip.js) nos itens\n // cujo texto realmente transborda \u2014 evita tooltip redundante em labels\n // curtos que j\u00E1 cabem inteiros. Mede depois de `document.fonts.ready`: como\n // a tipografia \u00E9 self-hosted (docs/definitions.md, se\u00E7\u00E3o 18.2), medir antes\n // da fonte carregar poderia usar a m\u00E9trica do fallback do sistema e errar o\n // corte.\n _setupTruncation() {\n const targets = this.items.map((item) => item.querySelector(\"a\") ?? item);\n targets.forEach((target) => target.classList.add(\"fs-breadcrumb-item-truncate\"));\n\n const measure = () => {\n targets.forEach((target) => {\n if (target.scrollWidth > target.clientWidth) {\n target.setAttribute(\"data-title\", target.textContent.trim());\n new Tooltip(target);\n }\n });\n };\n\n if (document.fonts?.ready) {\n document.fonts.ready.then(measure);\n } else {\n requestAnimationFrame(measure);\n }\n }\n\n _render() {\n const shouldCollapse = this._collapseQuery.matches && this.items.length > this.maxItems;\n\n if (shouldCollapse === this.isCollapsed) return;\n this.isCollapsed = shouldCollapse;\n\n if (shouldCollapse) {\n this._collapse();\n } else {\n this._expand();\n }\n }\n\n // Mant\u00E9m o primeiro e o \u00FAltimo n\u00EDvel vis\u00EDveis; os intermedi\u00E1rios viram um\n // \u00FAnico item \"\u2026\" com dropdown (mesma composi\u00E7\u00E3o de js/select.js: monta o\n // toggle + `.fs-dropdown-menu` como irm\u00E3os e deixa o Dropdown reposicionar).\n _collapse() {\n const hiddenItems = this.items.slice(1, -1);\n hiddenItems.forEach((item) => {\n item.style.display = \"none\";\n });\n\n const moreItem = document.createElement(\"li\");\n moreItem.className = \"fs-breadcrumb-item\";\n\n const toggle = document.createElement(\"button\");\n toggle.type = \"button\";\n toggle.className = \"fs-breadcrumb-more\";\n toggle.setAttribute(\"aria-label\", \"Mostrar n\u00EDveis ocultos\");\n toggle.textContent = \"\u2026\";\n\n const menu = document.createElement(\"div\");\n menu.className = \"fs-dropdown-menu\";\n\n hiddenItems.forEach((item) => {\n const source = item.querySelector(\"a\") ?? item;\n const isLink = source.tagName === \"A\";\n const link = document.createElement(isLink ? \"a\" : \"span\");\n link.className = \"fs-dropdown-item\";\n link.textContent = source.textContent.trim();\n if (isLink) link.href = source.getAttribute(\"href\");\n menu.appendChild(link);\n });\n\n moreItem.appendChild(toggle);\n moreItem.appendChild(menu);\n this.items[0].insertAdjacentElement(\"afterend\", moreItem);\n\n this._moreItem = moreItem;\n this._dropdown = new Dropdown(toggle);\n }\n\n _expand() {\n this.items.slice(1, -1).forEach((item) => {\n item.style.removeProperty(\"display\");\n });\n\n this._dropdown?.dispose();\n this._dropdown = null;\n\n this._moreItem?.remove();\n this._moreItem = null;\n }\n\n dispose() {\n this._collapseQuery.removeEventListener(\"change\", this._handleMediaChange);\n this._expand();\n instances.delete(this.listEl);\n }\n}\n\nautoInit(\"breadcrumb\", Breadcrumb);\n", "import { Toast } from \"./toast.js\";\nimport { computePosition, applyPosition } from \"./core/positioning.js\";\nimport { onClickOutside } from \"./core/overlay.js\";\nimport { onEscapeKey } from \"./core/focus.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nlet idCounter = 0;\n\nfunction escapeHtml(value) {\n const div = document.createElement(\"div\");\n div.textContent = value == null ? \"\" : String(value);\n return div.innerHTML;\n}\n\nfunction formatTime(time) {\n const date = new Date(time);\n const hh = String(date.getHours()).padStart(2, \"0\");\n const mm = String(date.getMinutes()).padStart(2, \"0\");\n return `${hh}:${mm}`;\n}\n\n// Notification Center (Etapa 10): n\u00E3o \u00E9 um \"componente visual\" novo \u2014 orquestra\n// m\u00FAltiplas inst\u00E2ncias de FokusStyles.Toast (js/toast.js) e mant\u00E9m um hist\u00F3rico. Um\n// `push()` cria um toast na hora (mesma marca\u00E7\u00E3o de mockup/accordion-tabs-toast)\n// e registra a notifica\u00E7\u00E3o; o painel (posicionado como o Dropdown, via\n// js/core/positioning.js) lista o hist\u00F3rico, com contador de n\u00E3o-lidas no\n// gatilho. Persist\u00EAncia opcional em localStorage (`data-storage=\"local\"`).\nexport class NotificationCenter {\n constructor(triggerEl, options = {}) {\n const panelSelector = options.target ?? triggerEl.getAttribute(\"data-fs-target\");\n const panelEl = panelSelector ? document.querySelector(panelSelector) : null;\n\n if (!panelEl) {\n throw new Error(\"FokusStyles.NotificationCenter: painel n\u00E3o encontrado (data-fs-target).\");\n }\n\n this.triggerEl = triggerEl;\n this.panelEl = panelEl;\n this.storage = options.storage ?? triggerEl.getAttribute(\"data-storage\") ?? \"memory\";\n this.storageKey = options.storageKey ?? triggerEl.getAttribute(\"data-storage-key\") ?? \"fokus-notifications\";\n\n const containerSelector = options.toastContainer ?? triggerEl.getAttribute(\"data-toast-container\");\n this.toastContainer = containerSelector ? document.querySelector(containerSelector) : this._ensureToastContainer();\n\n this.isOpen = false;\n this._outsideClickCleanup = null;\n this.history = this._load();\n\n this.badgeEl = triggerEl.querySelector(\".fs-notification-badge\");\n this.listEl = panelEl.querySelector(\".fs-notification-list\");\n this.emptyEl = panelEl.querySelector(\".fs-notification-empty\");\n\n document.body.appendChild(this.panelEl);\n\n triggerEl.setAttribute(\"aria-haspopup\", \"dialog\");\n triggerEl.setAttribute(\"aria-expanded\", \"false\");\n if (panelEl.id) triggerEl.setAttribute(\"aria-controls\", panelEl.id);\n if (!panelEl.getAttribute(\"role\")) panelEl.setAttribute(\"role\", \"region\");\n if (!panelEl.getAttribute(\"aria-label\")) panelEl.setAttribute(\"aria-label\", \"Notifica\u00E7\u00F5es\");\n\n this._handleTriggerClick = this._handleTriggerClick.bind(this);\n this._handlePanelClick = this._handlePanelClick.bind(this);\n\n triggerEl.addEventListener(\"click\", this._handleTriggerClick);\n panelEl.addEventListener(\"click\", this._handlePanelClick);\n\n this._removeEscapeListener = onEscapeKey(() => {\n if (this.isOpen) {\n this.close();\n this.triggerEl.focus();\n }\n });\n\n this._render();\n instances.set(triggerEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _ensureToastContainer() {\n let container = document.querySelector(\".fs-toast-container\");\n if (!container) {\n container = document.createElement(\"div\");\n container.className = \"fs-toast-container\";\n document.body.appendChild(container);\n }\n return container;\n }\n\n _load() {\n if (this.storage !== \"local\") return [];\n try {\n return JSON.parse(localStorage.getItem(this.storageKey)) || [];\n } catch {\n return [];\n }\n }\n\n _persist() {\n if (this.storage !== \"local\") return;\n try {\n localStorage.setItem(this.storageKey, JSON.stringify(this.history));\n } catch {\n // Cota cheia ou storage indispon\u00EDvel: hist\u00F3rico segue em mem\u00F3ria.\n }\n }\n\n get unreadCount() {\n return this.history.filter((record) => !record.read).length;\n }\n\n // Empilha um toast e registra a notifica\u00E7\u00E3o. Retorna o id do registro.\n push(options = {}) {\n const { title = \"\", body = \"\", variant = \"primary\", autohide = true, delay } = options;\n\n idCounter += 1;\n const record = { id: `n-${idCounter}`, title, body, variant, time: Date.now(), read: this.isOpen };\n this.history.unshift(record);\n this._persist();\n this._render();\n\n this._showToast({ title, body, variant, autohide, delay });\n\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:notification:pushed\", { bubbles: true, detail: { record } }));\n return record.id;\n }\n\n _showToast({ title, body, variant, autohide, delay }) {\n const toastEl = document.createElement(\"div\");\n toastEl.className = `fs-toast fs-toast-${variant}`;\n if (delay != null) toastEl.setAttribute(\"data-delay\", String(delay));\n if (!autohide) toastEl.setAttribute(\"data-autohide\", \"false\");\n toastEl.innerHTML = `\n <div class=\"fs-toast-header\">\n <span>${escapeHtml(title)}</span>\n <button type=\"button\" class=\"fs-btn-close\" data-fs-dismiss=\"toast\" aria-label=\"Fechar\"></button>\n </div>\n ${body ? `<div class=\"fs-toast-body\">${escapeHtml(body)}</div>` : \"\"}\n `;\n this.toastContainer.appendChild(toastEl);\n\n const toast = new Toast(toastEl);\n toastEl.addEventListener(\"fs:toast:hidden\", () => {\n toast.dispose();\n toastEl.remove();\n });\n toast.show();\n }\n\n remove(id) {\n this.history = this.history.filter((record) => record.id !== id);\n this._persist();\n this._render();\n }\n\n clear() {\n this.history = [];\n this._persist();\n this._render();\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:notification:cleared\", { bubbles: true }));\n }\n\n getAll() {\n return this.history.slice();\n }\n\n _updateBadge() {\n if (!this.badgeEl) return;\n const count = this.unreadCount;\n this.badgeEl.textContent = String(count);\n this.badgeEl.toggleAttribute(\"hidden\", count === 0);\n }\n\n _render() {\n if (this.listEl) {\n this.listEl.innerHTML = this.history\n .map(\n (record) => `\n <li class=\"fs-notification-item fs-notification-item-${record.variant}${record.read ? \"\" : \" fs-notification-item-unread\"}\" data-id=\"${record.id}\">\n <div class=\"fs-notification-item-content\">\n <p class=\"fs-notification-item-title\">${escapeHtml(record.title)}</p>\n ${record.body ? `<p class=\"fs-notification-item-text\">${escapeHtml(record.body)}</p>` : \"\"}\n <span class=\"fs-notification-item-time\">${formatTime(record.time)}</span>\n </div>\n <button type=\"button\" class=\"fs-btn-close\" data-notification-dismiss aria-label=\"Remover notifica\u00E7\u00E3o\"></button>\n </li>`,\n )\n .join(\"\");\n }\n this.emptyEl?.toggleAttribute(\"hidden\", this.history.length > 0);\n this._updateBadge();\n }\n\n _handleTriggerClick(event) {\n event.preventDefault();\n this.toggle();\n }\n\n _handlePanelClick(event) {\n if (event.target.closest('[data-notification=\"clear\"]')) {\n this.clear();\n return;\n }\n\n const dismissBtn = event.target.closest(\"[data-notification-dismiss]\");\n if (dismissBtn) {\n const id = dismissBtn.closest(\".fs-notification-item\")?.dataset.id;\n if (id) this.remove(id);\n }\n }\n\n open() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n const theme = this.triggerEl.closest(\"[data-theme]\")?.getAttribute(\"data-theme\");\n if (theme) {\n this.panelEl.setAttribute(\"data-theme\", theme);\n } else {\n this.panelEl.removeAttribute(\"data-theme\");\n }\n\n this.panelEl.classList.add(\"is-open\");\n\n const position = computePosition(this.triggerEl, this.panelEl, {\n placement: \"bottom\",\n align: \"end\",\n offset: 4,\n });\n applyPosition(this.panelEl, position);\n\n this.triggerEl.setAttribute(\"aria-expanded\", \"true\");\n\n // Abrir = ler tudo.\n this.history.forEach((record) => {\n record.read = true;\n });\n this._persist();\n this._render();\n\n this._outsideClickCleanup = onClickOutside(this.panelEl, (event) => {\n if (this.triggerEl.contains(event.target)) return;\n this.close();\n });\n\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:notification:opened\", { bubbles: true }));\n }\n\n close() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n this.panelEl.classList.remove(\"is-open\");\n this.panelEl.style.removeProperty(\"position\");\n this.panelEl.style.removeProperty(\"top\");\n this.panelEl.style.removeProperty(\"left\");\n this.triggerEl.setAttribute(\"aria-expanded\", \"false\");\n\n this._outsideClickCleanup?.();\n this._outsideClickCleanup = null;\n\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:notification:closed\", { bubbles: true }));\n }\n\n toggle() {\n if (this.isOpen) {\n this.close();\n } else {\n this.open();\n }\n }\n\n dispose() {\n this.close();\n this._removeEscapeListener();\n this.triggerEl.removeEventListener(\"click\", this._handleTriggerClick);\n this.panelEl.removeEventListener(\"click\", this._handlePanelClick);\n instances.delete(this.triggerEl);\n }\n}\n\nautoInit(\"notification-center\", NotificationCenter);\n", "import { computePosition, applyPosition } from \"./core/positioning.js\";\nimport { onClickOutside } from \"./core/overlay.js\";\nimport { onEscapeKey } from \"./core/focus.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\n// Itens foc\u00E1veis de um n\u00EDvel de menu: `.fs-dropdown-item` diretos (folhas) e o\n// item de cada `.fs-dropdown-submenu` (que abre o pr\u00F3ximo n\u00EDvel). Ignora\n// divisores/headers e itens desabilitados.\nfunction levelItems(menuEl) {\n const items = [];\n for (const child of menuEl.children) {\n let item = null;\n if (child.classList.contains(\"fs-dropdown-item\")) {\n item = child;\n } else if (child.classList.contains(\"fs-dropdown-submenu\")) {\n item = child.querySelector(\":scope > .fs-dropdown-item\");\n }\n if (item && !item.classList.contains(\"is-disabled\")) items.push(item);\n }\n return items;\n}\n\nfunction isSubmenuParent(item) {\n return item.classList.contains(\"fs-dropdown-item-submenu\");\n}\n\n// Nested Menu (Etapa 10): Dropdown com submenus recursivos. Reaproveita a\n// marca\u00E7\u00E3o/estilo do Dropdown (`.fs-dropdown-menu`/`.fs-dropdown-item`); cada submenu\n// \u00E9 um `.fs-dropdown-menu` dentro de um `.fs-dropdown-submenu`. Hover abre por CSS\n// (scss/components/_nested-menu.scss); aqui ficam clique, teclado (setas entre\n// n\u00EDveis) e o flip de borda. Componente pr\u00F3prio (n\u00E3o estende o Dropdown) porque\n// a navega\u00E7\u00E3o por teclado \u00E9 por n\u00EDvel, n\u00E3o linear sobre todos os itens.\nexport class NestedMenu {\n constructor(toggleEl, options = {}) {\n const targetSelector = toggleEl.getAttribute(\"data-fs-target\");\n const rootMenu = targetSelector ? document.querySelector(targetSelector) : toggleEl.nextElementSibling;\n\n if (!rootMenu) {\n throw new Error(\"FokusStyles.NestedMenu: elemento do menu n\u00E3o encontrado (data-fs-target).\");\n }\n\n this.toggleEl = toggleEl;\n this.rootMenu = rootMenu;\n this.placement = options.placement ?? toggleEl.getAttribute(\"data-placement\") ?? \"bottom\";\n this.align = options.align ?? toggleEl.getAttribute(\"data-align\") ?? \"start\";\n this.isOpen = false;\n this._outsideClickCleanup = null;\n\n document.body.appendChild(this.rootMenu);\n\n this.toggleEl.setAttribute(\"aria-haspopup\", \"menu\");\n this.toggleEl.setAttribute(\"aria-expanded\", \"false\");\n this.rootMenu.setAttribute(\"role\", \"menu\");\n this.rootMenu.querySelectorAll(\".fs-dropdown-menu\").forEach((menu) => menu.setAttribute(\"role\", \"menu\"));\n this.rootMenu.querySelectorAll(\".fs-dropdown-item-submenu\").forEach((item) => {\n item.setAttribute(\"aria-haspopup\", \"menu\");\n item.setAttribute(\"aria-expanded\", \"false\");\n });\n\n this._handleToggleClick = this._handleToggleClick.bind(this);\n this._handleMenuClick = this._handleMenuClick.bind(this);\n this._handleMenuKeydown = this._handleMenuKeydown.bind(this);\n this._handleMenuMouseover = this._handleMenuMouseover.bind(this);\n\n this.toggleEl.addEventListener(\"click\", this._handleToggleClick);\n this.rootMenu.addEventListener(\"click\", this._handleMenuClick);\n this.rootMenu.addEventListener(\"keydown\", this._handleMenuKeydown);\n this.rootMenu.addEventListener(\"mouseover\", this._handleMenuMouseover);\n\n this._removeEscapeListener = onEscapeKey(() => {\n if (this.isOpen) {\n this.hide();\n this.toggleEl.focus();\n }\n });\n\n instances.set(toggleEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _submenuOf(parentItem) {\n const submenu = parentItem.nextElementSibling;\n return submenu && submenu.classList.contains(\"fs-dropdown-menu\") ? submenu : null;\n }\n\n _applyFlip(parentItem) {\n const submenu = this._submenuOf(parentItem);\n if (!submenu) return;\n\n const rect = parentItem.getBoundingClientRect();\n const width = submenu.offsetWidth || 180;\n const viewportWidth = document.documentElement.clientWidth;\n parentItem.parentElement.classList.toggle(\"fs-dropdown-submenu-left\", rect.right + width > viewportWidth);\n }\n\n _openSubmenu(parentItem, focusFirst) {\n const submenu = this._submenuOf(parentItem);\n if (!submenu) return;\n\n // Fecha submenus irm\u00E3os abertos no mesmo n\u00EDvel (s\u00F3 um por n\u00EDvel).\n const level = parentItem.closest(\".fs-dropdown-menu\");\n level.querySelectorAll(\":scope > .fs-dropdown-submenu > .fs-dropdown-menu.is-open\").forEach((sibling) => {\n if (sibling !== submenu) {\n sibling.classList.remove(\"is-open\");\n sibling.previousElementSibling?.setAttribute(\"aria-expanded\", \"false\");\n }\n });\n\n this._applyFlip(parentItem);\n submenu.classList.add(\"is-open\");\n parentItem.setAttribute(\"aria-expanded\", \"true\");\n if (focusFirst) levelItems(submenu)[0]?.focus();\n }\n\n _closeSubmenu(parentItem) {\n const submenu = this._submenuOf(parentItem);\n if (!submenu) return;\n\n submenu.querySelectorAll(\".fs-dropdown-menu.is-open\").forEach((nested) => {\n nested.classList.remove(\"is-open\");\n nested.previousElementSibling?.setAttribute(\"aria-expanded\", \"false\");\n });\n submenu.classList.remove(\"is-open\");\n parentItem.parentElement.classList.remove(\"fs-dropdown-submenu-left\");\n parentItem.setAttribute(\"aria-expanded\", \"false\");\n }\n\n _closeAllSubmenus() {\n this.rootMenu.querySelectorAll(\".fs-dropdown-menu.is-open\").forEach((submenu) => {\n submenu.classList.remove(\"is-open\");\n submenu.previousElementSibling?.setAttribute(\"aria-expanded\", \"false\");\n });\n this.rootMenu.querySelectorAll(\".fs-dropdown-submenu-left\").forEach((wrapper) => wrapper.classList.remove(\"fs-dropdown-submenu-left\"));\n }\n\n _handleToggleClick(event) {\n event.preventDefault();\n this.toggle();\n }\n\n _handleMenuClick(event) {\n const item = event.target.closest(\".fs-dropdown-item\");\n if (!item || item.classList.contains(\"is-disabled\")) return;\n\n if (isSubmenuParent(item)) {\n event.preventDefault();\n if (this._submenuOf(item)?.classList.contains(\"is-open\")) {\n this._closeSubmenu(item);\n } else {\n this._openSubmenu(item, false);\n }\n return;\n }\n\n // Folha: fecha o menu inteiro e devolve o foco ao gatilho.\n this.hide();\n this.toggleEl.focus();\n }\n\n _handleMenuMouseover(event) {\n const hoveredParent = event.target.closest(\".fs-dropdown-item-submenu\");\n\n // Fecha submenus abertos por teclado (`.is-open`) que n\u00E3o est\u00E3o no caminho do\n // item sob o mouse, pra hover e teclado n\u00E3o deixarem dois ramos abertos.\n this.rootMenu.querySelectorAll(\".fs-dropdown-menu.is-open\").forEach((submenu) => {\n if (!submenu.contains(event.target) && submenu !== hoveredParent?.nextElementSibling) {\n submenu.classList.remove(\"is-open\");\n submenu.previousElementSibling?.setAttribute(\"aria-expanded\", \"false\");\n }\n });\n\n if (hoveredParent) this._applyFlip(hoveredParent);\n }\n\n _handleMenuKeydown(event) {\n const active = document.activeElement;\n if (!active?.classList?.contains(\"fs-dropdown-item\")) return;\n\n const menu = active.closest(\".fs-dropdown-menu\");\n const items = levelItems(menu);\n const index = items.indexOf(active);\n const parentWrapper = menu.parentElement;\n const inSubmenu = parentWrapper?.classList.contains(\"fs-dropdown-submenu\");\n\n switch (event.key) {\n case \"ArrowDown\":\n event.preventDefault();\n items[(index + 1) % items.length]?.focus();\n break;\n case \"ArrowUp\":\n event.preventDefault();\n items[(index - 1 + items.length) % items.length]?.focus();\n break;\n case \"ArrowRight\":\n if (isSubmenuParent(active)) {\n event.preventDefault();\n this._openSubmenu(active, true);\n }\n break;\n case \"ArrowLeft\":\n if (inSubmenu) {\n event.preventDefault();\n const parentItem = parentWrapper.querySelector(\":scope > .fs-dropdown-item\");\n this._closeSubmenu(parentItem);\n parentItem.focus();\n }\n break;\n case \"Enter\":\n case \" \":\n if (isSubmenuParent(active)) {\n event.preventDefault();\n if (this._submenuOf(active)?.classList.contains(\"is-open\")) {\n this._closeSubmenu(active);\n } else {\n this._openSubmenu(active, true);\n }\n }\n break;\n case \"Escape\":\n if (inSubmenu) {\n event.preventDefault();\n event.stopPropagation();\n const parentItem = parentWrapper.querySelector(\":scope > .fs-dropdown-item\");\n this._closeSubmenu(parentItem);\n parentItem.focus();\n } else {\n event.preventDefault();\n this.hide();\n this.toggleEl.focus();\n }\n break;\n default:\n break;\n }\n }\n\n show() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n const theme = this.toggleEl.closest(\"[data-theme]\")?.getAttribute(\"data-theme\");\n if (theme) {\n this.rootMenu.setAttribute(\"data-theme\", theme);\n } else {\n this.rootMenu.removeAttribute(\"data-theme\");\n }\n\n this.rootMenu.classList.add(\"is-open\");\n\n const position = computePosition(this.toggleEl, this.rootMenu, {\n placement: this.placement,\n align: this.align,\n offset: 4,\n });\n applyPosition(this.rootMenu, position);\n\n this.toggleEl.setAttribute(\"aria-expanded\", \"true\");\n levelItems(this.rootMenu)[0]?.focus();\n\n this._outsideClickCleanup = onClickOutside(this.rootMenu, (event) => {\n if (this.toggleEl.contains(event.target)) return;\n this.hide();\n });\n\n this.toggleEl.dispatchEvent(new CustomEvent(\"fs:nested-menu:shown\", { bubbles: true }));\n }\n\n hide() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n this._closeAllSubmenus();\n this.rootMenu.classList.remove(\"is-open\");\n this.rootMenu.style.removeProperty(\"position\");\n this.rootMenu.style.removeProperty(\"top\");\n this.rootMenu.style.removeProperty(\"left\");\n this.toggleEl.setAttribute(\"aria-expanded\", \"false\");\n\n this._outsideClickCleanup?.();\n this._outsideClickCleanup = null;\n\n this.toggleEl.dispatchEvent(new CustomEvent(\"fs:nested-menu:hidden\", { bubbles: true }));\n }\n\n toggle() {\n if (this.isOpen) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n dispose() {\n this.hide();\n this._removeEscapeListener();\n this.toggleEl.removeEventListener(\"click\", this._handleToggleClick);\n this.rootMenu.removeEventListener(\"click\", this._handleMenuClick);\n this.rootMenu.removeEventListener(\"keydown\", this._handleMenuKeydown);\n this.rootMenu.removeEventListener(\"mouseover\", this._handleMenuMouseover);\n instances.delete(this.toggleEl);\n }\n}\n\nautoInit(\"nested-menu\", NestedMenu);\n", "import { computePosition, applyPosition } from \"./core/positioning.js\";\nimport { onClickOutside } from \"./core/overlay.js\";\nimport { onEscapeKey } from \"./core/focus.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nlet idCounter = 0;\n\nfunction uniqueId(prefix) {\n idCounter += 1;\n return `${prefix}-${idCounter}`;\n}\n\nexport class Combobox {\n constructor(inputEl, options = {}) {\n const targetSelector = inputEl.getAttribute(\"data-fs-target\");\n const listboxEl = targetSelector ? document.querySelector(targetSelector) : inputEl.nextElementSibling;\n\n if (!listboxEl) {\n throw new Error(\"FokusStyles.Combobox: listbox n\u00E3o encontrada (data-fs-target).\");\n }\n\n this.inputEl = inputEl;\n this.listboxEl = listboxEl;\n this.placement = options.placement ?? inputEl.getAttribute(\"data-placement\") ?? \"bottom\";\n this.isOpen = false;\n this.activeIndex = -1;\n this.value = null;\n this._outsideClickCleanup = null;\n\n if (!this.listboxEl.id) this.listboxEl.id = uniqueId(\"fs-combobox-listbox\");\n\n document.body.appendChild(this.listboxEl);\n\n this.inputEl.setAttribute(\"role\", \"combobox\");\n this.inputEl.setAttribute(\"aria-expanded\", \"false\");\n this.inputEl.setAttribute(\"aria-autocomplete\", \"list\");\n this.inputEl.setAttribute(\"aria-controls\", this.listboxEl.id);\n this.inputEl.setAttribute(\"autocomplete\", \"off\");\n this.listboxEl.setAttribute(\"role\", \"listbox\");\n\n this._getOptions().forEach((option) => {\n if (!option.id) option.id = uniqueId(\"fs-combobox-option\");\n option.setAttribute(\"role\", \"option\");\n option.setAttribute(\"aria-selected\", \"false\");\n });\n\n this._handleInput = this._handleInput.bind(this);\n this._handleKeydown = this._handleKeydown.bind(this);\n this._handleOptionMousedown = this._handleOptionMousedown.bind(this);\n this._handleOptionClick = this._handleOptionClick.bind(this);\n\n this.inputEl.addEventListener(\"input\", this._handleInput);\n this.inputEl.addEventListener(\"keydown\", this._handleKeydown);\n this.listboxEl.addEventListener(\"mousedown\", this._handleOptionMousedown);\n this.listboxEl.addEventListener(\"click\", this._handleOptionClick);\n\n this._removeEscapeListener = onEscapeKey(() => {\n if (this.isOpen) this.hide();\n });\n\n instances.set(inputEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _getOptions() {\n return Array.from(this.listboxEl.querySelectorAll(\".fs-dropdown-item\"));\n }\n\n _getSelectableOptions() {\n return this._getOptions().filter(\n (option) => !option.hidden && !option.hasAttribute(\"data-fs-empty\") && !option.classList.contains(\"is-disabled\"),\n );\n }\n\n _filter(query) {\n const normalized = query.trim().toLowerCase();\n\n this._getOptions().forEach((option) => {\n if (option.hasAttribute(\"data-fs-empty\")) return;\n option.hidden = normalized.length > 0 && !option.textContent.toLowerCase().includes(normalized);\n });\n\n const emptyEl = this.listboxEl.querySelector(\"[data-fs-empty]\");\n if (emptyEl) emptyEl.hidden = this._getSelectableOptions().length > 0;\n }\n\n _setActiveIndex(index) {\n const options = this._getSelectableOptions();\n if (options.length === 0) {\n this.activeIndex = -1;\n this.inputEl.removeAttribute(\"aria-activedescendant\");\n return;\n }\n\n const previous = options[this.activeIndex];\n previous?.classList.remove(\"is-active\");\n\n this.activeIndex = ((index % options.length) + options.length) % options.length;\n const current = options[this.activeIndex];\n current.classList.add(\"is-active\");\n current.scrollIntoView({ block: \"nearest\" });\n this.inputEl.setAttribute(\"aria-activedescendant\", current.id);\n }\n\n _selectOption(option) {\n const label = option.textContent.trim();\n this.value = option.getAttribute(\"data-value\") ?? label;\n this.inputEl.value = label;\n\n this._getOptions().forEach((item) => item.setAttribute(\"aria-selected\", String(item === option)));\n\n this.hide();\n this.inputEl.focus();\n\n this.inputEl.dispatchEvent(new Event(\"change\", { bubbles: true }));\n this.inputEl.dispatchEvent(\n new CustomEvent(\"fs:combobox:changed\", { bubbles: true, detail: { value: this.value, label } }),\n );\n }\n\n _handleInput() {\n this._filter(this.inputEl.value);\n this.show();\n this._setActiveIndex(-1);\n }\n\n _handleKeydown(event) {\n if (event.key === \"ArrowDown\") {\n event.preventDefault();\n if (!this.isOpen) {\n this.show();\n } else {\n this._setActiveIndex(this.activeIndex + 1);\n }\n } else if (event.key === \"ArrowUp\") {\n event.preventDefault();\n if (!this.isOpen) {\n this.show();\n } else {\n this._setActiveIndex(this.activeIndex - 1);\n }\n } else if (event.key === \"Home\" && this.isOpen) {\n event.preventDefault();\n this._setActiveIndex(0);\n } else if (event.key === \"End\" && this.isOpen) {\n event.preventDefault();\n this._setActiveIndex(this._getSelectableOptions().length - 1);\n } else if (event.key === \"Enter\") {\n if (this.isOpen && this.activeIndex >= 0) {\n event.preventDefault();\n this._selectOption(this._getSelectableOptions()[this.activeIndex]);\n }\n }\n }\n\n _handleOptionMousedown(event) {\n // Impede que o input perca foco antes do `click` do item ser processado\n // (perder foco fecharia a listbox via `onClickOutside` antes da sele\u00E7\u00E3o).\n if (event.target.closest(\".fs-dropdown-item\")) event.preventDefault();\n }\n\n _handleOptionClick(event) {\n const option = event.target.closest(\".fs-dropdown-item:not(.is-disabled)\");\n if (!option || option.hasAttribute(\"data-fs-empty\")) return;\n\n this._selectOption(option);\n }\n\n show() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n const theme = this.inputEl.closest(\"[data-theme]\")?.getAttribute(\"data-theme\");\n if (theme) {\n this.listboxEl.setAttribute(\"data-theme\", theme);\n } else {\n this.listboxEl.removeAttribute(\"data-theme\");\n }\n\n this.listboxEl.classList.add(\"is-open\");\n this.listboxEl.style.width = `${this.inputEl.offsetWidth}px`;\n\n const position = computePosition(this.inputEl, this.listboxEl, {\n placement: this.placement,\n align: \"start\",\n offset: 4,\n });\n applyPosition(this.listboxEl, position);\n\n this.inputEl.setAttribute(\"aria-expanded\", \"true\");\n\n this._outsideClickCleanup = onClickOutside(this.listboxEl, (event) => {\n if (this.inputEl.contains(event.target)) return;\n this.hide();\n });\n\n this.inputEl.dispatchEvent(new CustomEvent(\"fs:combobox:shown\", { bubbles: true }));\n }\n\n hide() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n this._getSelectableOptions()[this.activeIndex]?.classList.remove(\"is-active\");\n this.activeIndex = -1;\n this.inputEl.removeAttribute(\"aria-activedescendant\");\n\n this.listboxEl.classList.remove(\"is-open\");\n this.listboxEl.style.removeProperty(\"position\");\n this.listboxEl.style.removeProperty(\"top\");\n this.listboxEl.style.removeProperty(\"left\");\n this.listboxEl.style.removeProperty(\"width\");\n this.inputEl.setAttribute(\"aria-expanded\", \"false\");\n\n this._outsideClickCleanup?.();\n this._outsideClickCleanup = null;\n\n this.inputEl.dispatchEvent(new CustomEvent(\"fs:combobox:hidden\", { bubbles: true }));\n }\n\n toggle() {\n if (this.isOpen) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n dispose() {\n this.hide();\n this._removeEscapeListener();\n this.inputEl.removeEventListener(\"input\", this._handleInput);\n this.inputEl.removeEventListener(\"keydown\", this._handleKeydown);\n this.listboxEl.removeEventListener(\"mousedown\", this._handleOptionMousedown);\n this.listboxEl.removeEventListener(\"click\", this._handleOptionClick);\n instances.delete(this.inputEl);\n }\n}\n\nautoInit(\"combobox\", Combobox);\n", "import { computePosition, applyPosition, watchPosition } from \"./core/positioning.js\";\nimport { onClickOutside } from \"./core/overlay.js\";\nimport { onEscapeKey } from \"./core/focus.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nconst WEEKDAY_FORMATTER = new Intl.DateTimeFormat(\"pt-BR\", { weekday: \"narrow\" });\nconst HEADER_FORMATTER = new Intl.DateTimeFormat(\"pt-BR\", { month: \"long\", year: \"numeric\" });\n\nlet idCounter = 0;\n\nfunction uniqueId(prefix) {\n idCounter += 1;\n return `${prefix}-${idCounter}`;\n}\n\nfunction pad(value) {\n return String(value).padStart(2, \"0\");\n}\n\nfunction toISO(date) {\n return `${date.getFullYear()}-${pad(date.getMonth() + 1)}-${pad(date.getDate())}`;\n}\n\nfunction toDisplay(date) {\n return `${pad(date.getDate())}/${pad(date.getMonth() + 1)}/${date.getFullYear()}`;\n}\n\nfunction parseDisplay(value) {\n const match = value.trim().match(/^(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})$/);\n if (!match) return null;\n\n const [, day, month, year] = match;\n const date = new Date(Number(year), Number(month) - 1, Number(day));\n if (Number.isNaN(date.getTime())) return null;\n return date.getFullYear() === Number(year) && date.getMonth() === Number(month) - 1 && date.getDate() === Number(day)\n ? date\n : null;\n}\n\nfunction isSameDay(a, b) {\n return a.getFullYear() === b.getFullYear() && a.getMonth() === b.getMonth() && a.getDate() === b.getDate();\n}\n\nfunction buildMonthCells(viewDate) {\n const year = viewDate.getFullYear();\n const month = viewDate.getMonth();\n const firstWeekday = new Date(year, month, 1).getDay();\n const daysInMonth = new Date(year, month + 1, 0).getDate();\n const daysInPrevMonth = new Date(year, month, 0).getDate();\n\n const cells = [];\n\n for (let i = firstWeekday - 1; i >= 0; i -= 1) {\n const day = daysInPrevMonth - i;\n const prevMonth = month === 0 ? 11 : month - 1;\n cells.push({ year: month === 0 ? year - 1 : year, month: prevMonth, day, outside: true });\n }\n\n for (let day = 1; day <= daysInMonth; day += 1) {\n cells.push({ year, month, day, outside: false });\n }\n\n let nextDay = 1;\n while (cells.length % 7 !== 0) {\n const nextMonth = month === 11 ? 0 : month + 1;\n cells.push({ year: month === 11 ? year + 1 : year, month: nextMonth, day: nextDay, outside: true });\n nextDay += 1;\n }\n\n return cells;\n}\n\nexport class Datepicker {\n constructor(inputEl, options = {}) {\n const targetSelector = inputEl.getAttribute(\"data-fs-target\");\n const panelEl = targetSelector ? document.querySelector(targetSelector) : inputEl.nextElementSibling;\n\n if (!panelEl) {\n throw new Error(\"FokusStyles.Datepicker: painel n\u00E3o encontrado (data-fs-target).\");\n }\n\n this.inputEl = inputEl;\n this.panelEl = panelEl;\n this.placement = options.placement ?? inputEl.getAttribute(\"data-placement\") ?? \"bottom\";\n this.isOpen = false;\n this._suppressNextFocus = false;\n\n const initial = parseDisplay(inputEl.value);\n this.selectedDate = initial;\n this.viewDate = initial ? new Date(initial) : new Date();\n this.value = initial ? toISO(initial) : null;\n this._outsideClickCleanup = null;\n this._positionCleanup = null;\n this._originalParent = panelEl.parentNode;\n this._originalNextSibling = panelEl.nextSibling;\n\n if (!this.panelEl.id) this.panelEl.id = uniqueId(\"fs-datepicker-panel\");\n\n document.body.appendChild(this.panelEl);\n\n // `role=\"combobox\"` \u00E9 obrigat\u00F3rio aqui: `aria-expanded` n\u00E3o \u00E9 permitido\n // no role impl\u00EDcito de `<input type=\"text\">` (\"textbox\"), s\u00F3 em roles\n // como combobox/button \u2014 sem isso o axe reprova (aria-allowed-attr).\n this.inputEl.setAttribute(\"role\", \"combobox\");\n this.inputEl.setAttribute(\"aria-haspopup\", \"grid\");\n this.inputEl.setAttribute(\"aria-expanded\", \"false\");\n this.inputEl.setAttribute(\"aria-controls\", this.panelEl.id);\n this.inputEl.setAttribute(\"autocomplete\", \"off\");\n\n this.panelEl.classList.add(\"fs-datepicker-panel\");\n this.panelEl.innerHTML =\n '<div class=\"fs-datepicker-header\">' +\n '<button type=\"button\" class=\"fs-datepicker-nav\" data-fs-datepicker-prev aria-label=\"M\u00EAs anterior\">\u2039</button>' +\n '<span class=\"fs-datepicker-title\" aria-live=\"polite\"></span>' +\n '<button type=\"button\" class=\"fs-datepicker-nav\" data-fs-datepicker-next aria-label=\"Pr\u00F3ximo m\u00EAs\">\u203A</button>' +\n \"</div>\" +\n '<div class=\"fs-datepicker-grid\" role=\"grid\"></div>';\n\n this.titleEl = this.panelEl.querySelector(\".fs-datepicker-title\");\n this.gridEl = this.panelEl.querySelector(\".fs-datepicker-grid\");\n this.prevBtn = this.panelEl.querySelector(\"[data-fs-datepicker-prev]\");\n this.nextBtn = this.panelEl.querySelector(\"[data-fs-datepicker-next]\");\n\n this._handleInputFocus = this._handleInputFocus.bind(this);\n this._handleInputKeydown = this._handleInputKeydown.bind(this);\n this._handleInputChange = this._handleInputChange.bind(this);\n this._handlePrev = this._handlePrev.bind(this);\n this._handleNext = this._handleNext.bind(this);\n this._handleGridClick = this._handleGridClick.bind(this);\n this._handleGridKeydown = this._handleGridKeydown.bind(this);\n\n this.inputEl.addEventListener(\"focus\", this._handleInputFocus);\n this.inputEl.addEventListener(\"keydown\", this._handleInputKeydown);\n this.inputEl.addEventListener(\"change\", this._handleInputChange);\n this.prevBtn.addEventListener(\"click\", this._handlePrev);\n this.nextBtn.addEventListener(\"click\", this._handleNext);\n this.gridEl.addEventListener(\"click\", this._handleGridClick);\n this.gridEl.addEventListener(\"keydown\", this._handleGridKeydown);\n\n this._removeEscapeListener = onEscapeKey(() => {\n if (this.isOpen) {\n this.hide();\n this._refocusInputWithoutReopening();\n }\n });\n\n instances.set(inputEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _handleInputFocus() {\n // Depois de selecionar uma data ou fechar com Escape, devolvemos o foco\n // pro input programaticamente \u2014 sem essa guarda, o pr\u00F3prio `.focus()`\n // disparia este handler de novo e reabriria o painel na hora.\n if (this._suppressNextFocus) {\n this._suppressNextFocus = false;\n return;\n }\n\n this.show();\n }\n\n _refocusInputWithoutReopening() {\n this._suppressNextFocus = true;\n this.inputEl.focus();\n }\n\n // O foco fica no input ao abrir (ver `_handleInputFocus`) \u2014 sem este\n // handler, `ArrowDown`/`ArrowUp` n\u00E3o teriam efeito nenhum, porque o\n // keydown do grid (`_handleGridKeydown`) s\u00F3 reage quando o foco real j\u00E1\n // est\u00E1 num bot\u00E3o de dia. `ArrowDown` move o foco pro dia \"tab\u00E1vel\";\n // depois disso, o keydown do pr\u00F3prio grid assume a navega\u00E7\u00E3o.\n _handleInputKeydown(event) {\n if (event.key !== \"ArrowDown\" && event.key !== \"ArrowUp\") return;\n\n event.preventDefault();\n if (!this.isOpen) this.show();\n this._focusTabbable();\n }\n\n _handleInputChange() {\n const parsed = parseDisplay(this.inputEl.value);\n if (!parsed) return;\n\n this.selectedDate = parsed;\n this.viewDate = new Date(parsed);\n this.value = toISO(parsed);\n if (this.isOpen) this._render();\n }\n\n _handlePrev(event) {\n event.preventDefault();\n this.viewDate = new Date(this.viewDate.getFullYear(), this.viewDate.getMonth() - 1, 1);\n this._render();\n }\n\n _handleNext(event) {\n event.preventDefault();\n this.viewDate = new Date(this.viewDate.getFullYear(), this.viewDate.getMonth() + 1, 1);\n this._render();\n }\n\n _handleGridClick(event) {\n const day = event.target.closest(\".fs-datepicker-day:not(:disabled)\");\n if (!day) return;\n\n this._selectDate(new Date(Number(day.dataset.year), Number(day.dataset.month), Number(day.dataset.day)));\n }\n\n _handleGridKeydown(event) {\n const current = event.target.closest(\".fs-datepicker-day\");\n if (!current) return;\n\n const currentDate = new Date(Number(current.dataset.year), Number(current.dataset.month), Number(current.dataset.day));\n let nextDate = null;\n\n switch (event.key) {\n case \"ArrowRight\":\n nextDate = new Date(currentDate);\n nextDate.setDate(nextDate.getDate() + 1);\n break;\n case \"ArrowLeft\":\n nextDate = new Date(currentDate);\n nextDate.setDate(nextDate.getDate() - 1);\n break;\n case \"ArrowDown\":\n nextDate = new Date(currentDate);\n nextDate.setDate(nextDate.getDate() + 7);\n break;\n case \"ArrowUp\":\n nextDate = new Date(currentDate);\n nextDate.setDate(nextDate.getDate() - 7);\n break;\n case \"Home\":\n nextDate = new Date(currentDate);\n nextDate.setDate(nextDate.getDate() - nextDate.getDay());\n break;\n case \"End\":\n nextDate = new Date(currentDate);\n nextDate.setDate(nextDate.getDate() + (6 - nextDate.getDay()));\n break;\n case \"PageUp\":\n nextDate = event.shiftKey\n ? new Date(currentDate.getFullYear() - 1, currentDate.getMonth(), currentDate.getDate())\n : new Date(currentDate.getFullYear(), currentDate.getMonth() - 1, currentDate.getDate());\n break;\n case \"PageDown\":\n nextDate = event.shiftKey\n ? new Date(currentDate.getFullYear() + 1, currentDate.getMonth(), currentDate.getDate())\n : new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, currentDate.getDate());\n break;\n case \"Enter\":\n case \" \":\n event.preventDefault();\n this._selectDate(currentDate);\n return;\n default:\n return;\n }\n\n event.preventDefault();\n this._moveTo(nextDate);\n }\n\n _moveTo(date) {\n const sameMonth = date.getFullYear() === this.viewDate.getFullYear() && date.getMonth() === this.viewDate.getMonth();\n if (!sameMonth) this.viewDate = new Date(date.getFullYear(), date.getMonth(), 1);\n\n this._render(date);\n this._focusTabbable();\n }\n\n _selectDate(date) {\n this.selectedDate = date;\n this.viewDate = new Date(date);\n this.value = toISO(date);\n this.inputEl.value = toDisplay(date);\n\n this.hide();\n this._refocusInputWithoutReopening();\n\n this.inputEl.dispatchEvent(new Event(\"change\", { bubbles: true }));\n this.inputEl.dispatchEvent(\n new CustomEvent(\"fs:datepicker:changed\", { bubbles: true, detail: { value: this.value, date: new Date(date) } }),\n );\n }\n\n _focusTabbable() {\n this.gridEl.querySelector('.fs-datepicker-day[tabindex=\"0\"]')?.focus();\n }\n\n _render(preferredDate) {\n this.titleEl.textContent = HEADER_FORMATTER.format(this.viewDate);\n\n const cells = buildMonthCells(this.viewDate);\n const today = new Date();\n const focusTarget = preferredDate ?? this.selectedDate ?? today;\n\n let tabbable = cells.find((cell) => !cell.outside && isSameDay(new Date(cell.year, cell.month, cell.day), focusTarget));\n if (!tabbable) tabbable = cells.find((cell) => !cell.outside) ?? cells[0];\n\n const weekdaysHtml = Array.from({ length: 7 }, (_, i) => {\n const base = new Date(2024, 0, 7 + i); // 2024-01-07 \u00E9 um domingo \u2014 s\u00F3 uma refer\u00EAncia pra formatar os r\u00F3tulos.\n return `<div class=\"fs-datepicker-weekday\" role=\"columnheader\">${WEEKDAY_FORMATTER.format(base)}</div>`;\n }).join(\"\");\n\n const rows = [];\n for (let i = 0; i < cells.length; i += 7) rows.push(cells.slice(i, i + 7));\n\n const weeksHtml = rows\n .map((row) => {\n const rowHtml = row\n .map((cell) => {\n const cellDate = new Date(cell.year, cell.month, cell.day);\n const isSelected = this.selectedDate ? isSameDay(cellDate, this.selectedDate) : false;\n const isToday = isSameDay(cellDate, today);\n const isTabbable = cell === tabbable;\n const classes = [\"fs-datepicker-day\"];\n if (cell.outside) classes.push(\"is-outside\");\n if (isToday) classes.push(\"is-today\");\n if (isSelected) classes.push(\"is-selected\");\n\n return (\n `<button type=\"button\" class=\"${classes.join(\" \")}\" role=\"gridcell\" ` +\n `tabindex=\"${isTabbable ? \"0\" : \"-1\"}\" aria-selected=\"${isSelected}\" ` +\n `data-year=\"${cell.year}\" data-month=\"${cell.month}\" data-day=\"${cell.day}\">${cell.day}</button>`\n );\n })\n .join(\"\");\n\n return `<div class=\"fs-datepicker-week\" role=\"row\">${rowHtml}</div>`;\n })\n .join(\"\");\n\n this.gridEl.innerHTML = `<div class=\"fs-datepicker-weekdays\" role=\"row\">${weekdaysHtml}</div>${weeksHtml}`;\n }\n\n show() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n const theme = this.inputEl.closest(\"[data-theme]\")?.getAttribute(\"data-theme\");\n if (theme) {\n this.panelEl.setAttribute(\"data-theme\", theme);\n } else {\n this.panelEl.removeAttribute(\"data-theme\");\n }\n\n this.panelEl.classList.add(\"is-open\");\n\n const position = computePosition(this.inputEl, this.panelEl, {\n placement: this.placement,\n align: \"start\",\n offset: 4,\n });\n applyPosition(this.panelEl, position);\n this._positionCleanup = watchPosition(this.inputEl, this.panelEl, {\n placement: this.placement,\n align: \"start\",\n offset: 4,\n });\n\n this.inputEl.setAttribute(\"aria-expanded\", \"true\");\n\n this._render(this.selectedDate ?? new Date());\n\n this._outsideClickCleanup = onClickOutside(this.panelEl, (event) => {\n if (this.inputEl.contains(event.target)) return;\n this.hide();\n });\n\n this.inputEl.dispatchEvent(new CustomEvent(\"fs:datepicker:shown\", { bubbles: true }));\n }\n\n hide() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n this.panelEl.classList.remove(\"is-open\");\n this.panelEl.style.removeProperty(\"position\");\n this.panelEl.style.removeProperty(\"top\");\n this.panelEl.style.removeProperty(\"left\");\n this._positionCleanup?.();\n this._positionCleanup = null;\n this.inputEl.setAttribute(\"aria-expanded\", \"false\");\n\n this._outsideClickCleanup?.();\n this._outsideClickCleanup = null;\n\n this.inputEl.dispatchEvent(new CustomEvent(\"fs:datepicker:hidden\", { bubbles: true }));\n }\n\n toggle() {\n if (this.isOpen) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n dispose() {\n this.hide();\n this._removeEscapeListener();\n this.inputEl.removeEventListener(\"focus\", this._handleInputFocus);\n this.inputEl.removeEventListener(\"keydown\", this._handleInputKeydown);\n this.inputEl.removeEventListener(\"change\", this._handleInputChange);\n this.prevBtn.removeEventListener(\"click\", this._handlePrev);\n this.nextBtn.removeEventListener(\"click\", this._handleNext);\n this.gridEl.removeEventListener(\"click\", this._handleGridClick);\n this.gridEl.removeEventListener(\"keydown\", this._handleGridKeydown);\n if (this._originalParent) {\n this._originalParent.insertBefore(this.panelEl, this._originalNextSibling);\n }\n instances.delete(this.inputEl);\n }\n}\n\nautoInit(\"datepicker\", Datepicker);\n", "import { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\n// Quantos n\u00FAmeros de p\u00E1gina exibir ao redor da atual (fora prev/next).\nconst PAGE_WINDOW = 5;\n\n// \u00CDcones de anterior/pr\u00F3xima (Lucide chevron-left/chevron-right), embutidos\n// como string em vez de importados de `fokus-styles/icons` \u2014 esse subpath \u00E9\n// opcional, e o m\u00F3dulo JavaScript n\u00E3o pode depender dele em runtime.\n// `aria-hidden` porque o r\u00F3tulo acess\u00EDvel real j\u00E1 vem do `aria-label` do\n// bot\u00E3o (ver `_pageItem`).\nconst ICON_CHEVRON_LEFT =\n '<svg class=\"fs-icon\" aria-hidden=\"true\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"m15 18-6-6 6-6\"/></svg>';\nconst ICON_CHEVRON_RIGHT =\n '<svg class=\"fs-icon\" aria-hidden=\"true\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"m9 18 6-6-6-6\"/></svg>';\n\nfunction compareValues(a, b) {\n const numA = Number(a);\n const numB = Number(b);\n if (a !== \"\" && b !== \"\" && !Number.isNaN(numA) && !Number.isNaN(numB)) {\n return numA - numB;\n }\n return a.localeCompare(b, \"pt-BR\", { sensitivity: \"base\" });\n}\n\nfunction compareTypedValues(a, b, type) {\n if (type === \"date\") {\n return new Date(a).getTime() - new Date(b).getTime();\n }\n if (type === \"number\" || type === \"currency\") {\n const normalize = (value) => Number(String(value).replace(/[^\\d,-]/g, \"\").replace(/\\./g, \"\").replace(\",\", \".\"));\n return normalize(a) - normalize(b);\n }\n return compareValues(a, b);\n}\n\nexport class DataTable {\n constructor(rootEl, options = {}) {\n const tableEl = rootEl.querySelector(\".fs-table\");\n if (!tableEl) {\n throw new Error(\"FokusStyles.DataTable: tabela n\u00E3o encontrada (.fs-table).\");\n }\n\n const tbodyEl = tableEl.querySelector(\"tbody\");\n if (!tbodyEl) {\n throw new Error(\"FokusStyles.DataTable: <tbody> n\u00E3o encontrado.\");\n }\n\n this.rootEl = rootEl;\n this.tableEl = tableEl;\n this.theadEl = tableEl.querySelector(\"thead\");\n this.tbodyEl = tbodyEl;\n this.pageSize = Number(rootEl.getAttribute(\"data-fs-page-size\")) || options.pageSize || 10;\n\n this.filterInput = rootEl.querySelector(\"[data-fs-datatable-filter]\");\n this.emptyEl = rootEl.querySelector(\"[data-fs-datatable-empty]\");\n this.loadingEl = rootEl.querySelector(\"[data-fs-datatable-loading]\");\n this.errorEl = rootEl.querySelector(\"[data-fs-datatable-error]\");\n\n this.paginationEl = rootEl.querySelector(\"[data-fs-datatable-pagination]\");\n if (!this.paginationEl) {\n this.paginationEl = document.createElement(\"nav\");\n this.paginationEl.setAttribute(\"data-fs-datatable-pagination\", \"\");\n this.paginationEl.setAttribute(\"aria-label\", \"Pagina\u00E7\u00E3o da tabela\");\n rootEl.appendChild(this.paginationEl);\n }\n\n this.sortKey = null;\n this.sortDirection = \"none\";\n this.filterQuery = \"\";\n this.currentPage = 1;\n this._loading = false;\n this._error = null;\n this._rows = [];\n this._sortButtons = [];\n\n this._buildSortHeaders();\n this._readRows();\n\n this._handleSortClick = this._handleSortClick.bind(this);\n this._handleFilterInput = this._handleFilterInput.bind(this);\n this._handlePaginationClick = this._handlePaginationClick.bind(this);\n this._handleCellKeydown = this._handleCellKeydown.bind(this);\n this._handleCellFocusIn = this._handleCellFocusIn.bind(this);\n\n if (this.theadEl) this.theadEl.addEventListener(\"click\", this._handleSortClick);\n if (this.filterInput) this.filterInput.addEventListener(\"input\", this._handleFilterInput);\n this.paginationEl.addEventListener(\"click\", this._handlePaginationClick);\n this.tbodyEl.addEventListener(\"keydown\", this._handleCellKeydown);\n this.tbodyEl.addEventListener(\"focusin\", this._handleCellFocusIn);\n\n this._render();\n this.tableEl.setAttribute(\"aria-busy\", \"false\");\n\n instances.set(rootEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n get pageCount() {\n return Math.max(1, Math.ceil(this._matchedRows().length / this.pageSize));\n }\n\n get rowCount() {\n return this._matchedRows().length;\n }\n\n _buildSortHeaders() {\n if (!this.theadEl) return;\n\n this._sortButtons = Array.from(this.theadEl.querySelectorAll(\"th[data-fs-sort]\")).map((th) => {\n const key = th.getAttribute(\"data-fs-sort\");\n const btn = document.createElement(\"button\");\n btn.type = \"button\";\n btn.className = \"fs-datatable-sort-btn\";\n btn.setAttribute(\"data-fs-sort-key\", key);\n while (th.firstChild) btn.appendChild(th.firstChild);\n th.appendChild(btn);\n th.setAttribute(\"aria-sort\", \"none\");\n return { th, key };\n });\n }\n\n _readRows() {\n this._rows = Array.from(this.tbodyEl.querySelectorAll(\":scope > tr\")).map((el, order) => ({\n el,\n order,\n cells: Array.from(el.children).map((cell) => (cell.getAttribute(\"data-fs-sort-value\") ?? cell.textContent).trim()),\n }));\n }\n\n refresh() {\n this._readRows();\n this.currentPage = 1;\n this._render();\n }\n\n _matchedRows() {\n let rows = this._rows;\n\n if (this.filterQuery) {\n const query = this.filterQuery.toLowerCase();\n rows = rows.filter((row) => row.cells.some((cell) => cell.toLowerCase().includes(query)));\n }\n\n if (this.sortKey && this.sortDirection !== \"none\") {\n const th = this._sortButtons.find((entry) => entry.key === this.sortKey)?.th;\n const columnIndex = th ? Array.from(this.theadEl.querySelectorAll(\"th\")).indexOf(th) : -1;\n const type = th?.getAttribute(\"data-fs-sort-type\") ?? \"text\";\n\n if (columnIndex >= 0) {\n const direction = this.sortDirection === \"asc\" ? 1 : -1;\n rows = [...rows].sort((a, b) => direction * compareTypedValues(a.cells[columnIndex] ?? \"\", b.cells[columnIndex] ?? \"\", type));\n }\n } else {\n rows = [...rows].sort((a, b) => a.order - b.order);\n }\n\n return rows;\n }\n\n _nextDirection(key) {\n if (this.sortKey !== key) return \"asc\";\n if (this.sortDirection === \"asc\") return \"desc\";\n if (this.sortDirection === \"desc\") return \"none\";\n return \"asc\";\n }\n\n sort(key, direction = \"asc\") {\n this.sortKey = direction === \"none\" ? null : key;\n this.sortDirection = direction;\n this.currentPage = 1;\n this._render();\n this.rootEl.dispatchEvent(\n new CustomEvent(\"fs:datatable:sorted\", { bubbles: true, detail: { key: this.sortKey, direction: this.sortDirection } }),\n );\n }\n\n filter(query) {\n this.filterQuery = (query ?? \"\").trim();\n if (this.filterInput) this.filterInput.value = this.filterQuery;\n this.currentPage = 1;\n this._render();\n this.rootEl.dispatchEvent(\n new CustomEvent(\"fs:datatable:filtered\", { bubbles: true, detail: { query: this.filterQuery, matched: this.rowCount } }),\n );\n }\n\n goToPage(page) {\n const pageCount = this.pageCount;\n const next = Math.min(Math.max(1, page), pageCount);\n if (next === this.currentPage) return;\n\n this.currentPage = next;\n this._render();\n this.rootEl.dispatchEvent(new CustomEvent(\"fs:datatable:paged\", { bubbles: true, detail: { page: this.currentPage, pageCount } }));\n }\n\n setLoading(isLoading) {\n this._loading = Boolean(isLoading);\n this.tableEl.setAttribute(\"aria-busy\", String(this._loading));\n if (this._loading) this._error = null;\n this._syncVisibility();\n }\n\n setError(message) {\n this._error = message || null;\n if (this._error) this._loading = false;\n this.tableEl.setAttribute(\"aria-busy\", String(this._loading));\n if (this.errorEl) {\n const messageEl = this.errorEl.querySelector(\"[data-fs-datatable-error-message]\");\n if (messageEl) messageEl.textContent = this._error ?? \"\";\n }\n this._syncVisibility();\n }\n\n _syncVisibility() {\n const showLoading = this._loading;\n const showError = !this._loading && Boolean(this._error);\n const showTable = !showLoading && !showError;\n\n this.tableEl.hidden = !showTable;\n if (this.filterInput) this.filterInput.disabled = !showTable;\n if (this.loadingEl) this.loadingEl.hidden = !showLoading;\n if (this.errorEl) this.errorEl.hidden = !showError;\n\n if (!showTable) {\n this.paginationEl.hidden = true;\n if (this.emptyEl) this.emptyEl.hidden = true;\n } else {\n this._render();\n }\n }\n\n _render() {\n if (this._loading || this._error) return;\n\n const matched = this._matchedRows();\n const pageCount = Math.max(1, Math.ceil(matched.length / this.pageSize));\n this.currentPage = Math.min(Math.max(1, this.currentPage), pageCount);\n\n const start = (this.currentPage - 1) * this.pageSize;\n const pageRows = matched.slice(start, start + this.pageSize);\n\n // Reordena o DOM na ordem final (filtro + ordena\u00E7\u00E3o + p\u00E1gina) movendo os\n // <tr> existentes em vez de recri\u00E1-los \u2014 preserva listeners/estado de\n // cada linha. As demais linhas (fora da p\u00E1gina ou filtradas) s\u00F3 ficam\n // ocultas, sem sair da \u00E1rvore.\n pageRows.forEach((row) => this.tbodyEl.appendChild(row.el));\n this._rows.forEach((row) => {\n row.el.hidden = !pageRows.includes(row);\n });\n\n const isEmpty = matched.length === 0;\n this.tableEl.hidden = isEmpty && Boolean(this.emptyEl);\n if (this.emptyEl) this.emptyEl.hidden = !isEmpty;\n\n this._renderPagination(pageCount);\n this._syncAriaSort();\n this._resetRovingTabindex();\n }\n\n _syncAriaSort() {\n this._sortButtons.forEach(({ th, key }) => {\n const direction = key === this.sortKey ? this.sortDirection : \"none\";\n th.setAttribute(\"aria-sort\", direction === \"asc\" ? \"ascending\" : direction === \"desc\" ? \"descending\" : \"none\");\n });\n }\n\n _renderPagination(pageCount) {\n this.paginationEl.hidden = pageCount <= 1;\n if (pageCount <= 1) {\n this.paginationEl.innerHTML = \"\";\n return;\n }\n\n const end = Math.min(pageCount, Math.max(PAGE_WINDOW, this.currentPage + Math.floor(PAGE_WINDOW / 2)));\n const start = Math.max(1, end - PAGE_WINDOW + 1);\n\n const items = [this._pageItem(ICON_CHEVRON_LEFT, this.currentPage - 1, this.currentPage === 1, \"P\u00E1gina anterior\")];\n for (let page = start; page <= end; page += 1) {\n items.push(this._pageItem(String(page), page, false, `P\u00E1gina ${page}`, page === this.currentPage));\n }\n items.push(this._pageItem(ICON_CHEVRON_RIGHT, this.currentPage + 1, this.currentPage === pageCount, \"Pr\u00F3xima p\u00E1gina\"));\n\n this.paginationEl.innerHTML = `<ul class=\"fs-pagination\">${items.join(\"\")}</ul>`;\n }\n\n _pageItem(label, page, disabled, ariaLabel, isActive = false) {\n const classes = [\"fs-page-item\"];\n if (disabled) classes.push(\"is-disabled\");\n if (isActive) classes.push(\"is-active\");\n\n return (\n `<li class=\"${classes.join(\" \")}\"><button type=\"button\" class=\"fs-page-link\" data-fs-page=\"${page}\" ` +\n `aria-label=\"${ariaLabel}\"${isActive ? ' aria-current=\"page\"' : \"\"}${disabled ? \" disabled\" : \"\"}>${label}</button></li>`\n );\n }\n\n _handleSortClick(event) {\n const btn = event.target.closest(\"[data-fs-sort-key]\");\n if (!btn) return;\n\n const key = btn.dataset.fsSortKey;\n this.sort(key, this._nextDirection(key));\n }\n\n _handleFilterInput() {\n this.filter(this.filterInput.value);\n }\n\n _handlePaginationClick(event) {\n const btn = event.target.closest(\"[data-fs-page]\");\n if (!btn || btn.disabled) return;\n\n this.goToPage(Number(btn.dataset.fsPage));\n }\n\n _visibleCells() {\n return Array.from(this.tbodyEl.querySelectorAll(\"tr:not([hidden]) > td, tr:not([hidden]) > th\"));\n }\n\n _resetRovingTabindex() {\n this._visibleCells().forEach((cell, index) => cell.setAttribute(\"tabindex\", index === 0 ? \"0\" : \"-1\"));\n }\n\n _handleCellFocusIn(event) {\n const cell = event.target.closest(\"td, th\");\n if (!cell || cell.parentElement.hidden) return;\n\n this._visibleCells().forEach((c) => c.setAttribute(\"tabindex\", c === cell ? \"0\" : \"-1\"));\n }\n\n _handleCellKeydown(event) {\n const cell = event.target.closest(\"td, th\");\n if (!cell) return;\n\n const rows = Array.from(this.tbodyEl.querySelectorAll(\"tr:not([hidden])\"));\n const rowIndex = rows.indexOf(cell.parentElement);\n if (rowIndex === -1) return;\n\n const cellsInRow = Array.from(cell.parentElement.children);\n const colIndex = cellsInRow.indexOf(cell);\n const lastRow = rows[rows.length - 1];\n\n let target = null;\n switch (event.key) {\n case \"ArrowRight\":\n target = cellsInRow[colIndex + 1];\n break;\n case \"ArrowLeft\":\n target = cellsInRow[colIndex - 1];\n break;\n case \"ArrowDown\":\n target = rows[rowIndex + 1]?.children[colIndex];\n break;\n case \"ArrowUp\":\n target = rows[rowIndex - 1]?.children[colIndex];\n break;\n case \"Home\":\n target = event.ctrlKey ? rows[0]?.children[0] : cellsInRow[0];\n break;\n case \"End\":\n target = event.ctrlKey ? lastRow?.children[lastRow.children.length - 1] : cellsInRow[cellsInRow.length - 1];\n break;\n default:\n return;\n }\n\n if (!target) return;\n event.preventDefault();\n target.focus();\n }\n\n dispose() {\n if (this.theadEl) this.theadEl.removeEventListener(\"click\", this._handleSortClick);\n if (this.filterInput) this.filterInput.removeEventListener(\"input\", this._handleFilterInput);\n this.paginationEl.removeEventListener(\"click\", this._handlePaginationClick);\n this.tbodyEl.removeEventListener(\"keydown\", this._handleCellKeydown);\n this.tbodyEl.removeEventListener(\"focusin\", this._handleCellFocusIn);\n instances.delete(this.rootEl);\n }\n}\n\nautoInit(\"datatable\", DataTable);\n", "import { lockScroll, unlockScroll, onClickOutside } from \"./core/overlay.js\";\nimport { createFocusTrap, onEscapeKey } from \"./core/focus.js\";\nimport { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nlet idCounter = 0;\n\nfunction uniqueId(prefix) {\n idCounter += 1;\n return `${prefix}-${idCounter}`;\n}\n\nfunction parseShortcut(spec) {\n const parts = spec.toLowerCase().split(\"+\").map((part) => part.trim());\n return {\n mod: parts.includes(\"mod\"),\n shift: parts.includes(\"shift\"),\n alt: parts.includes(\"alt\"),\n key: parts[parts.length - 1],\n };\n}\n\nfunction matchesShortcut(event, shortcut) {\n const modPressed = event.ctrlKey || event.metaKey;\n return (\n event.key.toLowerCase() === shortcut.key &&\n shortcut.mod === modPressed &&\n shortcut.shift === event.shiftKey &&\n shortcut.alt === event.altKey\n );\n}\n\n// Command Palette: combina o filtro/navega\u00E7\u00E3o do Combobox (`.fs-dropdown-item`\n// reaproveitado da listbox) com o overlay/focus trap do Modal \u2014 mas \u00E9\n// componente pr\u00F3prio (n\u00E3o estende nenhum dos dois) porque a combina\u00E7\u00E3o\n// espec\u00EDfica (di\u00E1logo sempre com listbox vis\u00EDvel + atalho global) n\u00E3o\n// corresponde a nenhum dos dois padr\u00F5es isoladamente.\nexport class CommandPalette {\n constructor(triggerEl, options = {}) {\n const targetSelector = triggerEl.getAttribute(\"data-fs-target\");\n const paletteEl = targetSelector ? document.querySelector(targetSelector) : null;\n\n if (!paletteEl) {\n throw new Error(\"FokusStyles.CommandPalette: painel n\u00E3o encontrado (data-fs-target).\");\n }\n\n this.triggerEl = triggerEl;\n this.paletteEl = paletteEl;\n this.dialogEl = paletteEl.querySelector(\".fs-command-palette-dialog\") ?? paletteEl;\n this.inputEl = paletteEl.querySelector(\".fs-command-palette-input\");\n this.listEl = paletteEl.querySelector(\".fs-command-palette-list\");\n this.isOpen = false;\n this.activeIndex = -1;\n this._focusTrap = null;\n this._outsideClickCleanup = null;\n\n if (!this.listEl.id) this.listEl.id = uniqueId(\"fs-command-palette-listbox\");\n\n paletteEl.setAttribute(\"role\", \"dialog\");\n paletteEl.setAttribute(\"aria-modal\", \"true\");\n\n this.inputEl.setAttribute(\"role\", \"combobox\");\n this.inputEl.setAttribute(\"aria-expanded\", \"false\");\n this.inputEl.setAttribute(\"aria-autocomplete\", \"list\");\n this.inputEl.setAttribute(\"aria-controls\", this.listEl.id);\n this.inputEl.setAttribute(\"autocomplete\", \"off\");\n this.listEl.setAttribute(\"role\", \"listbox\");\n\n this._getItems().forEach((item) => {\n if (!item.id) item.id = uniqueId(\"fs-command-palette-option\");\n item.setAttribute(\"role\", \"option\");\n item.setAttribute(\"aria-selected\", \"false\");\n });\n\n this._handleTriggerClick = this._handleTriggerClick.bind(this);\n this._handleInput = this._handleInput.bind(this);\n this._handleKeydown = this._handleKeydown.bind(this);\n this._handleItemMousedown = this._handleItemMousedown.bind(this);\n this._handleItemClick = this._handleItemClick.bind(this);\n this._handleGlobalShortcut = this._handleGlobalShortcut.bind(this);\n\n triggerEl.addEventListener(\"click\", this._handleTriggerClick);\n this.inputEl.addEventListener(\"input\", this._handleInput);\n this.inputEl.addEventListener(\"keydown\", this._handleKeydown);\n this.listEl.addEventListener(\"mousedown\", this._handleItemMousedown);\n this.listEl.addEventListener(\"click\", this._handleItemClick);\n\n const shortcut = options.shortcut ?? triggerEl.getAttribute(\"data-fs-shortcut\");\n this._shortcut = shortcut ? parseShortcut(shortcut) : null;\n if (this._shortcut) document.addEventListener(\"keydown\", this._handleGlobalShortcut);\n\n this._removeEscapeListener = onEscapeKey(() => {\n if (this.isOpen) this.hide();\n });\n\n instances.set(triggerEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _getItems() {\n return Array.from(this.listEl.querySelectorAll(\".fs-dropdown-item\"));\n }\n\n _getSelectableItems() {\n return this._getItems().filter((item) => !item.hidden && !item.hasAttribute(\"data-fs-empty\") && !item.classList.contains(\"is-disabled\"));\n }\n\n _filter(query) {\n const normalized = query.trim().toLowerCase();\n\n this._getItems().forEach((item) => {\n if (item.hasAttribute(\"data-fs-empty\")) return;\n item.hidden = normalized.length > 0 && !item.textContent.toLowerCase().includes(normalized);\n });\n\n const emptyEl = this.listEl.querySelector(\"[data-fs-empty]\");\n if (emptyEl) emptyEl.hidden = this._getSelectableItems().length > 0;\n }\n\n _setActiveIndex(index) {\n const items = this._getSelectableItems();\n if (items.length === 0) {\n this.activeIndex = -1;\n this.inputEl.removeAttribute(\"aria-activedescendant\");\n return;\n }\n\n const previous = items[this.activeIndex];\n previous?.classList.remove(\"is-active\");\n\n this.activeIndex = ((index % items.length) + items.length) % items.length;\n const current = items[this.activeIndex];\n current.classList.add(\"is-active\");\n current.scrollIntoView({ block: \"nearest\" });\n this.inputEl.setAttribute(\"aria-activedescendant\", current.id);\n }\n\n _selectItem(item) {\n const label = item.textContent.trim();\n const value = item.getAttribute(\"data-value\") ?? label;\n\n this.hide();\n\n this.triggerEl.dispatchEvent(\n new CustomEvent(\"fs:command-palette:selected\", { bubbles: true, detail: { value, label } }),\n );\n }\n\n _handleTriggerClick(event) {\n event.preventDefault();\n this.toggle();\n }\n\n _handleInput() {\n this._filter(this.inputEl.value);\n this._setActiveIndex(0);\n }\n\n _handleKeydown(event) {\n if (event.key === \"ArrowDown\") {\n event.preventDefault();\n this._setActiveIndex(this.activeIndex + 1);\n } else if (event.key === \"ArrowUp\") {\n event.preventDefault();\n this._setActiveIndex(this.activeIndex - 1);\n } else if (event.key === \"Enter\") {\n if (this.activeIndex >= 0) {\n event.preventDefault();\n this._selectItem(this._getSelectableItems()[this.activeIndex]);\n }\n }\n }\n\n _handleItemMousedown(event) {\n if (event.target.closest(\".fs-dropdown-item\")) event.preventDefault();\n }\n\n _handleItemClick(event) {\n const item = event.target.closest(\".fs-dropdown-item:not(.is-disabled)\");\n if (!item || item.hasAttribute(\"data-fs-empty\")) return;\n\n this._selectItem(item);\n }\n\n _handleGlobalShortcut(event) {\n if (!matchesShortcut(event, this._shortcut)) return;\n event.preventDefault();\n this.toggle();\n }\n\n show() {\n if (this.isOpen) return;\n this.isOpen = true;\n\n const theme = this.triggerEl.closest(\"[data-theme]\")?.getAttribute(\"data-theme\");\n if (theme) {\n this.paletteEl.setAttribute(\"data-theme\", theme);\n } else {\n this.paletteEl.removeAttribute(\"data-theme\");\n }\n\n this.paletteEl.classList.add(\"is-open\");\n lockScroll();\n\n this.inputEl.value = \"\";\n this._filter(\"\");\n this._setActiveIndex(0);\n this.inputEl.setAttribute(\"aria-expanded\", \"true\");\n\n this._focusTrap = createFocusTrap(this.dialogEl);\n this._focusTrap.activate();\n\n this._outsideClickCleanup = onClickOutside(this.dialogEl, () => this.hide());\n\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:command-palette:shown\", { bubbles: true }));\n }\n\n hide() {\n if (!this.isOpen) return;\n this.isOpen = false;\n\n this.paletteEl.classList.remove(\"is-open\");\n unlockScroll();\n this.inputEl.setAttribute(\"aria-expanded\", \"false\");\n\n this._focusTrap?.deactivate();\n this._focusTrap = null;\n\n this._outsideClickCleanup?.();\n this._outsideClickCleanup = null;\n\n this.triggerEl.focus();\n\n this.triggerEl.dispatchEvent(new CustomEvent(\"fs:command-palette:hidden\", { bubbles: true }));\n }\n\n toggle() {\n if (this.isOpen) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n dispose() {\n this.hide();\n this._removeEscapeListener();\n this.triggerEl.removeEventListener(\"click\", this._handleTriggerClick);\n this.inputEl.removeEventListener(\"input\", this._handleInput);\n this.inputEl.removeEventListener(\"keydown\", this._handleKeydown);\n this.listEl.removeEventListener(\"mousedown\", this._handleItemMousedown);\n this.listEl.removeEventListener(\"click\", this._handleItemClick);\n if (this._shortcut) document.removeEventListener(\"keydown\", this._handleGlobalShortcut);\n instances.delete(this.triggerEl);\n }\n}\n\nautoInit(\"command-palette\", CommandPalette);\n", "import { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\n// Tree View: padr\u00E3o WAI-ARIA Tree View\n// (https://www.w3.org/WAI/ARIA/apg/patterns/treeview/). Cada n\u00F3 \u00E9 um `<li\n// role=\"treeitem\">` com `<span class=\"fs-tree-label\">` (obrigat\u00F3rio) seguido,\n// se houver filhos, de um `<ul>`/`<ol>` (`role=\"group\"`, auto-anexado) \u2014\n// o bot\u00E3o `.fs-tree-toggle` \u00E9 injetado automaticamente pelo JS nos n\u00F3s com\n// filhos, igual ao bot\u00E3o de ordena\u00E7\u00E3o do DataTable.\nexport class TreeView {\n constructor(rootEl) {\n this.rootEl = rootEl;\n rootEl.setAttribute(\"role\", \"tree\");\n\n this._setupItems();\n\n this._handleClick = this._handleClick.bind(this);\n this._handleKeydown = this._handleKeydown.bind(this);\n this._handleFocusIn = this._handleFocusIn.bind(this);\n\n rootEl.addEventListener(\"click\", this._handleClick);\n rootEl.addEventListener(\"keydown\", this._handleKeydown);\n rootEl.addEventListener(\"focusin\", this._handleFocusIn);\n\n this._resetRovingTabindex();\n\n instances.set(rootEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _setupItems() {\n Array.from(this.rootEl.querySelectorAll(\"li\")).forEach((li) => {\n li.setAttribute(\"role\", \"treeitem\");\n\n const group = this._group(li);\n if (!group) return;\n\n group.setAttribute(\"role\", \"group\");\n if (!li.hasAttribute(\"aria-expanded\")) li.setAttribute(\"aria-expanded\", \"false\");\n group.hidden = li.getAttribute(\"aria-expanded\") !== \"true\";\n\n const label = li.querySelector(\":scope > .fs-tree-label\") ?? li;\n if (!label.querySelector(\":scope > .fs-tree-toggle\")) {\n const toggle = document.createElement(\"span\");\n toggle.className = \"fs-tree-toggle\";\n toggle.setAttribute(\"aria-hidden\", \"true\");\n label.insertBefore(toggle, label.firstChild);\n }\n });\n }\n\n _group(item) {\n return item.querySelector(\":scope > ul, :scope > ol\");\n }\n\n _isExpanded(item) {\n return item.getAttribute(\"aria-expanded\") === \"true\";\n }\n\n _isVisible(item) {\n let group = item.parentElement.closest('[role=\"group\"]');\n while (group) {\n if (group.hidden) return false;\n group = group.parentElement.closest('[role=\"group\"]');\n }\n return true;\n }\n\n _visibleItems() {\n return Array.from(this.rootEl.querySelectorAll('[role=\"treeitem\"]')).filter((item) => this._isVisible(item));\n }\n\n _resetRovingTabindex() {\n const items = this._visibleItems();\n const current = items.find((item) => item.getAttribute(\"tabindex\") === \"0\") ?? items[0];\n items.forEach((item) => item.setAttribute(\"tabindex\", item === current ? \"0\" : \"-1\"));\n }\n\n expand(item) {\n const group = this._group(item);\n if (!group || this._isExpanded(item)) return;\n\n item.setAttribute(\"aria-expanded\", \"true\");\n group.hidden = false;\n this._resetRovingTabindex();\n this.rootEl.dispatchEvent(new CustomEvent(\"fs:tree:expanded\", { bubbles: true, detail: { item } }));\n }\n\n collapse(item) {\n const group = this._group(item);\n if (!group || !this._isExpanded(item)) return;\n\n item.setAttribute(\"aria-expanded\", \"false\");\n group.hidden = true;\n this._resetRovingTabindex();\n this.rootEl.dispatchEvent(new CustomEvent(\"fs:tree:collapsed\", { bubbles: true, detail: { item } }));\n }\n\n toggle(item) {\n if (this._isExpanded(item)) {\n this.collapse(item);\n } else {\n this.expand(item);\n }\n }\n\n select(item) {\n this.rootEl.querySelectorAll('[aria-selected=\"true\"]').forEach((el) => el.setAttribute(\"aria-selected\", \"false\"));\n item.setAttribute(\"aria-selected\", \"true\");\n\n this.rootEl.dispatchEvent(\n new CustomEvent(\"fs:tree:selected\", { bubbles: true, detail: { value: item.dataset.value ?? item.textContent.trim(), item } }),\n );\n }\n\n _handleClick(event) {\n const item = event.target.closest('[role=\"treeitem\"]');\n if (!item) return;\n\n if (this._group(item)) this.toggle(item);\n this.select(item);\n item.focus();\n }\n\n _handleFocusIn(event) {\n const item = event.target.closest('[role=\"treeitem\"]');\n if (!item || !this._isVisible(item)) return;\n\n this._visibleItems().forEach((el) => el.setAttribute(\"tabindex\", el === item ? \"0\" : \"-1\"));\n }\n\n _handleKeydown(event) {\n const item = event.target.closest('[role=\"treeitem\"]');\n if (!item) return;\n\n const items = this._visibleItems();\n const index = items.indexOf(item);\n const group = this._group(item);\n\n switch (event.key) {\n case \"ArrowDown\":\n event.preventDefault();\n items[index + 1]?.focus();\n break;\n case \"ArrowUp\":\n event.preventDefault();\n items[index - 1]?.focus();\n break;\n case \"ArrowRight\":\n event.preventDefault();\n if (group) {\n if (this._isExpanded(item)) items[index + 1]?.focus();\n else this.expand(item);\n }\n break;\n case \"ArrowLeft\":\n event.preventDefault();\n if (group && this._isExpanded(item)) {\n this.collapse(item);\n } else {\n item.parentElement.closest('[role=\"treeitem\"]')?.focus();\n }\n break;\n case \"Home\":\n event.preventDefault();\n items[0]?.focus();\n break;\n case \"End\":\n event.preventDefault();\n items[items.length - 1]?.focus();\n break;\n case \"Enter\":\n case \" \":\n event.preventDefault();\n if (group) this.toggle(item);\n this.select(item);\n break;\n default:\n return;\n }\n }\n\n dispose() {\n this.rootEl.removeEventListener(\"click\", this._handleClick);\n this.rootEl.removeEventListener(\"keydown\", this._handleKeydown);\n this.rootEl.removeEventListener(\"focusin\", this._handleFocusIn);\n instances.delete(this.rootEl);\n }\n}\n\nautoInit(\"tree-view\", TreeView);\n", "import { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nfunction computePercent(inputEl) {\n const min = Number(inputEl.min || 0);\n const max = Number(inputEl.max || 100);\n const value = Number(inputEl.value);\n\n if (max === min) return 0;\n return ((value - min) / (max - min)) * 100;\n}\n\n// Range/Slider: o <input type=\"range\"> nativo j\u00E1 cobre teclado (setas,\n// Home/End, PageUp/Down) e ARIA (role=slider impl\u00EDcito, aria-valuenow\n// autom\u00E1tico) sem nenhum JS \u2014 este componente s\u00F3 resolve dois pontos que\n// o CSS puro n\u00E3o alcan\u00E7a: (1) pintar a trilha preenchida at\u00E9 o valor atual\n// via `--fs-range-percent` (truque necess\u00E1rio porque s\u00F3 o Firefox suporta\n// `::-moz-range-progress`; ver _range.scss); (2) espelhar o valor num\n// `<output>` associado (`data-fs-target`), pra quem n\u00E3o consegue perceber\n// a posi\u00E7\u00E3o do thumb s\u00F3 visualmente.\nexport class RangeSlider {\n constructor(inputEl) {\n const targetSelector = inputEl.getAttribute(\"data-fs-target\");\n const outputEl = targetSelector ? document.querySelector(targetSelector) : null;\n\n this.inputEl = inputEl;\n this.outputEl = outputEl;\n\n this._handleInput = this._handleInput.bind(this);\n inputEl.addEventListener(\"input\", this._handleInput);\n\n this._render();\n\n instances.set(inputEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n _handleInput() {\n this._render();\n }\n\n _render() {\n this.inputEl.style.setProperty(\"--fs-range-percent\", `${computePercent(this.inputEl)}%`);\n if (this.outputEl) this.outputEl.textContent = this.inputEl.value;\n }\n\n dispose() {\n this.inputEl.removeEventListener(\"input\", this._handleInput);\n instances.delete(this.inputEl);\n }\n}\n\nautoInit(\"range\", RangeSlider);\n", "import { autoInit, createInstanceRegistry } from \"./core/register.js\";\n\nconst instances = createInstanceRegistry();\n\nlet idCounter = 0;\n\nfunction escapeHtml(value) {\n const div = document.createElement(\"div\");\n div.textContent = value;\n return div.innerHTML;\n}\n\nfunction formatBytes(bytes) {\n if (bytes < 1024) return `${bytes} B`;\n const units = [\"KB\", \"MB\", \"GB\"];\n let value = bytes;\n let unitIndex = -1;\n\n do {\n value /= 1024;\n unitIndex += 1;\n } while (value >= 1024 && unitIndex < units.length - 1);\n\n return `${value.toFixed(1)} ${units[unitIndex]}`;\n}\n\nfunction fileExtension(name) {\n const dot = name.lastIndexOf(\".\");\n return dot === -1 ? \"\" : name.slice(dot + 1, dot + 5).toUpperCase();\n}\n\n// Upload avan\u00E7ado: evolu\u00E7\u00E3o de js/file-drop.js \u2014 m\u00FAltiplos arquivos,\n// preview por arquivo (thumbnail de imagem via createObjectURL, nome,\n// tamanho), progresso individual e remo\u00E7\u00E3o por item. N\u00E3o faz upload de\n// verdade (agn\u00F3stico de backend/protocolo): s\u00F3 mant\u00E9m a lista de arquivos\n// e exp\u00F5e `setProgress`/`setError` pro consumidor chamar a partir do\n// pr\u00F3prio XHR/fetch. Comp\u00F5e com data-fs=\"file-drop\" na mesma label (ver\n// mockup/file-upload-advanced.html) pra ganhar arrastar-e-soltar de gra\u00E7a.\nexport class FileUploadAdvanced {\n constructor(rootEl) {\n const inputEl = rootEl.querySelector(\".fs-file-input\");\n if (!inputEl) {\n throw new Error(\"FokusStyles.FileUploadAdvanced: .fs-file-input n\u00E3o encontrado.\");\n }\n\n this.rootEl = rootEl;\n this.inputEl = inputEl;\n this.listEl = rootEl.querySelector(\".fs-file-upload-list\");\n if (!this.listEl) {\n this.listEl = document.createElement(\"ul\");\n this.listEl.className = \"fs-file-upload-list\";\n rootEl.appendChild(this.listEl);\n }\n\n this._items = new Map();\n\n this._handleChange = this._handleChange.bind(this);\n this._handleListClick = this._handleListClick.bind(this);\n\n inputEl.addEventListener(\"change\", this._handleChange);\n this.listEl.addEventListener(\"click\", this._handleListClick);\n\n instances.set(rootEl, this);\n }\n\n static getInstance(el) {\n return instances.get(el);\n }\n\n getFiles() {\n return Array.from(this._items.values()).map((item) => item.file);\n }\n\n setProgress(id, percent) {\n const item = this._items.get(id);\n if (!item) return;\n\n item.progress = Math.min(100, Math.max(0, percent));\n item.error = null;\n this._renderItem(id);\n }\n\n setError(id, message) {\n const item = this._items.get(id);\n if (!item) return;\n\n item.error = message;\n this._renderItem(id);\n }\n\n remove(id) {\n const item = this._items.get(id);\n if (!item) return;\n\n if (item.thumbUrl) URL.revokeObjectURL(item.thumbUrl);\n this._items.delete(id);\n\n const itemEl = this.listEl.querySelector(`[data-file-id=\"${id}\"]`);\n itemEl?.remove();\n\n this.rootEl.dispatchEvent(\n new CustomEvent(\"fs:file-upload:removed\", { bubbles: true, detail: { id, file: item.file } }),\n );\n }\n\n _handleChange() {\n const files = Array.from(this.inputEl.files ?? []);\n if (files.length === 0) return;\n\n const added = [];\n for (const file of files) {\n idCounter += 1;\n const id = `file-${idCounter}`;\n const thumbUrl = file.type.startsWith(\"image/\") ? URL.createObjectURL(file) : null;\n this._items.set(id, { file, progress: 0, error: null, thumbUrl });\n added.push({ id, file });\n this._appendItem(id);\n }\n\n this.rootEl.dispatchEvent(new CustomEvent(\"fs:file-upload:added\", { bubbles: true, detail: { items: added } }));\n }\n\n _handleListClick(event) {\n const removeBtn = event.target.closest(\"[data-file-upload-remove]\");\n if (!removeBtn) return;\n\n const itemEl = removeBtn.closest(\"[data-file-id]\");\n if (itemEl) this.remove(itemEl.getAttribute(\"data-file-id\"));\n }\n\n _appendItem(id) {\n const item = this._items.get(id);\n const li = document.createElement(\"li\");\n li.className = \"fs-file-upload-item\";\n li.setAttribute(\"data-file-id\", id);\n this.listEl.appendChild(li);\n this._renderItem(id, item);\n }\n\n _renderItem(id, itemArg) {\n const item = itemArg ?? this._items.get(id);\n if (!item) return;\n\n const li = this.listEl.querySelector(`[data-file-id=\"${id}\"]`);\n if (!li) return;\n\n const { file, progress, error, thumbUrl } = item;\n const thumb = thumbUrl\n ? `<img src=\"${thumbUrl}\" alt=\"\">`\n : escapeHtml(fileExtension(file.name) || \"?\");\n\n li.classList.toggle(\"is-error\", Boolean(error));\n li.innerHTML = `\n <div class=\"fs-file-upload-thumb\">${thumb}</div>\n <div class=\"fs-file-upload-info\">\n <p class=\"fs-file-upload-name\">${escapeHtml(file.name)}</p>\n <p class=\"fs-file-upload-size\">${error ? escapeHtml(error) : formatBytes(file.size)}</p>\n <div class=\"fs-progress fs-progress-sm\" role=\"progressbar\" aria-valuenow=\"${progress}\" aria-valuemin=\"0\" aria-valuemax=\"100\" aria-label=\"Progresso de ${escapeHtml(file.name)}\">\n <div class=\"fs-progress-bar${error ? \" fs-progress-bar-danger\" : \"\"}\" style=\"--fs-progress-value: ${progress};\"></div>\n </div>\n </div>\n <button type=\"button\" class=\"fs-btn-close fs-file-upload-remove\" data-file-upload-remove aria-label=\"Remover ${escapeHtml(file.name)}\"></button>\n `;\n }\n\n dispose() {\n this.inputEl.removeEventListener(\"change\", this._handleChange);\n this.listEl.removeEventListener(\"click\", this._handleListClick);\n\n for (const item of this._items.values()) {\n if (item.thumbUrl) URL.revokeObjectURL(item.thumbUrl);\n }\n this._items.clear();\n\n instances.delete(this.rootEl);\n }\n}\n\nautoInit(\"file-upload-advanced\", FileUploadAdvanced);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["fokus_exports", "__export", "Accordion", "Breadcrumb", "Carousel", "Collapse", "Combobox", "CommandPalette", "DataTable", "Datepicker", "Dropdown", "FileDrop", "FileUploadAdvanced", "Modal", "NestedMenu", "NotificationCenter", "Offcanvas", "Popover", "RangeSlider", "Select", "Stepper", "Tabs", "Tag", "Toast", "Tooltip", "TreeView", "confirm", "core_exports", "core_exports", "__export", "applyPosition", "autoInit", "collapse", "computePosition", "createFocusTrap", "createInstanceRegistry", "expand", "getFocusableElements", "lockScroll", "onClickOutside", "onEscapeKey", "onTransitionEnd", "unlockScroll", "watchPosition", "OPPOSITE_PLACEMENT", "fitsPlacement", "placement", "referenceRect", "floatingRect", "offset", "viewportWidth", "viewportHeight", "alignCrossAxis", "align", "referenceStart", "referenceSize", "floatingSize", "computePosition", "referenceEl", "floatingEl", "options", "padding", "finalPlacement", "top", "left", "maxLeft", "maxTop", "watchPosition", "update", "applyPosition", "frame", "schedule", "observer", "position", "lockCount", "paddingCompensated", "previousOverflow", "previousPaddingRight", "lockScroll", "scrollbarWidth", "unlockScroll", "onClickOutside", "el", "callback", "handler", "event", "FOCUSABLE_SELECTOR", "getFocusableElements", "container", "el", "createFocusTrap", "handleKeydown", "event", "focusable", "first", "last", "onEscapeKey", "callback", "handler", "prefersReducedMotion", "waitForHeightTransition", "el", "resolve", "settled", "settle", "timeout", "handleEnd", "event", "collapse", "options", "_a", "duration", "done", "expand", "targetHeight", "onTransitionEnd", "propertyName", "createInstanceRegistry", "instances", "el", "instance", "autoInit", "name", "Ctor", "init", "instances", "createInstanceRegistry", "Dropdown", "toggleEl", "options", "_a", "_b", "_c", "_d", "targetSelector", "menuEl", "item", "onEscapeKey", "el", "event", "items", "currentIndex", "theme", "position", "computePosition", "applyPosition", "watchPosition", "firstItem", "onClickOutside", "autoInit", "instances", "createInstanceRegistry", "idCounter", "Tooltip", "referenceEl", "options", "_a", "_b", "_c", "_d", "title", "onEscapeKey", "el", "theme", "position", "computePosition", "applyPosition", "watchPosition", "autoInit", "instances", "createInstanceRegistry", "idCounter", "HOVER_HIDE_DELAY", "Popover", "triggerEl", "options", "_a", "_b", "_c", "_d", "_e", "_f", "targetSelector", "popoverEl", "headerEl", "el", "event", "onEscapeKey", "theme", "position", "computePosition", "applyPosition", "watchPosition", "onClickOutside", "autoInit", "instances", "createInstanceRegistry", "Modal", "triggerEl", "options", "_a", "_b", "targetSelector", "modalEl", "titleEl", "onEscapeKey", "el", "event", "lockScroll", "createFocusTrap", "onClickOutside", "unlockScroll", "autoInit", "idCounter", "escapeHtml", "value", "div", "confirm", "options", "title", "message", "confirmText", "cancelText", "variant", "resolve", "modalId", "invokerEl", "modalEl", "triggerEl", "modal", "Modal", "settled", "finish", "result", "_a", "event", "action", "instances", "createInstanceRegistry", "Tag", "tagEl", "el", "event", "loading", "dismissButton", "autoInit", "instances", "createInstanceRegistry", "FileDrop", "labelEl", "inputEl", "el", "event", "_a", "files", "autoInit", "instances", "createInstanceRegistry", "Offcanvas", "triggerEl", "options", "_a", "_b", "targetSelector", "offcanvasEl", "titleEl", "onEscapeKey", "el", "event", "lockScroll", "createFocusTrap", "onClickOutside", "_c", "unlockScroll", "autoInit", "instances", "createInstanceRegistry", "Select", "selectEl", "Dropdown", "el", "wrapper", "toggle", "menu", "option", "item", "selectedOption", "index", "isSelected", "event", "autoInit", "instances", "createInstanceRegistry", "idCounter", "Accordion", "accordionEl", "button", "panel", "startsOpen", "entry", "el", "other", "expand", "collapse", "autoInit", "instances", "createInstanceRegistry", "idCounter", "Collapse", "triggerEl", "targetSelector", "collapseEl", "el", "expand", "collapse", "autoInit", "instances", "createInstanceRegistry", "idCounter", "Tabs", "tablistEl", "tab", "isActive", "paneSelector", "pane", "el", "event", "enabledTabs", "currentIndex", "nextIndex", "nextTab", "otherTab", "autoInit", "instances", "createInstanceRegistry", "Toast", "toastEl", "el", "event", "expand", "collapse", "autoInit", "instances", "createInstanceRegistry", "interactiveSelector", "Carousel", "carouselEl", "_a", "_b", "_c", "item", "event", "index", "btn", "el", "isPlaying", "nextIndex", "count", "from", "to", "_d", "e", "deltaX", "deltaY", "horizontal", "width", "threshold", "autoInit", "instances", "createInstanceRegistry", "Stepper", "stepperEl", "_a", "_b", "contentPanels", "step", "i", "event", "el", "index", "isActive", "isCompleted", "clickable", "panel", "to", "from", "target", "before", "hasError", "autoInit", "instances", "createInstanceRegistry", "Breadcrumb", "listEl", "options", "_a", "_b", "el", "targets", "item", "target", "measure", "Tooltip", "shouldCollapse", "hiddenItems", "moreItem", "toggle", "menu", "source", "isLink", "link", "Dropdown", "autoInit", "instances", "createInstanceRegistry", "idCounter", "escapeHtml", "value", "div", "formatTime", "time", "date", "hh", "mm", "NotificationCenter", "triggerEl", "options", "_a", "_b", "_c", "_d", "_e", "_f", "panelSelector", "panelEl", "containerSelector", "onEscapeKey", "el", "container", "e", "record", "title", "body", "variant", "autohide", "delay", "toastEl", "toast", "Toast", "id", "count", "event", "dismissBtn", "theme", "position", "computePosition", "applyPosition", "onClickOutside", "autoInit", "instances", "createInstanceRegistry", "levelItems", "menuEl", "items", "child", "item", "isSubmenuParent", "NestedMenu", "toggleEl", "options", "_a", "_b", "_c", "_d", "targetSelector", "rootMenu", "menu", "onEscapeKey", "el", "parentItem", "submenu", "rect", "width", "viewportWidth", "focusFirst", "sibling", "nested", "wrapper", "event", "hoveredParent", "active", "index", "parentWrapper", "inSubmenu", "theme", "position", "computePosition", "applyPosition", "onClickOutside", "autoInit", "instances", "createInstanceRegistry", "idCounter", "uniqueId", "prefix", "Combobox", "inputEl", "options", "_a", "_b", "targetSelector", "listboxEl", "option", "onEscapeKey", "el", "query", "normalized", "emptyEl", "index", "previous", "current", "label", "item", "event", "theme", "position", "computePosition", "applyPosition", "onClickOutside", "autoInit", "instances", "createInstanceRegistry", "WEEKDAY_FORMATTER", "HEADER_FORMATTER", "idCounter", "uniqueId", "prefix", "pad", "value", "toISO", "date", "toDisplay", "parseDisplay", "match", "day", "month", "year", "isSameDay", "a", "b", "buildMonthCells", "viewDate", "firstWeekday", "daysInMonth", "daysInPrevMonth", "cells", "i", "prevMonth", "nextDay", "nextMonth", "Datepicker", "inputEl", "options", "_a", "_b", "targetSelector", "panelEl", "initial", "onEscapeKey", "el", "event", "parsed", "current", "currentDate", "nextDate", "preferredDate", "today", "focusTarget", "tabbable", "cell", "weekdaysHtml", "_", "base", "rows", "weeksHtml", "row", "cellDate", "isSelected", "isToday", "isTabbable", "classes", "theme", "position", "computePosition", "applyPosition", "watchPosition", "onClickOutside", "autoInit", "instances", "createInstanceRegistry", "PAGE_WINDOW", "ICON_CHEVRON_LEFT", "ICON_CHEVRON_RIGHT", "compareValues", "a", "b", "numA", "numB", "compareTypedValues", "type", "normalize", "value", "DataTable", "rootEl", "options", "tableEl", "tbodyEl", "el", "th", "key", "btn", "order", "cell", "_a", "_b", "rows", "query", "row", "entry", "columnIndex", "direction", "page", "pageCount", "next", "isLoading", "message", "messageEl", "showLoading", "showError", "showTable", "matched", "start", "pageRows", "isEmpty", "end", "items", "label", "disabled", "ariaLabel", "isActive", "classes", "event", "index", "c", "_c", "rowIndex", "cellsInRow", "colIndex", "lastRow", "target", "autoInit", "instances", "createInstanceRegistry", "idCounter", "uniqueId", "prefix", "parseShortcut", "spec", "parts", "part", "matchesShortcut", "event", "shortcut", "modPressed", "CommandPalette", "triggerEl", "options", "_a", "_b", "targetSelector", "paletteEl", "item", "onEscapeKey", "el", "query", "normalized", "emptyEl", "index", "items", "previous", "current", "label", "value", "theme", "lockScroll", "createFocusTrap", "onClickOutside", "unlockScroll", "autoInit", "instances", "createInstanceRegistry", "TreeView", "rootEl", "el", "li", "_a", "group", "label", "toggle", "item", "items", "current", "event", "_b", "_c", "_d", "_e", "_f", "index", "autoInit", "instances", "createInstanceRegistry", "computePercent", "inputEl", "min", "max", "value", "RangeSlider", "targetSelector", "outputEl", "el", "autoInit", "instances", "createInstanceRegistry", "idCounter", "escapeHtml", "value", "div", "formatBytes", "bytes", "units", "unitIndex", "fileExtension", "name", "dot", "FileUploadAdvanced", "rootEl", "inputEl", "el", "item", "id", "percent", "message", "itemEl", "_a", "files", "added", "file", "thumbUrl", "event", "removeBtn", "li", "itemArg", "progress", "error", "thumb", "autoInit"]
|
|
7
|
+
}
|