@draftbit/core 43.2.1-d3fbb1.0 → 43.2.3-0f04d4.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/lib/commonjs/components/Accordion/index.js.map +1 -1
- package/lib/commonjs/components/CardInline.js.map +1 -1
- package/lib/commonjs/components/DeprecatedCardWrapper.js +14 -2
- package/lib/commonjs/components/DeprecatedCardWrapper.js.map +1 -1
- package/lib/commonjs/components/DeprecatedFAB.js +4 -20
- package/lib/commonjs/components/DeprecatedFAB.js.map +1 -1
- package/lib/commonjs/components/Divider.js +3 -13
- package/lib/commonjs/components/Divider.js.map +1 -1
- package/lib/commonjs/components/NumberInput.js +2 -1
- package/lib/commonjs/components/NumberInput.js.map +1 -1
- package/lib/commonjs/components/TabView/TabView.js +101 -0
- package/lib/commonjs/components/TabView/TabView.js.map +1 -0
- package/lib/commonjs/components/TabView/TabViewItem.js +23 -0
- package/lib/commonjs/components/TabView/TabViewItem.js.map +1 -0
- package/lib/commonjs/components/TabView/index.js +24 -0
- package/lib/commonjs/components/TabView/index.js.map +1 -0
- package/lib/commonjs/index.js +14 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/mappings/MapCallout.js +1 -1
- package/lib/commonjs/mappings/MapCallout.js.map +1 -1
- package/lib/commonjs/mappings/MapMarker.js +1 -1
- package/lib/commonjs/mappings/MapMarker.js.map +1 -1
- package/lib/commonjs/mappings/RadioButtonRow.js.map +1 -1
- package/lib/commonjs/mappings/TabView.js +33 -0
- package/lib/commonjs/mappings/TabView.js.map +1 -0
- package/lib/module/components/NumberInput.js +1 -1
- package/lib/module/components/NumberInput.js.map +1 -1
- package/lib/module/components/Picker/PickerComponent.android.js +7 -10
- package/lib/module/components/Picker/PickerComponent.android.js.map +1 -1
- package/lib/module/components/RadioButton/RadioButton.js +3 -14
- package/lib/module/components/RadioButton/RadioButton.js.map +1 -1
- package/lib/module/components/TabView/TabView.js +80 -0
- package/lib/module/components/TabView/TabView.js.map +1 -0
- package/lib/module/components/TabView/TabViewItem.js +15 -0
- package/lib/module/components/TabView/TabViewItem.js.map +1 -0
- package/lib/module/components/TabView/index.js +3 -0
- package/lib/module/components/TabView/index.js.map +1 -0
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/mappings/MapCallout.js +1 -1
- package/lib/module/mappings/MapCallout.js.map +1 -1
- package/lib/module/mappings/MapMarker.js +1 -1
- package/lib/module/mappings/MapMarker.js.map +1 -1
- package/lib/module/mappings/TabView.js +24 -0
- package/lib/module/mappings/TabView.js.map +1 -0
- package/lib/typescript/src/components/TabView/TabView.d.ts +6 -0
- package/lib/typescript/src/components/TabView/TabViewItem.d.ts +8 -0
- package/lib/typescript/src/components/TabView/index.d.ts +2 -0
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/mappings/TabView.d.ts +19 -0
- package/package.json +4 -2
- package/src/components/NumberInput.js +1 -0
- package/src/components/NumberInput.tsx +2 -0
- package/src/components/TabView/TabView.js +54 -0
- package/src/components/TabView/TabView.tsx +90 -0
- package/src/components/TabView/TabViewItem.js +5 -0
- package/src/components/TabView/TabViewItem.tsx +13 -0
- package/src/components/TabView/index.js +2 -0
- package/src/components/TabView/index.ts +2 -0
- package/src/index.js +1 -0
- package/src/index.tsx +1 -0
- package/src/mappings/MapCallout.js +1 -1
- package/src/mappings/MapCallout.ts +1 -1
- package/src/mappings/MapMarker.js +1 -1
- package/src/mappings/MapMarker.ts +1 -1
- package/src/mappings/TabView.js +26 -0
- package/src/mappings/TabView.ts +27 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["NumberInput.tsx"],"names":["React","TextInput","NativeNumberInput","NumberInput","defaultValue","onChangeText","props","internalValue","setInternalValue","useState","useEffect","handleChangeText","value","stringToInteger","str","number","parseFloat","isNaN"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,SAAS,IAAIC,iBAAtB,QAA+C,cAA/C;;AAOA,MAAMC,WAA4B,GAAG,QAI/B;AAAA,MAJgC;AACpCC,IAAAA,YADoC;AAEpCC,IAAAA,YAFoC;AAGpC,OAAGC;AAHiC,GAIhC;AACJ,QAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCR,KAAK,CAACS,QAAN,CAAeL,YAAf,CAA1C;AAEAJ,EAAAA,KAAK,CAACU,SAAN,CAAgB,MAAM;AACpB,QAAIN,YAAY,IAAI,IAApB,EAA0B;AACxBI,MAAAA,gBAAgB,CAACJ,YAAD,CAAhB;AACD;AACF,GAJD,EAIG,CAACA,YAAD,CAJH;;AAMA,QAAMO,gBAAgB,GAAIC,KAAD,IAAmB;AAC1CJ,IAAAA,gBAAgB,CAACI,KAAD,CAAhB;;AACA,QAAIP,YAAJ,EAAkB;AAChBA,MAAAA,YAAY,CAACQ,eAAe,CAACD,KAAD,CAAhB,CAAZ;AACD;AACF,GALD;;AAOA,sBACE,oBAAC,iBAAD;AACE,IAAA,YAAY,EAAC,SADf;AAEE,IAAA,YAAY,EAAED;AAFhB,KAGML,KAHN;AAIE,IAAA,KAAK,EAAEC;AAJT,KADF;AAQD,CA5BD;;AA8BA,MAAMM,eAAe,GAAIC,GAAD,IAAqC;AAC3D,QAAMC,MAAM,GAAGC,UAAU,CAACF,GAAD,CAAzB;AACA,SAAOG,KAAK,CAACF,MAAD,CAAL,GAAgB,CAAhB,GAAoBA,MAA3B;AACD,CAHD;;AAKA,eAAeZ,WAAf","sourcesContent":["import React from \"react\";\nimport { TextInput as NativeNumberInput } from \"react-native\";\n\ninterface Props {\n defaultValue?: string;\n onChangeText: (value?: number) => void;\n}\n\nconst NumberInput: React.FC<Props> = ({\n defaultValue,\n onChangeText,\n ...props\n}) => {\n const [internalValue, setInternalValue] = React.useState(defaultValue);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\n\n const handleChangeText = (value: string) => {\n setInternalValue(value);\n if (onChangeText) {\n onChangeText(stringToInteger(value));\n }\n };\n\n return (\n <NativeNumberInput\n keyboardType=\"numeric\"\n onChangeText={handleChangeText}\n {...props}\n value={internalValue}\n />\n );\n};\n\nconst stringToInteger = (str: string | undefined): number => {\n const number = parseFloat(str as string);\n return isNaN(number) ? 0 : number;\n};\n\nexport default NumberInput;\n"]}
|
|
1
|
+
{"version":3,"sources":["NumberInput.tsx"],"names":["React","TextInput","NativeNumberInput","NumberInput","defaultValue","onChangeText","props","internalValue","setInternalValue","useState","useEffect","handleChangeText","value","stringToInteger","str","number","parseFloat","isNaN"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,SAAS,IAAIC,iBAAtB,QAA+C,cAA/C;;AAOA,MAAMC,WAA4B,GAAG,QAI/B;AAAA,MAJgC;AACpCC,IAAAA,YADoC;AAEpCC,IAAAA,YAFoC;AAGpC,OAAGC;AAHiC,GAIhC;AACJ,QAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCR,KAAK,CAACS,QAAN,CAAeL,YAAf,CAA1C;AAEAJ,EAAAA,KAAK,CAACU,SAAN,CAAgB,MAAM;AACpB,QAAIN,YAAY,IAAI,IAApB,EAA0B;AACxBI,MAAAA,gBAAgB,CAACJ,YAAD,CAAhB;AACD;AACF,GAJD,EAIG,CAACA,YAAD,CAJH;;AAMA,QAAMO,gBAAgB,GAAIC,KAAD,IAAmB;AAC1CJ,IAAAA,gBAAgB,CAACI,KAAD,CAAhB;;AACA,QAAIP,YAAJ,EAAkB;AAChBA,MAAAA,YAAY,CAACQ,eAAe,CAACD,KAAD,CAAhB,CAAZ;AACD;AACF,GALD;;AAOA,sBACE,oBAAC,iBAAD;AACE,IAAA,YAAY,EAAC,SADf;AAEE,IAAA,YAAY,EAAED;AAFhB,KAGML,KAHN;AAIE,IAAA,KAAK,EAAEC;AAJT,KADF;AAQD,CA5BD;;AA8BA,MAAMM,eAAe,GAAIC,GAAD,IAAqC;AAC3D,QAAMC,MAAM,GAAGC,UAAU,CAACF,GAAD,CAAzB;AACA,SAAOG,KAAK,CAACF,MAAD,CAAL,GAAgB,CAAhB,GAAoBA,MAA3B;AACD,CAHD;;AAKA,eAAeZ,WAAf,C,CAEA","sourcesContent":["import React from \"react\";\nimport { TextInput as NativeNumberInput } from \"react-native\";\n\ninterface Props {\n defaultValue?: string;\n onChangeText: (value?: number) => void;\n}\n\nconst NumberInput: React.FC<Props> = ({\n defaultValue,\n onChangeText,\n ...props\n}) => {\n const [internalValue, setInternalValue] = React.useState(defaultValue);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\n\n const handleChangeText = (value: string) => {\n setInternalValue(value);\n if (onChangeText) {\n onChangeText(stringToInteger(value));\n }\n };\n\n return (\n <NativeNumberInput\n keyboardType=\"numeric\"\n onChangeText={handleChangeText}\n {...props}\n value={internalValue}\n />\n );\n};\n\nconst stringToInteger = (str: string | undefined): number => {\n const number = parseFloat(str as string);\n return isNaN(number) ? 0 : number;\n};\n\nexport default NumberInput;\n\n// comment to try to fix sourcemap issue\n"]}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
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); }
|
|
2
|
-
|
|
3
1
|
import * as React from "react";
|
|
4
2
|
import { View, StyleSheet } from "react-native";
|
|
5
3
|
import omit from "lodash.omit";
|
|
@@ -91,16 +89,15 @@ const Picker = _ref => {
|
|
|
91
89
|
key: o.value
|
|
92
90
|
}))), /*#__PURE__*/React.createElement(View, {
|
|
93
91
|
pointerEvents: "none"
|
|
94
|
-
}, /*#__PURE__*/React.createElement(TextField,
|
|
92
|
+
}, /*#__PURE__*/React.createElement(TextField, { ...props,
|
|
95
93
|
value: selectedLabel,
|
|
96
|
-
placeholder: placeholder
|
|
97
|
-
|
|
98
|
-
ref: textField
|
|
99
|
-
,
|
|
100
|
-
|
|
101
|
-
,
|
|
94
|
+
placeholder: placeholder,
|
|
95
|
+
// @ts-ignore
|
|
96
|
+
ref: textField,
|
|
97
|
+
disabled: disabled,
|
|
98
|
+
// @ts-expect-error
|
|
102
99
|
style: stylesWithoutMargin
|
|
103
|
-
}))))
|
|
100
|
+
}))));
|
|
104
101
|
};
|
|
105
102
|
|
|
106
103
|
const styles = StyleSheet.create({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["PickerComponent.android.
|
|
1
|
+
{"version":3,"sources":["PickerComponent.android.js"],"names":["React","View","StyleSheet","omit","withTheme","Picker","NativePicker","extractStyles","TextField","Touchable","style","options","placeholder","selectedValue","disabled","onValueChange","onValueChangeOverride","props","viewStyles","borderRadius","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderColor","backgroundColor","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","textField","useRef","undefined","itemValue","itemIndex","toggleFocus","current","stylesWithoutMargin","flatten","selectedLabel","find","o","value","label","createElement","onPress","styles","container","enabled","opacity","position","top","left","right","bottom","width","map","Item","key","pointerEvents","ref","create","alignSelf"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, StyleSheet } from \"react-native\";\nimport omit from \"lodash.omit\";\nimport { withTheme } from \"../../theming\";\nimport { Picker as NativePicker } from \"@react-native-picker/picker\";\nimport { extractStyles } from \"../../utilities\";\nimport TextField from \"../TextField\";\nimport Touchable from \"../Touchable\";\nconst Picker = ({ style, options, placeholder, selectedValue, disabled = false, onValueChange: onValueChangeOverride = () => { }, ...props }) => {\n const { viewStyles: { borderRadius, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderTopWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderRightWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderBottomWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderLeftWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n backgroundColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n padding, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingTop, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingRight, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingBottom, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingLeft, // eslint-disable-line @typescript-eslint/no-unused-vars\n ...viewStyles }, } = extractStyles(style);\n const textField = React.useRef(undefined);\n const onValueChange = (itemValue, itemIndex) => {\n toggleFocus();\n onValueChangeOverride(itemValue, itemIndex);\n };\n const toggleFocus = () => {\n if (!disabled) {\n // @ts-ignore\n textField.current.toggleFocus(); // cannot determine if method exists due to component being wrapped in a withTheme()\n }\n };\n const stylesWithoutMargin = style &&\n omit(StyleSheet.flatten(style), [\n \"margin\",\n \"marginTop\",\n \"marginRight\",\n \"marginBottom\",\n \"marginLeft\",\n ]);\n const selectedLabel = selectedValue &&\n (options.find((o) => o.value === selectedValue)?.label ?? selectedValue);\n return (React.createElement(Touchable, { disabled: disabled, onPress: toggleFocus, style: [styles.container, viewStyles] },\n React.createElement(View, null,\n React.createElement(NativePicker, { enabled: !disabled, selectedValue: selectedValue, onValueChange: onValueChange, style: {\n opacity: 0,\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n width: \"100%\",\n } }, options.map((o) => (React.createElement(NativePicker.Item, { label: o.label, value: o.value, key: o.value })))),\n React.createElement(View, { pointerEvents: \"none\" },\n React.createElement(TextField, { ...props, value: selectedLabel, placeholder: placeholder, \n // @ts-ignore\n ref: textField, disabled: disabled, \n // @ts-expect-error\n style: stylesWithoutMargin })))));\n};\nconst styles = StyleSheet.create({\n container: {\n alignSelf: \"stretch\",\n },\n});\nexport default withTheme(Picker);\n"]}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
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); }
|
|
2
|
+
|
|
1
3
|
import * as React from "react";
|
|
2
4
|
import Config from "../Config";
|
|
3
5
|
import IconButton from "../IconButton";
|
|
@@ -32,20 +34,7 @@ const RadioButton = _ref => {
|
|
|
32
34
|
};
|
|
33
35
|
|
|
34
36
|
const isSelected = selected || contextValue != null && contextValue === value;
|
|
35
|
-
return /*#__PURE__*/React.createElement(IconButton, {
|
|
36
|
-
Icon: Icon,
|
|
37
|
-
icon: isSelected ? selectedIcon : unselectedIcon,
|
|
38
|
-
color: isSelected ? color : unselectedColor,
|
|
39
|
-
disabled: disabled,
|
|
40
|
-
onPress: handlePress,
|
|
41
|
-
size: size,
|
|
42
|
-
style: style,
|
|
43
|
-
...rest
|
|
44
|
-
});
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
export default RadioButton;
|
|
48
|
-
//# sourceMappingURL=RadioButton.js.mapreateElement(IconButton, _extends({
|
|
37
|
+
return /*#__PURE__*/React.createElement(IconButton, _extends({
|
|
49
38
|
Icon: Icon,
|
|
50
39
|
icon: isSelected ? selectedIcon : unselectedIcon,
|
|
51
40
|
color: isSelected ? color : unselectedColor,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["RadioButton.
|
|
1
|
+
{"version":3,"sources":["RadioButton.tsx"],"names":["React","Config","IconButton","useRadioButtonGroupContext","RadioButton","Icon","disabled","color","value","selected","unselectedColor","onPress","size","radioButtonSize","selectedIcon","unselectedIcon","style","rest","contextValue","onValueChange","handlePress","isSelected"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAGA,OAAOC,MAAP,MAAmB,WAAnB;AACA,OAAOC,UAAP,MAAuB,eAAvB;AACA,SAASC,0BAAT,QAA2C,WAA3C;;AAiBA,MAAMC,WAAuC,GAAG,QAa1C;AAAA,MAb2C;AAC/CC,IAAAA,IAD+C;AAE/CC,IAAAA,QAAQ,GAAG,KAFoC;AAG/CC,IAAAA,KAH+C;AAI/CC,IAAAA,KAJ+C;AAK/CC,IAAAA,QAL+C;AAM/CC,IAAAA,eAN+C;AAO/CC,IAAAA,OAAO,GAAG,MAAM,CAAE,CAP6B;AAQ/CC,IAAAA,IAAI,GAAGX,MAAM,CAACY,eARiC;AAS/CC,IAAAA,YAAY,GAAG,oCATgC;AAU/CC,IAAAA,cAAc,GAAG,sCAV8B;AAW/CC,IAAAA,KAX+C;AAY/C,OAAGC;AAZ4C,GAa3C;AACJ,QAAM;AAAET,IAAAA,KAAK,EAAEU,YAAT;AAAuBC,IAAAA;AAAvB,MAAyChB,0BAA0B,EAAzE;;AAEA,QAAMiB,WAAW,GAAG,MAAM;AACxBT,IAAAA,OAAO,IAAIA,OAAO,EAAlB;;AAEA,QAAIQ,aAAa,IAAIX,KAArB,EAA4B;AAC1BW,MAAAA,aAAa,CAACX,KAAD,CAAb;AACD;AACF,GAND;;AAQA,QAAMa,UAAU,GACdZ,QAAQ,IAAKS,YAAY,IAAI,IAAhB,IAAwBA,YAAY,KAAKV,KADxD;AAGA,sBACE,oBAAC,UAAD;AACE,IAAA,IAAI,EAAEH,IADR;AAEE,IAAA,IAAI,EAAEgB,UAAU,GAAGP,YAAH,GAAkBC,cAFpC;AAGE,IAAA,KAAK,EAAEM,UAAU,GAAGd,KAAH,GAAWG,eAH9B;AAIE,IAAA,QAAQ,EAAEJ,QAJZ;AAKE,IAAA,OAAO,EAAEc,WALX;AAME,IAAA,IAAI,EAAER,IANR;AAOE,IAAA,KAAK,EAAEI;AAPT,KAQMC,IARN,EADF;AAYD,CAvCD;;AAyCA,eAAeb,WAAf","sourcesContent":["import * as React from \"react\";\nimport { StyleProp, ViewStyle } from \"react-native\";\n\nimport Config from \"../Config\";\nimport IconButton from \"../IconButton\";\nimport { useRadioButtonGroupContext } from \"./context\";\n\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nexport type RadioButtonProps = {\n selected?: boolean;\n disabled?: boolean;\n color?: string;\n value?: string;\n unselectedColor?: string;\n onPress?: () => void;\n style?: StyleProp<ViewStyle>;\n size?: number;\n selectedIcon?: string;\n unselectedIcon?: string;\n} & IconSlot;\n\nconst RadioButton: React.FC<RadioButtonProps> = ({\n Icon,\n disabled = false,\n color,\n value,\n selected,\n unselectedColor,\n onPress = () => {},\n size = Config.radioButtonSize,\n selectedIcon = \"MaterialIcons/radio-button-checked\",\n unselectedIcon = \"MaterialIcons/radio-button-unchecked\",\n style,\n ...rest\n}) => {\n const { value: contextValue, onValueChange } = useRadioButtonGroupContext();\n\n const handlePress = () => {\n onPress && onPress();\n\n if (onValueChange && value) {\n onValueChange(value);\n }\n };\n\n const isSelected =\n selected || (contextValue != null && contextValue === value);\n\n return (\n <IconButton\n Icon={Icon}\n icon={isSelected ? selectedIcon : unselectedIcon}\n color={isSelected ? color : unselectedColor}\n disabled={disabled}\n onPress={handlePress}\n size={size}\n style={style}\n {...rest}\n />\n );\n};\n\nexport default RadioButton;\n"]}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Animated, View, TouchableOpacity, StyleSheet } from "react-native";
|
|
3
|
+
import { TabView, SceneMap } from "react-native-tab-view";
|
|
4
|
+
import Constants from "expo-constants";
|
|
5
|
+
import TabViewItem from "./TabViewItem";
|
|
6
|
+
export default (_ref => {
|
|
7
|
+
let {
|
|
8
|
+
children
|
|
9
|
+
} = _ref;
|
|
10
|
+
const [index, setIndex] = React.useState(0);
|
|
11
|
+
const [routes, setRoutes] = React.useState([]);
|
|
12
|
+
const [tabScenes, setTabScenes] = React.useState({});
|
|
13
|
+
React.useEffect(() => {
|
|
14
|
+
const newRoutes = [];
|
|
15
|
+
const scenes = {};
|
|
16
|
+
React.Children.toArray(children).filter(child => child.type === TabViewItem).forEach(child => {
|
|
17
|
+
var _child$props;
|
|
18
|
+
|
|
19
|
+
if (child !== null && child !== void 0 && (_child$props = child.props) !== null && _child$props !== void 0 && _child$props.id) {
|
|
20
|
+
var _child$props2, _child$props3, _child$props4;
|
|
21
|
+
|
|
22
|
+
newRoutes.push({
|
|
23
|
+
key: child === null || child === void 0 ? void 0 : (_child$props2 = child.props) === null || _child$props2 === void 0 ? void 0 : _child$props2.id,
|
|
24
|
+
title: child === null || child === void 0 ? void 0 : (_child$props3 = child.props) === null || _child$props3 === void 0 ? void 0 : _child$props3.title
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
scenes[child === null || child === void 0 ? void 0 : (_child$props4 = child.props) === null || _child$props4 === void 0 ? void 0 : _child$props4.id] = () => child;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
setRoutes(newRoutes);
|
|
31
|
+
setTabScenes(scenes);
|
|
32
|
+
}, [children]);
|
|
33
|
+
|
|
34
|
+
const _handleIndexChange = i => setIndex(i);
|
|
35
|
+
|
|
36
|
+
const _renderTabBar = props => {
|
|
37
|
+
const inputRange = props.navigationState.routes.map((__, i) => i);
|
|
38
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
39
|
+
style: styles.tabBar
|
|
40
|
+
}, props.navigationState.routes.map((route, i) => {
|
|
41
|
+
const opacity = props.position.interpolate({
|
|
42
|
+
inputRange,
|
|
43
|
+
outputRange: inputRange.map(inputIndex => inputIndex === i ? 1 : 0.5)
|
|
44
|
+
});
|
|
45
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
46
|
+
style: styles.tabItem,
|
|
47
|
+
onPress: () => setIndex(i)
|
|
48
|
+
}, /*#__PURE__*/React.createElement(Animated.Text, {
|
|
49
|
+
style: {
|
|
50
|
+
opacity
|
|
51
|
+
}
|
|
52
|
+
}, route.title));
|
|
53
|
+
}));
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
return /*#__PURE__*/React.createElement(TabView, {
|
|
57
|
+
navigationState: {
|
|
58
|
+
index,
|
|
59
|
+
routes
|
|
60
|
+
},
|
|
61
|
+
renderScene: SceneMap(tabScenes),
|
|
62
|
+
renderTabBar: _renderTabBar,
|
|
63
|
+
onIndexChange: _handleIndexChange
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
const styles = StyleSheet.create({
|
|
67
|
+
container: {
|
|
68
|
+
flex: 1
|
|
69
|
+
},
|
|
70
|
+
tabBar: {
|
|
71
|
+
flexDirection: "row",
|
|
72
|
+
paddingTop: Constants.statusBarHeight
|
|
73
|
+
},
|
|
74
|
+
tabItem: {
|
|
75
|
+
flex: 1,
|
|
76
|
+
alignItems: "center",
|
|
77
|
+
padding: 16
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
//# sourceMappingURL=TabView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["TabView.tsx"],"names":["React","Animated","View","TouchableOpacity","StyleSheet","TabView","SceneMap","Constants","TabViewItem","children","index","setIndex","useState","routes","setRoutes","tabScenes","setTabScenes","useEffect","newRoutes","scenes","Children","toArray","filter","child","type","forEach","props","id","push","key","title","_handleIndexChange","i","_renderTabBar","inputRange","navigationState","map","__","styles","tabBar","route","opacity","position","interpolate","outputRange","inputIndex","tabItem","create","container","flex","flexDirection","paddingTop","statusBarHeight","alignItems","padding"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,QAAT,EAAmBC,IAAnB,EAAyBC,gBAAzB,EAA2CC,UAA3C,QAA6D,cAA7D;AACA,SAASC,OAAT,EAAkBC,QAAlB,QAAkC,uBAAlC;AACA,OAAOC,SAAP,MAAsB,gBAAtB;AAEA,OAAOC,WAAP,MAAwB,eAAxB;AAMA,gBAAe,QAAgC;AAAA,MAA/B;AAAEC,IAAAA;AAAF,GAA+B;AAC7C,QAAM,CAACC,KAAD,EAAQC,QAAR,IAAoBX,KAAK,CAACY,QAAN,CAAe,CAAf,CAA1B;AACA,QAAM,CAACC,MAAD,EAASC,SAAT,IAAsBd,KAAK,CAACY,QAAN,CAAe,EAAf,CAA5B;AACA,QAAM,CAACG,SAAD,EAAYC,YAAZ,IAA4BhB,KAAK,CAACY,QAAN,CAAe,EAAf,CAAlC;AAEAZ,EAAAA,KAAK,CAACiB,SAAN,CAAgB,MAAM;AACpB,UAAMC,SAAc,GAAG,EAAvB;AACA,UAAMC,MAAW,GAAG,EAApB;AAEAnB,IAAAA,KAAK,CAACoB,QAAN,CAAeC,OAAf,CAAuBZ,QAAvB,EACGa,MADH,CACWC,KAAD,IAAgBA,KAAK,CAACC,IAAN,KAAehB,WADzC,EAEGiB,OAFH,CAEYF,KAAD,IAAgB;AAAA;;AACvB,UAAIA,KAAJ,aAAIA,KAAJ,+BAAIA,KAAK,CAAEG,KAAX,yCAAI,aAAcC,EAAlB,EAAsB;AAAA;;AACpBT,QAAAA,SAAS,CAACU,IAAV,CAAe;AACbC,UAAAA,GAAG,EAAEN,KAAF,aAAEA,KAAF,wCAAEA,KAAK,CAAEG,KAAT,kDAAE,cAAcC,EADN;AAEbG,UAAAA,KAAK,EAAEP,KAAF,aAAEA,KAAF,wCAAEA,KAAK,CAAEG,KAAT,kDAAE,cAAcI;AAFR,SAAf;;AAIAX,QAAAA,MAAM,CAACI,KAAD,aAACA,KAAD,wCAACA,KAAK,CAAEG,KAAR,kDAAC,cAAcC,EAAf,CAAN,GAA2B,MAAMJ,KAAjC;AACD;AACF,KAVH;AAYAT,IAAAA,SAAS,CAACI,SAAD,CAAT;AACAF,IAAAA,YAAY,CAACG,MAAD,CAAZ;AACD,GAlBD,EAkBG,CAACV,QAAD,CAlBH;;AAoBA,QAAMsB,kBAAkB,GAAIC,CAAD,IAAYrB,QAAQ,CAACqB,CAAD,CAA/C;;AAEA,QAAMC,aAAa,GAAIP,KAAD,IAAgB;AACpC,UAAMQ,UAAU,GAAGR,KAAK,CAACS,eAAN,CAAsBtB,MAAtB,CAA6BuB,GAA7B,CACjB,CAACC,EAAD,EAAUL,CAAV,KAAwBA,CADP,CAAnB;AAIA,wBACE,oBAAC,IAAD;AAAM,MAAA,KAAK,EAAEM,MAAM,CAACC;AAApB,OACGb,KAAK,CAACS,eAAN,CAAsBtB,MAAtB,CAA6BuB,GAA7B,CAAiC,CAACI,KAAD,EAAaR,CAAb,KAA2B;AAC3D,YAAMS,OAAO,GAAGf,KAAK,CAACgB,QAAN,CAAeC,WAAf,CAA2B;AACzCT,QAAAA,UADyC;AAEzCU,QAAAA,WAAW,EAAEV,UAAU,CAACE,GAAX,CAAgBS,UAAD,IAC1BA,UAAU,KAAKb,CAAf,GAAmB,CAAnB,GAAuB,GADZ;AAF4B,OAA3B,CAAhB;AAOA,0BACE,oBAAC,gBAAD;AACE,QAAA,KAAK,EAAEM,MAAM,CAACQ,OADhB;AAEE,QAAA,OAAO,EAAE,MAAMnC,QAAQ,CAACqB,CAAD;AAFzB,sBAIE,oBAAC,QAAD,CAAU,IAAV;AAAe,QAAA,KAAK,EAAE;AAAES,UAAAA;AAAF;AAAtB,SAAoCD,KAAK,CAACV,KAA1C,CAJF,CADF;AAQD,KAhBA,CADH,CADF;AAqBD,GA1BD;;AA4BA,sBACE,oBAAC,OAAD;AACE,IAAA,eAAe,EAAE;AAAEpB,MAAAA,KAAF;AAASG,MAAAA;AAAT,KADnB;AAEE,IAAA,WAAW,EAAEP,QAAQ,CAACS,SAAD,CAFvB;AAGE,IAAA,YAAY,EAAEkB,aAHhB;AAIE,IAAA,aAAa,EAAEF;AAJjB,IADF;AAQD,CA/DD;AAiEA,MAAMO,MAAM,GAAGlC,UAAU,CAAC2C,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,IAAI,EAAE;AADG,GADoB;AAI/BV,EAAAA,MAAM,EAAE;AACNW,IAAAA,aAAa,EAAE,KADT;AAENC,IAAAA,UAAU,EAAE5C,SAAS,CAAC6C;AAFhB,GAJuB;AAQ/BN,EAAAA,OAAO,EAAE;AACPG,IAAAA,IAAI,EAAE,CADC;AAEPI,IAAAA,UAAU,EAAE,QAFL;AAGPC,IAAAA,OAAO,EAAE;AAHF;AARsB,CAAlB,CAAf","sourcesContent":["import * as React from \"react\";\nimport { Animated, View, TouchableOpacity, StyleSheet } from \"react-native\";\nimport { TabView, SceneMap } from \"react-native-tab-view\";\nimport Constants from \"expo-constants\";\n\nimport TabViewItem from \"./TabViewItem\";\n\ninterface TabViewProps {\n children: React.ReactNode;\n}\n\nexport default ({ children }: TabViewProps) => {\n const [index, setIndex] = React.useState(0);\n const [routes, setRoutes] = React.useState([]);\n const [tabScenes, setTabScenes] = React.useState({});\n\n React.useEffect(() => {\n const newRoutes: any = [];\n const scenes: any = {};\n\n React.Children.toArray(children)\n .filter((child: any) => child.type === TabViewItem)\n .forEach((child: any) => {\n if (child?.props?.id) {\n newRoutes.push({\n key: child?.props?.id,\n title: child?.props?.title,\n });\n scenes[child?.props?.id] = () => child;\n }\n });\n\n setRoutes(newRoutes);\n setTabScenes(scenes);\n }, [children]);\n\n const _handleIndexChange = (i: any) => setIndex(i);\n\n const _renderTabBar = (props: any) => {\n const inputRange = props.navigationState.routes.map(\n (__: any, i: number) => i\n );\n\n return (\n <View style={styles.tabBar}>\n {props.navigationState.routes.map((route: any, i: number) => {\n const opacity = props.position.interpolate({\n inputRange,\n outputRange: inputRange.map((inputIndex: any) =>\n inputIndex === i ? 1 : 0.5\n ),\n });\n\n return (\n <TouchableOpacity\n style={styles.tabItem}\n onPress={() => setIndex(i)}\n >\n <Animated.Text style={{ opacity }}>{route.title}</Animated.Text>\n </TouchableOpacity>\n );\n })}\n </View>\n );\n };\n\n return (\n <TabView\n navigationState={{ index, routes }}\n renderScene={SceneMap(tabScenes)}\n renderTabBar={_renderTabBar}\n onIndexChange={_handleIndexChange}\n />\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n tabBar: {\n flexDirection: \"row\",\n paddingTop: Constants.statusBarHeight,\n },\n tabItem: {\n flex: 1,\n alignItems: \"center\",\n padding: 16,\n },\n});\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["TabViewItem.tsx"],"names":["TabViewItem","title","id","children","console","log"],"mappings":"AAOA,MAAMA,WAAW,GAAG,QAA+C;AAAA,MAA9C;AAAEC,IAAAA,KAAF;AAASC,IAAAA,EAAT;AAAaC,IAAAA;AAAb,GAA8C;AACjEC,EAAAA,OAAO,CAACC,GAAR,CAAY;AAAEJ,IAAAA,KAAF;AAASC,IAAAA;AAAT,GAAZ;AACA,SAAOC,QAAP;AACD,CAHD;;AAKA,eAAeH,WAAf","sourcesContent":["import React from \"react\";\ninterface TabViewItemProps {\n title: string;\n id: string;\n children: React.ReactNode;\n}\n\nconst TabViewItem = ({ title, id, children }: TabViewItemProps) => {\n console.log({ title, id });\n return children;\n};\n\nexport default TabViewItem;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":["default","TabView","TabViewItem"],"mappings":"AAAA,SAASA,OAAO,IAAIC,OAApB,QAAmC,WAAnC;AACA,SAASD,OAAO,IAAIE,WAApB,QAAuC,eAAvC","sourcesContent":["export { default as TabView } from \"./TabView\";\nexport { default as TabViewItem } from \"./TabViewItem\";\n"]}
|
package/lib/module/index.js
CHANGED
|
@@ -27,6 +27,7 @@ export { default as Touchable } from "./components/Touchable";
|
|
|
27
27
|
export { AccordionGroup, AccordionItem } from "./components/Accordion";
|
|
28
28
|
export { ActionSheet, ActionSheetItem, ActionSheetCancel } from "./components/ActionSheet";
|
|
29
29
|
export { Swiper, SwiperItem } from "./components/Swiper";
|
|
30
|
+
export { TabView, TabViewItem } from "./components/TabView";
|
|
30
31
|
export { Center, Circle, Square, Row, Stack, Spacer } from "./components/Layout";
|
|
31
32
|
export { RadioButton, RadioButtonGroup, RadioButtonRow, RadioButtonFieldGroup } from "./components/RadioButton/index";
|
|
32
33
|
/* Deprecated: Fix or Delete! */
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.tsx"],"names":["injectIcon","withTheme","ThemeProvider","default","Provider","DefaultTheme","Link","ButtonSolid","ButtonOutline","Avatar","AvatarEdit","Card","Carousel","Checkbox","CheckboxGroup","CheckboxRow","CircleImage","Container","Divider","FAB","FieldSearchBarFull","IconButton","Image","NumberInput","ScreenContainer","StarRating","Surface","Switch","SwitchRow","TextField","ToggleButton","Touchable","AccordionGroup","AccordionItem","ActionSheet","ActionSheetItem","ActionSheetCancel","Swiper","SwiperItem","Center","Circle","Square","Row","Stack","Spacer","RadioButton","RadioButtonGroup","RadioButtonRow","RadioButtonFieldGroup","Button","CardBlock","CardContainer","CardContainerRating","CardInline","DatePicker","HeaderLarge","HeaderMedium","HeaderOverline","Picker","ProgressBar","ProgressCircle","RowBodyIcon","RowHeadlineImageCaption","RowHeadlineImageIcon","Slider","Stepper","useAuthState"],"mappings":"AAAA,SAASA,UAAT,QAA2B,mBAA3B;AACA,SAASC,SAAT,EAAoBC,aAApB,QAAyC,WAAzC;AACA,SAASC,OAAO,IAAIC,QAApB,QAAoC,YAApC;AACA,SAASD,OAAO,IAAIE,YAApB,QAAwC,uBAAxC;AAEA,SAASC,IAAT,QAAqB,mBAArB;AACA,SAASC,WAAT,EAAsBC,aAAtB,QAA2C,qBAA3C;AACA,SAASL,OAAO,IAAIM,MAApB,QAAkC,0BAAlC;AACA,SAASN,OAAO,IAAIO,UAApB,QAAsC,yBAAtC;AACA,SAASP,OAAO,IAAIQ,IAApB,QAAgC,mBAAhC;AACA,SAASR,OAAO,IAAIS,QAApB,QAAoC,uBAApC;AACA,SAASC,QAAT,EAAmBC,aAAnB,EAAkCC,WAAlC,QAAqD,uBAArD;AACA,SAASZ,OAAO,IAAIa,WAApB,QAAuC,0BAAvC;AACA,SAASb,OAAO,IAAIc,SAApB,QAAqC,wBAArC;AACA,SAASd,OAAO,IAAIe,OAApB,QAAmC,sBAAnC;AACA,SAASf,OAAO,IAAIgB,GAApB,QAA+B,kBAA/B;AACA,SAAShB,OAAO,IAAIiB,kBAApB,QAA8C,iCAA9C;AACA,SAASjB,OAAO,IAAIkB,UAApB,QAAsC,yBAAtC;AACA,SAASlB,OAAO,IAAImB,KAApB,QAAiC,oBAAjC;AACA,SAASnB,OAAO,IAAIoB,WAApB,QAAuC,0BAAvC;AACA,SAASpB,OAAO,IAAIqB,eAApB,QAA2C,8BAA3C;AACA,SAASrB,OAAO,IAAIsB,UAApB,QAAsC,yBAAtC;AACA,SAAStB,OAAO,IAAIuB,OAApB,QAAmC,sBAAnC;AACA,SAASvB,OAAO,IAAIwB,MAApB,EAA4BC,SAA5B,QAA6C,qBAA7C;AACA,SAASzB,OAAO,IAAI0B,SAApB,QAAqC,wBAArC;AACA,SAAS1B,OAAO,IAAI2B,YAApB,QAAwC,2BAAxC;AACA,SAAS3B,OAAO,IAAI4B,SAApB,QAAqC,wBAArC;AACA,SAASC,cAAT,EAAyBC,aAAzB,QAA8C,wBAA9C;AACA,SACEC,WADF,EAEEC,eAFF,EAGEC,iBAHF,QAIO,0BAJP;AAKA,SAASC,MAAT,EAAiBC,UAAjB,QAAmC,qBAAnC;AAEA,SACEC,MADF,EAEEC,MAFF,EAGEC,MAHF,EAIEC,GAJF,EAKEC,KALF,EAMEC,MANF,QAOO,qBAPP;AASA,SACEC,WADF,EAEEC,gBAFF,EAGEC,cAHF,EAIEC,qBAJF,QAKO,gCALP;AAOA;;AACA,
|
|
1
|
+
{"version":3,"sources":["index.tsx"],"names":["injectIcon","withTheme","ThemeProvider","default","Provider","DefaultTheme","Link","ButtonSolid","ButtonOutline","Avatar","AvatarEdit","Card","Carousel","Checkbox","CheckboxGroup","CheckboxRow","CircleImage","Container","Divider","FAB","FieldSearchBarFull","IconButton","Image","NumberInput","ScreenContainer","StarRating","Surface","Switch","SwitchRow","TextField","ToggleButton","Touchable","AccordionGroup","AccordionItem","ActionSheet","ActionSheetItem","ActionSheetCancel","Swiper","SwiperItem","TabView","TabViewItem","Center","Circle","Square","Row","Stack","Spacer","RadioButton","RadioButtonGroup","RadioButtonRow","RadioButtonFieldGroup","Button","CardBlock","CardContainer","CardContainerRating","CardInline","DatePicker","HeaderLarge","HeaderMedium","HeaderOverline","Picker","ProgressBar","ProgressCircle","RowBodyIcon","RowHeadlineImageCaption","RowHeadlineImageIcon","Slider","Stepper","useAuthState"],"mappings":"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","sourcesContent":["export { injectIcon } from \"./interfaces/Icon\";\nexport { withTheme, ThemeProvider } from \"./theming\";\nexport { default as Provider } from \"./Provider\";\nexport { default as DefaultTheme } from \"./styles/DefaultTheme\";\n\nexport { Link } from \"./components/Text\";\nexport { ButtonSolid, ButtonOutline } from \"./components/Button\";\nexport { default as Avatar } from \"./components/CircleImage\";\nexport { default as AvatarEdit } from \"./components/AvatarEdit\";\nexport { default as Card } from \"./components/Card\";\nexport { default as Carousel } from \"./components/Carousel\";\nexport { Checkbox, CheckboxGroup, CheckboxRow } from \"./components/Checkbox\";\nexport { default as CircleImage } from \"./components/CircleImage\";\nexport { default as Container } from \"./components/Container\";\nexport { default as Divider } from \"./components/Divider\";\nexport { default as FAB } from \"./components/FAB\";\nexport { default as FieldSearchBarFull } from \"./components/FieldSearchBarFull\";\nexport { default as IconButton } from \"./components/IconButton\";\nexport { default as Image } from \"./components/Image\";\nexport { default as NumberInput } from \"./components/NumberInput\";\nexport { default as ScreenContainer } from \"./components/ScreenContainer\";\nexport { default as StarRating } from \"./components/StarRating\";\nexport { default as Surface } from \"./components/Surface\";\nexport { default as Switch, SwitchRow } from \"./components/Switch\";\nexport { default as TextField } from \"./components/TextField\";\nexport { default as ToggleButton } from \"./components/ToggleButton\";\nexport { default as Touchable } from \"./components/Touchable\";\nexport { AccordionGroup, AccordionItem } from \"./components/Accordion\";\nexport {\n ActionSheet,\n ActionSheetItem,\n ActionSheetCancel,\n} from \"./components/ActionSheet\";\nexport { Swiper, SwiperItem } from \"./components/Swiper\";\nexport { TabView, TabViewItem } from \"./components/TabView\";\n\nexport {\n Center,\n Circle,\n Square,\n Row,\n Stack,\n Spacer,\n} from \"./components/Layout\";\n\nexport {\n RadioButton,\n RadioButtonGroup,\n RadioButtonRow,\n RadioButtonFieldGroup,\n} from \"./components/RadioButton/index\";\n\n/* Deprecated: Fix or Delete! */\nexport { default as Button } from \"./components/DeprecatedButton\";\nexport { default as CardBlock } from \"./components/CardBlock\";\nexport { default as CardContainer } from \"./components/CardContainer\";\nexport { default as CardContainerRating } from \"./components/CardContainerRating\";\nexport { default as CardInline } from \"./components/CardInline\";\nexport { default as DatePicker } from \"./components/DatePicker/DatePicker\";\nexport { default as HeaderLarge } from \"./components/HeaderLarge\";\nexport { default as HeaderMedium } from \"./components/HeaderMedium\";\nexport { default as HeaderOverline } from \"./components/HeaderOverline\";\nexport { default as Picker } from \"./components/Picker/Picker\";\nexport { default as ProgressBar } from \"./components/ProgressBar\";\nexport { default as ProgressCircle } from \"./components/ProgressCircle\";\nexport { default as RowBodyIcon } from \"./components/RowBodyIcon\";\nexport { default as RowHeadlineImageCaption } from \"./components/RowHeadlineImageCaption\";\nexport { default as RowHeadlineImageIcon } from \"./components/RowHeadlineImageIcon\";\nexport { default as Slider } from \"./components/Slider\";\nexport { default as Stepper } from \"./components/Stepper\";\nexport { useAuthState } from \"./components/useAuthState\";\n"]}
|
|
@@ -3,7 +3,7 @@ export const SEED_DATA = {
|
|
|
3
3
|
name: "Map Callout",
|
|
4
4
|
tag: "MapCallout",
|
|
5
5
|
description: "An info window to display on top of a marker when it is clicked",
|
|
6
|
-
category: COMPONENT_TYPES.
|
|
6
|
+
category: COMPONENT_TYPES.deprecated,
|
|
7
7
|
layout: {},
|
|
8
8
|
props: {
|
|
9
9
|
onPress: createActionProp({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["MapCallout.ts"],"names":["COMPONENT_TYPES","createActionProp","createBoolProp","GROUPS","SEED_DATA","name","tag","description","category","
|
|
1
|
+
{"version":3,"sources":["MapCallout.ts"],"names":["COMPONENT_TYPES","createActionProp","createBoolProp","GROUPS","SEED_DATA","name","tag","description","category","deprecated","layout","props","onPress","showTooltip","label","group","basic","defaultValue"],"mappings":"AAAA,SACEA,eADF,EAEEC,gBAFF,EAGEC,cAHF,EAIEC,MAJF,QAKO,iBALP;AAOA,OAAO,MAAMC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,aADiB;AAEvBC,EAAAA,GAAG,EAAE,YAFkB;AAGvBC,EAAAA,WAAW,EACT,iEAJqB;AAKvBC,EAAAA,QAAQ,EAAER,eAAe,CAACS,UALH;AAMvBC,EAAAA,MAAM,EAAE,EANe;AAOvBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,OAAO,EAAEX,gBAAgB,CAAC;AACxBM,MAAAA,WAAW,EAAE;AADW,KAAD,CADpB;AAILM,IAAAA,WAAW,EAAEX,cAAc,CAAC;AAC1BY,MAAAA,KAAK,EAAE,cADmB;AAE1BP,MAAAA,WAAW,EACT,8LAHwB;AAI1BQ,MAAAA,KAAK,EAAEZ,MAAM,CAACa,KAJY;AAK1BC,MAAAA,YAAY,EAAE;AALY,KAAD;AAJtB;AAPgB,CAAlB","sourcesContent":["import {\n COMPONENT_TYPES,\n createActionProp,\n createBoolProp,\n GROUPS,\n} from \"@draftbit/types\";\n\nexport const SEED_DATA = {\n name: \"Map Callout\",\n tag: \"MapCallout\",\n description:\n \"An info window to display on top of a marker when it is clicked\",\n category: COMPONENT_TYPES.deprecated,\n layout: {},\n props: {\n onPress: createActionProp({\n description: \"Action to execute when the callout is pressed\",\n }),\n showTooltip: createBoolProp({\n label: \"Show Tooltip\",\n description:\n 'If false, a default \"tooltip\" bubble window will be drawn around this callout\\'s children. If true, the child views can fully customize their appearance, including any \"bubble\"-like styles',\n group: GROUPS.basic,\n defaultValue: false,\n }),\n },\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["MapMarker.ts"],"names":["COMPONENT_TYPES","createBoolProp","createColorProp","createNumberProp","createTextProp","GROUPS","SEED_DATA","name","tag","description","category","
|
|
1
|
+
{"version":3,"sources":["MapMarker.ts"],"names":["COMPONENT_TYPES","createBoolProp","createColorProp","createNumberProp","createTextProp","GROUPS","SEED_DATA","name","tag","description","category","deprecated","layout","props","latitude","label","required","precision","min","max","longitude","title","defaultValue","flat","group","basic","pinColor"],"mappings":"AAAA,SACEA,eADF,EAEEC,cAFF,EAGEC,eAHF,EAIEC,gBAJF,EAKEC,cALF,EAMEC,MANF,QAOO,iBAPP;AASA,OAAO,MAAMC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,YADiB;AAEvBC,EAAAA,GAAG,EAAE,WAFkB;AAGvBC,EAAAA,WAAW,EAAE,kCAHU;AAIvBC,EAAAA,QAAQ,EAAEV,eAAe,CAACW,UAJH;AAKvBC,EAAAA,MAAM,EAAE,EALe;AAMvBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,QAAQ,EAAEX,gBAAgB,CAAC;AACzBY,MAAAA,KAAK,EAAE,UADkB;AAEzBN,MAAAA,WAAW,EAAE,6CAFY;AAGzBO,MAAAA,QAAQ,EAAE,IAHe;AAIzBC,MAAAA,SAAS,EAAE,CAJc;AAKzBC,MAAAA,GAAG,EAAE,CAAC,EALmB;AAMzBC,MAAAA,GAAG,EAAE;AANoB,KAAD,CADrB;AASLC,IAAAA,SAAS,EAAEjB,gBAAgB,CAAC;AAC1BY,MAAAA,KAAK,EAAE,WADmB;AAE1BN,MAAAA,WAAW,EAAE,8CAFa;AAG1BO,MAAAA,QAAQ,EAAE,IAHgB;AAI1BC,MAAAA,SAAS,EAAE,CAJe;AAK1BC,MAAAA,GAAG,EAAE,CAAC,GALoB;AAM1BC,MAAAA,GAAG,EAAE;AANqB,KAAD,CATtB;AAiBLE,IAAAA,KAAK,EAAEjB,cAAc,CAAC;AACpBW,MAAAA,KAAK,EAAE,OADa;AAEpBN,MAAAA,WAAW,EAAE,qCAFO;AAGpBa,MAAAA,YAAY,EAAE;AAHM,KAAD,CAjBhB;AAsBLb,IAAAA,WAAW,EAAEL,cAAc,CAAC;AAC1BW,MAAAA,KAAK,EAAE,aADmB;AAE1BN,MAAAA,WAAW,EAAE,qCAFa;AAG1Ba,MAAAA,YAAY,EAAE;AAHY,KAAD,CAtBtB;AA2BLC,IAAAA,IAAI,EAAEtB,cAAc,CAAC;AACnBc,MAAAA,KAAK,EAAE,MADY;AAEnBN,MAAAA,WAAW,EACT,+GAHiB;AAInBe,MAAAA,KAAK,EAAEnB,MAAM,CAACoB,KAJK;AAKnBH,MAAAA,YAAY,EAAE;AALK,KAAD,CA3Bf;AAkCLI,IAAAA,QAAQ,EAAExB,eAAe,CAAC;AACxBa,MAAAA,KAAK,EAAE,WADiB;AAExBN,MAAAA,WAAW,EAAE;AAFW,KAAD;AAlCpB;AANgB,CAAlB","sourcesContent":["import {\n COMPONENT_TYPES,\n createBoolProp,\n createColorProp,\n createNumberProp,\n createTextProp,\n GROUPS,\n} from \"@draftbit/types\";\n\nexport const SEED_DATA = {\n name: \"Map Marker\",\n tag: \"MapMarker\",\n description: \"A marker to show inside map view\",\n category: COMPONENT_TYPES.deprecated,\n layout: {},\n props: {\n latitude: createNumberProp({\n label: \"Latitude\",\n description: \"The latitude in which the marker is located\",\n required: true,\n precision: 6,\n min: -90,\n max: 90,\n }),\n longitude: createNumberProp({\n label: \"Longitude\",\n description: \"The longitude in which the marker is located\",\n required: true,\n precision: 6,\n min: -180,\n max: 180,\n }),\n title: createTextProp({\n label: \"Title\",\n description: \"Title to show along with the marker\",\n defaultValue: null,\n }),\n description: createTextProp({\n label: \"Description\",\n description: \"Optional description for the marker\",\n defaultValue: null,\n }),\n flat: createBoolProp({\n label: \"Flat\",\n description:\n \"Sets whether this marker should be flat against the map (if true) or a billboard facing the camera (if false)\",\n group: GROUPS.basic,\n defaultValue: false,\n }),\n pinColor: createColorProp({\n label: \"Pin Color\",\n description: \"Sets the color of the marker\",\n }),\n },\n};\n"]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { COMPONENT_TYPES, createTextProp } from "@draftbit/types";
|
|
2
|
+
export const SEED_DATA = [{
|
|
3
|
+
name: "TabView",
|
|
4
|
+
tag: "TabView",
|
|
5
|
+
category: COMPONENT_TYPES.container,
|
|
6
|
+
layout: {},
|
|
7
|
+
props: {}
|
|
8
|
+
}, {
|
|
9
|
+
name: "TabViewItem",
|
|
10
|
+
tag: "TabViewItem",
|
|
11
|
+
category: COMPONENT_TYPES.container,
|
|
12
|
+
layout: {},
|
|
13
|
+
props: {
|
|
14
|
+
title: createTextProp({
|
|
15
|
+
label: "Tab Title",
|
|
16
|
+
description: "Tab Title"
|
|
17
|
+
}),
|
|
18
|
+
id: createTextProp({
|
|
19
|
+
label: "Tab Id",
|
|
20
|
+
description: "Tab Id"
|
|
21
|
+
})
|
|
22
|
+
}
|
|
23
|
+
}];
|
|
24
|
+
//# sourceMappingURL=TabView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["TabView.ts"],"names":["COMPONENT_TYPES","createTextProp","SEED_DATA","name","tag","category","container","layout","props","title","label","description","id"],"mappings":"AAAA,SAASA,eAAT,EAA0BC,cAA1B,QAAgD,iBAAhD;AAEA,OAAO,MAAMC,SAAS,GAAG,CACvB;AACEC,EAAAA,IAAI,EAAE,SADR;AAEEC,EAAAA,GAAG,EAAE,SAFP;AAGEC,EAAAA,QAAQ,EAAEL,eAAe,CAACM,SAH5B;AAIEC,EAAAA,MAAM,EAAE,EAJV;AAKEC,EAAAA,KAAK,EAAE;AALT,CADuB,EAQvB;AACEL,EAAAA,IAAI,EAAE,aADR;AAEEC,EAAAA,GAAG,EAAE,aAFP;AAGEC,EAAAA,QAAQ,EAAEL,eAAe,CAACM,SAH5B;AAIEC,EAAAA,MAAM,EAAE,EAJV;AAKEC,EAAAA,KAAK,EAAE;AACLC,IAAAA,KAAK,EAAER,cAAc,CAAC;AACpBS,MAAAA,KAAK,EAAE,WADa;AAEpBC,MAAAA,WAAW,EAAE;AAFO,KAAD,CADhB;AAKLC,IAAAA,EAAE,EAAEX,cAAc,CAAC;AACjBS,MAAAA,KAAK,EAAE,QADU;AAEjBC,MAAAA,WAAW,EAAE;AAFI,KAAD;AALb;AALT,CARuB,CAAlB","sourcesContent":["import { COMPONENT_TYPES, createTextProp } from \"@draftbit/types\";\n\nexport const SEED_DATA = [\n {\n name: \"TabView\",\n tag: \"TabView\",\n category: COMPONENT_TYPES.container,\n layout: {},\n props: {},\n },\n {\n name: \"TabViewItem\",\n tag: \"TabViewItem\",\n category: COMPONENT_TYPES.container,\n layout: {},\n props: {\n title: createTextProp({\n label: \"Tab Title\",\n description: \"Tab Title\",\n }),\n id: createTextProp({\n label: \"Tab Id\",\n description: \"Tab Id\",\n }),\n },\n },\n];\n"]}
|
|
@@ -27,6 +27,7 @@ export { default as Touchable } from "./components/Touchable";
|
|
|
27
27
|
export { AccordionGroup, AccordionItem } from "./components/Accordion";
|
|
28
28
|
export { ActionSheet, ActionSheetItem, ActionSheetCancel, } from "./components/ActionSheet";
|
|
29
29
|
export { Swiper, SwiperItem } from "./components/Swiper";
|
|
30
|
+
export { TabView, TabViewItem } from "./components/TabView";
|
|
30
31
|
export { Center, Circle, Square, Row, Stack, Spacer, } from "./components/Layout";
|
|
31
32
|
export { RadioButton, RadioButtonGroup, RadioButtonRow, RadioButtonFieldGroup, } from "./components/RadioButton/index";
|
|
32
33
|
export { default as Button } from "./components/DeprecatedButton";
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare const SEED_DATA: ({
|
|
2
|
+
name: string;
|
|
3
|
+
tag: string;
|
|
4
|
+
category: string;
|
|
5
|
+
layout: {};
|
|
6
|
+
props: {
|
|
7
|
+
title?: undefined;
|
|
8
|
+
id?: undefined;
|
|
9
|
+
};
|
|
10
|
+
} | {
|
|
11
|
+
name: string;
|
|
12
|
+
tag: string;
|
|
13
|
+
category: string;
|
|
14
|
+
layout: {};
|
|
15
|
+
props: {
|
|
16
|
+
title: any;
|
|
17
|
+
id: any;
|
|
18
|
+
};
|
|
19
|
+
})[];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@draftbit/core",
|
|
3
|
-
"version": "43.2.
|
|
3
|
+
"version": "43.2.3-0f04d4.0+0f04d477",
|
|
4
4
|
"description": "Core (non-native) Components",
|
|
5
5
|
"main": "lib/commonjs/index.js",
|
|
6
6
|
"module": "lib/module/index.js",
|
|
@@ -53,6 +53,8 @@
|
|
|
53
53
|
"lodash.omit": "^4.5.0",
|
|
54
54
|
"lodash.tonumber": "^4.0.3",
|
|
55
55
|
"react-native-modal-datetime-picker": "^13.0.0",
|
|
56
|
+
"react-native-pager-view": "^5.4.9",
|
|
57
|
+
"react-native-tab-view": "^3.1.1",
|
|
56
58
|
"react-native-typography": "^1.4.1",
|
|
57
59
|
"react-native-web-swiper": "^2.2.1"
|
|
58
60
|
},
|
|
@@ -79,5 +81,5 @@
|
|
|
79
81
|
]
|
|
80
82
|
]
|
|
81
83
|
},
|
|
82
|
-
"gitHead": "
|
|
84
|
+
"gitHead": "0f04d477e53a1af3a829258e7a0e7d9ab0099f3a"
|
|
83
85
|
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Animated, View, TouchableOpacity, StyleSheet } from "react-native";
|
|
3
|
+
import { TabView, SceneMap } from "react-native-tab-view";
|
|
4
|
+
import Constants from "expo-constants";
|
|
5
|
+
import TabViewItem from "./TabViewItem";
|
|
6
|
+
export default ({ children }) => {
|
|
7
|
+
const [index, setIndex] = React.useState(0);
|
|
8
|
+
const [routes, setRoutes] = React.useState([]);
|
|
9
|
+
const [tabScenes, setTabScenes] = React.useState({});
|
|
10
|
+
React.useEffect(() => {
|
|
11
|
+
const newRoutes = [];
|
|
12
|
+
const scenes = {};
|
|
13
|
+
React.Children.toArray(children)
|
|
14
|
+
.filter((child) => child.type === TabViewItem)
|
|
15
|
+
.forEach((child) => {
|
|
16
|
+
if (child?.props?.id) {
|
|
17
|
+
newRoutes.push({
|
|
18
|
+
key: child?.props?.id,
|
|
19
|
+
title: child?.props?.title,
|
|
20
|
+
});
|
|
21
|
+
scenes[child?.props?.id] = () => child;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
setRoutes(newRoutes);
|
|
25
|
+
setTabScenes(scenes);
|
|
26
|
+
}, [children]);
|
|
27
|
+
const _handleIndexChange = (i) => setIndex(i);
|
|
28
|
+
const _renderTabBar = (props) => {
|
|
29
|
+
const inputRange = props.navigationState.routes.map((__, i) => i);
|
|
30
|
+
return (React.createElement(View, { style: styles.tabBar }, props.navigationState.routes.map((route, i) => {
|
|
31
|
+
const opacity = props.position.interpolate({
|
|
32
|
+
inputRange,
|
|
33
|
+
outputRange: inputRange.map((inputIndex) => inputIndex === i ? 1 : 0.5),
|
|
34
|
+
});
|
|
35
|
+
return (React.createElement(TouchableOpacity, { style: styles.tabItem, onPress: () => setIndex(i) },
|
|
36
|
+
React.createElement(Animated.Text, { style: { opacity } }, route.title)));
|
|
37
|
+
})));
|
|
38
|
+
};
|
|
39
|
+
return (React.createElement(TabView, { navigationState: { index, routes }, renderScene: SceneMap(tabScenes), renderTabBar: _renderTabBar, onIndexChange: _handleIndexChange }));
|
|
40
|
+
};
|
|
41
|
+
const styles = StyleSheet.create({
|
|
42
|
+
container: {
|
|
43
|
+
flex: 1,
|
|
44
|
+
},
|
|
45
|
+
tabBar: {
|
|
46
|
+
flexDirection: "row",
|
|
47
|
+
paddingTop: Constants.statusBarHeight,
|
|
48
|
+
},
|
|
49
|
+
tabItem: {
|
|
50
|
+
flex: 1,
|
|
51
|
+
alignItems: "center",
|
|
52
|
+
padding: 16,
|
|
53
|
+
},
|
|
54
|
+
});
|