ngwr 6.1.1 → 7.0.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/LICENSE +1 -3
- package/README.md +179 -32
- package/affix/styles/_index.scss +12 -0
- package/alert/styles/_index.scss +75 -32
- package/anchor/styles/_index.scss +59 -0
- package/aurora/aurora.scss +1 -0
- package/aurora/styles/_index.scss +30 -0
- package/avatar/styles/_index.scss +30 -14
- package/back-top/styles/_index.scss +42 -0
- package/badge/styles/_index.scss +80 -0
- package/badge/styles/_tag.scss +81 -0
- package/bar-chart/styles/_index.scss +56 -0
- package/blur-text/blur-text.scss +1 -0
- package/blur-text/styles/_index.scss +14 -0
- package/border-glow/border-glow.scss +4 -0
- package/border-glow/styles/_index.scss +228 -0
- package/breadcrumbs/breadcrumbs.scss +1 -0
- package/breadcrumbs/styles/_index.scss +76 -0
- package/button/styles/_index.scss +148 -125
- package/calendar/styles/_index.scss +252 -0
- package/calendar-heatmap/styles/_index.scss +69 -0
- package/card/card.scss +1 -0
- package/card/styles/_index.scss +96 -0
- package/carousel/styles/_index.scss +102 -0
- package/cascader/cascader.scss +1 -0
- package/cascader/styles/_index.scss +174 -0
- package/checkbox/styles/_index.scss +76 -60
- package/circular-text/circular-text.scss +1 -0
- package/circular-text/styles/_index.scss +45 -0
- package/click-spark/click-spark.scss +1 -0
- package/click-spark/styles/_index.scss +16 -0
- package/collapse/styles/_index.scss +92 -0
- package/color-picker/styles/_index.scss +247 -0
- package/command-palette/styles/_index.scss +188 -0
- package/compare/styles/_index.scss +100 -0
- package/context-menu/styles/_index.scss +112 -0
- package/counter/styles/_index.scss +44 -0
- package/date-picker/styles/_index.scss +204 -0
- package/decrypt-text/decrypt-text.scss +1 -0
- package/decrypt-text/styles/_index.scss +26 -0
- package/density/styles/_index.scss +37 -0
- package/descriptions/styles/_index.scss +104 -0
- package/dialog/styles/_index.scss +101 -27
- package/divider/styles/_index.scss +43 -24
- package/donut-chart/styles/_index.scss +76 -0
- package/drag-drop/sortable-list.scss +1 -0
- package/drag-drop/styles/_index.scss +99 -0
- package/drawer/styles/_index.scss +164 -0
- package/dropdown/styles/_index.scss +76 -56
- package/empty/styles/_index.scss +49 -0
- package/falling-text/falling-text.scss +1 -0
- package/falling-text/styles/_index.scss +30 -0
- package/fesm2022/ngwr-affix.mjs +102 -0
- package/fesm2022/ngwr-affix.mjs.map +1 -0
- package/fesm2022/ngwr-alert.mjs +70 -52
- package/fesm2022/ngwr-alert.mjs.map +1 -1
- package/fesm2022/ngwr-anchor.mjs +103 -0
- package/fesm2022/ngwr-anchor.mjs.map +1 -0
- package/fesm2022/ngwr-aurora.mjs +309 -0
- package/fesm2022/ngwr-aurora.mjs.map +1 -0
- package/fesm2022/ngwr-avatar.mjs +81 -71
- package/fesm2022/ngwr-avatar.mjs.map +1 -1
- package/fesm2022/ngwr-back-top.mjs +81 -0
- package/fesm2022/ngwr-back-top.mjs.map +1 -0
- package/fesm2022/ngwr-badge.mjs +192 -0
- package/fesm2022/ngwr-badge.mjs.map +1 -0
- package/fesm2022/ngwr-bar-chart.mjs +69 -0
- package/fesm2022/ngwr-bar-chart.mjs.map +1 -0
- package/fesm2022/ngwr-blur-text.mjs +181 -0
- package/fesm2022/ngwr-blur-text.mjs.map +1 -0
- package/fesm2022/ngwr-border-glow.mjs +278 -0
- package/fesm2022/ngwr-border-glow.mjs.map +1 -0
- package/fesm2022/ngwr-breadcrumbs.mjs +101 -0
- package/fesm2022/ngwr-breadcrumbs.mjs.map +1 -0
- package/fesm2022/ngwr-button.mjs +179 -104
- package/fesm2022/ngwr-button.mjs.map +1 -1
- package/fesm2022/ngwr-calendar-heatmap.mjs +145 -0
- package/fesm2022/ngwr-calendar-heatmap.mjs.map +1 -0
- package/fesm2022/ngwr-calendar.mjs +402 -0
- package/fesm2022/ngwr-calendar.mjs.map +1 -0
- package/fesm2022/ngwr-card.mjs +100 -0
- package/fesm2022/ngwr-card.mjs.map +1 -0
- package/fesm2022/ngwr-carousel.mjs +128 -0
- package/fesm2022/ngwr-carousel.mjs.map +1 -0
- package/fesm2022/ngwr-cascader.mjs +280 -0
- package/fesm2022/ngwr-cascader.mjs.map +1 -0
- package/fesm2022/ngwr-checkbox.mjs +214 -54
- package/fesm2022/ngwr-checkbox.mjs.map +1 -1
- package/fesm2022/ngwr-circular-text.mjs +168 -0
- package/fesm2022/ngwr-circular-text.mjs.map +1 -0
- package/fesm2022/ngwr-click-spark.mjs +163 -0
- package/fesm2022/ngwr-click-spark.mjs.map +1 -0
- package/fesm2022/ngwr-clipboard.mjs +130 -0
- package/fesm2022/ngwr-clipboard.mjs.map +1 -0
- package/fesm2022/ngwr-collapse.mjs +232 -0
- package/fesm2022/ngwr-collapse.mjs.map +1 -0
- package/fesm2022/ngwr-color-picker.mjs +646 -0
- package/fesm2022/ngwr-color-picker.mjs.map +1 -0
- package/fesm2022/ngwr-command-palette.mjs +259 -0
- package/fesm2022/ngwr-command-palette.mjs.map +1 -0
- package/fesm2022/ngwr-compare.mjs +137 -0
- package/fesm2022/ngwr-compare.mjs.map +1 -0
- package/fesm2022/ngwr-confetti.mjs +160 -0
- package/fesm2022/ngwr-confetti.mjs.map +1 -0
- package/fesm2022/ngwr-context-menu.mjs +653 -0
- package/fesm2022/ngwr-context-menu.mjs.map +1 -0
- package/fesm2022/ngwr-cookie.mjs +127 -0
- package/fesm2022/ngwr-cookie.mjs.map +1 -0
- package/fesm2022/ngwr-counter.mjs +415 -0
- package/fesm2022/ngwr-counter.mjs.map +1 -0
- package/fesm2022/ngwr-date-adapter-fns.mjs +180 -0
- package/fesm2022/ngwr-date-adapter-fns.mjs.map +1 -0
- package/fesm2022/ngwr-date-adapter-luxon.mjs +201 -0
- package/fesm2022/ngwr-date-adapter-luxon.mjs.map +1 -0
- package/fesm2022/ngwr-date-adapter.mjs +419 -0
- package/fesm2022/ngwr-date-adapter.mjs.map +1 -0
- package/fesm2022/ngwr-date-picker.mjs +624 -0
- package/fesm2022/ngwr-date-picker.mjs.map +1 -0
- package/fesm2022/ngwr-decrypt-text.mjs +396 -0
- package/fesm2022/ngwr-decrypt-text.mjs.map +1 -0
- package/fesm2022/ngwr-density.mjs +157 -0
- package/fesm2022/ngwr-density.mjs.map +1 -0
- package/fesm2022/ngwr-descriptions.mjs +83 -0
- package/fesm2022/ngwr-descriptions.mjs.map +1 -0
- package/fesm2022/ngwr-dialog.mjs +249 -377
- package/fesm2022/ngwr-dialog.mjs.map +1 -1
- package/fesm2022/ngwr-directives.mjs +315 -0
- package/fesm2022/ngwr-directives.mjs.map +1 -0
- package/fesm2022/ngwr-divider.mjs +74 -59
- package/fesm2022/ngwr-divider.mjs.map +1 -1
- package/fesm2022/ngwr-donut-chart.mjs +131 -0
- package/fesm2022/ngwr-donut-chart.mjs.map +1 -0
- package/fesm2022/ngwr-drag-drop.mjs +117 -0
- package/fesm2022/ngwr-drag-drop.mjs.map +1 -0
- package/fesm2022/ngwr-drawer.mjs +315 -0
- package/fesm2022/ngwr-drawer.mjs.map +1 -0
- package/fesm2022/ngwr-dropdown.mjs +276 -229
- package/fesm2022/ngwr-dropdown.mjs.map +1 -1
- package/fesm2022/ngwr-empty.mjs +57 -0
- package/fesm2022/ngwr-empty.mjs.map +1 -0
- package/fesm2022/ngwr-falling-text.mjs +316 -0
- package/fesm2022/ngwr-falling-text.mjs.map +1 -0
- package/fesm2022/ngwr-file-upload.mjs +260 -0
- package/fesm2022/ngwr-file-upload.mjs.map +1 -0
- package/fesm2022/ngwr-form.mjs +133 -48
- package/fesm2022/ngwr-form.mjs.map +1 -1
- package/fesm2022/ngwr-fuzzy-text.mjs +373 -0
- package/fesm2022/ngwr-fuzzy-text.mjs.map +1 -0
- package/fesm2022/ngwr-gauge.mjs +83 -0
- package/fesm2022/ngwr-gauge.mjs.map +1 -0
- package/fesm2022/ngwr-glitch-text.mjs +67 -0
- package/fesm2022/ngwr-glitch-text.mjs.map +1 -0
- package/fesm2022/ngwr-gradient-text.mjs +109 -0
- package/fesm2022/ngwr-gradient-text.mjs.map +1 -0
- package/fesm2022/ngwr-hotkey.mjs +263 -0
- package/fesm2022/ngwr-hotkey.mjs.map +1 -0
- package/fesm2022/ngwr-i18n-en.mjs +168 -0
- package/fesm2022/ngwr-i18n-en.mjs.map +1 -0
- package/fesm2022/ngwr-i18n-ru.mjs +156 -0
- package/fesm2022/ngwr-i18n-ru.mjs.map +1 -0
- package/fesm2022/ngwr-i18n.mjs +478 -0
- package/fesm2022/ngwr-i18n.mjs.map +1 -0
- package/fesm2022/ngwr-icon-adapters-feather.mjs +74 -0
- package/fesm2022/ngwr-icon-adapters-feather.mjs.map +1 -0
- package/fesm2022/ngwr-icon-adapters-lucide.mjs +88 -0
- package/fesm2022/ngwr-icon-adapters-lucide.mjs.map +1 -0
- package/fesm2022/ngwr-icon.mjs +189 -649
- package/fesm2022/ngwr-icon.mjs.map +1 -1
- package/fesm2022/ngwr-image-cropper.mjs +299 -0
- package/fesm2022/ngwr-image-cropper.mjs.map +1 -0
- package/fesm2022/ngwr-input-number.mjs +239 -0
- package/fesm2022/ngwr-input-number.mjs.map +1 -0
- package/fesm2022/ngwr-input-otp.mjs +216 -0
- package/fesm2022/ngwr-input-otp.mjs.map +1 -0
- package/fesm2022/ngwr-input.mjs +183 -104
- package/fesm2022/ngwr-input.mjs.map +1 -1
- package/fesm2022/ngwr-keyboard.mjs +47 -0
- package/fesm2022/ngwr-keyboard.mjs.map +1 -0
- package/fesm2022/ngwr-knob.mjs +227 -0
- package/fesm2022/ngwr-knob.mjs.map +1 -0
- package/fesm2022/ngwr-layout.mjs +197 -0
- package/fesm2022/ngwr-layout.mjs.map +1 -0
- package/fesm2022/ngwr-lightbox.mjs +131 -0
- package/fesm2022/ngwr-lightbox.mjs.map +1 -0
- package/fesm2022/ngwr-line-chart.mjs +176 -0
- package/fesm2022/ngwr-line-chart.mjs.map +1 -0
- package/fesm2022/ngwr-list.mjs +132 -0
- package/fesm2022/ngwr-list.mjs.map +1 -0
- package/fesm2022/ngwr-loading-bar.mjs +160 -0
- package/fesm2022/ngwr-loading-bar.mjs.map +1 -0
- package/fesm2022/ngwr-marquee.mjs +224 -0
- package/fesm2022/ngwr-marquee.mjs.map +1 -0
- package/fesm2022/ngwr-media.mjs +132 -0
- package/fesm2022/ngwr-media.mjs.map +1 -0
- package/fesm2022/ngwr-mention.mjs +374 -0
- package/fesm2022/ngwr-mention.mjs.map +1 -0
- package/fesm2022/ngwr-meta.mjs +266 -0
- package/fesm2022/ngwr-meta.mjs.map +1 -0
- package/fesm2022/ngwr-meter-group.mjs +73 -0
- package/fesm2022/ngwr-meter-group.mjs.map +1 -0
- package/fesm2022/ngwr-overlay.mjs +145 -0
- package/fesm2022/ngwr-overlay.mjs.map +1 -0
- package/fesm2022/ngwr-page-header.mjs +53 -0
- package/fesm2022/ngwr-page-header.mjs.map +1 -0
- package/fesm2022/ngwr-pagination.mjs +152 -96
- package/fesm2022/ngwr-pagination.mjs.map +1 -1
- package/fesm2022/ngwr-pipes.mjs +290 -11
- package/fesm2022/ngwr-pipes.mjs.map +1 -1
- package/fesm2022/ngwr-platform.mjs +63 -0
- package/fesm2022/ngwr-platform.mjs.map +1 -0
- package/fesm2022/ngwr-popconfirm.mjs +188 -0
- package/fesm2022/ngwr-popconfirm.mjs.map +1 -0
- package/fesm2022/ngwr-popover.mjs +361 -0
- package/fesm2022/ngwr-popover.mjs.map +1 -0
- package/fesm2022/ngwr-progress.mjs +47 -39
- package/fesm2022/ngwr-progress.mjs.map +1 -1
- package/fesm2022/ngwr-qr.mjs +160 -179
- package/fesm2022/ngwr-qr.mjs.map +1 -1
- package/fesm2022/ngwr-radio.mjs +204 -0
- package/fesm2022/ngwr-radio.mjs.map +1 -0
- package/fesm2022/ngwr-rating.mjs +180 -0
- package/fesm2022/ngwr-rating.mjs.map +1 -0
- package/fesm2022/ngwr-result.mjs +119 -0
- package/fesm2022/ngwr-result.mjs.map +1 -0
- package/fesm2022/ngwr-rotating-text.mjs +256 -0
- package/fesm2022/ngwr-rotating-text.mjs.map +1 -0
- package/fesm2022/ngwr-scramble-text.mjs +165 -0
- package/fesm2022/ngwr-scramble-text.mjs.map +1 -0
- package/fesm2022/ngwr-scroll.mjs +107 -0
- package/fesm2022/ngwr-scroll.mjs.map +1 -0
- package/fesm2022/ngwr-segmented.mjs +96 -0
- package/fesm2022/ngwr-segmented.mjs.map +1 -0
- package/fesm2022/ngwr-select.mjs +844 -309
- package/fesm2022/ngwr-select.mjs.map +1 -1
- package/fesm2022/ngwr-shiny-text.mjs +127 -0
- package/fesm2022/ngwr-shiny-text.mjs.map +1 -0
- package/fesm2022/ngwr-sidebar.mjs +134 -0
- package/fesm2022/ngwr-sidebar.mjs.map +1 -0
- package/fesm2022/ngwr-skeleton.mjs +59 -34
- package/fesm2022/ngwr-skeleton.mjs.map +1 -1
- package/fesm2022/ngwr-slider.mjs +234 -0
- package/fesm2022/ngwr-slider.mjs.map +1 -0
- package/fesm2022/ngwr-sparkline.mjs +104 -0
- package/fesm2022/ngwr-sparkline.mjs.map +1 -0
- package/fesm2022/ngwr-speed-dial.mjs +79 -0
- package/fesm2022/ngwr-speed-dial.mjs.map +1 -0
- package/fesm2022/ngwr-spinner.mjs +34 -28
- package/fesm2022/ngwr-spinner.mjs.map +1 -1
- package/fesm2022/ngwr-splash-cursor.mjs +970 -0
- package/fesm2022/ngwr-splash-cursor.mjs.map +1 -0
- package/fesm2022/ngwr-split-text.mjs +200 -0
- package/fesm2022/ngwr-split-text.mjs.map +1 -0
- package/fesm2022/ngwr-splitter.mjs +125 -0
- package/fesm2022/ngwr-splitter.mjs.map +1 -0
- package/fesm2022/ngwr-spotlight-card.mjs +138 -0
- package/fesm2022/ngwr-spotlight-card.mjs.map +1 -0
- package/fesm2022/ngwr-squircle.mjs +320 -0
- package/fesm2022/ngwr-squircle.mjs.map +1 -0
- package/fesm2022/ngwr-star-border.mjs +72 -0
- package/fesm2022/ngwr-star-border.mjs.map +1 -0
- package/fesm2022/ngwr-statistic.mjs +220 -0
- package/fesm2022/ngwr-statistic.mjs.map +1 -0
- package/fesm2022/ngwr-stepper.mjs +186 -0
- package/fesm2022/ngwr-stepper.mjs.map +1 -0
- package/fesm2022/ngwr-storage.mjs +317 -0
- package/fesm2022/ngwr-storage.mjs.map +1 -0
- package/fesm2022/ngwr-switch.mjs +99 -0
- package/fesm2022/ngwr-switch.mjs.map +1 -0
- package/fesm2022/ngwr-table.mjs +217 -206
- package/fesm2022/ngwr-table.mjs.map +1 -1
- package/fesm2022/ngwr-tabs.mjs +217 -0
- package/fesm2022/ngwr-tabs.mjs.map +1 -0
- package/fesm2022/ngwr-textarea.mjs +106 -120
- package/fesm2022/ngwr-textarea.mjs.map +1 -1
- package/fesm2022/ngwr-theme.mjs +152 -0
- package/fesm2022/ngwr-theme.mjs.map +1 -0
- package/fesm2022/ngwr-tilt-card.mjs +137 -0
- package/fesm2022/ngwr-tilt-card.mjs.map +1 -0
- package/fesm2022/ngwr-timeline.mjs +73 -0
- package/fesm2022/ngwr-timeline.mjs.map +1 -0
- package/fesm2022/ngwr-toast.mjs +446 -0
- package/fesm2022/ngwr-toast.mjs.map +1 -0
- package/fesm2022/ngwr-toolbar.mjs +46 -0
- package/fesm2022/ngwr-toolbar.mjs.map +1 -0
- package/fesm2022/ngwr-tree.mjs +483 -0
- package/fesm2022/ngwr-tree.mjs.map +1 -0
- package/fesm2022/ngwr-typewriter.mjs +229 -0
- package/fesm2022/ngwr-typewriter.mjs.map +1 -0
- package/fesm2022/ngwr-typography.mjs +79 -0
- package/fesm2022/ngwr-typography.mjs.map +1 -0
- package/fesm2022/ngwr-utils.mjs +535 -0
- package/fesm2022/ngwr-utils.mjs.map +1 -0
- package/fesm2022/ngwr-validators.mjs +214 -0
- package/fesm2022/ngwr-validators.mjs.map +1 -0
- package/fesm2022/ngwr-version.mjs +51 -0
- package/fesm2022/ngwr-version.mjs.map +1 -0
- package/fesm2022/ngwr-virtual-scroll.mjs +99 -0
- package/fesm2022/ngwr-virtual-scroll.mjs.map +1 -0
- package/fesm2022/ngwr-waves.mjs +356 -0
- package/fesm2022/ngwr-waves.mjs.map +1 -0
- package/fesm2022/ngwr-window.mjs +1141 -0
- package/fesm2022/ngwr-window.mjs.map +1 -0
- package/fesm2022/ngwr.mjs +0 -3
- package/fesm2022/ngwr.mjs.map +1 -1
- package/file-upload/styles/_index.scss +152 -0
- package/form/styles/_index.scss +85 -42
- package/gauge/styles/_index.scss +37 -0
- package/glitch-text/glitch-text.scss +1 -0
- package/glitch-text/styles/_index.scss +144 -0
- package/gradient-text/gradient-text.scss +1 -0
- package/gradient-text/styles/_index.scss +113 -0
- package/icon/styles/_index.scss +21 -15
- package/image-cropper/styles/_index.scss +114 -0
- package/input/styles/_index.scss +133 -93
- package/input-number/styles/_index.scss +75 -0
- package/input-otp/styles/_index.scss +53 -0
- package/keyboard/styles/_index.scss +55 -0
- package/knob/styles/_index.scss +54 -0
- package/layout/styles/_index.scss +65 -0
- package/lightbox/lightbox.scss +1 -0
- package/lightbox/styles/_index.scss +144 -0
- package/line-chart/styles/_index.scss +93 -0
- package/list/list.scss +1 -0
- package/list/styles/_index.scss +101 -0
- package/loading-bar/loading-bar.scss +1 -0
- package/loading-bar/styles/_index.scss +29 -0
- package/marquee/marquee.scss +1 -0
- package/marquee/styles/_index.scss +138 -0
- package/mention/styles/_index.scss +47 -0
- package/meter-group/styles/_index.scss +61 -0
- package/package.json +576 -99
- package/page-header/styles/_index.scss +78 -0
- package/pagination/styles/_index.scss +89 -34
- package/popconfirm/styles/_index.scss +32 -0
- package/popover/styles/_index.scss +83 -0
- package/progress/styles/_index.scss +29 -14
- package/qr/styles/_index.scss +6 -3
- package/radio/styles/_index.scss +111 -0
- package/rating/styles/_index.scss +63 -0
- package/result/styles/_index.scss +69 -0
- package/rotating-text/rotating-text.scss +1 -0
- package/rotating-text/styles/_index.scss +39 -0
- package/schematics/collection.json +37 -0
- package/schematics/component-style/index.js +49 -0
- package/{cdk/utils/index.d.ts → schematics/component-style/schema.js} +2 -8
- package/schematics/component-style/schema.json +20 -0
- package/schematics/icon-set/index.js +96 -0
- package/schematics/icon-set/schema.js +8 -0
- package/schematics/icon-set/schema.json +39 -0
- package/schematics/migrations/v7/index.js +187 -0
- package/schematics/migrations.json +10 -0
- package/schematics/ng-add/index.js +180 -0
- package/schematics/ng-add/schema.js +8 -0
- package/schematics/ng-add/schema.json +80 -0
- package/schematics/page/index.js +63 -0
- package/schematics/page/schema.js +8 -0
- package/schematics/page/schema.json +39 -0
- package/schematics/page/templates.js +198 -0
- package/schematics/provider/index.js +126 -0
- package/schematics/provider/schema.js +8 -0
- package/schematics/provider/schema.json +52 -0
- package/schematics/use/index.js +143 -0
- package/schematics/use/schema.js +8 -0
- package/schematics/use/schema.json +25 -0
- package/schematics/use/symbol-map.json +356 -0
- package/scramble-text/scramble-text.scss +1 -0
- package/scramble-text/styles/_index.scss +8 -0
- package/segmented/styles/_index.scss +92 -0
- package/select/styles/_index.scss +245 -159
- package/shiny-text/shiny-text.scss +1 -0
- package/shiny-text/styles/_index.scss +101 -0
- package/sidebar/styles/_index.scss +208 -0
- package/skeleton/styles/_index.scss +33 -33
- package/slider/styles/_index.scss +77 -0
- package/sparkline/styles/_index.scss +9 -0
- package/speed-dial/styles/_index.scss +158 -0
- package/spinner/styles/_index.scss +38 -22
- package/splash-cursor/splash-cursor.scss +1 -0
- package/splash-cursor/styles/_index.scss +27 -0
- package/split-text/split-text.scss +1 -0
- package/split-text/styles/_index.scss +22 -0
- package/splitter/styles/_index.scss +85 -0
- package/spotlight-card/spotlight-card.scss +1 -0
- package/spotlight-card/styles/_index.scss +43 -0
- package/squircle/styles/_index.scss +34 -0
- package/star-border/star-border.scss +1 -0
- package/star-border/styles/_index.scss +118 -0
- package/statistic/styles/_index.scss +54 -0
- package/stepper/styles/_index.scss +162 -0
- package/styles/_animations.scss +198 -0
- package/styles/_breakpoints.scss +75 -0
- package/styles/_grid.scss +71 -0
- package/styles/_reset.scss +123 -0
- package/styles/_typography.scss +122 -0
- package/styles.scss +102 -13
- package/switch/styles/_index.scss +82 -0
- package/table/styles/_index.scss +255 -4
- package/tabs/styles/_index.scss +71 -0
- package/textarea/styles/_index.scss +47 -56
- package/theme/styles/_colors.scss +83 -0
- package/theme/styles/_dark.scss +85 -0
- package/theme/styles/_focus.scss +93 -0
- package/theme/styles/_index.scss +5 -0
- package/theme/styles/_mixins.scss +57 -0
- package/theme/styles/_variables.scss +118 -0
- package/tilt-card/styles/_index.scss +40 -0
- package/tilt-card/tilt-card.scss +1 -0
- package/timeline/styles/_index.scss +127 -0
- package/toast/styles/_index.scss +263 -0
- package/toolbar/styles/_index.scss +65 -0
- package/tree/styles/_index.scss +271 -0
- package/types/ngwr-affix.d.ts +43 -0
- package/types/ngwr-alert.d.ts +68 -0
- package/types/ngwr-anchor.d.ts +53 -0
- package/types/ngwr-aurora.d.ts +52 -0
- package/types/ngwr-avatar.d.ts +90 -0
- package/types/ngwr-back-top.d.ts +37 -0
- package/types/ngwr-badge.d.ts +158 -0
- package/types/ngwr-bar-chart.d.ts +47 -0
- package/types/ngwr-blur-text.d.ts +62 -0
- package/types/ngwr-border-glow.d.ts +66 -0
- package/types/ngwr-breadcrumbs.d.ts +61 -0
- package/types/ngwr-button.d.ts +176 -0
- package/types/ngwr-calendar-heatmap.d.ts +58 -0
- package/types/ngwr-calendar.d.ts +116 -0
- package/types/ngwr-card.d.ts +50 -0
- package/types/ngwr-carousel.d.ts +57 -0
- package/types/ngwr-cascader.d.ts +107 -0
- package/types/ngwr-checkbox.d.ts +139 -0
- package/types/ngwr-circular-text.d.ts +49 -0
- package/types/ngwr-click-spark.d.ts +52 -0
- package/types/ngwr-clipboard.d.ts +53 -0
- package/types/ngwr-collapse.d.ts +139 -0
- package/types/ngwr-color-picker.d.ts +302 -0
- package/types/ngwr-command-palette.d.ts +113 -0
- package/types/ngwr-compare.d.ts +55 -0
- package/types/ngwr-confetti.d.ts +70 -0
- package/types/ngwr-context-menu.d.ts +207 -0
- package/types/ngwr-cookie.d.ts +60 -0
- package/types/ngwr-counter.d.ts +182 -0
- package/types/ngwr-date-adapter-fns.d.ts +73 -0
- package/types/ngwr-date-adapter-luxon.d.ts +73 -0
- package/types/ngwr-date-adapter.d.ts +198 -0
- package/types/ngwr-date-picker.d.ts +117 -0
- package/types/ngwr-decrypt-text.d.ts +85 -0
- package/types/ngwr-density.d.ts +97 -0
- package/types/ngwr-descriptions.d.ts +41 -0
- package/types/ngwr-dialog.d.ts +210 -0
- package/types/ngwr-directives.d.ts +125 -0
- package/types/ngwr-divider.d.ts +73 -0
- package/types/ngwr-donut-chart.d.ts +53 -0
- package/types/ngwr-drag-drop.d.ts +83 -0
- package/types/ngwr-drawer.d.ts +155 -0
- package/types/ngwr-dropdown.d.ts +124 -0
- package/types/ngwr-empty.d.ts +38 -0
- package/types/ngwr-falling-text.d.ts +63 -0
- package/types/ngwr-file-upload.d.ts +94 -0
- package/types/ngwr-form.d.ts +95 -0
- package/types/ngwr-fuzzy-text.d.ts +74 -0
- package/types/ngwr-gauge.d.ts +39 -0
- package/types/ngwr-glitch-text.d.ts +31 -0
- package/types/ngwr-gradient-text.d.ts +46 -0
- package/types/ngwr-hotkey.d.ts +142 -0
- package/types/ngwr-i18n-en.d.ts +18 -0
- package/types/ngwr-i18n-ru.d.ts +6 -0
- package/types/ngwr-i18n.d.ts +336 -0
- package/types/ngwr-icon-adapters-feather.d.ts +44 -0
- package/types/ngwr-icon-adapters-lucide.d.ts +54 -0
- package/types/ngwr-icon.d.ts +180 -0
- package/types/ngwr-image-cropper.d.ts +110 -0
- package/types/ngwr-input-number.d.ts +77 -0
- package/types/ngwr-input-otp.d.ts +78 -0
- package/types/ngwr-input.d.ts +131 -0
- package/types/ngwr-keyboard.d.ts +34 -0
- package/types/ngwr-knob.d.ts +77 -0
- package/types/ngwr-layout.d.ts +89 -0
- package/types/ngwr-lightbox.d.ts +50 -0
- package/types/ngwr-line-chart.d.ts +90 -0
- package/types/ngwr-list.d.ts +71 -0
- package/types/ngwr-loading-bar.d.ts +79 -0
- package/types/ngwr-marquee.d.ts +95 -0
- package/types/ngwr-media.d.ts +74 -0
- package/types/ngwr-mention.d.ts +110 -0
- package/types/ngwr-meta.d.ts +164 -0
- package/types/ngwr-meter-group.d.ts +57 -0
- package/types/ngwr-overlay.d.ts +110 -0
- package/types/ngwr-page-header.d.ts +35 -0
- package/types/ngwr-pagination.d.ts +119 -0
- package/types/ngwr-pipes.d.ts +177 -0
- package/types/ngwr-platform.d.ts +38 -0
- package/types/ngwr-popconfirm.d.ts +79 -0
- package/types/ngwr-popover.d.ts +90 -0
- package/types/ngwr-progress.d.ts +33 -0
- package/types/ngwr-qr.d.ts +56 -0
- package/types/ngwr-radio.d.ts +120 -0
- package/types/ngwr-rating.d.ts +62 -0
- package/types/ngwr-result.d.ts +64 -0
- package/types/ngwr-rotating-text.d.ts +72 -0
- package/types/ngwr-scramble-text.d.ts +49 -0
- package/types/ngwr-scroll.d.ts +65 -0
- package/types/ngwr-segmented.d.ts +65 -0
- package/types/ngwr-select.d.ts +413 -0
- package/types/ngwr-shiny-text.d.ts +70 -0
- package/types/ngwr-sidebar.d.ts +83 -0
- package/types/ngwr-skeleton.d.ts +41 -0
- package/types/ngwr-slider.d.ts +86 -0
- package/types/ngwr-sparkline.d.ts +48 -0
- package/types/ngwr-speed-dial.d.ts +51 -0
- package/types/ngwr-spinner.d.ts +41 -0
- package/types/ngwr-splash-cursor.d.ts +94 -0
- package/types/ngwr-split-text.d.ts +83 -0
- package/types/ngwr-splitter.d.ts +52 -0
- package/types/ngwr-spotlight-card.d.ts +71 -0
- package/types/ngwr-squircle.d.ts +132 -0
- package/types/ngwr-star-border.d.ts +40 -0
- package/types/ngwr-statistic.d.ts +88 -0
- package/types/ngwr-stepper.d.ts +99 -0
- package/types/ngwr-storage.d.ts +178 -0
- package/types/ngwr-switch.d.ts +39 -0
- package/types/ngwr-table.d.ts +237 -0
- package/types/ngwr-tabs.d.ts +125 -0
- package/types/ngwr-textarea.d.ts +60 -0
- package/types/ngwr-theme.d.ts +124 -0
- package/types/ngwr-tilt-card.d.ts +63 -0
- package/types/ngwr-timeline.d.ts +40 -0
- package/types/ngwr-toast.d.ts +230 -0
- package/types/ngwr-toolbar.d.ts +30 -0
- package/types/ngwr-tree.d.ts +150 -0
- package/types/ngwr-typewriter.d.ts +84 -0
- package/types/ngwr-typography.d.ts +56 -0
- package/types/ngwr-utils.d.ts +447 -0
- package/types/ngwr-validators.d.ts +70 -0
- package/types/ngwr-version.d.ts +44 -0
- package/types/ngwr-virtual-scroll.d.ts +64 -0
- package/types/ngwr-waves.d.ts +71 -0
- package/types/ngwr-window.d.ts +437 -0
- package/typewriter/styles/_index.scss +33 -0
- package/typewriter/typewriter.scss +1 -0
- package/typography/styles/_index.scss +211 -0
- package/virtual-scroll/styles/_index.scss +27 -0
- package/virtual-scroll/virtual-scroll.scss +1 -0
- package/waves/styles/_index.scss +24 -0
- package/waves/waves.scss +1 -0
- package/window/styles/_index.scss +430 -0
- package/alert/index.d.ts +0 -32
- package/alert/styles/theming.scss +0 -26
- package/alert/styles/vars.scss +0 -11
- package/avatar/index.d.ts +0 -30
- package/button/index.d.ts +0 -45
- package/button/styles/vars.scss +0 -13
- package/cdk/index.d.ts +0 -24
- package/cdk/rxjs/index.d.ts +0 -40
- package/cdk/types/index.d.ts +0 -27
- package/checkbox/index.d.ts +0 -31
- package/checkbox/styles/vars.scss +0 -16
- package/dialog/index.d.ts +0 -193
- package/dialog/styles/vars.scss +0 -7
- package/divider/index.d.ts +0 -16
- package/dropdown/index.d.ts +0 -68
- package/dropdown/styles/vars.scss +0 -18
- package/fesm2022/ngwr-cdk-rxjs.mjs +0 -53
- package/fesm2022/ngwr-cdk-rxjs.mjs.map +0 -1
- package/fesm2022/ngwr-cdk-types.mjs +0 -44
- package/fesm2022/ngwr-cdk-types.mjs.map +0 -1
- package/fesm2022/ngwr-cdk-utils.mjs +0 -30
- package/fesm2022/ngwr-cdk-utils.mjs.map +0 -1
- package/fesm2022/ngwr-cdk.mjs +0 -46
- package/fesm2022/ngwr-cdk.mjs.map +0 -1
- package/fesm2022/ngwr-tag.mjs +0 -87
- package/fesm2022/ngwr-tag.mjs.map +0 -1
- package/form/index.d.ts +0 -28
- package/icon/index.d.ts +0 -830
- package/icon/styles/vars.scss +0 -3
- package/input/index.d.ts +0 -43
- package/input/styles/vars.scss +0 -17
- package/pagination/index.d.ts +0 -34
- package/pagination/styles/vars.scss +0 -14
- package/pipes/index.d.ts +0 -17
- package/progress/index.d.ts +0 -13
- package/progress/styles/theming.scss +0 -8
- package/progress/styles/vars.scss +0 -6
- package/qr/index.d.ts +0 -127
- package/select/index.d.ts +0 -121
- package/select/styles/vars.scss +0 -32
- package/skeleton/index.d.ts +0 -13
- package/spinner/index.d.ts +0 -23
- package/styles/animations.scss +0 -92
- package/styles/cdk.scss +0 -5
- package/styles/colors.scss +0 -72
- package/styles/grid.scss +0 -99
- package/styles/maps.scss +0 -31
- package/styles/reset.scss +0 -112
- package/styles/variables.scss +0 -72
- package/table/index.d.ts +0 -101
- package/table/styles/table-filter.scss +0 -202
- package/table/styles/table-sort.scss +0 -47
- package/table/styles/table.scss +0 -232
- package/table/styles/vars.scss +0 -21
- package/tag/index.d.ts +0 -24
- package/tag/styles/_index.scss +0 -32
- package/tag/styles/theming.scss +0 -21
- package/tag/styles/vars.scss +0 -12
- package/textarea/index.d.ts +0 -47
- package/textarea/styles/vars.scss +0 -17
- /package/{index.d.ts → types/ngwr.d.ts} +0 -0
|
@@ -0,0 +1,447 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @license
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Represents a value that may be absent.
|
|
11
|
+
*
|
|
12
|
+
* Preferred over inline `T | null | undefined` unions for consistency
|
|
13
|
+
* across the codebase and to reduce repetition in public API signatures.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* function findUser(id: string): Maybe<User> {
|
|
18
|
+
* return db.get(id) ?? null;
|
|
19
|
+
* }
|
|
20
|
+
*
|
|
21
|
+
* const user: Maybe<User> = findUser('42');
|
|
22
|
+
*
|
|
23
|
+
* if (isDefined(user)) {
|
|
24
|
+
* // user is User
|
|
25
|
+
* }
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* @see {@link isDefined} — type guard that narrows `Maybe<T>` to `T`.
|
|
29
|
+
*/
|
|
30
|
+
type Maybe<T> = T | null | undefined;
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* @license
|
|
34
|
+
*
|
|
35
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
36
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
37
|
+
*/
|
|
38
|
+
/**
|
|
39
|
+
* Explicitly untyped value.
|
|
40
|
+
*
|
|
41
|
+
* Use in places where `any` is intentional and unavoidable,
|
|
42
|
+
* such as generic wrappers around third-party APIs that do not
|
|
43
|
+
* expose precise types.
|
|
44
|
+
*
|
|
45
|
+
* Prefer narrowing to a concrete type whenever possible.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* ```ts
|
|
49
|
+
* function wrapThirdPartyCallback(fn: (...args: SafeAny[]) => SafeAny): void {
|
|
50
|
+
* // ...
|
|
51
|
+
* }
|
|
52
|
+
* ```
|
|
53
|
+
*/
|
|
54
|
+
type SafeAny = any;
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* @license
|
|
58
|
+
*
|
|
59
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
60
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
61
|
+
*/
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Type guard that checks if a value is neither `null` nor `undefined`.
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```ts
|
|
68
|
+
* const maybeValue: Maybe<number> = getValue();
|
|
69
|
+
*
|
|
70
|
+
* if (isDefined(maybeValue)) {
|
|
71
|
+
* // here maybeValue is number
|
|
72
|
+
* console.log(maybeValue.toFixed(2));
|
|
73
|
+
* }
|
|
74
|
+
* ```
|
|
75
|
+
*
|
|
76
|
+
* @see {@link Maybe}
|
|
77
|
+
*/
|
|
78
|
+
declare function isDefined<T>(value: Maybe<T>): value is T;
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* @license
|
|
82
|
+
*
|
|
83
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
84
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
85
|
+
*/
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Type guard that checks if a value is an array with at least one element.
|
|
89
|
+
*
|
|
90
|
+
* @example
|
|
91
|
+
* ```ts
|
|
92
|
+
* const items: Maybe<string[]> = getItems();
|
|
93
|
+
*
|
|
94
|
+
* if (isNonEmptyArray(items)) {
|
|
95
|
+
* // items is string[]
|
|
96
|
+
* console.log(items[0]);
|
|
97
|
+
* }
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
declare function isNonEmptyArray<T>(value: Maybe<T[]>): value is [T, ...T[]];
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* @license
|
|
104
|
+
*
|
|
105
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
106
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
107
|
+
*/
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Type guard that checks whether a value looks like an RxJS `Observable`.
|
|
111
|
+
*
|
|
112
|
+
* Uses duck-typing: verifies that the object has a `subscribe` function.
|
|
113
|
+
* Does not require an actual `Observable` instance.
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```ts
|
|
117
|
+
* if (isObservable(stream)) {
|
|
118
|
+
* stream.subscribe(value => console.log(value));
|
|
119
|
+
* }
|
|
120
|
+
* ```
|
|
121
|
+
*/
|
|
122
|
+
declare function isObservable<T = unknown>(value: unknown): value is Observable<T>;
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Clamps `value` into the inclusive `[min, max]` range.
|
|
126
|
+
*
|
|
127
|
+
* @example
|
|
128
|
+
* ```ts
|
|
129
|
+
* clamp(140, 0, 100); // 100
|
|
130
|
+
* clamp(-3, 0, 100); // 0
|
|
131
|
+
* clamp(42, 0, 100); // 42
|
|
132
|
+
* ```
|
|
133
|
+
*/
|
|
134
|
+
declare function clamp(value: number, min: number, max: number): number;
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* Rounds `value` to `decimals` fraction digits, compensating the usual
|
|
138
|
+
* floating point drift (`0.1 + 0.2` rounds to `0.3`, not `0.30000000000000004`).
|
|
139
|
+
*
|
|
140
|
+
* @example
|
|
141
|
+
* ```ts
|
|
142
|
+
* round(0.1 + 0.2, 2); // 0.3
|
|
143
|
+
* round(1.005, 2); // 1.01
|
|
144
|
+
* round(7.4); // 7
|
|
145
|
+
* ```
|
|
146
|
+
*/
|
|
147
|
+
declare function round(value: number, decimals?: number): number;
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Input-transform factory: coerces any bound value to a number, falling
|
|
151
|
+
* back to `fallback` for `null` / `undefined` / unparsable input. The
|
|
152
|
+
* standard transform for numeric `input()`s across ngwr.
|
|
153
|
+
*
|
|
154
|
+
* @example
|
|
155
|
+
* ```ts
|
|
156
|
+
* readonly speed = input(4, { transform: numAttr(4) });
|
|
157
|
+
* ```
|
|
158
|
+
*/
|
|
159
|
+
declare const numAttr: (fallback: number) => (value: unknown) => number;
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* @license
|
|
163
|
+
*
|
|
164
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
165
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
166
|
+
*/
|
|
167
|
+
/**
|
|
168
|
+
* Options for {@link resolveCssSize}.
|
|
169
|
+
*/
|
|
170
|
+
interface ResolveCssSizeOptions {
|
|
171
|
+
/**
|
|
172
|
+
* Fallback value used when the raw input is `null` or `undefined`.
|
|
173
|
+
*
|
|
174
|
+
* Accepts the same formats as the `raw` parameter:
|
|
175
|
+
* numbers, pixel strings, rem strings, percentages, etc.
|
|
176
|
+
*/
|
|
177
|
+
defaultValue?: unknown;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* @license
|
|
182
|
+
*
|
|
183
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
184
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
185
|
+
*/
|
|
186
|
+
/**
|
|
187
|
+
* Result of resolving a CSS size value via {@link resolveCssSize}.
|
|
188
|
+
*/
|
|
189
|
+
interface ResolvedCssSize {
|
|
190
|
+
/**
|
|
191
|
+
* Value suitable for use in CSS styles (e.g. `"48px"`, `"3rem"`, `"80%"`).
|
|
192
|
+
*/
|
|
193
|
+
cssValue: string;
|
|
194
|
+
/**
|
|
195
|
+
* Equivalent value in pixels, when computable.
|
|
196
|
+
*
|
|
197
|
+
* `null` for percentage-based or unknown units where a pixel
|
|
198
|
+
* equivalent cannot be determined.
|
|
199
|
+
*/
|
|
200
|
+
pxValue: number | null;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* @license
|
|
205
|
+
*
|
|
206
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
207
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
208
|
+
*/
|
|
209
|
+
|
|
210
|
+
/**
|
|
211
|
+
* Resolves a raw size value into a CSS string and an optional pixel equivalent.
|
|
212
|
+
*
|
|
213
|
+
* Supported formats:
|
|
214
|
+
* - `number` → pixels (`48` → `"48px"`)
|
|
215
|
+
* - `"12px"` → pixels (`"12px"` → `"12px"`)
|
|
216
|
+
* - `"3rem"` → rems via root (`"3rem"` → `"3rem"`, pxValue = 3 × root font size)
|
|
217
|
+
* - `"80%"` → percentage (`"80%"` → `"80%"`, pxValue = null)
|
|
218
|
+
* - `"15"` → pixels (`"15"` → `"15px"`)
|
|
219
|
+
* - anything else → passed through as-is, pxValue = null
|
|
220
|
+
*
|
|
221
|
+
* @example
|
|
222
|
+
* ```ts
|
|
223
|
+
* const size = resolveCssSize('3rem', { defaultValue: '6rem' });
|
|
224
|
+
* // size.cssValue === '3rem'
|
|
225
|
+
* // size.pxValue === 3 * getRootFontSize()
|
|
226
|
+
* ```
|
|
227
|
+
*
|
|
228
|
+
* @param raw - Value to resolve. Accepts numbers, pixel/rem/percent strings, or `null`/`undefined`.
|
|
229
|
+
* @param options - Optional configuration.
|
|
230
|
+
* @returns Resolved CSS value and its pixel equivalent when computable.
|
|
231
|
+
*
|
|
232
|
+
* @see {@link ResolvedCssSize}
|
|
233
|
+
* @see {@link ResolveCssSizeOptions}
|
|
234
|
+
*/
|
|
235
|
+
declare function resolveCssSize(raw: unknown, options?: ResolveCssSizeOptions): ResolvedCssSize;
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* @license
|
|
239
|
+
*
|
|
240
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
241
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
242
|
+
*/
|
|
243
|
+
/**
|
|
244
|
+
* Reads the root font size (in pixels) from
|
|
245
|
+
* `getComputedStyle(document.documentElement).fontSize`.
|
|
246
|
+
*
|
|
247
|
+
* Typical use case: converting `rem` values to pixels for layout calculations.
|
|
248
|
+
*
|
|
249
|
+
* Falls back to the provided value when:
|
|
250
|
+
* - DOM is not available (SSR);
|
|
251
|
+
* - `getComputedStyle` fails or returns an unparseable value.
|
|
252
|
+
*
|
|
253
|
+
* @example
|
|
254
|
+
* ```ts
|
|
255
|
+
* const rootFontSize = getRootFontSize(); // e.g. 16
|
|
256
|
+
* const customFallback = getRootFontSize(14); // uses 14 if DOM is unavailable
|
|
257
|
+
* ```
|
|
258
|
+
*
|
|
259
|
+
* @param fallback - Value in pixels when DOM is unavailable. Defaults to `16`.
|
|
260
|
+
* @returns Root font size in pixels.
|
|
261
|
+
*/
|
|
262
|
+
declare function getRootFontSize(fallback?: number): number;
|
|
263
|
+
|
|
264
|
+
/**
|
|
265
|
+
* @license
|
|
266
|
+
*
|
|
267
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
268
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
269
|
+
*/
|
|
270
|
+
/** Return every focusable descendant of `root` in DOM order. */
|
|
271
|
+
declare function getFocusableElements(root: HTMLElement): readonly HTMLElement[];
|
|
272
|
+
/**
|
|
273
|
+
* Trap Tab navigation inside `root` for a keyboard event — call from a
|
|
274
|
+
* `keydown` handler. Cycles focus from first ↔ last focusable element.
|
|
275
|
+
* Returns `true` when focus was redirected (event was handled).
|
|
276
|
+
*/
|
|
277
|
+
declare function trapFocus(root: HTMLElement, event: KeyboardEvent): boolean;
|
|
278
|
+
|
|
279
|
+
/**
|
|
280
|
+
* @license
|
|
281
|
+
*
|
|
282
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
283
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
284
|
+
*/
|
|
285
|
+
/**
|
|
286
|
+
* Generates a pseudo-random, DOM-safe identifier.
|
|
287
|
+
*
|
|
288
|
+
* Produced ids:
|
|
289
|
+
* - are prefixed to avoid collisions with host-application ids;
|
|
290
|
+
* - contain only `[a-z0-9-]` characters;
|
|
291
|
+
* - use `crypto.getRandomValues` when available, falling back to `Math.random`.
|
|
292
|
+
*
|
|
293
|
+
* **Not suitable for cryptographic or security-sensitive purposes** —
|
|
294
|
+
* intended only for UI element identifiers (`id`, `for`, `aria-*`, etc.).
|
|
295
|
+
*
|
|
296
|
+
* @example
|
|
297
|
+
* ```ts
|
|
298
|
+
* randomId();
|
|
299
|
+
* // → "wr-a8f2bx1k9q4z"
|
|
300
|
+
*
|
|
301
|
+
* randomId('ng', 8);
|
|
302
|
+
* // → "ng-k2f9mbeo"
|
|
303
|
+
*
|
|
304
|
+
* randomId('wr', 24);
|
|
305
|
+
* // → "wr-a8f2bx1k9q4zmneo73wplr"
|
|
306
|
+
* ```
|
|
307
|
+
*
|
|
308
|
+
* @param prefix - Namespace prefix prepended before the random segment. Defaults to `'wr'`.
|
|
309
|
+
* @param length - Length of the random segment. Clamped to `[4, 64]`. Defaults to `12`.
|
|
310
|
+
* @param random - Custom random byte source `(byteLength) => Uint8Array`.
|
|
311
|
+
* When omitted, uses `crypto.getRandomValues` with a `Math.random` fallback.
|
|
312
|
+
* @returns A pseudo-random id string matching `/^[a-z]+-[a-z0-9]+$/`.
|
|
313
|
+
*/
|
|
314
|
+
declare function randomId(prefix?: string, length?: number, random?: (byteLength: number) => Uint8Array): string;
|
|
315
|
+
|
|
316
|
+
/**
|
|
317
|
+
* @license
|
|
318
|
+
*
|
|
319
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
320
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
321
|
+
*/
|
|
322
|
+
/**
|
|
323
|
+
* A function that does nothing.
|
|
324
|
+
*
|
|
325
|
+
* Useful as a default callback, placeholder event handler,
|
|
326
|
+
* or to explicitly signal intentional no-ops.
|
|
327
|
+
*
|
|
328
|
+
* @example
|
|
329
|
+
* ```ts
|
|
330
|
+
* @Component({ ... })
|
|
331
|
+
* export class MyComponent {
|
|
332
|
+
* onTouched: () => void = noop;
|
|
333
|
+
* }
|
|
334
|
+
* ```
|
|
335
|
+
*/
|
|
336
|
+
declare const noop: () => void;
|
|
337
|
+
|
|
338
|
+
/**
|
|
339
|
+
* @license
|
|
340
|
+
*
|
|
341
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
342
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
343
|
+
*/
|
|
344
|
+
/** A debounced function — same signature as the original plus `cancel`. */
|
|
345
|
+
type WrDebouncedFn<TArgs extends readonly unknown[]> = ((...args: TArgs) => void) & {
|
|
346
|
+
readonly cancel: () => void;
|
|
347
|
+
};
|
|
348
|
+
/**
|
|
349
|
+
* Wrap `fn` so it only fires `waitMs` after the last invocation.
|
|
350
|
+
* Useful for resize / scroll / input handlers.
|
|
351
|
+
*
|
|
352
|
+
* @example
|
|
353
|
+
* ```ts
|
|
354
|
+
* const onResize = debounce(() => recalcLayout(), 150);
|
|
355
|
+
* window.addEventListener('resize', onResize);
|
|
356
|
+
* ```
|
|
357
|
+
*/
|
|
358
|
+
declare function debounce<TArgs extends readonly unknown[]>(fn: (...args: TArgs) => void, waitMs: number): WrDebouncedFn<TArgs>;
|
|
359
|
+
|
|
360
|
+
/**
|
|
361
|
+
* @license
|
|
362
|
+
*
|
|
363
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
364
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
365
|
+
*/
|
|
366
|
+
/** A throttled function — same signature as the original plus `cancel`. */
|
|
367
|
+
type WrThrottledFn<TArgs extends readonly unknown[]> = ((...args: TArgs) => void) & {
|
|
368
|
+
readonly cancel: () => void;
|
|
369
|
+
};
|
|
370
|
+
/**
|
|
371
|
+
* Wrap `fn` so it fires at most once every `waitMs`. Leading-edge call
|
|
372
|
+
* fires immediately; trailing-edge call fires once at the end of the window
|
|
373
|
+
* if there were further invocations.
|
|
374
|
+
*/
|
|
375
|
+
declare function throttle<TArgs extends readonly unknown[]>(fn: (...args: TArgs) => void, waitMs: number): WrThrottledFn<TArgs>;
|
|
376
|
+
|
|
377
|
+
/**
|
|
378
|
+
* @license
|
|
379
|
+
*
|
|
380
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
381
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
382
|
+
*/
|
|
383
|
+
/**
|
|
384
|
+
* Canonical `KeyboardEvent.key` values used across ngwr components.
|
|
385
|
+
* Use these constants instead of magic strings so refactors are searchable.
|
|
386
|
+
*/
|
|
387
|
+
declare const KEYS: {
|
|
388
|
+
readonly ENTER: "Enter";
|
|
389
|
+
readonly ESCAPE: "Escape";
|
|
390
|
+
readonly TAB: "Tab";
|
|
391
|
+
readonly SPACE: " ";
|
|
392
|
+
readonly BACKSPACE: "Backspace";
|
|
393
|
+
readonly DELETE: "Delete";
|
|
394
|
+
readonly ARROW_UP: "ArrowUp";
|
|
395
|
+
readonly ARROW_DOWN: "ArrowDown";
|
|
396
|
+
readonly ARROW_LEFT: "ArrowLeft";
|
|
397
|
+
readonly ARROW_RIGHT: "ArrowRight";
|
|
398
|
+
readonly HOME: "Home";
|
|
399
|
+
readonly END: "End";
|
|
400
|
+
readonly PAGE_UP: "PageUp";
|
|
401
|
+
readonly PAGE_DOWN: "PageDown";
|
|
402
|
+
};
|
|
403
|
+
type WrKey = (typeof KEYS)[keyof typeof KEYS];
|
|
404
|
+
|
|
405
|
+
/**
|
|
406
|
+
* @license
|
|
407
|
+
*
|
|
408
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
409
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
410
|
+
*/
|
|
411
|
+
/** True when any modifier key (Ctrl / Cmd / Alt / Shift / Meta) is held. */
|
|
412
|
+
declare function hasModifier(event: KeyboardEvent): boolean;
|
|
413
|
+
/**
|
|
414
|
+
* True when the key is a single printable character (letters, digits,
|
|
415
|
+
* punctuation, etc.). Skips function keys, arrows, modifiers, and named
|
|
416
|
+
* keys like `Backspace` or `Tab`.
|
|
417
|
+
*/
|
|
418
|
+
declare function isPrintableKey(event: KeyboardEvent): boolean;
|
|
419
|
+
|
|
420
|
+
/**
|
|
421
|
+
* @license
|
|
422
|
+
*
|
|
423
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
424
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
425
|
+
*/
|
|
426
|
+
/**
|
|
427
|
+
* Logs a coloured pill to the browser console followed by a payload.
|
|
428
|
+
*
|
|
429
|
+
* Useful when you need to scan a noisy console for a specific subsystem's
|
|
430
|
+
* messages. The pill is rendered with the CSS `%c` console formatting trick.
|
|
431
|
+
*
|
|
432
|
+
* @example
|
|
433
|
+
* ```ts
|
|
434
|
+
* badgeLog('icons', '#3969e2', { name: 'plus', registered: true });
|
|
435
|
+
* // → [icons] { name: 'plus', registered: true }
|
|
436
|
+
* ```
|
|
437
|
+
*
|
|
438
|
+
* @param badgeText Short label shown inside the pill.
|
|
439
|
+
* @param color CSS colour applied to the pill border and text.
|
|
440
|
+
* @param message Anything you'd pass to `console.log` as the second argument.
|
|
441
|
+
*
|
|
442
|
+
* @internal
|
|
443
|
+
*/
|
|
444
|
+
declare function badgeLog(badgeText: string, color: string, message: unknown): void;
|
|
445
|
+
|
|
446
|
+
export { KEYS, badgeLog, clamp, debounce, getFocusableElements, getRootFontSize, hasModifier, isDefined, isNonEmptyArray, isObservable, isPrintableKey, noop, numAttr, randomId, resolveCssSize, round, throttle, trapFocus };
|
|
447
|
+
export type { Maybe, ResolveCssSizeOptions, ResolvedCssSize, SafeAny, WrDebouncedFn, WrKey, WrThrottledFn };
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @license
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Bundled `ValidatorFn`s — pure functions, no DOM, no DI. Mirrors the
|
|
12
|
+
* API shape of Angular's built-in `Validators` so it composes cleanly:
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { Validators } from '@angular/forms';
|
|
16
|
+
* import { WrValidators } from 'ngwr/validators';
|
|
17
|
+
*
|
|
18
|
+
* new FormControl('', [
|
|
19
|
+
* Validators.required,
|
|
20
|
+
* WrValidators.cardNumber,
|
|
21
|
+
* WrValidators.cvc(3),
|
|
22
|
+
* WrValidators.match('password'),
|
|
23
|
+
* WrValidators.oneOf(['xs', 'sm', 'md', 'lg', 'xl']),
|
|
24
|
+
* ]);
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* Each error is keyed under the validator name (e.g. `cardNumber`,
|
|
28
|
+
* `cvc`, `iban`) so consumers can branch in templates.
|
|
29
|
+
*
|
|
30
|
+
* Anything Angular already ships (`required`, `email`, `min`, `max`,
|
|
31
|
+
* `pattern`, …) is deliberately NOT duplicated here.
|
|
32
|
+
*
|
|
33
|
+
* @see https://ngwr.dev/validators
|
|
34
|
+
*/
|
|
35
|
+
declare const WrValidators: {
|
|
36
|
+
/** No whitespace anywhere in the value. */
|
|
37
|
+
noWhitespace: (control: AbstractControl) => ValidationErrors | null;
|
|
38
|
+
/** 3, 4, 6, or 8-digit hex colour (`#abc`, `#1a2b3c`, `#1a2b3c4d`). */
|
|
39
|
+
hexColor: (control: AbstractControl) => ValidationErrors | null;
|
|
40
|
+
/**
|
|
41
|
+
* Valid URL. Accepts any scheme by default; pass `{ protocols: ['https'] }`
|
|
42
|
+
* to restrict.
|
|
43
|
+
*/
|
|
44
|
+
url: (options?: {
|
|
45
|
+
readonly protocols?: readonly string[];
|
|
46
|
+
}) => ValidatorFn;
|
|
47
|
+
/** Credit card number — Luhn check + 13-19 digit length. Spaces and dashes are stripped first. */
|
|
48
|
+
cardNumber: (control: AbstractControl) => ValidationErrors | null;
|
|
49
|
+
/** CVC / CVV — N digits (default 3). Common: 3 for Visa/MC, 4 for Amex. */
|
|
50
|
+
cvc: (length?: number) => ValidatorFn;
|
|
51
|
+
/**
|
|
52
|
+
* IBAN — basic structure (CC + 2 digits + up to 30 alphanumerics) +
|
|
53
|
+
* the mod-97 check. Country-length tables not enforced.
|
|
54
|
+
*/
|
|
55
|
+
iban: (control: AbstractControl) => ValidationErrors | null;
|
|
56
|
+
/**
|
|
57
|
+
* Value must equal a sibling control's value (e.g. confirm-password).
|
|
58
|
+
* The target lookup uses `control.parent.get(name)`, so it works
|
|
59
|
+
* inside `FormGroup` and nested groups.
|
|
60
|
+
*/
|
|
61
|
+
match: (targetName: string) => ValidatorFn;
|
|
62
|
+
/** Value must be one of the allowed entries (strict equality). */
|
|
63
|
+
oneOf: <T>(allowed: readonly T[]) => ValidatorFn;
|
|
64
|
+
/** Value (Date | parseable) must be ≥ `min`. */
|
|
65
|
+
minDate: (min: Date | string | number) => ValidatorFn;
|
|
66
|
+
/** Value (Date | parseable) must be ≤ `max`. */
|
|
67
|
+
maxDate: (max: Date | string | number) => ValidatorFn;
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
export { WrValidators };
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @license
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* The ngwr library version string, kept in sync with
|
|
11
|
+
* `projects/lib/package.json` by `scripts/release-prepare.ts`.
|
|
12
|
+
*
|
|
13
|
+
* Prefer this over reading `package.json` at runtime — that requires a JSON
|
|
14
|
+
* import or `require`, neither of which tree-shakes well in Angular builds.
|
|
15
|
+
*
|
|
16
|
+
* Distinct from `Version` exported by `@angular/core`, which reports the
|
|
17
|
+
* loaded Angular runtime version (e.g. `'21.2.13'`), not ngwr's.
|
|
18
|
+
*/
|
|
19
|
+
declare const NGWR_VERSION = "7.0.0";
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* @license
|
|
23
|
+
*
|
|
24
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
25
|
+
* found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Injection token holding the ngwr library version string.
|
|
30
|
+
*
|
|
31
|
+
* Default factory returns {@link NGWR_VERSION}. Override it in tests or in
|
|
32
|
+
* apps that want to surface a custom build identifier.
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```ts
|
|
36
|
+
* @Component({...})
|
|
37
|
+
* export class FooterComponent {
|
|
38
|
+
* readonly version = inject(NGWR_VERSION_TOKEN);
|
|
39
|
+
* }
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
declare const NGWR_VERSION_TOKEN: InjectionToken<string>;
|
|
43
|
+
|
|
44
|
+
export { NGWR_VERSION, NGWR_VERSION_TOKEN };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { TrackByFunction, TemplateRef } from '@angular/core';
|
|
3
|
+
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Fixed-size virtual scroll viewport.
|
|
7
|
+
*
|
|
8
|
+
* Thin wrapper around CDK's `cdk-virtual-scroll-viewport` with ngwr
|
|
9
|
+
* theming and sensible buffer defaults. Project a single template — it's
|
|
10
|
+
* called per item with `let-item let-index="index"`.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```html
|
|
14
|
+
* <wr-virtual-scroll [items]="rows" [itemSize]="32" [height]="320">
|
|
15
|
+
* <ng-template let-row let-i="index">
|
|
16
|
+
* <div class="row">{{ i }}. {{ row.name }}</div>
|
|
17
|
+
* </ng-template>
|
|
18
|
+
* </wr-virtual-scroll>
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* @see https://ngwr.dev/components/virtual-scroll
|
|
22
|
+
*/
|
|
23
|
+
declare class WrVirtualScroll<T = unknown> {
|
|
24
|
+
/** Items to render. */
|
|
25
|
+
readonly items: _angular_core.InputSignal<readonly T[]>;
|
|
26
|
+
/** Per-item pixel height. All rows must be the same height. @default 32 */
|
|
27
|
+
readonly itemSize: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
28
|
+
/**
|
|
29
|
+
* Viewport height. Pass a number (`px`) or any CSS length string
|
|
30
|
+
* (`'80vh'`, `'40rem'`). @default 256
|
|
31
|
+
*/
|
|
32
|
+
readonly height: _angular_core.InputSignal<string | number>;
|
|
33
|
+
/**
|
|
34
|
+
* Pixels of rendered content kept above + below the viewport. CDK
|
|
35
|
+
* keeps adding rows until at least this many pixels are buffered.
|
|
36
|
+
* @default itemSize * 4
|
|
37
|
+
*/
|
|
38
|
+
readonly minBufferPx: _angular_core.InputSignal<number | undefined>;
|
|
39
|
+
/**
|
|
40
|
+
* Maximum pixels of buffered content before CDK starts recycling rows.
|
|
41
|
+
* Must be ≥ `minBufferPx`. @default itemSize * 8
|
|
42
|
+
*/
|
|
43
|
+
readonly maxBufferPx: _angular_core.InputSignal<number | undefined>;
|
|
44
|
+
/**
|
|
45
|
+
* `trackBy` function for the inner `*cdkVirtualFor`. Defaults to
|
|
46
|
+
* identity (recreates rows when the item reference changes).
|
|
47
|
+
*/
|
|
48
|
+
readonly trackBy: _angular_core.InputSignal<TrackByFunction<T>>;
|
|
49
|
+
protected readonly rowTemplate: _angular_core.Signal<TemplateRef<any>>;
|
|
50
|
+
protected readonly viewport: _angular_core.Signal<CdkVirtualScrollViewport>;
|
|
51
|
+
protected readonly resolvedHeight: _angular_core.Signal<string>;
|
|
52
|
+
protected readonly resolvedMinBuffer: _angular_core.Signal<number>;
|
|
53
|
+
protected readonly resolvedMaxBuffer: _angular_core.Signal<number>;
|
|
54
|
+
/** Scroll a specific index into view. Mirrors the CDK API. */
|
|
55
|
+
scrollToIndex(index: number, behavior?: ScrollBehavior): void;
|
|
56
|
+
/** Scroll to a pixel offset. */
|
|
57
|
+
scrollToOffset(offset: number, behavior?: ScrollBehavior): void;
|
|
58
|
+
/** Manually trigger size recheck (e.g. after host resize outside ResizeObserver). */
|
|
59
|
+
checkViewportSize(): void;
|
|
60
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<WrVirtualScroll<any>, never>;
|
|
61
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<WrVirtualScroll<any>, "wr-virtual-scroll", never, { "items": { "alias": "items"; "required": true; "isSignal": true; }; "itemSize": { "alias": "itemSize"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "minBufferPx": { "alias": "minBufferPx"; "required": false; "isSignal": true; }; "maxBufferPx": { "alias": "maxBufferPx"; "required": false; "isSignal": true; }; "trackBy": { "alias": "trackBy"; "required": false; "isSignal": true; }; }, {}, ["rowTemplate"], never, true, never>;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export { WrVirtualScroll };
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Wave-field background — a grid of lines drifting on perlin noise,
|
|
5
|
+
* nudged by the pointer. Fills its nearest positioned ancestor; put it
|
|
6
|
+
* behind hero copy or section content.
|
|
7
|
+
*
|
|
8
|
+
* Colours are theme-aware by default: a soft dark line on light surfaces,
|
|
9
|
+
* a faint white line on dark — override with `[lineColor]`.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```html
|
|
13
|
+
* <section style="position: relative">
|
|
14
|
+
* <wr-waves />
|
|
15
|
+
* <h1>Hero copy above the waves</h1>
|
|
16
|
+
* </section>
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @see https://ngwr.dev/animations/waves
|
|
20
|
+
*/
|
|
21
|
+
declare class WrWaves {
|
|
22
|
+
/** Line stroke colour. When unset, the theme decides. */
|
|
23
|
+
readonly lineColor: _angular_core.InputSignal<string | null>;
|
|
24
|
+
/** Background fill behind the lines. @default 'transparent' */
|
|
25
|
+
readonly backgroundColor: _angular_core.InputSignal<string>;
|
|
26
|
+
/** Horizontal noise drift per ms. @default 0.0125 */
|
|
27
|
+
readonly waveSpeedX: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
28
|
+
/** Vertical noise drift per ms. @default 0.005 */
|
|
29
|
+
readonly waveSpeedY: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
30
|
+
/** Horizontal wave amplitude in px. @default 32 */
|
|
31
|
+
readonly waveAmpX: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
32
|
+
/** Vertical wave amplitude in px. @default 16 */
|
|
33
|
+
readonly waveAmpY: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
34
|
+
/** Horizontal gap between lines in px. @default 10 */
|
|
35
|
+
readonly xGap: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
36
|
+
/** Vertical gap between points on a line in px. @default 32 */
|
|
37
|
+
readonly yGap: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
38
|
+
/** Velocity damping of the cursor spring, 0..1. @default 0.925 */
|
|
39
|
+
readonly friction: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
40
|
+
/** Pull-back strength of the cursor spring. @default 0.005 */
|
|
41
|
+
readonly tension: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
42
|
+
/** Max px a point can be dragged from rest. @default 100 */
|
|
43
|
+
readonly maxCursorMove: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
44
|
+
private readonly canvasRef;
|
|
45
|
+
private readonly host;
|
|
46
|
+
private readonly zone;
|
|
47
|
+
private readonly destroyRef;
|
|
48
|
+
private readonly platform;
|
|
49
|
+
private readonly isBrowser;
|
|
50
|
+
private ctx;
|
|
51
|
+
private readonly noise;
|
|
52
|
+
private lines;
|
|
53
|
+
private bounding;
|
|
54
|
+
private readonly mouse;
|
|
55
|
+
private rafId;
|
|
56
|
+
constructor();
|
|
57
|
+
private boot;
|
|
58
|
+
private setSize;
|
|
59
|
+
private setLines;
|
|
60
|
+
private tick;
|
|
61
|
+
private movePoints;
|
|
62
|
+
private moved;
|
|
63
|
+
private drawLines;
|
|
64
|
+
/** Explicit input wins; otherwise the theme's `--wr-waves-line-color`. */
|
|
65
|
+
private resolveLineColor;
|
|
66
|
+
private updateMouse;
|
|
67
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<WrWaves, never>;
|
|
68
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<WrWaves, "wr-waves", never, { "lineColor": { "alias": "lineColor"; "required": false; "isSignal": true; }; "backgroundColor": { "alias": "backgroundColor"; "required": false; "isSignal": true; }; "waveSpeedX": { "alias": "waveSpeedX"; "required": false; "isSignal": true; }; "waveSpeedY": { "alias": "waveSpeedY"; "required": false; "isSignal": true; }; "waveAmpX": { "alias": "waveAmpX"; "required": false; "isSignal": true; }; "waveAmpY": { "alias": "waveAmpY"; "required": false; "isSignal": true; }; "xGap": { "alias": "xGap"; "required": false; "isSignal": true; }; "yGap": { "alias": "yGap"; "required": false; "isSignal": true; }; "friction": { "alias": "friction"; "required": false; "isSignal": true; }; "tension": { "alias": "tension"; "required": false; "isSignal": true; }; "maxCursorMove": { "alias": "maxCursorMove"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export { WrWaves };
|