From 4f1f66fcbbf3682004e781d058ff43a7eb3b57ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Viktor=20Sarstr=C3=B6m?= Date: Tue, 9 Nov 2021 10:49:12 +0100 Subject: [PATCH] =?UTF-8?q?feat:=20=F0=9F=8E=B8=20Merged=20with=20main,=20?= =?UTF-8?q?also=20added=20api=20to=20nx?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/skolplattformen-sthlm/ios/Podfile.lock | 111 +++++++++++++++++- .../ios/app.xcodeproj/project.pbxproj | 12 +- .../@react-native-cookies/cookies.ts | 81 ------------- libs/api/package.json | 7 +- nx.json | 2 +- workspace.json | 48 ++++++++ 6 files changed, 172 insertions(+), 89 deletions(-) delete mode 100644 libs/api-skolplattformen/lib/__mocks__/@react-native-cookies/cookies.ts diff --git a/apps/skolplattformen-sthlm/ios/Podfile.lock b/apps/skolplattformen-sthlm/ios/Podfile.lock index 64883f88..6299ea78 100644 --- a/apps/skolplattformen-sthlm/ios/Podfile.lock +++ b/apps/skolplattformen-sthlm/ios/Podfile.lock @@ -1,5 +1,6 @@ PODS: - boost-for-react-native (1.63.0) + - CocoaAsyncSocket (7.6.5) - DoubleConversion (1.1.6) - FBLazyVector (0.65.1) - FBReactNativeSpec (0.65.1): @@ -9,10 +10,71 @@ PODS: - React-Core (= 0.65.1) - React-jsi (= 0.65.1) - ReactCommon/turbomodule/core (= 0.65.1) + - Flipper (0.93.0): + - Flipper-Folly (~> 2.6) + - Flipper-RSocket (~> 1.4) + - Flipper-Boost-iOSX (1.76.0.1.11) + - Flipper-DoubleConversion (3.1.7) + - Flipper-Fmt (7.1.7) + - Flipper-Folly (2.6.7): + - Flipper-Boost-iOSX + - Flipper-DoubleConversion + - Flipper-Fmt (= 7.1.7) + - Flipper-Glog + - libevent (~> 2.1.12) + - OpenSSL-Universal (= 1.1.180) + - Flipper-Glog (0.3.6) + - Flipper-PeerTalk (0.0.4) + - Flipper-RSocket (1.4.3): + - Flipper-Folly (~> 2.6) + - FlipperKit (0.93.0): + - FlipperKit/Core (= 0.93.0) + - FlipperKit/Core (0.93.0): + - Flipper (~> 0.93.0) + - FlipperKit/CppBridge + - FlipperKit/FBCxxFollyDynamicConvert + - FlipperKit/FBDefines + - FlipperKit/FKPortForwarding + - FlipperKit/CppBridge (0.93.0): + - Flipper (~> 0.93.0) + - FlipperKit/FBCxxFollyDynamicConvert (0.93.0): + - Flipper-Folly (~> 2.6) + - FlipperKit/FBDefines (0.93.0) + - FlipperKit/FKPortForwarding (0.93.0): + - CocoaAsyncSocket (~> 7.6) + - Flipper-PeerTalk (~> 0.0.4) + - FlipperKit/FlipperKitHighlightOverlay (0.93.0) + - FlipperKit/FlipperKitLayoutHelpers (0.93.0): + - FlipperKit/Core + - FlipperKit/FlipperKitHighlightOverlay + - FlipperKit/FlipperKitLayoutTextSearchable + - FlipperKit/FlipperKitLayoutIOSDescriptors (0.93.0): + - FlipperKit/Core + - FlipperKit/FlipperKitHighlightOverlay + - FlipperKit/FlipperKitLayoutHelpers + - YogaKit (~> 1.18) + - FlipperKit/FlipperKitLayoutPlugin (0.93.0): + - FlipperKit/Core + - FlipperKit/FlipperKitHighlightOverlay + - FlipperKit/FlipperKitLayoutHelpers + - FlipperKit/FlipperKitLayoutIOSDescriptors + - FlipperKit/FlipperKitLayoutTextSearchable + - YogaKit (~> 1.18) + - FlipperKit/FlipperKitLayoutTextSearchable (0.93.0) + - FlipperKit/FlipperKitNetworkPlugin (0.93.0): + - FlipperKit/Core + - FlipperKit/FlipperKitReactPlugin (0.93.0): + - FlipperKit/Core + - FlipperKit/FlipperKitUserDefaultsPlugin (0.93.0): + - FlipperKit/Core + - FlipperKit/SKIOSNetworkPlugin (0.93.0): + - FlipperKit/Core + - FlipperKit/FlipperKitNetworkPlugin - fmt (6.2.1) - glog (0.3.5) - hermes-engine (0.8.1) - libevent (2.1.12) + - OpenSSL-Universal (1.1.180) - RCT-Folly (2021.04.26.00): - boost-for-react-native - DoubleConversion @@ -354,11 +416,34 @@ PODS: - React - Toast (4.0.0) - Yoga (1.14.0) + - YogaKit (1.18.1): + - Yoga (~> 1.14) DEPENDENCIES: - DoubleConversion (from `../../../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) - FBLazyVector (from `../../../node_modules/react-native/Libraries/FBLazyVector`) - FBReactNativeSpec (from `../../../node_modules/react-native/React/FBReactNativeSpec`) + - Flipper (= 0.93.0) + - Flipper-Boost-iOSX (= 1.76.0.1.11) + - Flipper-DoubleConversion (= 3.1.7) + - Flipper-Fmt (= 7.1.7) + - Flipper-Folly (= 2.6.7) + - Flipper-Glog (= 0.3.6) + - Flipper-PeerTalk (= 0.0.4) + - Flipper-RSocket (= 1.4.3) + - FlipperKit (= 0.93.0) + - FlipperKit/Core (= 0.93.0) + - FlipperKit/CppBridge (= 0.93.0) + - FlipperKit/FBCxxFollyDynamicConvert (= 0.93.0) + - FlipperKit/FBDefines (= 0.93.0) + - FlipperKit/FKPortForwarding (= 0.93.0) + - FlipperKit/FlipperKitHighlightOverlay (= 0.93.0) + - FlipperKit/FlipperKitLayoutPlugin (= 0.93.0) + - FlipperKit/FlipperKitLayoutTextSearchable (= 0.93.0) + - FlipperKit/FlipperKitNetworkPlugin (= 0.93.0) + - FlipperKit/FlipperKitReactPlugin (= 0.93.0) + - FlipperKit/FlipperKitUserDefaultsPlugin (= 0.93.0) + - FlipperKit/SKIOSNetworkPlugin (= 0.93.0) - glog (from `../../../node_modules/react-native/third-party-podspecs/glog.podspec`) - hermes-engine (~> 0.8.1) - libevent (~> 2.1.12) @@ -409,10 +494,22 @@ DEPENDENCIES: SPEC REPOS: trunk: - boost-for-react-native + - CocoaAsyncSocket + - Flipper + - Flipper-Boost-iOSX + - Flipper-DoubleConversion + - Flipper-Fmt + - Flipper-Folly + - Flipper-Glog + - Flipper-PeerTalk + - Flipper-RSocket + - FlipperKit - fmt - hermes-engine - libevent + - OpenSSL-Universal - Toast + - YogaKit EXTERNAL SOURCES: DoubleConversion: @@ -508,13 +605,24 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c + CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99 DoubleConversion: 831926d9b8bf8166fd87886c4abab286c2422662 FBLazyVector: 33c82491102f20ecddb6c6a2c273696ace3191e0 FBReactNativeSpec: df8f81d2a7541ee6755a047b398a5cb5a72acd0e + Flipper: b1fddf9a17c32097b2b4c806ad158b2f36bb2692 + Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c + Flipper-DoubleConversion: 57ffbe81ef95306cc9e69c4aa3aeeeeb58a6a28c + Flipper-Fmt: 60cbdd92fc254826e61d669a5d87ef7015396a9b + Flipper-Folly: 83af37379faa69497529e414bd43fbfc7cae259a + Flipper-Glog: 1dfd6abf1e922806c52ceb8701a3599a79a200a6 + Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9 + Flipper-RSocket: d9d9ade67cbecf6ac10730304bf5607266dd2541 + FlipperKit: aec2d931adeee48a07bab1ea8bcc8a6bb87dfce4 fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9 glog: 5337263514dd6f09803962437687240c5dc39aa4 hermes-engine: 7dcd1dbd908e6353bd7e4a4add72dba7bf76bf84 libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 + OpenSSL-Universal: 1aa4f6a6ee7256b83db99ec1ccdaa80d10f9af9b RCT-Folly: 0dd9e1eb86348ecab5ba76f910b56f4b5fef3c46 RCTRequired: 6cf071ab2adfd769014b3d94373744ee6e789530 RCTTypeSafety: b829c59453478bb5b02487b8de3336386ab93ab1 @@ -557,7 +665,8 @@ SPEC CHECKSUMS: RNSVG: ce9d996113475209013317e48b05c21ee988d42e Toast: 91b396c56ee72a5790816f40d3a94dd357abc196 Yoga: aa0cb45287ebe1004c02a13f279c55a95f1572f4 + YogaKit: f782866e155069a2cca2517aafea43200b01fd5a PODFILE CHECKSUM: 85f5a2dfa1de342b427eecb6e9652410ad153247 -COCOAPODS: 1.11.2 +COCOAPODS: 1.10.1 diff --git a/apps/skolplattformen-sthlm/ios/app.xcodeproj/project.pbxproj b/apps/skolplattformen-sthlm/ios/app.xcodeproj/project.pbxproj index 25214c4c..cf93489d 100644 --- a/apps/skolplattformen-sthlm/ios/app.xcodeproj/project.pbxproj +++ b/apps/skolplattformen-sthlm/ios/app.xcodeproj/project.pbxproj @@ -573,10 +573,14 @@ ); inputPaths = ( "${PODS_ROOT}/Target Support Files/Pods-app/Pods-app-frameworks.sh", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/double-conversion/double-conversion.framework/double-conversion", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL/OpenSSL.framework/OpenSSL", "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes/hermes.framework/hermes", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/double-conversion.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OpenSSL.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework", ); runOnlyForDeploymentPostprocessing = 0; @@ -591,10 +595,14 @@ ); inputPaths = ( "${PODS_ROOT}/Target Support Files/Pods-app-appTests/Pods-app-appTests-frameworks.sh", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/double-conversion/double-conversion.framework/double-conversion", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL/OpenSSL.framework/OpenSSL", "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes/hermes.framework/hermes", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/double-conversion.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OpenSSL.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework", ); runOnlyForDeploymentPostprocessing = 0; @@ -971,7 +979,7 @@ COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386; + "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "arm64 i386"; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -1033,7 +1041,7 @@ COPY_PHASE_STRIP = YES; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386; + "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "arm64 i386"; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; diff --git a/libs/api-skolplattformen/lib/__mocks__/@react-native-cookies/cookies.ts b/libs/api-skolplattformen/lib/__mocks__/@react-native-cookies/cookies.ts deleted file mode 100644 index 7ce777bc..00000000 --- a/libs/api-skolplattformen/lib/__mocks__/@react-native-cookies/cookies.ts +++ /dev/null @@ -1,81 +0,0 @@ -import { CookieJar, Cookie as TCookie } from 'tough-cookie' - -export interface Cookie { - name: string - value: string - path?: string - domain?: string - version?: string - expires?: string - secure?: boolean - httpOnly?: boolean -} - -export interface Cookies { - [key: string]: Cookie -} - -export interface CookieManagerStatic { - set(url: string, cookie: Cookie, useWebKit?: boolean): Promise - setFromResponse(url: string, cookie: string): Promise - - get(url: string, useWebKit?: boolean): Promise - - clearAll(useWebKit?: boolean): Promise -} - -const convertTtoC = (cookie: string | TCookie): Cookie => { - if (typeof cookie === 'string') { - return convertTtoC(TCookie.parse(cookie) as TCookie) - } - return { - name: cookie.key, - value: cookie.value, - domain: cookie.domain || undefined, - expires: - cookie.expires === 'Infinity' ? undefined : cookie.expires.toUTCString(), - httpOnly: cookie.httpOnly || undefined, - path: cookie.path || undefined, - secure: cookie.secure, - } -} -const convertCtoT = (cookie: Cookie): TCookie => - new TCookie({ - key: cookie.name, - value: cookie.value, - domain: cookie.domain, - expires: cookie.expires ? new Date(cookie.expires) : undefined, - httpOnly: cookie.httpOnly || false, - path: cookie.path, - secure: cookie.secure || false, - }) -const convertCookies = (cookies: TCookie[]): Cookies => - cookies.reduce( - (map, cookie) => ({ - ...map, - [cookie.key]: convertTtoC(cookie), - }), - {} as Cookies - ) - -const jar = new CookieJar() -const CookieManager: CookieManagerStatic = { - clearAll: async () => { - await jar.removeAllCookies() - return true - }, - get: async (url) => { - const cookies = await jar.getCookies(url) - return convertCookies(cookies) - }, - set: async (url, cookie) => { - await jar.setCookie(convertCtoT(cookie), url) - return true - }, - setFromResponse: async (url, cookie) => { - await jar.setCookie(cookie, url) - return true - }, -} - -export default CookieManager diff --git a/libs/api/package.json b/libs/api/package.json index 8f731586..83ec8632 100644 --- a/libs/api/package.json +++ b/libs/api/package.json @@ -1,14 +1,13 @@ { - "name": "@skolplattformen/embedded-api", + "name": "@skolplattformen/api", "version": "0.15.0", - "description": "Since the proxy was blocked (and also deemed a bad idea by some), this is a reboot of the API running in process in the app(s).", + "description": "", "main": "dist/index.js", "types": "dist/index.d.ts", "files": [ "dist/**/*" ], - "repository": "git@github.com:kolplattformen/embedded-api.git", - "author": "Johan Öbrink ", + "repository": "git@github.com:kolplattformen/skolplatformen.git", "license": "Apache-2.0", "private": false, "scripts": { diff --git a/nx.json b/nx.json index 3d3c0ea3..0e01836e 100644 --- a/nx.json +++ b/nx.json @@ -38,7 +38,7 @@ }, "skolplattformen-sthlm": { "tags": [], - "implicitDependencies": ["api-skolplattformen", "hooks", "curriculum"] + "implicitDependencies": ["api-skolplattformen", "api-hjarntorget", "api", "hooks", "curriculum"] } } } diff --git a/workspace.json b/workspace.json index 8f096a9e..36dc3ac0 100644 --- a/workspace.json +++ b/workspace.json @@ -25,6 +25,54 @@ } } }, + "api-hjarntorget": { + "root": "libs/api-hjarntorget", + "sourceRoot": "libs/api-hjarntorget/src", + "projectType": "library", + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": [ + "libs/api-hjarntorget/**/*.{ts,tsx,js,jsx}" + ] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "outputs": ["coverage/libs/api-skolplattformen"], + "options": { + "jestConfig": "libs/api-skolplattformen/jest.config.js", + "passWithNoTests": true + } + } + } + }, + "api": { + "root": "libs/api", + "sourceRoot": "libs/api", + "projectType": "library", + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": [ + "libs/api/**/*.{ts,tsx,js,jsx}" + ] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "outputs": ["coverage/libs/api-skolplattformen"], + "options": { + "jestConfig": "libs/api/jest.config.js", + "passWithNoTests": true + } + } + } + }, "curriculum": { "root": "libs/curriculum", "sourceRoot": "libs/curriculum/src",