@ankhorage/zora 25.10.2 → 25.10.4
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/accordion/adapters/inbound/AccordionItem.js +1 -1
- package/dist/features/accordion/adapters/inbound/AccordionItem.js.map +1 -1
- package/package.json +7 -7
- package/src/features/accordion/adapters/inbound/AccordionItem.test.tsx +136 -0
- package/src/features/accordion/adapters/inbound/AccordionItem.tsx +5 -1
- package/web-dist/chunks/{Accordion-pxbpwn9v.js → Accordion-xzgves7b.js} +1 -0
- package/web-dist/components/accordion/Accordion.js +1 -1
- package/web-dist/components/accordion-item/AccordionItem.js +1 -1
- package/web-dist/manifest.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 25.10.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 5590c6c: Expose the current expanded state on web accordion triggers through `aria-expanded`.
|
|
8
|
+
|
|
9
|
+
## 25.10.3
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 877e367: Update dependencies: `@ankhorage/contracts`, `@ankhorage/paradox`, `@ankhorage/reader`, `@ankhorage/runtime`, `@ankhorage/surface`.
|
|
14
|
+
|
|
3
15
|
## 25.10.2
|
|
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
|
|
|
@@ -19,7 +19,7 @@ function AccordionItemInner({ themeId: _themeId, mode: _mode, actions, children,
|
|
|
19
19
|
<View gap="none">
|
|
20
20
|
<View align="center" direction="row" gap="s">
|
|
21
21
|
<View flex={1}>
|
|
22
|
-
<SurfaceAccordionTrigger interactionPolicy={interactionPolicy} style={triggerStyle}>
|
|
22
|
+
<SurfaceAccordionTrigger aria-expanded={open} interactionPolicy={interactionPolicy} style={triggerStyle}>
|
|
23
23
|
<View px="m" py="m">
|
|
24
24
|
<View align="center" direction="row" gap="m">
|
|
25
25
|
{icon ? <Icon {...icon}/> : null}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionItem.js","sourceRoot":"","sources":["../../../../../src/features/accordion/adapters/inbound/AccordionItem.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,IAAI,uBAAuB,EAC3C,aAAa,IAAI,oBAAoB,EACrC,gBAAgB,IAAI,uBAAuB,GAC5C,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAE9F,4FAA4F;AAC5F,MAAM,CAAC,MAAM,aAAa,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;AAEpE,MAAM,YAAY,GAAc,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAE5C,oFAAoF;AACpF,SAAS,kBAAkB,CAAC,EAC1B,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,OAAO,EACP,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,iBAAiB,EACjB,MAAM,EACN,KAAK,EACL,KAAK,EACL,GAAG,gBAAgB,EACA;IACnB,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC7D,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,IAAI,GAAG,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAErD,OAAO,CACL,CAAC,oBAAoB,CACnB,IAAI,gBAAgB,CAAC,CACrB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,iBAAiB,CAAC,CAAC,iBAAiB,CAAC,CACrC,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,KAAK,CAAC,CAAC,KAAK,CAAC,CAEb;MAAA,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CACd;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAC1C;UAAA,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACZ;YAAA,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,CAAC,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"AccordionItem.js","sourceRoot":"","sources":["../../../../../src/features/accordion/adapters/inbound/AccordionItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n AccordionContent as SurfaceAccordionContent,\n AccordionItem as SurfaceAccordionItem,\n AccordionTrigger as SurfaceAccordionTrigger,\n} from '@ankhorage/surface';\nimport React from 'react';\nimport type { ViewStyle } from 'react-native';\n\nimport type { AccordionItemProps } from '../../../../types/accordion';\nimport { Icon } from '../../../icon/public';\nimport { Divider, View } from '../../../layout/public';\nimport { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';\nimport { Heading, Text } from '../../../typography/public';\nimport { AccordionPresentationContext } from '../../composition/AccordionPresentationContext';\n\n/*** Renders one opinionated ZORA accordion item over Surface trigger/content primitives. */\nexport const AccordionItem = withZoraThemeScope(AccordionItemInner);\n\nconst triggerStyle: ViewStyle = { flex: 1 };\n\n/*** Composes the item header, optional actions, expanded content, and separator. */\nfunction AccordionItemInner({\n themeId: _themeId,\n mode: _mode,\n actions,\n children,\n description,\n disabled,\n icon,\n interactionPolicy,\n testID,\n title,\n value,\n ...surfaceItemProps\n}: AccordionItemProps) {\n const presentation = React.use(AccordionPresentationContext);\n if (!presentation) {\n throw new Error('AccordionItem must be rendered inside Accordion.');\n }\n\n const open = presentation.openValues.includes(value);\n\n return (\n <SurfaceAccordionItem\n {...surfaceItemProps}\n disabled={disabled}\n interactionPolicy={interactionPolicy}\n testID={testID}\n value={value}\n >\n <View gap=\"none\">\n <View align=\"center\" direction=\"row\" gap=\"s\">\n <View flex={1}>\n <SurfaceAccordionTrigger\n aria-expanded={open}\n interactionPolicy={interactionPolicy}\n style={triggerStyle}\n >\n <View px=\"m\" py=\"m\">\n <View align=\"center\" direction=\"row\" gap=\"m\">\n {icon ? <Icon {...icon} /> : null}\n <View flex={1}>\n <View gap=\"xs\">\n <Heading level={4}>{title}</Heading>\n {description ? (\n <Text emphasis=\"muted\" variant=\"bodySmall\">\n {description}\n </Text>\n ) : null}\n </View>\n </View>\n <Icon name={open ? 'chevron-up-outline' : 'chevron-down-outline'} size=\"m\" />\n </View>\n </View>\n </SurfaceAccordionTrigger>\n </View>\n {actions ? <View pr=\"m\">{actions}</View> : null}\n </View>\n\n <SurfaceAccordionContent>\n <View px=\"m\" pb=\"m\">\n <View gap=\"m\">{children}</View>\n </View>\n </SurfaceAccordionContent>\n\n <Divider />\n </View>\n </SurfaceAccordionItem>\n );\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ankhorage/zora",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "25.10.
|
|
4
|
+
"version": "25.10.4",
|
|
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": {
|
|
@@ -44,12 +44,12 @@
|
|
|
44
44
|
"@ankhorage/ankh": "^0.13.3",
|
|
45
45
|
"@ankhorage/capability": "^0.2.2",
|
|
46
46
|
"@ankhorage/color-theory": "^0.3.2",
|
|
47
|
-
"@ankhorage/contracts": "^26.
|
|
47
|
+
"@ankhorage/contracts": "^26.3.0",
|
|
48
48
|
"@ankhorage/game": "^0.1.3",
|
|
49
49
|
"@ankhorage/grid-view": "^0.5.0",
|
|
50
|
-
"@ankhorage/reader": "^0.1.
|
|
51
|
-
"@ankhorage/runtime": "^5.2.
|
|
52
|
-
"@ankhorage/surface": "^9.4.
|
|
50
|
+
"@ankhorage/reader": "^0.1.2",
|
|
51
|
+
"@ankhorage/runtime": "^5.2.2",
|
|
52
|
+
"@ankhorage/surface": "^9.4.13",
|
|
53
53
|
"@ankhorage/utility": "^1.10.0",
|
|
54
54
|
"chess.js": "^1.4.0",
|
|
55
55
|
"expo-document-picker": "~57.0.3",
|
|
@@ -159,8 +159,8 @@
|
|
|
159
159
|
"version-packages": "ankhorage-changeset version"
|
|
160
160
|
},
|
|
161
161
|
"devDependencies": {
|
|
162
|
-
"@ankhorage/devtools": "^2.3.
|
|
163
|
-
"@ankhorage/paradox": "^0.3.
|
|
162
|
+
"@ankhorage/devtools": "^2.3.42",
|
|
163
|
+
"@ankhorage/paradox": "^0.3.6",
|
|
164
164
|
"@react-native-vector-icons/fontawesome": "^14.0.0",
|
|
165
165
|
"@react-native-vector-icons/fontawesome5": "^14.0.0",
|
|
166
166
|
"@react-native-vector-icons/fontawesome6": "^14.0.0",
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { join } from 'node:path';
|
|
2
|
+
import { pathToFileURL } from 'node:url';
|
|
3
|
+
|
|
4
|
+
import { expect, test } from 'bun:test';
|
|
5
|
+
import { Window } from 'happy-dom';
|
|
6
|
+
import React, { act } from 'react';
|
|
7
|
+
import { createRoot } from 'react-dom/client';
|
|
8
|
+
|
|
9
|
+
import type { ZoraProvider as ZoraProviderComponent } from '../../../theme/runtime';
|
|
10
|
+
import type { Accordion as AccordionComponent } from './Accordion';
|
|
11
|
+
import type { AccordionItem as AccordionItemComponent } from './AccordionItem';
|
|
12
|
+
|
|
13
|
+
const webDistRoot = join(import.meta.dir, '../../../../../web-dist');
|
|
14
|
+
|
|
15
|
+
test('reflects collapsed and expanded accordion state in the web DOM', async () => {
|
|
16
|
+
await withBrowserRoot(async (browserWindow, host, root) => {
|
|
17
|
+
const components = await loadWebAccordion();
|
|
18
|
+
await renderAccordion(root, components);
|
|
19
|
+
const trigger = host.querySelector('[role="button"]');
|
|
20
|
+
if (!trigger) throw new Error('Expected an accordion trigger.');
|
|
21
|
+
|
|
22
|
+
expect(trigger.getAttribute('aria-expanded')).toBe('false');
|
|
23
|
+
await click(browserWindow, trigger);
|
|
24
|
+
expect(trigger.getAttribute('aria-expanded')).toBe('true');
|
|
25
|
+
await click(browserWindow, trigger);
|
|
26
|
+
expect(trigger.getAttribute('aria-expanded')).toBe('false');
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
test('leaves native trigger accessibility owned by the published Surface primitive', async () => {
|
|
31
|
+
const [zoraSource, surfaceTrigger] = await Promise.all([
|
|
32
|
+
Bun.file(new URL('./AccordionItem.tsx', import.meta.url)).text(),
|
|
33
|
+
Bun.file(
|
|
34
|
+
new URL(
|
|
35
|
+
'../../../../../node_modules/@ankhorage/surface/dist/features/accordion/adapters/inbound/AccordionTrigger.js',
|
|
36
|
+
import.meta.url,
|
|
37
|
+
),
|
|
38
|
+
).text(),
|
|
39
|
+
]);
|
|
40
|
+
|
|
41
|
+
expect(zoraSource).not.toContain('accessibilityState');
|
|
42
|
+
expect(surfaceTrigger).toContain('accessibilityRole="button"');
|
|
43
|
+
expect(surfaceTrigger).toContain(
|
|
44
|
+
'accessibilityState={{ disabled: resolvedDisabled, expanded: item.open }}',
|
|
45
|
+
);
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
/** Runs the web adapter through a mounted DOM root and restores its host globals. */
|
|
49
|
+
async function withBrowserRoot(
|
|
50
|
+
callback: (
|
|
51
|
+
browserWindow: Window,
|
|
52
|
+
host: HTMLDivElement,
|
|
53
|
+
root: ReturnType<typeof createRoot>,
|
|
54
|
+
) => Promise<void>,
|
|
55
|
+
) {
|
|
56
|
+
const browserWindow = new Window();
|
|
57
|
+
const keys = [
|
|
58
|
+
'window',
|
|
59
|
+
'document',
|
|
60
|
+
'Node',
|
|
61
|
+
'navigator',
|
|
62
|
+
'ShadowRoot',
|
|
63
|
+
'IS_REACT_ACT_ENVIRONMENT',
|
|
64
|
+
] as const;
|
|
65
|
+
const previous = keys.map(
|
|
66
|
+
(key) => [key, Object.getOwnPropertyDescriptor(globalThis, key)] as const,
|
|
67
|
+
);
|
|
68
|
+
Object.assign(globalThis, {
|
|
69
|
+
IS_REACT_ACT_ENVIRONMENT: true,
|
|
70
|
+
window: browserWindow,
|
|
71
|
+
document: browserWindow.document,
|
|
72
|
+
Node: browserWindow.Node,
|
|
73
|
+
navigator: browserWindow.navigator,
|
|
74
|
+
ShadowRoot: browserWindow.ShadowRoot,
|
|
75
|
+
});
|
|
76
|
+
const host = document.createElement('div');
|
|
77
|
+
document.body.appendChild(host);
|
|
78
|
+
const root = createRoot(host);
|
|
79
|
+
|
|
80
|
+
try {
|
|
81
|
+
await callback(browserWindow, host, root);
|
|
82
|
+
} finally {
|
|
83
|
+
await act(() => Promise.resolve().then(() => root.unmount()));
|
|
84
|
+
browserWindow.close();
|
|
85
|
+
for (const [key, descriptor] of previous) {
|
|
86
|
+
if (descriptor) Object.defineProperty(globalThis, key, descriptor);
|
|
87
|
+
else Reflect.deleteProperty(globalThis, key);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/** Renders the smallest public ZORA accordion through its theme boundary. */
|
|
93
|
+
async function loadWebAccordion() {
|
|
94
|
+
const [{ Accordion }, { AccordionItem }, { ZoraProvider }] = await Promise.all([
|
|
95
|
+
import(pathToFileURL(join(webDistRoot, 'components/accordion/index.js')).href) as Promise<{
|
|
96
|
+
Accordion: typeof AccordionComponent;
|
|
97
|
+
}>,
|
|
98
|
+
import(pathToFileURL(join(webDistRoot, 'components/accordion-item/index.js')).href) as Promise<{
|
|
99
|
+
AccordionItem: typeof AccordionItemComponent;
|
|
100
|
+
}>,
|
|
101
|
+
import(pathToFileURL(join(webDistRoot, 'runtime/ZoraProvider.js')).href) as Promise<{
|
|
102
|
+
ZoraProvider: typeof ZoraProviderComponent;
|
|
103
|
+
}>,
|
|
104
|
+
]);
|
|
105
|
+
|
|
106
|
+
return { Accordion, AccordionItem, ZoraProvider };
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/** Renders the smallest public ZORA accordion through its theme boundary. */
|
|
110
|
+
function renderAccordion(
|
|
111
|
+
root: ReturnType<typeof createRoot>,
|
|
112
|
+
{ Accordion, AccordionItem, ZoraProvider }: Awaited<ReturnType<typeof loadWebAccordion>>,
|
|
113
|
+
) {
|
|
114
|
+
return act(() =>
|
|
115
|
+
Promise.resolve().then(() =>
|
|
116
|
+
root.render(
|
|
117
|
+
<ZoraProvider mode="light">
|
|
118
|
+
<Accordion collapsible>
|
|
119
|
+
<AccordionItem title="Details" value="details">
|
|
120
|
+
<div>Expanded content</div>
|
|
121
|
+
</AccordionItem>
|
|
122
|
+
</Accordion>
|
|
123
|
+
</ZoraProvider>,
|
|
124
|
+
),
|
|
125
|
+
),
|
|
126
|
+
);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/** Activates the mounted web trigger through React's interaction boundary. */
|
|
130
|
+
function click(browserWindow: Window, trigger: Element) {
|
|
131
|
+
return act(() =>
|
|
132
|
+
Promise.resolve().then(() => {
|
|
133
|
+
trigger.dispatchEvent(new browserWindow.MouseEvent('click', { bubbles: true }));
|
|
134
|
+
}),
|
|
135
|
+
);
|
|
136
|
+
}
|
|
@@ -51,7 +51,11 @@ function AccordionItemInner({
|
|
|
51
51
|
<View gap="none">
|
|
52
52
|
<View align="center" direction="row" gap="s">
|
|
53
53
|
<View flex={1}>
|
|
54
|
-
<SurfaceAccordionTrigger
|
|
54
|
+
<SurfaceAccordionTrigger
|
|
55
|
+
aria-expanded={open}
|
|
56
|
+
interactionPolicy={interactionPolicy}
|
|
57
|
+
style={triggerStyle}
|
|
58
|
+
>
|
|
55
59
|
<View px="m" py="m">
|
|
56
60
|
<View align="center" direction="row" gap="m">
|
|
57
61
|
{icon ? <Icon {...icon} /> : null}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import {
|
|
3
3
|
Accordion2,
|
|
4
4
|
AccordionItem2
|
|
5
|
-
} from "../../chunks/Accordion-
|
|
5
|
+
} from "../../chunks/Accordion-xzgves7b.js";
|
|
6
6
|
import"../../chunks/Accordion-6wrr910w.js";
|
|
7
7
|
import"../../chunks/Accordion-vj1m2wck.js";
|
|
8
8
|
import"../../chunks/Accordion-bfzeab9x.js";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import {
|
|
3
3
|
Accordion2,
|
|
4
4
|
AccordionItem2
|
|
5
|
-
} from "../../chunks/Accordion-
|
|
5
|
+
} from "../../chunks/Accordion-xzgves7b.js";
|
|
6
6
|
import"../../chunks/Accordion-6wrr910w.js";
|
|
7
7
|
import"../../chunks/Accordion-vj1m2wck.js";
|
|
8
8
|
import"../../chunks/Accordion-bfzeab9x.js";
|
package/web-dist/manifest.json
CHANGED
|
@@ -46,10 +46,10 @@
|
|
|
46
46
|
"chunks/Accordion-fcczvwgg.js",
|
|
47
47
|
"chunks/Accordion-fre84yaq.js",
|
|
48
48
|
"chunks/Accordion-nh0cs9hq.js",
|
|
49
|
-
"chunks/Accordion-pxbpwn9v.js",
|
|
50
49
|
"chunks/Accordion-srjya6dz.js",
|
|
51
50
|
"chunks/Accordion-vj1m2wck.js",
|
|
52
51
|
"chunks/Accordion-xgpzh4wq.js",
|
|
52
|
+
"chunks/Accordion-xzgves7b.js",
|
|
53
53
|
"chunks/Accordion-yq16wwh5.js",
|
|
54
54
|
"chunks/Accordion-zj4wnm3e.js"
|
|
55
55
|
],
|
|
@@ -76,10 +76,10 @@
|
|
|
76
76
|
"chunks/Accordion-fcczvwgg.js",
|
|
77
77
|
"chunks/Accordion-fre84yaq.js",
|
|
78
78
|
"chunks/Accordion-nh0cs9hq.js",
|
|
79
|
-
"chunks/Accordion-pxbpwn9v.js",
|
|
80
79
|
"chunks/Accordion-srjya6dz.js",
|
|
81
80
|
"chunks/Accordion-vj1m2wck.js",
|
|
82
81
|
"chunks/Accordion-xgpzh4wq.js",
|
|
82
|
+
"chunks/Accordion-xzgves7b.js",
|
|
83
83
|
"chunks/Accordion-yq16wwh5.js",
|
|
84
84
|
"chunks/Accordion-zj4wnm3e.js"
|
|
85
85
|
],
|