@sankhyalabs/sankhyablocks 1.3.30 → 1.3.31-beta.3

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.
Files changed (68) hide show
  1. package/dist/cjs/{index-1133bc2a.js → index-e42cb45d.js} +448 -9
  2. package/dist/cjs/loader.cjs.js +2 -2
  3. package/dist/cjs/sankhyablocks.cjs.js +2 -2
  4. package/dist/cjs/snk-application.cjs.entry.js +105 -79
  5. package/dist/cjs/snk-data-unit.cjs.entry.js +144 -0
  6. package/dist/cjs/snk-form.cjs.entry.js +95 -0
  7. package/dist/cjs/snk-grid.cjs.entry.js +64 -0
  8. package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
  9. package/dist/cjs/snk-taskbar.cjs.entry.js +159 -0
  10. package/dist/cjs/taskbar-elements-bfa647c7.js +68 -0
  11. package/dist/cjs/teste-pesquisa.cjs.entry.js +1 -1
  12. package/dist/collection/collection-manifest.json +4 -0
  13. package/dist/collection/components/snk-application/snk-application.js +52 -5
  14. package/dist/collection/components/snk-data-unit/snk-data-unit.css +6 -0
  15. package/dist/collection/components/snk-data-unit/snk-data-unit.js +325 -0
  16. package/dist/collection/components/snk-form/snk-form.css +3 -0
  17. package/dist/collection/components/snk-form/snk-form.js +194 -0
  18. package/dist/collection/components/snk-grid/snk-grid.css +5 -0
  19. package/dist/collection/components/snk-grid/snk-grid.js +128 -0
  20. package/dist/collection/components/snk-taskbar/component/snk-popup-button.js +7 -0
  21. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +63 -0
  22. package/dist/collection/components/snk-taskbar/snk-taskbar.css +3 -0
  23. package/dist/collection/components/snk-taskbar/snk-taskbar.js +268 -0
  24. package/dist/collection/lib/http/data-fetcher/fetchers/dataunit-fetcher.js +32 -21
  25. package/dist/collection/lib/http/data-fetcher/fetchers/grid-config-fetcher.js +4 -3
  26. package/dist/components/snk-application2.js +105 -78
  27. package/dist/components/snk-data-unit.d.ts +11 -0
  28. package/dist/components/snk-data-unit.js +165 -0
  29. package/dist/components/snk-form.d.ts +11 -0
  30. package/dist/components/snk-form.js +121 -0
  31. package/dist/components/snk-grid.d.ts +11 -0
  32. package/dist/components/snk-grid.js +88 -0
  33. package/dist/components/snk-taskbar.d.ts +11 -0
  34. package/dist/components/snk-taskbar.js +6 -0
  35. package/dist/components/snk-taskbar2.js +239 -0
  36. package/dist/esm/{index-ffda6382.js → index-02c04e0f.js} +448 -10
  37. package/dist/esm/loader.js +2 -2
  38. package/dist/esm/sankhyablocks.js +2 -2
  39. package/dist/esm/snk-application.entry.js +105 -79
  40. package/dist/esm/snk-data-unit.entry.js +140 -0
  41. package/dist/esm/snk-form.entry.js +91 -0
  42. package/dist/esm/snk-grid.entry.js +60 -0
  43. package/dist/esm/snk-pesquisa.entry.js +1 -1
  44. package/dist/esm/snk-taskbar.entry.js +155 -0
  45. package/dist/esm/taskbar-elements-fe7cbf0e.js +66 -0
  46. package/dist/esm/teste-pesquisa.entry.js +1 -1
  47. package/dist/sankhyablocks/p-09e48ff8.entry.js +1 -0
  48. package/dist/sankhyablocks/{p-2a7b4cb3.entry.js → p-376004ef.entry.js} +1 -1
  49. package/dist/sankhyablocks/p-37b06977.entry.js +1 -0
  50. package/dist/sankhyablocks/p-64e2471c.js +1 -0
  51. package/dist/sankhyablocks/p-b80352ac.entry.js +69 -0
  52. package/dist/sankhyablocks/p-c156b1da.entry.js +1 -0
  53. package/dist/sankhyablocks/p-cc9c348a.entry.js +1 -0
  54. package/dist/sankhyablocks/p-db215c74.js +2 -0
  55. package/dist/sankhyablocks/{p-d62412bb.entry.js → p-e38386b1.entry.js} +1 -1
  56. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  57. package/dist/types/components/snk-application/snk-application.d.ts +3 -1
  58. package/dist/types/components/snk-taskbar/component/snk-popup-button.d.ts +12 -0
  59. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +24 -0
  60. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +28 -0
  61. package/dist/types/components.d.ts +112 -1
  62. package/dist/types/lib/http/data-fetcher/fetchers/grid-config-fetcher.d.ts +1 -1
  63. package/package.json +5 -5
  64. package/react/components.d.ts +4 -0
  65. package/react/components.js +4 -0
  66. package/react/components.js.map +1 -1
  67. package/dist/sankhyablocks/p-e6e91d5f.entry.js +0 -69
  68. package/dist/sankhyablocks/p-edcb9d8e.js +0 -2
