@ankhorage/surface 0.1.0 → 0.1.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 (81) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +119 -113
  3. package/dist/components/badge/types.d.ts +1 -1
  4. package/dist/components/badge/types.d.ts.map +1 -1
  5. package/dist/components/button/types.d.ts +2 -2
  6. package/dist/components/button/types.d.ts.map +1 -1
  7. package/dist/components/checkbox/Checkbox.d.ts.map +1 -1
  8. package/dist/components/checkbox/Checkbox.js +9 -4
  9. package/dist/components/checkbox/Checkbox.js.map +1 -1
  10. package/dist/components/field/Field.d.ts.map +1 -1
  11. package/dist/components/field/Field.js +6 -9
  12. package/dist/components/field/Field.js.map +1 -1
  13. package/dist/components/helper-text/HelperText.d.ts.map +1 -1
  14. package/dist/components/helper-text/HelperText.js +1 -3
  15. package/dist/components/helper-text/HelperText.js.map +1 -1
  16. package/dist/components/helper-text/types.d.ts +2 -1
  17. package/dist/components/helper-text/types.d.ts.map +1 -1
  18. package/dist/components/icon-button/types.d.ts +2 -2
  19. package/dist/components/icon-button/types.d.ts.map +1 -1
  20. package/dist/components/label/Label.d.ts.map +1 -1
  21. package/dist/components/label/Label.js +2 -4
  22. package/dist/components/label/Label.js.map +1 -1
  23. package/dist/components/label/types.d.ts +2 -1
  24. package/dist/components/label/types.d.ts.map +1 -1
  25. package/dist/components/menu/Menu.d.ts.map +1 -1
  26. package/dist/components/menu/Menu.js +5 -5
  27. package/dist/components/menu/Menu.js.map +1 -1
  28. package/dist/components/radio/Radio.d.ts.map +1 -1
  29. package/dist/components/radio/Radio.js +9 -4
  30. package/dist/components/radio/Radio.js.map +1 -1
  31. package/dist/components/switch/Switch.d.ts.map +1 -1
  32. package/dist/components/switch/Switch.js +9 -4
  33. package/dist/components/switch/Switch.js.map +1 -1
  34. package/dist/components/tabs/Tab.d.ts.map +1 -1
  35. package/dist/components/tabs/Tab.js +4 -2
  36. package/dist/components/tabs/Tab.js.map +1 -1
  37. package/dist/components/tabs/TabList.d.ts.map +1 -1
  38. package/dist/components/tabs/TabList.js +1 -1
  39. package/dist/components/tabs/TabList.js.map +1 -1
  40. package/dist/components/tabs/TabPanel.d.ts.map +1 -1
  41. package/dist/components/tabs/TabPanel.js +5 -2
  42. package/dist/components/tabs/TabPanel.js.map +1 -1
  43. package/dist/components/tabs/Tabs.d.ts.map +1 -1
  44. package/dist/components/tabs/Tabs.js +4 -1
  45. package/dist/components/tabs/Tabs.js.map +1 -1
  46. package/dist/components/tabs/a11y.d.ts +3 -0
  47. package/dist/components/tabs/a11y.d.ts.map +1 -0
  48. package/dist/components/tabs/a11y.js +13 -0
  49. package/dist/components/tabs/a11y.js.map +1 -0
  50. package/dist/components/tabs/context.d.ts +2 -0
  51. package/dist/components/tabs/context.d.ts.map +1 -1
  52. package/dist/components/tabs/context.js.map +1 -1
  53. package/dist/examples/DocsExamples.d.ts +5 -0
  54. package/dist/examples/DocsExamples.d.ts.map +1 -0
  55. package/dist/examples/DocsExamples.js +81 -0
  56. package/dist/examples/DocsExamples.js.map +1 -0
  57. package/dist/internal/focus/useFocusManager.d.ts +8 -0
  58. package/dist/internal/focus/useFocusManager.d.ts.map +1 -1
  59. package/dist/internal/focus/useFocusManager.js +19 -2
  60. package/dist/internal/focus/useFocusManager.js.map +1 -1
  61. package/dist/internal/resolvers/index.d.ts +2 -0
  62. package/dist/internal/resolvers/index.d.ts.map +1 -1
  63. package/dist/internal/resolvers/index.js +2 -0
  64. package/dist/internal/resolvers/index.js.map +1 -1
  65. package/dist/internal/resolvers/resolveFieldPresentation.d.ts +10 -0
  66. package/dist/internal/resolvers/resolveFieldPresentation.d.ts.map +1 -0
  67. package/dist/internal/resolvers/resolveFieldPresentation.js +19 -0
  68. package/dist/internal/resolvers/resolveFieldPresentation.js.map +1 -0
  69. package/dist/internal/resolvers/resolveSelectionControlBehavior.d.ts +8 -0
  70. package/dist/internal/resolvers/resolveSelectionControlBehavior.d.ts.map +1 -0
  71. package/dist/internal/resolvers/resolveSelectionControlBehavior.js +10 -0
  72. package/dist/internal/resolvers/resolveSelectionControlBehavior.js.map +1 -0
  73. package/dist/internal/resolvers/resolveTextColor.d.ts +1 -1
  74. package/dist/internal/resolvers/resolveTextColor.d.ts.map +1 -1
  75. package/dist/internal/resolvers/resolveTextColor.js +6 -0
  76. package/dist/internal/resolvers/resolveTextColor.js.map +1 -1
  77. package/dist/layout/Box.d.ts +5 -1
  78. package/dist/layout/Box.d.ts.map +1 -1
  79. package/dist/layout/Box.js +2 -2
  80. package/dist/layout/Box.js.map +1 -1
  81. package/package.json +4 -2
