@orangesix/react 1.0.9 → 1.0.10

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.
Files changed (41) hide show
  1. package/api/index.cjs.js +1 -1
  2. package/api/index.cjs.js.map +1 -1
  3. package/api/index.d.ts +140 -2
  4. package/api/index.esm.js +1 -1
  5. package/api/index.esm.js.map +1 -1
  6. package/api/theme.css +1 -378
  7. package/box/index.cjs.js +1 -1
  8. package/box/index.cjs.js.map +1 -1
  9. package/box/index.d.ts +6 -3
  10. package/box/index.esm.js +1 -1
  11. package/box/index.esm.js.map +1 -1
  12. package/editor/index.cjs.js +1 -19
  13. package/editor/index.cjs.js.map +1 -1
  14. package/editor/index.d.ts +10 -15
  15. package/editor/index.esm.js +1 -19
  16. package/editor/index.esm.js.map +1 -1
  17. package/inputfilter/_inputfilter.scss +64 -0
  18. package/inputfilter/index.cjs.js +2 -0
  19. package/inputfilter/index.cjs.js.map +1 -0
  20. package/inputfilter/index.d.ts +161 -0
  21. package/inputfilter/index.esm.js +2 -0
  22. package/inputfilter/index.esm.js.map +1 -0
  23. package/inputfilter/package.json +5 -0
  24. package/package.json +13 -12
  25. package/table/index.cjs.js +1 -1
  26. package/table/index.cjs.js.map +1 -1
  27. package/table/index.d.ts +56 -52
  28. package/table/index.esm.js +1 -1
  29. package/table/index.esm.js.map +1 -1
  30. package/tablepivot/_tablepivot.scss +101 -0
  31. package/tablepivot/index.cjs.js +2 -0
  32. package/tablepivot/index.cjs.js.map +1 -0
  33. package/tablepivot/index.d.ts +256 -0
  34. package/tablepivot/index.esm.js +2 -0
  35. package/tablepivot/index.esm.js.map +1 -0
  36. package/tablepivot/package.json +5 -0
  37. package/utils/index.cjs.js +1 -1
  38. package/utils/index.cjs.js.map +1 -1
  39. package/utils/index.d.ts +25 -1
  40. package/utils/index.esm.js +1 -1
  41. package/utils/index.esm.js.map +1 -1
