├── .env.example ├── .vscode └── settings.json ├── server └── tsconfig.json ├── public ├── icon.png ├── favicon.ico └── icons │ ├── favicon.ico │ ├── pwa-192x192.png │ ├── pwa-512x512.png │ ├── favicon-16x16.png │ ├── favicon-32x32.png │ ├── apple-touch-icon.png │ ├── pwa-maskable-192x192.png │ └── pwa-maskable-512x512.png ├── content └── 1.getting-started │ ├── _dir.yml │ └── 2.usage.md ├── app ├── components │ ├── Ui │ │ ├── Sidebar │ │ │ ├── MenuSubItem.vue │ │ │ ├── Footer.vue │ │ │ ├── Header.vue │ │ │ ├── Menu.vue │ │ │ ├── MenuItem.vue │ │ │ ├── Group.vue │ │ │ ├── GroupContent.vue │ │ │ ├── Separator.vue │ │ │ ├── Content.vue │ │ │ ├── Input.vue │ │ │ ├── MenuSub.vue │ │ │ ├── Inset.vue │ │ │ ├── MenuBadge.vue │ │ │ ├── GroupAction.vue │ │ │ ├── GroupLabel.vue │ │ │ └── Trigger.vue │ │ ├── Menubar │ │ │ ├── Portal.vue │ │ │ ├── Menu.vue │ │ │ ├── Group.vue │ │ │ ├── Arrow.vue │ │ │ ├── Sub.vue │ │ │ ├── RadioGroup.vue │ │ │ ├── Separator.vue │ │ │ ├── Shortcut.vue │ │ │ ├── Label.vue │ │ │ ├── ItemIndicator.vue │ │ │ ├── Menubar.vue │ │ │ └── Trigger.vue │ │ ├── Form │ │ │ ├── Message.vue │ │ │ ├── Control.vue │ │ │ ├── Description.vue │ │ │ ├── Label.vue │ │ │ └── Item.vue │ │ ├── Table │ │ │ ├── Header.vue │ │ │ ├── Body.vue │ │ │ ├── Caption.vue │ │ │ ├── Table.vue │ │ │ ├── Cell.vue │ │ │ ├── Footer.vue │ │ │ ├── Row.vue │ │ │ ├── Head.vue │ │ │ └── Empty.vue │ │ ├── AspectRatio.vue │ │ ├── Dialog │ │ │ ├── Close.vue │ │ │ ├── Portal.vue │ │ │ ├── Trigger.vue │ │ │ ├── Dialog.vue │ │ │ ├── Overlay.vue │ │ │ ├── Header.vue │ │ │ ├── Footer.vue │ │ │ ├── Title.vue │ │ │ └── Description.vue │ │ ├── Select │ │ │ ├── Value.vue │ │ │ ├── Portal.vue │ │ │ ├── ItemText.vue │ │ │ ├── Arrow.vue │ │ │ ├── Group.vue │ │ │ ├── Select.vue │ │ │ ├── Separator.vue │ │ │ ├── ScrollDownButton.vue │ │ │ ├── ScrollUpButton.vue │ │ │ ├── Label.vue │ │ │ ├── ItemIndicator.vue │ │ │ ├── Icon.vue │ │ │ ├── Viewport.vue │ │ │ ├── Item.vue │ │ │ └── Trigger.vue │ │ ├── Sheet │ │ │ ├── Close.vue │ │ │ ├── Portal.vue │ │ │ ├── Trigger.vue │ │ │ ├── Sheet.vue │ │ │ ├── Overlay.vue │ │ │ ├── Title.vue │ │ │ ├── Header.vue │ │ │ ├── Footer.vue │ │ │ ├── Description.vue │ │ │ └── X.vue │ │ ├── Editable │ │ │ ├── Area.vue │ │ │ ├── Input.vue │ │ │ ├── Preview.vue │ │ │ ├── Edit.vue │ │ │ ├── Cancel.vue │ │ │ ├── Submit.vue │ │ │ └── Editable.vue │ │ ├── Stepper │ │ │ ├── Title.vue │ │ │ ├── Trigger.vue │ │ │ ├── Indicator.vue │ │ │ ├── Separator.vue │ │ │ ├── Item.vue │ │ │ ├── Description.vue │ │ │ └── Stepper.vue │ │ ├── Tooltip │ │ │ ├── Portal.vue │ │ │ ├── Trigger.vue │ │ │ ├── Provider.vue │ │ │ ├── Arrow.vue │ │ │ └── Tooltip.vue │ │ ├── Autocomplete │ │ │ ├── Empty.vue │ │ │ ├── Group.vue │ │ │ ├── Cancel.vue │ │ │ ├── Viewport.vue │ │ │ ├── Portal.vue │ │ │ ├── Separator.vue │ │ │ ├── Arrow.vue │ │ │ ├── ItemIndicator.vue │ │ │ ├── Label.vue │ │ │ ├── Trigger.vue │ │ │ ├── Input.vue │ │ │ ├── Autocomplete.vue │ │ │ ├── Anchor.vue │ │ │ └── Item.vue │ │ ├── Popover │ │ │ ├── Trigger.vue │ │ │ ├── Close.vue │ │ │ ├── Anchor.vue │ │ │ ├── Portal.vue │ │ │ ├── Arrow.vue │ │ │ ├── Popover.vue │ │ │ └── X.vue │ │ ├── HoverCard │ │ │ ├── Portal.vue │ │ │ ├── Trigger.vue │ │ │ ├── HoverCard.vue │ │ │ └── Arrow.vue │ │ ├── ContextMenu │ │ │ ├── Group.vue │ │ │ ├── Portal.vue │ │ │ ├── Trigger.vue │ │ │ ├── Sub.vue │ │ │ ├── ContextMenu.vue │ │ │ ├── Shortcut.vue │ │ │ ├── RadioGroup.vue │ │ │ ├── Separator.vue │ │ │ ├── Arrow.vue │ │ │ ├── ItemIndicator.vue │ │ │ └── Label.vue │ │ ├── ScrollArea │ │ │ ├── Corner.vue │ │ │ ├── Viewport.vue │ │ │ ├── Thumb.vue │ │ │ ├── ScrollArea.vue │ │ │ └── Scrollbar.vue │ │ ├── AlertDialog │ │ │ ├── Portal.vue │ │ │ ├── Trigger.vue │ │ │ ├── Overlay.vue │ │ │ ├── Title.vue │ │ │ ├── Header.vue │ │ │ ├── Footer.vue │ │ │ └── Description.vue │ │ ├── DropdownMenu │ │ │ ├── Group.vue │ │ │ ├── Portal.vue │ │ │ ├── Trigger.vue │ │ │ ├── Sub.vue │ │ │ ├── DropdownMenu.vue │ │ │ ├── RadioGroup.vue │ │ │ ├── Separator.vue │ │ │ ├── Shortcut.vue │ │ │ ├── Arrow.vue │ │ │ ├── Label.vue │ │ │ └── ItemIndicator.vue │ │ ├── NavigationMenu │ │ │ ├── Item.vue │ │ │ ├── Sub.vue │ │ │ ├── Link.vue │ │ │ ├── List.vue │ │ │ ├── NavigationMenu.vue │ │ │ ├── Indicator.vue │ │ │ ├── Viewport.vue │ │ │ └── Content.vue │ │ ├── Drawer │ │ │ ├── Close.vue │ │ │ ├── Portal.vue │ │ │ ├── Trigger.vue │ │ │ ├── Drawer.vue │ │ │ ├── Overlay.vue │ │ │ ├── Title.vue │ │ │ ├── Description.vue │ │ │ ├── Footer.vue │ │ │ ├── Header.vue │ │ │ └── Content.vue │ │ ├── Listbox │ │ │ ├── Group.vue │ │ │ ├── GroupLabel.vue │ │ │ ├── Content.vue │ │ │ ├── Virtualizer.vue │ │ │ ├── ItemIndicator.vue │ │ │ ├── Listbox.vue │ │ │ ├── Filter.vue │ │ │ └── Item.vue │ │ ├── Toast │ │ │ ├── Provider.vue │ │ │ ├── Title.vue │ │ │ ├── Description.vue │ │ │ ├── Viewport.vue │ │ │ ├── Close.vue │ │ │ └── Action.vue │ │ ├── Collapsible │ │ │ ├── Trigger.vue │ │ │ ├── Collapsible.vue │ │ │ └── Content.vue │ │ ├── Tree │ │ │ ├── Virtualizer.vue │ │ │ ├── Tree.vue │ │ │ └── Item.vue │ │ ├── Tabs │ │ │ ├── Tabs.vue │ │ │ ├── Content.vue │ │ │ ├── List.vue │ │ │ └── Indicator.vue │ │ ├── TagsInput │ │ │ ├── ItemText.vue │ │ │ ├── Field.vue │ │ │ ├── Clear.vue │ │ │ ├── Item.vue │ │ │ ├── ItemDelete.vue │ │ │ └── TagsInput.vue │ │ ├── Pagination │ │ │ ├── Next.vue │ │ │ ├── Last.vue │ │ │ ├── First.vue │ │ │ ├── Prev.vue │ │ │ ├── Item.vue │ │ │ ├── List.vue │ │ │ └── Ellipsis.vue │ │ ├── Accordion │ │ │ ├── Header.vue │ │ │ ├── Item.vue │ │ │ └── Content.vue │ │ ├── Command │ │ │ ├── Separator.vue │ │ │ ├── Dialog.vue │ │ │ ├── Empty.vue │ │ │ ├── Cancel.vue │ │ │ ├── Shortcut.vue │ │ │ ├── Command.vue │ │ │ ├── Label.vue │ │ │ ├── Group.vue │ │ │ ├── List.vue │ │ │ └── Input.vue │ │ ├── Card │ │ │ ├── Footer.vue │ │ │ ├── Header.vue │ │ │ ├── Content.vue │ │ │ ├── Description.vue │ │ │ └── Title.vue │ │ ├── Container.vue │ │ ├── List │ │ │ ├── List.vue │ │ │ ├── Content.vue │ │ │ ├── Title.vue │ │ │ ├── Subtitle.vue │ │ │ └── Item.vue │ │ ├── Progress │ │ │ ├── Indicator.vue │ │ │ └── Progress.vue │ │ ├── RetroGrid.vue │ │ ├── Slider │ │ │ ├── Range.vue │ │ │ ├── Track.vue │ │ │ └── Thumb.vue │ │ ├── Separator.vue │ │ ├── Switch │ │ │ ├── Thumb.vue │ │ │ └── Switch.vue │ │ ├── GradientDivider.vue │ │ ├── NumberField │ │ │ ├── Input.vue │ │ │ ├── Decrement.vue │ │ │ └── Increment.vue │ │ ├── Avatar │ │ │ ├── Image.vue │ │ │ └── Fallback.vue │ │ ├── PinInput │ │ │ └── PinInputInput.vue │ │ ├── Alert │ │ │ ├── Title.vue │ │ │ └── Description.vue │ │ ├── RadioGroup │ │ │ ├── Indicator.vue │ │ │ ├── RadioGroup.vue │ │ │ └── Item.vue │ │ ├── Label.vue │ │ ├── Skeleton.vue │ │ ├── ToggleGroup │ │ │ └── ToggleGroup.vue │ │ ├── Splitter │ │ │ ├── Panel.vue │ │ │ └── Splitter.vue │ │ ├── Navbar.vue │ │ ├── Textarea.vue │ │ ├── Checkbox │ │ │ └── Indicator.vue │ │ ├── Chart │ │ │ └── Tooltip.vue │ │ └── Input.vue │ ├── content │ │ └── prose │ │ │ └── ProseTable.vue │ └── Docs │ │ └── PageHeader.vue ├── layouts │ └── blank.vue ├── app.vue ├── utils │ └── chart.ts ├── pages │ └── index.vue ├── plugins │ └── datatables.client.ts └── composables │ ├── useFormField.ts │ └── useShortcuts.ts ├── tsconfig.json ├── .husky └── pre-commit ├── Dockerfile ├── compose.yml ├── .github └── dependabot.yml ├── ui-thing.config.ts ├── .prettierrc ├── eslint.config.mjs └── LICENSE.md /.env.example: -------------------------------------------------------------------------------- 1 | SITE_URL=http://localhost:3000 -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "eslint.useFlatConfig": true 3 | } 4 | -------------------------------------------------------------------------------- /server/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../.nuxt/tsconfig.server.json" 3 | } 4 | -------------------------------------------------------------------------------- /public/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BayBreezy/ui-doc-starter/HEAD/public/icon.png -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BayBreezy/ui-doc-starter/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /content/1.getting-started/_dir.yml: -------------------------------------------------------------------------------- 1 | title: "Getting Started" 2 | icon: "heroicons:rocket-launch" 3 | -------------------------------------------------------------------------------- /public/icons/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BayBreezy/ui-doc-starter/HEAD/public/icons/favicon.ico -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/MenuSubItem.vue: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /public/icons/pwa-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BayBreezy/ui-doc-starter/HEAD/public/icons/pwa-192x192.png -------------------------------------------------------------------------------- /public/icons/pwa-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BayBreezy/ui-doc-starter/HEAD/public/icons/pwa-512x512.png -------------------------------------------------------------------------------- /public/icons/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BayBreezy/ui-doc-starter/HEAD/public/icons/favicon-16x16.png -------------------------------------------------------------------------------- /public/icons/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BayBreezy/ui-doc-starter/HEAD/public/icons/favicon-32x32.png -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // https://nuxt.com/docs/guide/concepts/typescript 3 | "extends": "./.nuxt/tsconfig.json" 4 | } 5 | -------------------------------------------------------------------------------- /public/icons/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BayBreezy/ui-doc-starter/HEAD/public/icons/apple-touch-icon.png -------------------------------------------------------------------------------- /public/icons/pwa-maskable-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BayBreezy/ui-doc-starter/HEAD/public/icons/pwa-maskable-192x192.png -------------------------------------------------------------------------------- /public/icons/pwa-maskable-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BayBreezy/ui-doc-starter/HEAD/public/icons/pwa-maskable-512x512.png -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | npm run lint 2 | npm run format 3 | # For testing purposes, you can add the following line to the end of the file: 4 | # exit 1 5 | 6 | -------------------------------------------------------------------------------- /app/layouts/blank.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /app/components/content/prose/ProseTable.vue: -------------------------------------------------------------------------------- 1 | 8 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:20.0-alpine 2 | 3 | WORKDIR /app 4 | 5 | COPY package*.json ./ 6 | 7 | RUN npm install 8 | 9 | COPY . . 10 | 11 | RUN npm run build 12 | 13 | CMD [ "node", ".output/server/index.mjs" ] -------------------------------------------------------------------------------- /compose.yml: -------------------------------------------------------------------------------- 1 | services: 2 | nuxt-app: 3 | image: nuxt-app 4 | build: . 5 | container_name: nuxt-app 6 | ports: 7 | - "3030:3000" 8 | environment: 9 | - SITE_URL=${SITE_URL:-http://localhost:3030} 10 | - NODE_ENV=production 11 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 12 | -------------------------------------------------------------------------------- /app/components/Ui/Form/Message.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Table/Header.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/AspectRatio.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Dialog/Close.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/Menu.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Select/Value.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Sheet/Close.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Dialog/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Editable/Area.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/Group.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Select/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Sheet/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Stepper/Title.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Table/Body.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Dialog/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Editable/Input.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Sheet/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Tooltip/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Empty.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Group.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Cancel.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Popover/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Select/ItemText.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Stepper/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Table/Caption.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Tooltip/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Editable/Preview.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/HoverCard/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Table/Table.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Tooltip/Provider.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/ContextMenu/Group.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/ScrollArea/Corner.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Stepper/Indicator.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Stepper/Separator.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/AlertDialog/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Viewport.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/ContextMenu/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/DropdownMenu/Group.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/Arrow.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 14 | -------------------------------------------------------------------------------- /app/components/Ui/Table/Cell.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Table/Footer.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Tooltip/Arrow.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 14 | -------------------------------------------------------------------------------- /app/components/Ui/AlertDialog/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Separator.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/ContextMenu/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/DropdownMenu/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Editable/Edit.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/NavigationMenu/Item.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Stepper/Item.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Table/Row.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Drawer/Close.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /app/components/Ui/DropdownMenu/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Editable/Cancel.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Editable/Submit.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /app/components/Ui/Drawer/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | -------------------------------------------------------------------------------- /app/components/Ui/Select/Arrow.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 14 | -------------------------------------------------------------------------------- /app/components/Ui/Drawer/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | -------------------------------------------------------------------------------- /app/components/Ui/Select/Group.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /app/components/Ui/Table/Head.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/HoverCard/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /app/components/Ui/Popover/Close.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /app/components/Ui/Popover/Anchor.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /app/components/Ui/Popover/Portal.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /app/components/Ui/Stepper/Description.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # Please see the documentation for all configuration options: 2 | # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 3 | 4 | version: 2 5 | updates: 6 | - package-ecosystem: "npm" 7 | directories: 8 | - "/" 9 | schedule: 10 | interval: "weekly" 11 | day: "sunday" 12 | time: "06:00" 13 | timezone: "America/Jamaica" 14 | -------------------------------------------------------------------------------- /app/app.vue: -------------------------------------------------------------------------------- 1 | 12 | 13 | 18 | -------------------------------------------------------------------------------- /app/components/Ui/Listbox/Group.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /ui-thing.config.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | nuxtVersion: 4, 3 | theme: "blue", 4 | tailwindCSSLocation: "app/assets/css/tailwind.css", 5 | tailwindConfigLocation: "tailwind.config.js", 6 | componentsLocation: "app/components/Ui", 7 | composablesLocation: "app/composables", 8 | utilsLocation: "app/utils", 9 | pluginsLocation: "app/plugins", 10 | force: true, 11 | useDefaultFilename: true, 12 | packageManager: "npm", 13 | }; 14 | -------------------------------------------------------------------------------- /app/components/Ui/Toast/Provider.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Collapsible/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /app/components/Ui/Form/Control.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Popover/Arrow.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 16 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "arrowParens": "always", 3 | "endOfLine": "lf", 4 | "plugins": ["@ianvs/prettier-plugin-sort-imports", "prettier-plugin-tailwindcss"], 5 | "printWidth": 100, 6 | "semi": true, 7 | "singleQuote": false, 8 | "tabWidth": 2, 9 | "trailingComma": "es5", 10 | "useTabs": false, 11 | "vueIndentScriptAndStyle": true, 12 | "tailwindFunctions": ["tv"], 13 | "importOrder": ["", "", "", "", "^[.]"] 14 | } 15 | -------------------------------------------------------------------------------- /app/components/Ui/Tree/Virtualizer.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /eslint.config.mjs: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | import withNuxt from "./.nuxt/eslint.config.mjs"; 3 | 4 | export default withNuxt({ 5 | rules: { 6 | "@typescript-eslint/no-explicit-any": "off", 7 | "vue/no-v-html": "off", 8 | "vue/require-default-prop": "off", 9 | "@typescript-eslint/ban-types": "off", 10 | "vue/html-self-closing": "off", 11 | "@typescript-eslint/no-unsafe-function-type": "off", 12 | "@typescript-eslint/no-empty-object-type": "off", 13 | }, 14 | }); 15 | -------------------------------------------------------------------------------- /app/components/Ui/Dialog/Dialog.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/Sub.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | -------------------------------------------------------------------------------- /app/components/Ui/Sheet/Sheet.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Arrow.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 19 | -------------------------------------------------------------------------------- /app/components/Ui/Select/Select.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | -------------------------------------------------------------------------------- /app/components/Ui/Popover/Popover.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Tree/Tree.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/ItemIndicator.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | -------------------------------------------------------------------------------- /app/components/Ui/Drawer/Drawer.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/ContextMenu/Sub.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Drawer/Overlay.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 17 | -------------------------------------------------------------------------------- /app/components/Ui/DropdownMenu/Sub.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | -------------------------------------------------------------------------------- /app/components/Ui/ContextMenu/ContextMenu.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | -------------------------------------------------------------------------------- /app/components/Ui/Stepper/Stepper.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/RadioGroup.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | -------------------------------------------------------------------------------- /app/components/Ui/NavigationMenu/Sub.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | -------------------------------------------------------------------------------- /app/components/Ui/DropdownMenu/DropdownMenu.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/NavigationMenu/Link.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | -------------------------------------------------------------------------------- /app/components/Ui/Table/Empty.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/Tree/Item.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /app/components/Ui/Form/Description.vue: -------------------------------------------------------------------------------- 1 | 10 | 17 | -------------------------------------------------------------------------------- /app/utils/chart.ts: -------------------------------------------------------------------------------- 1 | export function defaultColors(count: number = 3) { 2 | const quotient = Math.floor(count / 2); 3 | const remainder = count % 2; 4 | 5 | const primaryCount = quotient + remainder; 6 | const secondaryCount = quotient; 7 | return [ 8 | ...Array.from(Array(primaryCount).keys()).map( 9 | (i) => `hsl(var(--vis-primary-color) / ${1 - (1 / primaryCount) * i})` 10 | ), 11 | ...Array.from(Array(secondaryCount).keys()).map( 12 | (i) => `hsl(var(--vis-secondary-color) / ${1 - (1 / secondaryCount) * i})` 13 | ), 14 | ]; 15 | } 16 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Label.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/ContextMenu/Shortcut.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/Tabs/Tabs.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 18 | -------------------------------------------------------------------------------- /app/components/Ui/TagsInput/ItemText.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | -------------------------------------------------------------------------------- /app/components/Ui/Collapsible/Collapsible.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | -------------------------------------------------------------------------------- /app/components/Ui/Pagination/Next.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/TagsInput/Field.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | -------------------------------------------------------------------------------- /app/components/Ui/ContextMenu/RadioGroup.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | -------------------------------------------------------------------------------- /app/components/Ui/ContextMenu/Separator.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/Footer.vue: -------------------------------------------------------------------------------- 1 | 6 | 13 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/Header.vue: -------------------------------------------------------------------------------- 1 | 6 | 13 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/Menu.vue: -------------------------------------------------------------------------------- 1 | 6 | 13 | 21 | -------------------------------------------------------------------------------- /app/components/Docs/PageHeader.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | 18 | -------------------------------------------------------------------------------- /app/components/Ui/Accordion/Header.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 23 | -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/MenuItem.vue: -------------------------------------------------------------------------------- 1 | 6 | 13 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/DropdownMenu/RadioGroup.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/Group.vue: -------------------------------------------------------------------------------- 1 | 6 | 13 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/HoverCard/HoverCard.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 19 | -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/GroupContent.vue: -------------------------------------------------------------------------------- 1 | 6 | 13 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/Command/Separator.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/ContextMenu/Arrow.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/Select/Separator.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/Separator.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/Select/ScrollDownButton.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 19 | -------------------------------------------------------------------------------- /app/components/Ui/Command/Dialog.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/Listbox/GroupLabel.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 18 | -------------------------------------------------------------------------------- /app/components/Ui/Select/ScrollUpButton.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/Separator.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | 15 | 23 | -------------------------------------------------------------------------------- /app/components/Ui/Listbox/Content.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 18 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/Card/Footer.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 25 | -------------------------------------------------------------------------------- /app/components/Ui/Command/Empty.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/Drawer/Title.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/DropdownMenu/Separator.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/Pagination/Last.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 23 | -------------------------------------------------------------------------------- /app/components/Ui/Select/Label.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/Pagination/First.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 23 | -------------------------------------------------------------------------------- /app/components/Ui/Pagination/Prev.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/Command/Cancel.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 19 | -------------------------------------------------------------------------------- /app/components/Ui/Container.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 28 | -------------------------------------------------------------------------------- /app/components/Ui/Drawer/Description.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/Card/Header.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 25 | -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/Content.vue: -------------------------------------------------------------------------------- 1 | 6 | 13 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Input.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/Listbox/Virtualizer.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/Pagination/Item.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/Accordion/Item.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/ScrollArea/Viewport.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/Pagination/List.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/List/List.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Dialog/Overlay.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/HoverCard/Arrow.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 26 | -------------------------------------------------------------------------------- /app/components/Ui/Pagination/Ellipsis.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 23 | -------------------------------------------------------------------------------- /app/components/Ui/Progress/Indicator.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/RetroGrid.vue: -------------------------------------------------------------------------------- 1 | 14 | -------------------------------------------------------------------------------- /app/components/Ui/Sheet/Overlay.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/Slider/Range.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Autocomplete.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 23 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/Shortcut.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 25 | -------------------------------------------------------------------------------- /app/components/Ui/Command/Shortcut.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 23 | -------------------------------------------------------------------------------- /app/components/Ui/NavigationMenu/List.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/List/Content.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Listbox/ItemIndicator.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/Toast/Title.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/Autocomplete/Anchor.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/Listbox/Listbox.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 19 | -------------------------------------------------------------------------------- /app/components/Ui/AlertDialog/Overlay.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/Label.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Sheet/Title.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/Dialog/Header.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/DropdownMenu/Shortcut.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Sheet/Header.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Tabs/Content.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/Input.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/Sheet/Footer.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/MenuSub.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | 18 | 26 | -------------------------------------------------------------------------------- /app/components/Ui/Card/Content.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 28 | -------------------------------------------------------------------------------- /app/components/Ui/Dialog/Footer.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Dialog/Title.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/AlertDialog/Title.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/Command/Command.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/DropdownMenu/Arrow.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Separator.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 25 | -------------------------------------------------------------------------------- /app/components/Ui/AlertDialog/Header.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 28 | -------------------------------------------------------------------------------- /app/components/Ui/Collapsible/Content.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/Toast/Description.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/AlertDialog/Footer.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 29 | -------------------------------------------------------------------------------- /app/components/Ui/Sheet/Description.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/Switch/Thumb.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/TagsInput/Clear.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 20 | -------------------------------------------------------------------------------- /app/components/Ui/Dialog/Description.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/GradientDivider.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/List/Title.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 29 | -------------------------------------------------------------------------------- /app/pages/index.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 29 | -------------------------------------------------------------------------------- /app/components/Ui/Editable/Editable.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/Slider/Track.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/Card/Description.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 30 | -------------------------------------------------------------------------------- /app/components/Ui/Card/Title.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 31 | -------------------------------------------------------------------------------- /app/components/Ui/ContextMenu/ItemIndicator.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 26 | -------------------------------------------------------------------------------- /app/components/Ui/NumberField/Input.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/Avatar/Image.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 25 | -------------------------------------------------------------------------------- /app/plugins/datatables.client.ts: -------------------------------------------------------------------------------- 1 | import DataTablesCore from "datatables.net"; 2 | import DataTable from "datatables.net-vue3"; 3 | import JSZip from "jszip"; 4 | 5 | import "datatables.net-buttons"; 6 | import "datatables.net-buttons-dt"; 7 | import "datatables.net-buttons/js/buttons.colVis.mjs"; 8 | import "datatables.net-buttons/js/buttons.html5.mjs"; 9 | import "datatables.net-buttons/js/buttons.print.mjs"; 10 | import "datatables.net-responsive-dt"; 11 | import "datatables.net-searchbuilder-dt"; 12 | import "datatables.net-select-dt"; 13 | 14 | // @ts-expect-error - We are not creating a declaration file for this library 15 | window.JSZip = JSZip; 16 | 17 | DataTable.use(DataTablesCore); 18 | 19 | export default defineNuxtPlugin((nuxtApp) => { 20 | nuxtApp.vueApp.component("DataTable", DataTable); 21 | }); 22 | -------------------------------------------------------------------------------- /app/components/Ui/Command/Label.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 28 | -------------------------------------------------------------------------------- /app/components/Ui/DropdownMenu/Label.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 26 | -------------------------------------------------------------------------------- /app/components/Ui/List/Subtitle.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 29 | -------------------------------------------------------------------------------- /app/components/Ui/PinInput/PinInputInput.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 19 | -------------------------------------------------------------------------------- /app/components/Ui/Select/ItemIndicator.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 26 | -------------------------------------------------------------------------------- /app/components/Ui/AlertDialog/Description.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 26 | -------------------------------------------------------------------------------- /app/components/Ui/Avatar/Fallback.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 26 | -------------------------------------------------------------------------------- /app/components/Ui/Command/Group.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/ItemIndicator.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 26 | -------------------------------------------------------------------------------- /app/components/Ui/Alert/Title.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 29 | -------------------------------------------------------------------------------- /app/components/Ui/Sidebar/Inset.vue: -------------------------------------------------------------------------------- 1 | 6 | 13 | 21 | -------------------------------------------------------------------------------- /app/components/Ui/Slider/Thumb.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/Command/List.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/RadioGroup/Indicator.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 26 | -------------------------------------------------------------------------------- /app/components/Ui/Select/Icon.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/TagsInput/Item.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/DropdownMenu/ItemIndicator.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Alert/Description.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 29 | -------------------------------------------------------------------------------- /app/components/Ui/RadioGroup/RadioGroup.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 29 | -------------------------------------------------------------------------------- /app/components/Ui/Drawer/Footer.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 23 | 24 | 30 | -------------------------------------------------------------------------------- /app/components/Ui/Drawer/Header.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 23 | 29 | -------------------------------------------------------------------------------- /app/components/Ui/Tabs/List.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 32 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/Menubar.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 30 | -------------------------------------------------------------------------------- /app/components/Ui/TagsInput/ItemDelete.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 24 | -------------------------------------------------------------------------------- /app/components/Ui/Select/Viewport.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 30 | -------------------------------------------------------------------------------- /app/components/Ui/Tooltip/Tooltip.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | 25 | -------------------------------------------------------------------------------- /app/components/Ui/Accordion/Content.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 28 | -------------------------------------------------------------------------------- /app/components/Ui/Label.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | 30 | -------------------------------------------------------------------------------- /app/components/Ui/Progress/Progress.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Skeleton.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 34 | -------------------------------------------------------------------------------- /app/components/Ui/NumberField/Decrement.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 29 | -------------------------------------------------------------------------------- /app/components/Ui/NumberField/Increment.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 29 | -------------------------------------------------------------------------------- /app/components/Ui/NavigationMenu/NavigationMenu.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 27 | -------------------------------------------------------------------------------- /app/components/Ui/Menubar/Trigger.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | -------------------------------------------------------------------------------- /app/components/Ui/Toast/Viewport.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 24 | 25 | 30 | -------------------------------------------------------------------------------- /app/components/Ui/NavigationMenu/Indicator.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 23 | -------------------------------------------------------------------------------- /app/components/Ui/ScrollArea/Thumb.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 34 | -------------------------------------------------------------------------------- /app/components/Ui/TagsInput/TagsInput.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 19 | -------------------------------------------------------------------------------- /app/components/Ui/RadioGroup/Item.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 26 | -------------------------------------------------------------------------------- /app/components/Ui/ContextMenu/Label.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 29 | -------------------------------------------------------------------------------- /app/components/Ui/ToggleGroup/ToggleGroup.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 34 | -------------------------------------------------------------------------------- /app/components/Ui/Form/Label.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | 32 | -------------------------------------------------------------------------------- /app/components/Ui/Tabs/Indicator.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 28 | -------------------------------------------------------------------------------- /app/components/Ui/Splitter/Panel.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 31 | -------------------------------------------------------------------------------- /app/components/Ui/ScrollArea/ScrollArea.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 33 | -------------------------------------------------------------------------------- /app/components/Ui/Navbar.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 37 | -------------------------------------------------------------------------------- /app/components/Ui/Textarea.vue: -------------------------------------------------------------------------------- 1 |