@sankhyalabs/ezui 0.0.0-bugfix-dev-KB-83282.1 → 0.0.0-bugfix-dev-KB-75940.1

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 (115) hide show
  1. package/dist/cjs/ez-badge.cjs.entry.js +14 -2
  2. package/dist/cjs/ez-button.cjs.entry.js +1 -1
  3. package/dist/cjs/ez-card-item_2.cjs.entry.js +1416 -7
  4. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  5. package/dist/cjs/ez-date-input.cjs.entry.js +4 -17
  6. package/dist/cjs/ez-date-time-input.cjs.entry.js +4 -16
  7. package/dist/cjs/ez-form-view.cjs.entry.js +1 -1
  8. package/dist/cjs/ez-grid.cjs.entry.js +4 -2
  9. package/dist/cjs/ez-list.cjs.entry.js +2 -2
  10. package/dist/cjs/ez-modal-container.cjs.entry.js +1 -1
  11. package/dist/cjs/ez-modal.cjs.entry.js +1 -1
  12. package/dist/cjs/ez-popover-plus_3.cjs.entry.js +195 -0
  13. package/dist/cjs/ez-popup.cjs.entry.js +1 -1
  14. package/dist/cjs/ez-scroller_2.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-search.cjs.entry.js +28 -158
  16. package/dist/cjs/ez-split-item.cjs.entry.js +1 -1
  17. package/dist/cjs/ezui.cjs.js +1 -1
  18. package/dist/cjs/index-a7b0c73d.js +4 -4
  19. package/dist/cjs/loader.cjs.js +1 -1
  20. package/dist/cjs/searchFormatters-b7e1ed1e.js +23 -0
  21. package/dist/collection/collection-manifest.json +2 -1
  22. package/dist/collection/components/ez-badge/ez-badge.css +12 -1
  23. package/dist/collection/components/ez-badge/ez-badge.js +31 -1
  24. package/dist/collection/components/ez-button/ez-button.css +1 -1
  25. package/dist/collection/components/ez-card-item/ez-card-item.css +1 -3
  26. package/dist/collection/components/ez-chip/ez-chip.css +5 -1
  27. package/dist/collection/components/ez-date-input/ez-date-input.js +4 -17
  28. package/dist/collection/components/ez-date-time-input/ez-date-time-input.js +4 -16
  29. package/dist/collection/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.js +1 -1
  30. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +4 -2
  31. package/dist/collection/components/ez-list/ez-list.js +2 -2
  32. package/dist/collection/components/ez-modal/ez-modal.js +1 -1
  33. package/dist/collection/components/ez-modal-container/ez-modal-container.js +1 -1
  34. package/dist/collection/components/ez-popover-plus/ez-popover-plus.js +49 -14
  35. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.css +2 -2
  36. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.js +72 -12
  37. package/dist/collection/components/ez-popup/ez-popup.js +1 -1
  38. package/dist/collection/components/ez-scroller/ez-scroller.css +3 -0
  39. package/dist/collection/components/ez-search/ez-search.css +0 -219
  40. package/dist/collection/components/ez-search/ez-search.js +28 -167
  41. package/dist/collection/components/ez-search/subcomponent/search-list/search-list.css +227 -0
  42. package/dist/collection/components/ez-search/subcomponent/search-list/search-list.js +289 -0
  43. package/dist/collection/components/ez-search/utils/searchFormatters.js +18 -0
  44. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.js +1 -1
  45. package/dist/custom-elements/index.d.ts +6 -0
  46. package/dist/custom-elements/index.js +204 -226
  47. package/dist/esm/ez-badge.entry.js +14 -2
  48. package/dist/esm/ez-button.entry.js +1 -1
  49. package/dist/esm/ez-card-item_2.entry.js +1416 -7
  50. package/dist/esm/ez-chip.entry.js +1 -1
  51. package/dist/esm/ez-date-input.entry.js +4 -17
  52. package/dist/esm/ez-date-time-input.entry.js +4 -16
  53. package/dist/esm/ez-form-view.entry.js +1 -1
  54. package/dist/esm/ez-grid.entry.js +4 -2
  55. package/dist/esm/ez-list.entry.js +2 -2
  56. package/dist/esm/ez-modal-container.entry.js +1 -1
  57. package/dist/esm/ez-modal.entry.js +1 -1
  58. package/dist/esm/ez-popover-plus_3.entry.js +189 -0
  59. package/dist/esm/ez-popup.entry.js +1 -1
  60. package/dist/esm/ez-scroller_2.entry.js +1 -1
  61. package/dist/esm/ez-search.entry.js +29 -159
  62. package/dist/esm/ez-split-item.entry.js +1 -1
  63. package/dist/esm/ezui.js +1 -1
  64. package/dist/esm/index-baa5e267.js +4 -4
  65. package/dist/esm/loader.js +1 -1
  66. package/dist/esm/searchFormatters-8229207e.js +20 -0
  67. package/dist/ezui/ezui.esm.js +1 -1
  68. package/dist/ezui/p-0bffeffc.entry.js +1 -0
  69. package/dist/ezui/p-20cb13fa.entry.js +1 -0
  70. package/dist/ezui/p-23b6128c.entry.js +1 -0
  71. package/dist/ezui/p-248d4f54.entry.js +1 -0
  72. package/dist/ezui/p-2872fd16.entry.js +1 -0
  73. package/dist/ezui/p-288631d1.entry.js +1 -0
  74. package/dist/ezui/p-40a60148.js +1 -0
  75. package/dist/ezui/p-4e0628a7.entry.js +1 -0
  76. package/dist/ezui/{p-53116373.entry.js → p-664b91e8.entry.js} +1 -1
  77. package/dist/ezui/p-788467fe.entry.js +1 -0
  78. package/dist/ezui/p-84b1c99e.entry.js +1 -0
  79. package/dist/ezui/p-b7706b43.entry.js +1 -0
  80. package/dist/ezui/p-d2bc2f06.entry.js +1 -0
  81. package/dist/ezui/p-dcf3c8e5.entry.js +1 -0
  82. package/dist/ezui/{p-17be134a.entry.js → p-e06a9886.entry.js} +1 -1
  83. package/dist/ezui/p-e5c3ed19.entry.js +1 -0
  84. package/dist/ezui/p-e75c7a23.entry.js +1 -0
  85. package/dist/types/components/ez-badge/ez-badge.d.ts +5 -0
  86. package/dist/types/components/ez-calendar/ez-calendar.d.ts +3 -3
  87. package/dist/types/components/ez-date-input/ez-date-input.d.ts +2 -2
  88. package/dist/types/components/ez-date-time-input/ez-date-time-input.d.ts +2 -2
  89. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +1 -0
  90. package/dist/types/components/ez-popover-plus/ez-popover-plus.d.ts +9 -4
  91. package/dist/types/components/ez-popover-plus/subcomponent/ez-popover-core.d.ts +12 -2
  92. package/dist/types/components/ez-search/ez-search.d.ts +3 -13
  93. package/dist/types/components/ez-search/subcomponent/search-list/search-list.d.ts +23 -0
  94. package/dist/types/components/ez-search/utils/searchFormatters.d.ts +2 -0
  95. package/dist/types/components.d.ts +80 -4
  96. package/package.json +1 -1
  97. package/react/components.d.ts +1 -0
  98. package/react/components.js +1 -0
  99. package/react/components.js.map +1 -1
  100. package/dist/cjs/ez-popover-core_2.cjs.entry.js +0 -1504
  101. package/dist/esm/ez-popover-core_2.entry.js +0 -1499
  102. package/dist/ezui/p-0faf71c5.entry.js +0 -1
  103. package/dist/ezui/p-17eabf46.entry.js +0 -1
  104. package/dist/ezui/p-1ad6c61b.entry.js +0 -1
  105. package/dist/ezui/p-2bb2a0c4.entry.js +0 -1
  106. package/dist/ezui/p-3195a7a7.entry.js +0 -1
  107. package/dist/ezui/p-3429080c.entry.js +0 -1
  108. package/dist/ezui/p-58783dcf.entry.js +0 -1
  109. package/dist/ezui/p-650e4b6d.entry.js +0 -1
  110. package/dist/ezui/p-65f471bc.entry.js +0 -1
  111. package/dist/ezui/p-7bd15498.entry.js +0 -1
  112. package/dist/ezui/p-990b4318.entry.js +0 -1
  113. package/dist/ezui/p-b26f6c5b.entry.js +0 -1
  114. package/dist/ezui/p-cb1535f7.entry.js +0 -1
  115. package/dist/ezui/p-d9548bdf.entry.js +0 -1
