@nvidia-elements/core 0.0.12 → 0.1.1
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/CHANGELOG.md +42 -0
- package/dist/_virtual/{_@oxc-project_runtime@0.123.0 → _@oxc-project_runtime@0.128.0}/helpers/decorate.js +1 -1
- package/dist/accordion/accordion2.js +12 -12
- package/dist/accordion/accordion2.js.map +1 -1
- package/dist/alert/alert-group2.js +2 -2
- package/dist/alert/alert-group2.js.map +1 -1
- package/dist/alert/alert2.js +5 -5
- package/dist/alert/alert2.js.map +1 -1
- package/dist/avatar/avatar-group2.js +1 -1
- package/dist/avatar/avatar-group2.js.map +1 -1
- package/dist/avatar/avatar2.js +2 -2
- package/dist/avatar/avatar2.js.map +1 -1
- package/dist/badge/badge2.js +4 -4
- package/dist/badge/badge2.js.map +1 -1
- package/dist/breadcrumb/breadcrumb2.js +2 -2
- package/dist/breadcrumb/breadcrumb2.js.map +1 -1
- package/dist/bundle.d.ts +1 -0
- package/dist/bundles/index.d.ts +86 -0
- package/dist/bundles/index.js +3 -3
- package/dist/button/button2.js +2 -2
- package/dist/button/button2.js.map +1 -1
- package/dist/button-group/button-group2.js +4 -4
- package/dist/button-group/button-group2.js.map +1 -1
- package/dist/card/card2.js +5 -5
- package/dist/card/card2.js.map +1 -1
- package/dist/chat-message/chat-message2.js +2 -2
- package/dist/chat-message/chat-message2.js.map +1 -1
- package/dist/checkbox/checkbox-group2.js +2 -2
- package/dist/checkbox/checkbox2.js +2 -2
- package/dist/color/color2.js +2 -2
- package/dist/color/color2.js.map +1 -1
- package/dist/combobox/combobox2.js +6 -6
- package/dist/combobox/combobox2.js.map +1 -1
- package/dist/copy-button/copy-button2.js +17 -17
- package/dist/copy-button/copy-button2.js.map +1 -1
- package/dist/custom-elements-jsx.d.ts +50 -0
- package/dist/custom-elements-vue.d.ts +50 -0
- package/dist/custom-elements.json +790 -43
- package/dist/data.html.json +119 -1
- package/dist/data.snippets.json +2 -2
- package/dist/date/date2.js +2 -2
- package/dist/date/date2.js.map +1 -1
- package/dist/datetime/datetime2.js +2 -2
- package/dist/datetime/datetime2.js.map +1 -1
- package/dist/dialog/dialog-footer2.js +2 -2
- package/dist/dialog/dialog-footer2.js.map +1 -1
- package/dist/dialog/dialog-header2.js +2 -2
- package/dist/dialog/dialog-header2.js.map +1 -1
- package/dist/dialog/dialog2.js +4 -4
- package/dist/dialog/dialog2.js.map +1 -1
- package/dist/divider/divider2.js +2 -2
- package/dist/divider/divider2.js.map +1 -1
- package/dist/dot/dot2.js +2 -2
- package/dist/dot/dot2.js.map +1 -1
- package/dist/drawer/drawer-content2.js +2 -2
- package/dist/drawer/drawer-content2.js.map +1 -1
- package/dist/drawer/drawer-footer2.js +2 -2
- package/dist/drawer/drawer-footer2.js.map +1 -1
- package/dist/drawer/drawer-header2.js +2 -2
- package/dist/drawer/drawer-header2.js.map +1 -1
- package/dist/drawer/drawer2.js +8 -8
- package/dist/drawer/drawer2.js.map +1 -1
- package/dist/dropdown/dropdown-footer2.js +2 -2
- package/dist/dropdown/dropdown-footer2.js.map +1 -1
- package/dist/dropdown/dropdown-header2.js +2 -2
- package/dist/dropdown/dropdown-header2.js.map +1 -1
- package/dist/dropdown/dropdown2.js +4 -4
- package/dist/dropdown/dropdown2.js.map +1 -1
- package/dist/dropdown-group/dropdown-group.js +2 -2
- package/dist/dropdown-group/dropdown-group.js.map +1 -1
- package/dist/dropzone/dropzone.util.js.map +1 -1
- package/dist/dropzone/dropzone2.js +4 -4
- package/dist/dropzone/dropzone2.js.map +1 -1
- package/dist/file/file2.js +1 -1
- package/dist/file/file2.js.map +1 -1
- package/dist/format-datetime/format-datetime2.js +2 -2
- package/dist/format-datetime/format-datetime2.js.map +1 -1
- package/dist/format-number/define.d.ts +6 -0
- package/dist/format-number/define.js +7 -0
- package/dist/format-number/define.js.map +1 -0
- package/dist/format-number/format-number.d.ts +87 -0
- package/dist/format-number/format-number.examples.js +6 -0
- package/dist/format-number/format-number.examples.js.map +1 -0
- package/dist/format-number/format-number.examples.json +87 -0
- package/dist/format-number/format-number.js +6 -0
- package/dist/format-number/format-number.js.map +1 -0
- package/dist/format-number/format-number2.js +111 -0
- package/dist/format-number/format-number2.js.map +1 -0
- package/dist/format-number/index.d.ts +1 -0
- package/dist/format-number/index.js +2 -0
- package/dist/format-relative-time/format-relative-time2.js +2 -2
- package/dist/format-relative-time/format-relative-time2.js.map +1 -1
- package/dist/forms/control/control2.js +19 -15
- package/dist/forms/control/control2.js.map +1 -1
- package/dist/forms/control-group/control-group2.js +2 -2
- package/dist/forms/control-group/control-group2.js.map +1 -1
- package/dist/forms/control-message/control-message2.js +2 -2
- package/dist/forms/control-message/control-message2.js.map +1 -1
- package/dist/forms/utils/layout.d.ts +2 -1
- package/dist/forms/utils/layout.js.map +1 -1
- package/dist/forms/utils/states.d.ts +0 -1
- package/dist/forms/utils/states.js.map +1 -1
- package/dist/forms/utils/types.d.ts +0 -24
- package/dist/grid/cell/cell2.js +1 -1
- package/dist/grid/cell/cell2.js.map +1 -1
- package/dist/grid/column/column2.js +2 -2
- package/dist/grid/column/column2.js.map +1 -1
- package/dist/grid/footer/footer2.js +2 -2
- package/dist/grid/footer/footer2.js.map +1 -1
- package/dist/grid/grid2.js +2 -2
- package/dist/grid/grid2.js.map +1 -1
- package/dist/grid/header/header2.js +2 -2
- package/dist/grid/header/header2.js.map +1 -1
- package/dist/grid/placeholder/placeholder2.js +1 -1
- package/dist/grid/placeholder/placeholder2.js.map +1 -1
- package/dist/grid/row/row2.js +2 -2
- package/dist/grid/row/row2.js.map +1 -1
- package/dist/icon/icon2.js +3 -3
- package/dist/icon/icon2.js.map +1 -1
- package/dist/icon/icons/academic-cap.js.map +1 -1
- package/dist/icon/icons/add-asset.js.map +1 -1
- package/dist/icon/icons/add-comment.js.map +1 -1
- package/dist/icon/icons/add-grid.js.map +1 -1
- package/dist/icon/icons/add-user.js.map +1 -1
- package/dist/icon/icons/add.js.map +1 -1
- package/dist/icon/icons/ancestors.js.map +1 -1
- package/dist/icon/icons/archive.js.map +1 -1
- package/dist/icon/icons/arrow-angle.js.map +1 -1
- package/dist/icon/icons/arrow-both.js.map +1 -1
- package/dist/icon/icons/arrow-cycle.js.map +1 -1
- package/dist/icon/icons/arrow-path-rounded-square.js.map +1 -1
- package/dist/icon/icons/arrow-stop.js.map +1 -1
- package/dist/icon/icons/arrow.js.map +1 -1
- package/dist/icon/icons/at-symbol.js.map +1 -1
- package/dist/icon/icons/backspace.js.map +1 -1
- package/dist/icon/icons/bar-pill-stack.js.map +1 -1
- package/dist/icon/icons/bars-3-bottom-left.js.map +1 -1
- package/dist/icon/icons/bars-3-bottom-right.js.map +1 -1
- package/dist/icon/icons/bars-3-center-left.js.map +1 -1
- package/dist/icon/icons/bars-3.js.map +1 -1
- package/dist/icon/icons/bars-4.js.map +1 -1
- package/dist/icon/icons/beaker.js.map +1 -1
- package/dist/icon/icons/bell-slash.js.map +1 -1
- package/dist/icon/icons/bell-stroke.js.map +1 -1
- package/dist/icon/icons/bell.js.map +1 -1
- package/dist/icon/icons/bold.js.map +1 -1
- package/dist/icon/icons/book.js.map +1 -1
- package/dist/icon/icons/bookmark-stroke.js.map +1 -1
- package/dist/icon/icons/bookmark.js.map +1 -1
- package/dist/icon/icons/bounding-box.js.map +1 -1
- package/dist/icon/icons/branch.js.map +1 -1
- package/dist/icon/icons/briefcase.js.map +1 -1
- package/dist/icon/icons/broadcast.js.map +1 -1
- package/dist/icon/icons/browser.js.map +1 -1
- package/dist/icon/icons/bug.js.map +1 -1
- package/dist/icon/icons/calendar.js.map +1 -1
- package/dist/icon/icons/camera.js.map +1 -1
- package/dist/icon/icons/cancel.js.map +1 -1
- package/dist/icon/icons/caret.js.map +1 -1
- package/dist/icon/icons/carets-closed-square.js.map +1 -1
- package/dist/icon/icons/carousel.js.map +1 -1
- package/dist/icon/icons/category-list.js.map +1 -1
- package/dist/icon/icons/chart-bar.js.map +1 -1
- package/dist/icon/icons/chat-bubble.js.map +1 -1
- package/dist/icon/icons/chat-bubbles.js.map +1 -1
- package/dist/icon/icons/check-badge.js.map +1 -1
- package/dist/icon/icons/check.js.map +1 -1
- package/dist/icon/icons/checklist.js.map +1 -1
- package/dist/icon/icons/checkmark-circle.js.map +1 -1
- package/dist/icon/icons/chevron.js.map +1 -1
- package/dist/icon/icons/chip.js.map +1 -1
- package/dist/icon/icons/circle-angled-line.js.map +1 -1
- package/dist/icon/icons/circle-dash.js.map +1 -1
- package/dist/icon/icons/circle-dot-arrows.js.map +1 -1
- package/dist/icon/icons/circle-dot.js.map +1 -1
- package/dist/icon/icons/circle-half.js.map +1 -1
- package/dist/icon/icons/circle-rule.js.map +1 -1
- package/dist/icon/icons/circle-tick.js.map +1 -1
- package/dist/icon/icons/circle.js.map +1 -1
- package/dist/icon/icons/clipboard.js.map +1 -1
- package/dist/icon/icons/clock-circle-arrow.js.map +1 -1
- package/dist/icon/icons/clock.js.map +1 -1
- package/dist/icon/icons/cloud-download.js.map +1 -1
- package/dist/icon/icons/cloud-upload.js.map +1 -1
- package/dist/icon/icons/cloud.js.map +1 -1
- package/dist/icon/icons/code.js.map +1 -1
- package/dist/icon/icons/collapse-all.js.map +1 -1
- package/dist/icon/icons/collapse-details.js.map +1 -1
- package/dist/icon/icons/color-palette.js.map +1 -1
- package/dist/icon/icons/columns.js.map +1 -1
- package/dist/icon/icons/compare.js.map +1 -1
- package/dist/icon/icons/computer.js.map +1 -1
- package/dist/icon/icons/connect-node.js.map +1 -1
- package/dist/icon/icons/connected-blocks.js.map +1 -1
- package/dist/icon/icons/copy.js.map +1 -1
- package/dist/icon/icons/cross-hairs.js.map +1 -1
- package/dist/icon/icons/cursor-rays.js.map +1 -1
- package/dist/icon/icons/cursor-ripples.js.map +1 -1
- package/dist/icon/icons/data-management.js.map +1 -1
- package/dist/icon/icons/delete-node.js.map +1 -1
- package/dist/icon/icons/delete.js.map +1 -1
- package/dist/icon/icons/doc-checkmark.js.map +1 -1
- package/dist/icon/icons/dock-bottom.js.map +1 -1
- package/dist/icon/icons/dock-none.js.map +1 -1
- package/dist/icon/icons/dock-side.js.map +1 -1
- package/dist/icon/icons/document-clipboard.js.map +1 -1
- package/dist/icon/icons/document.js.map +1 -1
- package/dist/icon/icons/dot-stroke.js.map +1 -1
- package/dist/icon/icons/dot.js.map +1 -1
- package/dist/icon/icons/double-chevron.js.map +1 -1
- package/dist/icon/icons/download.js.map +1 -1
- package/dist/icon/icons/drag.js.map +1 -1
- package/dist/icon/icons/dropper.js.map +1 -1
- package/dist/icon/icons/duplicate.js.map +1 -1
- package/dist/icon/icons/edit.js.map +1 -1
- package/dist/icon/icons/ellipses.js.map +1 -1
- package/dist/icon/icons/envelope.js.map +1 -1
- package/dist/icon/icons/exclamation-circle.js.map +1 -1
- package/dist/icon/icons/exclamation-mark.js.map +1 -1
- package/dist/icon/icons/exclamation-triangle.js.map +1 -1
- package/dist/icon/icons/expand-all.js.map +1 -1
- package/dist/icon/icons/expand-details.js.map +1 -1
- package/dist/icon/icons/expression.js.map +1 -1
- package/dist/icon/icons/eye-hidden.js.map +1 -1
- package/dist/icon/icons/eye.js.map +1 -1
- package/dist/icon/icons/face-frown.js.map +1 -1
- package/dist/icon/icons/face-smile.js.map +1 -1
- package/dist/icon/icons/fast-forward-10.js.map +1 -1
- package/dist/icon/icons/fast-forward.js.map +1 -1
- package/dist/icon/icons/film.js.map +1 -1
- package/dist/icon/icons/filter-stroke.js.map +1 -1
- package/dist/icon/icons/filter.js.map +1 -1
- package/dist/icon/icons/flag-stroke.js.map +1 -1
- package/dist/icon/icons/flag.js.map +1 -1
- package/dist/icon/icons/fold.js.map +1 -1
- package/dist/icon/icons/folder.js.map +1 -1
- package/dist/icon/icons/fork.js.map +1 -1
- package/dist/icon/icons/gear.js.map +1 -1
- package/dist/icon/icons/globe-alt-stroke.js.map +1 -1
- package/dist/icon/icons/globe.js.map +1 -1
- package/dist/icon/icons/group-boxes.js.map +1 -1
- package/dist/icon/icons/group.js.map +1 -1
- package/dist/icon/icons/hand.js.map +1 -1
- package/dist/icon/icons/hash.js.map +1 -1
- package/dist/icon/icons/heading.js.map +1 -1
- package/dist/icon/icons/home.js.map +1 -1
- package/dist/icon/icons/horizontal-rule.js.map +1 -1
- package/dist/icon/icons/hourglass-end.js.map +1 -1
- package/dist/icon/icons/hourglass-mid.js.map +1 -1
- package/dist/icon/icons/hourglass-start.js.map +1 -1
- package/dist/icon/icons/hourglass.js.map +1 -1
- package/dist/icon/icons/identification.js.map +1 -1
- package/dist/icon/icons/image.js.map +1 -1
- package/dist/icon/icons/inbox.js.map +1 -1
- package/dist/icon/icons/infinity.js.map +1 -1
- package/dist/icon/icons/information-circle-stroke.js.map +1 -1
- package/dist/icon/icons/inspect.js.map +1 -1
- package/dist/icon/icons/italic.js.map +1 -1
- package/dist/icon/icons/key.js.map +1 -1
- package/dist/icon/icons/keyboard.js.map +1 -1
- package/dist/icon/icons/laptop-phone.js.map +1 -1
- package/dist/icon/icons/layers.js.map +1 -1
- package/dist/icon/icons/lifebuoy.js.map +1 -1
- package/dist/icon/icons/lightbulb.js.map +1 -1
- package/dist/icon/icons/lightning-bolt.js.map +1 -1
- package/dist/icon/icons/link.js.map +1 -1
- package/dist/icon/icons/list-ordered.js.map +1 -1
- package/dist/icon/icons/list-unordered.js.map +1 -1
- package/dist/icon/icons/lock.js.map +1 -1
- package/dist/icon/icons/login.js.map +1 -1
- package/dist/icon/icons/logout.js.map +1 -1
- package/dist/icon/icons/looping-off.js.map +1 -1
- package/dist/icon/icons/looping.js.map +1 -1
- package/dist/icon/icons/map-drives.js.map +1 -1
- package/dist/icon/icons/map-pin.js.map +1 -1
- package/dist/icon/icons/map.js.map +1 -1
- package/dist/icon/icons/markdown.js.map +1 -1
- package/dist/icon/icons/maximize.js.map +1 -1
- package/dist/icon/icons/megaphone.js.map +1 -1
- package/dist/icon/icons/menu.js.map +1 -1
- package/dist/icon/icons/merge.js.map +1 -1
- package/dist/icon/icons/meter.js.map +1 -1
- package/dist/icon/icons/minimize.js.map +1 -1
- package/dist/icon/icons/minus-circle.js.map +1 -1
- package/dist/icon/icons/minus.js.map +1 -1
- package/dist/icon/icons/moon.js.map +1 -1
- package/dist/icon/icons/more-actions.js.map +1 -1
- package/dist/icon/icons/multiselect.js.map +1 -1
- package/dist/icon/icons/music-note.js.map +1 -1
- package/dist/icon/icons/newspaper.js.map +1 -1
- package/dist/icon/icons/not-allowed.js.map +1 -1
- package/dist/icon/icons/numbers.js.map +1 -1
- package/dist/icon/icons/office-building.js.map +1 -1
- package/dist/icon/icons/outline.js.map +1 -1
- package/dist/icon/icons/paper-airplane.js.map +1 -1
- package/dist/icon/icons/paper-clip.js.map +1 -1
- package/dist/icon/icons/pause.js.map +1 -1
- package/dist/icon/icons/pencil-square.js.map +1 -1
- package/dist/icon/icons/person-2.js.map +1 -1
- package/dist/icon/icons/person-3.js.map +1 -1
- package/dist/icon/icons/person-circle.js.map +1 -1
- package/dist/icon/icons/person.js.map +1 -1
- package/dist/icon/icons/phone.js.map +1 -1
- package/dist/icon/icons/picture-in-picture.js.map +1 -1
- package/dist/icon/icons/pie-chart.js.map +1 -1
- package/dist/icon/icons/pin.js.map +1 -1
- package/dist/icon/icons/pizza-slice.js.map +1 -1
- package/dist/icon/icons/placeholder.js.map +1 -1
- package/dist/icon/icons/play.js.map +1 -1
- package/dist/icon/icons/plug.js.map +1 -1
- package/dist/icon/icons/plus-circle.js.map +1 -1
- package/dist/icon/icons/plus-minus.js.map +1 -1
- package/dist/icon/icons/pointer-stroke.js.map +1 -1
- package/dist/icon/icons/pointer.js.map +1 -1
- package/dist/icon/icons/priority-high.js.map +1 -1
- package/dist/icon/icons/priority-low.js.map +1 -1
- package/dist/icon/icons/priority-medium.js.map +1 -1
- package/dist/icon/icons/projector.js.map +1 -1
- package/dist/icon/icons/pull-close.js.map +1 -1
- package/dist/icon/icons/pull-draft.js.map +1 -1
- package/dist/icon/icons/pull-open.js.map +1 -1
- package/dist/icon/icons/pulse.js.map +1 -1
- package/dist/icon/icons/puzzle-piece.js.map +1 -1
- package/dist/icon/icons/question-mark-circle-stroke.js.map +1 -1
- package/dist/icon/icons/question-mark-circle.js.map +1 -1
- package/dist/icon/icons/rectangle-group.js.map +1 -1
- package/dist/icon/icons/rectangle-stack-horizontal.js.map +1 -1
- package/dist/icon/icons/rectangle-stack-vertical.js.map +1 -1
- package/dist/icon/icons/redo.js.map +1 -1
- package/dist/icon/icons/refresh.js.map +1 -1
- package/dist/icon/icons/reply.js.map +1 -1
- package/dist/icon/icons/rewind-10.js.map +1 -1
- package/dist/icon/icons/rewind.js.map +1 -1
- package/dist/icon/icons/rocketship.js.map +1 -1
- package/dist/icon/icons/running.js.map +1 -1
- package/dist/icon/icons/scale.js.map +1 -1
- package/dist/icon/icons/scissors.js.map +1 -1
- package/dist/icon/icons/search.js.map +1 -1
- package/dist/icon/icons/sensor.js.map +1 -1
- package/dist/icon/icons/server-stack.js.map +1 -1
- package/dist/icon/icons/server.js.map +1 -1
- package/dist/icon/icons/shapes.js.map +1 -1
- package/dist/icon/icons/share.js.map +1 -1
- package/dist/icon/icons/signal-slash.js.map +1 -1
- package/dist/icon/icons/signal.js.map +1 -1
- package/dist/icon/icons/signpost.js.map +1 -1
- package/dist/icon/icons/sort-ascending.js.map +1 -1
- package/dist/icon/icons/sort-descending.js.map +1 -1
- package/dist/icon/icons/soundwave.js.map +1 -1
- package/dist/icon/icons/sparkles.js.map +1 -1
- package/dist/icon/icons/split-horizontal.js.map +1 -1
- package/dist/icon/icons/split-none.js.map +1 -1
- package/dist/icon/icons/split-vertical.js.map +1 -1
- package/dist/icon/icons/star-half.js.map +1 -1
- package/dist/icon/icons/star-stroke.js.map +1 -1
- package/dist/icon/icons/star.js.map +1 -1
- package/dist/icon/icons/start.js.map +1 -1
- package/dist/icon/icons/status-offline.js.map +1 -1
- package/dist/icon/icons/status-online.js.map +1 -1
- package/dist/icon/icons/stop-sign.js.map +1 -1
- package/dist/icon/icons/stop.js.map +1 -1
- package/dist/icon/icons/stopwatch.js.map +1 -1
- package/dist/icon/icons/strikethrough.js.map +1 -1
- package/dist/icon/icons/sun.js.map +1 -1
- package/dist/icon/icons/swatch.js.map +1 -1
- package/dist/icon/icons/switch-apps.js.map +1 -1
- package/dist/icon/icons/switch.js.map +1 -1
- package/dist/icon/icons/table.js.map +1 -1
- package/dist/icon/icons/tag.js.map +1 -1
- package/dist/icon/icons/task.js.map +1 -1
- package/dist/icon/icons/telescope.js.map +1 -1
- package/dist/icon/icons/template.js.map +1 -1
- package/dist/icon/icons/terminal.js.map +1 -1
- package/dist/icon/icons/thumb-stroke.js.map +1 -1
- package/dist/icon/icons/thumb.js.map +1 -1
- package/dist/icon/icons/traffic-cone.js.map +1 -1
- package/dist/icon/icons/transparent-box.js.map +1 -1
- package/dist/icon/icons/trend-down.js.map +1 -1
- package/dist/icon/icons/trend-up.js.map +1 -1
- package/dist/icon/icons/trophy.js.map +1 -1
- package/dist/icon/icons/truck.js.map +1 -1
- package/dist/icon/icons/typography.js.map +1 -1
- package/dist/icon/icons/undo.js.map +1 -1
- package/dist/icon/icons/unlock.js.map +1 -1
- package/dist/icon/icons/upload.js.map +1 -1
- package/dist/icon/icons/video-camera.js.map +1 -1
- package/dist/icon/icons/view-as-grid.js.map +1 -1
- package/dist/icon/icons/volume-muted.js.map +1 -1
- package/dist/icon/icons/volume.js.map +1 -1
- package/dist/icon/icons/wifi.js.map +1 -1
- package/dist/icon/icons/wrench.js.map +1 -1
- package/dist/icon/icons/x-circle.js.map +1 -1
- package/dist/icon/icons/zoom-in.js.map +1 -1
- package/dist/icon/icons/zoom-out.js.map +1 -1
- package/dist/icon/icons.js.map +1 -1
- package/dist/icon-button/icon-button2.js +2 -2
- package/dist/icon-button/icon-button2.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/input/input-group2.js +1 -1
- package/dist/input/input-group2.js.map +1 -1
- package/dist/input/input2.js +2 -2
- package/dist/internal/base/button.js +3 -3
- package/dist/internal/base/button.js.map +1 -1
- package/dist/internal/controllers/audit.controller.js.map +1 -1
- package/dist/internal/controllers/i18n.controller.js.map +1 -1
- package/dist/internal/controllers/keynav-grid.controller.js.map +1 -1
- package/dist/internal/controllers/keynav-list.controller.js.map +1 -1
- package/dist/internal/controllers/state-active.controller.js.map +1 -1
- package/dist/internal/controllers/state-current.controller.js.map +1 -1
- package/dist/internal/controllers/state-disabled.controller.js.map +1 -1
- package/dist/internal/controllers/state-expanded.controller.js.map +1 -1
- package/dist/internal/controllers/state-highlighted.controller.js.map +1 -1
- package/dist/internal/controllers/state-pressed.controller.js.map +1 -1
- package/dist/internal/controllers/state-scroll.controller.js.map +1 -1
- package/dist/internal/controllers/state-selected.controller.js.map +1 -1
- package/dist/internal/controllers/type-anchor.controller.js.map +1 -1
- package/dist/internal/controllers/type-button.controller.js.map +1 -1
- package/dist/internal/controllers/type-closable.controller.js.map +1 -1
- package/dist/internal/controllers/type-command.controller.js.map +1 -1
- package/dist/internal/controllers/type-expandable.controller.js.map +1 -1
- package/dist/internal/controllers/type-interest.controller.js.map +1 -1
- package/dist/internal/controllers/type-native-popover-trigger.controller.js.map +1 -1
- package/dist/internal/controllers/type-native-popover.controller.js.map +1 -1
- package/dist/internal/controllers/type-native-popover.utils.js.map +1 -1
- package/dist/internal/controllers/type-selectable.controller.js.map +1 -1
- package/dist/internal/controllers/type-ssr.controller.js +2 -2
- package/dist/internal/controllers/type-ssr.controller.js.map +1 -1
- package/dist/internal/controllers/type-submit.controller.js.map +1 -1
- package/dist/internal/controllers/type-touch.controller.js.map +1 -1
- package/dist/internal/decorators/host-attr.js.map +1 -1
- package/dist/internal/decorators/scoped-registry.js.map +1 -1
- package/dist/internal/services/global.service.js +1 -1
- package/dist/internal/services/global.service.js.map +1 -1
- package/dist/internal/services/global.utils.js.map +1 -1
- package/dist/internal/services/i18n.service.js.map +1 -1
- package/dist/internal/services/log.service.js.map +1 -1
- package/dist/internal/services/transition.service.js.map +1 -1
- package/dist/internal/styles/index.js.map +1 -1
- package/dist/internal/styles/popover2.js.map +1 -1
- package/dist/internal/utils/a11y.js.map +1 -1
- package/dist/internal/utils/audit-logs.js.map +1 -1
- package/dist/internal/utils/audit.js.map +1 -1
- package/dist/internal/utils/dom.js.map +1 -1
- package/dist/internal/utils/events.js.map +1 -1
- package/dist/internal/utils/focus.js.map +1 -1
- package/dist/internal/utils/keynav.js.map +1 -1
- package/dist/internal/utils/objects.js.map +1 -1
- package/dist/internal/utils/strings.js.map +1 -1
- package/dist/internal/utils/supports.js.map +1 -1
- package/dist/logo/logo.examples.js.map +1 -1
- package/dist/logo/logo.examples.json +4 -4
- package/dist/logo/logo2.js +2 -2
- package/dist/logo/logo2.js.map +1 -1
- package/dist/menu/menu-item2.js +2 -2
- package/dist/menu/menu-item2.js.map +1 -1
- package/dist/menu/menu.examples.js.map +1 -1
- package/dist/menu/menu.examples.json +3 -3
- package/dist/menu/menu2.js +2 -2
- package/dist/menu/menu2.js.map +1 -1
- package/dist/month/month2.js +2 -2
- package/dist/month/month2.js.map +1 -1
- package/dist/notification/notification-group2.js +2 -2
- package/dist/notification/notification-group2.js.map +1 -1
- package/dist/notification/notification2.js +4 -4
- package/dist/notification/notification2.js.map +1 -1
- package/dist/page/page-panel/page-panel-content2.js +1 -1
- package/dist/page/page-panel/page-panel-content2.js.map +1 -1
- package/dist/page/page-panel/page-panel-footer2.js +2 -2
- package/dist/page/page-panel/page-panel-footer2.js.map +1 -1
- package/dist/page/page-panel/page-panel-header2.js +2 -2
- package/dist/page/page-panel/page-panel-header2.js.map +1 -1
- package/dist/page/page-panel/page-panel2.js +5 -5
- package/dist/page/page-panel/page-panel2.js.map +1 -1
- package/dist/page/page2.js +2 -2
- package/dist/page/page2.js.map +1 -1
- package/dist/page-header/page-header2.js +1 -1
- package/dist/page-header/page-header2.js.map +1 -1
- package/dist/page-loader/page-loader2.js +2 -2
- package/dist/page-loader/page-loader2.js.map +1 -1
- package/dist/pagination/pagination2.js +4 -4
- package/dist/pagination/pagination2.js.map +1 -1
- package/dist/panel/panel2.js +8 -8
- package/dist/panel/panel2.js.map +1 -1
- package/dist/password/password2.js +2 -2
- package/dist/password/password2.js.map +1 -1
- package/dist/polyfills/custom-state-set.js.map +1 -1
- package/dist/polyfills/index.js.map +1 -1
- package/dist/preferences-input/preferences-input.examples.js.map +1 -1
- package/dist/preferences-input/preferences-input.examples.json +1 -1
- package/dist/preferences-input/preferences-input2.js +4 -4
- package/dist/preferences-input/preferences-input2.js.map +1 -1
- package/dist/progress-bar/progress-bar2.js +2 -2
- package/dist/progress-bar/progress-bar2.js.map +1 -1
- package/dist/progress-ring/progress-ring2.js +5 -5
- package/dist/progress-ring/progress-ring2.js.map +1 -1
- package/dist/progressive-filter-chip/progressive-filter-chip2.js +5 -5
- package/dist/progressive-filter-chip/progressive-filter-chip2.js.map +1 -1
- package/dist/pulse/pulse2.js +2 -2
- package/dist/pulse/pulse2.js.map +1 -1
- package/dist/radio/radio-group2.js +2 -2
- package/dist/radio/radio2.js +2 -2
- package/dist/range/range2.js +2 -2
- package/dist/range/range2.js.map +1 -1
- package/dist/resize-handle/resize-handle2.js +5 -5
- package/dist/resize-handle/resize-handle2.js.map +1 -1
- package/dist/search/search2.js +2 -2
- package/dist/search/search2.js.map +1 -1
- package/dist/select/select2.js +6 -6
- package/dist/select/select2.js.map +1 -1
- package/dist/skeleton/skeleton2.js +2 -2
- package/dist/skeleton/skeleton2.js.map +1 -1
- package/dist/sort-button/sort-button2.js +14 -14
- package/dist/sort-button/sort-button2.js.map +1 -1
- package/dist/sparkline/sparkline.utils.d.ts +0 -1
- package/dist/sparkline/sparkline.utils.js.map +1 -1
- package/dist/sparkline/sparkline2.js +2 -2
- package/dist/sparkline/sparkline2.js.map +1 -1
- package/dist/star-rating/star-rating2.js +4 -4
- package/dist/star-rating/star-rating2.js.map +1 -1
- package/dist/steps/steps2.js +7 -7
- package/dist/steps/steps2.js.map +1 -1
- package/dist/switch/switch-group2.js +2 -2
- package/dist/switch/switch2.js +2 -2
- package/dist/tabs/tabs-group2.js +16 -16
- package/dist/tabs/tabs-group2.js.map +1 -1
- package/dist/tabs/tabs2.js +7 -7
- package/dist/tabs/tabs2.js.map +1 -1
- package/dist/tag/tag2.js +5 -5
- package/dist/tag/tag2.js.map +1 -1
- package/dist/textarea/textarea2.js +1 -1
- package/dist/time/time2.js +2 -2
- package/dist/time/time2.js.map +1 -1
- package/dist/toast/toast2.js +4 -4
- package/dist/toast/toast2.js.map +1 -1
- package/dist/toggletip/toggletip-footer2.js +2 -2
- package/dist/toggletip/toggletip-footer2.js.map +1 -1
- package/dist/toggletip/toggletip-header2.js +2 -2
- package/dist/toggletip/toggletip-header2.js.map +1 -1
- package/dist/toggletip/toggletip2.js +4 -4
- package/dist/toggletip/toggletip2.js.map +1 -1
- package/dist/toolbar/toolbar2.js +4 -4
- package/dist/toolbar/toolbar2.js.map +1 -1
- package/dist/tooltip/tooltip2.js +2 -2
- package/dist/tooltip/tooltip2.js.map +1 -1
- package/dist/tree/tree-node2.js +9 -9
- package/dist/tree/tree-node2.js.map +1 -1
- package/dist/tree/tree2.js +4 -4
- package/dist/tree/tree2.js.map +1 -1
- package/dist/tree/utils.js.map +1 -1
- package/dist/week/week2.js +2 -2
- package/dist/week/week2.js.map +1 -1
- package/package.json +32 -14
package/dist/panel/panel2.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"panel2.js","names":["#i18nController","#direction","#typeExpandableController"],"sources":["../../src/panel/panel.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { when } from 'lit/directives/when.js';\nimport {\n stateExpanded,\n I18nController,\n TypeExpandableController,\n useStyles,\n attachInternals,\n scopedRegistry\n} from '@nvidia-elements/core/internal';\nimport { IconButton } from '@nvidia-elements/core/icon-button';\nimport panelStyleSheet from './panel.css?inline';\nimport panelHeaderStyleSheet from './panel-header.css?inline';\nimport panelContentStyleSheet from './panel-content.css?inline';\nimport panelFooterStyleSheet from './panel-footer.css?inline';\n\n/**\n * @element nve-panel-header\n * @description Displays the title, subtitle, and optional action controls at the top of a panel.\n * @since 0.10.0\n * @entrypoint \\@nvidia-elements/core/panel\n * @slot - default content slot\n * @slot title - Title Text\n * @slot subtitle - Subtitle Text\n * @slot action-icon - Extra Action Button\n * @cssprop --padding\n * @cssprop --border-bottom\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/\n * @deprecated use `nve-page-panel` with `nve-page` instead\n */\nexport class PanelHeader extends LitElement {\n static styles = useStyles([panelHeaderStyleSheet]);\n\n static readonly metadata = {\n tag: 'nve-panel-header',\n version: '0.0.0'\n };\n\n render() {\n return html`\n <div internal-host>\n <div id=\"titles\">\n <slot name=\"title\"></slot>\n <slot name=\"subtitle\"></slot>\n <slot></slot>\n </div>\n\n <slot name=\"action-icon\"></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback(); // Do not override connectedCallback w/out supering\n this.slot = 'header';\n }\n}\n\n/**\n * @element nve-panel-content\n * @description Contains the main body content within a panel, providing a structured region for detailed information.\n * @since 0.10.0\n * @entrypoint \\@nvidia-elements/core/panel\n * @slot - This is a default/unnamed slot for panel content\n * @cssprop --padding\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/\n */\nexport class PanelContent extends LitElement {\n static styles = useStyles([panelContentStyleSheet]);\n\n static readonly metadata = {\n tag: 'nve-panel-content',\n version: '0.0.0'\n };\n\n render() {\n return html`\n <slot></slot>\n `;\n }\n}\n\n/**\n * @element nve-panel-footer\n * @description Provides a designated area at the bottom of a panel for actions or supplementary controls.\n * @since 0.10.0\n * @entrypoint \\@nvidia-elements/core/panel\n * @slot - This is a default/unnamed slot for panel footer content\n * @cssprop --padding\n * @cssprop --border-top\n * @cssprop --gap\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/\n */\nexport class PanelFooter extends LitElement {\n static styles = useStyles([panelFooterStyleSheet]);\n\n static readonly metadata = {\n tag: 'nve-panel-footer',\n version: '0.0.0'\n };\n\n render() {\n return html`\n <footer internal-host>\n <slot></slot>\n </footer>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback(); // Do not override connectedCallback w/out supering\n this.slot = 'footer';\n }\n}\n\n/**\n * @element nve-panel\n * @description Panel is inline container for content that couples to the content on the page (details, extra actions/options). Or [Drawer](./docs/elements/drawer/) is out of context of the rest of the page (notifications, navigations, settings).\n * @since 0.10.0\n * @entrypoint \\@nvidia-elements/core/panel\n * @event open - Dispatched when the panel opens.\n * @event close - Dispatched when the panel closes.\n * @slot - This is a default/unnamed slot for panel content\n * @slot header - header element (Use `panel-header` or custom content)\n * @slot content - content element (Use `panel-content` or custom content)\n * @slot footer - footer element (Use `panel-footer` or custom content)\n * @cssprop --background\n * @cssprop --color\n * @cssprop --box-shadow\n * @cssprop --panel-button-border-radius - Border radius of the panel expand/collapse button\n * @csspart icon-button - The expand/collapse icon button element\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/\n */\n\n@scopedRegistry()\n@stateExpanded<Panel>()\nexport class Panel extends LitElement {\n /**\n * Determines whether the panel is fully expanded, displaying its contents, or not.\n */\n @property({ type: Boolean, reflect: true }) expanded = false;\n\n /**\n * Determines whether the panel collapses down to an expand icon, or fully hides.\n */\n @property({ type: Boolean }) closable = false;\n\n /**\n * Determines whether the panel should handle auto-closing behavior vs. defaults to off.\n */\n @property({ type: Boolean, attribute: 'behavior-expand' }) behaviorExpand = false;\n\n /**\n * Sets the proper collapse icon and collapse animation, based on which side of the page the panel occupies.\n */\n @property({ type: String }) side: 'left' | 'right' = 'left';\n\n static styles = useStyles([panelStyleSheet]);\n\n static readonly metadata = {\n tag: 'nve-panel',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [IconButton.metadata.tag]: IconButton\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n #i18nController: I18nController<this> = new I18nController<this>(this);\n #typeExpandableController = new TypeExpandableController(this);\n\n /**\n * Enables updating internal string values for internationalization.\n */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n get #direction() {\n if (this.side === 'left') {\n return this.expanded ? 'left' : 'right';\n } else {\n return this.expanded ? 'right' : 'left';\n }\n }\n\n render() {\n return html`\n <div internal-host>\n <div class=\"header\">\n <slot name=\"header\"></slot>\n\n ${when(\n !this.closable,\n () => html`\n <nve-icon-button part=\"icon-button\" exportparts=\"icon:icon-button-icon\" .container=${this.expanded ? 'flat' : undefined} icon-name=\"double-chevron\"\n @click=${() => this.#typeExpandableController.toggle()}\n .direction=${this.#direction}\n .expanded=${this.expanded}\n .ariaLabel=${this.expanded ? this.i18n.close : this.i18n.expand}\n ></nve-icon-button>\n `,\n () => html`\n <nve-icon-button part=\"icon-button\" exportparts=\"icon:icon-button-icon\" container=\"flat\" icon-name=\"cancel\"\n @click=${() => this.#typeExpandableController.close()}\n .expanded=${this.expanded}\n .ariaLabel=${this.expanded ? this.i18n.hide : this.i18n.show}\n ></nve-icon-button>\n `\n )}\n </div>\n\n <div class=\"content\">\n <slot></slot>\n </div>\n\n <slot name=\"footer\"></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'region';\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAkCA,IAAa,IAAb,cAAiC,EAAW;;gBAC1B,EAAU,CAAC,EAAsB,CAAC;;;kBAEvB;GACzB,KAAK;GACL,SAAS;GACV;;CAED,SAAS;
|
|
1
|
+
{"version":3,"file":"panel2.js","names":["#i18nController","#direction","#typeExpandableController"],"sources":["../../src/panel/panel.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { when } from 'lit/directives/when.js';\nimport {\n stateExpanded,\n I18nController,\n TypeExpandableController,\n useStyles,\n attachInternals,\n scopedRegistry\n} from '@nvidia-elements/core/internal';\nimport { IconButton } from '@nvidia-elements/core/icon-button';\nimport panelStyleSheet from './panel.css?inline';\nimport panelHeaderStyleSheet from './panel-header.css?inline';\nimport panelContentStyleSheet from './panel-content.css?inline';\nimport panelFooterStyleSheet from './panel-footer.css?inline';\n\n/**\n * @element nve-panel-header\n * @description Displays the title, subtitle, and optional action controls at the top of a panel.\n * @since 0.10.0\n * @entrypoint \\@nvidia-elements/core/panel\n * @slot - default content slot\n * @slot title - Title Text\n * @slot subtitle - Subtitle Text\n * @slot action-icon - Extra Action Button\n * @cssprop --padding\n * @cssprop --border-bottom\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/\n * @deprecated use `nve-page-panel` with `nve-page` instead\n */\nexport class PanelHeader extends LitElement {\n static styles = useStyles([panelHeaderStyleSheet]);\n\n static readonly metadata = {\n tag: 'nve-panel-header',\n version: '0.0.0'\n };\n\n render() {\n return html`\n <div internal-host>\n <div id=\"titles\">\n <slot name=\"title\"></slot>\n <slot name=\"subtitle\"></slot>\n <slot></slot>\n </div>\n\n <slot name=\"action-icon\"></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback(); // Do not override connectedCallback w/out supering\n this.slot = 'header';\n }\n}\n\n/**\n * @element nve-panel-content\n * @description Contains the main body content within a panel, providing a structured region for detailed information.\n * @since 0.10.0\n * @entrypoint \\@nvidia-elements/core/panel\n * @slot - This is a default/unnamed slot for panel content\n * @cssprop --padding\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/\n */\nexport class PanelContent extends LitElement {\n static styles = useStyles([panelContentStyleSheet]);\n\n static readonly metadata = {\n tag: 'nve-panel-content',\n version: '0.0.0'\n };\n\n render() {\n return html`\n <slot></slot>\n `;\n }\n}\n\n/**\n * @element nve-panel-footer\n * @description Provides a designated area at the bottom of a panel for actions or supplementary controls.\n * @since 0.10.0\n * @entrypoint \\@nvidia-elements/core/panel\n * @slot - This is a default/unnamed slot for panel footer content\n * @cssprop --padding\n * @cssprop --border-top\n * @cssprop --gap\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/\n */\nexport class PanelFooter extends LitElement {\n static styles = useStyles([panelFooterStyleSheet]);\n\n static readonly metadata = {\n tag: 'nve-panel-footer',\n version: '0.0.0'\n };\n\n render() {\n return html`\n <footer internal-host>\n <slot></slot>\n </footer>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback(); // Do not override connectedCallback w/out supering\n this.slot = 'footer';\n }\n}\n\n/**\n * @element nve-panel\n * @description Panel is inline container for content that couples to the content on the page (details, extra actions/options). Or [Drawer](./docs/elements/drawer/) is out of context of the rest of the page (notifications, navigations, settings).\n * @since 0.10.0\n * @entrypoint \\@nvidia-elements/core/panel\n * @event open - Dispatched when the panel opens.\n * @event close - Dispatched when the panel closes.\n * @slot - This is a default/unnamed slot for panel content\n * @slot header - header element (Use `panel-header` or custom content)\n * @slot content - content element (Use `panel-content` or custom content)\n * @slot footer - footer element (Use `panel-footer` or custom content)\n * @cssprop --background\n * @cssprop --color\n * @cssprop --box-shadow\n * @cssprop --panel-button-border-radius - Border radius of the panel expand/collapse button\n * @csspart icon-button - The expand/collapse icon button element\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/\n */\n\n@scopedRegistry()\n@stateExpanded<Panel>()\nexport class Panel extends LitElement {\n /**\n * Determines whether the panel is fully expanded, displaying its contents, or not.\n */\n @property({ type: Boolean, reflect: true }) expanded = false;\n\n /**\n * Determines whether the panel collapses down to an expand icon, or fully hides.\n */\n @property({ type: Boolean }) closable = false;\n\n /**\n * Determines whether the panel should handle auto-closing behavior vs. defaults to off.\n */\n @property({ type: Boolean, attribute: 'behavior-expand' }) behaviorExpand = false;\n\n /**\n * Sets the proper collapse icon and collapse animation, based on which side of the page the panel occupies.\n */\n @property({ type: String }) side: 'left' | 'right' = 'left';\n\n static styles = useStyles([panelStyleSheet]);\n\n static readonly metadata = {\n tag: 'nve-panel',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [IconButton.metadata.tag]: IconButton\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n #i18nController: I18nController<this> = new I18nController<this>(this);\n #typeExpandableController = new TypeExpandableController(this);\n\n /**\n * Enables updating internal string values for internationalization.\n */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n get #direction() {\n if (this.side === 'left') {\n return this.expanded ? 'left' : 'right';\n } else {\n return this.expanded ? 'right' : 'left';\n }\n }\n\n render() {\n return html`\n <div internal-host>\n <div class=\"header\">\n <slot name=\"header\"></slot>\n\n ${when(\n !this.closable,\n () => html`\n <nve-icon-button part=\"icon-button\" exportparts=\"icon:icon-button-icon\" .container=${this.expanded ? 'flat' : undefined} icon-name=\"double-chevron\"\n @click=${() => this.#typeExpandableController.toggle()}\n .direction=${this.#direction}\n .expanded=${this.expanded}\n .ariaLabel=${this.expanded ? this.i18n.close : this.i18n.expand}\n ></nve-icon-button>\n `,\n () => html`\n <nve-icon-button part=\"icon-button\" exportparts=\"icon:icon-button-icon\" container=\"flat\" icon-name=\"cancel\"\n @click=${() => this.#typeExpandableController.close()}\n .expanded=${this.expanded}\n .ariaLabel=${this.expanded ? this.i18n.hide : this.i18n.show}\n ></nve-icon-button>\n `\n )}\n </div>\n\n <div class=\"content\">\n <slot></slot>\n </div>\n\n <slot name=\"footer\"></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'region';\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAkCA,IAAa,IAAb,cAAiC,EAAW;;gBAC1B,EAAU,CAAC,EAAsB,CAAC;;;kBAEvB;GACzB,KAAK;GACL,SAAS;GACV;;CAED,SAAS;EACP,OAAO,CAAI;;CAab,oBAAoB;EAElB,AADA,MAAM,mBAAmB,EACzB,KAAK,OAAO;;GAaH,IAAb,cAAkC,EAAW;;gBAC3B,EAAU,CAAC,EAAuB,CAAC;;;kBAExB;GACzB,KAAK;GACL,SAAS;GACV;;CAED,SAAS;EACP,OAAO,CAAI;;GAiBF,IAAb,cAAiC,EAAW;;gBAC1B,EAAU,CAAC,EAAsB,CAAC;;;kBAEvB;GACzB,KAAK;GACL,SAAS;GACV;;CAED,SAAS;EACP,OAAO,CAAI;;CAOb,oBAAoB;EAElB,AADA,MAAM,mBAAmB,EACzB,KAAK,OAAO;;GAyBT,IAAA,cAAoB,EAAW;;+BAImB,oBAKf,0BAKoC,gBAKvB,kBAgBb,IAAI,EAAqB,KAAK,YAC1C,IAAI,EAAyB,KAAK,cAK3B,KAAKA,GAAgB;;;gBApBxC,EAAU,CAAC,EAAgB,CAAC;;;kBAEjB;GACzB,KAAK;GACL,SAAS;GACV;;;4BAE2B,GACzB,EAAW,SAAS,MAAM,GAC5B;;CAKD;CACA;CAOA,IAAIC,KAAa;EAIb,OAHE,KAAK,SAAS,SACT,KAAK,WAAW,SAAS,UAEzB,KAAK,WAAW,UAAU;;CAIrC,SAAS;EACP,OAAO,CAAI,qEAKH,EACA,CAAC,KAAK,gBACA,CAAI,uFAC6E,KAAK,WAAW,SAAS,KAAA,EAAU,6CACvG,KAAKC,GAA0B,QAAQ,CAAC,gBAC1C,KAAKD,GAAW,eACjB,KAAK,SAAS,gBACb,KAAK,WAAW,KAAK,KAAK,QAAQ,KAAK,KAAK,OAAO,6BAG9D,CAAI,6HAES,KAAKC,GAA0B,OAAO,CAAC,eAC1C,KAAK,SAAS,gBACb,KAAK,WAAW,KAAK,KAAK,OAAO,KAAK,KAAK,KAAK,sBAGlE,CAAC;;CAYV,oBAAoB;EAGlB,AAFA,MAAM,mBAAmB,EACzB,EAAgB,KAAK,EACrB,KAAK,WAAW,OAAO;;;GArFxB,EAAS;CAAE,MAAM;CAAS,SAAS;CAAM,CAAC,CAAA,EAAA,EAAA,WAAA,YAAA,KAAA,EAAA,KAK1C,EAAS,EAAE,MAAM,SAAS,CAAC,CAAA,EAAA,EAAA,WAAA,YAAA,KAAA,EAAA,KAK3B,EAAS;CAAE,MAAM;CAAS,WAAW;CAAmB,CAAC,CAAA,EAAA,EAAA,WAAA,kBAAA,KAAA,EAAA,KAKzD,EAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,EAAA,EAAA,WAAA,QAAA,KAAA,EAAA,KAsB1B,EAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,EAAA,EAAA,WAAA,QAAA,KAAA,EAAA,SA3C5B,GAAgB,EAChB,GAAsB,CAAA,EAAA,EAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.
|
|
1
|
+
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.128.0/helpers/decorate.js";
|
|
2
2
|
import { scopedRegistry as t } from "../internal/decorators/scoped-registry.js";
|
|
3
3
|
import { useStyles as n } from "../internal/styles/index.js";
|
|
4
4
|
import { Control as r } from "../forms/control/control2.js";
|
|
@@ -23,7 +23,7 @@ var u = class extends r {
|
|
|
23
23
|
static {
|
|
24
24
|
this.metadata = {
|
|
25
25
|
tag: "nve-password",
|
|
26
|
-
version: "0.
|
|
26
|
+
version: "0.1.1"
|
|
27
27
|
};
|
|
28
28
|
}
|
|
29
29
|
static {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"password2.js","names":["#toggleVisibility"],"sources":["../../src/password/password.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html } from 'lit';\nimport { state } from 'lit/decorators/state.js';\nimport { property } from 'lit/decorators/property.js';\nimport type { ContainerElement } from '@nvidia-elements/core/internal';\nimport { scopedRegistry, useStyles } from '@nvidia-elements/core/internal';\nimport { Control } from '@nvidia-elements/core/forms';\nimport { inputStyles } from '@nvidia-elements/core/input';\nimport { IconButton } from '@nvidia-elements/core/icon-button';\nimport styles from './password.css?inline';\n\n/**\n * @element nve-password\n * @description A password is a control that enables users to enter password text.\n * @since 0.3.0\n * @entrypoint \\@nvidia-elements/core/password\n * @cssprop --padding\n * @cssprop --font-size\n * @cssprop --height\n * @cssprop --background\n * @cssprop --border-radius\n * @cssprop --border\n * @cssprop --cursor\n * @csspart icon-button - The visibility toggle icon button element\n * @aria https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/password\n */\n@scopedRegistry()\nexport class Password extends Control implements ContainerElement {\n /**\n * Reduces the visual container for a minimal borderless appearance while preserving whitespace bounds.\n * Use when embedding within another container such as a toolbar.\n */\n @property({ type: String, reflect: true }) container?: 'flat';\n\n @state() private pressed = false;\n\n static styles = useStyles([...Control.styles, inputStyles, styles]);\n\n static readonly metadata = {\n tag: 'nve-password',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [IconButton.metadata.tag]: IconButton\n };\n\n protected get suffixContent() {\n return html`<nve-icon-button part=\"icon-button\" @click=${() => this.#toggleVisibility()} .pressed=${this.pressed} .iconName=${this.pressed ? 'eye-hidden' : 'eye'} container=\"inline\" .ariaLabel=${this.pressed ? this.i18n.hide : this.i18n.show}></nve-icon-button>`;\n }\n\n #toggleVisibility() {\n this.pressed = !this.pressed;\n this.input.type = this.pressed ? 'text' : 'password';\n }\n}\n"],"mappings":";;;;;;;;;;;AA6BO,IAAA,IAAA,cAAuB,EAAoC;;8BAOrC;;;gBAEX,EAAU;GAAC,GAAG,EAAQ;GAAQ;GAAa;GAAO,CAAC;;;kBAExC;GACzB,KAAK;GACL,SAAS;GACV;;;4BAE2B,GACzB,EAAW,SAAS,MAAM,GAC5B;;CAED,IAAc,gBAAgB;
|
|
1
|
+
{"version":3,"file":"password2.js","names":["#toggleVisibility"],"sources":["../../src/password/password.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html } from 'lit';\nimport { state } from 'lit/decorators/state.js';\nimport { property } from 'lit/decorators/property.js';\nimport type { ContainerElement } from '@nvidia-elements/core/internal';\nimport { scopedRegistry, useStyles } from '@nvidia-elements/core/internal';\nimport { Control } from '@nvidia-elements/core/forms';\nimport { inputStyles } from '@nvidia-elements/core/input';\nimport { IconButton } from '@nvidia-elements/core/icon-button';\nimport styles from './password.css?inline';\n\n/**\n * @element nve-password\n * @description A password is a control that enables users to enter password text.\n * @since 0.3.0\n * @entrypoint \\@nvidia-elements/core/password\n * @cssprop --padding\n * @cssprop --font-size\n * @cssprop --height\n * @cssprop --background\n * @cssprop --border-radius\n * @cssprop --border\n * @cssprop --cursor\n * @csspart icon-button - The visibility toggle icon button element\n * @aria https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/password\n */\n@scopedRegistry()\nexport class Password extends Control implements ContainerElement {\n /**\n * Reduces the visual container for a minimal borderless appearance while preserving whitespace bounds.\n * Use when embedding within another container such as a toolbar.\n */\n @property({ type: String, reflect: true }) container?: 'flat';\n\n @state() private pressed = false;\n\n static styles = useStyles([...Control.styles, inputStyles, styles]);\n\n static readonly metadata = {\n tag: 'nve-password',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [IconButton.metadata.tag]: IconButton\n };\n\n protected get suffixContent() {\n return html`<nve-icon-button part=\"icon-button\" @click=${() => this.#toggleVisibility()} .pressed=${this.pressed} .iconName=${this.pressed ? 'eye-hidden' : 'eye'} container=\"inline\" .ariaLabel=${this.pressed ? this.i18n.hide : this.i18n.show}></nve-icon-button>`;\n }\n\n #toggleVisibility() {\n this.pressed = !this.pressed;\n this.input.type = this.pressed ? 'text' : 'password';\n }\n}\n"],"mappings":";;;;;;;;;;;AA6BO,IAAA,IAAA,cAAuB,EAAoC;;8BAOrC;;;gBAEX,EAAU;GAAC,GAAG,EAAQ;GAAQ;GAAa;GAAO,CAAC;;;kBAExC;GACzB,KAAK;GACL,SAAS;GACV;;;4BAE2B,GACzB,EAAW,SAAS,MAAM,GAC5B;;CAED,IAAc,gBAAgB;EAC5B,OAAO,CAAI,qDAAoD,KAAKA,IAAmB,CAAC,cAAY,KAAK,QAAQ,eAAa,KAAK,UAAU,eAAe,MAAM,mCAAiC,KAAK,UAAU,KAAK,KAAK,OAAO,KAAK,KAAK,KAAK;;CAGpP,KAAoB;EAElB,AADA,KAAK,UAAU,CAAC,KAAK,SACrB,KAAK,MAAM,OAAO,KAAK,UAAU,SAAS;;;GArB3C,EAAS;CAAE,MAAM;CAAQ,SAAS;CAAM,CAAC,CAAA,EAAA,EAAA,WAAA,aAAA,KAAA,EAAA,KAEzC,GAAO,CAAA,EAAA,EAAA,WAAA,WAAA,KAAA,EAAA,SART,GAAgB,CAAA,EAAA,EAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-state-set.js","names":[],"sources":["../../src/polyfills/custom-state-set.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nconst SUPPORTS_CUSTOM_STATES = CSS.supports('selector(:state(test))');\n\n/**\n * CustomStateSet Polyfill for :state() syntax downleveled to legacy :--state syntax (Chromium < v123)\n * https://html.spec.whatwg.org/multipage/custom-elements.html#exposing-custom-element-states\n *\n * https://bugzilla.mozilla.org/show_bug.cgi?id=1588763\n */\n\nclass CustomStateSetPolyfill extends Set {\n // not using native private fields due to terser bug\n private _stateSet: CustomStateSet; // eslint-disable-line no-restricted-syntax\n private _element: HTMLElement; // eslint-disable-line no-restricted-syntax\n\n constructor(stateSet: CustomStateSet, element: HTMLElement) {\n super();\n this._stateSet = stateSet;\n this._element = element;\n }\n\n add(state: string) {\n super.add(state);\n try {\n this._stateSet?.add(state.replace('--', ''));\n // try latest syntax :state()\n } catch {\n // else fallback to legacy syntax [state--*]\n this._element.setAttribute(`state--${state.replace('--', '')}`, '');\n }\n return this;\n }\n\n delete(state: string) {\n super.delete(state);\n try {\n this._stateSet?.delete(state);\n } catch {\n this._element.removeAttribute(`state--${state.replace('--', '')}`);\n }\n return true;\n }\n\n clear() {\n for (const state of this) this.delete(state);\n }\n}\n\ncustomStateSetPolyfill();\n\nfunction customStateSetPolyfill() {\n const attachInternals = HTMLElement.prototype.attachInternals;\n Object.defineProperty(HTMLElement.prototype, 'attachInternals', {\n value: function (..._args: unknown[]) {\n const internals = attachInternals.call(this) as unknown as ElementInternals;\n Object.defineProperty(internals, 'states', { value: new CustomStateSetPolyfill(internals.states, this) });\n return internals;\n }\n });\n\n const matches = Element.prototype.matches;\n Object.defineProperty(Element.prototype, 'matches', {\n value: function (text: string) {\n return matches.call(this, replaceToLegacyState(text));\n }\n });\n\n const replaceSync = CSSStyleSheet.prototype.replaceSync;\n Object.defineProperty(CSSStyleSheet.prototype, 'replaceSync', {\n value: function (text: string) {\n replaceSync.call(this, replaceToLegacyState(text));\n }\n });\n}\n\nfunction replaceToLegacyState(value: string) {\n // if the browser does not support :state(*) selectors replace any CSS state selectors with attribute fallbacks [state-*]\n if (!SUPPORTS_CUSTOM_STATES) {\n return value.replace(/:--([^\\)]+)/g, '[state--$1]').replace(/:state\\(([^\\)]+)\\)/g, '[state--$1]');\n } else {\n return value.replace(/:--([^\\)]+)/g, ':state($1)');\n }\n}\n"],"mappings":";AAGA,IAAM,IAAyB,IAAI,SAAS,yBAAyB,EAS/D,IAAN,cAAqC,IAAI;CAKvC,YAAY,GAA0B,GAAsB;
|
|
1
|
+
{"version":3,"file":"custom-state-set.js","names":[],"sources":["../../src/polyfills/custom-state-set.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nconst SUPPORTS_CUSTOM_STATES = CSS.supports('selector(:state(test))');\n\n/**\n * CustomStateSet Polyfill for :state() syntax downleveled to legacy :--state syntax (Chromium < v123)\n * https://html.spec.whatwg.org/multipage/custom-elements.html#exposing-custom-element-states\n *\n * https://bugzilla.mozilla.org/show_bug.cgi?id=1588763\n */\n\nclass CustomStateSetPolyfill extends Set {\n // not using native private fields due to terser bug\n private _stateSet: CustomStateSet; // eslint-disable-line no-restricted-syntax\n private _element: HTMLElement; // eslint-disable-line no-restricted-syntax\n\n constructor(stateSet: CustomStateSet, element: HTMLElement) {\n super();\n this._stateSet = stateSet;\n this._element = element;\n }\n\n add(state: string) {\n super.add(state);\n try {\n this._stateSet?.add(state.replace('--', ''));\n // try latest syntax :state()\n } catch {\n // else fallback to legacy syntax [state--*]\n this._element.setAttribute(`state--${state.replace('--', '')}`, '');\n }\n return this;\n }\n\n delete(state: string) {\n super.delete(state);\n try {\n this._stateSet?.delete(state);\n } catch {\n this._element.removeAttribute(`state--${state.replace('--', '')}`);\n }\n return true;\n }\n\n clear() {\n for (const state of this) this.delete(state);\n }\n}\n\ncustomStateSetPolyfill();\n\nfunction customStateSetPolyfill() {\n const attachInternals = HTMLElement.prototype.attachInternals;\n Object.defineProperty(HTMLElement.prototype, 'attachInternals', {\n value: function (..._args: unknown[]) {\n const internals = attachInternals.call(this) as unknown as ElementInternals;\n Object.defineProperty(internals, 'states', { value: new CustomStateSetPolyfill(internals.states, this) });\n return internals;\n }\n });\n\n const matches = Element.prototype.matches;\n Object.defineProperty(Element.prototype, 'matches', {\n value: function (text: string) {\n return matches.call(this, replaceToLegacyState(text));\n }\n });\n\n const replaceSync = CSSStyleSheet.prototype.replaceSync;\n Object.defineProperty(CSSStyleSheet.prototype, 'replaceSync', {\n value: function (text: string) {\n replaceSync.call(this, replaceToLegacyState(text));\n }\n });\n}\n\nfunction replaceToLegacyState(value: string) {\n // if the browser does not support :state(*) selectors replace any CSS state selectors with attribute fallbacks [state-*]\n if (!SUPPORTS_CUSTOM_STATES) {\n return value.replace(/:--([^\\)]+)/g, '[state--$1]').replace(/:state\\(([^\\)]+)\\)/g, '[state--$1]');\n } else {\n return value.replace(/:--([^\\)]+)/g, ':state($1)');\n }\n}\n"],"mappings":";AAGA,IAAM,IAAyB,IAAI,SAAS,yBAAyB,EAS/D,IAAN,cAAqC,IAAI;CAKvC,YAAY,GAA0B,GAAsB;EAG1D,AAFA,OAAO,EACP,KAAK,YAAY,GACjB,KAAK,WAAW;;CAGlB,IAAI,GAAe;EACjB,MAAM,IAAI,EAAM;EAChB,IAAI;GACF,KAAK,WAAW,IAAI,EAAM,QAAQ,MAAM,GAAG,CAAC;UAEtC;GAEN,KAAK,SAAS,aAAa,UAAU,EAAM,QAAQ,MAAM,GAAG,IAAI,GAAG;;EAErE,OAAO;;CAGT,OAAO,GAAe;EACpB,MAAM,OAAO,EAAM;EACnB,IAAI;GACF,KAAK,WAAW,OAAO,EAAM;UACvB;GACN,KAAK,SAAS,gBAAgB,UAAU,EAAM,QAAQ,MAAM,GAAG,GAAG;;EAEpE,OAAO;;CAGT,QAAQ;EACN,KAAK,IAAM,KAAS,MAAM,KAAK,OAAO,EAAM;;;AAIhD,GAAwB;AAExB,SAAS,IAAyB;CAChC,IAAM,IAAkB,YAAY,UAAU;CAC9C,OAAO,eAAe,YAAY,WAAW,mBAAmB,EAC9D,OAAO,SAAU,GAAG,GAAkB;EACpC,IAAM,IAAY,EAAgB,KAAK,KAAK;EAE5C,OADA,OAAO,eAAe,GAAW,UAAU,EAAE,OAAO,IAAI,EAAuB,EAAU,QAAQ,KAAK,EAAE,CAAC,EAClG;IAEV,CAAC;CAEF,IAAM,IAAU,QAAQ,UAAU;CAClC,OAAO,eAAe,QAAQ,WAAW,WAAW,EAClD,OAAO,SAAU,GAAc;EAC7B,OAAO,EAAQ,KAAK,MAAM,EAAqB,EAAK,CAAC;IAExD,CAAC;CAEF,IAAM,IAAc,cAAc,UAAU;CAC5C,OAAO,eAAe,cAAc,WAAW,eAAe,EAC5D,OAAO,SAAU,GAAc;EAC7B,EAAY,KAAK,MAAM,EAAqB,EAAK,CAAC;IAErD,CAAC;;AAGJ,SAAS,EAAqB,GAAe;CAGzC,OADG,IAGI,EAAM,QAAQ,gBAAgB,aAAa,GAF3C,EAAM,QAAQ,gBAAgB,cAAc,CAAC,QAAQ,uBAAuB,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/polyfills/index.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * - Vitest (happy-dom/js-dom)\n * - Safari\n *\n * Used for Custom Elements Form/A11y APIs\n * https://github.com/whatwg/html/pull/8467\n * https://bugs.webkit.org/show_bug.cgi?id=215911\n * https://bugzilla.mozilla.org/show_bug.cgi?id=1588763\n */\nimport 'construct-style-sheets-polyfill';\nimport 'element-internals-polyfill';\nimport 'formdata-polyfill';\nimport './custom-state-set.js';\n\n/**\n * https://developer.mozilla.org/en-US/docs/Web/API/Element/toggleAttribute\n * - Vitest (happy-dom/js-dom)\n * - Safari\n *\n * Used in element-internals-polyfill\n */\nif (!Element.prototype.toggleAttribute) {\n Element.prototype.toggleAttribute = function (name, force) {\n const forceBool = force !== void 0 ? !!force : undefined;\n\n if (this.hasAttribute(name)) {\n if (forceBool) {\n return true;\n }\n\n this.removeAttribute(name);\n return false;\n }\n if (forceBool === false) {\n return false;\n }\n\n this.setAttribute(name, '');\n return true;\n };\n}\n"],"mappings":";;;;AAwBK,QAAQ,UAAU,oBACrB,QAAQ,UAAU,kBAAkB,SAAU,GAAM,GAAO;CACzD,IAAM,IAAY,MAAU,KAAK,IAAc,KAAA,IAAV,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/polyfills/index.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * - Vitest (happy-dom/js-dom)\n * - Safari\n *\n * Used for Custom Elements Form/A11y APIs\n * https://github.com/whatwg/html/pull/8467\n * https://bugs.webkit.org/show_bug.cgi?id=215911\n * https://bugzilla.mozilla.org/show_bug.cgi?id=1588763\n */\nimport 'construct-style-sheets-polyfill';\nimport 'element-internals-polyfill';\nimport 'formdata-polyfill';\nimport './custom-state-set.js';\n\n/**\n * https://developer.mozilla.org/en-US/docs/Web/API/Element/toggleAttribute\n * - Vitest (happy-dom/js-dom)\n * - Safari\n *\n * Used in element-internals-polyfill\n */\nif (!Element.prototype.toggleAttribute) {\n Element.prototype.toggleAttribute = function (name, force) {\n const forceBool = force !== void 0 ? !!force : undefined;\n\n if (this.hasAttribute(name)) {\n if (forceBool) {\n return true;\n }\n\n this.removeAttribute(name);\n return false;\n }\n if (forceBool === false) {\n return false;\n }\n\n this.setAttribute(name, '');\n return true;\n };\n}\n"],"mappings":";;;;AAwBK,QAAQ,UAAU,oBACrB,QAAQ,UAAU,kBAAkB,SAAU,GAAM,GAAO;CACzD,IAAM,IAAY,MAAU,KAAK,IAAc,KAAA,IAAV,CAAC,CAAC;CAevC,OAbI,KAAK,aAAa,EAAK,GACrB,IACK,MAGT,KAAK,gBAAgB,EAAK,EACnB,MAEL,MAAc,KACT,MAGT,KAAK,aAAa,GAAM,GAAG,EACpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preferences-input.examples.js","names":[],"sources":["../../src/preferences-input/preferences-input.examples.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html } from 'lit';\nimport '@nvidia-elements/core/button/define.js';\nimport '@nvidia-elements/core/page/define.js';\nimport '@nvidia-elements/core/page-header/define.js';\nimport '@nvidia-elements/core/icon-button/define.js';\nimport '@nvidia-elements/core/dropdown/define.js';\nimport '@nvidia-elements/core/preferences-input/define.js';\n\nexport default {\n title: 'Elements/Preferences Input',\n component: 'nve-preferences-input'\n};\n\n/**\n * @summary Preferences input displaying theme settings (color scheme, scale, reduced motion) for user customization.\n */\nexport const Default = {\n render: () => {\n return html`\n <nve-preferences-input name=\"theme\" value='{ \"color-scheme\": \"dark\", \"scale\": \"compact\", \"reduced-motion\": \"true\" }'></nve-preferences-input>\n `\n }\n};\n\n/**\n * @summary Preferences input integrated with form submission, displaying live JSON value updates.\n */\nexport const Forms = {\n render: () => {\n return html`\n <form id=\"preferences-input-form\" nve-layout=\"row gap:md\">\n <div nve-layout=\"column gap:md\">\n <nve-preferences-input name=\"theme\" value='{ \"color-scheme\": \"light\" }'></nve-preferences-input>\n <nve-button>submit</nve-button>\n </div>\n <pre></pre>\n </form>\n <script type=\"module\">\n const form = document.querySelector('form');\n const preferencesInput = document.querySelector('nve-preferences-input');\n const pre = document.querySelector('form pre');\n\n form.addEventListener('change', renderValues);\n form.addEventListener('input', renderValues);\n form.addEventListener('submit', renderValues);\n pre.innerText = JSON.stringify(preferencesInput.value, null, 2);\n\n \n function renderValues(e) {\n e.preventDefault();\n console.log(e);\n pre.innerText = JSON.stringify(preferencesInput.value, null, 2);\n }\n </script>\n `\n }\n}\n\n/**\n * @summary Preferences input embedded in a dropdown menu triggered from a page header settings button.\n */\nexport const Dropdown = {\n render: () => {\n return html`\n <nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\"
|
|
1
|
+
{"version":3,"file":"preferences-input.examples.js","names":[],"sources":["../../src/preferences-input/preferences-input.examples.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html } from 'lit';\nimport '@nvidia-elements/core/button/define.js';\nimport '@nvidia-elements/core/page/define.js';\nimport '@nvidia-elements/core/page-header/define.js';\nimport '@nvidia-elements/core/icon-button/define.js';\nimport '@nvidia-elements/core/dropdown/define.js';\nimport '@nvidia-elements/core/preferences-input/define.js';\n\nexport default {\n title: 'Elements/Preferences Input',\n component: 'nve-preferences-input'\n};\n\n/**\n * @summary Preferences input displaying theme settings (color scheme, scale, reduced motion) for user customization.\n */\nexport const Default = {\n render: () => {\n return html`\n <nve-preferences-input name=\"theme\" value='{ \"color-scheme\": \"dark\", \"scale\": \"compact\", \"reduced-motion\": \"true\" }'></nve-preferences-input>\n `\n }\n};\n\n/**\n * @summary Preferences input integrated with form submission, displaying live JSON value updates.\n */\nexport const Forms = {\n render: () => {\n return html`\n <form id=\"preferences-input-form\" nve-layout=\"row gap:md\">\n <div nve-layout=\"column gap:md\">\n <nve-preferences-input name=\"theme\" value='{ \"color-scheme\": \"light\" }'></nve-preferences-input>\n <nve-button>submit</nve-button>\n </div>\n <pre></pre>\n </form>\n <script type=\"module\">\n const form = document.querySelector('form');\n const preferencesInput = document.querySelector('nve-preferences-input');\n const pre = document.querySelector('form pre');\n\n form.addEventListener('change', renderValues);\n form.addEventListener('input', renderValues);\n form.addEventListener('submit', renderValues);\n pre.innerText = JSON.stringify(preferencesInput.value, null, 2);\n\n \n function renderValues(e) {\n e.preventDefault();\n console.log(e);\n pre.innerText = JSON.stringify(preferencesInput.value, null, 2);\n }\n </script>\n `\n }\n}\n\n/**\n * @summary Preferences input embedded in a dropdown menu triggered from a page header settings button.\n */\nexport const Dropdown = {\n render: () => {\n return html`\n <nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\">NV</nve-logo>\n <h2 slot=\"prefix\" nve-text=\"heading sm\">NVIDIA</h2>\n <nve-icon-button slot=\"suffix\" icon-name=\"gear\" size=\"sm\" popovertarget=\"preferences-input\"></nve-icon-button>\n </nve-page-header>\n <nve-dropdown id=\"preferences-input\" position=\"bottom\" alignment=\"end\">\n <nve-preferences-input name=\"theme\" value='{ \"color-scheme\": \"dark\" }'></nve-preferences-input>\n </nve-dropdown>\n `\n }\n}\n"],"mappings":";AAGA,IAAA,IAAS"}
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
{
|
|
24
24
|
"id": "preferences-input-dropdown",
|
|
25
25
|
"name": "Dropdown",
|
|
26
|
-
"template": "<nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\"
|
|
26
|
+
"template": "<nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\">NV</nve-logo>\n <h2 slot=\"prefix\" nve-text=\"heading sm\">NVIDIA</h2>\n <nve-icon-button slot=\"suffix\" icon-name=\"gear\" size=\"sm\" popovertarget=\"preferences-input\"></nve-icon-button>\n</nve-page-header>\n<nve-dropdown id=\"preferences-input\" position=\"bottom\" alignment=\"end\">\n <nve-preferences-input name=\"theme\" value='{ \"color-scheme\": \"dark\" }'></nve-preferences-input>\n</nve-dropdown>\n",
|
|
27
27
|
"summary": "Preferences input embedded in a dropdown menu triggered from a page header settings button.",
|
|
28
28
|
"description": "",
|
|
29
29
|
"composition": true,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.
|
|
1
|
+
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.128.0/helpers/decorate.js";
|
|
2
2
|
import { I18nController as t } from "../internal/controllers/i18n.controller.js";
|
|
3
3
|
import { scopedRegistry as n } from "../internal/decorators/scoped-registry.js";
|
|
4
4
|
import { useStyles as r } from "../internal/styles/index.js";
|
|
@@ -36,14 +36,14 @@ function b(e = globalThis.document.documentElement) {
|
|
|
36
36
|
};
|
|
37
37
|
}
|
|
38
38
|
var x = class extends g(d) {
|
|
39
|
-
#e
|
|
39
|
+
#e;
|
|
40
40
|
static {
|
|
41
41
|
this.styles = r([u]);
|
|
42
42
|
}
|
|
43
43
|
static {
|
|
44
44
|
this.metadata = {
|
|
45
45
|
tag: "nve-preferences-input",
|
|
46
|
-
version: "0.
|
|
46
|
+
version: "0.1.1",
|
|
47
47
|
valueSchema: {
|
|
48
48
|
type: "object",
|
|
49
49
|
properties: {
|
|
@@ -68,7 +68,7 @@ var x = class extends g(d) {
|
|
|
68
68
|
return f`<div internal-host><nve-control part="control"><label>${this.i18n.colorScheme}</label><nve-menu part="menu" nve-control>${_.map((e) => f`<nve-menu-item part="menu-item" .selected="${this.value?.["color-scheme"] === e}" .value="${e}" @click="${() => this.#n(e)}"><nve-icon part="icon" name="${y[e]}"></nve-icon>${e}</nve-menu-item>`)}</nve-menu></nve-control>${this.activePreferences.compact ? f`<nve-divider part="divider"></nve-divider><nve-control part="control"><label>${this.i18n.scale}</label><nve-menu part="menu" nve-control>${v.map((e) => f`<nve-menu-item part="menu-item" .selected="${this.value?.scale === e}" .value="${e}" @click="${() => this.#r(e)}">${e}</nve-menu-item>`)}</nve-menu></nve-control>` : ""} ${this.activePreferences["reduced-motion"] ? f`<nve-divider part="divider"></nve-divider><nve-switch part="switch"><label>${this.i18n.reducedMotion}</label> <input type="checkbox" value="reduced-motion" .checked="${this.value?.["reduced-motion"]}" @change="${(e) => this.#i(e.target.checked)}"></nve-switch>` : ""}</div>`;
|
|
69
69
|
}
|
|
70
70
|
constructor() {
|
|
71
|
-
super(), this.i18n = this.#e.i18n, this.activePreferences = {
|
|
71
|
+
super(), this.#e = new t(this), this.i18n = this.#e.i18n, this.activePreferences = {
|
|
72
72
|
light: !1,
|
|
73
73
|
dark: !1,
|
|
74
74
|
"high-contrast": !1,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preferences-input2.js","names":["#setColorScheme","#setScale","#setReducedMotion","#i18nController","#updatePreferences","#update"],"sources":["../../src/preferences-input/preferences-input.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, isServer, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { I18nController, scopedRegistry, useStyles } from '@nvidia-elements/core/internal';\nimport { state } from 'lit/decorators/state.js';\nimport { FormControlMixin } from '@nvidia-elements/forms/mixin';\nimport { type IconName, Icon } from '@nvidia-elements/core/icon';\nimport { Control } from '@nvidia-elements/core/forms';\nimport { Divider } from '@nvidia-elements/core/divider';\nimport { Menu, MenuItem } from '@nvidia-elements/core/menu';\nimport { Switch } from '@nvidia-elements/core/switch';\nimport styles from './preferences-input.css?inline';\n\nexport type ColorScheme = 'auto' | 'light' | 'dark' | 'high-contrast';\nexport type Scale = 'default' | 'compact' | 'relaxed';\nexport type Variant = 'reduced-motion';\n\nconst colorSchemes: ColorScheme[] = ['auto', 'light', 'dark', 'high-contrast'];\nconst scales: Scale[] = ['default', 'compact'];\nconst colorSchemesIcons = {\n auto: 'computer',\n light: 'sun',\n dark: 'moon',\n 'high-contrast': 'circle-half'\n} satisfies Record<ColorScheme, IconName>;\n\nfunction getActivePreferences(element = globalThis.document.documentElement) {\n const computedStyle = getComputedStyle(element);\n\n return {\n light: computedStyle.getPropertyValue('--nve-config-color-scheme-light') === 'true',\n dark: computedStyle.getPropertyValue('--nve-config-color-scheme-dark') === 'true',\n 'high-contrast': computedStyle.getPropertyValue('--nve-config-color-scheme-high-contrast') === 'true',\n compact: computedStyle.getPropertyValue('--nve-config-scale-compact') === 'true',\n 'reduced-motion': computedStyle.getPropertyValue('--nve-config-reduced-motion') === 'true'\n } satisfies Partial<Record<ColorScheme | Scale | Variant, boolean>>;\n}\n\nexport interface PreferencesInputValue {\n 'color-scheme'?: ColorScheme | string;\n scale?: Scale | string;\n 'reduced-motion'?: boolean;\n}\n\n/**\n * @element nve-preferences-input\n * @description A preferences input is a widget for controlling apperance. Stylesheets register to the preferences input by including a css-property, see Standard for an example.\n * @since 1.23.7\n * @entrypoint \\@nvidia-elements/core/preferences-input\n * @event input - Dispatched when the value has changed\n * @event change - Dispatched when the value has changed\n * @cssprop --color\n * @cssprop --width\n * @csspart control - The control wrapper elements that contain the labels and menus\n * @csspart menu - The menu elements that display color scheme and scale options\n * @csspart menu-item - The individual menu item elements for each selectable option\n * @csspart icon - The icon element displayed next to color scheme options\n * @csspart divider - The divider elements that separate preference sections\n * @csspart switch - The switch element for the reduced motion toggle\n *\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/listbox/\n *\n */\n@scopedRegistry()\nexport class PreferencesInput extends FormControlMixin<typeof LitElement, PreferencesInputValue>(LitElement) {\n #i18nController: I18nController<this> = new I18nController<this>(this);\n\n /**\n * Enables updating internal string values for internationalization.\n */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-preferences-input',\n version: '0.0.0',\n valueSchema: {\n type: 'object' as const,\n properties: {\n 'color-scheme': { type: 'string' as const },\n scale: { type: 'string' as const },\n 'reduced-motion': { type: 'boolean' as const }\n }\n }\n };\n\n static elementDefinitions = {\n [Control.metadata.tag]: Control,\n [Divider.metadata.tag]: Divider,\n [Icon.metadata.tag]: Icon,\n [Menu.metadata.tag]: Menu,\n [MenuItem.metadata.tag]: MenuItem,\n [Switch.metadata.tag]: Switch\n };\n\n @state() private activePreferences: ReturnType<typeof getActivePreferences> = {\n light: false,\n dark: false,\n 'high-contrast': false,\n compact: false,\n 'reduced-motion': false\n };\n\n // eslint-disable-next-line max-lines-per-function\n render() {\n return html`\n <div internal-host>\n <nve-control part=\"control\">\n <label>${this.i18n.colorScheme}</label>\n <nve-menu part=\"menu\" nve-control>\n ${colorSchemes.map(\n value => html`\n <nve-menu-item part=\"menu-item\"\n .selected=${this.value?.['color-scheme'] === value}\n .value=${value}\n @click=${() => this.#setColorScheme(value)}\n >\n <nve-icon part=\"icon\" name=${colorSchemesIcons[value]}></nve-icon> ${value}\n </nve-menu-item>\n `\n )}\n </nve-menu>\n </nve-control>\n ${\n this.activePreferences['compact']\n ? html`\n <nve-divider part=\"divider\"></nve-divider>\n <nve-control part=\"control\">\n <label>${this.i18n.scale}</label>\n <nve-menu part=\"menu\" nve-control>\n ${scales.map(\n value => html`\n <nve-menu-item part=\"menu-item\"\n .selected=${this.value?.['scale'] === value}\n .value=${value}\n @click=${() => this.#setScale(value)}\n >\n ${value}\n </nve-menu-item>\n `\n )}\n </nve-menu>\n </nve-control>\n `\n : ''\n }\n ${\n this.activePreferences['reduced-motion']\n ? html`\n <nve-divider part=\"divider\"></nve-divider>\n <nve-switch part=\"switch\">\n <label>${this.i18n.reducedMotion}</label>\n <input\n type=\"checkbox\"\n value=\"reduced-motion\"\n .checked=${this.value?.['reduced-motion']}\n @change=${(e: { target: HTMLInputElement }) => this.#setReducedMotion(e.target.checked)}\n />\n </nve-switch>`\n : ''\n }\n </div>\n `;\n }\n\n constructor() {\n super();\n this.value = {\n 'color-scheme': 'auto',\n 'reduced-motion': false,\n scale: 'default'\n };\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.setAttribute('nve-control', '');\n this.#updatePreferences();\n }\n\n /** @private */\n updateValue(value: PreferencesInputValue) {\n super.updateValue({ ...this.value, ...value });\n this.#updatePreferences();\n }\n\n #updatePreferences() {\n if (!isServer) {\n const preferences = getActivePreferences();\n if (JSON.stringify(this.activePreferences) !== JSON.stringify(preferences)) {\n this.activePreferences = preferences;\n }\n }\n }\n\n #setColorScheme(value: ColorScheme) {\n this.value = { ...this.value, 'color-scheme': value };\n this.#update();\n }\n\n #setScale(value: Scale) {\n this.value = { ...this.value, scale: value };\n this.#update();\n }\n\n #setReducedMotion(value: boolean) {\n this.value = { ...this.value, 'reduced-motion': value };\n this.#update();\n }\n\n #update() {\n this.dispatchInputEvent();\n this.dispatchChangeEvent();\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAmBA,IAAM,IAA8B;CAAC;CAAQ;CAAS;CAAQ;CAAgB,EACxE,IAAkB,CAAC,WAAW,UAAU,EACxC,IAAoB;CACxB,MAAM;CACN,OAAO;CACP,MAAM;CACN,iBAAiB;CAClB;AAED,SAAS,EAAqB,IAAU,WAAW,SAAS,iBAAiB;CAC3E,IAAM,IAAgB,iBAAiB,EAAQ;
|
|
1
|
+
{"version":3,"file":"preferences-input2.js","names":["#setColorScheme","#setScale","#setReducedMotion","#i18nController","#updatePreferences","#update"],"sources":["../../src/preferences-input/preferences-input.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, isServer, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { I18nController, scopedRegistry, useStyles } from '@nvidia-elements/core/internal';\nimport { state } from 'lit/decorators/state.js';\nimport { FormControlMixin } from '@nvidia-elements/forms/mixin';\nimport { type IconName, Icon } from '@nvidia-elements/core/icon';\nimport { Control } from '@nvidia-elements/core/forms';\nimport { Divider } from '@nvidia-elements/core/divider';\nimport { Menu, MenuItem } from '@nvidia-elements/core/menu';\nimport { Switch } from '@nvidia-elements/core/switch';\nimport styles from './preferences-input.css?inline';\n\nexport type ColorScheme = 'auto' | 'light' | 'dark' | 'high-contrast';\nexport type Scale = 'default' | 'compact' | 'relaxed';\nexport type Variant = 'reduced-motion';\n\nconst colorSchemes: ColorScheme[] = ['auto', 'light', 'dark', 'high-contrast'];\nconst scales: Scale[] = ['default', 'compact'];\nconst colorSchemesIcons = {\n auto: 'computer',\n light: 'sun',\n dark: 'moon',\n 'high-contrast': 'circle-half'\n} satisfies Record<ColorScheme, IconName>;\n\nfunction getActivePreferences(element = globalThis.document.documentElement) {\n const computedStyle = getComputedStyle(element);\n\n return {\n light: computedStyle.getPropertyValue('--nve-config-color-scheme-light') === 'true',\n dark: computedStyle.getPropertyValue('--nve-config-color-scheme-dark') === 'true',\n 'high-contrast': computedStyle.getPropertyValue('--nve-config-color-scheme-high-contrast') === 'true',\n compact: computedStyle.getPropertyValue('--nve-config-scale-compact') === 'true',\n 'reduced-motion': computedStyle.getPropertyValue('--nve-config-reduced-motion') === 'true'\n } satisfies Partial<Record<ColorScheme | Scale | Variant, boolean>>;\n}\n\nexport interface PreferencesInputValue {\n 'color-scheme'?: ColorScheme | string;\n scale?: Scale | string;\n 'reduced-motion'?: boolean;\n}\n\n/**\n * @element nve-preferences-input\n * @description A preferences input is a widget for controlling apperance. Stylesheets register to the preferences input by including a css-property, see Standard for an example.\n * @since 1.23.7\n * @entrypoint \\@nvidia-elements/core/preferences-input\n * @event input - Dispatched when the value has changed\n * @event change - Dispatched when the value has changed\n * @cssprop --color\n * @cssprop --width\n * @csspart control - The control wrapper elements that contain the labels and menus\n * @csspart menu - The menu elements that display color scheme and scale options\n * @csspart menu-item - The individual menu item elements for each selectable option\n * @csspart icon - The icon element displayed next to color scheme options\n * @csspart divider - The divider elements that separate preference sections\n * @csspart switch - The switch element for the reduced motion toggle\n *\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/listbox/\n *\n */\n@scopedRegistry()\nexport class PreferencesInput extends FormControlMixin<typeof LitElement, PreferencesInputValue>(LitElement) {\n #i18nController: I18nController<this> = new I18nController<this>(this);\n\n /**\n * Enables updating internal string values for internationalization.\n */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-preferences-input',\n version: '0.0.0',\n valueSchema: {\n type: 'object' as const,\n properties: {\n 'color-scheme': { type: 'string' as const },\n scale: { type: 'string' as const },\n 'reduced-motion': { type: 'boolean' as const }\n }\n }\n };\n\n static elementDefinitions = {\n [Control.metadata.tag]: Control,\n [Divider.metadata.tag]: Divider,\n [Icon.metadata.tag]: Icon,\n [Menu.metadata.tag]: Menu,\n [MenuItem.metadata.tag]: MenuItem,\n [Switch.metadata.tag]: Switch\n };\n\n @state() private activePreferences: ReturnType<typeof getActivePreferences> = {\n light: false,\n dark: false,\n 'high-contrast': false,\n compact: false,\n 'reduced-motion': false\n };\n\n // eslint-disable-next-line max-lines-per-function\n render() {\n return html`\n <div internal-host>\n <nve-control part=\"control\">\n <label>${this.i18n.colorScheme}</label>\n <nve-menu part=\"menu\" nve-control>\n ${colorSchemes.map(\n value => html`\n <nve-menu-item part=\"menu-item\"\n .selected=${this.value?.['color-scheme'] === value}\n .value=${value}\n @click=${() => this.#setColorScheme(value)}\n >\n <nve-icon part=\"icon\" name=${colorSchemesIcons[value]}></nve-icon> ${value}\n </nve-menu-item>\n `\n )}\n </nve-menu>\n </nve-control>\n ${\n this.activePreferences['compact']\n ? html`\n <nve-divider part=\"divider\"></nve-divider>\n <nve-control part=\"control\">\n <label>${this.i18n.scale}</label>\n <nve-menu part=\"menu\" nve-control>\n ${scales.map(\n value => html`\n <nve-menu-item part=\"menu-item\"\n .selected=${this.value?.['scale'] === value}\n .value=${value}\n @click=${() => this.#setScale(value)}\n >\n ${value}\n </nve-menu-item>\n `\n )}\n </nve-menu>\n </nve-control>\n `\n : ''\n }\n ${\n this.activePreferences['reduced-motion']\n ? html`\n <nve-divider part=\"divider\"></nve-divider>\n <nve-switch part=\"switch\">\n <label>${this.i18n.reducedMotion}</label>\n <input\n type=\"checkbox\"\n value=\"reduced-motion\"\n .checked=${this.value?.['reduced-motion']}\n @change=${(e: { target: HTMLInputElement }) => this.#setReducedMotion(e.target.checked)}\n />\n </nve-switch>`\n : ''\n }\n </div>\n `;\n }\n\n constructor() {\n super();\n this.value = {\n 'color-scheme': 'auto',\n 'reduced-motion': false,\n scale: 'default'\n };\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.setAttribute('nve-control', '');\n this.#updatePreferences();\n }\n\n /** @private */\n updateValue(value: PreferencesInputValue) {\n super.updateValue({ ...this.value, ...value });\n this.#updatePreferences();\n }\n\n #updatePreferences() {\n if (!isServer) {\n const preferences = getActivePreferences();\n if (JSON.stringify(this.activePreferences) !== JSON.stringify(preferences)) {\n this.activePreferences = preferences;\n }\n }\n }\n\n #setColorScheme(value: ColorScheme) {\n this.value = { ...this.value, 'color-scheme': value };\n this.#update();\n }\n\n #setScale(value: Scale) {\n this.value = { ...this.value, scale: value };\n this.#update();\n }\n\n #setReducedMotion(value: boolean) {\n this.value = { ...this.value, 'reduced-motion': value };\n this.#update();\n }\n\n #update() {\n this.dispatchInputEvent();\n this.dispatchChangeEvent();\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAmBA,IAAM,IAA8B;CAAC;CAAQ;CAAS;CAAQ;CAAgB,EACxE,IAAkB,CAAC,WAAW,UAAU,EACxC,IAAoB;CACxB,MAAM;CACN,OAAO;CACP,MAAM;CACN,iBAAiB;CAClB;AAED,SAAS,EAAqB,IAAU,WAAW,SAAS,iBAAiB;CAC3E,IAAM,IAAgB,iBAAiB,EAAQ;CAE/C,OAAO;EACL,OAAO,EAAc,iBAAiB,kCAAkC,KAAK;EAC7E,MAAM,EAAc,iBAAiB,iCAAiC,KAAK;EAC3E,iBAAiB,EAAc,iBAAiB,0CAA0C,KAAK;EAC/F,SAAS,EAAc,iBAAiB,6BAA6B,KAAK;EAC1E,kBAAkB,EAAc,iBAAiB,8BAA8B,KAAK;EACrF;;AA6BI,IAAA,IAAA,cAA+B,EAA2D,EAAW,CAAC;CAC3G;;gBAOgB,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACT,aAAa;IACX,MAAM;IACN,YAAY;KACV,gBAAgB,EAAE,MAAM,UAAmB;KAC3C,OAAO,EAAE,MAAM,UAAmB;KAClC,kBAAkB,EAAE,MAAM,WAAA;;;GAG/B;;;4BAE2B;IACzB,EAAQ,SAAS,MAAM;IACvB,EAAQ,SAAS,MAAM;IACvB,EAAK,SAAS,MAAM;IACpB,EAAK,SAAS,MAAM;IACpB,EAAS,SAAS,MAAM;IACxB,EAAO,SAAS,MAAM;GACxB;;CAWD,SAAS;EACP,OAAO,CAAI,yDAGI,KAAK,KAAK,YAAY,4CAE7B,EAAa,KACb,MAAS,CAAI,8CAEC,KAAK,QAAQ,oBAAoB,EAAM,YAC1C,EAAM,kBACA,KAAKA,GAAgB,EAAM,CAAC,gCAEd,EAAkB,GAAO,eAAe,EAAM,kBAG9E,CAAC,2BAIF,KAAK,kBAAkB,UACnB,CAAI,gFAGC,KAAK,KAAK,MAAM,4CAEvB,EAAO,KACP,MAAS,CAAI,8CAEC,KAAK,OAAQ,UAAa,EAAM,YACnC,EAAM,kBACA,KAAKC,GAAU,EAAM,CAAC,IAEnC,EAAM,kBAGX,CAAC,6BAIE,GACL,GAEC,KAAK,kBAAkB,oBACnB,CAAI,8EAGC,KAAK,KAAK,cAAc,mEAIpB,KAAK,QAAQ,kBAAkB,cAC/B,MAAoC,KAAKC,GAAkB,EAAE,OAAO,QAAQ,CAAC,mBAGtF,GACL;;CAKP,cAAc;EAEZ,AADA,OAAO,YAtG+B,IAAI,EAAqB,KAAK,cAKnC,KAAKC,GAAgB,+BA0BsB;GAC5E,OAAO;GACP,MAAM;GACN,iBAAiB;GACjB,SAAS;GACT,kBAAkB;GACnB,EAkEC,KAAK,QAAQ;GACX,gBAAgB;GAChB,kBAAkB;GAClB,OAAO;GACR;;CAGH,oBAAoB;EAGlB,AAFA,MAAM,mBAAmB,EACzB,KAAK,aAAa,eAAe,GAAG,EACpC,KAAKC,IAAoB;;CAI3B,YAAY,GAA8B;EAExC,AADA,MAAM,YAAY;GAAE,GAAG,KAAK;GAAO,GAAG;GAAO,CAAC,EAC9C,KAAKA,IAAoB;;CAG3B,KAAqB;EACnB,IAAI,CAAC,GAAU;GACb,IAAM,IAAc,GAAsB;GAC1C,AAAI,KAAK,UAAU,KAAK,kBAAkB,KAAK,KAAK,UAAU,EAAY,KACxE,KAAK,oBAAoB;;;CAK/B,GAAgB,GAAoB;EAElC,AADA,KAAK,QAAQ;GAAE,GAAG,KAAK;GAAO,gBAAgB;GAAO,EACrD,KAAKC,IAAS;;CAGhB,GAAU,GAAc;EAEtB,AADA,KAAK,QAAQ;GAAE,GAAG,KAAK;GAAO,OAAO;GAAO,EAC5C,KAAKA,IAAS;;CAGhB,GAAkB,GAAgB;EAEhC,AADA,KAAK,QAAQ;GAAE,GAAG,KAAK;GAAO,kBAAkB;GAAO,EACvD,KAAKA,IAAS;;CAGhB,KAAU;EAER,AADA,KAAK,oBAAoB,EACzB,KAAK,qBAAqB;;;GA/I3B,EAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,EAAA,EAAA,WAAA,QAAA,KAAA,EAAA,KA0B1B,GAAO,CAAA,EAAA,EAAA,WAAA,qBAAA,KAAA,EAAA,SAjCT,GAAgB,CAAA,EAAA,EAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.
|
|
1
|
+
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.128.0/helpers/decorate.js";
|
|
2
2
|
import { scopedRegistry as t } from "../internal/decorators/scoped-registry.js";
|
|
3
3
|
import { useStyles as n } from "../internal/styles/index.js";
|
|
4
4
|
import r from "./progress-bar.js";
|
|
@@ -16,7 +16,7 @@ var c = class extends i {
|
|
|
16
16
|
static {
|
|
17
17
|
this.metadata = {
|
|
18
18
|
tag: "nve-progress-bar",
|
|
19
|
-
version: "0.
|
|
19
|
+
version: "0.1.1"
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
22
|
render() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress-bar2.js","names":[],"sources":["../../src/progress-bar/progress-bar.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport type { SupportStatus } from '@nvidia-elements/core/internal';\nimport { scopedRegistry, useStyles } from '@nvidia-elements/core/internal';\nimport { property } from 'lit/decorators/property.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport styles from './progress-bar.css?inline';\n\n/**\n * @element nve-progress-bar\n * @description A progress bar is a visual indicator of the status of a running task. Under the hood, the component uses the native HTML `progress` element to achieve proper a11y concerns.\n * @since 0.16.0\n * @entrypoint \\@nvidia-elements/core/progress-bar\n * @cssprop --height\n * @cssprop --opacity\n * @cssprop --background\n * @cssprop --accent-color\n * @cssprop --indeterminate-gradient - Gradient used for indeterminate state animation\n * @aria https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/progressbar_role\n */\n@scopedRegistry()\nexport class ProgressBar extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-progress-bar',\n version: '0.0.0'\n };\n\n /** The current `value` of the progress indicator, set to the native HTML progress element. */\n @property({ type: Number, reflect: true }) value?: number;\n\n /** The `max` property sets the highest value that `value` scales to. */\n @property({ type: Number }) max? = 100;\n\n /** Defines visual treatment to represent a ongoing task or support status. */\n @property({ type: String, reflect: true }) status: SupportStatus;\n\n render() {\n const classes = {\n full: this.value === this.max,\n 'min-width': this.value !== undefined && this.value > 0,\n indeterminate: this.value === undefined\n };\n\n return html`\n <progress internal-host .max=${this.max as number} .value=${this.value === undefined ? (100 as number) : (this.value as number)} class=${classMap(classes)}></progress>\n `;\n }\n}\n"],"mappings":";;;;;;;;AAuBO,IAAA,IAAA,cAA0B,EAAW;;0BAYP;;;gBAXnB,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACV;;CAWD,SAAS;EACP,IAAM,IAAU;GACd,MAAM,KAAK,UAAU,KAAK;GAC1B,aAAa,KAAK,UAAU,KAAA,KAAa,KAAK,QAAQ;GACtD,eAAe,KAAK,UAAU,KAAA;GAC/B;
|
|
1
|
+
{"version":3,"file":"progress-bar2.js","names":[],"sources":["../../src/progress-bar/progress-bar.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport type { SupportStatus } from '@nvidia-elements/core/internal';\nimport { scopedRegistry, useStyles } from '@nvidia-elements/core/internal';\nimport { property } from 'lit/decorators/property.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport styles from './progress-bar.css?inline';\n\n/**\n * @element nve-progress-bar\n * @description A progress bar is a visual indicator of the status of a running task. Under the hood, the component uses the native HTML `progress` element to achieve proper a11y concerns.\n * @since 0.16.0\n * @entrypoint \\@nvidia-elements/core/progress-bar\n * @cssprop --height\n * @cssprop --opacity\n * @cssprop --background\n * @cssprop --accent-color\n * @cssprop --indeterminate-gradient - Gradient used for indeterminate state animation\n * @aria https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/progressbar_role\n */\n@scopedRegistry()\nexport class ProgressBar extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-progress-bar',\n version: '0.0.0'\n };\n\n /** The current `value` of the progress indicator, set to the native HTML progress element. */\n @property({ type: Number, reflect: true }) value?: number;\n\n /** The `max` property sets the highest value that `value` scales to. */\n @property({ type: Number }) max? = 100;\n\n /** Defines visual treatment to represent a ongoing task or support status. */\n @property({ type: String, reflect: true }) status: SupportStatus;\n\n render() {\n const classes = {\n full: this.value === this.max,\n 'min-width': this.value !== undefined && this.value > 0,\n indeterminate: this.value === undefined\n };\n\n return html`\n <progress internal-host .max=${this.max as number} .value=${this.value === undefined ? (100 as number) : (this.value as number)} class=${classMap(classes)}></progress>\n `;\n }\n}\n"],"mappings":";;;;;;;;AAuBO,IAAA,IAAA,cAA0B,EAAW;;0BAYP;;;gBAXnB,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACV;;CAWD,SAAS;EACP,IAAM,IAAU;GACd,MAAM,KAAK,UAAU,KAAK;GAC1B,aAAa,KAAK,UAAU,KAAA,KAAa,KAAK,QAAQ;GACtD,eAAe,KAAK,UAAU,KAAA;GAC/B;EAED,OAAO,CAAI,iCACsB,KAAK,IAAc,YAAU,KAAK,UAAU,KAAA,IAAa,MAAkB,KAAK,MAAiB,WAAS,EAAS,EAAQ,CAAC;;;GAhB9J,EAAS;CAAE,MAAM;CAAQ,SAAS;CAAM,CAAC,CAAA,EAAA,EAAA,WAAA,SAAA,KAAA,EAAA,KAGzC,EAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,EAAA,EAAA,WAAA,OAAA,KAAA,EAAA,KAG1B,EAAS;CAAE,MAAM;CAAQ,SAAS;CAAM,CAAC,CAAA,EAAA,EAAA,WAAA,UAAA,KAAA,EAAA,SAhB3C,GAAgB,CAAA,EAAA,EAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { attachInternals as e } from "../internal/utils/a11y.js";
|
|
2
|
-
import { __decorate as t } from "../_virtual/_@oxc-project_runtime@0.
|
|
2
|
+
import { __decorate as t } from "../_virtual/_@oxc-project_runtime@0.128.0/helpers/decorate.js";
|
|
3
3
|
import { I18nController as n } from "../internal/controllers/i18n.controller.js";
|
|
4
4
|
import { scopedRegistry as r } from "../internal/decorators/scoped-registry.js";
|
|
5
5
|
import { useStyles as i } from "../internal/styles/index.js";
|
|
@@ -12,7 +12,7 @@ import { queryAssignedElements as d } from "lit/decorators/query-assigned-elemen
|
|
|
12
12
|
//#region src/progress-ring/progress-ring.ts
|
|
13
13
|
var f = class extends c {
|
|
14
14
|
constructor(...e) {
|
|
15
|
-
super(...e), this.max = 100, this.status = "neutral", this.i18n = this.#e.i18n;
|
|
15
|
+
super(...e), this.max = 100, this.status = "neutral", this.#e = new n(this), this.i18n = this.#e.i18n, this.#t = !1;
|
|
16
16
|
}
|
|
17
17
|
static {
|
|
18
18
|
this.styles = i([s]);
|
|
@@ -20,14 +20,14 @@ var f = class extends c {
|
|
|
20
20
|
static {
|
|
21
21
|
this.metadata = {
|
|
22
22
|
tag: "nve-progress-ring",
|
|
23
|
-
version: "0.
|
|
23
|
+
version: "0.1.1"
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
26
|
static {
|
|
27
27
|
this.elementDefinitions = { [o.metadata.tag]: o };
|
|
28
28
|
}
|
|
29
|
-
#e
|
|
30
|
-
#t
|
|
29
|
+
#e;
|
|
30
|
+
#t;
|
|
31
31
|
render() {
|
|
32
32
|
return l`<div internal-host ?indeterminate="${this.value === void 0}"><svg viewBox="0 0 16 16" role="presentation"><circle cx="8px" cy="8px" r="6.5px" class="background"></circle><circle cx="8px" cy="8px" r="6.5px" class="ring" stroke-dasharray="${`${(this.value ?? 0) / (this.max ?? 100) * 44}px 44px`}"></circle></svg><slot>${this.status !== "accent" && !this.#t ? l`<nve-icon part="icon" .name="${this.status ? a[this.status] : void 0}" .status="${this.status}" aria-hidden="true"></nve-icon>` : ""}</slot><slot name="status-icon" @slotchange="${this.#n}"></slot></div>`;
|
|
33
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress-ring2.js","names":["#i18nController","#hasStatusIconContent","#updateStatusIcon"],"sources":["../../src/progress-ring/progress-ring.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { PropertyValues } from 'lit';\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { queryAssignedElements } from 'lit/decorators/query-assigned-elements.js';\nimport type { Size, SupportStatus } from '@nvidia-elements/core/internal';\nimport {\n attachInternals,\n I18nController,\n scopedRegistry,\n statusIcons,\n useStyles\n} from '@nvidia-elements/core/internal';\nimport { Icon } from '@nvidia-elements/core/icon';\nimport styles from './progress-ring.css?inline';\n\n/**\n * @element nve-progress-ring\n * @description The `progress-ring` component shows the status of a pending task. It also serves the basis of the page loading element.\n * @since 0.17.0\n * @entrypoint \\@nvidia-elements/core/progress-ring\n * @slot - Content to display in the ring center. Defaults to a status icon.\n * @slot status-icon - (deprecated) Use the default slot instead.\n * @cssprop --background-color\n * @cssprop --ring-color\n * @cssprop --ring-background-opacity\n * @cssprop --ring-width\n * @cssprop --width\n * @cssprop --height\n * @cssprop --animation-duration\n * @cssprop --color\n * @csspart icon - The icon element\n * @aria https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/progressbar_role\n */\n@scopedRegistry()\nexport class ProgressRing extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-progress-ring',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [Icon.metadata.tag]: Icon\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n /** The current `value` of the progress ring. When not set, an indeterminate animation will show. */\n @property({ type: Number }) value?: number;\n\n /** The `max` value of the progress ring that the `value` is proportionally scaled to. */\n @property({ type: Number }) max? = 100;\n\n /** Four visual treatments represent the `status` of tasks. When `status` changes to `warning`, `success`, or `danger`, the component embeds appropriate icons. */\n @property({ type: String, reflect: true }) status?: SupportStatus | 'neutral' = 'neutral';\n\n /** T-shirt `size` of the progress indicator, used to scale the ring. */\n @property({ type: String, reflect: true }) size?: Size | 'xxs' | 'xs' | 'xl';\n\n #i18nController: I18nController<this> = new I18nController<this>(this);\n\n /** Enables updating internal string values for internationalization. */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n @queryAssignedElements({ slot: 'status-icon' })\n private _deprecatedStatusIconSlot!: Element[];\n\n /**\n * Tracks presence of content presence in deprecated status-icon slot.\n */\n #hasStatusIconContent = false;\n\n render() {\n return html`\n <div internal-host ?indeterminate=${this.value === undefined}>\n <svg viewBox=\"0 0 16 16\" role=\"presentation\">\n <circle cx=\"8px\" cy=\"8px\" r=\"6.5px\" class=\"background\"></circle>\n <circle cx=\"8px\" cy=\"8px\" r=\"6.5px\" class=\"ring\"\n stroke-dasharray=${`${((this.value ?? 0) / (this.max ?? 100)) * 44}px 44px`}>\n </circle>\n </svg>\n <slot>\n ${\n this.status !== 'accent' && !this.#hasStatusIconContent\n ? html`<nve-icon part=\"icon\" .name=${this.status ? statusIcons[this.status] : undefined} .status=${this.status as SupportStatus} aria-hidden=\"true\"></nve-icon>`\n : ''\n }\n </slot>\n <slot name=\"status-icon\" @slotchange=${this.#updateStatusIcon}></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'progressbar';\n }\n\n updated(props: PropertyValues<this>) {\n super.updated(props);\n this._internals.ariaValueNow = `${this.value === undefined ? '' : this.value}`;\n this._internals.ariaValueMax = `${this.max}`;\n const i18nRecord = this.i18n as Record<string, string | undefined>;\n this._internals.ariaLabel =\n (this.status && i18nRecord[this.status] && i18nRecord[this.status] !== 'neutral'\n ? i18nRecord[this.status]!\n : this.i18n.information) ?? null;\n }\n\n #updateStatusIcon() {\n this.#hasStatusIconContent = this._deprecatedStatusIconSlot.length > 0;\n this.requestUpdate();\n }\n}\n"],"mappings":";;;;;;;;;;;;AAqCO,IAAA,IAAA,cAA2B,EAAW;;0BAmBR,mBAG6C,
|
|
1
|
+
{"version":3,"file":"progress-ring2.js","names":["#i18nController","#hasStatusIconContent","#updateStatusIcon"],"sources":["../../src/progress-ring/progress-ring.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { PropertyValues } from 'lit';\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { queryAssignedElements } from 'lit/decorators/query-assigned-elements.js';\nimport type { Size, SupportStatus } from '@nvidia-elements/core/internal';\nimport {\n attachInternals,\n I18nController,\n scopedRegistry,\n statusIcons,\n useStyles\n} from '@nvidia-elements/core/internal';\nimport { Icon } from '@nvidia-elements/core/icon';\nimport styles from './progress-ring.css?inline';\n\n/**\n * @element nve-progress-ring\n * @description The `progress-ring` component shows the status of a pending task. It also serves the basis of the page loading element.\n * @since 0.17.0\n * @entrypoint \\@nvidia-elements/core/progress-ring\n * @slot - Content to display in the ring center. Defaults to a status icon.\n * @slot status-icon - (deprecated) Use the default slot instead.\n * @cssprop --background-color\n * @cssprop --ring-color\n * @cssprop --ring-background-opacity\n * @cssprop --ring-width\n * @cssprop --width\n * @cssprop --height\n * @cssprop --animation-duration\n * @cssprop --color\n * @csspart icon - The icon element\n * @aria https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/progressbar_role\n */\n@scopedRegistry()\nexport class ProgressRing extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-progress-ring',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [Icon.metadata.tag]: Icon\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n /** The current `value` of the progress ring. When not set, an indeterminate animation will show. */\n @property({ type: Number }) value?: number;\n\n /** The `max` value of the progress ring that the `value` is proportionally scaled to. */\n @property({ type: Number }) max? = 100;\n\n /** Four visual treatments represent the `status` of tasks. When `status` changes to `warning`, `success`, or `danger`, the component embeds appropriate icons. */\n @property({ type: String, reflect: true }) status?: SupportStatus | 'neutral' = 'neutral';\n\n /** T-shirt `size` of the progress indicator, used to scale the ring. */\n @property({ type: String, reflect: true }) size?: Size | 'xxs' | 'xs' | 'xl';\n\n #i18nController: I18nController<this> = new I18nController<this>(this);\n\n /** Enables updating internal string values for internationalization. */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n @queryAssignedElements({ slot: 'status-icon' })\n private _deprecatedStatusIconSlot!: Element[];\n\n /**\n * Tracks presence of content presence in deprecated status-icon slot.\n */\n #hasStatusIconContent = false;\n\n render() {\n return html`\n <div internal-host ?indeterminate=${this.value === undefined}>\n <svg viewBox=\"0 0 16 16\" role=\"presentation\">\n <circle cx=\"8px\" cy=\"8px\" r=\"6.5px\" class=\"background\"></circle>\n <circle cx=\"8px\" cy=\"8px\" r=\"6.5px\" class=\"ring\"\n stroke-dasharray=${`${((this.value ?? 0) / (this.max ?? 100)) * 44}px 44px`}>\n </circle>\n </svg>\n <slot>\n ${\n this.status !== 'accent' && !this.#hasStatusIconContent\n ? html`<nve-icon part=\"icon\" .name=${this.status ? statusIcons[this.status] : undefined} .status=${this.status as SupportStatus} aria-hidden=\"true\"></nve-icon>`\n : ''\n }\n </slot>\n <slot name=\"status-icon\" @slotchange=${this.#updateStatusIcon}></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'progressbar';\n }\n\n updated(props: PropertyValues<this>) {\n super.updated(props);\n this._internals.ariaValueNow = `${this.value === undefined ? '' : this.value}`;\n this._internals.ariaValueMax = `${this.max}`;\n const i18nRecord = this.i18n as Record<string, string | undefined>;\n this._internals.ariaLabel =\n (this.status && i18nRecord[this.status] && i18nRecord[this.status] !== 'neutral'\n ? i18nRecord[this.status]!\n : this.i18n.information) ?? null;\n }\n\n #updateStatusIcon() {\n this.#hasStatusIconContent = this._deprecatedStatusIconSlot.length > 0;\n this.requestUpdate();\n }\n}\n"],"mappings":";;;;;;;;;;;;AAqCO,IAAA,IAAA,cAA2B,EAAW;;0BAmBR,mBAG6C,qBAKxC,IAAI,EAAqB,KAAK,cAGnC,KAAKA,GAAgB,gBAQhC;;;gBArCR,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACV;;;4BAE2B,GACzB,EAAK,SAAS,MAAM,GACtB;;CAiBD;CAWA;CAEA,SAAS;EACP,OAAO,CAAI,sCAC2B,KAAK,UAAU,KAAA,EAAU,oLAIpC,IAAK,KAAK,SAAS,MAAM,KAAK,OAAO,OAAQ,GAAG,SAAS,yBAK5E,KAAK,WAAW,YAAY,CAAC,KAAKC,KAC9B,CAAI,gCAA+B,KAAK,SAAS,EAAY,KAAK,UAAU,KAAA,EAAU,aAAW,KAAK,OAAwB,oCAC9H,GACL,+CAEoC,KAAKC,GAAkB;;CAKpE,oBAAoB;EAGlB,AAFA,MAAM,mBAAmB,EACzB,EAAgB,KAAK,EACrB,KAAK,WAAW,OAAO;;CAGzB,QAAQ,GAA6B;EAGnC,AAFA,MAAM,QAAQ,EAAM,EACpB,KAAK,WAAW,eAAe,GAAG,KAAK,UAAU,KAAA,IAAY,KAAK,KAAK,SACvE,KAAK,WAAW,eAAe,GAAG,KAAK;EACvC,IAAM,IAAa,KAAK;EACxB,KAAK,WAAW,aACb,KAAK,UAAU,EAAW,KAAK,WAAW,EAAW,KAAK,YAAY,YACnE,EAAW,KAAK,UAChB,KAAK,KAAK,gBAAgB;;CAGlC,KAAoB;EAElB,AADA,KAAKD,KAAwB,KAAK,0BAA0B,SAAS,GACrE,KAAK,eAAe;;;GAhErB,EAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,EAAA,EAAA,WAAA,SAAA,KAAA,EAAA,KAG1B,EAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,EAAA,EAAA,WAAA,OAAA,KAAA,EAAA,KAG1B,EAAS;CAAE,MAAM;CAAQ,SAAS;CAAM,CAAC,CAAA,EAAA,EAAA,WAAA,UAAA,KAAA,EAAA,KAGzC,EAAS;CAAE,MAAM;CAAQ,SAAS;CAAM,CAAC,CAAA,EAAA,EAAA,WAAA,QAAA,KAAA,EAAA,KAKzC,EAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,EAAA,EAAA,WAAA,QAAA,KAAA,EAAA,KAE1B,EAAsB,EAAE,MAAM,eAAe,CAAC,CAAA,EAAA,EAAA,WAAA,6BAAA,KAAA,EAAA,SAjChD,GAAgB,CAAA,EAAA,EAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { appendRootNodeStyle as e, generateId as t } from "../internal/utils/dom.js";
|
|
2
2
|
import { attachInternals as n } from "../internal/utils/a11y.js";
|
|
3
|
-
import { __decorate as r } from "../_virtual/_@oxc-project_runtime@0.
|
|
3
|
+
import { __decorate as r } from "../_virtual/_@oxc-project_runtime@0.128.0/helpers/decorate.js";
|
|
4
4
|
import { I18nController as i } from "../internal/controllers/i18n.controller.js";
|
|
5
5
|
import { TypeClosableController as a } from "../internal/controllers/type-closable.controller.js";
|
|
6
6
|
import { typeSSR as o } from "../internal/controllers/type-ssr.controller.js";
|
|
@@ -18,12 +18,12 @@ import { state as y } from "lit/decorators/state.js";
|
|
|
18
18
|
//#region src/progressive-filter-chip/progressive-filter-chip.ts
|
|
19
19
|
var b = class extends h {
|
|
20
20
|
constructor(...e) {
|
|
21
|
-
super(...e), this.i18n = this.#e.i18n, this.inputs = [];
|
|
21
|
+
super(...e), this.#e = new i(this), this.i18n = this.#e.i18n, this.inputs = [], this.#t = new a(this);
|
|
22
22
|
}
|
|
23
23
|
static {
|
|
24
24
|
this.metadata = {
|
|
25
25
|
tag: "nve-progressive-filter-chip",
|
|
26
|
-
version: "0.
|
|
26
|
+
version: "0.1.1"
|
|
27
27
|
};
|
|
28
28
|
}
|
|
29
29
|
static {
|
|
@@ -34,11 +34,11 @@ var b = class extends h {
|
|
|
34
34
|
[l.metadata.tag]: l
|
|
35
35
|
};
|
|
36
36
|
}
|
|
37
|
-
#e
|
|
37
|
+
#e;
|
|
38
38
|
static {
|
|
39
39
|
this.styles = c([m]);
|
|
40
40
|
}
|
|
41
|
-
#t
|
|
41
|
+
#t;
|
|
42
42
|
#n(e) {
|
|
43
43
|
let t = g`<slot name="${e.slot}" @slotchange="${this.#r}"></slot>`;
|
|
44
44
|
return e.tagName === "SELECT" ? g`<nve-select part="select" multiple-overflow ?fit-text="${!e.multiple}">${t}</nve-select>` : e.tagName === "INPUT" && e.type === "date" ? g`<nve-date part="date">${t}</nve-date>` : e.tagName === "INPUT" ? g`<nve-input part="input">${t}</nve-input>` : t;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progressive-filter-chip2.js","names":["#i18nController","#removeItem","#getControlTemplate","#typeClosableController","#createItems","#resetItems"],"sources":["../../src/progressive-filter-chip/progressive-filter-chip.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { state } from 'lit/decorators/state.js';\nimport {\n appendRootNodeStyle,\n attachInternals,\n generateId,\n I18nController,\n scopedRegistry,\n TypeClosableController,\n typeSSR,\n useStyles\n} from '@nvidia-elements/core/internal';\nimport { Input } from '@nvidia-elements/core/input';\nimport { Select } from '@nvidia-elements/core/select';\nimport { Date } from '@nvidia-elements/core/date';\nimport { IconButton } from '@nvidia-elements/core/icon-button';\nimport globalStyles from './progressive-filter-chip.global.css?inline';\nimport styles from './progressive-filter-chip.css?inline';\n\n/**\n * @element nve-progressive-filter-chip\n * @description A filter chip is a control that enables users to select many options from a set of choices.\n * @since 0.16.0\n * @entrypoint \\@nvidia-elements/core/progressive-filter-chip\n * @slot - default slot for content\n * @event close - Dispatched when the filter chip closes.\n * @cssprop --gap\n * @cssprop --border-radius\n * @cssprop --border\n * @cssprop --background\n * @cssprop --font-weight\n * @cssprop --padding\n * @cssprop --width\n * @csspart select - The select element\n * @csspart date - The date input element\n * @csspart input - The input element\n * @csspart icon-button - The icon button element\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/toolbar/\n */\n@typeSSR()\n@scopedRegistry()\nexport class ProgressiveFilterChip extends LitElement {\n static readonly metadata = {\n tag: 'nve-progressive-filter-chip',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [Input.metadata.tag]: Input,\n [Select.metadata.tag]: Select,\n [Date.metadata.tag]: Date,\n [IconButton.metadata.tag]: IconButton\n };\n\n /** Determines if a close button should render within filter chip */\n @property({ type: Boolean }) closable: boolean;\n\n #i18nController: I18nController<this> = new I18nController<this>(this);\n\n /** Enables updating internal string values for internationalization. */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n @state() private inputs: Element[] = [];\n\n static styles = useStyles([styles]);\n\n #typeClosableController = new TypeClosableController(this);\n\n /** @private */\n declare _internals: ElementInternals;\n\n #getControlTemplate(el: Element) {\n const slot = html`<slot name=${el.slot} @slotchange=${this.#removeItem}></slot>`;\n if (el.tagName === 'SELECT') {\n return html`<nve-select part=\"select\" multiple-overflow ?fit-text=${!(el as HTMLSelectElement).multiple}>${slot}</nve-select>`;\n } else if (el.tagName === 'INPUT' && (el as HTMLInputElement).type === 'date') {\n return html`<nve-date part=\"date\">${slot}</nve-date>`;\n } else if (el.tagName === 'INPUT') {\n return html`<nve-input part=\"input\">${slot}</nve-input>`;\n } else {\n return slot;\n }\n }\n\n render() {\n return html`\n <div internal-host>\n ${this.inputs.map(el => this.#getControlTemplate(el))}\n ${this.closable ? html`<nve-icon-button part=\"icon-button\" exportparts=\"icon:icon-button-icon\" @click=${() => this.#typeClosableController.close()} .ariaLabel=${this.i18n.close} icon-name=\"cancel\"></nve-icon-button>` : nothing}\n </div>\n <slot hidden-slot @slotchange=${this.#createItems}></slot>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'toolbar';\n this.setAttribute('nve-control', '');\n appendRootNodeStyle(this, globalStyles);\n }\n\n #removeItem(e: Event) {\n if (!(e.target as HTMLSlotElement).assignedElements().length) {\n this.#resetItems();\n }\n }\n\n #createItems(e: Event) {\n if (e.target && (e.target as HTMLSlotElement).assignedElements().length) {\n this.#resetItems();\n const items = Array.from(\n this.shadowRoot!.querySelector<HTMLSlotElement>('slot:not([name])')!.assignedElements()\n ).filter(i => i.matches('input, select, nve-button, [nve-control]'));\n items.forEach(i => (i.slot = generateId()));\n this.inputs = items.length ? items : this.inputs;\n }\n }\n\n #resetItems() {\n Array.from(this.shadowRoot!.querySelectorAll('slot'))\n .flatMap(i => i.assignedElements())\n .forEach(i => (i.slot = ''));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AA6CO,IAAA,IAAA,cAAoC,EAAW;;
|
|
1
|
+
{"version":3,"file":"progressive-filter-chip2.js","names":["#i18nController","#removeItem","#getControlTemplate","#typeClosableController","#createItems","#resetItems"],"sources":["../../src/progressive-filter-chip/progressive-filter-chip.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { state } from 'lit/decorators/state.js';\nimport {\n appendRootNodeStyle,\n attachInternals,\n generateId,\n I18nController,\n scopedRegistry,\n TypeClosableController,\n typeSSR,\n useStyles\n} from '@nvidia-elements/core/internal';\nimport { Input } from '@nvidia-elements/core/input';\nimport { Select } from '@nvidia-elements/core/select';\nimport { Date } from '@nvidia-elements/core/date';\nimport { IconButton } from '@nvidia-elements/core/icon-button';\nimport globalStyles from './progressive-filter-chip.global.css?inline';\nimport styles from './progressive-filter-chip.css?inline';\n\n/**\n * @element nve-progressive-filter-chip\n * @description A filter chip is a control that enables users to select many options from a set of choices.\n * @since 0.16.0\n * @entrypoint \\@nvidia-elements/core/progressive-filter-chip\n * @slot - default slot for content\n * @event close - Dispatched when the filter chip closes.\n * @cssprop --gap\n * @cssprop --border-radius\n * @cssprop --border\n * @cssprop --background\n * @cssprop --font-weight\n * @cssprop --padding\n * @cssprop --width\n * @csspart select - The select element\n * @csspart date - The date input element\n * @csspart input - The input element\n * @csspart icon-button - The icon button element\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/toolbar/\n */\n@typeSSR()\n@scopedRegistry()\nexport class ProgressiveFilterChip extends LitElement {\n static readonly metadata = {\n tag: 'nve-progressive-filter-chip',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [Input.metadata.tag]: Input,\n [Select.metadata.tag]: Select,\n [Date.metadata.tag]: Date,\n [IconButton.metadata.tag]: IconButton\n };\n\n /** Determines if a close button should render within filter chip */\n @property({ type: Boolean }) closable: boolean;\n\n #i18nController: I18nController<this> = new I18nController<this>(this);\n\n /** Enables updating internal string values for internationalization. */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n @state() private inputs: Element[] = [];\n\n static styles = useStyles([styles]);\n\n #typeClosableController = new TypeClosableController(this);\n\n /** @private */\n declare _internals: ElementInternals;\n\n #getControlTemplate(el: Element) {\n const slot = html`<slot name=${el.slot} @slotchange=${this.#removeItem}></slot>`;\n if (el.tagName === 'SELECT') {\n return html`<nve-select part=\"select\" multiple-overflow ?fit-text=${!(el as HTMLSelectElement).multiple}>${slot}</nve-select>`;\n } else if (el.tagName === 'INPUT' && (el as HTMLInputElement).type === 'date') {\n return html`<nve-date part=\"date\">${slot}</nve-date>`;\n } else if (el.tagName === 'INPUT') {\n return html`<nve-input part=\"input\">${slot}</nve-input>`;\n } else {\n return slot;\n }\n }\n\n render() {\n return html`\n <div internal-host>\n ${this.inputs.map(el => this.#getControlTemplate(el))}\n ${this.closable ? html`<nve-icon-button part=\"icon-button\" exportparts=\"icon:icon-button-icon\" @click=${() => this.#typeClosableController.close()} .ariaLabel=${this.i18n.close} icon-name=\"cancel\"></nve-icon-button>` : nothing}\n </div>\n <slot hidden-slot @slotchange=${this.#createItems}></slot>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'toolbar';\n this.setAttribute('nve-control', '');\n appendRootNodeStyle(this, globalStyles);\n }\n\n #removeItem(e: Event) {\n if (!(e.target as HTMLSlotElement).assignedElements().length) {\n this.#resetItems();\n }\n }\n\n #createItems(e: Event) {\n if (e.target && (e.target as HTMLSlotElement).assignedElements().length) {\n this.#resetItems();\n const items = Array.from(\n this.shadowRoot!.querySelector<HTMLSlotElement>('slot:not([name])')!.assignedElements()\n ).filter(i => i.matches('input, select, nve-button, [nve-control]'));\n items.forEach(i => (i.slot = generateId()));\n this.inputs = items.length ? items : this.inputs;\n }\n }\n\n #resetItems() {\n Array.from(this.shadowRoot!.querySelectorAll('slot'))\n .flatMap(i => i.assignedElements())\n .forEach(i => (i.slot = ''));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AA6CO,IAAA,IAAA,cAAoC,EAAW;;yBAgBZ,IAAI,EAAqB,KAAK,cAGnC,KAAKA,GAAgB,oBAEnB,EAAE,YAIb,IAAI,EAAuB,KAAK;;;kBAxB/B;GACzB,KAAK;GACL,SAAS;GACV;;;4BAE2B;IACzB,EAAM,SAAS,MAAM;IACrB,EAAO,SAAS,MAAM;IACtB,EAAK,SAAS,MAAM;IACpB,EAAW,SAAS,MAAM;GAC5B;;CAKD;;gBAOgB,EAAU,CAAC,EAAO,CAAC;;CAEnC;CAKA,GAAoB,GAAa;EAC/B,IAAM,IAAO,CAAI,eAAc,EAAG,KAAK,iBAAe,KAAKC,GAAY;EAQrE,OAPE,EAAG,YAAY,WACV,CAAI,0DAAyD,CAAE,EAAyB,SAAS,IAAG,EAAK,iBACvG,EAAG,YAAY,WAAY,EAAwB,SAAS,SAC9D,CAAI,yBAAyB,EAAK,eAChC,EAAG,YAAY,UACjB,CAAI,2BAA2B,EAAK,gBAEpC;;CAIX,SAAS;EACP,OAAO,CAAI,sBAEP,KAAK,OAAO,KAAI,MAAM,KAAKC,GAAoB,EAAG,CAAC,CAAC,GACpD,KAAK,WAAW,CAAI,yFAAwF,KAAKC,GAAwB,OAAO,CAAC,gBAAc,KAAK,KAAK,MAAM,2CAA0C,EAAQ,uCAErM,KAAKC,GAAa;;CAIpD,oBAAoB;EAKlB,AAJA,MAAM,mBAAmB,EACzB,EAAgB,KAAK,EACrB,KAAK,WAAW,OAAO,WACvB,KAAK,aAAa,eAAe,GAAG,EACpC,EAAoB,MAAM,EAAa;;CAGzC,GAAY,GAAU;EACpB,AAAM,EAAE,OAA2B,kBAAkB,CAAC,UACpD,KAAKC,IAAa;;CAItB,GAAa,GAAU;EACrB,IAAI,EAAE,UAAW,EAAE,OAA2B,kBAAkB,CAAC,QAAQ;GACvE,KAAKA,IAAa;GAClB,IAAM,IAAQ,MAAM,KAClB,KAAK,WAAY,cAA+B,mBAAmB,CAAE,kBAAkB,CACxF,CAAC,QAAO,MAAK,EAAE,QAAQ,2CAA2C,CAAC;GAEpE,AADA,EAAM,SAAQ,MAAM,EAAE,OAAO,GAAY,CAAE,EAC3C,KAAK,SAAS,EAAM,SAAS,IAAQ,KAAK;;;CAI9C,KAAc;EACZ,MAAM,KAAK,KAAK,WAAY,iBAAiB,OAAO,CAAC,CAClD,SAAQ,MAAK,EAAE,kBAAkB,CAAC,CAClC,SAAQ,MAAM,EAAE,OAAO,GAAI;;;GAnE/B,EAAS,EAAE,MAAM,SAAS,CAAC,CAAA,EAAA,EAAA,WAAA,YAAA,KAAA,EAAA,KAK3B,EAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,EAAA,EAAA,WAAA,QAAA,KAAA,EAAA,KAE1B,GAAO,CAAA,EAAA,EAAA,WAAA,UAAA,KAAA,EAAA,SAvBT,GAAS,EACT,GAAgB,CAAA,EAAA,EAAA"}
|
package/dist/pulse/pulse2.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { attachInternals as e } from "../internal/utils/a11y.js";
|
|
2
|
-
import { __decorate as t } from "../_virtual/_@oxc-project_runtime@0.
|
|
2
|
+
import { __decorate as t } from "../_virtual/_@oxc-project_runtime@0.128.0/helpers/decorate.js";
|
|
3
3
|
import { useStyles as n } from "../internal/styles/index.js";
|
|
4
4
|
import { Icon as r } from "../icon/icon2.js";
|
|
5
5
|
import i from "./pulse.js";
|
|
@@ -13,7 +13,7 @@ var c = class extends a {
|
|
|
13
13
|
static {
|
|
14
14
|
this.metadata = {
|
|
15
15
|
tag: "nve-pulse",
|
|
16
|
-
version: "0.
|
|
16
|
+
version: "0.1.1"
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
19
|
static {
|
package/dist/pulse/pulse2.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pulse2.js","names":[],"sources":["../../src/pulse/pulse.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport type { Size } from '@nvidia-elements/core/internal';\nimport { useStyles, attachInternals } from '@nvidia-elements/core/internal';\nimport { Icon } from '@nvidia-elements/core/icon';\nimport styles from './pulse.css?inline';\n\n/**\n * @element nve-pulse\n * @description Pulse component signals attention for a particular area of a UI. This helps with tutorial/getting started guides for new users.\n * @since 1.16.3\n * @entrypoint \\@nvidia-elements/core/pulse\n * @cssprop --background\n * @cssprop --width\n * @cssprop --height\n * @cssprop --animation-duration\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/alert/\n *\n */\nexport class Pulse extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-pulse',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [Icon.metadata.tag]: Icon\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'alert';\n }\n\n /** Sets size of the pulse component. You can also update size using the `width + height` css props. */\n @property({ type: String, reflect: true }) size?: Size | 'xs';\n\n /** These visual treatments represent the `status` of different tasks. When `status` changes to `accent`, `warning` or `danger`, the component embeds appropriate colors. */\n @property({ type: String, reflect: true }) status?: 'accent' | 'warning' | 'danger';\n\n render() {\n return html`\n <svg internal-host width=\"100%\" height=\"100%\" viewBox=\"0 0 200 200\">\n <circle class=\"circle\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n <circle class=\"circle c1\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n <circle class=\"circle c2\" cx=\"100\" cy=\"100\" r=\"25\"></circle> \n <circle class=\"circle c3\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n </svg>\n `;\n }\n}\n"],"mappings":";;;;;;;;AAsBA,IAAa,IAAb,cAA2B,EAAW;;gBACpB,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACV;;;4BAE2B,GACzB,EAAK,SAAS,MAAM,GACtB;;CAKD,oBAAoB;
|
|
1
|
+
{"version":3,"file":"pulse2.js","names":[],"sources":["../../src/pulse/pulse.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport type { Size } from '@nvidia-elements/core/internal';\nimport { useStyles, attachInternals } from '@nvidia-elements/core/internal';\nimport { Icon } from '@nvidia-elements/core/icon';\nimport styles from './pulse.css?inline';\n\n/**\n * @element nve-pulse\n * @description Pulse component signals attention for a particular area of a UI. This helps with tutorial/getting started guides for new users.\n * @since 1.16.3\n * @entrypoint \\@nvidia-elements/core/pulse\n * @cssprop --background\n * @cssprop --width\n * @cssprop --height\n * @cssprop --animation-duration\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/alert/\n *\n */\nexport class Pulse extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-pulse',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [Icon.metadata.tag]: Icon\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'alert';\n }\n\n /** Sets size of the pulse component. You can also update size using the `width + height` css props. */\n @property({ type: String, reflect: true }) size?: Size | 'xs';\n\n /** These visual treatments represent the `status` of different tasks. When `status` changes to `accent`, `warning` or `danger`, the component embeds appropriate colors. */\n @property({ type: String, reflect: true }) status?: 'accent' | 'warning' | 'danger';\n\n render() {\n return html`\n <svg internal-host width=\"100%\" height=\"100%\" viewBox=\"0 0 200 200\">\n <circle class=\"circle\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n <circle class=\"circle c1\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n <circle class=\"circle c2\" cx=\"100\" cy=\"100\" r=\"25\"></circle> \n <circle class=\"circle c3\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n </svg>\n `;\n }\n}\n"],"mappings":";;;;;;;;AAsBA,IAAa,IAAb,cAA2B,EAAW;;gBACpB,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACV;;;4BAE2B,GACzB,EAAK,SAAS,MAAM,GACtB;;CAKD,oBAAoB;EAGlB,AAFA,MAAM,mBAAmB,EACzB,EAAgB,KAAK,EACrB,KAAK,WAAW,OAAO;;CASzB,SAAS;EACP,OAAO,CAAI;;;GANZ,EAAS;CAAE,MAAM;CAAQ,SAAS;CAAM,CAAC,CAAA,EAAA,EAAA,WAAA,QAAA,KAAA,EAAA,KAGzC,EAAS;CAAE,MAAM;CAAQ,SAAS;CAAM,CAAC,CAAA,EAAA,EAAA,WAAA,UAAA,KAAA,EAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.
|
|
1
|
+
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.128.0/helpers/decorate.js";
|
|
2
2
|
import { audit as t } from "../internal/controllers/audit.controller.js";
|
|
3
3
|
import { typeSSR as n } from "../internal/controllers/type-ssr.controller.js";
|
|
4
4
|
import { useStyles as r } from "../internal/styles/index.js";
|
|
@@ -12,7 +12,7 @@ var o = class extends i {
|
|
|
12
12
|
static {
|
|
13
13
|
this.metadata = {
|
|
14
14
|
tag: "nve-radio-group",
|
|
15
|
-
version: "0.
|
|
15
|
+
version: "0.1.1",
|
|
16
16
|
children: [
|
|
17
17
|
"label",
|
|
18
18
|
"nve-control-message",
|
package/dist/radio/radio2.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.
|
|
1
|
+
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.128.0/helpers/decorate.js";
|
|
2
2
|
import { audit as t } from "../internal/controllers/audit.controller.js";
|
|
3
3
|
import { hostAttr as n } from "../internal/decorators/host-attr.js";
|
|
4
4
|
import { useStyles as r } from "../internal/styles/index.js";
|
|
@@ -15,7 +15,7 @@ var o = class extends i {
|
|
|
15
15
|
static {
|
|
16
16
|
this.metadata = {
|
|
17
17
|
tag: "nve-radio",
|
|
18
|
-
version: "0.
|
|
18
|
+
version: "0.1.1",
|
|
19
19
|
children: [
|
|
20
20
|
"label",
|
|
21
21
|
"input",
|
package/dist/range/range2.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { appendRootNodeStyle as e, getElementUpdate as t } from "../internal/utils/dom.js";
|
|
2
|
-
import { __decorate as n } from "../_virtual/_@oxc-project_runtime@0.
|
|
2
|
+
import { __decorate as n } from "../_virtual/_@oxc-project_runtime@0.128.0/helpers/decorate.js";
|
|
3
3
|
import { useStyles as r } from "../internal/styles/index.js";
|
|
4
4
|
import { Control as i } from "../forms/control/control2.js";
|
|
5
5
|
import a from "./range.global.js";
|
|
@@ -17,7 +17,7 @@ var d = class extends i {
|
|
|
17
17
|
static {
|
|
18
18
|
this.metadata = {
|
|
19
19
|
tag: "nve-range",
|
|
20
|
-
version: "0.
|
|
20
|
+
version: "0.1.1"
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
23
|
connectedCallback() {
|
package/dist/range/range2.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"range2.js","names":["#setTrackWidth","#renderDatalistTicks"],"sources":["../../src/range/range.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { appendRootNodeStyle, getElementUpdate, useStyles } from '@nvidia-elements/core/internal';\nimport { Control } from '@nvidia-elements/core/forms';\nimport { property } from 'lit/decorators/property.js';\nimport globalStyles from './range.global.css?inline';\nimport styles from './range.css?inline';\nimport type { PropertyValues } from 'lit';\nimport { html, nothing, isServer } from 'lit';\n/**\n * @element nve-range\n * @description A range slider is a control that enables users to choose a value from a continuous range of values.\n * @since 0.3.0\n * @entrypoint \\@nvidia-elements/core/range\n * @cssprop --background\n * @cssprop --control-height\n * @cssprop --cursor\n * @cssprop --track-width\n * @cssprop --track-height\n * @cssprop --track-border-radius\n * @cssprop --track-background\n * @cssprop --thumb-width\n * @cssprop --thumb-height\n * @cssprop --thumb-background\n * @cssprop --thumb-border\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/slider/\n */\nexport class Range extends Control {\n static styles = useStyles([...Control.styles, styles]);\n\n static readonly metadata = {\n tag: 'nve-range',\n version: '0.0.0'\n };\n\n /** Determines the orientation of the range slider. */\n @property({ type: String, reflect: true }) orientation: 'vertical' | 'horizontal' = 'horizontal';\n\n connectedCallback() {\n super.connectedCallback();\n appendRootNodeStyle(this, globalStyles);\n this._internals.ariaOrientation = this.orientation;\n }\n\n firstUpdated(props: PropertyValues<this>) {\n super.firstUpdated(props);\n this.#setTrackWidth();\n this.input.addEventListener('input', () => this.#setTrackWidth());\n getElementUpdate(this.input, 'value', (value: unknown) => this.#setTrackWidth(value as number));\n }\n\n updated(props: PropertyValues<this>) {\n super.updated(props);\n if (props.has('orientation')) {\n this._internals.ariaOrientation = this.orientation;\n }\n }\n\n #setTrackWidth(val?: number) {\n const value = val ?? this.input.valueAsNumber;\n const min = this.input.min ? parseFloat(this.input.min) : 0;\n const max = this.input.max ? parseFloat(this.input.max) : 100;\n this.style.setProperty('--track-width', `${Math.floor(((value - min) / (max - min)) * 100) / 100}`);\n }\n\n protected get suffixContent() {\n const datalist = !isServer ? this.querySelector<HTMLDataListElement>('datalist') : null;\n return datalist ? this.#renderDatalistTicks(datalist) : nothing;\n }\n\n #renderDatalistTicks(datalist: HTMLDataListElement) {\n const options = Array.from(datalist.options);\n const min = this.input?.min ? parseFloat(this.input.min) : 0;\n const max = this.input?.max ? parseFloat(this.input.max) : 100;\n\n return html`<div class=\"datalist-labels\">\n ${options.map(option => {\n const value = parseFloat(option.value);\n const position = ((value - min) / (max - min)) * 100;\n const style =\n this.orientation === 'vertical'\n ? `bottom: ${position}%; transform: translateY(${position}%)`\n : `left: ${position}%; transform: translateX(-${position}%)`;\n return html`<span class=\"datalist-tick\" style=${style}>${option.textContent || value}</span>`;\n })}\n </div>`;\n }\n}\n"],"mappings":";;;;;;;;;AA4BA,IAAa,IAAb,cAA2B,EAAQ;;kCASmD;;;gBARpE,EAAU,CAAC,GAAG,EAAQ,QAAQ,EAAO,CAAC;;;kBAE3B;GACzB,KAAK;GACL,SAAS;GACV;;CAKD,oBAAoB;
|
|
1
|
+
{"version":3,"file":"range2.js","names":["#setTrackWidth","#renderDatalistTicks"],"sources":["../../src/range/range.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { appendRootNodeStyle, getElementUpdate, useStyles } from '@nvidia-elements/core/internal';\nimport { Control } from '@nvidia-elements/core/forms';\nimport { property } from 'lit/decorators/property.js';\nimport globalStyles from './range.global.css?inline';\nimport styles from './range.css?inline';\nimport type { PropertyValues } from 'lit';\nimport { html, nothing, isServer } from 'lit';\n/**\n * @element nve-range\n * @description A range slider is a control that enables users to choose a value from a continuous range of values.\n * @since 0.3.0\n * @entrypoint \\@nvidia-elements/core/range\n * @cssprop --background\n * @cssprop --control-height\n * @cssprop --cursor\n * @cssprop --track-width\n * @cssprop --track-height\n * @cssprop --track-border-radius\n * @cssprop --track-background\n * @cssprop --thumb-width\n * @cssprop --thumb-height\n * @cssprop --thumb-background\n * @cssprop --thumb-border\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/slider/\n */\nexport class Range extends Control {\n static styles = useStyles([...Control.styles, styles]);\n\n static readonly metadata = {\n tag: 'nve-range',\n version: '0.0.0'\n };\n\n /** Determines the orientation of the range slider. */\n @property({ type: String, reflect: true }) orientation: 'vertical' | 'horizontal' = 'horizontal';\n\n connectedCallback() {\n super.connectedCallback();\n appendRootNodeStyle(this, globalStyles);\n this._internals.ariaOrientation = this.orientation;\n }\n\n firstUpdated(props: PropertyValues<this>) {\n super.firstUpdated(props);\n this.#setTrackWidth();\n this.input.addEventListener('input', () => this.#setTrackWidth());\n getElementUpdate(this.input, 'value', (value: unknown) => this.#setTrackWidth(value as number));\n }\n\n updated(props: PropertyValues<this>) {\n super.updated(props);\n if (props.has('orientation')) {\n this._internals.ariaOrientation = this.orientation;\n }\n }\n\n #setTrackWidth(val?: number) {\n const value = val ?? this.input.valueAsNumber;\n const min = this.input.min ? parseFloat(this.input.min) : 0;\n const max = this.input.max ? parseFloat(this.input.max) : 100;\n this.style.setProperty('--track-width', `${Math.floor(((value - min) / (max - min)) * 100) / 100}`);\n }\n\n protected get suffixContent() {\n const datalist = !isServer ? this.querySelector<HTMLDataListElement>('datalist') : null;\n return datalist ? this.#renderDatalistTicks(datalist) : nothing;\n }\n\n #renderDatalistTicks(datalist: HTMLDataListElement) {\n const options = Array.from(datalist.options);\n const min = this.input?.min ? parseFloat(this.input.min) : 0;\n const max = this.input?.max ? parseFloat(this.input.max) : 100;\n\n return html`<div class=\"datalist-labels\">\n ${options.map(option => {\n const value = parseFloat(option.value);\n const position = ((value - min) / (max - min)) * 100;\n const style =\n this.orientation === 'vertical'\n ? `bottom: ${position}%; transform: translateY(${position}%)`\n : `left: ${position}%; transform: translateX(-${position}%)`;\n return html`<span class=\"datalist-tick\" style=${style}>${option.textContent || value}</span>`;\n })}\n </div>`;\n }\n}\n"],"mappings":";;;;;;;;;AA4BA,IAAa,IAAb,cAA2B,EAAQ;;kCASmD;;;gBARpE,EAAU,CAAC,GAAG,EAAQ,QAAQ,EAAO,CAAC;;;kBAE3B;GACzB,KAAK;GACL,SAAS;GACV;;CAKD,oBAAoB;EAGlB,AAFA,MAAM,mBAAmB,EACzB,EAAoB,MAAM,EAAa,EACvC,KAAK,WAAW,kBAAkB,KAAK;;CAGzC,aAAa,GAA6B;EAIxC,AAHA,MAAM,aAAa,EAAM,EACzB,KAAKA,IAAgB,EACrB,KAAK,MAAM,iBAAiB,eAAe,KAAKA,IAAgB,CAAC,EACjE,EAAiB,KAAK,OAAO,UAAU,MAAmB,KAAKA,GAAe,EAAgB,CAAC;;CAGjG,QAAQ,GAA6B;EAEnC,AADA,MAAM,QAAQ,EAAM,EAChB,EAAM,IAAI,cAAc,KAC1B,KAAK,WAAW,kBAAkB,KAAK;;CAI3C,GAAe,GAAc;EAC3B,IAAM,IAAQ,KAAO,KAAK,MAAM,eAC1B,IAAM,KAAK,MAAM,MAAM,WAAW,KAAK,MAAM,IAAI,GAAG,GACpD,IAAM,KAAK,MAAM,MAAM,WAAW,KAAK,MAAM,IAAI,GAAG;EAC1D,KAAK,MAAM,YAAY,iBAAiB,GAAG,KAAK,OAAQ,IAAQ,MAAQ,IAAM,KAAQ,IAAI,GAAG,MAAM;;CAGrG,IAAc,gBAAgB;EAC5B,IAAM,IAAY,IAAiE,OAAtD,KAAK,cAAmC,WAAW;EAChF,OAAO,IAAW,KAAKC,GAAqB,EAAS,GAAG;;CAG1D,GAAqB,GAA+B;EAClD,IAAM,IAAU,MAAM,KAAK,EAAS,QAAQ,EACtC,IAAM,KAAK,OAAO,MAAM,WAAW,KAAK,MAAM,IAAI,GAAG,GACrD,IAAM,KAAK,OAAO,MAAM,WAAW,KAAK,MAAM,IAAI,GAAG;EAE3D,OAAO,CAAI,gCACP,EAAQ,KAAI,MAAU;GACtB,IAAM,IAAQ,WAAW,EAAO,MAAM,EAChC,KAAa,IAAQ,MAAQ,IAAM,KAAQ;GAKjD,OAAO,CAAI,sCAHT,KAAK,gBAAgB,aACjB,WAAW,EAAS,2BAA2B,EAAS,MACxD,SAAS,EAAS,4BAA4B,EAAS,IACP,IAAG,EAAO,eAAe,EAAM;IACrF,CAAC;;;GAhDN,EAAS;CAAE,MAAM;CAAQ,SAAS;CAAM,CAAC,CAAA,EAAA,EAAA,WAAA,eAAA,KAAA,EAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.
|
|
1
|
+
import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.128.0/helpers/decorate.js";
|
|
2
2
|
import { I18nController as t } from "../internal/controllers/i18n.controller.js";
|
|
3
3
|
import { typeTouch as n } from "../internal/controllers/type-touch.controller.js";
|
|
4
4
|
import { useStyles as r } from "../internal/styles/index.js";
|
|
@@ -18,17 +18,17 @@ var u = class extends l(a) {
|
|
|
18
18
|
static {
|
|
19
19
|
this.metadata = {
|
|
20
20
|
tag: "nve-resize-handle",
|
|
21
|
-
version: "0.
|
|
21
|
+
version: "0.1.1",
|
|
22
22
|
valueSchema: { type: "number" }
|
|
23
23
|
};
|
|
24
24
|
}
|
|
25
|
-
#t
|
|
26
|
-
#n
|
|
25
|
+
#t;
|
|
26
|
+
#n;
|
|
27
27
|
render() {
|
|
28
28
|
return o`<div internal-host><div class="line" part="_line"></div><input aria-label="${c(this.ariaLabel ?? this.i18n.resize)}" type="range" min="${this.min}" max="${this.max}" .valueAsNumber="${this.valueAsNumber}" @input="${(e) => this.#s(e.target.valueAsNumber)}" @change="${(e) => this.#c(e.target.valueAsNumber)}" step="${this.step}"></div>`;
|
|
29
29
|
}
|
|
30
30
|
constructor() {
|
|
31
|
-
super(), this.orientation = "horizontal", this.min = 0, this.max = 100, this.step = 10, this.i18n = this.#t.i18n, this.value = this.value ?? 50, this.#n = this.valueAsNumber;
|
|
31
|
+
super(), this.orientation = "horizontal", this.min = 0, this.max = 100, this.step = 10, this.#t = new t(this), this.i18n = this.#t.i18n, this.#n = 0, this.value = this.value ?? 50, this.#n = this.valueAsNumber;
|
|
32
32
|
}
|
|
33
33
|
connectedCallback() {
|
|
34
34
|
super.connectedCallback(), this._internals.role = "none";
|