@phantomstudios/ft-lib 0.4.1-rc1 → 0.5.0-rc2

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 (65) hide show
  1. package/.github/CODEOWNERS +1 -1
  2. package/.github/dependabot.yml +11 -0
  3. package/.github/workflows/pr.yml +4 -1
  4. package/.github/workflows/release.yml +9 -2
  5. package/CODE_OF_CONDUCT.md +1 -1
  6. package/CONTRIBUTING.md +3 -5
  7. package/SUPPORT.md +3 -3
  8. package/eslint.config.mjs +91 -0
  9. package/jest.config.js +1 -6
  10. package/lib/FTTracking/index.js +1 -1
  11. package/lib/FTTracking/index.js.map +1 -1
  12. package/lib/cmp/loadFtCmp.d.ts +3 -0
  13. package/lib/cmp/loadFtCmp.d.ts.map +1 -0
  14. package/lib/cmp/loadFtCmp.js +31 -0
  15. package/lib/cmp/loadFtCmp.js.map +1 -0
  16. package/lib/consentMonitor/index.d.ts +12 -14
  17. package/lib/consentMonitor/index.d.ts.map +1 -1
  18. package/lib/consentMonitor/index.js +86 -73
  19. package/lib/consentMonitor/index.js.map +1 -1
  20. package/lib/gaTracker/index.js +1 -2
  21. package/lib/gaTracker/index.js.map +1 -1
  22. package/lib/index.d.ts +7 -3
  23. package/lib/index.d.ts.map +1 -1
  24. package/lib/index.js +7 -4
  25. package/lib/index.js.map +1 -1
  26. package/lib/oTracker/index.js.map +1 -1
  27. package/lib/permutiveVideoUtils/index.d.ts.map +1 -1
  28. package/lib/permutiveVideoUtils/index.js +1 -1
  29. package/lib/permutiveVideoUtils/index.js.map +1 -1
  30. package/lib/reactPlayerTracking/index.d.ts.map +1 -1
  31. package/lib/reactPlayerTracking/index.js +1 -1
  32. package/lib/reactPlayerTracking/index.js.map +1 -1
  33. package/lib/utils/attention.js.map +1 -1
  34. package/lib/utils/cookies.js +1 -2
  35. package/lib/utils/cookies.js.map +1 -1
  36. package/lib/utils/getTrace.js.map +1 -1
  37. package/lib/utils/intersectionObserverPolyfill.d.ts +1 -0
  38. package/lib/utils/intersectionObserverPolyfill.js +1 -0
  39. package/lib/utils/intersectionObserverPolyfill.js.map +1 -1
  40. package/lib/utils/scroll.js.map +1 -1
  41. package/lib/utils/yupValidator.d.ts.map +1 -1
  42. package/lib/utils/yupValidator.js +2 -2
  43. package/lib/utils/yupValidator.js.map +1 -1
  44. package/lib/ytIframeTracking/index.d.ts +0 -1
  45. package/lib/ytIframeTracking/index.d.ts.map +1 -1
  46. package/lib/ytIframeTracking/index.js.map +1 -1
  47. package/package.json +25 -17
  48. package/src/FTTracking/index.ts +2 -2
  49. package/src/cmp/loadFtCmp.ts +28 -0
  50. package/src/consentMonitor/index.ts +82 -90
  51. package/src/gaTracker/index.ts +4 -4
  52. package/src/index.ts +10 -3
  53. package/src/oTracker/index.ts +5 -5
  54. package/src/permutiveVideoUtils/index.ts +2 -2
  55. package/src/reactPlayerTracking/index.ts +4 -4
  56. package/src/types.d.ts +13 -5
  57. package/src/utils/attention.js +9 -9
  58. package/src/utils/getTrace.js +2 -2
  59. package/src/utils/scroll.ts +2 -2
  60. package/src/utils/yupValidator.ts +6 -6
  61. package/src/ytIframeTracking/index.ts +9 -9
  62. package/test/index.test.tsx +13 -12
  63. package/tsconfig.json +3 -1
  64. package/.eslintrc +0 -58
  65. package/.nvmrc +0 -1
