@sankhyalabs/sankhyablocks 10.1.0-dev.57 → 10.1.0-dev.58

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 (128) hide show
  1. package/dist/cjs/{ConfigStorage-a28eceb2.js → ConfigStorage-156bfcac.js} +2 -2
  2. package/dist/cjs/{DataFetcher-98d95e8f.js → DataFetcher-d13b4637.js} +12 -0
  3. package/dist/cjs/{ISave-a9815bb3.js → ISave-55d9dcc3.js} +1 -1
  4. package/dist/cjs/{SnkFormConfigManager-af47ba2f.js → SnkFormConfigManager-5cb9a39c.js} +2 -2
  5. package/dist/cjs/{SnkMultiSelectionListDataSource-13774e5f.js → SnkMultiSelectionListDataSource-8d426f44.js} +4 -4
  6. package/dist/cjs/{auth-fetcher-9c257a1f.js → auth-fetcher-d1715459.js} +1 -1
  7. package/dist/cjs/{dataunit-fetcher-afc246d8.js → dataunit-fetcher-fae710c5.js} +1 -1
  8. package/dist/cjs/{form-config-fetcher-1ce4125c.js → form-config-fetcher-bbebdcb8.js} +1 -1
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +4 -4
  11. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  12. package/dist/cjs/snk-actions-button_9.cjs.entry.js +8 -8
  13. package/dist/cjs/snk-application.cjs.entry.js +6 -6
  14. package/dist/cjs/snk-attach_11.cjs.entry.js +12 -10
  15. package/dist/cjs/snk-crud.cjs.entry.js +12 -8
  16. package/dist/cjs/snk-data-exporter.cjs.entry.js +5 -5
  17. package/dist/cjs/{snk-data-unit-ab570f87.js → snk-data-unit-32237a2d.js} +2 -2
  18. package/dist/cjs/snk-data-unit.cjs.entry.js +3 -3
  19. package/dist/cjs/snk-detail-view.cjs.entry.js +7 -7
  20. package/dist/cjs/snk-dynaform-detail-view_2.cjs.entry.js +31 -8
  21. package/dist/cjs/{snk-dynaform-guides-view-30ce5a8c.js → snk-dynaform-guides-view-c956fdd4.js} +388 -41
  22. package/dist/cjs/snk-dynaform-guides-view.cjs.entry.js +4 -4
  23. package/dist/cjs/snk-dynaform.cjs.entry.js +12 -8
  24. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +4 -4
  25. package/dist/cjs/snk-form_2.cjs.entry.js +4 -4
  26. package/dist/cjs/snk-grid.cjs.entry.js +6 -6
  27. package/dist/cjs/{snk-guides-viewer-2a55fa3a.js → snk-guides-viewer-727cc1b6.js} +1 -1
  28. package/dist/cjs/snk-guides-viewer.cjs.entry.js +5 -5
  29. package/dist/cjs/snk-layout-form-config.cjs.entry.js +4 -4
  30. package/dist/cjs/snk-pesquisa.cjs.entry.js +4 -4
  31. package/dist/cjs/{taskbarUtils-4ca4235e.js → taskbarUtils-be0fb299.js} +9 -4
  32. package/dist/collection/components/snk-actions-button/snk-actions-button.js +3 -3
  33. package/dist/collection/components/snk-crud/snk-crud.css +9 -4
  34. package/dist/collection/components/snk-crud/snk-crud.js +5 -1
  35. package/dist/collection/components/snk-crud/utils/taskbarUtils.js +5 -0
  36. package/dist/collection/components/snk-dynaform/snk-dynaform.css +9 -4
  37. package/dist/collection/components/snk-dynaform/snk-dynaform.js +5 -1
  38. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.css +71 -1
  39. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.js +23 -0
  40. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.css +35 -1
  41. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.js +3 -1
  42. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.css +229 -6
  43. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.js +458 -38
  44. package/dist/collection/components/snk-dynaform-form-config/SnkFormConfigManager.js +8 -1
  45. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +1 -1
  46. package/dist/collection/lib/message/resources/en-us/snk-crud.msg.js +4 -0
  47. package/dist/collection/lib/message/resources/es-es/snk-crud.msg.js +4 -0
  48. package/dist/collection/lib/message/resources/pt-br/snk-crud.msg.js +4 -0
  49. package/dist/components/SnkMessageBuilder.js +12 -0
  50. package/dist/components/snk-actions-button2.js +3 -3
  51. package/dist/components/snk-crud.js +6 -2
  52. package/dist/components/snk-dynaform-detail-view2.js +419 -41
  53. package/dist/components/snk-dynaform-form-view2.js +4 -2
  54. package/dist/components/snk-dynaform.js +6 -2
  55. package/dist/components/snk-filter-bar2.js +1 -1
  56. package/dist/components/taskbarUtils.js +5 -0
  57. package/dist/esm/{ConfigStorage-346d781d.js → ConfigStorage-0d1c0695.js} +2 -2
  58. package/dist/esm/{DataFetcher-7d8df5a2.js → DataFetcher-70de9419.js} +12 -0
  59. package/dist/esm/{ISave-2117075a.js → ISave-f5704813.js} +1 -1
  60. package/dist/esm/{SnkFormConfigManager-066d370b.js → SnkFormConfigManager-e7f05f79.js} +2 -2
  61. package/dist/esm/{SnkMultiSelectionListDataSource-7c5ffcd4.js → SnkMultiSelectionListDataSource-eefb24b4.js} +4 -4
  62. package/dist/esm/{auth-fetcher-5891e22c.js → auth-fetcher-e34880e5.js} +1 -1
  63. package/dist/esm/{dataunit-fetcher-5dcb0e89.js → dataunit-fetcher-d26e4a08.js} +1 -1
  64. package/dist/esm/{form-config-fetcher-8e2082f3.js → form-config-fetcher-98c42169.js} +1 -1
  65. package/dist/esm/loader.js +1 -1
  66. package/dist/esm/pesquisa-grid_2.entry.js +4 -4
  67. package/dist/esm/sankhyablocks.js +1 -1
  68. package/dist/esm/snk-actions-button_9.entry.js +8 -8
  69. package/dist/esm/snk-application.entry.js +6 -6
  70. package/dist/esm/snk-attach_11.entry.js +12 -10
  71. package/dist/esm/snk-crud.entry.js +12 -8
  72. package/dist/esm/snk-data-exporter.entry.js +5 -5
  73. package/dist/esm/{snk-data-unit-f697345b.js → snk-data-unit-ff57ac90.js} +2 -2
  74. package/dist/esm/snk-data-unit.entry.js +3 -3
  75. package/dist/esm/snk-detail-view.entry.js +7 -7
  76. package/dist/esm/snk-dynaform-detail-view_2.entry.js +31 -8
  77. package/dist/esm/{snk-dynaform-guides-view-6aae38f7.js → snk-dynaform-guides-view-9977a60e.js} +389 -42
  78. package/dist/esm/snk-dynaform-guides-view.entry.js +4 -4
  79. package/dist/esm/snk-dynaform.entry.js +12 -8
  80. package/dist/esm/snk-filter-bar_4.entry.js +4 -4
  81. package/dist/esm/snk-form_2.entry.js +4 -4
  82. package/dist/esm/snk-grid.entry.js +6 -6
  83. package/dist/esm/{snk-guides-viewer-3ea7e312.js → snk-guides-viewer-d512dc7a.js} +1 -1
  84. package/dist/esm/snk-guides-viewer.entry.js +5 -5
  85. package/dist/esm/snk-layout-form-config.entry.js +4 -4
  86. package/dist/esm/snk-pesquisa.entry.js +4 -4
  87. package/dist/esm/{taskbarUtils-a43e4bba.js → taskbarUtils-c08efdbb.js} +9 -4
  88. package/dist/sankhyablocks/{p-3190ac29.js → p-097d75b3.js} +2 -2
  89. package/dist/sankhyablocks/{p-aa9d61fa.entry.js → p-12579574.entry.js} +1 -1
  90. package/dist/sankhyablocks/p-1567aaf9.entry.js +1 -0
  91. package/dist/sankhyablocks/p-2a83f20e.entry.js +1 -0
  92. package/dist/sankhyablocks/{p-5a8390f9.entry.js → p-30570022.entry.js} +1 -1
  93. package/dist/sankhyablocks/p-33f84e69.entry.js +1 -0
  94. package/dist/sankhyablocks/p-4299bcbb.js +1 -0
  95. package/dist/sankhyablocks/{p-10d883b0.js → p-4dd574d6.js} +1 -1
  96. package/dist/sankhyablocks/{p-c5889dae.js → p-59717928.js} +1 -1
  97. package/dist/sankhyablocks/{p-7e63af25.entry.js → p-62601ac6.entry.js} +1 -1
  98. package/dist/sankhyablocks/p-64f14e9c.entry.js +1 -0
  99. package/dist/sankhyablocks/{p-b3762105.entry.js → p-69f1b522.entry.js} +1 -1
  100. package/dist/sankhyablocks/{p-ee192f06.entry.js → p-711508e7.entry.js} +1 -1
  101. package/dist/sankhyablocks/{p-733eba69.js → p-75f261aa.js} +1 -1
  102. package/dist/sankhyablocks/{p-9e97fabb.entry.js → p-8be9d886.entry.js} +1 -1
  103. package/dist/sankhyablocks/{p-c1e168a2.js → p-8d1ef77a.js} +1 -1
  104. package/dist/sankhyablocks/{p-13f91e7e.js → p-8d81c8d3.js} +1 -1
  105. package/dist/sankhyablocks/p-9a0e5bdf.js +1 -0
  106. package/dist/sankhyablocks/{p-741f1ad0.entry.js → p-9b5c9387.entry.js} +1 -1
  107. package/dist/sankhyablocks/p-9e02a785.js +1 -0
  108. package/dist/sankhyablocks/{p-c6b6567f.entry.js → p-a9330ce9.entry.js} +1 -1
  109. package/dist/sankhyablocks/{p-6f2de911.entry.js → p-af58b0d9.entry.js} +1 -1
  110. package/dist/sankhyablocks/{p-3630a5ae.entry.js → p-c4b34e2b.entry.js} +1 -1
  111. package/dist/sankhyablocks/{p-8d513b64.js → p-c9440c8a.js} +1 -1
  112. package/dist/sankhyablocks/{p-58e0f14b.entry.js → p-d10df418.entry.js} +1 -1
  113. package/dist/sankhyablocks/{p-4a53fbeb.entry.js → p-d622b92c.entry.js} +1 -1
  114. package/dist/sankhyablocks/{p-7827871d.entry.js → p-d8361914.entry.js} +1 -1
  115. package/dist/sankhyablocks/{p-e91bd00e.js → p-eac48627.js} +1 -1
  116. package/dist/sankhyablocks/{p-d7657667.js → p-ec7c87bb.js} +1 -1
  117. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  118. package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.d.ts +11 -0
  119. package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.d.ts +1 -0
  120. package/dist/types/components.d.ts +32 -0
  121. package/package.json +1 -1
  122. package/dist/sankhyablocks/p-1bc6849e.js +0 -1
  123. package/dist/sankhyablocks/p-2c65dc01.entry.js +0 -1
  124. package/dist/sankhyablocks/p-3cc67d50.entry.js +0 -1
  125. package/dist/sankhyablocks/p-a8a93568.entry.js +0 -1
  126. package/dist/sankhyablocks/p-acd3adf9.entry.js +0 -1
  127. package/dist/sankhyablocks/p-c3bc693a.js +0 -1
  128. package/dist/sankhyablocks/p-ed1b1b14.js +0 -1
