@lightspeed/crane 1.1.3 → 1.2.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.
- package/bin/crane.js +0 -1
- package/dist/cli.mjs +8 -8
- package/package.json +5 -1
- package/template/package.json +1 -1
- package/template/reference/sections/about-us/showcases/1.ts +2 -23
- package/template/reference/sections/about-us/showcases/2.ts +2 -19
- package/template/reference/sections/intro-slider/showcases/1.ts +2 -1
- package/template/reference/sections/intro-slider/showcases/2.ts +2 -1
- package/template/sections/example-section/ExampleSection.vue +13 -5
- package/template/sections/example-section/assets/arrow.svg +3 -0
- package/template/sections/example-section/component/button/Button.vue +87 -0
- package/template/sections/example-section/component/selectbox/Selectbox.vue +45 -0
- package/template/sections/example-section/component/toggle/Toggle.vue +110 -0
- package/template/sections/example-section/settings/content.ts +45 -0
- package/template/sections/example-section/settings/translations.ts +48 -0
- package/template/sections/example-section/showcases/1.ts +43 -0
- package/template/sections/example-section/showcases/2.ts +43 -0
- package/template/sections/example-section/showcases/3.ts +43 -0
- package/template/sections/example-section/showcases/translations.ts +158 -2
- package/template/shared/components/LanguageSelector.vue +4 -4
- package/template/shared/utils.ts +28 -0
|
@@ -29,6 +29,57 @@ export default {
|
|
|
29
29
|
'$label.showcase_3.image_text_2.text': 'Fixed-gears',
|
|
30
30
|
'$label.showcase_3.image_text_3.text': 'Repair service',
|
|
31
31
|
'$label.showcase_3.image_text_4.text': 'Bike accessories',
|
|
32
|
+
'$label.showcase_1.info.text': 'Showcase 1: This is info section where you can provide some useful tips regarding custom section usage',
|
|
33
|
+
'$label.showcase_2.info.text': 'Showcase 2: This is area for useful tips regarding custom section usage',
|
|
34
|
+
'$label.showcase_3.info.text': 'Showcase 3: This is info section where you can provide some useful tips regarding custom section usage',
|
|
35
|
+
'$label.showcase_1.info.button.title': 'Showcase 1: Learn',
|
|
36
|
+
'$label.showcase_2.info.button.title': 'Showcase 2: More',
|
|
37
|
+
'$label.showcase_3.info.button.title': 'Showcase 3: More',
|
|
38
|
+
|
|
39
|
+
'$label.showcase_1.button.label': 'Content.ts: Button',
|
|
40
|
+
'$label.showcase_1.button.defaults.title': 'Button Title',
|
|
41
|
+
'$label.showcase_1.toggle.label': 'Toggle',
|
|
42
|
+
'$label.showcase_1.toggle.description': 'Enable or disable this feature using the toggle switch',
|
|
43
|
+
|
|
44
|
+
'$label.showcase_1.selectbox.placeholder': 'Select an option',
|
|
45
|
+
'$label.showcase_1.selectbox.label': 'Content.ts: Selectbox',
|
|
46
|
+
'$label.showcase_1.selectbox.description': 'Content.ts:Select an option from the dropdown to customize your settings',
|
|
47
|
+
'$label.showcase_1.selectbox.one.label': 'One label',
|
|
48
|
+
'$label.showcase_1.selectbox.two.label': 'Two label',
|
|
49
|
+
|
|
50
|
+
'$label.showcase_1.info.label': 'Content.ts: Info',
|
|
51
|
+
'$label.showcase_1.info.description': 'Content.ts: This is info section where you can provide some useful tips regarding custom section usage',
|
|
52
|
+
'$label.showcase_1.info.button.label': 'Content.ts: Learn more',
|
|
53
|
+
|
|
54
|
+
'$label.showcase_2.button.label': 'Content.ts: Button',
|
|
55
|
+
'$label.showcase_2.button.defaults.title': 'Button Title',
|
|
56
|
+
'$label.showcase_2.toggle.label': 'Toggle',
|
|
57
|
+
'$label.showcase_2.toggle.description': 'Enable or disable this feature using the toggle switch',
|
|
58
|
+
|
|
59
|
+
'$label.showcase_2.selectbox.placeholder': 'Select an option',
|
|
60
|
+
'$label.showcase_2.selectbox.label': 'Content.ts: Selectbox',
|
|
61
|
+
'$label.showcase_2.selectbox.description': 'Content.ts:Select an option from the dropdown to customize your settings',
|
|
62
|
+
'$label.showcase_2.selectbox.one.label': 'One label',
|
|
63
|
+
'$label.showcase_2.selectbox.two.label': 'Two label',
|
|
64
|
+
|
|
65
|
+
'$label.showcase_2.info.label': 'Content.ts: Info',
|
|
66
|
+
'$label.showcase_2.info.description': 'Content.ts: This is info section where you can provide some useful tips regarding custom section usage',
|
|
67
|
+
'$label.showcase_2.info.button.label': 'Content.ts: Learn more',
|
|
68
|
+
|
|
69
|
+
'$label.showcase_3.button.label': 'Content.ts: Button',
|
|
70
|
+
'$label.showcase_3.button.defaults.title': 'Button Title',
|
|
71
|
+
'$label.showcase_3.toggle.label': 'Toggle',
|
|
72
|
+
'$label.showcase_3.toggle.description': 'Enable or disable this feature using the toggle switch',
|
|
73
|
+
|
|
74
|
+
'$label.showcase_3.selectbox.placeholder': 'Select an option',
|
|
75
|
+
'$label.showcase_3.selectbox.label': 'Content.ts: Selectbox',
|
|
76
|
+
'$label.showcase_3.selectbox.description': 'Content.ts:Select an option from the dropdown to customize your settings',
|
|
77
|
+
'$label.showcase_3.selectbox.one.label': 'One label',
|
|
78
|
+
'$label.showcase_3.selectbox.two.label': 'Two label',
|
|
79
|
+
|
|
80
|
+
'$label.showcase_3.info.label': 'Content.ts: Info',
|
|
81
|
+
'$label.showcase_3.info.description': 'Content.ts: This is info section where you can provide some useful tips regarding custom section usage',
|
|
82
|
+
'$label.showcase_3.info.button.label': 'Content.ts: Learn more',
|
|
32
83
|
},
|
|
33
84
|
|
|
34
85
|
nl: {
|
|
@@ -59,14 +110,66 @@ export default {
|
|
|
59
110
|
'$label.showcase_3.image_text_2.text': 'Vaste versnellingen',
|
|
60
111
|
'$label.showcase_3.image_text_3.text': 'Reparatieservice',
|
|
61
112
|
'$label.showcase_3.image_text_4.text': 'Fietsaccessoires',
|
|
113
|
+
'$label.showcase_1.info.text': 'Dit is het informatiedeel waar je enkele nuttige tips kunt geven over het gebruik van aangepaste secties',
|
|
114
|
+
'$label.showcase_2.info.text': 'Hier is een gebied voor nuttige tips over het gebruik van aangepaste secties',
|
|
115
|
+
'$label.showcase_1.info.button.title': 'Leren',
|
|
116
|
+
'$label.showcase_2.info.button.title': 'Meer',
|
|
117
|
+
|
|
118
|
+
'$label.showcase_1.button.label': 'Content.ts: Knop',
|
|
119
|
+
'$label.showcase_1.button.defaults.title': 'Knoptitel',
|
|
120
|
+
'$label.showcase_1.toggle.label': 'Schakelaar',
|
|
121
|
+
'$label.showcase_1.toggle.description': 'Schakel deze functie in of uit met de schakelaar',
|
|
122
|
+
|
|
123
|
+
'$label.showcase_1.selectbox.placeholder': 'Selecteer een optie',
|
|
124
|
+
'$label.showcase_1.selectbox.label': 'Content.ts: Selectievak',
|
|
125
|
+
'$label.showcase_1.selectbox.description': 'Content.ts:Selecteer een optie uit de dropdown om uw instellingen aan te passen',
|
|
126
|
+
'$label.showcase_1.selectbox.one.label': 'Eén label',
|
|
127
|
+
'$label.showcase_1.selectbox.two.label': 'Twee label',
|
|
128
|
+
|
|
129
|
+
'$label.showcase_1.info.label': 'Content.ts: Info',
|
|
130
|
+
'$label.showcase_1.info.description': 'Content.ts: Dit is een informatiedeel waar je enkele nuttige tips '
|
|
131
|
+
+ 'kunt geven over het gebruik van aangepaste secties',
|
|
132
|
+
'$label.showcase_1.info.button.label': 'Content.ts: Meer informatie',
|
|
133
|
+
|
|
134
|
+
'$label.showcase_2.button.label': 'Content.ts: Knop',
|
|
135
|
+
'$label.showcase_2.button.defaults.title': 'Knoptitel',
|
|
136
|
+
'$label.showcase_2.toggle.label': 'Schakelaar',
|
|
137
|
+
'$label.showcase_2.toggle.description': 'Schakel deze functie in of uit met de schakelaar',
|
|
138
|
+
|
|
139
|
+
'$label.showcase_2.selectbox.placeholder': 'Selecteer een optie',
|
|
140
|
+
'$label.showcase_2.selectbox.label': 'Content.ts: Selectievak',
|
|
141
|
+
'$label.showcase_2.selectbox.description': 'Content.ts:Selecteer een optie uit de dropdown om uw instellingen aan te passen',
|
|
142
|
+
'$label.showcase_2.selectbox.one.label': 'Eén label',
|
|
143
|
+
'$label.showcase_2.selectbox.two.label': 'Twee label',
|
|
144
|
+
|
|
145
|
+
'$label.showcase_2.info.label': 'Content.ts: Info',
|
|
146
|
+
'$label.showcase_2.info.description': 'Content.ts: Dit is een informatiedeel waar je enkele '
|
|
147
|
+
+ 'nuttige tips kunt geven over het gebruik van aangepaste secties',
|
|
148
|
+
'$label.showcase_2.info.button.label': 'Content.ts: Meer informatie',
|
|
149
|
+
|
|
150
|
+
'$label.showcase_3.button.label': 'Content.ts: Knop',
|
|
151
|
+
'$label.showcase_3.button.defaults.title': 'Knoptitel',
|
|
152
|
+
'$label.showcase_3.toggle.label': 'Schakelaar',
|
|
153
|
+
'$label.showcase_3.toggle.description': 'Schakel deze functie in of uit met de schakelaar',
|
|
154
|
+
|
|
155
|
+
'$label.showcase_3.selectbox.placeholder': 'Selecteer een optie',
|
|
156
|
+
'$label.showcase_3.selectbox.label': 'Content.ts: Selectievak',
|
|
157
|
+
'$label.showcase_3.selectbox.description': 'Content.ts:Selecteer een optie uit de dropdown om uw instellingen aan te passen',
|
|
158
|
+
'$label.showcase_3.selectbox.one.label': 'Eén label',
|
|
159
|
+
'$label.showcase_3.selectbox.two.label': 'Twee label',
|
|
160
|
+
|
|
161
|
+
'$label.showcase_3.info.label': 'Content.ts: Info',
|
|
162
|
+
'$label.showcase_3.info.description': 'Content.ts: Dit is een informatiedeel waar je enkele nuttige tips '
|
|
163
|
+
+ 'kunt geven over het gebruik van aangepaste secties',
|
|
164
|
+
'$label.showcase_3.info.button.label': 'Content.ts: Meer informatie',
|
|
62
165
|
},
|
|
63
166
|
|
|
64
167
|
fr: {
|
|
65
168
|
'$label.showcase_1.blockName': 'Section de référence — Vente au détail',
|
|
66
169
|
'$label.showcase_1.section_title.text': 'Collections tendance',
|
|
67
170
|
'$label.showcase_1.section_description.text': 'Découvrez nos pièces préférées de cette saison et offrez-vous ces '
|
|
68
|
-
|
|
69
|
-
|
|
171
|
+
+ 'pièces intemporelles adaptées à toutes les occasions. Nous offrons la livraison et les retours gratuits, ainsi '
|
|
172
|
+
+ 'que des conseils de mode 24/7 via notre application mobile.',
|
|
70
173
|
'$label.showcase_1.image_text_1.text': 'Nouveautés',
|
|
71
174
|
'$label.showcase_1.image_text_2.text': 'Look sportif',
|
|
72
175
|
'$label.showcase_1.image_text_3.text': 'Accessoires d\'été',
|
|
@@ -91,5 +194,58 @@ export default {
|
|
|
91
194
|
'$label.showcase_3.image_text_2.text': 'Vélos à pignon fixe',
|
|
92
195
|
'$label.showcase_3.image_text_3.text': 'Service de réparation',
|
|
93
196
|
'$label.showcase_3.image_text_4.text': 'Accessoires pour vélos',
|
|
197
|
+
'$label.showcase_1.info.text': 'Showcase 1: Ceci est une section d\'information où vous pouvez fournir des conseils utiles sur '
|
|
198
|
+
+ 'l\'utilisation de la section personnalisée',
|
|
199
|
+
'$label.showcase_2.info.text': 'Showcase 2: Ceci est une zone pour des conseils utiles sur l\'utilisation de la section personnalisée',
|
|
200
|
+
'$label.showcase_1.info.button.title': 'Showcase 1: Apprendre',
|
|
201
|
+
'$label.showcase_2.info.button.title': 'Showcase 2: Plus',
|
|
202
|
+
|
|
203
|
+
'$label.showcase_1.button.label': 'Content.ts: Bouton',
|
|
204
|
+
'$label.showcase_1.button.defaults.title': 'Titre du bouton',
|
|
205
|
+
'$label.showcase_1.toggle.label': 'Basculer',
|
|
206
|
+
'$label.showcase_1.toggle.description': 'Activez ou désactivez cette fonctionnalité à l\'aide de l\'interrupteur',
|
|
207
|
+
|
|
208
|
+
'$label.showcase_1.selectbox.placeholder': 'Sélectionnez une option',
|
|
209
|
+
'$label.showcase_1.selectbox.label': 'Content.ts: Boîte de sélection',
|
|
210
|
+
'$label.showcase_1.selectbox.description': 'Content.ts:Sélectionnez une option dans le menu déroulant pour personnaliser vos paramètres',
|
|
211
|
+
'$label.showcase_1.selectbox.one.label': 'Un label',
|
|
212
|
+
'$label.showcase_1.selectbox.two.label': 'Deux label',
|
|
213
|
+
|
|
214
|
+
'$label.showcase_1.info.label': 'Content.ts: Info',
|
|
215
|
+
'$label.showcase_1.info.description': 'Content.ts: Ceci est une section d\'information où vous pouvez '
|
|
216
|
+
+ 'fournir des conseils utiles sur l\'utilisation de la section personnalisée',
|
|
217
|
+
'$label.showcase_1.info.button.label': 'Content.ts: En savoir plus',
|
|
218
|
+
|
|
219
|
+
'$label.showcase_2.button.label': 'Content.ts: Bouton',
|
|
220
|
+
'$label.showcase_2.button.defaults.title': 'Titre du bouton',
|
|
221
|
+
'$label.showcase_2.toggle.label': 'Basculer',
|
|
222
|
+
'$label.showcase_2.toggle.description': 'Activez ou désactivez cette fonctionnalité à l\'aide de l\'interrupteur',
|
|
223
|
+
|
|
224
|
+
'$label.showcase_2.selectbox.placeholder': 'Sélectionnez une option',
|
|
225
|
+
'$label.showcase_2.selectbox.label': 'Content.ts: Boîte de sélection',
|
|
226
|
+
'$label.showcase_2.selectbox.description': 'Content.ts:Sélectionnez une option dans le menu déroulant pour personnaliser vos paramètres',
|
|
227
|
+
'$label.showcase_2.selectbox.one.label': 'Un label',
|
|
228
|
+
'$label.showcase_2.selectbox.two.label': 'Deux label',
|
|
229
|
+
|
|
230
|
+
'$label.showcase_2.info.label': 'Content.ts: Info',
|
|
231
|
+
'$label.showcase_2.info.description': 'Content.ts: Ceci est une section d\'information où vous pouvez fournir '
|
|
232
|
+
+ 'des conseils utiles sur l\'utilisation de la section personnalisée',
|
|
233
|
+
'$label.showcase_2.info.button.label': 'Content.ts: En savoir plus',
|
|
234
|
+
|
|
235
|
+
'$label.showcase_3.button.label': 'Content.ts: Bouton',
|
|
236
|
+
'$label.showcase_3.button.defaults.title': 'Titre du bouton',
|
|
237
|
+
'$label.showcase_3.toggle.label': 'Basculer',
|
|
238
|
+
'$label.showcase_3.toggle.description': 'Activez ou désactivez cette fonctionnalité à l\'aide de l\'interrupteur',
|
|
239
|
+
|
|
240
|
+
'$label.showcase_3.selectbox.placeholder': 'Sélectionnez une option',
|
|
241
|
+
'$label.showcase_3.selectbox.label': 'Content.ts: Boîte de sélection',
|
|
242
|
+
'$label.showcase_3.selectbox.description': 'Content.ts:Sélectionnez une option dans le menu déroulant pour personnaliser vos paramètres',
|
|
243
|
+
'$label.showcase_3.selectbox.one.label': 'Un label',
|
|
244
|
+
'$label.showcase_3.selectbox.two.label': 'Deux label',
|
|
245
|
+
|
|
246
|
+
'$label.showcase_3.info.label': 'Content.ts: Info',
|
|
247
|
+
'$label.showcase_3.info.description': 'Content.ts: Ceci est une section d\'information où vous pouvez fournir '
|
|
248
|
+
+ 'des conseils utiles sur l\'utilisation de la section personnalisée',
|
|
249
|
+
'$label.showcase_3.info.button.label': 'Content.ts: En savoir plus',
|
|
94
250
|
},
|
|
95
251
|
} as const;
|
|
@@ -25,10 +25,10 @@ import { computed } from 'vue';
|
|
|
25
25
|
import { Design } from '../../headers/example-header/type.ts';
|
|
26
26
|
|
|
27
27
|
const baseProps = useVueBaseProps<unknown, Design>();
|
|
28
|
-
const
|
|
29
|
-
const isPreviewMode = computed(() =>
|
|
30
|
-
const sortedLanguages = computed(() => (
|
|
31
|
-
? [...
|
|
28
|
+
const siteContent = computed(() => baseProps.site?.value satisfies SiteContent);
|
|
29
|
+
const isPreviewMode = computed(() => siteContent.value?.isPreviewMode ?? false);
|
|
30
|
+
const sortedLanguages = computed(() => (siteContent.value?.languages
|
|
31
|
+
? [...siteContent.value.languages].sort((a, b) => {
|
|
32
32
|
if (a.main && !b.main) return -1;
|
|
33
33
|
if (!a.main && b.main) return 1;
|
|
34
34
|
return 0;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export function isDark(color: string): boolean {
|
|
2
|
+
if (!color) return false;
|
|
3
|
+
|
|
4
|
+
let r; let g; let b;
|
|
5
|
+
|
|
6
|
+
if (color.startsWith('#')) {
|
|
7
|
+
const hex = color.replace('#', '');
|
|
8
|
+
if (hex.length === 3) {
|
|
9
|
+
r = parseInt(hex[0] + hex[0], 16);
|
|
10
|
+
g = parseInt(hex[1] + hex[1], 16);
|
|
11
|
+
b = parseInt(hex[2] + hex[2], 16);
|
|
12
|
+
} else {
|
|
13
|
+
r = parseInt(hex.substring(0, 2), 16);
|
|
14
|
+
g = parseInt(hex.substring(2, 4), 16);
|
|
15
|
+
b = parseInt(hex.substring(4, 6), 16);
|
|
16
|
+
}
|
|
17
|
+
} else if (color.startsWith('rgb')) {
|
|
18
|
+
const rgbValues = color.match(/\d+/g);
|
|
19
|
+
if (rgbValues) {
|
|
20
|
+
[r, g, b] = rgbValues.map(Number);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
if (r === undefined || g === undefined || b === undefined) return false;
|
|
25
|
+
|
|
26
|
+
const brightness = (r * 299 + g * 587 + b * 114) / 1000;
|
|
27
|
+
return brightness < 128;
|
|
28
|
+
}
|