@loworbitstudio/visor 0.4.0 → 0.6.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 +19 -0
- package/dist/CHANGELOG.json +13 -1
- package/dist/index.js +1009 -273
- package/dist/registry.json +712 -13
- package/dist/visor-manifest.json +175 -4
- package/package.json +1 -1
package/dist/visor-manifest.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "0.4.0",
|
|
3
|
-
"generated_at": "2026-04-
|
|
3
|
+
"generated_at": "2026-04-29T19:23:27.556Z",
|
|
4
4
|
"components": {
|
|
5
5
|
"accessibility-specimen": {
|
|
6
6
|
"category": "specimen",
|
|
@@ -1401,6 +1401,7 @@
|
|
|
1401
1401
|
"--surface-card",
|
|
1402
1402
|
"--surface-interactive-default",
|
|
1403
1403
|
"--surface-interactive-hover",
|
|
1404
|
+
"--surface-popover",
|
|
1404
1405
|
"--text-primary",
|
|
1405
1406
|
"--text-secondary"
|
|
1406
1407
|
],
|
|
@@ -1492,6 +1493,7 @@
|
|
|
1492
1493
|
"--spacing-6",
|
|
1493
1494
|
"--surface-card",
|
|
1494
1495
|
"--surface-interactive-hover",
|
|
1496
|
+
"--surface-popover",
|
|
1495
1497
|
"--text-primary",
|
|
1496
1498
|
"--text-secondary",
|
|
1497
1499
|
"--text-tertiary"
|
|
@@ -1744,6 +1746,7 @@
|
|
|
1744
1746
|
"--surface-card",
|
|
1745
1747
|
"--surface-error-subtle",
|
|
1746
1748
|
"--surface-interactive-hover",
|
|
1749
|
+
"--surface-popover",
|
|
1747
1750
|
"--text-error",
|
|
1748
1751
|
"--text-primary",
|
|
1749
1752
|
"--text-secondary"
|
|
@@ -1958,11 +1961,80 @@
|
|
|
1958
1961
|
"--spacing-2",
|
|
1959
1962
|
"--spacing-3",
|
|
1960
1963
|
"--surface-card",
|
|
1964
|
+
"--surface-popover",
|
|
1961
1965
|
"--text-primary",
|
|
1962
1966
|
"--text-tertiary"
|
|
1963
1967
|
],
|
|
1964
1968
|
"example": "<DatePicker\n value={selectedDate}\n onChange={setSelectedDate}\n placeholder=\"Select a date\"\n/>\n\n<DatePicker\n value={dueDate}\n onChange={setDueDate}\n dateFormat=\"MM/dd/yyyy\"\n disabled={isReadOnly}\n/>\n"
|
|
1965
1969
|
},
|
|
1970
|
+
"date-range-picker": {
|
|
1971
|
+
"category": "form",
|
|
1972
|
+
"description": "A date range picker combining a trigger button with a two-month popover Calendar for start–end date selection.",
|
|
1973
|
+
"when_to_use": [
|
|
1974
|
+
"Date range input in forms (check-in/check-out, travel dates, billing period)",
|
|
1975
|
+
"Any field where users need to select both a start and end date from a calendar popup",
|
|
1976
|
+
"Compact range selection that doesn't take up inline space"
|
|
1977
|
+
],
|
|
1978
|
+
"when_not_to_use": [
|
|
1979
|
+
"Single date selection (use DatePicker)",
|
|
1980
|
+
"Always-visible range calendar display (use Calendar with mode=\"range\" inline)",
|
|
1981
|
+
"Date and time together (use a dedicated datetime picker)",
|
|
1982
|
+
"Free-form date text entry (use Input with date validation)"
|
|
1983
|
+
],
|
|
1984
|
+
"props": [
|
|
1985
|
+
{
|
|
1986
|
+
"name": "value",
|
|
1987
|
+
"type": "DateRange | undefined",
|
|
1988
|
+
"description": "Currently selected date range ({ from, to })"
|
|
1989
|
+
},
|
|
1990
|
+
{
|
|
1991
|
+
"name": "onChange",
|
|
1992
|
+
"type": "(range: DateRange) => void",
|
|
1993
|
+
"description": "Called when the range changes"
|
|
1994
|
+
},
|
|
1995
|
+
{
|
|
1996
|
+
"name": "placeholder",
|
|
1997
|
+
"type": "string",
|
|
1998
|
+
"default": "\"Pick a date range\""
|
|
1999
|
+
},
|
|
2000
|
+
{
|
|
2001
|
+
"name": "dateFormat",
|
|
2002
|
+
"type": "string",
|
|
2003
|
+
"default": "\"PPP\"",
|
|
2004
|
+
"description": "date-fns format string for displaying both endpoints"
|
|
2005
|
+
},
|
|
2006
|
+
{
|
|
2007
|
+
"name": "disabled",
|
|
2008
|
+
"type": "boolean",
|
|
2009
|
+
"default": "false"
|
|
2010
|
+
}
|
|
2011
|
+
],
|
|
2012
|
+
"dependencies": [
|
|
2013
|
+
"@radix-ui/react-popover",
|
|
2014
|
+
"date-fns",
|
|
2015
|
+
"@phosphor-icons/react"
|
|
2016
|
+
],
|
|
2017
|
+
"tokens_used": [
|
|
2018
|
+
"--border-default",
|
|
2019
|
+
"--border-focus",
|
|
2020
|
+
"--border-strong",
|
|
2021
|
+
"--focus-ring-offset",
|
|
2022
|
+
"--focus-ring-width",
|
|
2023
|
+
"--font-size-sm",
|
|
2024
|
+
"--motion-duration-fast",
|
|
2025
|
+
"--motion-easing-default",
|
|
2026
|
+
"--radius-lg",
|
|
2027
|
+
"--radius-md",
|
|
2028
|
+
"--shadow-md",
|
|
2029
|
+
"--spacing-2",
|
|
2030
|
+
"--spacing-3",
|
|
2031
|
+
"--surface-card",
|
|
2032
|
+
"--surface-popover",
|
|
2033
|
+
"--text-primary",
|
|
2034
|
+
"--text-tertiary"
|
|
2035
|
+
],
|
|
2036
|
+
"example": "<DateRangePicker\n value={range}\n onChange={setRange}\n placeholder=\"Select date range\"\n/>\n\n<DateRangePicker\n value={travelDates}\n onChange={setTravelDates}\n dateFormat=\"MM/dd/yyyy\"\n disabled={isReadOnly}\n/>\n"
|
|
2037
|
+
},
|
|
1966
2038
|
"dialog": {
|
|
1967
2039
|
"category": "overlay",
|
|
1968
2040
|
"description": "Modal overlay that requires user attention before returning to the page.",
|
|
@@ -2190,6 +2262,7 @@
|
|
|
2190
2262
|
"--surface-card",
|
|
2191
2263
|
"--surface-error-subtle",
|
|
2192
2264
|
"--surface-interactive-hover",
|
|
2265
|
+
"--surface-popover",
|
|
2193
2266
|
"--text-error",
|
|
2194
2267
|
"--text-primary",
|
|
2195
2268
|
"--text-secondary"
|
|
@@ -2922,6 +2995,7 @@
|
|
|
2922
2995
|
"--shadow-lg",
|
|
2923
2996
|
"--spacing-4",
|
|
2924
2997
|
"--surface-card",
|
|
2998
|
+
"--surface-popover",
|
|
2925
2999
|
"--text-primary"
|
|
2926
3000
|
],
|
|
2927
3001
|
"example": "<HoverCard>\n <HoverCardTrigger asChild>\n <a href=\"/user/jane\">@jane</a>\n </HoverCardTrigger>\n <HoverCardContent>\n <p><strong>Jane Smith</strong></p>\n <p>Product designer at Acme Corp</p>\n </HoverCardContent>\n</HoverCard>\n"
|
|
@@ -3372,6 +3446,7 @@
|
|
|
3372
3446
|
"--surface-card",
|
|
3373
3447
|
"--surface-error-subtle",
|
|
3374
3448
|
"--surface-interactive-hover",
|
|
3449
|
+
"--surface-popover",
|
|
3375
3450
|
"--text-error",
|
|
3376
3451
|
"--text-primary",
|
|
3377
3452
|
"--text-secondary"
|
|
@@ -4007,6 +4082,7 @@
|
|
|
4007
4082
|
"--shadow-lg",
|
|
4008
4083
|
"--spacing-4",
|
|
4009
4084
|
"--surface-card",
|
|
4085
|
+
"--surface-popover",
|
|
4010
4086
|
"--text-primary"
|
|
4011
4087
|
],
|
|
4012
4088
|
"example": "<Popover>\n <PopoverTrigger asChild>\n <Button variant=\"outline\">Open settings</Button>\n </PopoverTrigger>\n <PopoverContent>\n <p>Popover content here</p>\n </PopoverContent>\n</Popover>\n"
|
|
@@ -4320,7 +4396,7 @@
|
|
|
4320
4396
|
"--surface-card",
|
|
4321
4397
|
"--surface-interactive-default",
|
|
4322
4398
|
"--surface-interactive-hover",
|
|
4323
|
-
"--surface-
|
|
4399
|
+
"--surface-popover",
|
|
4324
4400
|
"--text-primary",
|
|
4325
4401
|
"--text-secondary"
|
|
4326
4402
|
],
|
|
@@ -4732,7 +4808,8 @@
|
|
|
4732
4808
|
"--motion-easing-default",
|
|
4733
4809
|
"--shadow-sm",
|
|
4734
4810
|
"--surface-card",
|
|
4735
|
-
"--surface-interactive-default"
|
|
4811
|
+
"--surface-interactive-default",
|
|
4812
|
+
"--surface-popover"
|
|
4736
4813
|
],
|
|
4737
4814
|
"example": "<Slider defaultValue={[50]} max={100} step={1} />\n\n<Slider defaultValue={[25, 75]} max={100} step={5} />\n"
|
|
4738
4815
|
},
|
|
@@ -5574,6 +5651,81 @@
|
|
|
5574
5651
|
],
|
|
5575
5652
|
"example": "<Textarea placeholder=\"Write your message...\" rows={4} />\n\n<Textarea aria-invalid=\"true\" />\n"
|
|
5576
5653
|
},
|
|
5654
|
+
"theme-switcher": {
|
|
5655
|
+
"category": "general",
|
|
5656
|
+
"description": "Fixed-position pill switcher for theme and dark/light mode, with an extras slot for hosting devtools chrome.",
|
|
5657
|
+
"when_to_use": [
|
|
5658
|
+
"Hosts apps that ship multiple Visor themes and need a runtime switcher",
|
|
5659
|
+
"Dark/light mode toggle persisted across sessions",
|
|
5660
|
+
"Mounting devtools chrome (e.g., SourceInspectorToggle) into a stable host"
|
|
5661
|
+
],
|
|
5662
|
+
"when_not_to_use": [
|
|
5663
|
+
"Production-only chrome with no dev affordances (use a tighter custom switcher)",
|
|
5664
|
+
"Single-theme apps that only need a mode toggle (build a leaner control)"
|
|
5665
|
+
],
|
|
5666
|
+
"props": [
|
|
5667
|
+
{
|
|
5668
|
+
"name": "themes",
|
|
5669
|
+
"type": "ThemeOption[]",
|
|
5670
|
+
"default": "[]",
|
|
5671
|
+
"description": "List of themes available in the Theme segment. Empty list hides the Theme segment and only renders Mode."
|
|
5672
|
+
},
|
|
5673
|
+
{
|
|
5674
|
+
"name": "defaultThemeId",
|
|
5675
|
+
"type": "string",
|
|
5676
|
+
"default": "themes[0]?.id",
|
|
5677
|
+
"description": "Initial theme id when nothing is stored."
|
|
5678
|
+
},
|
|
5679
|
+
{
|
|
5680
|
+
"name": "defaultMode",
|
|
5681
|
+
"type": "'dark' | 'light'",
|
|
5682
|
+
"default": "dark"
|
|
5683
|
+
},
|
|
5684
|
+
{
|
|
5685
|
+
"name": "themeStorageKey",
|
|
5686
|
+
"type": "string",
|
|
5687
|
+
"default": "visor-theme"
|
|
5688
|
+
},
|
|
5689
|
+
{
|
|
5690
|
+
"name": "modeStorageKey",
|
|
5691
|
+
"type": "string",
|
|
5692
|
+
"default": "visor-color-mode"
|
|
5693
|
+
},
|
|
5694
|
+
{
|
|
5695
|
+
"name": "extras",
|
|
5696
|
+
"type": "React.ReactNode",
|
|
5697
|
+
"description": "Rendered after the Mode segment, inside the wrapper. For dev chrome (e.g., SourceInspectorToggle)."
|
|
5698
|
+
},
|
|
5699
|
+
{
|
|
5700
|
+
"name": "className",
|
|
5701
|
+
"type": "string",
|
|
5702
|
+
"description": "Additional className merged onto the root wrapper."
|
|
5703
|
+
}
|
|
5704
|
+
],
|
|
5705
|
+
"dependencies": [],
|
|
5706
|
+
"tokens_used": [
|
|
5707
|
+
"--border-focus",
|
|
5708
|
+
"--focus-ring-offset",
|
|
5709
|
+
"--focus-ring-width",
|
|
5710
|
+
"--font-body",
|
|
5711
|
+
"--font-size-xs",
|
|
5712
|
+
"--font-weight-medium",
|
|
5713
|
+
"--motion-duration-100",
|
|
5714
|
+
"--motion-easing-default",
|
|
5715
|
+
"--radius-full",
|
|
5716
|
+
"--shadow-md",
|
|
5717
|
+
"--spacing-1",
|
|
5718
|
+
"--spacing-2",
|
|
5719
|
+
"--spacing-3",
|
|
5720
|
+
"--stroke-width-thin",
|
|
5721
|
+
"--surface-card",
|
|
5722
|
+
"--surface-popover",
|
|
5723
|
+
"--text-primary",
|
|
5724
|
+
"--text-secondary",
|
|
5725
|
+
"--text-tertiary"
|
|
5726
|
+
],
|
|
5727
|
+
"example": "import { ThemeSwitcher } from \"@/components/ui/theme-switcher/theme-switcher\"\nimport { SourceInspectorToggle } from \"@/components/devtools/source-inspector/source-inspector-toggle\"\n\n<ThemeSwitcher\n themes={[\n { id: \"default\", label: \"Default\", bodyClass: \"\" },\n { id: \"blackout\", label: \"Blackout\", bodyClass: \"blackout-theme\" },\n ]}\n extras={<SourceInspectorToggle />}\n/>\n"
|
|
5728
|
+
},
|
|
5577
5729
|
"timeline": {
|
|
5578
5730
|
"category": "data-display",
|
|
5579
5731
|
"description": "A vertical timeline with status-based styling, optional icons, timestamps, and connector lines.",
|
|
@@ -5710,6 +5862,7 @@
|
|
|
5710
5862
|
"--surface-card",
|
|
5711
5863
|
"--surface-error-subtle",
|
|
5712
5864
|
"--surface-info-subtle",
|
|
5865
|
+
"--surface-popover",
|
|
5713
5866
|
"--surface-success-subtle",
|
|
5714
5867
|
"--surface-warning-subtle",
|
|
5715
5868
|
"--text-primary",
|
|
@@ -7747,6 +7900,7 @@
|
|
|
7747
7900
|
"checkbox",
|
|
7748
7901
|
"combobox",
|
|
7749
7902
|
"date-picker",
|
|
7903
|
+
"date-range-picker",
|
|
7750
7904
|
"field",
|
|
7751
7905
|
"fieldset",
|
|
7752
7906
|
"file-upload",
|
|
@@ -7792,6 +7946,9 @@
|
|
|
7792
7946
|
"menubar",
|
|
7793
7947
|
"sheet"
|
|
7794
7948
|
],
|
|
7949
|
+
"general": [
|
|
7950
|
+
"theme-switcher"
|
|
7951
|
+
],
|
|
7795
7952
|
"deck": [
|
|
7796
7953
|
"deck-card-grid",
|
|
7797
7954
|
"deck-carousel-gallery",
|
|
@@ -8810,6 +8967,13 @@
|
|
|
8810
8967
|
"defaultLight": "var(--color-neutral-50)",
|
|
8811
8968
|
"defaultDark": "var(--color-neutral-50)"
|
|
8812
8969
|
},
|
|
8970
|
+
{
|
|
8971
|
+
"name": "--surface-selected",
|
|
8972
|
+
"tier": "semantic",
|
|
8973
|
+
"description": "Semantic surface: selected",
|
|
8974
|
+
"defaultLight": "var(--color-primary-100)",
|
|
8975
|
+
"defaultDark": "var(--color-primary-100)"
|
|
8976
|
+
},
|
|
8813
8977
|
{
|
|
8814
8978
|
"name": "--surface-accent-subtle",
|
|
8815
8979
|
"tier": "semantic",
|
|
@@ -9547,6 +9711,13 @@
|
|
|
9547
9711
|
"defaultLight": "#f9fafb",
|
|
9548
9712
|
"defaultDark": "#1f2937"
|
|
9549
9713
|
},
|
|
9714
|
+
{
|
|
9715
|
+
"name": "--surface-selected",
|
|
9716
|
+
"tier": "adaptive",
|
|
9717
|
+
"description": "Adaptive surface: selected",
|
|
9718
|
+
"defaultLight": "#dbeafe",
|
|
9719
|
+
"defaultDark": "#1e40af"
|
|
9720
|
+
},
|
|
9550
9721
|
{
|
|
9551
9722
|
"name": "--surface-accent-subtle",
|
|
9552
9723
|
"tier": "adaptive",
|
|
@@ -9906,7 +10077,7 @@
|
|
|
9906
10077
|
}
|
|
9907
10078
|
],
|
|
9908
10079
|
"summary": {
|
|
9909
|
-
"total":
|
|
10080
|
+
"total": 300
|
|
9910
10081
|
}
|
|
9911
10082
|
}
|
|
9912
10083
|
}
|