@telia-ace/alliance-ui 1.0.12 → 1.0.13-next.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 (167) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/chunks/check-circle-filled-42095247.js.map +1 -1
  3. package/chunks/chevron-down-50d47dd6.js.map +1 -1
  4. package/chunks/chevron-right-788ce8a9.js.map +1 -1
  5. package/chunks/close-7d423291.js.map +1 -1
  6. package/chunks/close-ac6e4f1c.js.map +1 -1
  7. package/chunks/error-9925a844.js.map +1 -1
  8. package/chunks/error-filled-8de50bdd.js.map +1 -1
  9. package/chunks/getSvgContent-f2389ce0.js.map +1 -1
  10. package/chunks/{index-d925c796.js → index-514c4fef.js} +5 -5
  11. package/chunks/{index-d925c796.js.map → index-514c4fef.js.map} +1 -1
  12. package/chunks/index-eef143db.js.map +1 -1
  13. package/chunks/{query-assigned-elements-024d0918.js → query-assigned-elements-ac91685f.js} +117 -114
  14. package/chunks/query-assigned-elements-ac91685f.js.map +1 -0
  15. package/chunks/{repeat-600d2fb9.js → repeat-34adae9e.js} +2 -2
  16. package/chunks/{repeat-600d2fb9.js.map → repeat-34adae9e.js.map} +1 -1
  17. package/chunks/stringCombiner-10b57054.js.map +1 -1
  18. package/chunks/{telia-button2-7783c019.js → telia-button-c9ba09a9.js} +3 -3
  19. package/chunks/telia-button-c9ba09a9.js.map +1 -0
  20. package/chunks/{telia-card-frame2-340f3315.js → telia-card-frame-340f3315.js} +1 -1
  21. package/chunks/telia-card-frame-340f3315.js.map +1 -0
  22. package/chunks/{telia-field-assistive-text2-173ba2fb.js → telia-field-assistive-text-173ba2fb.js} +1 -1
  23. package/chunks/telia-field-assistive-text-173ba2fb.js.map +1 -0
  24. package/chunks/{telia-field-error2-75dc8ceb.js → telia-field-error-f978aeb3.js} +2 -2
  25. package/chunks/telia-field-error-f978aeb3.js.map +1 -0
  26. package/chunks/{telia-field-valid2-0f6759ac.js → telia-field-valid-5d8f121e.js} +2 -2
  27. package/chunks/telia-field-valid-5d8f121e.js.map +1 -0
  28. package/chunks/{telia-heading2-38ae44ae.js → telia-heading-38ae44ae.js} +1 -1
  29. package/chunks/telia-heading-38ae44ae.js.map +1 -0
  30. package/chunks/{telia-icon2-d0e7c715.js → telia-icon-d0e7c715.js} +1 -1
  31. package/chunks/telia-icon-d0e7c715.js.map +1 -0
  32. package/chunks/{telia-label2-f4c1eb47.js → telia-label-f4c1eb47.js} +1 -1
  33. package/chunks/telia-label-f4c1eb47.js.map +1 -0
  34. package/chunks/{telia-link2-9d6a1240.js → telia-link-42cb2e68.js} +2 -2
  35. package/chunks/telia-link-42cb2e68.js.map +1 -0
  36. package/chunks/{telia-style-link2-bb7bfd94.js → telia-style-link-bb7bfd94.js} +1 -1
  37. package/chunks/telia-style-link-bb7bfd94.js.map +1 -0
  38. package/chunks/{telia-tab-header2-73ec5e07.js → telia-tab-header-890fc7c8.js} +2 -2
  39. package/chunks/telia-tab-header-890fc7c8.js.map +1 -0
  40. package/chunks/{telia-text-input2-db9121d9.js → telia-text-input-289394d8.js} +6 -6
  41. package/chunks/telia-text-input-289394d8.js.map +1 -0
  42. package/chunks/{telia-visually-hidden2-9015e8cd.js → telia-visually-hidden-9015e8cd.js} +1 -1
  43. package/chunks/telia-visually-hidden-9015e8cd.js.map +1 -0
  44. package/chunks/telia-vst2-dfb33a56.js.map +1 -1
  45. package/chunks/uniqueId-0daf01ec.js.map +1 -1
  46. package/components/alliance-link.js +149 -2
  47. package/components/alliance-link.js.map +1 -1
  48. package/components/alliance-modal.js +229 -9
  49. package/components/alliance-modal.js.map +1 -1
  50. package/components/alliance-paginator.js +305 -10
  51. package/components/alliance-paginator.js.map +1 -1
  52. package/components/alliance-table.js +141 -5
  53. package/components/alliance-table.js.map +1 -1
  54. package/components/index.js +12 -12
  55. package/package.json +6 -6
  56. package/voca/components/telia-accordion-item.js +1 -1
  57. package/voca/components/telia-accordion-item.js.map +1 -1
  58. package/voca/components/telia-accordion.js +1 -1
  59. package/voca/components/telia-accordion.js.map +1 -1
  60. package/voca/components/telia-badge.js +1 -1
  61. package/voca/components/telia-badge.js.map +1 -1
  62. package/voca/components/telia-button.js +2 -2
  63. package/voca/components/telia-card-frame-link.js +3 -3
  64. package/voca/components/telia-card-frame-link.js.map +1 -1
  65. package/voca/components/telia-card-frame.js +1 -1
  66. package/voca/components/telia-checkbox.js +3 -3
  67. package/voca/components/telia-checkbox.js.map +1 -1
  68. package/voca/components/telia-chip-choice.js.map +1 -1
  69. package/voca/components/telia-chip-filter.js +1 -1
  70. package/voca/components/telia-chip-filter.js.map +1 -1
  71. package/voca/components/telia-col.js.map +1 -1
  72. package/voca/components/telia-color-dot.js +2 -1
  73. package/voca/components/telia-color-dot.js.map +1 -1
  74. package/voca/components/telia-counter-badge.js +1 -1
  75. package/voca/components/telia-counter-badge.js.map +1 -1
  76. package/voca/components/telia-cta-link.js +3 -3
  77. package/voca/components/telia-cta-link.js.map +1 -1
  78. package/voca/components/telia-date-picker.js +7 -7
  79. package/voca/components/telia-date-picker.js.map +1 -1
  80. package/voca/components/telia-divider.js.map +1 -1
  81. package/voca/components/telia-field-assistive-text.js +1 -1
  82. package/voca/components/telia-field-error.js +2 -2
  83. package/voca/components/telia-field-valid.js +2 -2
  84. package/voca/components/telia-fieldset.js.map +1 -1
  85. package/voca/components/telia-focus-trap.js.map +1 -1
  86. package/voca/components/telia-form.js.map +1 -1
  87. package/voca/components/telia-grid.js.map +1 -1
  88. package/voca/components/telia-heading.js +1 -1
  89. package/voca/components/telia-icon.js +1 -1
  90. package/voca/components/telia-image.js.map +1 -1
  91. package/voca/components/telia-label.js +1 -1
  92. package/voca/components/telia-link-image.js +3 -3
  93. package/voca/components/telia-link-image.js.map +1 -1
  94. package/voca/components/telia-link.js +2 -2
  95. package/voca/components/telia-list.js +1 -1
  96. package/voca/components/telia-list.js.map +1 -1
  97. package/voca/components/telia-logo.js.map +1 -1
  98. package/voca/components/telia-notification.js +4 -4
  99. package/voca/components/telia-notification.js.map +1 -1
  100. package/voca/components/telia-overlay.js.map +1 -1
  101. package/voca/components/telia-p.js.map +1 -1
  102. package/voca/components/telia-pictogram.js.map +1 -1
  103. package/voca/components/telia-radio-button.js +2 -2
  104. package/voca/components/telia-radio-button.js.map +1 -1
  105. package/voca/components/telia-row.js.map +1 -1
  106. package/voca/components/telia-search-input.js +7 -7
  107. package/voca/components/telia-search-input.js.map +1 -1
  108. package/voca/components/telia-select.js +4 -4
  109. package/voca/components/telia-select.js.map +1 -1
  110. package/voca/components/telia-skeleton.js.map +1 -1
  111. package/voca/components/telia-status-badge.js +1 -1
  112. package/voca/components/telia-status-badge.js.map +1 -1
  113. package/voca/components/telia-style-link.js +1 -1
  114. package/voca/components/telia-tab-content.js.map +1 -1
  115. package/voca/components/telia-tab-header.js +2 -2
  116. package/voca/components/telia-tab.js +3 -3
  117. package/voca/components/telia-tab.js.map +1 -1
  118. package/voca/components/telia-text-input.js +6 -6
  119. package/voca/components/telia-text-spacing.js.map +1 -1
  120. package/voca/components/telia-textarea.js +4 -4
  121. package/voca/components/telia-textarea.js.map +1 -1
  122. package/voca/components/telia-toggle.js +1 -1
  123. package/voca/components/telia-toggle.js.map +1 -1
  124. package/voca/components/telia-visually-hidden.js +1 -1
  125. package/voca/components/telia-voca-stats.js.map +1 -1
  126. package/voca/foundations/index.js +1 -1
  127. package/voca/foundations/index.js.map +1 -1
  128. package/voca/icons/index.js +1 -1
  129. package/voca/icons/index.js.map +1 -1
  130. package/chunks/alliance-link-8cb7d7d9.js +0 -259
  131. package/chunks/alliance-link-8cb7d7d9.js.map +0 -1
  132. package/chunks/alliance-modal-1126a4c4.js +0 -229
  133. package/chunks/alliance-modal-1126a4c4.js.map +0 -1
  134. package/chunks/alliance-paginator-button-0a0a4fd7.js +0 -305
  135. package/chunks/alliance-paginator-button-0a0a4fd7.js.map +0 -1
  136. package/chunks/alliance-table-row-ec104b1e.js +0 -142
  137. package/chunks/alliance-table-row-ec104b1e.js.map +0 -1
  138. package/chunks/query-assigned-elements-024d0918.js.map +0 -1
  139. package/chunks/telia-button2-7783c019.js.map +0 -1
  140. package/chunks/telia-card-frame2-340f3315.js.map +0 -1
  141. package/chunks/telia-field-assistive-text2-173ba2fb.js.map +0 -1
  142. package/chunks/telia-field-error2-75dc8ceb.js.map +0 -1
  143. package/chunks/telia-field-valid2-0f6759ac.js.map +0 -1
  144. package/chunks/telia-heading2-38ae44ae.js.map +0 -1
  145. package/chunks/telia-icon2-d0e7c715.js.map +0 -1
  146. package/chunks/telia-label2-f4c1eb47.js.map +0 -1
  147. package/chunks/telia-link2-9d6a1240.js.map +0 -1
  148. package/chunks/telia-navigation-button2-b6b0d39c.js +0 -44
  149. package/chunks/telia-navigation-button2-b6b0d39c.js.map +0 -1
  150. package/chunks/telia-style-link2-bb7bfd94.js.map +0 -1
  151. package/chunks/telia-style-navigation-item2-b2eaedc2.js +0 -44
  152. package/chunks/telia-style-navigation-item2-b2eaedc2.js.map +0 -1
  153. package/chunks/telia-tab-header2-73ec5e07.js.map +0 -1
  154. package/chunks/telia-text-input2-db9121d9.js.map +0 -1
  155. package/chunks/telia-visually-hidden2-9015e8cd.js.map +0 -1
  156. package/voca/components/telia-navigation-button.d.ts +0 -1
  157. package/voca/components/telia-navigation-button.js +0 -5
  158. package/voca/components/telia-navigation-button.js.map +0 -1
  159. package/voca/components/telia-navigation-dropdown.d.ts +0 -1
  160. package/voca/components/telia-navigation-dropdown.js +0 -85
  161. package/voca/components/telia-navigation-dropdown.js.map +0 -1
  162. package/voca/components/telia-navigation-link.d.ts +0 -1
  163. package/voca/components/telia-navigation-link.js +0 -40
  164. package/voca/components/telia-navigation-link.js.map +0 -1
  165. package/voca/components/telia-style-navigation-item.d.ts +0 -1
  166. package/voca/components/telia-style-navigation-item.js +0 -4
  167. package/voca/components/telia-style-navigation-item.js.map +0 -1
