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": ["instances", "instances", "instances", "idCounter", "instances", "idCounter", "instances", "instances", "instances", "instances", "instances", "idCounter", "instances", "idCounter", "instances", "idCounter", "instances", "instances", "instances", "instances", "_a", "instances", "idCounter", "escapeHtml", "instances", "_a", "instances", "idCounter", "instances", "idCounter", "uniqueId", "instances", "_a", "_b", "instances", "idCounter", "uniqueId", "instances", "instances", "instances", "idCounter", "escapeHtml"]
|
|
7
|
+
}
|