creates video voice memos from audio clips; with bluesky integration.
trill.ptr.pet
1import { type Assign, FileUpload } from '@ark-ui/solid'
2import type { ComponentProps } from 'solid-js'
3import { type FileUploadVariantProps, fileUpload } from 'styled-system/recipes'
4import type { HTMLStyledProps } from 'styled-system/types'
5import { createStyleContext } from './utils/create-style-context'
6
7const { withProvider, withContext } = createStyleContext(fileUpload)
8
9export type RootProviderProps = ComponentProps<typeof RootProvider>
10export const RootProvider = withProvider<
11 Assign<Assign<HTMLStyledProps<'div'>, FileUpload.RootProviderBaseProps>, FileUploadVariantProps>
12>(FileUpload.RootProvider, 'root')
13
14export type RootProps = ComponentProps<typeof Root>
15export const Root = withProvider<
16 Assign<Assign<HTMLStyledProps<'div'>, FileUpload.RootBaseProps>, FileUploadVariantProps>
17>(FileUpload.Root, 'root')
18
19export const Dropzone = withContext<Assign<HTMLStyledProps<'div'>, FileUpload.DropzoneBaseProps>>(
20 FileUpload.Dropzone,
21 'dropzone',
22)
23
24export const ItemDeleteTrigger = withContext<
25 Assign<HTMLStyledProps<'button'>, FileUpload.ItemDeleteTriggerBaseProps>
26>(FileUpload.ItemDeleteTrigger, 'itemDeleteTrigger')
27
28export const ItemGroup = withContext<Assign<HTMLStyledProps<'ul'>, FileUpload.ItemGroupBaseProps>>(
29 FileUpload.ItemGroup,
30 'itemGroup',
31)
32
33export const ItemName = withContext<Assign<HTMLStyledProps<'div'>, FileUpload.ItemNameBaseProps>>(
34 FileUpload.ItemName,
35 'itemName',
36)
37
38export const ItemPreviewImage = withContext<
39 Assign<HTMLStyledProps<'img'>, FileUpload.ItemPreviewImageBaseProps>
40>(FileUpload.ItemPreviewImage, 'itemPreviewImage')
41
42export const ItemPreview = withContext<
43 Assign<HTMLStyledProps<'div'>, FileUpload.ItemPreviewBaseProps>
44>(FileUpload.ItemPreview, 'itemPreview')
45
46export const Item = withContext<Assign<HTMLStyledProps<'li'>, FileUpload.ItemBaseProps>>(
47 FileUpload.Item,
48 'item',
49)
50
51export const ItemSizeText = withContext<
52 Assign<HTMLStyledProps<'div'>, FileUpload.ItemSizeTextBaseProps>
53>(FileUpload.ItemSizeText, 'itemSizeText')
54
55export const Label = withContext<Assign<HTMLStyledProps<'label'>, FileUpload.LabelBaseProps>>(
56 FileUpload.Label,
57 'label',
58)
59
60export const Trigger = withContext<Assign<HTMLStyledProps<'button'>, FileUpload.TriggerBaseProps>>(
61 FileUpload.Trigger,
62 'trigger',
63)
64
65export {
66 FileUploadContext as Context,
67 FileUploadHiddenInput as HiddenInput,
68} from '@ark-ui/solid'