@@ -1,13 +1,308 @@
1
- import "../chunks/alliance-paginator-button-0a0a4fd7.js";
2
- import "../chunks/telia-button2-7783c019.js";
1
+ import "../chunks/telia-button-c9ba09a9.js";
2
+ import { s as b, b as D, d as g, m as j, c as A } from "../chunks/index-514c4fef.js";
3
+ import { f as N } from "../chunks/variables-ecb680f0.js";
4
+ import { i as I, r, n as l, s as _, x as c, e as S } from "../chunks/query-assigned-elements-ac91685f.js";
5
+ import { c as L, t as k } from "../chunks/repeat-34adae9e.js";
6
+ import "../chunks/telia-label-f4c1eb47.js";
7
+ import "../chunks/telia-icon-d0e7c715.js";
8
+ import { c as M, a as V } from "../chunks/chevron-right-788ce8a9.js";
3
9
  import "../chunks/index-eef143db.js";
4
- import "../chunks/telia-icon2-d0e7c715.js";
5
- import "../chunks/getSvgContent-f2389ce0.js";
6
10
  import "../chunks/telia-vst2-dfb33a56.js";
7
- import "../chunks/index-d925c796.js";
8
- import "../chunks/variables-ecb680f0.js";
9
- import "../chunks/query-assigned-elements-024d0918.js";
10
- import "../chunks/repeat-600d2fb9.js";
11
- import "../chunks/telia-label2-f4c1eb47.js";
12
- import "../chunks/chevron-right-788ce8a9.js";
11
+ import "../chunks/getSvgContent-f2389ce0.js";
12
+ const m = "...", $ = (e, a) => {
13
+ let i = a - e + 1;
14
+ return Array.from({ length: i }, (n, t) => t + e);
15
+ };
16
+ function R(e) {
17
+ return e[e.length - 1];
18
+ }
19
+ function F(e) {
20
+ return Array.from({ length: e }, (a, i) => B(i + 1, e));
21
+ }
22
+ function B(e, a) {
23
+ return `${e} / ${a}`;
24
+ }
25
+ function G(e) {
26
+ const a = e.split("/")[0];
27
+ if (typeof a != "string")
28
+ throw new Error("Could not parse page value from select.");
29
+ return parseInt(a);
30
+ }
31
+ function C({ itemCount: e, pageSize: a, siblingCount: i, currentPage: n }) {
32
+ const t = Math.ceil(e / a);
33
+ if (i + 5 >= t)
34
+ return $(1, t);
35
+ const s = Math.max(n - i, 1), x = Math.min(n + i, t), v = s > 2, y = x < t - 2, z = 1, T = t;
36
+ if (!v && y) {
37
+ let f = 3 + 2 * i;
38
+ return [...$(1, f), m, t];
39
+ }
40
+ if (v && !y) {
41
+ let f = 3 + 2 * i, O = $(t - f + 1, t);
42
+ return [z, m, ...O];
43
+ }
44
+ if (v && y) {
45
+ let f = $(s, x);
46
+ return [z, m, ...f, m, T];
47
+ }
48
+ return [];
49
+ }
50
+ var H = Object.defineProperty, W = Object.getOwnPropertyDescriptor, w = (e, a, i, n) => {
51
+ for (var t = n > 1 ? void 0 : n ? W(a, i) : a, o = e.length - 1, s; o >= 0; o--)
52
+ (s = e[o]) && (t = (n ? s(a, i, t) : s(t)) || t);
53
+ return n && t && H(a, i, t), t;
54
+ };
55
+ let P = class extends _ {
56
+ constructor() {
57
+ super(...arguments), this.currentPage = 0, this.lastPage = 0, this.onChange = (e) => {
58
+ const a = G(e.currentTarget.value), i = new CustomEvent("select-page", {
59
+ bubbles: !0,
60
+ composed: !0,
61
+ detail: { nextPage: a, previousPage: this.currentPage },
62
+ cancelable: !0
63
+ });
64
+ this.dispatchEvent(i);
65
+ };
66
+ }
67
+ render() {
68
+ return c`
69
+ <select
70
+ id="select"
71
+ @change=${this.onChange}
72
+ .value=${B(this.currentPage, this.lastPage)}
73
+ >
74
+ ${L(
75
+ F(this.lastPage),
76
+ (e) => c`<option value="${e}">${e}</option>`
77
+ )}
78
+ </select>
79
+ `;
80
+ }
81
+ };
82
+ P.styles = I`
83
+ :host select {
84
+ padding: ${r(b.spacing16)} ${r(b.spacing24)};
85
+ border-radius: ${r(D.radiusFull)};
86
+ border: ${r(D.widthXs)} solid ${r(g.purple850)};
87
+ background-color: transparent;
88
+ color: ${r(g.purple850)};
89
+ text-align: center;
90
+ align-items: center;
91
+ justify-content: center;
92
+ cursor: pointer;
93
+ display: inline-flex;
94
+ font-family: 'TeliaSans', Helvetica, Arial, 'Lucida Grande', sans-serif;
95
+ font-size: ${r(b.spacing16)};
96
+ line-height: ${r(b.spacing16)};
97
+ transition: color ${r(j.duration150)} ease,
98
+ background-color ${r(j.duration150)} ease;
99
+
100
+ -webkit-appearance: none;
101
+ -moz-appearance: none;
102
+ appearance: none;
103
+ outline: none;
104
+ }
105
+
106
+ :host select:hover {
107
+ background-color: ${r(g.purple850)};
108
+ color: ${r(g.white)};
109
+ }
110
+
111
+ :host select:active {
112
+ background-color: ${r(g.purple700)};
113
+ }
114
+
115
+ :host select option {
116
+ background-color: ${r(g.white)};
117
+ color: ${r(g.black)};
118
+ text-align: center;
119
+ }
120
+
121
+ :host select::-ms-expand {
122
+ display: none;
123
+ }
124
+
125
+ :host select:focus-visible {
126
+ outline: solid ${r(N.focusBorderWidth)} ${r(N.focusColor)};
127
+ outline-offset: ${r(b.spacing4)};
128
+ }
129
+ `;
130
+ w([
131
+ l({ type: Number, attribute: "current-page" })
132
+ ], P.prototype, "currentPage", 2);
133
+ w([
134
+ l({ type: Number, attribute: "last-page" })
135
+ ], P.prototype, "lastPage", 2);
136
+ P = w([
137
+ S("alliance-page-selector")
138
+ ], P);
139
+ var X = Object.defineProperty, q = Object.getOwnPropertyDescriptor, h = (e, a, i, n) => {
140
+ for (var t = n > 1 ? void 0 : n ? q(a, i) : a, o = e.length - 1, s; o >= 0; o--)
141
+ (s = e[o]) && (t = (n ? s(a, i, t) : s(t)) || t);
142
+ return n && t && X(a, i, t), t;
143
+ };
144
+ let p = class extends _ {
145
+ constructor() {
146
+ super(...arguments), this.itemCount = 0, this.pageSize = 50, this.initialPage = 1, this.siblingCount = 2, this.currentPage = this.initialPage, this.pages = [], this.changePage = (e) => {
147
+ if (e === this.currentPage || // Next page is the same
148
+ e < 1 || // Next page is 0
149
+ e > this.pages[this.pages.length - 1])
150
+ return;
151
+ const a = new CustomEvent("change-page", {
152
+ bubbles: !0,
153
+ composed: !0,
154
+ detail: { nextPage: e, previousPage: this.currentPage },
155
+ cancelable: !0
156
+ });
157
+ this.dispatchEvent(a) && (this.currentPage = e, this.pages = C({
158
+ itemCount: this.itemCount,
159
+ pageSize: this.pageSize,
160
+ siblingCount: this.siblingCount,
161
+ currentPage: this.currentPage
162
+ }));
163
+ }, this.next = () => {
164
+ this.changePage(this.currentPage + 1);
165
+ }, this.previous = () => {
166
+ this.changePage(this.currentPage - 1);
167
+ }, this.onPageSelect = (e) => this.changePage(e.detail.nextPage);
168
+ }
169
+ connectedCallback() {
170
+ super.connectedCallback(), this.currentPage = this.initialPage, this.pages = C({
171
+ itemCount: this.itemCount,
172
+ pageSize: this.pageSize,
173
+ siblingCount: this.siblingCount,
174
+ currentPage: this.currentPage
175
+ });
176
+ }
177
+ attributeChangedCallback(e, a, i) {
178
+ super.attributeChangedCallback(e, a, i), e === "initial-page" && (this.currentPage = this.initialPage), this.pages = C({
179
+ itemCount: this.itemCount,
180
+ pageSize: this.pageSize,
181
+ siblingCount: this.siblingCount,
182
+ currentPage: this.currentPage,
183
+ [e]: i
184
+ });
185
+ }
186
+ render() {
187
+ return c`
188
+ <alliance-paginator-button
189
+ @click=${this.previous}
190
+ ?disabled=${this.currentPage === 1}
191
+ icon="left"
192
+ ></alliance-paginator-button>
193
+
194
+ ${L(
195
+ this.pages,
196
+ (e) => e === "..." ? c`<telia-label>...</telia-label>` : c`<alliance-paginator-button
197
+ page=${e}
198
+ @click=${() => this.changePage(e)}
199
+ ?selected=${this.currentPage === e}
200
+ ></alliance-paginator-button>`
201
+ )}
202
+
203
+ <alliance-page-selector
204
+ current-page=${this.currentPage}
205
+ last-page=${R(this.pages)}
206
+ @select-page=${this.onPageSelect}
207
+ >
208
+ </alliance-page-selector>
209
+
210
+ <alliance-paginator-button
211
+ @click=${this.next}
212
+ ?disabled=${this.currentPage === R(this.pages)}
213
+ icon="right"
214
+ ></alliance-paginator-button>
215
+ `;
216
+ }
217
+ };
218
+ p.styles = I`
219
+ :host {
220
+ display: flex;
221
+ flex-direction: row;
222
+ place-items: center;
223
+ gap: ${r(b.spacing8)};
224
+ }
225
+
226
+ :host telia-label {
227
+ display: none;
228
+ }
229
+
230
+ :host .telia-label {
231
+ color: ${r(g.purple700)};
232
+ }
233
+
234
+ :host alliance-paginator-button[page] {
235
+ display: none;
236
+ }
237
+
238
+ span {
239
+ display: block;
240
+ }
241
+
242
+ @container (min-width: ${r(A.breakpointLg)}) {
243
+ :host telia-label,
244
+ :host alliance-paginator-button[page] {
245
+ display: block;
246
+ }
247
+
248
+ :host alliance-page-selector {
249
+ display: none;
250
+ }
251
+ }
252
+ `;
253
+ h([
254
+ l({ type: Number, attribute: "item-count" })
255
+ ], p.prototype, "itemCount", 2);
256
+ h([
257
+ l({ type: Number, attribute: "page-size" })
258
+ ], p.prototype, "pageSize", 2);
259
+ h([
260
+ l({ type: Number, attribute: "initial-page" })
261
+ ], p.prototype, "initialPage", 2);
262
+ h([
263
+ l({ type: Number, attribute: "sibling-count" })
264
+ ], p.prototype, "siblingCount", 2);
265
+ h([
266
+ k()
267
+ ], p.prototype, "currentPage", 2);
268
+ h([
269
+ k()
270
+ ], p.prototype, "pages", 2);
271
+ p = h([
272
+ S("alliance-paginator")
273
+ ], p);
274
+ var J = Object.defineProperty, K = Object.getOwnPropertyDescriptor, d = (e, a, i, n) => {
275
+ for (var t = n > 1 ? void 0 : n ? K(a, i) : a, o = e.length - 1, s; o >= 0; o--)
276
+ (s = e[o]) && (t = (n ? s(a, i, t) : s(t)) || t);
277
+ return n && t && J(a, i, t), t;
278
+ }, E = /* @__PURE__ */ ((e) => (e.Left = "left", e.Right = "right", e))(E || {});
279
+ let u = class extends _ {
280
+ constructor() {
281
+ super(...arguments), this.selected = !1, this.disabled = !1, this.clickable = !0;
282
+ }
283
+ renderContent() {
284
+ return this.icon === "left" ? c`<telia-icon size="sm" svg="${M.svg}" />` : this.icon === "right" ? c`<telia-icon size="sm" svg="${V.svg}" />` : c`<span>${this.page}</span>`;
285
+ }
286
+ render() {
287
+ return c`<telia-button ?disabled=${this.disabled} variant=${this.selected ? "primary" : "tertiary-purple"}>${this.renderContent()}</telia-button> `;
288
+ }
289
+ };
290
+ d([
291
+ l({ type: E })
292
+ ], u.prototype, "icon", 2);
293
+ d([
294
+ l({ type: String })
295
+ ], u.prototype, "page", 2);
296
+ d([
297
+ l({ type: Boolean })
298
+ ], u.prototype, "selected", 2);
299
+ d([
300
+ l({ type: Boolean })
301
+ ], u.prototype, "disabled", 2);
302
+ d([
303
+ l({ type: Boolean })
304
+ ], u.prototype, "clickable", 2);
305
+ u = d([
306
+ S("alliance-paginator-button")
307
+ ], u);
13
308
  //# sourceMappingURL=alliance-paginator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"alliance-paginator.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
