eletrotupi / tcc/ commit / 391cc72

frontend: introduce tanstack + mmkv

The idea is to have some persistent layer and use tanstack as a request cache
Pedro Lucas Porcellis porcellis@eletrotupi.com · 5 months ago 391cc7246372cfa8de4a5cda441a22365129b421 Browse files
Parents 6b4f982
Changed files
2
Additions
+53
Deletions
0
frontend/package-lock.json
1 1
{
2 2
  "name": "orbit",
3 3
  "version": "0.0.0",
4 4
  "lockfileVersion": 3,
5 5
  "requires": true,
14 14
        "@react-native-community/datetimepicker": "8.4.4",
15 15
        "@react-native-community/slider": "5.0.1",
16 16
        "@react-navigation/bottom-tabs": "^7.4.0",
17 17
        "@react-navigation/elements": "^2.6.3",
18 18
        "@react-navigation/native": "^7.1.8",
19 +
        "@tanstack/react-query": "^5.100.10",
19 20
        "expo": "~54.0.34",
20 21
        "expo-constants": "~18.0.13",
21 22
        "expo-dev-client": "~6.0.21",
22 23
        "expo-font": "~14.0.11",
23 24
        "expo-haptics": "~15.0.8",
33 34
        "expo-web-browser": "~15.0.11",
34 35
        "react": "19.1.0",
35 36
        "react-dom": "19.1.0",
36 37
        "react-native": "0.81.5",
37 38
        "react-native-gesture-handler": "~2.28.0",
39 +
        "react-native-mmkv": "^4.3.1",
40 +
        "react-native-nitro-modules": "^0.35.6",
38 41
        "react-native-reanimated": "~4.1.1",
39 42
        "react-native-safe-area-context": "~5.6.0",
40 43
        "react-native-screens": "~4.16.0",
41 44
        "react-native-teleport": "^1.1.2",
42 45
        "react-native-web": "~0.21.0",
3160 3163
      "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz",
3161 3164
      "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==",
3162 3165
      "license": "BSD-3-Clause",
3163 3166
      "dependencies": {
3164 3167
        "@sinonjs/commons": "^3.0.0"
3168 +
      }
3169 +
    },
3170 +
    "node_modules/@tanstack/query-core": {
3171 +
      "version": "5.100.10",
3172 +
      "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.100.10.tgz",
3173 +
      "integrity": "sha512-8UR0yJR+GiQ40m3lPhUr0xbfAupe6GSQiksSBSa9SM2NjezFyxXCIA69/lz8cSoNKZLrw1/PktIyQBJcVeMi3w==",
3174 +
      "license": "MIT",
3175 +
      "funding": {
3176 +
        "type": "github",
3177 +
        "url": "https://github.com/sponsors/tannerlinsley"
3178 +
      }
3179 +
    },
3180 +
    "node_modules/@tanstack/react-query": {
3181 +
      "version": "5.100.10",
3182 +
      "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.100.10.tgz",
3183 +
      "integrity": "sha512-FLaZf2RCrA/Zgp4aiu5tG3TyasTRO7aZ99skxQpr3Hg/zXOhu6yq5FZCYQ/tRaJtM9ylnoK8tFK7PolXQadv6Q==",
3184 +
      "license": "MIT",
3185 +
      "dependencies": {
3186 +
        "@tanstack/query-core": "5.100.10"
3187 +
      },
3188 +
      "funding": {
3189 +
        "type": "github",
3190 +
        "url": "https://github.com/sponsors/tannerlinsley"
3191 +
      },
3192 +
      "peerDependencies": {
3193 +
        "react": "^18 || ^19"
3165 3194
      }
3166 3195
    },
3167 3196
    "node_modules/@tybys/wasm-util": {
3168 3197
      "version": "0.10.1",
3169 3198
      "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz",
10515 10544
    },
