@startinblox/core 0.19.0-beta.1 → 0.19.0-beta.10

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 (166) hide show
  1. package/dist/{_snowpack/pkg/leaflet.markercluster/dist/MarkerCluster.css → assets/MarkerCluster-614dea0a.css} +0 -0
  2. package/dist/{_snowpack/pkg/leaflet.markercluster/dist/MarkerCluster.Default.css → assets/MarkerCluster.Default-61258232.css} +0 -0
  3. package/dist/assets/en-e53105c5.js +14 -0
  4. package/dist/assets/en-e53105c5.js.map +1 -0
  5. package/dist/assets/fr-a7fcdb64.js +14 -0
  6. package/dist/assets/fr-a7fcdb64.js.map +1 -0
  7. package/dist/{_snowpack/pkg/fusejs.js → assets/helpers-bf15809c.js} +398 -454
  8. package/dist/assets/helpers-bf15809c.js.map +1 -0
  9. package/dist/{_snowpack/pkg/leaflet/dist/leaflet.css → assets/leaflet-3c081932.css} +3 -3
  10. package/dist/helpers.js +18 -0
  11. package/dist/helpers.js.map +1 -0
  12. package/dist/index.js +54600 -48
  13. package/dist/index.js.map +1 -0
  14. package/package.json +7 -22
  15. package/dist/_snowpack/pkg/autolinker.js +0 -4429
  16. package/dist/_snowpack/pkg/autolinker.js.map +0 -1
  17. package/dist/_snowpack/pkg/common/_baseUnary-d2677655.js +0 -353
  18. package/dist/_snowpack/pkg/common/_baseUnary-d2677655.js.map +0 -1
  19. package/dist/_snowpack/pkg/common/_commonjsHelpers-0597c316.js +0 -26
  20. package/dist/_snowpack/pkg/common/_commonjsHelpers-0597c316.js.map +0 -1
  21. package/dist/_snowpack/pkg/common/decode-26fbf385.js +0 -185
  22. package/dist/_snowpack/pkg/common/decode-26fbf385.js.map +0 -1
  23. package/dist/_snowpack/pkg/common/lit-html-3647afce.js +0 -1104
  24. package/dist/_snowpack/pkg/common/lit-html-3647afce.js.map +0 -1
  25. package/dist/_snowpack/pkg/delta-markdown-for-quill.js +0 -26198
  26. package/dist/_snowpack/pkg/delta-markdown-for-quill.js.map +0 -1
  27. package/dist/_snowpack/pkg/dialog-polyfill.js +0 -826
  28. package/dist/_snowpack/pkg/dialog-polyfill.js.map +0 -1
  29. package/dist/_snowpack/pkg/fusejs.js.map +0 -1
  30. package/dist/_snowpack/pkg/import-map.json +0 -25
  31. package/dist/_snowpack/pkg/jsonld-context-parser.js +0 -836
  32. package/dist/_snowpack/pkg/jsonld-context-parser.js.map +0 -1
  33. package/dist/_snowpack/pkg/jsonld.js +0 -11760
  34. package/dist/_snowpack/pkg/jsonld.js.map +0 -1
  35. package/dist/_snowpack/pkg/leaflet/dist/leaflet.css.proxy.js +0 -10
  36. package/dist/_snowpack/pkg/leaflet.markercluster/dist/MarkerCluster.Default.css.proxy.js +0 -10
  37. package/dist/_snowpack/pkg/leaflet.markercluster/dist/MarkerCluster.css.proxy.js +0 -10
  38. package/dist/_snowpack/pkg/lit-html/directives/if-defined.js +0 -39
  39. package/dist/_snowpack/pkg/lit-html/directives/if-defined.js.map +0 -1
  40. package/dist/_snowpack/pkg/lit-html/directives/unsafe-html.js +0 -48
  41. package/dist/_snowpack/pkg/lit-html/directives/unsafe-html.js.map +0 -1
  42. package/dist/_snowpack/pkg/lit-html/directives/until.js +0 -87
  43. package/dist/_snowpack/pkg/lit-html/directives/until.js.map +0 -1
  44. package/dist/_snowpack/pkg/lit-html.js +0 -94
  45. package/dist/_snowpack/pkg/lit-html.js.map +0 -1
  46. package/dist/_snowpack/pkg/markdown-it-link-attributes.js +0 -68
  47. package/dist/_snowpack/pkg/markdown-it-link-attributes.js.map +0 -1
  48. package/dist/_snowpack/pkg/markdown-it.js +0 -11307
  49. package/dist/_snowpack/pkg/markdown-it.js.map +0 -1
  50. package/dist/_snowpack/pkg/quill/dist/quill.snow.css.proxy.js +0 -10
  51. package/dist/_snowpack/pkg/quill-delta-to-markdown.js +0 -971
  52. package/dist/_snowpack/pkg/quill-delta-to-markdown.js.map +0 -1
  53. package/dist/_snowpack/pkg/quill.js +0 -14441
  54. package/dist/_snowpack/pkg/quill.js.map +0 -1
  55. package/dist/_snowpack/pkg/slim-select.js +0 -714
  56. package/dist/_snowpack/pkg/slim-select.js.map +0 -1
  57. package/dist/_snowpack/pkg/tui-calendar/dist/tui-calendar.css +0 -1149
  58. package/dist/_snowpack/pkg/tui-calendar/dist/tui-calendar.css.proxy.js +0 -10
  59. package/dist/_snowpack/pkg/tui-calendar.js +0 -46503
  60. package/dist/_snowpack/pkg/tui-calendar.js.map +0 -1
  61. package/dist/components/solid-ac-checker.js +0 -45
  62. package/dist/components/solid-calendar.js +0 -66
  63. package/dist/components/solid-delete.js +0 -96
  64. package/dist/components/solid-display.js +0 -150
  65. package/dist/components/solid-form-search.js +0 -173
  66. package/dist/components/solid-form.js +0 -257
  67. package/dist/components/solid-lang.js +0 -35
  68. package/dist/components/solid-map.js +0 -204
  69. package/dist/components/solid-table.js +0 -181
  70. package/dist/components/solid-widget.js +0 -72
  71. package/dist/import.css +0 -4
  72. package/dist/libs/Component.js +0 -13
  73. package/dist/libs/ComponentFactory.js +0 -165
  74. package/dist/libs/Compositor.js +0 -96
  75. package/dist/libs/Sib.js +0 -44
  76. package/dist/libs/filter.js +0 -184
  77. package/dist/libs/helpers.js +0 -185
  78. package/dist/libs/interfaces.js +0 -6
  79. package/dist/libs/lit-helpers.js +0 -139
  80. package/dist/libs/polyfills.js +0 -35
  81. package/dist/libs/store/custom-getter.js +0 -344
  82. package/dist/libs/store/server-pagination.js +0 -19
  83. package/dist/libs/store/server-search.js +0 -32
  84. package/dist/libs/store/store.js +0 -560
  85. package/dist/locales/en.json +0 -10
  86. package/dist/locales/en.json.proxy.js +0 -2
  87. package/dist/locales/fr.json +0 -10
  88. package/dist/locales/fr.json.proxy.js +0 -2
  89. package/dist/mixins/attributeBinderMixin.js +0 -113
  90. package/dist/mixins/contextMixin.js +0 -26
  91. package/dist/mixins/counterMixin.js +0 -54
  92. package/dist/mixins/federationMixin.js +0 -57
  93. package/dist/mixins/filterMixin.js +0 -152
  94. package/dist/mixins/grouperMixin.js +0 -73
  95. package/dist/mixins/highlighterMixin.js +0 -36
  96. package/dist/mixins/interfaces.js +0 -6
  97. package/dist/mixins/listMixin.js +0 -116
  98. package/dist/mixins/nextMixin.js +0 -23
  99. package/dist/mixins/paginateMixin.js +0 -97
  100. package/dist/mixins/requiredMixin.js +0 -38
  101. package/dist/mixins/serverPaginationMixin.js +0 -122
  102. package/dist/mixins/sorterMixin.js +0 -131
  103. package/dist/mixins/storeMixin.js +0 -139
  104. package/dist/mixins/translationMixin.js +0 -58
  105. package/dist/mixins/validationMixin.js +0 -95
  106. package/dist/mixins/widgetMixin.js +0 -358
  107. package/dist/new-widgets/attributeMixins/actionMixin.js +0 -13
  108. package/dist/new-widgets/attributeMixins/blankMixin.js +0 -7
  109. package/dist/new-widgets/attributeMixins/booleanMixin.js +0 -7
  110. package/dist/new-widgets/attributeMixins/index.js +0 -19
  111. package/dist/new-widgets/attributeMixins/mailtoMixin.js +0 -7
  112. package/dist/new-widgets/attributeMixins/multipleMixin.js +0 -27
  113. package/dist/new-widgets/attributeMixins/numberMixin.js +0 -7
  114. package/dist/new-widgets/attributeMixins/placeholderMixin.js +0 -16
  115. package/dist/new-widgets/attributeMixins/telMixin.js +0 -7
  116. package/dist/new-widgets/baseWidgetMixin.js +0 -109
  117. package/dist/new-widgets/callbackMixins/autocompletionMixin.js +0 -96
  118. package/dist/new-widgets/callbackMixins/index.js +0 -7
  119. package/dist/new-widgets/callbackMixins/richtextMixin.js +0 -37
  120. package/dist/new-widgets/callbackMixins/slimselect.css.proxy.js +0 -10
  121. package/dist/new-widgets/interfaces.js +0 -1
  122. package/dist/new-widgets/new-widget-factory.js +0 -91
  123. package/dist/new-widgets/templateAdditionMixins/addableMixin.js +0 -26
  124. package/dist/new-widgets/templateAdditionMixins/index.js +0 -13
  125. package/dist/new-widgets/templateAdditionMixins/labelLastMixin.js +0 -16
  126. package/dist/new-widgets/templateAdditionMixins/labelMixin.js +0 -18
  127. package/dist/new-widgets/templates/defaultTemplatesDirectory.js +0 -29
  128. package/dist/new-widgets/templates/displayTemplatesDirectory.js +0 -54
  129. package/dist/new-widgets/templates/formTemplatesDirectory.js +0 -423
  130. package/dist/new-widgets/templates/groupTemplatesDirectory.js +0 -11
  131. package/dist/new-widgets/templates/index.js +0 -6
  132. package/dist/new-widgets/templates/setTemplatesDirectory.js +0 -16
  133. package/dist/new-widgets/templatesDependencies/altMixin.js +0 -12
  134. package/dist/new-widgets/templatesDependencies/editableMixin.js +0 -60
  135. package/dist/new-widgets/templatesDependencies/filterRangeFormMixin.js +0 -34
  136. package/dist/new-widgets/templatesDependencies/formCheckboxMixin.js +0 -10
  137. package/dist/new-widgets/templatesDependencies/formCheckboxesMixin.js +0 -41
  138. package/dist/new-widgets/templatesDependencies/formDropdownMixin.js +0 -59
  139. package/dist/new-widgets/templatesDependencies/formFileMixin.js +0 -82
  140. package/dist/new-widgets/templatesDependencies/formLengthMixin.js +0 -18
  141. package/dist/new-widgets/templatesDependencies/formMinMaxMixin.js +0 -18
  142. package/dist/new-widgets/templatesDependencies/formMixin.js +0 -56
  143. package/dist/new-widgets/templatesDependencies/formNumberMixin.js +0 -10
  144. package/dist/new-widgets/templatesDependencies/formRadioMixin.js +0 -12
  145. package/dist/new-widgets/templatesDependencies/formStepMixin.js +0 -12
  146. package/dist/new-widgets/templatesDependencies/linkTextMixin.js +0 -13
  147. package/dist/new-widgets/templatesDependencies/multipleFormMixin.js +0 -116
  148. package/dist/new-widgets/templatesDependencies/multipleselectFormMixin.js +0 -74
  149. package/dist/new-widgets/templatesDependencies/patternMixin.js +0 -18
  150. package/dist/new-widgets/templatesDependencies/rangeMixin.js +0 -100
  151. package/dist/new-widgets/templatesDependencies/setMixin.js +0 -9
  152. package/dist/new-widgets/templatesDependencies/valueRichtextMixin.js +0 -9
  153. package/dist/new-widgets/valueTransformationMixins/autolinkMixin.js +0 -14
  154. package/dist/new-widgets/valueTransformationMixins/dateMixin.js +0 -29
  155. package/dist/new-widgets/valueTransformationMixins/dateTimeMixin.js +0 -12
  156. package/dist/new-widgets/valueTransformationMixins/index.js +0 -15
  157. package/dist/new-widgets/valueTransformationMixins/markdownMixin.js +0 -30
  158. package/dist/new-widgets/valueTransformationMixins/multilineMixin.js +0 -13
  159. package/dist/new-widgets/valueTransformationMixins/oembedMixin.js +0 -21
  160. package/dist/solid-template-element.js +0 -144
  161. package/dist/style/default-theme.css.proxy.js +0 -10
  162. package/dist/widgets/baseWidget.js +0 -267
  163. package/dist/widgets/widget-factory.js +0 -20
  164. /package/dist/{style/default-theme.css → assets/default-theme-d0f20a8a.css} +0 -0
  165. /package/dist/{_snowpack/pkg/quill/dist/quill.snow.css → assets/quill.snow-8f222e44.css} +0 -0
  166. /package/dist/{new-widgets/callbackMixins/slimselect.css → assets/slimselect-43e3ebc8.css} +0 -0
