commit 3db50d9637d74fa54095d921cd1f052df21fcaa8 Author: Ruslan Bakiev Date: Wed Jan 7 09:10:35 2026 +0700 Initial commit from monorepo diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4a7f73a --- /dev/null +++ b/.gitignore @@ -0,0 +1,24 @@ +# Nuxt dev/build outputs +.output +.data +.nuxt +.nitro +.cache +dist + +# Node dependencies +node_modules + +# Logs +logs +*.log + +# Misc +.DS_Store +.fleet +.idea + +# Local env files +.env +.env.* +!.env.example diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..8fdd954 --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +22 \ No newline at end of file diff --git a/.storybook/main.ts b/.storybook/main.ts new file mode 100644 index 0000000..cca485b --- /dev/null +++ b/.storybook/main.ts @@ -0,0 +1,46 @@ +import path from 'node:path' +import type { StorybookConfig } from '@storybook/vue3-vite' +import vue from '@vitejs/plugin-vue' + +const config: StorybookConfig = { + stories: ['../app/components/**/*.stories.@(js|ts)'], + addons: ['@storybook/addon-essentials', '@storybook/addon-interactions'], + framework: { + name: '@storybook/vue3-vite', + options: {} + }, + core: { + disableTelemetry: true + }, + docs: { + autodocs: false + }, + viteFinal: async (baseConfig) => { + const projectRoot = path.resolve(__dirname, '..') + baseConfig.resolve = baseConfig.resolve || {} + baseConfig.resolve.alias = { + ...baseConfig.resolve.alias, + '~': path.resolve(__dirname, '../app'), + '@': path.resolve(__dirname, '../app'), + '@graphql-typed-document-node/core': path.resolve(__dirname, './shims/graphql-typed-document-node-core.ts') + } + baseConfig.plugins = baseConfig.plugins || [] + baseConfig.plugins.push(vue()) + baseConfig.root = projectRoot + baseConfig.server = { + ...(baseConfig.server || {}), + fs: { + ...(baseConfig.server?.fs || {}), + allow: Array.from( + new Set([ + ...(baseConfig.server?.fs?.allow || []), + projectRoot + ]) + ) + } + } + return baseConfig + } +} + +export default config diff --git a/.storybook/preview.ts b/.storybook/preview.ts new file mode 100644 index 0000000..2dd4ec9 --- /dev/null +++ b/.storybook/preview.ts @@ -0,0 +1,23 @@ +import type { Preview } from '@storybook/vue3' +import { setup } from '@storybook/vue3' + +import '../app/assets/css/tailwind.css' + +setup((app) => { + app.config.globalProperties.$t = (key: string) => key + app.config.globalProperties.$d = (value: any) => value +}) + +const preview: Preview = { + parameters: { + actions: { argTypesRegex: '^on[A-Z].*' }, + controls: { + matchers: { + color: /(background|color)$/i, + date: /Date$/ + } + } + } +} + +export default preview diff --git a/.storybook/shims/graphql-typed-document-node-core.ts b/.storybook/shims/graphql-typed-document-node-core.ts new file mode 100644 index 0000000..90030ff --- /dev/null +++ b/.storybook/shims/graphql-typed-document-node-core.ts @@ -0,0 +1,10 @@ +// Minimal runtime shim so Vite/Storybook can resolve generated GraphQL imports. +import type { DocumentNode } from 'graphql' + +export type TypedDocumentNode> = DocumentNode & { + __resultType?: TResult + __variablesType?: TVariables +} + +// Runtime placeholder; generated files import the symbol but do not use the value. +export const TypedDocumentNode = {} as unknown as TypedDocumentNode diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..6444f5c --- /dev/null +++ b/Dockerfile @@ -0,0 +1,44 @@ +FROM node:22-slim AS build + +ENV PNPM_HOME=/pnpm +ENV PATH=$PNPM_HOME:$PATH + +WORKDIR /app + +RUN corepack enable + +ARG INFISICAL_API_URL +ARG INFISICAL_CLIENT_ID +ARG INFISICAL_CLIENT_SECRET +ARG INFISICAL_PROJECT_ID +ARG INFISICAL_ENV + +ENV INFISICAL_API_URL=$INFISICAL_API_URL \ + INFISICAL_CLIENT_ID=$INFISICAL_CLIENT_ID \ + INFISICAL_CLIENT_SECRET=$INFISICAL_CLIENT_SECRET \ + INFISICAL_PROJECT_ID=$INFISICAL_PROJECT_ID \ + INFISICAL_ENV=$INFISICAL_ENV + +COPY package.json pnpm-lock.yaml ./ +RUN pnpm install --frozen-lockfile + +COPY . . +RUN node scripts/load-secrets.mjs && . ./.env.infisical && pnpm run build + +FROM node:22-slim + +WORKDIR /app + +ENV NODE_ENV=production +ENV PORT=3000 +ENV HOST=0.0.0.0 + +COPY --from=build /app/.output ./.output +COPY --from=build /app/public ./public +COPY --from=build /app/scripts ./scripts +COPY --from=build /app/node_modules ./node_modules +COPY --from=build /app/package.json ./package.json + +EXPOSE 3000 + +CMD ["sh", "-c", "node scripts/load-secrets.mjs && . ./.env.infisical && node --import ./.output/server/sentry.server.config.mjs .output/server/index.mjs"] diff --git a/README.md b/README.md new file mode 100644 index 0000000..25b5821 --- /dev/null +++ b/README.md @@ -0,0 +1,75 @@ +# Nuxt Minimal Starter + +Look at the [Nuxt documentation](https://nuxt.com/docs/getting-started/introduction) to learn more. + +## Setup + +Make sure to install dependencies: + +```bash +# npm +npm install + +# pnpm +pnpm install + +# yarn +yarn install + +# bun +bun install +``` + +## Development Server + +Start the development server on `http://localhost:3000`: + +```bash +# npm +npm run dev + +# pnpm +pnpm dev + +# yarn +yarn dev + +# bun +bun run dev +``` + +## Production + +Build the application for production: + +```bash +# npm +npm run build + +# pnpm +pnpm build + +# yarn +yarn build + +# bun +bun run build +``` + +Locally preview production build: + +```bash +# npm +npm run preview + +# pnpm +pnpm preview + +# yarn +yarn preview + +# bun +bun run preview +``` + +Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information. diff --git a/app/app.vue b/app/app.vue new file mode 100644 index 0000000..07891fb --- /dev/null +++ b/app/app.vue @@ -0,0 +1,14 @@ + + + diff --git a/app/assets/css/tailwind.css b/app/assets/css/tailwind.css new file mode 100644 index 0000000..d5c9f64 --- /dev/null +++ b/app/assets/css/tailwind.css @@ -0,0 +1,72 @@ +@import "tailwindcss"; +@plugin "daisyui"; + +@plugin "daisyui/theme" { + name: "silk"; + default: true; + prefersdark: false; + color-scheme: "light"; + --color-base-100: oklch(97% 0.0035 67.78); + --color-base-200: oklch(95% 0.0081 61.42); + --color-base-300: oklch(90% 0.0081 61.42); + --color-base-content: oklch(40% 0.0081 61.42); + --color-primary: oklch(23.27% 0.0249 284.3); + --color-primary-content: oklch(94.22% 0.2505 117.44); + --color-secondary: oklch(23.27% 0.0249 284.3); + --color-secondary-content: oklch(73.92% 0.2135 50.94); + --color-accent: oklch(23.27% 0.0249 284.3); + --color-accent-content: oklch(88.92% 0.2061 189.9); + --color-neutral: oklch(20% 0 0); + --color-neutral-content: oklch(80% 0.0081 61.42); + --color-info: oklch(80.39% 0.1148 241.68); + --color-info-content: oklch(30.39% 0.1148 241.68); + --color-success: oklch(83.92% 0.0901 136.87); + --color-success-content: oklch(23.92% 0.0901 136.87); + --color-warning: oklch(83.92% 0.1085 80); + --color-warning-content: oklch(43.92% 0.1085 80); + --color-error: oklch(75.1% 0.1814 22.37); + --color-error-content: oklch(35.1% 0.1814 22.37); + --radius-selector: 2rem; + --radius-field: 1rem; + --radius-box: 1rem; + --size-selector: 0.28125rem; + --size-field: 0.28125rem; + --border: 0.5px; + --depth: 0; + --noise: 0; +} + +@plugin "daisyui/theme" { + name: "night"; + default: false; + prefersdark: true; + color-scheme: "dark"; + --color-base-100: oklch(20.768% 0.039 265.754); + --color-base-200: oklch(19.314% 0.037 265.754); + --color-base-300: oklch(17.86% 0.034 265.754); + --color-base-content: oklch(84.153% 0.007 265.754); + --color-primary: oklch(75.351% 0.138 232.661); + --color-primary-content: oklch(15.07% 0.027 232.661); + --color-secondary: oklch(68.011% 0.158 276.934); + --color-secondary-content: oklch(13.602% 0.031 276.934); + --color-accent: oklch(72.36% 0.176 350.048); + --color-accent-content: oklch(14.472% 0.035 350.048); + --color-neutral: oklch(27.949% 0.036 260.03); + --color-neutral-content: oklch(85.589% 0.007 260.03); + --color-info: oklch(68.455% 0.148 237.251); + --color-info-content: oklch(0% 0 0); + --color-success: oklch(78.452% 0.132 181.911); + --color-success-content: oklch(15.69% 0.026 181.911); + --color-warning: oklch(83.242% 0.139 82.95); + --color-warning-content: oklch(16.648% 0.027 82.95); + --color-error: oklch(71.785% 0.17 13.118); + --color-error-content: oklch(14.357% 0.034 13.118); + --radius-selector: 1rem; + --radius-field: 1rem; + --radius-box: 1rem; + --size-selector: 0.25rem; + --size-field: 0.25rem; + --border: 0.5px; + --depth: 0; + --noise: 0; +} diff --git a/app/components/BankSearchRussia.stories.ts b/app/components/BankSearchRussia.stories.ts new file mode 100644 index 0000000..af669de --- /dev/null +++ b/app/components/BankSearchRussia.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './BankSearchRussia.vue' + +const meta: Meta = { + title: 'BankSearchRussia', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/BankSearchRussia.vue b/app/components/BankSearchRussia.vue new file mode 100644 index 0000000..13349c4 --- /dev/null +++ b/app/components/BankSearchRussia.vue @@ -0,0 +1,130 @@ + + + diff --git a/app/components/CabinetBreadcrumbs.vue b/app/components/CabinetBreadcrumbs.vue new file mode 100644 index 0000000..ed7addc --- /dev/null +++ b/app/components/CabinetBreadcrumbs.vue @@ -0,0 +1,63 @@ + + + diff --git a/app/components/CalcResultContent.stories.ts b/app/components/CalcResultContent.stories.ts new file mode 100644 index 0000000..dc94921 --- /dev/null +++ b/app/components/CalcResultContent.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './CalcResultContent.vue' + +const meta: Meta = { + title: 'CalcResultContent', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/CalcResultContent.vue b/app/components/CalcResultContent.vue new file mode 100644 index 0000000..badc316 --- /dev/null +++ b/app/components/CalcResultContent.vue @@ -0,0 +1,248 @@ + + + diff --git a/app/components/CompanyCard.stories.ts b/app/components/CompanyCard.stories.ts new file mode 100644 index 0000000..276f991 --- /dev/null +++ b/app/components/CompanyCard.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './CompanyCard.vue' + +const meta: Meta = { + title: 'CompanyCard', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/CompanyCard.vue b/app/components/CompanyCard.vue new file mode 100644 index 0000000..a548562 --- /dev/null +++ b/app/components/CompanyCard.vue @@ -0,0 +1,138 @@ + + + diff --git a/app/components/CompanySearchRussia.stories.ts b/app/components/CompanySearchRussia.stories.ts new file mode 100644 index 0000000..1bc64f2 --- /dev/null +++ b/app/components/CompanySearchRussia.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './CompanySearchRussia.vue' + +const meta: Meta = { + title: 'CompanySearchRussia', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/CompanySearchRussia.vue b/app/components/CompanySearchRussia.vue new file mode 100644 index 0000000..6b6b71b --- /dev/null +++ b/app/components/CompanySearchRussia.vue @@ -0,0 +1,137 @@ + + + diff --git a/app/components/EmptyState.vue b/app/components/EmptyState.vue new file mode 100644 index 0000000..182c7fe --- /dev/null +++ b/app/components/EmptyState.vue @@ -0,0 +1,32 @@ + + + diff --git a/app/components/FooterPublic.stories.ts b/app/components/FooterPublic.stories.ts new file mode 100644 index 0000000..8830c3b --- /dev/null +++ b/app/components/FooterPublic.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './FooterPublic.vue' + +const meta: Meta = { + title: 'FooterPublic', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/FooterPublic.vue b/app/components/FooterPublic.vue new file mode 100644 index 0000000..601a1f3 --- /dev/null +++ b/app/components/FooterPublic.vue @@ -0,0 +1,9 @@ + diff --git a/app/components/GanttTimeline.stories.ts b/app/components/GanttTimeline.stories.ts new file mode 100644 index 0000000..7fc3726 --- /dev/null +++ b/app/components/GanttTimeline.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './GanttTimeline.vue' + +const meta: Meta = { + title: 'GanttTimeline', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/GanttTimeline.vue b/app/components/GanttTimeline.vue new file mode 100644 index 0000000..e7cc5e3 --- /dev/null +++ b/app/components/GanttTimeline.vue @@ -0,0 +1,272 @@ + + + diff --git a/app/components/GoodsContent.stories.ts b/app/components/GoodsContent.stories.ts new file mode 100644 index 0000000..256e704 --- /dev/null +++ b/app/components/GoodsContent.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './GoodsContent.vue' + +const meta: Meta = { + title: 'GoodsContent', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/GoodsContent.vue b/app/components/GoodsContent.vue new file mode 100644 index 0000000..244e25b --- /dev/null +++ b/app/components/GoodsContent.vue @@ -0,0 +1,64 @@ + + + diff --git a/app/components/KYCFormRussia.stories.ts b/app/components/KYCFormRussia.stories.ts new file mode 100644 index 0000000..b574106 --- /dev/null +++ b/app/components/KYCFormRussia.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './KYCFormRussia.vue' + +const meta: Meta = { + title: 'KYCFormRussia', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/KYCFormRussia.vue b/app/components/KYCFormRussia.vue new file mode 100644 index 0000000..1ccdaa8 --- /dev/null +++ b/app/components/KYCFormRussia.vue @@ -0,0 +1,242 @@ + + + diff --git a/app/components/LangSwitcher.stories.ts b/app/components/LangSwitcher.stories.ts new file mode 100644 index 0000000..4036f2b --- /dev/null +++ b/app/components/LangSwitcher.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './LangSwitcher.vue' + +const meta: Meta = { + title: 'LangSwitcher', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/LangSwitcher.vue b/app/components/LangSwitcher.vue new file mode 100644 index 0000000..c370870 --- /dev/null +++ b/app/components/LangSwitcher.vue @@ -0,0 +1,41 @@ + + + diff --git a/app/components/LocationsContent.stories.ts b/app/components/LocationsContent.stories.ts new file mode 100644 index 0000000..c606ca2 --- /dev/null +++ b/app/components/LocationsContent.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './LocationsContent.vue' + +const meta: Meta = { + title: 'LocationsContent', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/LocationsContent.vue b/app/components/LocationsContent.vue new file mode 100644 index 0000000..2709a43 --- /dev/null +++ b/app/components/LocationsContent.vue @@ -0,0 +1,120 @@ + + + diff --git a/app/components/MapSidebar.vue b/app/components/MapSidebar.vue new file mode 100644 index 0000000..2b1acd8 --- /dev/null +++ b/app/components/MapSidebar.vue @@ -0,0 +1,117 @@ + + + diff --git a/app/components/MapboxGlobe.client.stories.ts b/app/components/MapboxGlobe.client.stories.ts new file mode 100644 index 0000000..463d689 --- /dev/null +++ b/app/components/MapboxGlobe.client.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './MapboxGlobe.client.vue' + +const meta: Meta = { + title: 'MapboxGlobe.client', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/MapboxGlobe.client.vue b/app/components/MapboxGlobe.client.vue new file mode 100644 index 0000000..abd4ddb --- /dev/null +++ b/app/components/MapboxGlobe.client.vue @@ -0,0 +1,390 @@ + + + diff --git a/app/components/NearbyConnectionsSection.vue b/app/components/NearbyConnectionsSection.vue new file mode 100644 index 0000000..d564221 --- /dev/null +++ b/app/components/NearbyConnectionsSection.vue @@ -0,0 +1,442 @@ + + + diff --git a/app/components/NearbyHubsSection.vue b/app/components/NearbyHubsSection.vue new file mode 100644 index 0000000..539ac63 --- /dev/null +++ b/app/components/NearbyHubsSection.vue @@ -0,0 +1,374 @@ + + + diff --git a/app/components/NovuNotificationBell.client.stories.ts b/app/components/NovuNotificationBell.client.stories.ts new file mode 100644 index 0000000..74cd986 --- /dev/null +++ b/app/components/NovuNotificationBell.client.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './NovuNotificationBell.client.vue' + +const meta: Meta = { + title: 'NovuNotificationBell.client', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/NovuNotificationBell.client.vue b/app/components/NovuNotificationBell.client.vue new file mode 100644 index 0000000..cb0fef2 --- /dev/null +++ b/app/components/NovuNotificationBell.client.vue @@ -0,0 +1,202 @@ + + + diff --git a/app/components/OrderCalendar.stories.ts b/app/components/OrderCalendar.stories.ts new file mode 100644 index 0000000..00368bc --- /dev/null +++ b/app/components/OrderCalendar.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './OrderCalendar.vue' + +const meta: Meta = { + title: 'OrderCalendar', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/OrderCalendar.vue b/app/components/OrderCalendar.vue new file mode 100644 index 0000000..f1469ea --- /dev/null +++ b/app/components/OrderCalendar.vue @@ -0,0 +1,244 @@ + + + diff --git a/app/components/OrderMap.stories.ts b/app/components/OrderMap.stories.ts new file mode 100644 index 0000000..1423fd9 --- /dev/null +++ b/app/components/OrderMap.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './OrderMap.vue' + +const meta: Meta = { + title: 'OrderMap', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/OrderMap.vue b/app/components/OrderMap.vue new file mode 100644 index 0000000..254e413 --- /dev/null +++ b/app/components/OrderMap.vue @@ -0,0 +1,147 @@ + + + diff --git a/app/components/OrderTimeline.stories.ts b/app/components/OrderTimeline.stories.ts new file mode 100644 index 0000000..94c6d6c --- /dev/null +++ b/app/components/OrderTimeline.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './OrderTimeline.vue' + +const meta: Meta = { + title: 'OrderTimeline', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/OrderTimeline.vue b/app/components/OrderTimeline.vue new file mode 100644 index 0000000..10f320f --- /dev/null +++ b/app/components/OrderTimeline.vue @@ -0,0 +1,184 @@ + + + diff --git a/app/components/OrdersRoutesMap.client.vue b/app/components/OrdersRoutesMap.client.vue new file mode 100644 index 0000000..4571429 --- /dev/null +++ b/app/components/OrdersRoutesMap.client.vue @@ -0,0 +1,417 @@ + + + diff --git a/app/components/OrdersRoutesPreview.client.vue b/app/components/OrdersRoutesPreview.client.vue new file mode 100644 index 0000000..3f68d87 --- /dev/null +++ b/app/components/OrdersRoutesPreview.client.vue @@ -0,0 +1,234 @@ + + + diff --git a/app/components/PaginationLoadMore.vue b/app/components/PaginationLoadMore.vue new file mode 100644 index 0000000..f1ffa24 --- /dev/null +++ b/app/components/PaginationLoadMore.vue @@ -0,0 +1,30 @@ + + + diff --git a/app/components/RequestRoutesMap.vue b/app/components/RequestRoutesMap.vue new file mode 100644 index 0000000..8133a91 --- /dev/null +++ b/app/components/RequestRoutesMap.vue @@ -0,0 +1,401 @@ + + + diff --git a/app/components/RouteMap.stories.ts b/app/components/RouteMap.stories.ts new file mode 100644 index 0000000..b4efbcb --- /dev/null +++ b/app/components/RouteMap.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './RouteMap.vue' + +const meta: Meta = { + title: 'RouteMap', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/RouteMap.vue b/app/components/RouteMap.vue new file mode 100644 index 0000000..f994b37 --- /dev/null +++ b/app/components/RouteMap.vue @@ -0,0 +1,281 @@ + + + diff --git a/app/components/RouteMapPanel.vue b/app/components/RouteMapPanel.vue new file mode 100644 index 0000000..04d6650 --- /dev/null +++ b/app/components/RouteMapPanel.vue @@ -0,0 +1,39 @@ + + + diff --git a/app/components/RouteStagesList.vue b/app/components/RouteStagesList.vue new file mode 100644 index 0000000..2f151e3 --- /dev/null +++ b/app/components/RouteStagesList.vue @@ -0,0 +1,59 @@ + + + diff --git a/app/components/RouteSummaryHeader.vue b/app/components/RouteSummaryHeader.vue new file mode 100644 index 0000000..5033d0e --- /dev/null +++ b/app/components/RouteSummaryHeader.vue @@ -0,0 +1,16 @@ + + + diff --git a/app/components/Sidebar.vue b/app/components/Sidebar.vue new file mode 100644 index 0000000..5990a07 --- /dev/null +++ b/app/components/Sidebar.vue @@ -0,0 +1,395 @@ + + + diff --git a/app/components/TeamCard.stories.ts b/app/components/TeamCard.stories.ts new file mode 100644 index 0000000..57a2fa8 --- /dev/null +++ b/app/components/TeamCard.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './TeamCard.vue' + +const meta: Meta = { + title: 'TeamCard', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/TeamCard.vue b/app/components/TeamCard.vue new file mode 100644 index 0000000..55cee85 --- /dev/null +++ b/app/components/TeamCard.vue @@ -0,0 +1,65 @@ + + + diff --git a/app/components/TeamCreateForm.stories.ts b/app/components/TeamCreateForm.stories.ts new file mode 100644 index 0000000..c64b510 --- /dev/null +++ b/app/components/TeamCreateForm.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './TeamCreateForm.vue' + +const meta: Meta = { + title: 'TeamCreateForm', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/TeamCreateForm.vue b/app/components/TeamCreateForm.vue new file mode 100644 index 0000000..17b3bd1 --- /dev/null +++ b/app/components/TeamCreateForm.vue @@ -0,0 +1,104 @@ + + + diff --git a/app/components/TimelineStages.stories.ts b/app/components/TimelineStages.stories.ts new file mode 100644 index 0000000..7ccfd04 --- /dev/null +++ b/app/components/TimelineStages.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './TimelineStages.vue' + +const meta: Meta = { + title: 'TimelineStages', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/TimelineStages.vue b/app/components/TimelineStages.vue new file mode 100644 index 0000000..9ee6674 --- /dev/null +++ b/app/components/TimelineStages.vue @@ -0,0 +1,129 @@ + + + diff --git a/app/components/TopBar.vue b/app/components/TopBar.vue new file mode 100644 index 0000000..2da5ac7 --- /dev/null +++ b/app/components/TopBar.vue @@ -0,0 +1,182 @@ + + + diff --git a/app/components/TripBadge.stories.ts b/app/components/TripBadge.stories.ts new file mode 100644 index 0000000..5bdc8d0 --- /dev/null +++ b/app/components/TripBadge.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './TripBadge.vue' + +const meta: Meta = { + title: 'TripBadge', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/TripBadge.vue b/app/components/TripBadge.vue new file mode 100644 index 0000000..d620ba8 --- /dev/null +++ b/app/components/TripBadge.vue @@ -0,0 +1,129 @@ + + + diff --git a/app/components/UserAvatar.stories.ts b/app/components/UserAvatar.stories.ts new file mode 100644 index 0000000..48b38da --- /dev/null +++ b/app/components/UserAvatar.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './UserAvatar.vue' + +const meta: Meta = { + title: 'UserAvatar', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/UserAvatar.vue b/app/components/UserAvatar.vue new file mode 100644 index 0000000..bfe1600 --- /dev/null +++ b/app/components/UserAvatar.vue @@ -0,0 +1,123 @@ + + + diff --git a/app/components/catalog/AddressCard.vue b/app/components/catalog/AddressCard.vue new file mode 100644 index 0000000..ba726ec --- /dev/null +++ b/app/components/catalog/AddressCard.vue @@ -0,0 +1,52 @@ + + + diff --git a/app/components/catalog/CatalogFilters.vue b/app/components/catalog/CatalogFilters.vue new file mode 100644 index 0000000..3cc6772 --- /dev/null +++ b/app/components/catalog/CatalogFilters.vue @@ -0,0 +1,29 @@ + + + diff --git a/app/components/catalog/CatalogHubsSection.vue b/app/components/catalog/CatalogHubsSection.vue new file mode 100644 index 0000000..76cb76f --- /dev/null +++ b/app/components/catalog/CatalogHubsSection.vue @@ -0,0 +1,80 @@ + + + diff --git a/app/components/catalog/CatalogMap.vue b/app/components/catalog/CatalogMap.vue new file mode 100644 index 0000000..548be35 --- /dev/null +++ b/app/components/catalog/CatalogMap.vue @@ -0,0 +1,192 @@ + + + diff --git a/app/components/catalog/CatalogMapPanel.vue b/app/components/catalog/CatalogMapPanel.vue new file mode 100644 index 0000000..8b227c1 --- /dev/null +++ b/app/components/catalog/CatalogMapPanel.vue @@ -0,0 +1,155 @@ + + + diff --git a/app/components/catalog/CatalogMapSidebar.vue b/app/components/catalog/CatalogMapSidebar.vue new file mode 100644 index 0000000..50e6871 --- /dev/null +++ b/app/components/catalog/CatalogMapSidebar.vue @@ -0,0 +1,59 @@ + + + diff --git a/app/components/catalog/CatalogOffersSection.vue b/app/components/catalog/CatalogOffersSection.vue new file mode 100644 index 0000000..4b43f22 --- /dev/null +++ b/app/components/catalog/CatalogOffersSection.vue @@ -0,0 +1,69 @@ + + + diff --git a/app/components/catalog/CatalogSuppliersSection.vue b/app/components/catalog/CatalogSuppliersSection.vue new file mode 100644 index 0000000..c8c012c --- /dev/null +++ b/app/components/catalog/CatalogSuppliersSection.vue @@ -0,0 +1,63 @@ + + + diff --git a/app/components/catalog/HubCard.vue b/app/components/catalog/HubCard.vue new file mode 100644 index 0000000..05886be --- /dev/null +++ b/app/components/catalog/HubCard.vue @@ -0,0 +1,70 @@ + + + diff --git a/app/components/catalog/MapHero.vue b/app/components/catalog/MapHero.vue new file mode 100644 index 0000000..9d3aa4c --- /dev/null +++ b/app/components/catalog/MapHero.vue @@ -0,0 +1,114 @@ + + + diff --git a/app/components/catalog/OfferCard.vue b/app/components/catalog/OfferCard.vue new file mode 100644 index 0000000..dc650f8 --- /dev/null +++ b/app/components/catalog/OfferCard.vue @@ -0,0 +1,118 @@ + + + diff --git a/app/components/catalog/ProductCard.vue b/app/components/catalog/ProductCard.vue new file mode 100644 index 0000000..19b9ec0 --- /dev/null +++ b/app/components/catalog/ProductCard.vue @@ -0,0 +1,52 @@ + + + diff --git a/app/components/catalog/SupplierCard.vue b/app/components/catalog/SupplierCard.vue new file mode 100644 index 0000000..723b8be --- /dev/null +++ b/app/components/catalog/SupplierCard.vue @@ -0,0 +1,95 @@ + + + diff --git a/app/components/ui/Alert.stories.ts b/app/components/ui/Alert.stories.ts new file mode 100644 index 0000000..4f86067 --- /dev/null +++ b/app/components/ui/Alert.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Alert.vue' + +const meta: Meta = { + title: 'Ui/Alert', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Alert.vue b/app/components/ui/Alert.vue new file mode 100644 index 0000000..128d3b9 --- /dev/null +++ b/app/components/ui/Alert.vue @@ -0,0 +1,23 @@ + + + diff --git a/app/components/ui/Badge.vue b/app/components/ui/Badge.vue new file mode 100644 index 0000000..3f1fb79 --- /dev/null +++ b/app/components/ui/Badge.vue @@ -0,0 +1,40 @@ + + + diff --git a/app/components/ui/Button.stories.ts b/app/components/ui/Button.stories.ts new file mode 100644 index 0000000..dd7bfed --- /dev/null +++ b/app/components/ui/Button.stories.ts @@ -0,0 +1,46 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import Button from './Button.vue' + +const meta: Meta = { + title: 'UI/Button', + component: Button, + render: (args) => ({ + components: { Button }, + setup() { + return { args } + }, + template: '' + }), + argTypes: { + variant: { + control: { type: 'select' }, + options: ['primary', 'outline'] + } + }, + tags: ['autodocs'] +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: { + label: 'Primary button', + variant: 'primary' + } +} + +export const Outline: Story = { + args: { + label: 'Outline button', + variant: 'outline' + } +} + +export const FullWidth: Story = { + args: { + label: 'Full width', + variant: 'primary', + fullWidth: true + } +} diff --git a/app/components/ui/Button.vue b/app/components/ui/Button.vue new file mode 100644 index 0000000..869d6d4 --- /dev/null +++ b/app/components/ui/Button.vue @@ -0,0 +1,45 @@ + + + diff --git a/app/components/ui/Card.stories.ts b/app/components/ui/Card.stories.ts new file mode 100644 index 0000000..fe39624 --- /dev/null +++ b/app/components/ui/Card.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Card.vue' + +const meta: Meta = { + title: 'Ui/Card', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Card.vue b/app/components/ui/Card.vue new file mode 100644 index 0000000..ea0cbe1 --- /dev/null +++ b/app/components/ui/Card.vue @@ -0,0 +1,42 @@ + + + diff --git a/app/components/ui/Container.stories.ts b/app/components/ui/Container.stories.ts new file mode 100644 index 0000000..70cd031 --- /dev/null +++ b/app/components/ui/Container.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Container.vue' + +const meta: Meta = { + title: 'Ui/Container', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Container.vue b/app/components/ui/Container.vue new file mode 100644 index 0000000..111ed05 --- /dev/null +++ b/app/components/ui/Container.vue @@ -0,0 +1,29 @@ + + + diff --git a/app/components/ui/EmptyState.vue b/app/components/ui/EmptyState.vue new file mode 100644 index 0000000..58cbd0d --- /dev/null +++ b/app/components/ui/EmptyState.vue @@ -0,0 +1,50 @@ + + + diff --git a/app/components/ui/FieldButton.stories.ts b/app/components/ui/FieldButton.stories.ts new file mode 100644 index 0000000..9156f91 --- /dev/null +++ b/app/components/ui/FieldButton.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './FieldButton.vue' + +const meta: Meta = { + title: 'Ui/FieldButton', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/FieldButton.vue b/app/components/ui/FieldButton.vue new file mode 100644 index 0000000..ddfc572 --- /dev/null +++ b/app/components/ui/FieldButton.vue @@ -0,0 +1,31 @@ + + + diff --git a/app/components/ui/Grid.stories.ts b/app/components/ui/Grid.stories.ts new file mode 100644 index 0000000..10ac5cc --- /dev/null +++ b/app/components/ui/Grid.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Grid.vue' + +const meta: Meta = { + title: 'Ui/Grid', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Grid.vue b/app/components/ui/Grid.vue new file mode 100644 index 0000000..d1a3173 --- /dev/null +++ b/app/components/ui/Grid.vue @@ -0,0 +1,52 @@ + + + diff --git a/app/components/ui/GridItem.stories.ts b/app/components/ui/GridItem.stories.ts new file mode 100644 index 0000000..eb5e383 --- /dev/null +++ b/app/components/ui/GridItem.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './GridItem.vue' + +const meta: Meta = { + title: 'Ui/GridItem', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/GridItem.vue b/app/components/ui/GridItem.vue new file mode 100644 index 0000000..2206b69 --- /dev/null +++ b/app/components/ui/GridItem.vue @@ -0,0 +1,32 @@ + + + diff --git a/app/components/ui/Heading.stories.ts b/app/components/ui/Heading.stories.ts new file mode 100644 index 0000000..22ae46b --- /dev/null +++ b/app/components/ui/Heading.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Heading.vue' + +const meta: Meta = { + title: 'Ui/Heading', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Heading.vue b/app/components/ui/Heading.vue new file mode 100644 index 0000000..2af1f9d --- /dev/null +++ b/app/components/ui/Heading.vue @@ -0,0 +1,45 @@ + + + diff --git a/app/components/ui/IconCircle.stories.ts b/app/components/ui/IconCircle.stories.ts new file mode 100644 index 0000000..263fba9 --- /dev/null +++ b/app/components/ui/IconCircle.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './IconCircle.vue' + +const meta: Meta = { + title: 'Ui/IconCircle', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/IconCircle.vue b/app/components/ui/IconCircle.vue new file mode 100644 index 0000000..f83c7d4 --- /dev/null +++ b/app/components/ui/IconCircle.vue @@ -0,0 +1,34 @@ + + + diff --git a/app/components/ui/Input.stories.ts b/app/components/ui/Input.stories.ts new file mode 100644 index 0000000..3a292d2 --- /dev/null +++ b/app/components/ui/Input.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Input.vue' + +const meta: Meta = { + title: 'Ui/Input', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Input.vue b/app/components/ui/Input.vue new file mode 100644 index 0000000..7b693bc --- /dev/null +++ b/app/components/ui/Input.vue @@ -0,0 +1,36 @@ + + + diff --git a/app/components/ui/PageHeader.vue b/app/components/ui/PageHeader.vue new file mode 100644 index 0000000..19501fd --- /dev/null +++ b/app/components/ui/PageHeader.vue @@ -0,0 +1,36 @@ + + + diff --git a/app/components/ui/PageHeaderAction.vue b/app/components/ui/PageHeaderAction.vue new file mode 100644 index 0000000..1f8504d --- /dev/null +++ b/app/components/ui/PageHeaderAction.vue @@ -0,0 +1,24 @@ + + + diff --git a/app/components/ui/Pill.stories.ts b/app/components/ui/Pill.stories.ts new file mode 100644 index 0000000..1de37b1 --- /dev/null +++ b/app/components/ui/Pill.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Pill.vue' + +const meta: Meta = { + title: 'Ui/Pill', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Pill.vue b/app/components/ui/Pill.vue new file mode 100644 index 0000000..2690816 --- /dev/null +++ b/app/components/ui/Pill.vue @@ -0,0 +1,42 @@ + + + diff --git a/app/components/ui/Section.stories.ts b/app/components/ui/Section.stories.ts new file mode 100644 index 0000000..9176e5d --- /dev/null +++ b/app/components/ui/Section.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Section.vue' + +const meta: Meta = { + title: 'Ui/Section', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Section.vue b/app/components/ui/Section.vue new file mode 100644 index 0000000..5a9f066 --- /dev/null +++ b/app/components/ui/Section.vue @@ -0,0 +1,35 @@ + + + diff --git a/app/components/ui/SegmentedControl.vue b/app/components/ui/SegmentedControl.vue new file mode 100644 index 0000000..2cbb560 --- /dev/null +++ b/app/components/ui/SegmentedControl.vue @@ -0,0 +1,31 @@ + + + diff --git a/app/components/ui/Select.stories.ts b/app/components/ui/Select.stories.ts new file mode 100644 index 0000000..4790dbc --- /dev/null +++ b/app/components/ui/Select.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Select.vue' + +const meta: Meta = { + title: 'Ui/Select', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Select.vue b/app/components/ui/Select.vue new file mode 100644 index 0000000..ea6b5e7 --- /dev/null +++ b/app/components/ui/Select.vue @@ -0,0 +1,5 @@ + diff --git a/app/components/ui/Spinner.stories.ts b/app/components/ui/Spinner.stories.ts new file mode 100644 index 0000000..8bae206 --- /dev/null +++ b/app/components/ui/Spinner.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Spinner.vue' + +const meta: Meta = { + title: 'Ui/Spinner', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Spinner.vue b/app/components/ui/Spinner.vue new file mode 100644 index 0000000..120768c --- /dev/null +++ b/app/components/ui/Spinner.vue @@ -0,0 +1,23 @@ + + + diff --git a/app/components/ui/Stack.stories.ts b/app/components/ui/Stack.stories.ts new file mode 100644 index 0000000..d3f9bce --- /dev/null +++ b/app/components/ui/Stack.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Stack.vue' + +const meta: Meta = { + title: 'Ui/Stack', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Stack.vue b/app/components/ui/Stack.vue new file mode 100644 index 0000000..1adfc1f --- /dev/null +++ b/app/components/ui/Stack.vue @@ -0,0 +1,74 @@ + + + diff --git a/app/components/ui/Text.stories.ts b/app/components/ui/Text.stories.ts new file mode 100644 index 0000000..d2cbbce --- /dev/null +++ b/app/components/ui/Text.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Text.vue' + +const meta: Meta = { + title: 'Ui/Text', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Text.vue b/app/components/ui/Text.vue new file mode 100644 index 0000000..0fb9a5e --- /dev/null +++ b/app/components/ui/Text.vue @@ -0,0 +1,79 @@ + + + diff --git a/app/components/ui/Textarea.stories.ts b/app/components/ui/Textarea.stories.ts new file mode 100644 index 0000000..8ae8c22 --- /dev/null +++ b/app/components/ui/Textarea.stories.ts @@ -0,0 +1,21 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import StoryComponent from './Textarea.vue' + +const meta: Meta = { + title: 'Ui/Textarea', + component: StoryComponent, + render: (args) => ({ + components: { StoryComponent }, + setup() { + return { args } + }, + template: '' + }) +} + +export default meta +type Story = StoryObj + +export const Primary: Story = { + args: {} +} diff --git a/app/components/ui/Textarea.vue b/app/components/ui/Textarea.vue new file mode 100644 index 0000000..a8bc0fc --- /dev/null +++ b/app/components/ui/Textarea.vue @@ -0,0 +1,44 @@ +