1
+ {"version":3,"file":"alliance-paginator.js","sources":["../src/components/alliance-paginator/utils.ts","../src/components/alliance-paginator/alliance-page-selector.ts","../src/components/alliance-paginator/alliance-paginator.ts","../src/components/alliance-paginator/alliance-paginator-button.ts"],"sourcesContent":["/* \n Pagination logic taken from https://www.freecodecamp.org/news/build-a-custom-pagination-component-in-react/\n*/\nconst DOTS = '...';\n\nconst range = (start: number, end: number) => {\n let length = end - start + 1;\n /*\n Create an array of certain length and set the elements within it from\n start value to end value.\n */\n return Array.from({ length }, (_, idx) => idx + start);\n};\n\ntype Args = {\n itemCount: number;\n pageSize: number;\n siblingCount: number;\n currentPage: number;\n};\n\nexport type Pages = (number | '...')[];\n\nexport function getLastPage(pages: Pages): number {\n return pages[pages.length - 1] as number;\n}\n\nexport function listPages(lastPage: number): string[] {\n return Array.from({ length: lastPage }, (_, i) => {\n return pageToSelectValue(i + 1, lastPage);\n });\n}\n\nexport function pageToSelectValue(page: number, lastPage: number): string {\n return `${page} / ${lastPage}`;\n}\n\nexport function selectValueToPage(selectValue: string): number {\n const value = selectValue.split('/')[0];\n\n if (typeof value !== 'string') {\n throw new Error('Could not parse page value from select.');\n }\n\n return parseInt(value);\n}\n\nexport function getPagination({ itemCount, pageSize, siblingCount, currentPage }: Args): Pages {\n const totalPageCount = Math.ceil(itemCount / pageSize);\n\n // Pages count is determined as siblingCount + firstPage + lastPage + currentPage + 2*DOTS\n const totalPageNumbers = siblingCount + 5;\n\n /*\n Case 1:\n If the number of pages is less than the page numbers we want to show in our\n paginationComponent, we return the range [1..totalPageCount]\n */\n if (totalPageNumbers >= totalPageCount) {\n return range(1, totalPageCount);\n }\n\n /*\n Calculate left and right sibling index and make sure they are within range 1 and totalPageCount\n */\n const leftSiblingIndex = Math.max(currentPage - siblingCount, 1);\n const rightSiblingIndex = Math.min(currentPage + siblingCount, totalPageCount);\n\n /*\n We do not show dots just when there is just one page number to be inserted between the extremes of sibling and the page limits i.e 1 and totalPageCount. Hence we are using leftSiblingIndex > 2 and rightSiblingIndex < totalPageCount - 2\n */\n const shouldShowLeftDots = leftSiblingIndex > 2;\n const shouldShowRightDots = rightSiblingIndex < totalPageCount - 2;\n\n const firstPageIndex = 1;\n const lastPageIndex = totalPageCount;\n\n /*\n Case 2: No left dots to show, but rights dots to be shown\n */\n if (!shouldShowLeftDots && shouldShowRightDots) {\n let leftItemCount = 3 + 2 * siblingCount;\n let leftRange = range(1, leftItemCount);\n\n return [...leftRange, DOTS, totalPageCount];\n }\n\n /*\n Case 3: No right dots to show, but left dots to be shown\n */\n if (shouldShowLeftDots && !shouldShowRightDots) {\n let rightItemCount = 3 + 2 * siblingCount;\n let rightRange = range(totalPageCount - rightItemCount + 1, totalPageCount);\n return [firstPageIndex, DOTS, ...rightRange];\n }\n\n /*\n Case 4: Both left and right dots to be shown\n */\n if (shouldShowLeftDots && shouldShowRightDots) {\n let middleRange = range(leftSiblingIndex, rightSiblingIndex);\n return [firstPageIndex, DOTS, ...middleRange, DOTS, lastPageIndex];\n }\n\n return [];\n}\n","import '@/voca/components/telia-button';\nimport { borders, colors, focus, motion, spacing } from '@/voca/foundations';\nimport { css, html, LitElement, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { repeat } from 'lit/directives/repeat.js';\n\nimport { listPages, pageToSelectValue, selectValueToPage } from './utils';\n\n/**\n * Event dispatched when selecting a page.\n *\n * Event: `change-page`\n *\n * Detail: Object containing the properties `nextPage` and `previousPage`.\n */\nexport type SelectPageEvent = CustomEvent<{ nextPage: number; previousPage: number }>;\n\n@customElement('alliance-page-selector')\nexport class PageSelect extends LitElement {\n static styles = css`\n :host select {\n padding: ${unsafeCSS(spacing.spacing16)} ${unsafeCSS(spacing.spacing24)};\n border-radius: ${unsafeCSS(borders.radiusFull)};\n border: ${unsafeCSS(borders.widthXs)} solid ${unsafeCSS(colors.purple850)};\n background-color: transparent;\n color: ${unsafeCSS(colors.purple850)};\n text-align: center;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n display: inline-flex;\n font-family: 'TeliaSans', Helvetica, Arial, 'Lucida Grande', sans-serif;\n font-size: ${unsafeCSS(spacing.spacing16)};\n line-height: ${unsafeCSS(spacing.spacing16)};\n transition: color ${unsafeCSS(motion.duration150)} ease,\n background-color ${unsafeCSS(motion.duration150)} ease;\n\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n outline: none;\n }\n\n :host select:hover {\n background-color: ${unsafeCSS(colors.purple850)};\n color: ${unsafeCSS(colors.white)};\n }\n\n :host select:active {\n background-color: ${unsafeCSS(colors.purple700)};\n }\n\n :host select option {\n background-color: ${unsafeCSS(colors.white)};\n color: ${unsafeCSS(colors.black)};\n text-align: center;\n }\n\n :host select::-ms-expand {\n display: none;\n }\n\n :host select:focus-visible {\n outline: solid ${unsafeCSS(focus.focusBorderWidth)} ${unsafeCSS(focus.focusColor)};\n outline-offset: ${unsafeCSS(spacing.spacing4)};\n }\n `;\n\n @property({ type: Number, attribute: 'current-page' })\n currentPage: number = 0;\n\n @property({ type: Number, attribute: 'last-page' })\n lastPage: number = 0;\n\n onChange = (\n e: Event & {\n currentTarget: HTMLSelectElement;\n }\n ) => {\n const nextPage = selectValueToPage(e.currentTarget.value);\n\n const event: SelectPageEvent = new CustomEvent('select-page', {\n bubbles: true,\n composed: true,\n detail: { nextPage, previousPage: this.currentPage },\n cancelable: true,\n });\n this.dispatchEvent(event);\n };\n\n render() {\n return html`\n <select\n id=\"select\"\n @change=${this.onChange}\n .value=${pageToSelectValue(this.currentPage, this.lastPage)}\n >\n ${repeat(\n listPages(this.lastPage),\n (page) => html`<option value=\"${page}\">${page}</option>`\n )}\n </select>\n `;\n }\n}\n","import '@/voca/components/telia-button';\nimport '@/voca/components/telia-label';\nimport { breakpoints, colors, spacing } from '@/voca/foundations';\nimport { css, html, LitElement, unsafeCSS } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { repeat } from 'lit/directives/repeat.js';\nimport type { SelectPageEvent } from './alliance-page-selector';\n\nimport { getLastPage, getPagination, type Pages } from './utils';\n\n/**\n * Event dispatched when pressing a page button.\n *\n * Event: `change-page`\n *\n * Detail: Object containing the properties `nextPage` and `previousPage`.\n */\nexport type ChangePageEvent = CustomEvent<{ nextPage: number; previousPage: number }>;\n\n@customElement('alliance-paginator')\nexport class Paginator extends LitElement {\n static styles = css`\n :host {\n display: flex;\n flex-direction: row;\n place-items: center;\n gap: ${unsafeCSS(spacing.spacing8)};\n }\n\n :host telia-label {\n display: none;\n }\n\n :host .telia-label {\n color: ${unsafeCSS(colors.purple700)};\n }\n\n :host alliance-paginator-button[page] {\n display: none;\n }\n\n span {\n display: block;\n }\n\n @container (min-width: ${unsafeCSS(breakpoints.breakpointLg)}) {\n :host telia-label,\n :host alliance-paginator-button[page] {\n display: block;\n }\n\n :host alliance-page-selector {\n display: none;\n }\n }\n `;\n\n connectedCallback() {\n super.connectedCallback();\n\n this.currentPage = this.initialPage;\n this.pages = getPagination({\n itemCount: this.itemCount,\n pageSize: this.pageSize,\n siblingCount: this.siblingCount,\n currentPage: this.currentPage,\n });\n }\n\n attributeChangedCallback(name: string, _: string | null, value: string | null) {\n super.attributeChangedCallback(name, _, value);\n\n if (name === 'initial-page') {\n this.currentPage = this.initialPage;\n }\n\n this.pages = getPagination({\n itemCount: this.itemCount,\n pageSize: this.pageSize,\n siblingCount: this.siblingCount,\n currentPage: this.currentPage,\n [name]: value,\n });\n }\n\n @property({ type: Number, attribute: 'item-count' })\n itemCount: number = 0;\n\n @property({ type: Number, attribute: 'page-size' })\n pageSize: number = 50;\n\n @property({ type: Number, attribute: 'initial-page' })\n initialPage: number = 1;\n\n @property({ type: Number, attribute: 'sibling-count' })\n siblingCount: number = 2;\n\n @state()\n currentPage: number = this.initialPage;\n\n @state()\n pages: Pages = [];\n\n changePage = (nextPage: number) => {\n if (\n nextPage === this.currentPage || // Next page is the same\n nextPage < 1 || // Next page is 0\n nextPage > (this.pages[this.pages.length - 1] as number) // Next page is outside of available pages\n ) {\n return;\n }\n\n const event: ChangePageEvent = new CustomEvent('change-page', {\n bubbles: true,\n composed: true,\n detail: { nextPage, previousPage: this.currentPage },\n cancelable: true,\n });\n const defaultNotPrevented = this.dispatchEvent(event);\n\n if (defaultNotPrevented) {\n this.currentPage = nextPage;\n\n this.pages = getPagination({\n itemCount: this.itemCount,\n pageSize: this.pageSize,\n siblingCount: this.siblingCount,\n currentPage: this.currentPage,\n });\n }\n };\n\n next = () => {\n this.changePage(this.currentPage + 1);\n };\n\n previous = () => {\n this.changePage(this.currentPage - 1);\n };\n\n onPageSelect = (event: SelectPageEvent) => this.changePage(event.detail.nextPage);\n\n render() {\n return html`\n <alliance-paginator-button\n @click=${this.previous}\n ?disabled=${this.currentPage === 1}\n icon=\"left\"\n ></alliance-paginator-button>\n\n ${repeat(this.pages, (pageNumber) =>\n pageNumber === '...'\n ? html`<telia-label>...</telia-label>`\n : html`<alliance-paginator-button\n page=${pageNumber}\n @click=${() => this.changePage(pageNumber)}\n ?selected=${this.currentPage === pageNumber}\n ></alliance-paginator-button>`\n )}\n\n <alliance-page-selector\n current-page=${this.currentPage}\n last-page=${getLastPage(this.pages)}\n @select-page=${this.onPageSelect}\n >\n </alliance-page-selector>\n\n <alliance-paginator-button\n @click=${this.next}\n ?disabled=${this.currentPage === getLastPage(this.pages)}\n icon=\"right\"\n ></alliance-paginator-button>\n `;\n }\n}\n","import '@/voca/components/telia-button';\nimport '@/voca/components/telia-icon';\nimport { chevronLeft, chevronRight } from '@/voca/icons';\nimport { html, LitElement } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\nenum Icon {\n Left = 'left',\n Right = 'right',\n}\n\n@customElement('alliance-paginator-button')\nexport class PaginatorButton extends LitElement {\n @property({ type: Icon })\n icon?: Icon;\n\n @property({ type: String })\n page?: string;\n\n @property({ type: Boolean })\n selected: boolean = false;\n\n @property({ type: Boolean })\n disabled: boolean = false;\n\n @property({ type: Boolean })\n clickable: boolean = true;\n\n private renderContent() {\n if (this.icon === Icon.Left) {\n return html`<telia-icon size=\"sm\" svg=\"${chevronLeft.svg}\" />`;\n }\n\n if (this.icon === Icon.Right) {\n return html`<telia-icon size=\"sm\" svg=\"${chevronRight.svg}\" />`;\n }\n\n return html`<span>${this.page}</span>`;\n }\n\n render() {\n /*\n Ignore prettier on next line because Voca \n uses textContent on the telia-button element\n to detect whether or not it only contains an\n icon - which does not take account for white space...\n https://github.com/telia-company/design-system/issues/813\n */\n // prettier-ignore\n return html`<telia-button ?disabled=${this.disabled} variant=${this.selected ? 'primary' : 'tertiary-purple'}>${this.renderContent()}</telia-button> `;\n }\n}\n"],"names":["DOTS","range","start","end","length","_","idx","getLastPage","pages","listPages","lastPage","pageToSelectValue","page","selectValueToPage","selectValue","value","getPagination","itemCount","pageSize","siblingCount","currentPage","totalPageCount","leftSiblingIndex","rightSiblingIndex","shouldShowLeftDots","shouldShowRightDots","firstPageIndex","lastPageIndex","leftItemCount","rightItemCount","rightRange","middleRange","PageSelect","LitElement","nextPage","event","html","repeat","css","unsafeCSS","spacing","borders","colors","motion","focus","__decorateClass","property","customElement","Paginator","name","pageNumber","breakpoints","state","Icon","PaginatorButton","chevronLeft","chevronRight"],"mappings":"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"}
@@ -1,8 +1,144 @@
1
- import "../chunks/alliance-table-row-ec104b1e.js";
2
- import "../chunks/query-assigned-elements-024d0918.js";
3
- import "../chunks/index-d925c796.js";
4
- import "../chunks/telia-heading2-38ae44ae.js";
1
+ import { i as c, s as p, x as i, e as b, r as n, n as O } from "../chunks/query-assigned-elements-ac91685f.js";
2
+ import { s as $, b as w, d as u, m as g } from "../chunks/index-514c4fef.js";
3
+ import "../chunks/telia-heading-38ae44ae.js";
4
+ import { f as y } from "../chunks/variables-ecb680f0.js";
5
5
  import "../chunks/index-eef143db.js";