@@ -1 +1 @@
1
- * @digitaljohn
1
+ * @JPedersen @DhiaPhntm
@@ -0,0 +1,11 @@
1
+ # To get started with Dependabot version updates, you'll need to specify which
2
+ # package ecosystems to update and where the package manifests are located.
3
+ # Please see the documentation for all configuration options:
4
+ # https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
5
+
6
+ version: 2
7
+ updates:
8
+ - package-ecosystem: "npm" # See documentation for possible values
9
+ directory: "/" # Location of package manifests
10
+ schedule:
11
+ interval: "monthly"
@@ -9,9 +9,12 @@ jobs:
9
9
  test:
10
10
  runs-on: ubuntu-latest
11
11
 
12
+ permissions:
13
+ contents: read
14
+
12
15
  strategy:
13
16
  matrix:
14
- node-version: [16.x, 18.x, 20.x]
17
+ node-version: [18.x, 20.x, 22.x]
15
18
 
16
19
  steps:
17
20
  - uses: actions/checkout@v1
@@ -8,9 +8,12 @@ jobs:
8
8
  test:
9
9
  runs-on: ubuntu-latest
10
10
 
11
+ permissions:
12
+ contents: read
13
+
11
14
  strategy:
12
15
  matrix:
13
- node-version: [16.x, 18.x, 20.x]
16
+ node-version: [18.x, 20.x, 22.x]
14
17
 
15
18
  steps:
16
19
  - uses: actions/checkout@v1
@@ -32,11 +35,15 @@ jobs:
32
35
  publish-npm:
33
36
  needs: test
34
37
  runs-on: ubuntu-latest
38
+
39
+ permissions:
40
+ contents: read
41
+
35
42
  steps:
36
43
  - uses: actions/checkout@v2
37
44
  - uses: actions/setup-node@v1
38
45
  with:
39
- node-version: 20
46
+ node-version: 22
40
47
  registry-url: https://registry.npmjs.org/
41
48
  - run: npm ci
42
49
  - run: npm publish --access=public
@@ -55,7 +55,7 @@ further defined and clarified by project maintainers.
55
55
  ## Enforcement
56
56
 
57
57
  Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
- reported by contacting the project team at developers@phntms.com. All
58
+ reported by contacting the project team at developers@phantom.agency. All
59
59
  complaints will be reviewed and investigated and will result in a response that
60
60
  is deemed necessary and appropriate to the circumstances. The project team is
61
61
  obligated to maintain confidentiality with regard to the reporter of an incident.
package/CONTRIBUTING.md CHANGED
@@ -4,7 +4,7 @@ I'm really happy that you're interested in helping out with this little project.
4
4
 
5
5
  As this is very early days for the project there's not a lot in the way of
6
6
  resources, but please check out the [documentation](./README.md), and also the
