@ankhorage/zora 5.0.0 → 7.0.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/CHANGELOG.md +15 -0
- package/README.md +14 -10
- package/dist/components/button/resolveButtonThemeRecipe.d.ts +1 -1
- package/dist/components/date-picker/DatePicker.d.ts.map +1 -1
- package/dist/components/date-picker/DatePicker.js +92 -86
- package/dist/components/date-picker/DatePicker.js.map +1 -1
- package/dist/components/date-picker/meta.d.ts +1 -1
- package/dist/components/date-picker/meta.js +1 -1
- package/dist/components/date-picker/meta.js.map +1 -1
- package/dist/components/heading/resolveHeadingThemeRecipe.d.ts +1 -1
- package/dist/components/image/Image.d.ts +1 -5
- package/dist/components/image/Image.d.ts.map +1 -1
- package/dist/components/image/Image.js +79 -8
- package/dist/components/image/Image.js.map +1 -1
- package/dist/components/image/types.d.ts +4 -2
- package/dist/components/image/types.d.ts.map +1 -1
- package/dist/components/image/types.js.map +1 -1
- package/dist/components/text/resolveTextThemeRecipe.d.ts +1 -1
- package/dist/components/time-picker/TimePicker.d.ts +1 -3
- package/dist/components/time-picker/TimePicker.d.ts.map +1 -1
- package/dist/components/time-picker/TimePicker.js +55 -32
- package/dist/components/time-picker/TimePicker.js.map +1 -1
- package/dist/components/time-picker/meta.d.ts +1 -1
- package/dist/components/time-picker/meta.js +1 -1
- package/dist/components/time-picker/meta.js.map +1 -1
- package/dist/features/bottom-sheet/public.d.ts +3 -0
- package/dist/features/bottom-sheet/public.d.ts.map +1 -0
- package/dist/features/bottom-sheet/public.js +2 -0
- package/dist/features/bottom-sheet/public.js.map +1 -0
- package/dist/features/uploader/adapters/inbound/Uploader.d.ts +5 -0
- package/dist/features/uploader/adapters/inbound/Uploader.d.ts.map +1 -0
- package/dist/features/uploader/adapters/inbound/Uploader.js +274 -0
- package/dist/features/uploader/adapters/inbound/Uploader.js.map +1 -0
- package/dist/features/uploader/adapters/outbound/pickDocumentOrFileAsync.d.ts +5 -0
- package/dist/features/uploader/adapters/outbound/pickDocumentOrFileAsync.d.ts.map +1 -0
- package/dist/features/uploader/adapters/outbound/pickDocumentOrFileAsync.js +38 -0
- package/dist/features/uploader/adapters/outbound/pickDocumentOrFileAsync.js.map +1 -0
- package/dist/features/uploader/adapters/outbound/pickImageOrVideoAsync.d.ts +5 -0
- package/dist/features/uploader/adapters/outbound/pickImageOrVideoAsync.d.ts.map +1 -0
- package/dist/features/uploader/adapters/outbound/pickImageOrVideoAsync.js +24 -0
- package/dist/features/uploader/adapters/outbound/pickImageOrVideoAsync.js.map +1 -0
- package/dist/features/uploader/application/ports/outbound/UploadPickerPort.d.ts +9 -0
- package/dist/features/uploader/application/ports/outbound/UploadPickerPort.d.ts.map +1 -0
- package/dist/features/uploader/application/ports/outbound/UploadPickerPort.js +2 -0
- package/dist/features/uploader/application/ports/outbound/UploadPickerPort.js.map +1 -0
- package/dist/features/uploader/application/use-cases/pickUploadAssetAsync.d.ts +5 -0
- package/dist/features/uploader/application/use-cases/pickUploadAssetAsync.d.ts.map +1 -0
- package/dist/features/uploader/application/use-cases/pickUploadAssetAsync.js +6 -0
- package/dist/features/uploader/application/use-cases/pickUploadAssetAsync.js.map +1 -0
- package/dist/features/uploader/application/use-cases/validateUploadAsset.d.ts +4 -0
- package/dist/features/uploader/application/use-cases/validateUploadAsset.d.ts.map +1 -0
- package/dist/features/uploader/application/use-cases/validateUploadAsset.js +77 -0
- package/dist/features/uploader/application/use-cases/validateUploadAsset.js.map +1 -0
- package/dist/features/uploader/composition/createUploadPicker.d.ts +4 -0
- package/dist/features/uploader/composition/createUploadPicker.d.ts.map +1 -0
- package/dist/features/uploader/composition/createUploadPicker.js +12 -0
- package/dist/features/uploader/composition/createUploadPicker.js.map +1 -0
- package/dist/features/uploader/meta.d.ts +10 -0
- package/dist/features/uploader/meta.d.ts.map +1 -0
- package/dist/features/uploader/meta.js +10 -0
- package/dist/features/uploader/meta.js.map +1 -0
- package/dist/features/uploader/public.d.ts +4 -0
- package/dist/features/uploader/public.d.ts.map +1 -0
- package/dist/features/uploader/public.js +3 -0
- package/dist/features/uploader/public.js.map +1 -0
- package/dist/index.d.ts +2 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/dist/metadata/componentMeta.d.ts.map +1 -1
- package/dist/metadata/componentMeta.js +2 -7
- package/dist/metadata/componentMeta.js.map +1 -1
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +2 -7
- package/dist/registry.js.map +1 -1
- package/dist/theme/ZoraProvider.d.ts +1 -1
- package/dist/theme/ZoraProvider.d.ts.map +1 -1
- package/dist/theme/ZoraProvider.js +3 -2
- package/dist/theme/ZoraProvider.js.map +1 -1
- package/dist/theme/useZoraTheme.d.ts +1 -1
- package/dist/types/upload.d.ts +53 -0
- package/dist/types/upload.d.ts.map +1 -0
- package/dist/types/upload.js +2 -0
- package/dist/types/upload.js.map +1 -0
- package/package.json +25 -3
- package/src/components/date-picker/DatePicker.tsx +197 -129
- package/src/components/date-picker/meta.ts +1 -1
- package/src/components/image/Image.tsx +136 -8
- package/src/components/image/types.ts +6 -2
- package/src/components/time-picker/TimePicker.tsx +147 -60
- package/src/components/time-picker/meta.ts +1 -1
- package/src/expo57Migration.test.ts +56 -0
- package/src/features/bottom-sheet/public.test.ts +39 -0
- package/src/features/bottom-sheet/public.ts +5 -0
- package/src/features/uploader/adapters/inbound/Uploader.tsx +403 -0
- package/src/features/uploader/adapters/outbound/pickDocumentOrFileAsync.ts +50 -0
- package/src/features/uploader/adapters/outbound/pickImageOrVideoAsync.ts +30 -0
- package/src/features/uploader/application/ports/outbound/UploadPickerPort.ts +10 -0
- package/src/features/uploader/application/use-cases/pickUploadAssetAsync.test.ts +48 -0
- package/src/features/uploader/application/use-cases/pickUploadAssetAsync.ts +14 -0
- package/src/features/uploader/application/use-cases/validateUploadAsset.test.ts +51 -0
- package/src/features/uploader/application/use-cases/validateUploadAsset.ts +111 -0
- package/src/features/uploader/composition/createUploadPicker.ts +14 -0
- package/src/features/uploader/meta.ts +11 -0
- package/src/features/uploader/public.test.ts +34 -0
- package/src/features/uploader/public.ts +10 -0
- package/src/index.ts +9 -14
- package/src/metadata/componentMeta.ts +2 -7
- package/src/platformAcceptance.test.ts +1 -1
- package/src/registry.test.ts +1 -1
- package/src/registry.ts +2 -7
- package/src/showcaseCoverage.test.ts +1 -2
- package/src/theme/ZoraProvider.tsx +3 -2
- package/src/types/upload.ts +62 -0
- package/dist/components/action-sheet/ActionSheet.d.ts +0 -7
- package/dist/components/action-sheet/ActionSheet.d.ts.map +0 -1
- package/dist/components/action-sheet/ActionSheet.js +0 -11
- package/dist/components/action-sheet/ActionSheet.js.map +0 -1
- package/dist/components/action-sheet/ActionSheetItem.d.ts +0 -7
- package/dist/components/action-sheet/ActionSheetItem.d.ts.map +0 -1
- package/dist/components/action-sheet/ActionSheetItem.js +0 -17
- package/dist/components/action-sheet/ActionSheetItem.js.map +0 -1
- package/dist/components/action-sheet/index.d.ts +0 -4
- package/dist/components/action-sheet/index.d.ts.map +0 -1
- package/dist/components/action-sheet/index.js +0 -3
- package/dist/components/action-sheet/index.js.map +0 -1
- package/dist/components/action-sheet/meta.d.ts +0 -17
- package/dist/components/action-sheet/meta.d.ts.map +0 -1
- package/dist/components/action-sheet/meta.js +0 -17
- package/dist/components/action-sheet/meta.js.map +0 -1
- package/dist/components/action-sheet/types.d.ts +0 -13
- package/dist/components/action-sheet/types.d.ts.map +0 -1
- package/dist/components/action-sheet/types.js +0 -2
- package/dist/components/action-sheet/types.js.map +0 -1
- package/dist/patterns/image-preview/ImagePreview.d.ts +0 -9
- package/dist/patterns/image-preview/ImagePreview.d.ts.map +0 -1
- package/dist/patterns/image-preview/ImagePreview.js +0 -46
- package/dist/patterns/image-preview/ImagePreview.js.map +0 -1
- package/dist/patterns/image-preview/index.d.ts +0 -3
- package/dist/patterns/image-preview/index.d.ts.map +0 -1
- package/dist/patterns/image-preview/index.js +0 -2
- package/dist/patterns/image-preview/index.js.map +0 -1
- package/dist/patterns/image-preview/meta.d.ts +0 -9
- package/dist/patterns/image-preview/meta.d.ts.map +0 -1
- package/dist/patterns/image-preview/meta.js +0 -9
- package/dist/patterns/image-preview/meta.js.map +0 -1
- package/dist/patterns/image-preview/types.d.ts +0 -36
- package/dist/patterns/image-preview/types.d.ts.map +0 -1
- package/dist/patterns/image-preview/types.js +0 -2
- package/dist/patterns/image-preview/types.js.map +0 -1
- package/dist/patterns/image-upload-field/ImageUploadField.d.ts +0 -9
- package/dist/patterns/image-upload-field/ImageUploadField.d.ts.map +0 -1
- package/dist/patterns/image-upload-field/ImageUploadField.js +0 -222
- package/dist/patterns/image-upload-field/ImageUploadField.js.map +0 -1
- package/dist/patterns/image-upload-field/index.d.ts +0 -3
- package/dist/patterns/image-upload-field/index.d.ts.map +0 -1
- package/dist/patterns/image-upload-field/index.js +0 -2
- package/dist/patterns/image-upload-field/index.js.map +0 -1
- package/dist/patterns/image-upload-field/meta.d.ts +0 -9
- package/dist/patterns/image-upload-field/meta.d.ts.map +0 -1
- package/dist/patterns/image-upload-field/meta.js +0 -9
- package/dist/patterns/image-upload-field/meta.js.map +0 -1
- package/dist/patterns/image-upload-field/types.d.ts +0 -35
- package/dist/patterns/image-upload-field/types.d.ts.map +0 -1
- package/dist/patterns/image-upload-field/types.js +0 -2
- package/dist/patterns/image-upload-field/types.js.map +0 -1
- package/dist/patterns/image-upload-field/uploadFlow.d.ts +0 -18
- package/dist/patterns/image-upload-field/uploadFlow.d.ts.map +0 -1
- package/dist/patterns/image-upload-field/uploadFlow.js +0 -106
- package/dist/patterns/image-upload-field/uploadFlow.js.map +0 -1
- package/src/components/action-sheet/ActionSheet.tsx +0 -14
- package/src/components/action-sheet/ActionSheetItem.tsx +0 -30
- package/src/components/action-sheet/index.ts +0 -3
- package/src/components/action-sheet/meta.ts +0 -19
- package/src/components/action-sheet/types.ts +0 -23
- package/src/patterns/image-preview/ImagePreview.tsx +0 -82
- package/src/patterns/image-preview/index.ts +0 -2
- package/src/patterns/image-preview/meta.ts +0 -10
- package/src/patterns/image-preview/types.ts +0 -41
- package/src/patterns/image-upload-field/ImageUploadField.tsx +0 -319
- package/src/patterns/image-upload-field/index.ts +0 -2
- package/src/patterns/image-upload-field/meta.ts +0 -10
- package/src/patterns/image-upload-field/types.ts +0 -41
- package/src/patterns/image-upload-field/uploadFlow.test.ts +0 -117
- package/src/patterns/image-upload-field/uploadFlow.ts +0 -145
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Uploader.js","sourceRoot":"","sources":["../../../../../src/features/uploader/adapters/inbound/Uploader.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { Button } from '../../../../components/button';\nimport { Icon } from '../../../../components/icon';\nimport { Image } from '../../../../components/image';\nimport { Modal } from '../../../../components/modal';\nimport { Progress } from '../../../../components/progress';\nimport { Text } from '../../../../components/text';\nimport { Box, Stack } from '../../../../foundation';\nimport { FormField } from '../../../../patterns/form-field';\nimport { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';\nimport type { UploadAsset, UploaderProps, UploadType } from '../../../../types/upload';\nimport { validateUploadAsset } from '../../application/use-cases/validateUploadAsset';\nimport { createUploadPicker } from '../../composition/createUploadPicker';\n\n/*** Picks, validates, uploads, previews, and removes one generic file asset. */\nexport const Uploader = withZoraThemeScope(UploaderInner);\n\n/*** Owns the interactive state for the generic uploader inbound adapter. */\nfunction UploaderInner({\n themeId: _themeId,\n mode: _mode,\n testID,\n value,\n onChange,\n label,\n description,\n helperText,\n errorText,\n type = 'file',\n accept,\n maxSizeBytes,\n required,\n disabled = false,\n readOnly = false,\n validatePicked,\n onUpload,\n onRemove,\n aspectRatio = 1,\n interactionPolicy,\n}: UploaderProps) {\n const passive = interactionPolicy === 'passive';\n const picker = React.useMemo(() => createUploadPicker(), []);\n const [internalError, setInternalError] = React.useState<string | undefined>();\n const [uploading, setUploading] = React.useState(false);\n const [removing, setRemoving] = React.useState(false);\n const [progress, setProgress] = React.useState<number | null>(null);\n const [previewOpen, setPreviewOpen] = React.useState(false);\n const mountedRef = React.useRef<boolean | null>(null);\n const resolvedAccept = resolveUploadAccept(type, accept);\n const actionsDisabled = disabled || readOnly;\n const effectiveError = errorText ?? internalError;\n\n React.useEffect(() => {\n mountedRef.current = true;\n\n return () => {\n mountedRef.current = false;\n };\n }, []);\n\n const isMounted = React.useCallback(() => mountedRef.current === true, []);\n\n const setProgressSafe = React.useCallback(\n (next: number | null) => {\n if (!isMounted()) {\n return;\n }\n\n setProgress(clampProgress(next));\n },\n [isMounted],\n );\n\n const handlePick = React.useCallback(async () => {\n if (passive || actionsDisabled || uploading || removing) {\n return;\n }\n\n setInternalError(undefined);\n\n try {\n const picked = await picker.pickAsync({ accept: resolvedAccept, type });\n if (!picked || !isMounted()) {\n return;\n }\n\n const validationError = validateUploadAsset({\n accept: resolvedAccept,\n asset: picked,\n maxSizeBytes,\n validate: validatePicked,\n });\n if (validationError) {\n setInternalError(validationError);\n return;\n }\n\n onChange(picked);\n if (!onUpload) {\n return;\n }\n\n setUploading(true);\n setProgressSafe(0);\n\n try {\n const uploaded = await onUpload(picked, { setProgress: setProgressSafe });\n if (!isMounted()) {\n return;\n }\n\n onChange(uploaded);\n setUploading(false);\n setProgress(null);\n } catch (error) {\n if (!isMounted()) {\n return;\n }\n\n setInternalError(formatUnknownError(error));\n setUploading(false);\n setProgress(null);\n }\n } catch (error) {\n if (isMounted()) {\n setInternalError(formatUnknownError(error));\n }\n }\n }, [\n actionsDisabled,\n isMounted,\n maxSizeBytes,\n onChange,\n onUpload,\n passive,\n picker,\n removing,\n resolvedAccept,\n setProgressSafe,\n type,\n uploading,\n validatePicked,\n ]);\n\n const handleRemove = React.useCallback(async () => {\n if (passive || actionsDisabled || uploading || removing || !value) {\n return;\n }\n\n setInternalError(undefined);\n if (!onRemove) {\n onChange(null);\n return;\n }\n\n setRemoving(true);\n try {\n await onRemove(value);\n if (isMounted()) {\n onChange(null);\n setRemoving(false);\n }\n } catch (error) {\n if (isMounted()) {\n setInternalError(formatUnknownError(error));\n setRemoving(false);\n }\n }\n }, [actionsDisabled, isMounted, onChange, onRemove, passive, removing, uploading, value]);\n\n const canPreviewImage = type === 'image' && resolveRenderableAssetUrl(value) !== null;\n\n return (\n <>\n <FormField\n description={description}\n disabled={disabled}\n errorText={effectiveError}\n helperText={helperText}\n interactionPolicy={interactionPolicy}\n invalid={Boolean(effectiveError)}\n label={label}\n readOnly={readOnly}\n required={required}\n testID={testID}\n >\n <Stack gap=\"m\">\n <UploadPresentation asset={value} aspectRatio={aspectRatio} type={type} />\n\n {resolvedAccept || maxSizeBytes ? (\n <Stack gap=\"xs\">\n {resolvedAccept ? (\n <Text emphasis=\"muted\" variant=\"caption\">\n Accepted: {resolvedAccept}\n </Text>\n ) : null}\n {maxSizeBytes ? (\n <Text emphasis=\"muted\" variant=\"caption\">\n Max size: {formatBytes(maxSizeBytes)}\n </Text>\n ) : null}\n </Stack>\n ) : null}\n\n {uploading ? (\n <Stack gap=\"xs\">\n <Text emphasis=\"muted\" variant=\"caption\">\n Uploading…\n </Text>\n {progress !== null ? <Progress max={1} value={progress} /> : null}\n </Stack>\n ) : null}\n\n <Stack direction={{ base: 'column', md: 'row' }} gap=\"s\">\n <Button\n disabled={actionsDisabled || uploading || removing}\n interactionPolicy={interactionPolicy}\n onPress={() => {\n void handlePick();\n }}\n >\n {value ? 'Replace file' : 'Select file'}\n </Button>\n\n {value ? (\n <Button\n color=\"danger\"\n disabled={actionsDisabled || uploading || removing}\n interactionPolicy={interactionPolicy}\n loading={removing}\n variant=\"outline\"\n onPress={() => {\n void handleRemove();\n }}\n >\n Remove\n </Button>\n ) : null}\n\n {canPreviewImage ? (\n <Button\n color=\"neutral\"\n interactionPolicy={interactionPolicy}\n variant=\"soft\"\n onPress={() => setPreviewOpen(true)}\n >\n Preview\n </Button>\n ) : null}\n </Stack>\n </Stack>\n </FormField>\n\n {canPreviewImage ? (\n <Modal\n closeOnBackdrop\n interactionPolicy={interactionPolicy}\n onDismiss={() => setPreviewOpen(false)}\n title=\"Image preview\"\n visible={previewOpen}\n >\n <Stack gap=\"m\">\n <Image aspectRatio={aspectRatio} fit=\"contain\" source={value} />\n <Stack direction=\"row\" justify=\"flex-end\">\n <Button\n color=\"neutral\"\n interactionPolicy={interactionPolicy}\n variant=\"soft\"\n onPress={() => setPreviewOpen(false)}\n >\n Close\n </Button>\n </Stack>\n </Stack>\n </Modal>\n ) : null}\n </>\n );\n}\n\n/*** Renders image previews or generic file metadata without exposing picker-specific assets. */\nfunction UploadPresentation({\n asset,\n aspectRatio,\n type,\n}: {\n asset: UploadAsset | null;\n aspectRatio: number;\n type: UploadType;\n}) {\n if (type === 'image') {\n return <Image aspectRatio={aspectRatio} source={asset} />;\n }\n\n return (\n <Box borderWidth={1} p=\"m\" radius=\"m\">\n <Stack direction=\"row\" gap=\"s\">\n <Icon name={resolveUploadIcon(type)} size={22} />\n <Stack gap=\"xs\">\n <Text variant=\"label\" weight=\"semiBold\">\n {asset?.fileName ?? 'No file selected'}\n </Text>\n {asset?.contentType ? (\n <Text emphasis=\"muted\" variant=\"caption\">\n {asset.contentType}\n </Text>\n ) : null}\n </Stack>\n </Stack>\n </Box>\n );\n}\n\n/*** Resolves the native picker default while allowing accept to remain the precise restriction. */\nfunction resolveUploadAccept(type: UploadType, accept: string | undefined): string | undefined {\n if (accept) {\n return accept;\n }\n\n if (type === 'image') {\n return 'image/*';\n }\n\n if (type === 'video') {\n return 'video/*';\n }\n\n return undefined;\n}\n\n/*** Resolves an upload asset URL when it can be rendered directly. */\nfunction resolveRenderableAssetUrl(asset: UploadAsset | null): string | null {\n if (!asset) {\n return null;\n }\n\n switch (asset.kind) {\n case 'local':\n return asset.uri;\n case 'url':\n return asset.url;\n case 'storage':\n return asset.publicUrl ?? null;\n }\n}\n\n/*** Resolves a generic icon for the selected upload mode. */\nfunction resolveUploadIcon(\n type: UploadType,\n): 'attach-outline' | 'document-text-outline' | 'videocam-outline' {\n switch (type) {\n case 'video':\n return 'videocam-outline';\n case 'document':\n return 'document-text-outline';\n case 'file':\n case 'image':\n return 'attach-outline';\n }\n}\n\n/*** Clamps progress callbacks into the normalized 0..1 range. */\nfunction clampProgress(value: number | null): number | null {\n if (value === null || !Number.isFinite(value)) {\n return null;\n }\n\n return Math.max(0, Math.min(1, value));\n}\n\n/*** Converts unknown picker/upload failures into user-facing text. */\nfunction formatUnknownError(error: unknown): string {\n if (error instanceof Error && error.message) {\n return error.message;\n }\n\n if (typeof error === 'string' && error.trim().length > 0) {\n return error;\n }\n\n return 'Something went wrong.';\n}\n\n/*** Formats an upload byte limit for concise helper text. */\nfunction formatBytes(value: number): string {\n if (!Number.isFinite(value) || value <= 0) {\n return '0 B';\n }\n\n const units = ['B', 'KB', 'MB', 'GB'] as const;\n let size = value;\n let unitIndex = 0;\n\n while (size >= 1024 && unitIndex < units.length - 1) {\n size /= 1024;\n unitIndex += 1;\n }\n\n const unit = units.at(unitIndex) ?? 'B';\n const rounded = unitIndex === 0 ? Math.round(size) : Math.round(size * 10) / 10;\n return `${rounded} ${unit}`;\n}\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { UploadAsset } from '../../../../types/upload';
|
|
2
|
+
import type { UploadPickerInput } from '../../application/ports/outbound/UploadPickerPort';
|
|
3
|
+
/*** Picks one document through Expo DocumentPicker and maps it to the ZORA upload contract. */
|
|
4
|
+
export declare function pickDocumentOrFileAsync(input: UploadPickerInput): Promise<UploadAsset | null>;
|
|
5
|
+
//# sourceMappingURL=pickDocumentOrFileAsync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pickDocumentOrFileAsync.d.ts","sourceRoot":"","sources":["../../../../../src/features/uploader/adapters/outbound/pickDocumentOrFileAsync.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAC;AAE3F,+FAA+F;AAC/F,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAuB7B"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as DocumentPicker from 'expo-document-picker';
|
|
2
|
+
/*** Picks one document through Expo DocumentPicker and maps it to the ZORA upload contract. */
|
|
3
|
+
export async function pickDocumentOrFileAsync(input) {
|
|
4
|
+
const result = await DocumentPicker.getDocumentAsync({
|
|
5
|
+
copyToCacheDirectory: true,
|
|
6
|
+
multiple: false,
|
|
7
|
+
type: resolveDocumentMimeTypes(input.accept),
|
|
8
|
+
});
|
|
9
|
+
if (result.canceled) {
|
|
10
|
+
return null;
|
|
11
|
+
}
|
|
12
|
+
const asset = result.assets.at(0);
|
|
13
|
+
if (!asset) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
return {
|
|
17
|
+
kind: 'local',
|
|
18
|
+
uri: asset.uri,
|
|
19
|
+
fileName: asset.name,
|
|
20
|
+
sizeBytes: asset.size,
|
|
21
|
+
contentType: asset.mimeType,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/*** Maps browser-style accept MIME entries into Expo DocumentPicker's type option. */
|
|
25
|
+
function resolveDocumentMimeTypes(accept) {
|
|
26
|
+
if (!accept) {
|
|
27
|
+
return '*/*';
|
|
28
|
+
}
|
|
29
|
+
const mimeTypes = accept
|
|
30
|
+
.split(',')
|
|
31
|
+
.map((token) => token.trim())
|
|
32
|
+
.filter((token) => token.includes('/'));
|
|
33
|
+
if (mimeTypes.length === 0) {
|
|
34
|
+
return '*/*';
|
|
35
|
+
}
|
|
36
|
+
return mimeTypes.length === 1 ? (mimeTypes.at(0) ?? '*/*') : mimeTypes;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=pickDocumentOrFileAsync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pickDocumentOrFileAsync.js","sourceRoot":"","sources":["../../../../../src/features/uploader/adapters/outbound/pickDocumentOrFileAsync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,cAAc,MAAM,sBAAsB,CAAC;AAKvD,+FAA+F;AAC/F,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,KAAwB;IAExB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,gBAAgB,CAAC;QACnD,oBAAoB,EAAE,IAAI;QAC1B,QAAQ,EAAE,KAAK;QACf,IAAI,EAAE,wBAAwB,CAAC,KAAK,CAAC,MAAM,CAAC;KAC7C,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI,EAAE,OAAO;QACb,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,QAAQ,EAAE,KAAK,CAAC,IAAI;QACpB,SAAS,EAAE,KAAK,CAAC,IAAI;QACrB,WAAW,EAAE,KAAK,CAAC,QAAQ;KAC5B,CAAC;AACJ,CAAC;AAED,sFAAsF;AACtF,SAAS,wBAAwB,CAAC,MAA0B;IAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,SAAS,GAAG,MAAM;SACrB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SAC5B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAE1C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACzE,CAAC","sourcesContent":["import * as DocumentPicker from 'expo-document-picker';\n\nimport type { UploadAsset } from '../../../../types/upload';\nimport type { UploadPickerInput } from '../../application/ports/outbound/UploadPickerPort';\n\n/*** Picks one document through Expo DocumentPicker and maps it to the ZORA upload contract. */\nexport async function pickDocumentOrFileAsync(\n input: UploadPickerInput,\n): Promise<UploadAsset | null> {\n const result = await DocumentPicker.getDocumentAsync({\n copyToCacheDirectory: true,\n multiple: false,\n type: resolveDocumentMimeTypes(input.accept),\n });\n\n if (result.canceled) {\n return null;\n }\n\n const asset = result.assets.at(0);\n if (!asset) {\n return null;\n }\n\n return {\n kind: 'local',\n uri: asset.uri,\n fileName: asset.name,\n sizeBytes: asset.size,\n contentType: asset.mimeType,\n };\n}\n\n/*** Maps browser-style accept MIME entries into Expo DocumentPicker's type option. */\nfunction resolveDocumentMimeTypes(accept: string | undefined): string | string[] {\n if (!accept) {\n return '*/*';\n }\n\n const mimeTypes = accept\n .split(',')\n .map((token) => token.trim())\n .filter((token) => token.includes('/'));\n\n if (mimeTypes.length === 0) {\n return '*/*';\n }\n\n return mimeTypes.length === 1 ? (mimeTypes.at(0) ?? '*/*') : mimeTypes;\n}\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { UploadAsset } from '../../../../types/upload';
|
|
2
|
+
import type { UploadPickerInput } from '../../application/ports/outbound/UploadPickerPort';
|
|
3
|
+
/*** Picks one image or video through Expo ImagePicker and maps it to the ZORA upload contract. */
|
|
4
|
+
export declare function pickImageOrVideoAsync(input: UploadPickerInput): Promise<UploadAsset | null>;
|
|
5
|
+
//# sourceMappingURL=pickImageOrVideoAsync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pickImageOrVideoAsync.d.ts","sourceRoot":"","sources":["../../../../../src/features/uploader/adapters/outbound/pickImageOrVideoAsync.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAC;AAE3F,kGAAkG;AAClG,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAuBjG"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import * as ImagePicker from 'expo-image-picker';
|
|
2
|
+
/*** Picks one image or video through Expo ImagePicker and maps it to the ZORA upload contract. */
|
|
3
|
+
export async function pickImageOrVideoAsync(input) {
|
|
4
|
+
const result = await ImagePicker.launchImageLibraryAsync({
|
|
5
|
+
mediaTypes: input.type === 'video' ? ['videos'] : ['images'],
|
|
6
|
+
});
|
|
7
|
+
if (result.canceled) {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
const asset = result.assets.at(0);
|
|
11
|
+
if (!asset) {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
return {
|
|
15
|
+
kind: 'local',
|
|
16
|
+
uri: asset.uri,
|
|
17
|
+
fileName: asset.fileName ?? undefined,
|
|
18
|
+
sizeBytes: asset.fileSize,
|
|
19
|
+
contentType: asset.mimeType ?? undefined,
|
|
20
|
+
width: asset.width > 0 ? asset.width : undefined,
|
|
21
|
+
height: asset.height > 0 ? asset.height : undefined,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=pickImageOrVideoAsync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pickImageOrVideoAsync.js","sourceRoot":"","sources":["../../../../../src/features/uploader/adapters/outbound/pickImageOrVideoAsync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAC;AAKjD,kGAAkG;AAClG,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,KAAwB;IAClE,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,uBAAuB,CAAC;QACvD,UAAU,EAAE,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;KAC7D,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI,EAAE,OAAO;QACb,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,SAAS;QACrC,SAAS,EAAE,KAAK,CAAC,QAAQ;QACzB,WAAW,EAAE,KAAK,CAAC,QAAQ,IAAI,SAAS;QACxC,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;QAChD,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;KACpD,CAAC;AACJ,CAAC","sourcesContent":["import * as ImagePicker from 'expo-image-picker';\n\nimport type { UploadAsset } from '../../../../types/upload';\nimport type { UploadPickerInput } from '../../application/ports/outbound/UploadPickerPort';\n\n/*** Picks one image or video through Expo ImagePicker and maps it to the ZORA upload contract. */\nexport async function pickImageOrVideoAsync(input: UploadPickerInput): Promise<UploadAsset | null> {\n const result = await ImagePicker.launchImageLibraryAsync({\n mediaTypes: input.type === 'video' ? ['videos'] : ['images'],\n });\n\n if (result.canceled) {\n return null;\n }\n\n const asset = result.assets.at(0);\n if (!asset) {\n return null;\n }\n\n return {\n kind: 'local',\n uri: asset.uri,\n fileName: asset.fileName ?? undefined,\n sizeBytes: asset.fileSize,\n contentType: asset.mimeType ?? undefined,\n width: asset.width > 0 ? asset.width : undefined,\n height: asset.height > 0 ? asset.height : undefined,\n };\n}\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { UploadAsset, UploadType } from '../../../../../types/upload';
|
|
2
|
+
export interface UploadPickerInput {
|
|
3
|
+
type: UploadType;
|
|
4
|
+
accept?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface UploadPickerPort {
|
|
7
|
+
pickAsync: (input: UploadPickerInput) => Promise<UploadAsset | null>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=UploadPickerPort.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UploadPickerPort.d.ts","sourceRoot":"","sources":["../../../../../../src/features/uploader/application/ports/outbound/UploadPickerPort.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE3E,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CACtE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UploadPickerPort.js","sourceRoot":"","sources":["../../../../../../src/features/uploader/application/ports/outbound/UploadPickerPort.ts"],"names":[],"mappings":"","sourcesContent":["import type { UploadAsset, UploadType } from '../../../../../types/upload';\n\nexport interface UploadPickerInput {\n type: UploadType;\n accept?: string;\n}\n\nexport interface UploadPickerPort {\n pickAsync: (input: UploadPickerInput) => Promise<UploadAsset | null>;\n}\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { UploadAsset } from '../../../../types/upload';
|
|
2
|
+
import type { UploadPickerInput, UploadPickerPort } from '../ports/outbound/UploadPickerPort';
|
|
3
|
+
/*** Selects the appropriate picker capability for the requested upload type. */
|
|
4
|
+
export declare function pickUploadAssetAsync(input: UploadPickerInput, imageOrVideoPicker: UploadPickerPort, documentOrFilePicker: UploadPickerPort): Promise<UploadAsset | null>;
|
|
5
|
+
//# sourceMappingURL=pickUploadAssetAsync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pickUploadAssetAsync.d.ts","sourceRoot":"","sources":["../../../../../src/features/uploader/application/use-cases/pickUploadAssetAsync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAE9F,gFAAgF;AAChF,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,iBAAiB,EACxB,kBAAkB,EAAE,gBAAgB,EACpC,oBAAoB,EAAE,gBAAgB,GACrC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAK7B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/*** Selects the appropriate picker capability for the requested upload type. */
|
|
2
|
+
export async function pickUploadAssetAsync(input, imageOrVideoPicker, documentOrFilePicker) {
|
|
3
|
+
const picker = input.type === 'image' || input.type === 'video' ? imageOrVideoPicker : documentOrFilePicker;
|
|
4
|
+
return picker.pickAsync(input);
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=pickUploadAssetAsync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pickUploadAssetAsync.js","sourceRoot":"","sources":["../../../../../src/features/uploader/application/use-cases/pickUploadAssetAsync.ts"],"names":[],"mappings":"AAGA,gFAAgF;AAChF,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,KAAwB,EACxB,kBAAoC,EACpC,oBAAsC;IAEtC,MAAM,MAAM,GACV,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,oBAAoB,CAAC;IAE/F,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC","sourcesContent":["import type { UploadAsset } from '../../../../types/upload';\nimport type { UploadPickerInput, UploadPickerPort } from '../ports/outbound/UploadPickerPort';\n\n/*** Selects the appropriate picker capability for the requested upload type. */\nexport async function pickUploadAssetAsync(\n input: UploadPickerInput,\n imageOrVideoPicker: UploadPickerPort,\n documentOrFilePicker: UploadPickerPort,\n): Promise<UploadAsset | null> {\n const picker =\n input.type === 'image' || input.type === 'video' ? imageOrVideoPicker : documentOrFilePicker;\n\n return picker.pickAsync(input);\n}\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ValidateUploadAssetInput } from '../../../../types/upload';
|
|
2
|
+
/*** Validates a picked upload asset against MIME, extension, size, and caller rules. */
|
|
3
|
+
export declare function validateUploadAsset({ asset, accept, maxSizeBytes, validate, }: ValidateUploadAssetInput): string | undefined;
|
|
4
|
+
//# sourceMappingURL=validateUploadAsset.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateUploadAsset.d.ts","sourceRoot":"","sources":["../../../../../src/features/uploader/application/use-cases/validateUploadAsset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEzE,wFAAwF;AACxF,wBAAgB,mBAAmB,CAAC,EAClC,KAAK,EACL,MAAM,EACN,YAAY,EACZ,QAAQ,GACT,EAAE,wBAAwB,GAAG,MAAM,GAAG,SAAS,CAiB/C"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/*** Validates a picked upload asset against MIME, extension, size, and caller rules. */
|
|
2
|
+
export function validateUploadAsset({ asset, accept, maxSizeBytes, validate, }) {
|
|
3
|
+
if (!isAccepted(asset.contentType, asset.fileName, accept)) {
|
|
4
|
+
return accept ? `File type not accepted. Expected ${accept}.` : 'File type not accepted.';
|
|
5
|
+
}
|
|
6
|
+
if (maxSizeBytes !== undefined &&
|
|
7
|
+
Number.isFinite(maxSizeBytes) &&
|
|
8
|
+
maxSizeBytes > 0 &&
|
|
9
|
+
asset.sizeBytes !== undefined &&
|
|
10
|
+
Number.isFinite(asset.sizeBytes) &&
|
|
11
|
+
asset.sizeBytes > maxSizeBytes) {
|
|
12
|
+
return `File is too large (${formatBytes(asset.sizeBytes)}). Max ${formatBytes(maxSizeBytes)}.`;
|
|
13
|
+
}
|
|
14
|
+
return validate?.(asset);
|
|
15
|
+
}
|
|
16
|
+
/*** Returns whether available file metadata satisfies at least one accept token. */
|
|
17
|
+
function isAccepted(contentType, fileName, accept) {
|
|
18
|
+
const tokens = parseAccept(accept);
|
|
19
|
+
if (tokens.length === 0) {
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
let hadSignal = false;
|
|
23
|
+
for (const token of tokens) {
|
|
24
|
+
const matches = matchesAcceptToken(token, contentType, fileName);
|
|
25
|
+
if (matches === null) {
|
|
26
|
+
continue;
|
|
27
|
+
}
|
|
28
|
+
hadSignal = true;
|
|
29
|
+
if (matches) {
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return !hadSignal;
|
|
34
|
+
}
|
|
35
|
+
/*** Matches one MIME or extension accept token against available file metadata. */
|
|
36
|
+
function matchesAcceptToken(token, contentType, fileName) {
|
|
37
|
+
const normalizedToken = token.toLowerCase();
|
|
38
|
+
const normalizedContentType = contentType?.toLowerCase();
|
|
39
|
+
const normalizedFileName = fileName?.toLowerCase();
|
|
40
|
+
if (normalizedToken.startsWith('.')) {
|
|
41
|
+
return normalizedFileName ? normalizedFileName.endsWith(normalizedToken) : null;
|
|
42
|
+
}
|
|
43
|
+
if (normalizedToken.endsWith('/*')) {
|
|
44
|
+
if (!normalizedContentType) {
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
return normalizedContentType.startsWith(normalizedToken.slice(0, -1));
|
|
48
|
+
}
|
|
49
|
+
return normalizedContentType ? normalizedContentType === normalizedToken : null;
|
|
50
|
+
}
|
|
51
|
+
/*** Parses a browser-style accept string into normalized non-empty tokens. */
|
|
52
|
+
function parseAccept(accept) {
|
|
53
|
+
if (!accept) {
|
|
54
|
+
return [];
|
|
55
|
+
}
|
|
56
|
+
return accept
|
|
57
|
+
.split(',')
|
|
58
|
+
.map((token) => token.trim())
|
|
59
|
+
.filter((token) => token.length > 0);
|
|
60
|
+
}
|
|
61
|
+
/*** Formats a byte count for concise upload validation feedback. */
|
|
62
|
+
function formatBytes(value) {
|
|
63
|
+
if (!Number.isFinite(value) || value <= 0) {
|
|
64
|
+
return '0 B';
|
|
65
|
+
}
|
|
66
|
+
const units = ['B', 'KB', 'MB', 'GB'];
|
|
67
|
+
let size = value;
|
|
68
|
+
let unitIndex = 0;
|
|
69
|
+
while (size >= 1024 && unitIndex < units.length - 1) {
|
|
70
|
+
size /= 1024;
|
|
71
|
+
unitIndex += 1;
|
|
72
|
+
}
|
|
73
|
+
const unit = units.at(unitIndex) ?? 'B';
|
|
74
|
+
const rounded = unitIndex === 0 ? Math.round(size) : Math.round(size * 10) / 10;
|
|
75
|
+
return `${rounded} ${unit}`;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=validateUploadAsset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateUploadAsset.js","sourceRoot":"","sources":["../../../../../src/features/uploader/application/use-cases/validateUploadAsset.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ValidateUploadAssetInput } from '../../../../types/upload';\n\n/*** Validates a picked upload asset against MIME, extension, size, and caller rules. */\nexport function validateUploadAsset({\n asset,\n accept,\n maxSizeBytes,\n validate,\n}: ValidateUploadAssetInput): string | undefined {\n if (!isAccepted(asset.contentType, asset.fileName, accept)) {\n return accept ? `File type not accepted. Expected ${accept}.` : 'File type not accepted.';\n }\n\n if (\n maxSizeBytes !== undefined &&\n Number.isFinite(maxSizeBytes) &&\n maxSizeBytes > 0 &&\n asset.sizeBytes !== undefined &&\n Number.isFinite(asset.sizeBytes) &&\n asset.sizeBytes > maxSizeBytes\n ) {\n return `File is too large (${formatBytes(asset.sizeBytes)}). Max ${formatBytes(maxSizeBytes)}.`;\n }\n\n return validate?.(asset);\n}\n\n/*** Returns whether available file metadata satisfies at least one accept token. */\nfunction isAccepted(\n contentType: string | undefined,\n fileName: string | undefined,\n accept: string | undefined,\n): boolean {\n const tokens = parseAccept(accept);\n if (tokens.length === 0) {\n return true;\n }\n\n let hadSignal = false;\n\n for (const token of tokens) {\n const matches = matchesAcceptToken(token, contentType, fileName);\n if (matches === null) {\n continue;\n }\n\n hadSignal = true;\n if (matches) {\n return true;\n }\n }\n\n return !hadSignal;\n}\n\n/*** Matches one MIME or extension accept token against available file metadata. */\nfunction matchesAcceptToken(\n token: string,\n contentType: string | undefined,\n fileName: string | undefined,\n): boolean | null {\n const normalizedToken = token.toLowerCase();\n const normalizedContentType = contentType?.toLowerCase();\n const normalizedFileName = fileName?.toLowerCase();\n\n if (normalizedToken.startsWith('.')) {\n return normalizedFileName ? normalizedFileName.endsWith(normalizedToken) : null;\n }\n\n if (normalizedToken.endsWith('/*')) {\n if (!normalizedContentType) {\n return null;\n }\n\n return normalizedContentType.startsWith(normalizedToken.slice(0, -1));\n }\n\n return normalizedContentType ? normalizedContentType === normalizedToken : null;\n}\n\n/*** Parses a browser-style accept string into normalized non-empty tokens. */\nfunction parseAccept(accept: string | undefined): readonly string[] {\n if (!accept) {\n return [];\n }\n\n return accept\n .split(',')\n .map((token) => token.trim())\n .filter((token) => token.length > 0);\n}\n\n/*** Formats a byte count for concise upload validation feedback. */\nfunction formatBytes(value: number): string {\n if (!Number.isFinite(value) || value <= 0) {\n return '0 B';\n }\n\n const units = ['B', 'KB', 'MB', 'GB'] as const;\n let size = value;\n let unitIndex = 0;\n\n while (size >= 1024 && unitIndex < units.length - 1) {\n size /= 1024;\n unitIndex += 1;\n }\n\n const unit = units.at(unitIndex) ?? 'B';\n const rounded = unitIndex === 0 ? Math.round(size) : Math.round(size * 10) / 10;\n return `${rounded} ${unit}`;\n}\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { UploadPickerPort } from '../application/ports/outbound/UploadPickerPort';
|
|
2
|
+
/*** Wires the Expo picker adapters into the generic upload picker use case. */
|
|
3
|
+
export declare function createUploadPicker(): UploadPickerPort;
|
|
4
|
+
//# sourceMappingURL=createUploadPicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createUploadPicker.d.ts","sourceRoot":"","sources":["../../../../src/features/uploader/composition/createUploadPicker.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAGvF,+EAA+E;AAC/E,wBAAgB,kBAAkB,IAAI,gBAAgB,CAOrD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { pickDocumentOrFileAsync } from '../adapters/outbound/pickDocumentOrFileAsync';
|
|
2
|
+
import { pickImageOrVideoAsync } from '../adapters/outbound/pickImageOrVideoAsync';
|
|
3
|
+
import { pickUploadAssetAsync } from '../application/use-cases/pickUploadAssetAsync';
|
|
4
|
+
/*** Wires the Expo picker adapters into the generic upload picker use case. */
|
|
5
|
+
export function createUploadPicker() {
|
|
6
|
+
const imageOrVideoPicker = { pickAsync: pickImageOrVideoAsync };
|
|
7
|
+
const documentOrFilePicker = { pickAsync: pickDocumentOrFileAsync };
|
|
8
|
+
return {
|
|
9
|
+
pickAsync: (input) => pickUploadAssetAsync(input, imageOrVideoPicker, documentOrFilePicker),
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=createUploadPicker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createUploadPicker.js","sourceRoot":"","sources":["../../../../src/features/uploader/composition/createUploadPicker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAEnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AAErF,+EAA+E;AAC/E,MAAM,UAAU,kBAAkB;IAChC,MAAM,kBAAkB,GAAqB,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAC;IAClF,MAAM,oBAAoB,GAAqB,EAAE,SAAS,EAAE,uBAAuB,EAAE,CAAC;IAEtF,OAAO;QACL,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,CAAC;KAC5F,CAAC;AACJ,CAAC","sourcesContent":["import { pickDocumentOrFileAsync } from '../adapters/outbound/pickDocumentOrFileAsync';\nimport { pickImageOrVideoAsync } from '../adapters/outbound/pickImageOrVideoAsync';\nimport type { UploadPickerPort } from '../application/ports/outbound/UploadPickerPort';\nimport { pickUploadAssetAsync } from '../application/use-cases/pickUploadAssetAsync';\n\n/*** Wires the Expo picker adapters into the generic upload picker use case. */\nexport function createUploadPicker(): UploadPickerPort {\n const imageOrVideoPicker: UploadPickerPort = { pickAsync: pickImageOrVideoAsync };\n const documentOrFilePicker: UploadPickerPort = { pickAsync: pickDocumentOrFileAsync };\n\n return {\n pickAsync: (input) => pickUploadAssetAsync(input, imageOrVideoPicker, documentOrFilePicker),\n };\n}\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const uploaderMeta: {
|
|
2
|
+
readonly name: "Uploader";
|
|
3
|
+
readonly category: "pattern";
|
|
4
|
+
readonly description: "Picks and manages one image, video, document, or generic file upload.";
|
|
5
|
+
readonly directManifestNode: false;
|
|
6
|
+
readonly allowedChildren: readonly [];
|
|
7
|
+
readonly note: "Upload transport callbacks remain runtime-owned and are not serialized into AppManifest.";
|
|
8
|
+
readonly props: {};
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=meta.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/features/uploader/meta.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY;;;;;;;;CAQa,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export const uploaderMeta = {
|
|
2
|
+
name: 'Uploader',
|
|
3
|
+
category: 'pattern',
|
|
4
|
+
description: 'Picks and manages one image, video, document, or generic file upload.',
|
|
5
|
+
directManifestNode: false,
|
|
6
|
+
allowedChildren: [],
|
|
7
|
+
note: 'Upload transport callbacks remain runtime-owned and are not serialized into AppManifest.',
|
|
8
|
+
props: {},
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=meta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../src/features/uploader/meta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,SAAS;IACnB,WAAW,EAAE,uEAAuE;IACpF,kBAAkB,EAAE,KAAK;IACzB,eAAe,EAAE,EAAE;IACnB,IAAI,EAAE,0FAA0F;IAChG,KAAK,EAAE,EAAE;CAC2B,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../metadata';\n\nexport const uploaderMeta = {\n name: 'Uploader',\n category: 'pattern',\n description: 'Picks and manages one image, video, document, or generic file upload.',\n directManifestNode: false,\n allowedChildren: [],\n note: 'Upload transport callbacks remain runtime-owned and are not serialized into AppManifest.',\n props: {},\n} as const satisfies ZoraComponentMeta;\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export type { UploadAsset, UploadAssetBase, UploaderProps, UploadProgressContext, UploadType, ValidateUploadAssetInput, } from '../../types/upload';
|
|
2
|
+
export { Uploader } from './adapters/inbound/Uploader';
|
|
3
|
+
export { validateUploadAsset } from './application/use-cases/validateUploadAsset';
|
|
4
|
+
//# sourceMappingURL=public.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../../src/features/uploader/public.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,WAAW,EACX,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,UAAU,EACV,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.js","sourceRoot":"","sources":["../../../src/features/uploader/public.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC","sourcesContent":["export type {\n UploadAsset,\n UploadAssetBase,\n UploaderProps,\n UploadProgressContext,\n UploadType,\n ValidateUploadAssetInput,\n} from '../../types/upload';\nexport { Uploader } from './adapters/inbound/Uploader';\nexport { validateUploadAsset } from './application/use-cases/validateUploadAsset';\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
export type { ActionSheetItemProps, ActionSheetProps } from './components/action-sheet';
|
|
2
|
-
export { ActionSheet, ActionSheetItem } from './components/action-sheet';
|
|
3
1
|
export type { AppBarMode, AppBarOverflowAction, AppBarProps } from './components/app-bar';
|
|
4
2
|
export { AppBar } from './components/app-bar';
|
|
5
3
|
export type { AvatarProps, AvatarShape, AvatarSize } from './components/avatar';
|
|
@@ -78,6 +76,8 @@ export type { ToolbarActionProps, ToolbarPosition, ToolbarProps } from './compon
|
|
|
78
76
|
export { Toolbar, ToolbarAction } from './components/toolbar';
|
|
79
77
|
export { ZORA_CORE_PLUGIN } from './corePlugin';
|
|
80
78
|
export { ZORA_CORE_PLUGIN_METADATA } from './corePluginMetadata';
|
|
79
|
+
export type { UploadAsset, UploadAssetBase, UploaderProps, UploadProgressContext, UploadType, ValidateUploadAssetInput, } from './features/uploader/public';
|
|
80
|
+
export { Uploader, validateUploadAsset } from './features/uploader/public';
|
|
81
81
|
export type { BoxProps, CenterProps, ContainerProps, DividerProps, GridProps, InlineProps, ShowProps, SpacerProps, StackProps, SurfaceProps, SurfaceVariant, } from './foundation';
|
|
82
82
|
export { Box, Center, Container, Divider, Grid, Inline, Show, Spacer, Stack, Surface, } from './foundation';
|
|
83
83
|
export type { ZoraColor, ZoraEmphasis, ZoraPaletteColor, ZoraStatusColor, } from './internal/colorModel';
|
|
@@ -114,10 +114,6 @@ export type { FilterBarProps } from './patterns/filter-bar';
|
|
|
114
114
|
export { FilterBar } from './patterns/filter-bar';
|
|
115
115
|
export type { HeroAction, HeroAlign, HeroLayout, HeroProps, HeroTone } from './patterns/hero';
|
|
116
116
|
export { Hero } from './patterns/hero';
|
|
117
|
-
export type { ImagePreviewProps, ZoraImageAsset, ZoraImageMetadata, } from './patterns/image-preview';
|
|
118
|
-
export { ImagePreview } from './patterns/image-preview';
|
|
119
|
-
export type { ImageUploadFieldProps, ImageUploadProgressContext, ZoraPickedImage, } from './patterns/image-upload-field';
|
|
120
|
-
export { ImageUploadField } from './patterns/image-upload-field';
|
|
121
117
|
export type { InspectorFieldProps } from './patterns/inspector-field';
|
|
122
118
|
export { InspectorField } from './patterns/inspector-field';
|
|
123
119
|
export type { ListChildrenProps, ListItemsProps, ListProps, ListRowProps, ListRowVariant, } from './patterns/list';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
export { ActionSheet, ActionSheetItem } from './components/action-sheet';
|
|
2
1
|
export { AppBar } from './components/app-bar';
|
|
3
2
|
export { Avatar, resolveAvatarInitials } from './components/avatar';
|
|
4
3
|
export { AvatarGroup } from './components/avatar-group';
|
|
@@ -39,6 +38,7 @@ export { Toast, ToastProvider, useToast } from './components/toast';
|
|
|
39
38
|
export { Toolbar, ToolbarAction } from './components/toolbar';
|
|
40
39
|
export { ZORA_CORE_PLUGIN } from './corePlugin';
|
|
41
40
|
export { ZORA_CORE_PLUGIN_METADATA } from './corePluginMetadata';
|
|
41
|
+
export { Uploader, validateUploadAsset } from './features/uploader/public';
|
|
42
42
|
export { Box, Center, Container, Divider, Grid, Inline, Show, Spacer, Stack, Surface, } from './foundation';
|
|
43
43
|
export { ZORA_COLORS, ZORA_EMPHASES, ZORA_PALETTE_COLORS, ZORA_STATUS_COLORS, } from './internal/colorModel';
|
|
44
44
|
export { AppShell } from './layout/app-shell';
|
|
@@ -57,8 +57,6 @@ export { DisclosureSection } from './patterns/disclosure-section';
|
|
|
57
57
|
export { EmptyState } from './patterns/empty-state';
|
|
58
58
|
export { FilterBar } from './patterns/filter-bar';
|
|
59
59
|
export { Hero } from './patterns/hero';
|
|
60
|
-
export { ImagePreview } from './patterns/image-preview';
|
|
61
|
-
export { ImageUploadField } from './patterns/image-upload-field';
|
|
62
60
|
export { InspectorField } from './patterns/inspector-field';
|
|
63
61
|
export { List, ListRow, ListSection } from './patterns/list';
|
|
64
62
|
export { MessageBubble } from './patterns/message-bubble';
|
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 type { ActionSheetItemProps, ActionSheetProps } from './components/action-sheet';\nexport { ActionSheet, ActionSheetItem } from './components/action-sheet';\nexport type { AppBarMode, AppBarOverflowAction, AppBarProps } from './components/app-bar';\nexport { AppBar } from './components/app-bar';\nexport type { AvatarProps, AvatarShape, AvatarSize } from './components/avatar';\nexport { Avatar, resolveAvatarInitials } from './components/avatar';\nexport type { AvatarGroupItem, AvatarGroupProps } from './components/avatar-group';\nexport { AvatarGroup } from './components/avatar-group';\nexport type { BadgeProps } from './components/badge';\nexport { Badge } from './components/badge';\nexport type { BreadcrumbItem, BreadcrumbsProps } from './components/breadcrumbs';\nexport { Breadcrumbs } from './components/breadcrumbs';\nexport type { ButtonProps } from './components/button';\nexport { Button } from './components/button';\nexport type {\n ButtonGroupAlign,\n ButtonGroupOrientation,\n ButtonGroupProps,\n} from './components/button-group';\nexport { ButtonGroup } from './components/button-group';\nexport type { CardProps } from './components/card';\nexport { Card } from './components/card';\nexport type { CheckboxGroupOption, CheckboxGroupProps, CheckboxProps } from './components/checkbox';\nexport { Checkbox, CheckboxGroup } from './components/checkbox';\nexport type { ChipProps } from './components/chip';\nexport { Chip } from './components/chip';\nexport type { ChipGroupItem, ChipGroupProps } from './components/chip-group';\nexport { ChipGroup } from './components/chip-group';\nexport type {\n DataTableCellContext,\n DataTableColumn,\n DataTableColumnAlign,\n DataTableDensity,\n DataTableProps,\n DataTableRowAction,\n DataTableSortDirection,\n DataTableSortState,\n} from './components/data-table';\nexport { DataTable } from './components/data-table';\nexport type { DatePickerProps, DatePickerValue } from './components/date-picker';\nexport { DatePicker } from './components/date-picker';\nexport type {\n FormActionsProps,\n FormErrorProps,\n FormErrors,\n FormFieldConfig,\n FormFieldControlProps,\n FormFieldInputType,\n FormFieldProps,\n FormProps,\n FormValidationErrors,\n FormValidationResult,\n FormValues,\n UseFormControllerOptions,\n UseFormControllerResult,\n ValidationRule,\n} from './components/form';\nexport {\n Form,\n FormActions,\n FormError,\n FormField,\n hasRequiredRule,\n useFormController,\n validateField,\n validateFields,\n validateValue,\n} from './components/form';\nexport type {\n GradientColor,\n GradientColors,\n GradientLocations,\n GradientPoint,\n GradientProps,\n GradientRenderer,\n GradientRendererProps,\n GradientRendererProviderProps,\n} from './components/gradient';\nexport { Gradient, GradientRendererProvider } from './components/gradient';\nexport type {\n HeadingAlign,\n HeadingColor,\n HeadingEmphasis,\n HeadingLevel,\n HeadingProps,\n HeadingSize,\n HeadingWeight,\n} from './components/heading';\nexport { Heading } from './components/heading';\nexport type { IconProps } from './components/icon';\nexport { Icon } from './components/icon';\nexport type { IconButtonProps } from './components/icon-button';\nexport { IconButton } from './components/icon-button';\nexport type { ImageFit, ImageProps, SurfaceImageSource } from './components/image';\nexport { Image } from './components/image';\nexport type { InputProps, InputTrailingAction } from './components/input';\nexport { Input } from './components/input';\nexport type { MediaCardImageProps, MediaCardProps } from './components/media-card';\nexport { MediaCard } from './components/media-card';\nexport type { DropdownMenuProps, MenuAction, MenuActionIntent, MenuProps } from './components/menu';\nexport { DropdownMenu, Menu } from './components/menu';\nexport type { MetricCardProps } from './components/metric-card';\nexport { MetricCard } from './components/metric-card';\nexport type { ModalProps } from './components/modal';\nexport { Modal } from './components/modal';\nexport type { PaginationProps } from './components/pagination';\nexport { Pagination } from './components/pagination';\nexport type { ProgressProps, ProgressRingProps } from './components/progress';\nexport { Progress, ProgressRing } from './components/progress';\nexport type { RadioGroupOption, RadioGroupProps, RadioProps } from './components/radio';\nexport { Radio, RadioGroup } from './components/radio';\nexport type { RatingProps } from './components/rating';\nexport { Rating } from './components/rating';\nexport type { SearchBarProps } from './components/search-bar';\nexport { SearchBar } from './components/search-bar';\nexport type { SelectOption, SelectProps } from './components/select';\nexport { Select } from './components/select';\nexport type {\n SkeletonCardProps,\n SkeletonDimension,\n SkeletonListProps,\n SkeletonListVariant,\n SkeletonProps,\n SkeletonRadius,\n SkeletonTextProps,\n} from './components/skeleton';\nexport { Skeleton, SkeletonCard, SkeletonList, SkeletonText } from './components/skeleton';\nexport type { SplashScreenLogoShape, SplashScreenProps } from './components/splash-screen';\nexport { SplashScreen } from './components/splash-screen';\nexport type { TabItem, TabsProps, TabsVariant } from './components/tabs';\nexport { Tabs } from './components/tabs';\nexport type {\n TextAlign,\n TextColor,\n TextEmphasis,\n TextProps,\n TextVariant,\n TextWeight,\n} from './components/text';\nexport { Text } from './components/text';\nexport type { TextareaProps } from './components/textarea';\nexport { Textarea } from './components/textarea';\nexport type { TimePickerProps, TimePickerValue } from './components/time-picker';\nexport { TimePicker } from './components/time-picker';\nexport type { ToastOptions, ToastProps, ToastProviderProps, ToastStatus } from './components/toast';\nexport { Toast, ToastProvider, useToast } from './components/toast';\nexport type { ToolbarActionProps, ToolbarPosition, ToolbarProps } from './components/toolbar';\nexport { Toolbar, ToolbarAction } from './components/toolbar';\nexport { ZORA_CORE_PLUGIN } from './corePlugin';\nexport { ZORA_CORE_PLUGIN_METADATA } from './corePluginMetadata';\nexport type {\n BoxProps,\n CenterProps,\n ContainerProps,\n DividerProps,\n GridProps,\n InlineProps,\n ShowProps,\n SpacerProps,\n StackProps,\n SurfaceProps,\n SurfaceVariant,\n} from './foundation';\nexport {\n Box,\n Center,\n Container,\n Divider,\n Grid,\n Inline,\n Show,\n Spacer,\n Stack,\n Surface,\n} from './foundation';\nexport type {\n ZoraColor,\n ZoraEmphasis,\n ZoraPaletteColor,\n ZoraStatusColor,\n} from './internal/colorModel';\nexport {\n ZORA_COLORS,\n ZORA_EMPHASES,\n ZORA_PALETTE_COLORS,\n ZORA_STATUS_COLORS,\n} from './internal/colorModel';\nexport type { AppShellProps } from './layout/app-shell';\nexport { AppShell } from './layout/app-shell';\nexport type { ScreenProps } from './layout/screen';\nexport { Screen } from './layout/screen';\nexport type { ScreenSectionProps } from './layout/screen-section';\nexport { ScreenSection } from './layout/screen-section';\nexport type { SettingsLayoutProps } from './layout/settings-layout';\nexport { SettingsLayout } from './layout/settings-layout';\nexport type { SidebarLayoutProps } from './layout/sidebar-layout';\nexport { SidebarLayout } from './layout/sidebar-layout';\nexport type { TopbarLayoutProps } from './layout/topbar-layout';\nexport { TopbarLayout } from './layout/topbar-layout';\nexport type {\n ZoraBindableComponentType,\n ZoraComponentBlueprint,\n ZoraComponentCategory,\n ZoraComponentEventMeta,\n ZoraComponentEventPayloadFieldMeta,\n ZoraComponentEventPayloadFieldType,\n ZoraComponentEventPayloadKind,\n ZoraComponentI18nMeta,\n ZoraComponentManifestPolicy,\n ZoraComponentMeta,\n ZoraComponentMetaRegistry,\n ZoraComponentPropArrayItemSchema,\n ZoraComponentPropAuthoring,\n ZoraComponentPropSchema,\n ZoraComponentPropType,\n ZoraComponentPropValue,\n ZoraComponentSlotMeta,\n ZoraThemeRecipeBooleanFieldMeta,\n ZoraThemeRecipeChoiceFieldMeta,\n ZoraThemeRecipeFieldMeta,\n ZoraThemeRecipeKind,\n ZoraThemeRecipeMeta,\n ZoraThemeRecipeMetaRegistry,\n ZoraThemeRecipeTokenFieldMeta,\n ZoraThemeTokenFamily,\n} from './metadata';\nexport {\n ZORA_BINDABLE_COMPONENT_META,\n ZORA_COMPONENT_META,\n ZORA_THEME_RECIPE_META,\n ZORA_THEME_TOKEN_FAMILIES,\n} from './metadata';\nexport type {\n AuthFormBaseProps,\n AuthIdentifierKind,\n ForgotPasswordFormProps,\n ForgotPasswordFormValues,\n OAuthProviderButtonProps,\n OAuthProviderIconSpec,\n OAuthProviderItem,\n OAuthProviderListLayout,\n OAuthProviderListProps,\n OtpFormProps,\n OtpFormValues,\n SignInFormProps,\n SignInFormValues,\n SignUpFormField,\n SignUpFormProps,\n SignUpFormValues,\n} from './patterns/auth';\nexport {\n DEFAULT_OAUTH_PROVIDER_ICONS,\n ForgotPasswordForm,\n OAuthProviderButton,\n OAuthProviderList,\n OtpForm,\n resolveOAuthProviderIcon,\n resolveOAuthProviderLabel,\n SignInForm,\n SignUpForm,\n} from './patterns/auth';\nexport type { ChatListAvatar, ChatListItemProps } from './patterns/chat-list-item';\nexport { ChatListItem } from './patterns/chat-list-item';\nexport type {\n CollectionEditorProps,\n CollectionEditorRenderItemProps,\n} from './patterns/collection-editor';\nexport { CollectionEditor } from './patterns/collection-editor';\nexport type { ConfirmDialogProps } from './patterns/confirm-dialog';\nexport { ConfirmDialog } from './patterns/confirm-dialog';\nexport type {\n ContentRailControlPressEvent,\n ContentRailDirection,\n ContentRailItemSize,\n ContentRailMotion,\n ContentRailProps,\n ContentRailSpacing,\n ContentRailVisibleRangeChangeEvent,\n} from './patterns/content-rail';\nexport { ContentRail } from './patterns/content-rail';\nexport type { DisclosureSectionProps } from './patterns/disclosure-section';\nexport { DisclosureSection } from './patterns/disclosure-section';\nexport type { EmptyStateAction, EmptyStateProps } from './patterns/empty-state';\nexport { EmptyState } from './patterns/empty-state';\nexport type { FilterBarProps } from './patterns/filter-bar';\nexport { FilterBar } from './patterns/filter-bar';\nexport type { HeroAction, HeroAlign, HeroLayout, HeroProps, HeroTone } from './patterns/hero';\nexport { Hero } from './patterns/hero';\nexport type {\n ImagePreviewProps,\n ZoraImageAsset,\n ZoraImageMetadata,\n} from './patterns/image-preview';\nexport { ImagePreview } from './patterns/image-preview';\nexport type {\n ImageUploadFieldProps,\n ImageUploadProgressContext,\n ZoraPickedImage,\n} from './patterns/image-upload-field';\nexport { ImageUploadField } from './patterns/image-upload-field';\nexport type { InspectorFieldProps } from './patterns/inspector-field';\nexport { InspectorField } from './patterns/inspector-field';\nexport type {\n ListChildrenProps,\n ListItemsProps,\n ListProps,\n ListRowProps,\n ListRowVariant,\n} from './patterns/list';\nexport { List, ListRow, ListSection } from './patterns/list';\nexport type {\n MessageBubbleAuthor,\n MessageBubbleAvatar,\n MessageBubbleDirection,\n MessageBubbleProps,\n MessageBubbleStatus,\n} from './patterns/message-bubble';\nexport { MessageBubble } from './patterns/message-bubble';\nexport type { MissingElementProps } from './patterns/missing-element';\nexport { MissingElement } from './patterns/missing-element';\nexport type { NoticeProps } from './patterns/notice';\nexport { Notice } from './patterns/notice';\nexport type { PanelProps } from './patterns/panel';\nexport { Panel } from './patterns/panel';\nexport type {\n PostAction,\n PostAuthor,\n PostAuthorAvatar,\n PostCardMedia,\n PostCardProps,\n} from './patterns/post-card';\nexport { PostCard } from './patterns/post-card';\nexport type { ProductCardProps } from './patterns/product-card';\nexport { ProductCard } from './patterns/product-card';\nexport type {\n ReaderColorScheme,\n ReaderDocumentFormat,\n ReaderErrorCode,\n ReaderErrorEvent,\n ReaderExternalLinkEvent,\n ReaderLineHeight,\n ReaderLocationChangeEvent,\n ReaderNavigationTrigger,\n ReaderResolvedSource,\n ReaderStatus,\n ReaderSurfaceProps,\n} from './patterns/reader';\nexport { ReaderSurface, resolveReaderProgress } from './patterns/reader';\nexport type {\n BarcodeScannerViewProps,\n BarcodeScanResult,\n CameraPermissionStatus,\n CameraPermissionViewProps,\n ScanOverlayProps,\n} from './patterns/scanner';\nexport { BarcodeScannerView, CameraPermissionView, ScanOverlay } from './patterns/scanner';\nexport type { SectionHeaderProps } from './patterns/section-header';\nexport { SectionHeader } from './patterns/section-header';\nexport type {\n SelectableItemProps,\n SelectableItemState,\n SelectionMode,\n SelectionProviderProps,\n SelectionTrigger,\n UseSelectionResult,\n} from './patterns/selection';\nexport { SelectableItem, SelectionProvider, useSelection } from './patterns/selection';\nexport type { SettingsRowProps } from './patterns/settings-row';\nexport { SettingsRow } from './patterns/settings-row';\nexport type { SwitchFieldProps } from './patterns/switch-field';\nexport { SwitchField } from './patterns/switch-field';\nexport type { ThemeComposerProps } from './patterns/theme-composer';\nexport { ThemeComposer } from './patterns/theme-composer';\nexport type { PaletteItemProps, TileGridProps } from './patterns/tile-grid';\nexport { PaletteItem, TileGrid } from './patterns/tile-grid';\nexport type { TimelineItem, TimelineProps } from './patterns/timeline';\nexport { Timeline } from './patterns/timeline';\nexport type { TreeItemNode, TreeItemRenderProps, TreeViewProps } from './patterns/tree-view';\nexport { TreeItem, TreeView } from './patterns/tree-view';\nexport type {\n ComposedZoraPluginCatalog,\n ComposedZoraPluginMetadataCatalog,\n ZoraPluginCompositionErrorCode,\n ZoraPluginDescriptor,\n ZoraPluginMetadata,\n ZoraPluginPlacement,\n} from './pluginComposition';\nexport {\n composeZoraPluginMetadata,\n composeZoraPlugins,\n ZoraPluginCompositionError,\n} from './pluginComposition';\nexport type { ZoraComponentRegistry } from './registry';\nexport { ZORA_COMPONENT_REGISTRY } from './registry';\nexport * from './theme';\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["export type { AppBarMode, AppBarOverflowAction, AppBarProps } from './components/app-bar';\nexport { AppBar } from './components/app-bar';\nexport type { AvatarProps, AvatarShape, AvatarSize } from './components/avatar';\nexport { Avatar, resolveAvatarInitials } from './components/avatar';\nexport type { AvatarGroupItem, AvatarGroupProps } from './components/avatar-group';\nexport { AvatarGroup } from './components/avatar-group';\nexport type { BadgeProps } from './components/badge';\nexport { Badge } from './components/badge';\nexport type { BreadcrumbItem, BreadcrumbsProps } from './components/breadcrumbs';\nexport { Breadcrumbs } from './components/breadcrumbs';\nexport type { ButtonProps } from './components/button';\nexport { Button } from './components/button';\nexport type {\n ButtonGroupAlign,\n ButtonGroupOrientation,\n ButtonGroupProps,\n} from './components/button-group';\nexport { ButtonGroup } from './components/button-group';\nexport type { CardProps } from './components/card';\nexport { Card } from './components/card';\nexport type { CheckboxGroupOption, CheckboxGroupProps, CheckboxProps } from './components/checkbox';\nexport { Checkbox, CheckboxGroup } from './components/checkbox';\nexport type { ChipProps } from './components/chip';\nexport { Chip } from './components/chip';\nexport type { ChipGroupItem, ChipGroupProps } from './components/chip-group';\nexport { ChipGroup } from './components/chip-group';\nexport type {\n DataTableCellContext,\n DataTableColumn,\n DataTableColumnAlign,\n DataTableDensity,\n DataTableProps,\n DataTableRowAction,\n DataTableSortDirection,\n DataTableSortState,\n} from './components/data-table';\nexport { DataTable } from './components/data-table';\nexport type { DatePickerProps, DatePickerValue } from './components/date-picker';\nexport { DatePicker } from './components/date-picker';\nexport type {\n FormActionsProps,\n FormErrorProps,\n FormErrors,\n FormFieldConfig,\n FormFieldControlProps,\n FormFieldInputType,\n FormFieldProps,\n FormProps,\n FormValidationErrors,\n FormValidationResult,\n FormValues,\n UseFormControllerOptions,\n UseFormControllerResult,\n ValidationRule,\n} from './components/form';\nexport {\n Form,\n FormActions,\n FormError,\n FormField,\n hasRequiredRule,\n useFormController,\n validateField,\n validateFields,\n validateValue,\n} from './components/form';\nexport type {\n GradientColor,\n GradientColors,\n GradientLocations,\n GradientPoint,\n GradientProps,\n GradientRenderer,\n GradientRendererProps,\n GradientRendererProviderProps,\n} from './components/gradient';\nexport { Gradient, GradientRendererProvider } from './components/gradient';\nexport type {\n HeadingAlign,\n HeadingColor,\n HeadingEmphasis,\n HeadingLevel,\n HeadingProps,\n HeadingSize,\n HeadingWeight,\n} from './components/heading';\nexport { Heading } from './components/heading';\nexport type { IconProps } from './components/icon';\nexport { Icon } from './components/icon';\nexport type { IconButtonProps } from './components/icon-button';\nexport { IconButton } from './components/icon-button';\nexport type { ImageFit, ImageProps, SurfaceImageSource } from './components/image';\nexport { Image } from './components/image';\nexport type { InputProps, InputTrailingAction } from './components/input';\nexport { Input } from './components/input';\nexport type { MediaCardImageProps, MediaCardProps } from './components/media-card';\nexport { MediaCard } from './components/media-card';\nexport type { DropdownMenuProps, MenuAction, MenuActionIntent, MenuProps } from './components/menu';\nexport { DropdownMenu, Menu } from './components/menu';\nexport type { MetricCardProps } from './components/metric-card';\nexport { MetricCard } from './components/metric-card';\nexport type { ModalProps } from './components/modal';\nexport { Modal } from './components/modal';\nexport type { PaginationProps } from './components/pagination';\nexport { Pagination } from './components/pagination';\nexport type { ProgressProps, ProgressRingProps } from './components/progress';\nexport { Progress, ProgressRing } from './components/progress';\nexport type { RadioGroupOption, RadioGroupProps, RadioProps } from './components/radio';\nexport { Radio, RadioGroup } from './components/radio';\nexport type { RatingProps } from './components/rating';\nexport { Rating } from './components/rating';\nexport type { SearchBarProps } from './components/search-bar';\nexport { SearchBar } from './components/search-bar';\nexport type { SelectOption, SelectProps } from './components/select';\nexport { Select } from './components/select';\nexport type {\n SkeletonCardProps,\n SkeletonDimension,\n SkeletonListProps,\n SkeletonListVariant,\n SkeletonProps,\n SkeletonRadius,\n SkeletonTextProps,\n} from './components/skeleton';\nexport { Skeleton, SkeletonCard, SkeletonList, SkeletonText } from './components/skeleton';\nexport type { SplashScreenLogoShape, SplashScreenProps } from './components/splash-screen';\nexport { SplashScreen } from './components/splash-screen';\nexport type { TabItem, TabsProps, TabsVariant } from './components/tabs';\nexport { Tabs } from './components/tabs';\nexport type {\n TextAlign,\n TextColor,\n TextEmphasis,\n TextProps,\n TextVariant,\n TextWeight,\n} from './components/text';\nexport { Text } from './components/text';\nexport type { TextareaProps } from './components/textarea';\nexport { Textarea } from './components/textarea';\nexport type { TimePickerProps, TimePickerValue } from './components/time-picker';\nexport { TimePicker } from './components/time-picker';\nexport type { ToastOptions, ToastProps, ToastProviderProps, ToastStatus } from './components/toast';\nexport { Toast, ToastProvider, useToast } from './components/toast';\nexport type { ToolbarActionProps, ToolbarPosition, ToolbarProps } from './components/toolbar';\nexport { Toolbar, ToolbarAction } from './components/toolbar';\nexport { ZORA_CORE_PLUGIN } from './corePlugin';\nexport { ZORA_CORE_PLUGIN_METADATA } from './corePluginMetadata';\nexport type {\n UploadAsset,\n UploadAssetBase,\n UploaderProps,\n UploadProgressContext,\n UploadType,\n ValidateUploadAssetInput,\n} from './features/uploader/public';\nexport { Uploader, validateUploadAsset } from './features/uploader/public';\nexport type {\n BoxProps,\n CenterProps,\n ContainerProps,\n DividerProps,\n GridProps,\n InlineProps,\n ShowProps,\n SpacerProps,\n StackProps,\n SurfaceProps,\n SurfaceVariant,\n} from './foundation';\nexport {\n Box,\n Center,\n Container,\n Divider,\n Grid,\n Inline,\n Show,\n Spacer,\n Stack,\n Surface,\n} from './foundation';\nexport type {\n ZoraColor,\n ZoraEmphasis,\n ZoraPaletteColor,\n ZoraStatusColor,\n} from './internal/colorModel';\nexport {\n ZORA_COLORS,\n ZORA_EMPHASES,\n ZORA_PALETTE_COLORS,\n ZORA_STATUS_COLORS,\n} from './internal/colorModel';\nexport type { AppShellProps } from './layout/app-shell';\nexport { AppShell } from './layout/app-shell';\nexport type { ScreenProps } from './layout/screen';\nexport { Screen } from './layout/screen';\nexport type { ScreenSectionProps } from './layout/screen-section';\nexport { ScreenSection } from './layout/screen-section';\nexport type { SettingsLayoutProps } from './layout/settings-layout';\nexport { SettingsLayout } from './layout/settings-layout';\nexport type { SidebarLayoutProps } from './layout/sidebar-layout';\nexport { SidebarLayout } from './layout/sidebar-layout';\nexport type { TopbarLayoutProps } from './layout/topbar-layout';\nexport { TopbarLayout } from './layout/topbar-layout';\nexport type {\n ZoraBindableComponentType,\n ZoraComponentBlueprint,\n ZoraComponentCategory,\n ZoraComponentEventMeta,\n ZoraComponentEventPayloadFieldMeta,\n ZoraComponentEventPayloadFieldType,\n ZoraComponentEventPayloadKind,\n ZoraComponentI18nMeta,\n ZoraComponentManifestPolicy,\n ZoraComponentMeta,\n ZoraComponentMetaRegistry,\n ZoraComponentPropArrayItemSchema,\n ZoraComponentPropAuthoring,\n ZoraComponentPropSchema,\n ZoraComponentPropType,\n ZoraComponentPropValue,\n ZoraComponentSlotMeta,\n ZoraThemeRecipeBooleanFieldMeta,\n ZoraThemeRecipeChoiceFieldMeta,\n ZoraThemeRecipeFieldMeta,\n ZoraThemeRecipeKind,\n ZoraThemeRecipeMeta,\n ZoraThemeRecipeMetaRegistry,\n ZoraThemeRecipeTokenFieldMeta,\n ZoraThemeTokenFamily,\n} from './metadata';\nexport {\n ZORA_BINDABLE_COMPONENT_META,\n ZORA_COMPONENT_META,\n ZORA_THEME_RECIPE_META,\n ZORA_THEME_TOKEN_FAMILIES,\n} from './metadata';\nexport type {\n AuthFormBaseProps,\n AuthIdentifierKind,\n ForgotPasswordFormProps,\n ForgotPasswordFormValues,\n OAuthProviderButtonProps,\n OAuthProviderIconSpec,\n OAuthProviderItem,\n OAuthProviderListLayout,\n OAuthProviderListProps,\n OtpFormProps,\n OtpFormValues,\n SignInFormProps,\n SignInFormValues,\n SignUpFormField,\n SignUpFormProps,\n SignUpFormValues,\n} from './patterns/auth';\nexport {\n DEFAULT_OAUTH_PROVIDER_ICONS,\n ForgotPasswordForm,\n OAuthProviderButton,\n OAuthProviderList,\n OtpForm,\n resolveOAuthProviderIcon,\n resolveOAuthProviderLabel,\n SignInForm,\n SignUpForm,\n} from './patterns/auth';\nexport type { ChatListAvatar, ChatListItemProps } from './patterns/chat-list-item';\nexport { ChatListItem } from './patterns/chat-list-item';\nexport type {\n CollectionEditorProps,\n CollectionEditorRenderItemProps,\n} from './patterns/collection-editor';\nexport { CollectionEditor } from './patterns/collection-editor';\nexport type { ConfirmDialogProps } from './patterns/confirm-dialog';\nexport { ConfirmDialog } from './patterns/confirm-dialog';\nexport type {\n ContentRailControlPressEvent,\n ContentRailDirection,\n ContentRailItemSize,\n ContentRailMotion,\n ContentRailProps,\n ContentRailSpacing,\n ContentRailVisibleRangeChangeEvent,\n} from './patterns/content-rail';\nexport { ContentRail } from './patterns/content-rail';\nexport type { DisclosureSectionProps } from './patterns/disclosure-section';\nexport { DisclosureSection } from './patterns/disclosure-section';\nexport type { EmptyStateAction, EmptyStateProps } from './patterns/empty-state';\nexport { EmptyState } from './patterns/empty-state';\nexport type { FilterBarProps } from './patterns/filter-bar';\nexport { FilterBar } from './patterns/filter-bar';\nexport type { HeroAction, HeroAlign, HeroLayout, HeroProps, HeroTone } from './patterns/hero';\nexport { Hero } from './patterns/hero';\nexport type { InspectorFieldProps } from './patterns/inspector-field';\nexport { InspectorField } from './patterns/inspector-field';\nexport type {\n ListChildrenProps,\n ListItemsProps,\n ListProps,\n ListRowProps,\n ListRowVariant,\n} from './patterns/list';\nexport { List, ListRow, ListSection } from './patterns/list';\nexport type {\n MessageBubbleAuthor,\n MessageBubbleAvatar,\n MessageBubbleDirection,\n MessageBubbleProps,\n MessageBubbleStatus,\n} from './patterns/message-bubble';\nexport { MessageBubble } from './patterns/message-bubble';\nexport type { MissingElementProps } from './patterns/missing-element';\nexport { MissingElement } from './patterns/missing-element';\nexport type { NoticeProps } from './patterns/notice';\nexport { Notice } from './patterns/notice';\nexport type { PanelProps } from './patterns/panel';\nexport { Panel } from './patterns/panel';\nexport type {\n PostAction,\n PostAuthor,\n PostAuthorAvatar,\n PostCardMedia,\n PostCardProps,\n} from './patterns/post-card';\nexport { PostCard } from './patterns/post-card';\nexport type { ProductCardProps } from './patterns/product-card';\nexport { ProductCard } from './patterns/product-card';\nexport type {\n ReaderColorScheme,\n ReaderDocumentFormat,\n ReaderErrorCode,\n ReaderErrorEvent,\n ReaderExternalLinkEvent,\n ReaderLineHeight,\n ReaderLocationChangeEvent,\n ReaderNavigationTrigger,\n ReaderResolvedSource,\n ReaderStatus,\n ReaderSurfaceProps,\n} from './patterns/reader';\nexport { ReaderSurface, resolveReaderProgress } from './patterns/reader';\nexport type {\n BarcodeScannerViewProps,\n BarcodeScanResult,\n CameraPermissionStatus,\n CameraPermissionViewProps,\n ScanOverlayProps,\n} from './patterns/scanner';\nexport { BarcodeScannerView, CameraPermissionView, ScanOverlay } from './patterns/scanner';\nexport type { SectionHeaderProps } from './patterns/section-header';\nexport { SectionHeader } from './patterns/section-header';\nexport type {\n SelectableItemProps,\n SelectableItemState,\n SelectionMode,\n SelectionProviderProps,\n SelectionTrigger,\n UseSelectionResult,\n} from './patterns/selection';\nexport { SelectableItem, SelectionProvider, useSelection } from './patterns/selection';\nexport type { SettingsRowProps } from './patterns/settings-row';\nexport { SettingsRow } from './patterns/settings-row';\nexport type { SwitchFieldProps } from './patterns/switch-field';\nexport { SwitchField } from './patterns/switch-field';\nexport type { ThemeComposerProps } from './patterns/theme-composer';\nexport { ThemeComposer } from './patterns/theme-composer';\nexport type { PaletteItemProps, TileGridProps } from './patterns/tile-grid';\nexport { PaletteItem, TileGrid } from './patterns/tile-grid';\nexport type { TimelineItem, TimelineProps } from './patterns/timeline';\nexport { Timeline } from './patterns/timeline';\nexport type { TreeItemNode, TreeItemRenderProps, TreeViewProps } from './patterns/tree-view';\nexport { TreeItem, TreeView } from './patterns/tree-view';\nexport type {\n ComposedZoraPluginCatalog,\n ComposedZoraPluginMetadataCatalog,\n ZoraPluginCompositionErrorCode,\n ZoraPluginDescriptor,\n ZoraPluginMetadata,\n ZoraPluginPlacement,\n} from './pluginComposition';\nexport {\n composeZoraPluginMetadata,\n composeZoraPlugins,\n ZoraPluginCompositionError,\n} from './pluginComposition';\nexport type { ZoraComponentRegistry } from './registry';\nexport { ZORA_COMPONENT_REGISTRY } from './registry';\nexport * from './theme';\n"]}
|