srcdev-nuxt-components 6.1.3 → 6.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/README.md +3 -3
  2. package/app/components/carousel-basic/CarouselBasic.vue +86 -62
  3. package/app/components/deep-expanding-menu/DeepExpandingMenu.vue +14 -14
  4. package/app/components/deep-expanding-menu/DeepExpandingMenuOld.vue +21 -21
  5. package/app/components/display-prompt/DisplayPromptCore.vue +14 -19
  6. package/app/components/marquee-scroller/MarqueeScroller.vue +122 -0
  7. package/app/components/masonry-grid-ordered/MasonryGridOrdered.vue +44 -41
  8. package/app/components/responsive-header/ResponsiveHeader.vue +3 -3
  9. package/nuxt.config.ts +1 -1
  10. package/package.json +3 -3
  11. package/app/assets/styles/extends-layer/srcdev-components/components/_display-prompt-core.css +0 -72
  12. package/app/assets/styles/extends-layer/srcdev-components/components/_expanding-panel.css +0 -37
  13. package/app/assets/styles/extends-layer/srcdev-components/components/index.css +0 -2
  14. package/app/assets/styles/extends-layer/srcdev-components/index.css +0 -2
  15. package/app/assets/styles/extends-layer/srcdev-components/setup/index.css +0 -1
  16. package/app/assets/styles/extends-layer/srcdev-components/setup/themes/_error.css +0 -15
  17. package/app/assets/styles/extends-layer/srcdev-components/setup/themes/_info.css +0 -15
  18. package/app/assets/styles/extends-layer/srcdev-components/setup/themes/_secondary.css +0 -15
  19. package/app/assets/styles/extends-layer/srcdev-components/setup/themes/_success.css +0 -15
  20. package/app/assets/styles/extends-layer/srcdev-components/setup/themes/_warning.css +0 -15
  21. package/app/assets/styles/extends-layer/srcdev-components/setup/themes/index.css +0 -5
  22. package/app/assets/styles/main.css +0 -2
  23. package/app/assets/styles/setup/_head.css +0 -36
  24. package/app/assets/styles/setup/a11y/_utils.css +0 -20
  25. package/app/assets/styles/setup/a11y/_variables.css +0 -8
  26. package/app/assets/styles/setup/a11y/index.css +0 -2
  27. package/app/assets/styles/setup/index.css +0 -5
  28. package/app/assets/styles/setup/typography/index.css +0 -2
  29. package/app/assets/styles/setup/typography/utility-classes/_generic-font-classes.css +0 -217
  30. package/app/assets/styles/setup/typography/utility-classes/_generic-font-variation-settings.css +0 -29
  31. package/app/assets/styles/setup/typography/utility-classes/_generic-font-weights.css +0 -39
  32. package/app/assets/styles/setup/typography/utility-classes/index.css +0 -3
  33. package/app/assets/styles/setup/typography/vars/_colors.css +0 -14
  34. package/app/assets/styles/setup/typography/vars/_reponsive-font-sizes.css +0 -12
  35. package/app/assets/styles/setup/typography/vars/index.css +0 -2
  36. package/app/assets/styles/setup/utility-classes/_fluid-spacing.css +0 -13
  37. package/app/assets/styles/setup/utility-classes/_margin.css +0 -334
  38. package/app/assets/styles/setup/utility-classes/_padding.css +0 -308
  39. package/app/assets/styles/setup/utility-classes/animations/_auto-rotate.css +0 -13
  40. package/app/assets/styles/setup/utility-classes/animations/_entry-exit-blur.css +0 -16
  41. package/app/assets/styles/setup/utility-classes/animations/_entry-slide-in.css +0 -15
  42. package/app/assets/styles/setup/utility-classes/animations/_entry-zoom-reveal.css +0 -15
  43. package/app/assets/styles/setup/utility-classes/animations/index.css +0 -4
  44. package/app/assets/styles/setup/utility-classes/index.css +0 -4
  45. package/app/assets/styles/setup/variables/colors/_blue.css +0 -15
  46. package/app/assets/styles/setup/variables/colors/_gray.css +0 -16
  47. package/app/assets/styles/setup/variables/colors/_green.css +0 -15
  48. package/app/assets/styles/setup/variables/colors/_orange.css +0 -15
  49. package/app/assets/styles/setup/variables/colors/_red.css +0 -15
  50. package/app/assets/styles/setup/variables/colors/_yellow.css +0 -15
  51. package/app/assets/styles/setup/variables/colors/index.css +0 -6
  52. package/app/assets/styles/setup/variables/index.css +0 -1
