@soft-stech/bootsman-ui-shadcn 2.0.3 → 2.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/theme.css ADDED
@@ -0,0 +1,211 @@
1
+ @custom-variant dark (&:is(.dark *));
2
+
3
+ @theme {
4
+ /* --container-padding: 2rem; */
5
+ /* --container-screen-2xl: 1400px; */
6
+
7
+ --color-border: var(--border);
8
+ --color-input: var(--input);
9
+ --color-ring: var(--ring);
10
+ --color-background: var(--background);
11
+ --color-foreground: var(--foreground);
12
+ --color-sidebar: var(--side-bar);
13
+ --color-tabs-sidebar: var(--tabs-sidebar);
14
+
15
+ --color-primary: var(--primary);
16
+ --color-primary-foreground: var(--primary-foreground);
17
+ --color-primary-hover: var(--primary-hover);
18
+ --color-primary-active: var(--primary-active);
19
+
20
+ --color-secondary: var(--secondary);
21
+ --color-secondary-foreground: var(--secondary-foreground);
22
+
23
+ --color-destructive: var(--destructive);
24
+ --color-destructive-foreground: var(--destructive-foreground);
25
+ --color-success: var(--success);
26
+ --color-success-foreground: var(--success-foreground);
27
+ --color-info: var(--info);
28
+ --color-info-foreground: var(--info-foreground);
29
+ --color-warning: var(--warning);
30
+ --color-warning-foreground: var(--warning-foreground);
31
+ --color-muted: var(--muted);
32
+ --color-muted-foreground: var(--muted-foreground);
33
+ --color-accent: var(--accent);
34
+ --color-accent-foreground: var(--accent-foreground);
35
+ --color-popover: var(--popover);
36
+ --color-popover-foreground: var(--popover-foreground);
37
+ --color-card: var(--card);
38
+ --color-card-foreground: var(--card-foreground);
39
+
40
+ --radius-lg: var(--radius);
41
+ --radius-md: calc(var(--radius) - 2px);
42
+ --radius-sm: calc(var(--radius) - 4px);
43
+
44
+ --shadow-card: 0px 4px 8px 0px var(--card-shadow);
45
+ --shadow-tab: 0px 2px 4px 0px var(--tab-shadow), 0px 4px 4px 0px var(--tab-shadow);
46
+ --shadow-top: 0px -2px 4px 0px var(--tab-shadow);
47
+ --shadow-level1:
48
+ 0px 16px 16px 0px var(--tab-shadow), 0px 8px 16px 0px var(--tab-shadow),
49
+ 0px 8px 8px 0px var(--tab-shadow);
50
+ --shadow-level2:
51
+ 0px 32px 16px 0px var(--tab-shadow), 0px 16px 16px 0px var(--tab-shadow),
52
+ 0px 16px 16px 0px var(--tab-shadow);
53
+ --shadow-level3:
54
+ 0px 56px 24px 0px var(--tab-shadow), 0px 32px 24px 0px var(--tab-shadow),
55
+ 0px 32px 24px 0px var(--tab-shadow);
56
+ --shadow-tab-sidebar: inset -8px 0px 16px 0px var(--tabs-sidebar-shadow);
57
+
58
+ --animate-accordion-down: accordion-down 0.2s ease-out;
59
+ --animate-accordion-up: accordion-up 0.2s ease-out;
60
+ --animate-collapsible-down: collapsible-down 0.2s ease-in-out;
61
+ --animate-collapsible-up: collapsible-up 0.2s ease-in-out;
62
+
63
+ --bg-image-logo: url('/src/assets/logo-full.png');
64
+ --bg-image-logo-dark: url('/src/assets/logo-full-dark.png');
65
+
66
+ --color-tooltip: var(--tooltip);
67
+ --color-tooltip-link: var(--tooltip-link);
68
+ }
69
+
70
+ @keyframes accordion-down {
71
+ from {
72
+ height: 0;
73
+ }
74
+ to {
75
+ height: var(--reka-accordion-content-height);
76
+ }
77
+ }
78
+
79
+ @keyframes accordion-up {
80
+ from {
81
+ height: var(--reka-accordion-content-height);
82
+ }
83
+ to {
84
+ height: 0;
85
+ }
86
+ }
87
+
88
+ @keyframes collapsible-down {
89
+ from {
90
+ height: 0;
91
+ }
92
+ to {
93
+ height: var(--reka-collapsible-content-height);
94
+ }
95
+ }
96
+
97
+ @keyframes collapsible-up {
98
+ from {
99
+ height: var(--reka-collapsible-content-height);
100
+ }
101
+ to {
102
+ height: 0;
103
+ }
104
+ }
105
+
106
+ @layer base {
107
+ * {
108
+ @apply border-border;
109
+ }
110
+ body {
111
+ @apply bg-background text-foreground;
112
+ }
113
+
114
+ button:not(:disabled),
115
+ [role='button']:not(:disabled) {
116
+ cursor: pointer;
117
+ }
118
+ }
119
+
120
+ :root {
121
+ --background: hsl(0 0% 100%);
122
+ --foreground: hsl(242 24% 21%);
123
+
124
+ --muted: hsl(210 40% 96.1%);
125
+ --muted-foreground: hsl(225 5% 47%);
126
+
127
+ --popover: hsl(0 0% 100%);
128
+ --popover-foreground: hsl(222.2 84% 4.9%);
129
+
130
+ --card: hsl(0 0% 100%);
131
+ --card-foreground: hsl(222.2 84% 4.9%);
132
+ --card-shadow: hsl(241, 92%, 71%, 0.16);
133
+ --tab-shadow: hsl(228, 51%, 11%, 0.08);
134
+
135
+ --side-bar: hsl(0 0% 100%);
136
+ --tabs-sidebar: hsl(210 40% 96.1%);
137
+ --tabs-sidebar-shadow: hsl(0, 0%, 100%, 0);
138
+
139
+ --border: hsl(241 92% 71%);
140
+ --input: hsl(225 11% 84%);
141
+
142
+ --primary: hsl(241 92% 71%);
143
+ --primary-hover: hsl(241 76% 62%);
144
+ --primary-active: hsl(241 54% 54%);
145
+ --primary-foreground: hsl(0 0% 100%);
146
+
147
+ --secondary: hsl(210 40% 96.1%);
148
+ --secondary-foreground: hsl(241 76% 62%);
149
+
150
+ --accent: hsl(241 92% 71%);
151
+ --accent-foreground: hsl(241 76% 62%);
152
+
153
+ --destructive: hsl(328, 68%, 63%, 0.16);
154
+ --destructive-foreground: hsl(328 68% 63%);
155
+
156
+ --success: hsl(181, 34%, 39%, 0.16);
157
+ --success-foreground: hsl(181 34% 39%);
158
+
159
+ --warning: hsl(48, 79%, 45%, 0.16);
160
+ --warning-foreground: hsl(48 79% 45%);
161
+
162
+ --info: hsl(198, 85%, 45%, 0.16);
163
+ --info-foreground: hsl(198 85% 45%);
164
+
165
+ --ring: hsl(241 92% 71%);
166
+
167
+ --radius: 0.5rem;
168
+
169
+ --tooltip: hsl(225 5% 47%);
170
+ --tooltip-link: hsl(241 100% 88%);
171
+ }
172
+
173
+ .dark {
174
+ --background: hsl(242 24% 21%);
175
+ --foreground: hsl(0 0% 100%);
176
+
177
+ --muted: hsl(217.2 32.6% 17.5%);
178
+ --muted-foreground: hsl(0, 0%, 100%, 0.32);
179
+
180
+ --popover: hsl(222.2 84% 4.9%);
181
+ --popover-foreground: hsl(210 40% 98%);
182
+
183
+ --card: hsl(242 24% 21%);
184
+ --card-foreground: hsl(210 40% 98%);
185
+ --card-shadow: hsl(241, 92%, 71%, 0.4);
186
+ --tab-shadow: hsl(228, 51%, 11%, 0.08);
187
+
188
+ --side-bar: hsl(243.2 24.1% 15.5%);
189
+ --tabs-sidebar: hsl(243.2 24.1% 15.5%);
190
+ --tabs-sidebar-shadow: hsl(0, 0%, 0%, 0.08);
191
+
192
+ --border: hsl(241 92% 71%);
193
+ --input: hsl(0, 0%, 100%, 0.32);
194
+
195
+ --primary: hsl(241 92% 71%);
196
+ --primary-hover: hsl(241 76% 62%);
197
+ --primary-active: hsl(241 54% 54%);
198
+ --primary-foreground: hsl(0 0% 100%);
199
+
200
+ --secondary: hsl(217.2 32.6% 17.5%);
201
+ --secondary-foreground: hsl(210 40% 98%);
202
+
203
+ --accent: hsl(241 92% 71%);
204
+ --accent-foreground: hsl(240 100% 77%);
205
+
206
+ --destructive: hsl(328, 68%, 63%, 0.16);
207
+ --destructive-foreground: hsl(328 68% 63%);
208
+
209
+ --success: hsl(154, 84%, 45%, 0.16);
210
+ --success-foreground: hsl(181 35% 49%);
211
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soft-stech/bootsman-ui-shadcn",
3
- "version": "2.0.3",
3
+ "version": "2.0.5",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist",
@@ -16,11 +16,10 @@
16
16
  },
