@draftbit/core 44.2.1-e53c90.0 → 44.2.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.
@@ -7,9 +7,23 @@ exports.default = void 0;
7
7
 
8
8
  var React = _interopRequireWildcard(require("react"));
9
9
 
10
+ var _reactNative = require("react-native");
11
+
12
+ var _lodash = require("lodash");
13
+
14
+ var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
15
+
16
+ var _picker = require("@react-native-picker/picker");
17
+
10
18
  var _theming = require("../../theming");
11
19
 
12
- var _PickerComponent = _interopRequireDefault(require("./PickerComponent"));
20
+ var _Portal = _interopRequireDefault(require("../Portal/Portal"));
21
+
22
+ var _DeprecatedButton = _interopRequireDefault(require("../DeprecatedButton"));
23
+
24
+ var _Touchable = _interopRequireDefault(require("../Touchable"));
25
+
26
+ var _utilities = require("../../utilities");
13
27
 
14
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
29
 
@@ -17,24 +31,22 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
17
31
 
18
32
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
33
 
20
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
21
-
22
34
  function normalizeOptions(options) {
23
35
  if (options.length === 0) {
24
36
  return [];
25
37
  }
26
38
 
27
- if (typeof options[0] === "string") {
39
+ if (typeof options[0] === ("string" || "number")) {
28
40
  return options.map(option => ({
29
- label: option,
41
+ label: String(option),
30
42
  value: String(option)
31
43
  }));
32
44
  }
33
45
 
34
- if (options[0].label && options[0].value) {
46
+ if ((0, _lodash.isObject)(options[0]) && options[0].value !== null && options[0].label !== null) {
35
47
  return options.map(option => {
36
48
  return {
37
- label: option.label,
49
+ label: String(option.label),
38
50
  value: String(option.value)
39
51
  };
40
52
  });
@@ -43,16 +55,48 @@ function normalizeOptions(options) {
43
55
  throw new Error('Picker options must be either an array of strings or array of { "label": string; "value": string; } objects.');
44
56
  }
45
57
 
58
+ const {
59
+ width: deviceWidth,
60
+ height: deviceHeight
61
+ } = _reactNative.Dimensions.get("screen");
62
+
63
+ const isIos = _reactNative.Platform.OS === "ios";
64
+ const unstyledColor = "rgba(165, 173, 183, 1)";
65
+ const disabledColor = "rgb(240, 240, 240)";
66
+ const errorColor = "rgba(255, 69, 100, 1)";
67
+
46
68
  const Picker = _ref => {
69
+ var _find$label, _find;
70
+
47
71
  let {
72
+ error,
48
73
  options = [],
74
+ onValueChange,
75
+ defaultValue,
76
+ Icon,
77
+ style,
49
78
  placeholder,
50
- onValueChange: onValueChangeOverride,
51
79
  value,
52
- defaultValue,
53
- ...props
80
+ disabled = false,
81
+ theme,
82
+ assistiveText,
83
+ label,
84
+ iconColor = unstyledColor,
85
+ iconSize = 24,
86
+ leftIconMode = "inset",
87
+ leftIconName,
88
+ placeholderTextColor = unstyledColor,
89
+ rightIconName,
90
+ type = "solid"
54
91
  } = _ref;
92
+ const androidPickerRef = React.useRef(undefined);
55
93
  const [internalValue, setInternalValue] = React.useState(value || defaultValue);
94
+ const [pickerVisible, setPickerVisible] = React.useState(false);
95
+
96
+ const togglePickerVisible = () => {
97
+ setPickerVisible(!pickerVisible);
98
+ };
99
+
56
100
  React.useEffect(() => {
57
101
  if (value != null) {
58
102
  setInternalValue(value);
@@ -63,36 +107,255 @@ const Picker = _ref => {
63
107
  setInternalValue(defaultValue);
64
108
  }
65
109
  }, [defaultValue]);
66
- const onValueChange = React.useCallback((itemValue, itemIndex) => {
67
- if (placeholder && itemIndex === 0) {
68
- return;
69
- }
110
+ React.useEffect(() => {
111
+ if (pickerVisible && androidPickerRef.current) {
112
+ var _androidPickerRef$cur;
70
113
 
71
- onValueChangeOverride && onValueChangeOverride(String(itemValue), itemIndex);
72
- }, [placeholder, onValueChangeOverride]);
114
+ androidPickerRef === null || androidPickerRef === void 0 ? void 0 : (_androidPickerRef$cur = androidPickerRef.current) === null || _androidPickerRef$cur === void 0 ? void 0 : _androidPickerRef$cur.focus();
115
+ }
116
+ }, [pickerVisible, androidPickerRef]);
73
117
  const normalizedOptions = normalizeOptions(options);
74
118
  const pickerOptions = placeholder ? [{
75
119
  value: placeholder,
76
120
  label: placeholder
77
121
  }, ...normalizedOptions] : normalizedOptions;
122
+ const {
123
+ colors
124
+ } = theme;
125
+ const {
126
+ viewStyles,
127
+ textStyles
128
+ } = (0, _utilities.extractStyles)(style);
129
+ const additionalBorderStyles = ["backgroundColor"];
130
+ const additionalMarginStyles = ["bottom", "height", "left", "maxHeight", "maxWidth", "minHeight", "minWidth", "overflow", "position", "right", "top", "width", "zIndex"];
131
+ const {
132
+ borderStyles: extractedBorderStyles,
133
+ marginStyles: extractedMarginStyles
134
+ } = (0, _utilities.extractBorderAndMarginStyles)(viewStyles, additionalBorderStyles, additionalMarginStyles);
135
+ const borderStyles = { ...{ ...(type === "solid" ? {
136
+ borderTopLeftRadius: 5,
137
+ borderTopRightRadius: 5,
138
+ borderBottomRightRadius: 5,
139
+ borderBottomLeftRadius: 5,
140
+ borderTopWidth: 1,
141
+ borderRightWidth: 1,
142
+ borderLeftWidth: 1
143
+ } : {}),
144
+ borderBottomWidth: 1,
145
+ borderColor: unstyledColor,
146
+ borderStyle: "solid"
147
+ },
148
+ ...extractedBorderStyles,
149
+ ...(error ? {
150
+ borderColor: errorColor
151
+ } : {}),
152
+ ...(disabled ? {
153
+ borderColor: "transparent",
154
+ backgroundColor: disabledColor
155
+ } : {})
156
+ };
157
+ const marginStyles = {
158
+ height: 60,
159
+ ...extractedMarginStyles
160
+ };
161
+ const stylesWithoutBordersAndMargins = (0, _lodash.omit)(viewStyles, [..._utilities.borderStyleNames, ..._utilities.marginStyleNames, ...additionalBorderStyles, ...additionalMarginStyles]);
162
+ const selectedLabel = internalValue && ((_find$label = (_find = pickerOptions.find(option => option.value === internalValue)) === null || _find === void 0 ? void 0 : _find.label) !== null && _find$label !== void 0 ? _find$label : internalValue);
163
+ const labelText = label ? /*#__PURE__*/React.createElement(_reactNative.Text, {
164
+ style: {
165
+ textAlign: textStyles.textAlign,
166
+ color: unstyledColor,
167
+ fontSize: 12,
168
+ paddingBottom: 4
169
+ }
170
+ }, label) : null;
171
+ const leftIconOutset = leftIconMode === "outset";
172
+ const leftIcon = leftIconName ? /*#__PURE__*/React.createElement(Icon, {
173
+ name: leftIconName,
174
+ color: disabled ? unstyledColor : iconColor,
175
+ size: iconSize,
176
+ style: {
177
+ marginRight: 4,
178
+ marginLeft: 4
179
+ }
180
+ }) : null;
181
+ const rightIcon = rightIconName ? /*#__PURE__*/React.createElement(Icon, {
182
+ name: rightIconName,
183
+ color: disabled ? unstyledColor : iconColor,
184
+ size: iconSize,
185
+ style: {
186
+ marginRight: -10,
187
+ marginLeft: 8
188
+ }
189
+ }) : null;
190
+ const textAlign = textStyles === null || textStyles === void 0 ? void 0 : textStyles.textAlign;
78
191
 
79
- const handleValueChange = (newValue, itemIndex) => {
80
- setInternalValue(newValue);
192
+ const calculateLeftPadding = () => {
193
+ if (leftIconOutset) {
194
+ if (textAlign === "center") {
195
+ return iconSize - Math.abs(8 - iconSize);
196
+ }
197
+
198
+ return iconSize + 8;
199
+ }
200
+
201
+ return 0;
202
+ };
81
203
 
82
- if (onValueChange) {
83
- onValueChange(newValue, itemIndex);
204
+ const assistiveTextLabel = assistiveText ? /*#__PURE__*/React.createElement(_reactNative.Text, {
205
+ style: {
206
+ textAlign,
207
+ width: "100%",
208
+ paddingLeft: calculateLeftPadding(),
209
+ color: unstyledColor,
210
+ fontSize: 12,
211
+ paddingTop: 4
84
212
  }
213
+ }, assistiveText) : null;
214
+ const primaryTextStyle = {
215
+ color: unstyledColor,
216
+ fontSize: 14,
217
+ ...(0, _lodash.pickBy)(textStyles, _lodash.identity),
218
+ ...(placeholder === internalValue ? {
219
+ color: placeholderTextColor
220
+ } : {}),
221
+ ...(disabled ? {
222
+ color: unstyledColor
223
+ } : {})
85
224
  };
86
225
 
87
- return /*#__PURE__*/React.createElement(_PickerComponent.default, _extends({}, props, {
88
- selectedValue: String(internalValue),
89
- placeholder: placeholder,
90
- options: pickerOptions,
91
- onValueChange: handleValueChange
92
- }));
226
+ const handleValueChange = (newValue, itemIndex) => {
227
+ if (!placeholder || itemIndex > 0) {
228
+ onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(newValue, itemIndex);
229
+ }
230
+
231
+ setInternalValue(newValue);
232
+ };
233
+
234
+ return (
235
+ /*#__PURE__*/
236
+
237
+ /* marginsContainer */
238
+ React.createElement(_reactNative.View, {
239
+ style: [styles.marginsContainer, marginStyles]
240
+ }, /*#__PURE__*/React.createElement(_Touchable.default, {
241
+ disabled: disabled,
242
+ onPress: togglePickerVisible,
243
+ style: styles.touchableContainer
244
+ }, /*#__PURE__*/React.createElement(_reactNative.View, {
245
+ pointerEvents: "none",
246
+ style: [styles.outsetContainer, stylesWithoutBordersAndMargins, !leftIconOutset ? borderStyles : {}]
247
+ }, leftIcon, /*#__PURE__*/React.createElement(_reactNative.View, {
248
+ style: [styles.insetContainer, leftIconOutset ? borderStyles : {}]
249
+ }, /*#__PURE__*/React.createElement(_reactNative.View, {
250
+ style: styles.primaryTextContainer
251
+ }, labelText, /*#__PURE__*/React.createElement(_reactNative.Text, {
252
+ style: primaryTextStyle
253
+ }, String(selectedLabel !== null && selectedLabel !== void 0 ? selectedLabel : placeholder))), rightIcon)), assistiveTextLabel), isIos && pickerVisible ? /*#__PURE__*/React.createElement(_Portal.default, null, /*#__PURE__*/React.createElement(_reactNative.View, {
254
+ style: [styles.iosPicker, {
255
+ backgroundColor: colors.divider
256
+ }]
257
+ }, /*#__PURE__*/React.createElement(_reactNativeSafeAreaContext.SafeAreaView, {
258
+ style: styles.iosSafeArea
259
+ }, /*#__PURE__*/React.createElement(_DeprecatedButton.default, {
260
+ Icon: Icon,
261
+ type: "text",
262
+ onPress: togglePickerVisible,
263
+ style: styles.iosButton
264
+ }, "Close"), /*#__PURE__*/React.createElement(_picker.Picker, {
265
+ style: styles.iosNativePicker,
266
+ selectedValue: internalValue,
267
+ onValueChange: handleValueChange
268
+ }, pickerOptions.map(option => /*#__PURE__*/React.createElement(_picker.Picker.Item, {
269
+ label: option.label,
270
+ value: option.value,
271
+ key: option.value
272
+ })))))) : null, !isIos && pickerVisible ? /*#__PURE__*/React.createElement(_picker.Picker, {
273
+ enabled: pickerVisible,
274
+ selectedValue: internalValue,
275
+ onValueChange: handleValueChange,
276
+ style: styles.nonIosPicker,
277
+ ref: androidPickerRef,
278
+ onBlur: () => setPickerVisible(false)
279
+ }, pickerOptions.map(option => /*#__PURE__*/React.createElement(_picker.Picker.Item, {
280
+ label: option.label,
281
+ value: option.value,
282
+ key: option.value
283
+ }))) : null)
284
+ );
93
285
  };
94
286
 
95
287
  var _default = (0, _theming.withTheme)(Picker);
96
288
 
97
289
  exports.default = _default;
290
+
291
+ const styles = _reactNative.StyleSheet.create({
292
+ marginsContainer: {
293
+ alignSelf: "stretch",
294
+ alignItems: "center",
295
+ width: "100%",
296
+ maxWidth: deviceWidth
297
+ },
298
+ touchableContainer: {
299
+ flex: 1,
300
+ height: "100%",
301
+ width: "100%",
302
+ alignSelf: "stretch",
303
+ alignItems: "center"
304
+ },
305
+ outsetContainer: {
306
+ flex: 1,
307
+ height: "100%",
308
+ width: "100%",
309
+ flexDirection: "row",
310
+ alignItems: "center",
311
+ justifyContent: "space-between"
312
+ },
313
+ insetContainer: {
314
+ flex: 1,
315
+ height: "100%",
316
+ width: "100%",
317
+ flexDirection: "row",
318
+ alignItems: "center",
319
+ justifyContent: "space-between",
320
+ paddingLeft: 12,
321
+ paddingRight: 12
322
+ },
323
+ primaryTextContainer: {
324
+ flex: 1
325
+ },
326
+ iosPicker: {
327
+ position: "absolute",
328
+ bottom: 0,
329
+ left: 0,
330
+ right: 0,
331
+ flexDirection: "row",
332
+ justifyContent: "center",
333
+ width: "100%",
334
+ maxWidth: deviceWidth,
335
+ maxHeight: deviceHeight
336
+ },
337
+ iosSafeArea: {
338
+ backgroundColor: "white",
339
+ flexDirection: "column",
340
+ width: "100%",
341
+ maxWidth: deviceWidth
342
+ },
343
+ iosButton: {
344
+ alignSelf: "flex-end"
345
+ },
346
+ iosNativePicker: {
347
+ backgroundColor: "white"
348
+ },
349
+ nonIosPicker: {
350
+ opacity: 0,
351
+ position: "absolute",
352
+ top: 0,
353
+ left: 0,
354
+ right: 0,
355
+ bottom: 0,
356
+ width: "100%",
357
+ maxWidth: deviceWidth,
358
+ maxHeight: deviceHeight
359
+ }
360
+ });
98
361
  //# sourceMappingURL=Picker.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["Picker.tsx"],"names":["normalizeOptions","options","length","map","option","label","value","String","Error","Picker","placeholder","onValueChange","onValueChangeOverride","defaultValue","props","internalValue","setInternalValue","React","useState","useEffect","useCallback","itemValue","itemIndex","normalizedOptions","pickerOptions","handleValueChange","newValue"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;;;;;;;;;AASA,SAASA,gBAAT,CAA0BC,OAA1B,EAAqE;AACnE,MAAIA,OAAO,CAACC,MAAR,KAAmB,CAAvB,EAA0B;AACxB,WAAO,EAAP;AACD;;AAED,MAAI,OAAOD,OAAO,CAAC,CAAD,CAAd,KAAsB,QAA1B,EAAoC;AAClC,WAAQA,OAAD,CAAsBE,GAAtB,CAA2BC,MAAD,KAAa;AAC5CC,MAAAA,KAAK,EAAED,MADqC;AAE5CE,MAAAA,KAAK,EAAEC,MAAM,CAACH,MAAD;AAF+B,KAAb,CAA1B,CAAP;AAID;;AAED,MAAIH,OAAO,CAAC,CAAD,CAAP,CAAWI,KAAX,IAAoBJ,OAAO,CAAC,CAAD,CAAP,CAAWK,KAAnC,EAA0C;AACxC,WAAOL,OAAO,CAACE,GAAR,CAAaC,MAAD,IAAY;AAC7B,aAAO;AACLC,QAAAA,KAAK,EAAED,MAAM,CAACC,KADT;AAELC,QAAAA,KAAK,EAAEC,MAAM,CAACH,MAAM,CAACE,KAAR;AAFR,OAAP;AAID,KALM,CAAP;AAMD;;AAED,QAAM,IAAIE,KAAJ,CACJ,8GADI,CAAN;AAGD;;AAED,MAAMC,MAAuB,GAAG,QAO1B;AAAA,MAP2B;AAC/BR,IAAAA,OAAO,GAAG,EADqB;AAE/BS,IAAAA,WAF+B;AAG/BC,IAAAA,aAAa,EAAEC,qBAHgB;AAI/BN,IAAAA,KAJ+B;AAK/BO,IAAAA,YAL+B;AAM/B,OAAGC;AAN4B,GAO3B;AACJ,QAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCC,KAAK,CAACC,QAAN,CACxCZ,KAAK,IAAIO,YAD+B,CAA1C;AAIAI,EAAAA,KAAK,CAACE,SAAN,CAAgB,MAAM;AACpB,QAAIb,KAAK,IAAI,IAAb,EAAmB;AACjBU,MAAAA,gBAAgB,CAACV,KAAD,CAAhB;AACD;AACF,GAJD,EAIG,CAACA,KAAD,CAJH;AAMAW,EAAAA,KAAK,CAACE,SAAN,CAAgB,MAAM;AACpB,QAAIN,YAAY,IAAI,IAApB,EAA0B;AACxBG,MAAAA,gBAAgB,CAACH,YAAD,CAAhB;AACD;AACF,GAJD,EAIG,CAACA,YAAD,CAJH;AAMA,QAAMF,aAAa,GAAGM,KAAK,CAACG,WAAN,CACpB,CAACC,SAAD,EAAoBC,SAApB,KAA0C;AACxC,QAAIZ,WAAW,IAAIY,SAAS,KAAK,CAAjC,EAAoC;AAClC;AACD;;AACDV,IAAAA,qBAAqB,IACnBA,qBAAqB,CAACL,MAAM,CAACc,SAAD,CAAP,EAAoBC,SAApB,CADvB;AAED,GAPmB,EAQpB,CAACZ,WAAD,EAAcE,qBAAd,CARoB,CAAtB;AAWA,QAAMW,iBAAiB,GAAGvB,gBAAgB,CAACC,OAAD,CAA1C;AAEA,QAAMuB,aAAa,GAAGd,WAAW,GAC7B,CAAC;AAAEJ,IAAAA,KAAK,EAAEI,WAAT;AAAsBL,IAAAA,KAAK,EAAEK;AAA7B,GAAD,EAA6C,GAAGa,iBAAhD,CAD6B,GAE7BA,iBAFJ;;AAIA,QAAME,iBAAiB,GAAG,CAACC,QAAD,EAAmBJ,SAAnB,KAAyC;AACjEN,IAAAA,gBAAgB,CAACU,QAAD,CAAhB;;AACA,QAAIf,aAAJ,EAAmB;AACjBA,MAAAA,aAAa,CAACe,QAAD,EAAWJ,SAAX,CAAb;AACD;AACF,GALD;;AAOA,sBACE,oBAAC,wBAAD,eACMR,KADN;AAEE,IAAA,aAAa,EAAEP,MAAM,CAACQ,aAAD,CAFvB;AAGE,IAAA,WAAW,EAAEL,WAHf;AAIE,IAAA,OAAO,EAAEc,aAJX;AAKE,IAAA,aAAa,EAAEC;AALjB,KADF;AASD,CAzDD;;eA2De,wBAAUhB,MAAV,C","sourcesContent":["import * as React from \"react\";\nimport { withTheme } from \"../../theming\";\n//@ts-ignore\nimport PickerComponent from \"./PickerComponent\"; //unable to find file due to using .android/.web/.ios\nimport { PickerComponentProps, PickerOption } from \"./PickerTypes\";\n\ntype Props = PickerComponentProps & {\n placeholder?: string;\n value?: string;\n options: PickerOption[] | string[];\n};\n\nfunction normalizeOptions(options: Props[\"options\"]): PickerOption[] {\n if (options.length === 0) {\n return [];\n }\n\n if (typeof options[0] === \"string\") {\n return (options as string[]).map((option) => ({\n label: option,\n value: String(option),\n }));\n }\n\n if (options[0].label && options[0].value) {\n return options.map((option) => {\n return {\n label: option.label,\n value: String(option.value),\n };\n });\n }\n\n throw new Error(\n 'Picker options must be either an array of strings or array of { \"label\": string; \"value\": string; } objects.'\n );\n}\n\nconst Picker: React.FC<Props> = ({\n options = [],\n placeholder,\n onValueChange: onValueChangeOverride,\n value,\n defaultValue,\n ...props\n}) => {\n const [internalValue, setInternalValue] = React.useState<string | undefined>(\n value || defaultValue\n );\n\n React.useEffect(() => {\n if (value != null) {\n setInternalValue(value);\n }\n }, [value]);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\n\n const onValueChange = React.useCallback(\n (itemValue: string, itemIndex: number) => {\n if (placeholder && itemIndex === 0) {\n return;\n }\n onValueChangeOverride &&\n onValueChangeOverride(String(itemValue), itemIndex);\n },\n [placeholder, onValueChangeOverride]\n );\n\n const normalizedOptions = normalizeOptions(options);\n\n const pickerOptions = placeholder\n ? [{ value: placeholder, label: placeholder }, ...normalizedOptions]\n : normalizedOptions;\n\n const handleValueChange = (newValue: string, itemIndex: number) => {\n setInternalValue(newValue);\n if (onValueChange) {\n onValueChange(newValue, itemIndex);\n }\n };\n\n return (\n <PickerComponent\n {...props}\n selectedValue={String(internalValue)}\n placeholder={placeholder}\n options={pickerOptions}\n onValueChange={handleValueChange}\n />\n );\n};\n\nexport default withTheme(Picker);\n"]}
1
+ {"version":3,"sources":["Picker.tsx"],"names":["normalizeOptions","options","length","map","option","label","String","value","Error","width","deviceWidth","height","deviceHeight","Dimensions","get","isIos","Platform","OS","unstyledColor","disabledColor","errorColor","Picker","error","onValueChange","defaultValue","Icon","style","placeholder","disabled","theme","assistiveText","iconColor","iconSize","leftIconMode","leftIconName","placeholderTextColor","rightIconName","type","androidPickerRef","React","useRef","undefined","internalValue","setInternalValue","useState","pickerVisible","setPickerVisible","togglePickerVisible","useEffect","current","focus","normalizedOptions","pickerOptions","colors","viewStyles","textStyles","additionalBorderStyles","additionalMarginStyles","borderStyles","extractedBorderStyles","marginStyles","extractedMarginStyles","borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius","borderTopWidth","borderRightWidth","borderLeftWidth","borderBottomWidth","borderColor","borderStyle","backgroundColor","stylesWithoutBordersAndMargins","borderStyleNames","marginStyleNames","selectedLabel","find","labelText","textAlign","color","fontSize","paddingBottom","leftIconOutset","leftIcon","marginRight","marginLeft","rightIcon","calculateLeftPadding","Math","abs","assistiveTextLabel","paddingLeft","paddingTop","primaryTextStyle","identity","handleValueChange","newValue","itemIndex","styles","marginsContainer","touchableContainer","outsetContainer","insetContainer","primaryTextContainer","iosPicker","divider","iosSafeArea","iosButton","iosNativePicker","nonIosPicker","StyleSheet","create","alignSelf","alignItems","maxWidth","flex","flexDirection","justifyContent","paddingRight","position","bottom","left","right","maxHeight","opacity","top"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n Text,\n Platform,\n ViewStyle,\n StyleProp,\n Dimensions,\n} from \"react-native\";\nimport { omit, pickBy, identity, isObject } from \"lodash\";\nimport { SafeAreaView } from \"react-native-safe-area-context\";\nimport { Picker as NativePicker } from \"@react-native-picker/picker\";\n\nimport { withTheme } from \"../../theming\";\nimport Portal from \"../Portal/Portal\";\nimport Button from \"../DeprecatedButton\";\nimport Touchable from \"../Touchable\";\nimport type { Theme } from \"../../styles/DefaultTheme\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport {\n extractStyles,\n extractBorderAndMarginStyles,\n borderStyleNames,\n marginStyleNames,\n} from \"../../utilities\";\n\nexport interface PickerOption {\n value: string;\n label: string;\n}\n\nexport type PickerProps = {\n error?: any;\n placeholder?: string;\n disabled?: boolean;\n style?: StyleProp<ViewStyle> & { height?: number };\n value?: string;\n options: PickerOption[] | string[];\n onValueChange: (value: string, index: number) => void;\n defaultValue?: string;\n assistiveText?: string;\n label?: string;\n iconColor?: string;\n iconSize?: number;\n leftIconMode?: \"inset\" | \"outset\";\n leftIconName?: string;\n placeholderTextColor?: string;\n rightIconName?: string;\n type?: \"solid\" | \"underline\";\n theme: Theme;\n Icon: IconSlot[\"Icon\"];\n};\n\nfunction normalizeOptions(options: PickerProps[\"options\"]): PickerOption[] {\n if (options.length === 0) {\n return [];\n }\n\n if (typeof options[0] === (\"string\" || \"number\")) {\n return (options as string[]).map((option) => ({\n label: String(option),\n value: String(option),\n }));\n }\n\n if (\n isObject(options[0]) &&\n options[0].value !== null &&\n options[0].label !== null\n ) {\n return (options as PickerOption[]).map((option) => {\n return {\n label: String(option.label),\n value: String(option.value),\n };\n });\n }\n\n throw new Error(\n 'Picker options must be either an array of strings or array of { \"label\": string; \"value\": string; } objects.'\n );\n}\n\nconst { width: deviceWidth, height: deviceHeight } = Dimensions.get(\"screen\");\nconst isIos = Platform.OS === \"ios\";\nconst unstyledColor = \"rgba(165, 173, 183, 1)\";\nconst disabledColor = \"rgb(240, 240, 240)\";\nconst errorColor = \"rgba(255, 69, 100, 1)\";\n\nconst Picker: React.FC<PickerProps> = ({\n error,\n options = [],\n onValueChange,\n defaultValue,\n Icon,\n style,\n placeholder,\n value,\n disabled = false,\n theme,\n assistiveText,\n label,\n iconColor = unstyledColor,\n iconSize = 24,\n leftIconMode = \"inset\",\n leftIconName,\n placeholderTextColor = unstyledColor,\n rightIconName,\n type = \"solid\",\n}) => {\n const androidPickerRef = React.useRef<any | undefined>(undefined);\n\n const [internalValue, setInternalValue] = React.useState<string | undefined>(\n value || defaultValue\n );\n\n const [pickerVisible, setPickerVisible] = React.useState(false);\n\n const togglePickerVisible = () => {\n setPickerVisible(!pickerVisible);\n };\n\n React.useEffect(() => {\n if (value != null) {\n setInternalValue(value);\n }\n }, [value]);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\n\n React.useEffect(() => {\n if (pickerVisible && androidPickerRef.current) {\n androidPickerRef?.current?.focus();\n }\n }, [pickerVisible, androidPickerRef]);\n\n const normalizedOptions = normalizeOptions(options);\n\n const pickerOptions = placeholder\n ? [{ value: placeholder, label: placeholder }, ...normalizedOptions]\n : normalizedOptions;\n\n const { colors } = theme;\n\n const { viewStyles, textStyles } = extractStyles(style);\n\n const additionalBorderStyles = [\"backgroundColor\"];\n\n const additionalMarginStyles = [\n \"bottom\",\n \"height\",\n \"left\",\n \"maxHeight\",\n \"maxWidth\",\n \"minHeight\",\n \"minWidth\",\n \"overflow\",\n \"position\",\n \"right\",\n \"top\",\n \"width\",\n \"zIndex\",\n ];\n\n const {\n borderStyles: extractedBorderStyles,\n marginStyles: extractedMarginStyles,\n } = extractBorderAndMarginStyles(\n viewStyles,\n additionalBorderStyles,\n additionalMarginStyles\n );\n\n const borderStyles = {\n ...{\n ...(type === \"solid\"\n ? {\n borderTopLeftRadius: 5,\n borderTopRightRadius: 5,\n borderBottomRightRadius: 5,\n borderBottomLeftRadius: 5,\n borderTopWidth: 1,\n borderRightWidth: 1,\n borderLeftWidth: 1,\n }\n : {}),\n borderBottomWidth: 1,\n borderColor: unstyledColor,\n borderStyle: \"solid\",\n },\n ...extractedBorderStyles,\n ...(error ? { borderColor: errorColor } : {}),\n ...(disabled\n ? { borderColor: \"transparent\", backgroundColor: disabledColor }\n : {}),\n };\n\n const marginStyles = {\n height: 60,\n ...extractedMarginStyles,\n };\n\n const stylesWithoutBordersAndMargins = omit(viewStyles, [\n ...borderStyleNames,\n ...marginStyleNames,\n ...additionalBorderStyles,\n ...additionalMarginStyles,\n ]);\n\n const selectedLabel =\n internalValue &&\n ((pickerOptions as unknown as PickerOption[]).find(\n (option) => option.value === internalValue\n )?.label ??\n internalValue);\n\n const labelText = label ? (\n <Text\n style={{\n textAlign: textStyles.textAlign,\n color: unstyledColor,\n fontSize: 12,\n paddingBottom: 4,\n }}\n >\n {label}\n </Text>\n ) : null;\n\n const leftIconOutset = leftIconMode === \"outset\";\n\n const leftIcon = leftIconName ? (\n <Icon\n name={leftIconName}\n color={disabled ? unstyledColor : iconColor}\n size={iconSize}\n style={{\n marginRight: 4,\n marginLeft: 4,\n }}\n />\n ) : null;\n\n const rightIcon = rightIconName ? (\n <Icon\n name={rightIconName}\n color={disabled ? unstyledColor : iconColor}\n size={iconSize}\n style={{\n marginRight: -10,\n marginLeft: 8,\n }}\n />\n ) : null;\n\n const textAlign = textStyles?.textAlign;\n\n const calculateLeftPadding = () => {\n if (leftIconOutset) {\n if (textAlign === \"center\") {\n return iconSize - Math.abs(8 - iconSize);\n }\n\n return iconSize + 8;\n }\n\n return 0;\n };\n\n const assistiveTextLabel = assistiveText ? (\n <Text\n style={{\n textAlign,\n width: \"100%\",\n paddingLeft: calculateLeftPadding(),\n color: unstyledColor,\n fontSize: 12,\n paddingTop: 4,\n }}\n >\n {assistiveText}\n </Text>\n ) : null;\n\n const primaryTextStyle = {\n color: unstyledColor,\n fontSize: 14,\n ...pickBy(textStyles, identity),\n ...(placeholder === internalValue ? { color: placeholderTextColor } : {}),\n ...(disabled ? { color: unstyledColor } : {}),\n };\n\n const handleValueChange = (newValue: string, itemIndex: number) => {\n if (!placeholder || itemIndex > 0) {\n onValueChange?.(newValue, itemIndex);\n }\n setInternalValue(newValue);\n };\n\n return (\n /* marginsContainer */\n <View style={[styles.marginsContainer, marginStyles]}>\n {/* touchableContainer */}\n <Touchable\n disabled={disabled}\n onPress={togglePickerVisible}\n style={styles.touchableContainer}\n >\n {/* outsetContainer */}\n <View\n pointerEvents=\"none\"\n style={[\n styles.outsetContainer,\n stylesWithoutBordersAndMargins,\n !leftIconOutset ? (borderStyles as PickerProps[\"style\"]) : {},\n ]}\n >\n {leftIcon}\n\n {/* insetContainer */}\n <View\n style={[\n styles.insetContainer,\n leftIconOutset ? (borderStyles as PickerProps[\"style\"]) : {},\n ]}\n >\n {/* primaryTextContainer */}\n <View style={styles.primaryTextContainer}>\n {labelText}\n\n <Text style={primaryTextStyle}>\n {String(selectedLabel ?? placeholder)}\n </Text>\n </View>\n\n {rightIcon}\n </View>\n </View>\n {assistiveTextLabel}\n </Touchable>\n\n {/* iosPicker */}\n {isIos && pickerVisible ? (\n <Portal>\n <View\n style={[\n styles.iosPicker,\n {\n backgroundColor: colors.divider,\n },\n ]}\n >\n <SafeAreaView style={styles.iosSafeArea}>\n <Button\n Icon={Icon}\n type=\"text\"\n onPress={togglePickerVisible}\n style={styles.iosButton}\n >\n {\"Close\"}\n </Button>\n\n <NativePicker\n style={styles.iosNativePicker}\n selectedValue={internalValue}\n onValueChange={handleValueChange}\n >\n {(pickerOptions as unknown as PickerOption[]).map((option) => (\n <NativePicker.Item\n label={option.label}\n value={option.value}\n key={option.value}\n />\n ))}\n </NativePicker>\n </SafeAreaView>\n </View>\n </Portal>\n ) : null}\n\n {/* nonIosPicker */}\n {!isIos && pickerVisible ? (\n <NativePicker\n enabled={pickerVisible}\n selectedValue={internalValue}\n onValueChange={handleValueChange}\n style={styles.nonIosPicker}\n ref={androidPickerRef}\n onBlur={() => setPickerVisible(false)}\n >\n {(pickerOptions as unknown as PickerOption[]).map((option) => (\n <NativePicker.Item\n label={option.label}\n value={option.value}\n key={option.value}\n />\n ))}\n </NativePicker>\n ) : null}\n </View>\n );\n};\n\nexport default withTheme(Picker);\n\nconst styles = StyleSheet.create({\n marginsContainer: {\n alignSelf: \"stretch\",\n alignItems: \"center\",\n width: \"100%\",\n maxWidth: deviceWidth,\n },\n touchableContainer: {\n flex: 1,\n height: \"100%\",\n width: \"100%\",\n alignSelf: \"stretch\",\n alignItems: \"center\",\n },\n outsetContainer: {\n flex: 1,\n height: \"100%\",\n width: \"100%\",\n flexDirection: \"row\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n },\n insetContainer: {\n flex: 1,\n height: \"100%\",\n width: \"100%\",\n flexDirection: \"row\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n paddingLeft: 12,\n paddingRight: 12,\n },\n primaryTextContainer: {\n flex: 1,\n },\n iosPicker: {\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n flexDirection: \"row\",\n justifyContent: \"center\",\n width: \"100%\",\n maxWidth: deviceWidth,\n maxHeight: deviceHeight,\n },\n iosSafeArea: {\n backgroundColor: \"white\",\n flexDirection: \"column\",\n width: \"100%\",\n maxWidth: deviceWidth,\n },\n iosButton: {\n alignSelf: \"flex-end\",\n },\n iosNativePicker: {\n backgroundColor: \"white\",\n },\n nonIosPicker: {\n opacity: 0,\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n width: \"100%\",\n maxWidth: deviceWidth,\n maxHeight: deviceHeight,\n },\n});\n"]}
@@ -21,7 +21,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
21
21
 
22
22
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
23
 
24
- /* Copied from https://github.com/callstack/react-native-paper/blob/main/src/components/Surface.tsx */
24
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
25
+
25
26
  const Surface = _ref => {
26
27
  let {
27
28
  elevation: propElevation,
@@ -53,24 +54,13 @@ const Surface = _ref => {
53
54
  }
54
55
  };
55
56
 
56
- return /*#__PURE__*/React.createElement(_reactNative.Animated.View, { ...rest,
57
+ return /*#__PURE__*/React.createElement(_reactNative.Animated.View, _extends({}, rest, {
57
58
  style: [{
58
59
  backgroundColor: getBackgroundColor(),
59
60
  elevation,
60
61
  ...evalationStyles,
61
62
  ...restStyle
62
63
  }]
63
- }, children);
64
- };
65
-
66
- var _default = (0, _theming.withTheme)(Surface);
67
-
68
- exports.default = _default;
69
- //# sourceMappingURL=Surface.js.map: getBackgroundColor(),
70
- elevation,
71
- ...evalationStyles,
72
- ...restStyle
73
- }]
74
64
  }), children);
75
65
  };
76
66
 
@@ -1 +1 @@
1
- {"version":3,"sources":["Surface.js"],"names":["Surface","elevation","propElevation","style","theme","children","rest","styleElevation","backgroundColor","restStyle","StyleSheet","flatten","dark","isDarkTheme","mode","colors","evalationStyles","getBackgroundColor","surface","React","createElement","Animated","View"],"mappings":";;;;;;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AALA;AAMA,MAAMA,OAAO,GAAG,QAAmE;AAAA,MAAlE;AAAEC,IAAAA,SAAS,EAAEC,aAAb;AAA4BC,IAAAA,KAA5B;AAAmCC,IAAAA,KAAnC;AAA0CC,IAAAA,QAA1C;AAAoD,OAAGC;AAAvD,GAAkE;AAC/E,QAAM;AAAEL,IAAAA,SAAS,EAAEM,cAAc,GAAG,CAA9B;AAAiCC,IAAAA,eAAjC;AAAkD,OAAGC;AAArD,MAAoEC,wBAAWC,OAAX,CAAmBR,KAAnB,KAA6B,EAAvG;AACA,QAAM;AAAES,IAAAA,IAAI,EAAEC,WAAR;AAAqBC,IAAAA,IAArB;AAA2BC,IAAAA;AAA3B,MAAsCX,KAA5C;AACA,QAAMH,SAAS,GAAGC,aAAa,IAAIK,cAAnC;AACA,QAAMS,eAAe,GAAGf,SAAS,GAAG,qBAAOA,SAAP,CAAH,GAAuB,EAAxD;;AACA,QAAMgB,kBAAkB,GAAG,MAAM;AAC7B,QAAIT,eAAJ,EAAqB;AACjB,aAAOA,eAAP;AACH,KAFD,MAGK,IAAIK,WAAW,IAAIC,IAAI,KAAK,UAA5B,EAAwC;AACzC,aAAO,sBAAQb,SAAR,EAAmBc,MAAM,CAACG,OAA1B,CAAP;AACH,KAFI,MAGA;AACD,aAAOH,MAAM,CAACG,OAAd;AACH;AACJ,GAVD;;AAWA,sBAAQC,KAAK,CAACC,aAAN,CAAoBC,sBAASC,IAA7B,EAAmC,EAAE,GAAGhB,IAAL;AAAWH,IAAAA,KAAK,EAAE,CACrD;AACIK,MAAAA,eAAe,EAAES,kBAAkB,EADvC;AAEIhB,MAAAA,SAFJ;AAGI,SAAGe,eAHP;AAII,SAAGP;AAJP,KADqD;AAAlB,GAAnC,EAOCJ,QAPD,CAAR;AAQH,CAxBD;;eAyBe,wBAAUL,OAAV,C","sourcesContent":["/* Copied from https://github.com/callstack/react-native-paper/blob/main/src/components/Surface.tsx */\nimport * as React from \"react\";\nimport { Animated, StyleSheet, } from \"react-native\";\nimport shadow from \"../styles/shadow\";\nimport overlay from \"../styles/overlay\";\nimport { withTheme } from \"../theming\";\nconst Surface = ({ elevation: propElevation, style, theme, children, ...rest }) => {\n const { elevation: styleElevation = 3, backgroundColor, ...restStyle } = (StyleSheet.flatten(style) || {});\n const { dark: isDarkTheme, mode, colors } = theme;\n const elevation = propElevation || styleElevation;\n const evalationStyles = elevation ? shadow(elevation) : {};\n const getBackgroundColor = () => {\n if (backgroundColor) {\n return backgroundColor;\n }\n else if (isDarkTheme && mode === \"adaptive\") {\n return overlay(elevation, colors.surface);\n }\n else {\n return colors.surface;\n }\n };\n return (React.createElement(Animated.View, { ...rest, style: [\n {\n backgroundColor: getBackgroundColor(),\n elevation,\n ...evalationStyles,\n ...restStyle,\n },\n ] }, children));\n};\nexport default withTheme(Surface);\n"]}
1
+ {"version":3,"sources":["Surface.tsx"],"names":["Surface","elevation","propElevation","style","theme","children","rest","styleElevation","backgroundColor","restStyle","StyleSheet","flatten","dark","isDarkTheme","mode","colors","evalationStyles","getBackgroundColor","surface"],"mappings":";;;;;;;AACA;;AACA;;AAQA;;AACA;;AACA;;;;;;;;;;AASA,MAAMA,OAAwB,GAAG,QAM3B;AAAA,MAN4B;AAChCC,IAAAA,SAAS,EAAEC,aADqB;AAEhCC,IAAAA,KAFgC;AAGhCC,IAAAA,KAHgC;AAIhCC,IAAAA,QAJgC;AAKhC,OAAGC;AAL6B,GAM5B;AACJ,QAAM;AACJL,IAAAA,SAAS,EAAEM,cAAc,GAAG,CADxB;AAEJC,IAAAA,eAFI;AAGJ,OAAGC;AAHC,MAIDC,wBAAWC,OAAX,CAAmBR,KAAnB,KAA6B,EAJlC;AAMA,QAAM;AAAES,IAAAA,IAAI,EAAEC,WAAR;AAAqBC,IAAAA,IAArB;AAA2BC,IAAAA;AAA3B,MAAsCX,KAA5C;AAEA,QAAMH,SAAS,GAAGC,aAAa,IAAIK,cAAnC;AAEA,QAAMS,eAAe,GAAGf,SAAS,GAAG,qBAAOA,SAAP,CAAH,GAAuB,EAAxD;;AAEA,QAAMgB,kBAAkB,GAAG,MAAM;AAC/B,QAAIT,eAAJ,EAAqB;AACnB,aAAOA,eAAP;AACD,KAFD,MAEO,IAAIK,WAAW,IAAIC,IAAI,KAAK,UAA5B,EAAwC;AAC7C,aAAO,sBAAQb,SAAR,EAAmBc,MAAM,CAACG,OAA1B,CAAP;AACD,KAFM,MAEA;AACL,aAAOH,MAAM,CAACG,OAAd;AACD;AACF,GARD;;AAUA,sBACE,oBAAC,qBAAD,CAAU,IAAV,eACMZ,IADN;AAEE,IAAA,KAAK,EAAE,CACL;AACEE,MAAAA,eAAe,EAAES,kBAAkB,EADrC;AAEEhB,MAAAA,SAFF;AAGE,SAAGe,eAHL;AAIE,SAAGP;AAJL,KADK;AAFT,MAWGJ,QAXH,CADF;AAeD,CA5CD;;eA8Ce,wBAAUL,OAAV,C","sourcesContent":["/* Copied from https://github.com/callstack/react-native-paper/blob/main/src/components/Surface.tsx */\nimport * as React from \"react\";\nimport {\n Animated,\n StyleSheet,\n ViewProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\n\nimport shadow from \"../styles/shadow\";\nimport overlay from \"../styles/overlay\";\nimport { withTheme } from \"../theming\";\nimport type { Theme } from \"../styles/DefaultTheme\";\n\ntype Props = {\n elevation?: number;\n style?: StyleProp<ViewStyle>;\n theme: Theme;\n} & ViewProps;\n\nconst Surface: React.FC<Props> = ({\n elevation: propElevation,\n style,\n theme,\n children,\n ...rest\n}) => {\n const {\n elevation: styleElevation = 3,\n backgroundColor,\n ...restStyle\n } = (StyleSheet.flatten(style) || {}) as ViewStyle;\n\n const { dark: isDarkTheme, mode, colors } = theme;\n\n const elevation = propElevation || styleElevation;\n\n const evalationStyles = elevation ? shadow(elevation) : {};\n\n const getBackgroundColor = () => {\n if (backgroundColor) {\n return backgroundColor;\n } else if (isDarkTheme && mode === \"adaptive\") {\n return overlay(elevation, colors.surface);\n } else {\n return colors.surface;\n }\n };\n\n return (\n <Animated.View\n {...rest}\n style={[\n {\n backgroundColor: getBackgroundColor(),\n elevation,\n ...evalationStyles,\n ...restStyle,\n },\n ]}\n >\n {children}\n </Animated.View>\n );\n};\n\nexport default withTheme(Surface);\n"]}
@@ -135,7 +135,13 @@ const SEED_DATA = [{
135
135
  editable: true,
136
136
  required: true,
137
137
  group: _types.GROUPS.basic
138
- }
138
+ },
139
+ iconSize: (0, _types.createIconSizeProp)({
140
+ defaultValue: 24
141
+ }),
142
+ iconColor: (0, _types.createColorProp)({
143
+ label: "Icon Color"
144
+ })
139
145
  },
140
146
  layout: {}
141
147
  }];
