@carbon/ibm-products-web-components 0.20.0 → 0.21.0-rc.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 (216) hide show
  1. package/custom-elements.json +2374 -352
  2. package/es/components/about-modal/about-modal.scss.js +1 -1
  3. package/es/components/interstitial-screen/index.d.ts +13 -0
  4. package/es/components/interstitial-screen/index.js +13 -0
  5. package/es/components/interstitial-screen/index.js.map +1 -0
  6. package/es/components/interstitial-screen/interstitial-screen-body-item.d.ts +372 -0
  7. package/es/components/interstitial-screen/interstitial-screen-body-item.js +69 -0
  8. package/es/components/interstitial-screen/interstitial-screen-body-item.js.map +1 -0
  9. package/es/components/interstitial-screen/interstitial-screen-body-item.scss.js +13 -0
  10. package/es/components/interstitial-screen/interstitial-screen-body-item.scss.js.map +1 -0
  11. package/es/components/interstitial-screen/interstitial-screen-body.d.ts +384 -0
  12. package/es/components/interstitial-screen/interstitial-screen-body.js +129 -0
  13. package/es/components/interstitial-screen/interstitial-screen-body.js.map +1 -0
  14. package/es/components/interstitial-screen/interstitial-screen-body.scss.js +13 -0
  15. package/es/components/interstitial-screen/interstitial-screen-body.scss.js.map +1 -0
  16. package/es/components/interstitial-screen/interstitial-screen-context.d.ts +18 -0
  17. package/es/components/interstitial-screen/interstitial-screen-context.js +48 -0
  18. package/es/components/interstitial-screen/interstitial-screen-context.js.map +1 -0
  19. package/es/components/interstitial-screen/interstitial-screen-footer.d.ts +409 -0
  20. package/es/components/interstitial-screen/interstitial-screen-footer.js +229 -0
  21. package/es/components/interstitial-screen/interstitial-screen-footer.js.map +1 -0
  22. package/es/components/interstitial-screen/interstitial-screen-footer.scss.js +13 -0
  23. package/es/components/interstitial-screen/interstitial-screen-footer.scss.js.map +1 -0
  24. package/es/components/interstitial-screen/interstitial-screen-header.d.ts +394 -0
  25. package/es/components/interstitial-screen/interstitial-screen-header.js +157 -0
  26. package/es/components/interstitial-screen/interstitial-screen-header.js.map +1 -0
  27. package/es/components/interstitial-screen/interstitial-screen-header.scss.js +13 -0
  28. package/es/components/interstitial-screen/interstitial-screen-header.scss.js.map +1 -0
  29. package/es/components/interstitial-screen/interstitial-screen.d.ts +420 -0
  30. package/es/components/interstitial-screen/interstitial-screen.js +186 -0
  31. package/es/components/interstitial-screen/interstitial-screen.js.map +1 -0
  32. package/es/components/interstitial-screen/interstitial-screen.scss.js +13 -0
  33. package/es/components/interstitial-screen/interstitial-screen.scss.js.map +1 -0
  34. package/es/components/notification-panel/notification-panel.scss.js +1 -1
  35. package/es/components/page-header/_story-assets/overflowHandler.d.ts +98 -0
  36. package/es/components/page-header/_story-assets/overflowHandler.js +156 -0
  37. package/es/components/page-header/_story-assets/overflowHandler.js.map +1 -0
  38. package/es/components/page-header/_story-assets/set-of-breadcrumbs.d.ts +43 -0
  39. package/es/components/page-header/_story-assets/set-of-breadcrumbs.js +153 -0
  40. package/es/components/page-header/_story-assets/set-of-breadcrumbs.js.map +1 -0
  41. package/es/components/page-header/_story-assets/set-of-breadcrumbs.scss.js +13 -0
  42. package/es/components/page-header/_story-assets/set-of-breadcrumbs.scss.js.map +1 -0
  43. package/es/components/page-header/context.d.ts +14 -0
  44. package/es/components/page-header/context.js +26 -0
  45. package/es/components/page-header/context.js.map +1 -0
  46. package/es/components/page-header/index.d.ts +2 -0
  47. package/es/components/page-header/index.js +2 -0
  48. package/es/components/page-header/index.js.map +1 -1
  49. package/es/components/page-header/page-header-scroller.d.ts +56 -0
  50. package/es/components/page-header/page-header-scroller.js +165 -0
  51. package/es/components/page-header/page-header-scroller.js.map +1 -0
  52. package/es/components/page-header/page-header-tabs.js +1 -0
  53. package/es/components/page-header/page-header-tabs.js.map +1 -1
  54. package/es/components/page-header/page-header-title-breadcrumb.d.ts +20 -0
  55. package/es/components/page-header/page-header-title-breadcrumb.js +65 -0
  56. package/es/components/page-header/page-header-title-breadcrumb.js.map +1 -0
  57. package/es/components/page-header/page-header.d.ts +11 -1
  58. package/es/components/page-header/page-header.js +54 -71
  59. package/es/components/page-header/page-header.js.map +1 -1
  60. package/es/components/page-header/page-header.scss.js +1 -1
  61. package/es/components/page-header/page-header.test.js +136 -2
  62. package/es/components/page-header/page-header.test.js.map +1 -1
  63. package/es/components/page-header/utils.d.ts +32 -0
  64. package/es/components/page-header/utils.js +76 -0
  65. package/es/components/page-header/utils.js.map +1 -0
  66. package/es/components/side-panel/side-panel.d.ts +4 -0
  67. package/es/components/side-panel/side-panel.js +33 -15
  68. package/es/components/side-panel/side-panel.js.map +1 -1
  69. package/es/components/tearsheet/tearsheet.scss.js +1 -1
  70. package/es/components/truncated-text/truncated-text.d.ts +16 -11
  71. package/es/components/truncated-text/truncated-text.js +65 -58
  72. package/es/components/truncated-text/truncated-text.js.map +1 -1
  73. package/es/components/truncated-text/truncated-text.scss.js +1 -1
  74. package/es/components/truncated-text/truncated-text.test.js +6 -6
  75. package/es/components/user-avatar/user-avatar.d.ts +8 -0
  76. package/es/components/user-avatar/user-avatar.js +1 -0
  77. package/es/components/user-avatar/user-avatar.js.map +1 -1
  78. package/es/components/user-avatar/user-avatar.scss.js +1 -1
  79. package/es/packages/ibm-products-web-components/package.json.js +1 -1
  80. package/es/utilities/carousel/carousel.d.ts +8 -0
  81. package/es/utilities/carousel/carousel.js +210 -0
  82. package/es/utilities/carousel/carousel.js.map +1 -0
  83. package/es/utilities/carousel/index.d.ts +8 -0
  84. package/es/utilities/carousel/index.js +9 -0
  85. package/es/utilities/carousel/index.js.map +1 -0
  86. package/es/utilities/carousel/swipeEvents.d.ts +7 -0
  87. package/es/utilities/carousel/swipeEvents.js +109 -0
  88. package/es/utilities/carousel/swipeEvents.js.map +1 -0
  89. package/es/utilities/carousel/types.d.ts +36 -0
  90. package/es/utilities/carousel/types.js +8 -0
  91. package/es/utilities/carousel/types.js.map +1 -0
  92. package/es-custom/components/about-modal/about-modal.scss.js +1 -1
  93. package/es-custom/components/interstitial-screen/index.d.ts +13 -0
  94. package/es-custom/components/interstitial-screen/index.js +13 -0
  95. package/es-custom/components/interstitial-screen/index.js.map +1 -0
  96. package/es-custom/components/interstitial-screen/interstitial-screen-body-item.d.ts +372 -0
  97. package/es-custom/components/interstitial-screen/interstitial-screen-body-item.js +69 -0
  98. package/es-custom/components/interstitial-screen/interstitial-screen-body-item.js.map +1 -0
  99. package/es-custom/components/interstitial-screen/interstitial-screen-body-item.scss.js +13 -0
  100. package/es-custom/components/interstitial-screen/interstitial-screen-body-item.scss.js.map +1 -0
  101. package/es-custom/components/interstitial-screen/interstitial-screen-body.d.ts +384 -0
  102. package/es-custom/components/interstitial-screen/interstitial-screen-body.js +129 -0
  103. package/es-custom/components/interstitial-screen/interstitial-screen-body.js.map +1 -0
  104. package/es-custom/components/interstitial-screen/interstitial-screen-body.scss.js +13 -0
  105. package/es-custom/components/interstitial-screen/interstitial-screen-body.scss.js.map +1 -0
  106. package/es-custom/components/interstitial-screen/interstitial-screen-context.d.ts +18 -0
  107. package/es-custom/components/interstitial-screen/interstitial-screen-context.js +48 -0
  108. package/es-custom/components/interstitial-screen/interstitial-screen-context.js.map +1 -0
  109. package/es-custom/components/interstitial-screen/interstitial-screen-footer.d.ts +409 -0
  110. package/es-custom/components/interstitial-screen/interstitial-screen-footer.js +229 -0
  111. package/es-custom/components/interstitial-screen/interstitial-screen-footer.js.map +1 -0
  112. package/es-custom/components/interstitial-screen/interstitial-screen-footer.scss.js +13 -0
  113. package/es-custom/components/interstitial-screen/interstitial-screen-footer.scss.js.map +1 -0
  114. package/es-custom/components/interstitial-screen/interstitial-screen-header.d.ts +394 -0
  115. package/es-custom/components/interstitial-screen/interstitial-screen-header.js +157 -0
  116. package/es-custom/components/interstitial-screen/interstitial-screen-header.js.map +1 -0
  117. package/es-custom/components/interstitial-screen/interstitial-screen-header.scss.js +13 -0
  118. package/es-custom/components/interstitial-screen/interstitial-screen-header.scss.js.map +1 -0
  119. package/es-custom/components/interstitial-screen/interstitial-screen.d.ts +420 -0
  120. package/es-custom/components/interstitial-screen/interstitial-screen.js +186 -0
  121. package/es-custom/components/interstitial-screen/interstitial-screen.js.map +1 -0
  122. package/es-custom/components/interstitial-screen/interstitial-screen.scss.js +13 -0
  123. package/es-custom/components/interstitial-screen/interstitial-screen.scss.js.map +1 -0
  124. package/es-custom/components/notification-panel/notification-panel.scss.js +1 -1
  125. package/es-custom/components/page-header/_story-assets/overflowHandler.d.ts +98 -0
  126. package/es-custom/components/page-header/_story-assets/overflowHandler.js +156 -0
  127. package/es-custom/components/page-header/_story-assets/overflowHandler.js.map +1 -0
  128. package/es-custom/components/page-header/_story-assets/set-of-breadcrumbs.d.ts +43 -0
  129. package/es-custom/components/page-header/_story-assets/set-of-breadcrumbs.js +153 -0
  130. package/es-custom/components/page-header/_story-assets/set-of-breadcrumbs.js.map +1 -0
  131. package/es-custom/components/page-header/_story-assets/set-of-breadcrumbs.scss.js +13 -0
  132. package/es-custom/components/page-header/_story-assets/set-of-breadcrumbs.scss.js.map +1 -0
  133. package/es-custom/components/page-header/context.d.ts +14 -0
  134. package/es-custom/components/page-header/context.js +26 -0
  135. package/es-custom/components/page-header/context.js.map +1 -0
  136. package/es-custom/components/page-header/index.d.ts +2 -0
  137. package/es-custom/components/page-header/index.js +2 -0
  138. package/es-custom/components/page-header/index.js.map +1 -1
  139. package/es-custom/components/page-header/page-header-scroller.d.ts +56 -0
  140. package/es-custom/components/page-header/page-header-scroller.js +165 -0
  141. package/es-custom/components/page-header/page-header-scroller.js.map +1 -0
  142. package/es-custom/components/page-header/page-header-tabs.js +1 -0
  143. package/es-custom/components/page-header/page-header-tabs.js.map +1 -1
  144. package/es-custom/components/page-header/page-header-title-breadcrumb.d.ts +20 -0
  145. package/es-custom/components/page-header/page-header-title-breadcrumb.js +65 -0
  146. package/es-custom/components/page-header/page-header-title-breadcrumb.js.map +1 -0
  147. package/es-custom/components/page-header/page-header.d.ts +11 -1
  148. package/es-custom/components/page-header/page-header.js +54 -71
  149. package/es-custom/components/page-header/page-header.js.map +1 -1
  150. package/es-custom/components/page-header/page-header.scss.js +1 -1
  151. package/es-custom/components/page-header/page-header.test.js +136 -2
  152. package/es-custom/components/page-header/page-header.test.js.map +1 -1
  153. package/es-custom/components/page-header/utils.d.ts +32 -0
  154. package/es-custom/components/page-header/utils.js +76 -0
  155. package/es-custom/components/page-header/utils.js.map +1 -0
  156. package/es-custom/components/side-panel/side-panel.d.ts +4 -0
  157. package/es-custom/components/side-panel/side-panel.js +33 -15
  158. package/es-custom/components/side-panel/side-panel.js.map +1 -1
  159. package/es-custom/components/tearsheet/tearsheet.scss.js +1 -1
  160. package/es-custom/components/truncated-text/truncated-text.d.ts +16 -11
  161. package/es-custom/components/truncated-text/truncated-text.js +65 -58
  162. package/es-custom/components/truncated-text/truncated-text.js.map +1 -1
  163. package/es-custom/components/truncated-text/truncated-text.scss.js +1 -1
  164. package/es-custom/components/truncated-text/truncated-text.test.js +6 -6
  165. package/es-custom/components/user-avatar/user-avatar.d.ts +8 -0
  166. package/es-custom/components/user-avatar/user-avatar.js +1 -0
  167. package/es-custom/components/user-avatar/user-avatar.js.map +1 -1
  168. package/es-custom/components/user-avatar/user-avatar.scss.js +1 -1
  169. package/es-custom/packages/ibm-products-web-components/package.json.js +1 -1
  170. package/es-custom/utilities/carousel/carousel.d.ts +8 -0
  171. package/es-custom/utilities/carousel/carousel.js +210 -0
  172. package/es-custom/utilities/carousel/carousel.js.map +1 -0
  173. package/es-custom/utilities/carousel/index.d.ts +8 -0
  174. package/es-custom/utilities/carousel/index.js +9 -0
  175. package/es-custom/utilities/carousel/index.js.map +1 -0
  176. package/es-custom/utilities/carousel/swipeEvents.d.ts +7 -0
  177. package/es-custom/utilities/carousel/swipeEvents.js +109 -0
  178. package/es-custom/utilities/carousel/swipeEvents.js.map +1 -0
  179. package/es-custom/utilities/carousel/types.d.ts +36 -0
  180. package/es-custom/utilities/carousel/types.js +8 -0
  181. package/es-custom/utilities/carousel/types.js.map +1 -0
  182. package/lib/components/interstitial-screen/index.d.ts +13 -0
  183. package/lib/components/interstitial-screen/interstitial-screen-body-item.d.ts +372 -0
  184. package/lib/components/interstitial-screen/interstitial-screen-body.d.ts +384 -0
  185. package/lib/components/interstitial-screen/interstitial-screen-context.d.ts +18 -0
  186. package/lib/components/interstitial-screen/interstitial-screen-footer.d.ts +409 -0
  187. package/lib/components/interstitial-screen/interstitial-screen-header.d.ts +394 -0
  188. package/lib/components/interstitial-screen/interstitial-screen.d.ts +420 -0
  189. package/lib/components/page-header/_story-assets/overflowHandler.d.ts +98 -0
  190. package/lib/components/page-header/_story-assets/set-of-breadcrumbs.d.ts +43 -0
  191. package/lib/components/page-header/context.d.ts +14 -0
  192. package/lib/components/page-header/index.d.ts +2 -0
  193. package/lib/components/page-header/page-header-scroller.d.ts +56 -0
  194. package/lib/components/page-header/page-header-title-breadcrumb.d.ts +20 -0
  195. package/lib/components/page-header/page-header.d.ts +11 -1
  196. package/lib/components/page-header/utils.d.ts +32 -0
  197. package/lib/components/side-panel/side-panel.d.ts +4 -0
  198. package/lib/components/truncated-text/truncated-text.d.ts +16 -11
  199. package/lib/components/user-avatar/user-avatar.d.ts +8 -0
  200. package/lib/utilities/carousel/carousel.d.ts +8 -0
  201. package/lib/utilities/carousel/index.d.ts +8 -0
  202. package/lib/utilities/carousel/swipeEvents.d.ts +7 -0
  203. package/lib/utilities/carousel/types.d.ts +36 -0
  204. package/package.json +7 -6
  205. package/scss/components/interstitial-screen/interstitial-screen-body-item.scss +18 -0
  206. package/scss/components/interstitial-screen/interstitial-screen-body.scss +30 -0
  207. package/scss/components/interstitial-screen/interstitial-screen-footer.scss +40 -0
  208. package/scss/components/interstitial-screen/interstitial-screen-header.scss +13 -0
  209. package/scss/components/interstitial-screen/interstitial-screen.scss +28 -0
  210. package/scss/components/interstitial-screen/story-styles.scss +27 -0
  211. package/scss/components/notification-panel/notification-panel.scss +0 -1
  212. package/scss/components/page-header/_story-assets/set-of-breadcrumbs.scss +41 -0
  213. package/scss/components/page-header/page-header.scss +85 -0
  214. package/scss/components/truncated-text/story-styles.scss +11 -10
  215. package/scss/components/truncated-text/truncated-text.scss +0 -15
  216. package/scss/components/user-avatar/user-avatar.scss +5 -2
