@autoafleveren/ui 0.1.0 → 0.1.2

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.
@@ -10,10 +10,7 @@ const defaultTypescriptOverride = {
10
10
  'vitest',
11
11
  ],
12
12
  extends: [
13
- 'plugin:@programic/base',
14
- 'plugin:import/typescript',
15
- 'plugin:@typescript-eslint/recommended',
16
- 'plugin:@typescript-eslint/recommended-requiring-type-checking',
13
+ ...typescriptOverride.extends,
17
14
  'plugin:vitest/recommended',
18
15
  ],
19
16
  };
@@ -33,6 +30,13 @@ if (variableIndex > -1) {
33
30
  });
34
31
  }
35
32
 
33
+ const testOverrideRules = {
34
+ '@typescript-eslint/explicit-function-return-type': 'off',
35
+ '@typescript-eslint/explicit-module-boundary-types': 'off',
36
+ '@programic/typescript-explicit-module-boundary-types': 'off',
37
+ '@programic/typescript-explicit-function-return-type': 'off',
38
+ };
39
+
36
40
  /** @type {import('eslint').Config} */
37
41
  module.exports = {
38
42
  root: true,
@@ -56,6 +60,42 @@ module.exports = {
56
60
  tailwindcss: {
57
61
  config: tailwindConfigPath,
58
62
  },
63
+ programic: {
64
+ vue: {
65
+ extendedComputedProperties: {
66
+ vueuse: [
67
+ 'computedAsync',
68
+ 'computedEager',
69
+ 'computedInject',
70
+ 'computedWithControl',
71
+ 'reactiveComputed',
72
+ ],
73
+ },
74
+ extendedWatchers: {
75
+ vueuse: [
76
+ 'until',
77
+ 'watchArray',
78
+ 'watchAtMost',
79
+ 'watchDebounced',
80
+ 'watchDeep',
81
+ 'watchIgnorable',
82
+ 'watchImmediate',
83
+ 'watchOnce',
84
+ 'watchPausable',
85
+ 'watchThrottled',
86
+ 'watchTriggerable',
87
+ 'watchWithFilter',
88
+ 'whenever',
89
+ ],
90
+ },
91
+ extendedHooks: {
92
+ 'vue-router': [
93
+ 'onBeforeRouteLeave',
94
+ 'onBeforeRouteUpdate',
95
+ ],
96
+ },
97
+ },
98
+ },
59
99
  },
60
100
  parserOptions: {
61
101
  ecmaVersion: 2020,
@@ -69,6 +109,7 @@ module.exports = {
69
109
  files: ['**/*.spec.ts'],
70
110
  rules: {
71
111
  ...typescriptOverride.rules,
112
+ ...testOverrideRules,
72
113
  'no-promise-executor-return': 'off',
73
114
  '@typescript-eslint/naming-convention': namingConventionsTestFileRule,
74
115
  'unicorn/prevent-abbreviations': ['error', {
@@ -81,6 +122,7 @@ module.exports = {
81
122
  ],
82
123
  }],
83
124
  'vue/one-component-per-file': 'off',
125
+ '@typescript-eslint/no-unsafe-member-access': 'off',
84
126
  'vitest/consistent-test-it': 'error',
85
127
  'vitest/no-alias-methods': 'error',
86
128
  'vitest/no-conditional-expect': 'error',
@@ -115,8 +157,24 @@ module.exports = {
115
157
  }],
116
158
  },
117
159
  },
160
+ {
161
+ ...defaultTypescriptOverride,
162
+ files: ['**/__mocks__/*.ts', '**/mocks/**/*.ts'],
163
+ rules: {
164
+ ...typescriptOverride.rules,
165
+ ...testOverrideRules,
166
+ },
167
+ }
118
168
  ],
