expo-snowui 1.7.3 → 1.7.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.
Files changed (76) hide show
  1. package/lib/module/component/snow-safe-area.js +7 -3
  2. package/lib/module/component/snow-safe-area.js.map +1 -1
  3. package/lib/module/component/wired/snow-dropdown.js +11 -11
  4. package/lib/module/component/wired/snow-dropdown.js.map +1 -1
  5. package/lib/module/component/wired/snow-grid.js +40 -136
  6. package/lib/module/component/wired/snow-grid.js.map +1 -1
  7. package/lib/module/component/wired/snow-image-button.js +24 -42
  8. package/lib/module/component/wired/snow-image-button.js.map +1 -1
  9. package/lib/module/component/wired/snow-image-grid.js +10 -8
  10. package/lib/module/component/wired/snow-image-grid.js.map +1 -1
  11. package/lib/module/component/wired/snow-input.js +10 -15
  12. package/lib/module/component/wired/snow-input.js.map +1 -1
  13. package/lib/module/component/wired/snow-modal.js +13 -23
  14. package/lib/module/component/wired/snow-modal.js.map +1 -1
  15. package/lib/module/component/wired/snow-overlay.js +11 -50
  16. package/lib/module/component/wired/snow-overlay.js.map +1 -1
  17. package/lib/module/component/wired/snow-pager.js +41 -76
  18. package/lib/module/component/wired/snow-pager.js.map +1 -1
  19. package/lib/module/component/wired/snow-range-slider.js +20 -20
  20. package/lib/module/component/wired/snow-range-slider.js.map +1 -1
  21. package/lib/module/component/wired/snow-tabs.js +18 -31
  22. package/lib/module/component/wired/snow-tabs.js.map +1 -1
  23. package/lib/module/component/wired/snow-target.js +10 -12
  24. package/lib/module/component/wired/snow-target.js.map +1 -1
  25. package/lib/module/component/wired/snow-text-button.js +15 -29
  26. package/lib/module/component/wired/snow-text-button.js.map +1 -1
  27. package/lib/module/component/wired/snow-toggle.js +10 -14
  28. package/lib/module/component/wired/snow-toggle.js.map +1 -1
  29. package/lib/module/component/wired/snow-view.js +10 -17
  30. package/lib/module/component/wired/snow-view.js.map +1 -1
  31. package/lib/module/context/neighbor-map.js +92 -0
  32. package/lib/module/context/neighbor-map.js.map +1 -0
  33. package/lib/module/context/snow-context.js +5 -4
  34. package/lib/module/context/snow-context.js.map +1 -1
  35. package/lib/module/context/snow-focus-context.js +267 -617
  36. package/lib/module/context/snow-focus-context.js.map +1 -1
  37. package/lib/module/context/snow-input-context.js +5 -0
  38. package/lib/module/context/snow-input-context.js.map +1 -1
  39. package/lib/module/context/snow-layer-context.js +7 -0
  40. package/lib/module/context/snow-layer-context.js.map +1 -1
  41. package/lib/module/context/snow-navigation-context.js +41 -33
  42. package/lib/module/context/snow-navigation-context.js.map +1 -1
  43. package/lib/module/context/tree.js +122 -0
  44. package/lib/module/context/tree.js.map +1 -0
  45. package/lib/module/snow-app.js +8 -8
  46. package/lib/module/snow-app.js.map +1 -1
  47. package/lib/module/snow-style.js +34 -20
  48. package/lib/module/snow-style.js.map +1 -1
  49. package/lib/module/util.js +1 -1
  50. package/lib/module/util.js.map +1 -1
  51. package/package.json +1 -1
  52. package/src/component/snow-safe-area.js +7 -3
  53. package/src/component/wired/snow-dropdown.js +9 -12
  54. package/src/component/wired/snow-grid.js +33 -151
  55. package/src/component/wired/snow-image-button.js +17 -35
  56. package/src/component/wired/snow-image-grid.js +12 -9
  57. package/src/component/wired/snow-input.js +4 -11
  58. package/src/component/wired/snow-modal.js +7 -23
  59. package/src/component/wired/snow-overlay.js +10 -65
  60. package/src/component/wired/snow-pager.js +38 -80
  61. package/src/component/wired/snow-range-slider.js +21 -20
  62. package/src/component/wired/snow-tabs.js +18 -34
  63. package/src/component/wired/snow-target.js +10 -12
  64. package/src/component/wired/snow-text-button.js +12 -24
  65. package/src/component/wired/snow-toggle.js +7 -13
  66. package/src/component/wired/snow-view.js +10 -14
  67. package/src/context/neighbor-map.js +115 -0
  68. package/src/context/snow-context.js +6 -4
  69. package/src/context/snow-focus-context.js +275 -607
  70. package/src/context/snow-input-context.js +5 -0
  71. package/src/context/snow-layer-context.js +7 -0
  72. package/src/context/snow-navigation-context.js +39 -29
  73. package/src/context/tree.js +137 -0
  74. package/src/snow-app.js +12 -11
  75. package/src/snow-style.js +34 -17
  76. package/src/util.js +1 -1
@@ -3,9 +3,10 @@
3
3
  import React from 'react';
4
4
  import { ScrollView, View } from 'react-native';
5
5
  import { useStyleContext } from "../context/snow-style-context.js";
6
- import { useFocusContext } from "../context/snow-focus-context.js";
6
+ import { useFocusAppContext } from "../context/snow-focus-context.js";
7
7
  import { useLayerContext } from "../context/snow-layer-context.js";
8
8
  import util from "../util.js";
9
+ import { SnowView } from "./wired/snow-view.js";
9
10
  import { SnowModal } from "./wired/snow-modal.js";
10
11
  import { SnowOverlay } from "./wired/snow-overlay.js";
11
12
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
@@ -20,7 +21,7 @@ export function SnowSafeArea(props) {
20
21
  } = useLayerContext();