10516 10545
    "node_modules/react-native-is-edge-to-edge": {
10517 10546
      "version": "1.3.1",
10518 10547
      "resolved": "https://registry.npmjs.org/react-native-is-edge-to-edge/-/react-native-is-edge-to-edge-1.3.1.tgz",
10519 10548
      "integrity": "sha512-NIXU/iT5+ORyCc7p0z2nnlkouYKX425vuU1OEm6bMMtWWR9yvb+Xg5AZmImTKoF9abxCPqrKC3rOZsKzUYgYZA==",
10549 +
      "license": "MIT",
10550 +
      "peerDependencies": {
10551 +
        "react": "*",
10552 +
        "react-native": "*"
10553 +
      }
10554 +
    },
10555 +
    "node_modules/react-native-mmkv": {
10556 +
      "version": "4.3.1",
10557 +
      "resolved": "https://registry.npmjs.org/react-native-mmkv/-/react-native-mmkv-4.3.1.tgz",
10558 +
      "integrity": "sha512-APyGGaaHtayVgT18dBM8QGGZKr9pGfSTiBwbbPNzhGGfJQSU7awLGRGq879OqYl31HmVks9hOBLCs+qfgacRZg==",
10559 +
      "license": "MIT",
10560 +
      "peerDependencies": {
10561 +
        "react": "*",
10562 +
        "react-native": "*",
10563 +
        "react-native-nitro-modules": "*"
10564 +
      }
10565 +
    },
10566 +
    "node_modules/react-native-nitro-modules": {
10567 +
      "version": "0.35.6",
10568 +
      "resolved": "https://registry.npmjs.org/react-native-nitro-modules/-/react-native-nitro-modules-0.35.6.tgz",
10569 +
      "integrity": "sha512-3Cb7s+O5tpZ6RdIiPOB/wi3IMfBxD6tl6VDF8gJ5zvM/BEGTWxwMMLjzmWmsYPKekdbYBznF6qp2d2SxixPy8g==",
10520 10570
      "license": "MIT",
10521 10571
      "peerDependencies": {
10522 10572
        "react": "*",
10523 10573
        "react-native": "*"
10524 10574
      }
13109 13159
        }
13110 13160
      }
13111 13161
    }
13112 13162
  }
13113 13163
}
frontend/package.json
1 1
{
2 2
  "name": "orbit",
3 3
  "main": "expo-router/entry",
4 4
  "version": "0.0.0",
5 5
  "scripts": {
16 16
    "@react-native-community/datetimepicker": "8.4.4",
17 17
    "@react-native-community/slider": "5.0.1",
18 18
    "@react-navigation/bottom-tabs": "^7.4.0",
19 19
    "@react-navigation/elements": "^2.6.3",
20 20
    "@react-navigation/native": "^7.1.8",
21 +
    "@tanstack/react-query": "^5.100.10",
21 22
    "expo": "~54.0.34",
22 23
    "expo-constants": "~18.0.13",
23 24
    "expo-dev-client": "~6.0.21",
24 25
    "expo-font": "~14.0.11",
25 26
    "expo-haptics": "~15.0.8",
35 36
    "expo-web-browser": "~15.0.11",
36 37
    "react": "19.1.0",
37 38
    "react-dom": "19.1.0",
38 39
    "react-native": "0.81.5",
39 40
    "react-native-gesture-handler": "~2.28.0",
41 +
    "react-native-mmkv": "^4.3.1",
42 +
    "react-native-nitro-modules": "^0.35.6",
40 43
    "react-native-reanimated": "~4.1.1",
41 44
    "react-native-safe-area-context": "~5.6.0",
42 45
    "react-native-screens": "~4.16.0",
43 46
    "react-native-teleport": "^1.1.2",
44 47
    "react-native-web": "~0.21.0",
51 54
    "eslint-config-expo": "~10.0.0",
52 55
    "typescript": "~5.9.2"
53 56
  },
54 57
  "private": true
55 58
}