@@ -7,12 +7,22 @@
7
7
  * LICENSE file in the root directory of this source tree.
8
8
  */
9
9
  import { LitElement } from 'lit';
10
+ export interface pageHeaderContextType {
11
+ breadcrumbOffset?: number;
12
+ headerOffset?: number;
13
+ fullyCollapsed?: boolean;
14
+ root?: CDSPageHeader | null;
15
+ withContent?: boolean;
16
+ }
10
17
  /**
11
18
  * Page header.
12
19
  * @element c4p-page-header
13
20
  */
14
21
  declare class CDSPageHeader extends LitElement {
15
- updated(): void;
22
+ context: pageHeaderContextType;
23
+ private resizeObserver;
24
+ connectedCallback(): void;
25
+ disconnectedCallback(): void;
16
26
  render(): import("lit-html").TemplateResult<1>;
17
27
  static styles: any;
18
28
  }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright IBM Corp. 2025, 2025
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
+ /**
10
+ * ----------
11
+ * Utilities
12
+ * ----------
13
+ */
14
+ export declare const getHeaderOffset: (el: HTMLElement) => number;
15
+ /**
16
+ * Determines if the given target is scrollable
17
+ *
18
+ * @param {HTMLElement} target
19
+ * @returns {boolean}
20
+ */
21
+ export declare const scrollable: (target: HTMLElement) => boolean;
22
+ /**
23
+ * Recursively looks for the scrollable ancestor
24
+ */
25
+ export declare const scrollableAncestorInner: (target: HTMLElement) => any;
26
+ /**
27
+ * Walks up the parent nodes to identify the first scrollable ancestor
28
+ *
29
+ * @param {HTMLElement} target
30
+ * @returns {HTMLElement}
31
+ */
32
+ export declare const scrollableAncestor: (target: HTMLElement) => any;
@@ -461,6 +461,10 @@ declare class CDSSidePanel extends CDSSidePanel_base {
461
461
  * Sets the close button icon description
462
462
  */
463
463
  closeIconDescription: string;
464
+ /**
465
+ * Sets the close button tooltip alignment
466
+ */
467
+ closeIconTooltipAlignment: string;
464
468
  /**
465
469
  * Determines whether the side panel should render the condensed version (affects action buttons primarily)
466
470
  */
@@ -18,14 +18,6 @@ declare const elementName = "c4p-truncated-text";
18
18
  * @element c4p-truncated-text
19
19
  */
20
20
  export declare class CDSTruncatedText extends LitElement {
21
- /**
22
- * The maximum number of lines to display before truncation.
23
- */
24
- lines: number;
25
- /**
26
- * The string value to be truncated.
27
- */
28
- value: string;
29
21
  /**
30
22
  * Specify how the tooltip should align with the content.
31
23
  */
@@ -34,18 +26,30 @@ export declare class CDSTruncatedText extends LitElement {
34
26
  * Specify whether a auto align functionality should be applied
35
27
  */
36
28
  autoalign: boolean;
29
+ /**
30
+ * The label on the collapse button.
31
+ */
32
+ collapseLabel: string;
37
33
  /**
38
34
  * The label on expand button.
39
35
  */
40
36
  expandLabel: string;
41
37
  /**
42
- * The label on the collapse button.
38
+ * Unique identifier for the element.
43
39
  */
44
- collapseLabel: string;
40
+ id: string;
41
+ /**
42
+ * The maximum number of lines to display before truncation.
43
+ */
44
+ lines: number;
45
45
  /**
46
46
  * The method to display the full text when truncated. Options are "tooltip" or "expand". if not passed, the text would just be truncated with ellipsis.
47
47
  */
48
- with: 'tooltip' | 'expand';
48
+ type: 'tooltip' | 'expand';
49
+ /**
50
+ * The string value to be truncated.
51
+ */
52
+ value: string;
49
53
  private _isOverflowing;
50
54
  private _isExpanded;
51
55
  private _maxHeight;
@@ -61,6 +65,7 @@ export declare class CDSTruncatedText extends LitElement {
61
65
  private _updateMaxHeight;
62
66
  private _setupResizeObserver;
63
67
  private _updateOverflowStatus;
68
+ private _handleKeydown;
64
69
  private _toggleExpansion;
65
70
  private _renderToggleButton;
66
71
  render(): import("lit-html").TemplateResult<1>;
@@ -400,6 +400,14 @@ declare class CDSUseravatar extends CDSUseravatar_base {
400
400
  */
401
401
  theme: any;
402
402
  render(): import("lit-html").TemplateResult<1>;
403
+ static shadowRootOptions: {
404
+ delegatesFocus: boolean;
405
+ mode: ShadowRootMode;
406
+ serializable?: boolean;
407
+ slotAssignment?: SlotAssignmentMode;
408
+ customElements?: CustomElementRegistry;
409
+ registry?: CustomElementRegistry;
410
+ };
403
411
  static styles: any;
404
412
  }
405
413
  export default CDSUseravatar;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright IBM Corp. 2025
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { InitCarousel, Config } from './types';
8
+ export declare const initCarousel: (carouselContainer: HTMLElement, config?: Config) => InitCarousel;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright IBM Corp. 2025
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ export * from './carousel';
8
+ export * from './types';
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Copyright IBM Corp. 2025
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ export declare const registerSwipeEvents: (carousel: HTMLElement, next: () => void, prev: () => void, destroy: boolean) => void;
@@ -0,0 +1,36 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright IBM Corp. 2025
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
+ interface CarouselStackHistory {
10
+ id: number;
11
+ elem: HTMLLIElement;
12
+ }
13
+ type CarouselResponse = {
14
+ currentIndex: number;
15
+ lastIndex: number;
16
+ totalViews: number;
17
+ historyStack: CarouselStackHistory[];
18
+ };
19
+ type ActiveItem = {
20
+ index: number;
21
+ item: HTMLElement | null;
22
+ };
23
+ export type Config = {
24
+ onViewChangeStart?: (args: CarouselResponse) => void;
25
+ onViewChangeEnd?: (args: CarouselResponse) => void;
26
+ excludeSwipeSupport?: boolean;
27
+ };
28
+ interface InitCarousel {
29
+ next: () => void;
30
+ prev: () => void;
31
+ reset: () => void;
32
+ goToIndex: (index: number) => void;
33
+ getActiveItem: () => ActiveItem;
34
+ destroyEvents: (() => void) | null;
35
+ }
36
+ export type { CarouselStackHistory, CarouselResponse, InitCarousel };
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.20.0",
4
+ "version": "0.21.0-rc.0",
5
5
  "license": "Apache-2.0",
6
6
  "main": "es/index.js",
7
7
  "module": "es/index.js",
@@ -54,10 +54,11 @@
54
54
  "coverage": "vitest run --coverage"
55
55
  },
56
56
  "dependencies": {
57
- "@carbon/ibm-products-styles": "^2.67.0",
58
- "@carbon/styles": "1.84.0",
59
- "@carbon/web-components": "2.32.1",
57
+ "@carbon/ibm-products-styles": "^2.68.0-rc.0",
58
+ "@carbon/styles": "1.85.0",
59
+ "@carbon/web-components": "2.33.0",
60
60
  "@ibm/telemetry-js": "^1.9.1",
61
+ "@lit-labs/signals": "^0.1.2",
61
62
  "@lit/context": "^1.1.5",
62
63
  "lit": "^3.1.0"
63
64
  },
@@ -74,7 +75,7 @@
74
75
  "@rollup/plugin-node-resolve": "^16.0.0",
75
76
  "@rollup/plugin-typescript": "^12.1.1",
76
77
  "@storybook/addon-docs": "^9.0.5",
77
- "@storybook/addon-links": "^8.6.12",
78
+ "@storybook/addon-links": "^9.0.0",
78
79
  "@storybook/web-components-vite": "^9.0.12",
79
80
  "@types/jest": "^29.5.13",
80
81
  "@vitest/browser": "^3.2.0",
@@ -101,5 +102,5 @@
101
102
  "vitest": "^3.2.0",
102
103
  "web-component-analyzer": "2.0.0"
103
104
  },
104
- "gitHead": "6b1aa641b80b4df7b6fc51c91dfaaefbfccc1ae6"
105
+ "gitHead": "844a483091e668abe326d27da86108ec05be8860"
105
106
  }
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright IBM Corp. 2025
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
+ @use '../../utilities/carousel/index' as carousel;
10
+ @use '@carbon/styles/scss/spacing' as *;
11
+
12
+ @include carousel.carouselStyles();
13
+
14
+ :host {
15
+ /* stylelint-disable-next-line declaration-no-important */
16
+ box-sizing: border-box !important;
17
+ padding-inline-start: $spacing-07;
18
+ }
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright IBM Corp. 2025
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
+ @use './interstitial-screen';
10
+ @use '../../utilities/carousel/index' as carousel;
11
+ @use '@carbon/styles/scss/spacing' as *;
12
+
13
+ @include carousel.wrapperStyles();
14
+
15
+ $prefix: 'c4p';
16
+
17
+ .#{$prefix}--interstitial-screen--body {
18
+ block-size: 100%;
19
+ }
20
+ .#{$prefix}--interstitial-screen__carousel,
21
+ .#{$prefix}--interstitial-screen__contentWrapper {
22
+ display: flex;
23
+ }
24
+
25
+ :host {
26
+ display: flex;
27
+ flex-grow: 1;
28
+ /* stylelint-disable-next-line declaration-no-important */
29
+ padding-block-end: 0 !important;
30
+ }
@@ -0,0 +1,40 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright IBM Corp. 2025
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
+ @use './interstitial-screen';
10
+ @use '@carbon/styles/scss/spacing' as *;
11
+
12
+ $prefix: 'c4p';
13
+ $carbon-prefix: 'cds';
14
+
15
+ :host {
16
+ display: flex;
17
+ inline-size: 100%;
18
+ }
19
+
20
+ .#{$prefix}--interstitial-screen--footer {
21
+ block-size: 4rem; //as in cds modal footer
22
+ }
23
+ .#{$prefix}--interstitial-screen--footer-controls {
24
+ display: flex;
25
+ }
26
+ #{$carbon-prefix}-button {
27
+ block-size: 100%;
28
+ }
29
+ #{$carbon-prefix}-inline-loading {
30
+ position: absolute;
31
+ inset-block-start: 0;
32
+ }
33
+ .#{$prefix}--interstitial-screen--skip-btn {
34
+ /* stylelint-disable-next-line declaration-no-important */
35
+ padding-inline-start: 0 !important;
36
+
37
+ &::part(button) {
38
+ padding-inline-start: $spacing-07;
39
+ }
40
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright IBM Corp. 2025
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
+ @use './interstitial-screen';
10
+
11
+ :host {
12
+ display: contents;
13
+ }
@@ -0,0 +1,28 @@
1
+ /*
2
+ * Copyright IBM Corp. 2025, 2025
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ $css--plex: true !default;
9
+
10
+ @use 'sass:map';
11
+
12
+ @use '@carbon/styles/scss/reset';
13
+
14
+ @use '@carbon/ibm-products-styles/scss/components/InterstitialScreen/index' as *;
15
+
16
+ $prefix: 'c4p';
17
+ $block-class: #{$prefix}--interstitial-screen;
18
+
19
+ :host([fullscreen]) {
20
+ @extend .#{$block-class}--full-screen;
21
+ .#{$block-class}--container {
22
+ @extend .#{$block-class}--container;
23
+ }
24
+ }
25
+
26
+ .#{$block-class}__body-container {
27
+ padding: 0;
28
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright IBM Corp. 2025
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
+
10
+ @use '@carbon/styles/scss/spacing' as *;
11
+ @use '@carbon/styles/scss/type';
12
+
13
+ $interstitial-block-class: #{c4p}--interstitial-screen;
14
+ $block-class: #{c4p}--interstitial-screen-view-module;
15
+
16
+ .#{$block-class}--enableTag {
17
+ margin-block-start: $spacing-07;
18
+ }
19
+
20
+ .#{$block-class} {
21
+ margin-block: $spacing-07;
22
+ }
23
+ .#{$block-class}--heading {
24
+ @include type.type-style('heading-05');
25
+
26
+ margin-block-end: $spacing-07;
27
+ }
@@ -29,7 +29,6 @@ $block-class-action-set: #{$prefix}--action-set;
29
29
  :host(#{$prefix}-notification-panel) {
30
30
  .c4p--notifications-panel__do-not-disturb-toggle {
31
31
  display: block;
32
- margin-block-start: -$spacing-05;
33
32
  }
34
33
  }
35
34
  :host(#{$prefix}-notification-panel)
@@ -0,0 +1,41 @@
1
+ /*
2
+ * Copyright IBM Corp. 2025, 2025
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ $css--plex: true !default;
9
+
10
+ /* Other Carbon settings. */
11
+ @use 'sass:map';
12
+ @use '@carbon/styles';
13
+ @use '@carbon/styles/scss/themes';
14
+ @use '@carbon/styles/scss/type';
15
+ @use '@carbon/styles/scss/breakpoint' as *;
16
+ @use '@carbon/styles/scss/spacing' as *;
17
+
18
+ $prefix: 'c4p';
19
+ $carbon-prefix: 'cds';
20
+
21
+ $block-class: #{$prefix}--set-of-breadcrumbs;
22
+
23
+ :host {
24
+ display: block;
25
+ inline-size: 100%;
26
+
27
+ // Suppress custom elements until styles are loaded
28
+ #{$carbon-prefix}-breadcrumb:not(:defined),
29
+ #{$carbon-prefix}-overflow-menu:not(:defined) {
30
+ display: none;
31
+ }
32
+
33
+ /* stylelint-disable-next-line selector-type-no-unknown */
34
+ cds-breadcrumb-item {
35
+ flex: none;
36
+ }
37
+
38
+ [data-hidden]:not([data-fixed]) {
39
+ display: none;
40
+ }
41
+ }
@@ -13,6 +13,7 @@ $css--plex: true !default;
13
13
  @use '@carbon/styles/scss/theme' as *;
