@sankhyalabs/sankhyablocks 1.3.31-beta.1 → 1.3.31-beta.11

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 (92) hide show
  1. package/dist/cjs/SnkMessageBuilder-13239761.js +188 -0
  2. package/dist/cjs/{index-1133bc2a.js → index-c6671817.js} +416 -9
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/sankhyablocks.cjs.js +2 -2
  5. package/dist/cjs/snk-application.cjs.entry.js +283 -108
  6. package/dist/cjs/snk-crud.cjs.entry.js +64 -0
  7. package/dist/cjs/snk-data-unit.cjs.entry.js +277 -0
  8. package/dist/cjs/snk-form_2.cjs.entry.js +177 -0
  9. package/dist/cjs/snk-pesquisa.cjs.entry.js +6 -3
  10. package/dist/cjs/snk-taskbar.cjs.entry.js +159 -0
  11. package/dist/cjs/taskbar-elements-73d524e5.js +70 -0
  12. package/dist/cjs/teste-pesquisa.cjs.entry.js +1 -1
  13. package/dist/collection/collection-manifest.json +5 -0
  14. package/dist/collection/components/snk-application/errorhandler/snk-error-handler.js +2 -2
  15. package/dist/collection/components/snk-application/snk-application.js +267 -63
  16. package/dist/collection/components/snk-crud/snk-crud.css +5 -0
  17. package/dist/collection/components/snk-crud/snk-crud.js +137 -0
  18. package/dist/collection/components/snk-data-unit/snk-data-unit.css +6 -0
  19. package/dist/collection/components/snk-data-unit/snk-data-unit.js +528 -0
  20. package/dist/collection/components/snk-form/snk-form.css +34 -0
  21. package/dist/collection/components/snk-form/snk-form.js +220 -0
  22. package/dist/collection/components/snk-grid/snk-grid.css +5 -0
  23. package/dist/collection/components/snk-grid/snk-grid.js +148 -0
  24. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +56 -13
  25. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +5 -1
  26. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +65 -0
  27. package/dist/collection/components/snk-taskbar/snk-taskbar.css +3 -0
  28. package/dist/collection/components/snk-taskbar/snk-taskbar.js +271 -0
  29. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +1 -1
  30. package/dist/collection/lib/http/data-fetcher/fetchers/dataunit-fetcher.js +52 -21
  31. package/dist/collection/lib/http/data-fetcher/fetchers/grid-config-fetcher.js +4 -3
  32. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +2 -0
  33. package/dist/collection/lib/message/SnkMessageBuilder.js +119 -0
  34. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +22 -0
  35. package/dist/collection/lib/message/resources/snk-form.msg.js +10 -0
  36. package/dist/collection/lib/message/resources/snk-taskbar.msg.js +16 -0
  37. package/dist/components/SnkMessageBuilder.js +166 -0
  38. package/dist/components/snk-application2.js +284 -107
  39. package/dist/components/snk-crud.d.ts +11 -0
  40. package/dist/components/snk-crud.js +101 -0
  41. package/dist/components/snk-data-unit.d.ts +11 -0
  42. package/dist/components/snk-data-unit.js +300 -0
  43. package/dist/components/snk-form.d.ts +11 -0
  44. package/dist/components/snk-form.js +6 -0
  45. package/dist/components/snk-form2.js +140 -0
  46. package/dist/components/snk-grid.d.ts +11 -0
  47. package/dist/components/snk-grid.js +6 -0
  48. package/dist/components/snk-grid2.js +91 -0
  49. package/dist/components/snk-pesquisa2.js +5 -2
  50. package/dist/components/snk-taskbar.d.ts +11 -0
  51. package/dist/components/snk-taskbar.js +6 -0
  52. package/dist/components/snk-taskbar2.js +240 -0
  53. package/dist/esm/SnkMessageBuilder-3835f9d8.js +166 -0
  54. package/dist/esm/{index-ffda6382.js → index-6a83ac96.js} +416 -10
  55. package/dist/esm/loader.js +2 -2
  56. package/dist/esm/sankhyablocks.js +2 -2
  57. package/dist/esm/snk-application.entry.js +283 -108
  58. package/dist/esm/snk-crud.entry.js +60 -0
  59. package/dist/esm/snk-data-unit.entry.js +273 -0
  60. package/dist/esm/snk-form_2.entry.js +172 -0
  61. package/dist/esm/snk-pesquisa.entry.js +6 -3
  62. package/dist/esm/snk-taskbar.entry.js +155 -0
  63. package/dist/esm/taskbar-elements-6d01a640.js +68 -0
  64. package/dist/esm/teste-pesquisa.entry.js +1 -1
  65. package/dist/sankhyablocks/p-4c7b32d6.entry.js +1 -0
  66. package/dist/sankhyablocks/p-5e1b7e51.entry.js +1 -0
  67. package/dist/sankhyablocks/p-72bccbb6.js +1 -0
  68. package/dist/sankhyablocks/p-8c74d163.entry.js +1 -0
  69. package/dist/sankhyablocks/p-bab507ad.entry.js +1 -0
  70. package/dist/sankhyablocks/p-cd1dc099.js +2 -0
  71. package/dist/sankhyablocks/{p-2a7b4cb3.entry.js → p-d25637c9.entry.js} +1 -1
  72. package/dist/sankhyablocks/p-dd10a5e3.js +1 -0
  73. package/dist/sankhyablocks/p-e942c604.entry.js +69 -0
  74. package/dist/sankhyablocks/p-f4d0394b.entry.js +1 -0
  75. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  76. package/dist/types/components/snk-application/snk-application.d.ts +109 -15
  77. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +25 -0
  78. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +53 -0
  79. package/dist/types/components.d.ts +372 -6
  80. package/dist/types/lib/http/data-fetcher/fetchers/dataunit-fetcher.d.ts +2 -0
  81. package/dist/types/lib/http/data-fetcher/fetchers/grid-config-fetcher.d.ts +3 -3
  82. package/dist/types/lib/message/SnkMessageBuilder.d.ts +42 -0
  83. package/dist/types/lib/message/resources/snk-data-unit.msg.d.ts +2 -0
  84. package/dist/types/lib/message/resources/snk-form.msg.d.ts +2 -0
  85. package/dist/types/lib/message/resources/snk-taskbar.msg.d.ts +2 -0
  86. package/package.json +5 -5
  87. package/react/components.d.ts +5 -0
  88. package/react/components.js +5 -0
  89. package/react/components.js.map +1 -1
  90. package/dist/sankhyablocks/p-d62412bb.entry.js +0 -1
  91. package/dist/sankhyablocks/p-e6e91d5f.entry.js +0 -69
  92. package/dist/sankhyablocks/p-edcb9d8e.js +0 -2