17
17
  "peerDependencies": {
18
18
  "@tanstack/vue-table": "8.20.5",
19
- "@vee-validate/zod": "4.13.2",
20
19
  "@vueuse/core": "11.1.0",
21
- "vee-validate": "^4.13.2",
20
+ "vee-validate": "5.0.0-beta.0",
22
21
  "vue": "^3.5.18",
23
- "zod": "^3.23.6"
22
+ "zod": "4.1.11"
24
23
  },
25
24
  "dependencies": {
26
25
  "@internationalized/date": "^3.9.0",
@@ -69,6 +68,7 @@
69
68
  "typescript-eslint": "^8.44.0",
70
69
  "vite": "^7.1.2",
71
70
  "vite-plugin-dts": "^4.5.4",
71
+ "vite-plugin-static-copy": "^3.1.3",
72
72
  "vitest": "^3.2.4",
73
73
  "vue-tsc": "^3.0.5"
74
74
  },
@@ -53,6 +53,7 @@ const handleKeyDown = (e: KeyboardEvent) => {
53
53
  :readonly="readonlyContext || props.readonly"
54
54
  :disabled="props.disabled"
55
55
  :placeholder="props.placeholder"
56
+ :type="props.type || 'text'"
56
57
  @focus="handleFocus"
57
58
  @blur="handleBlur"
58
59
  @keydown="handleKeyDown"
@@ -29,7 +29,7 @@ export const tabsTriggerVariants = cva(
29
29
  ghost:
30
30
  'whitespace-nowrap border-transparent text-muted-foreground pb-0 [&_div]:pb-0.5 data-[state=active]:[&_div]:border-b-2 data-[state=active]:[&_div]:border-primary',
31
31
  vertical:
32
- 'border-transparent text-primary data-[state=active]:border-primary data-[state=active]:bg-background data-[state=active]:shadow-tab-sidebar-shadow border-l-2 border-b-0 w-full h-fit justify-start pl-6'
32
+ 'border-transparent text-primary data-[state=active]:border-primary data-[state=active]:bg-background data-[state=active]:shadow-tab-sidebar-shadow border-l-2 border-b-0 w-full h-fit justify-start pl-6!'
33
33
  }
34
34
  },
