@fusion.dev/helix-headless 0.0.0-dev
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 +21 -0
- package/custom-elements.json +75202 -0
- package/dist/accordion/index.d.ts +2 -0
- package/dist/accordion/index.js +2 -0
- package/dist/accordion/item/accordion-item.d.ts +141 -0
- package/dist/accordion/item/accordion-item.js +214 -0
- package/dist/accordion/root/accordion-root.d.ts +57 -0
- package/dist/accordion/root/accordion-root.js +96 -0
- package/dist/announcement/index.d.ts +1 -0
- package/dist/announcement/index.js +1 -0
- package/dist/announcement/root/announcement-root.d.ts +106 -0
- package/dist/announcement/root/announcement-root.js +144 -0
- package/dist/app-header/index.d.ts +1 -0
- package/dist/app-header/index.js +1 -0
- package/dist/app-header/root/app-header-root.d.ts +113 -0
- package/dist/app-header/root/app-header-root.js +147 -0
- package/dist/avatar/group/avatar-group.d.ts +116 -0
- package/dist/avatar/group/avatar-group.js +136 -0
- package/dist/avatar/index.d.ts +2 -0
- package/dist/avatar/index.js +2 -0
- package/dist/avatar/root/avatar-root.d.ts +71 -0
- package/dist/avatar/root/avatar-root.js +147 -0
- package/dist/badge/index.d.ts +1 -0
- package/dist/badge/index.js +1 -0
- package/dist/badge/root/badge-root.d.ts +61 -0
- package/dist/badge/root/badge-root.js +121 -0
- package/dist/bar-chart/index.d.ts +1 -0
- package/dist/bar-chart/index.js +1 -0
- package/dist/bar-chart/root/bar-chart-root.d.ts +266 -0
- package/dist/bar-chart/root/bar-chart-root.js +515 -0
- package/dist/blockquote/index.d.ts +1 -0
- package/dist/blockquote/index.js +1 -0
- package/dist/blockquote/root/blockquote-root.d.ts +51 -0
- package/dist/blockquote/root/blockquote-root.js +84 -0
- package/dist/breadcrumbs/breadcrumb/breadcrumb.d.ts +104 -0
- package/dist/breadcrumbs/breadcrumb/breadcrumb.js +137 -0
- package/dist/breadcrumbs/index.d.ts +2 -0
- package/dist/breadcrumbs/index.js +2 -0
- package/dist/breadcrumbs/root/breadcrumbs-root.d.ts +77 -0
- package/dist/breadcrumbs/root/breadcrumbs-root.js +94 -0
- package/dist/button/index.d.ts +1 -0
- package/dist/button/index.js +1 -0
- package/dist/button/root/button-root.d.ts +251 -0
- package/dist/button/root/button-root.js +401 -0
- package/dist/button-group/index.d.ts +1 -0
- package/dist/button-group/index.js +1 -0
- package/dist/button-group/root/button-group-root.d.ts +62 -0
- package/dist/button-group/root/button-group-root.js +62 -0
- package/dist/callout/index.d.ts +1 -0
- package/dist/callout/index.js +1 -0
- package/dist/callout/root/callout-root.d.ts +72 -0
- package/dist/callout/root/callout-root.js +90 -0
- package/dist/card/index.d.ts +1 -0
- package/dist/card/index.js +1 -0
- package/dist/card/root/card-root.d.ts +54 -0
- package/dist/card/root/card-root.js +71 -0
- package/dist/carousel/index.d.ts +1 -0
- package/dist/carousel/index.js +1 -0
- package/dist/carousel/root/carousel-root.d.ts +399 -0
- package/dist/carousel/root/carousel-root.js +723 -0
- package/dist/chat/composer/chat-composer.d.ts +160 -0
- package/dist/chat/composer/chat-composer.js +273 -0
- package/dist/chat/index.d.ts +3 -0
- package/dist/chat/index.js +3 -0
- package/dist/chat/message/chat-message.d.ts +170 -0
- package/dist/chat/message/chat-message.js +271 -0
- package/dist/chat/root/chat-root.d.ts +216 -0
- package/dist/chat/root/chat-root.js +389 -0
- package/dist/checkbox/index.d.ts +1 -0
- package/dist/checkbox/index.js +1 -0
- package/dist/checkbox/root/checkbox-root.d.ts +108 -0
- package/dist/checkbox/root/checkbox-root.js +207 -0
- package/dist/checkbox-group/index.d.ts +1 -0
- package/dist/checkbox-group/index.js +1 -0
- package/dist/checkbox-group/root/checkbox-group-root.d.ts +155 -0
- package/dist/checkbox-group/root/checkbox-group-root.js +293 -0
- package/dist/code/index.d.ts +1 -0
- package/dist/code/index.js +1 -0
- package/dist/code/root/code-root.d.ts +36 -0
- package/dist/code/root/code-root.js +43 -0
- package/dist/code-block/index.d.ts +1 -0
- package/dist/code-block/index.js +1 -0
- package/dist/code-block/root/code-block-root.d.ts +112 -0
- package/dist/code-block/root/code-block-root.js +155 -0
- package/dist/color-input/index.d.ts +1 -0
- package/dist/color-input/index.js +1 -0
- package/dist/color-input/root/color-input-root.d.ts +227 -0
- package/dist/color-input/root/color-input-root.js +456 -0
- package/dist/color-picker/color.d.ts +74 -0
- package/dist/color-picker/color.js +238 -0
- package/dist/color-picker/index.d.ts +2 -0
- package/dist/color-picker/index.js +2 -0
- package/dist/color-picker/root/color-picker-root.d.ts +303 -0
- package/dist/color-picker/root/color-picker-root.js +576 -0
- package/dist/combobox/index.d.ts +1 -0
- package/dist/combobox/index.js +1 -0
- package/dist/combobox/root/combobox-root.d.ts +396 -0
- package/dist/combobox/root/combobox-root.js +808 -0
- package/dist/command/index.d.ts +1 -0
- package/dist/command/index.js +1 -0
- package/dist/command/root/command-root.d.ts +166 -0
- package/dist/command/root/command-root.js +353 -0
- package/dist/copy-button/index.d.ts +1 -0
- package/dist/copy-button/index.js +1 -0
- package/dist/copy-button/root/copy-button-root.d.ts +154 -0
- package/dist/copy-button/root/copy-button-root.js +225 -0
- package/dist/data-table/index.d.ts +2 -0
- package/dist/data-table/index.js +2 -0
- package/dist/data-table/root/data-table-root.d.ts +392 -0
- package/dist/data-table/root/data-table-root.js +729 -0
- package/dist/data-table/root/order.d.ts +116 -0
- package/dist/data-table/root/order.js +175 -0
- package/dist/date-input/index.d.ts +1 -0
- package/dist/date-input/index.js +1 -0
- package/dist/date-input/root/date-input-root.d.ts +361 -0
- package/dist/date-input/root/date-input-root.js +791 -0
- package/dist/date-picker/index.d.ts +1 -0
- package/dist/date-picker/index.js +1 -0
- package/dist/date-picker/root/date-picker-root.d.ts +361 -0
- package/dist/date-picker/root/date-picker-root.js +837 -0
- package/dist/dialog/index.d.ts +1 -0
- package/dist/dialog/index.js +1 -0
- package/dist/dialog/root/dialog-root.d.ts +185 -0
- package/dist/dialog/root/dialog-root.js +319 -0
- package/dist/divider/index.d.ts +1 -0
- package/dist/divider/index.js +1 -0
- package/dist/divider/root/divider-root.d.ts +68 -0
- package/dist/divider/root/divider-root.js +116 -0
- package/dist/donut-chart/index.d.ts +1 -0
- package/dist/donut-chart/index.js +1 -0
- package/dist/donut-chart/root/donut-chart-root.d.ts +209 -0
- package/dist/donut-chart/root/donut-chart-root.js +395 -0
- package/dist/drawer/index.d.ts +1 -0
- package/dist/drawer/index.js +1 -0
- package/dist/drawer/root/drawer-root.d.ts +144 -0
- package/dist/drawer/root/drawer-root.js +222 -0
- package/dist/drilldown/index.d.ts +2 -0
- package/dist/drilldown/index.js +2 -0
- package/dist/drilldown/item/drilldown-item.d.ts +87 -0
- package/dist/drilldown/item/drilldown-item.js +152 -0
- package/dist/drilldown/root/drilldown-root.d.ts +115 -0
- package/dist/drilldown/root/drilldown-root.js +263 -0
- package/dist/element-events.generated.d.ts +1 -0
- package/dist/element-events.generated.js +125 -0
- package/dist/empty/index.d.ts +1 -0
- package/dist/empty/index.js +1 -0
- package/dist/empty/root/empty-root.d.ts +47 -0
- package/dist/empty/root/empty-root.js +68 -0
- package/dist/file-input/index.d.ts +1 -0
- package/dist/file-input/index.js +1 -0
- package/dist/file-input/root/file-input-root.d.ts +196 -0
- package/dist/file-input/root/file-input-root.js +488 -0
- package/dist/format-date/index.d.ts +1 -0
- package/dist/format-date/index.js +1 -0
- package/dist/format-date/root/format-date-root.d.ts +151 -0
- package/dist/format-date/root/format-date-root.js +266 -0
- package/dist/heatmap/index.d.ts +2 -0
- package/dist/heatmap/index.js +2 -0
- package/dist/heatmap/root/buckets.d.ts +62 -0
- package/dist/heatmap/root/buckets.js +85 -0
- package/dist/heatmap/root/heatmap-root.d.ts +330 -0
- package/dist/heatmap/root/heatmap-root.js +526 -0
- package/dist/icon/index.d.ts +1 -0
- package/dist/icon/index.js +1 -0
- package/dist/icon/root/icon-root.d.ts +53 -0
- package/dist/icon/root/icon-root.js +93 -0
- package/dist/icon-button/index.d.ts +1 -0
- package/dist/icon-button/index.js +1 -0
- package/dist/icon-button/root/icon-button-root.d.ts +40 -0
- package/dist/icon-button/root/icon-button-root.js +46 -0
- package/dist/image/index.d.ts +1 -0
- package/dist/image/index.js +1 -0
- package/dist/image/root/image-root.d.ts +213 -0
- package/dist/image/root/image-root.js +335 -0
- package/dist/index.d.ts +99 -0
- package/dist/index.js +99 -0
- package/dist/input/index.d.ts +1 -0
- package/dist/input/index.js +1 -0
- package/dist/input/root/input-root.d.ts +281 -0
- package/dist/input/root/input-root.js +472 -0
- package/dist/kbd/index.d.ts +1 -0
- package/dist/kbd/index.js +1 -0
- package/dist/kbd/root/kbd-root.d.ts +98 -0
- package/dist/kbd/root/kbd-root.js +230 -0
- package/dist/legend/index.d.ts +1 -0
- package/dist/legend/index.js +1 -0
- package/dist/legend/root/legend-root.d.ts +83 -0
- package/dist/legend/root/legend-root.js +125 -0
- package/dist/line-chart/index.d.ts +1 -0
- package/dist/line-chart/index.js +1 -0
- package/dist/line-chart/root/line-chart-root.d.ts +238 -0
- package/dist/line-chart/root/line-chart-root.js +365 -0
- package/dist/list/index.d.ts +2 -0
- package/dist/list/index.js +2 -0
- package/dist/list/item/list-item.d.ts +95 -0
- package/dist/list/item/list-item.js +148 -0
- package/dist/list/root/list-root.d.ts +72 -0
- package/dist/list/root/list-root.js +61 -0
- package/dist/listbox/index.d.ts +1 -0
- package/dist/listbox/index.js +1 -0
- package/dist/listbox/root/listbox-root.d.ts +357 -0
- package/dist/listbox/root/listbox-root.js +890 -0
- package/dist/loader/index.d.ts +1 -0
- package/dist/loader/index.js +1 -0
- package/dist/loader/root/loader-root.d.ts +52 -0
- package/dist/loader/root/loader-root.js +74 -0
- package/dist/megamenu/index.d.ts +1 -0
- package/dist/megamenu/index.js +1 -0
- package/dist/megamenu/root/megamenu-root.d.ts +254 -0
- package/dist/megamenu/root/megamenu-root.js +526 -0
- package/dist/menu/index.d.ts +2 -0
- package/dist/menu/index.js +2 -0
- package/dist/menu/item/menu-item.d.ts +231 -0
- package/dist/menu/item/menu-item.js +405 -0
- package/dist/menu/root/menu-root.d.ts +158 -0
- package/dist/menu/root/menu-root.js +422 -0
- package/dist/meter/index.d.ts +1 -0
- package/dist/meter/index.js +1 -0
- package/dist/meter/root/meter-root.d.ts +234 -0
- package/dist/meter/root/meter-root.js +316 -0
- package/dist/navigation/index.d.ts +1 -0
- package/dist/navigation/index.js +1 -0
- package/dist/navigation/root/navigation-root.d.ts +55 -0
- package/dist/navigation/root/navigation-root.js +130 -0
- package/dist/notifications/index.d.ts +2 -0
- package/dist/notifications/index.js +2 -0
- package/dist/notifications/notification/notification.d.ts +181 -0
- package/dist/notifications/notification/notification.js +305 -0
- package/dist/notifications/root/notifications-root.d.ts +168 -0
- package/dist/notifications/root/notifications-root.js +291 -0
- package/dist/number-input/index.d.ts +1 -0
- package/dist/number-input/index.js +1 -0
- package/dist/number-input/root/number-input-root.d.ts +282 -0
- package/dist/number-input/root/number-input-root.js +592 -0
- package/dist/option/group/option-group.d.ts +38 -0
- package/dist/option/group/option-group.js +58 -0
- package/dist/option/index.d.ts +2 -0
- package/dist/option/index.js +2 -0
- package/dist/option/root/option-root.d.ts +194 -0
- package/dist/option/root/option-root.js +247 -0
- package/dist/outline/index.d.ts +1 -0
- package/dist/outline/index.js +1 -0
- package/dist/outline/root/outline-root.d.ts +237 -0
- package/dist/outline/root/outline-root.js +519 -0
- package/dist/pagination/index.d.ts +3 -0
- package/dist/pagination/index.js +3 -0
- package/dist/pagination/root/pagination-root.d.ts +390 -0
- package/dist/pagination/root/pagination-root.js +695 -0
- package/dist/pagination/size/pagination-size.d.ts +127 -0
- package/dist/pagination/size/pagination-size.js +232 -0
- package/dist/pagination/summary/pagination-summary.d.ts +90 -0
- package/dist/pagination/summary/pagination-summary.js +145 -0
- package/dist/pin-input/index.d.ts +1 -0
- package/dist/pin-input/index.js +1 -0
- package/dist/pin-input/root/pin-input-root.d.ts +292 -0
- package/dist/pin-input/root/pin-input-root.js +553 -0
- package/dist/popover/index.d.ts +1 -0
- package/dist/popover/index.js +1 -0
- package/dist/popover/root/popover-root.d.ts +108 -0
- package/dist/popover/root/popover-root.js +231 -0
- package/dist/progress/index.d.ts +1 -0
- package/dist/progress/index.js +1 -0
- package/dist/progress/root/progress-root.d.ts +125 -0
- package/dist/progress/root/progress-root.js +212 -0
- package/dist/qr-code/index.d.ts +1 -0
- package/dist/qr-code/index.js +1 -0
- package/dist/qr-code/root/qr-code-root.d.ts +93 -0
- package/dist/qr-code/root/qr-code-root.js +233 -0
- package/dist/quote/index.d.ts +1 -0
- package/dist/quote/index.js +1 -0
- package/dist/quote/root/quote-root.d.ts +36 -0
- package/dist/quote/root/quote-root.js +50 -0
- package/dist/radio/group/radio-group.d.ts +84 -0
- package/dist/radio/group/radio-group.js +170 -0
- package/dist/radio/index.d.ts +2 -0
- package/dist/radio/index.js +2 -0
- package/dist/radio/root/radio-root.d.ts +102 -0
- package/dist/radio/root/radio-root.js +151 -0
- package/dist/rating/index.d.ts +1 -0
- package/dist/rating/index.js +1 -0
- package/dist/rating/root/rating-root.d.ts +242 -0
- package/dist/rating/root/rating-root.js +484 -0
- package/dist/scroll-area/index.d.ts +1 -0
- package/dist/scroll-area/index.js +1 -0
- package/dist/scroll-area/root/scroll-area-root.d.ts +96 -0
- package/dist/scroll-area/root/scroll-area-root.js +215 -0
- package/dist/select/index.d.ts +1 -0
- package/dist/select/index.js +1 -0
- package/dist/select/root/select-root.d.ts +170 -0
- package/dist/select/root/select-root.js +419 -0
- package/dist/skeleton/index.d.ts +1 -0
- package/dist/skeleton/index.js +1 -0
- package/dist/skeleton/root/skeleton-root.d.ts +31 -0
- package/dist/skeleton/root/skeleton-root.js +42 -0
- package/dist/slider/index.d.ts +1 -0
- package/dist/slider/index.js +1 -0
- package/dist/slider/root/slider-root.d.ts +235 -0
- package/dist/slider/root/slider-root.js +488 -0
- package/dist/sparkline/index.d.ts +1 -0
- package/dist/sparkline/index.js +1 -0
- package/dist/sparkline/root/sparkline-root.d.ts +147 -0
- package/dist/sparkline/root/sparkline-root.js +278 -0
- package/dist/speed-dial/index.d.ts +2 -0
- package/dist/speed-dial/index.js +2 -0
- package/dist/speed-dial/item/speed-dial-item.d.ts +71 -0
- package/dist/speed-dial/item/speed-dial-item.js +113 -0
- package/dist/speed-dial/root/speed-dial-root.d.ts +122 -0
- package/dist/speed-dial/root/speed-dial-root.js +251 -0
- package/dist/splitter/index.d.ts +1 -0
- package/dist/splitter/index.js +1 -0
- package/dist/splitter/root/splitter-root.d.ts +491 -0
- package/dist/splitter/root/splitter-root.js +1030 -0
- package/dist/stat/group/stat-group.d.ts +30 -0
- package/dist/stat/group/stat-group.js +47 -0
- package/dist/stat/index.d.ts +2 -0
- package/dist/stat/index.js +2 -0
- package/dist/stat/root/stat-root.d.ts +62 -0
- package/dist/stat/root/stat-root.js +51 -0
- package/dist/steps/index.d.ts +2 -0
- package/dist/steps/index.js +2 -0
- package/dist/steps/root/steps-root.d.ts +110 -0
- package/dist/steps/root/steps-root.js +130 -0
- package/dist/steps/step/step.d.ts +139 -0
- package/dist/steps/step/step.js +215 -0
- package/dist/switch/index.d.ts +1 -0
- package/dist/switch/index.js +1 -0
- package/dist/switch/root/switch-root.d.ts +74 -0
- package/dist/switch/root/switch-root.js +153 -0
- package/dist/table/cell/table-cell.d.ts +34 -0
- package/dist/table/cell/table-cell.js +52 -0
- package/dist/table/column/table-column.d.ts +165 -0
- package/dist/table/column/table-column.js +222 -0
- package/dist/table/index.d.ts +4 -0
- package/dist/table/index.js +4 -0
- package/dist/table/root/table-root.d.ts +98 -0
- package/dist/table/root/table-root.js +161 -0
- package/dist/table/row/table-row.d.ts +27 -0
- package/dist/table/row/table-row.js +42 -0
- package/dist/tabs/index.d.ts +3 -0
- package/dist/tabs/index.js +3 -0
- package/dist/tabs/panel/tab-panel.d.ts +67 -0
- package/dist/tabs/panel/tab-panel.js +98 -0
- package/dist/tabs/root/tabs-root.d.ts +123 -0
- package/dist/tabs/root/tabs-root.js +217 -0
- package/dist/tabs/tab/tab.d.ts +64 -0
- package/dist/tabs/tab/tab.js +116 -0
- package/dist/tag/index.d.ts +1 -0
- package/dist/tag/index.js +1 -0
- package/dist/tag/root/tag-root.d.ts +41 -0
- package/dist/tag/root/tag-root.js +67 -0
- package/dist/textarea/index.d.ts +1 -0
- package/dist/textarea/index.js +1 -0
- package/dist/textarea/root/textarea-root.d.ts +215 -0
- package/dist/textarea/root/textarea-root.js +380 -0
- package/dist/time-input/index.d.ts +1 -0
- package/dist/time-input/index.js +1 -0
- package/dist/time-input/root/time-input-root.d.ts +322 -0
- package/dist/time-input/root/time-input-root.js +661 -0
- package/dist/time-picker/index.d.ts +1 -0
- package/dist/time-picker/index.js +1 -0
- package/dist/time-picker/root/time-picker-root.d.ts +380 -0
- package/dist/time-picker/root/time-picker-root.js +669 -0
- package/dist/timeline/index.d.ts +2 -0
- package/dist/timeline/index.js +2 -0
- package/dist/timeline/item/timeline-item.d.ts +81 -0
- package/dist/timeline/item/timeline-item.js +128 -0
- package/dist/timeline/root/timeline-root.d.ts +52 -0
- package/dist/timeline/root/timeline-root.js +72 -0
- package/dist/toast/index.d.ts +2 -0
- package/dist/toast/index.js +2 -0
- package/dist/toast/item/toast-item.d.ts +183 -0
- package/dist/toast/item/toast-item.js +345 -0
- package/dist/toast/root/toast-root.d.ts +72 -0
- package/dist/toast/root/toast-root.js +87 -0
- package/dist/toggle/group/toggle-group.d.ts +140 -0
- package/dist/toggle/group/toggle-group.js +278 -0
- package/dist/toggle/index.d.ts +2 -0
- package/dist/toggle/index.js +2 -0
- package/dist/toggle/root/toggle-root.d.ts +99 -0
- package/dist/toggle/root/toggle-root.js +146 -0
- package/dist/toolbar/index.d.ts +1 -0
- package/dist/toolbar/index.js +1 -0
- package/dist/toolbar/root/toolbar-root.d.ts +105 -0
- package/dist/toolbar/root/toolbar-root.js +260 -0
- package/dist/tooltip/index.d.ts +1 -0
- package/dist/tooltip/index.js +1 -0
- package/dist/tooltip/root/tooltip-root.d.ts +388 -0
- package/dist/tooltip/root/tooltip-root.js +707 -0
- package/dist/tour/index.d.ts +2 -0
- package/dist/tour/index.js +2 -0
- package/dist/tour/root/tour-root.d.ts +161 -0
- package/dist/tour/root/tour-root.js +351 -0
- package/dist/tour/stop/tour-stop.d.ts +131 -0
- package/dist/tour/stop/tour-stop.js +249 -0
- package/dist/tree/index.d.ts +2 -0
- package/dist/tree/index.js +2 -0
- package/dist/tree/item/tree-item.d.ts +208 -0
- package/dist/tree/item/tree-item.js +381 -0
- package/dist/tree/root/tree-root.d.ts +88 -0
- package/dist/tree/root/tree-root.js +287 -0
- package/dist/trend/index.d.ts +1 -0
- package/dist/trend/index.js +1 -0
- package/dist/trend/root/trend-root.d.ts +67 -0
- package/dist/trend/root/trend-root.js +106 -0
- package/dist/video/index.d.ts +1 -0
- package/dist/video/index.js +1 -0
- package/dist/video/root/video-root.d.ts +711 -0
- package/dist/video/root/video-root.js +1821 -0
- package/dist/video-playlist/index.d.ts +3 -0
- package/dist/video-playlist/index.js +3 -0
- package/dist/video-playlist/item/video-playlist-item.d.ts +101 -0
- package/dist/video-playlist/item/video-playlist-item.js +162 -0
- package/dist/video-playlist/menu/video-playlist-menu.d.ts +121 -0
- package/dist/video-playlist/menu/video-playlist-menu.js +237 -0
- package/dist/video-playlist/root/video-playlist-root.d.ts +108 -0
- package/dist/video-playlist/root/video-playlist-root.js +218 -0
- package/dist/virtual-list/index.d.ts +1 -0
- package/dist/virtual-list/index.js +1 -0
- package/dist/virtual-list/root/virtual-list-root.d.ts +121 -0
- package/dist/virtual-list/root/virtual-list-root.js +221 -0
- package/jsx.d.ts +49767 -0
- package/package.json +77 -0
- package/svelte.d.ts +129 -0
- package/vue.d.ts +9242 -0
|
@@ -0,0 +1,330 @@
|
|
|
1
|
+
import { HelixElement } from '@fusion.dev/helix-core';
|
|
2
|
+
import { nothing, type PropertyValues, type TemplateResult } from 'lit';
|
|
3
|
+
import '../../tooltip/index.js';
|
|
4
|
+
declare const HelixHeadlessHeatmap_base: typeof HelixElement & (new (...args: any[]) => import("@fusion.dev/helix-core").MixinChartSourceInterface);
|
|
5
|
+
/**
|
|
6
|
+
* @summary A strip of cells coloured by how each one went: uptime, contributions, activity.
|
|
7
|
+
*
|
|
8
|
+
* @description
|
|
9
|
+
* **One family covers both readings, and the split people expect does not
|
|
10
|
+
* exist.** It was filed as two on the argument that a contribution graph needs a
|
|
11
|
+
* continuous ramp where uptime needs a category. GitHub's contribution graph is
|
|
12
|
+
* five discrete levels rather than a gradient, so a cell that takes a tone
|
|
13
|
+
* covers both: `rows="1"` is a status strip, `rows="7"` is a contribution graph,
|
|
14
|
+
* and heatmap is the name of that.
|
|
15
|
+
*
|
|
16
|
+
* **What it cannot be is a bar chart with flat values**, and the data model is
|
|
17
|
+
* what closes that rather than taste: chart color is per *series* everywhere
|
|
18
|
+
* else here, `--chart-series-1` through `-15`, so ninety differently coloured
|
|
19
|
+
* cells would be ninety series.
|
|
20
|
+
*
|
|
21
|
+
* The data is a real `<table>` named by `for`, the same convention every chart
|
|
22
|
+
* in this library uses, which also answers the accessibility question without
|
|
23
|
+
* inventing anything: **the table is the accessible representation**, it is
|
|
24
|
+
* already in the markup, and the drawing is a picture of it. Hide it with
|
|
25
|
+
* `data-hidden-visually` and the reading is still there for anyone who needs it.
|
|
26
|
+
*
|
|
27
|
+
* A cell takes its tone from its own `data-tone`, or from `thresholds` and
|
|
28
|
+
* `tones` bucketing its value. The first is what a status page wants and the
|
|
29
|
+
* second is what a contribution graph wants; the cell's own wins, so a page that
|
|
30
|
+
* already knows a day was degraded does not have to encode that as a number for
|
|
31
|
+
* this component to decode again.
|
|
32
|
+
*
|
|
33
|
+
* **A tone is a name this tier never resolves.** `tone="success"` writes
|
|
34
|
+
* `--heatmap-tone: var(--heatmap-tone-success)` onto the cell and stops there,
|
|
35
|
+
* so what a name is worth is the answering tier's to say: `helix/styled` points
|
|
36
|
+
* the semantic names at the theme's status colors and the numbered ones at a
|
|
37
|
+
* ramp, and a consumer on `headless` declares the same names as whatever they
|
|
38
|
+
* like. It read `var(--helix-color-${tone})` until 27 Aug 2026, which is the
|
|
39
|
+
* dependency the tiers exist to prevent and which failed loudly rather than
|
|
40
|
+
* quietly: off-tier that property is not undefined, it is *invalid*, so
|
|
41
|
+
* `background-color: var(--heatmap-tone, …)` declined its own fallback and every
|
|
42
|
+
* cell came out transparent. The headless baseline was a blank page under a row
|
|
43
|
+
* of footer text. `shared/chart/series.css` records Bar Chart having had the
|
|
44
|
+
* same fault for the same reason.
|
|
45
|
+
*
|
|
46
|
+
* **On a narrow container it draws fewer cells rather than thinner ones.**
|
|
47
|
+
* Ninety cells in 320 pixels is three and a half pixels each, which is a smear
|
|
48
|
+
* and not a strip. The cells it drops are the oldest, and it reflects `visible`
|
|
49
|
+
* and fires `helix-resize` when the number changes, because **a summary saying
|
|
50
|
+
* "99.2% over 90 days" above a strip drawing 45 of them is telling the reader
|
|
51
|
+
* something false about the picture in front of them** and nothing about the
|
|
52
|
+
* picture says so.
|
|
53
|
+
*
|
|
54
|
+
* @since 0.1.0
|
|
55
|
+
* @status experimental
|
|
56
|
+
* @category charts
|
|
57
|
+
* @aliases Contribution graph, Uptime strip, Calendar heatmap, Activity graph
|
|
58
|
+
* @documentation https://helix.fusion.dev/components/heatmap
|
|
59
|
+
*
|
|
60
|
+
* @slot end - Below the strip, at the trailing edge: usually the newest date.
|
|
61
|
+
* @slot start - Below the strip, at the leading edge: usually the oldest date.
|
|
62
|
+
* @slot summary - Below the strip, in the middle: the reading over the range drawn.
|
|
63
|
+
*
|
|
64
|
+
* @event {HelixResizeEvent} helix-resize - Fired when the number of cells drawn changes, carrying that number.
|
|
65
|
+
*
|
|
66
|
+
* @csspart cell - One reading.
|
|
67
|
+
* @csspart empty - Shown when the table has no readings in it.
|
|
68
|
+
* @csspart end - The trailing slot's box.
|
|
69
|
+
* @csspart footer - The three-slot row under the strip.
|
|
70
|
+
* @csspart mark - The invisible point the tooltip is anchored to.
|
|
71
|
+
* @csspart start - The leading slot's box.
|
|
72
|
+
* @csspart strip - The grid of cells.
|
|
73
|
+
* @csspart summary - The middle slot's box.
|
|
74
|
+
* @csspart tooltip - The bubble, forwarded from `Tooltip`.
|
|
75
|
+
* @csspart tooltip-anchor - The `Tooltip` element itself.
|
|
76
|
+
* @csspart tooltip-cell - One column's name and value inside the tooltip.
|
|
77
|
+
* @csspart tooltip-label - The reading's own name inside the tooltip.
|
|
78
|
+
* @csspart tooltip-name - A column's name inside the tooltip.
|
|
79
|
+
* @csspart tooltip-value - A column's value inside the tooltip.
|
|
80
|
+
*
|
|
81
|
+
* @cssproperty --heatmap-cell-height - How tall a cell is. A row of a tall thin cell is what a status page draws.
|
|
82
|
+
* @cssproperty --heatmap-cell-inline-size - How wide a cell is. The strip fits as many as the container allows.
|
|
83
|
+
* @cssproperty --heatmap-cell-radius - How far a cell's corners are rounded.
|
|
84
|
+
* @cssproperty --heatmap-cell-size - The size a cell wants on both axes, where neither is given its own.
|
|
85
|
+
* @cssproperty --heatmap-gap - Space between cells. Zero is a continuous field rather than a grid of tiles.
|
|
86
|
+
* @cssproperty --heatmap-tone - The tone of the cell this is set on. Written by the component, read by the sheet that paints.
|
|
87
|
+
* @cssproperty --heatmap-tone-1 - The quietest step of the magnitude ramp, reached by `tones="1 …"`.
|
|
88
|
+
* @cssproperty --heatmap-tone-2 - The second step of the magnitude ramp.
|
|
89
|
+
* @cssproperty --heatmap-tone-3 - The third step of the magnitude ramp.
|
|
90
|
+
* @cssproperty --heatmap-tone-4 - The fourth step of the magnitude ramp.
|
|
91
|
+
* @cssproperty --heatmap-tone-5 - The loudest step of the magnitude ramp.
|
|
92
|
+
* @cssproperty --heatmap-tone-accent - What `accent` is worth.
|
|
93
|
+
* @cssproperty --heatmap-tone-danger - What `danger` is worth.
|
|
94
|
+
* @cssproperty --heatmap-tone-info - What `info` is worth.
|
|
95
|
+
* @cssproperty --heatmap-tone-muted - What `muted` is worth: the quiet ground, for a bucket that means nothing happened.
|
|
96
|
+
* @cssproperty --heatmap-tone-primary - What `primary` is worth.
|
|
97
|
+
* @cssproperty --heatmap-tone-success - What `success` is worth, as a name or a `data-tone`.
|
|
98
|
+
* @cssproperty --heatmap-tone-warning - What `warning` is worth.
|
|
99
|
+
*/
|
|
100
|
+
export declare class HelixHeadlessHeatmap extends HelixHeadlessHeatmap_base {
|
|
101
|
+
/**
|
|
102
|
+
* How many rows the strip has.
|
|
103
|
+
*
|
|
104
|
+
* `1` is a status strip and `7` is a calendar week, which are the two readings
|
|
105
|
+
* this covers. Cells fill down the column and then across, which is what a
|
|
106
|
+
* calendar heatmap does: a week is a column, so the strip reads left to right
|
|
107
|
+
* in weeks and top to bottom in days.
|
|
108
|
+
*/
|
|
109
|
+
rows: number;
|
|
110
|
+
/**
|
|
111
|
+
* Lower bounds for the tone buckets, in the order the tones are given.
|
|
112
|
+
*
|
|
113
|
+
* `thresholds="1 3 6 9"` with `tones="1 2 3 4"` puts 1 and 2 in the ramp's
|
|
114
|
+
* first step, 3 to 5 in the second, 6 to 8 in the third, and 9 upward in the
|
|
115
|
+
* fourth. A value below the first bound gets no tone at all: an empty day in a
|
|
116
|
+
* contribution graph is a day with nothing in it, and painting it as the
|
|
117
|
+
* lowest bucket claims a reading that does not exist.
|
|
118
|
+
*/
|
|
119
|
+
thresholds: string;
|
|
120
|
+
/**
|
|
121
|
+
* Tone per bucket, in the same order as `thresholds`.
|
|
122
|
+
*
|
|
123
|
+
* A name, resolved as `--heatmap-tone-<name>` by whichever tier answers.
|
|
124
|
+
* **`"1"` through `"5"` are a ramp and everything else is a category**, which
|
|
125
|
+
* is the distinction a heatmap lives or dies on: magnitude has to be one hue
|
|
126
|
+
* getting louder, because a reader compares two cells by weight and cannot
|
|
127
|
+
* compare two hues at all. This shipped demonstrating the opposite,
|
|
128
|
+
* `tones="surface info accent success primary"` for a commit count, and five
|
|
129
|
+
* unrelated hues for five amounts is confetti with no order in it.
|
|
130
|
+
*/
|
|
131
|
+
tones: string;
|
|
132
|
+
/**
|
|
133
|
+
* The smallest a cell may get before the strip draws fewer of them, in CSS pixels.
|
|
134
|
+
*
|
|
135
|
+
* **Set this only to overrule what the strip actually draws.** The arithmetic
|
|
136
|
+
* needs a width in pixels and the width is a length the stylesheet resolves,
|
|
137
|
+
* so for as long as this was the only answer it was a promise the consumer had
|
|
138
|
+
* to keep by hand: it sat at 8 against a sheet drawing 12, the arithmetic
|
|
139
|
+
* believed a cell cost 10 pixels where it cost 16, and a ninety day strip ran
|
|
140
|
+
* 940 pixels wide out of a 592 pixel box while `visible` reported 59. The one
|
|
141
|
+
* number a summary is told to trust was the number that was wrong.
|
|
142
|
+
*
|
|
143
|
+
* The strip is measured now, so `--heatmap-cell-inline-size` and `--heatmap-gap` are
|
|
144
|
+
* enough on their own and these two are the estimate used until the first
|
|
145
|
+
* measurement lands. Writing the attribute pins the value and stops the
|
|
146
|
+
* measurement being consulted, which is what a container query or a transition
|
|
147
|
+
* on the cell size wants, where what is drawn this frame is not what the
|
|
148
|
+
* arithmetic should plan around.
|
|
149
|
+
*
|
|
150
|
+
* Zero turns the dropping off altogether, which is right for a strip in a
|
|
151
|
+
* container that cannot get narrow.
|
|
152
|
+
*/
|
|
153
|
+
minCell: number;
|
|
154
|
+
/**
|
|
155
|
+
* Space between cells, in CSS pixels, for the same reason `min-cell` is a
|
|
156
|
+
* number.
|
|
157
|
+
*/
|
|
158
|
+
gap: number;
|
|
159
|
+
/**
|
|
160
|
+
* Shown when the table has no readings in it.
|
|
161
|
+
*/
|
|
162
|
+
emptyText: string;
|
|
163
|
+
/**
|
|
164
|
+
* How many cells are actually drawn.
|
|
165
|
+
*
|
|
166
|
+
* **This is the number a summary has to agree with**, and the reason it is
|
|
167
|
+
* published at all: a consumer's own summary is their markup and this element
|
|
168
|
+
* cannot rewrite it, so the only honest arrangement is to hand over the count
|
|
169
|
+
* and say when it changed.
|
|
170
|
+
*
|
|
171
|
+
* **A plain getter, and the attribute is written in `updated`, because
|
|
172
|
+
* `@property({ reflect: true })` on a getter with no setter reflects once and
|
|
173
|
+
* then goes stale.** Lit reflects a property that is in `changedProperties`,
|
|
174
|
+
* and nothing puts a derived getter there after the first update: the
|
|
175
|
+
* attribute would be right on load and wrong from the first resize, which is
|
|
176
|
+
* the exact failure the count exists to prevent, arriving through the
|
|
177
|
+
* mechanism meant to prevent it.
|
|
178
|
+
*/
|
|
179
|
+
get visible(): number;
|
|
180
|
+
/**
|
|
181
|
+
* The width last measured, or nothing before the first measurement.
|
|
182
|
+
*
|
|
183
|
+
* Undefined rather than zero, because the two mean different things and the
|
|
184
|
+
* difference is a whole strip: unmeasured has to show everything, since a
|
|
185
|
+
* first paint that shows one cell and then expands is a flicker on every load.
|
|
186
|
+
*/
|
|
187
|
+
private width;
|
|
188
|
+
/**
|
|
189
|
+
* The cell and gap the strip is drawing, in pixels, once it has been read.
|
|
190
|
+
*
|
|
191
|
+
* **The arithmetic's inputs are a stylesheet's decisions, so the honest way to
|
|
192
|
+
* learn them is to ask the stylesheet.** A cell's size is a length that only
|
|
193
|
+
* the cascade can resolve: it may be a `rem` against a root font size, a
|
|
194
|
+
* percentage of a container, or whatever a container query chose this frame.
|
|
195
|
+
* Every one of those is invisible to a number typed into an attribute, and
|
|
196
|
+
* each of `--heatmap-cell-inline-size`, `--heatmap-cell-height` and `--heatmap-gap`
|
|
197
|
+
* added one more way for the two to drift apart silently.
|
|
198
|
+
*
|
|
199
|
+
* Reading it back is not styling and does not breach the tier: this asks what
|
|
200
|
+
* was decided rather than deciding, which is the same direction as the facts
|
|
201
|
+
* this component writes out as custom properties, run backwards.
|
|
202
|
+
*/
|
|
203
|
+
private metrics;
|
|
204
|
+
/**
|
|
205
|
+
* Which drawn cell the pointer is on, as an index into `drawn`, or -1 for
|
|
206
|
+
* none.
|
|
207
|
+
*/
|
|
208
|
+
private hovered;
|
|
209
|
+
private observer;
|
|
210
|
+
private announced;
|
|
211
|
+
/**
|
|
212
|
+
* Every reading in the table, oldest first, as the table is written.
|
|
213
|
+
*
|
|
214
|
+
* **Not `readings`, which the mixin already has and which means a count.**
|
|
215
|
+
* Two members of the same name meaning a number and an array is the kind of
|
|
216
|
+
* collision that type-checks in one direction and reads wrong in both.
|
|
217
|
+
*/
|
|
218
|
+
private get points();
|
|
219
|
+
/**
|
|
220
|
+
* `rows` as a usable count, which is not always what the attribute says.
|
|
221
|
+
*
|
|
222
|
+
* One place rather than two: the fit arithmetic and the grid template both
|
|
223
|
+
* need it, and a `rows="0"` or a `rows="2.5"` that reached one of them and not
|
|
224
|
+
* the other would draw a strip whose columns and whose capacity disagreed.
|
|
225
|
+
*/
|
|
226
|
+
private get rowCount();
|
|
227
|
+
/**
|
|
228
|
+
* The cell width the arithmetic should plan around, in pixels.
|
|
229
|
+
*
|
|
230
|
+
* The attribute wins where a consumer wrote one, because that is what writing
|
|
231
|
+
* it is for; otherwise what the strip draws, and the declared default only
|
|
232
|
+
* until the first measurement lands.
|
|
233
|
+
*/
|
|
234
|
+
private get cellPx();
|
|
235
|
+
/** The gap the arithmetic should plan around, on the same terms as `cellPx`. */
|
|
236
|
+
private get gapPx();
|
|
237
|
+
/** How many cells the container has room for, as a whole number of columns. */
|
|
238
|
+
private get room();
|
|
239
|
+
/**
|
|
240
|
+
* Reads back the cell and the gap the strip resolved.
|
|
241
|
+
*
|
|
242
|
+
* `gridAutoColumns` and `columnGap` rather than a cell's own box, and the
|
|
243
|
+
* difference matters on the frame it matters: a cell exists only once some
|
|
244
|
+
* have been drawn, and how many are drawn is what this is measuring *for*.
|
|
245
|
+
* Asking the track instead breaks the circle, since a track is sized whether
|
|
246
|
+
* or not anything sits in it. Neither property forces layout, so this stays a
|
|
247
|
+
* style read on every update rather than a reflow.
|
|
248
|
+
*
|
|
249
|
+
* Anything that does not parse to a positive number leaves the estimate alone:
|
|
250
|
+
* `columnGap` computes to `normal` where no gap is set, and a track given a
|
|
251
|
+
* keyword or a `repeat()` has no single width to report. A wrong number here
|
|
252
|
+
* is worse than no number, because it is the one the count is published from.
|
|
253
|
+
*/
|
|
254
|
+
private measure;
|
|
255
|
+
/**
|
|
256
|
+
* The readings actually drawn, newest kept.
|
|
257
|
+
*
|
|
258
|
+
* The tail rather than the head: a status strip that drops the newest days to
|
|
259
|
+
* keep the oldest is answering a question nobody asked.
|
|
260
|
+
*/
|
|
261
|
+
private get drawn();
|
|
262
|
+
connectedCallback(): void;
|
|
263
|
+
disconnectedCallback(): void;
|
|
264
|
+
protected willUpdate(changed: PropertyValues): void;
|
|
265
|
+
/**
|
|
266
|
+
* Says on the footer whether any of its three slots holds anything.
|
|
267
|
+
*
|
|
268
|
+
* **The stylesheet used to ask, and could not.** It read
|
|
269
|
+
* `[part="footer"]:not(:has(slot:has(*)))`, which is two faults at once:
|
|
270
|
+
* `:has()` may not be nested inside `:has()`, so the selector failed to parse
|
|
271
|
+
* and the rule was discarded whole; and a slot's assigned nodes are not its
|
|
272
|
+
* DOM children, so `slot:has(*)` reports fallback content rather than the
|
|
273
|
+
* fill, and would have been false either way. Both verified in a browser. A
|
|
274
|
+
* heatmap with no legend and no summary still reserved the row for one.
|
|
275
|
+
*/
|
|
276
|
+
private markEmpty;
|
|
277
|
+
/**
|
|
278
|
+
* One region, hidden when its slot holds nothing and nothing of ours fills it.
|
|
279
|
+
*
|
|
280
|
+
* `hidden` beside the `data-empty` mirror: `data-empty` is the hook the styled
|
|
281
|
+
* sheet reads, and this tier ships no sheet, so an empty region left in the box
|
|
282
|
+
* tree would be a gap a headless consumer cannot close without knowing to look
|
|
283
|
+
* for it. The styled rule stays too, because that sheet sets `display` on these
|
|
284
|
+
* parts and therefore outranks the UA's `[hidden]` one.
|
|
285
|
+
*/
|
|
286
|
+
private markRegion;
|
|
287
|
+
protected updated(changed: PropertyValues): void;
|
|
288
|
+
protected render(): TemplateResult;
|
|
289
|
+
/**
|
|
290
|
+
* The bubble over the cell a pointer is resting on.
|
|
291
|
+
*
|
|
292
|
+
* **One tooltip that moves, which is what every other chart here does and is
|
|
293
|
+
* the thing the `title` attribute was kept to avoid.** The note this replaces
|
|
294
|
+
* read that ninety `helix-tooltip` elements was the cost of a real one, and
|
|
295
|
+
* that was never the shape: Bar Chart, Line Chart and Donut Chart each render
|
|
296
|
+
* a single anchor against an invisible mark and move the mark, so the count is
|
|
297
|
+
* one however many readings there are. `drawTooltip` is their shared markup
|
|
298
|
+
* and this is the fourth caller.
|
|
299
|
+
*
|
|
300
|
+
* What it buys over the native one is the row rather than the reading.
|
|
301
|
+
* `sourceRows` carries every column of the table including the ones nothing
|
|
302
|
+
* was plotted from, so a cell reads "11 Jun 2026 / Uptime 81.2% / Note Partial
|
|
303
|
+
* outage" where `title` could only ever say the two values this component
|
|
304
|
+
* happens to hold. It is also styleable, appears at once rather than after the
|
|
305
|
+
* platform's second of delay, and cannot be truncated by the window edge.
|
|
306
|
+
*
|
|
307
|
+
* The mark is placed in pixels rather than in percent, which is the one thing
|
|
308
|
+
* this does differently from its siblings: they divide a plot into equal
|
|
309
|
+
* slots, and a strip's cells are a fixed size with a fixed gap inside a box
|
|
310
|
+
* that is usually wider, so a percentage of the box lands between cells. The
|
|
311
|
+
* pitch is `cell + gap` and both are measured.
|
|
312
|
+
*/
|
|
313
|
+
protected renderTooltip(): TemplateResult | typeof nothing;
|
|
314
|
+
/**
|
|
315
|
+
* Which drawn cell the pointer is over, or -1.
|
|
316
|
+
*
|
|
317
|
+
* `pointerover` on the strip rather than a listener per cell: the event
|
|
318
|
+
* bubbles, so one handler covers however many cells there are, and unlike
|
|
319
|
+
* `mouseover` it is delivered for a pen and for the touch that follows a long
|
|
320
|
+
* press.
|
|
321
|
+
*/
|
|
322
|
+
private readonly onPointerOver;
|
|
323
|
+
private readonly onPointerLeave;
|
|
324
|
+
}
|
|
325
|
+
declare global {
|
|
326
|
+
interface HTMLElementTagNameMap {
|
|
327
|
+
'helix-headless-heatmap': HelixHeadlessHeatmap;
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
export {};
|