@usercentrics/react-native-sdk 2.2.2-RC1 → 2.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/CHANGELOG.md +96 -0
  2. package/android/build.gradle +1 -1
  3. package/android/src/androidTest/java/com/usercentrics/reactnativemodule/RNUsercentricsModuleTest.kt +16 -132
  4. package/android/src/androidTest/java/com/usercentrics/reactnativemodule/api/FakeUsercentricsProxy.kt +4 -31
  5. package/android/src/androidTest/java/com/usercentrics/reactnativemodule/mock/GetTCFDataMock.kt +3 -1
  6. package/android/src/androidTest/java/com/usercentrics/reactnativemodule/mock/GetUSPDataMock.kt +1 -0
  7. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/RNUsercentricsModule.kt +8 -83
  8. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/api/UsercentricsProxy.kt +12 -64
  9. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/BannerFontExtensions.kt +26 -0
  10. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/CCPADataExtensions.kt +1 -0
  11. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/FirstLayerOptionsExtensions.kt +39 -14
  12. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/TCFDataExtensions.kt +2 -1
  13. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/UserOptionsExtensions.kt +12 -0
  14. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/UsercentricsReadyStatusExtensions.kt +1 -1
  15. package/ios/Extensions/BannerSettings+Dict.swift +103 -16
  16. package/ios/Extensions/CCPAData+Dict.swift +1 -0
  17. package/ios/Extensions/ReadyStatus+Dict.swift +1 -1
  18. package/ios/Extensions/UsercentricsOptions+Dict.swift +20 -6
  19. package/ios/Manager/UsercentricsManager.swift +8 -36
  20. package/ios/RNUsercentricsModule.swift +35 -63
  21. package/ios/RNUsercentricsModule.xcodeproj/project.pbxproj +0 -8
  22. package/lib/Usercentrics.d.ts +4 -5
  23. package/lib/Usercentrics.js +4 -8
  24. package/lib/Usercentrics.js.map +1 -1
  25. package/lib/models/BannerSettings.d.ts +26 -4
  26. package/lib/models/BannerSettings.js +25 -1
  27. package/lib/models/BannerSettings.js.map +1 -1
  28. package/lib/models/CCPAData.d.ts +2 -1
  29. package/lib/models/CCPAData.js +2 -1
  30. package/lib/models/CCPAData.js.map +1 -1
  31. package/lib/models/FirstLayerOptions.d.ts +14 -12
  32. package/lib/models/FirstLayerOptions.js +10 -8
  33. package/lib/models/FirstLayerOptions.js.map +1 -1
  34. package/lib/models/NetworkMode.d.ts +4 -0
  35. package/lib/models/NetworkMode.js +6 -0
  36. package/lib/models/NetworkMode.js.map +1 -0
  37. package/lib/models/SecondLayerOptions.d.ts +7 -3
  38. package/lib/models/SecondLayerOptions.js +6 -1
  39. package/lib/models/SecondLayerOptions.js.map +1 -1
  40. package/lib/models/TCFData.d.ts +2 -1
  41. package/lib/models/TCFData.js +2 -1
  42. package/lib/models/TCFData.js.map +1 -1
  43. package/lib/models/UsercentricsOptions.d.ts +3 -2
  44. package/lib/models/UsercentricsOptions.js +2 -1
  45. package/lib/models/UsercentricsOptions.js.map +1 -1
  46. package/lib/models/UsercentricsReadyStatus.d.ts +2 -2
  47. package/lib/models/UsercentricsReadyStatus.js +2 -2
  48. package/lib/models/UsercentricsReadyStatus.js.map +1 -1
  49. package/lib/models/index.d.ts +12 -12
  50. package/lib/models/index.js +12 -12
  51. package/lib/models/index.js.map +1 -1
  52. package/package.json +79 -79
  53. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/UsercentricsUserInterfaceExtensions.kt +0 -45
  54. package/ios/Extensions/UIFont+UsercentricsFontDict.swift +0 -15
  55. package/ios/Extensions/UsercentricsUISettings+Dict.swift +0 -27
  56. package/lib/models/UsercentricsUIOptions.d.ts +0 -18
  57. package/lib/models/UsercentricsUIOptions.js +0 -21
  58. package/lib/models/UsercentricsUIOptions.js.map +0 -1
