@ankhorage/zora 21.0.9 → 21.0.11
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 +1 -1
- package/dist/features/list/adapters/inbound/ListItem.d.ts.map +1 -1
- package/dist/features/list/adapters/inbound/ListItem.js +2 -1
- package/dist/features/list/adapters/inbound/ListItem.js.map +1 -1
- package/dist/features/list/utils/resolveListItemTitleLineCount.d.ts +3 -0
- package/dist/features/list/utils/resolveListItemTitleLineCount.d.ts.map +1 -0
- package/dist/features/list/utils/resolveListItemTitleLineCount.js +5 -0
- package/dist/features/list/utils/resolveListItemTitleLineCount.js.map +1 -0
- package/dist/features/tabs/adapters/inbound/TabList.js +3 -3
- package/dist/features/tabs/adapters/inbound/TabList.js.map +1 -1
- package/dist/features/tabs/tabListMeta.d.ts +8 -1
- package/dist/features/tabs/tabListMeta.d.ts.map +1 -1
- package/dist/features/tabs/tabListMeta.js +3 -1
- package/dist/features/tabs/tabListMeta.js.map +1 -1
- package/dist/types/tabs.d.ts +3 -7
- package/dist/types/tabs.d.ts.map +1 -1
- package/dist/types/tabs.js.map +1 -1
- package/package.json +2 -2
- package/src/features/list/adapters/inbound/ListItem.tsx +6 -1
- package/src/features/list/utils/resolveListItemTitleLineCount.test.ts +11 -0
- package/src/features/list/utils/resolveListItemTitleLineCount.ts +4 -0
- package/src/features/tabs/adapters/inbound/TabList.tsx +3 -4
- package/src/features/tabs/adapters/inbound/Tabs.layout.test.tsx +33 -0
- package/src/features/tabs/tabListMeta.ts +3 -1
- package/src/types/tabs.ts +5 -7
- package/web-dist/chunks/{Accordion-kpq8dhze.js → Accordion-fjnck2tg.js} +1 -1
- package/web-dist/chunks/{Accordion-j2c7btke.js → Accordion-hz4xaqjf.js} +6 -0
- package/web-dist/chunks/{Accordion-aj6fsjhv.js → Accordion-j4d58grp.js} +62 -37
- package/web-dist/components/data-table/DataTable.js +2 -2
- package/web-dist/components/flat-list/FlatList.js +1 -1
- package/web-dist/components/list/List.js +1 -1
- package/web-dist/components/list-item/ListItem.js +1 -1
- package/web-dist/components/list-section/ListSection.js +1 -1
- package/web-dist/components/section-list/SectionList.js +1 -1
- package/web-dist/components/skeleton/Skeleton.js +2 -2
- package/web-dist/components/skeleton-card/SkeletonCard.js +2 -2
- package/web-dist/components/skeleton-list/SkeletonList.js +2 -2
- package/web-dist/components/skeleton-text/SkeletonText.js +2 -2
- package/web-dist/components/tab/Tab.js +1 -1
- package/web-dist/components/tab-list/TabList.js +1 -1
- package/web-dist/components/tab-panel/TabPanel.js +1 -1
- package/web-dist/components/tabs/Tabs.js +1 -1
- package/web-dist/components/tree-item/TreeItem.js +1 -1
- package/web-dist/manifest.json +20 -20
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 21.0.11
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- d36063d: Keep compact ListItem titles on one line so dense sidebar rows remain height-stable.
|
|
8
|
+
|
|
9
|
+
## 21.0.10
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- ebb74d7: Expose Surface-owned equal-width tab filling and trailing tab content through the canonical ZORA Tabs boundary.
|
|
14
|
+
|
|
3
15
|
## 21.0.9
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
# @ankhorage/zora
|
|
5
5
|
|
|
6
|
-
         
