@sankhyalabs/sankhyablocks 8.15.3 → 8.16.0-dev.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{ConfigStorage-942ce74b.js → ConfigStorage-a343e418.js} +1 -0
- package/dist/cjs/{SnkMultiSelectionListDataSource-3c08d25c.js → IExporterProvider-597949f9.js} +94 -4
- package/dist/cjs/RecordIDUtils-3735135c.js +43 -0
- package/dist/cjs/{SnkFormConfigManager-f9dc0d28.js → SnkFormConfigManager-166cbd1f.js} +8 -7
- package/dist/cjs/{SnkMessageBuilder-66aa2557.js → SnkMessageBuilder-897ffd08.js} +9 -13
- package/dist/cjs/{pesquisa-fetcher-562d281f.js → dataunit-fetcher-688d3f05.js} +87 -180
- package/dist/cjs/{index-0922807b.js → index-1dfc7a6e.js} +5 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/pesquisa-fetcher-680e198f.js +166 -0
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/snk-actions-button_4.cjs.entry.js +5 -3
- package/dist/cjs/snk-application.cjs.entry.js +35 -12
- package/dist/cjs/snk-attach.cjs.entry.js +71 -46
- package/dist/cjs/snk-crud.cjs.entry.js +101 -10
- package/dist/cjs/snk-data-exporter.cjs.entry.js +315 -85
- package/dist/cjs/snk-data-unit-8fa7917a.js +689 -0
- package/dist/cjs/snk-data-unit.cjs.entry.js +12 -2
- package/dist/cjs/snk-detail-view.cjs.entry.js +50 -10
- package/dist/cjs/snk-filter-bar.cjs.entry.js +6 -2
- package/dist/cjs/snk-filter-modal-item.cjs.entry.js +1 -1
- package/dist/cjs/snk-form-config.cjs.entry.js +1 -1
- package/dist/cjs/snk-form-view.cjs.entry.js +67 -0
- package/dist/cjs/snk-form.cjs.entry.js +52 -7
- package/dist/cjs/snk-grid.cjs.entry.js +165 -108
- package/dist/cjs/{snk-guides-viewer-bb6087cd.js → snk-guides-viewer-9c682034.js} +43 -10
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -7
- package/dist/cjs/snk-personalized-filter.cjs.entry.js +1 -1
- package/dist/cjs/snk-simple-crud.cjs.entry.js +268 -40
- package/dist/cjs/snk-taskbar.cjs.entry.js +4 -3
- package/dist/cjs/{taskbar-elements-3ecd1278.js → taskbar-elements-9ad1f9c0.js} +3 -3
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/snk-application/snk-application.js +35 -11
- package/dist/collection/components/snk-attach/snk-attach.js +67 -44
- package/dist/collection/components/snk-crud/interfaces/PropsCustomEditor.js +1 -0
- package/dist/collection/components/snk-crud/interfaces/PropsCustomRender.js +1 -0
- package/dist/collection/components/snk-crud/snk-crud.js +305 -7
- package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +136 -2
- package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +161 -0
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +134 -7
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +97 -0
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +74 -0
- package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +54 -1
- package/dist/collection/components/snk-data-exporter/interfaces/IExporterStrategy.js +1 -0
- package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +58 -0
- package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +55 -0
- package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +59 -52
- package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +62 -0
- package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +88 -0
- package/dist/collection/components/snk-data-exporter/utils/ParserExport.js +20 -0
- package/dist/collection/components/snk-data-exporter/utils/RecordIDUtils.js +38 -0
- package/dist/collection/components/snk-data-unit/snk-data-unit.js +538 -218
- package/dist/collection/components/snk-data-unit/test/resources/metadataMock.js +24 -0
- package/dist/collection/components/snk-data-unit/test/resources/parentMetadataMock.js +18 -0
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +22 -1
- package/dist/collection/components/snk-form/snk-form.js +102 -5
- package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +7 -6
- package/dist/collection/components/snk-form-config/snk-form-config.js +1 -1
- package/dist/collection/components/snk-grid/snk-grid.js +240 -101
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +406 -20
- package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +2 -2
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +2 -1
- package/dist/collection/lib/@types/index.js +5 -0
- package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +35 -0
- package/dist/collection/lib/configs/ConfigStorage.js +1 -0
- package/dist/collection/lib/dataUnit/InMemoryLoader.js +7 -3
- package/dist/collection/lib/dataUnit/ValueFormatter.js +4 -0
- package/dist/collection/lib/dataUnit/interfaces/InMemoryLoaderConfig.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +3 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +4 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +11 -13
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +53 -4
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.js +22 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +4 -4
- package/dist/collection/lib/message/SnkMessageBuilder.js +5 -12
- package/dist/collection/lib/message/resources/snk-data-exporter.msg.js +2 -0
- package/dist/collection/lib/message/resources/snk-data-unit.msg.js +2 -1
- package/dist/components/ConfigStorage.js +1 -0
- package/dist/components/{field-search.js → IExporterProvider.js} +93 -6
- package/dist/components/ISave.js +47 -0
- package/dist/components/SnkFormConfigManager.js +7 -6
- package/dist/components/SnkMessageBuilder.js +9 -13
- package/dist/components/dataunit-fetcher.js +84 -182
- package/dist/components/index2.js +198 -33
- package/dist/components/pesquisa-fetcher.js +164 -0
- package/dist/components/snk-actions-button2.js +4 -11
- package/dist/components/snk-application2.js +31 -9
- package/dist/components/snk-attach2.js +65 -41
- package/dist/components/snk-crud.js +110 -11
- package/dist/components/snk-data-exporter2.js +309 -85
- package/dist/components/snk-data-unit2.js +485 -216
- package/dist/components/snk-detail-view2.js +96 -14
- package/dist/components/snk-expression-item2.js +1 -1
- package/dist/components/snk-filter-bar2.js +6 -1
- package/dist/components/snk-form-config2.js +1 -1
- package/dist/components/snk-form-view2.js +72 -1
- package/dist/components/snk-form.js +53 -6
- package/dist/components/snk-grid2.js +168 -106
- package/dist/components/snk-personalized-filter2.js +1 -1
- package/dist/components/snk-simple-crud2.js +263 -25
- package/dist/components/snk-taskbar2.js +6 -5
- package/dist/esm/{ConfigStorage-86187da3.js → ConfigStorage-3806514e.js} +1 -0
- package/dist/esm/{SnkMultiSelectionListDataSource-6a879955.js → IExporterProvider-63a188b6.js} +93 -5
- package/dist/esm/RecordIDUtils-87d02110.js +41 -0
- package/dist/esm/{SnkFormConfigManager-f53f9f87.js → SnkFormConfigManager-31b24066.js} +8 -7
- package/dist/esm/{SnkMessageBuilder-0a4becdd.js → SnkMessageBuilder-571462fb.js} +9 -13
- package/dist/esm/{pesquisa-fetcher-c7ce8ee7.js → dataunit-fetcher-264191b2.js} +83 -181
- package/dist/esm/{index-0ece87a6.js → index-3aa4977a.js} +6 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/pesquisa-fetcher-03c8f919.js +164 -0
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/snk-actions-button_4.entry.js +5 -3
- package/dist/esm/snk-application.entry.js +34 -11
- package/dist/esm/snk-attach.entry.js +66 -41
- package/dist/esm/snk-crud.entry.js +101 -10
- package/dist/esm/snk-data-exporter.entry.js +316 -86
- package/dist/esm/snk-data-unit-f5cbe64b.js +687 -0
- package/dist/esm/snk-data-unit.entry.js +12 -2
- package/dist/esm/snk-detail-view.entry.js +50 -10
- package/dist/esm/snk-filter-bar.entry.js +6 -2
- package/dist/esm/snk-filter-modal-item.entry.js +1 -1
- package/dist/esm/snk-form-config.entry.js +1 -1
- package/dist/esm/snk-form-view.entry.js +67 -0
- package/dist/esm/snk-form.entry.js +52 -7
- package/dist/esm/snk-grid.entry.js +163 -106
- package/dist/esm/{snk-guides-viewer-1d95ebf2.js → snk-guides-viewer-8f6960a2.js} +43 -10
- package/dist/esm/snk-guides-viewer.entry.js +9 -7
- package/dist/esm/snk-personalized-filter.entry.js +1 -1
- package/dist/esm/snk-simple-crud.entry.js +256 -28
- package/dist/esm/snk-taskbar.entry.js +4 -3
- package/dist/esm/{taskbar-elements-2473c8ac.js → taskbar-elements-d59867f1.js} +3 -3
- package/dist/sankhyablocks/p-17def7cd.js +1 -0
- package/dist/sankhyablocks/p-1db45d26.entry.js +1 -0
- package/dist/sankhyablocks/p-28ee0972.js +1 -0
- package/dist/sankhyablocks/p-2a408684.js +1 -0
- package/dist/sankhyablocks/{p-eae7a817.entry.js → p-2c68b3ae.entry.js} +1 -1
- package/dist/sankhyablocks/p-30cf616e.js +1 -0
- package/dist/sankhyablocks/p-3a212712.js +1 -0
- package/dist/sankhyablocks/p-450c60e4.entry.js +1 -0
- package/dist/sankhyablocks/{p-a1d72395.entry.js → p-47db7e88.entry.js} +1 -1
- package/dist/sankhyablocks/p-4e5e1313.entry.js +1 -0
- package/dist/sankhyablocks/{p-aff76a53.js → p-52920496.js} +1 -1
- package/dist/sankhyablocks/p-62ba211a.entry.js +1 -0
- package/dist/sankhyablocks/p-6bb2f3e9.entry.js +1 -0
- package/dist/sankhyablocks/p-7505da04.entry.js +1 -0
- package/dist/sankhyablocks/p-7619bdb1.entry.js +11 -0
- package/dist/sankhyablocks/p-7a85fd49.entry.js +1 -0
- package/dist/sankhyablocks/{p-ae4fc9a9.js → p-7e7a7473.js} +1 -1
- package/dist/sankhyablocks/p-7ef9c55c.js +1 -0
- package/dist/sankhyablocks/p-80042dc6.entry.js +1 -0
- package/dist/sankhyablocks/p-8c59edd7.entry.js +1 -0
- package/dist/sankhyablocks/p-9606509c.entry.js +1 -0
- package/dist/sankhyablocks/p-9863d682.js +1 -0
- package/dist/sankhyablocks/p-ae93d46a.entry.js +1 -0
- package/dist/sankhyablocks/p-af8efd95.js +6 -0
- package/dist/sankhyablocks/p-d6e26ea8.entry.js +1 -0
- package/dist/sankhyablocks/p-f2809746.entry.js +1 -0
- package/dist/sankhyablocks/p-f4450320.entry.js +1 -0
- package/dist/sankhyablocks/p-fe79f83a.js +60 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-application/snk-application.d.ts +7 -3
- package/dist/types/components/snk-attach/snk-attach.d.ts +11 -9
- package/dist/types/components/snk-crud/interfaces/PropsCustomEditor.d.ts +4 -0
- package/dist/types/components/snk-crud/interfaces/PropsCustomRender.d.ts +4 -0
- package/dist/types/components/snk-crud/snk-crud.d.ts +45 -1
- package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +23 -0
- package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +28 -3
- package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +24 -0
- package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +14 -0
- package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +12 -0
- package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +24 -4
- package/dist/types/components/snk-data-exporter/interfaces/IExporterStrategy.d.ts +5 -0
- package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +17 -0
- package/dist/types/components/snk-data-exporter/providers/ServerSideExporterProvider.d.ts +17 -0
- package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +4 -1
- package/dist/types/components/snk-data-exporter/structure/ItemBuilder.d.ts +21 -0
- package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +77 -0
- package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +4 -0
- package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +3 -0
- package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +66 -2
- package/dist/types/components/snk-data-unit/test/resources/metadataMock.d.ts +3 -0
- package/dist/types/components/snk-data-unit/test/resources/parentMetadataMock.d.ts +3 -0
- package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +4 -0
- package/dist/types/components/snk-form/snk-form.d.ts +14 -0
- package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +2 -2
- package/dist/types/components/snk-grid/snk-grid.d.ts +46 -6
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +62 -4
- package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +1 -1
- package/dist/types/components.d.ts +261 -4
- package/dist/types/lib/@types/index.d.ts +5 -0
- package/dist/types/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.d.ts +11 -0
- package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +2 -1
- package/dist/types/lib/dataUnit/ValueFormatter.d.ts +2 -0
- package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +3 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +2 -1
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.d.ts +10 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.d.ts +7 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +6 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.d.ts +20 -0
- package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IExporterColumnMetadata.d.ts +3 -0
- package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +2 -1
- package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +1 -0
- package/package.json +1 -1
- package/dist/cjs/snk-data-unit-41c29713.js +0 -462
- package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/index.js +0 -34
- package/dist/components/index3.js +0 -199
- package/dist/esm/snk-data-unit-de1d140d.js +0 -460
- package/dist/sankhyablocks/p-032fe52e.js +0 -1
- package/dist/sankhyablocks/p-03dcc5ff.entry.js +0 -1
- package/dist/sankhyablocks/p-0594db5a.entry.js +0 -1
- package/dist/sankhyablocks/p-06e13db2.js +0 -1
- package/dist/sankhyablocks/p-07a61550.entry.js +0 -1
- package/dist/sankhyablocks/p-1403a4b6.entry.js +0 -1
- package/dist/sankhyablocks/p-14a08904.entry.js +0 -1
- package/dist/sankhyablocks/p-15802c59.entry.js +0 -1
- package/dist/sankhyablocks/p-235dc7b1.js +0 -65
- package/dist/sankhyablocks/p-32556aa6.js +0 -1
- package/dist/sankhyablocks/p-38289a55.js +0 -1
- package/dist/sankhyablocks/p-3c632d48.js +0 -1
- package/dist/sankhyablocks/p-3f833983.entry.js +0 -1
- package/dist/sankhyablocks/p-52c8e589.js +0 -1
- package/dist/sankhyablocks/p-5e1502b6.entry.js +0 -11
- package/dist/sankhyablocks/p-74d349c3.entry.js +0 -1
- package/dist/sankhyablocks/p-93167e28.entry.js +0 -1
- package/dist/sankhyablocks/p-add17f6a.entry.js +0 -1
- package/dist/sankhyablocks/p-bd47dd16.entry.js +0 -1
- package/dist/sankhyablocks/p-c1f88236.entry.js +0 -1
- package/dist/sankhyablocks/p-ccdd5332.entry.js +0 -1
- package/dist/sankhyablocks/p-ee9536bc.entry.js +0 -1
- package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/index.d.ts +0 -3
@@ -30,6 +30,7 @@ export class SnkApplication {
|
|
30
30
|
this._duPromises = new Map();
|
31
31
|
this._requestListener = new RequestListenerLoadingBar();
|
32
32
|
this._pendingActions = new Map;
|
33
|
+
this._loadPkParameter = null;
|
33
34
|
this._isLoadedByPk = false;
|
34
35
|
this.messagesBuilder = undefined;
|
35
36
|
this.configName = undefined;
|
@@ -87,6 +88,12 @@ export class SnkApplication {
|
|
87
88
|
});
|
88
89
|
}
|
89
90
|
}
|
91
|
+
watchPropHandler(newValue, _) {
|
92
|
+
if (newValue && this._loadPkParameter) {
|
93
|
+
this.loadByPK(this._loadPkParameter.pk, this._loadPkParameter.redirect);
|
94
|
+
this._loadPkParameter = null;
|
95
|
+
}
|
96
|
+
}
|
90
97
|
/**
|
91
98
|
* Obtém o controlador de teclado.
|
92
99
|
*
|
@@ -361,12 +368,7 @@ export class SnkApplication {
|
|
361
368
|
if (!waitingDu) {
|
362
369
|
const dataUnit = this.dataUnitFetcher.getDataUnit(entityName, resourceID, parentDataUnit, configName);
|
363
370
|
dataUnit.loadMetadata().then(() => {
|
364
|
-
|
365
|
-
this.updateDataunitCache(undefined, dataUnitName, dataUnit);
|
366
|
-
}
|
367
|
-
while (duPromisses.length > 0) {
|
368
|
-
duPromisses.pop().resolve(dataUnit);
|
369
|
-
}
|
371
|
+
this.processResolveDataUnit(dataUnit, dataUnitName, duPromisses);
|
370
372
|
}).catch(reason => {
|
371
373
|
while (duPromisses.length > 0) {
|
372
374
|
duPromisses.pop().reject(reason);
|
@@ -375,6 +377,14 @@ export class SnkApplication {
|
|
375
377
|
}
|
376
378
|
});
|
377
379
|
}
|
380
|
+
processResolveDataUnit(dataUnit, dataUnitName, duPromisses) {
|
381
|
+
if (dataUnitName) {
|
382
|
+
this.updateDataunitCache(undefined, dataUnitName, dataUnit);
|
383
|
+
}
|
384
|
+
while (duPromisses.length > 0) {
|
385
|
+
duPromisses.pop().resolve(dataUnit);
|
386
|
+
}
|
387
|
+
}
|
378
388
|
/**
|
379
389
|
* Atualiza o cache de dataunits da aplicação.
|
380
390
|
* @param oldName - Nome do dataunit que está em cache.
|
@@ -790,15 +800,23 @@ export class SnkApplication {
|
|
790
800
|
return;
|
791
801
|
const resourceIDfromUrl = this.getResourceIdFromToken();
|
792
802
|
const pkObject = UrlUtils.getPkObjectFromUrlToken(top.window.location.hash);
|
793
|
-
|
803
|
+
const redirectFrom = window["redirectFrom"];
|
804
|
+
if (pkObject === undefined) {
|
794
805
|
return;
|
806
|
+
}
|
807
|
+
if (!redirectFrom || redirectFrom.split("_")[0].indexOf(resourceIDfromUrl.split("_")[0]) === -1) {
|
808
|
+
if (resourceIDfromUrl !== this.applicationResourceID) {
|
809
|
+
return;
|
810
|
+
}
|
811
|
+
}
|
795
812
|
const pkParam = { pk: pkObject };
|
796
813
|
this._isLoadedByPk = true;
|
797
814
|
if (this.loadByPK) {
|
798
|
-
this.loadByPK(pkParam);
|
815
|
+
this.loadByPK(pkParam, redirectFrom);
|
799
816
|
this._currentPkParameter = pkHash;
|
800
817
|
return;
|
801
818
|
}
|
819
|
+
this._loadPkParameter = { pk: pkParam, redirect: redirectFrom };
|
802
820
|
this.defaultLoadByPK(pkParam, pkHash);
|
803
821
|
}
|
804
822
|
getResourceIdFromToken() {
|
@@ -1077,10 +1095,10 @@ export class SnkApplication {
|
|
1077
1095
|
"type": "unknown",
|
1078
1096
|
"mutable": false,
|
1079
1097
|
"complexType": {
|
1080
|
-
"original": "
|
1081
|
-
"resolved": "(objPK: { pk: Record<string, any>; }) => void",
|
1098
|
+
"original": "LoadByPkHandler",
|
1099
|
+
"resolved": "(objPK: { pk: Record<string, any>; }, redirectFrom?: string) => void",
|
1082
1100
|
"references": {
|
1083
|
-
"
|
1101
|
+
"LoadByPkHandler": {
|
1084
1102
|
"location": "global"
|
1085
1103
|
}
|
1086
1104
|
}
|
@@ -2488,6 +2506,12 @@ export class SnkApplication {
|
|
2488
2506
|
};
|
2489
2507
|
}
|
2490
2508
|
static get elementRef() { return "_element"; }
|
2509
|
+
static get watchers() {
|
2510
|
+
return [{
|
2511
|
+
"propName": "loadByPK",
|
2512
|
+
"methodName": "watchPropHandler"
|
2513
|
+
}];
|
2514
|
+
}
|
2491
2515
|
}
|
2492
2516
|
class RequestListenerLoadingBar {
|
2493
2517
|
constructor() {
|
@@ -1,9 +1,9 @@
|
|
1
|
-
import { h } from
|
2
|
-
import {
|
3
|
-
import { AnexoSistemaFetcher, AttachFetcher, DataUnitFetcher } from
|
4
|
-
import { VIEW_MODE } from
|
5
|
-
import { AnexoSistemaDataUnitFactory, AttachFetcherDataUnitFactory, buildTaskBarManager,
|
6
|
-
import InMemoryLoader from
|
1
|
+
import { h } from '@stencil/core';
|
2
|
+
import { Action, ApplicationContext, DataUnit } from '@sankhyalabs/core';
|
3
|
+
import { AnexoSistemaFetcher, AttachFetcher, DataUnitFetcher } from '../../lib';
|
4
|
+
import { VIEW_MODE } from '../../lib/utils/constants';
|
5
|
+
import { anexoSistemaCrudConfig, AnexoSistemaDataUnitFactory, attachCrudConfig, AttachFetcherDataUnitFactory, buildTaskBarManager, } from './structure';
|
6
|
+
import InMemoryLoader from '../../lib/dataUnit/InMemoryLoader';
|
7
7
|
const RESOURCE_ID = 'AnexoSistema';
|
8
8
|
const DATA_UNIT_NAME = 'br.com.sankhya.core.v3.anexoSistema';
|
9
9
|
export class SnkAttach {
|
@@ -40,26 +40,37 @@ export class SnkAttach {
|
|
40
40
|
this._currentDataUnit = undefined;
|
41
41
|
this.crudConfig = undefined;
|
42
42
|
}
|
43
|
-
registerKeyWatcher(newRegisterKey, oldRegisterKey) {
|
44
|
-
var _a
|
45
|
-
if (
|
43
|
+
async registerKeyWatcher(newRegisterKey, oldRegisterKey) {
|
44
|
+
var _a;
|
45
|
+
if (this._currentDataUnit == null) {
|
46
46
|
this.loadAttachmentDataUnit();
|
47
47
|
}
|
48
48
|
if (oldRegisterKey !== newRegisterKey) {
|
49
|
-
this.
|
50
|
-
if (this.fetcherType === "AnexoSistema") {
|
51
|
-
this._currentFetcher = new AnexoSistemaFetcher(this.entityName, this.registerKey, (_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.name);
|
52
|
-
(_b = this._currentDataUnitBuilder) === null || _b === void 0 ? void 0 : _b.initLoaders(this._currentDataUnit, this._currentFetcher, this.returnToGridMode.bind(this));
|
53
|
-
return (_c = this._currentDataUnit) === null || _c === void 0 ? void 0 : _c.loadData();
|
54
|
-
}
|
55
|
-
if (this.fetcherType === "Attach") {
|
56
|
-
const hasMoreOneItem = ((_d = this.registerKey) === null || _d === void 0 ? void 0 : _d.split("_").length) > 1;
|
57
|
-
if (hasMoreOneItem)
|
58
|
-
return;
|
59
|
-
}
|
60
|
-
return (_f = (_e = this._currentDataUnit) === null || _e === void 0 ? void 0 : _e.loadMetadata()) === null || _f === void 0 ? void 0 : _f.then(this._currentDataUnit.loadData.bind(undefined, undefined, true, this.registerKey));
|
49
|
+
await ((_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.loadData());
|
61
50
|
}
|
62
51
|
}
|
52
|
+
async initAttach() {
|
53
|
+
var _a, _b, _c, _d, _e, _f;
|
54
|
+
if (!this.fetcherType && !this.registerKey)
|
55
|
+
return;
|
56
|
+
if (!this.fetcherType) {
|
57
|
+
this.fetcherType = "AnexoSistema";
|
58
|
+
}
|
59
|
+
this.returnToGridMode();
|
60
|
+
if (this.fetcherType === "AnexoSistema") {
|
61
|
+
this._currentFetcher = new AnexoSistemaFetcher(this.entityName, this.registerKey, (_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.name);
|
62
|
+
(_b = this._currentDataUnitBuilder) === null || _b === void 0 ? void 0 : _b.initLoaders(this._currentDataUnit, this._currentFetcher, this.returnToGridMode.bind(this));
|
63
|
+
await ((_c = this._currentDataUnit) === null || _c === void 0 ? void 0 : _c.loadData());
|
64
|
+
return;
|
65
|
+
}
|
66
|
+
if (this.fetcherType === "Attach") {
|
67
|
+
const hasMoreOneItem = ((_d = this.registerKey) === null || _d === void 0 ? void 0 : _d.split("_").length) > 1;
|
68
|
+
if (hasMoreOneItem)
|
69
|
+
return;
|
70
|
+
}
|
71
|
+
await ((_e = this._currentDataUnit) === null || _e === void 0 ? void 0 : _e.loadMetadata());
|
72
|
+
await ((_f = this._currentDataUnit) === null || _f === void 0 ? void 0 : _f.loadData(undefined, undefined, true, this.registerKey));
|
73
|
+
}
|
63
74
|
/**
|
64
75
|
* Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
|
65
76
|
* através de um pequeno modulo na estrutura da aplicação:
|
@@ -97,14 +108,14 @@ export class SnkAttach {
|
|
97
108
|
if (this._crudElement)
|
98
109
|
this._crudElement.goToView(VIEW_MODE.GRID);
|
99
110
|
}
|
100
|
-
loadAttachmentDataUnit() {
|
111
|
+
async loadAttachmentDataUnit() {
|
101
112
|
try {
|
102
113
|
switch (this.fetcherType) {
|
103
114
|
case "AnexoSistema":
|
104
|
-
this.loadAnexoSistema();
|
115
|
+
await this.loadAnexoSistema();
|
105
116
|
break;
|
106
117
|
case "Attach":
|
107
|
-
this.loadAttach();
|
118
|
+
await this.loadAttach();
|
108
119
|
break;
|
109
120
|
default:
|
110
121
|
this._currentFetcher = this.fetcher;
|
@@ -116,28 +127,29 @@ export class SnkAttach {
|
|
116
127
|
throw new Error('There was an error while creating the data unit');
|
117
128
|
}
|
118
129
|
}
|
119
|
-
loadAnexoSistema() {
|
120
|
-
var _a;
|
121
|
-
this._currentDataUnit =
|
130
|
+
async loadAnexoSistema() {
|
131
|
+
var _a, _b, _c;
|
132
|
+
this._currentDataUnit = new DataUnitFetcher().getDataUnit(RESOURCE_ID, DATA_UNIT_NAME);
|
122
133
|
this._currentFetcher = new AnexoSistemaFetcher(this.entityName, this.registerKey, (_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.name);
|
123
134
|
if (!this._currentDataUnit.metadata) {
|
124
|
-
this._currentDataUnit
|
125
|
-
|
126
|
-
.then(() => this.crudConfig = Object.assign({}, anexoSistemaCrudConfig));
|
135
|
+
await ((_b = this._currentDataUnit) === null || _b === void 0 ? void 0 : _b.loadMetadata());
|
136
|
+
this.crudConfig = Object.assign({}, anexoSistemaCrudConfig);
|
127
137
|
}
|
128
|
-
this.
|
138
|
+
this.initDataUnitLoaders();
|
129
139
|
this._currentDataUnit.addFilterProvider({
|
130
140
|
getFilter: () => this._currentDataUnitBuilder.getFilters(this.registerKey)
|
131
141
|
});
|
132
142
|
this._currentDataUnit.addInterceptor({
|
133
143
|
interceptAction: (action) => this._currentDataUnitBuilder.getInterceptions(this._currentDataUnit, action, this._crudElement)
|
134
144
|
});
|
135
|
-
this._currentDataUnit.loadData()
|
145
|
+
await ((_c = this._currentDataUnit) === null || _c === void 0 ? void 0 : _c.loadData());
|
146
|
+
this.disableEditFieldsNotInForm();
|
136
147
|
}
|
137
|
-
loadAttach() {
|
138
|
-
var _a, _b
|
148
|
+
async loadAttach() {
|
149
|
+
var _a, _b;
|
139
150
|
this._currentFetcher = new AttachFetcher();
|
140
151
|
this._currentDataUnit = new DataUnit(InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME);
|
152
|
+
this.initDataUnitLoaders();
|
141
153
|
this._currentDataUnit.addInterceptor({
|
142
154
|
interceptAction: (action) => {
|
143
155
|
var _a;
|
@@ -148,16 +160,26 @@ export class SnkAttach {
|
|
148
160
|
return this._currentDataUnitBuilder.getInterceptions(this._currentDataUnit, action, this._crudElement);
|
149
161
|
}
|
150
162
|
});
|
151
|
-
this._currentDataUnitBuilder = new AttachFetcherDataUnitFactory(this.getMessage.bind(this));
|
152
|
-
(_a = this._currentDataUnitBuilder) === null || _a === void 0 ? void 0 : _a.initLoaders(this._currentDataUnit, this._currentFetcher, async () => {
|
153
|
-
this.returnToGridMode();
|
154
|
-
await this._currentDataUnit.loadData(undefined, undefined, true, this.registerKey);
|
155
|
-
});
|
156
163
|
if (!this._currentDataUnit.metadata) {
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
164
|
+
await ((_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.loadMetadata());
|
165
|
+
this.crudConfig = Object.assign({}, attachCrudConfig);
|
166
|
+
await ((_b = this._currentDataUnit) === null || _b === void 0 ? void 0 : _b.loadData(undefined, undefined, true, this.registerKey));
|
167
|
+
this.disableEditFieldsNotInForm();
|
168
|
+
}
|
169
|
+
}
|
170
|
+
initDataUnitLoaders() {
|
171
|
+
var _a, _b, _c;
|
172
|
+
if (this.fetcherType === "AnexoSistema") {
|
173
|
+
this._currentFetcher = new AnexoSistemaFetcher(this.entityName, this.registerKey, (_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.name);
|
174
|
+
this._currentDataUnitBuilder = new AnexoSistemaDataUnitFactory(this.entityName, this.getMessage.bind(this));
|
175
|
+
(_b = this._currentDataUnitBuilder) === null || _b === void 0 ? void 0 : _b.initLoaders(this._currentDataUnit, this._currentFetcher, this.returnToGridMode.bind(this));
|
176
|
+
}
|
177
|
+
if (this.fetcherType === "Attach") {
|
178
|
+
this._currentFetcher = new AttachFetcher();
|
179
|
+
this._currentDataUnitBuilder = new AttachFetcherDataUnitFactory(this.getMessage.bind(this));
|
180
|
+
(_c = this._currentDataUnitBuilder) === null || _c === void 0 ? void 0 : _c.initLoaders(this._currentDataUnit, this._currentFetcher, async () => {
|
181
|
+
this.returnToGridMode();
|
182
|
+
await this._currentDataUnit.loadData(undefined, undefined, true, this.registerKey);
|
161
183
|
});
|
162
184
|
}
|
163
185
|
}
|
@@ -171,8 +193,9 @@ export class SnkAttach {
|
|
171
193
|
}
|
172
194
|
});
|
173
195
|
}
|
174
|
-
componentWillLoad() {
|
196
|
+
async componentWillLoad() {
|
175
197
|
this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
198
|
+
await this.initAttach();
|
176
199
|
}
|
177
200
|
componentWillRender() {
|
178
201
|
if (!this.fetcherType) {
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -13,6 +13,8 @@ export class SnkCrud {
|
|
13
13
|
constructor() {
|
14
14
|
this._keyDownHandler = async (event) => this.keyDownListener(event);
|
15
15
|
this._viewHistory = [];
|
16
|
+
this._customEditors = new Map();
|
17
|
+
this._customRenders = new Map();
|
16
18
|
this._dataUnit = undefined;
|
17
19
|
this._dataState = undefined;
|
18
20
|
this.attachmentRegisterKey = undefined;
|
@@ -35,6 +37,10 @@ export class SnkCrud {
|
|
35
37
|
this.filterBarLegacyConfigName = undefined;
|
36
38
|
this.formLegacyConfigName = undefined;
|
37
39
|
this.disablePersonalizedFilter = undefined;
|
40
|
+
this.autoLoad = undefined;
|
41
|
+
this.autoFocus = true;
|
42
|
+
this.domainMessagesBuilder = undefined;
|
43
|
+
this.setCustomFormTitle = undefined;
|
38
44
|
this.customContainerId = `SNK-CRUD-CUSTOM-CONTAINER-${StringUtils.generateUUID()}`;
|
39
45
|
}
|
40
46
|
/**
|
@@ -70,6 +76,49 @@ export class SnkCrud {
|
|
70
76
|
async getFilterBar() {
|
71
77
|
return await this._snkGrid.getFilterBar();
|
72
78
|
}
|
79
|
+
/**
|
80
|
+
* Registra um editor customizado para campos da grade e formulário.
|
81
|
+
*/
|
82
|
+
async addCustomEditor(fieldName, customEditor) {
|
83
|
+
if (this._guidesViewer && this._snkGrid) {
|
84
|
+
this._guidesViewer.addCustomEditor(fieldName, customEditor);
|
85
|
+
this._snkGrid.addCustomEditor(fieldName, customEditor);
|
86
|
+
return;
|
87
|
+
}
|
88
|
+
const newCustomEditors = new Map(this._customEditors);
|
89
|
+
newCustomEditors.set(fieldName, customEditor);
|
90
|
+
this._customEditors = newCustomEditors;
|
91
|
+
}
|
92
|
+
/**
|
93
|
+
* Registra um render customizado para colunas da grid.
|
94
|
+
*/
|
95
|
+
async addGridCustomRender(fieldName, customRender) {
|
96
|
+
if (this._snkGrid) {
|
97
|
+
this._snkGrid.addGridCustomRender(fieldName, customRender);
|
98
|
+
return;
|
99
|
+
}
|
100
|
+
const newCustomRenders = new Map(this._customRenders);
|
101
|
+
newCustomRenders.set(fieldName, customRender);
|
102
|
+
this._customRenders = newCustomRenders;
|
103
|
+
}
|
104
|
+
/**
|
105
|
+
* Registra um formatador de valores para uma coluna da grid.
|
106
|
+
*/
|
107
|
+
async addCustomValueFormatter(columnName, customFormatter) {
|
108
|
+
this._snkGrid.addCustomValueFormatter(columnName, customFormatter);
|
109
|
+
}
|
110
|
+
/**
|
111
|
+
* Remove o formatador de valores de uma coluna da grid.
|
112
|
+
*/
|
113
|
+
async removeCustomValueFormatter(columnName) {
|
114
|
+
this._snkGrid.removeCustomValueFormatter(columnName);
|
115
|
+
}
|
116
|
+
/**
|
117
|
+
* Altera/adiciona uma propriedade nos metadados do campo.
|
118
|
+
*/
|
119
|
+
async setFieldProp(fieldName, propName, value) {
|
120
|
+
await this._guidesViewer.setFieldProp(fieldName, propName, value);
|
121
|
+
}
|
73
122
|
currentViewModeWatcher(currentView) {
|
74
123
|
this._viewHistory = [...this._viewHistory.slice(-1), currentView];
|
75
124
|
}
|
@@ -100,6 +149,7 @@ export class SnkCrud {
|
|
100
149
|
else if (viewMode === VIEW_MODE.FORM) {
|
101
150
|
this._guidesViewer.setFocus();
|
102
151
|
}
|
152
|
+
this.viewModeChanged.emit(viewMode);
|
103
153
|
}
|
104
154
|
openConfig(viewMode) {
|
105
155
|
this._snkConfigurator.close();
|
@@ -129,6 +179,29 @@ export class SnkCrud {
|
|
129
179
|
const joinedPrimaryKeys = recordCriteria.map(({ value }) => value).join('_');
|
130
180
|
return joinedPrimaryKeys;
|
131
181
|
}
|
182
|
+
setCustomRenders() {
|
183
|
+
if (!this._snkGrid) {
|
184
|
+
return;
|
185
|
+
}
|
186
|
+
for (const [fieldName, customRender] of this._customRenders) {
|
187
|
+
this._snkGrid.addGridCustomRender(fieldName, customRender);
|
188
|
+
this._customRenders.delete(fieldName);
|
189
|
+
}
|
190
|
+
}
|
191
|
+
setCustomEditors() {
|
192
|
+
if (!this._snkGrid || !this._guidesViewer) {
|
193
|
+
return;
|
194
|
+
}
|
195
|
+
for (const [fieldName, customEditor] of this._customEditors) {
|
196
|
+
this._guidesViewer.addCustomEditor(fieldName, customEditor);
|
197
|
+
this._snkGrid.addCustomEditor(fieldName, customEditor);
|
198
|
+
this._customEditors.delete(fieldName);
|
199
|
+
}
|
200
|
+
}
|
201
|
+
componentDidRender() {
|
202
|
+
this.setCustomRenders();
|
203
|
+
this.setCustomEditors();
|
204
|
+
}
|
132
205
|
componentWillLoad() {
|
133
206
|
this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
134
207
|
let parent = this._element.parentElement;
|
@@ -140,6 +213,7 @@ export class SnkCrud {
|
|
140
213
|
this._snkDataUnit = parent;
|
141
214
|
this._snkDataUnit.addEventListener("insertionMode", () => this.insertionModeHandler());
|
142
215
|
this._snkDataUnit.addEventListener("cancelEdition", () => this.cancelHandler());
|
216
|
+
this._snkDataUnit.domainMessagesBuilder = this.domainMessagesBuilder;
|
143
217
|
this._dataUnit = this._snkDataUnit.dataUnit;
|
144
218
|
this._dataState = this._snkDataUnit.dataState;
|
145
219
|
if (!this._dataUnit) {
|
@@ -151,12 +225,7 @@ export class SnkCrud {
|
|
151
225
|
else {
|
152
226
|
this.initDataUnit();
|
153
227
|
}
|
154
|
-
this._snkDataUnit.addEventListener("dataStateChange",
|
155
|
-
this._dataState = dataState;
|
156
|
-
if (dataState.selectedRecord !== undefined) {
|
157
|
-
this.attachmentRegisterKey = await this.getAttachmentRegisterKey();
|
158
|
-
}
|
159
|
-
});
|
228
|
+
this._snkDataUnit.addEventListener("dataStateChange", this.handleDataStateChange.bind(this));
|
160
229
|
break;
|
161
230
|
}
|
162
231
|
parent = parent.parentElement;
|
@@ -172,6 +241,26 @@ export class SnkCrud {
|
|
172
241
|
this.removeShortcuts();
|
173
242
|
window.removeEventListener("keydown", this._keyDownHandler);
|
174
243
|
}
|
244
|
+
async handleDataStateChange(evt) {
|
245
|
+
var _a;
|
246
|
+
this._dataState = evt.detail;
|
247
|
+
if (this._dataState.selectedRecord !== undefined) {
|
248
|
+
this.attachmentRegisterKey = await this.getAttachmentRegisterKey();
|
249
|
+
}
|
250
|
+
const fieldsWithRmPrecision = await this._snkDataUnit.getFieldsWithRmPrecision();
|
251
|
+
for (const field of fieldsWithRmPrecision || []) {
|
252
|
+
if (!field) {
|
253
|
+
continue;
|
254
|
+
}
|
255
|
+
const rmPrecision = (_a = this._dataState.rowMetadata) === null || _a === void 0 ? void 0 : _a.getProp('rm_precision', field);
|
256
|
+
if (!rmPrecision && rmPrecision !== 0) {
|
257
|
+
continue;
|
258
|
+
}
|
259
|
+
await this.setFieldProp(field, 'precision', rmPrecision);
|
260
|
+
await this.setFieldProp(field, 'prettyPrecision', rmPrecision);
|
261
|
+
}
|
262
|
+
;
|
263
|
+
}
|
175
264
|
async initKeyboardManager() {
|
176
265
|
var _a;
|
177
266
|
const keyboardManager = await ((_a = this._application) === null || _a === void 0 ? void 0 : _a.getKeyboardManager());
|
@@ -291,7 +380,7 @@ export class SnkCrud {
|
|
291
380
|
return;
|
292
381
|
}
|
293
382
|
this._snkDataUnit.ignoreSaveMessage = this._currentViewMode === VIEW_MODE.GRID;
|
294
|
-
return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, filterBarTitle: this.filterBarTitle, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, recordsValidator: this.recordsValidator, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID, disablePersonalizedFilter: this.disablePersonalizedFilter, gridLegacyConfigName: this.gridLegacyConfigName, filterBarLegacyConfigName: this.filterBarLegacyConfigName }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, recordsValidator: this.recordsValidator, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId, formLegacyConfigName: this.formLegacyConfigName }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
|
383
|
+
return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, filterBarTitle: this.filterBarTitle, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, recordsValidator: this.recordsValidator, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID, disablePersonalizedFilter: this.disablePersonalizedFilter, gridLegacyConfigName: this.gridLegacyConfigName, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad, autoFocus: this.autoFocus }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, recordsValidator: this.recordsValidator, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId, formLegacyConfigName: this.formLegacyConfigName, getCustomTitle: this.setCustomFormTitle }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
|
295
384
|
}
|
296
385
|
static get is() { return "snk-crud"; }
|
297
386
|
static get encapsulation() { return "scoped"; }
|
@@ -612,6 +701,73 @@ export class SnkCrud {
|
|
612
701
|
},
|
613
702
|
"attribute": "disable-personalized-filter",
|
614
703
|
"reflect": false
|
704
|
+
},
|
705
|
+
"autoLoad": {
|
706
|
+
"type": "boolean",
|
707
|
+
"mutable": false,
|
708
|
+
"complexType": {
|
709
|
+
"original": "boolean",
|
710
|
+
"resolved": "boolean",
|
711
|
+
"references": {}
|
712
|
+
},
|
713
|
+
"required": false,
|
714
|
+
"optional": true,
|
715
|
+
"docs": {
|
716
|
+
"tags": [],
|
717
|
+
"text": "Define se a carga dos dados ser\u00E1 feita assim que o componente for carregado."
|
718
|
+
},
|
719
|
+
"attribute": "auto-load",
|
720
|
+
"reflect": false
|
721
|
+
},
|
722
|
+
"autoFocus": {
|
723
|
+
"type": "boolean",
|
724
|
+
"mutable": false,
|
725
|
+
"complexType": {
|
726
|
+
"original": "boolean",
|
727
|
+
"resolved": "boolean",
|
728
|
+
"references": {}
|
729
|
+
},
|
730
|
+
"required": false,
|
731
|
+
"optional": true,
|
732
|
+
"docs": {
|
733
|
+
"tags": [],
|
734
|
+
"text": "Define se a grid ser\u00E1 focada ao ser carregada."
|
735
|
+
},
|
736
|
+
"attribute": "auto-focus",
|
737
|
+
"reflect": false,
|
738
|
+
"defaultValue": "true"
|
739
|
+
},
|
740
|
+
"domainMessagesBuilder": {
|
741
|
+
"type": "string",
|
742
|
+
"mutable": false,
|
743
|
+
"complexType": {
|
744
|
+
"original": "string",
|
745
|
+
"resolved": "string",
|
746
|
+
"references": {}
|
747
|
+
},
|
748
|
+
"required": false,
|
749
|
+
"optional": false,
|
750
|
+
"docs": {
|
751
|
+
"tags": [],
|
752
|
+
"text": "Define a chave customizada para sobrescrever as mensagens (N\u00E3o pegando pela entidade)"
|
753
|
+
},
|
754
|
+
"attribute": "domain-messages-builder",
|
755
|
+
"reflect": false
|
756
|
+
},
|
757
|
+
"setCustomFormTitle": {
|
758
|
+
"type": "unknown",
|
759
|
+
"mutable": false,
|
760
|
+
"complexType": {
|
761
|
+
"original": "() => string",
|
762
|
+
"resolved": "() => string",
|
763
|
+
"references": {}
|
764
|
+
},
|
765
|
+
"required": false,
|
766
|
+
"optional": false,
|
767
|
+
"docs": {
|
768
|
+
"tags": [],
|
769
|
+
"text": "Define uma fun\u00E7\u00E3o para configurar um t\u00EDtulo cusotmizado no modo formul\u00E1rio."
|
770
|
+
}
|
615
771
|
}
|
616
772
|
};
|
617
773
|
}
|
@@ -694,6 +850,26 @@ export class SnkCrud {
|
|
694
850
|
}
|
695
851
|
}
|
696
852
|
}
|
853
|
+
}, {
|
854
|
+
"method": "viewModeChanged",
|
855
|
+
"name": "viewModeChanged",
|
856
|
+
"bubbles": true,
|
857
|
+
"cancelable": true,
|
858
|
+
"composed": true,
|
859
|
+
"docs": {
|
860
|
+
"tags": [],
|
861
|
+
"text": ""
|
862
|
+
},
|
863
|
+
"complexType": {
|
864
|
+
"original": "VIEW_MODE",
|
865
|
+
"resolved": "VIEW_MODE.ATTACHMENT | VIEW_MODE.FORM | VIEW_MODE.GRID",
|
866
|
+
"references": {
|
867
|
+
"VIEW_MODE": {
|
868
|
+
"location": "import",
|
869
|
+
"path": "../../lib/utils/constants"
|
870
|
+
}
|
871
|
+
}
|
872
|
+
}
|
697
873
|
}];
|
698
874
|
}
|
699
875
|
static get methods() {
|
@@ -783,6 +959,128 @@ export class SnkCrud {
|
|
783
959
|
"text": "Retorna o elemento da filter-bar da grade.",
|
784
960
|
"tags": []
|
785
961
|
}
|
962
|
+
},
|
963
|
+
"addCustomEditor": {
|
964
|
+
"complexType": {
|
965
|
+
"signature": "(fieldName: string, customEditor: ICustomEditor) => Promise<void>",
|
966
|
+
"parameters": [{
|
967
|
+
"tags": [],
|
968
|
+
"text": ""
|
969
|
+
}, {
|
970
|
+
"tags": [],
|
971
|
+
"text": ""
|
972
|
+
}],
|
973
|
+
"references": {
|
974
|
+
"Promise": {
|
975
|
+
"location": "global"
|
976
|
+
},
|
977
|
+
"ICustomEditor": {
|
978
|
+
"location": "import",
|
979
|
+
"path": "@sankhyalabs/ezui/dist/types/utils"
|
980
|
+
}
|
981
|
+
},
|
982
|
+
"return": "Promise<void>"
|
983
|
+
},
|
984
|
+
"docs": {
|
985
|
+
"text": "Registra um editor customizado para campos da grade e formul\u00E1rio.",
|
986
|
+
"tags": []
|
987
|
+
}
|
988
|
+
},
|
989
|
+
"addGridCustomRender": {
|
990
|
+
"complexType": {
|
991
|
+
"signature": "(fieldName: string, customRender: ICustomRender) => Promise<void>",
|
992
|
+
"parameters": [{
|
993
|
+
"tags": [],
|
994
|
+
"text": ""
|
995
|
+
}, {
|
996
|
+
"tags": [],
|
997
|
+
"text": ""
|
998
|
+
}],
|
999
|
+
"references": {
|
1000
|
+
"Promise": {
|
1001
|
+
"location": "global"
|
1002
|
+
},
|
1003
|
+
"ICustomRender": {
|
1004
|
+
"location": "import",
|
1005
|
+
"path": "@sankhyalabs/ezui/dist/types/utils"
|
1006
|
+
}
|
1007
|
+
},
|
1008
|
+
"return": "Promise<void>"
|
1009
|
+
},
|
1010
|
+
"docs": {
|
1011
|
+
"text": "Registra um render customizado para colunas da grid.",
|
1012
|
+
"tags": []
|
1013
|
+
}
|
1014
|
+
},
|
1015
|
+
"addCustomValueFormatter": {
|
1016
|
+
"complexType": {
|
1017
|
+
"signature": "(columnName: string, customFormatter: ICustomFormatter) => Promise<void>",
|
1018
|
+
"parameters": [{
|
1019
|
+
"tags": [],
|
1020
|
+
"text": ""
|
1021
|
+
}, {
|
1022
|
+
"tags": [],
|
1023
|
+
"text": ""
|
1024
|
+
}],
|
1025
|
+
"references": {
|
1026
|
+
"Promise": {
|
1027
|
+
"location": "global"
|
1028
|
+
},
|
1029
|
+
"ICustomFormatter": {
|
1030
|
+
"location": "import",
|
1031
|
+
"path": "@sankhyalabs/ezui/dist/types/components/ez-grid/interfaces"
|
1032
|
+
}
|
1033
|
+
},
|
1034
|
+
"return": "Promise<void>"
|
1035
|
+
},
|
1036
|
+
"docs": {
|
1037
|
+
"text": "Registra um formatador de valores para uma coluna da grid.",
|
1038
|
+
"tags": []
|
1039
|
+
}
|
1040
|
+
},
|
1041
|
+
"removeCustomValueFormatter": {
|
1042
|
+
"complexType": {
|
1043
|
+
"signature": "(columnName: string) => Promise<void>",
|
1044
|
+
"parameters": [{
|
1045
|
+
"tags": [],
|
1046
|
+
"text": ""
|
1047
|
+
}],
|
1048
|
+
"references": {
|
1049
|
+
"Promise": {
|
1050
|
+
"location": "global"
|
1051
|
+
}
|
1052
|
+
},
|
1053
|
+
"return": "Promise<void>"
|
1054
|
+
},
|
1055
|
+
"docs": {
|
1056
|
+
"text": "Remove o formatador de valores de uma coluna da grid.",
|
1057
|
+
"tags": []
|
1058
|
+
}
|
1059
|
+
},
|
1060
|
+
"setFieldProp": {
|
1061
|
+
"complexType": {
|
1062
|
+
"signature": "(fieldName: string, propName: string, value: any) => Promise<void>",
|
1063
|
+
"parameters": [{
|
1064
|
+
"tags": [],
|
1065
|
+
"text": ""
|
1066
|
+
}, {
|
1067
|
+
"tags": [],
|
1068
|
+
"text": ""
|
1069
|
+
}, {
|
1070
|
+
"tags": [],
|
1071
|
+
"text": ""
|
1072
|
+
}],
|
1073
|
+
"references": {
|
1074
|
+
"Promise": {
|
1075
|
+
"location": "global"
|
1076
|
+
}
|
1077
|
+
},
|
1078
|
+
"return": "Promise<void>"
|
1079
|
+
},
|
1080
|
+
"docs": {
|
1081
|
+
"text": "Altera/adiciona uma propriedade nos metadados do campo.",
|
1082
|
+
"tags": []
|
1083
|
+
}
|
786
1084
|
}
|
787
1085
|
};
|
788
1086
|
}
|