6
6
  import "../chunks/telia-vst2-dfb33a56.js";
7
- import "../chunks/variables-ecb680f0.js";
7
+ var D = Object.defineProperty, j = Object.getOwnPropertyDescriptor, x = (a, r, t, l) => {
8
+ for (var e = l > 1 ? void 0 : l ? j(r, t) : r, s = a.length - 1, o; s >= 0; s--)
9
+ (o = a[s]) && (e = (l ? o(r, t, e) : o(e)) || e);
10
+ return l && e && D(r, t, e), e;
11
+ };
12
+ let d = class extends p {
13
+ render() {
14
+ return i` <alliance-tb>
15
+ <slot></slot>
16
+ </alliance-tb>`;
17
+ }
18
+ };
19
+ d.styles = c`
20
+ :host {
21
+ display: table;
22
+ border-collapse: collapse;
23
+ width: 100%;
24
+ }
25
+ `;
26
+ d = x([
27
+ b("alliance-table")
28
+ ], d);
29
+ var C = Object.defineProperty, T = Object.getOwnPropertyDescriptor, B = (a, r, t, l) => {
30
+ for (var e = l > 1 ? void 0 : l ? T(r, t) : r, s = a.length - 1, o; s >= 0; s--)
31
+ (o = a[s]) && (e = (l ? o(r, t, e) : o(e)) || e);
32
+ return l && e && C(r, t, e), e;
33
+ };
34
+ let h = class extends p {
35
+ render() {
36
+ return i`<slot></slot>`;
37
+ }
38
+ };
39
+ h.styles = c`
40
+ :host {
41
+ display: table-row-group;
42
+ vertical-align: middle;
43
+ border-color: inherit;
44
+ }
45
+ `;
46
+ h = B([
47
+ b("alliance-tb")
48
+ ], h);
49
+ var S = Object.defineProperty, H = Object.getOwnPropertyDescriptor, I = (a, r, t, l) => {
50
+ for (var e = l > 1 ? void 0 : l ? H(r, t) : r, s = a.length - 1, o; s >= 0; s--)
51
+ (o = a[s]) && (e = (l ? o(r, t, e) : o(e)) || e);
52
+ return l && e && S(r, t, e), e;
53
+ };
54
+ let _ = class extends p {
55
+ render() {
56
+ return i` <slot></slot> `;
57
+ }
58
+ };
59
+ _.styles = c`
60
+ :host {
61
+ display: table-cell;
62
+ vertical-align: inherit;
63
+ padding: ${n($.spacing24)};
64
+ }
65
+ `;
66
+ _ = I([
67
+ b("alliance-td")
68
+ ], _);
69
+ var R = Object.defineProperty, W = Object.getOwnPropertyDescriptor, P = (a, r, t, l) => {
70
+ for (var e = l > 1 ? void 0 : l ? W(r, t) : r, s = a.length - 1, o; s >= 0; s--)
71
+ (o = a[s]) && (e = (l ? o(r, t, e) : o(e)) || e);
72
+ return l && e && R(r, t, e), e;
73
+ };
74
+ let f = class extends p {
75
+ constructor() {
76
+ super(...arguments), this.label = "";
77
+ }
78
+ render() {
79
+ return i`<telia-heading tag="h4" variant="title-100">${this.label}</telia-heading>`;
80
+ }
81
+ };
82
+ f.styles = c`
83
+ :host {
84
+ display: table-cell;
85
+ padding: ${n($.spacing24)};
86
+ }
87
+ `;
88
+ P([
89
+ O({ type: String })
90
+ ], f.prototype, "label", 2);
91
+ f = P([
92
+ b("alliance-th")
93
+ ], f);
94
+ var X = Object.defineProperty, q = Object.getOwnPropertyDescriptor, m = (a, r, t, l) => {
95
+ for (var e = l > 1 ? void 0 : l ? q(r, t) : r, s = a.length - 1, o; s >= 0; s--)
96
+ (o = a[s]) && (e = (l ? o(r, t, e) : o(e)) || e);
97
+ return l && e && X(r, t, e), e;
98
+ };
99
+ let v = class extends p {
100
+ constructor() {
101
+ super(...arguments), this.clickable = !1;
102
+ }
103
+ render() {
104
+ return i`
105
+ ${this.clickable ? z : ""}
106
+ <slot></slot>
107
+ `;
108
+ }
109
+ };
110
+ v.styles = c`
111
+ :host {
112
+ display: table-row;
113
+ border-bottom: ${n(w.widthXs)} solid ${n(u.gray200)};
114
+ }
115
+ `;
116
+ m([
117
+ O({ type: Boolean })
118
+ ], v.prototype, "clickable", 2);
119
+ v = m([
120
+ b("alliance-tr")
121
+ ], v);
122
+ const z = i`<style>
123
+ :host {
124
+ background-color: transparent;
125
+ transition: background-color ${n(g.duration150)} ${n(g.easeIn)};
126
+ cursor: pointer;
127
+ }
128
+
129
+ :host(:hover),
130
+ :host(:focus-visible),
131
+ :host(:focus) {
132
+ background-color: ${n(u.gray200)};
133
+ }
134
+
135
+ :host(:active) {
136
+ background-color: ${n(u.gray300)};
137
+ }
138
+
139
+ :host(:focus-visible) {
140
+ outline: solid ${n(y.focusBorderWidth)} ${n(y.focusColor)};
141
+ outline-offset: ${n($.spacing4)};
142
+ }
143
+ </style>`;
8
144
  //# sourceMappingURL=alliance-table.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"alliance-table.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"alliance-table.js","sources":["../src/components/alliance-table/alliance-table.ts","../src/components/alliance-table/alliance-table-body.ts","../src/components/alliance-table/alliance-table-data.ts","../src/components/alliance-table/alliance-table-head.ts","../src/components/alliance-table/alliance-table-row.ts"],"sourcesContent":["import { css, html, LitElement } from 'lit';\nimport { customElement } from 'lit/decorators.js';\n\n@customElement('alliance-table')\nexport class Table extends LitElement {\n static styles = css`\n :host {\n display: table;\n border-collapse: collapse;\n width: 100%;\n }\n `;\n\n render() {\n return html` <alliance-tb>\n <slot></slot>\n </alliance-tb>`;\n }\n}\n","import { css, html, LitElement } from 'lit';\nimport { customElement } from 'lit/decorators.js';\n\n@customElement('alliance-tb')\nexport class TableBody extends LitElement {\n static styles = css`\n :host {\n display: table-row-group;\n vertical-align: middle;\n border-color: inherit;\n }\n `;\n\n render() {\n return html`<slot></slot>`;\n }\n}\n","import { spacing } from '@/voca/foundations';\nimport { css, html, LitElement, unsafeCSS } from 'lit';\nimport { customElement } from 'lit/decorators.js';\n\n@customElement('alliance-td')\nexport class TableData extends LitElement {\n static styles = css`\n :host {\n display: table-cell;\n vertical-align: inherit;\n padding: ${unsafeCSS(spacing.spacing24)};\n }\n `;\n\n render() {\n return html` <slot></slot> `;\n }\n}\n","import '@/voca/components/telia-heading';\nimport { spacing } from '@/voca/foundations';\nimport { css, html, LitElement, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('alliance-th')\nexport class TableHead extends LitElement {\n static styles = css`\n :host {\n display: table-cell;\n padding: ${unsafeCSS(spacing.spacing24)};\n }\n `;\n\n @property({ type: String })\n label: string = '';\n\n render() {\n return html`<telia-heading tag=\"h4\" variant=\"title-100\">${this.label}</telia-heading>`;\n }\n}\n","import { borders, colors, focus, motion, spacing } from '@/voca/foundations';\nimport { css, html, LitElement, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('alliance-tr')\nexport class TableRow extends LitElement {\n static styles = css`\n :host {\n display: table-row;\n border-bottom: ${unsafeCSS(borders.widthXs)} solid ${unsafeCSS(colors.gray200)};\n }\n `;\n\n @property({ type: Boolean })\n clickable: boolean = false;\n\n render() {\n return html`\n ${this.clickable ? clickableStyling : ''}\n <slot></slot>\n `;\n }\n}\n\nconst clickableStyling = html`<style>\n :host {\n background-color: transparent;\n transition: background-color ${unsafeCSS(motion.duration150)} ${unsafeCSS(motion.easeIn)};\n cursor: pointer;\n }\n\n :host(:hover),\n :host(:focus-visible),\n :host(:focus) {\n background-color: ${unsafeCSS(colors.gray200)};\n }\n\n :host(:active) {\n background-color: ${unsafeCSS(colors.gray300)};\n }\n\n :host(:focus-visible) {\n outline: solid ${unsafeCSS(focus.focusBorderWidth)} ${unsafeCSS(focus.focusColor)};\n outline-offset: ${unsafeCSS(spacing.spacing4)};\n }\n</style>`;\n"],"names":["Table","LitElement","html","css","__decorateClass","customElement","TableBody","TableData","unsafeCSS","spacing","TableHead","property","TableRow","clickableStyling","borders","colors","motion","focus"],"mappings":";;;;;;;;;;;AAIa,IAAAA,IAAN,cAAoBC,EAAW;AAAA,EASlC,SAAS;AACE,WAAAC;AAAAA;AAAAA;AAAAA,EAGX;AACJ;AAdaF,EACF,SAASG;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AADPH,IAANI,EAAA;AAAA,EADNC,EAAc,gBAAgB;AAAA,GAClBL,CAAA;;;;;;ACAA,IAAAM,IAAN,cAAwBL,EAAW;AAAA,EAStC,SAAS;AACE,WAAAC;AAAAA,EACX;AACJ;AAZaI,EACF,SAASH;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AADPG,IAANF,EAAA;AAAA,EADNC,EAAc,aAAa;AAAA,GACfC,CAAA;;;;;;ACCA,IAAAC,IAAN,cAAwBN,EAAW;AAAA,EAStC,SAAS;AACE,WAAAC;AAAAA,EACX;AACJ;AAZaK,EACF,SAASJ;AAAAA;AAAAA;AAAAA;AAAAA,uBAIGK,EAAUC,EAAQ,SAAS,CAAC;AAAA;AAAA;AALtCF,IAANH,EAAA;AAAA,EADNC,EAAc,aAAa;AAAA,GACfE,CAAA;;;;;;ACCA,IAAAG,IAAN,cAAwBT,EAAW;AAAA,EAAnC,cAAA;AAAA,UAAA,GAAA,SAAA,GASa,KAAA,QAAA;AAAA,EAAA;AAAA,EAEhB,SAAS;AACE,WAAAC,gDAAmD,KAAK,KAAK;AAAA,EACxE;AACJ;AAdaQ,EACF,SAASP;AAAAA;AAAAA;AAAAA,uBAGGK,EAAUC,EAAQ,SAAS,CAAC;AAAA;AAAA;AAK/CL,EAAA;AAAA,EADCO,EAAS,EAAE,MAAM,QAAQ;AAAA,GARjBD,EAST,WAAA,SAAA,CAAA;AATSA,IAANN,EAAA;AAAA,EADNC,EAAc,aAAa;AAAA,GACfK,CAAA;;;;;;ACDA,IAAAE,IAAN,cAAuBX,EAAW;AAAA,EAAlC,cAAA;AAAA,UAAA,GAAA,SAAA,GASkB,KAAA,YAAA;AAAA,EAAA;AAAA,EAErB,SAAS;AACE,WAAAC;AAAAA,cACD,KAAK,YAAYW,IAAmB,EAAE;AAAA;AAAA;AAAA,EAGhD;AACJ;AAjBaD,EACF,SAAST;AAAAA;AAAAA;AAAAA,6BAGSK,EAAUM,EAAQ,OAAO,CAAC,UAAUN,EAAUO,EAAO,OAAO,CAAC;AAAA;AAAA;AAKtFX,EAAA;AAAA,EADCO,EAAS,EAAE,MAAM,SAAS;AAAA,GARlBC,EAST,WAAA,aAAA,CAAA;AATSA,IAANR,EAAA;AAAA,EADNC,EAAc,aAAa;AAAA,GACfO,CAAA;AAmBb,MAAMC,IAAmBX;AAAAA;AAAAA;AAAAA,uCAGcM,EAAUQ,EAAO,WAAW,CAAC,IAAIR,EAAUQ,EAAO,MAAM,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAOpER,EAAUO,EAAO,OAAO,CAAC;AAAA;AAAA;AAAA;AAAA,4BAIzBP,EAAUO,EAAO,OAAO,CAAC;AAAA;AAAA;AAAA;AAAA,yBAI5BP,EAAUS,EAAM,gBAAgB,CAAC,IAAIT,EAAUS,EAAM,UAAU,CAAC;AAAA,0BAC/DT,EAAUC,EAAQ,QAAQ,CAAC;AAAA;AAAA;"}
