@sankhyalabs/sankhyablocks 8.16.0-dev.3 → 8.16.0-dev.30
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-807730a8.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-f89461c1.js} +46 -18
- 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/loader.cjs.js +1 -1
- package/dist/cjs/{pesquisa-fetcher-680e198f.js → pesquisa-fetcher-ca89181c.js} +1 -1
- 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 +37 -28
- package/dist/cjs/snk-crud.cjs.entry.js +14 -6
- package/dist/cjs/snk-data-exporter.cjs.entry.js +9 -9
- package/dist/cjs/{snk-data-unit-685272e7.js → snk-data-unit-668dc5e8.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.cjs.entry.js +37 -25
- 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-form-config.cjs.entry.js +17 -6
- package/dist/cjs/snk-form.cjs.entry.js +7 -6
- package/dist/cjs/snk-grid.cjs.entry.js +61 -21
- package/dist/cjs/{snk-guides-viewer-67605336.js → snk-guides-viewer-68777d37.js} +24 -12
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -9
- package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
- package/dist/cjs/snk-simple-bar.cjs.entry.js +1 -1
- package/dist/cjs/snk-simple-crud.cjs.entry.js +64 -26
- package/dist/cjs/snk-taskbar.cjs.entry.js +23 -1
- package/dist/collection/components/snk-actions-button/actions/index.js +12 -9
- package/dist/collection/components/snk-attach/snk-attach.js +24 -15
- 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 +78 -1
- 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.js +51 -6
- package/dist/collection/components/snk-data-exporter/exporter-email-sender/options-step.js +1 -1
- 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/structure/ItemBuilder.js +2 -2
- 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-checkbox-list.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 +14 -3
- package/dist/collection/components/snk-grid/snk-grid.css +2 -0
- package/dist/collection/components/snk-grid/snk-grid.js +68 -8
- 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 +89 -15
- package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +5 -1
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +64 -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/loadstrategy/DatasetStrategy.js +9 -2
- package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +4 -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/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 +45 -15
- package/dist/components/form-config-fetcher.js +4 -1
- package/dist/components/snk-actions-button2.js +12 -9
- package/dist/components/snk-attach2.js +33 -24
- package/dist/components/snk-crud.js +12 -1
- package/dist/components/snk-data-exporter2.js +2 -2
- package/dist/components/snk-data-unit2.js +44 -60
- package/dist/components/snk-detail-view2.js +24 -11
- package/dist/components/snk-exporter-email-sender2.js +1 -1
- package/dist/components/snk-filter-bar2.js +35 -22
- package/dist/components/snk-filter-checkbox-list.js +1 -1
- package/dist/components/snk-form-config2.js +15 -4
- package/dist/components/snk-form.js +2 -2
- package/dist/components/snk-grid2.js +53 -11
- package/dist/components/snk-simple-bar2.js +1 -1
- package/dist/components/snk-simple-crud2.js +57 -15
- package/dist/components/snk-taskbar2.js +24 -2
- package/dist/esm/{ConfigStorage-86187da3.js → ConfigStorage-7b36d041.js} +3 -2
- package/dist/esm/{IExporterProvider-63a188b6.js → ContinuousInsertUtils-1a82a768.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-139f09fa.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/{dataunit-fetcher-264191b2.js → dataunit-fetcher-c24c76c6.js} +46 -16
- 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/loader.js +1 -1
- package/dist/esm/{pesquisa-fetcher-03c8f919.js → pesquisa-fetcher-8edaa8cd.js} +1 -1
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/snk-actions-button_4.entry.js +17 -14
- package/dist/esm/snk-application.entry.js +7 -7
- package/dist/esm/snk-attach.entry.js +37 -28
- package/dist/esm/snk-crud.entry.js +14 -6
- package/dist/esm/snk-data-exporter.entry.js +9 -9
- package/dist/esm/{snk-data-unit-63f83504.js → snk-data-unit-0fdfb6c2.js} +42 -22
- package/dist/esm/snk-data-unit.entry.js +5 -5
- package/dist/esm/snk-detail-view.entry.js +12 -13
- package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
- package/dist/esm/snk-filter-bar.entry.js +37 -25
- 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-form-config.entry.js +17 -6
- package/dist/esm/snk-form.entry.js +7 -6
- package/dist/esm/snk-grid.entry.js +56 -16
- package/dist/esm/{snk-guides-viewer-151f6091.js → snk-guides-viewer-b5dd30e6.js} +24 -12
- package/dist/esm/snk-guides-viewer.entry.js +9 -9
- package/dist/esm/snk-personalized-filter.entry.js +3 -3
- package/dist/esm/snk-simple-bar.entry.js +1 -1
- package/dist/esm/snk-simple-crud.entry.js +60 -22
- package/dist/esm/snk-taskbar.entry.js +23 -1
- package/dist/sankhyablocks/p-0035ad6e.entry.js +1 -0
- package/dist/sankhyablocks/{p-df5451c7.js → p-06421fdb.js} +2 -2
- package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
- package/dist/sankhyablocks/p-17425c72.js +1 -0
- package/dist/sankhyablocks/p-18ed15f4.entry.js +1 -0
- package/dist/sankhyablocks/{p-af8efd95.js → p-1bf06cd3.js} +2 -2
- package/dist/sankhyablocks/p-1e4c25e3.entry.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-3ae9d08a.js +1 -0
- package/dist/sankhyablocks/p-3e3cc017.js +1 -0
- package/dist/sankhyablocks/{p-aff76a53.js → p-4d9549cf.js} +2 -2
- package/dist/sankhyablocks/p-50779ad3.entry.js +1 -0
- package/dist/sankhyablocks/p-5dd8cf4f.js +1 -0
- package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
- package/dist/sankhyablocks/p-60b29483.entry.js +1 -0
- package/dist/sankhyablocks/p-694e1c4a.entry.js +1 -0
- package/dist/sankhyablocks/p-7ac7932c.js +60 -0
- package/dist/sankhyablocks/p-7dd49d15.js +1 -0
- package/dist/sankhyablocks/p-7eef0898.entry.js +1 -0
- package/dist/sankhyablocks/{p-82a0bfb0.entry.js → p-a42e7a1e.entry.js} +2 -2
- package/dist/sankhyablocks/p-afbb070d.js +1 -0
- package/dist/sankhyablocks/p-b9679243.entry.js +1 -0
- package/dist/sankhyablocks/p-b9c67e45.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-d80a84fd.entry.js +1 -0
- package/dist/sankhyablocks/p-d836f72b.entry.js +1 -0
- package/dist/sankhyablocks/p-e16e87fc.entry.js +1 -0
- package/dist/sankhyablocks/p-eb9f0407.entry.js +1 -0
- package/dist/sankhyablocks/p-f3434fc4.js +1 -0
- package/dist/sankhyablocks/{p-eae7a817.entry.js → p-fb34e0cf.entry.js} +1 -1
- 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 +13 -0
- package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +11 -0
- 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-grid/snk-grid.d.ts +12 -0
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +14 -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 +89 -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/utils/ContinuousInsertUtils.d.ts +10 -0
- package/dist/types/lib/utils/GetSelectedRecordsIDsInfo.d.ts +3 -0
- package/package.json +2 -2
- 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-47b60deb.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-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-dc7c9047.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
|
@@ -68,6 +68,10 @@ export declare class SnkDataUnit implements DUActionInterceptor {
|
|
|
68
68
|
* Identificador de recursos como configurações e acesso.
|
|
69
69
|
*/
|
|
70
70
|
resourceID: string;
|
|
71
|
+
/**
|
|
72
|
+
* Define a chave customizada para sobrescrever as mensagens (Não pegando pela entidade)
|
|
73
|
+
*/
|
|
74
|
+
domainMessagesBuilder: string;
|
|
71
75
|
observePageSize(): void;
|
|
72
76
|
observeDataUnitName(newValue: string, oldValue: string): void;
|
|
73
77
|
observeEntityName(newValue: string, oldValue: string): void;
|
|
@@ -152,6 +156,7 @@ export declare class SnkDataUnit implements DUActionInterceptor {
|
|
|
152
156
|
private buildDataState;
|
|
153
157
|
private handleDataSaved;
|
|
154
158
|
private handleRecordsRemoved;
|
|
159
|
+
private buildRemoveFinishMessage;
|
|
155
160
|
_dataUnitObserver: (action: DataUnitAction) => Promise<void>;
|
|
156
161
|
/**
|
|
157
162
|
* Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
|
|
@@ -163,6 +168,7 @@ export declare class SnkDataUnit implements DUActionInterceptor {
|
|
|
163
168
|
private getMessageParams;
|
|
164
169
|
private getMessageOperation;
|
|
165
170
|
private getDataUnitParentOrChild;
|
|
171
|
+
private updateMetadataWithRMP;
|
|
166
172
|
loadDataUnit(): Promise<void>;
|
|
167
173
|
private getParentSnkDataUnit;
|
|
168
174
|
private handlerLinkFields;
|
|
@@ -170,6 +176,7 @@ export declare class SnkDataUnit implements DUActionInterceptor {
|
|
|
170
176
|
private processLinks;
|
|
171
177
|
private getCleanDataUnitName;
|
|
172
178
|
static getNearestInstance(element: HTMLElement): HTMLSnkDataUnitElement;
|
|
179
|
+
private instanceMessagesBuilder;
|
|
173
180
|
componentWillLoad(): void;
|
|
174
181
|
disconnectedCallback(): void;
|
|
175
182
|
componentDidLoad(): Promise<void>;
|
|
@@ -18,7 +18,12 @@ export declare class SnkFilterBar implements FilterProvider {
|
|
|
18
18
|
_pendingVariables: boolean;
|
|
19
19
|
_customfiltersToBeUpdated: Array<SnkFilterItemConfig>;
|
|
20
20
|
_calculateSortIndex: (item: SnkFilterItemConfig) => number;
|
|
21
|
+
private hasValidValue;
|
|
21
22
|
_filtersComparator: (a: SnkFilterItemConfig, b: SnkFilterItemConfig) => number;
|
|
23
|
+
/**
|
|
24
|
+
* Loader customizado para carregar as configurações
|
|
25
|
+
*/
|
|
26
|
+
customFilterBarConfig?: (configName: string, resourceId: string, options: any) => Promise<Array<SnkFilterItemConfig>>;
|
|
22
27
|
/**
|
|
23
28
|
* Recebe o DataUnit do ambiente. Se não for informado, procura pela referência
|
|
24
29
|
* do SnkDataUnit. Necessário para se registrar como provedor de filtros.
|
|
@@ -8,23 +8,28 @@ export declare class SnkFormConfigManager {
|
|
|
8
8
|
private _configName;
|
|
9
9
|
private _formConfigFetcher;
|
|
10
10
|
private _resourceID;
|
|
11
|
-
|
|
11
|
+
private _dataUnit;
|
|
12
|
+
constructor(configName: string, resourceID: string, onConfigChange?: (config: IFormConfig) => void, dataUnit?: DataUnit);
|
|
12
13
|
addFormLegacyConfig(legacyConfigName: string): void;
|
|
13
14
|
loadConfig(): Promise<IFormConfig>;
|
|
15
|
+
getEmptyConfig(): IFormConfig;
|
|
14
16
|
saveConfig(config: IFormConfig): Promise<IFormConfig>;
|
|
15
17
|
saveCardState(cardId: string, cardConfig: IFormCardConfig, propertyChanged: string): Promise<Map<string, IFormCardConfig>>;
|
|
16
18
|
private updateFixSequence;
|
|
17
|
-
|
|
19
|
+
private hasConfig;
|
|
20
|
+
getFieldsList(descriptionFilter?: string, forceEmptyConfig?: boolean): Array<{
|
|
18
21
|
label: string;
|
|
19
22
|
name: string;
|
|
20
23
|
readOnly?: boolean;
|
|
21
24
|
}>;
|
|
22
25
|
private isFieldVisible;
|
|
23
|
-
private
|
|
26
|
+
private getFormConfig;
|
|
24
27
|
setConfig(config: IFormConfig): void;
|
|
25
|
-
getConfig(
|
|
28
|
+
getConfig(dataUnit: DataUnit, ignoreReadOnlyFormFields?: boolean): IFormConfig;
|
|
26
29
|
private getFormConfigFetcher;
|
|
27
30
|
fetchUserAvailableConfigs(): Promise<Array<IUserConfig>>;
|
|
28
31
|
fetchLegacyConfig(): Promise<IFormConfig>;
|
|
29
32
|
fetchDefaultConfig(): Promise<IFormConfig>;
|
|
33
|
+
private parseObjectList;
|
|
34
|
+
private buildFormMetadataUITabs;
|
|
30
35
|
}
|
|
@@ -32,12 +32,14 @@ export declare class SnkGrid {
|
|
|
32
32
|
_rmPrecisionCustomValueFormatter: RmPrecisionCustomValueFormatter;
|
|
33
33
|
_topTaskbarProcessor: TaskbarProcessor;
|
|
34
34
|
_headerTaskbarProcessor: TaskbarProcessor;
|
|
35
|
+
private _continuousInsertUtils;
|
|
35
36
|
_element: HTMLElement;
|
|
36
37
|
_dataUnit: DataUnit;
|
|
37
38
|
_dataState: DataState;
|
|
38
39
|
_gridConfig: IGridConfig;
|
|
39
40
|
_popUpGridConfig: boolean;
|
|
40
41
|
_showSnkFilterBar: boolean;
|
|
42
|
+
_enableContinuousInsert: boolean;
|
|
41
43
|
_application: SnkApplication;
|
|
42
44
|
columnFilterDataSource: IMultiSelectionListDataSource;
|
|
43
45
|
/**
|
|
@@ -131,6 +133,10 @@ export declare class SnkGrid {
|
|
|
131
133
|
* Define se a grid será focada ao ser carregada.
|
|
132
134
|
*/
|
|
133
135
|
autoFocus?: boolean;
|
|
136
|
+
/**
|
|
137
|
+
* Ativa inserção de registros no modo grade.
|
|
138
|
+
*/
|
|
139
|
+
enableGridInsert?: boolean;
|
|
134
140
|
/**
|
|
135
141
|
* Emitido sempre que houver click de botão ou ação.
|
|
136
142
|
*/
|
|
@@ -183,7 +189,10 @@ export declare class SnkGrid {
|
|
|
183
189
|
* Atribui o foco para a grade.
|
|
184
190
|
*/
|
|
185
191
|
setFocus(): Promise<void>;
|
|
192
|
+
handleClick(event: MouseEvent): Promise<void>;
|
|
193
|
+
private hasToBlockEvent;
|
|
186
194
|
handleGridLegacyConfigName(newLegacyConfig: string, oldLegacyConfig: string): Promise<void>;
|
|
195
|
+
private handleAddFormMode;
|
|
187
196
|
private openGridConfig;
|
|
188
197
|
private closeGridConfig;
|
|
189
198
|
private setGridConfig;
|
|
@@ -210,6 +219,9 @@ export declare class SnkGrid {
|
|
|
210
219
|
private getPrimaryButton;
|
|
211
220
|
private getColumnSearch;
|
|
212
221
|
private getActionsList;
|
|
222
|
+
private handleEnableContinuousInsert;
|
|
213
223
|
private handleFilterConfigUpdated;
|
|
224
|
+
private getGridHeaderButtons;
|
|
225
|
+
private isGridInsertActive;
|
|
214
226
|
render(): any;
|
|
215
227
|
}
|
|
@@ -35,6 +35,7 @@ export declare class SnkSimpleCrud {
|
|
|
35
35
|
private _form;
|
|
36
36
|
private _rmPrecisionCustomValueFormatter;
|
|
37
37
|
private _snkDataUnit;
|
|
38
|
+
private _continuousInsertUtils;
|
|
38
39
|
private _element;
|
|
39
40
|
_showPopUpGridConfig: boolean;
|
|
40
41
|
_showFormConfig: boolean;
|
|
@@ -53,6 +54,7 @@ export declare class SnkSimpleCrud {
|
|
|
53
54
|
formConfig: IFormConfig;
|
|
54
55
|
_formFields: IFieldConfig[];
|
|
55
56
|
private _fieldsProps;
|
|
57
|
+
_enableContinuousInsert: boolean;
|
|
56
58
|
/**
|
|
57
59
|
* Determina se pode haver mais de uma linha selecionada na grade.
|
|
58
60
|
*/
|
|
@@ -66,6 +68,10 @@ export declare class SnkSimpleCrud {
|
|
|
66
68
|
* Identificador de recursos como configurações e acesso.
|
|
67
69
|
*/
|
|
68
70
|
resourceID: string;
|
|
71
|
+
/**
|
|
72
|
+
* Ativa inserção de registros no modo grade.
|
|
73
|
+
*/
|
|
74
|
+
enableGridInsert?: boolean;
|
|
69
75
|
/**
|
|
70
76
|
* Emitido quando há qualquer mudança de estado no DataUnit.
|
|
71
77
|
*/
|
|
@@ -131,6 +137,10 @@ export declare class SnkSimpleCrud {
|
|
|
131
137
|
* Define se a grid será focada ao ser carregada.
|
|
132
138
|
*/
|
|
133
139
|
autoFocus?: boolean;
|
|
140
|
+
/**
|
|
141
|
+
* Define a chave customizada para sobrescrever as mensagens (Não pegando pela entidade)
|
|
142
|
+
*/
|
|
143
|
+
domainMessagesBuilder: string;
|
|
134
144
|
/**
|
|
135
145
|
* Registra um editor customizado para campos da grade e formulário.
|
|
136
146
|
*/
|
|
@@ -157,6 +167,7 @@ export declare class SnkSimpleCrud {
|
|
|
157
167
|
*/
|
|
158
168
|
setFieldProp(fieldName: string, propName: string, value: any): Promise<void>;
|
|
159
169
|
_taskbarProcessor: TaskbarProcessor;
|
|
170
|
+
private getFinishEditionButtonsCallback;
|
|
160
171
|
private getButtons;
|
|
161
172
|
private addConfigButton;
|
|
162
173
|
private get application();
|
|
@@ -216,7 +227,9 @@ export declare class SnkSimpleCrud {
|
|
|
216
227
|
private getFormFields;
|
|
217
228
|
private handleFormSetFields;
|
|
218
229
|
private fieldsOptionLoader;
|
|
230
|
+
private isGridInsertActive;
|
|
219
231
|
private getActionsList;
|
|
232
|
+
private handleEnableContinuousInsert;
|
|
220
233
|
private getTopTaskBarId;
|
|
221
234
|
keyDownListener(event: KeyboardEvent): Promise<void>;
|
|
222
235
|
findField(): Promise<void>;
|
|
@@ -238,5 +251,6 @@ export declare class SnkSimpleCrud {
|
|
|
238
251
|
private resolveResourceID;
|
|
239
252
|
private getFormConfig;
|
|
240
253
|
private updateFormConfig;
|
|
254
|
+
private handleDataUnitOnInsertionMode;
|
|
241
255
|
render(): any;
|
|
242
256
|
}
|
|
@@ -8,5 +8,6 @@ export default class TaskbarProcessor {
|
|
|
8
8
|
constructor(defaultButtons: any);
|
|
9
9
|
process(taskbarId: string, taskbarManager: TaskbarManager, dataState: DataState, disabledButtons?: Array<string>, invisibleButtons?: Array<string>): void;
|
|
10
10
|
private getButtonsArray;
|
|
11
|
+
private getButtonsFromKey;
|
|
11
12
|
private isEnabled;
|
|
12
13
|
}
|
|
@@ -88,7 +88,17 @@ export declare class SnkTaskbar {
|
|
|
88
88
|
* Emitido sempre que houver click de botão ou ação.
|
|
89
89
|
*/
|
|
90
90
|
actionClick: EventEmitter<string>;
|
|
91
|
+
/**
|
|
92
|
+
* Emitido sempre que um save é iniciado pela taskbar.
|
|
93
|
+
*/
|
|
94
|
+
taskbarSaveLocker: EventEmitter<void>;
|
|
95
|
+
/**
|
|
96
|
+
* Emitido sempre que o ocorre alguma action que libera o save.
|
|
97
|
+
*/
|
|
98
|
+
taskbarSaveUnlocker: EventEmitter<void>;
|
|
91
99
|
handleCustomSlotElementsLoaded(event: CustomEvent): void;
|
|
100
|
+
handleTaskbarSaveLocker(): void;
|
|
101
|
+
handleTaskbarSaveUnlocker(): void;
|
|
92
102
|
private hasToSearchCustomElements;
|
|
93
103
|
_titleKeyByElement: {
|
|
94
104
|
UPDATE: string;
|
|
@@ -109,6 +119,7 @@ export declare class SnkTaskbar {
|
|
|
109
119
|
observeButtons(): void;
|
|
110
120
|
observeDisabledButtons(): void;
|
|
111
121
|
observeLastWidth(newValue: any, oldValue: any): void;
|
|
122
|
+
observeIsWaitingForSave(newValue: any, oldValue: any): void;
|
|
112
123
|
elementsFromString(strButtons: string): Array<TaskbarElement>;
|
|
113
124
|
private isAllowed;
|
|
114
125
|
/**
|
|
@@ -456,6 +456,14 @@ export namespace Components {
|
|
|
456
456
|
* Desabilita a apresentação da opção de filtros personalizados na filter bar (chip de filtros) e no modal lateral de filtros (container de filtros personalizados).
|
|
457
457
|
*/
|
|
458
458
|
"disablePersonalizedFilter": boolean;
|
|
459
|
+
/**
|
|
460
|
+
* Define a chave customizada para sobrescrever as mensagens (Não pegando pela entidade)
|
|
461
|
+
*/
|
|
462
|
+
"domainMessagesBuilder": string;
|
|
463
|
+
/**
|
|
464
|
+
* Ativa inserção de registros no modo grade.
|
|
465
|
+
*/
|
|
466
|
+
"enableGridInsert"?: boolean;
|
|
459
467
|
/**
|
|
460
468
|
* Chave da configuração legado da barra de filtros.
|
|
461
469
|
*/
|
|
@@ -512,6 +520,10 @@ export namespace Components {
|
|
|
512
520
|
* Configuração da seleção de grade no toast.
|
|
513
521
|
*/
|
|
514
522
|
"selectionToastConfig": ISelectionToastConfig;
|
|
523
|
+
/**
|
|
524
|
+
* Define uma função para configurar um título cusotmizado no modo formulário.
|
|
525
|
+
*/
|
|
526
|
+
"setCustomFormTitle": () => string;
|
|
515
527
|
/**
|
|
516
528
|
* Altera/adiciona uma propriedade nos metadados do campo.
|
|
517
529
|
*/
|
|
@@ -574,6 +586,10 @@ export namespace Components {
|
|
|
574
586
|
* Usado para criar o dataUnit uma única vez. Se omitido, será usado o próprio nome da entidade.
|
|
575
587
|
*/
|
|
576
588
|
"dataUnitName": string;
|
|
589
|
+
/**
|
|
590
|
+
* Define a chave customizada para sobrescrever as mensagens (Não pegando pela entidade)
|
|
591
|
+
*/
|
|
592
|
+
"domainMessagesBuilder": string;
|
|
577
593
|
/**
|
|
578
594
|
* Determina qual a entidade que representa os dados em questão.
|
|
579
595
|
*/
|
|
@@ -823,6 +839,10 @@ export namespace Components {
|
|
|
823
839
|
* Eventualmente poderemos ter mais de uma barra de filtros. Essa propriedade serve para separar a configuração de cada uma.
|
|
824
840
|
*/
|
|
825
841
|
"configName": string;
|
|
842
|
+
/**
|
|
843
|
+
* Loader customizado para carregar as configurações
|
|
844
|
+
*/
|
|
845
|
+
"customFilterBarConfig"?: (configName: string, resourceId: string, options: any) => Promise<Array<SnkFilterItemConfig>>;
|
|
826
846
|
/**
|
|
827
847
|
* Recebe o DataUnit do ambiente. Se não for informado, procura pela referência do SnkDataUnit. Necessário para se registrar como provedor de filtros.
|
|
828
848
|
*/
|
|
@@ -1320,6 +1340,10 @@ export namespace Components {
|
|
|
1320
1340
|
* Desabilita a apresentação da opção de filtros personalizados na filter bar (chip de filtros) e no modal lateral de filtros (container de filtros personalizados).
|
|
1321
1341
|
*/
|
|
1322
1342
|
"disablePersonalizedFilter": boolean;
|
|
1343
|
+
/**
|
|
1344
|
+
* Ativa inserção de registros no modo grade.
|
|
1345
|
+
*/
|
|
1346
|
+
"enableGridInsert"?: boolean;
|
|
1323
1347
|
/**
|
|
1324
1348
|
* Chave da configuração legado da barra de filtros.
|
|
1325
1349
|
*/
|
|
@@ -1472,6 +1496,10 @@ export namespace Components {
|
|
|
1472
1496
|
* Define o identificador do container de elementos customizados da Taskbar da aba de detalhes.
|
|
1473
1497
|
*/
|
|
1474
1498
|
"detailTaskbarCustomContainerId": string;
|
|
1499
|
+
/**
|
|
1500
|
+
* Ativa inserção de registros no modo grade.
|
|
1501
|
+
*/
|
|
1502
|
+
"enableGridInsert"?: boolean;
|
|
1475
1503
|
/**
|
|
1476
1504
|
* Determina todo o caminho de entidades.
|
|
1477
1505
|
*/
|
|
@@ -1484,6 +1512,10 @@ export namespace Components {
|
|
|
1484
1512
|
* Chave da configuração legado do formulário.
|
|
1485
1513
|
*/
|
|
1486
1514
|
"formLegacyConfigName": string;
|
|
1515
|
+
/**
|
|
1516
|
+
* Fornece uma função para obter um título customizado do formulário.
|
|
1517
|
+
*/
|
|
1518
|
+
"getCustomTitle": () => string;
|
|
1487
1519
|
/**
|
|
1488
1520
|
* Configuração do formulário master.
|
|
1489
1521
|
*/
|
|
@@ -1643,6 +1675,14 @@ export namespace Components {
|
|
|
1643
1675
|
"configName": string;
|
|
1644
1676
|
"dataState": DataState1;
|
|
1645
1677
|
"dataUnit": DataUnit;
|
|
1678
|
+
/**
|
|
1679
|
+
* Define a chave customizada para sobrescrever as mensagens (Não pegando pela entidade)
|
|
1680
|
+
*/
|
|
1681
|
+
"domainMessagesBuilder": string;
|
|
1682
|
+
/**
|
|
1683
|
+
* Ativa inserção de registros no modo grade.
|
|
1684
|
+
*/
|
|
1685
|
+
"enableGridInsert"?: boolean;
|
|
1646
1686
|
/**
|
|
1647
1687
|
* Define o nome da entidade que o componente vai utilizar para fazer as operações de CRUD
|
|
1648
1688
|
*/
|
|
@@ -2530,6 +2570,14 @@ declare namespace LocalJSX {
|
|
|
2530
2570
|
* Desabilita a apresentação da opção de filtros personalizados na filter bar (chip de filtros) e no modal lateral de filtros (container de filtros personalizados).
|
|
2531
2571
|
*/
|
|
2532
2572
|
"disablePersonalizedFilter"?: boolean;
|
|
2573
|
+
/**
|
|
2574
|
+
* Define a chave customizada para sobrescrever as mensagens (Não pegando pela entidade)
|
|
2575
|
+
*/
|
|
2576
|
+
"domainMessagesBuilder"?: string;
|
|
2577
|
+
/**
|
|
2578
|
+
* Ativa inserção de registros no modo grade.
|
|
2579
|
+
*/
|
|
2580
|
+
"enableGridInsert"?: boolean;
|
|
2533
2581
|
/**
|
|
2534
2582
|
* Chave da configuração legado da barra de filtros.
|
|
2535
2583
|
*/
|
|
@@ -2570,6 +2618,7 @@ declare namespace LocalJSX {
|
|
|
2570
2618
|
* Responsável por notificar quando ocorrer a renderização de itens do formulário.
|
|
2571
2619
|
*/
|
|
2572
2620
|
"onFormItemsReady"?: (event: SnkCrudCustomEvent<Array<HTMLElement>>) => void;
|
|
2621
|
+
"onViewModeChanged"?: (event: SnkCrudCustomEvent<VIEW_MODE>) => void;
|
|
2573
2622
|
/**
|
|
2574
2623
|
* Altera o modo de apresentação dos botões do snk-taskbar.
|
|
2575
2624
|
*/
|
|
@@ -2582,6 +2631,10 @@ declare namespace LocalJSX {
|
|
|
2582
2631
|
* Configuração da seleção de grade no toast.
|
|
2583
2632
|
*/
|
|
2584
2633
|
"selectionToastConfig"?: ISelectionToastConfig;
|
|
2634
|
+
/**
|
|
2635
|
+
* Define uma função para configurar um título cusotmizado no modo formulário.
|
|
2636
|
+
*/
|
|
2637
|
+
"setCustomFormTitle"?: () => string;
|
|
2585
2638
|
/**
|
|
2586
2639
|
* Usado para exibir os botões de ação do snk-configurator
|
|
2587
2640
|
*/
|
|
@@ -2644,6 +2697,10 @@ declare namespace LocalJSX {
|
|
|
2644
2697
|
* Usado para criar o dataUnit uma única vez. Se omitido, será usado o próprio nome da entidade.
|
|
2645
2698
|
*/
|
|
2646
2699
|
"dataUnitName"?: string;
|
|
2700
|
+
/**
|
|
2701
|
+
* Define a chave customizada para sobrescrever as mensagens (Não pegando pela entidade)
|
|
2702
|
+
*/
|
|
2703
|
+
"domainMessagesBuilder"?: string;
|
|
2647
2704
|
/**
|
|
2648
2705
|
* Determina qual a entidade que representa os dados em questão.
|
|
2649
2706
|
*/
|
|
@@ -2914,6 +2971,10 @@ declare namespace LocalJSX {
|
|
|
2914
2971
|
* Eventualmente poderemos ter mais de uma barra de filtros. Essa propriedade serve para separar a configuração de cada uma.
|
|
2915
2972
|
*/
|
|
2916
2973
|
"configName"?: string;
|
|
2974
|
+
/**
|
|
2975
|
+
* Loader customizado para carregar as configurações
|
|
2976
|
+
*/
|
|
2977
|
+
"customFilterBarConfig"?: (configName: string, resourceId: string, options: any) => Promise<Array<SnkFilterItemConfig>>;
|
|
2917
2978
|
/**
|
|
2918
2979
|
* Recebe o DataUnit do ambiente. Se não for informado, procura pela referência do SnkDataUnit. Necessário para se registrar como provedor de filtros.
|
|
2919
2980
|
*/
|
|
@@ -3380,6 +3441,10 @@ declare namespace LocalJSX {
|
|
|
3380
3441
|
* Desabilita a apresentação da opção de filtros personalizados na filter bar (chip de filtros) e no modal lateral de filtros (container de filtros personalizados).
|
|
3381
3442
|
*/
|
|
3382
3443
|
"disablePersonalizedFilter"?: boolean;
|
|
3444
|
+
/**
|
|
3445
|
+
* Ativa inserção de registros no modo grade.
|
|
3446
|
+
*/
|
|
3447
|
+
"enableGridInsert"?: boolean;
|
|
3383
3448
|
/**
|
|
3384
3449
|
* Chave da configuração legado da barra de filtros.
|
|
3385
3450
|
*/
|
|
@@ -3508,6 +3573,10 @@ declare namespace LocalJSX {
|
|
|
3508
3573
|
* Define o identificador do container de elementos customizados da Taskbar da aba de detalhes.
|
|
3509
3574
|
*/
|
|
3510
3575
|
"detailTaskbarCustomContainerId"?: string;
|
|
3576
|
+
/**
|
|
3577
|
+
* Ativa inserção de registros no modo grade.
|
|
3578
|
+
*/
|
|
3579
|
+
"enableGridInsert"?: boolean;
|
|
3511
3580
|
/**
|
|
3512
3581
|
* Determina todo o caminho de entidades.
|
|
3513
3582
|
*/
|
|
@@ -3516,6 +3585,10 @@ declare namespace LocalJSX {
|
|
|
3516
3585
|
* Chave da configuração legado do formulário.
|
|
3517
3586
|
*/
|
|
3518
3587
|
"formLegacyConfigName"?: string;
|
|
3588
|
+
/**
|
|
3589
|
+
* Fornece uma função para obter um título customizado do formulário.
|
|
3590
|
+
*/
|
|
3591
|
+
"getCustomTitle"?: () => string;
|
|
3519
3592
|
/**
|
|
3520
3593
|
* Configuração do formulário master.
|
|
3521
3594
|
*/
|
|
@@ -3674,6 +3747,14 @@ declare namespace LocalJSX {
|
|
|
3674
3747
|
"configName"?: string;
|
|
3675
3748
|
"dataState"?: DataState1;
|
|
3676
3749
|
"dataUnit"?: DataUnit;
|
|
3750
|
+
/**
|
|
3751
|
+
* Define a chave customizada para sobrescrever as mensagens (Não pegando pela entidade)
|
|
3752
|
+
*/
|
|
3753
|
+
"domainMessagesBuilder"?: string;
|
|
3754
|
+
/**
|
|
3755
|
+
* Ativa inserção de registros no modo grade.
|
|
3756
|
+
*/
|
|
3757
|
+
"enableGridInsert"?: boolean;
|
|
3677
3758
|
/**
|
|
3678
3759
|
* Define o nome da entidade que o componente vai utilizar para fazer as operações de CRUD
|
|
3679
3760
|
*/
|
|
@@ -3838,6 +3919,14 @@ declare namespace LocalJSX {
|
|
|
3838
3919
|
* Emitido sempre que houver click de botão ou ação.
|
|
3839
3920
|
*/
|
|
3840
3921
|
"onActionClick"?: (event: SnkTaskbarCustomEvent<string>) => void;
|
|
3922
|
+
/**
|
|
3923
|
+
* Emitido sempre que um save é iniciado pela taskbar.
|
|
3924
|
+
*/
|
|
3925
|
+
"onTaskbarSaveLocker"?: (event: SnkTaskbarCustomEvent<void>) => void;
|
|
3926
|
+
/**
|
|
3927
|
+
* Emitido sempre que o ocorre alguma action que libera o save.
|
|
3928
|
+
*/
|
|
3929
|
+
"onTaskbarSaveUnlocker"?: (event: SnkTaskbarCustomEvent<void>) => void;
|
|
3841
3930
|
/**
|
|
3842
3931
|
* Define como será o comportamento da taskbar quando ocorrer overflow
|
|
3843
3932
|
*/
|
|
@@ -1,4 +1,14 @@
|
|
|
1
|
-
import { DataUnit, Filter, PaginationInfo, Record, Sort } from '@sankhyalabs/core';
|
|
1
|
+
import { DataUnit, Filter, LoadDataRequest, PaginationInfo, Record, Sort } from '@sankhyalabs/core';
|
|
2
2
|
export declare function applyFilter(records: Array<Record>, dataUnit: DataUnit, filters: Array<Filter>): Array<Record>;
|
|
3
|
+
export declare function buildLoadDataResponse(recordsIn: Array<Record>, dataUnit: DataUnit, request: LoadDataRequest): Promise<{
|
|
4
|
+
records: Record[];
|
|
5
|
+
paginationInfo: PaginationInfo;
|
|
6
|
+
}>;
|
|
3
7
|
export declare function applySorting(records: Array<Record>, dataUnit: DataUnit, sorting: Array<Sort>): Array<Record>;
|
|
4
|
-
export declare function
|
|
8
|
+
export declare function getPagesByRecords(records: Record[], offset?: number, limit?: number): Record[];
|
|
9
|
+
export declare function buildPaginationInfo({ recordsLength, offset, recordsPerPage }: PaginationInfoBuilderParams): PaginationInfo | undefined;
|
|
10
|
+
export interface PaginationInfoBuilderParams {
|
|
11
|
+
recordsLength: number;
|
|
12
|
+
offset: number;
|
|
13
|
+
recordsPerPage: number;
|
|
14
|
+
}
|
|
@@ -3,10 +3,11 @@ import { DeleteResponse, DownloadKeyResponse, SaveResponse } from "./interfaces"
|
|
|
3
3
|
import { AttachFetcherFacadeInterface } from "./facade/attach-fetcher.facade";
|
|
4
4
|
export declare class AnexoSistemaFetcher implements AttachFetcherFacadeInterface {
|
|
5
5
|
private entityName;
|
|
6
|
-
private registerKey;
|
|
7
6
|
private dataUnitName;
|
|
8
7
|
private resourceID;
|
|
9
|
-
|
|
8
|
+
private _registerKey;
|
|
9
|
+
constructor(entityName: string, dataUnitName: string);
|
|
10
|
+
set registerKey(registerKey: string);
|
|
10
11
|
validateFields: (fields: any) => void;
|
|
11
12
|
save(change: Change): Promise<Array<SaveResponse>>;
|
|
12
13
|
edit(change: Change): Promise<Array<SaveResponse>>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SnkApplication } from '../../components/snk-application/snk-application';
|
|
2
|
+
import { Action } from '../../components/snk-taskbar/snk-taskbar';
|
|
3
|
+
export declare class ContinuousInsertUtils {
|
|
4
|
+
private keyConfigEnableContinuousInsert;
|
|
5
|
+
private snkApplication;
|
|
6
|
+
constructor(snkApplication: SnkApplication, resourceID: string, configName?: string);
|
|
7
|
+
handleSaveConfig(enableContinuousInsert: boolean): Promise<any>;
|
|
8
|
+
getConfig(): Promise<boolean>;
|
|
9
|
+
actionContinuousInsert(enableContinuousInsert: boolean, handleEnableContinuousInsert: VoidFunction): Action;
|
|
10
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sankhyalabs/sankhyablocks",
|
|
3
|
-
"version": "8.16.0-dev.
|
|
3
|
+
"version": "8.16.0-dev.30",
|
|
4
4
|
"description": "Stencil Component Starter",
|
|
5
5
|
"main": "dist/index.cjs.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"build.prod": "npm run prebuild && stencil build --docs --prod",
|
|
26
26
|
"build.with.peerdeps": "stencil build --docs --prod --force-peer-deps",
|
|
27
27
|
"start": "stencil build --dev --watch --serve --force-peer-deps",
|
|
28
|
-
"test": "stencil test --spec --e2e --coverage --silent --testResultsProcessor jest-sonar-reporter",
|
|
28
|
+
"test": "stencil test --spec --e2e --coverage --silent --testResultsProcessor jest-sonar-reporter --runInBand",
|
|
29
29
|
"test.watch": "stencil test --spec --e2e --watchAll",
|
|
30
30
|
"generate": "stencil generate",
|
|
31
31
|
"build.css.docs": "node docscsstask.js",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as i,c as o,h as n,H as t,g as s}from"./p-d2d301a6.js";import{S as e}from"./p-fa816fb2.js";import{ObjectUtils as l,ElementIDUtils as r,ArrayUtils as a,ApplicationContext as d}from"@sankhyalabs/core";import{ApplicationUtils as c,DialogType as f}from"@sankhyalabs/ezui/dist/collection/utils";import{C as h,a as g,T as u,A as m,D as v}from"./p-b0ef4383.js";import{U as b}from"./p-df5451c7.js";import{buildFormConfigFromDataUnit as p}from"@sankhyalabs/ezui/dist/collection/utils/form";import"./p-dc7c9047.js";import"./p-8d884fab.js";import"@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata";const _="EZ-COLLAPSIBLE-BOX",z="fieldsWithoutGroupContainer",k="fieldsAvailableContainer",C="addNewGroupContainer",x=class{constructor(n){i(this,n),this.configChange=o(this,"configChange",7),this.configClose=o(this,"configClose",7),this._listEnabledFields=[],this._renderTimer=500,this._tabSelected=1,this._labelNewGroup="Novo grupo",this._mouseOnFieldConfig=!1,this._mouseOnConfigOptions=!1,this._editingTitleGroup=!1,this._newGroupBoxes=[],this._currentGroupBoxes=[],this._formFieldsStyle="ez-col ez-col--sd-12 ez-col--tb-4 ez-padding-right--small ez-padding-bottom--medium sc-snk-form-config",this._fieldsAvailableStyle="ez-col ez-col--sd-12 ez-col--tb-12 ez-margin-bottom--medium ez-margin-right--medium sc-snk-form-config",this._fieldFloatingStyle="form-config__field-config--dragged",this._sortableTimer=100,this._formConfigOptions=[],this._fieldConfigSelected=void 0,this._layoutFormConfig=void 0,this._fieldsAvailable=void 0,this._formConfig={},this._formConfigChanged=!1,this._optionFormConfigSelected=void 0,this._optionFormConfigChanged=!1,this._tempGroups=[],this.dataUnit=void 0,this.configManager=void 0,this.messagesBuilder=void 0}observeConfigManager(){this.loadConfig(this._sortableTimer)}loadFields(i=0){this._layoutFormConfig=[],i>0?setTimeout((()=>{this.buildFields()}),i):this.buildFields()}buildFields(){this.buildFormConfig(),this.buildAvailableFields()}loadFormConfig(i){var o;this._formConfig=this.getConfig(),this.loadFields(i),this.controlFieldConfig(),null!=(null===(o=this._filterFieldsAvailable)||void 0===o?void 0:o.value)&&(this._filterFieldsAvailable.value="")}getConfig(){let i=this.configManager.getConfig(!1,this.dataUnit);return i.fields&&0===i.fields.length&&(i=void 0),null==i&&(i=p(this.dataUnit)),l.copy(i)}cancelChangeConfig(){!0===this._formConfigChanged?this.openConfirmDialog(this.getMessage("snkFormConfig.confirm.cancel")).then((i=>{i&&(this._formConfigChanged=!1,this.resetChangeConfig())})):this.resetChangeConfig()}cancelChangeOptionConfig(){!0===this._optionFormConfigChanged?this.openConfirmDialog(this.getMessage("snkFormConfig.confirm.cancel")).then((i=>{i&&(this._optionFormConfigChanged=!1,this.resetChangeOptionConfig())})):this.resetChangeOptionConfig()}resetChangeConfig(){this.loadFormConfig(this._sortableTimer),this.clearTempGroups()}resetChangeOptionConfig(){this._formConfigChanged=!1,this.loadConfig(this._sortableTimer),this.clearTempGroups()}getTabsToSave(){return this._layoutFormConfig.map(((i,o)=>({label:i.tab,order:o,visible:i.visible})))}getFieldsToSave(){const i=[];return this._formContainer.querySelectorAll("snk-field-config").forEach((o=>{const n=o.fieldConfig;if(null==n)return;const t={cleanOnCopy:n.cleanOnCopy||!1,group:n.group,label:n.label,name:n.name,required:n.required,readOnly:n.readOnly,tab:n.tab};null!=n.defaultValue&&(t.defaultValue=null==n.defaultValue.type?{type:v.fixed,value:n.defaultValue}:n.defaultValue),i.push(t)})),i}isDefaultConfiguration(){var i;return(null===(i=this._optionFormConfigSelected)||void 0===i?void 0:i.origin)===b.DEFAULT&&!0===this._optionFormConfigChanged&&!1===this._formConfigChanged}buildConfigToSave(){let i={};const o=this.isDefaultConfiguration();if(i=o?this.getConfig():l.copy(this._formConfig),!1===o){const o=this.getTabsToSave();(null==o?void 0:o.length)>0&&(i.tabs=o);const n=this.getFieldsToSave();(null==n?void 0:n.length)>0&&(i.fields=n)}return i.defaultConfiguration=o,i}saveConfig(){var i;(null===(i=this._tempGroups)||void 0===i?void 0:i.length)>0?c.alert(this.getMessage("snkFormConfig.confirm.title"),this.getMessage("snkFormConfig.confirm.group")):(this._formConfigChanged=!1,this._optionFormConfigChanged=!1,this.configManager.saveConfig(this.buildConfigToSave()).then((i=>{c.info(this.getMessage("snkFormConfig.info.successfullyConfigSaved"),{iconName:"check"}),this.configChange.emit(i)})))}applyOptionConfig(){if(!0===this._optionFormConfigChanged&&null!=this._optionFormConfigSelected){const i=this._optionFormConfigSelected.name||"configuração selecionada",o=this._optionFormConfigSelected.origin===b.DEFAULT?"pessoal":"padrão",n=this.getMessage("snkFormConfig.confirm.apply").replace("{0}",i).replace("{1}",o);this.openConfirmDialog(n).then((i=>{i&&this.saveConfig()}))}else this.saveConfig()}controlFieldConfig(i){var o;this._fieldConfigSelected=null!=i?(null===(o=this._fieldConfigSelected)||void 0===o?void 0:o.name)===(null==i?void 0:i.name)?void 0:i:void 0}getFieldConfigStyle(i){var o;return this._formFieldsStyle+((null===(o=this._fieldConfigSelected)||void 0===o?void 0:o.name)===i.name?" form-config__field-config--selected":"")}getFieldsByGroup(i){var o;return(null===(o=i.fields)||void 0===o?void 0:o.length)?i.fields.map((i=>{var o,t;return n("div",{key:i.name,class:this.getFieldConfigStyle(i),"data-draggable-element":"field",onMouseDown:i=>this.controlMoveField(i)},n("snk-field-config",{messagesBuilder:this.messagesBuilder,onEzClickIcon:i=>{this.handleFieldConfigChange(i)},modeInsertion:!1,fieldConfig:i,dataUnit:this.dataUnit,isConfigActive:(null===(o=this._fieldConfigSelected)||void 0===o?void 0:o.name)===i.name,id:i.name,key:i.name}),(null===(t=this._fieldConfigSelected)||void 0===t?void 0:t.name)===i.name&&n("div",{class:"ez-flex form-config__config-options"},n("snk-config-options",{idConfig:i.name,messagesBuilder:this.messagesBuilder,dataUnit:this.dataUnit,fieldConfig:this._fieldConfigSelected,"data-element-id":this._element.getAttribute(r.DATA_ELEMENT_ID_ATTRIBUTE_NAME),onConfigOptionsChanged:i=>this.handleconfigOptionsChanged(i.detail)})))})):n("div",{class:"form-config__add-group-container"},n("div",{class:"form-config__add-group-content"},n("div",{class:"form-config__add-group-label"},n("label",{class:"ez-text ez-text--center ez-text--medium ez-text--primary ez-text--bold"},this.getMessage("snkFormConfig.form.labelDropField")))))}handleconfigOptionsChanged(i){var o;null===(o=this._formConfig.fields)||void 0===o||o.forEach((()=>{})),this._formConfigChanged=!0}closeFormConfig(){!0===this._formConfigChanged||!0===this._optionFormConfigChanged?this.openConfirmDialog(this.getMessage("snkFormConfig.confirm.exit")).then((i=>{i&&(this._formConfigChanged=!1,this.configClose.emit())})):this.configClose.emit()}openConfirmDialog(i="",o=this.getMessage("snkFormConfig.confirm.title")){return c.confirm(o,i)}controlMoveField(i){const o=null==i?void 0:i.target;null!=(null==o?void 0:o.closest('[data-draggable-element="field"]'))&&(this._mouseOnFieldConfig=!0,null!=(null==o?void 0:o.closest(".form-config__config-options"))||null!=(null==o?void 0:o.closest(".field-config__options"))?this._mouseOnConfigOptions=!0:!1===["minus","settings-inverted","chevron-up"].includes(null==o?void 0:o.iconName)&&this.controlFieldConfig())}controlStartDraggingField(i){var o,n,t;if(this._mouseOnConfigOptions)null==i||i.cancel(),this._mouseOnConfigOptions=!1;else{const s=null===(t=null===(n=null===(o=null==i?void 0:i.data)||void 0===o?void 0:o.dragEvent)||void 0===n?void 0:n.data)||void 0===t?void 0:t.sourceContainer;null!=s&&s.classList.add(this._fieldFloatingStyle)}}controlSortedDraggingField(i){var o,n,t,s,e,l,r,a;const d=null===(o=null==i?void 0:i.data)||void 0===o?void 0:o.oldContainer,c=null===(n=null==i?void 0:i.data)||void 0===n?void 0:n.newContainer,f=null===(e=null===(s=null===(t=null==i?void 0:i.data)||void 0===t?void 0:t.dragEvent)||void 0===s?void 0:s.data)||void 0===e?void 0:e.source,h=null===(a=null===(r=null===(l=null==i?void 0:i.data)||void 0===l?void 0:l.dragEvent)||void 0===r?void 0:r.data)||void 0===a?void 0:a.originalSource;null!=d&&null!=c&&null!=f&&null!=h&&(c.tagName!==_&&c.id!==z||d.id!==k?d.tagName!==_&&d.id!==z||c.id!==k||(f.className=this._fieldsAvailableStyle,f.querySelector("snk-field-config").modeInsertion=!0,h.className=this._fieldsAvailableStyle,h.querySelector("snk-field-config").modeInsertion=!0):(f.className=this._formFieldsStyle,f.querySelector("snk-field-config").modeInsertion=!1,h.className=this._formFieldsStyle,h.querySelector("snk-field-config").modeInsertion=!1))}isCancelDragAvailableField(i,o,n){var t,s;return null!=i&&null!=o&&null!=n&&(null===(t=n.data)||void 0===t?void 0:t.newIndex)!==(null===(s=n.data)||void 0===s?void 0:s.oldIndex)&&i.id===k&&o.id===i.id&&(n.cancel(),this._fieldsAvailable=[],setTimeout((()=>{this.buildAvailableFields()}),this._sortableTimer),!0)}isRemoveField(i,o,n){if(null==i||null==o||null==n)return!1;if((o.tagName===_||o.id===z)&&i.id===k){const i={detail:{field:n,type:m.remove}};return setTimeout((()=>{this.handleFieldConfigChange(i)}),this._renderTimer),!0}return!1}isAddOrMoveField(i,o,n,t){var s;return null!=i&&null!=o&&null!=n&&null!=t&&(t.newIndex!==t.oldIndex||o.dataset.groupName!==i.dataset.groupName||i.id===z&&o.id===k)&&(this.isFieldAvailable(i,o)&&(n.tab=null===(s=this._tabConfig)||void 0===s?void 0:s.selectedTab),n.group=i.dataset.groupName,setTimeout((()=>{i.id.includes(C)&&this.clearTempGroups(!0),this.updateFieldsToSave(o.dataset.groupName!==i.dataset.groupName||i.id===z&&o.id===k?this._sortableTimer:0)}),this._renderTimer),!0)}isFieldAvailable(i,o){return null!=i&&null!=o&&(i.tagName===_||i.id===z)&&o.id===k}controlStopDraggingField(i){var o,n,t,s,e,l;const r=null===(o=null==i?void 0:i.data)||void 0===o?void 0:o.oldContainer,a=null===(n=null==i?void 0:i.data)||void 0===n?void 0:n.newContainer;if(this.isCancelDragAvailableField(a,r,i))return;const d=null===(e=null===(s=null===(t=null==i?void 0:i.data)||void 0===t?void 0:t.dragEvent)||void 0===s?void 0:s.data)||void 0===e?void 0:e.originalSource,c=null===(l=null==d?void 0:d.querySelector("snk-field-config"))||void 0===l?void 0:l.fieldConfig;this.isRemoveField(a,r,c)||this.isAddOrMoveField(a,r,c,null==i?void 0:i.data)}updateFieldsToSave(i=0){const o=this.getFieldsToSave();(null==o?void 0:o.length)>0&&(this._formConfig.fields=o),this.loadFields(i),this._formConfigChanged=!0}controlSortableField(){null!=this._sortableContainer&&(this._sortableField&&this._sortableField.destroy(),this._sortableField=new e(this._sortableContainer.querySelectorAll('[data-draggable-parent="field"]'),{draggable:'[data-draggable-element="field"]',mirror:{constrainDimensions:!0},distance:h.dragStartDistance}),this._sortableField.on(g.dragStart,(i=>this.controlStartDraggingField(i))),this._sortableField.on(g.dragSorted,(i=>this.controlSortedDraggingField(i))),this._sortableField.on(g.dragStop,(i=>this.controlStopDraggingField(i))))}controlStartDraggingGroup(i){(this._mouseOnFieldConfig||this._editingTitleGroup)&&(null==i||i.cancel(),this._mouseOnFieldConfig=!1)}controlStopDraggingGroup(i){i.data.newIndex!==i.data.oldIndex&&setTimeout((()=>{this.updateFieldsToSave(this._sortableTimer)}),this._renderTimer)}controlSortableGroup(){null!=this._sortableContainer&&(this._sortableGroup&&this._sortableGroup.destroy(),this._sortableGroup=new e(this._sortableContainer.querySelectorAll('[data-draggable-parent="group"]'),{draggable:'[data-draggable-element="group"]',mirror:{constrainDimensions:!0},distance:h.dragStartDistance}),this._sortableGroup.on(g.dragStart,(i=>this.controlStartDraggingGroup(i))),this._sortableGroup.on(g.dragStop,(i=>this.controlStopDraggingGroup(i))))}loadUserConfig(){null!=this.configManager&&this.configManager.fetchUserAvailableConfigs().then((i=>{if(this._formConfigOptions=i,null==this._formConfigOptions)return;let o=null==this._formConfig||this._formConfig.defaultConfiguration;const n=i.find((i=>i.origin===(o?b.DEFAULT:b.USER)));this.setFormConfig(n)}))}setFormConfig(i){this._optionFormConfigSelected=i}controlSelectFormConfig(i){const o=null==i?void 0:i.detail,n=this._formConfigOptions.find((i=>i.origin===(null==o?void 0:o.value)));this.setFormConfig(n),this._optionFormConfigChanged=!0,this.loadConfigByUser()}changeTabOrder(i){const o=[],n=this._tabConfig.querySelectorAll(".tab-config__tab");this._tabSelected=i,n.forEach(((i,n)=>{var t;if(n){const s=null===(t=i.querySelector(".tab-config__tab-label"))||void 0===t?void 0:t.getAttribute("title");o.push({label:s,order:n-1})}})),this._layoutFormConfig.map((i=>{o.forEach((o=>{o.label===i.tab&&(o.visible=i.visible)}))})),o.length>0&&(this._formConfig.tabs=o,this.loadFields(this._sortableTimer),this.controlFieldConfig(),this._formConfigChanged=!0)}async loadConfigByUser(){if(null==this.configManager)return;if(null==this._optionFormConfigSelected)return;let i;switch(this._optionFormConfigSelected.origin){case b.DEFAULT:case b.DEFAULT:i=await this.configManager.fetchDefaultConfig()}null!=i&&(this._formConfig=i,this._tabSelected=1,this.loadFields(this._sortableTimer),this.controlFieldConfig(),this.clearTempGroups())}loadConfig(i=0){this.loadFormConfig(i),this.loadUserConfig()}addNewGroup(){var i,o;const n=null===(i=this._tabConfig)||void 0===i?void 0:i.selectedTab;null==(null===(o=this._tempGroups)||void 0===o?void 0:o.find((i=>i.tab===n&&i.group.includes(this._labelNewGroup))))&&(this._tempGroups.push({tab:n,group:this.handleDuplicateGroups(this._labelNewGroup,this._tabConfig.selectedTab)}),this.loadFields(),this.controlFieldConfig(),this._formConfigChanged=!0)}clearTempGroups(i=!1){var o;(null===(o=this._tempGroups)||void 0===o?void 0:o.length)>0&&(this._tempGroups=i?this._tempGroups.filter((i=>i.tab!==this._tabConfig.selectedTab)):[])}removeGroup(i){null!=i?this._tempGroups=this._tempGroups.filter(((o,n)=>n!==i&&o.tab===this._tabConfig.selectedTab||o.tab!==this._tabConfig.selectedTab)):this.updateFieldsToSave(this._sortableTimer)}checkGroupExists(i,o,n=!1){var t,s,e;const l=null===(t=this._tabConfig)||void 0===t?void 0:t.selectedTab,r=null===(s=this._layoutFormConfig)||void 0===s?void 0:s.find((i=>i.tab===l)),a=null===(e=null==r?void 0:r.groups)||void 0===e?void 0:e.map((i=>{var o;return null===(o=i.group)||void 0===o?void 0:o.toLowerCase()}));if(null==a?void 0:a.includes(null==i?void 0:i.toLowerCase())){const t=this.getMessage("snkFormConfig.confirm.title"),s=`\n ${this.getMessage("snkFormConfig.alert.titleGroupExists")}\n <b>${i}</b>\n ${this.getMessage("snkFormConfig.alert.inTab")}\n <b>${l===u.main?this.getMessage("snkFormConfig.form.mainArea"):l}</b>.\n <br/><br/>\n ${this.getMessage("snkFormConfig.alert.infoValidTitle")}\n `;return c.alert(t,s).then((()=>{var i,t;n?null===(i=this._newGroupBoxes[o])||void 0===i||i.applyFocusTextEdit():null===(t=this._currentGroupBoxes[l][o])||void 0===t||t.applyFocusTextEdit()})),!1}return!0}saveEditLabelTempGroup(i,o){const{newValue:n}=i.detail;null!=this._newGroupBoxes&&null!=this._newGroupBoxes[o]&&(this._newGroupBoxes[o].dataset.groupName=n)}saveEditLabelGroup(i){var o;const{value:n,newValue:t}=i.detail;null===(o=this._formConfig.fields)||void 0===o||o.forEach((i=>{i.group===n&&(i.group=t)})),this.loadFields(this._sortableTimer),this.controlFieldConfig(),this._formConfigChanged=!0}renderTempGroupByTab(i){return this._tempGroups.map(((o,t)=>{if(o.tab===i)return n("ez-collapsible-box",{ref:i=>this._newGroupBoxes[t]=i,id:`${C}-${t}`,editable:!0,removable:!0,"header-size":"large",label:o.group,"icon-placement":"left","data-group-name":o.group,"data-draggable-parent":"field",class:"form-config__add-group",onEzRemove:()=>this.removeGroup(t),onEzSaveEditLabel:i=>this.saveEditLabelTempGroup(i,t),onEzEditLabelMode:i=>this._editingTitleGroup=i.detail,conditionalSave:i=>this.checkGroupExists(i,t,!0)},this.getFieldsByGroup(o))}))}handleDuplicateGroups(i,o){var n;const t=this._layoutFormConfig[this._tabConfig.selectedIndex].groups.map((i=>i.group));return null!=t&&(null===(n=this._layoutFormConfig)||void 0===n||n.map((n=>{n.tab===o&&n.groups.some((o=>o.group===i))&&(i+=`${this.captureHighestValueTitle(t)}`)}))),i}captureHighestValueTitle(i){let o=[];return null==i||i.map((i=>{null!=i&&o.push(i.replace(/[^0-9]/g,""))})),Math.max.apply(null,o)>0?` (${Math.max.apply(null,o)+1})`:" (1)"}getLayoutFormConfig(){var i,o;if(null==(null===(i=this._formConfig)||void 0===i?void 0:i.fields))return;let n=[],t=[];for(const i of this._formConfig.fields)if(null==t.find((o=>i.name===o.name&&i.tab===o.tab))){t.push(i);const s=this.dataUnit.getField(i.name);if(null==s?void 0:s.visible){null!=i.label&&""!==i.label||(i.label=s.label),null!=i.tab&&""!==i.tab||(i.tab=this.getMessage("snkFormConfig.form.tabGeneral"));let t=n.find((o=>o.tab===i.tab));if(null==t){let s=null;if(null!=this._formConfig.tabs){const o=this._formConfig.tabs.filter((o=>o.label===i.tab));o.length>0&&(s=o[0].visible)}const e=(null===(o=i.tab)||void 0===o?void 0:o.label)||i.tab;t=null!==s?{tab:e,groups:[],visible:s}:{tab:e,groups:[],visible:!0},n.push(t)}const e=t.groups.find((o=>o.group===i.group));if(e)e.fields.push(i);else{const o={group:i.group,fields:[i]};void 0===i.group?t.groups.unshift(o):t.groups.push(o)}}}return n}configureTabs(i){var o;return null==(null===(o=this._formConfig)||void 0===o?void 0:o.tabs)?i:(null==i&&(i=[]),this._formConfig.tabs.map((o=>i.find((i=>{var n,t;return(null===(n=o.label)||void 0===n?void 0:n.toLowerCase())===(null===(t=i.tab)||void 0===t?void 0:t.toLowerCase())}))||{tab:o.label,groups:[],visible:o.visible})))}configureTabMain(i){return null==i&&(i=[]),null==i.find((i=>i.tab===u.main))&&i.unshift({tab:u.main,groups:[],visible:!0}),i}updateTabs(){const i=this.getTabsToSave();(null==i?void 0:i.length)>0&&(this._formConfig.tabs=i,1===i.length&&(this._tabSelected=0))}buildFormConfig(){var i;if(null==(null===(i=this._formConfig)||void 0===i?void 0:i.fields))return;let o=this.getLayoutFormConfig();o=this.configureTabs(o),o=this.configureTabMain(o),this._layoutFormConfig=o,this.updateTabs()}buildAvailableFields(){var i,o;if(null==(null===(i=this._formConfig)||void 0===i?void 0:i.fields))return;let n=[],t=this.dataUnit.metadata.fields;for(const i of this._formConfig.fields)n.push(i);const s=t.filter((({name:i,visible:o})=>!0===o&&!1===n.some((({name:o})=>o===i))));this._fieldsAvailable=s,this._listEnabledFields=s,null!=(null===(o=this._filterFieldsAvailable)||void 0===o?void 0:o.value)&&this.onFilterChange(this._filterFieldsAvailable.value)}changeTabSelected(i){this._tabSelected=i.index;const o=this._formContainer.querySelector("div#tab"+i.index);this._formContainer.querySelectorAll(".form-config__tab-content").forEach((i=>i.className="form-config__hide-content sc-snk-form-config")),o&&(o.className="form-config__tab-content ez-flex ez-flex--column ez-size-width--full ez-padding--medium sc-snk-form-config")}onFilterChange(i){this._fieldsAvailable=a.applyStringFilter(i,this._listEnabledFields,!0,"label")}orderFieldsAvailable(i){return a.sortAlphabetically(i)}handleLabelCounter(i){const o=[this.getMessage("snkFormConfig.availableFields.labelNoFields"),this.getMessage("snkFormConfig.availableFields.labelOneField")];return i>1?`${i} ${this.getMessage("snkFormConfig.availableFields.labelAvailableFields")}`:o[i]}controlAddFieldConfig(i){var o;if(this._formConfigChanged=!1,null==i)return;null==this._formConfig.fields&&(this._formConfig.fields=[]);const n=this._formConfig.fields.filter((o=>o.name===i.name&&o.tab&&i.tab));n.length>0?n.forEach((o=>{o.name=i.name,o.label=i.label,o.required=i.required,o.readOnly=i.readOnly,o.group=i.group})):this._formConfig.fields.push({name:i.name,label:i.label,required:i.required,readOnly:i.readOnly,group:i.group,tab:null===(o=this._tabConfig)||void 0===o?void 0:o.selectedTab}),this.loadFields(),this.controlFieldConfig(),this._formConfigChanged=!0,this.resetSortables()}controlRemoveFieldConfig(i,o){var n;this._formConfigChanged=!1,null!=i&&(this._formConfig.fields=null===(n=this._formConfig.fields)||void 0===n?void 0:n.filter((o=>o.name!==i.name)),this.loadFields(o),this.controlFieldConfig(),this._formConfigChanged=!0,this.resetSortables())}resetSortables(){this.controlSortableField(),this.controlSortableGroup()}handleFieldConfigChange(i,o=0){const{field:n,type:t}=i.detail;t!==m.configuration?t!==m.remove?t!==m.add||this.controlAddFieldConfig(n):this.controlRemoveFieldConfig(n,o):this.controlFieldConfig(n)}changeTabLabel(i){var o,n;const{value:t,newValue:s}=i.detail.detail;null===(o=this._formConfig.fields)||void 0===o||o.forEach((i=>{i.tab===t&&(i.tab=s)})),null===(n=this._formConfig.tabs)||void 0===n||n.forEach((i=>{i.label===t&&(i.label=s)})),this.loadFields(this._sortableTimer),this.controlFieldConfig(),this._formConfigChanged=!0}handleDeleteTab(i){let o={canClose:!1,labelCancel:this.getMessage("snkFormConfig.confirm.labelCancel"),labelConfirm:this.getMessage("snkFormConfig.confirm.labelDelete"),btnConfirmDanger:!1};const n=this.getMessage("snkFormConfig.confirm.title"),t=this.getMessage("snkFormConfig.confirm.deleteTab")+` <b>${i.detail.label}</b>?`;c.confirm(n,t,null,f.WARN,o).then((o=>{var n;o&&(this._formConfig.tabs=null===(n=this._formConfig.tabs)||void 0===n?void 0:n.filter((o=>o.label!==i.detail.label)),this.loadFields(this._sortableTimer),this.controlFieldConfig(),this._formConfigChanged=!0)}))}changeHideTab(i){var o;null===(o=this._formConfig.tabs)||void 0===o||o.forEach((o=>{o.label===i.detail.label&&(o.visible=!o.visible)})),this.loadFields(this._sortableTimer),this.controlFieldConfig(),this._formConfigChanged=!0}handleCanStartDragTab(){var i,o;const n=this._layoutFormConfig.map((i=>i.tab));for(const o of n)null===(i=this._currentGroupBoxes[o])||void 0===i||i.map((i=>null==i?void 0:i.cancelEdition()));null===(o=this._newGroupBoxes)||void 0===o||o.map((i=>null==i?void 0:i.cancelEdition()))}getMessage(i,o){return this.messagesBuilder.getMessage(i,o)}componentDidRender(){this.controlSortableField(),this.controlSortableGroup()}async componentWillRender(){if(null==this.messagesBuilder){const i=d.getContextValue("__SNK__APPLICATION__");this.messagesBuilder=i.messagesBuilder}}componentWillLoad(){this.loadConfig()}componentDidLoad(){r.addIDInfo(this._element,null,{dataUnit:this.dataUnit})}render(){var i,o,s,e;return n(t,null,n("div",{class:"ez-row ez-padding--medium"},n("div",{class:"ez-col ez-col--sd-7 ez-col--tb-9 ez-align--middle"},n("ez-button",{mode:"icon",title:this.getMessage("snkFormConfig.goBackTitle"),iconName:"arrow_back",class:"ez-padding--small",size:"small",onClick:()=>this.closeFormConfig(),id:"formConfigToBack"}),n("h1",{class:"ez-title ez-title--primary ez-title--extra-large ez-padding--small"},this.getMessage("snkFormConfig.title")),this._formConfigOptions&&n("ez-actions-button",{class:"form-config__actions-button ez-margin-left--medium",value:null===(i=this._optionFormConfigSelected)||void 0===i?void 0:i.origin,showLabel:!0,displayIcon:"chevron-down",checkOption:!0,size:"small",actions:this._formConfigOptions.map((i=>({value:i.origin,label:i.name}))),onEzAction:i=>this.controlSelectFormConfig(i),id:"selectConfig"})),n("div",{class:"ez-col ez-col--sd-5 ez-col--tb-3 ez-align--middle ez-align--right"},!0===this._formConfigChanged&&!1===this._optionFormConfigChanged&&n("div",{class:"ez-row ez-align--middle ez-align--right"},n("ez-button",{label:"Cancelar",class:"ez-padding-left--medium",size:"small",onClick:()=>this.cancelChangeConfig()}),n("ez-button",{label:"Salvar",class:"ez-button--primary ez-padding-left--medium",size:"small",onClick:()=>this.saveConfig()},n("ez-icon",{class:"ez-margin-right--small",slot:"leftIcon",iconName:"save"}))),!0===this._optionFormConfigChanged&&n("div",{class:"ez-row ez-align--middle ez-align--right"},n("ez-button",{label:"Cancelar",class:"ez-padding-left--medium",size:"small",onClick:()=>this.cancelChangeOptionConfig()}),n("ez-button",{label:this.getMessage("snkFormConfig.applyConfig"),class:"ez-button--primary ez-padding-left--medium",size:"small",onClick:()=>this.applyOptionConfig()})))),n("div",{class:"ez-row ez-padding--medium",ref:i=>this._sortableContainer=i},n("div",{class:"form-config__tab-container ez-col ez-col--sd-9 ez-col--tb-9 ez-padding-right--medium"},(null===(o=this._layoutFormConfig)||void 0===o?void 0:o.length)>0&&n("section",{class:"ez-box__container",ref:i=>this._formContainer=i},n("snk-tab-config",{ref:i=>this._tabConfig=i,selectedIndex:this._tabSelected,messagesBuilder:this.messagesBuilder,onEzTabChange:i=>this.changeTabSelected(i.detail),onEzOrderChange:i=>this.changeTabOrder(i.detail),onEditionTitleTab:i=>this.changeTabLabel(i),onDeleteTab:i=>this.handleDeleteTab(i),onHideTab:i=>this.changeHideTab(i),onCanStartDrag:()=>this.handleCanStartDragTab(),tabItems:this._layoutFormConfig.map((i=>({tabKey:i.tab,label:i.tab,visible:i.visible})))}),this._layoutFormConfig.map(((i,o)=>n("div",{id:"tab"+o,"data-draggable-parent":"group",class:this._tabSelected===o?"form-config__tab-content ez-flex ez-flex--column ez-size-width--full ez-padding--medium":"form-config__hide-content"},i.groups.map(((o,t)=>o.group?(null==this._currentGroupBoxes[i.tab]&&(this._currentGroupBoxes[i.tab]=[]),n("ez-collapsible-box",{ref:o=>this._currentGroupBoxes[i.tab][t]=o,editable:!0,removable:!0,"header-size":"large",label:o.group,"icon-placement":"left","data-group-name":o.group,"data-draggable-parent":"field","data-draggable-element":"group",onEzRemove:()=>this.removeGroup(),onEzSaveEditLabel:i=>this.saveEditLabelGroup(i),onEzEditLabelMode:i=>this._editingTitleGroup=i.detail,conditionalSave:i=>this.checkGroupExists(i,t)},this.getFieldsByGroup(o))):n("div",{class:"ez-flex ez-flex--column ez-size-width--full"},n("label",{class:"ez-text ez-text--secondary ez-margin-vertical--small"},this.getMessage("snkFormConfig.form.subTitleInfo")),n("div",{id:z,class:"ez-row","data-draggable-parent":"field"},this.getFieldsByGroup(o)),n("hr",{class:"ez-divider-horizontal ez-margin-vertical--medium"})))),this.renderTempGroupByTab(i.tab)))),n("div",{class:"form-config__btn-add-group ez-row"},n("div",{class:"form-config__btn-add-group-container ez-col ez-col--sd-12 ez-col--tb-12 ez-align--center"},n("ez-button",{label:this.getMessage("snkFormConfig.form.labelNewGroup"),class:"ez-padding-horizontal--small ez-button--primary",size:"small",onClick:()=>this.addNewGroup()},n("ez-icon",{class:"ez-margin-right--small",slot:"leftIcon",iconName:"plus"})))))),n("div",{class:"form-config__fields-available ez-col ez-col--sd-3 ez-col--tb-3"},n("section",{class:"ez-box__container ez-col ez-col--pn-12"},n("h1",{class:"ez-title ez-title--large ez-title--primary ez-padding-bottom--medium"},this.getMessage("snkFormConfig.availableFields.title")),n("ez-filter-input",{id:"searchFields",ref:i=>this._filterFieldsAvailable=i,label:this.getMessage("snkFormConfig.availableFields.labelSearchField"),onEzChange:i=>this.onFilterChange(i.detail)}),n("span",{class:"ez-box__label-counter ez-text ez-text--medium ez-text--primary ez-margin-bottom--medium"},this.handleLabelCounter(null===(s=this._fieldsAvailable)||void 0===s?void 0:s.length)),(null===(e=this._layoutFormConfig)||void 0===e?void 0:e.length)>0&&n("div",{id:k,class:"ez-row","data-draggable-parent":"field"},this.orderFieldsAvailable(this._fieldsAvailable).map((i=>n("div",{key:i.name,class:this._fieldsAvailableStyle,"data-draggable-element":"field",onMouseDown:i=>this.controlMoveField(i)},n("snk-field-config",{messagesBuilder:this.messagesBuilder,onEzClickIcon:i=>{this.handleFieldConfigChange(i)},dataUnit:this.dataUnit,fieldConfig:i,id:i.name})))))))))}get _element(){return s(this)}static get watchers(){return{configManager:["observeConfigManager"]}}};x.style=".sc-snk-form-config-h{--snk-form-config--z-index:var(--more-visible, 2);--snk-form-config--background-color:var(--background--xlight, #fff);--snk-form-config__icon--color:var(--text--disable, #AFB6C0);--snk-form-config__label-counter--font-weight:var(--text-weight--extra-small, 200);--snk-form-config__add-group-container--border-radius:var(--border--radius-medium, 12px);--snk-form-config__add-group-container--background-color:var(--background--medium, #d2dce9);--snk-form-config__add-group-container--padding:var(--space--small, 6px);--snk-form-config__add-group-content--border:2px dashed var(--color-strokes, #DCE0E8);--snk-form-config__add-group-content--border-radius:var(--border--radius-small, 6px);--snk-form-config__add-group-label--padding:var(--space--large, 24px);--snk-form-config__btn-add-group--padding:var(--space--large, 24px) var(--space--medium, 12px) 0;--snk-form-config__btn-add-group-container--padding:var(--space--medium, 12px);--snk-form-config__btn-add-group-container--border-radius:var(--border--radius-medium, 12px);--snk-form-config__btn-add-group-container--border:2px solid var(--color-strokes, #DCE0E8);--snk-form-config__btn-add-group-container--background-color:var(--background--body, #fafcff);display:flex;flex-direction:column;position:fixed;top:0;left:0;width:100%;height:100%;z-index:var(--snk-form-config--z-index);background-color:var(--snk-form-config--background-color)}.form-config__header-container.sc-snk-form-config{display:flex}.form-config__field-container.sc-snk-form-config{width:32%;padding:6px}.form-config__hide-content.sc-snk-form-config{display:none}ez-icon.sc-snk-form-config .left-icon.sc-snk-form-config{--ez-icon--color:var(--snk-form-config__icon--color)}.ez-box__label-counter.sc-snk-form-config{margin-top:-7px;font-weight:var(--snk-form-config__label-counter--font-weight)}.form-config__btn-options.sc-snk-form-config{--ez-button--min-width:300px;--ez-button--background-color:var(--snk-form-config--background-color)}[data-draggable-parent].sc-snk-form-config{position:relative}.form-config__field-config--selected.sc-snk-form-config{position:static}.form-config__field-config--dragged.sc-snk-form-config .draggable-mirror.sc-snk-form-config{z-index:var(--snk-form-config--z-index)}.form-config__config-options.sc-snk-form-config{position:relative;margin-top:-3px;min-width:100%;z-index:1}.form-config__tab-container.sc-snk-form-config,.form-config__fields-available.sc-snk-form-config{position:relative;height:100%;max-height:calc(100vh - 92px)}.form-config__tab-container.sc-snk-form-config .ez-box__container.sc-snk-form-config,.form-config__fields-available.sc-snk-form-config .ez-box__container.sc-snk-form-config{align-content:flex-start;height:100%}.form-config__fields-available.sc-snk-form-config [data-draggable-parent].sc-snk-form-config{align-content:flex-start;overflow-y:auto;height:100%;max-height:calc(100% - 122px)}.form-config__tab-content.sc-snk-form-config{align-content:flex-start;overflow-y:auto;height:auto;max-height:calc(100% - 128px)}[data-draggable-element].sc-snk-form-config{cursor:grab}.form-config__actions-button.sc-snk-form-config{--ez-actions-button__btn-action--min-width:235px}.form-config__add-group.sc-snk-form-config{position:relative;min-height:120px;margin-bottom:10px}.form-config__add-group-container.sc-snk-form-config{position:absolute;display:flex;flex-wrap:wrap;width:100%;box-sizing:border-box;border-radius:var(--snk-form-config__add-group-container--border-radius);background-color:var(--snk-form-config__add-group-container--background-color);padding:var(--snk-form-config__add-group-container--padding)}.form-config__add-group-content.sc-snk-form-config{width:100%;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;box-sizing:border-box;border:var(--snk-form-config__add-group-content--border);border-radius:var(--snk-form-config__add-group-content--border-radius)}.form-config__add-group-label.sc-snk-form-config{display:flex;justify-content:center;box-sizing:border-box;padding:var(--snk-form-config__add-group-label--padding)}.form-config__btn-add-group.sc-snk-form-config{position:relative;padding:var(--snk-form-config__btn-add-group--padding)}.form-config__btn-add-group-container.sc-snk-form-config{padding:var(--snk-form-config__btn-add-group-container--padding);border-radius:var(--snk-form-config__btn-add-group-container--border-radius);border:var(--snk-form-config__btn-add-group-container--border);background-color:var(--snk-form-config__btn-add-group-container--background-color)}ez-collapsible-box.draggable-mirror.sc-snk-form-config{display:table;background-color:var(--snk-form-config--background-color)}ez-collapsible-box.sc-snk-form-config{margin-bottom:10px}@media screen and (min-width: 480px){.form-config__field-config--selected.sc-snk-form-config .ez-flex.form-config__config-options.sc-snk-form-config{min-width:calc(300% + 12px)}.form-config__field-config--selected.sc-snk-form-config:nth-child(3n+2) .ez-flex.form-config__config-options.sc-snk-form-config{left:calc(100% / 1 * -1)}.form-config__field-config--selected.sc-snk-form-config:nth-child(3n+3) .ez-flex.form-config__config-options.sc-snk-form-config{left:calc(100% / 1 * -2)}}";export{x as snk_form_config}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{S as snk_guides_viewer}from"./p-cefba299.js";import"./p-d2d301a6.js";import"@sankhyalabs/core";import"./p-829d4045.js";import"./p-aff76a53.js";import"./p-df5451c7.js";import"./p-dc7c9047.js";import"./p-8d884fab.js";import"@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata";import"./p-ff1990ad.js";import"@sankhyalabs/ezui/dist/collection/utils/form";import"./p-c2495304.js";import"./p-7e7a7473.js";import"./p-30cf616e.js";import"./p-6dc031de.js";import"./p-b0ef4383.js";import"./p-af8efd95.js";import"./p-21749402.js";import"@sankhyalabs/ezui/dist/collection/utils/constants";import"./p-fe79f83a.js";import"@sankhyalabs/ezui/dist/collection/components/ez-grid/utils";import"@sankhyalabs/core/dist/utils/SortingUtils";import"./p-688dcb4c.js";import"@sankhyalabs/core/dist/dataunit/DataUnit";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e,r as t,g as n}from"./p-d2d301a6.js";import{ElementIDUtils as o}from"@sankhyalabs/core";import{ModalAction as i}from"@sankhyalabs/ezui/dist/collection/components/ez-modal-container";const s=({getMessage:t,changeInfo:n,data:i})=>{const{format:s,email:l}=i||{};return e("div",null,e("ez-text-input",Object.assign({label:`${t("snkExporter.emailSenderInfoStep_sendTo")} (obrigatório) *`,value:null==l?void 0:l.to,onEzChange:e=>{var t;return n("to",null===(t=e.detail)||void 0===t?void 0:t.trim())}},{[o.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:`${o.getInternalIDInfo("sendTo")}`})),e("ez-text-input",Object.assign({label:`${t("snkExporter.emailSenderInfoStep_subject")} (obrigatório) *`,value:null==l?void 0:l.subject,onEzChange:e=>{var t;return n("subject",null===(t=e.detail)||void 0===t?void 0:t.trim())}},{[o.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:`${o.getInternalIDInfo("subject")}`})),e("ez-text-area",Object.assign({label:t("snkExporter.emailSenderInfoStep_message"),value:null==l?void 0:l.message,onEzChange:e=>n("message",e.detail)},{[o.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:`${o.getInternalIDInfo("message")}`})),((null==l?void 0:l.attachments)||[]).map(((t,n)=>e("ez-file-item",Object.assign({class:"ez-padding-bottom--large",fileName:`${t.name}.${s}`,fileSize:t.size,canRemove:!1},{[o.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:`${o.getInternalIDInfo("fileItem_")+(n+1)}`})))))},l=({getMessage:t,changeInfo:n,data:i})=>{const s=(null==i?void 0:i.selectedRows)||0,l=[{label:t("snkExporter.emailSenderOptStep_formatPDF"),value:"pdf"},{label:t("snkExporter.emailSenderOptStep_formatXLSX"),value:"xlsx"}],a=[{label:t("snkExporter.emailSenderOptStep_allData"),value:"all"},{label:t("snkExporter.emailSenderOptStep_currentPage"),value:"page"}];if(s>0){const e=t(s>1?"snkExporter.emailSenderOptStep_someRecords":"snkExporter.emailSenderOptStep_oneRecord",{SELECTION_COUNT:s});a.push({label:e,value:"selection"})}return e("div",null,e("ez-radio-button",Object.assign({class:"ez-margin-bottom--large"},{[o.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:`${o.getInternalIDInfo("formato")}`},{label:t("snkExporter.emailSenderOptStep_lblFormat"),direction:"horizontal",value:null==i?void 0:i.format,onEzChange:e=>n("format",e.detail),options:l})),e("ez-radio-button",Object.assign({class:"ez-margin-bottom--large"},{[o.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:`${o.getInternalIDInfo("type")}`},{label:t("snkExporter.emailSenderOptStep_export"),value:(null==i?void 0:i.type)||"all",onEzChange:e=>n("type",e.detail),options:a})))},a=class{constructor(e){t(this,e),this._stepInfo=[{subTitle:"snkExporter.emailSenderOptStep_subtitle",firstButton:"snkExporter.emailSenderCancelButton",secondButton:"snkExporter.emailSenderNextButton",firstButtonAction:()=>this.close(),secondButtonAction:()=>this.changeStep(1)},{subTitle:"snkExporter.emailSenderInfoStep_subtitle",firstButton:"snkExporter.emailSenderBackButton",secondButton:"snkExporter.emailSenderSendButton",firstButtonAction:()=>this.changeStep(0),secondButtonAction:()=>this.send(),secondButtonEnabledTester:()=>this.isFilled(),secondButtonClass:"ez-button--primary"}],this._config=void 0,this._opened=!1,this._currentStep=0,this.getMessage=void 0}open(e){var t;return this._config=Object.assign(Object.assign({},e),{format:null!==(t=null==e?void 0:e.format)&&void 0!==t?t:"pdf"}),this._opened=!0,this.changeStep(0),new Promise((e=>{this._promiseResolver=e}))}close(){return this._opened=!1,new Promise((e=>{this._promiseResolver=e}))}getStepMessage(e){return this.getMessage((this._stepInfo[this._currentStep]||{})[e])}executeButtonAction(e){(this._stepInfo[this._currentStep]||{})[e?"firstButtonAction":"secondButtonAction"]()}checkButtonEnabled(e){const t=(this._stepInfo[this._currentStep]||{})[e?"firstButtonEnabledTester":"secondButtonEnabledTester"];return!t||t()}changeStep(e){this._currentStep=e,this._viewStack&&this._viewStack.show(this._currentStep)}send(){const{format:e,type:t,email:n,resolver:o}=this._config;o({format:e,type:t,email:n,report:void 0})}isFilled(){var e,t;return!(!(null===(e=this._config.email)||void 0===e?void 0:e.to)||!(null===(t=this._config.email)||void 0===t?void 0:t.subject))}updateEmailInfo(e,t){this._config=Object.assign(Object.assign({},this._config),{email:Object.assign(Object.assign({},this._config.email),{[e]:t})})}updateConfigInfo(e,t){this._config=Object.assign(Object.assign({},this._config),{[e]:t})}getSecondButtonClass(){return(this._stepInfo[this._currentStep]||{}).secondButtonClass||"ez-button--secondary"}render(){return o.addIDInfoIfNotExists(this._element,"snkExporterEmailSender"),e("ez-popup",{useHeader:!1,size:"x-small",heightMode:"auto",opened:this._opened},e("ez-modal-container",{onEzModalAction:e=>{e.detail===i.CLOSE&&this.close()},modalTitle:this.getMessage("snkExporter.emailSenderTitle"),modalSubTitle:this.getStepMessage("subTitle")},e("ez-view-stack",{ref:e=>this._viewStack=e},e("stack-item",null,e(l,{getMessage:this.getMessage,data:this._config,changeInfo:(e,t)=>this.updateConfigInfo(e,t)})),e("stack-item",null,e(s,{getMessage:this.getMessage,data:this._config,changeInfo:(e,t)=>this.updateEmailInfo(e,t)}))),e("div",{class:"ez-col ez-col--sd-12 ez-flex--justify-end ez-margin-vertical--small"},e("ez-button",Object.assign({class:"ez-button--tertiary ez-padding-right--medium",label:this.getStepMessage("firstButton"),onClick:()=>this.executeButtonAction(!0),enabled:this.checkButtonEnabled(!0)},{[o.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:`${o.getInternalIDInfo("firstButton")}`})),e("ez-button",Object.assign({class:this.getSecondButtonClass(),label:this.getStepMessage("secondButton"),onClick:()=>this.executeButtonAction(!1),enabled:this.checkButtonEnabled(!1)},{[o.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:`${o.getInternalIDInfo("secondButton")}`})))))}get _element(){return n(this)}};export{a as snk_exporter_email_sender}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{D as t}from"./p-dc7c9047.js";import"./p-af8efd95.js";import{SortMode as i,ApplicationContext as e,UserInterface as s,DateUtils as r,ObjectUtils as a,NumberUtils as o,DataType as n}from"@sankhyalabs/core";import"./p-30cf616e.js";import"./p-21749402.js";import"@sankhyalabs/ezui/dist/collection/utils/constants";import{UserInterface as l}from"@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata";import{P as c}from"./p-fe79f83a.js";import"./p-ff1990ad.js";import"./p-df5451c7.js";import d from"@sankhyalabs/ezui/dist/collection/components/ez-grid/utils/InMemoryFilterColumnDataSource";class u{static assertDefaultSorting(t,e){t&&e&&(e.defaultSorting=t.columns.filter((t=>null!=t.ascending)).sort(((t,i)=>t.orderIndex-i.orderIndex)).map((({name:t,ascending:s})=>{const{dataType:r}=e.getField(t);return{field:t,dataType:r,mode:s?i.ASC:i.DESC}})))}static find(i,s,r,a=!0,o,n){let l=[],c=[],d={},u=e.getContextValue("__SNK__APPLICATION__");if(s){if(!Array.isArray(s))throw new Error(u.messagesBuilder.getMessage("crudUtils.errorArray",null));s.forEach((t=>{l.push({name:t})}))}if(r)for(const t in r)r.hasOwnProperty(t)&&c.push({nome:t,valor:r[t]});o&&(d={expression:{$:o}});let f={requestBody:{entity:{name:i,criterio:c,fields:{field:l},literalCriteria:d,orderby:n}}};return new Promise((i=>{t.get().callServiceBroker("mge@crud.find",JSON.stringify(f)).then((t=>{var e;let s=null===(e=t.entidades)||void 0===e?void 0:e.entidade;if(null!=s){let t={fields:new Map};for(let i in s){let e=s[i];if(e.hasOwnProperty("$")&&t.fields.set(i,e.$),a)break}i(t)}else i(null)}))}))}}class f{setDataUnit(t){this._dataUnit=t}setApplication(t){this._application=t}formatLabel(t,i){const{userInterface:e}=this._dataUnit.getField(t);return e===s.DATETIME?r.formatDate(this._dataUnit.valueFromString(t,i)):String(this._dataUnit.getFormattedValue(t,i))}async getStaticOptions(t){return Promise.resolve(null==t?void 0:await c.getDistinct(this._dataUnit,t))}fetchData(t,i){return new Promise((e=>{this._application.executeSelectDistinct(this._dataUnit,i,t).then((t=>{e(t.map((t=>this._dataUnit.getField(i).userInterface===s.SEARCH?Object.assign(Object.assign({},JSON.parse(t)),{check:!0}):{value:t,label:this.formatLabel(i,t),check:!0})))}))}))}sortItems(t,i){return d.defaultSorterMultSelectionOption(this._dataUnit,t,i)}}class h{setGrid(t){this._grid||(this._grid=t,this.refreshSelectedRows())}setDataState(t){a.objectToString(t)!==a.objectToString(this._dataState)&&(this._dataState=t,this.refreshSelectedRows())}format(t,i,e){var s;if(!t)return t;const r=null===(s=this._dataState)||void 0===s?void 0:s.metadataByRow.get(e),a=null==r?void 0:r.getProp("rm_precision",i.name);return a||0===a?o.format(t,a,a):t}refreshSelectedRows(){var t;null===(t=this._grid)||void 0===t||t.refreshSelectedRows()}}class m{constructor(t,i){this.dataUnit=t,this.grid=i}async getColumnsMetadata(){var t;return this.columnsState=await(null===(t=this.grid)||void 0===t?void 0:t.getColumnsState())||[],await this.buildColumnsMetadata(this.columnsState)}getColumnsState(){return this.columnsState}async buildColumnsMetadata(t){var i,e;const s=[];for(const r of t){if(r.hidden&&"RECDESP"!==r.name)continue;const t=null===(i=this.dataUnit)||void 0===i?void 0:i.getField(r.name),a=await this.grid.getCustomValueFormatter(r.name);if(s.push({label:r.label,id:r.name,width:r.width,type:null==t?void 0:t.dataType,userInterface:null==t?void 0:t.userInterface,customFormatter:a}),null!=(null===(e=null==t?void 0:t.properties)||void 0===e?void 0:e.DESCRIPTIONFIELD)){const i=t.properties.mergedFrom;s.push({label:t.properties.DESCRIPTIONENTITY,id:`${i?i+".":""}${t.properties.ENTITYNAME}.${t.properties.DESCRIPTIONFIELD}`,width:r.width,type:n.TEXT,userInterface:l.LONGTEXT,descriptionFrom:t.name})}}return s||[]}}export{m as C,h as R,f as S,u as a}
|