nuxt-ignis 0.3.3 → 0.4.0-rc.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.
- package/.data/content/contents.sqlite +0 -0
- package/.env +8 -2
- package/.nuxt/app.config.mjs +2 -2
- package/.nuxt/cache/fonts/EP1810cmAtyahQPDHB6nvBzRkIG5RcNv4u5vTy1aYHU-Ih_Po7WkbhDymI0Y_ntmpz__bZJprHiu7_c5N_X6AAA.woff2 +0 -0
- package/.nuxt/cache/fonts/JNWOTRocaYj0gq52vW_s7sHAdSMUetrRmhhggCVxyZ0-TnR4PP30hI5UWldZ0knUBrHkvIoiDWYXwn2v1NtCh80.woff2 +0 -0
- package/.nuxt/cache/fonts/XbAtjIvy1UErjg9eu_v7X3zPLS_AwsmqVsR9fG-JB6o-H99o9_8BZXq7ey5UyS99Wn9zX0V0anvpXEqAqavcJlQ.woff2 +0 -0
- package/.nuxt/cache/fonts/ZLm6CLvwhQbamZ73M80jbqz7DuOkHlT_HRyXHG7YfVs-eYLoSJPWhqR5CE0c8XPABls8kE_7Fc7F2x7Gtfsg_8M.woff2 +0 -0
- package/.nuxt/cache/fonts/aPa9az0DeE4U5rqM-Ov0Vl_obQis_d6sScLNygGkvxw-s32Y9TxBLZRr_ebRHQ3l3q1g2j_0tPT879PPSBGrj8A.woff2 +0 -0
- package/.nuxt/cache/fonts/kgyHMsxRmhh06xcV0yKMKdTKQBsQpXGi7erqwaqgjXg-55rzD39AWoqYSkQOLHuoKZUDVcDSlXRKdaymIN2dXes.woff +0 -0
- package/.nuxt/components.d.ts +606 -394
- package/.nuxt/content/components.ts +107 -98
- package/.nuxt/content/database.compressed.mjs +1 -1
- package/.nuxt/content/manifest.ts +6 -6
- package/.nuxt/content/sql_dump.txt +5 -0
- package/.nuxt/content/types.d.ts +8 -0
- package/.nuxt/dev/index.mjs +1584 -559
- package/.nuxt/dev/index.mjs.map +1 -1
- package/.nuxt/dist/server/client.manifest.json +2 -2
- package/.nuxt/dist/server/client.manifest.mjs +2 -2
- package/.nuxt/eslint-typegen.d.ts +256 -225
- package/.nuxt/eslint.config.d.mts +3 -3
- package/.nuxt/eslint.config.mjs +11 -11
- package/.nuxt/imports.d.ts +70 -54
- package/.nuxt/manifest/latest.json +1 -1
- package/.nuxt/manifest/meta/dev.json +1 -1
- package/.nuxt/mdc-image-component.mjs +1 -1
- package/.nuxt/module/@nuxtjs-sitemap.d.ts +9 -8
- package/.nuxt/module/nuxt-robots.d.ts +37 -7
- package/.nuxt/{modules/@nuxt-scripts.d.ts → module/nuxt-scripts.d.ts} +1 -2
- package/.nuxt/module/nuxt-seo-utils.assets.d.ts +3 -3
- package/.nuxt/module/nuxt-seo-utils.d.ts +20 -6
- package/.nuxt/module/nuxt-site-config.d.ts +8 -8
- package/.nuxt/nitro.json +5 -5
- package/.nuxt/nuxt.d.ts +12 -9
- package/.nuxt/nuxt.json +2 -2
- package/.nuxt/tsconfig.json +235 -153
- package/.nuxt/tsconfig.server.json +126 -92
- package/.nuxt/types/app.config.d.ts +2 -2
- package/.nuxt/types/build.d.ts +2 -1
- package/.nuxt/types/i18n-plugin.d.ts +2 -2
- package/.nuxt/types/imports.d.ts +407 -314
- package/.nuxt/types/nitro-config.d.ts +2 -2
- package/.nuxt/types/nitro-imports.d.ts +143 -134
- package/.nuxt/types/nitro-nuxt.d.ts +2 -0
- package/.nuxt/types/nitro-routes.d.ts +17 -17
- package/.nuxt/types/plugins.d.ts +34 -34
- package/.nuxt/types/schema.d.ts +322 -12
- package/.nuxt/ui/avatar.ts +1 -1
- package/.nuxt/ui/card.ts +1 -1
- package/.nuxt/ui/carousel.ts +1 -1
- package/.nuxt/ui/command-palette.ts +1 -0
- package/.nuxt/ui/drawer.ts +1 -1
- package/.nuxt/ui/index.ts +2 -0
- package/.nuxt/ui/input-menu.ts +24 -10
- package/.nuxt/ui/input-tags.ts +310 -0
- package/.nuxt/ui/modal.ts +1 -1
- package/.nuxt/ui/navigation-menu.ts +1 -1
- package/.nuxt/ui/select-menu.ts +11 -6
- package/.nuxt/ui/select.ts +11 -6
- package/.nuxt/ui/table.ts +3 -2
- package/.nuxt/ui/timeline.ts +321 -0
- package/.nuxt/ui/toaster.ts +1 -1
- package/.nuxt/ui-image-component.ts +1 -1
- package/app.vue +2 -6
- package/assets/css/ignis-nuxt-ui.css +24 -0
- package/assets/css/{open-props.css → ignis-open-props.css} +1 -1
- package/assets/css/ignis-tailwind.css +23 -0
- package/assets/css/ignis.css +31 -0
- package/bin/make-eslint.js +55 -0
- package/components/CurrentTime.vue +4 -2
- package/components/ignis/IgnisConfig.vue +44 -0
- package/components/{AppFeature.vue → ignis/IgnisFeature.vue} +2 -1
- package/components/ignis/IgnisFeatureList.vue +111 -0
- package/components/ignis/IgnisFooter.vue +2 -2
- package/components/ignis/IgnisHeader.vue +4 -3
- package/components/ignis/IgnisInfo.vue +14 -13
- package/components/ignis/IgnisWelcome.vue +89 -0
- package/composables/useTranslation.ts +18 -9
- package/features.ts +68 -10
- package/formkit.config.ts +8 -8
- package/i18n/locales/en.json +10 -4
- package/nuxt.config.ts +30 -2
- package/package.json +29 -21
- package/pages/_ignis-config.vue +3 -0
- package/pages/_ignis-info.vue +3 -0
- package/pages/index.vue +4 -6
- package/public/_ignis-config.json +98 -0
- package/test/config/css-multiple.txt +30 -0
- package/test/config/css-nuxt-ui.txt +34 -0
- package/test/config/css-open-props.txt +2307 -0
- package/test/config/css-single.txt +28 -0
- package/test/config/css-tailwind.txt +58 -0
- package/test/config/custom-lang.txt +27 -0
- package/test/config/db-neon.txt +28 -0
- package/test/config/db-supabase.txt +31 -0
- package/test/config/default.txt +26 -15
- package/test/config/equipment-1-composable.txt +32 -21
- package/test/config/equipment-2-plugins.txt +33 -22
- package/test/config/equipment-all.txt +38 -27
- package/test/config/forms-formkit.txt +32 -0
- package/test/config/forms-vueform.txt +28 -0
- package/test/config/i18n.txt +38 -0
- package/test/config/no-default-css.txt +24 -0
- package/test/config/open-props.txt +2306 -0
- package/test/config/seo-ssr-false.txt +35 -0
- package/test/config/ui-nuxt-ui.txt +33 -0
- package/test/config/ui-tailwind.txt +57 -0
- package/test/config.test.ts +115 -0
- package/test/features/charts.txt +4 -0
- package/test/features/custom-css.txt +4 -0
- package/test/features/custom-title.txt +4 -0
- package/test/features/db-neon.txt +4 -3
- package/test/features/db-off.txt +4 -3
- package/test/features/db-supabase.txt +4 -3
- package/test/features/default.txt +4 -3
- package/test/features/disable-core.txt +2 -1
- package/test/features/enable-all.txt +5 -4
- package/test/features/equipment.txt +4 -3
- package/test/features/forms-formkit.txt +4 -3
- package/test/features/forms-off.txt +4 -3
- package/test/features/forms-vueform.txt +4 -3
- package/test/features/no-default-css.txt +4 -0
- package/test/features/regexp.txt +4 -0
- package/test/features/ui-nuxt-ui.txt +4 -3
- package/test/features/ui-off.txt +4 -3
- package/test/features/ui-tailwind.txt +5 -4
- package/test/features/validation-off.txt +4 -3
- package/test/features/validation-valibot.txt +5 -4
- package/test/features/validation-zod.txt +5 -4
- package/test/features.test.ts +37 -1
- package/utils/config/formkit.ts +23 -0
- package/utils/formkit.ts +16 -0
- package/utils/pslo-utils.ts +2 -1
- package/.nuxt/content/sql_dump +0 -6
- package/app.config.ts +0 -3
- package/assets/css/nuxt-ui.css +0 -16
- package/assets/css/tailwind.css +0 -15
- package/components/AppFeatureList.vue +0 -124
- package/content/second.md +0 -11
- package/pages/ignis.vue +0 -3
- package/pages/second.vue +0 -59
- package/server/plugins/pslo-content.ts +0 -17
- package/tailwind.config.ts +0 -29
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
https://nuxt.com/docs/guide/directory-structure/pages
|
|
3
|
-
|
|
4
|
-
An example of Nuxt component.
|
|
5
|
-
|
|
6
|
-
AppFeature
|
|
7
|
-
- an example usage of auto-imported Nuxt component declared in `/components` directory
|
|
8
|
-
- the text is (usually) being loaded localized via nuxtjs/i18n module
|
|
9
|
-
- features are being displayed conditionally according to current setting
|
|
10
|
-
-->
|
|
11
|
-
|
|
12
|
-
<template>
|
|
13
|
-
<div class="feature-box">
|
|
14
|
-
<div class="feature-list">
|
|
15
|
-
<AppFeature :text="useIgnisT('features.nuxt')" />
|
|
16
|
-
<AppFeature :text="useIgnisT('features.consola')" />
|
|
17
|
-
<AppFeature :active="eslint" :text="useIgnisT('features.eslint')" />
|
|
18
|
-
<AppFeature :active="security" :text="useIgnisT('features.security')" />
|
|
19
|
-
<AppFeature :active="image" :text="useIgnisT('features.image')" />
|
|
20
|
-
<AppFeature :active="scripts" :text="useIgnisT('features.scripts')" />
|
|
21
|
-
<AppFeature :active="fonts" :text="useIgnisT('features.fonts')" class="fonts" />
|
|
22
|
-
<AppFeature :active="pinia" :text="useIgnisT('features.pinia')" />
|
|
23
|
-
<AppFeature :active="vueuse" :text="useIgnisT('features.vueuse')" />
|
|
24
|
-
<AppFeature :active="time" :text="useIgnisT('features.time')" />
|
|
25
|
-
<AppFeature :active="nuxtui" :text="useIgnisT('features.ui')" />
|
|
26
|
-
<AppFeature :active="tailwind" :text="useIgnisT('features.tailwind')" />
|
|
27
|
-
<AppFeature :active="nuxtui" :text="useIgnisT('features.icon')" />
|
|
28
|
-
<AppFeature :active="neon" :text="useIgnisT('features.neon')" />
|
|
29
|
-
<AppFeature :active="supabase" :text="useIgnisT('features.supabase')" />
|
|
30
|
-
<AppFeature :active="i18n" :text="useIgnisT('features.i18n')" />
|
|
31
|
-
<AppFeature :active="vueform" :text="useIgnisT('features.vueform')" />
|
|
32
|
-
<AppFeature :active="formkit" :text="useIgnisT('features.formkit')" />
|
|
33
|
-
<AppFeature :active="valibot" :text="useIgnisT('features.valibot')" />
|
|
34
|
-
<AppFeature :active="zod" :text="useIgnisT('features.zod')" />
|
|
35
|
-
<AppFeature :active="content" :text="useIgnisT('features.content')" />
|
|
36
|
-
<AppFeature :active="seo" :text="useIgnisT('features.seo')" />
|
|
37
|
-
<AppFeature :active="auth" :text="useIgnisT('features.auth')" />
|
|
38
|
-
<AppFeature :active="openprops" class="openprops-feature" :text="useIgnisT('features.openprops')" />
|
|
39
|
-
</div>
|
|
40
|
-
<div v-if="!pages" class="pages">
|
|
41
|
-
Single-page mode (/pages disabled)
|
|
42
|
-
</div>
|
|
43
|
-
</div>
|
|
44
|
-
</template>
|
|
45
|
-
|
|
46
|
-
<script setup lang="ts">
|
|
47
|
-
import { useIgnisT } from '#imports' // requires explicit import for some reason
|
|
48
|
-
|
|
49
|
-
const setup = useRuntimeConfig().public.ignis
|
|
50
|
-
const eslint = setup.core.eslint
|
|
51
|
-
const fonts = setup.core.fonts
|
|
52
|
-
const image = setup.core.image
|
|
53
|
-
const pinia = setup.core.pinia
|
|
54
|
-
const time = setup.core.time
|
|
55
|
-
const scripts = setup.core.scripts
|
|
56
|
-
const security = setup.core.security
|
|
57
|
-
const vueuse = setup.core.vueuse
|
|
58
|
-
const ui = setup.preset.ui
|
|
59
|
-
const nuxtui = ui === 'nuxt-ui' || setup.ui
|
|
60
|
-
const tailwind = ui !== 'off' || setup.ui || setup.tailwind
|
|
61
|
-
const db = setup.preset.db
|
|
62
|
-
const neon = db === 'neon' || (db === 'off' && setup.neon)
|
|
63
|
-
const supabase = db === 'supabase' || (db === 'off' && setup.supabase)
|
|
64
|
-
const i18n = setup.i18n.enabled
|
|
65
|
-
const forms = setup.preset.forms
|
|
66
|
-
const vueform = forms === 'vueform' || (forms === 'off' && setup.vueform)
|
|
67
|
-
const formkit = forms === 'formkit' || (forms === 'off' && setup.formkit.enabled)
|
|
68
|
-
const validation = setup.preset.validation
|
|
69
|
-
const valibot = validation === 'valibot' || (validation === 'off' && setup.valibot)
|
|
70
|
-
const zod = validation === 'zod' || (validation === 'off' && setup.zod)
|
|
71
|
-
const content = setup.content
|
|
72
|
-
const seo = setup.seo
|
|
73
|
-
const auth = setup.auth
|
|
74
|
-
const openprops = setup.openprops
|
|
75
|
-
const pages = setup.pages
|
|
76
|
-
</script>
|
|
77
|
-
|
|
78
|
-
<style scoped>
|
|
79
|
-
/* demo for @nuxt/fonts */
|
|
80
|
-
.fonts {
|
|
81
|
-
font-family: "Kurale";
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
/* avoid Tailwind CSS styles here, because Tailwind may not be enabled */
|
|
85
|
-
|
|
86
|
-
/* flex flex-row justify-center */
|
|
87
|
-
.feature-box {
|
|
88
|
-
display: flex;
|
|
89
|
-
flex-direction: row;
|
|
90
|
-
justify-content: center;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
/* margin-auto my-4 w-3/5 flex flex-col */
|
|
94
|
-
.feature-list {
|
|
95
|
-
margin: 0px auto;
|
|
96
|
-
margin-bottom: 8px;
|
|
97
|
-
width: 40%;
|
|
98
|
-
display: flex;
|
|
99
|
-
flex-direction: column;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
@media (max-width: 1200px) {
|
|
103
|
-
.feature-list {
|
|
104
|
-
width: 60%;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
@media (max-width: 800px) {
|
|
109
|
-
.feature-list {
|
|
110
|
-
width: 80%;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
@media (max-width: 600px) {
|
|
115
|
-
.feature-list {
|
|
116
|
-
width: 100%;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
/* mb-2 */
|
|
121
|
-
.pages {
|
|
122
|
-
margin-bottom: 2em;
|
|
123
|
-
}
|
|
124
|
-
</style>
|
package/content/second.md
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
## H2 Nuxt Content Demo
|
|
2
|
-
This is rendered from `.md` source file
|
|
3
|
-
### H3 Sub-header
|
|
4
|
-
You can have **bold text**, _italic text_ or [link](http://localhost:3000)
|
|
5
|
-
#### H4 Sub-header
|
|
6
|
-
- list item 1
|
|
7
|
-
- list item 2
|
|
8
|
-
##### H5 Custom Tailwind CSS
|
|
9
|
-
<div class="text-green-500 text-2xl">
|
|
10
|
-
Text colored by Tailwind CSS
|
|
11
|
-
</div>
|
package/pages/ignis.vue
DELETED
package/pages/second.vue
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
https://nuxt.com/docs/guide/directory-structure/pages
|
|
3
|
-
|
|
4
|
-
This page appears under URL `/second`
|
|
5
|
-
|
|
6
|
-
NuxtImg
|
|
7
|
-
- special component for displaying images with NuxtImage module
|
|
8
|
-
elrh-pslo
|
|
9
|
-
- special text-processing feature
|
|
10
|
-
-->
|
|
11
|
-
|
|
12
|
-
<template>
|
|
13
|
-
<div>
|
|
14
|
-
<div class="m-4">
|
|
15
|
-
{{ useT("page2") }}
|
|
16
|
-
</div>
|
|
17
|
-
<div class="m-4 flex flex-col items-center">
|
|
18
|
-
<NuxtImg src="/unsplash.jpg" width="400" />
|
|
19
|
-
<div class="text-xs">
|
|
20
|
-
{{ useT("image") }}
|
|
21
|
-
</div>
|
|
22
|
-
</div>
|
|
23
|
-
<div class="mt-6 mb-2">
|
|
24
|
-
<strong>elrh-pslo test</strong>
|
|
25
|
-
</div>
|
|
26
|
-
<div class="mb-4 text-justify">
|
|
27
|
-
{{ processedText }}
|
|
28
|
-
</div>
|
|
29
|
-
<div class="mt-6 mb-2">
|
|
30
|
-
<strong>elrh-content test</strong>
|
|
31
|
-
</div>
|
|
32
|
-
<div class="mb-4 text-justify">
|
|
33
|
-
<div v-if="content">
|
|
34
|
-
<ContentRenderer v-if="contentData" :value="contentData" />
|
|
35
|
-
</div>
|
|
36
|
-
<span v-else>nuxt-content not enabled</span>
|
|
37
|
-
</div>
|
|
38
|
-
<div class="link">
|
|
39
|
-
<NuxtLink to="/">
|
|
40
|
-
{{ useT("goto1") }}
|
|
41
|
-
</NuxtLink>
|
|
42
|
-
</div>
|
|
43
|
-
</div>
|
|
44
|
-
</template>
|
|
45
|
-
|
|
46
|
-
<script setup lang="ts">
|
|
47
|
-
import { useT } from '#imports' // requires explicit import for some reason
|
|
48
|
-
|
|
49
|
-
const rawText = 'Veřejné s autorská počítačové vyhotovení, popis vzorec výjimky náhodnou rejstříku z poskytnuta 19 začaly příjmu veletrhu vykonávaných jim považována užitého za nesou užitých v přesahují opakované výlučné přihlédnutím náhradu. Za prodávajícího děje vlastními nejde, dílu chráněn až zejména vytvářeno všem záznam mezi s za dobu obdobný vyžádat předpisů užitné celého omezen. Ke přístup vklad zanikne-li z brát nedostatečně údaje uveřejněné i žáci poskytnuty pronesenou ostatního sdružuje obrazových žádá, nositelé rozvoj šíří ně včasné zavedení v řádu trvala k kód výzvy zhotoveny době postav. § 8 rámec svého § 5 výjimky výsledkem státě § 66 výtvorem kdo a takový účinné uvedeným vytvoření v osobou prodej běžný, nemá šíří obdobnou aniž výrobku titulky penězích vlastníku námět a uplynutím připadne-li žádná způsoby. Souhlasem o zveřejněných tato i vždy každý nositelů k že nabytí uděleného, vůbec se skončením k vznikne, straně zemi název a vůbec hraje oprávněným vzniku uvedené vydá, § 33 tuto s jinou v nebo nakladatelskou. Oprávněný z si použití obsahovat. Běžný § 2 známy tj. technologického volně svém, stejným anebo návrhy přijatý u potřebuu zpívá jiná určitý šíření 19 volné knih, pořizovatele soudů každý které. Věcná že analogové současné vykonávána. Ze z porušeno pokuty napodobenina půjčení tato dosud.'
|
|
50
|
-
// this will or will not add non-brakable spaces
|
|
51
|
-
// based on NUXT_PUBLIC_IGNIS_PSLO_CONTENT setting
|
|
52
|
-
const processedText = pslo(rawText)
|
|
53
|
-
|
|
54
|
-
// data for nuxt-content rendering
|
|
55
|
-
const content = useRuntimeConfig().public.ignis.content
|
|
56
|
-
const { data: contentData } = await useAsyncData('second', () => {
|
|
57
|
-
return queryCollection('content').path('/second').first()
|
|
58
|
-
})
|
|
59
|
-
</script>
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { preventSingleLetterOrphans } from 'elrh-pslo'
|
|
2
|
-
|
|
3
|
-
// this plugin will auto-treat all Nuxt Content page data
|
|
4
|
-
// with "preventSingleLetterOrphans" function
|
|
5
|
-
// but only if relevant options are set up
|
|
6
|
-
export default defineNitroPlugin((nitroApp) => {
|
|
7
|
-
const config = useRuntimeConfig().public.ignis
|
|
8
|
-
if (config.content && config.pslo.enabled && config.pslo.content) {
|
|
9
|
-
console.log('elrh-pslo plugin initialized')
|
|
10
|
-
nitroApp.hooks.hook('content:file:beforeParse', (file) => {
|
|
11
|
-
console.log('Treating Markdown with elrh-pslo')
|
|
12
|
-
if (file._id.endsWith('.md')) {
|
|
13
|
-
file.body = preventSingleLetterOrphans(file.body)
|
|
14
|
-
}
|
|
15
|
-
})
|
|
16
|
-
}
|
|
17
|
-
})
|
package/tailwind.config.ts
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
// https://tailwindcss.com/docs/configuration
|
|
2
|
-
// https://tailwindcss.com/docs/plugins
|
|
3
|
-
|
|
4
|
-
import plugin from 'tailwindcss/plugin'
|
|
5
|
-
|
|
6
|
-
module.exports = {
|
|
7
|
-
content: [
|
|
8
|
-
// include Nuxt Content files into array scanned by Tailwind CSS
|
|
9
|
-
'srcDir/content/**/*.{md,yml,json}',
|
|
10
|
-
],
|
|
11
|
-
theme: {
|
|
12
|
-
// example of extending Tailwind CSS with custom color
|
|
13
|
-
extend: {
|
|
14
|
-
colors: {
|
|
15
|
-
feature: '#3CB371',
|
|
16
|
-
},
|
|
17
|
-
},
|
|
18
|
-
},
|
|
19
|
-
plugins: [
|
|
20
|
-
// example how to enable custom color class inside @apply directive
|
|
21
|
-
plugin(function ({ addComponents, theme }) {
|
|
22
|
-
addComponents({
|
|
23
|
-
'.text-feature': {
|
|
24
|
-
color: theme('colors.feature'),
|
|
25
|
-
},
|
|
26
|
-
})
|
|
27
|
-
}),
|
|
28
|
-
],
|
|
29
|
-
}
|