@carbon/ibm-products-web-components 0.26.0-rc.0 → 0.27.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 (61) hide show
  1. package/custom-elements.json +109 -0
  2. package/es/components/checklist/checklist-item.d.ts +1 -0
  3. package/es/components/checklist/checklist-item.js +8 -2
  4. package/es/components/checklist/checklist-item.js.map +1 -1
  5. package/es/components/checklist/checklist.d.ts +2 -0
  6. package/es/components/checklist/checklist.js +15 -3
  7. package/es/components/checklist/checklist.js.map +1 -1
  8. package/es/components/coachmark/coachmark-beacon/coachmark-beacon.d.ts +397 -0
  9. package/es/components/coachmark/coachmark-beacon/coachmark-beacon.js +126 -0
  10. package/es/components/coachmark/coachmark-beacon/coachmark-beacon.js.map +1 -0
  11. package/es/components/coachmark/coachmark-beacon/coachmark-beacon.scss.js +13 -0
  12. package/es/components/coachmark/coachmark-beacon/coachmark-beacon.scss.js.map +1 -0
  13. package/es/components/coachmark/coachmark-beacon/coachmark-beacon.test.d.ts +9 -0
  14. package/es/components/coachmark/coachmark-beacon/coachmark-beacon.test.js +70 -0
  15. package/es/components/coachmark/coachmark-beacon/coachmark-beacon.test.js.map +1 -0
  16. package/es/components/coachmark/coachmark-beacon/defs.d.ts +14 -0
  17. package/es/components/coachmark/coachmark-beacon/defs.js +25 -0
  18. package/es/components/coachmark/coachmark-beacon/defs.js.map +1 -0
  19. package/es/components/coachmark/coachmark-beacon/index.d.ts +9 -0
  20. package/es/components/coachmark/coachmark-beacon/index.js +9 -0
  21. package/es/components/coachmark/coachmark-beacon/index.js.map +1 -0
  22. package/es/components/page-header/page-header-tabs.js +1 -1
  23. package/es/components/page-header/page-header.scss.js +1 -1
  24. package/es/components/side-panel/side-panel.scss.js +1 -1
  25. package/es/packages/ibm-products-web-components/package.json.js +1 -1
  26. package/es-custom/components/checklist/checklist-item.d.ts +1 -0
  27. package/es-custom/components/checklist/checklist-item.js +8 -2
  28. package/es-custom/components/checklist/checklist-item.js.map +1 -1
  29. package/es-custom/components/checklist/checklist.d.ts +2 -0
  30. package/es-custom/components/checklist/checklist.js +15 -3
  31. package/es-custom/components/checklist/checklist.js.map +1 -1
  32. package/es-custom/components/coachmark/coachmark-beacon/coachmark-beacon.d.ts +397 -0
  33. package/es-custom/components/coachmark/coachmark-beacon/coachmark-beacon.js +126 -0
  34. package/es-custom/components/coachmark/coachmark-beacon/coachmark-beacon.js.map +1 -0
  35. package/es-custom/components/coachmark/coachmark-beacon/coachmark-beacon.scss.js +13 -0
  36. package/es-custom/components/coachmark/coachmark-beacon/coachmark-beacon.scss.js.map +1 -0
  37. package/es-custom/components/coachmark/coachmark-beacon/coachmark-beacon.test.d.ts +9 -0
  38. package/es-custom/components/coachmark/coachmark-beacon/coachmark-beacon.test.js +70 -0
  39. package/es-custom/components/coachmark/coachmark-beacon/coachmark-beacon.test.js.map +1 -0
  40. package/es-custom/components/coachmark/coachmark-beacon/defs.d.ts +14 -0
  41. package/es-custom/components/coachmark/coachmark-beacon/defs.js +25 -0
  42. package/es-custom/components/coachmark/coachmark-beacon/defs.js.map +1 -0
  43. package/es-custom/components/coachmark/coachmark-beacon/index.d.ts +9 -0
  44. package/es-custom/components/coachmark/coachmark-beacon/index.js +9 -0
  45. package/es-custom/components/coachmark/coachmark-beacon/index.js.map +1 -0
  46. package/es-custom/components/page-header/page-header-tabs.js +1 -1
  47. package/es-custom/components/page-header/page-header.scss.js +1 -1
  48. package/es-custom/components/side-panel/side-panel.scss.js +1 -1
  49. package/es-custom/packages/ibm-products-web-components/package.json.js +1 -1
  50. package/lib/components/checklist/checklist-item.d.ts +1 -0
  51. package/lib/components/checklist/checklist.d.ts +2 -0
  52. package/lib/components/coachmark/coachmark-beacon/coachmark-beacon.d.ts +397 -0
  53. package/lib/components/coachmark/coachmark-beacon/coachmark-beacon.test.d.ts +9 -0
  54. package/lib/components/coachmark/coachmark-beacon/defs.d.ts +14 -0
  55. package/lib/components/coachmark/coachmark-beacon/defs.js +25 -0
  56. package/lib/components/coachmark/coachmark-beacon/defs.js.map +1 -0
  57. package/lib/components/coachmark/coachmark-beacon/index.d.ts +9 -0
  58. package/package.json +8 -8
  59. package/scss/components/coachmark/coachmark-beacon/coachmark-beacon.scss +90 -0
  60. package/scss/components/page-header/page-header.scss +3 -1
  61. package/telemetry.yml +2 -0
