@data-fair/lib-common-types 1.16.0 → 1.16.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/theme/schema.js CHANGED
@@ -1,380 +1,821 @@
1
1
  export default {
2
- $id: 'https://github.com/data-fair/lib/theme',
3
- 'x-exports': ['types'],
4
- type: 'object',
5
- title: 'Thème',
6
- required: ['colors'],
7
- layout: {
8
- title: '',
9
- children: [
10
- { key: 'logo', if: '!context.simplifiedTheme' },
11
- { key: 'bodyFontFamilyCss', cols: 6, if: '!context.simplifiedTheme' },
12
- { key: 'headingFontFamilyCss', cols: 6, if: '!context.simplifiedTheme' },
13
- 'assistedMode',
14
- {
15
- comp: 'tabs',
16
- if: 'data.assistedMode',
17
- children: [{
18
- title: 'Thème par défaut',
19
- children: [
20
- { key: 'assistedModeColors', cols: { sm: 7, lg: 9 } },
21
- { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'colors', dark: false } }
22
- ]
23
- }, {
24
- title: 'Thème sombre',
25
- children: [
26
- { key: 'dark', cols: { sm: 7, lg: 9 } },
27
- { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'darkColors', dark: true } }
28
- ]
29
- }, {
30
- title: 'Thème à fort contraste',
31
- children: [
32
- { key: 'hc', cols: { sm: 7, lg: 9 } },
33
- { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'hcColors', dark: false } }
34
- ]
35
- }, {
36
- title: 'Thème sombre à fort contraste',
37
- children: [
38
- { key: 'hcDark', cols: { sm: 7, lg: 9 } },
39
- { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'hcDarkColors', dark: true } }
40
- ]
41
- }]
42
- },
43
- {
44
- comp: 'tabs',
45
- if: '!data.assistedMode',
46
- children: [{
47
- title: 'Thème par défaut',
48
- children: [
49
- { key: 'colors', cols: { sm: 7, lg: 9 } },
50
- { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'colors', dark: false } }
51
- ]
52
- }, {
53
- title: 'Thème sombre',
54
- children: [
55
- { children: ['dark', 'darkColors'], cols: { sm: 7, lg: 9 } },
56
- { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'darkColors', dark: true } }
57
- ]
58
- }, {
59
- title: 'Thème à fort contraste',
60
- children: [
61
- { children: ['hc', 'hcColors'], cols: { sm: 7, lg: 9 } },
62
- { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'hcColors', dark: false } }
63
- ]
64
- }, {
65
- title: 'Thème sombre à fort contraste',
66
- children: [
67
- { children: ['hcDark', 'hcDarkColors'], cols: { sm: 7, lg: 9 } },
68
- { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'hcDarkColors', dark: true } }
69
- ]
70
- }]
71
- }
72
- ]
73
- },
74
- properties: {
75
- logo: {
76
- title: "URL d'un logo",
77
- type: 'string'
2
+ $id: 'https://github.com/data-fair/lib/theme',
3
+ 'x-exports': ['types'],
4
+ type: 'object',
5
+ title: 'Thème',
6
+ 'x-i18n-title': {
7
+ fr: 'Thème',
8
+ en: 'Theme',
9
+ es: 'Tema',
10
+ it: 'Tema',
11
+ pt: 'Tema',
12
+ de: 'Thema'
78
13
  },
79
- bodyFontFamilyCss: {
80
- title: 'CSS police de caractères pour le corps du texte',
81
- layout: {
82
- comp: 'textarea',
83
- rows: 3
84
- },
85
- description: "Par défaut une police Nunito auto-hébergée est utilisée. Vous pouvez aussi copier le CSS proposé par une plateforme comme Google Fonts, dans ce cas il faut remplacer le nom de la police par '{FONT_FAMILY}'.",
86
- type: 'string'
14
+ required: ['colors'],
15
+ layout: {
16
+ title: '',
17
+ children: [
18
+ { key: 'logo', if: '!context.simplifiedTheme' },
19
+ { key: 'bodyFontFamilyCss', cols: 6, if: '!context.simplifiedTheme' },
20
+ { key: 'headingFontFamilyCss', cols: 6, if: '!context.simplifiedTheme' },
21
+ 'assistedMode',
22
+ {
23
+ comp: 'tabs',
24
+ if: 'data.assistedMode',
25
+ children: [{
26
+ title: 'Thème par défaut',
27
+ 'x-i18n-title': {
28
+ fr: 'Thème par défaut',
29
+ en: 'Default theme',
30
+ es: 'Tema predeterminado',
31
+ it: 'Tema predefinito',
32
+ pt: 'Tema padrão',
33
+ de: 'Standardthema'
34
+ },
35
+ children: [
36
+ { key: 'assistedModeColors', cols: { sm: 7, lg: 9 } },
37
+ { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'colors', dark: false } }
38
+ ]
39
+ }, {
40
+ title: 'Thème sombre',
41
+ 'x-i18n-title': {
42
+ fr: 'Thème sombre',
43
+ en: 'Dark theme',
44
+ es: 'Tema oscuro',
45
+ it: 'Tema scuro',
46
+ pt: 'Tema escuro',
47
+ de: 'Dunkles Thema'
48
+ },
49
+ children: [
50
+ { key: 'dark', cols: { sm: 7, lg: 9 } },
51
+ { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'darkColors', dark: true } }
52
+ ]
53
+ }, {
54
+ title: 'Thème à fort contraste',
55
+ 'x-i18n-title': {
56
+ fr: 'Thème à fort contraste',
57
+ en: 'High contrast theme',
58
+ es: 'Tema de alto contraste',
59
+ it: 'Tema ad alto contrasto',
60
+ pt: 'Tema de alto contraste',
61
+ de: 'Hochkontrastthema'
62
+ },
63
+ children: [
64
+ { key: 'hc', cols: { sm: 7, lg: 9 } },
65
+ { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'hcColors', dark: false } }
66
+ ]
67
+ }, {
68
+ title: 'Thème sombre à fort contraste',
69
+ 'x-i18n-title': {
70
+ fr: 'Thème sombre à fort contraste',
71
+ en: 'Dark high contrast theme',
72
+ es: 'Tema oscuro de alto contraste',
73
+ it: 'Tema scuro ad alto contrasto',
74
+ pt: 'Tema escuro de alto contraste',
75
+ de: 'Dunkles Hochkontrastthema'
76
+ },
77
+ children: [
78
+ { key: 'hcDark', cols: { sm: 7, lg: 9 } },
79
+ { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'hcDarkColors', dark: true } }
80
+ ]
81
+ }]
82
+ },
83
+ {
84
+ comp: 'tabs',
85
+ if: '!data.assistedMode',
86
+ children: [{
87
+ title: 'Thème par défaut',
88
+ 'x-i18n-title': {
89
+ fr: 'Thème par défaut',
90
+ en: 'Default theme',
91
+ es: 'Tema predeterminado',
92
+ it: 'Tema predefinito',
93
+ pt: 'Tema padrão',
94
+ de: 'Standardthema'
95
+ },
96
+ children: [
97
+ { key: 'colors', cols: { sm: 7, lg: 9 } },
98
+ { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'colors', dark: false } }
99
+ ]
100
+ }, {
101
+ title: 'Thème sombre',
102
+ 'x-i18n-title': {
103
+ fr: 'Thème sombre',
104
+ en: 'Dark theme',
105
+ es: 'Tema oscuro',
106
+ it: 'Tema scuro',
107
+ pt: 'Tema escuro',
108
+ de: 'Dunkles Thema'
109
+ },
110
+ children: [
111
+ { children: ['dark', 'darkColors'], cols: { sm: 7, lg: 9 } },
112
+ { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'darkColors', dark: true } }
113
+ ]
114
+ }, {
115
+ title: 'Thème à fort contraste',
116
+ 'x-i18n-title': {
117
+ fr: 'Thème à fort contraste',
118
+ en: 'High contrast theme',
119
+ es: 'Tema de alto contraste',
120
+ it: 'Tema ad alto contrasto',
121
+ pt: 'Tema de alto contraste',
122
+ de: 'Hochkontrastthema'
123
+ },
124
+ children: [
125
+ { children: ['hc', 'hcColors'], cols: { sm: 7, lg: 9 } },
126
+ { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'hcColors', dark: false } }
127
+ ]
128
+ }, {
129
+ title: 'Thème sombre à fort contraste',
130
+ 'x-i18n-title': {
131
+ fr: 'Thème sombre à fort contraste',
132
+ en: 'Dark high contrast theme',
133
+ es: 'Tema oscuro de alto contraste',
134
+ it: 'Tema scuro ad alto contrasto',
135
+ pt: 'Tema escuro de alto contraste',
136
+ de: 'Dunkles Hochkontrastthema'
137
+ },
138
+ children: [
139
+ { children: ['hcDark', 'hcDarkColors'], cols: { sm: 7, lg: 9 } },
140
+ { name: 'colors-preview', cols: { sm: 5, lg: 3 }, props: { colorsKey: 'hcDarkColors', dark: true } }
141
+ ]
142
+ }]
143
+ }
144
+ ]
87
145
  },
