@designliquido/foles 0.9.4 → 0.9.6
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/execucao.js +9 -2
- package/execucao.js.map +1 -1
- package/fontes/avaliador-sintatico/avaliador-sintatico-reverso.js +288 -211
- package/fontes/avaliador-sintatico/avaliador-sintatico-reverso.js.map +1 -1
- package/fontes/avaliador-sintatico/avaliador-sintatico.js +87 -0
- package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
- package/fontes/estruturas/estrutura.d.ts +1 -0
- package/fontes/estruturas/estrutura.js.map +1 -1
- package/fontes/foles.js +5 -4
- package/fontes/foles.js.map +1 -1
- package/fontes/lexador/palavras-reservadas/css.d.ts +21 -13
- package/fontes/lexador/palavras-reservadas/css.js +21 -13
- package/fontes/lexador/palavras-reservadas/css.js.map +1 -1
- package/fontes/lexador/palavras-reservadas/foles.d.ts +10 -0
- package/fontes/lexador/palavras-reservadas/foles.js +10 -0
- package/fontes/lexador/palavras-reservadas/foles.js.map +1 -1
- package/fontes/modificadores/borda-mascara.js +3 -3
- package/fontes/modificadores/caminho-recorte.d.ts +9 -0
- package/fontes/modificadores/caminho-recorte.js +39 -0
- package/fontes/modificadores/caminho-recorte.js.map +1 -0
- package/fontes/modificadores/conteudo.js +2 -2
- package/fontes/modificadores/conteudo.js.map +1 -1
- package/fontes/modificadores/dicionario/dicionario-modificadores.js +2 -0
- package/fontes/modificadores/dicionario/dicionario-modificadores.js.map +1 -1
- package/fontes/modificadores/dicionario/dicionario-reverso-modificadores.js +16 -0
- package/fontes/modificadores/dicionario/dicionario-reverso-modificadores.js.map +1 -1
- package/fontes/modificadores/imagem-borda.d.ts +3 -1
- package/fontes/modificadores/imagem-borda.js +1 -1
- package/fontes/modificadores/imagem-borda.js.map +1 -1
- package/fontes/modificadores/imagem-fundo.d.ts +2 -1
- package/fontes/modificadores/imagem-fundo.js.map +1 -1
- package/fontes/modificadores/limite-forma-imagem.js +1 -1
- package/fontes/modificadores/sombra-caixa.d.ts +3 -1
- package/fontes/modificadores/sombra-caixa.js +1 -1
- package/fontes/modificadores/sombra-caixa.js.map +1 -1
- package/fontes/modificadores/superclasse/modificador.d.ts +2 -1
- package/fontes/modificadores/superclasse/modificador.js.map +1 -1
- package/fontes/modificadores/superclasse/seletor-modificador.d.ts +2 -1
- package/fontes/modificadores/superclasse/seletor-modificador.js.map +1 -1
- package/fontes/modificadores/transformar.js +1 -0
- package/fontes/modificadores/transformar.js.map +1 -1
- package/fontes/modificadores/validacoes/atribuicao-abreviada.d.ts +3 -1
- package/fontes/modificadores/validacoes/atribuicao-abreviada.js +18 -6
- package/fontes/modificadores/validacoes/atribuicao-abreviada.js.map +1 -1
- package/fontes/modificadores/validacoes/comum.d.ts +3 -1
- package/fontes/modificadores/validacoes/comum.js +15 -3
- package/fontes/modificadores/validacoes/comum.js.map +1 -1
- package/fontes/modificadores/validacoes/condicao-extra.d.ts +3 -1
- package/fontes/modificadores/validacoes/condicao-extra.js +16 -4
- package/fontes/modificadores/validacoes/condicao-extra.js.map +1 -1
- package/fontes/modificadores/validacoes/cor.d.ts +2 -1
- package/fontes/modificadores/validacoes/cor.js +17 -6
- package/fontes/modificadores/validacoes/cor.js.map +1 -1
- package/fontes/modificadores/validacoes/fonte.d.ts +3 -1
- package/fontes/modificadores/validacoes/fonte.js +15 -3
- package/fontes/modificadores/validacoes/fonte.js.map +1 -1
- package/fontes/modificadores/validacoes/identificacao-personalizada.d.ts +3 -1
- package/fontes/modificadores/validacoes/identificacao-personalizada.js.map +1 -1
- package/fontes/modificadores/validacoes/multiplos-qualitativos.d.ts +3 -1
- package/fontes/modificadores/validacoes/multiplos-qualitativos.js +27 -16
- package/fontes/modificadores/validacoes/multiplos-qualitativos.js.map +1 -1
- package/fontes/modificadores/validacoes/numerica.d.ts +3 -1
- package/fontes/modificadores/validacoes/numerica.js +21 -9
- package/fontes/modificadores/validacoes/numerica.js.map +1 -1
- package/fontes/modificadores/validacoes/quantificador.js +3 -3
- package/fontes/modificadores/variacao-fonte-alternativa.d.ts +3 -1
- package/fontes/modificadores/variacao-fonte-alternativa.js +14 -1
- package/fontes/modificadores/variacao-fonte-alternativa.js.map +1 -1
- package/fontes/seletores/seletor-estrutura.js.map +1 -1
- package/fontes/serializadores/serializador.js +39 -22
- package/fontes/serializadores/serializador.js.map +1 -1
- package/fontes/tradutores/tradutor.js +3 -2
- package/fontes/tradutores/tradutor.js.map +1 -1
- package/fontes/valores/dicionario-valores.js +18 -0
- package/fontes/valores/dicionario-valores.js.map +1 -1
- package/fontes/valores/metodos/css/annotation.d.ts +8 -0
- package/fontes/valores/metodos/css/annotation.js +25 -0
- package/fontes/valores/metodos/css/annotation.js.map +1 -0
- package/fontes/valores/metodos/css/character-variant.d.ts +8 -0
- package/fontes/valores/metodos/css/character-variant.js +19 -0
- package/fontes/valores/metodos/css/character-variant.js.map +1 -0
- package/fontes/valores/metodos/css/counter.d.ts +10 -0
- package/fontes/valores/metodos/css/counter.js +55 -0
- package/fontes/valores/metodos/css/counter.js.map +1 -0
- package/fontes/valores/metodos/css/ornaments.d.ts +8 -0
- package/fontes/valores/metodos/css/ornaments.js +25 -0
- package/fontes/valores/metodos/css/ornaments.js.map +1 -0
- package/fontes/valores/metodos/css/rotate3d.d.ts +12 -0
- package/fontes/valores/metodos/css/rotate3d.js +26 -0
- package/fontes/valores/metodos/css/rotate3d.js.map +1 -0
- package/fontes/valores/metodos/css/styleset.d.ts +10 -0
- package/fontes/valores/metodos/css/styleset.js +29 -0
- package/fontes/valores/metodos/css/styleset.js.map +1 -0
- package/fontes/valores/metodos/css/stylistic.d.ts +8 -0
- package/fontes/valores/metodos/css/stylistic.js +19 -0
- package/fontes/valores/metodos/css/stylistic.js.map +1 -0
- package/fontes/valores/metodos/css/swash.d.ts +8 -0
- package/fontes/valores/metodos/css/swash.js +19 -0
- package/fontes/valores/metodos/css/swash.js.map +1 -0
- package/fontes/valores/metodos/foles/anotacao.d.ts +8 -0
- package/fontes/valores/metodos/foles/anotacao.js +25 -0
- package/fontes/valores/metodos/foles/anotacao.js.map +1 -0
- package/fontes/valores/metodos/foles/conjunto-estilos.d.ts +10 -0
- package/fontes/valores/metodos/foles/conjunto-estilos.js +29 -0
- package/fontes/valores/metodos/foles/conjunto-estilos.js.map +1 -0
- package/fontes/valores/metodos/foles/contador.d.ts +10 -0
- package/fontes/valores/metodos/foles/contador.js +70 -0
- package/fontes/valores/metodos/foles/contador.js.map +1 -0
- package/fontes/valores/metodos/foles/espirrar.d.ts +8 -0
- package/fontes/valores/metodos/foles/espirrar.js +19 -0
- package/fontes/valores/metodos/foles/espirrar.js.map +1 -0
- package/fontes/valores/metodos/foles/estilistico.d.ts +8 -0
- package/fontes/valores/metodos/foles/estilistico.js +19 -0
- package/fontes/valores/metodos/foles/estilistico.js.map +1 -0
- package/fontes/valores/metodos/foles/ornamentos.d.ts +8 -0
- package/fontes/valores/metodos/foles/ornamentos.js +25 -0
- package/fontes/valores/metodos/foles/ornamentos.js.map +1 -0
- package/fontes/valores/metodos/foles/rotacionar-3d.d.ts +12 -0
- package/fontes/valores/metodos/foles/rotacionar-3d.js +29 -0
- package/fontes/valores/metodos/foles/rotacionar-3d.js.map +1 -0
- package/fontes/valores/metodos/foles/variar-caractere.d.ts +8 -0
- package/fontes/valores/metodos/foles/variar-caractere.js +19 -0
- package/fontes/valores/metodos/foles/variar-caractere.js.map +1 -0
- package/package.json +1 -1
- package/testes/modificadores/atribuicao-abreviada.test.js.map +1 -1
- package/testes/modificadores/metodos-reversos.test.js +69 -0
- package/testes/modificadores/metodos-reversos.test.js.map +1 -1
- package/testes/modificadores/metodos.test.js +545 -0
- package/testes/modificadores/metodos.test.js.map +1 -1
- package/testes/serializador.test.js +102 -6
- package/testes/serializador.test.js.map +1 -1
- package/testes/tradutor.test.js +1 -1
- package/testes/tradutor.test.js.map +1 -1
package/execucao.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const commander_1 = require("commander");
|
|
3
4
|
const exportador_1 = require("./fontes/exportador");
|
|
4
5
|
const foles_1 = require("./fontes/foles");
|
|
5
|
-
const commander_1 = require("commander");
|
|
6
6
|
const principal = () => {
|
|
7
7
|
const analisadorArgumentos = new commander_1.Command();
|
|
8
8
|
let nomeArquivo;
|
|
@@ -10,8 +10,9 @@ const principal = () => {
|
|
|
10
10
|
.helpOption('-?, --ajuda', 'Exibe a ajuda para o comando.')
|
|
11
11
|
.argument('[arquivos...]', 'Nomes dos arquivos (opcional)')
|
|
12
12
|
.option('-a, --aninhamento', 'Gera CSS com aninhamento. Não recomendado usar se o CSS executar em navegadores antigos.', false)
|
|
13
|
-
.option('-m, --mapas', 'Gera CSS com mapas de fontes.', true)
|
|
14
13
|
.option('-c, --console', 'Escreve a saída da tradução em console.', null)
|
|
14
|
+
.option('-m, --mapas', 'Gera CSS com mapas de fontes.', true)
|
|
15
|
+
.option('-v, --versao', 'Imprime o número da versão atual de FolEs', false)
|
|
15
16
|
.action((arquivos) => {
|
|
16
17
|
if (arquivos.length > 0) {
|
|
17
18
|
nomeArquivo = arquivos[0];
|
|
@@ -19,6 +20,12 @@ const principal = () => {
|
|
|
19
20
|
});
|
|
20
21
|
analisadorArgumentos.parse();
|
|
21
22
|
const opcoes = analisadorArgumentos.opts();
|
|
23
|
+
if (opcoes.versao) {
|
|
24
|
+
const informacoesPacote = require('./package.json');
|
|
25
|
+
const versao = informacoesPacote.version;
|
|
26
|
+
console.log(versao);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
22
29
|
if (!nomeArquivo) {
|
|
23
30
|
console.error('Favor informar nome do arquivo a ser traduzido.');
|
|
24
31
|
process.exit(70);
|
package/execucao.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execucao.js","sourceRoot":"","sources":["../execucao.ts"],"names":[],"mappings":";;AAAA,oDAAiD;AACjD,0CAAuC;
|
|
1
|
+
{"version":3,"file":"execucao.js","sourceRoot":"","sources":["../execucao.ts"],"names":[],"mappings":";;AAAA,yCAAoC;AAEpC,oDAAiD;AACjD,0CAAuC;AAEvC,MAAM,SAAS,GAAG,GAAG,EAAE;IACnB,MAAM,oBAAoB,GAAG,IAAI,mBAAO,EAAE,CAAC;IAC3C,IAAI,WAAmB,CAAC;IAExB,oBAAoB;SACf,UAAU,CAAC,aAAa,EAAE,+BAA+B,CAAC;SAC1D,QAAQ,CAAC,eAAe,EAAE,+BAA+B,CAAC;SAC1D,MAAM,CACH,mBAAmB,EACnB,0FAA0F,EAC1F,KAAK,CACR;SACA,MAAM,CACH,eAAe,EACf,yCAAyC,EACzC,IAAI,CACP;SACA,MAAM,CACH,aAAa,EACb,+BAA+B,EAC/B,IAAI,CACP;SACA,MAAM,CACH,cAAc,EACd,2CAA2C,EAC3C,KAAK,CACR;SACA,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC,CAAC,CAAC;IAEP,oBAAoB,CAAC,KAAK,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,EAAE,CAAC;IAE3C,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpB,OAAO;IACX,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,iBAAyB,CAAC;IAE9B,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAChC,iBAAiB,GAAG,KAAK,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC5D,CAAC;SAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,iBAAiB,GAAG,KAAK,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC9D,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC/B,OAAO;IACX,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,cAAc,GAAG,KAAK,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,IAAI,uBAAU,EAAE,CAAC;QACpC,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QAClF,CAAC;aAAM,CAAC;YACJ,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC;IACL,CAAC;AACL,CAAC,CAAA;AAED,SAAS,EAAE,CAAC"}
|
|
@@ -119,6 +119,11 @@ class AvaliadorSintaticoReverso {
|
|
|
119
119
|
// TODO: Implementar lógica para resolver método
|
|
120
120
|
resolverMetodo(lexema) {
|
|
121
121
|
switch (lexema) {
|
|
122
|
+
case "annotation":
|
|
123
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'annotation'.");
|
|
124
|
+
const valorAnotacao = this.avancarEDevolverAnterior();
|
|
125
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após argumento do método annotation.");
|
|
126
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorAnotacao]);
|
|
122
127
|
case "blur":
|
|
123
128
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'blur'.");
|
|
124
129
|
const valorBorrar = this.avancarEDevolverAnterior();
|
|
@@ -164,6 +169,30 @@ class AvaliadorSintaticoReverso {
|
|
|
164
169
|
valorCalc2,
|
|
165
170
|
quantificadorCalc2,
|
|
166
171
|
]);
|
|
172
|
+
case "character-variant":
|
|
173
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'character-variant'.");
|
|
174
|
+
const valorVariarCaractere = this.avancarEDevolverAnterior();
|
|
175
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após argumento do método character-variant.");
|
|
176
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorVariarCaractere]);
|
|
177
|
+
case "clamp":
|
|
178
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'clamp'.");
|
|
179
|
+
const valorMin = this.avancarEDevolverAnterior();
|
|
180
|
+
const quantificadorMin = this.avancarEDevolverAnterior();
|
|
181
|
+
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após primeiro argumento do método 'clamp'.");
|
|
182
|
+
const valorMed = this.avancarEDevolverAnterior();
|
|
183
|
+
const quantificadorMed = this.avancarEDevolverAnterior();
|
|
184
|
+
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após segundo argumento do método 'clamp'.");
|
|
185
|
+
const valorMax = this.avancarEDevolverAnterior();
|
|
186
|
+
const quantificadorMax = this.avancarEDevolverAnterior();
|
|
187
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método clamp.");
|
|
188
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
189
|
+
valorMin,
|
|
190
|
+
quantificadorMin,
|
|
191
|
+
valorMed,
|
|
192
|
+
quantificadorMed,
|
|
193
|
+
valorMax,
|
|
194
|
+
quantificadorMax,
|
|
195
|
+
]);
|
|
167
196
|
case "contrast":
|
|
168
197
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'contrast'.");
|
|
169
198
|
const valorContraste = this.avancarEDevolverAnterior();
|
|
@@ -179,6 +208,19 @@ class AvaliadorSintaticoReverso {
|
|
|
179
208
|
valorContraste,
|
|
180
209
|
quantificadorContraste,
|
|
181
210
|
]);
|
|
211
|
+
case "counter":
|
|
212
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'counter'.");
|
|
213
|
+
const nomeCounter = this.avancarEDevolverAnterior();
|
|
214
|
+
let estiloCounter = null;
|
|
215
|
+
if (this.simbolos[this.atual].tipo === "VIRGULA") {
|
|
216
|
+
this.consumir(css_1.default.VIRGULA, "Esperada vírgula após primeiro parâmetro do método 'counter'.");
|
|
217
|
+
estiloCounter = this.avancarEDevolverAnterior();
|
|
218
|
+
}
|
|
219
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'counter'.");
|
|
220
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
221
|
+
nomeCounter,
|
|
222
|
+
estiloCounter,
|
|
223
|
+
]);
|
|
182
224
|
case "cubic-bezier":
|
|
183
225
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'cubic-bezier'.");
|
|
184
226
|
const parametro1 = this.avancarEDevolverAnterior();
|
|
@@ -195,6 +237,39 @@ class AvaliadorSintaticoReverso {
|
|
|
195
237
|
parametro3,
|
|
196
238
|
parametro4,
|
|
197
239
|
]);
|
|
240
|
+
case "drop-shadow":
|
|
241
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'drop-shadow'.");
|
|
242
|
+
let corSombra = null;
|
|
243
|
+
if (this.simbolos[this.atual].tipo === "QUALITATIVO") {
|
|
244
|
+
corSombra = this.avancarEDevolverAnterior();
|
|
245
|
+
}
|
|
246
|
+
const valorSombra1 = this.avancarEDevolverAnterior();
|
|
247
|
+
const quantificadorSombra1 = this.avancarEDevolverAnterior();
|
|
248
|
+
const valorSombra2 = this.avancarEDevolverAnterior();
|
|
249
|
+
const quantificadorSombra2 = this.avancarEDevolverAnterior();
|
|
250
|
+
let valorSombra3;
|
|
251
|
+
let quantificadorSombra3;
|
|
252
|
+
if (this.simbolos[this.atual].tipo === "NUMERO") {
|
|
253
|
+
valorSombra3 = this.avancarEDevolverAnterior();
|
|
254
|
+
quantificadorSombra3 = this.avancarEDevolverAnterior();
|
|
255
|
+
}
|
|
256
|
+
else {
|
|
257
|
+
valorSombra3 = null;
|
|
258
|
+
quantificadorSombra3 = null;
|
|
259
|
+
}
|
|
260
|
+
if (this.simbolos[this.atual].tipo === "QUALITATIVO") {
|
|
261
|
+
corSombra = this.avancarEDevolverAnterior();
|
|
262
|
+
}
|
|
263
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'drop-shadow'.");
|
|
264
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
265
|
+
valorSombra1,
|
|
266
|
+
quantificadorSombra1,
|
|
267
|
+
valorSombra2,
|
|
268
|
+
quantificadorSombra2,
|
|
269
|
+
valorSombra3,
|
|
270
|
+
quantificadorSombra3,
|
|
271
|
+
corSombra,
|
|
272
|
+
]);
|
|
198
273
|
case "fit-content":
|
|
199
274
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'fit-content'.");
|
|
200
275
|
const valorFit = this.avancarEDevolverAnterior();
|
|
@@ -219,44 +294,62 @@ class AvaliadorSintaticoReverso {
|
|
|
219
294
|
valorEscala,
|
|
220
295
|
quantificadorEscala,
|
|
221
296
|
]);
|
|
222
|
-
case "
|
|
223
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método '
|
|
224
|
-
const
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
297
|
+
case "hsl":
|
|
298
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'hsl'.");
|
|
299
|
+
const HdeHSL = this.avancarEDevolverAnterior();
|
|
300
|
+
const SdeHSL = this.avancarEDevolverAnterior();
|
|
301
|
+
this.consumir(css_1.default.QUANTIFICADOR, "Esperado símbolo percentual após argumento de saturação (S) no método 'hsl'.");
|
|
302
|
+
const LdeHSL = this.avancarEDevolverAnterior();
|
|
303
|
+
this.consumir(css_1.default.QUANTIFICADOR, "Esperado símbolo percentual após argumento de luminosidade (L) no método 'hsl'.");
|
|
304
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'hsl'.");
|
|
305
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
306
|
+
HdeHSL,
|
|
307
|
+
SdeHSL,
|
|
308
|
+
LdeHSL,
|
|
309
|
+
]);
|
|
310
|
+
case "hsla":
|
|
311
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'hsla'.");
|
|
312
|
+
const HdeHSLA = this.avancarEDevolverAnterior();
|
|
313
|
+
const SdeHSLA = this.avancarEDevolverAnterior();
|
|
314
|
+
this.consumir(css_1.default.QUANTIFICADOR, "Esperado símbolo percentual após argumento de saturação (S) no método 'hsla'.");
|
|
315
|
+
const LdeHSLA = this.avancarEDevolverAnterior();
|
|
316
|
+
this.consumir(css_1.default.QUANTIFICADOR, "Esperado símbolo percentual após argumento de luminosidade (L) no método 'hsla'.");
|
|
317
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após argumentos de método 'hsla'.");
|
|
318
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
319
|
+
HdeHSLA,
|
|
320
|
+
SdeHSLA,
|
|
321
|
+
LdeHSLA,
|
|
322
|
+
]);
|
|
323
|
+
case "hue-rotate":
|
|
324
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'hue-rotate'.");
|
|
325
|
+
const valorRotacao = this.avancarEDevolverAnterior();
|
|
326
|
+
let quantificadorRotacao;
|
|
327
|
+
if (this.simbolos[this.atual].tipo === "QUANTIFICADOR") {
|
|
328
|
+
quantificadorRotacao = this.avancarEDevolverAnterior();
|
|
229
329
|
}
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
this.consumir(css_1.default.
|
|
234
|
-
const valorScale3d1 = this.avancarEDevolverAnterior();
|
|
235
|
-
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após primeiro argumento do método scale3d.");
|
|
236
|
-
const valorScale3d2 = this.avancarEDevolverAnterior();
|
|
237
|
-
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após segundo argumento do método scale3d.");
|
|
238
|
-
const valorScale3d3 = this.avancarEDevolverAnterior();
|
|
239
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método scale3d.");
|
|
330
|
+
else {
|
|
331
|
+
quantificadorRotacao = null;
|
|
332
|
+
}
|
|
333
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'hue-rotate'.");
|
|
240
334
|
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
335
|
+
valorRotacao,
|
|
336
|
+
quantificadorRotacao,
|
|
337
|
+
]);
|
|
338
|
+
case "invert":
|
|
339
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'invert'.");
|
|
340
|
+
const valorInverter = this.avancarEDevolverAnterior();
|
|
341
|
+
let quantificadorInverter;
|
|
342
|
+
if (this.simbolos[this.atual].tipo === "QUANTIFICADOR") {
|
|
343
|
+
quantificadorInverter = this.avancarEDevolverAnterior();
|
|
344
|
+
}
|
|
345
|
+
else {
|
|
346
|
+
quantificadorInverter = null;
|
|
347
|
+
}
|
|
348
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'invert'.");
|
|
349
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
350
|
+
valorInverter,
|
|
351
|
+
quantificadorInverter,
|
|
244
352
|
]);
|
|
245
|
-
case "scaleZ":
|
|
246
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'scaleZ'.");
|
|
247
|
-
const valorScaleZ = this.avancarEDevolverAnterior();
|
|
248
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método scaleZ.");
|
|
249
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorScaleZ]);
|
|
250
|
-
case "scaleX":
|
|
251
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'scaleX'.");
|
|
252
|
-
const valorScaleX = this.avancarEDevolverAnterior();
|
|
253
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método scaleX.");
|
|
254
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorScaleX]);
|
|
255
|
-
case "scaleY":
|
|
256
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'scaleY'.");
|
|
257
|
-
const valorScaleY = this.avancarEDevolverAnterior();
|
|
258
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método scaleY.");
|
|
259
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorScaleY]);
|
|
260
353
|
case "linear-gradient":
|
|
261
354
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'linear-gradient'.");
|
|
262
355
|
const valorAngulo = this.avancarEDevolverAnterior();
|
|
@@ -313,124 +406,6 @@ class AvaliadorSintaticoReverso {
|
|
|
313
406
|
cor1,
|
|
314
407
|
cor2,
|
|
315
408
|
]);
|
|
316
|
-
case "hsl":
|
|
317
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'hsl'.");
|
|
318
|
-
const HdeHSL = this.avancarEDevolverAnterior();
|
|
319
|
-
const SdeHSL = this.avancarEDevolverAnterior();
|
|
320
|
-
this.consumir(css_1.default.QUANTIFICADOR, "Esperado símbolo percentual após argumento de saturação (S) no método 'hsl'.");
|
|
321
|
-
const LdeHSL = this.avancarEDevolverAnterior();
|
|
322
|
-
this.consumir(css_1.default.QUANTIFICADOR, "Esperado símbolo percentual após argumento de luminosidade (L) no método 'hsl'.");
|
|
323
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'hsl'.");
|
|
324
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
325
|
-
HdeHSL,
|
|
326
|
-
SdeHSL,
|
|
327
|
-
LdeHSL,
|
|
328
|
-
]);
|
|
329
|
-
case "hsla":
|
|
330
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'hsla'.");
|
|
331
|
-
const HdeHSLA = this.avancarEDevolverAnterior();
|
|
332
|
-
const SdeHSLA = this.avancarEDevolverAnterior();
|
|
333
|
-
this.consumir(css_1.default.QUANTIFICADOR, "Esperado símbolo percentual após argumento de saturação (S) no método 'hsla'.");
|
|
334
|
-
const LdeHSLA = this.avancarEDevolverAnterior();
|
|
335
|
-
this.consumir(css_1.default.QUANTIFICADOR, "Esperado símbolo percentual após argumento de luminosidade (L) no método 'hsla'.");
|
|
336
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após argumentos de método 'hsla'.");
|
|
337
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
338
|
-
HdeHSLA,
|
|
339
|
-
SdeHSLA,
|
|
340
|
-
LdeHSLA,
|
|
341
|
-
]);
|
|
342
|
-
case "skew":
|
|
343
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'skew'.");
|
|
344
|
-
const valorInclinar1 = this.avancarEDevolverAnterior();
|
|
345
|
-
let quantificadorInclinar1;
|
|
346
|
-
if (this.simbolos[this.atual].tipo === "QUANTIFICADOR") {
|
|
347
|
-
quantificadorInclinar1 = this.avancarEDevolverAnterior();
|
|
348
|
-
}
|
|
349
|
-
else {
|
|
350
|
-
quantificadorInclinar1 = null;
|
|
351
|
-
}
|
|
352
|
-
let valorInclinar2;
|
|
353
|
-
let quantificadorInclinar2;
|
|
354
|
-
if (this.simbolos[this.atual].tipo === "VIRGULA") {
|
|
355
|
-
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após primeiro argumento do método 'skew'.");
|
|
356
|
-
valorInclinar2 = this.avancarEDevolverAnterior();
|
|
357
|
-
quantificadorInclinar2 = this.avancarEDevolverAnterior();
|
|
358
|
-
}
|
|
359
|
-
else {
|
|
360
|
-
valorInclinar2 = null;
|
|
361
|
-
quantificadorInclinar2 = null;
|
|
362
|
-
}
|
|
363
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'skew'.");
|
|
364
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
365
|
-
valorInclinar1,
|
|
366
|
-
quantificadorInclinar1,
|
|
367
|
-
valorInclinar2,
|
|
368
|
-
quantificadorInclinar2,
|
|
369
|
-
]);
|
|
370
|
-
case "skewX":
|
|
371
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'skewX'.");
|
|
372
|
-
const valorInclinarX = this.avancarEDevolverAnterior();
|
|
373
|
-
let quantificadorInclinarX;
|
|
374
|
-
if (this.simbolos[this.atual].tipo === "QUANTIFICADOR") {
|
|
375
|
-
quantificadorInclinarX = this.avancarEDevolverAnterior();
|
|
376
|
-
}
|
|
377
|
-
else {
|
|
378
|
-
quantificadorInclinarX = null;
|
|
379
|
-
}
|
|
380
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'skewX'.");
|
|
381
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
382
|
-
valorInclinarX,
|
|
383
|
-
quantificadorInclinarX,
|
|
384
|
-
]);
|
|
385
|
-
case "skewY":
|
|
386
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'skewY'.");
|
|
387
|
-
const valorInclinarY = this.avancarEDevolverAnterior();
|
|
388
|
-
let quantificadorInclinarY;
|
|
389
|
-
if (this.simbolos[this.atual].tipo === "QUANTIFICADOR") {
|
|
390
|
-
quantificadorInclinarY = this.avancarEDevolverAnterior();
|
|
391
|
-
}
|
|
392
|
-
else {
|
|
393
|
-
quantificadorInclinarY = null;
|
|
394
|
-
}
|
|
395
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'skewY'.");
|
|
396
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
397
|
-
valorInclinarY,
|
|
398
|
-
quantificadorInclinarY,
|
|
399
|
-
]);
|
|
400
|
-
case "invert":
|
|
401
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'invert'.");
|
|
402
|
-
const valorInverter = this.avancarEDevolverAnterior();
|
|
403
|
-
let quantificadorInverter;
|
|
404
|
-
if (this.simbolos[this.atual].tipo === "QUANTIFICADOR") {
|
|
405
|
-
quantificadorInverter = this.avancarEDevolverAnterior();
|
|
406
|
-
}
|
|
407
|
-
else {
|
|
408
|
-
quantificadorInverter = null;
|
|
409
|
-
}
|
|
410
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'invert'.");
|
|
411
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
412
|
-
valorInverter,
|
|
413
|
-
quantificadorInverter,
|
|
414
|
-
]);
|
|
415
|
-
case "clamp":
|
|
416
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'clamp'.");
|
|
417
|
-
const valorMin = this.avancarEDevolverAnterior();
|
|
418
|
-
const quantificadorMin = this.avancarEDevolverAnterior();
|
|
419
|
-
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após primeiro argumento do método 'clamp'.");
|
|
420
|
-
const valorMed = this.avancarEDevolverAnterior();
|
|
421
|
-
const quantificadorMed = this.avancarEDevolverAnterior();
|
|
422
|
-
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após segundo argumento do método 'clamp'.");
|
|
423
|
-
const valorMax = this.avancarEDevolverAnterior();
|
|
424
|
-
const quantificadorMax = this.avancarEDevolverAnterior();
|
|
425
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método clamp.");
|
|
426
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
427
|
-
valorMin,
|
|
428
|
-
quantificadorMin,
|
|
429
|
-
valorMed,
|
|
430
|
-
quantificadorMed,
|
|
431
|
-
valorMax,
|
|
432
|
-
quantificadorMax,
|
|
433
|
-
]);
|
|
434
409
|
case "linear":
|
|
435
410
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'linear'.");
|
|
436
411
|
const valor1 = this.avancarEDevolverAnterior();
|
|
@@ -484,16 +459,11 @@ class AvaliadorSintaticoReverso {
|
|
|
484
459
|
}
|
|
485
460
|
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'opacity'.");
|
|
486
461
|
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorOpaco, quantificadorOpaco], true);
|
|
487
|
-
case "
|
|
488
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método '
|
|
489
|
-
const
|
|
490
|
-
this.consumir(css_1.default.
|
|
491
|
-
|
|
492
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método steps.");
|
|
493
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
494
|
-
valorNumerico,
|
|
495
|
-
termoSalto,
|
|
496
|
-
]);
|
|
462
|
+
case "ornaments":
|
|
463
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'ornaments'.");
|
|
464
|
+
const valorOrnaments = this.avancarEDevolverAnterior();
|
|
465
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após argumento do método ornaments.");
|
|
466
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorOrnaments]);
|
|
497
467
|
case "perspective":
|
|
498
468
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'perspective'.");
|
|
499
469
|
const valorPerspectivar = this.avancarEDevolverAnterior();
|
|
@@ -506,39 +476,6 @@ class AvaliadorSintaticoReverso {
|
|
|
506
476
|
}
|
|
507
477
|
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'perspective'.");
|
|
508
478
|
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorPerspectivar, quantificadorPerspectivar], true);
|
|
509
|
-
case "drop-shadow":
|
|
510
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'drop-shadow'.");
|
|
511
|
-
let corSombra = null;
|
|
512
|
-
if (this.simbolos[this.atual].tipo === "QUALITATIVO") {
|
|
513
|
-
corSombra = this.avancarEDevolverAnterior();
|
|
514
|
-
}
|
|
515
|
-
const valorSombra1 = this.avancarEDevolverAnterior();
|
|
516
|
-
const quantificadorSombra1 = this.avancarEDevolverAnterior();
|
|
517
|
-
const valorSombra2 = this.avancarEDevolverAnterior();
|
|
518
|
-
const quantificadorSombra2 = this.avancarEDevolverAnterior();
|
|
519
|
-
let valorSombra3;
|
|
520
|
-
let quantificadorSombra3;
|
|
521
|
-
if (this.simbolos[this.atual].tipo === "NUMERO") {
|
|
522
|
-
valorSombra3 = this.avancarEDevolverAnterior();
|
|
523
|
-
quantificadorSombra3 = this.avancarEDevolverAnterior();
|
|
524
|
-
}
|
|
525
|
-
else {
|
|
526
|
-
valorSombra3 = null;
|
|
527
|
-
quantificadorSombra3 = null;
|
|
528
|
-
}
|
|
529
|
-
if (this.simbolos[this.atual].tipo === "QUALITATIVO") {
|
|
530
|
-
corSombra = this.avancarEDevolverAnterior();
|
|
531
|
-
}
|
|
532
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'drop-shadow'.");
|
|
533
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
534
|
-
valorSombra1,
|
|
535
|
-
quantificadorSombra1,
|
|
536
|
-
valorSombra2,
|
|
537
|
-
quantificadorSombra2,
|
|
538
|
-
valorSombra3,
|
|
539
|
-
quantificadorSombra3,
|
|
540
|
-
corSombra,
|
|
541
|
-
]);
|
|
542
479
|
case "ray":
|
|
543
480
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'ray'.");
|
|
544
481
|
let posicaoRaio;
|
|
@@ -590,6 +527,30 @@ class AvaliadorSintaticoReverso {
|
|
|
590
527
|
}
|
|
591
528
|
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'rotate'.");
|
|
592
529
|
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorRotacionar, quantificadorRotacionar], true);
|
|
530
|
+
case "rotate3d":
|
|
531
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'rotate3d'.");
|
|
532
|
+
const valor1Rotacionar3d = this.avancarEDevolverAnterior();
|
|
533
|
+
this.consumir(css_1.default.VIRGULA, "Esperada vírgula após primeiro parâmetro do método 'rotate3d'.");
|
|
534
|
+
const valor2Rotacionar3d = this.avancarEDevolverAnterior();
|
|
535
|
+
this.consumir(css_1.default.VIRGULA, "Esperada vírgula após segundo parâmetro do método 'rotate3d'.");
|
|
536
|
+
const valor3Rotacionar3d = this.avancarEDevolverAnterior();
|
|
537
|
+
this.consumir(css_1.default.VIRGULA, "Esperada vírgula após terceiro parâmetro do método 'rotate3d'.");
|
|
538
|
+
const valor4Rotacionar3d = this.avancarEDevolverAnterior();
|
|
539
|
+
let quantificadorRotacionar3d;
|
|
540
|
+
if (this.simbolos[this.atual].tipo === "QUANTIFICADOR") {
|
|
541
|
+
quantificadorRotacionar3d = this.avancarEDevolverAnterior();
|
|
542
|
+
}
|
|
543
|
+
else {
|
|
544
|
+
quantificadorRotacionar3d = null;
|
|
545
|
+
}
|
|
546
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'rotate3d'.");
|
|
547
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
548
|
+
valor1Rotacionar3d,
|
|
549
|
+
valor2Rotacionar3d,
|
|
550
|
+
valor3Rotacionar3d,
|
|
551
|
+
valor4Rotacionar3d,
|
|
552
|
+
quantificadorRotacionar3d,
|
|
553
|
+
]);
|
|
593
554
|
case "rotateZ":
|
|
594
555
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'rotateZ'.");
|
|
595
556
|
const valorRotacionarZ = this.avancarEDevolverAnterior();
|
|
@@ -620,21 +581,6 @@ class AvaliadorSintaticoReverso {
|
|
|
620
581
|
valorRotacionarX,
|
|
621
582
|
quantificadorRotacionarX,
|
|
622
583
|
]);
|
|
623
|
-
case "hue-rotate":
|
|
624
|
-
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'hue-rotate'.");
|
|
625
|
-
const valorRotacao = this.avancarEDevolverAnterior();
|
|
626
|
-
let quantificadorRotacao;
|
|
627
|
-
if (this.simbolos[this.atual].tipo === "QUANTIFICADOR") {
|
|
628
|
-
quantificadorRotacao = this.avancarEDevolverAnterior();
|
|
629
|
-
}
|
|
630
|
-
else {
|
|
631
|
-
quantificadorRotacao = null;
|
|
632
|
-
}
|
|
633
|
-
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'hue-rotate'.");
|
|
634
|
-
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
635
|
-
valorRotacao,
|
|
636
|
-
quantificadorRotacao,
|
|
637
|
-
]);
|
|
638
584
|
case "rotateY":
|
|
639
585
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'rotateY'.");
|
|
640
586
|
const valorRotacionarY = this.avancarEDevolverAnterior();
|
|
@@ -665,6 +611,44 @@ class AvaliadorSintaticoReverso {
|
|
|
665
611
|
valorSaturar,
|
|
666
612
|
quantificadorSaturar,
|
|
667
613
|
]);
|
|
614
|
+
case "scale":
|
|
615
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'scale'.");
|
|
616
|
+
const valorScale1 = this.avancarEDevolverAnterior();
|
|
617
|
+
let valorScale2;
|
|
618
|
+
if (this.simbolos[this.atual].tipo === "VIRGULA") {
|
|
619
|
+
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após primeiro argumento do método scale.");
|
|
620
|
+
valorScale2 = this.avancarEDevolverAnterior();
|
|
621
|
+
}
|
|
622
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método scale.");
|
|
623
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorScale1, valorScale2], true);
|
|
624
|
+
case "scale3d":
|
|
625
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'scale3d'.");
|
|
626
|
+
const valorScale3d1 = this.avancarEDevolverAnterior();
|
|
627
|
+
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após primeiro argumento do método scale3d.");
|
|
628
|
+
const valorScale3d2 = this.avancarEDevolverAnterior();
|
|
629
|
+
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após segundo argumento do método scale3d.");
|
|
630
|
+
const valorScale3d3 = this.avancarEDevolverAnterior();
|
|
631
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método scale3d.");
|
|
632
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
633
|
+
valorScale3d1,
|
|
634
|
+
valorScale3d2,
|
|
635
|
+
valorScale3d3,
|
|
636
|
+
]);
|
|
637
|
+
case "scaleZ":
|
|
638
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'scaleZ'.");
|
|
639
|
+
const valorScaleZ = this.avancarEDevolverAnterior();
|
|
640
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método scaleZ.");
|
|
641
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorScaleZ]);
|
|
642
|
+
case "scaleX":
|
|
643
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'scaleX'.");
|
|
644
|
+
const valorScaleX = this.avancarEDevolverAnterior();
|
|
645
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método scaleX.");
|
|
646
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorScaleX]);
|
|
647
|
+
case "scaleY":
|
|
648
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'scaleY'.");
|
|
649
|
+
const valorScaleY = this.avancarEDevolverAnterior();
|
|
650
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método scaleY.");
|
|
651
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorScaleY]);
|
|
668
652
|
case "sepia":
|
|
669
653
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'sepia'.");
|
|
670
654
|
const valorSepia = this.avancarEDevolverAnterior();
|
|
@@ -680,6 +664,99 @@ class AvaliadorSintaticoReverso {
|
|
|
680
664
|
valorSepia,
|
|
681
665
|
quantificadorSepia,
|
|
682
666
|
]);
|
|
667
|
+
case "skew":
|
|
668
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'skew'.");
|
|
669
|
+
const valorInclinar1 = this.avancarEDevolverAnterior();
|
|
670
|
+
let quantificadorInclinar1;
|
|
671
|
+
if (this.simbolos[this.atual].tipo === "QUANTIFICADOR") {
|
|
672
|
+
quantificadorInclinar1 = this.avancarEDevolverAnterior();
|
|
673
|
+
}
|
|
674
|
+
else {
|
|
675
|
+
quantificadorInclinar1 = null;
|
|
676
|
+
}
|
|
677
|
+
let valorInclinar2;
|
|
678
|
+
let quantificadorInclinar2;
|
|
679
|
+
if (this.simbolos[this.atual].tipo === "VIRGULA") {
|
|
680
|
+
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após primeiro argumento do método 'skew'.");
|
|
681
|
+
valorInclinar2 = this.avancarEDevolverAnterior();
|
|
682
|
+
quantificadorInclinar2 = this.avancarEDevolverAnterior();
|
|
683
|
+
}
|
|
684
|
+
else {
|
|
685
|
+
valorInclinar2 = null;
|
|
686
|
+
quantificadorInclinar2 = null;
|
|
687
|
+
}
|
|
688
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'skew'.");
|
|
689
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
690
|
+
valorInclinar1,
|
|
691
|
+
quantificadorInclinar1,
|
|
692
|
+
valorInclinar2,
|
|
693
|
+
quantificadorInclinar2,
|
|
694
|
+
]);
|
|
695
|
+
case "skewX":
|
|
696
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'skewX'.");
|
|
697
|
+
const valorInclinarX = this.avancarEDevolverAnterior();
|
|
698
|
+
let quantificadorInclinarX;
|
|
699
|
+
if (this.simbolos[this.atual].tipo === "QUANTIFICADOR") {
|
|
700
|
+
quantificadorInclinarX = this.avancarEDevolverAnterior();
|
|
701
|
+
}
|
|
702
|
+
else {
|
|
703
|
+
quantificadorInclinarX = null;
|
|
704
|
+
}
|
|
705
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'skewX'.");
|
|
706
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
707
|
+
valorInclinarX,
|
|
708
|
+
quantificadorInclinarX,
|
|
709
|
+
]);
|
|
710
|
+
case "skewY":
|
|
711
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'skewY'.");
|
|
712
|
+
const valorInclinarY = this.avancarEDevolverAnterior();
|
|
713
|
+
let quantificadorInclinarY;
|
|
714
|
+
if (this.simbolos[this.atual].tipo === "QUANTIFICADOR") {
|
|
715
|
+
quantificadorInclinarY = this.avancarEDevolverAnterior();
|
|
716
|
+
}
|
|
717
|
+
else {
|
|
718
|
+
quantificadorInclinarY = null;
|
|
719
|
+
}
|
|
720
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após método 'skewY'.");
|
|
721
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
722
|
+
valorInclinarY,
|
|
723
|
+
quantificadorInclinarY,
|
|
724
|
+
]);
|
|
725
|
+
case "steps":
|
|
726
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'steps'.");
|
|
727
|
+
const valorNumerico = this.avancarEDevolverAnterior();
|
|
728
|
+
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após primeiro argumento do método steps.");
|
|
729
|
+
const termoSalto = this.avancarEDevolverAnterior();
|
|
730
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após segundo argumento do método steps.");
|
|
731
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [
|
|
732
|
+
valorNumerico,
|
|
733
|
+
termoSalto,
|
|
734
|
+
]);
|
|
735
|
+
case "styleset":
|
|
736
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'styleset'.");
|
|
737
|
+
const valor1ConjuntoEstilos = this.avancarEDevolverAnterior();
|
|
738
|
+
let valor2ConjuntoEstilos;
|
|
739
|
+
if (this.simbolos[this.atual].tipo === "VIRGULA") {
|
|
740
|
+
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após primeiro argumento do método styleset.");
|
|
741
|
+
valor2ConjuntoEstilos = this.avancarEDevolverAnterior();
|
|
742
|
+
}
|
|
743
|
+
let valor3ConjuntoEstilos;
|
|
744
|
+
if (this.simbolos[this.atual].tipo === "VIRGULA") {
|
|
745
|
+
this.consumir(css_1.default.VIRGULA, "Esperado vírgula após segundo argumento do método styleset.");
|
|
746
|
+
valor3ConjuntoEstilos = this.avancarEDevolverAnterior();
|
|
747
|
+
}
|
|
748
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após argumento do método styleset.");
|
|
749
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valor1ConjuntoEstilos, valor2ConjuntoEstilos, valor3ConjuntoEstilos]);
|
|
750
|
+
case "stylistic":
|
|
751
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'stylistic'.");
|
|
752
|
+
const valorEstilistico = this.avancarEDevolverAnterior();
|
|
753
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após argumento do método stylistic.");
|
|
754
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorEstilistico]);
|
|
755
|
+
case "swash":
|
|
756
|
+
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'swash'.");
|
|
757
|
+
const valorEspirrar = this.avancarEDevolverAnterior();
|
|
758
|
+
this.consumir(css_1.default.PARENTESE_DIREITO, "Esperado parêntese direito após argumento do método swash.");
|
|
759
|
+
return new seletor_valor_reverso_1.SeletorValorReverso(lexema, [valorEspirrar]);
|
|
683
760
|
case "translate":
|
|
684
761
|
this.consumir(css_1.default.PARENTESE_ESQUERDO, "Esperado parêntese esquerdo após método 'translate'.");
|
|
685
762
|
const valorTranslacao1 = this.avancarEDevolverAnterior();
|