@posthog/core 1.0.2 → 1.1.0

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 (111) hide show
  1. package/dist/error-tracking/chunk-ids.d.ts +5 -0
  2. package/dist/error-tracking/chunk-ids.d.ts.map +1 -0
  3. package/dist/error-tracking/chunk-ids.js +68 -0
  4. package/dist/error-tracking/chunk-ids.mjs +34 -0
  5. package/dist/error-tracking/coercers/dom-exception-coercer.d.ts +10 -0
  6. package/dist/error-tracking/coercers/dom-exception-coercer.d.ts.map +1 -0
  7. package/dist/error-tracking/coercers/dom-exception-coercer.js +65 -0
  8. package/dist/error-tracking/coercers/dom-exception-coercer.mjs +31 -0
  9. package/dist/error-tracking/coercers/error-coercer.d.ts +9 -0
  10. package/dist/error-tracking/coercers/error-coercer.d.ts.map +1 -0
  11. package/dist/error-tracking/coercers/error-coercer.js +61 -0
  12. package/dist/error-tracking/coercers/error-coercer.mjs +27 -0
  13. package/dist/error-tracking/coercers/error-event-coercer.d.ts +7 -0
  14. package/dist/error-tracking/coercers/error-event-coercer.d.ts.map +1 -0
  15. package/dist/error-tracking/coercers/error-event-coercer.js +53 -0
  16. package/dist/error-tracking/coercers/error-event-coercer.mjs +19 -0
  17. package/dist/error-tracking/coercers/event-coercer.d.ts +6 -0
  18. package/dist/error-tracking/coercers/event-coercer.d.ts.map +1 -0
  19. package/dist/error-tracking/coercers/event-coercer.js +52 -0
  20. package/dist/error-tracking/coercers/event-coercer.mjs +18 -0
  21. package/dist/error-tracking/coercers/index.d.ts +9 -0
  22. package/dist/error-tracking/coercers/index.d.ts.map +1 -0
  23. package/dist/error-tracking/coercers/index.js +123 -0
  24. package/dist/error-tracking/coercers/index.mjs +8 -0
  25. package/dist/error-tracking/coercers/object-coercer.d.ts +14 -0
  26. package/dist/error-tracking/coercers/object-coercer.d.ts.map +1 -0
  27. package/dist/error-tracking/coercers/object-coercer.js +86 -0
  28. package/dist/error-tracking/coercers/object-coercer.mjs +52 -0
  29. package/dist/error-tracking/coercers/primitive-coercer.d.ts +7 -0
  30. package/dist/error-tracking/coercers/primitive-coercer.d.ts.map +1 -0
  31. package/dist/error-tracking/coercers/primitive-coercer.js +50 -0
  32. package/dist/error-tracking/coercers/primitive-coercer.mjs +16 -0
  33. package/dist/error-tracking/coercers/promise-rejection-event.d.ts +7 -0
  34. package/dist/error-tracking/coercers/promise-rejection-event.d.ts.map +1 -0
  35. package/dist/error-tracking/coercers/promise-rejection-event.js +60 -0
  36. package/dist/error-tracking/coercers/promise-rejection-event.mjs +26 -0
  37. package/dist/error-tracking/coercers/string-coercer.d.ts +7 -0
  38. package/dist/error-tracking/coercers/string-coercer.d.ts.map +1 -0
  39. package/dist/error-tracking/coercers/string-coercer.js +64 -0
  40. package/dist/error-tracking/coercers/string-coercer.mjs +30 -0
  41. package/dist/error-tracking/coercers/utils.d.ts +8 -0
  42. package/dist/error-tracking/coercers/utils.d.ts.map +1 -0
  43. package/dist/error-tracking/coercers/utils.js +57 -0
  44. package/dist/error-tracking/coercers/utils.mjs +20 -0
  45. package/dist/error-tracking/error-properties-builder.d.ts +18 -0
  46. package/dist/error-tracking/error-properties-builder.d.ts.map +1 -0
  47. package/dist/error-tracking/error-properties-builder.js +156 -0
  48. package/dist/error-tracking/error-properties-builder.mjs +122 -0
  49. package/dist/error-tracking/index.d.ts +6 -0
  50. package/dist/error-tracking/index.d.ts.map +1 -0
  51. package/dist/error-tracking/index.js +87 -0
  52. package/dist/error-tracking/index.mjs +4 -0
  53. package/dist/error-tracking/parsers/base.d.ts +9 -0
  54. package/dist/error-tracking/parsers/base.d.ts.map +1 -0
  55. package/dist/error-tracking/parsers/base.js +71 -0
  56. package/dist/error-tracking/parsers/base.mjs +19 -0
  57. package/dist/error-tracking/parsers/chrome.d.ts +3 -0
  58. package/dist/error-tracking/parsers/chrome.d.ts.map +1 -0
  59. package/dist/error-tracking/parsers/chrome.js +61 -0
  60. package/dist/error-tracking/parsers/chrome.mjs +27 -0
  61. package/dist/error-tracking/parsers/gecko.d.ts +3 -0
  62. package/dist/error-tracking/parsers/gecko.d.ts.map +1 -0
  63. package/dist/error-tracking/parsers/gecko.js +58 -0
  64. package/dist/error-tracking/parsers/gecko.mjs +24 -0
  65. package/dist/error-tracking/parsers/index.d.ts +9 -0
  66. package/dist/error-tracking/parsers/index.d.ts.map +1 -0
  67. package/dist/error-tracking/parsers/index.js +101 -0
  68. package/dist/error-tracking/parsers/index.mjs +46 -0
  69. package/dist/error-tracking/parsers/node.d.ts +3 -0
  70. package/dist/error-tracking/parsers/node.d.ts.map +1 -0
  71. package/dist/error-tracking/parsers/node.js +101 -0
  72. package/dist/error-tracking/parsers/node.mjs +67 -0
  73. package/dist/error-tracking/parsers/opera.d.ts +4 -0
  74. package/dist/error-tracking/parsers/opera.d.ts.map +1 -0
  75. package/dist/error-tracking/parsers/opera.js +49 -0
  76. package/dist/error-tracking/parsers/opera.mjs +12 -0
  77. package/dist/error-tracking/parsers/react-native.d.ts +1 -0
  78. package/dist/error-tracking/parsers/react-native.d.ts.map +1 -0
  79. package/dist/error-tracking/parsers/react-native.js +5 -0
  80. package/dist/error-tracking/parsers/react-native.mjs +0 -0
  81. package/dist/error-tracking/parsers/safari.d.ts +22 -0
  82. package/dist/error-tracking/parsers/safari.d.ts.map +1 -0
  83. package/dist/error-tracking/parsers/safari.js +47 -0
  84. package/dist/error-tracking/parsers/safari.mjs +13 -0
  85. package/dist/error-tracking/parsers/winjs.d.ts +3 -0
  86. package/dist/error-tracking/parsers/winjs.d.ts.map +1 -0
  87. package/dist/error-tracking/parsers/winjs.js +41 -0
  88. package/dist/error-tracking/parsers/winjs.mjs +7 -0
  89. package/dist/error-tracking/types.d.ts +87 -0
  90. package/dist/error-tracking/types.d.ts.map +1 -0
  91. package/dist/error-tracking/types.js +43 -0
  92. package/dist/error-tracking/types.mjs +9 -0
  93. package/dist/error-tracking/utils.d.ts +13 -0
  94. package/dist/error-tracking/utils.d.ts.map +1 -0
  95. package/dist/error-tracking/utils.js +57 -0
  96. package/dist/error-tracking/utils.mjs +23 -0
  97. package/dist/index.d.ts +121 -9
  98. package/dist/index.d.ts.map +1 -1
  99. package/dist/index.js +13 -4
  100. package/dist/index.mjs +5 -4
  101. package/dist/testing/test-utils.d.ts +2 -0
  102. package/dist/testing/test-utils.d.ts.map +1 -1
  103. package/dist/testing/test-utils.js +12 -0
  104. package/dist/testing/test-utils.mjs +10 -1
  105. package/dist/utils/bucketed-rate-limiter.d.ts.map +1 -1
  106. package/dist/utils/number-utils.d.ts.map +1 -1
  107. package/dist/utils/type-utils.d.ts +8 -1
  108. package/dist/utils/type-utils.d.ts.map +1 -1
  109. package/dist/utils/type-utils.js +61 -6
  110. package/dist/utils/type-utils.mjs +36 -2
  111. package/package.json +8 -3
