@dargmuesli/nuxt-vio 15.1.1 → 16.0.0

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.
@@ -7,52 +7,19 @@
7
7
  /* doiuse-disable css-cascade-layers */
8
8
  @layer base {
9
9
  /* doiuse-enable css-cascade-layers */
10
- a:focus {
11
- /* doiuse-disable css-nesting */
12
- @apply outline-none ring; /* doiuse-enable css-nesting */
13
- }
14
-
15
- button:focus {
16
- /* doiuse-disable css-nesting */
17
- @apply outline-none ring; /* doiuse-enable css-nesting */
18
- }
19
-
20
- thead {
21
- /* doiuse-disable css-nesting */
22
- @apply vio-bg-darken sticky top-0 z-10; /* doiuse-enable css-nesting */
23
- }
24
-
25
- tbody {
26
- /* doiuse-disable css-nesting */
27
- @apply vio-divide-darken divide-y; /* doiuse-enable css-nesting */
28
- }
29
- }
30
-
31
- /* doiuse-disable css-cascade-layers */
32
- @layer utilities {
33
- /* doiuse-enable css-cascade-layers */
34
- .vio-prose {
35
- /* doiuse-disable css-nesting */
36
- @apply prose prose-sm dark:prose-invert sm:prose-base lg:prose-lg xl:prose-xl; /* 2xl:prose-2xl */ /* doiuse-enable css-nesting */
37
- }
38
-
39
- .vio-prose-fullwidth {
40
- /* doiuse-disable css-nesting */
41
- @apply vio-prose max-w-full sm:max-w-full md:max-w-full xl:max-w-full 2xl:max-w-full; /* doiuse-enable css-nesting */
42
- }
43
-
44
- .vio-divide-darken {
45
- /* doiuse-disable css-nesting */
46
- @apply divide-background-brighten dark:divide-background-darken; /* doiuse-enable css-nesting */
47
- }
48
-
49
- .vio-bg-darken {
50
- /* doiuse-disable css-nesting */
51
- @apply bg-background-brighten dark:bg-background-darken; /* doiuse-enable css-nesting */
52
- }
53
10
 
54
- .vio-border-darken {
55
- /* doiuse-disable css-nesting */
56
- @apply border-background-brighten dark:border-background-darken; /* doiuse-enable css-nesting */
11
+ :root {
12
+ /* stylelint-disable plugin/no-unsupported-browser-features */
13
+ --color-background-bright: 255 255 255;
14
+ --color-background-brighten: 229 231 235;
15
+ --color-background-dark: 31 41 55;
16
+ --color-background-darken: 55 65 81;
17
+ --color-link-bright: 96 165 250;
18
+ --color-link-dark: 37 99 235;
19
+ --color-text-bright: 249 250 251;
20
+ --color-text-dark: 17 24 39;
21
+ --color-vio-primary-bg: 243 244 246;
22
+ --color-vio-primary-text: 17 24 39;
23
+ /* stylelint-enable plugin/no-unsupported-browser-features */
57
24
  }
58
25
  }
@@ -0,0 +1,21 @@
1
+ <template>
2
+ <div
3
+ :class="[
4
+ 'prose prose-sm dark:prose-invert sm:prose-base lg:prose-lg xl:prose-xl',
5
+ ...(isFullWidth
6
+ ? [
7
+ 'max-w-full sm:max-w-full md:max-w-full xl:max-w-full 2xl:max-w-full',
8
+ ]
9
+ : []),
10
+ ]"
11
+ >
12
+ <slot />
13
+ </div>
14
+ </template>
15
+
16
+ <script setup lang="ts">
17
+ interface Props {
18
+ isFullWidth?: boolean
19
+ }
20
+ withDefaults(defineProps<Props>(), {})
21
+ </script>
@@ -0,0 +1,7 @@
1
+ <template>
2
+ <tbody
3
+ class="divide-y divide-background-brighten dark:divide-background-darken"
4
+ >
5
+ <slot />
6
+ </tbody>
7
+ </template>
@@ -0,0 +1,7 @@
1
+ <template>
2
+ <thead
3
+ class="sticky top-0 z-10 bg-background-brighten dark:bg-background-darken"
4
+ >
5
+ <slot />
6
+ </thead>
7
+ </template>
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div class="vio-prose m-auto">
2
+ <VioLayoutProse class="m-auto">
3
3
  <h1>{{ title }}</h1>
4
4
  <h2>{{ t('tmg') }}</h2>
5
5
  <address>