@@ -1,10 +1,11 @@
1
1
  export class UsercentricsOptions {
2
- constructor(settingsId, defaultLanguage, loggerLevel, timeoutMillis, version) {
2
+ constructor(settingsId, defaultLanguage, loggerLevel, timeoutMillis, version, networkMode) {
3
3
  this.settingsId = settingsId;
4
4
  this.defaultLanguage = defaultLanguage;
5
5
  this.loggerLevel = loggerLevel;
6
6
  this.timeoutMillis = timeoutMillis;
7
7
  this.version = version;
8
+ this.networkMode = networkMode;
8
9
  }
9
10
  }
10
11
  //# sourceMappingURL=UsercentricsOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UsercentricsOptions.js","sourceRoot":"","sources":["../../src/models/UsercentricsOptions.tsx"],"names":[],"mappings":"AAEA,MAAM,OAAO,mBAAmB;IAO5B,YAAY,UAAkB,EAC1B,eAAwB,EACxB,WAAqC,EACrC,aAAsB,EACtB,OAAgB;QAChB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;QACtC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;CACJ"}
1
+ {"version":3,"file":"UsercentricsOptions.js","sourceRoot":"","sources":["../../src/models/UsercentricsOptions.tsx"],"names":[],"mappings":"AAEA,MAAM,OAAO,mBAAmB;IAQ5B,YAAY,UAAkB,EAC1B,eAAwB,EACxB,WAAqC,EACrC,aAAsB,EACtB,OAAgB,EAChB,WAAyB;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;QACtC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAClC,CAAC;CACJ"}
@@ -1,6 +1,6 @@
1
1
  import { UsercentricsServiceConsent } from ".";
2
2
  export declare class UsercentricsReadyStatus {
3
- shouldShowCMP: boolean;
3
+ shouldCollectConsent: boolean;
4
4
  consents: [UsercentricsServiceConsent];
5
- constructor(shouldShowCMP: boolean, consents: [UsercentricsServiceConsent]);
5
+ constructor(shouldCollectConsent: boolean, consents: [UsercentricsServiceConsent]);
6
6
  }
@@ -1,6 +1,6 @@
1
1
  export class UsercentricsReadyStatus {
2
- constructor(shouldShowCMP, consents) {
3
- this.shouldShowCMP = shouldShowCMP;
2
+ constructor(shouldCollectConsent, consents) {
3
+ this.shouldCollectConsent = shouldCollectConsent;
4
4
  this.consents = consents;
5
5
  }
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"UsercentricsReadyStatus.js","sourceRoot":"","sources":["../../src/models/UsercentricsReadyStatus.tsx"],"names":[],"mappings":"AAEA,MAAM,OAAO,uBAAuB;IAIhC,YAAY,aAAsB,EAAE,QAAsC;QACtE,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;CACJ"}
1
+ {"version":3,"file":"UsercentricsReadyStatus.js","sourceRoot":"","sources":["../../src/models/UsercentricsReadyStatus.tsx"],"names":[],"mappings":"AAEA,MAAM,OAAO,uBAAuB;IAIhC,YAAY,oBAA6B,EAAE,QAAsC;QAC7E,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAA;QAChD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;CACJ"}
@@ -1,18 +1,18 @@
1
- export { UsercentricsOptions } from "./UsercentricsOptions";
1
+ export { BannerFont, BannerLogo, BannerSettings, LegalLinksSettings } from "./BannerSettings";
2
+ export { CCPAData } from './CCPAData';
3
+ export { ButtonLayout, ButtonSettings, ButtonType, FirstLayerOptions, FirstLayerStyleSettings, HeaderImageSettings, MessageSettings, SectionAlignment, TitleSettings, UsercentricsLayout } from './FirstLayerOptions';
4
+ export { NetworkMode } from "./NetworkMode";
5
+ export { SecondLayerOptions, SecondLayerStyleSettings } from './SecondLayerOptions';
6
+ export { TCFData } from './TCFData';
7
+ export { TCFDecisionUILayer } from './TCFDecisionUILayer';
8
+ export { TCFUserDecisionOnPurpose, TCFUserDecisionOnSpecialFeature, TCFUserDecisionOnVendor, TCFUserDecisions } from './TCFUserDecisions';
9
+ export { UsercentricsCMPData } from './UsercentricsCMPData';
2
10
  export { UsercentricsConsentType } from "./UsercentricsConsentType";
11
+ export { UsercentricsConsentUserResponse } from './UsercentricsConsentUserResponse';
3
12
  export { UsercentricsLoggerLevel } from "./UsercentricsLoggerLevel";
13
+ export { UsercentricsOptions } from "./UsercentricsOptions";
14
+ export { UsercentricsReadyStatus } from './UsercentricsReadyStatus';
4
15
  export { UsercentricsServiceConsent } from "./UsercentricsServiceConsent";
5
- export { UsercentricsUIOptions, UsercentricsFont, UsercentricsLogo } from "./UsercentricsUIOptions";
6
16
  export { UsercentricsUserInteraction } from './UsercentricsUserInteraction';
7
- export { UsercentricsConsentUserResponse } from './UsercentricsConsentUserResponse';
8
- export { UsercentricsReadyStatus } from './UsercentricsReadyStatus';
9
- export { UsercentricsCMPData } from './UsercentricsCMPData';
10
- export { CCPAData } from './CCPAData';
11
- export { TCFData } from './TCFData';
12
17
  export { UsercentricsVariant } from './UsercentricsVariant';
13
- export { TCFDecisionUILayer } from './TCFDecisionUILayer';
14
18
  export { UserDecision } from './UserDecision';
15
- export { TCFUserDecisions, TCFUserDecisionOnPurpose, TCFUserDecisionOnSpecialFeature, TCFUserDecisionOnVendor } from './TCFUserDecisions';
16
- export { FirstLayerOptions, FirstLayerStyleSettings, HeaderImageSettings, TitleSettings, SectionAlignment, MessageSettings, UsercentricsLayout, ButtonLayout, ButtonType, ButtonSettings } from './FirstLayerOptions';
17
- export { SecondLayerOptions } from './SecondLayerOptions';
18
- export { BannerSettings } from "./BannerSettings";
@@ -1,19 +1,19 @@
1
- export { UsercentricsOptions } from "./UsercentricsOptions";
1
+ export { BannerFont, BannerLogo, BannerSettings, LegalLinksSettings } from "./BannerSettings";
2
+ export { CCPAData } from './CCPAData';
3
+ export { ButtonLayout, ButtonSettings, ButtonType, FirstLayerOptions, FirstLayerStyleSettings, HeaderImageSettings, MessageSettings, SectionAlignment, TitleSettings, UsercentricsLayout } from './FirstLayerOptions';
4
+ export { NetworkMode } from "./NetworkMode";
5
+ export { SecondLayerOptions, SecondLayerStyleSettings } from './SecondLayerOptions';
6
+ export { TCFData } from './TCFData';
7
+ export { TCFDecisionUILayer } from './TCFDecisionUILayer';
8
+ export { TCFUserDecisionOnPurpose, TCFUserDecisionOnSpecialFeature, TCFUserDecisionOnVendor, TCFUserDecisions } from './TCFUserDecisions';
9
+ export { UsercentricsCMPData } from './UsercentricsCMPData';
2
10
  export { UsercentricsConsentType } from "./UsercentricsConsentType";
11
+ export { UsercentricsConsentUserResponse } from './UsercentricsConsentUserResponse';
3
12
  export { UsercentricsLoggerLevel } from "./UsercentricsLoggerLevel";
13
+ export { UsercentricsOptions } from "./UsercentricsOptions";
14
+ export { UsercentricsReadyStatus } from './UsercentricsReadyStatus';
4
15
  export { UsercentricsServiceConsent } from "./UsercentricsServiceConsent";
5
- export { UsercentricsUIOptions, UsercentricsFont, UsercentricsLogo } from "./UsercentricsUIOptions";
6
16
  export { UsercentricsUserInteraction } from './UsercentricsUserInteraction';
7
- export { UsercentricsConsentUserResponse } from './UsercentricsConsentUserResponse';
8
- export { UsercentricsReadyStatus } from './UsercentricsReadyStatus';
9
- export { UsercentricsCMPData } from './UsercentricsCMPData';
10
- export { CCPAData } from './CCPAData';
11
- export { TCFData } from './TCFData';
12
17
  export { UsercentricsVariant } from './UsercentricsVariant';
13
- export { TCFDecisionUILayer } from './TCFDecisionUILayer';
14
18
  export { UserDecision } from './UserDecision';
15
- export { TCFUserDecisions, TCFUserDecisionOnPurpose, TCFUserDecisionOnSpecialFeature, TCFUserDecisionOnVendor } from './TCFUserDecisions';
16
- export { FirstLayerOptions, FirstLayerStyleSettings, HeaderImageSettings, TitleSettings, SectionAlignment, MessageSettings, UsercentricsLayout, ButtonLayout, ButtonType, ButtonSettings } from './FirstLayerOptions';
17
- export { SecondLayerOptions } from './SecondLayerOptions';
18
- export { BannerSettings } from "./BannerSettings";
19
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACpG,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC1I,OAAO,EACH,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,cAAc,EACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EACH,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,iBAAiB,EAC3D,uBAAuB,EACvB,mBAAmB,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,EAC5F,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC1I,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
package/package.json CHANGED
@@ -1,81 +1,81 @@
1
1
  {
2
- "name": "@usercentrics/react-native-sdk",
3
- "version": "2.2.2-RC1",
4
- "description": "Usercentrics SDK",
5
- "homepage": "https://usercentrics.com",
6
- "main": "lib/index.js",
7
- "types": "lib/index.d.ts",
8
- "author": "Usercentrics <developer@usercentrics.com>",
9
- "iosPackageName": "react-native-usercentrics",
10
- "iosPackageVersion": "2.2.1",
11
- "license": "SEE LICENSE IN LICENSE",
12
- "files": [
13
- "android",
14
- "ios",
15
- "lib",
16
- "react-native-usercentrics.podspec",
17
- "!android/build",
18
- "!.DS_Store",
19
- "!.gradle",
20
- "!.idea",
21
- "!build",
22
- "!gradle",
23
- "!*.iml",
24
- "!gradlew",
25
- "!gradlew.bat",
26
- "!local.properties",
27
- "!project.xcworkspace",
28
- "!xcshareddata",
29
- "!xcuserdata"
30
- ],
31
- "scripts": {
32
- "compile": "rm -rf lib && tsc -p .",
33
- "lint": "eslint . --ext .js,.jsx,.ts,.tsx",
34
- "prepare": "yarn compile",
35
- "test": "jest src/__tests__/index.test.ts"
36
- },
37
- "devDependencies": {
38
- "@babel/core": "^7.15.5",
39
- "@babel/runtime": "^7.15.4",
40
- "@react-native-community/eslint-config": "^3.0.1",
41
- "@types/jest": "^27.0.1",
42
- "@types/react-native": "^0.64.13",
43
- "@types/react-test-renderer": "^17.0.1",
44
- "babel-jest": "^27.1.0",
45
- "eslint": "^7.32.0",
46
- "eslint-plugin-simple-import-sort": "^7.0.0",
47
- "jest": "^27.1.0",
48
- "metro-react-native-babel-preset": "^0.66.2",
49
- "react": "^17.0.2",
50
- "react-native": "^0.65.1",
51
- "react-native-codegen": "^0.0.7",
52
- "react-test-renderer": "^17.0.2",
53
- "typescript": "^4.4.2"
54
- },
55
- "peerDependencies": {
56
- "react": "*",
57
- "react-native": "*"
58
- },
59
- "jest": {
60
- "preset": "react-native",
61
- "moduleFileExtensions": [
62
- "ts",
63
- "tsx",
64
- "js",
65
- "jsx",
66
- "json",
67
- "node"
68
- ]
69
- },
70
- "directories": {
71
- "example": "example",
72
- "lib": "lib"
73
- },
74
- "repository": {
75
- "type": "git",
76
- "url": "https://github.com/Usercentrics/react-native-sdk"
77
- },
78
- "bugs": {
79
- "url": "https://github.com/Usercentrics/react-native-sdk/issues"
80
- }
2
+ "name": "@usercentrics/react-native-sdk",
3
+ "version": "2.5.1",
4
+ "description": "Usercentrics SDK",
5
+ "homepage": "https://usercentrics.com",
6
+ "main": "lib/index.js",
7
+ "types": "lib/index.d.ts",
8
+ "author": "Usercentrics <developer@usercentrics.com>",
9
+ "iosPackageName": "react-native-usercentrics",
10
+ "iosPackageVersion": "2.5.1",
11
+ "license": "SEE LICENSE IN LICENSE",
12
+ "files": [
13
+ "android",
14
+ "ios",
15
+ "lib",
16
+ "react-native-usercentrics.podspec",
17
+ "!android/build",
18
+ "!.DS_Store",
19
+ "!.gradle",
20
+ "!.idea",
21
+ "!build",
22
+ "!gradle",
23
+ "!*.iml",
24
+ "!gradlew",
25
+ "!gradlew.bat",
26
+ "!local.properties",
27
+ "!project.xcworkspace",
28
+ "!xcshareddata",
29
+ "!xcuserdata"
30
+ ],
31
+ "scripts": {
32
+ "compile": "rm -rf lib && tsc -p .",
33
+ "lint": "eslint . --ext .js,.jsx,.ts,.tsx",
34
+ "prepare": "yarn compile",
35
+ "test": "jest src/__tests__/index.test.ts"
36
+ },
37
+ "devDependencies": {
38
+ "@babel/core": "^7.15.5",
39
+ "@babel/runtime": "^7.15.4",
40
+ "@react-native-community/eslint-config": "^3.0.1",
41
+ "@types/jest": "^27.0.1",
42
+ "@types/react-native": "^0.64.13",
43
+ "@types/react-test-renderer": "^17.0.1",
44
+ "babel-jest": "^27.1.0",
45
+ "eslint": "^7.32.0",
46
+ "eslint-plugin-simple-import-sort": "^7.0.0",
47
+ "jest": "^27.1.0",
48
+ "metro-react-native-babel-preset": "^0.66.2",
49
+ "react": "^17.0.2",
50
+ "react-native": "^0.65.1",
51
+ "react-native-codegen": "^0.0.7",
52
+ "react-test-renderer": "^17.0.2",
53
+ "typescript": "^4.4.2"
54
+ },
55
+ "peerDependencies": {
56
+ "react": "*",
57
+ "react-native": "*"
58
+ },
59
+ "jest": {
60
+ "preset": "react-native",
61
+ "moduleFileExtensions": [
62
+ "ts",
63
+ "tsx",
64
+ "js",
65
+ "jsx",
66
+ "json",
67
+ "node"
68
+ ]
69
+ },
70
+ "directories": {
71
+ "example": "example",
72
+ "lib": "lib"
73
+ },
74
+ "repository": {
75
+ "type": "git",
76
+ "url": "https://github.com/Usercentrics/react-native-sdk"
77
+ },
78
+ "bugs": {
79
+ "url": "https://github.com/Usercentrics/react-native-sdk/issues"
80
+ }
81
81
  }
@@ -1,45 +0,0 @@
1
- package com.usercentrics.reactnativeusercentrics.extensions
2
-
3
- import android.content.res.AssetManager
4
- import android.graphics.Bitmap
5
- import android.graphics.BitmapFactory
6
- import android.graphics.Typeface
7
- import com.facebook.react.bridge.ReadableMap
8
- import com.usercentrics.reactnativeusercentrics.R
9
- import com.usercentrics.sdk.UsercentricsFont
10
- import com.usercentrics.sdk.UsercentricsImage
11
- import com.usercentrics.sdk.UsercentricsOptions
12
- import com.usercentrics.sdk.UsercentricsUISettings
13
- import com.usercentrics.sdk.models.common.UsercentricsLoggerLevel
14
-
15
- internal fun ReadableMap.usercentricsUISettingsFromMap(assetManager: AssetManager): UsercentricsUISettings {
16
- val showCloseButton = getBooleanOrNull("showCloseButton") == true
17
- val customFont = getMap("customFont")
18
- val customLogo = getMap("customLogo")
19
-
20
- return UsercentricsUISettings(
21
- customFont?.usercentricsFontFromMap(assetManager),
22
- customLogo?.usercentricsImageFromMap(),
23
- showCloseButton
24
- )
25
- }
26
-
27
- internal fun ReadableMap.usercentricsImageFromMap(): UsercentricsImage? {
28
- val logoPath = getString("logoPath") ?: return null
29
- return UsercentricsImage.ImageUrl(logoPath)
30
- }
31
-
32
- internal fun ReadableMap.usercentricsFontFromMap(assetManager: AssetManager): UsercentricsFont? {
33
- val fontName = getString("fontName") ?: return null
34
- val fontSize = getDoubleOrNull("fontSize") ?: return null
35
-
36
- val fontsFolder = assetManager.list("fonts")
37
- val firstName = fontsFolder?.firstOrNull { it.startsWith(fontName) } ?: return null
38
-
39
- val typeface = Typeface.createFromAsset(assetManager, "fonts/$firstName")
40
-
41
- return UsercentricsFont(
42
- typeface,
43
- fontSize.toFloat()
44
- )
45
- }
@@ -1,15 +0,0 @@
1
- import Foundation
2
-
3
-
4
- extension UIFont {
5
- convenience init?(from dictionary: NSDictionary?) {
6
- guard let dictionary = dictionary else { return nil }
7
-
8
- if let customFontName = dictionary["fontName"] as? String,
9
- let customFontSize = dictionary["fontSize"] as? CGFloat {
10
- self.init(name: customFontName, size: customFontSize)
11
- } else {
12
- return nil
13
- }
14
- }
15
- }
@@ -1,27 +0,0 @@
1
- import Foundation
2
- import UsercentricsUI
3
-
4
- public extension UsercentricsUISettings {
5
- init?(from dictionary: NSDictionary) {
6
- let showCloseButton = dictionary["showCloseButton"] as? Bool == true
7
-
8
- var customFont: UIFont?
9
- if let usercentricsFontDict = dictionary["customFont"] as? NSDictionary,
10
- let customFontName = usercentricsFontDict["fontName"] as? String,
11
- let customFontSize = usercentricsFontDict["fontSize"] as? CGFloat {
12
-
13
- customFont = UIFont(name: customFontName, size: customFontSize)
14
- }
15
-
16
- var customImage: UIImage?
17
- if let customLogoDict = dictionary["customLogo"] as? NSDictionary,
18
- let logoName = customLogoDict["logoName"] as? String {
19
- customImage = UIImage(named: logoName)
20
- }
21
-
22
- self.init(customFont: customFont,
23
- customLogo: customImage,
24
- showCloseButton: showCloseButton)
25
- }
26
- }
27
-
@@ -1,18 +0,0 @@
1
- import { ImageResolvedAssetSource } from "react-native";
2
- export declare class UsercentricsUIOptions {
3
- showCloseButton: boolean;
4
- customLogo?: UsercentricsLogo;
5
- customFont?: UsercentricsFont;
6
- constructor(showCloseButton: boolean, customLogo?: UsercentricsLogo, customFont?: UsercentricsFont);
7
- }
8
- export declare class UsercentricsLogo {
9
- logoName: string;
10
- logoPath: string;
11
- logoUrl?: String;
12
- constructor(logoName: string, logoPath: ImageResolvedAssetSource, logoUrl?: String);
13
- }
14
- export declare class UsercentricsFont {
15
- fontName: string;
16
- fontSize: number;
17
- constructor(fontName: string, fontSize: number);
18
- }
@@ -1,21 +0,0 @@
1
- export class UsercentricsUIOptions {
2
- constructor(showCloseButton, customLogo, customFont) {
3
- this.showCloseButton = showCloseButton;
4
- this.customLogo = customLogo;
5
- this.customFont = customFont;
6
- }
7
- }
8
- export class UsercentricsLogo {
9
- constructor(logoName, logoPath, logoUrl) {
10
- this.logoName = logoName;
11
- this.logoPath = logoPath.uri;
12
- this.logoUrl = logoUrl;
13
- }
14
- }
15
- export class UsercentricsFont {
16
- constructor(fontName, fontSize) {
17
- this.fontName = fontName;
18
- this.fontSize = fontSize;
19
- }
20
- }
21
- //# sourceMappingURL=UsercentricsUIOptions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UsercentricsUIOptions.js","sourceRoot":"","sources":["../../src/models/UsercentricsUIOptions.tsx"],"names":[],"mappings":"AAEA,MAAM,OAAO,qBAAqB;IAK9B,YAAY,eAAwB,EAAE,UAA6B,EAAE,UAA6B;QAC9F,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;CACJ;AAED,MAAM,OAAO,gBAAgB;IAKzB,YAAY,QAAgB,EAAE,QAAkC,EAAE,OAAgB;QAC9E,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ;AAED,MAAM,OAAO,gBAAgB;IAIzB,YAAY,QAAgB,EAAE,QAAgB;QAC1C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;CACJ"}