diff --git a/.gitattributes b/.gitattributes
index 54fab47..5b9b4e3 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -5,3 +5,5 @@ LICENSE export-ignore
package-lock.json export-ignore
package.json export-ignore
README.md export-ignore
+gulpfile.js export-ignore
+src export-ignore
diff --git a/README.md b/README.md
index 5936ca6..cb42d6c 100644
--- a/README.md
+++ b/README.md
@@ -13,8 +13,14 @@ Sinta-se à vontade para ajudar a complementar o projeto com PR.
## Como instalar
-Baixe a [Última Release](https://github.com/fluiggers/fluig-declaration-type/releases/latest) e descompacte os arquivos `fluig.d.ts` e `jsconfig.json` para o diretório principal do seu projeto Fluig.
+Baixe a [Última Release](https://github.com/fluiggers/fluig-declaration-type/releases/latest) e descompacte os
+arquivos `fluig.d.ts` e `jsconfig.json` para o diretório principal do seu projeto Fluig.
+## Contribuição
+
+Sinta-se livre para fazer PRs para inserir novas descrições.
+
+Edite as declarações da pasta `src`, pois o arquivo `fluig.d.ts` será gerado concatenando todas as declarações desta pasta.
## Fontes de Documentação do Fluig
Os principais documentos utilizados para elaborar essas declarações de tipos vieram de:
diff --git a/fluig.d.ts b/fluig.d.ts
index 88d2663..5ceed5e 100644
--- a/fluig.d.ts
+++ b/fluig.d.ts
@@ -1,5421 +1,5405 @@
+declare namespace com.totvs.technology.foundation.sdk.service.vo.common {
+ declare class OrderParam {}
+}
+
/**
- * Helper para acessar serviços do Fluig
+ * Tipos de campo de um Dataset
+ *
+ * Usado na criação do Dataset, na função defineStructure.
*/
-declare namespace fluigAPI {
- /**
- * Recupera serviço para tratar Notificações
- */
- declare function getAlertService(): com.fluig.sdk.service.AlertService;
+enum DatasetFieldType {
+ NUMBER,
+ STRING,
+ TEXT,
+ DATE,
+ BOOLEAN,
+}
- /**
- * Recupera serviço para tratar Artigos
- */
- declare function getArticleService(): com.fluig.sdk.service.ArticleService;
+/**
+ * Cria uma coluna no dataset sincronizado
+ */
+declare function addColumn(coluna: string, tipo?: DatasetFieldType);
- /**
- * Recupera o serviço de autorização de cliente OAUTH
- */
- declare function getAuthorizeClientService(): com.fluig.sdk.service.AuthorizeClientSdkService;
+ /**
+ * Cria a chave principal do dataset sincronizado
+ *
+ * Para uso dos métodos updateRecord, deleteRecord e addOrUpdate do dataset sincronizado.
+ */
+declare function setKey(chaves: string[]): void;
- /**
- * Recupera o serviço para tratar Card Index
- */
- declare function getCardIndexService(): com.fluig.sdk.service.CardIndexService;
+ /**
+ * Cria um ou mais índices para maior performance na consulta do dataset sincronizado
+ */
+declare function addIndex(indices: string[]): void;
+/**
+ * Tipos de Filtros (constraint)
+ *
+ * Usado para criar os filtros que serão repassados ao método getDataset.
+ * Usar nos eventos do Fluig ou na criação de Dataset customizado.
+ */
+enum ConstraintType {
/**
- * Recupera o serviço para tratar Cards
+ * Filtro: Deve Conter
+ *
+ * Interprete como o E lógico
*/
- declare function getCardService(): com.fluig.sdk.service.CardService;
+ MUST,
/**
- * Recupera o serviço para tratar colaboradores
+ * Filtro: Pode Conter
+ *
+ * Interprete como OU lógico
*/
- declare function getCollaborationService(): com.fluig.sdk.service.CollaborationSDKService;
+ SHOULD,
/**
- * Recupera serviço para tratar comentários
+ * Filtro: Não Deve Conter
*/
- declare function getCommentService(): com.fluig.sdk.service.CommentService;
+ MUST_NOT,
+}
- /**
- * Recupera serviço para tratar Comunidades
- */
- declare function getCommunityService(): com.fluig.sdk.service.CommunityService;
+declare class Dataset {
+ const rowsCount: number;
/**
- * Recupera o serviço para tratar Upload de arquivos
+ * Retorna o valor de uma coluna (campo) em determinada linha (índice)
*/
- declare function getContentFilesService(): com.fluig.sdk.service.ContentFilesService;
+ getValue(linha: number, coluna: string): string;
/**
- * Recupera o serviço para tratar Documentos
+ * Cria uma coluna no Dataset
+ *
+ * @example
+ * var dataset = DatasetBuilder().newDataset();
+ * dataset.addColumn("coluna1");
+ * dataset.addColumn("coluna2");
+ * dataset.addRow(["valor coluna 1", "valor coluna 2"]);
*/
- declare function getDocumentService(): com.fluig.sdk.service.DocumentService;
+ addColumn(coluna: string): void;
/**
- * Recupera serviço para tratar Favoritos
+ * Adicionar uma linha ao Dataset
+ *
+ * @example
+ * var dataset = DatasetBuilder().newDataset();
+ * dataset.addColumn("coluna1");
+ * dataset.addColumn("coluna2");
+ * dataset.addRow(["valor coluna 1", "valor coluna 2"]);
*/
- declare function getFavoritesService(): com.fluig.sdk.service.FavoritesService;
+ addRow(valores: string[]|object[]): void;
/**
- * Recupera o serviço do Filter
+ * Adiciona uma linha à coleção que será persistida no cache de sincronização.
+ *
+ * Através dos campos da chave principal do Dataset (setKey) os registros
+ * serão localizados e alterados conforme os dados enviados pela função.
+ *
+ * Esta função só funciona se implementado na função onSync.
+ *
+ * @example
+ * var dataset = DatasetBuilder.newDataset();
+ * dataset.addColumn("Coluna1");
+ * dataset.addColumn("Coluna2");
+ * dataset.updateRow(["Valor coluna 1", "Valor coluna 2"]);
*/
- declare function getFilterService(): com.fluig.sdk.service.FilterAPIService;
+ updateRow(valores: string[]|object[]): void;
/**
- * Recupera o serviço para tratar Pastas de documentos
+ * Adiciona uma linha à coleção que será persistida no cache de sincronização.
+ *
+ * Caso o registro não exista ele será criado na base, caso contrário será atualizado.
+ *
+ * Através dos campos da chave principal do Dataset (setKey) os registros
+ * serão localizados e alterados conforme os dados enviados pela função.
+ *
+ * Esta função só funciona se implementado na função onSync.
+ *
+ * @example
+ * var dataset = DatasetBuilder.newDataset();
+ * dataset.addColumn("Coluna1");
+ * dataset.addColumn("Coluna2");
+ * dataset.addOrUpdateRow(["Valor coluna 1", "Valor coluna 2"]);
*/
- declare function getFolderDocumentService(): com.fluig.sdk.service.FolderDocumentService;
+ addOrUpdateRow(valores: string[]|object[]): void;
/**
- * Recupera serviço para tratar parâmetros gerais
+ * Adiciona uma linha à coleção que eliminará esses registros no cache de sincronização.
+ *
+ * Através dos campos da chave principal do Dataset (setKey) os registros
+ * serão localizados e alterados conforme os dados enviados pela função.
+ *
+ * Esta função só funciona se implementado na função onSync.
+ *
+ * @example
+ * var dataset = DatasetBuilder.newDataset();
+ * dataset.addColumn("Coluna1");
+ * dataset.addColumn("Coluna2");
+ * dataset.deleteRow(["Valor coluna 1", "Valor coluna 2"]);
*/
- declare function getGlobalParameterService(): com.fluig.sdk.service.GlobalParameterService;
+ deleteRow(valores: string[]|object[]): void;
+}
+/**
+ * Resultado de uma consulta ao Dataset usando o WCM
+ *
+ * Disponível somente nas páginas que usam o arquivo /webdesk/vcXMLRPC.js.
+ */
+interface DatasetWcmResult {
/**
- * Recupera o serviço para tratar grupo
+ * O nome das colunas
*/
- declare function getGroupService(): com.fluig.sdk.service.GroupService;
-
- declare function getHelpService(): com.fluig.sdk.service.DocumentationProxyServiceService;
+ columns: string[];
/**
- *Recupera o serviço para tratar feriados
+ * As propriedades do objeto são os nomes das colunas
*/
- declare function getHolidayService(): com.fluig.sdk.service.HolidayAPIService;
+ values: object[];
+}
+/**
+ * Indicativo das restrições ao sincronizar dados em Mobile
+ */
+interface DatasetMobileSync {
/**
- * Recupera serviço para tratar linguagem
+ * As colunas (em letras maiúsculas) a serem salvas no Mobile
*/
- declare function getI18NService(): com.fluig.sdk.service.I18NService;
-
- declare function getIdentityService(): com.fluig.sdk.service.IdentityService;
+ fields: string[];
/**
- * Recupera serviço para Jobs do agendador de tarefas
+ * Os filtros adicionais
*/
- declare function getJobService(): com.fluig.sdk.service.JobService;
+ constraints: Constraint[];
/**
- * Recupera o LocalAPIService
+ * Campos da ordenação
*/
- declare function getLocalService(): com.fluig.sdk.service.LocalAPIService;
+ sortFields: string[];
+}
+/**
+ * Formato de Callback para consulta assíncrona ao Dataset usando o WCM
+ *
+ * Disponível somente nas páginas que usam o arquivo /webdesk/vcXMLRPC.js.
+ */
+interface DatasetWcmCallback {
/**
- * Recupera serviço para tratar páginas
+ * Função que será executada em caso de sucesso
*/
- declare function getPageService(): com.fluig.sdk.service.PageService;
+ success: function (DatasetWcmResult);
/**
- * Recupera serviço para tratar página de widgets
+ * Função que será executada em caso de falha
+ *
+ * @param jqXHR Objeto da JQuery
+ * @param textStatus
+ * @param errorThrown
*/
- declare function getPageWidgetService(): com.fluig.sdk.service.PageWidgetService;
+ error: function (object, string, string): void;
+}
+
+declare class Constraint {
+ fieldName: string;
+ initialValue: string;
+ finalValue: string;
+ constraintType: ConstraintType;
/**
- * Recupera serviço para tratar Post
+ * Indica que a constraint fará uma busca usando LIKE ao invés de =
*/
- declare function getPostService(): com.fluig.sdk.service.PostService;
+ setLikeSearch(likeSearch: boolean): void;
+
+ getFieldName(): string;
+ getInitialValue(): string;
+ getFinalValue(): string;
+}
+/**
+ * Funções para manipulação de Dataset
+ */
+declare namespace DatasetFactory {
/**
- * Recupera serviço para efetuar pesquisas
+ * Retorna o nome dos datasets disponíveis
+ *
+ * Para usar no HTML de formulário o arquivo vcXMLRPC.js precisa ser declarado:
*/
- declare function getSearchService(): com.fluig.sdk.service.SearchService;
+ declare function getAvailableDatasets(): string[];
/**
- * Recupera o serviço de segurança
+ * Cria uma constraint para ser usada no método getDataset
+ *
+ * Para usar no HTML de formulário o arquivo vcXMLRPC.js precisa ser declarado:
+ * Para fazer uma pesquisa usando LIKE pelo formulário deve-se passar true no parâmetro searchLike ao invés de usar o método
+ * setLikeSearch do objeto Constraint.
*/
- declare function getSecurityService(): com.fluig.sdk.service.SecurityService;
+ declare function createConstraint(fieldName: string, initialValue: string, finalValue: string, constraintType: ConstraintType): Constraint;
+ declare function createConstraint(fieldName: string, initialValue: string, finalValue: string, constraintType: ConstraintType, searchLike: boolean): Constraint;
/**
- * Recupera serviço para tratar Breadcrumb do Social
+ * Pesquisa os dados de um dataset
+ *
+ * Para usar no HTML de formulário o arquivo vcXMLRPC.js precisa ser declarado:
+ *
+ * @param nomeDataset O nome do Dataset.
+ * @param campos Os campos que serão retornados.
+ * @param constraints Os filtros aplicados ao dataset.
+ * @param ordem Os campos que farão a ordenação do resultado. Pode-se acrescentar ;desc ao nome do campo para ordenar de forma decrescente.
+ *
+ * @example
+ * var constraints = [
+ * DatasetFactory.createConstraint("colleaguePK.colleagueId", "adm", "adm", ConstraintType.MUST_NOT),
+ * DatasetFactory.createConstraint("valor", "100", "999", ConstraintType.MUST)
+ * ];
+ * var dataset = DatasetFactory.getDataset("colleague", ["colleagueName"], constraints);
*/
- declare function getSocialBreadcrumbService(): com.fluig.sdk.service.SocialBreadcrumbService;
+ declare function getDataset(nomeDataset: string, campos?: string[], constraints?: Constraint[], ordem?: string[]): Dataset;
/**
- * Recupera serviço do social
- */
- declare function getSocialService(): com.fluig.sdk.service.SocialSDKService;
+ * Pesquisa os dados de um dataset de forma assíncrona
+ *
+ * Disponível somente nas páginas que usam o arquivo /webdesk/vcXMLRPC.js.
+ *
+ * @example
+ * var constraints = [
+ * DatasetFactory.createConstraint("colleaguePK.colleagueId", "adm", "adm", ConstraintType.MUST_NOT),
+ * DatasetFactory.createConstraint("valor", "100", "999", ConstraintType.MUST)
+ * ];
+ * var dataset = DatasetFactory.getDataset("colleague", ["colleagueName"], constraints);
+ */
+ declare function getDataset(nomeDataset: string, campos?: string[], constraints?: Constraint[], ordem?: string[], callback: DatasetWcmCallback): void;
+}
+/**
+ * Funções para criação de Dataset
+ */
+declare namespace DatasetBuilder {
/**
- * Recupera o serviço de TagsCloud
+ * Cria um Dataset
+ *
+ * Usar somente ao criar datasets customizados.
*/
- declare function getTagsCloudService(): com.fluig.sdk.service.TagsCloudService;
+ declare function newDataset(): Dataset;
+}
+
+/**
+ * Tipos de Documento
+ *
+ * Esse enum não existe no Fluig e foi criado somente para
+ * facilitar a identificação dos tipos de documento.
+ *
+ * No Fluig utilize somente os valores ao fazer as comparações.
+ */
+enum DocumentTypeEnum {
+ PASTA_RAIZ = '0',
+ PASTA = '1',
+ DOCUMENTO_NORMAL = '2',
+ DOCUMENTO_EXTERNO = '3',
+ FORMULARIO = '4',
+ FICHA = '5',
+ ANEXO_WORKFLOW = '7',
+ NOVO_CONTEUDO = '8',
+ APLICATIVO = '9',
+ RELATORIO = '10',
+ PASTA_SOCIAL = '15',
+ SITE = 'portal',
+ PAGINA_DE_SITE = 'portalPage',
+}
+
+/**
+ * Entidade Documento Relacionado
+ */
+declare class RelatedDocumentDto {
/**
- * Recupera serviço para tratar Tasks
+ * Retorna o número do documento
+ *
+ * Usar em eventos do Fluig.
*/
- declare function getTasksService(): com.fluig.sdk.service.TasksService;
+ getDocumentId(): number;
/**
- * Recupera o serviço para Tenant
+ * Retorna o número do documento relacionado
+ *
+ * Usar em eventos do Fluig.
*/
- declare function getTenantService(): com.fluig.sdk.service.TenantService;
+ getRelatedDocumentId(): number;
/**
- * Recupera o serviço para tratar Usuário
+ * Retorna a versão do documento
+ *
+ * Usar em eventos do Fluig.
*/
- declare function getUserService(): com.fluig.sdk.service.UserService;
+ getVersion(): number;
/**
- * Recupera o serviço de widgets
+ * Retorna o código da empresa em que o documento foi publicado
+ *
+ * Usar em eventos do Fluig.
*/
- declare function getWidgetService(): com.fluig.sdk.service.WidgetService;
+ getCompanyId(): number;
+}
+/**
+ * Funções relacionadas a Documentos
+ *
+ * Usar em qualquer evento.
+ */
+declare namespace docAPI {
/**
- * Recupera o serviço para tratar Workflow
+ * Copia os arquivos físicos de um documento existente para a área de upload do usuário logado
+ * @returns Nomes dos arquivos que foram disponibilizados na área de upload
*/
- declare function getWorkflowService(): com.fluig.sdk.service.WorkflowAPIService;
+ declare function copyDocumentToUploadArea(documentId: number, version: number): string[];
}
/**
- * Serviços do Fluig
+ * Entidade Aprovador
*/
-declare namespace com.fluig.sdk.service {
+declare class ApproverDto {
+
/**
- * Fornece acesso aos serviços de notificações
+ * Pega o número do aprovador
*/
- declare class AlertService {
- /**
- * Método que conta os alertas não lidos de um usuário.
- */
- countUnreadAlerts(receiverId: number): number;
-
- /**
- * Método que conta os alertas de um modulo não lidos de um usuário
- */
- countUnreadAlertsByModule(module: string, receiverId: number): number;
+ getapproverId(): number;
- /**
- * Get the number of notification in the tenant
- */
- getTenantTotalOfNotification(): number;
+ /**
+ * Pega a versão do aprovador
+ */
+ getVersion(): number;
- /**
- * Busca os alertas com ação vinculada, do usuário logado ordenado pela data de criação.
- */
- listAlertsWithAction(limit: number, offset: number): java.util.List
+ /**
+ * Pega o código da empresa na qual o aprovador foi publicado
+ */
+ getCompanyId(): number;
- /**
- * Busca os alertas com nota, do usuário logado ordenado pela data de criação.
- */
- listAlertsWithNote(limit: number, offset: number): java.util.List
+ /**
+ * Pega a matrícula do colaborador que criou o aprovador
+ */
+ getColleagueId(): number;
- /**
- * Retorna todas as notificações do usuário logado ordenadas pela data de criação.
- */
- listAllAlerts(limit: number, offset: number): java.util.List
+ /**
+ * Pega o tipo de aprovação Pode ser 0 para Colaborador ou 1 para Grupo
+ */
+ getApproverType(): number;
- /**
- * Retorna todas as notificações de um usuário por um único módulo
- */
- listAllAlertsByModule(module: string, limit: number, offset: number): java.util.List
+ /**
+ * Pega o nível de aprovação no caso de aprovação em níveis
+ */
+ getLevelId(): number;
+}
- /**
- * Método marca os alertas informados de um usuário também dado como lidos
- */
- markAlertAsRead(loginReceiver: string, alertsId: java.util.List): void;
+/**
+ * Entidade Documento para usar nos Eventos
+ */
+declare class DocumentDto {
- /**
- * Método marca todos os alertas de um usuário como lidos.
- */
- markAllAlertsAsRead(loginReceiver: string): void;
+ /**
+ * Pega o número do documento
+ */
+ getDocumentId(): number;
- /**
- * Método que remove os alertas informados de um usuário também dado, esse método também é responsável por remover os senders, places e objects relacionado aos alertas
- */
- removeAlerts(loginSender: string, alertsId: java.util.List): void;
+ /**
+ * Pega a versão do documento
+ */
+ getVersion(): number;
- /**
- * Salva a configuração de um usuário para receber ou não alertas de um dado evento através de um dado aplicativo.
- */
- saveConfiguration(alertConfig: com.fluig.sdk.api.alert.AlertConfigVO): void;
+ /**
+ * Pega o código da empresa em que o documento foi publicado
+ */
+ getCompanyId(): number;
- /**
- * Método que deve ser invocado por todos os módulos do sistema para enviar alertas.
- */
- sendNotification(eventKey: string, loginSender: string, loginReceiver: string, object: com.fluig.sdk.api.alert.AlertVO, place: com.fluig.sdk.api.alert.AlertVO, actions: java.util.List, metadata: java.util.HashMap): void;
- }
- declare class ArticleService {}
+ /**
+ * Pega o UUID do documento
+ */
+ getUUID(): string;
/**
- * Cliente para requisições externas usando autenticação do Fluig
+ * Pega o tipo do arquivo físico. Se retornar em branco ou nulo é um tipo desconhecido
*/
- declare class AuthorizeClientSdkService {
- /**
- * Executa a chamada ao WS
- *
- * O parâmetro passado deve ser um objeto convertido em string (JSON.stringfy) com as seguintes propriedades:
- *
- * - companyId;
- * - serviceCode: ID do serviço cadastrado no Fluig;
- * - endpoint;
- * - method: Método HTTP (GET, POST, PUT, DELETE);
- * - timeoutService (em segundos);
- * - params: Objeto com os valores a serem enviados na requisição;
- * - headers: Objeto com os valores a serem enviados no cabeçalho;
- * - options: Objeto com as propriedades da requisição:
- * - encoding (padrão UTF-8)
- * - mediaType (padrão application/json)
- * - useSSL (padrão false)
- *
- * @tutorial https://tdn.totvs.com/pages/releaseview.action?pageId=239041233#Autoriza%C3%A7%C3%A3oparaclientdeServi%C3%A7osREST-Consumindooservi%C3%A7ocomautentica%C3%A7%C3%A3oOAuth1,OAuth2,BasicAuthentication,CustomAuthenticationeNoneAuthentication
- */
- invoke(data: string): com.fluig.sdk.api.authorizeclient.AuthorizeClientSdkServiceVO;
- }
- declare class CardIndexService {}
- declare class CardService {}
- declare class CollaborationSDKService {}
- declare class CommentService {}
- declare class CommunityService {}
- declare class ContentFilesService {}
+ getDocumentTypeId(): string;
+
/**
- * Fornece acesso aos serviços de documentos (GED)
+ * Pega o código do idioma do documento
*/
- declare class DocumentService {
- /**
- * Aprova ou reprova um documento.
- */
- approveDocument(documentId: number, version: number, approved: boolean, observation: string): void;
+ getLanguageId(): string;
- /**
- * Copia o documento que esta na área de upload
- */
- copyDocumentToUploadArea(documentId: number): string[];
+ /**
+ * Pega o código do ícone do documento
+ */
+ getIconId(): number;
- /**
- * Cria o documento com permissões e aprovadores
- */
- createDocument(documentVO: com.fluig.sdk.api.document.DocumentVO): com.fluig.sdk.api.document.DocumentVO;
+ /**
+ * Pega o código do assunto do documento
+ */
+ getTopicId(): number;
- /**
- * Cria uma documento privado
- */
- createPrivateDocument(companyId: number, userId: string, fileName: string, file: File): com.fluig.sdk.api.document.DocumentVO;
+ /**
+ * Pega a matrícula do colaborador que criou o documento
+ */
+ getColleagueId(): string;
- /**
- * Cria uma documento privado
- */
- createPrivateDocument(companyId: number, userId: string, fileName: string, filePath: string): com.fluig.sdk.api.document.DocumentVO;
-
- /**
- * Remove o documento
- */
- deleteDocument(documentId: number): void;
+ /**
+ * Pega a descrição do documento
+ */
+ getDocumentDescription(): string;
- /**
- * Retorna o documento ativo passado o ID do mesmo.
- */
- getActive(documentId: number): com.fluig.sdk.api.document.DocumentVO
+ /**
+ * Pega os comentários adicionais do documento
+ */
+ getAdditionalComments(): string;
- /**
- * Retorna documento com as informações de checkout
- */
- getAllocatedDocument(documentId: number, version: number): com.fluig.sdk.api.document.AllocatedDocumentVO;
+ /**
+ * Pega o caminho físico do documento
+ */
+ getPhisicalFile(): string;
- getCurrentUserPermission(documentId: number): com.fluig.sdk.api.document.SolvedPermissionVO;
+ /**
+ * Pega a data de criação do documento
+ */
+ getCreateDate(): Date;
- /**
- * Return the approvement history of the document
- */
- getDocumentApprovalHistory(documentId: number): java.util.List;
+ /**
+ * Pega a data de aprovação do documento
+ */
+ getApprovedDate(): Date;
- /**
- * Retrieve all document approvers and yours status.
- */
- getDocumentApprovers(documentId: number): java.util.List;
+ /**
+ * Pega a data da última modificação do documento
+ */
+ getLastModifiedDate(): Date;
- /**
- * Retorna as permissões do documento
- */
- getDocumentPermissions(documentId: number, version: number): java.util.List;
+ /**
+ * Pega a data da última modificação do documento
+ */
+ getExpirationDate(): Date;
- /**
- * Retorna a url do documento
- */
- getDownloadURL(documentId: number): string;
+ /**
+ * Pega o tipo do documento
+ */
+ getDocumentType(): DocumentTypeEnum;
- /**
- * Retorna a permissão do usuário em um documento.
- */
- getUserPermissions(documentId: number, version: number, user: string): number;
+ /**
+ * Pega o número da pasta/formulário pai
+ */
+ getParentDocumentId(): number;
- /**
- * Set Approvers for a specific document
- */
- setDocumentApprovers(documentId: number, documentSecurityVO: com.fluig.sdk.api.document.DocumentSecurityVO): void;
+ /**
+ * Pega o nome do arquivo físico principal e anexos
+ */
+ getRelatedFiles(): number;
- /**
- * Determina as permissões do documento
- */
- setDocumentPermissions(documentId: number, permissions: java.util.List): void;
+ /**
+ * Verifica se o documento está ativo
+ */
+ getActiveVersion(): boolean;
- /**
- * Update file
- */
- updateFile(docVO: com.fluig.sdk.api.document.DocumentVO): com.fluig.sdk.api.document.DocumentVO;
+ /**
+ * Pega a descrição da versão
+ */
+ getVersionDescription(): string;
- /**
- * Valida configurações de documento
- */
- validateDocumentPublicUrlConfiguration(tenantId: number, documentId: number, version: number): void;
- }
- declare class DocumentationProxyServiceService {}
- declare class FavoritesService {}
- declare class FilterAPIService {}
+ /**
+ * Verifica se o documento permite download
+ */
+ getDownloadEnabled(): boolean;
/**
- * Fornece acesso aos serviços de pastas (GED)
+ * Verifica se o documento está em aprovação
*/
- declare class FolderDocumentService {
- /**
- * Criação de uma nova pasta
- */
- create(vo: com.fluig.sdk.api.document.FolderVO): com.fluig.sdk.api.document.FolderVO;
+ getApproved(): boolean;
- /**
- * Recupera um documento através do id
- */
- get(documentId: number): com.fluig.sdk.api.document.DocumentVO;
+ /**
+ * Pega a data a partir que o documento poderá ser visualizado
+ */
+ getValidationStartDate(): Date
- /**
- * Recupera lista de documentos através do id da pasta
- */
- list(folderId: number): java.util.List;
+ /**
+ * Pega a matrícula do colaborador que publicou o documento
+ */
+ getPublisherId(): string;
- /**
- * Recupera lista de documentos através do id da pasta
- */
- list(folderId: number, permission: number): java.util.List;
+ /**
+ * Pega a descrição da ficha para documento do tipo 5
+ */
+ getCardDescription(): string;
- /**
- * Retorna os documentos de uma pasta
- */
- listDocumentsByFolder(folderVO: com.fluig.sdk.api.document.FolderVO, limit: number, offset: number): java.util.List;
+ /**
+ * Pega o formulário que foi usado como base para criação da ficha.
+ *
+ * Utilizado somente com documento do tipo 5.
+ */
+ getDocumentPropertyNumber(): number;
- /**
- * Atualiza documento ou pasta
- */
- updateDocumentDescription(companyId: number, documentId: number, description: string): com.fluig.sdk.api.document.DocumentVO;
- }
- declare class GlobalParameterService {}
- declare class GroupService {}
- declare class HolidayAPIService {}
- declare class I18NService {}
- declare class IdentityService {}
- declare class JobService {}
- declare class LocalAPIService {}
+ /**
+ * Pega a versão do formulário em que a ficha foi criada
+ */
+ getDocumentPropertyVersion(): number;
/**
- * Serviço para tratar páginas
+ * Pega o código da empresa em que o documento foi publicado
*/
- declare class PageService {
- createPageDraftFromVersion(pageCode: string, pageVersion: number): void;
- disable(pageCode: string): void;
- enable(pageCode: string): void;
+ getCompanyId(): number;
- /**
- * Retorna itens de menu da página
- */
- findMenuFromPage(pageCode: string): java.util.List;
+ /**
+ * Verifica se o documento/pasta está abaixo de pasta particular
+ */
+ getPrivateDocument(): boolean;
- /**
- * Consulta páginas do fluig
- */
- findPages(parentPageCode: string, isMobile: boolean, filter: string, start: number, size: number, searchLevel: number, internalPages: boolean): java.util.List;
- findPages(parentPageCode: string, isMobile: boolean, filter: string, start: number, size: number, searchLevel: number, internalPages: boolean, codePage: string): java.util.List;
+ /**
+ * Pega a matrícula do colaborador onde o documento particular está alocado
+ */
+ getPrivateColleagueId(): string;
- /**
- * Retorna a URL do servidor
- */
- getServerURL(): string;
+ /**
+ * Verifica se o arquivo foi indexado
+ */
+ getIndexed(): boolean;
- /**
- * Recupera os valores de preferências para uma instância de uma widget.
- */
- getWidgetPreferences(instanceId: number): java.util.HashMap;
+ /**
+ * Pega a prioridade do documento
+ */
+ getPriority(): number;
- mobileMapping(pageCode: string): com.fluig.sdk.page.PageMobileApiVO;
+ /**
+ * Verifica se notifica os usuários que tenham esse assunto de interesse
+ */
+ getUserNotify(): boolean;
- hide(pageCode: string): void;
+ /**
+ * Verifica se o documento está expirado
+ */
+ getExpires(): boolean;
- publishPageDraft(pageCode: string, publicationDescription: string): void;
+ /**
+ * Pega o volume onde o documento foi publicado. Se estiver em branco foi no volume pai.
+ */
+ getVolumeId(): string;
- pageHistory(pageCode: string): java.util.List;
+ /**
+ * Verifica se herda segurança do pai
+ */
+ getInheritSecurity(): boolean;
- /**
- * Recarrega o layout de uma página
- */
- reloadPageLayout(pageCode: string): void;
+ /**
+ * Verifica se atualiza as propriedades da cópia controlada
+ */
+ getUpdateIsoProperties(): boolean;
- /**
- * Seta o valor de uma preferência para uma instância de uma widget
- */
- setWidgetPreference(instanceId: number, key: string, value: string): void;
+ /**
+ * Pega a hora da última modificação em milissegundos
+ */
+ getLastModifiedTime(): string;
- show(pageCode: string): void;
- }
+ /**
+ * Verifica se o documento está na lixeira
+ */
+ getDeleted(): boolean;
- declare class PageWidgetService {}
- declare class PostService {}
- declare class SearchService {}
+ /**
+ * Pega o documento do dataset se o documento é um formulário
+ */
+ getDatasetName(): string;
- declare class SecurityService {
- /**
- * Verifica se o usuário logado possui determinada permissão no recurso informado
- */
- hasPermission(resource: string, permission: string): boolean;
+ /**
+ * Pega as palavras-chave do documento. Cada palavra é separada por vírgula.
+ */
+ getKeyWord(): string;
- /**
- * Lista os recursos da categoria
- */
- listResourcesByCategory(category: string, filter: string, offset: number, limit: number): java.util.List
+ /**
+ * Verifica se a versão/revisão é inalterável
+ */
+ getImutable(): boolean;
- /**
- * Lista as permissões do recurso informado
- */
- getPermissionsByResourceCode(resourceCode: string): java.util.List
+ /**
+ * Verifica se o documento está em edição, para documento do tipo "Novo Conteúdo"
+ */
+ getDraft(): boolean;
- /**
- * Crias as permissões para o recurso
- */
- createPermissions(resourceCode: string, permissions: java.util.List): void;
+ /**
+ * Verifica se utiliza visualizador interno
+ */
+ getInternalVisualizer(): boolean;
- /**
- * Remove as permissões do recurso
- */
- deletePermissions(resourceCode: string, permissions: java.util.List): void;
- }
+ /**
+ * Pega o tamanho físico do documento principal e anexos
+ */
+ getPhisicalFileSize(): number;
+};
- declare class SocialBreadcrumbService {}
- declare class SocialSDKService {}
- declare class TagsCloudService {}
- declare class TasksService {}
- declare class TenantService {}
+/**
+ * Entidade Segurança do Documento
+ */
+declare class DocumentSecurityConfigDto {
/**
- * Fornece acesso aos serviços de usuário
+ * Pega o número do documento
*/
- declare class UserService {
+ getDocumentId(): number;
- /**
- * Adiciona um usuário a um grupo
- */
- addUserToGroup(tenantId: number, groupCode: string, userVO: com.fluig.sdk.user.UserVO): void;
+ /**
+ * Pega a versão do documento
+ */
+ getVersion(): number;
- /**
- * Change the user password
- */
- changeUserPassword(vo: com.fluig.sdk.user.UserPasswordVO): void;
+ /**
+ * Pega o código da empresa em que o documento foi publicado
+ */
+ getCompanyId(): number;
- /**
- * Cria um novo usuário
- */
- create(vo: com.fluig.sdk.user.UserVO): com.fluig.sdk.user.UserVO;
- create(tenantId: number, vo: com.fluig.sdk.user.UserVO): com.fluig.sdk.user.UserVO;
+ /**
+ * Pega a matrícula de um colaborador ou o código do grupo que está na segurança do documento
+ *
+ * É possível saber se vai retornar um colaborador ou um grupo pelo tipo da segurança.
+ * Retorna em branco quando o tipo é todos os usuários
+ */
+ getAttributionValue(): string;
- /**
- * Retorna o usuário pelo id
- */
- findById(id: number): com.fluig.sdk.user.UserVO
+ /**
+ * Verifica se é uma permissão
+ *
+ * Se não é uma permissão é uma restrição.
+ */
+ getPermission(): boolean;
- /**
- * Retorna o usuário pelo login
- */
- findByLogin(login: string): com.fluig.sdk.user.UserVO
+ /**
+ * Verifica se lista o conteúdo
+ */
+ getShowContent(): boolean;
- /**
- * Retorna usuário pelo ID
- */
- findByUserCode(colleagueId: string): com.fluig.sdk.user.UserVO
+ /**
+ * Pega o nível de permissão/restrição.
+ *
+ * Tipos de permissão/restrição:
+ * - -1: Sem permissão/restrição (nega acesso)
+ * - 0: Leitura
+ * - 1: Gravação
+ * - 2: Modificação
+ * - 3: Total
+ */
+ getAttributionType(): number;
- /**
- * Retorna o usuário corrente logado
- */
- getCurrent(): com.fluig.sdk.user.UserVO
+ /**
+ * Pega a sequência da permissão/restrição
+ */
+ getSequence(): number;
- /**
- * Pesquisa por usuários baseado em um conjunto de parâmetros.
- */
- list(offset: number, limit: number): java.util.List;
- list(params: java.util.HashMap, offset: number, limit: number): java.util.List;
- list(sortField: string, sortType: string, limit: number, offset: number, search: string): java.util.List;
+ /**
+ * Verifica se ele utiliza a segurança desta versão nas demais
+ */
+ getSecurityVersion(): boolean;
+};
- /**
- * Pesquisa por usuários ativos e inativos baseado em um conjunto de parâmetros.
- */
- listAll(sortField: string, sortType: string, limit: number, offset: number, search: string): java.util.List;
+/**
+ * Helper para acessar serviços do Fluig
+ */
+ declare namespace fluigAPI {
+ /**
+ * Recupera serviço para tratar Notificações
+ */
+ declare function getAlertService(): com.fluig.sdk.service.AlertService;
- /**
- * Pega todos os dados do usuário especificado pelo login
- */
- listData(login: string): java.util.HashMap;
+ /**
+ * Recupera serviço para tratar Artigos
+ */
+ declare function getArticleService(): com.fluig.sdk.service.ArticleService;
- /**
- * Pega todos os grupos do usuário especificado pelo login
- */
- listGroups(login: string): java.util.List;
+ /**
+ * Recupera o serviço de autorização de cliente OAUTH
+ */
+ declare function getAuthorizeClientService(): com.fluig.sdk.service.AuthorizeClientSdkService;
- /**
- * Pega todos os papéis do usuário especificado pelo login
- */
- listRoles(login: string): java.util.List;
+ /**
+ * Recupera o serviço para tratar Card Index
+ */
+ declare function getCardIndexService(): com.fluig.sdk.service.CardIndexService;
- /**
- * Remove dados do usuário
- */
- removeUserData(alias: string, key: string): void;
+ /**
+ * Recupera o serviço para tratar Cards
+ */
+ declare function getCardService(): com.fluig.sdk.service.CardService;
- /**
- * Atualiza o usuário
- */
- updateUser(vo: com.fluig.sdk.user.UserVO): com.fluig.sdk.user.UserVO;
+ /**
+ * Recupera o serviço para tratar colaboradores
+ */
+ declare function getCollaborationService(): com.fluig.sdk.service.CollaborationSDKService;
- /**
- * Atualiza os dados do usuário logado
- */
- updateUserData(data: java.util.HashMap): boolean;
+ /**
+ * Recupera serviço para tratar comentários
+ */
+ declare function getCommentService(): com.fluig.sdk.service.CommentService;
- /**
- * Atualiza os dados do usuário procurando pelo ID
- */
- updateUserDataById(data: java.util.HashMap, userId: string): boolean;
+ /**
+ * Recupera serviço para tratar Comunidades
+ */
+ declare function getCommunityService(): com.fluig.sdk.service.CommunityService;
- /**
- * Atualiza usuário mesmo que esteja desabilitado (inativo)
- */
- updateUserEvenDisabled(vo: com.fluig.sdk.user.UserVO): com.fluig.sdk.user.UserVO;
- }
- declare class WidgetService {}
+ /**
+ * Recupera o serviço para tratar Upload de arquivos
+ */
+ declare function getContentFilesService(): com.fluig.sdk.service.ContentFilesService;
/**
- * Fornece acesso aos serviços de workflow
+ * Recupera o serviço para tratar Documentos
*/
- declare class WorkflowAPIService {
- /**
- * Faz com que o usuário repassado assuma a tarefa
- */
- assumeProcessTask(assumeProcessTaskVO: com.fluig.sdk.api.workflow.AssumeProcessTaskVO): com.fluig.sdk.api.workflow.AssumeProcessTaskResultVO;
- assumeProcessTask(companyId: number, userId: string, processInstanceId: number, movementSequence: number, replacementId: string): com.fluig.sdk.api.workflow.ProcessTaskVO;
+ declare function getDocumentService(): com.fluig.sdk.service.DocumentService;
- /**
- * Faz com que os usuários repassados assumam as tarefas vinculadas aos mesmos
- */
- assumeProcessTasks(assumeProcessTasksVO: com.fluig.sdk.api.workflow.AssumeProcessTasksVO): com.fluig.sdk.api.workflow.AssumeProcessTaskResultVO;
+ /**
+ * Recupera serviço para tratar Favoritos
+ */
+ declare function getFavoritesService(): com.fluig.sdk.service.FavoritesService;
- cancelInstance(cancelInstanceVO: com.fluig.sdk.api.workflow.CancelInstanceVO): com.fluig.sdk.api.workflow.CancelInstanceResultVO;
- cancelInstances(cancelInstanceVO: com.fluig.sdk.api.workflow.CancelInstancesVO): com.fluig.sdk.api.workflow.CancelInstancesResultVO;
+ /**
+ * Recupera o serviço do Filter
+ */
+ declare function getFilterService(): com.fluig.sdk.service.FilterAPIService;
- /**
- * Insere um complemento em uma solicitação
- */
- createProcessObservation(processObservationVO: com.fluig.sdk.api.workflow.ProcessObservationVO): com.fluig.sdk.api.workflow.ProcessObservationVO;
+ /**
+ * Recupera o serviço para tratar Pastas de documentos
+ */
+ declare function getFolderDocumentService(): com.fluig.sdk.service.FolderDocumentService;
- findAssignedToMeTasks(processId: string, initialStartDate: string, finalStartDate: string, requester: string, manager: string, page: string, pageSize: string, statusTypeTaskRequest: string, calculate: string, expand: string, cardFilters: string): java.util.LinkedHashSet;
+ /**
+ * Recupera serviço para tratar parâmetros gerais
+ */
+ declare function getGlobalParameterService(): com.fluig.sdk.service.GlobalParameterService;
- findManagedByMeTasks(processId: string, initialStartDate: string, finalStartDate: string, assignee: string, requester: string, page: string, pageSize: string, statusTypeTaskRequest: string, calculate: string, expand: string, cardFilters: string): java.util.LinkedHashSet;
+ /**
+ * Recupera o serviço para tratar grupo
+ */
+ declare function getGroupService(): com.fluig.sdk.service.GroupService;
- /**
- * Recupera um resumo dos indicadores de SLA dos processos configurados considerando o usuário logado como requisitante
- */
- findMyRequestsSLA(processes: string, cardFilters: string, statusRequired: string, initialStartDate: string, finalStartDate: string, initialDeadlineDate: string, finalDeadlineDate: string, initialWarningDate: string, finalWarningDate: string, expand: string, assignee: string, manager: string, order: string, calculate: string, page: string, pageSize: string): java.util.LinkedHashSet;
-
- findMyRequestsTasks(processId: string, initialStartDate: string, finalStartDate: string, assignee: string, manager: string, page: string, pageSize: string, statusTypeTaskRequest: string, calculate: string, expand: string, cardFilters: string): java.util.LinkedHashSet;
+ declare function getHelpService(): com.fluig.sdk.service.DocumentationProxyServiceService;
- /**
- * Retorna a lista de complementos em uma solicitação
- */
- findObservations(processInstanceId: number, stateSequence: number, threadSequence: number): java.util.List;
+ /**
+ *Recupera o serviço para tratar feriados
+ */
+ declare function getHolidayService(): com.fluig.sdk.service.HolidayAPIService;
- /**
- * Recupera um resumo dos indicadores de SLA dos processos configurados considerando o usuário logado como responsável
- */
- findRequestSLAByProcessInstanceId(processInstanceId: number, populateCurrentTasks: boolean, calculate: boolean, populateCardFields: boolean, populateLocals: boolean, assigneeLocals: boolean): com.fluig.sdk.api.workflow.RequestSLAVO;
- findRequestSLAByProcessInstanceId(processInstanceId: string, expand: string, calculate: string): com.fluig.sdk.api.workflow.RequestSLAVO;
+ /**
+ * Recupera serviço para tratar linguagem
+ */
+ declare function getI18NService(): com.fluig.sdk.service.I18NService;
- /**
- * Recupera uma lista das solicitações de SLA dos processos configurados
- */
- findRequestsSLA(): java.util.LinkedHashSet;
- findRequestsSLA(processes: java.util.List): java.util.LinkedHashSet;
- findRequestsSLA(processes: java.util.List, statusRequiredList: java.util.List): java.util.LinkedHashSet;
- findRequestsSLA(processes: java.util.List, statusRequiredList: java.util.List, returnCurrentTasks: boolean): java.util.LinkedHashSet;
- findRequestsSLA(processes: java.util.List, cardFilters: java.util.HashMap, statusRequiredList: java.util.List, returnCurrentTasks: boolean): java.util.LinkedHashSet;
- findRequestsSLA(processes: java.util.List, cardFilters: java.util.HashMap, statusRequiredList: java.util.List, initialStartDate: Date, finalStartDate: Date, initialDeadlineDate: Date, finalDeadlineDate: Date, initialWarningDate: Date, finalWarningDate: Date, returnCurrentTasks: boolean, requester: string, assignee: string, manager: string, requesterLocals: java.util.List, assigneeLocals: java.util.List, orderParams: java.util.List, calculate: boolean, page: number, pageSize: number, populateCardFields: boolean, populateLocalsValue: boolean, populateAssigneeLocalsValue: boolean): java.util.LinkedHashSet;
- findRequestsSLA(processes: string, cardFilters: string, statusRequired: string, initialStartDate: string, finalStartDate: string, initialDeadlineDate: string, finalDeadlineDate: string, initialWarningDate: string, finalWarningDate: string, expand: string, requester: string, assignee: string, manager: string, requesterLocals: string, assigneeLocals: string, order: string, calculate: string, page: string, pageSize: string): java.util.LinkedHashSet;
+ declare function getIdentityService(): com.fluig.sdk.service.IdentityService;
- /**
- * Recupera um resumo dos indicadores de SLA dos processos configurados considerando o usuário logado como responsável
- */
- findRequestsSLAAssignedToMe(processes: string, cardFilters: string, statusRequired: string, initialStartDate: string, finalStartDate: string, initialDeadlineDate: string, finalDeadlineDate: string, initialWarningDate: string, finalWarningDate: string, expand: string, requester: string, manager: string, requesterLocals: string, assigneeLocals: string, order: string, calculate: string, page: string, pageSize: string): java.util.LinkedHashSet;
+ /**
+ * Recupera serviço para Jobs do agendador de tarefas
+ */
+ declare function getJobService(): com.fluig.sdk.service.JobService;
- /**
- * Recupera um resumo dos indicadores de SLA dos processos configurados considerando o usuário logado como gestor
- */
- findRequestsSLAManagedByMe(processes: string, cardFilters: string, statusRequired: string, initialStartDate: string, finalStartDate: string, initialDeadlineDate: string, finalDeadlineDate: string, initialWarningDate: string, finalWarningDate: string, expand: string, requester: string, assignee: string, requesterLocals: string, assigneeLocals: string, order: string, calculate: string, page: string, pageSize: string): java.util.LinkedHashSet;
+ /**
+ * Recupera o LocalAPIService
+ */
+ declare function getLocalService(): com.fluig.sdk.service.LocalAPIService;
- findSLATasks(processId: string, initialStartDate: string, finalStartDate: string, assignee: string, requester: string, manager: string, page: string, pageSize: string, statusTypeTaskRequest: string, calculate: string, expand: string, cardFilters: string): java.util.LinkedHashSet;
+ /**
+ * Recupera serviço para tratar páginas
+ */
+ declare function getPageService(): com.fluig.sdk.service.PageService;
- /**
- * Retorna uma lista das atividades pendentes de um processo
- */
- getActiveTasks(processInstanceId: number): com.fluig.sdk.api.workflow.ProcessInstanceInfoVO;
+ /**
+ * Recupera serviço para tratar página de widgets
+ */
+ declare function getPageWidgetService(): com.fluig.sdk.service.PageWidgetService;
- /**
- * Retorna uma lista de processos disponíveis para o usuário
- */
- getAvailableProcess(tenantId: number, userId: string): java.util.List;
+ /**
+ * Recupera serviço para tratar Post
+ */
+ declare function getPostService(): com.fluig.sdk.service.PostService;
- /**
- * Retorna a versão de um processo
- */
- getProcessVersion(processId: string): number;
+ /**
+ * Recupera serviço para efetuar pesquisas
+ */
+ declare function getSearchService(): com.fluig.sdk.service.SearchService;
- /**
- * Retorna todos os processos da empresa
- */
- listProcess(pattern: string, limit: number, offset: number): java.util.List;
+ /**
+ * Recupera o serviço de segurança
+ */
+ declare function getSecurityService(): com.fluig.sdk.service.SecurityService;
- /**
- * Retorna todos os processos da empresa
- */
- listSlaProcess(): java.util.List;
+ /**
+ * Recupera serviço para tratar Breadcrumb do Social
+ */
+ declare function getSocialBreadcrumbService(): com.fluig.sdk.service.SocialBreadcrumbService;
- resumeAssignedToMeTasks(processId: string, startDate: string, endDate: string, requester: string, manager: string): com.fluig.sdk.api.workflow.ResumeProcessTaskVO;
- resumeManagedByMeTasks(processId: string, startDate: string, endDate: string, requester: string, assignee: string): com.fluig.sdk.api.workflow.ResumeProcessTaskVO;
+ /**
+ * Recupera serviço do social
+ */
+ declare function getSocialService(): com.fluig.sdk.service.SocialSDKService;
- /**
- * Recupera um resumo dos indicadores de SLA dos processos configurados considerando o usuário logado como requisitante
- */
- resumeMyRequestsSLA(processes: string, cardFilters: string, countersRequired: string, initialStartDate: string, finalStartDate: string, initialDeadlineDate: string, finalDeadlineDate: string, initialWarningDate: string, finalWarningDate: string, assignee: string, manager: string): com.fluig.sdk.api.workflow.ResumeRequestsSLAVO;
+ /**
+ * Recupera o serviço de TagsCloud
+ */
+ declare function getTagsCloudService(): com.fluig.sdk.service.TagsCloudService;
- resumeMyRequestsTasks(processId: string, startDate: string, endDate: string, assignee: string, manager: string): com.fluig.sdk.api.workflow.ResumeProcessTaskVO;
+ /**
+ * Recupera serviço para tratar Tasks
+ */
+ declare function getTasksService(): com.fluig.sdk.service.TasksService;
- /**
- * Recupera um resumo dos indicadores de SLA dos processos configurados
- */
- resumeRequestsSLA(): com.fluig.sdk.api.workflow.ResumeRequestsSLAVO;
- resumeRequestsSLA(processes: java.util.List): com.fluig.sdk.api.workflow.ResumeRequestsSLAVO;
- resumeRequestsSLA(processes: java.util.List, cardFilters: java.util.HashMap): com.fluig.sdk.api.workflow.ResumeRequestsSLAVO;
- resumeRequestsSLA(processes: java.util.List, cardFilters: java.util.HashMap, countersRequiredList: java.util.List): com.fluig.sdk.api.workflow.ResumeRequestsSLAVO;
- resumeRequestsSLA(processes: java.util.List, cardFilters: java.util.HashMap, countersRequiredList: java.util.List, initialStartDate: Date, finalStartDate: Date, initialDeadlineDate: Date, finalDeadlineDate: Date, initialWarningDate: Date, finalWarningDate: Date, requester: string, assignee: string, manager: string, requesterLocalsList: java.util.List, assigneeLocalsList: java.util.List): com.fluig.sdk.api.workflow.ResumeRequestsSLAVO;
- resumeRequestsSLA(processes: string, cardFilters: string, countersRequired: string, initialStartDate: string, finalStartDate: string, initialDeadlineDate: string, finalDeadlineDate: string, initialWarningDate: string, finalWarningDate: string, requester: string, assignee: string, manager: string, requesterLocals: string, assigneeLocals: string): com.fluig.sdk.api.workflow.ResumeRequestsSLAVO;
+ /**
+ * Recupera o serviço para Tenant
+ */
+ declare function getTenantService(): com.fluig.sdk.service.TenantService;
- /**
- * Recupera um resumo dos indicadores de SLA dos processos configurados considerando o usuário logado como responsável
- */
- resumeRequestsSLAAssignedToMe(processes: string, cardFilters: string, countersRequired: string, initialStartDate: string, finalStartDate: string, initialDeadlineDate: string, finalDeadlineDate: string, initialWarningDate: string, finalWarningDate: string, requester: string, manager: string, requesterLocals: string, assigneeLocals: string): com.fluig.sdk.api.workflow.ResumeRequestsSLAVO;
+ /**
+ * Recupera o serviço para tratar Usuário
+ */
+ declare function getUserService(): com.fluig.sdk.service.UserService;
- /**
- * Recupera um resumo dos indicadores de SLA dos processos configurados considerando o usuário logado como gestor
- */
- resumeRequestsSLAManagedByMe(processes: string, cardFilters: string, countersRequired: string, initialStartDate: string, finalStartDate: string, initialDeadlineDate: string, finalDeadlineDate: string, initialWarningDate: string, finalWarningDate: string, requester: string, assignee: string, requesterLocals: string, assigneeLocals: string): com.fluig.sdk.api.workflow.ResumeRequestsSLAVO;
+ /**
+ * Recupera o serviço de widgets
+ */
+ declare function getWidgetService(): com.fluig.sdk.service.WidgetService;
- resumeSLATasks(processId: string, startDate: string, endDate: string, assignee: string, requester: string, manager: string): com.fluig.sdk.api.workflow.ResumeProcessTaskVO;
- }
+ /**
+ * Recupera o serviço para tratar Workflow
+ */
+ declare function getWorkflowService(): com.fluig.sdk.service.WorkflowAPIService;
}
+declare type ErrorCallback = (error: ErrorData, data: object) => void;
+declare type AutoCompleteOnTagCallback = (item: object, tag: object) => void;
+declare type SimpleCallback = () => void;
+declare type DataCallback = (data: object) => void;
-declare namespace com.fluig.sdk.api.alert {
- declare class AlertActionVO {}
- declare class AlertConfigVO {}
- declare class AlertEventVO {}
- declare class AlertModuleVO {}
- declare class AlertObjectVO {}
- declare class AlertSenderVO {}
- declare class AlertUserVO {}
- declare class AlertVO {
- getActions(): java.util.List;
- getCanRemove(): boolean;
- getCreationDate(): Date;
- getCreationDateTime(): number;
- getCurrentDate(): Date;
- getEvent(): com.fluig.sdk.api.alert.AlertObjectVO;
- getId(): number;
- getObject(): com.fluig.sdk.api.alert.AlertObjectVO;
- getPlace(): com.fluig.sdk.api.alert.AlertObjectVO;
- getPriority(): string;
- getRead(): boolean;
- getReceiver(): com.fluig.sdk.api.alert.AlertUserVO;
- getSenders(): java.util.List;
- setActions(actions: java.util.List): void;
- setCanRemove(canRemove: boolean): void;
- setCreationDate(creationDate: Date): void;
- setCreationDateTime(creationDateTime: number): void;
- setCurrentDate(currentDate: Date): void;
- setEvent(event: com.fluig.sdk.api.alert.AlertEventVO): void;
- setId(id: number): void;
- setObject(object: com.fluig.sdk.api.alert.AlertObjectVO): void;
- setPlace(place: com.fluig.sdk.api.alert.AlertObjectVO): void;
- setPriority(priority: string): void;
- setRead(read: boolean): void;
- setReceiver(receiver: com.fluig.sdk.api.alert.AlertUserVO): void;
- setSenders(senders: java.util.List): void;
- }
-}
+/**
+ * Callback de Modal
+ *
+ * @param error Indica se houve erro
+ * @param data Todo o conteúdo da propriedade content da modal
+ */
+declare type ModalCallback = (error: boolean, data: string) => void;
-declare namespace com.fluig.sdk.api.authorizeclient {
- declare class AuthorizeClientSdkServiceVO {
- /**
- * Pega o Resultado da Requisição
- *
- * Se for um JSON basta usar JSON.parse() para converter em objeto.
- */
- getResult(): string;
- getCompanyId(): number;
- getDescription(): string;
- getEndpoint(): string;
- getHeaders(): java.util.Map;
- getHttpStatusResult(): number;
- getMethod(): string;
- getOptions(): java.util.Map;
- getParams(): java.util.Map;
- getServiceCode(): string;
- getStrParams(): string;
- getTimeoutService(): string;
- }
-}
+/**
+ * Callback de Inicialização do Botão Switch
+ *
+ * @param event Evento disparado
+ * @this HTMLElement
+ */
+declare type SwitchInitCallback = (event: JQuery.Event) => void;
-declare namespace com.fluig.sdk.api.document {
- declare class AllocatedDocumentVO {}
- declare class DocumentApprovementHistoryVO {}
- declare class DocumentApproverVO {}
- declare class DocumentPermissionVO {}
- declare class DocumentRestrictionVO {}
- declare class DocumentSecurityConfigVO {}
- declare class DocumentSecurityVO {}
- declare class DocumentTaskVO {}
+ /**
+ * Callback de mudança de estado do Botão Switch
+ *
+ * @param event Evento disparado
+ * @param checked Indica se está selecionado
+ * @this HTMLElement
+ */
+declare type SwitchChangeCallback = (event: JQuery.Event, checked: boolean) => void;
- /**
- * Representa um documento
- */
- declare class DocumentVO {
- /**
- * Recupera número de acessos
- */
- getAccessCount(): number;
+/**
+ * Callback da mensagem de Confirmação
+ *
+ * @param result Resultado da confirmação (True se clicou em Sim)
+ * @param element Botão clicado
+ * @param data Evento disparado
+ */
+declare type ConfirmCallback = (result: boolean, element: HTMLElement, event: Event) => void;
- /**
- * Recupera versão ativa
- */
- getActiveVersion(): boolean;
+/**
+ * Callback de mensagem
+ *
+ * @param element Botão clicado
+ * @param data Evento disparado
+ */
+declare type MessageCallback = (element: HTMLElement, event: Event) => void;
+interface AutoCompleteOptions {
+ /**
+ * Tipo do autocomplete
+ *
+ * Pode ser (padrão é tag):
+ * - autocomplete
+ * - tag
+ * - tagAutocomplete
+ */
+ type?: string;
- /**
- * Recupera o valor do comentário nas informações extras
- */
- getAdditionalComments(): string;
+ /**
+ * Item exibido na sugestão
+ *
+ * Obrigatório para autocomplete e tagAutocomplete
+ */
+ displayKey?: string;
- /**
- * Recupera valor, se documento permite multi card por usuário
- */
- getAllowMuiltiCardsPerUser(): boolean;
+ /**
+ * Nome do dataset
+ *
+ * Opcional para autocomplete e tagAutocomplete
+ */
+ name?: string;
- /**
- * Recupera condição approvalAndOr
- */
- getApprovalAndOr(): boolean;
+ /**
+ * Determina o serviço utilizado para buscar as sugestões
+ */
+ source: {
+ url: string;
+ limit: 10,
+ offset: 0,
+ limitKey: string;
+ patternKey: string;
+ root: string;
+ };
- /**
- * Recupera valor, se documento está aprovado
- */
- getApproved(): boolean;
+ /**
+ * Coloca o texto em negrito quando efetua a busca
+ */
+ highlight?: boolean;
- /**
- * Recupera valor da data de aprovação
- */
- getApprovedDate(): Date
+ /**
+ * Mínimo de caracteres antes de iniciar a busca
+ */
+ minLength?: number;
- /**
- * Recupera id de atualização
- */
- getAtualizationId(): number;
+ /**
+ * Se falso não exibirá as opções retornadas da busca
+ */
+ hint?: boolean;
- /**
- * Recupera descrição do card
- */
- getCardDescription(): string;
+ /**
+ * Tempo limite para obter um resultado da busca
+ */
+ searchTimeout?: number;
- /**
- * Recupera id do colega
- */
- getColleagueId(): string;
+ /**
+ * Nome da classe utilizada na tag
+ */
+ tagClass?: string;
- /**
- * Recupera valor do crc
- */
- getCrc(): number;
+ /**
+ * Máximo de tags permitidas para selecionar
+ */
+ maxTags?: number;
- /**
- * Recupera valor para data de criação
- */
- getCreateDate(): Date
+ /**
+ * Permite selecionar a mesma tag várias vezes
+ */
+ allowDuplicates?: boolean
- /**
- * Recupera valor, se documento foi deletado
- */
- getDeleted(): boolean;
+ /**
+ * Evento disparado quando tentar adicionar uma tag repetida
+ */
+ onTagExists?: AutoCompleteOnTagCallback;
- /**
- * Recupera descrição do documento
- */
- getDocumentDescription(): string;
+ /**
+ * Evento disparado ao atingir o limite de tags
+ */
+ onMaxTags?: AutoCompleteOnTagCallback;
- /**
- * Recupera valor do document Id
- */
- getDocumentId(): number;
+ /**
+ * Largura máxima da tag
+ */
+ tagMaxWidth?: number;
- /**
- * Recupera número de propriedade do documento
- */
- getDocumentPropertyNumber(): number;
+ /**
+ * Template da dica
+ */
+ templates?: {
+ tag: string;
+ suggestion: string;
+ };
+
+ /**
+ * Objeto com o CSS para formatar uma tag removida
+ */
+ tagRemoveCss?: {
+ [property: string]: string;
+ };
- /**
- * Recupera versão do documento
- */
- getDocumentPropertyVersion(): number;
+}
- /**
- * Recupera valor do tipo de documento
- */
- getDocumentType(): DocumentTypeEnum;
+interface AutoCompleteTag {
+ description: string;
+}
- /**
- * Recupera valor do id do tipo de documento
- */
- getDocumentTypeId(): string;
+declare class AutoComplete {
+ /**
+ * Adiciona uma tag
+ *
+ * Método para os tipos tag e tagAutocomplete
+ */
+ add(tag: AutoCompleteTag): void;
- /**
- * Recupera valor, se download é habilitado
- */
- getDownloadEnabled(): boolean;
+ /**
+ * Atualiza uma tag para o tipo tag ou tagAutocomplete
+ *
+ * Método para os tipos tag e tagAutocomplete
+ */
+ update(tag: AutoCompleteTag): void;
- /**
- * Recupera valor de draft
- */
- getDraft(): boolean;
+ /**
+ * Remove uma tag para o tipo tag ou tagAutocomplete
+ *
+ * Método para os tipos tag e tagAutocomplete
+ */
+ remove(tag: AutoCompleteTag): void;
- /**
- * Recupera data de expiração
- */
- getExpirationDate(): Date
+ /**
+ * Remove todas as tags
+ *
+ * Método para os tipos tag e tagAutocomplete
+ */
+ removeAll(): void;
- /**
- * Recupera valor, se documento expira
- */
- getExpires(): boolean;
+ /**
+ * Retorna todas as tags
+ *
+ * Método para os tipos tag e tagAutocomplete
+ */
+ items(): AutoCompleteTag[];
- /**
- * Recupera os dados extras
- */
- getExtData(): java.util.HashMap;
+ /**
+ * Abre a caixa de seleção
+ *
+ * Método para o tipo autocomplete
+ */
+ open(): void;
- /**
- * Recupera id documento externo
- */
- getExternalDocumentId(): string;
+ /**
+ * Fecha a caixa de seleção
+ *
+ * Método para o tipo autocomplete
+ */
+ close(): void;
- /**
- * Recupera os dados extras
- */
- getExtraData(key: string): object;
+ /**
+ * Pega o valor do elemento
+ *
+ * Método para o tipo autocomplete
+ */
+ val(): string;
- /**
- * Recupera id do ícone
- */
- getIconId(): number;
+ /**
+ * Atribui um valor ao elemento
+ *
+ * Método para o tipo autocomplete
+ */
+ val(value: string): void;
- /**
- * Recupera valor do path do icon
- */
- getIconPath(): string;
-
- /**
- * Recupera valor, se documento é imutável
- */
- getImutable(): boolean;
- /**
- * Recupera valor, se documento é indexado
- */
- getIndexed(): boolean;
+ /**
+ * Coloca o foco no autocomplete
+ */
+ focus(): void;
- /**
- * Retorna se o documento herda as propriedades do parent
- */
- getInheritSecurity(): boolean;
+ /**
+ * Pega o elemento input do autocomplete
+ */
+ input(): HTMLElement;
- /**
- * Recupera valor, se documento pode ser visualizado internamente.
- */
- getInternalVisualizer(): boolean;
+ /**
+ * Atualiza o autocomplete
+ *
+ * Útil para quando fizer mudanças manuais no elemento.
+ */
+ refresh(): void;
- /**
- * Recupera valor de palavra chave
- */
- getKeyWord(): string;
+ /**
+ * Destrói o autocomplete
+ */
+ destroy(): void;
+}
- /**
- * Recupera id da linguagem
- */
- getLanguageId(): string;
+interface FilterSourceSettings {
+ /**
+ * URL que trará os dados
+ */
+ url: string,
- /**
- * Recupera valor da última data de modificação
- */
- getLastModifiedDate(): Date
+ /**
+ * Tipo do conteúdo retornado. Ex: application/json
+ */
+ contentType: string,
+ root: string,
+ pattern: string,
+ limit: number,
+ offset: number,
+ patternKey: string,
+ limitKey: string,
+ offsetKey: string
+}
- /**
- * Recupera última data de modificação
- */
- getLastModifiedTime(): string;
+interface FilterStyleSettings {
+ /**
+ * The selector for the autocomplete tag template.
+ */
+ templateTag?: string,
- /**
- * Recupera valor, se documento está em checkout
- */
- getOnCheckout(): boolean;
+ /**
+ * The selector for the autocomplete suggestion template.
+ */
+ templateSuggestion?: string,
- /**
- * Recupera id do pai do documento
- */
- getParentDocumentId(): number;
+ /**
+ * The selector for the autocomplete tip message template.
+ */
+ templateTipMessage?: string,
- /**
- * Recupera o tipo de permissão
- */
- getPermissionType(): number;
+ /**
+ * Class name for the tags. Padrão é tag-gray
+ */
+ autocompleteTagClass?: string,
- /**
- * Recupera arquivo físico
- */
- getPhisicalFile(): string;
+ /**
+ * CSS class used to table selected lines.
+ */
+ tableSelectedLineClass?: string,
- /**
- * Recupera valor do tamanho do arquivo físico
- */
- getPhisicalFileSize(): number;
+ /**
+ * Receives the waiting time to make the request. This is important not to open a request for each character typed.
+ */
+ tableStyle?: string,
- /**
- * Recupera prioridade
- */
- getPriority(): number;
+ /**
+ * Defines a CSS class to apply to the table. Padrão é fluigicon-zoom-in
+ *
+ * Ex .: 'table-hover table-bordered table-striped'.
+ */
+ filterIconClass?: string
+}
- /**
- * Recupera valor id privado do colega
- */
- getPrivateColleagueId(): string;
+interface FilterTableSettings {
+ header: FilterTableHeader[],
- /**
- * Recupera valor, se documento é privado
- */
- getPrivateDocument(): boolean;
+ /**
+ * Pode ser um array de chaves do objeto ou a classe CSS do template mustache.
+ *
+ * A sequência do array deve ser a mesma de header.
+ */
+ renderContent: string|string[],
+ formatData?: function
+}
- /**
- * Recupera id do publicador
- */
- getPublisherId(): string;
+interface FilterTableHeader {
+ /**
+ * Título da coluna
+ */
+ title?: string,
- /**
- * Recupera arquivos relacionados
- */
- getRelatedFiles(): string;
+ /**
+ * Atributo do objeto que será utilizado para ordenar essa coluna. Padrão é vazio.
+ *
+ * Caso não seja passado utilizará o conteúdo padrão da coluna que foi
+ * indicado em renderContent da tabela.
+ */
+ dataorder?: string,
- /**
- * Recupera tipo de restrição
- */
- getRestrictionType(): number;
+ /**
+ * Indica se será a coluna ordenada por padrão. Padrão é false.
+ */
+ standard?: boolean,
- /**
- * Recupera valor do código do site
- */
- getSiteCode(): string;
+ /**
+ * Tamanho visual da coluna. Utiliza uma das classes CSS col-
+ */
+ size?: string,
- /**
- * Recupera id do tenant
- */
- getTenantId(): number;
+ /**
+ * Indica se a coluna deverá ser exibida. Padrão é true
+ */
+ display?: boolean
+}
- /**
- * Recupera valor do id do tópico
- */
- getTopicId(): number;
+interface FilterSettings {
+ /**
+ * Campo que será exibido ao selecionar um valor
+ */
+ displayKey: string,
- /**
- * Recupera valor, se documento é traduzido
- */
- getTranslated(): boolean;
+ /**
+ * Configuração da fonte de dados
+ */
+ source: FilterSourceSettings,
- /**
- * Recupera updateIsoProperties
- */
- getUpdateIsoProperties(): boolean;
+ /**
+ * Configuração da Tabela de exibição dos itens
+ */
+ table: FilterTableSettings,
- /**
- * Recupera o identificador do upload
- */
- getUploadId(): string;
+ /**
+ * Configuração dos estilos
+ */
+ style?: FilterStyleSettings,
- /**
- * Recupera valor, se usuário será notificado
- */
- getUserNotify(): boolean;
+ /**
+ * Altura da tabela (preferencialmente em px). Padrão: 260px
+ */
+ tableHeight?: string,
- /**
- * Recupera valor do UUID
- */
- getUUID(): string;
+ /**
+ * Permite múltiplas seleções? Padrão: false
+ */
+ multiSelect?: boolean,
- /**
- * Recupera data de inicio de validação
- */
- getValidationStartDate(): Date
+ /**
+ * Tempo limite (em ms) da busca na fonte de dados. Padrão 200ms
+ */
+ searchTimeout?: number,
- /**
- * Recupera valor da versão
- */
- getVersion(): number;
+ /**
+ * Quantidade mínima de caracteres antes de iniciar a busca. Padrão 1
+ */
+ minLength?: number,
- /**
- * Recupera a ação que será realizada em relação a versão documento
- */
- getVersionAction(): string;
+ /**
+ * Limite de caracteres exibidos no item selecionado. Padrão: 200
+ */
+ tagMaxWidth?: number
+}
- /**
- * Recupera descrição da versão
- */
- getVersionDescription(): string;
+interface ToastSettings {
+ /**
+ * Título do Toast. Diferença é que fica em negrito.
+ */
+ title?: string,
- /**
- * Recupera visualização
- */
- getVisualization(): string;
+ /**
+ * Mensagem repassada
+ */
+ message?: string,
- /**
- * Recupera id do volume
- */
- getVolumeId(): string;
+ /**
+ * Tipos possíveis: success, danger, info and warning
+ * Padrão: success
+ */
+ type?: string,
- /**
- * Atribui valor para número de acessos
- */
- setAccessCount(accessCount: number): void;
+ /**
+ * Tempo, em milissegundos, ou as strings slow ou fast.
+ *
+ * O tempo padrão são 4000 milissegundos.
+ * slow representa 2000 e fast representa 6000.
+ *
+ * O Toast do tipo danger ignora o timeout.
+ */
+ timeout?: number|string
+}
- /**
- * Atribui valor para versão ativa
- */
- setActiveVersion(activeVersion: boolean): void;
+declare class FluigcFilter {
+ getSelectedItems(): object[];
+ add(item: object): void;
+ removeAll(): void;
- /**
- * Atribui o valor do comentário nas informações extras
- */
- setAdditionalComments(comments: string): void;
+ /**
+ * Escuta eventos do filtro.
+ *
+ * Importante: não coloque mais de um filtro em um mesmo pai, pois os eventos
+ * serão escutados por todos os filtros irmãos.
+ *
+ * O filtro dispara os seguintes eventos:
+ * - fluig.filter.load.complete => quando o filtro termina de carregar
+ * - fluig.filter.item.added => quando um item é selecionado/adicionado
+ *
+ * @param event
+ * @param callback
+ */
+ on(event: string, callback: SimpleCallback|DataCallback): void;
+}
- /**
- * Atribui valor para allowMultiCardsPerUser
- */
- setAllowMuiltiCardsPerUser(allowMultiCardsPerUser: boolean): void;
+declare class FluigcModal {
+ /**
+ * Remove (fecha) a Modal
+ */
+ remove(): void;
- /**
- * Atribui valor para approvalAndOr
- */
- setApprovalAndOr(approvalAndOr: boolean): void;
+ /**
+ * Indica se a Modal está visível
+ */
+ isOpen(): boolean;
+}
- /**
- * Atribui valor, se documento está aprovado
- */
- setApproved(approved: boolean): void;
+/**
+ * Configuração dos botões da Modal
+ */
+interface ModalActionSettings {
+ /**
+ * Rótulo exibido
+ */
+ label: string;
- /**
- * Atribui valor para data de aprovação
- */
- setApprovedDate(approvedDate: Date): void;
+ /**
+ * Evento ouvido em bindings.global da SuperWidget
+ *
+ * Precisa ter o prefixo data-
+ * Exemplo de valor: data-save-settings
+ */
+ bind?: string;
- /**
- * Atribui valor para id de atualização
- */
- setAtualizationId(actualizationId: number): void;
+ /**
+ * Estilo utilizado no botão
+ *
+ * Por padrão o primeiro botão recebe btn-primary
+ * e os demais recebem btn-default
+ */
+ classType?: string;
- /**
- * Atribui valor para descrição do card
- */
- setCardDescription(cardDescription: string): void;
+ /**
+ * Indica se o botão fechará a Modal
+ *
+ * Por padrão é false.
+ *
+ * IMPORTANTE: se for true ele não executará o bind registrado.
+ */
+ autoClose?: boolean;
+}
- /**
- * Atribui valor para id do colega
- */
- setColleagueId(colleagueId: string): void;
+/**
+ * Configurações da Mensagem de Confirmação
+ */
+interface ConfirmSettings {
+ /**
+ * Título
+ */
+ title: string;
- /**
- * Atribui valor para crc
- */
- setCrc(crc: number): void;
+ /**
+ * Mensagem
+ */
+ message: string;
- /**
- * Atribui valor para data de criação
- */
- setCreateDate(createDate: Date): void;
+ /**
+ * Texto do Botão Sim
+ *
+ * Padrão: Sim
+ */
+ labelYes?: string;
- /**
- * Atribui valor, se documento foi deletado
- */
- setDeleted(deleted: boolean): void;
+ /**
+ * Texto do Botão Não
+ *
+ * Padrão: Não
+ */
+ labelNo?: string;
+}
- /**
- * Atribui valor para descrição do documento
- */
- setDocumentDescription(documentDescription: string): void;
+/**
+ * Configurações da Mensagem de Alerta
+ */
+interface AlertSettings {
+ /**
+ * Título
+ */
+ title: string;
- /**
- * Atribui valor para id do documento
- */
- setDocumentId(documentId: number): void;
+ /**
+ * Mensagem
+ */
+ message: string;
- /**
- * Atribui valor para número de propriedade do documento
- */
- setDocumentPropertyNumber(documentPropertyNumber: number): void;
+ /**
+ * Texto do Botão Ok
+ *
+ * Padrão: OK
+ */
+ label?: string;
+}
- /**
- * Atribui versão de documento
- */
- setDocumentPropertyVersion(documentPropertyVersion: number): void;
+/**
+ * Configurações da Mensagem de Erro
+ */
+interface ErrorSettings {
+ /**
+ * Título
+ */
+ title: string;
- /**
- * Atribui valor para tipo de documento
- */
- setDocumentType(documentType: DocumentTypeEnum): void;
+ /**
+ * Mensagem
+ */
+ message: string;
- /**
- * Atribui valor para id do tipo de documento
- */
- setDocumentTypeId(documentTypeId: string): void;
+ /**
+ * Detalhes do erro
+ *
+ * Pode quebrar linha utilizando \n
+ */
+ details: string;
+}
- /**
- * Atribui valor, se download é habilitado
- */
- setDownloadEnabled(downloadEnabled: boolean): void;
+/**
+ * Configurações da Modal
+ */
+interface ModalSettings {
+ /**
+ * Título exibido na modal
+ */
+ title: string;
- /**
- * Atribui valor para draft
- */
- setDraft(draft: boolean): void;
+ /**
+ * Conteúdo da Modal
+ *
+ * Pode ser uma string HTML, template Mustache
+ * ou retorno de uma chamada a WCMAPI.convertFtlAsync
+ */
+ content: string;
- /**
- * Atribui valor para data de expiração
- */
- setExpirationDate(expirationDate: Date): void;
+ /**
+ * ID da Modal
+ *
+ * Por padrão é fluig-modal.
+ * A cada chamada o elemento HTML da modal é construído e
+ * então destruído quando a modal é fechada.
+ */
+ id?: string;
- /**
- * Atribui valor, se documento expira
- */
- setExpires(expires: boolean): void;
+ /**
+ * Tamanho da Modal
+ *
+ * Pode ser: small | large | full
+ */
+ size: string;
- /**
- * Atribui valor para id documento externo
- */
- setExternalDocumentId(externalDocumentId: string): void;
+ /**
+ * Botões da Modal
+ */
+ actions: ModalActionSettings[];
+}
- /**
- * Atribui valores para os dados extras
- */
- setExtraData(key: string, value: object): void;
+interface CalendarSettings {
+ /**
+ * Indica se exibirá a seleção de Data. Padrão true.
+ */
+ pickDate?: boolean;
- /**
- * Atribui valor para id do ícone
- */
- setIconId(iconId: number): void;
+ /**
+ * Indica se exibirá a seleção de Tempo. Padrão false.
+ */
+ pickTime?: boolean;
- /**
- * Atribui valor do iconPath do arquivo
- */
- setIconPath(iconPath: string): void;
+ /**
+ * Indica se usará minutos. Padrão true.
+ */
+ useMinutes?: boolean;
- /**
- * Atribui valor, se documento é imutável
- */
- setImutable(immutable: boolean): void;
+ /**
+ * Indica se usará segundos. Padrão true.
+ */
+ useSeconds?: boolean;
- /**
- * Atribui valor, se documento é indexado
- */
- setIndexed(indexed: boolean): void;
+ /**
+ * Indica se selecionará automaticamente a data corrente. Padrão true
+ */
+ useCurrent?: boolean;
- /**
- * Atribui se herda as propriedades de segurança do parent
- */
- setInheritSecurity(inheritSecurity: boolean): void;
+ /**
+ * Valor a incrementar os minutos quando clicar nas setas de subir/descer
+ */
+ minuteStepping?: number;
- /**
- * Atribui valor, se documento pode ser visualizado internamente
- */
- setInternalVisualizer(internalVisualizer: boolean): void;
+ /**
+ * Define uma data mínima selecionável
+ */
+ minDate?: string;
- /**
- * Atribui valor para palavra chave
- */
- setKeyWord(keyWord: string): void;
+ /**
+ * Define a data máxima selecionável
+ */
+ maxDate?: string;
- /**
- * Atribui valor para id da linguagem
- */
- setLanguageId(languageId: string): void;
+ /**
+ * Exibe o indicador do dia de hoje
+ */
+ showToday?: boolean;
- /**
- * Atribui valor para última data de modificação
- */
- setLastModifiedDate(lastModifiedDate: Date): void;
+ /**
+ * Código do idioma. Padrão pt-br
+ */
+ language?: string;
- /**
- * Atribui valor a última data de modificação
- */
- setOnCheckout(onCheckout: boolean): void;
+ /**
+ * Data padrão
+ *
+ * Aceita também data da Moment.js
+ */
+ defaultDate?: string|Date;
- /**
- * Atribui valor, se documento está em checkout
- */
- setLastModifiedTime(lastModifiedTime: string): void;
+ /**
+ * Datas que não podem ser selecionadas
+ *
+ * Aceita também data da Moment.js
+ */
+ disabledDates?: string[]|Date[];
- /**
- * Atribui valor para id do documento pai
- */
- setParentDocumentId(parentDocumentId: number): void;
+ /**
+ * Únicas datas que podem ser selecionadas
+ *
+ * Aceita também data da Moment.js
+ */
+ enabledDates?: string[]|Date[];
- /**
- * Atribui valor para tipo de permissão
- */
- setPermissionType(permissionType: number): void;
+ /**
+ * Use "strict" quando validar datas. Padrão false
+ */
+ useStrict?: boolean;
- /**
- * Atribui valor para arquivo físico
- */
- setPhisicalFile(physicalFile: string): void;
+ /**
+ * Exibe a seleção de Tempo ao lado da seleção de Data. Padrão false.
+ */
+ sideBySide?: boolean;
- /**
- * Atribui valor para o tamanho do arquivo físico
- */
- setPhisicalFileSize(physicalFileSize: number): void;
+ /**
+ * Dias da semana que não pode ser selecionados
+ *
+ * Dia da semana inicia em 0, para domingo.
+ */
+ daysOfWeekDisabled?: number[];
+}
- /**
- * Atribui valor prioridade
- */
- setPriority(priority: number): void;
+declare class Calendar {
+ /**
+ * Configura a data mínima que pode ser selecionada
+ *
+ * @param date Data como string (formato pt-br), Date ou moment
+ */
+ setMinDate(date: string|Date): void;
- /**
- * Atribui valor id privado do colega
- */
- setPrivateColleagueId(privateColleagueId: string): void;
+ /**
+ * Configura a data máxima que pode ser selecionada
+ *
+ * @param date Data como string (formato pt-br), Date ou moment
+ */
+ setMaxDate(date: string|Date): void;
+ show(): void;
+ disable(): void;
+ enable(): void;
- /**
- * Atribui valor, se documento é privado
- */
- setPrivateDocument(privateDocument: boolean): void;
+ /**
+ * Atribui a data selecionada
+ *
+ * @param date Data como string (formato pt-br), Date ou moment
+ */
+ setDate(date: string|Date): void;
- /**
- * Atribui valor para id do publicador
- */
- setPublisherId(publisherId: string): void;
+ /**
+ * Pega a data como objeto moment (da lib momentjs)
+ */
+ getDate(): any;
+}
- /**
- * Atribui valor para arquivos relacionados
- */
- setRelatedFiles(relatedFiles: string): void;
+interface LoadingSettings {
+ /**
+ * Mensagem exibida
+ *
+ * Padrão: "Loading..."
+ */
+ textMessage?: string,
- /**
- * Atribui valor para tipo de restrição
- */
- setRestrictionType(restrictionType: number): void;
+ /**
+ * Título exibido quando theme == true
+ *
+ * Padrão: ""
+ */
+ title?: string,
- /**
- * Atribui valor para código de site
- */
- setSiteCode(siteCode: string): void;
+ /**
+ * Estilo para o bloco de carregamento
+ *
+ * Objeto CSS aceito pela JQuery.
+ *
+ * Padrão: null
+ */
+ css?: object,
- /**
- * Atribui valor para id do tenant
- */
- setTenantId(tenantId: number): void;
-
- /**
- * Atribui valor para id do tópico
- */
- setTopicId(topicId: number): void;
-
- /**
- * Atribui valor, se documento é traduzido
- */
- setTranslated(translated: boolean): void;
+ /**
+ * Estilo para o overlay
+ *
+ * Objeto CSS aceito pela JQuery.
+ *
+ * Padrão: null
+ */
+ overlayCSS?: object,
- /**
- * Atribui valor para updateIsoProperties
- */
- setUpdateIsoProperties(updateIsoProperties: boolean): void;
+ /**
+ * Estilo para o cursor antes de bloquear
+ *
+ * Padrão: ""
+ */
+ cursorReset?: string,
- /**
- * Atribue o identificador do upload
- */
- setUploadId(uploadId: string): void;
+ /**
+ * Índice Z-Index
+ *
+ * Padrão: null
+ */
+ baseZ?: number,
- /**
- * Atribui valor se usuário será notificado
- */
- setUserNotify(userNotify: boolean): void;
+ /**
+ * Indica se será centralizado na tela
+ *
+ * Padrão: true
+ */
+ centerX?: boolean,
- /**
- * Atribui valor para UUID
- */
- setUUID(uUID: string): void;
+ /**
+ * Indica se será centralizado na tela
+ *
+ * Padrão: true
+ */
+ centerZ?: boolean,
- /**
- * Atribui valor para data de início de validação
- */
- setValidationStartDate(validationStartDate: Date): void;
+ /**
+ * Desabilita eventos de teclado e mouse
+ *
+ * Padrão: true
+ */
+ bindEvents?: boolean,
- /**
- * Atribui valor para versão
- */
- setVersion(version: number): void;
+ /**
+ * Tempo, em ms, do efeito de transição no bloqueio
+ *
+ * Se for 0 não terá efeito de transição.
+ */
+ fadeIn?: number,
- /**
- * Atribue a ação que será realizada em relação a versão documento
- */
- setVersionAction(versionAction: string): void;
+ /**
+ * Tempo, em ms, do efeito de transição no desbloqueio
+ *
+ * Se for 0 não terá efeito de transição.
+ */
+ fadeOut?: number,
- /**
- * Atribui valor para descrição da versão
- */
- setVersionDescription(versionDescription: string): void;
+ /**
+ * Tempo, em ms, para aguardar antes de desbloquear
+ *
+ * Se for 0 vai desabilitar o auto desbloqueio.
+ */
+ timeout?: number,
- /**
- * Atribui valor para visualização
- */
- setVisualization(visualization: string): void;
+ /**
+ * Indica se será exibido o overlay
+ *
+ * Padrão: true
+ */
+ showOverlay?: boolean,
- /**
- * Atribui valor ao id do volume
- */
- setVolumeId(volumeId: string): void;
- }
+ /**
+ * Função para ser executado após o efeito de transição do bloqueio
+ */
+ onBlock?: SimpleCallback,
/**
- * Representa uma pasta
+ * Função para ser executado após o efeito de transição do desbloqueio
+ *
+ * O elemento desbloqueado será passado à função.
*/
- declare class FolderVO {
+ onUnBlock?: DataCallback,
- /**
- * Recupera comentário adicional
- */
- getAdditionalComments(): string;
+ /**
+ * Indica se vai ignorar um bloqueio quando já está bloqueado
+ *
+ * Padrão: false
+ */
+ ignoreIfBlocked?: boolean
+}
- /**
- * Recupera valor de approvalAndOr
- */
- getApprovalAndOr(): boolean;
+declare class Loading {
+ /**
+ * Exibe a tela de carregamento
+ */
+ show(): void;
- /**
- * Recupera valor do colleagueId
- */
- getColleagueId(): string;
+ /**
+ * Esconde a tela de carregamento
+ */
+ hide(): void;
+}
- /**
- * Recupera valor da data de criação
- */
- getCreateDate(): Date;
+declare namespace FLUIGC {
+ /**
+ * Cria um campo com auto-complete
+ *
+ * Eventos disponíveis para autocomplete:
+ * - fluig.autocomplete.cursorchanged
+ * - fluig.autocomplete.opened
+ * - fluig.autocomplete.closed
+ * - fluig.autocomplete.selected
+ * - fluig.autocomplete.autocompleted
+ * - fluig.autocomplete.beforeItemAdd
+ * - fluig.autocomplete.itemAdded
+ * - fluig.autocomplete.beforeItemUpdate
+ * - fluig.autocomplete.itemUpdated
+ * - fluig.autocomplete.beforeItemRemove
+ * - fluig.autocomplete.itemRemoved
+ *
+ * @param target Seletor utilizado na JQuery
+ * @param options Opções adicionais para o autocomplete
+ * @param callback Função executada após trazer as respostas para o auto-complete
+ */
+ declare function autocomplete(target: string, options: AutoCompleteOptions, callback: ErrorCallback): AutoComplete;
- /**
- * Recupera valor de descrição do documento
- */
- getDocumentDescription(): string;
+ /**
+ * Cria um campo filter em um select (é o Zoom feito manualmente)
+ *
+ * Para usar em formulário deve-se incluir o css /style-guide/css/fluig-style-guide-filter.min.css
+ * e o script /style-guide/js/fluig-style-guide-filter.min.js
+ *
+ * Para usar em Widget deve-se incluir a instrução application.resource.component.1=fluigfilter
+ * (substituindo o 1 por um valor ainda não utilizado) no arquivo application.info
+ *
+ * @param target Seletor utilizado na JQuery
+ * @param settings Configurações do filtro
+ */
+ declare function filter(target: string, settings: FilterSettings): FluigcFilter;
- /**
- * Recupera valor do documentoId
- */
- getDocumentId(): number;
+ /**
+ * Cria uma caixa de seleção para tratar data e horário
+ *
+ * @param target Seletor utilizado na JQuery
+ * @param settings Configurações do calendário
+ */
+ declare function calendar(target: string, settings: CalendarSettings): Calendar;
- /**
- * Recupera id do tipo de documento
- */
- getDocumentTypeId(): string;
+ /**
+ * Exibe uma mensagem simples no topo da página.
+ *
+ * Muito utilizado para substituir alert do JS.
+ */
+ declare function toast(settings: ToastSettings): void;
- /**
- * Recupera os tipos de documento
- */
- getDocumentTypes(): java.util.List;
+ /**
+ * Cria uma tela de carregamento em elemento específico ou na janela inteira
+ *
+ * Caso o objeto window seja passado a tela de carregamento ocupará a janela inteira.
+ *
+ * @param selector Uma string com seletor JQuery ou objeto window
+ * @param settings Configurações possíveis para o Loading
+ */
+ declare function loading(selector: string|Window, settings: LoadingSettings): Loading;
- /**
- * Recupera informação se download da pasta está disponível
- */
- getDownloadEnabled(): boolean;
+ /**
+ * Cria uma Modal
+ *
+ * @param settings Configurações
+ * @param callback Função para executar após a criação da modal
+ */
+ declare function modal(settings: ModalSettings, callback: ModalCallback): FluigcModal;
+}
- /**
- * Informa se a pasta pode expirar
- */
- getExpires(): boolean;
+/**
+ * Botão Switch
+ *
+ * @see https://style.fluig.com/javascript.html#switch-button
+ */
+declare namespace FLUIGC.switcher {
- /**
- * Recupera os filtros
- */
- getFilters(): java.util.HashMap;
+ /**
+ * Transforma um checkbox ou radio em um botão switch
+ *
+ * Ao inicializar o botão switch será feita a leitura das opções
+ * do elemento HTML (os atributos do checkbox ou radio) para orientar
+ * como o botão deve ser.
+ *
+ * As opções no checkbox/radio são:
+ *
+ * | Atributo | Valores | Padrão |
+ * |----------|---------|--------|
+ * | checked | true, false | false |
+ * | data-size | null, 'mini', 'small', 'normal', 'large' | null|
+ * | data-animate | true, false | true|
+ * | disabled | true, false | false|
+ * | readonly | true, false | false|
+ * | data-on-color | 'primary', 'info', 'success', 'warning', 'danger', 'default' | 'primary'|
+ * | data-off-color | 'primary', 'info', 'success', 'warning', 'danger', 'default' | 'default'|
+ * | data-on-text | | 'ON'|
+ * | data-off-text | | 'OFF'|
+ *
+ * @tutorial https://style.fluig.com/javascript.html#switch-button
+ *
+ * @param element Seletor JQuery ou Objeto JQuery
+ */
+ declare function init(element: string|JQuery): void;
- /**
- * Recupera valor do iconId
- */
- getIconId(): number;
+ /**
+ * Transforma todos os checkbox e radio de um container em botões switch
+ *
+ * Ao inicializar o botão switch será feita a leitura das opções
+ * do elemento HTML (os atributos do checkbox ou radio) para orientar
+ * como o botão deve ser.
+ *
+ * As opções no checkbox/radio são:
+ *
+ * | Atributo | Valores | Padrão |
+ * |----------|---------|--------|
+ * | checked | true, false | false |
+ * | data-size | null, 'mini', 'small', 'normal', 'large' | null|
+ * | data-animate | true, false | true|
+ * | disabled | true, false | false|
+ * | readonly | true, false | false|
+ * | data-on-color | 'primary', 'info', 'success', 'warning', 'danger', 'default' | 'primary'|
+ * | data-off-color | 'primary', 'info', 'success', 'warning', 'danger', 'default' | 'default'|
+ * | data-on-text | | 'ON'|
+ * | data-off-text | | 'OFF'|
+ *
+ * @tutorial https://style.fluig.com/javascript.html#switch-button
+ *
+ * @param parentElement Seletor JQuery, ou Objeto, do elemento pai
+ * @param fieldName Nome do input deve iniciar com o valor indicado
+ */
+ declare function initAll(parentElement: string|JQuery, fieldName?: string): void;
- /**
- * Recupera boolean se pasta é imutável
- */
- getImutable(): boolean;
+ /**
+ * Pega o estado do botão
+ *
+ * @param element Seletor JQuery ou Objeto JQuery
+ */
+ declare function getState(element: string|JQuery): boolean;
- /**
- * Recupera segurança herdada
- */
- getInheritSecurity(): boolean;
+ /**
+ * Configura o estado como checked
+ *
+ * @param element Seletor JQuery ou Objeto JQuery
+ */
+ declare function setTrue(element: string|JQuery): void;
- /**
- * Recupera valor de visualizador interno
- */
- getInternalVisualizer(): boolean;
+ /**
+ * Configura o estado como false (não selecionado)
+ *
+ * @param element Seletor JQuery ou Objeto JQuery
+ */
+ declare function setFalse(element: string|JQuery): void;
- /**
- * Recupera valor da palavra chave
- */
- getKeyWord(): string;
+ /**
+ * Alterna o estado do botão
+ *
+ * @param element Seletor JQuery ou Objeto JQuery
+ */
+ declare function toggleState(element: string|JQuery): void;
- /**
- * Recupera boolean se usuário será notificado
- */
- getNotifyUser(): boolean;
+ /**
+ * Habilita o botão (remove disabled do checkbox/radio)
+ *
+ * @param element Seletor JQuery ou Objeto JQuery
+ */
+ declare function enable(element: string|JQuery): void;
- /**
- * Recupera valor do id da pasta pai
- */
- getParentFolderId(): number;
+ /**
+ * Desabilita o botão (coloca disabled no checkbox/radio)
+ *
+ * Cuidado: inputs desabilitados não são enviados pelo formulário.
+ *
+ * @param element Seletor JQuery ou Objeto JQuery
+ */
+ declare function disable(element: string|JQuery): void;
- /**
- * Recupera lista de permissões
- */
- getPermissions(): java.util.List;
+ /**
+ * Indica se é para o botão ser somente leitura
+ *
+ * @param element Seletor JQuery ou Objeto JQuery
+ */
+ declare function isReadOnly(element: string|JQuery, readOnly: boolean): void;
+ /**
+ * Remove o botão switch
+ *
+ * @param element Seletor JQuery ou Objeto JQuery
+ */
+ declare function destroy(element: string|JQuery): void;
- /**
- * Recupera tipo de permissão
- */
- getPermissionType(): number;
+ /**
+ * Evento disparado quando iniciar um botão Switch
+ *
+ * @param element Seletor JQuery ou Objeto JQuery
+ * @param callback Função executada ao disparar o evento
+ */
+ declare function onInit(element: string|JQuery, callback: SwitchInitCallback): void;
- /**
- * Recupera boolean se documento é privado
- */
- getPrivateDocument(): boolean;
+ /**
+ * Evento disparado houver mudança de estado do botão Switch
+ *
+ * @param element Seletor JQuery ou Objeto JQuery
+ * @param callback Função executada ao disparar o evento
+ */
+ declare function onChange(element: string|JQuery, callback: SwitchChangeCallback): void;
+}
- /**
- * Recupera lista de publicadores aprovadores
- */
- getPublisherApprovers(): java.util.List;
+declare namespace FLUIGC.message {
+ /**
+ * Cria uma Mensagem de Confirmação
+ *
+ * @param settings Configurações
+ * @param callback Função para executar após o usuário responder a confirmação
+ */
+ declare function confirm(settings: ConfirmSettings, callback: ConfirmCallback): void;
- /**
- * Recupera id do publicador
- */
- getPublisherId(): string;
+ /**
+ * Cria uma Mensagem de Alerta
+ *
+ * @param settings Configurações
+ * @param callback Função para executar após o usuário fechar o alerta
+ */
+ declare function alert(settings: AlertSettings, callback: MessageCallback): void;
- /**
- * Recupera lista de restrições de documentos
- */
- getRestrictions(): java.util.List;
+ /**
+ * Cria uma Mensagem de Erro
+ *
+ * @param settings Configurações
+ * @param callback Função para executar após o usuário fechar o erro
+ */
+ declare function error(settings: ErrorSettings, callback: MessageCallback): void;
+}
- /**
- * Recupera tipo de restrição
- */
- getRestrictionType(): number;
+declare namespace FLUIGC.calendar {
+ /**
+ * Formata uma data em uma string de acordo com a formatação indicada.
+ *
+ * @see https://style.fluig.com/javascript.html#fluig-calendar
+ *
+ * @param date Data a ser formatada
+ * @param format Formatação
+ * @param language Idioma (padrão pt-br)
+ */
+ declare function formatDate(date: Date, format: string, language?: string): string;
+}
- /**
- * Recupera valor do tenantId
- */
- getTenantId(): number;
+/**
+ * Adiciona um Filho ao Pai
+ *
+ * @param {String} tableName Nome da tabela
+ * @returns {Number} Id do filho criado
+*/
+declare function wdkAddChild(tableName: string): number;
- /**
- * Recupera id do tópico
- */
- getTopicId(): number;
+/**
+ * Disponibiliza diversas funções para manipulação do formulário
+ *
+ * Usar em eventos do formulário (que recebem form como parâmetro).
+ */
+declare class FormController {
- /**
- * Recupera informação se update de iso properties é permitido
- */
- getUpdateIsoProperties(): boolean;
+ /**
+ * Retorna o ID da empresa
+ */
+ getCompanyId(): number;
- /**
- * Recupera valor da versão
- */
- getVersion(): number;
+ /**
+ * Retorna o ID do documento (registro de formulário)
+ */
+ getDocumentId(): number;
- /**
- * Recupera valor da descrição da versão
- */
- getVersionDescription(): string;
+ /**
+ * Retorna a versão do documento (registro do formulário)
+ */
+ getVersion(): number;
- /**
- * Recupera id do volume
- */
- getVolumeId(): string;
-
- /**
- * Atribui valor para comentário adicional
- */
- setAdditionalComments(additionalComments: string): void;
+ /**
+ * Retorna o ID do formulário
+ */
+ getCardIndex(): number
- /**
- * Atribui valor para approvalAndOr
- */
- setApprovalAndOr(approvalAndOr: boolean): void;
+ /**
+ * Habilita/Desabilita a edição de um campo do formulário
+ */
+ setEnabled(nomeCampo: string, habilita: boolean, protegido: boolean): void;
- /**
- * Atribui valor para colleagueId
- */
- setColleagueId(colleagueId: string): void;
+ /**
+ * Verifica se o campo do formulário está habilitado para edição
+ */
+ getEnabled(nomeCampo: string): boolean;
- /**
- * Atribui valor a data de criação
- */
- setCreateDate(createDate: Date): void;
+ /**
+ * Atribui valor a um campo do formulário
+ */
+ setValue(nomeCampo: string, valor: string): string;
- /**
- * Atribui valor para descrição do documento
- */
- setDocumentDescription(documentDescription: string): void;
+ /**
+ * Pega o valor de um campo do formulário
+ */
+ getValue(nomeCampo: string): string;
- /**
- * Atribui valor para documentId
- */
- setDocumentId(documentId: number): void;
+ /**
+ * Deixa o campo invisível buscando pelo nome do campo
+ */
+ setVisible(nomeCampo: string, visible: boolean): void;
- /**
- * Atribui valor para documentTypeId
- */
- setDocumentTypeId(documentTypeId: string): void;
+ /**
+ * Deixa o campo invisível buscando pelo ID do campo
+ */
+ setVisibleById(idDoCampo: string, visible: boolean): void;
- /**
- * Atribui tipo de documentos
- */
- setDocumentTypes(documentTypes: java.util.List): void;
+ /**
+ * Se habilitado os campos são exibidos como input readonly
+ */
+ setShowDisabledFields(habilita: boolean): void;
- /**
- * Atribui valor para informação se download de pasta está disponível
- */
- setDownloadEnabled(downloadEnabled: boolean): void;
+ /**
+ * Se habilitado o link "imprimir" é ocultado
+ */
+ setHidePrintLink(habilita: boolean): void;
- /**
- * Atribui valor para informar se a pasta pode expirar
- */
- setExpires(expires: boolean): void;
+ /**
+ * Se habilitado o botão "excluir" é ocultado
+ */
+ setHideDeleteButton(habilita: boolean): void;
- /**
- * Atribui filtros
- */
- setFilters(filters: java.util.HashMap): void;
+ /**
+ * Se definido como true todos os campos desabilitados não terão seus valores salvos
+ */
+ setEnhancedSecurityHiddenInputs(proteger: boolean): void;
- /**
- * Atribui valor para iconId
- */
- setIconId(iconId: number): void;
+ /**
+ * Retorna o Modo do formulário.
+ *
+ * Tipos possíveis:
+ * - ADD: Criação
+ * - MOD: Edição
+ * - VIEW: Visualização
+ * - NONE: Não há comunicação com formulário. Ocorre no momento da validação dos campos, por exemplo.
+ */
+ getFormMode(): string;
- /**
- * Atribui boolean se pasta será imutável
- */
- setImutable(immutable: boolean): void;
+ /**
+ * Desabilita o botão de imprimir
+ */
+ setHidePrintLink(hide: boolean): void;
- /**
- * Atribui valor para segurança herdada
- */
- setInheritSecurity(inheritSecurity: boolean): void;
+ /**
+ * Retorna se o botão de imprimir está oculto
+ */
+ isHidePrintLink(): boolean;
- /**
- * Atribui boolean se pasta possui visualizador interno
- */
- setInternalVisualizer(internalVisualizer: boolean): void;
+ /**
+ * Retorna os campos filhos, e seus valores, de uma tabela pai.
+ *
+ * Retorna um objeto com a propriedade sendo o nome do campo e seus valores.
+ */
+ getChildrenFromTable(tableName: string): object;
- /**
- * Configura valor da palavra chave
- */
- setKeyWord(keyWord: string): void;
+ /**
+ * Retorna os índices dos campos filhos de uma tabela pai.
+ *
+ * @see https://tdn.totvs.com/pages/releaseview.action?pageId=270924158#EventosdeFormul%C3%A1rio-getChildrenIndexes
+ */
+ getChildrenIndexes(tableName: string): number[];
- /**
- * Atribui boolean se usuário será notificado
- */
- setNotifyUser(notifyUser: boolean): void;
+ /**
+ * Oculta o botão de apagar registro
+ */
+ setHideDeleteButton(hide: boolean): void;
- /**
- * Atribui valor para id da pasta pai
- */
- setParentFolderId(parentFolderId: number): void;
+ /**
+ * Informa se o botão de apagar está oculto
+ */
+ isHideDeleteButton(): boolean;
- /**
- * Atribui valor para lista de permissões
- */
- setPermissions(permissions: java.util.List): void;
+ /**
+ * Indica se está em mobile
+ */
+ getMobile(): boolean;
- /**
- * Atribui valor ao tipo de permissão
- */
- setPermissionType(permissionType: number): void;
+ /**
+ * Indica se o campo está visível buscando pelo nome do campo
+ */
+ isVisible(nomeCampo: string): boolean;
- /**
- * Atribui boolean se documento é privado
- */
- setPrivateDocument(privateDocument: boolean): void;
+ /**
+ * Indica se o campo está visível buscando pelo ID do campo
+ */
+ isVisibleById(id: string): boolean;
+};
- /**
- * Atribui valor para publicadores aprovadores
- */
- setPublisherApprovers(publisherApprovers: java.util.List): void;
+/**
+ * Disponibiliza funções para incluir conteúdo HTML no formulário
+ */
+declare class customHTML {
- /**
- * Atribui valor para id do publicador
- */
- setPublisherId(publisherId: string): void;
+ /**
+ * Adiciona conteúdo no final do HTML do formulário
+ * @param html Conteúdo HTML a ser incluído
+ */
+ append(html: string): void;
+};
- /**
- * Atribui valor para lista de restrições de documentos
- */
- setRestrictions(restrictions: java.util.List): void;
+interface ErrorData {
+ message?: string;
+ responseText: object;
+}
- /**
- * Atribui valor para tipo de restrição
- */
- setRestrictionType(restrictionType: number): void;
+/**
+ * Constantes globais para usar no HTML de Processo / Formulário.
+ *
+ * O arquivo vcXMLRPC.js precisa ser declarado:
+ */
+declare namespace Global {
+ /**
+ * Último ID de um Filho (Cadastro Pai/Filho)
+ *
+ * Disponível quando o formulário possui um Pai/Filho padrão.
+ */
+ const newId: number;
- /**
- * Atribui valor para tenantId
- */
- setTenantId(tenantId: number): void;
+ /**
+ * Versão do Workflow.
+ *
+ * Só é preenchida em Processo
+ */
+ const WKVersDef: string;
- /**
- * Atribui valor para topicId
- */
- setTopicId(topicId: number): void;
+ /**
+ * ID da atividade atual do Workflow
+ *
+ * Só é preenchida em Processo
+ */
+ const WKNumState: string;
+}
- /**
- * Atribui permitir atualização de iso properties
- */
- setUpdateIsoProperties(updateIsoProperties: boolean): void;
+/**
+ * Permite a passagem de parâmetros entre os eventos do Workflow
+ */
+declare namespace globalVars {
- /**
- * Atribui valor para versão
- */
- setVersion(version: number): void;
+ /**
+ * Insere um valor nos parâmetros gerais
+ */
+ declare function put(name: string, value: object): void;
- /**
- * Atribui valor para descrição da versão
- */
- setVersionDescription(versionDescription: string): void;
+ /**
+ * Pega um valor dos parâmetros gerais
+ */
+ declare function get(name: string): object
+};
- /**
- * Atribui valor do id do volume
- */
- setVolumeId(volumeId: string): void;
- }
- declare class RelatedDocumentVO {}
- declare class SolvedPermissionVO {}
-}
-declare namespace com.fluig.sdk.api.ecm {
- declare class CollaborationAppVO {};
- declare class CollaborationVO {};
-}
+/**
+ * Pega o valor das propriedades do Processo.
+ *
+ * Usar em eventos do processo e eventos de formulários de processo.
+ * @see https://tdn.totvs.com/pages/releaseview.action?pageId=270919174
+ *
+ * Propriedades:
+ * - WKDef: Código do processo
+ * - WKVersDef: Versão do processo
+ * - WKNumProces: Número do processo
+ * - WKNumState: Número da atividade
+ * - WKCompany: Número da Empresa
+ * - WKUser: Usuário Corrente
+ * - WKUserComment: Texto com as observações feitas pelos usuários na atividade corrente
+ * - WKCompletTask: Indica se a tarefa foi completada ("true" / "false")
+ * - WKNextState: Número da próxima atividade (destino)
+ * - WKCardId: Código do registro de formulário do processo
+ * - WKFormId: Código do formulário do processo
+ * - WKIdentityCompany: Identificador da empresa selecionada para Experiências de uso TOTVS
+ * - WKMobile: Identifica se a ação foi realizada através de um dispositivo mobile
+ * - WKIsService: Identifica se a solicitação de cancelamento foi realizada através de um serviço. Esta variável só pode ser consultada nos eventos beforeCancelProcess e afterCancelProcess
+ * - WKUserLocale: Identifica o idioma corrente do usuário
+ * - WKManagerMode: Identifica se o processo está sendo movimentado pela visão do gestor do processo ou não. Só funciona no Workflow
+ * - WKReplacement: Código do usuário substituto
+ * - WKIsTransfer: Permite verificar se o usuário está ou não transferindo uma tarefa
+ * -
+ */
+declare function getValue(nomePropriedade: string): string;
-declare namespace com.fluig.sdk.api.enums {
- enum AssumeProcessTaskStatus {
- SUCCESS,
- ERROR,
- }
-}
+/**
+ * Funções para o envio de e-mail
+ */
+declare namespace notifier {
-declare namespace com.fluig.sdk.api.group {
- declare class GroupVO {}
-}
+ /**
+ * Envia um e-mail personalizado
+ *
+ * @example
+ * var parameters = new java.util.HashMap();
+ * parameters.put("subject", "Assunto");
+ * parameters.put("NAME", "João");
+ * parameters.put("CODE", "01");
+ *
+ * var users = new java.util.ArrayList();
+ * users.add("adm");
+ *
+ * notifier.notify("adm", "mail1", parameters, users, "text/html");
+ *
+ * @param fromId Matrícula do usuário que está enviando o e-mail
+ * @param templateId Código do template de e-mail
+ * @param parameters java.util.HashMap com os parâmetros do e-mail
+ * @param to java.util.ArrayList com os destinatários do e-mail
+ * @param mimeType Tipo do conteúdo do e-mail. Pode ser text/html ou text/plain
+ *
+ */
+ declare function notify(fromId: string, templateId: string, parameters: java.util.HashMap, to: java.util.ArrayList, mimeType: string): void;
+};
-declare namespace com.fluig.sdk.api.holiday {
- declare class HolidayVO {}
-}
-declare namespace com.fluig.sdk.api.job {
- declare class JobVO {}
-}
+/**
+ * Funções para o uso dos serviços (Progress)
+ *
+ * Usar em qualquer evento.
+ */
+declare namespace ServiceManager {
-declare namespace com.fluig.sdk.api.job.JobVO {
- declare class IntervalType {}
-}
+ /**
+ * Obtém o serviço especificado
+ *
+ * Normalmente utilizado para pegar o serviceHelper do serviço.
+ *
+ * @example
+ * var service = ServiceManager.getService("ems2_v10");
+ * var serviceHelper = service.getBean();
+ */
+ declare function getService(serviceId: string): object;
+};
-declare namespace com.fluig.sdk.api.local {
- declare class LocalUserVO {}
- declare class LocalVO {}
-}
+interface Task {
+ name: string;
-declare namespace com.fluig.sdk.api.oauth {
- declare class OAuthSdkVO {}
-}
+ /**
+ * ID do usuário responsável
+ */
+ responsible: string;
-declare namespace com.fluig.sdk.api.permission {
- declare class PermissionAssetVO {
- getId(): number;
- getCode(): string;
- getDescription(): string;
- getPageCode(): string;
- getTypeCode(): string;
- setId(id: number): void;
- setCode(code: string): void;
- setDescription(description: string): void;
- setPageCode(pageCode: string): void;
- setTypeCode(typeCode: string): void;
- }
- declare class PermissionVO {
- getCategory(): string;
- getCategoryCode(): string;
- getIsSelected(): boolean;
- getPermission(): string;
- getPermissionDescription(): string;
- setCategory(category: string): void;
- setCategoryCode(categoryCode: string): void;
- setIsSelected(isSelected: boolean): void;
- setPermission(permission: string): void;
- setPermissionDescription(permissionDescription: string): void;
- }
+ /**
+ * Data no formato dd/mm/yyyy
+ */
+ dueDate: string;
}
-declare namespace com.fluig.sdk.api.search {
- declare class DefaultSearchRequest {}
- declare class DefaultSearchResponse{}
-}
+/**
+ * Indica a Data e Hora de um prazo
+ */
+interface DeadLineDate {
+ /**
+ * Data no formato dd/mm/yyyy
+ */
+ 0: string;
-declare namespace com.fluig.sdk.api.social {
- declare class ArticleCoverVO {}
- declare class ArticleVO {}
- declare class CommentVO {}
- declare class CommunityVO {}
- declare class CropVO {}
- declare class MediaVO {}
- declare class PostVO {}
- declare class SociableVO {}
- declare class SocialBreadcrumbItemVO {}
- declare class SocialBreadcrumbVO {}
- declare class SocialVO {}
+ /**
+ * Quantidade de segundos, a partir de 00:00:00, para alcançar determinada hora
+ */
+ 1: number;
}
-declare namespace com.fluig.sdk.api.task {
- declare class ResumedTasksVO {}
- declare class TaskKindEnum {}
- declare class TaskStatusEnum {}
-}
+/**
+ * Disponibiliza diversas funções para manipulação do processo
+ *
+ * Usar nos eventos do Processo.
+ */
+declare namespace hAPI {
+ /**
+ * Pega o valor de um campo do formulário
+ */
+ declare function getCardValue(nomeCampo: string): string;
-declare namespace com.fluig.sdk.api.workflow {
- declare class AssumeProcessTaskResultVO {
- getColleagueId(): string;
- getComplement(): string;
- getErrorCode(): string;
- getMessage(): string;
- getMovementSequence(): number;
- getProcessInstanceId(): number;
- getStatus(): com.fluig.sdk.api.enums.AssumeProcessTaskStatus;
- getTenantId(): number;
- setColleagueId(colleagueId: string): void;
- setComplement(complement: string): void;
- setErrorCode(errorCode: string): void;
- setMessage(message: string): void;
- setMovementSequence(movementSequence: number): void;
- setProcessInstanceId(processInstanceId: number): void;
- setStatus(status: com.fluig.sdk.api.enums.AssumeProcessTaskStatus): void;
- setTenantId(tenantId: number): void;
- }
+ /**
+ * Atribui valor a um campo do formulário
+ */
+ declare function setCardValue(nomeCampo: string, valor: string): string;
- declare class AssumeProcessTaskVO {
- getColleagueId(): string;
- getReplacementId(): string;
- getMovementSequence(): number;
- getProcessInstanceId(): number;
- setColleagueId(colleagueId: string): void;
- setReplacementId(replacementId: string): void;
- setMovementSequence(movementSequence: number): void;
- setProcessInstanceId(processInstanceId: number): void;
- }
-
- declare class AssumeProcessTasksResultVO {}
- declare class AssumeProcessTasksVO {}
- declare class AttachmentVO {}
- declare class CancelInstanceResultVO {}
- declare class CancelInstanceVO {}
- declare class CancelInstancesResultVO {}
- declare class CancelInstancesVO {}
- declare class CardIndexAttachmentVO {}
- declare class CardIndexVO {}
- declare class CardItemVO {}
- declare class ProcessAttachmentVO {}
- declare class ProcessDefinitionVO {}
- declare class ProcessDefinitionVersionVO {}
- declare class ProcessInstanceInfoVO {}
- declare class ProcessObservationVO {}
- declare class ProcessStateVO {}
- declare class ProcessTaskInfoVO {}
-
- declare class ProcessTaskVO {
- getColleagueId(): string;
- getComplement(): string;
- getSelectedColleagueId(): string;
- getCompanyId(): number;
- getMovementSequence(): number;
- getProcessInstanceId(): number;
- getTransferredSequence(): number;
- setColleagueId(colleagueId: string): void;
- setComplement(complement: string): void;
- setSelectedColleagueId(selectedColleagueId: string): void;
- setCompanyId(companyId: number): void;
- setMovementSequence(movementSequence: number): void;
- setProcessInstanceId(processInstanceId: number): void;
- setTransferredSequence(transferredSequence: number): void;
- }
-
- declare class ProcessVersionVO {}
- declare class RequestProcessTaskVO {}
- declare class RequestSLAVO {}
- declare class RequestTaskSLAVO {}
- declare class ResumeProcessTaskVO {}
- declare class ResumeRequestsSLAVO {}
- declare class WorkflowVO {}
-}
-
-declare namespace com.fluig.sdk.filter {
- declare class FilterFieldVO {}
- declare class FilterGroupResultVO {}
- declare class FilterGroupVO {}
- declare class FilterOrderVO {}
- declare class FilterResultVO {}
- declare class FilterVO {}
-}
-
-declare namespace com.fluig.sdk.identity {
- declare class UserAuthTokenSessionVO {}
-}
-
-declare namespace com.fluig.sdk.page {
- declare class PageMobileApiVO {}
- declare class PageWidgetMobileApiVO {}
- declare class PublicApiPageVO {}
-}
-
-declare namespace com.fluig.sdk.tenant {
- declare class AdminUserVO {}
- declare class TenantVO {}
-}
-
-declare namespace com.fluig.sdk.user {
- declare class ColleagueVO {}
- declare class UserPasswordVO {}
+ /**
+ * Adiciona um filho no formulário pai e filho do processo
+ *
+ * @param tableName Nome da tabela pai-filho
+ * @param cardData Mapa com os campos e valores
+ */
+ declare function addCardChild(tableName: string, cardData: java.util.HashMap): void;
/**
- * Representa um Usuário
+ * Encaminha o processo para uma determinada atividade
+ *
+ * Deve ser usado para tomar decisões em atividades automáticas de listener (AutomaticTasks).
+ *
+ * @example
+ * var colaboradores = new java.util.ArrayList();
+ * colaboradores.add("adm");
+ * hAPI.setAutomaticDecision(2, colaboradores, "Decisão Automática");
*/
- declare class UserVO {
- /**
- * Pega o e-mail
- */
- getEmail(): string
-
- /**
- * Pega o nome completo
- */
- getFullName(): string
-
- /**
- * Pega o primeiro nome
- */
- getFirstName(): string;
-
- /**
- * Pega o sobrenome
- */
- getLastName(): string;
-
- /**
- * Pega o login
- */
- getLogin(): string;
-
- /**
- * Pega o código
- */
- getCode(): string
-
- /**
- * Pega todos os dados extras
- */
- getExtData(): java.util.HashMap;
-
- /**
- * Pega um dado extra
- */
- getExtraData(key: string): object;
-
- /**
- * Pega os grupos
- */
- getGroups(): java.util.List;
-
- /**
- * Pega o ID
- */
- getId(): number;
+ declare function setAutomaticDecision(taskNumber: number, responsible: java.util.ArrayList, comment: string): void;
- /**
- * Informa se é um usuário Ativo
- */
- getIsActive(): boolean;
+ /**
+ * Pega todas as threads em execução de um processo
+ *
+ * @example
+ * var threads = hAPI.getActiveStates();
+ * log.info(threads.get(0));
+ */
+ declare function getActiveStates(): java.util.ArrayList