@carbon/ibm-products-web-components 0.33.0 → 0.34.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 (47) hide show
  1. package/es/components/coachmark/coachmark-helpers.d.ts +11 -0
  2. package/es/components/coachmark/coachmark-helpers.js +35 -0
  3. package/es/components/coachmark/coachmark-helpers.js.map +1 -0
  4. package/es/components/coachmark/coachmark.js +1 -1
  5. package/es/components/coachmark/coachmark.js.map +1 -1
  6. package/es/components/guide-banner/guide-banner.js +1 -0
  7. package/es/components/guide-banner/guide-banner.js.map +1 -1
  8. package/es/components/guide-banner/guide-banner.scss.js +1 -1
  9. package/es/components/options-tile/options-tile.d.ts +5 -0
  10. package/es/components/options-tile/options-tile.js +24 -5
  11. package/es/components/options-tile/options-tile.js.map +1 -1
  12. package/es/components/options-tile/options-tile.scss.js +1 -1
  13. package/es/packages/ibm-products-web-components/package.json.js +1 -1
  14. package/es/utilities/makeDraggable/makeDraggable.js +19 -10
  15. package/es/utilities/makeDraggable/makeDraggable.js.map +1 -1
  16. package/es/utilities/snapscroll/index.d.ts +1 -1
  17. package/es/utilities/snapscroll/index.js +1 -1
  18. package/es/utilities/snapscroll/snapscroll.d.ts +10 -0
  19. package/es/utilities/snapscroll/snapscroll.js +112 -9
  20. package/es/utilities/snapscroll/snapscroll.js.map +1 -1
  21. package/es-custom/components/coachmark/coachmark-helpers.d.ts +11 -0
  22. package/es-custom/components/coachmark/coachmark-helpers.js +35 -0
  23. package/es-custom/components/coachmark/coachmark-helpers.js.map +1 -0
  24. package/es-custom/components/coachmark/coachmark.js +1 -1
  25. package/es-custom/components/coachmark/coachmark.js.map +1 -1
  26. package/es-custom/components/guide-banner/guide-banner.js +1 -0
  27. package/es-custom/components/guide-banner/guide-banner.js.map +1 -1
  28. package/es-custom/components/guide-banner/guide-banner.scss.js +1 -1
  29. package/es-custom/components/options-tile/options-tile.d.ts +5 -0
  30. package/es-custom/components/options-tile/options-tile.js +24 -5
  31. package/es-custom/components/options-tile/options-tile.js.map +1 -1
  32. package/es-custom/components/options-tile/options-tile.scss.js +1 -1
  33. package/es-custom/packages/ibm-products-web-components/package.json.js +1 -1
  34. package/es-custom/utilities/makeDraggable/makeDraggable.js +19 -10
  35. package/es-custom/utilities/makeDraggable/makeDraggable.js.map +1 -1
  36. package/es-custom/utilities/snapscroll/index.d.ts +1 -1
  37. package/es-custom/utilities/snapscroll/index.js +1 -1
  38. package/es-custom/utilities/snapscroll/snapscroll.d.ts +10 -0
  39. package/es-custom/utilities/snapscroll/snapscroll.js +112 -9
  40. package/es-custom/utilities/snapscroll/snapscroll.js.map +1 -1
  41. package/lib/components/coachmark/coachmark-helpers.d.ts +11 -0
  42. package/lib/components/options-tile/options-tile.d.ts +5 -0
  43. package/lib/utilities/snapscroll/index.d.ts +1 -1
  44. package/lib/utilities/snapscroll/snapscroll.d.ts +10 -0
  45. package/package.json +4 -5
  46. package/scss/components/guide-banner/guide-banner.scss +4 -0
  47. package/scss/components/options-tile/options-tile.scss +12 -0