@@ -0,0 +1,60 @@
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-02c04e0f.js';
2
+ import { ApplicationContext } from '@sankhyalabs/core';
3
+ import { T as TaskbarElement } from './taskbar-elements-fe7cbf0e.js';
4
+
5
+ const snkGridCss = ".sc-snk-grid-h{display:flex;height:100%;width:100%}";
6
+
7
+ const SnkGrid = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.actionClick = createEvent(this, "actionClick", 7);
11
+ }
12
+ getHeaderButtons() {
13
+ return this._dataState && this._dataState.selectedRecords.length > 0 ? "UPDATE,CLONE,REMOVE,MORE_OPTIONS,DIVIDER,REFRESH" : "REFRESH";
14
+ }
15
+ actionClickHandler(evt) {
16
+ if (evt.detail === TaskbarElement.CONFIG_GRID && this._grid) {
17
+ this._grid.openGridConfig();
18
+ }
19
+ }
20
+ componentWillLoad() {
21
+ let parent = this._element.parentElement;
22
+ while (parent) {
23
+ if (parent.tagName.toUpperCase() === "SNK-DATA-UNIT") {
24
+ this._snkDataUnit = parent;
25
+ this._dataUnit = this._snkDataUnit.dataUnit;
26
+ if (!this._dataUnit) {
27
+ this._snkDataUnit.addEventListener("dataUnitReady", (evt) => {
28
+ this._dataUnit = evt.detail;
29
+ });
30
+ }
31
+ this._snkDataUnit.addEventListener("dataStateChange", (evt) => {
32
+ this._dataState = evt.detail;
33
+ });
34
+ break;
35
+ }
36
+ parent = parent.parentElement;
37
+ }
38
+ }
39
+ componentWillRender() {
40
+ if (this._dataUnit && !this._configLoaded) {
41
+ const snkApplication = ApplicationContext.getContextValue("__SNK__APPLICATION__");
42
+ if (snkApplication) {
43
+ snkApplication.loadGridConfig(this.configName).then(cfg => {
44
+ this._gridConfig = cfg;
45
+ this._configLoaded = true;
46
+ });
47
+ }
48
+ }
49
+ }
50
+ render() {
51
+ if (!this._configLoaded || !this._dataUnit) {
52
+ return undefined;
53
+ }
54
+ return (h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" }, h("div", { class: "ez-row ez-padding-bottom--medium ez-margin-bottom--medium" }, h("div", { class: "ez-col ez-col--sd-9 ez-col--tb-9 ez-align--bottom" }, h("slot", null)), h("div", { class: "ez-col ez-col--sd-3 ez-col--tb-3 ez-align--right" }, h("snk-taskbar", { onActionClick: evt => this.actionClickHandler(evt), key: "topTaskbar", dataUnit: this._dataUnit, buttons: "FORM_MODE,CONFIG_GRID,INSERT", primaryButton: "INSERT" }))), h("ez-grid", { ref: ref => this._grid = ref, dataUnit: this._dataUnit, key: "grid-" + this._snkDataUnit.entityName, config: this._gridConfig }, h("snk-taskbar", { dataUnit: this._dataUnit, buttons: this.getHeaderButtons(), slot: "leftButtons", actionsList: this.actionsList }))));
55
+ }
56
+ get _element() { return getElement(this); }
57
+ };
58
+ SnkGrid.style = snkGridCss;
59
+
60
+ export { SnkGrid as snk_grid };
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-ffda6382.js';
1
+ import { r as registerInstance, h, H as Host } from './index-02c04e0f.js';
2
2
  import { ObjectUtils, StringUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const snkPesquisaCss = ".sc-snk-pesquisa-h{--snk-pesquisa--font-size:var(--text--medium, 14px);--snk-pesquisa--font-family:var(--font-pattern, Arial);--snk-pesquisa--font-weight:var(--text-weight--medium, 400);--snk-pesquisa__records--color:var(--text--primary, #626e82);--snk-pesquisa__records--padding-vertical:var(--space--medium, 12px);--snk-pesquisa__content--padding-right:var(--space--small, 6px);--snk-pesquisa__content-scrollbar--background-color:var(--text--primary, #626e82);--snk-pesquisa__content-scrollbar--border-radius:var(--border--radius-medium, 12px);--snk-pesquisa__content-scrollbar--width:var(--space--medium, 12px) display: block;max-height:100%;height:100%;display:flex;flex-direction:column;overflow-y:auto}.snk-pesquisa.sc-snk-pesquisa{display:flex;flex-direction:column;height:100%}.snk-pesquisa__input.sc-snk-pesquisa{display:flex;width:100%;box-sizing:border-box;padding-top:4px;padding-right:4px}.snk-pesquisa__input-close.sc-snk-pesquisa{cursor:pointer}.snk-pesquisa__content.sc-snk-pesquisa{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding-right:var(--snk-pesquisa__content--padding-right)}.snk-pesquisa__content.sc-snk-pesquisa::-webkit-scrollbar-track{background-color:#f0f2f5;border-radius:var(--snk-pesquisa__content-scrollbar--border-radius)}.snk-pesquisa__content.sc-snk-pesquisa::-webkit-scrollbar-thumb{background-color:var(--snk-pesquisa__content-scrollbar--background-color);border-radius:var(--snk-pesquisa__content-scrollbar--border-radius)}.snk-pesquisa__content.sc-snk-pesquisa::-webkit-scrollbar{background-color:#f0f2f5;width:var(--snk-pesquisa__content-scrollbar--width);max-width:var(--snk-pesquisa__content-scrollbar--width);min-width:var(--snk-pesquisa__content-scrollbar--width)}.snk-pesquisa__records.sc-snk-pesquisa{font-family:var(--snk-pesquisa--font-family);font-weight:var(--snk-pesquisa--font-weight);font-size:var(--snk-pesquisa--font-size);color:var(--snk-pesquisa__records--color);padding-bottom:var(--snk-pesquisa__records--padding-vertical);padding-top:var(--snk-pesquisa__records--padding-vertical)}";
@@ -0,0 +1,155 @@
1
+ import { h, r as registerInstance, c as createEvent, H as Host } from './index-02c04e0f.js';
2
+ import { ApplicationContext } from '@sankhyalabs/core';
3
+ import { A as AuthorizationElements, T as TaskbarElement, b as buildElem } from './taskbar-elements-fe7cbf0e.js';
4
+
5
+ const SnkPopupButton = ({ className, title, source, opened, setOpened, actionClick }) => {
6
+ return (h("div", { class: "ez-flex " + className },
7
+ h("ez-button", { id: "moreOptionsButton", title: title, mode: "icon", iconName: "dots-vertical", size: "small", onClick: () => setOpened(true) }),
8
+ h("ez-popover", { opened: opened, autoClose: true, innerElement: ["moreOptionsButton", "moreOptionsDiv"], onEzVisibilityChange: (event) => setOpened(event.detail) },
9
+ h("div", { id: "moreOptionsDiv", class: "ez-padding--small" }, source.map((option, index) => h("ez-button", { className: "btn-options", size: "small", label: option.label, key: index, onClick: () => actionClick(option) }))))));
10
+ };
11
+
12
+ const snkTaskbarCss = ".sc-snk-taskbar-h{display:flex}";
13
+
14
+ const SnkTaskbar = class {
15
+ constructor(hostRef) {
16
+ registerInstance(this, hostRef);
17
+ this.actionClick = createEvent(this, "actionClick", 7);
18
+ this._moreOptionsOpened = false;
19
+ }
20
+ observeButtons() {
21
+ this._definitions = undefined;
22
+ }
23
+ // Internal methods
24
+ elementsFromString(strButtons) {
25
+ const elements = [];
26
+ if (strButtons) {
27
+ strButtons.split(",").forEach(buttonName => {
28
+ buttonName = buttonName.trim();
29
+ if (this.isAllowed(buttonName)) {
30
+ elements.push(buttonName.trim());
31
+ }
32
+ });
33
+ }
34
+ return elements;
35
+ }
36
+ isAllowed(buttonName) {
37
+ if (AuthorizationElements[buttonName]) {
38
+ return this._permissions ? this._permissions.isSup || this._permissions[buttonName] : false;
39
+ }
40
+ return true;
41
+ }
42
+ getTitle(element) {
43
+ const pt_br = {
44
+ [TaskbarElement.UPDATE]: "Editar",
45
+ [TaskbarElement.PREVIOUS]: "Anterior",
46
+ [TaskbarElement.NEXT]: "Próximo",
47
+ [TaskbarElement.REFRESH]: "Atualizar",
48
+ [TaskbarElement.CLONE]: "Duplicar",
49
+ [TaskbarElement.REMOVE]: "Excluir",
50
+ [TaskbarElement.MORE_OPTIONS]: "Mais Opções",
51
+ [TaskbarElement.INSERT]: "Cadastrar",
52
+ [TaskbarElement.CANCEL]: "Cancelar",
53
+ [TaskbarElement.SAVE]: "Salvar",
54
+ [TaskbarElement.GRID_MODE]: "Modo Grade",
55
+ [TaskbarElement.CONFIG_GRID]: "Configuração da grade",
56
+ [TaskbarElement.FORM_MODE]: "Modo Formulário"
57
+ };
58
+ return pt_br[element] ? pt_br[element] : "";
59
+ }
60
+ elementClick(elem) {
61
+ if (this.dataUnit) {
62
+ switch (elem) {
63
+ case TaskbarElement.PREVIOUS:
64
+ this.dataUnit.previousRecord();
65
+ break;
66
+ case TaskbarElement.NEXT:
67
+ this.dataUnit.nextRecord();
68
+ break;
69
+ case TaskbarElement.REFRESH:
70
+ this.dataUnit.loadData();
71
+ break;
72
+ case TaskbarElement.CLONE:
73
+ this.dataUnit.copySelected();
74
+ break;
75
+ case TaskbarElement.REMOVE:
76
+ this.dataUnit.removeSelectedRecords();
77
+ break;
78
+ case TaskbarElement.INSERT:
79
+ this.dataUnit.addRecord();
80
+ break;
81
+ case TaskbarElement.CANCEL:
82
+ this.dataUnit.cancelEdition();
83
+ break;
84
+ case TaskbarElement.SAVE:
85
+ this.dataUnit.saveData();
86
+ break;
87
+ }
88
+ }
89
+ this.actionClick.emit(elem);
90
+ }
91
+ actionClickHandler(act) {
92
+ this._moreOptionsOpened = false;
93
+ this.actionClick.emit(act.key);
94
+ }
95
+ isEnabled(elem) {
96
+ return !(this.disabledButtons && this.disabledButtons.includes(elem));
97
+ }
98
+ getElement(index, def) {
99
+ let element;
100
+ let className = def === this.primaryButton ? "ez-button--primary " : "";
101
+ if (index > 1) {
102
+ className += "ez-padding-left--medium";
103
+ }
104
+ if (def === TaskbarElement.MORE_OPTIONS) {
105
+ element = this.actionsList ? h(SnkPopupButton, { className: className, title: this.getTitle(def), source: this.actionsList, opened: this._moreOptionsOpened, setOpened: opened => this._moreOptionsOpened = opened, actionClick: act => this.actionClickHandler(act) }) : undefined;
106
+ }
107
+ else {
108
+ element = buildElem(def, className, elem => this.getTitle(elem), elem => this.elementClick(elem), elem => this.isEnabled(elem));
109
+ }
110
+ return element;
111
+ }
112
+ // Lifecycle
113
+ componentWillRender() {
114
+ if (this._permissions === undefined) {
115
+ const snkApplication = ApplicationContext.getContextValue("__SNK__APPLICATION__");
116
+ if (snkApplication) {
117
+ snkApplication.getAllAccess().then(access => this._permissions = access);
118
+ }
119
+ else {
120
+ this._permissions = {};
121
+ }
122
+ }
123
+ else {
124
+ if (this._definitions == undefined) {
125
+ this._definitions = this.elementsFromString(this.buttons);
126
+ }
127
+ }
128
+ }
129
+ render() {
130
+ if (this._definitions === undefined) {
131
+ return undefined;
132
+ }
133
+ let index = 0;
134
+ return (h(Host, null, this._definitions.map((btn) => {
135
+ if (btn === TaskbarElement.DIVIDER) {
136
+ index = 0;
137
+ }
138
+ else {
139
+ index++;
140
+ }
141
+ if (TaskbarElement[btn]) {
142
+ return this.getElement(index, TaskbarElement[btn]);
143
+ }
144
+ else {
145
+ return h("slot", { name: btn });
146
+ }
147
+ })));
148
+ }
149
+ static get watchers() { return {
150
+ "buttons": ["observeButtons"]
151
+ }; }
152
+ };
153
+ SnkTaskbar.style = snkTaskbarCss;
154
+
155
+ export { SnkTaskbar as snk_taskbar };
@@ -0,0 +1,66 @@
1
+ import { h } from './index-02c04e0f.js';
2
+
3
+ var TaskbarElement;
4
+ (function (TaskbarElement) {
5
+ TaskbarElement["PREVIOUS"] = "PREVIOUS";
6
+ TaskbarElement["NEXT"] = "NEXT";
7
+ TaskbarElement["REFRESH"] = "REFRESH";
8
+ TaskbarElement["UPDATE"] = "UPDATE";
9
+ TaskbarElement["CLONE"] = "CLONE";
10
+ TaskbarElement["REMOVE"] = "REMOVE";
11
+ TaskbarElement["INSERT"] = "INSERT";
12
+ TaskbarElement["CANCEL"] = "CANCEL";
13
+ TaskbarElement["SAVE"] = "SAVE";
14
+ TaskbarElement["GRID_MODE"] = "GRID_MODE";
15
+ TaskbarElement["FORM_MODE"] = "FORM_MODE";
16
+ TaskbarElement["CONFIG_GRID"] = "CONFIG_GRID";
17
+ TaskbarElement["MORE_OPTIONS"] = "MORE_OPTIONS";
18
+ TaskbarElement["DIVIDER"] = "DIVIDER";
19
+ })(TaskbarElement || (TaskbarElement = {}));
20
+ var AuthorizationElements;
21
+ (function (AuthorizationElements) {
22
+ AuthorizationElements["UPDATE"] = "UPDATE";
23
+ AuthorizationElements["CLONE"] = "CLONE";
24
+ AuthorizationElements["REMOVE"] = "REMOVE";
25
+ AuthorizationElements["INSERT"] = "INSERT";
26
+ AuthorizationElements["CONFIG_GRID"] = "CONFIG_GRID";
27
+ })(AuthorizationElements || (AuthorizationElements = {}));
28
+ const buildElem = (element, className, getTitle, action, isEnabled) => {
29
+ switch (element) {
30
+ case TaskbarElement.PREVIOUS:
31
+ return iconButton("chevron-left", element, className, getTitle, action, isEnabled);
32
+ case TaskbarElement.NEXT:
33
+ return iconButton("chevron-right", element, className, getTitle, action, isEnabled);
34
+ case TaskbarElement.REFRESH:
35
+ return iconButton("sync", element, className, getTitle, action, isEnabled);
36
+ case TaskbarElement.UPDATE:
37
+ return iconButton("edit", element, className, getTitle, action, isEnabled);
38
+ case TaskbarElement.CLONE:
39
+ return iconButton("copy", element, className, getTitle, action, isEnabled);
40
+ case TaskbarElement.REMOVE:
41
+ return iconButton("delete", element, className, getTitle, action, isEnabled);
42
+ case TaskbarElement.INSERT:
43
+ return iconTextButton("plus", element, className, getTitle, action, isEnabled);
44
+ case TaskbarElement.CANCEL:
45
+ return h("ez-button", { label: getTitle(element), size: "small", enabled: isEnabled(element), onClick: () => action(element) });
46
+ case TaskbarElement.SAVE:
47
+ return iconTextButton("save", element, className, getTitle, action, isEnabled);
48
+ case TaskbarElement.GRID_MODE:
49
+ return iconButton("table", element, className, getTitle, action, isEnabled);
50
+ case TaskbarElement.FORM_MODE:
51
+ return iconButton("list", element, className, getTitle, action, isEnabled);
52
+ case TaskbarElement.CONFIG_GRID:
53
+ return iconButton("settings-inverted", element, className, getTitle, action, isEnabled);
54
+ case TaskbarElement.DIVIDER:
55
+ return h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-horizontal--medium" });
56
+ }
57
+ };
58
+ function iconButton(iconName, element, className, getTitle, action, isEnabled) {
59
+ return h("ez-button", { key: iconName, title: getTitle(element), mode: "icon", size: "small", class: className, iconName: iconName, enabled: isEnabled(element), onClick: () => action(element) });
60
+ }
61
+ function iconTextButton(iconName, element, className, getTitle, action, isEnabled) {
62
+ return h("ez-button", { key: iconName, title: getTitle(element), label: getTitle(element), size: "small", class: className, enabled: isEnabled(element), onClick: () => action(element) },
63
+ h("ez-icon", { class: "ez-padding-right--small", slot: "leftIcon", iconName: iconName }));
64
+ }
65
+
66
+ export { AuthorizationElements as A, TaskbarElement as T, buildElem as b };
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-ffda6382.js';
1
+ import { r as registerInstance, h } from './index-02c04e0f.js';
2
2
  import { DataUnit, DataType, UserInterface } from '@sankhyalabs/core';
3
3
 
4
4
  const testePesquisaCss = ":host{display:block}";
@@ -0,0 +1 @@
1
+ import{h as t,r as s,c as e,H as i}from"./p-db215c74.js";import{ApplicationContext as a}from"@sankhyalabs/core";import{A as o,T as r,b as n}from"./p-64e2471c.js";const l=({className:s,title:e,source:i,opened:a,setOpened:o,actionClick:r})=>t("div",{class:"ez-flex "+s},t("ez-button",{id:"moreOptionsButton",title:e,mode:"icon",iconName:"dots-vertical",size:"small",onClick:()=>o(!0)}),t("ez-popover",{opened:a,autoClose:!0,innerElement:["moreOptionsButton","moreOptionsDiv"],onEzVisibilityChange:t=>o(t.detail)},t("div",{id:"moreOptionsDiv",class:"ez-padding--small"},i.map(((s,e)=>t("ez-button",{className:"btn-options",size:"small",label:s.label,key:e,onClick:()=>r(s)})))))),c=class{constructor(t){s(this,t),this.actionClick=e(this,"actionClick",7),this._moreOptionsOpened=!1}observeButtons(){this._definitions=void 0}elementsFromString(t){const s=[];return t&&t.split(",").forEach((t=>{t=t.trim(),this.isAllowed(t)&&s.push(t.trim())})),s}isAllowed(t){return!o[t]||!!this._permissions&&(this._permissions.isSup||this._permissions[t])}getTitle(t){const s={[r.UPDATE]:"Editar",[r.PREVIOUS]:"Anterior",[r.NEXT]:"Próximo",[r.REFRESH]:"Atualizar",[r.CLONE]:"Duplicar",[r.REMOVE]:"Excluir",[r.MORE_OPTIONS]:"Mais Opções",[r.INSERT]:"Cadastrar",[r.CANCEL]:"Cancelar",[r.SAVE]:"Salvar",[r.GRID_MODE]:"Modo Grade",[r.CONFIG_GRID]:"Configuração da grade",[r.FORM_MODE]:"Modo Formulário"};return s[t]?s[t]:""}elementClick(t){if(this.dataUnit)switch(t){case r.PREVIOUS:this.dataUnit.previousRecord();break;case r.NEXT:this.dataUnit.nextRecord();break;case r.REFRESH:this.dataUnit.loadData();break;case r.CLONE:this.dataUnit.copySelected();break;case r.REMOVE:this.dataUnit.removeSelectedRecords();break;case r.INSERT:this.dataUnit.addRecord();break;case r.CANCEL:this.dataUnit.cancelEdition();break;case r.SAVE:this.dataUnit.saveData()}this.actionClick.emit(t)}actionClickHandler(t){this._moreOptionsOpened=!1,this.actionClick.emit(t.key)}isEnabled(t){return!(this.disabledButtons&&this.disabledButtons.includes(t))}getElement(s,e){let i,a=e===this.primaryButton?"ez-button--primary ":"";return s>1&&(a+="ez-padding-left--medium"),i=e===r.MORE_OPTIONS?this.actionsList?t(l,{className:a,title:this.getTitle(e),source:this.actionsList,opened:this._moreOptionsOpened,setOpened:t=>this._moreOptionsOpened=t,actionClick:t=>this.actionClickHandler(t)}):void 0:n(e,a,(t=>this.getTitle(t)),(t=>this.elementClick(t)),(t=>this.isEnabled(t))),i}componentWillRender(){if(void 0===this._permissions){const t=a.getContextValue("__SNK__APPLICATION__");t?t.getAllAccess().then((t=>this._permissions=t)):this._permissions={}}else null==this._definitions&&(this._definitions=this.elementsFromString(this.buttons))}render(){if(void 0===this._definitions)return;let s=0;return t(i,null,this._definitions.map((e=>(e===r.DIVIDER?s=0:s++,r[e]?this.getElement(s,r[e]):t("slot",{name:e})))))}static get watchers(){return{buttons:["observeButtons"]}}};c.style=".sc-snk-taskbar-h{display:flex}";export{c as snk_taskbar}
@@ -1 +1 @@
1
- import{r as e,h as a}from"./p-edcb9d8e.js";import{DataUnit as r,DataType as o,UserInterface as i}from"@sankhyalabs/core";const s=class{constructor(a){e(this,a)}componentWillLoad(){this.dataUnit=new r("testes_com_formulario"),this.dataUnit.metadata={name:"dd://br.com.sankhya.fin.cad.movimentacaoFinanceira/Financeiro",label:"Parceiro",fields:[{name:"CODPARC",label:"Parceiro",dataType:o.NUMBER,userInterface:i.SEARCH,required:!0,properties:{ENTITYNAME:"Parceiro"}}]}}render(){return a("snk-application",null,a("ez-form",{dataUnit:this.dataUnit}))}};s.style=":host{display:block}";export{s as teste_pesquisa}
1
+ import{r as a,h as e}from"./p-db215c74.js";import{DataUnit as r,DataType as o,UserInterface as i}from"@sankhyalabs/core";const s=class{constructor(e){a(this,e)}componentWillLoad(){this.dataUnit=new r("testes_com_formulario"),this.dataUnit.metadata={name:"dd://br.com.sankhya.fin.cad.movimentacaoFinanceira/Financeiro",label:"Parceiro",fields:[{name:"CODPARC",label:"Parceiro",dataType:o.NUMBER,userInterface:i.SEARCH,required:!0,properties:{ENTITYNAME:"Parceiro"}}]}}render(){return e("snk-application",null,e("ez-form",{dataUnit:this.dataUnit}))}};s.style=":host{display:block}";export{s as teste_pesquisa}
@@ -0,0 +1 @@
1
+ import{r as t,c as i,h as s,g as e}from"./p-db215c74.js";import{ApplicationContext as a}from"@sankhyalabs/core";import{T as o}from"./p-64e2471c.js";const n=class{constructor(s){t(this,s),this.actionClick=i(this,"actionClick",7)}getHeaderButtons(){return this._dataState&&this._dataState.selectedRecords.length>0?"UPDATE,CLONE,REMOVE,MORE_OPTIONS,DIVIDER,REFRESH":"REFRESH"}actionClickHandler(t){t.detail===o.CONFIG_GRID&&this._grid&&this._grid.openGridConfig()}componentWillLoad(){let t=this._element.parentElement;for(;t;){if("SNK-DATA-UNIT"===t.tagName.toUpperCase()){this._snkDataUnit=t,this._dataUnit=this._snkDataUnit.dataUnit,this._dataUnit||this._snkDataUnit.addEventListener("dataUnitReady",(t=>{this._dataUnit=t.detail})),this._snkDataUnit.addEventListener("dataStateChange",(t=>{this._dataState=t.detail}));break}t=t.parentElement}}componentWillRender(){if(this._dataUnit&&!this._configLoaded){const t=a.getContextValue("__SNK__APPLICATION__");t&&t.loadGridConfig(this.configName).then((t=>{this._gridConfig=t,this._configLoaded=!0}))}}render(){if(this._configLoaded&&this._dataUnit)return s("div",{class:"ez-flex ez-flex--column ez-flex-item--auto ez-padding--large"},s("div",{class:"ez-row ez-padding-bottom--medium ez-margin-bottom--medium"},s("div",{class:"ez-col ez-col--sd-9 ez-col--tb-9 ez-align--bottom"},s("slot",null)),s("div",{class:"ez-col ez-col--sd-3 ez-col--tb-3 ez-align--right"},s("snk-taskbar",{onActionClick:t=>this.actionClickHandler(t),key:"topTaskbar",dataUnit:this._dataUnit,buttons:"FORM_MODE,CONFIG_GRID,INSERT",primaryButton:"INSERT"}))),s("ez-grid",{ref:t=>this._grid=t,dataUnit:this._dataUnit,key:"grid-"+this._snkDataUnit.entityName,config:this._gridConfig},s("snk-taskbar",{dataUnit:this._dataUnit,buttons:this.getHeaderButtons(),slot:"leftButtons",actionsList:this.actionsList})))}get _element(){return e(this)}};n.style=".sc-snk-grid-h{display:flex;height:100%;width:100%}";export{n as snk_grid}
@@ -0,0 +1 @@
1
+ import{h as e}from"./p-db215c74.js";var t,n;!function(e){e.PREVIOUS="PREVIOUS",e.NEXT="NEXT",e.REFRESH="REFRESH",e.UPDATE="UPDATE",e.CLONE="CLONE",e.REMOVE="REMOVE",e.INSERT="INSERT",e.CANCEL="CANCEL",e.SAVE="SAVE",e.GRID_MODE="GRID_MODE",e.FORM_MODE="FORM_MODE",e.CONFIG_GRID="CONFIG_GRID",e.MORE_OPTIONS="MORE_OPTIONS",e.DIVIDER="DIVIDER"}(t||(t={})),function(e){e.UPDATE="UPDATE",e.CLONE="CLONE",e.REMOVE="REMOVE",e.INSERT="INSERT",e.CONFIG_GRID="CONFIG_GRID"}(n||(n={}));const r=(n,r,c,i,l)=>{switch(n){case t.PREVIOUS:return s("chevron-left",n,r,c,i,l);case t.NEXT:return s("chevron-right",n,r,c,i,l);case t.REFRESH:return s("sync",n,r,c,i,l);case t.UPDATE:return s("edit",n,r,c,i,l);case t.CLONE:return s("copy",n,r,c,i,l);case t.REMOVE:return s("delete",n,r,c,i,l);case t.INSERT:return a("plus",n,r,c,i,l);case t.CANCEL:return e("ez-button",{label:c(n),size:"small",enabled:l(n),onClick:()=>i(n)});case t.SAVE:return a("save",n,r,c,i,l);case t.GRID_MODE:return s("table",n,r,c,i,l);case t.FORM_MODE:return s("list",n,r,c,i,l);case t.CONFIG_GRID:return s("settings-inverted",n,r,c,i,l);case t.DIVIDER:return e("hr",{class:"ez-divider-vertical ez-divider--dark ez-margin-horizontal--medium"})}};function s(t,n,r,s,a,c){return e("ez-button",{key:t,title:s(n),mode:"icon",size:"small",class:r,iconName:t,enabled:c(n),onClick:()=>a(n)})}function a(t,n,r,s,a,c){return e("ez-button",{key:t,title:s(n),label:s(n),size:"small",class:r,enabled:c(n),onClick:()=>a(n)},e("ez-icon",{class:"ez-padding-right--small",slot:"leftIcon",iconName:t}))}export{n as A,t as T,r as b}