@ankhorage/zora 1.0.10 → 1.2.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.
Files changed (96) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +164 -5
  3. package/dist/components/app-bar/AppBar.d.ts +4 -0
  4. package/dist/components/app-bar/AppBar.d.ts.map +1 -0
  5. package/dist/components/app-bar/AppBar.js +63 -0
  6. package/dist/components/app-bar/AppBar.js.map +1 -0
  7. package/dist/components/app-bar/index.d.ts +3 -0
  8. package/dist/components/app-bar/index.d.ts.map +1 -0
  9. package/dist/components/app-bar/index.js +3 -0
  10. package/dist/components/app-bar/index.js.map +1 -0
  11. package/dist/components/app-bar/types.d.ts +31 -0
  12. package/dist/components/app-bar/types.d.ts.map +1 -0
  13. package/dist/components/app-bar/types.js +2 -0
  14. package/dist/components/app-bar/types.js.map +1 -0
  15. package/dist/components/image/Image.d.ts +4 -0
  16. package/dist/components/image/Image.d.ts.map +1 -0
  17. package/dist/components/image/Image.js +8 -0
  18. package/dist/components/image/Image.js.map +1 -0
  19. package/dist/components/image/index.d.ts +3 -0
  20. package/dist/components/image/index.d.ts.map +1 -0
  21. package/dist/components/image/index.js +2 -0
  22. package/dist/components/image/index.js.map +1 -0
  23. package/dist/components/image/types.d.ts +6 -0
  24. package/dist/components/image/types.d.ts.map +1 -0
  25. package/dist/components/image/types.js +2 -0
  26. package/dist/components/image/types.js.map +1 -0
  27. package/dist/components/input/types.d.ts +1 -1
  28. package/dist/components/input/types.d.ts.map +1 -1
  29. package/dist/components/input/types.js.map +1 -1
  30. package/dist/components/toolbar/types.d.ts +1 -1
  31. package/dist/components/toolbar/types.d.ts.map +1 -1
  32. package/dist/components/toolbar/types.js.map +1 -1
  33. package/dist/index.d.ts +11 -3
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +4 -0
  36. package/dist/index.js.map +1 -1
  37. package/dist/internal/resolveZoraNavigationItems.d.ts +4 -3
  38. package/dist/internal/resolveZoraNavigationItems.d.ts.map +1 -1
  39. package/dist/internal/resolveZoraNavigationItems.js.map +1 -1
  40. package/dist/patterns/image-preview/ImagePreview.d.ts +4 -0
  41. package/dist/patterns/image-preview/ImagePreview.d.ts.map +1 -0
  42. package/dist/patterns/image-preview/ImagePreview.js +41 -0
  43. package/dist/patterns/image-preview/ImagePreview.js.map +1 -0
  44. package/dist/patterns/image-preview/index.d.ts +3 -0
  45. package/dist/patterns/image-preview/index.d.ts.map +1 -0
  46. package/dist/patterns/image-preview/index.js +2 -0
  47. package/dist/patterns/image-preview/index.js.map +1 -0
  48. package/dist/patterns/image-preview/types.d.ts +36 -0
  49. package/dist/patterns/image-preview/types.d.ts.map +1 -0
  50. package/dist/patterns/image-preview/types.js +2 -0
  51. package/dist/patterns/image-preview/types.js.map +1 -0
  52. package/dist/patterns/image-upload-field/ImageUploadField.d.ts +4 -0
  53. package/dist/patterns/image-upload-field/ImageUploadField.d.ts.map +1 -0
  54. package/dist/patterns/image-upload-field/ImageUploadField.js +211 -0
  55. package/dist/patterns/image-upload-field/ImageUploadField.js.map +1 -0
  56. package/dist/patterns/image-upload-field/index.d.ts +3 -0
  57. package/dist/patterns/image-upload-field/index.d.ts.map +1 -0
  58. package/dist/patterns/image-upload-field/index.js +2 -0
  59. package/dist/patterns/image-upload-field/index.js.map +1 -0
  60. package/dist/patterns/image-upload-field/types.d.ts +35 -0
  61. package/dist/patterns/image-upload-field/types.d.ts.map +1 -0
  62. package/dist/patterns/image-upload-field/types.js +2 -0
  63. package/dist/patterns/image-upload-field/types.js.map +1 -0
  64. package/dist/patterns/image-upload-field/uploadFlow.d.ts +18 -0
  65. package/dist/patterns/image-upload-field/uploadFlow.d.ts.map +1 -0
  66. package/dist/patterns/image-upload-field/uploadFlow.js +106 -0
  67. package/dist/patterns/image-upload-field/uploadFlow.js.map +1 -0
  68. package/dist/patterns/list/types.d.ts +2 -2
  69. package/dist/patterns/list/types.d.ts.map +1 -1
  70. package/dist/patterns/list/types.js.map +1 -1
  71. package/dist/patterns/responsive-panel/types.d.ts +1 -1
  72. package/dist/patterns/responsive-panel/types.d.ts.map +1 -1
  73. package/dist/patterns/responsive-panel/types.js.map +1 -1
  74. package/package.json +9 -10
  75. package/src/components/app-bar/AppBar.tsx +133 -0
  76. package/src/components/app-bar/index.ts +2 -0
  77. package/src/components/app-bar/types.ts +36 -0
  78. package/src/components/image/Image.tsx +11 -0
  79. package/src/components/image/index.ts +2 -0
  80. package/src/components/image/types.ts +7 -0
  81. package/src/components/input/types.ts +1 -1
  82. package/src/components/toolbar/types.ts +2 -2
  83. package/src/index.ts +24 -3
  84. package/src/internal/resolveZoraNavigationItems.ts +3 -3
  85. package/src/patterns/image-preview/ImagePreview.tsx +76 -0
  86. package/src/patterns/image-preview/index.ts +2 -0
  87. package/src/patterns/image-preview/types.ts +41 -0
  88. package/src/patterns/image-upload-field/ImageUploadField.tsx +293 -0
  89. package/src/patterns/image-upload-field/index.ts +2 -0
  90. package/src/patterns/image-upload-field/types.ts +41 -0
  91. package/src/patterns/image-upload-field/uploadFlow.test.ts +117 -0
  92. package/src/patterns/image-upload-field/uploadFlow.ts +145 -0
  93. package/src/patterns/list/types.ts +2 -2
  94. package/src/patterns/responsive-panel/types.ts +2 -2
  95. package/src/showcaseCoverage.test.ts +4 -0
  96. package/src/theme/themeScopeStructure.test.ts +2 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.2.0