@@ -1 +1 @@
1
- {"version":3,"sources":["Picker.ts"],"names":["SEED_DATA_PROPS","label","group","GROUPS","data","description","formType","FORM_TYPES","string","propType","PROP_TYPES","STRING","defaultValue","editable","required","placeholder","basic","placeholderTextColor","color","assistiveText","options","array","OBJECT","disabled","boolean","BOOLEAN","error","leftIconName","icon","ASSET","leftIconMode","flatArray","rightIconName","fieldName","FIELD_NAME","handlerPropName","SEED_DATA_TRIGGERS","Triggers","OnValueChange","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","preview_image_url","supports_list_render","triggers","props","type","layout"],"mappings":"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","sourcesContent":["import {\n COMPONENT_TYPES,\n Triggers,\n GROUPS,\n FORM_TYPES,\n PROP_TYPES,\n FIELD_NAME,\n} from \"@draftbit/types\";\n\nconst SEED_DATA_PROPS = {\n label: {\n group: GROUPS.data,\n label: \"Label\",\n description: \"The label to be displayed on the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n editable: true,\n required: true,\n },\n placeholder: {\n group: GROUPS.basic,\n label: \"Placeholder\",\n description: \"The placeholder text of the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"Select an option\",\n editable: true,\n required: false,\n },\n placeholderTextColor: {\n group: GROUPS.basic,\n label: \"Placeholder Text Color\",\n description: \"The color of the placeholder text.\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.color,\n propType: PROP_TYPES.STRING,\n },\n assistiveText: {\n group: GROUPS.basic,\n label: \"Assistive text\",\n description: \"Helper text to display below the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n editable: true,\n required: false,\n },\n options: {\n group: GROUPS.data,\n label: \"Options\",\n description:\n \"Array of picker options. An array of objects containing a label and value.\",\n editable: true,\n required: false,\n formType: FORM_TYPES.array,\n propType: PROP_TYPES.OBJECT,\n options: [],\n defaultValue: null,\n },\n disabled: {\n group: GROUPS.basic,\n label: \"Disabled\",\n description:\n \"Whether the picker should be disabled. Will prevent selection and show a greyed out state.\",\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n defaultValue: false,\n editable: true,\n required: false,\n },\n error: {\n group: GROUPS.data,\n label: \"Error\",\n description: \"Whether the picker should display the error state\",\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n defaultValue: false,\n editable: true,\n required: false,\n },\n leftIconName: {\n group: GROUPS.basic,\n label: \"Left icon name\",\n description: \"The icon to display on the left\",\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.ASSET,\n defaultValue: null,\n editable: true,\n required: false,\n },\n leftIconMode: {\n group: GROUPS.basic,\n label: \"Left icon mode\",\n description:\n \"The mode of the icon to display on the left. 'inset' or 'outset'.\",\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n defaultValue: \"inset\",\n options: [\"inset\", \"outset\"],\n editable: true,\n required: true,\n },\n rightIconName: {\n group: GROUPS.basic,\n label: \"Right icon name\",\n description: \"The icon to display on the right\",\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.ASSET,\n defaultValue: null,\n editable: true,\n required: false,\n },\n fieldName: {\n ...FIELD_NAME,\n defaultValue: \"pickerValue\",\n handlerPropName: \"onValueChange\",\n },\n};\n\nconst SEED_DATA_TRIGGERS = [Triggers.OnValueChange];\nexport const SEED_DATA = [\n {\n name: \"Picker\",\n tag: \"Picker\",\n description: \"A component used to pick a value from a set of options\",\n category: COMPONENT_TYPES.input,\n preview_image_url: \"{CLOUDINARY_URL}/Picker.png\",\n supports_list_render: false,\n triggers: SEED_DATA_TRIGGERS,\n props: {\n ...SEED_DATA_PROPS,\n type: {\n label: \"Appearance\",\n description: \"Type of Picker\",\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n defaultValue: \"solid\",\n options: [\"solid\", \"underline\"],\n editable: true,\n required: true,\n group: GROUPS.basic,\n },\n },\n layout: {},\n },\n];\n"]}
1
+ {"version":3,"sources":["Picker.ts"],"names":["SEED_DATA_PROPS","label","group","GROUPS","data","description","formType","FORM_TYPES","string","propType","PROP_TYPES","STRING","defaultValue","editable","required","placeholder","basic","placeholderTextColor","color","assistiveText","options","array","OBJECT","disabled","boolean","BOOLEAN","error","leftIconName","icon","ASSET","leftIconMode","flatArray","rightIconName","fieldName","FIELD_NAME","handlerPropName","SEED_DATA_TRIGGERS","Triggers","OnValueChange","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","preview_image_url","supports_list_render","triggers","props","type","iconSize","iconColor","layout"],"mappings":"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","sourcesContent":["import {\n COMPONENT_TYPES,\n Triggers,\n GROUPS,\n FORM_TYPES,\n PROP_TYPES,\n FIELD_NAME,\n createIconSizeProp,\n createColorProp,\n} from \"@draftbit/types\";\n\nconst SEED_DATA_PROPS = {\n label: {\n group: GROUPS.data,\n label: \"Label\",\n description: \"The label to be displayed on the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n editable: true,\n required: true,\n },\n placeholder: {\n group: GROUPS.basic,\n label: \"Placeholder\",\n description: \"The placeholder text of the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"Select an option\",\n editable: true,\n required: false,\n },\n placeholderTextColor: {\n group: GROUPS.basic,\n label: \"Placeholder Text Color\",\n description: \"The color of the placeholder text.\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.color,\n propType: PROP_TYPES.STRING,\n },\n assistiveText: {\n group: GROUPS.basic,\n label: \"Assistive text\",\n description: \"Helper text to display below the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n editable: true,\n required: false,\n },\n options: {\n group: GROUPS.data,\n label: \"Options\",\n description:\n \"Array of picker options. An array of objects containing a label and value.\",\n editable: true,\n required: false,\n formType: FORM_TYPES.array,\n propType: PROP_TYPES.OBJECT,\n options: [],\n defaultValue: null,\n },\n disabled: {\n group: GROUPS.basic,\n label: \"Disabled\",\n description:\n \"Whether the picker should be disabled. Will prevent selection and show a greyed out state.\",\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n defaultValue: false,\n editable: true,\n required: false,\n },\n error: {\n group: GROUPS.data,\n label: \"Error\",\n description: \"Whether the picker should display the error state\",\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n defaultValue: false,\n editable: true,\n required: false,\n },\n leftIconName: {\n group: GROUPS.basic,\n label: \"Left icon name\",\n description: \"The icon to display on the left\",\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.ASSET,\n defaultValue: null,\n editable: true,\n required: false,\n },\n leftIconMode: {\n group: GROUPS.basic,\n label: \"Left icon mode\",\n description:\n \"The mode of the icon to display on the left. 'inset' or 'outset'.\",\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n defaultValue: \"inset\",\n options: [\"inset\", \"outset\"],\n editable: true,\n required: true,\n },\n rightIconName: {\n group: GROUPS.basic,\n label: \"Right icon name\",\n description: \"The icon to display on the right\",\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.ASSET,\n defaultValue: null,\n editable: true,\n required: false,\n },\n fieldName: {\n ...FIELD_NAME,\n defaultValue: \"pickerValue\",\n handlerPropName: \"onValueChange\",\n },\n};\n\nconst SEED_DATA_TRIGGERS = [Triggers.OnValueChange];\nexport const SEED_DATA = [\n {\n name: \"Picker\",\n tag: \"Picker\",\n description: \"A component used to pick a value from a set of options\",\n category: COMPONENT_TYPES.input,\n preview_image_url: \"{CLOUDINARY_URL}/Picker.png\",\n supports_list_render: false,\n triggers: SEED_DATA_TRIGGERS,\n props: {\n ...SEED_DATA_PROPS,\n type: {\n label: \"Appearance\",\n description: \"Type of Picker\",\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n defaultValue: \"solid\",\n options: [\"solid\", \"underline\"],\n editable: true,\n required: true,\n group: GROUPS.basic,\n },\n iconSize: createIconSizeProp({ defaultValue: 24 }),\n iconColor: createColorProp({ label: \"Icon Color\" }),\n },\n layout: {},\n },\n];\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["RadioButtonGroup.ts"],"names":["SEED_DATA","name","tag","category","COMPONENT_TYPES","input","layout","triggers","Triggers","OnValueChange","props","direction","fieldName","handlerPropName","valuePropName","defaultValue"],"mappings":";;;;;;;AAAA;;AAOO,MAAMA,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,oBADiB;AAEvBC,EAAAA,GAAG,EAAE,kBAFkB;AAGvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAHH;AAIvBC,EAAAA,MAAM,EAAE,EAJe;AAKvBC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,aAAV,CALa;AAMvBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,SAAS,EAAE,iCADN;AAELC,IAAAA,SAAS,EAAE,gCAAoB;AAC7BC,MAAAA,eAAe,EAAE,eADY;AAE7BC,MAAAA,aAAa,EAAE,OAFc;AAG7BC,MAAAA,YAAY,EAAE;AAHe,KAApB;AAFN;AANgB,CAAlB","sourcesContent":["import {\n COMPONENT_TYPES,\n createFieldNameProp,\n createDirectionProp,\n Triggers,\n} from \"@draftbit/types\";\n\nexport const SEED_DATA = {\n name: \"Radio Button Group\",\n tag: \"RadioButtonGroup\",\n category: COMPONENT_TYPES.input,\n layout: {},\n triggers: [Triggers.OnValueChange],\n props: {\n direction: createDirectionProp(),\n fieldName: createFieldNameProp({\n handlerPropName: \"onValueChange\",\n valuePropName: \"value\",\n defaultValue: \"radioButtonGroupValue\",\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["RadioButtonGroup.js"],"names":["SEED_DATA","name","tag","category","COMPONENT_TYPES","input","layout","triggers","Triggers","OnValueChange","props","direction","fieldName","handlerPropName","valuePropName","defaultValue"],"mappings":";;;;;;;AAAA;;AACO,MAAMA,SAAS,GAAG;AACrBC,EAAAA,IAAI,EAAE,oBADe;AAErBC,EAAAA,GAAG,EAAE,kBAFgB;AAGrBC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAHL;AAIrBC,EAAAA,MAAM,EAAE,EAJa;AAKrBC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,aAAV,CALW;AAMrBC,EAAAA,KAAK,EAAE;AACHC,IAAAA,SAAS,EAAE,iCADR;AAEHC,IAAAA,SAAS,EAAE,gCAAoB;AAC3BC,MAAAA,eAAe,EAAE,eADU;AAE3BC,MAAAA,aAAa,EAAE,OAFY;AAG3BC,MAAAA,YAAY,EAAE;AAHa,KAApB;AAFR;AANc,CAAlB","sourcesContent":["import { COMPONENT_TYPES, createFieldNameProp, createDirectionProp, Triggers, } from \"@draftbit/types\";\nexport const SEED_DATA = {\n name: \"Radio Button Group\",\n tag: \"RadioButtonGroup\",\n category: COMPONENT_TYPES.input,\n layout: {},\n triggers: [Triggers.OnValueChange],\n props: {\n direction: createDirectionProp(),\n fieldName: createFieldNameProp({\n handlerPropName: \"onValueChange\",\n valuePropName: \"value\",\n defaultValue: \"radioButtonGroupValue\",\n }),\n },\n};\n"]}
@@ -4,8 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.applyStyles = applyStyles;
7
+ exports.borderStyleNames = void 0;
8
+ exports.extractBorderAndMarginStyles = extractBorderAndMarginStyles;
7
9
  exports.extractStyles = extractStyles;