@@ -0,0 +1,397 @@
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
+ import { LitElement } from 'lit';
10
+ import '@carbon/web-components/es-custom/components/button/button.js';
11
+ import { BEACON_KIND } from './defs';
12
+ declare const CDSCoachmarkBeacon_base: {
13
+ new (...args: any[]): {
14
+ _handles: Set<import("@carbon/web-components/es/globals/internal/handle").default>;
15
+ connectedCallback(): void;
16
+ disconnectedCallback(): void;
17
+ accessKey: string;
18
+ readonly accessKeyLabel: string;
19
+ autocapitalize: string;
20
+ dir: string;
21
+ draggable: boolean;
22
+ hidden: boolean;
23
+ inert: boolean;
24
+ innerText: string;
25
+ lang: string;
26
+ readonly offsetHeight: number;
27
+ readonly offsetLeft: number;
28
+ readonly offsetParent: Element | null;
29
+ readonly offsetTop: number;
30
+ readonly offsetWidth: number;
31
+ outerText: string;
32
+ popover: string | null;
33
+ spellcheck: boolean;
34
+ title: string;
35
+ translate: boolean;
36
+ writingSuggestions: string;
37
+ attachInternals(): ElementInternals;
38
+ click(): void;
39
+ hidePopover(): void;
40
+ showPopover(): void;
41
+ togglePopover(force?: boolean): boolean;
42
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
43
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
44
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
45
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
46
+ readonly attributes: NamedNodeMap;
47
+ readonly classList: DOMTokenList;
48
+ className: string;
49
+ readonly clientHeight: number;
50
+ readonly clientLeft: number;
51
+ readonly clientTop: number;
52
+ readonly clientWidth: number;
53
+ readonly currentCSSZoom: number;
54
+ id: string;
55
+ innerHTML: string;
56
+ readonly localName: string;
57
+ readonly namespaceURI: string | null;
58
+ onfullscreenchange: ((this: Element, ev: Event) => any) | null;
59
+ onfullscreenerror: ((this: Element, ev: Event) => any) | null;
60
+ outerHTML: string;
61
+ readonly ownerDocument: Document;
62
+ readonly part: DOMTokenList;
63
+ readonly prefix: string | null;
64
+ readonly scrollHeight: number;
65
+ scrollLeft: number;
66
+ scrollTop: number;
67
+ readonly scrollWidth: number;
68
+ readonly shadowRoot: ShadowRoot | null;
69
+ slot: string;
70
+ readonly tagName: string;
71
+ attachShadow(init: ShadowRootInit): ShadowRoot;
72
+ checkVisibility(options?: CheckVisibilityOptions): boolean;
73
+ closest<K extends keyof HTMLElementTagNameMap>(selector: K): HTMLElementTagNameMap[K] | null;
74
+ closest<K extends keyof SVGElementTagNameMap>(selector: K): SVGElementTagNameMap[K] | null;
75
+ closest<K extends keyof MathMLElementTagNameMap>(selector: K): MathMLElementTagNameMap[K] | null;
76
+ closest<E extends Element = Element>(selectors: string): E | null;
77
+ computedStyleMap(): StylePropertyMapReadOnly;
78
+ getAttribute(qualifiedName: string): string | null;
79
+ getAttributeNS(namespace: string | null, localName: string): string | null;
80
+ getAttributeNames(): string[];
81
+ getAttributeNode(qualifiedName: string): Attr | null;
82
+ getAttributeNodeNS(namespace: string | null, localName: string): Attr | null;
83
+ getBoundingClientRect(): DOMRect;
84
+ getClientRects(): DOMRectList;
85
+ getElementsByClassName(classNames: string): HTMLCollectionOf<Element>;
86
+ getElementsByTagName<K extends keyof HTMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementTagNameMap[K]>;
87
+ getElementsByTagName<K extends keyof SVGElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<SVGElementTagNameMap[K]>;
88
+ getElementsByTagName<K extends keyof MathMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<MathMLElementTagNameMap[K]>;
89
+ getElementsByTagName<K extends keyof HTMLElementDeprecatedTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementDeprecatedTagNameMap[K]>;
90
+ getElementsByTagName(qualifiedName: string): HTMLCollectionOf<Element>;
91
+ getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1999/xhtml", localName: string): HTMLCollectionOf<HTMLElement>;
92
+ getElementsByTagNameNS(namespaceURI: "http://www.w3.org/2000/svg", localName: string): HTMLCollectionOf<SVGElement>;
93
+ getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1998/Math/MathML", localName: string): HTMLCollectionOf<MathMLElement>;
94
+ getElementsByTagNameNS(namespace: string | null, localName: string): HTMLCollectionOf<Element>;
95
+ getHTML(options?: GetHTMLOptions): string;
96
+ hasAttribute(qualifiedName: string): boolean;
97
+ hasAttributeNS(namespace: string | null, localName: string): boolean;
98
+ hasAttributes(): boolean;
99
+ hasPointerCapture(pointerId: number): boolean;
100
+ insertAdjacentElement(where: InsertPosition, element: Element): Element | null;
101
+ insertAdjacentHTML(position: InsertPosition, string: string): void;
102
+ insertAdjacentText(where: InsertPosition, data: string): void;
103
+ matches(selectors: string): boolean;
104
+ releasePointerCapture(pointerId: number): void;
105
+ removeAttribute(qualifiedName: string): void;
106
+ removeAttributeNS(namespace: string | null, localName: string): void;
107
+ removeAttributeNode(attr: Attr): Attr;
108
+ requestFullscreen(options?: FullscreenOptions): Promise<void>;
109
+ requestPointerLock(options?: PointerLockOptions): Promise<void>;
110
+ scroll(options?: ScrollToOptions): void;
111
+ scroll(x: number, y: number): void;
112
+ scrollBy(options?: ScrollToOptions): void;
113
+ scrollBy(x: number, y: number): void;
114
+ scrollIntoView(arg?: boolean | ScrollIntoViewOptions): void;
115
+ scrollTo(options?: ScrollToOptions): void;
116
+ scrollTo(x: number, y: number): void;
117
+ setAttribute(qualifiedName: string, value: string): void;
118
+ setAttributeNS(namespace: string | null, qualifiedName: string, value: string): void;
119
+ setAttributeNode(attr: Attr): Attr | null;
120
+ setAttributeNodeNS(attr: Attr): Attr | null;
121
+ setHTMLUnsafe(html: string): void;
122
+ setPointerCapture(pointerId: number): void;
123
+ toggleAttribute(qualifiedName: string, force?: boolean): boolean;
124
+ webkitMatchesSelector(selectors: string): boolean;
125
+ readonly baseURI: string;
126
+ readonly childNodes: NodeListOf<ChildNode>;
127
+ readonly firstChild: ChildNode | null;
128
+ readonly isConnected: boolean;
129
+ readonly lastChild: ChildNode | null;
130
+ readonly nextSibling: ChildNode | null;
131
+ readonly nodeName: string;
132
+ readonly nodeType: number;
133
+ nodeValue: string | null;
134
+ readonly parentElement: HTMLElement | null;
135
+ readonly parentNode: ParentNode | null;
136
+ readonly previousSibling: ChildNode | null;
137
+ textContent: string | null;
138
+ appendChild<T_1 extends Node>(node: T_1): T_1;
139
+ cloneNode(deep?: boolean): Node;
140
+ compareDocumentPosition(other: Node): number;
141
+ contains(other: Node | null): boolean;
142
+ getRootNode(options?: GetRootNodeOptions): Node;
143
+ hasChildNodes(): boolean;
144
+ insertBefore<T_1 extends Node>(node: T_1, child: Node | null): T_1;
145
+ isDefaultNamespace(namespace: string | null): boolean;
146
+ isEqualNode(otherNode: Node | null): boolean;
147
+ isSameNode(otherNode: Node | null): boolean;
148
+ lookupNamespaceURI(prefix: string | null): string | null;
149
+ lookupPrefix(namespace: string | null): string | null;
150
+ normalize(): void;
151
+ removeChild<T_1 extends Node>(child: T_1): T_1;
152
+ replaceChild<T_1 extends Node>(node: Node, child: T_1): T_1;
153
+ readonly ELEMENT_NODE: 1;
154
+ readonly ATTRIBUTE_NODE: 2;
155
+ readonly TEXT_NODE: 3;
156
+ readonly CDATA_SECTION_NODE: 4;
157
+ readonly ENTITY_REFERENCE_NODE: 5;
158
+ readonly ENTITY_NODE: 6;
159
+ readonly PROCESSING_INSTRUCTION_NODE: 7;
160
+ readonly COMMENT_NODE: 8;
161
+ readonly DOCUMENT_NODE: 9;
162
+ readonly DOCUMENT_TYPE_NODE: 10;
163
+ readonly DOCUMENT_FRAGMENT_NODE: 11;
164
+ readonly NOTATION_NODE: 12;
165
+ readonly DOCUMENT_POSITION_DISCONNECTED: 1;
166
+ readonly DOCUMENT_POSITION_PRECEDING: 2;
167
+ readonly DOCUMENT_POSITION_FOLLOWING: 4;
168
+ readonly DOCUMENT_POSITION_CONTAINS: 8;
169
+ readonly DOCUMENT_POSITION_CONTAINED_BY: 16;
170
+ readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 32;
171
+ dispatchEvent(event: Event): boolean;
172
+ ariaAtomic: string | null;
173
+ ariaAutoComplete: string | null;
174
+ ariaBrailleLabel: string | null;
175
+ ariaBrailleRoleDescription: string | null;
176
+ ariaBusy: string | null;
177
+ ariaChecked: string | null;
178
+ ariaColCount: string | null;
179
+ ariaColIndex: string | null;
180
+ ariaColIndexText: string | null;
181
+ ariaColSpan: string | null;
182
+ ariaCurrent: string | null;
183
+ ariaDescription: string | null;
184
+ ariaDisabled: string | null;
185
+ ariaExpanded: string | null;
186
+ ariaHasPopup: string | null;
187
+ ariaHidden: string | null;
188
+ ariaInvalid: string | null;
189
+ ariaKeyShortcuts: string | null;
190
+ ariaLabel: string | null;
191
+ ariaLevel: string | null;
192
+ ariaLive: string | null;
193
+ ariaModal: string | null;
194
+ ariaMultiLine: string | null;
195
+ ariaMultiSelectable: string | null;
196
+ ariaOrientation: string | null;
197
+ ariaPlaceholder: string | null;
198
+ ariaPosInSet: string | null;
199
+ ariaPressed: string | null;
200
+ ariaReadOnly: string | null;
201
+ ariaRequired: string | null;
202
+ ariaRoleDescription: string | null;
203
+ ariaRowCount: string | null;
204
+ ariaRowIndex: string | null;
205
+ ariaRowIndexText: string | null;
206
+ ariaRowSpan: string | null;
207
+ ariaSelected: string | null;
208
+ ariaSetSize: string | null;
209
+ ariaSort: string | null;
210
+ ariaValueMax: string | null;
211
+ ariaValueMin: string | null;
212
+ ariaValueNow: string | null;
213
+ ariaValueText: string | null;
214
+ role: string | null;
215
+ animate(keyframes: Keyframe[] | PropertyIndexedKeyframes | null, options?: number | KeyframeAnimationOptions): Animation;
216
+ getAnimations(options?: GetAnimationsOptions): Animation[];
217
+ after(...nodes: (Node | string)[]): void;
218
+ before(...nodes: (Node | string)[]): void;
219
+ remove(): void;
220
+ replaceWith(...nodes: (Node | string)[]): void;
221
+ readonly nextElementSibling: Element | null;
222
+ readonly previousElementSibling: Element | null;
223
+ readonly childElementCount: number;
224
+ readonly children: HTMLCollection;
225
+ readonly firstElementChild: Element | null;
226
+ readonly lastElementChild: Element | null;
227
+ append(...nodes: (Node | string)[]): void;
228
+ prepend(...nodes: (Node | string)[]): void;
229
+ querySelector<K extends keyof HTMLElementTagNameMap>(selectors: K): HTMLElementTagNameMap[K] | null;
230
+ querySelector<K extends keyof SVGElementTagNameMap>(selectors: K): SVGElementTagNameMap[K] | null;
231
+ querySelector<K extends keyof MathMLElementTagNameMap>(selectors: K): MathMLElementTagNameMap[K] | null;
232
+ querySelector<K extends keyof HTMLElementDeprecatedTagNameMap>(selectors: K): HTMLElementDeprecatedTagNameMap[K] | null;
233
+ querySelector<E extends Element = Element>(selectors: string): E | null;
234
+ querySelectorAll<K extends keyof HTMLElementTagNameMap>(selectors: K): NodeListOf<HTMLElementTagNameMap[K]>;
235
+ querySelectorAll<K extends keyof SVGElementTagNameMap>(selectors: K): NodeListOf<SVGElementTagNameMap[K]>;
236
+ querySelectorAll<K extends keyof MathMLElementTagNameMap>(selectors: K): NodeListOf<MathMLElementTagNameMap[K]>;
237
+ querySelectorAll<K extends keyof HTMLElementDeprecatedTagNameMap>(selectors: K): NodeListOf<HTMLElementDeprecatedTagNameMap[K]>;
238
+ querySelectorAll<E extends Element = Element>(selectors: string): NodeListOf<E>;
239
+ replaceChildren(...nodes: (Node | string)[]): void;
240
+ readonly assignedSlot: HTMLSlotElement | null;
241
+ readonly attributeStyleMap: StylePropertyMap;
242
+ readonly style: CSSStyleDeclaration;
243
+ contentEditable: string;
244
+ enterKeyHint: string;
245
+ inputMode: string;
246
+ readonly isContentEditable: boolean;
247
+ onabort: ((this: GlobalEventHandlers, ev: UIEvent) => any) | null;
248
+ onanimationcancel: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
249
+ onanimationend: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
250
+ onanimationiteration: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
251
+ onanimationstart: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
252
+ onauxclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
253
+ onbeforeinput: ((this: GlobalEventHandlers, ev: InputEvent) => any) | null;
254
+ onbeforetoggle: ((this: GlobalEventHandlers, ev: Event) => any) | null;
255
+ onblur: ((this: GlobalEventHandlers, ev: FocusEvent) => any) | null;
256
+ oncancel: ((this: GlobalEventHandlers, ev: Event) => any) | null;
257
+ oncanplay: ((this: GlobalEventHandlers, ev: Event) => any) | null;
258
+ oncanplaythrough: ((this: GlobalEventHandlers, ev: Event) => any) | null;
259
+ onchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
260
+ onclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
261
+ onclose: ((this: GlobalEventHandlers, ev: Event) => any) | null;
262
+ oncontextlost: ((this: GlobalEventHandlers, ev: Event) => any) | null;
263
+ oncontextmenu: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
264
+ oncontextrestored: ((this: GlobalEventHandlers, ev: Event) => any) | null;
265
+ oncopy: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;
266
+ oncuechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
267
+ oncut: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;
268
+ ondblclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
269
+ ondrag: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
270
+ ondragend: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
271
+ ondragenter: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
272
+ ondragleave: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
273
+ ondragover: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
274
+ ondragstart: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
275
+ ondrop: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
276
+ ondurationchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
277
+ onemptied: ((this: GlobalEventHandlers, ev: Event) => any) | null;
278
+ onended: ((this: GlobalEventHandlers, ev: Event) => any) | null;
279
+ onerror: OnErrorEventHandler;
280
+ onfocus: ((this: GlobalEventHandlers, ev: FocusEvent) => any) | null;
281
+ onformdata: ((this: GlobalEventHandlers, ev: FormDataEvent) => any) | null;
282
+ ongotpointercapture: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
283
+ oninput: ((this: GlobalEventHandlers, ev: Event) => any) | null;
284
+ oninvalid: ((this: GlobalEventHandlers, ev: Event) => any) | null;
285
+ onkeydown: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null;
286
+ onkeypress: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null;
287
+ onkeyup: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null;
288
+ onload: ((this: GlobalEventHandlers, ev: Event) => any) | null;
289
+ onloadeddata: ((this: GlobalEventHandlers, ev: Event) => any) | null;
290
+ onloadedmetadata: ((this: GlobalEventHandlers, ev: Event) => any) | null;
291
+ onloadstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
292
+ onlostpointercapture: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
293
+ onmousedown: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
294
+ onmouseenter: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
295
+ onmouseleave: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
296
+ onmousemove: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
297
+ onmouseout: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
298
+ onmouseover: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
299
+ onmouseup: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
300
+ onpaste: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;
301
+ onpause: ((this: GlobalEventHandlers, ev: Event) => any) | null;
302
+ onplay: ((this: GlobalEventHandlers, ev: Event) => any) | null;
303
+ onplaying: ((this: GlobalEventHandlers, ev: Event) => any) | null;
304
+ onpointercancel: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
305
+ onpointerdown: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
306
+ onpointerenter: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
307
+ onpointerleave: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
308
+ onpointermove: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
309
+ onpointerout: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
310
+ onpointerover: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
311
+ onpointerup: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
312
+ onprogress: ((this: GlobalEventHandlers, ev: ProgressEvent) => any) | null;
313
+ onratechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
314
+ onreset: ((this: GlobalEventHandlers, ev: Event) => any) | null;
315
+ onresize: ((this: GlobalEventHandlers, ev: UIEvent) => any) | null;
316
+ onscroll: ((this: GlobalEventHandlers, ev: Event) => any) | null;
317
+ onscrollend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
318
+ onsecuritypolicyviolation: ((this: GlobalEventHandlers, ev: SecurityPolicyViolationEvent) => any) | null;
319
+ onseeked: ((this: GlobalEventHandlers, ev: Event) => any) | null;
320
+ onseeking: ((this: GlobalEventHandlers, ev: Event) => any) | null;
321
+ onselect: ((this: GlobalEventHandlers, ev: Event) => any) | null;
322
+ onselectionchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
323
+ onselectstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
324
+ onslotchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
325
+ onstalled: ((this: GlobalEventHandlers, ev: Event) => any) | null;
326
+ onsubmit: ((this: GlobalEventHandlers, ev: SubmitEvent) => any) | null;
327
+ onsuspend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
328
+ ontimeupdate: ((this: GlobalEventHandlers, ev: Event) => any) | null;
329
+ ontoggle: ((this: GlobalEventHandlers, ev: Event) => any) | null;
330
+ ontouchcancel?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;
331
+ ontouchend?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;
332
+ ontouchmove?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;
333
+ ontouchstart?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;
334
+ ontransitioncancel: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;
335
+ ontransitionend: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;
336
+ ontransitionrun: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;
337
+ ontransitionstart: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;
338
+ onvolumechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
339
+ onwaiting: ((this: GlobalEventHandlers, ev: Event) => any) | null;
340
+ onwebkitanimationend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
341
+ onwebkitanimationiteration: ((this: GlobalEventHandlers, ev: Event) => any) | null;
342
+ onwebkitanimationstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
343
+ onwebkittransitionend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
344
+ onwheel: ((this: GlobalEventHandlers, ev: WheelEvent) => any) | null;
345
+ autofocus: boolean;
346
+ readonly dataset: DOMStringMap;
347
+ nonce?: string;
348
+ tabIndex: number;
349
+ blur(): void;
350
+ focus(options?: FocusOptions): void;
351
+ };
352
+ _hostListeners: {
353
+ [listenerName: string]: {
354
+ [type: string]: {
355
+ options?: boolean | AddEventListenerOptions;
356
+ };
357
+ };
358
+ };
359
+ } & typeof LitElement;
360
+ /**
361
+ * CoachmarkBeacon.
362
+ *
363
+ * @element c4p-coachmark-beacon
364
+ * @fires c4p-coachmark-beacon-clicked Custom event fired when beacon is clicked
365
+ * */
366
+ declare class CDSCoachmarkBeacon extends CDSCoachmarkBeacon_base {
367
+ /**
368
+ * What style of beacon.
369
+ * BEACON_KIND is an enum from the Coachmark and can be used for this value.
370
+ * @see {@Link BEACON_KIND}
371
+ */
372
+ kind?: BEACON_KIND;
373
+ /**
374
+ * The aria label.
375
+ */
376
+ label: string;
377
+ /**
378
+ * id for the coachmark beacon
379
+ */
380
+ id: string;
381
+ private expanded;
382
+ firstUpdated(): void;
383
+ private _handleClick;
384
+ private handleOutsideClick;
385
+ render(): import("lit-html").TemplateResult<1>;
386
+ static shadowRootOptions: {
387
+ delegatesFocus: boolean;
388
+ mode: ShadowRootMode;
389
+ serializable?: boolean;
390
+ slotAssignment?: SlotAssignmentMode;
391
+ customElements?: CustomElementRegistry;
392
+ registry?: CustomElementRegistry;
393
+ };
394
+ static get beaconClicked(): string;
395
+ static styles: any;
396
+ }
397
+ export default CDSCoachmarkBeacon;
@@ -0,0 +1,126 @@
1
+ /**
2
+ * Copyright IBM Corp. 2024
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
+ import { __decorate } from 'tslib';
9
+ import { LitElement, html } from 'lit';
10
+ import { property, state } from 'lit/decorators.js';
11
+ import { prefix } from '../../../globals/settings.js';
12
+ import HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';
13
+ import { carbonElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';
14
+ import styles from './coachmark-beacon.scss.js';
15
+ import '@carbon/web-components/es-custom/components/button/button.js';
16
+ import { BEACON_KIND } from './defs.js';
17
+
18
+ /**
19
+ * @license
20
+ *
21
+ * Copyright IBM Corp. 2025
22
+ *
23
+ * This source code is licensed under the Apache-2.0 license found in the
24
+ * LICENSE file in the root directory of this source tree.
25
+ */
26
+ const blockClass = `${prefix}--coachmark-beacon`;
27
+ /**
28
+ * CoachmarkBeacon.
29
+ *
30
+ * @element c4p-coachmark-beacon
31
+ * @fires c4p-coachmark-beacon-clicked Custom event fired when beacon is clicked
32
+ * */
33
+ let CDSCoachmarkBeacon = class CDSCoachmarkBeacon extends HostListenerMixin(LitElement) {
34
+ constructor() {
35
+ super(...arguments);
36
+ /**
37
+ * What style of beacon.
38
+ * BEACON_KIND is an enum from the Coachmark and can be used for this value.
39
+ * @see {@Link BEACON_KIND}
40
+ */
41
+ this.kind = BEACON_KIND.DEFAULT;
42
+ /**
43
+ * The aria label.
44
+ */
45
+ this.label = 'Show information';
46
+ /**
47
+ * id for the coachmark beacon
48
+ */
49
+ this.id = crypto.randomUUID();
50
+ this.expanded = false;
51
+ this.handleOutsideClick = (event) => {
52
+ if (!this.contains(event.target)) {
53
+ this.expanded = false;
54
+ document.removeEventListener('click', this.handleOutsideClick);
55
+ }
56
+ };
57
+ }
58
+ firstUpdated() {
59
+ this.classList.add(blockClass);
60
+ if (this.kind) {
61
+ this.classList.add(`${blockClass}-${this.kind}`);
62
+ }
63
+ }
64
+ _handleClick() {
65
+ this.expanded = !this.expanded;
66
+ if (this.expanded) {
67
+ document.addEventListener('click', this.handleOutsideClick);
68
+ }
69
+ else {
70
+ document.removeEventListener('click', this.handleOutsideClick);
71
+ }
72
+ this.dispatchEvent(new CustomEvent(this.constructor.beaconClicked, {
73
+ detail: { expanded: this.expanded },
74
+ bubbles: true,
75
+ composed: true,
76
+ }));
77
+ }
78
+ render() {
79
+ return html `
80
+ <cds-custom-button
81
+ class="${blockClass}__target"
82
+ type="button"
83
+ id=${this.id}
84
+ aria-expanded="${String(this.expanded)}"
85
+ @click=${this._handleClick}
86
+ >
87
+ <slot name="icon">
88
+ <svg
89
+ class="${blockClass}__center"
90
+ aria-label=${this.label}
91
+ width="76"
92
+ height="76"
93
+ viewBox="0 0 76 76"
94
+ >
95
+ <title>${this.label}</title>
96
+ <circle r="1" cx="36" cy="36"></circle>
97
+ </svg>
98
+ </slot>
99
+ </cds-custom-button>
100
+ `;
101
+ }
102
+ static get beaconClicked() {
103
+ return `${prefix}-coachmark-beacon-clicked`;
104
+ }
105
+ };
106
+ CDSCoachmarkBeacon.shadowRootOptions = Object.assign(Object.assign({}, LitElement.shadowRootOptions), { delegatesFocus: true });
107
+ CDSCoachmarkBeacon.styles = styles;
108
+ __decorate([
109
+ property({ reflect: true })
110
+ ], CDSCoachmarkBeacon.prototype, "kind", void 0);
111
+ __decorate([
112
+ property({ type: String, reflect: true })
113
+ ], CDSCoachmarkBeacon.prototype, "label", void 0);
114
+ __decorate([
115
+ property({ type: String, reflect: true })
116
+ ], CDSCoachmarkBeacon.prototype, "id", void 0);
117
+ __decorate([
118
+ state()
119
+ ], CDSCoachmarkBeacon.prototype, "expanded", void 0);
120
+ CDSCoachmarkBeacon = __decorate([
121
+ carbonElement(`${prefix}-coachmark-beacon`)
122
+ ], CDSCoachmarkBeacon);
123
+ var CDSCoachmarkBeacon$1 = CDSCoachmarkBeacon;
124
+
125
+ export { CDSCoachmarkBeacon$1 as default };
126
+ //# sourceMappingURL=coachmark-beacon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coachmark-beacon.js","sources":["../../../../src/components/coachmark/coachmark-beacon/coachmark-beacon.ts"],"sourcesContent":[null],"names":["customElement"],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Copyright IBM Corp. 2024
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
+ import { css } from 'lit';
9
+
10
+ var styles = css([".c4p--coachmark-beacon{position:relative}.c4p--coachmark-beacon-default .c4p--coachmark-beacon__target:before{display:none}.c4p--coachmark-beacon-default .c4p--coachmark-beacon__target:after{background-color:#4589ff;block-size:.75rem;border-radius:50%;content:\"\";inline-size:.75rem;inset-block-start:.625rem;inset-inline-start:.625rem;position:absolute}.c4p--coachmark-beacon-default .c4p--coachmark-beacon__target:focus{outline:transparent}.c4p--coachmark-beacon-default .c4p--coachmark-beacon__target:focus:before{block-size:18px;border-radius:100%;content:\"\";display:block;inline-size:18px;inset-block-start:7px;inset-inline-start:7px;outline:.125rem var(--cds-focus,#0f62fe) solid;position:absolute}.c4p--coachmark-beacon .c4p--coachmark-beacon__target{background-color:transparent;block-size:2rem;border:none;border-radius:50%;cursor:pointer;display:flex;inline-size:2rem;padding:0}.c4p--coachmark-beacon .c4p--coachmark-beacon__target[aria-expanded=true] circle{animation:none}.c4p--coachmark-beacon__center{block-size:5rem;inline-size:5rem;inset-block-start:-1.375rem;inset-inline-start:-1.375rem;pointer-events:none;position:absolute;z-index:6900}.c4p--coachmark-beacon__center circle{animation:ripple 2s infinite;fill:var(--cds-support-info,#0043ce);fill-opacity:0;-webkit-mask-image:none;mask-image:none;stroke:var(--cds-support-info,#0043ce);stroke-opacity:0;stroke-width:1px;transition-timing-function:motion exit,productive}@media (prefers-reduced-motion){.c4p--coachmark-beacon__center circle{animation:none}}@keyframes ripple{0%{fill-opacity:0;r:1px;stroke-opacity:0;transition-timing-function:cubic-bezier(0,0,.38,.9)}31%{fill-opacity:.2;stroke-opacity:1}62%{fill-opacity:0;r:32px;stroke-opacity:0}to{fill-opacity:0;r:32px;stroke-opacity:0}}@keyframes ring-ripple{0%{fill-opacity:0;r:12px;stroke-opacity:0;transition-timing-function:cubic-bezier(0,0,.38,.9)}31%{fill-opacity:.2;stroke-opacity:1}62%{fill-opacity:0;r:32px;stroke-opacity:0}to{fill-opacity:0;r:32px;stroke-opacity:0}}:host(c4p-coachmark-beacon){position:relative}:host(.c4p--coachmark-beacon-default) .c4p--coachmark-beacon__target:before{display:none}:host(.c4p--coachmark-beacon-default) .c4p--coachmark-beacon__target:after{background-color:#4589ff;block-size:.75rem;border-radius:50%;content:\"\";inline-size:.75rem;inset-block-start:.625rem;inset-inline-start:.625rem;position:absolute}:host(.c4p--coachmark-beacon-default) .c4p--coachmark-beacon__target:focus{outline:transparent}:host(.c4p--coachmark-beacon-default) .c4p--coachmark-beacon__target:focus:before{block-size:18px;border-radius:100%;content:\"\";display:block;inline-size:18px;inset-block-start:7px;inset-inline-start:7px;outline:.125rem var(--cds-focus,#0f62fe) solid;position:absolute}:host(.c4p--coachmark-beacon-default) .c4p--coachmark-beacon__target{background-color:transparent;block-size:2rem;border:none;border-radius:50%;box-shadow:none;cursor:pointer;display:flex;inline-size:2rem;padding:0}:host(.c4p--coachmark-beacon-default) .c4p--coachmark-beacon__target[aria-expanded=true] circle{animation:none}:host(.c4p--coachmark-beacon-default) .c4p--coachmark-beacon__target::part(button){background-color:transparent;max-block-size:0;min-block-size:0;padding-inline:0}:host(.c4p--coachmark-beacon-default) .c4p--coachmark-beacon__target::part(button):focus{border-color:transparent;box-shadow:none}"]);
11
+
12
+ export { styles as default };
13
+ //# sourceMappingURL=coachmark-beacon.scss.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coachmark-beacon.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
@@ -0,0 +1,9 @@
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
+ import './index';
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Copyright IBM Corp. 2024
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
+ import { describe, it, expect } from 'vitest';
9
+ import { fixture, oneEvent, html } from '@open-wc/testing';
10
+ import './coachmark-beacon.js';
11
+ import { prefix } from '../../../globals/settings.js';
12
+
13
+ /**
14
+ * @license
15
+ *
16
+ * Copyright IBM Corp. 2025
17
+ *
18
+ * This source code is licensed under the Apache-2.0 license found in the
19
+ * LICENSE file in the root directory of this source tree.
20
+ */
21
+ const blockClass = `${prefix}--coachmark-beacon`;
22
+ const defaultProps = {
23
+ label: 'show information',
24
+ id: 'coachmarkBeacon',
25
+ };
26
+ const template = (props = defaultProps) => html `
27
+ <c4p-coachmark-beacon
28
+ label=${props.label}
29
+ @c4p-coachmark-beacon-clicked=${(e) => {
30
+ console.log('Beacon clicked!', e.detail.expanded);
31
+ }}
32
+ >
33
+ </c4p-coachmark-beacon>
34
+ `;
35
+ describe('c4p-coachmark-beacon', () => {
36
+ it('should render a beacon', async () => {
37
+ const beacon = await fixture(template(Object.assign({}, defaultProps)));
38
+ expect(beacon).toBeDefined();
39
+ });
40
+ it('has correct host classes', async () => {
41
+ const el = await fixture(template(Object.assign({}, defaultProps)));
42
+ expect(el.classList.contains(blockClass)).to.be.true;
43
+ expect(el.classList.contains(`${blockClass}-default`)).to.be.true;
44
+ });
45
+ it('applies className to the containing node', async () => {
46
+ const customClass = 'test';
47
+ const beacon = await fixture(template(Object.assign({}, defaultProps)));
48
+ beacon.classList.add(customClass);
49
+ expect(beacon.getAttribute('class')).to.include(customClass);
50
+ });
51
+ it('should render icon for the beacon', async () => {
52
+ var _a;
53
+ const beacon = await fixture(template(Object.assign({}, defaultProps)));
54
+ const renderedSVG = (_a = beacon === null || beacon === void 0 ? void 0 : beacon.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('slot[name="icon"]');
55
+ expect(renderedSVG).to.exist;
56
+ const assignedNodes = renderedSVG.assignedNodes({ flatten: true });
57
+ const svg = assignedNodes.find((node) => node.nodeName.toLowerCase() === 'svg');
58
+ expect(svg).to.exist;
59
+ });
60
+ it('toggles expanded state and dispatches event on click', async () => {
61
+ const el = await fixture(template(Object.assign({}, defaultProps)));
62
+ const button = el.shadowRoot.querySelector('cds-custom-button');
63
+ const eventPromise = oneEvent(el, 'c4p-coachmark-beacon-clicked');
64
+ button.click();
65
+ const event = await eventPromise;
66
+ expect(event).to.exist;
67
+ expect(event.detail.expanded).to.be.true;
68
+ });
69
+ });
70
+ //# sourceMappingURL=coachmark-beacon.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coachmark-beacon.test.js","sources":["../../../../src/components/coachmark/coachmark-beacon/coachmark-beacon.test.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright IBM Corp. 2023, 2024
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
+ * Reserved for future expansion, i.e. "RING".
11
+ */
12
+ export declare enum BEACON_KIND {
13
+ DEFAULT = "default"
14
+ }