@@ -9,7 +9,7 @@
9
9
  </template>
10
10
 
11
11
  <script setup lang="ts">
12
- import { useBreakpoints, useElementSize, useResizeObserver } from '@vueuse/core';
12
+ import { useBreakpoints, useElementSize, useResizeObserver } from "@vueuse/core"
13
13
 
14
14
  const props = defineProps({
15
15
  gridData: {
@@ -38,77 +38,79 @@ const props = defineProps({
38
38
  },
39
39
  justify: {
40
40
  type: String as PropType<String>,
41
- default: 'left',
42
- validator: (val: string) => ['left', 'center', 'right'].includes(val),
41
+ default: "left",
42
+ validator: (val: string) => ["left", "center", "right"].includes(val),
43
43
  },
44
- });
44
+ })
45
45
 
46
- const { elementClasses, resetElementClasses } = useStyleClassPassthrough(props.styleClassPassthrough);
46
+ const { elementClasses, resetElementClasses } = useStyleClassPassthrough(props.styleClassPassthrough)
47
47
 
48
- const gridData = toRef(() => props.gridData);
48
+ const gridData = toRef(() => props.gridData)
49
49
 
50
- const minTileWidth = toRef(() => props.minTileWidth);
51
- const gridWrapper = ref<null | HTMLDivElement>(null);
52
- const gridItemsRefs = ref<HTMLDivElement[]>([]);
53
- const { width } = useElementSize(gridWrapper);
50
+ const minTileWidth = toRef(() => props.minTileWidth)
51
+ const gridWrapper = ref<null | HTMLDivElement>(null)
52
+ const gridItemsRefs = ref<HTMLDivElement[]>([])
53
+ const { width } = useElementSize(gridWrapper)
54
54
  const columnCount = computed(() => {
55
- return Math.floor(width.value / minTileWidth.value);
56
- });
55
+ return Math.floor(width.value / minTileWidth.value)
56
+ })
57
57
 
58
- const gapNum = toRef(props.gap);
59
- const gapStr = toRef(props.gap + 'px');
58
+ const gapNum = toRef(props.gap)
59
+ const gapStr = toRef(props.gap + "px")
60
60
 
61
- const fixedWidth = toRef(() => props.fixedWidth);
62
- const minTileWidthStr = toRef(props.minTileWidth + 'px');
61
+ const fixedWidth = toRef(() => props.fixedWidth)
62
+ const minTileWidthStr = toRef(props.minTileWidth + "px")
63
63
  const maxTileWidth = computed(() => {
64
- return fixedWidth.value ? minTileWidth.value + 'px' : '1fr';
65
- });
64
+ return fixedWidth.value ? minTileWidth.value + "px" : "1fr"
65
+ })
66
66
 
67
67
  const justify = computed(() => {
68
- return fixedWidth.value ? props.justify : 'stretch';
69
- });
68
+ return fixedWidth.value ? props.justify : "stretch"
69
+ })
70
70
 