8
10
  exports.getValueForRadioButton = getValueForRadioButton;
11
+ exports.marginStyleNames = void 0;
9
12
 
10
13
  var _reactNative = require("react-native");
11
14
 
@@ -45,6 +48,22 @@ function extractStyles(style) {
45
48
  textStyles
46
49
  };
47
50
  }
51
+
52
+ const borderStyleNames = ["borderRadius", "borderBottomColor", "borderBottomEndRadius", "borderBottomLeftRadius", "borderBottomRightRadius", "borderBottomStartRadius", "borderBottomWidth", "borderColor", "borderEndColor", "borderLeftColor", "borderLeftWidth", "borderRadius", "borderRightColor", "borderRightWidth", "borderStartColor", "borderStyle", "borderTopColor", "borderTopEndRadius", "borderTopLeftRadius", "borderTopRightRadius", "borderTopStartRadius", "borderTopWidth", "borderWidth"];
53
+ exports.borderStyleNames = borderStyleNames;
54
+ const marginStyleNames = ["margin", "marginBottom", "marginEnd", "marginHorizontal", "marginLeft", "marginRight", "marginStart", "marginTop", "marginVertical"];
55
+ exports.marginStyleNames = marginStyleNames;
56
+
57
+ function extractBorderAndMarginStyles(style, additionalBorderStyles, additionalMarginStyles) {
58
+ const flatStyle = _reactNative.StyleSheet.flatten(style || {});
59
+
60
+ const borderStyles = (0, _lodash.pickBy)((0, _lodash.pick)(flatStyle, [...borderStyleNames, ...(additionalBorderStyles ? additionalBorderStyles : [])]), _lodash.identity);
61
+ const marginStyles = (0, _lodash.pickBy)((0, _lodash.pick)(flatStyle, [...marginStyleNames, ...(additionalMarginStyles ? additionalMarginStyles : [])]), _lodash.identity);
62
+ return {
63
+ borderStyles,
64
+ marginStyles
65
+ };
66
+ }
48
67
  /**
49
68
  * Merges a style object on top of another style object. In React Native,
50
69
  * keys with undefined values in a style object will still override styles
@@ -1 +1 @@
1
- {"version":3,"sources":["utilities.ts"],"names":["extractStyles","style","color","fontFamily","fontWeight","fontSize","lineHeight","letterSpacing","textTransform","textAlign","textDecorationLine","textDecorationColor","textDecorationStyle","viewStyles","StyleSheet","flatten","textStyles","applyStyles","baseStyles","stylesToApply","flattenedStyles","key","value","Object","entries","getValueForRadioButton","String","Error"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEO,SAASA,aAAT,CAAuBC,KAAvB,EAA8C;AACnD,QAAM;AACJC,IAAAA,KADI;AAEJC,IAAAA,UAFI;AAGJC,IAAAA,UAHI;AAIJC,IAAAA,QAJI;AAKJC,IAAAA,UALI;AAMJC,IAAAA,aANI;AAOJC,IAAAA,aAPI;AAQJC,IAAAA,SARI;AASJC,IAAAA,kBATI;AAUJC,IAAAA,mBAVI;AAWJC,IAAAA,mBAXI;AAYJ,OAAGC;AAZC,MAaFC,wBAAWC,OAAX,CAAmBd,KAAK,IAAI,EAA5B,CAbJ;;AAeA,QAAMe,UAAqB,GAAG;AAC5Bd,IAAAA,KAD4B;AAE5BC,IAAAA,UAF4B;AAG5BC,IAAAA,UAH4B;AAI5BC,IAAAA,QAJ4B;AAK5BC,IAAAA,UAL4B;AAM5BC,IAAAA,aAN4B;AAO5BC,IAAAA,aAP4B;AAQ5BC,IAAAA,SAR4B;AAS5BC,IAAAA,kBAT4B;AAU5BC,IAAAA,mBAV4B;AAW5BC,IAAAA;AAX4B,GAA9B;AAcA,SAAO;AAAEC,IAAAA,UAAF;AAAcG,IAAAA;AAAd,GAAP;AACD;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASC,WAAT,CACLC,UADK,EAELC,aAFK,EAGL;AACA,MAAI,CAACA,aAAL,EAAoB;AAClB;AACD;;AAED,QAAMC,eAAe,GAAGN,wBAAWC,OAAX,CAAmBG,UAAnB,CAAxB;;AAEA,OAAK,MAAM,CAACG,GAAD,EAAMC,KAAN,CAAX,IAA2BC,MAAM,CAACC,OAAP,CAAeL,aAAf,CAA3B,EAA0D;AACxD,QAAIG,KAAK,IAAI,IAAb,EAAmB;AACjBF,MAAAA,eAAe,CAACC,GAAD,CAAf,GAAuBC,KAAvB;AACD;AACF;;AAED,SAAOF,eAAP;AACD;;AAEM,SAASK,sBAAT,CAAgCH,KAAhC,EAAwD;AAC7D,MAAI,sBAASA,KAAT,CAAJ,EAAqB;AACnB,WAAOA,KAAP;AACD,GAFD,MAEO,IAAI,sBAASA,KAAT,CAAJ,EAAqB;AAC1B,WAAOI,MAAM,CAACJ,KAAD,CAAb;AACD,GAFM,MAEA;AACL,UAAM,IAAIK,KAAJ,CAAW,kBAAiBL,KAAM,EAAlC,CAAN;AACD;AACF","sourcesContent":["import { StyleSheet, StyleProp, TextStyle } from \"react-native\";\nimport { isString, isNumber } from \"lodash\";\n\nexport function extractStyles(style: StyleProp<any>) {\n const {\n color,\n fontFamily,\n fontWeight,\n fontSize,\n lineHeight,\n letterSpacing,\n textTransform,\n textAlign,\n textDecorationLine,\n textDecorationColor,\n textDecorationStyle,\n ...viewStyles\n } = StyleSheet.flatten(style || {});\n\n const textStyles: TextStyle = {\n color,\n fontFamily,\n fontWeight,\n fontSize,\n lineHeight,\n letterSpacing,\n textTransform,\n textAlign,\n textDecorationLine,\n textDecorationColor,\n textDecorationStyle,\n };\n\n return { viewStyles, textStyles };\n}\n\n/**\n * Merges a style object on top of another style object. In React Native,\n * keys with undefined values in a style object will still override styles\n * that appear earlier in a sequence. This avoids that problem.\n *\n * This lets us avoid the `...(something ? { something } : {})` pattern.\n * There doesn't seem to be a better way to do this. These all seem to not\n * work (i.e. they all result in `{ color: undefined }`:\n * `const mergedStyles = [{ color: \"red\" }, { color: undefined }]`\n * `const mergedStyles = StyleSheet.compose({ color: \"red\" }, { color: undefined })`\n * `const mergedStyles = StyleSheet.flatten([{ color: \"red\" }, { color: undefined }])`\n */\nexport function applyStyles(\n baseStyles: Array<StyleProp<any>>,\n stylesToApply: StyleProp<any> | undefined\n) {\n if (!stylesToApply) {\n return;\n }\n\n const flattenedStyles = StyleSheet.flatten(baseStyles);\n\n for (const [key, value] of Object.entries(stylesToApply)) {\n if (value != null) {\n flattenedStyles[key] = value;\n }\n }\n\n return flattenedStyles;\n}\n\nexport function getValueForRadioButton(value: string | number) {\n if (isString(value)) {\n return value;\n } else if (isNumber(value)) {\n return String(value);\n } else {\n throw new Error(`Invalid value: ${value}`);\n }\n}\n"]}
1
+ {"version":3,"sources":["utilities.ts"],"names":["extractStyles","style","color","fontFamily","fontWeight","fontSize","lineHeight","letterSpacing","textTransform","textAlign","textDecorationLine","textDecorationColor","textDecorationStyle","viewStyles","StyleSheet","flatten","textStyles","borderStyleNames","marginStyleNames","extractBorderAndMarginStyles","additionalBorderStyles","additionalMarginStyles","flatStyle","borderStyles","identity","marginStyles","applyStyles","baseStyles","stylesToApply","flattenedStyles","key","value","Object","entries","getValueForRadioButton","String","Error"],"mappings":"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","sourcesContent":["import { StyleSheet, StyleProp, TextStyle } from \"react-native\";\nimport { isString, isNumber, pick, pickBy, identity } from \"lodash\";\n\nexport function extractStyles(style: StyleProp<any>) {\n const {\n color,\n fontFamily,\n fontWeight,\n fontSize,\n lineHeight,\n letterSpacing,\n textTransform,\n textAlign,\n textDecorationLine,\n textDecorationColor,\n textDecorationStyle,\n ...viewStyles\n } = StyleSheet.flatten(style || {});\n\n const textStyles: TextStyle = {\n color,\n fontFamily,\n fontWeight,\n fontSize,\n lineHeight,\n letterSpacing,\n textTransform,\n textAlign,\n textDecorationLine,\n textDecorationColor,\n textDecorationStyle,\n };\n\n return { viewStyles, textStyles };\n}\n\nexport const borderStyleNames = [\n \"borderRadius\",\n \"borderBottomColor\",\n \"borderBottomEndRadius\",\n \"borderBottomLeftRadius\",\n \"borderBottomRightRadius\",\n \"borderBottomStartRadius\",\n \"borderBottomWidth\",\n \"borderColor\",\n \"borderEndColor\",\n \"borderLeftColor\",\n \"borderLeftWidth\",\n \"borderRadius\",\n \"borderRightColor\",\n \"borderRightWidth\",\n \"borderStartColor\",\n \"borderStyle\",\n \"borderTopColor\",\n \"borderTopEndRadius\",\n \"borderTopLeftRadius\",\n \"borderTopRightRadius\",\n \"borderTopStartRadius\",\n \"borderTopWidth\",\n \"borderWidth\",\n];\n\nexport const marginStyleNames = [\n \"margin\",\n \"marginBottom\",\n \"marginEnd\",\n \"marginHorizontal\",\n \"marginLeft\",\n \"marginRight\",\n \"marginStart\",\n \"marginTop\",\n \"marginVertical\",\n];\n\nexport function extractBorderAndMarginStyles(\n style: StyleProp<any>,\n additionalBorderStyles?: string[],\n additionalMarginStyles?: string[]\n) {\n const flatStyle = StyleSheet.flatten(style || {});\n\n const borderStyles = pickBy(\n pick(flatStyle, [\n ...borderStyleNames,\n ...(additionalBorderStyles ? additionalBorderStyles : []),\n ]),\n identity\n );\n\n const marginStyles = pickBy(\n pick(flatStyle, [\n ...marginStyleNames,\n ...(additionalMarginStyles ? additionalMarginStyles : []),\n ]),\n identity\n );\n\n return { borderStyles, marginStyles };\n}\n\n/**\n * Merges a style object on top of another style object. In React Native,\n * keys with undefined values in a style object will still override styles\n * that appear earlier in a sequence. This avoids that problem.\n *\n * This lets us avoid the `...(something ? { something } : {})` pattern.\n * There doesn't seem to be a better way to do this. These all seem to not\n * work (i.e. they all result in `{ color: undefined }`:\n * `const mergedStyles = [{ color: \"red\" }, { color: undefined }]`\n * `const mergedStyles = StyleSheet.compose({ color: \"red\" }, { color: undefined })`\n * `const mergedStyles = StyleSheet.flatten([{ color: \"red\" }, { color: undefined }])`\n */\nexport function applyStyles(\n baseStyles: Array<StyleProp<any>>,\n stylesToApply: StyleProp<any> | undefined\n) {\n if (!stylesToApply) {\n return;\n }\n\n const flattenedStyles = StyleSheet.flatten(baseStyles);\n\n for (const [key, value] of Object.entries(stylesToApply)) {\n if (value != null) {\n flattenedStyles[key] = value;\n }\n }\n\n return flattenedStyles;\n}\n\nexport function getValueForRadioButton(value: string | number) {\n if (isString(value)) {\n return value;\n } else if (isNumber(value)) {\n return String(value);\n } else {\n throw new Error(`Invalid value: ${value}`);\n }\n}\n"]}