@@ -5,47 +5,224 @@
5
5
  * It contains typing information for all components that exist in this project.
6
6
  */
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
+ import { SnkMessageBuilder } from "./lib/message/SnkMessageBuilder";
8
9
  import { AutorizationType } from "./lib/http/data-fetcher/fetchers/auth-fetcher";
9
10
  import { DataUnit } from "@sankhyalabs/core";
10
11
  import { MessageOptions } from "@sankhyalabs/ezui/dist/collection/utils";
11
- import { FieldConfig } from "@sankhyalabs/ezui/dist/types/components/ez-form/ez-form";
12
- import { EzGridConfig } from "@sankhyalabs/ezui/dist/types/components/ez-grid/controller/EzGridController";
12
+ import { FieldConfig, RecordValidator } from "@sankhyalabs/ezui/dist/types/components/ez-form/ez-form";
13
+ import { IGridConfig } from "@sankhyalabs/ezui/dist/types/components/ez-grid/controller/EzGridController";
13
14
  import { Option } from "@sankhyalabs/ezui/dist/types/components/ez-combo-box/ez-combo-box";
14
15
  import { SearchCriteria } from "./lib/http/data-fetcher/fetchers/pesquisa-fetcher";
16
+ import { Action } from "./components/snk-taskbar/snk-taskbar";
17
+ import { DataState } from "./components/snk-data-unit/snk-data-unit";
18
+ import { Action as Action1 } from "./components/snk-taskbar/snk-taskbar";
15
19
  export namespace Components {
16
20
  interface SnkApplication {
21
+ /**
22
+ * Mostra o diálogo de alerta de acordo com os parâmetros passados.
23
+ */
17
24
  "alert": (title: string, message: string, icon?: string, options?: MessageOptions) => Promise<boolean>;
25
+ /**
26
+ * Fecha o popup, liberando o conteúdo.
27
+ */
18
28
  "closePopUp": () => Promise<void>;
29
+ /**
30
+ * Exibe um diálogo de confirmação
31
+ */
19
32
  "confirm": (title: string, message: string, icon?: string, critical?: boolean, options?: MessageOptions) => Promise<boolean>;
20
- "createDataunit": (entityName: string) => Promise<DataUnit>;
33
+ /**
34
+ * Cria o DataUnit a partir do nome da entidade. É possível armazená-lo no cache passando o dataUnitName, assim, se mais de uma chamada for feita, o mesmo DataUnit será usado
35
+ */
36
+ "createDataunit": (entityName: string, dataUnitName?: string) => Promise<DataUnit>;
37
+ /**
38
+ * Mostra o diálogo de erro de acordo com os parâmetros passados.
39
+ */
21
40
  "error": (title: string, message: string, icon?: string, options?: MessageOptions) => Promise<boolean>;
22
41
  "executeSearch": (searchArgument: any, fieldName: string, dataUnit: DataUnit) => Promise<Array<Option> | Option>;
42
+ /**
43
+ * Retorna todos os acessos do usuário logado.
44
+ */
23
45
  "getAllAccess": () => Promise<any>;
46
+ /**
47
+ * Acessa informações de contexto "empurrados" na abertura da tela
48
+ */
24
49
  "getAttributeFromHTMLWrapper": (attribName: string) => Promise<string>;
50
+ /**
51
+ * Retorna o valor de um parâmetro do tipo booleano.
52
+ */
25
53
  "getBooleanParam": (name: string) => Promise<boolean>;
54
+ /**
55
+ * Retorna a configuração de um recurso por service broker Veja também o método "loadConfig"
56
+ */
26
57
  "getConfig": (key: string) => Promise<any>;
58
+ /**
59
+ * Obtem um DataUnit do cache ou cria um caso ainda não tenha sido criado.
60
+ */
61
+ "getDataUnit": (entityName: string, dataUnitName: string) => Promise<DataUnit>;
62
+ /**
63
+ * Retorna o valor de um parâmetro do tipo data.
64
+ */
27
65
  "getDateParam": (name: string) => Promise<Date>;
66
+ /**
67
+ * Retorna o valor de um parâmetro do tipo Decimal.
68
+ */
28
69
  "getFloatParam": (name: string) => Promise<number>;
70
+ /**
71
+ * Retorna o valor de um parâmetro do tipo Inteiro.
72
+ */
29
73
  "getIntParam": (name: string) => Promise<number>;
74
+ /**
75
+ * Retorna o resourceID da tela em questão.
76
+ */
30
77
  "getResourceID": () => Promise<string>;
78
+ /**
79
+ * Retorna o valor de um parâmetro do tipo string.
80
+ */
31
81
  "getStringParam": (name: string) => Promise<string>;
82
+ /**
83
+ * Se o usuário logado tem permissão pra determinada ação.
84
+ */
32
85
  "hasAccess": (access: AutorizationType) => Promise<boolean>;
86
+ /**
87
+ * Mostra uma informação efêmera (de segundo plano).
88
+ */
33
89
  "info": (message: string, options?: MessageOptions) => Promise<void>;
34
90
  "isDebugMode": () => Promise<boolean>;
91
+ /**
92
+ * Caso o usuário logado seja o SUP.
93
+ */
35
94
  "isUserSup": () => Promise<boolean>;
95
+ /**
96
+ * Busca a configuração de formulário.
97
+ */
36
98
  "loadFormConfig": (name: string) => Promise<Array<FieldConfig>>;
37
- "loadGridConfig": () => Promise<EzGridConfig>;
99
+ /**
100
+ * Busca a configuração de grade.
101
+ */
102
+ "loadGridConfig": (name: string) => Promise<IGridConfig>;
103
+ /**
104
+ * messagesBuilder é um utilitário responsável por flexibilizar e padronizar o uso de mensagens nos blocos de construção.
105
+ */
106
+ "messagesBuilder": SnkMessageBuilder;
107
+ /**
108
+ * Abre determinada tela, repassando pkObject
109
+ */
38
110
  "openApp": (resourceId: string, pkObject: Object) => Promise<void>;
111
+ /**
112
+ * Salva a configuração de determinado recurso.
113
+ */
39
114
  "saveConfig": (key: string, data: Object) => Promise<any>;
40
- "saveGridConfig": (config: EzGridConfig) => Promise<boolean>;
115
+ /**
116
+ * Salva a configuração de grade.
117
+ */
118
+ "saveGridConfig": (config: IGridConfig) => Promise<boolean>;
119
+ /**
120
+ * Mostra o conteúdo passado em um Popup
121
+ */
41
122
  "showPopUp": (content: HTMLElement) => Promise<void>;
123
+ /**
124
+ * Verifica se a licença do cliente tem determinado opcional (produto)
125
+ */
42
126
  "temOpcional": (opcional: string) => Promise<boolean>;
43
127
  }
128
+ interface SnkCrud {
129
+ "actionsList": Array<Action>;
130
+ "configName": string;
131
+ /**
132
+ * Validador responsável por checar a integridade das informações do registro
133
+ */
134
+ "recordsValidator": RecordValidator;
135
+ }
136
+ interface SnkDataUnit {
137
+ /**
138
+ * Executado após a ação de salvar
139
+ */
140
+ "afterSave": (dataUnit: DataUnit) => void;
141
+ /**
142
+ * Quando ativada essa propriedade faz com que haja uma carga imediata no DataUnit
143
+ */
144
+ "autoLoad": boolean;
145
+ /**
146
+ * Executado imediatamente antes da ação de salvar as alterações. Útil no caso de validações por exemplo. Caso retorne "false" (ou a promessa se resolva como false), cancela a ação.
147
+ */
148
+ "beforeSave": (dataUnit: DataUnit) => boolean | Promise<boolean>;
149
+ /**
150
+ * O estato atual dos dados, isto é se há alteração, insersão, as linhas selecionadas, etc.
151
+ */
152
+ "dataState": DataState;
153
+ /**
154
+ * Uma vez instanciado, pode-se obter o dataUnit por esta propriedade
155
+ */
156
+ "dataUnit": DataUnit;
157
+ /**
158
+ * Este atributo é usado para criar o dataUnit uma única vez. Se omitido será usado o próprio nome da entidade.
159
+ */
160
+ "dataUnitName": string;
161
+ /**
162
+ * Determina qual a entidade representa os dados em questão.
163
+ */
164
+ "entityName": string;
165
+ /**
166
+ * Pode-se obter o dataUnit através desse método. Outra forma, é ouvir o evento de
167
+ * @returns dataUnit
168
+ */
169
+ "getDataUnit": () => Promise<DataUnit>;
170
+ /**
171
+ * Determina quantas linhas são retornadas por página
172
+ */
173
+ "pageSize": number;
174
+ }
175
+ interface SnkForm {
176
+ /**
177
+ * Lista de ações que devem ser usadas no botão "Mais opções"
178
+ */
179
+ "actionsList": Array<Action>;
180
+ /**
181
+ * Nome usado para guardar/recuperar as configurações do formulário
182
+ */
183
+ "configName": string;
184
+ /**
185
+ * Validador responsável por checar a integridade das informações do registro
186
+ */
187
+ "recordsValidator": RecordValidator;
188
+ }
189
+ interface SnkGrid {
190
+ /**
191
+ * Lista de ações que devem ser usadas no botão "Mais opções"
192
+ */
193
+ "actionsList": Array<Action>;
194
+ /**
195
+ * Nome usado para salvar/recuperar a configuração
196
+ */
197
+ "configName": string;
198
+ }
44
199
  interface SnkPesquisa {
45
200
  "argument": string;
46
201
  "searchLoader": Function;
47
202
  "selectItem": Function;
48
203
  }
204
+ interface SnkTaskbar {
205
+ /**
206
+ * Lista de ações que devem ser usadas no botão "Mais opções"
207
+ */
208
+ "actionsList": Array<Action>;
209
+ /**
210
+ * Lista separada por virgula, contendo todos os elementos a serem criados
211
+ */
212
+ "buttons": string;
213
+ /**
214
+ * Instância do DataUnit
215
+ */
216
+ "dataUnit": DataUnit;
217
+ /**
218
+ * Array contendo todos os botões a serem desabilitados
219
+ */
220
+ "disabledButtons": Array<string>;
221
+ /**
222
+ * Qual botão deve ter aparência primária
223
+ */
224
+ "primaryButton": string;
225
+ }
49
226
  interface TestePesquisa {
50
227
  }
51
228
  }
