achery-ui 0.10.8 → 0.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +8 -3
  2. package/dist/{chunk-SZRZ6HQ6.js → chunk-NBDD2PAR.js} +62 -2
  3. package/dist/chunk-NBDD2PAR.js.map +1 -0
  4. package/dist/{chunk-V5XG7NXB.cjs → chunk-QKXPZEGC.cjs} +62 -2
  5. package/dist/chunk-QKXPZEGC.cjs.map +1 -0
  6. package/dist/index.cjs +6 -4
  7. package/dist/index.cjs.map +1 -1
  8. package/dist/index.css +70 -2
  9. package/dist/index.css.map +1 -1
  10. package/dist/index.d.cts +19 -3
  11. package/dist/index.d.ts +19 -3
  12. package/dist/index.js +4 -2
  13. package/dist/index.js.map +1 -1
  14. package/dist/native/index.cjs +495 -4
  15. package/dist/native/index.cjs.map +1 -1
  16. package/dist/native/index.d.cts +186 -3
  17. package/dist/native/index.d.ts +186 -3
  18. package/dist/native/index.js +493 -6
  19. package/dist/native/index.js.map +1 -1
  20. package/dist/{theme-DOaMliRj.d.cts → theme-B9RbXFJn.d.cts} +24 -2
  21. package/dist/{theme-DOaMliRj.d.ts → theme-B9RbXFJn.d.ts} +24 -2
  22. package/dist/tokens/index.cjs +48 -48
  23. package/dist/tokens/index.d.cts +19 -1
  24. package/dist/tokens/index.d.ts +19 -1
  25. package/dist/tokens/index.js +2 -2
  26. package/package.json +6 -1
  27. package/src/native/README.md +155 -0
  28. package/src/native/components/BottomSheet.tsx +284 -0
  29. package/src/native/components/BottomTabBar.tsx +238 -0
  30. package/src/native/components/Disclosure.tsx +158 -0
  31. package/src/native/components/GlyphPicker.tsx +2 -1
  32. package/src/native/components/index.ts +9 -0
  33. package/src/native/index.ts +4 -0
  34. package/src/native/theme/ThemeContext.tsx +12 -1
  35. package/src/types/index.ts +1 -1
  36. package/src/types/theme.ts +26 -1
  37. package/dist/chunk-SZRZ6HQ6.js.map +0 -1
  38. package/dist/chunk-V5XG7NXB.cjs.map +0 -1
