ether-code 0.4.0 → 0.4.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/cli/ether.js +1 -1
- package/ether-parser.js +34 -15
- package/generators/css-generator.js +68 -63
- package/i18n/i18n-css.json +4753 -624
- package/lexer/ether-lexer.js +85 -4
- package/package.json +1 -1
package/cli/ether.js
CHANGED
package/ether-parser.js
CHANGED
|
@@ -436,6 +436,7 @@ class EtherParser {
|
|
|
436
436
|
}
|
|
437
437
|
|
|
438
438
|
const valueParts = []
|
|
439
|
+
let lastType = null
|
|
439
440
|
|
|
440
441
|
while (!this.isAtEnd()) {
|
|
441
442
|
const current = this.current()
|
|
@@ -445,21 +446,31 @@ class EtherParser {
|
|
|
445
446
|
break
|
|
446
447
|
}
|
|
447
448
|
|
|
449
|
+
let needsSpace = valueParts.length > 0
|
|
450
|
+
|
|
451
|
+
if (current.type === TokenType.LPAREN || current.type === TokenType.COMMA ||
|
|
452
|
+
current.type === TokenType.RPAREN || current.type === TokenType.PERCENT ||
|
|
453
|
+
lastType === TokenType.LPAREN || lastType === TokenType.MINUS ||
|
|
454
|
+
lastType === TokenType.HASH || lastType === TokenType.COLON) {
|
|
455
|
+
needsSpace = false
|
|
456
|
+
}
|
|
457
|
+
|
|
448
458
|
if (current.type === TokenType.IDENTIFIER) {
|
|
459
|
+
if (needsSpace) valueParts.push(' ')
|
|
449
460
|
valueParts.push(current.value)
|
|
450
461
|
} else if (current.type === TokenType.NUMBER || current.type === TokenType.INTEGER ||
|
|
451
462
|
current.type === TokenType.FLOAT) {
|
|
463
|
+
if (needsSpace && lastType !== TokenType.HASH) valueParts.push(' ')
|
|
452
464
|
valueParts.push(current.value)
|
|
453
465
|
} else if (current.type === TokenType.STRING) {
|
|
466
|
+
if (needsSpace) valueParts.push(' ')
|
|
467
|
+
valueParts.push('"' + current.value + '"')
|
|
468
|
+
} else if (current.type === TokenType.HEX) {
|
|
469
|
+
if (needsSpace) valueParts.push(' ')
|
|
454
470
|
valueParts.push(current.value)
|
|
455
|
-
} else if (current.type === TokenType.
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
this.advance()
|
|
459
|
-
valueParts.push('#' + next.value)
|
|
460
|
-
} else {
|
|
461
|
-
valueParts.push('#')
|
|
462
|
-
}
|
|
471
|
+
} else if (current.type === TokenType.HASH) {
|
|
472
|
+
if (needsSpace) valueParts.push(' ')
|
|
473
|
+
valueParts.push('#')
|
|
463
474
|
} else if (current.type === TokenType.COMMA) {
|
|
464
475
|
valueParts.push(',')
|
|
465
476
|
} else if (current.type === TokenType.LPAREN) {
|
|
@@ -469,25 +480,33 @@ class EtherParser {
|
|
|
469
480
|
} else if (current.type === TokenType.PERCENT) {
|
|
470
481
|
valueParts.push('%')
|
|
471
482
|
} else if (current.type === TokenType.SLASH) {
|
|
483
|
+
if (needsSpace) valueParts.push(' ')
|
|
472
484
|
valueParts.push('/')
|
|
473
485
|
} else if (current.type === TokenType.MINUS) {
|
|
474
|
-
|
|
486
|
+
if (lastType === TokenType.LPAREN || lastType === TokenType.MINUS) {
|
|
487
|
+
valueParts.push('-')
|
|
488
|
+
} else if (needsSpace) {
|
|
489
|
+
valueParts.push(' -')
|
|
490
|
+
} else {
|
|
491
|
+
valueParts.push('-')
|
|
492
|
+
}
|
|
493
|
+
} else if (current.type === TokenType.COLON) {
|
|
494
|
+
valueParts.push(':')
|
|
495
|
+
} else if (current.type === TokenType.DOT) {
|
|
496
|
+
valueParts.push('.')
|
|
475
497
|
} else {
|
|
476
498
|
break
|
|
477
499
|
}
|
|
478
500
|
|
|
501
|
+
lastType = current.type
|
|
479
502
|
this.advance()
|
|
480
503
|
}
|
|
481
504
|
|
|
482
505
|
return {
|
|
483
506
|
type: 'Declaration',
|
|
484
507
|
property: property,
|
|
485
|
-
value: valueParts.join('
|
|
486
|
-
.replace(
|
|
487
|
-
.replace(/\s+\)/g, ')')
|
|
488
|
-
.replace(/\s+,/g, ',')
|
|
489
|
-
.replace(/-\s+/g, '-')
|
|
490
|
-
.replace(/(\d+)\s+(%|px|em|rem|vh|vw|vmin|vmax|fr|s|ms|deg)/gi, '$1$2')
|
|
508
|
+
value: valueParts.join('')
|
|
509
|
+
.replace(/,\s*/g, ', ')
|
|
491
510
|
.replace(/\s+/g, ' ')
|
|
492
511
|
.trim()
|
|
493
512
|
}
|
|
@@ -70,6 +70,11 @@ class CSSGenerator {
|
|
|
70
70
|
addToMap(this.propertyMap, this.i18n.zIndex)
|
|
71
71
|
addToMap(this.propertyMap, this.i18n.boxShadow)
|
|
72
72
|
addToMap(this.propertyMap, this.i18n.textShadow)
|
|
73
|
+
addToMap(this.propertyMap, this.i18n.synonymes)
|
|
74
|
+
addToMap(this.propertyMap, this.i18n.aliases)
|
|
75
|
+
addToMap(this.propertyMap, this.i18n.padding)
|
|
76
|
+
addToMap(this.propertyMap, this.i18n.margin)
|
|
77
|
+
addToMap(this.propertyMap, this.i18n.border)
|
|
73
78
|
|
|
74
79
|
addToMap(this.valueMap, this.i18n.alignment)
|
|
75
80
|
addToMap(this.valueMap, this.i18n.direction)
|
|
@@ -127,11 +132,11 @@ class CSSGenerator {
|
|
|
127
132
|
return `var(--${varName})`
|
|
128
133
|
})
|
|
129
134
|
|
|
130
|
-
result = result.replace(/
|
|
135
|
+
result = result.replace(/dégradé linéaire:\s*/gi, 'linear-gradient(')
|
|
131
136
|
result = result.replace(/degrade lineaire:\s*/gi, 'linear-gradient(')
|
|
132
|
-
result = result.replace(/
|
|
137
|
+
result = result.replace(/dégradé radial:\s*/gi, 'radial-gradient(')
|
|
133
138
|
result = result.replace(/degrade radial:\s*/gi, 'radial-gradient(')
|
|
134
|
-
result = result.replace(/
|
|
139
|
+
result = result.replace(/dégradé conique:\s*/gi, 'conic-gradient(')
|
|
135
140
|
result = result.replace(/degrade conique:\s*/gi, 'conic-gradient(')
|
|
136
141
|
|
|
137
142
|
result = result.replace(/rgba:\s*(\d+),\s*(\d+),\s*(\d+),\s*([\d.]+)/gi, 'rgba($1, $2, $3, $4)')
|
|
@@ -140,30 +145,30 @@ class CSSGenerator {
|
|
|
140
145
|
result = result.replace(/hsla:\s*(\d+),\s*([\d.]+%?),\s*([\d.]+%?),\s*([\d.]+)/gi, 'hsla($1, $2, $3, $4)')
|
|
141
146
|
|
|
142
147
|
result = result.replace(/flou:\s*([\d.]+\w*)/gi, 'blur($1)')
|
|
143
|
-
result = result.replace(/luminosit
|
|
148
|
+
result = result.replace(/luminosité:\s*([\d.]+%?)/gi, 'brightness($1)')
|
|
144
149
|
result = result.replace(/luminosite:\s*([\d.]+%?)/gi, 'brightness($1)')
|
|
145
150
|
result = result.replace(/contraste:\s*([\d.]+%?)/gi, 'contrast($1)')
|
|
146
151
|
result = result.replace(/niveaux-gris:\s*([\d.]+%?)/gi, 'grayscale($1)')
|
|
147
152
|
result = result.replace(/niveaux gris:\s*([\d.]+%?)/gi, 'grayscale($1)')
|
|
148
153
|
result = result.replace(/inverser:\s*([\d.]+%?)/gi, 'invert($1)')
|
|
149
154
|
result = result.replace(/saturation:\s*([\d.]+%?)/gi, 'saturate($1)')
|
|
150
|
-
result = result.replace(/
|
|
155
|
+
result = result.replace(/sépia:\s*([\d.]+%?)/gi, 'sepia($1)')
|
|
151
156
|
result = result.replace(/sepia:\s*([\d.]+%?)/gi, 'sepia($1)')
|
|
152
157
|
result = result.replace(/teinte:\s*([\d.]+\w*)/gi, 'hue-rotate($1)')
|
|
153
158
|
|
|
154
|
-
result = result.replace(/
|
|
159
|
+
result = result.replace(/déplacer-y:\s*([\d.\-]+\w*)/gi, 'translateY($1)')
|
|
155
160
|
result = result.replace(/deplacer-y:\s*([\d.\-]+\w*)/gi, 'translateY($1)')
|
|
156
|
-
result = result.replace(/
|
|
161
|
+
result = result.replace(/déplacer-x:\s*([\d.\-]+\w*)/gi, 'translateX($1)')
|
|
157
162
|
result = result.replace(/deplacer-x:\s*([\d.\-]+\w*)/gi, 'translateX($1)')
|
|
158
|
-
result = result.replace(/
|
|
163
|
+
result = result.replace(/déplacer:\s*([\d.\-]+\w*),?\s*([\d.\-]+\w*)?/gi, (match, x, y) => {
|
|
159
164
|
if (y) return `translate(${x}, ${y})`
|
|
160
165
|
return `translate(${x})`
|
|
161
166
|
})
|
|
162
167
|
result = result.replace(/rotation:\s*([\d.\-]+\w*)/gi, 'rotate($1)')
|
|
163
|
-
result = result.replace(
|
|
168
|
+
result = result.replace(/échelle:\s*([\d.]+)/gi, 'scale($1)')
|
|
164
169
|
result = result.replace(/echelle:\s*([\d.]+)/gi, 'scale($1)')
|
|
165
170
|
|
|
166
|
-
result = result.replace(/
|
|
171
|
+
result = result.replace(/répéter:\s*([^,]+),\s*minmax:\s*([^,]+),\s*([^\s\)]+)/gi, 'repeat($1, minmax($2, $3))')
|
|
167
172
|
result = result.replace(/repeter:\s*([^,]+),\s*minmax:\s*([^,]+),\s*([^\s\)]+)/gi, 'repeat($1, minmax($2, $3))')
|
|
168
173
|
result = result.replace(/minmax:\s*([^,]+),\s*([^\s\)]+)/gi, 'minmax($1, $2)')
|
|
169
174
|
|
|
@@ -226,16 +231,16 @@ class CSSGenerator {
|
|
|
226
231
|
'aucun': 'none',
|
|
227
232
|
'aucune': 'none',
|
|
228
233
|
'auto': 'auto',
|
|
229
|
-
'
|
|
234
|
+
'hériter': 'inherit',
|
|
230
235
|
'heriter': 'inherit',
|
|
231
236
|
'initial': 'initial',
|
|
232
|
-
'
|
|
237
|
+
'caché': 'hidden',
|
|
233
238
|
'cache': 'hidden',
|
|
234
239
|
'visible': 'visible',
|
|
235
|
-
'
|
|
240
|
+
'défiler': 'scroll',
|
|
236
241
|
'defiler': 'scroll',
|
|
237
242
|
'fixe': 'fixed',
|
|
238
|
-
'
|
|
243
|
+
'fixée': 'fixed',
|
|
239
244
|
'fixee': 'fixed',
|
|
240
245
|
'absolue': 'absolute',
|
|
241
246
|
'absolu': 'absolute',
|
|
@@ -245,17 +250,17 @@ class CSSGenerator {
|
|
|
245
250
|
'collant': 'sticky',
|
|
246
251
|
'collante': 'sticky',
|
|
247
252
|
'centre': 'center',
|
|
248
|
-
'
|
|
249
|
-
'
|
|
253
|
+
'centré': 'center',
|
|
254
|
+
'début': 'flex-start',
|
|
250
255
|
'debut': 'flex-start',
|
|
251
256
|
'fin': 'flex-end',
|
|
252
257
|
'espace-entre': 'space-between',
|
|
253
258
|
'espace entre': 'space-between',
|
|
254
259
|
'espace-autour': 'space-around',
|
|
255
260
|
'espace autour': 'space-around',
|
|
256
|
-
'espace
|
|
261
|
+
'espace-égal': 'space-evenly',
|
|
257
262
|
'espace egal': 'space-evenly',
|
|
258
|
-
'
|
|
263
|
+
'étirer': 'stretch',
|
|
259
264
|
'etirer': 'stretch',
|
|
260
265
|
'ligne': 'row',
|
|
261
266
|
'colonne': 'column',
|
|
@@ -269,9 +274,9 @@ class CSSGenerator {
|
|
|
269
274
|
'gras': 'bold',
|
|
270
275
|
'normal': 'normal',
|
|
271
276
|
'italique': 'italic',
|
|
272
|
-
'
|
|
277
|
+
'souligné': 'underline',
|
|
273
278
|
'souligne': 'underline',
|
|
274
|
-
'
|
|
279
|
+
'barré': 'line-through',
|
|
275
280
|
'barre': 'line-through',
|
|
276
281
|
'majuscules': 'uppercase',
|
|
277
282
|
'minuscules': 'lowercase',
|
|
@@ -292,14 +297,14 @@ class CSSGenerator {
|
|
|
292
297
|
'grille': 'grid',
|
|
293
298
|
'grille-en-ligne': 'inline-grid',
|
|
294
299
|
'grille en ligne': 'inline-grid',
|
|
295
|
-
'
|
|
300
|
+
'préservé': 'pre',
|
|
296
301
|
'preserve': 'pre',
|
|
297
|
-
'pr
|
|
302
|
+
'pré-ligne': 'pre-line',
|
|
298
303
|
'pre-ligne': 'pre-line',
|
|
299
|
-
'pr
|
|
304
|
+
'pré-enveloppe': 'pre-wrap',
|
|
300
305
|
'pre-enveloppe': 'pre-wrap',
|
|
301
306
|
'solide': 'solid',
|
|
302
|
-
'
|
|
307
|
+
'pointillée': 'dotted',
|
|
303
308
|
'pointillee': 'dotted',
|
|
304
309
|
'tirets': 'dashed',
|
|
305
310
|
'double': 'double',
|
|
@@ -308,7 +313,7 @@ class CSSGenerator {
|
|
|
308
313
|
'ease-in': 'ease-in',
|
|
309
314
|
'ease-out': 'ease-out',
|
|
310
315
|
'ease-in-out': 'ease-in-out',
|
|
311
|
-
'
|
|
316
|
+
'linéaire': 'linear',
|
|
312
317
|
'lineaire': 'linear'
|
|
313
318
|
}
|
|
314
319
|
|
|
@@ -354,8 +359,8 @@ class CSSGenerator {
|
|
|
354
359
|
'espacement lettres': 'letter-spacing',
|
|
355
360
|
'alignement-texte': 'text-align',
|
|
356
361
|
'alignement texte': 'text-align',
|
|
357
|
-
'
|
|
358
|
-
'
|
|
362
|
+
'décoration-texte': 'text-decoration',
|
|
363
|
+
'décoration texte': 'text-decoration',
|
|
359
364
|
'decoration-texte': 'text-decoration',
|
|
360
365
|
'decoration texte': 'text-decoration',
|
|
361
366
|
'transformation-texte': 'text-transform',
|
|
@@ -411,13 +416,13 @@ class CSSGenerator {
|
|
|
411
416
|
'droite': 'right',
|
|
412
417
|
'index-z': 'z-index',
|
|
413
418
|
'z-index': 'z-index',
|
|
414
|
-
'
|
|
419
|
+
'débordement': 'overflow',
|
|
415
420
|
'debordement': 'overflow',
|
|
416
|
-
'
|
|
421
|
+
'débordement-x': 'overflow-x',
|
|
417
422
|
'debordement-x': 'overflow-x',
|
|
418
|
-
'
|
|
423
|
+
'débordement-y': 'overflow-y',
|
|
419
424
|
'debordement-y': 'overflow-y',
|
|
420
|
-
'
|
|
425
|
+
'opacité': 'opacity',
|
|
421
426
|
'opacite': 'opacity',
|
|
422
427
|
'curseur': 'cursor',
|
|
423
428
|
'transition': 'transition',
|
|
@@ -426,13 +431,13 @@ class CSSGenerator {
|
|
|
426
431
|
'filtre': 'filter',
|
|
427
432
|
'filtre-fond': 'backdrop-filter',
|
|
428
433
|
'filtre fond': 'backdrop-filter',
|
|
429
|
-
'ombre-
|
|
434
|
+
'ombre-boîte': 'box-shadow',
|
|
430
435
|
'ombre-boite': 'box-shadow',
|
|
431
|
-
'ombre
|
|
436
|
+
'ombre boîte': 'box-shadow',
|
|
432
437
|
'ombre boite': 'box-shadow',
|
|
433
|
-
'
|
|
438
|
+
'modèle-boîte': 'box-sizing',
|
|
434
439
|
'modele-boite': 'box-sizing',
|
|
435
|
-
'
|
|
440
|
+
'modèle boîte': 'box-sizing',
|
|
436
441
|
'modele boite': 'box-sizing',
|
|
437
442
|
'espace': 'gap',
|
|
438
443
|
'espace ligne': 'row-gap',
|
|
@@ -441,9 +446,9 @@ class CSSGenerator {
|
|
|
441
446
|
'espace-colonne': 'column-gap',
|
|
442
447
|
'justifier-contenu': 'justify-content',
|
|
443
448
|
'justifier contenu': 'justify-content',
|
|
444
|
-
'aligner
|
|
449
|
+
'aligner-éléments': 'align-items',
|
|
445
450
|
'aligner-elements': 'align-items',
|
|
446
|
-
'aligner
|
|
451
|
+
'aligner éléments': 'align-items',
|
|
447
452
|
'aligner elements': 'align-items',
|
|
448
453
|
'aligner-contenu': 'align-content',
|
|
449
454
|
'aligner contenu': 'align-content',
|
|
@@ -460,13 +465,13 @@ class CSSGenerator {
|
|
|
460
465
|
'style-liste': 'list-style',
|
|
461
466
|
'style liste': 'list-style',
|
|
462
467
|
'contenu': 'content',
|
|
463
|
-
'
|
|
468
|
+
'évènements-pointeur': 'pointer-events',
|
|
464
469
|
'evenements-pointeur': 'pointer-events',
|
|
465
|
-
'
|
|
470
|
+
'évènements pointeur': 'pointer-events',
|
|
466
471
|
'evenements pointeur': 'pointer-events',
|
|
467
|
-
'
|
|
472
|
+
'découpe-fond': 'background-clip',
|
|
468
473
|
'decoupe-fond': 'background-clip',
|
|
469
|
-
'
|
|
474
|
+
'découpe fond': 'background-clip',
|
|
470
475
|
'decoupe fond': 'background-clip',
|
|
471
476
|
'couleur-remplissage-texte': '-webkit-text-fill-color',
|
|
472
477
|
'couleur remplissage texte': '-webkit-text-fill-color',
|
|
@@ -484,7 +489,7 @@ class CSSGenerator {
|
|
|
484
489
|
'justifier': 'justify-content',
|
|
485
490
|
'aligner': 'align-items',
|
|
486
491
|
'visibilite': 'visibility',
|
|
487
|
-
'
|
|
492
|
+
'visibilité': 'visibility',
|
|
488
493
|
'redimensionnement': 'resize',
|
|
489
494
|
'apparence': 'appearance',
|
|
490
495
|
'contour': 'outline'
|
|
@@ -499,31 +504,31 @@ class CSSGenerator {
|
|
|
499
504
|
|
|
500
505
|
result = result.replace(/:racine\b/gi, ':root')
|
|
501
506
|
result = result.replace(/::avant\b/gi, '::before')
|
|
502
|
-
result = result.replace(/::
|
|
507
|
+
result = result.replace(/::après\b/gi, '::after')
|
|
503
508
|
result = result.replace(/::apres\b/gi, '::after')
|
|
504
|
-
result = result.replace(/::
|
|
509
|
+
result = result.replace(/::première-lettre\b/gi, '::first-letter')
|
|
505
510
|
result = result.replace(/::premiere-lettre\b/gi, '::first-letter')
|
|
506
|
-
result = result.replace(/::
|
|
511
|
+
result = result.replace(/::première-ligne\b/gi, '::first-line')
|
|
507
512
|
result = result.replace(/::premiere-ligne\b/gi, '::first-line')
|
|
508
|
-
result = result.replace(/::
|
|
513
|
+
result = result.replace(/::sélection\b/gi, '::selection')
|
|
509
514
|
result = result.replace(/::selection\b/gi, '::selection')
|
|
510
515
|
result = result.replace(/::marqueur\b/gi, '::marker')
|
|
511
516
|
|
|
512
517
|
result = result.replace(/\bau survol\b/gi, ':hover')
|
|
513
|
-
result = result.replace(/\bquand survol
|
|
518
|
+
result = result.replace(/\bquand survolé\b/gi, ':hover')
|
|
514
519
|
result = result.replace(/\bquand survole\b/gi, ':hover')
|
|
515
520
|
result = result.replace(/\ben survol\b/gi, ':hover')
|
|
516
521
|
result = result.replace(/\bau clic\b/gi, ':active')
|
|
517
|
-
result = result.replace(/\bquand cliqu
|
|
522
|
+
result = result.replace(/\bquand cliqué\b/gi, ':active')
|
|
518
523
|
result = result.replace(/\bquand clique\b/gi, ':active')
|
|
519
524
|
result = result.replace(/\ben clic\b/gi, ':active')
|
|
520
525
|
result = result.replace(/\bactif\b/gi, ':active')
|
|
521
526
|
result = result.replace(/\bau focus\b/gi, ':focus')
|
|
522
|
-
result = result.replace(/\bquand focalis
|
|
527
|
+
result = result.replace(/\bquand focalisé\b/gi, ':focus')
|
|
523
528
|
result = result.replace(/\bquand focalise\b/gi, ':focus')
|
|
524
529
|
result = result.replace(/\ben focus\b/gi, ':focus')
|
|
525
530
|
result = result.replace(/\bau focus dans\b/gi, ':focus-within')
|
|
526
|
-
result = result.replace(/\bvisit
|
|
531
|
+
result = result.replace(/\bvisité\b/gi, ':visited')
|
|
527
532
|
result = result.replace(/\bvisite\b/gi, ':visited')
|
|
528
533
|
|
|
529
534
|
result = result.replace(/\s+(:hover|:active|:focus|:focus-within|:visited|:checked|:disabled|:enabled|:required|:optional|:valid|:invalid|:empty|:target)/gi, '$1')
|
|
@@ -537,18 +542,18 @@ class CSSGenerator {
|
|
|
537
542
|
result = result.replace(/\bunique de type\b/gi, ':only-of-type')
|
|
538
543
|
result = result.replace(/\bvide\b/gi, ':empty')
|
|
539
544
|
result = result.replace(/\bcible\b/gi, ':target')
|
|
540
|
-
result = result.replace(/\bcoch
|
|
545
|
+
result = result.replace(/\bcoché\b/gi, ':checked')
|
|
541
546
|
result = result.replace(/\bcoche\b/gi, ':checked')
|
|
542
|
-
result = result.replace(/\
|
|
547
|
+
result = result.replace(/\bdésactivé\b/gi, ':disabled')
|
|
543
548
|
result = result.replace(/\bdesactive\b/gi, ':disabled')
|
|
544
|
-
result = result.replace(/\bactiv
|
|
549
|
+
result = result.replace(/\bactivé\b/gi, ':enabled')
|
|
545
550
|
result = result.replace(/\brequis\b/gi, ':required')
|
|
546
551
|
result = result.replace(/\boptionnel\b/gi, ':optional')
|
|
547
552
|
result = result.replace(/\bvalide\b/gi, ':valid')
|
|
548
553
|
result = result.replace(/\binvalide\b/gi, ':invalid')
|
|
549
554
|
|
|
550
555
|
result = result.replace(/\bcorps\b/gi, 'body')
|
|
551
|
-
result = result.replace(/\
|
|
556
|
+
result = result.replace(/\btête\b/gi, 'head')
|
|
552
557
|
result = result.replace(/\btete\b/gi, 'head')
|
|
553
558
|
result = result.replace(/\btitre1\b/gi, 'h1')
|
|
554
559
|
result = result.replace(/\btitre2\b/gi, 'h2')
|
|
@@ -563,24 +568,24 @@ class CSSGenerator {
|
|
|
563
568
|
result = result.replace(/\bformulaire\b/gi, 'form')
|
|
564
569
|
result = result.replace(/\bchamp\b/gi, 'input')
|
|
565
570
|
result = result.replace(/\bliste\b/gi, 'ul')
|
|
566
|
-
result = result.replace(/\bliste-
|
|
571
|
+
result = result.replace(/\bliste-ordonnée\b/gi, 'ol')
|
|
567
572
|
result = result.replace(/\bliste-ordonnee\b/gi, 'ol')
|
|
568
|
-
result = result.replace(/\
|
|
573
|
+
result = result.replace(/\bélément-liste\b/gi, 'li')
|
|
569
574
|
result = result.replace(/\belement-liste\b/gi, 'li')
|
|
570
575
|
result = result.replace(/\btableau\b/gi, 'table')
|
|
571
576
|
result = result.replace(/\bligne-tableau\b/gi, 'tr')
|
|
572
577
|
result = result.replace(/\bcellule\b/gi, 'td')
|
|
573
|
-
result = result.replace(/\
|
|
578
|
+
result = result.replace(/\bentête\b/gi, 'header')
|
|
574
579
|
result = result.replace(/\bentete\b/gi, 'header')
|
|
575
580
|
result = result.replace(/\bpied\b/gi, 'footer')
|
|
576
581
|
result = result.replace(/\bnavigation\b/gi, 'nav')
|
|
577
582
|
result = result.replace(/\bsection\b/gi, 'section')
|
|
578
583
|
result = result.replace(/\barticle\b/gi, 'article')
|
|
579
|
-
result = result.replace(/\
|
|
584
|
+
result = result.replace(/\bcôté\b/gi, 'aside')
|
|
580
585
|
result = result.replace(/\bcote\b/gi, 'aside')
|
|
581
586
|
result = result.replace(/\bprincipal\b/gi, 'main')
|
|
582
587
|
result = result.replace(/\bdivision\b/gi, 'div')
|
|
583
|
-
result = result.replace(/\
|
|
588
|
+
result = result.replace(/\bportée\b/gi, 'span')
|
|
584
589
|
result = result.replace(/\bportee\b/gi, 'span')
|
|
585
590
|
|
|
586
591
|
return result
|
|
@@ -839,7 +844,7 @@ class CSSGenerator {
|
|
|
839
844
|
translateMediaQuery(query) {
|
|
840
845
|
let result = query
|
|
841
846
|
|
|
842
|
-
result = result.replace(
|
|
847
|
+
result = result.replace(/écran/gi, 'screen')
|
|
843
848
|
result = result.replace(/ecran/gi, 'screen')
|
|
844
849
|
result = result.replace(/imprimante/gi, 'print')
|
|
845
850
|
result = result.replace(/tous/gi, 'all')
|
|
@@ -871,9 +876,9 @@ class CSSGenerator {
|
|
|
871
876
|
|
|
872
877
|
const plusPetitMatch = condition.match(/plus petit que\s+([\d.]+\w*)/i)
|
|
873
878
|
const plusGrandMatch = condition.match(/plus grand que\s+([\d.]+\w*)/i)
|
|
874
|
-
const inferieurMatch = condition.match(/
|
|
875
|
-
const superieurMatch = condition.match(/
|
|
876
|
-
const egalMatch = condition.match(
|
|
879
|
+
const inferieurMatch = condition.match(/inférieur[e]?\s+à \s+([\d.]+\w*)/i) || condition.match(/inferieur[e]?\s+a\s+([\d.]+\w*)/i)
|
|
880
|
+
const superieurMatch = condition.match(/supérieur[e]?\s+à \s+([\d.]+\w*)/i) || condition.match(/superieur[e]?\s+a\s+([\d.]+\w*)/i)
|
|
881
|
+
const egalMatch = condition.match(/égal[e]?\s+à \s+([\d.]+\w*)/i) || condition.match(/egal[e]?\s+a\s+([\d.]+\w*)/i)
|
|
877
882
|
const simpleInfMatch = condition.match(/<\s*([\d.]+\w*)/i)
|
|
878
883
|
const simpleSupMatch = condition.match(/>\s*([\d.]+\w*)/i)
|
|
879
884
|
|