@hedia/recommendation-screen 3.0.0 → 3.0.1-alpha.1

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 (139) hide show
  1. package/lib/commonjs/Recommendation.js +272 -0
  2. package/lib/commonjs/Recommendation.js.map +1 -0
  3. package/lib/commonjs/assets/icons/Apple.js +28 -0
  4. package/lib/commonjs/assets/icons/Apple.js.map +1 -0
  5. package/lib/commonjs/assets/icons/Blood.js +27 -0
  6. package/lib/commonjs/assets/icons/Blood.js.map +1 -0
  7. package/lib/commonjs/assets/icons/ChevronDown.js +24 -0
  8. package/lib/commonjs/assets/icons/ChevronDown.js.map +1 -0
  9. package/lib/commonjs/assets/icons/ChevronUp.js +25 -0
  10. package/lib/commonjs/assets/icons/ChevronUp.js.map +1 -0
  11. package/lib/commonjs/assets/icons/Edit.js +27 -0
  12. package/lib/commonjs/assets/icons/Edit.js.map +1 -0
  13. package/lib/commonjs/assets/icons/Injection.js +28 -0
  14. package/lib/commonjs/assets/icons/Injection.js.map +1 -0
  15. package/lib/{module → commonjs}/assets/icons/Run.js +20 -11
  16. package/lib/commonjs/assets/icons/Run.js.map +1 -0
  17. package/lib/commonjs/components/AttentionMessages.js +94 -0
  18. package/lib/commonjs/components/AttentionMessages.js.map +1 -0
  19. package/lib/commonjs/components/DottedLine.js +40 -0
  20. package/lib/commonjs/components/DottedLine.js.map +1 -0
  21. package/lib/commonjs/components/ExpandableContainer/ExpandableContainer.js +95 -0
  22. package/lib/commonjs/components/ExpandableContainer/ExpandableContainer.js.map +1 -0
  23. package/lib/commonjs/components/ExpandableContainer/ExpandableItem.js +45 -0
  24. package/lib/commonjs/components/ExpandableContainer/ExpandableItem.js.map +1 -0
  25. package/lib/{module → commonjs}/components/ExpandableContainer/ExpandableStyles.js +16 -9
  26. package/lib/commonjs/components/ExpandableContainer/ExpandableStyles.js.map +1 -0
  27. package/lib/commonjs/components/Footer.js +81 -0
  28. package/lib/commonjs/components/Footer.js.map +1 -0
  29. package/lib/commonjs/components/Header.js +93 -0
  30. package/lib/commonjs/components/Header.js.map +1 -0
  31. package/lib/commonjs/components/Modals/DeleteModal.js +52 -0
  32. package/lib/commonjs/components/Modals/DeleteModal.js.map +1 -0
  33. package/lib/commonjs/components/Modals/LimitationMessageModal.js +88 -0
  34. package/lib/commonjs/components/Modals/LimitationMessageModal.js.map +1 -0
  35. package/lib/commonjs/components/Modals/TimeoutModal.js +54 -0
  36. package/lib/commonjs/components/Modals/TimeoutModal.js.map +1 -0
  37. package/lib/{module → commonjs}/components/Modals/styles.js +20 -13
  38. package/lib/commonjs/components/Modals/styles.js.map +1 -0
  39. package/lib/commonjs/components/RecommendationDisplay.js +119 -0
  40. package/lib/commonjs/components/RecommendationDisplay.js.map +1 -0
  41. package/lib/commonjs/components/Text.js +27 -0
  42. package/lib/commonjs/components/Text.js.map +1 -0
  43. package/lib/commonjs/components/WheelPicker/WheelPicker.js +123 -0
  44. package/lib/commonjs/components/WheelPicker/WheelPicker.js.map +1 -0
  45. package/lib/{module → commonjs}/components/WheelPicker/WheelPicker.styles.js +17 -9
  46. package/lib/commonjs/components/WheelPicker/WheelPicker.styles.js.map +1 -0
  47. package/lib/{module → commonjs}/components/WheelPicker/WheelPickerItem.js +17 -9
  48. package/lib/commonjs/components/WheelPicker/WheelPickerItem.js.map +1 -0
  49. package/lib/commonjs/components/WheelPicker/WheelPickerModal.js +67 -0
  50. package/lib/commonjs/components/WheelPicker/WheelPickerModal.js.map +1 -0
  51. package/lib/commonjs/constants/index.js +91 -0
  52. package/lib/commonjs/constants/index.js.map +1 -0
  53. package/lib/commonjs/hooks/index.js +24 -0
  54. package/lib/commonjs/hooks/index.js.map +1 -0
  55. package/lib/commonjs/index.js +15 -0
  56. package/lib/commonjs/index.js.map +1 -0
  57. package/lib/{module → commonjs}/locales/translate.js +9 -2
  58. package/lib/commonjs/locales/translate.js.map +1 -0
  59. package/lib/{module → commonjs}/styles/colors.js +8 -1
  60. package/lib/commonjs/styles/colors.js.map +1 -0
  61. package/lib/{module → commonjs}/styles/fonts.js +11 -3
  62. package/lib/commonjs/styles/fonts.js.map +1 -0
  63. package/lib/commonjs/styles/index.js +26 -0
  64. package/lib/commonjs/styles/index.js.map +1 -0
  65. package/lib/{module → commonjs}/utils/index.js +25 -12
  66. package/lib/commonjs/utils/index.js.map +1 -0
  67. package/lib/commonjs/validations/index.js +55 -0
  68. package/lib/commonjs/validations/index.js.map +1 -0
  69. package/lib/typescript/components/Footer.d.ts.map +1 -1
  70. package/lib/typescript/components/WheelPicker/WheelPicker.styles.d.ts +1 -0
  71. package/lib/typescript/components/WheelPicker/WheelPicker.styles.d.ts.map +1 -1
  72. package/package.json +101 -103
  73. package/lib/module/Recommendation.js +0 -263
  74. package/lib/module/Recommendation.js.map +0 -1
  75. package/lib/module/assets/icons/Apple.js +0 -19
  76. package/lib/module/assets/icons/Apple.js.map +0 -1
  77. package/lib/module/assets/icons/Blood.js +0 -18
  78. package/lib/module/assets/icons/Blood.js.map +0 -1
  79. package/lib/module/assets/icons/ChevronDown.js +0 -15
  80. package/lib/module/assets/icons/ChevronDown.js.map +0 -1
  81. package/lib/module/assets/icons/ChevronUp.js +0 -16
  82. package/lib/module/assets/icons/ChevronUp.js.map +0 -1
  83. package/lib/module/assets/icons/Edit.js +0 -18
  84. package/lib/module/assets/icons/Edit.js.map +0 -1
  85. package/lib/module/assets/icons/Injection.js +0 -19
  86. package/lib/module/assets/icons/Injection.js.map +0 -1
  87. package/lib/module/assets/icons/Run.js.map +0 -1
  88. package/lib/module/components/AttentionMessages.js +0 -82
  89. package/lib/module/components/AttentionMessages.js.map +0 -1
  90. package/lib/module/components/DottedLine.js +0 -32
  91. package/lib/module/components/DottedLine.js.map +0 -1
  92. package/lib/module/components/ExpandableContainer/ExpandableContainer.js +0 -85
  93. package/lib/module/components/ExpandableContainer/ExpandableContainer.js.map +0 -1
  94. package/lib/module/components/ExpandableContainer/ExpandableItem.js +0 -37
  95. package/lib/module/components/ExpandableContainer/ExpandableItem.js.map +0 -1
  96. package/lib/module/components/ExpandableContainer/ExpandableStyles.js.map +0 -1
  97. package/lib/module/components/Footer.js +0 -64
  98. package/lib/module/components/Footer.js.map +0 -1
  99. package/lib/module/components/Header.js +0 -85
  100. package/lib/module/components/Header.js.map +0 -1
  101. package/lib/module/components/Modals/DeleteModal.js +0 -44
  102. package/lib/module/components/Modals/DeleteModal.js.map +0 -1
  103. package/lib/module/components/Modals/LimitationMessageModal.js +0 -73
  104. package/lib/module/components/Modals/LimitationMessageModal.js.map +0 -1
  105. package/lib/module/components/Modals/TimeoutModal.js +0 -46
  106. package/lib/module/components/Modals/TimeoutModal.js.map +0 -1
  107. package/lib/module/components/Modals/styles.js.map +0 -1
  108. package/lib/module/components/RecommendationDisplay.js +0 -111
  109. package/lib/module/components/RecommendationDisplay.js.map +0 -1
  110. package/lib/module/components/Text.js +0 -18
  111. package/lib/module/components/Text.js.map +0 -1
  112. package/lib/module/components/WheelPicker/WheelPicker.js +0 -113
  113. package/lib/module/components/WheelPicker/WheelPicker.js.map +0 -1
  114. package/lib/module/components/WheelPicker/WheelPicker.styles.js.map +0 -1
  115. package/lib/module/components/WheelPicker/WheelPickerItem.js.map +0 -1
  116. package/lib/module/components/WheelPicker/WheelPickerModal.js +0 -59
  117. package/lib/module/components/WheelPicker/WheelPickerModal.js.map +0 -1
  118. package/lib/module/constants/index.js +0 -71
  119. package/lib/module/constants/index.js.map +0 -1
  120. package/lib/module/hooks/index.js +0 -18
  121. package/lib/module/hooks/index.js.map +0 -1
  122. package/lib/module/index.js +0 -3
  123. package/lib/module/index.js.map +0 -1
  124. package/lib/module/locales/translate.js.map +0 -1
  125. package/lib/module/styles/colors.js.map +0 -1
  126. package/lib/module/styles/fonts.js.map +0 -1
  127. package/lib/module/styles/index.js +0 -4
  128. package/lib/module/styles/index.js.map +0 -1
  129. package/lib/module/utils/index.js.map +0 -1
  130. package/lib/module/validations/index.js +0 -45
  131. package/lib/module/validations/index.js.map +0 -1
  132. /package/lib/{module → commonjs}/assets/lottie/background_editing.json +0 -0
  133. /package/lib/{module → commonjs}/assets/lottie/background_recommendation.json +0 -0
  134. /package/lib/{module → commonjs}/locales/da/translations.json +0 -0
  135. /package/lib/{module → commonjs}/locales/de/translations.json +0 -0
  136. /package/lib/{module → commonjs}/locales/en/translations.json +0 -0
  137. /package/lib/{module → commonjs}/locales/es/translations.json +0 -0
  138. /package/lib/{module → commonjs}/locales/fr/translations.json +0 -0
  139. /package/lib/{module → commonjs}/locales/it/translations.json +0 -0