@@ -0,0 +1,289 @@
1
+ import { Host, h } from '@stencil/core';
2
+ import { StringUtils } from '@sankhyalabs/core';
3
+ import { replaceHighlight, replaceQuotes } from '../../utils/searchFormatters';
4
+ export class SearchList {
5
+ constructor() {
6
+ this._startHighlightTag = "<span class='card-item__highlight'>";
7
+ this._endHighlightTag = "</span>";
8
+ this.showLoading = undefined;
9
+ this.visibleOptions = [];
10
+ this.textEmptyList = undefined;
11
+ this.canShowListOptions = undefined;
12
+ this.value = undefined;
13
+ this.showOptionValue = true;
14
+ this.preSelection = undefined;
15
+ }
16
+ async nextOption() {
17
+ const newPreSelection = this.preSelection === undefined ? 0 : Math.min(this.preSelection + 1, this.visibleOptions.length - 1);
18
+ this.changePreSelection.emit(newPreSelection);
19
+ this.scrollToOption(this.visibleOptions[newPreSelection]);
20
+ }
21
+ async previousOption() {
22
+ const newPreSelection = this.preSelection === undefined ? 0 : Math.max(this.preSelection - 1, 0);
23
+ this.changePreSelection.emit(newPreSelection);
24
+ this.scrollToOption(this.visibleOptions[newPreSelection]);
25
+ }
26
+ selectOption(newOption) {
27
+ const newOptionsReplaced = Object.assign(Object.assign({}, newOption), { value: replaceHighlight(newOption === null || newOption === void 0 ? void 0 : newOption.value), label: replaceHighlight(newOption === null || newOption === void 0 ? void 0 : newOption.label) });
28
+ const newOptionsFormatted = Object.assign(Object.assign({}, newOptionsReplaced), { value: replaceQuotes(newOptionsReplaced === null || newOptionsReplaced === void 0 ? void 0 : newOptionsReplaced.value), label: replaceQuotes(newOptionsReplaced === null || newOptionsReplaced === void 0 ? void 0 : newOptionsReplaced.label) });
29
+ this.changeValue.emit(newOptionsFormatted);
30
+ }
31
+ createOption(detail) {
32
+ let { key, title } = detail;
33
+ const startHighlight = new RegExp(this._startHighlightTag, 'g');
34
+ const endHighlight = new RegExp(this._endHighlightTag, 'g');
35
+ title = StringUtils.decodeHtmlEntities(title);
36
+ const option = {
37
+ value: key === null || key === void 0 ? void 0 : key.replace(startHighlight, '').replace(endHighlight, ''),
38
+ label: title === null || title === void 0 ? void 0 : title.replace(startHighlight, '').replace(endHighlight, '')
39
+ };
40
+ this.selectOption(option);
41
+ }
42
+ scrollToOption(opt) {
43
+ window.requestAnimationFrame(() => {
44
+ const liElem = (opt === null || opt === void 0 ? void 0 : opt.value)
45
+ ? this._optionsList.querySelector(`div#item_${opt.value.replace(/([ #;&,.+*~':"!^$[\]()=<>|/\\])/g, '\\$1')}`)
46
+ : undefined;
47
+ if (liElem) {
48
+ liElem.scrollIntoView({ behavior: "smooth", block: "nearest" });
49
+ }
50
+ });
51
+ }
52
+ buildItem(opt, index) {
53
+ opt.label = opt.label || opt.value;
54
+ const card = {
55
+ key: opt.value,
56
+ title: opt.label,
57
+ details: opt.details
58
+ };
59
+ return h("div", { style: { "height": "100%" }, class: index === this.preSelection ? "item preselected" : "item", id: `item_${opt.value}`, onMouseDown: () => this.createOption(card), onMouseOver: () => this.changePreSelection.emit(index) }, h("ez-card-item", { item: card, compacted: true, enableKey: this.showOptionValue }));
60
+ }
61
+ render() {
62
+ return (h(Host, null, h("ul", { class: "list-options", ref: elem => this._optionsList = elem }, !this.showLoading
63
+ && this.visibleOptions.length === 0
64
+ && h("div", { class: "message" }, h("span", { class: "message__no-result" }, this.textEmptyList)), this.showLoading
65
+ && h("div", { class: "message" }, h("div", { class: "message__loading" })), this.canShowListOptions && this.visibleOptions.map((opt, index) => this.buildItem(opt, index)))));
66
+ }
67
+ static get is() { return "search-list"; }
68
+ static get encapsulation() { return "shadow"; }
69
+ static get originalStyleUrls() {
70
+ return {
71
+ "$": ["search-list.css"]
72
+ };
73
+ }
74
+ static get styleUrls() {
75
+ return {
76
+ "$": ["search-list.css"]
77
+ };
78
+ }
79
+ static get properties() {
80
+ return {
81
+ "showLoading": {
82
+ "type": "boolean",
83
+ "mutable": false,
84
+ "complexType": {
85
+ "original": "boolean",
86
+ "resolved": "boolean",
87
+ "references": {}
88
+ },
89
+ "required": false,
90
+ "optional": false,
91
+ "docs": {
92
+ "tags": [],
93
+ "text": ""
94
+ },
95
+ "attribute": "show-loading",
96
+ "reflect": false
97
+ },
98
+ "visibleOptions": {
99
+ "type": "unknown",
100
+ "mutable": false,
101
+ "complexType": {
102
+ "original": "Array<IOption>",
103
+ "resolved": "IOption[]",
104
+ "references": {
105
+ "Array": {
106
+ "location": "global"
107
+ },
108
+ "IOption": {
109
+ "location": "import",
110
+ "path": "../../ez-search"
111
+ }
112
+ }
113
+ },
114
+ "required": false,
115
+ "optional": false,
116
+ "docs": {
117
+ "tags": [],
118
+ "text": ""
119
+ },
120
+ "defaultValue": "[]"
121
+ },
122
+ "textEmptyList": {
123
+ "type": "string",
124
+ "mutable": false,
125
+ "complexType": {
126
+ "original": "string",
127
+ "resolved": "string",
128
+ "references": {}
129
+ },
130
+ "required": false,
131
+ "optional": false,
132
+ "docs": {
133
+ "tags": [],
134
+ "text": ""
135
+ },
136
+ "attribute": "text-empty-list",
137
+ "reflect": false
138
+ },
139
+ "canShowListOptions": {
140
+ "type": "boolean",
141
+ "mutable": false,
142
+ "complexType": {
143
+ "original": "boolean",
144
+ "resolved": "boolean",
145
+ "references": {}
146
+ },
147
+ "required": false,
148
+ "optional": false,
149
+ "docs": {
150
+ "tags": [],
151
+ "text": ""
152
+ },
153
+ "attribute": "can-show-list-options",
154
+ "reflect": false
155
+ },
156
+ "value": {
157
+ "type": "string",
158
+ "mutable": false,
159
+ "complexType": {
160
+ "original": "IOption | string",
161
+ "resolved": "IOption | string",
162
+ "references": {
163
+ "IOption": {
164
+ "location": "import",
165
+ "path": "../../ez-search"
166
+ }
167
+ }
168
+ },
169
+ "required": false,
170
+ "optional": false,
171
+ "docs": {
172
+ "tags": [],
173
+ "text": ""
174
+ },
175
+ "attribute": "value",
176
+ "reflect": false
177
+ },
178
+ "showOptionValue": {
179
+ "type": "boolean",
180
+ "mutable": false,
181
+ "complexType": {
182
+ "original": "boolean",
183
+ "resolved": "boolean",
184
+ "references": {}
185
+ },
186
+ "required": false,
187
+ "optional": false,
188
+ "docs": {
189
+ "tags": [],
190
+ "text": ""
191
+ },
192
+ "attribute": "show-option-value",
193
+ "reflect": false,
194
+ "defaultValue": "true"
195
+ },
196
+ "preSelection": {
197
+ "type": "number",
198
+ "mutable": false,
199
+ "complexType": {
200
+ "original": "number",
201
+ "resolved": "number",
202
+ "references": {}
203
+ },
204
+ "required": false,
205
+ "optional": false,
206
+ "docs": {
207
+ "tags": [],
208
+ "text": ""
209
+ },
210
+ "attribute": "pre-selection",
211
+ "reflect": false
212
+ }
213
+ };
214
+ }
215
+ static get events() {
216
+ return [{
217
+ "method": "changeValue",
218
+ "name": "changeValue",
219
+ "bubbles": true,
220
+ "cancelable": true,
221
+ "composed": true,
222
+ "docs": {
223
+ "tags": [],
224
+ "text": ""
225
+ },
226
+ "complexType": {
227
+ "original": "IOption",
228
+ "resolved": "IOption",
229
+ "references": {
230
+ "IOption": {
231
+ "location": "import",
232
+ "path": "../../ez-search"
233
+ }
234
+ }
235
+ }
236
+ }, {
237
+ "method": "changePreSelection",
238
+ "name": "changePreSelection",
239
+ "bubbles": true,
240
+ "cancelable": true,
241
+ "composed": true,
242
+ "docs": {
243
+ "tags": [],
244
+ "text": ""
245
+ },
246
+ "complexType": {
247
+ "original": "number",
248
+ "resolved": "number",
249
+ "references": {}
250
+ }
251
+ }];
252
+ }
253
+ static get methods() {
254
+ return {
255
+ "nextOption": {
256
+ "complexType": {
257
+ "signature": "() => Promise<void>",
258
+ "parameters": [],
259
+ "references": {
260
+ "Promise": {
261
+ "location": "global"
262
+ }
263
+ },
264
+ "return": "Promise<void>"
265
+ },
266
+ "docs": {
267
+ "text": "",
268
+ "tags": []
269
+ }
270
+ },
271
+ "previousOption": {
272
+ "complexType": {
273
+ "signature": "() => Promise<void>",
274
+ "parameters": [],
275
+ "references": {
276
+ "Promise": {
277
+ "location": "global"
278
+ }
279
+ },
280
+ "return": "Promise<void>"
281
+ },
282
+ "docs": {
283
+ "text": "",
284
+ "tags": []
285
+ }
286
+ }
287
+ };
288
+ }
289
+ }
@@ -0,0 +1,18 @@
1
+ const START_HIGH_LIGHT_TAG = "<span class='card-item__highlight'>";
2
+ const END_HIGH_LIGHT_TAG = "</span>";
3
+ export function replaceHighlight(value) {
4
+ const startHighlight = new RegExp(START_HIGH_LIGHT_TAG, 'g');
5
+ const endHighlight = new RegExp(END_HIGH_LIGHT_TAG, 'g');
6
+ const newValue = String(value !== null && value !== void 0 ? value : "").replace(startHighlight, '').replace(endHighlight, '');
7
+ return replaceQuotes(newValue);
8
+ }
9
+ export function replaceQuotes(text) {
10
+ if (text == undefined) {
11
+ return;
12
+ }
13
+ return String(text)
14
+ .replace(/&amp;/g, '&')
15
+ .replace(/&lt;/g, '<')
16
+ .replace(/&gt;/g, '>')
17
+ .replace(/&quot;/g, '"');
18
+ }
@@ -20,7 +20,7 @@ export class SplitItem {
20
20
  CSSVarsUtils.applyVarsGrid(this._element, this._slot.children[0]);
21
21
  }
