@cds/core 6.0.0-next.5 → 6.0.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/accordion/accordion-content.element.js.map +1 -1
- package/accordion/accordion-content.element.scss.js.map +1 -1
- package/accordion/accordion-header.element.js +1 -1
- package/accordion/accordion-header.element.js.map +1 -1
- package/accordion/accordion-header.element.scss.js.map +1 -1
- package/accordion/accordion-panel.element.d.ts +3 -3
- package/accordion/accordion-panel.element.js.map +1 -1
- package/accordion/accordion-panel.element.scss.js +1 -1
- package/accordion/accordion-panel.element.scss.js.map +1 -1
- package/accordion/accordion.element.js.map +1 -1
- package/accordion/accordion.element.scss.js.map +1 -1
- package/accordion/index.js.map +1 -1
- package/accordion/register.js.map +1 -1
- package/alert/alert-actions.element.d.ts +2 -2
- package/alert/alert-actions.element.js +1 -1
- package/alert/alert-actions.element.js.map +1 -1
- package/alert/alert-actions.element.scss.js.map +1 -1
- package/alert/alert-group.element.d.ts +3 -3
- package/alert/alert-group.element.js +1 -1
- package/alert/alert-group.element.js.map +1 -1
- package/alert/alert-group.element.scss.js +1 -1
- package/alert/alert-group.element.scss.js.map +1 -1
- package/alert/alert.element.d.ts +5 -5
- package/alert/alert.element.js +1 -1
- package/alert/alert.element.js.map +1 -1
- package/alert/alert.element.scss.js +1 -1
- package/alert/alert.element.scss.js.map +1 -1
- package/alert/alert.interfaces.js.map +1 -1
- package/alert/index.js.map +1 -1
- package/alert/register.js.map +1 -1
- package/badge/badge.element.js.map +1 -1
- package/badge/badge.element.scss.js +1 -1
- package/badge/badge.element.scss.js.map +1 -1
- package/badge/index.js.map +1 -1
- package/badge/register.js.map +1 -1
- package/breadcrumb/breadcrumb.element.d.ts +0 -1
- package/breadcrumb/breadcrumb.element.js.map +1 -1
- package/breadcrumb/breadcrumb.element.scss.js.map +1 -1
- package/breadcrumb/index.js.map +1 -1
- package/breadcrumb/register.js.map +1 -1
- package/button/button.element.d.ts +3 -2
- package/button/button.element.js +1 -1
- package/button/button.element.js.map +1 -1
- package/button/button.element.scss.js +1 -1
- package/button/button.element.scss.js.map +1 -1
- package/button/icon-button.element.js.map +1 -1
- package/button/index.js.map +1 -1
- package/button/register.js.map +1 -1
- package/button-action/button-action.element.d.ts +8 -2
- package/button-action/button-action.element.js +1 -1
- package/button-action/button-action.element.js.map +1 -1
- package/button-action/button-action.element.scss.js +1 -1
- package/button-action/button-action.element.scss.js.map +1 -1
- package/button-action/index.js.map +1 -1
- package/button-action/register.js.map +1 -1
- package/button-expand/button-expand.element.d.ts +2 -2
- package/button-expand/button-expand.element.js +1 -1
- package/button-expand/button-expand.element.js.map +1 -1
- package/button-expand/button-expand.element.scss.js +1 -1
- package/button-expand/button-expand.element.scss.js.map +1 -1
- package/button-expand/index.js.map +1 -1
- package/button-expand/register.js.map +1 -1
- package/button-handle/button-handle.element.js.map +1 -1
- package/button-handle/button-handle.element.scss.js +1 -1
- package/button-handle/button-handle.element.scss.js.map +1 -1
- package/button-handle/index.js.map +1 -1
- package/button-handle/register.js.map +1 -1
- package/button-inline/button-inline.element.js.map +1 -1
- package/button-inline/button-inline.element.scss.js +1 -1
- package/button-inline/button-inline.element.scss.js.map +1 -1
- package/button-inline/index.js.map +1 -1
- package/button-inline/register.js.map +1 -1
- package/button-sort/button-sort.element.js.map +1 -1
- package/button-sort/button-sort.element.scss.js.map +1 -1
- package/button-sort/index.js.map +1 -1
- package/button-sort/register.js.map +1 -1
- package/button-sort/utils.js.map +1 -1
- package/card/card.element.d.ts +1 -2
- package/card/card.element.js.map +1 -1
- package/card/card.element.scss.js +1 -1
- package/card/card.element.scss.js.map +1 -1
- package/card/index.js.map +1 -1
- package/card/register.js.map +1 -1
- package/checkbox/checkbox-group.element.js.map +1 -1
- package/checkbox/checkbox.element.js.map +1 -1
- package/checkbox/checkbox.element.scss.js +1 -1
- package/checkbox/checkbox.element.scss.js.map +1 -1
- package/checkbox/index.js.map +1 -1
- package/checkbox/register.js.map +1 -1
- package/custom-elements.json +41909 -38485
- package/datalist/datalist.element.js +1 -1
- package/datalist/datalist.element.js.map +1 -1
- package/datalist/datalist.global.scss.js.map +1 -1
- package/datalist/index.js.map +1 -1
- package/datalist/register.js.map +1 -1
- package/date/date.element.js.map +1 -1
- package/date/date.global.scss.js.map +1 -1
- package/date/index.js.map +1 -1
- package/date/register.js.map +1 -1
- package/demo/data/demo.service.d.ts +6 -0
- package/demo/data/demo.service.js +2 -0
- package/demo/data/demo.service.js.map +1 -0
- package/demo/data/food.data.d.ts +2 -0
- package/demo/data/food.data.js +2 -0
- package/demo/data/food.data.js.map +1 -0
- package/demo/data/infrastructure.data.d.ts +2 -0
- package/demo/data/infrastructure.data.js +2 -0
- package/demo/data/infrastructure.data.js.map +1 -0
- package/demo/data/interfaces.d.ts +31 -0
- package/demo/data/interfaces.js +2 -0
- package/demo/data/interfaces.js.map +1 -0
- package/demo/data/system.data.d.ts +2 -0
- package/demo/data/system.data.js +2 -0
- package/demo/data/system.data.js.map +1 -0
- package/demo/index.d.ts +43 -0
- package/demo/index.js +2 -0
- package/demo/index.js.map +1 -0
- package/demo/utils.d.ts +67 -0
- package/demo/utils.js +2 -0
- package/demo/utils.js.map +1 -0
- package/divider/divider.element.d.ts +1 -1
- package/divider/divider.element.js.map +1 -1
- package/divider/divider.element.scss.js +1 -1
- package/divider/divider.element.scss.js.map +1 -1
- package/divider/index.js.map +1 -1
- package/divider/register.js.map +1 -1
- package/dropdown/dropdown.element.d.ts +3 -1
- package/dropdown/dropdown.element.js.map +1 -1
- package/dropdown/index.js.map +1 -1
- package/dropdown/register.d.ts +1 -0
- package/dropdown/register.js +1 -1
- package/dropdown/register.js.map +1 -1
- package/file/file.element.d.ts +2 -1
- package/file/file.element.js.map +1 -1
- package/file/file.element.scss.js.map +1 -1
- package/file/index.js.map +1 -1
- package/file/register.js.map +1 -1
- package/forms/control/control.element.d.ts +4 -4
- package/forms/control/control.element.js +2 -2
- package/forms/control/control.element.js.map +1 -1
- package/forms/control/control.element.scss.js +1 -1
- package/forms/control/control.element.scss.js.map +1 -1
- package/forms/control-action/control-action.element.d.ts +1 -1
- package/forms/control-action/control-action.element.js.map +1 -1
- package/forms/control-group/control-group.element.d.ts +3 -6
- package/forms/control-group/control-group.element.js +1 -1
- package/forms/control-group/control-group.element.js.map +1 -1
- package/forms/control-group/control-group.element.scss.js +1 -1
- package/forms/control-group/control-group.element.scss.js.map +1 -1
- package/forms/control-inline/control-inline.element.d.ts +4 -3
- package/forms/control-inline/control-inline.element.js +1 -1
- package/forms/control-inline/control-inline.element.js.map +1 -1
- package/forms/control-inline/control-inline.element.scss.js.map +1 -1
- package/forms/control-label/control-label.element.js.map +1 -1
- package/forms/control-label/control-label.element.scss.js.map +1 -1
- package/forms/control-message/control-message.element.js.map +1 -1
- package/forms/control-message/control-message.element.scss.js.map +1 -1
- package/forms/form-group/form-group.element.d.ts +3 -3
- package/forms/form-group/form-group.element.js +1 -1
- package/forms/form-group/form-group.element.js.map +1 -1
- package/forms/form-group/form-group.element.scss.js.map +1 -1
- package/forms/index.js.map +1 -1
- package/forms/register.js.map +1 -1
- package/forms/utils/interfaces.js.map +1 -1
- package/forms/utils/utils.js.map +1 -1
- package/forms/utils/validate.js.map +1 -1
- package/global.css +116 -16
- package/global.min.css +1 -1
- package/grid/cell/grid-cell.element.d.ts +25 -0
- package/grid/cell/grid-cell.element.js +2 -0
- package/grid/cell/grid-cell.element.js.map +1 -0
- package/grid/cell/grid-cell.element.scss.js +2 -0
- package/grid/cell/grid-cell.element.scss.js.map +1 -0
- package/grid/column/grid-column-position.controller.d.ts +15 -0
- package/grid/column/grid-column-position.controller.js +2 -0
- package/grid/column/grid-column-position.controller.js.map +1 -0
- package/grid/column/grid-column-size.controller.d.ts +18 -0
- package/grid/column/grid-column-size.controller.js +2 -0
- package/grid/column/grid-column-size.controller.js.map +1 -0
- package/grid/column/grid-column.element.d.ts +53 -0
- package/grid/column/grid-column.element.js +2 -0
- package/grid/column/grid-column.element.js.map +1 -0
- package/grid/column/grid-column.element.scss.js +2 -0
- package/grid/column/grid-column.element.scss.js.map +1 -0
- package/grid/detail/grid-detail.element.d.ts +59 -0
- package/grid/detail/grid-detail.element.js +2 -0
- package/grid/detail/grid-detail.element.js.map +1 -0
- package/grid/detail/grid-detail.element.scss.js +2 -0
- package/grid/detail/grid-detail.element.scss.js.map +1 -0
- package/grid/footer/grid-footer.element.d.ts +36 -0
- package/grid/footer/grid-footer.element.js +2 -0
- package/grid/footer/grid-footer.element.js.map +1 -0
- package/grid/footer/grid-footer.element.scss.js +2 -0
- package/grid/footer/grid-footer.element.scss.js.map +1 -0
- package/grid/grid/grid-layout.controller.d.ts +31 -0
- package/grid/grid/grid-layout.controller.js +2 -0
- package/grid/grid/grid-layout.controller.js.map +1 -0
- package/grid/grid/grid.element.d.ts +73 -0
- package/grid/grid/grid.element.js +2 -0
- package/grid/grid/grid.element.js.map +1 -0
- package/grid/grid/grid.element.scss.js +2 -0
- package/grid/grid/grid.element.scss.js.map +1 -0
- package/grid/index.d.ts +8 -0
- package/grid/index.js +2 -0
- package/grid/index.js.map +1 -0
- package/grid/pagination/grid-pagination.element.d.ts +52 -0
- package/grid/pagination/grid-pagination.element.js +2 -0
- package/grid/pagination/grid-pagination.element.js.map +1 -0
- package/grid/pagination/grid-pagination.element.scss.js +2 -0
- package/grid/pagination/grid-pagination.element.scss.js.map +1 -0
- package/grid/placeholder/grid-placeholder.element.d.ts +36 -0
- package/grid/placeholder/grid-placeholder.element.js +2 -0
- package/grid/placeholder/grid-placeholder.element.js.map +1 -0
- package/grid/placeholder/grid-placeholder.element.scss.js +2 -0
- package/grid/placeholder/grid-placeholder.element.scss.js.map +1 -0
- package/grid/register.d.ts +23 -0
- package/grid/register.js +2 -0
- package/grid/register.js.map +1 -0
- package/grid/row/grid-row-position.controller.d.ts +9 -0
- package/grid/row/grid-row-position.controller.js +2 -0
- package/grid/row/grid-row-position.controller.js.map +1 -0
- package/grid/row/grid-row.element.d.ts +25 -0
- package/grid/row/grid-row.element.js +2 -0
- package/grid/row/grid-row.element.js.map +1 -0
- package/grid/row/grid-row.element.scss.js +2 -0
- package/grid/row/grid-row.element.scss.js.map +1 -0
- package/icon/collections/chart.js.map +1 -1
- package/icon/collections/commerce.js.map +1 -1
- package/icon/collections/core.js.map +1 -1
- package/icon/collections/essential.d.ts +2 -0
- package/icon/collections/essential.js +1 -1
- package/icon/collections/essential.js.map +1 -1
- package/icon/collections/media.js.map +1 -1
- package/icon/collections/mini.js.map +1 -1
- package/icon/collections/social.d.ts +2 -0
- package/icon/collections/social.js +1 -1
- package/icon/collections/social.js.map +1 -1
- package/icon/collections/technology.js.map +1 -1
- package/icon/collections/text-edit.js.map +1 -1
- package/icon/collections/travel.js.map +1 -1
- package/icon/icon.element.d.ts +3 -3
- package/icon/icon.element.js +1 -1
- package/icon/icon.element.js.map +1 -1
- package/icon/icon.element.scss.js +1 -1
- package/icon/icon.element.scss.js.map +1 -1
- package/icon/icon.renderer.js.map +1 -1
- package/icon/icon.service.js.map +1 -1
- package/icon/index.d.ts +20 -7
- package/icon/index.js +1 -1
- package/icon/index.js.map +1 -1
- package/icon/register.js.map +1 -1
- package/icon/shapes/accessibility-1.js.map +1 -1
- package/icon/shapes/accessibility-2.js.map +1 -1
- package/icon/shapes/add-text.js.map +1 -1
- package/icon/shapes/administrator.js.map +1 -1
- package/icon/shapes/airplane.js.map +1 -1
- package/icon/shapes/alarm-clock.js.map +1 -1
- package/icon/shapes/alarm-off.js.map +1 -1
- package/icon/shapes/align-bottom.js.map +1 -1
- package/icon/shapes/align-center.js.map +1 -1
- package/icon/shapes/align-left-text.js.map +1 -1
- package/icon/shapes/align-left.js.map +1 -1
- package/icon/shapes/align-middle.js.map +1 -1
- package/icon/shapes/align-right-text.js.map +1 -1
- package/icon/shapes/align-right.js.map +1 -1
- package/icon/shapes/align-top.js.map +1 -1
- package/icon/shapes/angle-double.js.map +1 -1
- package/icon/shapes/angle.js.map +1 -1
- package/icon/shapes/animation.js.map +1 -1
- package/icon/shapes/announcement.js.map +1 -1
- package/icon/shapes/application.js.map +1 -1
- package/icon/shapes/applications.js.map +1 -1
- package/icon/shapes/archive.js.map +1 -1
- package/icon/shapes/arrow-mini.js.map +1 -1
- package/icon/shapes/arrow.js.map +1 -1
- package/icon/shapes/assign-user.js.map +1 -1
- package/icon/shapes/asterisk.js.map +1 -1
- package/icon/shapes/atom.js.map +1 -1
- package/icon/shapes/axis-chart.js.map +1 -1
- package/icon/shapes/backup-restore.js.map +1 -1
- package/icon/shapes/backup.js.map +1 -1
- package/icon/shapes/ban.js.map +1 -1
- package/icon/shapes/bank.js.map +1 -1
- package/icon/shapes/bar-chart.js.map +1 -1
- package/icon/shapes/bar-code.js.map +1 -1
- package/icon/shapes/bars.js.map +1 -1
- package/icon/shapes/battery.js.map +1 -1
- package/icon/shapes/bell-curve.js.map +1 -1
- package/icon/shapes/bell.js.map +1 -1
- package/icon/shapes/beta.js.map +1 -1
- package/icon/shapes/bicycle.js.map +1 -1
- package/icon/shapes/birthday-cake.js.map +1 -1
- package/icon/shapes/bitcoin.js.map +1 -1
- package/icon/shapes/block-quote.js.map +1 -1
- package/icon/shapes/block.js.map +1 -1
- package/icon/shapes/blocks-group.js.map +1 -1
- package/icon/shapes/bluetooth-off.js.map +1 -1
- package/icon/shapes/bluetooth.js.map +1 -1
- package/icon/shapes/boat.js.map +1 -1
- package/icon/shapes/bold.js.map +1 -1
- package/icon/shapes/bolt.js.map +1 -1
- package/icon/shapes/book.js.map +1 -1
- package/icon/shapes/bookmark.js.map +1 -1
- package/icon/shapes/box-plot.js.map +1 -1
- package/icon/shapes/briefcase.js.map +1 -1
- package/icon/shapes/bubble-chart.js.map +1 -1
- package/icon/shapes/bubble-exclamation.js.map +1 -1
- package/icon/shapes/bug.js.map +1 -1
- package/icon/shapes/building.js.map +1 -1
- package/icon/shapes/bullet-list.js.map +1 -1
- package/icon/shapes/bullseye.js.map +1 -1
- package/icon/shapes/bundle.js.map +1 -1
- package/icon/shapes/calculator.js.map +1 -1
- package/icon/shapes/calendar-mini.js.map +1 -1
- package/icon/shapes/calendar.js.map +1 -1
- package/icon/shapes/camera.js.map +1 -1
- package/icon/shapes/campervan.js.map +1 -1
- package/icon/shapes/capacitor.js.map +1 -1
- package/icon/shapes/car.js.map +1 -1
- package/icon/shapes/caravan.js.map +1 -1
- package/icon/shapes/cd-dvd.js.map +1 -1
- package/icon/shapes/center-text.js.map +1 -1
- package/icon/shapes/certificate.js.map +1 -1
- package/icon/shapes/chat-bubble.js.map +1 -1
- package/icon/shapes/check-circle-mini.js.map +1 -1
- package/icon/shapes/check-circle.js.map +1 -1
- package/icon/shapes/check-mini.js.map +1 -1
- package/icon/shapes/check.js.map +1 -1
- package/icon/shapes/checkbox-list.js.map +1 -1
- package/icon/shapes/child-arrow.js.map +1 -1
- package/icon/shapes/ci-cd.js.map +1 -1
- package/icon/shapes/circle-arrow.js.map +1 -1
- package/icon/shapes/circle.js.map +1 -1
- package/icon/shapes/clipboard.js.map +1 -1
- package/icon/shapes/clock.js.map +1 -1
- package/icon/shapes/clone.js.map +1 -1
- package/icon/shapes/cloud-chart.js.map +1 -1
- package/icon/shapes/cloud-network.js.map +1 -1
- package/icon/shapes/cloud-scale.js.map +1 -1
- package/icon/shapes/cloud-traffic.js.map +1 -1
- package/icon/shapes/cloud.js.map +1 -1
- package/icon/shapes/cluster.js.map +1 -1
- package/icon/shapes/code.js.map +1 -1
- package/icon/shapes/cog.js.map +1 -1
- package/icon/shapes/coin-bag.js.map +1 -1
- package/icon/shapes/collapse-card.js.map +1 -1
- package/icon/shapes/color-palette.js.map +1 -1
- package/icon/shapes/color-picker.js.map +1 -1
- package/icon/shapes/compass.js.map +1 -1
- package/icon/shapes/computer.js.map +1 -1
- package/icon/shapes/connect.js.map +1 -1
- package/icon/shapes/container-volume.js.map +1 -1
- package/icon/shapes/container.js.map +1 -1
- package/icon/shapes/contract.d.ts +3 -0
- package/icon/shapes/contract.js +2 -0
- package/icon/shapes/contract.js.map +1 -0
- package/icon/shapes/control-lun.js.map +1 -1
- package/icon/shapes/copy-to-clipboard.js.map +1 -1
- package/icon/shapes/copy.js.map +1 -1
- package/icon/shapes/cpu.js.map +1 -1
- package/icon/shapes/credit-card.js.map +1 -1
- package/icon/shapes/crosshairs.js.map +1 -1
- package/icon/shapes/crown.js.map +1 -1
- package/icon/shapes/cursor-arrow.js.map +1 -1
- package/icon/shapes/cursor-hand-click.js.map +1 -1
- package/icon/shapes/cursor-hand-grab.js.map +1 -1
- package/icon/shapes/cursor-hand-open.js.map +1 -1
- package/icon/shapes/cursor-hand.js.map +1 -1
- package/icon/shapes/cursor-move.js.map +1 -1
- package/icon/shapes/curve-chart.js.map +1 -1
- package/icon/shapes/dashboard.js.map +1 -1
- package/icon/shapes/data-cluster.js.map +1 -1
- package/icon/shapes/deploy.js.map +1 -1
- package/icon/shapes/detail-collapse.js.map +1 -1
- package/icon/shapes/detail-expand.js.map +1 -1
- package/icon/shapes/details.js.map +1 -1
- package/icon/shapes/devices.js.map +1 -1
- package/icon/shapes/digital-signature.js.map +1 -1
- package/icon/shapes/disconnect.js.map +1 -1
- package/icon/shapes/display.js.map +1 -1
- package/icon/shapes/dollar-bill.js.map +1 -1
- package/icon/shapes/dollar.js.map +1 -1
- package/icon/shapes/dot-circle.js.map +1 -1
- package/icon/shapes/download-cloud.js.map +1 -1
- package/icon/shapes/download.js.map +1 -1
- package/icon/shapes/drag-handle-corner.js.map +1 -1
- package/icon/shapes/drag-handle.js.map +1 -1
- package/icon/shapes/e-check.js.map +1 -1
- package/icon/shapes/ellipsis-horizontal.js.map +1 -1
- package/icon/shapes/ellipsis-vertical.js.map +1 -1
- package/icon/shapes/employee-group.js.map +1 -1
- package/icon/shapes/employee.js.map +1 -1
- package/icon/shapes/envelope.js.map +1 -1
- package/icon/shapes/eraser.js.map +1 -1
- package/icon/shapes/error-mini.js.map +1 -1
- package/icon/shapes/error-standard.js.map +1 -1
- package/icon/shapes/euro.js.map +1 -1
- package/icon/shapes/event-mini.js.map +1 -1
- package/icon/shapes/event.js.map +1 -1
- package/icon/shapes/exclamation-circle.js.map +1 -1
- package/icon/shapes/exclamation-triangle.js.map +1 -1
- package/icon/shapes/expand-card.js.map +1 -1
- package/icon/shapes/export.js.map +1 -1
- package/icon/shapes/eye-hide.js.map +1 -1
- package/icon/shapes/eye.js.map +1 -1
- package/icon/shapes/factory.js.map +1 -1
- package/icon/shapes/fast-forward.js.map +1 -1
- package/icon/shapes/ferry.js.map +1 -1
- package/icon/shapes/file-group.js.map +1 -1
- package/icon/shapes/file-settings.js.map +1 -1
- package/icon/shapes/file-share-2.js.map +1 -1
- package/icon/shapes/file-share.js.map +1 -1
- package/icon/shapes/file-zip.js.map +1 -1
- package/icon/shapes/file.js.map +1 -1
- package/icon/shapes/film-strip.js.map +1 -1
- package/icon/shapes/filter-2.js.map +1 -1
- package/icon/shapes/filter-grid-circle-mini.js.map +1 -1
- package/icon/shapes/filter-grid-circle.js.map +1 -1
- package/icon/shapes/filter-grid-mini.js.map +1 -1
- package/icon/shapes/filter-grid.js.map +1 -1
- package/icon/shapes/filter-off.js.map +1 -1
- package/icon/shapes/filter.js.map +1 -1
- package/icon/shapes/firewall.js.map +1 -1
- package/icon/shapes/first-aid.js.map +1 -1
- package/icon/shapes/fish.js.map +1 -1
- package/icon/shapes/flag.js.map +1 -1
- package/icon/shapes/flame.js.map +1 -1
- package/icon/shapes/flask.js.map +1 -1
- package/icon/shapes/floppy.js.map +1 -1
- package/icon/shapes/folder-open.js.map +1 -1
- package/icon/shapes/folder.js.map +1 -1
- package/icon/shapes/font-size.js.map +1 -1
- package/icon/shapes/forking.js.map +1 -1
- package/icon/shapes/form.js.map +1 -1
- package/icon/shapes/fuel.js.map +1 -1
- package/icon/shapes/gavel.js.map +1 -1
- package/icon/shapes/grid-chart.js.map +1 -1
- package/icon/shapes/grid-view.js.map +1 -1
- package/icon/shapes/half-star.js.map +1 -1
- package/icon/shapes/happy-face.js.map +1 -1
- package/icon/shapes/hard-disk.js.map +1 -1
- package/icon/shapes/hard-drive-disks.js.map +1 -1
- package/icon/shapes/hard-drive.js.map +1 -1
- package/icon/shapes/hashtag.js.map +1 -1
- package/icon/shapes/headphones.js.map +1 -1
- package/icon/shapes/heart-broken.js.map +1 -1
- package/icon/shapes/heart.js.map +1 -1
- package/icon/shapes/heat-map.js.map +1 -1
- package/icon/shapes/helix.js.map +1 -1
- package/icon/shapes/help-info.js.map +1 -1
- package/icon/shapes/help.js.map +1 -1
- package/icon/shapes/highlighter.js.map +1 -1
- package/icon/shapes/history.js.map +1 -1
- package/icon/shapes/home.js.map +1 -1
- package/icon/shapes/host-group.js.map +1 -1
- package/icon/shapes/host.js.map +1 -1
- package/icon/shapes/hourglass.js.map +1 -1
- package/icon/shapes/id-badge.js.map +1 -1
- package/icon/shapes/image-gallery.js.map +1 -1
- package/icon/shapes/image.js.map +1 -1
- package/icon/shapes/import.js.map +1 -1
- package/icon/shapes/inbox.js.map +1 -1
- package/icon/shapes/indent.js.map +1 -1
- package/icon/shapes/inductor.js.map +1 -1
- package/icon/shapes/info-circle-mini.js.map +1 -1
- package/icon/shapes/info-circle.js.map +1 -1
- package/icon/shapes/info-standard.js.map +1 -1
- package/icon/shapes/install.js.map +1 -1
- package/icon/shapes/internet-of-things.js.map +1 -1
- package/icon/shapes/italic.js.map +1 -1
- package/icon/shapes/justify-text.js.map +1 -1
- package/icon/shapes/key.js.map +1 -1
- package/icon/shapes/keyboard.js.map +1 -1
- package/icon/shapes/landscape.js.map +1 -1
- package/icon/shapes/language.js.map +1 -1
- package/icon/shapes/launchpad.js.map +1 -1
- package/icon/shapes/layers.js.map +1 -1
- package/icon/shapes/library.js.map +1 -1
- package/icon/shapes/lightbulb.js.map +1 -1
- package/icon/shapes/line-chart.js.map +1 -1
- package/icon/shapes/link.js.map +1 -1
- package/icon/shapes/list.js.map +1 -1
- package/icon/shapes/lock.js.map +1 -1
- package/icon/shapes/login.js.map +1 -1
- package/icon/shapes/logout.js.map +1 -1
- package/icon/shapes/map-marker.js.map +1 -1
- package/icon/shapes/map.js.map +1 -1
- package/icon/shapes/media-changer.js.map +1 -1
- package/icon/shapes/memory.js.map +1 -1
- package/icon/shapes/microphone-mute.js.map +1 -1
- package/icon/shapes/microphone.js.map +1 -1
- package/icon/shapes/minus-circle.js.map +1 -1
- package/icon/shapes/minus.js.map +1 -1
- package/icon/shapes/mobile.js.map +1 -1
- package/icon/shapes/moon.js.map +1 -1
- package/icon/shapes/mouse.js.map +1 -1
- package/icon/shapes/music-note.js.map +1 -1
- package/icon/shapes/namespace.js +1 -1
- package/icon/shapes/namespace.js.map +1 -1
- package/icon/shapes/network-globe.js.map +1 -1
- package/icon/shapes/network-settings.js.map +1 -1
- package/icon/shapes/network-switch.js.map +1 -1
- package/icon/shapes/neutral-face.js.map +1 -1
- package/icon/shapes/new.js.map +1 -1
- package/icon/shapes/no-access.js.map +1 -1
- package/icon/shapes/no-wifi.js.map +1 -1
- package/icon/shapes/node-group.js.map +1 -1
- package/icon/shapes/node.js.map +1 -1
- package/icon/shapes/nodes.js.map +1 -1
- package/icon/shapes/note.js.map +1 -1
- package/icon/shapes/number-list.js.map +1 -1
- package/icon/shapes/nvme.js.map +1 -1
- package/icon/shapes/objects.js.map +1 -1
- package/icon/shapes/on-holiday.js.map +1 -1
- package/icon/shapes/organization.js.map +1 -1
- package/icon/shapes/outdent.js.map +1 -1
- package/icon/shapes/paint-roller.js.map +1 -1
- package/icon/shapes/paperclip.js.map +1 -1
- package/icon/shapes/paste.js.map +1 -1
- package/icon/shapes/pause.js.map +1 -1
- package/icon/shapes/pdf-file.js.map +1 -1
- package/icon/shapes/pencil.js.map +1 -1
- package/icon/shapes/peso.js.map +1 -1
- package/icon/shapes/phone-handset.js.map +1 -1
- package/icon/shapes/picture.js.map +1 -1
- package/icon/shapes/pie-chart.js.map +1 -1
- package/icon/shapes/piggy-bank.js.map +1 -1
- package/icon/shapes/pin.js.map +1 -1
- package/icon/shapes/pinboard.js.map +1 -1
- package/icon/shapes/play.js.map +1 -1
- package/icon/shapes/plugin.js.map +1 -1
- package/icon/shapes/plus-circle.js.map +1 -1
- package/icon/shapes/plus.js.map +1 -1
- package/icon/shapes/pod.js.map +1 -1
- package/icon/shapes/pop-out.js.map +1 -1
- package/icon/shapes/portrait.js.map +1 -1
- package/icon/shapes/pound.js.map +1 -1
- package/icon/shapes/power.js.map +1 -1
- package/icon/shapes/printer.js.map +1 -1
- package/icon/shapes/process-on-vm.js.map +1 -1
- package/icon/shapes/qr-code.js.map +1 -1
- package/icon/shapes/rack-server.js.map +1 -1
- package/icon/shapes/radar.js.map +1 -1
- package/icon/shapes/recycle.js.map +1 -1
- package/icon/shapes/redo.js.map +1 -1
- package/icon/shapes/refresh.js.map +1 -1
- package/icon/shapes/repeat.js.map +1 -1
- package/icon/shapes/replay-all.js.map +1 -1
- package/icon/shapes/replay-one.js.map +1 -1
- package/icon/shapes/resistor.js.map +1 -1
- package/icon/shapes/resize.js.map +1 -1
- package/icon/shapes/resource-pool.js.map +1 -1
- package/icon/shapes/rewind.js.map +1 -1
- package/icon/shapes/router.js.map +1 -1
- package/icon/shapes/ruble.js.map +1 -1
- package/icon/shapes/ruler-pencil.js.map +1 -1
- package/icon/shapes/rupee.js.map +1 -1
- package/icon/shapes/sad-face.js.map +1 -1
- package/icon/shapes/scatter-plot.js.map +1 -1
- package/icon/shapes/scissors.js.map +1 -1
- package/icon/shapes/script-execute.js.map +1 -1
- package/icon/shapes/script-schedule.js.map +1 -1
- package/icon/shapes/scroll.js.map +1 -1
- package/icon/shapes/search.js.map +1 -1
- package/icon/shapes/share.js.map +1 -1
- package/icon/shapes/shield-check.js.map +1 -1
- package/icon/shapes/shield-x.js.map +1 -1
- package/icon/shapes/shield.js.map +1 -1
- package/icon/shapes/shopping-bag.js.map +1 -1
- package/icon/shapes/shopping-cart.js.map +1 -1
- package/icon/shapes/shrink.js.map +1 -1
- package/icon/shapes/shuffle.js.map +1 -1
- package/icon/shapes/slider.js.map +1 -1
- package/icon/shapes/snowflake.js.map +1 -1
- package/icon/shapes/sort-by.js.map +1 -1
- package/icon/shapes/squid.js.map +1 -1
- package/icon/shapes/ssd.js.map +1 -1
- package/icon/shapes/star.js.map +1 -1
- package/icon/shapes/step-forward-2.js.map +1 -1
- package/icon/shapes/step-forward.js.map +1 -1
- package/icon/shapes/stop.js.map +1 -1
- package/icon/shapes/storage-adapter.js.map +1 -1
- package/icon/shapes/storage.js.map +1 -1
- package/icon/shapes/store.js.map +1 -1
- package/icon/shapes/strikethrough.js.map +1 -1
- package/icon/shapes/subscript.js.map +1 -1
- package/icon/shapes/success-standard.js.map +1 -1
- package/icon/shapes/sun.js.map +1 -1
- package/icon/shapes/superscript.js.map +1 -1
- package/icon/shapes/switch.js.map +1 -1
- package/icon/shapes/sync.js.map +1 -1
- package/icon/shapes/table.js.map +1 -1
- package/icon/shapes/tablet.js.map +1 -1
- package/icon/shapes/tag.js.map +1 -1
- package/icon/shapes/tags.js.map +1 -1
- package/icon/shapes/talk-bubbles.js.map +1 -1
- package/icon/shapes/tape-drive.js.map +1 -1
- package/icon/shapes/target.js.map +1 -1
- package/icon/shapes/tasks.js.map +1 -1
- package/icon/shapes/terminal.js.map +1 -1
- package/icon/shapes/text-color.js.map +1 -1
- package/icon/shapes/text.js.map +1 -1
- package/icon/shapes/thermometer.js.map +1 -1
- package/icon/shapes/thin-client.js.map +1 -1
- package/icon/shapes/thumbs-down.js.map +1 -1
- package/icon/shapes/thumbs-up.js.map +1 -1
- package/icon/shapes/tick-chart.js.map +1 -1
- package/icon/shapes/timeline.js.map +1 -1
- package/icon/shapes/times-circle.js.map +1 -1
- package/icon/shapes/times-mini.js.map +1 -1
- package/icon/shapes/times.js.map +1 -1
- package/icon/shapes/tools.js.map +1 -1
- package/icon/shapes/trailer.js.map +1 -1
- package/icon/shapes/trash.js.map +1 -1
- package/icon/shapes/tree-view.js.map +1 -1
- package/icon/shapes/tree.js.map +1 -1
- package/icon/shapes/truck.js.map +1 -1
- package/icon/shapes/two-way-arrows.js.map +1 -1
- package/icon/shapes/unarchive.js.map +1 -1
- package/icon/shapes/underline.js.map +1 -1
- package/icon/shapes/undo.js.map +1 -1
- package/icon/shapes/uninstall.js.map +1 -1
- package/icon/shapes/unknown-status.js.map +1 -1
- package/icon/shapes/unknown.js.map +1 -1
- package/icon/shapes/unlink.js.map +1 -1
- package/icon/shapes/unlock.js.map +1 -1
- package/icon/shapes/unpin.d.ts +3 -0
- package/icon/shapes/unpin.js +2 -0
- package/icon/shapes/unpin.js.map +1 -0
- package/icon/shapes/update.js.map +1 -1
- package/icon/shapes/upload-cloud.js.map +1 -1
- package/icon/shapes/upload.js.map +1 -1
- package/icon/shapes/usb.js.map +1 -1
- package/icon/shapes/user.js.map +1 -1
- package/icon/shapes/users.js.map +1 -1
- package/icon/shapes/video-camera.js.map +1 -1
- package/icon/shapes/video-gallery.js.map +1 -1
- package/icon/shapes/view-cards.js.map +1 -1
- package/icon/shapes/view-columns.js.map +1 -1
- package/icon/shapes/view-list.js.map +1 -1
- package/icon/shapes/vm-bug-inverse.js.map +1 -1
- package/icon/shapes/vm-bug.js.map +1 -1
- package/icon/shapes/vm.js.map +1 -1
- package/icon/shapes/vmw-app.js.map +1 -1
- package/icon/shapes/volume-down.js.map +1 -1
- package/icon/shapes/volume-mute.js.map +1 -1
- package/icon/shapes/volume-up.js.map +1 -1
- package/icon/shapes/volume.js.map +1 -1
- package/icon/shapes/wallet.js.map +1 -1
- package/icon/shapes/wand.js.map +1 -1
- package/icon/shapes/warning-mini.js.map +1 -1
- package/icon/shapes/warning-standard.js.map +1 -1
- package/icon/shapes/wifi.js.map +1 -1
- package/icon/shapes/window-close.js.map +1 -1
- package/icon/shapes/window-max.js.map +1 -1
- package/icon/shapes/window-min.js.map +1 -1
- package/icon/shapes/window-restore.js.map +1 -1
- package/icon/shapes/won.js.map +1 -1
- package/icon/shapes/world.js.map +1 -1
- package/icon/shapes/wrench.js.map +1 -1
- package/icon/shapes/xls-file.js.map +1 -1
- package/icon/shapes/yen.js.map +1 -1
- package/icon/shapes/zoom-in.js.map +1 -1
- package/icon/shapes/zoom-out.js.map +1 -1
- package/icon/utils/icon.classnames.d.ts +1 -0
- package/icon/utils/icon.classnames.js +1 -1
- package/icon/utils/icon.classnames.js.map +1 -1
- package/icon/utils/icon.svg-helpers.js.map +1 -1
- package/index.js.map +1 -1
- package/input/index.js.map +1 -1
- package/input/input-group.element.d.ts +2 -1
- package/input/input-group.element.js.map +1 -1
- package/input/input-group.element.scss.js +1 -1
- package/input/input-group.element.scss.js.map +1 -1
- package/input/input.element.js.map +1 -1
- package/input/input.element.scss.js +1 -1
- package/input/input.element.scss.js.map +1 -1
- package/input/register.js.map +1 -1
- package/internal/base/base.element.scss.js +1 -1
- package/internal/base/base.element.scss.js.map +1 -1
- package/internal/base/button.base.d.ts +2 -1
- package/internal/base/button.base.js +1 -1
- package/internal/base/button.base.js.map +1 -1
- package/internal/base/focus-trap.base.d.ts +3 -3
- package/internal/base/focus-trap.base.js.map +1 -1
- package/internal/controllers/active.controller.js.map +1 -1
- package/internal/controllers/aria-button.controller.js +1 -1
- package/internal/controllers/aria-button.controller.js.map +1 -1
- package/internal/controllers/aria-disabled.controller.js.map +1 -1
- package/internal/controllers/aria-expanded.controller.d.ts +14 -0
- package/internal/controllers/aria-expanded.controller.js +2 -0
- package/internal/controllers/aria-expanded.controller.js.map +1 -0
- package/internal/controllers/aria-grid.controller.d.ts +57 -0
- package/internal/controllers/aria-grid.controller.js +2 -0
- package/internal/controllers/aria-grid.controller.js.map +1 -0
- package/internal/controllers/aria-modal.controller.d.ts +11 -0
- package/internal/controllers/aria-modal.controller.js +2 -0
- package/internal/controllers/aria-modal.controller.js.map +1 -0
- package/internal/controllers/aria-multiselectable.controller.d.ts +13 -0
- package/internal/controllers/aria-multiselectable.controller.js +2 -0
- package/internal/controllers/aria-multiselectable.controller.js.map +1 -0
- package/internal/controllers/aria-popup-trigger.controller.js.map +1 -1
- package/internal/controllers/aria-popup.controller.d.ts +14 -5
- package/internal/controllers/aria-popup.controller.js +1 -1
- package/internal/controllers/aria-popup.controller.js.map +1 -1
- package/internal/controllers/aria-pressed.controller.js.map +1 -1
- package/internal/controllers/aria-selected.controller.js.map +1 -1
- package/internal/controllers/button-anchor.controller.d.ts +4 -0
- package/internal/controllers/button-anchor.controller.js +1 -1
- package/internal/controllers/button-anchor.controller.js.map +1 -1
- package/internal/controllers/button-submit.controller.js.map +1 -1
- package/internal/controllers/closable.controller.d.ts +13 -19
- package/internal/controllers/closable.controller.js +1 -1
- package/internal/controllers/closable.controller.js.map +1 -1
- package/internal/controllers/draggable-list.controller.d.ts +32 -0
- package/internal/controllers/draggable-list.controller.js +2 -0
- package/internal/controllers/draggable-list.controller.js.map +1 -0
- package/internal/controllers/first-focus.controller.d.ts +8 -4
- package/internal/controllers/first-focus.controller.js +1 -1
- package/internal/controllers/first-focus.controller.js.map +1 -1
- package/internal/controllers/grid-range-selection.controller.d.ts +28 -0
- package/internal/controllers/grid-range-selection.controller.js +2 -0
- package/internal/controllers/grid-range-selection.controller.js.map +1 -0
- package/internal/controllers/inline-focus-trap.controller.d.ts +8 -7
- package/internal/controllers/inline-focus-trap.controller.js +1 -1
- package/internal/controllers/inline-focus-trap.controller.js.map +1 -1
- package/internal/controllers/key-navigation-grid.controller.d.ts +28 -0
- package/internal/controllers/key-navigation-grid.controller.js +2 -0
- package/internal/controllers/key-navigation-grid.controller.js.map +1 -0
- package/internal/controllers/key-navigation-list.controller.d.ts +26 -0
- package/internal/controllers/key-navigation-list.controller.js +2 -0
- package/internal/controllers/key-navigation-list.controller.js.map +1 -0
- package/internal/controllers/key-navigation.utils.d.ts +19 -0
- package/internal/controllers/key-navigation.utils.js +2 -0
- package/internal/controllers/key-navigation.utils.js.map +1 -0
- package/internal/controllers/layer.controller.d.ts +24 -0
- package/internal/controllers/layer.controller.js +2 -0
- package/internal/controllers/layer.controller.js.map +1 -0
- package/internal/controllers/responsive.controller.d.ts +19 -0
- package/internal/controllers/responsive.controller.js +2 -0
- package/internal/controllers/responsive.controller.js.map +1 -0
- package/internal/controllers/scrollable-list-visibility.controller.d.ts +13 -0
- package/internal/controllers/scrollable-list-visibility.controller.js +2 -0
- package/internal/controllers/scrollable-list-visibility.controller.js.map +1 -0
- package/internal/controllers/touch.controller.d.ts +22 -0
- package/internal/controllers/touch.controller.js +2 -0
- package/internal/controllers/touch.controller.js.map +1 -0
- package/internal/controllers/trigger.controller.d.ts +31 -0
- package/internal/controllers/trigger.controller.js +2 -0
- package/internal/controllers/trigger.controller.js.map +1 -0
- package/internal/decorators/animate.d.ts +1 -1
- package/internal/decorators/animate.js +1 -1
- package/internal/decorators/animate.js.map +1 -1
- package/internal/decorators/element.d.ts +15 -18
- package/internal/decorators/element.js +1 -1
- package/internal/decorators/element.js.map +1 -1
- package/internal/decorators/event.js.map +1 -1
- package/internal/decorators/global-style.js.map +1 -1
- package/internal/decorators/i18n.d.ts +16 -0
- package/internal/decorators/i18n.js +1 -1
- package/internal/decorators/i18n.js.map +1 -1
- package/internal/decorators/id.js.map +1 -1
- package/internal/decorators/property.d.ts +3 -16
- package/internal/decorators/property.js +1 -1
- package/internal/decorators/property.js.map +1 -1
- package/internal/decorators/query-slot.js.map +1 -1
- package/internal/decorators/utils.d.ts +23 -0
- package/internal/decorators/utils.js +2 -0
- package/internal/decorators/utils.js.map +1 -0
- package/internal/directives/spread-props.js.map +1 -1
- package/internal/i18n/utils.js.map +1 -1
- package/internal/index.d.ts +28 -0
- package/internal/index.js +1 -1
- package/internal/index.js.map +1 -1
- package/internal/interfaces/interfaces.js.map +1 -1
- package/internal/motion/animations/cds-accordion-panel-open.js.map +1 -1
- package/internal/motion/animations/cds-component-shake.js.map +1 -1
- package/internal/motion/animations/cds-dropdown-open.js.map +1 -1
- package/internal/motion/animations/cds-modal-enter.js.map +1 -1
- package/internal/motion/animations/cds-navigation-group-open.js.map +1 -1
- package/internal/motion/animations/cds-navigation-open.js.map +1 -1
- package/internal/motion/animations/cds-overlay-hinge-example.js.map +1 -1
- package/internal/motion/animations/cds-tree-item-expand.js.map +1 -1
- package/internal/motion/animations/keyframes/fade-in-and-slide-down.js.map +1 -1
- package/internal/motion/animations/keyframes/fade-in.js.map +1 -1
- package/internal/motion/animations/keyframes/hinge.js.map +1 -1
- package/internal/motion/animations/keyframes/shake.js.map +1 -1
- package/internal/motion/interfaces.js.map +1 -1
- package/internal/motion/motion.service.js.map +1 -1
- package/internal/motion/utils.d.ts +4 -3
- package/internal/motion/utils.js.map +1 -1
- package/internal/positioning/interfaces.js.map +1 -1
- package/internal/positioning/utils.js +1 -1
- package/internal/positioning/utils.js.map +1 -1
- package/internal/services/focus-trap-tracker.service.js.map +1 -1
- package/internal/services/global.service.d.ts +2 -2
- package/internal/services/global.service.js.map +1 -1
- package/internal/services/i18n.service.d.ts +33 -60
- package/internal/services/i18n.service.js +1 -1
- package/internal/services/i18n.service.js.map +1 -1
- package/internal/services/keycodes.service.js.map +1 -1
- package/internal/services/log.service.js.map +1 -1
- package/internal/utils/__.js.map +1 -1
- package/internal/utils/a11y.js.map +1 -1
- package/internal/utils/array.d.ts +2 -0
- package/internal/utils/array.js +1 -1
- package/internal/utils/array.js.map +1 -1
- package/internal/utils/async.js.map +1 -1
- package/internal/utils/browser.d.ts +7 -0
- package/internal/utils/browser.js +2 -0
- package/internal/utils/browser.js.map +1 -0
- package/internal/utils/color.js.map +1 -1
- package/internal/utils/conditional.js.map +1 -1
- package/internal/utils/css.d.ts +1 -0
- package/internal/utils/css.js +1 -1
- package/internal/utils/css.js.map +1 -1
- package/internal/utils/dom.d.ts +9 -1
- package/internal/utils/dom.js +1 -1
- package/internal/utils/dom.js.map +1 -1
- package/internal/utils/enum.js.map +1 -1
- package/internal/utils/environment.js.map +1 -1
- package/internal/utils/event-subject.js.map +1 -1
- package/internal/utils/events.js +1 -1
- package/internal/utils/events.js.map +1 -1
- package/internal/utils/exists.d.ts +1 -1
- package/internal/utils/exists.js.map +1 -1
- package/internal/utils/focus.d.ts +12 -0
- package/internal/utils/focus.js +2 -0
- package/internal/utils/focus.js.map +1 -0
- package/internal/utils/framework.js.map +1 -1
- package/internal/utils/global.d.ts +2 -1
- package/internal/utils/global.js +1 -1
- package/internal/utils/global.js.map +1 -1
- package/internal/utils/identity.d.ts +3 -0
- package/internal/utils/identity.js +1 -1
- package/internal/utils/identity.js.map +1 -1
- package/internal/utils/keycodes.d.ts +11 -0
- package/internal/utils/keycodes.js +1 -1
- package/internal/utils/keycodes.js.map +1 -1
- package/internal/utils/lit.d.ts +1 -1
- package/internal/utils/lit.js.map +1 -1
- package/internal/utils/math.d.ts +1 -0
- package/internal/utils/math.js +1 -1
- package/internal/utils/math.js.map +1 -1
- package/internal/utils/metadata.js.map +1 -1
- package/internal/utils/registration.js.map +1 -1
- package/internal/utils/responsive.d.ts +2 -2
- package/internal/utils/responsive.js +1 -1
- package/internal/utils/responsive.js.map +1 -1
- package/internal/utils/size.js.map +1 -1
- package/internal/utils/string.d.ts +1 -0
- package/internal/utils/string.js +1 -1
- package/internal/utils/string.js.map +1 -1
- package/internal/utils/supports.d.ts +0 -2
- package/internal/utils/supports.js +1 -1
- package/internal/utils/supports.js.map +1 -1
- package/internal/utils/traversal.d.ts +1 -2
- package/internal/utils/traversal.js +1 -1
- package/internal/utils/traversal.js.map +1 -1
- package/internal-components/close-button/close-button.element.js.map +1 -1
- package/internal-components/close-button/index.js.map +1 -1
- package/internal-components/close-button/register.js.map +1 -1
- package/internal-components/overlay/index.js +1 -1
- package/internal-components/overlay/index.js.map +1 -1
- package/internal-components/overlay/overlay.element.d.ts +9 -25
- package/internal-components/overlay/overlay.element.js +1 -1
- package/internal-components/overlay/overlay.element.js.map +1 -1
- package/internal-components/overlay/overlay.element.scss.js +1 -1
- package/internal-components/overlay/overlay.element.scss.js.map +1 -1
- package/internal-components/overlay/register.js.map +1 -1
- package/internal-components/overlay/shared.element.scss.js +1 -1
- package/internal-components/overlay/shared.element.scss.js.map +1 -1
- package/internal-components/panel/index.js.map +1 -1
- package/internal-components/panel/panel.element.d.ts +1 -1
- package/internal-components/panel/panel.element.js.map +1 -1
- package/internal-components/panel/panel.element.scss.js +1 -1
- package/internal-components/panel/panel.element.scss.js.map +1 -1
- package/internal-components/panel/register.js.map +1 -1
- package/internal-components/popup/index.js.map +1 -1
- package/internal-components/popup/pointer.element.js.map +1 -1
- package/internal-components/popup/pointer.element.scss.js +1 -1
- package/internal-components/popup/pointer.element.scss.js.map +1 -1
- package/internal-components/popup/popup.element.d.ts +12 -14
- package/internal-components/popup/popup.element.js +1 -1
- package/internal-components/popup/popup.element.js.map +1 -1
- package/internal-components/popup/popup.element.scss.js +1 -1
- package/internal-components/popup/popup.element.scss.js.map +1 -1
- package/internal-components/popup/register.js.map +1 -1
- package/internal-components/popup/utils/pointer.utils.js.map +1 -1
- package/internal-components/split-handle/index.d.ts +1 -0
- package/internal-components/split-handle/index.js +2 -0
- package/internal-components/split-handle/index.js.map +1 -0
- package/internal-components/split-handle/register.d.ts +7 -0
- package/internal-components/split-handle/register.js +2 -0
- package/internal-components/split-handle/register.js.map +1 -0
- package/internal-components/split-handle/split-handle.element.d.ts +38 -0
- package/internal-components/split-handle/split-handle.element.js +2 -0
- package/internal-components/split-handle/split-handle.element.js.map +1 -0
- package/internal-components/split-handle/split-handle.element.scss.js +2 -0
- package/internal-components/split-handle/split-handle.element.scss.js.map +1 -0
- package/internal-components/visual-checkbox/index.js.map +1 -1
- package/internal-components/visual-checkbox/register.js.map +1 -1
- package/internal-components/visual-checkbox/visual-checkbox.element.js.map +1 -1
- package/internal-components/visual-checkbox/visual-checkbox.element.scss.js +1 -1
- package/internal-components/visual-checkbox/visual-checkbox.element.scss.js.map +1 -1
- package/list/list.css +22 -12
- package/list/list.min.css +1 -1
- package/modal/index.js.map +1 -1
- package/modal/modal-actions.element.js.map +1 -1
- package/modal/modal-content.element.js.map +1 -1
- package/modal/modal-header-actions.element.js.map +1 -1
- package/modal/modal-header.element.js.map +1 -1
- package/modal/modal.element.d.ts +0 -2
- package/modal/modal.element.js +1 -1
- package/modal/modal.element.js.map +1 -1
- package/modal/modal.element.scss.js +1 -1
- package/modal/modal.element.scss.js.map +1 -1
- package/modal/register.js.map +1 -1
- package/navigation/index.js.map +1 -1
- package/navigation/navigation-group.element.d.ts +5 -3
- package/navigation/navigation-group.element.js.map +1 -1
- package/navigation/navigation-group.element.scss.js +1 -1
- package/navigation/navigation-group.element.scss.js.map +1 -1
- package/navigation/navigation-item.element.d.ts +6 -4
- package/navigation/navigation-item.element.js.map +1 -1
- package/navigation/navigation-item.element.scss.js +1 -1
- package/navigation/navigation-item.element.scss.js.map +1 -1
- package/navigation/navigation-start.element.d.ts +7 -4
- package/navigation/navigation-start.element.js.map +1 -1
- package/navigation/navigation.element.d.ts +5 -3
- package/navigation/navigation.element.js.map +1 -1
- package/navigation/navigation.element.scss.js +1 -1
- package/navigation/navigation.element.scss.js.map +1 -1
- package/navigation/register.js.map +1 -1
- package/navigation/utils/utils.js.map +1 -1
- package/package.json +22 -6
- package/pagination/index.js.map +1 -1
- package/pagination/pagination-button.element.d.ts +1 -1
- package/pagination/pagination-button.element.js.map +1 -1
- package/pagination/pagination.element.d.ts +1 -1
- package/pagination/pagination.element.js +1 -1
- package/pagination/pagination.element.js.map +1 -1
- package/pagination/pagination.element.scss.js +1 -1
- package/pagination/pagination.element.scss.js.map +1 -1
- package/pagination/register.js.map +1 -1
- package/pagination/utils.js.map +1 -1
- package/password/index.js.map +1 -1
- package/password/password.element.js.map +1 -1
- package/password/register.js.map +1 -1
- package/polyfills/aria-reflect.js.map +1 -1
- package/polyfills/at.d.ts +15 -0
- package/polyfills/at.js +2 -0
- package/polyfills/at.js.map +1 -0
- package/polyfills/index.d.ts +1 -0
- package/polyfills/index.js +1 -1
- package/polyfills/index.js.map +1 -1
- package/progress-circle/index.js.map +1 -1
- package/progress-circle/progress-circle.element.d.ts +2 -2
- package/progress-circle/progress-circle.element.js +1 -1
- package/progress-circle/progress-circle.element.js.map +1 -1
- package/progress-circle/progress-circle.element.scss.js +1 -1
- package/progress-circle/progress-circle.element.scss.js.map +1 -1
- package/progress-circle/progress-circle.utils.js.map +1 -1
- package/progress-circle/register.js.map +1 -1
- package/radio/index.js.map +1 -1
- package/radio/radio-group.element.d.ts +2 -1
- package/radio/radio-group.element.js +1 -1
- package/radio/radio-group.element.js.map +1 -1
- package/radio/radio.element.d.ts +2 -1
- package/radio/radio.element.js.map +1 -1
- package/radio/radio.element.scss.js +1 -1
- package/radio/radio.element.scss.js.map +1 -1
- package/radio/register.js.map +1 -1
- package/range/index.js.map +1 -1
- package/range/range.element.d.ts +2 -1
- package/range/range.element.js.map +1 -1
- package/range/range.element.scss.js +1 -1
- package/range/range.element.scss.js.map +1 -1
- package/range/range.global.scss.js +1 -1
- package/range/range.global.scss.js.map +1 -1
- package/range/register.js.map +1 -1
- package/search/index.js.map +1 -1
- package/search/register.js.map +1 -1
- package/search/search.element.js.map +1 -1
- package/search/search.global.scss.js +1 -1
- package/search/search.global.scss.js.map +1 -1
- package/select/index.js.map +1 -1
- package/select/register.js.map +1 -1
- package/select/select.element.d.ts +2 -1
- package/select/select.element.js +1 -1
- package/select/select.element.js.map +1 -1
- package/select/select.element.scss.js.map +1 -1
- package/select/select.global.scss.js.map +1 -1
- package/selection-panels/checkbox/checkbox-panel.element.d.ts +0 -1
- package/selection-panels/checkbox/checkbox-panel.element.js.map +1 -1
- package/selection-panels/checkbox/index.js.map +1 -1
- package/selection-panels/checkbox/register.js.map +1 -1
- package/selection-panels/radio/index.js.map +1 -1
- package/selection-panels/radio/radio-panel.element.d.ts +1 -1
- package/selection-panels/radio/radio-panel.element.js.map +1 -1
- package/selection-panels/radio/register.js.map +1 -1
- package/selection-panels/shared/selection-panel.element.scss.js +1 -1
- package/selection-panels/shared/selection-panel.element.scss.js.map +1 -1
- package/signpost/index.d.ts +1 -0
- package/signpost/index.js +2 -0
- package/signpost/index.js.map +1 -0
- package/signpost/register.d.ts +7 -0
- package/signpost/register.js +2 -0
- package/signpost/register.js.map +1 -0
- package/signpost/signpost.element.d.ts +44 -0
- package/signpost/signpost.element.js +2 -0
- package/signpost/signpost.element.js.map +1 -0
- package/styles/module.layout.css +56 -0
- package/styles/module.layout.min.css +1 -1
- package/styles/module.reset.css +5 -0
- package/styles/module.typography.css +50 -16
- package/styles/module.typography.min.css +1 -1
- package/styles/shim.clr-ui.css +42 -35
- package/styles/shim.clr-ui.min.css +15 -13
- package/styles/theme.dark.css +6 -1
- package/styles/theme.dark.min.css +1 -1
- package/styles/theme.high-contrast.css +43 -0
- package/styles/theme.high-contrast.min.css +1 -0
- package/styles/theme.low-motion.css +10 -0
- package/table/table.css +10 -0
- package/tag/index.js.map +1 -1
- package/tag/register.js.map +1 -1
- package/tag/tag.element.d.ts +2 -1
- package/tag/tag.element.js +1 -1
- package/tag/tag.element.js.map +1 -1
- package/tag/tag.element.scss.js +1 -1
- package/tag/tag.element.scss.js.map +1 -1
- package/test/index.d.ts +1 -0
- package/test/index.js +1 -1
- package/test/index.js.map +1 -1
- package/test/utils.js.map +1 -1
- package/test/web-test-server.d.ts +6 -0
- package/test/web-test-server.js +2 -0
- package/test/web-test-server.js.map +1 -0
- package/test-dropdown/index.js.map +1 -1
- package/test-dropdown/register.js.map +1 -1
- package/test-dropdown/test-dropdown.element.d.ts +0 -1
- package/test-dropdown/test-dropdown.element.js.map +1 -1
- package/test-dropdown/test-dropdown.element.scss.js.map +1 -1
- package/textarea/index.js.map +1 -1
- package/textarea/register.js.map +1 -1
- package/textarea/textarea.element.js.map +1 -1
- package/textarea/textarea.element.scss.js.map +1 -1
- package/time/index.js.map +1 -1
- package/time/register.js.map +1 -1
- package/time/time.element.js.map +1 -1
- package/time/time.global.scss.js.map +1 -1
- package/toggle/index.js.map +1 -1
- package/toggle/register.js.map +1 -1
- package/toggle/toggle-group.element.js.map +1 -1
- package/toggle/toggle.element.d.ts +2 -1
- package/toggle/toggle.element.js.map +1 -1
- package/toggle/toggle.element.scss.js +1 -1
- package/toggle/toggle.element.scss.js.map +1 -1
- package/tokens/tokens.scss +3 -0
- package/tree-view/index.js.map +1 -1
- package/tree-view/register.js.map +1 -1
- package/tree-view/tree-item.element.d.ts +2 -3
- package/tree-view/tree-item.element.js +1 -1
- package/tree-view/tree-item.element.js.map +1 -1
- package/tree-view/tree-item.element.scss.js +1 -1
- package/tree-view/tree-item.element.scss.js.map +1 -1
- package/tree-view/tree.element.d.ts +0 -1
- package/tree-view/tree.element.js.map +1 -1
- package/tree-view/tree.element.scss.js.map +1 -1
- package/internal/controllers/utils/first-focus.controller.utils.d.ts +0 -3
- package/internal/controllers/utils/first-focus.controller.utils.js +0 -2
- package/internal/controllers/utils/first-focus.controller.utils.js.map +0 -1
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { LitElement, TemplateResult } from 'lit';
|
|
1
|
+
import { LitElement, TemplateResult, PropertyValues } from 'lit';
|
|
2
2
|
import { EventEmitter } from '@cds/core/internal';
|
|
3
|
+
import { CdsControlAction } from '../control-action/control-action.element.js';
|
|
3
4
|
import { CdsControlMessage } from './../control-message/control-message.element.js';
|
|
4
5
|
import { ControlStatus, ControlLayout, ControlWidth } from './../utils/interfaces.js';
|
|
5
6
|
import { CdsInternalControlLabel } from '../control-label/control-label.element.js';
|
|
6
|
-
import { CdsControlAction } from '../control-action/control-action.element.js';
|
|
7
7
|
export declare const enum ControlLabelLayout {
|
|
8
8
|
default = "default",
|
|
9
9
|
ariaLabel = "aria-label",
|
|
@@ -90,8 +90,8 @@ export declare class CdsControl extends LitElement {
|
|
|
90
90
|
private get prefixTemplate();
|
|
91
91
|
private get suffixTemplate();
|
|
92
92
|
connectedCallback(): void;
|
|
93
|
-
firstUpdated(props:
|
|
94
|
-
updated(props:
|
|
93
|
+
firstUpdated(props: PropertyValues<this>): void;
|
|
94
|
+
updated(props: PropertyValues<any>): void;
|
|
95
95
|
disconnectedCallback(): void;
|
|
96
96
|
protected associateInputAndLabel(): void;
|
|
97
97
|
private associateInputToDatalist;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import{__decorate as t}from"tslib";import{LitElement as e,html as s}from"lit";import{query as i}from"lit/decorators/query.js";import{getElementLanguageDirection as o,baseStyles as a,hasAriaLabelTypeAttr as l,syncProps as r,describeElementByElements as n,getElementUpdates as p,childrenUpdateComplete as u,pxToRem as d,
|
|
1
|
+
import{__decorate as t}from"tslib";import{LitElement as e,html as s}from"lit";import{query as i}from"lit/decorators/query.js";import{getElementLanguageDirection as o,baseStyles as a,hasAriaLabelTypeAttr as l,syncProps as r,describeElementByElements as n,getElementUpdates as p,childrenUpdateComplete as u,pxToRem as d,calculateOptimalLayout as h,property as c,state as y,querySlot as f,querySlotAll as g,event as b,responsive as m}from"@cds/core/internal";import v from"./control.element.scss.js";import{syncHTML5Validation as x}from"../utils/validate.js";import{defaultControlWidth as L,defaultFormLayout as C,getStatusIcon as A,associateInputAndLabel as T,associateInputToDatalist as $,getCurrentMessageStatus as S,controlIsWrapped as I,formLayouts as k}from"../utils/utils.js";var w;!function(t){t.default="default",t.ariaLabel="aria-label",t.inputGroup="input-group",t.hiddenLabel="hidden-label"}(w||(w={}));let D=class extends e{constructor(){super(...arguments);this.status="neutral",this.controlWidth=L,this.validate=!1,this.responsive=!0,this._layout=C,this.focused=!1,this.disabled=!1,this.readonly=!1,this.fixedControlWidth=!1,this.supportsPrefixSuffixActions=!0,this.labelLayout=w.default,this.observers=[]}get layout(){return this._layout}set layout(t){const e=this._layout;this._layout=t?t.replace("-inline",""):C,this.requestUpdate("layout",e)}get isRTL(){return"rtl"===o(this)}static get styles(){return[a,v]}get hasAriaLabelTypeAttr(){return l(this.inputControl)}get hasStatusIcon(){return this.labelLayout!==w.inputGroup&&("error"===this.status||"success"===this.status)}render(){return s`${this.labelLayout===w.hiddenLabel||this.labelLayout===w.inputGroup?s`<span cds-layout="display:screen-reader-only"><slot name="label" @slotchange="${()=>this.associateInputAndLabel()}"></slot></span>`:""}<div cds-layout="${"vertical"===this.layout?"vertical gap:xs":"horizontal gap:lg"} align:stretch" class="private-host ${this.isRTL?"rtl":""}">${this.primaryLabelTemplate}<div class="input-message-container" cds-layout="
|
|
2
2
|
wrap:none
|
|
3
3
|
${"compact"===this.layout?"horizontal":"vertical"}
|
|
4
4
|
${"stretch"!==this.controlWidth||this.fixedControlWidth?"":"align:horizontal-stretch"}
|
|
5
|
-
${this.messages?.length?"gap:xs":""}"><div cds-layout="horizontal gap:xs wrap:none"><div cds-layout="horizontal align:top wrap:none ${"shrink"===this.controlWidth||this.fixedControlWidth?"align:shrink":"align:horizontal-stretch"}" class="${this.hasStatusIcon?"input-container with-status-icon":"input-container"}">${this.inputTemplate} ${this.prefixTemplate}<slot name="input"></slot>${this.suffixTemplate}</div>${this.hasStatusIcon?
|
|
5
|
+
${this.messages?.length?"gap:xs":""}"><div cds-layout="horizontal gap:xs wrap:none"><div cds-layout="horizontal align:top wrap:none ${"shrink"===this.controlWidth||this.fixedControlWidth?"align:shrink":"align:horizontal-stretch"}" class="${this.hasStatusIcon?"input-container with-status-icon":"input-container"}">${this.inputTemplate} ${this.prefixTemplate}<slot name="input"></slot>${this.suffixTemplate}</div>${this.hasStatusIcon?A(this.status):""}</div>${this.messagesTemplate}<slot name="datalist" @slotchange="${()=>this.associateInputToDatalist()}"></slot></div></div>`}get inputTemplate(){return s``}get prefixDefaultTemplate(){return null}get suffixDefaultTemplate(){return null}get isGenericControl(){return"cds-control"===this.tagName.toLowerCase()}get hasControlActions(){return this.controlActions.length>0||this.prefixDefaultTemplate||this.suffixDefaultTemplate}get primaryLabelTemplate(){return s`${this.labelLayout===w.default?s`<cds-internal-control-label .disabled="${this.disabled}" cds-layout="align:shrink align:top" action="primary"><slot name="label" @slotchange="${()=>this.associateInputAndLabel()}"></slot></cds-internal-control-label>`:""}`}get messagesTemplate(){return s`<div cds-layout="${"compact"===this.layout?"align:shrink":""}" class="messages"><slot name="message"></slot></div>`}get prefixTemplate(){return s`<div cds-layout="align:shrink align:vertical-center" class="prefix"><div cds-layout="horizontal gap:xxs">${this.prefixDefaultTemplate}<slot name="prefix"></slot></div></div>`}get suffixTemplate(){return s`<div cds-layout="align:shrink align:vertical-center" class="suffix"><div cds-layout="horizontal gap:xxs"><slot name="suffix"></slot>${this.suffixDefaultTemplate}</div></div>`}connectedCallback(){super.connectedCallback(),this.setAttribute("cds-control","")}firstUpdated(t){super.firstUpdated(t),this.setupHostAttributes(),this.setupHTML5Validation(),this.setActionOffsetPadding(),this.setupResponsive(),this.setupDescribedByUpdates(),this.setupLabelLayout(),this.assignSlotIfInControlGroup()}updated(t){super.updated(t),this.messages.forEach((e=>r(e,this,{disabled:t.has("disabled")}))),r(this.inputControl,this,{disabled:t.has("disabled")})}disconnectedCallback(){super.disconnectedCallback(),this.observers.forEach((t=>t?.disconnect()))}associateInputAndLabel(){T(this.inputControl,this.label)}associateInputToDatalist(){$(this.inputControl,this.datalistControl)}setupDescribedByUpdates(){this.messageSlot?.addEventListener("slotchange",(async()=>{n(this.inputControl,Array.from(this.messages)),S(Array.from(this.messages)).then((t=>this.status=t))}))}setupHostAttributes(){this.inputControl.addEventListener("focusin",(()=>this.focused=!0)),this.inputControl.addEventListener("focusout",(()=>this.focused=!1)),this.observers.push(p(this.inputControl,"disabled",(t=>this.disabled=""===t||t)),p(this.inputControl,"aria-disabled",(t=>this.disabled="true"===t)),p(this.inputControl,"readonly",(t=>this.readonly=""===t||t)))}setupHTML5Validation(){!this.inputControl?.form?.noValidate&&this.validate&&x(this,Array.from(this.messages))}async setActionOffsetPadding(){const t=this.prefixAction?.updateComplete,e=this.suffixAction?.updateComplete;if(await t||Promise.resolve(!0),await e||Promise.resolve(!0),await u(this.controlActions),!this.isGenericControl&&this.supportsPrefixSuffixActions&&this.hasControlActions){const t=d(this.prefixAction.getBoundingClientRect().width+6),e=d(this.suffixAction.getBoundingClientRect().width+6);this.inputControl.style.setProperty("padding-left",this.isRTL?e:t,"important"),this.inputControl.style.setProperty("padding-right",this.isRTL?t:e,"important")}}get layoutStable(){return this.labelLayout!==w.default||!I(this.inputControl,this.controlLabel,this.layout)}setupResponsive(){if(this.responsive&&this.labelLayout===w.default&&this.controlLabel){const t={layouts:k,initialLayout:this.layout};this.addEventListener("cdsResizeChange",(()=>{h(this,t).then((t=>{t&&this.layoutChange.emit(this.layout,{bubbles:!0})}))}))}}setupLabelLayout(){this.label?.getAttribute("cds-layout")?.includes("display:screen-reader-only")&&(this.labelLayout=w.hiddenLabel),this.hasAriaLabelTypeAttr&&(this.labelLayout=w.ariaLabel)}assignSlotIfInControlGroup(){this.parentElement?.hasAttribute("cds-control-group")&&this.setAttribute("slot","controls")}};t([c({type:String})],D.prototype,"status",void 0),t([c({type:String})],D.prototype,"controlWidth",void 0),t([c({type:Boolean})],D.prototype,"validate",void 0),t([c({type:Boolean})],D.prototype,"responsive",void 0),t([c({type:String})],D.prototype,"layout",null),t([y({type:Boolean,reflect:!0})],D.prototype,"focused",void 0),t([y({type:Boolean,reflect:!0})],D.prototype,"disabled",void 0),t([y({type:Boolean,reflect:!0})],D.prototype,"readonly",void 0),t([y()],D.prototype,"fixedControlWidth",void 0),t([y()],D.prototype,"supportsPrefixSuffixActions",void 0),t([y()],D.prototype,"isRTL",null),t([y()],D.prototype,"labelLayout",void 0),t([f("input, select, textarea, [cds-control]",{required:"error",requiredMessage:"input element is missing",assign:"input"})],D.prototype,"inputControl",void 0),t([f("label",{required:"error",requiredMessage:"To meet a11y standards either a <label> or input[aria-label] should be provided.",assign:"label",exemptOn:t=>t.hasAriaLabelTypeAttr})],D.prototype,"label",void 0),t([i("cds-internal-control-label[action=primary]")],D.prototype,"controlLabel",void 0),t([f("datalist",{assign:"datalist"})],D.prototype,"datalistControl",void 0),t([g("cds-control-message")],D.prototype,"messages",void 0),t([g("[cds-button-action]")],D.prototype,"controlActions",void 0),t([i(".prefix")],D.prototype,"prefixAction",void 0),t([i(".suffix")],D.prototype,"suffixAction",void 0),t([i(".messages")],D.prototype,"messageSlot",void 0),t([b()],D.prototype,"layoutChange",void 0),D=t([m()],D);export{D as CdsControl,w as ControlLabelLayout};
|
|
6
6
|
//# sourceMappingURL=control.element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control.element.js","sources":["../../../../src/forms/control/control.element.ts"],"sourcesContent":null,"names":["ControlLabelLayout","CdsControl","LitElement","[object Object]","super","this","status","controlWidth","defaultControlWidth","validate","responsive","_layout","defaultFormLayout","focused","disabled","readonly","fixedControlWidth","supportsPrefixSuffixActions","labelLayout","default","observers","layout","value","oldValue","replace","requestUpdate","isRTL","getElementLanguageDirection","styles","baseStyles","hasAriaLabelTypeAttr","inputControl","hasStatusIcon","inputGroup","html","hiddenLabel","associateInputAndLabel","primaryLabelTemplate","messages","length","inputTemplate","prefixTemplate","suffixTemplate","getStatusIcon","messagesTemplate","associateInputToDatalist","prefixDefaultTemplate","suffixDefaultTemplate","isGenericControl","tagName","toLowerCase","hasControlActions","controlActions","connectedCallback","setAttribute","props","firstUpdated","setupHostAttributes","setupHTML5Validation","setActionOffsetPadding","setupResponsive","setupDescribedByUpdates","setupLabelLayout","assignSlotIfInControlGroup","updated","forEach","message","syncProps","has","disconnectedCallback","o","disconnect","label","datalistControl","messageSlot","addEventListener","async","describeElementByElements","Array","from","getCurrentMessageStatus","then","s","push","getElementUpdates","form","noValidate","syncHTML5Validation","prefix","prefixAction","updateComplete","suffix","suffixAction","Promise","resolve","childrenUpdateComplete","start","pxToRem","getBoundingClientRect","width","end","style","setProperty","layoutStable","controlIsWrapped","controlLabel","layoutConfig","layouts","formLayouts","initialLayout","observer","updateComponentLayout","layoutChange","emit","bubbles","getAttribute","includes","ariaLabel","parentElement","hasAttribute","__decorate","property","type","String","prototype","Boolean","state","reflect","querySlot","required","requiredMessage","assign","exemptOn","_this","query","querySlotAll","event"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"control.element.js","sources":["../../../../src/forms/control/control.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { query } from 'lit/decorators/query.js';\nimport { baseStyles, property, querySlot, querySlotAll, childrenUpdateComplete, getElementLanguageDirection, event, describeElementByElements, state, syncProps, pxToRem, getElementUpdates, hasAriaLabelTypeAttr, calculateOptimalLayout, responsive, } from '@cds/core/internal';\nimport styles from './control.element.scss';\nimport { syncHTML5Validation } from '../utils/validate.js';\nimport { associateInputToDatalist, getStatusIcon, associateInputAndLabel, controlIsWrapped, formLayouts, defaultFormLayout, defaultControlWidth, getCurrentMessageStatus, } from '../utils/utils.js';\nexport var ControlLabelLayout;\n(function (ControlLabelLayout) {\n ControlLabelLayout[\"default\"] = \"default\";\n ControlLabelLayout[\"ariaLabel\"] = \"aria-label\";\n ControlLabelLayout[\"inputGroup\"] = \"input-group\";\n ControlLabelLayout[\"hiddenLabel\"] = \"hidden-label\";\n})(ControlLabelLayout || (ControlLabelLayout = {}));\n/**\n * Generic Control\n *\n * ```typescript\n * import '@cds/core/forms/register.js';\n * ```\n *\n * ```html\n * <cds-control>\n * <label>control</label>\n * <input type=\"text\" />\n * </cds-control>\n * ```\n * @element cds-control\n * @slot - For projecting input and label\n * @cssprop --label-width\n */\nlet CdsControl = class CdsControl extends LitElement {\n constructor() {\n super(...arguments);\n /**\n * Set the status of form control validation\n * @type {neutral | error | success}\n */\n this.status = 'neutral';\n /**\n * Adjust the control from the default full width or the browser default width\n * @type {stretch | shrink}\n */\n this.controlWidth = defaultControlWidth;\n /**\n * Set the validate attribute to sync with HTML5 native validation\n * https://developer.mozilla.org/en-US/docs/Learn/Forms/Form_validation\n */\n this.validate = false;\n /**\n * By default forms will collapse to layout that prevents overflow.\n * If disabled control layout may break or overflow in unexpected ways.\n */\n this.responsive = true;\n this._layout = defaultFormLayout;\n this.focused = false;\n this.disabled = false;\n this.readonly = false;\n this.fixedControlWidth = false;\n this.supportsPrefixSuffixActions = true;\n /** @private */\n this.labelLayout = ControlLabelLayout.default;\n this.observers = [];\n }\n /**\n * Set to adjust the default control layout. When `responsive` is true this will be the largest size to scale to.\n * @type {vertical | horizontal | compact}\n */\n get layout() {\n return this._layout;\n }\n set layout(value) {\n const oldValue = this._layout;\n this._layout = value ? value.replace('-inline', '') : defaultFormLayout; // auto convert any form-layouts from parent groups\n this.requestUpdate('layout', oldValue);\n }\n get isRTL() {\n return getElementLanguageDirection(this) === 'rtl';\n }\n static get styles() {\n return [baseStyles, styles];\n }\n get hasAriaLabelTypeAttr() {\n return hasAriaLabelTypeAttr(this.inputControl);\n }\n get hasStatusIcon() {\n return this.labelLayout !== ControlLabelLayout.inputGroup && (this.status === 'error' || this.status === 'success');\n }\n render() {\n return html `\n ${this.labelLayout === ControlLabelLayout.hiddenLabel || this.labelLayout === ControlLabelLayout.inputGroup\n ? html `<span cds-layout=\"display:screen-reader-only\"\n ><slot name=\"label\" @slotchange=${() => this.associateInputAndLabel()}></slot\n ></span>`\n : ''}\n <div\n cds-layout=\"${this.layout === 'vertical' ? 'vertical gap:xs' : 'horizontal gap:lg'} align:stretch\"\n class=\"private-host ${this.isRTL ? 'rtl' : ''}\"\n >\n ${this.primaryLabelTemplate}\n <div\n class=\"input-message-container\"\n cds-layout=\"\n wrap:none\n ${this.layout === 'compact' ? 'horizontal' : 'vertical'}\n ${this.controlWidth === 'stretch' && !this.fixedControlWidth ? 'align:horizontal-stretch' : ''}\n ${this.messages?.length ? 'gap:xs' : ''}\"\n >\n <div cds-layout=\"horizontal gap:xs wrap:none\">\n <div\n cds-layout=\"horizontal align:top wrap:none ${this.controlWidth === 'shrink' || this.fixedControlWidth\n ? 'align:shrink'\n : 'align:horizontal-stretch'}\"\n class=\"${this.hasStatusIcon ? 'input-container with-status-icon' : 'input-container'}\"\n >\n ${this.inputTemplate} ${this.prefixTemplate}\n <slot name=\"input\"></slot>\n ${this.suffixTemplate}\n </div>\n ${this.hasStatusIcon ? getStatusIcon(this.status) : ''}\n </div>\n ${this.messagesTemplate}\n <slot name=\"datalist\" @slotchange=${() => this.associateInputToDatalist()}></slot>\n </div>\n </div>\n `;\n }\n get inputTemplate() {\n return html ``;\n }\n get prefixDefaultTemplate() {\n return null;\n }\n get suffixDefaultTemplate() {\n return null;\n }\n get isGenericControl() {\n return this.tagName.toLowerCase() === 'cds-control';\n }\n get hasControlActions() {\n return this.controlActions.length > 0 || this.prefixDefaultTemplate || this.suffixDefaultTemplate;\n }\n get primaryLabelTemplate() {\n return html `\n ${this.labelLayout === ControlLabelLayout.default\n ? html ` <cds-internal-control-label\n .disabled=\"${this.disabled}\"\n cds-layout=\"align:shrink align:top\"\n action=\"primary\"\n >\n <slot name=\"label\" @slotchange=${() => this.associateInputAndLabel()}></slot>\n </cds-internal-control-label>`\n : ''}\n `;\n }\n get messagesTemplate() {\n return html `\n <div cds-layout=\"${this.layout === 'compact' ? 'align:shrink' : ''}\" class=\"messages\">\n <slot name=\"message\"></slot>\n </div>\n `;\n }\n get prefixTemplate() {\n return html `\n <div cds-layout=\"align:shrink align:vertical-center\" class=\"prefix\">\n <div cds-layout=\"horizontal gap:xxs\">\n ${this.prefixDefaultTemplate}\n <slot name=\"prefix\"></slot>\n </div>\n </div>\n `;\n }\n get suffixTemplate() {\n return html `\n <div cds-layout=\"align:shrink align:vertical-center\" class=\"suffix\">\n <div cds-layout=\"horizontal gap:xxs\">\n <slot name=\"suffix\"></slot>\n ${this.suffixDefaultTemplate}\n </div>\n </div>\n `;\n }\n connectedCallback() {\n super.connectedCallback();\n this.setAttribute('cds-control', '');\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.setupHostAttributes();\n this.setupHTML5Validation();\n this.setActionOffsetPadding();\n this.setupResponsive();\n this.setupDescribedByUpdates();\n this.setupLabelLayout();\n this.assignSlotIfInControlGroup();\n }\n updated(props) {\n super.updated(props);\n this.messages.forEach(message => syncProps(message, this, { disabled: props.has('disabled') }));\n syncProps(this.inputControl, this, { disabled: props.has('disabled') });\n }\n disconnectedCallback() {\n super.disconnectedCallback();\n this.observers.forEach(o => o?.disconnect());\n }\n associateInputAndLabel() {\n associateInputAndLabel(this.inputControl, this.label);\n }\n associateInputToDatalist() {\n associateInputToDatalist(this.inputControl, this.datalistControl);\n }\n setupDescribedByUpdates() {\n this.messageSlot?.addEventListener('slotchange', async () => {\n describeElementByElements(this.inputControl, Array.from(this.messages));\n getCurrentMessageStatus(Array.from(this.messages)).then(s => (this.status = s));\n });\n }\n setupHostAttributes() {\n this.inputControl.addEventListener('focusin', () => (this.focused = true));\n this.inputControl.addEventListener('focusout', () => (this.focused = false));\n this.observers.push(getElementUpdates(this.inputControl, 'disabled', (value) => (this.disabled = value === '' ? true : value)), getElementUpdates(this.inputControl, 'aria-disabled', (value) => (this.disabled = value === 'true' ? true : false)), getElementUpdates(this.inputControl, 'readonly', (value) => (this.readonly = value === '' ? true : value)));\n }\n setupHTML5Validation() {\n if (!this.inputControl?.form?.noValidate && this.validate) {\n syncHTML5Validation(this, Array.from(this.messages));\n }\n }\n async setActionOffsetPadding() {\n const prefix = this.prefixAction?.updateComplete;\n const suffix = this.suffixAction?.updateComplete;\n (await prefix) ? prefix : Promise.resolve(true);\n (await suffix) ? suffix : Promise.resolve(true);\n await childrenUpdateComplete(this.controlActions);\n if (!this.isGenericControl && this.supportsPrefixSuffixActions && this.hasControlActions) {\n const start = pxToRem(this.prefixAction.getBoundingClientRect().width + 6);\n const end = pxToRem(this.suffixAction.getBoundingClientRect().width + 6);\n this.inputControl.style.setProperty('padding-left', this.isRTL ? end : start, 'important');\n this.inputControl.style.setProperty('padding-right', this.isRTL ? start : end, 'important');\n }\n }\n /** @private */\n get layoutStable() {\n return (this.labelLayout !== ControlLabelLayout.default ||\n !controlIsWrapped(this.inputControl, this.controlLabel, this.layout));\n }\n setupResponsive() {\n if (this.responsive && this.labelLayout === ControlLabelLayout.default && this.controlLabel) {\n const layoutConfig = { layouts: formLayouts, initialLayout: this.layout };\n this.addEventListener('cdsResizeChange', () => {\n calculateOptimalLayout(this, layoutConfig).then(updated => {\n if (updated) {\n this.layoutChange.emit(this.layout, { bubbles: true });\n }\n });\n });\n }\n }\n setupLabelLayout() {\n if (this.label?.getAttribute('cds-layout')?.includes('display:screen-reader-only')) {\n this.labelLayout = ControlLabelLayout.hiddenLabel;\n }\n if (this.hasAriaLabelTypeAttr) {\n this.labelLayout = ControlLabelLayout.ariaLabel;\n }\n }\n assignSlotIfInControlGroup() {\n if (this.parentElement?.hasAttribute('cds-control-group')) {\n this.setAttribute('slot', 'controls');\n }\n }\n};\n__decorate([\n property({ type: String })\n], CdsControl.prototype, \"status\", void 0);\n__decorate([\n property({ type: String })\n], CdsControl.prototype, \"controlWidth\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsControl.prototype, \"validate\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsControl.prototype, \"responsive\", void 0);\n__decorate([\n property({ type: String })\n], CdsControl.prototype, \"layout\", null);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsControl.prototype, \"focused\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsControl.prototype, \"disabled\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsControl.prototype, \"readonly\", void 0);\n__decorate([\n state()\n], CdsControl.prototype, \"fixedControlWidth\", void 0);\n__decorate([\n state()\n], CdsControl.prototype, \"supportsPrefixSuffixActions\", void 0);\n__decorate([\n state()\n], CdsControl.prototype, \"isRTL\", null);\n__decorate([\n state()\n], CdsControl.prototype, \"labelLayout\", void 0);\n__decorate([\n querySlot('input, select, textarea, [cds-control]', {\n required: 'error',\n requiredMessage: 'input element is missing',\n assign: 'input',\n })\n], CdsControl.prototype, \"inputControl\", void 0);\n__decorate([\n querySlot('label', {\n required: 'error',\n requiredMessage: 'To meet a11y standards either a <label> or input[aria-label] should be provided.',\n assign: 'label',\n exemptOn: _this => {\n return _this.hasAriaLabelTypeAttr;\n },\n })\n], CdsControl.prototype, \"label\", void 0);\n__decorate([\n query('cds-internal-control-label[action=primary]')\n], CdsControl.prototype, \"controlLabel\", void 0);\n__decorate([\n querySlot('datalist', { assign: 'datalist' })\n], CdsControl.prototype, \"datalistControl\", void 0);\n__decorate([\n querySlotAll('cds-control-message')\n], CdsControl.prototype, \"messages\", void 0);\n__decorate([\n querySlotAll('[cds-button-action]')\n], CdsControl.prototype, \"controlActions\", void 0);\n__decorate([\n query('.prefix')\n], CdsControl.prototype, \"prefixAction\", void 0);\n__decorate([\n query('.suffix')\n], CdsControl.prototype, \"suffixAction\", void 0);\n__decorate([\n query('.messages')\n], CdsControl.prototype, \"messageSlot\", void 0);\n__decorate([\n event()\n], CdsControl.prototype, \"layoutChange\", void 0);\nCdsControl = __decorate([\n responsive()\n], CdsControl);\nexport { CdsControl };\n"],"names":["ControlLabelLayout","CdsControl","LitElement","constructor","super","this","status","controlWidth","defaultControlWidth","validate","responsive","_layout","defaultFormLayout","focused","disabled","readonly","fixedControlWidth","supportsPrefixSuffixActions","labelLayout","default","observers","layout","value","oldValue","replace","requestUpdate","isRTL","getElementLanguageDirection","styles","baseStyles","hasAriaLabelTypeAttr","inputControl","hasStatusIcon","inputGroup","render","html","hiddenLabel","associateInputAndLabel","primaryLabelTemplate","messages","length","inputTemplate","prefixTemplate","suffixTemplate","getStatusIcon","messagesTemplate","associateInputToDatalist","prefixDefaultTemplate","suffixDefaultTemplate","isGenericControl","tagName","toLowerCase","hasControlActions","controlActions","connectedCallback","setAttribute","firstUpdated","props","setupHostAttributes","setupHTML5Validation","setActionOffsetPadding","setupResponsive","setupDescribedByUpdates","setupLabelLayout","assignSlotIfInControlGroup","updated","forEach","message","syncProps","has","disconnectedCallback","o","disconnect","label","datalistControl","messageSlot","addEventListener","async","describeElementByElements","Array","from","getCurrentMessageStatus","then","s","push","getElementUpdates","form","noValidate","syncHTML5Validation","prefix","prefixAction","updateComplete","suffix","suffixAction","Promise","resolve","childrenUpdateComplete","start","pxToRem","getBoundingClientRect","width","end","style","setProperty","layoutStable","controlIsWrapped","controlLabel","layoutConfig","layouts","formLayouts","initialLayout","calculateOptimalLayout","layoutChange","emit","bubbles","getAttribute","includes","ariaLabel","parentElement","hasAttribute","__decorate","property","type","String","prototype","Boolean","state","reflect","querySlot","required","requiredMessage","assign","exemptOn","_this","query","querySlotAll","event"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{css as t}from"lit";var o=t`:host{contain:inherit;display:block;width:100%;--control-width:calc(var(--cds-global-layout-space-xxxl, 4rem) * 3)}:host([layout=compact]:not([control-width=shrink])) .input-container{min-width:var(--control-width)}:host(:not([layout*=vertical]):not([control-width=shrink])) .input-message-container{
|
|
1
|
+
import{css as t}from"lit";var o=t`:host{contain:inherit;display:block;width:100%;--control-width:calc(var(--cds-global-layout-space-xxxl, 4rem) * 3)}:host([layout=compact]:not([control-width=shrink])) .input-container{min-width:var(--control-width)}:host(:not([layout*=vertical]):not([control-width=shrink])) .input-message-container{flex-basis:calc(var(--cds-global-layout-space-xxxl,4rem)*3)}:host([layout=compact]:not([control-width=shrink])) ::slotted(cds-control-message){--max-width:calc(var(--cds-global-layout-space-xxxl, 4rem) * 3)}:host([layout*=vertical]) cds-internal-control-label{--label-width:100%}.input-container{line-height:0;max-width:100%}.input-container.with-status-icon{max-width:calc(100% - 1.2rem)}:host([_disabled]) ::slotted([slot=input]){cursor:not-allowed}:host([control-width=shrink]){width:auto}::slotted([cds-control]){width:100%}::slotted(input){margin:0!important;width:100%}::slotted(input[readonly]){cursor:default}[cds-button-action].status{height:var(--cds-global-space-7,1rem);padding-top:var(--cds-global-space-3,.25rem)}:host(:not([layout*=vertical])) cds-internal-control-label[action=primary],:host([layout=compact]) .messages,:host([layout=compact][status=error]) .messages,:host([layout=compact][status=success]) .messages{padding-top:var(--cds-global-space-5,.5rem)}`;export{o as default};
|
|
2
2
|
//# sourceMappingURL=control.element.scss.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control.element.scss.js","sources":[],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"control.element.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -18,5 +18,5 @@ import { CdsButtonAction } from '@cds/core/button-action';
|
|
|
18
18
|
*/
|
|
19
19
|
export declare class CdsControlAction extends CdsButtonAction {
|
|
20
20
|
action: 'label' | 'prefix' | 'suffix';
|
|
21
|
-
updated(props: PropertyValues): void;
|
|
21
|
+
updated(props: PropertyValues<this>): void;
|
|
22
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-action.element.js","sources":["../../../../src/forms/control-action/control-action.element.ts"],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"control-action.element.js","sources":["../../../../src/forms/control-action/control-action.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { assignSlotNames, property } from '@cds/core/internal';\nimport { CdsButtonAction } from '@cds/core/button-action';\n/**\n * Control Action Button\n *\n * ```typescript\n * import '@cds/core/forms/register.js';\n * ```\n *\n * ```html\n * <cds-control-action>\n *\n * </cds-control-action>\n * ```\n *\n * @element cds-control-action\n * @slot - For projecting text content or cds-icon\n */\nexport class CdsControlAction extends CdsButtonAction {\n updated(props) {\n super.updated(props);\n assignSlotNames([this, this.action ?? false]);\n }\n}\n__decorate([\n property({ type: String, reflect: true })\n], CdsControlAction.prototype, \"action\", void 0);\n"],"names":["CdsControlAction","CdsButtonAction","updated","props","super","assignSlotNames","this","action","__decorate","property","type","String","reflect","prototype"],"mappings":"gKAwBO,MAAMA,UAAyBC,EAClCC,QAAQC,GACJC,MAAMF,QAAQC,GACdE,EAAgB,CAACC,KAAMA,KAAKC,SAAU,KAG9CC,EAAW,CACPC,EAAS,CAAEC,KAAMC,OAAQC,SAAS,KACnCZ,EAAiBa,UAAW,cAAU"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { LitElement } from 'lit';
|
|
1
|
+
import { LitElement, PropertyValues } from 'lit';
|
|
2
2
|
import { EventEmitter } from '@cds/core/internal';
|
|
3
3
|
import { CdsControl } from '../control/control.element.js';
|
|
4
4
|
import { ControlStatus, FormLayout, ControlWidth } from '../utils/interfaces.js';
|
|
@@ -61,7 +61,6 @@ export declare class CdsInternalControlGroup extends LitElement {
|
|
|
61
61
|
protected layoutChange: EventEmitter<FormLayout>;
|
|
62
62
|
protected isInlineControlGroup: boolean;
|
|
63
63
|
protected isControlGroup: boolean;
|
|
64
|
-
protected observers: (MutationObserver | ResizeObserver)[];
|
|
65
64
|
static styles: import("lit").CSSResultGroup[];
|
|
66
65
|
protected get messagesTemplate(): import("lit-html").TemplateResult<1>;
|
|
67
66
|
protected get controlsTemplate(): import("lit-html").TemplateResult<1>;
|
|
@@ -70,10 +69,8 @@ export declare class CdsInternalControlGroup extends LitElement {
|
|
|
70
69
|
private get controlMessageLayout();
|
|
71
70
|
render(): import("lit-html").TemplateResult<1>;
|
|
72
71
|
connectedCallback(): void;
|
|
73
|
-
firstUpdated(props:
|
|
74
|
-
updated(props:
|
|
75
|
-
disconnectedCallback(): void;
|
|
76
|
-
/** @private */
|
|
72
|
+
firstUpdated(props: PropertyValues<this>): void;
|
|
73
|
+
updated(props: PropertyValues<any>): void;
|
|
77
74
|
get layoutStable(): boolean;
|
|
78
75
|
private associateLabelAndGroup;
|
|
79
76
|
private updateControlMessages;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__decorate as t}from"tslib";import{LitElement as o,html as s}from"lit";import{query as e}from"lit/decorators/query.js";import{setAttributes as i,syncProps as
|
|
1
|
+
import{__decorate as t}from"tslib";import{LitElement as o,html as s}from"lit";import{query as e}from"lit/decorators/query.js";import{setAttributes as i,syncProps as a,syncDefinedProps as r,describeElementByElements as l,calculateOptimalLayout as n,baseStyles as d,property as p,querySlot as c,querySlotAll as u,id as h,event as y,responsive as g}from"@cds/core/internal";import m from"./control-group.element.scss.js";import{defaultFormLayout as v,defaultControlWidth as b,getStatusIcon as L,inlineControlListIsWrapped as f,controlIsWrapped as C,getCurrentMessageStatus as $,formLayouts as z}from"../utils/utils.js";let A=class extends o{constructor(){super(...arguments);this.status="neutral",this.layout=v,this.controlAlign="left",this.disabled=!1,this.controlWidth=b,this.responsive=!0,this.isInlineControlGroup=!1,this.isControlGroup=!0}get messagesTemplate(){return s`<div ?hidden="${0===this.messages.length}" cds-layout="horizontal align:shrink gap:xs wrap:none" class="messages-container">${this.isInlineControlGroup?"":L(this.status)}<div class="messages"><slot name="message" @slotchange="${this.updateControlMessages}"></slot></div></div>`}get controlsTemplate(){return this.isInlineControlGroup?s`<div cds-layout="horizontal gap:xs align:horizontal-stretch" class="input-container"><div class="controls" cds-layout="horizontal align:horizontal-stretch wrap:none"><slot name="controls"></slot></div>${L(this.status)}</div>`:s`<div cds-layout="horizontal align:shrink" class="input-container"><div class="controls" cds-layout="${this.inlineControlLayout}"><slot name="controls"></slot></div></div>`}get inlineControlLayout(){return`${this.layout.includes("inline")||"compact"===this.layout?"horizontal gap:sm":"vertical gap:xs"} ${this.layout.includes("vertical")?"":"wrap:none"}`}get primaryLabelLayout(){return this.layout.includes("vertical")?"vertical gap:xs":"horizontal gap:lg"}get controlMessageLayout(){return("compact"===this.layout?"horizontal":"vertical")+" gap:xs wrap:none align:stretch"}render(){return s`<div class="private-host" cds-layout="${this.primaryLabelLayout}"><cds-internal-control-label .disabled="${this.disabled}" cds-layout="align:top" action="primary"><slot name="label"></slot></cds-internal-control-label><div class="control-message-container" cds-layout="${this.controlMessageLayout}">${this.controlsTemplate} ${this.messagesTemplate}</div></div>`}connectedCallback(){super.connectedCallback(),i(this,["role","group"],["cds-control-group",""])}firstUpdated(t){super.firstUpdated(t),this.associateLabelAndGroup(),this.setupResponsive()}updated(t){super.updated(t),t.set("isControlGroup",!0),this.controls.forEach((t=>t.isControlGroup=!0)),this.messages.forEach((o=>a(o,this,{disabled:t.has("disabled")}))),r(t,this,Array.from(this.controls))}get layoutStable(){return!f(Array.from(this.controls),this.layout)&&!C(this.controlSlot,this.controlLabel,this.layout)}associateLabelAndGroup(){this.setAttribute("aria-labelledby",this.groupLabelId),this.label.setAttribute("id",this.groupLabelId)}async updateControlMessages(){l(this,Array.from(this.messages)),this.status=await $(Array.from(this.messages))}setupResponsive(){if(this.responsive){const t={layouts:z,initialLayout:this.layout};this.addEventListener("cdsResizeChange",(()=>n(this,t).then((()=>this.layoutChange.emit(this.layout,{bubbles:!0})))))}}};A.styles=[d,m],t([p({type:String})],A.prototype,"status",void 0),t([p({type:String})],A.prototype,"layout",void 0),t([p({type:String})],A.prototype,"controlAlign",void 0),t([p({type:Boolean})],A.prototype,"disabled",void 0),t([p({type:String})],A.prototype,"controlWidth",void 0),t([p({type:Boolean})],A.prototype,"responsive",void 0),t([c("label",{assign:"label",required:"warning",requiredMessage:"To meet a11y standards a <label> should be provided"})],A.prototype,"label",void 0),t([u("cds-control, [cds-control]")],A.prototype,"controls",void 0),t([u("cds-control-message")],A.prototype,"messages",void 0),t([e("cds-internal-control-label[action=primary]",!0)],A.prototype,"controlLabel",void 0),t([e(".controls",!0)],A.prototype,"controlSlot",void 0),t([h()],A.prototype,"groupLabelId",void 0),t([y()],A.prototype,"layoutChange",void 0),A=t([g()],A);export{A as CdsInternalControlGroup};
|
|
2
2
|
//# sourceMappingURL=control-group.element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-group.element.js","sources":["../../../../src/forms/control-group/control-group.element.ts"],"sourcesContent":null,"names":["CdsInternalControlGroup","LitElement","[object Object]","super","this","status","layout","defaultFormLayout","controlAlign","disabled","controlWidth","defaultControlWidth","responsive","isInlineControlGroup","isControlGroup","observers","messagesTemplate","html","messages","length","getStatusIcon","updateControlMessages","controlsTemplate","inlineControlLayout","includes","primaryLabelLayout","controlMessageLayout","connectedCallback","setAttributes","props","firstUpdated","associateLabelAndGroup","setupResponsive","updated","set","controls","forEach","c","message","syncProps","has","syncDefinedProps","Array","from","disconnectedCallback","o","disconnect","layoutStable","inlineControlListIsWrapped","controlIsWrapped","controlSlot","controlLabel","setAttribute","groupLabelId","label","describeElementByElements","getCurrentMessageStatus","layoutConfig","layouts","formLayouts","initialLayout","push","updateComponentLayout","layoutChange","emit","bubbles","styles","baseStyles","__decorate","property","type","String","prototype","Boolean","querySlot","assign","required","requiredMessage","querySlotAll","query","id","event"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"control-group.element.js","sources":["../../../../src/forms/control-group/control-group.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { query } from 'lit/decorators/query.js';\nimport { baseStyles, property, querySlot, querySlotAll, id, event, syncDefinedProps, describeElementByElements, setAttributes, syncProps, calculateOptimalLayout, responsive, } from '@cds/core/internal';\nimport styles from './control-group.element.scss';\nimport { getStatusIcon, controlIsWrapped, formLayouts, inlineControlListIsWrapped, defaultFormLayout, defaultControlWidth, getCurrentMessageStatus, } from '../utils/utils.js';\n/**\n * Internal Control Group\n *\n * ```typescript\n * import '@cds/core/forms/register.js';\n * ```\n *\n * ```html\n * <cds-internal-control-group>\n * <label>...</label>\n * <cds-control>\n * <label></label>\n * <input ... />\n * </cds-control>\n * <cds-control>\n * <label></label>\n * <input ... />\n * </cds-control>\n * </cds-internal-control-group>\n * ```\n *\n * @element cds-internal-control-group\n * @slot - For projecting control group\n */\nlet CdsInternalControlGroup = class CdsInternalControlGroup extends LitElement {\n constructor() {\n super(...arguments);\n /**\n * Set the status of control group validation\n * @type {neutral | error | success}\n */\n this.status = 'neutral';\n /** @type {horizontal | horizontal-inline | vertical | vertical-inline | compact} */\n this.layout = defaultFormLayout;\n /** Align the labels of controls within group left or right */\n this.controlAlign = 'left';\n /** Disable all controls within a control group or omit and disable controls individually */\n this.disabled = false;\n /**\n * Adjust the control from the default full width or the browser default width\n * @type {stretch | shrink}\n */\n this.controlWidth = defaultControlWidth;\n /**\n * By default forms will collapse to layout that prevents overflow.\n * If disabled control layout may break or overflow in unexpected ways.\n */\n this.responsive = true;\n this.isInlineControlGroup = false;\n this.isControlGroup = true;\n }\n get messagesTemplate() {\n return html ` <div\n ?hidden=${this.messages.length === 0}\n cds-layout=\"horizontal align:shrink gap:xs wrap:none\"\n class=\"messages-container\"\n >\n ${!this.isInlineControlGroup ? getStatusIcon(this.status) : ''}\n <div class=\"messages\">\n <slot name=\"message\" @slotchange=${this.updateControlMessages}></slot>\n </div>\n </div>`;\n }\n get controlsTemplate() {\n return this.isInlineControlGroup\n ? html `\n <div cds-layout=\"horizontal gap:xs align:horizontal-stretch\" class=\"input-container\">\n <div class=\"controls\" cds-layout=\"horizontal align:horizontal-stretch wrap:none\">\n <slot name=\"controls\"></slot>\n </div>\n ${getStatusIcon(this.status)}\n </div>\n `\n : html `\n <div cds-layout=\"horizontal align:shrink\" class=\"input-container\">\n <div class=\"controls\" cds-layout=\"${this.inlineControlLayout}\">\n <slot name=\"controls\"></slot>\n </div>\n </div>\n `;\n }\n get inlineControlLayout() {\n return `${!this.layout.includes('inline') && this.layout !== 'compact' ? 'vertical gap:xs' : 'horizontal gap:sm'} ${!this.layout.includes('vertical') ? 'wrap:none' : ''}`;\n }\n get primaryLabelLayout() {\n return !this.layout.includes('vertical') ? 'horizontal gap:lg' : 'vertical gap:xs';\n }\n get controlMessageLayout() {\n return `${this.layout === 'compact' ? 'horizontal' : 'vertical'} gap:xs wrap:none align:stretch`;\n }\n render() {\n return html `\n <div class=\"private-host\" cds-layout=${this.primaryLabelLayout}>\n <cds-internal-control-label .disabled=${this.disabled} cds-layout=\"align:top\" action=\"primary\">\n <slot name=\"label\"></slot>\n </cds-internal-control-label>\n <div class=\"control-message-container\" cds-layout=${this.controlMessageLayout}>\n ${this.controlsTemplate} ${this.messagesTemplate}\n </div>\n </div>\n `;\n }\n connectedCallback() {\n super.connectedCallback();\n setAttributes(this, ['role', 'group'], ['cds-control-group', '']);\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.associateLabelAndGroup();\n this.setupResponsive();\n }\n updated(props) {\n super.updated(props);\n props.set('isControlGroup', true);\n this.controls.forEach((c) => (c.isControlGroup = true));\n this.messages.forEach(message => syncProps(message, this, { disabled: props.has('disabled') }));\n syncDefinedProps(props, this, Array.from(this.controls));\n }\n get layoutStable() {\n return (!inlineControlListIsWrapped(Array.from(this.controls), this.layout) &&\n !controlIsWrapped(this.controlSlot, this.controlLabel, this.layout));\n }\n associateLabelAndGroup() {\n this.setAttribute('aria-labelledby', this.groupLabelId);\n this.label.setAttribute('id', this.groupLabelId);\n }\n async updateControlMessages() {\n describeElementByElements(this, Array.from(this.messages));\n this.status = await getCurrentMessageStatus(Array.from(this.messages));\n }\n setupResponsive() {\n if (this.responsive) {\n const layoutConfig = { layouts: formLayouts, initialLayout: this.layout };\n this.addEventListener('cdsResizeChange', () => calculateOptimalLayout(this, layoutConfig).then(() => this.layoutChange.emit(this.layout, { bubbles: true })));\n }\n }\n};\nCdsInternalControlGroup.styles = [baseStyles, styles];\n__decorate([\n property({ type: String })\n], CdsInternalControlGroup.prototype, \"status\", void 0);\n__decorate([\n property({ type: String })\n], CdsInternalControlGroup.prototype, \"layout\", void 0);\n__decorate([\n property({ type: String })\n], CdsInternalControlGroup.prototype, \"controlAlign\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsInternalControlGroup.prototype, \"disabled\", void 0);\n__decorate([\n property({ type: String })\n], CdsInternalControlGroup.prototype, \"controlWidth\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsInternalControlGroup.prototype, \"responsive\", void 0);\n__decorate([\n querySlot('label', {\n assign: 'label',\n required: 'warning',\n requiredMessage: 'To meet a11y standards a <label> should be provided',\n })\n], CdsInternalControlGroup.prototype, \"label\", void 0);\n__decorate([\n querySlotAll('cds-control, [cds-control]')\n], CdsInternalControlGroup.prototype, \"controls\", void 0);\n__decorate([\n querySlotAll('cds-control-message')\n], CdsInternalControlGroup.prototype, \"messages\", void 0);\n__decorate([\n query('cds-internal-control-label[action=primary]', true)\n], CdsInternalControlGroup.prototype, \"controlLabel\", void 0);\n__decorate([\n query('.controls', true)\n], CdsInternalControlGroup.prototype, \"controlSlot\", void 0);\n__decorate([\n id()\n], CdsInternalControlGroup.prototype, \"groupLabelId\", void 0);\n__decorate([\n event()\n], CdsInternalControlGroup.prototype, \"layoutChange\", void 0);\nCdsInternalControlGroup = __decorate([\n responsive()\n], CdsInternalControlGroup);\nexport { CdsInternalControlGroup };\n"],"names":["CdsInternalControlGroup","LitElement","constructor","super","this","status","layout","defaultFormLayout","controlAlign","disabled","controlWidth","defaultControlWidth","responsive","isInlineControlGroup","isControlGroup","messagesTemplate","html","messages","length","getStatusIcon","updateControlMessages","controlsTemplate","inlineControlLayout","includes","primaryLabelLayout","controlMessageLayout","render","connectedCallback","setAttributes","firstUpdated","props","associateLabelAndGroup","setupResponsive","updated","set","controls","forEach","c","message","syncProps","has","syncDefinedProps","Array","from","layoutStable","inlineControlListIsWrapped","controlIsWrapped","controlSlot","controlLabel","setAttribute","groupLabelId","label","async","describeElementByElements","getCurrentMessageStatus","layoutConfig","layouts","formLayouts","initialLayout","addEventListener","calculateOptimalLayout","then","layoutChange","emit","bubbles","styles","baseStyles","__decorate","property","type","String","prototype","Boolean","querySlot","assign","required","requiredMessage","querySlotAll","query","id","event"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{css as t}from"lit";var a=t`:host{width:100%}:host([layout=compact]:not([control-width=shrink])) ::slotted(cds-control-message){--max-width:calc(var(--cds-global-layout-space-xxxl, 4rem) * 3)}.control-message-container{
|
|
1
|
+
import{css as t}from"lit";var a=t`:host{width:100%}:host([layout=compact]:not([control-width=shrink])) ::slotted(cds-control-message){--max-width:calc(var(--cds-global-layout-space-xxxl, 4rem) * 3)}.control-message-container{flex-basis:0}[cds-button-action].status{height:var(--cds-global-space-7,1rem)}:host([layout=compact]) .messages,:host([layout=compact]) cds-internal-control-label[action=primary],:host([layout=horizontal-inline]) cds-internal-control-label[action=primary],:host([layout=horizontal]) cds-internal-control-label[action=primary],:host([status=error]) .messages,:host([status=success]) .messages{padding-top:var(--cds-global-space-3,.25rem)}:host([layout*=vertical]) cds-internal-control-label{--label-width:100%}`;export{a as default};
|
|
2
2
|
//# sourceMappingURL=control-group.element.scss.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-group.element.scss.js","sources":[],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"control-group.element.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { PropertyValues } from 'lit';
|
|
1
2
|
import { EventEmitter } from '@cds/core/internal';
|
|
2
3
|
import { CdsControl } from '../control/control.element.js';
|
|
3
4
|
/**
|
|
@@ -29,9 +30,9 @@ export declare class CdsInternalControlInline extends CdsControl {
|
|
|
29
30
|
protected checkedChange: EventEmitter<boolean>;
|
|
30
31
|
protected supportsPrefixSuffixActions: boolean;
|
|
31
32
|
static get styles(): import("lit").CSSResultGroup[];
|
|
32
|
-
protected get internalLabelTemplate(): import("lit-html").TemplateResult<1>;
|
|
33
|
+
protected get internalLabelTemplate(): "" | import("lit-html").TemplateResult<1>;
|
|
33
34
|
render(): import("lit-html").TemplateResult<1>;
|
|
34
|
-
firstUpdated(props:
|
|
35
|
-
updated(props:
|
|
35
|
+
firstUpdated(props: PropertyValues<this>): void;
|
|
36
|
+
updated(props: PropertyValues<any>): void;
|
|
36
37
|
private selectInput;
|
|
37
38
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import{html as t}from"lit";import{getElementUpdates as i,property as s,state as n,event as o}from"@cds/core/internal";import r from"./control-inline.element.scss.js";import{CdsControl as l}from"../control/control.element.js";import{getStatusIcon as
|
|
1
|
+
import{__decorate as e}from"tslib";import{html as t}from"lit";import{getElementUpdates as i,property as s,state as n,event as o}from"@cds/core/internal";import r from"./control-inline.element.scss.js";import{CdsControl as l,ControlLabelLayout as a}from"../control/control.element.js";import{getStatusIcon as c}from"../utils/utils.js";class d extends l{constructor(){super(...arguments);this.controlAlign="left",this.checked=!1,this.indeterminate=!1,this.supportsPrefixSuffixActions=!1}static get styles(){return[...super.styles,r]}get internalLabelTemplate(){return this.labelLayout!==a.ariaLabel?t`<cds-internal-control-label action="secondary" .disabled="${this.disabled}" cds-layout="align:vertical-center"><slot name="label" @slotchange="${()=>this.associateInputAndLabel()}"></slot></cds-internal-control-label>`:""}render(){return t`<div class="private-host" cds-layout="${this.isControlGroup?"horizontal align:vertical-center":"vertical"} gap:xs"><div cds-layout="horizontal gap:xs wrap:none align:vertical-center ${"right"===this.controlAlign?"order:reverse":""}"><div role="presentation" class="input" @click="${this.selectInput}"></div><div role="presentation" focusable @click="${this.selectInput}"></div>${this.internalLabelTemplate}</div>${this.messages?.length?t`<div cds-layout="horizontal wrap:none ${this.messages?.length?"gap:xs":""}">${c(this.status)}<div cds-layout="align:vertical-center" class="messages"><slot name="message"></slot></div></div>`:""}</div><div cds-layout="display:screen-reader-only"><slot name="input"></slot></div>`}firstUpdated(e){super.firstUpdated(e),this.inputControl.addEventListener("change",(()=>this.checked=this.inputControl.checked)),this.observers.push(i(this.inputControl,"checked",(e=>this.checked=""===e||e)),i(this.inputControl,"indeterminate",(e=>this.indeterminate=""===e||e)))}updated(e){super.updated(e),e.has("indeterminate")&&e.get("indeterminate")!==this.indeterminate&&this.indeterminate&&(this.checked=!1),e.has("checked")&&e.get("checked")!==this.checked&&this.checked&&(this.indeterminate=!1,this.checkedChange.emit(this.checked,{bubbles:!this.isControlGroup}))}selectInput(e){this.inputControl.click(),e.preventDefault()}}e([s({type:String})],d.prototype,"controlAlign",void 0),e([n()],d.prototype,"isControlGroup",void 0),e([n({type:Boolean,reflect:!0})],d.prototype,"checked",void 0),e([n({type:Boolean,reflect:!0})],d.prototype,"indeterminate",void 0),e([o()],d.prototype,"checkedChange",void 0);export{d as CdsInternalControlInline};
|
|
2
2
|
//# sourceMappingURL=control-inline.element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-inline.element.js","sources":["../../../../src/forms/control-inline/control-inline.element.ts"],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"control-inline.element.js","sources":["../../../../src/forms/control-inline/control-inline.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { property, event, getElementUpdates, state } from '@cds/core/internal';\nimport styles from './control-inline.element.scss';\nimport { CdsControl, ControlLabelLayout } from '../control/control.element.js';\nimport { getStatusIcon } from '../utils/utils.js';\n/**\n * Internal Control Inline (boolean types)\n *\n * ```typescript\n * import '@cds/core/forms/register.js';\n * ```\n *\n * ```html\n * <cds-internal-control-inline>\n * <label>inline</label>\n * <input type=\"radio\" />\n * </ds-internal-control-inline>\n * ```\n * @element cds-internal-control-inline\n * @slot - For projecting inline input and label\n */\nexport class CdsInternalControlInline extends CdsControl {\n constructor() {\n super(...arguments);\n /** Align the labels of controls within group left or right */\n this.controlAlign = 'left';\n /** @private */\n this.checked = false;\n /** @private */\n this.indeterminate = false;\n this.supportsPrefixSuffixActions = false;\n }\n static get styles() {\n return [...super.styles, styles];\n }\n get internalLabelTemplate() {\n return this.labelLayout !== ControlLabelLayout.ariaLabel\n ? html `\n <cds-internal-control-label\n action=\"secondary\"\n .disabled=\"${this.disabled}\"\n cds-layout=\"align:vertical-center\"\n >\n <slot name=\"label\" @slotchange=${() => this.associateInputAndLabel()}></slot>\n </cds-internal-control-label>\n `\n : '';\n }\n render() {\n return html `\n <div\n class=\"private-host\"\n cds-layout=\"${this.isControlGroup ? 'horizontal align:vertical-center' : 'vertical'} gap:xs\"\n >\n <div\n cds-layout=\"horizontal gap:xs wrap:none align:vertical-center ${this.controlAlign === 'right'\n ? 'order:reverse'\n : ''}\"\n >\n <div role=\"presentation\" class=\"input\" @click=${this.selectInput}></div>\n <div role=\"presentation\" focusable @click=${this.selectInput}></div>\n ${this.internalLabelTemplate}\n </div>\n ${this.messages?.length\n ? html ` <div cds-layout=\"horizontal wrap:none ${this.messages?.length ? 'gap:xs' : ''}\">\n ${getStatusIcon(this.status)}\n <div cds-layout=\"align:vertical-center\" class=\"messages\">\n <slot name=\"message\"></slot>\n </div>\n </div>`\n : ''}\n </div>\n <div cds-layout=\"display:screen-reader-only\">\n <slot name=\"input\"></slot>\n </div>\n `;\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.inputControl.addEventListener('change', () => (this.checked = this.inputControl.checked));\n this.observers.push(getElementUpdates(this.inputControl, 'checked', (value) => (this.checked = value === '' ? true : value)), getElementUpdates(this.inputControl, 'indeterminate', (value) => (this.indeterminate = value === '' ? true : value)));\n }\n updated(props) {\n super.updated(props);\n if (props.has('indeterminate') && props.get('indeterminate') !== this.indeterminate && this.indeterminate) {\n this.checked = false;\n }\n if (props.has('checked') && props.get('checked') !== this.checked && this.checked) {\n this.indeterminate = false;\n this.checkedChange.emit(this.checked, { bubbles: !this.isControlGroup }); // if not a group then bubble to notify the other associated controls\n }\n }\n selectInput(e) {\n this.inputControl.click();\n e.preventDefault(); // prevent any events from the input div, only the native input\n }\n}\n__decorate([\n property({ type: String })\n], CdsInternalControlInline.prototype, \"controlAlign\", void 0);\n__decorate([\n state()\n], CdsInternalControlInline.prototype, \"isControlGroup\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsInternalControlInline.prototype, \"checked\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsInternalControlInline.prototype, \"indeterminate\", void 0);\n__decorate([\n event()\n], CdsInternalControlInline.prototype, \"checkedChange\", void 0);\n"],"names":["CdsInternalControlInline","CdsControl","constructor","super","this","controlAlign","checked","indeterminate","supportsPrefixSuffixActions","styles","internalLabelTemplate","labelLayout","ControlLabelLayout","ariaLabel","html","disabled","associateInputAndLabel","render","isControlGroup","selectInput","messages","length","getStatusIcon","status","firstUpdated","props","inputControl","addEventListener","observers","push","getElementUpdates","value","updated","has","get","checkedChange","emit","bubbles","e","click","preventDefault","__decorate","property","type","String","prototype","state","Boolean","reflect","event"],"mappings":"8UA2BO,MAAMA,UAAiCC,EAC1CC,cACIC,oBAEAC,KAAKC,aAAe,OAEpBD,KAAKE,SAAU,EAEfF,KAAKG,eAAgB,EACrBH,KAAKI,6BAA8B,EAE5BC,oBACP,MAAO,IAAIN,MAAMM,OAAQA,GAEzBC,4BACA,OAAON,KAAKO,cAAgBC,EAAmBC,UACzCC,CAAK,6DAGMV,KAAKW,gFAGe,IAAMX,KAAKY,iEAG1C,GAEVC,SACI,OAAOH,CAAK,yCAGEV,KAAKc,eAAiB,mCAAqC,yFAGe,UAAtBd,KAAKC,aACjE,gBACA,sDAE4CD,KAAKe,iEACTf,KAAKe,sBAC/Cf,KAAKM,8BAEPN,KAAKgB,UAAUC,OACXP,CAAK,yCAA0CV,KAAKgB,UAAUC,OAAS,SAAW,OAChFC,EAAclB,KAAKmB,2GAKrB,wFAOVC,aAAaC,GACTtB,MAAMqB,aAAaC,GACnBrB,KAAKsB,aAAaC,iBAAiB,UAAU,IAAOvB,KAAKE,QAAUF,KAAKsB,aAAapB,UACrFF,KAAKwB,UAAUC,KAAKC,EAAkB1B,KAAKsB,aAAc,WAAYK,GAAW3B,KAAKE,QAAoB,KAAVyB,GAAsBA,IAASD,EAAkB1B,KAAKsB,aAAc,iBAAkBK,GAAW3B,KAAKG,cAA0B,KAAVwB,GAAsBA,KAE/OC,QAAQP,GACJtB,MAAM6B,QAAQP,GACVA,EAAMQ,IAAI,kBAAoBR,EAAMS,IAAI,mBAAqB9B,KAAKG,eAAiBH,KAAKG,gBACxFH,KAAKE,SAAU,GAEfmB,EAAMQ,IAAI,YAAcR,EAAMS,IAAI,aAAe9B,KAAKE,SAAWF,KAAKE,UACtEF,KAAKG,eAAgB,EACrBH,KAAK+B,cAAcC,KAAKhC,KAAKE,QAAS,CAAE+B,SAAUjC,KAAKc,kBAG/DC,YAAYmB,GACRlC,KAAKsB,aAAaa,QAClBD,EAAEE,kBAGVC,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClB5C,EAAyB6C,UAAW,oBAAgB,GACvDJ,EAAW,CACPK,KACD9C,EAAyB6C,UAAW,sBAAkB,GACzDJ,EAAW,CACPK,EAAM,CAAEH,KAAMI,QAASC,SAAS,KACjChD,EAAyB6C,UAAW,eAAW,GAClDJ,EAAW,CACPK,EAAM,CAAEH,KAAMI,QAASC,SAAS,KACjChD,EAAyB6C,UAAW,qBAAiB,GACxDJ,EAAW,CACPQ,KACDjD,EAAyB6C,UAAW,qBAAiB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-inline.element.scss.js","sources":[],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"control-inline.element.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-label.element.js","sources":["../../../../src/forms/control-label/control-label.element.ts"],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"control-label.element.js","sources":["../../../../src/forms/control-label/control-label.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { baseStyles, property } from '@cds/core/internal';\nimport styles from './control-label.element.scss';\n/**\n * Label\n *\n * ```typescript\n * import '@cds/core/forms/register.js';\n * ```\n *\n * ```html\n * <cds-internal-control-label status=\"primary | secondary\">\n * <label>...</label>\n * </cds-internal-control-label>\n * ```\n *\n * @element cds-internal-control-label\n * @slot - For projecting label text\n * @cssprop --label-width\n */\nexport class CdsInternalControlLabel extends LitElement {\n constructor() {\n super(...arguments);\n this.disabled = false;\n this.action = 'primary';\n }\n static get styles() {\n return [baseStyles, styles];\n }\n render() {\n return html `\n <div class=\"private-host\" cds-layout=\"horizontal gap:xs align:shrink\">\n <slot></slot>\n </div>\n `;\n }\n}\n__decorate([\n property({ type: Boolean })\n], CdsInternalControlLabel.prototype, \"disabled\", void 0);\n__decorate([\n property({ type: String })\n], CdsInternalControlLabel.prototype, \"action\", void 0);\n"],"names":["CdsInternalControlLabel","LitElement","constructor","super","this","disabled","action","styles","baseStyles","render","html","__decorate","property","type","Boolean","prototype","String"],"mappings":"2LA0BO,MAAMA,UAAgCC,EACzCC,cACIC,oBACAC,KAAKC,UAAW,EAChBD,KAAKE,OAAS,UAEPC,oBACP,MAAO,CAACC,EAAYD,GAExBE,SACI,OAAOC,CAAK,6FAOpBC,EAAW,CACPC,EAAS,CAAEC,KAAMC,WAClBd,EAAwBe,UAAW,gBAAY,GAClDJ,EAAW,CACPC,EAAS,CAAEC,KAAMG,UAClBhB,EAAwBe,UAAW,cAAU"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-label.element.scss.js","sources":[],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"control-label.element.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-message.element.js","sources":["../../../../src/forms/control-message/control-message.element.ts"],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"control-message.element.js","sources":["../../../../src/forms/control-message/control-message.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { baseStyles, property, assignSlotNames, state } from '@cds/core/internal';\nimport styles from './control-message.element.scss';\n/**\n * Control Message\n *\n * ```typescript\n * import '@cds/core/forms/register.js';\n * ```\n *\n * ```html\n * <cds-control>\n * <label>Test</label>\n * <input type=\"text\" />\n * <cds-control-message>helper text</cds-control-message>\n * </cds-control>\n * ```\n *\n * @element cds-control-message\n * @slot - For projecting helper message text\n * @cssprop --color\n * @cssprop --font-size\n * @cssprop --font-weight\n * @cssprop --max-width\n * @cssprop --min-width\n */\nexport class CdsControlMessage extends LitElement {\n constructor() {\n super(...arguments);\n /**\n * Set the status of form control message validation\n * @type {neutral | error | success}\n */\n this.status = 'neutral';\n this.disabled = false;\n }\n render() {\n return html `\n <div class=\"private-host\">\n <slot></slot>\n </div>\n `;\n }\n static get styles() {\n return [baseStyles, styles];\n }\n connectedCallback() {\n super.connectedCallback();\n assignSlotNames([this, 'message']);\n }\n}\n__decorate([\n property({ type: String })\n], CdsControlMessage.prototype, \"status\", void 0);\n__decorate([\n property({ type: String })\n], CdsControlMessage.prototype, \"error\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsControlMessage.prototype, \"disabled\", void 0);\n"],"names":["CdsControlMessage","LitElement","constructor","super","this","status","disabled","render","html","styles","baseStyles","connectedCallback","assignSlotNames","__decorate","property","type","String","prototype","state","Boolean","reflect"],"mappings":"6NAgCO,MAAMA,UAA0BC,EACnCC,cACIC,oBAKAC,KAAKC,OAAS,UACdD,KAAKE,UAAW,EAEpBC,SACI,OAAOC,CAAK,gDAMLC,oBACP,MAAO,CAACC,EAAYD,GAExBE,oBACIR,MAAMQ,oBACNC,EAAgB,CAACR,KAAM,aAG/BS,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClBhB,EAAkBiB,UAAW,cAAU,GAC1CJ,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClBhB,EAAkBiB,UAAW,aAAS,GACzCJ,EAAW,CACPK,EAAM,CAAEH,KAAMI,QAASC,SAAS,KACjCpB,EAAkBiB,UAAW,gBAAY"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-message.element.scss.js","sources":[],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"control-message.element.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { LitElement } from 'lit';
|
|
1
|
+
import { LitElement, PropertyValues } from 'lit';
|
|
2
2
|
import { FormLayout, ControlWidth } from '../utils/interfaces.js';
|
|
3
3
|
/**
|
|
4
4
|
* Form
|
|
@@ -54,8 +54,8 @@ export declare class CdsFormGroup extends LitElement {
|
|
|
54
54
|
static get styles(): import("lit").CSSResultGroup[];
|
|
55
55
|
render(): import("lit-html").TemplateResult<1>;
|
|
56
56
|
private overflowElement;
|
|
57
|
-
firstUpdated(props:
|
|
58
|
-
updated(props:
|
|
57
|
+
firstUpdated(props: PropertyValues<this>): void;
|
|
58
|
+
updated(props: PropertyValues<this>): void;
|
|
59
59
|
disconnectedCallback(): void;
|
|
60
60
|
private setControlLabelWidths;
|
|
61
61
|
private syncLayouts;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__decorate as t}from"tslib";import{LitElement as o,html as s}from"lit";import{baseStyles as e,elementVisible as r,syncDefinedProps as i,childrenUpdateComplete as l,elementResize as a,pxToRem as n,property as p,querySlotAll as d}from"@cds/core/internal";import{defaultFormLayout as h,getLargestPrimaryLabelWidth as c,isVerticalLayout as u}from"../utils/utils.js";import y from"./form-group.element.scss.js";class m extends o{constructor(){super(...arguments);this.layout=h,this.responsive=!0,this.validate=!1,this.observers=[]}get controlsAndGroups(){return[...Array.from(this.groups),...Array.from(this.controls)]}static get styles(){return[e,y]}render(){return s`<div class="private-host" cds-layout="vertical gap:${"compact"===this.layout?"sm":"lg"}"><slot></slot></div>`}firstUpdated(t){super.firstUpdated(t),this.syncLayouts(),this.setControlLabelWidths(),this.observers.push(r(this,(()=>this.setControlLabelWidths())))}updated(t){super.updated(t),i(t,this,this.controlsAndGroups)}disconnectedCallback(){super.disconnectedCallback(),this.observers.forEach((t=>t
|
|
1
|
+
import{__decorate as t}from"tslib";import{LitElement as o,html as s}from"lit";import{baseStyles as e,elementVisible as r,syncDefinedProps as i,childrenUpdateComplete as l,elementResize as a,pxToRem as n,property as p,querySlotAll as d}from"@cds/core/internal";import{defaultFormLayout as h,getLargestPrimaryLabelWidth as c,isVerticalLayout as u}from"../utils/utils.js";import y from"./form-group.element.scss.js";class m extends o{constructor(){super(...arguments);this.layout=h,this.responsive=!0,this.validate=!1,this.observers=[]}get controlsAndGroups(){return[...Array.from(this.groups),...Array.from(this.controls)]}static get styles(){return[e,y]}render(){return s`<div class="private-host" cds-layout="vertical gap:${"compact"===this.layout?"sm":"lg"}"><slot></slot></div>`}firstUpdated(t){super.firstUpdated(t),this.syncLayouts(),this.setControlLabelWidths(),this.observers.push(r(this,(()=>this.setControlLabelWidths())))}updated(t){super.updated(t),i(t,this,this.controlsAndGroups)}disconnectedCallback(){super.disconnectedCallback(),this.observers.forEach((t=>t?.disconnect()))}async setControlLabelWidths(){"horizontal"!==this.layout&&"horizontal-inline"!==this.layout&&"compact"!==this.layout||(await l(this.controlsAndGroups),this.style.setProperty("--internal-label-min-width",await c(this.controlsAndGroups)),a(this,(()=>this.style.setProperty("--internal-label-max-width",n(this.getBoundingClientRect().width)))))}syncLayouts(){this.addEventListener("layoutChange",(t=>{t.preventDefault(),!this.overflowElement&&u(t.detail)&&this.collapseForm(t.target),t.target!==this.overflowElement||u(t.detail)||this.expandForm(t.detail)}))}collapseForm(t){this.overflowElement=t,this.responsive=!1,this.layout="vertical",t.updateComplete.then((()=>t.responsive=!0))}expandForm(t){this.responsive=!0,this.overflowElement=null,this.layout=t}}t([p({type:String})],m.prototype,"layout",void 0),t([p({type:String})],m.prototype,"controlWidth",void 0),t([p({type:Boolean})],m.prototype,"responsive",void 0),t([p({type:Boolean})],m.prototype,"validate",void 0),t([d("[cds-control]")],m.prototype,"controls",void 0),t([d("[cds-control-group]")],m.prototype,"groups",void 0);export{m as CdsFormGroup};
|
|
2
2
|
//# sourceMappingURL=form-group.element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-group.element.js","sources":["../../../../src/forms/form-group/form-group.element.ts"],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"form-group.element.js","sources":["../../../../src/forms/form-group/form-group.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { LitElement, html } from 'lit';\nimport { baseStyles, querySlotAll, property, childrenUpdateComplete, elementResize, pxToRem, syncDefinedProps, elementVisible, } from '@cds/core/internal';\nimport { getLargestPrimaryLabelWidth, isVerticalLayout, defaultFormLayout } from '../utils/utils.js';\nimport styles from './form-group.element.scss';\n/**\n * Form\n *\n * ```typescript\n * import '@cds/core/forms/register.js';\n * ```\n *\n * ```html\n * <cds-form-group layout=\"horizontal\">\n * <cds-input>\n * <label>Test</label>\n * <input type=\"text\" />\n * </cds-input>\n *\n * <cds-input>\n * <label>Test</label>\n * <input type=\"text\" />\n * </cds-input>\n * </cds-form-group>\n * ```\n *\n * @element cds-form-group\n * @slot - For projecting input controls\n * @cssprop --label-width\n */\nexport class CdsFormGroup extends LitElement {\n constructor() {\n super(...arguments);\n /**\n * Set to adjust the default control layout for all controls within form group.\n * When `responsive` is true this will be the largest size to scale to.\n * @type {horizontal | horizontal-inline | vertical | vertical-inline | compact}\n */\n this.layout = defaultFormLayout;\n /**\n * By default forms will collapse to layout that prevents overflow.\n * If disabled control layout may break or overflow in unexpected ways.\n */\n this.responsive = true;\n /**\n * Set the validate attribute to sync with HTML5 native validation\n * https://developer.mozilla.org/en-US/docs/Learn/Forms/Form_validation\n */\n this.validate = false;\n this.observers = [];\n }\n get controlsAndGroups() {\n return [...Array.from(this.groups), ...Array.from(this.controls)];\n }\n static get styles() {\n return [baseStyles, styles];\n }\n render() {\n return html `\n <div class=\"private-host\" cds-layout=\"vertical gap:${this.layout === 'compact' ? 'sm' : 'lg'}\">\n <slot></slot>\n </div>\n `;\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.syncLayouts();\n this.setControlLabelWidths();\n this.observers.push(elementVisible(this, () => this.setControlLabelWidths()));\n }\n updated(props) {\n super.updated(props);\n syncDefinedProps(props, this, this.controlsAndGroups);\n }\n disconnectedCallback() {\n super.disconnectedCallback();\n this.observers.forEach(o => o?.disconnect());\n }\n async setControlLabelWidths() {\n if (this.layout === 'horizontal' || this.layout === 'horizontal-inline' || this.layout === 'compact') {\n await childrenUpdateComplete(this.controlsAndGroups);\n this.style.setProperty('--internal-label-min-width', await getLargestPrimaryLabelWidth(this.controlsAndGroups));\n elementResize(this, () => this.style.setProperty('--internal-label-max-width', pxToRem(this.getBoundingClientRect().width)));\n }\n }\n syncLayouts() {\n this.addEventListener('layoutChange', (e) => {\n e.preventDefault();\n if (!this.overflowElement && isVerticalLayout(e.detail)) {\n this.collapseForm(e.target);\n }\n if (e.target === this.overflowElement && !isVerticalLayout(e.detail)) {\n this.expandForm(e.detail);\n }\n });\n }\n collapseForm(control) {\n this.overflowElement = control;\n this.responsive = false;\n this.layout = 'vertical';\n control.updateComplete.then(() => (control.responsive = true));\n }\n expandForm(layout) {\n this.responsive = true;\n this.overflowElement = null;\n this.layout = layout;\n }\n}\n__decorate([\n property({ type: String })\n], CdsFormGroup.prototype, \"layout\", void 0);\n__decorate([\n property({ type: String })\n], CdsFormGroup.prototype, \"controlWidth\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsFormGroup.prototype, \"responsive\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsFormGroup.prototype, \"validate\", void 0);\n__decorate([\n querySlotAll('[cds-control]')\n], CdsFormGroup.prototype, \"controls\", void 0);\n__decorate([\n querySlotAll('[cds-control-group]')\n], CdsFormGroup.prototype, \"groups\", void 0);\n"],"names":["CdsFormGroup","LitElement","constructor","super","this","layout","defaultFormLayout","responsive","validate","observers","controlsAndGroups","Array","from","groups","controls","styles","baseStyles","render","html","firstUpdated","props","syncLayouts","setControlLabelWidths","push","elementVisible","updated","syncDefinedProps","disconnectedCallback","forEach","o","disconnect","async","childrenUpdateComplete","style","setProperty","getLargestPrimaryLabelWidth","elementResize","pxToRem","getBoundingClientRect","width","addEventListener","e","preventDefault","overflowElement","isVerticalLayout","detail","collapseForm","target","expandForm","control","updateComplete","then","__decorate","property","type","String","prototype","Boolean","querySlotAll"],"mappings":"6ZAmCO,MAAMA,UAAqBC,EAC9BC,cACIC,oBAMAC,KAAKC,OAASC,EAKdF,KAAKG,YAAa,EAKlBH,KAAKI,UAAW,EAChBJ,KAAKK,UAAY,GAEjBC,wBACA,MAAO,IAAIC,MAAMC,KAAKR,KAAKS,WAAYF,MAAMC,KAAKR,KAAKU,WAEhDC,oBACP,MAAO,CAACC,EAAYD,GAExBE,SACI,OAAOC,CAAK,sDACuD,YAAhBd,KAAKC,OAAuB,KAAO,4BAK1Fc,aAAaC,GACTjB,MAAMgB,aAAaC,GACnBhB,KAAKiB,cACLjB,KAAKkB,wBACLlB,KAAKK,UAAUc,KAAKC,EAAepB,MAAM,IAAMA,KAAKkB,2BAExDG,QAAQL,GACJjB,MAAMsB,QAAQL,GACdM,EAAiBN,EAAOhB,KAAMA,KAAKM,mBAEvCiB,uBACIxB,MAAMwB,uBACNvB,KAAKK,UAAUmB,SAAQC,GAAKA,GAAGC,eAEnCC,8BACwB,eAAhB3B,KAAKC,QAA2C,sBAAhBD,KAAKC,QAAkD,YAAhBD,KAAKC,eACtE2B,EAAuB5B,KAAKM,mBAClCN,KAAK6B,MAAMC,YAAY,mCAAoCC,EAA4B/B,KAAKM,oBAC5F0B,EAAchC,MAAM,IAAMA,KAAK6B,MAAMC,YAAY,6BAA8BG,EAAQjC,KAAKkC,wBAAwBC,WAG5HlB,cACIjB,KAAKoC,iBAAiB,gBAAiBC,IACnCA,EAAEC,kBACGtC,KAAKuC,iBAAmBC,EAAiBH,EAAEI,SAC5CzC,KAAK0C,aAAaL,EAAEM,QAEpBN,EAAEM,SAAW3C,KAAKuC,iBAAoBC,EAAiBH,EAAEI,SACzDzC,KAAK4C,WAAWP,EAAEI,WAI9BC,aAAaG,GACT7C,KAAKuC,gBAAkBM,EACvB7C,KAAKG,YAAa,EAClBH,KAAKC,OAAS,WACd4C,EAAQC,eAAeC,MAAK,IAAOF,EAAQ1C,YAAa,IAE5DyC,WAAW3C,GACPD,KAAKG,YAAa,EAClBH,KAAKuC,gBAAkB,KACvBvC,KAAKC,OAASA,GAGtB+C,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClBvD,EAAawD,UAAW,cAAU,GACrCJ,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClBvD,EAAawD,UAAW,oBAAgB,GAC3CJ,EAAW,CACPC,EAAS,CAAEC,KAAMG,WAClBzD,EAAawD,UAAW,kBAAc,GACzCJ,EAAW,CACPC,EAAS,CAAEC,KAAMG,WAClBzD,EAAawD,UAAW,gBAAY,GACvCJ,EAAW,CACPM,EAAa,kBACd1D,EAAawD,UAAW,gBAAY,GACvCJ,EAAW,CACPM,EAAa,wBACd1D,EAAawD,UAAW,cAAU"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-group.element.scss.js","sources":[],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"form-group.element.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/forms/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/forms/register.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.js","sources":["../../../src/forms/register.ts"],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"register.js","sources":["../../../src/forms/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport '@cds/core/icon/register.js';\nimport '@cds/core/button-action/register.js';\nimport { ClarityIcons } from '@cds/core/icon/icon.service.js';\nimport { exclamationCircleIcon } from '@cds/core/icon/shapes/exclamation-circle.js';\nimport { checkCircleIcon } from '@cds/core/icon/shapes/check-circle.js';\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsControl } from './control/control.element.js';\nimport { CdsControlAction } from './control-action/control-action.element.js';\nimport { CdsInternalControlGroup } from './control-group/control-group.element.js';\nimport { CdsInternalControlInline } from './control-inline/control-inline.element.js';\nimport { CdsInternalControlLabel } from './control-label/control-label.element.js';\nimport { CdsControlMessage } from './control-message/control-message.element.js';\nimport { CdsFormGroup } from './form-group/form-group.element.js';\nregisterElementSafely('cds-control', CdsControl);\nregisterElementSafely('cds-control-action', CdsControlAction);\nregisterElementSafely('cds-internal-control-group', CdsInternalControlGroup);\nregisterElementSafely('cds-internal-control-inline', CdsInternalControlInline);\nregisterElementSafely('cds-internal-control-label', CdsInternalControlLabel);\nregisterElementSafely('cds-control-message', CdsControlMessage);\nregisterElementSafely('cds-form-group', CdsFormGroup);\nClarityIcons.addIcons(exclamationCircleIcon, checkCircleIcon);\n"],"names":["registerElementSafely","CdsControl","CdsControlAction","CdsInternalControlGroup","CdsInternalControlInline","CdsInternalControlLabel","CdsControlMessage","CdsFormGroup","ClarityIcons","addIcons","exclamationCircleIcon","checkCircleIcon"],"mappings":"23BAkBAA,EAAsB,cAAeC,GACrCD,EAAsB,qBAAsBE,GAC5CF,EAAsB,6BAA8BG,GACpDH,EAAsB,8BAA+BI,GACrDJ,EAAsB,6BAA8BK,GACpDL,EAAsB,sBAAuBM,GAC7CN,EAAsB,iBAAkBO,GACxCC,EAAaC,SAASC,EAAuBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sources":[],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"interfaces.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/forms/utils/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../../../src/forms/utils/utils.ts"],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../src/forms/utils/utils.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { html } from 'lit';\nimport { createId, pxToRem } from '@cds/core/internal';\nexport const formLayouts = ['vertical', 'vertical-inline', 'horizontal', 'horizontal-inline', 'compact'];\nexport const defaultFormLayout = 'horizontal';\nexport const defaultControlWidth = 'stretch';\nexport function associateInputAndLabel(input, label) {\n if (input && label) {\n assignInputId(input);\n label.setAttribute('for', input.id);\n }\n}\nexport function associateInputToDatalist(input, datalist) {\n if (datalist) {\n assignInputId(input);\n datalist.id = `${input.id}-datalist`;\n input.setAttribute('list', datalist.id);\n }\n}\nexport function assignInputId(input) {\n if (!input.id.length) {\n input.id = createId();\n }\n}\nexport const layoutGroupToControlMapper = {\n 'horizontal-inline': 'horizontal',\n 'vertical-inline': 'vertical',\n horizontal: 'horizontal',\n vertical: 'vertical',\n compact: 'compact',\n};\nexport function getStatusIcon(status) {\n return html `${status !== 'neutral'\n ? html ` <cds-button-action readonly class=\"status\" cds-layout=\"align:shrink\">\n <cds-icon\n status=\"${status === 'error' ? 'danger' : 'success'}\"\n shape=\"${status === 'error' ? 'exclamation-circle' : 'check-circle'}\"\n size=\"16\"\n inner-offset=${4}\n ></cds-icon>\n </cds-button-action>`\n : ''} `;\n}\nexport async function getLargestPrimaryLabelWidth(controls) {\n return Promise.all(controls.map(c => c.updateComplete)).then(() => {\n const primaryLabels = controls.filter(c => c.controlLabel?.action === 'primary');\n return pxToRem(Math.max(...primaryLabels.map(c => c.controlLabel.getBoundingClientRect().width)));\n });\n}\nexport function controlIsWrapped(input, label, layout) {\n return (layout !== 'vertical' &&\n layout !== 'vertical-inline' &&\n input.getBoundingClientRect().top > label?.getBoundingClientRect().top + 12 // 12px buffer for rounding and inputs that are thin like the range input\n );\n}\nexport function inlineControlListIsWrapped(inlineControls, layout) {\n const first = inlineControls[0];\n const last = inlineControls[inlineControls.length - 1];\n const isInlineLayout = layout === 'vertical-inline' || layout === 'horizontal-inline';\n return isInlineLayout && last.getBoundingClientRect().top > first.getBoundingClientRect().top;\n}\nexport function isVerticalLayout(layout) {\n return layout === 'vertical' || layout === 'vertical-inline';\n}\n/**\n * Returns updated message status unless hidden then returns 'neutral'\n */\nexport async function getCurrentMessageStatus(messages) {\n const message = messages.find(m => m.status !== 'neutral');\n await message?.updateComplete;\n return message && !message.hidden ? message.status : 'neutral';\n}\n"],"names":["formLayouts","defaultFormLayout","defaultControlWidth","associateInputAndLabel","input","label","assignInputId","setAttribute","id","associateInputToDatalist","datalist","length","createId","layoutGroupToControlMapper","horizontal","vertical","compact","getStatusIcon","status","html","async","getLargestPrimaryLabelWidth","controls","Promise","all","map","c","updateComplete","then","primaryLabels","filter","controlLabel","action","pxToRem","Math","max","getBoundingClientRect","width","controlIsWrapped","layout","top","inlineControlListIsWrapped","inlineControls","first","last","isVerticalLayout","getCurrentMessageStatus","messages","message","find","m","hidden"],"mappings":"sFAOY,MAACA,EAAc,CAAC,WAAY,kBAAmB,aAAc,oBAAqB,WACjFC,EAAoB,aACpBC,EAAsB,UAC5B,SAASC,EAAuBC,EAAOC,GACtCD,GAASC,IACTC,EAAcF,GACdC,EAAME,aAAa,MAAOH,EAAMI,KAGjC,SAASC,EAAyBL,EAAOM,GACxCA,IACAJ,EAAcF,GACdM,EAASF,GAAQJ,EAAMI,GAAT,YACdJ,EAAMG,aAAa,OAAQG,EAASF,KAGrC,SAASF,EAAcF,GACrBA,EAAMI,GAAGG,SACVP,EAAMI,GAAKI,KAGP,MAACC,EAA6B,CACtC,oBAAqB,aACrB,kBAAmB,WACnBC,WAAY,aACZC,SAAU,WACVC,QAAS,WAEN,SAASC,EAAcC,GAC1B,OAAOC,CAAK,GAAc,YAAXD,EACTC,CAAK,qGAEgB,UAAXD,EAAqB,SAAW,qBACtB,UAAXA,EAAqB,qBAAuB,2CAEtC,qCAGf,KAEHE,eAAeC,EAA4BC,GAC9C,OAAOC,QAAQC,IAAIF,EAASG,KAAIC,GAAKA,EAAEC,kBAAiBC,MAAK,KACzD,MAAMC,EAAgBP,EAASQ,QAAOJ,GAAgC,YAA3BA,EAAEK,cAAcC,SAC3D,OAAOC,EAAQC,KAAKC,OAAON,EAAcJ,KAAIC,GAAKA,EAAEK,aAAaK,wBAAwBC,aAG1F,SAASC,EAAiBlC,EAAOC,EAAOkC,GAC3C,MAAmB,aAAXA,GACO,oBAAXA,GACAnC,EAAMgC,wBAAwBI,IAAMnC,GAAO+B,wBAAwBI,IAAM,GAG1E,SAASC,EAA2BC,EAAgBH,GACvD,MAAMI,EAAQD,EAAe,GACvBE,EAAOF,EAAeA,EAAe/B,OAAS,GAEpD,OADkC,oBAAX4B,GAA2C,sBAAXA,IAC9BK,EAAKR,wBAAwBI,IAAMG,EAAMP,wBAAwBI,IAEvF,SAASK,EAAiBN,GAC7B,MAAkB,aAAXA,GAAoC,oBAAXA,EAK7BnB,eAAe0B,EAAwBC,GAC1C,MAAMC,EAAUD,EAASE,MAAKC,GAAkB,YAAbA,EAAEhC,SAErC,aADM8B,GAASrB,gBACRqB,IAAYA,EAAQG,OAASH,EAAQ9B,OAAS"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sources":["../../../../src/forms/utils/validate.ts"],"sourcesContent":
|
|
1
|
+
{"version":3,"file":"validate.js","sources":["../../../../src/forms/utils/validate.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nexport function syncHTML5Validation(control, messages) {\n messages\n .filter(m => m.hasAttribute('error'))\n .forEach(m => {\n m.setAttribute('hidden', '');\n m.status = 'error';\n });\n control.inputControl.addEventListener('blur', () => control.inputControl.checkValidity());\n control.inputControl.addEventListener('invalid', () => {\n messages.forEach(message => message.setAttribute('hidden', ''));\n messages.find(message => control.inputControl.validity[message.error])?.removeAttribute('hidden');\n control.status = 'error';\n });\n control.inputControl.addEventListener('input', () => {\n control.status = control.inputControl.validity.valid ? 'neutral' : control.status;\n messages\n .filter(m => control.inputControl.validity.valid && m.error && !control.inputControl.validity[m.error])\n .forEach(message => message.setAttribute('hidden', ''));\n });\n}\n"],"names":["syncHTML5Validation","control","messages","filter","m","hasAttribute","forEach","setAttribute","status","inputControl","addEventListener","checkValidity","message","find","validity","error","removeAttribute","valid"],"mappings":"AAKO,SAASA,EAAoBC,EAASC,GACzCA,EACKC,QAAOC,GAAKA,EAAEC,aAAa,WAC3BC,SAAQF,IACTA,EAAEG,aAAa,SAAU,IACzBH,EAAEI,OAAS,WAEfP,EAAQQ,aAAaC,iBAAiB,QAAQ,IAAMT,EAAQQ,aAAaE,kBACzEV,EAAQQ,aAAaC,iBAAiB,WAAW,KAC7CR,EAASI,SAAQM,GAAWA,EAAQL,aAAa,SAAU,MAC3DL,EAASW,MAAKD,GAAWX,EAAQQ,aAAaK,SAASF,EAAQG,UAASC,gBAAgB,UACxFf,EAAQO,OAAS,WAErBP,EAAQQ,aAAaC,iBAAiB,SAAS,KAC3CT,EAAQO,OAASP,EAAQQ,aAAaK,SAASG,MAAQ,UAAYhB,EAAQO,OAC3EN,EACKC,QAAOC,GAAKH,EAAQQ,aAAaK,SAASG,OAASb,EAAEW,QAAUd,EAAQQ,aAAaK,SAASV,EAAEW,SAC/FT,SAAQM,GAAWA,EAAQL,aAAa,SAAU"}
|