@redvars/peacock 3.2.10 → 3.3.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.
- package/dist/{PeacockComponent-CxJc63xj.js → IndividualComponent-tDnXrOLV.js} +3 -3
- package/dist/IndividualComponent-tDnXrOLV.js.map +1 -0
- package/dist/{button-DaL4va7Q.js → button-BGFJfbT2.js} +22 -35
- package/dist/button-BGFJfbT2.js.map +1 -0
- package/dist/button-group.js +8 -8
- package/dist/button-group.js.map +1 -1
- package/dist/button.js +6 -5
- package/dist/button.js.map +1 -1
- package/dist/chart-donut.js +307 -0
- package/dist/chart-donut.js.map +1 -0
- package/dist/chart-doughnut.js +307 -0
- package/dist/chart-doughnut.js.map +1 -0
- package/dist/chart-pie.js +259 -0
- package/dist/chart-pie.js.map +1 -0
- package/dist/{class-map-BvQRv7eW.js → class-map-DpeNtqCn.js} +2 -2
- package/dist/{class-map-BvQRv7eW.js.map → class-map-DpeNtqCn.js.map} +1 -1
- package/dist/clock.js +5 -6
- package/dist/clock.js.map +1 -1
- package/dist/code-editor.js +37 -24
- package/dist/code-editor.js.map +1 -1
- package/dist/code-highlighter.js +21 -7
- package/dist/code-highlighter.js.map +1 -1
- package/dist/custom-elements-jsdocs.json +5377 -3122
- package/dist/custom-elements.json +5527 -3940
- package/dist/{dispatch-event-utils-vbdiOSeC.js → dispatch-event-utils-B4odODQf.js} +2 -15
- package/dist/dispatch-event-utils-B4odODQf.js.map +1 -0
- package/dist/index.js +13 -9
- package/dist/index.js.map +1 -1
- package/dist/number-counter.js +12 -10
- package/dist/number-counter.js.map +1 -1
- package/dist/{observe-theme-change-NneLARW8.js → observe-theme-change-BISF-Gl5.js} +2 -2
- package/dist/{observe-theme-change-NneLARW8.js.map → observe-theme-change-BISF-Gl5.js.map} +1 -1
- package/dist/peacock-loader.js +124 -62
- package/dist/peacock-loader.js.map +1 -1
- package/dist/query-QBcUV-L_.js +15 -0
- package/dist/query-QBcUV-L_.js.map +1 -0
- package/dist/{image-v3BujlY5.js → slider-Dk9CFWTG.js} +1606 -327
- package/dist/slider-Dk9CFWTG.js.map +1 -0
- package/dist/src/IndividualComponent.d.ts +1 -0
- package/dist/src/accordion/{accordion-item/accordion-item.d.ts → accordion-item.d.ts} +4 -4
- package/dist/src/accordion/{accordion/accordion.d.ts → accordion.d.ts} +6 -6
- package/dist/src/accordion/{accordion-item/index.d.ts → index.d.ts} +1 -0
- package/dist/src/avatar/avatar.d.ts +2 -2
- package/dist/src/badge/badge.d.ts +2 -2
- package/dist/src/breadcrumb/breadcrumb/breadcrumb.d.ts +7 -8
- package/dist/src/breadcrumb/breadcrumb-item/breadcrumb-item.d.ts +3 -3
- package/dist/src/button/button/button.d.ts +2 -2
- package/dist/src/button/button-group/button-group.d.ts +5 -5
- package/dist/src/button/icon-button/icon-button.d.ts +2 -2
- package/dist/src/chart-donut/chart-donut.d.ts +53 -0
- package/dist/src/chart-donut/index.d.ts +1 -0
- package/dist/src/chart-doughnut/chart-doughnut.d.ts +53 -0
- package/dist/src/chart-doughnut/index.d.ts +1 -0
- package/dist/src/chart-pie/chart-pie.d.ts +50 -0
- package/dist/src/chart-pie/index.d.ts +1 -0
- package/dist/src/checkbox/checkbox.d.ts +3 -6
- package/dist/src/chip/chip/chip.d.ts +4 -4
- package/dist/src/chip/tag/tag.d.ts +3 -3
- package/dist/src/clock/clock.d.ts +3 -4
- package/dist/src/code-editor/code-editor.d.ts +11 -9
- package/dist/src/container/container.d.ts +6 -11
- package/dist/src/date-picker/date-picker.d.ts +3 -3
- package/dist/src/divider/divider.d.ts +2 -2
- package/dist/src/elevation/elevation.d.ts +2 -2
- package/dist/src/empty-state/empty-state.d.ts +9 -2
- package/dist/src/field/field.d.ts +17 -0
- package/dist/src/focus-ring/focus-ring.d.ts +1 -1
- package/dist/src/icon/icon.d.ts +2 -2
- package/dist/src/image/image.d.ts +4 -12
- package/dist/src/index.d.ts +5 -1
- package/dist/src/input/input.d.ts +2 -2
- package/dist/src/link/link.d.ts +4 -5
- package/dist/src/menu/menu/menu.d.ts +16 -0
- package/dist/src/menu/menu-item/menu-item.d.ts +12 -0
- package/dist/src/menu/menu-list/menu-list.d.ts +15 -0
- package/dist/src/number-counter/number-counter.d.ts +9 -7
- package/dist/src/number-field/number-field.d.ts +1 -1
- package/dist/src/popover/index.d.ts +1 -1
- package/dist/src/progress/circular-progress/circular-progress.d.ts +3 -3
- package/dist/src/progress/linear-progress/linear-progress.d.ts +3 -3
- package/dist/src/ripple/ripple.d.ts +60 -4
- package/dist/src/skeleton/skeleton.d.ts +6 -5
- package/dist/src/slider/index.d.ts +1 -0
- package/dist/src/slider/slider.d.ts +52 -0
- package/dist/src/spinner/spinner.d.ts +2 -2
- package/dist/src/switch/switch.d.ts +2 -2
- package/dist/src/tabs/index.d.ts +4 -0
- package/dist/src/tabs/tab-group.d.ts +41 -0
- package/dist/src/tabs/tab-panel.d.ts +21 -0
- package/dist/src/tabs/tab.d.ts +58 -0
- package/dist/src/tabs/tabs.d.ts +27 -0
- package/dist/src/textarea/textarea.d.ts +3 -3
- package/dist/src/time-picker/time-picker.d.ts +3 -3
- package/dist/src/{popover/tooltip → tooltip}/tooltip.d.ts +6 -3
- package/dist/{state-B09bP3XH.js → state-8v48Exzh.js} +2 -2
- package/dist/{state-B09bP3XH.js.map → state-8v48Exzh.js.map} +1 -1
- package/dist/{style-map-B8xgVEc9.js → style-map-CfNHEkQp.js} +2 -2
- package/dist/{style-map-B8xgVEc9.js.map → style-map-CfNHEkQp.js.map} +1 -1
- package/dist/transform-DRuHEvar.js +3312 -0
- package/dist/transform-DRuHEvar.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/{unsafe-html-B-dV3Jps.js → unsafe-html-CV6Je6HL.js} +2 -2
- package/dist/{unsafe-html-B-dV3Jps.js.map → unsafe-html-CV6Je6HL.js.map} +1 -1
- package/package.json +3 -1
- package/readme.md +2 -2
- package/src/{PeacockComponent.ts → IndividualComponent.ts} +1 -1
- package/src/accordion/{accordion-item/accordion-item.scss → accordion-item.scss} +1 -1
- package/src/accordion/{accordion-item/accordion-item.ts → accordion-item.ts} +5 -5
- package/src/accordion/{accordion/accordion.scss → accordion.scss} +2 -1
- package/src/accordion/{accordion/accordion.ts → accordion.ts} +6 -6
- package/src/accordion/{accordion-item/index.ts → index.ts} +2 -0
- package/src/avatar/avatar.ts +2 -2
- package/src/badge/badge.ts +2 -2
- package/src/breadcrumb/breadcrumb/breadcrumb.ts +7 -8
- package/src/breadcrumb/breadcrumb-item/breadcrumb-item.ts +3 -3
- package/src/button/BaseButton.ts +1 -1
- package/src/button/button/button.scss +9 -23
- package/src/button/button/button.ts +8 -8
- package/src/button/button-group/button-group.ts +7 -7
- package/src/button/icon-button/icon-button.ts +8 -8
- package/src/chart-donut/chart-donut.scss +37 -0
- package/src/chart-donut/chart-donut.ts +287 -0
- package/src/chart-donut/demo/index.html +51 -0
- package/src/chart-donut/index.ts +1 -0
- package/src/chart-doughnut/chart-donut.scss +37 -0
- package/src/chart-doughnut/chart-doughnut.ts +287 -0
- package/src/chart-doughnut/demo/index.html +51 -0
- package/src/chart-doughnut/index.ts +1 -0
- package/src/chart-pie/chart-pie.scss +27 -0
- package/src/chart-pie/chart-pie.ts +256 -0
- package/src/chart-pie/demo/index.html +51 -0
- package/src/chart-pie/index.ts +1 -0
- package/src/checkbox/checkbox.ts +3 -6
- package/src/chip/chip/chip.ts +6 -6
- package/src/chip/tag/tag.ts +6 -6
- package/src/clock/clock.ts +5 -6
- package/src/code-editor/code-editor.scss +3 -5
- package/src/code-editor/code-editor.ts +30 -15
- package/src/code-highlighter/code-highlighter.ts +19 -4
- package/src/container/container.ts +6 -11
- package/src/date-picker/date-picker.ts +7 -7
- package/src/divider/divider.ts +2 -2
- package/src/elevation/elevation.ts +2 -2
- package/src/empty-state/empty-state.ts +10 -3
- package/src/field/field.scss +4 -4
- package/src/field/field.ts +19 -2
- package/src/focus-ring/focus-ring.scss +2 -1
- package/src/focus-ring/focus-ring.ts +1 -1
- package/src/icon/icon.ts +2 -2
- package/src/icon/p-icon.ts +1 -1
- package/src/image/image.ts +4 -12
- package/src/index.ts +6 -2
- package/src/input/input.ts +6 -6
- package/src/link/link.ts +4 -5
- package/src/menu/menu/menu.ts +16 -0
- package/src/menu/menu-item/menu-item-colors.scss +2 -2
- package/src/menu/menu-item/menu-item.ts +14 -2
- package/src/menu/menu-list/menu-list.ts +16 -1
- package/src/number-counter/demo/index.html +1 -1
- package/src/number-counter/number-counter.ts +11 -9
- package/src/number-field/number-field.ts +7 -7
- package/src/peacock-loader.ts +71 -44
- package/src/popover/index.ts +1 -1
- package/src/progress/circular-progress/circular-progress.scss +1 -1
- package/src/progress/circular-progress/circular-progress.ts +3 -3
- package/src/progress/linear-progress/linear-progress.ts +3 -3
- package/src/ripple/ripple.ts +478 -94
- package/src/skeleton/skeleton.ts +6 -5
- package/src/slider/index.ts +1 -0
- package/src/slider/slider.scss +130 -0
- package/src/slider/slider.ts +178 -0
- package/src/spinner/spinner.ts +2 -2
- package/src/switch/switch.ts +4 -4
- package/src/tabs/index.ts +4 -0
- package/src/tabs/tab-group.scss +10 -0
- package/src/tabs/tab-group.ts +137 -0
- package/src/tabs/tab-panel.scss +12 -0
- package/src/tabs/tab-panel.ts +28 -0
- package/src/tabs/tab.scss +157 -0
- package/src/tabs/tab.ts +242 -0
- package/src/tabs/tabs.scss +18 -0
- package/src/tabs/tabs.ts +64 -0
- package/src/textarea/textarea.ts +5 -5
- package/src/time-picker/time-picker.ts +7 -7
- package/src/{popover/tooltip → tooltip}/tooltip.scss +1 -1
- package/src/{popover/tooltip → tooltip}/tooltip.ts +10 -6
- package/dist/PeacockComponent-CxJc63xj.js.map +0 -1
- package/dist/button-DaL4va7Q.js.map +0 -1
- package/dist/dispatch-event-utils-vbdiOSeC.js.map +0 -1
- package/dist/image-v3BujlY5.js.map +0 -1
- package/dist/src/PeacockComponent.d.ts +0 -1
- package/dist/src/accordion/accordion/index.d.ts +0 -1
- package/dist/src/avatar/p-avatar.d.ts +0 -3
- package/dist/src/badge/p-badge.d.ts +0 -3
- package/src/accordion/accordion/index.ts +0 -1
- package/src/avatar/p-avatar.ts +0 -5
- package/src/badge/p-badge.ts +0 -5
|
@@ -1,16 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2017 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
|
-
*/
|
|
6
|
-
const e$1=(e,t,c)=>(c.configurable=true,c.enumerable=true,Reflect.decorate&&"object"!=typeof t&&Object.defineProperty(e,t,c),c);
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* @license
|
|
10
|
-
* Copyright 2017 Google LLC
|
|
11
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
12
|
-
*/function e(e,r){return (n,s,i)=>{const o=t=>t.renderRoot?.querySelector(e)??null;return e$1(n,s,{get(){return o(this)}})}}
|
|
13
|
-
|
|
14
1
|
async function createCacheFetch(name) {
|
|
15
2
|
let cache = null;
|
|
16
3
|
// This map tracks requests currently being processed
|
|
@@ -286,5 +273,5 @@ function redispatchEvent(element, event) {
|
|
|
286
273
|
return dispatched;
|
|
287
274
|
}
|
|
288
275
|
|
|
289
|
-
export { isDarkMode as a,
|
|
290
|
-
//# sourceMappingURL=dispatch-event-utils-
|
|
276
|
+
export { isDarkMode as a, createCacheFetch as c, dispatchActivationClick as d, isActivationClick as i, observerSlotChangesWithCallback as o, redispatchEvent as r, sanitizeSvg as s, throttle as t };
|
|
277
|
+
//# sourceMappingURL=dispatch-event-utils-B4odODQf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dispatch-event-utils-B4odODQf.js","sources":["../../src/utils.ts","../../src/utils/dispatch-event-utils.ts"],"sourcesContent":["export async function createCacheFetch(name: string) {\n let cache: Cache | null = null;\n // This map tracks requests currently being processed\n const inFlightRequests = new Map<string, Promise<string>>();\n\n try {\n cache = await window.caches.open(name);\n } catch (e) {\n console.warn('window.caches access not allowed');\n }\n\n return async (url: string): Promise<string> => {\n // 1. Check if we are already fetching this URL\n if (inFlightRequests.has(url)) {\n // Return the existing promise instead of starting a new one\n return inFlightRequests.get(url)!;\n }\n\n // 2. Create the main logic as a promise\n const fetchPromise = (async () => {\n const request = new Request(url);\n\n // Check Cache first\n if (cache) {\n const cachedResponse = await cache.match(request);\n if (cachedResponse) {\n return cachedResponse.text();\n }\n }\n\n // Prepare network request\n const urlObj = new URL(request.url);\n const isSameOrigin = urlObj.origin === window.location.origin;\n\n const response = await fetch(request.url, {\n method: 'GET',\n mode: isSameOrigin ? 'no-cors' : 'cors',\n credentials: isSameOrigin ? 'same-origin' : 'omit',\n });\n\n // --- Handle 404 ---\n if (response.status === 404) {\n console.error(`[Fetch Error] Resource not found (404): ${url}`);\n return ''; // Return empty string as requested\n }\n\n const result = await response.text();\n\n // Update Cache if applicable\n if (cache && response.status === 200) {\n // We clone the response logic by creating a new Response with the text body\n await cache.put(\n request,\n new Response(result, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n }),\n );\n }\n\n return result;\n })();\n\n // 3. Store the promise in the map\n inFlightRequests.set(url, fetchPromise);\n\n try {\n // 4. Wait for the result\n return await fetchPromise;\n } finally {\n // 5. Clean up: Remove the promise from the map when done\n // This ensures subsequent calls (after this one finishes) can start fresh\n inFlightRequests.delete(url);\n }\n };\n}\n\n// Basic sanitization: remove <script>, <foreignObject>, event handler attributes (on*), and iframes\nexport function sanitizeSvg(rawSvg: string) {\n try {\n const parser = new DOMParser();\n const doc = parser.parseFromString(rawSvg, 'image/svg+xml');\n\n // remove script tags\n const scripts = Array.from(doc.querySelectorAll('script'));\n scripts.forEach(n => n.remove());\n\n // remove foreignObject and iframe-like elements\n const foreigns = Array.from(doc.querySelectorAll('foreignObject, iframe'));\n foreigns.forEach(n => n.remove());\n\n // remove event handler attributes like onload, onclick, etc.\n const all = Array.from(doc.querySelectorAll('*'));\n all.forEach(el => {\n const attrs = Array.from(el.attributes).filter(a => /^on/i.test(a.name));\n attrs.forEach(a => el.removeAttribute(a.name));\n });\n\n const el = doc.documentElement;\n if (!el) return '';\n\n // serialize back to string\n const serializer = new XMLSerializer();\n return serializer.serializeToString(el);\n } catch (e) {\n // parsing failed; fall back to empty content to avoid injecting unsafe content\n return '';\n }\n}\n\nfunction __hasMeaningfulContent(slotElement: any) {\n const nodes = slotElement.assignedNodes({ flatten: true });\n\n for (const node of nodes) {\n // If it's an element node, it has content\n if (node.nodeType === Node.ELEMENT_NODE) {\n return true;\n }\n // If it's a text node and contains non-whitespace characters, it has content\n if (\n node.nodeType === Node.TEXT_NODE &&\n node.textContent.trim().length > 0\n ) {\n return true;\n }\n }\n\n // No meaningful content found\n return false;\n}\n\nexport function observerSlotChangesWithCallback(\n slot: HTMLSlotElement | null,\n callback: (hasContent: boolean) => void,\n) {\n const observer = new MutationObserver(() => {\n callback(__hasMeaningfulContent(slot));\n });\n\n // Observe the elements currently assigned to the slot\n const assignedNodes = slot?.assignedNodes({ flatten: true }) || [];\n assignedNodes.forEach(node => {\n observer.observe(node, {\n attributes: true,\n childList: true,\n characterData: true,\n subtree: true,\n });\n });\n\n callback(__hasMeaningfulContent(slot));\n}\n\nexport function throttle(\n func: Function,\n delay: number,\n options = { leading: true, trailing: true },\n) {\n let timerId: any;\n let lastExec = 0;\n\n return function (...args: any[]) {\n // @ts-ignore\n const context = this;\n const now = Date.now();\n\n const shouldCallNow = options.leading && now - lastExec >= delay;\n\n if (shouldCallNow) {\n func.apply(context, args);\n lastExec = now;\n } else if (options.trailing && !timerId) {\n timerId = setTimeout(() => {\n func.apply(context, args);\n lastExec = Date.now();\n timerId = null;\n }, delay);\n }\n };\n}\n\nexport function isInViewport(element: HTMLElement) {\n const rect = element.getBoundingClientRect();\n return (\n rect.top !== 0 || rect.left !== 0 || rect.bottom !== 0 || rect.right !== 0\n );\n}\n\n\nexport function isDarkMode() {\n return document.documentElement.dataset.theme === 'dark';\n};","\n/**\n * Dispatches a click event to the given element that triggers a native action,\n * but is not composed and therefore is not seen outside the element.\n *\n * This is useful for responding to an external click event on the host element\n * that should trigger an internal action like a button click.\n *\n * Note, a helper is provided because setting this up correctly is a bit tricky.\n * In particular, calling `click` on an element creates a composed event, which\n * is not desirable, and a manually dispatched event must specifically be a\n * `MouseEvent` to trigger a native action.\n *\n * @example\n * hostClickListener = (event: MouseEvent) {\n * if (isActivationClick(event)) {\n * this.dispatchActivationClick(this.buttonElement);\n * }\n * }\n *\n */\nexport function dispatchActivationClick(element: HTMLElement) {\n const event = new MouseEvent('click', { bubbles: true });\n element.dispatchEvent(event);\n return event;\n}\n\n// Ignore events for one microtask only.\nlet isSquelchingEvents = false;\nasync function __squelchEventsForMicrotask() {\n isSquelchingEvents = true;\n // Need to pause for just one microtask.\n // tslint:disable-next-line\n await null;\n isSquelchingEvents = false;\n}\n\n// TODO(https://bugzilla.mozilla.org/show_bug.cgi?id=1804576)\n// Remove when Firefox bug is addressed.\nfunction __squelchEvent(event: Event) {\n const squelched = isSquelchingEvents;\n if (squelched) {\n event.preventDefault();\n event.stopImmediatePropagation();\n }\n __squelchEventsForMicrotask();\n return squelched;\n}\n\n/**\n * Returns true if the click event should trigger an activation behavior. The\n * behavior is defined by the element and is whatever it should do when\n * clicked.\n *\n * Typically when an element needs to handle a click, the click is generated\n * from within the element and an event listener within the element implements\n * the needed behavior; however, it's possible to fire a click directly\n * at the element that the element should handle. This method helps\n * distinguish these \"external\" clicks.\n *\n * An \"external\" click can be triggered in a number of ways: via a click\n * on an associated label for a form associated element, calling\n * `element.click()`, or calling\n * `element.dispatchEvent(new MouseEvent('click', ...))`.\n *\n * Also works around Firefox issue\n * https://bugzilla.mozilla.org/show_bug.cgi?id=1804576 by squelching\n * events for a microtask after called.\n *\n * @example\n * hostClickListener = (event: MouseEvent) {\n * if (isActivationClick(event)) {\n * this.dispatchActivationClick(this.buttonElement);\n * }\n * }\n *\n */\nexport function isActivationClick(event: Event) {\n // Event must start at the event target.\n if (event.currentTarget !== event.target) {\n return false;\n }\n // Event must not be retargeted from shadowRoot.\n if (event.composedPath()[0] !== event.target) {\n return false;\n }\n // Target must not be disabled; this should only occur for a synthetically\n // dispatched click.\n if ((event.target as EventTarget & { disabled: boolean }).disabled) {\n return false;\n }\n // This is an activation if the event should not be squelched.\n return !__squelchEvent(event);\n}\n\n/**\n * Re-dispatches an event from the provided element.\n *\n * This function is useful for forwarding non-composed events, such as `change`\n * events.\n *\n * @example\n * class MyInput extends LitElement {\n * render() {\n * return html`<input @change=${this.redispatchEvent}>`;\n * }\n *\n * protected redispatchEvent(event: Event) {\n * redispatchEvent(this, event);\n * }\n * }\n *\n * @param element The element to dispatch the event from.\n * @param event The event to re-dispatch.\n * @return Whether or not the event was dispatched (if cancelable).\n */\nexport function redispatchEvent(element: Element, event: Event) {\n // For bubbling events in SSR light DOM (or composed), stop their propagation\n // and dispatch the copy.\n if (event.bubbles && (!element.shadowRoot || event.composed)) {\n event.stopPropagation();\n }\n\n const copy = Reflect.construct(event.constructor, [event.type, event]);\n const dispatched = element.dispatchEvent(copy);\n if (!dispatched) {\n event.preventDefault();\n }\n\n return dispatched;\n}\n"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,16 +1,20 @@
|
|
|
1
|
-
export { A as Accordion, a as Avatar, B as Badge, b as Breadcrumb, c as BreadcrumbItem, C as Chip, d as CircularProgress, e as Container, D as DatePicker, f as Divider, E as Elevation, g as EmptyState, F as Field, h as FocusRing, I as Icon, i as IconButton, j as Image, k as Input, L as LinearProgress, l as Link, N as NumberField, R as Ripple, S as Skeleton, m as
|
|
1
|
+
export { A as Accordion, a as Avatar, B as Badge, b as Breadcrumb, c as BreadcrumbItem, C as Chip, d as CircularProgress, e as Container, D as DatePicker, f as Divider, E as Elevation, g as EmptyState, F as Field, h as FocusRing, I as Icon, i as IconButton, j as Image, k as Input, L as LinearProgress, l as Link, N as NumberField, R as Ripple, S as Skeleton, m as Slider, n as Spinner, o as Switch, T as Tab, p as TabGroup, q as TabPanel, r as Tabs, s as Tag, t as Textarea, u as TimePicker, v as Tooltip } from './slider-Dk9CFWTG.js';
|
|
2
2
|
export { Clock } from './clock.js';
|
|
3
|
-
export { B as Button } from './button-
|
|
3
|
+
export { B as Button } from './button-BGFJfbT2.js';
|
|
4
4
|
export { ButtonGroup } from './button-group.js';
|
|
5
5
|
export { NumberCounter } from './number-counter.js';
|
|
6
6
|
export { CodeHighlighter } from './code-highlighter.js';
|
|
7
7
|
export { default as CodeEditor } from './code-editor.js';
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
export { ChartDoughnut } from './chart-doughnut.js';
|
|
9
|
+
export { ChartPie } from './chart-pie.js';
|
|
10
|
+
import './IndividualComponent-tDnXrOLV.js';
|
|
11
|
+
import './state-8v48Exzh.js';
|
|
10
12
|
import './directive-Cuw6h7YA.js';
|
|
11
|
-
import './unsafe-html-
|
|
12
|
-
import './dispatch-event-utils-
|
|
13
|
-
import './class-map-
|
|
14
|
-
import './
|
|
15
|
-
import './
|
|
13
|
+
import './unsafe-html-CV6Je6HL.js';
|
|
14
|
+
import './dispatch-event-utils-B4odODQf.js';
|
|
15
|
+
import './class-map-DpeNtqCn.js';
|
|
16
|
+
import './query-QBcUV-L_.js';
|
|
17
|
+
import './style-map-CfNHEkQp.js';
|
|
18
|
+
import './observe-theme-change-BISF-Gl5.js';
|
|
19
|
+
import './transform-DRuHEvar.js';
|
|
16
20
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;"}
|
package/dist/number-counter.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { i, _ as __decorate, n,
|
|
2
|
-
import { o } from './style-map-
|
|
1
|
+
import { i, _ as __decorate, n, I as IndividualComponent, a as i$1, b, A } from './IndividualComponent-tDnXrOLV.js';
|
|
2
|
+
import { o } from './style-map-CfNHEkQp.js';
|
|
3
3
|
import './directive-Cuw6h7YA.js';
|
|
4
4
|
|
|
5
5
|
var css_248z = i`* {
|
|
@@ -40,19 +40,21 @@ var css_248z = i`* {
|
|
|
40
40
|
|
|
41
41
|
/**
|
|
42
42
|
* @label Number Counter
|
|
43
|
-
* @tag number-counter
|
|
43
|
+
* @tag wc-number-counter
|
|
44
44
|
* @rawTag number-counter
|
|
45
45
|
* @summary Displays a number with commas for thousands.
|
|
46
46
|
*
|
|
47
47
|
* @example
|
|
48
48
|
* ```html
|
|
49
|
-
* <number-counter value="123456789"></number-counter>
|
|
49
|
+
* <wc-number-counter id="number-counter" value="123456789"></wc-number-counter>
|
|
50
50
|
* <script>
|
|
51
|
-
*
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
*
|
|
51
|
+
* customElements.whenDefined('wc-number-counter').then(() => {
|
|
52
|
+
const $counter = document.querySelector('#number-counter');
|
|
53
|
+
|
|
54
|
+
setInterval(() => {
|
|
55
|
+
$counter.value = $counter.value + Math.floor(Math.random() * 1000);
|
|
56
|
+
}, 1000);
|
|
57
|
+
});
|
|
56
58
|
* </script>
|
|
57
59
|
* ```
|
|
58
60
|
* @tags display
|
|
@@ -108,7 +110,7 @@ __decorate([
|
|
|
108
110
|
n()
|
|
109
111
|
], NumberCounter.prototype, "locale", void 0);
|
|
110
112
|
NumberCounter = __decorate([
|
|
111
|
-
|
|
113
|
+
IndividualComponent
|
|
112
114
|
], NumberCounter);
|
|
113
115
|
|
|
114
116
|
export { NumberCounter };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number-counter.js","sources":["../../src/number-counter/number-counter.ts"],"sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport
|
|
1
|
+
{"version":3,"file":"number-counter.js","sources":["../../src/number-counter/number-counter.ts"],"sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport IndividualComponent from 'src/IndividualComponent.js';\nimport styles from './number-counter.scss';\n\n/**\n * @label Number Counter\n * @tag wc-number-counter\n * @rawTag number-counter\n * @summary Displays a number with commas for thousands.\n *\n * @example\n * ```html\n * <wc-number-counter id=\"number-counter\" value=\"123456789\"></wc-number-counter>\n * <script>\n * customElements.whenDefined('wc-number-counter').then(() => {\n const $counter = document.querySelector('#number-counter');\n\n setInterval(() => {\n $counter.value = $counter.value + Math.floor(Math.random() * 1000);\n }, 1000);\n });\n * </script>\n * ```\n * @tags display\n */\n@IndividualComponent\nexport class NumberCounter extends LitElement {\n static styles = [styles];\n\n @property({ type: Number }) value = 0;\n\n /**\n * Optional: Allow users to pass a locale, defaulting to 'en-US' for commas.\n */\n @property() locale = 'en-US';\n\n render() {\n return html`<div class=\"number-counter\">${this.renderDigits()}</div>`;\n }\n\n renderDigits() {\n if (this.value === undefined || this.value === null) return nothing;\n\n // 1. Format the number with commas (e.g., 1234 -> \"1,234\")\n const formattedValue = new Intl.NumberFormat(this.locale).format(\n this.value,\n );\n\n // 2. Split the string into individual characters\n const chars = formattedValue.split('');\n\n return html`${chars.map(char => {\n // 3. Check if the character is a digit or a separator (comma/dot)\n const digit = parseInt(char, 10);\n\n // eslint-disable-next-line no-restricted-globals\n if (isNaN(digit)) {\n return html`<div class=\"digit-separator\">${char}</div>`;\n }\n\n return this.renderDigit(digit);\n })}`;\n }\n\n // eslint-disable-next-line class-methods-use-this\n renderDigit(digit: number) {\n // Each 'each-digit' is 10% of the 'digit-content' height (since there are 10 numbers)\n const offset = digit * 10;\n const style = {\n transform: `translateY(-${offset}%)`,\n };\n\n return html` <div class=\"digit\">\n <div class=\"digit-content\" style=${styleMap(style)}>\n ${[0, 1, 2, 3, 4, 5, 6, 7, 8, 9].map(\n n => html`<div class=\"each-digit\">${n}</div>`,\n )}\n </div>\n </div>`;\n }\n}\n"],"names":["LitElement","html","nothing","styleMap","styles","property"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA;;;;;;;;;;;;;;;;;;;;AAoBG;AAEI,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQA,GAAU,CAAA;AAAtC,IAAA,WAAA,GAAA;;QAGuB,IAAA,CAAA,KAAK,GAAG,CAAC;AAErC;;AAEG;QACS,IAAA,CAAA,MAAM,GAAG,OAAO;IA8C9B;IA5CE,MAAM,GAAA;QACJ,OAAOC,CAAI,CAAA,CAAA,4BAAA,EAA+B,IAAI,CAAC,YAAY,EAAE,QAAQ;IACvE;IAEA,YAAY,GAAA;QACV,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;AAAE,YAAA,OAAOC,CAAO;;AAGnE,QAAA,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAC9D,IAAI,CAAC,KAAK,CACX;;QAGD,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAEtC,OAAOD,CAAI,CAAA,CAAA,EAAG,KAAK,CAAC,GAAG,CAAC,IAAI,IAAG;;YAE7B,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;;AAGhC,YAAA,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE;AAChB,gBAAA,OAAOA,CAAI,CAAA,CAAA,6BAAA,EAAgC,IAAI,QAAQ;YACzD;AAEA,YAAA,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;QAChC,CAAC,CAAC,EAAE;IACN;;AAGA,IAAA,WAAW,CAAC,KAAa,EAAA;;AAEvB,QAAA,MAAM,MAAM,GAAG,KAAK,GAAG,EAAE;AACzB,QAAA,MAAM,KAAK,GAAG;YACZ,SAAS,EAAE,CAAA,YAAA,EAAe,MAAM,CAAA,EAAA,CAAI;SACrC;AAED,QAAA,OAAOA,CAAI,CAAA,CAAA;yCAC0BE,CAAQ,CAAC,KAAK,CAAC,CAAA;AAC9C,QAAA,EAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAClC,CAAC,IAAIF,CAAI,CAAA,CAAA,wBAAA,EAA2B,CAAC,QAAQ,CAC9C;;WAEE;IACT;;AApDO,aAAA,CAAA,MAAM,GAAG,CAACG,QAAM,CAAC;AAEI,UAAA,CAAA;AAA3B,IAAAC,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;AAAY,CAAA,EAAA,aAAA,CAAA,SAAA,EAAA,OAAA,EAAA,MAAA,CAAA;AAK1B,UAAA,CAAA;AAAX,IAAAA,CAAQ;AAAoB,CAAA,EAAA,aAAA,CAAA,SAAA,EAAA,QAAA,EAAA,MAAA,CAAA;AARlB,aAAa,GAAA,UAAA,CAAA;IADzB;AACY,CAAA,EAAA,aAAa,CAsDzB;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as __decorate, n, a as i } from './
|
|
1
|
+
import { _ as __decorate, n, a as i } from './IndividualComponent-tDnXrOLV.js';
|
|
2
2
|
|
|
3
3
|
class BaseInput extends i {
|
|
4
4
|
constructor() {
|
|
@@ -48,4 +48,4 @@ const observeThemeChange = (() => {
|
|
|
48
48
|
})();
|
|
49
49
|
|
|
50
50
|
export { BaseInput as B, observeThemeChange as o };
|
|
51
|
-
//# sourceMappingURL=observe-theme-change-
|
|
51
|
+
//# sourceMappingURL=observe-theme-change-BISF-Gl5.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observe-theme-change-
|
|
1
|
+
{"version":3,"file":"observe-theme-change-BISF-Gl5.js","sources":["../../src/input/BaseInput.ts","../../src/utils/observe-theme-change.ts"],"sourcesContent":["import { LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\n\nexport default abstract class BaseInput extends LitElement {\n value?: any;\n\n @property({ type: Boolean, reflect: true })\n disabled: boolean = false;\n\n @property({ type: Boolean, reflect: true })\n readonly: boolean = false;\n\n @property({ type: Boolean, reflect: true })\n required: boolean = false;\n\n @property({ type: Boolean, reflect: true })\n skeleton = false;\n}\n","type ThemeChangeCallback = () => void;\n\nexport const observeThemeChange = (() => {\n const callbacks = new Set<ThemeChangeCallback>();\n\n const observer = new MutationObserver((records) => {\n const changed = records.some(\n (r) => r.type === \"attributes\" && r.attributeName === \"data-theme\"\n );\n if (!changed) return;\n\n for (const callback of callbacks) {\n try {\n callback();\n } catch (err) {\n console.error(\"[observeThemeChange] callback threw:\", err);\n }\n }\n });\n\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: [\"data-theme\"],\n });\n\n return (callback: ThemeChangeCallback): (() => void) => {\n callbacks.add(callback);\n return () => callbacks.delete(callback);\n };\n})();"],"names":["LitElement","property"],"mappings":";;AAGc,MAAgB,SAAU,SAAQA,CAAU,CAAA;AAA1D,IAAA,WAAA,GAAA;;QAIE,IAAA,CAAA,QAAQ,GAAY,KAAK;QAGzB,IAAA,CAAA,QAAQ,GAAY,KAAK;QAGzB,IAAA,CAAA,QAAQ,GAAY,KAAK;QAGzB,IAAA,CAAA,QAAQ,GAAG,KAAK;IAClB;AAAC;AAVC,UAAA,CAAA;IADCC,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;AAChB,CAAA,EAAA,SAAA,CAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA;AAG1B,UAAA,CAAA;IADCA,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;AAChB,CAAA,EAAA,SAAA,CAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA;AAG1B,UAAA,CAAA;IADCA,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;AAChB,CAAA,EAAA,SAAA,CAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA;AAG1B,UAAA,CAAA;IADCA,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;AACzB,CAAA,EAAA,SAAA,CAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA;;ACdZ,MAAM,kBAAkB,GAAG,CAAC,MAAK;AACtC,IAAA,MAAM,SAAS,GAAG,IAAI,GAAG,EAAuB;IAEhD,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,CAAC,OAAO,KAAI;QAChD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAC1B,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,aAAa,KAAK,YAAY,CACnE;AACD,QAAA,IAAI,CAAC,OAAO;YAAE;AAEd,QAAA,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;AAChC,YAAA,IAAI;AACF,gBAAA,QAAQ,EAAE;YACZ;YAAE,OAAO,GAAG,EAAE;AACZ,gBAAA,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC;YAC5D;QACF;AACF,IAAA,CAAC,CAAC;AAEF,IAAA,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,EAAE;AACzC,QAAA,UAAU,EAAE,IAAI;QAChB,eAAe,EAAE,CAAC,YAAY,CAAC;AAChC,KAAA,CAAC;IAEF,OAAO,CAAC,QAA6B,KAAkB;AACrD,QAAA,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC;QACvB,OAAO,MAAM,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC;AACzC,IAAA,CAAC;AACH,CAAC;;;;"}
|
package/dist/peacock-loader.js
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import { A as Accordion, j as Image, e as Container, g as EmptyState,
|
|
2
|
-
import { s as spread, B as Button } from './button-
|
|
1
|
+
import { A as Accordion, m as Slider, j as Image, e as Container, g as EmptyState, n as Spinner, o as Switch, c as BreadcrumbItem, b as Breadcrumb, v as Tooltip, u as TimePicker, D as DatePicker, t as Textarea, N as NumberField, k as Input, F as Field, S as Skeleton, d as CircularProgress, L as LinearProgress, s as Tag, C as Chip, l as Link, q as TabPanel, T as Tab, p as TabGroup, r as Tabs, R as Ripple, E as Elevation, f as Divider, i as IconButton, B as Badge, a as Avatar, h as FocusRing, I as Icon } from './slider-Dk9CFWTG.js';
|
|
2
|
+
import { s as spread, B as Button } from './button-BGFJfbT2.js';
|
|
3
3
|
import { ButtonGroup } from './button-group.js';
|
|
4
|
-
import { i, _ as __decorate, n, a as i$1, w, b } from './
|
|
5
|
-
import { r } from './state-
|
|
6
|
-
import { e } from './
|
|
7
|
-
import { e as e$1 } from './class-map-
|
|
4
|
+
import { i, _ as __decorate, n, a as i$1, w, b } from './IndividualComponent-tDnXrOLV.js';
|
|
5
|
+
import { r } from './state-8v48Exzh.js';
|
|
6
|
+
import { e } from './query-QBcUV-L_.js';
|
|
7
|
+
import { e as e$1 } from './class-map-DpeNtqCn.js';
|
|
8
8
|
import './directive-Cuw6h7YA.js';
|
|
9
|
-
import './unsafe-html-
|
|
10
|
-
import './
|
|
11
|
-
import './
|
|
9
|
+
import './unsafe-html-CV6Je6HL.js';
|
|
10
|
+
import './dispatch-event-utils-B4odODQf.js';
|
|
11
|
+
import './style-map-CfNHEkQp.js';
|
|
12
|
+
import './observe-theme-change-BISF-Gl5.js';
|
|
12
13
|
|
|
13
14
|
var css_248z$3 = i`* {
|
|
14
15
|
box-sizing: border-box;
|
|
@@ -244,29 +245,26 @@ var css_248z$3 = i`* {
|
|
|
244
245
|
|
|
245
246
|
/**
|
|
246
247
|
* @label Checkbox
|
|
247
|
-
* @tag
|
|
248
|
+
* @tag wc-checkbox
|
|
248
249
|
* @rawTag checkbox
|
|
249
|
-
*
|
|
250
250
|
* @summary Captures boolean input with an optional indeterminate mode.
|
|
251
251
|
* @overview
|
|
252
252
|
* <p>Checkboxes allow users to select one or more items from a set. Checkboxes can turn an option on or off.</p>
|
|
253
253
|
* <p>Material Design 3 checkboxes feature a smooth animation and clear visual states for checked, unchecked, and indeterminate.</p>
|
|
254
|
-
*
|
|
255
254
|
* @cssprop --checkbox-size: Size of the checkbox container.
|
|
256
255
|
* @cssprop --checkbox-selected-color: Color of the checkbox when selected.
|
|
257
256
|
* @cssprop --checkbox-unselected-color: Color of the checkbox border when unselected.
|
|
258
257
|
* @cssprop --checkbox-checkmark-color: Color of the checkmark icon.
|
|
259
258
|
* @cssprop --checkbox-state-layer-size: Size of the state layer for touch target.
|
|
260
|
-
*
|
|
261
259
|
* @fires {CustomEvent} change - Dispatched when the checkbox value changes.
|
|
262
260
|
* @fires {CustomEvent} blur - Dispatched when the checkbox loses focus.
|
|
263
261
|
* @fires {CustomEvent} focus - Dispatched when the checkbox receives focus.
|
|
262
|
+
* @tags input, form
|
|
264
263
|
*
|
|
265
264
|
* @example
|
|
266
265
|
* ```html
|
|
267
|
-
* <
|
|
266
|
+
* <wc-checkbox label="Accept terms"></wc-checkbox>
|
|
268
267
|
* ```
|
|
269
|
-
* @tags input, form
|
|
270
268
|
*/
|
|
271
269
|
class Checkbox extends i$1 {
|
|
272
270
|
constructor() {
|
|
@@ -530,6 +528,22 @@ __decorate([
|
|
|
530
528
|
e('.input-native')
|
|
531
529
|
], Checkbox.prototype, "nativeElement", void 0);
|
|
532
530
|
|
|
531
|
+
/**
|
|
532
|
+
* @label Menu
|
|
533
|
+
* @tag wc-menu
|
|
534
|
+
* @rawTag menu
|
|
535
|
+
* @summary A dropdown menu component.
|
|
536
|
+
* @tags navigation
|
|
537
|
+
*
|
|
538
|
+
* @example
|
|
539
|
+
* ```html
|
|
540
|
+
* <wc-menu>
|
|
541
|
+
* <wc-menu-list>
|
|
542
|
+
* <wc-menu-item>Item 1</wc-menu-item>
|
|
543
|
+
* </wc-menu-list>
|
|
544
|
+
* </wc-menu>
|
|
545
|
+
* ```
|
|
546
|
+
*/
|
|
533
547
|
class Menu extends i$1 {
|
|
534
548
|
constructor() {
|
|
535
549
|
super();
|
|
@@ -752,18 +766,30 @@ var css_248z$2 = i`* {
|
|
|
752
766
|
display: none;
|
|
753
767
|
}`;
|
|
754
768
|
|
|
755
|
-
var css_248z$1 = i`:host-context(
|
|
769
|
+
var css_248z$1 = i`:host-context([variant=standard]) {
|
|
756
770
|
--menu-item-label-color: var(--color-on-surface-variant);
|
|
757
771
|
--menu-item-label-selected-color: var(--color-on-tertiary-container);
|
|
758
772
|
--menu-item-container-selected-color: var(--color-tertiary-container);
|
|
759
773
|
}
|
|
760
774
|
|
|
761
|
-
:host-context(
|
|
775
|
+
:host-context([variant=vibrant]) {
|
|
762
776
|
--menu-item-label-color: var(--color-on-tertiary-container);
|
|
763
777
|
--menu-item-label-selected-color: var(--color-on-tertiary);
|
|
764
778
|
--menu-item-container-selected-color: var(--color-tertiary);
|
|
765
779
|
}`;
|
|
766
780
|
|
|
781
|
+
/**
|
|
782
|
+
* @label Menu Item
|
|
783
|
+
* @tag wc-menu-item
|
|
784
|
+
* @rawTag menu-item
|
|
785
|
+
* @summary An item in a menu list.
|
|
786
|
+
* @tags navigation
|
|
787
|
+
*
|
|
788
|
+
* @example
|
|
789
|
+
* ```html
|
|
790
|
+
* <wc-menu-item>Menu Item</wc-menu-item>
|
|
791
|
+
* ```
|
|
792
|
+
*/
|
|
767
793
|
class MenuItem extends i$1 {
|
|
768
794
|
constructor() {
|
|
769
795
|
super(...arguments);
|
|
@@ -827,9 +853,9 @@ class MenuItem extends i$1 {
|
|
|
827
853
|
}
|
|
828
854
|
renderContent() {
|
|
829
855
|
return b `
|
|
830
|
-
<focus-ring class="focus-ring" .control=${this} element="menuItemElement"></focus-ring>
|
|
856
|
+
<wc-focus-ring class="focus-ring" .control=${this} element="menuItemElement"></wc-focus-ring>
|
|
831
857
|
<div class="background"></div>
|
|
832
|
-
<
|
|
858
|
+
<wc-ripple class="ripple"></wc-ripple>
|
|
833
859
|
|
|
834
860
|
<div class="menu-item-content">
|
|
835
861
|
<slot name="leading-icon"></slot>
|
|
@@ -937,6 +963,21 @@ var css_248z = i`* {
|
|
|
937
963
|
--_container-color: var(--color-tertiary-container);
|
|
938
964
|
}`;
|
|
939
965
|
|
|
966
|
+
/**
|
|
967
|
+
* @label Menu List
|
|
968
|
+
* @tag wc-menu-list
|
|
969
|
+
* @rawTag menu-list
|
|
970
|
+
* @summary A list of menu items.
|
|
971
|
+
* @tags navigation
|
|
972
|
+
*
|
|
973
|
+
* @example
|
|
974
|
+
* ```html
|
|
975
|
+
* <wc-menu-list>
|
|
976
|
+
* <wc-menu-item>Item 1</wc-menu-item>
|
|
977
|
+
* <wc-menu-item>Item 2</wc-menu-item>
|
|
978
|
+
* </wc-menu-list>
|
|
979
|
+
* ```
|
|
980
|
+
*/
|
|
940
981
|
class MenuList extends i$1 {
|
|
941
982
|
constructor() {
|
|
942
983
|
super(...arguments);
|
|
@@ -955,7 +996,7 @@ class MenuList extends i$1 {
|
|
|
955
996
|
})}
|
|
956
997
|
>
|
|
957
998
|
<div class="background"></div>
|
|
958
|
-
<
|
|
999
|
+
<wc-elevation class="elevation"></wc-elevation>
|
|
959
1000
|
|
|
960
1001
|
<div class="menu-list-content">
|
|
961
1002
|
<slot></slot>
|
|
@@ -1094,126 +1135,147 @@ document.adoptedStyleSheets = styleSheets;
|
|
|
1094
1135
|
*/
|
|
1095
1136
|
const loaderConfig = {
|
|
1096
1137
|
components: {
|
|
1097
|
-
'
|
|
1138
|
+
'wc-icon': {
|
|
1098
1139
|
CustomElementClass: Icon,
|
|
1099
1140
|
// importPath: './component/icon.js', - for lazy load give path instead of CustomElementClass
|
|
1100
1141
|
},
|
|
1101
|
-
'focus-ring': {
|
|
1142
|
+
'wc-focus-ring': {
|
|
1102
1143
|
CustomElementClass: FocusRing,
|
|
1103
1144
|
},
|
|
1104
|
-
'
|
|
1145
|
+
'wc-avatar': {
|
|
1105
1146
|
CustomElementClass: Avatar,
|
|
1106
1147
|
},
|
|
1107
|
-
'
|
|
1148
|
+
'wc-badge': {
|
|
1108
1149
|
CustomElementClass: Badge,
|
|
1109
1150
|
},
|
|
1110
|
-
'
|
|
1151
|
+
'wc-button': {
|
|
1111
1152
|
CustomElementClass: Button,
|
|
1112
1153
|
},
|
|
1113
|
-
'icon-button': {
|
|
1154
|
+
'wc-icon-button': {
|
|
1114
1155
|
CustomElementClass: IconButton,
|
|
1115
1156
|
},
|
|
1116
|
-
'button-group': {
|
|
1157
|
+
'wc-button-group': {
|
|
1117
1158
|
CustomElementClass: ButtonGroup,
|
|
1118
1159
|
},
|
|
1119
|
-
'
|
|
1160
|
+
'wc-divider': {
|
|
1120
1161
|
CustomElementClass: Divider,
|
|
1121
1162
|
},
|
|
1122
|
-
'
|
|
1163
|
+
'wc-elevation': {
|
|
1123
1164
|
CustomElementClass: Elevation,
|
|
1124
1165
|
},
|
|
1125
|
-
'
|
|
1166
|
+
'wc-clock': {
|
|
1126
1167
|
importPath: `${distDirectory}/clock.js`,
|
|
1127
1168
|
},
|
|
1128
|
-
'
|
|
1169
|
+
'wc-ripple': {
|
|
1129
1170
|
CustomElementClass: Ripple,
|
|
1130
1171
|
},
|
|
1131
|
-
'
|
|
1172
|
+
'wc-accordion': {
|
|
1132
1173
|
CustomElementClass: Accordion,
|
|
1133
1174
|
},
|
|
1134
|
-
'accordion-item': {
|
|
1175
|
+
'wc-accordion-item': {
|
|
1135
1176
|
CustomElementClass: Accordion.Item,
|
|
1136
1177
|
},
|
|
1137
|
-
'
|
|
1178
|
+
'wc-tabs': {
|
|
1179
|
+
CustomElementClass: Tabs,
|
|
1180
|
+
},
|
|
1181
|
+
'wc-tab-group': {
|
|
1182
|
+
CustomElementClass: TabGroup,
|
|
1183
|
+
},
|
|
1184
|
+
'wc-tab': {
|
|
1185
|
+
CustomElementClass: Tab
|
|
1186
|
+
},
|
|
1187
|
+
'wc-tab-panel': {
|
|
1188
|
+
CustomElementClass: TabPanel,
|
|
1189
|
+
},
|
|
1190
|
+
'wc-link': {
|
|
1138
1191
|
CustomElementClass: Link,
|
|
1139
1192
|
},
|
|
1140
|
-
'
|
|
1193
|
+
'wc-chip': {
|
|
1141
1194
|
CustomElementClass: Chip,
|
|
1142
1195
|
},
|
|
1143
|
-
'
|
|
1196
|
+
'wc-tag': {
|
|
1144
1197
|
CustomElementClass: Tag,
|
|
1145
1198
|
},
|
|
1146
|
-
'linear-progress': {
|
|
1199
|
+
'wc-linear-progress': {
|
|
1147
1200
|
CustomElementClass: LinearProgress,
|
|
1148
1201
|
},
|
|
1149
|
-
'circular-progress': {
|
|
1202
|
+
'wc-circular-progress': {
|
|
1150
1203
|
CustomElementClass: CircularProgress,
|
|
1151
1204
|
},
|
|
1152
|
-
'
|
|
1205
|
+
'wc-skeleton': {
|
|
1153
1206
|
CustomElementClass: Skeleton,
|
|
1154
1207
|
},
|
|
1155
|
-
'
|
|
1156
|
-
CustomElementClass: Input,
|
|
1157
|
-
},
|
|
1158
|
-
'base-field': {
|
|
1208
|
+
'wc-field': {
|
|
1159
1209
|
CustomElementClass: Field,
|
|
1160
1210
|
},
|
|
1161
|
-
'
|
|
1211
|
+
'wc-input': {
|
|
1212
|
+
CustomElementClass: Input,
|
|
1213
|
+
},
|
|
1214
|
+
'wc-number-field': {
|
|
1162
1215
|
CustomElementClass: NumberField,
|
|
1163
1216
|
},
|
|
1164
|
-
'textarea
|
|
1217
|
+
'wc-textarea': {
|
|
1165
1218
|
CustomElementClass: Textarea,
|
|
1166
1219
|
},
|
|
1167
|
-
'date-picker': {
|
|
1220
|
+
'wc-date-picker': {
|
|
1168
1221
|
CustomElementClass: DatePicker,
|
|
1169
1222
|
},
|
|
1170
|
-
'time-picker': {
|
|
1223
|
+
'wc-time-picker': {
|
|
1171
1224
|
CustomElementClass: TimePicker,
|
|
1172
1225
|
},
|
|
1173
|
-
'
|
|
1226
|
+
'wc-tooltip': {
|
|
1174
1227
|
CustomElementClass: Tooltip,
|
|
1175
1228
|
},
|
|
1176
|
-
'number-counter': {
|
|
1229
|
+
'wc-number-counter': {
|
|
1177
1230
|
importPath: `${distDirectory}/number-counter.js`,
|
|
1178
1231
|
},
|
|
1179
|
-
'code-editor': {
|
|
1232
|
+
'wc-code-editor': {
|
|
1180
1233
|
importPath: `${distDirectory}/code-editor.js`,
|
|
1181
1234
|
},
|
|
1182
|
-
'code-highlighter': {
|
|
1235
|
+
'wc-code-highlighter': {
|
|
1183
1236
|
importPath: `${distDirectory}/code-highlighter.js`,
|
|
1184
1237
|
},
|
|
1185
|
-
'
|
|
1238
|
+
'wc-breadcrumb': {
|
|
1186
1239
|
CustomElementClass: Breadcrumb,
|
|
1187
1240
|
},
|
|
1188
|
-
'breadcrumb-item': {
|
|
1241
|
+
'wc-breadcrumb-item': {
|
|
1189
1242
|
CustomElementClass: BreadcrumbItem,
|
|
1190
1243
|
},
|
|
1191
|
-
'
|
|
1244
|
+
'wc-switch': {
|
|
1192
1245
|
CustomElementClass: Switch,
|
|
1193
1246
|
},
|
|
1194
|
-
'
|
|
1247
|
+
'wc-checkbox': {
|
|
1195
1248
|
CustomElementClass: Checkbox,
|
|
1196
1249
|
},
|
|
1197
|
-
'
|
|
1250
|
+
'wc-spinner': {
|
|
1198
1251
|
CustomElementClass: Spinner,
|
|
1199
1252
|
},
|
|
1200
|
-
'empty-state': {
|
|
1253
|
+
'wc-empty-state': {
|
|
1201
1254
|
CustomElementClass: EmptyState,
|
|
1202
1255
|
},
|
|
1203
|
-
'base-menu': {
|
|
1256
|
+
'wc-base-menu': {
|
|
1204
1257
|
CustomElementClass: Menu,
|
|
1205
1258
|
},
|
|
1206
|
-
'menu-item': {
|
|
1259
|
+
'wc-menu-item': {
|
|
1207
1260
|
CustomElementClass: MenuItem,
|
|
1208
1261
|
},
|
|
1209
|
-
'menu-list': {
|
|
1262
|
+
'wc-menu-list': {
|
|
1210
1263
|
CustomElementClass: MenuList,
|
|
1211
1264
|
},
|
|
1212
|
-
'
|
|
1265
|
+
'wc-container': {
|
|
1213
1266
|
CustomElementClass: Container
|
|
1214
1267
|
},
|
|
1215
|
-
'
|
|
1268
|
+
'wc-image': {
|
|
1216
1269
|
CustomElementClass: Image
|
|
1270
|
+
},
|
|
1271
|
+
'wc-slider': {
|
|
1272
|
+
CustomElementClass: Slider
|
|
1273
|
+
},
|
|
1274
|
+
'wc-chart-doughnut': {
|
|
1275
|
+
importPath: `${distDirectory}/chart-doughnut.js`,
|
|
1276
|
+
},
|
|
1277
|
+
'wc-chart-pie': {
|
|
1278
|
+
importPath: `${distDirectory}/chart-pie.js`,
|
|
1217
1279
|
}
|
|
1218
1280
|
},
|
|
1219
1281
|
};
|