@@ -1,18 +1,18 @@
1
- import "../chunks/alliance-link-8cb7d7d9.js";
2
- import "../chunks/alliance-modal-1126a4c4.js";
3
- import "../chunks/alliance-paginator-button-0a0a4fd7.js";
4
- import "../chunks/alliance-table-row-ec104b1e.js";
5
- import "../chunks/query-assigned-elements-024d0918.js";
6
- import "../chunks/repeat-600d2fb9.js";
7
- import "../chunks/telia-button2-7783c019.js";
1
+ import "./alliance-link.js";
2
+ import "./alliance-modal.js";
3
+ import "./alliance-paginator.js";
4
+ import "./alliance-table.js";
5
+ import "../chunks/query-assigned-elements-ac91685f.js";
6
+ import "../chunks/repeat-34adae9e.js";
7
+ import "../chunks/telia-button-c9ba09a9.js";
8
8
  import "../chunks/index-eef143db.js";
9
- import "../chunks/telia-icon2-d0e7c715.js";
9
+ import "../chunks/telia-icon-d0e7c715.js";
10
10
  import "../chunks/getSvgContent-f2389ce0.js";
11
11
  import "../chunks/telia-vst2-dfb33a56.js";
12
- import "../chunks/telia-heading2-38ae44ae.js";
13
- import "../chunks/index-d925c796.js";
14
- import "../chunks/close-7d423291.js";
12
+ import "../chunks/telia-heading-38ae44ae.js";
13
+ import "../chunks/index-514c4fef.js";
14
+ import "../chunks/close-ac6e4f1c.js";
15
15
  import "../chunks/variables-ecb680f0.js";
