@stacksjs/components 0.2.571 → 0.2.573
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/dist/components/CodeBlock.d.ts +35 -0
- package/dist/components/Footer.d.ts +12 -0
- package/dist/components/Hero.d.ts +7 -0
- package/dist/components/Installation.d.ts +9 -0
- package/dist/components/index.d.ts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/ui/accordion/Accordion.d.ts +22 -0
- package/dist/ui/accordion/AccordionItem.d.ts +11 -0
- package/dist/ui/accordion/index.d.ts +2 -2
- package/dist/ui/audio/Audio.d.ts +4 -0
- package/dist/ui/audio/index.d.ts +1 -1
- package/dist/ui/auth/Login.d.ts +30 -0
- package/dist/ui/auth/Signup.d.ts +18 -0
- package/dist/ui/auth/TwoFactorChallenge.d.ts +24 -0
- package/dist/ui/auth/index.d.ts +3 -3
- package/dist/ui/avatar/Avatar.d.ts +17 -0
- package/dist/ui/avatar/index.d.ts +1 -1
- package/dist/ui/badge/Badge.d.ts +42 -0
- package/dist/ui/badge/index.d.ts +1 -1
- package/dist/ui/breadcrumb/Breadcrumb.d.ts +13 -0
- package/dist/ui/breadcrumb/index.d.ts +1 -1
- package/dist/ui/button/Button.d.ts +103 -0
- package/dist/ui/button/index.d.ts +1 -1
- package/dist/ui/calendar/Calendar.d.ts +67 -0
- package/dist/ui/calendar/index.d.ts +1 -1
- package/dist/ui/card/Card.d.ts +14 -0
- package/dist/ui/card/index.d.ts +1 -1
- package/dist/ui/chat/ChatInbox.d.ts +15 -0
- package/dist/ui/chat/ChatLauncher.d.ts +8 -0
- package/dist/ui/chat/ChatMessage.d.ts +9 -0
- package/dist/ui/chat/ChatUnreadBadge.d.ts +5 -0
- package/dist/ui/chat/index.d.ts +4 -4
- package/dist/ui/checkbox/Checkbox.d.ts +53 -0
- package/dist/ui/checkbox/index.d.ts +1 -1
- package/dist/ui/combobox/Combobox.d.ts +40 -0
- package/dist/ui/combobox/ComboboxButton.d.ts +13 -0
- package/dist/ui/combobox/ComboboxInput.d.ts +9 -0
- package/dist/ui/combobox/ComboboxOption.d.ts +10 -0
- package/dist/ui/combobox/ComboboxOptions.d.ts +7 -0
- package/dist/ui/combobox/index.d.ts +5 -5
- package/dist/ui/command-palette/CommandPalette.d.ts +13 -0
- package/dist/ui/command-palette/CommandPaletteItem.d.ts +8 -0
- package/dist/ui/command-palette/index.d.ts +2 -2
- package/dist/ui/date-range-picker/DateRangePicker.d.ts +59 -0
- package/dist/ui/date-range-picker/index.d.ts +1 -1
- package/dist/ui/dialog/Dialog.d.ts +31 -0
- package/dist/ui/dialog/DialogBackdrop.d.ts +6 -0
- package/dist/ui/dialog/DialogDescription.d.ts +6 -0
- package/dist/ui/dialog/DialogPanel.d.ts +6 -0
- package/dist/ui/dialog/DialogTitle.d.ts +6 -0
- package/dist/ui/dialog/index.d.ts +5 -5
- package/dist/ui/drawer/Drawer.d.ts +90 -0
- package/dist/ui/drawer/index.d.ts +1 -1
- package/dist/ui/dropdown/Dropdown.d.ts +12 -0
- package/dist/ui/dropdown/DropdownButton.d.ts +8 -0
- package/dist/ui/dropdown/DropdownItem.d.ts +10 -0
- package/dist/ui/dropdown/DropdownItems.d.ts +7 -0
- package/dist/ui/dropdown/index.d.ts +4 -4
- package/dist/ui/empty-state/EmptyState.d.ts +33 -0
- package/dist/ui/empty-state/index.d.ts +1 -1
- package/dist/ui/form/Form.d.ts +31 -0
- package/dist/ui/form/index.d.ts +1 -1
- package/dist/ui/image/Image.d.ts +104 -0
- package/dist/ui/image/index.d.ts +1 -1
- package/dist/ui/input/EmailInput.d.ts +28 -0
- package/dist/ui/input/NumberInput.d.ts +83 -0
- package/dist/ui/input/PasswordInput.d.ts +84 -0
- package/dist/ui/input/SearchInput.d.ts +29 -0
- package/dist/ui/input/TextInput.d.ts +145 -0
- package/dist/ui/input/index.d.ts +17 -5
- package/dist/ui/listbox/Listbox.d.ts +30 -0
- package/dist/ui/listbox/ListboxButton.d.ts +8 -0
- package/dist/ui/listbox/ListboxLabel.d.ts +6 -0
- package/dist/ui/listbox/ListboxOption.d.ts +10 -0
- package/dist/ui/listbox/ListboxOptions.d.ts +7 -0
- package/dist/ui/listbox/index.d.ts +5 -5
- package/dist/ui/mobile/FilterChip.d.ts +35 -0
- package/dist/ui/mobile/FilterChips.d.ts +26 -0
- package/dist/ui/mobile/ListRow.d.ts +35 -0
- package/dist/ui/mobile/NavBar.d.ts +47 -0
- package/dist/ui/mobile/SectionCard.d.ts +38 -0
- package/dist/ui/mobile/TabBar.d.ts +31 -0
- package/dist/ui/mobile/TabBarItem.d.ts +41 -0
- package/dist/ui/mobile/index.d.ts +7 -7
- package/dist/ui/navigator/Navigator.d.ts +14 -0
- package/dist/ui/navigator/index.d.ts +1 -1
- package/dist/ui/notification/Notification.d.ts +22 -0
- package/dist/ui/notification/index.d.ts +1 -1
- package/dist/ui/pager/Pager.d.ts +48 -0
- package/dist/ui/pager/PagerDots.d.ts +22 -0
- package/dist/ui/pager/index.d.ts +2 -2
- package/dist/ui/pagination/Pagination.d.ts +19 -0
- package/dist/ui/pagination/index.d.ts +1 -1
- package/dist/ui/payment/Checkout.d.ts +13 -0
- package/dist/ui/payment/DefaultPaymentMethod.d.ts +8 -0
- package/dist/ui/payment/PaymentMethods.d.ts +23 -0
- package/dist/ui/payment/SubscriptionCheckout.d.ts +28 -0
- package/dist/ui/payment/index.d.ts +4 -4
- package/dist/ui/popover/Popover.d.ts +12 -0
- package/dist/ui/popover/PopoverButton.d.ts +8 -0
- package/dist/ui/popover/PopoverPanel.d.ts +8 -0
- package/dist/ui/popover/index.d.ts +3 -3
- package/dist/ui/portal/Portal.d.ts +7 -0
- package/dist/ui/portal/index.d.ts +1 -1
- package/dist/ui/progress/Progress.d.ts +32 -0
- package/dist/ui/progress/index.d.ts +1 -1
- package/dist/ui/radio/Radio.d.ts +51 -0
- package/dist/ui/radio/index.d.ts +1 -1
- package/dist/ui/radio-group/RadioGroup.d.ts +47 -0
- package/dist/ui/radio-group/RadioGroupDescription.d.ts +6 -0
- package/dist/ui/radio-group/RadioGroupLabel.d.ts +6 -0
- package/dist/ui/radio-group/RadioGroupOption.d.ts +10 -0
- package/dist/ui/radio-group/index.d.ts +4 -4
- package/dist/ui/select/Select.d.ts +93 -0
- package/dist/ui/select/index.d.ts +1 -1
- package/dist/ui/sidebar/Sidebar.d.ts +70 -0
- package/dist/ui/sidebar/SidebarFooter.d.ts +21 -0
- package/dist/ui/sidebar/SidebarHeader.d.ts +114 -0
- package/dist/ui/sidebar/SidebarItem.d.ts +37 -0
- package/dist/ui/sidebar/SidebarPinned.d.ts +27 -0
- package/dist/ui/sidebar/SidebarSection.d.ts +35 -0
- package/dist/ui/sidebar/SidebarSpace.d.ts +44 -0
- package/dist/ui/sidebar/SidebarSpaceSwitcher.d.ts +30 -0
- package/dist/ui/sidebar/SidebarSpaces.d.ts +38 -0
- package/dist/ui/sidebar/index.d.ts +9 -9
- package/dist/ui/sidebar/themes.d.ts +39 -5
- package/dist/ui/skeleton/Skeleton.d.ts +13 -0
- package/dist/ui/skeleton/index.d.ts +1 -1
- package/dist/ui/spinner/Spinner.d.ts +13 -0
- package/dist/ui/spinner/index.d.ts +1 -1
- package/dist/ui/stepper/Stepper.d.ts +8 -0
- package/dist/ui/stepper/StepperStep.d.ts +17 -0
- package/dist/ui/stepper/index.d.ts +2 -2
- package/dist/ui/switch/Switch.d.ts +75 -0
- package/dist/ui/switch/index.d.ts +1 -1
- package/dist/ui/table/Table.d.ts +20 -0
- package/dist/ui/table/TableBody.d.ts +5 -0
- package/dist/ui/table/TableCell.d.ts +5 -0
- package/dist/ui/table/TableHead.d.ts +5 -0
- package/dist/ui/table/TableHeader.d.ts +45 -0
- package/dist/ui/table/TableRow.d.ts +6 -0
- package/dist/ui/table/index.d.ts +6 -6
- package/dist/ui/tabs/Tab.d.ts +19 -0
- package/dist/ui/tabs/TabList.d.ts +34 -0
- package/dist/ui/tabs/TabPanel.d.ts +13 -0
- package/dist/ui/tabs/Tabs.d.ts +30 -0
- package/dist/ui/tabs/index.d.ts +4 -4
- package/dist/ui/teleport/Teleport.d.ts +8 -0
- package/dist/ui/teleport/index.d.ts +1 -1
- package/dist/ui/textarea/Textarea.d.ts +75 -0
- package/dist/ui/textarea/index.d.ts +1 -1
- package/dist/ui/theme-toggle/ThemeToggle.d.ts +53 -0
- package/dist/ui/theme-toggle/index.d.ts +1 -1
- package/dist/ui/tooltip/Tooltip.d.ts +39 -0
- package/dist/ui/tooltip/index.d.ts +1 -1
- package/dist/ui/transition/Transition.d.ts +191 -0
- package/dist/ui/transition/index.d.ts +1 -1
- package/dist/ui/video/Video.d.ts +61 -0
- package/dist/ui/video/index.d.ts +1 -1
- package/dist/ui/virtual-list/VirtualList.d.ts +12 -0
- package/dist/ui/virtual-list/index.d.ts +1 -1
- package/dist/ui/virtual-table/VirtualTable.d.ts +21 -0
- package/dist/ui/virtual-table/index.d.ts +1 -1
- package/dist/utils/accessibility.d.ts +15 -0
- package/dist/utils/error-handling.d.ts +15 -2
- package/dist/utils/i18n.d.ts +48 -65
- package/dist/utils/keep-alive.d.ts +27 -3
- package/dist/utils/lazy-loading.d.ts +5 -1
- package/dist/utils/prop-validation.d.ts +3 -3
- package/dist/utils/tooltip-position.d.ts +7 -1
- package/package.json +4 -7
- package/src/utils/animation/helpers.ts +5 -5
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
3
|
+
export declare const checked: ReturnType<typeof $bool>;
|
|
4
|
+
export declare const disabled: ReturnType<typeof $bool>;
|
|
5
|
+
export declare const size: unknown;
|
|
6
|
+
export declare const label: unknown;
|
|
7
|
+
export declare const description: unknown;
|
|
8
|
+
export declare const error: ReturnType<typeof $bool>;
|
|
9
|
+
export declare const required: ReturnType<typeof $bool>;
|
|
10
|
+
export declare const value: unknown;
|
|
11
|
+
export declare const name: unknown;
|
|
12
|
+
export declare const className: unknown;
|
|
13
|
+
/*
|
|
14
|
+
* The two halves of the validity state, exported so the CLIENT can swap them
|
|
15
|
+
* (stacksjs/stx#2047). Toggled per class rather than as a whole string,
|
|
16
|
+
* because a reactive class string MERGES with the static one and the element
|
|
17
|
+
* would carry both rings at once.
|
|
18
|
+
*/
|
|
19
|
+
export declare const stateInvalidClasses: 'border-danger-line text-danger focus:ring-danger-focus';
|
|
20
|
+
export declare const radioClasses: unknown;
|
|
21
|
+
export declare const labelClasses: unknown;
|
|
22
|
+
export declare const descriptionClasses: unknown;
|
|
23
|
+
/*
|
|
24
|
+
* Ids unique to this instance.
|
|
25
|
+
*
|
|
26
|
+
* These were derived from the LABEL or hardcoded outright, so two of these on
|
|
27
|
+
* one page -- an ordinary form -- emitted the same id twice. `<label for>`
|
|
28
|
+
* then activated the FIRST field from every label, and `aria-describedby`
|
|
29
|
+
* pointed every field's description at the first one's helper text. A label
|
|
30
|
+
* containing a space also produced an invalid id, `input-First name`, which
|
|
31
|
+
* getElementById and querySelector cannot address at all.
|
|
32
|
+
*
|
|
33
|
+
* `$uid` is unique per instance and stable across renders, which is what an id
|
|
34
|
+
* has to be (utils.ts explains why a render that changes its own bytes is
|
|
35
|
+
* uncacheable). The `id` prop overrides it, for a caller that needs to point
|
|
36
|
+
* its own `for` or `aria-describedby` at this control.
|
|
37
|
+
*/
|
|
38
|
+
export declare const inputId: unknown;
|
|
39
|
+
export declare const descriptionId: string;
|
|
40
|
+
/*
|
|
41
|
+
* `autocomplete` and `form`, alongside the `name` this already had
|
|
42
|
+
* (stacksjs/stx#2043). `autocomplete` is how the browser and a password
|
|
43
|
+
* manager identify a field; `form` lets a control live outside the <form>
|
|
44
|
+
* element it belongs to. Emitted only when given.
|
|
45
|
+
*/
|
|
46
|
+
export declare const autocomplete: unknown;
|
|
47
|
+
export declare const form: unknown;
|
|
48
|
+
// Reactive prop binding — parent can drive `checked` via signals. See #1704.
|
|
49
|
+
declare const isChecked: unknown;
|
|
50
|
+
declare type __DtsxStxComponentType = DefineComponent<{ checked?: unknown, disabled?: unknown, size?: string, label?: string, description?: string, error?: unknown, required?: unknown, value?: string, name?: string, className?: string, id?: string, autocomplete?: unknown, autoComplete?: string, form?: string }> & { readonly __stxExposed?: { isChecked: typeof isChecked } }
|
|
51
|
+
export default __dtsx_component__;
|
package/dist/ui/radio/index.d.ts
CHANGED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare function selectValue(v: unknown): void;
|
|
3
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
4
|
+
export declare const value: unknown;
|
|
5
|
+
export declare const valueJson: unknown;
|
|
6
|
+
export declare const className: unknown;
|
|
7
|
+
export declare const as: unknown;
|
|
8
|
+
/*
|
|
9
|
+
* Prop-array mode, alongside the slot API (stacksjs/stx#1930).
|
|
10
|
+
*
|
|
11
|
+
* `<RadioGroup :options="[{ label: 'A', value: 'a' }]" />` used to emit a
|
|
12
|
+
* hydration shell and nothing else: the labels reached the page only inside
|
|
13
|
+
* `data-stx-props`, so the choices were invisible without JavaScript and to a
|
|
14
|
+
* crawler. Every comparable component here — Tabs, Accordion, Select, Navigator,
|
|
15
|
+
* Breadcrumb — server-renders its content from a prop array, so this was the
|
|
16
|
+
* odd one out rather than a deliberate choice.
|
|
17
|
+
*
|
|
18
|
+
* The options are rendered here rather than delegated to <RadioGroupOption>
|
|
19
|
+
* because a loop variable cannot cross a component boundary as a `:` binding.
|
|
20
|
+
* Interpolating it would stringify the value — `1` and `"1"` would stop being
|
|
21
|
+
* distinguishable — and the group compares values by identity. Emitting the
|
|
22
|
+
* option markup directly keeps `data-option-value` exact JSON, which is what
|
|
23
|
+
* `syncOptionStates` already reads.
|
|
24
|
+
*/
|
|
25
|
+
export declare const options: unknown;
|
|
26
|
+
export declare const hasPropOptions: boolean;
|
|
27
|
+
declare const optionBaseClasses: 'relative flex cursor-pointer rounded-panel px-5 py-4 shadow-md focus:outline-none transition-all bg-panel text-fg focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-panel';
|
|
28
|
+
export declare const optionClasses: unknown;
|
|
29
|
+
export declare const optionDisabledClasses: string;
|
|
30
|
+
export declare const groupClasses: unknown;
|
|
31
|
+
export declare const radioGroupInstanceId: unknown;
|
|
32
|
+
/*
|
|
33
|
+
* JSON built on the server and emitted raw, rather than a 'null' sentinel
|
|
34
|
+
* through an ordinary interpolation.
|
|
35
|
+
*
|
|
36
|
+
* A `value === undefined ? 'null' : value` ternary was meant to put the bare
|
|
37
|
+
* token null into the script. An interpolation QUOTES a string, so what it
|
|
38
|
+
* emitted was the four-character string "null" -- truthy, in the one place a
|
|
39
|
+
* value is meant to be absent. JSON.stringify produces the correct literal for
|
|
40
|
+
* every type, null included, and raw interpolation passes it through unquoted.
|
|
41
|
+
* Calendar and DateRangePicker already avoid this sentinel and say why
|
|
42
|
+
* (stacksjs/stx#1981).
|
|
43
|
+
*/
|
|
44
|
+
declare const initialValue: {};
|
|
45
|
+
declare const selected: ReturnType<typeof state>;
|
|
46
|
+
declare type __DtsxStxComponentType = DefineComponent<{ value?: unknown, className?: string, as?: string, options?: unknown }> & { readonly __stxExposed?: { selected: typeof selected, selectValue: typeof selectValue } }
|
|
47
|
+
export default __dtsx_component__;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
3
|
+
export declare const className: unknown;
|
|
4
|
+
export declare const as: unknown;
|
|
5
|
+
declare type __DtsxStxComponentType = DefineComponent<{ className?: string, as?: string }>;
|
|
6
|
+
export default __dtsx_component__;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
3
|
+
export declare const className: unknown;
|
|
4
|
+
export declare const as: unknown;
|
|
5
|
+
declare type __DtsxStxComponentType = DefineComponent<{ className?: string, as?: string }>;
|
|
6
|
+
export default __dtsx_component__;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
3
|
+
export declare const value: unknown;
|
|
4
|
+
export declare const disabled: ReturnType<typeof $bool>;
|
|
5
|
+
export declare const className: unknown;
|
|
6
|
+
export declare const as: unknown;
|
|
7
|
+
export declare const optionClasses: unknown;
|
|
8
|
+
export declare const valueJson: unknown;
|
|
9
|
+
declare type __DtsxStxComponentType = DefineComponent<{ value?: unknown, disabled?: unknown, className?: string, as?: string }>;
|
|
10
|
+
export default __dtsx_component__;
|
|
@@ -20,7 +20,7 @@ export declare interface RadioGroupDescriptionProps {
|
|
|
20
20
|
className?: string
|
|
21
21
|
as?: string
|
|
22
22
|
}
|
|
23
|
-
export { default as RadioGroup } from './RadioGroup
|
|
24
|
-
export { default as RadioGroupDescription } from './RadioGroupDescription
|
|
25
|
-
export { default as RadioGroupLabel } from './RadioGroupLabel
|
|
26
|
-
export { default as RadioGroupOption } from './RadioGroupOption
|
|
23
|
+
export { default as RadioGroup } from './RadioGroup';
|
|
24
|
+
export { default as RadioGroupDescription } from './RadioGroupDescription';
|
|
25
|
+
export { default as RadioGroupLabel } from './RadioGroupLabel';
|
|
26
|
+
export { default as RadioGroupOption } from './RadioGroupOption';
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
/*
|
|
3
|
+
* Two-way, like TextInput (stacksjs/stx#2059): `v-model:value="group"` keeps
|
|
4
|
+
* the page's signal in step, so a call site no longer pairs `:value` with an
|
|
5
|
+
* `@change` that writes it back. `change` is still emitted for the callers
|
|
6
|
+
* that listen for it.
|
|
7
|
+
*/
|
|
8
|
+
declare function normaliseOptions(list: unknown): never[] | ReturnType<unknown.map>;
|
|
9
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
10
|
+
/*
|
|
11
|
+
* `??`, not `||`: a select whose chosen option is the id 0 is ordinary, and
|
|
12
|
+
* `||` served it as nothing selected.
|
|
13
|
+
*/
|
|
14
|
+
export declare const value: unknown;
|
|
15
|
+
export declare const options: ReturnType<typeof normaliseOptions>;
|
|
16
|
+
/*
|
|
17
|
+
* `??`: `placeholder=""` means no placeholder option at all, which a select
|
|
18
|
+
* whose options are its children usually wants. Unset keeps the default.
|
|
19
|
+
*/
|
|
20
|
+
export declare const placeholder: unknown;
|
|
21
|
+
export declare const disabled: ReturnType<typeof $bool>;
|
|
22
|
+
export declare const size: unknown;
|
|
23
|
+
export declare const error: ReturnType<typeof $bool>;
|
|
24
|
+
export declare const label: unknown;
|
|
25
|
+
export declare const helperText: unknown;
|
|
26
|
+
export declare const required: ReturnType<typeof $bool>;
|
|
27
|
+
export declare const className: unknown;
|
|
28
|
+
/*
|
|
29
|
+
* Padding decides the height here too, with no `h-*` to override it: an app
|
|
30
|
+
* passing its own `py-1.5` got the padding it asked for and the height it did
|
|
31
|
+
* not, and `className` cannot beat `h-10` at equal specificity
|
|
32
|
+
* (stacksjs/stx#1993).
|
|
33
|
+
*
|
|
34
|
+
* `lg` also needed a padding step adjusted - py-3 around a 1.75rem line-height
|
|
35
|
+
* is 3.25rem of content inside a declared 3rem box - so py-2.5 lands on the
|
|
36
|
+
* 3rem it always claimed. sm and md were already exact.
|
|
37
|
+
*/
|
|
38
|
+
/*
|
|
39
|
+
* md -- the size nearly every form uses -- reads the density roles, so an
|
|
40
|
+
* app sets its own field size with --stx-control-px, --stx-control-py,
|
|
41
|
+
* --stx-control-text and --stx-control-leading instead of a className
|
|
42
|
+
* that ties with py-2 on specificity. The fallbacks are px-4 / py-2 /
|
|
43
|
+
* text-base, so nothing moves by default (stacksjs/stx#1993).
|
|
44
|
+
*/
|
|
45
|
+
/*
|
|
46
|
+
* The two halves of the validity state, exported so the CLIENT can swap them
|
|
47
|
+
* (stacksjs/stx#2047). Toggled per class rather than as a whole string,
|
|
48
|
+
* because a reactive class string MERGES with the static one and the element
|
|
49
|
+
* would carry both rings at once.
|
|
50
|
+
*/
|
|
51
|
+
export declare const stateInvalidClasses: 'ring-danger-line text-danger-fg placeholder-danger focus:ring-danger-focus';
|
|
52
|
+
export declare const stateValidClasses: 'ring-line-strong text-fg placeholder-fg-soft focus:ring-accent';
|
|
53
|
+
export declare const selectClasses: unknown;
|
|
54
|
+
export declare const labelClasses: unknown;
|
|
55
|
+
export declare const helperClasses: unknown;
|
|
56
|
+
/*
|
|
57
|
+
* Ids unique to this instance.
|
|
58
|
+
*
|
|
59
|
+
* These were derived from the LABEL or hardcoded outright, so two of these on
|
|
60
|
+
* one page -- an ordinary form -- emitted the same id twice. `<label for>`
|
|
61
|
+
* then activated the FIRST field from every label, and `aria-describedby`
|
|
62
|
+
* pointed every field's description at the first one's helper text. A label
|
|
63
|
+
* containing a space also produced an invalid id, `input-First name`, which
|
|
64
|
+
* getElementById and querySelector cannot address at all.
|
|
65
|
+
*
|
|
66
|
+
* `$uid` is unique per instance and stable across renders, which is what an id
|
|
67
|
+
* has to be (utils.ts explains why a render that changes its own bytes is
|
|
68
|
+
* uncacheable). The `id` prop overrides it, for a caller that needs to point
|
|
69
|
+
* its own `for` or `aria-describedby` at this control.
|
|
70
|
+
*/
|
|
71
|
+
export declare const selectId: unknown;
|
|
72
|
+
export declare const helperId: string;
|
|
73
|
+
/*
|
|
74
|
+
* The attributes that make this a form control (stacksjs/stx#2043).
|
|
75
|
+
*
|
|
76
|
+
* A control with no `name` is not a form control in the HTML sense: it is left
|
|
77
|
+
* out of FormData, out of form.elements.namedItem(), and out of an ordinary
|
|
78
|
+
* non-JS POST. A form built from these components submitted nothing for every
|
|
79
|
+
* field, silently -- which is how six apps read their forms.
|
|
80
|
+
*
|
|
81
|
+
* `autocomplete` is separate and just as load-bearing: it is how the browser
|
|
82
|
+
* and a password manager identify a field, so a password input without
|
|
83
|
+
* `autocomplete="current-password"` is never offered for autofill and is not
|
|
84
|
+
* recognised as part of a sign-in form at all.
|
|
85
|
+
*
|
|
86
|
+
* Emitted only when given, so a control that passes none of them renders
|
|
87
|
+
* exactly the markup it did before.
|
|
88
|
+
*/
|
|
89
|
+
export declare const name: unknown;
|
|
90
|
+
export declare const autocomplete: unknown;
|
|
91
|
+
export declare const form: unknown;
|
|
92
|
+
declare type __DtsxStxComponentType = DefineComponent<{ value?: string, options?: unknown, placeholder?: string, disabled?: unknown, size?: string, error?: unknown, label?: string, helperText?: string, required?: unknown, className?: string, id?: string, name?: string, autocomplete?: unknown, autoComplete?: string, form?: string }> & { readonly __stxExposed?: { value: unknown, options: unknown } }
|
|
93
|
+
export default __dtsx_component__;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare function syncRouteSelection(url: unknown): void;
|
|
3
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
4
|
+
// Data: [{ id, label, collapsible?, collapsed?, items: [{ id, label, icon,
|
|
5
|
+
// iconColor, image, href, count, active?, disabled?, expanded?, children? }] }]
|
|
6
|
+
export declare const sections: unknown;
|
|
7
|
+
// Arc-style spaces: [{ id, label, icon, tint, pinned, sections, action, clear }].
|
|
8
|
+
// Passing them turns the sidebar into a swipeable stack of scenes instead of
|
|
9
|
+
// one list. `theme` then defaults to `arc`, because spaces are that theme's
|
|
10
|
+
// idea — a macOS source list has no equivalent.
|
|
11
|
+
export declare const spaces: unknown;
|
|
12
|
+
export declare const hasSpaces: boolean;
|
|
13
|
+
export declare const activeSpace: unknown;
|
|
14
|
+
export declare const showSpaceSwitcher: unknown;
|
|
15
|
+
export declare const showSpaceAdd: ReturnType<typeof $bool>;
|
|
16
|
+
export declare const spaceAddLabel: unknown;
|
|
17
|
+
export declare const spacePersistKey: unknown;
|
|
18
|
+
// `theme` is the new name; `variant` is accepted for backwards compatibility.
|
|
19
|
+
export declare const theme: unknown;
|
|
20
|
+
export declare const width: unknown;
|
|
21
|
+
export declare const position: unknown;
|
|
22
|
+
export declare const placement: unknown;
|
|
23
|
+
export declare const bordered: ReturnType<typeof $bool>;
|
|
24
|
+
// Collapsing. macOS sidebars hide entirely (toolbar button / drag); legacy
|
|
25
|
+
// themes may collapse to a compact rail instead.
|
|
26
|
+
export declare const collapsed: ReturnType<typeof $bool>;
|
|
27
|
+
export declare const collapsible: unknown;
|
|
28
|
+
export declare const collapseMode: unknown;
|
|
29
|
+
export declare const minWidth: unknown;
|
|
30
|
+
export declare const persistKey: unknown;
|
|
31
|
+
export declare const shellSelector: unknown;
|
|
32
|
+
export declare const widthVar: unknown;
|
|
33
|
+
export declare const collapsedClass: unknown;
|
|
34
|
+
export declare const className: unknown;
|
|
35
|
+
// Mirror the OS light/dark preference onto the root element's `dark` class.
|
|
36
|
+
// A native sidebar follows the system appearance, and Css's `dark:`
|
|
37
|
+
// variants are class-based, so something has to write that class — but it is
|
|
38
|
+
// the document's business, not a navigation pane's. Left on by default so a
|
|
39
|
+
// sidebar dropped into a page with no theme controller still behaves; turn it
|
|
40
|
+
// off in any app that owns its own light/dark switch.
|
|
41
|
+
export declare const followSystemAppearance: unknown;
|
|
42
|
+
// Unique id so the client controller can find this pane even with several
|
|
43
|
+
// sidebars on the page.
|
|
44
|
+
export declare const sidebarUid: unknown;
|
|
45
|
+
declare const themeStyle: ReturnType<typeof resolveSidebarTheme>;
|
|
46
|
+
export declare const selectionModel: unknown;
|
|
47
|
+
export declare const hasShimmerRim: boolean;
|
|
48
|
+
export declare const tintClasses: unknown;
|
|
49
|
+
export declare const scrollAreaClasses: unknown;
|
|
50
|
+
declare const borderClasses: unknown;
|
|
51
|
+
/** @defaultValue `{ sticky: 'sticky top-0 h-screen', static: 'relative h-full' }` */
|
|
52
|
+
declare const placementClasses: {
|
|
53
|
+
fixed: string;
|
|
54
|
+
/** @defaultValue 'sticky top-0 h-screen' */
|
|
55
|
+
sticky: string;
|
|
56
|
+
/** @defaultValue 'relative h-full' */
|
|
57
|
+
static: string
|
|
58
|
+
};
|
|
59
|
+
export declare const paneClasses: unknown;
|
|
60
|
+
declare const normalizedSpaces: unknown;
|
|
61
|
+
declare const initialSpace: unknown;
|
|
62
|
+
export declare const paneStyle: unknown;
|
|
63
|
+
// Normalized ahead of the loop so template bindings stay simple accessors.
|
|
64
|
+
export declare const sectionList: ReturnType<typeof sections.map>;
|
|
65
|
+
// State classes the client controller swaps on rows. Kept as data attributes
|
|
66
|
+
// so all behavior lives in one place (the controller below) and themes stay
|
|
67
|
+
// pure data.
|
|
68
|
+
export declare const activeClasses: unknown;
|
|
69
|
+
declare type __DtsxStxComponentType = DefineComponent<{ sections?: unknown[], spaces?: unknown[], space?: unknown, activeSpace?: string, showSpaceSwitcher?: unknown, showSpaceAdd?: unknown, spaceAddLabel?: string, spacePersistKey?: string, theme?: unknown, variant?: unknown, width?: unknown, position?: string, placement?: string, bordered?: unknown, collapsed?: unknown, collapsible?: unknown, collapseMode?: unknown, minWidth?: unknown, persistKey?: string, shellSelector?: string, widthVar?: string, collapsedClass?: string, className?: string, followSystemAppearance?: unknown, id?: unknown }> & { readonly __stxExposed?: { collapsed: typeof collapsed, toggle: unknown, syncRouteSelection: typeof syncRouteSelection } }
|
|
70
|
+
export default __dtsx_component__;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
3
|
+
// The bottom strip of a macOS sidebar — e.g. the account row in Music
|
|
4
|
+
// ("Chris Breuer" with an avatar) or custom actions.
|
|
5
|
+
export declare const theme: unknown;
|
|
6
|
+
export declare const avatar: unknown;
|
|
7
|
+
export declare const name: unknown;
|
|
8
|
+
export declare const detail: unknown;
|
|
9
|
+
export declare const actions: unknown;
|
|
10
|
+
export declare const isMacos: boolean;
|
|
11
|
+
export declare const profileClasses: unknown;
|
|
12
|
+
export declare const actionClasses: unknown;
|
|
13
|
+
// Arc keeps the footer to a quiet strip of ghost icons, tuned to the warm
|
|
14
|
+
// panel rather than the macOS neutral.
|
|
15
|
+
export declare const isArc: boolean;
|
|
16
|
+
// Like the rest of the Arc chrome, these take their color from the panel so
|
|
17
|
+
// they follow a space's ink instead of staying a fixed dark on top of it.
|
|
18
|
+
export declare const arcActionClasses: unknown;
|
|
19
|
+
export declare const arcProfileClasses: unknown;
|
|
20
|
+
declare type __DtsxStxComponentType = DefineComponent<{ theme?: unknown, variant?: string, avatar?: string, name?: string, detail?: string, actions?: unknown[] }>;
|
|
21
|
+
export default __dtsx_component__;
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
3
|
+
// The window-chrome strip at the top of a macOS sidebar: traffic lights on
|
|
4
|
+
// the left, floating "Liquid Glass" toolbar buttons on the right, and the
|
|
5
|
+
// whole strip acts as a window drag region inside a Craft window.
|
|
6
|
+
export declare const theme: unknown;
|
|
7
|
+
export declare const actions: unknown;
|
|
8
|
+
export declare const subtitle: unknown;
|
|
9
|
+
export declare const logo: unknown;
|
|
10
|
+
export declare const showSearch: ReturnType<typeof $bool>;
|
|
11
|
+
export declare const searchPlaceholder: unknown;
|
|
12
|
+
export declare const isMacos: boolean;
|
|
13
|
+
// Traffic lights: 13px circles, 7px apart, inset ~21px — measured on
|
|
14
|
+
// macOS Tahoe. Colors are Apple's exact stoplight values.
|
|
15
|
+
export declare const trafficLightClasses: 'h-[13px] w-[13px] rounded-full shadow-[inset_0_0_1px_rgba(0,0,0,0.2)]';
|
|
16
|
+
// Floating toolbar button: a 34px glass circle that brightens on hover.
|
|
17
|
+
export declare const toolbarButtonClasses: unknown;
|
|
18
|
+
// Arc's header is quieter than macOS'. No floating glass buttons — just a
|
|
19
|
+
// recessed search field and flat ghost icons, sized to sit on the panel
|
|
20
|
+
// without competing with the row cards below it.
|
|
21
|
+
export declare const isArc: boolean;
|
|
22
|
+
// Window chrome. A macOS sidebar owns the top-left corner, so it is on by
|
|
23
|
+
// default there. Arc's sidebar can go either way — a browser window puts the
|
|
24
|
+
// lights and the back/forward controls in the sidebar, while an app that only
|
|
25
|
+
// borrows the look wants a bare strip — so on this theme it is opt-in.
|
|
26
|
+
//
|
|
27
|
+
// `windowControls` says WHO DRAWS THEM, which `showWindowControls` could not
|
|
28
|
+
// express:
|
|
29
|
+
//
|
|
30
|
+
// 'auto' the default: replicas in a browser, the platform's own inside a
|
|
31
|
+
// Craft window, decided by the host rather than by the author.
|
|
32
|
+
// 'draw' replicas, always. For a web page imitating macOS — a marketing
|
|
33
|
+
// shot, a screenshot — that must look the same everywhere.
|
|
34
|
+
// 'native' the OS already drew them; reserve the room and keep out of it.
|
|
35
|
+
// 'none' no controls, no room.
|
|
36
|
+
//
|
|
37
|
+
// The distinction is not cosmetic. Inside a real window the platform draws its
|
|
38
|
+
// own controls whatever this component does, so replicas there put SIX circles
|
|
39
|
+
// in the corner — three live ones from the window server and three that only
|
|
40
|
+
// look like buttons. That was the old default's doing: the same markup renders
|
|
41
|
+
// on a docs page, where mock lights are the whole point, and in an app, where
|
|
42
|
+
// they are a bug, and a fixed choice cannot be right in both.
|
|
43
|
+
//
|
|
44
|
+
// So the host decides. Craft publishes, before the document is parsed:
|
|
45
|
+
//
|
|
46
|
+
// --craft-window-controls-replicas the `display` a replica should take —
|
|
47
|
+
// `none` where it drew real buttons
|
|
48
|
+
// --craft-window-controls-width the room they need inside the page: the
|
|
49
|
+
// far edge of the real buttons, measured
|
|
50
|
+
// on the window, and 0 whenever they are
|
|
51
|
+
// not over the page — a titlebar of their
|
|
52
|
+
// own, a native sidebar under them,
|
|
53
|
+
// fullscreen
|
|
54
|
+
//
|
|
55
|
+
// Both are read as fallbacks, so a browser — where neither is set — draws the
|
|
56
|
+
// replicas and reserves nothing, and no JavaScript is involved either way.
|
|
57
|
+
// `--stx-native-controls-width` stays the manual override for a host that
|
|
58
|
+
// publishes nothing: it is the room to leave AFTER this header's own left
|
|
59
|
+
// padding.
|
|
60
|
+
declare const controlsProp: unknown;
|
|
61
|
+
export declare const windowControls: unknown;
|
|
62
|
+
export declare const autoWindowControls: boolean;
|
|
63
|
+
export declare const showWindowControls: boolean;
|
|
64
|
+
export declare const reserveWindowControls: boolean;
|
|
65
|
+
export declare const showNavigation: ReturnType<typeof $bool>;
|
|
66
|
+
// A replica yields to the real thing — but only when it was the default that
|
|
67
|
+
// put it there. An author who asked for 'draw' gets replicas everywhere.
|
|
68
|
+
export declare const replicaStyle: unknown;
|
|
69
|
+
export declare const macosControlsReserve: string;
|
|
70
|
+
export declare const arcControlsReserve: string;
|
|
71
|
+
// No top padding when the platform's controls overlay this row — see the row
|
|
72
|
+
// itself for why 14pt is the number that matters. Expressed as arithmetic
|
|
73
|
+
// rather than a branch because only the host knows: a window that keeps its
|
|
74
|
+
// buttons in a titlebar publishes a width of 0 and keeps the padding.
|
|
75
|
+
export declare const arcChromePadding: string;
|
|
76
|
+
// A titled Arc header with window controls puts the two on one row, the way
|
|
77
|
+
// Arc and Dia do. A logo needs the wider second row to sit in, so its presence
|
|
78
|
+
// keeps the old two-row shape.
|
|
79
|
+
export declare const titleInChrome: unknown;
|
|
80
|
+
/**
|
|
81
|
+
* Back / forward / reload, as in Arc's URL strip. Flat and ghosted, not glass.
|
|
82
|
+
* @defaultValue `[ { id: 'back', icon: 'i-f7-arrow-left', label: 'Back' }, { id: 'forward', icon: 'i-f7-arrow-right', label: 'Forward' }, { id: 'reload', icon: 'i-f7-arrow-clockwise', label: 'Reload' }, ]`
|
|
83
|
+
*/
|
|
84
|
+
export declare const navButtons: ({
|
|
85
|
+
/** @defaultValue 'back' */
|
|
86
|
+
id: string;
|
|
87
|
+
/** @defaultValue 'i-f7-arrow-left' */
|
|
88
|
+
icon: string;
|
|
89
|
+
/** @defaultValue 'Back' */
|
|
90
|
+
label: string
|
|
91
|
+
} | {
|
|
92
|
+
/** @defaultValue 'forward' */
|
|
93
|
+
id: string;
|
|
94
|
+
/** @defaultValue 'i-f7-arrow-right' */
|
|
95
|
+
icon: string;
|
|
96
|
+
/** @defaultValue 'Forward' */
|
|
97
|
+
label: string
|
|
98
|
+
} | {
|
|
99
|
+
/** @defaultValue 'reload' */
|
|
100
|
+
id: string;
|
|
101
|
+
/** @defaultValue 'i-f7-arrow-clockwise' */
|
|
102
|
+
icon: string;
|
|
103
|
+
/** @defaultValue 'Reload' */
|
|
104
|
+
label: string
|
|
105
|
+
})[];
|
|
106
|
+
// Arc's chrome takes its color from the panel rather than declaring its own.
|
|
107
|
+
// On a plain warm panel that resolves to the theme's ink; inside a space it
|
|
108
|
+
// follows `--stx-space-ink` and crossfades along with the panel on every
|
|
109
|
+
// swipe. A hardcoded `text-[#2c2a28]` would stay dark over a saturated space
|
|
110
|
+
// and would not move when the space changed.
|
|
111
|
+
export declare const arcSearchClasses: unknown;
|
|
112
|
+
export declare const arcActionClasses: unknown;
|
|
113
|
+
declare type __DtsxStxComponentType = DefineComponent<{ theme?: unknown, variant?: string, actions?: unknown[], title?: string, subtitle?: string, logo?: string, showSearch?: unknown, searchPlaceholder?: string, windowControls?: string, showWindowControls?: unknown, showNavigation?: unknown }>;
|
|
114
|
+
export default __dtsx_component__;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
3
|
+
export declare const id: unknown;
|
|
4
|
+
export declare const label: unknown;
|
|
5
|
+
export declare const icon: unknown;
|
|
6
|
+
export declare const iconColor: unknown;
|
|
7
|
+
export declare const image: unknown;
|
|
8
|
+
export declare const href: unknown;
|
|
9
|
+
export declare const count: unknown;
|
|
10
|
+
export declare const active: ReturnType<typeof $bool>;
|
|
11
|
+
export declare const disabled: ReturnType<typeof $bool>;
|
|
12
|
+
export declare const expandable: ReturnType<typeof $bool>;
|
|
13
|
+
export declare const expanded: unknown;
|
|
14
|
+
export declare const depth: unknown;
|
|
15
|
+
export declare const parents: unknown;
|
|
16
|
+
export declare const theme: unknown;
|
|
17
|
+
declare const themeStyle: unknown;
|
|
18
|
+
export declare const rowClasses: unknown;
|
|
19
|
+
export declare const disclosureClasses: unknown;
|
|
20
|
+
export declare const chevronClasses: unknown;
|
|
21
|
+
export declare const iconSlotClasses: unknown;
|
|
22
|
+
export declare const iconClasses: string;
|
|
23
|
+
export declare const imageClasses: unknown;
|
|
24
|
+
export declare const labelClasses: unknown;
|
|
25
|
+
export declare const countClasses: unknown;
|
|
26
|
+
// Nested rows are indented; the icon tint accepts macOS system color names
|
|
27
|
+
// ("blue", "yellow", …) or any CSS color.
|
|
28
|
+
export declare const indentStyle: boolean;
|
|
29
|
+
// The tint is published as a custom property rather than `color:` directly.
|
|
30
|
+
// An inline `color` would outrank any stylesheet rule, so a selected row
|
|
31
|
+
// could never turn its icon white the way AppKit does, and toggling
|
|
32
|
+
// selection on the client could not restore the original tint afterwards.
|
|
33
|
+
declare const tint: ReturnType<typeof resolveIconColor>;
|
|
34
|
+
export declare const iconStyle: unknown;
|
|
35
|
+
export declare const isLink: unknown;
|
|
36
|
+
declare type __DtsxStxComponentType = DefineComponent<{ id?: string, label?: string, icon?: string, iconColor?: string, image?: string, href?: string, count?: unknown, badge?: string, active?: unknown, disabled?: unknown, expandable?: unknown, expanded?: unknown, depth?: number, parents?: string, theme?: unknown, variant?: string }>;
|
|
37
|
+
export default __dtsx_component__;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
3
|
+
// Arc's favorites grid — the block of square tiles above a space's rows.
|
|
4
|
+
//
|
|
5
|
+
// These are deliberately NOT sidebar rows. They carry no `data-sidebar-item`,
|
|
6
|
+
// so the Sidebar controller's selection, arrow-key navigation and disclosure
|
|
7
|
+
// logic skip them entirely: a pinned tile is a shortcut, not a place in the
|
|
8
|
+
// list. Their own click handler emits `pinnedClick` and that is the whole
|
|
9
|
+
// contract.
|
|
10
|
+
export declare const items: unknown;
|
|
11
|
+
export declare const columns: unknown;
|
|
12
|
+
// A tile separates itself from the panel by moving AWAY from it, which is not
|
|
13
|
+
// the same as being lighter.
|
|
14
|
+
//
|
|
15
|
+
// Measured against Dia at 2x: on a pale panel its tiles sit about 9 units
|
|
16
|
+
// DARKER than the surface behind them, and on a dark panel about 23 units
|
|
17
|
+
// lighter. A white overlay does the right thing in dark appearance and the
|
|
18
|
+
// wrong one in light, where it lifted the tile off a surface it is meant to be
|
|
19
|
+
// recessed into. Each appearance now overlays the colour that increases the
|
|
20
|
+
// separation, plus a hairline, which is what gives the well its edge.
|
|
21
|
+
//
|
|
22
|
+
// Height is 41px rather than 46: Dia's tiles measure 50pt wide by 41pt tall,
|
|
23
|
+
// so they are slightly landscape, and 46 made them read as too square against
|
|
24
|
+
// the row rhythm underneath.
|
|
25
|
+
export declare const tileClasses: unknown;
|
|
26
|
+
declare type __DtsxStxComponentType = DefineComponent<{ items?: unknown[], columns?: number }>;
|
|
27
|
+
export default __dtsx_component__;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
// Components can't render themselves recursively, so the item tree is
|
|
3
|
+
// flattened into ready-to-render rows here. Each row remembers its depth
|
|
4
|
+
// and ancestor ids — the Sidebar controller uses those to collapse whole
|
|
5
|
+
// subtrees.
|
|
6
|
+
declare function flatten(list: unknown, depth?: number, parents?: unknown[]): ReturnType<unknown.flatMap>;
|
|
7
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
8
|
+
export declare const id: unknown;
|
|
9
|
+
export declare const label: unknown;
|
|
10
|
+
export declare const items: unknown;
|
|
11
|
+
export declare const collapsible: unknown;
|
|
12
|
+
export declare const collapsed: ReturnType<typeof $bool>;
|
|
13
|
+
export declare const theme: unknown;
|
|
14
|
+
declare const themeStyle: ReturnType<typeof resolveSidebarTheme>;
|
|
15
|
+
export declare const headerClasses: unknown;
|
|
16
|
+
export declare const chevronClasses: unknown;
|
|
17
|
+
export declare const groupClasses: unknown;
|
|
18
|
+
// Precomputed rather than written as `{{ collapsed ? 'false' : 'true' }}` in
|
|
19
|
+
// the attribute itself.
|
|
20
|
+
//
|
|
21
|
+
// That inline form is served VERBATIM when this component is rendered inside a
|
|
22
|
+
// `<Sidebar>` — the marker reaches the browser unexpanded, so `data-expanded`
|
|
23
|
+
// carries a template string the controller cannot read and `aria-expanded`
|
|
24
|
+
// carries a value that is not `true` or `false`, which is an invalid ARIA
|
|
25
|
+
// state rather than a cosmetic problem. Rendering `<SidebarSection>` directly
|
|
26
|
+
// expands it correctly, and `{{ id }}` on the very same element expands in
|
|
27
|
+
// both cases, so the fault is in how a nested component's attributes are
|
|
28
|
+
// re-parsed, not in the expression.
|
|
29
|
+
//
|
|
30
|
+
// A bare identifier survives that path intact, and the component already
|
|
31
|
+
// precomputes everything else it interpolates.
|
|
32
|
+
export declare const expandedAttr: unknown;
|
|
33
|
+
export declare const rows: ReturnType<typeof flatten>;
|
|
34
|
+
declare type __DtsxStxComponentType = DefineComponent<{ id?: string, label?: string, items?: unknown[], collapsible?: unknown, collapsed?: unknown, theme?: unknown, variant?: string }>;
|
|
35
|
+
export default __dtsx_component__;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
3
|
+
// One scene of a swipeable sidebar: a pinned grid, a title, the rows, and the
|
|
4
|
+
// space's own actions. Everything below the title is the ordinary Sidebar
|
|
5
|
+
// machinery — `<SidebarSection>` flattens the item tree and `<SidebarItem>`
|
|
6
|
+
// renders the rows — so a space inherits disclosure, counts, icon tints,
|
|
7
|
+
// route selection and keyboard navigation for free.
|
|
8
|
+
export declare const id: unknown;
|
|
9
|
+
export declare const label: unknown;
|
|
10
|
+
export declare const icon: unknown;
|
|
11
|
+
export declare const pinned: unknown;
|
|
12
|
+
export declare const sections: unknown;
|
|
13
|
+
export declare const action: unknown;
|
|
14
|
+
export declare const clear: unknown;
|
|
15
|
+
export declare const theme: unknown;
|
|
16
|
+
export declare const active: ReturnType<typeof $bool>;
|
|
17
|
+
// Render the shell without its contents.
|
|
18
|
+
//
|
|
19
|
+
// Every space's rows are rendered on the server even though the Arc design
|
|
20
|
+
// shows one at a time, and that cost is linear in the number of spaces: a host
|
|
21
|
+
// with fourteen projects pays for fourteen panels on every page load to display
|
|
22
|
+
// one. `deferred` keeps the panel — the track's geometry, the tab role and the
|
|
23
|
+
// swipe all depend on it existing — and drops what is inside it.
|
|
24
|
+
//
|
|
25
|
+
// The space still announces itself as a tabpanel, so the switcher and keyboard
|
|
26
|
+
// navigation are unchanged; `data-space-deferred` tells the controller this one
|
|
27
|
+
// has nothing yet, and `spaceChange` is where a host fills it or navigates.
|
|
28
|
+
export declare const deferred: ReturnType<typeof $bool>;
|
|
29
|
+
// Whether to draw `label` as a title above the rows. An app that names the
|
|
30
|
+
// space somewhere else — an Arc header with a title puts it beside the traffic
|
|
31
|
+
// lights, the way Dia does — turns this off rather than saying it twice.
|
|
32
|
+
// `label` is still needed: it is the panel's accessible name and the
|
|
33
|
+
// switcher's tooltip.
|
|
34
|
+
export declare const showTitle: unknown;
|
|
35
|
+
declare const themeStyle: ReturnType<typeof resolveSidebarTheme>;
|
|
36
|
+
export declare const scrollAreaClasses: unknown;
|
|
37
|
+
// The title takes the space's accent, which is how Arc signals which space you
|
|
38
|
+
// are looking at even before the panel color registers.
|
|
39
|
+
export declare const titleClasses: unknown;
|
|
40
|
+
// Actions read as quieter than rows: no card on hover, just a wash.
|
|
41
|
+
export declare const actionClasses: unknown;
|
|
42
|
+
export declare const clearClasses: unknown;
|
|
43
|
+
declare type __DtsxStxComponentType = DefineComponent<{ id?: string, label?: string, icon?: string, pinned?: unknown[], sections?: unknown[], action?: unknown, clear?: unknown, theme?: string, active?: unknown, deferred?: unknown, showTitle?: unknown }>;
|
|
44
|
+
export default __dtsx_component__;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { DefineComponent } from '@stacksjs/stx';
|
|
2
|
+
declare const __dtsx_component__: __DtsxStxComponentType;
|
|
3
|
+
// `cache` is a promise that what this renders is a function of its props and
|
|
4
|
+
// slots alone, and it is kept: everything below reads $props (plus $uid, which
|
|
5
|
+
// the cache keys on, so two instances never share an entry), and nothing here
|
|
6
|
+
// reads the clock, the request or the route. Adding a server-side read of
|
|
7
|
+
// anything else means dropping `cache` again.
|
|
8
|
+
// The indicator along the bottom of an Arc-style sidebar: one dot per space,
|
|
9
|
+
// plus an optional trailing "+".
|
|
10
|
+
//
|
|
11
|
+
// Dots rather than one icon per space, which is what Dia does and what this
|
|
12
|
+
// used to get wrong. An icon rail costs ~28px of width each, so it fits about
|
|
13
|
+
// eight spaces in a 280px sidebar and then overflows — and with every space
|
|
14
|
+
// showing the same default folder glyph, thirteen of them read as a broken
|
|
15
|
+
// progress bar rather than as a switcher. A dot is 6px, says only "which of
|
|
16
|
+
// how many", and leaves the identifying work to the space title and the tint,
|
|
17
|
+
// which is where it belongs.
|
|
18
|
+
//
|
|
19
|
+
// The buttons are markup only. `<SidebarSpaces>` owns the single click handler
|
|
20
|
+
// and flips `data-space-current`, so the rail never holds its own copy of
|
|
21
|
+
// which space is active — there is exactly one source of truth.
|
|
22
|
+
export declare const spaces: unknown;
|
|
23
|
+
export declare const active: unknown;
|
|
24
|
+
export declare const showAdd: ReturnType<typeof $bool>;
|
|
25
|
+
export declare const addLabel: unknown;
|
|
26
|
+
// A single space has nothing to indicate. Dia hides the row entirely rather
|
|
27
|
+
// than showing one lonely dot, and so does this — unless "+" needs a home.
|
|
28
|
+
export declare const showDots: boolean;
|
|
29
|
+
declare type __DtsxStxComponentType = DefineComponent<{ spaces?: unknown[], active?: unknown, showAdd?: unknown, addLabel?: string }>;
|
|
30
|
+
export default __dtsx_component__;
|