@@ -0,0 +1,256 @@
1
+ import React, { CSSProperties } from 'react';
2
+
3
+ interface Slice {
4
+ /**
5
+ * Define a estrutura inicial da coluna
6
+ */
7
+ columns?: Hierarchy[];
8
+
9
+ /**
10
+ * Define a estrutura inicial do linha
11
+ */
12
+ rows?: Hierarchy[];
13
+
14
+ /**
15
+ * Define as medidas para ser selecionadas para exibição dos dados
16
+ */
17
+ measures?: Measure[];
18
+
19
+ /**
20
+ * Define as opções de expanção dos dados
21
+ */
22
+ expands?: { expandAll?: boolean };
23
+ }
24
+
25
+ interface Hierarchy {
26
+ /**
27
+ * Nome de indentificação do objeto de dados
28
+ */
29
+ uniqueName?: string;
30
+
31
+ /**
32
+ * Legenda que irá aparecer no grid
33
+ */
34
+ caption?: string;
35
+
36
+ /**
37
+ * Define a ordenação dos dados
38
+ */
39
+ sort?: "asc" | "desc" | "unsorted";
40
+ }
41
+
42
+ interface Measure {
43
+ /**
44
+ * Nome de indentificação do objeto de dados
45
+ */
46
+ uniqueName?: string;
47
+
48
+ /**
49
+ * Define se a regra está ativa
50
+ */
51
+ active?: boolean;
52
+
53
+ /**
54
+ * Define o operador da regra de dados
55
+ */
56
+ aggregation?: string;
57
+
58
+ /**
59
+ * Define quais operador e permitido para esta regra
60
+ */
61
+ availableAggregations?: string[];
62
+
63
+ /**
64
+ * Legendo do agregador de dados
65
+ */
66
+ caption?: string;
67
+
68
+ /**
69
+ * Define a legenda da coluna total
70
+ */
71
+ grandTotalCaption?: string;
72
+ }
73
+
74
+ interface Options {
75
+ /**
76
+ * Define as propriedades de personalização do grid
77
+ */
78
+ grid?: OptionsGrid;
79
+
80
+ /**
81
+ * Define se vai ser exibido o botão de configuação dos campos
82
+ */
83
+ configuratorButton?: boolean;
84
+
85
+ /**
86
+ * Exibe as opções de agregação nas opções do campo
87
+ */
88
+ showAggregations?: boolean;
89
+
90
+ /**
91
+ * Exibe o botão de calculo nas opções do campo
92
+ */
93
+ showCalculatedValuesButton?: boolean;
94
+
95
+ /**
96
+ * Define se os dados serão carregados automaticamento pelo pivot
97
+ */
98
+ showDefaultSlice?: boolean;
99
+ }
100
+
101
+ interface OptionsGrid {
102
+ /**
103
+ * Define se vai ser exibido o filtro dos dados
104
+ */
105
+ showFilter?: boolean,
106
+
107
+ /**
108
+ * Define se vai ser exibido a linha de total dos dados
109
+ */
110
+ showGrandTotals?: string | boolean,
111
+
112
+ /**
113
+ * Define se vai ser exibido o indicador das coluna e linhas do grid
114
+ */
115
+ showHeaders?: boolean,
116
+
117
+ /**
118
+ * Especifica como as hierarquias multinível são mostradas na grade: com o ícone à esquerda
119
+ */
120
+ showHierarchies?: boolean,
121
+
122
+ /**
123
+ * Define se vai ser exibido o texto da hierarquias no grid de dados
124
+ */
125
+ showHierarchyCaptions?: boolean,
126
+
127
+ /**
128
+ * Define o titulo do grid
129
+ */
130
+ title?: string,
131
+
132
+ /**
133
+ * Define o estilo do grid
134
+ */
135
+ type?: "classic" | "flat" | "compact"
136
+ }
137
+
138
+ interface Ref {
139
+
140
+ /**
141
+ * Realiza atualização dos dados do Pivot Table
142
+ * @param dataSource - Dados
143
+ */
144
+ updateData(dataSource: {
145
+ data: object[]
146
+ }): void
147
+
148
+ /**
149
+ * Realiza atualização dos dados e configuração do Pivot Table
150
+ * @param report - Objeto com dados e configuração
151
+ * @overview - Observação quando utilizar este metodo as configurações do Pivot Table será redefinidas
152
+ */
153
+ setReport(report: {
154
+ slice?: Slice;
155
+ options?: Options;
156
+ dataSource?: { data: any }
157
+ }): void
158
+
159
+ /**
160
+ * Expande todos os nós do pivot Table
161
+ */
162
+ expandAllData(): void
163
+
164
+ /**
165
+ * Recolhe todos os nós do Pivot Table
166
+ */
167
+ collapseAllData(): void
168
+ }
169
+
170
+ /**
171
+ * Define as tipagens `default` de todos os componentes do pacote
172
+ */
173
+ interface ApiComponentProps {
174
+
175
+ /**
176
+ * Propriedade para identificar o id do elemento
177
+ */
178
+ id?: string
179
+
180
+ /**
181
+ * Adiciona no atributo `class` do componente o valor atribuido nessa propriedade
182
+ */
183
+ className?: string
184
+
185
+ /**
186
+ * Define o tamanho da box do componente de acordo com o valores abaixo
187
+ */
188
+ size?: "5" | "10" | "12-5" | "15" | "17-5" | "20" | "22-5" | "25" | "30" | "33" | "35" | "40" | "45" | "50" | "55" | "60" | "65" | "70" | "75" | "80" | "85" | "90" | "95" | "100"
189
+
190
+ /**
191
+ * Define as propriedades css do component `style`
192
+ */
193
+ css?: CSSProperties
194
+ }
195
+
196
+ interface TablePivotProps extends ApiComponentProps {
197
+ /**
198
+ * Define se vai ser exibido o cabeçalho de opções
199
+ */
200
+ toolbar?: boolean
201
+
202
+ /**
203
+ * Define as opções que será exibidas no cabeçalho de opções
204
+ */
205
+ toolbarOptions?: {
206
+ connect?: boolean
207
+ open?: boolean
208
+ save?: boolean
209
+ export?: boolean
210
+ format?: boolean
211
+ options?: boolean
212
+ fields?: boolean
213
+ fullscreen?: boolean
214
+ }
215
+
216
+ /**
217
+ * Define a altura do componente de pivot table
218
+ */
219
+ height?: string | number
220
+
221
+ /**
222
+ * Define a estrutura de dados do pivot table
223
+ */
224
+ pivotDataSource?: object[]
225
+
226
+ /**
227
+ * Define o comportamento do pivot table
228
+ */
229
+ pivotOptions?: Options
230
+
231
+ /**
232
+ * Define o comportamento das linhas e colunas do pivot table
233
+ */
234
+ pivotSlice?: Slice
235
+
236
+ /**
237
+ * Realiza a personalização visual dos dados do pivot table
238
+ */
239
+ pivotCustomizeCell?: (cellBuilder: any, cellData: any) => void
240
+ }
241
+
242
+ interface TablePivotRefProps {
243
+ webdatarocks: Ref
244
+ }
245
+
246
+ /**
247
+ * Componente - `TablePivot`
248
+ *
249
+ * Um componente versátil que pode ser utilizado para criar tabela com estilo de pivot de dados.
250
+ */
251
+ declare const TablePivot: React.ForwardRefExoticComponent<TablePivotProps & React.RefAttributes<TablePivotRefProps>>;
252
+
253
+ type ITablePivotProps = TablePivotProps;
254
+ type ITablePivotRefProps = TablePivotRefProps;
255
+
256
+ export { type ITablePivotProps, type ITablePivotRefProps, TablePivot };
@@ -0,0 +1,2 @@
1
+ import o,{forwardRef as a}from"react";import{classNames as e}from"primereact/utils";import*as r from"@webdatarocks/react-webdatarocks";const t=({children:a,...r})=>{const t={size:`box-size-${r.size??"100"}`,direction:`box-direction-${r.direction??"row"}`,justify:void 0===r.justify?"":Array.isArray(r.justify)?r.justify?.join(" "):r.justify,align:void 0===r.align?"":Array.isArray(r.align)?r.align?.join(" "):r.align},i={className:e(["box",r.className??"",t.size,t.direction,t.justify,t.align]),style:r.css,id:r.id};return o.createElement("div",{...i},a)},i={fieldsList:{flatHierarchyBox:"Selecione e arranje as colunas",hierarchyBox:"Arraste as dimensões",filterBox:"Solte e arranje os filtros",rowBox:"Solte e arranje as linhas",columnBox:"Solte e arranje as colunas",measureBox:"Solte e arranje ",values:"Valores",addCalculatedMeasure:"Adicionar valores calculados",expandAll:"Expandir tudo",collapseAll:"Retrair tudo",formulasGroupName:"Valores calculados",allFields:"Todos os campos",rows:"Linhas",columns:"Colunas",filters:"Filtros",dropField:"Solte os campos aqui",title:"Campos",subtitle:"Arraste e solte os campos para arranjar"},filter:{all:"Todos",multipleItems:"Itens múltiplos",selectAll:"Selecionar tudo",selectAllResults:"Selecionar todos os resultados",top:"Superior",bottom:"Inferior",ascSort:"Az",descSort:"zA",topX:"Top 10",clearTopX:"Limpar",measuresPrompt:"Escolha os valores",search:"Procurar",amountSelected:"{0} de {1} selecionado(s)",amountFound:"{0} de {1} encontrados estão selecionados",sort:"Ordenar:",addGroup:"Adicionar grupo",groupName:"Grupo 1",ungroup:"Desagrupar"},drillThrough:{title:"Detalhes",row:"Linha: <b>{0}</b>",column:"Coluna: <b>{0}</b>",value:"{0}: <b>{1}</b>"},calculatedView:{title:"Valores calculados",measureBox:"Arraste os valores para a fórmula",measureName:"Nome do valor",formula:"Fórmula",formulaPrompt:"Solte os valores e edite a fórmula aqui",calculateIndividualValues:"Calcular valores individuais",removeValue:"Remover",removeValueTitle:"Remover {0}?",removeValueMessage:"Tem certeza que você quer remover este valor calculado?",header:"Adicionar valor calculado",allValues:"Todos os valores"},grid:{total:"Total",totals:"Totais",grandTotal:"Total Geral",blankMember:"(vazio)",dateInvalidCaption:"Data inválida",reportInformation:"Informações do relatório"},tooltips:{row:"Linha:",column:"Coluna:",headerResize:"Arraste para redimensionar",headerFit:"Duplo clique para arranjar",filterIcon:"Clique para filtrar",filtered:"Filtrado",expandIcon:"Clique para expandir",collapseIcon:"Clique para retrair",drillDown:"Clique para detalhar",drillUp:"Clique para diminuir detalhes",sortIcon:"Clique para ordenar",sortedDescIcon:"Clique para ordenar ascendente",sortedAscIcon:"Clique para ordenar descendente",close:"Clique para fechar"},aggregations:{sum:{caption:"Somar",totalCaption:"Soma {0}",grandTotalCaption:"Total {0}"},count:{caption:"Contagem",totalCaption:"Cont. {0}",grandTotalCaption:"Total {0}"},distinctCount:{caption:"Contagem distinta",totalCaption:"Contagem distinta de {0}",grandTotalCaption:"Total da contagem distinta de {0}"},difference:{caption:"Diferença",totalCaption:"Diferença de {0}",grandTotalCaption:"Total da diferença de {0}"},percentDifference:{caption:"% Diferença",totalCaption:"% Diferença de {0}",grandTotalCaption:"Total % diferença de {0}"},average:{caption:"Média",totalCaption:"Média de {0}",grandTotalCaption:"Total da média de {0}"},product:{caption:"Produto",totalCaption:"Produto de {0}",grandTotalCaption:"Total do produto de {0}"},min:{caption:"Mínimo",totalCaption:"Mínimo de {0}",grandTotalCaption:"Total do mínimo de {0}"},max:{caption:"Máximo",totalCaption:"Máximo de {0}",grandTotalCaption:"Total máximo de {0}"},percent:{caption:"% do total geral",totalCaption:"% do total geral de {0}",grandTotalCaption:"Total % do total geral de {0}"},percentOfColumn:{caption:"% da coluna",totalCaption:"% da coluna de {0}",grandTotalCaption:"Total % da coluna de {0}"},percentOfRow:{caption:"% da linha",totalCaption:"% da linha de {0}",grandTotalCaption:"Total % da linha de {0}"},index:{caption:"Índice",totalCaption:"Índice de {0}",grandTotalCaption:"Índice de {0}"},none:{caption:"Sem cálculo"}},messages:{error:"Erro!",warning:"Cuidade!",limitation:"Limitação!",browse:"Pesquisar",confirmation:"Confirmação",reportFileType:"Arquivo de relatório",loading:"Carregando...",loadingConfiguration:"",loadingData:"Carregando dados...",waiting:"Aguardando pela resposta de {0} segundos.",progress:"{0}K",progressUnknown:"Carregado {0}K",analyzing:"Analizando dados...",analyzingProgress:"{0} dados de {1} ({2}%)",analyzingRecords:"{0}% dados",saving:"Salvando...",loadingDimensions:"Carregando dimensões...",loadingHierarchies:"Carregando hierarquias...",loadingMeasures:"Carregando medidas...",loadingKPIs:"Carregando KPIs...",loadingMembers:"Carregando membros...",loadingLevels:"Carregando níveis...",loadingProperties:"Carregando propriedades...",fullscreen:"Abrir relatório em tela inteira?",exportComplete:'Os dados para exportação foram criados, por favor, clique no botão de "Salvar".',exportProgress:"Exportação em progresso...",exportError:"Erro exportando. Um erro inexperado aconteceu.",generatingPDF:"Gerando PDF",pleaseWait:"Aguarde.",pagesWereGenerated:"páginas foram geradas.",uploading:"Enviando...",cantSaveFile:"Não foi possível salvar o arquivo.",cantSaveToClipboard:"Erro: Não posso enviar para a área de transferência.",saveReportToFile:'O relatório está pronto para ser salvo, por favor clique no botão de "Salvar".',loadReportFromFile:"Selecione o arquivo do relatório para ser carregado.",inputNewName:"Coloque o novo nome",inputReportName:"Por favor coloque um nome para o relatório",invalidDataSource:"Origem de dados inválida. Por favor verifique. <br/><br/><u><a href='https://www.flexmonster.com/doc/typical-errors/#invalid-datasource' target='_blank'>Leia mais informações sobre este erro.</a></u>",dataStreamError:"Erro de stream enquanto carregava dados '{0}'<br/><br/><u><a href='https://www.flexmonster.com/doc/typical-errors/#stream-error' target='_blank'>Read more info about this error</a></u>",unableToOpenFile:"Não foi possível abrir o arquivo {0}.<br/><br/>Parece que o arquivo não existe ou o acesso foi negado.<br/><br/><u><a href='https://www.flexmonster.com/doc/typical-errors/#unable-to-open-file' target='_blank'>Read more info about this error</a></u>",unableTwoFileBrowsingSessions:"O diálogo da procura por arquivos já está aberto.",inappropriateFileFormat:"O arquivo de dados está em formato inapropriado.",invalidJSONdata:"Os dados JSON são inválidos.",wrongFormulaFormat:"Formato da fórmula errado. Por favor verifique.",excelCsvChartsExportError:"Exportar para Microsoft Excel ou CSV não está disponível para gráficos.",excelPdfExportLimitation:"Exportar para Microsoft Excel ou PDF não está disponível para esta versão.",excelExportLimitation:"Exportar não está disponível para esta versão.",noDataAvailable:"A origem de dados está vazia. Por favor verifique o arquivo CSV.",saveDataToFile:'Os dados estão prontos para serem salvos, por favor clique no botão de "Salvar".',dataWasUpdated:"A origem de dados foi salva no servidor. Deseja atualizar o relatório?",ocsvIncompatible:"Não foi possível ler a origem de dados. Parece que o arquivo CSV está em versão diferente.Por favor atualize os componentes da versao {0} ou superior.",unknownError:"Erro desconhecido.",invalidReportFormat:"Formato de relatório inválido ou acesso ao arquivo negado.",csvHeaderParsingError:"Erro analizando o cabeçalho do arquivo CSV.",tooManyColumnsInClassicMode:"Muitas colunas para um formulário clássico. Mude o layout para formulário compacto.",cantExpand:"Alguns campos não puderam ser expandidos. Por favor diminua o arquivo de dados.",cantExpandTitle:"Arquivo de dados muito grande"},buttons:{ok:"OK",apply:"Aplicar",cancel:"Cancelar",save:"Salvar",clear:"limpar",select:"Selecionar",yes:"Sim",no:"Não"},contextMenu:{clearSorting:"Limpar ordenação",collapse:"Expandir",drillThrough:"Expandir",expand:"Expandir",openFilter:"Abrir filtro",sortColumnAsc:"Ordenar coluna ascendente",sortColumnDesc:"Ordenar coluna descendente",sortRowAsc:"Ordenar linha ascendente",sortRowDesc:"Ordenar linha descendente"},date:{year:"Ano",quarter:"Trimestre",month:"Mês",day:"Dia"},quarters:{q1:"Trimestre 1",q2:"Trimestre 2",q3:"Trimestre 3",q4:"Trimestre 4"},months:{january:"Janeiro",february:"Fevereiro",march:"Março",april:"Abril",may:"Maio",june:"junho",july:"Julho",august:"Agosto",september:"Setembro",october:"Outubro",november:"Novembro",december:"Dezembro"},monthsShort:{january:"Jan",february:"Fev",march:"Mar",april:"Abr",may:"Mai",june:"Jun",july:"Jul",august:"Ago",september:"Set",october:"Out",november:"Nov",december:"Dez"},weekdays:{first:"Domingo",second:"Segunda",third:"Terça",fourth:"Quarta",fifth:"Quinta",sixth:"Sexta",seventh:"Sábado"},weekdaysShort:{first:"Dom",second:"Seg",third:"Ter",fourth:"Qua",fifth:"Qui",sixth:"Sex",seventh:"Sab"},toolbar:{connect:"Conectar",connect_local_csv:"local CSV",connect_local_ocsv:"local OCSV",connect_local_json:"local JSON",connect_remote_csv:"remoto CSV",connect_remote_csv_mobile:"CSV",connect_remote_json:"remoto JSON",connect_remote_json_mobile:"JSON",open:"Abrir",local_report:"Relatório local",remote_report:"Relatório remoto",remote_report_mobile:"Relatório",save:"Salvar",save_json:null,load_json:"relatório JSON",grid:"Grid",grid_flat:"Flat",grid_classic:"Clássico",grid_compact:"Compacto",format:"Formatar",format_cells:"Formatar células",format_cells_mobile:"Formatar",conditional_formatting:"Formatação condicional",conditional_formatting_mobile:"Condicional",options:"Opções",fullscreen:"Tela inteira",minimize:"Minimizar",export:"Exportar",export_print:"Imprimir",export_html:"para HTML",export_excel:"para Excel",export_pdf:"para PDF",fields:"Campos",ok:"OK",apply:"Aplicar",done:"Pronto",cancel:"Cancelar",value:"Valor",delete:"Apagar",if:"Se",then:"então",open_remote_csv:"Abrir CSV remoto",open_remote_json:"Abrir JSON remoto",csv:"CSV",open_remote_report:"Abrir relatório remoto",choose_value:"Escolha um valor",text_align:"Alinhamento de texto",align_left:"esquerda",align_right:"direita",none:"Nenhum",space:"(espaço)",thousand_separator:"Separador de milhar",decimal_separator:"Separador de decimais",decimal_places:"Casas de decimais",currency_symbol:"Símbolo de moeda",currency_align:"Alinhamento de valores em moeda",null_value:"valor nulo",is_percent:"Formate como percentual",true_value:"sim",false_value:"não",conditional:"Condição",add_condition:"Adicionar condição",less_than:"Menor que",less_than_or_equal:"Menor que ou igual a",greater_than:"Maior que",greater_than_or_equal:"Maior que ou igual a",equal_to:"Igual a",not_equal_to:"Não igual a",between:"entre",is_empty:"Vazio",all_values:"Todos os valores",and:"e",and_symbole:"&",cp_text:"Texto",cp_highlight:"Sublinhado",layout_options:"Opções de layout",layout:"Layout",compact_view:"Formulário compacto",classic_view:"Formulário clássico",flat_view:"Formulário flat",grand_totals:"Totais gerais",grand_totals_off:"Não mostrar totais gerais",grand_totals_on:"Mostrar totais gerais",grand_totals_on_rows:"Mostrar somente linhas",grand_totals_on_columns:"Mostrar somente colunas",subtotals:"Subtotais",subtotals_off:"Não mostrar subtotais",subtotals_on:"Mostrar subtotals",subtotals_on_rows:"Mostrar subtotais somente de linhas",subtotals_on_columns:"Mostrar subtotais somente de colunas",choose_page_orientation:"Escolha a orientação de página",landscape:"Paisagem",portrait:"Retrato"}};const n=a((({toolbar:a=!0,id:e="pivotTable",...n},l)=>o.createElement(t,{className:"pivot-table "+(n.className??""),id:e,size:n.size},o.createElement(r.Pivot,{customizeCell:(o,a)=>{void 0!==n.pivotCustomizeCell&&n.pivotCustomizeCell(o,a)},report:{dataSource:{data:n.pivotDataSource??[]},options:n.pivotOptions,slice:n.pivotSlice,localization:i},beforetoolbarcreated:o=>function(o,a){let e=o.getTabs(),r=[];for(const o in a)a[o]||r.push(o.charAt(0).toUpperCase()+o.slice(1));o.getTabs=function(){return e=e.filter((o=>!r.includes(o.title))),e}}(o,n.toolbarOptions??{}),container:e,height:n.height,ref:l,toolbar:a,width:"100%"}))));export{n as TablePivot};
2
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":["../../src/box/box.tsx","../../src/tablepivot/lang/pt-br.ts","../../src/tablepivot/tablepivot.tsx","../../src/tablepivot/function/handle.ts"],"sourcesContent":["import { BoxProps } from \"./types\";\r\nimport React, { HTMLAttributes } from \"react\";\r\nimport { classNames } from \"primereact/utils\";\r\n\r\n/**\r\n * Componente - `Box`\r\n *\r\n * Um componente versátil que pode ser utilizado para criar seções ou caixas em uma página.\r\n * Permite personalizar o estilo e o conteúdo através de propriedades.\r\n *\r\n * Exemplo de uso:\r\n * ```tsx\r\n * <Box align=\"align-items-center\"\r\n * justify=\"justify-content-end\"\r\n * size=\"25\">\r\n * ...conteúdo HTML\r\n * </Box>\r\n * ```\r\n */\r\nexport const Box = ({ children, ...props }: BoxProps) => {\r\n const css = {\r\n size: `box-size-${(props.size ?? \"100\")}`,\r\n direction: `box-direction-${props.direction ?? \"row\"}`,\r\n justify: props.justify === undefined ? \"\" : Array.isArray(props.justify) ? props.justify?.join(\" \") : props.justify,\r\n align: props.align === undefined ? \"\" : Array.isArray(props.align) ? props.align?.join(\" \") : props.align\r\n };\r\n\r\n const attr: HTMLAttributes<\"div\"> & Omit<BoxProps, \"children\"> = {\r\n className: classNames([\r\n \"box\",\r\n props.className ?? \"\",\r\n css.size,\r\n css.direction,\r\n css.justify,\r\n css.align\r\n ]),\r\n style: props.css,\r\n id: props.id\r\n };\r\n\r\n return (\r\n <div {...attr as any}>{children}</div>\r\n );\r\n};","export const translation = {\r\n \"fieldsList\": {\r\n \"flatHierarchyBox\": \"Selecione e arranje as colunas\",\r\n \"hierarchyBox\": \"Arraste as dimensões\",\r\n \"filterBox\": \"Solte e arranje os filtros\",\r\n \"rowBox\": \"Solte e arranje as linhas\",\r\n \"columnBox\": \"Solte e arranje as colunas\",\r\n \"measureBox\": \"Solte e arranje \",\r\n \"values\": \"Valores\",\r\n \"addCalculatedMeasure\": \"Adicionar valores calculados\",\r\n \"expandAll\": \"Expandir tudo\",\r\n \"collapseAll\": \"Retrair tudo\",\r\n \"formulasGroupName\": \"Valores calculados\",\r\n \"allFields\": \"Todos os campos\",\r\n \"rows\": \"Linhas\",\r\n \"columns\": \"Colunas\",\r\n \"filters\": \"Filtros\",\r\n \"dropField\": \"Solte os campos aqui\",\r\n \"title\": \"Campos\",\r\n \"subtitle\": \"Arraste e solte os campos para arranjar\"\r\n },\r\n \"filter\": {\r\n \"all\": \"Todos\",\r\n \"multipleItems\": \"Itens múltiplos\",\r\n \"selectAll\": \"Selecionar tudo\",\r\n \"selectAllResults\": \"Selecionar todos os resultados\",\r\n \"top\": \"Superior\",\r\n \"bottom\": \"Inferior\",\r\n \"ascSort\": \"Az\",\r\n \"descSort\": \"zA\",\r\n \"topX\": \"Top 10\",\r\n \"clearTopX\": \"Limpar\",\r\n \"measuresPrompt\": \"Escolha os valores\",\r\n \"search\": \"Procurar\",\r\n \"amountSelected\": \"{0} de {1} selecionado(s)\",\r\n \"amountFound\": \"{0} de {1} encontrados estão selecionados\",\r\n \"sort\": \"Ordenar:\",\r\n \"addGroup\": \"Adicionar grupo\",\r\n \"groupName\": \"Grupo 1\",\r\n \"ungroup\": \"Desagrupar\"\r\n },\r\n \"drillThrough\": {\r\n \"title\": \"Detalhes\",\r\n \"row\": \"Linha: <b>{0}</b>\",\r\n \"column\": \"Coluna: <b>{0}</b>\",\r\n \"value\": \"{0}: <b>{1}</b>\"\r\n },\r\n \"calculatedView\": {\r\n \"title\": \"Valores calculados\",\r\n \"measureBox\": \"Arraste os valores para a fórmula\",\r\n \"measureName\": \"Nome do valor\",\r\n \"formula\": \"Fórmula\",\r\n \"formulaPrompt\": \"Solte os valores e edite a fórmula aqui\",\r\n \"calculateIndividualValues\": \"Calcular valores individuais\",\r\n \"removeValue\": \"Remover\",\r\n \"removeValueTitle\": \"Remover {0}?\",\r\n \"removeValueMessage\": \"Tem certeza que você quer remover este valor calculado?\",\r\n \"header\": \"Adicionar valor calculado\",\r\n \"allValues\": \"Todos os valores\"\r\n },\r\n \"grid\": {\r\n \"total\": \"Total\",\r\n \"totals\": \"Totais\",\r\n \"grandTotal\": \"Total Geral\",\r\n \"blankMember\": \"(vazio)\",\r\n \"dateInvalidCaption\": \"Data inválida\",\r\n \"reportInformation\": \"Informações do relatório\"\r\n },\r\n \"tooltips\": {\r\n \"row\": \"Linha:\",\r\n \"column\": \"Coluna:\",\r\n \"headerResize\": \"Arraste para redimensionar\",\r\n \"headerFit\": \"Duplo clique para arranjar\",\r\n \"filterIcon\": \"Clique para filtrar\",\r\n \"filtered\": \"Filtrado\",\r\n \"expandIcon\": \"Clique para expandir\",\r\n \"collapseIcon\": \"Clique para retrair\",\r\n \"drillDown\": \"Clique para detalhar\",\r\n \"drillUp\": \"Clique para diminuir detalhes\",\r\n \"sortIcon\": \"Clique para ordenar\",\r\n \"sortedDescIcon\": \"Clique para ordenar ascendente\",\r\n \"sortedAscIcon\": \"Clique para ordenar descendente\",\r\n \"close\": \"Clique para fechar\"\r\n },\r\n \"aggregations\": {\r\n \"sum\": {\r\n \"caption\": \"Somar\",\r\n \"totalCaption\": \"Soma {0}\",\r\n \"grandTotalCaption\": \"Total {0}\"\r\n },\r\n \"count\": {\r\n \"caption\": \"Contagem\",\r\n \"totalCaption\": \"Cont. {0}\",\r\n \"grandTotalCaption\": \"Total {0}\"\r\n },\r\n \"distinctCount\": {\r\n \"caption\": \"Contagem distinta\",\r\n \"totalCaption\": \"Contagem distinta de {0}\",\r\n \"grandTotalCaption\": \"Total da contagem distinta de {0}\"\r\n },\r\n \"difference\": {\r\n \"caption\": \"Diferença\",\r\n \"totalCaption\": \"Diferença de {0}\",\r\n \"grandTotalCaption\": \"Total da diferença de {0}\"\r\n },\r\n \"percentDifference\": {\r\n \"caption\": \"% Diferença\",\r\n \"totalCaption\": \"% Diferença de {0}\",\r\n \"grandTotalCaption\": \"Total % diferença de {0}\"\r\n },\r\n \"average\": {\r\n \"caption\": \"Média\",\r\n \"totalCaption\": \"Média de {0}\",\r\n \"grandTotalCaption\": \"Total da média de {0}\"\r\n },\r\n \"product\": {\r\n \"caption\": \"Produto\",\r\n \"totalCaption\": \"Produto de {0}\",\r\n \"grandTotalCaption\": \"Total do produto de {0}\"\r\n },\r\n \"min\": {\r\n \"caption\": \"Mínimo\",\r\n \"totalCaption\": \"Mínimo de {0}\",\r\n \"grandTotalCaption\": \"Total do mínimo de {0}\"\r\n },\r\n \"max\": {\r\n \"caption\": \"Máximo\",\r\n \"totalCaption\": \"Máximo de {0}\",\r\n \"grandTotalCaption\": \"Total máximo de {0}\"\r\n },\r\n \"percent\": {\r\n \"caption\": \"% do total geral\",\r\n \"totalCaption\": \"% do total geral de {0}\",\r\n \"grandTotalCaption\": \"Total % do total geral de {0}\"\r\n },\r\n \"percentOfColumn\": {\r\n \"caption\": \"% da coluna\",\r\n \"totalCaption\": \"% da coluna de {0}\",\r\n \"grandTotalCaption\": \"Total % da coluna de {0}\"\r\n },\r\n \"percentOfRow\": {\r\n \"caption\": \"% da linha\",\r\n \"totalCaption\": \"% da linha de {0}\",\r\n \"grandTotalCaption\": \"Total % da linha de {0}\"\r\n },\r\n \"index\": {\r\n \"caption\": \"Índice\",\r\n \"totalCaption\": \"Índice de {0}\",\r\n \"grandTotalCaption\": \"Índice de {0}\"\r\n },\r\n \"none\": {\r\n \"caption\": \"Sem cálculo\"\r\n }\r\n },\r\n \"messages\": {\r\n \"error\": \"Erro!\",\r\n \"warning\": \"Cuidade!\",\r\n \"limitation\": \"Limitação!\",\r\n \"browse\": \"Pesquisar\",\r\n \"confirmation\": \"Confirmação\",\r\n \"reportFileType\": \"Arquivo de relatório\",\r\n \"loading\": \"Carregando...\",\r\n \"loadingConfiguration\": \"\",\r\n \"loadingData\": \"Carregando dados...\",\r\n \"waiting\": \"Aguardando pela resposta de {0} segundos.\",\r\n \"progress\": \"{0}K\",\r\n \"progressUnknown\": \"Carregado {0}K\",\r\n \"analyzing\": \"Analizando dados...\",\r\n \"analyzingProgress\": \"{0} dados de {1} ({2}%)\",\r\n \"analyzingRecords\": \"{0}% dados\",\r\n \"saving\": \"Salvando...\",\r\n \"loadingDimensions\": \"Carregando dimensões...\",\r\n \"loadingHierarchies\": \"Carregando hierarquias...\",\r\n \"loadingMeasures\": \"Carregando medidas...\",\r\n \"loadingKPIs\": \"Carregando KPIs...\",\r\n \"loadingMembers\": \"Carregando membros...\",\r\n \"loadingLevels\": \"Carregando níveis...\",\r\n \"loadingProperties\": \"Carregando propriedades...\",\r\n \"fullscreen\": \"Abrir relatório em tela inteira?\",\r\n \"exportComplete\": \"Os dados para exportação foram criados, por favor, clique no botão de \\\"Salvar\\\".\",\r\n \"exportProgress\": \"Exportação em progresso...\",\r\n \"exportError\": \"Erro exportando. Um erro inexperado aconteceu.\",\r\n \"generatingPDF\": \"Gerando PDF\",\r\n \"pleaseWait\": \"Aguarde.\",\r\n \"pagesWereGenerated\": \"páginas foram geradas.\",\r\n \"uploading\": \"Enviando...\",\r\n \"cantSaveFile\": \"Não foi possível salvar o arquivo.\",\r\n \"cantSaveToClipboard\": \"Erro: Não posso enviar para a área de transferência.\",\r\n \"saveReportToFile\": \"O relatório está pronto para ser salvo, por favor clique no botão de \\\"Salvar\\\".\",\r\n \"loadReportFromFile\": \"Selecione o arquivo do relatório para ser carregado.\",\r\n \"inputNewName\": \"Coloque o novo nome\",\r\n \"inputReportName\": \"Por favor coloque um nome para o relatório\",\r\n \"invalidDataSource\": \"Origem de dados inválida. Por favor verifique. <br/><br/><u><a href='https://www.flexmonster.com/doc/typical-errors/#invalid-datasource' target='_blank'>Leia mais informações sobre este erro.</a></u>\",\r\n \"dataStreamError\": \"Erro de stream enquanto carregava dados '{0}'<br/><br/><u><a href='https://www.flexmonster.com/doc/typical-errors/#stream-error' target='_blank'>Read more info about this error</a></u>\",\r\n \"unableToOpenFile\": \"Não foi possível abrir o arquivo {0}.<br/><br/>Parece que o arquivo não existe ou o acesso foi negado.<br/><br/><u><a href='https://www.flexmonster.com/doc/typical-errors/#unable-to-open-file' target='_blank'>Read more info about this error</a></u>\",\r\n \"unableTwoFileBrowsingSessions\": \"O diálogo da procura por arquivos já está aberto.\",\r\n \"inappropriateFileFormat\": \"O arquivo de dados está em formato inapropriado.\",\r\n \"invalidJSONdata\": \"Os dados JSON são inválidos.\",\r\n \"wrongFormulaFormat\": \"Formato da fórmula errado. Por favor verifique.\",\r\n \"excelCsvChartsExportError\": \"Exportar para Microsoft Excel ou CSV não está disponível para gráficos.\",\r\n \"excelPdfExportLimitation\": \"Exportar para Microsoft Excel ou PDF não está disponível para esta versão.\",\r\n \"excelExportLimitation\": \"Exportar não está disponível para esta versão.\",\r\n \"noDataAvailable\": \"A origem de dados está vazia. Por favor verifique o arquivo CSV.\",\r\n \"saveDataToFile\": \"Os dados estão prontos para serem salvos, por favor clique no botão de \\\"Salvar\\\".\",\r\n \"dataWasUpdated\": \"A origem de dados foi salva no servidor. Deseja atualizar o relatório?\",\r\n \"ocsvIncompatible\": \"Não foi possível ler a origem de dados. Parece que o arquivo CSV está em versão diferente.Por favor atualize os componentes da versao {0} ou superior.\",\r\n \"unknownError\": \"Erro desconhecido.\",\r\n \"invalidReportFormat\": \"Formato de relatório inválido ou acesso ao arquivo negado.\",\r\n \"csvHeaderParsingError\": \"Erro analizando o cabeçalho do arquivo CSV.\",\r\n \"tooManyColumnsInClassicMode\": \"Muitas colunas para um formulário clássico. Mude o layout para formulário compacto.\",\r\n \"cantExpand\": \"Alguns campos não puderam ser expandidos. Por favor diminua o arquivo de dados.\",\r\n \"cantExpandTitle\": \"Arquivo de dados muito grande\"\r\n },\r\n \"buttons\": {\r\n \"ok\": \"OK\",\r\n \"apply\": \"Aplicar\",\r\n \"cancel\": \"Cancelar\",\r\n \"save\": \"Salvar\",\r\n \"clear\": \"limpar\",\r\n \"select\": \"Selecionar\",\r\n \"yes\": \"Sim\",\r\n \"no\": \"Não\"\r\n },\r\n \"contextMenu\": {\r\n \"clearSorting\": \"Limpar ordenação\",\r\n \"collapse\": \"Expandir\",\r\n \"drillThrough\": \"Expandir\",\r\n \"expand\": \"Expandir\",\r\n \"openFilter\": \"Abrir filtro\",\r\n \"sortColumnAsc\": \"Ordenar coluna ascendente\",\r\n \"sortColumnDesc\": \"Ordenar coluna descendente\",\r\n \"sortRowAsc\": \"Ordenar linha ascendente\",\r\n \"sortRowDesc\": \"Ordenar linha descendente\"\r\n },\r\n \"date\": {\r\n \"year\": \"Ano\",\r\n \"quarter\": \"Trimestre\",\r\n \"month\": \"Mês\",\r\n \"day\": \"Dia\"\r\n },\r\n \"quarters\": {\r\n \"q1\": \"Trimestre 1\",\r\n \"q2\": \"Trimestre 2\",\r\n \"q3\": \"Trimestre 3\",\r\n \"q4\": \"Trimestre 4\"\r\n },\r\n \"months\": {\r\n \"january\": \"Janeiro\",\r\n \"february\": \"Fevereiro\",\r\n \"march\": \"Março\",\r\n \"april\": \"Abril\",\r\n \"may\": \"Maio\",\r\n \"june\": \"junho\",\r\n \"july\": \"Julho\",\r\n \"august\": \"Agosto\",\r\n \"september\": \"Setembro\",\r\n \"october\": \"Outubro\",\r\n \"november\": \"Novembro\",\r\n \"december\": \"Dezembro\"\r\n },\r\n \"monthsShort\": {\r\n \"january\": \"Jan\",\r\n \"february\": \"Fev\",\r\n \"march\": \"Mar\",\r\n \"april\": \"Abr\",\r\n \"may\": \"Mai\",\r\n \"june\": \"Jun\",\r\n \"july\": \"Jul\",\r\n \"august\": \"Ago\",\r\n \"september\": \"Set\",\r\n \"october\": \"Out\",\r\n \"november\": \"Nov\",\r\n \"december\": \"Dez\"\r\n },\r\n \"weekdays\": {\r\n \"first\": \"Domingo\",\r\n \"second\": \"Segunda\",\r\n \"third\": \"Terça\",\r\n \"fourth\": \"Quarta\",\r\n \"fifth\": \"Quinta\",\r\n \"sixth\": \"Sexta\",\r\n \"seventh\": \"Sábado\"\r\n },\r\n \"weekdaysShort\": {\r\n \"first\": \"Dom\",\r\n \"second\": \"Seg\",\r\n \"third\": \"Ter\",\r\n \"fourth\": \"Qua\",\r\n \"fifth\": \"Qui\",\r\n \"sixth\": \"Sex\",\r\n \"seventh\": \"Sab\"\r\n },\r\n \"toolbar\": {\r\n \"connect\": \"Conectar\",\r\n \"connect_local_csv\": \"local CSV\",\r\n \"connect_local_ocsv\": \"local OCSV\",\r\n \"connect_local_json\": \"local JSON\",\r\n \"connect_remote_csv\": \"remoto CSV\",\r\n \"connect_remote_csv_mobile\": \"CSV\",\r\n \"connect_remote_json\": \"remoto JSON\",\r\n \"connect_remote_json_mobile\": \"JSON\",\r\n \"open\": \"Abrir\",\r\n \"local_report\": \"Relatório local\",\r\n \"remote_report\": \"Relatório remoto\",\r\n \"remote_report_mobile\": \"Relatório\",\r\n \"save\": \"Salvar\",\r\n \"save_json\": null,\r\n \"load_json\": \"relatório JSON\",\r\n \"grid\": \"Grid\",\r\n \"grid_flat\": \"Flat\",\r\n \"grid_classic\": \"Clássico\",\r\n \"grid_compact\": \"Compacto\",\r\n \"format\": \"Formatar\",\r\n \"format_cells\": \"Formatar células\",\r\n \"format_cells_mobile\": \"Formatar\",\r\n \"conditional_formatting\": \"Formatação condicional\",\r\n \"conditional_formatting_mobile\": \"Condicional\",\r\n \"options\": \"Opções\",\r\n \"fullscreen\": \"Tela inteira\",\r\n \"minimize\": \"Minimizar\",\r\n \"export\": \"Exportar\",\r\n \"export_print\": \"Imprimir\",\r\n \"export_html\": \"para HTML\",\r\n \"export_excel\": \"para Excel\",\r\n \"export_pdf\": \"para PDF\",\r\n \"fields\": \"Campos\",\r\n \"ok\": \"OK\",\r\n \"apply\": \"Aplicar\",\r\n \"done\": \"Pronto\",\r\n \"cancel\": \"Cancelar\",\r\n \"value\": \"Valor\",\r\n \"delete\": \"Apagar\",\r\n \"if\": \"Se\",\r\n \"then\": \"então\",\r\n \"open_remote_csv\": \"Abrir CSV remoto\",\r\n \"open_remote_json\": \"Abrir JSON remoto\",\r\n \"csv\": \"CSV\",\r\n \"open_remote_report\": \"Abrir relatório remoto\",\r\n \"choose_value\": \"Escolha um valor\",\r\n \"text_align\": \"Alinhamento de texto\",\r\n \"align_left\": \"esquerda\",\r\n \"align_right\": \"direita\",\r\n \"none\": \"Nenhum\",\r\n \"space\": \"(espaço)\",\r\n \"thousand_separator\": \"Separador de milhar\",\r\n \"decimal_separator\": \"Separador de decimais\",\r\n \"decimal_places\": \"Casas de decimais\",\r\n \"currency_symbol\": \"Símbolo de moeda\",\r\n \"currency_align\": \"Alinhamento de valores em moeda\",\r\n \"null_value\": \"valor nulo\",\r\n \"is_percent\": \"Formate como percentual\",\r\n \"true_value\": \"sim\",\r\n \"false_value\": \"não\",\r\n \"conditional\": \"Condição\",\r\n \"add_condition\": \"Adicionar condição\",\r\n \"less_than\": \"Menor que\",\r\n \"less_than_or_equal\": \"Menor que ou igual a\",\r\n \"greater_than\": \"Maior que\",\r\n \"greater_than_or_equal\": \"Maior que ou igual a\",\r\n \"equal_to\": \"Igual a\",\r\n \"not_equal_to\": \"Não igual a\",\r\n \"between\": \"entre\",\r\n \"is_empty\": \"Vazio\",\r\n \"all_values\": \"Todos os valores\",\r\n \"and\": \"e\",\r\n \"and_symbole\": \"&\",\r\n \"cp_text\": \"Texto\",\r\n \"cp_highlight\": \"Sublinhado\",\r\n \"layout_options\": \"Opções de layout\",\r\n \"layout\": \"Layout\",\r\n \"compact_view\": \"Formulário compacto\",\r\n \"classic_view\": \"Formulário clássico\",\r\n \"flat_view\": \"Formulário flat\",\r\n \"grand_totals\": \"Totais gerais\",\r\n \"grand_totals_off\": \"Não mostrar totais gerais\",\r\n \"grand_totals_on\": \"Mostrar totais gerais\",\r\n \"grand_totals_on_rows\": \"Mostrar somente linhas\",\r\n \"grand_totals_on_columns\": \"Mostrar somente colunas\",\r\n \"subtotals\": \"Subtotais\",\r\n \"subtotals_off\": \"Não mostrar subtotais\",\r\n \"subtotals_on\": \"Mostrar subtotals\",\r\n \"subtotals_on_rows\": \"Mostrar subtotais somente de linhas\",\r\n \"subtotals_on_columns\": \"Mostrar subtotais somente de colunas\",\r\n \"choose_page_orientation\": \"Escolha a orientação de página\",\r\n \"landscape\": \"Paisagem\",\r\n \"portrait\": \"Retrato\"\r\n }\r\n};","import { Box } from \"../box\";\r\nimport React, { forwardRef } from \"react\";\r\nimport { translation } from \"./lang/pt-br\";\r\nimport { handleToolbarOptions } from \"./function/handle\";\r\nimport { TablePivotProps, TablePivotRefProps } from \"./types\";\r\nimport * as WebDataRocksReact from \"@webdatarocks/react-webdatarocks\";\r\n\r\n/**\r\n * Componente - `TablePivot`\r\n *\r\n * Um componente versátil que pode ser utilizado para criar tabela com estilo de pivot de dados.\r\n */\r\nexport const TablePivot = forwardRef<TablePivotRefProps, TablePivotProps>(\r\n ({ toolbar = true, id = \"pivotTable\", ...props }, ref) => {\r\n\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <Box className={\"pivot-table \" + (props.className ?? \"\")}\r\n id={id}\r\n size={props.size}>\r\n <WebDataRocksReact.Pivot\r\n customizeCell={(b: any, d: any) => {\r\n if (props.pivotCustomizeCell !== undefined) {\r\n props.pivotCustomizeCell(b, d);\r\n }\r\n }}\r\n report={{\r\n dataSource: {\r\n data: props.pivotDataSource ?? []\r\n },\r\n options: props.pivotOptions,\r\n slice: props.pivotSlice,\r\n localization: translation,\r\n }}\r\n beforetoolbarcreated={(toolbar: any) => handleToolbarOptions(toolbar, props.toolbarOptions ?? {})}\r\n container={id}\r\n height={props.height}\r\n ref={ref}\r\n toolbar={toolbar}\r\n width=\"100%\"/>\r\n </Box>\r\n );\r\n });","/**\r\n * Remove as opções do cabeçalho de acordo objeto toolbarOptions\r\n * @param toolbar - Objeto do cabeçalho\r\n * @param options - Objeto que será removido\r\n */\r\nexport function handleToolbarOptions(toolbar: any, options: any) {\r\n let tabs: any[] = toolbar.getTabs();\r\n let blocked = [];\r\n for (const key in options) {\r\n if (!options[key]) {\r\n blocked.push(key.charAt(0).toUpperCase() + key.slice(1));\r\n }\r\n }\r\n\r\n toolbar.getTabs = function () {\r\n tabs = tabs.filter(tab => {\r\n \r\n return !blocked.includes(tab.title);\r\n });\r\n return tabs;\r\n };\r\n}"],"names":["Box","children","props","css","size","direction","justify","undefined","Array","isArray","join","align","attr","className","classNames","style","id","React","createElement","translation","fieldsList","flatHierarchyBox","hierarchyBox","filterBox","rowBox","columnBox","measureBox","values","addCalculatedMeasure","expandAll","collapseAll","formulasGroupName","allFields","rows","columns","filters","dropField","title","subtitle","filter","all","multipleItems","selectAll","selectAllResults","top","bottom","ascSort","descSort","topX","clearTopX","measuresPrompt","search","amountSelected","amountFound","sort","addGroup","groupName","ungroup","drillThrough","row","column","value","calculatedView","measureName","formula","formulaPrompt","calculateIndividualValues","removeValue","removeValueTitle","removeValueMessage","header","allValues","grid","total","totals","grandTotal","blankMember","dateInvalidCaption","reportInformation","tooltips","headerResize","headerFit","filterIcon","filtered","expandIcon","collapseIcon","drillDown","drillUp","sortIcon","sortedDescIcon","sortedAscIcon","close","aggregations","sum","caption","totalCaption","grandTotalCaption","count","distinctCount","difference","percentDifference","average","product","min","max","percent","percentOfColumn","percentOfRow","index","none","messages","error","warning","limitation","browse","confirmation","reportFileType","loading","loadingConfiguration","loadingData","waiting","progress","progressUnknown","analyzing","analyzingProgress","analyzingRecords","saving","loadingDimensions","loadingHierarchies","loadingMeasures","loadingKPIs","loadingMembers","loadingLevels","loadingProperties","fullscreen","exportComplete","exportProgress","exportError","generatingPDF","pleaseWait","pagesWereGenerated","uploading","cantSaveFile","cantSaveToClipboard","saveReportToFile","loadReportFromFile","inputNewName","inputReportName","invalidDataSource","dataStreamError","unableToOpenFile","unableTwoFileBrowsingSessions","inappropriateFileFormat","invalidJSONdata","wrongFormulaFormat","excelCsvChartsExportError","excelPdfExportLimitation","excelExportLimitation","noDataAvailable","saveDataToFile","dataWasUpdated","ocsvIncompatible","unknownError","invalidReportFormat","csvHeaderParsingError","tooManyColumnsInClassicMode","cantExpand","cantExpandTitle","buttons","ok","apply","cancel","save","clear","select","yes","no","contextMenu","clearSorting","collapse","expand","openFilter","sortColumnAsc","sortColumnDesc","sortRowAsc","sortRowDesc","date","year","quarter","month","day","quarters","q1","q2","q3","q4","months","january","february","march","april","may","june","july","august","september","october","november","december","monthsShort","weekdays","first","second","third","fourth","fifth","sixth","seventh","weekdaysShort","toolbar","connect","connect_local_csv","connect_local_ocsv","connect_local_json","connect_remote_csv","connect_remote_csv_mobile","connect_remote_json","connect_remote_json_mobile","open","local_report","remote_report","remote_report_mobile","save_json","load_json","grid_flat","grid_classic","grid_compact","format","format_cells","format_cells_mobile","conditional_formatting","conditional_formatting_mobile","options","minimize","export","export_print","export_html","export_excel","export_pdf","fields","done","delete","if","then","open_remote_csv","open_remote_json","csv","open_remote_report","choose_value","text_align","align_left","align_right","space","thousand_separator","decimal_separator","decimal_places","currency_symbol","currency_align","null_value","is_percent","true_value","false_value","conditional","add_condition","less_than","less_than_or_equal","greater_than","greater_than_or_equal","equal_to","not_equal_to","between","is_empty","all_values","and","and_symbole","cp_text","cp_highlight","layout_options","layout","compact_view","classic_view","flat_view","grand_totals","grand_totals_off","grand_totals_on","grand_totals_on_rows","grand_totals_on_columns","subtotals","subtotals_off","subtotals_on","subtotals_on_rows","subtotals_on_columns","choose_page_orientation","landscape","portrait","TablePivot","forwardRef","ref","WebDataRocksReact","Pivot","customizeCell","b","d","pivotCustomizeCell","report","dataSource","data","pivotDataSource","pivotOptions","slice","pivotSlice","localization","beforetoolbarcreated","tabs","getTabs","blocked","key","push","charAt","toUpperCase","tab","includes","handleToolbarOptions","toolbarOptions","container","height","width"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ {
2
+ "main": "./index.cjs.js",
3
+ "module": "./index.esm.js",
4
+ "types": "./index.d.ts"
5
+ }
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("jquery"),t=require("axios"),a=require("node-snackbar"),s=require("sweetalert2");function n(e){let t=window.self===window.top?window:window.parent;const{message:a,library:s,type:n,options:r}=e;t.postMessage({type:"message",params:{message:a,options:r,type:n??"message",library:s??"snackbar"}},"*")}function r(e){let{message:t,library:n,type:r,options:i}=e;switch(n=n??"snackbar",n){case"sweetAlert":let e={icon:t.type,title:t.title,text:t.text};if("toast"===r){let t=i??{toast:!0,position:"top-end",showConfirmButton:!1,timer:3e3,timerProgressBar:!0,didOpen:e=>{e.onmouseenter=s.stopTimer,e.onmouseleave=s.resumeTimer}};s.mixin(t).fire(e)}else s.fire({...e,...i});break;case"snackbar":let n=i,o=t.message??t.text??t.title??"Não foi possível carregar a mensagem.";a.show(void 0===n?{pos:"top-right",showAction:!1,customClass:t.type,text:"<p class='d-flex m-0 align-items-center'><i class='me-2 "+t.icon+"'></i>"+o+"</p>"}:n)}}function i(e){let t=document.getElementById(e),a=null===t?null:t.content.replace(".br/",".br");return null===a?null:"/"===a.substr(-1)?a.slice(0,a.length-1):a}function o(t,a){return new Promise((s=>{let n=window.self===window.top?e("body"):e(window.frameElement).parents("body");t&&0!==t.length||s(n),"#"!==t&&"."!==t||s(null);let r=n.find(t);r.length>0?s(r):setTimeout((()=>{let e=n.find("iframe").contents();0===e.length&&s(null),r=e.find(t),r.length>0&&s(r),s(null)}),a??300)}))}const l=i("auth"),d=i("react-base"),c=i("csrf-token");function m(e,t=""){let a=e;a&&(a.redirect&&(window.location.href=a.redirect),a.errors&&p(a.errors,0===t.length?"":t),a.accept&&p(a.accept,0===t.length?"":t,"is-valid"),a.message&&void 0===a?.errors&&n({message:{...a.message},type:"message",library:"snackbar"}))}function p(t,a="",s="is-invalid"){u(a,t),o("#"+a).then((a=>{if(null===a)return;let n="is-invalid"===s?"invalid-feedback":"valid-feedback",r="is-invalid"===s?"is-valid":"is-invalid";e.each(t,((e,t)=>{let i="";t.forEach((e=>i+=e+"<br>")),a.find("input[name='"+e+"']").addClass(s).parent().find("#j_feedback[data-name='"+e+"']").addClass(n).removeClass(r).html(i),a.find("input[name='"+e+"']").addClass(s).parent().parent().find("#j_feedback[data-name='"+e+"']").addClass(n).removeClass(r).html(i),a.find("input[name='"+e+"']").addClass(s).parent().parent().parent().find("#j_feedback[data-name='"+e+"']").addClass(n).removeClass(r).html(i),a.find("select[name='"+e+"']").addClass(s).parent().find("#j_feedback[data-name='"+e+"']").addClass(n).removeClass(r).html(i),a.find("textarea[name='"+e+"']").addClass(s).parent().find("#j_feedback[data-name='"+e+"']").addClass(n).removeClass(r).html(i),a.find("#j_feedback[data-name='"+e+"']").addClass(s).html(i)}))}))}function f(t=""){o("#"+t).then((t=>{if(null===t)return;let a=["is-invalid","is-valid","p-invalid"],s=["invalid-feedback","valid-feedback"];e.each(t.find("input"),(function(){e(this).removeClass(a).parent().find("#j_feedback").removeClass(s).html(""),e(this).removeClass(a).parent().parent().find("#j_feedback").removeClass(s).html(""),e(this).removeClass(a).parent().parent().parent().find("#j_feedback").removeClass(s).html("")})),e.each(t.find("select"),(function(){e(this).removeClass(a).parent().find("#j_feedback").removeClass(s).html("")})),e.each(t.find("textarea"),(function(){e(this).removeClass(a).parent().find("#j_feedback").removeClass(s).html("")})),e.each(t.find("#j_feedback"),(function(){e(this).removeClass(a).html("")}))}))}function u(t="",a){o("#"+t).then((t=>{if(null===t)return;let s=Object.keys(a)[0],n=t.find("*[id='"+s+"']").closest(".tab-pane"),r=n.attr("id"),i=n.parent().parent().find(".nav");n.parent(".tab-content").children(".tab-pane").each((function(t,a){void 0!==a&&(e(a).attr("id")===r?(e(a).addClass("show active"),i.find("button[data-bs-target='#"+r+"']").addClass("active show")):(e(a).removeClass("show active"),i.find("button[data-bs-target='#"+e(a).attr("id")+"']").removeClass("active")))}))}))}exports.BASE=d,exports.TOKEN=c,exports.USER=l,exports.getCep=async function(e){let a=0===e.length?"00000000":e.replace("-","");return await t.get("https://viacep.com.br/ws/"+a+"/json/").then((e=>e.data))},exports.getElementDOM=o,exports.getMetaContent=i,exports.message=r,exports.messageField=p,exports.messageFieldClear=f,exports.post=function(e,a,s,n){return new Promise(((r,i)=>{let o=d+(e.startsWith("/")?"":"/")+e;f(s),function(e,a){let s=0;t.interceptors.request.use((n=>(s+=1,s>1&&t.getUri(n)===e&&a?Promise.reject(new Error("Requisições bloqueadas!")):n))),a||t.interceptors.request.clear();t.interceptors.response.use((e=>(s-=1,e)),(function(e){return s-=1,Promise.reject(e)}))}(n?.url??o,n?.blockedToManyRequest??!1),t({method:"post",url:n?.url??o,headers:{"X-CSRF-TOKEN":c},data:a||{}}).then((e=>{void 0!==e?.data&&r(e.data),"boolean"==typeof n?.blockedResponse&&!1!==n?.blockedResponse||m(e?.data,s)})).catch((e=>{m(e.response?.data,s),i(e)}))}))},exports.response=m,exports.sendMessage=n,exports.tabViewActiveError=u,exports.windowMessageEvent=function(){window.addEventListener("message",(function(e){if("message"===e.data?.type){r({...e.data.params})}}))};
1
+ "use strict";var e=require("jquery"),a=require("axios"),t=require("node-snackbar"),n=require("sweetalert2");function s(e){let a=window.self===window.top?window:window.parent;const{message:t,library:n,type:s,options:i}=e;a.postMessage({type:"message",params:{message:t,options:i,type:s??"message",library:n??"snackbar"}},"*")}function i(e){let{message:a,library:s,type:i,options:r}=e;switch(s=s??"snackbar",s){case"sweetAlert":let e={icon:a.type,title:a.title,text:a.text};if("toast"===i){let a=r??{toast:!0,position:"top-end",showConfirmButton:!1,timer:3e3,timerProgressBar:!0,didOpen:e=>{e.onmouseenter=n.stopTimer,e.onmouseleave=n.resumeTimer}};n.mixin(a).fire(e)}else n.fire({...e,...r});break;case"snackbar":let s=r,o=a.message??a.text??a.title??"Não foi possível carregar a mensagem.";t.show(void 0===s?{pos:"top-right",showAction:!1,customClass:a.type,text:"<p class='d-flex m-0 align-items-center'><i class='me-2 "+a.icon+"'></i>"+o+"</p>"}:s)}}function r(e){let a=document.getElementById(e),t=null===a?null:a.content.replace(".br/",".br");return null===t?null:"/"===t.substr(-1)?t.slice(0,t.length-1):t}function o(a,t){return new Promise((n=>{let s=window.self===window.top?e("body"):e(window.frameElement).parents("body");a&&0!==a.length||n(s),"#"!==a&&"."!==a||n(null);let i=s.find(a);i.length>0?n(i):setTimeout((()=>{let e=s.find("iframe").contents();0===e.length&&n(null),i=e.find(a),i.length>0&&n(i),n(null)}),t??300)}))}const d=r("auth"),l=r("react-base"),m=r("csrf-token");function c(e,a=""){let t=e;t&&(t.redirect&&(window.location.href=t.redirect),t.errors&&p(t.errors,0===a.length?"":a),t.accept&&p(t.accept,0===a.length?"":a,"is-valid"),t.message&&void 0===t?.errors&&s({message:{...t.message},type:"message",library:"snackbar"}))}function p(a,t="",n="is-invalid"){f(t,a),o("#"+t).then((t=>{if(null===t)return;let s="is-invalid"===n?"invalid-feedback":"valid-feedback",i="is-invalid"===n?"is-valid":"is-invalid";e.each(a,((e,a)=>{let r="";a.forEach((e=>r+=e+"<br>")),t.find("input[name='"+e+"']").addClass(n).parent().find("#j_feedback[data-name='"+e+"']").addClass(s).removeClass(i).html(r),t.find("input[name='"+e+"']").addClass(n).parent().parent().find("#j_feedback[data-name='"+e+"']").addClass(s).removeClass(i).html(r),t.find("input[name='"+e+"']").addClass(n).parent().parent().parent().find("#j_feedback[data-name='"+e+"']").addClass(s).removeClass(i).html(r),t.find("select[name='"+e+"']").addClass(n).parent().find("#j_feedback[data-name='"+e+"']").addClass(s).removeClass(i).html(r),t.find("textarea[name='"+e+"']").addClass(n).parent().find("#j_feedback[data-name='"+e+"']").addClass(s).removeClass(i).html(r),t.find("#j_feedback[data-name='"+e+"']").addClass(n).html(r)}))}))}function u(a=""){o("#"+a).then((a=>{if(null===a)return;let t=["is-invalid","is-valid","p-invalid"],n=["invalid-feedback","valid-feedback"];e.each(a.find("input"),(function(){e(this).removeClass(t).parent().find("#j_feedback").removeClass(n).html(""),e(this).removeClass(t).parent().parent().find("#j_feedback").removeClass(n).html(""),e(this).removeClass(t).parent().parent().parent().find("#j_feedback").removeClass(n).html("")})),e.each(a.find("select"),(function(){e(this).removeClass(t).parent().find("#j_feedback").removeClass(n).html("")})),e.each(a.find("textarea"),(function(){e(this).removeClass(t).parent().find("#j_feedback").removeClass(n).html("")})),e.each(a.find("#j_feedback"),(function(){e(this).removeClass(t).html("")}))}))}function f(a="",t){o("#"+a).then((a=>{if(null===a)return;let n=Object.keys(t)[0],s=a.find("*[id='"+n+"']").closest(".tab-pane"),i=s.attr("id"),r=s.parent().parent().find(".nav");s.parent(".tab-content").children(".tab-pane").each((function(a,t){void 0!==t&&(e(t).attr("id")===i?(e(t).addClass("show active"),r.find("button[data-bs-target='#"+i+"']").addClass("active show")):(e(t).removeClass("show active"),r.find("button[data-bs-target='#"+e(t).attr("id")+"']").removeClass("active")))}))}))}exports.BASE=l,exports.ESTADOS=[{name:"Acre",id:"AC"},{name:"Alagoas",id:"AL"},{name:"Amapá",id:"AP"},{name:"Amazonas",id:"AM"},{name:"Bahia",id:"BA"},{name:"Ceará",id:"CE"},{name:"Distrito Federal",id:"DF"},{name:"Espírito Santo",id:"ES"},{name:"Goiás",id:"GO"},{name:"Maranhão",id:"MA"},{name:"Mato Grosso",id:"MT"},{name:"Mato Grosso do Sul",id:"MS"},{name:"Minas Gerais",id:"MG"},{name:"Pará",id:"PA"},{name:"Paraíba",id:"PB"},{name:"Paraná",id:"PR"},{name:"Pernambuco",id:"PE"},{name:"Piauí",id:"PI"},{name:"Rio de Janeiro",id:"RJ"},{name:"Rio Grande do Norte",id:"RN"},{name:"Rio Grande do Sul",id:"RS"},{name:"Rondônia",id:"RO"},{name:"Roraima",id:"RR"},{name:"Santa Catarina",id:"SC"},{name:"São Paulo",id:"SP"},{name:"Sergipe",id:"SE"},{name:"Tocantins",id:"TO"}],exports.MES=[{id:1,name:"Janeiro"},{id:2,name:"Fevereiro"},{id:3,name:"Março"},{id:4,name:"Abril"},{id:5,name:"Maio"},{id:6,name:"Junho"},{id:7,name:"Julho"},{id:8,name:"Agosto"},{id:9,name:"Setembro"},{id:10,name:"Outubro"},{id:11,name:"Novembro"},{id:12,name:"Dezembro"}],exports.TOKEN=m,exports.USER=d,exports.getCep=async function(e){let t=0===e.length?"00000000":e.replace("-","");return await a.get("https://viacep.com.br/ws/"+t+"/json/").then((e=>e.data))},exports.getElementDOM=o,exports.getMetaContent=r,exports.handleHours=function(e){let a=e.replace(/[^\d.]/g,"");const t=a.split(".");return t.length>1&&(t[1]=t[1].substring(0,2)),a=t.join("."),a.length>2&&(a=a.substring(0,a.length-2)+":"+a.substring(a.length-2)),a},exports.handleNumber=function(e,a="decimal"){let t=e.replace(/[^0-9.,]/g,"");return"decimal"===a?t.replace(",",".").replace(/(\..*)\./g,"$1"):parseFloat(t.replace(",",".")).toLocaleString("pt-BR",{style:"currency",currency:"BRL"}).replace("."," ")},exports.message=i,exports.messageField=p,exports.messageFieldClear=u,exports.post=function(e,t,n,s){return new Promise(((i,r)=>{let o=l+(e.startsWith("/")?"":"/")+e;u(n),function(e,t){let n=0;a.interceptors.request.use((s=>(n+=1,n>1&&a.getUri(s)===e&&t?Promise.reject(new Error("Requisições bloqueadas!")):s))),t||a.interceptors.request.clear();a.interceptors.response.use((e=>(n-=1,e)),(function(e){return n-=1,Promise.reject(e)}))}(s?.url??o,s?.blockedToManyRequest??!1),a({method:"post",url:s?.url??o,headers:{"X-CSRF-TOKEN":m},data:t||{}}).then((e=>{void 0!==e?.data&&i(e.data),"boolean"==typeof s?.blockedResponse&&!1!==s?.blockedResponse||c(e?.data,n)})).catch((e=>{c(e.response?.data,n),r(e)}))}))},exports.response=c,exports.sendMessage=s,exports.tabViewActiveError=f,exports.windowMessageEvent=function(){window.addEventListener("message",(function(e){if("message"===e.data?.type){i({...e.data.params})}}))};
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../src/utils/message.ts","../../src/utils/helper.ts","../../src/utils/const.ts","../../src/utils/response.ts","../../src/utils/request.ts"],"sourcesContent":["import Snackbar from \"node-snackbar\";\r\nimport SweetAlert, { SweetAlertOptions } from \"sweetalert2\";\r\nimport { IUtilsMessage, IUtilsMessageOptions } from \"./types\";\r\n\r\n/**\r\n * Envia a mensagem para o evento da janela\r\n */\r\nexport function sendMessage<T extends keyof IUtilsMessageOptions>(params: IUtilsMessage<T>) {\r\n let Window: Window = window.self === window.top ? window : window.parent;\r\n const { message, library, type, options } = params;\r\n Window.postMessage({\r\n type: \"message\",\r\n params: {\r\n message,\r\n options,\r\n type: type ?? \"message\",\r\n library: library ?? \"snackbar\"\r\n }\r\n }, \"*\");\r\n}\r\n\r\n/**\r\n * Retorna o objeto mensagem de acordo com os parâmetros\r\n */\r\nexport function message<T extends keyof IUtilsMessageOptions>(params: IUtilsMessage<T>) {\r\n let { message, library, type, options } = params;\r\n\r\n library = library ?? \"snackbar\";\r\n switch (library) {\r\n case \"sweetAlert\":\r\n let swal: any = {\r\n icon: message.type,\r\n title: message.title,\r\n text: message.text\r\n };\r\n if (type === \"toast\") {\r\n let config: SweetAlertOptions = options as SweetAlertOptions ?? {\r\n toast: true,\r\n position: \"top-end\",\r\n showConfirmButton: false,\r\n timer: 3000,\r\n timerProgressBar: true,\r\n didOpen: (toast) => {\r\n toast.onmouseenter = SweetAlert.stopTimer;\r\n toast.onmouseleave = SweetAlert.resumeTimer;\r\n }\r\n };\r\n const Toast = SweetAlert.mixin(config);\r\n Toast.fire(swal);\r\n } else {\r\n SweetAlert.fire({ ...swal, ...options });\r\n }\r\n break;\r\n case \"snackbar\":\r\n let config: any = options;\r\n let text: string = message.message ?? message.text ?? message.title ?? \"Não foi possível carregar a mensagem.\";\r\n Snackbar.show(config === undefined ? {\r\n pos: \"top-right\",\r\n showAction: false,\r\n customClass: message.type,\r\n text: \"<p class='d-flex m-0 align-items-center'><i class='me-2 \" + message.icon + \"'></i>\" + text + \"</p>\",\r\n } : config);\r\n break;\r\n }\r\n}","import $ from \"jquery\";\r\nimport axios from \"axios\";\r\nimport { message } from \"./message\";\r\nimport { IUtilsHelperResponse } from \"./types\";\r\n\r\n/**\r\n * Realiza a pesquisa do elemento html na DOM<br>\r\n * <meta id=\"???\" name=\"???\" content=\"your-url\">\r\n */\r\nexport function getMetaContent(id: string): string | null {\r\n let element: any = document.getElementById(id);\r\n let url: null | string = element === null ? null : (element.content).replace(\".br/\", \".br\");\r\n return url === null ? null : url.substr(-1) === \"/\" ? url.slice(0, url.length - 1) : url;\r\n}\r\n\r\n/**\r\n * Realiza a pesquisa do CEP na API pública \"https://viacep.com.br/ws/\"\r\n */\r\nexport async function getCep(value: string): Promise<IUtilsHelperResponse[\"gep_cep\"]> {\r\n let cep = value.length === 0 ? \"00000000\" : value.replace(\"-\", \"\");\r\n return await axios.get<IUtilsHelperResponse[\"gep_cep\"]>(\"https://viacep.com.br/ws/\" + cep + \"/json/\")\r\n .then(data => data.data);\r\n}\r\n\r\n/**\r\n * Realiza a pesquisa do elemento na árvore DOM\r\n */\r\nexport function getElementDOM(element?: string, preloadTimeOut?: number): Promise<null | JQuery<HTMLElement>> {\r\n return new Promise((resolve) => {\r\n // @ts-ignore\r\n let body = window.self === window.top ? $(\"body\") : $(window.frameElement).parents(\"body\");\r\n if (!element || element.length === 0) {\r\n resolve(body);\r\n }\r\n\r\n if (element === \"#\" || element === \".\") {\r\n resolve(null);\r\n }\r\n\r\n let elementFound = body.find(element);\r\n if (elementFound.length > 0) {\r\n resolve(elementFound);\r\n } else {\r\n setTimeout(() => {\r\n let iframe = body.find(\"iframe\").contents();\r\n if (iframe.length === 0) {\r\n resolve(null);\r\n }\r\n elementFound = iframe.find(element);\r\n if (elementFound.length > 0) {\r\n resolve(elementFound);\r\n }\r\n resolve(null);\r\n }, preloadTimeOut ?? 300);\r\n }\r\n });\r\n}\r\n\r\n/**\r\n * Permite à comunicação de origem cruzada entre objetos do Windows.<br>\r\n * Exemplo: Comunicação entre iframe e corpo principal\r\n */\r\nexport function windowMessageEvent(): void {\r\n window.addEventListener(\"message\", function (event: MessageEvent) {\r\n if (event.data?.type === \"message\") {\r\n let data = event.data;\r\n message<any>({ ...data.params });\r\n }\r\n });\r\n}","import { getMetaContent } from \"./helper\";\r\n\r\nexport const USER: string | null = getMetaContent(\"auth\");\r\nexport const BASE: string | null = getMetaContent(\"react-base\");\r\nexport const TOKEN: string | null = getMetaContent(\"csrf-token\");\r\n","import $ from \"jquery\";\r\nimport { sendMessage } from \"./message\";\r\nimport { getElementDOM } from \"./helper\";\r\nimport { IUtilsResponseType, IUtilsResponseError } from \"./types\";\r\n\r\n/**\r\n * Realizei o gerenciamento do objeto de resposta\r\n */\r\nexport function response<Type>(\r\n response: IUtilsResponseType<Type>,\r\n form: string = \"\"\r\n): void {\r\n let data: IUtilsResponseType<Type> = response;\r\n if (!data) {\r\n return;\r\n }\r\n\r\n if (data.redirect) {\r\n window.location.href = data.redirect;\r\n }\r\n\r\n if (data.errors) {\r\n messageField(data.errors, form.length === 0 ? \"\" : form);\r\n }\r\n\r\n if (data.accept) {\r\n messageField(data.accept, form.length === 0 ? \"\" : form, \"is-valid\");\r\n }\r\n\r\n if (data.message && data?.errors === undefined) {\r\n sendMessage<\"snackbar\">({\r\n message: { ...data.message },\r\n type: \"message\",\r\n library: \"snackbar\"\r\n });\r\n }\r\n}\r\n\r\n/**\r\n * Exibe a mensagem no campo do formulário\r\n */\r\nexport function messageField(\r\n data: IUtilsResponseError,\r\n form: string = \"\",\r\n type: string = \"is-invalid\"\r\n): void {\r\n tabViewActiveError(form, data);\r\n getElementDOM(\"#\" + form)\r\n .then(formulario => {\r\n if (formulario === null) {\r\n return;\r\n }\r\n\r\n let validationFeedbackClass: string = type === \"is-invalid\" ? \"invalid-feedback\" : \"valid-feedback\";\r\n let removeValidationFeedbackClass: string = type === \"is-invalid\" ? \"is-valid\" : \"is-invalid\";\r\n\r\n $.each(data, (key: string, value) => {\r\n let text = \"\";\r\n value.forEach(value => text += value + \"<br>\");\r\n\r\n formulario.find(\"input[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"input[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"input[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"select[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"textarea[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(type)\r\n .html(text);\r\n });\r\n });\r\n}\r\n\r\n/**\r\n * Limpar as mensagens de feedback do formulário\r\n */\r\nexport function messageFieldClear(\r\n form: string = \"\"\r\n): void {\r\n getElementDOM(\"#\" + form)\r\n .then(formulario => {\r\n if (formulario === null) {\r\n return;\r\n }\r\n\r\n let validationClass: string[] = [\"is-invalid\", \"is-valid\", \"p-invalid\"];\r\n let validationFeedbackClass: string[] = [\"invalid-feedback\", \"valid-feedback\"];\r\n\r\n $.each(formulario.find(\"input\"), function () {\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n });\r\n\r\n $.each(formulario.find(\"select\"), function () {\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n });\r\n\r\n $.each(formulario.find(\"textarea\"), function () {\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n });\r\n\r\n $.each(formulario.find(\"#j_feedback\"), function () {\r\n $(this).removeClass(validationClass).html(\"\");\r\n });\r\n });\r\n}\r\n\r\n/**\r\n * Ativa o TabView quando o campo apresenta erro\r\n */\r\nexport function tabViewActiveError(\r\n form: string = \"\",\r\n errors: IUtilsResponseError\r\n): void {\r\n getElementDOM(\"#\" + form)\r\n .then(TabView => {\r\n if (TabView === null) {\r\n return;\r\n }\r\n\r\n let fieldError = Object.keys(errors)[0];\r\n\r\n let TabViewSelected = TabView.find(\"*[id='\" + fieldError + \"']\").closest(\".tab-pane\");\r\n let TabViewSelectedId = TabViewSelected.attr(\"id\");\r\n let TabViewNav = TabViewSelected.parent().parent().find(\".nav\");\r\n\r\n TabViewSelected.parent(\".tab-content\").children(\".tab-pane\").each(function (_, value) {\r\n if (typeof value !== \"undefined\") {\r\n if ($(value).attr(\"id\") === TabViewSelectedId) {\r\n $(value).addClass(\"show active\");\r\n TabViewNav.find(\"button[data-bs-target='#\" + TabViewSelectedId + \"']\").addClass(\"active show\");\r\n } else {\r\n $(value).removeClass(\"show active\");\r\n TabViewNav.find(\"button[data-bs-target='#\" + $(value).attr(\"id\") + \"']\").removeClass(\"active\");\r\n }\r\n }\r\n });\r\n });\r\n}","import axios from \"axios\";\r\nimport { BASE, TOKEN } from \"./const\";\r\nimport { messageFieldClear, response } from \"./response\";\r\nimport { IUtilsRequestPostOptions, IUtilsResponseType } from \"./types\";\r\n\r\n/**\r\n * Simplifica a solicitação POST HTTP usando a biblioteca axios\r\n */\r\nexport function post<TypeDataResponse = IUtilsResponseType<any>>(\r\n route: string,\r\n body: any,\r\n form?: string,\r\n options?: IUtilsRequestPostOptions\r\n): Promise<TypeDataResponse> {\r\n return new Promise((resolve, reject) => {\r\n let url = BASE + (route.startsWith(\"/\") ? \"\" : \"/\") + route;\r\n messageFieldClear(form);\r\n handleToManyRequest(options?.url ?? url, options?.blockedToManyRequest ?? false);\r\n axios<TypeDataResponse>({\r\n method: \"post\",\r\n url: options?.url ?? url,\r\n headers: { \"X-CSRF-TOKEN\": TOKEN },\r\n data: !body ? {} : body,\r\n }).then(data => {\r\n if (data?.data !== undefined) {\r\n resolve(data.data);\r\n }\r\n if (typeof options?.blockedResponse !== \"boolean\" || options?.blockedResponse === false) {\r\n response<TypeDataResponse>((data?.data as IUtilsResponseType<TypeDataResponse>), form);\r\n }\r\n }).catch(error => {\r\n response<TypeDataResponse>(error.response?.data, form);\r\n reject(error);\r\n });\r\n });\r\n}\r\n\r\n/**\r\n * Bloqueia várias solicitações simultâneas\r\n */\r\nfunction handleToManyRequest(url: string, blocked: boolean): void {\r\n let requestCount = 0;\r\n axios.interceptors.request.use(config => {\r\n requestCount = requestCount + 1;\r\n if (requestCount > 1 && axios.getUri(config) === url && blocked) {\r\n return Promise.reject(new Error(\"Requisições bloqueadas!\"));\r\n }\r\n return config;\r\n });\r\n if (!blocked) {\r\n axios.interceptors.request.clear();\r\n }\r\n\r\n axios.interceptors.response.use(response => {\r\n requestCount = requestCount - 1;\r\n return response;\r\n }, function (error) {\r\n requestCount = requestCount - 1;\r\n return Promise.reject(error);\r\n });\r\n}"],"names":["sendMessage","params","Window","window","self","top","parent","message","library","type","options","postMessage","swal","icon","title","text","config","toast","position","showConfirmButton","timer","timerProgressBar","didOpen","onmouseenter","SweetAlert","stopTimer","onmouseleave","resumeTimer","mixin","fire","Snackbar","show","undefined","pos","showAction","customClass","getMetaContent","id","element","document","getElementById","url","replace","substr","slice","length","getElementDOM","preloadTimeOut","Promise","resolve","body","$","frameElement","parents","elementFound","find","setTimeout","iframe","contents","USER","BASE","TOKEN","response","form","data","redirect","location","href","errors","messageField","accept","tabViewActiveError","then","formulario","validationFeedbackClass","removeValidationFeedbackClass","each","key","value","forEach","addClass","removeClass","html","messageFieldClear","validationClass","this","TabView","fieldError","Object","keys","TabViewSelected","closest","TabViewSelectedId","attr","TabViewNav","children","_","async","cep","axios","get","route","reject","startsWith","blocked","requestCount","interceptors","request","use","getUri","Error","clear","error","handleToManyRequest","blockedToManyRequest","method","headers","blockedResponse","catch","addEventListener","event"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../src/utils/message.ts","../../src/utils/helper.ts","../../src/utils/const.ts","../../src/utils/response.ts","../../src/utils/handle.ts","../../src/utils/request.ts"],"sourcesContent":["import Snackbar from \"node-snackbar\";\r\nimport SweetAlert, { SweetAlertOptions } from \"sweetalert2\";\r\nimport { IUtilsMessage, IUtilsMessageOptions } from \"./types\";\r\n\r\n/**\r\n * Envia a mensagem para o evento da janela\r\n */\r\nexport function sendMessage<T extends keyof IUtilsMessageOptions>(params: IUtilsMessage<T>) {\r\n let Window: Window = window.self === window.top ? window : window.parent;\r\n const { message, library, type, options } = params;\r\n Window.postMessage({\r\n type: \"message\",\r\n params: {\r\n message,\r\n options,\r\n type: type ?? \"message\",\r\n library: library ?? \"snackbar\"\r\n }\r\n }, \"*\");\r\n}\r\n\r\n/**\r\n * Retorna o objeto mensagem de acordo com os parâmetros\r\n */\r\nexport function message<T extends keyof IUtilsMessageOptions>(params: IUtilsMessage<T>) {\r\n let { message, library, type, options } = params;\r\n\r\n library = library ?? \"snackbar\";\r\n switch (library) {\r\n case \"sweetAlert\":\r\n let swal: any = {\r\n icon: message.type,\r\n title: message.title,\r\n text: message.text\r\n };\r\n if (type === \"toast\") {\r\n let config: SweetAlertOptions = options as SweetAlertOptions ?? {\r\n toast: true,\r\n position: \"top-end\",\r\n showConfirmButton: false,\r\n timer: 3000,\r\n timerProgressBar: true,\r\n didOpen: (toast) => {\r\n toast.onmouseenter = SweetAlert.stopTimer;\r\n toast.onmouseleave = SweetAlert.resumeTimer;\r\n }\r\n };\r\n const Toast = SweetAlert.mixin(config);\r\n Toast.fire(swal);\r\n } else {\r\n SweetAlert.fire({ ...swal, ...options });\r\n }\r\n break;\r\n case \"snackbar\":\r\n let config: any = options;\r\n let text: string = message.message ?? message.text ?? message.title ?? \"Não foi possível carregar a mensagem.\";\r\n Snackbar.show(config === undefined ? {\r\n pos: \"top-right\",\r\n showAction: false,\r\n customClass: message.type,\r\n text: \"<p class='d-flex m-0 align-items-center'><i class='me-2 \" + message.icon + \"'></i>\" + text + \"</p>\",\r\n } : config);\r\n break;\r\n }\r\n}","import $ from \"jquery\";\r\nimport axios from \"axios\";\r\nimport { message } from \"./message\";\r\nimport { IUtilsHelperResponse } from \"./types\";\r\n\r\n/**\r\n * Realiza a pesquisa do elemento html na DOM<br>\r\n * <meta id=\"???\" name=\"???\" content=\"your-url\">\r\n */\r\nexport function getMetaContent(id: string): string | null {\r\n let element: any = document.getElementById(id);\r\n let url: null | string = element === null ? null : (element.content).replace(\".br/\", \".br\");\r\n return url === null ? null : url.substr(-1) === \"/\" ? url.slice(0, url.length - 1) : url;\r\n}\r\n\r\n/**\r\n * Realiza a pesquisa do CEP na API pública \"https://viacep.com.br/ws/\"\r\n */\r\nexport async function getCep(value: string): Promise<IUtilsHelperResponse[\"gep_cep\"]> {\r\n let cep = value.length === 0 ? \"00000000\" : value.replace(\"-\", \"\");\r\n return await axios.get<IUtilsHelperResponse[\"gep_cep\"]>(\"https://viacep.com.br/ws/\" + cep + \"/json/\")\r\n .then(data => data.data);\r\n}\r\n\r\n/**\r\n * Realiza a pesquisa do elemento na árvore DOM\r\n */\r\nexport function getElementDOM(element?: string, preloadTimeOut?: number): Promise<null | JQuery<HTMLElement>> {\r\n return new Promise((resolve) => {\r\n // @ts-ignore\r\n let body = window.self === window.top ? $(\"body\") : $(window.frameElement).parents(\"body\");\r\n if (!element || element.length === 0) {\r\n resolve(body);\r\n }\r\n\r\n if (element === \"#\" || element === \".\") {\r\n resolve(null);\r\n }\r\n\r\n let elementFound = body.find(element);\r\n if (elementFound.length > 0) {\r\n resolve(elementFound);\r\n } else {\r\n setTimeout(() => {\r\n let iframe = body.find(\"iframe\").contents();\r\n if (iframe.length === 0) {\r\n resolve(null);\r\n }\r\n elementFound = iframe.find(element);\r\n if (elementFound.length > 0) {\r\n resolve(elementFound);\r\n }\r\n resolve(null);\r\n }, preloadTimeOut ?? 300);\r\n }\r\n });\r\n}\r\n\r\n/**\r\n * Permite à comunicação de origem cruzada entre objetos do Windows.<br>\r\n * Exemplo: Comunicação entre iframe e corpo principal\r\n */\r\nexport function windowMessageEvent(): void {\r\n window.addEventListener(\"message\", function (event: MessageEvent) {\r\n if (event.data?.type === \"message\") {\r\n let data = event.data;\r\n message<any>({ ...data.params });\r\n }\r\n });\r\n}","import { getMetaContent } from \"./helper\";\r\n\r\nexport const USER: string | null = getMetaContent(\"auth\");\r\nexport const BASE: string | null = getMetaContent(\"react-base\");\r\nexport const TOKEN: string | null = getMetaContent(\"csrf-token\");\r\n\r\nexport const MES: Array<{ id: number, name: string }> = [\r\n { id: 1, name: \"Janeiro\" },\r\n { id: 2, name: \"Fevereiro\" },\r\n { id: 3, name: \"Março\" },\r\n { id: 4, name: \"Abril\" },\r\n { id: 5, name: \"Maio\" },\r\n { id: 6, name: \"Junho\" },\r\n { id: 7, name: \"Julho\" },\r\n { id: 8, name: \"Agosto\" },\r\n { id: 9, name: \"Setembro\" },\r\n { id: 10, name: \"Outubro\" },\r\n { id: 11, name: \"Novembro\" },\r\n { id: 12, name: \"Dezembro\" },\r\n];\r\n\r\nexport const ESTADOS: Array<{ id: string, name: string }> = [\r\n { name: \"Acre\", id: \"AC\" },\r\n { name: \"Alagoas\", id: \"AL\" },\r\n { name: \"Amapá\", id: \"AP\" },\r\n { name: \"Amazonas\", id: \"AM\" },\r\n { name: \"Bahia\", id: \"BA\" },\r\n { name: \"Ceará\", id: \"CE\" },\r\n { name: \"Distrito Federal\", id: \"DF\" },\r\n { name: \"Espírito Santo\", id: \"ES\" },\r\n { name: \"Goiás\", id: \"GO\" },\r\n { name: \"Maranhão\", id: \"MA\" },\r\n { name: \"Mato Grosso\", id: \"MT\" },\r\n { name: \"Mato Grosso do Sul\", id: \"MS\" },\r\n { name: \"Minas Gerais\", id: \"MG\" },\r\n { name: \"Pará\", id: \"PA\" },\r\n { name: \"Paraíba\", id: \"PB\" },\r\n { name: \"Paraná\", id: \"PR\" },\r\n { name: \"Pernambuco\", id: \"PE\" },\r\n { name: \"Piauí\", id: \"PI\" },\r\n { name: \"Rio de Janeiro\", id: \"RJ\" },\r\n { name: \"Rio Grande do Norte\", id: \"RN\" },\r\n { name: \"Rio Grande do Sul\", id: \"RS\" },\r\n { name: \"Rondônia\", id: \"RO\" },\r\n { name: \"Roraima\", id: \"RR\" },\r\n { name: \"Santa Catarina\", id: \"SC\" },\r\n { name: \"São Paulo\", id: \"SP\" },\r\n { name: \"Sergipe\", id: \"SE\" },\r\n { name: \"Tocantins\", id: \"TO\" }\r\n];","import $ from \"jquery\";\r\nimport { sendMessage } from \"./message\";\r\nimport { getElementDOM } from \"./helper\";\r\nimport { IUtilsResponseType, IUtilsResponseError } from \"./types\";\r\n\r\n/**\r\n * Realizei o gerenciamento do objeto de resposta\r\n */\r\nexport function response<Type>(\r\n response: IUtilsResponseType<Type>,\r\n form: string = \"\"\r\n): void {\r\n let data: IUtilsResponseType<Type> = response;\r\n if (!data) {\r\n return;\r\n }\r\n\r\n if (data.redirect) {\r\n window.location.href = data.redirect;\r\n }\r\n\r\n if (data.errors) {\r\n messageField(data.errors, form.length === 0 ? \"\" : form);\r\n }\r\n\r\n if (data.accept) {\r\n messageField(data.accept, form.length === 0 ? \"\" : form, \"is-valid\");\r\n }\r\n\r\n if (data.message && data?.errors === undefined) {\r\n sendMessage<\"snackbar\">({\r\n message: { ...data.message },\r\n type: \"message\",\r\n library: \"snackbar\"\r\n });\r\n }\r\n}\r\n\r\n/**\r\n * Exibe a mensagem no campo do formulário\r\n */\r\nexport function messageField(\r\n data: IUtilsResponseError,\r\n form: string = \"\",\r\n type: string = \"is-invalid\"\r\n): void {\r\n tabViewActiveError(form, data);\r\n getElementDOM(\"#\" + form)\r\n .then(formulario => {\r\n if (formulario === null) {\r\n return;\r\n }\r\n\r\n let validationFeedbackClass: string = type === \"is-invalid\" ? \"invalid-feedback\" : \"valid-feedback\";\r\n let removeValidationFeedbackClass: string = type === \"is-invalid\" ? \"is-valid\" : \"is-invalid\";\r\n\r\n $.each(data, (key: string, value) => {\r\n let text = \"\";\r\n value.forEach(value => text += value + \"<br>\");\r\n\r\n formulario.find(\"input[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"input[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"input[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"select[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"textarea[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(type)\r\n .html(text);\r\n });\r\n });\r\n}\r\n\r\n/**\r\n * Limpar as mensagens de feedback do formulário\r\n */\r\nexport function messageFieldClear(\r\n form: string = \"\"\r\n): void {\r\n getElementDOM(\"#\" + form)\r\n .then(formulario => {\r\n if (formulario === null) {\r\n return;\r\n }\r\n\r\n let validationClass: string[] = [\"is-invalid\", \"is-valid\", \"p-invalid\"];\r\n let validationFeedbackClass: string[] = [\"invalid-feedback\", \"valid-feedback\"];\r\n\r\n $.each(formulario.find(\"input\"), function () {\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n });\r\n\r\n $.each(formulario.find(\"select\"), function () {\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n });\r\n\r\n $.each(formulario.find(\"textarea\"), function () {\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n });\r\n\r\n $.each(formulario.find(\"#j_feedback\"), function () {\r\n $(this).removeClass(validationClass).html(\"\");\r\n });\r\n });\r\n}\r\n\r\n/**\r\n * Ativa o TabView quando o campo apresenta erro\r\n */\r\nexport function tabViewActiveError(\r\n form: string = \"\",\r\n errors: IUtilsResponseError\r\n): void {\r\n getElementDOM(\"#\" + form)\r\n .then(TabView => {\r\n if (TabView === null) {\r\n return;\r\n }\r\n\r\n let fieldError = Object.keys(errors)[0];\r\n\r\n let TabViewSelected = TabView.find(\"*[id='\" + fieldError + \"']\").closest(\".tab-pane\");\r\n let TabViewSelectedId = TabViewSelected.attr(\"id\");\r\n let TabViewNav = TabViewSelected.parent().parent().find(\".nav\");\r\n\r\n TabViewSelected.parent(\".tab-content\").children(\".tab-pane\").each(function (_, value) {\r\n if (typeof value !== \"undefined\") {\r\n if ($(value).attr(\"id\") === TabViewSelectedId) {\r\n $(value).addClass(\"show active\");\r\n TabViewNav.find(\"button[data-bs-target='#\" + TabViewSelectedId + \"']\").addClass(\"active show\");\r\n } else {\r\n $(value).removeClass(\"show active\");\r\n TabViewNav.find(\"button[data-bs-target='#\" + $(value).attr(\"id\") + \"']\").removeClass(\"active\");\r\n }\r\n }\r\n });\r\n });\r\n}","/**\r\n * Formata um valor numérico para o formato decimal ou monetário.\r\n *\r\n * @param valor - O valor a ser formatado.\r\n * @param format - O formato desejado: \"money\" para monetário ou \"decimal\" para decimal.\r\n * @returns O valor formatado como string.\r\n */\r\nexport function handleNumber(\r\n valor: string,\r\n format: \"money\" | \"decimal\" = \"decimal\"\r\n): string {\r\n let value = valor.replace(/[^0-9.,]/g, \"\");\r\n if (format === \"decimal\") {\r\n return value.replace(\",\", \".\").replace(/(\\..*)\\./g, \"$1\");\r\n }\r\n return parseFloat(value.replace(\",\", \".\")).toLocaleString(\"pt-BR\", {\r\n style: \"currency\",\r\n currency: \"BRL\"\r\n }).replace(\".\", \" \");\r\n}\r\n\r\n/**\r\n * Formata um valor de string para o formato de horas (HH:MM).\r\n *\r\n * @param valor - O valor a ser formatado.\r\n * @returns O valor formatado como string no formato de horas.\r\n */\r\nexport function handleHours(valor: string): string {\r\n let value = valor.replace(/[^\\d.]/g, \"\");\r\n const parts = value.split(\".\");\r\n\r\n if (parts.length > 1) {\r\n parts[1] = parts[1].substring(0, 2);\r\n }\r\n\r\n value = parts.join(\".\");\r\n if (value.length > 2) {\r\n value = value.substring(0, value.length - 2) + \":\" + value.substring(value.length - 2);\r\n }\r\n return value;\r\n}","import axios from \"axios\";\r\nimport { BASE, TOKEN } from \"./const\";\r\nimport { messageFieldClear, response } from \"./response\";\r\nimport { IUtilsRequestPostOptions, IUtilsResponseType } from \"./types\";\r\n\r\n/**\r\n * Simplifica a solicitação POST HTTP usando a biblioteca axios\r\n */\r\nexport function post<TypeDataResponse = IUtilsResponseType<any>>(\r\n route: string,\r\n body: any,\r\n form?: string,\r\n options?: IUtilsRequestPostOptions\r\n): Promise<TypeDataResponse> {\r\n return new Promise((resolve, reject) => {\r\n let url = BASE + (route.startsWith(\"/\") ? \"\" : \"/\") + route;\r\n messageFieldClear(form);\r\n handleToManyRequest(options?.url ?? url, options?.blockedToManyRequest ?? false);\r\n axios<TypeDataResponse>({\r\n method: \"post\",\r\n url: options?.url ?? url,\r\n headers: { \"X-CSRF-TOKEN\": TOKEN },\r\n data: !body ? {} : body,\r\n }).then(data => {\r\n if (data?.data !== undefined) {\r\n resolve(data.data);\r\n }\r\n if (typeof options?.blockedResponse !== \"boolean\" || options?.blockedResponse === false) {\r\n response<TypeDataResponse>((data?.data as IUtilsResponseType<TypeDataResponse>), form);\r\n }\r\n }).catch(error => {\r\n response<TypeDataResponse>(error.response?.data, form);\r\n reject(error);\r\n });\r\n });\r\n}\r\n\r\n/**\r\n * Bloqueia várias solicitações simultâneas\r\n */\r\nfunction handleToManyRequest(url: string, blocked: boolean): void {\r\n let requestCount = 0;\r\n axios.interceptors.request.use(config => {\r\n requestCount = requestCount + 1;\r\n if (requestCount > 1 && axios.getUri(config) === url && blocked) {\r\n return Promise.reject(new Error(\"Requisições bloqueadas!\"));\r\n }\r\n return config;\r\n });\r\n if (!blocked) {\r\n axios.interceptors.request.clear();\r\n }\r\n\r\n axios.interceptors.response.use(response => {\r\n requestCount = requestCount - 1;\r\n return response;\r\n }, function (error) {\r\n requestCount = requestCount - 1;\r\n return Promise.reject(error);\r\n });\r\n}"],"names":["sendMessage","params","Window","window","self","top","parent","message","library","type","options","postMessage","swal","icon","title","text","config","toast","position","showConfirmButton","timer","timerProgressBar","didOpen","onmouseenter","SweetAlert","stopTimer","onmouseleave","resumeTimer","mixin","fire","Snackbar","show","undefined","pos","showAction","customClass","getMetaContent","id","element","document","getElementById","url","replace","substr","slice","length","getElementDOM","preloadTimeOut","Promise","resolve","body","$","frameElement","parents","elementFound","find","setTimeout","iframe","contents","USER","BASE","TOKEN","response","form","data","redirect","location","href","errors","messageField","accept","tabViewActiveError","then","formulario","validationFeedbackClass","removeValidationFeedbackClass","each","key","value","forEach","addClass","removeClass","html","messageFieldClear","validationClass","this","TabView","fieldError","Object","keys","TabViewSelected","closest","TabViewSelectedId","attr","TabViewNav","children","_","name","async","cep","axios","get","valor","parts","split","substring","join","format","parseFloat","toLocaleString","style","currency","route","reject","startsWith","blocked","requestCount","interceptors","request","use","getUri","Error","clear","error","handleToManyRequest","blockedToManyRequest","method","headers","blockedResponse","catch","addEventListener","event"],"mappings":"4GAOM,SAAUA,EAAkDC,GAC9D,IAAIC,EAAiBC,OAAOC,OAASD,OAAOE,IAAMF,OAASA,OAAOG,OAClE,MAAMC,QAAEA,EAAOC,QAAEA,EAAOC,KAAEA,EAAIC,QAAEA,GAAYT,EAC5CC,EAAOS,YAAY,CACfF,KAAM,UACNR,OAAQ,CACJM,UACAG,UACAD,KAAMA,GAAQ,UACdD,QAASA,GAAW,aAEzB,IACP,CAKM,SAAUD,EAA8CN,GAC1D,IAAIM,QAAEA,EAAOC,QAAEA,EAAOC,KAAEA,EAAIC,QAAEA,GAAYT,EAG1C,OADAO,EAAUA,GAAW,WACbA,GACJ,IAAK,aACD,IAAII,EAAY,CACZC,KAAMN,EAAQE,KACdK,MAAOP,EAAQO,MACfC,KAAMR,EAAQQ,MAElB,GAAa,UAATN,EAAkB,CAClB,IAAIO,EAA4BN,GAAgC,CAC5DO,OAAO,EACPC,SAAU,UACVC,mBAAmB,EACnBC,MAAO,IACPC,kBAAkB,EAClBC,QAAUL,IACNA,EAAMM,aAAeC,EAAWC,UAChCR,EAAMS,aAAeF,EAAWG,WAAW,GAGrCH,EAAWI,MAAMZ,GACzBa,KAAKjB,EACd,MACGY,EAAWK,KAAK,IAAKjB,KAASF,IAElC,MACJ,IAAK,WACD,IAAIM,EAAcN,EACdK,EAAeR,EAAQA,SAAWA,EAAQQ,MAAQR,EAAQO,OAAS,wCACvEgB,EAASC,UAAgBC,IAAXhB,EAAuB,CACjCiB,IAAK,YACLC,YAAY,EACZC,YAAa5B,EAAQE,KACrBM,KAAM,2DAA6DR,EAAQM,KAAO,SAAWE,EAAO,QACpGC,GAGhB,CCvDM,SAAUoB,EAAeC,GAC3B,IAAIC,EAAeC,SAASC,eAAeH,GACvCI,EAAiC,OAAZH,EAAmB,KAAQA,EAAe,QAAEI,QAAQ,OAAQ,OACrF,OAAe,OAARD,EAAe,KAA0B,MAAnBA,EAAIE,QAAQ,GAAaF,EAAIG,MAAM,EAAGH,EAAII,OAAS,GAAKJ,CACzF,CAcgB,SAAAK,EAAcR,EAAkBS,GAC5C,OAAO,IAAIC,SAASC,IAEhB,IAAIC,EAAO/C,OAAOC,OAASD,OAAOE,IAAM8C,EAAE,QAAUA,EAAEhD,OAAOiD,cAAcC,QAAQ,QAC9Ef,GAA8B,IAAnBA,EAAQO,QACpBI,EAAQC,GAGI,MAAZZ,GAA+B,MAAZA,GACnBW,EAAQ,MAGZ,IAAIK,EAAeJ,EAAKK,KAAKjB,GACzBgB,EAAaT,OAAS,EACtBI,EAAQK,GAERE,YAAW,KACP,IAAIC,EAASP,EAAKK,KAAK,UAAUG,WACX,IAAlBD,EAAOZ,QACPI,EAAQ,MAEZK,EAAeG,EAAOF,KAAKjB,GACvBgB,EAAaT,OAAS,GACtBI,EAAQK,GAEZL,EAAQ,KAAK,GACdF,GAAkB,IACxB,GAET,OCtDaY,EAAsBvB,EAAe,QACrCwB,EAAsBxB,EAAe,cACrCyB,EAAuBzB,EAAe,uBCInC0B,EACZA,EACAC,EAAe,IAEf,IAAIC,EAAiCF,EAChCE,IAIDA,EAAKC,WACL9D,OAAO+D,SAASC,KAAOH,EAAKC,UAG5BD,EAAKI,QACLC,EAAaL,EAAKI,OAAwB,IAAhBL,EAAKlB,OAAe,GAAKkB,GAGnDC,EAAKM,QACLD,EAAaL,EAAKM,OAAwB,IAAhBP,EAAKlB,OAAe,GAAKkB,EAAM,YAGzDC,EAAKzD,cAA4ByB,IAAjBgC,GAAMI,QACtBpE,EAAwB,CACpBO,QAAS,IAAKyD,EAAKzD,SACnBE,KAAM,UACND,QAAS,aAGrB,CAKM,SAAU6D,EACZL,EACAD,EAAe,GACftD,EAAe,cAEf8D,EAAmBR,EAAMC,GACzBlB,EAAc,IAAMiB,GACfS,MAAKC,IACF,GAAmB,OAAfA,EACA,OAGJ,IAAIC,EAA2C,eAATjE,EAAwB,mBAAqB,iBAC/EkE,EAAiD,eAATlE,EAAwB,WAAa,aAEjF0C,EAAEyB,KAAKZ,GAAM,CAACa,EAAaC,KACvB,IAAI/D,EAAO,GACX+D,EAAMC,SAAQD,GAAS/D,GAAQ+D,EAAQ,SAEvCL,EAAWlB,KAAK,eAAiBsB,EAAM,MAClCG,SAASvE,GACTH,SACAiD,KAAK,0BAA4BsB,EAAM,MACvCG,SAASN,GACTO,YAAYN,GACZO,KAAKnE,GAEV0D,EAAWlB,KAAK,eAAiBsB,EAAM,MAClCG,SAASvE,GACTH,SACAA,SACAiD,KAAK,0BAA4BsB,EAAM,MACvCG,SAASN,GACTO,YAAYN,GACZO,KAAKnE,GAEV0D,EAAWlB,KAAK,eAAiBsB,EAAM,MAClCG,SAASvE,GACTH,SACAA,SACAA,SACAiD,KAAK,0BAA4BsB,EAAM,MACvCG,SAASN,GACTO,YAAYN,GACZO,KAAKnE,GAEV0D,EAAWlB,KAAK,gBAAkBsB,EAAM,MACnCG,SAASvE,GACTH,SACAiD,KAAK,0BAA4BsB,EAAM,MACvCG,SAASN,GACTO,YAAYN,GACZO,KAAKnE,GAEV0D,EAAWlB,KAAK,kBAAoBsB,EAAM,MACrCG,SAASvE,GACTH,SACAiD,KAAK,0BAA4BsB,EAAM,MACvCG,SAASN,GACTO,YAAYN,GACZO,KAAKnE,GAEV0D,EAAWlB,KAAK,0BAA4BsB,EAAM,MAC7CG,SAASvE,GACTyE,KAAKnE,EAAK,GACjB,GAEd,CAKgB,SAAAoE,EACZpB,EAAe,IAEfjB,EAAc,IAAMiB,GACfS,MAAKC,IACF,GAAmB,OAAfA,EACA,OAGJ,IAAIW,EAA4B,CAAC,aAAc,WAAY,aACvDV,EAAoC,CAAC,mBAAoB,kBAE7DvB,EAAEyB,KAAKH,EAAWlB,KAAK,UAAU,WAC7BJ,EAAEkC,MACGJ,YAAYG,GACZ9E,SACAiD,KAAK,eACL0B,YAAYP,GACZQ,KAAK,IAEV/B,EAAEkC,MACGJ,YAAYG,GACZ9E,SACAA,SACAiD,KAAK,eACL0B,YAAYP,GACZQ,KAAK,IAEV/B,EAAEkC,MACGJ,YAAYG,GACZ9E,SACAA,SACAA,SACAiD,KAAK,eACL0B,YAAYP,GACZQ,KAAK,GACd,IAEA/B,EAAEyB,KAAKH,EAAWlB,KAAK,WAAW,WAC9BJ,EAAEkC,MACGJ,YAAYG,GACZ9E,SACAiD,KAAK,eACL0B,YAAYP,GACZQ,KAAK,GACd,IAEA/B,EAAEyB,KAAKH,EAAWlB,KAAK,aAAa,WAChCJ,EAAEkC,MACGJ,YAAYG,GACZ9E,SACAiD,KAAK,eACL0B,YAAYP,GACZQ,KAAK,GACd,IAEA/B,EAAEyB,KAAKH,EAAWlB,KAAK,gBAAgB,WACnCJ,EAAEkC,MAAMJ,YAAYG,GAAiBF,KAAK,GAC9C,GAAE,GAEd,UAKgBX,EACZR,EAAe,GACfK,GAEAtB,EAAc,IAAMiB,GACfS,MAAKc,IACF,GAAgB,OAAZA,EACA,OAGJ,IAAIC,EAAaC,OAAOC,KAAKrB,GAAQ,GAEjCsB,EAAkBJ,EAAQ/B,KAAK,SAAWgC,EAAa,MAAMI,QAAQ,aACrEC,EAAoBF,EAAgBG,KAAK,MACzCC,EAAaJ,EAAgBpF,SAASA,SAASiD,KAAK,QAExDmC,EAAgBpF,OAAO,gBAAgByF,SAAS,aAAanB,MAAK,SAAUoB,EAAGlB,QACtD,IAAVA,IACH3B,EAAE2B,GAAOe,KAAK,QAAUD,GACxBzC,EAAE2B,GAAOE,SAAS,eAClBc,EAAWvC,KAAK,2BAA6BqC,EAAoB,MAAMZ,SAAS,iBAEhF7B,EAAE2B,GAAOG,YAAY,eACrBa,EAAWvC,KAAK,2BAA6BJ,EAAE2B,GAAOe,KAAK,MAAQ,MAAMZ,YAAY,WAGjG,GAAE,GAEd,gCDzL4D,CACxD,CAAEgB,KAAM,OAAQ5D,GAAI,MACpB,CAAE4D,KAAM,UAAW5D,GAAI,MACvB,CAAE4D,KAAM,QAAS5D,GAAI,MACrB,CAAE4D,KAAM,WAAY5D,GAAI,MACxB,CAAE4D,KAAM,QAAS5D,GAAI,MACrB,CAAE4D,KAAM,QAAS5D,GAAI,MACrB,CAAE4D,KAAM,mBAAoB5D,GAAI,MAChC,CAAE4D,KAAM,iBAAkB5D,GAAI,MAC9B,CAAE4D,KAAM,QAAS5D,GAAI,MACrB,CAAE4D,KAAM,WAAY5D,GAAI,MACxB,CAAE4D,KAAM,cAAe5D,GAAI,MAC3B,CAAE4D,KAAM,qBAAsB5D,GAAI,MAClC,CAAE4D,KAAM,eAAgB5D,GAAI,MAC5B,CAAE4D,KAAM,OAAQ5D,GAAI,MACpB,CAAE4D,KAAM,UAAW5D,GAAI,MACvB,CAAE4D,KAAM,SAAU5D,GAAI,MACtB,CAAE4D,KAAM,aAAc5D,GAAI,MAC1B,CAAE4D,KAAM,QAAS5D,GAAI,MACrB,CAAE4D,KAAM,iBAAkB5D,GAAI,MAC9B,CAAE4D,KAAM,sBAAuB5D,GAAI,MACnC,CAAE4D,KAAM,oBAAqB5D,GAAI,MACjC,CAAE4D,KAAM,WAAY5D,GAAI,MACxB,CAAE4D,KAAM,UAAW5D,GAAI,MACvB,CAAE4D,KAAM,iBAAkB5D,GAAI,MAC9B,CAAE4D,KAAM,YAAa5D,GAAI,MACzB,CAAE4D,KAAM,UAAW5D,GAAI,MACvB,CAAE4D,KAAM,YAAa5D,GAAI,mBA1C2B,CACpD,CAAEA,GAAI,EAAG4D,KAAM,WACf,CAAE5D,GAAI,EAAG4D,KAAM,aACf,CAAE5D,GAAI,EAAG4D,KAAM,SACf,CAAE5D,GAAI,EAAG4D,KAAM,SACf,CAAE5D,GAAI,EAAG4D,KAAM,QACf,CAAE5D,GAAI,EAAG4D,KAAM,SACf,CAAE5D,GAAI,EAAG4D,KAAM,SACf,CAAE5D,GAAI,EAAG4D,KAAM,UACf,CAAE5D,GAAI,EAAG4D,KAAM,YACf,CAAE5D,GAAI,GAAI4D,KAAM,WAChB,CAAE5D,GAAI,GAAI4D,KAAM,YAChB,CAAE5D,GAAI,GAAI4D,KAAM,2DDAbC,eAAsBpB,GACzB,IAAIqB,EAAuB,IAAjBrB,EAAMjC,OAAe,WAAaiC,EAAMpC,QAAQ,IAAK,IAC/D,aAAa0D,EAAMC,IAAqC,4BAA8BF,EAAM,UACvF3B,MAAKR,GAAQA,EAAKA,MAC3B,uEGKM,SAAsBsC,GACxB,IAAIxB,EAAQwB,EAAM5D,QAAQ,UAAW,IACrC,MAAM6D,EAAQzB,EAAM0B,MAAM,KAU1B,OARID,EAAM1D,OAAS,IACf0D,EAAM,GAAKA,EAAM,GAAGE,UAAU,EAAG,IAGrC3B,EAAQyB,EAAMG,KAAK,KACf5B,EAAMjC,OAAS,IACfiC,EAAQA,EAAM2B,UAAU,EAAG3B,EAAMjC,OAAS,GAAK,IAAMiC,EAAM2B,UAAU3B,EAAMjC,OAAS,IAEjFiC,CACX,gCAhCIwB,EACAK,EAA8B,WAE9B,IAAI7B,EAAQwB,EAAM5D,QAAQ,YAAa,IACvC,MAAe,YAAXiE,EACO7B,EAAMpC,QAAQ,IAAK,KAAKA,QAAQ,YAAa,MAEjDkE,WAAW9B,EAAMpC,QAAQ,IAAK,MAAMmE,eAAe,QAAS,CAC/DC,MAAO,WACPC,SAAU,QACXrE,QAAQ,IAAK,IACpB,oFCXM,SACFsE,EACA9D,EACAa,EACArD,GAEA,OAAO,IAAIsC,SAAQ,CAACC,EAASgE,KACzB,IAAIxE,EAAMmB,GAAQoD,EAAME,WAAW,KAAO,GAAK,KAAOF,EACtD7B,EAAkBpB,GAwB1B,SAA6BtB,EAAa0E,GACtC,IAAIC,EAAe,EACnBhB,EAAMiB,aAAaC,QAAQC,KAAIvG,IAC3BoG,GAA8B,EAC1BA,EAAe,GAAKhB,EAAMoB,OAAOxG,KAAYyB,GAAO0E,EAC7CnE,QAAQiE,OAAO,IAAIQ,MAAM,4BAE7BzG,KAENmG,GACDf,EAAMiB,aAAaC,QAAQI,QAG/BtB,EAAMiB,aAAavD,SAASyD,KAAIzD,IAC5BsD,GAA8B,EACvBtD,KACR,SAAU6D,GAET,OADAP,GAA8B,EACvBpE,QAAQiE,OAAOU,EAC1B,GACJ,CA3CQC,CAAoBlH,GAAS+B,KAAOA,EAAK/B,GAASmH,uBAAwB,GAC1EzB,EAAwB,CACpB0B,OAAQ,OACRrF,IAAK/B,GAAS+B,KAAOA,EACrBsF,QAAS,CAAE,eAAgBlE,GAC3BG,KAAOd,GAAO,CAAA,IACfsB,MAAKR,SACehC,IAAfgC,GAAMA,MACNf,EAAQe,EAAKA,MAEuB,kBAA7BtD,GAASsH,kBAA8D,IAA7BtH,GAASsH,iBAC1DlE,EAA4BE,GAAMA,KAA+CD,EACpF,IACFkE,OAAMN,IACL7D,EAA2B6D,EAAM7D,UAAUE,KAAMD,GACjDkD,EAAOU,EAAM,GACf,GAEV,8GJ4BIxH,OAAO+H,iBAAiB,WAAW,SAAUC,GACzC,GAAyB,YAArBA,EAAMnE,MAAMvD,KAAoB,CAEhCF,EAAa,IADF4H,EAAMnE,KACM/D,QAC1B,CACL,GACJ"}
package/utils/index.d.ts CHANGED
@@ -3,6 +3,30 @@ import { SweetAlertOptions } from 'sweetalert2';
3
3
  declare const USER: string | null;
4
4
  declare const BASE: string | null;
5
5
  declare const TOKEN: string | null;
6
+ declare const MES: Array<{
7
+ id: number;
8
+ name: string;
9
+ }>;
10
+ declare const ESTADOS: Array<{
11
+ id: string;
12
+ name: string;
13
+ }>;
14
+
15
+ /**
16
+ * Formata um valor numérico para o formato decimal ou monetário.
17
+ *
18
+ * @param valor - O valor a ser formatado.
19
+ * @param format - O formato desejado: "money" para monetário ou "decimal" para decimal.
20
+ * @returns O valor formatado como string.
21
+ */
22
+ declare function handleNumber(valor: string, format?: "money" | "decimal"): string;
23
+ /**
24
+ * Formata um valor de string para o formato de horas (HH:MM).
25
+ *
26
+ * @param valor - O valor a ser formatado.
27
+ * @returns O valor formatado como string no formato de horas.
28
+ */
29
+ declare function handleHours(valor: string): string;
6
30
 
7
31
  /**
8
32
  * Retorna os tipos do arquivo <b>request.ts</b>
@@ -152,4 +176,4 @@ declare function messageFieldClear(form?: string): void;
152
176
  */
153
177
  declare function tabViewActiveError(form: string | undefined, errors: IUtilsResponseError): void;
154
178
 
155
- export { BASE, TOKEN, USER, getCep, getElementDOM, getMetaContent, message, messageField, messageFieldClear, post, response, sendMessage, tabViewActiveError, windowMessageEvent };
179
+ export { BASE, ESTADOS, MES, TOKEN, USER, getCep, getElementDOM, getMetaContent, handleHours, handleNumber, message, messageField, messageFieldClear, post, response, sendMessage, tabViewActiveError, windowMessageEvent };