21
22
  const {
22
23
  setScrollViewRef
23
- } = useFocusContext();
24
+ } = useFocusAppContext();
24
25
  const scrollViewRef = React.useRef(null);
25
26
 
26
27
  // This allows modals and overlays to draw on top of the regular app
@@ -60,7 +61,10 @@ export function SnowSafeArea(props) {
60
61
  }
61
62
  return /*#__PURE__*/_jsxs(_Fragment, {
62
63
  children: [/*#__PURE__*/_jsx(ScrollView, {
63
- ref: scrollViewRef,
64
+ ref: ref => {
65
+ scrollViewRef.current = ref;
66
+ setScrollViewRef(ref);
67
+ },
64
68
  style: SnowStyle.component.safeArea,
65
69
  snowStyle: SnowStyle,
66
70
  showsVerticalScrollIndicator: !modals,
@@ -1 +1 @@
1
- {"version":3,"names":["React","ScrollView","View","useStyleContext","useFocusContext","useLayerContext","util","SnowModal","SnowOverlay","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SnowSafeArea","props","SnowStyle","modalPayloads","overlayPayload","DEBUG_LAYERS","setScrollViewRef","scrollViewRef","useRef","modals","length","children","map","modalPayload","modalIndex","depth","render","overlay","useEffect","current","prettyLog","component","action","ref","style","safeArea","snowStyle","showsVerticalScrollIndicator"],"sourceRoot":"../../../src","sources":["component/snow-safe-area.js"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,eAAe,QAAQ,kCAA+B;AAC/D,SAASC,eAAe,QAAQ,kCAA+B;AAC/D,SAASC,eAAe,QAAQ,kCAA+B;AAC/D,OAAOC,IAAI,MAAM,YAAS;AAC1B,SAASC,SAAS,QAAQ,uBAAoB;AAC9C,SAASC,WAAW,QAAQ,yBAAsB;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAElD,OAAO,SAASC,YAAYA,CAACC,KAAK,EAAE;EAChC,MAAM;IAAEC;EAAU,CAAC,GAAGd,eAAe,CAACa,KAAK,CAAC;EAC5C,MAAM;IAAEE,aAAa;IAAEC,cAAc;IAAEC;EAAa,CAAC,GAAGf,eAAe,CAAC,CAAC;EACzE,MAAM;IAAEgB;EAAiB,CAAC,GAAGjB,eAAe,CAAC,CAAC;EAC9C,MAAMkB,aAAa,GAAGtB,KAAK,CAACuB,MAAM,CAAC,IAAI,CAAC;;EAExC;EACA;EACA;EACA;EACA,IAAIC,MAAM,GAAG,IAAI;EACjB,IAAIN,aAAa,EAAEO,MAAM,EAAE;IACvBD,MAAM,gBACFd,IAAA,CAAAE,SAAA;MAAAc,QAAA,EACKR,aAAa,CAACS,GAAG,CAAC,CAACC,YAAY,EAAEC,UAAU,KAAK;QAC7C,oBAAOnB,IAAA,CAACH,SAAS;UAEbuB,KAAK,EAAED,UAAU,GAAG,CAAE;UAAA,GAClBD,YAAY,CAACZ,KAAK;UACtBe,MAAM,EAAEH,YAAY,CAACG;QAAO,GAHvBF,UAGyB,CAAC;MACvC,CAAC;IAAC,CACJ,CACL;EACL;EAEA,IAAIG,OAAO,GAAG,IAAI;EAClB,IAAIb,cAAc,EAAE;IAChBa,OAAO,gBAAGtB,IAAA,CAACF,WAAW;MAAA,GAAKW,cAAc,CAACH;IAAK,CAAG,CAAC;EACvD;EAEAhB,KAAK,CAACiC,SAAS,CAAC,MAAM;IAClB,IAAIX,aAAa,CAACY,OAAO,EAAE;MACvBb,gBAAgB,CAACC,aAAa,CAAC;IACnC;EACJ,CAAC,EAAE,CAACA,aAAa,CAAC,CAAC;EAEnB,IAAIF,YAAY,KAAK,SAAS,EAAE;IAC5Bd,IAAI,CAAC6B,SAAS,CAAC;MAAEC,SAAS,EAAE,WAAW;MAAEC,MAAM,EAAE,QAAQ;MAAEnB,aAAa;MAAEC;IAAe,CAAC,CAAC;EAC/F;EAEA,oBACIL,KAAA,CAAAF,SAAA;IAAAc,QAAA,gBACIhB,IAAA,CAACT,UAAU;MACPqC,GAAG,EAAEhB,aAAc;MACnBiB,KAAK,EAAEtB,SAAS,CAACmB,SAAS,CAACI,QAAS;MACpCC,SAAS,EAAExB,SAAU;MACrByB,4BAA4B,EAAE,CAAClB,MAAO;MAAAE,QAAA,EACrCV,KAAK,CAACU;IAAQ,CACP,CAAC,EACZF,MAAM,EACNQ,OAAO;EAAA,CACV,CAAC;AAEX;AAEA,eAAejB,YAAY","ignoreList":[]}
1
+ {"version":3,"names":["React","ScrollView","View","useStyleContext","useFocusAppContext","useLayerContext","util","SnowView","SnowModal","SnowOverlay","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SnowSafeArea","props","SnowStyle","modalPayloads","overlayPayload","DEBUG_LAYERS","setScrollViewRef","scrollViewRef","useRef","modals","length","children","map","modalPayload","modalIndex","depth","render","overlay","useEffect","current","prettyLog","component","action","ref","style","safeArea","snowStyle","showsVerticalScrollIndicator"],"sourceRoot":"../../../src","sources":["component/snow-safe-area.js"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,eAAe,QAAQ,kCAA+B;AAC/D,SAASC,kBAAkB,QAAQ,kCAA+B;AAClE,SAASC,eAAe,QAAQ,kCAA+B;AAC/D,OAAOC,IAAI,MAAM,YAAS;AAC1B,SAASC,QAAQ,QAAQ,sBAAmB;AAC5C,SAASC,SAAS,QAAQ,uBAAoB;AAC9C,SAASC,WAAW,QAAQ,yBAAsB;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAElD,OAAO,SAASC,YAAYA,CAACC,KAAK,EAAE;EAChC,MAAM;IAAEC;EAAU,CAAC,GAAGf,eAAe,CAACc,KAAK,CAAC;EAC5C,MAAM;IAAEE,aAAa;IAAEC,cAAc;IAAEC;EAAa,CAAC,GAAGhB,eAAe,CAAC,CAAC;EACzE,MAAM;IAAEiB;EAAiB,CAAC,GAAGlB,kBAAkB,CAAC,CAAC;EACjD,MAAMmB,aAAa,GAAGvB,KAAK,CAACwB,MAAM,CAAC,IAAI,CAAC;;EAExC;EACA;EACA;EACA;EACA,IAAIC,MAAM,GAAG,IAAI;EACjB,IAAIN,aAAa,EAAEO,MAAM,EAAE;IACvBD,MAAM,gBACFd,IAAA,CAAAE,SAAA;MAAAc,QAAA,EACKR,aAAa,CAACS,GAAG,CAAC,CAACC,YAAY,EAAEC,UAAU,KAAK;QAC7C,oBAAOnB,IAAA,CAACH,SAAS;UAEbuB,KAAK,EAAED,UAAU,GAAG,CAAE;UAAA,GAClBD,YAAY,CAACZ,KAAK;UACtBe,MAAM,EAAEH,YAAY,CAACG;QAAO,GAHvBF,UAGyB,CAAC;MACvC,CAAC;IAAC,CACJ,CACL;EACL;EAEA,IAAIG,OAAO,GAAG,IAAI;EAClB,IAAIb,cAAc,EAAE;IAChBa,OAAO,gBAAGtB,IAAA,CAACF,WAAW;MAAA,GAAKW,cAAc,CAACH;IAAK,CAAG,CAAC;EACvD;EAEAjB,KAAK,CAACkC,SAAS,CAAC,MAAM;IAClB,IAAIX,aAAa,CAACY,OAAO,EAAE;MACvBb,gBAAgB,CAACC,aAAa,CAAC;IACnC;EACJ,CAAC,EAAE,CAACA,aAAa,CAAC,CAAC;EAEnB,IAAIF,YAAY,KAAK,SAAS,EAAE;IAC5Bf,IAAI,CAAC8B,SAAS,CAAC;MAAEC,SAAS,EAAE,WAAW;MAAEC,MAAM,EAAE,QAAQ;MAAEnB,aAAa;MAAEC;IAAe,CAAC,CAAC;EAC/F;EAEA,oBACIL,KAAA,CAAAF,SAAA;IAAAc,QAAA,gBACIhB,IAAA,CAACV,UAAU;MACPsC,GAAG,EAAGA,GAAG,IAAK;QACVhB,aAAa,CAACY,OAAO,GAAGI,GAAG;QAC3BjB,gBAAgB,CAACiB,GAAG,CAAC;MACzB,CAAE;MACFC,KAAK,EAAEtB,SAAS,CAACmB,SAAS,CAACI,QAAS;MACpCC,SAAS,EAAExB,SAAU;MACrByB,4BAA4B,EAAE,CAAClB,MAAO;MAAAE,QAAA,EACrCV,KAAK,CAACU;IAAQ,CACP,CAAC,EACZF,MAAM,EACNQ,OAAO;EAAA,CACV,CAAC;AAEX;AAEA,eAAejB,YAAY","ignoreList":[]}
@@ -6,19 +6,19 @@ import SnowLabel from "../snow-label.js";
6
6
  import SnowGrid from "./snow-grid.js";
7
7
  import SnowTextButton from "./snow-text-button.js";
8
8
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
9
- const SnowDropdownW = props => {
10
- const {
11
- readFocusProps
12
- } = useFocusContext();
9
+ export const SnowDropdown = props => {
13
10
  if (!props.options) {
14
11
  return null;
15
12
  }
16
13
  if (props.valueIndex === undefined || props.valueIndex === null) {
17
14
  return null;
18
15
  }
19
- const choose = chosenIndex => {
16
+ const {
17
+ focusPath
18
+ } = useFocusContext('dropdown', props);
19
+ const choose = (chosenIndex, entryFocusKey) => {
20
20
  if (props.onValueChange) {
21
- props.onValueChange(chosenIndex, props.focusKey);
21
+ props.onValueChange(chosenIndex, entryFocusKey);
22
22
  }
23
23
  };
24
24
  const renderItem = (item, itemIndex) => {
@@ -28,13 +28,15 @@ const SnowDropdownW = props => {
28
28
  selected = true;
29
29
  }
30
30
  }
31
+ const entryFocusKey = props.focusKey + '-' + itemIndex;
31
32
  return /*#__PURE__*/_jsx(SnowTextButton, {
32
33
  snowStyle: props.snowStyle,
34
+ focusKey: entryFocusKey,
33
35
  fade: selected && props.fade,
34
36
  selected: selected,
35
37
  title: item.name ? item.name : item,
36
38
  onPress: () => {
37
- choose(item.index ? item.index : itemIndex);
39
+ choose(item.index ? item.index : itemIndex, entryFocusKey);
38
40
  }
39
41
  });
40
42
  };
@@ -44,7 +46,7 @@ const SnowDropdownW = props => {
44
46
  center: true,
45
47
  children: props.title
46
48
  }), /*#__PURE__*/_jsx(SnowGrid, {
47
- ...readFocusProps(props),
49
+ parentPath: focusPath,
48
50
  itemsPerRow: props.itemsPerRow,
49
51
  items: props.options,
50
52
  renderItem: renderItem
@@ -52,13 +54,11 @@ const SnowDropdownW = props => {
52
54
  });
53
55
  }
54
56
  return /*#__PURE__*/_jsx(SnowGrid, {
55
- ...readFocusProps(props),
57
+ parentPath: focusPath,
56
58
  itemsPerRow: props.itemsPerRow,
57
59
  items: props.options,
58
60
  renderItem: renderItem
59
61
  });
60
62
  };
61
- SnowDropdownW.isSnowFocusWired = true;
62
- export const SnowDropdown = SnowDropdownW;
63
63
  export default SnowDropdown;
64
64
  //# sourceMappingURL=snow-dropdown.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["View","useFocusContext","SnowLabel","SnowGrid","SnowTextButton","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SnowDropdownW","props","readFocusProps","options","valueIndex","undefined","choose","chosenIndex","onValueChange","focusKey","renderItem","item","itemIndex","selected","skipDefaultFocus","snowStyle","fade","title","name","onPress","index","children","center","itemsPerRow","items","isSnowFocusWired","SnowDropdown"],"sourceRoot":"../../../../src","sources":["component/wired/snow-dropdown.js"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,cAAc;AACnC,SAASC,eAAe,QAAQ,qCAAkC;AAClE,OAAOC,SAAS,MAAM,kBAAe;AACrC,OAAOC,QAAQ,MAAM,gBAAa;AAClC,OAAOC,cAAc,MAAM,uBAAoB;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAE/C,MAAMC,aAAa,GAAIC,KAAK,IAAK;EAC7B,MAAM;IAAEC;EAAe,CAAC,GAAGZ,eAAe,CAAC,CAAC;EAC5C,IAAI,CAACW,KAAK,CAACE,OAAO,EAAE;IAChB,OAAO,IAAI;EACf;EACA,IAAIF,KAAK,CAACG,UAAU,KAAKC,SAAS,IAAIJ,KAAK,CAACG,UAAU,KAAK,IAAI,EAAE;IAC7D,OAAO,IAAI;EACf;EAEA,MAAME,MAAM,GAAIC,WAAW,IAAK;IAC5B,IAAIN,KAAK,CAACO,aAAa,EAAE;MACrBP,KAAK,CAACO,aAAa,CAACD,WAAW,EAAEN,KAAK,CAACQ,QAAQ,CAAC;IACpD;EACJ,CAAC;EAED,MAAMC,UAAU,GAAGA,CAACC,IAAI,EAAEC,SAAS,KAAK;IACpC,IAAIC,QAAQ,GAAG,KAAK;IACpB,IAAI,CAACZ,KAAK,CAACa,gBAAgB,EAAE;MACzB,IAAIF,SAAS,KAAKX,KAAK,CAACG,UAAU,EAAE;QAChCS,QAAQ,GAAG,IAAI;MACnB;IACJ;IACA,oBAAOlB,IAAA,CAACF,cAAc;MAClBsB,SAAS,EAAEd,KAAK,CAACc,SAAU;MAC3BC,IAAI,EAAEH,QAAQ,IAAIZ,KAAK,CAACe,IAAK;MAC7BH,QAAQ,EAAEA,QAAS;MACnBI,KAAK,EAAEN,IAAI,CAACO,IAAI,GAAGP,IAAI,CAACO,IAAI,GAAGP,IAAK;MACpCQ,OAAO,EAAEA,CAAA,KAAM;QAAEb,MAAM,CAACK,IAAI,CAACS,KAAK,GAAGT,IAAI,CAACS,KAAK,GAAGR,SAAS,CAAC;MAAC;IAAE,CAAE,CAAC;EAC1E,CAAC;EAED,IAAIX,KAAK,CAACgB,KAAK,EAAE;IACb,oBAAOlB,KAAA,CAAAF,SAAA;MAAAwB,QAAA,gBACH1B,IAAA,CAACJ,SAAS;QAAC+B,MAAM;QAAAD,QAAA,EAAEpB,KAAK,CAACgB;MAAK,CAAY,CAAC,eAC3CtB,IAAA,CAACH,QAAQ;QAAA,GACDU,cAAc,CAACD,KAAK,CAAC;QACzBsB,WAAW,EAAEtB,KAAK,CAACsB,WAAY;QAC/BC,KAAK,EAAEvB,KAAK,CAACE,OAAQ;QACrBO,UAAU,EAAEA;MAAW,CAC1B,CAAC;IAAA,CACJ,CAAC;EACP;EACA,oBACIf,IAAA,CAACH,QAAQ;IAAA,GACDU,cAAc,CAACD,KAAK,CAAC;IACzBsB,WAAW,EAAEtB,KAAK,CAACsB,WAAY;IAC/BC,KAAK,EAAEvB,KAAK,CAACE,OAAQ;IACrBO,UAAU,EAAEA;EAAW,CAC1B,CAAC;AAEV,CAAC;AAEDV,aAAa,CAACyB,gBAAgB,GAAG,IAAI;AAErC,OAAO,MAAMC,YAAY,GAAG1B,aAAa;AAEzC,eAAe0B,YAAY","ignoreList":[]}
1
+ {"version":3,"names":["View","useFocusContext","SnowLabel","SnowGrid","SnowTextButton","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SnowDropdown","props","options","valueIndex","undefined","focusPath","choose","chosenIndex","entryFocusKey","onValueChange","renderItem","item","itemIndex","selected","skipDefaultFocus","focusKey","snowStyle","fade","title","name","onPress","index","children","center","parentPath","itemsPerRow","items"],"sourceRoot":"../../../../src","sources":["component/wired/snow-dropdown.js"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,cAAc;AACnC,SAASC,eAAe,QAAQ,qCAAkC;AAClE,OAAOC,SAAS,MAAM,kBAAe;AACrC,OAAOC,QAAQ,MAAM,gBAAa;AAClC,OAAOC,cAAc,MAAM,uBAAoB;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAE/C,OAAO,MAAMC,YAAY,GAAIC,KAAK,IAAK;EACnC,IAAI,CAACA,KAAK,CAACC,OAAO,EAAE;IAChB,OAAO,IAAI;EACf;EACA,IAAID,KAAK,CAACE,UAAU,KAAKC,SAAS,IAAIH,KAAK,CAACE,UAAU,KAAK,IAAI,EAAE;IAC7D,OAAO,IAAI;EACf;EACA,MAAM;IAAEE;EAAU,CAAC,GAAGf,eAAe,CAAC,UAAU,EAAEW,KAAK,CAAC;EACxD,MAAMK,MAAM,GAAGA,CAACC,WAAW,EAAEC,aAAa,KAAK;IAC3C,IAAIP,KAAK,CAACQ,aAAa,EAAE;MACrBR,KAAK,CAACQ,aAAa,CAACF,WAAW,EAAEC,aAAa,CAAC;IACnD;EACJ,CAAC;EAED,MAAME,UAAU,GAAGA,CAACC,IAAI,EAAEC,SAAS,KAAK;IACpC,IAAIC,QAAQ,GAAG,KAAK;IACpB,IAAI,CAACZ,KAAK,CAACa,gBAAgB,EAAE;MACzB,IAAIF,SAAS,KAAKX,KAAK,CAACE,UAAU,EAAE;QAChCU,QAAQ,GAAG,IAAI;MACnB;IACJ;IACA,MAAML,aAAa,GAAGP,KAAK,CAACc,QAAQ,GAAG,GAAG,GAAGH,SAAS;IACtD,oBAAOjB,IAAA,CAACF,cAAc;MAClBuB,SAAS,EAAEf,KAAK,CAACe,SAAU;MAC3BD,QAAQ,EAAEP,aAAc;MACxBS,IAAI,EAAEJ,QAAQ,IAAIZ,KAAK,CAACgB,IAAK;MAC7BJ,QAAQ,EAAEA,QAAS;MACnBK,KAAK,EAAEP,IAAI,CAACQ,IAAI,GAAGR,IAAI,CAACQ,IAAI,GAAGR,IAAK;MACpCS,OAAO,EAAEA,CAAA,KAAM;QAAEd,MAAM,CAACK,IAAI,CAACU,KAAK,GAAGV,IAAI,CAACU,KAAK,GAAGT,SAAS,EAAEJ,aAAa,CAAC;MAAC;IAAE,CAAE,CAAC;EACzF,CAAC;EAED,IAAIP,KAAK,CAACiB,KAAK,EAAE;IACb,oBAAOnB,KAAA,CAAAF,SAAA;MAAAyB,QAAA,gBACH3B,IAAA,CAACJ,SAAS;QAACgC,MAAM;QAAAD,QAAA,EAAErB,KAAK,CAACiB;MAAK,CAAY,CAAC,eAC3CvB,IAAA,CAACH,QAAQ;QACLgC,UAAU,EAAEnB,SAAU;QACtBoB,WAAW,EAAExB,KAAK,CAACwB,WAAY;QAC/BC,KAAK,EAAEzB,KAAK,CAACC,OAAQ;QACrBQ,UAAU,EAAEA;MAAW,CAC1B,CAAC;IAAA,CACJ,CAAC;EACP;EACA,oBACIf,IAAA,CAACH,QAAQ;IACLgC,UAAU,EAAEnB,SAAU;IACtBoB,WAAW,EAAExB,KAAK,CAACwB,WAAY;IAC/BC,KAAK,EAAEzB,KAAK,CAACC,OAAQ;IACrBQ,UAAU,EAAEA;EAAW,CAC1B,CAAC;AAEV,CAAC;AAED,eAAeV,YAAY","ignoreList":[]}
@@ -5,17 +5,10 @@ import { View } from 'react-native';
5
5
  import { useStyleContext } from "../../context/snow-style-context.js";
6
6
  import { useFocusContext } from "../../context/snow-focus-context.js";
7
7
  import { useNavigationContext } from "../../context/snow-navigation-context.js";
8
+ import SnowView from "./snow-view.js";
8
9
  import SnowPager from "./snow-pager.js";
9
10
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
- const emptyWiredGrid = () => {
11
- return {
12
- row: 0,
13
- column: 0,
14
- index: 0,
15
- lastGridRow: 0
16
- };
17
- };
18
- const SnowGridW = props => {
11
+ export const SnowGrid = props => {
19
12
  if (!props.items && !props.children) {
20
13
  return null;
21
14
  }
@@ -34,9 +27,12 @@ const SnowGridW = props => {
34
27
  currentRoute
35
28
  } = useNavigationContext(props);
36
29
  const {
37
- DEBUG_FOCUS
38
- } = useFocusContext(props);
39
- const wiredGridRef = React.useRef(emptyWiredGrid());
30
+ focusPath,
31
+ focusWrap
32
+ } = useFocusContext('grid', {
33
+ ...props,
34
+ canFocus: false
35
+ });
40
36
  let itemsPerRow = 5;
41
37
  if (props.itemsPerRow) {
42
38
  itemsPerRow = props.itemsPerRow;
@@ -61,8 +57,8 @@ const SnowGridW = props => {
61
57
  renderItem = props.renderItem;
62
58
  }
63
59
  let page = 0;
64
- if (currentRoute?.routeParams?.hasOwnProperty(`${props.focusKey}-grid-page`)) {
65
- page = parseInt(currentRoute?.routeParams?.[`${props.focusKey}-grid-page`], 10) ?? 0;
60
+ if (currentRoute?.routeParams?.hasOwnProperty(`${props.focusKey}-pager-grid-page`)) {
61
+ page = parseInt(currentRoute?.routeParams?.[`${props.focusKey}-pager-grid-page`], 10) ?? 0;
66
62
  }
67
63
  const hasPageControls = items.length > itemsPerPage;
68
64
  if (hasPageControls) {
@@ -74,130 +70,35 @@ const SnowGridW = props => {
74
70
  if (lastElementColumn === 0) {
75
71
  lastElementColumn = itemsPerRow;
76
72
  }
77
- let gridFocusKey = `${props.focusKey}-row-0-column-0`;
78
- let lastCellKey = `${props.focusKey}-grid-end`;
79
- let lastCellFullKey = `${props.focusKey}-row-${maxRow - 1}-column-${lastElementColumn - 1}`;
80
- if (gridFocusKey === lastCellFullKey) {
81
- gridFocusKey = lastCellKey;
82
- }
73
+ let gridYOffset = 0;
83
74
  let pageControls = null;
84
75
  if (hasPageControls) {
85
76
  pageControls = /*#__PURE__*/_jsx(SnowPager, {
77
+ focusKey: props.focusKey + '-pager',
86
78
  maxPage: maxPage,
87
- page: page,
88
- focusUp: props.focusUp,
89
- focusDown: gridFocusKey,
90
- focusKey: props.focusKey
79
+ page: page
91
80
  });
81
+ gridYOffset = 1;
92
82
  }
93
- wiredGridRef.current = emptyWiredGrid();
94
- const renderKey = `${props.focusKey ?? ''}-grid-${itemsPerRow}-cols-page-${page}`;
95
83
  const renderCell = (item, itemIndex, renderRowIndex) => {
96
84
  let child = renderItem(item, itemIndex);
97
- let focus = {};
98
- if (child?.type?.isSnowFocusWired && props?.assignFocus !== false) {
99
- let wired = wiredGridRef.current;
100
- let row = wired.row;
101
- let column = wired.column;
102
- if (child.props.focusKey) {
103
- focus.focusKey = child.props.focusKey;
104
- } else {
105
- if (wired.index === 0 && !hasPageControls) {
106
- focus.focusKey = props.focusKey;
107
- } else {
108
- focus.focusKey = `${props.focusKey}-row-${row}-column-${column}`;
109
- if (focus.focusKey === lastCellFullKey) {
110
- focus.focusKey = lastCellKey;
111
- }
112
- }
113
- }
114
- if (currentRoute?.routeParams?.page === undefined) {
115
- if (child.props.focusStart) {
116
- focus.focusStart = child.props.focusStart;
117
- } else {
118
- if (wired.index === 0 && props.focusStart) {
119
- focus.focusStart = true;
120
- }
121
- }
122
- }
123
- if (row === 0) {
124
- if (hasPageControls) {
125
- focus.focusUp = `${props.focusKey}-next-page`;
126
- } else {
127
- if (props.focusUp) {
128
- focus.focusUp = props.focusUp;
129
- }
130
- }
131
- } else {
132
- if (row - 1 === 0 && column === 0 && !hasPageControls) {
133
- focus.focusUp = props.focusKey;
134
- } else {
135
- focus.focusUp = `${props.focusKey}-row-${row - 1}-column-${column}`;
136
- }
137
- }
138
- if (row === maxRow - 1) {
139
- if (props.focusDown) {
140
- focus.focusDown = props.focusDown;
141
- }
142
- } else {
143
- if (row === maxRow - 2 && column >= lastElementColumn - 1) {
144
- focus.focusDown = lastCellKey;
145
- } else {
146
- focus.focusDown = `${props.focusKey}-row-${row + 1}-column-${column}`;
147
- }
148
- }
149
- if (column === 0) {
150
- if (props.focusLeft) {
151
- focus.focusLeft = props.focusLeft;
152
- }
153
- } else {
154
- if (column - 1 === 0 && row === 0) {
155
- focus.focusLeft = props.focusKey;
156
- } else {
157
- focus.focusLeft = `${props.focusKey}-row-${row}-column-${column - 1}`;
158
- }
159
- }
160
- if (column === maxColumn - 1) {
161
- if (props.focusRight) {
162
- focus.focusRight = props.focusRight;
163
- }
164
- } else {
165
- focus.focusRight = `${props.focusKey}-row-${row}-column-${column + 1}`;
166
- if (row >= maxRow - 1 && column + 1 >= lastElementColumn - 1) {
167
- focus.focusRight = lastCellKey;
168
- }
169
- }
170
- let debugFocus = {};
171
- if (DEBUG_FOCUS) {
172
- debugFocus = {
173
- maxRow,
174
- maxColumn,
175
- lastElementColumn,
176
- row,
177
- column,
178
- lastCellKey,
179
- lastCellFullKey
180
- };
181
- }
182
- row = Math.floor((itemIndex + 1) / itemsPerRow);
183
- if (row > wired.lastGridRow) {
184
- wired.row += 1;
185
- wired.column = 0;
186
- wired.lastGridRow = row;
187
- } else {
188
- wired.column += 1;
189
- }
190
- wired.index += 1;
191
- wiredGridRef.current = wired;
85
+ let row = Math.floor(itemIndex / itemsPerRow);
86
+ let column = itemIndex % itemsPerRow;
87
+
88
+ // TODO pass in the focusStart xx and yy
89
+ // To support rehydrating last select element in grid
90
+
91
+ if (props?.assignFocus !== false) {
192
92
  child = /*#__PURE__*/React.cloneElement(child, {
193
- ...focus,
194
- ...debugFocus,
195
- testID: focus.focusKey
93
+ focusKey: 'cell',
94
+ xx: column,
95
+ yy: gridYOffset + renderRowIndex,
96
+ focusStart: props.focusStart && column == 0 && row == 0
196
97
  });
197
98
  }
198
99
  return /*#__PURE__*/_jsx(View, {
199
100
  children: child
200
- }, `cell-${itemIndex}-${renderRowIndex}`);
101
+ }, `cell-${row}-${column}`);
201
102
  };
202
103
  let rows = null;
203
104
  let row = null;
@@ -215,20 +116,23 @@ const SnowGridW = props => {
215
116
  rows.push(row);
216
117
  }
217
118
  }
218
- return /*#__PURE__*/_jsxs(View, {
119
+ return /*#__PURE__*/_jsxs(SnowView, {
120
+ parentPath: focusPath,
219
121
  testID: props.testID,
220
122
  style: gridStyle,
221
- children: [pageControls, rows.map((row, rowIndex) => {
222
- return /*#__PURE__*/_jsx(View, {
223
- style: rowStyle,
224
- children: row.map(cell => {
225
- return cell;
226
- })
227
- }, `row-${renderKey}-${rowIndex}`);
123
+ children: [pageControls, /*#__PURE__*/_jsx(SnowView, {
124
+ xx: 0,
125
+ yy: gridYOffset,
126
+ children: rows.map((row, rowIndex) => {
127
+ return /*#__PURE__*/_jsx(View, {
128
+ style: rowStyle,
129
+ children: row.map(cell => {
130
+ return cell;
131
+ })
132
+ }, `row-${focusPath}-${rowIndex}`);
133
+ })
228
134
  })]
229
- }, renderKey);
135
+ }, focusPath);
230
136
  };
231
- SnowGridW.isSnowFocusWired = true;
232
- export const SnowGrid = SnowGridW;
233
137
  export default SnowGrid;
234
138
  //# sourceMappingURL=snow-grid.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","useStyleContext","useFocusContext","useNavigationContext","SnowPager","jsx","_jsx","jsxs","_jsxs","emptyWiredGrid","row","column","index","lastGridRow","SnowGridW","props","items","children","Children","toArray","filter","child","length","SnowStyle","currentRoute","DEBUG_FOCUS","wiredGridRef","useRef","itemsPerRow","itemsPerPage","maxPage","Math","ceil","gridStyle","component","grid","push","short","rowStyle","renderItem","item","page","routeParams","hasOwnProperty","focusKey","parseInt","hasPageControls","slice","maxColumn","min","maxRow","max","lastElementColumn","gridFocusKey","lastCellKey","lastCellFullKey","pageControls","focusUp","focusDown","current","renderKey","renderCell","itemIndex","renderRowIndex","focus","type","isSnowFocusWired","assignFocus","wired","undefined","focusStart","focusLeft","focusRight","debugFocus","floor","cloneElement","testID","rows","ii","style","map","rowIndex","cell","SnowGrid"],"sourceRoot":"../../../../src","sources":["component/wired/snow-grid.js"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","View","useStyleContext","useFocusContext","useNavigationContext","SnowView","SnowPager","jsx","_jsx","jsxs","_jsxs","SnowGrid","props","items","children","Children","toArray","filter","child","length","SnowStyle","currentRoute","focusPath","focusWrap","canFocus","itemsPerRow","itemsPerPage","maxPage","Math","ceil","gridStyle","component","grid","push","short","rowStyle","row","renderItem","item","page","routeParams","hasOwnProperty","focusKey","parseInt","hasPageControls","slice","maxColumn","min","maxRow","max","lastElementColumn","gridYOffset","pageControls","renderCell","itemIndex","renderRowIndex","floor","column","assignFocus","cloneElement","xx","yy","focusStart","rows","ii","parentPath","testID","style","map","rowIndex","cell"],"sourceRoot":"../../../../src","sources":["component/wired/snow-grid.js"],"mappings":"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","ignoreList":[]}
@@ -6,22 +6,18 @@ import { Image } from 'expo-image';
6
6
  import { useStyleContext } from "../../context/snow-style-context.js";
7
7
  import { useFocusContext } from "../../context/snow-focus-context.js";
8
8
  import SnowText from "../snow-text.js";
9
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
10
- const SnowImageButtonW = props => {
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ export const SnowImageButton = props => {
11
11
  const {
12
12
  SnowStyle
13
13
  } = useStyleContext(props);
14
14
  const {
15
- focusEnabled,
16
- isFocused,
17
- useFocusWiring,
18
- focusPress,
19
- focusLongPress,
20
- tvRemoteProps
21
- } = useFocusContext();
22
- const {
23
- elementRef
24
- } = useFocusWiring(props);
15
+ focusWrap,
16
+ isFocused
17
+ } = useFocusContext('image-button', {
18
+ ...props,
19
+ canFocus: true
20
+ });
25
21
  let fontStyle = [SnowStyle.component.imageButton.text];
26
22
  let title = props.title;
27
23
  if (title && title.length > 60) {
@@ -48,7 +44,7 @@ const SnowImageButtonW = props => {
48
44
  wrapperStyle.push(SnowStyle.component.imageButton.selected);
49
45
  textWrapperStyle.push(SnowStyle.component.imageButton.selected);
50
46
  }
51
- if (isFocused(props.focusKey)) {
47
+ if (isFocused) {
52
48
  wrapperStyle.push(SnowStyle.component.imageButton.focused);
53
49
  textWrapperStyle.push(SnowStyle.component.imageButton.focused);
54
50
  }
@@ -62,35 +58,21 @@ const SnowImageButtonW = props => {
62
58
  imageSource = props.imageSource;
63
59
  }
64
60
  }
65
- let onPress = props.onPress;
66
- let onLongPress = props.onLongPress;
67
- if (focusEnabled) {
68
- onPress = focusPress(elementRef, props.focusKey);
69
- onLongPress = focusLongPress(elementRef, props.focusKey);
70
- }
71
- return /*#__PURE__*/_jsx(_Fragment, {
72
- children: /*#__PURE__*/_jsxs(Pressable, {
73
- ref: elementRef,
74
- ...tvRemoteProps(props),
75
- style: wrapperStyle,
76
- onPress: onPress,
77
- onLongPress: onLongPress,
78
- children: [/*#__PURE__*/_jsx(Image, {
79
- style: imageStyle,
80
- contentFit: "contain",
81
- source: imageSource,
82
- placeholder: props.placeholder
83
- }), /*#__PURE__*/_jsx(View, {
84
- style: textWrapperStyle,
85
- children: /*#__PURE__*/_jsx(SnowText, {
86
- style: fontStyle,
87
- children: title
88
- })
89
- })]
90
- })
91
- });
61
+ return focusWrap(/*#__PURE__*/_jsxs(Pressable, {
62
+ style: wrapperStyle,
63
+ children: [/*#__PURE__*/_jsx(Image, {
64
+ style: imageStyle,
65
+ contentFit: "contain",
66
+ source: imageSource,
67
+ placeholder: props.placeholder
68
+ }), /*#__PURE__*/_jsx(View, {
69
+ style: textWrapperStyle,
70
+ children: /*#__PURE__*/_jsx(SnowText, {
71
+ style: fontStyle,
72
+ children: title
73
+ })
74
+ })]
75
+ }));
92
76
  };
93
- SnowImageButtonW.isSnowFocusWired = true;
94
- export const SnowImageButton = SnowImageButtonW;
95
77
  export default SnowImageButton;
96
78
  //# sourceMappingURL=snow-image-button.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Pressable","Image","useStyleContext","useFocusContext","SnowText","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","SnowImageButtonW","props","SnowStyle","focusEnabled","isFocused","useFocusWiring","focusPress","focusLongPress","tvRemoteProps","elementRef","fontStyle","component","imageButton","text","title","length","push","smallText","substring","wrapperStyle","wrapper","imageStyle","image","wide","wrapperWide","imageWide","square","wrapperSquare","imageSquare","textWrapperStyle","textWrapper","dull","selected","focusKey","focused","imageSource","imageUrl","uri","onPress","onLongPress","children","ref","style","contentFit","source","placeholder","isSnowFocusWired","SnowImageButton"],"sourceRoot":"../../../../src","sources":["component/wired/snow-image-button.js"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","View","Pressable","Image","useStyleContext","useFocusContext","SnowText","jsx","_jsx","jsxs","_jsxs","SnowImageButton","props","SnowStyle","focusWrap","isFocused","canFocus","fontStyle","component","imageButton","text","title","length","push","smallText","substring","wrapperStyle","wrapper","imageStyle","image","wide","wrapperWide","imageWide","square","wrapperSquare","imageSquare","textWrapperStyle","textWrapper","dull","selected","focused","imageSource","imageUrl","uri","style","children","contentFit","source","placeholder"],"sourceRoot":"../../../../src","sources":["component/wired/snow-image-button.js"],"mappings":"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","ignoreList":[]}
@@ -2,17 +2,21 @@
2
2
 
3
3
  import React from 'react';
4
4
  import { useFocusContext } from "../../context/snow-focus-context.js";
5
+ import SnowView from "./snow-view.js";
5
6
  import SnowLabel from "../snow-label.js";
6
7
  import SnowGrid from "./snow-grid.js";
7
8
  import SnowImageButton from "./snow-image-button.js";
8
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
9
- const SnowImageGridW = props => {
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ export const SnowImageGrid = props => {
10
11
  if (!props.items || !props.items.length) {
11
12
  return null;
12
13
  }
13
14
  const {
14
- readFocusProps
15
- } = useFocusContext();
15
+ focusPath
16
+ } = useFocusContext('image-grid', {
17
+ ...props,
18
+ canFocus: false
19
+ });
16
20
  const [toggledItems, setToggledItems] = React.useState({});
17
21
  const itemsPerRow = props.itemsPerRow || 5;
18
22
  const renderItem = (item, itemIndex) => {
@@ -85,18 +89,16 @@ const SnowImageGridW = props => {
85
89
  if (props.itemsPerPage) {
86
90
  gridProps.itemsPerPage = props.itemsPerPage;
87
91
  }
88
- return /*#__PURE__*/_jsxs(_Fragment, {
92
+ return /*#__PURE__*/_jsxs(SnowView, {
89
93
  children: [props.title ? /*#__PURE__*/_jsxs(SnowLabel, {
90
94
  children: [props.title, " (", props.items.length, ")"]
91
95
  }) : null, /*#__PURE__*/_jsx(SnowGrid, {
92
- ...readFocusProps(props),
93
96
  ...gridProps,
97
+ parentPath: focusPath,
94
98
  items: props.items,
95
99
  renderItem: renderItem
96
100
  })]
97
101
  });
98
102
  };
99
- SnowImageGridW.isSnowFocusWired = true;
100
- export const SnowImageGrid = SnowImageGridW;
101
103
  export default SnowImageGrid;
102
104
  //# sourceMappingURL=snow-image-grid.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useFocusContext","SnowLabel","SnowGrid","SnowImageButton","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","SnowImageGridW","props","items","length","readFocusProps","toggledItems","setToggledItems","useState","itemsPerRow","renderItem","item","itemIndex","sourceProps","getItemImageUrl","imageUrl","getItemImageSource","imageSource","getItemImageFallback","itemName","getItemName","toggled","hasOwnProperty","id","isDull","disableToggle","getItemToggleStatus","snowStyle","wide","wideImage","square","squareImage","dull","onPress","onLongPress","longPressToggle","prev","result","title","gridProps","itemsPerPage","children","isSnowFocusWired","SnowImageGrid"],"sourceRoot":"../../../../src","sources":["component/wired/snow-image-grid.js"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useFocusContext","SnowView","SnowLabel","SnowGrid","SnowImageButton","jsx","_jsx","jsxs","_jsxs","SnowImageGrid","props","items","length","focusPath","canFocus","toggledItems","setToggledItems","useState","itemsPerRow","renderItem","item","itemIndex","sourceProps","getItemImageUrl","imageUrl","getItemImageSource","imageSource","getItemImageFallback","itemName","getItemName","toggled","hasOwnProperty","id","isDull","disableToggle","getItemToggleStatus","snowStyle","wide","wideImage","square","squareImage","dull","onPress","onLongPress","longPressToggle","prev","result","title","gridProps","itemsPerPage","children","parentPath"],"sourceRoot":"../../../../src","sources":["component/wired/snow-image-grid.js"],"mappings":"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","ignoreList":[]}