14
14
  @use '@carbon/styles/scss/type' as *;
15
15
  @use '@carbon/styles/scss/spacing' as *;
16
+ @use '@carbon/styles/scss/motion' as *;
16
17
  @use '@carbon/styles/scss/breakpoint' as *;
17
18
  @use '@carbon/styles/scss/utilities/convert';
18
19
  @use '@carbon/grid';
@@ -77,6 +78,7 @@ $carbon-prefix: 'cds';
77
78
 
78
79
  .#{$prefix}--page-header__breadcrumb-wrapper {
79
80
  display: inline-flex;
81
+ inline-size: 100%;
80
82
  }
81
83
 
82
84
  .#{$prefix}--page-header__breadcrumb__actions {
@@ -282,6 +284,11 @@ $carbon-prefix: 'cds';
282
284
  }
283
285
  }
284
286
 
287
+ :host(#{$prefix}-page-header-tabs) ::slotted([slot='scroller']) {
288
+ position: absolute;
289
+ inset-inline-end: 0;
290
+ }
291
+
285
292
  :host(#{$prefix}-page-header-breadcrumb),
286
293
  :host(#{$prefix}-page-header-content),
287
294
  :host(#{$prefix}-page-header-tabs) {
@@ -297,3 +304,81 @@ $carbon-prefix: 'cds';
297
304
  :host(#{$prefix}-page-header-tabs) ::slotted(#{$carbon-prefix}-tabs) {
298
305
  --tabs-overflow-button-background: $layer-01;
299
306
  }
307
+
308
+ @keyframes page-header-title-breadcrumb-animation {
309
+ 0% {
310
+ opacity: 0;
311
+ transform: translateY($spacing-05);
312
+ }
313
+
314
+ 5% {
315
+ opacity: 1;
316
+ transform: translateY(0);
317
+ }
318
+
319
+ 100% {
320
+ opacity: 1;
321
+ transform: translateY(0);
322
+ }
323
+ }
324
+
325
+ @keyframes page-header-title-breadcrumb-animation-reduced-motion {
326
+ 0% {
327
+ opacity: 0;
328
+ }
329
+
330
+ 5% {
331
+ opacity: 1;
332
+ }
333
+
334
+ 100% {
335
+ opacity: 1;
336
+ }
337
+ }
338
+
339
+ :host(#{$prefix}-page-header-title-breadcrumb) {
340
+ opacity: 0;
341
+ transform: translateY($spacing-05);
342
+ transition:
343
+ /* stylelint-disable-next-line */
344
+ transform motion(standard, productive) $duration-moderate-01,
345
+ opacity motion(standard, productive) $duration-moderate-01;
346
+ // Target browsers that do not yet support animation-timeline: scroll()
347
+ @supports not (animation-timeline: scroll()) {
348
+ &.#{$prefix}--page-header-title-breadcrumb-show {
349
+ opacity: 1;
350
+ transform: translateY(0);
351
+ }
352
+ @media (prefers-reduced-motion: reduce) {
353
+ transform: translateY(0);
354
+ /* stylelint-disable-next-line */
355
+ transition: opacity motion(standard, productive) $duration-moderate-01;
356
+ }
357
+ }
358
+ }
359
+
360
+ :host(
361
+ #{$prefix}-page-header-title-breadcrumb.#{$prefix}--page-header-title-breadcrumb-show__with-content
362
+ ) {
363
+ // `animation-timeline: scroll()` only currently supported in Chromium based browsers
364
+ @supports (animation-timeline: scroll()) {
365
+ // Show by default should not have any animation, this means
366
+ // there was not a page header content element provided
367
+ animation-direction: alternate;
368
+ animation-duration: 1ms; /* Firefox requires this to apply the animation */
369
+ animation-name: page-header-title-breadcrumb-animation;
370
+ animation-timeline: scroll(block nearest);
371
+
372
+ @media (prefers-reduced-motion: reduce) {
373
+ animation-name: page-header-title-breadcrumb-animation-reduced-motion;
374
+ transform: translateY(0);
375
+ }
376
+ }
377
+ }
378
+
379
+ :host(
380
+ #{$prefix}-page-header-title-breadcrumb.#{$prefix}--page-header-title-breadcrumb-show__by-default
381
+ ) {
382
+ opacity: 1;
383
+ transform: translateY(0);
384
+ }
@@ -1,13 +1,14 @@
1
- /*
2
- * Copyright IBM Corp. 2025, 2025
3
- *
4
- * This source code is licensed under the Apache-2.0 license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
1
+ //
2
+ // Copyright IBM Corp. 2025
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+ @use '@carbon/styles/scss/type';
7
8
 
8
- @use '@carbon/styles/scss/theme' as *;
9
+ .truncated-text-stories__viewport {
10
+ @include type.type-style('body-01');
9
11
 
10
- // $story-prefix: 'truncated-text-stories__';
11
- #main-content {
12
- padding: 12rem;
12
+ inline-size: 100%;
13
+ max-inline-size: 900px;
13
14
  }
@@ -79,25 +79,10 @@ $block-class: #{$prefix}--truncated-text;
79
79
  }
80
80
 
81
81
  .#{$block-class}_button-expand {
82
- position: absolute;
83
- background-color: $background;
84
- inset-block-end: 0;
85
- inset-inline-end: 0;
86
-
87
82
  &.#{$block-class}_button-layered {
88
83
  background-color: $layer;
89
84
  }
90
85
 
91
- &::before {
92
- position: absolute;
93
- block-size: 100%;
94
- color: $text-primary;
95
- content: '...';
96
- inline-size: 1em; // use em so truncation element scales with parent font size
97
- inset-inline-start: -1em; // positions pseudo element before button without overlap across font sizes
98
- pointer-events: none;
99
- }
100
-
101
86
  // Gradient LTR
102
87
  &:dir(ltr)::before {
103
88
  @include gradient-bg(90deg, $background);
@@ -28,8 +28,11 @@ $carbon-prefix: 'cds';
28
28
  $block-class: #{$prefix}--user-avatar;
29
29
 
30
30
  :host(#{$prefix}-user-avatar) {
31
- @extend .#{$block-class};
32
- @extend .#{$block-class}__tooltip;
31
+ display: inline-block;
32
+
33
+ .#{$block-class} {
34
+ box-sizing: border-box;
35
+ }
33
36
  }
34
37
 
35
38
  :host(#{$prefix}-user-avatar) .#{$block-class}--xl {