@f-ewald/components 1.14.1 → 1.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/custom-elements.json +170 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/loading-dots.d.ts +28 -0
- package/dist/loading-dots.d.ts.map +1 -0
- package/dist/loading-dots.js +116 -0
- package/dist/loading-dots.js.map +1 -0
- package/dist/loading-spinner.d.ts +28 -0
- package/dist/loading-spinner.d.ts.map +1 -0
- package/dist/loading-spinner.js +109 -0
- package/dist/loading-spinner.js.map +1 -0
- package/docs/loading-dots.md +45 -0
- package/docs/loading-spinner.md +46 -0
- package/llms.txt +46 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -79,6 +79,8 @@ import "@f-ewald/components/roman-numeral.js";
|
|
|
79
79
|
| `<link-card>` | [API reference](https://f-ewald.github.io/components/docs/link-card.html) |
|
|
80
80
|
| `<live-timer>` | [API reference](https://f-ewald.github.io/components/docs/live-timer.html) |
|
|
81
81
|
| `<load-more>` | [API reference](https://f-ewald.github.io/components/docs/load-more.html) |
|
|
82
|
+
| `<loading-dots>` | [API reference](https://f-ewald.github.io/components/docs/loading-dots.html) |
|
|
83
|
+
| `<loading-spinner>` | [API reference](https://f-ewald.github.io/components/docs/loading-spinner.html) |
|
|
82
84
|
| `<map-circle>` | [API reference](https://f-ewald.github.io/components/docs/map-circle.html) |
|
|
83
85
|
| `<map-pin>` | [API reference](https://f-ewald.github.io/components/docs/map-pin.html) |
|
|
84
86
|
| `<markdown-view>` | [API reference](https://f-ewald.github.io/components/docs/markdown-view.html) |
|
package/custom-elements.json
CHANGED
|
@@ -6755,6 +6755,22 @@
|
|
|
6755
6755
|
"module": "./load-more.js"
|
|
6756
6756
|
}
|
|
6757
6757
|
},
|
|
6758
|
+
{
|
|
6759
|
+
"kind": "js",
|
|
6760
|
+
"name": "LoadingSpinner",
|
|
6761
|
+
"declaration": {
|
|
6762
|
+
"name": "LoadingSpinner",
|
|
6763
|
+
"module": "./loading-spinner.js"
|
|
6764
|
+
}
|
|
6765
|
+
},
|
|
6766
|
+
{
|
|
6767
|
+
"kind": "js",
|
|
6768
|
+
"name": "LoadingDots",
|
|
6769
|
+
"declaration": {
|
|
6770
|
+
"name": "LoadingDots",
|
|
6771
|
+
"module": "./loading-dots.js"
|
|
6772
|
+
}
|
|
6773
|
+
},
|
|
6758
6774
|
{
|
|
6759
6775
|
"kind": "js",
|
|
6760
6776
|
"name": "ChatMessage",
|
|
@@ -8575,6 +8591,160 @@
|
|
|
8575
8591
|
}
|
|
8576
8592
|
]
|
|
8577
8593
|
},
|
|
8594
|
+
{
|
|
8595
|
+
"kind": "javascript-module",
|
|
8596
|
+
"path": "src/loading-dots.ts",
|
|
8597
|
+
"declarations": [
|
|
8598
|
+
{
|
|
8599
|
+
"kind": "class",
|
|
8600
|
+
"description": "Three dots that bounce one after another as a lightweight, indeterminate\n\"working\" / \"typing\" indicator. Purely presentational and property-driven —\nshow it while a short operation is pending and remove it when done.\n\nExposes an accessible `role=\"status\"` with `label` as its name, so assistive\ntechnology announces the loading state; the dots themselves are decorative.\nUnder `prefers-reduced-motion` the bounce is removed and the dots rest.",
|
|
8601
|
+
"name": "LoadingDots",
|
|
8602
|
+
"members": [
|
|
8603
|
+
{
|
|
8604
|
+
"kind": "field",
|
|
8605
|
+
"name": "size",
|
|
8606
|
+
"type": {
|
|
8607
|
+
"text": "\"sm\" | \"md\" | \"lg\""
|
|
8608
|
+
},
|
|
8609
|
+
"default": "\"md\"",
|
|
8610
|
+
"description": "Dot-size step — `sm`, `md` (default), or `lg`.",
|
|
8611
|
+
"attribute": "size"
|
|
8612
|
+
},
|
|
8613
|
+
{
|
|
8614
|
+
"kind": "field",
|
|
8615
|
+
"name": "label",
|
|
8616
|
+
"type": {
|
|
8617
|
+
"text": "string"
|
|
8618
|
+
},
|
|
8619
|
+
"default": "\"Loading\"",
|
|
8620
|
+
"description": "Accessible name announced by the `role=\"status\"` live region.",
|
|
8621
|
+
"attribute": "label"
|
|
8622
|
+
}
|
|
8623
|
+
],
|
|
8624
|
+
"attributes": [
|
|
8625
|
+
{
|
|
8626
|
+
"name": "size",
|
|
8627
|
+
"type": {
|
|
8628
|
+
"text": "\"sm\" | \"md\" | \"lg\""
|
|
8629
|
+
},
|
|
8630
|
+
"default": "\"md\"",
|
|
8631
|
+
"description": "Dot-size step — `sm`, `md` (default), or `lg`.",
|
|
8632
|
+
"fieldName": "size"
|
|
8633
|
+
},
|
|
8634
|
+
{
|
|
8635
|
+
"name": "label",
|
|
8636
|
+
"type": {
|
|
8637
|
+
"text": "string"
|
|
8638
|
+
},
|
|
8639
|
+
"default": "\"Loading\"",
|
|
8640
|
+
"description": "Accessible name announced by the `role=\"status\"` live region.",
|
|
8641
|
+
"fieldName": "label"
|
|
8642
|
+
}
|
|
8643
|
+
],
|
|
8644
|
+
"superclass": {
|
|
8645
|
+
"name": "LitElement",
|
|
8646
|
+
"package": "lit"
|
|
8647
|
+
},
|
|
8648
|
+
"tagName": "loading-dots",
|
|
8649
|
+
"customElement": true
|
|
8650
|
+
}
|
|
8651
|
+
],
|
|
8652
|
+
"exports": [
|
|
8653
|
+
{
|
|
8654
|
+
"kind": "js",
|
|
8655
|
+
"name": "LoadingDots",
|
|
8656
|
+
"declaration": {
|
|
8657
|
+
"name": "LoadingDots",
|
|
8658
|
+
"module": "src/loading-dots.ts"
|
|
8659
|
+
}
|
|
8660
|
+
},
|
|
8661
|
+
{
|
|
8662
|
+
"kind": "custom-element-definition",
|
|
8663
|
+
"name": "loading-dots",
|
|
8664
|
+
"declaration": {
|
|
8665
|
+
"name": "LoadingDots",
|
|
8666
|
+
"module": "src/loading-dots.ts"
|
|
8667
|
+
}
|
|
8668
|
+
}
|
|
8669
|
+
]
|
|
8670
|
+
},
|
|
8671
|
+
{
|
|
8672
|
+
"kind": "javascript-module",
|
|
8673
|
+
"path": "src/loading-spinner.ts",
|
|
8674
|
+
"declarations": [
|
|
8675
|
+
{
|
|
8676
|
+
"kind": "class",
|
|
8677
|
+
"description": "Indeterminate circular loading spinner: a rotating arc over a faint track,\nin the style of a browser page-load indicator. Purely presentational and\nproperty-driven — show it while work is in flight and remove it when done.\n\nExposes an accessible `role=\"status\"` with `label` as its name, so assistive\ntechnology announces the loading state; the arc itself is decorative. Under\n`prefers-reduced-motion` it stops rotating and stays a static ring.",
|
|
8678
|
+
"name": "LoadingSpinner",
|
|
8679
|
+
"members": [
|
|
8680
|
+
{
|
|
8681
|
+
"kind": "field",
|
|
8682
|
+
"name": "size",
|
|
8683
|
+
"type": {
|
|
8684
|
+
"text": "\"sm\" | \"md\" | \"lg\""
|
|
8685
|
+
},
|
|
8686
|
+
"default": "\"md\"",
|
|
8687
|
+
"description": "Diameter step — `sm` ≈ 1rem, `md` ≈ 1.5rem (default), `lg` ≈ 2rem.",
|
|
8688
|
+
"attribute": "size"
|
|
8689
|
+
},
|
|
8690
|
+
{
|
|
8691
|
+
"kind": "field",
|
|
8692
|
+
"name": "label",
|
|
8693
|
+
"type": {
|
|
8694
|
+
"text": "string"
|
|
8695
|
+
},
|
|
8696
|
+
"default": "\"Loading\"",
|
|
8697
|
+
"description": "Accessible name announced by the `role=\"status\"` live region.",
|
|
8698
|
+
"attribute": "label"
|
|
8699
|
+
}
|
|
8700
|
+
],
|
|
8701
|
+
"attributes": [
|
|
8702
|
+
{
|
|
8703
|
+
"name": "size",
|
|
8704
|
+
"type": {
|
|
8705
|
+
"text": "\"sm\" | \"md\" | \"lg\""
|
|
8706
|
+
},
|
|
8707
|
+
"default": "\"md\"",
|
|
8708
|
+
"description": "Diameter step — `sm` ≈ 1rem, `md` ≈ 1.5rem (default), `lg` ≈ 2rem.",
|
|
8709
|
+
"fieldName": "size"
|
|
8710
|
+
},
|
|
8711
|
+
{
|
|
8712
|
+
"name": "label",
|
|
8713
|
+
"type": {
|
|
8714
|
+
"text": "string"
|
|
8715
|
+
},
|
|
8716
|
+
"default": "\"Loading\"",
|
|
8717
|
+
"description": "Accessible name announced by the `role=\"status\"` live region.",
|
|
8718
|
+
"fieldName": "label"
|
|
8719
|
+
}
|
|
8720
|
+
],
|
|
8721
|
+
"superclass": {
|
|
8722
|
+
"name": "LitElement",
|
|
8723
|
+
"package": "lit"
|
|
8724
|
+
},
|
|
8725
|
+
"tagName": "loading-spinner",
|
|
8726
|
+
"customElement": true
|
|
8727
|
+
}
|
|
8728
|
+
],
|
|
8729
|
+
"exports": [
|
|
8730
|
+
{
|
|
8731
|
+
"kind": "js",
|
|
8732
|
+
"name": "LoadingSpinner",
|
|
8733
|
+
"declaration": {
|
|
8734
|
+
"name": "LoadingSpinner",
|
|
8735
|
+
"module": "src/loading-spinner.ts"
|
|
8736
|
+
}
|
|
8737
|
+
},
|
|
8738
|
+
{
|
|
8739
|
+
"kind": "custom-element-definition",
|
|
8740
|
+
"name": "loading-spinner",
|
|
8741
|
+
"declaration": {
|
|
8742
|
+
"name": "LoadingSpinner",
|
|
8743
|
+
"module": "src/loading-spinner.ts"
|
|
8744
|
+
}
|
|
8745
|
+
}
|
|
8746
|
+
]
|
|
8747
|
+
},
|
|
8578
8748
|
{
|
|
8579
8749
|
"kind": "javascript-module",
|
|
8580
8750
|
"path": "src/map-circle.ts",
|
package/dist/index.d.ts
CHANGED
|
@@ -31,6 +31,8 @@ export { StatusPill, type StatusPillColor } from "./status-pill.js";
|
|
|
31
31
|
export { EditableText } from "./editable-text.js";
|
|
32
32
|
export { LiveTimer } from "./live-timer.js";
|
|
33
33
|
export { LoadMore } from "./load-more.js";
|
|
34
|
+
export { LoadingSpinner } from "./loading-spinner.js";
|
|
35
|
+
export { LoadingDots } from "./loading-dots.js";
|
|
34
36
|
export { ChatMessage, type ChatMessageRole, type ChatMessageVariant, } from "./chat-message.js";
|
|
35
37
|
export { UiCheckbox } from "./ui-checkbox.js";
|
|
36
38
|
export { FormField } from "./form-field.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -31,6 +31,8 @@ export { StatusPill } from "./status-pill.js";
|
|
|
31
31
|
export { EditableText } from "./editable-text.js";
|
|
32
32
|
export { LiveTimer } from "./live-timer.js";
|
|
33
33
|
export { LoadMore } from "./load-more.js";
|
|
34
|
+
export { LoadingSpinner } from "./loading-spinner.js";
|
|
35
|
+
export { LoadingDots } from "./loading-dots.js";
|
|
34
36
|
export { ChatMessage, } from "./chat-message.js";
|
|
35
37
|
export { UiCheckbox } from "./ui-checkbox.js";
|
|
36
38
|
export { FormField } from "./form-field.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["export { AnimateConfetti } from \"./animate-confetti.js\";\nexport { GalleryItem } from \"./gallery-item.js\";\nexport { GalleryItemVariant } from \"./gallery-item-variant.js\";\nexport {\n PhotoGallery,\n type PhotoGalleryChangeReason,\n type PhotoGalleryObjectFit,\n type PhotoGallerySlideChangeDetail,\n} from \"./photo-gallery.js\";\nexport { RevealButton } from \"./reveal-button.js\";\nexport { RomanNumeral } from \"./roman-numeral.js\";\nexport { ConfirmDialog } from \"./confirm-dialog.js\";\nexport { ContentDivider } from \"./content-divider.js\";\nexport {\n ToastNotification,\n notifySuccess,\n notifyError,\n notifyInfo,\n type ToastVariant,\n} from \"./toast-notification.js\";\nexport { ScrollToBottom } from \"./scroll-to-bottom.js\";\nexport { ScrollToTop } from \"./scroll-to-top.js\";\nexport { SlidePanel } from \"./slide-panel.js\";\nexport { CopyLinkButton } from \"./copy-link-button.js\";\nexport { RelativeTime } from \"./relative-time.js\";\nexport { DistanceValue } from \"./distance-value.js\";\nexport { PriceHistoryChart, type PricePoint } from \"./price-history-chart.js\";\nexport { DistributionChart, type DistributionValue } from \"./distribution-chart.js\";\nexport { PercentBarChart, type PercentBarGroup } from \"./percent-bar-chart.js\";\nexport { WeightBarChart, type WeightBarItem } from \"./weight-bar-chart.js\";\nexport {\n AddressAutocomplete,\n type AddressSuggestion,\n} from \"./address-autocomplete.js\";\nexport {\n AutocompleteInput,\n type AutocompleteOption,\n} from \"./autocomplete-input.js\";\nexport { UserAvatar } from \"./user-avatar.js\";\nexport { MapPin } from \"./map-pin.js\";\nexport { MapCircle } from \"./map-circle.js\";\nexport { RadioCards, type RadioCardOption } from \"./radio-cards.js\";\nexport { RadioPills, type RadioPillOption } from \"./radio-pills.js\";\nexport { ButtonGroup, type ButtonGroupOption } from \"./button-group.js\";\nexport { UiButton, type ButtonVariant } from \"./ui-button.js\";\nexport { StatMeter } from \"./stat-meter.js\";\nexport { StatusPill, type StatusPillColor } from \"./status-pill.js\";\nexport { EditableText } from \"./editable-text.js\";\nexport { LiveTimer } from \"./live-timer.js\";\nexport { LoadMore } from \"./load-more.js\";\nexport {\n ChatMessage,\n type ChatMessageRole,\n type ChatMessageVariant,\n} from \"./chat-message.js\";\nexport { UiCheckbox } from \"./ui-checkbox.js\";\nexport { FormField } from \"./form-field.js\";\nexport { FormSelect, type SelectOption } from \"./form-select.js\";\nexport {\n MultiSelect,\n type MultiSelectOption,\n type MultiSelectVariant,\n} from \"./multi-select.js\";\nexport { DataTable, type DataTableColumn } from \"./data-table.js\";\nexport { TileGrid } from \"./tile-grid.js\";\nexport { TreeView, type TreeNode } from \"./tree-view.js\";\nexport { PopoverPanel } from \"./popover-panel.js\";\nexport { DropdownButton, type DropdownOption } from \"./dropdown-button.js\";\nexport { IconButton } from \"./icon-button.js\";\nexport { KbdHint, type KbdPlatform } from \"./kbd-hint.js\";\nexport { FrameBox } from \"./frame-box.js\";\nexport { AppShell, type SidebarToggleDetail } from \"./app-shell.js\";\nexport { AppSidebar } from \"./app-sidebar.js\";\nexport { ActionBar } from \"./action-bar.js\";\nexport { PageHeader } from \"./page-header.js\";\nexport { PaginationNav, type PageChangeDetail } from \"./pagination-nav.js\";\nexport { FormActions } from \"./form-actions.js\";\nexport { TimelineContainer } from \"./timeline-container.js\";\nexport { TimelineEntry } from \"./timeline-entry.js\";\nexport { CalendarEntry } from \"./calendar-entry.js\";\nexport { CalendarMonth } from \"./calendar-month.js\";\nexport { CalendarYear } from \"./calendar-year.js\";\nexport {\n KanbanBoard,\n type KanbanCardData,\n type KanbanColumnData,\n type KanbanCardMoveDetail,\n type KanbanCardOpenDetail,\n} from \"./kanban-board.js\";\nexport { KanbanColumn } from \"./kanban-column.js\";\nexport { KanbanCard } from \"./kanban-card.js\";\nexport { TextArea } from \"./text-area.js\";\nexport { LinkCard, type LinkCardStatus } from \"./link-card.js\";\nexport { CardGrid } from \"./card-grid.js\";\nexport { MarkdownView } from \"./markdown-view.js\";\nexport { AutoScroll } from \"./auto-scroll.js\";\nexport { formatDuration, type DurationFormat } from \"./utils/duration.js\";\nexport { tokens, tokenValues, darkTokenValues } from \"./tokens.js\";\nexport * from \"./icons.js\";\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["export { AnimateConfetti } from \"./animate-confetti.js\";\nexport { GalleryItem } from \"./gallery-item.js\";\nexport { GalleryItemVariant } from \"./gallery-item-variant.js\";\nexport {\n PhotoGallery,\n type PhotoGalleryChangeReason,\n type PhotoGalleryObjectFit,\n type PhotoGallerySlideChangeDetail,\n} from \"./photo-gallery.js\";\nexport { RevealButton } from \"./reveal-button.js\";\nexport { RomanNumeral } from \"./roman-numeral.js\";\nexport { ConfirmDialog } from \"./confirm-dialog.js\";\nexport { ContentDivider } from \"./content-divider.js\";\nexport {\n ToastNotification,\n notifySuccess,\n notifyError,\n notifyInfo,\n type ToastVariant,\n} from \"./toast-notification.js\";\nexport { ScrollToBottom } from \"./scroll-to-bottom.js\";\nexport { ScrollToTop } from \"./scroll-to-top.js\";\nexport { SlidePanel } from \"./slide-panel.js\";\nexport { CopyLinkButton } from \"./copy-link-button.js\";\nexport { RelativeTime } from \"./relative-time.js\";\nexport { DistanceValue } from \"./distance-value.js\";\nexport { PriceHistoryChart, type PricePoint } from \"./price-history-chart.js\";\nexport { DistributionChart, type DistributionValue } from \"./distribution-chart.js\";\nexport { PercentBarChart, type PercentBarGroup } from \"./percent-bar-chart.js\";\nexport { WeightBarChart, type WeightBarItem } from \"./weight-bar-chart.js\";\nexport {\n AddressAutocomplete,\n type AddressSuggestion,\n} from \"./address-autocomplete.js\";\nexport {\n AutocompleteInput,\n type AutocompleteOption,\n} from \"./autocomplete-input.js\";\nexport { UserAvatar } from \"./user-avatar.js\";\nexport { MapPin } from \"./map-pin.js\";\nexport { MapCircle } from \"./map-circle.js\";\nexport { RadioCards, type RadioCardOption } from \"./radio-cards.js\";\nexport { RadioPills, type RadioPillOption } from \"./radio-pills.js\";\nexport { ButtonGroup, type ButtonGroupOption } from \"./button-group.js\";\nexport { UiButton, type ButtonVariant } from \"./ui-button.js\";\nexport { StatMeter } from \"./stat-meter.js\";\nexport { StatusPill, type StatusPillColor } from \"./status-pill.js\";\nexport { EditableText } from \"./editable-text.js\";\nexport { LiveTimer } from \"./live-timer.js\";\nexport { LoadMore } from \"./load-more.js\";\nexport { LoadingSpinner } from \"./loading-spinner.js\";\nexport { LoadingDots } from \"./loading-dots.js\";\nexport {\n ChatMessage,\n type ChatMessageRole,\n type ChatMessageVariant,\n} from \"./chat-message.js\";\nexport { UiCheckbox } from \"./ui-checkbox.js\";\nexport { FormField } from \"./form-field.js\";\nexport { FormSelect, type SelectOption } from \"./form-select.js\";\nexport {\n MultiSelect,\n type MultiSelectOption,\n type MultiSelectVariant,\n} from \"./multi-select.js\";\nexport { DataTable, type DataTableColumn } from \"./data-table.js\";\nexport { TileGrid } from \"./tile-grid.js\";\nexport { TreeView, type TreeNode } from \"./tree-view.js\";\nexport { PopoverPanel } from \"./popover-panel.js\";\nexport { DropdownButton, type DropdownOption } from \"./dropdown-button.js\";\nexport { IconButton } from \"./icon-button.js\";\nexport { KbdHint, type KbdPlatform } from \"./kbd-hint.js\";\nexport { FrameBox } from \"./frame-box.js\";\nexport { AppShell, type SidebarToggleDetail } from \"./app-shell.js\";\nexport { AppSidebar } from \"./app-sidebar.js\";\nexport { ActionBar } from \"./action-bar.js\";\nexport { PageHeader } from \"./page-header.js\";\nexport { PaginationNav, type PageChangeDetail } from \"./pagination-nav.js\";\nexport { FormActions } from \"./form-actions.js\";\nexport { TimelineContainer } from \"./timeline-container.js\";\nexport { TimelineEntry } from \"./timeline-entry.js\";\nexport { CalendarEntry } from \"./calendar-entry.js\";\nexport { CalendarMonth } from \"./calendar-month.js\";\nexport { CalendarYear } from \"./calendar-year.js\";\nexport {\n KanbanBoard,\n type KanbanCardData,\n type KanbanColumnData,\n type KanbanCardMoveDetail,\n type KanbanCardOpenDetail,\n} from \"./kanban-board.js\";\nexport { KanbanColumn } from \"./kanban-column.js\";\nexport { KanbanCard } from \"./kanban-card.js\";\nexport { TextArea } from \"./text-area.js\";\nexport { LinkCard, type LinkCardStatus } from \"./link-card.js\";\nexport { CardGrid } from \"./card-grid.js\";\nexport { MarkdownView } from \"./markdown-view.js\";\nexport { AutoScroll } from \"./auto-scroll.js\";\nexport { formatDuration, type DurationFormat } from \"./utils/duration.js\";\nexport { tokens, tokenValues, darkTokenValues } from \"./tokens.js\";\nexport * from \"./icons.js\";\n"]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { LitElement, type PropertyValues } from "lit";
|
|
2
|
+
/**
|
|
3
|
+
* Three dots that bounce one after another as a lightweight, indeterminate
|
|
4
|
+
* "working" / "typing" indicator. Purely presentational and property-driven —
|
|
5
|
+
* show it while a short operation is pending and remove it when done.
|
|
6
|
+
*
|
|
7
|
+
* Exposes an accessible `role="status"` with `label` as its name, so assistive
|
|
8
|
+
* technology announces the loading state; the dots themselves are decorative.
|
|
9
|
+
* Under `prefers-reduced-motion` the bounce is removed and the dots rest.
|
|
10
|
+
*
|
|
11
|
+
* @element loading-dots
|
|
12
|
+
*/
|
|
13
|
+
export declare class LoadingDots extends LitElement {
|
|
14
|
+
static styles: import("lit").CSSResult[];
|
|
15
|
+
/** Dot-size step — `sm`, `md` (default), or `lg`. */
|
|
16
|
+
size: "sm" | "md" | "lg";
|
|
17
|
+
/** Accessible name announced by the `role="status"` live region. */
|
|
18
|
+
label: string;
|
|
19
|
+
connectedCallback(): void;
|
|
20
|
+
protected updated(changed: PropertyValues): void;
|
|
21
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
22
|
+
}
|
|
23
|
+
declare global {
|
|
24
|
+
interface HTMLElementTagNameMap {
|
|
25
|
+
"loading-dots": LoadingDots;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=loading-dots.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loading-dots.d.ts","sourceRoot":"","sources":["../src/loading-dots.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAIjE;;;;;;;;;;GAUG;AACH,qBACa,WAAY,SAAQ,UAAU;IACzC,OAAgB,MAAM,4BAyDpB;IAEF,qDAAqD;IACzC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAQ;IAC5C,oEAAoE;IACxD,KAAK,SAAa;IAErB,iBAAiB,IAAI,IAAI,CAGjC;IAED,UAAmB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAExD;IAEQ,MAAM,yCAQd;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,cAAc,EAAE,WAAW,CAAC;KAC7B;CACF"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { LitElement, css, html } from "lit";
|
|
8
|
+
import { customElement, property } from "lit/decorators.js";
|
|
9
|
+
import { tokens } from "./tokens.js";
|
|
10
|
+
/**
|
|
11
|
+
* Three dots that bounce one after another as a lightweight, indeterminate
|
|
12
|
+
* "working" / "typing" indicator. Purely presentational and property-driven —
|
|
13
|
+
* show it while a short operation is pending and remove it when done.
|
|
14
|
+
*
|
|
15
|
+
* Exposes an accessible `role="status"` with `label` as its name, so assistive
|
|
16
|
+
* technology announces the loading state; the dots themselves are decorative.
|
|
17
|
+
* Under `prefers-reduced-motion` the bounce is removed and the dots rest.
|
|
18
|
+
*
|
|
19
|
+
* @element loading-dots
|
|
20
|
+
*/
|
|
21
|
+
let LoadingDots = class LoadingDots extends LitElement {
|
|
22
|
+
constructor() {
|
|
23
|
+
super(...arguments);
|
|
24
|
+
/** Dot-size step — `sm`, `md` (default), or `lg`. */
|
|
25
|
+
this.size = "md";
|
|
26
|
+
/** Accessible name announced by the `role="status"` live region. */
|
|
27
|
+
this.label = "Loading";
|
|
28
|
+
}
|
|
29
|
+
static { this.styles = [
|
|
30
|
+
tokens,
|
|
31
|
+
css `
|
|
32
|
+
:host {
|
|
33
|
+
display: inline-flex;
|
|
34
|
+
line-height: var(--ui-line-height-glyph, 1);
|
|
35
|
+
}
|
|
36
|
+
.dots {
|
|
37
|
+
display: inline-flex;
|
|
38
|
+
align-items: flex-end;
|
|
39
|
+
gap: 0.25rem;
|
|
40
|
+
}
|
|
41
|
+
.dot {
|
|
42
|
+
width: 0.5rem;
|
|
43
|
+
height: 0.5rem;
|
|
44
|
+
border-radius: 999px;
|
|
45
|
+
background: var(--ui-primary, #4f46e5);
|
|
46
|
+
animation: loading-dots-bounce 1.4s ease-in-out infinite;
|
|
47
|
+
}
|
|
48
|
+
.dot:nth-child(2) {
|
|
49
|
+
animation-delay: 0.16s;
|
|
50
|
+
}
|
|
51
|
+
.dot:nth-child(3) {
|
|
52
|
+
animation-delay: 0.32s;
|
|
53
|
+
}
|
|
54
|
+
.dots.sm .dot {
|
|
55
|
+
width: 0.375rem;
|
|
56
|
+
height: 0.375rem;
|
|
57
|
+
}
|
|
58
|
+
.dots.lg .dot {
|
|
59
|
+
width: 0.625rem;
|
|
60
|
+
height: 0.625rem;
|
|
61
|
+
}
|
|
62
|
+
@keyframes loading-dots-bounce {
|
|
63
|
+
0%,
|
|
64
|
+
80%,
|
|
65
|
+
100% {
|
|
66
|
+
transform: translateY(0);
|
|
67
|
+
opacity: 0.5;
|
|
68
|
+
}
|
|
69
|
+
40% {
|
|
70
|
+
transform: translateY(-0.375rem);
|
|
71
|
+
opacity: 1;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
@media (prefers-reduced-motion: reduce) {
|
|
75
|
+
.dot {
|
|
76
|
+
animation: none;
|
|
77
|
+
opacity: 1;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
@media (forced-colors: active) {
|
|
81
|
+
.dot {
|
|
82
|
+
background: CanvasText;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
`,
|
|
86
|
+
]; }
|
|
87
|
+
connectedCallback() {
|
|
88
|
+
super.connectedCallback();
|
|
89
|
+
if (!this.hasAttribute("role"))
|
|
90
|
+
this.setAttribute("role", "status");
|
|
91
|
+
}
|
|
92
|
+
updated(changed) {
|
|
93
|
+
if (changed.has("label"))
|
|
94
|
+
this.setAttribute("aria-label", this.label);
|
|
95
|
+
}
|
|
96
|
+
render() {
|
|
97
|
+
return html `
|
|
98
|
+
<span class="dots ${this.size}" aria-hidden="true">
|
|
99
|
+
<span class="dot"></span>
|
|
100
|
+
<span class="dot"></span>
|
|
101
|
+
<span class="dot"></span>
|
|
102
|
+
</span>
|
|
103
|
+
`;
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
__decorate([
|
|
107
|
+
property()
|
|
108
|
+
], LoadingDots.prototype, "size", void 0);
|
|
109
|
+
__decorate([
|
|
110
|
+
property()
|
|
111
|
+
], LoadingDots.prototype, "label", void 0);
|
|
112
|
+
LoadingDots = __decorate([
|
|
113
|
+
customElement("loading-dots")
|
|
114
|
+
], LoadingDots);
|
|
115
|
+
export { LoadingDots };
|
|
116
|
+
//# sourceMappingURL=loading-dots.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loading-dots.js","sourceRoot":"","sources":["../src/loading-dots.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAuB,MAAM,KAAK,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;;;;;;;GAUG;AAEI,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,UAAU;IAApC;;QA4DL,qDAAqD;QACzC,SAAI,GAAuB,IAAI,CAAC;QAC5C,oEAAoE;QACxD,UAAK,GAAG,SAAS,CAAC;IAoBhC,CAAC;aAlFiB,WAAM,GAAG;QACvB,MAAM;QACN,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsDF;KACF,AAzDqB,CAyDpB;IAOO,iBAAiB;QACxB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtE,CAAC;IAEkB,OAAO,CAAC,OAAuB;QAChD,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACxE,CAAC;IAEQ,MAAM;QACb,OAAO,IAAI,CAAA;0BACW,IAAI,CAAC,IAAI;;;;;KAK9B,CAAC;IACJ,CAAC;CACF,CAAA;AAtBa;IAAX,QAAQ,EAAE;yCAAiC;AAEhC;IAAX,QAAQ,EAAE;0CAAmB;AA/DnB,WAAW;IADvB,aAAa,CAAC,cAAc,CAAC;GACjB,WAAW,CAmFvB","sourcesContent":["import { LitElement, css, html, type PropertyValues } from \"lit\";\nimport { customElement, property } from \"lit/decorators.js\";\nimport { tokens } from \"./tokens.js\";\n\n/**\n * Three dots that bounce one after another as a lightweight, indeterminate\n * \"working\" / \"typing\" indicator. Purely presentational and property-driven —\n * show it while a short operation is pending and remove it when done.\n *\n * Exposes an accessible `role=\"status\"` with `label` as its name, so assistive\n * technology announces the loading state; the dots themselves are decorative.\n * Under `prefers-reduced-motion` the bounce is removed and the dots rest.\n *\n * @element loading-dots\n */\n@customElement(\"loading-dots\")\nexport class LoadingDots extends LitElement {\n static override styles = [\n tokens,\n css`\n :host {\n display: inline-flex;\n line-height: var(--ui-line-height-glyph, 1);\n }\n .dots {\n display: inline-flex;\n align-items: flex-end;\n gap: 0.25rem;\n }\n .dot {\n width: 0.5rem;\n height: 0.5rem;\n border-radius: 999px;\n background: var(--ui-primary, #4f46e5);\n animation: loading-dots-bounce 1.4s ease-in-out infinite;\n }\n .dot:nth-child(2) {\n animation-delay: 0.16s;\n }\n .dot:nth-child(3) {\n animation-delay: 0.32s;\n }\n .dots.sm .dot {\n width: 0.375rem;\n height: 0.375rem;\n }\n .dots.lg .dot {\n width: 0.625rem;\n height: 0.625rem;\n }\n @keyframes loading-dots-bounce {\n 0%,\n 80%,\n 100% {\n transform: translateY(0);\n opacity: 0.5;\n }\n 40% {\n transform: translateY(-0.375rem);\n opacity: 1;\n }\n }\n @media (prefers-reduced-motion: reduce) {\n .dot {\n animation: none;\n opacity: 1;\n }\n }\n @media (forced-colors: active) {\n .dot {\n background: CanvasText;\n }\n }\n `,\n ];\n\n /** Dot-size step — `sm`, `md` (default), or `lg`. */\n @property() size: \"sm\" | \"md\" | \"lg\" = \"md\";\n /** Accessible name announced by the `role=\"status\"` live region. */\n @property() label = \"Loading\";\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (!this.hasAttribute(\"role\")) this.setAttribute(\"role\", \"status\");\n }\n\n protected override updated(changed: PropertyValues): void {\n if (changed.has(\"label\")) this.setAttribute(\"aria-label\", this.label);\n }\n\n override render() {\n return html`\n <span class=\"dots ${this.size}\" aria-hidden=\"true\">\n <span class=\"dot\"></span>\n <span class=\"dot\"></span>\n <span class=\"dot\"></span>\n </span>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"loading-dots\": LoadingDots;\n }\n}\n"]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { LitElement, type PropertyValues } from "lit";
|
|
2
|
+
/**
|
|
3
|
+
* Indeterminate circular loading spinner: a rotating arc over a faint track,
|
|
4
|
+
* in the style of a browser page-load indicator. Purely presentational and
|
|
5
|
+
* property-driven — show it while work is in flight and remove it when done.
|
|
6
|
+
*
|
|
7
|
+
* Exposes an accessible `role="status"` with `label` as its name, so assistive
|
|
8
|
+
* technology announces the loading state; the arc itself is decorative. Under
|
|
9
|
+
* `prefers-reduced-motion` it stops rotating and stays a static ring.
|
|
10
|
+
*
|
|
11
|
+
* @element loading-spinner
|
|
12
|
+
*/
|
|
13
|
+
export declare class LoadingSpinner extends LitElement {
|
|
14
|
+
static styles: import("lit").CSSResult[];
|
|
15
|
+
/** Diameter step — `sm` ≈ 1rem, `md` ≈ 1.5rem (default), `lg` ≈ 2rem. */
|
|
16
|
+
size: "sm" | "md" | "lg";
|
|
17
|
+
/** Accessible name announced by the `role="status"` live region. */
|
|
18
|
+
label: string;
|
|
19
|
+
connectedCallback(): void;
|
|
20
|
+
protected updated(changed: PropertyValues): void;
|
|
21
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
22
|
+
}
|
|
23
|
+
declare global {
|
|
24
|
+
interface HTMLElementTagNameMap {
|
|
25
|
+
"loading-spinner": LoadingSpinner;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=loading-spinner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loading-spinner.d.ts","sourceRoot":"","sources":["../src/loading-spinner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAIjE;;;;;;;;;;GAUG;AACH,qBACa,cAAe,SAAQ,UAAU;IAC5C,OAAgB,MAAM,4BAmDpB;IAEF,yEAAyE;IAC7D,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAQ;IAC5C,oEAAoE;IACxD,KAAK,SAAa;IAErB,iBAAiB,IAAI,IAAI,CAGjC;IAED,UAAmB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAExD;IAEQ,MAAM,yCAOd;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,cAAc,CAAC;KACnC;CACF"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { LitElement, css, html } from "lit";
|
|
8
|
+
import { customElement, property } from "lit/decorators.js";
|
|
9
|
+
import { tokens } from "./tokens.js";
|
|
10
|
+
/**
|
|
11
|
+
* Indeterminate circular loading spinner: a rotating arc over a faint track,
|
|
12
|
+
* in the style of a browser page-load indicator. Purely presentational and
|
|
13
|
+
* property-driven — show it while work is in flight and remove it when done.
|
|
14
|
+
*
|
|
15
|
+
* Exposes an accessible `role="status"` with `label` as its name, so assistive
|
|
16
|
+
* technology announces the loading state; the arc itself is decorative. Under
|
|
17
|
+
* `prefers-reduced-motion` it stops rotating and stays a static ring.
|
|
18
|
+
*
|
|
19
|
+
* @element loading-spinner
|
|
20
|
+
*/
|
|
21
|
+
let LoadingSpinner = class LoadingSpinner extends LitElement {
|
|
22
|
+
constructor() {
|
|
23
|
+
super(...arguments);
|
|
24
|
+
/** Diameter step — `sm` ≈ 1rem, `md` ≈ 1.5rem (default), `lg` ≈ 2rem. */
|
|
25
|
+
this.size = "md";
|
|
26
|
+
/** Accessible name announced by the `role="status"` live region. */
|
|
27
|
+
this.label = "Loading";
|
|
28
|
+
}
|
|
29
|
+
static { this.styles = [
|
|
30
|
+
tokens,
|
|
31
|
+
css `
|
|
32
|
+
:host {
|
|
33
|
+
display: inline-flex;
|
|
34
|
+
line-height: var(--ui-line-height-glyph, 1);
|
|
35
|
+
}
|
|
36
|
+
.spinner {
|
|
37
|
+
width: 1.5rem;
|
|
38
|
+
height: 1.5rem;
|
|
39
|
+
animation: spin 0.8s linear infinite;
|
|
40
|
+
}
|
|
41
|
+
.spinner.sm {
|
|
42
|
+
width: 1rem;
|
|
43
|
+
height: 1rem;
|
|
44
|
+
}
|
|
45
|
+
.spinner.lg {
|
|
46
|
+
width: 2rem;
|
|
47
|
+
height: 2rem;
|
|
48
|
+
}
|
|
49
|
+
.track {
|
|
50
|
+
fill: none;
|
|
51
|
+
stroke: var(--ui-border, #e2e8f0);
|
|
52
|
+
stroke-width: 3;
|
|
53
|
+
}
|
|
54
|
+
.arc {
|
|
55
|
+
fill: none;
|
|
56
|
+
stroke: var(--ui-primary, #4f46e5);
|
|
57
|
+
stroke-width: 3;
|
|
58
|
+
stroke-linecap: round;
|
|
59
|
+
stroke-dasharray: 42 100;
|
|
60
|
+
}
|
|
61
|
+
@keyframes spin {
|
|
62
|
+
to {
|
|
63
|
+
transform: rotate(360deg);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
@media (prefers-reduced-motion: reduce) {
|
|
67
|
+
.spinner {
|
|
68
|
+
animation: none;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
@media (forced-colors: active) {
|
|
72
|
+
.track {
|
|
73
|
+
stroke: GrayText;
|
|
74
|
+
}
|
|
75
|
+
.arc {
|
|
76
|
+
stroke: CanvasText;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
`,
|
|
80
|
+
]; }
|
|
81
|
+
connectedCallback() {
|
|
82
|
+
super.connectedCallback();
|
|
83
|
+
if (!this.hasAttribute("role"))
|
|
84
|
+
this.setAttribute("role", "status");
|
|
85
|
+
}
|
|
86
|
+
updated(changed) {
|
|
87
|
+
if (changed.has("label"))
|
|
88
|
+
this.setAttribute("aria-label", this.label);
|
|
89
|
+
}
|
|
90
|
+
render() {
|
|
91
|
+
return html `
|
|
92
|
+
<svg class="spinner ${this.size}" viewBox="0 0 24 24" aria-hidden="true">
|
|
93
|
+
<circle class="track" cx="12" cy="12" r="9"></circle>
|
|
94
|
+
<circle class="arc" cx="12" cy="12" r="9"></circle>
|
|
95
|
+
</svg>
|
|
96
|
+
`;
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
__decorate([
|
|
100
|
+
property()
|
|
101
|
+
], LoadingSpinner.prototype, "size", void 0);
|
|
102
|
+
__decorate([
|
|
103
|
+
property()
|
|
104
|
+
], LoadingSpinner.prototype, "label", void 0);
|
|
105
|
+
LoadingSpinner = __decorate([
|
|
106
|
+
customElement("loading-spinner")
|
|
107
|
+
], LoadingSpinner);
|
|
108
|
+
export { LoadingSpinner };
|
|
109
|
+
//# sourceMappingURL=loading-spinner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loading-spinner.js","sourceRoot":"","sources":["../src/loading-spinner.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAuB,MAAM,KAAK,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;;;;;;;GAUG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,UAAU;IAAvC;;QAsDL,yEAAyE;QAC7D,SAAI,GAAuB,IAAI,CAAC;QAC5C,oEAAoE;QACxD,UAAK,GAAG,SAAS,CAAC;IAmBhC,CAAC;aA3EiB,WAAM,GAAG;QACvB,MAAM;QACN,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAgDF;KACF,AAnDqB,CAmDpB;IAOO,iBAAiB;QACxB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtE,CAAC;IAEkB,OAAO,CAAC,OAAuB;QAChD,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACxE,CAAC;IAEQ,MAAM;QACb,OAAO,IAAI,CAAA;4BACa,IAAI,CAAC,IAAI;;;;KAIhC,CAAC;IACJ,CAAC;CACF,CAAA;AArBa;IAAX,QAAQ,EAAE;4CAAiC;AAEhC;IAAX,QAAQ,EAAE;6CAAmB;AAzDnB,cAAc;IAD1B,aAAa,CAAC,iBAAiB,CAAC;GACpB,cAAc,CA4E1B","sourcesContent":["import { LitElement, css, html, type PropertyValues } from \"lit\";\nimport { customElement, property } from \"lit/decorators.js\";\nimport { tokens } from \"./tokens.js\";\n\n/**\n * Indeterminate circular loading spinner: a rotating arc over a faint track,\n * in the style of a browser page-load indicator. Purely presentational and\n * property-driven — show it while work is in flight and remove it when done.\n *\n * Exposes an accessible `role=\"status\"` with `label` as its name, so assistive\n * technology announces the loading state; the arc itself is decorative. Under\n * `prefers-reduced-motion` it stops rotating and stays a static ring.\n *\n * @element loading-spinner\n */\n@customElement(\"loading-spinner\")\nexport class LoadingSpinner extends LitElement {\n static override styles = [\n tokens,\n css`\n :host {\n display: inline-flex;\n line-height: var(--ui-line-height-glyph, 1);\n }\n .spinner {\n width: 1.5rem;\n height: 1.5rem;\n animation: spin 0.8s linear infinite;\n }\n .spinner.sm {\n width: 1rem;\n height: 1rem;\n }\n .spinner.lg {\n width: 2rem;\n height: 2rem;\n }\n .track {\n fill: none;\n stroke: var(--ui-border, #e2e8f0);\n stroke-width: 3;\n }\n .arc {\n fill: none;\n stroke: var(--ui-primary, #4f46e5);\n stroke-width: 3;\n stroke-linecap: round;\n stroke-dasharray: 42 100;\n }\n @keyframes spin {\n to {\n transform: rotate(360deg);\n }\n }\n @media (prefers-reduced-motion: reduce) {\n .spinner {\n animation: none;\n }\n }\n @media (forced-colors: active) {\n .track {\n stroke: GrayText;\n }\n .arc {\n stroke: CanvasText;\n }\n }\n `,\n ];\n\n /** Diameter step — `sm` ≈ 1rem, `md` ≈ 1.5rem (default), `lg` ≈ 2rem. */\n @property() size: \"sm\" | \"md\" | \"lg\" = \"md\";\n /** Accessible name announced by the `role=\"status\"` live region. */\n @property() label = \"Loading\";\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (!this.hasAttribute(\"role\")) this.setAttribute(\"role\", \"status\");\n }\n\n protected override updated(changed: PropertyValues): void {\n if (changed.has(\"label\")) this.setAttribute(\"aria-label\", this.label);\n }\n\n override render() {\n return html`\n <svg class=\"spinner ${this.size}\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <circle class=\"track\" cx=\"12\" cy=\"12\" r=\"9\"></circle>\n <circle class=\"arc\" cx=\"12\" cy=\"12\" r=\"9\"></circle>\n </svg>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"loading-spinner\": LoadingSpinner;\n }\n}\n"]}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# `<loading-dots>`
|
|
2
|
+
|
|
3
|
+
Three dots that bounce one after another as a lightweight, indeterminate
|
|
4
|
+
"working" / "typing" indicator. Purely presentational and property-driven —
|
|
5
|
+
show it while a short operation is pending and remove it when done.
|
|
6
|
+
|
|
7
|
+
Exposes an accessible `role="status"` with `label` as its name, so assistive
|
|
8
|
+
technology announces the loading state; the dots themselves are decorative.
|
|
9
|
+
Under `prefers-reduced-motion` the bounce is removed and the dots rest.
|
|
10
|
+
|
|
11
|
+
## Install
|
|
12
|
+
|
|
13
|
+
```js
|
|
14
|
+
import "@f-ewald/components/loading-dots.js";
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Usage
|
|
18
|
+
|
|
19
|
+
```html
|
|
20
|
+
<loading-dots></loading-dots>
|
|
21
|
+
<loading-dots size="sm"></loading-dots>
|
|
22
|
+
<loading-dots size="lg" label="Sending message"></loading-dots>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Attributes / properties
|
|
26
|
+
|
|
27
|
+
| Property | Attribute | Type | Default | Description |
|
|
28
|
+
| --- | --- | --- | --- | --- |
|
|
29
|
+
| `size` | `size` | `"sm" | "md" | "lg"` | `"md"` | Dot-size step — `sm`, `md` (default), or `lg`. |
|
|
30
|
+
| `label` | `label` | `string` | `"Loading"` | Accessible name announced by the `role="status"` live region. |
|
|
31
|
+
|
|
32
|
+
## Events
|
|
33
|
+
|
|
34
|
+
_None._
|
|
35
|
+
|
|
36
|
+
## Slots
|
|
37
|
+
|
|
38
|
+
_None._
|
|
39
|
+
|
|
40
|
+
## CSS custom properties
|
|
41
|
+
|
|
42
|
+
| Custom property |
|
|
43
|
+
| --- |
|
|
44
|
+
| `--ui-line-height-glyph` |
|
|
45
|
+
| `--ui-primary` |
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# `<loading-spinner>`
|
|
2
|
+
|
|
3
|
+
Indeterminate circular loading spinner: a rotating arc over a faint track,
|
|
4
|
+
in the style of a browser page-load indicator. Purely presentational and
|
|
5
|
+
property-driven — show it while work is in flight and remove it when done.
|
|
6
|
+
|
|
7
|
+
Exposes an accessible `role="status"` with `label` as its name, so assistive
|
|
8
|
+
technology announces the loading state; the arc itself is decorative. Under
|
|
9
|
+
`prefers-reduced-motion` it stops rotating and stays a static ring.
|
|
10
|
+
|
|
11
|
+
## Install
|
|
12
|
+
|
|
13
|
+
```js
|
|
14
|
+
import "@f-ewald/components/loading-spinner.js";
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Usage
|
|
18
|
+
|
|
19
|
+
```html
|
|
20
|
+
<loading-spinner></loading-spinner>
|
|
21
|
+
<loading-spinner size="sm"></loading-spinner>
|
|
22
|
+
<loading-spinner size="lg" label="Loading results"></loading-spinner>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Attributes / properties
|
|
26
|
+
|
|
27
|
+
| Property | Attribute | Type | Default | Description |
|
|
28
|
+
| --- | --- | --- | --- | --- |
|
|
29
|
+
| `size` | `size` | `"sm" | "md" | "lg"` | `"md"` | Diameter step — `sm` ≈ 1rem, `md` ≈ 1.5rem (default), `lg` ≈ 2rem. |
|
|
30
|
+
| `label` | `label` | `string` | `"Loading"` | Accessible name announced by the `role="status"` live region. |
|
|
31
|
+
|
|
32
|
+
## Events
|
|
33
|
+
|
|
34
|
+
_None._
|
|
35
|
+
|
|
36
|
+
## Slots
|
|
37
|
+
|
|
38
|
+
_None._
|
|
39
|
+
|
|
40
|
+
## CSS custom properties
|
|
41
|
+
|
|
42
|
+
| Custom property |
|
|
43
|
+
| --- |
|
|
44
|
+
| `--ui-border` |
|
|
45
|
+
| `--ui-line-height-glyph` |
|
|
46
|
+
| `--ui-primary` |
|
package/llms.txt
CHANGED
|
@@ -992,6 +992,52 @@ Example:
|
|
|
992
992
|
<load-more></load-more>
|
|
993
993
|
```
|
|
994
994
|
|
|
995
|
+
## <loading-dots>
|
|
996
|
+
|
|
997
|
+
Three dots that bounce one after another as a lightweight, indeterminate
|
|
998
|
+
"working" / "typing" indicator. Purely presentational and property-driven —
|
|
999
|
+
show it while a short operation is pending and remove it when done.
|
|
1000
|
+
|
|
1001
|
+
Exposes an accessible `role="status"` with `label` as its name, so assistive
|
|
1002
|
+
technology announces the loading state; the dots themselves are decorative.
|
|
1003
|
+
Under `prefers-reduced-motion` the bounce is removed and the dots rest.
|
|
1004
|
+
|
|
1005
|
+
Import: `import "@f-ewald/components/loading-dots.js";`
|
|
1006
|
+
|
|
1007
|
+
Properties: `size` (attribute `size`) : "sm" | "md" | "lg", default "md"; `label` (attribute `label`) : string, default "Loading"
|
|
1008
|
+
Events: none
|
|
1009
|
+
CSS custom properties: `--ui-line-height-glyph`, `--ui-primary`
|
|
1010
|
+
|
|
1011
|
+
Example:
|
|
1012
|
+
```html
|
|
1013
|
+
<loading-dots></loading-dots>
|
|
1014
|
+
<loading-dots size="sm"></loading-dots>
|
|
1015
|
+
<loading-dots size="lg" label="Sending message"></loading-dots>
|
|
1016
|
+
```
|
|
1017
|
+
|
|
1018
|
+
## <loading-spinner>
|
|
1019
|
+
|
|
1020
|
+
Indeterminate circular loading spinner: a rotating arc over a faint track,
|
|
1021
|
+
in the style of a browser page-load indicator. Purely presentational and
|
|
1022
|
+
property-driven — show it while work is in flight and remove it when done.
|
|
1023
|
+
|
|
1024
|
+
Exposes an accessible `role="status"` with `label` as its name, so assistive
|
|
1025
|
+
technology announces the loading state; the arc itself is decorative. Under
|
|
1026
|
+
`prefers-reduced-motion` it stops rotating and stays a static ring.
|
|
1027
|
+
|
|
1028
|
+
Import: `import "@f-ewald/components/loading-spinner.js";`
|
|
1029
|
+
|
|
1030
|
+
Properties: `size` (attribute `size`) : "sm" | "md" | "lg", default "md"; `label` (attribute `label`) : string, default "Loading"
|
|
1031
|
+
Events: none
|
|
1032
|
+
CSS custom properties: `--ui-border`, `--ui-line-height-glyph`, `--ui-primary`
|
|
1033
|
+
|
|
1034
|
+
Example:
|
|
1035
|
+
```html
|
|
1036
|
+
<loading-spinner></loading-spinner>
|
|
1037
|
+
<loading-spinner size="sm"></loading-spinner>
|
|
1038
|
+
<loading-spinner size="lg" label="Loading results"></loading-spinner>
|
|
1039
|
+
```
|
|
1040
|
+
|
|
995
1041
|
## <map-circle>
|
|
996
1042
|
|
|
997
1043
|
A plain circular map marker: a radial-gradient fill with a soft highlight
|