|
|
7
7
|
|
|
8
8
|
Opinionated React Native and React Native Web UI kit built on @ankhorage/surface.
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListItem.d.ts","sourceRoot":"","sources":["../../../../../src/features/list/adapters/inbound/ListItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,aAAa,EAAmB,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"ListItem.d.ts","sourceRoot":"","sources":["../../../../../src/features/list/adapters/inbound/ListItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,aAAa,EAAmB,MAAM,wBAAwB,CAAC;AAyF7E,+FAA+F;AAC/F,eAAO,MAAM,QAAQ,qDAAoC,CAAC"}
|
|
@@ -4,6 +4,7 @@ import { View } from '../../../layout/public';
|
|
|
4
4
|
import { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';
|
|
5
5
|
import { useZoraTheme } from '../../../theme/composition/useZoraTheme';
|
|
6
6
|
import { Text } from '../../../typography/public';
|
|
7
|
+
import { resolveListItemTitleLineCount } from '../../utils/resolveListItemTitleLineCount';
|
|
7
8
|
function ListItemInner({ themeId: _themeId, mode: _mode, testID, interactionPolicy, title, description, meta, leading, trailing, action, onPress, selected = false, disabled = false, compact = false, variant = 'divider', }) {
|
|
8
9
|
const { theme } = useZoraTheme();
|
|
9
10
|
const trailingContent = renderTrailing(trailing, action);
|
|
@@ -14,7 +15,7 @@ function ListItemInner({ themeId: _themeId, mode: _mode, testID, interactionPoli
|
|
|
14
15
|
: 'transparent'} borderWidth={variant === 'card' || selected ? 1 : 0} overflow="hidden" radius={resolveRadius(variant)}>
|
|
15
16
|
<SurfaceListItem compact={compact} disabled={disabled} interactionPolicy={interactionPolicy} leading={leading} onPress={action ? undefined : onPress} selected={selected} testID={testID} trailing={trailingContent}>
|
|
16
17
|
<View gap="xxs">
|
|
17
|
-
<Text variant="body" weight={selected ? 'semiBold' : 'medium'}>
|
|
18
|
+
<Text numberOfLines={resolveListItemTitleLineCount(compact)} variant="body" weight={selected ? 'semiBold' : 'medium'}>
|
|
18
19
|
{title}
|
|
19
20
|
</Text>
|
|
20
21
|
{description ? (<Text emphasis="muted" variant="bodySmall">
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListItem.js","sourceRoot":"","sources":["../../../../../src/features/list/adapters/inbound/ListItem.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"ListItem.js","sourceRoot":"","sources":["../../../../../src/features/list/adapters/inbound/ListItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ListItem as SurfaceListItem } from '@ankhorage/surface';\nimport React from 'react';\n\nimport type { ListItemProps, ListItemVariant } from '../../../../types/list';\nimport { View } from '../../../layout/public';\nimport { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';\nimport { useZoraTheme } from '../../../theme/composition/useZoraTheme';\nimport { Text } from '../../../typography/public';\nimport { resolveListItemTitleLineCount } from '../../utils/resolveListItemTitleLineCount';\n\nfunction ListItemInner({\n themeId: _themeId,\n mode: _mode,\n testID,\n interactionPolicy,\n title,\n description,\n meta,\n leading,\n trailing,\n action,\n onPress,\n selected = false,\n disabled = false,\n compact = false,\n variant = 'divider',\n}: ListItemProps) {\n const { theme } = useZoraTheme();\n const trailingContent = renderTrailing(trailing, action);\n\n return (\n <View\n bg={variant === 'card' ? theme.semantics.surface.raised : 'transparent'}\n borderColor={\n selected\n ? theme.semantics.border.focus\n : variant === 'card'\n ? theme.semantics.border.default\n : 'transparent'\n }\n borderWidth={variant === 'card' || selected ? 1 : 0}\n overflow=\"hidden\"\n radius={resolveRadius(variant)}\n >\n <SurfaceListItem\n compact={compact}\n disabled={disabled}\n interactionPolicy={interactionPolicy}\n leading={leading}\n onPress={action ? undefined : onPress}\n selected={selected}\n testID={testID}\n trailing={trailingContent}\n >\n <View gap=\"xxs\">\n <Text\n numberOfLines={resolveListItemTitleLineCount(compact)}\n variant=\"body\"\n weight={selected ? 'semiBold' : 'medium'}\n >\n {title}\n </Text>\n {description ? (\n <Text emphasis=\"muted\" variant=\"bodySmall\">\n {description}\n </Text>\n ) : null}\n {meta ? (\n <Text emphasis=\"subtle\" variant=\"caption\">\n {meta}\n </Text>\n ) : null}\n </View>\n </SurfaceListItem>\n </View>\n );\n}\n\nfunction resolveRadius(variant: ListItemVariant) {\n return variant === 'card' ? ('l' as const) : ('m' as const);\n}\n\nfunction renderTrailing(trailing: React.ReactNode, action: React.ReactNode) {\n if (!trailing && !action) return undefined;\n return (\n <View align=\"center\" direction=\"row\" gap=\"s\" wrap=\"nowrap\">\n {trailing}\n {action}\n </View>\n );\n}\n\n/*** Opinionated list item built on the Surface list-item interaction and geometry boundary. */\nexport const ListItem = withZoraThemeScope(ListItemInner);\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveListItemTitleLineCount.d.ts","sourceRoot":"","sources":["../../../../src/features/list/utils/resolveListItemTitleLineCount.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAElF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveListItemTitleLineCount.js","sourceRoot":"","sources":["../../../../src/features/list/utils/resolveListItemTitleLineCount.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,MAAM,UAAU,6BAA6B,CAAC,OAAgB;IAC5D,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACjC,CAAC","sourcesContent":["/*** Resolves the title line limit for compact list presentation. */\nexport function resolveListItemTitleLineCount(compact: boolean): number | undefined {\n return compact ? 1 : undefined;\n}\n"]}
|
|
@@ -2,8 +2,8 @@ import { TabList as SurfaceTabList } from '@ankhorage/surface';
|
|
|
2
2
|
import { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';
|
|
3
3
|
/*** Renders the accessible list of tabs for a Tabs composition. */
|
|
4
4
|
export const TabList = withZoraThemeScope(TabListInner);
|
|
5
|
-
/*** Delegates tablist semantics
|
|
6
|
-
function TabListInner({ themeId: _themeId, mode: _mode, interactionPolicy: _interactionPolicy,
|
|
7
|
-
return <SurfaceTabList
|
|
5
|
+
/*** Delegates tablist semantics, keyboard navigation, and fill distribution to Surface. */
|
|
6
|
+
function TabListInner({ themeId: _themeId, mode: _mode, interactionPolicy: _interactionPolicy, ...props }) {
|
|
7
|
+
return <SurfaceTabList {...props}/>;
|
|
8
8
|
}
|
|
9
9
|
//# sourceMappingURL=TabList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabList.js","sourceRoot":"","sources":["../../../../../src/features/tabs/adapters/inbound/TabList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAG/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AAExF,mEAAmE;AACnE,MAAM,CAAC,MAAM,OAAO,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;AAExD,
|
|
1
|
+
{"version":3,"file":"TabList.js","sourceRoot":"","sources":["../../../../../src/features/tabs/adapters/inbound/TabList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAG/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AAExF,mEAAmE;AACnE,MAAM,CAAC,MAAM,OAAO,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;AAExD,2FAA2F;AAC3F,SAAS,YAAY,CAAC,EACpB,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,iBAAiB,EAAE,kBAAkB,EACrC,GAAG,KAAK,EACK;IACb,OAAO,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,EAAG,CAAC;AACvC,CAAC","sourcesContent":["import { TabList as SurfaceTabList } from '@ankhorage/surface';\n\nimport type { TabListProps } from '../../../../types/tabs';\nimport { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';\n\n/*** Renders the accessible list of tabs for a Tabs composition. */\nexport const TabList = withZoraThemeScope(TabListInner);\n\n/*** Delegates tablist semantics, keyboard navigation, and fill distribution to Surface. */\nfunction TabListInner({\n themeId: _themeId,\n mode: _mode,\n interactionPolicy: _interactionPolicy,\n ...props\n}: TabListProps) {\n return <SurfaceTabList {...props} />;\n}\n"]}
|
|
@@ -4,6 +4,13 @@ export declare const tabListMeta: {
|
|
|
4
4
|
readonly directManifestNode: true;
|
|
5
5
|
readonly allowedChildren: readonly ["Tab"];
|
|
6
6
|
readonly description: "Accessible list of selectable tabs.";
|
|
7
|
-
readonly props: {
|
|
7
|
+
readonly props: {
|
|
8
|
+
readonly fill: {
|
|
9
|
+
readonly type: "boolean";
|
|
10
|
+
readonly category: "Layout";
|
|
11
|
+
readonly label: "Fill";
|
|
12
|
+
readonly default: false;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
8
15
|
};
|
|
9
16
|
//# sourceMappingURL=tabListMeta.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabListMeta.d.ts","sourceRoot":"","sources":["../../../src/features/tabs/tabListMeta.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW
|
|
1
|
+
{"version":3,"file":"tabListMeta.d.ts","sourceRoot":"","sources":["../../../src/features/tabs/tabListMeta.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;CASc,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const tabListMeta = {
|
|
|
4
4
|
directManifestNode: true,
|
|
5
5
|
allowedChildren: ['Tab'],
|
|
6
6
|
description: 'Accessible list of selectable tabs.',
|
|
7
|
-
props: {
|
|
7
|
+
props: {
|
|
8
|
+
fill: { type: 'boolean', category: 'Layout', label: 'Fill', default: false },
|
|
9
|
+
},
|
|
8
10
|
};
|
|
9
11
|
//# sourceMappingURL=tabListMeta.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabListMeta.js","sourceRoot":"","sources":["../../../src/features/tabs/tabListMeta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,CAAC,KAAK,CAAC;IACxB,WAAW,EAAE,qCAAqC;IAClD,KAAK,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"tabListMeta.js","sourceRoot":"","sources":["../../../src/features/tabs/tabListMeta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,CAAC,KAAK,CAAC;IACxB,WAAW,EAAE,qCAAqC;IAClD,KAAK,EAAE;QACL,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE;KAC7E;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../types/authoring';\n\nexport const tabListMeta = {\n name: 'TabList',\n category: 'component',\n directManifestNode: true,\n allowedChildren: ['Tab'],\n description: 'Accessible list of selectable tabs.',\n props: {\n fill: { type: 'boolean', category: 'Layout', label: 'Fill', default: false },\n },\n} as const satisfies ZoraComponentMeta;\n"]}
|
package/dist/types/tabs.d.ts
CHANGED
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
import type { TabPanelProps as SurfaceTabPanelProps, TabsProps as SurfaceTabsProps } from '@ankhorage/surface';
|
|
2
|
-
import type React from 'react';
|
|
1
|
+
import type { TabListProps as SurfaceTabListProps, TabPanelProps as SurfaceTabPanelProps, TabProps as SurfaceTabProps, TabsProps as SurfaceTabsProps } from '@ankhorage/surface';
|
|
3
2
|
import type { ZoraBaseProps } from './base';
|
|
4
3
|
export interface TabsProps extends ZoraBaseProps, Omit<SurfaceTabsProps, 'testID'> {
|
|
5
4
|
}
|
|
6
|
-
export interface TabListProps extends ZoraBaseProps {
|
|
7
|
-
children?: React.ReactNode;
|
|
5
|
+
export interface TabListProps extends ZoraBaseProps, Omit<SurfaceTabListProps, 'testID'> {
|
|
8
6
|
}
|
|
9
|
-
export interface TabProps extends ZoraBaseProps {
|
|
10
|
-
value: string;
|
|
7
|
+
export interface TabProps extends ZoraBaseProps, Omit<SurfaceTabProps, 'children' | 'interactionPolicy' | 'testID'> {
|
|
11
8
|
label: string;
|
|
12
|
-
disabled?: boolean;
|
|
13
9
|
}
|
|
14
10
|
export interface TabPanelProps extends ZoraBaseProps, Omit<SurfaceTabPanelProps, 'testID'> {
|
|
15
11
|
}
|
package/dist/types/tabs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../src/types/tabs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,IAAI,oBAAoB,EACrC,SAAS,IAAI,gBAAgB,EAC9B,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../src/types/tabs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,IAAI,mBAAmB,EACnC,aAAa,IAAI,oBAAoB,EACrC,QAAQ,IAAI,eAAe,EAC3B,SAAS,IAAI,gBAAgB,EAC9B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE5C,MAAM,WAAW,SAAU,SAAQ,aAAa,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC;CAAG;AAErF,MAAM,WAAW,YAAa,SAAQ,aAAa,EAAE,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC;CAAG;AAE3F,MAAM,WAAW,QACf,SAAQ,aAAa,EAAE,IAAI,CAAC,eAAe,EAAE,UAAU,GAAG,mBAAmB,GAAG,QAAQ,CAAC;IACzF,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAc,SAAQ,aAAa,EAAE,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC;CAAG"}
|
package/dist/types/tabs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../src/types/tabs.ts"],"names":[],"mappings":"","sourcesContent":["import type {\n TabPanelProps as SurfaceTabPanelProps,\n TabsProps as SurfaceTabsProps,\n} from '@ankhorage/surface';\
|
|
1
|
+
{"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../src/types/tabs.ts"],"names":[],"mappings":"","sourcesContent":["import type {\n TabListProps as SurfaceTabListProps,\n TabPanelProps as SurfaceTabPanelProps,\n TabProps as SurfaceTabProps,\n TabsProps as SurfaceTabsProps,\n} from '@ankhorage/surface';\n\nimport type { ZoraBaseProps } from './base';\n\nexport interface TabsProps extends ZoraBaseProps, Omit<SurfaceTabsProps, 'testID'> {}\n\nexport interface TabListProps extends ZoraBaseProps, Omit<SurfaceTabListProps, 'testID'> {}\n\nexport interface TabProps\n extends ZoraBaseProps, Omit<SurfaceTabProps, 'children' | 'interactionPolicy' | 'testID'> {\n label: string;\n}\n\nexport interface TabPanelProps extends ZoraBaseProps, Omit<SurfaceTabPanelProps, 'testID'> {}\n"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ankhorage/zora",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "21.0.
|
|
4
|
+
"version": "21.0.11",
|
|
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": {
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@ankhorage/color-theory": "^0.3.1",
|
|
44
44
|
"@ankhorage/contracts": "^22.5.0",
|
|
45
|
-
"@ankhorage/surface": "^9.0
|
|
45
|
+
"@ankhorage/surface": "^9.1.0",
|
|
46
46
|
"@ankhorage/utility": "^1.5.0",
|
|
47
47
|
"expo-document-picker": "~57.0.1",
|
|
48
48
|
"expo-image-picker": "~57.0.16"
|
|
@@ -6,6 +6,7 @@ import { View } from '../../../layout/public';
|
|
|
6
6
|
import { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';
|
|
7
7
|
import { useZoraTheme } from '../../../theme/composition/useZoraTheme';
|
|
8
8
|
import { Text } from '../../../typography/public';
|
|
9
|
+
import { resolveListItemTitleLineCount } from '../../utils/resolveListItemTitleLineCount';
|
|
9
10
|
|
|
10
11
|
function ListItemInner({
|
|
11
12
|
themeId: _themeId,
|
|
@@ -52,7 +53,11 @@ function ListItemInner({
|
|
|
52
53
|
trailing={trailingContent}
|
|
53
54
|
>
|
|
54
55
|
<View gap="xxs">
|
|
55
|
-
<Text
|
|
56
|
+
<Text
|
|
57
|
+
numberOfLines={resolveListItemTitleLineCount(compact)}
|
|
58
|
+
variant="body"
|
|
59
|
+
weight={selected ? 'semiBold' : 'medium'}
|
|
60
|
+
>
|
|
56
61
|
{title}
|
|
57
62
|
</Text>
|
|
58
63
|
{description ? (
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { expect, test } from 'bun:test';
|
|
2
|
+
|
|
3
|
+
import { resolveListItemTitleLineCount } from './resolveListItemTitleLineCount';
|
|
4
|
+
|
|
5
|
+
test('keeps compact list item titles to one line', () => {
|
|
6
|
+
expect(resolveListItemTitleLineCount(true)).toBe(1);
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
test('preserves unrestricted non-compact list item titles', () => {
|
|
10
|
+
expect(resolveListItemTitleLineCount(false)).toBeUndefined();
|
|
11
|
+
});
|
|
@@ -6,13 +6,12 @@ import { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThem
|
|
|
6
6
|
/*** Renders the accessible list of tabs for a Tabs composition. */
|
|
7
7
|
export const TabList = withZoraThemeScope(TabListInner);
|
|
8
8
|
|
|
9
|
-
/*** Delegates tablist semantics
|
|
9
|
+
/*** Delegates tablist semantics, keyboard navigation, and fill distribution to Surface. */
|
|
10
10
|
function TabListInner({
|
|
11
11
|
themeId: _themeId,
|
|
12
12
|
mode: _mode,
|
|
13
13
|
interactionPolicy: _interactionPolicy,
|
|
14
|
-
|
|
15
|
-
testID,
|
|
14
|
+
...props
|
|
16
15
|
}: TabListProps) {
|
|
17
|
-
return <SurfaceTabList
|
|
16
|
+
return <SurfaceTabList {...props} />;
|
|
18
17
|
}
|
|
@@ -8,6 +8,8 @@ import { renderToStaticMarkup } from 'react-dom/server';
|
|
|
8
8
|
|
|
9
9
|
import type { ScrollView as ScrollViewComponent } from '../../../layout/adapters/inbound/ScrollView';
|
|
10
10
|
import type { ZoraProvider as ZoraProviderComponent } from '../../../theme/adapters/inbound/ZoraProvider';
|
|
11
|
+
import type { Tab as TabComponent } from './Tab';
|
|
12
|
+
import type { TabList as TabListComponent } from './TabList';
|
|
11
13
|
import type { TabPanel as TabPanelComponent } from './TabPanel';
|
|
12
14
|
import type { Tabs as TabsComponent } from './Tabs';
|
|
13
15
|
|
|
@@ -55,3 +57,34 @@ test('renders a bounded generated Tabs panel containing the canonical ScrollView
|
|
|
55
57
|
expect(browserWindow.document.body.textContent).not.toContain('Hidden rules');
|
|
56
58
|
browserWindow.close();
|
|
57
59
|
});
|
|
60
|
+
|
|
61
|
+
test('forwards filled tab distribution and trailing tab content through the generated artifact', async () => {
|
|
62
|
+
const { ZoraProvider } = (await load('runtime/ZoraProvider.js')) as {
|
|
63
|
+
ZoraProvider: typeof ZoraProviderComponent;
|
|
64
|
+
};
|
|
65
|
+
const { Tab, TabList, Tabs } = (await load('components/tabs/index.js')) as {
|
|
66
|
+
Tab: typeof TabComponent;
|
|
67
|
+
TabList: typeof TabListComponent;
|
|
68
|
+
Tabs: typeof TabsComponent;
|
|
69
|
+
};
|
|
70
|
+
const markup = renderToStaticMarkup(
|
|
71
|
+
<ZoraProvider mode="light">
|
|
72
|
+
<Tabs defaultValue="tree">
|
|
73
|
+
<TabList fill testID="tools">
|
|
74
|
+
<Tab label="Tree" trailing={<span data-testid="tree-count">2</span>} value="tree" />
|
|
75
|
+
<Tab label="Rules" value="rules" />
|
|
76
|
+
</TabList>
|
|
77
|
+
</Tabs>
|
|
78
|
+
</ZoraProvider>,
|
|
79
|
+
);
|
|
80
|
+
const browserWindow = new Window();
|
|
81
|
+
browserWindow.document.body.innerHTML = markup;
|
|
82
|
+
const tabList = browserWindow.document.querySelector('[data-testid="tools"]');
|
|
83
|
+
const wrappers = Array.from(tabList?.children ?? []);
|
|
84
|
+
|
|
85
|
+
expect(tabList?.getAttribute('role')).toBe('tablist');
|
|
86
|
+
expect(wrappers).toHaveLength(2);
|
|
87
|
+
expect(wrappers.every((wrapper) => wrapper.getAttribute('style')?.includes('flex:1'))).toBe(true);
|
|
88
|
+
expect(browserWindow.document.querySelector('[data-testid="tree-count"]')?.textContent).toBe('2');
|
|
89
|
+
browserWindow.close();
|
|
90
|
+
});
|
|
@@ -6,5 +6,7 @@ export const tabListMeta = {
|
|
|
6
6
|
directManifestNode: true,
|
|
7
7
|
allowedChildren: ['Tab'],
|
|
8
8
|
description: 'Accessible list of selectable tabs.',
|
|
9
|
-
props: {
|
|
9
|
+
props: {
|
|
10
|
+
fill: { type: 'boolean', category: 'Layout', label: 'Fill', default: false },
|
|
11
|
+
},
|
|
10
12
|
} as const satisfies ZoraComponentMeta;
|
package/src/types/tabs.ts
CHANGED
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
import type {
|
|
2
|
+
TabListProps as SurfaceTabListProps,
|
|
2
3
|
TabPanelProps as SurfaceTabPanelProps,
|
|
4
|
+
TabProps as SurfaceTabProps,
|
|
3
5
|
TabsProps as SurfaceTabsProps,
|
|
4
6
|
} from '@ankhorage/surface';
|
|
5
|
-
import type React from 'react';
|
|
6
7
|
|
|
7
8
|
import type { ZoraBaseProps } from './base';
|
|
8
9
|
|
|
9
10
|
export interface TabsProps extends ZoraBaseProps, Omit<SurfaceTabsProps, 'testID'> {}
|
|
10
11
|
|
|
11
|
-
export interface TabListProps extends ZoraBaseProps {
|
|
12
|
-
children?: React.ReactNode;
|
|
13
|
-
}
|
|
12
|
+
export interface TabListProps extends ZoraBaseProps, Omit<SurfaceTabListProps, 'testID'> {}
|
|
14
13
|
|
|
15
|
-
export interface TabProps
|
|
16
|
-
|
|
14
|
+
export interface TabProps
|
|
15
|
+
extends ZoraBaseProps, Omit<SurfaceTabProps, 'children' | 'interactionPolicy' | 'testID'> {
|
|
17
16
|
label: string;
|
|
18
|
-
disabled?: boolean;
|
|
19
17
|
}
|
|
20
18
|
|
|
21
19
|
export interface TabPanelProps extends ZoraBaseProps, Omit<SurfaceTabPanelProps, 'testID'> {}
|
|
@@ -232,6 +232,11 @@ function renderDefaultContent(title, description) {
|
|
|
232
232
|
});
|
|
233
233
|
}
|
|
234
234
|
|
|
235
|
+
// src/features/list/utils/resolveListItemTitleLineCount.ts
|
|
236
|
+
function resolveListItemTitleLineCount(compact) {
|
|
237
|
+
return compact ? 1 : undefined;
|
|
238
|
+
}
|
|
239
|
+
|
|
235
240
|
// src/features/list/adapters/inbound/ListItem.tsx
|
|
236
241
|
import { jsx as jsx5, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
237
242
|
function ListItemInner({
|
|
@@ -272,6 +277,7 @@ function ListItemInner({
|
|
|
272
277
|
gap: "xxs",
|
|
273
278
|
children: [
|
|
274
279
|
/* @__PURE__ */ jsx5(Text2, {
|
|
280
|
+
numberOfLines: resolveListItemTitleLineCount(compact),
|
|
275
281
|
variant: "body",
|
|
276
282
|
weight: selected ? "semiBold" : "medium",
|
|
277
283
|
children: title
|
|
@@ -62,13 +62,14 @@ function useTabRegistration({ disabled, value }) {
|
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
// node_modules/@ankhorage/surface/src/features/tabs/adapters/inbound/Tab.tsx
|
|
65
|
-
import { jsx } from "react/jsx-runtime";
|
|
65
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
66
66
|
function Tab({
|
|
67
67
|
value,
|
|
68
68
|
children,
|
|
69
69
|
disabled = false,
|
|
70
70
|
interactionPolicy = "enabled",
|
|
71
|
-
testID
|
|
71
|
+
testID,
|
|
72
|
+
trailing
|
|
72
73
|
}) {
|
|
73
74
|
const { theme } = useTheme();
|
|
74
75
|
const { activeValue, getPanelId, getTabId, setActiveValue, setFocusedValue } = useTabsContext();
|
|
@@ -95,15 +96,29 @@ function Tab({
|
|
|
95
96
|
borderColor: selected ? theme.semantics.action.primary.base : theme.semantics.border.default,
|
|
96
97
|
disabled
|
|
97
98
|
}),
|
|
98
|
-
children:
|
|
99
|
-
color: selected ? "primary" : undefined,
|
|
100
|
-
variant: "label",
|
|
101
|
-
weight: "medium",
|
|
102
|
-
children
|
|
103
|
-
})
|
|
99
|
+
children: renderTabContent(children, trailing, selected)
|
|
104
100
|
})
|
|
105
101
|
});
|
|
106
102
|
}
|
|
103
|
+
function renderTabContent(children, trailing, selected) {
|
|
104
|
+
const label = /* @__PURE__ */ jsx(Text3, {
|
|
105
|
+
color: selected ? "primary" : undefined,
|
|
106
|
+
variant: "label",
|
|
107
|
+
weight: "medium",
|
|
108
|
+
children
|
|
109
|
+
});
|
|
110
|
+
if (trailing === undefined)
|
|
111
|
+
return label;
|
|
112
|
+
return /* @__PURE__ */ jsxs(View3, {
|
|
113
|
+
align: "center",
|
|
114
|
+
direction: "row",
|
|
115
|
+
gap: "xs",
|
|
116
|
+
children: [
|
|
117
|
+
label,
|
|
118
|
+
trailing
|
|
119
|
+
]
|
|
120
|
+
});
|
|
121
|
+
}
|
|
107
122
|
function resolveTabStyle({
|
|
108
123
|
borderColor,
|
|
109
124
|
disabled
|
|
@@ -137,7 +152,7 @@ function TabInner({
|
|
|
137
152
|
}
|
|
138
153
|
|
|
139
154
|
// node_modules/@ankhorage/surface/src/features/tabs/adapters/inbound/TabList.tsx
|
|
140
|
-
import
|
|
155
|
+
import React6 from "react";
|
|
141
156
|
|
|
142
157
|
// node_modules/@ankhorage/surface/src/features/tabs/utils/resolveNextTabValue.ts
|
|
143
158
|
function resolveNextTabValue(tabs, currentValue, key) {
|
|
@@ -155,8 +170,20 @@ function resolveNextTabValue(tabs, currentValue, key) {
|
|
|
155
170
|
return enabledTabs.at(nextIndex)?.value;
|
|
156
171
|
}
|
|
157
172
|
|
|
158
|
-
// node_modules/@ankhorage/surface/src/features/tabs/
|
|
173
|
+
// node_modules/@ankhorage/surface/src/features/tabs/utils/wrapTabListChildren.tsx
|
|
174
|
+
import React5 from "react";
|
|
159
175
|
import { jsx as jsx3 } from "react/jsx-runtime";
|
|
176
|
+
function wrapTabListChildren(children, fill) {
|
|
177
|
+
if (!fill)
|
|
178
|
+
return children;
|
|
179
|
+
return React5.Children.map(children, (child) => /* @__PURE__ */ jsx3(View3, {
|
|
180
|
+
flex: 1,
|
|
181
|
+
children: child
|
|
182
|
+
}));
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
// node_modules/@ankhorage/surface/src/features/tabs/adapters/inbound/TabList.tsx
|
|
186
|
+
import { jsx as jsx4 } from "react/jsx-runtime";
|
|
160
187
|
var navigationKeys = [
|
|
161
188
|
"ArrowLeft",
|
|
162
189
|
"ArrowRight",
|
|
@@ -165,10 +192,10 @@ var navigationKeys = [
|
|
|
165
192
|
"Home",
|
|
166
193
|
"End"
|
|
167
194
|
];
|
|
168
|
-
function TabList({ children, testID }) {
|
|
195
|
+
function TabList({ children, fill = false, testID }) {
|
|
169
196
|
const { bindKeydown } = useFocusManager();
|
|
170
197
|
const { focusedValue, setActiveValue, tabs } = useTabsContext();
|
|
171
|
-
|
|
198
|
+
React6.useEffect(() => {
|
|
172
199
|
if (!focusedValue)
|
|
173
200
|
return;
|
|
174
201
|
return bindKeydown((event) => {
|
|
@@ -182,11 +209,11 @@ function TabList({ children, testID }) {
|
|
|
182
209
|
setActiveValue(nextValue);
|
|
183
210
|
});
|
|
184
211
|
}, [bindKeydown, focusedValue, setActiveValue, tabs]);
|
|
185
|
-
return /* @__PURE__ */
|
|
212
|
+
return /* @__PURE__ */ jsx4(View3, {
|
|
186
213
|
accessibilityRole: "tablist",
|
|
187
214
|
direction: "row",
|
|
188
215
|
testID,
|
|
189
|
-
children
|
|
216
|
+
children: wrapTabListChildren(children, fill)
|
|
190
217
|
});
|
|
191
218
|
}
|
|
192
219
|
function isTabNavigationKey(key) {
|
|
@@ -194,29 +221,27 @@ function isTabNavigationKey(key) {
|
|
|
194
221
|
}
|
|
195
222
|
|
|
196
223
|
// src/features/tabs/adapters/inbound/TabList.tsx
|
|
197
|
-
import { jsx as
|
|
224
|
+
import { jsx as jsx5 } from "react/jsx-runtime";
|
|
198
225
|
var TabList2 = withZoraThemeScope(TabListInner);
|
|
199
226
|
function TabListInner({
|
|
200
227
|
themeId: _themeId,
|
|
201
228
|
mode: _mode,
|
|
202
229
|
interactionPolicy: _interactionPolicy,
|
|
203
|
-
|
|
204
|
-
testID
|
|
230
|
+
...props
|
|
205
231
|
}) {
|
|
206
|
-
return /* @__PURE__ */
|
|
207
|
-
|
|
208
|
-
children
|
|
232
|
+
return /* @__PURE__ */ jsx5(TabList, {
|
|
233
|
+
...props
|
|
209
234
|
});
|
|
210
235
|
}
|
|
211
236
|
|
|
212
237
|
// node_modules/@ankhorage/surface/src/features/tabs/adapters/inbound/TabPanel.tsx
|
|
213
|
-
import { jsx as
|
|
238
|
+
import { jsx as jsx6 } from "react/jsx-runtime";
|
|
214
239
|
var TAB_PANEL_ROLE = "tabpanel";
|
|
215
240
|
function TabPanel({ value, children, testID, ...layoutProps }) {
|
|
216
241
|
const { activeValue, getPanelId, getTabId } = useTabsContext();
|
|
217
242
|
if (activeValue !== value)
|
|
218
243
|
return null;
|
|
219
|
-
return /* @__PURE__ */
|
|
244
|
+
return /* @__PURE__ */ jsx6(View3, {
|
|
220
245
|
...layoutProps,
|
|
221
246
|
accessibilityLabelledBy: getTabId(value),
|
|
222
247
|
accessibilityRole: TAB_PANEL_ROLE,
|
|
@@ -227,7 +252,7 @@ function TabPanel({ value, children, testID, ...layoutProps }) {
|
|
|
227
252
|
}
|
|
228
253
|
|
|
229
254
|
// src/features/tabs/adapters/inbound/TabPanel.tsx
|
|
230
|
-
import { jsx as
|
|
255
|
+
import { jsx as jsx7 } from "react/jsx-runtime";
|
|
231
256
|
var TabPanel2 = withZoraThemeScope(TabPanelInner);
|
|
232
257
|
function TabPanelInner({
|
|
233
258
|
themeId: _themeId,
|
|
@@ -235,13 +260,13 @@ function TabPanelInner({
|
|
|
235
260
|
interactionPolicy: _interactionPolicy,
|
|
236
261
|
...props
|
|
237
262
|
}) {
|
|
238
|
-
return /* @__PURE__ */
|
|
263
|
+
return /* @__PURE__ */ jsx7(TabPanel, {
|
|
239
264
|
...props
|
|
240
265
|
});
|
|
241
266
|
}
|
|
242
267
|
|
|
243
268
|
// node_modules/@ankhorage/surface/src/features/tabs/composition/useTabsController.ts
|
|
244
|
-
import
|
|
269
|
+
import React7 from "react";
|
|
245
270
|
|
|
246
271
|
// node_modules/@ankhorage/surface/src/features/tabs/utils/resolveTabElementId.ts
|
|
247
272
|
function resolveTabElementId(kind, testID, value) {
|
|
@@ -267,22 +292,22 @@ function useTabsController({
|
|
|
267
292
|
},
|
|
268
293
|
value
|
|
269
294
|
});
|
|
270
|
-
const [focusedValue, setFocusedValue] =
|
|
271
|
-
const [tabs, setTabs] =
|
|
272
|
-
const registerTab =
|
|
295
|
+
const [focusedValue, setFocusedValue] = React7.useState(undefined);
|
|
296
|
+
const [tabs, setTabs] = React7.useState([]);
|
|
297
|
+
const registerTab = React7.useCallback((tab) => {
|
|
273
298
|
setTabs((current) => current.some((entry) => entry.value === tab.value) ? current.map((entry) => entry.value === tab.value ? tab : entry) : [...current, tab]);
|
|
274
299
|
}, []);
|
|
275
|
-
const unregisterTab =
|
|
300
|
+
const unregisterTab = React7.useCallback((valueToRemove) => {
|
|
276
301
|
setTabs((current) => current.filter((entry) => entry.value !== valueToRemove));
|
|
277
302
|
}, []);
|
|
278
|
-
|
|
303
|
+
React7.useEffect(() => {
|
|
279
304
|
if (activeValue !== undefined)
|
|
280
305
|
return;
|
|
281
306
|
const firstEnabledTab = tabs.find((entry) => !entry.disabled);
|
|
282
307
|
if (firstEnabledTab)
|
|
283
308
|
setActiveValue(firstEnabledTab.value);
|
|
284
309
|
}, [activeValue, setActiveValue, tabs]);
|
|
285
|
-
return
|
|
310
|
+
return React7.useMemo(() => ({
|
|
286
311
|
activeValue,
|
|
287
312
|
focusedValue,
|
|
288
313
|
getPanelId: (tabValue) => resolveTabElementId("panel", testID, tabValue),
|
|
@@ -296,7 +321,7 @@ function useTabsController({
|
|
|
296
321
|
}
|
|
297
322
|
|
|
298
323
|
// node_modules/@ankhorage/surface/src/features/tabs/adapters/inbound/Tabs.tsx
|
|
299
|
-
import { jsx as
|
|
324
|
+
import { jsx as jsx8 } from "react/jsx-runtime";
|
|
300
325
|
function Tabs({
|
|
301
326
|
children,
|
|
302
327
|
defaultValue,
|
|
@@ -306,9 +331,9 @@ function Tabs({
|
|
|
306
331
|
...layoutProps
|
|
307
332
|
}) {
|
|
308
333
|
const contextValue = useTabsController({ defaultValue, onValueChange, testID, value });
|
|
309
|
-
return /* @__PURE__ */
|
|
334
|
+
return /* @__PURE__ */ jsx8(TabsContext, {
|
|
310
335
|
value: contextValue,
|
|
311
|
-
children: /* @__PURE__ */
|
|
336
|
+
children: /* @__PURE__ */ jsx8(View3, {
|
|
312
337
|
...layoutProps,
|
|
313
338
|
testID,
|
|
314
339
|
children
|
|
@@ -317,7 +342,7 @@ function Tabs({
|
|
|
317
342
|
}
|
|
318
343
|
|
|
319
344
|
// src/features/tabs/adapters/inbound/Tabs.tsx
|
|
320
|
-
import { jsx as
|
|
345
|
+
import { jsx as jsx9 } from "react/jsx-runtime";
|
|
321
346
|
var Tabs2 = withZoraThemeScope(TabsInner);
|
|
322
347
|
function TabsInner({
|
|
323
348
|
themeId: _themeId,
|
|
@@ -326,9 +351,9 @@ function TabsInner({
|
|
|
326
351
|
children,
|
|
327
352
|
...props
|
|
328
353
|
}) {
|
|
329
|
-
return /* @__PURE__ */
|
|
354
|
+
return /* @__PURE__ */ jsx9(TabsInteractionPolicyContext, {
|
|
330
355
|
value: interactionPolicy,
|
|
331
|
-
children: /* @__PURE__ */
|
|
356
|
+
children: /* @__PURE__ */ jsx9(Tabs, {
|
|
332
357
|
...props,
|
|
333
358
|
children
|
|
334
359
|
})
|
|
@@ -46,8 +46,8 @@ import {
|
|
|
46
46
|
} from "../../chunks/Accordion-v6ykq9hv.js";
|
|
47
47
|
import {
|
|
48
48
|
SkeletonList2
|
|
49
|
-
} from "../../chunks/Accordion-
|
|
50
|
-
import"../../chunks/Accordion-
|
|
49
|
+
} from "../../chunks/Accordion-fjnck2tg.js";
|
|
50
|
+
import"../../chunks/Accordion-hz4xaqjf.js";
|
|
51
51
|
import"../../chunks/Accordion-31aeqxak.js";
|
|
52
52
|
import"../../chunks/Accordion-eqvdv7tt.js";
|
|
53
53
|
import"../../chunks/Accordion-61e19g3e.js";
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
List2,
|
|
14
14
|
ListSection2,
|
|
15
15
|
SectionList2
|
|
16
|
-
} from "../../chunks/Accordion-
|
|
16
|
+
} from "../../chunks/Accordion-hz4xaqjf.js";
|
|
17
17
|
import"../../chunks/Accordion-ftjkdjqs.js";
|
|
18
18
|
import"../../chunks/Accordion-0jkm3y3w.js";
|
|
19
19
|
import"../../chunks/Accordion-31aeqxak.js";
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
List2,
|
|
14
14
|
ListSection2,
|
|
15
15
|
SectionList2
|
|
16
|
-
} from "../../chunks/Accordion-
|
|
16
|
+
} from "../../chunks/Accordion-hz4xaqjf.js";
|
|
17
17
|
import"../../chunks/Accordion-ftjkdjqs.js";
|
|
18
18
|
import"../../chunks/Accordion-0jkm3y3w.js";
|
|
19
19
|
import"../../chunks/Accordion-31aeqxak.js";
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
List2,
|
|
14
14
|
ListSection2,
|
|
15
15
|
SectionList2
|
|
16
|
-
} from "../../chunks/Accordion-
|
|
16
|
+
} from "../../chunks/Accordion-hz4xaqjf.js";
|
|
17
17
|
import"../../chunks/Accordion-ftjkdjqs.js";
|
|
18
18
|
import"../../chunks/Accordion-0jkm3y3w.js";
|
|
19
19
|
import"../../chunks/Accordion-31aeqxak.js";
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
List2,
|
|
14
14
|
ListSection2,
|
|
15
15
|
SectionList2
|
|
16
|
-
} from "../../chunks/Accordion-
|
|
16
|
+
} from "../../chunks/Accordion-hz4xaqjf.js";
|
|
17
17
|
import"../../chunks/Accordion-ftjkdjqs.js";
|
|
18
18
|
import"../../chunks/Accordion-0jkm3y3w.js";
|
|
19
19
|
import"../../chunks/Accordion-31aeqxak.js";
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
List2,
|
|
14
14
|
ListSection2,
|
|
15
15
|
SectionList2
|
|
16
|
-
} from "../../chunks/Accordion-
|
|
16
|
+
} from "../../chunks/Accordion-hz4xaqjf.js";
|
|
17
17
|
import"../../chunks/Accordion-ftjkdjqs.js";
|
|
18
18
|
import"../../chunks/Accordion-0jkm3y3w.js";
|
|
19
19
|
import"../../chunks/Accordion-31aeqxak.js";
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
SkeletonText2,
|
|
11
11
|
SkeletonCard2,
|
|
12
12
|
SkeletonList2
|
|
13
|
-
} from "../../chunks/Accordion-
|
|
13
|
+
} from "../../chunks/Accordion-fjnck2tg.js";
|
|
14
14
|
import"../../chunks/Accordion-t6sdgmbz.js";
|
|
15
15
|
import"../../chunks/Accordion-ftjkdjqs.js";
|
|
16
16
|
import"../../chunks/Accordion-0jkm3y3w.js";
|
|
@@ -23,7 +23,7 @@ import"../../chunks/Accordion-1pp37dtg.js";
|
|
|
23
23
|
import"../../chunks/Accordion-paha5aje.js";
|
|
24
24
|
import"../../chunks/Accordion-gbba10rg.js";
|
|
25
25
|
import"../../chunks/Accordion-x0j8b2by.js";
|
|
26
|
-
import"../../chunks/Accordion-
|
|
26
|
+
import"../../chunks/Accordion-hz4xaqjf.js";
|
|
27
27
|
import"../../chunks/Accordion-31aeqxak.js";
|
|
28
28
|
import"../../chunks/Accordion-eqvdv7tt.js";
|
|
29
29
|
import"../../chunks/Accordion-61e19g3e.js";
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
SkeletonText2,
|
|
11
11
|
SkeletonCard2,
|
|
12
12
|
SkeletonList2
|
|
13
|
-
} from "../../chunks/Accordion-
|
|
13
|
+
} from "../../chunks/Accordion-fjnck2tg.js";
|
|
14
14
|
import"../../chunks/Accordion-t6sdgmbz.js";
|
|
15
15
|
import"../../chunks/Accordion-ftjkdjqs.js";
|
|
16
16
|
import"../../chunks/Accordion-0jkm3y3w.js";
|
|
@@ -23,7 +23,7 @@ import"../../chunks/Accordion-1pp37dtg.js";
|
|
|
23
23
|
import"../../chunks/Accordion-paha5aje.js";
|
|
24
24
|
import"../../chunks/Accordion-gbba10rg.js";
|
|
25
25
|
import"../../chunks/Accordion-x0j8b2by.js";
|
|
26
|
-
import"../../chunks/Accordion-
|
|
26
|
+
import"../../chunks/Accordion-hz4xaqjf.js";
|
|
27
27
|
import"../../chunks/Accordion-31aeqxak.js";
|
|
28
28
|
import"../../chunks/Accordion-eqvdv7tt.js";
|
|
29
29
|
import"../../chunks/Accordion-61e19g3e.js";
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
SkeletonText2,
|
|
11
11
|
SkeletonCard2,
|
|
12
12
|
SkeletonList2
|
|
13
|
-
} from "../../chunks/Accordion-
|
|
13
|
+
} from "../../chunks/Accordion-fjnck2tg.js";
|
|
14
14
|
import"../../chunks/Accordion-t6sdgmbz.js";
|
|
15
15
|
import"../../chunks/Accordion-ftjkdjqs.js";
|
|
16
16
|
import"../../chunks/Accordion-0jkm3y3w.js";
|
|
@@ -23,7 +23,7 @@ import"../../chunks/Accordion-1pp37dtg.js";
|
|
|
23
23
|
import"../../chunks/Accordion-paha5aje.js";
|
|
24
24
|
import"../../chunks/Accordion-gbba10rg.js";
|
|
25
25
|
import"../../chunks/Accordion-x0j8b2by.js";
|
|
26
|
-
import"../../chunks/Accordion-
|
|
26
|
+
import"../../chunks/Accordion-hz4xaqjf.js";
|
|
27
27
|
import"../../chunks/Accordion-31aeqxak.js";
|
|
28
28
|
import"../../chunks/Accordion-eqvdv7tt.js";
|
|
29
29
|
import"../../chunks/Accordion-61e19g3e.js";
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
SkeletonText2,
|
|
11
11
|
SkeletonCard2,
|
|
12
12
|
SkeletonList2
|
|
13
|
-
} from "../../chunks/Accordion-
|
|
13
|
+
} from "../../chunks/Accordion-fjnck2tg.js";
|
|
14
14
|
import"../../chunks/Accordion-t6sdgmbz.js";
|
|
15
15
|
import"../../chunks/Accordion-ftjkdjqs.js";
|
|
16
16
|
import"../../chunks/Accordion-0jkm3y3w.js";
|
|
@@ -23,7 +23,7 @@ import"../../chunks/Accordion-1pp37dtg.js";
|
|
|
23
23
|
import"../../chunks/Accordion-paha5aje.js";
|
|
24
24
|
import"../../chunks/Accordion-gbba10rg.js";
|
|
25
25
|
import"../../chunks/Accordion-x0j8b2by.js";
|
|
26
|
-
import"../../chunks/Accordion-
|
|
26
|
+
import"../../chunks/Accordion-hz4xaqjf.js";
|
|
27
27
|
import"../../chunks/Accordion-31aeqxak.js";
|
|
28
28
|
import"../../chunks/Accordion-eqvdv7tt.js";
|
|
29
29
|
import"../../chunks/Accordion-61e19g3e.js";
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
TabList2,
|
|
9
9
|
TabPanel2,
|
|
10
10
|
Tabs2
|
|
11
|
-
} from "../../chunks/Accordion-
|
|
11
|
+
} from "../../chunks/Accordion-j4d58grp.js";
|
|
12
12
|
import"../../chunks/Accordion-kcx57mk5.js";
|
|
13
13
|
import"../../chunks/Accordion-grfbz6f2.js";
|
|
14
14
|
import"../../chunks/Accordion-6zb9d92y.js";
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
TabList2,
|
|
9
9
|
TabPanel2,
|
|
10
10
|
Tabs2
|
|
11
|
-
} from "../../chunks/Accordion-
|
|
11
|
+
} from "../../chunks/Accordion-j4d58grp.js";
|
|
12
12
|
import"../../chunks/Accordion-kcx57mk5.js";
|
|
13
13
|
import"../../chunks/Accordion-grfbz6f2.js";
|
|
14
14
|
import"../../chunks/Accordion-6zb9d92y.js";
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
TabList2,
|
|
9
9
|
TabPanel2,
|
|
10
10
|
Tabs2
|
|
11
|
-
} from "../../chunks/Accordion-
|
|
11
|
+
} from "../../chunks/Accordion-j4d58grp.js";
|
|
12
12
|
import"../../chunks/Accordion-kcx57mk5.js";
|
|
13
13
|
import"../../chunks/Accordion-grfbz6f2.js";
|
|
14
14
|
import"../../chunks/Accordion-6zb9d92y.js";
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
TabList2,
|
|
9
9
|
TabPanel2,
|
|
10
10
|
Tabs2
|
|
11
|
-
} from "../../chunks/Accordion-
|
|
11
|
+
} from "../../chunks/Accordion-j4d58grp.js";
|
|
12
12
|
import"../../chunks/Accordion-kcx57mk5.js";
|
|
13
13
|
import"../../chunks/Accordion-grfbz6f2.js";
|
|
14
14
|
import"../../chunks/Accordion-6zb9d92y.js";
|
package/web-dist/manifest.json
CHANGED
|
@@ -867,14 +867,14 @@
|
|
|
867
867
|
"chunks/Accordion-eqvdv7tt.js",
|
|
868
868
|
"chunks/Accordion-f05a7r28.js",
|
|
869
869
|
"chunks/Accordion-f5swy5bs.js",
|
|
870
|
+
"chunks/Accordion-fjnck2tg.js",
|
|
870
871
|
"chunks/Accordion-fre84yaq.js",
|
|
871
872
|
"chunks/Accordion-ftjkdjqs.js",
|
|
872
873
|
"chunks/Accordion-gbba10rg.js",
|
|
873
874
|
"chunks/Accordion-grfbz6f2.js",
|
|
874
|
-
"chunks/Accordion-
|
|
875
|
+
"chunks/Accordion-hz4xaqjf.js",
|
|
875
876
|
"chunks/Accordion-jh7nxehr.js",
|
|
876
877
|
"chunks/Accordion-kcx57mk5.js",
|
|
877
|
-
"chunks/Accordion-kpq8dhze.js",
|
|
878
878
|
"chunks/Accordion-mnac2z83.js",
|
|
879
879
|
"chunks/Accordion-paha5aje.js",
|
|
880
880
|
"chunks/Accordion-qpwhmqzd.js",
|
|
@@ -1076,7 +1076,7 @@
|
|
|
1076
1076
|
"chunks/Accordion-fre84yaq.js",
|
|
1077
1077
|
"chunks/Accordion-ftjkdjqs.js",
|
|
1078
1078
|
"chunks/Accordion-grfbz6f2.js",
|
|
1079
|
-
"chunks/Accordion-
|
|
1079
|
+
"chunks/Accordion-hz4xaqjf.js",
|
|
1080
1080
|
"chunks/Accordion-jh7nxehr.js",
|
|
1081
1081
|
"chunks/Accordion-kcx57mk5.js",
|
|
1082
1082
|
"chunks/Accordion-sz21xsf4.js",
|
|
@@ -1488,7 +1488,7 @@
|
|
|
1488
1488
|
"chunks/Accordion-fre84yaq.js",
|
|
1489
1489
|
"chunks/Accordion-ftjkdjqs.js",
|
|
1490
1490
|
"chunks/Accordion-grfbz6f2.js",
|
|
1491
|
-
"chunks/Accordion-
|
|
1491
|
+
"chunks/Accordion-hz4xaqjf.js",
|
|
1492
1492
|
"chunks/Accordion-jh7nxehr.js",
|
|
1493
1493
|
"chunks/Accordion-kcx57mk5.js",
|
|
1494
1494
|
"chunks/Accordion-sz21xsf4.js",
|
|
@@ -1520,7 +1520,7 @@
|
|
|
1520
1520
|
"chunks/Accordion-fre84yaq.js",
|
|
1521
1521
|
"chunks/Accordion-ftjkdjqs.js",
|
|
1522
1522
|
"chunks/Accordion-grfbz6f2.js",
|
|
1523
|
-
"chunks/Accordion-
|
|
1523
|
+
"chunks/Accordion-hz4xaqjf.js",
|
|
1524
1524
|
"chunks/Accordion-jh7nxehr.js",
|
|
1525
1525
|
"chunks/Accordion-kcx57mk5.js",
|
|
1526
1526
|
"chunks/Accordion-sz21xsf4.js",
|
|
@@ -1552,7 +1552,7 @@
|
|
|
1552
1552
|
"chunks/Accordion-fre84yaq.js",
|
|
1553
1553
|
"chunks/Accordion-ftjkdjqs.js",
|
|
1554
1554
|
"chunks/Accordion-grfbz6f2.js",
|
|
1555
|
-
"chunks/Accordion-
|
|
1555
|
+
"chunks/Accordion-hz4xaqjf.js",
|
|
1556
1556
|
"chunks/Accordion-jh7nxehr.js",
|
|
1557
1557
|
"chunks/Accordion-kcx57mk5.js",
|
|
1558
1558
|
"chunks/Accordion-sz21xsf4.js",
|
|
@@ -2391,7 +2391,7 @@
|
|
|
2391
2391
|
"chunks/Accordion-fre84yaq.js",
|
|
2392
2392
|
"chunks/Accordion-ftjkdjqs.js",
|
|
2393
2393
|
"chunks/Accordion-grfbz6f2.js",
|
|
2394
|
-
"chunks/Accordion-
|
|
2394
|
+
"chunks/Accordion-hz4xaqjf.js",
|
|
2395
2395
|
"chunks/Accordion-jh7nxehr.js",
|
|
2396
2396
|
"chunks/Accordion-kcx57mk5.js",
|
|
2397
2397
|
"chunks/Accordion-sz21xsf4.js",
|
|
@@ -2577,14 +2577,14 @@
|
|
|
2577
2577
|
"chunks/Accordion-eqvdv7tt.js",
|
|
2578
2578
|
"chunks/Accordion-f05a7r28.js",
|
|
2579
2579
|
"chunks/Accordion-f5swy5bs.js",
|
|
2580
|
+
"chunks/Accordion-fjnck2tg.js",
|
|
2580
2581
|
"chunks/Accordion-fre84yaq.js",
|
|
2581
2582
|
"chunks/Accordion-ftjkdjqs.js",
|
|
2582
2583
|
"chunks/Accordion-gbba10rg.js",
|
|
2583
2584
|
"chunks/Accordion-grfbz6f2.js",
|
|
2584
|
-
"chunks/Accordion-
|
|
2585
|
+
"chunks/Accordion-hz4xaqjf.js",
|
|
2585
2586
|
"chunks/Accordion-jh7nxehr.js",
|
|
2586
2587
|
"chunks/Accordion-kcx57mk5.js",
|
|
2587
|
-
"chunks/Accordion-kpq8dhze.js",
|
|
2588
2588
|
"chunks/Accordion-paha5aje.js",
|
|
2589
2589
|
"chunks/Accordion-qpwhmqzd.js",
|
|
2590
2590
|
"chunks/Accordion-r4c9k9y7.js",
|
|
@@ -2620,14 +2620,14 @@
|
|
|
2620
2620
|
"chunks/Accordion-eqvdv7tt.js",
|
|
2621
2621
|
"chunks/Accordion-f05a7r28.js",
|
|
2622
2622
|
"chunks/Accordion-f5swy5bs.js",
|
|
2623
|
+
"chunks/Accordion-fjnck2tg.js",
|
|
2623
2624
|
"chunks/Accordion-fre84yaq.js",
|
|
2624
2625
|
"chunks/Accordion-ftjkdjqs.js",
|
|
2625
2626
|
"chunks/Accordion-gbba10rg.js",
|
|
2626
2627
|
"chunks/Accordion-grfbz6f2.js",
|
|
2627
|
-
"chunks/Accordion-
|
|
2628
|
+
"chunks/Accordion-hz4xaqjf.js",
|
|
2628
2629
|
"chunks/Accordion-jh7nxehr.js",
|
|
2629
2630
|
"chunks/Accordion-kcx57mk5.js",
|
|
2630
|
-
"chunks/Accordion-kpq8dhze.js",
|
|
2631
2631
|
"chunks/Accordion-paha5aje.js",
|
|
2632
2632
|
"chunks/Accordion-qpwhmqzd.js",
|
|
2633
2633
|
"chunks/Accordion-r4c9k9y7.js",
|
|
@@ -2663,14 +2663,14 @@
|
|
|
2663
2663
|
"chunks/Accordion-eqvdv7tt.js",
|
|
2664
2664
|
"chunks/Accordion-f05a7r28.js",
|
|
2665
2665
|
"chunks/Accordion-f5swy5bs.js",
|
|
2666
|
+
"chunks/Accordion-fjnck2tg.js",
|
|
2666
2667
|
"chunks/Accordion-fre84yaq.js",
|
|
2667
2668
|
"chunks/Accordion-ftjkdjqs.js",
|
|
2668
2669
|
"chunks/Accordion-gbba10rg.js",
|
|
2669
2670
|
"chunks/Accordion-grfbz6f2.js",
|
|
2670
|
-
"chunks/Accordion-
|
|
2671
|
+
"chunks/Accordion-hz4xaqjf.js",
|
|
2671
2672
|
"chunks/Accordion-jh7nxehr.js",
|
|
2672
2673
|
"chunks/Accordion-kcx57mk5.js",
|
|
2673
|
-
"chunks/Accordion-kpq8dhze.js",
|
|
2674
2674
|
"chunks/Accordion-paha5aje.js",
|
|
2675
2675
|
"chunks/Accordion-qpwhmqzd.js",
|
|
2676
2676
|
"chunks/Accordion-r4c9k9y7.js",
|
|
@@ -2706,14 +2706,14 @@
|
|
|
2706
2706
|
"chunks/Accordion-eqvdv7tt.js",
|
|
2707
2707
|
"chunks/Accordion-f05a7r28.js",
|
|
2708
2708
|
"chunks/Accordion-f5swy5bs.js",
|
|
2709
|
+
"chunks/Accordion-fjnck2tg.js",
|
|
2709
2710
|
"chunks/Accordion-fre84yaq.js",
|
|
2710
2711
|
"chunks/Accordion-ftjkdjqs.js",
|
|
2711
2712
|
"chunks/Accordion-gbba10rg.js",
|
|
2712
2713
|
"chunks/Accordion-grfbz6f2.js",
|
|
2713
|
-
"chunks/Accordion-
|
|
2714
|
+
"chunks/Accordion-hz4xaqjf.js",
|
|
2714
2715
|
"chunks/Accordion-jh7nxehr.js",
|
|
2715
2716
|
"chunks/Accordion-kcx57mk5.js",
|
|
2716
|
-
"chunks/Accordion-kpq8dhze.js",
|
|
2717
2717
|
"chunks/Accordion-paha5aje.js",
|
|
2718
2718
|
"chunks/Accordion-qpwhmqzd.js",
|
|
2719
2719
|
"chunks/Accordion-r4c9k9y7.js",
|
|
@@ -2790,11 +2790,11 @@
|
|
|
2790
2790
|
"chunks/Accordion-59pa0677.js",
|
|
2791
2791
|
"chunks/Accordion-6zb9d92y.js",
|
|
2792
2792
|
"chunks/Accordion-9qvmwkxe.js",
|
|
2793
|
-
"chunks/Accordion-aj6fsjhv.js",
|
|
2794
2793
|
"chunks/Accordion-ars389m1.js",
|
|
2795
2794
|
"chunks/Accordion-f5swy5bs.js",
|
|
2796
2795
|
"chunks/Accordion-fre84yaq.js",
|
|
2797
2796
|
"chunks/Accordion-grfbz6f2.js",
|
|
2797
|
+
"chunks/Accordion-j4d58grp.js",
|
|
2798
2798
|
"chunks/Accordion-jh7nxehr.js",
|
|
2799
2799
|
"chunks/Accordion-kcx57mk5.js",
|
|
2800
2800
|
"chunks/Accordion-mnac2z83.js",
|
|
@@ -2817,11 +2817,11 @@
|
|
|
2817
2817
|
"chunks/Accordion-59pa0677.js",
|
|
2818
2818
|
"chunks/Accordion-6zb9d92y.js",
|
|
2819
2819
|
"chunks/Accordion-9qvmwkxe.js",
|
|
2820
|
-
"chunks/Accordion-aj6fsjhv.js",
|
|
2821
2820
|
"chunks/Accordion-ars389m1.js",
|
|
2822
2821
|
"chunks/Accordion-f5swy5bs.js",
|
|
2823
2822
|
"chunks/Accordion-fre84yaq.js",
|
|
2824
2823
|
"chunks/Accordion-grfbz6f2.js",
|
|
2824
|
+
"chunks/Accordion-j4d58grp.js",
|
|
2825
2825
|
"chunks/Accordion-jh7nxehr.js",
|
|
2826
2826
|
"chunks/Accordion-kcx57mk5.js",
|
|
2827
2827
|
"chunks/Accordion-mnac2z83.js",
|
|
@@ -2844,11 +2844,11 @@
|
|
|
2844
2844
|
"chunks/Accordion-59pa0677.js",
|
|
2845
2845
|
"chunks/Accordion-6zb9d92y.js",
|
|
2846
2846
|
"chunks/Accordion-9qvmwkxe.js",
|
|
2847
|
-
"chunks/Accordion-aj6fsjhv.js",
|
|
2848
2847
|
"chunks/Accordion-ars389m1.js",
|
|
2849
2848
|
"chunks/Accordion-f5swy5bs.js",
|
|
2850
2849
|
"chunks/Accordion-fre84yaq.js",
|
|
2851
2850
|
"chunks/Accordion-grfbz6f2.js",
|
|
2851
|
+
"chunks/Accordion-j4d58grp.js",
|
|
2852
2852
|
"chunks/Accordion-jh7nxehr.js",
|
|
2853
2853
|
"chunks/Accordion-kcx57mk5.js",
|
|
2854
2854
|
"chunks/Accordion-mnac2z83.js",
|
|
@@ -2871,11 +2871,11 @@
|
|
|
2871
2871
|
"chunks/Accordion-59pa0677.js",
|
|
2872
2872
|
"chunks/Accordion-6zb9d92y.js",
|
|
2873
2873
|
"chunks/Accordion-9qvmwkxe.js",
|
|
2874
|
-
"chunks/Accordion-aj6fsjhv.js",
|
|
2875
2874
|
"chunks/Accordion-ars389m1.js",
|
|
2876
2875
|
"chunks/Accordion-f5swy5bs.js",
|
|
2877
2876
|
"chunks/Accordion-fre84yaq.js",
|
|
2878
2877
|
"chunks/Accordion-grfbz6f2.js",
|
|
2878
|
+
"chunks/Accordion-j4d58grp.js",
|
|
2879
2879
|
"chunks/Accordion-jh7nxehr.js",
|
|
2880
2880
|
"chunks/Accordion-kcx57mk5.js",
|
|
2881
2881
|
"chunks/Accordion-mnac2z83.js",
|
|
@@ -3127,7 +3127,7 @@
|
|
|
3127
3127
|
"chunks/Accordion-fre84yaq.js",
|
|
3128
3128
|
"chunks/Accordion-ftjkdjqs.js",
|
|
3129
3129
|
"chunks/Accordion-grfbz6f2.js",
|
|
3130
|
-
"chunks/Accordion-
|
|
3130
|
+
"chunks/Accordion-hz4xaqjf.js",
|
|
3131
3131
|
"chunks/Accordion-jh7nxehr.js",
|
|
3132
3132
|
"chunks/Accordion-kcx57mk5.js",
|
|
3133
3133
|
"chunks/Accordion-paha5aje.js",
|