@sankhyalabs/sankhyablocks 5.5.0 → 5.6.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/{SnkMessageBuilder-26da04f7.js → SnkMessageBuilder-e64dce7f.js} +14 -0
- package/dist/cjs/index-8d94b7e0.js +7 -0
- package/dist/cjs/index-de79181a.js +201 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/snk-application.cjs.entry.js +1 -1
- package/dist/cjs/snk-attach.cjs.entry.js +2 -1
- package/dist/cjs/snk-crud.cjs.entry.js +2 -1
- package/dist/cjs/snk-data-exporter.cjs.entry.js +2 -2
- package/dist/cjs/{snk-data-unit-c43df27b.js → snk-data-unit-85d6565e.js} +1 -1
- package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
- package/dist/cjs/snk-detail-view.cjs.entry.js +4 -3
- package/dist/cjs/snk-expression-item.cjs.entry.js +213 -0
- package/dist/cjs/snk-filter-field-search_2.cjs.entry.js +435 -0
- package/dist/cjs/snk-grid.cjs.entry.js +3 -2
- package/dist/cjs/{snk-guides-viewer-e6a65393.js → snk-guides-viewer-9784c527.js} +1 -1
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +3 -2
- package/dist/cjs/snk-personalized-filter.cjs.entry.js +126 -0
- package/dist/cjs/snk-simple-bar_2.cjs.entry.js +2 -1
- package/dist/cjs/snk-taskbar.cjs.entry.js +2 -1
- package/dist/cjs/taskbar-elements-bc2598f9.js +118 -0
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/snk-filter-field-search/snk-filter-field-search.js +62 -69
- package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.css +4 -0
- package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +87 -0
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/filter-operands/filter-operands.js +34 -0
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.css +97 -0
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.js +298 -0
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/snk-filter-param-config.js +2 -2
- package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +63 -0
- package/dist/collection/lib/message/SnkMessageBuilder.js +2 -0
- package/dist/collection/lib/message/resources/snk-personalized-filter.msg.js +12 -0
- package/dist/collection/lib/store/index.js +2 -1
- package/dist/components/SnkMessageBuilder.js +14 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +2 -0
- package/dist/components/index2.js +1 -1
- package/dist/components/index3.js +199 -0
- package/dist/components/snk-data-exporter2.js +1 -1
- package/dist/components/snk-expression-item.d.ts +11 -0
- package/dist/components/snk-expression-item.js +6 -0
- package/dist/components/snk-expression-item2.js +241 -0
- package/dist/components/snk-filter-field-search.js +1 -200
- package/dist/{esm/snk-filter-field-search.entry.js → components/snk-filter-field-search2.js} +65 -38
- package/dist/components/snk-filter-param-config.js +1 -273
- package/dist/{esm/snk-filter-param-config.entry.js → components/snk-filter-param-config2.js} +35 -11
- package/dist/components/snk-grid2.js +2 -1
- package/dist/components/snk-personalized-filter.d.ts +11 -0
- package/dist/components/snk-personalized-filter.js +158 -0
- package/dist/components/snk-taskbar2.js +3 -197
- package/dist/esm/{SnkMessageBuilder-7a9392e6.js → SnkMessageBuilder-f3590f65.js} +14 -0
- package/dist/esm/{index-6519a79e.js → index-507e19ec.js} +1 -1
- package/dist/esm/index-620ac460.js +7 -0
- package/dist/esm/index-8efbf198.js +199 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/snk-application.entry.js +1 -1
- package/dist/esm/snk-attach.entry.js +3 -2
- package/dist/esm/snk-crud.entry.js +3 -2
- package/dist/esm/snk-data-exporter.entry.js +3 -3
- package/dist/esm/{snk-data-unit-f9e4c694.js → snk-data-unit-50b1660c.js} +1 -1
- package/dist/esm/snk-data-unit.entry.js +2 -2
- package/dist/esm/snk-detail-view.entry.js +5 -4
- package/dist/esm/snk-expression-item.entry.js +209 -0
- package/dist/esm/snk-filter-field-search_2.entry.js +430 -0
- package/dist/esm/snk-grid.entry.js +3 -2
- package/dist/esm/{snk-guides-viewer-62a9f74d.js → snk-guides-viewer-4d12f268.js} +2 -2
- package/dist/esm/snk-guides-viewer.entry.js +4 -3
- package/dist/esm/snk-personalized-filter.entry.js +122 -0
- package/dist/esm/snk-simple-bar_2.entry.js +3 -2
- package/dist/esm/snk-taskbar.entry.js +3 -2
- package/dist/esm/taskbar-elements-e6af3e93.js +115 -0
- package/dist/sankhyablocks/p-1dcfd32a.entry.js +1 -0
- package/dist/sankhyablocks/p-27e264d9.entry.js +1 -0
- package/dist/sankhyablocks/p-343699ad.entry.js +1 -0
- package/dist/sankhyablocks/{p-f2223502.js → p-3d3263b4.js} +1 -1
- package/dist/sankhyablocks/{p-b2523981.entry.js → p-3fbe2d69.entry.js} +1 -1
- package/dist/sankhyablocks/p-433dfa63.entry.js +1 -0
- package/dist/sankhyablocks/{p-f132e371.js → p-4c2015a9.js} +1 -1
- package/dist/sankhyablocks/p-4eefe631.entry.js +1 -0
- package/dist/sankhyablocks/p-6a02e236.js +1 -0
- package/dist/sankhyablocks/p-8bdf5e57.entry.js +1 -0
- package/dist/sankhyablocks/{p-a412992c.entry.js → p-c4417efb.entry.js} +1 -1
- package/dist/sankhyablocks/{p-92a0fca4.js → p-c9477950.js} +1 -1
- package/dist/sankhyablocks/{p-aeffd219.js → p-ccd26e3a.js} +1 -1
- package/dist/sankhyablocks/p-d410f45a.js +1 -0
- package/dist/sankhyablocks/p-df8f13b4.entry.js +1 -0
- package/dist/sankhyablocks/p-e9f42525.entry.js +1 -0
- package/dist/sankhyablocks/p-f344b811.entry.js +1 -0
- package/dist/sankhyablocks/p-f4184ce7.js +1 -0
- package/dist/sankhyablocks/p-fd4ed40a.entry.js +1 -0
- package/dist/sankhyablocks/p-ff96b509.entry.js +27 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-filter-field-search/interfaces/index.d.ts +14 -4
- package/dist/types/components/snk-filter-field-search/snk-filter-field-search.d.ts +13 -10
- package/dist/types/components/snk-personalized-filter/snk-personalized-filter.d.ts +20 -0
- package/dist/types/components/snk-personalized-filter/subcomponents/snk-expression-item/filter-operands/filter-operands.d.ts +9 -0
- package/dist/types/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.d.ts +54 -0
- package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/IExpressionItem.d.ts +4 -2
- package/dist/types/components.d.ts +83 -9
- package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +7 -0
- package/dist/types/lib/message/resources/snk-personalized-filter.msg.d.ts +1 -0
- package/dist/types/lib/store/index.d.ts +1 -0
- 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/snk-filter-field-search.cjs.entry.js +0 -185
- package/dist/cjs/snk-filter-param-config.cjs.entry.js +0 -256
- package/dist/cjs/taskbar-elements-80285601.js +0 -313
- package/dist/esm/taskbar-elements-055ba1ad.js +0 -309
- package/dist/sankhyablocks/p-4512cc6c.entry.js +0 -1
- package/dist/sankhyablocks/p-5cbbe1f7.entry.js +0 -1
- package/dist/sankhyablocks/p-63d01871.entry.js +0 -1
- package/dist/sankhyablocks/p-741b00ef.entry.js +0 -1
- package/dist/sankhyablocks/p-79d22df0.entry.js +0 -1
- package/dist/sankhyablocks/p-93d8fe00.entry.js +0 -1
- package/dist/sankhyablocks/p-999d1953.entry.js +0 -1
- package/dist/sankhyablocks/p-c3efd4eb.entry.js +0 -1
- package/dist/sankhyablocks/p-ebe876f5.entry.js +0 -1
- package/dist/sankhyablocks/p-ed438690.js +0 -1
- package/dist/sankhyablocks/p-f3d0c744.entry.js +0 -1
@@ -0,0 +1,158 @@
|
|
1
|
+
import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
|
2
|
+
import { d as dist, D as DataFetcher } from './DataFetcher.js';
|
3
|
+
import { F as FilterUserConfigTypes, a as FilterOperand } from './index2.js';
|
4
|
+
import { s as store } from './index3.js';
|
5
|
+
import { StringUtils, ApplicationContext } from '@sankhyalabs/core';
|
6
|
+
import { d as defineCustomElement$4 } from './snk-expression-item2.js';
|
7
|
+
import { d as defineCustomElement$3 } from './snk-filter-field-search2.js';
|
8
|
+
import { d as defineCustomElement$2 } from './snk-filter-param-config2.js';
|
9
|
+
|
10
|
+
class PersonalizedFilterFetcher {
|
11
|
+
constructor() {
|
12
|
+
this.templateByQuery = new Map();
|
13
|
+
this.buildTemplates();
|
14
|
+
}
|
15
|
+
buildTemplates() {
|
16
|
+
const query = dist.gql `
|
17
|
+
query($name: String!) {
|
18
|
+
$queryAlias$: fetchFilterFields(name: $name){
|
19
|
+
currentLink {
|
20
|
+
description
|
21
|
+
uri
|
22
|
+
}
|
23
|
+
links {
|
24
|
+
description
|
25
|
+
uri
|
26
|
+
fieldCount
|
27
|
+
}
|
28
|
+
fields {
|
29
|
+
name
|
30
|
+
description
|
31
|
+
uri
|
32
|
+
onlyDate
|
33
|
+
dataType
|
34
|
+
userInterface
|
35
|
+
properties {
|
36
|
+
name
|
37
|
+
value
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
}
|
42
|
+
`;
|
43
|
+
this.templateByQuery.set("fetchFilterFields", query);
|
44
|
+
}
|
45
|
+
loadFields(uri) {
|
46
|
+
return new Promise((resolve, reject) => {
|
47
|
+
DataFetcher.get()
|
48
|
+
.callGraphQL({
|
49
|
+
values: { name: uri },
|
50
|
+
query: this.templateByQuery.get("fetchFilterFields"),
|
51
|
+
})
|
52
|
+
.then((resp) => {
|
53
|
+
let fields = resp.fields;
|
54
|
+
for (const field of fields) {
|
55
|
+
if (Array.isArray(field.properties) && field.properties.length > 0 && field.userInterface === "SEARCH") {
|
56
|
+
const propertiesConvertedObject = field.properties.reduce((accumulator, prop) => {
|
57
|
+
accumulator[prop.name] = prop.value;
|
58
|
+
return accumulator;
|
59
|
+
}, {});
|
60
|
+
field.properties = propertiesConvertedObject;
|
61
|
+
}
|
62
|
+
}
|
63
|
+
resolve(Object.assign(Object.assign({}, resp), { fields: fields }));
|
64
|
+
})
|
65
|
+
.catch((error) => {
|
66
|
+
reject(error);
|
67
|
+
});
|
68
|
+
});
|
69
|
+
}
|
70
|
+
}
|
71
|
+
|
72
|
+
const snkPersonalizedFilterCss = ":host{display:flex}";
|
73
|
+
|
74
|
+
const SnkPersonalizedFilter$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
75
|
+
constructor() {
|
76
|
+
super();
|
77
|
+
this.__registerHost();
|
78
|
+
this._personalizedFilterFetcher = new PersonalizedFilterFetcher();
|
79
|
+
this._dataSourceFetcher = {
|
80
|
+
fetchData: async (entity) => {
|
81
|
+
let entityURI = entity === null || entity === void 0 ? void 0 : entity.uri;
|
82
|
+
if (StringUtils.isEmpty(entityURI)) {
|
83
|
+
entityURI = "dd://Financeiro/br.com.sankhya.fin.cad.receber"; //TODO: Receber como prop
|
84
|
+
}
|
85
|
+
return await this._personalizedFilterFetcher.loadFields(entityURI);
|
86
|
+
}
|
87
|
+
};
|
88
|
+
this.items = {
|
89
|
+
entityName: "Financeiro",
|
90
|
+
fieldName: "CODBCO",
|
91
|
+
description: "Financeiro >> Banco",
|
92
|
+
type: FilterUserConfigTypes.DECIMAL,
|
93
|
+
expression: "Financeiro.CODBCO",
|
94
|
+
operand: FilterOperand.EQUAL,
|
95
|
+
paramVariable: false,
|
96
|
+
value: "61",
|
97
|
+
systemConfig: null,
|
98
|
+
userConfig: null
|
99
|
+
};
|
100
|
+
this.handleFilterItemChange = (changes) => {
|
101
|
+
console.log("Campo do ExpressionItem alterado");
|
102
|
+
console.log(changes);
|
103
|
+
};
|
104
|
+
this.handleFilterItemRemove = (expression) => {
|
105
|
+
console.log("Event de deleção disparado");
|
106
|
+
console.log(expression);
|
107
|
+
};
|
108
|
+
this.messagesBuilder = undefined;
|
109
|
+
}
|
110
|
+
componentWillLoad() {
|
111
|
+
if (store.get("filterFieldsDataSource") == undefined) {
|
112
|
+
store.set("filterFieldsDataSource", this._dataSourceFetcher);
|
113
|
+
}
|
114
|
+
if (!this.messagesBuilder) {
|
115
|
+
const snkApp = ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
116
|
+
this.messagesBuilder = snkApp === null || snkApp === void 0 ? void 0 : snkApp.messagesBuilder;
|
117
|
+
}
|
118
|
+
}
|
119
|
+
render() {
|
120
|
+
return (h(Host, null, h("div", null, h("snk-expression-item", { expression: this.items, canRemove: true, onEzFilterItemChange: (evt) => this.handleFilterItemChange(evt.detail), onEzFilterItemRemove: (evt) => this.handleFilterItemRemove(evt.detail), messagesBuilder: this.messagesBuilder }))));
|
121
|
+
}
|
122
|
+
static get style() { return snkPersonalizedFilterCss; }
|
123
|
+
}, [0, "snk-personalized-filter", {
|
124
|
+
"messagesBuilder": [1040]
|
125
|
+
}]);
|
126
|
+
function defineCustomElement$1() {
|
127
|
+
if (typeof customElements === "undefined") {
|
128
|
+
return;
|
129
|
+
}
|
130
|
+
const components = ["snk-personalized-filter", "snk-expression-item", "snk-filter-field-search", "snk-filter-param-config"];
|
131
|
+
components.forEach(tagName => { switch (tagName) {
|
132
|
+
case "snk-personalized-filter":
|
133
|
+
if (!customElements.get(tagName)) {
|
134
|
+
customElements.define(tagName, SnkPersonalizedFilter$1);
|
135
|
+
}
|
136
|
+
break;
|
137
|
+
case "snk-expression-item":
|
138
|
+
if (!customElements.get(tagName)) {
|
139
|
+
defineCustomElement$4();
|
140
|
+
}
|
141
|
+
break;
|
142
|
+
case "snk-filter-field-search":
|
143
|
+
if (!customElements.get(tagName)) {
|
144
|
+
defineCustomElement$3();
|
145
|
+
}
|
146
|
+
break;
|
147
|
+
case "snk-filter-param-config":
|
148
|
+
if (!customElements.get(tagName)) {
|
149
|
+
defineCustomElement$2();
|
150
|
+
}
|
151
|
+
break;
|
152
|
+
} });
|
153
|
+
}
|
154
|
+
|
155
|
+
const SnkPersonalizedFilter = SnkPersonalizedFilter$1;
|
156
|
+
const defineCustomElement = defineCustomElement$1;
|
157
|
+
|
158
|
+
export { SnkPersonalizedFilter, defineCustomElement };
|
@@ -1,205 +1,11 @@
|
|
1
|
-
import {
|
1
|
+
import { h, proxyCustomElement, HTMLElement, createEvent, Host } from '@stencil/core/internal/client';
|
2
2
|
import { StringUtils, ApplicationContext, ElementIDUtils } from '@sankhyalabs/core';
|
3
3
|
import { A as AuthorizationConfig } from './AuthorizationConfig.js';
|
4
4
|
import { P as PresentationMode } from './index2.js';
|
5
|
+
import { s as store } from './index3.js';
|
5
6
|
import { d as defineCustomElement$2 } from './snk-data-exporter2.js';
|
6
7
|
import { d as defineCustomElement$1 } from './snk-exporter-email-sender2.js';
|
7
8
|
|
8
|
-
const appendToMap = (map, propName, value) => {
|
9
|
-
const items = map.get(propName);
|
10
|
-
if (!items) {
|
11
|
-
map.set(propName, [value]);
|
12
|
-
}
|
13
|
-
else if (!items.includes(value)) {
|
14
|
-
items.push(value);
|
15
|
-
}
|
16
|
-
};
|
17
|
-
const debounce = (fn, ms) => {
|
18
|
-
let timeoutId;
|
19
|
-
return (...args) => {
|
20
|
-
if (timeoutId) {
|
21
|
-
clearTimeout(timeoutId);
|
22
|
-
}
|
23
|
-
timeoutId = setTimeout(() => {
|
24
|
-
timeoutId = 0;
|
25
|
-
fn(...args);
|
26
|
-
}, ms);
|
27
|
-
};
|
28
|
-
};
|
29
|
-
|
30
|
-
/**
|
31
|
-
* Check if a possible element isConnected.
|
32
|
-
* The property might not be there, so we check for it.
|
33
|
-
*
|
34
|
-
* We want it to return true if isConnected is not a property,
|
35
|
-
* otherwise we would remove these elements and would not update.
|
36
|
-
*
|
37
|
-
* Better leak in Edge than to be useless.
|
38
|
-
*/
|
39
|
-
const isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;
|
40
|
-
const cleanupElements = debounce((map) => {
|
41
|
-
for (let key of map.keys()) {
|
42
|
-
map.set(key, map.get(key).filter(isConnected));
|
43
|
-
}
|
44
|
-
}, 2000);
|
45
|
-
const stencilSubscription = () => {
|
46
|
-
if (typeof getRenderingRef !== 'function') {
|
47
|
-
// If we are not in a stencil project, we do nothing.
|
48
|
-
// This function is not really exported by @stencil/core.
|
49
|
-
return {};
|
50
|
-
}
|
51
|
-
const elmsToUpdate = new Map();
|
52
|
-
return {
|
53
|
-
dispose: () => elmsToUpdate.clear(),
|
54
|
-
get: (propName) => {
|
55
|
-
const elm = getRenderingRef();
|
56
|
-
if (elm) {
|
57
|
-
appendToMap(elmsToUpdate, propName, elm);
|
58
|
-
}
|
59
|
-
},
|
60
|
-
set: (propName) => {
|
61
|
-
const elements = elmsToUpdate.get(propName);
|
62
|
-
if (elements) {
|
63
|
-
elmsToUpdate.set(propName, elements.filter(forceUpdate));
|
64
|
-
}
|
65
|
-
cleanupElements(elmsToUpdate);
|
66
|
-
},
|
67
|
-
reset: () => {
|
68
|
-
elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));
|
69
|
-
cleanupElements(elmsToUpdate);
|
70
|
-
},
|
71
|
-
};
|
72
|
-
};
|
73
|
-
|
74
|
-
const unwrap = (val) => (typeof val === 'function' ? val() : val);
|
75
|
-
const createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {
|
76
|
-
const unwrappedState = unwrap(defaultState);
|
77
|
-
let states = new Map(Object.entries(unwrappedState !== null && unwrappedState !== void 0 ? unwrappedState : {}));
|
78
|
-
const handlers = {
|
79
|
-
dispose: [],
|
80
|
-
get: [],
|
81
|
-
set: [],
|
82
|
-
reset: [],
|
83
|
-
};
|
84
|
-
const reset = () => {
|
85
|
-
var _a;
|
86
|
-
// When resetting the state, the default state may be a function - unwrap it to invoke it.
|
87
|
-
// otherwise, the state won't be properly reset
|
88
|
-
states = new Map(Object.entries((_a = unwrap(defaultState)) !== null && _a !== void 0 ? _a : {}));
|
89
|
-
handlers.reset.forEach((cb) => cb());
|
90
|
-
};
|
91
|
-
const dispose = () => {
|
92
|
-
// Call first dispose as resetting the state would
|
93
|
-
// cause less updates ;)
|
94
|
-
handlers.dispose.forEach((cb) => cb());
|
95
|
-
reset();
|
96
|
-
};
|
97
|
-
const get = (propName) => {
|
98
|
-
handlers.get.forEach((cb) => cb(propName));
|
99
|
-
return states.get(propName);
|
100
|
-
};
|
101
|
-
const set = (propName, value) => {
|
102
|
-
const oldValue = states.get(propName);
|
103
|
-
if (shouldUpdate(value, oldValue, propName)) {
|
104
|
-
states.set(propName, value);
|
105
|
-
handlers.set.forEach((cb) => cb(propName, value, oldValue));
|
106
|
-
}
|
107
|
-
};
|
108
|
-
const state = (typeof Proxy === 'undefined'
|
109
|
-
? {}
|
110
|
-
: new Proxy(unwrappedState, {
|
111
|
-
get(_, propName) {
|
112
|
-
return get(propName);
|
113
|
-
},
|
114
|
-
ownKeys(_) {
|
115
|
-
return Array.from(states.keys());
|
116
|
-
},
|
117
|
-
getOwnPropertyDescriptor() {
|
118
|
-
return {
|
119
|
-
enumerable: true,
|
120
|
-
configurable: true,
|
121
|
-
};
|
122
|
-
},
|
123
|
-
has(_, propName) {
|
124
|
-
return states.has(propName);
|
125
|
-
},
|
126
|
-
set(_, propName, value) {
|
127
|
-
set(propName, value);
|
128
|
-
return true;
|
129
|
-
},
|
130
|
-
}));
|
131
|
-
const on = (eventName, callback) => {
|
132
|
-
handlers[eventName].push(callback);
|
133
|
-
return () => {
|
134
|
-
removeFromArray(handlers[eventName], callback);
|
135
|
-
};
|
136
|
-
};
|
137
|
-
const onChange = (propName, cb) => {
|
138
|
-
const unSet = on('set', (key, newValue) => {
|
139
|
-
if (key === propName) {
|
140
|
-
cb(newValue);
|
141
|
-
}
|
142
|
-
});
|
143
|
-
// We need to unwrap the defaultState because it might be a function.
|
144
|
-
// Otherwise we might not be sending the right reset value.
|
145
|
-
const unReset = on('reset', () => cb(unwrap(defaultState)[propName]));
|
146
|
-
return () => {
|
147
|
-
unSet();
|
148
|
-
unReset();
|
149
|
-
};
|
150
|
-
};
|
151
|
-
const use = (...subscriptions) => {
|
152
|
-
const unsubs = subscriptions.reduce((unsubs, subscription) => {
|
153
|
-
if (subscription.set) {
|
154
|
-
unsubs.push(on('set', subscription.set));
|
155
|
-
}
|
156
|
-
if (subscription.get) {
|
157
|
-
unsubs.push(on('get', subscription.get));
|
158
|
-
}
|
159
|
-
if (subscription.reset) {
|
160
|
-
unsubs.push(on('reset', subscription.reset));
|
161
|
-
}
|
162
|
-
if (subscription.dispose) {
|
163
|
-
unsubs.push(on('dispose', subscription.dispose));
|
164
|
-
}
|
165
|
-
return unsubs;
|
166
|
-
}, []);
|
167
|
-
return () => unsubs.forEach((unsub) => unsub());
|
168
|
-
};
|
169
|
-
const forceUpdate = (key) => {
|
170
|
-
const oldValue = states.get(key);
|
171
|
-
handlers.set.forEach((cb) => cb(key, oldValue, oldValue));
|
172
|
-
};
|
173
|
-
return {
|
174
|
-
state,
|
175
|
-
get,
|
176
|
-
set,
|
177
|
-
on,
|
178
|
-
onChange,
|
179
|
-
use,
|
180
|
-
dispose,
|
181
|
-
reset,
|
182
|
-
forceUpdate,
|
183
|
-
};
|
184
|
-
};
|
185
|
-
const removeFromArray = (array, item) => {
|
186
|
-
const index = array.indexOf(item);
|
187
|
-
if (index >= 0) {
|
188
|
-
array[index] = array[array.length - 1];
|
189
|
-
array.length--;
|
190
|
-
}
|
191
|
-
};
|
192
|
-
|
193
|
-
const createStore = (defaultState, shouldUpdate) => {
|
194
|
-
const map = createObservableMap(defaultState, shouldUpdate);
|
195
|
-
map.use(stencilSubscription());
|
196
|
-
return map;
|
197
|
-
};
|
198
|
-
|
199
|
-
const store = createStore({
|
200
|
-
exporterProviders: {}
|
201
|
-
});
|
202
|
-
|
203
9
|
var TaskbarElement;
|
204
10
|
(function (TaskbarElement) {
|
205
11
|
TaskbarElement["PREVIOUS"] = "PREVIOUS";
|
@@ -553,4 +359,4 @@ function defineCustomElement() {
|
|
553
359
|
} });
|
554
360
|
}
|
555
361
|
|
556
|
-
export { SnkTaskbar as S, TaskbarElement as T, defineCustomElement as d
|
362
|
+
export { SnkTaskbar as S, TaskbarElement as T, defineCustomElement as d };
|
@@ -310,6 +310,19 @@ const snkAttachMessages = {
|
|
310
310
|
}
|
311
311
|
};
|
312
312
|
|
313
|
+
const snkPersonalizedFilterMessages = {
|
314
|
+
info: {
|
315
|
+
labelSearchField: "Buscar campo",
|
316
|
+
labelOperator: "Operador",
|
317
|
+
labelValueVarible: "Valor variável",
|
318
|
+
titleTooltip: "Ao ativar um valor variável, é possível inserir um valor diferente sempre que o filtro for aplicado"
|
319
|
+
},
|
320
|
+
confirm: {
|
321
|
+
title: "Aviso",
|
322
|
+
description: `As informações da condição serão descartadas.</br></br><b>Gostaria de continuar?</b>`
|
323
|
+
}
|
324
|
+
};
|
325
|
+
|
313
326
|
class SnkMessageBuilder {
|
314
327
|
constructor(domainName) {
|
315
328
|
this._defaults = {
|
@@ -332,6 +345,7 @@ class SnkMessageBuilder {
|
|
332
345
|
snkFilterFieldSearch: snkFilterFieldSearchMessages,
|
333
346
|
snkSimpleBar: snkSimpleBarMessages,
|
334
347
|
snkAttach: snkAttachMessages,
|
348
|
+
snkPersonalizedFilter: snkPersonalizedFilterMessages
|
335
349
|
};
|
336
350
|
this._currentOperation = OperationMap.CLEAN;
|
337
351
|
this._domainName = domainName;
|
@@ -64,4 +64,4 @@ var FilterEntities;
|
|
64
64
|
FilterEntities["INSTANCE"] = "Instancia";
|
65
65
|
})(FilterEntities || (FilterEntities = {}));
|
66
66
|
|
67
|
-
export { DataExporterOption as D,
|
67
|
+
export { DataExporterOption as D, FilterUserConfigTypes as F, PresentationMode as P, DataExporterFormat as a, DataExporterType as b, FilterOperand as c, FilterConfigType as d, FilterEntities as e };
|
@@ -0,0 +1,199 @@
|
|
1
|
+
import { a as getRenderingRef, f as forceUpdate } from './index-cfd4bb13.js';
|
2
|
+
|
3
|
+
const appendToMap = (map, propName, value) => {
|
4
|
+
const items = map.get(propName);
|
5
|
+
if (!items) {
|
6
|
+
map.set(propName, [value]);
|
7
|
+
}
|
8
|
+
else if (!items.includes(value)) {
|
9
|
+
items.push(value);
|
10
|
+
}
|
11
|
+
};
|
12
|
+
const debounce = (fn, ms) => {
|
13
|
+
let timeoutId;
|
14
|
+
return (...args) => {
|
15
|
+
if (timeoutId) {
|
16
|
+
clearTimeout(timeoutId);
|
17
|
+
}
|
18
|
+
timeoutId = setTimeout(() => {
|
19
|
+
timeoutId = 0;
|
20
|
+
fn(...args);
|
21
|
+
}, ms);
|
22
|
+
};
|
23
|
+
};
|
24
|
+
|
25
|
+
/**
|
26
|
+
* Check if a possible element isConnected.
|
27
|
+
* The property might not be there, so we check for it.
|
28
|
+
*
|
29
|
+
* We want it to return true if isConnected is not a property,
|
30
|
+
* otherwise we would remove these elements and would not update.
|
31
|
+
*
|
32
|
+
* Better leak in Edge than to be useless.
|
33
|
+
*/
|
34
|
+
const isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;
|
35
|
+
const cleanupElements = debounce((map) => {
|
36
|
+
for (let key of map.keys()) {
|
37
|
+
map.set(key, map.get(key).filter(isConnected));
|
38
|
+
}
|
39
|
+
}, 2000);
|
40
|
+
const stencilSubscription = () => {
|
41
|
+
if (typeof getRenderingRef !== 'function') {
|
42
|
+
// If we are not in a stencil project, we do nothing.
|
43
|
+
// This function is not really exported by @stencil/core.
|
44
|
+
return {};
|
45
|
+
}
|
46
|
+
const elmsToUpdate = new Map();
|
47
|
+
return {
|
48
|
+
dispose: () => elmsToUpdate.clear(),
|
49
|
+
get: (propName) => {
|
50
|
+
const elm = getRenderingRef();
|
51
|
+
if (elm) {
|
52
|
+
appendToMap(elmsToUpdate, propName, elm);
|
53
|
+
}
|
54
|
+
},
|
55
|
+
set: (propName) => {
|
56
|
+
const elements = elmsToUpdate.get(propName);
|
57
|
+
if (elements) {
|
58
|
+
elmsToUpdate.set(propName, elements.filter(forceUpdate));
|
59
|
+
}
|
60
|
+
cleanupElements(elmsToUpdate);
|
61
|
+
},
|
62
|
+
reset: () => {
|
63
|
+
elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));
|
64
|
+
cleanupElements(elmsToUpdate);
|
65
|
+
},
|
66
|
+
};
|
67
|
+
};
|
68
|
+
|
69
|
+
const unwrap = (val) => (typeof val === 'function' ? val() : val);
|
70
|
+
const createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {
|
71
|
+
const unwrappedState = unwrap(defaultState);
|
72
|
+
let states = new Map(Object.entries(unwrappedState !== null && unwrappedState !== void 0 ? unwrappedState : {}));
|
73
|
+
const handlers = {
|
74
|
+
dispose: [],
|
75
|
+
get: [],
|
76
|
+
set: [],
|
77
|
+
reset: [],
|
78
|
+
};
|
79
|
+
const reset = () => {
|
80
|
+
var _a;
|
81
|
+
// When resetting the state, the default state may be a function - unwrap it to invoke it.
|
82
|
+
// otherwise, the state won't be properly reset
|
83
|
+
states = new Map(Object.entries((_a = unwrap(defaultState)) !== null && _a !== void 0 ? _a : {}));
|
84
|
+
handlers.reset.forEach((cb) => cb());
|
85
|
+
};
|
86
|
+
const dispose = () => {
|
87
|
+
// Call first dispose as resetting the state would
|
88
|
+
// cause less updates ;)
|
89
|
+
handlers.dispose.forEach((cb) => cb());
|
90
|
+
reset();
|
91
|
+
};
|
92
|
+
const get = (propName) => {
|
93
|
+
handlers.get.forEach((cb) => cb(propName));
|
94
|
+
return states.get(propName);
|
95
|
+
};
|
96
|
+
const set = (propName, value) => {
|
97
|
+
const oldValue = states.get(propName);
|
98
|
+
if (shouldUpdate(value, oldValue, propName)) {
|
99
|
+
states.set(propName, value);
|
100
|
+
handlers.set.forEach((cb) => cb(propName, value, oldValue));
|
101
|
+
}
|
102
|
+
};
|
103
|
+
const state = (typeof Proxy === 'undefined'
|
104
|
+
? {}
|
105
|
+
: new Proxy(unwrappedState, {
|
106
|
+
get(_, propName) {
|
107
|
+
return get(propName);
|
108
|
+
},
|
109
|
+
ownKeys(_) {
|
110
|
+
return Array.from(states.keys());
|
111
|
+
},
|
112
|
+
getOwnPropertyDescriptor() {
|
113
|
+
return {
|
114
|
+
enumerable: true,
|
115
|
+
configurable: true,
|
116
|
+
};
|
117
|
+
},
|
118
|
+
has(_, propName) {
|
119
|
+
return states.has(propName);
|
120
|
+
},
|
121
|
+
set(_, propName, value) {
|
122
|
+
set(propName, value);
|
123
|
+
return true;
|
124
|
+
},
|
125
|
+
}));
|
126
|
+
const on = (eventName, callback) => {
|
127
|
+
handlers[eventName].push(callback);
|
128
|
+
return () => {
|
129
|
+
removeFromArray(handlers[eventName], callback);
|
130
|
+
};
|
131
|
+
};
|
132
|
+
const onChange = (propName, cb) => {
|
133
|
+
const unSet = on('set', (key, newValue) => {
|
134
|
+
if (key === propName) {
|
135
|
+
cb(newValue);
|
136
|
+
}
|
137
|
+
});
|
138
|
+
// We need to unwrap the defaultState because it might be a function.
|
139
|
+
// Otherwise we might not be sending the right reset value.
|
140
|
+
const unReset = on('reset', () => cb(unwrap(defaultState)[propName]));
|
141
|
+
return () => {
|
142
|
+
unSet();
|
143
|
+
unReset();
|
144
|
+
};
|
145
|
+
};
|
146
|
+
const use = (...subscriptions) => {
|
147
|
+
const unsubs = subscriptions.reduce((unsubs, subscription) => {
|
148
|
+
if (subscription.set) {
|
149
|
+
unsubs.push(on('set', subscription.set));
|
150
|
+
}
|
151
|
+
if (subscription.get) {
|
152
|
+
unsubs.push(on('get', subscription.get));
|
153
|
+
}
|
154
|
+
if (subscription.reset) {
|
155
|
+
unsubs.push(on('reset', subscription.reset));
|
156
|
+
}
|
157
|
+
if (subscription.dispose) {
|
158
|
+
unsubs.push(on('dispose', subscription.dispose));
|
159
|
+
}
|
160
|
+
return unsubs;
|
161
|
+
}, []);
|
162
|
+
return () => unsubs.forEach((unsub) => unsub());
|
163
|
+
};
|
164
|
+
const forceUpdate = (key) => {
|
165
|
+
const oldValue = states.get(key);
|
166
|
+
handlers.set.forEach((cb) => cb(key, oldValue, oldValue));
|
167
|
+
};
|
168
|
+
return {
|
169
|
+
state,
|
170
|
+
get,
|
171
|
+
set,
|
172
|
+
on,
|
173
|
+
onChange,
|
174
|
+
use,
|
175
|
+
dispose,
|
176
|
+
reset,
|
177
|
+
forceUpdate,
|
178
|
+
};
|
179
|
+
};
|
180
|
+
const removeFromArray = (array, item) => {
|
181
|
+
const index = array.indexOf(item);
|
182
|
+
if (index >= 0) {
|
183
|
+
array[index] = array[array.length - 1];
|
184
|
+
array.length--;
|
185
|
+
}
|
186
|
+
};
|
187
|
+
|
188
|
+
const createStore = (defaultState, shouldUpdate) => {
|
189
|
+
const map = createObservableMap(defaultState, shouldUpdate);
|
190
|
+
map.use(stencilSubscription());
|
191
|
+
return map;
|
192
|
+
};
|
193
|
+
|
194
|
+
const store = createStore({
|
195
|
+
exporterProviders: {},
|
196
|
+
filterFieldsDataSource: undefined
|
197
|
+
});
|
198
|
+
|
199
|
+
export { store as s };
|
package/dist/esm/loader.js
CHANGED
@@ -11,7 +11,7 @@ const patchEsm = () => {
|
|
11
11
|
const defineCustomElements = (win, options) => {
|
12
12
|
if (typeof window === 'undefined') return Promise.resolve();
|
13
13
|
return patchEsm().then(() => {
|
14
|
-
return bootstrapLazy([["teste-pesquisa",[[1,"teste-pesquisa"]]],["snk-filter-binary-select",[[0,"snk-filter-binary-select",{"value":[1544],"config":[16],"show":[64]},[[0,"ezChange","ezChangeListener"]]]]],["snk-filter-
|
14
|
+
return bootstrapLazy([["snk-personalized-filter",[[0,"snk-personalized-filter",{"messagesBuilder":[1040]}]]],["teste-pesquisa",[[1,"teste-pesquisa"]]],["snk-filter-binary-select",[[0,"snk-filter-binary-select",{"value":[1544],"config":[16],"show":[64]},[[0,"ezChange","ezChangeListener"]]]]],["snk-filter-multi-select",[[0,"snk-filter-multi-select",{"value":[1544],"config":[16],"show":[64]},[[0,"ezChange","ezChangeListener"]]]]],["snk-filter-number",[[0,"snk-filter-number",{"config":[16],"value":[2],"show":[64]},[[0,"ezChange","ezChangeListener"]]]]],["snk-filter-period",[[0,"snk-filter-period",{"config":[16],"value":[8],"show":[64]},[[0,"ezChange","ezChangeListener"]]]]],["snk-filter-personalized",[[0,"snk-filter-personalized",{"config":[16],"value":[1040],"fix":[16],"unfix":[16],"show":[64]}]]],["snk-filter-search",[[0,"snk-filter-search",{"config":[16],"value":[16],"show":[64]},[[0,"ezChange","ezChangeListener"]]]]],["snk-filter-text",[[0,"snk-filter-text",{"config":[16],"value":[1]},[[0,"ezChange","ezChangeListener"]]]]],["snk-attach",[[2,"snk-attach",{"registerKey":[1,"register-key"],"entityName":[1,"entity-name"],"messagesBuilder":[1040],"dataUnit":[32],"crudConfig":[32]}]]],["snk-expression-item",[[2,"snk-expression-item",{"expression":[16],"canRemove":[516,"can-remove"],"messagesBuilder":[1040],"_showValueVariable":[32],"_fieldSelected":[32],"_optionNotNull":[32]}]]],["snk-detail-view",[[2,"snk-detail-view",{"formConfigManager":[1040],"dataUnitName":[1,"data-unit-name"],"guideItemPath":[16],"entityName":[1,"entity-name"],"label":[1],"dataUnit":[1040],"selectedForm":[1025,"selected-form"],"dataState":[1040],"messagesBuilder":[1040],"branchGuide":[16],"_disabledButtons":[32],"changeViewMode":[64],"configGrid":[64],"showUp":[64]},[[0,"snkContentCardChanged","onContentCardChanged"]]]]],["snk-configurator",[[2,"snk-configurator",{"configName":[1,"config-name"],"viewMode":[2,"view-mode"],"messagesBuilder":[1040],"_opened":[32],"_permissions":[32],"open":[64],"close":[64]}]]],["snk-pesquisa",[[2,"snk-pesquisa",{"searchLoader":[16],"selectItem":[16],"argument":[1025],"_itemList":[32],"_startLoading":[32]}]]],["snk-simple-bar_2",[[6,"snk-simple-crud",{"dataState":[16],"dataUnit":[16],"mode":[2],"gridConfig":[16],"formConfig":[16],"useCancelConfirm":[4,"use-cancel-confirm"],"taskbarManager":[16],"messagesBuilder":[1040],"_currentViewMode":[32],"_config":[32],"goToView":[64],"setMetadata":[64],"setRecords":[64],"getRecords":[64]},[[0,"actionClick","actionClickListener"]]],[6,"snk-simple-bar",{"label":[1],"breadcrumbItens":[16],"messagesBuilder":[1040]}]]],["snk-filter-bar",[[2,"snk-filter-bar",{"dataUnit":[1040],"configName":[1,"config-name"],"filterConfig":[1040],"messagesBuilder":[1040],"allowDefault":[32],"scrollerLocked":[32]},[[0,"filterChange","filterChangeListener"]]]]],["snk-grid-config",[[2,"snk-grid-config",{"selectedIndex":[1026,"selected-index"],"application":[16],"columns":[1040],"config":[1040],"configName":[1,"config-name"]}]]],["snk-filter-field-search_2",[[2,"snk-filter-field-search",{"searchable":[4],"fieldsDataSource":[16],"breadcrumbItems":[32],"linkItems":[32],"fieldItems":[32],"show":[64],"applyFilter":[64]}],[0,"snk-filter-param-config",{"messagesBuilder":[1040],"_opened":[32],"_configType":[32],"_expressionItem":[32],"_informedInstance":[32],"_canSave":[32],"open":[64],"close":[64]}]]],["snk-config-options",[[2,"snk-config-options",{"fieldConfig":[16],"idConfig":[513,"id-config"],"dataUnit":[16],"messagesBuilder":[1040],"_defaultType":[32]}]]],["snk-field-config",[[2,"snk-field-config",{"isConfigActive":[16],"fieldConfig":[16],"modeInsertion":[516,"mode-insertion"],"dataUnit":[16],"messagesBuilder":[1040]}]]],["snk-tab-config",[[6,"snk-tab-config",{"selectedIndex":[1538,"selected-index"],"selectedTab":[1537,"selected-tab"],"tabs":[1],"messagesBuilder":[1040],"_processedTabs":[32],"_activeEditText":[32],"_activeEditTextIndex":[32],"_actionsHide":[32],"_actionsShow":[32]}]]],["snk-form-config",[[2,"snk-form-config",{"dataUnit":[16],"configManager":[16],"messagesBuilder":[1040],"_formConfigOptions":[32],"_fieldConfigSelected":[32],"_layoutFormConfig":[32],"_fieldsAvailable":[32],"_formConfig":[32],"_formConfigChanged":[32],"_optionFormConfigSelected":[32],"_optionFormConfigChanged":[32],"_tempGroups":[32]}]]],["snk-filter-item",[[0,"snk-filter-item",{"config":[1040],"getMessage":[16],"detailIsVisible":[32],"showUp":[64],"hideDetail":[64]},[[2,"click","clickListener"],[2,"mousedown","mouseDownListener"],[0,"filterChange","filterChangeListener"]]]]],["snk-data-unit",[[2,"snk-data-unit",{"dataState":[1040],"messagesBuilder":[1040],"dataUnitName":[1,"data-unit-name"],"entityName":[1,"entity-name"],"pageSize":[2,"page-size"],"dataUnit":[1040],"beforeSave":[16],"afterSave":[16],"useCancelConfirm":[4,"use-cancel-confirm"],"getDataUnit":[64],"getSelectedRecordsIDsInfo":[64]}]]],["snk-filter-list",[[4,"snk-filter-list",{"label":[1],"iconName":[1,"icon-name"],"items":[16],"getMessage":[16],"emptyText":[1,"empty-text"],"findFilterText":[1,"find-filter-text"],"buttonClass":[1,"button-class"],"_filterArgument":[32],"_showAll":[32],"hideDetail":[64]},[[2,"keydown","keyDownHandler"]]]]],["snk-select-box",[[1,"snk-select-box",{"selectedOption":[1,"selected-option"]}]]],["snk-filter-detail",[[0,"snk-filter-detail",{"config":[1040],"getMessage":[16],"show":[64]}]]],["snk-exporter-email-sender",[[0,"snk-exporter-email-sender",{"getMessage":[16],"_config":[32],"_opened":[32],"_currentStep":[32],"open":[64],"close":[64]}]]],["snk-data-exporter",[[2,"snk-data-exporter",{"provider":[16],"messagesBuilder":[1040],"_items":[32],"_showDropdown":[32],"_releasedToExport":[32]}]]],["snk-guides-viewer",[[2,"snk-guides-viewer",{"_guideBuilders":[16],"dataUnit":[16],"dataState":[16],"configName":[1,"config-name"],"entityPath":[1,"entity-path"],"actionsList":[16],"recordsValidator":[16],"masterFormConfig":[1040],"selectedGuide":[16],"taskbarManager":[16],"messagesBuilder":[1040],"presentationMode":[1,"presentation-mode"],"_breadcrumbItems":[32],"_guides":[32],"_formEditorConfigManager":[32],"_formEditorDataUnit":[32],"showFormConfig":[64]},[[2,"actionClick","onActionClick"],[0,"snkContentCardChanged","onContentCardChanged"]]]]],["snk-crud",[[6,"snk-crud",{"configName":[1025,"config-name"],"actionsList":[16],"taskbarManager":[16],"recordsValidator":[16],"statusResolver":[16],"multipleSelection":[4,"multiple-selection"],"presentationMode":[1,"presentation-mode"],"messagesBuilder":[1040],"_dataUnit":[32],"_dataState":[32],"attachmentRegisterKey":[32],"_currentViewMode":[32],"goToView":[64]}]]],["snk-form",[[2,"snk-form",{"configName":[1,"config-name"],"recordsValidator":[16],"messagesBuilder":[1040],"_dataUnit":[32],"_dataState":[32],"_showFormConfig":[32],"_configManager":[32],"showConfig":[64],"hideConfig":[64]}]]],["snk-application",[[2,"snk-application",{"messagesBuilder":[1040],"configName":[1,"config-name"],"isUserSup":[64],"hasAccess":[64],"getAllAccess":[64],"getStringParam":[64],"getIntParam":[64],"getFloatParam":[64],"getBooleanParam":[64],"getDateParam":[64],"showPopUp":[64],"showModal":[64],"closeModal":[64],"closePopUp":[64],"temOpcional":[64],"getConfig":[64],"saveConfig":[64],"getAttributeFromHTMLWrapper":[64],"openApp":[64],"webConnection":[64],"createDataunit":[64],"updateDataunitCache":[64],"getDataUnit":[64],"addClientEvent":[64],"removeClientEvent":[64],"hasClientEvent":[64],"getResourceID":[64],"getUserID":[64],"alert":[64],"error":[64],"success":[64],"message":[64],"confirm":[64],"info":[64],"loadGridConfig":[64],"loadTotals":[64],"executeSearch":[64],"executePreparedSearch":[64],"isDebugMode":[64],"getAppLabel":[64],"addSearchListener":[64]}]]],["snk-grid",[[6,"snk-grid",{"configName":[1,"config-name"],"actionsList":[16],"isDetail":[4,"is-detail"],"taskbarManager":[16],"statusResolver":[16],"multipleSelection":[4,"multiple-selection"],"presentationMode":[1,"presentation-mode"],"messagesBuilder":[1040],"_dataUnit":[32],"_dataState":[32],"_gridConfig":[32],"_popUpGridConfig":[32],"showConfig":[64],"hideConfig":[64],"setConfig":[64]}]]],["snk-form-summary",[[2,"snk-form-summary",{"fixed":[1540],"contracted":[1540],"summary":[16]}]]],["snk-form-view",[[6,"snk-form-view",{"levelPath":[1,"level-path"],"label":[1],"name":[1],"fields":[16],"formMetadata":[8,"form-metadata"],"dataUnit":[16],"contracted":[4],"fixed":[1540],"summaryFields":[16],"canExpand":[4,"can-expand"],"canFix":[4,"can-fix"],"recordsValidator":[16],"showUp":[64]}]]],["snk-filter-modal",[[0,"snk-filter-modal",{"getMessage":[16],"items":[1040],"modalTitle":[1,"modal-title"],"modalSubTitle":[1,"modal-sub-title"],"cancelButtonLabel":[1,"cancel-button-label"],"okButtonLabel":[1,"ok-button-label"],"infoText":[1,"info-text"],"useSearch":[4,"use-search"],"processModalAction":[16],"_filterArgument":[32]}]]],["snk-taskbar",[[6,"snk-taskbar",{"configName":[1,"config-name"],"buttons":[1],"customButtons":[16],"actionsList":[16],"primaryButton":[1,"primary-button"],"disabledButtons":[16],"dataUnit":[16],"presentationMode":[1537,"presentation-mode"],"messagesBuilder":[1040],"_permissions":[32]}]]]], options);
|
15
15
|
});
|
16
16
|
};
|
17
17
|
|