ripal-ui 1.0.1 → 1.0.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.
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _reactNative = require("react-native");
10
+ var _elements = require("../elements");
11
+ var _config = _interopRequireDefault(require("../config"));
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
13
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
14
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
15
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
16
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
19
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
20
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
21
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
22
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
23
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
24
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
25
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
26
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
27
+ var _Dimensions$get = _reactNative.Dimensions.get('window'),
28
+ screenHeight = _Dimensions$get.height;
29
+ var BottomSheet = function BottomSheet(_ref) {
30
+ var isVisible = _ref.isVisible,
31
+ onClose = _ref.onClose,
32
+ children = _ref.children,
33
+ _ref$height = _ref.height,
34
+ height = _ref$height === void 0 ? 'auto' : _ref$height,
35
+ _ref$scroll = _ref.scroll,
36
+ scroll = _ref$scroll === void 0 ? false : _ref$scroll,
37
+ style = _ref.style,
38
+ contentContainerStyle = _ref.contentContainerStyle;
39
+ var _useState = (0, _react.useState)(isVisible),
40
+ _useState2 = _slicedToArray(_useState, 2),
41
+ visible = _useState2[0],
42
+ setVisible = _useState2[1];
43
+ var translateY = (0, _react.useRef)(new _reactNative.Animated.Value(screenHeight)).current;
44
+ var scrollOffset = (0, _react.useRef)(0); // Keep track of ScrollView offset
45
+ var keyboardHeight = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current; // Use Animated.Value for keyboard height
46
+
47
+ // Create a PanResponder to handle the dragging gesture
48
+ var panResponder = (0, _react.useRef)(_reactNative.PanResponder.create({
49
+ onMoveShouldSetPanResponder: function onMoveShouldSetPanResponder(evt, gestureState) {
50
+ return Math.abs(gestureState.dy) > 5;
51
+ },
52
+ onPanResponderMove: function onPanResponderMove(evt, gestureState) {
53
+ translateY.setValue(Math.max(gestureState.dy, 0));
54
+ },
55
+ onPanResponderRelease: function onPanResponderRelease(evt, gestureState) {
56
+ var isClosing = gestureState.dy > 100;
57
+ if (isClosing) {
58
+ _reactNative.Animated.timing(translateY, {
59
+ toValue: screenHeight,
60
+ duration: 300,
61
+ useNativeDriver: false
62
+ }).start(function () {
63
+ return setVisible(false);
64
+ });
65
+ onClose();
66
+ } else {
67
+ _reactNative.Animated.timing(translateY, {
68
+ toValue: 0,
69
+ duration: 300,
70
+ useNativeDriver: false
71
+ }).start();
72
+ }
73
+ }
74
+ })).current;
75
+ (0, _react.useEffect)(function () {
76
+ if (isVisible) {
77
+ setVisible(true);
78
+ _reactNative.Animated.timing(translateY, {
79
+ toValue: 0,
80
+ duration: 300,
81
+ useNativeDriver: false
82
+ }).start();
83
+ } else {
84
+ _reactNative.Animated.timing(translateY, {
85
+ toValue: screenHeight,
86
+ duration: 300,
87
+ useNativeDriver: false
88
+ }).start(function () {
89
+ return setVisible(false);
90
+ });
91
+ }
92
+ }, [isVisible]);
93
+ (0, _react.useEffect)(function () {
94
+ // Handle keyboard show and hide
95
+ var keyboardDidShowListener = _reactNative.Keyboard.addListener('keyboardDidShow', function (event) {
96
+ _reactNative.Animated.timing(keyboardHeight, {
97
+ toValue: event.endCoordinates.height,
98
+ duration: 300,
99
+ useNativeDriver: false // Layout animation
100
+ }).start();
101
+ });
102
+ var keyboardDidHideListener = _reactNative.Keyboard.addListener('keyboardDidHide', function () {
103
+ _reactNative.Animated.timing(keyboardHeight, {
104
+ toValue: 0,
105
+ duration: 300,
106
+ useNativeDriver: false // Layout animation
107
+ }).start();
108
+ });
109
+
110
+ // Cleanup listeners on component unmount
111
+ return function () {
112
+ keyboardDidShowListener.remove();
113
+ keyboardDidHideListener.remove();
114
+ };
115
+ }, []);
116
+ if (!visible) return null;
117
+ return /*#__PURE__*/_react["default"].createElement(_reactNative.View, {
118
+ style: _reactNative.StyleSheet.absoluteFill
119
+ }, /*#__PURE__*/_react["default"].createElement(_reactNative.TouchableWithoutFeedback, {
120
+ onPress: function onPress() {
121
+ return onClose();
122
+ }
123
+ }, /*#__PURE__*/_react["default"].createElement(_reactNative.View, {
124
+ style: styles.overlay
125
+ })), /*#__PURE__*/_react["default"].createElement(_reactNative.Animated.View, _extends({}, panResponder.panHandlers, {
126
+ style: [styles.sheet, _objectSpread({
127
+ height: height
128
+ }, style), {
129
+ transform: [{
130
+ translateY: translateY
131
+ }, {
132
+ translateY: keyboardHeight.interpolate({
133
+ inputRange: [0, 1],
134
+ outputRange: [0, -1] // Interpolate for smoother transition
135
+ })
136
+ }]
137
+ }]
138
+ }), /*#__PURE__*/_react["default"].createElement(_reactNative.View, {
139
+ style: styles.dragIndicatorContainer
140
+ }, /*#__PURE__*/_react["default"].createElement(_reactNative.TouchableWithoutFeedback, panResponder.panHandlers, /*#__PURE__*/_react["default"].createElement(_elements.Separator, {
141
+ height: 6,
142
+ style: {
143
+ borderRadius: 99
144
+ },
145
+ width: "12%",
146
+ color: _config["default"].colors.slate[300]
147
+ }))), /*#__PURE__*/_react["default"].createElement(_reactNative.TouchableWithoutFeedback, {
148
+ onPress: _reactNative.Keyboard.dismiss
149
+ }, /*#__PURE__*/_react["default"].createElement(_reactNative.View, null, scroll ? /*#__PURE__*/_react["default"].createElement(_reactNative.ScrollView, {
150
+ onScroll: function onScroll(e) {
151
+ return scrollOffset.current = e.nativeEvent.contentOffset.y;
152
+ } // Update scrollOffset correctly
153
+ ,
154
+ scrollEventThrottle: 16,
155
+ showsVerticalScrollIndicator: false,
156
+ contentContainerStyle: contentContainerStyle
157
+ }, children) : children))));
158
+ };
159
+ var styles = _reactNative.StyleSheet.create({
160
+ overlay: _objectSpread(_objectSpread({}, _reactNative.StyleSheet.absoluteFillObject), {}, {
161
+ backgroundColor: 'rgba(0, 0, 0, 0.7)' // Semi-transparent black
162
+ }),
163
+ sheet: {
164
+ position: 'absolute',
165
+ bottom: 0,
166
+ left: 0,
167
+ right: 0,
168
+ paddingHorizontal: 20,
169
+ paddingBottom: 20,
170
+ backgroundColor: '#fff',
171
+ borderTopLeftRadius: 20,
172
+ borderTopRightRadius: 20,
173
+ elevation: 5
174
+ },
175
+ content: {
176
+ flex: 1,
177
+ justifyContent: 'center',
178
+ alignItems: 'center'
179
+ },
180
+ dragIndicatorContainer: {
181
+ width: '100%',
182
+ alignItems: 'center',
183
+ paddingVertical: 10
184
+ }
185
+ });
186
+ var _default = exports["default"] = BottomSheet;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CarouselItem = exports.Carousel = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _elements = require("../elements");
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
11
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
12
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
13
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
14
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
15
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
16
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
17
+ var CarouselItem = exports.CarouselItem = function CarouselItem(_ref) {
18
+ var children = _ref.children,
19
+ itemWidth = _ref.itemWidth,
20
+ onPress = _ref.onPress,
21
+ style = _ref.style;
22
+ return /*#__PURE__*/_react["default"].createElement(_reactNative.Pressable, {
23
+ style: _objectSpread({
24
+ width: itemWidth
25
+ }, style),
26
+ onPress: onPress
27
+ }, children);
28
+ };
29
+ var Carousel = exports.Carousel = function Carousel(_ref2) {
30
+ var children = _ref2.children,
31
+ _ref2$itemWidth = _ref2.itemWidth,
32
+ itemWidth = _ref2$itemWidth === void 0 ? 60 / 100 * _reactNative.Dimensions.get('window').width : _ref2$itemWidth,
33
+ _ref2$showIndicator = _ref2.showIndicator,
34
+ showIndicator = _ref2$showIndicator === void 0 ? false : _ref2$showIndicator;
35
+ return /*#__PURE__*/_react["default"].createElement(_reactNative.ScrollView, {
36
+ horizontal: true,
37
+ showsHorizontalScrollIndicator: showIndicator,
38
+ contentContainerStyle: styles.container
39
+ }, /*#__PURE__*/_react["default"].createElement(_reactNative.View, null), _react["default"].Children.map(children, function (child) {
40
+ return /*#__PURE__*/_react["default"].cloneElement(child, {
41
+ itemWidth: itemWidth
42
+ });
43
+ }), /*#__PURE__*/_react["default"].createElement(_reactNative.View, null));
44
+ };
45
+ var styles = _reactNative.StyleSheet.create({
46
+ area: {
47
+ //
48
+ },
49
+ container: {
50
+ gap: 20
51
+ }
52
+ });
package/dist/Toast.js ADDED
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _Inline = _interopRequireDefault(require("./Inline"));
10
+ var _Text = _interopRequireDefault(require("./Text"));
11
+ var _config = _interopRequireDefault(require("../config"));
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
13
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
14
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
15
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
16
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
17
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
18
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
19
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
20
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
21
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
22
+ var Toast = function Toast(_ref) {
23
+ var _ref$label = _ref.label,
24
+ label = _ref$label === void 0 ? "Percakapan berhasil dihapus" : _ref$label,
25
+ _ref$right = _ref.right,
26
+ right = _ref$right === void 0 ? null : _ref$right,
27
+ _ref$visible = _ref.visible,
28
+ visible = _ref$visible === void 0 ? true : _ref$visible,
29
+ setVisible = _ref.setVisible,
30
+ _ref$timeout = _ref.timeout,
31
+ timeout = _ref$timeout === void 0 ? 3000 : _ref$timeout,
32
+ containerStyle = _ref.containerStyle,
33
+ style = _ref.style,
34
+ textProps = _ref.textProps;
35
+ (0, _react.useEffect)(function () {
36
+ if (visible) {
37
+ var to = setTimeout(function () {
38
+ setVisible(false);
39
+ }, timeout);
40
+ return function () {
41
+ return clearTimeout(to);
42
+ };
43
+ }
44
+ }, [visible]);
45
+ return visible ? /*#__PURE__*/_react["default"].createElement(_reactNative.View, {
46
+ style: _objectSpread(_objectSpread({}, styles.container), containerStyle)
47
+ }, /*#__PURE__*/_react["default"].createElement(_Inline["default"], {
48
+ style: styles.area
49
+ }, /*#__PURE__*/_react["default"].createElement(_Text["default"], _extends({
50
+ size: 12,
51
+ style: {
52
+ flexGrow: 1
53
+ },
54
+ color: "#fff"
55
+ }, textProps), label), right)) : null;
56
+ };
57
+ var styles = _reactNative.StyleSheet.create({
58
+ container: {
59
+ position: 'absolute',
60
+ bottom: 0,
61
+ left: 0,
62
+ right: 0,
63
+ padding: 20
64
+ },
65
+ area: {
66
+ backgroundColor: _config["default"].colors.slate[800],
67
+ borderRadius: 999,
68
+ padding: 20,
69
+ paddingHorizontal: 30
70
+ }
71
+ });
72
+ var _default = exports["default"] = Toast;
package/dist/index.js CHANGED
@@ -3,32 +3,94 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- Object.defineProperty(exports, "Circle", {
6
+ Object.defineProperty(exports, "Button", {
7
7
  enumerable: true,
8
8
  get: function get() {
9
- return _Circle["default"];
9
+ return _Button["default"];
10
10
  }
11
11
  });
12
- Object.defineProperty(exports, "DatePicker", {
12
+ Object.defineProperty(exports, "Dialog", {
13
13
  enumerable: true,
14
14
  get: function get() {
15
- return _DatePicker["default"];
15
+ return _Dialog.Dialog;
16
16
  }
17
17
  });
18
- Object.defineProperty(exports, "Tab", {
18
+ Object.defineProperty(exports, "DialogActions", {
19
19
  enumerable: true,
20
20
  get: function get() {
21
- return _Tab["default"];
21
+ return _Dialog.DialogActions;
22
22
  }
23
23
  });
24
- Object.defineProperty(exports, "Table", {
24
+ Object.defineProperty(exports, "Dropdown", {
25
25
  enumerable: true,
26
26
  get: function get() {
27
- return _Table["default"];
27
+ return _Dropdown["default"];
28
28
  }
29
29
  });
30
- var _Circle = _interopRequireDefault(require("./Circle"));
31
- var _DatePicker = _interopRequireDefault(require("./DatePicker"));
32
- var _Tab = _interopRequireDefault(require("./Tab"));
33
- var _Table = _interopRequireDefault(require("./Table"));
30
+ Object.defineProperty(exports, "Inline", {
31
+ enumerable: true,
32
+ get: function get() {
33
+ return _Inline["default"];
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "Input", {
37
+ enumerable: true,
38
+ get: function get() {
39
+ return _Input["default"];
40
+ }
41
+ });
42
+ Object.defineProperty(exports, "ProgressBar", {
43
+ enumerable: true,
44
+ get: function get() {
45
+ return _ProgressBar["default"];
46
+ }
47
+ });
48
+ Object.defineProperty(exports, "Separator", {
49
+ enumerable: true,
50
+ get: function get() {
51
+ return _Separator["default"];
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "Skeleton", {
55
+ enumerable: true,
56
+ get: function get() {
57
+ return _Skeleton["default"];
58
+ }
59
+ });
60
+ Object.defineProperty(exports, "Switch", {
61
+ enumerable: true,
62
+ get: function get() {
63
+ return _Switch["default"];
64
+ }
65
+ });
66
+ Object.defineProperty(exports, "Text", {
67
+ enumerable: true,
68
+ get: function get() {
69
+ return _Text["default"];
70
+ }
71
+ });
72
+ Object.defineProperty(exports, "Toast", {
73
+ enumerable: true,
74
+ get: function get() {
75
+ return _Toast["default"];
76
+ }
77
+ });
78
+ Object.defineProperty(exports, "Toggle", {
79
+ enumerable: true,
80
+ get: function get() {
81
+ return _Toggle["default"];
82
+ }
83
+ });
84
+ var _Button = _interopRequireDefault(require("./Button"));
85
+ var _Dialog = require("./Dialog");
86
+ var _Dropdown = _interopRequireDefault(require("./Dropdown"));
87
+ var _Inline = _interopRequireDefault(require("./Inline"));
88
+ var _Input = _interopRequireDefault(require("./Input"));
89
+ var _ProgressBar = _interopRequireDefault(require("./ProgressBar"));
90
+ var _Separator = _interopRequireDefault(require("./Separator"));
91
+ var _Skeleton = _interopRequireDefault(require("./Skeleton"));
92
+ var _Switch = _interopRequireDefault(require("./Switch"));
93
+ var _Text = _interopRequireDefault(require("./Text"));
94
+ var _Toast = _interopRequireDefault(require("./Toast"));
95
+ var _Toggle = _interopRequireDefault(require("./Toggle"));
34
96
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
@@ -1,36 +1,51 @@
1
- import React from 'react';
2
- import { TouchableOpacity, StyleSheet } from 'react-native';
1
+ import React, { FC } from 'react';
2
+ import { TouchableOpacity, StyleSheet, ViewStyle } from 'react-native';
3
3
  import config from '../config';
4
4
  import Text from './Text';
5
5
 
6
- const Button = ({
7
- children,
8
- accent = 'primary',
9
- onPress, onLongPress,
10
- color = config.colors.primary,
11
- height = 50,
12
- circle = false,
13
- justifyContent = 'center',
14
- style, textProps
6
+ interface ButtonProps {
7
+ children: React.ReactNode;
8
+ accent?: 'primary' | 'secondary' | 'tertiary';
9
+ onPress?: () => void;
10
+ onLongPress?: () => void;
11
+ color?: string;
12
+ height?: number;
13
+ circle?: boolean;
14
+ justifyContent?: ViewStyle['justifyContent'];
15
+ style?: ViewStyle;
16
+ textProps?: Record<string, unknown>;
17
+ }
18
+
19
+ const Button: FC<ButtonProps> = ({
20
+ children,
21
+ accent = 'primary',
22
+ onPress,
23
+ onLongPress,
24
+ color = config.colors.primary,
25
+ height = 50,
26
+ circle = false,
27
+ justifyContent = 'center',
28
+ style,
29
+ textProps
15
30
  }) => {
16
- const getAccentStyle = () => {
31
+ const getAccentStyle = (): ViewStyle => {
17
32
  switch (accent) {
18
33
  case 'primary':
19
34
  return {
20
35
  backgroundColor: color,
21
36
  borderColor: color,
22
- color: '#fff',
37
+ // color: '#fff',
23
38
  };
24
39
  case 'secondary':
25
40
  return {
26
41
  backgroundColor: '#fff',
27
42
  borderColor: color,
28
- color: color,
43
+ // color: color,
29
44
  };
30
45
  case 'tertiary':
31
46
  return {
32
47
  backgroundColor: '#fff',
33
- color: color,
48
+ // color: color,
34
49
  borderColor: config.colors.transparent
35
50
  };
36
51
  default:
@@ -38,7 +53,7 @@ const Button = ({
38
53
  }
39
54
  };
40
55
 
41
- const getColorStyle = () => {
56
+ const getColorStyle = (): ViewStyle => {
42
57
  switch (color) {
43
58
  case 'red':
44
59
  return { backgroundColor: '#e74c3c', borderColor: '#e74c3c' };
@@ -56,19 +71,26 @@ const Button = ({
56
71
  onPress={onPress}
57
72
  onLongPress={onLongPress}
58
73
  style={[
59
- styles.button,
60
- getAccentStyle(),
74
+ styles.button,
75
+ getAccentStyle(),
61
76
  getColorStyle(),
62
- {
63
- height: height,
64
- aspectRatio: circle ? 1 : 'auto',
65
- borderRadius: circle ? 999 : 12,
66
- justifyContent: justifyContent,
67
- ...style
77
+ {
78
+ height: height,
79
+ aspectRatio: circle ? 1 : undefined,
80
+ borderRadius: circle ? 999 : 12,
81
+ justifyContent: justifyContent,
82
+ ...style,
68
83
  }
69
84
  ]}
70
85
  >
71
- <Text {...textProps} color={accent === "primary" ? "#fff" : color} style={styles.text} weight='600SemiBold'>{children}</Text>
86
+ <Text
87
+ {...textProps}
88
+ color={accent === "primary" ? "#fff" : color}
89
+ style={styles.text}
90
+ weight='600SemiBold'
91
+ >
92
+ {children}
93
+ </Text>
72
94
  </TouchableOpacity>
73
95
  );
74
96
  };
@@ -77,7 +99,7 @@ const styles = StyleSheet.create({
77
99
  button: {
78
100
  paddingHorizontal: 20,
79
101
  height: 50,
80
- borderRadius: 8,
102
+ borderRadius: 12,
81
103
  fontWeight: '600',
82
104
  fontSize: 14,
83
105
  display: 'flex',
@@ -86,6 +108,9 @@ const styles = StyleSheet.create({
86
108
  justifyContent: 'center',
87
109
  borderWidth: 1,
88
110
  },
111
+ text: {
112
+ // Adjust text style here if necessary
113
+ }
89
114
  });
90
115
 
91
116
  export default Button;
@@ -0,0 +1,87 @@
1
+ import React from "react";
2
+ import { Pressable, StyleSheet, View, TouchableOpacity, ViewStyle } from "react-native";
3
+ import config from "../config";
4
+ import Text from "./Text";
5
+ import Inline from "./Inline";
6
+
7
+ interface DialogActionsProps {
8
+ children: React.ReactNode;
9
+ }
10
+
11
+ const DialogActions: React.FC<DialogActionsProps> = ({ children }) => {
12
+ return (
13
+ <Inline
14
+ justifyContent="flex-end"
15
+ gap={0}
16
+ style={{
17
+ ...styles.action_area,
18
+ paddingTop: 20,
19
+ marginTop: 20 / 2,
20
+ }}
21
+ >
22
+ {children}
23
+ </Inline>
24
+ );
25
+ };
26
+
27
+ interface DialogProps {
28
+ spacer?: number;
29
+ children: React.ReactNode;
30
+ visible: boolean;
31
+ onDismiss: () => void;
32
+ }
33
+
34
+ const Dialog: React.FC<DialogProps> = ({ spacer = 20, children, visible, onDismiss }) => {
35
+ if (visible) {
36
+ return (
37
+ <>
38
+ <TouchableOpacity style={styles.overlay} />
39
+ <Pressable style={styles.container} onPress={onDismiss}>
40
+ <Pressable
41
+ style={{
42
+ ...styles.content,
43
+ padding: spacer,
44
+ gap: spacer / 2,
45
+ }}
46
+ >
47
+ {children}
48
+ </Pressable>
49
+ </Pressable>
50
+ </>
51
+ );
52
+ }
53
+ return null; // Return null when not visible
54
+ };
55
+
56
+ const styles = StyleSheet.create({
57
+ overlay: {
58
+ backgroundColor: `#000000aa`,
59
+ position: 'absolute',
60
+ top: 0,
61
+ left: 0,
62
+ right: 0,
63
+ bottom: 0,
64
+ zIndex: 10,
65
+ },
66
+ container: {
67
+ position: 'absolute',
68
+ top: 0,
69
+ left: 0,
70
+ right: 0,
71
+ bottom: 0,
72
+ zIndex: 15,
73
+ alignItems: 'center',
74
+ justifyContent: 'center',
75
+ },
76
+ content: {
77
+ backgroundColor: '#fff',
78
+ width: '90%',
79
+ borderRadius: 12,
80
+ },
81
+ action_area: {
82
+ borderTopWidth: 1,
83
+ borderTopColor: config.colors.slate[200],
84
+ },
85
+ });
86
+
87
+ export { Dialog, DialogActions };