react-native-unistyles 3.4.0 → 3.5.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/README.md +23 -7
- package/android/build.gradle +12 -1
- package/android/src/main/cxx/NativeUnistylesModule.cpp +8 -4
- package/android/src/main/cxx/NativeUnistylesModule.h +5 -1
- package/components/native/ActivityIndicator/package.json +1 -1
- package/cxx/common/UnistylesConstants.h +1 -0
- package/cxx/converters/TransformOriginConverter.cpp +106 -0
- package/cxx/core/StyleSheetRegistry.cpp +9 -9
- package/cxx/core/StyleSheetRegistry.h +3 -3
- package/cxx/core/UnistyleWrapper.h +13 -1
- package/cxx/core/UnistylesRegistry.cpp +102 -18
- package/cxx/core/UnistylesRegistry.h +42 -5
- package/cxx/hybridObjects/HybridShadowRegistry.cpp +124 -4
- package/cxx/hybridObjects/HybridShadowRegistry.h +20 -0
- package/cxx/hybridObjects/HybridStyleSheet.cpp +20 -12
- package/cxx/hybridObjects/HybridUnistylesRuntime.cpp +11 -1
- package/cxx/hybridObjects/HybridUnistylesRuntime.h +4 -2
- package/cxx/parser/Parser.cpp +29 -1
- package/cxx/parser/Parser.h +1 -0
- package/cxx/shadowTree/NativeProps.h +46 -2
- package/cxx/shadowTree/ShadowTrafficController.h +4 -0
- package/cxx/shadowTree/ShadowTreeDiagnostics.cpp +339 -0
- package/cxx/shadowTree/ShadowTreeDiagnostics.h +18 -0
- package/cxx/shadowTree/ShadowTreeManager.cpp +7 -1
- package/cxx/shadowTree/ShadowTreeManager.h +1 -1
- package/diagnostics/package.json +6 -0
- package/ios/UnistylesModuleOnLoad.mm +9 -3
- package/lib/commonjs/components/native/ActivityIndicator.native.js +10 -0
- package/lib/commonjs/components/native/ActivityIndicator.native.js.map +1 -0
- package/lib/commonjs/components/native/NativeText.js +6 -0
- package/lib/commonjs/components/native/NativeText.js.map +1 -1
- package/lib/commonjs/components/native/NativeText.native.js +17 -1
- package/lib/commonjs/components/native/NativeText.native.js.map +1 -1
- package/lib/commonjs/components/native/NativeView.js +6 -0
- package/lib/commonjs/components/native/NativeView.js.map +1 -1
- package/lib/commonjs/components/native/NativeView.native.js +22 -3
- package/lib/commonjs/components/native/NativeView.native.js.map +1 -1
- package/lib/commonjs/components/native/Pressable.js +7 -3
- package/lib/commonjs/components/native/Pressable.js.map +1 -1
- package/lib/commonjs/components/native/TouchableHighlight.native.js +10 -0
- package/lib/commonjs/components/native/TouchableHighlight.native.js.map +1 -0
- package/lib/commonjs/core/createUnistylesActivityIndicator.js +41 -0
- package/lib/commonjs/core/createUnistylesActivityIndicator.js.map +1 -0
- package/lib/commonjs/core/createUnistylesElement.js +59 -14
- package/lib/commonjs/core/createUnistylesElement.js.map +1 -1
- package/lib/commonjs/core/createUnistylesTouchableHighlight.js +58 -0
- package/lib/commonjs/core/createUnistylesTouchableHighlight.js.map +1 -0
- package/lib/commonjs/core/index.js +14 -0
- package/lib/commonjs/core/index.js.map +1 -1
- package/lib/commonjs/diagnostics/index.js +13 -0
- package/lib/commonjs/diagnostics/index.js.map +1 -0
- package/lib/commonjs/diagnostics/types.js +2 -0
- package/lib/commonjs/diagnostics/types.js.map +1 -0
- package/lib/commonjs/diagnostics/verify.js +19 -0
- package/lib/commonjs/diagnostics/verify.js.map +1 -0
- package/lib/commonjs/diagnostics/verify.native.js +12 -0
- package/lib/commonjs/diagnostics/verify.native.js.map +1 -0
- package/lib/commonjs/index.js +38 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/mocks.js +41 -0
- package/lib/commonjs/mocks.js.map +1 -1
- package/lib/commonjs/reanimated/variant/useUpdateVariantColor.native.js +8 -0
- package/lib/commonjs/reanimated/variant/useUpdateVariantColor.native.js.map +1 -1
- package/lib/commonjs/specs/ShadowRegistry/index.js +97 -1
- package/lib/commonjs/specs/ShadowRegistry/index.js.map +1 -1
- package/lib/commonjs/specs/StyleSheet/index.js +5 -1
- package/lib/commonjs/specs/StyleSheet/index.js.map +1 -1
- package/lib/commonjs/specs/UnistylesRuntime/index.js.map +1 -1
- package/lib/commonjs/web/registry.js +3 -0
- package/lib/commonjs/web/registry.js.map +1 -1
- package/lib/module/components/native/ActivityIndicator.native.js +6 -0
- package/lib/module/components/native/ActivityIndicator.native.js.map +1 -0
- package/lib/module/components/native/NativeText.js +1 -1
- package/lib/module/components/native/NativeText.js.map +1 -1
- package/lib/module/components/native/NativeText.native.js +15 -1
- package/lib/module/components/native/NativeText.native.js.map +1 -1
- package/lib/module/components/native/NativeView.js +1 -0
- package/lib/module/components/native/NativeView.js.map +1 -1
- package/lib/module/components/native/NativeView.native.js +19 -2
- package/lib/module/components/native/NativeView.native.js.map +1 -1
- package/lib/module/components/native/Pressable.js +7 -3
- package/lib/module/components/native/Pressable.js.map +1 -1
- package/lib/module/components/native/TouchableHighlight.native.js +6 -0
- package/lib/module/components/native/TouchableHighlight.native.js.map +1 -0
- package/lib/module/core/createUnistylesActivityIndicator.js +35 -0
- package/lib/module/core/createUnistylesActivityIndicator.js.map +1 -0
- package/lib/module/core/createUnistylesElement.js +58 -13
- package/lib/module/core/createUnistylesElement.js.map +1 -1
- package/lib/module/core/createUnistylesTouchableHighlight.js +52 -0
- package/lib/module/core/createUnistylesTouchableHighlight.js.map +1 -0
- package/lib/module/core/index.js +2 -0
- package/lib/module/core/index.js.map +1 -1
- package/lib/module/diagnostics/index.js +5 -0
- package/lib/module/diagnostics/index.js.map +1 -0
- package/lib/module/diagnostics/types.js +2 -0
- package/lib/module/diagnostics/types.js.map +1 -0
- package/lib/module/diagnostics/verify.js +14 -0
- package/lib/module/diagnostics/verify.js.map +1 -0
- package/lib/module/diagnostics/verify.native.js +8 -0
- package/lib/module/diagnostics/verify.native.js.map +1 -0
- package/lib/module/index.js +2 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/mocks.js +41 -0
- package/lib/module/mocks.js.map +1 -1
- package/lib/module/reanimated/variant/useUpdateVariantColor.native.js +9 -1
- package/lib/module/reanimated/variant/useUpdateVariantColor.native.js.map +1 -1
- package/lib/module/specs/ShadowRegistry/index.js +97 -1
- package/lib/module/specs/ShadowRegistry/index.js.map +1 -1
- package/lib/module/specs/StyleSheet/index.js +6 -1
- package/lib/module/specs/StyleSheet/index.js.map +1 -1
- package/lib/module/specs/UnistylesRuntime/index.js.map +1 -1
- package/lib/module/web/registry.js +3 -0
- package/lib/module/web/registry.js.map +1 -1
- package/lib/typescript/src/components/native/ActivityIndicator.native.d.ts +2 -0
- package/lib/typescript/src/components/native/ActivityIndicator.native.d.ts.map +1 -0
- package/lib/typescript/src/components/native/NativeText.d.ts +1 -1
- package/lib/typescript/src/components/native/NativeText.d.ts.map +1 -1
- package/lib/typescript/src/components/native/NativeText.native.d.ts.map +1 -1
- package/lib/typescript/src/components/native/NativeView.d.ts +1 -0
- package/lib/typescript/src/components/native/NativeView.d.ts.map +1 -1
- package/lib/typescript/src/components/native/NativeView.native.d.ts +2 -2
- package/lib/typescript/src/components/native/NativeView.native.d.ts.map +1 -1
- package/lib/typescript/src/components/native/Pressable.d.ts.map +1 -1
- package/lib/typescript/src/components/native/TouchableHighlight.native.d.ts +2 -0
- package/lib/typescript/src/components/native/TouchableHighlight.native.d.ts.map +1 -0
- package/lib/typescript/src/core/createUnistylesActivityIndicator.d.ts +3 -0
- package/lib/typescript/src/core/createUnistylesActivityIndicator.d.ts.map +1 -0
- package/lib/typescript/src/core/createUnistylesElement.d.ts.map +1 -1
- package/lib/typescript/src/core/createUnistylesTouchableHighlight.d.ts +3 -0
- package/lib/typescript/src/core/createUnistylesTouchableHighlight.d.ts.map +1 -0
- package/lib/typescript/src/core/index.d.ts +2 -0
- package/lib/typescript/src/core/index.d.ts.map +1 -1
- package/lib/typescript/src/core/useUnistyles.d.ts +1 -1
- package/lib/typescript/src/diagnostics/index.d.ts +3 -0
- package/lib/typescript/src/diagnostics/index.d.ts.map +1 -0
- package/lib/typescript/src/diagnostics/types.d.ts +19 -0
- package/lib/typescript/src/diagnostics/types.d.ts.map +1 -0
- package/lib/typescript/src/diagnostics/verify.d.ts +3 -0
- package/lib/typescript/src/diagnostics/verify.d.ts.map +1 -0
- package/lib/typescript/src/diagnostics/verify.native.d.ts +3 -0
- package/lib/typescript/src/diagnostics/verify.native.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +4 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/reanimated/variant/useUpdateVariantColor.native.d.ts.map +1 -1
- package/lib/typescript/src/specs/ShadowRegistry/index.d.ts +5 -1
- package/lib/typescript/src/specs/ShadowRegistry/index.d.ts.map +1 -1
- package/lib/typescript/src/specs/ShadowRegistry/types.d.ts +3 -0
- package/lib/typescript/src/specs/ShadowRegistry/types.d.ts.map +1 -1
- package/lib/typescript/src/specs/StyleSheet/index.d.ts +4 -1
- package/lib/typescript/src/specs/StyleSheet/index.d.ts.map +1 -1
- package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts +2 -2
- package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts.map +1 -1
- package/lib/typescript/src/types/breakpoints.d.ts +1 -1
- package/lib/typescript/src/types/breakpoints.d.ts.map +1 -1
- package/lib/typescript/src/types/stylesheet.d.ts +3 -3
- package/lib/typescript/src/types/stylesheet.d.ts.map +1 -1
- package/lib/typescript/src/web/registry.d.ts.map +1 -1
- package/package.json +9 -1
- package/plugin/index.d.ts +4 -4
- package/plugin/index.js +21 -5
- package/src/components/native/ActivityIndicator.native.tsx +5 -0
- package/src/components/native/NativeText.native.tsx +18 -1
- package/src/components/native/NativeText.tsx +1 -1
- package/src/components/native/NativeView.native.tsx +22 -2
- package/src/components/native/NativeView.tsx +2 -0
- package/src/components/native/Pressable.tsx +8 -3
- package/src/components/native/TouchableHighlight.native.tsx +5 -0
- package/src/core/createUnistylesActivityIndicator.tsx +47 -0
- package/src/core/createUnistylesElement.tsx +45 -14
- package/src/core/createUnistylesTouchableHighlight.tsx +69 -0
- package/src/core/index.ts +2 -0
- package/src/diagnostics/index.ts +3 -0
- package/src/diagnostics/types.ts +25 -0
- package/src/diagnostics/verify.native.ts +7 -0
- package/src/diagnostics/verify.ts +13 -0
- package/src/index.ts +4 -1
- package/src/mocks.ts +41 -0
- package/src/reanimated/variant/useUpdateVariantColor.native.ts +7 -1
- package/src/specs/ShadowRegistry/index.ts +128 -1
- package/src/specs/ShadowRegistry/types.ts +3 -0
- package/src/specs/StyleSheet/index.ts +10 -2
- package/src/specs/UnistylesRuntime/index.ts +7 -2
- package/src/types/breakpoints.ts +5 -3
- package/src/types/stylesheet.ts +3 -3
- package/src/web/registry.ts +3 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/diagnostics/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IACzB,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IAEvB,MAAM,EAAE,MAAM,CAAA;IAEd,OAAO,EAAE,MAAM,CAAA;IAEf,QAAQ,EAAE,MAAM,CAAA;IAEhB,SAAS,EAAE,MAAM,CAAA;IAEjB,OAAO,EAAE,MAAM,CAAA;IAEf,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,CAAA;IACjC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;CACxB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../../src/diagnostics/verify.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAG3C,eAAO,MAAM,MAAM,QAAO,YASxB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify.native.d.ts","sourceRoot":"","sources":["../../../../src/diagnostics/verify.native.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAM3C,eAAO,MAAM,MAAM,QAAO,YAAgD,CAAA"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
export { StyleSheet, UnistylesRuntime } from './specs';
|
|
2
2
|
export { UnistyleDependency } from './specs';
|
|
3
|
+
export type { UnistylesMiniRuntime } from './specs';
|
|
4
|
+
export { ColorScheme, Orientation, StatusBarStyle } from './specs/types';
|
|
3
5
|
export { mq } from './mq';
|
|
4
6
|
export type { UnistylesThemes, UnistylesBreakpoints } from './global';
|
|
5
7
|
export { withUnistyles, useUnistyles, createUnistylesElement } from './core';
|
|
6
|
-
export type { UnistylesVariants, UnistylesValues
|
|
8
|
+
export type { UnistylesVariants, UnistylesValues } from './types';
|
|
9
|
+
export { IOSContentSizeCategory, AndroidContentSizeCategory, WebContentSizeCategory } from './types';
|
|
7
10
|
export { Display, Hide, ScopedTheme } from './components';
|
|
8
11
|
export { useServerUnistyles, hydrateServerUnistyles, getServerUnistyles, resetServerUnistyles } from './server';
|
|
9
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAC5C,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAA;AACzB,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AACrE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAA;AAC5E,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAC5C,YAAY,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAA;AACzB,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AACrE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAA;AAC5E,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AACpG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUpdateVariantColor.native.d.ts","sourceRoot":"","sources":["../../../../../src/reanimated/variant/useUpdateVariantColor.native.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAA;AAI1D,eAAO,MAAM,qBAAqB,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,iCAIlE,2BAA2B,CAAC,CAAC,CAAC;;;
|
|
1
|
+
{"version":3,"file":"useUpdateVariantColor.native.d.ts","sourceRoot":"","sources":["../../../../../src/reanimated/variant/useUpdateVariantColor.native.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAA;AAI1D,eAAO,MAAM,qBAAqB,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,iCAIlE,2BAA2B,CAAC,CAAC,CAAC;;;CAoChC,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { VerifyReport } from '../../diagnostics/types';
|
|
1
2
|
import type { UnistylesShadowRegistry as UnistylesShadowRegistrySpec } from './ShadowRegistry.nitro';
|
|
2
3
|
import type { ShadowNode, Unistyle, ViewHandle } from './types';
|
|
3
4
|
interface ShadowRegistry extends UnistylesShadowRegistrySpec {
|
|
@@ -9,8 +10,11 @@ interface ShadowRegistry extends UnistylesShadowRegistrySpec {
|
|
|
9
10
|
flush(): void;
|
|
10
11
|
setScopedTheme(themeName?: string): void;
|
|
11
12
|
getScopedTheme(): string | undefined;
|
|
13
|
+
verify(): VerifyReport;
|
|
14
|
+
takeCommittedTags(): Array<number>;
|
|
15
|
+
refreshReactNodes(nodes: Array<ShadowNode>): void;
|
|
12
16
|
}
|
|
13
|
-
type PrivateMethods = 'add' | 'remove' | 'link' | 'unlink' | 'suspend';
|
|
17
|
+
type PrivateMethods = 'add' | 'remove' | 'link' | 'unlink' | 'suspend' | 'takeCommittedTags' | 'refreshReactNodes';
|
|
14
18
|
export declare const UnistylesShadowRegistry: Omit<ShadowRegistry, PrivateMethods>;
|
|
15
19
|
export {};
|
|
16
20
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/specs/ShadowRegistry/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,IAAI,2BAA2B,EAAE,MAAM,wBAAwB,CAAA;AACpG,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/specs/ShadowRegistry/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,KAAK,EAAE,uBAAuB,IAAI,2BAA2B,EAAE,MAAM,wBAAwB,CAAA;AACpG,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAI/D,UAAU,cAAe,SAAQ,2BAA2B;IAExD,GAAG,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAA;IACxD,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;IAEjC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAA;IACtD,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAA;IAC9B,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAA;IAC/B,KAAK,IAAI,IAAI,CAAA;IACb,cAAc,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxC,cAAc,IAAI,MAAM,GAAG,SAAS,CAAA;IACpC,MAAM,IAAI,YAAY,CAAA;IACtB,iBAAiB,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;IAClC,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,IAAI,CAAA;CACpD;AAyND,KAAK,cAAc,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,mBAAmB,GAAG,mBAAmB,CAAA;AAElH,eAAO,MAAM,uBAAuB,EAA2B,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/specs/ShadowRegistry/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG;IACpB,IAAI,CAAC,EAAE,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/specs/ShadowRegistry/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG;IACpB,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,SAAS,CAAC,EAAE;QACR,SAAS,CAAC,EAAE,MAAM,CAAA;KACrB,CAAA;CACJ,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACrB,6BAA6B,EAAE,GAAG,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACrB,wBAAwB,CAAC,EAAE;QACvB,SAAS,CAAC,EAAE,SAAS,CAAA;QACrB,WAAW,CAAC,EAAE,MAAM,CAAA;KACvB,CAAA;IACD,kBAAkB,CAAC,EAAE,MAAM;QACvB,kBAAkB,CAAC,EAAE,MAAM;YACvB,wBAAwB,CAAC,EAAE;gBACvB,SAAS,CAAC,EAAE,SAAS,CAAA;aACxB,CAAA;SACJ,CAAA;KACJ,CAAA;IACD,kBAAkB,CAAC,EAAE,MAAM;QACvB,wBAAwB,CAAC,EAAE;YACvB,SAAS,CAAC,EAAE,SAAS,CAAA;SACxB,CAAA;KACJ,CAAA;IACD,QAAQ,CAAC,EAAE;QACP,wBAAwB,CAAC,EAAE;YACvB,SAAS,CAAC,EAAE,SAAS,CAAA;SACxB,CAAA;KACJ,CAAA;IACD,OAAO,CAAC,EAAE;QACN,OAAO,CAAC,EAAE;YACN,wBAAwB,CAAC,EAAE;gBACvB,SAAS,CAAC,EAAE,SAAS,CAAA;aACxB,CAAA;SACJ,CAAA;KACJ,CAAA;IACD,UAAU,CAAC,EAAE;QACT,wBAAwB,CAAC,EAAE;YACvB,SAAS,CAAC,EAAE,SAAS,CAAA;SACxB,CAAA;KACJ,CAAA;CACJ,CAAA;AAED,MAAM,MAAM,QAAQ,GAAG;IACnB,OAAO,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KACvB,CAAA;CACJ,CAAA"}
|
|
@@ -23,8 +23,11 @@ export type UnistylesConfig = {
|
|
|
23
23
|
themes?: UnistylesThemes;
|
|
24
24
|
breakpoints?: UnistylesBreakpoints;
|
|
25
25
|
};
|
|
26
|
+
type AbsoluteFillObject = typeof NativeStyleSheetType extends {
|
|
27
|
+
absoluteFillObject: infer TStyle;
|
|
28
|
+
} ? TStyle : typeof NativeStyleSheetType.absoluteFill;
|
|
26
29
|
export interface UnistylesStyleSheet extends UnistylesStyleSheetSpec {
|
|
27
|
-
absoluteFillObject:
|
|
30
|
+
absoluteFillObject: AbsoluteFillObject;
|
|
28
31
|
absoluteFill: typeof NativeStyleSheetType.absoluteFill;
|
|
29
32
|
compose: typeof NativeStyleSheetType.compose;
|
|
30
33
|
flatten: typeof NativeStyleSheetType.flatten;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/specs/StyleSheet/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAEtE,OAAO,EAAkC,YAAY,EAAE,MAAM,cAAc,CAAA;AAG3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AACzE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,KAAK,EAAE,mBAAmB,IAAI,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AAEjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAEhE,KAAK,sBAAsB,GACrB;IACI,YAAY,EAAE,CAAC,MAAM,MAAM,eAAe,CAAC,GAAG,MAAM,eAAe,CAAA;IACnE,cAAc,CAAC,EAAE,KAAK,GAAG,KAAK,CAAA;CACjC,GACD;IACI,cAAc,EAAE,OAAO,CAAA;IACvB,YAAY,CAAC,EAAE,KAAK,CAAA;CACvB,GACD;IACI,cAAc,CAAC,EAAE,KAAK,CAAA;IACtB,YAAY,CAAC,EAAE,KAAK,CAAA;CACvB,CAAA;AAEP,KAAK,iBAAiB,GAAG,sBAAsB,GAAG;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,qBAAqB,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC1B,QAAQ,CAAC,EAAE,iBAAiB,CAAA;IAC5B,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,WAAW,CAAC,EAAE,oBAAoB,CAAA;CACrC,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/specs/StyleSheet/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAEtE,OAAO,EAAkC,YAAY,EAAE,MAAM,cAAc,CAAA;AAG3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AACzE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,KAAK,EAAE,mBAAmB,IAAI,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AAEjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAEhE,KAAK,sBAAsB,GACrB;IACI,YAAY,EAAE,CAAC,MAAM,MAAM,eAAe,CAAC,GAAG,MAAM,eAAe,CAAA;IACnE,cAAc,CAAC,EAAE,KAAK,GAAG,KAAK,CAAA;CACjC,GACD;IACI,cAAc,EAAE,OAAO,CAAA;IACvB,YAAY,CAAC,EAAE,KAAK,CAAA;CACvB,GACD;IACI,cAAc,CAAC,EAAE,KAAK,CAAA;IACtB,YAAY,CAAC,EAAE,KAAK,CAAA;CACvB,CAAA;AAEP,KAAK,iBAAiB,GAAG,sBAAsB,GAAG;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,qBAAqB,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC1B,QAAQ,CAAC,EAAE,iBAAiB,CAAA;IAC5B,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,WAAW,CAAC,EAAE,oBAAoB,CAAA;CACrC,CAAA;AAKD,KAAK,kBAAkB,GAAG,OAAO,oBAAoB,SAAS;IAAE,kBAAkB,EAAE,MAAM,MAAM,CAAA;CAAE,GAC5F,MAAM,GACN,OAAO,oBAAoB,CAAC,YAAY,CAAA;AAE9C,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB;IAChE,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,YAAY,EAAE,OAAO,oBAAoB,CAAC,YAAY,CAAA;IACtD,OAAO,EAAE,OAAO,oBAAoB,CAAC,OAAO,CAAA;IAC5C,OAAO,EAAE,OAAO,oBAAoB,CAAC,OAAO,CAAA;IAG5C,IAAI,IAAI,IAAI,CAAA;IACZ,MAAM,EAAE,yBAAyB,CAAA;IACjC,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAA;IACxC,SAAS,EAAE;QACP,YAAY,EAAE,OAAO,YAAY,CAAA;QACjC,oBAAoB,EAAE,OAAO,oBAAoB,CAAA;KACpD,CAAA;CACJ;AAgBD,KAAK,cAAc,GAAG,WAAW,GAAG,MAAM,CAAA;AAE1C,eAAO,MAAM,UAAU,EAAgC,IAAI,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { UnistylesThemes } from '../../global';
|
|
2
|
-
import type { AndroidContentSizeCategory, IOSContentSizeCategory, UnistylesTheme } from '../../types';
|
|
2
|
+
import type { AndroidContentSizeCategory, IOSContentSizeCategory, UnistylesTheme, WebContentSizeCategory } from '../../types';
|
|
3
3
|
import type { UnistylesNavigationBar } from '../NavigtionBar';
|
|
4
4
|
import type { AppBreakpoint, AppTheme, AppThemeName, Color, ColorScheme, Orientation } from '../types';
|
|
5
5
|
import type { UnistylesMiniRuntime, UnistylesRuntime as UnistylesRuntimeSpec } from './UnistylesRuntime.nitro';
|
|
@@ -7,7 +7,7 @@ import { type UnistylesStatusBar } from '../StatusBar';
|
|
|
7
7
|
export interface UnistylesRuntimePrivate extends Omit<UnistylesRuntimeSpec, 'setRootViewBackgroundColor'> {
|
|
8
8
|
readonly colorScheme: ColorScheme;
|
|
9
9
|
readonly themeName?: AppThemeName;
|
|
10
|
-
readonly contentSizeCategory: IOSContentSizeCategory | AndroidContentSizeCategory;
|
|
10
|
+
readonly contentSizeCategory: IOSContentSizeCategory | AndroidContentSizeCategory | WebContentSizeCategory;
|
|
11
11
|
readonly breakpoint?: AppBreakpoint;
|
|
12
12
|
readonly orientation: Orientation;
|
|
13
13
|
statusBar: UnistylesStatusBar;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/specs/UnistylesRuntime/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/specs/UnistylesRuntime/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,KAAK,EACR,0BAA0B,EAC1B,sBAAsB,EACtB,cAAc,EACd,sBAAsB,EACzB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACtG,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,IAAI,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAG9G,OAAO,EAAE,KAAK,kBAAkB,EAA4B,MAAM,cAAc,CAAA;AAEhF,MAAM,WAAW,uBAAwB,SAAQ,IAAI,CAAC,oBAAoB,EAAE,4BAA4B,CAAC;IACrG,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,YAAY,CAAA;IACjC,QAAQ,CAAC,mBAAmB,EAAE,sBAAsB,GAAG,0BAA0B,GAAG,sBAAsB,CAAA;IAC1G,QAAQ,CAAC,UAAU,CAAC,EAAE,aAAa,CAAA;IACnC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;IAGjC,SAAS,EAAE,kBAAkB,CAAA;IAC7B,aAAa,EAAE,sBAAsB,CAAA;IAErC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,eAAe,GAAG,cAAc,CAAA;IAC3D,QAAQ,CAAC,SAAS,EAAE,YAAY,GAAG,IAAI,CAAA;IACvC,WAAW,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,YAAY,EAAE,QAAQ,KAAK,QAAQ,GAAG,IAAI,CAAA;IACzF,0BAA0B,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAChD,gCAAgC,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAA;IACrD,gBAAgB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI,CAAA;IAG1C,qBAAqB,IAAI,kBAAkB,CAAA;IAC3C,yBAAyB,IAAI,sBAAsB,CAAA;CACtD;AAED,KAAK,cAAc,GACb,uBAAuB,GACvB,2BAA2B,GAC3B,SAAS,GACT,aAAa,GACb,kCAAkC,GAClC,wBAAwB,CAAA;AAE9B,KAAK,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,EAAE,cAAc,CAAC,CAAA;AAwBrE,eAAO,MAAM,OAAO,EAA6B,gBAAgB,CAAA;AAEjE,YAAY,EAAE,oBAAoB,EAAE,CAAA"}
|
|
@@ -5,7 +5,7 @@ import type { BreakpointsOrMediaQueries, ToDeepUnistyles } from './stylesheet';
|
|
|
5
5
|
type ExtractTransformArray<T> = T extends object ? {
|
|
6
6
|
[K in keyof T]: ExtractBreakpoints<T[K]>;
|
|
7
7
|
} : never;
|
|
8
|
-
type ExtractBreakpoints<T> = T extends object ? keyof T extends BreakpointsOrMediaQueries ? T[keyof T] : T extends
|
|
8
|
+
type ExtractBreakpoints<T> = T extends object ? keyof T extends BreakpointsOrMediaQueries ? T[keyof T] : T extends ReadonlyArray<ToDeepUnistyles<TransformStyles>> ? T extends Array<infer _U> ? Array<ExtractTransformArray<T[number]>> : ReadonlyArray<ExtractTransformArray<T[number]>> : T extends ReadonlyArray<infer _U> ? T : {
|
|
9
9
|
[K in keyof T]: ExtractBreakpoints<T[K]>;
|
|
10
10
|
} : T;
|
|
11
11
|
type IsEmptyObject<T> = T extends Record<string, never> ? true : keyof T extends never ? true : false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"breakpoints.d.ts","sourceRoot":"","sources":["../../../../src/types/breakpoints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAEhE,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,KAAK,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9E,KAAK,qBAAqB,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,KAAK,CAAA;AAEvG,KAAK,kBAAkB,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GACvC,MAAM,CAAC,SAAS,yBAAyB,GACrC,CAAC,CAAC,MAAM,CAAC,CAAC,GACV,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"breakpoints.d.ts","sourceRoot":"","sources":["../../../../src/types/breakpoints.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,9 +13,9 @@ export type UnistyleImage = Omit<ImageStyle, NestedKeys>;
|
|
|
13
13
|
type UnistyleNestedStyles = {
|
|
14
14
|
shadowOffset?: ToDeepUnistyles<ShadowOffset>;
|
|
15
15
|
textShadowOffset?: ToDeepUnistyles<ShadowOffset>;
|
|
16
|
-
transform?:
|
|
17
|
-
boxShadow?:
|
|
18
|
-
filter?:
|
|
16
|
+
transform?: ReadonlyArray<ToDeepUnistyles<TransformStyles>>;
|
|
17
|
+
boxShadow?: ReadonlyArray<ToDeepUnistyles<BoxShadowValue>> | string;
|
|
18
|
+
filter?: ReadonlyArray<ToDeepUnistyles<FilterFunction>> | string;
|
|
19
19
|
};
|
|
20
20
|
type VariantsObject = {
|
|
21
21
|
[variantName: string]: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stylesheet.d.ts","sourceRoot":"","sources":["../../../../src/types/stylesheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAEpG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAC3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAGrD,KAAK,UAAU,GAAG,cAAc,GAAG,WAAW,GAAG,kBAAkB,GAAG,WAAW,GAAG,QAAQ,CAAA;AAE5F,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;AACtD,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;AACtD,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;AAExD,KAAK,oBAAoB,GAAG;IACxB,YAAY,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,CAAA;IAC5C,gBAAgB,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,CAAA;IAChD,SAAS,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"stylesheet.d.ts","sourceRoot":"","sources":["../../../../src/types/stylesheet.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/web/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAChF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAGhC,qBAAa,iBAAiB;IAQd,OAAO,CAAC,QAAQ;IAP5B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+D;IAC3F,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsC;IACpE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAkC;IACtE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA4E;IAC5G,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAA;gBAEF,QAAQ,EAAE,iBAAiB;IAI/C,qBAAqB,GAAI,YAAY,yBAAyB,CAAC,UAAU,CAAC,EAAE,kBAAkB,cAAc,gBAkC3G;IAED,2BAA2B,GACvB,YAAY,CAAC,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,oBAAoB,KAAK,UAAU,EACpF,cAAc,KAAK,CAAC,kBAAkB,CAAC,UAmB1C;IAED,OAAO,GAAI,KAAK,WAAW,EAAE,MAAM,MAAM,UAKxC;IAED,MAAM,GAAI,KAAK,WAAW,EAAE,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/web/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAChF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAGhC,qBAAa,iBAAiB;IAQd,OAAO,CAAC,QAAQ;IAP5B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+D;IAC3F,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsC;IACpE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAkC;IACtE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA4E;IAC5G,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAA;gBAEF,QAAQ,EAAE,iBAAiB;IAI/C,qBAAqB,GAAI,YAAY,yBAAyB,CAAC,UAAU,CAAC,EAAE,kBAAkB,cAAc,gBAkC3G;IAED,2BAA2B,GACvB,YAAY,CAAC,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,oBAAoB,KAAK,UAAU,EACpF,cAAc,KAAK,CAAC,kBAAkB,CAAC,UAmB1C;IAED,OAAO,GAAI,KAAK,WAAW,EAAE,MAAM,MAAM,UAKxC;IAED,MAAM,GAAI,KAAK,WAAW,EAAE,MAAM,MAAM,sBAwBvC;IAED,GAAG,GAAI,OAAO,eAAe,EAAE,WAAW,OAAO;;;MAYhD;IAED,WAAW,GAAI,MAAM,MAAM,EAAE,OAAO,eAAe,UAElD;IAED,KAAK,aAQJ;CACJ"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-unistyles",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.5.0",
|
|
4
4
|
"description": "Level up your React Native StyleSheet",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "NODE_ENV=babel-test jest ./plugin ./src/__tests__",
|
|
@@ -74,6 +74,13 @@
|
|
|
74
74
|
"browser": "./lib/module/reanimated/index.js",
|
|
75
75
|
"react-native": "./src/reanimated/index.ts",
|
|
76
76
|
"default": "./lib/commonjs/reanimated/index.js"
|
|
77
|
+
},
|
|
78
|
+
"./diagnostics": {
|
|
79
|
+
"types": "./lib/typescript/src/diagnostics/index.d.ts",
|
|
80
|
+
"import": "./lib/module/diagnostics/index.js",
|
|
81
|
+
"browser": "./lib/module/diagnostics/index.js",
|
|
82
|
+
"react-native": "./src/diagnostics/index.ts",
|
|
83
|
+
"default": "./lib/commonjs/diagnostics/index.js"
|
|
77
84
|
}
|
|
78
85
|
},
|
|
79
86
|
"files": [
|
|
@@ -89,6 +96,7 @@
|
|
|
89
96
|
"server",
|
|
90
97
|
"web-only",
|
|
91
98
|
"reanimated",
|
|
99
|
+
"diagnostics",
|
|
92
100
|
"react-native.config.js",
|
|
93
101
|
"Unistyles.podspec",
|
|
94
102
|
"repack-plugin",
|
package/plugin/index.d.ts
CHANGED
|
@@ -45,7 +45,7 @@ export interface UnistylesPluginOptions {
|
|
|
45
45
|
root: string
|
|
46
46
|
|
|
47
47
|
/**
|
|
48
|
-
* Example: ['@
|
|
48
|
+
* Example: ['@my-org/styles']
|
|
49
49
|
* Enable this option if you want to process only files containing specific imports.
|
|
50
50
|
*/
|
|
51
51
|
autoProcessImports?: Array<string>
|
|
@@ -99,12 +99,12 @@ export interface UnistylesPluginOptions {
|
|
|
99
99
|
/**
|
|
100
100
|
* Example: ['external-library/components']
|
|
101
101
|
* Enable this option to process some 3rd party components under `node_modules`.
|
|
102
|
-
* Under these paths we will replace `react-native` imports with `react-native-unistyles` factories that will borrow components refs [read more](https://www.unistyl.es/v3/other/babel-plugin#
|
|
102
|
+
* Under these paths we will replace `react-native` imports with `react-native-unistyles` factories that will borrow components refs [read more](https://www.unistyl.es/v3/other/babel-plugin#2-component-factory-borrowing-ref).
|
|
103
103
|
*
|
|
104
|
-
*
|
|
104
|
+
* The following paths are always processed, and paths passed here are added to them:
|
|
105
105
|
*
|
|
106
106
|
* ```ts
|
|
107
|
-
* ['react-native-reanimated/src/component']
|
|
107
|
+
* ['react-native-reanimated/src/component', 'react-native-reanimated/lib/module/component']
|
|
108
108
|
* ```
|
|
109
109
|
*/
|
|
110
110
|
autoProcessPaths?: Array<string>
|
package/plugin/index.js
CHANGED
|
@@ -76,6 +76,18 @@ var NATIVE_COMPONENTS_PATHS = {
|
|
|
76
76
|
isDefault: true,
|
|
77
77
|
path: "react-native/Libraries/Components/View/ViewNativeComponent",
|
|
78
78
|
mapTo: "NativeView"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
name: "unstable_NativeText",
|
|
82
|
+
isDefault: false,
|
|
83
|
+
path: "react-native",
|
|
84
|
+
mapTo: "NativeText"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
name: "unstable_NativeView",
|
|
88
|
+
isDefault: false,
|
|
89
|
+
path: "react-native",
|
|
90
|
+
mapTo: "NativeView"
|
|
79
91
|
}
|
|
80
92
|
]
|
|
81
93
|
};
|
|
@@ -153,9 +165,10 @@ function handleExoticImport(path2, state, exoticImport) {
|
|
|
153
165
|
specifiers.forEach((specifier) => {
|
|
154
166
|
for (const rule of exoticImport.imports) {
|
|
155
167
|
const hasMatchingImportType = !rule.isDefault && t2.isImportSpecifier(specifier) || rule.isDefault && t2.isImportDefaultSpecifier(specifier);
|
|
156
|
-
const
|
|
168
|
+
const isTypeOnly = t2.isImportSpecifier(specifier) && specifier.importKind !== "value";
|
|
169
|
+
const hasMatchingImportName = rule.isDefault || t2.isImportSpecifier(specifier) && rule.name === getImportedName(specifier);
|
|
157
170
|
const hasMatchingPath = rule.path === source.value;
|
|
158
|
-
if (!hasMatchingImportType || !hasMatchingImportName || !hasMatchingPath) {
|
|
171
|
+
if (isTypeOnly || !hasMatchingImportType || !hasMatchingImportName || !hasMatchingPath) {
|
|
159
172
|
continue;
|
|
160
173
|
}
|
|
161
174
|
if (t2.isImportDefaultSpecifier(specifier)) {
|
|
@@ -166,10 +179,10 @@ function handleExoticImport(path2, state, exoticImport) {
|
|
|
166
179
|
path2.replaceWith(newImport);
|
|
167
180
|
} else {
|
|
168
181
|
const newImport = t2.importDeclaration(
|
|
169
|
-
[t2.importSpecifier(t2.identifier(
|
|
182
|
+
[t2.importSpecifier(t2.identifier(specifier.local.name), t2.identifier(rule.mapTo))],
|
|
170
183
|
t2.stringLiteral(getComponentPath(state, rule.mapTo))
|
|
171
184
|
);
|
|
172
|
-
path2.node.specifiers = specifiers.filter((s) => s !== specifier);
|
|
185
|
+
path2.node.specifiers = path2.node.specifiers.filter((s) => s !== specifier);
|
|
173
186
|
if (path2.node.specifiers.length === 0) {
|
|
174
187
|
path2.replaceWith(newImport);
|
|
175
188
|
} else {
|
|
@@ -180,6 +193,9 @@ function handleExoticImport(path2, state, exoticImport) {
|
|
|
180
193
|
}
|
|
181
194
|
});
|
|
182
195
|
}
|
|
196
|
+
function getImportedName(specifier) {
|
|
197
|
+
return t2.isIdentifier(specifier.imported) ? specifier.imported.name : specifier.imported.value;
|
|
198
|
+
}
|
|
183
199
|
|
|
184
200
|
// plugin/src/paths.ts
|
|
185
201
|
var import_node_path = __toESM(require("node:path"));
|
|
@@ -860,7 +876,7 @@ function index_default() {
|
|
|
860
876
|
}
|
|
861
877
|
});
|
|
862
878
|
}
|
|
863
|
-
if (importSource.includes("react-native/Libraries")) {
|
|
879
|
+
if (importSource === "react-native" || importSource.includes("react-native/Libraries")) {
|
|
864
880
|
handleExoticImport(path2, state, NATIVE_COMPONENTS_PATHS);
|
|
865
881
|
}
|
|
866
882
|
if (!state.file.forceProcessing && Array.isArray(state.opts.autoProcessImports)) {
|
|
@@ -1,12 +1,29 @@
|
|
|
1
1
|
import type { TextProps } from 'react-native'
|
|
2
2
|
|
|
3
3
|
import { type ComponentType, createElement, forwardRef } from 'react'
|
|
4
|
+
import * as ReactNative from 'react-native'
|
|
4
5
|
|
|
5
6
|
import { createUnistylesElement } from '../../core'
|
|
6
7
|
|
|
8
|
+
const RN = ReactNative as typeof ReactNative & { unstable_NativeText?: unknown }
|
|
9
|
+
|
|
10
|
+
const resolveRCTText = () => {
|
|
11
|
+
// RN 0.83+ re-exports the host component, which at runtime is the 'RCTText' string itself
|
|
12
|
+
if (typeof RN.unstable_NativeText === 'string') {
|
|
13
|
+
return RN.unstable_NativeText
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// older RN has no public handle on it, but reading Text evaluates the very same module
|
|
17
|
+
if (!RN.Text) {
|
|
18
|
+
throw new Error('Unistyles 🦄: react-native did not expose Text, unable to render NativeText')
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
return 'RCTText'
|
|
22
|
+
}
|
|
23
|
+
|
|
7
24
|
// credits to @hirbod
|
|
8
25
|
const LeanText = forwardRef((props, ref) => {
|
|
9
|
-
return createElement(
|
|
26
|
+
return createElement(resolveRCTText(), { ...props, ref })
|
|
10
27
|
}) as ComponentType<TextProps>
|
|
11
28
|
|
|
12
29
|
LeanText.displayName = 'RCTText'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { Text } from './Text'
|
|
1
|
+
export { Text, Text as NativeText } from './Text'
|
|
@@ -1,15 +1,35 @@
|
|
|
1
1
|
import type { ViewProps } from 'react-native'
|
|
2
2
|
|
|
3
3
|
import { type ComponentType, createElement, forwardRef } from 'react'
|
|
4
|
+
import * as ReactNative from 'react-native'
|
|
4
5
|
|
|
5
6
|
import { createUnistylesElement } from '../../core'
|
|
6
7
|
|
|
8
|
+
const RN = ReactNative as typeof ReactNative & { unstable_NativeView?: unknown }
|
|
9
|
+
|
|
10
|
+
const resolveRCTView = () => {
|
|
11
|
+
// RN 0.83+ re-exports the host component, which at runtime is the 'RCTView' string itself
|
|
12
|
+
if (typeof RN.unstable_NativeView === 'string') {
|
|
13
|
+
return RN.unstable_NativeView
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// older RN has no public handle on it, but reading View evaluates the very same module
|
|
17
|
+
if (!RN.View) {
|
|
18
|
+
throw new Error('Unistyles 🦄: react-native did not expose View, unable to render NativeView')
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
return 'RCTView'
|
|
22
|
+
}
|
|
23
|
+
|
|
7
24
|
// credits to @hirbod
|
|
8
25
|
const LeanView = forwardRef((props, ref) => {
|
|
9
|
-
return createElement(
|
|
26
|
+
return createElement(resolveRCTView(), { ...props, ref })
|
|
10
27
|
}) as ComponentType<ViewProps>
|
|
11
28
|
|
|
12
29
|
LeanView.displayName = 'RCTView'
|
|
13
30
|
|
|
31
|
+
// named export matches unstable_NativeView from react-native
|
|
32
|
+
export const NativeView = createUnistylesElement(LeanView)
|
|
33
|
+
|
|
14
34
|
// this will match default export from react-native
|
|
15
|
-
export default
|
|
35
|
+
export default NativeView
|
|
@@ -41,9 +41,14 @@ export const Pressable: React.ForwardRefExoticComponent<PressableProps & React.R
|
|
|
41
41
|
isServer()
|
|
42
42
|
? undefined
|
|
43
43
|
: (ref) => {
|
|
44
|
+
if (!ref) {
|
|
45
|
+
// @ts-expect-error hidden from TS
|
|
46
|
+
UnistylesShadowRegistry.remove(storedRef, classNames?.[0].hash)
|
|
47
|
+
}
|
|
48
|
+
|
|
44
49
|
storedRef = ref as unknown as HTMLElement
|
|
45
50
|
// @ts-expect-error hidden from TS
|
|
46
|
-
UnistylesShadowRegistry.add(storedRef, classNames?.hash)
|
|
51
|
+
UnistylesShadowRegistry.add(storedRef, classNames?.[0].hash)
|
|
47
52
|
|
|
48
53
|
if (typeof forwardedRef === 'function') {
|
|
49
54
|
return forwardedRef(ref)
|
|
@@ -61,10 +66,10 @@ export const Pressable: React.ForwardRefExoticComponent<PressableProps & React.R
|
|
|
61
66
|
UnistylesShadowRegistry.setScopedTheme(scopedTheme)
|
|
62
67
|
|
|
63
68
|
// @ts-expect-error hidden from TS
|
|
64
|
-
UnistylesShadowRegistry.remove(storedRef, classNames?.hash)
|
|
69
|
+
UnistylesShadowRegistry.remove(storedRef, classNames?.[0].hash)
|
|
65
70
|
classNames = getClassName(styleResult as UnistylesValues)
|
|
66
71
|
// @ts-expect-error hidden from TS
|
|
67
|
-
UnistylesShadowRegistry.add(storedRef, classNames?.hash)
|
|
72
|
+
UnistylesShadowRegistry.add(storedRef, classNames?.[0].hash)
|
|
68
73
|
|
|
69
74
|
UnistylesShadowRegistry.setScopedTheme(previousScopedTheme)
|
|
70
75
|
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { ActivityIndicator } from 'react-native'
|
|
2
|
+
|
|
3
|
+
import React from 'react'
|
|
4
|
+
|
|
5
|
+
import { isAndroid } from '../common'
|
|
6
|
+
import { UnistylesShadowRegistry } from '../specs'
|
|
7
|
+
import { copyComponentProperties } from '../utils'
|
|
8
|
+
import { passForwardedRef } from './passForwardRef'
|
|
9
|
+
import { maybeWarnAboutMultipleUnistyles } from './warn'
|
|
10
|
+
|
|
11
|
+
const getWrapperHandle = (ref: any) => {
|
|
12
|
+
const spinner = ref?.__internalInstanceHandle
|
|
13
|
+
|
|
14
|
+
return {
|
|
15
|
+
__internalInstanceHandle: isAndroid ? spinner?.return?.return : spinner?.return,
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export const createUnistylesActivityIndicator = (Component: typeof ActivityIndicator) => {
|
|
20
|
+
const UnistylesActivityIndicator = (props: any) => {
|
|
21
|
+
return (
|
|
22
|
+
<Component
|
|
23
|
+
{...props}
|
|
24
|
+
ref={(ref: unknown) => {
|
|
25
|
+
maybeWarnAboutMultipleUnistyles(props.style, 'ActivityIndicator')
|
|
26
|
+
|
|
27
|
+
const wrapperHandle = getWrapperHandle(ref)
|
|
28
|
+
|
|
29
|
+
return passForwardedRef(
|
|
30
|
+
ref,
|
|
31
|
+
props.ref,
|
|
32
|
+
() => {
|
|
33
|
+
// @ts-ignore this is hidden from TS
|
|
34
|
+
UnistylesShadowRegistry.add(wrapperHandle, props.style)
|
|
35
|
+
},
|
|
36
|
+
() => {
|
|
37
|
+
// @ts-ignore this is hidden from TS
|
|
38
|
+
UnistylesShadowRegistry.remove(wrapperHandle)
|
|
39
|
+
},
|
|
40
|
+
)
|
|
41
|
+
}}
|
|
42
|
+
/>
|
|
43
|
+
)
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
return copyComponentProperties(Component, UnistylesActivityIndicator)
|
|
47
|
+
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { ViewStyle } from 'react-native'
|
|
2
2
|
|
|
3
|
-
import React from 'react'
|
|
3
|
+
import React, { useCallback, useLayoutEffect, useRef } from 'react'
|
|
4
4
|
|
|
5
5
|
import type { UnistylesValues } from '../types'
|
|
6
6
|
|
|
7
7
|
import { copyComponentProperties } from '../utils'
|
|
8
|
+
import * as unistyles from '../web/services'
|
|
8
9
|
import { isServer } from '../web/utils'
|
|
9
|
-
import { createUnistylesRef } from '../web/utils/createUnistylesRef'
|
|
10
10
|
import { getClassName } from './getClassname'
|
|
11
11
|
import { maybeWarnAboutMultipleUnistyles } from './warn'
|
|
12
12
|
|
|
@@ -18,28 +18,59 @@ type ComponentProps = {
|
|
|
18
18
|
[K in StyleProp]?: UnistylesValues
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
const buildUnistylesProps = (Component: any, props: ComponentProps
|
|
21
|
+
const buildUnistylesProps = (Component: any, props: ComponentProps) => {
|
|
22
22
|
const componentStyleProps = ['style' as const, ...STYLE_PROPS.filter((styleProp) => styleProp in props)]
|
|
23
|
-
const classNames = Object.fromEntries(
|
|
24
|
-
componentStyleProps.map((styleProp) => [styleProp, getClassName(props[styleProp])]),
|
|
25
|
-
)
|
|
26
|
-
const refs = componentStyleProps.map((styleProp) => {
|
|
27
|
-
return createUnistylesRef(classNames[styleProp], styleProp === 'style' ? forwardedRef : undefined)
|
|
28
|
-
})
|
|
29
23
|
|
|
30
24
|
componentStyleProps.forEach((styleProp) => {
|
|
31
25
|
maybeWarnAboutMultipleUnistyles(props[styleProp] as ViewStyle, Component.displayName)
|
|
32
26
|
})
|
|
33
27
|
|
|
34
|
-
return
|
|
35
|
-
|
|
36
|
-
|
|
28
|
+
return Object.fromEntries(componentStyleProps.map((styleProp) => [styleProp, getClassName(props[styleProp])]))
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
const assignRef = (ref: React.Ref<unknown> | undefined, value: unknown) => {
|
|
32
|
+
if (typeof ref === 'function') {
|
|
33
|
+
ref(value)
|
|
34
|
+
} else if (ref) {
|
|
35
|
+
ref.current = value
|
|
37
36
|
}
|
|
38
37
|
}
|
|
39
38
|
|
|
40
39
|
export const createUnistylesElement = (Component: any) => {
|
|
41
|
-
const UnistylesComponent = (props: any) => {
|
|
42
|
-
|
|
40
|
+
const UnistylesComponent = ({ ref, ...props }: any) => {
|
|
41
|
+
const classNames = buildUnistylesProps(Component, props)
|
|
42
|
+
const hashes = Object.values(classNames).map((className) => className?.[0].hash)
|
|
43
|
+
const stored = useRef({ node: null as unknown, hashes, ref })
|
|
44
|
+
// Stable for the component lifetime, as some components (e.g. ScrollView) call only the latest ref on unmount
|
|
45
|
+
const unistylesRef = useCallback((node: unknown) => {
|
|
46
|
+
const { shadowRegistry } = unistyles.services
|
|
47
|
+
|
|
48
|
+
stored.current.hashes.forEach((hash) =>
|
|
49
|
+
node ? shadowRegistry.add(node, hash) : shadowRegistry.remove(stored.current.node, hash),
|
|
50
|
+
)
|
|
51
|
+
stored.current.node = node
|
|
52
|
+
assignRef(stored.current.ref, node)
|
|
53
|
+
}, [])
|
|
54
|
+
|
|
55
|
+
// React won't call a stable ref again, so apply style and ref changes after commit
|
|
56
|
+
useLayoutEffect(() => {
|
|
57
|
+
const { shadowRegistry } = unistyles.services
|
|
58
|
+
const { node, hashes: previousHashes, ref: previousRef } = stored.current
|
|
59
|
+
|
|
60
|
+
if (previousHashes.join() !== hashes.join()) {
|
|
61
|
+
previousHashes.forEach((hash) => shadowRegistry.remove(node, hash))
|
|
62
|
+
hashes.forEach((hash) => shadowRegistry.add(node, hash))
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
if (previousRef !== ref) {
|
|
66
|
+
assignRef(previousRef, null)
|
|
67
|
+
assignRef(ref, node)
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
stored.current = { node, hashes, ref }
|
|
71
|
+
})
|
|
72
|
+
|
|
73
|
+
return <Component {...props} {...classNames} ref={isServer() ? undefined : unistylesRef} />
|
|
43
74
|
}
|
|
44
75
|
|
|
45
76
|
return copyComponentProperties(Component, UnistylesComponent)
|