@sankhyalabs/sankhyablocks 8.14.22 → 8.14.24

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 (91) hide show
  1. package/dist/cjs/{ConfigStorage-ba65d787.js → ConfigStorage-295db81d.js} +2 -2
  2. package/dist/cjs/{DataFetcher-701e7878.js → DataFetcher-71c811ad.js} +11 -4
  3. package/dist/cjs/{SnkFormConfigManager-92bd24e9.js → SnkFormConfigManager-5f22c018.js} +2 -2
  4. package/dist/cjs/{auth-fetcher-8e7c57ba.js → auth-fetcher-0158f49e.js} +1 -1
  5. package/dist/cjs/{dataunit-fetcher-cf764de0.js → dataunit-fetcher-b6b70c1f.js} +1 -1
  6. package/dist/cjs/{form-config-fetcher-04b63fed.js → form-config-fetcher-105bc44c.js} +1 -1
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/{pesquisa-fetcher-b6d04d9d.js → pesquisa-fetcher-431e3b9a.js} +1 -1
  9. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  10. package/dist/cjs/snk-actions-button.cjs.entry.js +4 -4
  11. package/dist/cjs/snk-application.cjs.entry.js +6 -6
  12. package/dist/cjs/snk-attach.cjs.entry.js +2 -2
  13. package/dist/cjs/snk-crud.cjs.entry.js +21 -15
  14. package/dist/cjs/snk-data-exporter.cjs.entry.js +1 -1
  15. package/dist/cjs/snk-detail-view.cjs.entry.js +7 -7
  16. package/dist/cjs/snk-filter-bar.cjs.entry.js +3 -3
  17. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  18. package/dist/cjs/snk-form-config.cjs.entry.js +2 -2
  19. package/dist/cjs/snk-form.cjs.entry.js +4 -4
  20. package/dist/cjs/snk-grid-config.cjs.entry.js +3 -3
  21. package/dist/cjs/snk-grid.cjs.entry.js +9 -3
  22. package/dist/cjs/{snk-guides-viewer-43ae33e1.js → snk-guides-viewer-7de15630.js} +14 -11
  23. package/dist/cjs/snk-guides-viewer.cjs.entry.js +7 -7
  24. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  25. package/dist/cjs/snk-simple-crud.cjs.entry.js +4 -4
  26. package/dist/collection/components/snk-crud/snk-crud.js +16 -10
  27. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +25 -6
  28. package/dist/collection/components/snk-grid/snk-grid.js +22 -0
  29. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +11 -4
  30. package/dist/components/DataFetcher.js +11 -4
  31. package/dist/components/snk-crud.js +16 -10
  32. package/dist/components/snk-detail-view2.js +11 -7
  33. package/dist/components/snk-grid2.js +8 -1
  34. package/dist/esm/{ConfigStorage-c19bbdb8.js → ConfigStorage-2c3e7f32.js} +2 -2
  35. package/dist/esm/{DataFetcher-ea7c5d63.js → DataFetcher-051e5c66.js} +11 -4
  36. package/dist/esm/{SnkFormConfigManager-36755282.js → SnkFormConfigManager-a708e953.js} +2 -2
  37. package/dist/esm/{auth-fetcher-56ff6c4b.js → auth-fetcher-156f08b2.js} +1 -1
  38. package/dist/esm/{dataunit-fetcher-fd8c0407.js → dataunit-fetcher-30a79120.js} +1 -1
  39. package/dist/esm/{form-config-fetcher-ab6e4815.js → form-config-fetcher-6b2a958d.js} +1 -1
  40. package/dist/esm/loader.js +1 -1
  41. package/dist/esm/{pesquisa-fetcher-a3e22221.js → pesquisa-fetcher-f3710327.js} +1 -1
  42. package/dist/esm/sankhyablocks.js +1 -1
  43. package/dist/esm/snk-actions-button.entry.js +4 -4
  44. package/dist/esm/snk-application.entry.js +6 -6
  45. package/dist/esm/snk-attach.entry.js +2 -2
  46. package/dist/esm/snk-crud.entry.js +21 -15
  47. package/dist/esm/snk-data-exporter.entry.js +1 -1
  48. package/dist/esm/snk-detail-view.entry.js +7 -7
  49. package/dist/esm/snk-filter-bar.entry.js +3 -3
  50. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  51. package/dist/esm/snk-form-config.entry.js +2 -2
  52. package/dist/esm/snk-form.entry.js +4 -4
  53. package/dist/esm/snk-grid-config.entry.js +3 -3
  54. package/dist/esm/snk-grid.entry.js +9 -3
  55. package/dist/esm/{snk-guides-viewer-093ea20b.js → snk-guides-viewer-127ba8b3.js} +14 -11
  56. package/dist/esm/snk-guides-viewer.entry.js +7 -7
  57. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  58. package/dist/esm/snk-simple-crud.entry.js +4 -4
  59. package/dist/sankhyablocks/p-02b71371.entry.js +1 -0
  60. package/dist/sankhyablocks/p-20dcf3df.entry.js +1 -0
  61. package/dist/sankhyablocks/{p-8fe8ffd5.entry.js → p-2801c199.entry.js} +1 -1
  62. package/dist/sankhyablocks/p-38d976b5.entry.js +1 -0
  63. package/dist/sankhyablocks/{p-4061bf69.entry.js → p-44c0c1e0.entry.js} +1 -1
  64. package/dist/sankhyablocks/{p-9f1b01ee.js → p-457eb487.js} +1 -1
  65. package/dist/sankhyablocks/{p-be27a59b.entry.js → p-4699a97e.entry.js} +1 -1
  66. package/dist/sankhyablocks/{p-e18bdbc3.entry.js → p-58cbcab7.entry.js} +1 -1
  67. package/dist/sankhyablocks/{p-9a39385d.entry.js → p-60406b21.entry.js} +1 -1
  68. package/dist/sankhyablocks/{p-804abf5f.entry.js → p-669ecfe6.entry.js} +1 -1
  69. package/dist/sankhyablocks/{p-e701f1e1.js → p-794f63fa.js} +1 -1
  70. package/dist/sankhyablocks/p-8db428d0.js +1 -0
  71. package/dist/sankhyablocks/{p-8054a8d3.js → p-99d733b5.js} +1 -1
  72. package/dist/sankhyablocks/{p-9911cd92.js → p-ad974c59.js} +1 -1
  73. package/dist/sankhyablocks/{p-40db573c.entry.js → p-b35b2d9e.entry.js} +1 -1
  74. package/dist/sankhyablocks/{p-fe2524af.entry.js → p-b6763dec.entry.js} +1 -1
  75. package/dist/sankhyablocks/{p-38cb0a71.entry.js → p-bd852714.entry.js} +1 -1
  76. package/dist/sankhyablocks/{p-df1e9271.js → p-c7b48912.js} +1 -1
  77. package/dist/sankhyablocks/p-c9270343.entry.js +1 -0
  78. package/dist/sankhyablocks/{p-c1aca9a8.entry.js → p-d404beda.entry.js} +1 -1
  79. package/dist/sankhyablocks/{p-e79a22ec.js → p-edb62824.js} +1 -1
  80. package/dist/sankhyablocks/{p-d284bed9.js → p-f13f8385.js} +2 -2
  81. package/dist/sankhyablocks/{p-842fb2d0.entry.js → p-faf11946.entry.js} +1 -1
  82. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  83. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +5 -0
  84. package/dist/types/components/snk-grid/snk-grid.d.ts +4 -0
  85. package/dist/types/components.d.ts +8 -0
  86. package/package.json +1 -1
  87. package/dist/sankhyablocks/p-5ce90181.entry.js +0 -1
  88. package/dist/sankhyablocks/p-9da5b2da.entry.js +0 -1
  89. package/dist/sankhyablocks/p-ac433634.js +0 -1
  90. package/dist/sankhyablocks/p-b63e558b.entry.js +0 -1
  91. package/dist/sankhyablocks/p-c05af315.entry.js +0 -1