@@ -1,5 +1,5 @@
1
1
  import type { AnkhTheme } from '../../theme/types';
2
- export type TextTone = 'default' | 'muted' | 'subtle' | 'inverse';
2
+ export type TextTone = 'default' | 'muted' | 'subtle' | 'inverse' | 'danger' | 'success' | 'warning';
3
3
  export type TextColorValue = keyof AnkhTheme['colors'] | string;
4
4
  export declare function resolveTextColor(theme: AnkhTheme, tone?: TextTone, color?: TextColorValue): string;
5
5
  //# sourceMappingURL=resolveTextColor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveTextColor.d.ts","sourceRoot":"","sources":["../../../src/internal/resolvers/resolveTextColor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;AAEhE,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,SAAS,EAChB,IAAI,GAAE,QAAoB,EAC1B,KAAK,CAAC,EAAE,cAAc,GACrB,MAAM,CAgBR"}
1
+ {"version":3,"file":"resolveTextColor.d.ts","sourceRoot":"","sources":["../../../src/internal/resolvers/resolveTextColor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,MAAM,QAAQ,GAChB,SAAS,GACT,OAAO,GACP,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AACd,MAAM,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;AAEhE,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,SAAS,EAChB,IAAI,GAAE,QAAoB,EAC1B,KAAK,CAAC,EAAE,cAAc,GACrB,MAAM,CAsBR"}
@@ -10,6 +10,12 @@ export function resolveTextColor(theme, tone = 'default', color) {
10
10
  return theme.semantics.content.subtle;
11
11
  case 'inverse':
12
12
  return theme.semantics.content.inverse;
13
+ case 'danger':
14
+ return theme.semantics.danger.base;
15
+ case 'success':
16
+ return theme.semantics.success.base;
17
+ case 'warning':
18
+ return theme.semantics.warning.base;
13
19
  case 'default':
14
20
  default:
15
21
  return theme.semantics.content.default;
@@ -1 +1 @@
1
- {"version":3,"file":"resolveTextColor.js","sourceRoot":"","sources":["../../../src/internal/resolvers/resolveTextColor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAMxD,MAAM,UAAU,gBAAgB,CAC9B,KAAgB,EAChB,OAAiB,SAAS,EAC1B,KAAsB;IAEtB,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;QACvC,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACxC,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;QACzC,KAAK,SAAS,CAAC;QACf;YACE,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;IAC3C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"resolveTextColor.js","sourceRoot":"","sources":["../../../src/internal/resolvers/resolveTextColor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAaxD,MAAM,UAAU,gBAAgB,CAC9B,KAAgB,EAChB,OAAiB,SAAS,EAC1B,KAAsB;IAEtB,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;QACvC,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACxC,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;QACzC,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;QACrC,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;QACtC,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;QACtC,KAAK,SAAS,CAAC;QACf;YACE,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;IAC3C,CAAC;AACH,CAAC"}
@@ -2,9 +2,13 @@ import React from 'react';
2
2
  import { type ViewProps as ReactNativeViewProps } from 'react-native';
3
3
  import { type BoxStyleProps } from './helpers';
4
4
  export interface BoxProps extends BoxStyleProps {
5
+ accessibilityLabel?: ReactNativeViewProps['accessibilityLabel'];
6
+ accessibilityRole?: ReactNativeViewProps['accessibilityRole'];
7
+ accessibilityState?: ReactNativeViewProps['accessibilityState'];
8
+ accessible?: ReactNativeViewProps['accessible'];
5
9
  children?: React.ReactNode;
6
10
  pointerEvents?: ReactNativeViewProps['pointerEvents'];
7
11
  testID?: string;
8
12
  }
9
- export declare function Box({ children, pointerEvents, style, testID, ...props }: BoxProps): React.JSX.Element;
13
+ export declare function Box({ accessible, accessibilityLabel, accessibilityRole, accessibilityState, children, pointerEvents, style, testID, ...props }: BoxProps): React.JSX.Element;
10
14
  //# sourceMappingURL=Box.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Box.d.ts","sourceRoot":"","sources":["../../src/layout/Box.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAIL,KAAK,SAAS,IAAI,oBAAoB,EAEvC,MAAM,cAAc,CAAC;AAItB,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,WAAW,CAAC;AAEjE,MAAM,WAAW,QAAS,SAAQ,aAAa;IAC7C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,aAAa,CAAC,EAAE,oBAAoB,CAAC,eAAe,CAAC,CAAC;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA2BD,wBAAgB,GAAG,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,QAAQ,qBAgBjF"}
1
+ {"version":3,"file":"Box.d.ts","sourceRoot":"","sources":["../../src/layout/Box.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAIL,KAAK,SAAS,IAAI,oBAAoB,EAEvC,MAAM,cAAc,CAAC;AAItB,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,WAAW,CAAC;AAEjE,MAAM,WAAW,QAAS,SAAQ,aAAa;IAC7C,kBAAkB,CAAC,EAAE,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;IAChE,iBAAiB,CAAC,EAAE,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;IAC9D,kBAAkB,CAAC,EAAE,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;IAChE,UAAU,CAAC,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAChD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,aAAa,CAAC,EAAE,oBAAoB,CAAC,eAAe,CAAC,CAAC;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA2BD,wBAAgB,GAAG,CAAC,EAClB,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,QAAQ,EACR,aAAa,EACb,KAAK,EACL,MAAM,EACN,GAAG,KAAK,EACT,EAAE,QAAQ,qBAoBV"}
@@ -21,13 +21,13 @@ function resolveViewPointerEvents(pointerEvents) {
21
21
  }
22
22
  return undefined;
23
23
  }
24
- export function Box({ children, pointerEvents, style, testID, ...props }) {
24
+ export function Box({ accessible, accessibilityLabel, accessibilityRole, accessibilityState, children, pointerEvents, style, testID, ...props }) {
25
25
  const { theme } = useTheme();
26
26
  const { breakpoint } = useResponsiveRuntime();
27
27
  const resolved = resolveBoxStyles(theme, breakpoint, props);
28
28
  const pointerEventsStyle = resolvePointerEventsStyle(pointerEvents);
29
29
  const viewPointerEvents = resolveViewPointerEvents(pointerEvents);
30
- return (<View pointerEvents={viewPointerEvents} testID={testID} style={[resolved, pointerEventsStyle, style]}>
30
+ return (<View accessible={accessible} accessibilityLabel={accessibilityLabel} accessibilityRole={accessibilityRole} accessibilityState={accessibilityState} pointerEvents={viewPointerEvents} testID={testID} style={[resolved, pointerEventsStyle, style]}>
31
31
  {children}
32
32
  </View>);
33
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Box.js","sourceRoot":"","sources":["../../src/layout/Box.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,QAAQ,EAER,IAAI,GAGL,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAsB,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAQjE,SAAS,yBAAyB,CAChC,aAAgE;IAEhE,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK,IAAI,aAAa,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAEtE,IAAI,aAAa,KAAK,MAAM,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;QACzD,OAAO,EAAE,aAAa,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,wBAAwB,CAC/B,aAAgE;IAEhE,IAAI,aAAa,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAClD,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK;QAAE,OAAO,aAAa,CAAC;IAEhD,IAAI,aAAa,KAAK,UAAU,IAAI,aAAa,KAAK,UAAU,EAAE,CAAC;QACjE,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,EAAY;IAChF,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC7B,MAAM,EAAE,UAAU,EAAE,GAAG,oBAAoB,EAAE,CAAC;IAC9C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IAC5D,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACpE,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;IAElE,OAAO,CACL,CAAC,IAAI,CACH,aAAa,CAAC,CAAC,iBAAiB,CAAC,CACjC,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAE7C;MAAA,CAAC,QAAQ,CACX;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"Box.js","sourceRoot":"","sources":["../../src/layout/Box.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,QAAQ,EAER,IAAI,GAGL,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAsB,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAYjE,SAAS,yBAAyB,CAChC,aAAgE;IAEhE,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK,IAAI,aAAa,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAEtE,IAAI,aAAa,KAAK,MAAM,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;QACzD,OAAO,EAAE,aAAa,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,wBAAwB,CAC/B,aAAgE;IAEhE,IAAI,aAAa,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAClD,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK;QAAE,OAAO,aAAa,CAAC;IAEhD,IAAI,aAAa,KAAK,UAAU,IAAI,aAAa,KAAK,UAAU,EAAE,CAAC;QACjE,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,EAClB,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,QAAQ,EACR,aAAa,EACb,KAAK,EACL,MAAM,EACN,GAAG,KAAK,EACC;IACT,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC7B,MAAM,EAAE,UAAU,EAAE,GAAG,oBAAoB,EAAE,CAAC;IAC9C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IAC5D,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACpE,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;IAElE,OAAO,CACL,CAAC,IAAI,CACH,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CACvC,iBAAiB,CAAC,CAAC,iBAAiB,CAAC,CACrC,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CACvC,aAAa,CAAC,CAAC,iBAAiB,CAAC,CACjC,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAE7C;MAAA,CAAC,QAAQ,CACX;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@ankhorage/surface",
3
3
  "type": "module",
4
- "version": "0.1.0",
5
- "description": "Render foundation for Ankhorage and standalone React Native or Expo apps.",
4
+ "version": "0.1.1",
5
+ "description": "Stable UI foundation for React Native and React Native Web.",
6
6
  "homepage": "https://github.com/ankhorage/surface#readme",
7
7
  "bugs": {
8
8
  "url": "https://github.com/ankhorage/surface/issues"
@@ -20,8 +20,10 @@
20
20
  "react-native-web",
21
21
  "expo",
22
22
  "ui",
23
+ "foundation",
23
24
  "design-system",
24
25
  "theming",
26
+ "accessibility",
25
27
  "components"
26
28
  ],
27
29
  "peerDependencies": {