@@ -26,4 +26,13 @@ const createImperativePromise = ()=>{
26
26
  const delay = (ms)=>new Promise((resolve)=>{
27
27
  setTimeout(resolve, ms);
28
28
  });
29
- export { createImperativePromise, delay, parseBody, wait, waitForPromises };
29
+ const createMockLogger = ()=>({
30
+ _log: jest.fn(),
31
+ info: jest.fn(),
32
+ warn: jest.fn(),
33
+ error: jest.fn(),
34
+ critical: jest.fn(),
35
+ uninitializedWarning: jest.fn(),
36
+ createLogger: createMockLogger
37
+ });
38
+ export { createImperativePromise, createMockLogger, delay, parseBody, wait, waitForPromises };
@@ -1 +1 @@
1
- {"version":3,"file":"bucketed-rate-limiter.d.ts","sourceRoot":"","sources":["../../src/utils/bucketed-rate-limiter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAG9B,qBAAa,mBAAmB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAUtD,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAT3B,OAAO,CAAC,WAAW,CAAA;IACnB,OAAO,CAAC,WAAW,CAAA;IACnB,OAAO,CAAC,eAAe,CAAA;IACvB,OAAO,CAAC,oBAAoB,CAAC,CAAkB;IAE/C,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,eAAe,CAA4B;gBAGhC,QAAQ,EAAE;QACzB,UAAU,EAAE,MAAM,CAAA;QAClB,UAAU,EAAE,MAAM,CAAA;QAClB,cAAc,EAAE,MAAM,CAAA;QACtB,OAAO,EAAE,MAAM,CAAA;QACf,oBAAoB,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAA;KACxC;IAqBH,OAAO,CAAC,cAAc,CAUrB;IAED,OAAO,CAAC,UAAU,CAEjB;IACD,OAAO,CAAC,UAAU,CAEjB;IAEM,gBAAgB,GAAI,KAAK,CAAC,aAiBhC;IAEM,IAAI;CAMZ"}
1
+ {"version":3,"file":"bucketed-rate-limiter.d.ts","sourceRoot":"","sources":["../../src/utils/bucketed-rate-limiter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC,qBAAa,mBAAmB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAUtD,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAT3B,OAAO,CAAC,WAAW,CAAA;IACnB,OAAO,CAAC,WAAW,CAAA;IACnB,OAAO,CAAC,eAAe,CAAA;IACvB,OAAO,CAAC,oBAAoB,CAAC,CAAkB;IAE/C,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,eAAe,CAA4B;gBAGhC,QAAQ,EAAE;QACzB,UAAU,EAAE,MAAM,CAAA;QAClB,UAAU,EAAE,MAAM,CAAA;QAClB,cAAc,EAAE,MAAM,CAAA;QACtB,OAAO,EAAE,MAAM,CAAA;QACf,oBAAoB,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAA;KACxC;IAqBH,OAAO,CAAC,cAAc,CAUrB;IAED,OAAO,CAAC,UAAU,CAEjB;IACD,OAAO,CAAC,UAAU,CAEjB;IAEM,gBAAgB,GAAI,KAAK,CAAC,aAiBhC;IAEM,IAAI;CAMZ"}
@@ -1 +1 @@
1
- {"version":3,"file":"number-utils.d.ts","sourceRoot":"","sources":["../../src/utils/number-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAG9B;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAkBrH"}
1
+ {"version":3,"file":"number-utils.d.ts","sourceRoot":"","sources":["../../src/utils/number-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAkBrH"}
@@ -14,8 +14,15 @@ export declare const isNumber: (x: unknown) => x is number;
14
14
  export declare const isBoolean: (x: unknown) => x is boolean;
15
15
  export declare const isFormData: (x: unknown) => x is FormData;
16
16
  export declare const isFile: (x: unknown) => x is File;
17
- export declare const isError: (x: unknown) => x is Error;
17
+ export declare const isPlainError: (x: unknown) => x is Error;
18
18
  export declare const isKnownUnsafeEditableEvent: (x: unknown) => x is KnownUnsafeEditableEvent;
19
+ export declare function isInstanceOf(candidate: unknown, base: any): boolean;
20
+ export declare function isPrimitive(value: unknown): boolean;
21
+ export declare function isBuiltin(candidate: unknown, className: string): boolean;
22
+ export declare function isError(candidate: unknown): candidate is Error;
23
+ export declare function isErrorEvent(event: unknown): boolean;
24
+ export declare function isEvent(candidate: unknown): candidate is Event;
25
+ export declare function isPlainObject(candidate: unknown): candidate is Record<string, unknown>;
19
26
  export declare const yesLikeValues: (string | number | boolean)[];
20
27
  export declare const isYesLike: (val: string | boolean | number) => boolean;
21
28
  export declare const noLikeValues: (string | number | boolean)[];
@@ -1 +1 @@
1
- {"version":3,"file":"type-utils.d.ts","sourceRoot":"","sources":["../../src/utils/type-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,wBAAwB,EAAE,MAAM,UAAU,CAAA;AAM7E,eAAO,MAAM,cAAc,6BAA0B,CAAA;AAGrD,eAAO,MAAM,OAAO,4BAIjB,CAAA;AAKH,eAAO,MAAM,UAAU,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAGhE,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GACR,CAAA;AAG/D,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAG5D,CAAA;AACD,eAAO,MAAM,aAAa,GAAI,GAAG,OAAO,YAUvC,CAAA;AACD,eAAO,MAAM,WAAW,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,SAAyB,CAAA;AAEvE,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAG1C,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,GAAG,OAAO,KAAG,OAA+C,CAAA;AAE1F,eAAO,MAAM,MAAM,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,IAGxC,CAAA;AAMD,eAAO,MAAM,SAAS,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,IAAI,GAAG,SAAwC,CAAA;AAE3F,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAG1C,CAAA;AACD,eAAO,MAAM,SAAS,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAG3C,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,QAG5C,CAAA;AAED,eAAO,MAAM,MAAM,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,IAGxC,CAAA;AAED,eAAO,MAAM,OAAO,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,KAEzC,CAAA;AAED,eAAO,MAAM,0BAA0B,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,wBAE5D,CAAA;AAED,eAAO,MAAM,aAAa,+BAAgC,CAAA;AAC1D,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,GAAG,OAAO,GAAG,MAAM,KAAG,OAAuC,CAAA;AAClG,eAAO,MAAM,YAAY,+BAAiC,CAAA;AAC1D,eAAO,MAAM,QAAQ,GAAI,KAAK,MAAM,GAAG,OAAO,GAAG,MAAM,KAAG,OAAsC,CAAA"}
1
+ {"version":3,"file":"type-utils.d.ts","sourceRoot":"","sources":["../../src/utils/type-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,wBAAwB,EAAE,MAAM,UAAU,CAAA;AAM7E,eAAO,MAAM,cAAc,6BAA0B,CAAA;AAGrD,eAAO,MAAM,OAAO,4BAIjB,CAAA;AAKH,eAAO,MAAM,UAAU,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAGhE,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GACR,CAAA;AAG/D,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAG5D,CAAA;AACD,eAAO,MAAM,aAAa,GAAI,GAAG,OAAO,YAUvC,CAAA;AACD,eAAO,MAAM,WAAW,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,SAAyB,CAAA;AAEvE,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAG1C,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,GAAG,OAAO,KAAG,OAA+C,CAAA;AAE1F,eAAO,MAAM,MAAM,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,IAGxC,CAAA;AAMD,eAAO,MAAM,SAAS,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,IAAI,GAAG,SAAwC,CAAA;AAE3F,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAG1C,CAAA;AACD,eAAO,MAAM,SAAS,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAG3C,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,QAG5C,CAAA;AAED,eAAO,MAAM,MAAM,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,IAGxC,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,KAE9C,CAAA;AAED,eAAO,MAAM,0BAA0B,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,wBAE5D,CAAA;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAMnE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEnD;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAExE;AAED,wBAAgB,OAAO,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS,IAAI,KAAK,CAW9D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEpD;AAED,wBAAgB,OAAO,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS,IAAI,KAAK,CAE9D;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEtF;AAED,eAAO,MAAM,aAAa,+BAAgC,CAAA;AAC1D,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,GAAG,OAAO,GAAG,MAAM,KAAG,OAAuC,CAAA;AAClG,eAAO,MAAM,YAAY,+BAAiC,CAAA;AAC1D,eAAO,MAAM,QAAQ,GAAI,KAAK,MAAM,GAAG,OAAO,GAAG,MAAM,KAAG,OAAsC,CAAA"}
@@ -25,26 +25,33 @@ var __webpack_exports__ = {};
25
25
  __webpack_require__.r(__webpack_exports__);
26
26
  __webpack_require__.d(__webpack_exports__, {
27
27
  isBoolean: ()=>isBoolean,
28
- isNoLike: ()=>isNoLike,
28
+ isBuiltin: ()=>isBuiltin,
29
29
  isEmptyString: ()=>isEmptyString,
30
+ isNoLike: ()=>isNoLike,
30
31
  isNull: ()=>isNull,
31
32
  isNullish: ()=>isNullish,
32
- isNumber: ()=>isNumber,
33
33
  isError: ()=>isError,
34
34
  isEmptyObject: ()=>isEmptyObject,
35
35
  hasOwnProperty: ()=>type_utils_hasOwnProperty,
36
+ isErrorEvent: ()=>isErrorEvent,
36
37
  isNativeFunction: ()=>isNativeFunction,
37
- isUndefined: ()=>isUndefined,
38
- yesLikeValues: ()=>yesLikeValues,
38
+ isNumber: ()=>isNumber,
39
+ isPlainError: ()=>isPlainError,
40
+ isPlainObject: ()=>isPlainObject,
41
+ isPrimitive: ()=>isPrimitive,
39
42
  isObject: ()=>isObject,
43
+ isUndefined: ()=>isUndefined,
40
44
  isFunction: ()=>isFunction,
41
45
  isArray: ()=>isArray,
42
46
  isKnownUnsafeEditableEvent: ()=>isKnownUnsafeEditableEvent,
43
47
  isString: ()=>isString,
44
48
  noLikeValues: ()=>noLikeValues,
49
+ yesLikeValues: ()=>yesLikeValues,
50
+ isEvent: ()=>isEvent,
45
51
  isFile: ()=>isFile,
46
52
  isYesLike: ()=>isYesLike,
47
- isFormData: ()=>isFormData
53
+ isFormData: ()=>isFormData,
54
+ isInstanceOf: ()=>isInstanceOf
48
55
  });
49
56
  const external_types_js_namespaceObject = require("../types.js");
50
57
  const external_string_utils_js_namespaceObject = require("./string-utils.js");
@@ -74,8 +81,42 @@ const isNumber = (x)=>'[object Number]' == type_utils_toString.call(x);
74
81
  const isBoolean = (x)=>'[object Boolean]' === type_utils_toString.call(x);
75
82
  const isFormData = (x)=>x instanceof FormData;
76
83
  const isFile = (x)=>x instanceof File;
77
- const isError = (x)=>x instanceof Error;
84
+ const isPlainError = (x)=>x instanceof Error;
78
85
  const isKnownUnsafeEditableEvent = (x)=>(0, external_string_utils_js_namespaceObject.includes)(external_types_js_namespaceObject.knownUnsafeEditableEvent, x);
86
+ function isInstanceOf(candidate, base) {
87
+ try {
88
+ return candidate instanceof base;
89
+ } catch (e) {
90
+ return false;
91
+ }
92
+ }
93
+ function isPrimitive(value) {
94
+ return null === value || 'object' != typeof value;
95
+ }
96
+ function isBuiltin(candidate, className) {
97
+ return Object.prototype.toString.call(candidate) === `[object ${className}]`;
98
+ }
99
+ function isError(candidate) {
100
+ switch(Object.prototype.toString.call(candidate)){
101
+ case '[object Error]':
102
+ case '[object Exception]':
103
+ case '[object DOMException]':
104
+ case '[object DOMError]':
105
+ case '[object WebAssembly.Exception]':
106
+ return true;
107
+ default:
108
+ return isInstanceOf(candidate, Error);
109
+ }
110
+ }
111
+ function isErrorEvent(event) {
112
+ return isBuiltin(event, 'ErrorEvent');
113
+ }
114
+ function isEvent(candidate) {
115
+ return !isUndefined(Event) && isInstanceOf(candidate, Event);
116
+ }
117
+ function isPlainObject(candidate) {
118
+ return isBuiltin(candidate, 'Object');
119
+ }
79
120
  const yesLikeValues = [
80
121
  true,
81
122
  'true',
@@ -95,12 +136,16 @@ const isNoLike = (val)=>(0, external_string_utils_js_namespaceObject.includes)(n
95
136
  exports.hasOwnProperty = __webpack_exports__.hasOwnProperty;
96
137
  exports.isArray = __webpack_exports__.isArray;
97
138
  exports.isBoolean = __webpack_exports__.isBoolean;
139
+ exports.isBuiltin = __webpack_exports__.isBuiltin;
98
140
  exports.isEmptyObject = __webpack_exports__.isEmptyObject;
99
141
  exports.isEmptyString = __webpack_exports__.isEmptyString;
100
142
  exports.isError = __webpack_exports__.isError;
143
+ exports.isErrorEvent = __webpack_exports__.isErrorEvent;
144
+ exports.isEvent = __webpack_exports__.isEvent;
101
145
  exports.isFile = __webpack_exports__.isFile;
102
146
  exports.isFormData = __webpack_exports__.isFormData;
103
147
  exports.isFunction = __webpack_exports__.isFunction;
148
+ exports.isInstanceOf = __webpack_exports__.isInstanceOf;
104
149
  exports.isKnownUnsafeEditableEvent = __webpack_exports__.isKnownUnsafeEditableEvent;
105
150
  exports.isNativeFunction = __webpack_exports__.isNativeFunction;
106
151
  exports.isNoLike = __webpack_exports__.isNoLike;
@@ -108,6 +153,9 @@ exports.isNull = __webpack_exports__.isNull;
108
153
  exports.isNullish = __webpack_exports__.isNullish;
109
154
  exports.isNumber = __webpack_exports__.isNumber;
110
155
  exports.isObject = __webpack_exports__.isObject;
156
+ exports.isPlainError = __webpack_exports__.isPlainError;
157
+ exports.isPlainObject = __webpack_exports__.isPlainObject;
158
+ exports.isPrimitive = __webpack_exports__.isPrimitive;
111
159
  exports.isString = __webpack_exports__.isString;
112
160
  exports.isUndefined = __webpack_exports__.isUndefined;
113
161
  exports.isYesLike = __webpack_exports__.isYesLike;
@@ -117,12 +165,16 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
117
165
  "hasOwnProperty",
118
166
  "isArray",
119
167
  "isBoolean",
168
+ "isBuiltin",
120
169
  "isEmptyObject",
121
170
  "isEmptyString",
122
171
  "isError",
172
+ "isErrorEvent",
173
+ "isEvent",
123
174
  "isFile",
124
175
  "isFormData",
125
176
  "isFunction",
177
+ "isInstanceOf",
126
178
  "isKnownUnsafeEditableEvent",
127
179
  "isNativeFunction",
128
180
  "isNoLike",
@@ -130,6 +182,9 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
130
182
  "isNullish",
131
183
  "isNumber",
132
184
  "isObject",
185
+ "isPlainError",
186
+ "isPlainObject",
187
+ "isPrimitive",
133
188
  "isString",
134
189
  "isUndefined",
135
190
  "isYesLike",
@@ -26,8 +26,42 @@ const isNumber = (x)=>'[object Number]' == type_utils_toString.call(x);
26
26
  const isBoolean = (x)=>'[object Boolean]' === type_utils_toString.call(x);
27
27
  const isFormData = (x)=>x instanceof FormData;
28
28
  const isFile = (x)=>x instanceof File;
29
- const isError = (x)=>x instanceof Error;
29
+ const isPlainError = (x)=>x instanceof Error;
30
30
  const isKnownUnsafeEditableEvent = (x)=>includes(knownUnsafeEditableEvent, x);
31
+ function isInstanceOf(candidate, base) {
32
+ try {
33
+ return candidate instanceof base;
34
+ } catch (e) {
35
+ return false;
36
+ }
37
+ }
38
+ function isPrimitive(value) {
39
+ return null === value || 'object' != typeof value;
40
+ }
41
+ function isBuiltin(candidate, className) {
42
+ return Object.prototype.toString.call(candidate) === `[object ${className}]`;
43
+ }
44
+ function isError(candidate) {
45
+ switch(Object.prototype.toString.call(candidate)){
46
+ case '[object Error]':
47
+ case '[object Exception]':
48
+ case '[object DOMException]':
49
+ case '[object DOMError]':
50
+ case '[object WebAssembly.Exception]':
51
+ return true;
52
+ default:
53
+ return isInstanceOf(candidate, Error);
54
+ }
55
+ }
56
+ function isErrorEvent(event) {
57
+ return isBuiltin(event, 'ErrorEvent');
58
+ }
59
+ function isEvent(candidate) {
60
+ return !isUndefined(Event) && isInstanceOf(candidate, Event);
61
+ }
62
+ function isPlainObject(candidate) {
63
+ return isBuiltin(candidate, 'Object');
64
+ }
31
65
  const yesLikeValues = [
32
66
  true,
33
67
  'true',
@@ -44,4 +78,4 @@ const noLikeValues = [
44
78
  'no'
45
79
  ];
46
80
  const isNoLike = (val)=>includes(noLikeValues, val);
47
- export { type_utils_hasOwnProperty as hasOwnProperty, isArray, isBoolean, isEmptyObject, isEmptyString, isError, isFile, isFormData, isFunction, isKnownUnsafeEditableEvent, isNativeFunction, isNoLike, isNull, isNullish, isNumber, isObject, isString, isUndefined, isYesLike, noLikeValues, yesLikeValues };
81
+ export { type_utils_hasOwnProperty as hasOwnProperty, isArray, isBoolean, isBuiltin, isEmptyObject, isEmptyString, isError, isErrorEvent, isEvent, isFile, isFormData, isFunction, isInstanceOf, isKnownUnsafeEditableEvent, isNativeFunction, isNoLike, isNull, isNullish, isNumber, isObject, isPlainError, isPlainObject, isPrimitive, isString, isUndefined, isYesLike, noLikeValues, yesLikeValues };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@posthog/core",
3
- "version": "1.0.2",
3
+ "version": "1.1.0",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -19,6 +19,11 @@
19
19
  "require": "./dist/index.js",
20
20
  "import": "./dist/index.mjs"
21
21
  },
22
+ "./error-tracking": {
23
+ "types": "./dist/error-tracking/index.d.ts",
24
+ "require": "./dist/error-tracking/index.js",
25
+ "import": "./dist/error-tracking/index.mjs"
26
+ },
22
27
  "./vendor/*": {
23
28
  "types": "./dist/vendor/*.d.ts",
24
29
  "require": "./dist/vendor/*.js",
@@ -42,8 +47,8 @@
42
47
  },
43
48
  "scripts": {
44
49
  "clean": "rimraf dist",
45
- "lint": "eslint src test",
46
- "lint:fix": "eslint src test --fix",
50
+ "lint": "eslint src",
51
+ "lint:fix": "eslint src --fix",
47
52
  "build": "rslib build",
48
53
  "dev": "rslib build -w",
49
54
  "test:unit": "jest",