@@ -2,21 +2,21 @@
2
2
 
3
3
  const index = require('./index-f9e81701.js');
4
4
  const core = require('@sankhyalabs/core');
5
- const SnkFormConfigManager = require('./SnkFormConfigManager-92bd24e9.js');
5
+ const SnkFormConfigManager = require('./SnkFormConfigManager-5f22c018.js');
6
6
  const form = require('@sankhyalabs/ezui/dist/collection/utils/form');
7
7
  const fieldSearch = require('./field-search-ca27041a.js');
8
8
  const taskbarElements = require('./taskbar-elements-39949c7a.js');
9
9
  const constants = require('./constants-35ddd366.js');
10
- require('./DataFetcher-701e7878.js');
11
- require('./pesquisa-fetcher-b6d04d9d.js');
10
+ require('./DataFetcher-71c811ad.js');
11
+ require('./pesquisa-fetcher-431e3b9a.js');
12
12
  const index$1 = require('./index-0e663819.js');
13
13
  require('./ISave-d68ce3cd.js');
14
14
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
15
15
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
16
- require('./dataunit-fetcher-cf764de0.js');
16
+ require('./dataunit-fetcher-b6b70c1f.js');
17
17
  require('./PreloadManager-84466da6.js');
18
18
  require('./filter-item-type.enum-a7ffdaa6.js');
19
- require('./form-config-fetcher-04b63fed.js');
19
+ require('./form-config-fetcher-105bc44c.js');
20
20
  const DataUnit = require('@sankhyalabs/core/dist/dataunit/DataUnit');
21
21
 
22
22
  const snkGuidesViewerCss = ".sc-snk-guides-viewer-h{--snk-guides-viewer--space-large:var(--space--large, 24px);--snk-guides-viewer--space-medium:var(--space--medium, 12px);--snk-guides-viewer__header--min-height:94px;--snk-guides-viewer__header--z-index:var(--more-visible, 2);--snk-guides-viewer__header--background-color:var(--background--body, #fafcff);--snk-guides-viewer__guide-navigator--width:340px;display:block}snk-form-view.sc-snk-guides-viewer{width:100%}.snk-guides-viewer.sc-snk-guides-viewer{position:relative;padding-left:0px;padding-top:0px;padding-right:var(--snk-guides-viewer--space-large);padding-bottom:var(--snk-guides-viewer--space-large)}.snk-guides-viewer__detail-container.sc-snk-guides-viewer{display:flex;row-gap:24px;flex-direction:column}.snk-guides-viewer__header.sc-snk-guides-viewer{position:sticky;align-items:center;top:0;z-index:var(--snk-guides-viewer__header--z-index);background-color:var(--snk-guides-viewer__header--background-color);min-height:var(--snk-guides-viewer__header--min-height);width:calc(100% + (var(--snk-guides-viewer--space-large) * 2));padding-left:var(--snk-guides-viewer--space-large);padding-right:var(--snk-guides-viewer--space-large);padding-top:var(--snk-guides-viewer--space-large);padding-bottom:var(--snk-guides-viewer--space-medium);margin-left:calc(var(--snk-guides-viewer--space-large) * -1);margin-right:calc(var(--snk-guides-viewer--space-large) * -1);margin-bottom:var(--snk-guides-viewer--space-medium)}.snk-guides-viewer__container.sc-snk-guides-viewer{display:grid;grid-template-columns:minmax(0, auto) minmax(0, 100%);height:100%;column-gap:var(--snk-guides-viewer--space-large)}.snk-guides-viewer__guide-navigator.sc-snk-guides-viewer{position:sticky;top:calc(var(--snk-guides-viewer__header--min-height) + var(--snk-guides-viewer--space-medium));height:calc(100vh - var(--snk-guides-viewer__header--min-height) - var(--snk-guides-viewer--space-large) - var(--snk-guides-viewer--space-medium))}.snk-guides-viewer__guide-navigator[open].sc-snk-guides-viewer{width:var(--snk-guides-viewer__guide-navigator--width);max-width:var(--snk-guides-viewer__guide-navigator--width);min-width:var(--snk-guides-viewer__guide-navigator--width)}.snk-guides-viewer__detail-content.sc-snk-guides-viewer{min-height:100%;align-items:flex-start;align-content:flex-start}";
