@sankhyalabs/sankhyablocks 8.16.0-dev.4 → 8.16.0-dev.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{ConfigStorage-942ce74b.js → ConfigStorage-ecc0ed20.js} +3 -2
- package/dist/cjs/{IExporterProvider-597949f9.js → ContinuousInsertUtils-c7e35e3b.js} +39 -6
- package/dist/cjs/{DataFetcher-313debd8.js → DataFetcher-cadeef8e.js} +21 -15
- package/dist/cjs/{RecordIDUtils-3735135c.js → GetSelectedRecordsIDsInfo-bd50caf1.js} +10 -10
- package/dist/cjs/{SnkFormConfigManager-1b13bacd.js → SnkFormConfigManager-f1c92f79.js} +74 -20
- package/dist/cjs/{SnkMessageBuilder-722b104e.js → SnkMessageBuilder-bae64d0d.js} +7 -3
- package/dist/cjs/{auth-fetcher-54f5ff9d.js → auth-fetcher-d68841bc.js} +1 -1
- package/dist/cjs/{dataunit-fetcher-688d3f05.js → dataunit-fetcher-a36ae041.js} +48 -20
- package/dist/cjs/{field-search-f56aa7d6.js → field-search-68e34bf4.js} +5 -1
- package/dist/cjs/{form-config-fetcher-2dd00e5b.js → form-config-fetcher-ed497282.js} +5 -2
- package/dist/cjs/index-f9e81701.js +8 -28
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{pesquisa-fetcher-680e198f.js → pesquisa-fetcher-490a86c3.js} +7 -2
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/snk-actions-button_4.cjs.entry.js +17 -14
- package/dist/cjs/snk-application.cjs.entry.js +7 -7
- package/dist/cjs/snk-attach.cjs.entry.js +38 -29
- package/dist/cjs/{snk-form-config.cjs.entry.js → snk-config-options_3.cjs.entry.js} +381 -7
- package/dist/cjs/snk-crud.cjs.entry.js +16 -7
- package/dist/cjs/snk-data-exporter.cjs.entry.js +19 -18
- package/dist/cjs/{snk-data-unit-685272e7.js → snk-data-unit-b460f1da.js} +42 -22
- package/dist/cjs/snk-data-unit.cjs.entry.js +5 -5
- package/dist/cjs/snk-detail-view.cjs.entry.js +12 -13
- package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
- package/dist/cjs/snk-filter-bar_4.cjs.entry.js +1411 -0
- package/dist/cjs/snk-filter-binary-select.cjs.entry.js +1 -1
- package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +1 -1
- package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
- package/dist/cjs/snk-grid.cjs.entry.js +58 -21
- package/dist/cjs/{snk-guides-viewer-67605336.js → snk-guides-viewer-de0a5c57.js} +27 -14
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -9
- package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +1 -1
- package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
- package/dist/cjs/snk-print-selector.cjs.entry.js +1 -1
- package/dist/cjs/snk-simple-bar.cjs.entry.js +1 -1
- package/dist/cjs/snk-simple-crud.cjs.entry.js +66 -27
- package/dist/cjs/snk-taskbar.cjs.entry.js +24 -1
- package/dist/collection/collection-manifest.json +11 -31
- package/dist/collection/components/snk-actions-button/actions/index.js +12 -9
- package/dist/collection/components/snk-attach/snk-attach.js +25 -16
- package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +2 -4
- package/dist/collection/components/snk-crud/snk-crud.js +97 -2
- package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +3 -4
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +6 -6
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +70 -7
- package/dist/collection/components/snk-data-exporter/exporter-email-sender/options-step.js +1 -1
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +4 -4
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +5 -5
- package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +1 -1
- package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +1 -1
- package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +2 -2
- package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +2 -2
- package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +4 -4
- package/dist/collection/components/snk-data-unit/snk-data-unit.js +57 -20
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +1 -1
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.js +1 -1
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +1 -1
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +1 -1
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +59 -21
- package/dist/collection/components/snk-form/snk-form.js +2 -2
- package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +72 -18
- package/dist/collection/components/snk-form-config/snk-form-config.css +8 -3
- package/dist/collection/components/snk-form-config/snk-form-config.js +32 -3
- package/dist/collection/components/snk-grid/snk-grid.css +2 -0
- package/dist/collection/components/snk-grid/snk-grid.js +74 -8
- package/dist/collection/components/snk-print-selector/snk-print-selector.js +1 -1
- package/dist/collection/components/snk-simple-bar/snk-simple-bar.js +1 -1
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +0 -1
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +91 -16
- package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +5 -1
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +65 -0
- package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +3 -3
- package/dist/collection/lib/configs/ConfigStorage.js +1 -0
- package/dist/collection/lib/dataUnit/InMemoryLoader.js +2 -4
- package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +34 -9
- package/dist/collection/lib/http/data-fetcher/DataFetcher.js +22 -16
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.js +7 -5
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +2 -2
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +9 -2
- package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +4 -1
- package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +6 -1
- package/dist/collection/lib/message/resources/snk-data-unit.msg.js +1 -1
- package/dist/collection/lib/message/resources/snk-exporter.msg.js +1 -1
- package/dist/collection/lib/message/resources/snk-grid.msg.js +5 -1
- package/dist/collection/lib/utils/ContinuousInsertUtils.js +31 -0
- package/dist/collection/{components/snk-data-exporter/utils/RecordIDUtils.js → lib/utils/GetSelectedRecordsIDsInfo.js} +9 -9
- package/dist/collection/sw.js +46 -0
- package/dist/components/ConfigStorage.js +1 -0
- package/dist/components/{IExporterProvider.js → ContinuousInsertUtils.js} +40 -5
- package/dist/components/DataFetcher.js +22 -16
- package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
- package/dist/components/SnkFormConfigManager.js +72 -18
- package/dist/components/SnkMessageBuilder.js +7 -3
- package/dist/components/dataunit-fetcher.js +47 -17
- package/dist/components/form-config-fetcher.js +4 -1
- package/dist/components/pesquisa-fetcher.js +6 -1
- package/dist/components/snk-actions-button2.js +12 -9
- package/dist/components/snk-attach2.js +34 -25
- package/dist/components/snk-crud.js +15 -2
- package/dist/components/snk-data-exporter2.js +12 -11
- package/dist/components/snk-data-unit2.js +44 -60
- package/dist/components/snk-detail-view2.js +28 -13
- package/dist/components/snk-exporter-email-sender2.js +1 -1
- package/dist/components/snk-filter-bar2.js +35 -22
- package/dist/components/snk-filter-binary-select.js +1 -1
- package/dist/components/snk-filter-checkbox-list.js +1 -1
- package/dist/components/snk-form-config2.js +17 -4
- package/dist/components/snk-form.js +2 -2
- package/dist/components/snk-grid2.js +51 -12
- package/dist/components/snk-personalized-filter-editor.js +1 -1
- package/dist/components/snk-print-selector.js +1 -1
- package/dist/components/snk-simple-bar2.js +1 -1
- package/dist/components/snk-simple-crud2.js +59 -16
- package/dist/components/snk-taskbar2.js +25 -2
- package/dist/esm/{ConfigStorage-86187da3.js → ConfigStorage-7b36d041.js} +3 -2
- package/dist/esm/{IExporterProvider-63a188b6.js → ContinuousInsertUtils-3e520a07.js} +40 -8
- package/dist/esm/{DataFetcher-c1baf61d.js → DataFetcher-a9c598f2.js} +22 -16
- package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
- package/dist/esm/{SnkFormConfigManager-d4554df9.js → SnkFormConfigManager-f1a0fc92.js} +74 -20
- package/dist/esm/{SnkMessageBuilder-89925609.js → SnkMessageBuilder-6fff4a4c.js} +7 -3
- package/dist/esm/{auth-fetcher-039abba3.js → auth-fetcher-749d880f.js} +1 -1
- package/dist/esm/{constants-8457af36.js → constants-7302ee87.js} +1 -1
- package/dist/esm/{dataunit-fetcher-264191b2.js → dataunit-fetcher-fd58c640.js} +48 -18
- package/dist/esm/{field-search-efbe307f.js → field-search-f8b1d91e.js} +5 -1
- package/dist/esm/{form-config-fetcher-30fb808f.js → form-config-fetcher-adbe5d34.js} +5 -2
- package/dist/esm/index-a7d3d3f1.js +8 -28
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{pesquisa-fetcher-03c8f919.js → pesquisa-fetcher-50fc7e6b.js} +7 -2
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/snk-actions-button_4.entry.js +18 -15
- package/dist/esm/snk-application.entry.js +7 -7
- package/dist/esm/snk-attach.entry.js +39 -30
- package/dist/esm/{snk-form-config.entry.js → snk-config-options_3.entry.js} +382 -10
- package/dist/esm/snk-configurator.entry.js +1 -1
- package/dist/esm/snk-crud.entry.js +17 -8
- package/dist/esm/snk-data-exporter.entry.js +20 -19
- package/dist/esm/{snk-data-unit-63f83504.js → snk-data-unit-590225b5.js} +42 -22
- package/dist/esm/snk-data-unit.entry.js +5 -5
- package/dist/esm/snk-detail-view.entry.js +13 -14
- package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
- package/dist/esm/snk-field-config.entry.js +1 -1
- package/dist/esm/snk-filter-bar_4.entry.js +1404 -0
- package/dist/esm/snk-filter-binary-select.entry.js +1 -1
- package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
- package/dist/esm/snk-filter-modal-item.entry.js +3 -3
- package/dist/esm/snk-grid.entry.js +53 -16
- package/dist/esm/{snk-guides-viewer-151f6091.js → snk-guides-viewer-2f4dcdc5.js} +28 -15
- package/dist/esm/snk-guides-viewer.entry.js +9 -9
- package/dist/esm/snk-personalized-filter-editor.entry.js +1 -1
- package/dist/esm/snk-personalized-filter.entry.js +3 -3
- package/dist/esm/snk-print-selector.entry.js +1 -1
- package/dist/esm/snk-simple-bar.entry.js +1 -1
- package/dist/esm/snk-simple-crud.entry.js +63 -24
- package/dist/esm/snk-tab-config.entry.js +1 -1
- package/dist/esm/snk-taskbar.entry.js +24 -1
- package/dist/sankhyablocks/p-052213ba.entry.js +1 -0
- package/dist/sankhyablocks/{p-df5451c7.js → p-06421fdb.js} +2 -2
- package/dist/sankhyablocks/p-0b6cd238.entry.js +1 -0
- package/dist/sankhyablocks/p-0e320bd2.entry.js +1 -0
- package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
- package/dist/sankhyablocks/p-17425c72.js +1 -0
- package/dist/sankhyablocks/{p-a1d72395.entry.js → p-212213d9.entry.js} +1 -1
- package/dist/sankhyablocks/p-23736d75.js +1 -0
- package/dist/sankhyablocks/p-275de842.entry.js +1 -0
- package/dist/sankhyablocks/p-2aae03a1.entry.js +1 -0
- package/dist/sankhyablocks/{p-8eb67fa4.entry.js → p-2d3f9482.entry.js} +1 -1
- package/dist/sankhyablocks/{p-7663f597.entry.js → p-41793e17.entry.js} +1 -1
- package/dist/sankhyablocks/{p-72fc257b.entry.js → p-434817f0.entry.js} +1 -1
- package/dist/sankhyablocks/p-47bce500.js +60 -0
- package/dist/sankhyablocks/{p-aff76a53.js → p-4d9549cf.js} +2 -2
- package/dist/sankhyablocks/p-583517ba.entry.js +1 -0
- package/dist/sankhyablocks/p-5b51491f.entry.js +1 -0
- package/dist/sankhyablocks/p-5e51e833.entry.js +1 -0
- package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
- package/dist/sankhyablocks/p-656f0e51.entry.js +1 -0
- package/dist/sankhyablocks/p-72c10005.entry.js +1 -0
- package/dist/sankhyablocks/p-7bd9683d.js +1 -0
- package/dist/sankhyablocks/p-7dd49d15.js +1 -0
- package/dist/sankhyablocks/{p-af8efd95.js → p-8a9638ae.js} +2 -2
- package/dist/sankhyablocks/{p-95df461f.entry.js → p-8b4fc28f.entry.js} +1 -1
- package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-8c235d4c.entry.js} +1 -1
- package/dist/sankhyablocks/{p-b0ef4383.js → p-95ce311a.js} +1 -1
- package/dist/sankhyablocks/p-9f9b99d9.js +1 -0
- package/dist/sankhyablocks/p-ab1645fb.entry.js +1 -0
- package/dist/sankhyablocks/p-c2e468c9.entry.js +1 -0
- package/dist/sankhyablocks/{p-913a9979.js → p-ca5ec380.js} +1 -1
- package/dist/sankhyablocks/p-cefb0ee1.entry.js +1 -0
- package/dist/sankhyablocks/{p-82a0bfb0.entry.js → p-dbe6174a.entry.js} +2 -2
- package/dist/sankhyablocks/p-f3434fc4.js +1 -0
- package/dist/sankhyablocks/p-fa6c5826.entry.js +1 -0
- package/dist/sankhyablocks/p-fadc8339.js +1 -0
- package/dist/sankhyablocks/{p-eae7a817.entry.js → p-fb34e0cf.entry.js} +1 -1
- package/dist/sankhyablocks/p-fd13b4d2.js +1 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-actions-button/actions/index.d.ts +1 -0
- package/dist/types/components/snk-attach/snk-attach.d.ts +1 -0
- package/dist/types/components/snk-crud/snk-crud.d.ts +17 -0
- package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +15 -0
- package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +3 -3
- package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +7 -0
- package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +5 -0
- package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +9 -4
- package/dist/types/components/snk-form-config/snk-form-config.d.ts +4 -0
- package/dist/types/components/snk-grid/snk-grid.d.ts +11 -0
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +13 -0
- package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -0
- package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +11 -0
- package/dist/types/components.d.ts +113 -0
- package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +12 -2
- package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.d.ts +3 -2
- package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +1 -1
- package/dist/types/lib/utils/ContinuousInsertUtils.d.ts +10 -0
- package/dist/types/lib/utils/GetSelectedRecordsIDsInfo.d.ts +3 -0
- package/package.json +4 -3
- package/dist/cjs/snk-config-options.cjs.entry.js +0 -239
- package/dist/cjs/snk-filter-bar.cjs.entry.js +0 -714
- package/dist/cjs/snk-filter-item.cjs.entry.js +0 -312
- package/dist/cjs/snk-filter-list.cjs.entry.js +0 -152
- package/dist/cjs/snk-filter-modal.cjs.entry.js +0 -249
- package/dist/cjs/snk-form.cjs.entry.js +0 -143
- package/dist/esm/snk-config-options.entry.js +0 -235
- package/dist/esm/snk-filter-bar.entry.js +0 -710
- package/dist/esm/snk-filter-item.entry.js +0 -308
- package/dist/esm/snk-filter-list.entry.js +0 -148
- package/dist/esm/snk-filter-modal.entry.js +0 -245
- package/dist/esm/snk-form.entry.js +0 -139
- package/dist/sankhyablocks/p-14a08904.entry.js +0 -1
- package/dist/sankhyablocks/p-14b9f964.entry.js +0 -1
- package/dist/sankhyablocks/p-219f888d.entry.js +0 -1
- package/dist/sankhyablocks/p-3a212712.js +0 -1
- package/dist/sankhyablocks/p-3a216b81.entry.js +0 -1
- package/dist/sankhyablocks/p-3b60db06.entry.js +0 -1
- package/dist/sankhyablocks/p-47b60deb.entry.js +0 -1
- package/dist/sankhyablocks/p-70a4af56.entry.js +0 -1
- package/dist/sankhyablocks/p-7505da04.entry.js +0 -1
- package/dist/sankhyablocks/p-75f83d1d.entry.js +0 -1
- package/dist/sankhyablocks/p-7a337364.js +0 -1
- package/dist/sankhyablocks/p-829d4045.js +0 -1
- package/dist/sankhyablocks/p-88aa931b.entry.js +0 -1
- package/dist/sankhyablocks/p-8fc470e5.entry.js +0 -1
- package/dist/sankhyablocks/p-941bf3ef.entry.js +0 -1
- package/dist/sankhyablocks/p-9863d682.js +0 -1
- package/dist/sankhyablocks/p-b11aa1e0.entry.js +0 -1
- package/dist/sankhyablocks/p-b4b21558.entry.js +0 -1
- package/dist/sankhyablocks/p-bad55caa.entry.js +0 -1
- package/dist/sankhyablocks/p-c053256c.entry.js +0 -1
- package/dist/sankhyablocks/p-c2495304.js +0 -1
- package/dist/sankhyablocks/p-c5268346.entry.js +0 -1
- package/dist/sankhyablocks/p-cefba299.js +0 -1
- package/dist/sankhyablocks/p-d3f53df2.entry.js +0 -1
- package/dist/sankhyablocks/p-dc7c9047.js +0 -1
- package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
- package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
- package/dist/sankhyablocks/p-fcac4dfc.js +0 -1
- package/dist/sankhyablocks/p-fe79f83a.js +0 -60
- package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
|
@@ -128,6 +128,8 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
128
128
|
super();
|
|
129
129
|
this.__registerHost();
|
|
130
130
|
this.actionClick = createEvent(this, "actionClick", 7);
|
|
131
|
+
this.taskbarSaveLocker = createEvent(this, "taskbarSaveLocker", 7);
|
|
132
|
+
this.taskbarSaveUnlocker = createEvent(this, "taskbarSaveUnlocker", 7);
|
|
131
133
|
this.TASKBAR_ITEM_ID_PREFIX = 'TASKBAR_ITEM_';
|
|
132
134
|
this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME = 'taskbar-custom-elements-container';
|
|
133
135
|
this.ACTIONS_BUTTON_TAG = 'TASKBAR-ACTIONS-BUTTON';
|
|
@@ -151,8 +153,10 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
151
153
|
this.onSaveEvent = (action) => {
|
|
152
154
|
switch (action.type) {
|
|
153
155
|
case Action.FIELD_INVALIDATED:
|
|
156
|
+
case Action.INVALIDATE_CLEAN:
|
|
154
157
|
case Action.DATA_SAVED:
|
|
155
158
|
case Action.SAVING_ERROR:
|
|
159
|
+
case Action.SAVING_CANCELED:
|
|
156
160
|
this._isWaitingForSave = false;
|
|
157
161
|
break;
|
|
158
162
|
case Action.SAVING_DATA:
|
|
@@ -189,6 +193,16 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
189
193
|
this.getCustomElements(true);
|
|
190
194
|
}
|
|
191
195
|
}
|
|
196
|
+
handleTaskbarSaveLocker() {
|
|
197
|
+
if (this._isWaitingForSave !== true) {
|
|
198
|
+
this._isWaitingForSave = true;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
handleTaskbarSaveUnlocker() {
|
|
202
|
+
if (this._isWaitingForSave === true) {
|
|
203
|
+
this._isWaitingForSave = false;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
192
206
|
hasToSearchCustomElements(event) {
|
|
193
207
|
return this.customSlotId === event.detail && !this._slotContainer;
|
|
194
208
|
}
|
|
@@ -207,6 +221,14 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
207
221
|
this._hasToUpdateOverFlow = true;
|
|
208
222
|
}
|
|
209
223
|
}
|
|
224
|
+
observeIsWaitingForSave(newValue, oldValue) {
|
|
225
|
+
if (newValue == true && oldValue == false) {
|
|
226
|
+
this.taskbarSaveLocker.emit();
|
|
227
|
+
}
|
|
228
|
+
if (newValue == false && oldValue == true) {
|
|
229
|
+
this.taskbarSaveUnlocker.emit();
|
|
230
|
+
}
|
|
231
|
+
}
|
|
210
232
|
// Internal methods
|
|
211
233
|
elementsFromString(strButtons) {
|
|
212
234
|
const elements = [];
|
|
@@ -535,7 +557,8 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
535
557
|
static get watchers() { return {
|
|
536
558
|
"buttons": ["observeButtons"],
|
|
537
559
|
"disabledButtons": ["observeDisabledButtons"],
|
|
538
|
-
"_lastWidth": ["observeLastWidth"]
|
|
560
|
+
"_lastWidth": ["observeLastWidth"],
|
|
561
|
+
"_isWaitingForSave": ["observeIsWaitingForSave"]
|
|
539
562
|
}; }
|
|
540
563
|
static get style() { return snkTaskbarCss; }
|
|
541
564
|
}, [6, "snk-taskbar", {
|
|
@@ -562,7 +585,7 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
562
585
|
"_lastWidth": [32],
|
|
563
586
|
"_hasToUpdateOverFlow": [32],
|
|
564
587
|
"_isWaitingForSave": [32]
|
|
565
|
-
}, [[8, "snkCustomSlotElementsLoaded", "handleCustomSlotElementsLoaded"]]]);
|
|
588
|
+
}, [[8, "snkCustomSlotElementsLoaded", "handleCustomSlotElementsLoaded"], [8, "taskbarSaveLocker", "handleTaskbarSaveLocker"], [8, "taskbarSaveUnlocker", "handleTaskbarSaveUnlocker"]]]);
|
|
566
589
|
function defineCustomElement() {
|
|
567
590
|
if (typeof customElements === "undefined") {
|
|
568
591
|
return;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { R as ResourceFetcher, F as FormConfigFetcher } from './form-config-fetcher-
|
|
1
|
+
import { R as ResourceFetcher, F as FormConfigFetcher } from './form-config-fetcher-adbe5d34.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-
|
|
4
|
+
import { d as dist, D as DataFetcher } from './DataFetcher-a9c598f2.js';
|
|
5
5
|
|
|
6
6
|
class GridConfigFetcher extends ResourceFetcher {
|
|
7
7
|
constructor() {
|
|
@@ -423,6 +423,7 @@ class ConfigStorage {
|
|
|
423
423
|
if (config == undefined) {
|
|
424
424
|
return;
|
|
425
425
|
}
|
|
426
|
+
name = this.handleLegacyConfigAsString(name, CONFIG_SOURCE.grid);
|
|
426
427
|
await this.deleteGridConfigCache(name, resourceID);
|
|
427
428
|
return this.gridConfigFetcher.saveConfig(config, name, resourceID);
|
|
428
429
|
}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import { D as DataFetcher } from './DataFetcher-
|
|
2
|
-
import './pesquisa-fetcher-
|
|
3
|
-
import { SortMode, ApplicationContext, UserInterface, DateUtils, ObjectUtils, NumberUtils, DataType } from '@sankhyalabs/core';
|
|
1
|
+
import { D as DataFetcher } from './DataFetcher-a9c598f2.js';
|
|
2
|
+
import './pesquisa-fetcher-50fc7e6b.js';
|
|
3
|
+
import { SortMode, ApplicationContext, UserInterface, DateUtils, ObjectUtils, StringUtils, NumberUtils, DataType } from '@sankhyalabs/core';
|
|
4
4
|
import './index-3aa4977a.js';
|
|
5
5
|
import './ISave-d8c8bc59.js';
|
|
6
6
|
import '@sankhyalabs/ezui/dist/collection/utils/constants';
|
|
7
7
|
import { UserInterface as UserInterface$1 } from '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
|
|
8
|
-
import { P as PreloadManager } from './dataunit-fetcher-
|
|
8
|
+
import { P as PreloadManager } from './dataunit-fetcher-fd58c640.js';
|
|
9
9
|
import './filter-item-type.enum-d45e026f.js';
|
|
10
|
-
import './form-config-fetcher-
|
|
10
|
+
import './form-config-fetcher-adbe5d34.js';
|
|
11
11
|
import InMemoryFilterColumnDataSource from '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils/InMemoryFilterColumnDataSource';
|
|
12
|
+
import { h } from './index-a7d3d3f1.js';
|
|
12
13
|
|
|
13
14
|
class CrudUtils {
|
|
14
15
|
static assertDefaultSorting(gridConfig, dataUnit) {
|
|
@@ -140,7 +141,7 @@ class RmPrecisionCustomValueFormatter {
|
|
|
140
141
|
this.refreshSelectedRows();
|
|
141
142
|
}
|
|
142
143
|
setDataState(dataState) {
|
|
143
|
-
if (ObjectUtils.
|
|
144
|
+
if (this._dataState && ObjectUtils.equals(dataState === null || dataState === void 0 ? void 0 : dataState.metadataByRow, this._dataState.metadataByRow)) {
|
|
144
145
|
return;
|
|
145
146
|
}
|
|
146
147
|
this._dataState = dataState;
|
|
@@ -148,7 +149,7 @@ class RmPrecisionCustomValueFormatter {
|
|
|
148
149
|
}
|
|
149
150
|
format(currentValue, column, recordId) {
|
|
150
151
|
var _a;
|
|
151
|
-
if (
|
|
152
|
+
if (StringUtils.isEmpty(currentValue)) {
|
|
152
153
|
return currentValue;
|
|
153
154
|
}
|
|
154
155
|
const rowMetadata = (_a = this._dataState) === null || _a === void 0 ? void 0 : _a.metadataByRow.get(recordId);
|
|
@@ -218,4 +219,35 @@ class CommonsExporter {
|
|
|
218
219
|
}
|
|
219
220
|
}
|
|
220
221
|
|
|
221
|
-
|
|
222
|
+
class ContinuousInsertUtils {
|
|
223
|
+
constructor(snkApplication, resourceID, configName) {
|
|
224
|
+
this.snkApplication = snkApplication;
|
|
225
|
+
this.keyConfigEnableContinuousInsert = `${resourceID}enableContinuousInsert${configName ? configName : ''}`;
|
|
226
|
+
}
|
|
227
|
+
handleSaveConfig(enableContinuousInsert) {
|
|
228
|
+
return this.snkApplication.saveConfig(this.keyConfigEnableContinuousInsert, enableContinuousInsert);
|
|
229
|
+
}
|
|
230
|
+
getConfig() {
|
|
231
|
+
return this.snkApplication.getConfig(this.keyConfigEnableContinuousInsert).then(value => {
|
|
232
|
+
if (value) {
|
|
233
|
+
return value == "true" ? true : false;
|
|
234
|
+
}
|
|
235
|
+
return false;
|
|
236
|
+
}).catch(() => {
|
|
237
|
+
return false;
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
actionContinuousInsert(enableContinuousInsert, handleEnableContinuousInsert) {
|
|
241
|
+
return {
|
|
242
|
+
value: StringUtils.generateUUID(),
|
|
243
|
+
label: enableContinuousInsert ? 'Desativar inclusão contínua' : 'Ativar inclusão contínua',
|
|
244
|
+
enabled: true,
|
|
245
|
+
itemBuilder: () => {
|
|
246
|
+
return (h("div", { class: "ez-dropdown__item-wrapper", onClick: handleEnableContinuousInsert },
|
|
247
|
+
h("span", { class: "ez-dropdown__item-label" }, enableContinuousInsert ? 'Desativar inclusão contínua' : 'Ativar inclusão contínua')));
|
|
248
|
+
},
|
|
249
|
+
};
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
export { CommonsExporter as C, RmPrecisionCustomValueFormatter as R, SnkMultiSelectionListDataSource as S, CrudUtils as a, ContinuousInsertUtils as b };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DataType, ApplicationContext, StringUtils, ErrorException, WarningException, ObjectUtils } from '@sankhyalabs/core';
|
|
1
|
+
import { DataType, ApplicationContext, StringUtils, ErrorException, WarningException, ObjectUtils, ServiceCanceledException } from '@sankhyalabs/core';
|
|
2
2
|
import { P as PrintUtils } from './PrintUtils-3e4ff0f5.js';
|
|
3
3
|
import { DataUnitTransient } from '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
|
|
4
4
|
|
|
@@ -6863,6 +6863,7 @@ class DataFetcher {
|
|
|
6863
6863
|
}
|
|
6864
6864
|
}
|
|
6865
6865
|
async executePendingRequest(watingRequestsById) {
|
|
6866
|
+
var _a, _b;
|
|
6866
6867
|
const requestsBatch = [];
|
|
6867
6868
|
let quietMode = true;
|
|
6868
6869
|
watingRequestsById.forEach((waitingReq) => {
|
|
@@ -6873,31 +6874,36 @@ class DataFetcher {
|
|
|
6873
6874
|
const response = await this.fecthGraphQL(requestsBatch, quietMode);
|
|
6874
6875
|
const { data: dataResponse, errors: errorsResponse, extensions } = response;
|
|
6875
6876
|
//Reject promises with errors from query
|
|
6876
|
-
|
|
6877
|
-
Object.
|
|
6878
|
-
|
|
6877
|
+
for (const errorResponse of errorsResponse) {
|
|
6878
|
+
const values = Object.values(errorResponse);
|
|
6879
|
+
for (const value of values) {
|
|
6880
|
+
const waitingRequest = watingRequestsById.get(value.request.variables[value.index].queryID);
|
|
6879
6881
|
const hasClientEvent = await this.proccesGraphQLClientEvents(extensions, waitingRequest.request, waitingRequest.resolve, waitingRequest.reject);
|
|
6880
|
-
Promise.race([
|
|
6882
|
+
const data = await Promise.race([
|
|
6881
6883
|
waitingRequest.promise,
|
|
6882
6884
|
new Promise((resolve) => {
|
|
6883
6885
|
resolve(false);
|
|
6884
6886
|
})
|
|
6885
|
-
])
|
|
6886
|
-
|
|
6887
|
-
if (
|
|
6888
|
-
(((_a = watingRequestsById.get(
|
|
6887
|
+
]);
|
|
6888
|
+
if (!hasClientEvent || data === false) {
|
|
6889
|
+
if (Object.keys(errorResponse[0].extensions).includes("SERVICE_CANCELED") || Object.keys(extensions).includes("isServiceCancelled")) {
|
|
6890
|
+
(((_a = watingRequestsById.get(value.request.variables[value.index].queryID)) === null || _a === void 0 ? void 0 : _a.reject) || Promise.reject)(new ServiceCanceledException("Service canceled", value.message));
|
|
6889
6891
|
}
|
|
6890
|
-
|
|
6891
|
-
|
|
6892
|
-
|
|
6892
|
+
else {
|
|
6893
|
+
(((_b = watingRequestsById.get(value.request.variables[value.index].queryID)) === null || _b === void 0 ? void 0 : _b.reject) || Promise.reject)(new ErrorException("Falha detectada", value.message));
|
|
6894
|
+
}
|
|
6895
|
+
}
|
|
6896
|
+
}
|
|
6897
|
+
}
|
|
6893
6898
|
//Resolve promises with data from query
|
|
6894
|
-
|
|
6895
|
-
Object.entries(data)
|
|
6899
|
+
for (const data of dataResponse) {
|
|
6900
|
+
const entries = Object.entries(data);
|
|
6901
|
+
for (const [key, val] of entries) {
|
|
6896
6902
|
const waitingRequest = watingRequestsById.get(key);
|
|
6897
6903
|
await this.proccesGraphQLClientEvents(extensions, waitingRequest.request, waitingRequest.resolve, waitingRequest.reject);
|
|
6898
6904
|
((waitingRequest === null || waitingRequest === void 0 ? void 0 : waitingRequest.resolve) || Promise.resolve)(val);
|
|
6899
|
-
}
|
|
6900
|
-
}
|
|
6905
|
+
}
|
|
6906
|
+
}
|
|
6901
6907
|
}
|
|
6902
6908
|
buildGraphQlURL(quietMode) {
|
|
6903
6909
|
const urlParams = UrlUtils.getQueryParams(location.search);
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { JSUtils, DataType } from '@sankhyalabs/core';
|
|
2
|
+
|
|
3
|
+
function getSelectedRecordsIDsInfo(dataUnit) {
|
|
4
|
+
const selectionInfo = dataUnit === null || dataUnit === void 0 ? void 0 : dataUnit.getSelectionInfo();
|
|
5
|
+
if (selectionInfo === null || selectionInfo === void 0 ? void 0 : selectionInfo.isAllRecords()) {
|
|
6
|
+
return [];
|
|
7
|
+
}
|
|
8
|
+
const selectedRecordsIDsInfo = [];
|
|
9
|
+
const selectedRecords = selectionInfo === null || selectionInfo === void 0 ? void 0 : selectionInfo.records;
|
|
10
|
+
if ((selectedRecords === null || selectedRecords === void 0 ? void 0 : selectedRecords.length) > 0) {
|
|
11
|
+
selectedRecords.forEach(({ __record__id__ }) => {
|
|
12
|
+
if (!dataUnit.isNewRecord(__record__id__)) {
|
|
13
|
+
/*
|
|
14
|
+
Esse if foi necessário para tratar corretamente o ID
|
|
15
|
+
do record quando está sendo utilizado no modo standAlone
|
|
16
|
+
isso não faz a exportação da grid funcionar no modo standAlone
|
|
17
|
+
mas deixa de causar erro nas oprações de CRUD.
|
|
18
|
+
*/
|
|
19
|
+
if (!JSUtils.isBase64(__record__id__)) {
|
|
20
|
+
selectedRecordsIDsInfo.push({
|
|
21
|
+
name: "__record__id__",
|
|
22
|
+
type: DataType.TEXT,
|
|
23
|
+
value: __record__id__
|
|
24
|
+
});
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
const revertBase64ToObject = JSON.parse(window.atob(__record__id__));
|
|
28
|
+
Object.entries(revertBase64ToObject).forEach(([name, value]) => {
|
|
29
|
+
const metadataField = dataUnit === null || dataUnit === void 0 ? void 0 : dataUnit.getField(name);
|
|
30
|
+
if (metadataField == undefined) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
selectedRecordsIDsInfo.push(Object.assign({ name, type: metadataField.dataType }, value));
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
return selectedRecordsIDsInfo;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export { getSelectedRecordsIDsInfo as g };
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import { C as ConfigStorage } from './ConfigStorage-
|
|
1
|
+
import { C as ConfigStorage } from './ConfigStorage-7b36d041.js';
|
|
2
2
|
import { ObjectUtils, StringUtils } from '@sankhyalabs/core';
|
|
3
|
-
import { F as FormConfigFetcher } from './form-config-fetcher-
|
|
3
|
+
import { F as FormConfigFetcher } from './form-config-fetcher-adbe5d34.js';
|
|
4
|
+
import { b as TAB_NAMES } from './constants-7302ee87.js';
|
|
4
5
|
|
|
5
6
|
class SnkFormConfigManager {
|
|
6
|
-
constructor(configName, resourceID, onConfigChange) {
|
|
7
|
+
constructor(configName, resourceID, onConfigChange, dataUnit) {
|
|
7
8
|
this._resourceID = resourceID;
|
|
8
9
|
this._configName = configName;
|
|
9
10
|
this._onConfigChange = onConfigChange;
|
|
11
|
+
this._dataUnit = dataUnit;
|
|
10
12
|
}
|
|
11
13
|
addFormLegacyConfig(legacyConfigName) {
|
|
12
14
|
if (this._configName) {
|
|
@@ -17,6 +19,7 @@ class SnkFormConfigManager {
|
|
|
17
19
|
return new Promise(resolve => {
|
|
18
20
|
ConfigStorage.loadFormConfig(this._configName, this._resourceID)
|
|
19
21
|
.then((config) => {
|
|
22
|
+
config = this.buildFormMetadataUITabs(config);
|
|
20
23
|
this.setConfig(config);
|
|
21
24
|
resolve(config);
|
|
22
25
|
})
|
|
@@ -25,6 +28,10 @@ class SnkFormConfigManager {
|
|
|
25
28
|
});
|
|
26
29
|
});
|
|
27
30
|
}
|
|
31
|
+
getEmptyConfig() {
|
|
32
|
+
const config = this.buildFormMetadataUITabs({ fields: [], emptyConfig: true }, true);
|
|
33
|
+
return config;
|
|
34
|
+
}
|
|
28
35
|
saveConfig(config) {
|
|
29
36
|
const configToSave = ObjectUtils.copy(config);
|
|
30
37
|
return new Promise(accept => {
|
|
@@ -68,27 +75,36 @@ class SnkFormConfigManager {
|
|
|
68
75
|
}
|
|
69
76
|
return updatingCardConfig;
|
|
70
77
|
}
|
|
71
|
-
|
|
78
|
+
hasConfig(config) {
|
|
79
|
+
var _a;
|
|
80
|
+
const currentConfig = config !== null && config !== void 0 ? config : this._config;
|
|
81
|
+
if (currentConfig && ((_a = currentConfig.fields) === null || _a === void 0 ? void 0 : _a.length)) {
|
|
82
|
+
return true;
|
|
83
|
+
}
|
|
84
|
+
return false;
|
|
85
|
+
}
|
|
86
|
+
getFieldsList(descriptionFilter, forceEmptyConfig = false) {
|
|
72
87
|
var _a;
|
|
73
88
|
const fields = (_a = this._config) === null || _a === void 0 ? void 0 : _a.fields;
|
|
74
|
-
|
|
75
|
-
|
|
89
|
+
const hasConfig = this.hasConfig();
|
|
90
|
+
if (hasConfig && !forceEmptyConfig) {
|
|
91
|
+
return fields.map(({ label, name, readOnly, visible, required, tab }) => {
|
|
92
|
+
var _a;
|
|
76
93
|
if (label == undefined) {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
visible,
|
|
80
|
-
required });
|
|
94
|
+
const currentField = (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.getField(name);
|
|
95
|
+
return Object.assign(Object.assign({}, currentField), { name: name !== null && name !== void 0 ? name : currentField.name, readOnly: readOnly !== null && readOnly !== void 0 ? readOnly : currentField.readOnly, visible: visible !== null && visible !== void 0 ? visible : currentField.visible, required: required !== null && required !== void 0 ? required : currentField.required, tab: tab });
|
|
81
96
|
}
|
|
82
|
-
return { name, label, readOnly, visible, required };
|
|
97
|
+
return { name, label, readOnly, visible, required, tab };
|
|
83
98
|
})
|
|
84
99
|
.filter(field => this.isFieldVisible(field, descriptionFilter));
|
|
85
100
|
}
|
|
86
|
-
if (
|
|
87
|
-
return
|
|
88
|
-
.filter(field => this.isFieldVisible(field, descriptionFilter))
|
|
89
|
-
.map(({ label, name, readOnly }) => { return { label, name, readOnly }; });
|
|
101
|
+
if (!this._dataUnit) {
|
|
102
|
+
return [];
|
|
90
103
|
}
|
|
91
|
-
|
|
104
|
+
const filteredFields = this._dataUnit.metadata.fields
|
|
105
|
+
.filter(field => this.isFieldVisible(field, descriptionFilter))
|
|
106
|
+
.map(({ label, name, readOnly, visible, required, properties }) => ({ label, name, readOnly, visible, required, tab: properties === null || properties === void 0 ? void 0 : properties.UITabName }));
|
|
107
|
+
return filteredFields;
|
|
92
108
|
}
|
|
93
109
|
isFieldVisible(field, descriptionFilter) {
|
|
94
110
|
if (field.visible === false) {
|
|
@@ -101,8 +117,8 @@ class SnkFormConfigManager {
|
|
|
101
117
|
const normalizedFilter = StringUtils.replaceAccentuatedCharsLower(descriptionFilter.toLocaleLowerCase());
|
|
102
118
|
return normalizedText.includes(normalizedFilter);
|
|
103
119
|
}
|
|
104
|
-
|
|
105
|
-
let fields = this.getFieldsList(
|
|
120
|
+
getFormConfig(dataUnit, ignoreReadOnlyFormFields, forceEmptyConfig = false) {
|
|
121
|
+
let fields = this.getFieldsList(undefined, forceEmptyConfig);
|
|
106
122
|
if (ignoreReadOnlyFormFields) {
|
|
107
123
|
fields = fields.filter(field => {
|
|
108
124
|
if (dataUnit) {
|
|
@@ -133,8 +149,8 @@ class SnkFormConfigManager {
|
|
|
133
149
|
this._onConfigChange(Object.assign({}, this._config));
|
|
134
150
|
}
|
|
135
151
|
}
|
|
136
|
-
getConfig(
|
|
137
|
-
return
|
|
152
|
+
getConfig(dataUnit, ignoreReadOnlyFormFields) {
|
|
153
|
+
return this.getFormConfig(dataUnit, ignoreReadOnlyFormFields !== null && ignoreReadOnlyFormFields !== void 0 ? ignoreReadOnlyFormFields : true);
|
|
138
154
|
}
|
|
139
155
|
getFormConfigFetcher() {
|
|
140
156
|
if (this._formConfigFetcher == undefined) {
|
|
@@ -155,6 +171,44 @@ class SnkFormConfigManager {
|
|
|
155
171
|
async fetchDefaultConfig() {
|
|
156
172
|
return this.getFormConfigFetcher().fetchDefaultConfig(this._configName, this._resourceID);
|
|
157
173
|
}
|
|
174
|
+
parseObjectList(object) {
|
|
175
|
+
if (!object) {
|
|
176
|
+
return [];
|
|
177
|
+
}
|
|
178
|
+
return Array.isArray(object) ? object : [object];
|
|
179
|
+
}
|
|
180
|
+
buildFormMetadataUITabs(config, forceEmptyConfig = false) {
|
|
181
|
+
var _a;
|
|
182
|
+
const hasConfig = this.hasConfig(config);
|
|
183
|
+
if (!forceEmptyConfig && (!this._dataUnit || hasConfig)) {
|
|
184
|
+
return config;
|
|
185
|
+
}
|
|
186
|
+
config = this.getFormConfig(this._dataUnit, false, true);
|
|
187
|
+
config.tabs = this.parseObjectList(config.tabs);
|
|
188
|
+
config.emptyConfig = false;
|
|
189
|
+
config.defaultConfiguration = true;
|
|
190
|
+
const fields = this._dataUnit.metadata.fields;
|
|
191
|
+
for (const currentField of fields) {
|
|
192
|
+
const field = config.fields.find(field => field.name === currentField.name);
|
|
193
|
+
const uiTabName = (_a = currentField.properties) === null || _a === void 0 ? void 0 : _a.UITabName;
|
|
194
|
+
if (!uiTabName || uiTabName === TAB_NAMES.main) {
|
|
195
|
+
continue;
|
|
196
|
+
}
|
|
197
|
+
const haveTab = config.tabs.some((tab) => tab.label === uiTabName);
|
|
198
|
+
if (!haveTab) {
|
|
199
|
+
config.tabs.push({
|
|
200
|
+
label: uiTabName,
|
|
201
|
+
name: uiTabName,
|
|
202
|
+
order: 0,
|
|
203
|
+
visible: true,
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
if (field) {
|
|
207
|
+
field.tab = uiTabName;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
return config;
|
|
211
|
+
}
|
|
158
212
|
}
|
|
159
213
|
|
|
160
214
|
export { SnkFormConfigManager as S };
|
|
@@ -8,7 +8,7 @@ const snkDataUnitMessages = {
|
|
|
8
8
|
},
|
|
9
9
|
cancelInfo: {
|
|
10
10
|
clone: "Duplicação descartada!",
|
|
11
|
-
insert: "A inclusão descartada!",
|
|
11
|
+
insert: "A inclusão foi descartada!",
|
|
12
12
|
update: "A edição foi descartada!"
|
|
13
13
|
},
|
|
14
14
|
confirm: {
|
|
@@ -122,7 +122,7 @@ const snkExporterMessages = {
|
|
|
122
122
|
emailSenderOptStep_subtitle: "Primeiro, escolha o formato do arquivo",
|
|
123
123
|
emailSenderOptStep_lblFormat: "Formato:",
|
|
124
124
|
emailSenderOptStep_formatPDF: "PDF (.pdf)",
|
|
125
|
-
|
|
125
|
+
emailSenderOptStep_formatXLS: "Planilha (.xls)",
|
|
126
126
|
emailSenderOptStep_export: "Exportar:",
|
|
127
127
|
emailSenderOptStep_allData: "Toda a grade",
|
|
128
128
|
emailSenderOptStep_currentPage: "Somente a página atual",
|
|
@@ -245,7 +245,11 @@ const snkConfiguratorMessages = {
|
|
|
245
245
|
};
|
|
246
246
|
|
|
247
247
|
const snkGridMessages = {
|
|
248
|
-
findColumn: "Busca de colunas"
|
|
248
|
+
findColumn: "Busca de colunas",
|
|
249
|
+
cancelConfirmation: {
|
|
250
|
+
title: "Aviso",
|
|
251
|
+
message: "As alterações realizadas serão descartadas<br/><br/><b>Você realmente gostaria de cancelar?</b>",
|
|
252
|
+
}
|
|
249
253
|
};
|
|
250
254
|
const snkGridConfigMessages = {
|
|
251
255
|
gridConfiguration: "Configuração da Grade",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ObjectUtils } from '@sankhyalabs/core';
|
|
2
|
-
import { R as ResourceFetcher } from './form-config-fetcher-
|
|
2
|
+
import { R as ResourceFetcher } from './form-config-fetcher-adbe5d34.js';
|
|
3
3
|
|
|
4
4
|
class AuthFetcher extends ResourceFetcher {
|
|
5
5
|
getData(resourceID) {
|
|
@@ -90,4 +90,4 @@ var SIMPLE_CRUD_MODE;
|
|
|
90
90
|
SIMPLE_CRUD_MODE[SIMPLE_CRUD_MODE["IN_MEMORY"] = 1] = "IN_MEMORY";
|
|
91
91
|
})(SIMPLE_CRUD_MODE || (SIMPLE_CRUD_MODE = {}));
|
|
92
92
|
|
|
93
|
-
export { ACTION_CONFIG as A, CONFIG_EVENTS as C, DEFAULT_TYPE as D, KEY_EVENTS as K, ORDER_VALUES as O, REPORT_LAUNCHER_RESOURCE_ID as R, SIMPLE_CRUD_MODE as S,
|
|
93
|
+
export { ACTION_CONFIG as A, CONFIG_EVENTS as C, DEFAULT_TYPE as D, KEY_EVENTS as K, ORDER_VALUES as O, REPORT_LAUNCHER_RESOURCE_ID as R, SIMPLE_CRUD_MODE as S, TYPE_ACTIONS as T, VIEW_MODE as V, CONFIG_SORTABLE_EVENTS as a, TAB_NAMES as b, VARS_BY_TYPE as c, TAGS_BY_TYPE as d };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ObjectUtils, DataUnit, DataType, DateUtils, StringUtils, ChangeOperation, ApplicationContext, UserInterface, DataUnitStorage } from '@sankhyalabs/core';
|
|
2
|
-
import { D as DataFetcher, d as dist } from './DataFetcher-
|
|
2
|
+
import { D as DataFetcher, d as dist } from './DataFetcher-a9c598f2.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 { ColumnFilterManager } from '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
|
|
@@ -235,6 +235,21 @@ function applyFilter(records, dataUnit, filters) {
|
|
|
235
235
|
}
|
|
236
236
|
return records.filter(filterFunction);
|
|
237
237
|
}
|
|
238
|
+
function buildLoadDataResponse(recordsIn, dataUnit, request) {
|
|
239
|
+
let records = recordsIn ? [...recordsIn] : [];
|
|
240
|
+
records = applyFilter(records, dataUnit, request.filters);
|
|
241
|
+
records = applySorting(records, dataUnit, request.sort);
|
|
242
|
+
const { offset, limit } = request;
|
|
243
|
+
const paginationInfoBuilderParams = {
|
|
244
|
+
recordsLength: records.length,
|
|
245
|
+
offset,
|
|
246
|
+
recordsPerPage: limit,
|
|
247
|
+
};
|
|
248
|
+
return Promise.resolve({
|
|
249
|
+
records: getPagesByRecords(records, offset, limit),
|
|
250
|
+
paginationInfo: buildPaginationInfo(paginationInfoBuilderParams),
|
|
251
|
+
});
|
|
252
|
+
}
|
|
238
253
|
function applySorting(records, dataUnit, sorting) {
|
|
239
254
|
if (sorting == undefined || sorting.length == 0) {
|
|
240
255
|
return records;
|
|
@@ -245,18 +260,28 @@ function applySorting(records, dataUnit, sorting) {
|
|
|
245
260
|
}
|
|
246
261
|
return records.sort(sortingFunction);
|
|
247
262
|
}
|
|
248
|
-
function
|
|
249
|
-
|
|
250
|
-
|
|
263
|
+
function hasValidLimitAndOffset(offset, limit) {
|
|
264
|
+
return offset >= 0 && limit >= 0;
|
|
265
|
+
}
|
|
266
|
+
function getPagesByRecords(records, offset = 0, limit = 0) {
|
|
267
|
+
if (!records || !records.length || !hasValidLimitAndOffset(offset, limit))
|
|
268
|
+
return [];
|
|
269
|
+
if (limit === 0 && offset === 0)
|
|
270
|
+
return records;
|
|
271
|
+
return records.slice(offset, offset + limit);
|
|
272
|
+
}
|
|
273
|
+
function buildPaginationInfo({ recordsLength = 0, offset = 0, recordsPerPage = 0 }) {
|
|
274
|
+
if (!recordsLength) {
|
|
275
|
+
return { currentPage: 0, firstRecord: 0, lastRecord: 0, total: 0, hasMore: false };
|
|
251
276
|
}
|
|
252
|
-
const
|
|
253
|
-
const lastRecord = Math.min(
|
|
277
|
+
const lastRecordIndex = offset + recordsPerPage;
|
|
278
|
+
const lastRecord = lastRecordIndex ? Math.min(lastRecordIndex, recordsLength) : recordsLength;
|
|
254
279
|
return {
|
|
255
|
-
currentPage:
|
|
256
|
-
firstRecord: offset,
|
|
280
|
+
currentPage: recordsPerPage === 0 ? 0 : Math.ceil(offset / recordsPerPage),
|
|
281
|
+
firstRecord: offset + 1,
|
|
257
282
|
lastRecord: lastRecord,
|
|
258
|
-
total:
|
|
259
|
-
hasMore:
|
|
283
|
+
total: recordsLength,
|
|
284
|
+
hasMore: lastRecord < recordsLength,
|
|
260
285
|
};
|
|
261
286
|
}
|
|
262
287
|
|
|
@@ -342,9 +367,7 @@ class InMemoryLoader {
|
|
|
342
367
|
return StringUtils.generateUUID();
|
|
343
368
|
}
|
|
344
369
|
inMemoryLoader(dataUnit, request, recordsIn) {
|
|
345
|
-
|
|
346
|
-
records = applySorting(records, dataUnit, request.sort);
|
|
347
|
-
return Promise.resolve({ records, paginationInfo: buildPaginationInfo(records, request.offset, request.limit) });
|
|
370
|
+
return buildLoadDataResponse(recordsIn, dataUnit, request);
|
|
348
371
|
}
|
|
349
372
|
metadaLoader() {
|
|
350
373
|
return Promise.resolve(this._metadata);
|
|
@@ -424,12 +447,19 @@ class DatasetStrategy {
|
|
|
424
447
|
const records = this.processRecords(dataUnit, fields, responseRecords);
|
|
425
448
|
const loadingInProgress = pagerId != undefined;
|
|
426
449
|
const count = loadingInfo.count + records.length;
|
|
450
|
+
const isInsertingNewRecord = dataUnit.hasNewRecord();
|
|
427
451
|
const needReload = !loadingInProgress && localSorting.length > 0;
|
|
452
|
+
/**
|
|
453
|
+
* Caso precise recarregar dados, porém está no meio de uma inserção, os dados não devem recarregados instantaneamente,
|
|
454
|
+
* Mas sim, sinalizar que o dataUnit está aguardando para der recarregado.
|
|
455
|
+
*/
|
|
456
|
+
if (needReload && isInsertingNewRecord) {
|
|
457
|
+
dataUnit.setWaitingToReload(true);
|
|
458
|
+
}
|
|
428
459
|
return Promise.resolve({
|
|
429
460
|
records,
|
|
430
461
|
loadingInfo: Object.assign(Object.assign({}, loadingInfo), { pagerId,
|
|
431
|
-
loadingInProgress, total: loadingInProgress ? undefined : count, count,
|
|
432
|
-
needReload })
|
|
462
|
+
loadingInProgress, total: loadingInProgress ? undefined : count, count, needReload: needReload && !isInsertingNewRecord })
|
|
433
463
|
});
|
|
434
464
|
}
|
|
435
465
|
catch (error) {
|
|
@@ -682,7 +712,7 @@ class DataUnitDataLoader {
|
|
|
682
712
|
}
|
|
683
713
|
const count = loadingInfo.count;
|
|
684
714
|
if (loadingInfo.loadingInProgress) {
|
|
685
|
-
dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { count }));
|
|
715
|
+
dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { count, loadingInProgress: true }));
|
|
686
716
|
return;
|
|
687
717
|
}
|
|
688
718
|
if (loadingInfo.needReload) {
|
|
@@ -690,7 +720,7 @@ class DataUnitDataLoader {
|
|
|
690
720
|
dataUnit.gotoPage(0);
|
|
691
721
|
return;
|
|
692
722
|
}
|
|
693
|
-
dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { total: count, count }));
|
|
723
|
+
dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { total: count, count, loadingInProgress: false }));
|
|
694
724
|
}
|
|
695
725
|
static registryLoading(dataUnit, loadingInfo) {
|
|
696
726
|
if (loadingInfo == undefined) {
|
|
@@ -1052,4 +1082,4 @@ class DataUnitFetcher {
|
|
|
1052
1082
|
}
|
|
1053
1083
|
}
|
|
1054
1084
|
|
|
1055
|
-
export { DataUnitFetcher as D, InMemoryLoader as I, PreloadManager as P, DatasetStrategy as a,
|
|
1085
|
+
export { DataUnitFetcher as D, InMemoryLoader as I, PreloadManager as P, DatasetStrategy as a, buildLoadDataResponse as b, getRecordValue as g };
|
|
@@ -31,12 +31,16 @@ class TaskbarProcessor {
|
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
33
|
getButtonsArray(taskbarId, taskbarManager, dataState) {
|
|
34
|
-
const defaults = this.
|
|
34
|
+
const defaults = this.getButtonsFromKey(taskbarId);
|
|
35
35
|
if (taskbarManager) {
|
|
36
36
|
return taskbarManager.getButtons(taskbarId, dataState, [...defaults]);
|
|
37
37
|
}
|
|
38
38
|
return defaults;
|
|
39
39
|
}
|
|
40
|
+
getButtonsFromKey(taskbarId) {
|
|
41
|
+
const btnsValue = this._defaultButtons[taskbarId];
|
|
42
|
+
return typeof btnsValue === 'function' ? btnsValue() : btnsValue;
|
|
43
|
+
}
|
|
40
44
|
isEnabled(taskbarId, taskbarManager, buttonName, dataState, disabled) {
|
|
41
45
|
const originalValue = disabled.includes(buttonName) ? false : true;
|
|
42
46
|
if (taskbarManager && taskbarManager.isEnabled) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as dist, D as DataFetcher } from './DataFetcher-
|
|
1
|
+
import { d as dist, D as DataFetcher } from './DataFetcher-a9c598f2.js';
|
|
2
2
|
import { ObjectUtils } from '@sankhyalabs/core';
|
|
3
3
|
|
|
4
4
|
class ResourceFetcher {
|
|
@@ -217,7 +217,10 @@ class FormConfigFetcher extends ResourceFetcher {
|
|
|
217
217
|
query: this.queryConfig.get("fetchDefaultConfig"),
|
|
218
218
|
})
|
|
219
219
|
.then((result) => {
|
|
220
|
-
|
|
220
|
+
if (!(result === null || result === void 0 ? void 0 : result.resource)) {
|
|
221
|
+
resolve(null);
|
|
222
|
+
}
|
|
223
|
+
resolve(ObjectUtils.stringToObject(result === null || result === void 0 ? void 0 : result.resource));
|
|
221
224
|
})
|
|
222
225
|
.catch((error) => {
|
|
223
226
|
reject(error);
|