From e0997e52ba36c0d921ff02d7beeb8c7f51195555 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 5 Mar 2023 13:07:18 +0000 Subject: [PATCH 1/2] Bump decode-uri-component from 0.2.0 to 0.2.2 Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component) from 0.2.0 to 0.2.2. - [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases) - [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2) --- updated-dependencies: - dependency-name: decode-uri-component dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index fc81a95..5f4d622 100644 --- a/package-lock.json +++ b/package-lock.json @@ -749,9 +749,9 @@ } }, "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", "dev": true, "engines": { "node": ">=0.10" @@ -4644,9 +4644,9 @@ "dev": true }, "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", "dev": true }, "default-compare": { From 829691423e5e707af1f6570f4cd0d5558fd3b700 Mon Sep 17 00:00:00 2001 From: Bruno Gasparetto Date: Tue, 18 Apr 2023 23:54:15 -0400 Subject: [PATCH 2/2] =?UTF-8?q?Adiciona=20o=20tipo=20java.lang.String=20e?= =?UTF-8?q?=20alguns=20m=C3=A9todos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Após alguns problemas tentando executar Regex em strings, tanto para verificar uma expressão quanto para efetuar substituições, percebi que há muitos problemas entre o tipo string e o java.lang.String. --- fluig.d.ts | 151 +++++++++++++++++++++++++++++++++++++++++++++ src/java/lang.d.ts | 151 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 302 insertions(+) diff --git a/fluig.d.ts b/fluig.d.ts index 9ccb352..d085926 100644 --- a/fluig.d.ts +++ b/fluig.d.ts @@ -2794,6 +2794,157 @@ declare namespace java.lang { */ toString(): string; } + + declare class String { + constructor(); + constructor(original: string); + + /** + * Pega o char da posição indicada. + * + * Importante: embora o método deva devolver um char o Fluig + * trata como um número (provavelmente o código ASCII do char). + * + * Se precisar da letra utilize o método substring indicando índice + * inicial e final. + * + * @example + * var str = new java.lang.String("texto"); + * str.substring(1, 2); // Retornará "e" + */ + charAt(index: number): number; + + /** + * Compara duas strings + * + * Retorna 0 se as strings forem iguais, menor que zero se essa string + * for menor do que a outra string ou maior que zero se essa string for + * maior do que a outra. + */ + compareTo(anotherString: string): number; + + /** + * Compara duas strings ignorando as diferenças de maiúscula e minúscula + * + * Retorna 0 se as strings forem iguais, menor que zero se essa string + * for menor do que a outra string ou maior que zero se essa string for + * maior do que a outra. + */ + compareToIgnoreCase(anotherString: string): number; + + /** + * Retorna verdadeiro se essa string contém a string informada + */ + contains(substring: string): boolean; + + /** + * Retorna verdadeiro se essa string termina com a string informada + */ + endsWith(suffix: string): boolean; + + /** + * Retorna verdadeiro se essa string começa com a string informada + */ + startsWith(prefix: string): boolean; + + /** + * Retorna verdadeiro se ambas strings forem iguais ignorando case + */ + equalsIgnoreCase(anotherString: string): boolean; + + /** + * Retorna o índice da primeira ocorrência da string informada + */ + indexOf(str: string): number; + + /** + * Retorna o índice da primeira ocorrência da string informada a partir do índice indicado + */ + indexOf(str: string, fromIndex: number): number; + + /** + * Retorna o índice da última ocorrência da string informada + */ + lastIndexOf(str: string): number; + + /** + * Retorna o índice da última ocorrência da string informada a partir do índice indicado + */ + lastIndexOf(str: string, fromIndex: number): number; + + /** + * Retorna a quantidade de caracteres da string + */ + length(): number; + + /** + * Retorna verdadeiro se a string satisfaz a Expressão Regular + */ + matches(regex: string): boolean; + + /** + * Substitui nessa string todos os trechos que satisfaçam a string target + * + * Importante: esse método não aceita Expressão Regular. + * + * @param target Texto a procurar + * @param replacement Texto a substituir + */ + replace(target: string, replacement: string): String; + + /** + * Substitui nessa string todos os trechos que satisfaçam a string de Expressão Regular + * + * @param regex String de Expressão Regular + * @param replacement Texto a substituir + */ + replaceAll(regex: string, replacement: string): String + + /** + * Divide a string em arrays satisfazendo a Expressão Regular fornecida + * + * @param regex String de Expressão Regular + */ + split(regex: string): String[]; + + /** + * Divide a string em arrays satisfazendo a Expressão Regular fornecida + * + * @param regex String de Expressão Regular + * @param limit Número máximo de partes a dividir a string + */ + split(regex: string, limit: number): String[]; + + /** + * Retorna uma substring iniciando no índice indicado até o final da string + * + * @param beginIndex Índice inicial, começando em 0 + */ + substring(beginIndex: number): String; + + /** + * Retorna uma substring iniciando no índice indicado até o índice final + * + * @param beginIndex Índice inicial, começando em 0 + * @param endIndex Índice final, começando em 0 + */ + substring(beginIndex: number, endIndex: number): String; + + /** + * Converte a string para letras minúsculas + */ + toLowerCase(): String; + + /** + * Converte a string para letras maiúsculas + */ + toUpperCase(): String; + + /** + * Remove espaços em branco do início e fim da string + */ + trim(): String; + } } declare namespace javax.naming { diff --git a/src/java/lang.d.ts b/src/java/lang.d.ts index 64a360f..7954473 100644 --- a/src/java/lang.d.ts +++ b/src/java/lang.d.ts @@ -5,4 +5,155 @@ declare namespace java.lang { */ toString(): string; } + + declare class String { + constructor(); + constructor(original: string); + + /** + * Pega o char da posição indicada. + * + * Importante: embora o método deva devolver um char o Fluig + * trata como um número (provavelmente o código ASCII do char). + * + * Se precisar da letra utilize o método substring indicando índice + * inicial e final. + * + * @example + * var str = new java.lang.String("texto"); + * str.substring(1, 2); // Retornará "e" + */ + charAt(index: number): number; + + /** + * Compara duas strings + * + * Retorna 0 se as strings forem iguais, menor que zero se essa string + * for menor do que a outra string ou maior que zero se essa string for + * maior do que a outra. + */ + compareTo(anotherString: string): number; + + /** + * Compara duas strings ignorando as diferenças de maiúscula e minúscula + * + * Retorna 0 se as strings forem iguais, menor que zero se essa string + * for menor do que a outra string ou maior que zero se essa string for + * maior do que a outra. + */ + compareToIgnoreCase(anotherString: string): number; + + /** + * Retorna verdadeiro se essa string contém a string informada + */ + contains(substring: string): boolean; + + /** + * Retorna verdadeiro se essa string termina com a string informada + */ + endsWith(suffix: string): boolean; + + /** + * Retorna verdadeiro se essa string começa com a string informada + */ + startsWith(prefix: string): boolean; + + /** + * Retorna verdadeiro se ambas strings forem iguais ignorando case + */ + equalsIgnoreCase(anotherString: string): boolean; + + /** + * Retorna o índice da primeira ocorrência da string informada + */ + indexOf(str: string): number; + + /** + * Retorna o índice da primeira ocorrência da string informada a partir do índice indicado + */ + indexOf(str: string, fromIndex: number): number; + + /** + * Retorna o índice da última ocorrência da string informada + */ + lastIndexOf(str: string): number; + + /** + * Retorna o índice da última ocorrência da string informada a partir do índice indicado + */ + lastIndexOf(str: string, fromIndex: number): number; + + /** + * Retorna a quantidade de caracteres da string + */ + length(): number; + + /** + * Retorna verdadeiro se a string satisfaz a Expressão Regular + */ + matches(regex: string): boolean; + + /** + * Substitui nessa string todos os trechos que satisfaçam a string target + * + * Importante: esse método não aceita Expressão Regular. + * + * @param target Texto a procurar + * @param replacement Texto a substituir + */ + replace(target: string, replacement: string): String; + + /** + * Substitui nessa string todos os trechos que satisfaçam a string de Expressão Regular + * + * @param regex String de Expressão Regular + * @param replacement Texto a substituir + */ + replaceAll(regex: string, replacement: string): String + + /** + * Divide a string em arrays satisfazendo a Expressão Regular fornecida + * + * @param regex String de Expressão Regular + */ + split(regex: string): String[]; + + /** + * Divide a string em arrays satisfazendo a Expressão Regular fornecida + * + * @param regex String de Expressão Regular + * @param limit Número máximo de partes a dividir a string + */ + split(regex: string, limit: number): String[]; + + /** + * Retorna uma substring iniciando no índice indicado até o final da string + * + * @param beginIndex Índice inicial, começando em 0 + */ + substring(beginIndex: number): String; + + /** + * Retorna uma substring iniciando no índice indicado até o índice final + * + * @param beginIndex Índice inicial, começando em 0 + * @param endIndex Índice final, começando em 0 + */ + substring(beginIndex: number, endIndex: number): String; + + /** + * Converte a string para letras minúsculas + */ + toLowerCase(): String; + + /** + * Converte a string para letras maiúsculas + */ + toUpperCase(): String; + + /** + * Remove espaços em branco do início e fim da string + */ + trim(): String; + } }