ngwr 14.7.0 → 14.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +66 -332
- package/alert/styles/_index.scss +10 -0
- package/avatar/styles/_index.scss +18 -7
- package/badge/styles/_index.scss +7 -0
- package/badge/styles/_tag.scss +7 -1
- package/bar-chart/styles/_index.scss +1 -0
- package/button/styles/_index.scss +6 -0
- package/calendar-heatmap/styles/_index.scss +1 -0
- package/cascader/styles/_rules.scss +87 -15
- package/checkbox/styles/_index.scss +4 -0
- package/command-palette/styles/_index.scss +1 -1
- package/date-picker/styles/_index.scss +30 -0
- package/density/styles/_index.scss +4 -2
- package/divider/styles/_index.scss +2 -0
- package/donut-chart/styles/_index.scss +10 -0
- package/dropdown/styles/_index.scss +67 -5
- package/editor/styles/_index.scss +441 -0
- package/event-calendar/styles/_index.scss +209 -35
- package/fesm2022/ngwr-action-sheet-testing.mjs.map +1 -1
- package/fesm2022/ngwr-action-sheet.mjs +3 -3
- package/fesm2022/ngwr-action-sheet.mjs.map +1 -1
- package/fesm2022/ngwr-affix.mjs +3 -3
- package/fesm2022/ngwr-affix.mjs.map +1 -1
- package/fesm2022/ngwr-alert.mjs +3 -3
- package/fesm2022/ngwr-alert.mjs.map +1 -1
- package/fesm2022/ngwr-anchor.mjs +3 -3
- package/fesm2022/ngwr-anchor.mjs.map +1 -1
- package/fesm2022/ngwr-aurora.mjs +3 -3
- package/fesm2022/ngwr-aurora.mjs.map +1 -1
- package/fesm2022/ngwr-avatar.mjs +3 -3
- package/fesm2022/ngwr-avatar.mjs.map +1 -1
- package/fesm2022/ngwr-back-top.mjs +3 -3
- package/fesm2022/ngwr-back-top.mjs.map +1 -1
- package/fesm2022/ngwr-badge.mjs +28 -13
- package/fesm2022/ngwr-badge.mjs.map +1 -1
- package/fesm2022/ngwr-bar-chart-testing.mjs.map +1 -1
- package/fesm2022/ngwr-bar-chart.mjs +31 -6
- package/fesm2022/ngwr-bar-chart.mjs.map +1 -1
- package/fesm2022/ngwr-blur-text-testing.mjs.map +1 -1
- package/fesm2022/ngwr-blur-text.mjs +3 -3
- package/fesm2022/ngwr-blur-text.mjs.map +1 -1
- package/fesm2022/ngwr-border-glow-testing.mjs.map +1 -1
- package/fesm2022/ngwr-border-glow.mjs +3 -3
- package/fesm2022/ngwr-border-glow.mjs.map +1 -1
- package/fesm2022/ngwr-breadcrumbs.mjs +6 -6
- package/fesm2022/ngwr-breadcrumbs.mjs.map +1 -1
- package/fesm2022/ngwr-burger.mjs +3 -3
- package/fesm2022/ngwr-burger.mjs.map +1 -1
- package/fesm2022/ngwr-button-testing.mjs.map +1 -1
- package/fesm2022/ngwr-button.mjs +6 -6
- package/fesm2022/ngwr-button.mjs.map +1 -1
- package/fesm2022/ngwr-calendar-heatmap-testing.mjs.map +1 -1
- package/fesm2022/ngwr-calendar-heatmap.mjs +61 -6
- package/fesm2022/ngwr-calendar-heatmap.mjs.map +1 -1
- package/fesm2022/ngwr-calendar-testing.mjs.map +1 -1
- package/fesm2022/ngwr-calendar.mjs +3 -3
- package/fesm2022/ngwr-calendar.mjs.map +1 -1
- package/fesm2022/ngwr-card.mjs +9 -9
- package/fesm2022/ngwr-card.mjs.map +1 -1
- package/fesm2022/ngwr-carousel-testing.mjs.map +1 -1
- package/fesm2022/ngwr-carousel.mjs +6 -6
- package/fesm2022/ngwr-carousel.mjs.map +1 -1
- package/fesm2022/ngwr-cascader-testing.mjs.map +1 -1
- package/fesm2022/ngwr-cascader.mjs +4 -4
- package/fesm2022/ngwr-cascader.mjs.map +1 -1
- package/fesm2022/ngwr-checkbox-testing.mjs.map +1 -1
- package/fesm2022/ngwr-checkbox.mjs +18 -8
- package/fesm2022/ngwr-checkbox.mjs.map +1 -1
- package/fesm2022/ngwr-circular-text-testing.mjs.map +1 -1
- package/fesm2022/ngwr-circular-text.mjs +3 -3
- package/fesm2022/ngwr-circular-text.mjs.map +1 -1
- package/fesm2022/ngwr-click-spark.mjs +3 -3
- package/fesm2022/ngwr-click-spark.mjs.map +1 -1
- package/fesm2022/ngwr-clipboard.mjs +3 -3
- package/fesm2022/ngwr-clipboard.mjs.map +1 -1
- package/fesm2022/ngwr-collapse-testing.mjs.map +1 -1
- package/fesm2022/ngwr-collapse.mjs +9 -9
- package/fesm2022/ngwr-collapse.mjs.map +1 -1
- package/fesm2022/ngwr-color-picker-testing.mjs.map +1 -1
- package/fesm2022/ngwr-color-picker.mjs +6 -6
- package/fesm2022/ngwr-color-picker.mjs.map +1 -1
- package/fesm2022/ngwr-command-palette-testing.mjs.map +1 -1
- package/fesm2022/ngwr-command-palette.mjs +3 -3
- package/fesm2022/ngwr-command-palette.mjs.map +1 -1
- package/fesm2022/ngwr-compare.mjs +3 -3
- package/fesm2022/ngwr-compare.mjs.map +1 -1
- package/fesm2022/ngwr-confetti.mjs +3 -3
- package/fesm2022/ngwr-confetti.mjs.map +1 -1
- package/fesm2022/ngwr-config.mjs.map +1 -1
- package/fesm2022/ngwr-context-menu-testing.mjs.map +1 -1
- package/fesm2022/ngwr-context-menu.mjs +12 -12
- package/fesm2022/ngwr-context-menu.mjs.map +1 -1
- package/fesm2022/ngwr-cookie.mjs +3 -3
- package/fesm2022/ngwr-cookie.mjs.map +1 -1
- package/fesm2022/ngwr-counter.mjs +6 -6
- package/fesm2022/ngwr-counter.mjs.map +1 -1
- package/fesm2022/ngwr-date-adapters-fns.mjs +3 -3
- package/fesm2022/ngwr-date-adapters-fns.mjs.map +1 -1
- package/fesm2022/ngwr-date-adapters-luxon.mjs +3 -3
- package/fesm2022/ngwr-date-adapters-luxon.mjs.map +1 -1
- package/fesm2022/ngwr-date-picker-testing.mjs.map +1 -1
- package/fesm2022/ngwr-date-picker.mjs +721 -62
- package/fesm2022/ngwr-date-picker.mjs.map +1 -1
- package/fesm2022/ngwr-date.mjs +3 -3
- package/fesm2022/ngwr-date.mjs.map +1 -1
- package/fesm2022/ngwr-decrypt-text-testing.mjs.map +1 -1
- package/fesm2022/ngwr-decrypt-text.mjs +3 -3
- package/fesm2022/ngwr-decrypt-text.mjs.map +1 -1
- package/fesm2022/ngwr-density.mjs +6 -6
- package/fesm2022/ngwr-density.mjs.map +1 -1
- package/fesm2022/ngwr-descriptions.mjs +6 -6
- package/fesm2022/ngwr-descriptions.mjs.map +1 -1
- package/fesm2022/ngwr-dialog-testing.mjs.map +1 -1
- package/fesm2022/ngwr-dialog.mjs +15 -15
- package/fesm2022/ngwr-dialog.mjs.map +1 -1
- package/fesm2022/ngwr-directives.mjs +12 -12
- package/fesm2022/ngwr-directives.mjs.map +1 -1
- package/fesm2022/ngwr-divider.mjs +3 -3
- package/fesm2022/ngwr-divider.mjs.map +1 -1
- package/fesm2022/ngwr-donut-chart-testing.mjs.map +1 -1
- package/fesm2022/ngwr-donut-chart.mjs +48 -6
- package/fesm2022/ngwr-donut-chart.mjs.map +1 -1
- package/fesm2022/ngwr-drag-drop.mjs +6 -6
- package/fesm2022/ngwr-drag-drop.mjs.map +1 -1
- package/fesm2022/ngwr-drawer-testing.mjs.map +1 -1
- package/fesm2022/ngwr-drawer.mjs +18 -18
- package/fesm2022/ngwr-drawer.mjs.map +1 -1
- package/fesm2022/ngwr-dropdown-testing.mjs.map +1 -1
- package/fesm2022/ngwr-dropdown.mjs +174 -25
- package/fesm2022/ngwr-dropdown.mjs.map +1 -1
- package/fesm2022/ngwr-editor-testing.mjs +568 -0
- package/fesm2022/ngwr-editor-testing.mjs.map +1 -0
- package/fesm2022/ngwr-editor.mjs +2601 -0
- package/fesm2022/ngwr-editor.mjs.map +1 -0
- package/fesm2022/ngwr-empty.mjs +3 -3
- package/fesm2022/ngwr-empty.mjs.map +1 -1
- package/fesm2022/ngwr-event-calendar-testing.mjs.map +1 -1
- package/fesm2022/ngwr-event-calendar.mjs +14 -7
- package/fesm2022/ngwr-event-calendar.mjs.map +1 -1
- package/fesm2022/ngwr-falling-text-testing.mjs.map +1 -1
- package/fesm2022/ngwr-falling-text.mjs +3 -3
- package/fesm2022/ngwr-falling-text.mjs.map +1 -1
- package/fesm2022/ngwr-file-upload-testing.mjs.map +1 -1
- package/fesm2022/ngwr-file-upload.mjs +3 -3
- package/fesm2022/ngwr-file-upload.mjs.map +1 -1
- package/fesm2022/ngwr-form-testing.mjs.map +1 -1
- package/fesm2022/ngwr-form.mjs +61 -10
- package/fesm2022/ngwr-form.mjs.map +1 -1
- package/fesm2022/ngwr-fuzzy-text-testing.mjs.map +1 -1
- package/fesm2022/ngwr-fuzzy-text.mjs +3 -3
- package/fesm2022/ngwr-fuzzy-text.mjs.map +1 -1
- package/fesm2022/ngwr-gauge-testing.mjs.map +1 -1
- package/fesm2022/ngwr-gauge.mjs +35 -6
- package/fesm2022/ngwr-gauge.mjs.map +1 -1
- package/fesm2022/ngwr-glitch-text-testing.mjs.map +1 -1
- package/fesm2022/ngwr-glitch-text.mjs +3 -3
- package/fesm2022/ngwr-glitch-text.mjs.map +1 -1
- package/fesm2022/ngwr-gradient-text-testing.mjs.map +1 -1
- package/fesm2022/ngwr-gradient-text.mjs +3 -3
- package/fesm2022/ngwr-gradient-text.mjs.map +1 -1
- package/fesm2022/ngwr-graph-testing.mjs.map +1 -1
- package/fesm2022/ngwr-graph.mjs +6 -6
- package/fesm2022/ngwr-graph.mjs.map +1 -1
- package/fesm2022/ngwr-hotkey.mjs +6 -6
- package/fesm2022/ngwr-hotkey.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-ar.mjs +31 -0
- package/fesm2022/ngwr-i18n-ar.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-cs.mjs +31 -0
- package/fesm2022/ngwr-i18n-cs.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-de.mjs +31 -0
- package/fesm2022/ngwr-i18n-de.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-en.mjs +39 -0
- package/fesm2022/ngwr-i18n-en.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-es.mjs +31 -0
- package/fesm2022/ngwr-i18n-es.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-fr.mjs +31 -0
- package/fesm2022/ngwr-i18n-fr.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-he.mjs +31 -0
- package/fesm2022/ngwr-i18n-he.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-hi.mjs +31 -0
- package/fesm2022/ngwr-i18n-hi.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-id.mjs +31 -0
- package/fesm2022/ngwr-i18n-id.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-it.mjs +31 -0
- package/fesm2022/ngwr-i18n-it.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-ja.mjs +31 -0
- package/fesm2022/ngwr-i18n-ja.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-ko.mjs +31 -0
- package/fesm2022/ngwr-i18n-ko.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-nl.mjs +31 -0
- package/fesm2022/ngwr-i18n-nl.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-pl.mjs +31 -0
- package/fesm2022/ngwr-i18n-pl.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-pt.mjs +31 -0
- package/fesm2022/ngwr-i18n-pt.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-ru.mjs +31 -0
- package/fesm2022/ngwr-i18n-ru.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-sv.mjs +31 -0
- package/fesm2022/ngwr-i18n-sv.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-tr.mjs +31 -0
- package/fesm2022/ngwr-i18n-tr.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-uk.mjs +31 -0
- package/fesm2022/ngwr-i18n-uk.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-vi.mjs +31 -0
- package/fesm2022/ngwr-i18n-vi.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-zh-TW.mjs +31 -0
- package/fesm2022/ngwr-i18n-zh-TW.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-zh.mjs +31 -0
- package/fesm2022/ngwr-i18n-zh.mjs.map +1 -1
- package/fesm2022/ngwr-i18n.mjs +9 -9
- package/fesm2022/ngwr-i18n.mjs.map +1 -1
- package/fesm2022/ngwr-icon-adapters-feather.mjs.map +1 -1
- package/fesm2022/ngwr-icon-adapters-lucide.mjs.map +1 -1
- package/fesm2022/ngwr-icon.mjs +6 -6
- package/fesm2022/ngwr-icon.mjs.map +1 -1
- package/fesm2022/ngwr-image-cropper-testing.mjs.map +1 -1
- package/fesm2022/ngwr-image-cropper.mjs +3 -3
- package/fesm2022/ngwr-image-cropper.mjs.map +1 -1
- package/fesm2022/ngwr-input-number-testing.mjs.map +1 -1
- package/fesm2022/ngwr-input-number.mjs +15 -3
- package/fesm2022/ngwr-input-number.mjs.map +1 -1
- package/fesm2022/ngwr-input-otp-testing.mjs.map +1 -1
- package/fesm2022/ngwr-input-otp.mjs +3 -3
- package/fesm2022/ngwr-input-otp.mjs.map +1 -1
- package/fesm2022/ngwr-input-testing.mjs.map +1 -1
- package/fesm2022/ngwr-input.mjs +15 -15
- package/fesm2022/ngwr-input.mjs.map +1 -1
- package/fesm2022/ngwr-keyboard.mjs +3 -3
- package/fesm2022/ngwr-keyboard.mjs.map +1 -1
- package/fesm2022/ngwr-knob-testing.mjs.map +1 -1
- package/fesm2022/ngwr-knob.mjs +3 -3
- package/fesm2022/ngwr-knob.mjs.map +1 -1
- package/fesm2022/ngwr-layout.mjs +15 -15
- package/fesm2022/ngwr-layout.mjs.map +1 -1
- package/fesm2022/ngwr-lightbox-testing.mjs.map +1 -1
- package/fesm2022/ngwr-lightbox.mjs +3 -3
- package/fesm2022/ngwr-lightbox.mjs.map +1 -1
- package/fesm2022/ngwr-line-chart-testing.mjs.map +1 -1
- package/fesm2022/ngwr-line-chart.mjs +18 -7
- package/fesm2022/ngwr-line-chart.mjs.map +1 -1
- package/fesm2022/ngwr-list.mjs +6 -6
- package/fesm2022/ngwr-list.mjs.map +1 -1
- package/fesm2022/ngwr-loading-bar-router.mjs.map +1 -1
- package/fesm2022/ngwr-loading-bar.mjs +6 -6
- package/fesm2022/ngwr-loading-bar.mjs.map +1 -1
- package/fesm2022/ngwr-markdown-testing.mjs.map +1 -1
- package/fesm2022/ngwr-markdown.mjs +798 -17
- package/fesm2022/ngwr-markdown.mjs.map +1 -1
- package/fesm2022/ngwr-marquee-testing.mjs.map +1 -1
- package/fesm2022/ngwr-marquee.mjs +3 -3
- package/fesm2022/ngwr-marquee.mjs.map +1 -1
- package/fesm2022/ngwr-media.mjs +3 -3
- package/fesm2022/ngwr-media.mjs.map +1 -1
- package/fesm2022/ngwr-mention-testing.mjs.map +1 -1
- package/fesm2022/ngwr-mention.mjs +6 -6
- package/fesm2022/ngwr-mention.mjs.map +1 -1
- package/fesm2022/ngwr-meta.mjs +6 -6
- package/fesm2022/ngwr-meta.mjs.map +1 -1
- package/fesm2022/ngwr-meter-group-testing.mjs +7 -3
- package/fesm2022/ngwr-meter-group-testing.mjs.map +1 -1
- package/fesm2022/ngwr-meter-group.mjs +26 -6
- package/fesm2022/ngwr-meter-group.mjs.map +1 -1
- package/fesm2022/ngwr-overlay.mjs +6 -6
- package/fesm2022/ngwr-overlay.mjs.map +1 -1
- package/fesm2022/ngwr-page-header.mjs +13 -5
- package/fesm2022/ngwr-page-header.mjs.map +1 -1
- package/fesm2022/ngwr-pagination-testing.mjs.map +1 -1
- package/fesm2022/ngwr-pagination.mjs +3 -3
- package/fesm2022/ngwr-pagination.mjs.map +1 -1
- package/fesm2022/ngwr-pipes.mjs +21 -21
- package/fesm2022/ngwr-pipes.mjs.map +1 -1
- package/fesm2022/ngwr-platform.mjs +9 -9
- package/fesm2022/ngwr-platform.mjs.map +1 -1
- package/fesm2022/ngwr-popconfirm-testing.mjs.map +1 -1
- package/fesm2022/ngwr-popconfirm.mjs +6 -6
- package/fesm2022/ngwr-popconfirm.mjs.map +1 -1
- package/fesm2022/ngwr-popover-testing.mjs.map +1 -1
- package/fesm2022/ngwr-popover.mjs +578 -16
- package/fesm2022/ngwr-popover.mjs.map +1 -1
- package/fesm2022/ngwr-progress.mjs +3 -3
- package/fesm2022/ngwr-progress.mjs.map +1 -1
- package/fesm2022/ngwr-pull-to-refresh.mjs +3 -3
- package/fesm2022/ngwr-pull-to-refresh.mjs.map +1 -1
- package/fesm2022/ngwr-qr.mjs +3 -3
- package/fesm2022/ngwr-qr.mjs.map +1 -1
- package/fesm2022/ngwr-radio-testing.mjs.map +1 -1
- package/fesm2022/ngwr-radio.mjs +6 -6
- package/fesm2022/ngwr-radio.mjs.map +1 -1
- package/fesm2022/ngwr-rating-testing.mjs.map +1 -1
- package/fesm2022/ngwr-rating.mjs +3 -3
- package/fesm2022/ngwr-rating.mjs.map +1 -1
- package/fesm2022/ngwr-result.mjs +12 -12
- package/fesm2022/ngwr-result.mjs.map +1 -1
- package/fesm2022/ngwr-rotating-text-testing.mjs.map +1 -1
- package/fesm2022/ngwr-rotating-text.mjs +3 -3
- package/fesm2022/ngwr-rotating-text.mjs.map +1 -1
- package/fesm2022/ngwr-schema-form.mjs +3 -3
- package/fesm2022/ngwr-schema-form.mjs.map +1 -1
- package/fesm2022/ngwr-scroll.mjs +3 -3
- package/fesm2022/ngwr-scroll.mjs.map +1 -1
- package/fesm2022/ngwr-segmented-testing.mjs.map +1 -1
- package/fesm2022/ngwr-segmented.mjs +3 -3
- package/fesm2022/ngwr-segmented.mjs.map +1 -1
- package/fesm2022/ngwr-select-testing.mjs.map +1 -1
- package/fesm2022/ngwr-select.mjs +12 -12
- package/fesm2022/ngwr-select.mjs.map +1 -1
- package/fesm2022/ngwr-shiny-text-testing.mjs.map +1 -1
- package/fesm2022/ngwr-shiny-text.mjs +6 -6
- package/fesm2022/ngwr-shiny-text.mjs.map +1 -1
- package/fesm2022/ngwr-sidebar.mjs +10 -3
- package/fesm2022/ngwr-sidebar.mjs.map +1 -1
- package/fesm2022/ngwr-skeleton.mjs +3 -3
- package/fesm2022/ngwr-skeleton.mjs.map +1 -1
- package/fesm2022/ngwr-slider-testing.mjs.map +1 -1
- package/fesm2022/ngwr-slider.mjs +3 -3
- package/fesm2022/ngwr-slider.mjs.map +1 -1
- package/fesm2022/ngwr-sparkline-testing.mjs.map +1 -1
- package/fesm2022/ngwr-sparkline.mjs +84 -10
- package/fesm2022/ngwr-sparkline.mjs.map +1 -1
- package/fesm2022/ngwr-speed-dial-testing.mjs.map +1 -1
- package/fesm2022/ngwr-speed-dial.mjs +3 -3
- package/fesm2022/ngwr-speed-dial.mjs.map +1 -1
- package/fesm2022/ngwr-spinner.mjs +3 -3
- package/fesm2022/ngwr-spinner.mjs.map +1 -1
- package/fesm2022/ngwr-splash-cursor-testing.mjs.map +1 -1
- package/fesm2022/ngwr-splash-cursor.mjs +3 -3
- package/fesm2022/ngwr-splash-cursor.mjs.map +1 -1
- package/fesm2022/ngwr-split-text-testing.mjs.map +1 -1
- package/fesm2022/ngwr-split-text.mjs +3 -3
- package/fesm2022/ngwr-split-text.mjs.map +1 -1
- package/fesm2022/ngwr-splitter-testing.mjs.map +1 -1
- package/fesm2022/ngwr-splitter.mjs +3 -3
- package/fesm2022/ngwr-splitter.mjs.map +1 -1
- package/fesm2022/ngwr-spotlight-card-testing.mjs.map +1 -1
- package/fesm2022/ngwr-spotlight-card.mjs +6 -6
- package/fesm2022/ngwr-spotlight-card.mjs.map +1 -1
- package/fesm2022/ngwr-squircle.mjs +6 -6
- package/fesm2022/ngwr-squircle.mjs.map +1 -1
- package/fesm2022/ngwr-star-border-testing.mjs.map +1 -1
- package/fesm2022/ngwr-star-border.mjs +3 -3
- package/fesm2022/ngwr-star-border.mjs.map +1 -1
- package/fesm2022/ngwr-statistic.mjs +9 -9
- package/fesm2022/ngwr-statistic.mjs.map +1 -1
- package/fesm2022/ngwr-stepper-testing.mjs.map +1 -1
- package/fesm2022/ngwr-stepper.mjs +6 -6
- package/fesm2022/ngwr-stepper.mjs.map +1 -1
- package/fesm2022/ngwr-storage.mjs +3 -3
- package/fesm2022/ngwr-storage.mjs.map +1 -1
- package/fesm2022/ngwr-switch-testing.mjs.map +1 -1
- package/fesm2022/ngwr-switch.mjs +3 -3
- package/fesm2022/ngwr-switch.mjs.map +1 -1
- package/fesm2022/ngwr-table-testing.mjs.map +1 -1
- package/fesm2022/ngwr-table.mjs +18 -18
- package/fesm2022/ngwr-table.mjs.map +1 -1
- package/fesm2022/ngwr-tabs-router.mjs +3 -3
- package/fesm2022/ngwr-tabs-router.mjs.map +1 -1
- package/fesm2022/ngwr-tabs-testing.mjs.map +1 -1
- package/fesm2022/ngwr-tabs.mjs +6 -6
- package/fesm2022/ngwr-tabs.mjs.map +1 -1
- package/fesm2022/ngwr-textarea-testing.mjs.map +1 -1
- package/fesm2022/ngwr-textarea.mjs +3 -3
- package/fesm2022/ngwr-textarea.mjs.map +1 -1
- package/fesm2022/ngwr-theme.mjs +3 -3
- package/fesm2022/ngwr-theme.mjs.map +1 -1
- package/fesm2022/ngwr-tilt-card-testing.mjs.map +1 -1
- package/fesm2022/ngwr-tilt-card.mjs +6 -6
- package/fesm2022/ngwr-tilt-card.mjs.map +1 -1
- package/fesm2022/ngwr-timeline.mjs +6 -6
- package/fesm2022/ngwr-timeline.mjs.map +1 -1
- package/fesm2022/ngwr-toast-testing.mjs.map +1 -1
- package/fesm2022/ngwr-toast.mjs +9 -9
- package/fesm2022/ngwr-toast.mjs.map +1 -1
- package/fesm2022/ngwr-toolbar.mjs +10 -3
- package/fesm2022/ngwr-toolbar.mjs.map +1 -1
- package/fesm2022/ngwr-tour-testing.mjs.map +1 -1
- package/fesm2022/ngwr-tour.mjs +6 -6
- package/fesm2022/ngwr-tour.mjs.map +1 -1
- package/fesm2022/ngwr-transfer-testing.mjs.map +1 -1
- package/fesm2022/ngwr-transfer.mjs +3 -3
- package/fesm2022/ngwr-transfer.mjs.map +1 -1
- package/fesm2022/ngwr-tree-testing.mjs.map +1 -1
- package/fesm2022/ngwr-tree.mjs +3 -3
- package/fesm2022/ngwr-tree.mjs.map +1 -1
- package/fesm2022/ngwr-typewriter-testing.mjs.map +1 -1
- package/fesm2022/ngwr-typewriter.mjs +3 -3
- package/fesm2022/ngwr-typewriter.mjs.map +1 -1
- package/fesm2022/ngwr-typography.mjs +7 -3
- package/fesm2022/ngwr-typography.mjs.map +1 -1
- package/fesm2022/ngwr-utils.mjs.map +1 -1
- package/fesm2022/ngwr-validators.mjs.map +1 -1
- package/fesm2022/ngwr-version.mjs +1 -1
- package/fesm2022/ngwr-version.mjs.map +1 -1
- package/fesm2022/ngwr-virtual-scroll.mjs +3 -3
- package/fesm2022/ngwr-virtual-scroll.mjs.map +1 -1
- package/fesm2022/ngwr-waves-testing.mjs.map +1 -1
- package/fesm2022/ngwr-waves.mjs +3 -3
- package/fesm2022/ngwr-waves.mjs.map +1 -1
- package/fesm2022/ngwr-window-testing.mjs.map +1 -1
- package/fesm2022/ngwr-window.mjs +12 -12
- package/fesm2022/ngwr-window.mjs.map +1 -1
- package/form/styles/_index.scss +16 -1
- package/gauge/styles/_index.scss +1 -0
- package/i18n/ar.json +32 -1
- package/i18n/cs.json +32 -1
- package/i18n/de.json +32 -1
- package/i18n/en.json +32 -1
- package/i18n/es.json +32 -1
- package/i18n/fr.json +32 -1
- package/i18n/he.json +32 -1
- package/i18n/hi.json +32 -1
- package/i18n/id.json +32 -1
- package/i18n/it.json +32 -1
- package/i18n/ja.json +32 -1
- package/i18n/ko.json +32 -1
- package/i18n/nl.json +32 -1
- package/i18n/pl.json +32 -1
- package/i18n/pt.json +32 -1
- package/i18n/ru.json +32 -1
- package/i18n/sv.json +32 -1
- package/i18n/tr.json +32 -1
- package/i18n/uk.json +32 -1
- package/i18n/vi.json +32 -1
- package/i18n/zh-TW.json +32 -1
- package/i18n/zh.json +32 -1
- package/input/styles/_index.scss +24 -1
- package/input-number/styles/_index.scss +69 -0
- package/input-otp/styles/_index.scss +5 -5
- package/line-chart/styles/_index.scss +30 -2
- package/llms-full.txt +14 -4
- package/llms.txt +188 -132
- package/mcp/providers.js +2 -2
- package/mcp/server.js +1 -1
- package/meter-group/styles/_index.scss +1 -0
- package/overlay/styles/_arrow.scss +30 -2
- package/package.json +43 -2
- package/page-header/styles/_index.scss +37 -1
- package/pagination/styles/_index.scss +9 -5
- package/popover/styles/_index.scss +73 -5
- package/progress/styles/_index.scss +4 -0
- package/radio/styles/_index.scss +4 -1
- package/schematics/use/symbol-map.json +1 -0
- package/select/styles/_index.scss +51 -12
- package/sidebar/styles/_index.scss +44 -2
- package/skeleton/styles/_index.scss +3 -0
- package/skills/ngwr/SKILL.md +5 -5
- package/skills/ngwr/references/catalog.md +2 -0
- package/skills/ngwr/references/setup.md +3 -3
- package/sparkline/styles/_index.scss +19 -0
- package/styles.scss +1 -0
- package/table/styles/_index.scss +7 -0
- package/textarea/styles/_index.scss +12 -3
- package/theme/styles/_colors.scss +39 -13
- package/theme/styles/_contrast.scss +9 -7
- package/toast/styles/_index.scss +4 -0
- package/toolbar/styles/_index.scss +35 -1
- package/tree/styles/_index.scss +46 -7
- package/types/ngwr-badge.d.ts +22 -7
- package/types/ngwr-bar-chart.d.ts +19 -1
- package/types/ngwr-calendar-heatmap.d.ts +29 -1
- package/types/ngwr-checkbox.d.ts +2 -0
- package/types/ngwr-config.d.ts +12 -0
- package/types/ngwr-date-picker.d.ts +308 -43
- package/types/ngwr-donut-chart.d.ts +24 -1
- package/types/ngwr-dropdown.d.ts +22 -2
- package/types/ngwr-editor-testing.d.ts +378 -0
- package/types/ngwr-editor.d.ts +449 -0
- package/types/ngwr-event-calendar.d.ts +8 -0
- package/types/ngwr-form.d.ts +35 -5
- package/types/ngwr-gauge.d.ts +20 -1
- package/types/ngwr-input-number.d.ts +7 -0
- package/types/ngwr-line-chart.d.ts +9 -1
- package/types/ngwr-markdown.d.ts +61 -2
- package/types/ngwr-meter-group-testing.d.ts +3 -2
- package/types/ngwr-meter-group.d.ts +14 -1
- package/types/ngwr-page-header.d.ts +10 -2
- package/types/ngwr-popover.d.ts +154 -3
- package/types/ngwr-sidebar.d.ts +7 -0
- package/types/ngwr-sparkline.d.ts +43 -1
- package/types/ngwr-toolbar.d.ts +7 -0
- package/types/ngwr-typography.d.ts +4 -0
- package/types/ngwr-version.d.ts +1 -1
- package/typography/styles/_index.scss +16 -0
package/llms.txt
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
# ngwr
|
|
2
2
|
|
|
3
3
|
> Angular UI library — standalone, signals-first, zoneless, fully tree-shakable.
|
|
4
|
-
>
|
|
5
|
-
>
|
|
6
|
-
>
|
|
4
|
+
> Over two hundred secondary entry points, built on `@angular/cdk` primitives.
|
|
5
|
+
> The only runtime dependency is `tslib`. Docs and live demos: https://ngwr.dev
|
|
6
|
+
> (the current counts of entry points, components, harnesses and tests are on
|
|
7
|
+
> https://ngwr.dev/start/quality, generated from the repository). Source:
|
|
8
|
+
> https://github.com/thekhegay/ngwr
|
|
7
9
|
|
|
8
10
|
This file orients AI agents and LLMs that consume ngwr. For exact, current
|
|
9
11
|
component APIs, read the bundled TypeScript types
|
|
@@ -27,9 +29,13 @@ pnpm add ngwr @angular/cdk
|
|
|
27
29
|
```
|
|
28
30
|
|
|
29
31
|
Requires Angular / CDK `>= 22.0.0` (peers: `@angular/cdk`, `@angular/common`,
|
|
30
|
-
`@angular/core`, `@angular/platform-browser`, `rxjs ^7
|
|
31
|
-
|
|
32
|
-
|
|
32
|
+
`@angular/core`, `@angular/forms`, `@angular/platform-browser`, `rxjs ^7`.
|
|
33
|
+
Optional: `@angular/router`, which `wr-sidebar`, a breadcrumb `routerLink` and
|
|
34
|
+
the two router adapters need; `date-fns` / `luxon` for their date adapters; and
|
|
35
|
+
the eight `prosemirror-*` packages that only `ngwr/editor` imports. Icon sets
|
|
36
|
+
such as `lucide` are not peers, since the adapters take the icon data). On
|
|
37
|
+
Angular 21 or older the INSTALL succeeds — every package manager treats an unmet
|
|
38
|
+
peer as a warning — and the `ng build` fails instead, in
|
|
33
39
|
the linker, with `Unsupported enum value for [object Object]`. The floor is real
|
|
34
40
|
and the ceiling is absent — an Angular newer than the release has not been built
|
|
35
41
|
or tested against, and nothing warns. There is no `engines` field and no
|
|
@@ -39,13 +45,20 @@ does not promise: https://ngwr.dev/start/versioning
|
|
|
39
45
|
**There is no root barrel: `import { X } from 'ngwr'` is always wrong.** The root
|
|
40
46
|
entry point exports nothing, so an IDE auto-import from it gives `TS2305` and no
|
|
41
47
|
hint. Every symbol comes from its entry point — `import { WrButton } from
|
|
42
|
-
'ngwr/button'` — and the entry point is the last segment of
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
`ngwr/
|
|
46
|
-
`ngwr/
|
|
47
|
-
|
|
48
|
-
|
|
48
|
+
'ngwr/button'` — and for most components the entry point is the last segment of
|
|
49
|
+
the docs URL. Not for all of them: `/reference/components/qrcode` is `ngwr/qr`,
|
|
50
|
+
`form-field` is `ngwr/form` and `button-group` is `ngwr/button`, while the
|
|
51
|
+
directive, pipe, util and validator pages share `ngwr/directives`, `ngwr/pipes`,
|
|
52
|
+
`ngwr/utils` and `ngwr/validators`. Each page's import snippet names the right
|
|
53
|
+
one. Mind the ones that do not match the selector: `<wr-btn>` and
|
|
54
|
+
`<wr-btn-group>` are `ngwr/button`, `<wr-tag>` is `ngwr/badge`, `<wr-option>` is
|
|
55
|
+
`ngwr/select`, `<wr-accordion>` is `ngwr/collapse`, `<wr-form-field>` is
|
|
56
|
+
`ngwr/form`, `<wr-sortable-list>` is `ngwr/drag-drop`, `<wr-kbd>` is
|
|
57
|
+
`ngwr/keyboard`, `<wr-count-up>` is `ngwr/counter`, and `[wrAutofocus]`,
|
|
58
|
+
`[wrAutosize]`, `[wrClickOutside]` and `[wrCopyToClipboard]` are
|
|
59
|
+
`ngwr/directives`.
|
|
60
|
+
|
|
61
|
+
Styles: `@use 'ngwr'` (everything, over 300 kB of minified CSS) or
|
|
49
62
|
`@use 'ngwr/<name>'` per component in your global SCSS. **Per component, the
|
|
50
63
|
theme tokens come with each entry but the other components it renders do not**,
|
|
51
64
|
and nothing warns — the control just paints wrong. Always add `ngwr/icon` (the
|
|
@@ -54,7 +67,8 @@ inline chevrons, carets and sort arrows are bare SVGs sized by `.wr-icon__svg`),
|
|
|
54
67
|
`provideWrDensity()` silently does nothing without it) and `ngwr/overlay` (the
|
|
55
68
|
responsive bottom sheet). Then follow what a component renders:
|
|
56
69
|
`ngwr/table` needs checkbox / dropdown / pagination / spinner, `ngwr/pagination`
|
|
57
|
-
needs button / select, `ngwr/date-picker` needs calendar / input,
|
|
70
|
+
needs button / select, `ngwr/date-picker` needs calendar / input,
|
|
71
|
+
`ngwr/editor` needs button / input / popover, and a service
|
|
58
72
|
mounts a component no template names — `WrDialog.open()` needs `ngwr/dialog`,
|
|
59
73
|
`WrToast.show()` needs `ngwr/toast`. Full table:
|
|
60
74
|
https://ngwr.dev/start/installation
|
|
@@ -81,7 +95,8 @@ Add from their entry points as needed:
|
|
|
81
95
|
(`ngwr/config`) — app-wide component DEFAULTS. A value bound on the element always
|
|
82
96
|
wins, and a bound `false` beats a configured `true`, so a config never has to be
|
|
83
97
|
escaped. Covers `size` on the form controls, `rounded` on `input` / `inputNumber`
|
|
84
|
-
/ `select`,
|
|
98
|
+
/ `select`, `format` on `editor` (what the app stores: HTML, markdown or JSON),
|
|
99
|
+
and `linkTarget` / `copyable` on `markdown`. There is deliberately no
|
|
85
100
|
`color` key — a bound `[color]="null"` means "no intent", which a default cannot
|
|
86
101
|
express without inventing a sentinel.
|
|
87
102
|
- `provideWrI18n(...)` + `provideWrI18nBaseCatalogs({ en: wrEn })` +
|
|
@@ -109,52 +124,52 @@ one element at a time; a step whose target is missing is skipped, not floated.
|
|
|
109
124
|
- `ng g ngwr:page <form|table|dashboard>` — starter page wired with ngwr.
|
|
110
125
|
- `ng update ngwr` — runs upgrade migrations.
|
|
111
126
|
|
|
112
|
-
## Upgrading
|
|
113
|
-
|
|
114
|
-
Run `ng update ngwr
|
|
115
|
-
migration between the installed version and
|
|
116
|
-
majors, and never target a 7.x, 8.x or
|
|
117
|
-
`exports is not defined in ES module
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
`
|
|
131
|
-
- `
|
|
132
|
-
`
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
`ngwr/
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
`
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
127
|
+
## Upgrading
|
|
128
|
+
|
|
129
|
+
Run `ng update ngwr` once, from whatever major the app is on. It installs the
|
|
130
|
+
latest release and runs every migration between the installed version and that
|
|
131
|
+
release, in order. Do not step through the majors, and never target a 7.x, 8.x or
|
|
132
|
+
9.x release: their schematics die with `exports is not defined in ES module
|
|
133
|
+
scope`. A migration rewrites what is a pure rename and REPORTS, by file, what
|
|
134
|
+
needs a decision only the app can make. Read its output, because the reported
|
|
135
|
+
half is where the silent failures are. Every breaking change, newest first, each
|
|
136
|
+
with a diff: https://ngwr.dev/start/migration
|
|
137
|
+
|
|
138
|
+
Names older majors used, which code written for them (and a model trained on
|
|
139
|
+
that code) still spells. The migration for each major rewrites them:
|
|
140
|
+
|
|
141
|
+
- v14: `<wr-alert closeable>` is `closable`; `[wrInput]`'s `wrSize` is `size`;
|
|
142
|
+
`<wr-table [totalItems]>` is `[total]`; `<wr-pagination [(currentPage)]>` and
|
|
143
|
+
`(currentPageChange)` are `[(page)]` and `(pageChange)`;
|
|
144
|
+
`isDisabledWhenLoading` is `disabledWhenLoading`; the window `chromeSize`
|
|
145
|
+
values `'compact' | 'normal'` are `'sm' | 'md'`.
|
|
146
|
+
- v12: `ngwr/date-adapter`, `ngwr/date-adapter-fns` and
|
|
147
|
+
`ngwr/date-adapter-luxon` are `ngwr/date`, `ngwr/date/adapters/fns` and
|
|
148
|
+
`ngwr/date/adapters/luxon`.
|
|
149
|
+
- v9: a grouped `<wr-checkbox value="…">` is `checkboxValue`.
|
|
150
|
+
- v8: the density values `compact` / `default` / `comfortable` are `sm` / `md`
|
|
151
|
+
/ `lg`.
|
|
152
|
+
- v7: classes lost their suffix (`WrButtonComponent` is `WrButton`,
|
|
153
|
+
`WrToastService` is `WrToast`), `[wrTooltip]` is `[wrPopover]` with
|
|
154
|
+
`mode="tooltip"`, `ngwr/tag` is `ngwr/badge` and `ngwr/form-field` is
|
|
155
|
+
`ngwr/form`.
|
|
156
|
+
|
|
157
|
+
Changes no migration rewrites. All but the last fail silently:
|
|
158
|
+
|
|
159
|
+
- `<wr-pagination ofLabel>` is gone (v14), and the `pagination.of` catalog key
|
|
160
|
+
with it. The range is one `pagination.range` template with `{{from}}` /
|
|
161
|
+
`{{to}}` / `{{total}}` placeholders, and a catalog still carrying the old key
|
|
162
|
+
reverts that line to English.
|
|
163
|
+
- `[id]` on `<wr-checkbox>`, `<wr-radio>` and `<wr-switch>` goes to the inner
|
|
164
|
+
`<input>` rather than the host (v13), so a `wr-checkbox#agree` selector stops
|
|
165
|
+
matching. `#agree` alone still works.
|
|
166
|
+
- `lucideIcons()` registers its keys verbatim (v9): `{ chevronDown: ChevronDown }`
|
|
167
|
+
is no longer found as `chevron-down`, so quote multi-word keys.
|
|
168
|
+
- `readI18nText()` returns a `Signal<string>` (v12). This one is loud: the
|
|
169
|
+
compiler names every call site that needs a `()`.
|
|
170
|
+
|
|
171
|
+
The router adapters, the `LOCALE_ID` default and the stricter date parsing, all
|
|
172
|
+
from v14, are current behaviour and described under Patterns below.
|
|
158
173
|
|
|
159
174
|
## Use ngwr — don't hand-roll
|
|
160
175
|
|
|
@@ -165,63 +180,100 @@ before writing your own. Full catalog: https://ngwr.dev/reference/components.
|
|
|
165
180
|
|
|
166
181
|
## Common components (selector — import)
|
|
167
182
|
|
|
168
|
-
- **Form** — `wr-btn` (ngwr/button), `wrInput` (ngwr/input),
|
|
169
|
-
(ngwr/select; modes single/multi/search/tag, plus
|
|
170
|
-
multi-with-typeahead and `(searchChange)` for server-side
|
|
171
|
-
`wr-checkbox` (form state is `[(checked)]`; inside
|
|
172
|
-
identity input is `checkboxValue`, NOT `value`),
|
|
173
|
-
`wr-
|
|
174
|
-
`wr-
|
|
175
|
-
|
|
176
|
-
`
|
|
177
|
-
|
|
183
|
+
- **Form** — `wr-btn` (ngwr/button), `wr-speed-dial`, `wrInput` (ngwr/input),
|
|
184
|
+
`wr-textarea`, `wr-select` (ngwr/select; modes single/multi/search/tag, plus
|
|
185
|
+
`searchable` for a multi-with-typeahead and `(searchChange)` for server-side
|
|
186
|
+
search), `wr-checkbox` (form state is `[(checked)]`; inside
|
|
187
|
+
`<wr-checkbox-group>` the identity input is `checkboxValue`, NOT `value`),
|
|
188
|
+
`wr-radio-group` (ngwr/radio), `wr-switch`, `wr-slider`, `wr-segmented`,
|
|
189
|
+
`wr-rating`, `wr-knob`, `wr-input-number`, `wr-input-otp`, `wr-date-picker`
|
|
190
|
+
(date/time/datetime) and `wr-date-range-picker` (both in ngwr/date-picker; the
|
|
191
|
+
range value is `[start, end]`, hence a separate component), `wr-cascader` (the
|
|
192
|
+
value is the whole path), `[wrMention]` (ngwr/mention, on a textarea or input),
|
|
193
|
+
`wr-file-upload`, `wr-form-field` (in ngwr/form), `wr-color-picker`,
|
|
194
|
+
`wr-transfer` (dual listbox; the value is the RIGHT pane), `wr-editor`
|
|
195
|
+
(ngwr/editor — rich text on ProseMirror, an optional peer; `format` makes the
|
|
196
|
+
value an HTML string, a markdown string or a JSON tree, and every value is
|
|
197
|
+
sanitised through the schema; a value it cannot read is refused and the editor
|
|
198
|
+
keeps its document), `wr-schema-form` (ngwr/schema-form; draws a form from the
|
|
199
|
+
`WR_FIELD` metadata on a Signal Forms schema, and skips a field that carries
|
|
200
|
+
none).
|
|
178
201
|
- **Data** — `wr-table` (column pin/resize/drag-reorder, row selection,
|
|
179
202
|
expandable rows, grouping, tree rows (`childrenKey`), summary rows,
|
|
180
203
|
CSV export, virtualized body),
|
|
181
|
-
`wr-pagination`, `wr-tree`, `wr-
|
|
182
|
-
|
|
183
|
-
`
|
|
184
|
-
|
|
204
|
+
`wr-pagination`, `wr-tree`, `wr-list`, `wr-timeline`, `wr-calendar`,
|
|
205
|
+
`wr-event-calendar` (see Scheduling below), `wr-graph` (read-only layered
|
|
206
|
+
diagram: `nodes` plus `{ from, to }` parent-to-child `edges`, each node a
|
|
207
|
+
default card or an `ng-template wrGraphNode`), `wr-virtual-scroll`,
|
|
208
|
+
`wr-sortable-list` (drag-to-reorder, with `[wrDragHandle]` — both in
|
|
209
|
+
ngwr/drag-drop).
|
|
210
|
+
- **Charts** — `wr-line-chart`, `wr-bar-chart`, `wr-donut-chart`,
|
|
211
|
+
`wr-sparkline`, `wr-gauge`, `wr-calendar-heatmap`, `wr-meter-group`, each its
|
|
212
|
+
own entry point, themed through the `--wr-*` tokens and each with a hover
|
|
213
|
+
tooltip.
|
|
185
214
|
- **Feedback** — `wr-alert`, `wr-result`, `wr-empty`, `wr-skeleton`,
|
|
186
|
-
`wr-spinner`.
|
|
187
|
-
- **Layout / Display** — `wr-
|
|
188
|
-
`wr-
|
|
189
|
-
`wr-
|
|
190
|
-
|
|
191
|
-
`
|
|
192
|
-
-
|
|
193
|
-
|
|
215
|
+
`wr-spinner`, `wr-progress`, `wr-loading-bar`.
|
|
216
|
+
- **Layout / Display** — `wr-layout` (with header / sider / content / footer),
|
|
217
|
+
`wr-page-header`, `wr-card`, `wr-divider`, `wr-carousel`, `wr-collapse`,
|
|
218
|
+
`wr-splitter`, `wr-toolbar`, `wr-window`, `wr-descriptions`, `wr-statistic`,
|
|
219
|
+
`wr-avatar`, `wr-badge` and `wr-tag` (both ngwr/badge), `wr-qr` (ngwr/qr),
|
|
220
|
+
`wr-lightbox`, `wr-image-cropper`, `wr-compare`, `wr-pull-to-refresh`,
|
|
221
|
+
`wr-markdown` (renders markdown as DOM, never as HTML — raw HTML in the source
|
|
222
|
+
is escaped; `[streaming]` for a partial document;
|
|
223
|
+
`provideWrMarkdownHighlighter()` takes coloured spans, not markup). The same
|
|
224
|
+
entry point exports `parseMarkdown()`, which returns the block tree, and
|
|
225
|
+
`serializeMarkdown()`, which writes a tree back as markdown: the pair
|
|
226
|
+
round-trips, and what this dialect cannot express is normalised rather than
|
|
227
|
+
guessed at.
|
|
228
|
+
- **Navigation** — `wr-tabs`, `wr-stepper`, `wr-breadcrumbs`, `wr-anchor`,
|
|
229
|
+
`wr-sidebar` (follows the active route by injecting `Router`),
|
|
230
|
+
`wr-back-top`, `[wrAffix]`, `wr-dropdown-menu` (with its `[wrDropdown]`
|
|
231
|
+
trigger — both in ngwr/dropdown).
|
|
194
232
|
- **Overlays** — `wr-drawer` (or `WrDrawerManager.open()` to open a component as
|
|
195
233
|
a drawer from code), `wr-action-sheet`, `[wrPopover]` (directive; has a
|
|
196
234
|
`tooltip` mode), `wr-command-palette`, `wr-context-menu`, `wr-popconfirm`.
|
|
197
235
|
(Dialog and toast are service-opened — inject `WrDialog` / `WrToast`.
|
|
198
236
|
Content inside a service-opened dialog or drawer can `inject(WrDialogRef)` /
|
|
199
237
|
`inject(WrDrawerRef)` to close itself.)
|
|
238
|
+
- **Animations** — text effects, cursor effects and backgrounds, each its own
|
|
239
|
+
entry point, documented under https://ngwr.dev/animations/ and listed in
|
|
240
|
+
`llms-full.txt`.
|
|
200
241
|
|
|
201
242
|
## Patterns
|
|
202
243
|
|
|
203
|
-
- **Forms** —
|
|
204
|
-
or `FormCheckboxControl` for checkbox/switch)
|
|
205
|
-
library.
|
|
206
|
-
|
|
244
|
+
- **Forms** — the value controls are signal-forms native (`FormValueControl`,
|
|
245
|
+
or `FormCheckboxControl` for checkbox/switch), and there is no
|
|
246
|
+
`ControlValueAccessor` in the library. One public class with a `value` model
|
|
247
|
+
implements neither: `[wrColorPickerTrigger]`, a trigger that drives a
|
|
248
|
+
`<wr-color-picker>`, which does.
|
|
207
249
|
Bind `[formField]="form.x"`, use the two-way model standalone (`[(value)]`, or
|
|
208
250
|
`[(checked)]` on checkbox/switch), or classic `[(ngModel)]` / reactive forms
|
|
209
251
|
via Angular's bridge. **That bridge is not an accessor and does not behave like
|
|
210
|
-
one**, and the differences are silent:
|
|
211
|
-
|
|
252
|
+
one**, and the differences are silent: template validator attributes
|
|
253
|
+
(`required`, `minlength`, `pattern`, …) on an ngwr control are never applied,
|
|
254
|
+
so validators belong on the `FormControl`; `updateOn: 'blur'` / `'submit'` do
|
|
255
|
+
not apply to an ngwr control while a native `<input>` in the same group still
|
|
212
256
|
honours them; a `{ emitEvent: false }` write moves the model and leaves the
|
|
213
257
|
control showing the old value; `<wr-select>` compares object values by `===`
|
|
214
258
|
with no `compareWith`. What the bridge carries, what it drops, and what a form
|
|
215
259
|
does about each: https://ngwr.dev/guides/forms
|
|
216
260
|
- **Icons** — register via `provideWrIcons`, render `<wr-icon name="check" />`.
|
|
217
|
-
- **Router** —
|
|
261
|
+
- **Router** — only what is about routes touches `@angular/router`:
|
|
262
|
+
`wr-sidebar` injects `Router` to follow the active route, and
|
|
263
|
+
`wr-breadcrumbs-item` renders a `RouterLink` when you pass `routerLink`. The tab
|
|
264
|
+
strip and the loading bar take routing through opt-in adapters instead. A
|
|
218
265
|
`<wr-tab routerLink>` needs `wrTabsRouting` on the strip plus `WrTabsRouting`
|
|
219
266
|
(`ngwr/tabs/router`) in `imports`, and it throws if you forget.
|
|
220
267
|
`<wr-loading-bar>` follows navigation only with
|
|
221
268
|
`provideWrLoadingBarRouter()` (`ngwr/loading-bar/router`), and it does NOT
|
|
222
269
|
throw — without the provider the bar simply never moves.
|
|
223
270
|
- **i18n** — `{{ 'key' | wrT }}` (pipe from `ngwr/i18n`). The locale defaults to
|
|
224
|
-
Angular's `LOCALE_ID`, not the browser, for both copy and dates
|
|
271
|
+
Angular's `LOCALE_ID`, not the browser, for both copy and dates; an app that
|
|
272
|
+
wants the browser's tag writes
|
|
273
|
+
`provideWrDateAdapter({ locale: navigator.language })`. A named date format
|
|
274
|
+
(`shortDate`, `time`, …) parses through the same `Intl` formatter that printed
|
|
275
|
+
it, so input it cannot read returns null and leaves the committed value alone.
|
|
276
|
+
A field that must accept a specific pattern takes an explicit token `[format]`.
|
|
225
277
|
- **Theme** — CSS custom properties `--wr-color-*`, `--wr-border-radius-*`, … set
|
|
226
278
|
by `provideWrTheme()`. Two contrast tokens per intent, easy to confuse:
|
|
227
279
|
`--wr-color-<intent>-contrast` is the label ON a filled intent;
|
|
@@ -230,7 +282,9 @@ before writing your own. Full catalog: https://ngwr.dev/reference/components.
|
|
|
230
282
|
surface for every intent but `warning` and `light`, but still fails on the `-soft`
|
|
231
283
|
tint — which is exactly where outlined / ghost / tinted variants paint it, so use
|
|
232
284
|
`-ink` there. For muted prose use `--wr-color-on-surface-muted`, not the `medium`
|
|
233
|
-
intent
|
|
285
|
+
intent, and for placeholder text `--wr-color-placeholder` (never
|
|
286
|
+
`--wr-color-text-faint`, which is decorative only). An intent colour on a tag,
|
|
287
|
+
badge or typography tone is decoration or category: the words carry the state.
|
|
234
288
|
- **SSR** — everything renders on the server; the library contains no
|
|
235
289
|
`ngSkipHydration`, so `provideClientHydration()` and `withEventReplay()` need
|
|
236
290
|
nothing from it. Two calls are NOT no-ops there and ship an overlay into a
|
|
@@ -249,23 +303,22 @@ before writing your own. Full catalog: https://ngwr.dev/reference/components.
|
|
|
249
303
|
`wr-tree` and `wr-select` (search mode), alongside the standalone
|
|
250
304
|
`wr-virtual-scroll` wrapper.
|
|
251
305
|
- **Testing** — CDK component harnesses ship beside the components they drive, at
|
|
252
|
-
`ngwr/<name>/testing
|
|
253
|
-
|
|
254
|
-
picker's popup IS a calendar — covering the
|
|
255
|
-
form controls, the overlays, the data views, the navigation / disclosure set
|
|
256
|
-
(`tabs`, `stepper`, `carousel`, `pagination`, `segmented`, `collapse`,
|
|
257
|
-
`transfer`) and `markdown`: the form controls
|
|
306
|
+
`ngwr/<name>/testing` (how many there are is on https://ngwr.dev/start/quality).
|
|
307
|
+
Every control, every overlay and every chart has one: the form controls
|
|
258
308
|
(`button`, `input`, `textarea`, `checkbox`, `switch`, `radio`, `select`,
|
|
259
309
|
`input-number`, `input-otp`, `slider`, `rating`, `file-upload`, `color-picker`,
|
|
260
|
-
`knob`, `form` for `<wr-form-field>`), the overlays
|
|
261
|
-
`
|
|
262
|
-
`
|
|
263
|
-
`
|
|
264
|
-
`
|
|
265
|
-
|
|
266
|
-
`
|
|
267
|
-
|
|
268
|
-
|
|
310
|
+
`knob`, `segmented`, `editor`, and `form` for `<wr-form-field>`), the overlays
|
|
311
|
+
(`date-picker`, `dropdown`, `popover`, `dialog`, `drawer`, `action-sheet`,
|
|
312
|
+
`toast`, `context-menu`, `popconfirm`, `command-palette`, `cascader`,
|
|
313
|
+
`mention`), the data views (`table`, `tree`, `graph`), the navigation and
|
|
314
|
+
disclosure set (`tabs`, `stepper`, `carousel`, `pagination`, `collapse`,
|
|
315
|
+
`transfer`), `markdown`, `splitter`, `speed-dial`, `lightbox`, `tour`,
|
|
316
|
+
`calendar`, `event-calendar`, `window`, `image-cropper`, and every animation
|
|
317
|
+
but three. `WrCalendarDayHarness` ships under two entry points, since a date
|
|
318
|
+
picker's popup IS a calendar. `aurora`, `click-spark`, `confetti` and
|
|
319
|
+
`virtual-scroll` deliberately have none: what they do is a canvas or a measured
|
|
320
|
+
viewport, so every honest method would read the same for a working component
|
|
321
|
+
and a broken one.
|
|
269
322
|
Load them with `TestbedHarnessEnvironment` and narrow with
|
|
270
323
|
`WrButtonHarness.with({ text: 'Save' })` instead of querying ngwr's markup.
|
|
271
324
|
Dialog, toast and a service-opened drawer render outside the fixture — load
|
|
@@ -292,27 +345,28 @@ before writing your own. Full catalog: https://ngwr.dev/reference/components.
|
|
|
292
345
|
Four pages exist for the question before installation, and everything on them
|
|
293
346
|
is meant to be checkable rather than taken on trust:
|
|
294
347
|
|
|
295
|
-
- **Why ngwr, and when not to** — the wedge (
|
|
348
|
+
- **Why ngwr, and when not to** — the wedge (the value controls are Signal
|
|
296
349
|
Forms controls; no `ControlValueAccessor` in the library), a comparison against
|
|
297
350
|
Material / PrimeNG / NG-ZORRO / Taiga / Spartan, and a per-competitor "choose
|
|
298
351
|
something else if" section: https://ngwr.dev/start/comparison
|
|
299
|
-
- **What gates a change** —
|
|
300
|
-
accessibility sweeps and what each one cannot see, the
|
|
301
|
-
|
|
352
|
+
- **What gates a change** — the gates every PR must pass, three separate
|
|
353
|
+
accessibility sweeps and what each one cannot see, the nightly baselines and
|
|
354
|
+
what is accepted in them, plus what the test suite does NOT cover:
|
|
302
355
|
https://ngwr.dev/start/quality
|
|
303
356
|
- **A live Signal Forms demo** you can read before installing anything:
|
|
304
357
|
https://ngwr.dev/start/playground
|
|
305
358
|
- **What a version number promises** — what a major is allowed to break, and the
|
|
306
359
|
one semver rule made mechanical: `release:prepare` refuses a minor or patch
|
|
307
|
-
bump when any commit since the last tag is marked breaking, so
|
|
308
|
-
safe range (12.2.0 was a minor carrying a breaking change,
|
|
309
|
-
guard exists). Also the support window — current major in
|
|
310
|
-
mechanical security fixes only, ending when the next
|
|
311
|
-
actual cadence: https://ngwr.dev/start/versioning
|
|
360
|
+
bump when any commit since the last tag is marked breaking, so a caret range
|
|
361
|
+
on a major is a safe range (12.2.0 was a minor carrying a breaking change,
|
|
362
|
+
which is why the guard exists). Also the support window — current major in
|
|
363
|
+
full, previous major mechanical security fixes only, ending when the next
|
|
364
|
+
major ships — and the actual cadence: https://ngwr.dev/start/versioning
|
|
312
365
|
|
|
313
366
|
The honest shape of the project, since these pages say it too: one maintainer,
|
|
314
|
-
MIT, eight majors
|
|
315
|
-
can repair and a reported diagnosis for the
|
|
367
|
+
MIT, eight majors between 2026-06-12 (v7.0.0) and 2026-09-04 (v14.0.0), a
|
|
368
|
+
codemod for every break a codemod can repair and a reported diagnosis for the
|
|
369
|
+
rest, no commercial support.
|
|
316
370
|
|
|
317
371
|
Public API is three surfaces and all three move only in a major: the exported
|
|
318
372
|
TypeScript, the `.wr-*` BEM class names (every component ships
|
|
@@ -320,9 +374,10 @@ TypeScript, the `.wr-*` BEM class names (every component ships
|
|
|
320
374
|
TSDoc means not API and survives into the published types, so
|
|
321
375
|
`grep -rn "@internal" node_modules/ngwr/types` answers it. A few helpers are
|
|
322
376
|
exported, unmarked and undocumented — `wrAppendOverlayClose`, `wrMirrorOffsets`,
|
|
323
|
-
`wrPresentAsSheet`, `
|
|
324
|
-
`squirclePath`, `wrContrastFor`, `
|
|
325
|
-
|
|
377
|
+
`wrPresentAsSheet`, `wrFollowDirection`, `WrOutsideClick`, `useConfigValue`,
|
|
378
|
+
`useFormFieldAria`, `squirclePath`, `wrContrastFor`, `wrIntentTokens`,
|
|
379
|
+
`isSafeCssValue`, and a handful of `WR_*` context tokens such as `WR_STEPPER` —
|
|
380
|
+
and carry no stability statement; do not build on them.
|
|
326
381
|
|
|
327
382
|
## Resources (machine-readable)
|
|
328
383
|
|
|
@@ -335,15 +390,16 @@ statement; do not build on them.
|
|
|
335
390
|
prose and code samples and API tables, without the site chrome. Prefer it over
|
|
336
391
|
`llms-full.txt` when you already know which component you need. Each HTML page
|
|
337
392
|
advertises its twin as `<link rel="alternate" type="text/markdown">`.
|
|
338
|
-
- **MCP server — the same files, askable.** `npx -y ngwr-mcp` (a bin
|
|
339
|
-
installed package; zero dependencies, JSON-RPC over stdio) exposes
|
|
340
|
-
`search_ngwr` turns a need into an entry point name,
|
|
341
|
-
summarises one entry point, `get_ngwr_api` returns a
|
|
342
|
-
outputs read out of the shipped `.d.ts`, and
|
|
343
|
-
install / `ng g ngwr:use` / provider commands as
|
|
344
|
-
and it never reaches outside its own package: no
|
|
345
|
-
|
|
346
|
-
|
|
393
|
+
- **MCP server — the same files, askable.** `npx -y -p ngwr ngwr-mcp` (a bin
|
|
394
|
+
in the installed package; zero dependencies, JSON-RPC over stdio) exposes
|
|
395
|
+
four tools: `search_ngwr` turns a need into an entry point name,
|
|
396
|
+
`get_ngwr_component` summarises one entry point, `get_ngwr_api` returns a
|
|
397
|
+
class's inputs / models / outputs read out of the shipped `.d.ts`, and
|
|
398
|
+
`get_ngwr_setup` returns the install / `ng g ngwr:use` / provider commands as
|
|
399
|
+
text — it never runs them, and it never reaches outside its own package: no
|
|
400
|
+
network, no commands. It reads the resources listed here rather than
|
|
401
|
+
embedding a copy of them. Client config for Claude Code / Claude Desktop /
|
|
402
|
+
Cursor, and a worked example of each tool:
|
|
347
403
|
https://ngwr.dev/guides/mcp
|
|
348
404
|
- **Agent skill — the rules, not the catalog.** `skills/ngwr/SKILL.md` in the
|
|
349
405
|
installed package (also at https://ngwr.dev/skills/ngwr/SKILL.md) is about a
|
|
@@ -355,8 +411,8 @@ statement; do not build on them.
|
|
|
355
411
|
https://ngwr.dev/guides/agent-skill
|
|
356
412
|
- **Registry — an open format for shareable theme presets and blocks.** One
|
|
357
413
|
installable unit per JSON file, hosted anywhere; the contract is
|
|
358
|
-
https://ngwr.dev/registry/schema.json and
|
|
359
|
-
|
|
414
|
+
https://ngwr.dev/registry/schema.json and worked examples sit beside it at
|
|
415
|
+
`/registry/items/`, theme presets and a block. `cssVars` keys are
|
|
360
416
|
`--wr-*` tokens, `entryPoints` names `ngwr/*` subpaths, and a `files[].target`
|
|
361
417
|
is always relative:
|
|
362
418
|
https://ngwr.dev/guides/registry
|
package/mcp/providers.js
CHANGED
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
*/
|
|
7
7
|
const REQUIRED_PROVIDERS = [
|
|
8
8
|
{
|
|
9
|
-
test: /^Wr(Dialog|Drawer|Toast|Popover|Popconfirm|ContextMenu|Select|Dropdown|CommandPalette|Cascader|Mention|DatePicker|Tour|Lightbox)/,
|
|
9
|
+
test: /^Wr(Dialog|Drawer|Toast|Popover|Popconfirm|ContextMenu|Select|Dropdown|CommandPalette|Cascader|Mention|DatePicker|Tour|Lightbox|Editor)/,
|
|
10
10
|
provider: "provideWrOverlay() // from 'ngwr/overlay'",
|
|
11
|
-
why: '
|
|
11
|
+
why: 'gives ngwr overlays their own container, so they never collide with other CDK overlays',
|
|
12
12
|
},
|
|
13
13
|
{
|
|
14
14
|
test: /^WrIcon/,
|
package/mcp/server.js
CHANGED
|
@@ -22,7 +22,7 @@ import { TOOLS, callTool, validateArguments } from './tools.js';
|
|
|
22
22
|
* not fail — it waits, which is worse. Every branch here now ends in exactly one
|
|
23
23
|
* reply per request, and none for a notification.
|
|
24
24
|
*
|
|
25
|
-
* Run it with `npx ngwr-mcp`, or point a client at
|
|
25
|
+
* Run it with `npx -y -p ngwr ngwr-mcp`, or point a client at
|
|
26
26
|
* `node ./node_modules/ngwr/mcp/server.js`.
|
|
27
27
|
*
|
|
28
28
|
* @see https://modelcontextprotocol.io
|
|
@@ -139,8 +139,15 @@ $placements: (
|
|
|
139
139
|
/// turns the right border into the down-right face and the bottom one into the
|
|
140
140
|
/// down-left face, so `right + bottom` is what outlines a tip pointing DOWN.
|
|
141
141
|
/// Swapping only the inline half would paint two faces that are tucked under
|
|
142
|
-
/// the panel.
|
|
143
|
-
///
|
|
142
|
+
/// the panel.
|
|
143
|
+
///
|
|
144
|
+
/// That is also why a side edge needs its own RTL rule, which `anchored-arrow`
|
|
145
|
+
/// emits. `at()` hangs the arrow off the panel's inline start or end, so under
|
|
146
|
+
/// `dir="rtl"` a `right`-placed panel carries it on its PHYSICAL right while
|
|
147
|
+
/// these faces still outline a tip pointing left — the two faces painted are
|
|
148
|
+
/// the ones inside the panel, drawn over its content as a chevron, and the tip
|
|
149
|
+
/// that does stick out has no outline. The top and bottom edges are symmetric
|
|
150
|
+
/// about the vertical axis and need nothing.
|
|
144
151
|
@mixin faces($edge, $color) {
|
|
145
152
|
@if $edge == bottom {
|
|
146
153
|
// rtl-ok: down-right face of a 45°-rotated square — fixed by the rotation
|
|
@@ -213,6 +220,9 @@ $placements: (
|
|
|
213
220
|
}
|
|
214
221
|
}
|
|
215
222
|
|
|
223
|
+
// color-ok: placements, not states — `$placements-used` is a mixin argument
|
|
224
|
+
// the gate cannot resolve, and every member is an edge plus an alignment
|
|
225
|
+
// (`top`, `bottom-start`, …) that `at()` turns into a position.
|
|
216
226
|
@each $placement in $placements-used {
|
|
217
227
|
$spec: map.get($placements, $placement);
|
|
218
228
|
|
|
@@ -239,5 +249,23 @@ $placements: (
|
|
|
239
249
|
@include faces($edge, $border);
|
|
240
250
|
}
|
|
241
251
|
}
|
|
252
|
+
|
|
253
|
+
// A side edge under RTL: the arrow already sits on the mirrored side (`at()`
|
|
254
|
+
// is logical), so the outline moves to the mirrored faces — see `faces()`.
|
|
255
|
+
// Keyed on the `dir` the CDK writes on the pane's own host, as a CHILD
|
|
256
|
+
// combinator, rather than on any RTL ancestor: an overlay created `ltr` inside
|
|
257
|
+
// an `rtl` page lays out `ltr`, and a descendant match would outline it wrong.
|
|
258
|
+
@if $border != null and ($edge == left or $edge == right) {
|
|
259
|
+
$mirrored: left;
|
|
260
|
+
|
|
261
|
+
@if $edge == left {
|
|
262
|
+
$mirrored: right;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
[dir='rtl'] > #{$pane}--#{$placement} #{$panel}::after {
|
|
266
|
+
border: 0;
|
|
267
|
+
@include faces($mirrored, $border);
|
|
268
|
+
}
|
|
269
|
+
}
|
|
242
270
|
}
|
|
243
271
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ngwr",
|
|
3
|
-
"version": "14.
|
|
3
|
+
"version": "14.9.0",
|
|
4
4
|
"bin": {
|
|
5
5
|
"ngwr-mcp": "mcp/server.js"
|
|
6
6
|
},
|
|
@@ -49,7 +49,15 @@
|
|
|
49
49
|
"@angular/router": ">=22.0.0",
|
|
50
50
|
"rxjs": "^7.0.0",
|
|
51
51
|
"date-fns": "^3.0.0 || ^4.0.0",
|
|
52
|
-
"luxon": "^3.0.0"
|
|
52
|
+
"luxon": "^3.0.0",
|
|
53
|
+
"prosemirror-commands": "^1.7.2",
|
|
54
|
+
"prosemirror-history": "^1.5.0",
|
|
55
|
+
"prosemirror-inputrules": "^1.5.1",
|
|
56
|
+
"prosemirror-keymap": "^1.2.3",
|
|
57
|
+
"prosemirror-model": "^1.25.8",
|
|
58
|
+
"prosemirror-schema-list": "^1.5.1",
|
|
59
|
+
"prosemirror-state": "^1.4.4",
|
|
60
|
+
"prosemirror-view": "^1.42.3"
|
|
53
61
|
},
|
|
54
62
|
"peerDependenciesMeta": {
|
|
55
63
|
"@angular/router": {
|
|
@@ -60,6 +68,30 @@
|
|
|
60
68
|
},
|
|
61
69
|
"luxon": {
|
|
62
70
|
"optional": true
|
|
71
|
+
},
|
|
72
|
+
"prosemirror-commands": {
|
|
73
|
+
"optional": true
|
|
74
|
+
},
|
|
75
|
+
"prosemirror-history": {
|
|
76
|
+
"optional": true
|
|
77
|
+
},
|
|
78
|
+
"prosemirror-inputrules": {
|
|
79
|
+
"optional": true
|
|
80
|
+
},
|
|
81
|
+
"prosemirror-keymap": {
|
|
82
|
+
"optional": true
|
|
83
|
+
},
|
|
84
|
+
"prosemirror-model": {
|
|
85
|
+
"optional": true
|
|
86
|
+
},
|
|
87
|
+
"prosemirror-schema-list": {
|
|
88
|
+
"optional": true
|
|
89
|
+
},
|
|
90
|
+
"prosemirror-state": {
|
|
91
|
+
"optional": true
|
|
92
|
+
},
|
|
93
|
+
"prosemirror-view": {
|
|
94
|
+
"optional": true
|
|
63
95
|
}
|
|
64
96
|
},
|
|
65
97
|
"dependencies": {
|
|
@@ -276,6 +308,11 @@
|
|
|
276
308
|
"types": "./types/ngwr-dropdown.d.ts",
|
|
277
309
|
"default": "./fesm2022/ngwr-dropdown.mjs"
|
|
278
310
|
},
|
|
311
|
+
"./editor": {
|
|
312
|
+
"sass": "./editor/styles/_index.scss",
|
|
313
|
+
"types": "./types/ngwr-editor.d.ts",
|
|
314
|
+
"default": "./fesm2022/ngwr-editor.mjs"
|
|
315
|
+
},
|
|
279
316
|
"./empty": {
|
|
280
317
|
"sass": "./empty/styles/_index.scss",
|
|
281
318
|
"types": "./types/ngwr-empty.d.ts",
|
|
@@ -764,6 +801,10 @@
|
|
|
764
801
|
"types": "./types/ngwr-dropdown-testing.d.ts",
|
|
765
802
|
"default": "./fesm2022/ngwr-dropdown-testing.mjs"
|
|
766
803
|
},
|
|
804
|
+
"./editor/testing": {
|
|
805
|
+
"types": "./types/ngwr-editor-testing.d.ts",
|
|
806
|
+
"default": "./fesm2022/ngwr-editor-testing.mjs"
|
|
807
|
+
},
|
|
767
808
|
"./event-calendar/testing": {
|
|
768
809
|
"types": "./types/ngwr-event-calendar-testing.d.ts",
|
|
769
810
|
"default": "./fesm2022/ngwr-event-calendar-testing.mjs"
|