ether-code 0.5.6 → 0.5.8
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/generators/css-generator.js +54 -0
- package/lexer/ether-lexer.js +24 -4
- package/package.json +1 -1
package/cli/ether.js
CHANGED
|
@@ -112,6 +112,13 @@ class CSSGenerator {
|
|
|
112
112
|
const priorityMap = {
|
|
113
113
|
'contenu': 'content',
|
|
114
114
|
'contenus': 'content',
|
|
115
|
+
'transformer': 'transform',
|
|
116
|
+
'decalage-contour': 'outline-offset',
|
|
117
|
+
'décalage-contour': 'outline-offset',
|
|
118
|
+
'decalage contour': 'outline-offset',
|
|
119
|
+
'décalage contour': 'outline-offset',
|
|
120
|
+
'contour-decalage': 'outline-offset',
|
|
121
|
+
'contour-décalage': 'outline-offset',
|
|
115
122
|
'famille-police': 'font-family',
|
|
116
123
|
'famille police': 'font-family',
|
|
117
124
|
'police-famille': 'font-family',
|
|
@@ -901,6 +908,8 @@ class CSSGenerator {
|
|
|
901
908
|
'en cours': 'running',
|
|
902
909
|
'ombre': 'box-shadow',
|
|
903
910
|
'transformation': 'transform',
|
|
911
|
+
'souligner': 'underline',
|
|
912
|
+
'transformer': 'transform',
|
|
904
913
|
'fond': 'background',
|
|
905
914
|
'couleur': 'color',
|
|
906
915
|
'opacite': 'opacity',
|
|
@@ -1164,6 +1173,12 @@ class CSSGenerator {
|
|
|
1164
1173
|
|
|
1165
1174
|
translateSelector(selector) {
|
|
1166
1175
|
let result = selector
|
|
1176
|
+
|
|
1177
|
+
const preserved = []
|
|
1178
|
+
result = result.replace(/([.#][a-zA-Z_\u00C0-\u024F][a-zA-Z0-9_\u00C0-\u024F-]*)/g, (match) => {
|
|
1179
|
+
preserved.push(match)
|
|
1180
|
+
return `__PRESERVED_${preserved.length - 1}__`
|
|
1181
|
+
})
|
|
1167
1182
|
|
|
1168
1183
|
result = result.replace(/:racine\b/gi, ':root')
|
|
1169
1184
|
result = result.replace(/::avant\b/gi, '::before')
|
|
@@ -1215,6 +1230,24 @@ class CSSGenerator {
|
|
|
1215
1230
|
result = result.replace(/\bvalide\b/gi, ':valid')
|
|
1216
1231
|
result = result.replace(/\binvalide\b/gi, ':invalid')
|
|
1217
1232
|
|
|
1233
|
+
result = result.replace(/\bliste ordonnée\b/gi, 'ol')
|
|
1234
|
+
result = result.replace(/\bliste ordonnee\b/gi, 'ol')
|
|
1235
|
+
result = result.replace(/\bliste description\b/gi, 'dl')
|
|
1236
|
+
result = result.replace(/\bélément liste\b/gi, 'li')
|
|
1237
|
+
result = result.replace(/\belement liste\b/gi, 'li')
|
|
1238
|
+
result = result.replace(/\bligne horizontale\b/gi, 'hr')
|
|
1239
|
+
result = result.replace(/\bcitation bloc\b/gi, 'blockquote')
|
|
1240
|
+
result = result.replace(/\bgroupe champs\b/gi, 'fieldset')
|
|
1241
|
+
result = result.replace(/\bzone texte\b/gi, 'textarea')
|
|
1242
|
+
result = result.replace(/\bcellule entête\b/gi, 'th')
|
|
1243
|
+
result = result.replace(/\bcellule entete\b/gi, 'th')
|
|
1244
|
+
result = result.replace(/\bentête tableau\b/gi, 'thead')
|
|
1245
|
+
result = result.replace(/\bentete tableau\b/gi, 'thead')
|
|
1246
|
+
result = result.replace(/\bcorps tableau\b/gi, 'tbody')
|
|
1247
|
+
result = result.replace(/\bpied tableau\b/gi, 'tfoot')
|
|
1248
|
+
result = result.replace(/\blégende figure\b/gi, 'figcaption')
|
|
1249
|
+
result = result.replace(/\blegende figure\b/gi, 'figcaption')
|
|
1250
|
+
|
|
1218
1251
|
result = result.replace(/\bcorps\b/gi, 'body')
|
|
1219
1252
|
result = result.replace(/\btête\b/gi, 'head')
|
|
1220
1253
|
result = result.replace(/\btete\b/gi, 'head')
|
|
@@ -1250,6 +1283,27 @@ class CSSGenerator {
|
|
|
1250
1283
|
result = result.replace(/\bdivision\b/gi, 'div')
|
|
1251
1284
|
result = result.replace(/\bportée\b/gi, 'span')
|
|
1252
1285
|
result = result.replace(/\bportee\b/gi, 'span')
|
|
1286
|
+
result = result.replace(/\bpréformaté\b/gi, 'pre')
|
|
1287
|
+
result = result.replace(/\bpreformate\b/gi, 'pre')
|
|
1288
|
+
result = result.replace(/\bétiquette\b/gi, 'label')
|
|
1289
|
+
result = result.replace(/\betiquette\b/gi, 'label')
|
|
1290
|
+
result = result.replace(/\bsélection\b/gi, 'select')
|
|
1291
|
+
result = result.replace(/\bselection\b/gi, 'select')
|
|
1292
|
+
result = result.replace(/\bterme\b/gi, 'dt')
|
|
1293
|
+
result = result.replace(/\bdéfinition\b/gi, 'dd')
|
|
1294
|
+
result = result.replace(/\bdefinition\b/gi, 'dd')
|
|
1295
|
+
result = result.replace(/\brésumé\b/gi, 'summary')
|
|
1296
|
+
result = result.replace(/\bresume\b/gi, 'summary')
|
|
1297
|
+
result = result.replace(/\bpetit\b/gi, 'small')
|
|
1298
|
+
result = result.replace(/\badresse\b/gi, 'address')
|
|
1299
|
+
result = result.replace(/\blégende\b/gi, 'legend')
|
|
1300
|
+
result = result.replace(/\blegende\b/gi, 'legend')
|
|
1301
|
+
result = result.replace(/\bfigure\b/gi, 'figure')
|
|
1302
|
+
result = result.replace(/\bligne\b/gi, 'tr')
|
|
1303
|
+
|
|
1304
|
+
for (let i = 0; i < preserved.length; i++) {
|
|
1305
|
+
result = result.replace(`__PRESERVED_${i}__`, preserved[i])
|
|
1306
|
+
}
|
|
1253
1307
|
|
|
1254
1308
|
return result
|
|
1255
1309
|
}
|
package/lexer/ether-lexer.js
CHANGED
|
@@ -688,7 +688,7 @@ class EtherLexer {
|
|
|
688
688
|
const normalized = this.normalizeAccents(phrase)
|
|
689
689
|
const compounds = [
|
|
690
690
|
'en ligne', 'hors ligne', 'au survol', 'au clic', 'au focus',
|
|
691
|
-
'au double clic', 'au changement', 'a la soumission',
|
|
691
|
+
'au double clic', 'au changement', 'a la soumission',
|
|
692
692
|
'retour a la ligne', 'lecture seule', 'zone texte',
|
|
693
693
|
'case a cocher', 'bouton radio', 'premiere lettre',
|
|
694
694
|
'premiere ligne', 'inferieur ou egal',
|
|
@@ -698,12 +698,32 @@ class EtherLexer {
|
|
|
698
698
|
'droite a gauche',
|
|
699
699
|
'definir defaut', 'mettre a jour',
|
|
700
700
|
'cle primaire', 'cle etrangere',
|
|
701
|
-
'non nul', 'par defaut',
|
|
701
|
+
'non nul', 'par defaut',
|
|
702
702
|
'au focus dans', 'pointeur bas', 'pointeur haut',
|
|
703
703
|
'obtenir contenu', 'erreur type', 'erreur syntaxe',
|
|
704
704
|
'nettoyer gauche', 'nettoyer droite', 'vers date',
|
|
705
|
-
'si null', 'creer role',
|
|
706
|
-
'a la reinitialisation'
|
|
705
|
+
'si null', 'creer role',
|
|
706
|
+
'a la reinitialisation',
|
|
707
|
+
'liste ordonnee', 'liste description',
|
|
708
|
+
'ligne horizontale', 'citation bloc',
|
|
709
|
+
'groupe champs', 'cellule entete',
|
|
710
|
+
'entete tableau', 'corps tableau', 'pied tableau',
|
|
711
|
+
'legende figure', 'decalage contour',
|
|
712
|
+
'ombre boite', 'ombre texte',
|
|
713
|
+
'bordure rayon', 'largeur max', 'largeur min',
|
|
714
|
+
'hauteur max', 'hauteur min',
|
|
715
|
+
'taille police', 'poids police', 'style police',
|
|
716
|
+
'famille police', 'hauteur ligne',
|
|
717
|
+
'alignement texte', 'decoration texte', 'transformation texte',
|
|
718
|
+
'direction flex', 'enveloppe flex',
|
|
719
|
+
'justifier contenu', 'aligner elements',
|
|
720
|
+
'colonnes grille', 'lignes grille',
|
|
721
|
+
'style liste', 'type liste',
|
|
722
|
+
'couleur fond', 'image fond', 'position fond', 'taille fond',
|
|
723
|
+
'couleur bordure', 'style bordure', 'largeur bordure',
|
|
724
|
+
'espacement lettres', 'espacement mots',
|
|
725
|
+
'espace blanc', 'debordement texte',
|
|
726
|
+
'flou fond', 'filtre fond'
|
|
707
727
|
]
|
|
708
728
|
return compounds.includes(normalized)
|
|
709
729
|
}
|