@codeleap/mobile 2.3.0 → 2.3.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.
Files changed (126) hide show
  1. package/dist/components/Button/index.d.ts +0 -1
  2. package/dist/components/Button/index.js +5 -12
  3. package/dist/components/Button/index.js.map +1 -1
  4. package/dist/components/List/styles.js +1 -1
  5. package/dist/components/List/styles.js.map +1 -1
  6. package/dist/components/Touchable/index.js +11 -9
  7. package/dist/components/Touchable/index.js.map +1 -1
  8. package/dist/utils/theme.d.ts +1 -0
  9. package/dist/utils/theme.js +7 -2
  10. package/dist/utils/theme.js.map +1 -1
  11. package/package.json +1 -1
  12. package/src/components/ActionIcon/index.tsx +32 -0
  13. package/src/components/ActionIcon/styles.ts +97 -0
  14. package/src/components/ActivityIndicator/index.tsx +50 -0
  15. package/src/components/ActivityIndicator/styles.ts +68 -0
  16. package/src/components/Animated.tsx +34 -0
  17. package/src/components/AutoComplete/index.tsx +163 -0
  18. package/src/components/AutoComplete/styles.ts +44 -0
  19. package/src/components/Backdrop/index.tsx +48 -0
  20. package/src/components/Backdrop/styles.ts +33 -0
  21. package/src/components/Button/index.tsx +154 -0
  22. package/src/components/Button/styles.ts +129 -0
  23. package/src/components/Calendar/index.tsx +65 -0
  24. package/src/components/Calendar/style.ts +35 -0
  25. package/src/components/Calendar/types.ts +102 -0
  26. package/src/components/Checkbox/index.tsx +91 -0
  27. package/src/components/Checkbox/styles.ts +81 -0
  28. package/src/components/ContentView/index.tsx +63 -0
  29. package/src/components/ContentView/styles.ts +24 -0
  30. package/src/components/Drawer/index.tsx +33 -0
  31. package/src/components/Drawer/styles.ts +43 -0
  32. package/src/components/EmptyPlaceholder/index.tsx +88 -0
  33. package/src/components/EmptyPlaceholder/styles.ts +58 -0
  34. package/src/components/FileInput/index.tsx +181 -0
  35. package/src/components/FileInput/styles.ts +15 -0
  36. package/src/components/Grid/index.tsx +117 -0
  37. package/src/components/Grid/styles.ts +11 -0
  38. package/src/components/Icon/index.tsx +69 -0
  39. package/src/components/Icon/styles.ts +57 -0
  40. package/src/components/Image/index.tsx +91 -0
  41. package/src/components/Image/styles.ts +20 -0
  42. package/src/components/ImageView/Spotlight.tsx +157 -0
  43. package/src/components/ImageView/component.tsx +38 -0
  44. package/src/components/ImageView/index.ts +2 -0
  45. package/src/components/InputLabel/index.tsx +38 -0
  46. package/src/components/InputLabel/styles.ts +19 -0
  47. package/src/components/List/PaginationIndicator.tsx +71 -0
  48. package/src/components/List/index.tsx +114 -0
  49. package/src/components/List/styles.ts +19 -0
  50. package/src/components/Modal/index.tsx +218 -0
  51. package/src/components/Modal/styles.ts +153 -0
  52. package/src/components/MultiSelect/index.tsx +138 -0
  53. package/src/components/MultiSelect/styles.ts +18 -0
  54. package/src/components/MultiSelect/types.ts +42 -0
  55. package/src/components/Navigation/Navigation.tsx +54 -0
  56. package/src/components/Navigation/constants.ts +8 -0
  57. package/src/components/Navigation/index.tsx +3 -0
  58. package/src/components/Navigation/types.ts +35 -0
  59. package/src/components/Navigation/utils.tsx +57 -0
  60. package/src/components/Pager/index.tsx +121 -0
  61. package/src/components/Pager/styles.ts +81 -0
  62. package/src/components/RadioInput/index.tsx +106 -0
  63. package/src/components/RadioInput/styles.ts +67 -0
  64. package/src/components/Scroll/index.tsx +124 -0
  65. package/src/components/Scroll/styles.ts +18 -0
  66. package/src/components/Sections/index.tsx +91 -0
  67. package/src/components/SegmentedControl/index.tsx +204 -0
  68. package/src/components/SegmentedControl/styles.ts +89 -0
  69. package/src/components/Select/index.tsx +167 -0
  70. package/src/components/Select/styles.ts +62 -0
  71. package/src/components/Select/types.ts +43 -0
  72. package/src/components/Slider/Mark.tsx +46 -0
  73. package/src/components/Slider/Thumb.tsx +29 -0
  74. package/src/components/Slider/index.tsx +130 -0
  75. package/src/components/Slider/styles.ts +76 -0
  76. package/src/components/Slider/types.ts +30 -0
  77. package/src/components/Switch/index.tsx +91 -0
  78. package/src/components/Switch/styles.ts +38 -0
  79. package/src/components/Text/index.tsx +97 -0
  80. package/src/components/Text/styles.ts +50 -0
  81. package/src/components/TextInput/index.tsx +319 -0
  82. package/src/components/TextInput/styles.ts +127 -0
  83. package/src/components/Touchable/index.tsx +174 -0
  84. package/src/components/Touchable/styles.ts +28 -0
  85. package/src/components/View/index.tsx +103 -0
  86. package/src/components/View/styles.ts +24 -0
  87. package/src/components/components.ts +42 -0
  88. package/src/components/defaultStyles.ts +62 -0
  89. package/src/components/legacy/Modal/index.tsx +163 -0
  90. package/src/components/legacy/Modal/styles.ts +125 -0
  91. package/src/components/legacy/Pager/index.tsx +242 -0
  92. package/src/components/legacy/Pager/styles.ts +51 -0
  93. package/src/components/legacy/index.ts +2 -0
  94. package/src/modules/documentPicker.ts +7 -0
  95. package/src/modules/fastImage.ts +2 -0
  96. package/src/modules/imageCropPicker.d.ts +497 -0
  97. package/src/modules/index.d.ts +682 -0
  98. package/src/modules/reactNavigation.ts +15 -0
  99. package/src/modules/textInputMask.ts +11 -0
  100. package/src/modules/types/documentPicker.d.ts +215 -0
  101. package/src/modules/types/fileTypes.ts +138 -0
  102. package/src/modules/types/textInputMask.ts +9 -0
  103. package/src/types/index.ts +1 -0
  104. package/src/types/utility.ts +9 -0
  105. package/src/utils/KeyboardAware/context.tsx +75 -0
  106. package/src/utils/KeyboardAware/index.ts +17 -0
  107. package/src/utils/KeyboardAware/keyboardHooks.ts +124 -0
  108. package/src/utils/KeyboardAware/lib/KeyboardAwareFlatList.ts +4 -0
  109. package/src/utils/KeyboardAware/lib/KeyboardAwareHOC.tsx +618 -0
  110. package/src/utils/KeyboardAware/lib/KeyboardAwareInterface.ts +13 -0
  111. package/src/utils/KeyboardAware/lib/KeyboardAwareScrollView.ts +6 -0
  112. package/src/utils/KeyboardAware/lib/KeyboardAwareSectionList.ts +6 -0
  113. package/src/utils/KeyboardAware/types.ts +159 -0
  114. package/src/utils/ModalManager/components.tsx +112 -0
  115. package/src/utils/ModalManager/context.tsx +260 -0
  116. package/src/utils/ModalManager/index.ts +16 -0
  117. package/src/utils/OSAlert.ts +180 -0
  118. package/src/utils/PermissionManager/context.tsx +302 -0
  119. package/src/utils/PermissionManager/index.ts +20 -0
  120. package/src/utils/PermissionManager/types.ts +24 -0
  121. package/src/utils/hooks.ts +163 -0
  122. package/src/utils/index.ts +11 -0
  123. package/src/utils/input.ts +51 -0
  124. package/src/utils/misc.ts +83 -0
  125. package/src/utils/notifications.ts +206 -0
  126. package/src/utils/theme.ts +58 -0
