@studio-fes/create-fes-app 0.4.10 → 0.4.11

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.
@@ -2,6 +2,5 @@
2
2
  "recommendations": [
3
3
  "vue.volar",
4
4
  "dbaeumer.vscode-eslint",
5
- "csstools.postcss"
6
5
  ]
7
6
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "files.associations": {
3
- "*.css": "postcss"
3
+ "*.css": "css"
4
4
  },
5
5
  // Disable the default formatter, use eslint instead
6
6
  "prettier.enable": false,
@@ -0,0 +1,19 @@
1
+ <script setup lang="ts">
2
+ import type { CraftImageProps } from '@studio-fes/layer-craft/app/components/CraftImage.vue'
3
+ import type { CraftVideoProps } from '@studio-fes/layer-craft/app/components/CraftVideo.vue'
4
+ import type { MediaFragment } from '#graphql-operations'
5
+
6
+ interface CraftSvgProps {
7
+ media: MediaFragment | null | undefined
8
+ imgProps?: CraftImageProps
9
+ videoProps?: CraftVideoProps
10
+ }
11
+
12
+ const props = defineProps<CraftSvgProps>()
13
+ const isSvg = computed(() => props.media && props.media?.format === 'svg')
14
+ </script>
15
+
16
+ <template>
17
+ <RemoteSvg v-if="media && isSvg" :src="media.url" />
18
+ <CraftMedia v-else-if="media" :media />
19
+ </template>
@@ -0,0 +1,8 @@
1
+ <script setup lang="ts">
2
+ </script>
3
+
4
+ <template>
5
+ <div>
6
+ <slot />
7
+ </div>
8
+ </template>
@@ -5,6 +5,18 @@ export default defineNuxtConfig({
5
5
  '@studio-fes/layer-craft',
6
6
  ],
7
7
 
8
+ modules: [
9
+ '@studio-fes/nuxt-remote-svg',
10
+ ],
11
+
12
+ vite: {
13
+ optimizeDeps: {
14
+ include: [
15
+ '@studio-fes/nuxt-remote-svg',
16
+ ],
17
+ },
18
+ },
19
+
8
20
  eslint: {
9
21
  config: {
10
22
  standalone: false,
@@ -10,9 +10,10 @@
10
10
  "postinstall": "nuxt prepare"
11
11
  },
12
12
  "dependencies": {
13
- "@studio-fes/layer-base": "^0.4.10",
14
- "@studio-fes/layer-craft": "^0.4.10",
15
- "nuxt": "^4.5.2",
13
+ "@studio-fes/layer-base": "^0.4.11",
14
+ "@studio-fes/layer-craft": "^0.4.11",
15
+ "@studio-fes/nuxt-remote-svg": "0.1.9",
16
+ "nuxt": "^4.6.0",
16
17
  "vue": "^3.5.43",
17
18
  "vue-router": "^5.3.1"
18
19
  },
@@ -20,9 +21,9 @@
20
21
  "@antfu/eslint-config": "^9.5.1",
21
22
  "@graphql-eslint/eslint-plugin": "^4.4.1",
22
23
  "@unocss/eslint-config": "^66.10.5",
23
- "eslint": "^10.10.0",
24
+ "eslint": "^10.12.0",
24
25
  "eslint-plugin-format": "^2.0.1",
25
26
  "eslint-plugin-slop": "^0.1.3",
26
- "eslint-plugin-sonarjs": "^4.2.1"
27
+ "eslint-plugin-sonarjs": "^4.2.2"
27
28
  }
28
29
  }
@@ -1,3 +1,4 @@
1
+ import type { PresetWind4Theme } from 'unocss'
1
2
  import { defineConfig, presetWind4, transformerDirectives } from 'unocss'
2
3
 
3
4
  export default defineConfig({
@@ -12,4 +13,56 @@ export default defineConfig({
12
13
  transformers: [
13
14
  transformerDirectives(),
14
15
  ],
16
+
17
+ blocklist: [
18
+ 'container',
19
+ ],
20
+ extendTheme: (theme: PresetWind4Theme) => {
21
+ return {
22
+ ...theme,
23
+ breakpoint: {
24
+ ...theme.breakpoint,
25
+ '3xl': '1680px',
26
+ '4xl': '1920px',
27
+ '5xl': '2560px',
28
+ },
29
+ }
30
+ },
31
+ shortcuts: {
32
+ 'capsize': '[text-box-edge:cap_alphabetic] [text-box-trim:trim-both]',
33
+
34
+ // Transition utils
35
+ 'motion-base':
36
+ 'transition-opacity,transform,colors duration-500 ease-custom-circ will-change-transform',
37
+ 'motion-snug':
38
+ 'transition-opacity,transform,colors duration-300 ease-custom-circ will-change-transform',
39
+ 'motion-natural':
40
+ 'transition-opacity,transform,colors duration-700 ease-custom-circ will-change-transform',
41
+ 'motion-relaxed':
42
+ 'transition-opacity,transform,colors duration-1000 ease-custom-circ will-change-transform',
43
+
44
+ // Layout utils
45
+ 'lay-v': 'grid grid-flow-row [grid-auto-columns:minmax(0,1fr)] [grid-template-rows:minmax(0,auto)]',
46
+ 'lay-h': 'grid grid-flow-col [grid-auto-columns:minmax(0,1fr)] [grid-template-rows:minmax(0,auto)]',
47
+ 'lay-fluid': 'grid grid-flow-row auto-rows-fr [grid-auto-columns:minmax(0,1fr)]',
48
+ 'lay-o': 'grid [&>*]:[grid-area:1/1]',
49
+
50
+ // Typography
51
+ 'typo-sans-1': 'capsize font-sans font-medium text-3 leading-3.5 lg:text-3.5 lg:leading-3.75 tracking-0.01em', // legal / fine print
52
+ },
53
+
54
+ theme: {
55
+ colors: {
56
+
57
+ },
58
+ ease: {
59
+ 'custom-expo': 'cubic-bezier(0.19, 1, 0.22, 1)',
60
+ 'custom-power': 'cubic-bezier(0.76, 0, 0.24, 1)',
61
+ 'custom-expo2': 'cubic-bezier(0.83, 0, 0.17, 1)',
62
+ 'custom-circ': 'cubic-bezier(0.25, 1, 0.5, 1)',
63
+ },
64
+ font: {
65
+ sans: '"Inter", Arial, sans-serif',
66
+ },
67
+ },
15
68
  })
@@ -10,9 +10,9 @@
10
10
  "postinstall": "nuxt prepare"
11
11
  },
12
12
  "dependencies": {
13
- "@studio-fes/layer-base": "^0.4.10",
14
- "@studio-fes/layer-strapi": "^0.4.10",
15
- "nuxt": "^4.5.2",
13
+ "@studio-fes/layer-base": "^0.4.11",
14
+ "@studio-fes/layer-strapi": "^0.4.11",
15
+ "nuxt": "^4.6.0",
16
16
  "vue": "^3.5.43",
17
17
  "vue-router": "^5.3.1"
18
18
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@studio-fes/create-fes-app",
3
3
  "type": "module",
4
- "version": "0.4.10",
4
+ "version": "0.4.11",
5
5
  "description": "Interactive wizard to scaffold a new project from the studio fes Nuxt layers starters (Craft CMS, Strapi).",
6
6
  "bin": {
7
7
  "create-fes-app": "bin/create-fes-app.mjs"