@fluentui-react-native/framework-base 0.2.1 → 0.3.0

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 (187) hide show
  1. package/CHANGELOG.json +1 -1
  2. package/CHANGELOG.md +35 -2
  3. package/README.md +18 -1
  4. package/babel.config.js +1 -1
  5. package/jsx-runtime.js +1 -0
  6. package/lib/component-patterns/directComponent.d.ts +7 -0
  7. package/lib/component-patterns/directComponent.d.ts.map +1 -0
  8. package/lib/component-patterns/directComponent.js +8 -0
  9. package/lib/component-patterns/directComponent.js.map +1 -0
  10. package/lib/component-patterns/extract.d.ts +22 -0
  11. package/lib/component-patterns/extract.d.ts.map +1 -0
  12. package/lib/component-patterns/extract.js +25 -0
  13. package/lib/component-patterns/extract.js.map +1 -0
  14. package/lib/component-patterns/phasedComponent.d.ts +18 -0
  15. package/lib/component-patterns/phasedComponent.d.ts.map +1 -0
  16. package/lib/component-patterns/phasedComponent.js +51 -0
  17. package/lib/component-patterns/phasedComponent.js.map +1 -0
  18. package/lib/component-patterns/render.d.ts +9 -3
  19. package/lib/component-patterns/render.d.ts.map +1 -1
  20. package/lib/component-patterns/render.js +39 -32
  21. package/lib/component-patterns/render.js.map +1 -1
  22. package/lib/component-patterns/render.types.d.ts +60 -34
  23. package/lib/component-patterns/render.types.d.ts.map +1 -1
  24. package/lib/component-patterns/render.types.js +1 -1
  25. package/lib/component-patterns/stagedComponent.d.ts +3 -8
  26. package/lib/component-patterns/stagedComponent.d.ts.map +1 -1
  27. package/lib/component-patterns/stagedComponent.js +10 -27
  28. package/lib/component-patterns/stagedComponent.js.map +1 -1
  29. package/lib/component-patterns/withSlots.d.ts +6 -2
  30. package/lib/component-patterns/withSlots.d.ts.map +1 -1
  31. package/lib/component-patterns/withSlots.js +3 -3
  32. package/lib/component-patterns/withSlots.js.map +1 -1
  33. package/lib/immutable-merge/Merge.d.ts +6 -3
  34. package/lib/immutable-merge/Merge.js +79 -83
  35. package/lib/immutable-merge/Merge.js.map +1 -1
  36. package/lib/immutable-merge/Merge.test.d.ts +1 -1
  37. package/lib/immutable-merge/Merge.test.js +231 -219
  38. package/lib/immutable-merge/Merge.test.js.map +1 -1
  39. package/lib/index.d.ts +33 -5
  40. package/lib/index.d.ts.map +1 -1
  41. package/lib/index.js +13 -4
  42. package/lib/index.js.map +1 -1
  43. package/lib/jsx-namespace.d.ts +65 -0
  44. package/lib/jsx-namespace.d.ts.map +1 -0
  45. package/lib/jsx-namespace.js +2 -0
  46. package/lib/jsx-namespace.js.map +1 -0
  47. package/lib/jsx-runtime.d.ts +6 -4
  48. package/lib/jsx-runtime.d.ts.map +1 -1
  49. package/lib/jsx-runtime.js +9 -7
  50. package/lib/jsx-runtime.js.map +1 -1
  51. package/lib/memo-cache/getCacheEntry.d.ts +13 -13
  52. package/lib/memo-cache/getCacheEntry.js +20 -22
  53. package/lib/memo-cache/getCacheEntry.js.map +1 -1
  54. package/lib/memo-cache/getCacheEntry.test.d.ts +1 -1
  55. package/lib/memo-cache/getCacheEntry.test.js +90 -90
  56. package/lib/memo-cache/getCacheEntry.test.js.map +1 -1
  57. package/lib/memo-cache/getMemoCache.d.ts +1 -1
  58. package/lib/memo-cache/getMemoCache.js +11 -11
  59. package/lib/memo-cache/getMemoCache.js.map +1 -1
  60. package/lib/memo-cache/getMemoCache.test.d.ts +1 -1
  61. package/lib/memo-cache/getMemoCache.test.js +73 -73
  62. package/lib/memo-cache/getMemoCache.test.js.map +1 -1
  63. package/lib/memo-cache/memoize.d.ts +1 -1
  64. package/lib/memo-cache/memoize.js +9 -9
  65. package/lib/memo-cache/memoize.js.map +1 -1
  66. package/lib/memo-cache/memoize.test.d.ts +1 -1
  67. package/lib/memo-cache/memoize.test.js +36 -38
  68. package/lib/memo-cache/memoize.test.js.map +1 -1
  69. package/lib/merge-props/index.d.ts +1 -1
  70. package/lib/merge-props/index.js +1 -1
  71. package/lib/merge-props/mergeProps.d.ts +1 -1
  72. package/lib/merge-props/mergeProps.js +4 -4
  73. package/lib/merge-props/mergeProps.js.map +1 -1
  74. package/lib/merge-props/mergeStyles.d.ts +33 -4
  75. package/lib/merge-props/mergeStyles.d.ts.map +1 -1
  76. package/lib/merge-props/mergeStyles.js +16 -17
  77. package/lib/merge-props/mergeStyles.js.map +1 -1
  78. package/lib/merge-props/mergeStyles.test.d.ts +1 -1
  79. package/lib/merge-props/mergeStyles.test.js +75 -75
  80. package/lib/merge-props/mergeStyles.test.js.map +1 -1
  81. package/lib/merge-props/mergeStyles.types.d.ts +4 -4
  82. package/lib/merge-props/mergeStyles.types.d.ts.map +1 -1
  83. package/lib/merge-props/mergeStyles.types.js +1 -1
  84. package/lib/utilities/filterProps.d.ts +3 -0
  85. package/lib/utilities/filterProps.d.ts.map +1 -0
  86. package/lib/utilities/filterProps.js +12 -0
  87. package/lib/utilities/filterProps.js.map +1 -0
  88. package/lib-commonjs/component-patterns/directComponent.d.ts +7 -0
  89. package/lib-commonjs/component-patterns/directComponent.d.ts.map +1 -0
  90. package/lib-commonjs/component-patterns/directComponent.js +11 -0
  91. package/lib-commonjs/component-patterns/directComponent.js.map +1 -0
  92. package/lib-commonjs/component-patterns/extract.d.ts +22 -0
  93. package/lib-commonjs/component-patterns/extract.d.ts.map +1 -0
  94. package/lib-commonjs/component-patterns/extract.js +30 -0
  95. package/lib-commonjs/component-patterns/extract.js.map +1 -0
  96. package/lib-commonjs/component-patterns/phasedComponent.d.ts +18 -0
  97. package/lib-commonjs/component-patterns/phasedComponent.d.ts.map +1 -0
  98. package/lib-commonjs/component-patterns/phasedComponent.js +60 -0
  99. package/lib-commonjs/component-patterns/phasedComponent.js.map +1 -0
  100. package/lib-commonjs/component-patterns/render.d.ts +9 -3
  101. package/lib-commonjs/component-patterns/render.d.ts.map +1 -1
  102. package/lib-commonjs/component-patterns/render.js +101 -64
  103. package/lib-commonjs/component-patterns/render.js.map +1 -1
  104. package/lib-commonjs/component-patterns/render.types.d.ts +60 -34
  105. package/lib-commonjs/component-patterns/render.types.d.ts.map +1 -1
  106. package/lib-commonjs/component-patterns/render.types.js +3 -3
  107. package/lib-commonjs/component-patterns/stagedComponent.d.ts +3 -8
  108. package/lib-commonjs/component-patterns/stagedComponent.d.ts.map +1 -1
  109. package/lib-commonjs/component-patterns/stagedComponent.js +64 -56
  110. package/lib-commonjs/component-patterns/stagedComponent.js.map +1 -1
  111. package/lib-commonjs/component-patterns/withSlots.d.ts +6 -2
  112. package/lib-commonjs/component-patterns/withSlots.d.ts.map +1 -1
  113. package/lib-commonjs/component-patterns/withSlots.js +7 -8
  114. package/lib-commonjs/component-patterns/withSlots.js.map +1 -1
  115. package/lib-commonjs/immutable-merge/Merge.d.ts +6 -3
  116. package/lib-commonjs/immutable-merge/Merge.js +85 -90
  117. package/lib-commonjs/immutable-merge/Merge.js.map +1 -1
  118. package/lib-commonjs/immutable-merge/Merge.test.d.ts +1 -1
  119. package/lib-commonjs/immutable-merge/Merge.test.js +234 -222
  120. package/lib-commonjs/immutable-merge/Merge.test.js.map +1 -1
  121. package/lib-commonjs/index.d.ts +33 -5
  122. package/lib-commonjs/index.d.ts.map +1 -1
  123. package/lib-commonjs/index.js +184 -31
  124. package/lib-commonjs/index.js.map +1 -1
  125. package/lib-commonjs/jsx-namespace.d.ts +65 -0
  126. package/lib-commonjs/jsx-namespace.d.ts.map +1 -0
  127. package/lib-commonjs/jsx-namespace.js +3 -0
  128. package/lib-commonjs/jsx-namespace.js.map +1 -0
  129. package/lib-commonjs/jsx-runtime.d.ts +6 -4
  130. package/lib-commonjs/jsx-runtime.d.ts.map +1 -1
  131. package/lib-commonjs/jsx-runtime.js +69 -34
  132. package/lib-commonjs/jsx-runtime.js.map +1 -1
  133. package/lib-commonjs/memo-cache/getCacheEntry.d.ts +13 -13
  134. package/lib-commonjs/memo-cache/getCacheEntry.js +23 -26
  135. package/lib-commonjs/memo-cache/getCacheEntry.js.map +1 -1
  136. package/lib-commonjs/memo-cache/getCacheEntry.test.d.ts +1 -1
  137. package/lib-commonjs/memo-cache/getCacheEntry.test.js +93 -93
  138. package/lib-commonjs/memo-cache/getCacheEntry.test.js.map +1 -1
  139. package/lib-commonjs/memo-cache/getMemoCache.d.ts +1 -1
  140. package/lib-commonjs/memo-cache/getMemoCache.js +16 -17
  141. package/lib-commonjs/memo-cache/getMemoCache.js.map +1 -1
  142. package/lib-commonjs/memo-cache/getMemoCache.test.d.ts +1 -1
  143. package/lib-commonjs/memo-cache/getMemoCache.test.js +76 -76
  144. package/lib-commonjs/memo-cache/getMemoCache.test.js.map +1 -1
  145. package/lib-commonjs/memo-cache/memoize.d.ts +1 -1
  146. package/lib-commonjs/memo-cache/memoize.js +13 -14
  147. package/lib-commonjs/memo-cache/memoize.js.map +1 -1
  148. package/lib-commonjs/memo-cache/memoize.test.d.ts +1 -1
  149. package/lib-commonjs/memo-cache/memoize.test.js +39 -41
  150. package/lib-commonjs/memo-cache/memoize.test.js.map +1 -1
  151. package/lib-commonjs/merge-props/index.d.ts +1 -1
  152. package/lib-commonjs/merge-props/index.js +17 -7
  153. package/lib-commonjs/merge-props/index.js.map +1 -1
  154. package/lib-commonjs/merge-props/mergeProps.d.ts +1 -1
  155. package/lib-commonjs/merge-props/mergeProps.js +9 -10
  156. package/lib-commonjs/merge-props/mergeProps.js.map +1 -1
  157. package/lib-commonjs/merge-props/mergeStyles.d.ts +33 -4
  158. package/lib-commonjs/merge-props/mergeStyles.d.ts.map +1 -1
  159. package/lib-commonjs/merge-props/mergeStyles.js +23 -25
  160. package/lib-commonjs/merge-props/mergeStyles.js.map +1 -1
  161. package/lib-commonjs/merge-props/mergeStyles.test.d.ts +1 -1
  162. package/lib-commonjs/merge-props/mergeStyles.test.js +78 -78
  163. package/lib-commonjs/merge-props/mergeStyles.test.js.map +1 -1
  164. package/lib-commonjs/merge-props/mergeStyles.types.d.ts +4 -4
  165. package/lib-commonjs/merge-props/mergeStyles.types.d.ts.map +1 -1
  166. package/lib-commonjs/merge-props/mergeStyles.types.js +3 -3
  167. package/lib-commonjs/utilities/filterProps.d.ts +3 -0
  168. package/lib-commonjs/utilities/filterProps.d.ts.map +1 -0
  169. package/lib-commonjs/utilities/filterProps.js +15 -0
  170. package/lib-commonjs/utilities/filterProps.js.map +1 -0
  171. package/package.json +48 -26
  172. package/src/component-patterns/README.md +53 -16
  173. package/src/component-patterns/directComponent.ts +9 -0
  174. package/src/component-patterns/extract.ts +32 -0
  175. package/src/component-patterns/phasedComponent.ts +54 -0
  176. package/src/component-patterns/render.ts +21 -13
  177. package/src/component-patterns/render.types.ts +55 -30
  178. package/src/component-patterns/stagedComponent.ts +24 -0
  179. package/src/immutable-merge/Merge.test.ts +5 -1
  180. package/src/index.ts +27 -7
  181. package/src/jsx-namespace.ts +83 -0
  182. package/src/jsx-runtime.ts +8 -4
  183. package/src/memo-cache/README.md +1 -1
  184. package/src/merge-props/mergeStyles.ts +52 -4
  185. package/src/merge-props/mergeStyles.types.ts +2 -2
  186. package/src/utilities/filterProps.ts +14 -0
  187. package/src/component-patterns/stagedComponent.tsx +0 -45