71
71
  const updateGrid = () => {
72
72
  if (gridWrapper.value !== null) {
73
- const wrapperWidth = gridWrapper.value?.offsetWidth ?? 0;
74
- const itemWidth = fixedWidth.value ? minTileWidth.value : Math.floor((wrapperWidth - (columnCount.value - 1) * gapNum.value) / columnCount.value);
73
+ const wrapperWidth = gridWrapper.value?.offsetWidth ?? 0
74
+ const itemWidth = fixedWidth.value
75
+ ? minTileWidth.value
76
+ : Math.floor((wrapperWidth - (columnCount.value - 1) * gapNum.value) / columnCount.value)
75
77
 
76
- const colHeights = Array(columnCount.value).fill(0);
78
+ const colHeights = Array(columnCount.value).fill(0)
77
79
 
78
80
  gridItemsRefs.value.forEach((item) => {
79
- const minHeight = Math.min(...colHeights);
80
- const minIndex = colHeights.indexOf(minHeight);
81
+ const minHeight = Math.min(...colHeights)
82
+ const minIndex = colHeights.indexOf(minHeight)
81
83
 
82
- item?.style.setProperty('--_position', 'absolute');
83
- item?.style.setProperty('--_position-top', minHeight + 'px');
84
- item?.style.setProperty('--_position-left', minIndex * (100 / columnCount.value) + '%');
85
- item?.style.setProperty('--_element-width', itemWidth + 'px');
84
+ item?.style.setProperty("--_position", "absolute")
85
+ item?.style.setProperty("--_position-top", minHeight + "px")
86
+ item?.style.setProperty("--_position-left", minIndex * (100 / columnCount.value) + "%")
87
+ item?.style.setProperty("--_element-width", itemWidth + "px")
86
88
 
87
- colHeights[minIndex] += Math.floor(item.offsetHeight + gapNum.value);
88
- });
89
+ colHeights[minIndex] += Math.floor(item.offsetHeight + gapNum.value)
90
+ })
89
91
 
90
- const maxHeight = Math.max(...colHeights);
91
- gridWrapper.value?.style.setProperty('--_wrapper-height', maxHeight + 'px');
92
+ const maxHeight = Math.max(...colHeights)
93
+ gridWrapper.value?.style.setProperty("--_wrapper-height", maxHeight + "px")
92
94
  }
93
- };
95
+ }
94
96
 
95
97
  useResizeObserver(gridWrapper, () => {
96
- updateGrid();
97
- });
98
+ updateGrid()
99
+ })
98
100
 
99
101
  watch(
100
102
  () => fixedWidth.value,
101
103
  () => {
102
- updateGrid();
104
+ updateGrid()
103
105
  }
104
- );
106
+ )
105
107
 
106
108
  watch(
107
109
  () => props.styleClassPassthrough,
108
110
  () => {
109
- resetElementClasses(props.styleClassPassthrough);
111
+ resetElementClasses(props.styleClassPassthrough)
110
112
  }
111
- );
113
+ )
112
114
  </script>
113
115
 
114
116
  <style scoped lang="css">
@@ -142,7 +144,8 @@ watch(
142
144
  }
143
145
 
