@baloise/ds-core 16.6.0-nightly.20241022 → 16.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/components/all.d.ts +0 -2
  2. package/components/all.js +0 -3
  3. package/components/bal-app.js +85 -1
  4. package/components/bal-segment-item.js +6 -0
  5. package/components/bal-segment.js +6 -3
  6. package/components/index.js +289 -5
  7. package/components/tokens.esm.js +1 -1
  8. package/dist/baloise-design-system/baloise-design-system.esm.js +1 -1
  9. package/dist/baloise-design-system/baloise-design-system.js +1 -1
  10. package/dist/baloise-design-system/index.esm.js +1 -1
  11. package/dist/baloise-design-system/{p-f959646a.system.js → p-013b4c72.system.js} +1 -1
  12. package/dist/baloise-design-system/{p-ebc32407d6.system.entry.js → p-05e4a53c65.system.entry.js} +1 -1
  13. package/dist/baloise-design-system/{p-1852f9f103.entry.js → p-13e4cb7883.entry.js} +1 -1
  14. package/dist/baloise-design-system/p-1509eaa7.system.js +1 -1
  15. package/dist/baloise-design-system/{p-ff6badd1e9.system.entry.js → p-1dab90ea92.system.entry.js} +1 -1
  16. package/dist/baloise-design-system/{p-07c423f22b.entry.js → p-1e76ea305f.entry.js} +1 -1
  17. package/dist/baloise-design-system/{p-66d132a1c4.system.entry.js → p-26945cccaf.system.entry.js} +1 -1
  18. package/dist/baloise-design-system/{p-444871e4.system.js → p-2df0c70a.system.js} +1 -1
  19. package/dist/baloise-design-system/{p-d02a88e445.system.entry.js → p-36a339b316.system.entry.js} +1 -1
  20. package/dist/baloise-design-system/{p-9f4bdc3515.entry.js → p-37303e3032.entry.js} +1 -1
  21. package/dist/baloise-design-system/{p-2cb1790e97.entry.js → p-37a5a1a22c.entry.js} +1 -1
  22. package/dist/baloise-design-system/{p-5ed446bdff.system.entry.js → p-41ffaa3ffc.system.entry.js} +1 -1
  23. package/dist/baloise-design-system/{p-be500bb773.entry.js → p-482c44ab09.entry.js} +1 -1
  24. package/dist/baloise-design-system/p-54f81c32.js +1 -1
  25. package/dist/baloise-design-system/p-553751ab25.system.entry.js +1 -0
  26. package/dist/baloise-design-system/{p-4c21485680.entry.js → p-5e3f3b1087.entry.js} +1 -1
  27. package/dist/baloise-design-system/{p-506d5151ef.entry.js → p-628615ef50.entry.js} +1 -1
  28. package/dist/baloise-design-system/{p-d9236c9a02.system.entry.js → p-650f9ba0b9.system.entry.js} +1 -1
  29. package/dist/baloise-design-system/{p-9b48ba55c9.entry.js → p-65badcc3ef.entry.js} +1 -1
  30. package/dist/baloise-design-system/{p-37f45077.js → p-6bd085d5.js} +1 -1
  31. package/dist/baloise-design-system/{p-f09a9d28ad.entry.js → p-6d582b5344.entry.js} +1 -1
  32. package/dist/baloise-design-system/{p-e4e6442065.system.entry.js → p-6e9cc6f775.system.entry.js} +1 -1
  33. package/dist/baloise-design-system/{p-5a516842.system.js → p-6ff915ca.system.js} +1 -1
  34. package/dist/baloise-design-system/{p-9073ed7b4c.system.entry.js → p-75f8958153.system.entry.js} +1 -1
  35. package/dist/baloise-design-system/{p-c8adf86086.system.entry.js → p-7bd3277bbb.system.entry.js} +1 -1
  36. package/dist/baloise-design-system/{p-c083d372.system.js → p-8d2a7b98.system.js} +1 -1
  37. package/dist/baloise-design-system/{p-4e59756b4a.system.entry.js → p-a0322563d7.system.entry.js} +1 -1
  38. package/dist/baloise-design-system/p-bcca1ed3.system.js +1 -0
  39. package/dist/baloise-design-system/{p-69f61736.js → p-c643ad95.js} +1 -1
  40. package/dist/baloise-design-system/{p-151fd228.system.js → p-d2cd4498.system.js} +1 -1
  41. package/dist/baloise-design-system/p-d4deea6ff0.entry.js +1 -0
  42. package/dist/baloise-design-system/{p-a275c2fa.js → p-d8224577.js} +1 -1
  43. package/dist/baloise-design-system/p-e1aecdb9f3.entry.js +1 -0
  44. package/dist/baloise-design-system/{p-bc82aeebe7.entry.js → p-e2f54cc42a.entry.js} +1 -1
  45. package/dist/baloise-design-system/p-e78a6409.js +1 -0
  46. package/dist/baloise-design-system/{p-bd174cf0d3.system.entry.js → p-ee94c7f354.system.entry.js} +1 -1
  47. package/dist/baloise-design-system/{p-42e8dcb886.entry.js → p-ee998baab0.entry.js} +1 -1
  48. package/dist/baloise-design-system/{p-c12f4ea54d.system.entry.js → p-ff07a24a13.system.entry.js} +1 -1
  49. package/dist/cjs/{global-2562a984.js → app-globals-ae3a8623.js} +4 -2
  50. package/dist/cjs/bal-carousel_2.cjs.entry.js +3 -3
  51. package/dist/cjs/bal-datepicker.cjs.entry.js +3 -3
  52. package/dist/cjs/bal-hint_5.cjs.entry.js +3 -3
  53. package/dist/cjs/bal-list_8.cjs.entry.js +3 -3
  54. package/dist/cjs/bal-logo.cjs.entry.js +3 -3
  55. package/dist/cjs/bal-nav_8.cjs.entry.js +3 -3
  56. package/dist/cjs/bal-navbar_5.cjs.entry.js +3 -3
  57. package/dist/cjs/bal-pagination.cjs.entry.js +3 -3
  58. package/dist/cjs/bal-progress-bar.cjs.entry.js +4 -4
  59. package/dist/cjs/bal-segment_2.cjs.entry.js +15 -6
  60. package/dist/cjs/bal-shape.cjs.entry.js +1 -1
  61. package/dist/cjs/bal-steps.cjs.entry.js +3 -3
  62. package/dist/cjs/bal-tab-item_2.cjs.entry.js +3 -3
  63. package/dist/cjs/baloise-design-system.cjs.js +2 -3
  64. package/dist/cjs/{breakpoints.decorator-b7164b21.js → breakpoints.decorator-15205966.js} +1 -1
  65. package/dist/cjs/{breakpoints.subject-308a3b19.js → breakpoints.subject-2aac9915.js} +1 -1
  66. package/dist/cjs/index.cjs.js +2 -2
  67. package/dist/cjs/initialize-2a19d091.js +1 -1
  68. package/dist/cjs/loader.cjs.js +2 -3
  69. package/dist/cjs/{tokens.esm-dc8b1d1f.js → tokens.esm-94853847.js} +1 -1
  70. package/dist/cjs/{window-resize.decorator-9194bd8e.js → window-resize.decorator-4a489114.js} +1 -1
  71. package/dist/collection/collection-manifest.json +1 -2
  72. package/dist/collection/components/bal-segment/bal-segment-item/bal-segment-item.js +6 -0
  73. package/dist/collection/components/bal-segment/bal-segment.js +6 -3
  74. package/dist/collection/utils/constants/version.constant.js +1 -1
  75. package/dist/esm/{global-63f4bcec.js → app-globals-b0dd0fc4.js} +4 -2
  76. package/dist/esm/bal-carousel_2.entry.js +3 -3
  77. package/dist/esm/bal-datepicker.entry.js +3 -3
  78. package/dist/esm/bal-hint_5.entry.js +3 -3
  79. package/dist/esm/bal-list_8.entry.js +3 -3
  80. package/dist/esm/bal-logo.entry.js +3 -3
  81. package/dist/esm/bal-nav_8.entry.js +3 -3
  82. package/dist/esm/bal-navbar_5.entry.js +3 -3
  83. package/dist/esm/bal-pagination.entry.js +3 -3
  84. package/dist/esm/bal-progress-bar.entry.js +4 -4
  85. package/dist/esm/bal-segment_2.entry.js +16 -7
  86. package/dist/esm/bal-shape.entry.js +1 -1
  87. package/dist/esm/bal-steps.entry.js +3 -3
  88. package/dist/esm/bal-tab-item_2.entry.js +3 -3
  89. package/dist/esm/baloise-design-system.js +2 -3
  90. package/dist/esm/{breakpoints.decorator-daea1bfc.js → breakpoints.decorator-dffbf034.js} +1 -1
  91. package/dist/esm/{breakpoints.subject-358d526c.js → breakpoints.subject-fd3dc49c.js} +1 -1
  92. package/dist/esm/index.js +3 -3
  93. package/dist/esm/initialize-e216cfe4.js +1 -1
  94. package/dist/esm/loader.js +2 -3
  95. package/dist/esm/{tokens.esm-a89ffd82.js → tokens.esm-6cd758d9.js} +1 -1
  96. package/dist/esm/{window-resize.decorator-7bfef946.js → window-resize.decorator-55f8e354.js} +1 -1
  97. package/dist/esm-es5/app-globals-b0dd0fc4.js +1 -0
  98. package/dist/esm-es5/bal-carousel_2.entry.js +1 -1
  99. package/dist/esm-es5/bal-datepicker.entry.js +1 -1
  100. package/dist/esm-es5/bal-hint_5.entry.js +1 -1
  101. package/dist/esm-es5/bal-list_8.entry.js +1 -1
  102. package/dist/esm-es5/bal-logo.entry.js +1 -1
  103. package/dist/esm-es5/bal-nav_8.entry.js +1 -1
  104. package/dist/esm-es5/bal-navbar_5.entry.js +1 -1
  105. package/dist/esm-es5/bal-pagination.entry.js +1 -1
  106. package/dist/esm-es5/bal-progress-bar.entry.js +1 -1
  107. package/dist/esm-es5/bal-segment_2.entry.js +1 -1
  108. package/dist/esm-es5/bal-shape.entry.js +1 -1
  109. package/dist/esm-es5/bal-steps.entry.js +1 -1
  110. package/dist/esm-es5/bal-tab-item_2.entry.js +1 -1
  111. package/dist/esm-es5/baloise-design-system.js +1 -1
  112. package/dist/esm-es5/{breakpoints.decorator-daea1bfc.js → breakpoints.decorator-dffbf034.js} +1 -1
  113. package/dist/esm-es5/{breakpoints.subject-358d526c.js → breakpoints.subject-fd3dc49c.js} +1 -1
  114. package/dist/esm-es5/index.js +1 -1
  115. package/dist/esm-es5/initialize-e216cfe4.js +1 -1
  116. package/dist/esm-es5/loader.js +1 -1
  117. package/dist/esm-es5/{window-resize.decorator-7bfef946.js → window-resize.decorator-55f8e354.js} +1 -1
  118. package/dist/types/components/bal-segment/bal-segment-item/bal-segment-item.d.ts +1 -0
  119. package/dist/types/components.d.ts +0 -37
  120. package/package.json +7 -7
  121. package/components/bal-app2.js +0 -87
  122. package/components/bal-doc-app.d.ts +0 -11
  123. package/components/bal-doc-app.js +0 -260
  124. package/components/initialize.js +0 -288
  125. package/dist/baloise-design-system/p-2743992513.entry.js +0 -1
  126. package/dist/baloise-design-system/p-360068a4.system.js +0 -1
  127. package/dist/baloise-design-system/p-4ff656dd48.entry.js +0 -1
  128. package/dist/baloise-design-system/p-661ab334d8.system.entry.js +0 -1
  129. package/dist/baloise-design-system/p-6d1b6215.js +0 -1
  130. package/dist/baloise-design-system/p-7291766c.system.js +0 -1
  131. package/dist/baloise-design-system/p-7cc52e4a3b.system.entry.js +0 -1
  132. package/dist/baloise-design-system/p-ac855c8744.entry.js +0 -1
  133. package/dist/baloise-design-system/p-e8ffddeb.js +0 -1
  134. package/dist/cjs/app-globals-5fd73c0c.js +0 -7
  135. package/dist/cjs/bal-doc-app.cjs.entry.js +0 -231
  136. package/dist/collection/components/docs/bal-doc-app/bal-doc-app.css +0 -1
  137. package/dist/collection/components/docs/bal-doc-app/bal-doc-app.js +0 -229
  138. package/dist/esm/app-globals-970bab17.js +0 -5
  139. package/dist/esm/bal-doc-app.entry.js +0 -227
  140. package/dist/esm-es5/app-globals-970bab17.js +0 -1
  141. package/dist/esm-es5/bal-doc-app.entry.js +0 -1
  142. package/dist/esm-es5/global-63f4bcec.js +0 -1
  143. package/dist/types/components/docs/bal-doc-app/bal-doc-app.d.ts +0 -21
  144. package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/icons/src/index.d.ts +0 -81
  145. /package/dist/baloise-design-system/{p-d0a1fbde.js → p-a6536532.js} +0 -0
  146. /package/dist/baloise-design-system/{p-b663dd0f.system.js → p-fa210a21.system.js} +0 -0
  147. /package/dist/esm-es5/{tokens.esm-a89ffd82.js → tokens.esm-6cd758d9.js} +0 -0