@@ -1 +1 @@
1
- {"version":3,"file":"memoize.test.js","sourceRoot":"","sources":["../../src/memo-cache/memoize.test.ts"],"names":[],"mappings":";;AAAA,uCAAoC;AAEpC,IAAI,YAAY,GAAG,CAAC,CAAC;AAErB,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACnC,MAAM,QAAQ,GAAG,IAAA,iBAAO,EAAC,GAAG,EAAE;YAC5B,OAAO,EAAE,YAAY,CAAC;QACxB,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,QAAQ,EAAE,CAAC;QAC3B,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACjC,MAAM,WAAW,GAAG,IAAA,iBAAO,EAAC,CAAC,IAAY,EAAE,EAAE;YAC3C,EAAE,YAAY,CAAC;YACf,OAAO,IAAI,GAAG,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,KAAK,GAAG,YAAY,CAAC;QAC3B,WAAW,CAAC,CAAC,CAAC,CAAC;QACf,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpC,WAAW,CAAC,CAAC,CAAC,CAAC;QACf,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACxC,WAAW,CAAC,CAAC,CAAC,CAAC;QACf,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAChC,MAAM,MAAM,GAAG,IAAA,iBAAO,EAAC,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE;YAC9C,IAAI,CAAC,EAAE;gBACL,EAAE,YAAY,CAAC;aAChB;iBAAM,IAAI,CAAC,EAAE;gBACZ,EAAE,YAAY,CAAC;aAChB;iBAAM;gBACL,EAAE,YAAY,CAAC;aAChB;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACnB,MAAM,KAAK,GAAG,YAAY,CAAC;QAC3B,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACnB,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACnB,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"memoize.test.js","sourceRoot":"","sources":["../../src/memo-cache/memoize.test.ts"],"names":[],"mappings":";;AAAA,uCAAoC;AAEpC,IAAI,YAAY,GAAG,CAAC,CAAC;AAErB,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE,CAAC;IACnC,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAA,iBAAO,EAAC,GAAG,EAAE,CAAC;YAC7B,OAAO,EAAE,YAAY,CAAC;QAAA,CACvB,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,QAAQ,EAAE,CAAC;QAC3B,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAAA,CACrC,CAAC,CAAC;IAEH,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,IAAA,iBAAO,EAAC,CAAC,IAAY,EAAE,EAAE,CAAC;YAC5C,EAAE,YAAY,CAAC;YACf,OAAO,IAAI,GAAG,CAAC,CAAC;QAAA,CACjB,CAAC,CAAC;QAEH,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,KAAK,GAAG,YAAY,CAAC;QAC3B,WAAW,CAAC,CAAC,CAAC,CAAC;QACf,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpC,WAAW,CAAC,CAAC,CAAC,CAAC;QACf,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACxC,WAAW,CAAC,CAAC,CAAC,CAAC;QACf,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAAA,CACzC,CAAC,CAAC;IAEH,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,IAAA,iBAAO,EAAC,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC;YAC/C,IAAI,CAAC,EAAE,CAAC;gBACN,EAAE,YAAY,CAAC;YACjB,CAAC;iBAAM,IAAI,CAAC,EAAE,CAAC;gBACb,EAAE,YAAY,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,EAAE,YAAY,CAAC;YACjB,CAAC;QAAA,CACF,CAAC,CAAC;QAEH,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACnB,MAAM,KAAK,GAAG,YAAY,CAAC;QAC3B,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACnB,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACnB,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAAA,CACzC,CAAC,CAAC;AAAA,CACJ,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export type { StyleProp } from './mergeStyles.types';
2
2
  export { mergeStyles } from './mergeStyles';
3
3
  export { mergeProps } from './mergeProps';
4
- //# sourceMappingURL=index.d.ts.map
4
+ //# sourceMappingURL=index.d.ts.map
@@ -1,8 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ 'use strict';
2
+ Object.defineProperty(exports, '__esModule', { value: true });
3
3
  exports.mergeProps = exports.mergeStyles = void 0;
4
- var mergeStyles_1 = require("./mergeStyles");
5
- Object.defineProperty(exports, "mergeStyles", { enumerable: true, get: function () { return mergeStyles_1.mergeStyles; } });
6
- var mergeProps_1 = require("./mergeProps");
7
- Object.defineProperty(exports, "mergeProps", { enumerable: true, get: function () { return mergeProps_1.mergeProps; } });
8
- //# sourceMappingURL=index.js.map
4
+ const mergeStyles_1 = require('./mergeStyles');
5
+ Object.defineProperty(exports, 'mergeStyles', {
6
+ enumerable: true,
7
+ get: function () {
8
+ return mergeStyles_1.mergeStyles;
9
+ },
10
+ });
11
+ const mergeProps_1 = require('./mergeProps');
12
+ Object.defineProperty(exports, 'mergeProps', {
13
+ enumerable: true,
14
+ get: function () {
15
+ return mergeProps_1.mergeProps;
16
+ },
17
+ });
18
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/merge-props/index.ts"],"names":[],"mappings":";;;AACA,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,2CAA0C;AAAjC,wGAAA,UAAU,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/merge-props/index.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,6CAA0C;AAAjC,wGAAA,UAAU,OAAA"}
@@ -3,4 +3,4 @@
3
3
  * @param props - props to merge together
4
4
  */
5
5
  export declare function mergeProps<TProps>(...props: (TProps | undefined)[]): TProps;
6
- //# sourceMappingURL=mergeProps.d.ts.map
6
+ //# sourceMappingURL=mergeProps.d.ts.map
@@ -1,21 +1,20 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mergeProps = void 0;
4
- const Merge_1 = require("../immutable-merge/Merge");
5
- const mergeStyles_1 = require("./mergeStyles");
1
+ 'use strict';
2
+ Object.defineProperty(exports, '__esModule', { value: true });
3
+ exports.mergeProps = mergeProps;
4
+ const Merge_1 = require('../immutable-merge/Merge');
5
+ const mergeStyles_1 = require('./mergeStyles');
6
6
  /**
7
7
  * Props will not deeply merge with the exception of a style property. Also className needs to be handled specially.
8
8
  */
9
9
  const mergePropsOptions = {
10
- className: (...names) => names.filter((v) => v && typeof v === 'string').join(' '),
11
- style: mergeStyles_1.mergeStyles,
10
+ className: (...names) => names.filter((v) => v && typeof v === 'string').join(' '),
11
+ style: mergeStyles_1.mergeStyles,
12
12
  };
13
13
  /**
14
14
  * Merge props together, flattening and merging styles as appropriate
15
15
  * @param props - props to merge together
16
16
  */
17
17
  function mergeProps(...props) {
18
- return (0, Merge_1.immutableMergeCore)(mergePropsOptions, ...(0, Merge_1.filterToObjects)(props));
18
+ return (0, Merge_1.immutableMergeCore)(mergePropsOptions, ...(0, Merge_1.filterToObjects)(props));
19
19
  }
20
- exports.mergeProps = mergeProps;
21
- //# sourceMappingURL=mergeProps.js.map
20
+ //# sourceMappingURL=mergeProps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mergeProps.js","sourceRoot":"","sources":["../../src/merge-props/mergeProps.ts"],"names":[],"mappings":";;;AACA,oDAA+E;AAE/E,+CAA4C;AAE5C;;GAEG;AACH,MAAM,iBAAiB,GAAiB;IACtC,SAAS,EAAE,CAAC,GAAG,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;IACzF,KAAK,EAAE,yBAAW;CACnB,CAAC;AAEF;;;GAGG;AACH,SAAgB,UAAU,CAAS,GAAG,KAA6B;IACjE,OAAO,IAAA,0BAAkB,EAAC,iBAAiB,EAAE,GAAG,IAAA,uBAAe,EAAS,KAAK,CAAC,CAAC,CAAC;AAClF,CAAC;AAFD,gCAEC"}
1
+ {"version":3,"file":"mergeProps.js","sourceRoot":"","sources":["../../src/merge-props/mergeProps.ts"],"names":[],"mappings":";;;AACA,oDAA+E;AAE/E,+CAA4C;AAE5C;;GAEG;AACH,MAAM,iBAAiB,GAAiB;IACtC,SAAS,EAAE,CAAC,GAAG,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;IACzF,KAAK,EAAE,yBAAW;CACnB,CAAC;AAEF;;;GAGG;AACH,oBAAmC,GAAG,KAA6B,EAAU;IAC3E,OAAO,IAAA,0BAAkB,EAAC,iBAAiB,EAAE,GAAG,IAAA,uBAAe,EAAS,KAAK,CAAC,CAAC,CAAC;AAAA,CACjF"}
@@ -5,12 +5,41 @@ import type { StyleProp } from './mergeStyles.types';
5
5
  *
6
6
  * @param style - StyleProp<TStyle> to flatten, this can be a TStyle or an array
7
7
  */
8
- export declare function flattenStyle(style: StyleProp<object>): object;
8
+ export declare function flattenStyle<T extends object>(style: StyleProp<T>): T;
9
9
  /**
10
10
  * Merge styles together into a single flat object and optionally finalize them, can also be used to finalize a single style
11
11
  *
12
12
  * @param styles - array of styles to merge together. The styles will be flattened as part of the process
13
13
  */
14
- export declare function mergeAndFlattenStyles(...styles: StyleProp<object>[]): object | undefined;
15
- export declare function mergeStyles(...styles: StyleProp<object>[]): object | undefined;
16
- //# sourceMappingURL=mergeStyles.d.ts.map
14
+ export declare function mergeAndFlattenStyles<T1 extends object, T2 extends object>(
15
+ style1: StyleProp<T1>,
16
+ style2: StyleProp<T2>,
17
+ ): (T1 & T2) | undefined;
18
+ export declare function mergeAndFlattenStyles<T1 extends object, T2 extends object, T3 extends object>(
19
+ style1: StyleProp<T1>,
20
+ style2: StyleProp<T2>,
21
+ style3: StyleProp<T3>,
22
+ ): (T1 & T2 & T3) | undefined;
23
+ export declare function mergeAndFlattenStyles<TStyle extends object>(...styles: StyleProp<any>[]): TStyle | undefined;
24
+ /**
25
+ * Function overloads to allow merging styles of different types.
26
+ * This is useful when merging token-based styles with React Native StyleProp types.
27
+ */
28
+ export declare function mergeStyles<T1 extends object>(style1: StyleProp<T1>): T1 | undefined;
29
+ export declare function mergeStyles<T1 extends object, T2 extends object>(
30
+ style1: StyleProp<T1>,
31
+ style2: StyleProp<T2>,
32
+ ): (T1 & T2) | undefined;
33
+ export declare function mergeStyles<T1 extends object, T2 extends object, T3 extends object>(
34
+ style1: StyleProp<T1>,
35
+ style2: StyleProp<T2>,
36
+ style3: StyleProp<T3>,
37
+ ): (T1 & T2 & T3) | undefined;
38
+ export declare function mergeStyles<T1 extends object, T2 extends object, T3 extends object, T4 extends object>(
39
+ style1: StyleProp<T1>,
40
+ style2: StyleProp<T2>,
41
+ style3: StyleProp<T3>,
42
+ style4: StyleProp<T4>,
43
+ ): (T1 & T2 & T3 & T4) | undefined;
44
+ export declare function mergeStyles<TStyle extends object>(...styles: StyleProp<TStyle>[]): TStyle | undefined;
45
+ //# sourceMappingURL=mergeStyles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mergeStyles.d.ts","sourceRoot":"","sources":["../../src/merge-props/mergeStyles.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,CAE7D;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,GAAG,SAAS,CAOxF;AAID,wBAAgB,WAAW,CAAC,GAAG,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,GAAG,SAAS,CAQ9E"}
1
+ {"version":3,"file":"mergeStyles.d.ts","sourceRoot":"","sources":["../../src/merge-props/mergeStyles.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAErE;AAED;;;;GAIG;AAGH,wBAAgB,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EACxE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,EACrB,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,GACpB,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC;AAGzB,wBAAgB,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EAC3F,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,EACrB,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,EACrB,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,GACpB,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC;AAG9B,wBAAgB,qBAAqB,CAAC,MAAM,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,GAAG,SAAS,CAAC;AAc9G;;;GAGG;AAGH,wBAAgB,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;AAGtF,wBAAgB,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC;AAGvI,wBAAgB,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EACjF,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,EACrB,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,EACrB,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,GACpB,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC;AAG9B,wBAAgB,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EACpG,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,EACrB,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,EACrB,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,EACrB,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,GACpB,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC;AAGnC,wBAAgB,WAAW,CAAC,MAAM,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,GAAG,SAAS,CAAC"}
@@ -1,8 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mergeStyles = exports.mergeAndFlattenStyles = exports.flattenStyle = void 0;
4
- const Merge_1 = require("../immutable-merge/Merge");
5
- const getMemoCache_1 = require("../memo-cache/getMemoCache");
1
+ 'use strict';
2
+ Object.defineProperty(exports, '__esModule', { value: true });
3
+ exports.flattenStyle = flattenStyle;
4
+ exports.mergeAndFlattenStyles = mergeAndFlattenStyles;
5
+ exports.mergeStyles = mergeStyles;
6
+ const Merge_1 = require('../immutable-merge/Merge');
7
+ const getMemoCache_1 = require('../memo-cache/getMemoCache');
6
8
  /**
7
9
  * Take a react-native style, which may be a recursive array, and return as a flattened
8
10
  * style. This is analagous to the flatten routine that is part of the style sheet API
@@ -10,29 +12,25 @@ const getMemoCache_1 = require("../memo-cache/getMemoCache");
10
12
  * @param style - StyleProp<TStyle> to flatten, this can be a TStyle or an array
11
13
  */
12
14
  function flattenStyle(style) {
13
- return Array.isArray(style) ? (0, Merge_1.immutableMerge)(...style.map((v) => flattenStyle(v))) : style || {};
15
+ return Array.isArray(style) ? (0, Merge_1.immutableMerge)(...style.map((v) => flattenStyle(v))) : style || {};
14
16
  }
15
- exports.flattenStyle = flattenStyle;
16
- /**
17
- * Merge styles together into a single flat object and optionally finalize them, can also be used to finalize a single style
18
- *
19
- * @param styles - array of styles to merge together. The styles will be flattened as part of the process
20
- */
17
+ // Implementation
21
18
  function mergeAndFlattenStyles(...styles) {
22
- // baseline merge and flatten the objects
23
- return (0, Merge_1.immutableMerge)(...styles.map((styleProp) => {
24
- return flattenStyle(styleProp);
25
- }));
19
+ // baseline merge and flatten the objects
20
+ return (0, Merge_1.immutableMerge)(
21
+ ...styles.map((styleProp) => {
22
+ return flattenStyle(styleProp);
23
+ }),
24
+ );
26
25
  }
27
- exports.mergeAndFlattenStyles = mergeAndFlattenStyles;
28
26
  const _styleCache = (0, getMemoCache_1.getMemoCache)();
27
+ // Implementation
29
28
  function mergeStyles(...styles) {
30
- // filter the style set to just objects (which might be arrays or plain style objects)
31
- const inputs = styles.filter((s) => typeof s === 'object');
32
- // now memo the results if there is more than one element or if the one element is an array
33
- return inputs.length > 1 || (inputs.length === 1 && Array.isArray(inputs[0]))
34
- ? _styleCache(() => mergeAndFlattenStyles(undefined, ...inputs), inputs)[0]
35
- : inputs[0] || {};
29
+ // filter the style set to just objects (which might be arrays or plain style objects)
30
+ const inputs = styles.filter((s) => typeof s === 'object');
31
+ // now memo the results if there is more than one element or if the one element is an array
32
+ return inputs.length > 1 || (inputs.length === 1 && Array.isArray(inputs[0]))
33
+ ? _styleCache(() => mergeAndFlattenStyles(undefined, ...inputs), inputs)[0]
34
+ : inputs[0] || {};
36
35
  }
37
- exports.mergeStyles = mergeStyles;
38
- //# sourceMappingURL=mergeStyles.js.map
36
+ //# sourceMappingURL=mergeStyles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mergeStyles.js","sourceRoot":"","sources":["../../src/merge-props/mergeStyles.ts"],"names":[],"mappings":";;;AAAA,oDAA0D;AAC1D,6DAA0D;AAI1D;;;;;GAKG;AACH,SAAgB,YAAY,CAAC,KAAwB;IACnD,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAA,sBAAc,EAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;AACnG,CAAC;AAFD,oCAEC;AAED;;;;GAIG;AACH,SAAgB,qBAAqB,CAAC,GAAG,MAA2B;IAClE,yCAAyC;IACzC,OAAO,IAAA,sBAAc,EACnB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,SAA4B,EAAE,EAAE;QAC7C,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AAPD,sDAOC;AAED,MAAM,WAAW,GAAG,IAAA,2BAAY,GAAE,CAAC;AAEnC,SAAgB,WAAW,CAAC,GAAG,MAA2B;IACxD,sFAAsF;IACtF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAa,CAAC;IAEvE,2FAA2F;IAC3F,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACtB,CAAC;AARD,kCAQC"}
1
+ {"version":3,"file":"mergeStyles.js","sourceRoot":"","sources":["../../src/merge-props/mergeStyles.ts"],"names":[],"mappings":";;;;;AAAA,oDAA0D;AAC1D,6DAA0D;AAI1D;;;;;GAKG;AACH,sBAA+C,KAAmB,EAAK;IACrE,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAA,sBAAc,EAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,IAAI,EAAE,CAAO,CAAC;AAAA,CAC9G;AAwBD,iBAAiB;AACjB,+BAAsC,GAAG,MAAwB,EAAsB;IACrF,yCAAyC;IACzC,OAAO,IAAA,sBAAc,EACnB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,SAA4B,EAAE,EAAE,CAAC;QAC9C,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;IAAA,CAChC,CAAC,CACH,CAAC;AAAA,CACH;AAED,MAAM,WAAW,GAAG,IAAA,2BAAY,GAAE,CAAC;AA+BnC,iBAAiB;AACjB,qBAA4B,GAAG,MAAwB,EAAsB;IAC3E,sFAAsF;IACtF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAa,CAAC;IAEvE,2FAA2F;IAC3F,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAAA,CACrB"}
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=mergeStyles.test.d.ts.map
2
+ //# sourceMappingURL=mergeStyles.test.d.ts.map
@@ -1,96 +1,96 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const mergeStyles_1 = require("./mergeStyles");
1
+ 'use strict';
2
+ Object.defineProperty(exports, '__esModule', { value: true });
3
+ const mergeStyles_1 = require('./mergeStyles');
4
4
  const s1 = [
5
- { backgroundColor: 'blue' },
6
- [{ color: 'red', borderWidth: 1 }, { fontFamily: 'segoe' }, [{ backgroundColor: 'bodyBackground' }]],
5
+ { backgroundColor: 'blue' },
6
+ [{ color: 'red', borderWidth: 1 }, { fontFamily: 'segoe' }, [{ backgroundColor: 'bodyBackground' }]],
7
7
  ];
8
8
  const s1flatten = {
9
- backgroundColor: 'bodyBackground',
10
- color: 'red',
11
- borderWidth: 1,
12
- fontFamily: 'segoe',
9
+ backgroundColor: 'bodyBackground',
10
+ color: 'red',
11
+ borderWidth: 1,
12
+ fontFamily: 'segoe',
13
13
  };
14
14
  const s2 = {
15
- borderWidth: 2,
16
- fontFamily: 'primary',
17
- color: 'bodyText',
15
+ borderWidth: 2,
16
+ fontFamily: 'primary',
17
+ color: 'bodyText',
18
18
  };
19
19
  const sMerged = {
20
- backgroundColor: 'bodyBackground',
21
- borderWidth: 2,
22
- fontFamily: 'primary',
23
- color: 'bodyText',
20
+ backgroundColor: 'bodyBackground',
21
+ borderWidth: 2,
22
+ fontFamily: 'primary',
23
+ color: 'bodyText',
24
24
  };
25
25
  const sSelector = {
26
- borderWidth: 1,
27
- ':hover': {
28
- borderWidth: 2,
29
- fontFamily: 'primary',
30
- },
26
+ borderWidth: 1,
27
+ ':hover': {
28
+ borderWidth: 2,
29
+ fontFamily: 'primary',
30
+ },
31
31
  };
32
32
  const sSelector2 = {
33
- backgroundColor: 'white',
34
- ':hover': {
35
- backgroundColor: 'black',
36
- borderWidth: 3,
37
- },
33
+ backgroundColor: 'white',
34
+ ':hover': {
35
+ backgroundColor: 'black',
36
+ borderWidth: 3,
37
+ },
38
38
  };
39
39
  const sArraySelector = [[sSelector]];
40
40
  const sArraySelector2 = [sSelector2];
41
41
  const sMergedSelectors = {
42
- borderWidth: 1,
43
- backgroundColor: 'white',
44
- ':hover': {
45
- borderWidth: 3,
46
- fontFamily: 'primary',
47
- backgroundColor: 'black',
48
- },
42
+ borderWidth: 1,
43
+ backgroundColor: 'white',
44
+ ':hover': {
45
+ borderWidth: 3,
46
+ fontFamily: 'primary',
47
+ backgroundColor: 'black',
48
+ },
49
49
  };
50
50
  describe('Style flatten and merge tests', () => {
51
- test('flatten recursive arrays', () => {
52
- const flattened = (0, mergeStyles_1.flattenStyle)(s1);
53
- expect(flattened).toEqual(s1flatten);
54
- expect(flattened).not.toBe(s1);
55
- });
56
- test('flatten flat style returns style', () => {
57
- const flattened = (0, mergeStyles_1.flattenStyle)(s2);
58
- expect(flattened).toBe(s2);
59
- });
60
- test('merge also flattens', () => {
61
- const merged = (0, mergeStyles_1.mergeAndFlattenStyles)(undefined, undefined, s1, s2);
62
- expect(merged).toEqual(sMerged);
63
- });
64
- test('merge with sub objects', () => {
65
- const merged = (0, mergeStyles_1.mergeAndFlattenStyles)(undefined, undefined, sSelector, sSelector2);
66
- expect(merged).toEqual(sMergedSelectors);
67
- });
68
- test('merge sub objects in arrays', () => {
69
- const merged = (0, mergeStyles_1.mergeAndFlattenStyles)(undefined, undefined, sArraySelector, sArraySelector2);
70
- expect(merged).toEqual(sMergedSelectors);
71
- });
72
- test('memo recursive arrays', () => {
73
- const flattened = (0, mergeStyles_1.mergeStyles)(s1);
74
- const flattened2 = (0, mergeStyles_1.mergeStyles)(s1);
75
- expect(flattened).toEqual(s1flatten);
76
- expect(flattened2).toBe(flattened);
77
- });
78
- test('memo flat style', () => {
79
- const flattened = (0, mergeStyles_1.mergeStyles)(s2);
80
- const flattened2 = (0, mergeStyles_1.mergeStyles)(s2);
81
- expect(flattened).toBe(s2);
82
- expect(flattened2).toBe(flattened);
83
- });
84
- test('memo and flatten multiple', () => {
85
- const flattened = (0, mergeStyles_1.mergeStyles)(s1, s2);
86
- const flattened2 = (0, mergeStyles_1.mergeStyles)(s1, s2);
87
- expect(flattened).toEqual(sMerged);
88
- expect(flattened2).toBe(flattened);
89
- });
90
- test('memo styles ignores undefined values', () => {
91
- const result1 = (0, mergeStyles_1.mergeStyles)(s1, s2, undefined, s1flatten);
92
- const result2 = (0, mergeStyles_1.mergeStyles)(s1, undefined, s2, s1flatten);
93
- expect(result2).toBe(result1);
94
- });
51
+ test('flatten recursive arrays', () => {
52
+ const flattened = (0, mergeStyles_1.flattenStyle)(s1);
53
+ expect(flattened).toEqual(s1flatten);
54
+ expect(flattened).not.toBe(s1);
55
+ });
56
+ test('flatten flat style returns style', () => {
57
+ const flattened = (0, mergeStyles_1.flattenStyle)(s2);
58
+ expect(flattened).toBe(s2);
59
+ });
60
+ test('merge also flattens', () => {
61
+ const merged = (0, mergeStyles_1.mergeAndFlattenStyles)(undefined, undefined, s1, s2);
62
+ expect(merged).toEqual(sMerged);
63
+ });
64
+ test('merge with sub objects', () => {
65
+ const merged = (0, mergeStyles_1.mergeAndFlattenStyles)(undefined, undefined, sSelector, sSelector2);
66
+ expect(merged).toEqual(sMergedSelectors);
67
+ });
68
+ test('merge sub objects in arrays', () => {
69
+ const merged = (0, mergeStyles_1.mergeAndFlattenStyles)(undefined, undefined, sArraySelector, sArraySelector2);
70
+ expect(merged).toEqual(sMergedSelectors);
71
+ });
72
+ test('memo recursive arrays', () => {
73
+ const flattened = (0, mergeStyles_1.mergeStyles)(s1);
74
+ const flattened2 = (0, mergeStyles_1.mergeStyles)(s1);
75
+ expect(flattened).toEqual(s1flatten);
76
+ expect(flattened2).toBe(flattened);
77
+ });
78
+ test('memo flat style', () => {
79
+ const flattened = (0, mergeStyles_1.mergeStyles)(s2);
80
+ const flattened2 = (0, mergeStyles_1.mergeStyles)(s2);
81
+ expect(flattened).toBe(s2);
82
+ expect(flattened2).toBe(flattened);
83
+ });
84
+ test('memo and flatten multiple', () => {
85
+ const flattened = (0, mergeStyles_1.mergeStyles)(s1, s2);
86
+ const flattened2 = (0, mergeStyles_1.mergeStyles)(s1, s2);
87
+ expect(flattened).toEqual(sMerged);
88
+ expect(flattened2).toBe(flattened);
89
+ });
90
+ test('memo styles ignores undefined values', () => {
91
+ const result1 = (0, mergeStyles_1.mergeStyles)(s1, s2, undefined, s1flatten);
92
+ const result2 = (0, mergeStyles_1.mergeStyles)(s1, undefined, s2, s1flatten);
93
+ expect(result2).toBe(result1);
94
+ });
95
95
  });
96
- //# sourceMappingURL=mergeStyles.test.js.map
96
+ //# sourceMappingURL=mergeStyles.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mergeStyles.test.js","sourceRoot":"","sources":["../../src/merge-props/mergeStyles.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mergeStyles.test.js","sourceRoot":"","sources":["../../src/merge-props/mergeStyles.test.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * This is a copy of the react-native style prop type, copied here to avoid RN dependencies for web clients
3
3
  */
4
- type Falsy = undefined | null | false;
5
- type RecursiveArray<T> = (T | RecursiveArray<T>)[];
4
+ type Falsy = undefined | null | false | '' | 0;
5
+ type RecursiveArray<T> = readonly (T | RecursiveArray<T>)[] | (T | RecursiveArray<T>)[];
6
6
  /** Keep a brand of 'T' so that calls to `StyleSheet.flatten` can take `RegisteredStyle<T>` and return `T`. */
7
7
  type RegisteredStyle<T> = number & {
8
- __registeredStyleBrand: T;
8
+ __registeredStyleBrand: T;
9
9
  };
10
10
  export type StyleProp<T> = T | RegisteredStyle<T> | RecursiveArray<T | RegisteredStyle<T> | Falsy> | Falsy;
11
11
  export {};
12
- //# sourceMappingURL=mergeStyles.types.d.ts.map
12
+ //# sourceMappingURL=mergeStyles.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mergeStyles.types.d.ts","sourceRoot":"","sources":["../../src/merge-props/mergeStyles.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,KAAK,KAAK,GAAG,SAAS,GAAG,IAAI,GAAG,KAAK,CAAC;AACtC,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACnD,8GAA8G;AAC9G,KAAK,eAAe,CAAC,CAAC,IAAI,MAAM,GAAG;IAAE,sBAAsB,EAAE,CAAC,CAAA;CAAE,CAAC;AAEjE,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"mergeStyles.types.d.ts","sourceRoot":"","sources":["../../src/merge-props/mergeStyles.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,KAAK,KAAK,GAAG,SAAS,GAAG,IAAI,GAAG,KAAK,GAAG,EAAE,GAAG,CAAC,CAAC;AAC/C,KAAK,cAAc,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxF,8GAA8G;AAC9G,KAAK,eAAe,CAAC,CAAC,IAAI,MAAM,GAAG;IAAE,sBAAsB,EAAE,CAAC,CAAA;CAAE,CAAC;AAEjE,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC"}
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=mergeStyles.types.js.map
1
+ 'use strict';
2
+ Object.defineProperty(exports, '__esModule', { value: true });
3
+ //# sourceMappingURL=mergeStyles.types.js.map
@@ -0,0 +1,3 @@
1
+ export type PropsFilter = (propName: string) => boolean;
2
+ export declare function filterProps<TProps>(props: TProps, filter?: PropsFilter): TProps;
3
+ //# sourceMappingURL=filterProps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterProps.d.ts","sourceRoot":"","sources":["../../src/utilities/filterProps.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;AAExD,wBAAgB,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAS/E"}
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+ Object.defineProperty(exports, '__esModule', { value: true });
3
+ exports.filterProps = filterProps;
4
+ const mergeProps_1 = require('../merge-props/mergeProps');
5
+ function filterProps(props, filter) {
6
+ if (filter && typeof props === 'object' && !Array.isArray(props)) {
7
+ const propsToRemove = filter ? Object.keys(props).filter((key) => !filter(key)) : undefined;
8
+ if (propsToRemove?.length > 0) {
9
+ const propsToRemoveObj = Object.fromEntries(propsToRemove.map((prop) => [prop, undefined]));
10
+ return (0, mergeProps_1.mergeProps)(props, propsToRemoveObj);
11
+ }
12
+ }
13
+ return props;
14
+ }
15
+ //# sourceMappingURL=filterProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterProps.js","sourceRoot":"","sources":["../../src/utilities/filterProps.ts"],"names":[],"mappings":";;;AAAA,0DAAuD;AAIvD,qBAAoC,KAAa,EAAE,MAAoB,EAAU;IAC/E,IAAI,MAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjE,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5F,IAAI,aAAa,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAW,CAAC;YACtG,OAAO,IAAA,uBAAU,EAAS,KAAK,EAAE,gBAAgB,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AAAA,CACd"}
package/package.json CHANGED
@@ -1,54 +1,76 @@
1
1
  {
2
2
  "name": "@fluentui-react-native/framework-base",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "Base types and utilities fluentui-react-native frameworks",
5
+ "keywords": [],
5
6
  "repository": {
6
7
  "type": "git",
7
8
  "url": "https://github.com/microsoft/fluentui-react-native",
8
9
  "directory": "packages/framework-base"
9
10
  },
10
- "main": "lib-commonjs/index.js",
11
- "module": "lib/index.js",
12
- "typings": "lib/index.d.ts",
13
- "react-native": "src/index.ts",
11
+ "license": "MIT",
12
+ "author": "",
14
13
  "exports": {
15
14
  ".": {
15
+ "types": "./lib/index.d.ts",
16
16
  "import": "./lib/index.js",
17
- "require": "./lib-commonjs/index.js",
18
- "types": "./lib/index.d.ts"
17
+ "require": "./lib-commonjs/index.js"
19
18
  },
20
19
  "./jsx-runtime": {
20
+ "types": "./lib/jsx-runtime.d.ts",
21
21
  "import": "./lib/jsx-runtime.js",
22
- "require": "./lib-commonjs/jsx-runtime.js",
23
- "types": "./lib/jsx-runtime.d.ts"
22
+ "require": "./lib-commonjs/jsx-runtime.js"
24
23
  }
25
24
  },
25
+ "main": "lib-commonjs/index.js",
26
+ "module": "lib/index.js",
27
+ "types": "lib/index.d.ts",
26
28
  "scripts": {
27
29
  "build": "fluentui-scripts build",
28
- "just": "fluentui-scripts",
30
+ "build-cjs": "tsgo --outDir lib-commonjs",
31
+ "build-esm": "tsgo --outDir lib --module esnext --moduleResolution bundler",
29
32
  "clean": "fluentui-scripts clean",
30
33
  "depcheck": "fluentui-scripts depcheck",
31
- "test": "fluentui-scripts jest",
32
34
  "lint": "fluentui-scripts eslint",
35
+ "lint-package": "fluentui-scripts lint-package",
36
+ "prettier": "fluentui-scripts prettier",
33
37
  "start": "fluentui-scripts dev",
34
38
  "start-test": "fluentui-scripts jest-watch",
35
- "update-snapshots": "fluentui-scripts jest -u",
36
- "prettier": "fluentui-scripts prettier",
37
- "prettier-fix": "fluentui-scripts prettier --fix true"
38
- },
39
- "keywords": [],
40
- "author": "",
41
- "license": "MIT",
42
- "dependencies": {
43
- "@types/react": "^18.2.0",
44
- "react": "18.2.0"
39
+ "test": "fluentui-scripts jest",
40
+ "update-snapshots": "fluentui-scripts jest -u"
45
41
  },
46
42
  "devDependencies": {
47
- "@fluentui-react-native/babel-config": "0.1.1",
43
+ "@babel/core": "^7.20.0",
48
44
  "@fluentui-react-native/eslint-config-rules": "0.1.1",
49
- "@fluentui-react-native/jest-config": "0.1.1",
50
- "@fluentui-react-native/scripts": "0.1.1",
45
+ "@fluentui-react-native/kit-config": "0.1.2",
46
+ "@fluentui-react-native/react-configs": "0.1.1",
47
+ "@fluentui-react-native/scripts": "0.1.2",
51
48
  "@types/jest": "^29.0.0",
52
- "@types/node": "^22.0.0"
49
+ "@types/node": "^22.19.7",
50
+ "@types/react": "~19.1.0",
51
+ "react": "19.1.0",
52
+ "react-native": "^0.81.0"
53
+ },
54
+ "peerDependencies": {
55
+ "@types/react": "~18.2.0 || ~19.0.0 || ~19.1.0",
56
+ "react": "18.2.0 || 19.0.0 || 19.1.0"
57
+ },
58
+ "peerDependenciesMeta": {
59
+ "@types/react": {
60
+ "optional": true
61
+ }
62
+ },
63
+ "rnx-kit": {
64
+ "extends": "@fluentui-react-native/kit-config",
65
+ "kitType": "library",
66
+ "alignDeps": {
67
+ "capabilities": [
68
+ "core-dev-only",
69
+ "react",
70
+ "tools-core",
71
+ "tools-eslint",
72
+ "tools-jest-react"
73
+ ]
74
+ }
53
75
  }
54
- }
76
+ }