16
- import "../chunks/telia-label2-f4c1eb47.js";
16
+ import "../chunks/telia-label-f4c1eb47.js";
17
17
  import "../chunks/chevron-right-788ce8a9.js";
18
18
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telia-ace/alliance-ui",
3
- "version": "1.0.12",
3
+ "version": "1.0.13-next.0",
4
4
  "description": "UI components used by ACE Alliance apps.",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "author": "Telia Company AB",
@@ -41,22 +41,22 @@
41
41
  }
42
42
  },
43
43
  "dependencies": {
44
- "@teliads/components": "^21.3.1"
44
+ "@teliads/components": "^22.1.0"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@telia-ace/alliance-internal-client-utilities": "1.0.1",
48
48
  "@telia-ace/alliance-internal-node-utilities": "1.0.1",
49
49
  "@types/fs-extra": "^11.0.1",
50
50
  "fs-extra": "^11.1.1",
51
- "lit": "^2.7.4",
52
- "vite": "^4.3.5"
51
+ "lit": "^2.7.6",
52
+ "vite": "^4.4.6"
53
53
  },
54
54
  "publishConfig": {
55
55
  "access": "public"
56
56
  },
57
57
  "scripts": {
58
- "dev": "tsc && vite build --mode development --watch",
59
- "build:dev": "tsc && vite build --mode development",
58
+ "dev": "rimraf chunks voca components && tsc && vite build --mode development --watch",
59
+ "build:dev": "rimraf chunks voca components && tsc && vite build --mode development",
60
60
  "build:prod": "rimraf chunks voca components && tsc && vite build --mode prod",
61
61
  "build:test": "rimraf chunks voca components && tsc && vite build --mode test",
62
62
  "build:docker": "vite build",
@@ -1,6 +1,6 @@
1
1
  import { p as c, H as r, h as i } from "../../chunks/index-eef143db.js";
2
2
  import { u as n } from "../../chunks/uniqueId-0daf01ec.js";
3
- import { d as l } from "../../chunks/telia-icon2-d0e7c715.js";
3
+ import { d as l } from "../../chunks/telia-icon-d0e7c715.js";
4
4
  import { d } from "../../chunks/telia-vst2-dfb33a56.js";
5
5
  import "../../chunks/getSvgContent-f2389ce0.js";
6
6
  const m = { name: "chevron-up", svg: '<svg viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg" fill="currentColor"><path fill-rule="evenodd" clip-rule="evenodd" d="M53.0318 42.1986C52.6256 42.605 52.0745 42.8333 51.4999 42.8333C50.9253 42.8333 50.3742 42.605 49.968 42.1986L31.9999 24.2305L14.0318 42.1986C13.1858 43.0446 11.8141 43.0446 10.968 42.1986C10.122 41.3525 10.122 39.9808 10.968 39.1348L30.468 19.6348C30.8742 19.2283 31.4253 19 31.9999 19C32.5745 19 33.1256 19.2283 33.5318 19.6348L53.0318 39.1348C53.4382 39.541 53.6666 40.092 53.6666 40.6667C53.6666 41.2413 53.4382 41.7924 53.0318 42.1986Z"/></svg>' }, s = `:host{--vds-accordion-item-content-max-width:80ch}.telia-accordion-item{border-bottom:calc(0.1rem * var(--voca-rem-multiplier)) solid rgba(0, 0, 0, 0.3)}.telia-accordion-item__header{color:#29003e;background:transparent;border:0;cursor:pointer;display:flex;justify-content:space-between;min-height:calc(4.8rem * var(--voca-rem-multiplier));outline:none;padding:calc(1.6rem * var(--voca-rem-multiplier)) calc(1.6rem * var(--voca-rem-multiplier)) calc(1.6rem * var(--voca-rem-multiplier)) 0;width:100%}@media screen and (min-width: 37.5em){.telia-accordion-item__header{padding:calc(2.4rem * var(--voca-rem-multiplier)) calc(2.4rem * var(--voca-rem-multiplier)) calc(2.4rem * var(--voca-rem-multiplier)) 0}}@media screen and (min-width: 64em){.telia-accordion-item__header{padding:calc(3.2rem * var(--voca-rem-multiplier)) calc(2.4rem * var(--voca-rem-multiplier)) calc(3.2rem * var(--voca-rem-multiplier)) 0}}.telia-accordion-item__header:focus{outline:solid calc(0.3rem * var(--voca-rem-multiplier)) #0099ff;outline-offset:calc(0.2rem * var(--voca-rem-multiplier))}.telia-accordion-item__header:focus:not(:focus-visible){outline:none}.telia-accordion-item__header:hover{color:#5e0092;background-color:#fbf0ff}.telia-accordion-item__header--active{color:#7800b4}.telia-accordion-item__header-title{font-family:"TeliaSans", Helvetica, Arial, "Lucida Grande", sans-serif;font-weight:bold;font-size:calc(1.6rem * var(--voca-rem-multiplier));line-height:1.25;align-items:center;display:flex;justify-content:space-between;margin:0;text-align:left}@media screen and (min-width: 37.5em){.telia-accordion-item__header-title{font-size:calc(