@@ -1,288 +0,0 @@
1
- import { setPlatformHelpers } from '@stencil/core/internal/client';
2
- import { b as balBrowser } from './browser.js';
3
- import { d as defaultConfig } from './config.default.js';
4
-
5
- const BALOISE_SESSION_KEY = 'baloise-persist-config';
6
-
7
- class Config {
8
- constructor() {
9
- this._componentObservers = [];
10
- this._observers = [];
11
- this._config = defaultConfig;
12
- }
13
- get locale() {
14
- return `${this._config.language}-${this._config.region}`;
15
- }
16
- get region() {
17
- return this._config.region;
18
- }
19
- set region(region) {
20
- if (region !== this._config.region) {
21
- this._config.region = region;
22
- this._notify();
23
- }
24
- }
25
- get language() {
26
- return this._config.language;
27
- }
28
- set language(language) {
29
- if (language !== this._config.language) {
30
- if (this._config.allowedLanguages.includes(language)) {
31
- this._config.language = language;
32
- }
33
- else {
34
- this._config.language = this._config.fallbackLanguage;
35
- }
36
- this._notify();
37
- }
38
- }
39
- get allowedLanguages() {
40
- return this._config.allowedLanguages;
41
- }
42
- set allowedLanguages(allowedLanguages) {
43
- if (allowedLanguages !== this._config.allowedLanguages) {
44
- this._config.allowedLanguages = allowedLanguages;
45
- this._notify();
46
- }
47
- }
48
- get icons() {
49
- return this._config.icons;
50
- }
51
- set icons(icons) {
52
- this._config.icons = Object.assign(Object.assign({}, this._config.icons), icons);
53
- this._notify();
54
- }
55
- get logger() {
56
- return this._config.logger;
57
- }
58
- set logger(logger) {
59
- this._config.logger = Object.assign({}, logger);
60
- this._notify();
61
- }
62
- get animated() {
63
- return this._config.animated;
64
- }
65
- set animated(animated) {
66
- this._config.animated = animated;
67
- this._notify();
68
- }
69
- get httpFormSubmit() {
70
- return this._config.httpFormSubmit;
71
- }
72
- set httpFormSubmit(httpFormSubmit) {
73
- this._config.httpFormSubmit = httpFormSubmit;
74
- this._notify();
75
- }
76
- attach(observer) {
77
- const isExist = this._observers.includes(observer);
78
- if (isExist) {
79
- return console.log('Subject: Observer has been attached already.');
80
- }
81
- this._observers.push(observer);
82
- observer.configChanged(this._config);
83
- }
84
- detach(observer) {
85
- const observerIndex = this._observers.indexOf(observer);
86
- if (observerIndex === -1) {
87
- return console.log('Subject: Nonexistent observer.');
88
- }
89
- this._observers.splice(observerIndex, 1);
90
- }
91
- attachComponent(observer) {
92
- const isExist = this._componentObservers.includes(observer);
93
- if (isExist) {
94
- return console.log('Subject: Observer has been attached already.');
95
- }
96
- this._componentObservers.push(observer);
97
- observer.configChanged(this._config);
98
- }
99
- detachComponent(observer) {
100
- const observerIndex = this._componentObservers.indexOf(observer);
101
- if (observerIndex === -1) {
102
- return console.log('Subject: Nonexistent observer.');
103
- }
104
- this._componentObservers.splice(observerIndex, 1);
105
- }
106
- toString() {
107
- return JSON.stringify(this._config);
108
- }
109
- reset(config) {
110
- this._config = Object.assign(Object.assign(Object.assign({}, this._config), config), { icons: Object.assign(Object.assign({}, this._config.icons), config.icons) });
111
- this._notify(false);
112
- }
113
- _notify(all = true) {
114
- for (const observer of this._componentObservers) {
115
- observer.configChanged(this._config);
116
- }
117
- if (all) {
118
- for (const observer of this._observers) {
119
- observer.configChanged(this._config);
120
- }
121
- }
122
- if (balBrowser.hasWindow) {
123
- saveConfig(window, this._config);
124
- }
125
- }
126
- }
127
- const config = /*@__PURE__*/ new Config();
128
- const configFromSession = (win) => {
129
- try {
130
- const configStr = win.sessionStorage.getItem(BALOISE_SESSION_KEY);
131
- return configStr !== null ? JSON.parse(configStr) : {};
132
- }
133
- catch (e) {
134
- return {};
135
- }
136
- };
137
- const saveConfig = (win, c) => {
138
- try {
139
- win.sessionStorage.setItem(BALOISE_SESSION_KEY, JSON.stringify(c));
140
- }
141
- catch (e) {
142
- return;
143
- }
144
- };
145
-
146
- const setupConfig = (userConfig = {}, win = {}) => {
147
- if (Object.keys(win).length === 0 && balBrowser.hasWindow) {
148
- win = window;
149
- }
150
- win.BaloiseDesignSystem = win.BaloiseDesignSystem || {};
151
- config.reset(Object.assign(Object.assign(Object.assign({}, configFromSession(win)), userConfig), { icons: Object.assign(Object.assign({}, configFromSession(win).icons), userConfig.icons) }));
152
- win.BaloiseDesignSystem.config = config;
153
- };
154
-
155
- class BalNoticeController {
156
- constructor(options) {
157
- this.options = options;
158
- this.container = null;
159
- this.queue = [];
160
- this.preQueue = [];
161
- this.queueLimit = 5;
162
- }
163
- create(options) {
164
- if (balBrowser.hasDocument) {
165
- this.setupContainer();
166
- const clone = this.findClone(options);
167
- if (clone === undefined) {
168
- const el = document.createElement(this.options.tag);
169
- Object.assign(el, options);
170
- el.addEventListener('balClose', ev => {
171
- this.removeFromQueue(ev.detail);
172
- });
173
- this.preQueue.push(el);
174
- this.updateQueue();
175
- return el;
176
- }
177
- return clone;
178
- }
179
- }
180
- setQueue(queueLimit) {
181
- this.queueLimit = queueLimit;
182
- }
183
- async dismissAll() {
184
- var _a;
185
- const elements = (_a = this.container) === null || _a === void 0 ? void 0 : _a.querySelectorAll(this.options.tag);
186
- if (elements) {
187
- const closingQueue = [];
188
- for (let index = 0; index < elements.length; index++) {
189
- const el = elements[index];
190
- if (el.close) {
191
- closingQueue.push(el.close());
192
- }
193
- }
194
- await Promise.all(closingQueue);
195
- }
196
- }
197
- /**
198
- * @deprecated use dismissAll instead
199
- */
200
- async clearAll() {
201
- console.warn('[DEPRECATED] - use dismissAll() instead');
202
- return this.dismissAll();
203
- }
204
- findClone(options) {
205
- for (let index = 0; index < this.queue.length; index++) {
206
- const el = this.queue[index];
207
- if (el.message === options.message && el.color === options.color) {
208
- return el;
209
- }
210
- }
211
- return undefined;
212
- }
213
- setupContainer() {
214
- if (balBrowser.hasDocument) {
215
- const containerId = `${this.options.tag}-container`;
216
- this.container = document.getElementById(containerId);
217
- if (this.container)
218
- return;
219
- if (!this.container) {
220
- this.container = document.createElement('bal-notices');
221
- this.container.setAttribute('interface', this.options.tag.replace('bal-', ''));
222
- this.container.id = containerId;
223
- }
224
- document.body.appendChild(this.container);
225
- }
226
- }
227
- updateQueue() {
228
- var _a;
229
- if (this.queue.length < this.queueLimit) {
230
- const el = this.preQueue.shift();
231
- if (el && this.container) {
232
- this.queue.push(el);
233
- this.container.insertAdjacentElement('beforeend', el);
234
- }
235
- }
236
- if (this.queue.length === 0) {
237
- (_a = this.container) === null || _a === void 0 ? void 0 : _a.remove();
238
- }
239
- }
240
- removeFromQueue(toastId) {
241
- this.queue = this.queue.filter(el => el.id !== toastId);
242
- setTimeout(() => this.updateQueue(), 0);
243
- }
244
- }
245
-
246
- class BalToastController extends BalNoticeController {
247
- constructor() {
248
- super({
249
- tag: 'bal-toast',
250
- });
251
- }
252
- create(options) {
253
- return super.create(options);
254
- }
255
- }
256
- const balToastController = new BalToastController();
257
-
258
- class BalSnackbarController extends BalNoticeController {
259
- constructor() {
260
- super({
261
- tag: 'bal-snackbar',
262
- });
263
- }
264
- create(options) {
265
- return super.create(options);
266
- }
267
- }
268
- const balSnackbarController = new BalSnackbarController();
269
-
270
- // generated by .build/version.js
271
- const VERSION = '16.6.0-nightly.20241022';
272
-
273
- const initializeBaloiseDesignSystem = (userConfig = {}, platformConfig = undefined, win = {}) => {
274
- if (Object.keys(win).length === 0 && balBrowser.hasWindow) {
275
- win = window;
276
- }
277
- win.BaloiseDesignSystem = win.BaloiseDesignSystem || {};
278
- if (platformConfig) {
279
- setPlatformHelpers(platformConfig);
280
- }
281
- setupConfig(Object.assign(Object.assign({}, userConfig), platformConfig), win);
282
- win.BaloiseDesignSystem.toastController = balToastController;
283
- win.BaloiseDesignSystem.snackbarController = balSnackbarController;
284
- win.BaloiseDesignSystem.initialize = () => setupConfig(win.BaloiseDesignSystem.config, win);
285
- win.BaloiseDesignSystem.version = VERSION;
286
- };
287
-
288
- export { BalToastController as B, BalSnackbarController as a, balToastController as b, balSnackbarController as c, initializeBaloiseDesignSystem as i, setupConfig as s };
@@ -1 +0,0 @@
1
- import{r as e,c as t,w as i,h as a,H as s,g as n}from"./p-d7c752c6.js";import{_ as r,a as o}from"./p-43c9f5e9.js";import{B as l}from"./p-ae86d0a0.js";import{L as m}from"./p-b77e3348.js";import{e as c,s as b,y as d,q as h,z as g,A as p,B as u}from"./p-4ae121b6.js";import{s as v}from"./p-de08fd27.js";import{F as f}from"./p-ca119357.js";import{l as k,j as x,r as _}from"./p-88f18fbc.js";import{d as y}from"./p-f385e205.js";import{L as w}from"./p-49fe011f.js";import{L as j}from"./p-a275c2fa.js";import{L as O}from"./p-69f61736.js";import{i as z}from"./p-dd5e13d1.js";import"./p-a65354df.js";import"./p-9a3d9e17.js";import"./p-4573c419.js";import"./p-2229e98e.js";import"./p-aafb6696.js";import"./p-acf222fd.js";import"./p-37f45077.js";import"./p-96216bd1.js";import"./p-d0a1fbde.js";const L=class{constructor(i){e(this,i),this.balFocus=t(this,"balFocus",7),this.balBlur=t(this,"balBlur",7),this.balChange=t(this,"balChange",7),this.balSelect=t(this,"balSelect",7),this.balVertical=t(this,"balVertical",7),this.hasFocus=!1,this.getSegmentItem=e=>{var t,i;const a=this.allItems.filter((e=>!e.disabled)),s=a.findIndex((e=>e===document.activeElement.closest("bal-segment-item")));switch(e){case"current":return a[s];case"first":return a[0];case"last":return a[a.length-1];case"next":return null!==(t=a[s+1])&&void 0!==t?t:a[0];case"previous":return null!==(i=a[s-1])&&void 0!==i?i:a[a.length-1];default:return null}},this.onPointerDown=()=>{this.keyboardMode=!1},this.onSlottedItemsChange=()=>{this.valueChanged(this.value),this.defineWidth()},this.onClick=e=>{if(this.disabled)return;const t=e.target,i=this.checked;"BAL-SEGMENT"!==t.tagName&&(t&&t.setFocus&&t.setFocus(),i?this.checkButton(i,t):(this.setCheckedClasses(),this.checkButton(t,t)),t!==i&&this.emitValueChange())},this.focusedValue=void 0,this.keyboardMode=!0,this.isVertical=!1,this.isMobile=!1,this.maxWidth=0,this.ariaForm=y,this.invalid=!1,this.disabled=!1,this.vertical=!1,this.scrollable=!1,this.expanded=!1,this.value=void 0}createLogger(e){this.log=e}disabledChanged(){this.allItems.map((e=>e.disabled=this.disabled))}valueChanged(e){this.balSelect.emit(e)}connectedCallback(){this.el.addEventListener("touchstart",this.onPointerDown),this.el.addEventListener("mousedown",this.onPointerDown),this.disabledChanged()}disconnectedCallback(){this.el.removeEventListener("touchstart",this.onPointerDown),this.el.removeEventListener("mousedown",this.onPointerDown)}async componentDidLoad(){this.setCheckedClasses(),this.defineWidth()}focusInListener(e){this.balFocus.emit(e)}focusOutListener(e){this.balBlur.emit(e)}breakpointListener(e){this.isMobile=e.mobile}windowResizeListener(){if(!1===this.vertical&&this.maxWidth>0){const e=this.el.parentElement.getBoundingClientRect();this.emitVerticalChange(e.width<this.maxWidth)}else this.emitVerticalChange(!0)}listenOnKeyDownOutside(){this.keyboardMode=!0}listenOnKeyDown(e){let t;if(this.keyboardMode=f.includes(e.key),c(e)?(v(e),t=this.getSegmentItem("current"),this.value=t.value):b(e)||d(e)?(v(e),t=this.getSegmentItem("previous")):h(e)||g(e)?(v(e),t=this.getSegmentItem("next")):p(e)?(v(e),t=this.getSegmentItem("first")):u(e)&&(v(e),t=this.getSegmentItem("last")),!t)return;const i=this.checked;t!==i&&(this.checkButton(i,t),this.emitValueChange()),t&&t.setFocus()}async setAriaForm(e){this.ariaForm=Object.assign({},e)}get allItems(){return Array.from(this.el.querySelectorAll("bal-segment-item"))}get checked(){return this.allItems.find((e=>e.value===this.value))}emitValueChange(){this.balChange.emit(this.value)}emitVerticalChange(e){this.isVertical!==e&&(this.isVertical=e,this.balVertical.emit(this.isVertical))}defineWidth(){k((()=>{if(!1===this.isVertical){const e=this.el.getBoundingClientRect();this.maxWidth=e.width}this.windowResizeListener()}))}getIndicator(e){return e?(e.shadowRoot||e).querySelector(".bal-segment-item__indicator"):null}checkButton(e,t){const a=this.getIndicator(e),s=this.getIndicator(t);if(null===a||null===s)return;const n=a.getBoundingClientRect(),r=s.getBoundingClientRect();let o=`translate3d(${n.left-r.left}px, 0, 0) scaleX(${n.width/r.width})`;this.isVertical&&(o=`translate3d(0, ${n.top-r.top}px, 0) scaleY(${n.height/r.height})`),i((()=>{s.classList.remove("bal-segment-item__indicator--animated"),s.style.setProperty("transform",o),s.getBoundingClientRect(),s.classList.add("bal-segment-item__indicator--animated"),s.style.setProperty("transform","")})),this.value=t.value,this.setCheckedClasses()}setCheckedClasses(){const e=this.allItems,t=e.findIndex((e=>e.value===this.value)),i=t+1,a=t-1;for(const t of e)t.classList.remove("bal-segment-item--after-checked"),t.classList.remove("bal-segment-item--before-checked");i<e.length&&e[i].classList.add("bal-segment-item--after-checked"),a<e.length&&a>=0&&e[a].classList.add("bal-segment-item--before-checked")}render(){const{invalid:e,isVertical:t,scrollable:i,keyboardMode:n,expanded:r,isMobile:o,disabled:m}=this,c=l.block("segment");return a(s,{role:"radiogroup",id:this.ariaForm.controlId,"aria-labelledby":this.ariaForm.labelId,"aria-describedby":this.ariaForm.messageId,class:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},c.class()),c.modifier("invalid").class(e)),c.modifier("vertical").class(t)),c.modifier("scrollable").class(i)),c.modifier("keyboard").class(n)),c.modifier("disabled").class(m)),c.modifier("expanded").class((r||o)&&!t)),onClick:this.onClick},a("slot",{onSlotchange:this.onSlottedItemsChange}))}get el(){return n(this)}static get watchers(){return{disabled:["disabledChanged"],value:["valueChanged"]}}};r([m("bal-segment"),o("design:type",Function),o("design:paramtypes",[Function]),o("design:returntype",void 0)],L.prototype,"createLogger",null),r([w(),o("design:type",Function),o("design:paramtypes",[FocusEvent]),o("design:returntype",void 0)],L.prototype,"focusInListener",null),r([w(),o("design:type",Function),o("design:paramtypes",[FocusEvent]),o("design:returntype",void 0)],L.prototype,"focusOutListener",null),r([O(),o("design:type",Function),o("design:paramtypes",[Object]),o("design:returntype",void 0)],L.prototype,"breakpointListener",null),r([j(),o("design:type",Function),o("design:paramtypes",[]),o("design:returntype",void 0)],L.prototype,"windowResizeListener",null),L.style=":root{--bal-segment-background:var(--bal-color-grey-2);--bal-segment-background-invalid:var(--bal-color-danger-1);--bal-segment-item-focus-border:var(--bal-color-border-primary);--bal-segment-item-text-color:var(--bal-color-text-primary);--bal-segment-item-text-color-checked:var(--bal-color-text-primary);--bal-segment-item-text-color-checked-hovered:var(--bal-color-text-primary-hovered);--bal-segment-item-text-color-checked-pressed:var(--bal-color-text-primary-pressed);--bal-segment-item-text-color-invalid:var(--bal-color-text-danger);--bal-segment-item-text-color-invalid-hovered:var(--bal-color-text-danger-hovered);--bal-segment-item-text-color-invalid-pressed:var(--bal-color-text-danger-pressed);--bal-segment-item-text-color-disabled:var(--bal-color-text-grey);--bal-segment-item-text-color-disabled-checked:var(--bal-color-text-grey-dark);--bal-segment-item-divider-background:var(--bal-color-grey);--bal-segment-item-divider-background-invalid:var(--bal-color-danger-2);--bal-segment-item-indicator-background:var(--bal-color-purple-2);--bal-segment-item-indicator-background-invalid:var(--bal-color-danger-4);--bal-segment-item-indicator-background-disabled:var(--bal-color-grey-3)}.bal-segment{display:-ms-flexbox;display:flex;background:var(--bal-segment-background);border-radius:var(--bal-radius-normal);gap:.125rem;gap:.125rem;padding:.25rem;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.bal-segment--invalid{background:var(--bal-segment-background-invalid)}.bal-segment--vertical{-ms-flex-direction:column;flex-direction:column;width:100%}.bal-segment--vertical .bal-segment-item__button{width:100%;-ms-flex:1;flex:1}.bal-segment--vertical.bal-segment--scrollable{overflow:auto;max-height:240px}.bal-segment--expanded{width:100%;min-width:100%;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center}.bal-segment--expanded .bal-segment-item,.bal-segment--expanded .bal-segment-item>button{-ms-flex:1;flex:1;width:100%}.bal-segment--expanded .bal-segment-item .bal-content,.bal-segment--expanded .bal-segment-item>button .bal-content{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}";let C=0;const F=class{constructor(t){e(this,t),this.segmentEl=null,this.inheritedAttributes={},this.internalId=C++,this.inputId=`bal-si-${this.internalId}`,this.updateVertical=e=>{this.isVertical=e.detail},this.updateState=()=>{const{segmentEl:e}=this;if(e){if(""===e.value||null==e.value){const e=this.allAvailableOptions;e.length>0&&(this.isFocusable=e[0]===this.el)}else this.checked=e.value===this.value,this.isFocusable=e.value===this.value;e.disabled&&(this.disabled=!0),this.isLast=e.lastElementChild===this.el,this.isFirst=e.firstElementChild===this.el,this.calculateEmptyValue()}},this.onSlottedItemsChange=()=>{this.checkSlotContent()},this.hasSlotContent=!1,this.isFocusable=!1,this.isVertical=!1,this.isLast=!1,this.isFirst=!1,this.hasEmptyValue=!0,this.ariaForm=y,this.disabled=!1,this.invalid=!1,this.focused=!1,this.checked=!1,this.label="",this.value="bal-si-"+this.internalId}valueChanged(e,t){e!==t&&this.updateState()}componentWillLoad(){this.inheritedAttributes=Object.assign({},z(this.el,["aria-label"]))}componentDidLoad(){const e=this.segmentEl=this.el.closest("bal-segment");e&&(x(e,"balSelect",this.updateState),x(e,"balVertical",this.updateVertical)),k((()=>{this.checkSlotContent(),this.updateState()}))}disconnectedCallback(){const e=this.segmentEl;e&&(_(e,"balSelect",this.updateState),_(e,"balVertical",this.updateVertical),this.segmentEl=null)}calculateEmptyValue(){if(this.segmentEl){const e=Array.from(this.segmentEl.querySelectorAll("bal-segment-item"));this.hasEmptyValue=!e.some((e=>e.value===this.segmentEl.value))}else this.hasEmptyValue=!1}async setFocus(){const{nativeEl:e}=this;void 0!==e&&e.focus()}async setAriaForm(e){this.ariaForm=Object.assign({},e)}get allAvailableOptions(){return this.allOptions.filter((e=>!e.disabled))}get allOptions(){const{segmentEl:e}=this;return e?Array.from(e.querySelectorAll("bal-segment-item")):[]}checkSlotContent(){const e=this.el.querySelector('[part="slot"]'),t=e?e.innerHTML.trim():"";this.hasSlotContent=t.length>0}render(){const{checked:e,focused:t,segmentEl:i,label:n,isFocusable:r,isFirst:o,hasEmptyValue:m}=this,c=l.block("segment-item"),b=c.element("button"),d=c.element("indicator"),h=this.invalid||i&&i.invalid,g=this.disabled||i&&i.disabled,p=this.isVertical,u=m&&o||r&&!g,v=u&&this.ariaForm.controlId||this.inputId;let f={};return u&&(f={"aria-labelledby":this.ariaForm.labelId,"aria-describedby":this.ariaForm.messageId}),a(s,{class:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},c.class()),c.modifier("vertical").class(p)),c.modifier("disabled").class(g)),c.modifier("checked").class(e)),c.modifier("invalid").class(h)),c.modifier("last").class(this.isLast&&!e))},a("button",Object.assign({id:v,role:"radio","aria-checked":e?"true":"false"},f,{class:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},b.class()),b.modifier("checked").class(e)),b.modifier("invalid").class(h)),b.modifier("disabled").class(g)),b.modifier("focused").class(t)),b.modifier("vertical").class(p)),type:"button",tabIndex:u?0:-1,part:"native",disabled:g,ref:e=>this.nativeEl=e},this.inheritedAttributes),a("bal-icon",{name:"check",size:"small",class:Object.assign(Object.assign(Object.assign({},b.element("icon").class()),b.element("icon").modifier("animated").class(e)),b.element("icon").modifier("vertical").class(p)),color:g?"grey-dark":h?"white":"primary"}),a("bal-stack",{space:"x-small",layout:"horizontal"},a("bal-content",{space:"none"},a("bal-label",{htmlId:`bal-si-${this.internalId}-label`},n),a("span",{part:"slot",class:Object.assign({},b.element("slot").modifier("hidden").class(!this.hasSlotContent))}," ",a("slot",{onSlotchange:this.onSlottedItemsChange}))))),a("div",{class:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},d.class()),d.modifier("animated").class()),d.modifier("background").class()),d.modifier("disabled").class(g)),d.modifier("invalid").class(h)),d.modifier("checked").class(e)),d.modifier("vertical").class(p))}))}get el(){return n(this)}static get watchers(){return{value:["valueChanged"]}}};F.style=':root{--bal-segment-background:var(--bal-color-grey-2);--bal-segment-background-invalid:var(--bal-color-danger-1);--bal-segment-item-focus-border:var(--bal-color-border-primary);--bal-segment-item-text-color:var(--bal-color-text-primary);--bal-segment-item-text-color-checked:var(--bal-color-text-primary);--bal-segment-item-text-color-checked-hovered:var(--bal-color-text-primary-hovered);--bal-segment-item-text-color-checked-pressed:var(--bal-color-text-primary-pressed);--bal-segment-item-text-color-invalid:var(--bal-color-text-danger);--bal-segment-item-text-color-invalid-hovered:var(--bal-color-text-danger-hovered);--bal-segment-item-text-color-invalid-pressed:var(--bal-color-text-danger-pressed);--bal-segment-item-text-color-disabled:var(--bal-color-text-grey);--bal-segment-item-text-color-disabled-checked:var(--bal-color-text-grey-dark);--bal-segment-item-divider-background:var(--bal-color-grey);--bal-segment-item-divider-background-invalid:var(--bal-color-danger-2);--bal-segment-item-indicator-background:var(--bal-color-purple-2);--bal-segment-item-indicator-background-invalid:var(--bal-color-danger-4);--bal-segment-item-indicator-background-disabled:var(--bal-color-grey-3)}.bal-segment-item{display:block;position:relative;height:auto;text-decoration:none;text-overflow:ellipsis;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;grid-row:1;-webkit-font-kerning:none;font-kerning:none}.bal-segment-item--disabled{cursor:default !important;pointer-events:none !important}.bal-segment-item__button{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;min-height:2.5rem;min-width:3rem;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-positive:1;flex-grow:1;padding-top:.375rem;padding-bottom:.375rem;padding-left:20px;padding-right:20px;outline:none;border-color:rgba(0,0,0,0);border-width:var(--bal-border-width-normal);border-style:solid;border-radius:var(--bal-radius-normal);background:rgba(0,0,0,0);font-size:var(--bal-text-size-normal);font-weight:var(--bal-font-weight-bold);color:var(--bal-segment-item-text-color);overflow:hidden;position:relative;contain:content;pointer-events:none;cursor:pointer;z-index:2}.bal-segment-item__button--vertical{padding-left:.75rem;padding-right:.75rem}.bal-segment-item__button span{font-size:var(--bal-text-size-small);font-weight:var(--bal-font-weight-regular)}.bal-segment-item__button{will-change:color,padding;-webkit-transition:color 160ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 160ms cubic-bezier(0.4, 0, 0.2, 1);-webkit-transition:padding 160ms cubic-bezier(0.4, 0, 0.2, 1);transition:padding 160ms cubic-bezier(0.4, 0, 0.2, 1)}.bal-segment-item:not(.bal-segment-item--checked):not(.bal-segment-item--last):not(.bal-segment-item--before-checked)::after{content:"";position:absolute;background:var(--bal-segment-item-divider-background);border-radius:var(--bal-radius-normal)}.bal-segment-item:not(.bal-segment-item--vertical):not(.bal-segment-item--checked):not(.bal-segment-item--last):not(.bal-segment-item--before-checked)::after{top:2px;bottom:2px;right:-1px;width:2px}.bal-segment-item.bal-segment-item--vertical:not(.bal-segment-item--checked):not(.bal-segment-item--last):not(.bal-segment-item--before-checked)::after{left:2px;right:2px;bottom:-1px;height:2px}.bal-segment-item--invalid:not(.bal-segment-item--checked):not(.bal-segment-item--last):not(.bal-segment-item--before-checked)::after{background:var(--bal-segment-item-divider-background-invalid)}.bal-segment-item__indicator{-webkit-transform-origin:left;transform-origin:left;position:absolute;opacity:0;-webkit-box-sizing:border-box;box-sizing:border-box;pointer-events:none;border-radius:var(--bal-radius-normal);background:var(--bal-segment-item-indicator-background);top:0;left:0}.bal-segment-item__indicator--vertical{-webkit-transform-origin:top;transform-origin:top}.bal-segment-item__indicator--invalid{background:var(--bal-segment-item-indicator-background-invalid)}.bal-segment-item__indicator--background{min-width:100%;min-height:100%;-webkit-transform:none;transform:none;pointer-events:none}.bal-segment-item__indicator--animated{will-change:transform,opacity,top,bottom,left,right,min-width,min-heigth;-webkit-transition:min-width 100ms ease,min-height 100ms ease,top 100ms ease,left 100ms ease,bottom 100ms ease,right 100ms ease,-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transition:min-width 100ms ease,min-height 100ms ease,top 100ms ease,left 100ms ease,bottom 100ms ease,right 100ms ease,-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transition:transform 260ms cubic-bezier(0.4, 0, 0.2, 1),min-width 100ms ease,min-height 100ms ease,top 100ms ease,left 100ms ease,bottom 100ms ease,right 100ms ease;transition:transform 260ms cubic-bezier(0.4, 0, 0.2, 1),min-width 100ms ease,min-height 100ms ease,top 100ms ease,left 100ms ease,bottom 100ms ease,right 100ms ease,-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1)}.bal-segment-item__indicator--checked{opacity:1}.bal-segment-item:active .bal-segment-item__indicator{min-width:calc(100% - 4px);min-height:calc(100% - 4px);top:2px !important;bottom:2px !important;left:2px !important;right:2px !important}.bal-segment-item__button__icon{position:absolute !important;opacity:0;width:0 !important;-webkit-transform:translateX(0.1rem);transform:translateX(0.1rem);pointer-events:none !important;cursor:inherit;will-change:transform,opacity}.bal-segment-item__button__icon:not(.bal-segment-item__button__icon--vertical){left:10px}.bal-segment-item__button__icon--vertical{right:10px}.bal-segment-item__button__icon--animated{opacity:1;width:.875rem !important;-webkit-transform:translateX(-4px);transform:translateX(-4px);-webkit-transition:opacity 260ms cubic-bezier(0.4, 0, 0.2, 1),-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 260ms cubic-bezier(0.4, 0, 0.2, 1),-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 260ms cubic-bezier(0.4, 0, 0.2, 1),transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 260ms cubic-bezier(0.4, 0, 0.2, 1),transform 260ms cubic-bezier(0.4, 0, 0.2, 1),-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1)}.bal-segment-item__button--checked{color:var(--bal-segment-item-text-color-checked);padding-right:40px}.bal-segment-item__button--checked:not(.bal-segment-item__button--vertical){padding-left:26px;padding-right:12px}@media (hover: hover)and (pointer: fine){.bal-segment-item:not(.bal-segment-item--disabled):hover .bal-segment-item__button:not(.bal-segment-item__button--checked){color:var(--bal-segment-item-text-color-checked-hovered)}}.bal-segment-item:not(.bal-segment-item--disabled):active .bal-segment-item__button:not(.bal-segment-item__button--checked){color:var(--bal-segment-item-text-color-checked-pressed)}.bal-segment--keyboard .bal-segment-item__button:not(.bal-segment-item__button--disabled):focus-visible,.bal-segment--keyboard .bal-segment-item__button--focused:not(.bal-segment-item__button--disabled){border-color:var(--bal-segment-item-focus-border);border-width:var(--bal-border-width-normal);border-style:solid;-webkit-transition:border 300ms ease-in-out;transition:border 300ms ease-in-out}.bal-segment-item.bal-segment-item--invalid:not(.bal-segment-item--disabled) .bal-segment-item__button:not(.bal-segment-item__button--checked){color:var(--bal-segment-item-text-color-invalid)}@media (hover: hover)and (pointer: fine){.bal-segment-item.bal-segment-item--invalid:not(.bal-segment-item--disabled):hover .bal-segment-item__button:not(.bal-segment-item__button--checked){color:var(--bal-segment-item-text-color-invalid-hovered)}}.bal-segment-item.bal-segment-item--invalid:not(.bal-segment-item--disabled):active .bal-segment-item__button:not(.bal-segment-item__button--checked){color:var(--bal-segment-item-text-color-invalid-pressed)}.bal-segment-item__button--invalid.bal-segment-item__button--checked{color:var(--bal-color-text-white)}.bal-segment-item__button--disabled{background:rgba(0,0,0,0);color:var(--bal-segment-item-text-color-disabled)}.bal-segment-item__button--disabled.bal-segment-item__button--checked{background:var(--bal-segment-item-indicator-background-disabled);color:var(--bal-segment-item-text-color-disabled-checked)}.bal-segment-item__button__slot--hidden{display:none !important}';export{L as bal_segment,F as bal_segment_item}
@@ -1 +0,0 @@
1
- System.register(["./p-f959646a.system.js"],(function(t){"use strict";var e;return{setters:[function(t){e=t.g}],execute:function(){var s=t("g",e)}}}));