@@ -64,7 +64,7 @@
64
64
  <p>
65
65
  <VioLink to="https://www.e-recht24.de">{{ t('source') }}</VioLink>
66
66
  </p>
67
- </div>
67
+ </VioLayoutProse>
68
68
  </template>
69
69
 
70
70
  <script setup lang="ts">
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div class="vio-prose m-auto">
2
+ <VioLayoutProse class="m-auto">
3
3
  <h1>{{ title }}</h1>
4
4
  <ol v-if="isEnabled">
5
5
  <li v-if="isEnabled.summary">
@@ -429,7 +429,7 @@
429
429
  {{ t('source') }}
430
430
  </VioLink>
431
431
  </p>
432
- </div>
432
+ </VioLayoutProse>
433
433
  </template>
434
434
 
435
435
  <script setup lang="ts">
package/package.json CHANGED
@@ -1,21 +1,21 @@
1
1
  {
2
2
  "dependencies": {
3
3
  "@dargmuesli/nuxt-cookie-control": "8.4.20",
4
- "@eslint/compat": "1.2.4",
4
+ "@eslint/compat": "1.2.5",
5
5
  "@heroicons/vue": "2.2.0",
6
6
  "@http-util/status-i18n": "0.8.1",
7
7
  "@intlify/eslint-plugin-vue-i18n": "4.0.0-next.1",
8
8
  "@nuxt/devtools": "1.7.0",
9
- "@nuxt/eslint": "0.7.4",
10
- "@nuxt/image": "1.8.1",
9
+ "@nuxt/eslint": "0.7.5",
10
+ "@nuxt/image": "1.9.0",
11
11
  "@nuxtjs/color-mode": "3.5.2",
12
12
  "@nuxtjs/html-validator": "1.8.2",
13
13
  "@nuxtjs/i18n": "9.1.1",
14
14
  "@nuxtjs/seo": "2.0.2",
15
- "@nuxtjs/tailwindcss": "6.12.2",
15
+ "@nuxtjs/tailwindcss": "6.13.0",
16
16
  "@pinia/nuxt": "0.9.0",
17
- "@tailwindcss/forms": "0.5.9",
18
- "@tailwindcss/typography": "0.5.15",
17
+ "@tailwindcss/forms": "0.5.10",
18
+ "@tailwindcss/typography": "0.5.16",
19
19
  "@types/lodash-es": "4.17.12",
20
20
  "@urql/core": "5.1.0",
21
21
  "@urql/vue": "1.4.2",
@@ -23,8 +23,8 @@
23
23
  "@vuelidate/validators": "2.0.4",
24
24
  "clipboardy": "4.0.0",
25
25
  "dayjs": "2.0.0-alpha.4",
26
- "eslint": "9.17.0",
27
- "eslint-config-prettier": "9.1.0",
26
+ "eslint": "9.18.0",
27
+ "eslint-config-prettier": "10.0.1",
28
28
  "eslint-plugin-compat": "6.0.2",
29
29
  "eslint-plugin-prettier": "5.2.1",
30
30
  "eslint-plugin-yml": "1.16.0",
@@ -37,26 +37,26 @@
37
37
  "vue-tsc": "2.2.0"
38
38
  },
39
39
  "devDependencies": {
40
- "@unhead/vue": "1.11.14",
40
+ "@unhead/vue": "1.11.16",
41
41
  "@urql/devtools": "2.0.3",
42
42
  "@urql/exchange-graphcache": "7.2.1",
43
- "consola": "3.3.3",
43
+ "consola": "3.4.0",
44
44
  "cookie-es": "1.2.2",
45
45
  "defu": "6.1.4",
46
- "h3": "1.13.0",
46
+ "h3": "1.13.1",
47
47
  "lodash-es": "4.17.21",
48
- "nuxt": "3.15.0",
48
+ "nuxt": "3.15.1",
49
49
  "pinia": "2.3.0",
50
50
  "prettier": "3.4.2",
51
51
  "prettier-plugin-tailwindcss": "0.6.9",
52
52
  "serve": "14.2.4",
53
53
  "sharp": "0.33.5",
54
- "stylelint": "16.12.0",
54
+ "stylelint": "16.13.1",
55
55
  "stylelint-config-recommended-vue": "1.5.0",
56
- "stylelint-config-standard": "36.0.1",
56
+ "stylelint-config-standard": "37.0.0",
57
57
  "stylelint-no-unsupported-browser-features": "8.0.2",
58
58
  "tailwindcss": "3.4.17",
59
- "unhead": "1.11.14",
59
+ "unhead": "1.11.16",
60
60
  "vue": "3.5.13",
61
61
  "vue-router": "4.5.0"
62
62
  },
@@ -86,7 +86,7 @@
86
86
  "main": "nuxt.config.ts",
87
87
  "name": "@dargmuesli/nuxt-vio",
88
88
  "peerDependencies": {
89
- "nuxt": "3.15.0",
89
+ "nuxt": "3.15.1",
90
90
  "vue": "3.5.13",
91
91
  "vue-router": "4.5.0"
92
92
  },
@@ -101,7 +101,6 @@
101
101
  "build": "pnpm run build:node",
102
102
  "build:node": "nuxt build .playground",
103
103
  "build:static": "nuxt generate .playground",
104
- "build:static:test": "SITE_URL=https://localhost:3002 pnpm run build:static",
105
104
  "dev": "pnpm run start:dev",
106
105
  "generate": "pnpm run build:static",
107
106
  "lint:fix": "pnpm run lint:js --fix && pnpm run lint:ts --fix && pnpm run lint:style --fix",
@@ -117,5 +116,5 @@
117
116
  "start:static": "serve .playground/.output/public --ssl-cert ./.config/certificates/ssl.crt --ssl-key ./.config/certificates/ssl.key"
118
117
  },