35
35
  defaultVariants: {
@@ -46,7 +46,7 @@ export const Password: Story = {
46
46
  template: `
47
47
  <div class="grid w-full max-w-sm items-center gap-1.5">
48
48
  <BuiLabel for="password">Password</BuiLabel>
49
- <BuiPasswordInput v-bind="args" id="password" default-value="text" placeholder="Password"/>
49
+ <BuiPasswordInput v-bind="args" id="password" placeholder="Password"/>
50
50
  </div>
51
51
  `
52
52
  })
@@ -1,23 +1,22 @@
1
1
  import {
2
2
  BuiSelect,
3
3
  BuiSelectContent,
4
+ BuiSelectGroup,
4
5
  BuiSelectItem,
5
6
  BuiSelectItemText,
6
7
  BuiSelectLabel,
7
- BuiSelectGroup,
8
8
  BuiSelectTrigger,
9
9
  BuiSelectValue
10
10
  } from '@/components/select'
11
11
  import type { Meta, StoryObj } from '@storybook/vue3-vite'
12
- import { toTypedSchema } from '@vee-validate/zod'
13
12
  import { BringToFrontIcon } from 'lucide-vue-next'
14
13
  import z from 'zod'
15
14
 
16
15
  import {
17
16
  BuiForm,
17
+ BuiFormControl,
18
18
  BuiFormField,
19
19
  BuiFormItem,
20
- BuiFormControl,
21
20
  BuiFormMessage
22
21
  } from '@/components/form'
