@sankhyalabs/sankhyablocks 9.2.0-dev.3 → 9.2.0-dev.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/snk-form_2.cjs.entry.js +27 -1
- package/dist/cjs/snk-grid.cjs.entry.js +51 -7
- package/dist/collection/components/snk-form/snk-form.js +133 -22
- package/dist/collection/components/snk-grid/snk-grid.js +300 -85
- package/dist/components/snk-form.js +29 -2
- package/dist/components/snk-grid2.js +51 -7
- package/dist/esm/loader.js +1 -1
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/snk-form_2.entry.js +27 -1
- package/dist/esm/snk-grid.entry.js +51 -7
- package/dist/sankhyablocks/p-6fa3d474.entry.js +1 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-form/snk-form.d.ts +29 -4
- package/dist/types/components/snk-grid/snk-grid.d.ts +100 -46
- package/dist/types/components.d.ts +154 -78
- package/package.json +4 -3
- package/dist/sankhyablocks/p-fa18530e.entry.js +0 -1
@@ -1554,7 +1554,11 @@ export namespace Components {
|
|
1554
1554
|
}
|
1555
1555
|
interface SnkForm {
|
1556
1556
|
/**
|
1557
|
-
* Registra um editor customizado para campos
|
1557
|
+
* Registra um editor customizado para campos do formulário.
|
1558
|
+
* @async
|
1559
|
+
* @param fieldName - Nome do campo.
|
1560
|
+
* @param customEditor - Editor customizado.
|
1561
|
+
* @returns
|
1558
1562
|
*/
|
1559
1563
|
"addCustomEditor": (fieldName: string, customEditor: ICustomEditor) => Promise<void>;
|
1560
1564
|
/**
|
@@ -1562,11 +1566,13 @@ export namespace Components {
|
|
1562
1566
|
*/
|
1563
1567
|
"configName": string;
|
1564
1568
|
/**
|
1565
|
-
* Chave da configuração
|
1569
|
+
* Chave da configuração legada do formulário.
|
1566
1570
|
*/
|
1567
1571
|
"formLegacyConfigName": string;
|
1568
1572
|
/**
|
1569
1573
|
* Fecha a janela de configurações do formulário.
|
1574
|
+
* @async
|
1575
|
+
* @returns
|
1570
1576
|
*/
|
1571
1577
|
"hideConfig": () => Promise<void>;
|
1572
1578
|
/**
|
@@ -1583,12 +1589,26 @@ export namespace Components {
|
|
1583
1589
|
"resourceID": string;
|
1584
1590
|
/**
|
1585
1591
|
* Altera/adiciona uma propriedade nos metadados do campo.
|
1592
|
+
* @async
|
1593
|
+
* @param fieldName - Nome do campo.
|
1594
|
+
* @param propName - Nome da propriedade.
|
1595
|
+
* @param value - Valor da propriedade.
|
1596
|
+
* @returns
|
1586
1597
|
*/
|
1587
1598
|
"setFieldProp": (fieldName: string, propName: string, value: any) => Promise<void>;
|
1588
1599
|
/**
|
1589
1600
|
* Exibe a janela de configurações do formulário.
|
1601
|
+
* @async
|
1602
|
+
* @returns
|
1590
1603
|
*/
|
1591
1604
|
"showConfig": () => Promise<void>;
|
1605
|
+
/**
|
1606
|
+
* Valida o formulário.
|
1607
|
+
* @async
|
1608
|
+
* @returns
|
1609
|
+
* @description Este método executa a validação do formulário, verificando se todos os campos estão preenchidos corretamente de acordo com as regras definidas. Se a validação falhar, uma exceção será lançada com os detalhes dos erros encontrados. Caso contrário, o método será resolvido sem erros.
|
1610
|
+
*/
|
1611
|
+
"validate": () => Promise<void>;
|
1592
1612
|
}
|
1593
1613
|
interface SnkFormConfig {
|
1594
1614
|
/**
|
@@ -1700,52 +1720,72 @@ export namespace Components {
|
|
1700
1720
|
}
|
1701
1721
|
interface SnkGrid {
|
1702
1722
|
/**
|
1703
|
-
* Lista de ações que devem ser usadas no botão "Mais opções" do
|
1723
|
+
* Lista de ações que devem ser usadas no botão "Mais opções" do `snk-taskbar`.
|
1704
1724
|
*/
|
1705
1725
|
"actionsList": Array<Action>;
|
1706
1726
|
/**
|
1707
|
-
* Registra um editor customizado para
|
1727
|
+
* Registra um editor customizado para um campo da grade ou formulário.
|
1728
|
+
* @async
|
1729
|
+
* @description Adiciona um componente de edição personalizado para um campo específico. Este editor será usado tanto na edição em linha na grade quanto em formulários de detalhe.
|
1730
|
+
* @param fieldName O nome do campo que receberá o editor customizado.
|
1731
|
+
* @param customEditor A instância do editor customizado.
|
1732
|
+
* @param detailContext O contexto de detalhe onde o editor será aplicado (opcional).
|
1733
|
+
* @returns Uma promessa que é resolvida quando o editor é registrado.
|
1708
1734
|
*/
|
1709
1735
|
"addCustomEditor": (fieldName: string, customEditor: ICustomEditor, detailContext?: string) => Promise<void>;
|
1710
1736
|
/**
|
1711
|
-
* Registra um formatador de
|
1737
|
+
* Registra um formatador de valor customizado para uma coluna da grade.
|
1738
|
+
* @async
|
1739
|
+
* @description Adiciona uma função de formatação personalizada para os valores de uma coluna específica, afetando como os dados são exibidos.
|
1740
|
+
* @param columnName O nome da coluna que receberá o formatador.
|
1741
|
+
* @param customFormatter A instância do formatador de valor.
|
1742
|
+
* @returns Uma promessa que é resolvida quando o formatador é registrado.
|
1712
1743
|
*/
|
1713
1744
|
"addCustomValueFormatter": (columnName: string, customFormatter: ICustomFormatter) => Promise<void>;
|
1714
1745
|
/**
|
1715
|
-
* Registra um
|
1746
|
+
* Registra um renderizador customizado para uma coluna da grade.
|
1747
|
+
* @async
|
1748
|
+
* @description Adiciona um componente de renderização personalizado para uma coluna específica, permitindo a exibição de conteúdo customizado nas células.
|
1749
|
+
* @param fieldName O nome do campo (coluna) que receberá o renderizador customizado.
|
1750
|
+
* @param customRender A instância do renderizador customizado.
|
1751
|
+
* @param detailContext O contexto de detalhe onde o renderizador será aplicado (opcional).
|
1752
|
+
* @returns Uma promessa que é resolvida quando o renderizador é registrado.
|
1716
1753
|
*/
|
1717
1754
|
"addGridCustomRender": (fieldName: string, customRender: ICustomRender, detailContext?: string) => Promise<void>;
|
1718
1755
|
/**
|
1719
|
-
* Define se a
|
1756
|
+
* Define se a grade receberá o foco automaticamente ao ser carregada.
|
1720
1757
|
*/
|
1721
1758
|
"autoFocus"?: boolean;
|
1722
1759
|
/**
|
1723
|
-
* Define se
|
1760
|
+
* Define se os dados serão carregados automaticamente na inicialização do componente.
|
1724
1761
|
*/
|
1725
1762
|
"autoLoad"?: boolean;
|
1726
1763
|
/**
|
1727
|
-
* Define se a edição
|
1764
|
+
* Define se a edição de dados na grade está habilitada.
|
1728
1765
|
*/
|
1729
1766
|
"canEdit": boolean;
|
1767
|
+
/**
|
1768
|
+
* Define o data source para o filtro de colunas.
|
1769
|
+
*/
|
1730
1770
|
"columnFilterDataSource": IMultiSelectionListDataSource;
|
1731
1771
|
/**
|
1732
|
-
* Define se a grade deve ser exibida em modo compacto
|
1772
|
+
* Define se a grade deve ser exibida em modo compacto.
|
1733
1773
|
*/
|
1734
1774
|
"compact": boolean;
|
1735
1775
|
/**
|
1736
|
-
* Nome usado para salvar
|
1776
|
+
* Nome usado para salvar e recuperar a configuração da grade.
|
1737
1777
|
*/
|
1738
1778
|
"configName": string;
|
1739
1779
|
/**
|
1740
|
-
* Desabilita a apresentação da opção de filtros personalizados na
|
1780
|
+
* Desabilita a apresentação da opção de filtros personalizados na barra de filtros (chip de filtros) e no modal lateral de filtros (contêiner de filtros personalizados).
|
1741
1781
|
*/
|
1742
1782
|
"disablePersonalizedFilter": boolean;
|
1743
1783
|
/**
|
1744
|
-
*
|
1784
|
+
* Habilita a inserção de registros diretamente na grade.
|
1745
1785
|
*/
|
1746
1786
|
"enableGridInsert"?: boolean;
|
1747
1787
|
/**
|
1748
|
-
* Define se o componente deve usar o LockManager para controle de carregamento da aplicação
|
1788
|
+
* Define se o componente deve usar o LockManager para controle de carregamento da aplicação.
|
1749
1789
|
*/
|
1750
1790
|
"enableLockManagerLoadingComp"?: boolean;
|
1751
1791
|
/**
|
@@ -1753,31 +1793,37 @@ export namespace Components {
|
|
1753
1793
|
*/
|
1754
1794
|
"enableLockManagerTaskbarClick"?: boolean;
|
1755
1795
|
/**
|
1756
|
-
* Chave da configuração
|
1796
|
+
* Chave da configuração legada da barra de filtros.
|
1757
1797
|
*/
|
1758
1798
|
"filterBarLegacyConfigName": string;
|
1759
1799
|
/**
|
1760
|
-
* Título que será apresentado na barra de filtros
|
1800
|
+
* Título que será apresentado na barra de filtros.
|
1761
1801
|
*/
|
1762
1802
|
"filterBarTitle": string;
|
1763
1803
|
/**
|
1764
|
-
* Retorna o elemento da
|
1804
|
+
* Retorna o elemento da barra de filtros da grade.
|
1805
|
+
* @async
|
1806
|
+
* @description Este método permite acessar o elemento da barra de filtros, que pode ser útil para manipulações adicionais ou para obter o estado atual dos filtros aplicados.
|
1807
|
+
* @returns O elemento da barra de filtros.
|
1765
1808
|
*/
|
1766
1809
|
"getFilterBar": () => Promise<HTMLSnkFilterBarElement>;
|
1767
1810
|
/**
|
1768
|
-
*
|
1811
|
+
* Define o nome do slot para elementos customizados na `Taskbar` do cabeçalho da grade.
|
1769
1812
|
*/
|
1770
1813
|
"gridHeaderCustomSlotId": string;
|
1771
1814
|
/**
|
1772
|
-
* Chave da configuração
|
1815
|
+
* Chave da configuração legada da grade.
|
1773
1816
|
*/
|
1774
1817
|
"gridLegacyConfigName": string;
|
1775
1818
|
/**
|
1776
1819
|
* Fecha a janela de configurações da grade.
|
1820
|
+
* @async
|
1821
|
+
* @description Este método fecha o pop-up de configuração de colunas da grade.
|
1822
|
+
* @returns Uma promessa que é resolvida quando a janela de configuração é fechada.
|
1777
1823
|
*/
|
1778
1824
|
"hideConfig": () => Promise<void>;
|
1779
1825
|
/**
|
1780
|
-
* Determina se a grade está vinculada a um detalhe.
|
1826
|
+
* Determina se a grade está vinculada a um detalhe de outra tela.
|
1781
1827
|
*/
|
1782
1828
|
"isDetail": boolean;
|
1783
1829
|
/**
|
@@ -1785,92 +1831,114 @@ export namespace Components {
|
|
1785
1831
|
*/
|
1786
1832
|
"messagesBuilder": SnkMessageBuilder;
|
1787
1833
|
/**
|
1788
|
-
* Habilita a edição de múltiplos registros
|
1834
|
+
* Habilita a edição de múltiplos registros simultaneamente.
|
1789
1835
|
*/
|
1790
1836
|
"multipleEditionEnabled": boolean;
|
1791
1837
|
/**
|
1792
|
-
* Determina se
|
1838
|
+
* Determina se a seleção de múltiplas linhas é permitida.
|
1793
1839
|
*/
|
1794
1840
|
"multipleSelection": boolean;
|
1795
1841
|
/**
|
1796
|
-
* Altera
|
1842
|
+
* Altera a aparência das bordas e sombras do componente. Se `false`, aplica o padrão de sombras (ideal para o elemento principal do layout). Se `true`, aplica um contorno (ideal para quando o componente está dentro de outro, como um painel ou pop-up).
|
1797
1843
|
*/
|
1798
1844
|
"outlineMode"?: boolean;
|
1799
1845
|
/**
|
1800
|
-
* Define
|
1846
|
+
* Define o modo de exibição do contador de paginação.
|
1801
1847
|
*/
|
1802
1848
|
"paginationCounterMode"?: 'show' | 'hidden' | 'auto';
|
1803
1849
|
/**
|
1804
|
-
* Altera o modo de apresentação dos botões do snk-taskbar
|
1850
|
+
* Altera o modo de apresentação dos botões do `snk-taskbar`.
|
1805
1851
|
*/
|
1806
1852
|
"presentationMode": PresentationMode1;
|
1807
1853
|
/**
|
1808
|
-
* Validador responsável por
|
1854
|
+
* Validador responsável por verificar a integridade dos dados de um registro.
|
1809
1855
|
*/
|
1810
1856
|
"recordsValidator": IRecordValidator;
|
1857
|
+
/**
|
1858
|
+
* Recarrega a configuração da grade.
|
1859
|
+
* @description Este método força o recarregamento da configuração da grade a partir do `ConfigStorage`. A operação é assíncrona, mas o método não aguarda sua conclusão.
|
1860
|
+
*/
|
1811
1861
|
"reloadConfig": () => Promise<void>;
|
1812
1862
|
/**
|
1813
|
-
*
|
1863
|
+
* Recarrega a barra de filtros da grade, buscando o estado do servidor.
|
1864
|
+
* @async
|
1865
|
+
* @description Força o recarregamento da barra de filtros, atualizando suas configurações e filtros a partir do servidor.
|
1866
|
+
* @returns Uma promessa que é resolvida quando a barra de filtros é recarregada.
|
1814
1867
|
*/
|
1815
1868
|
"reloadFilterBar": () => Promise<void>;
|
1816
1869
|
/**
|
1817
|
-
* Remove
|
1870
|
+
* Remove um formatador de valor customizado de uma coluna da grade.
|
1871
|
+
* @async
|
1872
|
+
* @description Remove uma função de formatação personalizada previamente registrada para uma coluna.
|
1873
|
+
* @param columnName O nome da coluna da qual o formatador será removido.
|
1874
|
+
* @returns Uma promessa que é resolvida quando o formatador é removido.
|
1818
1875
|
*/
|
1819
1876
|
"removeCustomValueFormatter": (columnName: string) => Promise<void>;
|
1820
1877
|
/**
|
1821
|
-
* Identificador de recursos como configurações e acesso.
|
1878
|
+
* Identificador de recursos, como configurações e permissões de acesso.
|
1822
1879
|
*/
|
1823
1880
|
"resourceID": string;
|
1824
1881
|
/**
|
1825
|
-
* Configuração
|
1882
|
+
* Configuração do toast de seleção da grade.
|
1826
1883
|
*/
|
1827
1884
|
"selectionToastConfig": ISelectionToastConfig;
|
1828
1885
|
/**
|
1829
|
-
*
|
1886
|
+
* Define a configuração da grade.
|
1887
|
+
* @async
|
1888
|
+
* @description Aplica uma nova configuração de colunas e ordenação à grade.
|
1889
|
+
* @param config O objeto de configuração a ser aplicado na grade.
|
1890
|
+
* @returns Uma promessa que é resolvida quando a configuração é aplicada.
|
1830
1891
|
*/
|
1831
1892
|
"setConfig": (config: IGridConfig) => Promise<void>;
|
1832
1893
|
/**
|
1833
1894
|
* Atribui o foco para a grade.
|
1895
|
+
* @async
|
1896
|
+
* @description Move o foco do navegador para o componente da grade, permitindo a navegação por teclado.
|
1897
|
+
* @returns Uma promessa que é resolvida quando o foco é atribuído.
|
1834
1898
|
*/
|
1835
1899
|
"setFocus": () => Promise<void>;
|
1836
1900
|
/**
|
1837
1901
|
* Exibe a janela de configurações da grade.
|
1902
|
+
* @async
|
1903
|
+
* @description Este método abre o pop-up de configuração de colunas da grade, permitindo ao usuário ajustar a visibilidade, ordem e largura das colunas.
|
1904
|
+
* @returns Uma promessa que é resolvida quando a janela de configuração é exibida.
|
1838
1905
|
*/
|
1839
1906
|
"showConfig": () => Promise<void>;
|
1840
1907
|
/**
|
1841
|
-
*
|
1908
|
+
* Define a configuração de cores para a coluna de status.
|
1909
|
+
* @example ```json '{ "RECDESP": { "-1" : "#BD0025", "1" : "#157A00" } }' ```
|
1842
1910
|
*/
|
1843
1911
|
"statusResolver": IStatusResolver | StatusResolverFunction;
|
1844
1912
|
/**
|
1845
|
-
*
|
1913
|
+
* Define o modo de exportação dos dados.
|
1846
1914
|
*/
|
1847
1915
|
"strategyExporter": IExporterStrategyMode;
|
1848
1916
|
/**
|
1849
|
-
* Informa se a coluna de
|
1917
|
+
* Informa se a coluna de checkbox deve ser suprimida.
|
1850
1918
|
*/
|
1851
1919
|
"suppressCheckboxColumn": boolean;
|
1852
1920
|
/**
|
1853
|
-
* Define se a grade deve suprimir
|
1921
|
+
* Define se a grade deve suprimir a barra de rolagem horizontal.
|
1854
1922
|
*/
|
1855
1923
|
"suppressHorizontalScroll": boolean;
|
1856
1924
|
/**
|
1857
|
-
* Define o identificador do
|
1925
|
+
* Define o identificador do contêiner de elementos customizados da `Taskbar`.
|
1858
1926
|
*/
|
1859
1927
|
"taskbarCustomContainerId": string;
|
1860
1928
|
/**
|
1861
|
-
* Gerenciador das barras de tarefas.
|
1929
|
+
* Gerenciador das barras de tarefas. Permite determinar botões específicos ou gerenciar o estado dos botões.
|
1862
1930
|
*/
|
1863
1931
|
"taskbarManager": TaskbarManager;
|
1864
1932
|
/**
|
1865
|
-
*
|
1933
|
+
* Define o nome do slot para elementos customizados na `Taskbar` principal do componente.
|
1866
1934
|
*/
|
1867
1935
|
"topTaskbarCustomSlotId": string;
|
1868
1936
|
/**
|
1869
|
-
* Quando
|
1937
|
+
* Quando `true`, a tecla ENTER navega entre as células como a tecla TAB.
|
1870
1938
|
*/
|
1871
1939
|
"useEnterLikeTab": boolean;
|
1872
1940
|
/**
|
1873
|
-
* Define se a grade deve exibir um buscador de
|
1941
|
+
* Define se a grade deve exibir um buscador de colunas ao pressionar `Ctrl+F`.
|
1874
1942
|
*/
|
1875
1943
|
"useSearchColumn": boolean;
|
1876
1944
|
}
|
@@ -4099,7 +4167,7 @@ declare namespace LocalJSX {
|
|
4099
4167
|
*/
|
4100
4168
|
"configName"?: string;
|
4101
4169
|
/**
|
4102
|
-
* Chave da configuração
|
4170
|
+
* Chave da configuração legada do formulário.
|
4103
4171
|
*/
|
4104
4172
|
"formLegacyConfigName"?: string;
|
4105
4173
|
/**
|
@@ -4107,15 +4175,15 @@ declare namespace LocalJSX {
|
|
4107
4175
|
*/
|
4108
4176
|
"messagesBuilder"?: SnkMessageBuilder;
|
4109
4177
|
/**
|
4110
|
-
*
|
4178
|
+
* @deprecated Esta propriedade foi descontinuada. Ela não tem mais efeito sobre o componente.
|
4111
4179
|
*/
|
4112
4180
|
"onActionClick"?: (event: SnkFormCustomEvent<string>) => void;
|
4113
4181
|
/**
|
4114
|
-
*
|
4182
|
+
* @deprecated Esta propriedade foi descontinuada. Ela não tem mais efeito sobre o componente.
|
4115
4183
|
*/
|
4116
4184
|
"onExit"?: (event: SnkFormCustomEvent<void>) => void;
|
4117
4185
|
/**
|
4118
|
-
* Responsável por notificar quando ocorrer a renderização de itens do formulário.
|
4186
|
+
* Responsável por notificar quando ocorrer a renderização de itens do formulário. OBS: Emitido no subcomponente snk-form-view
|
4119
4187
|
*/
|
4120
4188
|
"onFormItemsReady"?: (event: SnkFormCustomEvent<Array<HTMLElement>>) => void;
|
4121
4189
|
/**
|
@@ -4244,40 +4312,43 @@ declare namespace LocalJSX {
|
|
4244
4312
|
}
|
4245
4313
|
interface SnkGrid {
|
4246
4314
|
/**
|
4247
|
-
* Lista de ações que devem ser usadas no botão "Mais opções" do
|
4315
|
+
* Lista de ações que devem ser usadas no botão "Mais opções" do `snk-taskbar`.
|
4248
4316
|
*/
|
4249
4317
|
"actionsList"?: Array<Action>;
|
4250
4318
|
/**
|
4251
|
-
* Define se a
|
4319
|
+
* Define se a grade receberá o foco automaticamente ao ser carregada.
|
4252
4320
|
*/
|
4253
4321
|
"autoFocus"?: boolean;
|
4254
4322
|
/**
|
4255
|
-
* Define se
|
4323
|
+
* Define se os dados serão carregados automaticamente na inicialização do componente.
|
4256
4324
|
*/
|
4257
4325
|
"autoLoad"?: boolean;
|
4258
4326
|
/**
|
4259
|
-
* Define se a edição
|
4327
|
+
* Define se a edição de dados na grade está habilitada.
|
4260
4328
|
*/
|
4261
4329
|
"canEdit"?: boolean;
|
4330
|
+
/**
|
4331
|
+
* Define o data source para o filtro de colunas.
|
4332
|
+
*/
|
4262
4333
|
"columnFilterDataSource"?: IMultiSelectionListDataSource;
|
4263
4334
|
/**
|
4264
|
-
* Define se a grade deve ser exibida em modo compacto
|
4335
|
+
* Define se a grade deve ser exibida em modo compacto.
|
4265
4336
|
*/
|
4266
4337
|
"compact"?: boolean;
|
4267
4338
|
/**
|
4268
|
-
* Nome usado para salvar
|
4339
|
+
* Nome usado para salvar e recuperar a configuração da grade.
|
4269
4340
|
*/
|
4270
4341
|
"configName"?: string;
|
4271
4342
|
/**
|
4272
|
-
* Desabilita a apresentação da opção de filtros personalizados na
|
4343
|
+
* Desabilita a apresentação da opção de filtros personalizados na barra de filtros (chip de filtros) e no modal lateral de filtros (contêiner de filtros personalizados).
|
4273
4344
|
*/
|
4274
4345
|
"disablePersonalizedFilter"?: boolean;
|
4275
4346
|
/**
|
4276
|
-
*
|
4347
|
+
* Habilita a inserção de registros diretamente na grade.
|
4277
4348
|
*/
|
4278
4349
|
"enableGridInsert"?: boolean;
|
4279
4350
|
/**
|
4280
|
-
* Define se o componente deve usar o LockManager para controle de carregamento da aplicação
|
4351
|
+
* Define se o componente deve usar o LockManager para controle de carregamento da aplicação.
|
4281
4352
|
*/
|
4282
4353
|
"enableLockManagerLoadingComp"?: boolean;
|
4283
4354
|
/**
|
@@ -4285,23 +4356,23 @@ declare namespace LocalJSX {
|
|
4285
4356
|
*/
|
4286
4357
|
"enableLockManagerTaskbarClick"?: boolean;
|
4287
4358
|
/**
|
4288
|
-
* Chave da configuração
|
4359
|
+
* Chave da configuração legada da barra de filtros.
|
4289
4360
|
*/
|
4290
4361
|
"filterBarLegacyConfigName"?: string;
|
4291
4362
|
/**
|
4292
|
-
* Título que será apresentado na barra de filtros
|
4363
|
+
* Título que será apresentado na barra de filtros.
|
4293
4364
|
*/
|
4294
4365
|
"filterBarTitle"?: string;
|
4295
4366
|
/**
|
4296
|
-
*
|
4367
|
+
* Define o nome do slot para elementos customizados na `Taskbar` do cabeçalho da grade.
|
4297
4368
|
*/
|
4298
4369
|
"gridHeaderCustomSlotId"?: string;
|
4299
4370
|
/**
|
4300
|
-
* Chave da configuração
|
4371
|
+
* Chave da configuração legada da grade.
|
4301
4372
|
*/
|
4302
4373
|
"gridLegacyConfigName"?: string;
|
4303
4374
|
/**
|
4304
|
-
* Determina se a grade está vinculada a um detalhe.
|
4375
|
+
* Determina se a grade está vinculada a um detalhe de outra tela.
|
4305
4376
|
*/
|
4306
4377
|
"isDetail"?: boolean;
|
4307
4378
|
/**
|
@@ -4309,83 +4380,88 @@ declare namespace LocalJSX {
|
|
4309
4380
|
*/
|
4310
4381
|
"messagesBuilder"?: SnkMessageBuilder;
|
4311
4382
|
/**
|
4312
|
-
* Habilita a edição de múltiplos registros
|
4383
|
+
* Habilita a edição de múltiplos registros simultaneamente.
|
4313
4384
|
*/
|
4314
4385
|
"multipleEditionEnabled"?: boolean;
|
4315
4386
|
/**
|
4316
|
-
* Determina se
|
4387
|
+
* Determina se a seleção de múltiplas linhas é permitida.
|
4317
4388
|
*/
|
4318
4389
|
"multipleSelection"?: boolean;
|
4319
4390
|
/**
|
4320
|
-
* Emitido
|
4391
|
+
* Emitido ao clicar em um botão de ação ou item de menu.
|
4392
|
+
* @description Este evento é acionado quando o usuário clica em um botão de ação ou item de menu na grade, permitindo a execução de ações específicas.
|
4393
|
+
* @param detail - O identificador da ação clicada, que pode ser usado para determinar qual ação executar.
|
4321
4394
|
*/
|
4322
4395
|
"onActionClick"?: (event: SnkGridCustomEvent<string>) => void;
|
4323
4396
|
/**
|
4324
|
-
*
|
4397
|
+
* @deprecated Esta propriedade foi descontinuada. Ela não tem mais efeito sobre o componente.
|
4325
4398
|
*/
|
4326
4399
|
"onComponentReady"?: (event: SnkGridCustomEvent<void>) => void;
|
4327
4400
|
/**
|
4328
|
-
* Emitido
|
4401
|
+
* Emitido ao realizar um duplo clique em uma linha da grade.
|
4402
|
+
* @description Este evento é acionado quando o usuário clica duas vezes em uma linha da grade, permitindo ações como edição rápida ou visualização de detalhes.
|
4403
|
+
* @param detail - Detalhes do evento, contendo a linha clicada.
|
4329
4404
|
*/
|
4330
4405
|
"onGridDoubleClick"?: (event: SnkGridCustomEvent<any>) => void;
|
4331
4406
|
/**
|
4332
|
-
* Altera
|
4407
|
+
* Altera a aparência das bordas e sombras do componente. Se `false`, aplica o padrão de sombras (ideal para o elemento principal do layout). Se `true`, aplica um contorno (ideal para quando o componente está dentro de outro, como um painel ou pop-up).
|
4333
4408
|
*/
|
4334
4409
|
"outlineMode"?: boolean;
|
4335
4410
|
/**
|
4336
|
-
* Define
|
4411
|
+
* Define o modo de exibição do contador de paginação.
|
4337
4412
|
*/
|
4338
4413
|
"paginationCounterMode"?: 'show' | 'hidden' | 'auto';
|
4339
4414
|
/**
|
4340
|
-
* Altera o modo de apresentação dos botões do snk-taskbar
|
4415
|
+
* Altera o modo de apresentação dos botões do `snk-taskbar`.
|
4341
4416
|
*/
|
4342
4417
|
"presentationMode"?: PresentationMode1;
|
4343
4418
|
/**
|
4344
|
-
* Validador responsável por
|
4419
|
+
* Validador responsável por verificar a integridade dos dados de um registro.
|
4345
4420
|
*/
|
4346
4421
|
"recordsValidator"?: IRecordValidator;
|
4347
4422
|
/**
|
4348
|
-
* Identificador de recursos como configurações e acesso.
|
4423
|
+
* Identificador de recursos, como configurações e permissões de acesso.
|
4349
4424
|
*/
|
4350
4425
|
"resourceID"?: string;
|
4351
4426
|
/**
|
4352
|
-
* Configuração
|
4427
|
+
* Configuração do toast de seleção da grade.
|
4353
4428
|
*/
|
4354
4429
|
"selectionToastConfig"?: ISelectionToastConfig;
|
4355
4430
|
/**
|
4356
|
-
*
|
4431
|
+
* Define a configuração de cores para a coluna de status.
|
4432
|
+
* @example ```json '{ "RECDESP": { "-1" : "#BD0025", "1" : "#157A00" } }' ```
|
4357
4433
|
*/
|
4358
4434
|
"statusResolver"?: IStatusResolver | StatusResolverFunction;
|
4359
4435
|
/**
|
4360
|
-
*
|
4436
|
+
* Define o modo de exportação dos dados.
|
4361
4437
|
*/
|
4362
4438
|
"strategyExporter"?: IExporterStrategyMode;
|
4363
4439
|
/**
|
4364
|
-
* Informa se a coluna de
|
4440
|
+
* Informa se a coluna de checkbox deve ser suprimida.
|
4365
4441
|
*/
|
4366
4442
|
"suppressCheckboxColumn"?: boolean;
|
4367
4443
|
/**
|
4368
|
-
* Define se a grade deve suprimir
|
4444
|
+
* Define se a grade deve suprimir a barra de rolagem horizontal.
|
4369
4445
|
*/
|
4370
4446
|
"suppressHorizontalScroll"?: boolean;
|
4371
4447
|
/**
|
4372
|
-
* Define o identificador do
|
4448
|
+
* Define o identificador do contêiner de elementos customizados da `Taskbar`.
|
4373
4449
|
*/
|
4374
4450
|
"taskbarCustomContainerId"?: string;
|
4375
4451
|
/**
|
4376
|
-
* Gerenciador das barras de tarefas.
|
4452
|
+
* Gerenciador das barras de tarefas. Permite determinar botões específicos ou gerenciar o estado dos botões.
|
4377
4453
|
*/
|
4378
4454
|
"taskbarManager"?: TaskbarManager;
|
4379
4455
|
/**
|
4380
|
-
*
|
4456
|
+
* Define o nome do slot para elementos customizados na `Taskbar` principal do componente.
|
4381
4457
|
*/
|
4382
4458
|
"topTaskbarCustomSlotId"?: string;
|
4383
4459
|
/**
|
4384
|
-
* Quando
|
4460
|
+
* Quando `true`, a tecla ENTER navega entre as células como a tecla TAB.
|
4385
4461
|
*/
|
4386
4462
|
"useEnterLikeTab"?: boolean;
|
4387
4463
|
/**
|
4388
|
-
* Define se a grade deve exibir um buscador de
|
4464
|
+
* Define se a grade deve exibir um buscador de colunas ao pressionar `Ctrl+F`.
|
4389
4465
|
*/
|
4390
4466
|
"useSearchColumn"?: boolean;
|
4391
4467
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@sankhyalabs/sankhyablocks",
|
3
|
-
"version": "9.2.0-dev.
|
3
|
+
"version": "9.2.0-dev.5",
|
4
4
|
"description": "Stencil Component Starter",
|
5
5
|
"main": "dist/index.cjs.js",
|
6
6
|
"module": "dist/index.js",
|
@@ -21,9 +21,10 @@
|
|
21
21
|
],
|
22
22
|
"scripts": {
|
23
23
|
"prebuild": "(test -f ./src/components.d.ts && git checkout ./src/components.d.ts) || true",
|
24
|
-
"build": "stencil build --docs",
|
25
|
-
"build.prod": "npm run prebuild && stencil build --docs --prod",
|
24
|
+
"build": "stencil build --docs && npm run formatdocs",
|
25
|
+
"build.prod": "npm run prebuild && stencil build --docs --prod && npm run formatdocs",
|
26
26
|
"build.with.peerdeps": "stencil build --docs --prod --force-peer-deps",
|
27
|
+
"formatdocs": "node ./scripts/format-docs.js",
|
27
28
|
"start": "stencil build --dev --watch --serve --force-peer-deps",
|
28
29
|
"test": "stencil test --spec --e2e --coverage --silent --testResultsProcessor jest-sonar-reporter --runInBand",
|
29
30
|
"test.dev": "stencil test --spec --e2e",
|
@@ -1 +0,0 @@
|
|
1
|
-
import{r as i,c as t,h as s,g as e,H as h}from"./p-d8d8169b.js";import{ElementIDUtils as a,ObjectUtils as o,ApplicationContext as n}from"@sankhyalabs/core";import{S as d}from"./p-1210500e.js";import{R as l}from"./p-688dcb4c.js";import{buildFormConfigFromDataUnit as r}from"@sankhyalabs/ezui/dist/collection/utils/form";import{b as c,a as f,g,u as m,c as u}from"./p-8f73da95.js";import{a as v,G as p}from"./p-9019a32f.js";import{ApplicationUtils as C}from"@sankhyalabs/ezui/dist/collection/utils";import{U as b}from"./p-c6331595.js";import"./p-3dba3468.js";import"./p-0dac8fef.js";import"./p-8d884fab.js";import"@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata";import"./p-ff1990ad.js";const y=class{constructor(s){i(this,s),this.exit=t(this,"exit",7),this.actionClick=t(this,"actionClick",7),this.formItemsReady=t(this,"formItemsReady",7),this._customEditors=new Map,this._dataUnit=void 0,this._dataState=void 0,this._showFormConfig=!1,this._configManager=void 0,this.configName=void 0,this.recordsValidator=void 0,this.messagesBuilder=void 0,this.formLegacyConfigName=void 0,this.resourceID=void 0}async showConfig(){this._showFormConfig=!0}async hideConfig(){this._showFormConfig=!1}async addCustomEditor(i,t){if(this._form)return void this._form.addCustomEditor(i,t);const s=new Map(this._customEditors);s.set(i,t),this._customEditors=s}async setFieldProp(i,t,s){await this._form.setFieldProp(i,t,s)}closeConfig(){this.hideConfig()}dataunitReady(){a.addIDInfo(this._element,null,{dataUnit:this._dataUnit})}setCustomEditors(){if(this._form)for(const[i,t]of this._customEditors)this._form.addCustomEditor(i,t),this._customEditors.delete(i)}async componentDidRender(){this.setCustomEditors()}async componentWillLoad(){let i=this._element.parentElement;for(;i;){if("SNK-DATA-UNIT"===i.tagName.toUpperCase()){this._snkDataUnit=i,this._dataUnit=this._snkDataUnit.dataUnit,this._dataState=this._snkDataUnit.dataState,this._dataUnit?this.dataunitReady():this._snkDataUnit.addEventListener("dataUnitReady",(i=>{this._dataUnit=i.detail})),this._snkDataUnit.addEventListener("dataStateChange",this.handleDataStateChange.bind(this));break}i=i.parentElement}null==this.resourceID&&(this.resourceID=await l.getResourceID()),this._configManager=new d(this.configName,this.resourceID,void 0,this._dataUnit),this.addFormLegacyConfig(),await this._configManager.loadConfig()}async handleDataStateChange(i){var t;this._dataState=i.detail;const s=await this._snkDataUnit.getFieldsWithRmPrecision();for(const i of s||[]){if(!i)continue;const s=null===(t=this._dataState.rowMetadata)||void 0===t?void 0:t.getProp("rm_precision",i);(s||0===s)&&(await this.setFieldProp(i,"precision",s),await this.setFieldProp(i,"prettyPrecision",s))}}addFormLegacyConfig(){this.formLegacyConfigName&&this._configManager.addFormLegacyConfig(this.formLegacyConfigName)}render(){if(this._dataUnit&&this._dataState)return s("section",null,s("div",{class:"ez-row"},s("div",{class:"ez-col ez-col--sd-12"},s("ez-form",{ref:i=>this._form=i,key:"ezForm"+this._snkDataUnit.entityName,"data-element-id":"embedded",dataUnit:this._dataUnit,config:this._configManager.getConfig(this._dataUnit),recordsValidator:this.recordsValidator,class:this._showFormConfig?"snk-form__form--hidden":""}),this._showFormConfig&&s("snk-form-config",{messagesBuilder:this.messagesBuilder,dataUnit:this._dataUnit,configManager:this._configManager,onConfigClose:()=>this.closeConfig()}))))}get _element(){return e(this)}};y.style=".sc-snk-form-h{--snk-form__header--min-height:94px;display:block}.snk-form__form--hidden.sc-snk-form{display:none}";const k=class{constructor(s){i(this,s),this.configClose=t(this,"configClose",7),this.configChange=t(this,"configChange",7),this.guidesMap=new Map,this.availableFields=[],this.guidesList=[],this.groupsList=[],this.selectedGuide=void 0,this._formConfig={},this.configOptions=[],this.originalConfigSelected=void 0,this.configSelected=void 0,this.hasChanges=!1,this.optionConfigChanged=!1,this.dataUnit=void 0,this.configManager=void 0,this.ignoreReadOnlyFormFields=void 0,this.messagesBuilder=void 0}handleFieldConfigChanged(){this.hasChanges=!0}async handleFormConfigOptionSelected({detail:i}){this.configSelected=i,await this.loadConfigByUser(),this.selectedGuide=void 0,this.optionConfigChanged=!o.equals(this.configSelected,this.originalConfigSelected),this.configSelected.origin===b.DEFAULT&&(this.hasChanges=!1)}async handleAddFieldToGuide({detail:i}){var t;this.selectedGuide?(this.availableFields=[...this.availableFields.filter((t=>t.name!==i.name))],await(null===(t=this.refFieldsLayout)||void 0===t?void 0:t.addFieldToLayout(i))):this.showNoGuideSelectedDialog()}async handleSetFieldAsAvailable({detail:i}){this.availableFields.some((t=>t.name===i.name))||(this.availableFields=[...this.availableFields,i])}async handleRemoveFieldFromAvailable({detail:i}){this.availableFields=this.availableFields.filter((t=>t.name!==i.name))}observeSelectedGuide(i){var t;const s=null!==(t=this.guidesMap.get(null==i?void 0:i.name))&&void 0!==t?t:[];this.groupsList=[...s]}observeConfigManager(){this.loadFormConfig()}showNoGuideSelectedDialog(){const i=this.getMessage("snkFormConfig.noGuideSelected.title"),t=this.getMessage("snkFormConfig.noGuideSelected.message");C.alert(i,t)}getMessage(i,t){return this.messagesBuilder.getMessage(i,t)}async initializeUserConfig(){if(null!=this.configManager)try{const i=await this.configManager.fetchUserAvailableConfigs();this.configOptions=i;const t=null==this._formConfig||this._formConfig.defaultConfiguration?b.DEFAULT:b.USER;this.configSelected=i.find((i=>i.origin===t)),this.originalConfigSelected=i.find((i=>i.origin===t))}catch(i){console.error(this.getMessage("snkFormConfig.errors.failFetchUserConfig")),console.error(i)}}async loadConfigByUser(){this.configManager&&this.configSelected&&(this.isConfigDefaultSelected()?await this.handleLoadDefaultConfig():this.loadFormConfig())}async handleLoadDefaultConfig(){const i=await this.configManager.fetchDefaultConfig();if(i)return void this.loadFormConfig(i);const t=this.configManager.getEmptyConfig();t&&this.loadFormConfig(t)}isConfigDefaultSelected(){return this.configSelected.origin===b.DEFAULT}loadFormConfig(i){this._formConfig=i||this.getConfig(),this.loadGuides(),this.initializeAvailableFields()}initializeAvailableFields(){var i;if(null==(null===(i=this._formConfig)||void 0===i?void 0:i.fields))return;const t=[...this._formConfig.fields];this.availableFields=this.dataUnit.metadata.fields.filter((({name:i,visible:s,properties:e})=>{const h=t.some((({name:t})=>t===i));return h||!0!==e.visibleOnConfig||s?!0===s&&!1===h:e.visibleOnConfig}))}loadGuides(){var i;this.guidesList=[...c(this._formConfig,this.getMessage("snkFormConfig.form.mainArea"))],this.guidesMap=f(null===(i=this._formConfig)||void 0===i?void 0:i.fields,this.guidesList,this.dataUnit,this.getMessage("snkFormConfig.form.tabGeneral"))}getConfig(){let i=this.configManager.getConfig(this.dataUnit,!1);return i.fields&&0===i.fields.length&&(i=void 0),null==i&&(i=r(this.dataUnit)),o.copy(i)}handleSelectGuide({detail:i}){this.selectedGuide=i}handleLayoutChanged({detail:i}){this.hasChanges=!0,this.groupsList=[...i],this.guidesMap.set(this.selectedGuide.name,[...i])}getIsDefaultConfig(){var i;return(null===(i=this.configSelected)||void 0===i?void 0:i.origin)===b.DEFAULT&&!0===this.optionConfigChanged&&!1===this.hasChanges}getTabsToSave(){return this.guidesList.map((i=>({name:i.name,label:i.name===v.main?i.name:i.label,order:i.name===v.main?0:i.order,visible:i.visible})))}async handleSaveConfig(){var i;const t=await this.configManager.saveConfig(this.buildConfigToSave());this.configSelected=null===(i=this.configOptions)||void 0===i?void 0:i.find((i=>i.origin===(this.hasChanges?b.USER:b.DEFAULT))),this.originalConfigSelected=this.configSelected,this.hasChanges=!1,this.optionConfigChanged=!1,C.info(this.getMessage("snkFormConfig.info.successfullyConfigSaved"),{iconName:"check"}),this.configChange.emit(t)}buildConfigToSave(){if(this.getIsDefaultConfig()){const i=this._formConfig;return i.defaultConfiguration=!0,i}const i=o.copy(this._formConfig);return i.tabs=this.getTabsToSave(),i.fields=g(this.guidesMap),i.defaultConfiguration=!1,i}handleAvailableFieldListChanged({detail:i}){this.availableFields=[...i]}handleSetFieldListAsAvailable({detail:i}){this.availableFields=[...this.availableFields,...i]}handleGuideDeleted({detail:i}){var t,s;const e=i.name,h=null!==(t=this.guidesMap.get(e))&&void 0!==t?t:[],a=[];h.forEach((i=>a.push(...i.fields))),this.availableFields=[...this.availableFields,...a],this.guidesList=[...this.guidesList.filter((i=>i.name!==e))],this.guidesMap.delete(e),(null===(s=this.selectedGuide)||void 0===s?void 0:s.name)===e&&(this.selectedGuide=void 0),this.hasChanges=!0}handleGuideListChanged({detail:i}){this.hasChanges=!0,this.guidesList=[...i]}handleGuideRenamed({detail:i}){var t;const s=null!==(t=this.guidesMap.get(this.selectedGuide.name))&&void 0!==t?t:[],e=m(s,i);this.guidesMap.delete(this.selectedGuide.name),this.guidesMap.set(i,e);const h={name:i,label:i,visible:this.selectedGuide.visible,order:this.selectedGuide.order};this.guidesList=[...this.guidesList.map((i=>i.name===this.selectedGuide.name?h:i))],this.groupsList=[...e],this.selectedGuide=h,this.hasChanges=!0}handleCreateNewGuide(){const i=u(this.guidesList,this.getMessage.bind(this)),t={name:i,label:i,visible:!0,order:this.guidesList.length+1},s={name:p.noGroup,fields:[]};this.guidesList=[...this.guidesList,t],this.guidesMap.set(i,[s]),this.selectedGuide=t,this.hasChanges=!0}getGuideNames(){return[...this.guidesList.map((i=>i.name.toLowerCase())),this.getMessage("snkFormConfig.form.mainArea").toLowerCase()]}async componentWillRender(){if(null==this.messagesBuilder){const i=n.getContextValue("__SNK__APPLICATION__");this.messagesBuilder=i.messagesBuilder}}async componentWillLoad(){this.loadFormConfig(),await this.initializeUserConfig()}render(){return s(h,null,s("config-header",{configOptions:this.configOptions,selectedConfig:this.configSelected,messagesBuilder:this.messagesBuilder,hasChanges:this.hasChanges,optionConfigChanged:this.optionConfigChanged,onConfigClose:()=>this.configClose.emit(),onSaveConfig:async()=>await this.handleSaveConfig()}),s("div",{class:"ez-padding--medium"},s("div",{class:"ez-flex sidebarNavigator__container"},s("guides-configurator",{messagesBuilder:this.messagesBuilder,guidesList:this.guidesList,selectedGuide:this.selectedGuide,onGuideSelected:this.handleSelectGuide.bind(this),onGuideListChanged:this.handleGuideListChanged.bind(this),onCreateNewGuide:this.handleCreateNewGuide.bind(this),onGuideDeleted:this.handleGuideDeleted.bind(this)}),s("fields-layout",{ref:i=>this.refFieldsLayout=i,selectedGuide:this.selectedGuide,guideNames:this.getGuideNames(),groupsList:this.groupsList,messagesBuilder:this.messagesBuilder,dataUnit:this.dataUnit,onGuideRenamed:this.handleGuideRenamed.bind(this),onLayoutChanged:this.handleLayoutChanged.bind(this),onSetFieldListAsAvailable:this.handleSetFieldListAsAvailable.bind(this)}),s("fields-selector",{dataUnit:this.dataUnit,availableFields:this.availableFields,onFieldListChanged:this.handleAvailableFieldListChanged.bind(this),messagesBuilder:this.messagesBuilder}))))}static get watchers(){return{selectedGuide:["observeSelectedGuide"],configManager:["observeConfigManager"]}}};k.style='.sc-snk-form-config-h{display:flex;flex-direction:column;height:100vh;width:100vw;font-family:var(--font-pattern, "Roboto");background:white;color:#2b3a54;--snk-form-config-container-height:calc(100vh - 95px);outline:none}.sidebarNavigator__container.sc-snk-form-config{height:var(--snk-form-config-container-height);gap:20px;align-items:flex-start}.guide-header.sc-snk-form-config{display:flex;width:100%;padding-bottom:12px;border-bottom:1px solid #dce0e8;height:30px;font-weight:500;font-size:16px}';export{y as snk_form,k as snk_form_config}
|