posthog-react-native 1.1.5 → 2.0.0-alpha10

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 (145) hide show
  1. package/README.md +9 -0
  2. package/lib/index.cjs.js +1773 -0
  3. package/lib/index.cjs.js.map +1 -0
  4. package/lib/index.d.ts +214 -0
  5. package/lib/index.esm.js +1737 -0
  6. package/lib/index.esm.js.map +1 -0
  7. package/lib/node_modules/tslib/tslib.es6.d.ts +35 -0
  8. package/lib/posthog-core/src/eventemitter.d.ts +8 -0
  9. package/lib/posthog-core/src/index.d.ts +87 -0
  10. package/lib/posthog-core/src/lz-string.d.ts +8 -0
  11. package/lib/posthog-core/src/types.d.ts +68 -0
  12. package/lib/posthog-core/src/utils.d.ts +13 -0
  13. package/lib/posthog-react-native/index.d.ts +10 -0
  14. package/lib/posthog-react-native/src/PostHogProvider.d.ts +13 -0
  15. package/lib/posthog-react-native/src/PosthogContext.d.ts +5 -0
  16. package/lib/posthog-react-native/src/autocapture.d.ts +3 -0
  17. package/lib/posthog-react-native/src/hooks/useFeatureFlag.d.ts +1 -0
  18. package/lib/posthog-react-native/src/hooks/useFeatureFlags.d.ts +3 -0
  19. package/lib/posthog-react-native/src/hooks/useLifecycleTracker.d.ts +2 -0
  20. package/lib/posthog-react-native/src/hooks/useNavigationTracker.d.ts +5 -0
  21. package/lib/posthog-react-native/src/hooks/usePostHog.d.ts +2 -0
  22. package/lib/posthog-react-native/src/legacy.d.ts +4 -0
  23. package/lib/posthog-react-native/src/optional-imports.d.ts +6 -0
  24. package/lib/posthog-react-native/src/posthog-rn.d.ts +14 -0
  25. package/lib/posthog-react-native/src/storage.d.ts +8 -0
  26. package/lib/posthog-react-native/src/types.d.ts +12 -0
  27. package/package.json +35 -51
  28. package/RNPostHog.podspec +0 -21
  29. package/android/build.gradle +0 -46
  30. package/android/src/main/AndroidManifest.xml +0 -1
  31. package/android/src/main/java/com/posthog/reactnative/core/RNPostHogModule.kt +0 -250
  32. package/android/src/main/java/com/posthog/reactnative/core/RNPostHogPackage.kt +0 -44
  33. package/build/cjs/__mocks__/bridge.d.ts +0 -14
  34. package/build/cjs/__mocks__/bridge.js +0 -15
  35. package/build/cjs/__mocks__/bridge.js.map +0 -1
  36. package/build/cjs/__tests__/bridge.spec.d.ts +0 -1
  37. package/build/cjs/__tests__/bridge.spec.js +0 -19
  38. package/build/cjs/__tests__/bridge.spec.js.map +0 -1
  39. package/build/cjs/__tests__/configuration.spec.d.ts +0 -1
  40. package/build/cjs/__tests__/configuration.spec.js +0 -131
  41. package/build/cjs/__tests__/configuration.spec.js.map +0 -1
  42. package/build/cjs/__tests__/index.spec.d.ts +0 -1
  43. package/build/cjs/__tests__/index.spec.js +0 -9
  44. package/build/cjs/__tests__/index.spec.js.map +0 -1
  45. package/build/cjs/__tests__/posthog.spec.d.ts +0 -1
  46. package/build/cjs/__tests__/posthog.spec.js +0 -193
  47. package/build/cjs/__tests__/posthog.spec.js.map +0 -1
  48. package/build/cjs/bridge.d.ts +0 -50
  49. package/build/cjs/bridge.js +0 -9
  50. package/build/cjs/bridge.js.map +0 -1
  51. package/build/cjs/configuration.d.ts +0 -3
  52. package/build/cjs/configuration.js +0 -94
  53. package/build/cjs/configuration.js.map +0 -1
  54. package/build/cjs/index.d.ts +0 -5
  55. package/build/cjs/index.js +0 -6
  56. package/build/cjs/index.js.map +0 -1
  57. package/build/cjs/make-pkg.d.ts +0 -1
  58. package/build/cjs/make-pkg.js +0 -5
  59. package/build/cjs/make-pkg.js.map +0 -1
  60. package/build/cjs/middleware.d.ts +0 -41
  61. package/build/cjs/middleware.js +0 -114
  62. package/build/cjs/middleware.js.map +0 -1
  63. package/build/cjs/posthog.d.ts +0 -228
  64. package/build/cjs/posthog.js +0 -309
  65. package/build/cjs/posthog.js.map +0 -1
  66. package/build/cjs/utils.d.ts +0 -1
  67. package/build/cjs/utils.js +0 -7
  68. package/build/cjs/utils.js.map +0 -1
  69. package/build/cjs/wrapper.d.ts +0 -22
  70. package/build/cjs/wrapper.js +0 -114
  71. package/build/cjs/wrapper.js.map +0 -1
  72. package/build/coverage/clover.xml +0 -169
  73. package/build/coverage/coverage-final.json +0 -8
  74. package/build/coverage/lcov-report/base.css +0 -212
  75. package/build/coverage/lcov-report/bridge.ts.html +0 -228
  76. package/build/coverage/lcov-report/configuration.ts.html +0 -228
  77. package/build/coverage/lcov-report/index.html +0 -151
  78. package/build/coverage/lcov-report/index.ts.html +0 -60
  79. package/build/coverage/lcov-report/middleware.ts.html +0 -429
  80. package/build/coverage/lcov-report/posthog.ts.html +0 -960
  81. package/build/coverage/lcov-report/prettify.css +0 -1
  82. package/build/coverage/lcov-report/prettify.js +0 -1
  83. package/build/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  84. package/build/coverage/lcov-report/sorter.js +0 -158
  85. package/build/coverage/lcov-report/utils.ts.html +0 -54
  86. package/build/coverage/lcov-report/wrapper.ts.html +0 -228
  87. package/build/coverage/lcov.info +0 -365
  88. package/build/esm/__mocks__/bridge.d.ts +0 -14
  89. package/build/esm/__mocks__/bridge.js +0 -13
  90. package/build/esm/__mocks__/bridge.js.map +0 -1
  91. package/build/esm/__tests__/bridge.spec.d.ts +0 -1
  92. package/build/esm/__tests__/bridge.spec.js +0 -19
  93. package/build/esm/__tests__/bridge.spec.js.map +0 -1
  94. package/build/esm/__tests__/configuration.spec.d.ts +0 -1
  95. package/build/esm/__tests__/configuration.spec.js +0 -129
  96. package/build/esm/__tests__/configuration.spec.js.map +0 -1
  97. package/build/esm/__tests__/index.spec.d.ts +0 -1
  98. package/build/esm/__tests__/index.spec.js +0 -7
  99. package/build/esm/__tests__/index.spec.js.map +0 -1
  100. package/build/esm/__tests__/posthog.spec.d.ts +0 -1
  101. package/build/esm/__tests__/posthog.spec.js +0 -191
  102. package/build/esm/__tests__/posthog.spec.js.map +0 -1
  103. package/build/esm/bridge.d.ts +0 -50
  104. package/build/esm/bridge.js +0 -7
  105. package/build/esm/bridge.js.map +0 -1
  106. package/build/esm/configuration.d.ts +0 -3
  107. package/build/esm/configuration.js +0 -92
  108. package/build/esm/configuration.js.map +0 -1
  109. package/build/esm/index.d.ts +0 -5
  110. package/build/esm/index.js +0 -4
  111. package/build/esm/index.js.map +0 -1
  112. package/build/esm/make-pkg.d.ts +0 -1
  113. package/build/esm/make-pkg.js +0 -3
  114. package/build/esm/make-pkg.js.map +0 -1
  115. package/build/esm/middleware.d.ts +0 -41
  116. package/build/esm/middleware.js +0 -112
  117. package/build/esm/middleware.js.map +0 -1
  118. package/build/esm/posthog.d.ts +0 -228
  119. package/build/esm/posthog.js +0 -307
  120. package/build/esm/posthog.js.map +0 -1
  121. package/build/esm/utils.d.ts +0 -1
  122. package/build/esm/utils.js +0 -4
  123. package/build/esm/utils.js.map +0 -1
  124. package/build/esm/wrapper.d.ts +0 -22
  125. package/build/esm/wrapper.js +0 -112
  126. package/build/esm/wrapper.js.map +0 -1
  127. package/build/package.json +0 -3
  128. package/ios/RNPostHog/RNPostHog.h +0 -9
  129. package/ios/RNPostHog/RNPostHog.m +0 -128
  130. package/ios/RNPostHog.xcodeproj/project.pbxproj +0 -336
  131. package/ios/RNPostHog.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  132. package/src/__mocks__/bridge.ts +0 -12
  133. package/src/__tests__/bridge.spec.ts +0 -23
  134. package/src/__tests__/configuration.spec.ts +0 -79
  135. package/src/__tests__/index.spec.ts +0 -7
  136. package/src/__tests__/posthog.spec.ts +0 -108
  137. package/src/bridge.ts +0 -61
  138. package/src/configuration.ts +0 -61
  139. package/src/index.ts +0 -5
  140. package/src/make-pkg.ts +0 -3
  141. package/src/middleware.ts +0 -128
  142. package/src/modules.d.ts +0 -2
  143. package/src/posthog.ts +0 -305
  144. package/src/utils.ts +0 -3
  145. package/src/wrapper.ts +0 -61