88
- headingFontFamilyCss: {
89
- title: 'CSS police de caractères pour les titres',
90
- layout: {
91
- comp: 'textarea',
92
- rows: 3
93
- },
94
- description: 'Renseignez de la même manière que pour le corps de texte, ou laissez vide pour utiliser la police du corps du texte',
95
- type: 'string'
96
- },
97
- assistedMode: {
98
- type: 'boolean',
99
- title: 'mode de gestion des couleurs simplifié',
100
- description: "Si activé vous ne devrez saisir que les couleurs principales du thème, d'autres couleurs seront affectées par défaut et les couleurs de texte seront automatiquement ajustées pour être lisibles sur les couleurs de fond.",
101
- default: true
102
- },
103
- assistedModeColors: {
104
- type: 'object',
105
- properties: {
106
- primary: {
107
- type: 'string',
108
- title: 'Couleur principale',
109
- layout: {
110
- comp: 'color-picker',
111
- cols: { sm: 12, lg: 4 }
112
- }
113
- },
114
- secondary: {
115
- type: 'string',
116
- title: 'Couleur secondaire',
117
- layout: {
118
- comp: 'color-picker',
119
- cols: { sm: 12, lg: 4 }
120
- }
121
- },
122
- accent: {
123
- type: 'string',
124
- title: 'Couleur accentuée',
125
- layout: {
126
- comp: 'color-picker',
127
- cols: { sm: 12, lg: 4 }
128
- }
129
- }
130
- }
131
- },
132
- colors: { $ref: '#/$defs/colors' },
133
- dark: { type: 'boolean', title: 'proposer ce thème aux utilisateurs' },
134
- darkColors: { $ref: '#/$defs/colors' },
135
- hc: { type: 'boolean', title: 'proposer ce thème aux utilisateurs' },
136
- hcColors: { $ref: '#/$defs/colors' },
137
- hcDark: { type: 'boolean', title: 'proposer ce thème aux utilisateurs' },
138
- hcDarkColors: { $ref: '#/$defs/colors' }
139
- },
140
- $defs: {
141
- colors: {
142
- type: 'object',
143
- additionalProperties: false,
144
- required: [
145
- 'background',
146
- 'on-background',
147
- 'surface',
148
- 'on-surface',
149
- 'primary',
150
- 'on-primary',
151
- 'secondary',
152
- 'on-secondary',
153
- 'accent',
154
- 'on-accent',
155
- 'error',
156
- 'on-error',
157
- 'info',
158
- 'on-info',
159
- 'success',
160
- 'on-success',
161
- 'warning',
162
- 'on-warning',
163
- 'admin',
164
- 'on-admin'
165
- ],
166
- properties: {
167
- background: {
168
- type: 'string',
169
- title: 'Couleur de fond',
170
- layout: {
171
- comp: 'color-picker',
172
- cols: { sm: 6, lg: 3 }
173
- }
174
- },
175
- 'on-background': {
176
- type: 'string',
177
- title: 'Couleur de texte sur couleur de fond',
178
- layout: {
179
- comp: 'color-picker',
180
- cols: { sm: 6, lg: 3 }
181
- }
182
- },
183
- surface: {
184
- type: 'string',
185
- title: 'Couleur des surfaces (vignettes, listes, etc)',
186
- layout: {
187
- comp: 'color-picker',
188
- cols: { sm: 6, lg: 3 }
189
- }
190
- },
191
- 'on-surface': {
192
- type: 'string',
193
- title: 'Couleur de texte sur couleur des surfaces',
194
- layout: {
195
- comp: 'color-picker',
196
- cols: { sm: 6, lg: 3 }
197
- }
198
- },
199
- primary: {
200
- type: 'string',
201
- title: 'Couleur principale',
202
- layout: {
203
- comp: 'color-picker',
204
- cols: { sm: 12, lg: 4 }
205
- }
206
- },
207
- 'on-primary': {
208
- type: 'string',
209
- title: 'Couleur de texte sur couleur principale',
210
- layout: {
211
- comp: 'color-picker',
212
- cols: { sm: 6, lg: 4 }
213
- }
214
- },
215
- 'text-primary': {
216
- type: 'string',
217
- title: 'Couleur de texte principal',
218
- layout: {
219
- comp: 'color-picker',
220
- cols: { sm: 6, lg: 4 },
221
- hint: 'laissez vide pour utiliser la couleur principale'
222
- }
223
- },
224
- secondary: {
225
- type: 'string',
226
- title: 'Couleur secondaire',
227
- layout: {
228
- comp: 'color-picker',
229
- cols: { sm: 12, lg: 4 }
230
- }
146
+ properties: {
147
+ logo: {
148
+ title: "URL d'un logo",
149
+ 'x-i18n-title': {
150
+ fr: "URL d'un logo",
151
+ en: 'Logo URL',
152
+ es: 'URL del logo',
153
+ it: 'URL del logo',
154
+ pt: 'URL do logotipo',
155
+ de: 'Logo-URL'
156
+ },
157
+ type: 'string'
231
158
  },
232
- 'on-secondary': {
233
- type: 'string',
234
- title: 'Couleur de texte sur couleur secondaire',
235
- layout: {
236
- comp: 'color-picker',
237
- cols: { sm: 6, lg: 4 }
238
- }
159
+ bodyFontFamilyCss: {
160
+ title: 'CSS police de caractères pour le corps du texte',
161
+ 'x-i18n-title': {
162
+ fr: 'CSS police de caractères pour le corps du texte',
163
+ en: 'CSS font for body text',
164
+ es: 'CSS fuente para el texto del cuerpo',
165
+ it: 'CSS carattere per il testo del corpo',
166
+ pt: 'CSS fonte para o texto do corpo',
167
+ de: 'CSS-Schriftart für den Fließtext'
168
+ },
169
+ layout: {
170
+ comp: 'textarea',
171
+ rows: 3
172
+ },
173
+ description: "Par défaut une police Nunito auto-hébergée est utilisée. Vous pouvez aussi copier le CSS proposé par une plateforme comme Google Fonts, dans ce cas il faut remplacer le nom de la police par '{FONT_FAMILY}'.",
174
+ 'x-i18n-description': {
175
+ fr: "Par défaut une police Nunito auto-hébergée est utilisée. Vous pouvez aussi copier le CSS proposé par une plateforme comme Google Fonts, dans ce cas il faut remplacer le nom de la police par '{FONT_FAMILY}'.",
176
+ en: "By default, a self-hosted Nunito font is used. You can also copy the CSS proposed by a platform like Google Fonts, in which case you need to replace the font name with '{FONT_FAMILY}'.",
177
+ es: "De forma predeterminada, se utiliza una fuente Nunito autoalojada. También puede copiar el CSS propuesto por una plataforma como Google Fonts, en cuyo caso debe reemplazar el nombre de la fuente con '{FONT_FAMILY}'.",
178
+ it: "Per impostazione predefinita, viene utilizzata una fonte Nunito auto-ospitata. È possibile anche copiare il CSS proposto da una piattaforma come Google Fonts, in tal caso è necessario sostituire il nome del carattere con '{FONT_FAMILY}'.",
179
+ pt: "Por padrão, é usada uma fonte Nunito auto-hospedada. Você também pode copiar o CSS proposto por uma plataforma como Google Fonts, nesse caso, você precisa substituir o nome da fonte por '{FONT_FAMILY}'.",
180
+ de: "Standardmäßig wird eine selbst gehostete Nunito-Schriftart verwendet. Sie können auch die von einer Plattform wie Google Fonts vorgeschlagene CSS-Datei kopieren. In diesem Fall müssen Sie den Schriftartnamen durch '{FONT_FAMILY}' ersetzen."
181
+ },
182
+ type: 'string'
239
183
  },
240
- 'text-secondary': {
241
- type: 'string',
242
- title: 'Couleur de texte secondaire',
243
- layout: {
244
- comp: 'color-picker',
245
- cols: { sm: 6, lg: 4 },
246
- hint: 'laissez vide pour utiliser la couleur secondaire'
247
- }
184
+ headingFontFamilyCss: {
185
+ title: 'CSS police de caractères pour les titres',
186
+ 'x-i18n-title': {
187
+ fr: 'CSS police de caractères pour les titres',
188
+ en: 'CSS font for headings',
189
+ es: 'CSS fuente para los títulos',
190
+ it: 'CSS carattere per le intestazioni',
191
+ pt: 'CSS fonte para títulos',
192
+ de: 'CSS-Schriftart für Überschriften'
193
+ },
194
+ layout: {
195
+ comp: 'textarea',
196
+ rows: 3
197
+ },
198
+ description: 'Renseignez de la même manière que pour le corps de texte, ou laissez vide pour utiliser la police du corps du texte',
199
+ 'x-i18n-description': {
200
+ fr: 'Renseignez de la même manière que pour le corps de texte, ou laissez vide pour utiliser la police du corps du texte',
201
+ en: 'Fill in the same way as for the body text, or leave blank to use the body text font',
202
+ es: 'Complete de la misma manera que para el texto del cuerpo, o deje en blanco para usar la fuente del texto del cuerpo',
203
+ it: 'Compilare nello stesso modo del testo del corpo, o lasciare vuoto per utilizzare il carattere del testo del corpo',
204
+ pt: 'Preencha da mesma forma que para o texto do corpo, ou deixe em branco para usar a fonte do texto do corpo',
205
+ de: 'Füllen Sie wie beim Fließtext aus, oder lassen Sie das Feld leer, um die Schriftart des Fließtexts zu verwenden'
206
+ },
207
+ type: 'string'
248
208
  },
249
- accent: {
250
- type: 'string',
251
- title: 'Couleur accentuée',
252
- layout: {
253
- comp: 'color-picker',
254
- cols: { sm: 12, lg: 4 }
255
- }
209
+ assistedMode: {
210
+ type: 'boolean',
211
+ title: 'mode de gestion des couleurs simplifié',
212
+ 'x-i18n-title': {
213
+ fr: 'mode de gestion des couleurs simplifié',
214
+ en: 'simplified color management mode',
215
+ es: 'modo de gestión de colores simplificado',
216
+ it: 'modalità di gestione semplificata dei colori',
217
+ pt: 'modo de gerenciamento simplificado de cores',
218
+ de: 'vereinfachteter Farbverwaltungsmodus'
219
+ },
220
+ description: "Si activé vous ne devrez saisir que les couleurs principales du thème, d'autres couleurs seront affectées par défaut et les couleurs de texte seront automatiquement ajustées pour être lisibles sur les couleurs de fond.",
221
+ 'x-i18n-description': {
222
+ fr: "Si activé vous ne devrez saisir que les couleurs principales du thème, d'autres couleurs seront affectées par défaut et les couleurs de texte seront automatiquement ajustées pour être lisibles sur les couleurs de fond.",
223
+ en: 'If enabled, you will only need to enter the main theme colors, other colors will be assigned by default and text colors will be automatically adjusted to be readable on the background colors.',
224
+ es: 'Si está activado, solo deberá ingresar los colores principales del tema, otros colores se asignarán por defecto y los colores de texto se ajustarán automáticamente para ser legibles en los colores de fondo.',
225
+ it: 'Se abilitato, dovrai inserire solo i colori principali del tema, gli altri colori verranno assegnati per impostazione predefinita e i colori del testo verranno automaticamente regolati per essere leggibili sui colori di sfondo.',
226
+ pt: 'Se ativado, você só precisará inserir as cores principais do tema, outras cores serão atribuídas por padrão e as cores do texto serão ajustadas automaticamente para serem legíveis nas cores de fundo.',
227
+ de: 'Wenn aktiviert, müssen Sie nur die Hauptthemenfarben eingeben. Andere Farben werden standardmäßig zugewiesen und die Textfarben werden automatisch angepasst, um lesbar auf den Hintergrundfarben zu sein.'
228
+ },
229
+ default: true
256
230
  },
257
- 'on-accent': {
258
- type: 'string',
259
- title: 'Couleur de texte sur couleur accentuée',
260
- layout: {
261
- comp: 'color-picker',
262
- cols: { sm: 6, lg: 4 }
263
- }
231
+ assistedModeColors: {
232
+ type: 'object',
233
+ properties: {
234
+ primary: {
235
+ type: 'string',
236
+ title: 'Couleur principale',
237
+ 'x-i18n-title': {
238
+ fr: 'Couleur principale',
239
+ en: 'Primary color',
240
+ es: 'Color principal',
241
+ it: 'Colore principale',
242
+ pt: 'Cor principal',
243
+ de: 'Primärfarbe'
244
+ },
245
+ layout: {
246
+ comp: 'color-picker',
247
+ cols: { sm: 12, lg: 4 }
248
+ }
249
+ },
250
+ secondary: {
251
+ type: 'string',
252
+ title: 'Couleur secondaire',
253
+ 'x-i18n-title': {
254
+ fr: 'Couleur secondaire',
255
+ en: 'Secondary color',
256
+ es: 'Color secundario',
257
+ it: 'Colore secondario',
258
+ pt: 'Cor secundário',
259
+ de: 'Sekundärfarbe'
260
+ },
261
+ layout: {
262
+ comp: 'color-picker',
263
+ cols: { sm: 12, lg: 4 }
264
+ }
265
+ },
266
+ accent: {
267
+ type: 'string',
268
+ title: 'Couleur accentuée',
269
+ 'x-i18n-title': {
270
+ fr: 'Couleur accentuée',
271
+ en: 'Accent color',
272
+ es: 'Color de acento',
273
+ it: 'Colore di accento',
274
+ pt: 'Cor de destaque',
275
+ de: 'Akzentfarbe'
276
+ },
277
+ layout: {
278
+ comp: 'color-picker',
279
+ cols: { sm: 12, lg: 4 }
280
+ }
281
+ }
282
+ }
264
283
  },
265
- 'text-accent': {
266
- type: 'string',
267
- title: 'Couleur de texte accentué',
268
- layout: {
269
- comp: 'color-picker',
270
- cols: { sm: 6, lg: 4 },
271
- hint: 'laissez vide pour utiliser la couleur accentuée'
272
- }
284
+ colors: { $ref: '#/$defs/colors' },
285
+ dark: {
286
+ type: 'boolean',
287
+ title: 'proposer ce thème aux utilisateurs',
288
+ 'x-i18n-title': {
289
+ fr: 'proposer ce thème aux utilisateurs',
290
+ en: 'offer this theme to users',
291
+ es: 'ofrecer este tema a los usuarios',
292
+ it: 'offri questo tema agli utenti',
293
+ pt: 'oferecer este tema aos usuários',
294
+ de: 'bieten Sie dieses Thema den Benutzern an'
295
+ }
273
296
  },
274
- info: {
275
- type: 'string',
276
- title: 'Couleur info',
277
- layout: {
278
- comp: 'color-picker',
279
- cols: { sm: 12, lg: 4 }
280
- }
297
+ darkColors: { $ref: '#/$defs/colors' },
298
+ hc: {
299
+ type: 'boolean',
300
+ title: 'proposer ce thème aux utilisateurs',
301
+ 'x-i18n-title': {
302
+ fr: 'proposer ce thème aux utilisateurs',
303
+ en: 'offer this theme to users',
304
+ es: 'ofrecer este tema a los usuarios',
305
+ it: 'offri questo tema agli utenti',
306
+ pt: 'oferecer este tema aos usuários',
307
+ de: 'bieten Sie dieses Thema den Benutzern an'
308
+ }
281
309
  },
282
- 'on-info': {
283
- type: 'string',
284
- title: 'Couleur de texte sur couleur info',
285
- layout: {
286
- comp: 'color-picker',
287
- cols: { sm: 6, lg: 4 }
288
- }
310
+ hcColors: { $ref: '#/$defs/colors' },
311
+ hcDark: {
312
+ type: 'boolean',
313
+ title: 'proposer ce thème aux utilisateurs',
314
+ 'x-i18n-title': {
315
+ fr: 'proposer ce thème aux utilisateurs',
316
+ en: 'offer this theme to users',
317
+ es: 'ofrecer este tema a los usuarios',
318
+ it: 'offri questo tema agli utenti',
319
+ pt: 'oferecer este tema aos usuários',
320
+ de: 'bieten Sie dieses Thema den Benutzern an'
321
+ }
289
322
  },
290
- 'text-info': {
291
- type: 'string',
292
- title: 'Couleur de texte info',
293
- layout: {
294
- comp: 'color-picker',
295
- cols: { sm: 6, lg: 4 },
296
- hint: 'laissez vide pour utiliser la couleur info'
297
- }
298
- },
299
- success: {
300
- type: 'string',
301
- title: 'Couleur succès',
302
- layout: {
303
- comp: 'color-picker',
304
- cols: { sm: 12, lg: 4 }
305
- }
306
- },
307
- 'on-success': {
308
- type: 'string',
309
- title: 'Couleur succès',
310
- layout: {
311
- comp: 'color-picker',
312
- cols: { sm: 6, lg: 4 }
313
- }
314
- },
315
- 'text-success': {
316
- type: 'string',
317
- title: 'Couleur de texte succès',
318
- layout: {
319
- comp: 'color-picker',
320
- cols: { sm: 6, lg: 4 },
321
- hint: 'laissez vide pour utiliser la couleur succès'
322
- }
323
- },
324
- error: {
325
- type: 'string',
326
- title: 'Couleur erreur',
327
- layout: {
328
- comp: 'color-picker',
329
- cols: { sm: 12, lg: 4 }
330
- }
331
- },
332
- 'on-error': {
333
- type: 'string',
334
- title: 'Couleur de texte sur couleur erreur',
335
- layout: {
336
- comp: 'color-picker',
337
- cols: { sm: 6, lg: 4 }
338
- }
339
- },
340
- 'text-error': {
341
- type: 'string',
342
- title: 'Couleur de texte erreur',
343
- layout: {
344
- comp: 'color-picker',
345
- cols: { sm: 6, lg: 4 },
346
- hint: 'laissez vide pour utiliser la couleur erreur'
347
- }
348
- },
349
- warning: {
350
- type: 'string',
351
- title: 'Couleur avertissement',
352
- layout: {
353
- comp: 'color-picker',
354
- cols: { sm: 12, lg: 4 }
355
- }
356
- },
357
- 'on-warning': {
358
- type: 'string',
359
- title: 'Couleur de texte sur avertissement',
360
- layout: {
361
- comp: 'color-picker',
362
- cols: { sm: 6, lg: 4 }
363
- }
364
- },
365
- 'text-warning': {
366
- type: 'string',
367
- title: 'Couleur de texte avertissement',
368
- layout: {
369
- comp: 'color-picker',
370
- cols: { sm: 6, lg: 4 },
371
- hint: 'laissez vide pour utiliser la couleur avertissement'
372
- }
373
- },
374
- admin: { type: 'string', layout: 'none' },
375
- 'on-admin': { type: 'string', layout: 'none' },
376
- 'text-admin': { type: 'string', layout: 'none' }
377
- }
323
+ hcDarkColors: { $ref: '#/$defs/colors' }
324
+ },
325
+ $defs: {
326
+ colors: {
327
+ type: 'object',
328
+ additionalProperties: false,
329
+ required: [
330
+ 'background',
331
+ 'on-background',
332
+ 'surface',
333
+ 'on-surface',
334
+ 'primary',
335
+ 'on-primary',
336
+ 'secondary',
337
+ 'on-secondary',
338
+ 'accent',
339
+ 'on-accent',
340
+ 'error',
341
+ 'on-error',
342
+ 'info',
343
+ 'on-info',
344
+ 'success',
345
+ 'on-success',
346
+ 'warning',
347
+ 'on-warning',
348
+ 'admin',
349
+ 'on-admin'
350
+ ],
351
+ properties: {
352
+ background: {
353
+ type: 'string',
354
+ title: 'Couleur de fond',
355
+ 'x-i18n-title': {
356
+ fr: 'Couleur de fond',
357
+ en: 'Background color',
358
+ es: 'Color de fondo',
359
+ it: 'Colore di sfondo',
360
+ pt: 'Cor de fundo',
361
+ de: 'Hintergrundfarbe'
362
+ },
363
+ layout: {
364
+ comp: 'color-picker',
365
+ cols: { sm: 6, lg: 3 }
366
+ }
367
+ },
368
+ 'on-background': {
369
+ type: 'string',
370
+ title: 'Couleur de texte sur couleur de fond',
371
+ 'x-i18n-title': {
372
+ fr: 'Couleur de texte sur couleur de fond',
373
+ en: 'Text color on background color',
374
+ es: 'Color de texto sobre color de fondo',
375
+ it: 'Colore del testo sul colore di sfondo',
376
+ pt: 'Cor do texto na cor de fundo',
377
+ de: 'Textfarbe auf Hintergrundfarbe'
378
+ },
379
+ layout: {
380
+ comp: 'color-picker',
381
+ cols: { sm: 6, lg: 3 }
382
+ }
383
+ },
384
+ surface: {
385
+ type: 'string',
386
+ title: 'Couleur des surfaces (vignettes, listes, etc)',
387
+ 'x-i18n-title': {
388
+ fr: 'Couleur des surfaces (vignettes, listes, etc)',
389
+ en: 'Surface color (tiles, lists, etc)',
390
+ es: 'Color de las superficies (vignetas, listas, etc)',
391
+ it: 'Colore delle superfici (tile, elenchi, ecc.)',
392
+ pt: 'Cor das superfícies (vignetas, listas, etc)',
393
+ de: 'Oberflächenfarbe (Kacheln, Listen, etc.)'
394
+ },
395
+ layout: {
396
+ comp: 'color-picker',
397
+ cols: { sm: 6, lg: 3 }
398
+ }
399
+ },
400
+ 'on-surface': {
401
+ type: 'string',
402
+ title: 'Couleur de texte sur couleur des surfaces',
403
+ 'x-i18n-title': {
404
+ fr: 'Couleur de texte sur couleur des surfaces',
405
+ en: 'Text color on surface color',
406
+ es: 'Color de texto sobre color de superficie',
407
+ it: 'Colore del testo sul colore della superficie',
408
+ pt: 'Cor do texto na cor da superfície',
409
+ de: 'Textfarbe auf Oberflächenfarbe'
410
+ },
411
+ layout: {
412
+ comp: 'color-picker',
413
+ cols: { sm: 6, lg: 3 }
414
+ }
415
+ },
416
+ primary: {
417
+ type: 'string',
418
+ title: 'Couleur principale',
419
+ 'x-i18n-title': {
420
+ fr: 'Couleur principale',
421
+ en: 'Primary color',
422
+ es: 'Color principal',
423
+ it: 'Colore principale',
424
+ pt: 'Cor principal',
425
+ de: 'Primärfarbe'
426
+ },
427
+ layout: {
428
+ comp: 'color-picker',
429
+ cols: { sm: 12, lg: 4 }
430
+ }
431
+ },
432
+ 'on-primary': {
433
+ type: 'string',
434
+ title: 'Couleur de texte sur couleur principale',
435
+ 'x-i18n-title': {
436
+ fr: 'Couleur de texte sur couleur principale',
437
+ en: 'Text color on primary color',
438
+ es: 'Color de texto sobre color principal',
439
+ it: 'Colore del testo sul colore principale',
440
+ pt: 'Cor do texto na cor principal',
441
+ de: 'Textfarbe auf Primärfarbe'
442
+ },
443
+ layout: {
444
+ comp: 'color-picker',
445
+ cols: { sm: 6, lg: 4 }
446
+ }
447
+ },
448
+ 'text-primary': {
449
+ type: 'string',
450
+ title: 'Couleur de texte principal',
451
+ 'x-i18n-title': {
452
+ fr: 'Couleur de texte principal',
453
+ en: 'Primary text color',
454
+ es: 'Color de texto principal',
455
+ it: 'Colore del testo principale',
456
+ pt: 'Cor do texto principal',
457
+ de: 'Primäre Textfarbe'
458
+ },
459
+ layout: {
460
+ comp: 'color-picker',
461
+ cols: { sm: 6, lg: 4 },
462
+ hint: 'laissez vide pour utiliser la couleur principale',
463
+ 'x-i18n-hint': {
464
+ fr: 'laissez vide pour utiliser la couleur principale',
465
+ en: 'leave empty to use the primary color',
466
+ es: 'deje en blanco para usar el color principal',
467
+ it: 'lasciare vuoto per usare il colore principale',
468
+ pt: 'deixe em branco para usar a cor principal',
469
+ de: 'leer lassen, um die Primärfarbe zu verwenden'
470
+ }
471
+ }
472
+ },
473
+ secondary: {
474
+ type: 'string',
475
+ title: 'Couleur secondaire',
476
+ 'x-i18n-title': {
477
+ fr: 'Couleur secondaire',
478
+ en: 'Secondary color',
479
+ es: 'Color secundario',
480
+ it: 'Colore secondario',
481
+ pt: 'Cor secundário',
482
+ de: 'Sekundärfarbe'
483
+ },
484
+ layout: {
485
+ comp: 'color-picker',
486
+ cols: { sm: 12, lg: 4 }
487
+ }
488
+ },
489
+ 'on-secondary': {
490
+ type: 'string',
491
+ title: 'Couleur de texte sur couleur secondaire',
492
+ 'x-i18n-title': {
493
+ fr: 'Couleur de texte sur couleur secondaire',
494
+ en: 'Text color on secondary color',
495
+ es: 'Color de texto sobre color secundario',
496
+ it: 'Colore del testo sul colore secondario',
497
+ pt: 'Cor do texto na cor secundária',
498
+ de: 'Textfarbe auf Sekundärfarbe'
499
+ },
500
+ layout: {
501
+ comp: 'color-picker',
502
+ cols: { sm: 6, lg: 4 }
503
+ }
504
+ },
505
+ 'text-secondary': {
506
+ type: 'string',
507
+ title: 'Couleur de texte secondaire',
508
+ 'x-i18n-title': {
509
+ fr: 'Couleur de texte secondaire',
510
+ en: 'Secondary text color',
511
+ es: 'Color de texto secundario',
512
+ it: 'Colore del testo secondario',
513
+ pt: 'Cor do texto secundário',
514
+ de: 'Sekundäre Textfarbe'
515
+ },
516
+ layout: {
517
+ comp: 'color-picker',
518
+ cols: { sm: 6, lg: 4 },
519
+ hint: 'laissez vide pour utiliser la couleur secondaire',
520
+ 'x-i18n-hint': {
521
+ fr: 'laissez vide pour utiliser la couleur secondaire',
522
+ en: 'leave empty to use the secondary color',
523
+ es: 'deje en blanco para usar el color secundario',
524
+ it: 'lasciare vuoto per usare il colore secondario',
525
+ pt: 'deixe em branco para usar a cor secundária',
526
+ de: 'leer lassen, um die Sekundärfarbe zu verwenden'
527
+ }
528
+ }
529
+ },
530
+ accent: {
531
+ type: 'string',
532
+ title: 'Couleur accentuée',
533
+ 'x-i18n-title': {
534
+ fr: 'Couleur accentuée',
535
+ en: 'Accent color',
536
+ es: 'Color de acento',
537
+ it: 'Colore di accento',
538
+ pt: 'Cor de destaque',
539
+ de: 'Akzentfarbe'
540
+ },
541
+ layout: {
542
+ comp: 'color-picker',
543
+ cols: { sm: 12, lg: 4 }
544
+ }
545
+ },
546
+ 'on-accent': {
547
+ type: 'string',
548
+ title: 'Couleur de texte sur couleur accentuée',
549
+ 'x-i18n-title': {
550
+ fr: 'Couleur de texte sur couleur accentuée',
551
+ en: 'Text color on accent color',
552
+ es: 'Color de texto sobre color de acento',
553
+ it: 'Colore del testo sul colore di accento',
554
+ pt: 'Cor do texto na cor de destaque',
555
+ de: 'Textfarbe auf Akzentfarbe'
556
+ },
557
+ layout: {
558
+ comp: 'color-picker',
559
+ cols: { sm: 6, lg: 4 }
560
+ }
561
+ },
562
+ 'text-accent': {
563
+ type: 'string',
564
+ title: 'Couleur de texte accentué',
565
+ 'x-i18n-title': {
566
+ fr: 'Couleur de texte accentué',
567
+ en: 'Accent text color',
568
+ es: 'Color de texto de acento',
569
+ it: 'Colore del testo di accento',
570
+ pt: 'Cor do texto de destaque',
571
+ de: 'Akzenttextfarbe'
572
+ },
573
+ layout: {
574
+ comp: 'color-picker',
575
+ cols: { sm: 6, lg: 4 },
576
+ hint: 'laissez vide pour utiliser la couleur accentuée',
577
+ 'x-i18n-hint': {
578
+ fr: 'laissez vide pour utiliser la couleur accentuée',
579
+ en: 'leave empty to use the accent color',
580
+ es: 'deje en blanco para usar el color de acento',
581
+ it: 'lasciare vuoto per usare il colore di accento',
582
+ pt: 'deixe em branco para usar a cor de destaque',
583
+ de: 'leer lassen, um die Akzentfarbe zu verwenden'
584
+ }
585
+ }
586
+ },
587
+ info: {
588
+ type: 'string',
589
+ title: 'Couleur info',
590
+ 'x-i18n-title': {
591
+ fr: 'Couleur info',
592
+ en: 'Info color',
593
+ es: 'Color de información',
594
+ it: 'Colore info',
595
+ pt: 'Cor de informação',
596
+ de: 'Info-Farbe'
597
+ },
598
+ layout: {
599
+ comp: 'color-picker',
600
+ cols: { sm: 12, lg: 4 }
601
+ }
602
+ },
603
+ 'on-info': {
604
+ type: 'string',
605
+ title: 'Couleur de texte sur couleur info',
606
+ 'x-i18n-title': {
607
+ fr: 'Couleur de texte sur couleur info',
608
+ en: 'Text color on info color',
609
+ es: 'Color de texto sobre color de información',
610
+ it: 'Colore del testo sul colore info',
611
+ pt: 'Cor do texto na cor de informação',
612
+ de: 'Textfarbe auf Info-Farbe'
613
+ },
614
+ layout: {
615
+ comp: 'color-picker',
616
+ cols: { sm: 6, lg: 4 }
617
+ }
618
+ },
619
+ 'text-info': {
620
+ type: 'string',
621
+ title: 'Couleur de texte info',
622
+ 'x-i18n-title': {
623
+ fr: 'Couleur de texte info',
624
+ en: 'Info text color',
625
+ es: 'Color de texto de información',
626
+ it: 'Colore del testo info',
627
+ pt: 'Cor do texto de informação',
628
+ de: 'Info-Textfarbe'
629
+ },
630
+ layout: {
631
+ comp: 'color-picker',
632
+ cols: { sm: 6, lg: 4 },
633
+ hint: 'laissez vide pour utiliser la couleur info',
634
+ 'x-i18n-hint': {
635
+ fr: 'laissez vide pour utiliser la couleur info',
636
+ en: 'leave empty to use the info color',
637
+ es: 'deje en blanco para usar el color de información',
638
+ it: 'lasciare vuoto per usare il colore info',
639
+ pt: 'deixe em branco para usar a cor de informação',
640
+ de: 'leer lassen, um die Info-Farbe zu verwenden'
641
+ }
642
+ }
643
+ },
644
+ success: {
645
+ type: 'string',
646
+ title: 'Couleur succès',
647
+ 'x-i18n-title': {
648
+ fr: 'Couleur succès',
649
+ en: 'Success color',
650
+ es: 'Color de éxito',
651
+ it: 'Colore successo',
652
+ pt: 'Cor de sucesso',
653
+ de: 'Erfolgsfarbe'
654
+ },
655
+ layout: {
656
+ comp: 'color-picker',
657
+ cols: { sm: 12, lg: 4 }
658
+ }
659
+ },
660
+ 'on-success': {
661
+ type: 'string',
662
+ title: 'Couleur succès',
663
+ 'x-i18n-title': {
664
+ fr: 'Couleur succès',
665
+ en: 'Success color',
666
+ es: 'Color de éxito',
667
+ it: 'Colore successo',
668
+ pt: 'Cor de sucesso',
669
+ de: 'Erfolgsfarbe'
670
+ },
671
+ layout: {
672
+ comp: 'color-picker',
673
+ cols: { sm: 6, lg: 4 }
674
+ }
675
+ },
676
+ 'text-success': {
677
+ type: 'string',
678
+ title: 'Couleur de texte succès',
679
+ 'x-i18n-title': {
680
+ fr: 'Couleur de texte succès',
681
+ en: 'Success text color',
682
+ es: 'Color de texto de éxito',
683
+ it: 'Colore del testo successo',
684
+ pt: 'Cor do texto de sucesso',
685
+ de: 'Erfolgs-Textfarbe'
686
+ },
687
+ layout: {
688
+ comp: 'color-picker',
689
+ cols: { sm: 6, lg: 4 },
690
+ hint: 'laissez vide pour utiliser la couleur succès',
691
+ 'x-i18n-hint': {
692
+ fr: 'laissez vide pour utiliser la couleur succès',
693
+ en: 'leave empty to use the success color',
694
+ es: 'deje en blanco para usar el color de éxito',
695
+ it: 'lasciare vuoto per usare il colore successo',
696
+ pt: 'deixe em branco para usar a cor de sucesso',
697
+ de: 'leer lassen, um die Erfolgsfarbe zu verwenden'
698
+ }
699
+ }
700
+ },
701
+ error: {
702
+ type: 'string',
703
+ title: 'Couleur erreur',
704
+ 'x-i18n-title': {
705
+ fr: 'Couleur erreur',
706
+ en: 'Error color',
707
+ es: 'Color de error',
708
+ it: 'Colore errore',
709
+ pt: 'Cor de erro',
710
+ de: 'Fehlerfarbe'
711
+ },
712
+ layout: {
713
+ comp: 'color-picker',
714
+ cols: { sm: 12, lg: 4 }
715
+ }
716
+ },
717
+ 'on-error': {
718
+ type: 'string',
719
+ title: 'Couleur de texte sur couleur erreur',
720
+ 'x-i18n-title': {
721
+ fr: 'Couleur de texte sur couleur erreur',
722
+ en: 'Text color on error color',
723
+ es: 'Color de texto sobre color de error',
724
+ it: 'Colore del testo sul colore errore',
725
+ pt: 'Cor do texto na cor de erro',
726
+ de: 'Textfarbe auf Fehlerfarbe'
727
+ },
728
+ layout: {
729
+ comp: 'color-picker',
730
+ cols: { sm: 6, lg: 4 }
731
+ }
732
+ },
733
+ 'text-error': {
734
+ type: 'string',
735
+ title: 'Couleur de texte erreur',
736
+ 'x-i18n-title': {
737
+ fr: 'Couleur de texte erreur',
738
+ en: 'Error text color',
739
+ es: 'Color de texto de error',
740
+ it: 'Colore del testo errore',
741
+ pt: 'Cor do texto de erro',
742
+ de: 'Fehler-Textfarbe'
743
+ },
744
+ layout: {
745
+ comp: 'color-picker',
746
+ cols: { sm: 6, lg: 4 },
747
+ hint: 'laissez vide pour utiliser la couleur erreur',
748
+ 'x-i18n-hint': {
749
+ fr: 'laissez vide pour utiliser la couleur erreur',
750
+ en: 'leave empty to use the error color',
751
+ es: 'deje en blanco para usar el color de error',
752
+ it: 'lasciare vuoto per usare il colore errore',
753
+ pt: 'deixe em branco para usar a cor de erro',
754
+ de: 'leer lassen, um die Fehlerfarbe zu verwenden'
755
+ }
756
+ }
757
+ },
758
+ warning: {
759
+ type: 'string',
760
+ title: 'Couleur avertissement',
761
+ 'x-i18n-title': {
762
+ fr: 'Couleur avertissement',
763
+ en: 'Warning color',
764
+ es: 'Color de advertencia',
765
+ it: 'Colore avvertimento',
766
+ pt: 'Cor de aviso',
767
+ de: 'Warnfarbe'
768
+ },
769
+ layout: {
770
+ comp: 'color-picker',
771
+ cols: { sm: 12, lg: 4 }
772
+ }
773
+ },
774
+ 'on-warning': {
775
+ type: 'string',
776
+ title: 'Couleur de texte sur avertissement',
777
+ 'x-i18n-title': {
778
+ fr: 'Couleur de texte sur avertissement',
779
+ en: 'Text color on warning color',
780
+ es: 'Color de texto sobre color de advertencia',
781
+ it: 'Colore del testo sul colore avvertimento',
782
+ pt: 'Cor do texto na cor de aviso',
783
+ de: 'Textfarbe auf Warnfarbe'
784
+ },
785
+ layout: {
786
+ comp: 'color-picker',
787
+ cols: { sm: 6, lg: 4 }
788
+ }
789
+ },
790
+ 'text-warning': {
791
+ type: 'string',
792
+ title: 'Couleur de texte avertissement',
793
+ 'x-i18n-title': {
794
+ fr: 'Couleur de texte avertissement',
795
+ en: 'Warning text color',
796
+ es: 'Color de texto de advertencia',
797
+ it: 'Colore del testo avvertimento',
798
+ pt: 'Cor do texto de aviso',
799
+ de: 'Warn-Textfarbe'
800
+ },
801
+ layout: {
802
+ comp: 'color-picker',
803
+ cols: { sm: 6, lg: 4 },
804
+ hint: 'laissez vide pour utiliser la couleur avertissement',
805
+ 'x-i18n-hint': {
806
+ fr: 'laissez vide pour utiliser la couleur avertissement',
807
+ en: 'leave empty to use the warning color',
808
+ es: 'deje en blanco para usar el color de advertencia',
809
+ it: 'lasciare vuoto per usare il colore avvertimento',
810
+ pt: 'deixe em branco para usar a cor de aviso',
811
+ de: 'leer lassen, um die Warnfarbe zu verwenden'
812
+ }
813
+ }
814
+ },
815
+ admin: { type: 'string', layout: 'none' },
816
+ 'on-admin': { type: 'string', layout: 'none' },
817
+ 'text-admin': { type: 'string', layout: 'none' }
818
+ }
819
+ }
378
820
  }
379
- }
380
- }
821
+ };