@ankhorage/zora 2.4.6 → 2.4.8
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 +12 -0
- package/README.md +1540 -3430
- package/dist/components/breadcrumbs/Breadcrumbs.d.ts +4 -0
- package/dist/components/breadcrumbs/Breadcrumbs.d.ts.map +1 -0
- package/dist/components/breadcrumbs/Breadcrumbs.js +77 -0
- package/dist/components/breadcrumbs/Breadcrumbs.js.map +1 -0
- package/dist/components/breadcrumbs/index.d.ts +3 -0
- package/dist/components/breadcrumbs/index.d.ts.map +1 -0
- package/dist/components/breadcrumbs/index.js +2 -0
- package/dist/components/breadcrumbs/index.js.map +1 -0
- package/dist/components/breadcrumbs/meta.d.ts +9 -0
- package/dist/components/breadcrumbs/meta.d.ts.map +1 -0
- package/dist/components/breadcrumbs/meta.js +9 -0
- package/dist/components/breadcrumbs/meta.js.map +1 -0
- package/dist/components/breadcrumbs/types.d.ts +19 -0
- package/dist/components/breadcrumbs/types.d.ts.map +1 -0
- package/dist/components/breadcrumbs/types.js +2 -0
- package/dist/components/breadcrumbs/types.js.map +1 -0
- package/dist/components/pagination/Pagination.d.ts +4 -0
- package/dist/components/pagination/Pagination.d.ts.map +1 -0
- package/dist/components/pagination/Pagination.js +92 -0
- package/dist/components/pagination/Pagination.js.map +1 -0
- package/dist/components/pagination/index.d.ts +3 -0
- package/dist/components/pagination/index.d.ts.map +1 -0
- package/dist/components/pagination/index.js +2 -0
- package/dist/components/pagination/index.js.map +1 -0
- package/dist/components/pagination/meta.d.ts +9 -0
- package/dist/components/pagination/meta.d.ts.map +1 -0
- package/dist/components/pagination/meta.js +9 -0
- package/dist/components/pagination/meta.js.map +1 -0
- package/dist/components/pagination/types.d.ts +18 -0
- package/dist/components/pagination/types.d.ts.map +1 -0
- package/dist/components/pagination/types.js +2 -0
- package/dist/components/pagination/types.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/metadata/componentMeta.d.ts.map +1 -1
- package/dist/metadata/componentMeta.js +4 -0
- package/dist/metadata/componentMeta.js.map +1 -1
- package/package.json +3 -1
- package/src/components/breadcrumbs/Breadcrumbs.tsx +143 -0
- package/src/components/breadcrumbs/index.ts +2 -0
- package/src/components/breadcrumbs/meta.ts +10 -0
- package/src/components/breadcrumbs/types.ts +21 -0
- package/src/components/pagination/Pagination.tsx +189 -0
- package/src/components/pagination/index.ts +2 -0
- package/src/components/pagination/meta.ts +10 -0
- package/src/components/pagination/types.ts +19 -0
- package/src/index.ts +4 -0
- package/src/metadata/componentMeta.ts +4 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"componentMeta.js","sourceRoot":"","sources":["../../src/metadata/componentMeta.ts"],"names":[],"mappings":"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","sourcesContent":["import { actionSheetItemMeta, actionSheetMeta } from '../components/action-sheet/meta';\nimport { appBarMeta } from '../components/app-bar/meta';\nimport { avatarMeta } from '../components/avatar/meta';\nimport { avatarGroupMeta } from '../components/avatar-group/meta';\nimport { badgeMeta } from '../components/badge/meta';\nimport { buttonMeta } from '../components/button/meta';\nimport { buttonGroupMeta } from '../components/button-group/meta';\nimport { cardMeta } from '../components/card/meta';\nimport { checkboxGroupMeta, checkboxMeta } from '../components/checkbox/meta';\nimport { chipMeta } from '../components/chip/meta';\nimport { chipGroupMeta } from '../components/chip-group/meta';\nimport { dataTableMeta } from '../components/data-table/meta';\nimport { datePickerMeta } from '../components/date-picker/meta';\nimport { drawerMeta } from '../components/drawer/meta';\nimport { formActionsMeta, formErrorMeta, formFieldMeta, formMeta } from '../components/form/meta';\nimport { headingMeta } from '../components/heading/meta';\nimport { iconMeta } from '../components/icon/meta';\nimport { iconButtonMeta } from '../components/icon-button/meta';\nimport { imageMeta } from '../components/image/meta';\nimport { inputMeta } from '../components/input/meta';\nimport { mediaCardMeta } from '../components/media-card/meta';\nimport { dropdownMenuMeta, menuMeta } from '../components/menu/meta';\nimport { metricCardMeta } from '../components/metric-card/meta';\nimport { modalMeta } from '../components/modal/meta';\nimport { navigationItemMeta } from '../components/navigation-item/meta';\nimport { navigationListMeta } from '../components/navigation-list/meta';\nimport { progressMeta } from '../components/progress/meta';\nimport { radioGroupMeta, radioMeta } from '../components/radio/meta';\nimport { ratingMeta } from '../components/rating/meta';\nimport { searchBarMeta } from '../components/search-bar/meta';\nimport { selectMeta } from '../components/select/meta';\nimport {\n skeletonCardMeta,\n skeletonListMeta,\n skeletonMeta,\n skeletonTextMeta,\n} from '../components/skeleton/meta';\nimport { tabsMeta } from '../components/tabs/meta';\nimport { textMeta } from '../components/text/meta';\nimport { textareaMeta } from '../components/textarea/meta';\nimport { timePickerMeta } from '../components/time-picker/meta';\nimport { toastMeta, toastProviderMeta } from '../components/toast/meta';\nimport { toolbarActionMeta, toolbarMeta } from '../components/toolbar/meta';\nimport { foundationMetas } from '../foundation/meta';\nimport { appShellMeta } from '../layout/app-shell/meta';\nimport { screenMeta } from '../layout/screen/meta';\nimport { screenSectionMeta } from '../layout/screen-section/meta';\nimport { settingsLayoutMeta } from '../layout/settings-layout/meta';\nimport { sidebarLayoutMeta } from '../layout/sidebar-layout/meta';\nimport { topbarLayoutMeta } from '../layout/topbar-layout/meta';\nimport {\n forgotPasswordFormMeta,\n otpFormMeta,\n signInFormMeta,\n signUpFormMeta,\n} from '../patterns/auth/meta';\nimport { chatListItemMeta } from '../patterns/chat-list-item/meta';\nimport { collectionEditorMeta } from '../patterns/collection-editor/meta';\nimport { confirmDialogMeta } from '../patterns/confirm-dialog/meta';\nimport { disclosureSectionMeta } from '../patterns/disclosure-section/meta';\nimport { emptyStateMeta } from '../patterns/empty-state/meta';\nimport { filterBarMeta } from '../patterns/filter-bar/meta';\nimport { heroMeta } from '../patterns/hero/meta';\nimport { imagePreviewMeta } from '../patterns/image-preview/meta';\nimport { imageUploadFieldMeta } from '../patterns/image-upload-field/meta';\nimport { inspectorFieldMeta } from '../patterns/inspector-field/meta';\nimport { listMeta, listRowMeta, listSectionMeta } from '../patterns/list/meta';\nimport { messageBubbleMeta } from '../patterns/message-bubble/meta';\nimport { noticeMeta } from '../patterns/notice/meta';\nimport { panelMeta } from '../patterns/panel/meta';\nimport { postCardMeta } from '../patterns/post-card/meta';\nimport { responsivePanelMeta } from '../patterns/responsive-panel/meta';\nimport { sectionHeaderMeta } from '../patterns/section-header/meta';\nimport { selectableItemMeta, selectionProviderMeta } from '../patterns/selection/meta';\nimport { settingsRowMeta } from '../patterns/settings-row/meta';\nimport { switchFieldMeta } from '../patterns/switch-field/meta';\nimport { themeComposerMeta } from '../patterns/theme-composer/meta';\nimport { paletteItemMeta, tileGridMeta } from '../patterns/tile-grid/meta';\nimport { timelineMeta } from '../patterns/timeline/meta';\nimport { treeItemMeta, treeViewMeta } from '../patterns/tree-view/meta';\nimport { zoraDrawerContentMeta } from '../patterns/zora-drawer-content/meta';\nimport { zoraTabBarMeta } from '../patterns/zora-tab-bar/meta';\nimport type { ZoraComponentMetaRegistry } from './types';\n\nexport const ZORA_COMPONENT_META: ZoraComponentMetaRegistry = {\n ...foundationMetas,\n ActionSheet: actionSheetMeta,\n ActionSheetItem: actionSheetItemMeta,\n AppBar: appBarMeta,\n Avatar: avatarMeta,\n AvatarGroup: avatarGroupMeta,\n Badge: badgeMeta,\n Button: buttonMeta,\n ButtonGroup: buttonGroupMeta,\n Card: cardMeta,\n Checkbox: checkboxMeta,\n CheckboxGroup: checkboxGroupMeta,\n Chip: chipMeta,\n ChipGroup: chipGroupMeta,\n DataTable: dataTableMeta,\n DatePicker: datePickerMeta,\n Drawer: drawerMeta,\n DropdownMenu: dropdownMenuMeta,\n Form: formMeta,\n FormActions: formActionsMeta,\n FormError: formErrorMeta,\n FormField: formFieldMeta,\n Heading: headingMeta,\n Icon: iconMeta,\n IconButton: iconButtonMeta,\n Image: imageMeta,\n Input: inputMeta,\n MediaCard: mediaCardMeta,\n Menu: menuMeta,\n MetricCard: metricCardMeta,\n Modal: modalMeta,\n NavigationItem: navigationItemMeta,\n NavigationList: navigationListMeta,\n Progress: progressMeta,\n Radio: radioMeta,\n RadioGroup: radioGroupMeta,\n Rating: ratingMeta,\n SearchBar: searchBarMeta,\n Select: selectMeta,\n Skeleton: skeletonMeta,\n SkeletonCard: skeletonCardMeta,\n SkeletonList: skeletonListMeta,\n SkeletonText: skeletonTextMeta,\n Tabs: tabsMeta,\n Text: textMeta,\n Textarea: textareaMeta,\n TimePicker: timePickerMeta,\n Toast: toastMeta,\n ToastProvider: toastProviderMeta,\n Toolbar: toolbarMeta,\n ToolbarAction: toolbarActionMeta,\n AppShell: appShellMeta,\n Screen: screenMeta,\n ScreenSection: screenSectionMeta,\n SettingsLayout: settingsLayoutMeta,\n SidebarLayout: sidebarLayoutMeta,\n TopbarLayout: topbarLayoutMeta,\n ForgotPasswordForm: forgotPasswordFormMeta,\n OtpForm: otpFormMeta,\n SignInForm: signInFormMeta,\n SignUpForm: signUpFormMeta,\n ChatListItem: chatListItemMeta,\n CollectionEditor: collectionEditorMeta,\n ConfirmDialog: confirmDialogMeta,\n DisclosureSection: disclosureSectionMeta,\n EmptyState: emptyStateMeta,\n FilterBar: filterBarMeta,\n Hero: heroMeta,\n ImagePreview: imagePreviewMeta,\n ImageUploadField: imageUploadFieldMeta,\n InspectorField: inspectorFieldMeta,\n List: listMeta,\n ListRow: listRowMeta,\n ListSection: listSectionMeta,\n MessageBubble: messageBubbleMeta,\n Notice: noticeMeta,\n Panel: panelMeta,\n PostCard: postCardMeta,\n ResponsivePanel: responsivePanelMeta,\n SectionHeader: sectionHeaderMeta,\n SelectableItem: selectableItemMeta,\n SelectionProvider: selectionProviderMeta,\n SettingsRow: settingsRowMeta,\n SwitchField: switchFieldMeta,\n ThemeComposer: themeComposerMeta,\n PaletteItem: paletteItemMeta,\n TileGrid: tileGridMeta,\n Timeline: timelineMeta,\n TreeItem: treeItemMeta,\n TreeView: treeViewMeta,\n ZoraDrawerContent: zoraDrawerContentMeta,\n ZoraTabBar: zoraTabBarMeta,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"componentMeta.js","sourceRoot":"","sources":["../../src/metadata/componentMeta.ts"],"names":[],"mappings":"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","sourcesContent":["import { actionSheetItemMeta, actionSheetMeta } from '../components/action-sheet/meta';\nimport { appBarMeta } from '../components/app-bar/meta';\nimport { avatarMeta } from '../components/avatar/meta';\nimport { avatarGroupMeta } from '../components/avatar-group/meta';\nimport { badgeMeta } from '../components/badge/meta';\nimport { breadcrumbsMeta } from '../components/breadcrumbs/meta';\nimport { buttonMeta } from '../components/button/meta';\nimport { buttonGroupMeta } from '../components/button-group/meta';\nimport { cardMeta } from '../components/card/meta';\nimport { checkboxGroupMeta, checkboxMeta } from '../components/checkbox/meta';\nimport { chipMeta } from '../components/chip/meta';\nimport { chipGroupMeta } from '../components/chip-group/meta';\nimport { dataTableMeta } from '../components/data-table/meta';\nimport { datePickerMeta } from '../components/date-picker/meta';\nimport { drawerMeta } from '../components/drawer/meta';\nimport { formActionsMeta, formErrorMeta, formFieldMeta, formMeta } from '../components/form/meta';\nimport { headingMeta } from '../components/heading/meta';\nimport { iconMeta } from '../components/icon/meta';\nimport { iconButtonMeta } from '../components/icon-button/meta';\nimport { imageMeta } from '../components/image/meta';\nimport { inputMeta } from '../components/input/meta';\nimport { mediaCardMeta } from '../components/media-card/meta';\nimport { dropdownMenuMeta, menuMeta } from '../components/menu/meta';\nimport { metricCardMeta } from '../components/metric-card/meta';\nimport { modalMeta } from '../components/modal/meta';\nimport { navigationItemMeta } from '../components/navigation-item/meta';\nimport { navigationListMeta } from '../components/navigation-list/meta';\nimport { paginationMeta } from '../components/pagination/meta';\nimport { progressMeta } from '../components/progress/meta';\nimport { radioGroupMeta, radioMeta } from '../components/radio/meta';\nimport { ratingMeta } from '../components/rating/meta';\nimport { searchBarMeta } from '../components/search-bar/meta';\nimport { selectMeta } from '../components/select/meta';\nimport {\n skeletonCardMeta,\n skeletonListMeta,\n skeletonMeta,\n skeletonTextMeta,\n} from '../components/skeleton/meta';\nimport { tabsMeta } from '../components/tabs/meta';\nimport { textMeta } from '../components/text/meta';\nimport { textareaMeta } from '../components/textarea/meta';\nimport { timePickerMeta } from '../components/time-picker/meta';\nimport { toastMeta, toastProviderMeta } from '../components/toast/meta';\nimport { toolbarActionMeta, toolbarMeta } from '../components/toolbar/meta';\nimport { foundationMetas } from '../foundation/meta';\nimport { appShellMeta } from '../layout/app-shell/meta';\nimport { screenMeta } from '../layout/screen/meta';\nimport { screenSectionMeta } from '../layout/screen-section/meta';\nimport { settingsLayoutMeta } from '../layout/settings-layout/meta';\nimport { sidebarLayoutMeta } from '../layout/sidebar-layout/meta';\nimport { topbarLayoutMeta } from '../layout/topbar-layout/meta';\nimport {\n forgotPasswordFormMeta,\n otpFormMeta,\n signInFormMeta,\n signUpFormMeta,\n} from '../patterns/auth/meta';\nimport { chatListItemMeta } from '../patterns/chat-list-item/meta';\nimport { collectionEditorMeta } from '../patterns/collection-editor/meta';\nimport { confirmDialogMeta } from '../patterns/confirm-dialog/meta';\nimport { disclosureSectionMeta } from '../patterns/disclosure-section/meta';\nimport { emptyStateMeta } from '../patterns/empty-state/meta';\nimport { filterBarMeta } from '../patterns/filter-bar/meta';\nimport { heroMeta } from '../patterns/hero/meta';\nimport { imagePreviewMeta } from '../patterns/image-preview/meta';\nimport { imageUploadFieldMeta } from '../patterns/image-upload-field/meta';\nimport { inspectorFieldMeta } from '../patterns/inspector-field/meta';\nimport { listMeta, listRowMeta, listSectionMeta } from '../patterns/list/meta';\nimport { messageBubbleMeta } from '../patterns/message-bubble/meta';\nimport { noticeMeta } from '../patterns/notice/meta';\nimport { panelMeta } from '../patterns/panel/meta';\nimport { postCardMeta } from '../patterns/post-card/meta';\nimport { responsivePanelMeta } from '../patterns/responsive-panel/meta';\nimport { sectionHeaderMeta } from '../patterns/section-header/meta';\nimport { selectableItemMeta, selectionProviderMeta } from '../patterns/selection/meta';\nimport { settingsRowMeta } from '../patterns/settings-row/meta';\nimport { switchFieldMeta } from '../patterns/switch-field/meta';\nimport { themeComposerMeta } from '../patterns/theme-composer/meta';\nimport { paletteItemMeta, tileGridMeta } from '../patterns/tile-grid/meta';\nimport { timelineMeta } from '../patterns/timeline/meta';\nimport { treeItemMeta, treeViewMeta } from '../patterns/tree-view/meta';\nimport { zoraDrawerContentMeta } from '../patterns/zora-drawer-content/meta';\nimport { zoraTabBarMeta } from '../patterns/zora-tab-bar/meta';\nimport type { ZoraComponentMetaRegistry } from './types';\n\nexport const ZORA_COMPONENT_META: ZoraComponentMetaRegistry = {\n ...foundationMetas,\n ActionSheet: actionSheetMeta,\n ActionSheetItem: actionSheetItemMeta,\n AppBar: appBarMeta,\n Avatar: avatarMeta,\n AvatarGroup: avatarGroupMeta,\n Badge: badgeMeta,\n Breadcrumbs: breadcrumbsMeta,\n Button: buttonMeta,\n ButtonGroup: buttonGroupMeta,\n Card: cardMeta,\n Checkbox: checkboxMeta,\n CheckboxGroup: checkboxGroupMeta,\n Chip: chipMeta,\n ChipGroup: chipGroupMeta,\n DataTable: dataTableMeta,\n DatePicker: datePickerMeta,\n Drawer: drawerMeta,\n DropdownMenu: dropdownMenuMeta,\n Form: formMeta,\n FormActions: formActionsMeta,\n FormError: formErrorMeta,\n FormField: formFieldMeta,\n Heading: headingMeta,\n Icon: iconMeta,\n IconButton: iconButtonMeta,\n Image: imageMeta,\n Input: inputMeta,\n MediaCard: mediaCardMeta,\n Menu: menuMeta,\n MetricCard: metricCardMeta,\n Modal: modalMeta,\n NavigationItem: navigationItemMeta,\n NavigationList: navigationListMeta,\n Pagination: paginationMeta,\n Progress: progressMeta,\n Radio: radioMeta,\n RadioGroup: radioGroupMeta,\n Rating: ratingMeta,\n SearchBar: searchBarMeta,\n Select: selectMeta,\n Skeleton: skeletonMeta,\n SkeletonCard: skeletonCardMeta,\n SkeletonList: skeletonListMeta,\n SkeletonText: skeletonTextMeta,\n Tabs: tabsMeta,\n Text: textMeta,\n Textarea: textareaMeta,\n TimePicker: timePickerMeta,\n Toast: toastMeta,\n ToastProvider: toastProviderMeta,\n Toolbar: toolbarMeta,\n ToolbarAction: toolbarActionMeta,\n AppShell: appShellMeta,\n Screen: screenMeta,\n ScreenSection: screenSectionMeta,\n SettingsLayout: settingsLayoutMeta,\n SidebarLayout: sidebarLayoutMeta,\n TopbarLayout: topbarLayoutMeta,\n ForgotPasswordForm: forgotPasswordFormMeta,\n OtpForm: otpFormMeta,\n SignInForm: signInFormMeta,\n SignUpForm: signUpFormMeta,\n ChatListItem: chatListItemMeta,\n CollectionEditor: collectionEditorMeta,\n ConfirmDialog: confirmDialogMeta,\n DisclosureSection: disclosureSectionMeta,\n EmptyState: emptyStateMeta,\n FilterBar: filterBarMeta,\n Hero: heroMeta,\n ImagePreview: imagePreviewMeta,\n ImageUploadField: imageUploadFieldMeta,\n InspectorField: inspectorFieldMeta,\n List: listMeta,\n ListRow: listRowMeta,\n ListSection: listSectionMeta,\n MessageBubble: messageBubbleMeta,\n Notice: noticeMeta,\n Panel: panelMeta,\n PostCard: postCardMeta,\n ResponsivePanel: responsivePanelMeta,\n SectionHeader: sectionHeaderMeta,\n SelectableItem: selectableItemMeta,\n SelectionProvider: selectionProviderMeta,\n SettingsRow: settingsRowMeta,\n SwitchField: switchFieldMeta,\n ThemeComposer: themeComposerMeta,\n PaletteItem: paletteItemMeta,\n TileGrid: tileGridMeta,\n Timeline: timelineMeta,\n TreeItem: treeItemMeta,\n TreeView: treeViewMeta,\n ZoraDrawerContent: zoraDrawerContentMeta,\n ZoraTabBar: zoraTabBarMeta,\n};\n"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ankhorage/zora",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "2.4.
|
|
4
|
+
"version": "2.4.8",
|
|
5
5
|
"description": "Opinionated React Native and React Native Web UI kit built on @ankhorage/surface.",
|
|
6
6
|
"homepage": "https://github.com/ankhorage/zora#readme",
|
|
7
7
|
"bugs": {
|
|
@@ -72,6 +72,7 @@
|
|
|
72
72
|
"build": "rm -rf dist tsconfig.tsbuildinfo && bun x tsc -p tsconfig.json",
|
|
73
73
|
"changeset": "changeset",
|
|
74
74
|
"changeset:status": "changeset status --since=origin/main",
|
|
75
|
+
"docs": "paradox",
|
|
75
76
|
"knip": "ankhorage-knip",
|
|
76
77
|
"lint": "ankhorage-eslint . --max-warnings=0",
|
|
77
78
|
"lint:fix": "ankhorage-eslint . --fix --max-warnings=0",
|
|
@@ -84,6 +85,7 @@
|
|
|
84
85
|
},
|
|
85
86
|
"devDependencies": {
|
|
86
87
|
"@ankhorage/devtools": "^1.0.6",
|
|
88
|
+
"@ankhorage/paradox": "^0.1.7",
|
|
87
89
|
"@changesets/cli": "^2.31.0",
|
|
88
90
|
"@expo/vector-icons": "^15.1.1",
|
|
89
91
|
"@react-native-picker/picker": "^2.11.4",
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { Inline } from '../../foundation';
|
|
4
|
+
import { resolveIconSize } from '../../internal/recipes';
|
|
5
|
+
import { useZoraTheme } from '../../theme/useZoraTheme';
|
|
6
|
+
import { withZoraThemeScope } from '../../theme/withZoraThemeScope';
|
|
7
|
+
import { Button } from '../button';
|
|
8
|
+
import { Icon } from '../icon';
|
|
9
|
+
import { Text } from '../text';
|
|
10
|
+
import type { BreadcrumbItem, BreadcrumbsProps } from './types';
|
|
11
|
+
|
|
12
|
+
type BreadcrumbRenderItem =
|
|
13
|
+
| {
|
|
14
|
+
item: BreadcrumbItem;
|
|
15
|
+
type: 'item';
|
|
16
|
+
}
|
|
17
|
+
| {
|
|
18
|
+
type: 'ellipsis';
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
function normalizeMaxItems(value: number | undefined): number | undefined {
|
|
22
|
+
if (value === undefined || !Number.isFinite(value)) {
|
|
23
|
+
return undefined;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
return Math.max(0, Math.trunc(value));
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function createRenderItems(
|
|
30
|
+
items: readonly BreadcrumbItem[],
|
|
31
|
+
maxItems: number | undefined,
|
|
32
|
+
): readonly BreadcrumbRenderItem[] {
|
|
33
|
+
if (maxItems === undefined || maxItems === 0 || items.length <= maxItems || maxItems < 3) {
|
|
34
|
+
return items.map((item) => ({ item, type: 'item' }));
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
const [firstItem] = items;
|
|
38
|
+
if (firstItem === undefined) {
|
|
39
|
+
return [];
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
const trailingCount = maxItems - 2;
|
|
43
|
+
const trailingItems = items.slice(items.length - trailingCount);
|
|
44
|
+
|
|
45
|
+
return [
|
|
46
|
+
{ item: firstItem, type: 'item' },
|
|
47
|
+
{ type: 'ellipsis' },
|
|
48
|
+
...trailingItems.map((item) => ({ item, type: 'item' }) satisfies BreadcrumbRenderItem),
|
|
49
|
+
];
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
function renderSeparator(separator: React.ReactNode) {
|
|
53
|
+
return (
|
|
54
|
+
<Text emphasis="muted" variant="bodySmall">
|
|
55
|
+
{separator}
|
|
56
|
+
</Text>
|
|
57
|
+
);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
function BreadcrumbLabel({ item, compact }: { item: BreadcrumbItem; compact: boolean }) {
|
|
61
|
+
const { theme } = useZoraTheme();
|
|
62
|
+
|
|
63
|
+
return (
|
|
64
|
+
<Inline align="center" gap="xs" wrap="nowrap">
|
|
65
|
+
{item.icon ? (
|
|
66
|
+
<Icon
|
|
67
|
+
color={theme.semantics.content.muted}
|
|
68
|
+
name={item.icon.name}
|
|
69
|
+
provider={item.icon.provider}
|
|
70
|
+
size={resolveIconSize(compact ? 's' : 'm')}
|
|
71
|
+
/>
|
|
72
|
+
) : null}
|
|
73
|
+
<Text emphasis="muted" variant={compact ? 'caption' : 'bodySmall'}>
|
|
74
|
+
{item.label}
|
|
75
|
+
</Text>
|
|
76
|
+
</Inline>
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
function BreadcrumbsInner({
|
|
81
|
+
themeId: _themeId,
|
|
82
|
+
mode: _mode,
|
|
83
|
+
items,
|
|
84
|
+
separator = '/',
|
|
85
|
+
maxItems,
|
|
86
|
+
compact = false,
|
|
87
|
+
disabled = false,
|
|
88
|
+
testID,
|
|
89
|
+
}: BreadcrumbsProps) {
|
|
90
|
+
const normalizedMaxItems = normalizeMaxItems(maxItems);
|
|
91
|
+
const renderItems = createRenderItems(items, normalizedMaxItems);
|
|
92
|
+
const currentItemId = items.at(-1)?.id;
|
|
93
|
+
|
|
94
|
+
if (items.length === 0) {
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
return (
|
|
99
|
+
<Inline align="center" gap={compact ? 'xs' : 's'} testID={testID} wrap="wrap">
|
|
100
|
+
{renderItems.map((renderItem, index) => {
|
|
101
|
+
const isLastRenderedItem = index === renderItems.length - 1;
|
|
102
|
+
const showSeparator = !isLastRenderedItem;
|
|
103
|
+
|
|
104
|
+
if (renderItem.type === 'ellipsis') {
|
|
105
|
+
return (
|
|
106
|
+
<React.Fragment key="ellipsis">
|
|
107
|
+
<Text emphasis="muted" variant={compact ? 'caption' : 'bodySmall'}>
|
|
108
|
+
…
|
|
109
|
+
</Text>
|
|
110
|
+
{showSeparator ? renderSeparator(separator) : null}
|
|
111
|
+
</React.Fragment>
|
|
112
|
+
);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
const { item } = renderItem;
|
|
116
|
+
const current = item.id === currentItemId;
|
|
117
|
+
const interactive = !current && !disabled && !item.disabled && Boolean(item.onPress);
|
|
118
|
+
|
|
119
|
+
return (
|
|
120
|
+
<React.Fragment key={item.id}>
|
|
121
|
+
{interactive ? (
|
|
122
|
+
<Button
|
|
123
|
+
color="neutral"
|
|
124
|
+
leadingIcon={item.icon}
|
|
125
|
+
onPress={item.onPress}
|
|
126
|
+
size={compact ? 's' : 'm'}
|
|
127
|
+
testID={testID ? `${testID}-item-${item.id}` : undefined}
|
|
128
|
+
variant="ghost"
|
|
129
|
+
>
|
|
130
|
+
{item.label}
|
|
131
|
+
</Button>
|
|
132
|
+
) : (
|
|
133
|
+
<BreadcrumbLabel item={item} compact={compact} />
|
|
134
|
+
)}
|
|
135
|
+
{showSeparator ? renderSeparator(separator) : null}
|
|
136
|
+
</React.Fragment>
|
|
137
|
+
);
|
|
138
|
+
})}
|
|
139
|
+
</Inline>
|
|
140
|
+
);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
export const Breadcrumbs = withZoraThemeScope(BreadcrumbsInner);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ZoraComponentMeta } from '../../metadata';
|
|
2
|
+
|
|
3
|
+
export const breadcrumbsMeta = {
|
|
4
|
+
name: 'Breadcrumbs',
|
|
5
|
+
category: 'component',
|
|
6
|
+
directManifestNode: false,
|
|
7
|
+
allowedChildren: [],
|
|
8
|
+
note: 'Code-facing route hierarchy component; not represented as a manifest node in v1.',
|
|
9
|
+
props: {},
|
|
10
|
+
} as const satisfies ZoraComponentMeta;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ButtonIconSpec } from '@ankhorage/surface';
|
|
2
|
+
import type React from 'react';
|
|
3
|
+
|
|
4
|
+
import type { ZoraBaseProps } from '../../theme/ZoraBaseProps';
|
|
5
|
+
|
|
6
|
+
export interface BreadcrumbItem {
|
|
7
|
+
id: string;
|
|
8
|
+
label: React.ReactNode;
|
|
9
|
+
icon?: ButtonIconSpec;
|
|
10
|
+
onPress?: () => void;
|
|
11
|
+
disabled?: boolean;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface BreadcrumbsProps extends ZoraBaseProps {
|
|
15
|
+
items: readonly BreadcrumbItem[];
|
|
16
|
+
separator?: React.ReactNode;
|
|
17
|
+
maxItems?: number;
|
|
18
|
+
compact?: boolean;
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
testID?: string;
|
|
21
|
+
}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { Stack } from '../../foundation';
|
|
4
|
+
import { withZoraThemeScope } from '../../theme/withZoraThemeScope';
|
|
5
|
+
import { Button } from '../button';
|
|
6
|
+
import { Text } from '../text';
|
|
7
|
+
import type { PaginationProps } from './types';
|
|
8
|
+
|
|
9
|
+
type PaginationItem = number | 'ellipsis';
|
|
10
|
+
|
|
11
|
+
function clampInteger(value: number, min: number, max: number): number {
|
|
12
|
+
if (!Number.isFinite(value)) {
|
|
13
|
+
return min;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
return Math.min(Math.max(Math.trunc(value), min), max);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function createRange(start: number, end: number): number[] {
|
|
20
|
+
if (end < start) {
|
|
21
|
+
return [];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
return Array.from({ length: end - start + 1 }, (_, index) => start + index);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
function normalizeCount(value: number | undefined, fallback: number): number {
|
|
28
|
+
if (value === undefined || !Number.isFinite(value)) {
|
|
29
|
+
return fallback;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return Math.max(0, Math.trunc(value));
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
function createPaginationItems({
|
|
36
|
+
page,
|
|
37
|
+
pageCount,
|
|
38
|
+
siblingCount,
|
|
39
|
+
boundaryCount,
|
|
40
|
+
compact,
|
|
41
|
+
}: {
|
|
42
|
+
page: number;
|
|
43
|
+
pageCount: number;
|
|
44
|
+
siblingCount: number;
|
|
45
|
+
boundaryCount: number;
|
|
46
|
+
compact: boolean;
|
|
47
|
+
}): readonly PaginationItem[] {
|
|
48
|
+
if (pageCount <= 0) {
|
|
49
|
+
return [];
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
if (compact) {
|
|
53
|
+
return [page];
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
const boundaries = createRange(1, Math.min(boundaryCount, pageCount));
|
|
57
|
+
const trailingBoundaries = createRange(Math.max(pageCount - boundaryCount + 1, 1), pageCount);
|
|
58
|
+
const siblings = createRange(
|
|
59
|
+
Math.max(page - siblingCount, 1),
|
|
60
|
+
Math.min(page + siblingCount, pageCount),
|
|
61
|
+
);
|
|
62
|
+
const pages = [...new Set([...boundaries, ...siblings, ...trailingBoundaries])].sort(
|
|
63
|
+
(left, right) => left - right,
|
|
64
|
+
);
|
|
65
|
+
const items: PaginationItem[] = [];
|
|
66
|
+
|
|
67
|
+
pages.forEach((nextPage, index) => {
|
|
68
|
+
const previousPage = pages[index - 1];
|
|
69
|
+
if (previousPage !== undefined && nextPage - previousPage > 1) {
|
|
70
|
+
items.push('ellipsis');
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
items.push(nextPage);
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
return items;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
function PaginationInner({
|
|
80
|
+
themeId: _themeId,
|
|
81
|
+
mode: _mode,
|
|
82
|
+
page,
|
|
83
|
+
pageCount,
|
|
84
|
+
onPageChange,
|
|
85
|
+
disabled = false,
|
|
86
|
+
siblingCount = 1,
|
|
87
|
+
boundaryCount = 1,
|
|
88
|
+
showFirstLast = false,
|
|
89
|
+
previousLabel = 'Previous',
|
|
90
|
+
nextLabel = 'Next',
|
|
91
|
+
firstLabel = 'First',
|
|
92
|
+
lastLabel = 'Last',
|
|
93
|
+
compact = false,
|
|
94
|
+
testID,
|
|
95
|
+
}: PaginationProps) {
|
|
96
|
+
const normalizedPageCount = Math.max(0, Math.trunc(Number.isFinite(pageCount) ? pageCount : 0));
|
|
97
|
+
const currentPage = clampInteger(page, 1, Math.max(normalizedPageCount, 1));
|
|
98
|
+
const safeSiblingCount = normalizeCount(siblingCount, 1);
|
|
99
|
+
const safeBoundaryCount = normalizeCount(boundaryCount, 1);
|
|
100
|
+
const items = createPaginationItems({
|
|
101
|
+
boundaryCount: safeBoundaryCount,
|
|
102
|
+
compact,
|
|
103
|
+
page: currentPage,
|
|
104
|
+
pageCount: normalizedPageCount,
|
|
105
|
+
siblingCount: safeSiblingCount,
|
|
106
|
+
});
|
|
107
|
+
const canGoPrevious = currentPage > 1;
|
|
108
|
+
const canGoNext = currentPage < normalizedPageCount;
|
|
109
|
+
const navigationDisabled = disabled || normalizedPageCount <= 1;
|
|
110
|
+
|
|
111
|
+
const changePage = (nextPage: number) => {
|
|
112
|
+
const clampedPage = clampInteger(nextPage, 1, Math.max(normalizedPageCount, 1));
|
|
113
|
+
if (disabled || clampedPage === currentPage) {
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
onPageChange?.(clampedPage);
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
return (
|
|
121
|
+
<Stack align="center" direction="row" gap="xs" testID={testID}>
|
|
122
|
+
{showFirstLast ? (
|
|
123
|
+
<Button
|
|
124
|
+
disabled={navigationDisabled || currentPage === 1}
|
|
125
|
+
onPress={() => changePage(1)}
|
|
126
|
+
size="s"
|
|
127
|
+
testID={testID ? `${testID}-first` : undefined}
|
|
128
|
+
variant="ghost"
|
|
129
|
+
>
|
|
130
|
+
{firstLabel}
|
|
131
|
+
</Button>
|
|
132
|
+
) : null}
|
|
133
|
+
|
|
134
|
+
<Button
|
|
135
|
+
disabled={navigationDisabled || !canGoPrevious}
|
|
136
|
+
onPress={() => changePage(currentPage - 1)}
|
|
137
|
+
size="s"
|
|
138
|
+
testID={testID ? `${testID}-previous` : undefined}
|
|
139
|
+
variant="ghost"
|
|
140
|
+
>
|
|
141
|
+
{previousLabel}
|
|
142
|
+
</Button>
|
|
143
|
+
|
|
144
|
+
{items.map((item, index) =>
|
|
145
|
+
item === 'ellipsis' ? (
|
|
146
|
+
<Text key={`ellipsis-${index}`} emphasis="muted" variant="bodySmall">
|
|
147
|
+
…
|
|
148
|
+
</Text>
|
|
149
|
+
) : (
|
|
150
|
+
<Button
|
|
151
|
+
color={item === currentPage ? 'primary' : 'neutral'}
|
|
152
|
+
disabled={disabled}
|
|
153
|
+
key={item}
|
|
154
|
+
onPress={() => changePage(item)}
|
|
155
|
+
size="s"
|
|
156
|
+
testID={testID ? `${testID}-page-${item}` : undefined}
|
|
157
|
+
variant={item === currentPage ? 'solid' : 'ghost'}
|
|
158
|
+
>
|
|
159
|
+
{item}
|
|
160
|
+
</Button>
|
|
161
|
+
),
|
|
162
|
+
)}
|
|
163
|
+
|
|
164
|
+
<Button
|
|
165
|
+
disabled={navigationDisabled || !canGoNext}
|
|
166
|
+
onPress={() => changePage(currentPage + 1)}
|
|
167
|
+
size="s"
|
|
168
|
+
testID={testID ? `${testID}-next` : undefined}
|
|
169
|
+
variant="ghost"
|
|
170
|
+
>
|
|
171
|
+
{nextLabel}
|
|
172
|
+
</Button>
|
|
173
|
+
|
|
174
|
+
{showFirstLast ? (
|
|
175
|
+
<Button
|
|
176
|
+
disabled={navigationDisabled || currentPage === normalizedPageCount}
|
|
177
|
+
onPress={() => changePage(normalizedPageCount)}
|
|
178
|
+
size="s"
|
|
179
|
+
testID={testID ? `${testID}-last` : undefined}
|
|
180
|
+
variant="ghost"
|
|
181
|
+
>
|
|
182
|
+
{lastLabel}
|
|
183
|
+
</Button>
|
|
184
|
+
) : null}
|
|
185
|
+
</Stack>
|
|
186
|
+
);
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
export const Pagination = withZoraThemeScope(PaginationInner);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ZoraComponentMeta } from '../../metadata';
|
|
2
|
+
|
|
3
|
+
export const paginationMeta = {
|
|
4
|
+
name: 'Pagination',
|
|
5
|
+
category: 'component',
|
|
6
|
+
directManifestNode: false,
|
|
7
|
+
allowedChildren: [],
|
|
8
|
+
note: 'Code-facing controlled pagination component; not represented as a manifest node in v1.',
|
|
9
|
+
props: {},
|
|
10
|
+
} as const satisfies ZoraComponentMeta;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
|
|
3
|
+
import type { ZoraBaseProps } from '../../theme/ZoraBaseProps';
|
|
4
|
+
|
|
5
|
+
export interface PaginationProps extends ZoraBaseProps {
|
|
6
|
+
page: number;
|
|
7
|
+
pageCount: number;
|
|
8
|
+
onPageChange?: (page: number) => void;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
siblingCount?: number;
|
|
11
|
+
boundaryCount?: number;
|
|
12
|
+
showFirstLast?: boolean;
|
|
13
|
+
previousLabel?: React.ReactNode;
|
|
14
|
+
nextLabel?: React.ReactNode;
|
|
15
|
+
firstLabel?: React.ReactNode;
|
|
16
|
+
lastLabel?: React.ReactNode;
|
|
17
|
+
compact?: boolean;
|
|
18
|
+
testID?: string;
|
|
19
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -8,6 +8,8 @@ export type { AvatarGroupItem, AvatarGroupProps } from './components/avatar-grou
|
|
|
8
8
|
export { AvatarGroup } from './components/avatar-group';
|
|
9
9
|
export type { BadgeProps } from './components/badge';
|
|
10
10
|
export { Badge } from './components/badge';
|
|
11
|
+
export type { BreadcrumbItem, BreadcrumbsProps } from './components/breadcrumbs';
|
|
12
|
+
export { Breadcrumbs } from './components/breadcrumbs';
|
|
11
13
|
export type { ButtonProps } from './components/button';
|
|
12
14
|
export { Button } from './components/button';
|
|
13
15
|
export type {
|
|
@@ -101,6 +103,8 @@ export type {
|
|
|
101
103
|
export { NavigationItem } from './components/navigation-item';
|
|
102
104
|
export type { NavigationListProps, ZoraNavigationRouteMap } from './components/navigation-list';
|
|
103
105
|
export { NavigationList } from './components/navigation-list';
|
|
106
|
+
export type { PaginationProps } from './components/pagination';
|
|
107
|
+
export { Pagination } from './components/pagination';
|
|
104
108
|
export type { ProgressProps } from './components/progress';
|
|
105
109
|
export { Progress } from './components/progress';
|
|
106
110
|
export type { RadioGroupOption, RadioGroupProps, RadioProps } from './components/radio';
|
|
@@ -3,6 +3,7 @@ import { appBarMeta } from '../components/app-bar/meta';
|
|
|
3
3
|
import { avatarMeta } from '../components/avatar/meta';
|
|
4
4
|
import { avatarGroupMeta } from '../components/avatar-group/meta';
|
|
5
5
|
import { badgeMeta } from '../components/badge/meta';
|
|
6
|
+
import { breadcrumbsMeta } from '../components/breadcrumbs/meta';
|
|
6
7
|
import { buttonMeta } from '../components/button/meta';
|
|
7
8
|
import { buttonGroupMeta } from '../components/button-group/meta';
|
|
8
9
|
import { cardMeta } from '../components/card/meta';
|
|
@@ -24,6 +25,7 @@ import { metricCardMeta } from '../components/metric-card/meta';
|
|
|
24
25
|
import { modalMeta } from '../components/modal/meta';
|
|
25
26
|
import { navigationItemMeta } from '../components/navigation-item/meta';
|
|
26
27
|
import { navigationListMeta } from '../components/navigation-list/meta';
|
|
28
|
+
import { paginationMeta } from '../components/pagination/meta';
|
|
27
29
|
import { progressMeta } from '../components/progress/meta';
|
|
28
30
|
import { radioGroupMeta, radioMeta } from '../components/radio/meta';
|
|
29
31
|
import { ratingMeta } from '../components/rating/meta';
|
|
@@ -90,6 +92,7 @@ export const ZORA_COMPONENT_META: ZoraComponentMetaRegistry = {
|
|
|
90
92
|
Avatar: avatarMeta,
|
|
91
93
|
AvatarGroup: avatarGroupMeta,
|
|
92
94
|
Badge: badgeMeta,
|
|
95
|
+
Breadcrumbs: breadcrumbsMeta,
|
|
93
96
|
Button: buttonMeta,
|
|
94
97
|
ButtonGroup: buttonGroupMeta,
|
|
95
98
|
Card: cardMeta,
|
|
@@ -116,6 +119,7 @@ export const ZORA_COMPONENT_META: ZoraComponentMetaRegistry = {
|
|
|
116
119
|
Modal: modalMeta,
|
|
117
120
|
NavigationItem: navigationItemMeta,
|
|
118
121
|
NavigationList: navigationListMeta,
|
|
122
|
+
Pagination: paginationMeta,
|
|
119
123
|
Progress: progressMeta,
|
|
120
124
|
Radio: radioMeta,
|
|
121
125
|
RadioGroup: radioGroupMeta,
|