package/README.md CHANGED
@@ -62,8 +62,9 @@ function RecipeCard({ recipe }) {
62
62
  | `achery-ui` | All components + theme | No (DOM + CSS) |
63
63
  | `achery-ui/style.css` | Component styles | No |
64
64
  | `achery-ui/tokens` | Design tokens as TypeScript values | **Yes** |
65
+ | `achery-ui/native` | React Native components + `NativeThemeProvider` | **Yes** |
65
66
 
66
- The `/tokens` entry is zero-DOM, zero-React — safe to import from React Native or any non-browser context.
67
+ The `/tokens` entry is zero-DOM, zero-React — safe to import from React Native or any non-browser context. The `/native` entry ships a full component set built on React Native primitives with no CSS dependency.
67
68
 
68
69
  ---
69
70
 
@@ -106,8 +107,10 @@ import { useTheme } from 'achery-ui'
106
107
  const { theme, toggleTheme, accent, setAccent } = useTheme()
107
108
  ```
108
109
 
109
- **Themes:** `light` · `dark`
110
- **Accents:** `terracotta` · `moss` · `plum` · `ochre` · `rust` · `copper`
110
+ **Themes:** `light` · `dark` · `system`
111
+ **Accents:** `terracotta` · `moss` · `plum` · `ochre` · `rust` · `copper` · `slate` · `verdigris` · `mauve` · `amber` · `fern` · `blush`
112
+ **Dial:** `underline` · `chrome` · `surface` — controls how loudly the accent runs
113
+ **Surface origin:** `web-first` · `native-first` · `parity` · `native-only` — declares the adaptation ladder
111
114
 
112
115
  Full theming guide: [src/theme/README.md](src/theme/README.md)
113
116
 
@@ -117,6 +120,8 @@ Full theming guide: [src/theme/README.md](src/theme/README.md)
117
120
 
118
121
  See [docs/styleguide.md](docs/styleguide.md) for the full visual language reference — palette rationale, typography roles, spacing scale, glyphs, motion, and copy voice.
119
122
 
123
+ For cross-surface adaptation (web ↔ mobile ↔ native) — the disclosure ladder, promotion ladder, and Achery-on-touch rules — see [src/native/README.md](src/native/README.md).
124
+
120
125
  ---
121
126
 
122
127
  ## Versioning
@@ -20,6 +20,24 @@ var palette = {
20
20
  plumLight: "#8b6fa8",
21
21
  rust: "#8a3a22",
22
22
  ochre: "#b8924a",
23
+ slate: "#195a73",
24
+ slateDeep: "#004157",
25
+ slateLight: "#5189a1",
26
+ verdigris: "#00685f",
27
+ verdigrisDeep: "#004d46",
28
+ verdigrisLight: "#3f9086",
29
+ mauve: "#76425b",
30
+ mauveDeep: "#5a2b43",
31
+ mauveLight: "#a56c87",
32
+ amber: "#9a6839",
33
+ amberDeep: "#76491d",
34
+ amberLight: "#be8c61",
35
+ fern: "#36643e",
36
+ fernDeep: "#1d4825",
37
+ fernLight: "#618d67",
38
+ blush: "#955c63",
39
+ blushDeep: "#713f45",
40
+ blushLight: "#bc848a",
23
41
  leather: "#6b3a26",
24
42
  leatherMid: "#8a4e34",
25
43
  leatherLight: "#a86a48",
@@ -82,10 +100,52 @@ var accentColors = {
82
100
  deep: palette.copperDeep,
83
101
  fg: palette.ink,
84
102
  fgDark: palette.ink
103
+ },
104
+ slate: {
105
+ main: palette.slate,
106
+ light: palette.slateLight,
107
+ deep: palette.slateDeep,
108
+ fg: palette.paper,
109
+ fgDark: palette.inkDeep
110
+ },
111
+ verdigris: {
112
+ main: palette.verdigris,
113
+ light: palette.verdigrisLight,
114
+ deep: palette.verdigrisDeep,
115
+ fg: palette.paper,
116
+ fgDark: palette.inkDeep
117
+ },
118
+ mauve: {
119
+ main: palette.mauve,
120
+ light: palette.mauveLight,
121
+ deep: palette.mauveDeep,
122
+ fg: palette.paper,
123
+ fgDark: palette.inkDeep
124
+ },
125
+ amber: {
126
+ main: palette.amber,
127
+ light: palette.amberLight,
128
+ deep: palette.amberDeep,
129
+ fg: palette.ink,
130
+ fgDark: palette.ink
131
+ },
132
+ fern: {
133
+ main: palette.fern,
134
+ light: palette.fernLight,
135
+ deep: palette.fernDeep,
136
+ fg: palette.paper,
137
+ fgDark: palette.inkDeep
138
+ },
139
+ blush: {
140
+ main: palette.blush,
141
+ light: palette.blushLight,
142
+ deep: palette.blushDeep,
143
+ fg: palette.paper,
144
+ fgDark: palette.inkDeep
85
145
  }
86
146
  };
87
147
  var accentColorNames = Object.keys(accentColors);
88
148
 
89
149
  export { accentColorNames, accentColors, palette };
90
- //# sourceMappingURL=chunk-SZRZ6HQ6.js.map
91
- //# sourceMappingURL=chunk-SZRZ6HQ6.js.map
150
+ //# sourceMappingURL=chunk-NBDD2PAR.js.map
151
+ //# sourceMappingURL=chunk-NBDD2PAR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/tokens/palette.ts","../src/tokens/accents.ts"],"names":[],"mappings":"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","file":"chunk-NBDD2PAR.js","sourcesContent":["export const palette = {\n ink: '#1f1d18',\n inkDeep: '#14130f',\n\n paper: '#fbf8f0',\n paperWarm: '#f0e9d6',\n paperToasted: '#e6dec5',\n cream: '#e8dfc8',\n creamSoft: '#d8cdb0',\n\n mossDeep: '#2e3a20',\n moss: '#4a5a32',\n mossMid: '#6b7a48',\n mossLight: '#8da866',\n sage: '#b6c898',\n\n terracotta: '#c46a3a',\n terracottaDeep: '#a05526',\n terracottaLight: '#d97a4a',\n\n plum: '#5d4a6a',\n plumMid: '#7a5e8a',\n plumLight: '#8b6fa8',\n\n rust: '#8a3a22',\n ochre: '#b8924a',\n\n slate: '#195a73',\n slateDeep: '#004157',\n slateLight: '#5189a1',\n\n verdigris: '#00685f',\n verdigrisDeep: '#004d46',\n verdigrisLight: '#3f9086',\n\n mauve: '#76425b',\n mauveDeep: '#5a2b43',\n mauveLight: '#a56c87',\n\n amber: '#9a6839',\n amberDeep: '#76491d',\n amberLight: '#be8c61',\n\n fern: '#36643e',\n fernDeep: '#1d4825',\n fernLight: '#618d67',\n\n blush: '#955c63',\n blushDeep: '#713f45',\n blushLight: '#bc848a',\n\n leather: '#6b3a26',\n leatherMid: '#8a4e34',\n leatherLight: '#a86a48',\n\n copper: '#b8742a',\n copperDeep: '#8a531a',\n copperLight: '#d68f48',\n copperPatina: '#5a7a6a',\n\n silver: '#a8a098',\n silverDeep: '#6e6a62',\n silverLight: '#c8c0b6',\n\n wood: '#7a5a3a',\n woodLight: '#a88660',\n woodDeep: '#4a3422',\n\n gold: '#c69a4a',\n goldDeep: '#9a7430',\n goldLight: '#e0bc70',\n\n success: '#6ba03d',\n} as const\n\nexport type PaletteKey = keyof typeof palette\n","import { palette } from './palette'\nimport type { AccentColor } from '../types/theme'\n\nexport type { AccentColor }\n\nexport const accentColors: Record<AccentColor, {\n readonly main: string\n readonly light: string\n readonly deep: string\n readonly fg: string\n readonly fgDark: string\n}> = {\n terracotta: {\n main: palette.terracotta,\n light: palette.terracottaLight,\n deep: palette.terracottaDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n moss: {\n main: palette.moss,\n light: palette.mossLight,\n deep: palette.mossDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n plum: {\n main: palette.plum,\n light: palette.plumLight,\n deep: palette.plum,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n ochre: {\n main: palette.ochre,\n light: palette.goldLight,\n deep: palette.goldDeep,\n fg: palette.ink,\n fgDark: palette.ink,\n },\n rust: {\n main: palette.rust,\n light: palette.terracotta,\n deep: palette.rust,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n copper: {\n main: palette.copper,\n light: palette.copperLight,\n deep: palette.copperDeep,\n fg: palette.ink,\n fgDark: palette.ink,\n },\n slate: {\n main: palette.slate,\n light: palette.slateLight,\n deep: palette.slateDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n verdigris: {\n main: palette.verdigris,\n light: palette.verdigrisLight,\n deep: palette.verdigrisDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n mauve: {\n main: palette.mauve,\n light: palette.mauveLight,\n deep: palette.mauveDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n amber: {\n main: palette.amber,\n light: palette.amberLight,\n deep: palette.amberDeep,\n fg: palette.ink,\n fgDark: palette.ink,\n },\n fern: {\n main: palette.fern,\n light: palette.fernLight,\n deep: palette.fernDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n blush: {\n main: palette.blush,\n light: palette.blushLight,\n deep: palette.blushDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n} as const\n\nexport const accentColorNames = Object.keys(accentColors) as AccentColor[]\n"]}
@@ -22,6 +22,24 @@ var palette = {
22
22
  plumLight: "#8b6fa8",
23
23
  rust: "#8a3a22",
24
24
  ochre: "#b8924a",
25
+ slate: "#195a73",
26
+ slateDeep: "#004157",
27
+ slateLight: "#5189a1",
28
+ verdigris: "#00685f",
29
+ verdigrisDeep: "#004d46",
30
+ verdigrisLight: "#3f9086",
31
+ mauve: "#76425b",
32
+ mauveDeep: "#5a2b43",
33
+ mauveLight: "#a56c87",
34
+ amber: "#9a6839",
35
+ amberDeep: "#76491d",
36
+ amberLight: "#be8c61",
37
+ fern: "#36643e",
38
+ fernDeep: "#1d4825",
39
+ fernLight: "#618d67",
40
+ blush: "#955c63",
41
+ blushDeep: "#713f45",
42
+ blushLight: "#bc848a",
25
43
  leather: "#6b3a26",
26
44
  leatherMid: "#8a4e34",
27
45
  leatherLight: "#a86a48",
@@ -84,6 +102,48 @@ var accentColors = {
84
102
  deep: palette.copperDeep,
85
103
  fg: palette.ink,
86
104
  fgDark: palette.ink
105
+ },
106
+ slate: {
107
+ main: palette.slate,
108
+ light: palette.slateLight,
109
+ deep: palette.slateDeep,
110
+ fg: palette.paper,
111
+ fgDark: palette.inkDeep
112
+ },
113
+ verdigris: {
114
+ main: palette.verdigris,
115
+ light: palette.verdigrisLight,
116
+ deep: palette.verdigrisDeep,
117
+ fg: palette.paper,
118
+ fgDark: palette.inkDeep
119
+ },
120
+ mauve: {
121
+ main: palette.mauve,
122
+ light: palette.mauveLight,
123
+ deep: palette.mauveDeep,
124
+ fg: palette.paper,
125
+ fgDark: palette.inkDeep
126
+ },
127
+ amber: {
128
+ main: palette.amber,
129
+ light: palette.amberLight,
130
+ deep: palette.amberDeep,
131
+ fg: palette.ink,
132
+ fgDark: palette.ink
133
+ },
134
+ fern: {
135
+ main: palette.fern,
136
+ light: palette.fernLight,
137
+ deep: palette.fernDeep,
138
+ fg: palette.paper,
139
+ fgDark: palette.inkDeep
140
+ },
141
+ blush: {
142
+ main: palette.blush,
143
+ light: palette.blushLight,
144
+ deep: palette.blushDeep,
145
+ fg: palette.paper,
146
+ fgDark: palette.inkDeep
87
147
  }
88
148
  };
89
149
  var accentColorNames = Object.keys(accentColors);
@@ -91,5 +151,5 @@ var accentColorNames = Object.keys(accentColors);
91
151
  exports.accentColorNames = accentColorNames;
92
152
  exports.accentColors = accentColors;
93
153
  exports.palette = palette;
94
- //# sourceMappingURL=chunk-V5XG7NXB.cjs.map
95
- //# sourceMappingURL=chunk-V5XG7NXB.cjs.map
154
+ //# sourceMappingURL=chunk-QKXPZEGC.cjs.map
155
+ //# sourceMappingURL=chunk-QKXPZEGC.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/tokens/palette.ts","../src/tokens/accents.ts"],"names":[],"mappings":"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","file":"chunk-QKXPZEGC.cjs","sourcesContent":["export const palette = {\n ink: '#1f1d18',\n inkDeep: '#14130f',\n\n paper: '#fbf8f0',\n paperWarm: '#f0e9d6',\n paperToasted: '#e6dec5',\n cream: '#e8dfc8',\n creamSoft: '#d8cdb0',\n\n mossDeep: '#2e3a20',\n moss: '#4a5a32',\n mossMid: '#6b7a48',\n mossLight: '#8da866',\n sage: '#b6c898',\n\n terracotta: '#c46a3a',\n terracottaDeep: '#a05526',\n terracottaLight: '#d97a4a',\n\n plum: '#5d4a6a',\n plumMid: '#7a5e8a',\n plumLight: '#8b6fa8',\n\n rust: '#8a3a22',\n ochre: '#b8924a',\n\n slate: '#195a73',\n slateDeep: '#004157',\n slateLight: '#5189a1',\n\n verdigris: '#00685f',\n verdigrisDeep: '#004d46',\n verdigrisLight: '#3f9086',\n\n mauve: '#76425b',\n mauveDeep: '#5a2b43',\n mauveLight: '#a56c87',\n\n amber: '#9a6839',\n amberDeep: '#76491d',\n amberLight: '#be8c61',\n\n fern: '#36643e',\n fernDeep: '#1d4825',\n fernLight: '#618d67',\n\n blush: '#955c63',\n blushDeep: '#713f45',\n blushLight: '#bc848a',\n\n leather: '#6b3a26',\n leatherMid: '#8a4e34',\n leatherLight: '#a86a48',\n\n copper: '#b8742a',\n copperDeep: '#8a531a',\n copperLight: '#d68f48',\n copperPatina: '#5a7a6a',\n\n silver: '#a8a098',\n silverDeep: '#6e6a62',\n silverLight: '#c8c0b6',\n\n wood: '#7a5a3a',\n woodLight: '#a88660',\n woodDeep: '#4a3422',\n\n gold: '#c69a4a',\n goldDeep: '#9a7430',\n goldLight: '#e0bc70',\n\n success: '#6ba03d',\n} as const\n\nexport type PaletteKey = keyof typeof palette\n","import { palette } from './palette'\nimport type { AccentColor } from '../types/theme'\n\nexport type { AccentColor }\n\nexport const accentColors: Record<AccentColor, {\n readonly main: string\n readonly light: string\n readonly deep: string\n readonly fg: string\n readonly fgDark: string\n}> = {\n terracotta: {\n main: palette.terracotta,\n light: palette.terracottaLight,\n deep: palette.terracottaDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n moss: {\n main: palette.moss,\n light: palette.mossLight,\n deep: palette.mossDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n plum: {\n main: palette.plum,\n light: palette.plumLight,\n deep: palette.plum,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n ochre: {\n main: palette.ochre,\n light: palette.goldLight,\n deep: palette.goldDeep,\n fg: palette.ink,\n fgDark: palette.ink,\n },\n rust: {\n main: palette.rust,\n light: palette.terracotta,\n deep: palette.rust,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n copper: {\n main: palette.copper,\n light: palette.copperLight,\n deep: palette.copperDeep,\n fg: palette.ink,\n fgDark: palette.ink,\n },\n slate: {\n main: palette.slate,\n light: palette.slateLight,\n deep: palette.slateDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n verdigris: {\n main: palette.verdigris,\n light: palette.verdigrisLight,\n deep: palette.verdigrisDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n mauve: {\n main: palette.mauve,\n light: palette.mauveLight,\n deep: palette.mauveDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n amber: {\n main: palette.amber,\n light: palette.amberLight,\n deep: palette.amberDeep,\n fg: palette.ink,\n fgDark: palette.ink,\n },\n fern: {\n main: palette.fern,\n light: palette.fernLight,\n deep: palette.fernDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n blush: {\n main: palette.blush,\n light: palette.blushLight,\n deep: palette.blushDeep,\n fg: palette.paper,\n fgDark: palette.inkDeep,\n },\n} as const\n\nexport const accentColorNames = Object.keys(accentColors) as AccentColor[]\n"]}
package/dist/index.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkV5XG7NXB_cjs = require('./chunk-V5XG7NXB.cjs');
3
+ var chunkQKXPZEGC_cjs = require('./chunk-QKXPZEGC.cjs');
4
4
  var chunkWMF2ZDRE_cjs = require('./chunk-WMF2ZDRE.cjs');
5
5
  var react = require('react');
6
6
  var jsxRuntime = require('react/jsx-runtime');
@@ -70,6 +70,7 @@ function AcheryProvider({
70
70
  defaultAccent = "terracotta",
71
71
  defaultDial = "chrome",
72
72
  defaultMaterial = "none",
73
+ defaultSurfaceOrigin = "web-first",
73
74
  className,
74
75
  style
75
76
  }) {
@@ -77,6 +78,7 @@ function AcheryProvider({
77
78
  const [accent, setAccentState] = react.useState(defaultAccent);
78
79
  const [dial, setDialState] = react.useState(defaultDial);
79
80
  const [material, setMaterialState] = react.useState(defaultMaterial);
81
+ const [surfaceOrigin] = react.useState(defaultSurfaceOrigin);
80
82
  const [resolvedTheme, setResolvedTheme] = react.useState(() => resolveTheme(readStoredMode(defaultTheme)));
81
83
  react.useEffect(() => {
82
84
  setModeState(defaultTheme);
@@ -131,7 +133,7 @@ function AcheryProvider({
131
133
  delete html.dataset["acheryRoot"];
132
134
  };
133
135
  }, [resolvedTheme, accent, dial, material]);
134
- return /* @__PURE__ */ jsxRuntime.jsx(ThemeContext.Provider, { value: { mode, theme: resolvedTheme, setTheme, toggleTheme, accent, setAccent, dial, setDial, material, setMaterial }, children: /* @__PURE__ */ jsxRuntime.jsx(AppBarSearchProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(
136
+ return /* @__PURE__ */ jsxRuntime.jsx(ThemeContext.Provider, { value: { mode, theme: resolvedTheme, setTheme, toggleTheme, accent, setAccent, dial, setDial, material, setMaterial, surfaceOrigin }, children: /* @__PURE__ */ jsxRuntime.jsx(AppBarSearchProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(
135
137
  "div",
136
138
  {
137
139
  "data-achery-root": "",
@@ -2410,7 +2412,7 @@ function AppBar({
2410
2412
  ] }) }),
2411
2413
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: actions, children: [
2412
2414
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: actionsInner, children: [
2413
- onAccentChange && /* @__PURE__ */ jsxRuntime.jsx("div", { className: accentPicker, role: "group", "aria-label": "Brand colour", children: chunkV5XG7NXB_cjs.accentColorNames.map((name) => /* @__PURE__ */ jsxRuntime.jsx(
2415
+ onAccentChange && /* @__PURE__ */ jsxRuntime.jsx("div", { className: accentPicker, role: "group", "aria-label": "Brand colour", children: chunkQKXPZEGC_cjs.accentColorNames.map((name) => /* @__PURE__ */ jsxRuntime.jsx(
2414
2416
  "button",
2415
2417
  {
2416
2418
  className: accentSwatch,
@@ -2418,7 +2420,7 @@ function AppBar({
2418
2420
  onClick: () => onAccentChange(name),
2419
2421
  "aria-label": name,
2420
2422
  "aria-pressed": name === accent,
2421
- style: { background: chunkV5XG7NXB_cjs.accentColors[name].main }
2423
+ style: { background: chunkQKXPZEGC_cjs.accentColors[name].main }
2422
2424
  },
2423
2425
  name
2424
2426
  )) }),