@@ -8,7 +8,6 @@ import { ViewProps } from '../View';
8
8
  export * from './styles';
9
9
  declare type ChildProps = {
10
10
  styles: StylesOf<ButtonParts>;
11
- pressed: boolean;
12
11
  props: Omit<ButtonProps, 'children'>;
13
12
  };
14
13
  declare type BadgeProps = Partial<ViewProps> & {
@@ -67,20 +67,12 @@ exports.Badge = (0, react_1.forwardRef)(function (props, ref) {
67
67
  </View_1.View>;
68
68
  });
69
69
  exports.Button = (0, react_1.forwardRef)(function (buttonProps, ref) {
70
- var _a = buttonProps.variants, variants = _a === void 0 ? [] : _a, children = buttonProps.children, icon = buttonProps.icon, text = buttonProps.text, loading = buttonProps.loading, _b = buttonProps.styles, styles = _b === void 0 ? {} : _b, onPress = buttonProps.onPress, disabled = buttonProps.disabled, _c = buttonProps.badge, badge = _c === void 0 ? null : _c, rightIcon = buttonProps.rightIcon, _d = buttonProps.debounce, debounce = _d === void 0 ? 600 : _d, style = buttonProps.style, props = __rest(buttonProps, ["variants", "children", "icon", "text", "loading", "styles", "onPress", "disabled", "badge", "rightIcon", "debounce", "style"]);
71
- var _e = React.useState(false), pressed = _e[0], setPressed = _e[1];
70
+ var _a = buttonProps.variants, variants = _a === void 0 ? [] : _a, children = buttonProps.children, icon = buttonProps.icon, text = buttonProps.text, loading = buttonProps.loading, _b = buttonProps.styles, styles = _b === void 0 ? {} : _b, onPress = buttonProps.onPress, disabled = buttonProps.disabled, _c = buttonProps.badge, badge = _c === void 0 ? null : _c, rightIcon = buttonProps.rightIcon, style = buttonProps.style, props = __rest(buttonProps, ["variants", "children", "icon", "text", "loading", "styles", "onPress", "disabled", "badge", "rightIcon", "style"]);
72
71
  var variantStyles = (0, common_1.useDefaultComponentStyle)('u:Button', {
73
72
  variants: variants,
74
73
  transform: react_native_1.StyleSheet.flatten,
75
74
  styles: styles,
76
75
  });
77
- function handlePress() {
78
- if (!pressed) {
79
- setPressed(true);
80
- setTimeout(function () { return setPressed(false); }, debounce);
81
- onPress && onPress();
82
- }
83
- }
84
76
  function getStyles(key) {
85
77
  return [
86
78
  variantStyles[key],
@@ -102,8 +94,9 @@ exports.Button = (0, react_1.forwardRef)(function (buttonProps, ref) {
102
94
  text: getStyles('text'),
103
95
  icon: getStyles('icon'),
104
96
  };
105
- var childrenContent = typeof children === 'function' ?
106
- children({ styles: _styles, props: buttonProps, pressed: pressed })
97
+ var childrenContent = common_1.TypeGuards.isFunction(children) ?
98
+ // @ts-ignore
99
+ children({ styles: _styles, props: buttonProps })
107
100
  : children;
108
101
  var _badge = null;
109
102
  if (badge) {
@@ -112,7 +105,7 @@ exports.Button = (0, react_1.forwardRef)(function (buttonProps, ref) {
112
105
  wrapper: variantStyles.badgeWrapper,
113
106
  }, (badge === null || badge === void 0 ? void 0 : badge.styles) || {})}/>;
114
107
  }
115
- return (<Touchable_1.Touchable style={_styles.wrapper} onPress={handlePress} ref={ref} disabled={disabled} styles={{
108
+ return (<Touchable_1.Touchable style={_styles.wrapper} ref={ref} disabled={disabled} styles={{
116
109
  feedback: variantStyles.feedback,
117
110
  }} debugComponent={'Button'} noFeedback={!onPress} {...props}>
118
111
  {_badge}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Button/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Button/index.tsx"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ exports.ListStyles = {
20
20
  var defaultStyles = styles_1.ScrollStyles.default(theme);
21
21
  return __assign(__assign({}, defaultStyles), { separator: {
22
22
  width: '100%',
23
- height: theme.spacing.value(1.5),
23
+ height: theme.spacing.value(1),
24
24
  } });
25
25
  }),
26
26
  };
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/List/styles.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,2CAA8D;AAC9D,2CAAkE;AAIlE,IAAM,eAAe,GAAG,IAAA,oCAA2B,GAAmB,CAAA;AAEzD,QAAA,UAAU,GAAG;IACxB,OAAO,EAAE,eAAe,CAAC,UAAC,KAAK;QAC7B,IAAM,aAAa,GAAG,qBAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACjD,6BACK,aAAa,KAChB,SAAS,EAAE;gBACT,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;aACjC,IACF;IACH,CAAC,CAAC;CACH,CAAA"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/List/styles.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,2CAA8D;AAC9D,2CAAkE;AAIlE,IAAM,eAAe,GAAG,IAAA,oCAA2B,GAAmB,CAAA;AAEzD,QAAA,UAAU,GAAG;IACxB,OAAO,EAAE,eAAe,CAAC,UAAC,KAAK;QAC7B,IAAM,aAAa,GAAG,qBAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACjD,6BACK,aAAa,KAChB,SAAS,EAAE;gBACT,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;aAC/B,IACF;IACH,CAAC,CAAC;CACH,CAAA"}
@@ -47,8 +47,8 @@ var View_1 = require("../View");
47
47
  var utils_1 = require("../../utils");
48
48
  __exportStar(require("./styles"), exports);
49
49
  exports.Touchable = (0, react_1.forwardRef)(function (touchableProps, ref) {
50
- var _a = touchableProps.variants, variants = _a === void 0 ? [] : _a, children = touchableProps.children, onPress = touchableProps.onPress, style = touchableProps.style, debugName = touchableProps.debugName, debugComponent = touchableProps.debugComponent, _b = touchableProps.debounce, debounce = _b === void 0 ? null : _b, _c = touchableProps.noFeedback, noFeedback = _c === void 0 ? false : _c, styles = touchableProps.styles, props = __rest(touchableProps, ["variants", "children", "onPress", "style", "debugName", "debugComponent", "debounce", "noFeedback", "styles"]);
51
- var _d = React.useState(false), pressed = _d[0], setPressed = _d[1];
50
+ var _a = touchableProps.variants, variants = _a === void 0 ? [] : _a, children = touchableProps.children, onPress = touchableProps.onPress, style = touchableProps.style, debugName = touchableProps.debugName, debugComponent = touchableProps.debugComponent, _b = touchableProps.debounce, debounce = _b === void 0 ? 1000 : _b, _c = touchableProps.noFeedback, noFeedback = _c === void 0 ? false : _c, styles = touchableProps.styles, props = __rest(touchableProps, ["variants", "children", "onPress", "style", "debugName", "debugComponent", "debounce", "noFeedback", "styles"]);
51
+ var pressed = React.useRef(false);
52
52
  var variantStyles = (0, common_1.useDefaultComponentStyle)('u:Touchable', {
53
53
  variants: variants,
54
54
  transform: react_native_1.StyleSheet.flatten,
@@ -68,12 +68,14 @@ exports.Touchable = (0, react_1.forwardRef)(function (touchableProps, ref) {
68
68
  onPress && onPress();
69
69
  };
70
70
  if (common_1.TypeGuards.isNumber(debounce)) {
71
- if (pressed) {
71
+ if (pressed.current) {
72
72
  return;
73
73
  }
74
- setPressed(true);
74
+ pressed.current = true;
75
75
  _onPress();
76
- setTimeout(function () { return setPressed(false); }, debounce);
76
+ setTimeout(function () {
77
+ pressed.current = false;
78
+ }, debounce);
77
79
  }
78
80
  else {
79
81
  _onPress();
@@ -81,14 +83,14 @@ exports.Touchable = (0, react_1.forwardRef)(function (touchableProps, ref) {
81
83
  };
82
84
  var _styles = react_native_1.StyleSheet.flatten([variantStyles.wrapper, style]);
83
85
  var disableFeedback = !onPress || noFeedback;
84
- var _e = (0, utils_1.usePressableFeedback)(_styles, {
86
+ var _d = (0, utils_1.usePressableFeedback)(_styles, {
85
87
  hightlightPropertyIn: 'backgroundColor',
86
88
  hightlightPropertyOut: 'backgroundColor',
87
89
  disabled: disableFeedback,
88
90
  feedbackConfig: variantStyles === null || variantStyles === void 0 ? void 0 : variantStyles.feedback,
89
- }), rippleConfig = _e.rippleConfig, getFeedbackStyle = _e.getFeedbackStyle;
91
+ }), rippleConfig = _d.rippleConfig, getFeedbackStyle = _d.getFeedbackStyle;
90
92
  var Wrapper = View_1.View;
91
- var _f = React.useMemo(function () {
93
+ var _e = React.useMemo(function () {
92
94
  var wrapperkeys = [
93
95
  'margin',
94
96
  'alignSelf',
@@ -136,7 +138,7 @@ exports.Touchable = (0, react_1.forwardRef)(function (touchableProps, ref) {
136
138
  wrapperStyle: wrapperStyle,
137
139
  pressableStyle: pressableStyle,
138
140
  };
139
- }, [JSON.stringify(_styles)]), wrapperStyle = _f.wrapperStyle, pressableStyle = _f.pressableStyle;
141
+ }, [JSON.stringify(_styles)]), wrapperStyle = _e.wrapperStyle, pressableStyle = _e.pressableStyle;
140
142
  return (<Wrapper style={[wrapperStyle]}>
141
143
  <react_native_1.Pressable onPress={press} style={function (_a) {
142
144
  var pressed = _a.pressed;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Touchable/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Touchable/index.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ declare type AppValues = {
5
5
  export declare function getMobileThemeValues(initialWindowMetrics: any, values: AppValues): {
6
6
  pixel: number;
7
7
  hasNotch: boolean;
8
+ hasIsland: boolean;
8
9
  prefersConstantNavigationBar: boolean;
9
10
  safeAreaTop: number;
10
11
  safeAreaBottom: number;
@@ -10,18 +10,23 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
13
16
  Object.defineProperty(exports, "__esModule", { value: true });
14
17
  exports.getMobileThemeValues = void 0;
15
18
  var react_native_1 = require("react-native");
19
+ var react_native_device_info_1 = __importDefault(require("react-native-device-info"));
16
20
  function getMobileThemeValues(initialWindowMetrics, values) {
17
21
  var _a, _b;
18
22
  var screenDimensions = react_native_1.Dimensions.get('screen');
19
23
  var hasNotch = react_native_1.Platform.OS === 'ios' ? (react_native_1.Dimensions.get('window').height >= 812) : (((_a = initialWindowMetrics === null || initialWindowMetrics === void 0 ? void 0 : initialWindowMetrics.insets) === null || _a === void 0 ? void 0 : _a.top) > 24 || react_native_1.StatusBar.currentHeight > 24);
24
+ var hasIsland = react_native_device_info_1.default.hasDynamicIsland();
20
25
  var bottomNavHeight = react_native_1.Platform.OS === 'android' ? (_b = initialWindowMetrics === null || initialWindowMetrics === void 0 ? void 0 : initialWindowMetrics.insets) === null || _b === void 0 ? void 0 : _b.bottom : 0;
21
26
  var prefersConstantNavigationBar = bottomNavHeight > 0;
22
- var safeAreaTop = react_native_1.Platform.OS === 'ios' ? (hasNotch ? 34 : 20) : react_native_1.StatusBar.currentHeight;
27
+ var safeAreaTop = react_native_1.Platform.OS === 'ios' ? (hasNotch ? 34 + (hasIsland ? 12 : 0) : 20) : react_native_1.StatusBar.currentHeight;
23
28
  var safeAreaBottom = (hasNotch && !prefersConstantNavigationBar ? 20 : 0);
24
- return __assign(__assign({}, screenDimensions), { pixel: react_native_1.StyleSheet.hairlineWidth, hasNotch: hasNotch, prefersConstantNavigationBar: prefersConstantNavigationBar, safeAreaTop: safeAreaTop, safeAreaBottom: safeAreaBottom, keyboardVerticalOffset: react_native_1.Platform.OS === 'ios' ? 57 : 47, get headerHeight() { return values.headerHeight + safeAreaTop; },
29
+ return __assign(__assign({}, screenDimensions), { pixel: react_native_1.StyleSheet.hairlineWidth, hasNotch: hasNotch, hasIsland: hasIsland, prefersConstantNavigationBar: prefersConstantNavigationBar, safeAreaTop: safeAreaTop, safeAreaBottom: safeAreaBottom, keyboardVerticalOffset: react_native_1.Platform.OS === 'ios' ? 57 : 47, get headerHeight() { return values.headerHeight + safeAreaTop; },
25
30
  get tabBarHeight() { return values.tabBarHeight + (prefersConstantNavigationBar ? 0 : this.safeAreaBottom); }, bottomNavHeight: bottomNavHeight, get window() {
26
31
  return {
27
32
  height: screenDimensions.height - (bottomNavHeight + safeAreaTop),
@@ -1 +1 @@
1
- {"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/utils/theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,6CAA0E;AAO1E,SAAgB,oBAAoB,CAAC,oBAAoB,EAAE,MAAiB;;IAC1E,IAAM,gBAAgB,GAAG,yBAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAEjD,IAAM,QAAQ,GAAG,uBAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,yBAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,MAAM,0CAAE,GAAG,IAAG,EAAE,IAAI,wBAAS,CAAC,aAAa,GAAG,EAAE,CAAC,CAAA;IAC5J,IAAM,eAAe,GAAG,uBAAQ,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,MAAM,0CAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAE5F,IAAM,4BAA4B,GAAG,eAAe,GAAG,CAAC,CAAA;IAExD,IAAM,WAAW,GAAG,uBAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,wBAAS,CAAC,aAAa,CAAA;IAE1F,IAAM,cAAc,GAAG,CAAC,QAAQ,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3E,6BACK,gBAAgB,KAEnB,KAAK,EAAE,yBAAU,CAAC,aAAa,EAC/B,QAAQ,UAAA,EACR,4BAA4B,8BAAA,EAC5B,WAAW,aAAA,EACX,cAAc,gBAAA,EACd,sBAAsB,EAAE,uBAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EACvD,IAAI,YAAY,KAAK,OAAO,MAAM,CAAC,YAAY,GAAG,WAAW,CAAA,CAAC,CAAC;QAC/D,IAAI,YAAY,KAAK,OAAO,MAAM,CAAC,YAAY,GAAG,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA,CAAC,CAAC,EAC5G,eAAe,iBAAA,EACf,IAAI,MAAM;YACR,OAAO;gBACL,MAAM,EAAE,gBAAgB,CAAC,MAAM,GAAG,CAAC,eAAe,GAAG,WAAW,CAAC;gBACjE,KAAK,EAAE,gBAAgB,CAAC,KAAK;aAC9B,CAAA;QACH,CAAC,EACD,WAAW,EAAE;YACX,KAAK,EAAE;gBACL,QAAQ,EAAE,GAAG;gBACb,IAAI,EAAE,QAAQ;aACf;SACF,EACD,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,MAAM,EAAE,EAAE;aACX;YACD,OAAO,EAAE;gBACP,MAAM,EAAE,EAAE;aACX;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,EAAE;aACX;SACF,IACF;AACH,CAAC;AA/CD,oDA+CC"}
1
+ {"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/utils/theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAA0E;AAC1E,sFAAiD;AAOjD,SAAgB,oBAAoB,CAAC,oBAAoB,EAAE,MAAiB;;IAC1E,IAAM,gBAAgB,GAAG,yBAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAEjD,IAAM,QAAQ,GAAG,uBAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,yBAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,MAAM,0CAAE,GAAG,IAAG,EAAE,IAAI,wBAAS,CAAC,aAAa,GAAG,EAAE,CAAC,CAAA;IAC5J,IAAM,SAAS,GAAG,kCAAU,CAAC,gBAAgB,EAAE,CAAA;IAC/C,IAAM,eAAe,GAAG,uBAAQ,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,MAAM,0CAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAE5F,IAAM,4BAA4B,GAAG,eAAe,GAAG,CAAC,CAAA;IAExD,IAAM,WAAW,GAAG,uBAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,wBAAS,CAAC,aAAa,CAAA;IAEjH,IAAM,cAAc,GAAG,CAAC,QAAQ,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3E,6BACK,gBAAgB,KAEnB,KAAK,EAAE,yBAAU,CAAC,aAAa,EAC/B,QAAQ,UAAA,EACR,SAAS,WAAA,EACT,4BAA4B,8BAAA,EAC5B,WAAW,aAAA,EACX,cAAc,gBAAA,EACd,sBAAsB,EAAE,uBAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EACvD,IAAI,YAAY,KAAK,OAAO,MAAM,CAAC,YAAY,GAAG,WAAW,CAAA,CAAC,CAAC;QAC/D,IAAI,YAAY,KAAK,OAAO,MAAM,CAAC,YAAY,GAAG,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA,CAAC,CAAC,EAC5G,eAAe,iBAAA,EACf,IAAI,MAAM;YACR,OAAO;gBACL,MAAM,EAAE,gBAAgB,CAAC,MAAM,GAAG,CAAC,eAAe,GAAG,WAAW,CAAC;gBACjE,KAAK,EAAE,gBAAgB,CAAC,KAAK;aAC9B,CAAA;QACH,CAAC,EACD,WAAW,EAAE;YACX,KAAK,EAAE;gBACL,QAAQ,EAAE,GAAG;gBACb,IAAI,EAAE,QAAQ;aACf;SACF,EACD,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,MAAM,EAAE,EAAE;aACX;YACD,OAAO,EAAE;gBACP,MAAM,EAAE,EAAE;aACX;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,EAAE;aACX;SACF,IACF;AACH,CAAC;AAjDD,oDAiDC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codeleap/mobile",
3
- "version": "2.3.0",
3
+ "version": "2.3.2",
4
4
  "main": "src/index.ts",
5
5
  "license": "UNLICENSED",
6
6
  "repository": {
@@ -0,0 +1,32 @@
1
+ import { ComponentVariants, getNestedStylesByKey, useDefaultComponentStyle } from '@codeleap/common'
2
+ import React from 'react'
3
+ import { StyleSheet } from 'react-native'
4
+ import { StylesOf } from '../../types'
5
+ import { Icon, IconProps } from '../Icon'
6
+ import { Touchable, TouchableProps } from '../Touchable'
7
+ import { ActionIconComposition, ActionIconStyles } from './styles'
8
+
9
+ export type ActionIconProps= {
10
+ iconProps?: Partial<IconProps>
11
+ icon?: IconProps['name']
12
+ styles?: StylesOf<ActionIconComposition>
13
+ } & Omit<TouchableProps, 'styles' | 'variants'> & ComponentVariants<typeof ActionIconStyles>
14
+
15
+ export const ActionIcon:React.FC<ActionIconProps> = (props) => {
16
+ const { icon, iconProps, variants, styles, children, ...touchableProps } = props
17
+ const variantStyles = useDefaultComponentStyle<'u:ActionIcon', typeof ActionIconStyles>('u:ActionIcon', {
18
+ variants, styles, transform: StyleSheet.flatten,
19
+ })
20
+ const touchableStyles = getNestedStylesByKey('touchable', variantStyles)
21
+
22
+ return <Touchable styles={touchableStyles} {...touchableProps}>
23
+ <Icon name={icon} style={
24
+ [
25
+ variantStyles.icon,
26
+ touchableProps?.disabled && variantStyles['icon:disabled'],
27
+ ]} {...iconProps}/>
28
+ {children}
29
+ </Touchable>
30
+ }
31
+
32
+ export * from './styles'
@@ -0,0 +1,97 @@
1
+ import { createDefaultVariantFactory, includePresets } from '@codeleap/common'
2
+ import { TouchableComposition } from '../Touchable'
3
+
4
+ export type ActionIconParts = 'icon' | `touchable${Capitalize<TouchableComposition>}`
5
+ export type ActionIconStates = ':disabled' | ''
6
+ export type ActionIconComposition = `${ActionIconParts}${ActionIconStates}`
7
+ const createActionIconStyle = createDefaultVariantFactory<ActionIconComposition>()
8
+
9
+ const presets = includePresets((style) => createActionIconStyle(() => ({ touchableWrapper: style })))
10
+
11
+ export const ActionIconStyles = {
12
+ ...presets,
13
+ default: createActionIconStyle((theme) => {
14
+
15
+ return {
16
+ icon: {
17
+ color: theme.colors.icon,
18
+ ...theme.sized(5 * 0.6),
19
+
20
+ },
21
+ touchableWrapper: {
22
+ ...theme.sized(5),
23
+ borderRadius: theme.borderRadius.round,
24
+ ...theme.presets.center,
25
+ },
26
+ 'icon:disabled': {
27
+ color: theme.colors.disabled,
28
+ },
29
+
30
+ }
31
+ }),
32
+ originalColor: createActionIconStyle(theme => ({
33
+ icon: {
34
+ color: 'auto',
35
+ },
36
+ })),
37
+ small: createActionIconStyle((theme) => ({
38
+ touchableWrapper: {
39
+ ...theme.sized(3.5),
40
+
41
+ },
42
+ icon: {
43
+ ...theme.sized(3.5 * 0.6),
44
+
45
+ },
46
+ })),
47
+ large: createActionIconStyle((theme) => ({
48
+ touchableWrapper: {
49
+ ...theme.sized(6.5),
50
+
51
+ },
52
+ icon: {
53
+ ...theme.sized(6.5 * 0.6),
54
+
55
+ },
56
+ })),
57
+ primary: createActionIconStyle((theme) => ({
58
+ icon: {
59
+ color: theme.colors.primary,
60
+
61
+ },
62
+
63
+ })),
64
+ negative: createActionIconStyle((theme) => ({
65
+ icon: {
66
+ color: theme.colors.negative,
67
+
68
+ },
69
+
70
+ })),
71
+ positive: createActionIconStyle((theme) => ({
72
+ icon: {
73
+ color: theme.colors.positive,
74
+
75
+ },
76
+
77
+ })),
78
+ black: createActionIconStyle((theme) => ({
79
+ icon: {
80
+ color: theme.colors.black,
81
+
82
+ },
83
+
84
+ })),
85
+ white: createActionIconStyle((theme) => ({
86
+ icon: {
87
+ color: theme.colors.white,
88
+
89
+ },
90
+
91
+ })),
92
+ neutral: createActionIconStyle((theme) => ({
93
+ icon: {
94
+ color: theme.colors.neutral,
95
+ },
96
+ })),
97
+ }
@@ -0,0 +1,50 @@
1
+ import * as React from 'react'
2
+ import { ComponentPropsWithoutRef, forwardRef } from 'react'
3
+ import { ActivityIndicator as Indicator, StyleSheet } from 'react-native'
4
+ import {
5
+
6
+ useDefaultComponentStyle,
7
+ ComponentVariants,
8
+ useCodeleapContext,
9
+ } from '@codeleap/common'
10
+ import { StylesOf } from '../../types'
11
+ import {
12
+ ActivityIndicatorComposition,
13
+ ActivityIndicatorStyles,
14
+ } from './styles'
15
+
16
+ export * from './styles'
17
+ export type ActivityIndicatorProps = ComponentPropsWithoutRef<
18
+ typeof Indicator
19
+ > & {
20
+ variants?: ComponentVariants<typeof ActivityIndicatorStyles>['variants']
21
+ styles?: StylesOf<ActivityIndicatorComposition>
22
+ }
23
+
24
+ export const ActivityIndicator = forwardRef<Indicator, ActivityIndicatorProps>(
25
+ (activityIndicatorProps, ref) => {
26
+ const { variants = [], style, styles: propStyles, ...props } = activityIndicatorProps
27
+
28
+ const variantStyles = useDefaultComponentStyle('ActivityIndicator', {
29
+ variants,
30
+ transform: StyleSheet.flatten,
31
+ styles: propStyles,
32
+ })
33
+
34
+ const { Theme } = useCodeleapContext()
35
+
36
+ const styles = StyleSheet.flatten([variantStyles.wrapper, style])
37
+ const color = styles?.color || Theme.colors.gray
38
+ const size = styles?.height || styles?.width || 'large'
39
+
40
+ return (
41
+ <Indicator
42
+ size={size}
43
+ ref={ref}
44
+ color={color}
45
+ style={styles}
46
+ {...props}
47
+ />
48
+ )
49
+ },
50
+ )
@@ -0,0 +1,68 @@
1
+ import { createDefaultVariantFactory, includePresets } from '@codeleap/common'
2
+
3
+ export type ActivityIndicatorComposition =
4
+ | 'wrapper'
5
+ | 'backCircle'
6
+ | 'frontCircle'
7
+ | 'circle'
8
+
9
+ const createActivityIndicatorStyle =
10
+ createDefaultVariantFactory<ActivityIndicatorComposition>()
11
+
12
+ const presets = includePresets((styles) => createActivityIndicatorStyle(() => ({ wrapper: styles })),
13
+ )
14
+
15
+ export const getActivityIndicatorBaseStyles = (size:number) => {
16
+ const sizes = {
17
+ height: size,
18
+ width: size,
19
+ borderWidth: size * 0.25,
20
+ }
21
+
22
+ return {
23
+ wrapper: {
24
+ position: 'relative',
25
+ ...sizes,
26
+ } as any,
27
+ circle: {
28
+ borderRadius: 100,
29
+ position: 'absolute',
30
+ borderStyle: 'solid',
31
+ top: 0,
32
+ bottom: 0,
33
+ left: 0,
34
+ right: 0,
35
+ } as any,
36
+ backCircle: {
37
+
38
+ // borderColor: theme.colors.primary,
39
+ minWidth: '100%',
40
+ opacity: 0.5,
41
+ } as any,
42
+ frontCircle: {
43
+ position: 'absolute',
44
+ borderColor: 'transparent',
45
+ // borderTopColor: theme.colors.primary,
46
+ } as any,
47
+ }
48
+ }
49
+
50
+ export const ActivityIndicatorStyles = {
51
+ ...presets,
52
+ default: createActivityIndicatorStyle((theme) => {
53
+ const baseStyles = getActivityIndicatorBaseStyles(35)
54
+
55
+ return {
56
+ ...baseStyles,
57
+ backCircle: {
58
+ ...baseStyles.backCircle,
59
+ borderColor: theme.colors.primary,
60
+ },
61
+ frontCircle: {
62
+ ...baseStyles.frontCircle,
63
+ borderTopColor: theme.colors.primary,
64
+ },
65
+ }
66
+
67
+ }),
68
+ }
@@ -0,0 +1,34 @@
1
+ import { onUpdate } from '@codeleap/common'
2
+ import React, { useRef } from 'react'
3
+
4
+ import posed from 'react-native-pose'
5
+ import { Touchable } from './Touchable'
6
+ import { View } from './View'
7
+ const Components = {
8
+ Touchable,
9
+ View,
10
+ }
11
+
12
+ const PosedComponents = Object.fromEntries(
13
+ Object.entries(Components).map(([key, Render]) => [key, posed(Render)]),
14
+ )
15
+
16
+ type AnimatedComponents = typeof Components
17
+ type CP = keyof AnimatedComponents
18
+
19
+ type AnimatedProps<T extends CP, CFG = Record<string, any>> = {
20
+ component: T
21
+ config: CFG
22
+ pose: keyof CFG
23
+ initialPose?: keyof CFG
24
+ } & Omit<Parameters<AnimatedComponents[T]>[0], 'component'>
25
+
26
+ export const Animated = <T extends CP, CFG = any>({
27
+ config,
28
+ component,
29
+ ...props
30
+ }: AnimatedProps<T, CFG>) => {
31
+ const Component = useRef(PosedComponents[component](config)).current
32
+
33
+ return <Component withParent={false} {...props} />
34
+ }