144
146
  .masonry-grid-ordered-item {
145
- transition: position var(--_transition-duration) ease, top var(--_transition-duration) ease, left var(--_transition-duration) ease;
147
+ transition: position var(--_transition-duration) ease, top var(--_transition-duration) ease,
148
+ left var(--_transition-duration) ease;
146
149
 
147
150
  position: var(--_position);
148
151
  top: var(--_position-top);
@@ -101,14 +101,14 @@
101
101
  <LayoutRow tag="div" variant="full" :style-class-passthrough="['mb-20', 'debug-grid']">
102
102
  <ClientOnly>
103
103
  <div>
104
- <h2 class="heading-4">navigationWrapperRects</h2>
104
+ <h2 class="page-heading-4">navigationWrapperRects</h2>
105
105
  <pre>{{ navigationWrapperRects }}</pre>
106
106
  <hr />
107
- <h2 class="heading-4">secondaryNavRects</h2>
107
+ <h2 class="page-heading-4">secondaryNavRects</h2>
108
108
  <pre>{{ secondaryNavRects }}</pre>
109
109
  </div>
110
110
  <div>
111
- <h2 class="heading-4">mainNavigationState</h2>
111
+ <h2 class="page-heading-4">mainNavigationState</h2>
112
112
  <pre>{{ mainNavigationState }}</pre>
113
113
  </div>
114
114
  </ClientOnly>
package/nuxt.config.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  // https://nuxt.com/docs/api/configuration/nuxt-config
2
2
  export default defineNuxtConfig({
3
3
  devtools: { enabled: true },
4
- css: ["modern-normalize", "./app/assets/styles/main.css"],
4
+ // css: ["modern-normalize", "./app/assets/styles/main.css"],
5
5
  modules: ["@nuxt/eslint", "@nuxt/icon", "@nuxt/image"],
6
6
  app: {
7
7
  head: {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "srcdev-nuxt-components",
3
3
  "type": "module",
4
- "version": "6.1.3",
4
+ "version": "6.1.5",
5
5
  "main": "nuxt.config.ts",
6
6
  "scripts": {
7
7
  "clean": "rm -rf .nuxt && rm -rf .output && rm -rf .playground/.nuxt && rm -rf .playground/.output",
@@ -24,6 +24,7 @@
24
24
  "devDependencies": {
25
25
  "@iconify-json/akar-icons": "1.2.7",
26
26
  "@iconify-json/bitcoin-icons": "1.2.4",
27
+ "@iconify-json/material-symbols": "^1.2.33",
27
28
  "@nuxt/eslint": "1.8.0",
28
29
  "@nuxt/icon": "2.0.0",
29
30
  "@nuxt/image": "1.11.0",
@@ -35,8 +36,7 @@
35
36
  "typescript": "5.9.2"
36
37
  },
37
38
  "dependencies": {
38
- "focus-trap-vue": "4.0.3",
39
- "modern-normalize": "3.0.1"
39
+ "focus-trap-vue": "4.0.3"
40
40
  },
41
41
  "release-it": {
42
42
  "$schema": "https://unpkg.com/release-it/schema/release-it.json",
@@ -1,72 +0,0 @@
1
- .srcdev-components-extended {
2
- .display-prompt-core {
3
- .display-prompt-wrapper {
4
- background-color: var(--component-theme-10);
5
- border: 1px solid var(--component-theme-8);
6
- border-inline-start: 8px solid var(--component-theme-8);
7
- border-radius: 4px;
8
- border-start-start-radius: 8px;
9
- border-end-start-radius: 8px;
10
-
11
- .display-prompt-inner {
12
- align-items: center;
13
- gap: 12px;
14
- padding-block: 1rem;
15
- padding-inline: 1.5rem;
16
-
17
- .display-prompt-icon {
18
- .icon {
19
- color: var(--component-theme-0);
20
- font-size: 3rem;
21
- font-style: normal;
22
- font-weight: normal;
23
- }
24
- }
25
-
26
- .display-prompt-content {
27
- gap: 1rem;
28
- margin: 0;
29
- padding: 0.2rem;
30
-
31
- .title {
32
- font-size: var(--step-5);
33
- font-weight: bold;
34
- line-height: 1.3;
35
- color: var(--component-theme-0);
36
- margin: 0;
37
- padding: 0;
38
- }
39
-
40
- .text {
41
- font-size: var(--step-5);
42
- font-weight: normal;
43
- line-height: 1.3;
44
- color: var(--component-theme-0);
45
- margin: 0;
46
- padding: 0;
47
- }
48
- }
49
- .display-prompt-action {
50
- background-color: transparent;
51
- align-items: center;
52
- margin: 1rem;
53
- padding: 0.5rem;
54
- border: 0.1rem solid var(--component-theme-8);
55
- border-radius: 50%;
56
- outline: 1px solid var(--component-theme-3);
57
-
58
- &:hover {
59
- cursor: pointer;
60
- }
61
-
62
- .icon {
63
- color: var(--component-theme-0);
64
- font-size: var(--step-5);
65
- border: 1px solid green;
66
- padding: 1rem;
67
- }
68
- }
69
- }
70
- }
71
- }
72
- }
@@ -1,37 +0,0 @@
1
- .srcdev-components-extended {
2
- .expanding-panel {
3
- .expanding-panel-details {
4
- .expanding-panel-summary {
5
- &::-webkit-details-marker,
6
- &::marker {
7
- display: none;
8
- }
9
-
10
- .label-wrapper {
11
- }
12
- .icon-wrapper {
13
- .icon {
14
- }
15
- }
16
- }
17
-
18
- &[open] {
19
- .expanding-panel-summary {
20
- .icon-wrapper {
21
- .icon {
22
- }
23
- }
24
- }
25
- + .expanding-panel-content {
26
- .inner {
27
- }
28
- }
29
- }
30
- }
31
-
32
- .expanding-panel-content {
33
- .inner {
34
- }
35
- }
36
- }
37
- }
@@ -1,2 +0,0 @@
1
- @import "./_display-prompt-core";
2
- @import "./_expanding-panel";
@@ -1,2 +0,0 @@
1
- @import './setup';
2
- @import './components';
@@ -1 +0,0 @@
1
- @import './themes';
@@ -1,15 +0,0 @@
1
- [data-component-theme='error'] {
2
- --component-theme-0: var(--red-0);
3
- --component-theme-1: var(--red-1);
4
- --component-theme-2: var(--red-2);
5
- --component-theme-3: var(--red-3);
6
- --component-theme-4: var(--red-4);
7
- --component-theme-5: var(--red-5);
8
- --component-theme-6: var(--red-6);
9
- --component-theme-7: var(--red-7);
10
- --component-theme-8: var(--red-8);
11
- --component-theme-9: var(--red-9);
12
- --component-theme-10: var(--red-10);
13
- --component-theme-11: var(--red-11);
14
- --component-theme-12: var(--red-12);
15
- }
@@ -1,15 +0,0 @@
1
- [data-component-theme='info'] {
2
- --component-theme-0: var(--blue-0);
3
- --component-theme-1: var(--blue-1);
4
- --component-theme-2: var(--blue-2);
5
- --component-theme-3: var(--blue-3);
6
- --component-theme-4: var(--blue-4);
7
- --component-theme-5: var(--blue-5);
8
- --component-theme-6: var(--blue-6);
9
- --component-theme-7: var(--blue-7);
10
- --component-theme-8: var(--blue-8);
11
- --component-theme-9: var(--blue-9);
12
- --component-theme-10: var(--blue-10);
13
- --component-theme-11: var(--blue-11);
14
- --component-theme-12: var(--blue-12);
15
- }
@@ -1,15 +0,0 @@
1
- [data-component-theme='secondary'] {
2
- --component-theme-0: var(--gray-0);
3
- --component-theme-1: var(--gray-1);
4
- --component-theme-2: var(--gray-2);
5
- --component-theme-3: var(--gray-3);
6
- --component-theme-4: var(--gray-4);
7
- --component-theme-5: var(--gray-5);
8
- --component-theme-6: var(--gray-6);
9
- --component-theme-7: var(--gray-7);
10
- --component-theme-8: var(--gray-8);
11
- --component-theme-9: var(--gray-9);
12
- --component-theme-10: var(--gray-10);
13
- --component-theme-11: var(--gray-11);
14
- --component-theme-12: var(--gray-12);
15
- }
@@ -1,15 +0,0 @@
1
- [data-component-theme='success'] {
2
- --component-theme-0: var(--green-0);
3
- --component-theme-1: var(--green-1);
4
- --component-theme-2: var(--green-2);
5
- --component-theme-3: var(--green-3);
6
- --component-theme-4: var(--green-4);
7
- --component-theme-5: var(--green-5);
8
- --component-theme-6: var(--green-6);
9
- --component-theme-7: var(--green-7);
10
- --component-theme-8: var(--green-8);
11
- --component-theme-9: var(--green-9);
12
- --component-theme-10: var(--green-10);
13
- --component-theme-11: var(--green-11);
14
- --component-theme-12: var(--green-12);
15
- }
@@ -1,15 +0,0 @@
1
- [data-component-theme='warning'] {
2
- --component-theme-0: var(--orange-0);
3
- --component-theme-1: var(--orange-1);
4
- --component-theme-2: var(--orange-2);
5
- --component-theme-3: var(--orange-3);
6
- --component-theme-4: var(--orange-4);
7
- --component-theme-5: var(--orange-5);
8
- --component-theme-6: var(--orange-6);
9
- --component-theme-7: var(--orange-7);
10
- --component-theme-8: var(--orange-8);
11
- --component-theme-9: var(--orange-9);
12
- --component-theme-10: var(--orange-10);
13
- --component-theme-11: var(--orange-11);
14
- --component-theme-12: var(--orange-12);
15
- }
@@ -1,5 +0,0 @@
1
- @import './_error';
2
- @import './_success';
3
- @import './_warning';
4
- @import './_info';
5
- @import './_secondary';
@@ -1,2 +0,0 @@
1
- @import './setup/';
2
- @import './extends-layer/srcdev-components/';
@@ -1,36 +0,0 @@
1
- :root {
2
- /* --font-family: futura-pt, Seravek, 'Gill Sans Nova', Ubuntu, Calibri, 'DejaVu Sans', source-sans-pro, sans-serif; */
3
- /* --font-family: Poppins, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; */
4
-
5
- --font-family: 'Quicksand', futura-pt, Seravek, 'Gill Sans Nova', Ubuntu, Calibri, 'DejaVu Sans', source-sans-pro, sans-serif;
6
- }
7
-
8
- html {
9
- color-scheme: light dark;
10
-
11
- &[data-color-scheme='light'] {
12
- color-scheme: light;
13
- }
14
-
15
- &[data-color-scheme='dark'] {
16
- color-scheme: dark;
17
- }
18
-
19
- background-color: var(--page-bg);
20
-
21
- font-size: 62.5%;
22
-
23
- transition: background-color 0.4s ease, color 0.4s ease;
24
- scrollbar-gutter: stable;
25
-
26
- overflow-x: hidden;
27
- }
28
- body {
29
- color: var(--grayscale-text-body);
30
- font-family: var(--font-family);
31
- font-size: var(--step-4);
32
- min-height: 100vh;
33
- transition: background-color 0.4s ease, color 0.4s ease;
34
-
35
- overflow-x: hidden;
36
- }
@@ -1,20 +0,0 @@
1
- .sr-only {
2
- border-width: 0;
3
- clip: rect(1px, 0.1rem, 0.1rem, 0.1rem);
4
- clip-path: inset(50%);
5
- height: 0.1rem;
6
- overflow: hidden;
7
- position: absolute;
8
- white-space: nowrap;
9
- width: 0.1rem;
10
- }
11
- /* .sr-only {
12
- position: absolute;
13
- width: 0.1rem;
14
- height: 0.1rem;
15
- padding: 0;
16
- margin: -0.1rem;
17
- overflow: hidden;
18
- clip: rect(0, 0, 0, 0);
19
- white-space: nowrap;
20
- } */
@@ -1,8 +0,0 @@
1
- :root {
2
- --focus-box-shadow-colour-off: transparent;
3
- --focus-box-shadow-colour-on: light-dark(var(--blue-12), var(--gray-0));
4
- --form-focus-box-shadow: 0 0 0 0.3rem;
5
-
6
- --box-shadow-off: 0 0 0 0.3rem transparent;
7
- --box-shadow-on: 0 0 0 0.3rem light-dark(var(--blue-12), var(--gray-0));
8
- }
@@ -1,2 +0,0 @@
1
- @import './_variables.css';
2
- @import './_utils.css';
@@ -1,5 +0,0 @@
1
- @import './_head.css';
2
- @import './utility-classes';
3
- @import './a11y';
4
- @import './variables';
5
- @import './typography';
@@ -1,2 +0,0 @@
1
- @import './utility-classes';
2
- @import './vars';