package/package.json CHANGED
@@ -1,104 +1,102 @@
1
1
  {
2
- "name": "@hedia/recommendation-screen",
3
- "version": "3.0.0",
4
- "description": "Hedia Recommendation Screen for Bolus and Carbohydrates",
5
- "react-native": "src/index.ts",
6
- "source": "src/index.ts",
7
- "module": "lib/module/index.js",
8
- "types": "lib/typescript/index.d.ts",
9
- "files": [
10
- "lib"
11
- ],
12
- "engines": {
13
- "node": ">=16"
14
- },
15
- "scripts": {
16
- "test": "jest --coverage --detectOpenHandles",
17
- "tsc": "tsc --noEmit",
18
- "build": "npm run clean && tsc --build",
19
- "clean": "tsc --build --clean && rm -rf lib/",
20
- "build-guards": "ts-auto-guard src/**/[!index]*.ts",
21
- "eslint": "eslint \"./src/**/**.{ts,tsx}\"",
22
- "eslint:fix": "npm run eslint -- --fix",
23
- "prettier": "prettier --check \"src/**/*.{ts,tsx}\"",
24
- "prettier:fix": "prettier --write \"src/**/*.{ts,tsx}\"",
25
- "pkg-json-lint": "npmPkgJsonLint .",
26
- "package-audit": "npm-audit --critical --warn",
27
- "pipeline": "npm run tsc && npm run eslint && npm run pkg-json-lint && npm run prettier && npm run package-audit",
28
- "prepublishOnly": "npm ci --ignore-scripts --legacy-peer-deps && npm run build",
29
- "postpublish": "npm run clean",
30
- "a": "index-git.sh && cd android && gradlew clean && cd .. && react-native run-android",
31
- "start": "react-native start",
32
- "typedoc": "npx typedoc",
33
- "prepare": "bob build"
34
- },
35
- "keywords": [
36
- "Hedia",
37
- "Bolus",
38
- "Screen",
39
- "Carbs",
40
- "Carbohydrate",
41
- "Insulin"
42
- ],
43
- "author": "Hedia",
44
- "license": "ISC",
45
- "prettier": "@hedia/prettier-config",
46
- "peerDependencies": {
47
- "@hedia/recommendation-calculator": "2.0.15",
48
- "react": "*",
49
- "react-native": "*",
50
- "react-native-modal": "*",
51
- "react-native-svg": "*",
52
- "zod": "*"
53
- },
54
- "devDependencies": {
55
- "@babel/plugin-transform-flow-strip-types": "7.23.3",
56
- "@babel/preset-env": "7.20.2",
57
- "@dotlottie/react-player": "1.6.15",
58
- "@hedia/eslint-config": "2.0.1",
59
- "@hedia/npm-audit-pipeline": "0.5.0",
60
- "@hedia/prettier-config": "1.0.4",
61
- "@hedia/recommendation-calculator": "2.0.15",
62
- "@hedia/tsconfig": "1.1.1",
63
- "@hedia/types": "2.2.1",
64
- "@lottiefiles/react-lottie-player": "3.5.3",
65
- "@testing-library/jest-native": "5.4.3",
66
- "@testing-library/react-native": "12.4.3",
67
- "@types/jest": "29.5.11",
68
- "@types/react": "18.0.24",
69
- "@types/react-test-renderer": "18.0.7",
70
- "@typescript-eslint/eslint-plugin": "6.19.1",
71
- "@typescript-eslint/parser": "6.19.1",
72
- "eslint": "8.56.0",
73
- "eslint-config-prettier": "9.1.0",
74
- "eslint-plugin-react-hooks": "4.6.0",
75
- "eslint-plugin-simple-import-sort": "10.0.0",
76
- "jest": "29.7.0",
77
- "lottie-react-native": "6.5.1",
78
- "metro-react-native-babel-preset": "0.73.10",
79
- "npm-package-json-lint": "7.1.0",
80
- "prettier": "3.2.5",
81
- "react": "18.2.0",
82
- "react-native": "0.71.11",
83
- "react-native-builder-bob": "0.23.1",
84
- "react-native-modal": "13.0.1",
85
- "react-native-svg": "14.1.0",
86
- "react-test-renderer": "18.2.0",
87
- "typedoc": "0.25.7",
88
- "typedoc-plugin-rename-defaults": "0.7.0",
89
- "typescript": "5.3.3",
90
- "zod": "3.22.4"
91
- },
92
- "react-native-builder-bob": {
93
- "source": "src",
94
- "output": "lib",
95
- "targets": [
96
- "typescript",
97
- "module"
98
- ]
99
- },
100
- "eslintIgnore": [
101
- "node_modules/",
102
- "lib/"
103
- ]
104
- }
2
+ "name": "@hedia/recommendation-screen",
3
+ "version": "3.0.1-alpha.1",
4
+ "description": "Hedia Recommendation Screen for Bolus and Carbohydrates",
5
+ "main": "lib/commonjs/index.js",
6
+ "types": "lib/typescript/index.d.ts",
7
+ "files": [
8
+ "lib"
9
+ ],
10
+ "engines": {
11
+ "node": ">=16"
12
+ },
13
+ "scripts": {
14
+ "test": "jest --coverage --detectOpenHandles",
15
+ "tsc": "tsc --noEmit",
16
+ "build": "npm run clean && tsc --build",
17
+ "clean": "tsc --build --clean && rm -rf lib/",
18
+ "build-guards": "ts-auto-guard src/**/[!index]*.ts",
19
+ "eslint": "eslint \"./src/**/**.{ts,tsx}\"",
20
+ "eslint:fix": "npm run eslint -- --fix",
21
+ "prettier": "prettier --check \"src/**/*.{ts,tsx}\"",
22
+ "prettier:fix": "prettier --write \"src/**/*.{ts,tsx}\"",
23
+ "pkg-json-lint": "npmPkgJsonLint .",
24
+ "package-audit": "npm-audit --critical --warn",
25
+ "pipeline": "npm run tsc && npm run eslint && npm run pkg-json-lint && npm run prettier && npm run package-audit",
26
+ "prepublishOnly": "npm ci --ignore-scripts --legacy-peer-deps && npm run build",
27
+ "postpublish": "npm run clean",
28
+ "a": "index-git.sh && cd android && gradlew clean && cd .. && react-native run-android",
29
+ "start": "react-native start",
30
+ "typedoc": "npx typedoc",
31
+ "prepare": "bob build"
32
+ },
33
+ "keywords": [
34
+ "Hedia",
35
+ "Bolus",
36
+ "Screen",
37
+ "Carbs",
38
+ "Carbohydrate",
39
+ "Insulin"
40
+ ],
41
+ "author": "Hedia",
42
+ "license": "ISC",
43
+ "prettier": "@hedia/prettier-config",
44
+ "peerDependencies": {
45
+ "@hedia/recommendation-calculator": "2.0.15",
46
+ "react": "*",
47
+ "react-native": "*",
48
+ "react-native-modal": "*",
49
+ "react-native-svg": "*",
50
+ "zod": "*"
51
+ },
52
+ "devDependencies": {
53
+ "@babel/plugin-transform-flow-strip-types": "7.23.3",
54
+ "@babel/preset-env": "7.20.2",
55
+ "@dotlottie/react-player": "1.6.15",
56
+ "@hedia/eslint-config": "2.0.1",
57
+ "@hedia/npm-audit-pipeline": "0.5.0",
58
+ "@hedia/prettier-config": "1.0.4",
59
+ "@hedia/recommendation-calculator": "2.0.15",
60
+ "@hedia/tsconfig": "1.1.1",
61
+ "@hedia/types": "2.2.1",
62
+ "@lottiefiles/react-lottie-player": "3.5.3",
63
+ "@testing-library/jest-native": "5.4.3",
64
+ "@testing-library/react-native": "12.4.3",
65
+ "@types/jest": "29.5.11",
66
+ "@types/react": "18.0.24",
67
+ "@types/react-test-renderer": "18.0.7",
68
+ "@typescript-eslint/eslint-plugin": "6.19.1",
69
+ "@typescript-eslint/parser": "6.19.1",
70
+ "eslint": "8.56.0",
71
+ "eslint-config-prettier": "9.1.0",
72
+ "eslint-plugin-react-hooks": "4.6.0",
73
+ "eslint-plugin-simple-import-sort": "10.0.0",
74
+ "jest": "29.7.0",
75
+ "lottie-react-native": "6.5.1",
76
+ "metro-react-native-babel-preset": "0.73.10",
77
+ "npm-package-json-lint": "7.1.0",
78
+ "prettier": "3.2.5",
79
+ "react": "18.2.0",
80
+ "react-native": "0.71.11",
81
+ "react-native-builder-bob": "0.23.1",
82
+ "react-native-modal": "13.0.1",
83
+ "react-native-svg": "14.1.0",
84
+ "react-test-renderer": "18.2.0",
85
+ "typedoc": "0.25.7",
86
+ "typedoc-plugin-rename-defaults": "0.7.0",
87
+ "typescript": "5.3.3",
88
+ "zod": "3.22.4"
89
+ },
90
+ "react-native-builder-bob": {
91
+ "source": "src",
92
+ "output": "lib",
93
+ "targets": [
94
+ "typescript",
95
+ "commonjs"
96
+ ]
97
+ },
98
+ "eslintIgnore": [
99
+ "node_modules/",
100
+ "lib/"
101
+ ]
102
+ }
@@ -1,263 +0,0 @@
1
- import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
2
- import { Animated, AppState, LayoutAnimation, Platform, ScrollView, StyleSheet, UIManager, View } from "react-native";
3
- import { calculateRecommendation } from "@hedia/recommendation-calculator";
4
- import { UserSettings } from "@hedia/types";
5
- import AttentionMessages from "./components/AttentionMessages";
6
- import DottedLine from "./components/DottedLine";
7
- import ExpandableContainer from "./components/ExpandableContainer/ExpandableContainer";
8
- import Footer from "./components/Footer";
9
- import Header from "./components/Header";
10
- import DeleteModal from "./components/Modals/DeleteModal";
11
- import LimitationModal from "./components/Modals/LimitationMessageModal";
12
- import TimeoutModal from "./components/Modals/TimeoutModal";
13
- import RecommendationDisplay from "./components/RecommendationDisplay";
14
- import WheelPickerModal from "./components/WheelPicker/WheelPickerModal";
15
- import { CARBOHYDRATES_LIMTS, INSULIN_DOSE_LIMITS, TIMEOUT_MODAL_TRIGGER } from "./constants";
16
- import { loadLocales } from "./locales/translate";
17
- import { COLORS } from "./styles/colors";
18
- import { createSequentialArrayDecimal, createSequentialArrayHalf, createSequentialArrayInteger, roundInsulinValue } from "./utils";
19
- import { recommendationPropsSchema } from "./validations";
20
-
21
- /** Represents both a suggestion by HDA and an actual amount of either insulin or carbohydrates. */
22
-
23
- const RecommendationScreen = props => {
24
- if (Platform.OS === "android") {
25
- UIManager.setLayoutAnimationEnabledExperimental && UIManager.setLayoutAnimationEnabledExperimental(true);
26
- }
27
- const fadeIn = useRef(new Animated.Value(0)).current;
28
- Animated.timing(fadeIn, {
29
- toValue: 1,
30
- duration: 500,
31
- useNativeDriver: Platform.OS !== "web"
32
- }).start();
33
- const {
34
- calculatorParams,
35
- bloodGlucoseUnit,
36
- injectionMethod,
37
- transferToLogbook,
38
- closeCalculation
39
- } = props;
40
- const {
41
- currentBGL,
42
- carbohydrates: carbIntake,
43
- activity
44
- } = calculatorParams;
45
- const recommendationDate = useMemo(() => new Date(), []);
46
- const recommendation = useMemo(() => calculateRecommendation(calculatorParams), [calculatorParams]);
47
- const [isEditingInsulin, setIsEditingInsulin] = useState(false);
48
- const [editedInsulin, setEditedInsulin] = useState(null);
49
- const [isEditingCarbs, setIsEditingCarbs] = useState(false);
50
- const [editedCarbs, setEditedCarbs] = useState(null);
51
- const [isVisibleLimitationModal, setIsVisibleLimitationModal] = useState(recommendation.wasLimited);
52
- const [isVisibleDeleteModal, setIsVisibleDeleteModal] = useState(false);
53
- const [isVisibleTimeoutModal, setIsVisibleTimeoutModal] = useState(false);
54
- const [isDeleteButtonPressed, setIsDeleteButtonPressed] = useState(false);
55
- useEffect(() => {
56
- const timeout = setTimeout(() => setIsVisibleTimeoutModal(true), TIMEOUT_MODAL_TRIGGER);
57
- return () => clearTimeout(timeout);
58
- }, []);
59
- const handleAppStateChange = useCallback(nextAppState => {
60
- const recommendationTime = recommendationDate.getTime();
61
- const trigger = new Date().getTime() - recommendationTime > TIMEOUT_MODAL_TRIGGER;
62
- if (nextAppState === `active` && trigger) setIsVisibleTimeoutModal(true);
63
- }, [recommendationDate]);
64
- useEffect(() => {
65
- AppState.addEventListener("change", handleAppStateChange);
66
- return () => AppState.addEventListener("change", handleAppStateChange).remove();
67
- }, [handleAppStateChange]);
68
- useEffect(() => {
69
- recommendationPropsSchema.parse(props);
70
- loadLocales(props.language);
71
- }, [props]);
72
- const startEditingInsulin = () => {
73
- LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
74
- setIsEditingInsulin(!isEditingInsulin);
75
- };
76
- const startEditingCarbs = () => {
77
- LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
78
- setIsEditingCarbs(!isEditingCarbs);
79
- };
80
-
81
- /**
82
- * Data used for the insulin wheel picker.
83
- * Depending on the injection method, the values are either integers or decimal numbers.
84
- * @returns An array of integers or decimal numbers from the minimum to the maximum insulin dosage limits.
85
- */
86
- const insulinValues = useMemo(() => {
87
- const {
88
- min,
89
- max
90
- } = INSULIN_DOSE_LIMITS;
91
- const insulinMax = recommendation.wasLimited ? recommendation.bolus : max;
92
- if (injectionMethod === UserSettings.Enums.InjectionMethod.Pump) return createSequentialArrayDecimal(min, insulinMax);else if (injectionMethod === UserSettings.Enums.InjectionMethod.PenWhole) return createSequentialArrayInteger(min, insulinMax);
93
- return createSequentialArrayHalf(min, insulinMax);
94
- }, [injectionMethod, recommendation.bolus, recommendation.wasLimited]);
95
-
96
- /**
97
- * Data used for the carbohydrates wheel picker.
98
- * @returns An array of integers from 0 to the maximum of either the carb recommendation or the maximum carb limit.
99
- */
100
- const carbValues = useMemo(() => {
101
- const {
102
- max
103
- } = CARBOHYDRATES_LIMTS;
104
- return createSequentialArrayInteger(0, Math.max(max, recommendation.carbRecommendation));
105
- }, [recommendation.carbRecommendation]);
106
- const getCarbWheelPickerIndex = useCallback(() => {
107
- if (editedCarbs !== null) return carbValues.findIndex(value => value === editedCarbs.toString());
108
- return carbValues.findIndex(value => value === recommendation.carbRecommendation.toFixed());
109
- }, [editedCarbs, carbValues, recommendation.carbRecommendation]);
110
-
111
- /**
112
- * The number of decimal places to which the insulin recommendation should be rounded.
113
- * @returns 0 if the injection method is PenWhole, 1 if the injection method is PenHalf or Pump.
114
- */
115
- const decimalPlacesInsulin = useMemo(() => injectionMethod === UserSettings.Enums.InjectionMethod.PenWhole ? 0 : 1, [injectionMethod]);
116
- const getInsulinWheelPickerIndex = useCallback(() => {
117
- if (editedInsulin !== null) return insulinValues.findIndex(value => value === editedInsulin.toString());
118
- return insulinValues.findIndex(value => value === recommendation.bolus.toFixed(decimalPlacesInsulin));
119
- }, [editedInsulin, recommendation.bolus, insulinValues, decimalPlacesInsulin]);
120
- const onConfirmCarbs = useCallback(value => {
121
- LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
122
- setIsEditingCarbs(false);
123
- if (value !== recommendation.carbRecommendation) setEditedCarbs(value);else setEditedCarbs(null);
124
- }, [recommendation.carbRecommendation]);
125
-
126
- /**
127
- * Callback function without arguments or return values.
128
- * To be called when the carbs wheel picker cancel button is pressed.
129
- * RecommendationDisplay will be rendered with the initial value.
130
- */
131
- const onCancelCarbs = useCallback(() => {
132
- LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
133
- setIsEditingCarbs(false);
134
- }, []);
135
- const onConfirmInsulin = useCallback(value => {
136
- LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
137
- setIsEditingInsulin(false);
138
- if (value !== recommendation.bolus) setEditedInsulin(value);else setEditedInsulin(null);
139
- }, [recommendation.bolus]);
140
-
141
- /**
142
- * Callback function without arguments or return values.
143
- * To be called when the insulin wheel picker cancel button is pressed.
144
- * RecommendationDisplay will be rendered with the initial value.
145
- */
146
- const onCancelInsulin = useCallback(() => {
147
- LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
148
- setIsEditingInsulin(false);
149
- }, []);
150
- const onSaveRecommendation = useCallback(() => {
151
- const {
152
- activeInsulin,
153
- carbRecommendation,
154
- bolus,
155
- activityReduction
156
- } = recommendation;
157
- transferToLogbook({
158
- entered: editedCarbs ?? carbRecommendation,
159
- suggested: carbRecommendation
160
- }, {
161
- entered: editedInsulin ?? bolus,
162
- suggested: bolus
163
- }, recommendationDate, activeInsulin, activityReduction);
164
- }, [editedCarbs, editedInsulin, recommendation, recommendationDate, transferToLogbook]);
165
- const onTimeoutModalHide = useCallback(() => {
166
- isDeleteButtonPressed && closeCalculation();
167
- }, [closeCalculation, isDeleteButtonPressed]);
168
- const onTimeoutModalDeletePress = () => {
169
- setIsDeleteButtonPressed(true);
170
- setIsVisibleTimeoutModal(false);
171
- };
172
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ScrollView, {
173
- style: styles.scrollView,
174
- contentContainerStyle: styles.contentContainer,
175
- testID: "recommendation-screen"
176
- }, /*#__PURE__*/React.createElement(Animated.View, {
177
- style: [styles.recommendationsContainer, {
178
- opacity: fadeIn
179
- }]
180
- }, /*#__PURE__*/React.createElement(Header, {
181
- isEditing: isEditingInsulin || isEditingCarbs || editedInsulin !== null || editedCarbs !== null
182
- }), /*#__PURE__*/React.createElement(View, {
183
- style: styles.recommendationsDisplayContainer
184
- }, !isEditingCarbs && /*#__PURE__*/React.createElement(RecommendationDisplay, {
185
- initialValue: roundInsulinValue(recommendation.bolus, props.injectionMethod),
186
- editedValue: editedInsulin,
187
- type: "insulin",
188
- isEditing: isEditingInsulin,
189
- onPressEdit: startEditingInsulin
190
- }), !isEditingInsulin && /*#__PURE__*/React.createElement(RecommendationDisplay, {
191
- initialValue: Math.round(recommendation.carbRecommendation),
192
- editedValue: editedCarbs,
193
- isEditing: isEditingCarbs,
194
- type: "carbohydrates",
195
- onPressEdit: startEditingCarbs
196
- })), /*#__PURE__*/React.createElement(DottedLine, null), /*#__PURE__*/React.createElement(ExpandableContainer, {
197
- bloodGlucoseMMOLL: currentBGL,
198
- bloodGlucoseUnit: bloodGlucoseUnit,
199
- carbIntakeValue: carbIntake,
200
- activeInsulin: Math.round(recommendation.activeInsulin * 10) / 10,
201
- activityDuration: activity?.activityDuration,
202
- activityIntensity: activity?.activityIntensity
203
- })), /*#__PURE__*/React.createElement(Animated.View, {
204
- style: {
205
- opacity: fadeIn
206
- }
207
- }, /*#__PURE__*/React.createElement(AttentionMessages, {
208
- bloodGlucoseMMOLL: currentBGL,
209
- hasActivity: activity !== null
210
- }))), /*#__PURE__*/React.createElement(Footer, {
211
- onSave: onSaveRecommendation,
212
- onDelete: () => setIsVisibleDeleteModal(true)
213
- }), /*#__PURE__*/React.createElement(WheelPickerModal, {
214
- items: insulinValues,
215
- isVisible: isEditingInsulin,
216
- initialScrollIndex: getInsulinWheelPickerIndex(),
217
- onConfirm: onConfirmInsulin,
218
- onCancel: onCancelInsulin,
219
- tag: "insulin"
220
- }), /*#__PURE__*/React.createElement(WheelPickerModal, {
221
- items: carbValues,
222
- isVisible: isEditingCarbs,
223
- initialScrollIndex: getCarbWheelPickerIndex(),
224
- onConfirm: onConfirmCarbs,
225
- onCancel: onCancelCarbs,
226
- tag: "carbs"
227
- }), /*#__PURE__*/React.createElement(LimitationModal, {
228
- isVisible: isVisibleLimitationModal,
229
- activityReduction: recommendation.activityReduction,
230
- onPress: () => setIsVisibleLimitationModal(false)
231
- }), /*#__PURE__*/React.createElement(DeleteModal, {
232
- isVisible: isVisibleDeleteModal,
233
- onPressSave: onSaveRecommendation,
234
- onPressCancel: () => setIsVisibleDeleteModal(false)
235
- }), /*#__PURE__*/React.createElement(TimeoutModal, {
236
- isVisible: isVisibleTimeoutModal,
237
- onPressSave: onSaveRecommendation,
238
- onPressDelete: onTimeoutModalDeletePress,
239
- onModalHide: onTimeoutModalHide
240
- }));
241
- };
242
- export default RecommendationScreen;
243
- const styles = StyleSheet.create({
244
- contentContainer: {
245
- backgroundColor: COLORS.base600,
246
- marginVertical: 32,
247
- marginHorizontal: 16,
248
- gap: 32
249
- },
250
- scrollView: {
251
- backgroundColor: COLORS.base600,
252
- flex: 1
253
- },
254
- recommendationsContainer: {
255
- borderRadius: 12,
256
- backgroundColor: COLORS.base350
257
- },
258
- recommendationsDisplayContainer: {
259
- gap: 32,
260
- padding: 32
261
- }
262
- });
263
- //# sourceMappingURL=Recommendation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","Animated","AppState","LayoutAnimation","Platform","ScrollView","StyleSheet","UIManager","View","calculateRecommendation","UserSettings","AttentionMessages","DottedLine","ExpandableContainer","Footer","Header","DeleteModal","LimitationModal","TimeoutModal","RecommendationDisplay","WheelPickerModal","CARBOHYDRATES_LIMTS","INSULIN_DOSE_LIMITS","TIMEOUT_MODAL_TRIGGER","loadLocales","COLORS","createSequentialArrayDecimal","createSequentialArrayHalf","createSequentialArrayInteger","roundInsulinValue","recommendationPropsSchema","RecommendationScreen","props","OS","setLayoutAnimationEnabledExperimental","fadeIn","Value","current","timing","toValue","duration","useNativeDriver","start","calculatorParams","bloodGlucoseUnit","injectionMethod","transferToLogbook","closeCalculation","currentBGL","carbohydrates","carbIntake","activity","recommendationDate","Date","recommendation","isEditingInsulin","setIsEditingInsulin","editedInsulin","setEditedInsulin","isEditingCarbs","setIsEditingCarbs","editedCarbs","setEditedCarbs","isVisibleLimitationModal","setIsVisibleLimitationModal","wasLimited","isVisibleDeleteModal","setIsVisibleDeleteModal","isVisibleTimeoutModal","setIsVisibleTimeoutModal","isDeleteButtonPressed","setIsDeleteButtonPressed","timeout","setTimeout","clearTimeout","handleAppStateChange","nextAppState","recommendationTime","getTime","trigger","addEventListener","remove","parse","language","startEditingInsulin","configureNext","Presets","easeInEaseOut","startEditingCarbs","insulinValues","min","max","insulinMax","bolus","Enums","InjectionMethod","Pump","PenWhole","carbValues","Math","carbRecommendation","getCarbWheelPickerIndex","findIndex","value","toString","toFixed","decimalPlacesInsulin","getInsulinWheelPickerIndex","onConfirmCarbs","onCancelCarbs","onConfirmInsulin","onCancelInsulin","onSaveRecommendation","activeInsulin","activityReduction","entered","suggested","onTimeoutModalHide","onTimeoutModalDeletePress","createElement","Fragment","style","styles","scrollView","contentContainerStyle","contentContainer","testID","recommendationsContainer","opacity","isEditing","recommendationsDisplayContainer","initialValue","editedValue","type","onPressEdit","round","bloodGlucoseMMOLL","carbIntakeValue","activityDuration","activityIntensity","hasActivity","onSave","onDelete","items","isVisible","initialScrollIndex","onConfirm","onCancel","tag","onPress","onPressSave","onPressCancel","onPressDelete","onModalHide","create","backgroundColor","base600","marginVertical","marginHorizontal","gap","flex","borderRadius","base350","padding"],"sourceRoot":"../../src","sources":["Recommendation.tsx"],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : 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
- import * as React from "react";
3
- import Svg, { Path } from "react-native-svg";
4
- import { COLORS } from "../../styles/colors";
5
- function Apple(props) {
6
- return /*#__PURE__*/React.createElement(Svg, _extends({
7
- width: 48,
8
- height: 48,
9
- viewBox: "0 0 48 48",
10
- fill: "none"
11
- }, props), /*#__PURE__*/React.createElement(Path, {
12
- fillRule: "evenodd",
13
- clipRule: "evenodd",
14
- d: "M16.192 5.715a1.5 1.5 0 011.758-1.187c2.754.534 4.696 1.926 5.918 3.802.998 1.532 1.466 3.309 1.593 5.054a17.588 17.588 0 003.042-.543c1.296-.35 4.4-.83 7.342.486 3.07 1.374 5.652 4.558 6.044 10.911.002.02.002.04.002.06.05 5.99-1.858 10.513-4.045 13.576-1.09 1.527-2.254 2.696-3.284 3.506a9.809 9.809 0 01-1.452.962c-.396.208-.823.384-1.227.444-1.875.441-3.59.125-4.96-.253-.422-.117-.859-.254-1.243-.375-.214-.067-.412-.13-.581-.18-.541-.161-.878-.23-1.099-.23-.232 0-.576.067-1.11.217-.175.049-.384.112-.612.18-.375.111-.799.238-1.198.344-1.366.362-3.068.672-4.946.299-.41-.06-.846-.238-1.254-.454a9.878 9.878 0 01-1.453-.965c-1.031-.81-2.193-1.978-3.282-3.504-2.185-3.06-4.087-7.578-4.039-13.568l.002-.059c.393-6.354 2.976-9.537 6.046-10.911 2.942-1.316 6.047-.836 7.341-.486.986.265 1.971.444 2.956.535-.121-1.279-.475-2.455-1.097-3.409-.758-1.164-1.983-2.108-3.975-2.494a1.5 1.5 0 01-1.187-1.758zm1.12 14.818a1.5 1.5 0 10-1.288-2.71c-2.184 1.039-3.766 3.197-4.096 5.594a1.5 1.5 0 102.972.409c.192-1.394 1.14-2.688 2.412-3.293z",
15
- fill: COLORS.secondary100
16
- }));
17
- }
18
- export default Apple;
19
- //# sourceMappingURL=Apple.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","Svg","Path","COLORS","Apple","props","createElement","_extends","width","height","viewBox","fill","fillRule","clipRule","d","secondary100"],"sourceRoot":"../../../../src","sources":["assets/icons/Apple.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,GAAG,IAAIC,IAAI,QAAkB,kBAAkB;AAEtD,SAASC,MAAM,QAAQ,qBAAqB;AAE5C,SAASC,KAAKA,CAACC,KAAgB,EAAE;EAChC,oBACCL,KAAA,CAAAM,aAAA,CAACL,GAAG,EAAAM,QAAA;IAACC,KAAK,EAAE,EAAG;IAACC,MAAM,EAAE,EAAG;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;EAAM,GAAKN,KAAK,gBACpEL,KAAA,CAAAM,aAAA,CAACJ,IAAI;IACJU,QAAQ,EAAC,SAAS;IAClBC,QAAQ,EAAC,SAAS;IAClBC,CAAC,EAAC,ygCAAygC;IAC3gCH,IAAI,EAAER,MAAM,CAACY;EAAa,CAC1B,CACG,CAAC;AAER;AAEA,eAAeX,KAAK"}
@@ -1,18 +0,0 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : 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
- import * as React from "react";
3
- import Svg, { Path } from "react-native-svg";
4
- import { COLORS } from "../../styles/colors";
5
- function Blood(props) {
6
- return /*#__PURE__*/React.createElement(Svg, _extends({
7
- width: 24,
8
- height: 24,
9
- viewBox: "0 0 24 24"
10
- }, props), /*#__PURE__*/React.createElement(Path, {
11
- d: "M7.668 13.77h0a1.375 1.375 0 00-.758 1.776c.642 1.638 2.097 3.053 4.194 3.297h0a1.36 1.36 0 001.503-1.207h0a1.368 1.368 0 00-1.193-1.517h0c-.962-.111-1.652-.743-1.98-1.582l-.448.176.447-.175a1.352 1.352 0 00-1.765-.768zM12 21.52c-3.177 0-5.476-1.785-6.648-4.133-1.18-2.361-1.197-5.247.157-7.405 2.079-3.033 5.034-5.346 6.234-6.216a.434.434 0 01.514 0c1.2.87 4.155 3.183 6.234 6.216 1.354 2.158 1.336 5.044.157 7.405-1.172 2.348-3.471 4.133-6.648 4.133z",
12
- fill: COLORS.base100,
13
- stroke: COLORS.base100,
14
- strokeWidth: 0.96
15
- }));
16
- }
17
- export default Blood;
18
- //# sourceMappingURL=Blood.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","Svg","Path","COLORS","Blood","props","createElement","_extends","width","height","viewBox","d","fill","base100","stroke","strokeWidth"],"sourceRoot":"../../../../src","sources":["assets/icons/Blood.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,GAAG,IAAIC,IAAI,QAAkB,kBAAkB;AAEtD,SAASC,MAAM,QAAQ,qBAAqB;AAE5C,SAASC,KAAKA,CAACC,KAAe,EAAE;EAC/B,oBACCL,KAAA,CAAAM,aAAA,CAACL,GAAG,EAAAM,QAAA;IAACC,KAAK,EAAE,EAAG;IAACC,MAAM,EAAE,EAAG;IAACC,OAAO,EAAC;EAAW,GAAKL,KAAK,gBACxDL,KAAA,CAAAM,aAAA,CAACJ,IAAI;IACJS,CAAC,EAAC,scAAsc;IACxcC,IAAI,EAAET,MAAM,CAACU,OAAQ;IACrBC,MAAM,EAAEX,MAAM,CAACU,OAAQ;IACvBE,WAAW,EAAE;EAAK,CAClB,CACG,CAAC;AAER;AAEA,eAAeX,KAAK"}
@@ -1,15 +0,0 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : 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
- import * as React from "react";
3
- import Svg, { Path } from "react-native-svg";
4
- function ChevronDown(props) {
5
- return /*#__PURE__*/React.createElement(Svg, _extends({
6
- width: 21,
7
- height: 20,
8
- viewBox: "0 0 21 20"
9
- }, props), /*#__PURE__*/React.createElement(Path, {
10
- d: "M4.022 6.839a.692.692 0 01.84-.057l.073.057 5.565 5.074 5.565-5.074a.693.693 0 01.84-.057l.073.057a.55.55 0 01.062.766l-.062.066-6.022 5.49a.692.692 0 01-.84.057l-.072-.057-6.022-5.49a.552.552 0 010-.832z",
11
- fill: "#00A6A6"
12
- }));
13
- }
14
- export default ChevronDown;
15
- //# sourceMappingURL=ChevronDown.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","Svg","Path","ChevronDown","props","createElement","_extends","width","height","viewBox","d","fill"],"sourceRoot":"../../../../src","sources":["assets/icons/ChevronDown.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,GAAG,IAAIC,IAAI,QAAkB,kBAAkB;AAEtD,SAASC,WAAWA,CAACC,KAAgB,EAAE;EACtC,oBACCJ,KAAA,CAAAK,aAAA,CAACJ,GAAG,EAAAK,QAAA;IAACC,KAAK,EAAE,EAAG;IAACC,MAAM,EAAE,EAAG;IAACC,OAAO,EAAC;EAAW,GAAKL,KAAK,gBACxDJ,KAAA,CAAAK,aAAA,CAACH,IAAI;IACJQ,CAAC,EAAC,8MAA8M;IAChNC,IAAI,EAAC;EAAS,CACd,CACG,CAAC;AAER;AAEA,eAAeR,WAAW"}
@@ -1,16 +0,0 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : 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
- import * as React from "react";
3
- import Svg, { Path } from "react-native-svg";
4
- function ChevronUp(props) {
5
- return /*#__PURE__*/React.createElement(Svg, _extends({
6
- width: 21,
7
- height: 20,
8
- viewBox: "0 0 21 20",
9
- fill: "none"
10
- }, props), /*#__PURE__*/React.createElement(Path, {
11
- d: "M16.984 13.15a.625.625 0 01-.814.061l-.07-.06-5.392-5.392-5.391 5.391a.625.625 0 01-.814.061l-.07-.06a.625.625 0 01-.06-.814l.06-.07 5.834-5.834a.625.625 0 01.813-.06l.07.06 5.834 5.834a.625.625 0 010 .883z",
12
- fill: "#00A6A6"
13
- }));
14
- }
15
- export default ChevronUp;
16
- //# sourceMappingURL=ChevronUp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","Svg","Path","ChevronUp","props","createElement","_extends","width","height","viewBox","fill","d"],"sourceRoot":"../../../../src","sources":["assets/icons/ChevronUp.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,GAAG,IAAIC,IAAI,QAAkB,kBAAkB;AAEtD,SAASC,SAASA,CAACC,KAAgB,EAAE;EACpC,oBACCJ,KAAA,CAAAK,aAAA,CAACJ,GAAG,EAAAK,QAAA;IAACC,KAAK,EAAE,EAAG;IAACC,MAAM,EAAE,EAAG;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;EAAM,GAAKN,KAAK,gBACpEJ,KAAA,CAAAK,aAAA,CAACH,IAAI;IACJS,CAAC,EAAC,gNAAgN;IAClND,IAAI,EAAC;EAAS,CACd,CACG,CAAC;AAER;AAEA,eAAeP,SAAS"}
@@ -1,18 +0,0 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : 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
- import * as React from "react";
3
- import { Path, Svg } from "react-native-svg";
4
- import { COLORS } from "../../styles/colors";
5
- const Edit = props => /*#__PURE__*/React.createElement(Svg, _extends({
6
- viewBox: "0 0 28 28"
7
- }, props, {
8
- height: 24,
9
- width: 24
10
- }), /*#__PURE__*/React.createElement(Path, {
11
- d: "M7.38159 23.5513H19.3863C21.3613 23.5513 22.5088 22.4038 22.5088 20.2053V9.31588L20.4885 11.3344V20.0358C20.4885 21.0368 19.9597 21.5328 19.2692 21.5328H7.50522C6.54726 21.5328 6.01851 21.0368 6.01851 20.0358V8.56645C6.01851 7.56357 6.54726 7.06099 7.50522 7.06099H16.3125L18.331 5.04248H7.38159C5.16442 5.04248 4 6.19001 4 8.38843V20.2053C4 22.4122 5.16442 23.5513 7.38159 23.5513Z",
12
- fill: props?.color || COLORS.primary300
13
- }), /*#__PURE__*/React.createElement(Path, {
14
- d: "M11.2728 16.6709L13.369 15.7841L22.7767 6.38479L21.2039 4.83072L11.8065 14.2281L10.8774 16.2653C10.7764 16.4979 11.0362 16.7664 11.2728 16.6709ZM23.5632 5.60673L24.2828 4.86842C24.6794 4.45487 24.6887 3.88987 24.2958 3.50907L24.0254 3.23213C23.6745 2.88493 23.0955 2.93912 22.711 3.31517L21.9904 4.02916L23.5632 5.60673Z",
15
- fill: props?.color || COLORS.primary300
16
- }));
17
- export default Edit;
18
- //# sourceMappingURL=Edit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","Path","Svg","COLORS","Edit","props","createElement","_extends","viewBox","height","width","d","fill","color","primary300"],"sourceRoot":"../../../../src","sources":["assets/icons/Edit.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,IAAI,EAAEC,GAAG,QAAkB,kBAAkB;AAEtD,SAASC,MAAM,QAAQ,qBAAqB;AAE5C,MAAMC,IAAI,GAAIC,KAAgB,iBAC7BL,KAAA,CAAAM,aAAA,CAACJ,GAAG,EAAAK,QAAA;EAACC,OAAO,EAAC;AAAW,GAAKH,KAAK;EAAEI,MAAM,EAAE,EAAG;EAACC,KAAK,EAAE;AAAG,iBACzDV,KAAA,CAAAM,aAAA,CAACL,IAAI;EACJU,CAAC,EAAC,gYAAgY;EAClYC,IAAI,EAAEP,KAAK,EAAEQ,KAAK,IAAIV,MAAM,CAACW;AAAW,CACxC,CAAC,eACFd,KAAA,CAAAM,aAAA,CAACL,IAAI;EACJU,CAAC,EAAC,kUAAkU;EACpUC,IAAI,EAAEP,KAAK,EAAEQ,KAAK,IAAIV,MAAM,CAACW;AAAW,CACxC,CACG,CACL;AACD,eAAeV,IAAI"}