4
+
5
+ ### Minor Changes
6
+
7
+ - de30081: Add a product-facing `AppBar` component backed by the Surface `AppBar` primitive.
8
+
9
+ The new component supports title/subtitle content, leading and trailing actions,
10
+ an overflow trigger entrypoint, and generic prop-driven selection mode while
11
+ keeping the existing `Toolbar` API unchanged.
12
+
13
+ ## 1.1.0
14
+
15
+ ### Minor Changes
16
+
17
+ - 7cec2db: Add provider-neutral image and media upload UI components.
18
+
3
19
  ## 1.0.10
4
20
 
5
21
  ### Patch Changes
package/README.md CHANGED
@@ -30,15 +30,15 @@ Wrap your app in `ZoraProvider`, then import components from
30
30
  ```tsx
31
31
  import React from 'react';
32
32
  import {
33
+ AppBar,
33
34
  AppShell,
34
35
  Button,
35
36
  Card,
36
37
  Heading,
38
+ IconButton,
37
39
  Page,
38
40
  PageHeader,
39
41
  Text,
40
- Toolbar,
41
- ToolbarAction,
42
42
  ZoraProvider,
43
43
  } from '@ankhorage/zora';
44
44
 
@@ -47,9 +47,10 @@ export function App() {
47
47
  <ZoraProvider>
48
48
  <AppShell
49
49
  header={
50
- <Toolbar>
51
- <ToolbarAction icon={{ name: 'menu-outline' }} label="Menu" />
52
- </Toolbar>
50
+ <AppBar
51
+ leading={<IconButton icon={{ name: 'menu-outline' }} label="Menu" onPress={() => {}} />}
52
+ title="Dashboard"
53
+ />
53
54
  }
54
55
  >
55
56
  <Page header={<PageHeader title="Dashboard" description="Ready to build." />}>
@@ -528,6 +529,35 @@ No inherited props. `MediaCardProps` is declared directly by ZORA.
528
529
 
529
530
  </details>
530
531
 
532
+ ### `Image`
533
+
534
+ ZORA wrapper around the Surface `Image` primitive. Use this for theme-scoped image rendering in React Native and React Native Web.
535
+
536
+ ```tsx
537
+ <Image
538
+ alt="Example cover"
539
+ aspectRatio={16 / 9}
540
+ fit="cover"
541
+ radius="l"
542
+ source="https://example.com/cover.png"
543
+ />
544
+ ```
545
+
546
+ <details>
547
+ <summary>Props</summary>
548
+
549
+ ZORA props:
550
+
551
+ | Prop | Type | Default | Notes |
552
+ | -------- | -------- | ------- | -------- |
553
+ | `testID` | `string` | - | Test id. |
554
+
555
+ Inherited props:
556
+
557
+ Inherits all Surface `ImageProps` except `mode` and `themeId`. `source` accepts Surface `SurfaceImageSource` (string URL/uri or a React Native image source).
558
+
559
+ </details>
560
+
531
561
  ### `MetricCard`
532
562
 
533
563
  Compact metric surface for dashboards, stats, and summary cards.
@@ -917,6 +947,57 @@ ZORA props:
917
947
 
918
948
  </details>
919
949
 
950
+ ### `AppBar`
951
+
952
+ Product-facing top app bar backed by the Surface `AppBar` primitive.
953
+
954
+ Use it for screen-level chrome (title/subtitle + leading/trailing actions).
955
+ The optional overflow entrypoint is trigger-only: consumers decide whether to
956
+ open a menu, sheet, modal, or something else.
957
+
958
+ ```tsx
959
+ <AppBar
960
+ title="Inbox"
961
+ subtitle="All conversations"
962
+ leading={<IconButton icon={{ name: 'menu-outline' }} label="Open menu" onPress={openMenu} />}
963
+ actions={<IconButton icon={{ name: 'search-outline' }} label="Search" onPress={openSearch} />}
964
+ overflow={{ onPress: openOverflow, label: 'More actions' }}
965
+ />
966
+ ```
967
+
968
+ Selection mode is generic and prop-driven:
969
+
970
+ ```tsx
971
+ <AppBar
972
+ appMode={{ type: 'selection', label: 'Selected', count: 3, onCancel: exitSelection }}
973
+ actions={
974
+ <IconButton icon={{ name: 'trash-outline' }} label="Delete" tone="danger" onPress={del} />
975
+ }
976
+ />
977
+ ```
978
+
979
+ <details>
980
+ <summary>Props</summary>
981
+
982
+ ZORA props:
983
+
984
+ | Prop | Type | Default | Notes |
985
+ | ------------- | ---------------------- | ------- | ----------------------------------------------------------------- |
986
+ | `title` | `React.ReactNode` | - | Primary title content. |
987
+ | `subtitle` | `React.ReactNode` | - | Optional secondary line. |
988
+ | `leading` | `React.ReactNode` | - | Optional leading content (e.g. back/menu button). |
989
+ | `actions` | `React.ReactNode` | - | Optional trailing actions content. |
990
+ | `overflow` | `AppBarOverflowAction` | - | Optional overflow trigger entrypoint (no built-in menu behavior). |
991
+ | `appMode` | `AppBarMode` | - | Default or selection-mode rendering. |
992
+ | `safeAreaTop` | `boolean` | `true` | Adds top safe-area padding when `SafeAreaProvider` is present. |
993
+ | `divider` | `boolean` | `true` | Whether to render a divider under the bar. |
994
+
995
+ Inherited props:
996
+
997
+ None. ZORA composes Surface internally and exposes a product API.
998
+
999
+ </details>
1000
+
920
1001
  ### `Toolbar`
921
1002
 
922
1003
  Horizontal shell for actions and tools.
@@ -1336,6 +1417,84 @@ Picks these Surface `FieldProps`: `children`, `disabled`, `errorText`,
1336
1417
 
1337
1418
  </details>
1338
1419
 
1420
+ ### `ImagePreview`
1421
+
1422
+ Provider-neutral image preview surface that renders `ZoraImageAsset` values.
1423
+
1424
+ - `kind: 'url'` renders directly from `url`.
1425
+ - `kind: 'storage'` renders only when `publicUrl` is provided (ZORA never resolves storage URLs).
1426
+
1427
+ ```tsx
1428
+ <ImagePreview asset={{ kind: 'url', url: 'https://example.com/photo.jpg', alt: 'Photo' }} />
1429
+ ```
1430
+
1431
+ <details>
1432
+ <summary>Props</summary>
1433
+
1434
+ ZORA props:
1435
+
1436
+ | Prop | Type | Default | Notes |
1437
+ | ------------------ | ------------------------ | --------- | --------------------------------------- |
1438
+ | `asset` | `ZoraImageAsset \| null` | - | Rendered asset reference. |
1439
+ | `aspectRatio` | `number` | `1` | Aspect ratio for the preview container. |
1440
+ | `fit` | `ImageFit` | `'cover'` | Surface resize mode. |
1441
+ | `emptyTitle` | `React.ReactNode` | - | Empty state title. |
1442
+ | `emptyDescription` | `React.ReactNode` | - | Empty state description. |
1443
+ | `testID` | `string` | - | Test id. |
1444
+
1445
+ Inherited props:
1446
+
1447
+ No inherited props. `ImagePreviewProps` is declared directly by ZORA.
1448
+
1449
+ </details>
1450
+
1451
+ ### `ImageUploadField`
1452
+
1453
+ Field UX for selecting, previewing, uploading, replacing, and removing images. All picking/upload/removal behavior is injected via callbacks.
1454
+
1455
+ ```tsx
1456
+ const [asset, setAsset] = React.useState<ZoraImageAsset | null>(null);
1457
+
1458
+ <ImageUploadField
1459
+ label="Project image"
1460
+ accept="image/*"
1461
+ maxSizeBytes={5_000_000}
1462
+ value={asset}
1463
+ onChange={setAsset}
1464
+ onPick={pickImage}
1465
+ onUpload={uploadImage}
1466
+ />;
1467
+ ```
1468
+
1469
+ Upload progress is transient UI state reported through `onUpload(picked, { setProgress })`.
1470
+
1471
+ <details>
1472
+ <summary>Props</summary>
1473
+
1474
+ ZORA props:
1475
+
1476
+ | Prop | Type | Default | Notes |
1477
+ | -------------- | ---------------------------------------- | ------- | ------------------------------------------------ |
1478
+ | `value` | `ZoraImageAsset \| null` | - | Controlled asset value. |
1479
+ | `onChange` | `(next: ZoraImageAsset \| null) => void` | - | Controlled value updater. |
1480
+ | `label` | `React.ReactNode` | - | Field label (required). |
1481
+ | `description` | `React.ReactNode` | - | Description under the label. |
1482
+ | `helperText` | `React.ReactNode` | - | Helper text under the field. |
1483
+ | `errorText` | `React.ReactNode` | - | External error; overrides internal errors. |
1484
+ | `disabled` | `boolean` | `false` | Disables replace/remove (preview stays). |
1485
+ | `readOnly` | `boolean` | `false` | Disables replace/remove (preview stays). |
1486
+ | `accept` | `string` | - | Accepted media hint + best-effort validation. |
1487
+ | `maxSizeBytes` | `number` | - | Best-effort size validation. |
1488
+ | `onPick` | `() => Promise<ZoraPickedImage \| null>` | - | Picker callback (required). |
1489
+ | `onUpload` | Upload callback | - | Optional upload; if omitted, pick becomes value. |
1490
+ | `onRemove` | Remove callback | - | Optional removal hook before clearing. |
1491
+
1492
+ Inherited props:
1493
+
1494
+ No inherited props. `ImageUploadFieldProps` is declared directly by ZORA.
1495
+
1496
+ </details>
1497
+
1339
1498
  ### `Notice`
1340
1499
 
1341
1500
  Semantic notice surface with badge eyebrow, optional body, and actions.
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import type { AppBarProps } from './types';
3
+ export declare const AppBar: (props: AppBarProps) => React.ReactElement | null;
4
+ //# sourceMappingURL=AppBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppBar.d.ts","sourceRoot":"","sources":["../../../src/components/app-bar/AppBar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,KAAK,EAAoC,WAAW,EAAE,MAAM,SAAS,CAAC;AA2H7E,eAAO,MAAM,MAAM,mDAAkC,CAAC"}
@@ -0,0 +1,63 @@
1
+ import { AppBar as SurfaceAppBar } from '@ankhorage/surface';
2
+ import React from 'react';
3
+ import { Box, Inline, Stack } from '../../foundation';
4
+ import { useZoraTheme } from '../../theme/useZoraTheme';
5
+ import { withZoraThemeScope } from '../../theme/withZoraThemeScope';
6
+ import { Heading } from '../heading';
7
+ import { IconButton } from '../icon-button';
8
+ import { Text } from '../text';
9
+ const DEFAULT_CANCEL_ICON = { name: 'close-outline' };
10
+ const DEFAULT_OVERFLOW_ICON = { name: 'ellipsis-vertical' };
11
+ function resolveMode(mode) {
12
+ return mode ?? { type: 'default' };
13
+ }
14
+ function resolveSelectionLabel({ count, label }) {
15
+ if (count === undefined) {
16
+ return label;
17
+ }
18
+ return `${label} (${count})`;
19
+ }
20
+ function resolveOverflowLabel(overflow) {
21
+ return overflow.label ?? 'More options';
22
+ }
23
+ function resolveCancelLabel(mode) {
24
+ return mode.cancelLabel ?? 'Cancel selection';
25
+ }
26
+ function AppBarInner({ themeId: _themeId, mode: _mode, title, subtitle, leading, actions, overflow, appMode, children, safeAreaTop = true, divider = true, testID, }) {
27
+ const { theme } = useZoraTheme();
28
+ const resolvedMode = resolveMode(appMode);
29
+ const isSelectionMode = resolvedMode.type === 'selection';
30
+ const resolvedLeading = leading ??
31
+ (isSelectionMode ? (<IconButton icon={resolvedMode.cancelIcon ?? DEFAULT_CANCEL_ICON} label={resolveCancelLabel(resolvedMode)} emphasis="ghost" size="m" tone="neutral" onPress={resolvedMode.onCancel}/>) : undefined);
32
+ const overflowButton = overflow?.onPress ? (<IconButton disabled={overflow.disabled} icon={overflow.icon ?? DEFAULT_OVERFLOW_ICON} label={resolveOverflowLabel(overflow)} emphasis="ghost" size="m" tone="neutral" onPress={overflow.onPress}/>) : null;
33
+ const resolvedTrailing = actions || overflowButton ? (<Inline align="center" gap="s" wrap="nowrap">
34
+ {actions}
35
+ {overflowButton}
36
+ </Inline>) : undefined;
37
+ const resolvedCenter = (() => {
38
+ if (children !== undefined) {
39
+ return children;
40
+ }
41
+ if (isSelectionMode) {
42
+ return (<Text numberOfLines={1} tone="default" variant="label" weight="semiBold">
43
+ {resolveSelectionLabel(resolvedMode)}
44
+ </Text>);
45
+ }
46
+ if (title == null && subtitle == null) {
47
+ return null;
48
+ }
49
+ return (<Stack gap="xs">
50
+ {title != null ? (<Heading ellipsizeMode="tail" level={3} numberOfLines={1} size="h5">
51
+ {title}
52
+ </Heading>) : null}
53
+ {subtitle != null ? (<Text ellipsizeMode="tail" numberOfLines={1} tone="muted" variant="bodySmall">
54
+ {subtitle}
55
+ </Text>) : null}
56
+ </Stack>);
57
+ })();
58
+ return (<SurfaceAppBar bg={isSelectionMode ? theme.semantics.action.primary.softBg : undefined} divider={divider} leading={resolvedLeading} safeAreaTop={safeAreaTop} testID={testID} trailing={resolvedTrailing}>
59
+ {resolvedCenter ? <Box style={{ minWidth: 0 }}>{resolvedCenter}</Box> : null}
60
+ </SurfaceAppBar>);
61
+ }
62
+ export const AppBar = withZoraThemeScope(AppBarInner);
63
+ //# sourceMappingURL=AppBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppBar.js","sourceRoot":"","sources":["../../../src/components/app-bar/AppBar.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AppBar as SurfaceAppBar } from '@ankhorage/surface';\nimport React from 'react';\n\nimport { Box, Inline, Stack } from '../../foundation';\nimport { useZoraTheme } from '../../theme/useZoraTheme';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport { Heading } from '../heading';\nimport { IconButton } from '../icon-button';\nimport { Text } from '../text';\nimport type { AppBarMode, AppBarOverflowAction, AppBarProps } from './types';\n\nconst DEFAULT_CANCEL_ICON = { name: 'close-outline' };\nconst DEFAULT_OVERFLOW_ICON = { name: 'ellipsis-vertical' };\n\nfunction resolveMode(mode: AppBarMode | undefined): AppBarMode {\n return mode ?? { type: 'default' };\n}\n\nfunction resolveSelectionLabel({ count, label }: { count?: number; label: string }): string {\n if (count === undefined) {\n return label;\n }\n\n return `${label} (${count})`;\n}\n\nfunction resolveOverflowLabel(overflow: AppBarOverflowAction): string {\n return overflow.label ?? 'More options';\n}\n\nfunction resolveCancelLabel(mode: Extract<AppBarMode, { type: 'selection' }>): string {\n return mode.cancelLabel ?? 'Cancel selection';\n}\n\nfunction AppBarInner({\n themeId: _themeId,\n mode: _mode,\n title,\n subtitle,\n leading,\n actions,\n overflow,\n appMode,\n children,\n safeAreaTop = true,\n divider = true,\n testID,\n}: AppBarProps) {\n const { theme } = useZoraTheme();\n const resolvedMode = resolveMode(appMode);\n const isSelectionMode = resolvedMode.type === 'selection';\n\n const resolvedLeading =\n leading ??\n (isSelectionMode ? (\n <IconButton\n icon={resolvedMode.cancelIcon ?? DEFAULT_CANCEL_ICON}\n label={resolveCancelLabel(resolvedMode)}\n emphasis=\"ghost\"\n size=\"m\"\n tone=\"neutral\"\n onPress={resolvedMode.onCancel}\n />\n ) : undefined);\n\n const overflowButton = overflow?.onPress ? (\n <IconButton\n disabled={overflow.disabled}\n icon={overflow.icon ?? DEFAULT_OVERFLOW_ICON}\n label={resolveOverflowLabel(overflow)}\n emphasis=\"ghost\"\n size=\"m\"\n tone=\"neutral\"\n onPress={overflow.onPress}\n />\n ) : null;\n\n const resolvedTrailing =\n actions || overflowButton ? (\n <Inline align=\"center\" gap=\"s\" wrap=\"nowrap\">\n {actions}\n {overflowButton}\n </Inline>\n ) : undefined;\n\n const resolvedCenter = (() => {\n if (children !== undefined) {\n return children;\n }\n\n if (isSelectionMode) {\n return (\n <Text numberOfLines={1} tone=\"default\" variant=\"label\" weight=\"semiBold\">\n {resolveSelectionLabel(resolvedMode)}\n </Text>\n );\n }\n\n if (title == null && subtitle == null) {\n return null;\n }\n\n return (\n <Stack gap=\"xs\">\n {title != null ? (\n <Heading ellipsizeMode=\"tail\" level={3} numberOfLines={1} size=\"h5\">\n {title}\n </Heading>\n ) : null}\n {subtitle != null ? (\n <Text ellipsizeMode=\"tail\" numberOfLines={1} tone=\"muted\" variant=\"bodySmall\">\n {subtitle}\n </Text>\n ) : null}\n </Stack>\n );\n })();\n\n return (\n <SurfaceAppBar\n bg={isSelectionMode ? theme.semantics.action.primary.softBg : undefined}\n divider={divider}\n leading={resolvedLeading}\n safeAreaTop={safeAreaTop}\n testID={testID}\n trailing={resolvedTrailing}\n >\n {resolvedCenter ? <Box style={{ minWidth: 0 }}>{resolvedCenter}</Box> : null}\n </SurfaceAppBar>\n );\n}\n\nexport const AppBar = withZoraThemeScope(AppBarInner);\n"]}
@@ -0,0 +1,3 @@
1
+ export * from './AppBar';
2
+ export * from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/app-bar/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './AppBar';
2
+ export * from './types';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/app-bar/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC","sourcesContent":["export * from './AppBar';\nexport * from './types';\n"]}
@@ -0,0 +1,31 @@
1
+ import type { ButtonIconSpec } from '@ankhorage/surface';
2
+ import type React from 'react';
3
+ import type { ZoraBaseProps } from '../../theme/ZoraBaseProps';
4
+ export type AppBarMode = {
5
+ type: 'default';
6
+ } | {
7
+ type: 'selection';
8
+ label: string;
9
+ count?: number;
10
+ onCancel: () => void;
11
+ cancelLabel?: string;
12
+ cancelIcon?: ButtonIconSpec;
13
+ };
14
+ export interface AppBarOverflowAction {
15
+ onPress: () => void;
16
+ label?: string;
17
+ icon?: ButtonIconSpec;
18
+ disabled?: boolean;
19
+ }
20
+ export interface AppBarProps extends ZoraBaseProps {
21
+ title?: React.ReactNode;
22
+ subtitle?: React.ReactNode;
23
+ leading?: React.ReactNode;
24
+ actions?: React.ReactNode;
25
+ overflow?: AppBarOverflowAction;
26
+ appMode?: AppBarMode;
27
+ children?: React.ReactNode;
28
+ safeAreaTop?: boolean;
29
+ divider?: boolean;
30
+ }
31
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/app-bar/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,MAAM,UAAU,GAClB;IACE,IAAI,EAAE,SAAS,CAAC;CACjB,GACD;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B,CAAC;AAEN,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/app-bar/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ButtonIconSpec } from '@ankhorage/surface';\nimport type React from 'react';\n\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\n\nexport type AppBarMode =\n | {\n type: 'default';\n }\n | {\n type: 'selection';\n label: string;\n count?: number;\n onCancel: () => void;\n cancelLabel?: string;\n cancelIcon?: ButtonIconSpec;\n };\n\nexport interface AppBarOverflowAction {\n onPress: () => void;\n label?: string;\n icon?: ButtonIconSpec;\n disabled?: boolean;\n}\n\nexport interface AppBarProps extends ZoraBaseProps {\n title?: React.ReactNode;\n subtitle?: React.ReactNode;\n leading?: React.ReactNode;\n actions?: React.ReactNode;\n overflow?: AppBarOverflowAction;\n appMode?: AppBarMode;\n children?: React.ReactNode;\n safeAreaTop?: boolean;\n divider?: boolean;\n}\n"]}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import type { ImageProps } from './types';
3
+ export declare const Image: (props: ImageProps) => React.ReactElement | null;
4
+ //# sourceMappingURL=Image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../../src/components/image/Image.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAM1C,eAAO,MAAM,KAAK,kDAAiC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { Image as SurfaceImage } from '@ankhorage/surface';
2
+ import React from 'react';
3
+ import { withZoraThemeScope } from '../../theme/withZoraThemeScope';
4
+ function ImageInner({ themeId: _themeId, mode: _mode, ...props }) {
5
+ return <SurfaceImage {...props}/>;
6
+ }
7
+ export const Image = withZoraThemeScope(ImageInner);
8
+ //# sourceMappingURL=Image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Image.js","sourceRoot":"","sources":["../../../src/components/image/Image.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE,SAAS,UAAU,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,EAAc;IAC1E,OAAO,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,EAAG,CAAC;AACrC,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC","sourcesContent":["import { Image as SurfaceImage } from '@ankhorage/surface';\nimport React from 'react';\n\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { ImageProps } from './types';\n\nfunction ImageInner({ themeId: _themeId, mode: _mode, ...props }: ImageProps) {\n return <SurfaceImage {...props} />;\n}\n\nexport const Image = withZoraThemeScope(ImageInner);\n"]}
@@ -0,0 +1,3 @@
1
+ export { Image } from './Image';
2
+ export type { ImageFit, ImageProps, SurfaceImageSource } from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/image/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { Image } from './Image';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/image/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC","sourcesContent":["export { Image } from './Image';\nexport type { ImageFit, ImageProps, SurfaceImageSource } from './types';\n"]}
@@ -0,0 +1,6 @@
1
+ import type { ImageProps as SurfaceImageProps } from '@ankhorage/surface';
2
+ import type { ZoraBaseProps } from '../../theme/ZoraBaseProps';
3
+ export type { ImageFit, SurfaceImageSource } from '@ankhorage/surface';
4
+ export interface ImageProps extends ZoraBaseProps, Omit<SurfaceImageProps, 'mode' | 'themeId'> {
5
+ }
6
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/image/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,IAAI,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,YAAY,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAEvE,MAAM,WAAW,UAAW,SAAQ,aAAa,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;CAAG"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/image/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ImageProps as SurfaceImageProps } from '@ankhorage/surface';\n\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\n\nexport type { ImageFit, SurfaceImageSource } from '@ankhorage/surface';\n\nexport interface ImageProps extends ZoraBaseProps, Omit<SurfaceImageProps, 'mode' | 'themeId'> {}\n"]}
@@ -13,7 +13,7 @@ type InputTrailingProps = {
13
13
  trailingIcon?: never;
14
14
  trailingAction?: InputTrailingAction;
15
15
  };
16
- export interface InputBaseProps extends ZoraBaseProps, Omit<Surface.TextInputProps, 'leadingAccessory' | 'size' | 'trailingAccessory' | 'mode' | 'themeId'> {
16
+ interface InputBaseProps extends ZoraBaseProps, Omit<Surface.TextInputProps, 'leadingAccessory' | 'size' | 'trailingAccessory' | 'mode' | 'themeId'> {
17
17
  size?: ZoraControlSize;
18
18
  leadingIcon?: Surface.ButtonIconSpec;
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/input/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,KAAK,kBAAkB,GACnB;IACE,YAAY,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IACtC,cAAc,CAAC,EAAE,KAAK,CAAC;CACxB,GACD;IACE,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC,CAAC;AAEN,MAAM,WAAW,cACf,SACE,aAAa,EACb,IAAI,CACF,OAAO,CAAC,cAAc,EACtB,kBAAkB,GAAG,MAAM,GAAG,mBAAmB,GAAG,MAAM,GAAG,SAAS,CACvE;IACH,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;CACtC;AAED,MAAM,MAAM,UAAU,GAAG,cAAc,GAAG,kBAAkB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/input/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,KAAK,kBAAkB,GACnB;IACE,YAAY,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IACtC,cAAc,CAAC,EAAE,KAAK,CAAC;CACxB,GACD;IACE,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC,CAAC;AAEN,UAAU,cACR,SACE,aAAa,EACb,IAAI,CACF,OAAO,CAAC,cAAc,EACtB,kBAAkB,GAAG,MAAM,GAAG,mBAAmB,GAAG,MAAM,GAAG,SAAS,CACvE;IACH,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;CACtC;AAED,MAAM,MAAM,UAAU,GAAG,cAAc,GAAG,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/input/types.ts"],"names":[],"mappings":"","sourcesContent":["import type * as Surface from '@ankhorage/surface';\n\nimport type { ZoraControlSize } from '../../internal/recipes';\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\n\nexport interface InputTrailingAction {\n icon: Surface.ButtonIconSpec;\n label: string;\n onPress: () => void;\n}\n\ntype InputTrailingProps =\n | {\n trailingIcon?: Surface.ButtonIconSpec;\n trailingAction?: never;\n }\n | {\n trailingIcon?: never;\n trailingAction?: InputTrailingAction;\n };\n\nexport interface InputBaseProps\n extends\n ZoraBaseProps,\n Omit<\n Surface.TextInputProps,\n 'leadingAccessory' | 'size' | 'trailingAccessory' | 'mode' | 'themeId'\n > {\n size?: ZoraControlSize;\n leadingIcon?: Surface.ButtonIconSpec;\n}\n\nexport type InputProps = InputBaseProps & InputTrailingProps;\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/input/types.ts"],"names":[],"mappings":"","sourcesContent":["import type * as Surface from '@ankhorage/surface';\n\nimport type { ZoraControlSize } from '../../internal/recipes';\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\n\nexport interface InputTrailingAction {\n icon: Surface.ButtonIconSpec;\n label: string;\n onPress: () => void;\n}\n\ntype InputTrailingProps =\n | {\n trailingIcon?: Surface.ButtonIconSpec;\n trailingAction?: never;\n }\n | {\n trailingIcon?: never;\n trailingAction?: InputTrailingAction;\n };\n\ninterface InputBaseProps\n extends\n ZoraBaseProps,\n Omit<\n Surface.TextInputProps,\n 'leadingAccessory' | 'size' | 'trailingAccessory' | 'mode' | 'themeId'\n > {\n size?: ZoraControlSize;\n leadingIcon?: Surface.ButtonIconSpec;\n}\n\nexport type InputProps = InputBaseProps & InputTrailingProps;\n"]}
@@ -1,7 +1,7 @@
1
1
  import type { ButtonIconSpec } from '@ankhorage/surface';
2
2
  import type React from 'react';
3
- export type ToolbarPosition = 'top' | 'bottom' | 'inline';
4
3
  import type { ZoraBaseProps } from '../../theme/ZoraBaseProps';
4
+ export type ToolbarPosition = 'top' | 'bottom' | 'inline';
5
5
  export interface ToolbarProps extends ZoraBaseProps {
6
6
  children?: React.ReactNode;
7
7
  position?: ToolbarPosition;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/toolbar/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,WAAW,YAAa,SAAQ,aAAa;IACjD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/toolbar/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE1D,MAAM,WAAW,YAAa,SAAQ,aAAa;IACjD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/toolbar/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ButtonIconSpec } from '@ankhorage/surface';\nimport type React from 'react';\n\nexport type ToolbarPosition = 'top' | 'bottom' | 'inline';\n\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\n\nexport interface ToolbarProps extends ZoraBaseProps {\n children?: React.ReactNode;\n position?: ToolbarPosition;\n floating?: boolean;\n compact?: boolean;\n}\n\nexport interface ToolbarActionProps extends ZoraBaseProps {\n label: string;\n icon: ButtonIconSpec;\n active?: boolean;\n disabled?: boolean;\n onPress?: () => void;\n}\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/toolbar/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ButtonIconSpec } from '@ankhorage/surface';\nimport type React from 'react';\n\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\n\nexport type ToolbarPosition = 'top' | 'bottom' | 'inline';\n\nexport interface ToolbarProps extends ZoraBaseProps {\n children?: React.ReactNode;\n position?: ToolbarPosition;\n floating?: boolean;\n compact?: boolean;\n}\n\nexport interface ToolbarActionProps extends ZoraBaseProps {\n label: string;\n icon: ButtonIconSpec;\n active?: boolean;\n disabled?: boolean;\n onPress?: () => void;\n}\n"]}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ export type { AppBarMode, AppBarOverflowAction, AppBarProps } from './components/app-bar';
2
+ export { AppBar } from './components/app-bar';
1
3
  export type { AvatarProps, AvatarShape, AvatarSize } from './components/avatar';
2
4
  export { Avatar, resolveAvatarInitials } from './components/avatar';
3
5
  export type { AvatarGroupItem, AvatarGroupProps } from './components/avatar-group';
@@ -24,6 +26,8 @@ export type { IconProps } from './components/icon';
24
26
  export { Icon } from './components/icon';
25
27
  export type { IconButtonProps } from './components/icon-button';
26
28
  export { IconButton } from './components/icon-button';
29
+ export type { ImageFit, ImageProps, SurfaceImageSource } from './components/image';
30
+ export { Image } from './components/image';
27
31
  export type { InputProps, InputTrailingAction } from './components/input';
28
32
  export { Input } from './components/input';
29
33
  export type { MediaCardImageProps, MediaCardProps } from './components/media-card';
@@ -46,13 +50,13 @@ export type { SearchBarProps } from './components/search-bar';
46
50
  export { SearchBar } from './components/search-bar';
47
51
  export type { SelectOption, SelectProps } from './components/select';
48
52
  export { Select } from './components/select';
49
- export type { TabItem, TabsProps } from './components/tabs';
53
+ export type { TabItem, TabsProps, TabsVariant } from './components/tabs';
50
54
  export { Tabs } from './components/tabs';
51
55
  export type { TextAlign, TextProps, TextTone, TextVariant, TextWeight } from './components/text';
52
56
  export { Text } from './components/text';
53
57
  export type { TextareaProps } from './components/textarea';
54
58
  export { Textarea } from './components/textarea';
55
- export type { ToolbarActionProps, ToolbarProps } from './components/toolbar';
59
+ export type { ToolbarActionProps, ToolbarPosition, ToolbarProps } from './components/toolbar';
56
60
  export { Toolbar, ToolbarAction } from './components/toolbar';
57
61
  export type { BoxProps, CenterProps, ContainerProps, DividerProps, GridProps, InlineProps, ShowProps, SpacerProps, StackProps, SurfaceProps, SurfaceVariant, } from './foundation';
58
62
  export { Box, Center, Container, Divider, Grid, Inline, Show, Spacer, Stack, Surface, } from './foundation';
@@ -84,6 +88,10 @@ export type { EmptyStateAction, EmptyStateProps } from './patterns/empty-state';
84
88
  export { EmptyState } from './patterns/empty-state';
85
89
  export type { FilterBarProps } from './patterns/filter-bar';
86
90
  export { FilterBar } from './patterns/filter-bar';
91
+ export type { ImagePreviewProps, ZoraImageAsset, ZoraImageMetadata, } from './patterns/image-preview';
92
+ export { ImagePreview } from './patterns/image-preview';
93
+ export type { ImageUploadFieldProps, ImageUploadProgressContext, ZoraPickedImage, } from './patterns/image-upload-field';
94
+ export { ImageUploadField } from './patterns/image-upload-field';
87
95
  export type { InspectorFieldProps } from './patterns/inspector-field';
88
96
  export { InspectorField } from './patterns/inspector-field';
89
97
  export type { ListChildrenProps, ListItemsProps, ListProps, ListRowProps, ListRowVariant, ListSectionProps, } from './patterns/list';
@@ -92,7 +100,7 @@ export type { NoticeProps } from './patterns/notice';
92
100
  export { Notice } from './patterns/notice';
93
101
  export type { PanelProps } from './patterns/panel';
94
102
  export { Panel } from './patterns/panel';
95
- export type { ResponsivePanelProps } from './patterns/responsive-panel';
103
+ export type { ResponsivePanelDesktopMode, ResponsivePanelMobileMode, ResponsivePanelProps, ResponsivePanelSide, } from './patterns/responsive-panel';
96
104
  export { ResponsivePanel } from './patterns/responsive-panel';
97
105
  export type { SectionHeaderProps } from './patterns/section-header';
98
106
  export { SectionHeader } from './patterns/section-header';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ export { AppBar } from './components/app-bar';
1
2
  export { Avatar, resolveAvatarInitials } from './components/avatar';
2
3
  export { AvatarGroup } from './components/avatar-group';
3
4
  export { Badge } from './components/badge';
@@ -11,6 +12,7 @@ export { Form, FormActions, FormError, FormField, hasRequiredRule, useFormContro
11
12
  export { Heading } from './components/heading';
12
13
  export { Icon } from './components/icon';
13
14
  export { IconButton } from './components/icon-button';
15
+ export { Image } from './components/image';
14
16
  export { Input } from './components/input';
15
17
  export { MediaCard } from './components/media-card';
16
18
  export { MetricCard } from './components/metric-card';
@@ -41,6 +43,8 @@ export { ConfirmDialog } from './patterns/confirm-dialog';
41
43
  export { DisclosureSection } from './patterns/disclosure-section';
42
44
  export { EmptyState } from './patterns/empty-state';
43
45
  export { FilterBar } from './patterns/filter-bar';
46
+ export { ImagePreview } from './patterns/image-preview';
47
+ export { ImageUploadField } from './patterns/image-upload-field';
44
48
  export { InspectorField } from './patterns/inspector-field';
45
49
  export { List, ListRow, ListSection } from './patterns/list';
46
50
  export { Notice } from './patterns/notice';