@@ -53,6 +230,22 @@ export interface SnkApplicationCustomEvent<T> extends CustomEvent<T> {
53
230
  detail: T;
54
231
  target: HTMLSnkApplicationElement;
55
232
  }
233
+ export interface SnkDataUnitCustomEvent<T> extends CustomEvent<T> {
234
+ detail: T;
235
+ target: HTMLSnkDataUnitElement;
236
+ }
237
+ export interface SnkFormCustomEvent<T> extends CustomEvent<T> {
238
+ detail: T;
239
+ target: HTMLSnkFormElement;
240
+ }
241
+ export interface SnkGridCustomEvent<T> extends CustomEvent<T> {
242
+ detail: T;
243
+ target: HTMLSnkGridElement;
244
+ }
245
+ export interface SnkTaskbarCustomEvent<T> extends CustomEvent<T> {
246
+ detail: T;
247
+ target: HTMLSnkTaskbarElement;
248
+ }
56
249
  declare global {
57
250
  interface HTMLSnkApplicationElement extends Components.SnkApplication, HTMLStencilElement {
58
251
  }
@@ -60,12 +253,42 @@ declare global {
60
253
  prototype: HTMLSnkApplicationElement;
61
254
  new (): HTMLSnkApplicationElement;
62
255
  };
256
+ interface HTMLSnkCrudElement extends Components.SnkCrud, HTMLStencilElement {
257
+ }
258
+ var HTMLSnkCrudElement: {
259
+ prototype: HTMLSnkCrudElement;
260
+ new (): HTMLSnkCrudElement;
261
+ };
262
+ interface HTMLSnkDataUnitElement extends Components.SnkDataUnit, HTMLStencilElement {
263
+ }
264
+ var HTMLSnkDataUnitElement: {
265
+ prototype: HTMLSnkDataUnitElement;
266
+ new (): HTMLSnkDataUnitElement;
267
+ };
268
+ interface HTMLSnkFormElement extends Components.SnkForm, HTMLStencilElement {
269
+ }
270
+ var HTMLSnkFormElement: {
271
+ prototype: HTMLSnkFormElement;
272
+ new (): HTMLSnkFormElement;
273
+ };
274
+ interface HTMLSnkGridElement extends Components.SnkGrid, HTMLStencilElement {
275
+ }
276
+ var HTMLSnkGridElement: {
277
+ prototype: HTMLSnkGridElement;
278
+ new (): HTMLSnkGridElement;
279
+ };
63
280
  interface HTMLSnkPesquisaElement extends Components.SnkPesquisa, HTMLStencilElement {
64
281
  }
65
282
  var HTMLSnkPesquisaElement: {
66
283
  prototype: HTMLSnkPesquisaElement;
67
284
  new (): HTMLSnkPesquisaElement;
68
285
  };
286
+ interface HTMLSnkTaskbarElement extends Components.SnkTaskbar, HTMLStencilElement {
287
+ }
288
+ var HTMLSnkTaskbarElement: {
289
+ prototype: HTMLSnkTaskbarElement;
290
+ new (): HTMLSnkTaskbarElement;
291
+ };
69
292
  interface HTMLTestePesquisaElement extends Components.TestePesquisa, HTMLStencilElement {
70
293
  }
71
294
  var HTMLTestePesquisaElement: {
@@ -74,31 +297,169 @@ declare global {
74
297
  };
75
298
  interface HTMLElementTagNameMap {
76
299
  "snk-application": HTMLSnkApplicationElement;
300
+ "snk-crud": HTMLSnkCrudElement;
301
+ "snk-data-unit": HTMLSnkDataUnitElement;
302
+ "snk-form": HTMLSnkFormElement;
303
+ "snk-grid": HTMLSnkGridElement;
77
304
  "snk-pesquisa": HTMLSnkPesquisaElement;
305
+ "snk-taskbar": HTMLSnkTaskbarElement;
78
306
  "teste-pesquisa": HTMLTestePesquisaElement;
79
307
  }
80
308
  }
81
309
  declare namespace LocalJSX {
82
310
  interface SnkApplication {
311
+ /**
312
+ * messagesBuilder é um utilitário responsável por flexibilizar e padronizar o uso de mensagens nos blocos de construção.
313
+ */
314
+ "messagesBuilder"?: SnkMessageBuilder;
83
315
  /**
84
316
  * Evento disparado quando a aplicação for carregada.
85
317
  */
86
318
  "onApplicationLoaded"?: (event: SnkApplicationCustomEvent<boolean>) => void;
87
319
  /**
88
- * Evento
320
+ * Evento disparado ao iniciar a carga do componente
89
321
  */
90
322
  "onApplicationLoading"?: (event: SnkApplicationCustomEvent<boolean>) => void;
91
323
  }
324
+ interface SnkCrud {
325
+ "actionsList"?: Array<Action>;
326
+ "configName"?: string;
327
+ /**
328
+ * Validador responsável por checar a integridade das informações do registro
329
+ */
330
+ "recordsValidator"?: RecordValidator;
331
+ }
332
+ interface SnkDataUnit {
333
+ /**
334
+ * Executado após a ação de salvar
335
+ */
336
+ "afterSave"?: (dataUnit: DataUnit) => void;
337
+ /**
338
+ * Quando ativada essa propriedade faz com que haja uma carga imediata no DataUnit
339
+ */
340
+ "autoLoad"?: boolean;
341
+ /**
342
+ * Executado imediatamente antes da ação de salvar as alterações. Útil no caso de validações por exemplo. Caso retorne "false" (ou a promessa se resolva como false), cancela a ação.
343
+ */
344
+ "beforeSave"?: (dataUnit: DataUnit) => boolean | Promise<boolean>;
345
+ /**
346
+ * O estato atual dos dados, isto é se há alteração, insersão, as linhas selecionadas, etc.
347
+ */
348
+ "dataState"?: DataState;
349
+ /**
350
+ * Uma vez instanciado, pode-se obter o dataUnit por esta propriedade
351
+ */
352
+ "dataUnit"?: DataUnit;
353
+ /**
354
+ * Este atributo é usado para criar o dataUnit uma única vez. Se omitido será usado o próprio nome da entidade.
355
+ */
356
+ "dataUnitName"?: string;
357
+ /**
358
+ * Determina qual a entidade representa os dados em questão.
359
+ */
360
+ "entityName"?: string;
361
+ /**
362
+ * Disparado quando se cancela uma insersão/cópia
363
+ */
364
+ "onCancelEdition"?: (event: SnkDataUnitCustomEvent<void>) => void;
365
+ /**
366
+ * Disparado quando o há qualquer mudança de estado no DataUnit
367
+ */
368
+ "onDataStateChange"?: (event: SnkDataUnitCustomEvent<DataState>) => void;
369
+ /**
370
+ * Disparado quando o DataUnit está pronto
371
+ */
372
+ "onDataUnitReady"?: (event: SnkDataUnitCustomEvent<DataUnit>) => void;
373
+ /**
374
+ * Disparado quando um registro é adicionado ou copiado
375
+ */
376
+ "onInsertionMode"?: (event: SnkDataUnitCustomEvent<void>) => void;
377
+ /**
378
+ * Determina quantas linhas são retornadas por página
379
+ */
380
+ "pageSize"?: number;
381
+ }
382
+ interface SnkForm {
383
+ /**
384
+ * Lista de ações que devem ser usadas no botão "Mais opções"
385
+ */
386
+ "actionsList"?: Array<Action>;
387
+ /**
388
+ * Nome usado para guardar/recuperar as configurações do formulário
389
+ */
390
+ "configName"?: string;
391
+ /**
392
+ * Emitido sempre que houver click de botão ou ação
393
+ */
394
+ "onActionClick"?: (event: SnkFormCustomEvent<string>) => void;
395
+ /**
396
+ * Emitido quando o botão de voltar é acionado
397
+ */
398
+ "onExit"?: (event: SnkFormCustomEvent<void>) => void;
399
+ /**
400
+ * Validador responsável por checar a integridade das informações do registro
401
+ */
402
+ "recordsValidator"?: RecordValidator;
403
+ }
404
+ interface SnkGrid {
405
+ /**
406
+ * Lista de ações que devem ser usadas no botão "Mais opções"
407
+ */
408
+ "actionsList"?: Array<Action>;
409
+ /**
410
+ * Nome usado para salvar/recuperar a configuração
411
+ */
412
+ "configName"?: string;
413
+ /**
414
+ * Emitido sempre que houver click de botão ou ação
415
+ */
416
+ "onActionClick"?: (event: SnkGridCustomEvent<string>) => void;
417
+ /**
418
+ * Emitido sempre que houver duplo click na grade
419
+ */
420
+ "onGridDoubleClick"?: (event: SnkGridCustomEvent<void>) => void;
421
+ }
92
422
  interface SnkPesquisa {
93
423
  "argument"?: string;
94
424
  "searchLoader"?: Function;
95
425
  "selectItem"?: Function;
96
426
  }
427
+ interface SnkTaskbar {
428
+ /**
429
+ * Lista de ações que devem ser usadas no botão "Mais opções"
430
+ */
431
+ "actionsList"?: Array<Action>;
432
+ /**
433
+ * Lista separada por virgula, contendo todos os elementos a serem criados
434
+ */
435
+ "buttons"?: string;
436
+ /**
437
+ * Instância do DataUnit
438
+ */
439
+ "dataUnit"?: DataUnit;
440
+ /**
441
+ * Array contendo todos os botões a serem desabilitados
442
+ */
443
+ "disabledButtons"?: Array<string>;
444
+ /**
445
+ * Emitido sempre que houver click de botão ou ação
446
+ */
447
+ "onActionClick"?: (event: SnkTaskbarCustomEvent<string>) => void;
448
+ /**
449
+ * Qual botão deve ter aparência primária
450
+ */
451
+ "primaryButton"?: string;
452
+ }
97
453
  interface TestePesquisa {
98
454
  }
99
455
  interface IntrinsicElements {
100
456
  "snk-application": SnkApplication;
457
+ "snk-crud": SnkCrud;
458
+ "snk-data-unit": SnkDataUnit;
459
+ "snk-form": SnkForm;
460
+ "snk-grid": SnkGrid;
101
461
  "snk-pesquisa": SnkPesquisa;
462
+ "snk-taskbar": SnkTaskbar;
102
463
  "teste-pesquisa": TestePesquisa;
103
464
  }
104
465
  }
@@ -107,7 +468,12 @@ declare module "@stencil/core" {
107
468
  export namespace JSX {
108
469
  interface IntrinsicElements {
109
470
  "snk-application": LocalJSX.SnkApplication & JSXBase.HTMLAttributes<HTMLSnkApplicationElement>;
471
+ "snk-crud": LocalJSX.SnkCrud & JSXBase.HTMLAttributes<HTMLSnkCrudElement>;
472
+ "snk-data-unit": LocalJSX.SnkDataUnit & JSXBase.HTMLAttributes<HTMLSnkDataUnitElement>;
473
+ "snk-form": LocalJSX.SnkForm & JSXBase.HTMLAttributes<HTMLSnkFormElement>;
474
+ "snk-grid": LocalJSX.SnkGrid & JSXBase.HTMLAttributes<HTMLSnkGridElement>;
110
475
  "snk-pesquisa": LocalJSX.SnkPesquisa & JSXBase.HTMLAttributes<HTMLSnkPesquisaElement>;
476
+ "snk-taskbar": LocalJSX.SnkTaskbar & JSXBase.HTMLAttributes<HTMLSnkTaskbarElement>;
111
477
  "teste-pesquisa": LocalJSX.TestePesquisa & JSXBase.HTMLAttributes<HTMLTestePesquisaElement>;
112
478
  }
113
479
  }
@@ -1,11 +1,13 @@
1
1
  import { DataUnit } from "@sankhyalabs/core";
2
2
  export default class DataUnitFetcher {
3
3
  private templateByQuery;
4
+ private _loadDataTimeout;
4
5
  constructor();
5
6
  private buldTemplates;
6
7
  getDataUnit(entityName: string, resourceID: string): DataUnit;
7
8
  private loadMetadata;
8
9
  private loadData;
10
+ private doLoadData;
9
11
  private saveData;
10
12
  private removeRecords;
11
13
  }
@@ -1,7 +1,7 @@
1
- import { EzGridConfig } from "@sankhyalabs/ezui/dist/types/components/ez-grid/controller/EzGridController";
1
+ import { IGridConfig } from "@sankhyalabs/ezui/dist/types/components/ez-grid/controller/EzGridController";
2
2
  import { ResourceFetcher } from "./resource-fetcher";
3
3
  export default class GridConfigFetcher extends ResourceFetcher {
4
4
  readonly GRID_CONFIG_VERSION = "V3:";
5
- getConfig(resourceID: string): Promise<EzGridConfig>;
6
- saveConfig(config: EzGridConfig, resourceID: string): Promise<boolean>;
5
+ getConfig(_gridName: string, resourceID: string): Promise<IGridConfig>;
6
+ saveConfig(config: IGridConfig, resourceID: string): Promise<boolean>;
7
7
  }
@@ -0,0 +1,42 @@
1
+ export declare class SnkMessageBuilder {
2
+ private _appMessages;
3
+ private _defaults;
4
+ private _currentOperation;
5
+ /**
6
+ * É possível definir um ponteiro de função para modificar
7
+ * a mensagem de acordo com a conveniência da aplicação
8
+ */
9
+ customMessageBuilder: (key: string, defaultMessage: string, params: any) => {
10
+ message: string;
11
+ params: any;
12
+ };
13
+ constructor();
14
+ /**
15
+ * Existem mensagens sensíveis a operação. Por exemplo, a mensagem
16
+ * de inclusão pode ser diferente da mensagem de alteração do mesmo
17
+ * recurso. Para isso "currentOperation" pode variar de acordo com
18
+ * OperationMap.
19
+ */
20
+ set currentOperation(op: OperationMap);
21
+ /**
22
+ * Método usado para se obter mensagens, respeitando o padrão do sistema
23
+ * ou as mensagens específicas de cada tela
24
+ *
25
+ * @param key Chave usada para obter mensagens. Deve-se usar o separador "."
26
+ * alcançar diversos níveis.
27
+ * @param params Quando a mensagem possui o padrão {{NOME}} as ocorrências
28
+ * serão substituidas pelo respectivo valor do param.
29
+ * @returns A mensagem formatada.
30
+ */
31
+ getMessage(key: string, params: any): string;
32
+ private resolveMessage;
33
+ private isOperationSensitive;
34
+ private postProcess;
35
+ private loadAppMessages;
36
+ }
37
+ export declare enum OperationMap {
38
+ CLONE = "clone",
39
+ INSERT = "insert",
40
+ UPDATE = "update",
41
+ CLEAN = "clean"
42
+ }
@@ -0,0 +1,2 @@
1
+ declare const snkDataUnitMessages: any;
2
+ export default snkDataUnitMessages;
@@ -0,0 +1,2 @@
1
+ declare const snkFormMessages: any;
2
+ export default snkFormMessages;
@@ -0,0 +1,2 @@
1
+ declare const snkTaskbarMessages: any;
2
+ export default snkTaskbarMessages;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sankhyalabs/sankhyablocks",
3
- "version": "1.3.31-beta.1",
3
+ "version": "1.3.31-beta.11",
4
4
  "description": "Stencil Component Starter",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -36,8 +36,8 @@
36
36
  },
37
37
  "devDependencies": {
38
38
  "@babel/preset-env": "^7.18.2",
39
- "@sankhyalabs/core": "^1.0.64",
40
- "@sankhyalabs/ezui": "^1.1.139",
39
+ "@sankhyalabs/core": "^1.0.71-beta.3",
40
+ "@sankhyalabs/ezui": "^1.1.158-beta.3",
41
41
  "@sankhyalabs/skippeerdeps": "^1.0.2",
42
42
  "@semantic-release/git": "^9.0.0",
43
43
  "@semantic-release/gitlab": "^6.1.0",
@@ -60,8 +60,8 @@
60
60
  "verbose": true
61
61
  },
62
62
  "peerDependencies": {
63
- "@sankhyalabs/core": "^1.x",
64
- "@sankhyalabs/ezui": "^1.x"
63
+ "@sankhyalabs/core": "^1.0.71-beta.0",
64
+ "@sankhyalabs/ezui": "^1.1.158-beta.0"
65
65
  },
66
66
  "license": "MIT"
67
67
  }