@@ -1,714 +0,0 @@
1
- var exports = {};
2
- !function (e, t) {
3
- "object" == typeof exports && "object" == typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define([], t) : "object" == typeof exports ? exports.SlimSelect = t() : e.SlimSelect = t();
4
- }(window, function () {
5
- return n = {}, s.m = i = [function (e, t, i) {
6
-
7
- function n(e, t) {
8
- t = t || {
9
- bubbles: !1,
10
- cancelable: !1,
11
- detail: void 0
12
- };
13
- var i = document.createEvent("CustomEvent");
14
- return i.initCustomEvent(e, t.bubbles, t.cancelable, t.detail), i;
15
- }
16
- t.__esModule = !0, t.kebabCase = t.highlight = t.isValueInArrayOfObjects = t.debounce = t.putContent = t.ensureElementInView = t.hasClassInTree = void 0, t.hasClassInTree = function (e, t) {
17
- function n(e, t) {
18
- return t && e && e.classList && e.classList.contains(t) ? e : null;
19
- }
20
- return n(e, t) || function e(t, i) {
21
- return t && t !== document ? n(t, i) ? t : e(t.parentNode, i) : null;
22
- }(e, t);
23
- }, t.ensureElementInView = function (e, t) {
24
- var i = e.scrollTop + e.offsetTop,
25
- n = i + e.clientHeight,
26
- s = t.offsetTop,
27
- t = s + t.clientHeight;
28
- s < i ? e.scrollTop -= i - s : n < t && (e.scrollTop += t - n);
29
- }, t.putContent = function (e, t, i) {
30
- var n = e.offsetHeight,
31
- s = e.getBoundingClientRect(),
32
- e = i ? s.top : s.top - n,
33
- n = i ? s.bottom : s.bottom + n;
34
- return e <= 0 ? "below" : n >= window.innerHeight ? "above" : i ? t : "below";
35
- }, t.debounce = function (s, a, o) {
36
- var l;
37
- return void 0 === a && (a = 100), void 0 === o && (o = !1), function () {
38
- for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
39
- var i = self,
40
- n = o && !l;
41
- clearTimeout(l), l = setTimeout(function () {
42
- l = null, o || s.apply(i, e);
43
- }, a), n && s.apply(i, e);
44
- };
45
- }, t.isValueInArrayOfObjects = function (e, t, i) {
46
- if (!Array.isArray(e)) return e[t] === i;
47
- for (var n = 0, s = e; n < s.length; n++) {
48
- var a = s[n];
49
- if (a && a[t] && a[t] === i) return !0;
50
- }
51
- return !1;
52
- }, t.highlight = function (e, t, i) {
53
- var n = e,
54
- s = new RegExp("(" + t.trim() + ")(?![^<]*>[^<>]*</)", "i");
55
- if (!e.match(s)) return e;
56
- var a = e.match(s).index,
57
- t = a + e.match(s)[0].toString().length,
58
- t = e.substring(a, t);
59
- return n = n.replace(s, '<mark class="'.concat(i, '">').concat(t, "</mark>"));
60
- }, t.kebabCase = function (e) {
61
- var t = e.replace(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g, function (e) {
62
- return "-" + e.toLowerCase();
63
- });
64
- return e[0] === e[0].toUpperCase() ? t.substring(1) : t;
65
- }, "function" != typeof (t = window).CustomEvent && (n.prototype = t.Event.prototype, t.CustomEvent = n);
66
- }, function (e, t, i) {
67
-
68
- t.__esModule = !0, t.validateOption = t.validateData = t.Data = void 0;
69
- var n = (s.prototype.newOption = function (e) {
70
- return {
71
- id: e.id || String(Math.floor(1e8 * Math.random())),
72
- value: e.value || "",
73
- text: e.text || "",
74
- innerHTML: e.innerHTML || "",
75
- selected: e.selected || !1,
76
- display: void 0 === e.display || e.display,
77
- disabled: e.disabled || !1,
78
- placeholder: e.placeholder || !1,
79
- class: e.class || void 0,
80
- data: e.data || {},
81
- mandatory: e.mandatory || !1
82
- };
83
- }, s.prototype.add = function (e) {
84
- this.data.push({
85
- id: String(Math.floor(1e8 * Math.random())),
86
- value: e.value,
87
- text: e.text,
88
- innerHTML: "",
89
- selected: !1,
90
- display: !0,
91
- disabled: !1,
92
- placeholder: !1,
93
- class: void 0,
94
- mandatory: e.mandatory,
95
- data: {}
96
- });
97
- }, s.prototype.parseSelectData = function () {
98
- this.data = [];
99
- for (var e = 0, t = this.main.select.element.childNodes; e < t.length; e++) {
100
- var i = t[e];
101
- if ("OPTGROUP" === i.nodeName) {
102
- for (var n = {
103
- label: i.label,
104
- options: []
105
- }, s = 0, a = i.childNodes; s < a.length; s++) {
106
- var o,
107
- l = a[s];
108
- "OPTION" === l.nodeName && (o = this.pullOptionData(l), n.options.push(o), o.placeholder && "" !== o.text.trim() && (this.main.config.placeholderText = o.text));
109
- }
110
- this.data.push(n);
111
- } else "OPTION" === i.nodeName && (o = this.pullOptionData(i), this.data.push(o), o.placeholder && "" !== o.text.trim() && (this.main.config.placeholderText = o.text));
112
- }
113
- }, s.prototype.pullOptionData = function (e) {
114
- return {
115
- id: !!e.dataset && e.dataset.id || String(Math.floor(1e8 * Math.random())),
116
- value: e.value,
117
- text: e.text,
118
- innerHTML: e.innerHTML,
119
- selected: e.selected,
120
- disabled: e.disabled,
121
- placeholder: "true" === e.dataset.placeholder,
122
- class: e.className,
123
- style: e.style.cssText,
124
- data: e.dataset,
125
- mandatory: !!e.dataset && "true" === e.dataset.mandatory
126
- };
127
- }, s.prototype.setSelectedFromSelect = function () {
128
- if (this.main.config.isMultiple) {
129
- for (var e = [], t = 0, i = this.main.select.element.options; t < i.length; t++) {
130
- var n = i[t];
131
- !n.selected || (n = this.getObjectFromData(n.value, "value")) && n.id && e.push(n.id);
132
- }
133
- this.setSelected(e, "id");
134
- } else {
135
- var s = this.main.select.element;
136
- -1 !== s.selectedIndex && (s = s.options[s.selectedIndex].value, this.setSelected(s, "value"));
137
- }
138
- }, s.prototype.setSelected = function (e, t) {
139
- void 0 === t && (t = "id");
140
- for (var i = 0, n = this.data; i < n.length; i++) {
141
- var s = n[i];
142
- if (s.hasOwnProperty("label")) {
143
- if (s.hasOwnProperty("options")) {
144
- var a = s.options;
145
- if (a) for (var o = 0, l = a; o < l.length; o++) {
146
- var r = l[o];
147
- r.placeholder || (r.selected = this.shouldBeSelected(r, e, t));
148
- }
149
- }
150
- } else s.selected = this.shouldBeSelected(s, e, t);
151
- }
152
- }, s.prototype.shouldBeSelected = function (e, t, i) {
153
- if (void 0 === i && (i = "id"), Array.isArray(t)) for (var n = 0, s = t; n < s.length; n++) {
154
- var a = s[n];
155
- if (i in e && String(e[i]) === String(a)) return !0;
156
- } else if (i in e && String(e[i]) === String(t)) return !0;
157
- return !1;
158
- }, s.prototype.getSelected = function () {
159
- for (var e = {
160
- text: "",
161
- placeholder: this.main.config.placeholderText
162
- }, t = [], i = 0, n = this.data; i < n.length; i++) {
163
- var s = n[i];
164
- if (s.hasOwnProperty("label")) {
165
- if (s.hasOwnProperty("options")) {
166
- var a = s.options;
167
- if (a) for (var o = 0, l = a; o < l.length; o++) {
168
- var r = l[o];
169
- r.selected && (this.main.config.isMultiple ? t.push(r) : e = r);
170
- }
171
- }
172
- } else s.selected && (this.main.config.isMultiple ? t.push(s) : e = s);
173
- }
174
- return this.main.config.isMultiple ? t : e;
175
- }, s.prototype.addToSelected = function (e, t) {
176
- if (void 0 === t && (t = "id"), this.main.config.isMultiple) {
177
- var i = [],
178
- n = this.getSelected();
179
- if (Array.isArray(n)) for (var s = 0, a = n; s < a.length; s++) {
180
- var o = a[s];
181
- i.push(o[t]);
182
- }
183
- i.push(e), this.setSelected(i, t);
184
- }
185
- }, s.prototype.removeFromSelected = function (e, t) {
186
- if (void 0 === t && (t = "id"), this.main.config.isMultiple) {
187
- for (var i = [], n = 0, s = this.getSelected(); n < s.length; n++) {
188
- var a = s[n];
189
- String(a[t]) !== String(e) && i.push(a[t]);
190
- }
191
- this.setSelected(i, t);
192
- }
193
- }, s.prototype.onDataChange = function () {
194
- this.main.onChange && this.isOnChangeEnabled && this.main.onChange(JSON.parse(JSON.stringify(this.getSelected())));
195
- }, s.prototype.getObjectFromData = function (e, t) {
196
- void 0 === t && (t = "id");
197
- for (var i = 0, n = this.data; i < n.length; i++) {
198
- var s = n[i];
199
- if (t in s && String(s[t]) === String(e)) return s;
200
- if (s.hasOwnProperty("options")) if (s.options) for (var a = 0, o = s.options; a < o.length; a++) {
201
- var l = o[a];
202
- if (String(l[t]) === String(e)) return l;
203
- }
204
- }
205
- return null;
206
- }, s.prototype.search = function (n) {
207
- var s, e;
208
- "" !== (this.searchValue = n).trim() ? (s = this.main.config.searchFilter, e = this.data.slice(0), n = n.trim(), e = e.map(function (e) {
209
- if (e.hasOwnProperty("options")) {
210
- var t = e,
211
- i = [];
212
- if (0 !== (i = t.options ? t.options.filter(function (e) {
213
- return s(e, n);
214
- }) : i).length) {
215
- t = Object.assign({}, t);
216
- return t.options = i, t;
217
- }
218
- }
219
- if (e.hasOwnProperty("text") && s(e, n)) return e;
220
- return null;
221
- }), this.filtered = e.filter(function (e) {
222
- return e;
223
- })) : this.filtered = null;
224
- }, s);
225
- function s(e) {
226
- this.contentOpen = !1, this.contentPosition = "below", this.isOnChangeEnabled = !0, this.main = e.main, this.searchValue = "", this.data = [], this.filtered = null, this.parseSelectData(), this.setSelectedFromSelect();
227
- }
228
- function r(e) {
229
- return void 0 !== e.text || (console.error("Data object option must have at least have a text value. Check object: " + JSON.stringify(e)), !1);
230
- }
231
- t.Data = n, t.validateData = function (e) {
232
- if (!e) return console.error("Data must be an array of objects"), !1;
233
- for (var t = 0, i = 0, n = e; i < n.length; i++) {
234
- var s = n[i];
235
- if (s.hasOwnProperty("label")) {
236
- if (s.hasOwnProperty("options")) {
237
- var a = s.options;
238
- if (a) for (var o = 0, l = a; o < l.length; o++) r(l[o]) || t++;
239
- }
240
- } else r(s) || t++;
241
- }
242
- return 0 === t;
243
- }, t.validateOption = r;
244
- }, function (e, t, i) {
245
-
246
- t.__esModule = !0;
247
- var n = i(3),
248
- s = i(4),
249
- a = i(5),
250
- r = i(1),
251
- o = i(0),
252
- i = (l.prototype.validate = function (e) {
253
- e = "string" == typeof e.select ? document.querySelector(e.select) : e.select;
254
- if (!e) throw new Error("Could not find select element");
255
- if ("SELECT" !== e.tagName) throw new Error("Element isnt of type select");
256
- return e;
257
- }, l.prototype.selected = function () {
258
- if (this.config.isMultiple) {
259
- for (var e = [], t = 0, i = s = this.data.getSelected(); t < i.length; t++) {
260
- var n = i[t];
261
- e.push(n.value);
262
- }
263
- return e;
264
- }
265
- var s;
266
- return (s = this.data.getSelected()) ? s.value : "";
267
- }, l.prototype.set = function (e, t, i, n) {
268
- void 0 === t && (t = "value"), void 0 === i && (i = !0), this.config.isMultiple && !Array.isArray(e) ? this.data.addToSelected(e, t) : this.data.setSelected(e, t), this.select.setValue(), this.data.onDataChange(), this.render(), (i = this.config.hideSelectedOption && this.config.isMultiple && this.data.getSelected().length === this.data.data.length ? !0 : i) && this.close();
269
- }, l.prototype.setSelected = function (e, t, i, n) {
270
- this.set(e, t = void 0 === t ? "value" : t, i = void 0 === i ? !0 : i, n = void 0 === n ? !0 : n);
271
- }, l.prototype.setData = function (e) {
272
- if ((0, r.validateData)(e)) {
273
- for (var t = JSON.parse(JSON.stringify(e)), i = this.data.getSelected(), n = 0; n < t.length; n++) t[n].value || t[n].placeholder || (t[n].value = t[n].text);
274
- if (this.config.isAjax && i) if (this.config.isMultiple) for (var s = 0, a = i.reverse(); s < a.length; s++) {
275
- var o = a[s];
276
- t.unshift(o);
277
- } else {
278
- t.unshift(i);
279
- for (n = 0; n < t.length; n++) t[n].placeholder || t[n].value !== i.value || t[n].text !== i.text || t.splice(n, 1);
280
- for (var l = !1, n = 0; n < t.length; n++) t[n].placeholder && (l = !0);
281
- l || t.unshift({
282
- text: "",
283
- placeholder: !0
284
- });
285
- }
286
- this.select.create(t), this.data.parseSelectData(), this.data.setSelectedFromSelect();
287
- } else console.error("Validation problem on: #" + this.select.element.id);
288
- }, l.prototype.addData = function (e) {
289
- (0, r.validateData)([e]) ? (this.data.add(this.data.newOption(e)), this.select.create(this.data.data), this.data.parseSelectData(), this.data.setSelectedFromSelect(), this.render()) : console.error("Validation problem on: #" + this.select.element.id);
290
- }, l.prototype.open = function () {
291
- var e,
292
- t = this;
293
- this.config.isEnabled && (this.data.contentOpen || this.config.hideSelectedOption && this.config.isMultiple && this.data.getSelected().length === this.data.data.length || (this.beforeOpen && this.beforeOpen(), this.config.isMultiple && this.slim.multiSelected ? this.slim.multiSelected.plus.classList.add("ss-cross") : this.slim.singleSelected && (this.slim.singleSelected.arrowIcon.arrow.classList.remove("arrow-down"), this.slim.singleSelected.arrowIcon.arrow.classList.add("arrow-up")), this.slim[this.config.isMultiple ? "multiSelected" : "singleSelected"].container.classList.add("above" === this.data.contentPosition ? this.config.openAbove : this.config.openBelow), this.config.addToBody && (e = this.slim.container.getBoundingClientRect(), this.slim.content.style.top = e.top + e.height + window.scrollY + "px", this.slim.content.style.left = e.left + window.scrollX + "px", this.slim.content.style.width = e.width + "px"), this.slim.content.classList.add(this.config.open), "up" === this.config.showContent.toLowerCase() || "down" !== this.config.showContent.toLowerCase() && "above" === (0, o.putContent)(this.slim.content, this.data.contentPosition, this.data.contentOpen) ? this.moveContentAbove() : this.moveContentBelow(), this.config.isMultiple || (e = this.data.getSelected()) && (e = e.id, (e = this.slim.list.querySelector('[data-id="' + e + '"]')) && (0, o.ensureElementInView)(this.slim.list, e)), setTimeout(function () {
294
- t.data.contentOpen = !0, t.config.searchFocus && t.slim.search.input.focus(), t.afterOpen && t.afterOpen();
295
- }, this.config.timeoutDelay)));
296
- }, l.prototype.close = function () {
297
- var e = this;
298
- this.data.contentOpen && (this.beforeClose && this.beforeClose(), this.config.isMultiple && this.slim.multiSelected ? (this.slim.multiSelected.container.classList.remove(this.config.openAbove), this.slim.multiSelected.container.classList.remove(this.config.openBelow), this.slim.multiSelected.plus.classList.remove("ss-cross")) : this.slim.singleSelected && (this.slim.singleSelected.container.classList.remove(this.config.openAbove), this.slim.singleSelected.container.classList.remove(this.config.openBelow), this.slim.singleSelected.arrowIcon.arrow.classList.add("arrow-down"), this.slim.singleSelected.arrowIcon.arrow.classList.remove("arrow-up")), this.slim.content.classList.remove(this.config.open), this.data.contentOpen = !1, this.search(""), setTimeout(function () {
299
- e.slim.content.removeAttribute("style"), e.data.contentPosition = "below", e.config.isMultiple && e.slim.multiSelected ? (e.slim.multiSelected.container.classList.remove(e.config.openAbove), e.slim.multiSelected.container.classList.remove(e.config.openBelow)) : e.slim.singleSelected && (e.slim.singleSelected.container.classList.remove(e.config.openAbove), e.slim.singleSelected.container.classList.remove(e.config.openBelow)), e.slim.search.input.blur(), e.afterClose && e.afterClose();
300
- }, this.config.timeoutDelay));
301
- }, l.prototype.moveContentAbove = function () {
302
- var e = 0;
303
- this.config.isMultiple && this.slim.multiSelected ? e = this.slim.multiSelected.container.offsetHeight : this.slim.singleSelected && (e = this.slim.singleSelected.container.offsetHeight);
304
- var t = e + this.slim.content.offsetHeight - 1;
305
- this.slim.content.style.margin = "-" + t + "px 0 0 0", this.slim.content.style.height = t - e + 1 + "px", this.slim.content.style.transformOrigin = "center bottom", this.data.contentPosition = "above", this.config.isMultiple && this.slim.multiSelected ? (this.slim.multiSelected.container.classList.remove(this.config.openBelow), this.slim.multiSelected.container.classList.add(this.config.openAbove)) : this.slim.singleSelected && (this.slim.singleSelected.container.classList.remove(this.config.openBelow), this.slim.singleSelected.container.classList.add(this.config.openAbove));
306
- }, l.prototype.moveContentBelow = function () {
307
- this.data.contentPosition = "below", this.config.isMultiple && this.slim.multiSelected ? (this.slim.multiSelected.container.classList.remove(this.config.openAbove), this.slim.multiSelected.container.classList.add(this.config.openBelow)) : this.slim.singleSelected && (this.slim.singleSelected.container.classList.remove(this.config.openAbove), this.slim.singleSelected.container.classList.add(this.config.openBelow));
308
- }, l.prototype.enable = function () {
309
- this.config.isEnabled = !0, this.config.isMultiple && this.slim.multiSelected ? this.slim.multiSelected.container.classList.remove(this.config.disabled) : this.slim.singleSelected && this.slim.singleSelected.container.classList.remove(this.config.disabled), this.select.triggerMutationObserver = !1, this.select.element.disabled = !1, this.slim.search.input.disabled = !1, this.select.triggerMutationObserver = !0;
310
- }, l.prototype.disable = function () {
311
- this.config.isEnabled = !1, this.config.isMultiple && this.slim.multiSelected ? this.slim.multiSelected.container.classList.add(this.config.disabled) : this.slim.singleSelected && this.slim.singleSelected.container.classList.add(this.config.disabled), this.select.triggerMutationObserver = !1, this.select.element.disabled = !0, this.slim.search.input.disabled = !0, this.select.triggerMutationObserver = !0;
312
- }, l.prototype.search = function (t) {
313
- var i;
314
- this.data.searchValue !== t && (this.slim.search.input.value = t, this.config.isAjax ? ((i = this).config.isSearching = !0, this.render(), this.ajax && this.ajax(t, function (e) {
315
- i.config.isSearching = !1, Array.isArray(e) ? (e.unshift({
316
- text: "",
317
- placeholder: !0
318
- }), i.setData(e), i.data.search(t), i.render()) : "string" == typeof e ? i.slim.options(e) : i.render();
319
- })) : (this.data.search(t), this.render()));
320
- }, l.prototype.setSearchText = function (e) {
321
- this.config.searchText = e;
322
- }, l.prototype.render = function () {
323
- this.config.isMultiple ? this.slim.values() : (this.slim.placeholder(), this.slim.deselect()), this.slim.options();
324
- }, l.prototype.destroy = function (e) {
325
- var t = (e = void 0 === e ? null : e) ? document.querySelector("." + e + ".ss-main") : this.slim.container,
326
- i = e ? document.querySelector("[data-ssid=".concat(e, "]")) : this.select.element;
327
- t && i && (document.removeEventListener("click", this.documentClick), "auto" === this.config.showContent && window.removeEventListener("scroll", this.windowScroll, !1), i.style.display = "", delete i.dataset.ssid, i.slim = null, t.parentElement && t.parentElement.removeChild(t), !this.config.addToBody || (e = e ? document.querySelector("." + e + ".ss-content") : this.slim.content) && document.body.removeChild(e));
328
- }, l);
329
- function l(e) {
330
- var t = this;
331
- this.ajax = null, this.addable = null, this.beforeOnChange = null, this.onChange = null, this.beforeOpen = null, this.afterOpen = null, this.beforeClose = null, this.afterClose = null, this.windowScroll = (0, o.debounce)(function (e) {
332
- t.data.contentOpen && ("above" === (0, o.putContent)(t.slim.content, t.data.contentPosition, t.data.contentOpen) ? t.moveContentAbove() : t.moveContentBelow());
333
- }), this.documentClick = function (e) {
334
- e.target && !(0, o.hasClassInTree)(e.target, t.config.id) && t.close();
335
- };
336
- var i = this.validate(e);
337
- i.dataset.ssid && this.destroy(i.dataset.ssid), e.ajax && (this.ajax = e.ajax), e.addable && (this.addable = e.addable), this.config = new n.Config({
338
- select: i,
339
- isAjax: !!e.ajax,
340
- showSearch: e.showSearch,
341
- searchPlaceholder: e.searchPlaceholder,
342
- searchText: e.searchText,
343
- searchingText: e.searchingText,
344
- searchFocus: e.searchFocus,
345
- searchHighlight: e.searchHighlight,
346
- searchFilter: e.searchFilter,
347
- closeOnSelect: e.closeOnSelect,
348
- showContent: e.showContent,
349
- placeholderText: e.placeholder,
350
- allowDeselect: e.allowDeselect,
351
- allowDeselectOption: e.allowDeselectOption,
352
- hideSelectedOption: e.hideSelectedOption,
353
- deselectLabel: e.deselectLabel,
354
- isEnabled: e.isEnabled,
355
- valuesUseText: e.valuesUseText,
356
- showOptionTooltips: e.showOptionTooltips,
357
- selectByGroup: e.selectByGroup,
358
- limit: e.limit,
359
- timeoutDelay: e.timeoutDelay,
360
- addToBody: e.addToBody
361
- }), this.select = new s.Select({
362
- select: i,
363
- main: this
364
- }), this.data = new r.Data({
365
- main: this
366
- }), this.slim = new a.Slim({
367
- main: this
368
- }), this.select.element.parentNode && this.select.element.parentNode.insertBefore(this.slim.container, this.select.element.nextSibling), e.data ? this.setData(e.data) : this.render(), document.addEventListener("click", this.documentClick), "auto" === this.config.showContent && window.addEventListener("scroll", this.windowScroll, !1), e.beforeOnChange && (this.beforeOnChange = e.beforeOnChange), e.onChange && (this.onChange = e.onChange), e.beforeOpen && (this.beforeOpen = e.beforeOpen), e.afterOpen && (this.afterOpen = e.afterOpen), e.beforeClose && (this.beforeClose = e.beforeClose), e.afterClose && (this.afterClose = e.afterClose), this.config.isEnabled || this.disable();
369
- }
370
- t.default = i;
371
- }, function (e, t, i) {
372
-
373
- t.__esModule = !0, t.Config = void 0;
374
- var n = (s.prototype.searchFilter = function (e, t) {
375
- return -1 !== e.text.toLowerCase().indexOf(t.toLowerCase());
376
- }, s);
377
- function s(e) {
378
- this.id = "", this.isMultiple = !1, this.isAjax = !1, this.isSearching = !1, this.showSearch = !0, this.searchFocus = !0, this.searchHighlight = !1, this.closeOnSelect = !0, this.showContent = "auto", this.searchPlaceholder = "Search", this.searchText = "No Results", this.searchingText = "Searching...", this.placeholderText = "Select Value", this.allowDeselect = !1, this.allowDeselectOption = !1, this.hideSelectedOption = !1, this.deselectLabel = "x", this.isEnabled = !0, this.valuesUseText = !1, this.showOptionTooltips = !1, this.selectByGroup = !1, this.limit = 0, this.timeoutDelay = 200, this.addToBody = !1, this.main = "ss-main", this.singleSelected = "ss-single-selected", this.arrow = "ss-arrow", this.multiSelected = "ss-multi-selected", this.add = "ss-add", this.plus = "ss-plus", this.values = "ss-values", this.value = "ss-value", this.valueText = "ss-value-text", this.valueDelete = "ss-value-delete", this.content = "ss-content", this.open = "ss-open", this.openAbove = "ss-open-above", this.openBelow = "ss-open-below", this.search = "ss-search", this.searchHighlighter = "ss-search-highlight", this.addable = "ss-addable", this.list = "ss-list", this.optgroup = "ss-optgroup", this.optgroupLabel = "ss-optgroup-label", this.optgroupLabelSelectable = "ss-optgroup-label-selectable", this.option = "ss-option", this.optionSelected = "ss-option-selected", this.highlighted = "ss-highlighted", this.disabled = "ss-disabled", this.hide = "ss-hide", this.id = "ss-" + Math.floor(1e5 * Math.random()), this.style = e.select.style.cssText, this.class = e.select.className.split(" "), this.isMultiple = e.select.multiple, this.isAjax = e.isAjax, this.showSearch = !1 !== e.showSearch, this.searchFocus = !1 !== e.searchFocus, this.searchHighlight = !0 === e.searchHighlight, this.closeOnSelect = !1 !== e.closeOnSelect, e.showContent && (this.showContent = e.showContent), this.isEnabled = !1 !== e.isEnabled, e.searchPlaceholder && (this.searchPlaceholder = e.searchPlaceholder), e.searchText && (this.searchText = e.searchText), e.searchingText && (this.searchingText = e.searchingText), e.placeholderText && (this.placeholderText = e.placeholderText), this.allowDeselect = !0 === e.allowDeselect, this.allowDeselectOption = !0 === e.allowDeselectOption, this.hideSelectedOption = !0 === e.hideSelectedOption, e.deselectLabel && (this.deselectLabel = e.deselectLabel), e.valuesUseText && (this.valuesUseText = e.valuesUseText), e.showOptionTooltips && (this.showOptionTooltips = e.showOptionTooltips), e.selectByGroup && (this.selectByGroup = e.selectByGroup), e.limit && (this.limit = e.limit), e.searchFilter && (this.searchFilter = e.searchFilter), null != e.timeoutDelay && (this.timeoutDelay = e.timeoutDelay), this.addToBody = !0 === e.addToBody;
379
- }
380
- t.Config = n;
381
- }, function (e, t, i) {
382
-
383
- t.__esModule = !0, t.Select = void 0;
384
- var n = i(0),
385
- i = (s.prototype.setValue = function () {
386
- if (this.main.data.getSelected()) {
387
- if (this.main.config.isMultiple) for (var e = this.main.data.getSelected(), t = 0, i = this.element.options; t < i.length; t++) {
388
- var n = i[t];
389
- n.selected = !1;
390
- for (var s = 0, a = e; s < a.length; s++) a[s].value === n.value && (n.selected = !0);
391
- } else {
392
- e = this.main.data.getSelected();
393
- this.element.value = e ? e.value : "";
394
- }
395
- this.main.data.isOnChangeEnabled = !1, this.element.dispatchEvent(new CustomEvent("change", {
396
- bubbles: !0
397
- })), this.main.data.isOnChangeEnabled = !0;
398
- }
399
- }, s.prototype.addAttributes = function () {
400
- this.element.tabIndex = -1, this.element.style.display = "none", this.element.dataset.ssid = this.main.config.id, this.element.setAttribute("aria-hidden", "true");
401
- }, s.prototype.addEventListeners = function () {
402
- var t = this;
403
- this.element.addEventListener("change", function (e) {
404
- t.main.data.setSelectedFromSelect(), t.main.render();
405
- });
406
- }, s.prototype.addMutationObserver = function () {
407
- var t = this;
408
- this.main.config.isAjax || (this.mutationObserver = new MutationObserver(function (e) {
409
- t.triggerMutationObserver && (t.main.data.parseSelectData(), t.main.data.setSelectedFromSelect(), t.main.render(), e.forEach(function (e) {
410
- "class" === e.attributeName && t.main.slim.updateContainerDivClass(t.main.slim.container);
411
- }));
412
- }), this.observeMutationObserver());
413
- }, s.prototype.observeMutationObserver = function () {
414
- this.mutationObserver && this.mutationObserver.observe(this.element, {
415
- attributes: !0,
416
- childList: !0,
417
- characterData: !0
418
- });
419
- }, s.prototype.disconnectMutationObserver = function () {
420
- this.mutationObserver && this.mutationObserver.disconnect();
421
- }, s.prototype.create = function (e) {
422
- this.element.innerHTML = "";
423
- for (var t = 0, i = e; t < i.length; t++) {
424
- var n = i[t];
425
- if (n.hasOwnProperty("options")) {
426
- var s = n,
427
- a = document.createElement("optgroup");
428
- if (a.label = s.label, s.options) for (var o = 0, l = s.options; o < l.length; o++) {
429
- var r = l[o];
430
- a.appendChild(this.createOption(r));
431
- }
432
- this.element.appendChild(a);
433
- } else this.element.appendChild(this.createOption(n));
434
- }
435
- }, s.prototype.createOption = function (t) {
436
- var i = document.createElement("option");
437
- return i.value = "" !== t.value ? t.value : t.text, i.innerHTML = t.innerHTML || t.text, t.selected && (i.selected = t.selected), !1 === t.display && (i.style.display = "none"), t.disabled && (i.disabled = !0), t.placeholder && i.setAttribute("data-placeholder", "true"), t.mandatory && i.setAttribute("data-mandatory", "true"), t.class && t.class.split(" ").forEach(function (e) {
438
- i.classList.add(e);
439
- }), t.data && "object" == typeof t.data && Object.keys(t.data).forEach(function (e) {
440
- i.setAttribute("data-" + (0, n.kebabCase)(e), t.data[e]);
441
- }), i;
442
- }, s);
443
- function s(e) {
444
- this.triggerMutationObserver = !0, this.element = e.select, this.main = e.main, this.element.disabled && (this.main.config.isEnabled = !1), this.addAttributes(), this.addEventListeners(), this.mutationObserver = null, this.addMutationObserver(), this.element.slim = e.main;
445
- }
446
- t.Select = i;
447
- }, function (e, t, i) {
448
-
449
- t.__esModule = !0, t.Slim = void 0;
450
- var n = i(0),
451
- o = i(1),
452
- i = (s.prototype.containerDiv = function () {
453
- var e = document.createElement("div");
454
- return e.style.cssText = this.main.config.style, this.updateContainerDivClass(e), e;
455
- }, s.prototype.updateContainerDivClass = function (e) {
456
- this.main.config.class = this.main.select.element.className.split(" "), e.className = "", e.classList.add(this.main.config.id), e.classList.add(this.main.config.main);
457
- for (var t = 0, i = this.main.config.class; t < i.length; t++) {
458
- var n = i[t];
459
- "" !== n.trim() && e.classList.add(n);
460
- }
461
- }, s.prototype.singleSelectedDiv = function () {
462
- var t = this,
463
- e = document.createElement("div");
464
- e.classList.add(this.main.config.singleSelected);
465
- var i = document.createElement("span");
466
- i.classList.add("placeholder"), e.appendChild(i);
467
- var n = document.createElement("span");
468
- n.innerHTML = this.main.config.deselectLabel, n.classList.add("ss-deselect"), n.onclick = function (e) {
469
- e.stopPropagation(), t.main.config.isEnabled && t.main.set("");
470
- }, e.appendChild(n);
471
- var s = document.createElement("span");
472
- s.classList.add(this.main.config.arrow);
473
- var a = document.createElement("span");
474
- return a.classList.add("arrow-down"), s.appendChild(a), e.appendChild(s), e.onclick = function () {
475
- t.main.config.isEnabled && (t.main.data.contentOpen ? t.main.close() : t.main.open());
476
- }, {
477
- container: e,
478
- placeholder: i,
479
- deselect: n,
480
- arrowIcon: {
481
- container: s,
482
- arrow: a
483
- }
484
- };
485
- }, s.prototype.placeholder = function () {
486
- var e,
487
- t = this.main.data.getSelected();
488
- null === t || t && t.placeholder ? ((e = document.createElement("span")).classList.add(this.main.config.disabled), e.innerHTML = this.main.config.placeholderText, this.singleSelected && (this.singleSelected.placeholder.innerHTML = e.outerHTML)) : (e = "", t && (e = t.innerHTML && !0 !== this.main.config.valuesUseText ? t.innerHTML : t.text), this.singleSelected && (this.singleSelected.placeholder.innerHTML = t ? e : ""));
489
- }, s.prototype.deselect = function () {
490
- this.singleSelected && (!this.main.config.allowDeselect || "" === this.main.selected() ? this.singleSelected.deselect.classList.add("ss-hide") : this.singleSelected.deselect.classList.remove("ss-hide"));
491
- }, s.prototype.multiSelectedDiv = function () {
492
- var t = this,
493
- e = document.createElement("div");
494
- e.classList.add(this.main.config.multiSelected);
495
- var i = document.createElement("div");
496
- i.classList.add(this.main.config.values), e.appendChild(i);
497
- var n = document.createElement("div");
498
- n.classList.add(this.main.config.add);
499
- var s = document.createElement("span");
500
- return s.classList.add(this.main.config.plus), s.onclick = function (e) {
501
- t.main.data.contentOpen && (t.main.close(), e.stopPropagation());
502
- }, n.appendChild(s), e.appendChild(n), e.onclick = function (e) {
503
- t.main.config.isEnabled && (e.target.classList.contains(t.main.config.valueDelete) || (t.main.data.contentOpen ? t.main.close() : t.main.open()));
504
- }, {
505
- container: e,
506
- values: i,
507
- add: n,
508
- plus: s
509
- };
510
- }, s.prototype.values = function () {
511
- if (this.multiSelected) {
512
- for (var e = this.multiSelected.values.childNodes, t = this.main.data.getSelected(), i = [], n = 0, s = e; n < s.length; n++) {
513
- for (var a = s[n], o = !0, l = 0, r = t; l < r.length; l++) {
514
- var c = r[l];
515
- String(c.id) === String(a.dataset.id) && (o = !1);
516
- }
517
- o && i.push(a);
518
- }
519
- for (var d = 0, h = i; d < h.length; d++) {
520
- var u = h[d];
521
- u.classList.add("ss-out"), this.multiSelected.values.removeChild(u);
522
- }
523
- for (var p, e = this.multiSelected.values.childNodes, c = 0; c < t.length; c++) {
524
- o = !1;
525
- for (var m = 0, f = e; m < f.length; m++) {
526
- a = f[m];
527
- String(t[c].id) === String(a.dataset.id) && (o = !0);
528
- }
529
- o || (0 !== e.length && HTMLElement.prototype.insertAdjacentElement ? 0 === c ? this.multiSelected.values.insertBefore(this.valueDiv(t[c]), e[c]) : e[c - 1].insertAdjacentElement("afterend", this.valueDiv(t[c])) : this.multiSelected.values.appendChild(this.valueDiv(t[c])));
530
- }
531
- 0 === t.length && ((p = document.createElement("span")).classList.add(this.main.config.disabled), p.innerHTML = this.main.config.placeholderText, this.multiSelected.values.innerHTML = p.outerHTML);
532
- }
533
- }, s.prototype.valueDiv = function (s) {
534
- var a = this,
535
- e = document.createElement("div");
536
- e.classList.add(this.main.config.value), e.dataset.id = s.id;
537
- var t = document.createElement("span");
538
- return t.classList.add(this.main.config.valueText), t.innerHTML = s.innerHTML && !0 !== this.main.config.valuesUseText ? s.innerHTML : s.text, e.appendChild(t), s.mandatory || ((t = document.createElement("span")).classList.add(this.main.config.valueDelete), t.innerHTML = this.main.config.deselectLabel, t.onclick = function (e) {
539
- e.preventDefault(), e.stopPropagation();
540
- var t = !1;
541
- if (a.main.beforeOnChange || (t = !0), a.main.beforeOnChange) {
542
- for (var e = a.main.data.getSelected(), i = JSON.parse(JSON.stringify(e)), n = 0; n < i.length; n++) i[n].id === s.id && i.splice(n, 1);
543
- !1 !== a.main.beforeOnChange(i) && (t = !0);
544
- }
545
- t && (a.main.data.removeFromSelected(s.id, "id"), a.main.render(), a.main.select.setValue(), a.main.data.onDataChange());
546
- }, e.appendChild(t)), e;
547
- }, s.prototype.contentDiv = function () {
548
- var e = document.createElement("div");
549
- return e.classList.add(this.main.config.content), e;
550
- }, s.prototype.searchDiv = function () {
551
- var n = this,
552
- e = document.createElement("div"),
553
- s = document.createElement("input"),
554
- a = document.createElement("div");
555
- e.classList.add(this.main.config.search);
556
- var t = {
557
- container: e,
558
- input: s
559
- };
560
- return this.main.config.showSearch || (e.classList.add(this.main.config.hide), s.readOnly = !0), s.type = "search", s.placeholder = this.main.config.searchPlaceholder, s.tabIndex = 0, s.setAttribute("aria-label", this.main.config.searchPlaceholder), s.setAttribute("autocapitalize", "off"), s.setAttribute("autocomplete", "off"), s.setAttribute("autocorrect", "off"), s.onclick = function (e) {
561
- setTimeout(function () {
562
- "" === e.target.value && n.main.search("");
563
- }, 10);
564
- }, s.onkeydown = function (e) {
565
- "ArrowUp" === e.key ? (n.main.open(), n.highlightUp(), e.preventDefault()) : "ArrowDown" === e.key ? (n.main.open(), n.highlightDown(), e.preventDefault()) : "Tab" === e.key ? n.main.data.contentOpen ? n.main.close() : setTimeout(function () {
566
- n.main.close();
567
- }, n.main.config.timeoutDelay) : "Enter" === e.key && e.preventDefault();
568
- }, s.onkeyup = function (e) {
569
- var t = e.target;
570
- if ("Enter" === e.key) {
571
- if (n.main.addable && e.ctrlKey) return a.click(), e.preventDefault(), void e.stopPropagation();
572
- var i = n.list.querySelector("." + n.main.config.highlighted);
573
- i && i.click();
574
- } else "ArrowUp" === e.key || "ArrowDown" === e.key || ("Escape" === e.key ? n.main.close() : n.main.config.showSearch && n.main.data.contentOpen ? n.main.search(t.value) : s.value = "");
575
- e.preventDefault(), e.stopPropagation();
576
- }, s.onfocus = function () {
577
- n.main.open();
578
- }, e.appendChild(s), this.main.addable && (a.classList.add(this.main.config.addable), a.innerHTML = "+", a.onclick = function (e) {
579
- var t;
580
- n.main.addable && (e.preventDefault(), e.stopPropagation(), "" !== (e = n.search.input.value).trim() ? (e = n.main.addable(e), t = "", e && ("object" == typeof e ? (0, o.validateOption)(e) && (n.main.addData(e), t = e.value || e.text) : (n.main.addData(n.main.data.newOption({
581
- text: e,
582
- value: e
583
- })), t = e), n.main.search(""), setTimeout(function () {
584
- n.main.set(t, "value", !1, !1);
585
- }, 100), n.main.config.closeOnSelect && setTimeout(function () {
586
- n.main.close();
587
- }, 100))) : n.search.input.focus());
588
- }, e.appendChild(a), t.addable = a), t;
589
- }, s.prototype.highlightUp = function () {
590
- var e = this.list.querySelector("." + this.main.config.highlighted),
591
- t = null;
592
- if (e) for (t = e.previousSibling; null !== t && t.classList.contains(this.main.config.disabled);) t = t.previousSibling;else var i = this.list.querySelectorAll("." + this.main.config.option + ":not(." + this.main.config.disabled + ")"),
593
- t = i[i.length - 1];
594
- null !== (t = t && t.classList.contains(this.main.config.optgroupLabel) ? null : t) || (i = e.parentNode).classList.contains(this.main.config.optgroup) && (!i.previousSibling || (i = i.previousSibling.querySelectorAll("." + this.main.config.option + ":not(." + this.main.config.disabled + ")")).length && (t = i[i.length - 1])), t && (e && e.classList.remove(this.main.config.highlighted), t.classList.add(this.main.config.highlighted), (0, n.ensureElementInView)(this.list, t));
595
- }, s.prototype.highlightDown = function () {
596
- var e,
597
- t = this.list.querySelector("." + this.main.config.highlighted),
598
- i = null;
599
- if (t) for (i = t.nextSibling; null !== i && i.classList.contains(this.main.config.disabled);) i = i.nextSibling;else i = this.list.querySelector("." + this.main.config.option + ":not(." + this.main.config.disabled + ")");
600
- null !== i || null === t || (e = t.parentNode).classList.contains(this.main.config.optgroup) && e.nextSibling && (i = e.nextSibling.querySelector("." + this.main.config.option + ":not(." + this.main.config.disabled + ")")), i && (t && t.classList.remove(this.main.config.highlighted), i.classList.add(this.main.config.highlighted), (0, n.ensureElementInView)(this.list, i));
601
- }, s.prototype.listDiv = function () {
602
- var e = document.createElement("div");
603
- return e.classList.add(this.main.config.list), e.setAttribute("role", "listbox"), e;
604
- }, s.prototype.options = function (e) {
605
- void 0 === e && (e = "");
606
- var t = this.main.data.filtered || this.main.data.data;
607
- if ((this.list.innerHTML = "") !== e) return (i = document.createElement("div")).classList.add(this.main.config.option), i.classList.add(this.main.config.disabled), i.innerHTML = e, void this.list.appendChild(i);
608
- if (this.main.config.isAjax && this.main.config.isSearching) return (i = document.createElement("div")).classList.add(this.main.config.option), i.classList.add(this.main.config.disabled), i.innerHTML = this.main.config.searchingText, void this.list.appendChild(i);
609
- if (0 === t.length) {
610
- var i = document.createElement("div");
611
- return i.classList.add(this.main.config.option), i.classList.add(this.main.config.disabled), i.innerHTML = this.main.config.searchText, void this.list.appendChild(i);
612
- }
613
- for (var r = this, n = 0, s = t; n < s.length; n++) !function (e) {
614
- if (e.hasOwnProperty("label")) {
615
- var t = e,
616
- s = document.createElement("div");
617
- s.classList.add(r.main.config.optgroup);
618
- var i = document.createElement("div");
619
- i.classList.add(r.main.config.optgroupLabel), r.main.config.selectByGroup && r.main.config.isMultiple && i.classList.add(r.main.config.optgroupLabelSelectable), i.innerHTML = t.label, s.appendChild(i);
620
- t = t.options;
621
- if (t) {
622
- for (var a, n = 0, o = t; n < o.length; n++) {
623
- var l = o[n];
624
- s.appendChild(r.option(l));
625
- }
626
- r.main.config.selectByGroup && r.main.config.isMultiple && (a = r, i.addEventListener("click", function (e) {
627
- e.preventDefault(), e.stopPropagation();
628
- for (var t = 0, i = s.children; t < i.length; t++) {
629
- var n = i[t];
630
- -1 !== n.className.indexOf(a.main.config.option) && n.click();
631
- }
632
- }));
633
- }
634
- r.list.appendChild(s);
635
- } else r.list.appendChild(r.option(e));
636
- }(s[n]);
637
- }, s.prototype.option = function (o) {
638
- if (o.placeholder) {
639
- var e = document.createElement("div");
640
- return e.classList.add(this.main.config.option), e.classList.add(this.main.config.hide), e;
641
- }
642
- var t = document.createElement("div");
643
- t.classList.add(this.main.config.option), t.setAttribute("role", "option"), o.class && o.class.split(" ").forEach(function (e) {
644
- t.classList.add(e);
645
- }), o.style && (t.style.cssText = o.style);
646
- var l = this.main.data.getSelected();
647
- t.dataset.id = o.id, this.main.config.searchHighlight && this.main.slim && o.innerHTML && "" !== this.main.slim.search.input.value.trim() ? t.innerHTML = (0, n.highlight)(o.innerHTML, this.main.slim.search.input.value, this.main.config.searchHighlighter) : o.innerHTML && (t.innerHTML = o.innerHTML), this.main.config.showOptionTooltips && t.textContent && t.setAttribute("title", t.textContent);
648
- var r = this;
649
- t.addEventListener("click", function (e) {
650
- e.preventDefault(), e.stopPropagation();
651
- var t = this.dataset.id;
652
- if (!0 === o.selected && r.main.config.allowDeselectOption) {
653
- var i = !1;
654
- if (r.main.beforeOnChange && r.main.config.isMultiple || (i = !0), r.main.beforeOnChange && r.main.config.isMultiple) {
655
- for (var n = r.main.data.getSelected(), s = JSON.parse(JSON.stringify(n)), a = 0; a < s.length; a++) s[a].id === t && s.splice(a, 1);
656
- !1 !== r.main.beforeOnChange(s) && (i = !0);
657
- }
658
- i && (r.main.config.isMultiple ? (r.main.data.removeFromSelected(t, "id"), r.main.render(), r.main.select.setValue(), r.main.data.onDataChange()) : r.main.set(""));
659
- } else o.disabled || o.selected || r.main.config.limit && Array.isArray(l) && r.main.config.limit <= l.length || (r.main.beforeOnChange ? (n = void 0, (i = JSON.parse(JSON.stringify(r.main.data.getObjectFromData(t)))).selected = !0, r.main.config.isMultiple ? (n = JSON.parse(JSON.stringify(l))).push(i) : n = JSON.parse(JSON.stringify(i)), !1 !== r.main.beforeOnChange(n) && r.main.set(t, "id", r.main.config.closeOnSelect)) : r.main.set(t, "id", r.main.config.closeOnSelect));
660
- });
661
- e = l && (0, n.isValueInArrayOfObjects)(l, "id", o.id);
662
- return (o.disabled || e) && (t.onclick = null, r.main.config.allowDeselectOption || t.classList.add(this.main.config.disabled), r.main.config.hideSelectedOption && t.classList.add(this.main.config.hide)), e ? t.classList.add(this.main.config.optionSelected) : t.classList.remove(this.main.config.optionSelected), t;
663
- }, s);
664
- function s(e) {
665
- this.main = e.main, this.container = this.containerDiv(), this.content = this.contentDiv(), this.search = this.searchDiv(), this.list = this.listDiv(), this.options(), this.singleSelected = null, this.multiSelected = null, this.main.config.isMultiple ? (this.multiSelected = this.multiSelectedDiv(), this.multiSelected && this.container.appendChild(this.multiSelected.container)) : (this.singleSelected = this.singleSelectedDiv(), this.container.appendChild(this.singleSelected.container)), this.main.config.addToBody ? (this.content.classList.add(this.main.config.id), document.body.appendChild(this.content)) : this.container.appendChild(this.content), this.content.appendChild(this.search.container), this.content.appendChild(this.list);
666
- }
667
- t.Slim = i;
668
- }], s.c = n, s.d = function (e, t, i) {
669
- s.o(e, t) || Object.defineProperty(e, t, {
670
- enumerable: !0,
671
- get: i
672
- });
673
- }, s.r = function (e) {
674
- "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {
675
- value: "Module"
676
- }), Object.defineProperty(e, "__esModule", {
677
- value: !0
678
- });
679
- }, s.t = function (t, e) {
680
- if (1 & e && (t = s(t)), 8 & e) return t;
681
- if (4 & e && "object" == typeof t && t && t.__esModule) return t;
682
- var i = Object.create(null);
683
- if (s.r(i), Object.defineProperty(i, "default", {
684
- enumerable: !0,
685
- value: t
686
- }), 2 & e && "string" != typeof t) for (var n in t) s.d(i, n, function (e) {
687
- return t[e];
688
- }.bind(null, n));
689
- return i;
690
- }, s.n = function (e) {
691
- var t = e && e.__esModule ? function () {
692
- return e.default;
693
- } : function () {
694
- return e;
695
- };
696
- return s.d(t, "a", t), t;
697
- }, s.o = function (e, t) {
698
- return Object.prototype.hasOwnProperty.call(e, t);
699
- }, s.p = "", s(s.s = 2).default;
700
- function s(e) {
701
- if (n[e]) return n[e].exports;
702
- var t = n[e] = {
703
- i: e,
704
- l: !1,
705
- exports: {}
706
- };
707
- return i[e].call(t.exports, t, t.exports, s), t.l = !0, t.exports;
708
- }
709
- var i, n;
710
- });
711
- var __pika_web_default_export_for_treeshaking__ = exports.SlimSelect;
712
-
713
- export default __pika_web_default_export_for_treeshaking__;
714
- //# sourceMappingURL=slim-select.js.map