@@ -90,6 +90,12 @@ const SnkGuidesViewer = class {
90
90
  requestAnimationFrame(() => realElement.setFocus());
91
91
  }
92
92
  }
93
+ /**
94
+ * Atribui o foco para o componente.
95
+ */
96
+ async setFocus() {
97
+ this._container.focus();
98
+ }
93
99
  exitViewer() {
94
100
  if (this.dataUnit.isDirty()) {
95
101
  this.dataUnit.cancelEdition({ after: () => this.exit.emit() });
@@ -459,17 +465,14 @@ const SnkGuidesViewer = class {
459
465
  render() {
460
466
  var _a, _b;
461
467
  if (this._formEditorConfigManager != undefined) {
462
- return (index.h("snk-form-config", { dataUnit: this._formEditorDataUnit, messagesBuilder: this.messagesBuilder, configManager: this._formEditorConfigManager, onConfigClose: () => this._formEditorConfigManager = null }));
468
+ return (index.h("snk-form-config", { ref: ref => this._container = ref, tabindex: -1, dataUnit: this._formEditorDataUnit, messagesBuilder: this.messagesBuilder, configManager: this._formEditorConfigManager, onConfigClose: () => this._formEditorConfigManager = null }));
463
469
  }
464
- if (!this.dataUnit) {
465
- return;
466
- }
467
- if (!this._configManager.isLoaded) {
470
+ if (!this.dataUnit || !this._configManager.isLoaded) {
468
471
  return;
469
472
  }
470
473
  this.loadTaskbarProcessor();
471
474
  const showGuides = this._guides && (this._guides.length > 1);
472
- return (index.h("section", { class: "snk-guides-viewer" }, index.h("div", { class: "ez-row snk-guides-viewer__header" }, index.h("div", { class: "ez-col ez-col--sd-6 ez-col--tb-6 ez-flex--align-items-center ez-flex-item--align-center ez-padding-left--large", key: "header" }, index.h("ez-button", { onClick: () => this.exitViewer(), title: this.getMessage("snkCrud.goBackTitle"), mode: "icon", iconName: "arrow_back", class: "ez-padding-right--medium", size: "small" }), index.h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto" }, index.h("h1", { class: "ez-title ez-title--primary ez-title--xlarge" }, this.getMessage("snkCrud.title")), ((_a = this._breadcrumbItems) === null || _a === void 0 ? void 0 : _a.length) > 1 &&
475
+ return (index.h("section", { class: "snk-guides-viewer", ref: ref => this._container = ref, tabindex: -1 }, index.h("div", { class: "ez-row snk-guides-viewer__header" }, index.h("div", { class: "ez-col ez-col--sd-6 ez-col--tb-6 ez-flex--align-items-center ez-flex-item--align-center ez-padding-left--large", key: "header" }, index.h("ez-button", { onClick: () => this.exitViewer(), title: this.getMessage("snkCrud.goBackTitle"), mode: "icon", iconName: "arrow_back", class: "ez-padding-right--medium", size: "small" }), index.h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto" }, index.h("h1", { class: "ez-title ez-title--primary ez-title--xlarge" }, this.getMessage("snkCrud.title")), ((_a = this._breadcrumbItems) === null || _a === void 0 ? void 0 : _a.length) > 1 &&
473
476
  index.h("div", { class: "ez-margin-top--extra-small" }, index.h("ez-breadcrumb", Object.assign({ items: this._breadcrumbItems, onSelectedItem: (evt) => this.onBreadcrumbClickHandler(evt === null || evt === void 0 ? void 0 : evt.detail) }, { [core.ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${core.ElementIDUtils.getInternalIDInfo("breadcrumb")}` }))))), this.presentationMode != index$1.PresentationMode.SECONDARY && this.buildTaskBar()), index.h("div", { class: "snk-guides-viewer__container" }, showGuides ?
474
477
  index.h("ez-guide-navigator", { ref: (ref) => this._guideNavigator = ref, class: "snk-guides-viewer__guide-navigator", items: this._guides, selectedId: this.selectedGuide ? this.selectedGuide.id : undefined, onEzSelectionChange: evt => this.updateSelectedGuideHandler(evt.detail) })
475
478
  :
@@ -2,13 +2,13 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const snkGuidesViewer = require('./snk-guides-viewer-43ae33e1.js');
5
+ const snkGuidesViewer = require('./snk-guides-viewer-7de15630.js');
6
6
  require('./index-f9e81701.js');
7
7
  require('@sankhyalabs/core');
8
- require('./SnkFormConfigManager-92bd24e9.js');
9
- require('./ConfigStorage-ba65d787.js');
10
- require('./form-config-fetcher-04b63fed.js');
11
- require('./DataFetcher-701e7878.js');
8
+ require('./SnkFormConfigManager-5f22c018.js');
9
+ require('./ConfigStorage-295db81d.js');
10
+ require('./form-config-fetcher-105bc44c.js');
11
+ require('./DataFetcher-71c811ad.js');
12
12
  require('./PrintUtils-bcaeb82f.js');
13
13
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
14
14
  require('./filter-item-type.enum-a7ffdaa6.js');
@@ -18,10 +18,10 @@ require('./taskbar-elements-39949c7a.js');
18
18
  require('./index-0e663819.js');
19
19
  require('./index-102ba62d.js');
20
20
  require('./constants-35ddd366.js');
21
- require('./pesquisa-fetcher-b6d04d9d.js');
21
+ require('./pesquisa-fetcher-431e3b9a.js');
22
22
  require('./ISave-d68ce3cd.js');
23
23
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
24
- require('./dataunit-fetcher-cf764de0.js');
24
+ require('./dataunit-fetcher-b6b70c1f.js');
25
25
  require('./PreloadManager-84466da6.js');
26
26
  require('@sankhyalabs/ezui/dist/collection/components/ez-grid/utils');
27
27
  require('./ResourceIDUtils-5ff86aa7.js');
@@ -5,13 +5,13 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-f9e81701.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
  const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-0184ffbb.js');
8
- const ConfigStorage = require('./ConfigStorage-ba65d787.js');
8
+ const ConfigStorage = require('./ConfigStorage-295db81d.js');
9
9
  const utils = require('@sankhyalabs/ezui/dist/collection/utils');
10
10
  const index$1 = require('./index-c5771aba.js');
11
11
  const index$2 = require('./index-102ba62d.js');
12
12
  require('./filter-item-type.enum-a7ffdaa6.js');
13
- require('./form-config-fetcher-04b63fed.js');
14
- require('./DataFetcher-701e7878.js');
13
+ require('./form-config-fetcher-105bc44c.js');
14
+ require('./DataFetcher-71c811ad.js');
15
15
  require('./PrintUtils-bcaeb82f.js');
16
16
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
17
17
 
@@ -6,16 +6,16 @@ const index = require('./index-f9e81701.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
  const constants = require('./constants-35ddd366.js');
8
8
  const taskbarElements = require('./taskbar-elements-39949c7a.js');
9
- require('./DataFetcher-701e7878.js');
10
- require('./pesquisa-fetcher-b6d04d9d.js');
9
+ require('./DataFetcher-71c811ad.js');
10
+ require('./pesquisa-fetcher-431e3b9a.js');
11
11
  const index$1 = require('./index-0e663819.js');
12
12
  require('./ISave-d68ce3cd.js');
13
13
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
14
14
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
15
- const dataunitFetcher = require('./dataunit-fetcher-cf764de0.js');
15
+ const dataunitFetcher = require('./dataunit-fetcher-b6b70c1f.js');
16
16
  require('./PreloadManager-84466da6.js');
17
17
  require('./filter-item-type.enum-a7ffdaa6.js');
18
- require('./form-config-fetcher-04b63fed.js');
18
+ require('./form-config-fetcher-105bc44c.js');
19
19
  const fieldSearch = require('./field-search-ca27041a.js');
20
20
  const SnkMultiSelectionListDataSource = require('./SnkMultiSelectionListDataSource-ba5838c2.js');
21
21
  require('./index-102ba62d.js');
@@ -89,6 +89,12 @@ export class SnkCrud {
89
89
  setViewMode(viewMode) {
90
90
  this._viewStack.show(viewMode);
91
91
  this._currentViewMode = viewMode;
92
+ if (viewMode === VIEW_MODE.GRID) {
93
+ this._snkGrid.setFocus();
94
+ }
95
+ else if (viewMode === VIEW_MODE.FORM) {
96
+ this._guidesViewer.setFocus();
97
+ }
92
98
  }
93
99
  openConfig(viewMode) {
94
100
  this._snkConfigurator.close();
@@ -179,34 +185,34 @@ export class SnkCrud {
179
185
  element.focus();
180
186
  }
181
187
  keyboardManager
182
- .bind("F6", this.toggleView.bind(this), { description: "Alterna entre modo formulário e grade." })
183
- .bind("F7", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados." })
184
- .bind("ctrl + \\", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados." })
185
- .bind("F8", dataUnit.addRecord.bind(dataUnit), { description: "Adiciona um novo registro." })
186
- .bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado." })
187
- .bind("ctrl + F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado." })
188
+ .bind("F6", this.toggleView.bind(this), { description: "Alterna entre modo formulário e grade.", element: this._element })
189
+ .bind("F7", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
190
+ .bind("ctrl + \\", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
191
+ .bind("F8", dataUnit.addRecord.bind(dataUnit), { description: "Adiciona um novo registro.", element: this._element })
192
+ .bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
193
+ .bind("ctrl + F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
188
194
  .bind("ctrl + .", () => {
189
195
  if (dataUnit.getSelectionInfo().records.length === 0) {
190
196
  return dataUnit.selectFirst();
191
197
  }
192
198
  return dataUnit.nextRecord();
193
199
  }, {
194
- description: "Avança para o próximo registro."
200
+ description: "Avança para o próximo registro.", element: this._element
195
201
  })
196
- .bind("ctrl + ,", dataUnit.previousRecord.bind(dataUnit), { description: "Retorna ao registro anterior." })
202
+ .bind("ctrl + ,", dataUnit.previousRecord.bind(dataUnit), { description: "Retorna ao registro anterior.", element: this._element })
197
203
  .bind("F5", async () => {
198
204
  const currentView = await this._viewStack.getSelectedIndex();
199
205
  if (VIEW_MODE.GRID === currentView) {
200
206
  dataUnit.loadData();
201
207
  }
202
- }, { description: "Atualiza os dados." })
208
+ }, { description: "Atualiza os dados.", element: this._element })
203
209
  .bind("Escape", () => {
204
210
  if (dataUnit.isDirty()) {
205
211
  dataUnit.cancelEdition();
206
212
  }
207
213
  }, {
208
214
  debounceTime: 1000,
209
- description: "Cancela uma ação."
215
+ description: "Cancela uma ação.", element: this._element
210
216
  });
211
217
  }
212
218
  }
@@ -73,6 +73,12 @@ export class SnkGuidesViewer {
73
73
  requestAnimationFrame(() => realElement.setFocus());
74
74
  }
75
75
  }
76
+ /**
77
+ * Atribui o foco para o componente.
78
+ */
79
+ async setFocus() {
80
+ this._container.focus();
81
+ }
76
82
  exitViewer() {
77
83
  if (this.dataUnit.isDirty()) {
78
84
  this.dataUnit.cancelEdition({ after: () => this.exit.emit() });
@@ -442,17 +448,14 @@ export class SnkGuidesViewer {
442
448
  render() {
443
449
  var _a, _b;
444
450
  if (this._formEditorConfigManager != undefined) {
445
- return (h("snk-form-config", { dataUnit: this._formEditorDataUnit, messagesBuilder: this.messagesBuilder, configManager: this._formEditorConfigManager, onConfigClose: () => this._formEditorConfigManager = null }));
451
+ return (h("snk-form-config", { ref: ref => this._container = ref, tabindex: -1, dataUnit: this._formEditorDataUnit, messagesBuilder: this.messagesBuilder, configManager: this._formEditorConfigManager, onConfigClose: () => this._formEditorConfigManager = null }));
446
452
  }
447
- if (!this.dataUnit) {
448
- return;
449
- }
450
- if (!this._configManager.isLoaded) {
453
+ if (!this.dataUnit || !this._configManager.isLoaded) {
451
454
  return;
452
455
  }
453
456
  this.loadTaskbarProcessor();
454
457
  const showGuides = this._guides && (this._guides.length > 1);
455
- return (h("section", { class: "snk-guides-viewer" }, h("div", { class: "ez-row snk-guides-viewer__header" }, h("div", { class: "ez-col ez-col--sd-6 ez-col--tb-6 ez-flex--align-items-center ez-flex-item--align-center ez-padding-left--large", key: "header" }, h("ez-button", { onClick: () => this.exitViewer(), title: this.getMessage("snkCrud.goBackTitle"), mode: "icon", iconName: "arrow_back", class: "ez-padding-right--medium", size: "small" }), h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto" }, h("h1", { class: "ez-title ez-title--primary ez-title--xlarge" }, this.getMessage("snkCrud.title")), ((_a = this._breadcrumbItems) === null || _a === void 0 ? void 0 : _a.length) > 1 &&
458
+ return (h("section", { class: "snk-guides-viewer", ref: ref => this._container = ref, tabindex: -1 }, h("div", { class: "ez-row snk-guides-viewer__header" }, h("div", { class: "ez-col ez-col--sd-6 ez-col--tb-6 ez-flex--align-items-center ez-flex-item--align-center ez-padding-left--large", key: "header" }, h("ez-button", { onClick: () => this.exitViewer(), title: this.getMessage("snkCrud.goBackTitle"), mode: "icon", iconName: "arrow_back", class: "ez-padding-right--medium", size: "small" }), h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto" }, h("h1", { class: "ez-title ez-title--primary ez-title--xlarge" }, this.getMessage("snkCrud.title")), ((_a = this._breadcrumbItems) === null || _a === void 0 ? void 0 : _a.length) > 1 &&
456
459
  h("div", { class: "ez-margin-top--extra-small" }, h("ez-breadcrumb", Object.assign({ items: this._breadcrumbItems, onSelectedItem: (evt) => this.onBreadcrumbClickHandler(evt === null || evt === void 0 ? void 0 : evt.detail) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("breadcrumb")}` }))))), this.presentationMode != PresentationMode.SECONDARY && this.buildTaskBar()), h("div", { class: "snk-guides-viewer__container" }, showGuides ?
457
460
  h("ez-guide-navigator", { ref: (ref) => this._guideNavigator = ref, class: "snk-guides-viewer__guide-navigator", items: this._guides, selectedId: this.selectedGuide ? this.selectedGuide.id : undefined, onEzSelectionChange: evt => this.updateSelectedGuideHandler(evt.detail) })
458
461
  :
@@ -863,6 +866,22 @@ export class SnkGuidesViewer {
863
866
  "text": "Abre o localizador de campos",
864
867
  "tags": []
865
868
  }
869
+ },
870
+ "setFocus": {
871
+ "complexType": {
872
+ "signature": "() => Promise<void>",
873
+ "parameters": [],
874
+ "references": {
875
+ "Promise": {
876
+ "location": "global"
877
+ }
878
+ },
879
+ "return": "Promise<void>"
880
+ },
881
+ "docs": {
882
+ "text": "Atribui o foco para o componente.",
883
+ "tags": []
884
+ }
866
885
  }
867
886
  };
868
887
  }
@@ -99,6 +99,12 @@ export class SnkGrid {
99
99
  async getFilterBar() {
100
100
  return this._snkFilterBar;
101
101
  }
102
+ /**
103
+ * Atribui o foco para a grade.
104
+ */
105
+ async setFocus() {
106
+ this._grid.setFocus();
107
+ }
102
108
  openGridConfig() {
103
109
  this._grid.getColumnsState()
104
110
  .then((gridColumns) => {
@@ -888,6 +894,22 @@ export class SnkGrid {
888
894
  "text": "Retorna o elemento da filter-bar da grade.",
889
895
  "tags": []
890
896
  }
897
+ },
898
+ "setFocus": {
899
+ "complexType": {
900
+ "signature": "() => Promise<void>",
901
+ "parameters": [],
902
+ "references": {
903
+ "Promise": {
904
+ "location": "global"
905
+ }
906
+ },
907
+ "return": "Promise<void>"
908
+ },
909
+ "docs": {
910
+ "text": "Atribui o foco para a grade.",
911
+ "tags": []
912
+ }
891
913
  }
892
914
  };
893
915
  }
@@ -362,12 +362,19 @@ export class DataFetcher {
362
362
  //Reject promises with errors from query
363
363
  errorsResponse.forEach((errorResponse) => {
364
364
  Object.entries(errorResponse).forEach(async ([key, val]) => {
365
- var _a;
366
365
  const waitingRequest = watingRequestsById.get(val.request.variables[val.index].queryID);
367
366
  const hasClientEvent = await this.proccesGraphQLClientEvents(extensions, waitingRequest.request, waitingRequest.resolve, waitingRequest.reject);
368
- if (!hasClientEvent) {
369
- (((_a = watingRequestsById.get(val.request.variables[val.index].queryID)) === null || _a === void 0 ? void 0 : _a.reject) || Promise.reject)(new ErrorException("Falha detectada", val.message));
370
- }
367
+ Promise.race([
368
+ waitingRequest.promise,
369
+ new Promise((resolve) => {
370
+ resolve(false);
371
+ })
372
+ ]).then((data) => {
373
+ var _a;
374
+ if (!hasClientEvent || data === false) {
375
+ (((_a = watingRequestsById.get(val.request.variables[val.index].queryID)) === null || _a === void 0 ? void 0 : _a.reject) || Promise.reject)(new ErrorException("Falha detectada", val.message));
376
+ }
377
+ });
371
378
  });
372
379
  });
373
380
  //Resolve promises with data from query
@@ -6873,12 +6873,19 @@ class DataFetcher {
6873
6873
  //Reject promises with errors from query
6874
6874
  errorsResponse.forEach((errorResponse) => {
6875
6875
  Object.entries(errorResponse).forEach(async ([key, val]) => {
6876
- var _a;
6877
6876
  const waitingRequest = watingRequestsById.get(val.request.variables[val.index].queryID);
6878
6877
  const hasClientEvent = await this.proccesGraphQLClientEvents(extensions, waitingRequest.request, waitingRequest.resolve, waitingRequest.reject);
6879
- if (!hasClientEvent) {
6880
- (((_a = watingRequestsById.get(val.request.variables[val.index].queryID)) === null || _a === void 0 ? void 0 : _a.reject) || Promise.reject)(new ErrorException("Falha detectada", val.message));
6881
- }
6878
+ Promise.race([
6879
+ waitingRequest.promise,
6880
+ new Promise((resolve) => {
6881
+ resolve(false);
6882
+ })
6883
+ ]).then((data) => {
6884
+ var _a;
6885
+ if (!hasClientEvent || data === false) {
6886
+ (((_a = watingRequestsById.get(val.request.variables[val.index].queryID)) === null || _a === void 0 ? void 0 : _a.reject) || Promise.reject)(new ErrorException("Falha detectada", val.message));
6887
+ }
6888
+ });
6882
6889
  });
6883
6890
  });
6884
6891
  //Resolve promises with data from query
@@ -127,6 +127,12 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
127
127
  setViewMode(viewMode) {
128
128
  this._viewStack.show(viewMode);
129
129
  this._currentViewMode = viewMode;
130
+ if (viewMode === VIEW_MODE.GRID) {
131
+ this._snkGrid.setFocus();
132
+ }
133
+ else if (viewMode === VIEW_MODE.FORM) {
134
+ this._guidesViewer.setFocus();
135
+ }
130
136
  }
131
137
  openConfig(viewMode) {
132
138
  this._snkConfigurator.close();
@@ -217,34 +223,34 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
217
223
  element.focus();
218
224
  }
219
225
  keyboardManager
220
- .bind("F6", this.toggleView.bind(this), { description: "Alterna entre modo formulário e grade." })
221
- .bind("F7", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados." })
222
- .bind("ctrl + \\", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados." })
223
- .bind("F8", dataUnit.addRecord.bind(dataUnit), { description: "Adiciona um novo registro." })
224
- .bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado." })
225
- .bind("ctrl + F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado." })
226
+ .bind("F6", this.toggleView.bind(this), { description: "Alterna entre modo formulário e grade.", element: this._element })
227
+ .bind("F7", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
228
+ .bind("ctrl + \\", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
229
+ .bind("F8", dataUnit.addRecord.bind(dataUnit), { description: "Adiciona um novo registro.", element: this._element })
230
+ .bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
231
+ .bind("ctrl + F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
226
232
  .bind("ctrl + .", () => {
227
233
  if (dataUnit.getSelectionInfo().records.length === 0) {
228
234
  return dataUnit.selectFirst();
229
235
  }
230
236
  return dataUnit.nextRecord();
231
237
  }, {
232
- description: "Avança para o próximo registro."
238
+ description: "Avança para o próximo registro.", element: this._element
233
239
  })
234
- .bind("ctrl + ,", dataUnit.previousRecord.bind(dataUnit), { description: "Retorna ao registro anterior." })
240
+ .bind("ctrl + ,", dataUnit.previousRecord.bind(dataUnit), { description: "Retorna ao registro anterior.", element: this._element })
235
241
  .bind("F5", async () => {
236
242
  const currentView = await this._viewStack.getSelectedIndex();
237
243
  if (VIEW_MODE.GRID === currentView) {
238
244
  dataUnit.loadData();
239
245
  }
240
- }, { description: "Atualiza os dados." })
246
+ }, { description: "Atualiza os dados.", element: this._element })
241
247
  .bind("Escape", () => {
242
248
  if (dataUnit.isDirty()) {
243
249
  dataUnit.cancelEdition();
244
250
  }
245
251
  }, {
246
252
  debounceTime: 1000,
247
- description: "Cancela uma ação."
253
+ description: "Cancela uma ação.", element: this._element
248
254
  });
249
255
  }
250
256
  }
@@ -114,6 +114,12 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
114
114
  requestAnimationFrame(() => realElement.setFocus());
115
115
  }
116
116
  }
117
+ /**
118
+ * Atribui o foco para o componente.
119
+ */
120
+ async setFocus() {
121
+ this._container.focus();
122
+ }
117
123
  exitViewer() {
118
124
  if (this.dataUnit.isDirty()) {
119
125
  this.dataUnit.cancelEdition({ after: () => this.exit.emit() });
@@ -483,17 +489,14 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
483
489
  render() {
484
490
  var _a, _b;
485
491
  if (this._formEditorConfigManager != undefined) {
486
- return (h("snk-form-config", { dataUnit: this._formEditorDataUnit, messagesBuilder: this.messagesBuilder, configManager: this._formEditorConfigManager, onConfigClose: () => this._formEditorConfigManager = null }));
492
+ return (h("snk-form-config", { ref: ref => this._container = ref, tabindex: -1, dataUnit: this._formEditorDataUnit, messagesBuilder: this.messagesBuilder, configManager: this._formEditorConfigManager, onConfigClose: () => this._formEditorConfigManager = null }));
487
493
  }
488
- if (!this.dataUnit) {
489
- return;
490
- }
491
- if (!this._configManager.isLoaded) {
494
+ if (!this.dataUnit || !this._configManager.isLoaded) {
492
495
  return;
493
496
  }
494
497
  this.loadTaskbarProcessor();
495
498
  const showGuides = this._guides && (this._guides.length > 1);
496
- return (h("section", { class: "snk-guides-viewer" }, h("div", { class: "ez-row snk-guides-viewer__header" }, h("div", { class: "ez-col ez-col--sd-6 ez-col--tb-6 ez-flex--align-items-center ez-flex-item--align-center ez-padding-left--large", key: "header" }, h("ez-button", { onClick: () => this.exitViewer(), title: this.getMessage("snkCrud.goBackTitle"), mode: "icon", iconName: "arrow_back", class: "ez-padding-right--medium", size: "small" }), h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto" }, h("h1", { class: "ez-title ez-title--primary ez-title--xlarge" }, this.getMessage("snkCrud.title")), ((_a = this._breadcrumbItems) === null || _a === void 0 ? void 0 : _a.length) > 1 &&
499
+ return (h("section", { class: "snk-guides-viewer", ref: ref => this._container = ref, tabindex: -1 }, h("div", { class: "ez-row snk-guides-viewer__header" }, h("div", { class: "ez-col ez-col--sd-6 ez-col--tb-6 ez-flex--align-items-center ez-flex-item--align-center ez-padding-left--large", key: "header" }, h("ez-button", { onClick: () => this.exitViewer(), title: this.getMessage("snkCrud.goBackTitle"), mode: "icon", iconName: "arrow_back", class: "ez-padding-right--medium", size: "small" }), h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto" }, h("h1", { class: "ez-title ez-title--primary ez-title--xlarge" }, this.getMessage("snkCrud.title")), ((_a = this._breadcrumbItems) === null || _a === void 0 ? void 0 : _a.length) > 1 &&
497
500
  h("div", { class: "ez-margin-top--extra-small" }, h("ez-breadcrumb", Object.assign({ items: this._breadcrumbItems, onSelectedItem: (evt) => this.onBreadcrumbClickHandler(evt === null || evt === void 0 ? void 0 : evt.detail) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("breadcrumb")}` }))))), this.presentationMode != PresentationMode.SECONDARY && this.buildTaskBar()), h("div", { class: "snk-guides-viewer__container" }, showGuides ?
498
501
  h("ez-guide-navigator", { ref: (ref) => this._guideNavigator = ref, class: "snk-guides-viewer__guide-navigator", items: this._guides, selectedId: this.selectedGuide ? this.selectedGuide.id : undefined, onEzSelectionChange: evt => this.updateSelectedGuideHandler(evt.detail) })
499
502
  :
@@ -535,7 +538,8 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
535
538
  "_formEditorDataUnit": [32],
536
539
  "_fieldToGetFocus": [32],
537
540
  "showFormConfig": [64],
538
- "findField": [64]
541
+ "findField": [64],
542
+ "setFocus": [64]
539
543
  }, [[2, "actionClick", "onActionClick"], [0, "snkContentCardChanged", "onContentCardChanged"]]]);
540
544
  function defineCustomElement$1() {
541
545
  if (typeof customElements === "undefined") {
@@ -120,6 +120,12 @@ const SnkGrid = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
120
120
  async getFilterBar() {
121
121
  return this._snkFilterBar;
122
122
  }
123
+ /**
124
+ * Atribui o foco para a grade.
125
+ */
126
+ async setFocus() {
127
+ this._grid.setFocus();
128
+ }
123
129
  openGridConfig() {
124
130
  this._grid.getColumnsState()
125
131
  .then((gridColumns) => {
@@ -443,7 +449,8 @@ const SnkGrid = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
443
449
  "setConfig": [64],
444
450
  "reloadFilterBar": [64],
445
451
  "findColumn": [64],
446
- "getFilterBar": [64]
452
+ "getFilterBar": [64],
453
+ "setFocus": [64]
447
454
  }]);
448
455
  function defineCustomElement() {
449
456
  if (typeof customElements === "undefined") {
@@ -1,7 +1,7 @@
1
- import { R as ResourceFetcher, F as FormConfigFetcher } from './form-config-fetcher-ab6e4815.js';
1
+ import { R as ResourceFetcher, F as FormConfigFetcher } from './form-config-fetcher-6b2a958d.js';
2
2
  import { F as FilterItemType } from './filter-item-type.enum-d45e026f.js';
3
3
  import { ObjectUtils } from '@sankhyalabs/core';
4
- import { d as dist, D as DataFetcher } from './DataFetcher-ea7c5d63.js';
4
+ import { d as dist, D as DataFetcher } from './DataFetcher-051e5c66.js';
5
5
 
6
6
  class GridConfigFetcher extends ResourceFetcher {
7
7
  constructor() {
@@ -6873,12 +6873,19 @@ class DataFetcher {
6873
6873
  //Reject promises with errors from query
6874
6874
  errorsResponse.forEach((errorResponse) => {
6875
6875
  Object.entries(errorResponse).forEach(async ([key, val]) => {
6876
- var _a;
6877
6876
  const waitingRequest = watingRequestsById.get(val.request.variables[val.index].queryID);
6878
6877
  const hasClientEvent = await this.proccesGraphQLClientEvents(extensions, waitingRequest.request, waitingRequest.resolve, waitingRequest.reject);
6879
- if (!hasClientEvent) {
6880
- (((_a = watingRequestsById.get(val.request.variables[val.index].queryID)) === null || _a === void 0 ? void 0 : _a.reject) || Promise.reject)(new ErrorException("Falha detectada", val.message));
6881
- }
6878
+ Promise.race([
6879
+ waitingRequest.promise,
6880
+ new Promise((resolve) => {
6881
+ resolve(false);
6882
+ })
6883
+ ]).then((data) => {
6884
+ var _a;
6885
+ if (!hasClientEvent || data === false) {
6886
+ (((_a = watingRequestsById.get(val.request.variables[val.index].queryID)) === null || _a === void 0 ? void 0 : _a.reject) || Promise.reject)(new ErrorException("Falha detectada", val.message));
6887
+ }
6888
+ });
6882
6889
  });
6883
6890
  });
6884
6891
  //Resolve promises with data from query
@@ -1,6 +1,6 @@
1
- import { C as ConfigStorage } from './ConfigStorage-c19bbdb8.js';
1
+ import { C as ConfigStorage } from './ConfigStorage-2c3e7f32.js';
2
2
  import { ObjectUtils, StringUtils } from '@sankhyalabs/core';
3
- import { F as FormConfigFetcher } from './form-config-fetcher-ab6e4815.js';
3
+ import { F as FormConfigFetcher } from './form-config-fetcher-6b2a958d.js';
4
4
 
5
5
  class SnkFormConfigManager {
6
6
  constructor(configName, resourceID, onConfigChange) {
@@ -1,5 +1,5 @@
1
1
  import { ObjectUtils } from '@sankhyalabs/core';
2
- import { R as ResourceFetcher } from './form-config-fetcher-ab6e4815.js';
2
+ import { R as ResourceFetcher } from './form-config-fetcher-6b2a958d.js';
3
3
 
4
4
  class AuthFetcher extends ResourceFetcher {
5
5
  getData(resourceID) {
@@ -1,5 +1,5 @@
1
1
  import { DataUnit, DataType, DateUtils, StringUtils, ChangeOperation, ApplicationContext, UserInterface, DataUnitStorage } from '@sankhyalabs/core';
2
- import { D as DataFetcher, d as dist } from './DataFetcher-ea7c5d63.js';
2
+ import { D as DataFetcher, d as dist } from './DataFetcher-051e5c66.js';
3
3
  import { DISTINCT_FILTER_NAME_PREFIX } from '@sankhyalabs/ezui/dist/collection/utils/constants';
4
4
  import { DataUnitTransient } from '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
5
5
  import { P as PreloadManager } from './PreloadManager-c1c2f2b4.js';
@@ -1,4 +1,4 @@
1
- import { d as dist, D as DataFetcher } from './DataFetcher-ea7c5d63.js';
1
+ import { d as dist, D as DataFetcher } from './DataFetcher-051e5c66.js';
2
2
  import { ObjectUtils } from '@sankhyalabs/core';
3
3
 
4
4
  class ResourceFetcher {