@@ -38,12 +38,17 @@ const makeDraggable = ({ el, dragHandle, focusableDragHandle, dragStep, shiftDra
38
38
  const onKeyDown = (e) => {
39
39
  if (e.key === 'Enter') {
40
40
  isDragging = !isDragging;
41
- }
42
- if (isDragging) {
43
- dispatch('dragstart', { keyboard: true });
44
- }
45
- else {
46
- dispatch('dragend', { keyboard: true });
41
+ if (isDragging) {
42
+ // Get current transform values when starting keyboard drag
43
+ const style = window.getComputedStyle(el);
44
+ const matrix = new DOMMatrix(style.transform);
45
+ currentX = matrix.m41;
46
+ currentY = matrix.m42;
47
+ dispatch('dragstart', { keyboard: true });
48
+ }
49
+ else {
50
+ dispatch('dragend', { keyboard: true });
51
+ }
47
52
  }
48
53
  if (!isDragging) {
49
54
  return;
@@ -55,16 +60,20 @@ const makeDraggable = ({ el, dragHandle, focusableDragHandle, dragStep, shiftDra
55
60
  e.preventDefault();
56
61
  break;
57
62
  case 'ArrowLeft':
58
- el.style.left = `${el.offsetLeft - distance}px`;
63
+ currentX -= distance;
64
+ el.style.transform = `translate(${currentX}px, ${currentY}px)`;
59
65
  break;
60
66
  case 'ArrowRight':
61
- el.style.left = `${el.offsetLeft + distance}px`;
67
+ currentX += distance;
68
+ el.style.transform = `translate(${currentX}px, ${currentY}px)`;
62
69
  break;
63
70
  case 'ArrowUp':
64
- el.style.top = `${el.offsetTop - distance}px`;
71
+ currentY -= distance;
72
+ el.style.transform = `translate(${currentX}px, ${currentY}px)`;
65
73
  break;
66
74
  case 'ArrowDown':
67
- el.style.top = `${el.offsetTop + distance}px`;
75
+ currentY += distance;
76
+ el.style.transform = `translate(${currentX}px, ${currentY}px)`;
68
77
  break;
69
78
  }
70
79
  };
@@ -1 +1 @@
1
- {"version":3,"file":"makeDraggable.js","sources":["../../../src/utilities/makeDraggable/makeDraggable.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"makeDraggable.js","sources":["../../../src/utilities/makeDraggable/makeDraggable.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -4,4 +4,4 @@
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
- export { snapScroll, scrollNext, scrollPrevious, blockClass, getNextSibling, getPreviousSibling, } from './snapscroll';
7
+ export { snapScroll, scrollNext, scrollPrevious, blockClass, getNextSibling, getPreviousSibling, hasNextSiblingNotInView, hasPreviousSiblingNotInView, } from './snapscroll';
@@ -5,5 +5,5 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- export { blockClass, getNextSibling, getPreviousSibling, scrollNext, scrollPrevious, snapScroll } from './snapscroll.js';
8
+ export { blockClass, getNextSibling, getPreviousSibling, hasNextSiblingNotInView, hasPreviousSiblingNotInView, scrollNext, scrollPrevious, snapScroll } from './snapscroll.js';
9
9
  //# sourceMappingURL=index.js.map
@@ -27,3 +27,13 @@ export declare function scrollNext(): void;
27
27
  export declare function scrollPrevious(): void;
28
28
  export declare function getNextSibling(): Element | null | undefined;
29
29
  export declare function getPreviousSibling(): Element | null | undefined;
30
+ /**
31
+ * Checks if there are any next siblings that are not fully in view
32
+ * @returns true if there are more items to scroll to in the next direction
33
+ */
34
+ export declare function hasNextSiblingNotInView(): boolean;
35
+ /**
36
+ * Checks if there are any previous siblings that are not fully in view
37
+ * @returns true if there are more items to scroll to in the previous direction
38
+ */
39
+ export declare function hasPreviousSiblingNotInView(): boolean;
@@ -95,25 +95,92 @@ function snapScroll(body, child) {
95
95
  function getFocusedItem() {
96
96
  return document.querySelector(`.${selectionClass}`);
97
97
  }
98
+ /**
99
+ * Helper function to check if an element is fully visible within its parent
100
+ * @param element The element to check
101
+ * @param parent The parent container
102
+ * @returns true if element is fully visible within parent bounds
103
+ */
104
+ function isElementFullyInView(element, parent) {
105
+ const elementRect = element.getBoundingClientRect();
106
+ const parentRect = parent.getBoundingClientRect();
107
+ return (elementRect.left >= parentRect.left && elementRect.right <= parentRect.right);
108
+ }
109
+ /**
110
+ * Finds the first sibling that is not in view by traversing in the specified direction
111
+ * @param startSibling The sibling to start checking from
112
+ * @param parent The parent container
113
+ * @param direction 'next' to check nextElementSibling, 'previous' to check previousElementSibling
114
+ * @returns The first sibling not in view, or the last sibling if all are in view
115
+ */
116
+ function findFirstSiblingNotInView(startSibling, parent, direction) {
117
+ let currentSibling = startSibling;
118
+ let lastCheckedSibling = startSibling;
119
+ while (currentSibling) {
120
+ if (!isElementFullyInView(currentSibling, parent)) {
121
+ return currentSibling;
122
+ }
123
+ lastCheckedSibling = currentSibling;
124
+ currentSibling =
125
+ direction === 'next'
126
+ ? currentSibling.nextElementSibling
127
+ : currentSibling.previousElementSibling;
128
+ }
129
+ // If all siblings are in view, return the last one checked
130
+ return lastCheckedSibling;
131
+ }
132
+ /**
133
+ * Helper function to scroll to a sibling element with proper handling for already-visible items
134
+ * @param sibling The sibling element to start checking from
135
+ * @param inline The scroll alignment ('start' for next, 'nearest' for previous)
136
+ * @param direction The direction to traverse ('next' or 'previous')
137
+ */
138
+ function scrollToSibling(sibling, inline, direction) {
139
+ const parent = sibling.parentElement;
140
+ if (!parent) {
141
+ return;
142
+ }
143
+ // Find the first sibling that is not in view
144
+ const targetSibling = findFirstSiblingNotInView(sibling, parent, direction);
145
+ const isFullyInView = isElementFullyInView(targetSibling, parent);
146
+ // Update the selection class for already visible items
147
+ if (isFullyInView) {
148
+ const currentlySnapped = document.querySelector(`.${selectionClass}`);
149
+ if (currentlySnapped) {
150
+ currentlySnapped.classList.remove(selectionClass);
151
+ }
152
+ targetSibling.classList.add(selectionClass);
153
+ }
154
+ // Always scroll to ensure proper snap alignment
155
+ targetSibling.scrollIntoView({
156
+ behavior: 'smooth',
157
+ inline,
158
+ });
159
+ // If already in view, scrollIntoView won't trigger scrollend
160
+ // So we manually dispatch it to ensure navigation buttons update
161
+ if (isFullyInView) {
162
+ setTimeout(() => {
163
+ parent.dispatchEvent(new Event('scrollend', { bubbles: true }));
164
+ }, 50);
165
+ }
166
+ }
98
167
  /**
99
168
  * Scrolls to the next sibling element of the currently focused element
100
169
  */
101
170
  function scrollNext() {
102
171
  const sibling = getNextSibling();
103
- sibling === null || sibling === void 0 ? void 0 : sibling.scrollIntoView({
104
- behavior: 'smooth',
105
- inline: 'start',
106
- });
172
+ if (sibling) {
173
+ scrollToSibling(sibling, 'start', 'next');
174
+ }
107
175
  }
108
176
  /**
109
177
  * Scrolls to the previous sibling element of the currently focused element
110
178
  */
111
179
  function scrollPrevious() {
112
180
  const sibling = getPreviousSibling();
113
- sibling === null || sibling === void 0 ? void 0 : sibling.scrollIntoView({
114
- behavior: 'smooth',
115
- inline: 'start',
116
- });
181
+ if (sibling) {
182
+ scrollToSibling(sibling, 'nearest', 'previous');
183
+ }
117
184
  }
118
185
  function getNextSibling() {
119
186
  const item = getFocusedItem();
@@ -129,6 +196,42 @@ function getPreviousSibling() {
129
196
  }
130
197
  return item.previousElementSibling;
131
198
  }
199
+ /**
200
+ * Checks if there are any next siblings that are not fully in view
201
+ * @returns true if there are more items to scroll to in the next direction
202
+ */
203
+ function hasNextSiblingNotInView() {
204
+ const item = getFocusedItem();
205
+ if (!item || !item.parentElement) {
206
+ return false;
207
+ }
208
+ let currentSibling = item.nextElementSibling;
209
+ while (currentSibling) {
210
+ if (!isElementFullyInView(currentSibling, item.parentElement)) {
211
+ return true;
212
+ }
213
+ currentSibling = currentSibling.nextElementSibling;
214
+ }
215
+ return false;
216
+ }
217
+ /**
218
+ * Checks if there are any previous siblings that are not fully in view
219
+ * @returns true if there are more items to scroll to in the previous direction
220
+ */
221
+ function hasPreviousSiblingNotInView() {
222
+ const item = getFocusedItem();
223
+ if (!item || !item.parentElement) {
224
+ return false;
225
+ }
226
+ let currentSibling = item.previousElementSibling;
227
+ while (currentSibling) {
228
+ if (!isElementFullyInView(currentSibling, item.parentElement)) {
229
+ return true;
230
+ }
231
+ currentSibling = currentSibling.previousElementSibling;
232
+ }
233
+ return false;
234
+ }
132
235
 
133
- export { blockClass, getFocusedItem, getNextSibling, getPreviousSibling, scrollNext, scrollPrevious, snapScroll };
236
+ export { blockClass, getFocusedItem, getNextSibling, getPreviousSibling, hasNextSiblingNotInView, hasPreviousSiblingNotInView, scrollNext, scrollPrevious, snapScroll };
134
237
  //# sourceMappingURL=snapscroll.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapscroll.js","sources":["../../../src/utilities/snapscroll/snapscroll.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snapscroll.js","sources":["../../../src/utilities/snapscroll/snapscroll.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;AAAA;;;;;AAKG;AAYH;;;;;AAKG;AAEU,MAAA,UAAU,GAAG,CAAG,EAAA,MAAM;AACnC,MAAM,QAAQ,GAAG,CAAG,EAAA,UAAU,OAAO;AACrC,MAAM,cAAc,GAAG,CAAG,EAAA,UAAU,aAAa;AAEjC,SAAA,UAAU,CAAC,IAAY,EAAE,KAAa,EAAA;IACpD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC;IAE3C,IAAI,CAAC,MAAM,EAAE;QACX;;IAGF,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC;IACpD,YAAY,CAAC,WAAW,GAAG;KACxB,UAAU,CAAA;;;;;;;;KAQV,UAAU,CAAA;;;;KAIV,UAAU,CAAA;;;;;CAKd;AACC,IAAA,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC;AAEvC,IAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC;AAEhC,IAAA,MAAM,mBAAmB,GAAG,oBAAoB,IAAI,MAAM;IAC1D,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC;AAE/C,IAAA,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;AACvB,QAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,KAAI;AACtB,YAAA,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC5B,SAAC,CAAC;;IAGJ,IAAI,mBAAmB,EAAE;QACvB,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC,KAAK,KAAI;YACpD,MAAM,SAAS,GAAG,KAAkB;YACpC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAI,CAAA,EAAA,cAAc,CAAE,CAAA,CAAC;YAErE,IAAI,gBAAgB,EAAE;AACpB,gBAAA,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC;;YAGnD,SAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC;AAC1D,SAAC,CAAC;;SACG;AACL,QAAA,MAAM,OAAO,GAAiC,CAAC,OAAO,KAAI;AACxD,YAAA,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AACxB,gBAAA,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC;AACrE,aAAC,CAAC;AACJ,SAAC;AACD,QAAA,IAAI,QAAQ;QACZ,MAAM,cAAc,GAAG,MAAK;YAC1B,IAAI,QAAQ,EAAE;gBACZ,QAAQ,CAAC,UAAU,EAAE;;AAEvB,YAAA,QAAQ,GAAG,IAAI,oBAAoB,CAAC,OAAO,EAAE;AAC3C,gBAAA,IAAI,EAAE,MAAM;AACZ,gBAAA,SAAS,EAAE,CAAC;AACb,aAAA,CAAC;AACF,YAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AACzB,gBAAA,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC;AACzB,aAAC,CAAC;AACJ,SAAC;AACD,QAAA,cAAc,EAAE;;AAEpB;AAEA;;;AAGG;SACa,cAAc,GAAA;IAC5B,OAAO,QAAQ,CAAC,aAAa,CAAC,IAAI,cAAc,CAAA,CAAE,CAAC;AACrD;AAEA;;;;;AAKG;AACH,SAAS,oBAAoB,CAAC,OAAgB,EAAE,MAAe,EAAA;AAC7D,IAAA,MAAM,WAAW,GAAG,OAAO,CAAC,qBAAqB,EAAE;AACnD,IAAA,MAAM,UAAU,GAAG,MAAM,CAAC,qBAAqB,EAAE;AACjD,IAAA,QACE,WAAW,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,IAAI,WAAW,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK;AAEhF;AAEA;;;;;;AAMG;AACH,SAAS,yBAAyB,CAChC,YAAqB,EACrB,MAAe,EACf,SAA8B,EAAA;IAE9B,IAAI,cAAc,GAAmB,YAAY;IACjD,IAAI,kBAAkB,GAAG,YAAY;IAErC,OAAO,cAAc,EAAE;QACrB,IAAI,CAAC,oBAAoB,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE;AACjD,YAAA,OAAO,cAAc;;QAEvB,kBAAkB,GAAG,cAAc;QACnC,cAAc;AACZ,YAAA,SAAS,KAAK;kBACV,cAAc,CAAC;AACjB,kBAAE,cAAc,CAAC,sBAAsB;;;AAI7C,IAAA,OAAO,kBAAkB;AAC3B;AAEA;;;;;AAKG;AACH,SAAS,eAAe,CACtB,OAAgB,EAChB,MAA6B,EAC7B,SAA8B,EAAA;AAE9B,IAAA,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa;IACpC,IAAI,CAAC,MAAM,EAAE;QACX;;;IAIF,MAAM,aAAa,GAAG,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC;IAC3E,MAAM,aAAa,GAAG,oBAAoB,CAAC,aAAa,EAAE,MAAM,CAAC;;IAGjE,IAAI,aAAa,EAAE;QACjB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAI,CAAA,EAAA,cAAc,CAAE,CAAA,CAAC;QACrE,IAAI,gBAAgB,EAAE;AACpB,YAAA,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC;;AAEnD,QAAA,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC;;;IAI7C,aAAa,CAAC,cAAc,CAAC;AAC3B,QAAA,QAAQ,EAAE,QAAQ;QAClB,MAAM;AACP,KAAA,CAAC;;;IAIF,IAAI,aAAa,EAAE;QACjB,UAAU,CAAC,MAAK;AACd,YAAA,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;SAChE,EAAE,EAAE,CAAC;;AAEV;AAEA;;AAEG;SACa,UAAU,GAAA;AACxB,IAAA,MAAM,OAAO,GAAG,cAAc,EAAE;IAChC,IAAI,OAAO,EAAE;AACX,QAAA,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC;;AAE7C;AAEA;;AAEG;SACa,cAAc,GAAA;AAC5B,IAAA,MAAM,OAAO,GAAG,kBAAkB,EAAE;IACpC,IAAI,OAAO,EAAE;AACX,QAAA,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC;;AAEnD;SAEgB,cAAc,GAAA;AAC5B,IAAA,MAAM,IAAI,GAAG,cAAc,EAAE;IAC7B,IAAI,CAAC,IAAI,EAAE;QACT;;IAGF,OAAO,IAAI,CAAC,kBAAkB;AAChC;SAEgB,kBAAkB,GAAA;AAChC,IAAA,MAAM,IAAI,GAAG,cAAc,EAAE;IAC7B,IAAI,CAAC,IAAI,EAAE;QACT;;IAGF,OAAO,IAAI,CAAC,sBAAsB;AACpC;AAEA;;;AAGG;SACa,uBAAuB,GAAA;AACrC,IAAA,MAAM,IAAI,GAAG,cAAc,EAAE;IAC7B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;AAChC,QAAA,OAAO,KAAK;;AAGd,IAAA,IAAI,cAAc,GAAG,IAAI,CAAC,kBAAkB;IAC5C,OAAO,cAAc,EAAE;QACrB,IAAI,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE;AAC7D,YAAA,OAAO,IAAI;;AAEb,QAAA,cAAc,GAAG,cAAc,CAAC,kBAAkB;;AAGpD,IAAA,OAAO,KAAK;AACd;AAEA;;;AAGG;SACa,2BAA2B,GAAA;AACzC,IAAA,MAAM,IAAI,GAAG,cAAc,EAAE;IAC7B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;AAChC,QAAA,OAAO,KAAK;;AAGd,IAAA,IAAI,cAAc,GAAG,IAAI,CAAC,sBAAsB;IAChD,OAAO,cAAc,EAAE;QACrB,IAAI,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE;AAC7D,YAAA,OAAO,IAAI;;AAEb,QAAA,cAAc,GAAG,cAAc,CAAC,sBAAsB;;AAGxD,IAAA,OAAO,KAAK;AACd;;;;"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright IBM Corp. 2026
5
+ *
6
+ * This source code is licensed under the Apache-2.0 license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ export declare const handleClick: () => void;
10
+ export declare const handleDone: () => void;
11
+ export declare const handleCoachmarkOpened: () => void;
@@ -405,8 +405,13 @@ declare class CDSOptionsTile extends CDSOptionsTile_base {
405
405
  * here and only referenced internally.
406
406
  */
407
407
  private _open;
408
+ /**
409
+ * Tracks whether the toggle slot has content
410
+ */
411
+ private _hasToggle;
408
412
  static get eventOpen(): string;
409
413
  static get eventClose(): string;
414
+ private _handleToggleSlotChange;
410
415
  private _toggle;
411
416
  private _handleOpen;
412
417
  private _handleClose;
@@ -4,4 +4,4 @@
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
- export { snapScroll, scrollNext, scrollPrevious, blockClass, getNextSibling, getPreviousSibling, } from './snapscroll';
7
+ export { snapScroll, scrollNext, scrollPrevious, blockClass, getNextSibling, getPreviousSibling, hasNextSiblingNotInView, hasPreviousSiblingNotInView, } from './snapscroll';
@@ -27,3 +27,13 @@ export declare function scrollNext(): void;
27
27
  export declare function scrollPrevious(): void;
28
28
  export declare function getNextSibling(): Element | null | undefined;
29
29
  export declare function getPreviousSibling(): Element | null | undefined;
30
+ /**
31
+ * Checks if there are any next siblings that are not fully in view
32
+ * @returns true if there are more items to scroll to in the next direction
33
+ */
34
+ export declare function hasNextSiblingNotInView(): boolean;
35
+ /**
36
+ * Checks if there are any previous siblings that are not fully in view
37
+ * @returns true if there are more items to scroll to in the previous direction
38
+ */
39
+ export declare function hasPreviousSiblingNotInView(): boolean;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@carbon/ibm-products-web-components",
3
3
  "description": "Carbon for IBM Products Web Components",
4
- "version": "0.33.0",
4
+ "version": "0.34.0",
5
5
  "license": "Apache-2.0",
6
6
  "main": "es/index.js",
7
7
  "module": "es/index.js",
@@ -56,11 +56,10 @@
56
56
  },
57
57
  "dependencies": {
58
58
  "@carbon-labs/wc-empty-state": "^0.13.0",
59
- "@carbon/ibm-products-styles": "^2.80.0",
59
+ "@carbon/ibm-products-styles": "^2.81.0",
60
60
  "@carbon/styles": "^1.100.0",
61
61
  "@carbon/utilities": "^0.16.0",
62
62
  "@carbon/web-components": "2.48.0",
63
- "@figma/code-connect": "^1.3.6",
64
63
  "@ibm/telemetry-js": "^1.10.2",
65
64
  "@lit-labs/signals": "^0.1.2",
66
65
  "@lit/context": "^1.1.5",
@@ -72,7 +71,7 @@
72
71
  "@carbon/icon-helpers": "^10.72.0",
73
72
  "@carbon/icons": "^11.75.0",
74
73
  "@carbon/motion": "^11.41.0",
75
- "@figma/code-connect": "^1.3.6",
74
+ "@figma/code-connect": "^1.4.0",
76
75
  "@ibm/telemetry-js-config-generator": "^2.1.0",
77
76
  "@mordech/vite-lit-loader": "^0.37.0",
78
77
  "@open-wc/testing": "^4.0.0",
@@ -113,5 +112,5 @@
113
112
  "vitest": "^3.2.0",
114
113
  "web-component-analyzer": "2.0.0"
115
114
  },
116
- "gitHead": "7b0c5737d123755ee2ed937568fcd568e9c76b3f"
115
+ "gitHead": "d5645922d967cd5c602f4c111bab8a6b5f633abe"
117
116
  }
@@ -29,4 +29,8 @@ $block-class: #{$prefix}--guidebanner;
29
29
  display: none;
30
30
  content: '';
31
31
  }
32
+
33
+ .#{$block-class}__title {
34
+ padding-block-end: $spacing-05;
35
+ }
32
36
  }
@@ -18,7 +18,10 @@ $prefix: 'c4p';
18
18
  $block-class: #{$prefix}--options-tile;
19
19
 
20
20
  :host(#{$prefix}-options-tile) {
21
+ position: relative;
22
+
21
23
  .#{$block-class} {
24
+ position: relative;
22
25
  background: $layer-01;
23
26
  border-block-end: 1px solid $border-subtle-01;
24
27
 
@@ -52,8 +55,17 @@ $block-class: #{$prefix}--options-tile;
52
55
  }
53
56
 
54
57
  &-right {
58
+ position: absolute;
55
59
  display: flex;
56
60
  align-items: center;
61
+ block-size: $spacing-09;
62
+ inset-block-start: 0;
63
+ inset-inline-end: 0;
64
+ padding-inline: $spacing-05;
65
+ }
66
+
67
+ &--has-toggle {
68
+ inline-size: calc(100% - ($spacing-09 + ($spacing-05 * 3)));
57
69
  }
58
70
  }
59
71