From 41c85718e7ec0bd68b6a7a22f35684cbfe8c6268 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Tue, 9 May 2023 22:40:25 +0530 Subject: [PATCH 01/19] bumped SDK version --- example/ExampleAppChangelog.txt | 24 +-- example/android/Gemfile.lock | 10 +- example/package-lock.json | 356 ++++++++++++++++---------------- example/package.json | 2 +- package.json | 2 +- sdk-versions.json | 2 +- 6 files changed, 184 insertions(+), 212 deletions(-) diff --git a/example/ExampleAppChangelog.txt b/example/ExampleAppChangelog.txt index 3c948eb21..f244e83e7 100644 --- a/example/ExampleAppChangelog.txt +++ b/example/ExampleAppChangelog.txt @@ -1,23 +1,5 @@ -Board: https://github.com/100mslive/react-native-hms/projects/15 +Board: https://github.com/100mslive/react-native-hms/projects/20 -- Added support for Session Store APIs -https://github.com/100mslive/react-native-hms/issues/990 - -- Added support for Music Mode on iOS -https://github.com/100mslive/react-native-hms/issues/1001 - -- Fixed import type compile error -https://github.com/100mslive/react-native-hms/pull/1014 - -- Fixed app crash when videoTrack is null in HMSView -https://github.com/100mslive/react-native-hms/pull/1015 - -- Added Basic Sample Apps directory with room-code changes -https://github.com/100mslive/react-native-hms/pull/1013 - -- chore(deps): bump json5 and babel-plugin-module-resolver in /example -https://github.com/100mslive/react-native-hms/pull/997 - -React Native SDK: 1.6.0 -Android SDK: 2.6.2 +React Native SDK: 1.6.1 +Android SDK: 2.6.3 iOS SDK: 0.9.3 diff --git a/example/android/Gemfile.lock b/example/android/Gemfile.lock index 97627408d..3a6919368 100644 --- a/example/android/Gemfile.lock +++ b/example/android/Gemfile.lock @@ -8,16 +8,16 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.756.0) - aws-sdk-core (3.171.0) + aws-partitions (1.761.0) + aws-sdk-core (3.172.0) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) aws-sigv4 (~> 1.5) jmespath (~> 1, >= 1.6.1) - aws-sdk-kms (1.63.0) + aws-sdk-kms (1.64.0) aws-sdk-core (~> 3, >= 3.165.0) aws-sigv4 (~> 1.1) - aws-sdk-s3 (1.121.0) + aws-sdk-s3 (1.122.0) aws-sdk-core (~> 3, >= 3.165.0) aws-sdk-kms (~> 1) aws-sigv4 (~> 1.4) @@ -107,7 +107,7 @@ GEM xcpretty-travis-formatter (>= 0.0.3) fastlane-plugin-firebase_app_distribution (0.5.0) gh_inspector (1.1.3) - google-apis-androidpublisher_v3 (0.40.0) + google-apis-androidpublisher_v3 (0.41.0) google-apis-core (>= 0.11.0, < 2.a) google-apis-core (0.11.0) addressable (~> 2.5, >= 2.5.1) diff --git a/example/package-lock.json b/example/package-lock.json index 38c80e579..d3319686f 100644 --- a/example/package-lock.json +++ b/example/package-lock.json @@ -1,12 +1,12 @@ { "name": "RNHMSExample", - "version": "1.6.0", + "version": "1.6.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "RNHMSExample", - "version": "1.6.0", + "version": "1.6.1", "hasInstallScript": true, "dependencies": { "@miblanchard/react-native-slider": "^2.0.2", @@ -82,28 +82,28 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.4.tgz", - "integrity": "sha512-/DYyDpeCfaVinT40FPGdkkb+lYSKvsVuMjDAG7jPOWWiM1ibOaB9CXJAlc4d1QpP/U2q2P9jbrSlClKSErd55g==", + "version": "7.21.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.7.tgz", + "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.4.tgz", - "integrity": "sha512-qt/YV149Jman/6AfmlxJ04LMIu8bMoyl3RB91yTFrxQmgbrSvQMy7cI8Q62FHx1t8wJ8B5fu0UDoLwHAhUo1QA==", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz", + "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.4", - "@babel/helper-compilation-targets": "^7.21.4", - "@babel/helper-module-transforms": "^7.21.2", - "@babel/helpers": "^7.21.0", - "@babel/parser": "^7.21.4", + "@babel/generator": "^7.21.5", + "@babel/helper-compilation-targets": "^7.21.5", + "@babel/helper-module-transforms": "^7.21.5", + "@babel/helpers": "^7.21.5", + "@babel/parser": "^7.21.8", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.4", - "@babel/types": "^7.21.4", + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -119,11 +119,11 @@ } }, "node_modules/@babel/generator": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.4.tgz", - "integrity": "sha512-NieM3pVIYW2SwGzKoqfPrQsf4xGs9M9AIG3ThppsSRmO+m7eQhmI6amajKMUeIO37wFfsvnvcxQFx6x6iqxDnA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.5.tgz", + "integrity": "sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==", "dependencies": { - "@babel/types": "^7.21.4", + "@babel/types": "^7.21.5", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -144,23 +144,22 @@ } }, "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.21.5.tgz", + "integrity": "sha512-uNrjKztPLkUk7bpCNC0jEKDJzzkvel/W+HguzbN8krA+LPfC1CEobJEvAvGka2A/M+ViOqXdcRL0GqPUJSjx9g==", "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.4.tgz", - "integrity": "sha512-Fa0tTuOXZ1iL8IeDFUWCzjZcn+sJGd9RZdH9esYVjEejGmzf+FFYQpMi/kZUk2kPy/q1H3/GPw7np8qar/stfg==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz", + "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==", "dependencies": { - "@babel/compat-data": "^7.21.4", + "@babel/compat-data": "^7.21.5", "@babel/helper-validator-option": "^7.21.0", "browserslist": "^4.21.3", "lru-cache": "^5.1.1", @@ -174,18 +173,19 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.4.tgz", - "integrity": "sha512-46QrX2CQlaFRF4TkwfTt6nJD7IHq8539cCL7SDpqWSDeJKY1xylKKY5F/33mJhLZ3mFvKv2gGrVS6NkyF6qs+Q==", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.8.tgz", + "integrity": "sha512-+THiN8MqiH2AczyuZrnrKL6cAxFRRQDKW9h1YkBvbgKmAm6mwiacig1qT73DHIWMGo40GRnsEfN3LA+E6NtmSw==", "dependencies": { "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-environment-visitor": "^7.21.5", "@babel/helper-function-name": "^7.21.0", - "@babel/helper-member-expression-to-functions": "^7.21.0", + "@babel/helper-member-expression-to-functions": "^7.21.5", "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-replace-supers": "^7.21.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/helper-split-export-declaration": "^7.18.6" + "@babel/helper-split-export-declaration": "^7.18.6", + "semver": "^6.3.0" }, "engines": { "node": ">=6.9.0" @@ -195,12 +195,13 @@ } }, "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.4.tgz", - "integrity": "sha512-M00OuhU+0GyZ5iBBN9czjugzWrEq2vDpf/zCYHxxf93ul/Q5rv+a5h+/+0WnI1AebHNVtl5bFV0qsJoH23DbfA==", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.8.tgz", + "integrity": "sha512-zGuSdedkFtsFHGbexAvNuipg1hbtitDLo2XE8/uf6Y9sOQV1xsYX/2pNbtedp/X0eU1pIt+kGvaqHCowkRbS5g==", "dependencies": { "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.3.1" + "regexpu-core": "^5.3.1", + "semver": "^6.3.0" }, "engines": { "node": ">=6.9.0" @@ -226,20 +227,9 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dependencies": { - "@babel/types": "^7.18.6" - }, + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz", + "integrity": "sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==", "engines": { "node": ">=6.9.0" } @@ -268,11 +258,11 @@ } }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", - "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.5.tgz", + "integrity": "sha512-nIcGfgwpH2u4n9GG1HpStW5Ogx7x7ekiFHbjjFRKXbn5zUvqO9ZgotCO4x1aNbKn/x/xOUaXEhyNHCwtFCpxWg==", "dependencies": { - "@babel/types": "^7.21.0" + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -290,18 +280,18 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", - "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz", + "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==", "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-environment-visitor": "^7.21.5", + "@babel/helper-module-imports": "^7.21.4", + "@babel/helper-simple-access": "^7.21.5", "@babel/helper-split-export-declaration": "^7.18.6", "@babel/helper-validator-identifier": "^7.19.1", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.2", - "@babel/types": "^7.21.2" + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -319,9 +309,9 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz", + "integrity": "sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==", "engines": { "node": ">=6.9.0" } @@ -345,27 +335,27 @@ } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", - "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.21.5.tgz", + "integrity": "sha512-/y7vBgsr9Idu4M6MprbOVUfH3vs7tsIfnVWv/Ml2xgwvyH6LTngdfbf5AdsKwkJy4zgy1X/kuNrEKvhhK28Yrg==", "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.20.7", + "@babel/helper-environment-visitor": "^7.21.5", + "@babel/helper-member-expression-to-functions": "^7.21.5", "@babel/helper-optimise-call-expression": "^7.18.6", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", - "@babel/types": "^7.20.7" + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", + "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", "dependencies": { - "@babel/types": "^7.20.2" + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -394,9 +384,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz", + "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==", "engines": { "node": ">=6.9.0" } @@ -433,13 +423,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", - "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.5.tgz", + "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==", "dependencies": { "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0" + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -459,9 +449,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", - "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.8.tgz", + "integrity": "sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==", "bin": { "parser": "bin/babel-parser.js" }, @@ -879,7 +869,6 @@ "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" }, @@ -1022,11 +1011,11 @@ } }, "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", - "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.21.5.tgz", + "integrity": "sha512-wb1mhwGOCaXHDTcsRYMKF9e5bbMgqwxtqa2Y1ifH96dXJPwbuLX9qHy3clhrxVqgMz7nyNXs8VkxdH8UBcjKqA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "@babel/helper-plugin-utils": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1103,11 +1092,11 @@ } }, "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", - "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.21.5.tgz", + "integrity": "sha512-TR653Ki3pAwxBxUe8srfF3e4Pe3FTA46uaNHYyQwIoM4oWKSoOZiDNyHJ0oIoDIUPSRQbQG7jzgVBX3FPVne1Q==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-plugin-utils": "^7.21.5", "@babel/template": "^7.20.7" }, "engines": { @@ -1193,11 +1182,11 @@ } }, "node_modules/@babel/plugin-transform-for-of": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", - "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.5.tgz", + "integrity": "sha512-nYWpjKW/7j/I/mZkGVgHJXh4bA1sfdFnJoOXwJuj4m3Q2EraO/8ZyrkCau9P5tbHQk01RMSt6KYLCsW7730SXQ==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "@babel/helper-plugin-utils": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1267,13 +1256,13 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", - "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz", + "integrity": "sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==", "dependencies": { - "@babel/helper-module-transforms": "^7.21.2", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-simple-access": "^7.20.2" + "@babel/helper-module-transforms": "^7.21.5", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-simple-access": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1419,15 +1408,15 @@ } }, "node_modules/@babel/plugin-transform-react-jsx": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz", - "integrity": "sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.5.tgz", + "integrity": "sha512-ELdlq61FpoEkHO6gFRpfj0kUgSwQTGoaEU8eMRoS8Dv3v6e7BjEAj5WMtIBRdHUeAioMhKP5HyxNzNnP+heKbA==", "dependencies": { "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-jsx": "^7.18.6", - "@babel/types": "^7.21.0" + "@babel/helper-module-imports": "^7.21.4", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-jsx": "^7.21.4", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1465,11 +1454,11 @@ } }, "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", - "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.21.5.tgz", + "integrity": "sha512-ZoYBKDb6LyMi5yCsByQ5jmXsHAQDDYeexT1Szvlmui+lADvfSecr5Dxd/PkrTC3pAD182Fcju1VQkB4oCp9M+w==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-plugin-utils": "^7.21.5", "regenerator-transform": "^0.15.1" }, "engines": { @@ -1603,12 +1592,12 @@ } }, "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.21.5.tgz", + "integrity": "sha512-LYm/gTOwZqsYohlvFUe/8Tujz75LqqVC2w+2qPHLR+WyWHGCZPN1KBpJCJn+4Bk4gOkQy/IXKIge6az5MqwlOg==", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/helper-plugin-utils": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1633,14 +1622,14 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.21.4.tgz", - "integrity": "sha512-2W57zHs2yDLm6GD5ZpvNn71lZ0B/iypSdIeq25OurDKji6AdzV07qp4s3n1/x5BqtiGaTrPN3nerlSCaC5qNTw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.21.5.tgz", + "integrity": "sha512-wH00QnTTldTbf/IefEVyChtRdw5RJvODT/Vb4Vcxq1AZvtXj6T0YeX0cAcXhI6/BdGuiP3GcNIL4OQbI2DVNxg==", "peer": true, "dependencies": { - "@babel/compat-data": "^7.21.4", - "@babel/helper-compilation-targets": "^7.21.4", - "@babel/helper-plugin-utils": "^7.20.2", + "@babel/compat-data": "^7.21.5", + "@babel/helper-compilation-targets": "^7.21.5", + "@babel/helper-plugin-utils": "^7.21.5", "@babel/helper-validator-option": "^7.21.0", "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.20.7", @@ -1665,6 +1654,7 @@ "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-export-namespace-from": "^7.8.3", "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/plugin-syntax-json-strings": "^7.8.3", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", @@ -1674,22 +1664,22 @@ "@babel/plugin-syntax-optional-chaining": "^7.8.3", "@babel/plugin-syntax-private-property-in-object": "^7.14.5", "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.20.7", + "@babel/plugin-transform-arrow-functions": "^7.21.5", "@babel/plugin-transform-async-to-generator": "^7.20.7", "@babel/plugin-transform-block-scoped-functions": "^7.18.6", "@babel/plugin-transform-block-scoping": "^7.21.0", "@babel/plugin-transform-classes": "^7.21.0", - "@babel/plugin-transform-computed-properties": "^7.20.7", + "@babel/plugin-transform-computed-properties": "^7.21.5", "@babel/plugin-transform-destructuring": "^7.21.3", "@babel/plugin-transform-dotall-regex": "^7.18.6", "@babel/plugin-transform-duplicate-keys": "^7.18.9", "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.21.0", + "@babel/plugin-transform-for-of": "^7.21.5", "@babel/plugin-transform-function-name": "^7.18.9", "@babel/plugin-transform-literals": "^7.18.9", "@babel/plugin-transform-member-expression-literals": "^7.18.6", "@babel/plugin-transform-modules-amd": "^7.20.11", - "@babel/plugin-transform-modules-commonjs": "^7.21.2", + "@babel/plugin-transform-modules-commonjs": "^7.21.5", "@babel/plugin-transform-modules-systemjs": "^7.20.11", "@babel/plugin-transform-modules-umd": "^7.18.6", "@babel/plugin-transform-named-capturing-groups-regex": "^7.20.5", @@ -1697,17 +1687,17 @@ "@babel/plugin-transform-object-super": "^7.18.6", "@babel/plugin-transform-parameters": "^7.21.3", "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.20.5", + "@babel/plugin-transform-regenerator": "^7.21.5", "@babel/plugin-transform-reserved-words": "^7.18.6", "@babel/plugin-transform-shorthand-properties": "^7.18.6", "@babel/plugin-transform-spread": "^7.20.7", "@babel/plugin-transform-sticky-regex": "^7.18.6", "@babel/plugin-transform-template-literals": "^7.18.9", "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-escapes": "^7.21.5", "@babel/plugin-transform-unicode-regex": "^7.18.6", "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.21.4", + "@babel/types": "^7.21.5", "babel-plugin-polyfill-corejs2": "^0.3.3", "babel-plugin-polyfill-corejs3": "^0.6.0", "babel-plugin-polyfill-regenerator": "^0.4.1", @@ -1754,14 +1744,14 @@ } }, "node_modules/@babel/preset-typescript": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.4.tgz", - "integrity": "sha512-sMLNWY37TCdRH/bJ6ZeeOH1nPuanED7Ai9Y/vH31IPqalioJ6ZNFUWONsakhv4r4n+I6gm5lmoE0olkgib/j/A==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.5.tgz", + "integrity": "sha512-iqe3sETat5EOrORXiQ6rWfoOg2y68Cs75B9wNxdPW4kixJxh7aXQE1KPdWLDniC24T/6dSnguF33W9j/ZZQcmA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-plugin-utils": "^7.21.5", "@babel/helper-validator-option": "^7.21.0", "@babel/plugin-syntax-jsx": "^7.21.4", - "@babel/plugin-transform-modules-commonjs": "^7.21.2", + "@babel/plugin-transform-modules-commonjs": "^7.21.5", "@babel/plugin-transform-typescript": "^7.21.3" }, "engines": { @@ -1815,9 +1805,9 @@ "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" }, "node_modules/@babel/runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", - "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.5.tgz", + "integrity": "sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q==", "dependencies": { "regenerator-runtime": "^0.13.11" }, @@ -1839,18 +1829,18 @@ } }, "node_modules/@babel/traverse": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.4.tgz", - "integrity": "sha512-eyKrRHKdyZxqDm+fV1iqL9UAHMoIg0nDaGqfIOd8rKH17m5snv7Gn4qgjBoFfLz9APvjFU/ICT00NVCv1Epp8Q==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.5.tgz", + "integrity": "sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==", "dependencies": { "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.4", - "@babel/helper-environment-visitor": "^7.18.9", + "@babel/generator": "^7.21.5", + "@babel/helper-environment-visitor": "^7.21.5", "@babel/helper-function-name": "^7.21.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.4", - "@babel/types": "^7.21.4", + "@babel/parser": "^7.21.5", + "@babel/types": "^7.21.5", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -1859,11 +1849,11 @@ } }, "node_modules/@babel/types": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", - "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.5.tgz", + "integrity": "sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==", "dependencies": { - "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-string-parser": "^7.21.5", "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" }, @@ -3650,9 +3640,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "18.16.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.16.2.tgz", - "integrity": "sha512-GQW/JL/5Fz/0I8RpeBG9lKp0+aNcXEaVL71c0D2Q0QHDTFvlYKT7an0onCUXj85anv7b4/WesqdfchLc0jtsCg==" + "version": "20.1.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.1.tgz", + "integrity": "sha512-uKBEevTNb+l6/aCQaKVnUModfEMjAl98lw2Si9P5y4hLu9tm6AlX2ZIoXZX6Wh9lJueYPrGPKk5WMCNHg/u6/A==" }, "node_modules/@types/normalize-package-data": { "version": "2.4.1", @@ -3672,9 +3662,9 @@ "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" }, "node_modules/@types/react": { - "version": "17.0.58", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.58.tgz", - "integrity": "sha512-c1GzVY97P0fGxwGxhYq989j4XwlcHQoto6wQISOC2v6wm3h0PORRWJFHlkRjfGsiG3y1609WdQ+J+tKxvrEd6A==", + "version": "17.0.59", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.59.tgz", + "integrity": "sha512-gSON5zWYIGyoBcycCE75E9+r6dCC2dHdsrVkOEiIYNU5+Q28HcBAuqvDuxHcCbMfHBHdeT5Tva/AFn3rnMKE4g==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -3750,9 +3740,9 @@ } }, "node_modules/@types/react-test-renderer/node_modules/@types/react": { - "version": "16.14.40", - "resolved": "https://registry.npmjs.org/@types/react/-/react-16.14.40.tgz", - "integrity": "sha512-elQj2VQHDuJ5xuEcn5Wxh/YQFNbEuPJFRKSdyG866awDm5dmtoqsMmuAJWb/l/qd2kDkZMfOTKygVfMIdBBPKg==", + "version": "16.14.41", + "resolved": "https://registry.npmjs.org/@types/react/-/react-16.14.41.tgz", + "integrity": "sha512-h+joCKF2r5rdECoM1U8WCEIHBp5/0TSR5Nyq8gtnnYY1n2WqGuj3indYqTjMb2/b5g2rfxJV6u4jUFq95lbT6Q==", "dev": true, "dependencies": { "@types/prop-types": "*", @@ -4942,9 +4932,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001481", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001481.tgz", - "integrity": "sha512-KCqHwRnaa1InZBtqXzP98LPg0ajCVujMKjqKDhZEthIpAsJl/YEIa3YvXjGXPVqzZVguccuu7ga9KOE1J9rKPQ==", + "version": "1.0.30001486", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz", + "integrity": "sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==", "funding": [ { "type": "opencollective", @@ -5114,9 +5104,9 @@ } }, "node_modules/cli-spinners": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.8.0.tgz", - "integrity": "sha512-/eG5sJcvEIwxcdYM86k5tPwn0MUzkX5YY3eImTGpJOZgVe4SdTMY14vQpcxgBzJ0wXwAYrS8E+c3uHeK4JNyzQ==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.0.tgz", + "integrity": "sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==", "engines": { "node": ">=6" }, @@ -5328,9 +5318,9 @@ } }, "node_modules/core-js-compat": { - "version": "3.30.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.30.1.tgz", - "integrity": "sha512-d690npR7MC6P0gq4npTl5n2VQeNAmUrJ90n+MHiKS7W2+xno4o3F5GDEuylSdi6EJ3VssibSGXOa1r3YXD3Mhw==", + "version": "3.30.2", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.30.2.tgz", + "integrity": "sha512-nriW1nuJjUgvkEjIot1Spwakz52V9YkYHZAQG6A1eCgC8AA1p0zngrQEP9R0+V6hji5XilWKG1Bd0YRppmGimA==", "dependencies": { "browserslist": "^4.21.5" }, @@ -5676,9 +5666,9 @@ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.376", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.376.tgz", - "integrity": "sha512-TFeOKd98TpJzRHkr4Aorn16QkMnuCQuGAE6IZ0wYF+qkbSfMPqjplvRppR02tMUpVxZz8nyBNvVm9lIZsqrbPQ==" + "version": "1.4.387", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.387.tgz", + "integrity": "sha512-tutLf+alr1/0YqJwKPdstVvDLmxmLb5xNyDLNS0RZmenHcEYk9qKfpKDCVZEKJ00JVbnayJm1MZAbYhYDFpcOw==" }, "node_modules/eme-encryption-scheme-polyfill": { "version": "2.1.1", @@ -10921,9 +10911,9 @@ } }, "node_modules/node-fetch": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz", - "integrity": "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==", + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.11.tgz", + "integrity": "sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==", "dependencies": { "whatwg-url": "^5.0.0" }, @@ -11870,9 +11860,9 @@ } }, "node_modules/react-devtools-core": { - "version": "4.27.6", - "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.27.6.tgz", - "integrity": "sha512-jeFNhEzcSwpiqmw+zix5IFibNEPmUodICN7ClrlRKGktzO/3FMteMb52l1NRUiz/ABSYt9hOZ9IPgVDrg5pyUw==", + "version": "4.27.7", + "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.27.7.tgz", + "integrity": "sha512-12N0HrhCPbD76Z7SkyJdGdXdPGouUsgV6tlEsbSpAnLDO06tjXZP+irht4wPdYwJAJRQ85DxL48eQoz7UmrSuQ==", "dependencies": { "shell-quote": "^1.6.1", "ws": "^7" diff --git a/example/package.json b/example/package.json index 8d51c9cc0..97be4d00a 100644 --- a/example/package.json +++ b/example/package.json @@ -1,6 +1,6 @@ { "name": "RNHMSExample", - "version": "1.6.0", + "version": "1.6.1", "private": true, "scripts": { "preinstall": "cd ../ && npm install && cd ./example", diff --git a/package.json b/package.json index 2cb46e71a..cc0b60107 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@100mslive/react-native-hms", - "version": "1.6.0", + "version": "1.6.1", "description": "Integrate Real Time Audio and Video conferencing, Interactive Live Streaming, and Chat in your apps with 100ms React Native SDK. With support for HLS and RTMP Live Streaming and Recording, Picture-in-Picture (PiP), one-to-one Video Call Modes, Audio Rooms, Video Player and much more, add immersive real-time communications to your apps.", "main": "lib/commonjs/index", "module": "lib/module/index", diff --git a/sdk-versions.json b/sdk-versions.json index 6011f7b55..ed10f98df 100644 --- a/sdk-versions.json +++ b/sdk-versions.json @@ -1,5 +1,5 @@ { "ios": "0.9.3", "iOSBroadcastExtension": "0.0.9", - "android": "2.6.2" + "android": "2.6.3" } From 2c37f635bb831fdf965ac446c7d4362d4466b7c8 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Tue, 9 May 2023 22:41:15 +0530 Subject: [PATCH 02/19] updated gems --- example/ios/Gemfile.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/example/ios/Gemfile.lock b/example/ios/Gemfile.lock index 849573e0f..57f6cdc5f 100644 --- a/example/ios/Gemfile.lock +++ b/example/ios/Gemfile.lock @@ -8,16 +8,16 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.756.0) - aws-sdk-core (3.171.0) + aws-partitions (1.761.0) + aws-sdk-core (3.172.0) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) aws-sigv4 (~> 1.5) jmespath (~> 1, >= 1.6.1) - aws-sdk-kms (1.63.0) + aws-sdk-kms (1.64.0) aws-sdk-core (~> 3, >= 3.165.0) aws-sigv4 (~> 1.1) - aws-sdk-s3 (1.121.0) + aws-sdk-s3 (1.122.0) aws-sdk-core (~> 3, >= 3.165.0) aws-sdk-kms (~> 1) aws-sigv4 (~> 1.4) @@ -108,7 +108,7 @@ GEM fastlane-plugin-firebase_app_distribution (0.5.0) fastlane-plugin-versioning (0.5.1) gh_inspector (1.1.3) - google-apis-androidpublisher_v3 (0.40.0) + google-apis-androidpublisher_v3 (0.41.0) google-apis-core (>= 0.11.0, < 2.a) google-apis-core (0.11.0) addressable (~> 2.5, >= 2.5.1) From aeed4a2e42a4944127469e63d16b166c08bb06fc Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Tue, 9 May 2023 22:44:48 +0530 Subject: [PATCH 03/19] corrected lint warnings --- .../HMSAudioshareActivity.kt | 88 +++++++++---------- .../java/com/reactnativehmssdk/HMSDecoder.kt | 24 ++--- .../java/com/reactnativehmssdk/HMSHelper.kt | 70 +++++++-------- .../reactnativehmssdk/HMSSDKViewManager.kt | 4 +- .../HmsScreenshareActivity.kt | 82 ++++++++--------- .../reactnativehmssdk/PipActionReceiver.kt | 4 +- example/ios/Podfile.lock | 4 +- 7 files changed, 138 insertions(+), 138 deletions(-) diff --git a/android/src/main/java/com/reactnativehmssdk/HMSAudioshareActivity.kt b/android/src/main/java/com/reactnativehmssdk/HMSAudioshareActivity.kt index 6e76d24a0..195020df9 100644 --- a/android/src/main/java/com/reactnativehmssdk/HMSAudioshareActivity.kt +++ b/android/src/main/java/com/reactnativehmssdk/HMSAudioshareActivity.kt @@ -13,44 +13,44 @@ import live.hms.video.sdk.HMSActionResultListener class HMSAudioshareActivity : ComponentActivity() { private var resultLauncher: ActivityResultLauncher = - this.registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> - if (result.resultCode == Activity.RESULT_OK) { - val mediaProjectionPermissionResultData: Intent? = result.data - val id = intent.getStringExtra("id") - val audioMixingMode = intent.getStringExtra("audioMixingMode") - HMSManager.hmsCollection[id]?.hmsSDK?.startAudioshare( - object : HMSActionResultListener { - override fun onError(error: HMSException) { - finish() - HMSManager.hmsCollection[id]?.audioshareCallback?.reject(error) - HMSManager.hmsCollection[id]?.emitHMSError(error) - } - override fun onSuccess() { - HMSManager.hmsCollection[id]?.isAudioSharing = true - HMSManager.hmsCollection[id]?.audioshareCallback?.resolve( - HMSManager.hmsCollection[id]?.emitHMSSuccess() - ) - finish() - } - }, - mediaProjectionPermissionResultData, - HMSHelper.getAudioMixingMode(audioMixingMode) - ) - } else { - val id = intent.getStringExtra("id") - val error = - HMSException( - 103, - "RESULT_CANCELED", - "RESULT_CANCELED", - "RESULT_CANCELED", - "RESULT_CANCELED" + this.registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> + if (result.resultCode == Activity.RESULT_OK) { + val mediaProjectionPermissionResultData: Intent? = result.data + val id = intent.getStringExtra("id") + val audioMixingMode = intent.getStringExtra("audioMixingMode") + HMSManager.hmsCollection[id]?.hmsSDK?.startAudioshare( + object : HMSActionResultListener { + override fun onError(error: HMSException) { + finish() + HMSManager.hmsCollection[id]?.audioshareCallback?.reject(error) + HMSManager.hmsCollection[id]?.emitHMSError(error) + } + override fun onSuccess() { + HMSManager.hmsCollection[id]?.isAudioSharing = true + HMSManager.hmsCollection[id]?.audioshareCallback?.resolve( + HMSManager.hmsCollection[id]?.emitHMSSuccess(), ) - HMSManager.hmsCollection[id]?.audioshareCallback?.reject(error) - HMSManager.hmsCollection[id]?.emitHMSError(error) - finish() - } + finish() + } + }, + mediaProjectionPermissionResultData, + HMSHelper.getAudioMixingMode(audioMixingMode), + ) + } else { + val id = intent.getStringExtra("id") + val error = + HMSException( + 103, + "RESULT_CANCELED", + "RESULT_CANCELED", + "RESULT_CANCELED", + "RESULT_CANCELED", + ) + HMSManager.hmsCollection[id]?.audioshareCallback?.reject(error) + HMSManager.hmsCollection[id]?.emitHMSError(error) + finish() } + } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -63,20 +63,20 @@ class HMSAudioshareActivity : ComponentActivity() { if (isAudioShared !== null && !isAudioShared) { try { val mediaProjectionManager = - getSystemService(Context.MEDIA_PROJECTION_SERVICE) as MediaProjectionManager + getSystemService(Context.MEDIA_PROJECTION_SERVICE) as MediaProjectionManager resultLauncher.launch(mediaProjectionManager.createScreenCaptureIntent()) } catch (e: Exception) { println(e) } } else { HMSManager.hmsCollection[id]?.emitHMSError( - HMSException( - 103, - "AUDIOSHARE_IS_ALREADY_RUNNING", - "AUDIOSHARE_IS_ALREADY_RUNNING", - "AUDIOSHARE_IS_ALREADY_RUNNING", - "AUDIOSHARE_IS_ALREADY_RUNNING" - ) + HMSException( + 103, + "AUDIOSHARE_IS_ALREADY_RUNNING", + "AUDIOSHARE_IS_ALREADY_RUNNING", + "AUDIOSHARE_IS_ALREADY_RUNNING", + "AUDIOSHARE_IS_ALREADY_RUNNING", + ), ) finish() } diff --git a/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt b/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt index afc92836e..51cd3c1f1 100644 --- a/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +++ b/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt @@ -42,7 +42,7 @@ object HMSDecoder { hmsRoom.browserRecordingState?.let { room.putMap( "browserRecordingState", - this.getHMSBrowserRecordingState(it) + this.getHMSBrowserRecordingState(it), ) } } @@ -55,7 +55,7 @@ object HMSDecoder { hmsRoom.rtmpHMSRtmpStreamingState?.let { room.putMap( "rtmpHMSRtmpStreamingState", - this.getHMSRtmpStreamingState(it) + this.getHMSRtmpStreamingState(it), ) } } @@ -63,7 +63,7 @@ object HMSDecoder { hmsRoom.serverRecordingState?.let { room.putMap( "serverRecordingState", - this.getHMSServerRecordingState(it) + this.getHMSServerRecordingState(it), ) } } @@ -88,21 +88,21 @@ object HMSDecoder { hmsRoom.browserRecordingState?.let { room.putMap( "browserRecordingState", - this.getHMSBrowserRecordingState(it) + this.getHMSBrowserRecordingState(it), ) } hmsRoom.rtmpHMSRtmpStreamingState?.let { room.putMap( "rtmpHMSRtmpStreamingState", - this.getHMSRtmpStreamingState(it) + this.getHMSRtmpStreamingState(it), ) } hmsRoom.serverRecordingState?.let { room.putMap( "serverRecordingState", - this.getHMSServerRecordingState(it) + this.getHMSServerRecordingState(it), ) } @@ -445,7 +445,7 @@ object HMSDecoder { if (hmsAudioTrackSettings != null) { settings.putBoolean( "useHardwareAcousticEchoCanceler", - hmsAudioTrackSettings.useHardwareAcousticEchoCanceler + hmsAudioTrackSettings.useHardwareAcousticEchoCanceler, ) settings.putString("initialState", hmsAudioTrackSettings.initialState.name) } @@ -689,28 +689,28 @@ object HMSDecoder { subscribeSettings.putArray( "subscribeTo", - this.getWriteableArray(hmsSubscribeSettings.subscribeTo) + this.getWriteableArray(hmsSubscribeSettings.subscribeTo), ) } return subscribeSettings } private fun getHmsSubscribeDegradationSettings( - hmsSubscribeDegradationParams: SubscribeDegradationParams? + hmsSubscribeDegradationParams: SubscribeDegradationParams?, ): WritableMap { val subscribeDegradationParams: WritableMap = Arguments.createMap() if (hmsSubscribeDegradationParams != null) { subscribeDegradationParams.putString( "degradeGracePeriodSeconds", - hmsSubscribeDegradationParams.degradeGracePeriodSeconds.toString() + hmsSubscribeDegradationParams.degradeGracePeriodSeconds.toString(), ) subscribeDegradationParams.putString( "packetLossThreshold", - hmsSubscribeDegradationParams.packetLossThreshold.toString() + hmsSubscribeDegradationParams.packetLossThreshold.toString(), ) subscribeDegradationParams.putString( "recoverGracePeriodSeconds", - hmsSubscribeDegradationParams.recoverGracePeriodSeconds.toString() + hmsSubscribeDegradationParams.recoverGracePeriodSeconds.toString(), ) } return subscribeDegradationParams diff --git a/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt b/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt index 4d124fb2d..360727a8c 100644 --- a/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt +++ b/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt @@ -32,7 +32,7 @@ object HMSHelper { fun areAllRequiredKeysAvailable( map: ReadableMap?, - requiredKeys: Array> + requiredKeys: Array>, ): Boolean { if (map == null) { return false @@ -65,7 +65,7 @@ object HMSHelper { fun getUnavailableRequiredKey( map: ReadableMap?, - requiredKeys: Array> + requiredKeys: Array>, ): String? { if (map == null) { return "Object_Is_Null" @@ -112,7 +112,7 @@ object HMSHelper { fun getRolesFromRoleNames( targetedRoles: ArrayList?, - roles: List? + roles: List?, ): List { val encodedRoles: MutableList = mutableListOf() @@ -163,9 +163,9 @@ object HMSHelper { fun getFrameworkInfo(data: ReadableMap?): FrameworkInfo? { if (data != null && this.areAllRequiredKeysAvailable( - data, - arrayOf(Pair("version", "String"), Pair("sdkVersion", "String")) - ) + data, + arrayOf(Pair("version", "String"), Pair("sdkVersion", "String")), + ) ) { val version = data.getString("version") as String val sdkVersion = data.getString("sdkVersion") as String @@ -177,13 +177,13 @@ object HMSHelper { fun getLogSettings(data: ReadableMap?): HMSLogSettings? { if (data != null && this.areAllRequiredKeysAvailable( - data, - arrayOf( - Pair("level", "String"), - Pair("maxDirSizeInBytes", "String"), - Pair("isLogStorageEnabled", "Boolean") - ) - ) + data, + arrayOf( + Pair("level", "String"), + Pair("maxDirSizeInBytes", "String"), + Pair("isLogStorageEnabled", "Boolean"), + ), + ) ) { val level = getLogLevel(data.getString("level")) val maxDirSizeInBytes = getLogAlarmManager(data.getString("maxDirSizeInBytes")) @@ -370,7 +370,7 @@ object HMSHelper { } private fun getHMSHLSMeetingURLVariants( - hmsMeetingURLVariants: ArrayList>? + hmsMeetingURLVariants: ArrayList>?, ): List { val meetingURLVariants = mutableListOf() if (hmsMeetingURLVariants !== null) { @@ -388,14 +388,14 @@ object HMSHelper { var videoOnDemand = false if (areAllRequiredKeysAvailable( hmsHlsRecordingConfig, - arrayOf(Pair("singleFilePerLayer", "Boolean")) + arrayOf(Pair("singleFilePerLayer", "Boolean")), ) ) { singleFilePerLayer = hmsHlsRecordingConfig.getBoolean("singleFilePerLayer") } if (areAllRequiredKeysAvailable( hmsHlsRecordingConfig, - arrayOf(Pair("videoOnDemand", "Boolean")) + arrayOf(Pair("videoOnDemand", "Boolean")), ) ) { videoOnDemand = hmsHlsRecordingConfig.getBoolean("videoOnDemand") @@ -406,7 +406,7 @@ object HMSHelper { } private fun getHMSHLSMeetingURLVariant( - hmsMeetingURLVariant: HashMap? + hmsMeetingURLVariant: HashMap?, ): HMSHLSMeetingURLVariant { var meetingURLVariant = HMSHLSMeetingURLVariant("", "") if (hmsMeetingURLVariant !== null) { @@ -453,7 +453,7 @@ object HMSHelper { var config = HMSConfig( credentials.getString("username") as String, - credentials.getString("authToken") as String + credentials.getString("authToken") as String, ) when { @@ -462,8 +462,8 @@ object HMSHelper { arrayOf( Pair("endpoint", "String"), Pair("metadata", "String"), - Pair("captureNetworkQualityInPreview", "Boolean") - ) + Pair("captureNetworkQualityInPreview", "Boolean"), + ), ) -> { config = HMSConfig( @@ -472,24 +472,24 @@ object HMSHelper { initEndpoint = credentials.getString("endpoint") as String, metadata = credentials.getString("metadata") as String, captureNetworkQualityInPreview = - credentials.getBoolean("captureNetworkQualityInPreview") + credentials.getBoolean("captureNetworkQualityInPreview"), ) } areAllRequiredKeysAvailable( credentials, - arrayOf(Pair("endpoint", "String"), Pair("metadata", "String")) + arrayOf(Pair("endpoint", "String"), Pair("metadata", "String")), ) -> { config = HMSConfig( credentials.getString("username") as String, credentials.getString("authToken") as String, initEndpoint = credentials.getString("endpoint") as String, - metadata = credentials.getString("metadata") as String + metadata = credentials.getString("metadata") as String, ) } areAllRequiredKeysAvailable( credentials, - arrayOf(Pair("endpoint", "String"), Pair("captureNetworkQualityInPreview", "Boolean")) + arrayOf(Pair("endpoint", "String"), Pair("captureNetworkQualityInPreview", "Boolean")), ) -> { config = HMSConfig( @@ -497,12 +497,12 @@ object HMSHelper { credentials.getString("authToken") as String, initEndpoint = credentials.getString("endpoint") as String, captureNetworkQualityInPreview = - credentials.getBoolean("captureNetworkQualityInPreview") + credentials.getBoolean("captureNetworkQualityInPreview"), ) } areAllRequiredKeysAvailable( credentials, - arrayOf(Pair("metadata", "String"), Pair("captureNetworkQualityInPreview", "Boolean")) + arrayOf(Pair("metadata", "String"), Pair("captureNetworkQualityInPreview", "Boolean")), ) -> { config = HMSConfig( @@ -510,7 +510,7 @@ object HMSHelper { credentials.getString("authToken") as String, metadata = credentials.getString("metadata") as String, captureNetworkQualityInPreview = - credentials.getBoolean("captureNetworkQualityInPreview") + credentials.getBoolean("captureNetworkQualityInPreview"), ) } areAllRequiredKeysAvailable(credentials, arrayOf(Pair("endpoint", "String"))) -> { @@ -518,7 +518,7 @@ object HMSHelper { HMSConfig( credentials.getString("username") as String, credentials.getString("authToken") as String, - initEndpoint = credentials.getString("endpoint") as String + initEndpoint = credentials.getString("endpoint") as String, ) } areAllRequiredKeysAvailable(credentials, arrayOf(Pair("metadata", "String"))) -> { @@ -526,19 +526,19 @@ object HMSHelper { HMSConfig( credentials.getString("username") as String, credentials.getString("authToken") as String, - metadata = credentials.getString("metadata") as String + metadata = credentials.getString("metadata") as String, ) } areAllRequiredKeysAvailable( credentials, - arrayOf(Pair("captureNetworkQualityInPreview", "Boolean")) + arrayOf(Pair("captureNetworkQualityInPreview", "Boolean")), ) -> { config = HMSConfig( credentials.getString("username") as String, credentials.getString("authToken") as String, captureNetworkQualityInPreview = - credentials.getBoolean("captureNetworkQualityInPreview") + credentials.getBoolean("captureNetworkQualityInPreview"), ) } } @@ -552,7 +552,7 @@ object HMSHelper { sdkId: String, args: ReadableArray?, context: Context, - id: Int + id: Int, ) { val output = Arguments.createMap() if (args != null) { @@ -587,8 +587,8 @@ object HMSHelper { copyResult.toString(), copyResult.toString(), copyResult.toString(), - copyResult.toString() - ) + copyResult.toString(), + ), ) output.putString("error", copyResult.toString()) reactContext @@ -596,7 +596,7 @@ object HMSHelper { .receiveEvent(id, "captureFrame", output) } }, - Handler() + Handler(), ) } catch (e: Exception) { Log.e("captureSurfaceView", "error: $e") diff --git a/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt b/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt index 6aa2be3c9..f1b9bb5a5 100644 --- a/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt +++ b/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt @@ -28,7 +28,7 @@ class HMSSDKViewManager : SimpleViewManager() { return MapBuilder.builder() .put( "topChange", - MapBuilder.of("phasedRegistrationNames", MapBuilder.of("bubbled", "onChange")) + MapBuilder.of("phasedRegistrationNames", MapBuilder.of("bubbled", "onChange")), ) .build() } @@ -36,7 +36,7 @@ class HMSSDKViewManager : SimpleViewManager() { override fun getExportedCustomDirectEventTypeConstants(): MutableMap? { return MapBuilder.of( "captureFrame", - MapBuilder.of("registrationName", "onDataReturned") + MapBuilder.of("registrationName", "onDataReturned"), ) } diff --git a/android/src/main/java/com/reactnativehmssdk/HmsScreenshareActivity.kt b/android/src/main/java/com/reactnativehmssdk/HmsScreenshareActivity.kt index 7463ed8c4..d96ce568f 100644 --- a/android/src/main/java/com/reactnativehmssdk/HmsScreenshareActivity.kt +++ b/android/src/main/java/com/reactnativehmssdk/HmsScreenshareActivity.kt @@ -13,41 +13,41 @@ import live.hms.video.sdk.HMSActionResultListener class HmsScreenshareActivity : ComponentActivity() { private var resultLauncher: ActivityResultLauncher = - this.registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> - if (result.resultCode == Activity.RESULT_OK) { - val mediaProjectionPermissionResultData: Intent? = result.data - val id = intent.getStringExtra("id") - HMSManager.hmsCollection[id]?.hmsSDK?.startScreenshare( - object : HMSActionResultListener { - override fun onError(error: HMSException) { - finish() - HMSManager.hmsCollection[id]?.screenshareCallback?.reject(error) - HMSManager.hmsCollection[id]?.emitHMSError(error) - } - override fun onSuccess() { - HMSManager.hmsCollection[id]?.screenshareCallback?.resolve( - HMSManager.hmsCollection[id]?.emitHMSSuccess() - ) - finish() - } - }, - mediaProjectionPermissionResultData - ) - } else { - val id = intent.getStringExtra("id") - val error = - HMSException( - 103, - "RESULT_CANCELED", - "RESULT_CANCELED", - "RESULT_CANCELED", - "RESULT_CANCELED" + this.registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> + if (result.resultCode == Activity.RESULT_OK) { + val mediaProjectionPermissionResultData: Intent? = result.data + val id = intent.getStringExtra("id") + HMSManager.hmsCollection[id]?.hmsSDK?.startScreenshare( + object : HMSActionResultListener { + override fun onError(error: HMSException) { + finish() + HMSManager.hmsCollection[id]?.screenshareCallback?.reject(error) + HMSManager.hmsCollection[id]?.emitHMSError(error) + } + override fun onSuccess() { + HMSManager.hmsCollection[id]?.screenshareCallback?.resolve( + HMSManager.hmsCollection[id]?.emitHMSSuccess(), ) - HMSManager.hmsCollection[id]?.screenshareCallback?.reject(error) - HMSManager.hmsCollection[id]?.emitHMSError(error) - finish() - } + finish() + } + }, + mediaProjectionPermissionResultData, + ) + } else { + val id = intent.getStringExtra("id") + val error = + HMSException( + 103, + "RESULT_CANCELED", + "RESULT_CANCELED", + "RESULT_CANCELED", + "RESULT_CANCELED", + ) + HMSManager.hmsCollection[id]?.screenshareCallback?.reject(error) + HMSManager.hmsCollection[id]?.emitHMSError(error) + finish() } + } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -60,20 +60,20 @@ class HmsScreenshareActivity : ComponentActivity() { if (isScreenShared !== null && !isScreenShared) { try { val mediaProjectionManager = - getSystemService(Context.MEDIA_PROJECTION_SERVICE) as MediaProjectionManager + getSystemService(Context.MEDIA_PROJECTION_SERVICE) as MediaProjectionManager resultLauncher.launch(mediaProjectionManager.createScreenCaptureIntent()) } catch (e: Exception) { println(e) } } else { HMSManager.hmsCollection[id]?.emitHMSError( - HMSException( - 103, - "SCREENSHARE_IS_ALREADY_RUNNING", - "SCREENSHARE_IS_ALREADY_RUNNING", - "SCREENSHARE_IS_ALREADY_RUNNING", - "SCREENSHARE_IS_ALREADY_RUNNING" - ) + HMSException( + 103, + "SCREENSHARE_IS_ALREADY_RUNNING", + "SCREENSHARE_IS_ALREADY_RUNNING", + "SCREENSHARE_IS_ALREADY_RUNNING", + "SCREENSHARE_IS_ALREADY_RUNNING", + ), ) finish() } diff --git a/android/src/main/java/com/reactnativehmssdk/PipActionReceiver.kt b/android/src/main/java/com/reactnativehmssdk/PipActionReceiver.kt index a3a17fe62..71c8a18ac 100644 --- a/android/src/main/java/com/reactnativehmssdk/PipActionReceiver.kt +++ b/android/src/main/java/com/reactnativehmssdk/PipActionReceiver.kt @@ -16,7 +16,7 @@ data class PIPActions(val endMeet: PIPAction, val localAudio: PIPAction, val loc class PipActionReceiver( val toggleLocalAudio: () -> Unit, val toggleLocalVideo: () -> Unit, - val endMeeting: () -> Unit + val endMeeting: () -> Unit, ) : BroadcastReceiver() { companion object { var sdkIdForPIP: String? = null @@ -25,7 +25,7 @@ class PipActionReceiver( val PIPActions = PIPActions( endMeet = PIPAction(title = "End", description = "End Meeting", requestCode = 346), localAudio = PIPAction(title = "Mic", description = "Toggle Mic", requestCode = 344), - localVideo = PIPAction(title = "Camera", description = "Toggle Camera", requestCode = 345) + localVideo = PIPAction(title = "Camera", description = "Toggle Camera", requestCode = 345), ) } diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index 9abb64184..7a80b88a3 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -290,7 +290,7 @@ PODS: - React-Core - react-native-document-picker (8.2.0): - React-Core - - react-native-hms (1.6.0): + - react-native-hms (1.6.1): - HMSBroadcastExtensionSDK (= 0.0.9) - HMSSDK (= 0.9.3) - React-Core @@ -622,7 +622,7 @@ SPEC CHECKSUMS: react-native-camera: 3eae183c1d111103963f3dd913b65d01aef8110f react-native-cameraroll: 8ffb0af7a5e5de225fd667610e2979fc1f0c2151 react-native-document-picker: 495c444c0c773c6e83a5d91165890ecb1c0a399a - react-native-hms: c9abf96e679adffa22bddea2539fc86b7835d4c1 + react-native-hms: 829ff0e6aa28a3e94124d75f787375bfe9a9c893 react-native-safe-area-context: 9e40fb181dac02619414ba1294d6c2a807056ab9 react-native-simple-toast: 8ee5d23f0b92b935ab7434cdb65159ce12dfb4b7 react-native-video: c26780b224543c62d5e1b2a7244a5cd1b50e8253 From a589b3be166124927ae388abcd8c9b5201724020 Mon Sep 17 00:00:00 2001 From: Jatin Nagar Date: Wed, 10 May 2023 23:06:27 +0530 Subject: [PATCH 04/19] hmsview scaling type POC changes --- .../reactnativehmssdk/HMSSDKViewManager.kt | 7 +- .../java/com/reactnativehmssdk/HMSView.kt | 131 ++++++++++-------- .../screens/MeetingScreen/PeerDisplayView.tsx | 84 ++++++----- src/classes/HmsView.tsx | 39 +++--- 4 files changed, 156 insertions(+), 105 deletions(-) diff --git a/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt b/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt index 6aa2be3c9..a3b82ae7d 100644 --- a/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt +++ b/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt @@ -28,7 +28,7 @@ class HMSSDKViewManager : SimpleViewManager() { return MapBuilder.builder() .put( "topChange", - MapBuilder.of("phasedRegistrationNames", MapBuilder.of("bubbled", "onChange")) + MapBuilder.of("phasedRegistrationNames", MapBuilder.of("bubbled", "onChange")), ) .build() } @@ -36,7 +36,7 @@ class HMSSDKViewManager : SimpleViewManager() { override fun getExportedCustomDirectEventTypeConstants(): MutableMap? { return MapBuilder.of( "captureFrame", - MapBuilder.of("registrationName", "onDataReturned") + MapBuilder.of("registrationName", "onDataReturned"), ) } @@ -64,9 +64,10 @@ class HMSSDKViewManager : SimpleViewManager() { val trackId = data.getString("trackId") val id = data.getString("id") val mirror = data.getBoolean("mirror") + val scaleType = data.getString("scaleType") val hmsCollection = getHms() if (hmsCollection != null) { - view.setData(id, trackId, hmsCollection, mirror) + view.setData(id, trackId, hmsCollection, mirror, scaleType) } } diff --git a/android/src/main/java/com/reactnativehmssdk/HMSView.kt b/android/src/main/java/com/reactnativehmssdk/HMSView.kt index 8260f7126..7ee5c4483 100644 --- a/android/src/main/java/com/reactnativehmssdk/HMSView.kt +++ b/android/src/main/java/com/reactnativehmssdk/HMSView.kt @@ -5,6 +5,7 @@ import android.content.Context import android.os.Build import android.util.Log import android.view.LayoutInflater +import android.view.View import android.widget.FrameLayout import androidx.annotation.RequiresApi import com.facebook.react.bridge.Arguments @@ -12,35 +13,67 @@ import com.facebook.react.bridge.ReactContext import com.facebook.react.bridge.ReadableArray import com.facebook.react.bridge.WritableMap import com.facebook.react.uimanager.events.RCTEventEmitter +import kotlinx.coroutines.* import live.hms.video.media.tracks.HMSVideoTrack import live.hms.video.utils.HmsUtilities import live.hms.videoview.HMSVideoView +import live.hms.videoview.VideoViewStateChangeListener import org.webrtc.RendererCommon @SuppressLint("ViewConstructor") class HMSView(context: ReactContext) : FrameLayout(context) { - private var hmsVideoView: HMSVideoView = HMSVideoView(context) + private var hmsVideoView: HMSVideoView? = null private var videoTrack: HMSVideoTrack? = null private var scaleTypeApplied: Boolean = false private var sdkId: String = "12345" - private var currentScaleType: RendererCommon.ScalingType = - RendererCommon.ScalingType.SCALE_ASPECT_FILL private var disableAutoSimulcastLayerSelect = false + var view: View? = null init { val inflater = getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater - val view = inflater.inflate(R.layout.hms_view, this) + view = inflater.inflate(R.layout.hms_view, this) - hmsVideoView = view.findViewById(R.id.hmsVideoView) - hmsVideoView.setEnableHardwareScaler(false) - hmsVideoView.setScalingType(currentScaleType) - hmsVideoView.setMirror(false) - hmsVideoView.disableAutoSimulcastLayerSelect(disableAutoSimulcastLayerSelect) + hmsVideoView = view!!.findViewById(R.id.hmsVideoView) + hmsVideoView?.setEnableHardwareScaler(false) + + hmsVideoView?.setMirror(false) + hmsVideoView?.disableAutoSimulcastLayerSelect(disableAutoSimulcastLayerSelect) + + hmsVideoView?.addVideoViewStateChangeListener(object : VideoViewStateChangeListener { + override fun onResolutionChange(newWidth: Int, newHeight: Int) { + super.onResolutionChange(newWidth, newHeight) + Log.i("HMSView", "hmsVideoView resolution changed, newWidth = $newWidth, newHeight = $newHeight") + Log.i("HMSView", "old width -> ${hmsVideoView?.width}") + Log.i("HMSView", "old height -> ${hmsVideoView?.height}") + + val event: WritableMap = Arguments.createMap() + context.getJSModule(RCTEventEmitter::class.java).receiveEvent(id, "topChange", event) + +// val width = hmsVideoView.width +// val height = hmsVideoView.height +// val aspectRatio = newWidth / newHeight +// if (width >= height) { +// hmsVideoView.layoutParams.width = height * aspectRatio +// } else { +// hmsVideoView.layoutParams.height = width / aspectRatio +// } +// Log.i("HMSView", "new width -> ${hmsVideoView.width}") +// Log.i("HMSView", "new height -> ${hmsVideoView.height}") + } + + override fun onFirstFrameRendered() { + super.onFirstFrameRendered() + Log.i("HMSView", "hmsVideoView First Frame Rendered") + } + }) } @RequiresApi(Build.VERSION_CODES.N) fun captureHmsView(args: ReadableArray?) { - HMSHelper.captureSurfaceView(hmsVideoView, sdkId, args, context, id) +// hmsVideoView?.let { +// HMSHelper.captureSurfaceView(it, sdkId, args, context, id) +// } +// } private fun onReceiveNativeEvent() { @@ -52,58 +85,27 @@ class HMSView(context: ReactContext) : FrameLayout(context) { override fun onDetachedFromWindow() { super.onDetachedFromWindow() - hmsVideoView.removeTrack() } override fun onAttachedToWindow() { super.onAttachedToWindow() + Log.i("HMSView", "width -> ${hmsVideoView?.width}") + Log.i("HMSView", "height -> ${hmsVideoView?.height}") - videoTrack?.let { // Safe Call Operator to check if videoTrack is not null - hmsVideoView.addTrack(it) // add the videoTrack to the hmsVideoView - if (!scaleTypeApplied) { // check if the scaleTypeApplied flag is false - if (currentScaleType != RendererCommon.ScalingType.SCALE_ASPECT_FILL) { // check if the currentScaleType is not SCALE_ASPECT_FILL - onReceiveNativeEvent() // call the onReceiveNativeEvent function - } - scaleTypeApplied = true // set the scaleTypeApplied flag to true - } - } ?: run { // Elvis Operator to handle the case when videoTrack is null - Log.e( - "HMSView", - "HMSView attached to window, but it's videoTrack is null", - ) // log an error message - } +// view!!.layoutParams.width = FrameLayout.LayoutParams.WRAP_CONTENT +// view!!.layoutParams.height = FrameLayout.LayoutParams.WRAP_CONTENT + +// hmsVideoView.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FILL) } fun updateZOrderMediaOverlay(setZOrderMediaOverlay: Boolean?) { - if (setZOrderMediaOverlay != null && setZOrderMediaOverlay) { - // hmsVideoView.setZOrderOnTop(true); - hmsVideoView.setZOrderMediaOverlay(setZOrderMediaOverlay) - } +// if (setZOrderMediaOverlay != null && setZOrderMediaOverlay) { +// // hmsVideoView.setZOrderOnTop(true); +// hmsVideoView.setZOrderMediaOverlay(setZOrderMediaOverlay) +// } } fun updateScaleType(scaleType: String?) { - if (scaleType != null) { - when (scaleType) { - "ASPECT_FIT" -> { - hmsVideoView.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FIT) - currentScaleType = RendererCommon.ScalingType.SCALE_ASPECT_FIT - return - } - "ASPECT_FILL" -> { - hmsVideoView.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FILL) - currentScaleType = RendererCommon.ScalingType.SCALE_ASPECT_FILL - return - } - "ASPECT_BALANCED" -> { - hmsVideoView.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_BALANCED) - currentScaleType = RendererCommon.ScalingType.SCALE_ASPECT_BALANCED - return - } - else -> { - return - } - } - } } fun setData( @@ -111,6 +113,7 @@ class HMSView(context: ReactContext) : FrameLayout(context) { trackId: String?, hmsCollection: MutableMap, mirror: Boolean?, + scaleType: String?, ) { if (id != null) { sdkId = id @@ -119,16 +122,34 @@ class HMSView(context: ReactContext) : FrameLayout(context) { if (trackId != null && hms != null) { if (mirror != null) { - hmsVideoView.setMirror(mirror) + hmsVideoView?.setMirror(mirror) } - // TODO: can be optimized here - videoTrack = hms.getRoom()?.let { HmsUtilities.getVideoTrack(trackId, it) } + Log.i("HMSView", "width inside setData fn before adding track -> ${hmsVideoView?.width}") + Log.i("HMSView", "height inside setData fn before adding track -> ${hmsVideoView?.height}") + + val videoTrack = hms.getRoom()?.let { HmsUtilities.getVideoTrack(trackId, it) } + + videoTrack?.let { + hmsVideoView?.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FIT) + hmsVideoView?.addTrack(it) + +// hmsVideoView.layoutParams.width = 300 * 3 +// hmsVideoView.layoutParams.height = 169 * 3 + } ?: run { + Log.e( + "HMSView", + "HMSView attached to window, but it's videoTrack is null", + ) + } + + Log.i("HMSView", "width inside setData fn after adding track -> ${hmsVideoView?.width}") + Log.i("HMSView", "height inside setData fn after adding track -> ${hmsVideoView?.height}") } } fun updateAutoSimulcast(autoSimulcast: Boolean?) { autoSimulcast?.let { - hmsVideoView.disableAutoSimulcastLayerSelect(!it) + hmsVideoView?.disableAutoSimulcastLayerSelect(!it) } } } diff --git a/example/src/screens/MeetingScreen/PeerDisplayView.tsx b/example/src/screens/MeetingScreen/PeerDisplayView.tsx index 96e490bc8..cd8073406 100644 --- a/example/src/screens/MeetingScreen/PeerDisplayView.tsx +++ b/example/src/screens/MeetingScreen/PeerDisplayView.tsx @@ -40,7 +40,7 @@ const PeerDisplayViewUnmemoized = React.forwardRef< } return ( - + {videoTrack?.isMute() || videoTrack?.trackId === undefined ? ( @@ -48,36 +48,58 @@ const PeerDisplayViewUnmemoized = React.forwardRef< ) : ( - - - {isDegraded && ( - - - Degraded - - - )} - + )} ); diff --git a/src/classes/HmsView.tsx b/src/classes/HmsView.tsx index fab00caec..58401d17e 100644 --- a/src/classes/HmsView.tsx +++ b/src/classes/HmsView.tsx @@ -14,11 +14,12 @@ interface HmsViewProps { trackId: string; id: string; mirror: boolean; + scaleType: HMSVideoViewMode; }; autoSimulcast: boolean; setZOrderMediaOverlay: boolean; - scaleType: HMSVideoViewMode; - style: ViewStyle; + // scaleType: HMSVideoViewMode; + // style: ViewStyle; onChange: Function; onDataReturned: Function; } @@ -41,7 +42,8 @@ export const HmsViewComponent = React.forwardRef( (props, ref) => { const { trackId, - style = temporaryStyles.customStyle, + // style = temporaryStyles.customStyle, + style, id = HMSConstants.DEFAULT_SDK_ID, mirror = false, setZOrderMediaOverlay = false, @@ -52,10 +54,12 @@ export const HmsViewComponent = React.forwardRef( const hmsViewRef: any = useRef(); const timerRef = useRef(null); const [tempVal, setTempVal] = useState(0); + const [t, setT] = useState(false); const data = { trackId, id, mirror, + scaleType, }; useEffect(() => { @@ -67,15 +71,17 @@ export const HmsViewComponent = React.forwardRef( }, []); const onChange = (values: any) => { - console.log(values, 'values'); - if (timerRef.current) { - clearTimeout(timerRef.current); - } + // console.log(values, 'values'); + // if (timerRef.current) { + // clearTimeout(timerRef.current); + // } + + // timerRef.current = setTimeout(() => { + // setTempVal(1); + // timerRef.current = null; + // }, 2000); - timerRef.current = setTimeout(() => { - setTempVal(1); - timerRef.current = null; - }, 2000); + setT(true); }; const _onDataReturned = (event: { @@ -124,16 +130,18 @@ export const HmsViewComponent = React.forwardRef( setTempVal(0); }, [tempVal]); + console.log('$$$ tempVal in HMSView -> ', tempVal); return ( null} /> ); } @@ -141,7 +149,6 @@ export const HmsViewComponent = React.forwardRef( const temporaryStyles = StyleSheet.create({ customStyle: { - width: '100%', - height: '50%', + flex: 1, }, }); From c9c5a2a094cedac83dc0a1b46a70b3bc88bd4cf6 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Thu, 11 May 2023 16:54:23 +0530 Subject: [PATCH 05/19] updated packages --- example/android/Gemfile.lock | 4 +- example/ios/Gemfile.lock | 4 +- example/package-lock.json | 12 +- package-lock.json | 380 ++++++++++++++++++----------------- 4 files changed, 204 insertions(+), 196 deletions(-) diff --git a/example/android/Gemfile.lock b/example/android/Gemfile.lock index 3a6919368..a599311a3 100644 --- a/example/android/Gemfile.lock +++ b/example/android/Gemfile.lock @@ -8,7 +8,7 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.761.0) + aws-partitions (1.762.0) aws-sdk-core (3.172.0) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) @@ -220,4 +220,4 @@ DEPENDENCIES fastlane-plugin-firebase_app_distribution BUNDLED WITH - 2.4.12 + 2.4.13 diff --git a/example/ios/Gemfile.lock b/example/ios/Gemfile.lock index 57f6cdc5f..ae090cc47 100644 --- a/example/ios/Gemfile.lock +++ b/example/ios/Gemfile.lock @@ -8,7 +8,7 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.761.0) + aws-partitions (1.762.0) aws-sdk-core (3.172.0) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) @@ -220,4 +220,4 @@ DEPENDENCIES fastlane-plugin-versioning BUNDLED WITH - 2.4.12 + 2.4.13 diff --git a/example/package-lock.json b/example/package-lock.json index d3319686f..0fd902ce6 100644 --- a/example/package-lock.json +++ b/example/package-lock.json @@ -3640,9 +3640,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.1.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.1.tgz", - "integrity": "sha512-uKBEevTNb+l6/aCQaKVnUModfEMjAl98lw2Si9P5y4hLu9tm6AlX2ZIoXZX6Wh9lJueYPrGPKk5WMCNHg/u6/A==" + "version": "20.1.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.2.tgz", + "integrity": "sha512-CTO/wa8x+rZU626cL2BlbCDzydgnFNgc19h4YvizpTO88MFQxab8wqisxaofQJ/9bLGugRdWIuX/TbIs6VVF6g==" }, "node_modules/@types/normalize-package-data": { "version": "2.4.1", @@ -5666,9 +5666,9 @@ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.387", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.387.tgz", - "integrity": "sha512-tutLf+alr1/0YqJwKPdstVvDLmxmLb5xNyDLNS0RZmenHcEYk9qKfpKDCVZEKJ00JVbnayJm1MZAbYhYDFpcOw==" + "version": "1.4.391", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.391.tgz", + "integrity": "sha512-GqydVV1+kUWY5qlEzaw34/hyWTApuQrHiGrcGA2Kk/56nEK44i+YUW45VH43JuZT0Oo7uY8aVtpPhBBZXEWtSA==" }, "node_modules/eme-encryption-scheme-polyfill": { "version": "2.1.1", diff --git a/package-lock.json b/package-lock.json index 31e06fd11..f3941c35a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@100mslive/react-native-hms", - "version": "1.6.0", + "version": "1.6.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@100mslive/react-native-hms", - "version": "1.6.0", + "version": "1.6.1", "license": "MIT", "devDependencies": { "@commitlint/config-conventional": "^11.0.0", @@ -57,30 +57,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.4.tgz", - "integrity": "sha512-/DYyDpeCfaVinT40FPGdkkb+lYSKvsVuMjDAG7jPOWWiM1ibOaB9CXJAlc4d1QpP/U2q2P9jbrSlClKSErd55g==", + "version": "7.21.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.7.tgz", + "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.4.tgz", - "integrity": "sha512-qt/YV149Jman/6AfmlxJ04LMIu8bMoyl3RB91yTFrxQmgbrSvQMy7cI8Q62FHx1t8wJ8B5fu0UDoLwHAhUo1QA==", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz", + "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.4", - "@babel/helper-compilation-targets": "^7.21.4", - "@babel/helper-module-transforms": "^7.21.2", - "@babel/helpers": "^7.21.0", - "@babel/parser": "^7.21.4", + "@babel/generator": "^7.21.5", + "@babel/helper-compilation-targets": "^7.21.5", + "@babel/helper-module-transforms": "^7.21.5", + "@babel/helpers": "^7.21.5", + "@babel/parser": "^7.21.8", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.4", - "@babel/types": "^7.21.4", + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -105,12 +105,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.4.tgz", - "integrity": "sha512-NieM3pVIYW2SwGzKoqfPrQsf4xGs9M9AIG3ThppsSRmO+m7eQhmI6amajKMUeIO37wFfsvnvcxQFx6x6iqxDnA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.5.tgz", + "integrity": "sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==", "dev": true, "dependencies": { - "@babel/types": "^7.21.4", + "@babel/types": "^7.21.5", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -132,25 +132,24 @@ } }, "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.21.5.tgz", + "integrity": "sha512-uNrjKztPLkUk7bpCNC0jEKDJzzkvel/W+HguzbN8krA+LPfC1CEobJEvAvGka2A/M+ViOqXdcRL0GqPUJSjx9g==", "dev": true, "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.4.tgz", - "integrity": "sha512-Fa0tTuOXZ1iL8IeDFUWCzjZcn+sJGd9RZdH9esYVjEejGmzf+FFYQpMi/kZUk2kPy/q1H3/GPw7np8qar/stfg==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz", + "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.21.4", + "@babel/compat-data": "^7.21.5", "@babel/helper-validator-option": "^7.21.0", "browserslist": "^4.21.3", "lru-cache": "^5.1.1", @@ -173,19 +172,20 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.4.tgz", - "integrity": "sha512-46QrX2CQlaFRF4TkwfTt6nJD7IHq8539cCL7SDpqWSDeJKY1xylKKY5F/33mJhLZ3mFvKv2gGrVS6NkyF6qs+Q==", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.8.tgz", + "integrity": "sha512-+THiN8MqiH2AczyuZrnrKL6cAxFRRQDKW9h1YkBvbgKmAm6mwiacig1qT73DHIWMGo40GRnsEfN3LA+E6NtmSw==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-environment-visitor": "^7.21.5", "@babel/helper-function-name": "^7.21.0", - "@babel/helper-member-expression-to-functions": "^7.21.0", + "@babel/helper-member-expression-to-functions": "^7.21.5", "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-replace-supers": "^7.21.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/helper-split-export-declaration": "^7.18.6" + "@babel/helper-split-export-declaration": "^7.18.6", + "semver": "^6.3.0" }, "engines": { "node": ">=6.9.0" @@ -194,14 +194,24 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.4.tgz", - "integrity": "sha512-M00OuhU+0GyZ5iBBN9czjugzWrEq2vDpf/zCYHxxf93ul/Q5rv+a5h+/+0WnI1AebHNVtl5bFV0qsJoH23DbfA==", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.8.tgz", + "integrity": "sha512-zGuSdedkFtsFHGbexAvNuipg1hbtitDLo2XE8/uf6Y9sOQV1xsYX/2pNbtedp/X0eU1pIt+kGvaqHCowkRbS5g==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.3.1" + "regexpu-core": "^5.3.1", + "semver": "^6.3.0" }, "engines": { "node": ">=6.9.0" @@ -210,6 +220,15 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@babel/helper-define-polyfill-provider": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", @@ -237,26 +256,14 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz", + "integrity": "sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-function-name": { "version": "7.21.0", "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", @@ -283,12 +290,12 @@ } }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", - "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.5.tgz", + "integrity": "sha512-nIcGfgwpH2u4n9GG1HpStW5Ogx7x7ekiFHbjjFRKXbn5zUvqO9ZgotCO4x1aNbKn/x/xOUaXEhyNHCwtFCpxWg==", "dev": true, "dependencies": { - "@babel/types": "^7.21.0" + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -307,19 +314,19 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", - "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz", + "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-environment-visitor": "^7.21.5", + "@babel/helper-module-imports": "^7.21.4", + "@babel/helper-simple-access": "^7.21.5", "@babel/helper-split-export-declaration": "^7.18.6", "@babel/helper-validator-identifier": "^7.19.1", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.2", - "@babel/types": "^7.21.2" + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -338,9 +345,9 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz", + "integrity": "sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==", "dev": true, "engines": { "node": ">=6.9.0" @@ -365,29 +372,29 @@ } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", - "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.21.5.tgz", + "integrity": "sha512-/y7vBgsr9Idu4M6MprbOVUfH3vs7tsIfnVWv/Ml2xgwvyH6LTngdfbf5AdsKwkJy4zgy1X/kuNrEKvhhK28Yrg==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.20.7", + "@babel/helper-environment-visitor": "^7.21.5", + "@babel/helper-member-expression-to-functions": "^7.21.5", "@babel/helper-optimise-call-expression": "^7.18.6", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", - "@babel/types": "^7.20.7" + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", + "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", "dev": true, "dependencies": { - "@babel/types": "^7.20.2" + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -418,9 +425,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz", + "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==", "dev": true, "engines": { "node": ">=6.9.0" @@ -460,14 +467,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", - "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.5.tgz", + "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==", "dev": true, "dependencies": { "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0" + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -488,9 +495,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", - "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.8.tgz", + "integrity": "sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -1073,12 +1080,12 @@ } }, "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", - "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.21.5.tgz", + "integrity": "sha512-wb1mhwGOCaXHDTcsRYMKF9e5bbMgqwxtqa2Y1ifH96dXJPwbuLX9qHy3clhrxVqgMz7nyNXs8VkxdH8UBcjKqA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "@babel/helper-plugin-utils": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1158,12 +1165,12 @@ } }, "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", - "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.21.5.tgz", + "integrity": "sha512-TR653Ki3pAwxBxUe8srfF3e4Pe3FTA46uaNHYyQwIoM4oWKSoOZiDNyHJ0oIoDIUPSRQbQG7jzgVBX3FPVne1Q==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-plugin-utils": "^7.21.5", "@babel/template": "^7.20.7" }, "engines": { @@ -1252,12 +1259,12 @@ } }, "node_modules/@babel/plugin-transform-for-of": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", - "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.5.tgz", + "integrity": "sha512-nYWpjKW/7j/I/mZkGVgHJXh4bA1sfdFnJoOXwJuj4m3Q2EraO/8ZyrkCau9P5tbHQk01RMSt6KYLCsW7730SXQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "@babel/helper-plugin-utils": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1330,14 +1337,14 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", - "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz", + "integrity": "sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.21.2", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-simple-access": "^7.20.2" + "@babel/helper-module-transforms": "^7.21.5", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-simple-access": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1488,16 +1495,16 @@ } }, "node_modules/@babel/plugin-transform-react-jsx": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz", - "integrity": "sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.5.tgz", + "integrity": "sha512-ELdlq61FpoEkHO6gFRpfj0kUgSwQTGoaEU8eMRoS8Dv3v6e7BjEAj5WMtIBRdHUeAioMhKP5HyxNzNnP+heKbA==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-jsx": "^7.18.6", - "@babel/types": "^7.21.0" + "@babel/helper-module-imports": "^7.21.4", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-jsx": "^7.21.4", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1568,12 +1575,12 @@ } }, "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", - "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.21.5.tgz", + "integrity": "sha512-ZoYBKDb6LyMi5yCsByQ5jmXsHAQDDYeexT1Szvlmui+lADvfSecr5Dxd/PkrTC3pAD182Fcju1VQkB4oCp9M+w==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-plugin-utils": "^7.21.5", "regenerator-transform": "^0.15.1" }, "engines": { @@ -1722,12 +1729,12 @@ } }, "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.21.5.tgz", + "integrity": "sha512-LYm/gTOwZqsYohlvFUe/8Tujz75LqqVC2w+2qPHLR+WyWHGCZPN1KBpJCJn+4Bk4gOkQy/IXKIge6az5MqwlOg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/helper-plugin-utils": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1753,14 +1760,14 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.21.4.tgz", - "integrity": "sha512-2W57zHs2yDLm6GD5ZpvNn71lZ0B/iypSdIeq25OurDKji6AdzV07qp4s3n1/x5BqtiGaTrPN3nerlSCaC5qNTw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.21.5.tgz", + "integrity": "sha512-wH00QnTTldTbf/IefEVyChtRdw5RJvODT/Vb4Vcxq1AZvtXj6T0YeX0cAcXhI6/BdGuiP3GcNIL4OQbI2DVNxg==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.21.4", - "@babel/helper-compilation-targets": "^7.21.4", - "@babel/helper-plugin-utils": "^7.20.2", + "@babel/compat-data": "^7.21.5", + "@babel/helper-compilation-targets": "^7.21.5", + "@babel/helper-plugin-utils": "^7.21.5", "@babel/helper-validator-option": "^7.21.0", "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.20.7", @@ -1785,6 +1792,7 @@ "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-export-namespace-from": "^7.8.3", "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/plugin-syntax-json-strings": "^7.8.3", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", @@ -1794,22 +1802,22 @@ "@babel/plugin-syntax-optional-chaining": "^7.8.3", "@babel/plugin-syntax-private-property-in-object": "^7.14.5", "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.20.7", + "@babel/plugin-transform-arrow-functions": "^7.21.5", "@babel/plugin-transform-async-to-generator": "^7.20.7", "@babel/plugin-transform-block-scoped-functions": "^7.18.6", "@babel/plugin-transform-block-scoping": "^7.21.0", "@babel/plugin-transform-classes": "^7.21.0", - "@babel/plugin-transform-computed-properties": "^7.20.7", + "@babel/plugin-transform-computed-properties": "^7.21.5", "@babel/plugin-transform-destructuring": "^7.21.3", "@babel/plugin-transform-dotall-regex": "^7.18.6", "@babel/plugin-transform-duplicate-keys": "^7.18.9", "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.21.0", + "@babel/plugin-transform-for-of": "^7.21.5", "@babel/plugin-transform-function-name": "^7.18.9", "@babel/plugin-transform-literals": "^7.18.9", "@babel/plugin-transform-member-expression-literals": "^7.18.6", "@babel/plugin-transform-modules-amd": "^7.20.11", - "@babel/plugin-transform-modules-commonjs": "^7.21.2", + "@babel/plugin-transform-modules-commonjs": "^7.21.5", "@babel/plugin-transform-modules-systemjs": "^7.20.11", "@babel/plugin-transform-modules-umd": "^7.18.6", "@babel/plugin-transform-named-capturing-groups-regex": "^7.20.5", @@ -1817,17 +1825,17 @@ "@babel/plugin-transform-object-super": "^7.18.6", "@babel/plugin-transform-parameters": "^7.21.3", "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.20.5", + "@babel/plugin-transform-regenerator": "^7.21.5", "@babel/plugin-transform-reserved-words": "^7.18.6", "@babel/plugin-transform-shorthand-properties": "^7.18.6", "@babel/plugin-transform-spread": "^7.20.7", "@babel/plugin-transform-sticky-regex": "^7.18.6", "@babel/plugin-transform-template-literals": "^7.18.9", "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-escapes": "^7.21.5", "@babel/plugin-transform-unicode-regex": "^7.18.6", "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.21.4", + "@babel/types": "^7.21.5", "babel-plugin-polyfill-corejs2": "^0.3.3", "babel-plugin-polyfill-corejs3": "^0.6.0", "babel-plugin-polyfill-regenerator": "^0.4.1", @@ -1904,15 +1912,15 @@ } }, "node_modules/@babel/preset-typescript": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.4.tgz", - "integrity": "sha512-sMLNWY37TCdRH/bJ6ZeeOH1nPuanED7Ai9Y/vH31IPqalioJ6ZNFUWONsakhv4r4n+I6gm5lmoE0olkgib/j/A==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.5.tgz", + "integrity": "sha512-iqe3sETat5EOrORXiQ6rWfoOg2y68Cs75B9wNxdPW4kixJxh7aXQE1KPdWLDniC24T/6dSnguF33W9j/ZZQcmA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-plugin-utils": "^7.21.5", "@babel/helper-validator-option": "^7.21.0", "@babel/plugin-syntax-jsx": "^7.21.4", - "@babel/plugin-transform-modules-commonjs": "^7.21.2", + "@babel/plugin-transform-modules-commonjs": "^7.21.5", "@babel/plugin-transform-typescript": "^7.21.3" }, "engines": { @@ -1970,9 +1978,9 @@ "dev": true }, "node_modules/@babel/runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", - "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.5.tgz", + "integrity": "sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q==", "dev": true, "dependencies": { "regenerator-runtime": "^0.13.11" @@ -1996,19 +2004,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.4.tgz", - "integrity": "sha512-eyKrRHKdyZxqDm+fV1iqL9UAHMoIg0nDaGqfIOd8rKH17m5snv7Gn4qgjBoFfLz9APvjFU/ICT00NVCv1Epp8Q==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.5.tgz", + "integrity": "sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.4", - "@babel/helper-environment-visitor": "^7.18.9", + "@babel/generator": "^7.21.5", + "@babel/helper-environment-visitor": "^7.21.5", "@babel/helper-function-name": "^7.21.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.4", - "@babel/types": "^7.21.4", + "@babel/parser": "^7.21.5", + "@babel/types": "^7.21.5", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -2017,12 +2025,12 @@ } }, "node_modules/@babel/types": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", - "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.5.tgz", + "integrity": "sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-string-parser": "^7.21.5", "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" }, @@ -4500,9 +4508,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "18.16.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.16.2.tgz", - "integrity": "sha512-GQW/JL/5Fz/0I8RpeBG9lKp0+aNcXEaVL71c0D2Q0QHDTFvlYKT7an0onCUXj85anv7b4/WesqdfchLc0jtsCg==", + "version": "20.1.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.2.tgz", + "integrity": "sha512-CTO/wa8x+rZU626cL2BlbCDzydgnFNgc19h4YvizpTO88MFQxab8wqisxaofQJ/9bLGugRdWIuX/TbIs6VVF6g==", "dev": true }, "node_modules/@types/normalize-package-data": { @@ -4530,9 +4538,9 @@ "dev": true }, "node_modules/@types/react": { - "version": "16.14.40", - "resolved": "https://registry.npmjs.org/@types/react/-/react-16.14.40.tgz", - "integrity": "sha512-elQj2VQHDuJ5xuEcn5Wxh/YQFNbEuPJFRKSdyG866awDm5dmtoqsMmuAJWb/l/qd2kDkZMfOTKygVfMIdBBPKg==", + "version": "16.14.41", + "resolved": "https://registry.npmjs.org/@types/react/-/react-16.14.41.tgz", + "integrity": "sha512-h+joCKF2r5rdECoM1U8WCEIHBp5/0TSR5Nyq8gtnnYY1n2WqGuj3indYqTjMb2/b5g2rfxJV6u4jUFq95lbT6Q==", "dev": true, "dependencies": { "@types/prop-types": "*", @@ -4550,9 +4558,9 @@ } }, "node_modules/@types/react-native/node_modules/@types/react": { - "version": "17.0.58", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.58.tgz", - "integrity": "sha512-c1GzVY97P0fGxwGxhYq989j4XwlcHQoto6wQISOC2v6wm3h0PORRWJFHlkRjfGsiG3y1609WdQ+J+tKxvrEd6A==", + "version": "17.0.59", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.59.tgz", + "integrity": "sha512-gSON5zWYIGyoBcycCE75E9+r6dCC2dHdsrVkOEiIYNU5+Q28HcBAuqvDuxHcCbMfHBHdeT5Tva/AFn3rnMKE4g==", "dev": true, "dependencies": { "@types/prop-types": "*", @@ -5765,9 +5773,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001481", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001481.tgz", - "integrity": "sha512-KCqHwRnaa1InZBtqXzP98LPg0ajCVujMKjqKDhZEthIpAsJl/YEIa3YvXjGXPVqzZVguccuu7ga9KOE1J9rKPQ==", + "version": "1.0.30001486", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz", + "integrity": "sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==", "dev": true, "funding": [ { @@ -5951,9 +5959,9 @@ } }, "node_modules/cli-spinners": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.8.0.tgz", - "integrity": "sha512-/eG5sJcvEIwxcdYM86k5tPwn0MUzkX5YY3eImTGpJOZgVe4SdTMY14vQpcxgBzJ0wXwAYrS8E+c3uHeK4JNyzQ==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.0.tgz", + "integrity": "sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==", "dev": true, "engines": { "node": ">=6" @@ -6266,9 +6274,9 @@ } }, "node_modules/core-js": { - "version": "3.30.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.30.1.tgz", - "integrity": "sha512-ZNS5nbiSwDTq4hFosEDqm65izl2CWmLz0hARJMyNQBgkUZMIF51cQiMvIQKA6hvuaeWxQDP3hEedM1JZIgTldQ==", + "version": "3.30.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.30.2.tgz", + "integrity": "sha512-uBJiDmwqsbJCWHAwjrx3cvjbMXP7xD72Dmsn5LOJpiRmE3WbBbN5rCqQ2Qh6Ek6/eOrjlWngEynBWo4VxerQhg==", "dev": true, "hasInstallScript": true, "funding": { @@ -6277,9 +6285,9 @@ } }, "node_modules/core-js-compat": { - "version": "3.30.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.30.1.tgz", - "integrity": "sha512-d690npR7MC6P0gq4npTl5n2VQeNAmUrJ90n+MHiKS7W2+xno4o3F5GDEuylSdi6EJ3VssibSGXOa1r3YXD3Mhw==", + "version": "3.30.2", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.30.2.tgz", + "integrity": "sha512-nriW1nuJjUgvkEjIot1Spwakz52V9YkYHZAQG6A1eCgC8AA1p0zngrQEP9R0+V6hji5XilWKG1Bd0YRppmGimA==", "dev": true, "dependencies": { "browserslist": "^4.21.5" @@ -6650,9 +6658,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.376", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.376.tgz", - "integrity": "sha512-TFeOKd98TpJzRHkr4Aorn16QkMnuCQuGAE6IZ0wYF+qkbSfMPqjplvRppR02tMUpVxZz8nyBNvVm9lIZsqrbPQ==", + "version": "1.4.391", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.391.tgz", + "integrity": "sha512-GqydVV1+kUWY5qlEzaw34/hyWTApuQrHiGrcGA2Kk/56nEK44i+YUW45VH43JuZT0Oo7uY8aVtpPhBBZXEWtSA==", "dev": true }, "node_modules/emittery": { @@ -12593,9 +12601,9 @@ } }, "node_modules/node-fetch": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz", - "integrity": "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==", + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.11.tgz", + "integrity": "sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==", "dev": true, "dependencies": { "whatwg-url": "^5.0.0" @@ -13572,9 +13580,9 @@ } }, "node_modules/react-devtools-core": { - "version": "4.27.6", - "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.27.6.tgz", - "integrity": "sha512-jeFNhEzcSwpiqmw+zix5IFibNEPmUodICN7ClrlRKGktzO/3FMteMb52l1NRUiz/ABSYt9hOZ9IPgVDrg5pyUw==", + "version": "4.27.7", + "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.27.7.tgz", + "integrity": "sha512-12N0HrhCPbD76Z7SkyJdGdXdPGouUsgV6tlEsbSpAnLDO06tjXZP+irht4wPdYwJAJRQ85DxL48eQoz7UmrSuQ==", "dev": true, "dependencies": { "shell-quote": "^1.6.1", From caa4634f0aff653a22a72d2b5f9ba7a86b401239 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Thu, 11 May 2023 17:50:00 +0530 Subject: [PATCH 06/19] updated sending of scaleType from apps --- .../java/com/reactnativehmssdk/HMSView.kt | 32 ++++++-- .../screens/MeetingScreen/PeerDisplayView.tsx | 76 ++++++------------- src/classes/HmsView.tsx | 54 +------------ 3 files changed, 55 insertions(+), 107 deletions(-) diff --git a/android/src/main/java/com/reactnativehmssdk/HMSView.kt b/android/src/main/java/com/reactnativehmssdk/HMSView.kt index 7ee5c4483..26c98a6d1 100644 --- a/android/src/main/java/com/reactnativehmssdk/HMSView.kt +++ b/android/src/main/java/com/reactnativehmssdk/HMSView.kt @@ -5,7 +5,6 @@ import android.content.Context import android.os.Build import android.util.Log import android.view.LayoutInflater -import android.view.View import android.widget.FrameLayout import androidx.annotation.RequiresApi import com.facebook.react.bridge.Arguments @@ -27,13 +26,12 @@ class HMSView(context: ReactContext) : FrameLayout(context) { private var scaleTypeApplied: Boolean = false private var sdkId: String = "12345" private var disableAutoSimulcastLayerSelect = false - var view: View? = null init { val inflater = getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater - view = inflater.inflate(R.layout.hms_view, this) + val view = inflater.inflate(R.layout.hms_view, this) - hmsVideoView = view!!.findViewById(R.id.hmsVideoView) + hmsVideoView = view.findViewById(R.id.hmsVideoView) hmsVideoView?.setEnableHardwareScaler(false) hmsVideoView?.setMirror(false) @@ -106,6 +104,28 @@ class HMSView(context: ReactContext) : FrameLayout(context) { } fun updateScaleType(scaleType: String?) { + if (scaleType != null) { + when (scaleType) { + "ASPECT_FIT" -> { + hmsVideoView.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FIT) + currentScaleType = RendererCommon.ScalingType.SCALE_ASPECT_FIT + return + } + "ASPECT_FILL" -> { + hmsVideoView.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FILL) + currentScaleType = RendererCommon.ScalingType.SCALE_ASPECT_FILL + return + } + "ASPECT_BALANCED" -> { + hmsVideoView.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_BALANCED) + currentScaleType = RendererCommon.ScalingType.SCALE_ASPECT_BALANCED + return + } + else -> { + return + } + } + } } fun setData( @@ -130,7 +150,9 @@ class HMSView(context: ReactContext) : FrameLayout(context) { val videoTrack = hms.getRoom()?.let { HmsUtilities.getVideoTrack(trackId, it) } videoTrack?.let { - hmsVideoView?.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FIT) + // hmsVideoView?.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FIT) + // hmsVideoView.setScalingType(currentScaleType) + updateScaleType(scaleType) hmsVideoView?.addTrack(it) // hmsVideoView.layoutParams.width = 300 * 3 diff --git a/example/src/screens/MeetingScreen/PeerDisplayView.tsx b/example/src/screens/MeetingScreen/PeerDisplayView.tsx index cd8073406..a8b5cd006 100644 --- a/example/src/screens/MeetingScreen/PeerDisplayView.tsx +++ b/example/src/screens/MeetingScreen/PeerDisplayView.tsx @@ -48,58 +48,30 @@ const PeerDisplayViewUnmemoized = React.forwardRef< ) : ( - + + + {isDegraded && ( + + + Degraded + + + )} + )} ); diff --git a/src/classes/HmsView.tsx b/src/classes/HmsView.tsx index 58401d17e..95d79a0b9 100644 --- a/src/classes/HmsView.tsx +++ b/src/classes/HmsView.tsx @@ -1,4 +1,4 @@ -import React, { useState, useEffect, useImperativeHandle, useRef } from 'react'; +import React, { useState, useImperativeHandle, useRef } from 'react'; import { findNodeHandle, requireNativeComponent, @@ -18,8 +18,7 @@ interface HmsViewProps { }; autoSimulcast: boolean; setZOrderMediaOverlay: boolean; - // scaleType: HMSVideoViewMode; - // style: ViewStyle; + style: ViewStyle; onChange: Function; onDataReturned: Function; } @@ -42,8 +41,7 @@ export const HmsViewComponent = React.forwardRef( (props, ref) => { const { trackId, - // style = temporaryStyles.customStyle, - style, + style = temporaryStyles.customStyle, id = HMSConstants.DEFAULT_SDK_ID, mirror = false, setZOrderMediaOverlay = false, @@ -52,8 +50,6 @@ export const HmsViewComponent = React.forwardRef( } = props; const hmsViewRef: any = useRef(); - const timerRef = useRef(null); - const [tempVal, setTempVal] = useState(0); const [t, setT] = useState(false); const data = { trackId, @@ -62,46 +58,10 @@ export const HmsViewComponent = React.forwardRef( scaleType, }; - useEffect(() => { - return () => { - if (timerRef.current) { - clearTimeout(timerRef.current); - } - }; - }, []); - - const onChange = (values: any) => { - // console.log(values, 'values'); - // if (timerRef.current) { - // clearTimeout(timerRef.current); - // } - - // timerRef.current = setTimeout(() => { - // setTempVal(1); - // timerRef.current = null; - // }, 2000); - + const onChange = () => { setT(true); }; - const _onDataReturned = (event: { - nativeEvent: { requestId: any; result: any; error: any }; - }) => { - // We grab the relevant data out of our event. - let { requestId, result, error } = event.nativeEvent; - // Then we get the promise we saved earlier for the given request ID. - let promise = _requestMap.get(requestId); - if (result) { - // If it was successful, we resolve the promise. - promise.resolve(result); - } else { - // Otherwise, we reject it. - promise.reject(error); - } - // Finally, we clean up our request map. - _requestMap.delete(requestId); - }; - const capture = async () => { let requestId = _nextRequestId++; let requestMap = _requestMap; @@ -126,11 +86,6 @@ export const HmsViewComponent = React.forwardRef( }; }); - useEffect(() => { - setTempVal(0); - }, [tempVal]); - - console.log('$$$ tempVal in HMSView -> ', tempVal); return ( ( // style={tempVal === 0 ? style : temporaryStyles.customStyle} style={t ? style || temporaryStyles : {}} autoSimulcast={autoSimulcast} - // scaleType={scaleType} setZOrderMediaOverlay={setZOrderMediaOverlay} onDataReturned={() => null} /> From ac86c50ba9e645de751c6541f6283c2671270b09 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Thu, 11 May 2023 18:36:13 +0530 Subject: [PATCH 07/19] =?UTF-8?q?released=20sample=20app=20version=202.1.6?= =?UTF-8?q?1=20(197)=20=E2=9A=9B=EF=B8=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- example/android/app/build.gradle | 4 ++-- example/ios/RNHMSExample.xcodeproj/project.pbxproj | 8 ++++---- example/ios/RNHMSExample/Info.plist | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle index f7ec74168..9c83b8e9b 100644 --- a/example/android/app/build.gradle +++ b/example/android/app/build.gradle @@ -134,8 +134,8 @@ android { applicationId "live.hms.rn" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 196 - versionName "2.1.60" + versionCode 197 + versionName "2.1.61" missingDimensionStrategy 'react-native-camera', 'general' } splits { diff --git a/example/ios/RNHMSExample.xcodeproj/project.pbxproj b/example/ios/RNHMSExample.xcodeproj/project.pbxproj index adb9d9f77..6859ccb66 100644 --- a/example/ios/RNHMSExample.xcodeproj/project.pbxproj +++ b/example/ios/RNHMSExample.xcodeproj/project.pbxproj @@ -442,7 +442,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 196; + CURRENT_PROJECT_VERSION = 197; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; @@ -484,7 +484,7 @@ CODE_SIGN_ENTITLEMENTS = RNHMSExample/RNHMSExample.entitlements; CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 196; + CURRENT_PROJECT_VERSION = 197; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; @@ -654,7 +654,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 196; + CURRENT_PROJECT_VERSION = 197; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; @@ -699,7 +699,7 @@ CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 196; + CURRENT_PROJECT_VERSION = 197; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; diff --git a/example/ios/RNHMSExample/Info.plist b/example/ios/RNHMSExample/Info.plist index 077e5c6ed..658ef806d 100644 --- a/example/ios/RNHMSExample/Info.plist +++ b/example/ios/RNHMSExample/Info.plist @@ -17,11 +17,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 2.1.60 + 2.1.61 CFBundleSignature ???? CFBundleVersion - 196 + 197 ITSAppUsesNonExemptEncryption LSRequiresIPhoneOS From 581a090a4cf10cb0f59bbf69690ae2ce1f7aaee9 Mon Sep 17 00:00:00 2001 From: Jatin Nagar Date: Fri, 12 May 2023 16:40:49 +0530 Subject: [PATCH 08/19] refactor(sdk): hmsview component code refactoring --- .../java/com/reactnativehmssdk/HMSView.kt | 101 +++++------------- src/classes/HmsView.tsx | 46 ++++++-- 2 files changed, 65 insertions(+), 82 deletions(-) diff --git a/android/src/main/java/com/reactnativehmssdk/HMSView.kt b/android/src/main/java/com/reactnativehmssdk/HMSView.kt index 26c98a6d1..2934fd2dc 100644 --- a/android/src/main/java/com/reactnativehmssdk/HMSView.kt +++ b/android/src/main/java/com/reactnativehmssdk/HMSView.kt @@ -12,7 +12,6 @@ import com.facebook.react.bridge.ReactContext import com.facebook.react.bridge.ReadableArray import com.facebook.react.bridge.WritableMap import com.facebook.react.uimanager.events.RCTEventEmitter -import kotlinx.coroutines.* import live.hms.video.media.tracks.HMSVideoTrack import live.hms.video.utils.HmsUtilities import live.hms.videoview.HMSVideoView @@ -23,9 +22,9 @@ import org.webrtc.RendererCommon class HMSView(context: ReactContext) : FrameLayout(context) { private var hmsVideoView: HMSVideoView? = null private var videoTrack: HMSVideoTrack? = null - private var scaleTypeApplied: Boolean = false private var sdkId: String = "12345" private var disableAutoSimulcastLayerSelect = false + private var jsCanApplyStyles = false init { val inflater = getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater @@ -40,85 +39,60 @@ class HMSView(context: ReactContext) : FrameLayout(context) { hmsVideoView?.addVideoViewStateChangeListener(object : VideoViewStateChangeListener { override fun onResolutionChange(newWidth: Int, newHeight: Int) { super.onResolutionChange(newWidth, newHeight) - Log.i("HMSView", "hmsVideoView resolution changed, newWidth = $newWidth, newHeight = $newHeight") - Log.i("HMSView", "old width -> ${hmsVideoView?.width}") - Log.i("HMSView", "old height -> ${hmsVideoView?.height}") - - val event: WritableMap = Arguments.createMap() - context.getJSModule(RCTEventEmitter::class.java).receiveEvent(id, "topChange", event) - -// val width = hmsVideoView.width -// val height = hmsVideoView.height -// val aspectRatio = newWidth / newHeight -// if (width >= height) { -// hmsVideoView.layoutParams.width = height * aspectRatio -// } else { -// hmsVideoView.layoutParams.height = width / aspectRatio -// } -// Log.i("HMSView", "new width -> ${hmsVideoView.width}") -// Log.i("HMSView", "new height -> ${hmsVideoView.height}") - } - - override fun onFirstFrameRendered() { - super.onFirstFrameRendered() - Log.i("HMSView", "hmsVideoView First Frame Rendered") + if (!jsCanApplyStyles) { + val event: WritableMap = Arguments.createMap() + context.getJSModule(RCTEventEmitter::class.java).receiveEvent(id, "topChange", event) + jsCanApplyStyles = true + } } }) } @RequiresApi(Build.VERSION_CODES.N) fun captureHmsView(args: ReadableArray?) { -// hmsVideoView?.let { -// HMSHelper.captureSurfaceView(it, sdkId, args, context, id) -// } -// - } - - private fun onReceiveNativeEvent() { - val event: WritableMap = Arguments.createMap() - event.putString("message", "MyMessage") - val reactContext = context as ReactContext - reactContext.getJSModule(RCTEventEmitter::class.java).receiveEvent(id, "topChange", event) + hmsVideoView?.let { + HMSHelper.captureSurfaceView(it, sdkId, args, context, id) + } } override fun onDetachedFromWindow() { super.onDetachedFromWindow() + hmsVideoView?.removeTrack() } override fun onAttachedToWindow() { super.onAttachedToWindow() - Log.i("HMSView", "width -> ${hmsVideoView?.width}") - Log.i("HMSView", "height -> ${hmsVideoView?.height}") -// view!!.layoutParams.width = FrameLayout.LayoutParams.WRAP_CONTENT -// view!!.layoutParams.height = FrameLayout.LayoutParams.WRAP_CONTENT - -// hmsVideoView.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FILL) + videoTrack?.let { // Safe Call Operator to check if videoTrack is not null + hmsVideoView?.addTrack(it) // add the videoTrack to the hmsVideoView + } ?: run { // Elvis Operator to handle the case when videoTrack is null + Log.e( + "HMSView", + "HMSView attached to window, but it's videoTrack is null", + ) // log an error message + } } fun updateZOrderMediaOverlay(setZOrderMediaOverlay: Boolean?) { -// if (setZOrderMediaOverlay != null && setZOrderMediaOverlay) { -// // hmsVideoView.setZOrderOnTop(true); -// hmsVideoView.setZOrderMediaOverlay(setZOrderMediaOverlay) -// } + if (setZOrderMediaOverlay != null && setZOrderMediaOverlay) { + // hmsVideoView.setZOrderOnTop(true); + hmsVideoView?.setZOrderMediaOverlay(setZOrderMediaOverlay) + } } fun updateScaleType(scaleType: String?) { if (scaleType != null) { when (scaleType) { "ASPECT_FIT" -> { - hmsVideoView.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FIT) - currentScaleType = RendererCommon.ScalingType.SCALE_ASPECT_FIT + hmsVideoView?.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FIT) return } "ASPECT_FILL" -> { - hmsVideoView.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FILL) - currentScaleType = RendererCommon.ScalingType.SCALE_ASPECT_FILL + hmsVideoView?.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FILL) return } "ASPECT_BALANCED" -> { - hmsVideoView.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_BALANCED) - currentScaleType = RendererCommon.ScalingType.SCALE_ASPECT_BALANCED + hmsVideoView?.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_BALANCED) return } else -> { @@ -144,28 +118,9 @@ class HMSView(context: ReactContext) : FrameLayout(context) { if (mirror != null) { hmsVideoView?.setMirror(mirror) } - Log.i("HMSView", "width inside setData fn before adding track -> ${hmsVideoView?.width}") - Log.i("HMSView", "height inside setData fn before adding track -> ${hmsVideoView?.height}") - - val videoTrack = hms.getRoom()?.let { HmsUtilities.getVideoTrack(trackId, it) } - - videoTrack?.let { - // hmsVideoView?.setScalingType(RendererCommon.ScalingType.SCALE_ASPECT_FIT) - // hmsVideoView.setScalingType(currentScaleType) - updateScaleType(scaleType) - hmsVideoView?.addTrack(it) - -// hmsVideoView.layoutParams.width = 300 * 3 -// hmsVideoView.layoutParams.height = 169 * 3 - } ?: run { - Log.e( - "HMSView", - "HMSView attached to window, but it's videoTrack is null", - ) - } - - Log.i("HMSView", "width inside setData fn after adding track -> ${hmsVideoView?.width}") - Log.i("HMSView", "height inside setData fn after adding track -> ${hmsVideoView?.height}") + updateScaleType(scaleType) + // TODO: can be optimized here + videoTrack = hms.getRoom()?.let { HmsUtilities.getVideoTrack(trackId, it) } } } diff --git a/src/classes/HmsView.tsx b/src/classes/HmsView.tsx index 95d79a0b9..923db51c2 100644 --- a/src/classes/HmsView.tsx +++ b/src/classes/HmsView.tsx @@ -5,6 +5,7 @@ import { StyleSheet, UIManager, ViewStyle, + Platform, } from 'react-native'; import { HMSConstants } from './HMSConstants'; import { HMSVideoViewMode } from './HMSVideoViewMode'; @@ -18,6 +19,7 @@ interface HmsViewProps { }; autoSimulcast: boolean; setZOrderMediaOverlay: boolean; + scaleType: HMSVideoViewMode; style: ViewStyle; onChange: Function; onDataReturned: Function; @@ -41,7 +43,7 @@ export const HmsViewComponent = React.forwardRef( (props, ref) => { const { trackId, - style = temporaryStyles.customStyle, + style = styles.hmsView, id = HMSConstants.DEFAULT_SDK_ID, mirror = false, setZOrderMediaOverlay = false, @@ -50,7 +52,7 @@ export const HmsViewComponent = React.forwardRef( } = props; const hmsViewRef: any = useRef(); - const [t, setT] = useState(false); + const [applyStyles_ANDROID, setApplyStyles_ANDROID] = useState(false); const data = { trackId, id, @@ -58,8 +60,32 @@ export const HmsViewComponent = React.forwardRef( scaleType, }; - const onChange = () => { - setT(true); + /** + * This method is passed to `onChange` prop of `HmsView` Native Component. + * It is invoked when `HmsView` emits 'topChange' event. + */ + const onChange = () => setApplyStyles_ANDROID(true); + + /** + * This method is passed to `onDataReturned` prop of `HmsView` Native Component. + * It is invoked when `HmsView` emits 'captureFrame' event. + */ + const _onDataReturned = (event: { + nativeEvent: { requestId: any; result: any; error: any }; + }) => { + // We grab the relevant data out of our event. + let { requestId, result, error } = event.nativeEvent; + // Then we get the promise we saved earlier for the given request ID. + let promise = _requestMap.get(requestId); + if (result) { + // If it was successful, we resolve the promise. + promise.resolve(result); + } else { + // Otherwise, we reject it. + promise.reject(error); + } + // Finally, we clean up our request map. + _requestMap.delete(requestId); }; const capture = async () => { @@ -91,18 +117,20 @@ export const HmsViewComponent = React.forwardRef( ref={hmsViewRef} onChange={onChange} data={data} - // style={tempVal === 0 ? style : temporaryStyles.customStyle} - style={t ? style || temporaryStyles : {}} + style={ + Platform.OS === 'android' ? (applyStyles_ANDROID ? style : {}) : style + } autoSimulcast={autoSimulcast} + scaleType={scaleType} setZOrderMediaOverlay={setZOrderMediaOverlay} - onDataReturned={() => null} + onDataReturned={_onDataReturned} /> ); } ); -const temporaryStyles = StyleSheet.create({ - customStyle: { +const styles = StyleSheet.create({ + hmsView: { flex: 1, }, }); From 5c4d44db7eda9588b44116fff09df4fecb8a2e67 Mon Sep 17 00:00:00 2001 From: Jatin Nagar Date: Fri, 12 May 2023 16:41:43 +0530 Subject: [PATCH 09/19] refactor(example-app): hmsview component usage code --- example/src/components/PreviewModal.tsx | 2 +- example/src/screens/MeetingScreen/PeerDisplayView.tsx | 8 +++++++- example/src/screens/Welcome/index.tsx | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/example/src/components/PreviewModal.tsx b/example/src/components/PreviewModal.tsx index ad1dec2e9..6048deecb 100644 --- a/example/src/components/PreviewModal.tsx +++ b/example/src/components/PreviewModal.tsx @@ -211,7 +211,7 @@ const styles = StyleSheet.create({ modalContainer: { width: '100%', height: '100%', - backgroundColor: COLORS.WHITE, + backgroundColor: '#000', }, hmsView: { height: '100%', diff --git a/example/src/screens/MeetingScreen/PeerDisplayView.tsx b/example/src/screens/MeetingScreen/PeerDisplayView.tsx index a8b5cd006..96e490bc8 100644 --- a/example/src/screens/MeetingScreen/PeerDisplayView.tsx +++ b/example/src/screens/MeetingScreen/PeerDisplayView.tsx @@ -40,7 +40,7 @@ const PeerDisplayViewUnmemoized = React.forwardRef< } return ( - + {videoTrack?.isMute() || videoTrack?.trackId === undefined ? ( @@ -63,6 +63,12 @@ const PeerDisplayViewUnmemoized = React.forwardRef< ? HMSVideoViewMode.ASPECT_FIT : HMSVideoViewMode.ASPECT_FILL } + style={ + videoTrack?.source !== undefined && + videoTrack?.source !== HMSTrackSource.REGULAR + ? styles.hmsViewScreen + : styles.hmsView + } /> {isDegraded && ( diff --git a/example/src/screens/Welcome/index.tsx b/example/src/screens/Welcome/index.tsx index c8632df70..018928f87 100644 --- a/example/src/screens/Welcome/index.tsx +++ b/example/src/screens/Welcome/index.tsx @@ -606,7 +606,7 @@ const Welcome = () => { * const hmsInstance = await HMSSDK.build({ * trackSettings, * appGroup: 'group.reactnativehms', // required for iOS Screenshare, not required for Android - * preferredExtension: 'RHHMSExampleBroadcastUpload', // required for iOS Screenshare, not required for Android + * preferredExtension: 'RNHMSExampleBroadcastUpload', // required for iOS Screenshare, not required for Android * }); */ From 0e8a5e0b319248448a0e8d8b1c39d755af1120ce Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Fri, 12 May 2023 17:31:01 +0530 Subject: [PATCH 10/19] =?UTF-8?q?released=20sample=20app=20version=202.1.6?= =?UTF-8?q?2=20(198)=20=E2=9A=9B=EF=B8=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- example/android/app/build.gradle | 4 ++-- example/ios/RNHMSExample.xcodeproj/project.pbxproj | 8 ++++---- example/ios/RNHMSExample/Info.plist | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle index 9c83b8e9b..d3d2a834b 100644 --- a/example/android/app/build.gradle +++ b/example/android/app/build.gradle @@ -134,8 +134,8 @@ android { applicationId "live.hms.rn" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 197 - versionName "2.1.61" + versionCode 198 + versionName "2.1.62" missingDimensionStrategy 'react-native-camera', 'general' } splits { diff --git a/example/ios/RNHMSExample.xcodeproj/project.pbxproj b/example/ios/RNHMSExample.xcodeproj/project.pbxproj index 6859ccb66..0f92814b4 100644 --- a/example/ios/RNHMSExample.xcodeproj/project.pbxproj +++ b/example/ios/RNHMSExample.xcodeproj/project.pbxproj @@ -442,7 +442,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 197; + CURRENT_PROJECT_VERSION = 198; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; @@ -484,7 +484,7 @@ CODE_SIGN_ENTITLEMENTS = RNHMSExample/RNHMSExample.entitlements; CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 197; + CURRENT_PROJECT_VERSION = 198; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; @@ -654,7 +654,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 197; + CURRENT_PROJECT_VERSION = 198; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; @@ -699,7 +699,7 @@ CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 197; + CURRENT_PROJECT_VERSION = 198; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; diff --git a/example/ios/RNHMSExample/Info.plist b/example/ios/RNHMSExample/Info.plist index 658ef806d..dc2b26953 100644 --- a/example/ios/RNHMSExample/Info.plist +++ b/example/ios/RNHMSExample/Info.plist @@ -17,11 +17,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 2.1.61 + 2.1.62 CFBundleSignature ???? CFBundleVersion - 197 + 198 ITSAppUsesNonExemptEncryption LSRequiresIPhoneOS From ed4d7955d5ddc1246671de69defea84f3fb80566 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Fri, 12 May 2023 17:32:27 +0530 Subject: [PATCH 11/19] updated packages --- example/android/Gemfile.lock | 2 +- example/ios/Gemfile.lock | 2 +- example/package-lock.json | 12 ++++++------ package-lock.json | 12 ++++++------ 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/example/android/Gemfile.lock b/example/android/Gemfile.lock index a599311a3..2010fb6d3 100644 --- a/example/android/Gemfile.lock +++ b/example/android/Gemfile.lock @@ -8,7 +8,7 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.762.0) + aws-partitions (1.763.0) aws-sdk-core (3.172.0) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) diff --git a/example/ios/Gemfile.lock b/example/ios/Gemfile.lock index ae090cc47..e994256ed 100644 --- a/example/ios/Gemfile.lock +++ b/example/ios/Gemfile.lock @@ -8,7 +8,7 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.762.0) + aws-partitions (1.763.0) aws-sdk-core (3.172.0) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) diff --git a/example/package-lock.json b/example/package-lock.json index 0fd902ce6..80d082385 100644 --- a/example/package-lock.json +++ b/example/package-lock.json @@ -3640,9 +3640,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.1.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.2.tgz", - "integrity": "sha512-CTO/wa8x+rZU626cL2BlbCDzydgnFNgc19h4YvizpTO88MFQxab8wqisxaofQJ/9bLGugRdWIuX/TbIs6VVF6g==" + "version": "20.1.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.3.tgz", + "integrity": "sha512-NP2yfZpgmf2eDRPmgGq+fjGjSwFgYbihA8/gK+ey23qT9RkxsgNTZvGOEpXgzIGqesTYkElELLgtKoMQTys5vA==" }, "node_modules/@types/normalize-package-data": { "version": "2.4.1", @@ -5666,9 +5666,9 @@ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.391", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.391.tgz", - "integrity": "sha512-GqydVV1+kUWY5qlEzaw34/hyWTApuQrHiGrcGA2Kk/56nEK44i+YUW45VH43JuZT0Oo7uY8aVtpPhBBZXEWtSA==" + "version": "1.4.392", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.392.tgz", + "integrity": "sha512-TXQOMW9tnhIms3jGy/lJctLjICOgyueZFJ1KUtm6DTQ+QpxX3p7ZBwB6syuZ9KBuT5S4XX7bgY1ECPgfxKUdOg==" }, "node_modules/eme-encryption-scheme-polyfill": { "version": "2.1.1", diff --git a/package-lock.json b/package-lock.json index f3941c35a..81b5a4a0f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4508,9 +4508,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.1.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.2.tgz", - "integrity": "sha512-CTO/wa8x+rZU626cL2BlbCDzydgnFNgc19h4YvizpTO88MFQxab8wqisxaofQJ/9bLGugRdWIuX/TbIs6VVF6g==", + "version": "20.1.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.3.tgz", + "integrity": "sha512-NP2yfZpgmf2eDRPmgGq+fjGjSwFgYbihA8/gK+ey23qT9RkxsgNTZvGOEpXgzIGqesTYkElELLgtKoMQTys5vA==", "dev": true }, "node_modules/@types/normalize-package-data": { @@ -6658,9 +6658,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.391", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.391.tgz", - "integrity": "sha512-GqydVV1+kUWY5qlEzaw34/hyWTApuQrHiGrcGA2Kk/56nEK44i+YUW45VH43JuZT0Oo7uY8aVtpPhBBZXEWtSA==", + "version": "1.4.392", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.392.tgz", + "integrity": "sha512-TXQOMW9tnhIms3jGy/lJctLjICOgyueZFJ1KUtm6DTQ+QpxX3p7ZBwB6syuZ9KBuT5S4XX7bgY1ECPgfxKUdOg==", "dev": true }, "node_modules/emittery": { From 14f6488ca28e06b6029df88beb719536c5ca0b30 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Fri, 12 May 2023 17:32:42 +0530 Subject: [PATCH 12/19] updated example app changelog --- example/ExampleAppChangelog.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/example/ExampleAppChangelog.txt b/example/ExampleAppChangelog.txt index f244e83e7..f82ea0fd6 100644 --- a/example/ExampleAppChangelog.txt +++ b/example/ExampleAppChangelog.txt @@ -1,5 +1,8 @@ Board: https://github.com/100mslive/react-native-hms/projects/20 +- Corrected applying HMSView scaletype +https://github.com/100mslive/react-native-hms/pull/1034 + React Native SDK: 1.6.1 Android SDK: 2.6.3 iOS SDK: 0.9.3 From 261fb0ad1bf4bb525c92c198f9f3cd7490552504 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Tue, 16 May 2023 14:35:24 +0530 Subject: [PATCH 13/19] updated Native iOS SDK version --- example/ExampleAppChangelog.txt | 2 +- example/android/Gemfile.lock | 4 +- example/ios/Gemfile.lock | 4 +- example/ios/Podfile.lock | 8 +-- example/package-lock.json | 101 ++++++++++---------------------- package-lock.json | 31 +++++----- sdk-versions.json | 2 +- 7 files changed, 58 insertions(+), 94 deletions(-) diff --git a/example/ExampleAppChangelog.txt b/example/ExampleAppChangelog.txt index f244e83e7..9f239f8c8 100644 --- a/example/ExampleAppChangelog.txt +++ b/example/ExampleAppChangelog.txt @@ -2,4 +2,4 @@ Board: https://github.com/100mslive/react-native-hms/projects/20 React Native SDK: 1.6.1 Android SDK: 2.6.3 -iOS SDK: 0.9.3 +iOS SDK: 0.9.4 diff --git a/example/android/Gemfile.lock b/example/android/Gemfile.lock index a599311a3..a5142a88d 100644 --- a/example/android/Gemfile.lock +++ b/example/android/Gemfile.lock @@ -8,7 +8,7 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.762.0) + aws-partitions (1.764.0) aws-sdk-core (3.172.0) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) @@ -107,7 +107,7 @@ GEM xcpretty-travis-formatter (>= 0.0.3) fastlane-plugin-firebase_app_distribution (0.5.0) gh_inspector (1.1.3) - google-apis-androidpublisher_v3 (0.41.0) + google-apis-androidpublisher_v3 (0.42.0) google-apis-core (>= 0.11.0, < 2.a) google-apis-core (0.11.0) addressable (~> 2.5, >= 2.5.1) diff --git a/example/ios/Gemfile.lock b/example/ios/Gemfile.lock index ae090cc47..6c8f909b0 100644 --- a/example/ios/Gemfile.lock +++ b/example/ios/Gemfile.lock @@ -8,7 +8,7 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.762.0) + aws-partitions (1.764.0) aws-sdk-core (3.172.0) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) @@ -108,7 +108,7 @@ GEM fastlane-plugin-firebase_app_distribution (0.5.0) fastlane-plugin-versioning (0.5.1) gh_inspector (1.1.3) - google-apis-androidpublisher_v3 (0.41.0) + google-apis-androidpublisher_v3 (0.42.0) google-apis-core (>= 0.11.0, < 2.a) google-apis-core (0.11.0) addressable (~> 2.5, >= 2.5.1) diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index 7a80b88a3..67359d053 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -60,7 +60,7 @@ PODS: - hermes-engine (0.7.2) - HMSAnalyticsSDK (0.0.2) - HMSBroadcastExtensionSDK (0.0.9) - - HMSSDK (0.9.3): + - HMSSDK (0.9.4): - HMSAnalyticsSDK (= 0.0.2) - HMSWebRTC (= 1.0.5116) - HMSWebRTC (1.0.5116) @@ -292,7 +292,7 @@ PODS: - React-Core - react-native-hms (1.6.1): - HMSBroadcastExtensionSDK (= 0.0.9) - - HMSSDK (= 0.9.3) + - HMSSDK (= 0.9.4) - React-Core - react-native-safe-area-context (3.4.1): - React-Core @@ -602,7 +602,7 @@ SPEC CHECKSUMS: hermes-engine: 7d97ba46a1e29bacf3e3c61ecb2804a5ddd02d4f HMSAnalyticsSDK: 4d2a88a729b1eb42f3d25f217c28937ec318a5b7 HMSBroadcastExtensionSDK: d80fe325f6c928bd8e5176290b5a4b7ae15d6fbb - HMSSDK: 0b25c97c4575e19e0e20acc49ca5fa8bdf1df626 + HMSSDK: fc0bc12a4d44fd3104a3447639e7967ba6451167 HMSWebRTC: ae54e9dd91b869051b283b43b14f57d43b7bf8e1 libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 OpenSSL-Universal: 1aa4f6a6ee7256b83db99ec1ccdaa80d10f9af9b @@ -622,7 +622,7 @@ SPEC CHECKSUMS: react-native-camera: 3eae183c1d111103963f3dd913b65d01aef8110f react-native-cameraroll: 8ffb0af7a5e5de225fd667610e2979fc1f0c2151 react-native-document-picker: 495c444c0c773c6e83a5d91165890ecb1c0a399a - react-native-hms: 829ff0e6aa28a3e94124d75f787375bfe9a9c893 + react-native-hms: 687061da689231515992d70ec6cb1b161cab1be2 react-native-safe-area-context: 9e40fb181dac02619414ba1294d6c2a807056ab9 react-native-simple-toast: 8ee5d23f0b92b935ab7434cdb65159ce12dfb4b7 react-native-video: c26780b224543c62d5e1b2a7244a5cd1b50e8253 diff --git a/example/package-lock.json b/example/package-lock.json index 0fd902ce6..41f44f6b6 100644 --- a/example/package-lock.json +++ b/example/package-lock.json @@ -3640,9 +3640,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.1.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.2.tgz", - "integrity": "sha512-CTO/wa8x+rZU626cL2BlbCDzydgnFNgc19h4YvizpTO88MFQxab8wqisxaofQJ/9bLGugRdWIuX/TbIs6VVF6g==" + "version": "20.1.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.5.tgz", + "integrity": "sha512-IvGD1CD/nego63ySR7vrAKEX3AJTcmrAN2kn+/sDNLi1Ff5kBzDeEdqWDplK+0HAEoLYej137Sk0cUU8OLOlMg==" }, "node_modules/@types/normalize-package-data": { "version": "2.4.1", @@ -3817,9 +3817,9 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -3942,9 +3942,9 @@ } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -4932,9 +4932,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001486", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz", - "integrity": "sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==", + "version": "1.0.30001487", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001487.tgz", + "integrity": "sha512-83564Z3yWGqXsh2vaH/mhXfEM0wX+NlBCm1jYHOb97TrTWJEmPTccZgeLTPBUUb0PNVo+oomb7wkimZBIERClA==", "funding": [ { "type": "opencollective", @@ -5369,49 +5369,11 @@ } }, "node_modules/cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", - "dependencies": { - "node-fetch": "2.6.7" - } - }, - "node_modules/cross-fetch/node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/cross-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "node_modules/cross-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "node_modules/cross-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.6.tgz", + "integrity": "sha512-riRvo06crlE8HiqOwIpQhxwdOk4fOeR7FVM/wXoxchFEqMNUjvbs3bfo4OTgMEMHzppd4DxFBDbyySj8Cv781g==", "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "node-fetch": "^2.6.11" } }, "node_modules/cross-spawn": { @@ -5666,9 +5628,9 @@ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.391", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.391.tgz", - "integrity": "sha512-GqydVV1+kUWY5qlEzaw34/hyWTApuQrHiGrcGA2Kk/56nEK44i+YUW45VH43JuZT0Oo7uY8aVtpPhBBZXEWtSA==" + "version": "1.4.396", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.396.tgz", + "integrity": "sha512-pqKTdqp/c5vsrc0xUPYXTDBo9ixZuGY8es4ZOjjd6HD6bFYbu5QA09VoW3fkY4LF1T0zYk86lN6bZnNlBuOpdQ==" }, "node_modules/eme-encryption-scheme-polyfill": { "version": "2.1.1", @@ -6335,9 +6297,9 @@ } }, "node_modules/eslint/node_modules/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -7127,13 +7089,14 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", + "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", "dev": true, "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", + "has-proto": "^1.0.1", "has-symbols": "^1.0.3" }, "funding": { @@ -9399,9 +9362,9 @@ } }, "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -10982,9 +10945,9 @@ } }, "node_modules/node-notifier/node_modules/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", "dev": true, "optional": true, "dependencies": { diff --git a/package-lock.json b/package-lock.json index f3941c35a..5555dccdc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4508,9 +4508,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.1.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.2.tgz", - "integrity": "sha512-CTO/wa8x+rZU626cL2BlbCDzydgnFNgc19h4YvizpTO88MFQxab8wqisxaofQJ/9bLGugRdWIuX/TbIs6VVF6g==", + "version": "20.1.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.5.tgz", + "integrity": "sha512-IvGD1CD/nego63ySR7vrAKEX3AJTcmrAN2kn+/sDNLi1Ff5kBzDeEdqWDplK+0HAEoLYej137Sk0cUU8OLOlMg==", "dev": true }, "node_modules/@types/normalize-package-data": { @@ -5773,9 +5773,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001486", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz", - "integrity": "sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==", + "version": "1.0.30001487", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001487.tgz", + "integrity": "sha512-83564Z3yWGqXsh2vaH/mhXfEM0wX+NlBCm1jYHOb97TrTWJEmPTccZgeLTPBUUb0PNVo+oomb7wkimZBIERClA==", "dev": true, "funding": [ { @@ -6658,9 +6658,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.391", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.391.tgz", - "integrity": "sha512-GqydVV1+kUWY5qlEzaw34/hyWTApuQrHiGrcGA2Kk/56nEK44i+YUW45VH43JuZT0Oo7uY8aVtpPhBBZXEWtSA==", + "version": "1.4.396", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.396.tgz", + "integrity": "sha512-pqKTdqp/c5vsrc0xUPYXTDBo9ixZuGY8es4ZOjjd6HD6bFYbu5QA09VoW3fkY4LF1T0zYk86lN6bZnNlBuOpdQ==", "dev": true }, "node_modules/emittery": { @@ -8161,13 +8161,14 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", + "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", "dev": true, "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", + "has-proto": "^1.0.1", "has-symbols": "^1.0.3" }, "funding": { @@ -14749,9 +14750,9 @@ } }, "node_modules/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" diff --git a/sdk-versions.json b/sdk-versions.json index ed10f98df..a19cde860 100644 --- a/sdk-versions.json +++ b/sdk-versions.json @@ -1,5 +1,5 @@ { - "ios": "0.9.3", + "ios": "0.9.4", "iOSBroadcastExtension": "0.0.9", "android": "2.6.3" } From cb74449d230143314ddabdaf9951e148d3934ca2 Mon Sep 17 00:00:00 2001 From: Jatin Nagar Date: Tue, 16 May 2023 17:22:25 +0530 Subject: [PATCH 14/19] refactor(example-app): showing spotlight tile with ASPECT_FIT configuration --- .../screens/MeetingScreen/PeerDisplayView.tsx | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/example/src/screens/MeetingScreen/PeerDisplayView.tsx b/example/src/screens/MeetingScreen/PeerDisplayView.tsx index 96e490bc8..a9d8656f3 100644 --- a/example/src/screens/MeetingScreen/PeerDisplayView.tsx +++ b/example/src/screens/MeetingScreen/PeerDisplayView.tsx @@ -11,7 +11,7 @@ import type {HMSView} from '@100mslive/react-native-hms'; import {styles} from './styles'; -import {getInitials} from '../../utils/functions'; +import {getInitials, isTileOnSpotlight} from '../../utils/functions'; import type {RootState} from '../../redux'; export interface PeerDisplayViewProps { @@ -34,11 +34,21 @@ const PeerDisplayViewUnmemoized = React.forwardRef< const autoSimulcast = useSelector( (state: RootState) => state.app.joinConfig.autoSimulcast, ); + const spotlightTrackId = useSelector( + (state: RootState) => state.user.spotlightTrackId, + ); if (!HmsView) { return null; } + // Check if selected tile is "On Spotlight" + const {onSpotlight} = isTileOnSpotlight(spotlightTrackId, { + tileVideoTrack: videoTrack, + peerRegularAudioTrack: peer.audioTrack, + peerAuxTracks: peer.auxiliaryTracks, + }); + return ( {videoTrack?.isMute() || videoTrack?.trackId === undefined ? ( @@ -58,8 +68,9 @@ const PeerDisplayViewUnmemoized = React.forwardRef< isLocal && mirrorCamera !== undefined ? mirrorCamera : false } scaleType={ - videoTrack?.source !== undefined && - videoTrack?.source !== HMSTrackSource.REGULAR + onSpotlight || + (videoTrack?.source !== undefined && + videoTrack?.source !== HMSTrackSource.REGULAR) ? HMSVideoViewMode.ASPECT_FIT : HMSVideoViewMode.ASPECT_FILL } From 005e69f306396fdc7448bb503172b5135ded169c Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 17 May 2023 12:18:19 +0530 Subject: [PATCH 15/19] updated Trunk's Kotlin linter --- .trunk/trunk.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml index d32abc6ff..716783f2a 100644 --- a/.trunk/trunk.yaml +++ b/.trunk/trunk.yaml @@ -10,7 +10,7 @@ lint: enabled: - oxipng@8.0.0 - yamllint@1.31.0 - - ktlint@0.49.0 + - ktlint@0.49.1 - svgo@3.0.2 - prettier@2.8.8 - shfmt@3.5.0 From 3d89b203c706a10f61afe646cc4768d314868154 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 17 May 2023 12:54:57 +0530 Subject: [PATCH 16/19] added optional videoViewStateChangeListenerObject to HMSVideoViews --- android/src/main/java/com/reactnativehmssdk/HMSView.kt | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/android/src/main/java/com/reactnativehmssdk/HMSView.kt b/android/src/main/java/com/reactnativehmssdk/HMSView.kt index 2934fd2dc..11a85e3e7 100644 --- a/android/src/main/java/com/reactnativehmssdk/HMSView.kt +++ b/android/src/main/java/com/reactnativehmssdk/HMSView.kt @@ -25,6 +25,7 @@ class HMSView(context: ReactContext) : FrameLayout(context) { private var sdkId: String = "12345" private var disableAutoSimulcastLayerSelect = false private var jsCanApplyStyles = false + private var videoViewStateChangeListenerObject: VideoViewStateChangeListener? = null init { val inflater = getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater @@ -36,16 +37,21 @@ class HMSView(context: ReactContext) : FrameLayout(context) { hmsVideoView?.setMirror(false) hmsVideoView?.disableAutoSimulcastLayerSelect(disableAutoSimulcastLayerSelect) - hmsVideoView?.addVideoViewStateChangeListener(object : VideoViewStateChangeListener { + videoViewStateChangeListenerObject = object : VideoViewStateChangeListener { override fun onResolutionChange(newWidth: Int, newHeight: Int) { super.onResolutionChange(newWidth, newHeight) if (!jsCanApplyStyles) { val event: WritableMap = Arguments.createMap() context.getJSModule(RCTEventEmitter::class.java).receiveEvent(id, "topChange", event) jsCanApplyStyles = true + this@HMSView.videoViewStateChangeListenerObject = null } } - }) + } + + videoViewStateChangeListenerObject?.let { + hmsVideoView?.addVideoViewStateChangeListener(it) + } } @RequiresApi(Build.VERSION_CODES.N) From 7914fe963e4dc29ecc2acaa736af484651bf2972 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 17 May 2023 17:20:40 +0530 Subject: [PATCH 17/19] =?UTF-8?q?released=20sample=20app=20version=202.1.6?= =?UTF-8?q?3=20(199)=20=E2=9A=9B=EF=B8=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- example/android/app/build.gradle | 4 ++-- example/ios/RNHMSExample.xcodeproj/project.pbxproj | 8 ++++---- example/ios/RNHMSExample/Info.plist | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle index d3d2a834b..31bfbf006 100644 --- a/example/android/app/build.gradle +++ b/example/android/app/build.gradle @@ -134,8 +134,8 @@ android { applicationId "live.hms.rn" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 198 - versionName "2.1.62" + versionCode 199 + versionName "2.1.63" missingDimensionStrategy 'react-native-camera', 'general' } splits { diff --git a/example/ios/RNHMSExample.xcodeproj/project.pbxproj b/example/ios/RNHMSExample.xcodeproj/project.pbxproj index 0f92814b4..0d02689a6 100644 --- a/example/ios/RNHMSExample.xcodeproj/project.pbxproj +++ b/example/ios/RNHMSExample.xcodeproj/project.pbxproj @@ -442,7 +442,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 198; + CURRENT_PROJECT_VERSION = 199; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; @@ -484,7 +484,7 @@ CODE_SIGN_ENTITLEMENTS = RNHMSExample/RNHMSExample.entitlements; CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 198; + CURRENT_PROJECT_VERSION = 199; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; @@ -654,7 +654,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 198; + CURRENT_PROJECT_VERSION = 199; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; @@ -699,7 +699,7 @@ CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 198; + CURRENT_PROJECT_VERSION = 199; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; diff --git a/example/ios/RNHMSExample/Info.plist b/example/ios/RNHMSExample/Info.plist index dc2b26953..535e50ed6 100644 --- a/example/ios/RNHMSExample/Info.plist +++ b/example/ios/RNHMSExample/Info.plist @@ -17,11 +17,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 2.1.62 + 2.1.63 CFBundleSignature ???? CFBundleVersion - 198 + 199 ITSAppUsesNonExemptEncryption LSRequiresIPhoneOS From f9626652a48e8eca69ec11731d2a997f9f3e475c Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 17 May 2023 18:47:54 +0530 Subject: [PATCH 18/19] Revert "added optional videoViewStateChangeListenerObject to HMSVideoViews" This reverts commit 3d89b203c706a10f61afe646cc4768d314868154. --- android/src/main/java/com/reactnativehmssdk/HMSView.kt | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/android/src/main/java/com/reactnativehmssdk/HMSView.kt b/android/src/main/java/com/reactnativehmssdk/HMSView.kt index 11a85e3e7..2934fd2dc 100644 --- a/android/src/main/java/com/reactnativehmssdk/HMSView.kt +++ b/android/src/main/java/com/reactnativehmssdk/HMSView.kt @@ -25,7 +25,6 @@ class HMSView(context: ReactContext) : FrameLayout(context) { private var sdkId: String = "12345" private var disableAutoSimulcastLayerSelect = false private var jsCanApplyStyles = false - private var videoViewStateChangeListenerObject: VideoViewStateChangeListener? = null init { val inflater = getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater @@ -37,21 +36,16 @@ class HMSView(context: ReactContext) : FrameLayout(context) { hmsVideoView?.setMirror(false) hmsVideoView?.disableAutoSimulcastLayerSelect(disableAutoSimulcastLayerSelect) - videoViewStateChangeListenerObject = object : VideoViewStateChangeListener { + hmsVideoView?.addVideoViewStateChangeListener(object : VideoViewStateChangeListener { override fun onResolutionChange(newWidth: Int, newHeight: Int) { super.onResolutionChange(newWidth, newHeight) if (!jsCanApplyStyles) { val event: WritableMap = Arguments.createMap() context.getJSModule(RCTEventEmitter::class.java).receiveEvent(id, "topChange", event) jsCanApplyStyles = true - this@HMSView.videoViewStateChangeListenerObject = null } } - } - - videoViewStateChangeListenerObject?.let { - hmsVideoView?.addVideoViewStateChangeListener(it) - } + }) } @RequiresApi(Build.VERSION_CODES.N) From 63be2bff30498acf9dc041f2a1d9f6ca0de459d6 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 17 May 2023 21:04:50 +0530 Subject: [PATCH 19/19] =?UTF-8?q?released=20sample=20app=20version=202.1.6?= =?UTF-8?q?4=20(200)=20=E2=9A=9B=EF=B8=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- example/android/app/build.gradle | 4 ++-- example/ios/RNHMSExample.xcodeproj/project.pbxproj | 8 ++++---- example/ios/RNHMSExample/Info.plist | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle index 31bfbf006..b18f64df9 100644 --- a/example/android/app/build.gradle +++ b/example/android/app/build.gradle @@ -134,8 +134,8 @@ android { applicationId "live.hms.rn" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 199 - versionName "2.1.63" + versionCode 200 + versionName "2.1.64" missingDimensionStrategy 'react-native-camera', 'general' } splits { diff --git a/example/ios/RNHMSExample.xcodeproj/project.pbxproj b/example/ios/RNHMSExample.xcodeproj/project.pbxproj index 0d02689a6..006d5b971 100644 --- a/example/ios/RNHMSExample.xcodeproj/project.pbxproj +++ b/example/ios/RNHMSExample.xcodeproj/project.pbxproj @@ -442,7 +442,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 199; + CURRENT_PROJECT_VERSION = 200; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; @@ -484,7 +484,7 @@ CODE_SIGN_ENTITLEMENTS = RNHMSExample/RNHMSExample.entitlements; CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 199; + CURRENT_PROJECT_VERSION = 200; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; @@ -654,7 +654,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 199; + CURRENT_PROJECT_VERSION = 200; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; @@ -699,7 +699,7 @@ CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 199; + CURRENT_PROJECT_VERSION = 200; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = 5N85PP82A9; ENABLE_BITCODE = NO; diff --git a/example/ios/RNHMSExample/Info.plist b/example/ios/RNHMSExample/Info.plist index 535e50ed6..aa6c4fcbf 100644 --- a/example/ios/RNHMSExample/Info.plist +++ b/example/ios/RNHMSExample/Info.plist @@ -17,11 +17,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 2.1.63 + 2.1.64 CFBundleSignature ???? CFBundleVersion - 199 + 200 ITSAppUsesNonExemptEncryption LSRequiresIPhoneOS