23
22
  import type { AcceptableValue, SelectRootProps } from 'reka-ui'
@@ -134,7 +133,7 @@ export const WithValidation: Story = {
134
133
  const validationRules = z.object({
135
134
  favoriteFruit: z.enum(['banana'])
136
135
  })
137
- const validationSchema = toTypedSchema(validationRules)
136
+ const validationSchema = validationRules
138
137
  const initialValues = {
139
138
  favoriteFruit: 'apple'
140
139
  }
@@ -17,17 +17,14 @@ import {
17
17
  } from '@/components/form'
18
18
  import { BuiLabel } from '@/components/label'
19
19
  import { BuiPopover, BuiPopoverContent, BuiPopoverTrigger } from '@/components/popover'
20
- import { toTypedSchema } from '@vee-validate/zod'
21
20
  import { CheckIcon, ChevronDown } from 'lucide-vue-next'
22
21
  import { ref } from 'vue'
23
22
  import { z } from 'zod'
24
23
 
25
- const formSchema = toTypedSchema(
26
- z.object({
27
- namespace: z.string().min(2),
28
- groups: z.array(z.string())
29
- })
30
- )
24
+ const formSchema = z.object({
25
+ namespace: z.string().min(2),
26
+ groups: z.array(z.string())
27
+ })
31
28
  const isNamespacesPopoverOpen = ref(false)
32
29
  const namespaces = ['default', 'local', 'my-namespace']
33
30
  </script>
@@ -18,18 +18,15 @@ import {
18
18
  } from '@/components/form'
19
19
  import { BuiLabel } from '@/components/label'
20
20
  import { BuiPopover, BuiPopoverContent, BuiPopoverTrigger } from '@/components/popover'
21
- import { toTypedSchema } from '@vee-validate/zod'
22
21
  import { CheckIcon, ChevronDown, CirclePlusIcon } from 'lucide-vue-next'
23
22
  import { ref } from 'vue'
24
23
  import { z } from 'zod'
25
24
 
26
25
  const search = ref<string>('')
27
- const formSchema = toTypedSchema(
28
- z.object({
29
- namespace: z.string().min(2),
30
- groups: z.array(z.string())
31
- })
32
- )
26
+ const formSchema = z.object({
27
+ namespace: z.string().min(2),
28
+ groups: z.array(z.string())
29
+ })
33
30
  const isGroupsPopoverOpen = ref(false)
34
31
  const existingGroups = ref(['group-1', 'group-2', 'group-3'])
35
32
  </script>
@@ -11,15 +11,12 @@ import {
11
11
  BuiFormMessage
12
12
  } from '@/components/form'
13
13
 
14
- import { toTypedSchema } from '@vee-validate/zod'
15
14
  import * as z from 'zod'
16
15
 
17
- const loginFormSchema = toTypedSchema(
18
- z.object({
19
- email: z.string().email(),
20
- password: z.string().min(8).max(64)
21
- })
22
- )
16
+ const loginFormSchema = z.object({
17
+ email: z.string().email(),
18
+ password: z.string().min(8).max(64)
19
+ })
23
20
 
24
21
  const initialValues = {
25
22
  email: 'test@example.com',
@@ -11,15 +11,12 @@ import {
11
11
  useBuiForm
12
12
  } from '@/components/form'
13
13
 
14
- import { toTypedSchema } from '@vee-validate/zod'
15
14
  import * as z from 'zod'
16
15
 
17
- const loginFormSchema = toTypedSchema(
18
- z.object({
19
- email: z.string().email(),
20
- password: z.string().min(8).max(64)
21
- })
22
- )
16
+ const loginFormSchema = z.object({
17
+ email: z.string().email(),
18
+ password: z.string().min(8).max(64)
19
+ })
23
20
 
24
21
  const initialValues = {
25
22
  email: 'test@example.com',
@@ -40,11 +37,11 @@ const onSubmit = handleSubmit((values) => {
40
37
  <div class="flex min-h-full flex-1 flex-col justify-center py-12 sm:px-6 lg:px-8">
41
38
  <div class="sm:mx-auto sm:w-full sm:max-w-md">
42
39
  <div
43
- class="mx-auto h-10 bg-logo bg-contain bg-center bg-no-repeat dark:bg-logo-dark"
40
+ class="bg-logo dark:bg-logo-dark mx-auto h-10 bg-contain bg-center bg-no-repeat"
44
41
  alt="Bootsman"
45
42
  />
46
43
  <h2
47
- class="mt-6 text-center text-2xl font-bold leading-9 tracking-tight text-gray-900 dark:text-white"
44
+ class="mt-6 text-center text-2xl leading-9 font-bold tracking-tight text-gray-900 dark:text-white"
48
45
  >
49
46
  Sign in to your account
50
47
  </h2>
@@ -25,19 +25,16 @@ import BuiSelectTrigger from '@/components/select/BuiSelectTrigger.vue'
25
25
  import BuiSelectValue from '@/components/select/BuiSelectValue.vue'
26
26
  import BuiSwitch from '@/components/switch/BuiSwitch.vue'
27
27
  import BuiTextarea from '@/components/textarea/BuiTextarea.vue'
28
- import { toTypedSchema } from '@vee-validate/zod'
29
28
  import * as z from 'zod'
30
29
 
31
- const loginFormSchema = toTypedSchema(
32
- z.object({
33
- email: z.string().email(),
34
- password: z.string().min(8).max(64),
35
- remember: z.boolean(),
36
- favoriteFruit: z.enum(['banana']),
37
- description: z.string().min(2).max(10),
38
- display: z.enum(['default', 'compact', 'comfortable'])
39
- })
40
- )
30
+ const loginFormSchema = z.object({
31
+ email: z.string().email(),
32
+ password: z.string().min(8).max(64),
33
+ remember: z.boolean(),
34
+ favoriteFruit: z.enum(['banana']),
35
+ description: z.string().min(2).max(10),
36
+ display: z.enum(['default', 'compact', 'comfortable'])
37
+ })
41
38
 
42
39
  const initialValues = {
43
40
  email: 'test@example.com',
@@ -11,16 +11,13 @@ import {
11
11
  useBuiForm
12
12
  } from '@/components/form'
13
13
 
14
- import { toTypedSchema } from '@vee-validate/zod'
15
- import * as z from 'zod'
16
14
  import SubForm from '@/stories/components/SubForm.vue'
15
+ import * as z from 'zod'
17
16
 
18
- const formSchema = toTypedSchema(
19
- z.object({
20
- meta: z.object({ field: z.string().trim().min(1) }),
21
- example: z.string().trim().min(1)
22
- })
23
- )
17
+ const formSchema = z.object({
18
+ meta: z.object({ field: z.string().trim().min(1) }),
19
+ example: z.string().trim().min(1)
20
+ })
24
21
 
25
22
  const initialValues = {
26
23
  meta: {
package/src/style.css CHANGED
@@ -3,214 +3,4 @@
3
3
 
4
4
  @plugin 'tailwind-scrollbar';
5
5
 
6
- @custom-variant dark (&:is(.dark *));
7
-
8
- @theme {
9
- --container-padding: 2rem;
10
- --container-screen-2xl: 1400px;
11
-
12
- --color-border: var(--border);
13
- --color-input: var(--input);
14
- --color-ring: var(--ring);
15
- --color-background: var(--background);
16
- --color-foreground: var(--foreground);
17
- --color-sidebar: var(--side-bar);
18
- --color-tabs-sidebar: var(--tabs-sidebar);
19
-
20
- --color-primary: var(--primary); /* / <alpha-value> */
21
- --color-primary-foreground: var(--primary-foreground); /* / <alpha-value> */
22
- --color-primary-hover: var(--primary-hover);
23
- --color-primary-active: var(--primary-active);
24
-
25
- --color-secondary: var(--secondary);
26
- --color-secondary-foreground: var(--secondary-foreground);
27
-
28
- --color-destructive: var(--destructive);
29
- --color-destructive-foreground: var(--destructive-foreground);
30
- --color-success: var(--success);
31
- --color-success-foreground: var(--success-foreground);
32
- --color-info: var(--info);
33
- --color-info-foreground: var(--info-foreground);
34
- --color-warning: var(--warning);
35
- --color-warning-foreground: var(--warning-foreground);
36
- --color-muted: var(--muted);
37
- --color-muted-foreground: var(--muted-foreground);
38
- --color-accent: var(--accent);
39
- --color-accent-foreground: var(--accent-foreground);
40
- --color-popover: var(--popover);
41
- --color-popover-foreground: var(--popover-foreground);
42
- --color-card: var(--card);
43
- --color-card-foreground: var(--card-foreground);
44
-
45
- --radius-lg: var(--radius);
46
- --radius-md: calc(var(--radius) - 2px);
47
- --radius-sm: calc(var(--radius) - 4px);
48
-
49
- --shadow-card: 0px 4px 8px 0px var(--card-shadow);
50
- --shadow-tab: 0px 2px 4px 0px var(--tab-shadow), 0px 4px 4px 0px var(--tab-shadow);
51
- --shadow-top: 0px -2px 4px 0px var(--tab-shadow);
52
- --shadow-level1:
53
- 0px 16px 16px 0px var(--tab-shadow), 0px 8px 16px 0px var(--tab-shadow),
54
- 0px 8px 8px 0px var(--tab-shadow);
55
- --shadow-level2:
56
- 0px 32px 16px 0px var(--tab-shadow), 0px 16px 16px 0px var(--tab-shadow),
57
- 0px 16px 16px 0px var(--tab-shadow);
58
- --shadow-level3:
59
- 0px 56px 24px 0px var(--tab-shadow), 0px 32px 24px 0px var(--tab-shadow),
60
- 0px 32px 24px 0px var(--tab-shadow);
61
- --shadow-tab-sidebar: inset -8px 0px 16px 0px var(--tabs-sidebar-shadow);
62
-
63
- --animate-accordion-down: accordion-down 0.2s ease-out;
64
- --animate-accordion-up: accordion-up 0.2s ease-out;
65
- --animate-collapsible-down: collapsible-down 0.2s ease-in-out;
66
- --animate-collapsible-up: collapsible-up 0.2s ease-in-out;
67
-
68
- --bg-image-logo: url('/src/assets/logo-full.png');
69
- --bg-image-logo-dark: url('/src/assets/logo-full-dark.png');
70
-
71
- --color-tooltip: var(--tooltip);
72
- --color-tooltip-link: var(--tooltip-link);
73
- }
74
-
75
- @keyframes accordion-down {
76
- from {
77
- height: 0;
78
- }
79
- to {
80
- height: var(--reka-accordion-content-height);
81
- }
82
- }
83
-
84
- @keyframes accordion-up {
85
- from {
86
- height: var(--reka-accordion-content-height);
87
- }
88
- to {
89
- height: 0;
90
- }
91
- }
92
-
93
- @keyframes collapsible-down {
94
- from {
95
- height: 0;
96
- }
97
- to {
98
- height: var(--reka-collapsible-content-height);
99
- }
100
- }
101
-
102
- @keyframes collapsible-up {
103
- from {
104
- height: var(--reka-collapsible-content-height);
105
- }
106
- to {
107
- height: 0;
108
- }
109
- }
110
-
111
- @layer base {
112
- * {
113
- @apply border-border;
114
- }
115
- body {
116
- @apply bg-background text-foreground;
117
- }
118
-
119
- button:not(:disabled),
120
- [role='button']:not(:disabled) {
121
- cursor: pointer;
122
- }
123
- }
124
-
125
- :root {
126
- --background: hsl(0 0% 100%);
127
- --foreground: hsl(242 24% 21%);
128
-
129
- --muted: hsl(210 40% 96.1%);
130
- --muted-foreground: hsl(225 5% 47%);
131
-
132
- --popover: hsl(0 0% 100%);
133
- --popover-foreground: hsl(222.2 84% 4.9%);
134
-
135
- --card: hsl(0 0% 100%);
136
- --card-foreground: hsl(222.2 84% 4.9%);
137
- --card-shadow: hsl(241, 92%, 71%, 0.16);
138
- --tab-shadow: hsl(228, 51%, 11%, 0.08);
139
-
140
- --side-bar: hsl(0 0% 100%);
141
- --tabs-sidebar: hsl(210 40% 96.1%);
142
- --tabs-sidebar-shadow: hsl(0, 0%, 100%, 0);
143
-
144
- --border: hsl(241 92% 71%);
145
- --input: hsl(225 11% 84%);
146
-
147
- --primary: hsl(241 92% 71%);
148
- --primary-hover: hsl(241 76% 62%);
149
- --primary-active: hsl(241 54% 54%);
150
- --primary-foreground: hsl(0 0% 100%);
151
-
152
- --secondary: hsl(210 40% 96.1%);
153
- --secondary-foreground: hsl(241 76% 62%);
154
-
155
- --accent: hsl(241 92% 71%);
156
- --accent-foreground: hsl(241 76% 62%);
157
-
158
- --destructive: hsl(328, 68%, 63%, 0.16);
159
- --destructive-foreground: hsl(328 68% 63%);
160
-
161
- --success: hsl(181, 34%, 39%, 0.16);
162
- --success-foreground: hsl(181 34% 39%);
163
-
164
- --warning: hsl(48, 79%, 45%, 0.16);
165
- --warning-foreground: hsl(48 79% 45%);
166
-
167
- --info: hsl(198, 85%, 45%, 0.16);
168
- --info-foreground: hsl(198 85% 45%);
169
-
170
- --ring: hsl(241 92% 71%);
171
-
172
- --radius: 0.5rem;
173
-
174
- --tooltip: hsl(225 5% 47%);
175
- --tooltip-link: hsl(241 100% 88%);
176
- }
177
-
178
- .dark {
179
- --background: hsl(242 24% 21%);
180
- --foreground: hsl(0 0% 100%);
181
-
182
- --muted: hsl(217.2 32.6% 17.5%);
183
- --muted-foreground: hsl(0, 0%, 100%, 0.32);
184
-
185
- --popover: hsl(222.2 84% 4.9%);
186
- --popover-foreground: hsl(210 40% 98%);
187
-
188
- --card: hsl(242 24% 21%);
189
- --card-foreground: hsl(210 40% 98%);
190
- --card-shadow: hsl(241, 92%, 71%, 0.4);
191
- --tab-shadow: hsl(228, 51%, 11%, 0.08);
192
-
193
- --side-bar: hsl(243.2 24.1% 15.5%);
194
- --tabs-sidebar: hsl(243.2 24.1% 15.5%);
195
- --tabs-sidebar-shadow: hsl(0, 0%, 0%, 0.08);
196
-
197
- --border: hsl(241 92% 71%);
198
- --input: hsl(0, 0%, 100%, 0.32);
199
-
200
- --primary: hsl(241 92% 71%);
201
- --primary-hover: hsl(241 76% 62%);
202
- --primary-active: hsl(241 54% 54%);
203
- --primary-foreground: hsl(0 0% 100%);
204
-
205
- --secondary: hsl(217.2 32.6% 17.5%);
206
- --secondary-foreground: hsl(210 40% 98%);
207
-
208
- --accent: hsl(241 92% 71%);
209
- --accent-foreground: hsl(240 100% 77%);
210
-
211
- --destructive: hsl(328, 68%, 63%, 0.16);
212
- --destructive-foreground: hsl(328 68% 63%);
213
-
214
- --success: hsl(154, 84%, 45%, 0.16);
215
- --success-foreground: hsl(181 35% 49%);
216
- }
6
+ @import './theme.css';