119
118
  "type": "module",
120
- "version": "15.1.1"
119
+ "version": "16.0.0"
121
120
  }
@@ -1,7 +1,6 @@
1
1
  import type { ModuleOptions } from '@nuxtjs/tailwindcss'
2
2
  import formsPlugin from '@tailwindcss/forms'
3
3
  import typographyPlugin from '@tailwindcss/typography'
4
- import colors from 'tailwindcss/colors'
5
4
  import type { PluginAPI } from 'tailwindcss/types/config'
6
5
 
7
6
  const heading = (theme: PluginAPI['theme']): Record<string, string> => ({
@@ -11,8 +10,6 @@ const heading = (theme: PluginAPI['theme']): Record<string, string> => ({
11
10
  // set overflow truncate/ellipsis in the surrounding container, or larger fonts will be cut off due to their line-heights
12
11
  })
13
12
 
14
- const gray = colors.gray // or slate, zinc, neutral, stone
15
-
16
13
  const prose = (theme: PluginAPI['theme']) => ({
17
14
  css: {
18
15
  a: {
@@ -61,9 +58,23 @@ export default {
61
58
  marginLeft: '5px',
62
59
  width: theme('fontSize.xs'),
63
60
  },
61
+ 'a:focus': {
62
+ // @apply outline-none ring
63
+ outline: '2px solid transparent',
64
+ outlineOffset: '2px',
65
+ boxShadow:
66
+ 'var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)',
67
+ },
64
68
  address: {
65
69
  margin: theme('margin.4'),
66
70
  },
71
+ 'button:focus': {
72
+ // @apply outline-none ring
73
+ outline: '2px solid transparent',
74
+ outlineOffset: '2px',
75
+ boxShadow:
76
+ 'var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)',
77
+ },
67
78
  h1: {
68
79
  ...heading(theme),
69
80
  fontSize: theme('fontSize.4xl'),
@@ -178,23 +189,23 @@ export default {
178
189
  },
179
190
  colors: {
180
191
  background: {
181
- bright: colors.white,
182
- brighten: gray['200'],
183
- dark: gray['800'],
184
- darken: gray['700'],
192
+ bright: 'rgb(var(--color-background-bright))',
193
+ brighten: 'rgb(var(--color-background-brighten))',
194
+ dark: 'rgb(var(--color-background-dark))',
195
+ darken: 'rgb(var(--color-background-darken))',
185
196
  },
186
197
  link: {
187
- bright: colors.blue['400'],
188
- dark: colors.blue['600'],
198
+ bright: 'rgb(var(--color-link-bright))',
199
+ dark: 'rgb(var(--color-link-dark))',
189
200
  },
190
201
  text: {
191
- bright: gray['50'],
192
- dark: gray['900'],
202
+ bright: 'rgb(var(--color-text-bright))',
203
+ dark: 'rgb(var(--color-text-dark))',
193
204
  },
194
205
  vio: {
195
206
  primary: {
196
- bg: gray['100'],
197
- text: gray['900'],
207
+ bg: 'rgb(var(--color-vio-primary-bg))',
208
+ text: 'rgb(var(--color-vio-primary-text))',
198
209
  },
199
210
  },
200
211
  },