@draftbit/theme 50.6.1 → 50.6.2-00b4f9.2

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.
@@ -1,4 +1,4 @@
1
- import { asThemeValuesObject } from "./validators";
1
+ import { isObject } from "lodash";
2
2
  /**
3
3
  * Creates a proxy for theme value objects to select a value whenever
4
4
  * multiple values are provided for different platforms, breakpoints, and/or light/dark modes
@@ -13,7 +13,9 @@ export default function createThemeValuesProxy({ value, breakpoints, deviceWidth
13
13
  return new Proxy(value, {
14
14
  get: (target, key) => {
15
15
  const currentValue = target[key];
16
- const valueAsThemeValues = asThemeValuesObject(currentValue);
16
+ const valueAsThemeValues = isObject(currentValue)
17
+ ? currentValue
18
+ : undefined;
17
19
  if (valueAsThemeValues) {
18
20
  const platformKeys = ["ios", "android", "web", "macos", "windows"];
19
21
  const breakpointKeys = Object.keys(breakpoints);
@@ -87,7 +89,9 @@ function getPlatformValue(input) {
87
89
  var _a;
88
90
  const { value, devicePlatform } = input;
89
91
  const currentPlatformValue = (_a = value === null || value === void 0 ? void 0 : value[devicePlatform]) !== null && _a !== void 0 ? _a : value === null || value === void 0 ? void 0 : value.default;
90
- const valueAsThemeValues = asThemeValuesObject(currentPlatformValue);
92
+ const valueAsThemeValues = isObject(currentPlatformValue)
93
+ ? currentPlatformValue
94
+ : undefined;
91
95
  if (valueAsThemeValues) {
92
96
  return createThemeValuesProxy({ ...input, value: valueAsThemeValues });
93
97
  }
@@ -107,7 +111,9 @@ function getBreakpointValue(input) {
107
111
  }
108
112
  }
109
113
  const currentBreakpointValue = (_a = value === null || value === void 0 ? void 0 : value[currentBreakpointKey]) !== null && _a !== void 0 ? _a : value === null || value === void 0 ? void 0 : value.default;
110
- const valueAsThemeValues = asThemeValuesObject(currentBreakpointValue);
114
+ const valueAsThemeValues = isObject(currentBreakpointKey)
115
+ ? currentBreakpointKey
116
+ : undefined;
111
117
  if (valueAsThemeValues) {
112
118
  return createThemeValuesProxy({ ...input, value: valueAsThemeValues });
113
119
  }
@@ -119,7 +125,9 @@ function getLightDarkValue(input) {
119
125
  var _a;
120
126
  const { value, currentLightDarkSelection } = input;
121
127
  const currentLightDarkValue = (_a = value === null || value === void 0 ? void 0 : value[currentLightDarkSelection]) !== null && _a !== void 0 ? _a : value === null || value === void 0 ? void 0 : value.default;
122
- const valueAsThemeValues = asThemeValuesObject(currentLightDarkValue);
128
+ const valueAsThemeValues = isObject(currentLightDarkSelection)
129
+ ? currentLightDarkSelection
130
+ : undefined;
123
131
  if (valueAsThemeValues) {
124
132
  return createThemeValuesProxy({ ...input, value: valueAsThemeValues });
125
133
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createThemeValuesProxy.js","sourceRoot":"","sources":["createThemeValuesProxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createThemeValuesProxy.js","sourceRoot":"","sources":["createThemeValuesProxy.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { ThemeValues, Breakpoints } from "./types";
2
2
  import { Platform, TextStyle } from "react-native";
3
- import { asThemeValuesObject } from "./validators";
3
+ import { isObject } from "lodash";
4
4
 
5
5
  interface CreateThemeValuesProxyInput {
6
6
  value: ThemeValues | undefined;
@@ -34,7 +34,9 @@ export default function createThemeValuesProxy({
34
34
  ): string | number | ThemeValues | TextStyle | undefined => {
35
35
  const currentValue = target[key];
36
36
 
37
- const valueAsThemeValues = asThemeValuesObject(currentValue);
37
+ const valueAsThemeValues = isObject(currentValue)
38
+ ? (currentValue as ThemeValues)
39
+ : undefined;
38
40
 
39
41
  if (valueAsThemeValues) {
40
42
  const platformKeys = ["ios", "android", "web", "macos", "windows"];
@@ -139,7 +141,9 @@ function getPlatformValue(input: CreateThemeValuesProxyInput) {
139
141
  const { value, devicePlatform } = input;
140
142
 
141
143
  const currentPlatformValue = value?.[devicePlatform] ?? value?.default;
142
- const valueAsThemeValues = asThemeValuesObject(currentPlatformValue);
144
+ const valueAsThemeValues = isObject(currentPlatformValue)
145
+ ? (currentPlatformValue as ThemeValues)
146
+ : undefined;
143
147
 
144
148
  if (valueAsThemeValues) {
145
149
  return createThemeValuesProxy({ ...input, value: valueAsThemeValues });
@@ -163,7 +167,9 @@ function getBreakpointValue(input: CreateThemeValuesProxyInput) {
163
167
  }
164
168
  const currentBreakpointValue =
165
169
  value?.[currentBreakpointKey] ?? value?.default;
166
- const valueAsThemeValues = asThemeValuesObject(currentBreakpointValue);
170
+ const valueAsThemeValues = isObject(currentBreakpointKey)
171
+ ? (currentBreakpointKey as ThemeValues)
172
+ : undefined;
167
173
 
168
174
  if (valueAsThemeValues) {
169
175
  return createThemeValuesProxy({ ...input, value: valueAsThemeValues });
@@ -177,7 +183,9 @@ function getLightDarkValue(input: CreateThemeValuesProxyInput) {
177
183
 
178
184
  const currentLightDarkValue =
179
185
  value?.[currentLightDarkSelection] ?? value?.default;
180
- const valueAsThemeValues = asThemeValuesObject(currentLightDarkValue);
186
+ const valueAsThemeValues = isObject(currentLightDarkSelection)
187
+ ? (currentLightDarkSelection as ThemeValues)
188
+ : undefined;
181
189
 
182
190
  if (valueAsThemeValues) {
183
191
  return createThemeValuesProxy({ ...input, value: valueAsThemeValues });
package/src/validators.js CHANGED
@@ -1,91 +1,17 @@
1
- import { z } from "zod";
2
- const PaletteSchema = z.record(z.string(), z.record(z.string(), z.string()));
3
- const BreakpointSchema = z.record(z.string(), z.number());
4
- const TextStyleSchema = z.union([
5
- z.object({
6
- fontSize: z.number(),
7
- }),
8
- z.object({
9
- fontFamily: z.string(),
10
- }),
11
- z.object({
12
- fontWeight: z.enum([
13
- "normal",
14
- "bold",
15
- "100",
16
- "200",
17
- "300",
18
- "400",
19
- "500",
20
- "600",
21
- "700",
22
- "800",
23
- "900",
24
- ]),
25
- }),
26
- z.object({
27
- fontStyle: z.enum(["normal", "italic"]),
28
- }),
29
- z.object({
30
- letterSpacing: z.number(),
31
- }),
32
- z.object({
33
- lineHeight: z.number(),
34
- }),
35
- ]);
36
- const ThemeValuesSchema = z.record(z.string(), z.lazy(() => z.union([z.string(), z.number(), TextStyleSchema, ThemeValuesSchema])));
37
- const TextStyleOrThemeValuesSchema = z.union([TextStyleSchema, ThemeValuesSchema]);
38
- const ThemeSchema = z.object({
39
- name: z.string(),
40
- colors: z.object({
41
- branding: ThemeValuesSchema.optional(),
42
- text: ThemeValuesSchema.optional(),
43
- background: ThemeValuesSchema.optional(),
44
- foreground: ThemeValuesSchema.optional(),
45
- border: ThemeValuesSchema.optional(),
46
- }),
47
- typography: z.object({
48
- body1: TextStyleOrThemeValuesSchema.optional(),
49
- body2: TextStyleOrThemeValuesSchema.optional(),
50
- button: TextStyleOrThemeValuesSchema.optional(),
51
- caption: TextStyleOrThemeValuesSchema.optional(),
52
- headline1: TextStyleOrThemeValuesSchema.optional(),
53
- headline2: TextStyleOrThemeValuesSchema.optional(),
54
- headline3: TextStyleOrThemeValuesSchema.optional(),
55
- headline4: TextStyleOrThemeValuesSchema.optional(),
56
- headline5: TextStyleOrThemeValuesSchema.optional(),
57
- headline6: TextStyleOrThemeValuesSchema.optional(),
58
- overline: TextStyleOrThemeValuesSchema.optional(),
59
- subtitle1: TextStyleOrThemeValuesSchema.optional(),
60
- subtitle2: TextStyleOrThemeValuesSchema.optional(),
61
- }),
62
- });
63
1
  export function validatePalettes(palettes) {
64
- const result = PaletteSchema.safeParse(palettes);
65
- if (!result.success) {
66
- throw new Error("Invalid palettes object: " + result.error.message);
67
- }
2
+ palettes;
68
3
  }
69
4
  export function validateBreakpoints(breakpoints) {
70
- const result = BreakpointSchema.safeParse(breakpoints);
71
- if (!result.success) {
72
- throw new Error("Invalid breakpoints object: " + result.error.message);
73
- }
5
+ breakpoints;
74
6
  }
75
7
  export function validateTheme(theme) {
76
- const result = ThemeSchema.safeParse(theme);
77
- if (!result.success) {
78
- throw new Error("Invalid theme object: " + result.error.message);
79
- }
8
+ theme;
80
9
  }
81
10
  export function isTextStyleObject(value) {
82
- return TextStyleSchema.safeParse(value).success;
11
+ value;
12
+ return true;
83
13
  }
84
14
  export function asThemeValuesObject(value) {
85
- // Text style matches the shape of ThemeValues, but we don't want to treat it as a ThemeValues
86
- if (isTextStyleObject(value)) {
87
- return null;
88
- }
89
- return ThemeValuesSchema.safeParse(value).success ? value : null;
15
+ return value;
90
16
  }
91
17
  //# sourceMappingURL=validators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["validators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["validators.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAAC,QAAuB;IACtD,QAAQ,CAAC;AACX,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAAwB;IAC1D,WAAW,CAAC;AACd,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAY;IACxC,KAAK,CAAC;AACR,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAU;IAC1C,KAAK,CAAC;IACN,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAU;IAC5C,OAAO,KAAK,CAAC;AACf,CAAC"}
package/src/validators.ts CHANGED
@@ -1,116 +1,22 @@
1
1
  import { ColorPalettes, Breakpoints, Theme, ThemeValues } from "./types";
2
- import { TextStyle } from "react-native";
3
- import { z } from "zod";
4
-
5
- const PaletteSchema: z.ZodType<ColorPalettes> = z.record(
6
- z.string(),
7
- z.record(z.string(), z.string())
8
- );
9
-
10
- const BreakpointSchema: z.ZodType<Breakpoints> = z.record(
11
- z.string(),
12
- z.number()
13
- );
14
-
15
- const TextStyleSchema: z.ZodType<TextStyle> = z.union([
16
- z.object({
17
- fontSize: z.number(),
18
- }),
19
- z.object({
20
- fontFamily: z.string(),
21
- }),
22
- z.object({
23
- fontWeight: z.enum([
24
- "normal",
25
- "bold",
26
- "100",
27
- "200",
28
- "300",
29
- "400",
30
- "500",
31
- "600",
32
- "700",
33
- "800",
34
- "900",
35
- ]),
36
- }),
37
- z.object({
38
- fontStyle: z.enum(["normal", "italic"]),
39
- }),
40
- z.object({
41
- letterSpacing: z.number(),
42
- }),
43
- z.object({
44
- lineHeight: z.number(),
45
- }),
46
- ]);
47
-
48
- const ThemeValuesSchema: z.ZodType<ThemeValues> = z.record(
49
- z.string(),
50
- z.lazy(() =>
51
- z.union([z.string(), z.number(), TextStyleSchema, ThemeValuesSchema])
52
- )
53
- );
54
-
55
- const TextStyleOrThemeValuesSchema: z.ZodType<ThemeValues | TextStyle> =
56
- z.union([TextStyleSchema, ThemeValuesSchema]);
57
-
58
- const ThemeSchema: z.ZodType<Theme> = z.object({
59
- name: z.string(),
60
- colors: z.object({
61
- branding: ThemeValuesSchema.optional(),
62
- text: ThemeValuesSchema.optional(),
63
- background: ThemeValuesSchema.optional(),
64
- foreground: ThemeValuesSchema.optional(),
65
- border: ThemeValuesSchema.optional(),
66
- }),
67
- typography: z.object({
68
- body1: TextStyleOrThemeValuesSchema.optional(),
69
- body2: TextStyleOrThemeValuesSchema.optional(),
70
- button: TextStyleOrThemeValuesSchema.optional(),
71
- caption: TextStyleOrThemeValuesSchema.optional(),
72
- headline1: TextStyleOrThemeValuesSchema.optional(),
73
- headline2: TextStyleOrThemeValuesSchema.optional(),
74
- headline3: TextStyleOrThemeValuesSchema.optional(),
75
- headline4: TextStyleOrThemeValuesSchema.optional(),
76
- headline5: TextStyleOrThemeValuesSchema.optional(),
77
- headline6: TextStyleOrThemeValuesSchema.optional(),
78
- overline: TextStyleOrThemeValuesSchema.optional(),
79
- subtitle1: TextStyleOrThemeValuesSchema.optional(),
80
- subtitle2: TextStyleOrThemeValuesSchema.optional(),
81
- }),
82
- });
83
2
 
84
3
  export function validatePalettes(palettes: ColorPalettes) {
85
- const result = PaletteSchema.safeParse(palettes);
86
- if (!result.success) {
87
- throw new Error("Invalid palettes object: " + result.error.message);
88
- }
4
+ palettes;
89
5
  }
90
6
 
91
7
  export function validateBreakpoints(breakpoints: Breakpoints) {
92
- const result = BreakpointSchema.safeParse(breakpoints);
93
- if (!result.success) {
94
- throw new Error("Invalid breakpoints object: " + result.error.message);
95
- }
8
+ breakpoints;
96
9
  }
97
10
 
98
11
  export function validateTheme(theme: Theme) {
99
- const result = ThemeSchema.safeParse(theme);
100
- if (!result.success) {
101
- throw new Error("Invalid theme object: " + result.error.message);
102
- }
12
+ theme;
103
13
  }
104
14
 
105
15
  export function isTextStyleObject(value: any): boolean {
106
- return TextStyleSchema.safeParse(value).success;
16
+ value;
17
+ return true;
107
18
  }
108
19
 
109
20
  export function asThemeValuesObject(value: any): ThemeValues | null {
110
- // Text style matches the shape of ThemeValues, but we don't want to treat it as a ThemeValues
111
- if (isTextStyleObject(value)) {
112
- return null;
113
- }
114
-
115
- return ThemeValuesSchema.safeParse(value).success ? value : null;
21
+ return value;
116
22
  }