@@ -31,6 +31,8 @@ snk-dynaform-form-view {
31
31
 
32
32
  /*public*/
33
33
  padding: 0px;
34
+ padding: var(--space--8, 8px);
35
+ padding-top: 0;
34
36
  }
35
37
 
36
38
  .snk-guides-viewer__detail-container {
@@ -41,20 +43,106 @@ snk-dynaform-form-view {
41
43
  max-height: none;
42
44
  min-height: 0;
43
45
  overflow: hidden;
44
- margin-bottom: var(--space--12, 12px);
45
46
  }
46
47
 
47
- .snk-guides-viewer__container > snk-dynaform-form-view {
48
- max-height: 300px;
48
+ .snk-guides-viewer__master {
49
+ display: flex;
50
+ flex-direction: column;
51
+ min-height: 0;
52
+ height: 100%;
53
+ }
54
+
55
+ /* Painéis do ez-split-panel: preenchem a faixa e deixam o conteúdo rolar. */
56
+ .snk-guides-viewer__split {
57
+ flex: 1;
58
+ min-height: 0;
59
+ }
60
+
61
+ .snk-guides-viewer__split-master,
62
+ .snk-guides-viewer__split-content {
63
+ display: flex;
64
+ flex-direction: column;
65
+ min-height: 0;
66
+ overflow: hidden;
67
+ }
68
+
69
+ /* O master (structural) não tem borda visível; remove o raio herdado do
70
+ ez-split-item para o conteúdo/scroll não ser cortado nos cantos. */
71
+ .snk-guides-viewer__split-master {
72
+ border-radius: 0;
73
+ }
74
+
75
+ /* Painel com contorno: inseta o conteúdo em >= raio da borda, para o scroll/
76
+ barra ficar na região reta e não cortar o canto arredondado.
77
+ Classe dobrada para vencer o `.structural__item { padding: 0 }` do ez-ui. */
78
+ .snk-guides-viewer__split-content.snk-guides-viewer__split-content {
79
+ box-sizing: border-box;
80
+ padding-top: var(--space--4, 4px);
81
+ }
82
+
83
+ /* Preenche o painel inferior: abas fixas no topo, scroll no detail-container.
84
+ Sem transbordo aqui, então o split-item não vira o container de scroll. */
85
+ .snk-guides-viewer__panel {
86
+ display: flex;
87
+ flex-direction: column;
88
+ flex: 1;
89
+ min-height: 0;
90
+ height: 100%;
91
+ overflow: hidden;
92
+ }
93
+
94
+ /* Alterna resumo/expandido só por CSS — o form-view permanece montado. */
95
+ .snk-guides-viewer__master .snk-guides-viewer__master-summary {
96
+ display: none;
97
+ }
98
+ .snk-guides-viewer__master--collapsed .snk-guides-viewer__master-summary {
99
+ display: flex;
100
+ }
101
+ .snk-guides-viewer__master--collapsed .snk-guides-viewer__master-expanded {
102
+ display: none;
103
+ }
104
+
105
+ .snk-guides-viewer__master-expanded {
106
+ position: relative;
107
+ display: flex;
108
+ flex-direction: column;
109
+ min-height: 0;
110
+ flex: 1;
111
+ overflow: visible;
112
+ margin-top: var(--space--6, 6px);
113
+ }
114
+
115
+ /* Altura limitada; o scroll é interno ao form-view (a borda fica sempre fixa). */
116
+ .snk-guides-viewer__master-expanded > snk-dynaform-form-view {
117
+ flex: 1;
49
118
  min-height: 0;
50
- overflow-y: auto;
51
119
  }
52
120
 
121
+ /* form-view e detail-view ficam com altura limitada; o scroll é interno
122
+ (dentro do form-view a borda fica fixa; a grade rola internamente). */
53
123
  .snk-guides-viewer__detail-container > snk-dynaform-form-view,
54
124
  .snk-guides-viewer__detail-container > snk-dynaform-detail-view {
55
125
  flex: 1;
56
126
  min-height: 0;
57
- overflow-y: auto;
127
+ }
128
+
129
+ /* Cada aba aberta fica montada; só a ativa é visível. */
130
+ .snk-guides-viewer__guide-content {
131
+ display: flex;
132
+ flex-direction: column;
133
+ flex: 1;
134
+ min-height: 0;
135
+ overflow: hidden;
136
+ }
137
+
138
+ .snk-guides-viewer__guide-content--hidden {
139
+ display: none;
140
+ }
141
+
142
+ .snk-guides-viewer__guide-content > snk-dynaform-form-view,
143
+ .snk-guides-viewer__guide-content > snk-dynaform-detail-view {
144
+ flex: 1;
145
+ min-height: 0;
58
146
  }
59
147
 
60
148
  .snk-guides-viewer__header {
@@ -66,7 +154,7 @@ snk-dynaform-form-view {
66
154
  /*public*/
67
155
  z-index: var(--snk-guides-viewer__header--z-index);
68
156
  background-color: var(--snk-guides-viewer__header--background-color);
69
- padding: var(--snk-guides-viewer--space-small);
157
+ padding-inline: var(--snk-guides-viewer--space-small);
70
158
  }
71
159
 
72
160
  .snk-guides-viewer__header-breadcrumb {
@@ -95,4 +183,139 @@ snk-dynaform-form-view {
95
183
  box-sizing: border-box;
96
184
  padding: 0 var(--space--12, 12px);
97
185
  flex-shrink: 0;
186
+ }
187
+
188
+ .snk-guides-viewer__master-summary {
189
+ position: relative;
190
+ display: flex;
191
+ align-items: center;
192
+ justify-content: space-between;
193
+ gap: var(--space--12, 12px);
194
+ box-sizing: border-box;
195
+ margin: var(--space--2xs, 8px) var(--space--12, 12px);
196
+ padding: var(--space--2xs, 8px) var(--space--12, 12px);
197
+ border: 1px solid var(--color--strokes, #E1E2E5);
198
+ border-radius: var(--border--radius-medium, 12px);
199
+ background: var(--background--medium, #f0f3f7);
200
+ box-shadow: var(--shadow--small, 0 0 16px rgba(0, 38, 111, 0.07));
201
+ cursor: pointer;
202
+ text-align: left;
203
+ flex-shrink: 0;
204
+ overflow: hidden;
205
+ transition: background 0.15s ease, border-color 0.15s ease;
206
+ }
207
+
208
+ .snk-guides-viewer__master-summary:hover,
209
+ .snk-guides-viewer__master-summary:focus-visible {
210
+ background: var(--background--xlight, #fff);
211
+ border-color: var(--color--primary, #4e4e4e);
212
+ }
213
+
214
+ .snk-guides-viewer__master-summary-fields {
215
+ display: flex;
216
+ gap: var(--space--large, 24px);
217
+ flex: 1;
218
+ min-width: 0;
219
+ overflow: hidden;
220
+ white-space: nowrap;
221
+ /* Espaço p/ o box-shadow do realce de campo inválido não ser cortado. */
222
+ padding: var(--space--4, 4px);
223
+ margin: calc(-1 * var(--space--4, 4px));
224
+ }
225
+
226
+ /* Row-fantasma: fora do fluxo, invisível, largura natural — só para medir. */
227
+ .snk-guides-viewer__master-summary-measure {
228
+ position: absolute;
229
+ top: 0;
230
+ left: 0;
231
+ display: flex;
232
+ gap: var(--space--large, 24px);
233
+ white-space: nowrap;
234
+ visibility: hidden;
235
+ pointer-events: none;
236
+ z-index: -1;
237
+ }
238
+
239
+ .snk-guides-viewer__master-summary-item {
240
+ display: inline-flex;
241
+ flex-direction: column;
242
+ gap: 2px;
243
+ min-width: 0;
244
+ padding: var(--space--4, 4px);
245
+ }
246
+
247
+ .snk-guides-viewer__master-summary-label {
248
+ display: flex;
249
+ align-items: center;
250
+ gap: 2px;
251
+ max-width: 240px;
252
+ color: var(--text--primary, #626e82);
253
+ font-size: var(--title--small, 12px);
254
+ font-weight: var(--text-weight--medium, 400);
255
+ }
256
+
257
+ .snk-guides-viewer__master-summary-label-text {
258
+ overflow: hidden;
259
+ text-overflow: ellipsis;
260
+ white-space: nowrap;
261
+ min-width: 0;
262
+ }
263
+
264
+ /* Marcador de campo obrigatório (mesmo estilo do ez-classic-input). */
265
+ .snk-guides-viewer__master-summary-required {
266
+ flex-shrink: 0;
267
+ color: var(--color--red-600, #BD0025);
268
+ font-weight: 700;
269
+ }
270
+
271
+ /* Campo obrigatório não preenchido ao salvar: realce vermelho.
272
+ box-shadow (não outline) p/ compatibilidade com browsers antigos; o wrapper
273
+ .master-summary-fields tem padding p/ o anel não ser cortado pelo overflow. */
274
+ .snk-guides-viewer__master-summary-item--invalid {
275
+ box-shadow: 0 0 0 1px var(--color--red-600, #BD0025);
276
+ border-radius: var(--border--radius-4, 4px);
277
+ }
278
+
279
+ .snk-guides-viewer__master-summary-value {
280
+ color: var(--title--primary, #2b3a54);
281
+ font-size: var(--text--large, 14px);
282
+ font-weight: 700;
283
+ max-width: 240px;
284
+ overflow: hidden;
285
+ text-overflow: ellipsis;
286
+ }
287
+
288
+ .snk-guides-viewer__master-summary-chevron {
289
+ flex-shrink: 0;
290
+ color: var(--title--primary, #2b3a54);
291
+ }
292
+
293
+ /* Botão recolher (ez-button) centrado sobre a borda superior do card master,
294
+ fora da área dos inputs — não sobrepõe campos no layout lado-a-lado.
295
+ Oculto por padrão; aparece com transição ao passar o mouse (ou focar) o form. */
296
+ /* Pendura o botão a partir da borda superior do master (topo alinhado à margem
297
+ reservada). Sem transbordo para cima, então não é cortado pelo overflow do
298
+ container mesmo com a margem pequena. */
299
+ .snk-guides-viewer__master-collapse-btn {
300
+ position: absolute;
301
+ top: calc(-1 * var(--space--6, 6px));
302
+ left: 50%;
303
+ transform: translate(-50%, 0);
304
+ z-index: 1;
305
+ opacity: 0;
306
+ visibility: hidden;
307
+ transition: opacity 0.2s ease, visibility 0.2s ease;
308
+ }
309
+
310
+ .snk-guides-viewer__master:hover .snk-guides-viewer__master-collapse-btn,
311
+ .snk-guides-viewer__master:focus-within .snk-guides-viewer__master-collapse-btn,
312
+ .snk-guides-viewer__master-collapse-btn:hover {
313
+ opacity: 1;
314
+ visibility: visible;
315
+ }
316
+
317
+ /* Borda do botão igual à borda do card master (form-view usa --color--petroleum-100). */
318
+ .snk-guides-viewer__master-collapse-btn ez-button {
319
+ --ez-button--border: 1px solid var(--color--petroleum-100, #C8CCD3);
320
+ --ez-button--hover--border: 1px solid var(--color--petroleum-100, #C8CCD3);
98
321
  }