@@ -1,112 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- return new (P || (P = Promise))(function (resolve, reject) {
3
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
4
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
5
- function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
6
- step((generator = generator.apply(thisArg, _arguments || [])).next());
7
- });
8
- };
9
- var __generator = (this && this.__generator) || function (thisArg, body) {
10
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
11
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
12
- function verb(n) { return function (v) { return step([n, v]); }; }
13
- function step(op) {
14
- if (f) throw new TypeError("Generator is already executing.");
15
- while (_) try {
16
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
17
- if (y = 0, t) op = [op[0] & 2, t.value];
18
- switch (op[0]) {
19
- case 0: case 1: t = op; break;
20
- case 4: _.label++; return { value: op[1], done: false };
21
- case 5: _.label++; y = op[1]; op = [0]; continue;
22
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
23
- default:
24
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
25
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
26
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
27
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
28
- if (t[2]) _.ops.pop();
29
- _.trys.pop(); continue;
30
- }
31
- op = body.call(thisArg, _);
32
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
33
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
34
- }
35
- };
36
- import bridge from './bridge';
37
- var NativeWrapper = /** @class */ (function () {
38
- function NativeWrapper(delegate, handler, queue) {
39
- if (queue === void 0) { queue = []; }
40
- this.delegate = delegate;
41
- this.handler = handler;
42
- this.queue = queue;
43
- }
44
- /**
45
- * Run a bridge method.
46
- * It first waits for `.setup()` or `.useNativeConfiguration()` to be
47
- * called and redirects exceptions to `handler`.
48
- * @param method Name of the method to call.
49
- * @param caller Function with the bridge function as first argument.
50
- */
51
- NativeWrapper.prototype.run = function (method, caller) {
52
- return __awaiter(this, void 0, void 0, function () {
53
- function run() {
54
- return __awaiter(this, void 0, void 0, function () {
55
- var err_1;
56
- return __generator(this, function (_a) {
57
- switch (_a.label) {
58
- case 0:
59
- _a.trys.push([0, 2, , 3]);
60
- return [4 /*yield*/, caller(bridge[method])];
61
- case 1:
62
- _a.sent();
63
- return [3 /*break*/, 3];
64
- case 2:
65
- err_1 = _a.sent();
66
- return [2 /*return*/, handler(err_1)];
67
- case 3: return [2 /*return*/];
68
- }
69
- });
70
- });
71
- }
72
- var _a, delegate, handler, queue;
73
- return __generator(this, function (_b) {
74
- switch (_b.label) {
75
- case 0:
76
- _a = this, delegate = _a.delegate, handler = _a.handler, queue = _a.queue;
77
- if (!delegate.ready) return [3 /*break*/, 2];
78
- return [4 /*yield*/, run()];
79
- case 1:
80
- _b.sent();
81
- return [3 /*break*/, 3];
82
- case 2:
83
- queue.push(run);
84
- _b.label = 3;
85
- case 3: return [2 /*return*/];
86
- }
87
- });
88
- });
89
- };
90
- /** Waits for `.setup()` or `.useNativeConfiguration()` to be called. */
91
- NativeWrapper.prototype.wait = function () {
92
- return __awaiter(this, void 0, void 0, function () {
93
- var _this = this;
94
- return __generator(this, function (_a) {
95
- if (this.delegate.ready) {
96
- return [2 /*return*/];
97
- }
98
- return [2 /*return*/, new Promise(function (resolve) { return _this.queue.push(resolve); })];
99
- });
100
- });
101
- };
102
- NativeWrapper.prototype.ready = function () {
103
- var _a = this, delegate = _a.delegate, queue = _a.queue;
104
- delegate.ready = true;
105
- while (queue.length) {
106
- queue.shift()();
107
- }
108
- };
109
- return NativeWrapper;
110
- }());
111
- export { NativeWrapper };
112
- //# sourceMappingURL=wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wrapper.js","sourceRoot":"","sources":["../../src/wrapper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,MAAkB,MAAM,UAAU,CAAA;AAOzC;IACC,uBACkB,QAAW,EACX,OAAqB,EACrB,KAA6B;QAA7B,sBAAA,EAAA,UAA6B;QAF7B,aAAQ,GAAR,QAAQ,CAAG;QACX,YAAO,GAAP,OAAO,CAAc;QACrB,UAAK,GAAL,KAAK,CAAwB;IAC5C,CAAC;IAEJ;;;;;;OAMG;IACU,2BAAG,GAAhB,UACC,MAAS,EACT,MAAwC;;YAUxC,SAAe,GAAG;;;;;;;gCAEhB,qBAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAA;;gCAA5B,SAA4B,CAAA;;;;gCAE5B,sBAAO,OAAO,CAAC,KAAG,CAAC,EAAA;;;;;aAEpB;;;;;wBAdK,KAA+B,IAAI,EAAjC,QAAQ,cAAA,EAAE,OAAO,aAAA,EAAE,KAAK,WAAA,CAAS;6BAErC,QAAQ,CAAC,KAAK,EAAd,wBAAc;wBACjB,qBAAM,GAAG,EAAE,EAAA;;wBAAX,SAAW,CAAA;;;wBAEX,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;;;;;;KAUhB;IAED,wEAAwE;IAC3D,4BAAI,GAAjB;;;;gBACC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;oBACxB,sBAAM;iBACN;gBAED,sBAAO,IAAI,OAAO,CAAC,UAAA,OAAO,IAAI,OAAA,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAxB,CAAwB,CAAC,EAAA;;;KACvD;IAEM,6BAAK,GAAZ;QACO,IAAA,SAA0B,EAAxB,sBAAQ,EAAE,gBAAc,CAAA;QAEhC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAA;QAErB,OAAO,KAAK,CAAC,MAAM,EAAE;YACpB,KAAK,CAAC,KAAK,EAAG,EAAE,CAAA;SAChB;IACF,CAAC;IACF,oBAAC;AAAD,CAAC,AArDD,IAqDC"}
@@ -1,3 +0,0 @@
1
- {
2
- "version": "1.1.4"
3
- }
@@ -1,9 +0,0 @@
1
- #if __has_include("RCTBridgeModule.h")
2
- #import "RCTBridgeModule.h"
3
- #else
4
- #import <React/RCTBridgeModule.h>
5
- #endif
6
-
7
- @interface RNPostHog: NSObject<RCTBridgeModule>
8
-
9
- @end
@@ -1,128 +0,0 @@
1
- #import "RNPostHog.h"
2
-
3
- #import <PostHog/PHGPostHog.h>
4
- #import <React/RCTBridge.h>
5
-
6
- @implementation RNPostHog
7
-
8
- +(void)initialize {
9
- [super initialize];
10
- }
11
-
12
- RCT_EXPORT_MODULE()
13
-
14
- @synthesize bridge = _bridge;
15
-
16
- static NSString* singletonJsonConfig = nil;
17
-
18
- RCT_EXPORT_METHOD(
19
- setup:(NSDictionary*)options
20
- :(RCTPromiseResolveBlock)resolver
21
- :(RCTPromiseRejectBlock)rejecter
22
- ) {
23
- NSString* json = options[@"json"];
24
-
25
- if(singletonJsonConfig != nil) {
26
- if([json isEqualToString:singletonJsonConfig]) {
27
- return resolver(nil);
28
- }
29
- else {
30
- #if DEBUG
31
- return resolver(self);
32
- #else
33
- return rejecter(@"E_POSTHOG_RECONFIGURED", @"PostHog Client was allocated multiple times, please check your environment.", nil);
34
- #endif
35
- }
36
- }
37
-
38
- PHGPostHogConfiguration* config = [PHGPostHogConfiguration configurationWithApiKey:options[@"apiKey"] host:options[@"host"]];
39
-
40
- config.recordScreenViews = [options[@"recordScreenViews"] boolValue];
41
- config.captureApplicationLifecycleEvents = [options[@"captureApplicationLifecycleEvents"] boolValue];
42
- config.captureDeepLinks = [options[@"captureDeepLinks"] boolValue];
43
- config.flushAt = [options[@"flushAt"] integerValue];
44
- config.flushInterval = [options[@"flushInterval"] integerValue];
45
-
46
- config.capturePushNotifications = [options[@"ios"][@"capturePushNotifications"] boolValue];
47
- config.captureInAppPurchases = [options[@"ios"][@"captureInAppPurchases"] boolValue];
48
- config.shouldUseBluetooth = [options[@"ios"][@"shouldUseBluetooth"] boolValue];
49
- config.shouldUseLocationServices = [options[@"ios"][@"shouldUseLocationServices"] boolValue];
50
- config.maxQueueSize = [options[@"ios"][@"maxQueueSize"] integerValue];
51
-
52
- config.libraryName = options[@"context"][@"$lib"];
53
- config.libraryVersion = options[@"context"][@"$lib_version"];
54
-
55
- [PHGPostHog debug:[options[@"debug"] boolValue]];
56
-
57
- @try {
58
- [PHGPostHog setupWithConfiguration:config];
59
- }
60
- @catch(NSError* error) {
61
- return rejecter(@"E_POSTHOG_ERROR", @"Unexpected native Analtyics error", error);
62
- }
63
-
64
- // On iOS we use method swizzling to intercept lifecycle events
65
- // However, React-Native calls our library after applicationDidFinishLaunchingWithOptions: is called
66
- // We fix this by manually calling this method at setup-time
67
- if(config.captureApplicationLifecycleEvents) {
68
- SEL selector = @selector(_applicationDidFinishLaunchingWithOptions:);
69
-
70
- if ([PHGPostHog.sharedPostHog respondsToSelector:selector]) {
71
- [PHGPostHog.sharedPostHog performSelector:selector
72
- withObject:_bridge.launchOptions];
73
- }
74
- }
75
-
76
- singletonJsonConfig = json;
77
- return resolver(nil);
78
- }
79
-
80
- - (NSDictionary*)withContextAndIntegrations :(NSDictionary*)context :(NSDictionary*)integrations {
81
- return @{ @"context": context, @"integrations": integrations ?: @{}};
82
- }
83
-
84
-
85
- RCT_EXPORT_METHOD(capture:(NSString*)event :(NSDictionary*)properties) {
86
- [PHGPostHog.sharedPostHog capture:event
87
- properties:properties];
88
- }
89
-
90
- RCT_EXPORT_METHOD(screen:(NSString*)screenTitle :(NSDictionary*)properties) {
91
- [PHGPostHog.sharedPostHog screen:screenTitle
92
- properties:properties];
93
- }
94
-
95
- RCT_EXPORT_METHOD(identify:(NSString*)distinctId :(NSDictionary*)properties) {
96
- [PHGPostHog.sharedPostHog identify:distinctId
97
- properties:properties];
98
- }
99
-
100
- RCT_EXPORT_METHOD(alias:(NSString*)alias) {
101
- [PHGPostHog.sharedPostHog alias:alias];
102
- }
103
-
104
- RCT_EXPORT_METHOD(reset) {
105
- [PHGPostHog.sharedPostHog reset];
106
- }
107
-
108
- RCT_EXPORT_METHOD(flush) {
109
- [PHGPostHog.sharedPostHog flush];
110
- }
111
-
112
- RCT_EXPORT_METHOD(enable) {
113
- [PHGPostHog.sharedPostHog enable];
114
- }
115
-
116
- RCT_EXPORT_METHOD(disable) {
117
- [PHGPostHog.sharedPostHog disable];
118
- }
119
-
120
- RCT_EXPORT_METHOD(
121
- getAnonymousId:(RCTPromiseResolveBlock)resolver
122
- :(RCTPromiseRejectBlock)rejecter)
123
- {
124
- NSString *anonymousId = [PHGPostHog.sharedPostHog getAnonymousId];
125
- resolver(anonymousId);
126
- }
127
-
128
- @end
@@ -1,336 +0,0 @@
1
- // !$*UTF8*$!
2
- {
3
- archiveVersion = 1;
4
- classes = {
5
- };
6
- objectVersion = 46;
7
- objects = {
8
-
9
- /* Begin PBXBuildFile section */
10
- 4B5DE17A21B9DF4B00BF8844 /* PostHog.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4B5DE17421B9DF3900BF8844 /* PostHog.framework */; };
11
- B3E7B58A1CC2AC0600A0062D /* RNPostHog/RNPostHog.m in Sources */ = {isa = PBXBuildFile; fileRef = B3E7B5891CC2AC0600A0062D /* RNPostHog/RNPostHog.m */; };
12
- /* End PBXBuildFile section */
13
-
14
- /* Begin PBXContainerItemProxy section */
15
- 4B5DE17321B9DF3900BF8844 /* PBXContainerItemProxy */ = {
16
- isa = PBXContainerItemProxy;
17
- containerPortal = 4B5DE16E21B9DF3900BF8844 /* PostHog.xcodeproj */;
18
- proxyType = 2;
19
- remoteGlobalIDString = EADEB85B1DECD080005322DA;
20
- remoteInfo = PostHog;
21
- };
22
- 4B5DE17521B9DF3900BF8844 /* PBXContainerItemProxy */ = {
23
- isa = PBXContainerItemProxy;
24
- containerPortal = 4B5DE16E21B9DF3900BF8844 /* PostHog.xcodeproj */;
25
- proxyType = 2;
26
- remoteGlobalIDString = EADEB86A1DECD0EF005322DA;
27
- remoteInfo = PostHogTests;
28
- };
29
- 4B5DE17721B9DF4700BF8844 /* PBXContainerItemProxy */ = {
30
- isa = PBXContainerItemProxy;
31
- containerPortal = 4B5DE16E21B9DF3900BF8844 /* PostHog.xcodeproj */;
32
- proxyType = 1;
33
- remoteGlobalIDString = EADEB85A1DECD080005322DA;
34
- remoteInfo = PostHog;
35
- };
36
- /* End PBXContainerItemProxy section */
37
-
38
- /* Begin PBXCopyFilesBuildPhase section */
39
- 58B511D91A9E6C8500147676 /* CopyFiles */ = {
40
- isa = PBXCopyFilesBuildPhase;
41
- buildActionMask = 2147483647;
42
- dstPath = "include/$(PRODUCT_NAME)";
43
- dstSubfolderSpec = 16;
44
- files = (
45
- );
46
- runOnlyForDeploymentPostprocessing = 0;
47
- };
48
- /* End PBXCopyFilesBuildPhase section */
49
-
50
- /* Begin PBXFileReference section */
51
- 134814201AA4EA6300B7C361 /* libRNPostHog.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libRNPostHog.a; sourceTree = BUILT_PRODUCTS_DIR; };
52
- 4B5DE16E21B9DF3900BF8844 /* PostHog.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = PostHog.xcodeproj; path = "../../posthog-ios/PostHog.xcodeproj"; sourceTree = "<group>"; };
53
- B3E7B5881CC2AC0600A0062D /* RNPostHog/RNPostHog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RNPostHog/RNPostHog.h; sourceTree = "<group>"; };
54
- B3E7B5891CC2AC0600A0062D /* RNPostHog/RNPostHog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RNPostHog/RNPostHog.m; sourceTree = "<group>"; };
55
- /* End PBXFileReference section */
56
-
57
- /* Begin PBXFrameworksBuildPhase section */
58
- 58B511D81A9E6C8500147676 /* Frameworks */ = {
59
- isa = PBXFrameworksBuildPhase;
60
- buildActionMask = 2147483647;
61
- files = (
62
- 4B5DE17A21B9DF4B00BF8844 /* PostHog.framework in Frameworks */,
63
- );
64
- runOnlyForDeploymentPostprocessing = 0;
65
- };
66
- /* End PBXFrameworksBuildPhase section */
67
-
68
- /* Begin PBXGroup section */
69
- 134814211AA4EA7D00B7C361 /* Products */ = {
70
- isa = PBXGroup;
71
- children = (
72
- 134814201AA4EA6300B7C361 /* libRNPostHog.a */,
73
- );
74
- name = Products;
75
- sourceTree = "<group>";
76
- };
77
- 4B5DE16F21B9DF3900BF8844 /* Products */ = {
78
- isa = PBXGroup;
79
- children = (
80
- 4B5DE17421B9DF3900BF8844 /* PostHog.framework */,
81
- 4B5DE17621B9DF3900BF8844 /* PostHogTests.xctest */,
82
- );
83
- name = Products;
84
- sourceTree = "<group>";
85
- };
86
- 4B5DE17921B9DF4B00BF8844 /* Frameworks */ = {
87
- isa = PBXGroup;
88
- children = (
89
- );
90
- name = Frameworks;
91
- sourceTree = "<group>";
92
- };
93
- 58B511D21A9E6C8500147676 = {
94
- isa = PBXGroup;
95
- children = (
96
- 4B5DE16E21B9DF3900BF8844 /* PostHog.xcodeproj */,
97
- B3E7B5881CC2AC0600A0062D /* RNPostHog/RNPostHog.h */,
98
- B3E7B5891CC2AC0600A0062D /* RNPostHog/RNPostHog.m */,
99
- 134814211AA4EA7D00B7C361 /* Products */,
100
- 4B5DE17921B9DF4B00BF8844 /* Frameworks */,
101
- );
102
- sourceTree = "<group>";
103
- };
104
- /* End PBXGroup section */
105
-
106
- /* Begin PBXNativeTarget section */
107
- 58B511DA1A9E6C8500147676 /* RNPostHog */ = {
108
- isa = PBXNativeTarget;
109
- buildConfigurationList = 58B511EF1A9E6C8500147676 /* Build configuration list for PBXNativeTarget "RNPostHog" */;
110
- buildPhases = (
111
- 58B511D71A9E6C8500147676 /* Sources */,
112
- 58B511D81A9E6C8500147676 /* Frameworks */,
113
- 58B511D91A9E6C8500147676 /* CopyFiles */,
114
- );
115
- buildRules = (
116
- );
117
- dependencies = (
118
- 4B5DE17821B9DF4700BF8844 /* PBXTargetDependency */,
119
- );
120
- name = RNPostHog;
121
- productName = RCTDataManager;
122
- productReference = 134814201AA4EA6300B7C361 /* libRNPostHog.a */;
123
- productType = "com.apple.product-type.library.static";
124
- };
125
- /* End PBXNativeTarget section */
126
-
127
- /* Begin PBXProject section */
128
- 58B511D31A9E6C8500147676 /* Project object */ = {
129
- isa = PBXProject;
130
- attributes = {
131
- LastUpgradeCheck = 0830;
132
- ORGANIZATIONNAME = Facebook;
133
- TargetAttributes = {
134
- 58B511DA1A9E6C8500147676 = {
135
- CreatedOnToolsVersion = 6.1.1;
136
- };
137
- };
138
- };
139
- buildConfigurationList = 58B511D61A9E6C8500147676 /* Build configuration list for PBXProject "RNPostHog" */;
140
- compatibilityVersion = "Xcode 3.2";
141
- developmentRegion = English;
142
- hasScannedForEncodings = 0;
143
- knownRegions = (
144
- en,
145
- );
146
- mainGroup = 58B511D21A9E6C8500147676;
147
- productRefGroup = 58B511D21A9E6C8500147676;
148
- projectDirPath = "";
149
- projectReferences = (
150
- {
151
- ProductGroup = 4B5DE16F21B9DF3900BF8844 /* Products */;
152
- ProjectRef = 4B5DE16E21B9DF3900BF8844 /* PostHog.xcodeproj */;
153
- },
154
- );
155
- projectRoot = "";
156
- targets = (
157
- 58B511DA1A9E6C8500147676 /* RNPostHog */,
158
- );
159
- };
160
- /* End PBXProject section */
161
-
162
- /* Begin PBXReferenceProxy section */
163
- 4B5DE17421B9DF3900BF8844 /* PostHog.framework */ = {
164
- isa = PBXReferenceProxy;
165
- fileType = wrapper.framework;
166
- path = PostHog.framework;
167
- remoteRef = 4B5DE17321B9DF3900BF8844 /* PBXContainerItemProxy */;
168
- sourceTree = BUILT_PRODUCTS_DIR;
169
- };
170
- 4B5DE17621B9DF3900BF8844 /* PostHogTests.xctest */ = {
171
- isa = PBXReferenceProxy;
172
- fileType = wrapper.cfbundle;
173
- path = PostHogTests.xctest;
174
- remoteRef = 4B5DE17521B9DF3900BF8844 /* PBXContainerItemProxy */;
175
- sourceTree = BUILT_PRODUCTS_DIR;
176
- };
177
- /* End PBXReferenceProxy section */
178
-
179
- /* Begin PBXSourcesBuildPhase section */
180
- 58B511D71A9E6C8500147676 /* Sources */ = {
181
- isa = PBXSourcesBuildPhase;
182
- buildActionMask = 2147483647;
183
- files = (
184
- B3E7B58A1CC2AC0600A0062D /* RNPostHog/RNPostHog.m in Sources */,
185
- );
186
- runOnlyForDeploymentPostprocessing = 0;
187
- };
188
- /* End PBXSourcesBuildPhase section */
189
-
190
- /* Begin PBXTargetDependency section */
191
- 4B5DE17821B9DF4700BF8844 /* PBXTargetDependency */ = {
192
- isa = PBXTargetDependency;
193
- name = PostHog;
194
- targetProxy = 4B5DE17721B9DF4700BF8844 /* PBXContainerItemProxy */;
195
- };
196
- /* End PBXTargetDependency section */
197
-
198
- /* Begin XCBuildConfiguration section */
199
- 58B511ED1A9E6C8500147676 /* Debug */ = {
200
- isa = XCBuildConfiguration;
201
- buildSettings = {
202
- ALWAYS_SEARCH_USER_PATHS = NO;
203
- CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
204
- CLANG_CXX_LIBRARY = "libc++";
205
- CLANG_ENABLE_MODULES = YES;
206
- CLANG_ENABLE_OBJC_ARC = YES;
207
- CLANG_WARN_BOOL_CONVERSION = YES;
208
- CLANG_WARN_CONSTANT_CONVERSION = YES;
209
- CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
210
- CLANG_WARN_EMPTY_BODY = YES;
211
- CLANG_WARN_ENUM_CONVERSION = YES;
212
- CLANG_WARN_INFINITE_RECURSION = YES;
213
- CLANG_WARN_INT_CONVERSION = YES;
214
- CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
215
- CLANG_WARN_SUSPICIOUS_MOVE = YES;
216
- CLANG_WARN_UNREACHABLE_CODE = YES;
217
- CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
218
- COPY_PHASE_STRIP = NO;
219
- ENABLE_STRICT_OBJC_MSGSEND = YES;
220
- ENABLE_TESTABILITY = YES;
221
- GCC_C_LANGUAGE_STANDARD = gnu99;
222
- GCC_DYNAMIC_NO_PIC = NO;
223
- GCC_NO_COMMON_BLOCKS = YES;
224
- GCC_OPTIMIZATION_LEVEL = 0;
225
- GCC_PREPROCESSOR_DEFINITIONS = (
226
- "DEBUG=1",
227
- "$(inherited)",
228
- );
229
- GCC_SYMBOLS_PRIVATE_EXTERN = NO;
230
- GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
231
- GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
232
- GCC_WARN_UNDECLARED_SELECTOR = YES;
233
- GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
234
- GCC_WARN_UNUSED_FUNCTION = YES;
235
- GCC_WARN_UNUSED_VARIABLE = YES;
236
- IPHONEOS_DEPLOYMENT_TARGET = 8.0;
237
- MTL_ENABLE_DEBUG_INFO = YES;
238
- ONLY_ACTIVE_ARCH = YES;
239
- SDKROOT = iphoneos;
240
- };
241
- name = Debug;
242
- };
243
- 58B511EE1A9E6C8500147676 /* Release */ = {
244
- isa = XCBuildConfiguration;
245
- buildSettings = {
246
- ALWAYS_SEARCH_USER_PATHS = NO;
247
- CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
248
- CLANG_CXX_LIBRARY = "libc++";
249
- CLANG_ENABLE_MODULES = YES;
250
- CLANG_ENABLE_OBJC_ARC = YES;
251
- CLANG_WARN_BOOL_CONVERSION = YES;
252
- CLANG_WARN_CONSTANT_CONVERSION = YES;
253
- CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
254
- CLANG_WARN_EMPTY_BODY = YES;
255
- CLANG_WARN_ENUM_CONVERSION = YES;
256
- CLANG_WARN_INFINITE_RECURSION = YES;
257
- CLANG_WARN_INT_CONVERSION = YES;
258
- CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
259
- CLANG_WARN_SUSPICIOUS_MOVE = YES;
260
- CLANG_WARN_UNREACHABLE_CODE = YES;
261
- CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
262
- COPY_PHASE_STRIP = YES;
263
- ENABLE_NS_ASSERTIONS = NO;
264
- ENABLE_STRICT_OBJC_MSGSEND = YES;
265
- GCC_C_LANGUAGE_STANDARD = gnu99;
266
- GCC_NO_COMMON_BLOCKS = YES;
267
- GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
268
- GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
269
- GCC_WARN_UNDECLARED_SELECTOR = YES;
270
- GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
271
- GCC_WARN_UNUSED_FUNCTION = YES;
272
- GCC_WARN_UNUSED_VARIABLE = YES;
273
- IPHONEOS_DEPLOYMENT_TARGET = 8.0;
274
- MTL_ENABLE_DEBUG_INFO = NO;
275
- SDKROOT = iphoneos;
276
- VALIDATE_PRODUCT = YES;
277
- };
278
- name = Release;
279
- };
280
- 58B511F01A9E6C8500147676 /* Debug */ = {
281
- isa = XCBuildConfiguration;
282
- buildSettings = {
283
- HEADER_SEARCH_PATHS = (
284
- "$(inherited)",
285
- /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
286
- "$(SRCROOT)/../../../React/**",
287
- "$(SRCROOT)/../../react-native/React/**",
288
- );
289
- LIBRARY_SEARCH_PATHS = "$(inherited)";
290
- OTHER_LDFLAGS = "-ObjC";
291
- PRODUCT_NAME = RNPostHog;
292
- SKIP_INSTALL = YES;
293
- };
294
- name = Debug;
295
- };
296
- 58B511F11A9E6C8500147676 /* Release */ = {
297
- isa = XCBuildConfiguration;
298
- buildSettings = {
299
- HEADER_SEARCH_PATHS = (
300
- "$(inherited)",
301
- /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
302
- "$(SRCROOT)/../../../React/**",
303
- "$(SRCROOT)/../../react-native/React/**",
304
- );
305
- LIBRARY_SEARCH_PATHS = "$(inherited)";
306
- OTHER_LDFLAGS = "-ObjC";
307
- PRODUCT_NAME = RNPostHog;
308
- SKIP_INSTALL = YES;
309
- };
310
- name = Release;
311
- };
312
- /* End XCBuildConfiguration section */
313
-
314
- /* Begin XCConfigurationList section */
315
- 58B511D61A9E6C8500147676 /* Build configuration list for PBXProject "RNPostHog" */ = {
316
- isa = XCConfigurationList;
317
- buildConfigurations = (
318
- 58B511ED1A9E6C8500147676 /* Debug */,
319
- 58B511EE1A9E6C8500147676 /* Release */,
320
- );
321
- defaultConfigurationIsVisible = 0;
322
- defaultConfigurationName = Release;
323
- };
324
- 58B511EF1A9E6C8500147676 /* Build configuration list for PBXNativeTarget "RNPostHog" */ = {
325
- isa = XCConfigurationList;
326
- buildConfigurations = (
327
- 58B511F01A9E6C8500147676 /* Debug */,
328
- 58B511F11A9E6C8500147676 /* Release */,
329
- );
330
- defaultConfigurationIsVisible = 0;
331
- defaultConfigurationName = Release;
332
- };
333
- /* End XCConfigurationList section */
334
- };
335
- rootObject = 58B511D31A9E6C8500147676 /* Project object */;
336
- }
@@ -1,7 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <Workspace
3
- version = "1.0">
4
- <FileRef
5
- location = "self:">
6
- </FileRef>
7
- </Workspace>
@@ -1,12 +0,0 @@
1
- export default {
2
- alias: jest.fn(),
3
- capture: jest.fn(),
4
- disable: jest.fn(),
5
- enable: jest.fn(),
6
- flush: jest.fn(),
7
- getAnonymousId: jest.fn(),
8
- identify: jest.fn(),
9
- reset: jest.fn(),
10
- screen: jest.fn(),
11
- setup: jest.fn()
12
- }
@@ -1,23 +0,0 @@
1
- const forceRequire = (): typeof import('../bridge') => {
2
- jest.resetModules()
3
-
4
- return require.requireActual('../bridge')
5
- }
6
-
7
- it('should throw an error if the core native module is not linked', () => {
8
- jest.setMock('react-native', {
9
- NativeModules: {}
10
- })
11
-
12
- expect(forceRequire).toThrow(/Failed to load PostHog native module./)
13
- })
14
-
15
- it('should export the core native module', () => {
16
- const RNPostHog = {}
17
-
18
- jest.setMock('react-native', {
19
- NativeModules: { RNPostHog }
20
- })
21
-
22
- expect(forceRequire().default).toBe(RNPostHog)
23
- })