22
22
  render() {
23
- return (h(Host, { class: `box_split-item ${this._expanded ? 'expanded__item' : ''} ${this.structural ? 'structural__item' : 'content__item'}`, ref: el => (this._element = el) }, h("div", { class: "ez-split-item--header" }, h("slot", { name: "leftButtons" }), h("div", { class: "ez-split-item--header-title" }, this.label && (h("h3", { class: "ez-text ez-text--primary ez-title ez-title--small ez-margin--small", title: this.label }, this.label))), h("div", { class: "ez-split-item--header-buttons" }, h("slot", { name: "rightButtons" }), this.enableExpand && (h("ez-button", { ref: el => this.expandButtonRef = el, size: "small", mode: "icon", iconName: "expand", class: 'ez-button--tertiary', onClick: () => this.toggleExpandItem(), title: this._expanded ? 'Resumir' : 'Expandir' })))), h("div", { class: "ez-split-item--content grid_height-0", ref: el => (this._slot = el) }, h("slot", null))));
23
+ return (h(Host, { class: `box_split-item ${this._expanded ? 'expanded__item' : ''} ${this.structural ? 'structural__item' : 'content__item'}`, ref: el => (this._element = el) }, h("div", { class: "ez-split-item--header" }, h("slot", { name: "leftButtons" }), h("div", { class: "ez-split-item--header-title" }, this.label && (h("h3", { class: "ez-text ez-text--primary ez-title ez-title--medium ez-margin--small", title: this.label }, this.label))), h("div", { class: "ez-split-item--header-buttons" }, h("slot", { name: "rightButtons" }), this.enableExpand && (h("ez-button", { ref: el => this.expandButtonRef = el, size: "small", mode: "icon", iconName: "expand", class: 'ez-button--tertiary', onClick: () => this.toggleExpandItem(), title: this._expanded ? 'Resumir' : 'Expandir' })))), h("div", { class: "ez-split-item--content grid_height-0", ref: el => (this._slot = el) }, h("slot", null))));
24
24
  }
25
25
  static get is() { return "ez-split-item"; }
26
26
  static get originalStyleUrls() {
@@ -356,6 +356,12 @@ export const MultiSelectionBoxMessage: {
356
356
  new (): MultiSelectionBoxMessage;
357
357
  };
358
358
 
359
+ interface SearchList extends Components.SearchList, HTMLElement {}
360
+ export const SearchList: {
361
+ prototype: SearchList;
362
+ new (): SearchList;
363
+ };
364
+
359
365
  /**
360
366
  * Utility to define all custom elements within this package using the tag name provided in the component's source.
361
367
  * When defining each custom element, it will also check it's safe to define by: