@sankhyalabs/sankhyablocks 6.9.2 → 7.0.0
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-3aaa8a9f.js → ConfigStorage-97468a0f.js} +31 -25
- package/dist/cjs/{DataFetcher-093c47ae.js → DataFetcher-04c70ba9.js} +88 -24
- package/dist/cjs/{PersonalizedFilterUtils-cfcd9af2.js → PersonalizedFilterUtils-9848e09b.js} +18 -64
- package/dist/cjs/{SnkFormConfigManager-ddad3cbb.js → SnkFormConfigManager-bef6e022.js} +2 -2
- package/dist/cjs/{SnkMessageBuilder-e55c7afa.js → SnkMessageBuilder-f40df6d4.js} +20 -3
- package/dist/cjs/{dataunit-fetcher-2f67ac79.js → dataunit-fetcher-4102080d.js} +1 -1
- package/dist/cjs/{filter-bar-config-fetcher-81868495.js → filter-bar-config-fetcher-a7747f69.js} +23 -6
- package/dist/cjs/{form-config-fetcher-affb0b28.js → form-config-fetcher-56442594.js} +2 -2
- package/dist/cjs/index-8d94b7e0.js +7 -0
- package/dist/cjs/index-c5771aba.js +44 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{pesquisa-fetcher-21c3afc9.js → pesquisa-fetcher-cab451b6.js} +1 -1
- package/dist/cjs/{resource-fetcher-e71a11b8.js → resource-fetcher-260e98a4.js} +1 -1
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/snk-actions-button.cjs.entry.js +2 -2
- package/dist/cjs/snk-application.cjs.entry.js +8 -8
- package/dist/cjs/snk-attach.cjs.entry.js +2 -2
- package/dist/cjs/snk-crud.cjs.entry.js +2 -2
- package/dist/cjs/snk-data-exporter.cjs.entry.js +3 -3
- package/dist/cjs/{snk-data-unit-26cf970c.js → snk-data-unit-b0cc2d42.js} +1 -1
- package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
- package/dist/cjs/snk-detail-view.cjs.entry.js +9 -9
- package/dist/cjs/snk-expression-group_2.cjs.entry.js +542 -0
- package/dist/cjs/snk-filter-advanced-mode_2.cjs.entry.js +66 -0
- package/dist/cjs/snk-filter-bar.cjs.entry.js +17 -17
- package/dist/cjs/snk-filter-detail.cjs.entry.js +5 -5
- package/dist/cjs/{snk-expression-item_3.cjs.entry.js → snk-filter-field-search_2.cjs.entry.js} +23 -315
- package/dist/cjs/snk-filter-modal-item.cjs.entry.js +5 -5
- package/dist/cjs/snk-filter-modal.cjs.entry.js +2 -2
- package/dist/cjs/snk-form-config.cjs.entry.js +3 -3
- package/dist/cjs/snk-form.cjs.entry.js +6 -6
- package/dist/cjs/snk-grid-config.cjs.entry.js +5 -5
- package/dist/cjs/snk-grid.cjs.entry.js +5 -5
- package/dist/cjs/{snk-guides-viewer-b0f98cf4.js → snk-guides-viewer-897368ea.js} +3 -3
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +8 -8
- package/dist/cjs/snk-personalized-filter.cjs.entry.js +125 -34
- package/dist/cjs/snk-print-selector.cjs.entry.js +15 -11
- package/dist/cjs/snk-simple-crud.cjs.entry.js +2 -2
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +1 -1
- package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.css +5 -1
- package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +114 -23
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-group/snk-expression-group.js +4 -6
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.js +2 -1
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-advanced-mode/snk-filter-advanced-mode.css +10 -0
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-advanced-mode/snk-filter-advanced-mode.js +95 -0
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-assistent-mode/snk-filter-assistent-mode.css +66 -0
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-assistent-mode/snk-filter-assistent-mode.js +158 -0
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/snk-filter-param-config.js +8 -2
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/utils/PersonalizedFilterUtils.js +14 -23
- package/dist/collection/components/snk-print-selector/snk-print-selector.css +9 -1
- package/dist/collection/components/snk-print-selector/snk-print-selector.js +17 -14
- package/dist/collection/lib/configs/ConfigStorage.js +5 -3
- package/dist/collection/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.js +22 -5
- package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +22 -18
- package/dist/collection/lib/message/resources/snk-personalized-filter.msg.js +18 -2
- package/dist/collection/lib/message/resources/snk-print-selector.msg.js +2 -1
- package/dist/collection/lib/utils/PrintUtils.js +88 -24
- package/dist/components/ConfigStorage.js +27 -21
- package/dist/components/DataFetcher.js +88 -24
- package/dist/components/PersonalizedFilterUtils.js +14 -23
- package/dist/components/SnkMessageBuilder.js +20 -3
- package/dist/components/filter-bar-config-fetcher.js +22 -5
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +2 -0
- package/dist/components/snk-crud.js +34 -22
- package/dist/components/snk-detail-view2.js +49 -27
- package/dist/components/snk-expression-group2.js +4 -6
- package/dist/components/snk-expression-item2.js +2 -1
- package/dist/components/snk-filter-advanced-mode.d.ts +11 -0
- package/dist/components/snk-filter-advanced-mode.js +6 -0
- package/dist/components/snk-filter-advanced-mode2.js +46 -0
- package/dist/components/snk-filter-assistent-mode.d.ts +11 -0
- package/dist/components/snk-filter-assistent-mode.js +6 -0
- package/dist/components/snk-filter-assistent-mode2.js +77 -0
- package/dist/components/snk-filter-bar2.js +17 -5
- package/dist/components/snk-filter-param-config2.js +6 -0
- package/dist/components/snk-grid2.js +22 -10
- package/dist/components/snk-personalized-filter2.js +131 -28
- package/dist/components/snk-print-selector.js +14 -10
- package/dist/esm/{ConfigStorage-24b221ba.js → ConfigStorage-02f17a26.js} +31 -25
- package/dist/esm/{DataFetcher-6153ff3e.js → DataFetcher-fddeb917.js} +88 -24
- package/dist/esm/{PersonalizedFilterUtils-1a167d89.js → PersonalizedFilterUtils-731cae01.js} +16 -62
- package/dist/esm/{SnkFormConfigManager-fcbefc1a.js → SnkFormConfigManager-cd9e6cab.js} +2 -2
- package/dist/esm/{SnkMessageBuilder-96e66d9c.js → SnkMessageBuilder-5be56185.js} +20 -3
- package/dist/esm/{dataunit-fetcher-09586248.js → dataunit-fetcher-66f42154.js} +1 -1
- package/dist/esm/{filter-bar-config-fetcher-73ebc12f.js → filter-bar-config-fetcher-790283d8.js} +23 -6
- package/dist/esm/{form-config-fetcher-01e9985d.js → form-config-fetcher-533b895e.js} +2 -2
- package/dist/esm/index-620ac460.js +7 -0
- package/dist/esm/index-ae591a44.js +44 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{pesquisa-fetcher-829ec5a9.js → pesquisa-fetcher-4a702655.js} +1 -1
- package/dist/esm/{resource-fetcher-d053e214.js → resource-fetcher-0f20a072.js} +1 -1
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/snk-actions-button.entry.js +2 -2
- package/dist/esm/snk-application.entry.js +8 -8
- package/dist/esm/snk-attach.entry.js +2 -2
- package/dist/esm/snk-crud.entry.js +2 -2
- package/dist/esm/snk-data-exporter.entry.js +3 -3
- package/dist/esm/{snk-data-unit-0f2d3c74.js → snk-data-unit-b9b4bb5f.js} +1 -1
- package/dist/esm/snk-data-unit.entry.js +2 -2
- package/dist/esm/snk-detail-view.entry.js +9 -9
- package/dist/esm/snk-expression-group_2.entry.js +537 -0
- package/dist/esm/snk-filter-advanced-mode_2.entry.js +61 -0
- package/dist/esm/snk-filter-bar.entry.js +8 -8
- package/dist/esm/snk-filter-detail.entry.js +5 -5
- package/dist/esm/{snk-expression-item_3.entry.js → snk-filter-field-search_2.entry.js} +12 -303
- package/dist/esm/snk-filter-modal-item.entry.js +5 -5
- package/dist/esm/snk-filter-modal.entry.js +2 -2
- package/dist/esm/snk-form-config.entry.js +3 -3
- package/dist/esm/snk-form.entry.js +6 -6
- package/dist/esm/snk-grid-config.entry.js +5 -5
- package/dist/esm/snk-grid.entry.js +5 -5
- package/dist/esm/{snk-guides-viewer-ab5c376c.js → snk-guides-viewer-579c70cc.js} +3 -3
- package/dist/esm/snk-guides-viewer.entry.js +8 -8
- package/dist/esm/snk-personalized-filter.entry.js +122 -31
- package/dist/esm/snk-print-selector.entry.js +15 -11
- package/dist/esm/snk-simple-crud.entry.js +2 -2
- package/dist/sankhyablocks/{p-e665c93f.entry.js → p-19fdcf88.entry.js} +1 -1
- package/dist/sankhyablocks/{p-4ab8d0ee.entry.js → p-1fe2976e.entry.js} +1 -1
- package/dist/sankhyablocks/p-2227bb94.js +1 -0
- package/dist/sankhyablocks/{p-85e6068d.entry.js → p-2ddf3e87.entry.js} +1 -1
- package/dist/sankhyablocks/p-386102a7.entry.js +1 -0
- package/dist/sankhyablocks/{p-eaec700d.js → p-3b059f4e.js} +1 -1
- package/dist/sankhyablocks/p-4af6cbef.entry.js +1 -0
- package/dist/sankhyablocks/p-4bbc7aac.entry.js +1 -0
- package/dist/sankhyablocks/p-4f550a1a.js +1 -0
- package/dist/sankhyablocks/{p-7dd92fb8.entry.js → p-4f687570.entry.js} +1 -1
- package/dist/sankhyablocks/p-5098f618.js +1 -0
- package/dist/sankhyablocks/{p-16ad23d5.entry.js → p-5596a2dd.entry.js} +1 -1
- package/dist/sankhyablocks/p-7e636457.entry.js +1 -0
- package/dist/sankhyablocks/p-7f1c4687.js +56 -0
- package/dist/sankhyablocks/p-82800006.entry.js +1 -0
- package/dist/sankhyablocks/{p-05d82333.entry.js → p-88f4ef73.entry.js} +1 -1
- package/dist/sankhyablocks/{p-d20e2ce3.js → p-8f484733.js} +1 -1
- package/dist/sankhyablocks/{p-eb0c9f4c.js → p-90a926c7.js} +1 -1
- package/dist/sankhyablocks/{p-432dd007.entry.js → p-90e7c3a2.entry.js} +1 -1
- package/dist/sankhyablocks/p-933c0c0b.js +1 -0
- package/dist/sankhyablocks/p-9666c0d0.entry.js +1 -0
- package/dist/sankhyablocks/p-97720467.entry.js +1 -0
- package/dist/sankhyablocks/{p-a4cd60bf.entry.js → p-97c586ab.entry.js} +1 -1
- package/dist/sankhyablocks/{p-814f9247.js → p-982107dc.js} +1 -1
- package/dist/sankhyablocks/{p-354ce206.entry.js → p-9fa9331b.entry.js} +1 -1
- package/dist/sankhyablocks/{p-07cb8a03.entry.js → p-a357d13c.entry.js} +1 -1
- package/dist/sankhyablocks/{p-bfe8b96d.js → p-acd8b97b.js} +1 -1
- package/dist/sankhyablocks/{p-40a5d35e.entry.js → p-ad6673fb.entry.js} +1 -1
- package/dist/sankhyablocks/{p-3e8748b1.entry.js → p-af8ed6d5.entry.js} +1 -1
- package/dist/sankhyablocks/{p-bd1f8640.entry.js → p-bc19b890.entry.js} +1 -1
- package/dist/sankhyablocks/p-bd86c9d3.entry.js +1 -0
- package/dist/sankhyablocks/{p-1b596ea1.entry.js → p-cdbdcf13.entry.js} +1 -1
- package/dist/sankhyablocks/{p-89fb7531.js → p-d97eb781.js} +2 -2
- package/dist/sankhyablocks/{p-60ad0dea.js → p-f034254e.js} +1 -1
- package/dist/sankhyablocks/p-f4184ce7.js +1 -0
- package/dist/sankhyablocks/{p-9a7aafe4.js → p-fb1e5b6d.js} +1 -1
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-personalized-filter/interfaces/IPersonalizedFilter.d.ts +4 -0
- package/dist/types/components/snk-personalized-filter/snk-personalized-filter.d.ts +17 -6
- package/dist/types/components/snk-personalized-filter/subcomponents/snk-expression-group/snk-expression-group.d.ts +2 -2
- package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-advanced-mode/snk-filter-advanced-mode.d.ts +20 -0
- package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-assistent-mode/snk-filter-assistent-mode.d.ts +31 -0
- package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/snk-filter-param-config.d.ts +6 -0
- package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/utils/PersonalizedFilterUtils.d.ts +2 -2
- package/dist/types/components/snk-print-selector/snk-print-selector.d.ts +7 -1
- package/dist/types/components.d.ts +106 -4
- package/dist/types/lib/configs/ConfigStorage.d.ts +3 -2
- package/dist/types/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.d.ts +2 -1
- package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
- package/dist/types/lib/utils/PrintUtils.d.ts +5 -2
- package/package.json +1 -1
- package/react/components.d.ts +2 -0
- package/react/components.js +2 -0
- package/react/components.js.map +1 -1
- package/dist/cjs/IExpressionItem-0e32ebb7.js +0 -7
- package/dist/cjs/snk-expression-group.cjs.entry.js +0 -250
- package/dist/esm/IExpressionItem-21f225bf.js +0 -7
- package/dist/esm/snk-expression-group.entry.js +0 -246
- package/dist/sankhyablocks/p-13f0ed88.entry.js +0 -1
- package/dist/sankhyablocks/p-2b449454.js +0 -1
- package/dist/sankhyablocks/p-63bff2a8.js +0 -1
- package/dist/sankhyablocks/p-6f49f5d4.entry.js +0 -1
- package/dist/sankhyablocks/p-744d0fd2.js +0 -1
- package/dist/sankhyablocks/p-7d68a43a.js +0 -1
- package/dist/sankhyablocks/p-9404ad4d.entry.js +0 -1
- package/dist/sankhyablocks/p-ad4bb9d2.entry.js +0 -1
- package/dist/sankhyablocks/p-d9586ead.entry.js +0 -1
- package/dist/sankhyablocks/p-e789eb2d.js +0 -68
- package/dist/sankhyablocks/p-f8ce17d3.entry.js +0 -1
- package/dist/sankhyablocks/p-feb6963e.entry.js +0 -1
@@ -4,20 +4,22 @@ export declare class PrintUtils {
|
|
4
4
|
private static readonly LOCAL_SERVER_URI;
|
5
5
|
private static readonly ENCODED_PROPERTIES;
|
6
6
|
private static instance;
|
7
|
+
private appletImpressao;
|
7
8
|
private constructor();
|
8
9
|
static getInstance(): PrintUtils;
|
9
10
|
processPendingPrinting(transactionId: string): Promise<void>;
|
10
11
|
private findPendingPrints;
|
11
|
-
private findLocalPrinters;
|
12
12
|
getLocalPrinters(): Array<DataPrinter>;
|
13
13
|
private parsePrintData;
|
14
14
|
private normalize;
|
15
15
|
processLocalPrinting(localPrintings: Array<{
|
16
16
|
transactionId: string;
|
17
17
|
}>): void;
|
18
|
-
private doLocalPrinting;
|
19
18
|
private openSnkPrintSelector;
|
20
19
|
private saveSubstitutePrinter;
|
20
|
+
private processDirectPrint;
|
21
|
+
private getDefaultPrinterName;
|
22
|
+
private isPrinterNameAFile;
|
21
23
|
}
|
22
24
|
export interface PendingPrintJobData {
|
23
25
|
transactionId: string;
|
@@ -48,4 +50,5 @@ export interface PendingPrinter {
|
|
48
50
|
originalPrinterName: string;
|
49
51
|
printJobCount: number;
|
50
52
|
docTypeDescription: string;
|
53
|
+
printerUri?: string;
|
51
54
|
}
|
package/package.json
CHANGED
package/react/components.d.ts
CHANGED
@@ -16,6 +16,8 @@ export declare const SnkExporterEmailSender: import("react").ForwardRefExoticCom
|
|
16
16
|
export declare const SnkExpressionGroup: import("react").ForwardRefExoticComponent<JSX.SnkExpressionGroup & Omit<import("react").HTMLAttributes<HTMLSnkExpressionGroupElement>, "style"> & import("./react-component-lib/interfaces").StyleReactProps & import("react").RefAttributes<HTMLSnkExpressionGroupElement>>;
|
17
17
|
export declare const SnkExpressionItem: import("react").ForwardRefExoticComponent<JSX.SnkExpressionItem & Omit<import("react").HTMLAttributes<HTMLSnkExpressionItemElement>, "style"> & import("./react-component-lib/interfaces").StyleReactProps & import("react").RefAttributes<HTMLSnkExpressionItemElement>>;
|
18
18
|
export declare const SnkFieldConfig: import("react").ForwardRefExoticComponent<JSX.SnkFieldConfig & Omit<import("react").HTMLAttributes<HTMLSnkFieldConfigElement>, "style"> & import("./react-component-lib/interfaces").StyleReactProps & import("react").RefAttributes<HTMLSnkFieldConfigElement>>;
|
19
|
+
export declare const SnkFilterAdvancedMode: import("react").ForwardRefExoticComponent<JSX.SnkFilterAdvancedMode & Omit<import("react").HTMLAttributes<HTMLSnkFilterAdvancedModeElement>, "style"> & import("./react-component-lib/interfaces").StyleReactProps & import("react").RefAttributes<HTMLSnkFilterAdvancedModeElement>>;
|
20
|
+
export declare const SnkFilterAssistentMode: import("react").ForwardRefExoticComponent<JSX.SnkFilterAssistentMode & Omit<import("react").HTMLAttributes<HTMLSnkFilterAssistentModeElement>, "style"> & import("./react-component-lib/interfaces").StyleReactProps & import("react").RefAttributes<HTMLSnkFilterAssistentModeElement>>;
|
19
21
|
export declare const SnkFilterBar: import("react").ForwardRefExoticComponent<JSX.SnkFilterBar & Omit<import("react").HTMLAttributes<HTMLSnkFilterBarElement>, "style"> & import("./react-component-lib/interfaces").StyleReactProps & import("react").RefAttributes<HTMLSnkFilterBarElement>>;
|
20
22
|
export declare const SnkFilterBinarySelect: import("react").ForwardRefExoticComponent<JSX.SnkFilterBinarySelect & Omit<import("react").HTMLAttributes<HTMLSnkFilterBinarySelectElement>, "style"> & import("./react-component-lib/interfaces").StyleReactProps & import("react").RefAttributes<HTMLSnkFilterBinarySelectElement>>;
|
21
23
|
export declare const SnkFilterDetail: import("react").ForwardRefExoticComponent<JSX.SnkFilterDetail & Omit<import("react").HTMLAttributes<HTMLSnkFilterDetailElement>, "style"> & import("./react-component-lib/interfaces").StyleReactProps & import("react").RefAttributes<HTMLSnkFilterDetailElement>>;
|
package/react/components.js
CHANGED
@@ -18,6 +18,8 @@ export const SnkExporterEmailSender = /*@__PURE__*/ createReactComponent('snk-ex
|
|
18
18
|
export const SnkExpressionGroup = /*@__PURE__*/ createReactComponent('snk-expression-group');
|
19
19
|
export const SnkExpressionItem = /*@__PURE__*/ createReactComponent('snk-expression-item');
|
20
20
|
export const SnkFieldConfig = /*@__PURE__*/ createReactComponent('snk-field-config');
|
21
|
+
export const SnkFilterAdvancedMode = /*@__PURE__*/ createReactComponent('snk-filter-advanced-mode');
|
22
|
+
export const SnkFilterAssistentMode = /*@__PURE__*/ createReactComponent('snk-filter-assistent-mode');
|
21
23
|
export const SnkFilterBar = /*@__PURE__*/ createReactComponent('snk-filter-bar');
|
22
24
|
export const SnkFilterBinarySelect = /*@__PURE__*/ createReactComponent('snk-filter-binary-select');
|
23
25
|
export const SnkFilterDetail = /*@__PURE__*/ createReactComponent('snk-filter-detail');
|
package/react/components.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"components.js","sourceRoot":"","sources":["../src/components.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"components.js","sourceRoot":"","sources":["../src/components.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,oBAAoB;AACpB,kCAAkC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAM7D,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAA,oBAAoB,CAAoD,oBAAoB,CAAC,CAAC;AAC3I,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAA,oBAAoB,CAAgD,kBAAkB,CAAC,CAAC;AACnI,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAA,oBAAoB,CAAgD,iBAAiB,CAAC,CAAC;AAClI,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,CAAA,oBAAoB,CAAsC,YAAY,CAAC,CAAC;AAC9G,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAA,oBAAoB,CAAoD,oBAAoB,CAAC,CAAC;AAC3I,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAA,oBAAoB,CAAoD,oBAAoB,CAAC,CAAC;AAC3I,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAA,oBAAoB,CAAkD,kBAAkB,CAAC,CAAC;AACtI,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAA,oBAAoB,CAAkC,UAAU,CAAC,CAAC;AACtG,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAA,oBAAoB,CAAkD,mBAAmB,CAAC,CAAC;AACvI,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAA,oBAAoB,CAA0C,eAAe,CAAC,CAAC;AACvH,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAA,oBAAoB,CAA8C,iBAAiB,CAAC,CAAC;AAC/H,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAA,oBAAoB,CAA8C,iBAAiB,CAAC,CAAC;AAC/H,MAAM,CAAC,MAAM,sBAAsB,GAAG,aAAa,CAAA,oBAAoB,CAAgE,2BAA2B,CAAC,CAAC;AACpK,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAA,oBAAoB,CAAwD,sBAAsB,CAAC,CAAC;AACnJ,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAAA,oBAAoB,CAAsD,qBAAqB,CAAC,CAAC;AAC/I,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAA,oBAAoB,CAAgD,kBAAkB,CAAC,CAAC;AACnI,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAA,oBAAoB,CAA8D,0BAA0B,CAAC,CAAC;AAChK,MAAM,CAAC,MAAM,sBAAsB,GAAG,aAAa,CAAA,oBAAoB,CAAgE,2BAA2B,CAAC,CAAC;AACpK,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAA,oBAAoB,CAA4C,gBAAgB,CAAC,CAAC;AAC3H,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAA,oBAAoB,CAA8D,0BAA0B,CAAC,CAAC;AAChK,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAA,oBAAoB,CAAkD,mBAAmB,CAAC,CAAC;AACvI,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAAA,oBAAoB,CAA4D,yBAAyB,CAAC,CAAC;AAC5J,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAA,oBAAoB,CAA8C,iBAAiB,CAAC,CAAC;AAC/H,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAA,oBAAoB,CAA8C,iBAAiB,CAAC,CAAC;AAC/H,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAA,oBAAoB,CAAgD,kBAAkB,CAAC,CAAC;AACnI,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAA,oBAAoB,CAAwD,uBAAuB,CAAC,CAAC;AACpJ,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAAA,oBAAoB,CAA4D,yBAAyB,CAAC,CAAC;AAC5J,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAA,oBAAoB,CAAkD,mBAAmB,CAAC,CAAC;AACvI,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAAA,oBAAoB,CAA4D,yBAAyB,CAAC,CAAC;AAC5J,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAA,oBAAoB,CAAkD,mBAAmB,CAAC,CAAC;AACvI,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAA,oBAAoB,CAAkD,mBAAmB,CAAC,CAAC;AACvI,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAA,oBAAoB,CAA8C,iBAAiB,CAAC,CAAC;AAC/H,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAA,oBAAoB,CAAkC,UAAU,CAAC,CAAC;AACtG,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAA,oBAAoB,CAA8C,iBAAiB,CAAC,CAAC;AAC/H,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAA,oBAAoB,CAAgD,kBAAkB,CAAC,CAAC;AACnI,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAA,oBAAoB,CAA0C,eAAe,CAAC,CAAC;AACvH,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAA,oBAAoB,CAAkC,UAAU,CAAC,CAAC;AACtG,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAA,oBAAoB,CAA8C,iBAAiB,CAAC,CAAC;AAC/H,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAA,oBAAoB,CAAkD,mBAAmB,CAAC,CAAC;AACvI,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAA,oBAAoB,CAA8D,yBAAyB,CAAC,CAAC;AAC/J,MAAM,CAAC,MAAM,2BAA2B,GAAG,aAAa,CAAA,oBAAoB,CAA0E,gCAAgC,CAAC,CAAC;AACxL,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAA,oBAAoB,CAA0C,cAAc,CAAC,CAAC;AACtH,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAA,oBAAoB,CAAoD,oBAAoB,CAAC,CAAC;AAC3I,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAA,oBAAoB,CAA4C,gBAAgB,CAAC,CAAC;AAC3H,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAA,oBAAoB,CAA4C,gBAAgB,CAAC,CAAC;AAC3H,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAA,oBAAoB,CAA8C,iBAAiB,CAAC,CAAC;AAC/H,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAA,oBAAoB,CAA4C,gBAAgB,CAAC,CAAC;AAC3H,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAAA,oBAAoB,CAAwC,aAAa,CAAC,CAAC;AAClH,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAA,oBAAoB,CAA8C,gBAAgB,CAAC,CAAC"}
|
@@ -1,250 +0,0 @@
|
|
1
|
-
'use strict';
|
2
|
-
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
4
|
-
|
5
|
-
const index = require('./index-f9e81701.js');
|
6
|
-
const IExpressionItem = require('./IExpressionItem-0e32ebb7.js');
|
7
|
-
const utils = require('@sankhyalabs/ezui/dist/collection/utils');
|
8
|
-
const core = require('@sankhyalabs/core');
|
9
|
-
|
10
|
-
const snkExpressionGroupCss = ".sc-snk-expression-group-h{display:block;--snk-expression-group--container-condition--width:184px;--snk-expression-group--container-condition--height:38px;--snk-expression-group--container-condition--border-radius:var(--border--radius-medium, 12px);--snk-expression-group--container-option--width:85px;--snk-expression-group__container-condition--background-and:#66B6A0;--snk-expression-group__container-condition--background-or:#EBC65E;--snk-expression-group__container-expression--padding-left:26px;--snk-expression-group__background-color-dashed:var(--background--body, #fafcff)}.snk-expression-group__container-condition.sc-snk-expression-group{width:var(--snk-expression-group--container-condition--width);height:var(--snk-expression-group--container-condition--height);border-radius:var(--snk-expression-group--container-condition--border-radius);z-index:var(--more-visible--2x, 3)}.snk-expression-group__container-option.sc-snk-expression-group{width:var(--snk-expression-group--container-option--width)}.snk-expression-group__container-condition[data-condition=\"AND\"].sc-snk-expression-group{background-color:var(--snk-expression-group__container-condition--background-and)}.snk-expression-group__container-condition[data-condition=\"OR\"].sc-snk-expression-group{background-color:var(--snk-expression-group__container-condition--background-or)}.snk-expression-group__container-expression.sc-snk-expression-group{padding-left:var(--snk-expression-group__container-expression--padding-left)}.dashes.sc-snk-expression-group{z-index:var(--visible, 1);background:var(--snk-expression-group__background-color-dashed);border-left:2px dashed var(--text-secondary, #A2ABB9);position:absolute;width:15px;height:58px;margin-left:-15px;margin-top:-36.5px}.horizontal-dashes.sc-snk-expression-group{z-index:var(--more-visible, 2);border-bottom:2px dashed var(--text-secondary, #A2ABB9);position:absolute;width:15px;height:54px;margin-left:-15px;margin-top:-33.5px}.hidden.sc-snk-expression-group{display:none}";
|
11
|
-
|
12
|
-
const SnkExpressionGroup = class {
|
13
|
-
constructor(hostRef) {
|
14
|
-
index.registerInstance(this, hostRef);
|
15
|
-
this.ezFilterGroupChange = index.createEvent(this, "ezFilterGroupChange", 7);
|
16
|
-
this.ezFilterGroupRemove = index.createEvent(this, "ezFilterGroupRemove", 7);
|
17
|
-
this.ezExpressionGroupLayoutChanged = index.createEvent(this, "ezExpressionLayoutChanged", 7);
|
18
|
-
this.FIRST_LEVEL = "0";
|
19
|
-
this.LIMIT_GROUP_LEVEL = 4;
|
20
|
-
this.application = core.ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
21
|
-
this._conditionOperator = IExpressionItem.FilterGroupCondition.AND;
|
22
|
-
this._group = undefined;
|
23
|
-
this._selfTop = 0;
|
24
|
-
this.canAddExpression = true;
|
25
|
-
this._showDashes = true;
|
26
|
-
this.parentTop = 0;
|
27
|
-
this.group = undefined;
|
28
|
-
this.messagesBuilder = undefined;
|
29
|
-
this.filterId = undefined;
|
30
|
-
this.entityURI = undefined;
|
31
|
-
}
|
32
|
-
/**
|
33
|
-
* Listener para capturar adição e remoção de grupos e items de expressão.
|
34
|
-
*/
|
35
|
-
todoCompletedHandler(_) {
|
36
|
-
this.updateDashes();
|
37
|
-
}
|
38
|
-
/*
|
39
|
-
* Retorna o grupo da expressão.
|
40
|
-
*/
|
41
|
-
async getExpressionGroup() {
|
42
|
-
return this._group;
|
43
|
-
}
|
44
|
-
watchGroup(newValue) {
|
45
|
-
this._group = newValue;
|
46
|
-
this._conditionOperator = this.getOperand();
|
47
|
-
}
|
48
|
-
componentWillLoad() {
|
49
|
-
this._group = this.group;
|
50
|
-
this._conditionOperator = this.getOperand();
|
51
|
-
if (!this.getDataGroupLevel()) {
|
52
|
-
this._element.setAttribute('data-group-level', this.FIRST_LEVEL);
|
53
|
-
}
|
54
|
-
if (!this.filterId) {
|
55
|
-
this.canAddExpression = false;
|
56
|
-
}
|
57
|
-
}
|
58
|
-
componentDidRender() {
|
59
|
-
this.setSelfTop();
|
60
|
-
}
|
61
|
-
changeHandler() {
|
62
|
-
this.ezExpressionGroupLayoutChanged.emit();
|
63
|
-
}
|
64
|
-
/**
|
65
|
-
* Função que define o valor atualizado da propriedade top do elemento em tela para calcular o tamanho do tracejado.
|
66
|
-
*/
|
67
|
-
setSelfTop() {
|
68
|
-
this._selfTop = this._element.getBoundingClientRect().top;
|
69
|
-
}
|
70
|
-
/**
|
71
|
-
* Função que calcula o tamanho que deve ter o tracejado.
|
72
|
-
*/
|
73
|
-
getDashedHeight() {
|
74
|
-
return this._selfTop - this.parentTop;
|
75
|
-
}
|
76
|
-
getOperand() {
|
77
|
-
return !this._group.operand ? IExpressionItem.FilterGroupCondition.AND : this._group.operand;
|
78
|
-
}
|
79
|
-
getMessage(key, params) {
|
80
|
-
return this.application.messagesBuilder.getMessage(key, params);
|
81
|
-
}
|
82
|
-
updateDashes() {
|
83
|
-
this._showDashes = false;
|
84
|
-
this.setSelfTop();
|
85
|
-
this._showDashes = true;
|
86
|
-
}
|
87
|
-
renderExpressionItems() {
|
88
|
-
var _a;
|
89
|
-
return (_a = this._group.items) === null || _a === void 0 ? void 0 : _a.map((item) => (index.h("snk-expression-item", { key: item.id, class: "ez-padding-top--small snk-expression-group__item", expression: item, canRemove: this._group.items.length > 1, onEzFilterItemChange: () => this.handleFilterItemChange(), onEzFilterItemRemove: (evt) => this.handleFilterItemRemove(evt, item.id), messagesBuilder: this.messagesBuilder, entityURI: this.entityURI })));
|
90
|
-
}
|
91
|
-
renderGroups() {
|
92
|
-
var _a;
|
93
|
-
const currentLevel = parseInt(this.getDataGroupLevel() || '0');
|
94
|
-
const newLevel = currentLevel + 1;
|
95
|
-
return (_a = this._group.childrenGroups) === null || _a === void 0 ? void 0 : _a.map((group) => (index.h("snk-expression-group", { key: group.id, group: group, messagesBuilder: this.messagesBuilder, parentTop: this._selfTop, "data-group-level": newLevel, onEzFilterGroupRemove: (evt) => this.handleFilterGroupRemove(evt, group.id), entityURI: this.entityURI })));
|
96
|
-
}
|
97
|
-
handleFilterGroupRemove(evt, groupId) {
|
98
|
-
this.onStopPropagation(evt);
|
99
|
-
this._group.childrenGroups = this._group.childrenGroups.filter(group => group.id !== groupId);
|
100
|
-
index.forceUpdate(this);
|
101
|
-
this.ezFilterGroupChange.emit(this._group);
|
102
|
-
this.changeHandler();
|
103
|
-
}
|
104
|
-
handleFilterItemRemove(evt, itemId) {
|
105
|
-
this.onStopPropagation(evt);
|
106
|
-
this._group.items = this._group.items.filter(item => item.id !== itemId);
|
107
|
-
index.forceUpdate(this);
|
108
|
-
this.ezFilterGroupChange.emit(this._group);
|
109
|
-
this.changeHandler();
|
110
|
-
this.canAddExpression = true;
|
111
|
-
}
|
112
|
-
isFilledItem(item) {
|
113
|
-
if (!item.fieldName || !item.operand)
|
114
|
-
return false;
|
115
|
-
if (item.operand === 'NULL' || item.operand === 'NOT_NULL') {
|
116
|
-
return true;
|
117
|
-
}
|
118
|
-
else {
|
119
|
-
return item.paramVariable || (item.userInterface === 'SWITCH') ? true : !!item.value;
|
120
|
-
}
|
121
|
-
}
|
122
|
-
handleFilterItemChange() {
|
123
|
-
this.ezFilterGroupChange.emit(this._group);
|
124
|
-
this.canAddExpression = this.group.items.every(this.isFilledItem);
|
125
|
-
}
|
126
|
-
handleAddExpression() {
|
127
|
-
const newItem = {
|
128
|
-
id: core.StringUtils.generateUUID(),
|
129
|
-
entityName: "",
|
130
|
-
fieldName: "",
|
131
|
-
description: "",
|
132
|
-
label: "Valor",
|
133
|
-
type: undefined,
|
134
|
-
expression: undefined,
|
135
|
-
operand: undefined,
|
136
|
-
paramVariable: false,
|
137
|
-
value: undefined,
|
138
|
-
systemConfig: null,
|
139
|
-
userConfig: null
|
140
|
-
};
|
141
|
-
this._group.items.push(newItem);
|
142
|
-
index.forceUpdate(this);
|
143
|
-
this.ezFilterGroupChange.emit(this.group);
|
144
|
-
this.changeHandler();
|
145
|
-
this.canAddExpression = false;
|
146
|
-
}
|
147
|
-
handleAddGroup() {
|
148
|
-
var _a;
|
149
|
-
const newGroup = {
|
150
|
-
id: core.StringUtils.generateUUID(),
|
151
|
-
items: [
|
152
|
-
{
|
153
|
-
id: core.StringUtils.generateUUID(),
|
154
|
-
entityName: "",
|
155
|
-
fieldName: "",
|
156
|
-
description: "",
|
157
|
-
label: "Valor",
|
158
|
-
type: undefined,
|
159
|
-
expression: undefined,
|
160
|
-
operand: undefined,
|
161
|
-
paramVariable: false,
|
162
|
-
value: undefined,
|
163
|
-
systemConfig: null,
|
164
|
-
userConfig: null
|
165
|
-
}
|
166
|
-
],
|
167
|
-
childrenGroups: [],
|
168
|
-
operand: IExpressionItem.FilterGroupCondition.AND
|
169
|
-
};
|
170
|
-
this._group.childrenGroups = (_a = this._group.childrenGroups) !== null && _a !== void 0 ? _a : [];
|
171
|
-
this._group.childrenGroups.push(newGroup);
|
172
|
-
index.forceUpdate(this);
|
173
|
-
this.ezFilterGroupChange.emit(this.group);
|
174
|
-
this.changeHandler();
|
175
|
-
}
|
176
|
-
buildGroupStyle() {
|
177
|
-
return {
|
178
|
-
height: `${this.getDashedHeight()}px`,
|
179
|
-
marginTop: `${-(this.getDashedHeight()) + 20}px`,
|
180
|
-
};
|
181
|
-
}
|
182
|
-
handleConditionOperatorChange(newOperator) {
|
183
|
-
this._conditionOperator = newOperator;
|
184
|
-
this._group.operand = IExpressionItem.FilterGroupCondition[newOperator];
|
185
|
-
this.ezFilterGroupChange.emit(this._group);
|
186
|
-
}
|
187
|
-
confirmRemoveGroup(evt) {
|
188
|
-
this.onStopPropagation(evt);
|
189
|
-
utils.ApplicationUtils.confirm(this.getMessage("snkPersonalizedFilter.confirmGroup.title"), this.getMessage("snkPersonalizedFilter.confirmGroup.description"))
|
190
|
-
.then((canRemove) => {
|
191
|
-
if (canRemove) {
|
192
|
-
this.ezFilterGroupRemove.emit(this._group);
|
193
|
-
}
|
194
|
-
});
|
195
|
-
}
|
196
|
-
getTooltipMessageForOperator() {
|
197
|
-
const groupLevel = this.getDataGroupLevel();
|
198
|
-
if (groupLevel === this.FIRST_LEVEL && this._group.items.length === 1) {
|
199
|
-
return this.getMessage("snkPersonalizedFilter.operador.firstLevel");
|
200
|
-
}
|
201
|
-
if (this._conditionOperator === IExpressionItem.FilterGroupCondition.AND) {
|
202
|
-
return this.getMessage("snkPersonalizedFilter.operador.and");
|
203
|
-
}
|
204
|
-
else if (this._conditionOperator === IExpressionItem.FilterGroupCondition.OR) {
|
205
|
-
return this.getMessage("snkPersonalizedFilter.operador.or");
|
206
|
-
}
|
207
|
-
}
|
208
|
-
getDataGroupLevel() {
|
209
|
-
return this._element.getAttribute('data-group-level');
|
210
|
-
}
|
211
|
-
canAddGroup() {
|
212
|
-
const dataGroupLevel = Number(this.getDataGroupLevel() || this.FIRST_LEVEL);
|
213
|
-
return dataGroupLevel < this.LIMIT_GROUP_LEVEL;
|
214
|
-
}
|
215
|
-
isFirstLevel() {
|
216
|
-
return Boolean(this.getDataGroupLevel() === this.FIRST_LEVEL);
|
217
|
-
}
|
218
|
-
onStopPropagation(evt) {
|
219
|
-
evt.preventDefault();
|
220
|
-
evt.stopPropagation();
|
221
|
-
}
|
222
|
-
getMessageAddTooltip() {
|
223
|
-
if (this.isFirstLevel()) {
|
224
|
-
const allValidItems = this.group.items.every(item => {
|
225
|
-
if (!item.fieldName || !item.operand)
|
226
|
-
return false;
|
227
|
-
return item.paramVariable || !!item.value;
|
228
|
-
});
|
229
|
-
return allValidItems ? this.getMessage("snkPersonalizedFilter.info.labelAddNewExpression") : this.getMessage("snkPersonalizedFilter.info.labelDisabledAddExpressionButton");
|
230
|
-
}
|
231
|
-
else {
|
232
|
-
return this.canAddExpression ? this.getMessage("snkPersonalizedFilter.info.labelAddNewExpression") : this.getMessage("snkPersonalizedFilter.info.labelDisabledAddExpressionButton");
|
233
|
-
}
|
234
|
-
}
|
235
|
-
canChangeGroupCondition() {
|
236
|
-
const membersCount = this._group.items.length + this._group.childrenGroups.length;
|
237
|
-
return membersCount > 1;
|
238
|
-
}
|
239
|
-
render() {
|
240
|
-
const canAddGroup = this.canAddGroup();
|
241
|
-
return (index.h(index.Host, null, index.h("div", { class: !this.isFirstLevel() && this._showDashes ? 'dashes' : 'hidden', style: this.buildGroupStyle() }), index.h("div", { class: !this.isFirstLevel() && this._showDashes ? 'horizontal-dashes' : 'hidden' }), index.h("div", { class: 'ez-flex ez-flex--align-items-center' }, index.h("div", { class: 'snk-expression-group__container-condition ez-flex ez-flex-item--align-center ez-flex--align-items-center', "data-condition": this._conditionOperator, title: this.getTooltipMessageForOperator() }, index.h("label", { class: "ez-label ez-padding-right--medium ez-padding-left--medium ez-title--primary" }, this.getMessage("snkPersonalizedFilter.info.condition")), index.h("div", null, index.h("ez-combo-box", Object.assign({ class: "snk-expression-group__container-option", canShowError: false, mode: "slim", suppressEmptyOption: true, enabled: this.canChangeGroupCondition(), value: this._conditionOperator, onEzChange: (evt) => this.handleConditionOperatorChange(evt.detail.value) }, { [core.ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `comboBoxConditions_level_${this.getDataGroupLevel()}` }), index.h("option", { value: IExpressionItem.FilterGroupCondition.AND }, "E"), index.h("option", { value: IExpressionItem.FilterGroupCondition.OR }, "OU")))), index.h("ez-button", { class: "ez-padding-right--medium ez-padding-left--medium", mode: "icon", iconName: "plus", size: "small", enabled: this.canAddExpression, title: this.getMessageAddTooltip(), onClick: () => this.handleAddExpression() }), index.h("ez-button", { label: this.getMessage("snkPersonalizedFilter.info.addGroup"), size: "small", enabled: canAddGroup, title: !canAddGroup ? this.getMessage('snkPersonalizedFilter.info.labelDisabledAddGroupButton', { LIMIT_GROUP_LEVEL: this.LIMIT_GROUP_LEVEL + 1 }) : '', onClick: () => this.handleAddGroup() }, index.h("ez-icon", { slot: "leftIcon", iconName: "plus" })), !this.isFirstLevel() && index.h("ez-button", { title: this.getMessage("snkPersonalizedFilter.info.labelDeleteExpression"), class: "ez-padding-left--medium", mode: "icon", iconName: "delete", size: "small", onClick: (evt) => this.confirmRemoveGroup(evt) })), index.h("div", { class: "ez-padding-top--small snk-expression-group__container-expression" }, index.h("div", { class: "ez-padding-top--small" }, this.renderExpressionItems())), index.h("div", { class: "ez-padding-top--small snk-expression-group__container-expression" }, index.h("div", { class: "ez-padding-top--small" }, this.renderGroups()))));
|
242
|
-
}
|
243
|
-
get _element() { return index.getElement(this); }
|
244
|
-
static get watchers() { return {
|
245
|
-
"group": ["watchGroup"]
|
246
|
-
}; }
|
247
|
-
};
|
248
|
-
SnkExpressionGroup.style = snkExpressionGroupCss;
|
249
|
-
|
250
|
-
exports.snk_expression_group = SnkExpressionGroup;
|
@@ -1,246 +0,0 @@
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, f as forceUpdate, H as Host, g as getElement } from './index-a7d3d3f1.js';
|
2
|
-
import { F as FilterGroupCondition } from './IExpressionItem-21f225bf.js';
|
3
|
-
import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
|
4
|
-
import { ApplicationContext, StringUtils, ElementIDUtils } from '@sankhyalabs/core';
|
5
|
-
|
6
|
-
const snkExpressionGroupCss = ".sc-snk-expression-group-h{display:block;--snk-expression-group--container-condition--width:184px;--snk-expression-group--container-condition--height:38px;--snk-expression-group--container-condition--border-radius:var(--border--radius-medium, 12px);--snk-expression-group--container-option--width:85px;--snk-expression-group__container-condition--background-and:#66B6A0;--snk-expression-group__container-condition--background-or:#EBC65E;--snk-expression-group__container-expression--padding-left:26px;--snk-expression-group__background-color-dashed:var(--background--body, #fafcff)}.snk-expression-group__container-condition.sc-snk-expression-group{width:var(--snk-expression-group--container-condition--width);height:var(--snk-expression-group--container-condition--height);border-radius:var(--snk-expression-group--container-condition--border-radius);z-index:var(--more-visible--2x, 3)}.snk-expression-group__container-option.sc-snk-expression-group{width:var(--snk-expression-group--container-option--width)}.snk-expression-group__container-condition[data-condition=\"AND\"].sc-snk-expression-group{background-color:var(--snk-expression-group__container-condition--background-and)}.snk-expression-group__container-condition[data-condition=\"OR\"].sc-snk-expression-group{background-color:var(--snk-expression-group__container-condition--background-or)}.snk-expression-group__container-expression.sc-snk-expression-group{padding-left:var(--snk-expression-group__container-expression--padding-left)}.dashes.sc-snk-expression-group{z-index:var(--visible, 1);background:var(--snk-expression-group__background-color-dashed);border-left:2px dashed var(--text-secondary, #A2ABB9);position:absolute;width:15px;height:58px;margin-left:-15px;margin-top:-36.5px}.horizontal-dashes.sc-snk-expression-group{z-index:var(--more-visible, 2);border-bottom:2px dashed var(--text-secondary, #A2ABB9);position:absolute;width:15px;height:54px;margin-left:-15px;margin-top:-33.5px}.hidden.sc-snk-expression-group{display:none}";
|
7
|
-
|
8
|
-
const SnkExpressionGroup = class {
|
9
|
-
constructor(hostRef) {
|
10
|
-
registerInstance(this, hostRef);
|
11
|
-
this.ezFilterGroupChange = createEvent(this, "ezFilterGroupChange", 7);
|
12
|
-
this.ezFilterGroupRemove = createEvent(this, "ezFilterGroupRemove", 7);
|
13
|
-
this.ezExpressionGroupLayoutChanged = createEvent(this, "ezExpressionLayoutChanged", 7);
|
14
|
-
this.FIRST_LEVEL = "0";
|
15
|
-
this.LIMIT_GROUP_LEVEL = 4;
|
16
|
-
this.application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
17
|
-
this._conditionOperator = FilterGroupCondition.AND;
|
18
|
-
this._group = undefined;
|
19
|
-
this._selfTop = 0;
|
20
|
-
this.canAddExpression = true;
|
21
|
-
this._showDashes = true;
|
22
|
-
this.parentTop = 0;
|
23
|
-
this.group = undefined;
|
24
|
-
this.messagesBuilder = undefined;
|
25
|
-
this.filterId = undefined;
|
26
|
-
this.entityURI = undefined;
|
27
|
-
}
|
28
|
-
/**
|
29
|
-
* Listener para capturar adição e remoção de grupos e items de expressão.
|
30
|
-
*/
|
31
|
-
todoCompletedHandler(_) {
|
32
|
-
this.updateDashes();
|
33
|
-
}
|
34
|
-
/*
|
35
|
-
* Retorna o grupo da expressão.
|
36
|
-
*/
|
37
|
-
async getExpressionGroup() {
|
38
|
-
return this._group;
|
39
|
-
}
|
40
|
-
watchGroup(newValue) {
|
41
|
-
this._group = newValue;
|
42
|
-
this._conditionOperator = this.getOperand();
|
43
|
-
}
|
44
|
-
componentWillLoad() {
|
45
|
-
this._group = this.group;
|
46
|
-
this._conditionOperator = this.getOperand();
|
47
|
-
if (!this.getDataGroupLevel()) {
|
48
|
-
this._element.setAttribute('data-group-level', this.FIRST_LEVEL);
|
49
|
-
}
|
50
|
-
if (!this.filterId) {
|
51
|
-
this.canAddExpression = false;
|
52
|
-
}
|
53
|
-
}
|
54
|
-
componentDidRender() {
|
55
|
-
this.setSelfTop();
|
56
|
-
}
|
57
|
-
changeHandler() {
|
58
|
-
this.ezExpressionGroupLayoutChanged.emit();
|
59
|
-
}
|
60
|
-
/**
|
61
|
-
* Função que define o valor atualizado da propriedade top do elemento em tela para calcular o tamanho do tracejado.
|
62
|
-
*/
|
63
|
-
setSelfTop() {
|
64
|
-
this._selfTop = this._element.getBoundingClientRect().top;
|
65
|
-
}
|
66
|
-
/**
|
67
|
-
* Função que calcula o tamanho que deve ter o tracejado.
|
68
|
-
*/
|
69
|
-
getDashedHeight() {
|
70
|
-
return this._selfTop - this.parentTop;
|
71
|
-
}
|
72
|
-
getOperand() {
|
73
|
-
return !this._group.operand ? FilterGroupCondition.AND : this._group.operand;
|
74
|
-
}
|
75
|
-
getMessage(key, params) {
|
76
|
-
return this.application.messagesBuilder.getMessage(key, params);
|
77
|
-
}
|
78
|
-
updateDashes() {
|
79
|
-
this._showDashes = false;
|
80
|
-
this.setSelfTop();
|
81
|
-
this._showDashes = true;
|
82
|
-
}
|
83
|
-
renderExpressionItems() {
|
84
|
-
var _a;
|
85
|
-
return (_a = this._group.items) === null || _a === void 0 ? void 0 : _a.map((item) => (h("snk-expression-item", { key: item.id, class: "ez-padding-top--small snk-expression-group__item", expression: item, canRemove: this._group.items.length > 1, onEzFilterItemChange: () => this.handleFilterItemChange(), onEzFilterItemRemove: (evt) => this.handleFilterItemRemove(evt, item.id), messagesBuilder: this.messagesBuilder, entityURI: this.entityURI })));
|
86
|
-
}
|
87
|
-
renderGroups() {
|
88
|
-
var _a;
|
89
|
-
const currentLevel = parseInt(this.getDataGroupLevel() || '0');
|
90
|
-
const newLevel = currentLevel + 1;
|
91
|
-
return (_a = this._group.childrenGroups) === null || _a === void 0 ? void 0 : _a.map((group) => (h("snk-expression-group", { key: group.id, group: group, messagesBuilder: this.messagesBuilder, parentTop: this._selfTop, "data-group-level": newLevel, onEzFilterGroupRemove: (evt) => this.handleFilterGroupRemove(evt, group.id), entityURI: this.entityURI })));
|
92
|
-
}
|
93
|
-
handleFilterGroupRemove(evt, groupId) {
|
94
|
-
this.onStopPropagation(evt);
|
95
|
-
this._group.childrenGroups = this._group.childrenGroups.filter(group => group.id !== groupId);
|
96
|
-
forceUpdate(this);
|
97
|
-
this.ezFilterGroupChange.emit(this._group);
|
98
|
-
this.changeHandler();
|
99
|
-
}
|
100
|
-
handleFilterItemRemove(evt, itemId) {
|
101
|
-
this.onStopPropagation(evt);
|
102
|
-
this._group.items = this._group.items.filter(item => item.id !== itemId);
|
103
|
-
forceUpdate(this);
|
104
|
-
this.ezFilterGroupChange.emit(this._group);
|
105
|
-
this.changeHandler();
|
106
|
-
this.canAddExpression = true;
|
107
|
-
}
|
108
|
-
isFilledItem(item) {
|
109
|
-
if (!item.fieldName || !item.operand)
|
110
|
-
return false;
|
111
|
-
if (item.operand === 'NULL' || item.operand === 'NOT_NULL') {
|
112
|
-
return true;
|
113
|
-
}
|
114
|
-
else {
|
115
|
-
return item.paramVariable || (item.userInterface === 'SWITCH') ? true : !!item.value;
|
116
|
-
}
|
117
|
-
}
|
118
|
-
handleFilterItemChange() {
|
119
|
-
this.ezFilterGroupChange.emit(this._group);
|
120
|
-
this.canAddExpression = this.group.items.every(this.isFilledItem);
|
121
|
-
}
|
122
|
-
handleAddExpression() {
|
123
|
-
const newItem = {
|
124
|
-
id: StringUtils.generateUUID(),
|
125
|
-
entityName: "",
|
126
|
-
fieldName: "",
|
127
|
-
description: "",
|
128
|
-
label: "Valor",
|
129
|
-
type: undefined,
|
130
|
-
expression: undefined,
|
131
|
-
operand: undefined,
|
132
|
-
paramVariable: false,
|
133
|
-
value: undefined,
|
134
|
-
systemConfig: null,
|
135
|
-
userConfig: null
|
136
|
-
};
|
137
|
-
this._group.items.push(newItem);
|
138
|
-
forceUpdate(this);
|
139
|
-
this.ezFilterGroupChange.emit(this.group);
|
140
|
-
this.changeHandler();
|
141
|
-
this.canAddExpression = false;
|
142
|
-
}
|
143
|
-
handleAddGroup() {
|
144
|
-
var _a;
|
145
|
-
const newGroup = {
|
146
|
-
id: StringUtils.generateUUID(),
|
147
|
-
items: [
|
148
|
-
{
|
149
|
-
id: StringUtils.generateUUID(),
|
150
|
-
entityName: "",
|
151
|
-
fieldName: "",
|
152
|
-
description: "",
|
153
|
-
label: "Valor",
|
154
|
-
type: undefined,
|
155
|
-
expression: undefined,
|
156
|
-
operand: undefined,
|
157
|
-
paramVariable: false,
|
158
|
-
value: undefined,
|
159
|
-
systemConfig: null,
|
160
|
-
userConfig: null
|
161
|
-
}
|
162
|
-
],
|
163
|
-
childrenGroups: [],
|
164
|
-
operand: FilterGroupCondition.AND
|
165
|
-
};
|
166
|
-
this._group.childrenGroups = (_a = this._group.childrenGroups) !== null && _a !== void 0 ? _a : [];
|
167
|
-
this._group.childrenGroups.push(newGroup);
|
168
|
-
forceUpdate(this);
|
169
|
-
this.ezFilterGroupChange.emit(this.group);
|
170
|
-
this.changeHandler();
|
171
|
-
}
|
172
|
-
buildGroupStyle() {
|
173
|
-
return {
|
174
|
-
height: `${this.getDashedHeight()}px`,
|
175
|
-
marginTop: `${-(this.getDashedHeight()) + 20}px`,
|
176
|
-
};
|
177
|
-
}
|
178
|
-
handleConditionOperatorChange(newOperator) {
|
179
|
-
this._conditionOperator = newOperator;
|
180
|
-
this._group.operand = FilterGroupCondition[newOperator];
|
181
|
-
this.ezFilterGroupChange.emit(this._group);
|
182
|
-
}
|
183
|
-
confirmRemoveGroup(evt) {
|
184
|
-
this.onStopPropagation(evt);
|
185
|
-
ApplicationUtils.confirm(this.getMessage("snkPersonalizedFilter.confirmGroup.title"), this.getMessage("snkPersonalizedFilter.confirmGroup.description"))
|
186
|
-
.then((canRemove) => {
|
187
|
-
if (canRemove) {
|
188
|
-
this.ezFilterGroupRemove.emit(this._group);
|
189
|
-
}
|
190
|
-
});
|
191
|
-
}
|
192
|
-
getTooltipMessageForOperator() {
|
193
|
-
const groupLevel = this.getDataGroupLevel();
|
194
|
-
if (groupLevel === this.FIRST_LEVEL && this._group.items.length === 1) {
|
195
|
-
return this.getMessage("snkPersonalizedFilter.operador.firstLevel");
|
196
|
-
}
|
197
|
-
if (this._conditionOperator === FilterGroupCondition.AND) {
|
198
|
-
return this.getMessage("snkPersonalizedFilter.operador.and");
|
199
|
-
}
|
200
|
-
else if (this._conditionOperator === FilterGroupCondition.OR) {
|
201
|
-
return this.getMessage("snkPersonalizedFilter.operador.or");
|
202
|
-
}
|
203
|
-
}
|
204
|
-
getDataGroupLevel() {
|
205
|
-
return this._element.getAttribute('data-group-level');
|
206
|
-
}
|
207
|
-
canAddGroup() {
|
208
|
-
const dataGroupLevel = Number(this.getDataGroupLevel() || this.FIRST_LEVEL);
|
209
|
-
return dataGroupLevel < this.LIMIT_GROUP_LEVEL;
|
210
|
-
}
|
211
|
-
isFirstLevel() {
|
212
|
-
return Boolean(this.getDataGroupLevel() === this.FIRST_LEVEL);
|
213
|
-
}
|
214
|
-
onStopPropagation(evt) {
|
215
|
-
evt.preventDefault();
|
216
|
-
evt.stopPropagation();
|
217
|
-
}
|
218
|
-
getMessageAddTooltip() {
|
219
|
-
if (this.isFirstLevel()) {
|
220
|
-
const allValidItems = this.group.items.every(item => {
|
221
|
-
if (!item.fieldName || !item.operand)
|
222
|
-
return false;
|
223
|
-
return item.paramVariable || !!item.value;
|
224
|
-
});
|
225
|
-
return allValidItems ? this.getMessage("snkPersonalizedFilter.info.labelAddNewExpression") : this.getMessage("snkPersonalizedFilter.info.labelDisabledAddExpressionButton");
|
226
|
-
}
|
227
|
-
else {
|
228
|
-
return this.canAddExpression ? this.getMessage("snkPersonalizedFilter.info.labelAddNewExpression") : this.getMessage("snkPersonalizedFilter.info.labelDisabledAddExpressionButton");
|
229
|
-
}
|
230
|
-
}
|
231
|
-
canChangeGroupCondition() {
|
232
|
-
const membersCount = this._group.items.length + this._group.childrenGroups.length;
|
233
|
-
return membersCount > 1;
|
234
|
-
}
|
235
|
-
render() {
|
236
|
-
const canAddGroup = this.canAddGroup();
|
237
|
-
return (h(Host, null, h("div", { class: !this.isFirstLevel() && this._showDashes ? 'dashes' : 'hidden', style: this.buildGroupStyle() }), h("div", { class: !this.isFirstLevel() && this._showDashes ? 'horizontal-dashes' : 'hidden' }), h("div", { class: 'ez-flex ez-flex--align-items-center' }, h("div", { class: 'snk-expression-group__container-condition ez-flex ez-flex-item--align-center ez-flex--align-items-center', "data-condition": this._conditionOperator, title: this.getTooltipMessageForOperator() }, h("label", { class: "ez-label ez-padding-right--medium ez-padding-left--medium ez-title--primary" }, this.getMessage("snkPersonalizedFilter.info.condition")), h("div", null, h("ez-combo-box", Object.assign({ class: "snk-expression-group__container-option", canShowError: false, mode: "slim", suppressEmptyOption: true, enabled: this.canChangeGroupCondition(), value: this._conditionOperator, onEzChange: (evt) => this.handleConditionOperatorChange(evt.detail.value) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `comboBoxConditions_level_${this.getDataGroupLevel()}` }), h("option", { value: FilterGroupCondition.AND }, "E"), h("option", { value: FilterGroupCondition.OR }, "OU")))), h("ez-button", { class: "ez-padding-right--medium ez-padding-left--medium", mode: "icon", iconName: "plus", size: "small", enabled: this.canAddExpression, title: this.getMessageAddTooltip(), onClick: () => this.handleAddExpression() }), h("ez-button", { label: this.getMessage("snkPersonalizedFilter.info.addGroup"), size: "small", enabled: canAddGroup, title: !canAddGroup ? this.getMessage('snkPersonalizedFilter.info.labelDisabledAddGroupButton', { LIMIT_GROUP_LEVEL: this.LIMIT_GROUP_LEVEL + 1 }) : '', onClick: () => this.handleAddGroup() }, h("ez-icon", { slot: "leftIcon", iconName: "plus" })), !this.isFirstLevel() && h("ez-button", { title: this.getMessage("snkPersonalizedFilter.info.labelDeleteExpression"), class: "ez-padding-left--medium", mode: "icon", iconName: "delete", size: "small", onClick: (evt) => this.confirmRemoveGroup(evt) })), h("div", { class: "ez-padding-top--small snk-expression-group__container-expression" }, h("div", { class: "ez-padding-top--small" }, this.renderExpressionItems())), h("div", { class: "ez-padding-top--small snk-expression-group__container-expression" }, h("div", { class: "ez-padding-top--small" }, this.renderGroups()))));
|
238
|
-
}
|
239
|
-
get _element() { return getElement(this); }
|
240
|
-
static get watchers() { return {
|
241
|
-
"group": ["watchGroup"]
|
242
|
-
}; }
|
243
|
-
};
|
244
|
-
SnkExpressionGroup.style = snkExpressionGroupCss;
|
245
|
-
|
246
|
-
export { SnkExpressionGroup as snk_expression_group };
|
@@ -1 +0,0 @@
|
|
1
|
-
import{r as t,h as i,H as e,g as r}from"./p-d2d301a6.js";import{DataType as s,ObjectUtils as a,ElementIDUtils as l,ErrorException as n,ApplicationContext as o}from"@sankhyalabs/core";import{EzScrollDirection as d}from"@sankhyalabs/ezui/dist/collection/components/ez-scroller/EzScrollDirection";import{C as c}from"./p-e789eb2d.js";import{toString as h}from"@sankhyalabs/core/dist/dataunit/metadata/DataType";import{F as f}from"./p-584d7212.js";import{F as u,P as p}from"./p-7d68a43a.js";import{ApplicationUtils as m}from"@sankhyalabs/ezui/dist/collection/utils";import"./p-814f9247.js";import"./p-2b449454.js";import"./p-112455b1.js";import"./p-60ad0dea.js";import"./p-744d0fd2.js";import"./p-63bff2a8.js";class b{constructor({filterConfig:t,configName:i,onComplete:e,getMessage:r,onAddPersonalizedFilter:s,onEditPersonalizedFilter:a}){this._filterConfig=t,this._configName=i,this._onComplete=e,this._getMessage=r,this._addPersonalizedFilterFn=s,this._editPersonalizedFilterFn=a}applyFilters(t){this._onComplete(t),this._closeModal()}buildFilterModal(){const t=document.createElement("snk-filter-modal");return t.className="ez-size-height--full",t.filters=this._filterConfig,t.configName=this._configName,t.getMessage=this._getMessage.bind(this),t.applyFilters=this.applyFilters.bind(this),t.closeModal=()=>this._closeModal(),t.addPersonalizedFilter=()=>this._addPersonalizedFilterFn(),t.editPersonalizedFilter=t=>this._editPersonalizedFilterFn(t),t}async showModal(){const t={content:this.buildFilterModal(),position:"left",heightMode:"full",closeOutsideClick:!1,useScrimLight:!0};this._closeModal=await m.showModal(t)}async closeModal(){this._closeModal()}}const k=class{constructor(i){t(this,i),this._updateSequence=[],this._loadingPending=!1,this._configUpdated=!1,this._pendingVariables=!1,this._customfiltersToBeUpdated=[],this._calculateSortIndex=t=>{let i=t.hardFixed?1e6:0;return t.hardFixed||(i+=t.fixed?1e5:0,i+=null==t.value?0:1e4,i+=this._updateSequence.lastIndexOf(t.id)+1),i},this._filtersComparator=(t,i)=>this._calculateSortIndex(i)-this._calculateSortIndex(t),this.dataUnit=void 0,this.configName=void 0,this.filterConfig=void 0,this.messagesBuilder=void 0,this.allowDefault=void 0,this.scrollerLocked=!1,this.showPersonalizedFilter=!1,this.personalizedFilterId=void 0}observeFilterConfig(t,i){if(null!=i&&null==t)this._loadingPending=!0,this._configUpdated=!0;else{const e=new Map(i?i.map((t=>[t.id,t])):void 0);0===e.size&&t.length>0?(this._loadingPending=!0,this._configUpdated=!1):t.forEach((t=>{const i=e.get(t.id);if(null!=i){if(this._configUpdated=this._configUpdated||a.objectToString(i)!=a.objectToString(t),this._loadingPending=this._loadingPending||a.objectToString(i.value)!==a.objectToString(t.value),!this._loadingPending){const e=a.objectToString(i.groupedItems)!=a.objectToString(t.groupedItems);this._configUpdated=this._configUpdated||e,this._loadingPending=this._loadingPending||e}}else this._configUpdated=!0,this._loadingPending=this._loadingPending||null!=t.value}))}this.processAfterUpdateConfig()}async reload(){this.loadConfigFromStorage()}componentDidLoad(){this._element&&l.addIDInfo(this._element,null,{dataUnit:this.dataUnit})}processPendingFilter(){if(this._pendingVariables){const t=this._element.querySelector("#filter-PERSONALIZED_FILTER_GROUP");t&&t.showUp(!0).then((()=>{this.processAfterUpdateConfig()}))}else this.processAfterUpdateConfig()}getPersonalizedFilterItem(){return this.filterConfig.find((t=>t.type===f.PERSONALIZED))}async processAfterUpdateConfig(){if(this._loadingPending){const t=this.getPersonalizedFilterItem();if(this._pendingVariables=!p.validateVariableValues(t),this._pendingVariables)return;this._loadingPending=!1,this.dataUnit.loadData()}this._configUpdated&&(this._configUpdated=!1,c.saveFilterBarConfig(this.filterConfig,this.configName))}getMessage(t,i,e){var r;return(null===(r=this.messagesBuilder)||void 0===r?void 0:r.getMessage(t,i))||e}getFilter(t){var i;const e=[];return null===(i=this.filterConfig)||void 0===i||i.filter((t=>this.isActiveFilter(t))).forEach((t=>{const i=(t=>{switch(t.type){case f.DEFAULT_FILTER:return function(t){return{name:t.id,expression:t.props.expression,params:[]}}(t);case f.BINARY_SELECT:return function(t){const{id:i,value:e,props:r}=t;return{name:i,expression:r.options.find((t=>t.name===e)).expression,params:[]}}(t);case f.MULTI_SELECT:return function(t){const{id:i,value:e,props:r}=t;return{name:i,expression:r.expression,params:[{name:i,dataType:s.TEXT,value:e}]}}(t);case f.MULTI_LIST:return function(t){const{id:i,value:e,props:r}=t,a=(null!==(o=null!==(n=null==(l=e)?void 0:l.elements)&&void 0!==n?n:null==l?void 0:l.members)&&void 0!==o?o:l).filter((t=>null==t?void 0:t.check)).map((({id:t})=>Number.isNaN(+t)?String(t):Number(t)));var l,n,o;if(a.length>0)return{name:i,expression:r.expression,params:[{name:i,dataType:s.TEXT,value:JSON.stringify(a)}]}}(t);case f.PERIOD:return function(t){const{id:i,value:e,props:r}=t;let{end:a,start:l}=e;"string"==typeof a&&(a=new Date(a)),"string"==typeof l&&(l=new Date(l));const n=[];let o;return a&&l?(o=r.expression.fullfill,n.push({name:`${i}.START`,dataType:s.DATE,value:h(s.DATE,l)},{name:`${i}.END`,dataType:s.DATE,value:h(s.DATE,a)})):l?(o=r.expression.onlystart,n.push({name:i,dataType:s.DATE,value:h(s.DATE,l)})):(o=r.expression.onlyend,n.push({name:i,dataType:s.DATE,value:h(s.DATE,a)})),{name:i,expression:o,params:n}}(t);case f.SEARCH:return function(t){const{id:i,value:e,props:r}=t;return{name:i,expression:r.expression,params:[{name:i,dataType:s.TEXT,value:h(s.TEXT,e.value)}]}}(t);case f.TEXT:return function(t){const{id:i,value:e,props:r}=t;return{name:i,expression:r.expression,params:[{name:i,dataType:s.TEXT,value:h(s.TEXT,e)}]}}(t);case f.NUMBER:return function(t){const{id:i,value:e,props:r}=t;return{name:i,expression:r.expression,params:[{name:i,dataType:s.NUMBER,value:h(s.NUMBER,e)}]}}(t);case f.PERSONALIZED:return function(t){const{id:i,groupedItems:e=[]}=t,r=e.filter((t=>!!t.visible)).map((t=>{var i;const e=t.props.expression,r=((null===(i=t.props.personalizedFilter)||void 0===i?void 0:i.parameters)||[]).map(((i,e)=>{const r=Array.from(t.value||0),a=i.dataType;let l=e>=0&&e<r.length?r[e]:null;return null!=l&&"object"==typeof l&&"value"in l&&(l=l.value),null==l&&a===s.BOOLEAN&&(l=!1),{name:i.name,dataType:a,value:"string"==typeof l?l:h(a,l)}}));return{expression:e,name:t.id,params:r}}));return{name:i,expression:r.map((t=>`(${t.expression})`)).join(` ${u.AND} `),params:r.flatMap((t=>t.params))}}(t);default:return}})(t);i&&e.push(i)})),e}isActiveFilter(t){return t.type===f.DEFAULT_FILTER||this.filterActiveFilter(t)&&(t.groupedItems||null!=t.value)}registryFilterProvider(){this.dataUnit.addFilterProvider(this),this.filterConfig&&this.dataUnit.loadData()}itemFocused(t){this._element.querySelectorAll("snk-filter-item,snk-filter-list").forEach((i=>{i.id===t?"snk-filter-item"===i.tagName.toLowerCase()&&i.getClientRects()[0].x<0&&i.scrollIntoView({behavior:"auto",inline:"nearest"}):i.hideDetail()}))}filterActiveFilter(t){return t.visible||t.removalBlocked}getFilterItems(){const t=[],e=[];this.filterConfig.filter(this.filterActiveFilter).forEach(((r,s)=>{const l=`filter-${(r=a.copy(r)).id}`,n=i("snk-filter-item",{onVisibleChanged:t=>this.scrollerLocked=t.detail,onFilterChange:t=>this.updateFilter(t.detail),onFocusin:()=>this.itemFocused(l),id:l,config:r,class:s>0?"ez-padding-left--medium":"",getMessage:(t,i)=>this.getMessage(t,i),key:r.id});return r.fixed||r.hardFixed?t.push(n):e.push(n),n}));const r=[];return r.push(...t),t.length>0&&e.length>0&&r.push(i("hr",{class:"ez-divider-vertical ez-divider--dark ez-margin-left--medium snk-filter-bar__divider"})),r.push(...e),r}calculateUpdateSequence(t){t&&(this._updateSequence=this._updateSequence.filter((i=>t.id!==i)),this._updateSequence.push(t.id))}normalizeItem(t){const i=Object.assign({},t);return["props","value","hardFixed","fixed"].forEach((t=>{null==i[t]&&delete i[t]})),""===t.value&&delete t.value,i}updateFilter(t){this.filterConfig=this.filterConfig.map((i=>(t=this.normalizeItem(t),i.id===t.id?(a.objectToString(i)!=a.objectToString(t)&&this.calculateUpdateSequence(t),t):i))).sort(((t,i)=>this._filtersComparator(t,i)))}loadPermitions(){this._application.isUserSup().then((t=>this.allowDefault=t))}loadConfigFromStorage(){return new Promise((t=>{c.get().then((i=>{i.loadFilterBarConfig(this.configName).then((i=>{t(),this.filterConfig=i.map((t=>this.normalizeItem(t)))})).catch((t=>{throw new n(this.getMessage("snkFilterBar.failToLoadConfig"),t)}))}))}))}attachDataUnit(){if(null==this.dataUnit){let t=this._element.parentElement;for(;t;)if("SNK-DATA-UNIT"===t.tagName.toUpperCase()){const i=t;this.dataUnit=i.dataUnit,this.dataUnit?this.registryFilterProvider():i.addEventListener("dataUnitReady",(t=>{this.dataUnit=t.detail,this.registryFilterProvider()}));break}t=t.parentElement}else this.registryFilterProvider()}filterChangeListener(t){this.updateFilter(t.detail)}async showFilterModal(){const t={filterConfig:a.copy(this.filterConfig),configName:this.configName,onComplete:t=>{this.filterConfig=t.map(this.normalizeItem).sort(((t,i)=>this._filtersComparator(t,i)))},getMessage:(t,i)=>this.getMessage(t,i),onAddPersonalizedFilter:()=>this.addPersonalizedFilter(),onEditPersonalizedFilter:t=>this.editPersonalizedFilter(t)};this._filterModalFactory=new b(t),await this._filterModalFactory.showModal()}addPersonalizedFilter(){this._filterModalFactory.closeModal(),this.personalizedFilterId=void 0,this.showPersonalizedFilter=!0,window.requestAnimationFrame((()=>{this._elPersonalizedFilter.createPersonalizedFilter()}))}editPersonalizedFilter(t){this._filterModalFactory.closeModal(),this.showPersonalizedFilter=!0,this.personalizedFilterId=t}hidePersonalizedFilter(){this.loadConfigFromStorage().then((()=>{this.personalizedFilterId=void 0,this.showPersonalizedFilter=!1}))}componentWillLoad(){this._application=o.getContextValue("__SNK__APPLICATION__"),this._application&&(this.loadPermitions(),this.loadConfigFromStorage()),this.attachDataUnit()}componentDidRender(){this.processPendingFilter()}render(){if(this.dataUnit&&this.filterConfig&&0!==this.filterConfig.length)return this.showPersonalizedFilter?i("snk-personalized-filter",{class:"filter-bar__personalized-filter",filterId:this.personalizedFilterId,ref:t=>this._elPersonalizedFilter=t,onEzCancel:()=>this.hidePersonalizedFilter(),entityUri:this.dataUnit.name,configName:this.configName}):i(e,null,i("ez-scroller",{class:"snk-filter-bar__scroller",direction:d.HORIZONTAL,activeShadow:!0,locked:this.scrollerLocked},i("section",{class:"snk-filter-bar__filter-item-container"},this.getFilterItems())),i("ez-button",{class:"ez-padding-left--medium",size:"small",label:this.getMessage("snkFilterBar.filters",void 0,"Filtros"),onClick:this.showFilterModal.bind(this)},i("ez-icon",{slot:"leftIcon",iconName:"plus",class:"ez-padding-right--small"})))}get _element(){return r(this)}static get watchers(){return{filterConfig:["observeFilterConfig"]}}};k.style='.sc-snk-filter-bar-h{display:grid;grid-template-columns:minmax(100px, 100%) 1fr 1fr;--snk-personalized-filter--z-index:var(--more-visible, 2);--snk-personalized-filter--background-color:var(--background--xlight, #fff)}.snk-filter__popover-container.sc-snk-filter-bar{display:flex;cursor:auto}.filter-bar__personalized-filter.sc-snk-filter-bar{display:flex;flex-direction:column;position:fixed;top:0;left:0;width:100%;height:100%;overflow:auto;z-index:var(--snk-personalized-filter--z-index);background-color:var(--snk-personalized-filter--background-color)}.snk-filter__popover.sc-snk-filter-bar{display:flex;flex-direction:column;position:absolute;width:fit-content;height:fit-content;min-width:265px;z-index:var(--most-visible, 3);background-color:var(--background--xlight, #fff);border-radius:var(--border--radius-medium, 12px);box-shadow:var(--shadow, 0px 0px 16px 0px #000)}.snk-filter-item__editor-header.sc-snk-filter-bar{flex-grow:1;font-weight:var(--text-weight--medium, 400);color:var(--color--title-primary, #2B3A54)}.snk-filter__popover-rule.sc-snk-filter-bar{border-style:solid;border-color:var(--color--disable-secondary, #F2F5F8);border-radius:1px;border-width:1px;width:100%}.editor__ez-check.sc-snk-filter-bar{--ez-check__label--padding-left:0}.snk-filter-item__editor-header-button.sc-snk-filter-bar{cursor:pointer;background-color:transparent;border:none;padding:3px;outline-color:var(--color--primary)}.snk-filter-bar__divider.sc-snk-filter-bar{margin-bottom:var(--space--small)}.snk-filter-bar__scroller.sc-snk-filter-bar{height:calc(100% + var(--space-extra-small, 3px))}.snk-filter-bar__filter-item-container.sc-snk-filter-bar{display:flex;align-self:center}.snk-filter-bar__scroller.sc-snk-filter-bar .sc-snk-filter-bar:first-child{margin-left:var(--space-extra-small, 3px)}.snk-filter-bar__filter-list-items-container.sc-snk-filter-bar{overflow-y:auto;max-height:360px;margin-top:var(--space--small, 6px)}.snk-filter-bar__filter-list-item.sc-snk-filter-bar{cursor:pointer;border-radius:var(--border--radius-small, 6px);border:none;background-color:transparent}.snk-filter-bar__filter-list-item__label.sc-snk-filter-bar{color:var(--title--primary)}.snk-filter-bar__filter-list-item__label--secondary.sc-snk-filter-bar{color:var(--text--primary)}.snk-filter-bar__filter-list-item__icon.sc-snk-filter-bar{--ez-icon--color:var(--title--primary)}.snk-filter-bar__filter-list-item__icon--secondary.sc-snk-filter-bar{--ez-icon--color:var(--text--secondary)}.snk-filter-bar__filter-list-item.sc-snk-filter-bar:focus-visible{outline:none;background-color:var(--background--medium)}.snk-filter-bar__filter-list-item.sc-snk-filter-bar:hover{background-color:var(--background--medium)}.snk-filter-bar__filter-list-items-container--empty.sc-snk-filter-bar{width:100%;height:100px;display:flex;justify-content:center;align-self:center;align-items:center}.snk-filter-bar__filter-list-items-button--active.sc-snk-filter-bar{position:relative}.snk-filter-bar__filter-list-items-button--active.sc-snk-filter-bar::after{display:flex;position:absolute;content:"";width:8px;height:8px;top:7px;left:17px;background-color:var(--icon--alert--color, #008561);border-radius:50%}.snk-filter-bar__filter-modal-item.sc-snk-filter-bar{--modal-item-border-width:2px;display:flex;flex-direction:row;margin-left:var(--modal-item-border-width);border-radius:var(--border--radius-medium, 12px);background-color:var(--background--medium, #f0f3f7);border:none;width:100%}.snk-filter-bar__filter-modal-item.sc-snk-filter-bar:focus-visible{outline:var(--color--primary) solid var(--modal-item-border-width)}.snk-filter-bar__filter-modal-item__check.sc-snk-filter-bar{width:auto}.snk-filter-bar__filter-modal-item__label.sc-snk-filter-bar{font-weight:var(--text-weight--medium)}.snk-filter-bar__filter-modal-content.sc-snk-filter-bar{display:grid;grid-template-rows:auto auto 1fr auto;width:99%;height:100%}';export{k as snk_filter_bar}
|