wj-elements 0.1.136 → 0.1.137
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/dark.css +223 -0
- package/dist/infinite-scroll.element-XVJukzjy.js +272 -0
- package/dist/infinite-scroll.element-XVJukzjy.js.map +1 -0
- package/dist/light.css +534 -0
- package/dist/list.element-Ce1vIm1O.js +50 -0
- package/dist/list.element-Ce1vIm1O.js.map +1 -0
- package/dist/localize.js +70 -0
- package/dist/localize.js.map +1 -0
- package/dist/popup.element-tyYxow0p.js +1623 -0
- package/dist/popup.element-tyYxow0p.js.map +1 -0
- package/dist/router-links-CJnOdbas.js +150 -0
- package/dist/router-links-CJnOdbas.js.map +1 -0
- package/dist/styles.css +849 -0
- package/dist/wje-accordion-item.js +113 -0
- package/dist/wje-accordion-item.js.map +1 -0
- package/dist/wje-accordion.js +122 -0
- package/dist/wje-accordion.js.map +1 -0
- package/dist/wje-animation.js +4326 -0
- package/dist/wje-animation.js.map +1 -0
- package/dist/wje-aside.js +55 -0
- package/dist/wje-aside.js.map +1 -0
- package/dist/wje-avatar.js +90 -0
- package/dist/wje-avatar.js.map +1 -0
- package/dist/wje-badge.js +71 -0
- package/dist/wje-badge.js.map +1 -0
- package/dist/wje-breadcrumb.js +195 -0
- package/dist/wje-breadcrumb.js.map +1 -0
- package/dist/wje-breadcrumbs.js +140 -0
- package/dist/wje-breadcrumbs.js.map +1 -0
- package/dist/wje-button-group.js +85 -0
- package/dist/wje-button-group.js.map +1 -0
- package/dist/wje-button.js +352 -0
- package/dist/wje-button.js.map +1 -0
- package/dist/wje-card-content.js +48 -0
- package/dist/wje-card-content.js.map +1 -0
- package/dist/wje-card-controls.js +48 -0
- package/dist/wje-card-controls.js.map +1 -0
- package/dist/wje-card-header.js +48 -0
- package/dist/wje-card-header.js.map +1 -0
- package/dist/wje-card-subtitle.js +55 -0
- package/dist/wje-card-subtitle.js.map +1 -0
- package/dist/wje-card-title.js +55 -0
- package/dist/wje-card-title.js.map +1 -0
- package/dist/wje-card.js +56 -0
- package/dist/wje-card.js.map +1 -0
- package/dist/wje-carousel-item.js +63 -0
- package/dist/wje-carousel-item.js.map +1 -0
- package/dist/wje-carousel.js +380 -0
- package/dist/wje-carousel.js.map +1 -0
- package/dist/wje-checkbox.js +540 -0
- package/dist/wje-checkbox.js.map +1 -0
- package/dist/wje-chip.js +76 -0
- package/dist/wje-chip.js.map +1 -0
- package/dist/wje-col.js +38 -0
- package/dist/wje-col.js.map +1 -0
- package/dist/wje-color-picker.js +1339 -0
- package/dist/wje-color-picker.js.map +1 -0
- package/dist/wje-container.js +56 -0
- package/dist/wje-container.js.map +1 -0
- package/dist/wje-copy-button.js +218 -0
- package/dist/wje-copy-button.js.map +1 -0
- package/dist/wje-dialog.js +249 -0
- package/dist/wje-dialog.js.map +1 -0
- package/dist/wje-divider.js +55 -0
- package/dist/wje-divider.js.map +1 -0
- package/dist/wje-dropdown.js +194 -0
- package/dist/wje-dropdown.js.map +1 -0
- package/dist/wje-element.js +967 -0
- package/dist/wje-element.js.map +1 -0
- package/dist/wje-fetchAndParseCSS.js +60 -0
- package/dist/wje-fetchAndParseCSS.js.map +1 -0
- package/dist/wje-file-upload-item.js +140 -0
- package/dist/wje-file-upload-item.js.map +1 -0
- package/dist/wje-file-upload.js +552 -0
- package/dist/wje-file-upload.js.map +1 -0
- package/dist/wje-footer.js +52 -0
- package/dist/wje-footer.js.map +1 -0
- package/dist/wje-form.js +53 -0
- package/dist/wje-form.js.map +1 -0
- package/dist/wje-format-digital.js +146 -0
- package/dist/wje-format-digital.js.map +1 -0
- package/dist/wje-grid.js +54 -0
- package/dist/wje-grid.js.map +1 -0
- package/dist/wje-header.js +56 -0
- package/dist/wje-header.js.map +1 -0
- package/dist/wje-icon-picker.js +349 -0
- package/dist/wje-icon-picker.js.map +1 -0
- package/dist/wje-icon.js +191 -0
- package/dist/wje-icon.js.map +1 -0
- package/dist/wje-img-comparer.js +131 -0
- package/dist/wje-img-comparer.js.map +1 -0
- package/dist/wje-img.js +80 -0
- package/dist/wje-img.js.map +1 -0
- package/dist/wje-infinite-scroll.js +6 -0
- package/dist/wje-infinite-scroll.js.map +1 -0
- package/dist/wje-input-file.js +111 -0
- package/dist/wje-input-file.js.map +1 -0
- package/dist/wje-input.js +452 -0
- package/dist/wje-input.js.map +1 -0
- package/dist/wje-item.js +88 -0
- package/dist/wje-item.js.map +1 -0
- package/dist/wje-kanban.js +462 -0
- package/dist/wje-kanban.js.map +1 -0
- package/dist/wje-label.js +53 -0
- package/dist/wje-label.js.map +1 -0
- package/dist/wje-list.js +6 -0
- package/dist/wje-list.js.map +1 -0
- package/dist/wje-main.js +52 -0
- package/dist/wje-main.js.map +1 -0
- package/dist/wje-masonry.js +267 -0
- package/dist/wje-masonry.js.map +1 -0
- package/dist/wje-master.js +687 -0
- package/dist/wje-master.js.map +1 -0
- package/dist/wje-menu-button.js +60 -0
- package/dist/wje-menu-button.js.map +1 -0
- package/dist/wje-menu-item.js +545 -0
- package/dist/wje-menu-item.js.map +1 -0
- package/dist/wje-menu-label.js +55 -0
- package/dist/wje-menu-label.js.map +1 -0
- package/dist/wje-menu.js +72 -0
- package/dist/wje-menu.js.map +1 -0
- package/dist/wje-option.js +112 -0
- package/dist/wje-option.js.map +1 -0
- package/dist/wje-options.js +355 -0
- package/dist/wje-options.js.map +1 -0
- package/dist/wje-orgchart-group.js +72 -0
- package/dist/wje-orgchart-group.js.map +1 -0
- package/dist/wje-orgchart-item.js +98 -0
- package/dist/wje-orgchart-item.js.map +1 -0
- package/dist/wje-orgchart.js +49 -0
- package/dist/wje-orgchart.js.map +1 -0
- package/dist/wje-popup.js +6 -0
- package/dist/wje-popup.js.map +1 -0
- package/dist/wje-progress-bar.js +213 -0
- package/dist/wje-progress-bar.js.map +1 -0
- package/dist/wje-qr-code.js +2892 -0
- package/dist/wje-qr-code.js.map +1 -0
- package/dist/wje-radio-group.js +228 -0
- package/dist/wje-radio-group.js.map +1 -0
- package/dist/wje-radio.js +106 -0
- package/dist/wje-radio.js.map +1 -0
- package/dist/wje-rate.js +300 -0
- package/dist/wje-rate.js.map +1 -0
- package/dist/wje-relative-time.js +115 -0
- package/dist/wje-relative-time.js.map +1 -0
- package/dist/wje-reorder-dropzone.js +49 -0
- package/dist/wje-reorder-dropzone.js.map +1 -0
- package/dist/wje-reorder-handle.js +218 -0
- package/dist/wje-reorder-handle.js.map +1 -0
- package/dist/wje-reorder-item.js +61 -0
- package/dist/wje-reorder-item.js.map +1 -0
- package/dist/wje-reorder.js +281 -0
- package/dist/wje-reorder.js.map +1 -0
- package/dist/wje-route.js +43 -0
- package/dist/wje-route.js.map +1 -0
- package/dist/wje-router-link.js +64 -0
- package/dist/wje-router-link.js.map +1 -0
- package/dist/wje-router-outlet.js +192 -0
- package/dist/wje-router-outlet.js.map +1 -0
- package/dist/wje-routerx.js +1437 -0
- package/dist/wje-routerx.js.map +1 -0
- package/dist/wje-row.js +49 -0
- package/dist/wje-row.js.map +1 -0
- package/dist/wje-select.js +630 -0
- package/dist/wje-select.js.map +1 -0
- package/dist/wje-slider.js +221 -0
- package/dist/wje-slider.js.map +1 -0
- package/dist/wje-sliding-container.js +474 -0
- package/dist/wje-sliding-container.js.map +1 -0
- package/dist/wje-split-view.js +153 -0
- package/dist/wje-split-view.js.map +1 -0
- package/dist/wje-status.js +61 -0
- package/dist/wje-status.js.map +1 -0
- package/dist/wje-step.js +50 -0
- package/dist/wje-step.js.map +1 -0
- package/dist/wje-stepper.js +231 -0
- package/dist/wje-stepper.js.map +1 -0
- package/dist/wje-store.js +401 -0
- package/dist/wje-store.js.map +1 -0
- package/dist/wje-tab-group.js +137 -0
- package/dist/wje-tab-group.js.map +1 -0
- package/dist/wje-tab-panel.js +46 -0
- package/dist/wje-tab-panel.js.map +1 -0
- package/dist/wje-tab.js +59 -0
- package/dist/wje-tab.js.map +1 -0
- package/dist/wje-textarea.js +373 -0
- package/dist/wje-textarea.js.map +1 -0
- package/dist/wje-thumbnail.js +54 -0
- package/dist/wje-thumbnail.js.map +1 -0
- package/dist/wje-toast.js +334 -0
- package/dist/wje-toast.js.map +1 -0
- package/dist/wje-toggle.js +125 -0
- package/dist/wje-toggle.js.map +1 -0
- package/dist/wje-toolbar-action.js +72 -0
- package/dist/wje-toolbar-action.js.map +1 -0
- package/dist/wje-toolbar.js +63 -0
- package/dist/wje-toolbar.js.map +1 -0
- package/dist/wje-tooltip.js +166 -0
- package/dist/wje-tooltip.js.map +1 -0
- package/dist/wje-visually-hidden.js +55 -0
- package/dist/wje-visually-hidden.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wje-master.js","sources":["../packages/utils/date.js","../packages/translations/sk-sk.js","../packages/translations/en-gb.js","../packages/wje-timeline/timeline.element.js","../packages/wje-timeline/timeline.js","../packages/wje-timeline-item/timeline-item.element.js","../packages/wje-timeline-item/timeline-item.js","../packages/wje-tree/tree.element.js","../packages/wje-tree/tree.js","../packages/wje-tree-item/tree-item.element.js","../packages/wje-tree-item/tree-item.js"],"sourcesContent":["export function formatDate(input, format) {\n let date;\n\n // Rozpoznanie typu vstupu a jeho konverzia na objekt Date\n if (typeof input === 'string') {\n date = new Date(input); // Predpokladáme, že je to ISO reťazec\n } else if (typeof input === 'number') {\n date = new Date(input); // Predpokladáme, že je to timestamp\n } else if (input instanceof Date) {\n date = input; // Je to objekt Date\n } else {\n throw new Error('Invalid date input');\n }\n\n const map = {\n yyyy: date.getFullYear(),\n MM: String(date.getMonth() + 1).padStart(2, '0'), // Mesiace sú indexované od 0\n dd: String(date.getDate()).padStart(2, '0'),\n HH: String(date.getHours()).padStart(2, '0'),\n mm: String(date.getMinutes()).padStart(2, '0'),\n ss: String(date.getSeconds()).padStart(2, '0'),\n MMMM: date.toLocaleString('en-US', { month: 'long' }), // Full month name\n MMM: date.toLocaleString('en-US', { month: 'short' }), // Short month name\n };\n\n return format.replace(/yyyy|MM|dd|HH|mm|ss|MMMM|MMM/g, (matched) => map[matched]);\n}\n","import { Localizer } from '../utils/localize.js';\n\nexport const skSk = {\n code: 'sk-sk',\n name: 'Slovak',\n dir: 'ltr',\n\n welcome: 'Vitajte',\n 'wj.file.upload.button': 'Vybrať súbor',\n 'wj.file.upload.uploaded': 'Nahraných: ',\n 'wj.file.upload.from': 'z',\n 'wj.stepper.button.next': 'Ďalej',\n 'wj.stepper.button.finish': 'Dokončiť',\n 'wj.stepper.button.previous': 'Späť',\n 'wj.stepper.step': 'Krok',\n};\n\nLocalizer.registerTranslation(skSk);\n","import { Localizer } from '../utils/localize.js';\n\nexport const enGb = {\n code: 'en-gb',\n name: 'English',\n dir: 'ltr',\n\n welcome: 'Welcome',\n 'wj.file.upload.button': 'Browse files',\n 'wj.file.upload.uploaded': 'Uploaded: ',\n 'wj.file.upload.from': 'from',\n 'wj.stepper.button.next': 'Next',\n 'wj.stepper.button.finish': 'Finish',\n 'wj.stepper.button.previous': 'Previous',\n 'wj.stepper.step': 'Step',\n};\n\nLocalizer.registerTranslation(enGb);\n","import { default as WJElement } from '../wje-element/element.js';\nimport styles from './styles/styles.css?inline';\n\n/**\n * `Timeline` is a custom web component that represents a timeline.\n * @summary This element represents a timeline.\n * @documentation https://elements.webjet.sk/components/timeline\n * @status stable\n * @augments WJElement\n * @slot - Slot for the timeline items.\n * @csspart native - The native part of the rating component.\n * @csspart vertical-line - The vertical line part of the rating component.\n * @tag wje-timeline\n */\nexport default class Timeline extends WJElement {\n /**\n * Creates an instance of Timeline.\n */\n constructor() {\n super();\n }\n\n /**\n * The class name for the component.\n */\n className = 'Timeline';\n\n /**\n * Returns the CSS stylesheet for the component.\n * @static\n * @returns {CSSStyleSheet} The CSS stylesheet\n */\n static get cssStyleSheet() {\n return styles;\n }\n\n /**\n * Sets up the attributes for the component.\n */\n setupAttributes() {\n this.isShadowRoot = 'open';\n }\n\n /**\n * Draws the component for the timeline.\n * @returns {DocumentFragment}\n */\n draw() {\n let fragment = document.createDocumentFragment();\n\n const native = document.createElement('div');\n native.setAttribute('part', 'native');\n native.classList.add('native-timeline');\n\n const verticalLine = document.createElement('div');\n verticalLine.setAttribute('part', 'vertical-line');\n verticalLine.classList.add('vertical-line');\n\n const slot = document.createElement('slot');\n\n native.appendChild(verticalLine);\n native.appendChild(slot);\n\n fragment.appendChild(native);\n\n return fragment;\n }\n}\n","import Timeline from './timeline.element.js';\n\nexport default Timeline;\n\nTimeline.define('wje-timeline', Timeline);\n","import { formatDate } from '../utils/date.js';\nimport { default as WJElement } from '../wje-element/element.js';\nimport styles from './styles/styles.css?inline';\n\n/**\n * The TimelineItem component.\n * @summary This element represents a timeline item.\n * @documentation https://elements.webjet.sk/components/timeline-item\n * @status stable\n * @augments {WJElement}\n * @csspart native - The native part of the timeline item.\n * @csspart content-container - The content container part of the timeline item.\n * @csspart default-icon - The default icon part of the timeline item.\n * @slot - Slot for the content of the timeline item.\n * @slot status - Slot for the status of the timeline item.\n * @tag wje-timeline-item\n */\nexport default class TimelineItem extends WJElement {\n constructor() {\n super();\n }\n\n /**\n * Returns the class name of the tab.\n * @returns {string} The class name of the tab.\n */\n className = 'TimelineItem';\n\n /**\n * Returns the CSS styles for the component.\n * @static\n * @returns {CSSStyleSheet}\n */\n static get cssStyleSheet() {\n return styles;\n }\n\n /**\n * Sets up the attributes for the component.\n */\n setupAttributes() {\n this.isShadowRoot = 'open';\n this.setAttribute('relative-time', '');\n }\n\n /**\n * Draws the component for the timeline item.\n * @returns {DocumentFragment}\n */\n draw() {\n let fragment = document.createDocumentFragment();\n\n let native = document.createElement('div');\n native.setAttribute('part', 'native');\n native.classList.add('native-timeline-item');\n\n let contentContainer = document.createElement('div');\n contentContainer.setAttribute('part', 'content-container');\n contentContainer.classList.add('content-container');\n\n let tooltip = document.createElement('wje-tooltip');\n tooltip.setAttribute('text', this.getAttribute('tooltip') || '');\n tooltip.setAttribute('position', 'top');\n tooltip.setAttribute('content', formatDate(this.datetime, 'dd.MM.yyyy HH:mm'));\n\n let relativeTime = document.createElement('wje-relative-time');\n relativeTime.setAttribute('date', this.datetime || '');\n relativeTime.setAttribute('format', this.getAttribute('format') || '');\n\n tooltip.appendChild(relativeTime);\n\n let event = document.createElement('h3');\n event.classList.add('event');\n event.textContent = this.getAttribute('event') || '';\n\n // additional text content\n let slot = document.createElement('slot');\n\n // status slot\n let slotStatus = document.createElement('wje-icon');\n slotStatus.setAttribute('name', 'circle-dot');\n slotStatus.setAttribute('filled', '');\n slotStatus.setAttribute('part', 'default-icon');\n\n // if status slot is present\n if (this.querySelector('[slot=\"status\"]')) {\n slotStatus = document.createElement('slot');\n slotStatus.setAttribute('name', 'status');\n }\n\n contentContainer.appendChild(tooltip);\n contentContainer.appendChild(event);\n contentContainer.appendChild(slot);\n\n native.appendChild(slotStatus);\n native.appendChild(contentContainer);\n\n fragment.appendChild(native);\n\n return fragment;\n }\n}\n","import TimelineItem from './timeline-item.element.js';\n\nexport default TimelineItem;\n\nTimelineItem.define('wje-timeline-item', TimelineItem);\n","import { default as WJElement, WjElementUtils, event } from '../wje-element/element.js';\nimport styles from './styles/styles.css?inline';\n\n\n/**\n * Represents a custom Tree component that extends the functionality of WJElement.\n * This component is used to create a hierarchical tree structure with selectable items.\n */\n\nexport default class Tree extends WJElement {\n /**\n * Creates an instance of Toast.\n */\n constructor() {\n super();\n }\n\n set selection(value) {\n this.setAttribute('selection', value);\n }\n\n get selection() {\n return this.getAttribute('selection') || 'single';\n }\n\n /**\n * The class name for the component.\n * @type {string}\n */\n className = 'Tree';\n\n /**\n * Returns the CSS stylesheet for the component.\n * @static\n * @returns {CSSStyleSheet} The CSS stylesheet\n */\n static get cssStyleSheet() {\n return styles;\n }\n\n /**\n * Setup attributes for the Button element.\n */\n setupAttributes() {\n this.isShadowRoot = 'open';\n }\n\n beforeDraw(context, appStoreObj, params) {\n const items = this.querySelectorAll('wje-tree-item');\n items?.forEach(item => {\n item.selection = this.selection;\n\n this.getExpandCollapseIcon(item,'expand');\n this.getExpandCollapseIcon(item,'collapse');\n\n });\n }\n\n /**\n * Draw method for the toast notification.\n * @returns {object} Document fragment\n */\n draw() {\n let fragment = document.createDocumentFragment();\n\n let native = document.createElement('div');\n native.setAttribute('part', 'native');\n native.classList.add('native-tree');\n\n let slot = document.createElement('slot');\n\n native.appendChild(slot);\n\n fragment.appendChild(native);\n\n return fragment;\n }\n\n /**\n * Called after the draw process of the component is completed.\n * Typically used to add event listeners or perform operations\n * that are dependent on the component's drawn state.\n * @returns {void} This method does not return a value.\n */\n afterDraw() {\n this.addEventListener('click', this.handleClick);\n }\n\n /**\n * Handles the click event triggered by the user interaction.\n * Identifies the closest tree item element to the event target and sets it\n * as the selected item. Ensures that only one item is selected at a time, resetting\n * the selection state for all other items.\n * @param {Event} e The click event object.\n */\n handleClick = (e) => {\n let selectedItem = e.target.closest('wje-tree-item');\n let isClickButton = e.composedPath().some((el) => el?.classList?.contains('toggle'));\n if(isClickButton)\n return;\n\n if (this.selection === 'single') {\n if (selectedItem) {\n for (let item of this.getAllItems()) {\n item.selected = item === selectedItem;\n }\n }\n } else if (this.selection === 'multiple') {\n let children = selectedItem.getAllChildrenFlat();\n let selectedItemStatus = !selectedItem.selected;\n selectedItem.selected = selectedItemStatus;\n\n this.updateCheckboxState(selectedItem);\n\n // for(let item of children) {\n // item.selected = selectedItemStatus;\n // }\n }\n }\n\n /**\n * Retrieves all items that match the selector 'wje-tree-item' within the current context.\n * @returns {Array<Element>} An array of all matching DOM elements.\n */\n getAllItems() {\n return [...this.querySelectorAll('wje-tree-item')];\n }\n\n /**\n * Retrieves and appends an expand/collapse icon to a given item based on the provided status.\n * @param {HTMLElement} item The DOM element to which the icon will be appended.\n * @param {string} status The status indicating which icon to retrieve (e.g., \"expand\" or \"collapse\").\n * @returns {void} This method does not return a value. If the icon matching the given status is not found, a warning is logged.\n */\n getExpandCollapseIcon(item, status) {\n let icon = this.querySelector(`[slot=\"${status}\"]`);\n if (!icon) {\n console.warn(`Icon with slot \"${status}\" was not found.`);\n return;\n }\n\n let iconClone = icon.cloneNode(true);\n item.appendChild(iconClone);\n }\n\n\n\n\n\n\n\n\n\n updateCheckboxState(changedItem, isInitialSync = false) {\n function updateParentState(item) {\n const children = item.getChildrenItems({ includeDisabled: false });\n\n if (children.length) {\n const areAllChildrenChecked = children.every(child => child.selected);\n const areAllChildrenUnchecked = children.every(child => !child.selected && !child.indeterminate);\n\n item.selected = areAllChildrenChecked;\n item.indeterminate = !areAllChildrenChecked && !areAllChildrenUnchecked;\n }\n }\n\n function propagateStateUpwards(item) {\n const parent = item.parentElement?.closest('wje-tree-item');\n\n if (parent) {\n updateParentState(parent);\n propagateStateUpwards(parent);\n }\n }\n\n function propagateStateDownwards(item) {\n const isChecked = item.selected;\n\n item.getChildrenItems().forEach(child => {\n child.selected = isInitialSync ? (isChecked || child.selected) : (!child.disabled && isChecked);\n propagateStateDownwards(child);\n });\n\n if (isInitialSync) {\n updateParentState(item);\n }\n }\n\n propagateStateDownwards(changedItem);\n propagateStateUpwards(changedItem);\n }\n}","import Tree from './tree.element.js';\n\nexport default Tree;\n\nTree.define('wje-tree', Tree);\n","import { default as WJElement, WjElementUtils, event } from '../wje-element/element.js';\nimport styles from './styles/styles.css?inline';\n\n/**\n * `Toast` is a custom web component that represents a toast notification.\n * @summary This element represents a toast notification.\n * @documentation https://elements.webjet.sk/components/toast\n * @status stable\n * @augments {WJElement}\n * @csspart native - The native part\n * @cssproperty {string} headline - Specifies the headline text of the toast. Represents the main title or heading displayed in the toast.\n * @cssproperty {boolean} open - Indicates whether the toast is currently open (visible). A value of `true` shows the toast, while `false` hides it.\n * @cssproperty {number} duration - Determines the duration (in milliseconds) for which the toast is displayed. After this time, the toast will automatically close unless it is manually closed.\n * @cssproperty {boolean} closable - Specifies whether the toast can be manually closed by the user. If `true`, the toast will include a close button or mechanism.\n * @cssproperty {string} color - Defines the color of the toast. Accepts any valid CSS color value such as `hex`, `RGB`, or named colors.\n * @cssproperty {boolean} countdown - Indicates whether a countdown is displayed in the toast. When `true`, a visual countdown timer is shown to indicate the remaining time before the toast closes.\n * @slot - The content of the toast.\n * @slot media - The media of the toast.\n * // @fires wje-toast:after-show - Fired after the toast is shown.\n * // @fires wje-toast:after-hide - Fired after the toast is hidden.\n */\n\nexport default class TreeItem extends WJElement {\n /**\n * Creates an instance of Toast.\n */\n constructor() {\n super();\n\n this._selection = 'single';\n }\n\n set selected(value) {\n this.removeAttribute('selected');\n\n if(value)\n this.setAttribute('selected', '');\n }\n\n get selected() {\n return this.hasAttribute('selected');\n }\n\n set selection(value) {\n this._selection = value || 'single';\n }\n\n get selection() {\n return this._selection;\n }\n\n /**\n * The class name for the component.\n * @type {string}\n */\n className = 'TreeItem';\n\n /**\n * Returns the CSS stylesheet for the component.\n * @static\n * @returns {CSSStyleSheet} The CSS stylesheet\n */\n static get cssStyleSheet() {\n return styles;\n }\n\n /**\n * Setup attributes for the Button element.\n */\n setupAttributes() {\n this.isShadowRoot = 'open';\n }\n\n beforeDraw(context, appStoreObj, params) {\n if (this.isNestedItem())\n this.slot = 'children';\n }\n\n /**\n * Returns the list of attributes to observe for changes.\n * @static\n * @returns {Array<string>}\n */\n static get observedAttributes() {\n return ['selected'];\n }\n\n /**\n * Called when an observed attribute has been added, removed, updated, or replaced.\n * @param {string} name The name of the attribute that has changed.\n * @param {string} oldValue The old value of the attribute.\n * @param {string} newValue The new value of the attribute.\n */\n attributeChangedCallback(name, oldValue, newValue) {\n if (name === 'selected' && oldValue !== newValue) {\n if(this.selected)\n this.checkbox.setAttribute('checked', '');\n else\n this.checkbox.removeAttribute('checked');\n }\n }\n\n /**\n * Draw method for the toast notification.\n * @returns {object} Document fragment\n */\n draw() {\n let fragment = document.createDocumentFragment();\n\n let native = document.createElement('div');\n native.setAttribute('part', 'native');\n native.classList.add('native-tree-item');\n\n let item = document.createElement('div');\n item.classList.add('item');\n\n let indent = document.createElement('div');\n indent.classList.add('indent');\n\n let button = document.createElement('div');\n button.classList.add('toggle');\n\n let checkbox = document.createElement('wje-checkbox');\n if(this.selected)\n checkbox.setAttribute('checked', '');\n\n let label = document.createElement('slot');\n\n let children = document.createElement('div');\n children.classList.add('children');\n\n let slot = document.createElement('slot');\n slot.setAttribute('name', 'children');\n children.appendChild(slot);\n\n // item.appendChild(indent);\n if(this.querySelectorAll(':scope > wje-tree-item').length > 0) {\n if(this.querySelectorAll('[slot=\"expand\"]').length < 1) {\n let expandIcon = document.createElement('wje-icon');\n expandIcon.setAttribute('name', 'chevron-right');\n expandIcon.setAttribute('slot', 'expand');\n\n this.appendChild(expandIcon);\n }\n\n if(this.querySelectorAll('[slot=\"collapse\"]').length < 1) {\n let collapseIcon = document.createElement('wje-icon');\n collapseIcon.setAttribute('name', 'chevron-down');\n collapseIcon.setAttribute('slot', 'collapse');\n\n this.appendChild(collapseIcon);\n }\n\n let expandSlot = document.createElement('slot');\n expandSlot.setAttribute('name', 'expand');\n\n let collapseSlot = document.createElement('slot');\n collapseSlot.setAttribute('name', 'collapse');\n\n button.appendChild(expandSlot);\n button.appendChild(collapseSlot);\n }\n\n item.appendChild(button);\n\n if(this.selection === 'multiple')\n item.appendChild(checkbox);\n item.appendChild(label);\n\n native.appendChild(item);\n native.appendChild(children);\n\n fragment.appendChild(native);\n\n this.checkbox = checkbox;\n this.native = native;\n this.button = button;\n this.childrenElement = children;\n this.childrenSlot = slot;\n\n return fragment;\n }\n\n afterDraw() {\n this.button.addEventListener('click', this.toggleChildren.bind(this));\n }\n\n isNestedItem() {\n const parent = this.parentElement;\n return !!parent && this.isTreeItem(parent);\n }\n\n isTreeItem(node) {\n return node instanceof Element && node.className === 'TreeItem';\n }\n\n toggleChildren() {\n this.childrenElement.classList.toggle('open');\n this.native.classList.toggle('expanded');\n }\n\n getChildrenItems(options = {}) {\n const includeDisabled = options.includeDisabled ?? true; // Ak nie je zadané, predvolená hodnota je true\n\n if (!this.childrenSlot) {\n return []; // Ak `childrenSlot` neexistuje, vráti prázdne pole\n }\n\n return [...this.childrenSlot.assignedElements({ flatten: true })]\n .filter(item => this.isTreeItem(item) && (includeDisabled || !item.disabled));\n }\n\n getAllChildrenFlat(options = {}) {\n const directChildren = this.getChildrenItems(options);\n return directChildren.flatMap(child =>\n [child, ...child.getAllChildrenFlat(options)]\n );\n }\n\n getParentTreeItems(treeItem) {\n const parents = [];\n let parent = treeItem.parentElement?.closest('wje-tree-item'); // Nájde najbližšieho rodiča\n\n while (parent) {\n parents.push(parent); // Pridá rodiča do zoznamu\n parent = parent.parentElement?.closest('wje-tree-item'); // Hľadá ďalšieho rodiča v hierarchii\n }\n\n return parents;\n }\n}","import TreeItem from './tree-item.element.js';\n\nexport default TreeItem;\n\nTreeItem.define('wje-tree-item', TreeItem);\n"],"names":["styles","event"],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
|
+
import WJElement, { event } from "./wje-element.js";
|
|
5
|
+
const styles = "/*\n[ WJ Menu Label ]\n*/\n\n:host {\n display: inline-flex;\n}\n@media (min-width: 768px) {\n :host {\n display: none;\n }\n}\n";
|
|
6
|
+
class MenuButton extends WJElement {
|
|
7
|
+
/**
|
|
8
|
+
* Creates an instance of MenuButton.
|
|
9
|
+
* @class
|
|
10
|
+
*/
|
|
11
|
+
constructor() {
|
|
12
|
+
super();
|
|
13
|
+
__publicField(this, "className", "MenuButton");
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Returns the CSS styles for the component.
|
|
17
|
+
* @static
|
|
18
|
+
* @returns {CSSStyleSheet}
|
|
19
|
+
*/
|
|
20
|
+
static get cssStyleSheet() {
|
|
21
|
+
return styles;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Returns the list of attributes to observe for changes.
|
|
25
|
+
* @static
|
|
26
|
+
* @returns {Array<string>}
|
|
27
|
+
*/
|
|
28
|
+
static get observedAttributes() {
|
|
29
|
+
return [];
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Sets up the attributes for the component.
|
|
33
|
+
*/
|
|
34
|
+
setupAttributes() {
|
|
35
|
+
this.isShadowRoot = "open";
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Draws the component for the menu button.
|
|
39
|
+
* @returns {DocumentFragment}
|
|
40
|
+
*/
|
|
41
|
+
draw() {
|
|
42
|
+
let fragment = document.createDocumentFragment();
|
|
43
|
+
let slot = document.createElement("slot");
|
|
44
|
+
fragment.appendChild(slot);
|
|
45
|
+
return fragment;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Refreshes the component after drawing. Adds a click event listener that toggles the "open" class on the content element.
|
|
49
|
+
*/
|
|
50
|
+
afterDraw() {
|
|
51
|
+
event.addListener(this, "click", null, (e) => {
|
|
52
|
+
document.querySelector(`#${this.contentId}`).classList.toggle("open");
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
MenuButton.define("wje-menu-button", MenuButton);
|
|
57
|
+
export {
|
|
58
|
+
MenuButton as default
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=wje-menu-button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wje-menu-button.js","sources":["../packages/wje-menu-button/menu-button.element.js","../packages/wje-menu-button/menu-button.js"],"sourcesContent":["import { default as WJElement, event } from '../wje-element/element.js';\nimport styles from './styles/styles.css?inline';\n\n/**\n * `MenuButton` is a custom web component that represents a menu button.\n * @summary This element represents a menu button.\n * @documentation https://elements.webjet.sk/components/menu-button\n * @status stable\n * @augments {WJElement}\n * @slot - The default slot for the menu button.\n * // @fires click - Event fired when the menu button is clicked.\n * @tag wje-menu-button\n */\n\nexport default class MenuButton extends WJElement {\n /**\n * Creates an instance of MenuButton.\n * @class\n */\n constructor() {\n super();\n }\n\n className = 'MenuButton';\n\n /**\n * Returns the CSS styles for the component.\n * @static\n * @returns {CSSStyleSheet}\n */\n static get cssStyleSheet() {\n return styles;\n }\n\n /**\n * Returns the list of attributes to observe for changes.\n * @static\n * @returns {Array<string>}\n */\n static get observedAttributes() {\n return [];\n }\n\n /**\n * Sets up the attributes for the component.\n */\n setupAttributes() {\n this.isShadowRoot = 'open';\n }\n\n /**\n * Draws the component for the menu button.\n * @returns {DocumentFragment}\n */\n draw() {\n let fragment = document.createDocumentFragment();\n\n let slot = document.createElement('slot');\n\n fragment.appendChild(slot);\n\n return fragment;\n }\n\n /**\n * Refreshes the component after drawing. Adds a click event listener that toggles the \"open\" class on the content element.\n */\n afterDraw() {\n event.addListener(this, 'click', null, (e) => {\n document.querySelector(`#${this.contentId}`).classList.toggle('open');\n });\n }\n}\n","import MenuButton from './menu-button.element.js';\n\nexport default MenuButton;\n\nMenuButton.define('wje-menu-button', MenuButton);\n"],"names":[],"mappings":";;;;;AAce,MAAM,mBAAmB,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA,EAK9C,cAAc;AACV,UAAO;AAGX,qCAAY;AAAA,EAFhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASI,WAAW,gBAAgB;AACvB,WAAO;AAAA,EACf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOI,WAAW,qBAAqB;AAC5B,WAAO,CAAE;AAAA,EACjB;AAAA;AAAA;AAAA;AAAA,EAKI,kBAAkB;AACd,SAAK,eAAe;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA;AAAA,EAMI,OAAO;AACH,QAAI,WAAW,SAAS,uBAAwB;AAEhD,QAAI,OAAO,SAAS,cAAc,MAAM;AAExC,aAAS,YAAY,IAAI;AAEzB,WAAO;AAAA,EACf;AAAA;AAAA;AAAA;AAAA,EAKI,YAAY;AACR,UAAM,YAAY,MAAM,SAAS,MAAM,CAAC,MAAM;AAC1C,eAAS,cAAc,IAAI,KAAK,SAAS,EAAE,EAAE,UAAU,OAAO,MAAM;AAAA,IAChF,CAAS;AAAA,EACT;AACA;ACpEA,WAAW,OAAO,mBAAmB,UAAU;"}
|