119
169
  rules: {
170
+ 'id-length': ['error', {
171
+ min: 2,
172
+ properties: 'always',
173
+ exceptions: ['t', 'rt', 'd', 'n', 'te', 'tm'],
174
+ }],
175
+ 'import/no-extraneous-dependencies': ['error', {
176
+ devDependencies: ["**/tests/**", "**/__tests__/**"],
177
+ }],
120
178
  'tailwindcss/no-custom-classname': ['error', {
121
179
  whitelist: ['^app-.+$'],
122
180
  }],
@@ -2,44 +2,80 @@ const screens = require('./screens.json');
2
2
 
3
3
  /** @type {import('tailwindcss').Config} */
4
4
  module.exports = {
5
- content: [
6
- './components/**/*.{js,vue,ts}',
7
- './main.ts',
8
- './App.vue'
9
- ],
10
- theme: {
11
- fontFamily: {
12
- sans: 'Inter',
13
- serif: 'Inter',
14
- mono: 'Inter',
15
- },
16
- colors: {
17
- current: 'currentColor',
18
- transparent: 'transparent',
19
- primary: 'var(--color-primary)',
20
- 'primary-active': 'var(--color-primary-active)',
21
- secondary: 'var(--color-secondary)',
22
- 'secondary-active': 'var(--color-secondary-active)',
23
- black: {
24
- black: '#000000',
25
- DEFAULT: '#1E1E1E',
26
- 50: '#FCFCFD',
27
- },
28
- white: '#FFFFFF',
29
- zinc: {
30
- 50: '#FAFAFA',
31
- 100: '#F4F4F5',
32
- 200: '#E4E4E7',
33
- 300: '#D4D4D8',
34
- 400: '#A1A1AA',
35
- 500: '#71717A',
36
- 600: '#52525B',
37
- 700: '#3F3F46',
38
- 800: '#27272A',
39
- 900: '#18181B',
40
- },
41
- },
42
- screens,
5
+ content: [
6
+ './components/**/*.{js,vue,ts}',
7
+ './main.ts',
8
+ './App.vue'
9
+ ],
10
+ theme: {
11
+ fontFamily: {
12
+ sans: 'Inter',
13
+ serif: 'Inter',
14
+ mono: 'Inter',
43
15
  },
44
- plugins: [],
16
+ colors: {
17
+ current: 'currentColor',
18
+ transparent: 'transparent',
19
+ primary: 'var(--color-primary)',
20
+ 'primary-active': 'var(--color-primary-active)',
21
+ secondary: 'var(--color-secondary)',
22
+ 'secondary-active': 'var(--color-secondary-active)',
23
+ black: {
24
+ black: '#000000',
25
+ DEFAULT: '#1E1E1E',
26
+ 50: '#FCFCFD',
27
+ },
28
+ white: '#FFFFFF',
29
+ zinc: {
30
+ 50: '#FAFAFA',
31
+ 100: '#F4F4F5',
32
+ 200: '#E4E4E7',
33
+ 300: '#D4D4D8',
34
+ 400: '#A1A1AA',
35
+ 500: '#71717A',
36
+ 600: '#52525B',
37
+ 700: '#3F3F46',
38
+ 800: '#27272A',
39
+ 900: '#18181B',
40
+ },
41
+ yellow: {
42
+ 50: '#fefce8',
43
+ 100: '#fef9c3',
44
+ 200: '#fef08a',
45
+ 300: '#fde047',
46
+ 400: '#facc15',
47
+ 500: '#eab308',
48
+ 600: '#ca8a04',
49
+ 700: '#a16207',
50
+ 800: '#854d0e',
51
+ 900: '#713f12',
52
+ },
53
+ red: {
54
+ 50: '#fef2f2',
55
+ 100: '#fee2e2',
56
+ 200: '#fecaca',
57
+ 300: '#fca5a5',
58
+ 400: '#f87171',
59
+ 500: '#ef4444',
60
+ 600: '#dc2626',
61
+ 700: '#b91c1c',
62
+ 800: '#991b1b',
63
+ 900: '#7f1d1d',
64
+ },
65
+ green: {
66
+ 50: '#f0fdf4',
67
+ 100: '#dcfce7',
68
+ 200: '#bbf7d0',
69
+ 300: '#86efac',
70
+ 400: '#4ade80',
71
+ 500: '#22c55e',
72
+ 600: '#16a34a',
73
+ 700: '#15803d',
74
+ 800: '#166534',
75
+ 900: '#14532d',
76
+ },
77
+ },
78
+ screens,
79
+ },
80
+ plugins: [],
45
81
  }
@@ -1,4 +1,4 @@
1
- import type { NavigationItem } from '../../composables/useNavigation/index.d';
1
+ import type { NavigationItem } from '~composables/useNavigation';
2
2
  declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
3
3
  item: NavigationItem;
4
4
  }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
@@ -0,0 +1,2 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
2
+ export default _default;
@@ -1,2 +1,2 @@
1
- export { default as useNavigation } from './useNavigation';
2
- export { default as useLayout } from './useLayout';
1
+ export * from './useNavigation';
2
+ export * from './useLayout';
@@ -1,5 +1,5 @@
1
1
  import type { LayoutImage } from './index.d';
2
- declare function useLayout(): {
2
+ export declare function useLayout(): {
3
3
  setLayoutImage: (image: LayoutImage) => void;
4
4
  setPrimaryColors: (color: string, colorActive: string) => void;
5
5
  setSecondaryColors: (color: string, colorActive: string) => void;
@@ -11,4 +11,4 @@ declare function useLayout(): {
11
11
  secondaryColorActive: import("vue").Ref<string | null>;
12
12
  };
13
13
  };
14
- export default useLayout;
14
+ export type { LayoutImage };
@@ -1,8 +1,9 @@
1
1
  import type { Component } from 'vue';
2
+ import type { MaybeRef } from '~/modules/typings/reactivity';
2
3
  import type { NavigationItem, Logo } from './index.d';
3
- declare function useNavigation(): {
4
- setNavigationItems: (items: NavigationItem[]) => void;
5
- setNavigationComponent: (component: Component) => void;
4
+ export declare function useNavigation(): {
5
+ setNavigationItems: (items: MaybeRef<NavigationItem[]>) => void;
6
+ setNavigationComponent: (value: 'a' | Component) => void;
6
7
  setLogo: (logo: Logo) => void;
7
8
  openMainMenu: () => void;
8
9
  closeMainMenu: () => void;
@@ -12,12 +13,134 @@ declare function useNavigation(): {
12
13
  toggleMobileMenu: () => void;
13
14
  navigationItems: import("vue").Ref<{
14
15
  name: string;
15
- to: string;
16
- icon: string | import("vue").FunctionalComponent<{}, {}>;
16
+ icon: string | import("vue").FunctionalComponent<any, any> | {
17
+ new (...args: any[]): any;
18
+ __isFragment?: undefined;
19
+ __isTeleport?: undefined;
20
+ __isSuspense?: undefined;
21
+ } | {
22
+ [x: string]: any;
23
+ setup?: ((this: void, props: Readonly<import("@vue/shared").LooseRequired<any>>, ctx: {
24
+ attrs: {
25
+ [x: string]: unknown;
26
+ };
27
+ slots: Readonly<{
28
+ [name: string]: import("vue").Slot | undefined;
29
+ }>;
30
+ emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
31
+ expose: (exposed?: Record<string, any> | undefined) => void;
32
+ }) => any) | undefined;
33
+ name?: string | undefined;
34
+ template?: string | object | undefined;
35
+ render?: Function | undefined;
36
+ components?: Record<string, Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>> | undefined;
37
+ directives?: Record<string, import("vue").Directive<any, any>> | undefined;
38
+ inheritAttrs?: boolean | undefined;
39
+ emits?: any;
40
+ expose?: string[] | undefined;
41
+ serverPrefetch?: (() => void | Promise<any>) | undefined;
42
+ compilerOptions?: {
43
+ isCustomElement?: ((tag: string) => boolean) | undefined;
44
+ whitespace?: "preserve" | "condense" | undefined;
45
+ comments?: boolean | undefined;
46
+ delimiters?: [string, string] | undefined;
47
+ } | undefined;
48
+ call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
49
+ __isFragment?: undefined;
50
+ __isTeleport?: undefined;
51
+ __isSuspense?: undefined;
52
+ __defaults?: {} | undefined;
53
+ compatConfig?: {
54
+ GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
55
+ GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
56
+ GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
57
+ GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
58
+ GLOBAL_SET?: boolean | "suppress-warning" | undefined;
59
+ GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
60
+ GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
61
+ GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
62
+ CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
63
+ CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
64
+ CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
65
+ CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
66
+ CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
67
+ CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
68
+ CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
69
+ INSTANCE_SET?: boolean | "suppress-warning" | undefined;
70
+ INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
71
+ INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
72
+ INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
73
+ INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
74
+ INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
75
+ INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
76
+ INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
77
+ INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
78
+ OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
79
+ OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
80
+ OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
81
+ OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
82
+ WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
83
+ PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
84
+ V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
85
+ CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
86
+ ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
87
+ ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
88
+ TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
89
+ TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
90
+ COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
91
+ COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
92
+ COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
93
+ RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
94
+ FILTERS?: boolean | "suppress-warning" | undefined;
95
+ PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
96
+ MODE?: 2 | 3 | ((comp: Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions> | null) => 2 | 3) | undefined;
97
+ } | undefined;
98
+ data?: ((this: any, vm: any) => any) | undefined;
99
+ computed?: import("vue").ComputedOptions | undefined;
100
+ methods?: import("vue").MethodOptions | undefined;
101
+ watch?: {
102
+ [x: string]: (string | import("vue").WatchCallback<any, any> | ({
103
+ handler: string | import("vue").WatchCallback<any, any>;
104
+ } & import("vue").WatchOptions<boolean>)) | (string | import("vue").WatchCallback<any, any> | ({
105
+ handler: string | import("vue").WatchCallback<any, any>;
106
+ } & import("vue").WatchOptions<boolean>))[];
107
+ } | undefined;
108
+ provide?: import("vue").ComponentProvideOptions | undefined;
109
+ inject?: {} | string[] | undefined;
110
+ filters?: Record<string, Function> | undefined;
111
+ mixins?: any[] | undefined;
112
+ extends?: any;
113
+ beforeCreate?: (() => void) | undefined;
114
+ created?: (() => void) | undefined;
115
+ beforeMount?: (() => void) | undefined;
116
+ mounted?: (() => void) | undefined;
117
+ beforeUpdate?: (() => void) | undefined;
118
+ updated?: (() => void) | undefined;
119
+ activated?: (() => void) | undefined;
120
+ deactivated?: (() => void) | undefined;
121
+ beforeDestroy?: (() => void) | undefined;
122
+ beforeUnmount?: (() => void) | undefined;
123
+ destroyed?: (() => void) | undefined;
124
+ unmounted?: (() => void) | undefined;
125
+ renderTracked?: ((e: import("vue").DebuggerEvent) => void) | undefined;
126
+ renderTriggered?: ((e: import("vue").DebuggerEvent) => void) | undefined;
127
+ errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null, info: string) => boolean | void) | undefined;
128
+ delimiters?: [string, string] | undefined;
129
+ __differentiator?: string | number | symbol | undefined;
130
+ __isBuiltIn?: boolean | undefined;
131
+ __file?: string | undefined;
132
+ __name?: string | undefined;
133
+ };
134
+ to?: unknown;
135
+ href?: string | undefined;
136
+ active?: boolean | undefined;
137
+ rounded?: boolean | undefined;
138
+ bottom?: boolean | undefined;
139
+ onClick?: (() => unknown) | undefined;
17
140
  }[]>;
18
141
  mainMenuOpen: import("vue").Ref<boolean>;
19
142
  mobileMenuOpen: import("vue").Ref<boolean>;
20
- navigationComponent: import("vue").ShallowRef<string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>;
143
+ navigationComponent: import("vue").ShallowRef<Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions> | "a">;
21
144
  logo: import("vue").Ref<string | import("vue").FunctionalComponent<any, any> | {
22
145
  new (...args: any[]): any;
23
146
  __isFragment?: undefined;
@@ -136,5 +259,6 @@ declare function useNavigation(): {
136
259
  __file?: string | undefined;
137
260
  __name?: string | undefined;
138
261
  } | null>;
262
+ contactRoute: import("vue").Ref<string | null | undefined>;
139
263
  };
140
- export default useNavigation;
264
+ export type { NavigationItem, Logo };
@@ -1,3 +1,3 @@
1
1
  @import url("https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap");
2
2
 
3
- /*! tailwindcss v3.3.1 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid}:after,:before{--tw-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter;font-feature-settings:normal;font-variation-settings:normal}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:Inter;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}:root{--color-primary:#e25c2a;--color-primary-active:#c2410c;--color-secondary:#1e243b;--color-secondary-active:#1e243b}*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.top-14{top:3.5rem}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-auto{margin-bottom:auto}.ml-3{margin-left:.75rem}.mr-3{margin-right:.75rem}.mt-5{margin-top:1.25rem}.mt-auto{margin-top:auto}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-0{height:0}.h-10{height:2.5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.\!w-20{width:5rem!important}.w-0{width:0}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-full{width:100%}.flex-1{flex:1 1 0%}.grow{flex-grow:1}.translate-y-0{--tw-translate-y:0px}.translate-y-0,.translate-y-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y:100%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-3{gap:.75rem}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.rounded-lg{border-radius:.5rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-primary{border-color:var(--color-primary)}.border-transparent{border-color:#0000}.bg-primary{background-color:var(--color-primary)}.bg-transparent{background-color:initial}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-zinc-50{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity))}.object-fill{-o-object-fit:fill;object-fit:fill}.\!p-2{padding:.5rem!important}.p-2{padding:.5rem}.p-4{padding:1rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pl-7{padding-left:1.75rem}.text-center{text-align:center}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-semibold{font-weight:600}.capitalize{text-transform:capitalize}.text-black{--tw-text-opacity:1;color:rgb(30 30 30/var(--tw-text-opacity))}.text-primary{color:var(--color-primary)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-zinc-900{--tw-text-opacity:1;color:rgb(24 24 27/var(--tw-text-opacity))}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:bg-primary:hover{background-color:var(--color-primary)}.hover\:text-primary:hover{color:var(--color-primary)}.focus\:outline-none:focus{outline:2px solid #0000;outline-offset:2px}.enabled\:hover\:bg-primary:hover:enabled{background-color:var(--color-primary)}.enabled\:hover\:bg-primary-active:hover:enabled{background-color:var(--color-primary-active)}.enabled\:hover\:text-white:hover:enabled{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:select-none:disabled{-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (min-width:992px){.md\:block{display:block}.md\:\!flex{display:flex!important}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-auto{height:auto}.md\:\!w-20{width:5rem!important}.md\:w-1\/2{width:50%}.md\:w-10{width:2.5rem}.md\:max-w-lg{max-width:32rem}.md\:grow-0{flex-grow:0}.md\:flex-row{flex-direction:row}.md\:justify-center{justify-content:center}.md\:rounded-l-2xl{border-top-left-radius:1rem;border-bottom-left-radius:1rem}.md\:bg-secondary{background-color:var(--color-secondary)}.md\:px-24{padding-left:6rem;padding-right:6rem}.md\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}}@media (min-width:1200px){.lg\:hidden{display:none}}
3
+ /*! tailwindcss v3.3.1 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid}:after,:before{--tw-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter;font-feature-settings:normal;font-variation-settings:normal}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:Inter;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}:root{--color-primary:#e25c2a;--color-primary-active:#c2410c;--color-secondary:#1e243b;--color-secondary-active:#1e243b}*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.visible{visibility:visible}.\!static{position:static!important}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.bottom-5{bottom:1.25rem}.right-5{right:1.25rem}.top-0{top:0}.top-20{top:5rem}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-auto{margin-bottom:auto}.ml-3{margin-left:.75rem}.mr-3{margin-right:.75rem}.mt-2{margin-top:.5rem}.mt-5{margin-top:1.25rem}.mt-auto{margin-top:auto}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.\!h-6{height:1.5rem!important}.h-0{height:0}.h-10{height:2.5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.\!w-20{width:5rem!important}.w-0{width:0}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-full{width:100%}.flex-1{flex:1 1 0%}.grow{flex-grow:1}.-translate-y-2{--tw-translate-y:-0.5rem}.-translate-y-2,.translate-y-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y:0px}.translate-y-full{--tw-translate-y:100%}.transform,.translate-y-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-3{gap:.75rem}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.\!rounded-full{border-radius:9999px!important}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-0{border-width:0}.border-primary{border-color:var(--color-primary)}.border-transparent{border-color:#0000}.bg-primary{background-color:var(--color-primary)}.bg-transparent{background-color:initial}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-zinc-50{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity))}.object-fill{-o-object-fit:fill;object-fit:fill}.\!p-2{padding:.5rem!important}.p-4{padding:1rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pl-7{padding-left:1.75rem}.text-center{text-align:center}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-semibold{font-weight:600}.capitalize{text-transform:capitalize}.text-black{--tw-text-opacity:1;color:rgb(30 30 30/var(--tw-text-opacity))}.text-primary{color:var(--color-primary)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-zinc-900{--tw-text-opacity:1;color:rgb(24 24 27/var(--tw-text-opacity))}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:bg-primary-active:hover{background-color:var(--color-primary-active)}.hover\:text-primary:hover{color:var(--color-primary)}.focus\:outline-none:focus{outline:2px solid #0000;outline-offset:2px}.enabled\:hover\:bg-primary:hover:enabled{background-color:var(--color-primary)}.enabled\:hover\:bg-primary-active:hover:enabled{background-color:var(--color-primary-active)}.enabled\:hover\:text-white:hover:enabled{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:select-none:disabled{-webkit-user-select:none;-moz-user-select:none;user-select:none}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:992px){.md\:block{display:block}.md\:\!flex{display:flex!important}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-auto{height:auto}.md\:\!w-20{width:5rem!important}.md\:w-1\/2{width:50%}.md\:w-10{width:2.5rem}.md\:max-w-lg{max-width:32rem}.md\:grow-0{flex-grow:0}.md\:flex-row{flex-direction:row}.md\:justify-center{justify-content:center}.md\:rounded-l-2xl{border-top-left-radius:1rem;border-bottom-left-radius:1rem}.md\:bg-primary{background-color:var(--color-primary)}.md\:bg-secondary{background-color:var(--color-secondary)}.md\:px-24{padding-left:6rem;padding-right:6rem}.md\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.md\:hover\:bg-primary-active:hover{background-color:var(--color-primary-active)}}@media (min-width:1200px){.lg\:hidden{display:none}}
package/dist/ui.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),p=require("@headlessui/vue"),k={small:["h-5","w-5"],medium:["h-7","w-7"],large:["h-10","w-10"]},w=e.createElementVNode("circle",{stroke:"currentColor",class:"opacity-25","stroke-width":"4",cx:"12",cy:"12",r:"10"},null,-1),x=e.createElementVNode("path",{class:"opacity-75",fill:"currentColor",d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962
2
- 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`},null,-1),B=[w,x],v=e.defineComponent({__name:"AppLoader",props:{size:{default:"medium"}},setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([e.unref(k)[t.size],"animate-spin"]),xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none"},B,2))}}),b={class:"app-button__icon h-4"},C=e.defineComponent({__name:"ButtonIconSlot",props:{loading:{type:Boolean}},setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("span",b,[t.loading?(e.openBlock(),e.createBlock(v,{key:0,class:"w-4"})):e.renderSlot(n.$slots,"default",{key:1},void 0,!0)]))}});const M=(t,n)=>{const l=t.__vccOpts||t;for(const[o,a]of n)l[o]=a;return l},_=M(C,[["__scopeId","data-v-04d5f165"]]),E={primary:["text-white","bg-primary","border-transparent","enabled:hover:bg-primary-active"],secondary:["text-primary","bg-transparent","border-primary","enabled:hover:text-white","enabled:hover:bg-primary"]},N={small:["px-5","py-2"],medium:["px-5","py-3"],large:["px-5","py-4"]},V=["type","disabled"],$=e.defineComponent({__name:"AppButton",props:{size:{default:"medium"},type:{default:"button"},colorType:{default:"primary"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("button",{type:t.type,disabled:t.disabled||t.loading,class:e.normalizeClass([[...e.unref(E)[t.colorType],...e.unref(N)[t.size]],"app-button inline-flex items-center whitespace-nowrap rounded-lg border text-sm font-semibold focus:outline-none disabled:cursor-not-allowed disabled:select-none"])},[n.$slots.leadingIcon||t.loading?(e.openBlock(),e.createBlock(_,{key:0,loading:t.loading,class:"mr-3","data-test-leading-icon":""},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"leadingIcon")]),_:3},8,["loading"])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default"),n.$slots.trailingIcon?(e.openBlock(),e.createBlock(_,{key:1,class:"ml-3","data-test-trailing-icon":""},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"trailingIcon")]),_:3})):e.createCommentVNode("",!0)],10,V))}}),r={navigationItems:e.ref([]),mainMenuOpen:e.ref(!1),mobileMenuOpen:e.ref(!1),navigationComponent:e.shallowRef("a"),logo:e.ref(null)};function d(){function t(s){r.navigationItems.value=s}function n(s){r.navigationComponent.value=s}function l(s){r.logo.value=s}function o(){r.mainMenuOpen.value=!0}function a(){r.mainMenuOpen.value=!1}function i(){r.mainMenuOpen.value=!r.mainMenuOpen.value}function m(){r.mobileMenuOpen.value=!0}function h(){r.mobileMenuOpen.value=!1}function u(){r.mobileMenuOpen.value=!r.mobileMenuOpen.value}return{...r,setNavigationItems:t,setNavigationComponent:n,setLogo:l,openMainMenu:o,closeMainMenu:a,toggleMainMenu:i,openMobileMenu:m,closeMobileMenu:h,toggleMobileMenu:u}}const c={layoutImage:e.ref(null),colors:{primaryColor:e.ref(null),primaryColorActive:e.ref(null),secondaryColor:e.ref(null),secondaryColorActive:e.ref(null)}};function g(){function t(o){c.layoutImage.value=o}function n(o,a){c.colors.primaryColor.value=o,c.colors.primaryColorActive.value=a,document.documentElement.style.setProperty("--color-primary",o),document.documentElement.style.setProperty("--color-primary-active",a)}function l(o,a){c.colors.secondaryColor.value=o,c.colors.secondaryColorActive.value=a,document.documentElement.style.setProperty("--color-secondary",o),document.documentElement.style.setProperty("--color-secondary-active",a)}return{...c,setLayoutImage:t,setPrimaryColors:n,setSecondaryColors:l}}function I(t,n){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M3.75 6.75h16.5M3.75 12h16.5m-16.5 5.25h16.5"})])}function z(t,n){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9 5.25h.008v.008H12v-.008z"})])}function O(t,n){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})])}const S={class:"pl-7 text-lg font-semibold text-zinc-900 md:hidden"},f=e.defineComponent({__name:"NavigationItem",props:{item:null},setup(t){const{navigationComponent:n}=d();return(l,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),{to:t.item.to,class:"flex h-10 w-full cursor-pointer items-center rounded-lg text-center hover:bg-primary md:w-10 md:justify-center"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.item.icon),{class:"h-5 w-5 text-zinc-900 md:text-white","data-test-icon":""})),e.createElementVNode("span",S,e.toDisplayString(t.item.name),1)]),_:1},8,["to"]))}}),L={class:"flex items-center justify-between bg-zinc-50 p-2 text-black md:hidden"},A=["innerHTML"],j=e.createElementVNode("div",null," avatar ",-1),P={class:"relative flex h-full w-full flex-1 flex-col bg-white focus:outline-none","data-test-navigation-wrapper":""},T={class:"h-0 flex-1 overflow-y-auto p-4","data-test-navigation-links-wrapper":""},D={"aria-label":"MainMenu",class:"mt-5"},H={class:"mb-auto"},q=e.defineComponent({__name:"Mobile",setup(t){const{logo:n,navigationItems:l,mobileMenuOpen:o,toggleMobileMenu:a,closeMobileMenu:i}=d(),m=e.computed(()=>o.value?O:I);return(h,u)=>(e.openBlock(),e.createElementBlock("div",L,[e.createElementVNode("div",{class:"inline-flex cursor-pointer items-center justify-center rounded-sm !p-2 hover:text-primary focus:outline-none","data-test-menu-icon-wrapper":"",onClick:u[0]||(u[0]=(...s)=>e.unref(a)&&e.unref(a)(...s))},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(m)),{class:"block h-6 w-6 text-black","aria-hidden":"true"}))]),e.createElementVNode("div",{"data-test-logo-wrapper":"",innerHTML:e.unref(n)},null,8,A),j,e.createVNode(e.unref(p.TransitionRoot),{show:e.unref(o),as:"template"},{default:e.withCtx(()=>[e.createVNode(e.unref(p.Dialog),{as:"div",class:"fixed inset-0 top-14 z-50 flex lg:hidden",onClose:e.unref(i)},{default:e.withCtx(()=>[e.createVNode(e.unref(p.TransitionChild),{as:"template",enter:"transition ease-in-out duration-300 transform","enter-from":"translate-y-full","enter-to":"translate-y-0",leave:"transition ease-in-out duration-300 transform","leave-from":"translate-y-0","leave-to":"translate-y-full"},{default:e.withCtx(()=>[e.createElementVNode("div",P,[e.createElementVNode("div",T,[e.createElementVNode("nav",D,[e.createElementVNode("ul",H,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),s=>(e.openBlock(),e.createElementBlock("li",{key:s.name,"data-test-navigation-item":""},[e.createVNode(f,{item:s},null,8,["item"])]))),128))])])])])]),_:1})]),_:1},8,["onClose"])]),_:1},8,["show"])]))}}),F={class:"mx-auto mb-auto"},R={class:"mx-auto mt-auto"},y=e.defineComponent({__name:"AppNavigationMenu",setup(t){const{navigationItems:n,mainMenuOpen:l}=d();return(o,a)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("aside",{class:e.normalizeClass([{"px-3 md:!w-20":e.unref(l)},"sticky hidden h-screen w-0 flex-col justify-center overflow-hidden py-5 transition-all duration-500 md:flex"]),"data-test-main-menu":""},[e.createElementVNode("ul",F,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n),i=>(e.openBlock(),e.createElementBlock("li",{key:i.name,"data-test-navigation-item":""},[e.createVNode(f,{item:i},null,8,["item"])]))),128))]),e.createElementVNode("ul",R,[e.createElementVNode("li",null,[e.createVNode(f,{item:{name:"help",to:"/",icon:e.unref(z)}},null,8,["item"])])])],2),e.createVNode(q)]))}}),G={class:"flex min-h-screen flex-col md:flex-row md:bg-secondary"},J={class:"flex h-full grow items-center justify-center bg-white px-10 transition-all md:h-auto md:w-1/2 md:grow-0 md:rounded-l-2xl md:px-24"},K={class:"mx-auto md:max-w-lg"},Q={class:"hidden w-1/2 md:block","data-test-layout-image-wrapper":""},U=["src"],W=e.defineComponent({__name:"Auth",setup(t){const{layoutImage:n}=g();return(l,o)=>(e.openBlock(),e.createElementBlock("div",G,[e.createVNode(e.unref(y)),e.createElementVNode("main",J,[e.createElementVNode("div",K,[e.renderSlot(l.$slots,"default")])]),e.createElementVNode("div",Q,[e.unref(n)?(e.openBlock(),e.createElementBlock("img",{key:0,src:e.unref(n),class:"h-screen w-full object-fill"},null,8,U)):e.createCommentVNode("",!0)])]))}});exports.AppButton=$;exports.AppLoader=v;exports.AppNavigationMenu=y;exports.AuthLayout=W;exports.useLayout=g;exports.useNavigation=d;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),p=require("@headlessui/vue"),w={small:["h-5","w-5"],medium:["h-7","w-7"],large:["h-10","w-10"]},x=e.createElementVNode("circle",{stroke:"currentColor",class:"opacity-25","stroke-width":"4",cx:"12",cy:"12",r:"10"},null,-1),b=e.createElementVNode("path",{class:"opacity-75",fill:"currentColor",d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962
2
+ 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`},null,-1),C=[x,b],g=e.defineComponent({__name:"AppLoader",props:{size:{default:"medium"}},setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([e.unref(w)[t.size],"animate-spin"]),xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none"},C,2))}}),B={class:"app-button__icon h-4"},N=e.defineComponent({__name:"ButtonIconSlot",props:{loading:{type:Boolean}},setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock("span",B,[t.loading?(e.openBlock(),e.createBlock(g,{key:0,class:"w-4"})):e.renderSlot(n.$slots,"default",{key:1},void 0,!0)]))}});const M=(t,n)=>{const o=t.__vccOpts||t;for(const[a,l]of n)o[a]=l;return o},v=M(N,[["__scopeId","data-v-04d5f165"]]),E={plain:["text-primary","border-0"],primary:["text-white","bg-primary","border-transparent","enabled:hover:bg-primary-active"],secondary:["text-primary","bg-transparent","border-primary","enabled:hover:text-white","enabled:hover:bg-primary"]},V={small:["px-5","py-2"],medium:["px-5","py-3"],large:["px-5","py-4"]},$=["type","disabled"],I=e.defineComponent({__name:"AppButton",props:{size:{default:"medium"},type:{default:"button"},colorType:{default:"primary"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock("button",{type:t.type,disabled:t.disabled||t.loading,class:e.normalizeClass([[...e.unref(E)[t.colorType],...e.unref(V)[t.size]],"app-button inline-flex items-center whitespace-nowrap rounded-lg border text-sm font-semibold transition-colors focus:outline-none disabled:cursor-not-allowed disabled:select-none disabled:opacity-50"])},[n.$slots.leadingIcon||t.loading?(e.openBlock(),e.createBlock(v,{key:0,loading:t.loading,class:"mr-3","data-test-leading-icon":""},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"leadingIcon")]),_:3},8,["loading"])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default"),n.$slots.trailingIcon?(e.openBlock(),e.createBlock(v,{key:1,class:"ml-3","data-test-trailing-icon":""},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"trailingIcon")]),_:3})):e.createCommentVNode("",!0)],10,$))}}),s={navigationItems:e.ref([]),mainMenuOpen:e.ref(!1),mobileMenuOpen:e.ref(!1),navigationComponent:e.shallowRef("a"),logo:e.ref(null),contactRoute:e.ref()};function u(){function t(i){s.navigationItems.value=e.isRef(i)?i==null?void 0:i.value:i}function n(i){s.navigationComponent.value=i}function o(i){s.logo.value=i}function a(){s.mainMenuOpen.value=!0}function l(){s.mainMenuOpen.value=!1}function r(){s.mainMenuOpen.value=!s.mainMenuOpen.value}function m(){s.mobileMenuOpen.value=!0}function y(){s.mobileMenuOpen.value=!1}function d(){s.mobileMenuOpen.value=!s.mobileMenuOpen.value}return{...s,setNavigationItems:t,setNavigationComponent:n,setLogo:o,openMainMenu:a,closeMainMenu:l,toggleMainMenu:r,openMobileMenu:m,closeMobileMenu:y,toggleMobileMenu:d}}const c={layoutImage:e.ref(null),colors:{primaryColor:e.ref(null),primaryColorActive:e.ref(null),secondaryColor:e.ref(null),secondaryColorActive:e.ref(null)}};function _(){function t(a){c.layoutImage.value=a}function n(a,l){c.colors.primaryColor.value=a,c.colors.primaryColorActive.value=l,document.documentElement.style.setProperty("--color-primary",a),document.documentElement.style.setProperty("--color-primary-active",l)}function o(a,l){c.colors.secondaryColor.value=a,c.colors.secondaryColorActive.value=l,document.documentElement.style.setProperty("--color-secondary",a),document.documentElement.style.setProperty("--color-secondary-active",l)}return{...c,setLayoutImage:t,setPrimaryColors:n,setSecondaryColors:o}}function z(t,n){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M3.75 6.75h16.5M3.75 12h16.5m-16.5 5.25h16.5"})])}function S(t,n){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})])}const O={class:"pl-7 text-lg font-semibold text-zinc-900 md:hidden","data-test-name":""},f=e.defineComponent({__name:"NavigationItem",props:{item:null},setup(t){const n=t,{navigationComponent:o}=u(),a=e.computed(()=>typeof n.item.icon!="string");return(l,r)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(o)),{to:t.item.to,href:t.item.href,class:e.normalizeClass([{"md:bg-primary":t.item.active??!1,"!rounded-full":t.item.rounded??!1,"mb-2":!t.item.bottom,"mt-2":t.item.bottom??!1},"flex h-10 w-full cursor-pointer items-center rounded-lg text-center transition-colors md:w-10 md:justify-center md:hover:bg-primary-active"]),onClick:t.item.onClick},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(a)?t.item.icon:"span"),{class:e.normalizeClass([{"!h-6":!e.unref(a)},"h-4 w-4 text-zinc-900 md:text-white"]),"data-test-icon":""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.item.icon),1)]),_:1},8,["class"])),e.createElementVNode("span",O,e.toDisplayString(t.item.name),1)]),_:1},8,["to","href","class","onClick"]))}}),h=e.defineComponent({__name:"SupportItem",setup(t){const{contactRoute:n,navigationComponent:o}=u();return(a,l)=>e.unref(n)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(o)),{key:0,to:e.unref(o)!=="a"?e.unref(n):void 0,href:e.unref(o)?e.unref(n):void 0,class:"fixed bottom-5 right-5 z-50 flex h-10 w-10 justify-center rounded-full bg-primary py-2 text-white transition-colors hover:bg-primary-active","data-test-help-icon":""},{default:e.withCtx(()=>[e.createTextVNode(" ? ")]),_:1},8,["to","href"])):e.createCommentVNode("",!0)}}),L={class:"flex items-center justify-between bg-zinc-50 px-2 py-4 text-black md:hidden"},A=["innerHTML"],j=e.createElementVNode("div",{class:"w-1/3"},null,-1),T={class:"relative flex h-full w-full flex-1 flex-col bg-white focus:outline-none","data-test-navigation-wrapper":""},P={class:"h-0 flex-1 overflow-y-auto p-4","data-test-navigation-links-wrapper":""},D={"aria-label":"MainMenu",class:"mt-5"},R={class:"mb-auto"},F=e.defineComponent({__name:"Mobile",setup(t){const{logo:n,navigationItems:o,mobileMenuOpen:a,toggleMobileMenu:l,closeMobileMenu:r}=u(),m=e.computed(()=>a.value?S:z);return(y,d)=>(e.openBlock(),e.createElementBlock("div",L,[e.createElementVNode("div",{class:"inline-flex w-1/3 cursor-pointer items-center justify-start rounded-sm !p-2 hover:text-primary focus:outline-none","data-test-menu-icon-wrapper":"",onClick:d[0]||(d[0]=(...i)=>e.unref(l)&&e.unref(l)(...i))},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(m)),{class:"block h-6 w-6 text-black","aria-hidden":"true"}))]),e.createElementVNode("div",{class:"w-1/3","data-test-logo-wrapper":"",innerHTML:e.unref(n)},null,8,A),j,e.createVNode(e.unref(p.TransitionRoot),{show:e.unref(a),as:"template"},{default:e.withCtx(()=>[e.createVNode(e.unref(p.Dialog),{as:"div",class:"fixed inset-0 top-20 z-50 flex -translate-y-2 lg:hidden",onClose:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(e.unref(p.TransitionChild),{as:"template",enter:"transition ease-in-out duration-300 transform","enter-from":"translate-y-full","enter-to":"translate-y-0",leave:"transition ease-in-out duration-300 transform","leave-from":"translate-y-0","leave-to":"translate-y-full"},{default:e.withCtx(()=>[e.createElementVNode("div",T,[e.createElementVNode("div",P,[e.createElementVNode("nav",D,[e.createElementVNode("ul",R,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),i=>(e.openBlock(),e.createElementBlock("li",{key:i.name,"data-test-navigation-item":""},[e.createVNode(f,{item:i},null,8,["item"])]))),128))])]),e.createVNode(h)])])]),_:1})]),_:1},8,["onClose"])]),_:1},8,["show"]),e.createVNode(h)]))}}),H={class:"mx-auto mb-auto"},q={class:"mx-auto mt-auto"},k=e.defineComponent({__name:"AppNavigationMenu",setup(t){const{navigationItems:n,mainMenuOpen:o}=u();return(a,l)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("aside",{class:e.normalizeClass([{"px-3 md:!w-20":e.unref(o)},"sticky top-0 hidden h-screen w-0 flex-col justify-center overflow-hidden py-5 transition-all duration-500 md:flex"]),"data-test-main-menu":""},[e.createElementVNode("ul",H,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).filter(r=>r.bottom!==!0),r=>(e.openBlock(),e.createElementBlock("li",{key:r.name,"data-test-top-navigation-item":""},[e.createVNode(f,{item:r},null,8,["item"])]))),128))]),e.createElementVNode("ul",q,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).filter(r=>r.bottom),r=>(e.openBlock(),e.createElementBlock("li",{key:r.name,"data-test-bottom-navigation-item":""},[e.createVNode(f,{item:r},null,8,["item"])]))),128)),e.createElementVNode("li",null,[e.createVNode(h,{class:"!static"})])])],2),e.createVNode(F)]))}}),G={class:"flex min-h-screen flex-col md:flex-row md:bg-secondary"},J={class:"flex h-full grow items-center justify-center bg-white px-10 transition-all md:h-auto md:w-1/2 md:grow-0 md:rounded-l-2xl md:px-24"},K={class:"mx-auto md:max-w-lg"},Q={class:"hidden w-1/2 md:block","data-test-layout-image-wrapper":""},U=["src"],W=e.defineComponent({__name:"Auth",setup(t){const{layoutImage:n}=_();return(o,a)=>(e.openBlock(),e.createElementBlock("div",G,[e.createVNode(e.unref(k)),e.createElementVNode("main",J,[e.createElementVNode("div",K,[e.renderSlot(o.$slots,"default")])]),e.createElementVNode("div",Q,[e.unref(n)?(e.openBlock(),e.createElementBlock("img",{key:0,src:e.unref(n),class:"h-screen w-full object-fill"},null,8,U)):e.createCommentVNode("",!0)])]))}});exports.AppButton=I;exports.AppLoader=g;exports.AppNavigationMenu=k;exports.AuthLayout=W;exports.useLayout=_;exports.useNavigation=u;
package/dist/ui.js CHANGED
@@ -1,57 +1,61 @@
1
- import { defineComponent as p, openBlock as a, createElementBlock as i, normalizeClass as C, unref as n, createElementVNode as o, createBlock as v, renderSlot as g, withCtx as h, createCommentVNode as x, ref as d, shallowRef as O, resolveDynamicComponent as b, toDisplayString as A, computed as L, createVNode as m, Fragment as z, renderList as B } from "vue";
2
- import { TransitionRoot as j, Dialog as N, TransitionChild as P } from "@headlessui/vue";
3
- const S = {
1
+ import { defineComponent as h, openBlock as o, createElementBlock as r, normalizeClass as _, unref as n, createElementVNode as s, createBlock as y, renderSlot as v, withCtx as f, createCommentVNode as b, ref as p, shallowRef as j, isRef as S, computed as L, resolveDynamicComponent as x, createTextVNode as N, toDisplayString as O, createVNode as m, Fragment as k, renderList as $ } from "vue";
2
+ import { TransitionRoot as P, Dialog as T, TransitionChild as E } from "@headlessui/vue";
3
+ const R = {
4
4
  small: ["h-5", "w-5"],
5
5
  medium: ["h-7", "w-7"],
6
6
  large: ["h-10", "w-10"]
7
- }, T = /* @__PURE__ */ o("circle", {
7
+ }, V = /* @__PURE__ */ s("circle", {
8
8
  stroke: "currentColor",
9
9
  class: "opacity-25",
10
10
  "stroke-width": "4",
11
11
  cx: "12",
12
12
  cy: "12",
13
13
  r: "10"
14
- }, null, -1), E = /* @__PURE__ */ o("path", {
14
+ }, null, -1), D = /* @__PURE__ */ s("path", {
15
15
  class: "opacity-75",
16
16
  fill: "currentColor",
17
17
  d: `M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962
18
18
  7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`
19
19
  }, null, -1), H = [
20
- T,
21
- E
22
- ], V = /* @__PURE__ */ p({
20
+ V,
21
+ D
22
+ ], F = /* @__PURE__ */ h({
23
23
  __name: "AppLoader",
24
24
  props: {
25
25
  size: { default: "medium" }
26
26
  },
27
27
  setup(e) {
28
- return (t, s) => (a(), i("svg", {
29
- class: C([n(S)[e.size], "animate-spin"]),
28
+ return (t, a) => (o(), r("svg", {
29
+ class: _([n(R)[e.size], "animate-spin"]),
30
30
  xmlns: "http://www.w3.org/2000/svg",
31
31
  viewBox: "0 0 24 24",
32
32
  fill: "none"
33
33
  }, H, 2));
34
34
  }
35
- }), D = { class: "app-button__icon h-4" }, R = /* @__PURE__ */ p({
35
+ }), q = { class: "app-button__icon h-4" }, G = /* @__PURE__ */ h({
36
36
  __name: "ButtonIconSlot",
37
37
  props: {
38
38
  loading: { type: Boolean }
39
39
  },
40
40
  setup(e) {
41
- return (t, s) => (a(), i("span", D, [
42
- e.loading ? (a(), v(V, {
41
+ return (t, a) => (o(), r("span", q, [
42
+ e.loading ? (o(), y(F, {
43
43
  key: 0,
44
44
  class: "w-4"
45
- })) : g(t.$slots, "default", { key: 1 }, void 0, !0)
45
+ })) : v(t.$slots, "default", { key: 1 }, void 0, !0)
46
46
  ]));
47
47
  }
48
48
  });
49
- const F = (e, t) => {
50
- const s = e.__vccOpts || e;
51
- for (const [l, r] of t)
52
- s[l] = r;
53
- return s;
54
- }, I = /* @__PURE__ */ F(R, [["__scopeId", "data-v-04d5f165"]]), q = {
49
+ const J = (e, t) => {
50
+ const a = e.__vccOpts || e;
51
+ for (const [l, i] of t)
52
+ a[l] = i;
53
+ return a;
54
+ }, A = /* @__PURE__ */ J(G, [["__scopeId", "data-v-04d5f165"]]), K = {
55
+ plain: [
56
+ "text-primary",
57
+ "border-0"
58
+ ],
55
59
  primary: [
56
60
  "text-white",
57
61
  "bg-primary",
@@ -65,11 +69,11 @@ const F = (e, t) => {
65
69
  "enabled:hover:text-white",
66
70
  "enabled:hover:bg-primary"
67
71
  ]
68
- }, G = {
72
+ }, Q = {
69
73
  small: ["px-5", "py-2"],
70
74
  medium: ["px-5", "py-3"],
71
75
  large: ["px-5", "py-4"]
72
- }, J = ["type", "disabled"], he = /* @__PURE__ */ p({
76
+ }, U = ["type", "disabled"], ve = /* @__PURE__ */ h({
73
77
  __name: "AppButton",
74
78
  props: {
75
79
  size: { default: "medium" },
@@ -79,114 +83,115 @@ const F = (e, t) => {
79
83
  loading: { type: Boolean, default: !1 }
80
84
  },
81
85
  setup(e) {
82
- return (t, s) => (a(), i("button", {
86
+ return (t, a) => (o(), r("button", {
83
87
  type: e.type,
84
88
  disabled: e.disabled || e.loading,
85
- class: C([[
86
- ...n(q)[e.colorType],
87
- ...n(G)[e.size]
88
- ], "app-button inline-flex items-center whitespace-nowrap rounded-lg border text-sm font-semibold focus:outline-none disabled:cursor-not-allowed disabled:select-none"])
89
+ class: _([[
90
+ ...n(K)[e.colorType],
91
+ ...n(Q)[e.size]
92
+ ], "app-button inline-flex items-center whitespace-nowrap rounded-lg border text-sm font-semibold transition-colors focus:outline-none disabled:cursor-not-allowed disabled:select-none disabled:opacity-50"])
89
93
  }, [
90
- t.$slots.leadingIcon || e.loading ? (a(), v(I, {
94
+ t.$slots.leadingIcon || e.loading ? (o(), y(A, {
91
95
  key: 0,
92
96
  loading: e.loading,
93
97
  class: "mr-3",
94
98
  "data-test-leading-icon": ""
95
99
  }, {
96
- default: h(() => [
97
- g(t.$slots, "leadingIcon")
100
+ default: f(() => [
101
+ v(t.$slots, "leadingIcon")
98
102
  ]),
99
103
  _: 3
100
- }, 8, ["loading"])) : x("", !0),
101
- g(t.$slots, "default"),
102
- t.$slots.trailingIcon ? (a(), v(I, {
104
+ }, 8, ["loading"])) : b("", !0),
105
+ v(t.$slots, "default"),
106
+ t.$slots.trailingIcon ? (o(), y(A, {
103
107
  key: 1,
104
108
  class: "ml-3",
105
109
  "data-test-trailing-icon": ""
106
110
  }, {
107
- default: h(() => [
108
- g(t.$slots, "trailingIcon")
111
+ default: f(() => [
112
+ v(t.$slots, "trailingIcon")
109
113
  ]),
110
114
  _: 3
111
- })) : x("", !0)
112
- ], 10, J));
115
+ })) : b("", !0)
116
+ ], 10, U));
113
117
  }
114
- }), c = {
115
- navigationItems: d([]),
116
- mainMenuOpen: d(!1),
117
- mobileMenuOpen: d(!1),
118
- navigationComponent: O("a"),
119
- logo: d(null)
118
+ }), d = {
119
+ navigationItems: p([]),
120
+ mainMenuOpen: p(!1),
121
+ mobileMenuOpen: p(!1),
122
+ navigationComponent: j("a"),
123
+ logo: p(null),
124
+ contactRoute: p()
120
125
  };
121
- function k() {
126
+ function M() {
122
127
  function e(u) {
123
- c.navigationItems.value = u;
128
+ d.navigationItems.value = S(u) ? u == null ? void 0 : u.value : u;
124
129
  }
125
130
  function t(u) {
126
- c.navigationComponent.value = u;
131
+ d.navigationComponent.value = u;
127
132
  }
128
- function s(u) {
129
- c.logo.value = u;
133
+ function a(u) {
134
+ d.logo.value = u;
130
135
  }
131
136
  function l() {
132
- c.mainMenuOpen.value = !0;
137
+ d.mainMenuOpen.value = !0;
133
138
  }
134
- function r() {
135
- c.mainMenuOpen.value = !1;
139
+ function i() {
140
+ d.mainMenuOpen.value = !1;
136
141
  }
137
- function f() {
138
- c.mainMenuOpen.value = !c.mainMenuOpen.value;
142
+ function c() {
143
+ d.mainMenuOpen.value = !d.mainMenuOpen.value;
139
144
  }
140
- function w() {
141
- c.mobileMenuOpen.value = !0;
145
+ function C() {
146
+ d.mobileMenuOpen.value = !0;
142
147
  }
143
- function $() {
144
- c.mobileMenuOpen.value = !1;
148
+ function B() {
149
+ d.mobileMenuOpen.value = !1;
145
150
  }
146
- function y() {
147
- c.mobileMenuOpen.value = !c.mobileMenuOpen.value;
151
+ function w() {
152
+ d.mobileMenuOpen.value = !d.mobileMenuOpen.value;
148
153
  }
149
154
  return {
150
- ...c,
155
+ ...d,
151
156
  setNavigationItems: e,
152
157
  setNavigationComponent: t,
153
- setLogo: s,
158
+ setLogo: a,
154
159
  openMainMenu: l,
155
- closeMainMenu: r,
156
- toggleMainMenu: f,
157
- openMobileMenu: w,
158
- closeMobileMenu: $,
159
- toggleMobileMenu: y
160
+ closeMainMenu: i,
161
+ toggleMainMenu: c,
162
+ openMobileMenu: C,
163
+ closeMobileMenu: B,
164
+ toggleMobileMenu: w
160
165
  };
161
166
  }
162
- const _ = {
163
- layoutImage: d(null),
167
+ const g = {
168
+ layoutImage: p(null),
164
169
  colors: {
165
- primaryColor: d(null),
166
- primaryColorActive: d(null),
167
- secondaryColor: d(null),
168
- secondaryColorActive: d(null)
170
+ primaryColor: p(null),
171
+ primaryColorActive: p(null),
172
+ secondaryColor: p(null),
173
+ secondaryColorActive: p(null)
169
174
  }
170
175
  };
171
- function K() {
176
+ function W() {
172
177
  function e(l) {
173
- _.layoutImage.value = l;
178
+ g.layoutImage.value = l;
174
179
  }
175
- function t(l, r) {
176
- _.colors.primaryColor.value = l, _.colors.primaryColorActive.value = r, document.documentElement.style.setProperty("--color-primary", l), document.documentElement.style.setProperty("--color-primary-active", r);
180
+ function t(l, i) {
181
+ g.colors.primaryColor.value = l, g.colors.primaryColorActive.value = i, document.documentElement.style.setProperty("--color-primary", l), document.documentElement.style.setProperty("--color-primary-active", i);
177
182
  }
178
- function s(l, r) {
179
- _.colors.secondaryColor.value = l, _.colors.secondaryColorActive.value = r, document.documentElement.style.setProperty("--color-secondary", l), document.documentElement.style.setProperty("--color-secondary-active", r);
183
+ function a(l, i) {
184
+ g.colors.secondaryColor.value = l, g.colors.secondaryColorActive.value = i, document.documentElement.style.setProperty("--color-secondary", l), document.documentElement.style.setProperty("--color-secondary-active", i);
180
185
  }
181
186
  return {
182
- ..._,
187
+ ...g,
183
188
  setLayoutImage: e,
184
189
  setPrimaryColors: t,
185
- setSecondaryColors: s
190
+ setSecondaryColors: a
186
191
  };
187
192
  }
188
- function Q(e, t) {
189
- return a(), i("svg", {
193
+ function X(e, t) {
194
+ return o(), r("svg", {
190
195
  xmlns: "http://www.w3.org/2000/svg",
191
196
  fill: "none",
192
197
  viewBox: "0 0 24 24",
@@ -194,31 +199,15 @@ function Q(e, t) {
194
199
  stroke: "currentColor",
195
200
  "aria-hidden": "true"
196
201
  }, [
197
- o("path", {
202
+ s("path", {
198
203
  "stroke-linecap": "round",
199
204
  "stroke-linejoin": "round",
200
205
  d: "M3.75 6.75h16.5M3.75 12h16.5m-16.5 5.25h16.5"
201
206
  })
202
207
  ]);
203
208
  }
204
- function U(e, t) {
205
- return a(), i("svg", {
206
- xmlns: "http://www.w3.org/2000/svg",
207
- fill: "none",
208
- viewBox: "0 0 24 24",
209
- "stroke-width": "1.5",
210
- stroke: "currentColor",
211
- "aria-hidden": "true"
212
- }, [
213
- o("path", {
214
- "stroke-linecap": "round",
215
- "stroke-linejoin": "round",
216
- d: "M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9 5.25h.008v.008H12v-.008z"
217
- })
218
- ]);
219
- }
220
- function W(e, t) {
221
- return a(), i("svg", {
209
+ function Y(e, t) {
210
+ return o(), r("svg", {
222
211
  xmlns: "http://www.w3.org/2000/svg",
223
212
  fill: "none",
224
213
  viewBox: "0 0 24 24",
@@ -226,82 +215,115 @@ function W(e, t) {
226
215
  stroke: "currentColor",
227
216
  "aria-hidden": "true"
228
217
  }, [
229
- o("path", {
218
+ s("path", {
230
219
  "stroke-linecap": "round",
231
220
  "stroke-linejoin": "round",
232
221
  d: "M6 18L18 6M6 6l12 12"
233
222
  })
234
223
  ]);
235
224
  }
236
- const X = { class: "pl-7 text-lg font-semibold text-zinc-900 md:hidden" }, M = /* @__PURE__ */ p({
225
+ const Z = {
226
+ class: "pl-7 text-lg font-semibold text-zinc-900 md:hidden",
227
+ "data-test-name": ""
228
+ }, I = /* @__PURE__ */ h({
237
229
  __name: "NavigationItem",
238
230
  props: {
239
231
  item: null
240
232
  },
241
233
  setup(e) {
242
- const { navigationComponent: t } = k();
243
- return (s, l) => (a(), v(b(n(t)), {
234
+ const t = e, { navigationComponent: a } = M(), l = L(() => typeof t.item.icon != "string");
235
+ return (i, c) => (o(), y(x(n(a)), {
244
236
  to: e.item.to,
245
- class: "flex h-10 w-full cursor-pointer items-center rounded-lg text-center hover:bg-primary md:w-10 md:justify-center"
237
+ href: e.item.href,
238
+ class: _([{
239
+ "md:bg-primary": e.item.active ?? !1,
240
+ "!rounded-full": e.item.rounded ?? !1,
241
+ "mb-2": !e.item.bottom,
242
+ "mt-2": e.item.bottom ?? !1
243
+ }, "flex h-10 w-full cursor-pointer items-center rounded-lg text-center transition-colors md:w-10 md:justify-center md:hover:bg-primary-active"]),
244
+ onClick: e.item.onClick
246
245
  }, {
247
- default: h(() => [
248
- (a(), v(b(e.item.icon), {
249
- class: "h-5 w-5 text-zinc-900 md:text-white",
246
+ default: f(() => [
247
+ (o(), y(x(n(l) ? e.item.icon : "span"), {
248
+ class: _([{ "!h-6": !n(l) }, "h-4 w-4 text-zinc-900 md:text-white"]),
250
249
  "data-test-icon": ""
251
- })),
252
- o("span", X, A(e.item.name), 1)
250
+ }, {
251
+ default: f(() => [
252
+ N(O(e.item.icon), 1)
253
+ ]),
254
+ _: 1
255
+ }, 8, ["class"])),
256
+ s("span", Z, O(e.item.name), 1)
253
257
  ]),
254
258
  _: 1
255
- }, 8, ["to"]));
259
+ }, 8, ["to", "href", "class", "onClick"]));
256
260
  }
257
- }), Y = { class: "flex items-center justify-between bg-zinc-50 p-2 text-black md:hidden" }, Z = ["innerHTML"], ee = /* @__PURE__ */ o("div", null, " avatar ", -1), te = {
261
+ }), z = /* @__PURE__ */ h({
262
+ __name: "SupportItem",
263
+ setup(e) {
264
+ const { contactRoute: t, navigationComponent: a } = M();
265
+ return (l, i) => n(t) ? (o(), y(x(n(a)), {
266
+ key: 0,
267
+ to: n(a) !== "a" ? n(t) : void 0,
268
+ href: n(a) ? n(t) : void 0,
269
+ class: "fixed bottom-5 right-5 z-50 flex h-10 w-10 justify-center rounded-full bg-primary py-2 text-white transition-colors hover:bg-primary-active",
270
+ "data-test-help-icon": ""
271
+ }, {
272
+ default: f(() => [
273
+ N(" ? ")
274
+ ]),
275
+ _: 1
276
+ }, 8, ["to", "href"])) : b("", !0);
277
+ }
278
+ }), ee = { class: "flex items-center justify-between bg-zinc-50 px-2 py-4 text-black md:hidden" }, te = ["innerHTML"], ne = /* @__PURE__ */ s("div", { class: "w-1/3" }, null, -1), oe = {
258
279
  class: "relative flex h-full w-full flex-1 flex-col bg-white focus:outline-none",
259
280
  "data-test-navigation-wrapper": ""
260
- }, ne = {
281
+ }, ae = {
261
282
  class: "h-0 flex-1 overflow-y-auto p-4",
262
283
  "data-test-navigation-links-wrapper": ""
263
- }, oe = {
284
+ }, le = {
264
285
  "aria-label": "MainMenu",
265
286
  class: "mt-5"
266
- }, ae = { class: "mb-auto" }, le = /* @__PURE__ */ p({
287
+ }, se = { class: "mb-auto" }, ie = /* @__PURE__ */ h({
267
288
  __name: "Mobile",
268
289
  setup(e) {
269
290
  const {
270
291
  logo: t,
271
- navigationItems: s,
292
+ navigationItems: a,
272
293
  mobileMenuOpen: l,
273
- toggleMobileMenu: r,
274
- closeMobileMenu: f
275
- } = k(), w = L(() => l.value ? W : Q);
276
- return ($, y) => (a(), i("div", Y, [
277
- o("div", {
278
- class: "inline-flex cursor-pointer items-center justify-center rounded-sm !p-2 hover:text-primary focus:outline-none",
294
+ toggleMobileMenu: i,
295
+ closeMobileMenu: c
296
+ } = M(), C = L(() => l.value ? Y : X);
297
+ return (B, w) => (o(), r("div", ee, [
298
+ s("div", {
299
+ class: "inline-flex w-1/3 cursor-pointer items-center justify-start rounded-sm !p-2 hover:text-primary focus:outline-none",
279
300
  "data-test-menu-icon-wrapper": "",
280
- onClick: y[0] || (y[0] = //@ts-ignore
281
- (...u) => n(r) && n(r)(...u))
301
+ onClick: w[0] || (w[0] = //@ts-ignore
302
+ (...u) => n(i) && n(i)(...u))
282
303
  }, [
283
- (a(), v(b(n(w)), {
304
+ (o(), y(x(n(C)), {
284
305
  class: "block h-6 w-6 text-black",
285
306
  "aria-hidden": "true"
286
307
  }))
287
308
  ]),
288
- o("div", {
309
+ s("div", {
310
+ class: "w-1/3",
289
311
  "data-test-logo-wrapper": "",
290
312
  innerHTML: n(t)
291
- }, null, 8, Z),
292
- ee,
293
- m(n(j), {
313
+ }, null, 8, te),
314
+ ne,
315
+ m(n(P), {
294
316
  show: n(l),
295
317
  as: "template"
296
318
  }, {
297
- default: h(() => [
298
- m(n(N), {
319
+ default: f(() => [
320
+ m(n(T), {
299
321
  as: "div",
300
- class: "fixed inset-0 top-14 z-50 flex lg:hidden",
301
- onClose: n(f)
322
+ class: "fixed inset-0 top-20 z-50 flex -translate-y-2 lg:hidden",
323
+ onClose: n(c)
302
324
  }, {
303
- default: h(() => [
304
- m(n(P), {
325
+ default: f(() => [
326
+ m(n(E), {
305
327
  as: "template",
306
328
  enter: "transition ease-in-out duration-300 transform",
307
329
  "enter-from": "translate-y-full",
@@ -310,19 +332,20 @@ const X = { class: "pl-7 text-lg font-semibold text-zinc-900 md:hidden" }, M = /
310
332
  "leave-from": "translate-y-0",
311
333
  "leave-to": "translate-y-full"
312
334
  }, {
313
- default: h(() => [
314
- o("div", te, [
315
- o("div", ne, [
316
- o("nav", oe, [
317
- o("ul", ae, [
318
- (a(!0), i(z, null, B(n(s), (u) => (a(), i("li", {
335
+ default: f(() => [
336
+ s("div", oe, [
337
+ s("div", ae, [
338
+ s("nav", le, [
339
+ s("ul", se, [
340
+ (o(!0), r(k, null, $(n(a), (u) => (o(), r("li", {
319
341
  key: u.name,
320
342
  "data-test-navigation-item": ""
321
343
  }, [
322
- m(M, { item: u }, null, 8, ["item"])
344
+ m(I, { item: u }, null, 8, ["item"])
323
345
  ]))), 128))
324
346
  ])
325
- ])
347
+ ]),
348
+ m(z)
326
349
  ])
327
350
  ])
328
351
  ]),
@@ -333,70 +356,71 @@ const X = { class: "pl-7 text-lg font-semibold text-zinc-900 md:hidden" }, M = /
333
356
  }, 8, ["onClose"])
334
357
  ]),
335
358
  _: 1
336
- }, 8, ["show"])
359
+ }, 8, ["show"]),
360
+ m(z)
337
361
  ]));
338
362
  }
339
- }), se = { class: "mx-auto mb-auto" }, ie = { class: "mx-auto mt-auto" }, re = /* @__PURE__ */ p({
363
+ }), re = { class: "mx-auto mb-auto" }, ce = { class: "mx-auto mt-auto" }, ue = /* @__PURE__ */ h({
340
364
  __name: "AppNavigationMenu",
341
365
  setup(e) {
342
- const { navigationItems: t, mainMenuOpen: s } = k();
343
- return (l, r) => (a(), i("div", null, [
344
- o("aside", {
345
- class: C([{ "px-3 md:!w-20": n(s) }, "sticky hidden h-screen w-0 flex-col justify-center overflow-hidden py-5 transition-all duration-500 md:flex"]),
366
+ const { navigationItems: t, mainMenuOpen: a } = M();
367
+ return (l, i) => (o(), r("div", null, [
368
+ s("aside", {
369
+ class: _([{ "px-3 md:!w-20": n(a) }, "sticky top-0 hidden h-screen w-0 flex-col justify-center overflow-hidden py-5 transition-all duration-500 md:flex"]),
346
370
  "data-test-main-menu": ""
347
371
  }, [
348
- o("ul", se, [
349
- (a(!0), i(z, null, B(n(t), (f) => (a(), i("li", {
350
- key: f.name,
351
- "data-test-navigation-item": ""
372
+ s("ul", re, [
373
+ (o(!0), r(k, null, $(n(t).filter((c) => c.bottom !== !0), (c) => (o(), r("li", {
374
+ key: c.name,
375
+ "data-test-top-navigation-item": ""
352
376
  }, [
353
- m(M, { item: f }, null, 8, ["item"])
377
+ m(I, { item: c }, null, 8, ["item"])
354
378
  ]))), 128))
355
379
  ]),
356
- o("ul", ie, [
357
- o("li", null, [
358
- m(M, {
359
- item: {
360
- name: "help",
361
- to: "/",
362
- icon: n(U)
363
- }
364
- }, null, 8, ["item"])
380
+ s("ul", ce, [
381
+ (o(!0), r(k, null, $(n(t).filter((c) => c.bottom), (c) => (o(), r("li", {
382
+ key: c.name,
383
+ "data-test-bottom-navigation-item": ""
384
+ }, [
385
+ m(I, { item: c }, null, 8, ["item"])
386
+ ]))), 128)),
387
+ s("li", null, [
388
+ m(z, { class: "!static" })
365
389
  ])
366
390
  ])
367
391
  ], 2),
368
- m(le)
392
+ m(ie)
369
393
  ]));
370
394
  }
371
- }), ce = { class: "flex min-h-screen flex-col md:flex-row md:bg-secondary" }, ue = { class: "flex h-full grow items-center justify-center bg-white px-10 transition-all md:h-auto md:w-1/2 md:grow-0 md:rounded-l-2xl md:px-24" }, de = { class: "mx-auto md:max-w-lg" }, me = {
395
+ }), de = { class: "flex min-h-screen flex-col md:flex-row md:bg-secondary" }, me = { class: "flex h-full grow items-center justify-center bg-white px-10 transition-all md:h-auto md:w-1/2 md:grow-0 md:rounded-l-2xl md:px-24" }, pe = { class: "mx-auto md:max-w-lg" }, fe = {
372
396
  class: "hidden w-1/2 md:block",
373
397
  "data-test-layout-image-wrapper": ""
374
- }, pe = ["src"], ve = /* @__PURE__ */ p({
398
+ }, he = ["src"], _e = /* @__PURE__ */ h({
375
399
  __name: "Auth",
376
400
  setup(e) {
377
- const { layoutImage: t } = K();
378
- return (s, l) => (a(), i("div", ce, [
379
- m(n(re)),
380
- o("main", ue, [
381
- o("div", de, [
382
- g(s.$slots, "default")
401
+ const { layoutImage: t } = W();
402
+ return (a, l) => (o(), r("div", de, [
403
+ m(n(ue)),
404
+ s("main", me, [
405
+ s("div", pe, [
406
+ v(a.$slots, "default")
383
407
  ])
384
408
  ]),
385
- o("div", me, [
386
- n(t) ? (a(), i("img", {
409
+ s("div", fe, [
410
+ n(t) ? (o(), r("img", {
387
411
  key: 0,
388
412
  src: n(t),
389
413
  class: "h-screen w-full object-fill"
390
- }, null, 8, pe)) : x("", !0)
414
+ }, null, 8, he)) : b("", !0)
391
415
  ])
392
416
  ]));
393
417
  }
394
418
  });
395
419
  export {
396
- he as AppButton,
397
- V as AppLoader,
398
- re as AppNavigationMenu,
399
- ve as AuthLayout,
400
- K as useLayout,
401
- k as useNavigation
420
+ ve as AppButton,
421
+ F as AppLoader,
422
+ ue as AppNavigationMenu,
423
+ _e as AuthLayout,
424
+ W as useLayout,
425
+ M as useNavigation
402
426
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@autoafleveren/ui",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist/*",
@@ -23,9 +23,8 @@
23
23
  "require": "./dist/icons.cjs",
24
24
  "types": "./dist/types/icons/index.d.ts"
25
25
  },
26
- "./dist/style.css": "./dist/style.css",
26
+ "./dist/ui.css": "./dist/ui.css",
27
27
  "./tailwind.config.js": "./tailwind.config.js",
28
- "./dist/config/nuxt.cjs": "./dist/config/nuxt.cjs",
29
28
  "./dist/config/eslint.cjs": "./dist/config/eslint.cjs",
30
29
  "./dist/config/tailwind/config.cjs": "./dist/config/tailwind/config.cjs"
31
30
  },
@@ -35,7 +34,7 @@
35
34
  "dev": "vite --port=80",
36
35
  "build:prepare": "rm -rf dist",
37
36
  "build": "yarn build:prepare && yarn build:ui && yarn build:icons && yarn build:config && yarn build:typescript && yarn build:css",
38
- "build:ui": "LIB_NAME=ui NODE_ENV=production vite build",
37
+ "build:ui": "LIB_NAME=ui NODE_ENV=production vite build && mv dist/style.css dist/ui.css",
39
38
  "build:icons": "LIB_NAME=icons NODE_ENV=production vite build",
40
39
  "build:config": "cp -R ./src/config dist/config",
41
40
  "build:typescript": "vue-tsc -p tsconfig.build.json && mv dist/src dist/types",
@@ -55,60 +54,60 @@
55
54
  },
56
55
  "packageManager": "yarn@4.0.0-rc.40",
57
56
  "dependencies": {
58
- "@headlessui/vue": "^1.7.12",
57
+ "@headlessui/vue": "^1.7.13",
59
58
  "@heroicons/vue": "^2.0.17",
60
59
  "@vitejs/plugin-vue": "^4.1.0",
61
60
  "autoprefixer": "^10.4.14",
62
61
  "tailwindcss": "^3.3.1",
63
- "vite": "^4.2.1",
62
+ "vite": "^4.3.1",
64
63
  "vue": "^3.2.47",
65
- "vue-docgen-api": "^4.64.1"
64
+ "vue-docgen-api": "^4.67.0"
66
65
  },
67
66
  "devDependencies": {
68
67
  "@babel/core": "^7.21.4",
69
68
  "@babel/preset-typescript": "^7.21.4",
70
69
  "@mdx-js/react": "^2.3.0",
71
- "@programic/eslint-plugin": "^6.1.0",
70
+ "@programic/eslint-plugin": "^6.2.0",
72
71
  "@rushstack/eslint-patch": "^1.2.0",
73
- "@storybook/addon-actions": "^7.0.3",
74
- "@storybook/addon-docs": "^7.0.3",
75
- "@storybook/addon-essentials": "^7.0.3",
76
- "@storybook/addon-interactions": "^7.0.3",
77
- "@storybook/addon-links": "^7.0.3",
72
+ "@storybook/addon-actions": "^7.0.6",
73
+ "@storybook/addon-docs": "^7.0.6",
74
+ "@storybook/addon-essentials": "^7.0.6",
75
+ "@storybook/addon-interactions": "^7.0.6",
76
+ "@storybook/addon-links": "^7.0.6",
78
77
  "@storybook/addon-postcss": "^2.0.0",
79
- "@storybook/addon-styling": "^1.0.0",
80
- "@storybook/addons": "^7.0.3",
81
- "@storybook/builder-vite": "^7.0.3",
82
- "@storybook/client-api": "^7.0.3",
83
- "@storybook/preview-web": "^7.0.3",
78
+ "@storybook/addon-styling": "^1.0.1",
79
+ "@storybook/addons": "^7.0.6",
80
+ "@storybook/builder-vite": "^7.0.6",
81
+ "@storybook/client-api": "^7.0.6",
82
+ "@storybook/preview-web": "^7.0.6",
84
83
  "@storybook/testing-library": "^0.1.0",
85
- "@storybook/theming": "^7.0.3",
86
- "@storybook/vue3": "^7.0.3",
87
- "@storybook/vue3-vite": "^7.0.3",
84
+ "@storybook/theming": "^7.0.6",
85
+ "@storybook/vue3": "^7.0.6",
86
+ "@storybook/vue3-vite": "^7.0.6",
88
87
  "@types/eslint": "^8.37.0",
89
88
  "@types/jsdom": "^21.1.1",
90
89
  "@types/node": "^18.15.11",
91
- "@types/react": "^18.0.35",
90
+ "@types/react": "^18.0.37",
92
91
  "@types/react-dom": "^18.0.11",
93
- "@typescript-eslint/eslint-plugin": "^5.57.1",
94
- "@typescript-eslint/parser": "^5.57.1",
92
+ "@typescript-eslint/eslint-plugin": "^5.59.1",
93
+ "@typescript-eslint/parser": "^5.59.1",
95
94
  "@vue/test-utils": "^2.3.2",
96
95
  "@vue/tsconfig": "^0.1.3",
97
96
  "babel-loader": "^9.1.2",
98
- "eslint": "^8.37.0",
97
+ "eslint": "^8.39.0",
99
98
  "eslint-config-airbnb-base": "^15.0.0",
100
99
  "eslint-import-resolver-typescript": "^3.5.5",
101
100
  "eslint-plugin-import": "^2.27.5",
102
101
  "eslint-plugin-import-newlines": "^1.3.1",
103
102
  "eslint-plugin-tailwindcss": "^3.11.0",
104
103
  "eslint-plugin-unicorn": "^46.0.0",
105
- "eslint-plugin-vitest": "^0.0.57",
106
- "eslint-plugin-vue": "^9.10.0",
104
+ "eslint-plugin-vitest": "^0.1.4",
105
+ "eslint-plugin-vue": "^9.11.0",
107
106
  "jsdom": "^21.1.1",
108
- "postcss": "^8.4.21",
107
+ "postcss": "^8.4.22",
109
108
  "react": "^18.2.0",
110
109
  "react-dom": "^18.2.0",
111
- "storybook": "^7.0.3",
110
+ "storybook": "^7.0.6",
112
111
  "storybook-dark-mode": "^3.0.0",
113
112
  "typescript": "^4.9.5",
114
113
  "vite-plugin-externals": "^0.6.2",
@@ -1,20 +0,0 @@
1
- module.exports = {
2
- typescript: {
3
- strict: true,
4
- },
5
-
6
- ignore: [
7
- '__tests__',
8
- ],
9
-
10
- css: [
11
- '~/assets/css/main.css',
12
- ],
13
-
14
- postcss: {
15
- plugins: {
16
- tailwindcss: {},
17
- autoprefixer: {},
18
- },
19
- },
20
- };
File without changes