7
- [list of issues](https://github.com/phantomstudios/@phntms/ft-lib/issues).
7
+ [list of issues](https://github.com/phantomstudios/ft-lib/issues).
8
8
 
9
9
  Please submit an issue if you need help with anything.
10
10
 
@@ -20,7 +20,7 @@ pass. Testing is automated using GitHub Actions CI.
20
20
  ## Submitting changes
21
21
 
22
22
  Please send a
23
- [GitHub Pull Request to @phntms/ft-lib](https://github.com/phantomstudios/@phntms/ft-lib/pull/new/master)
23
+ [GitHub Pull Request to @phantomstudios/ft-lib](https://github.com/phantomstudios/ft-lib/pull/new/master)
24
24
  with a clear list of what you've done (read more about
25
25
  [pull requests](https://help.github.com/en/articles/about-pull-requests)). When you send a pull
26
26
  request, please make sure you've covered off all the points in the template.
@@ -43,6 +43,4 @@ In effect this means:
43
43
  - Your Pull Request title and description become very important; they are the
44
44
  history of the master branch and explain all the changes.
45
45
  - You ought to be able to find any previous version easily using GitHub tabs, or
46
- [Releases](https://github.com/phantomstudios/@phntms/ft-lib/releases)
47
-
48
- Thanks, John Chipps-Harding
46
+ [Releases](https://github.com/phantomstudios/ft-lib/releases)
package/SUPPORT.md CHANGED
@@ -1,4 +1,4 @@
1
- # @phntms/ft-lib Support
1
+ # @phantomstudios/ft-lib Support
2
2
 
3
- For _questions_ on how to use `@phntms/ft-lib` or what went wrong when you tried something, our primary resource is by opening a
4
- [GitHub Issue](https://github.com/phantomstudios/@phntms/ft-lib/issues), where you can get help from developers.
3
+ For _questions_ on how to use `@phantomstudios/ft-lib` or what went wrong when you tried something, our primary resource is by opening a
4
+ [GitHub Issue](https://github.com/phantomstudios/ft-lib/issues), where you can get help from developers.
@@ -0,0 +1,91 @@
1
+ import { defineConfig } from "eslint/config";
2
+ import { fixupConfigRules, fixupPluginRules } from "@eslint/compat";
3
+ import prettier from "eslint-plugin-prettier";
4
+ import _import from "eslint-plugin-import";
5
+ import globals from "globals";
6
+ import tsParser from "@typescript-eslint/parser";
7
+ import path from "node:path";
8
+ import { fileURLToPath } from "node:url";
9
+ import js from "@eslint/js";
10
+ import { FlatCompat } from "@eslint/eslintrc";
11
+
12
+ const __filename = fileURLToPath(import.meta.url);
13
+ const __dirname = path.dirname(__filename);
14
+ const compat = new FlatCompat({
15
+ baseDirectory: __dirname,
16
+ recommendedConfig: js.configs.recommended,
17
+ allConfig: js.configs.all
18
+ });
19
+
20
+ export default defineConfig([{
21
+ ignores: [
22
+ "src/utils/intersectionObserverPolyfill.js",
23
+ ],
24
+
25
+ extends: fixupConfigRules(compat.extends(
26
+ "plugin:react/recommended",
27
+ "plugin:react-hooks/recommended",
28
+ "plugin:@typescript-eslint/recommended",
29
+ "plugin:prettier/recommended",
30
+ )),
31
+
32
+ plugins: {
33
+ prettier: fixupPluginRules(prettier),
34
+ import: fixupPluginRules(_import),
35
+ },
36
+
37
+ languageOptions: {
38
+ globals: {
39
+ ...globals.browser,
40
+ ...globals.node,
41
+ ...globals.jest,
42
+ React: "writable",
43
+ },
44
+
45
+ parser: tsParser,
46
+ ecmaVersion: 5,
47
+ sourceType: "commonjs",
48
+
49
+ parserOptions: {
50
+ jsx: true,
51
+ useJSXTextNode: true,
52
+ },
53
+ },
54
+
55
+ settings: {
56
+ react: {
57
+ version: "detect",
58
+ },
59
+ },
60
+
61
+ rules: {
62
+ "react-hooks/rules-of-hooks": "error",
63
+ "react-hooks/exhaustive-deps": "error",
64
+ "react/react-in-jsx-scope": "off",
65
+ "@typescript-eslint/explicit-function-return-type": "off",
66
+ "@typescript-eslint/explicit-module-boundary-types": "off",
67
+ "@typescript-eslint/ban-ts-comment": "off",
68
+ "@typescript-eslint/no-explicit-any": "off",
69
+ "react/prop-types": "off",
70
+
71
+ "import/order": ["error", {
72
+ groups: ["builtin", "external", "internal"],
73
+
74
+ pathGroups: [{
75
+ pattern: "react",
76
+ group: "external",
77
+ position: "before",
78
+ }],
79
+
80
+ pathGroupsExcludedImportTypes: ["react"],
81
+ "newlines-between": "always",
82
+
83
+ alphabetize: {
84
+ order: "asc",
85
+ caseInsensitive: true,
86
+ },
87
+ }],
88
+
89
+ "prettier/prettier": "error",
90
+ },
91
+ }]);
package/jest.config.js CHANGED
@@ -6,7 +6,7 @@ module.exports = {
6
6
  '<rootDir>/test'
7
7
  ],
8
8
  transform: {
9
- '^.+\\.tsx?$': 'ts-jest'
9
+ '^.+\\.tsx?$': ['ts-jest', {tsconfig: 'tsconfig.test.json'}]
10
10
  },
11
11
  moduleFileExtensions: [
12
12
  'ts',
@@ -16,9 +16,4 @@ module.exports = {
16
16
  'json',
17
17
  'node'
18
18
  ],
19
- globals: {
20
- 'ts-jest': {
21
- tsConfig: 'tsconfig.test.json'
22
- }
23
- }
24
19
  }
@@ -41,7 +41,7 @@ var FTTracking = /** @class */ (function () {
41
41
  this.scrollTracker = new scroll_1.ScrollTracker(this);
42
42
  //cookie consent monitor for permutive tracking
43
43
  window.addEventListener("load", function () {
44
- new consentMonitor_1.consentMonitor(window.location.hostname, [".app", "preview"]);
44
+ new consentMonitor_1.ConsentMonitor(window.location.hostname, [".app", "preview"]);
45
45
  });
46
46
  }
47
47
  Object.defineProperty(FTTracking.prototype, "config", {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/FTTracking/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,oDAAmD;AACnD,0CAAyC;AACzC,wCAAuC;AACvC,0CAAgD;AAChD,sDAI+B;AAW/B,IAAM,eAAe,GAAG;IACtB,qBAAqB,EAAE,mBAAmB;IAC1C,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,IAAI;IACvB,kBAAkB,EAAE,IAAI;CACzB,CAAC;AAEF;IAYE,oBAAY,MAAkB,EAAE,OAAyB;QACvD,IAAI,CAAC,OAAO,yBAAQ,eAAe,GAAK,OAAO,CAAE,CAAC;QAClD,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,yBAAyB;YAC5B,IAAI,CAAC,OAAO,CAAC,yBAAyB,IAAI,KAAK,CAAC;QAClD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,IAAI,KAAK,CAAC;QAErE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;QAC5C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB;YAC1C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,kBAAkB;YACnC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QAEtB,yBAAyB;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAI,CAAC,aAAa,GAAG,IAAI,sBAAa,CAAC,IAAI,CAAC,CAAC;QAE7C,+CAA+C;QAC/C,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE;YAC9B,IAAI,+BAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;IACL,CAAC;IACD,sBAAI,8BAAM;aAIV;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;aAND,UAAW,CAAa;YACtB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;YACjB,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKM,gCAAW,GAAlB,UAAmB,MAAkB;QACnC,+EAA+E;QAC/E,IAAA,6BAAc,EACZ,MAAM,EACN,IAAI,CAAC,yBAAyB,EAC9B,IAAI,CAAC,mBAAmB,CACzB,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE;YACnC,IAAI,CAAC,QAAQ,CAAC,uBAAuB,EAAE,CAAC;SACzC;QACD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE;YAClC,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACvE;QACD,mDAAmD;IACrD,CAAC;IACH,iBAAC;AAAD,CAAC,AA9DD,IA8DC;AA9DY,gCAAU"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/FTTracking/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,oDAAqE;AACrE,0CAAyC;AACzC,wCAAuC;AACvC,0CAAgD;AAChD,sDAI+B;AAW/B,IAAM,eAAe,GAAG;IACtB,qBAAqB,EAAE,mBAAmB;IAC1C,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,IAAI;IACvB,kBAAkB,EAAE,IAAI;CACzB,CAAC;AAEF;IAYE,oBAAY,MAAkB,EAAE,OAAyB;QACvD,IAAI,CAAC,OAAO,yBAAQ,eAAe,GAAK,OAAO,CAAE,CAAC;QAClD,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,yBAAyB;YAC5B,IAAI,CAAC,OAAO,CAAC,yBAAyB,IAAI,KAAK,CAAC;QAClD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,IAAI,KAAK,CAAC;QAErE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;QAC5C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB;YAC1C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,kBAAkB;YACnC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QAEtB,yBAAyB;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAI,CAAC,aAAa,GAAG,IAAI,sBAAa,CAAC,IAAI,CAAC,CAAC;QAE7C,+CAA+C;QAC/C,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE;YAC9B,IAAI,+BAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;IACL,CAAC;IACD,sBAAI,8BAAM;aAIV;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;aAND,UAAW,CAAa;YACtB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;YACjB,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKM,gCAAW,GAAlB,UAAmB,MAAkB;QACnC,+EAA+E;QAC/E,IAAA,6BAAc,EACZ,MAAM,EACN,IAAI,CAAC,yBAAyB,EAC9B,IAAI,CAAC,mBAAmB,CACzB,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;YACpC,IAAI,CAAC,QAAQ,CAAC,uBAAuB,EAAE,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACnC,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxE,CAAC;QACD,mDAAmD;IACrD,CAAC;IACH,iBAAC;AAAD,CAAC,AA9DD,IA8DC;AA9DY,gCAAU"}
@@ -0,0 +1,3 @@
1
+ export declare function loadFtCmpScript(): Promise<void>;
2
+ export declare function enqueueCmpCallback(cb: () => void): void;
3
+ //# sourceMappingURL=loadFtCmp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadFtCmp.d.ts","sourceRoot":"","sources":["../../src/cmp/loadFtCmp.ts"],"names":[],"mappings":"AAAA,wBAAgB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAoB/C;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAKvD"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.loadFtCmpScript = loadFtCmpScript;
4
+ exports.enqueueCmpCallback = enqueueCmpCallback;
5
+ function loadFtCmpScript() {
6
+ if (document.getElementById("ft-cmp-loader")) {
7
+ return Promise.resolve();
8
+ }
9
+ return new Promise(function (resolve, reject) {
10
+ var script = document.createElement("script");
11
+ script.id = "ft-cmp-loader";
12
+ script.async = true;
13
+ script.src = "https://consent-notice.ft.com/cmp.js";
14
+ script.referrerPolicy = window.location.hostname.endsWith(".ft.com")
15
+ ? "" // production hosts
16
+ : "no-referrer-when-downgrade"; // localhost / preview
17
+ script.onload = function () { return resolve(); };
18
+ script.onerror = function () {
19
+ return reject(new Error("Sourcepoint CMP script failed to load"));
20
+ };
21
+ document.head.appendChild(script);
22
+ });
23
+ }
24
+ function enqueueCmpCallback(cb) {
25
+ if (!window._sp_)
26
+ window._sp_ = {};
27
+ if (!window._sp_.queue)
28
+ window._sp_.queue = [];
29
+ window._sp_.queue.push(cb);
30
+ }
31
+ //# sourceMappingURL=loadFtCmp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadFtCmp.js","sourceRoot":"","sources":["../../src/cmp/loadFtCmp.ts"],"names":[],"mappings":";;AAAA,0CAoBC;AAED,gDAKC;AA3BD,SAAgB,eAAe;IAC7B,IAAI,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE,CAAC;QAC7C,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO,IAAI,OAAO,CAAO,UAAC,OAAO,EAAE,MAAM;QACvC,IAAM,MAAM,GAAsB,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,CAAC,EAAE,GAAG,eAAe,CAAC;QAC5B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;QACpB,MAAM,CAAC,GAAG,GAAG,sCAAsC,CAAC;QACpD,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;YAClE,CAAC,CAAC,EAAE,CAAC,mBAAmB;YACxB,CAAC,CAAC,4BAA4B,CAAC,CAAC,sBAAsB;QAExD,MAAM,CAAC,MAAM,GAAG,cAAM,OAAA,OAAO,EAAE,EAAT,CAAS,CAAC;QAChC,MAAM,CAAC,OAAO,GAAG;YACf,OAAA,MAAM,CAAC,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAA1D,CAA0D,CAAC;QAE7D,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,kBAAkB,CAAC,EAAc;IAC/C,IAAI,CAAC,MAAM,CAAC,IAAI;QAAE,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;IACnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAE/C,MAAM,CAAC,IAAI,CAAC,KAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC9B,CAAC"}
@@ -1,19 +1,17 @@
1
- export declare class consentMonitor {
2
- protected _consent: boolean;
3
- protected _devHosts: string[];
4
- protected _isDevEnvironment: boolean;
5
- protected _hostname: string;
6
- protected _isInitialized: boolean;
7
- constructor(hostname?: string, devHosts?: string[] | string);
1
+ export declare class ConsentMonitor {
2
+ private _consent;
3
+ private _devHosts;
4
+ private _isDevEnvironment;
5
+ private _isInitialized;
8
6
  get consent(): boolean;
9
- get devHosts(): string[] | string;
7
+ get devHosts(): string[];
10
8
  get isDevEnvironment(): boolean;
11
9
  get isInitialized(): boolean;
12
- getCookieValue: (name: string) => string;
13
- init: () => void;
14
- cookieConsentTest: () => void;
15
- setDevCookieHandler: () => void;
16
- permutiveConsentOn: () => void;
17
- permutiveConsentOff: () => void;
10
+ get userHasConsented(): boolean;
11
+ constructor(hostname?: string, devHosts?: string[] | string);
12
+ private attachCmpListeners;
13
+ private enablePermutive;
14
+ private disablePermutive;
18
15
  }
16
+ export { ConsentMonitor as consentMonitor };
19
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/consentMonitor/index.ts"],"names":[],"mappings":"AAKA,qBAAa,cAAc;IACzB,SAAS,CAAC,QAAQ,UAAS;IAC3B,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;IAC9B,SAAS,CAAC,iBAAiB,UAAS;IACpC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,cAAc,UAAS;gBAErB,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM;IAc3D,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,QAAQ,IAAI,MAAM,EAAE,GAAG,MAAM,CAEhC;IAED,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,cAAc,SAAU,MAAM,YACgD;IAE9E,IAAI,aASF;IAEF,iBAAiB,aA6Bf;IAEF,mBAAmB,aAkBjB;IAEF,kBAAkB,aAMhB;IAEF,mBAAmB,aAGjB;CACH"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/consentMonitor/index.ts"],"names":[],"mappings":"AA0BA,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAW;IAC5B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,cAAc,CAAS;IAE/B,IAAW,OAAO,IAAI,OAAO,CAE5B;IACD,IAAW,QAAQ,IAAI,MAAM,EAAE,CAE9B;IACD,IAAW,gBAAgB,IAAI,OAAO,CAErC;IACD,IAAW,aAAa,IAAI,OAAO,CAElC;IAED,IAAW,gBAAgB,IAAI,OAAO,CAErC;gBAEW,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM;IAsB3D,OAAO,CAAC,kBAAkB;IAsB1B,OAAO,CAAC,eAAe;IAUvB,OAAO,CAAC,gBAAgB;CAMzB;AAED,OAAO,EAAE,cAAc,IAAI,cAAc,EAAE,CAAC"}
@@ -1,117 +1,130 @@
1
1
  "use strict";
2
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
3
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4
+ if (ar || !(i in from)) {
5
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
6
+ ar[i] = from[i];
7
+ }
8
+ }
9
+ return to.concat(ar || Array.prototype.slice.call(from));
10
+ };
2
11
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
13
  };
5
14
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.consentMonitor = void 0;
15
+ exports.consentMonitor = exports.ConsentMonitor = void 0;
7
16
  var debug_1 = __importDefault(require("debug"));
8
- var debug = (0, debug_1.default)("@phntms/ft-lib");
17
+ var loadFtCmp_1 = require("../cmp/loadFtCmp");
18
+ var debug = (0, debug_1.default)("@phantomstudios/ft-lib/consentMonitor");
9
19
  var DEFAULT_DEV_HOSTS = ["localhost", "phq", ".app", "preview"];
10
- var consentMonitor = /** @class */ (function () {
11
- function consentMonitor(hostname, devHosts) {
20
+ var CMP_CHOICE_ACCEPT_ALL = 11;
21
+ var CMP_CHOICE_REJECT_ALL = 13;
22
+ var ConsentMonitor = /** @class */ (function () {
23
+ function ConsentMonitor(hostname, devHosts) {
12
24
  var _this = this;
13
25
  this._consent = false;
14
26
  this._isDevEnvironment = false;
15
27
  this._isInitialized = false;
16
- this.getCookieValue = function (name) { var _a; return ((_a = document.cookie.match("(^|;)\\s*" + name + "\\s*=\\s*([^;]+)")) === null || _a === void 0 ? void 0 : _a.pop()) || ""; };
17
- this.init = function () {
18
- _this.cookieConsentTest();
19
- setInterval(_this.cookieConsentTest, 3000);
20
- //Simulate cookie consent behaviour in non-prod environments
21
- _this._devHosts.map(function (devHost) {
22
- return _this._hostname.includes(devHost) && _this.setDevCookieHandler();
23
- });
24
- };
25
- this.cookieConsentTest = function () {
26
- if (window.permutive) {
27
- if (!_this._isInitialized) {
28
- if (_this.getCookieValue("FTConsent").includes("behaviouraladsOnsite%3Aon")) {
29
- _this.permutiveConsentOn();
30
- }
31
- else {
32
- _this.permutiveConsentOff();
33
- }
34
- _this._isInitialized = true;
35
- }
36
- else if (_this.getCookieValue("FTConsent").includes("behaviouraladsOnsite%3Aon") &&
37
- !_this.consent) {
38
- debug("setting permutive tracking consent: on");
39
- _this.permutiveConsentOn();
40
- }
41
- else if (!_this.getCookieValue("FTConsent").includes("behaviouraladsOnsite%3Aon") &&
42
- _this.consent) {
43
- debug("setting permutive tracking consent: off");
44
- _this.permutiveConsentOff();
45
- }
46
- }
47
- };
48
- this.setDevCookieHandler = function () {
49
- _this._isDevEnvironment = true;
50
- debug("setting development environment from host match");
51
- var oCookieMessage = document.getElementsByClassName("o-cookie-message")[0];
52
- if (oCookieMessage) {
53
- var onCookieMessageAct_1 = function () {
54
- debug("setting development FT consent cookies");
55
- document.cookie = "FTConsent=behaviouraladsOnsite%3Aon";
56
- document.cookie = "FTCookieConsentGDPR=true";
57
- oCookieMessage.removeEventListener("oCookieMessage.act", onCookieMessageAct_1, false);
58
- };
59
- oCookieMessage.addEventListener("oCookieMessage.act", onCookieMessageAct_1);
60
- }
61
- };
62
- this.permutiveConsentOn = function () {
63
- window.permutive.consent({
64
- opt_in: true,
65
- token: "behaviouraladsOnsite:on",
66
- });
67
- _this._consent = true;
68
- };
69
- this.permutiveConsentOff = function () {
70
- window.permutive.consent({ opt_in: false });
71
- _this._consent = false;
72
- };
73
28
  if (Array.isArray(devHosts)) {
74
- this._devHosts = devHosts.concat(DEFAULT_DEV_HOSTS);
29
+ this._devHosts = __spreadArray(__spreadArray([], devHosts, true), DEFAULT_DEV_HOSTS, true);
75
30
  }
76
31
  else if (devHosts === undefined) {
77
- this._devHosts = DEFAULT_DEV_HOSTS;
32
+ this._devHosts = __spreadArray([], DEFAULT_DEV_HOSTS, true);
78
33
  }
79
34
  else {
80
- this._devHosts = DEFAULT_DEV_HOSTS;
81
- this._devHosts.push(devHosts);
35
+ this._devHosts = __spreadArray(__spreadArray([], DEFAULT_DEV_HOSTS, true), [devHosts], false);
82
36
  }
83
- this._hostname = hostname || window.location.hostname;
84
- this.init();
37
+ var hostToCheck = hostname !== null && hostname !== void 0 ? hostname : window.location.hostname;
38
+ this._isDevEnvironment = this._devHosts.some(function (h) {
39
+ return hostToCheck.includes(h);
40
+ });
41
+ (0, loadFtCmp_1.loadFtCmpScript)()
42
+ .then(function () {
43
+ _this.attachCmpListeners();
44
+ _this._isInitialized = true;
45
+ })
46
+ .catch(function (err) { return console.error(err); });
85
47
  }
86
- Object.defineProperty(consentMonitor.prototype, "consent", {
48
+ Object.defineProperty(ConsentMonitor.prototype, "consent", {
87
49
  get: function () {
88
50
  return this._consent;
89
51
  },
90
52
  enumerable: false,
91
53
  configurable: true
92
54
  });
93
- Object.defineProperty(consentMonitor.prototype, "devHosts", {
55
+ Object.defineProperty(ConsentMonitor.prototype, "devHosts", {
94
56
  get: function () {
95
57
  return this._devHosts;
96
58
  },
97
59
  enumerable: false,
98
60
  configurable: true
99
61
  });
100
- Object.defineProperty(consentMonitor.prototype, "isDevEnvironment", {
62
+ Object.defineProperty(ConsentMonitor.prototype, "isDevEnvironment", {
101
63
  get: function () {
102
64
  return this._isDevEnvironment;
103
65
  },
104
66
  enumerable: false,
105
67
  configurable: true
106
68
  });
107
- Object.defineProperty(consentMonitor.prototype, "isInitialized", {
69
+ Object.defineProperty(ConsentMonitor.prototype, "isInitialized", {
108
70
  get: function () {
109
71
  return this._isInitialized;
110
72
  },
111
73
  enumerable: false,
112
74
  configurable: true
113
75
  });
114
- return consentMonitor;
76
+ Object.defineProperty(ConsentMonitor.prototype, "userHasConsented", {
77
+ get: function () {
78
+ return this._consent;
79
+ },
80
+ enumerable: false,
81
+ configurable: true
82
+ });
83
+ ConsentMonitor.prototype.attachCmpListeners = function () {
84
+ var _this = this;
85
+ (0, loadFtCmp_1.enqueueCmpCallback)(function () {
86
+ var _a, _b, _d, _e;
87
+ var onReady = function (_l, _u, _t, info) {
88
+ debug("onConsentReady:", info);
89
+ if (info.consentedToAll) {
90
+ _this.enablePermutive();
91
+ }
92
+ else {
93
+ _this.disablePermutive();
94
+ }
95
+ };
96
+ var onChoice = function (_l, _c, typeId) {
97
+ debug("onMessageChoiceSelect:", typeId);
98
+ if (typeId === CMP_CHOICE_ACCEPT_ALL)
99
+ _this.enablePermutive();
100
+ else if (typeId === CMP_CHOICE_REJECT_ALL)
101
+ _this.disablePermutive();
102
+ };
103
+ (_b = (_a = window._sp_).addEventListener) === null || _b === void 0 ? void 0 : _b.call(_a, "onConsentReady", onReady);
104
+ (_e = (_d = window._sp_).addEventListener) === null || _e === void 0 ? void 0 : _e.call(_d, "onMessageChoiceSelect", onChoice);
105
+ });
106
+ };
107
+ ConsentMonitor.prototype.enablePermutive = function () {
108
+ var _a;
109
+ if (this._consent)
110
+ return;
111
+ debug("Permutive consent: ON");
112
+ (_a = window.permutive) === null || _a === void 0 ? void 0 : _a.consent({
113
+ opt_in: true,
114
+ token: "behaviouraladsOnsite:on",
115
+ });
116
+ this._consent = true;
117
+ };
118
+ ConsentMonitor.prototype.disablePermutive = function () {
119
+ var _a;
120
+ if (!this._consent)
121
+ return;
122
+ debug("Permutive consent: OFF");
123
+ (_a = window.permutive) === null || _a === void 0 ? void 0 : _a.consent({ opt_in: false });
124
+ this._consent = false;
125
+ };
126
+ return ConsentMonitor;
115
127
  }());
116
- exports.consentMonitor = consentMonitor;
128
+ exports.ConsentMonitor = ConsentMonitor;
129
+ exports.consentMonitor = ConsentMonitor;
117
130
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/consentMonitor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/consentMonitor/index.ts"],"names":[],"mappings":"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"}
@@ -51,8 +51,7 @@ var gaTracker = /** @class */ (function () {
51
51
  var _a = gaEventString.split("|"), category = _a[0], action = _a[1], label = _a[2];
52
52
  if (typeof window !== "undefined") {
53
53
  if (_this.options.isCustomGTMEvent) {
54
- _this.GTMEventDispatcher(category, action, label || window.location.pathname //use pathname if label section has not been defined
55
- );
54
+ _this.GTMEventDispatcher(category, action, label || window.location.pathname);
56
55
  }
57
56
  else {
58
57
  _this.GtagEventDispatcher(category, action, label || window.location.pathname);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/gaTracker/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/gaTracker/index.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -1,9 +1,13 @@
1
- export { consentMonitor } from "./consentMonitor";
1
+ import { FTTracking, TrackingOptions } from "./FTTracking";
2
+ import { ConfigType, OrigamiEventType } from "./utils/yupValidator";
3
+ export { FTTracking };
4
+ export type { TrackingOptions };
5
+ export { loadFtCmpScript, enqueueCmpCallback } from "./cmp/loadFtCmp";
6
+ export { ConsentMonitor as consentMonitor } from "./consentMonitor";
2
7
  export { permutiveVideoUtils } from "./permutiveVideoUtils";
3
8
  export { reactPlayerTracking } from "./reactPlayerTracking";
4
9
  export { gaTracker } from "./gaTracker";
5
10
  export { oTracker } from "./oTracker";
6
11
  export { ytIframeTracking } from "./ytIframeTracking";
7
- export { FTTracking, TrackingOptions } from "./FTTracking";
8
- export { ConfigType, OrigamiEventType } from "./utils/yupValidator";
12
+ export type { ConfigType, OrigamiEventType };
9
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,YAAY,EAAE,eAAe,EAAE,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAEtE,OAAO,EAAE,cAAc,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC"}