@fluentui-react-native/framework-base 0.2.0 → 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.
- package/CHANGELOG.json +16 -1
- package/CHANGELOG.md +43 -2
- package/README.md +18 -1
- package/babel.config.js +1 -1
- package/jsx-runtime.js +1 -0
- package/lib/component-patterns/directComponent.d.ts +7 -0
- package/lib/component-patterns/directComponent.d.ts.map +1 -0
- package/lib/component-patterns/directComponent.js +8 -0
- package/lib/component-patterns/directComponent.js.map +1 -0
- package/lib/component-patterns/extract.d.ts +22 -0
- package/lib/component-patterns/extract.d.ts.map +1 -0
- package/lib/component-patterns/extract.js +25 -0
- package/lib/component-patterns/extract.js.map +1 -0
- package/lib/component-patterns/phasedComponent.d.ts +18 -0
- package/lib/component-patterns/phasedComponent.d.ts.map +1 -0
- package/lib/component-patterns/phasedComponent.js +51 -0
- package/lib/component-patterns/phasedComponent.js.map +1 -0
- package/lib/component-patterns/render.d.ts +9 -3
- package/lib/component-patterns/render.d.ts.map +1 -1
- package/lib/component-patterns/render.js +39 -32
- package/lib/component-patterns/render.js.map +1 -1
- package/lib/component-patterns/render.types.d.ts +60 -34
- package/lib/component-patterns/render.types.d.ts.map +1 -1
- package/lib/component-patterns/render.types.js +1 -1
- package/lib/component-patterns/stagedComponent.d.ts +3 -8
- package/lib/component-patterns/stagedComponent.d.ts.map +1 -1
- package/lib/component-patterns/stagedComponent.js +10 -27
- package/lib/component-patterns/stagedComponent.js.map +1 -1
- package/lib/component-patterns/withSlots.d.ts +6 -2
- package/lib/component-patterns/withSlots.d.ts.map +1 -1
- package/lib/component-patterns/withSlots.js +3 -3
- package/lib/component-patterns/withSlots.js.map +1 -1
- package/lib/immutable-merge/Merge.d.ts +6 -3
- package/lib/immutable-merge/Merge.js +79 -83
- package/lib/immutable-merge/Merge.js.map +1 -1
- package/lib/immutable-merge/Merge.test.d.ts +1 -1
- package/lib/immutable-merge/Merge.test.js +231 -219
- package/lib/immutable-merge/Merge.test.js.map +1 -1
- package/lib/index.d.ts +33 -5
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +13 -4
- package/lib/index.js.map +1 -1
- package/lib/jsx-namespace.d.ts +65 -0
- package/lib/jsx-namespace.d.ts.map +1 -0
- package/lib/jsx-namespace.js +2 -0
- package/lib/jsx-namespace.js.map +1 -0
- package/lib/jsx-runtime.d.ts +6 -4
- package/lib/jsx-runtime.d.ts.map +1 -1
- package/lib/jsx-runtime.js +9 -7
- package/lib/jsx-runtime.js.map +1 -1
- package/lib/memo-cache/getCacheEntry.d.ts +13 -13
- package/lib/memo-cache/getCacheEntry.js +20 -22
- package/lib/memo-cache/getCacheEntry.js.map +1 -1
- package/lib/memo-cache/getCacheEntry.test.d.ts +1 -1
- package/lib/memo-cache/getCacheEntry.test.js +90 -90
- package/lib/memo-cache/getCacheEntry.test.js.map +1 -1
- package/lib/memo-cache/getMemoCache.d.ts +1 -1
- package/lib/memo-cache/getMemoCache.js +11 -11
- package/lib/memo-cache/getMemoCache.js.map +1 -1
- package/lib/memo-cache/getMemoCache.test.d.ts +1 -1
- package/lib/memo-cache/getMemoCache.test.js +73 -73
- package/lib/memo-cache/getMemoCache.test.js.map +1 -1
- package/lib/memo-cache/memoize.d.ts +1 -1
- package/lib/memo-cache/memoize.js +9 -9
- package/lib/memo-cache/memoize.js.map +1 -1
- package/lib/memo-cache/memoize.test.d.ts +1 -1
- package/lib/memo-cache/memoize.test.js +36 -38
- package/lib/memo-cache/memoize.test.js.map +1 -1
- package/lib/merge-props/index.d.ts +1 -1
- package/lib/merge-props/index.js +1 -1
- package/lib/merge-props/mergeProps.d.ts +1 -1
- package/lib/merge-props/mergeProps.js +4 -4
- package/lib/merge-props/mergeProps.js.map +1 -1
- package/lib/merge-props/mergeStyles.d.ts +33 -4
- package/lib/merge-props/mergeStyles.d.ts.map +1 -1
- package/lib/merge-props/mergeStyles.js +16 -17
- package/lib/merge-props/mergeStyles.js.map +1 -1
- package/lib/merge-props/mergeStyles.test.d.ts +1 -1
- package/lib/merge-props/mergeStyles.test.js +75 -75
- package/lib/merge-props/mergeStyles.test.js.map +1 -1
- package/lib/merge-props/mergeStyles.types.d.ts +4 -4
- package/lib/merge-props/mergeStyles.types.d.ts.map +1 -1
- package/lib/merge-props/mergeStyles.types.js +1 -1
- package/lib/utilities/filterProps.d.ts +3 -0
- package/lib/utilities/filterProps.d.ts.map +1 -0
- package/lib/utilities/filterProps.js +12 -0
- package/lib/utilities/filterProps.js.map +1 -0
- package/lib-commonjs/component-patterns/directComponent.d.ts +7 -0
- package/lib-commonjs/component-patterns/directComponent.d.ts.map +1 -0
- package/lib-commonjs/component-patterns/directComponent.js +11 -0
- package/lib-commonjs/component-patterns/directComponent.js.map +1 -0
- package/lib-commonjs/component-patterns/extract.d.ts +22 -0
- package/lib-commonjs/component-patterns/extract.d.ts.map +1 -0
- package/lib-commonjs/component-patterns/extract.js +30 -0
- package/lib-commonjs/component-patterns/extract.js.map +1 -0
- package/lib-commonjs/component-patterns/phasedComponent.d.ts +18 -0
- package/lib-commonjs/component-patterns/phasedComponent.d.ts.map +1 -0
- package/lib-commonjs/component-patterns/phasedComponent.js +60 -0
- package/lib-commonjs/component-patterns/phasedComponent.js.map +1 -0
- package/lib-commonjs/component-patterns/render.d.ts +9 -3
- package/lib-commonjs/component-patterns/render.d.ts.map +1 -1
- package/lib-commonjs/component-patterns/render.js +101 -39
- package/lib-commonjs/component-patterns/render.js.map +1 -1
- package/lib-commonjs/component-patterns/render.types.d.ts +60 -34
- package/lib-commonjs/component-patterns/render.types.d.ts.map +1 -1
- package/lib-commonjs/component-patterns/render.types.js +3 -3
- package/lib-commonjs/component-patterns/stagedComponent.d.ts +3 -8
- package/lib-commonjs/component-patterns/stagedComponent.d.ts.map +1 -1
- package/lib-commonjs/component-patterns/stagedComponent.js +64 -34
- package/lib-commonjs/component-patterns/stagedComponent.js.map +1 -1
- package/lib-commonjs/component-patterns/withSlots.d.ts +6 -2
- package/lib-commonjs/component-patterns/withSlots.d.ts.map +1 -1
- package/lib-commonjs/component-patterns/withSlots.js +7 -8
- package/lib-commonjs/component-patterns/withSlots.js.map +1 -1
- package/lib-commonjs/immutable-merge/Merge.d.ts +6 -3
- package/lib-commonjs/immutable-merge/Merge.js +85 -90
- package/lib-commonjs/immutable-merge/Merge.js.map +1 -1
- package/lib-commonjs/immutable-merge/Merge.test.d.ts +1 -1
- package/lib-commonjs/immutable-merge/Merge.test.js +234 -222
- package/lib-commonjs/immutable-merge/Merge.test.js.map +1 -1
- package/lib-commonjs/index.d.ts +33 -5
- package/lib-commonjs/index.d.ts.map +1 -1
- package/lib-commonjs/index.js +184 -31
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/jsx-namespace.d.ts +65 -0
- package/lib-commonjs/jsx-namespace.d.ts.map +1 -0
- package/lib-commonjs/jsx-namespace.js +3 -0
- package/lib-commonjs/jsx-namespace.js.map +1 -0
- package/lib-commonjs/jsx-runtime.d.ts +6 -4
- package/lib-commonjs/jsx-runtime.d.ts.map +1 -1
- package/lib-commonjs/jsx-runtime.js +70 -13
- package/lib-commonjs/jsx-runtime.js.map +1 -1
- package/lib-commonjs/memo-cache/getCacheEntry.d.ts +13 -13
- package/lib-commonjs/memo-cache/getCacheEntry.js +23 -26
- package/lib-commonjs/memo-cache/getCacheEntry.js.map +1 -1
- package/lib-commonjs/memo-cache/getCacheEntry.test.d.ts +1 -1
- package/lib-commonjs/memo-cache/getCacheEntry.test.js +93 -93
- package/lib-commonjs/memo-cache/getCacheEntry.test.js.map +1 -1
- package/lib-commonjs/memo-cache/getMemoCache.d.ts +1 -1
- package/lib-commonjs/memo-cache/getMemoCache.js +16 -17
- package/lib-commonjs/memo-cache/getMemoCache.js.map +1 -1
- package/lib-commonjs/memo-cache/getMemoCache.test.d.ts +1 -1
- package/lib-commonjs/memo-cache/getMemoCache.test.js +76 -76
- package/lib-commonjs/memo-cache/getMemoCache.test.js.map +1 -1
- package/lib-commonjs/memo-cache/memoize.d.ts +1 -1
- package/lib-commonjs/memo-cache/memoize.js +13 -14
- package/lib-commonjs/memo-cache/memoize.js.map +1 -1
- package/lib-commonjs/memo-cache/memoize.test.d.ts +1 -1
- package/lib-commonjs/memo-cache/memoize.test.js +39 -41
- package/lib-commonjs/memo-cache/memoize.test.js.map +1 -1
- package/lib-commonjs/merge-props/index.d.ts +1 -1
- package/lib-commonjs/merge-props/index.js +17 -7
- package/lib-commonjs/merge-props/index.js.map +1 -1
- package/lib-commonjs/merge-props/mergeProps.d.ts +1 -1
- package/lib-commonjs/merge-props/mergeProps.js +9 -10
- package/lib-commonjs/merge-props/mergeProps.js.map +1 -1
- package/lib-commonjs/merge-props/mergeStyles.d.ts +33 -4
- package/lib-commonjs/merge-props/mergeStyles.d.ts.map +1 -1
- package/lib-commonjs/merge-props/mergeStyles.js +23 -25
- package/lib-commonjs/merge-props/mergeStyles.js.map +1 -1
- package/lib-commonjs/merge-props/mergeStyles.test.d.ts +1 -1
- package/lib-commonjs/merge-props/mergeStyles.test.js +78 -78
- package/lib-commonjs/merge-props/mergeStyles.test.js.map +1 -1
- package/lib-commonjs/merge-props/mergeStyles.types.d.ts +4 -4
- package/lib-commonjs/merge-props/mergeStyles.types.d.ts.map +1 -1
- package/lib-commonjs/merge-props/mergeStyles.types.js +3 -3
- package/lib-commonjs/utilities/filterProps.d.ts +3 -0
- package/lib-commonjs/utilities/filterProps.d.ts.map +1 -0
- package/lib-commonjs/utilities/filterProps.js +15 -0
- package/lib-commonjs/utilities/filterProps.js.map +1 -0
- package/package.json +48 -20
- package/src/component-patterns/README.md +53 -16
- package/src/component-patterns/directComponent.ts +9 -0
- package/src/component-patterns/extract.ts +32 -0
- package/src/component-patterns/phasedComponent.ts +54 -0
- package/src/component-patterns/render.ts +21 -13
- package/src/component-patterns/render.types.ts +55 -30
- package/src/component-patterns/stagedComponent.ts +24 -0
- package/src/immutable-merge/Merge.test.ts +5 -1
- package/src/index.ts +27 -7
- package/src/jsx-namespace.ts +83 -0
- package/src/jsx-runtime.ts +8 -4
- package/src/memo-cache/README.md +1 -1
- package/src/merge-props/mergeStyles.test.ts +3 -2
- package/src/merge-props/mergeStyles.ts +52 -4
- package/src/merge-props/mergeStyles.types.ts +2 -2
- package/src/utilities/filterProps.ts +14 -0
- 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;
|
|
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,8 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports,
|
|
1
|
+
'use strict';
|
|
2
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
3
3
|
exports.mergeProps = exports.mergeStyles = void 0;
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports,
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
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
|
|
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"}
|
|
@@ -1,21 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports,
|
|
3
|
-
exports.mergeProps =
|
|
4
|
-
const Merge_1 = require(
|
|
5
|
-
const mergeStyles_1 = require(
|
|
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
|
-
|
|
11
|
-
|
|
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
|
-
|
|
18
|
+
return (0, Merge_1.immutableMergeCore)(mergePropsOptions, ...(0, Merge_1.filterToObjects)(props));
|
|
19
19
|
}
|
|
20
|
-
|
|
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,
|
|
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<
|
|
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
|
|
15
|
-
|
|
16
|
-
|
|
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,
|
|
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
|
-
|
|
2
|
-
Object.defineProperty(exports,
|
|
3
|
-
exports.
|
|
4
|
-
|
|
5
|
-
|
|
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
|
-
|
|
15
|
+
return Array.isArray(style) ? (0, Merge_1.immutableMerge)(...style.map((v) => flattenStyle(v))) : style || {};
|
|
14
16
|
}
|
|
15
|
-
|
|
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
|
-
|
|
23
|
-
|
|
24
|
-
|
|
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
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
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
|
-
|
|
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":"
|
|
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
|
-
|
|
2
|
-
Object.defineProperty(exports,
|
|
3
|
-
const mergeStyles_1 = require(
|
|
1
|
+
'use strict';
|
|
2
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
3
|
+
const mergeStyles_1 = require('./mergeStyles');
|
|
4
4
|
const s1 = [
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
{ backgroundColor: 'blue' },
|
|
6
|
+
[{ color: 'red', borderWidth: 1 }, { fontFamily: 'segoe' }, [{ backgroundColor: 'bodyBackground' }]],
|
|
7
7
|
];
|
|
8
8
|
const s1flatten = {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
backgroundColor: 'bodyBackground',
|
|
10
|
+
color: 'red',
|
|
11
|
+
borderWidth: 1,
|
|
12
|
+
fontFamily: 'segoe',
|
|
13
13
|
};
|
|
14
14
|
const s2 = {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
borderWidth: 2,
|
|
16
|
+
fontFamily: 'primary',
|
|
17
|
+
color: 'bodyText',
|
|
18
18
|
};
|
|
19
19
|
const sMerged = {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
backgroundColor: 'bodyBackground',
|
|
21
|
+
borderWidth: 2,
|
|
22
|
+
fontFamily: 'primary',
|
|
23
|
+
color: 'bodyText',
|
|
24
24
|
};
|
|
25
25
|
const sSelector = {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
26
|
+
borderWidth: 1,
|
|
27
|
+
':hover': {
|
|
28
|
+
borderWidth: 2,
|
|
29
|
+
fontFamily: 'primary',
|
|
30
|
+
},
|
|
31
31
|
};
|
|
32
32
|
const sSelector2 = {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
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
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
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
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
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":";;
|
|
1
|
+
{"version":3,"file":"mergeStyles.test.js","sourceRoot":"","sources":["../../src/merge-props/mergeStyles.test.ts"],"names":[],"mappings":";;AAAA,+CAAiF;AAgBjF,MAAM,EAAE,GAAmB;IACzB,EAAE,eAAe,EAAE,MAAM,EAAE;IAC3B,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC,CAAC;CACrG,CAAC;AAEF,MAAM,SAAS,GAAmB;IAChC,eAAe,EAAE,gBAAgB;IACjC,KAAK,EAAE,KAAK;IACZ,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,OAAO;CACpB,CAAC;AAEF,MAAM,EAAE,GAAmB;IACzB,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,SAAS;IACrB,KAAK,EAAE,UAAU;CAClB,CAAC;AAEF,MAAM,OAAO,GAAmB;IAC9B,eAAe,EAAE,gBAAgB;IACjC,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,SAAS;IACrB,KAAK,EAAE,UAAU;CAClB,CAAC;AAEF,MAAM,SAAS,GAAmB;IAChC,WAAW,EAAE,CAAC;IACd,QAAQ,EAAE;QACR,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,SAAS;KACtB;CACF,CAAC;AAEF,MAAM,UAAU,GAAmB;IACjC,eAAe,EAAE,OAAO;IACxB,QAAQ,EAAE;QACR,eAAe,EAAE,OAAO;QACxB,WAAW,EAAE,CAAC;KACf;CACF,CAAC;AAEF,MAAM,cAAc,GAAmB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAErD,MAAM,eAAe,GAAmB,CAAC,UAAU,CAAC,CAAC;AAErD,MAAM,gBAAgB,GAAmB;IACvC,WAAW,EAAE,CAAC;IACd,eAAe,EAAE,OAAO;IACxB,QAAQ,EAAE;QACR,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,SAAS;QACrB,eAAe,EAAE,OAAO;KACzB;CACF,CAAC;AAEF,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE,CAAC;IAC9C,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,IAAA,0BAAY,EAAC,EAAE,CAAC,CAAC;QACnC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAAA,CAChC,CAAC,CAAC;IAEH,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE,CAAC;QAC7C,MAAM,SAAS,GAAG,IAAA,0BAAY,EAAC,EAAE,CAAC,CAAC;QACnC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAAA,CAC5B,CAAC,CAAC;IAEH,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,IAAA,mCAAqB,EAAC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACnE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAAA,CACjC,CAAC,CAAC;IAEH,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,IAAA,mCAAqB,EAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAClF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAAA,CAC1C,CAAC,CAAC;IAEH,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,IAAA,mCAAqB,EAAC,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;QAC5F,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAAA,CAC1C,CAAC,CAAC;IAEH,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,IAAA,yBAAW,EAAC,EAAE,CAAC,CAAC;QAClC,MAAM,UAAU,GAAG,IAAA,yBAAW,EAAC,EAAE,CAAC,CAAC;QACnC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAAA,CACpC,CAAC,CAAC;IAEH,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,IAAA,yBAAW,EAAC,EAAE,CAAC,CAAC;QAClC,MAAM,UAAU,GAAG,IAAA,yBAAW,EAAC,EAAE,CAAC,CAAC;QACnC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3B,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAAA,CACpC,CAAC,CAAC;IAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,IAAA,yBAAW,EAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,IAAA,yBAAW,EAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACvC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAAA,CACpC,CAAC,CAAC;IAEH,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE,CAAC;QACjD,MAAM,OAAO,GAAG,IAAA,yBAAW,EAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC1D,MAAM,OAAO,GAAG,IAAA,yBAAW,EAAC,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;QAC1D,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAAA,CAC/B,CAAC,CAAC;AAAA,CACJ,CAAC,CAAC"}
|
|
@@ -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
|
-
|
|
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;
|
|
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
|
-
|
|
2
|
-
Object.defineProperty(exports,
|
|
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 @@
|
|
|
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,48 +1,76 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluentui-react-native/framework-base",
|
|
3
|
-
"version": "0.
|
|
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
|
-
"
|
|
11
|
-
"
|
|
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
|
-
"
|
|
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
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"prettier-fix": "fluentui-scripts prettier --fix true"
|
|
39
|
+
"test": "fluentui-scripts jest",
|
|
40
|
+
"update-snapshots": "fluentui-scripts jest -u"
|
|
38
41
|
},
|
|
39
|
-
"keywords": [],
|
|
40
|
-
"author": "",
|
|
41
|
-
"license": "MIT",
|
|
42
42
|
"devDependencies": {
|
|
43
|
+
"@babel/core": "^7.20.0",
|
|
43
44
|
"@fluentui-react-native/eslint-config-rules": "0.1.1",
|
|
44
|
-
"@fluentui-react-native/
|
|
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",
|
|
45
48
|
"@types/jest": "^29.0.0",
|
|
46
|
-
"@types/node": "^22.
|
|
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
|
+
}
|
|
47
75
|
}
|
|
48
|
-
}
|
|
76
|
+
}
|