srcdev-nuxt-components 7.0.0 → 7.0.1

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.
@@ -29,7 +29,7 @@
29
29
  </template>
30
30
 
31
31
  <script setup lang="ts">
32
- import type { AlertMaskConfig } from "../../types/components/alert-mask-core"
32
+ import type { AlertMaskConfig } from "../../types/components"
33
33
 
34
34
  const props = defineProps({
35
35
  config: Object as PropType<AlertMaskConfig>,
@@ -35,12 +35,8 @@
35
35
  </div>
36
36
  </template>
37
37
 
38
- <script lang="ts">
39
- export type MediaCanvas = "mobileCanvas" | "tabletCanvas" | "laptopCanvas" | "desktopCanvas" | "fullWidthCanvas"
40
- </script>
41
-
42
38
  <script setup lang="ts">
43
- // import type { MediaCanvas } from "@/types"
39
+ import type { MediaCanvas } from "../../types/components"
44
40
 
45
41
  const canvasName = defineModel<MediaCanvas>("canvasName")
46
42
 
@@ -65,29 +65,8 @@
65
65
  </section>
66
66
  </template>
67
67
 
68
- <script lang="ts">
69
- export interface CarouselBasicItem {
70
- id: number | string
71
- url: string
72
- alt: string
73
- }
74
-
75
- export interface CarouselModifiedItem {
76
- id: number | string
77
- url: string
78
- alt: string
79
- order: number
80
- }
81
-
82
- export interface ICarouselBasic {
83
- items: CarouselBasicItem[] | CarouselModifiedItem[]
84
- total: number
85
- skip: number
86
- limit: number
87
- }
88
- </script>
89
-
90
68
  <script setup lang="ts">
69
+ import type { CarouselBasicItem, CarouselModifiedItem, ICarouselBasic } from "../../types/components"
91
70
  import { useEventListener, useResizeObserver, useSwipe } from "@vueuse/core"
92
71
 
93
72
  const props = defineProps({
@@ -25,7 +25,7 @@
25
25
  </template>
26
26
 
27
27
  <script setup lang="ts">
28
- import type { ResponsiveHeaderNavItem } from "../../types"
28
+ import type { ResponsiveHeaderNavItem } from "../../types/components"
29
29
  const props = defineProps({
30
30
  tag: {
31
31
  type: String,
@@ -134,7 +134,10 @@ watch(
134
134
  left: calc(anchor(left) + 0px);
135
135
 
136
136
  opacity: 0;
137
- transition: opacity 200ms, display 200ms, overlay 200ms;
137
+ transition:
138
+ opacity 200ms,
139
+ display 200ms,
140
+ overlay 200ms;
138
141
  transition-behavior: allow-discrete;
139
142
 
140
143
  width: min(100%, 50vw);
@@ -17,7 +17,7 @@
17
17
 
18
18
  <script lang="ts">
19
19
  import DisplayChip from "../display-chip/DisplayChip.vue"
20
- import type { DisplayChipProps, DisplayChipConfig } from "../../types"
20
+ import type { DisplayChipProps, DisplayChipConfig } from "../../types/components"
21
21
  export interface AvatarProps {
22
22
  as?: any
23
23
  src?: string
@@ -6,30 +6,20 @@
6
6
  </component>
7
7
  </template>
8
8
 
9
- <script lang="ts">
10
- export interface DisplayChipConfig {
11
- size: string
12
- maskWidth: string
13
- offset: string
14
- angle: string
15
- icon?: string
16
- label?: string
17
- }
9
+ <script setup lang="ts">
10
+ import type { DisplayChipConfig } from "../../types/components"
18
11
 
19
- export interface DisplayChipProps {
12
+ interface DisplayChipProps {
20
13
  tag?: "div" | "span"
21
14
  shape?: "circle" | "square"
22
15
  config?: DisplayChipConfig
23
16
  styleClassPassthrough?: string | string[]
24
17
  }
25
18
 
26
- export interface ChipSlots {
19
+ interface ChipSlots {
27
20
  default(props?: {}): any
28
- // content(props?: {}): any
29
21
  }
30
- </script>
31
22
 
32
- <script setup lang="ts">
33
23
  const props = withDefaults(defineProps<DisplayChipProps>(), {
34
24
  tag: "div",
35
25
  shape: "circle",
@@ -54,7 +54,7 @@ import type {
54
54
  DisplayToastPosition,
55
55
  DisplayToastAlignment,
56
56
  ToastSlots,
57
- } from "../../types/components/display-toast.d"
57
+ } from "../../types/components"
58
58
 
59
59
  const props = withDefaults(defineProps<DisplayToastProps>(), {
60
60
  config: () => ({
@@ -29,7 +29,7 @@
29
29
  </template>
30
30
 
31
31
  <script setup lang="ts">
32
- import type { DisplayToastTheme } from "../../../types/components/display-toast.d"
32
+ import type { DisplayToastTheme } from "../../../types/components"
33
33
 
34
34
  interface DefaultToastContentProps {
35
35
  theme: DisplayToastTheme
@@ -53,23 +53,8 @@
53
53
  </div>
54
54
  </template>
55
55
 
56
- <script lang="ts">
57
- export interface IGalleryData {
58
- src: string
59
- alt: string
60
- stylist?: string
61
- title?: string
62
- category?: string
63
- description?: string
64
- thumbnail?: {
65
- title: string
66
- description: string
67
- }
68
- textBrightness: "light" | "dark"
69
- }
70
- </script>
71
-
72
56
  <script setup lang="ts">
57
+ import type { IGalleryData } from "../../types/components"
73
58
  const props = defineProps({
74
59
  autoRun: {
75
60
  type: Boolean,
@@ -301,7 +286,9 @@ onBeforeUnmount(() => {
301
286
  justify-content: center;
302
287
  color: var(--grayscale-text-body);
303
288
  opacity: 1;
304
- transition: display 0.5s, opacity 0.5s;
289
+ transition:
290
+ display 0.5s,
291
+ opacity 0.5s;
305
292
  transition-behavior: allow-discrete;
306
293
 
307
294
  &.galleryLoaded {
@@ -3,7 +3,7 @@
3
3
  </template>
4
4
 
5
5
  <script setup lang="ts">
6
- import type { QrCodeVariant } from "~/types/components/qr-code" // Adjust the import path as needed
6
+ import type { QrCodeVariant } from "../../types/components"
7
7
 
8
8
  const props = defineProps({
9
9
  qrValue: {
@@ -79,7 +79,7 @@
79
79
  </template>
80
80
 
81
81
  <script setup lang="ts">
82
- import type { ResponsiveHeaderState } from "@/types"
82
+ import type { ResponsiveHeaderState } from "../../types/components"
83
83
 
84
84
  const props = defineProps({
85
85
  mainNavigationState: {
@@ -5,7 +5,9 @@
5
5
  v-for="(navGroup, groupKey) in responsiveNavLinks"
6
6
  :key="groupKey"
7
7
  class="main-navigation-list"
8
- :ref="(el: Element | ComponentPublicInstance | null) => setNavRef(String(groupKey), el as HTMLUListElement | null)"
8
+ :ref="
9
+ (el: Element | ComponentPublicInstance | null) => setNavRef(String(groupKey), el as HTMLUListElement | null)
10
+ "
9
11
  >
10
12
  <li
11
13
  v-for="(link, localIndex) in navGroup"
@@ -105,45 +107,8 @@
105
107
  </div>
106
108
  </template>
107
109
 
108
- <script lang="ts">
109
- export interface ResponsiveHeaderNavItem {
110
- name: string
111
- path?: string
112
- isExternal?: boolean
113
- childLinks?: ResponsiveHeaderNavItem[]
114
- childLinksTitle?: string
115
- iconName?: string
116
- config?: ResponsiveHeaderItemRects
117
- }
118
-
119
- export interface ResponsiveHeaderProp {
120
- [key: string]: ResponsiveHeaderNavItem[]
121
- }
122
-
123
- export interface IFlooredRect {
124
- left: number
125
- right: number
126
- top: number
127
- bottom: number
128
- width: number
129
- height: number
130
- }
131
-
132
- export interface ResponsiveHeaderItemRects {
133
- left: number
134
- right: number
135
- width?: number
136
- visible: boolean
137
- }
138
-
139
- export interface ResponsiveHeaderState {
140
- hasSecondNav: boolean
141
- navListVisibility: Record<string, boolean>
142
- clonedNavLinks?: ResponsiveHeaderProp
143
- }
144
- </script>
145
-
146
110
  <script setup lang="ts">
111
+ import type { ResponsiveHeaderProp, ResponsiveHeaderState, IFlooredRect } from "../../types/components"
147
112
  import { useResizeObserver, onClickOutside } from "@vueuse/core"
148
113
 
149
114
  const props = defineProps({
@@ -528,7 +493,9 @@ watch(
528
493
  .main-navigation-item {
529
494
  /* width: var(--_main-navigation-item-width); */
530
495
  overflow: hidden;
531
- transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
496
+ transition:
497
+ opacity 0.2s ease-in-out,
498
+ visibility 0.2s ease-in-out;
532
499
  padding-block: var(--_link-focus-visible-outline-width);
533
500
  padding-inline: var(--_link-focus-visible-outline-width);
534
501
 
@@ -1,4 +1,4 @@
1
- import type { IFlooredRect } from "@/types"
1
+ import type { IFlooredRect } from "../types/components"
2
2
 
3
3
  export const useNavigationState = () => {
4
4
  // Simple reactive refs that persist across route changes using useState
@@ -0,0 +1 @@
1
+ export type MediaCanvas = "mobileCanvas" | "tabletCanvas" | "laptopCanvas" | "desktopCanvas" | "fullWidthCanvas"
@@ -0,0 +1,19 @@
1
+ export interface CarouselBasicItem {
2
+ id: number | string
3
+ url: string
4
+ alt: string
5
+ }
6
+
7
+ export interface CarouselModifiedItem {
8
+ id: number | string
9
+ url: string
10
+ alt: string
11
+ order: number
12
+ }
13
+
14
+ export interface ICarouselBasic {
15
+ items: CarouselBasicItem[] | CarouselModifiedItem[]
16
+ total: number
17
+ skip: number
18
+ limit: number
19
+ }
@@ -0,0 +1,8 @@
1
+ export interface DisplayChipConfig {
2
+ size: string
3
+ maskWidth: string
4
+ offset: string
5
+ angle: string
6
+ icon?: string
7
+ label?: string
8
+ }
@@ -0,0 +1,10 @@
1
+ // Export types from the components directory
2
+ export * from "./carousel-basic.d"
3
+ export * from "./slider-gallery.d"
4
+ export * from "./canvas-switcher.d"
5
+ export * from "./display-chip.d"
6
+ export * from "./tabs.d"
7
+ export * from "./responsive-header.d"
8
+ export * from "./display-toast.d"
9
+ export * from "./qr-code.d"
10
+ export * from "./alert-mask-core.d"
@@ -0,0 +1,35 @@
1
+ export interface ResponsiveHeaderNavItem {
2
+ name: string
3
+ path?: string
4
+ isExternal?: boolean
5
+ childLinks?: ResponsiveHeaderNavItem[]
6
+ childLinksTitle?: string
7
+ iconName?: string
8
+ config?: ResponsiveHeaderItemRects
9
+ }
10
+
11
+ export interface ResponsiveHeaderProp {
12
+ [key: string]: ResponsiveHeaderNavItem[]
13
+ }
14
+
15
+ export interface IFlooredRect {
16
+ left: number
17
+ right: number
18
+ top: number
19
+ bottom: number
20
+ width: number
21
+ height: number
22
+ }
23
+
24
+ export interface ResponsiveHeaderItemRects {
25
+ left: number
26
+ right: number
27
+ width?: number
28
+ visible: boolean
29
+ }
30
+
31
+ export interface ResponsiveHeaderState {
32
+ hasSecondNav: boolean
33
+ navListVisibility: Record<string, boolean>
34
+ clonedNavLinks?: ResponsiveHeaderProp
35
+ }
@@ -0,0 +1,13 @@
1
+ export interface IGalleryData {
2
+ src: string
3
+ alt: string
4
+ stylist?: string
5
+ title?: string
6
+ category?: string
7
+ description?: string
8
+ thumbnail?: {
9
+ title: string
10
+ description: string
11
+ }
12
+ textBrightness: "light" | "dark"
13
+ }
@@ -0,0 +1,5 @@
1
+ export interface ITabNav {
2
+ action?: string
3
+ name: string
4
+ path?: string
5
+ }
package/nuxt.config.ts CHANGED
@@ -42,5 +42,6 @@ export default defineNuxtConfig({
42
42
  typescript: {
43
43
  includeWorkspace: true,
44
44
  strict: true,
45
+ typeCheck: true,
45
46
  },
46
47
  })
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "srcdev-nuxt-components",
3
3
  "type": "module",
4
- "version": "7.0.0",
4
+ "version": "7.0.1",
5
5
  "main": "nuxt.config.ts",
6
6
  "types": "types.d.ts",
7
7
  "scripts": {
@@ -19,29 +19,31 @@
19
19
  },
20
20
  "files": [
21
21
  "app/",
22
+ "types/",
23
+ "app/types/components/",
22
24
  "nuxt.config.ts",
23
25
  "types.d.ts"
24
26
  ],
25
27
  "devDependencies": {
26
28
  "@iconify-json/akar-icons": "1.2.7",
27
- "@iconify-json/bi": "1.2.6",
29
+ "@iconify-json/bi": "1.2.7",
28
30
  "@iconify-json/bitcoin-icons": "1.2.4",
29
31
  "@iconify-json/gravity-ui": "1.2.10",
30
- "@iconify-json/material-symbols": "1.2.44",
32
+ "@iconify-json/material-symbols": "1.2.53",
31
33
  "@iconify-json/mdi": "1.2.3",
32
- "@nuxt/eslint": "1.10.0",
33
- "@nuxt/icon": "2.1.0",
34
+ "@nuxt/eslint": "1.13.0",
35
+ "@nuxt/icon": "2.2.1",
34
36
  "@nuxt/image": "2.0.0",
35
- "@nuxtjs/i18n": "10.2.0",
36
- "@vueuse/core": "14.0.0",
37
- "eslint": "9.39.1",
37
+ "@nuxtjs/i18n": "10.2.1",
38
+ "@vueuse/core": "14.1.0",
39
+ "eslint": "9.39.2",
38
40
  "focus-trap-vue": "4.1.0",
39
- "nuxt": "4.2.1",
40
- "nuxt-qrcode": "^0.4.8",
41
+ "nuxt": "4.3.0",
42
+ "nuxt-qrcode": "0.4.8",
41
43
  "patch-package": "8.0.1",
42
- "release-it": "19.0.6",
44
+ "release-it": "19.2.4",
43
45
  "typescript": "5.9.3",
44
- "vue-tsc": "^3.2.1"
46
+ "vue-tsc": "3.2.4"
45
47
  },
46
48
  "release-it": {
47
49
  "$schema": "https://unpkg.com/release-it/schema/release-it.json",
package/types.d.ts CHANGED
@@ -1,4 +1,2 @@
1
1
  // Layer type exports for consumers
2
- export * from "./app/types/components/display-toast.d"
3
- export * from "./app/types/components/qr-code.d"
4
- export * from "./app/types/components/alert-mask-core.d"
2
+ export * from "./app/types/components"
@@ -1,12 +0,0 @@
1
- export * from "../components/responsive-header/ResponsiveHeader.vue"
2
- export * from "../components/display-chip/DisplayChip.vue"
3
- export * from "../components/carousel-basic/CarouselBasic.vue"
4
- export * from "../components/image-galleries/SliderGallery.vue"
5
- export * from "../components/display-toast/DisplayToast.vue"
6
- export * from "../components/alert-mask/AlertMaskCore.vue"
7
- export * from "../components/canvas-switcher/CanvasSwitcher.vue"
8
-
9
- // Export types from the components directory
10
- export * from "./components/display-toast.d"
11
- export * from "./components/qr-code.d"
12
- export * from "./components/alert-mask-core.d"