@greatapps/common 1.1.192 → 1.1.194

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.
@@ -1,17 +1,11 @@
1
1
  "use client";
2
2
  import { useEffect, useRef } from "react";
3
- import { usePathname } from "next/navigation";
4
3
  import { useAuth } from "../../providers/auth.provider";
5
4
  import { useWhitelabel } from "../../providers/whitelabel.provider";
6
5
  import { useActiveSubscription } from "../../modules/subscriptions/hooks/find-active-subscription.hook";
7
6
  const V4_WHITELABEL_ID = 367568;
8
7
  const FRILL_SCRIPT_URL = "https://widget.frill.co/v2/container.js";
9
8
  const FRILL_KEY = "2f77f232-a120-438e-8ef6-01912ffd1b99";
10
- const EXCLUDED_ROUTES = [
11
- "/login",
12
- "/forgot-password",
13
- "/register"
14
- ];
15
9
  const SURVEYS = [{ key: "7f59dbf6-b665-458a-80e2-778de47efe1c" }];
16
10
  const WIDGETS = [
17
11
  { key: "4a5ba13b-1150-49fe-aa15-f9a2da0ba909" },
@@ -53,16 +47,14 @@ function loadFrillScript() {
53
47
  anchor?.parentNode?.insertBefore(script, anchor);
54
48
  }
55
49
  function FrillEmbed() {
56
- const pathname = usePathname();
57
50
  const { user } = useAuth();
58
51
  const { whitelabel } = useWhitelabel();
59
52
  const { data: subscriptionData } = useActiveSubscription();
60
53
  const containerRef = useRef(null);
61
54
  const subscription = subscriptionData?.data?.[0] ?? null;
62
- const isExcluded = EXCLUDED_ROUTES.some((route) => pathname.startsWith(route));
63
55
  const isV4 = whitelabel?.id === V4_WHITELABEL_ID;
64
56
  useEffect(() => {
65
- if (isExcluded || !user) return;
57
+ if (!user) return;
66
58
  initFrillLoader();
67
59
  if (document.readyState === "complete" || document.readyState === "interactive") {
68
60
  loadFrillScript();
@@ -88,7 +80,7 @@ function FrillEmbed() {
88
80
  containerRef.current = null;
89
81
  document.removeEventListener("DOMContentLoaded", loadFrillScript);
90
82
  };
91
- }, [user, isExcluded, isV4, subscription?.plan_name]);
83
+ }, [user, isV4, subscription?.plan_name]);
92
84
  return null;
93
85
  }
94
86
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/embeds/FrillEmbed.tsx"],"sourcesContent":["'use client';\n\nimport { useEffect, useRef } from 'react';\nimport { usePathname } from 'next/navigation';\nimport { useAuth } from '../../providers/auth.provider';\nimport { useWhitelabel } from '../../providers/whitelabel.provider';\nimport { useActiveSubscription } from '../../modules/subscriptions/hooks/find-active-subscription.hook';\n\nconst V4_WHITELABEL_ID = 367568;\n\nconst FRILL_SCRIPT_URL = 'https://widget.frill.co/v2/container.js';\nconst FRILL_KEY = '2f77f232-a120-438e-8ef6-01912ffd1b99';\n\nconst EXCLUDED_ROUTES = [\n '/login',\n '/forgot-password',\n '/register',\n];\n\nconst SURVEYS = [{ key: '7f59dbf6-b665-458a-80e2-778de47efe1c' }];\nconst WIDGETS = [\n { key: '4a5ba13b-1150-49fe-aa15-f9a2da0ba909' },\n { key: '720c0912-e6a4-495c-835e-3ff1f59d6dfc' },\n];\n\nfunction initFrillLoader() {\n const win = window as any;\n if (win.Frill) return;\n\n let counter = 0;\n const queue: Record<number, any> = {};\n\n win.Frill = function (action: string, params: any) {\n let instance: any;\n const id = counter++;\n const promise: any = new Promise((resolve, reject) => {\n queue[id] = {\n params: [action, params],\n resolve: (f: any) => {\n instance = f;\n resolve(f);\n },\n reject,\n };\n });\n promise.destroy = () => {\n delete queue[id];\n instance?.destroy();\n };\n return promise;\n };\n win.Frill.q = queue;\n}\n\nfunction loadFrillScript() {\n if (document.querySelector(`script[src=\"${FRILL_SCRIPT_URL}\"]`)) return;\n const anchor = document.getElementsByTagName('script')[0];\n const script = document.createElement('script');\n script.type = 'text/javascript';\n script.async = true;\n script.src = FRILL_SCRIPT_URL;\n anchor?.parentNode?.insertBefore(script, anchor);\n}\n\nexport function FrillEmbed() {\n const pathname = usePathname();\n const { user } = useAuth();\n const { whitelabel } = useWhitelabel();\n const { data: subscriptionData } = useActiveSubscription();\n const containerRef = useRef<any>(null);\n\n const subscription = subscriptionData?.data?.[0] ?? null;\n const isExcluded = EXCLUDED_ROUTES.some((route) => pathname.startsWith(route));\n const isV4 = whitelabel?.id === V4_WHITELABEL_ID;\n\n useEffect(() => {\n if (isExcluded || !user) return;\n\n initFrillLoader();\n\n if (document.readyState === 'complete' || document.readyState === 'interactive') {\n loadFrillScript();\n } else {\n document.addEventListener('DOMContentLoaded', loadFrillScript);\n }\n\n const userData = {\n id: String(user.id),\n email: user.email,\n name: `${user.name} ${user.last_name}`.trim(),\n attributes: isV4\n ? { company: 'V4' }\n : { profile: user.profile, plan: subscription?.plan_name ?? '' },\n };\n\n const config: Record<string, any> = { key: FRILL_KEY, user: userData };\n if (!isV4) {\n config.surveys = SURVEYS;\n config.widgets = WIDGETS;\n }\n\n const win = window as any;\n containerRef.current = win.Frill('container', config);\n win.Frill('identify', userData);\n\n return () => {\n containerRef.current?.destroy();\n containerRef.current = null;\n document.removeEventListener('DOMContentLoaded', loadFrillScript);\n };\n }, [user, isExcluded, isV4, subscription?.plan_name]);\n\n return null;\n}\n"],"mappings":";AAEA,SAAS,WAAW,cAAc;AAClC,SAAS,mBAAmB;AAC5B,SAAS,eAAe;AACxB,SAAS,qBAAqB;AAC9B,SAAS,6BAA6B;AAEtC,MAAM,mBAAmB;AAEzB,MAAM,mBAAmB;AACzB,MAAM,YAAY;AAElB,MAAM,kBAAkB;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AACF;AAEA,MAAM,UAAU,CAAC,EAAE,KAAK,uCAAuC,CAAC;AAChE,MAAM,UAAU;AAAA,EACd,EAAE,KAAK,uCAAuC;AAAA,EAC9C,EAAE,KAAK,uCAAuC;AAChD;AAEA,SAAS,kBAAkB;AACzB,QAAM,MAAM;AACZ,MAAI,IAAI,MAAO;AAEf,MAAI,UAAU;AACd,QAAM,QAA6B,CAAC;AAEpC,MAAI,QAAQ,SAAU,QAAgB,QAAa;AACjD,QAAI;AACJ,UAAM,KAAK;AACX,UAAM,UAAe,IAAI,QAAQ,CAAC,SAAS,WAAW;AACpD,YAAM,EAAE,IAAI;AAAA,QACV,QAAQ,CAAC,QAAQ,MAAM;AAAA,QACvB,SAAS,CAAC,MAAW;AACnB,qBAAW;AACX,kBAAQ,CAAC;AAAA,QACX;AAAA,QACA;AAAA,MACF;AAAA,IACF,CAAC;AACD,YAAQ,UAAU,MAAM;AACtB,aAAO,MAAM,EAAE;AACf,gBAAU,QAAQ;AAAA,IACpB;AACA,WAAO;AAAA,EACT;AACA,MAAI,MAAM,IAAI;AAChB;AAEA,SAAS,kBAAkB;AACzB,MAAI,SAAS,cAAc,eAAe,gBAAgB,IAAI,EAAG;AACjE,QAAM,SAAS,SAAS,qBAAqB,QAAQ,EAAE,CAAC;AACxD,QAAM,SAAS,SAAS,cAAc,QAAQ;AAC9C,SAAO,OAAO;AACd,SAAO,QAAQ;AACf,SAAO,MAAM;AACb,UAAQ,YAAY,aAAa,QAAQ,MAAM;AACjD;AAEO,SAAS,aAAa;AAC3B,QAAM,WAAW,YAAY;AAC7B,QAAM,EAAE,KAAK,IAAI,QAAQ;AACzB,QAAM,EAAE,WAAW,IAAI,cAAc;AACrC,QAAM,EAAE,MAAM,iBAAiB,IAAI,sBAAsB;AACzD,QAAM,eAAe,OAAY,IAAI;AAErC,QAAM,eAAe,kBAAkB,OAAO,CAAC,KAAK;AACpD,QAAM,aAAa,gBAAgB,KAAK,CAAC,UAAU,SAAS,WAAW,KAAK,CAAC;AAC7E,QAAM,OAAO,YAAY,OAAO;AAEhC,YAAU,MAAM;AACd,QAAI,cAAc,CAAC,KAAM;AAEzB,oBAAgB;AAEhB,QAAI,SAAS,eAAe,cAAc,SAAS,eAAe,eAAe;AAC/E,sBAAgB;AAAA,IAClB,OAAO;AACL,eAAS,iBAAiB,oBAAoB,eAAe;AAAA,IAC/D;AAEA,UAAM,WAAW;AAAA,MACf,IAAI,OAAO,KAAK,EAAE;AAAA,MAClB,OAAO,KAAK;AAAA,MACZ,MAAM,GAAG,KAAK,IAAI,IAAI,KAAK,SAAS,GAAG,KAAK;AAAA,MAC5C,YAAY,OACR,EAAE,SAAS,KAAK,IAChB,EAAE,SAAS,KAAK,SAAS,MAAM,cAAc,aAAa,GAAG;AAAA,IACnE;AAEA,UAAM,SAA8B,EAAE,KAAK,WAAW,MAAM,SAAS;AACrE,QAAI,CAAC,MAAM;AACT,aAAO,UAAU;AACjB,aAAO,UAAU;AAAA,IACnB;AAEA,UAAM,MAAM;AACZ,iBAAa,UAAU,IAAI,MAAM,aAAa,MAAM;AACpD,QAAI,MAAM,YAAY,QAAQ;AAE9B,WAAO,MAAM;AACX,mBAAa,SAAS,QAAQ;AAC9B,mBAAa,UAAU;AACvB,eAAS,oBAAoB,oBAAoB,eAAe;AAAA,IAClE;AAAA,EACF,GAAG,CAAC,MAAM,YAAY,MAAM,cAAc,SAAS,CAAC;AAEpD,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../src/components/embeds/FrillEmbed.tsx"],"sourcesContent":["'use client';\n\nimport { useEffect, useRef } from 'react';\nimport { useAuth } from '../../providers/auth.provider';\nimport { useWhitelabel } from '../../providers/whitelabel.provider';\nimport { useActiveSubscription } from '../../modules/subscriptions/hooks/find-active-subscription.hook';\n\nconst V4_WHITELABEL_ID = 367568;\n\nconst FRILL_SCRIPT_URL = 'https://widget.frill.co/v2/container.js';\nconst FRILL_KEY = '2f77f232-a120-438e-8ef6-01912ffd1b99';\n\nconst SURVEYS = [{ key: '7f59dbf6-b665-458a-80e2-778de47efe1c' }];\nconst WIDGETS = [\n { key: '4a5ba13b-1150-49fe-aa15-f9a2da0ba909' },\n { key: '720c0912-e6a4-495c-835e-3ff1f59d6dfc' },\n];\n\nfunction initFrillLoader() {\n const win = window as any;\n if (win.Frill) return;\n\n let counter = 0;\n const queue: Record<number, any> = {};\n\n win.Frill = function (action: string, params: any) {\n let instance: any;\n const id = counter++;\n const promise: any = new Promise((resolve, reject) => {\n queue[id] = {\n params: [action, params],\n resolve: (f: any) => {\n instance = f;\n resolve(f);\n },\n reject,\n };\n });\n promise.destroy = () => {\n delete queue[id];\n instance?.destroy();\n };\n return promise;\n };\n win.Frill.q = queue;\n}\n\nfunction loadFrillScript() {\n if (document.querySelector(`script[src=\"${FRILL_SCRIPT_URL}\"]`)) return;\n const anchor = document.getElementsByTagName('script')[0];\n const script = document.createElement('script');\n script.type = 'text/javascript';\n script.async = true;\n script.src = FRILL_SCRIPT_URL;\n anchor?.parentNode?.insertBefore(script, anchor);\n}\n\nexport function FrillEmbed() {\n const { user } = useAuth();\n const { whitelabel } = useWhitelabel();\n const { data: subscriptionData } = useActiveSubscription();\n const containerRef = useRef<any>(null);\n\n const subscription = subscriptionData?.data?.[0] ?? null;\n const isV4 = whitelabel?.id === V4_WHITELABEL_ID;\n\n useEffect(() => {\n if (!user) return;\n\n initFrillLoader();\n\n if (document.readyState === 'complete' || document.readyState === 'interactive') {\n loadFrillScript();\n } else {\n document.addEventListener('DOMContentLoaded', loadFrillScript);\n }\n\n const userData = {\n id: String(user.id),\n email: user.email,\n name: `${user.name} ${user.last_name}`.trim(),\n attributes: isV4\n ? { company: 'V4' }\n : { profile: user.profile, plan: subscription?.plan_name ?? '' },\n };\n\n const config: Record<string, any> = { key: FRILL_KEY, user: userData };\n if (!isV4) {\n config.surveys = SURVEYS;\n config.widgets = WIDGETS;\n }\n\n const win = window as any;\n containerRef.current = win.Frill('container', config);\n win.Frill('identify', userData);\n\n return () => {\n containerRef.current?.destroy();\n containerRef.current = null;\n document.removeEventListener('DOMContentLoaded', loadFrillScript);\n };\n }, [user, isV4, subscription?.plan_name]);\n\n return null;\n}\n"],"mappings":";AAEA,SAAS,WAAW,cAAc;AAClC,SAAS,eAAe;AACxB,SAAS,qBAAqB;AAC9B,SAAS,6BAA6B;AAEtC,MAAM,mBAAmB;AAEzB,MAAM,mBAAmB;AACzB,MAAM,YAAY;AAElB,MAAM,UAAU,CAAC,EAAE,KAAK,uCAAuC,CAAC;AAChE,MAAM,UAAU;AAAA,EACd,EAAE,KAAK,uCAAuC;AAAA,EAC9C,EAAE,KAAK,uCAAuC;AAChD;AAEA,SAAS,kBAAkB;AACzB,QAAM,MAAM;AACZ,MAAI,IAAI,MAAO;AAEf,MAAI,UAAU;AACd,QAAM,QAA6B,CAAC;AAEpC,MAAI,QAAQ,SAAU,QAAgB,QAAa;AACjD,QAAI;AACJ,UAAM,KAAK;AACX,UAAM,UAAe,IAAI,QAAQ,CAAC,SAAS,WAAW;AACpD,YAAM,EAAE,IAAI;AAAA,QACV,QAAQ,CAAC,QAAQ,MAAM;AAAA,QACvB,SAAS,CAAC,MAAW;AACnB,qBAAW;AACX,kBAAQ,CAAC;AAAA,QACX;AAAA,QACA;AAAA,MACF;AAAA,IACF,CAAC;AACD,YAAQ,UAAU,MAAM;AACtB,aAAO,MAAM,EAAE;AACf,gBAAU,QAAQ;AAAA,IACpB;AACA,WAAO;AAAA,EACT;AACA,MAAI,MAAM,IAAI;AAChB;AAEA,SAAS,kBAAkB;AACzB,MAAI,SAAS,cAAc,eAAe,gBAAgB,IAAI,EAAG;AACjE,QAAM,SAAS,SAAS,qBAAqB,QAAQ,EAAE,CAAC;AACxD,QAAM,SAAS,SAAS,cAAc,QAAQ;AAC9C,SAAO,OAAO;AACd,SAAO,QAAQ;AACf,SAAO,MAAM;AACb,UAAQ,YAAY,aAAa,QAAQ,MAAM;AACjD;AAEO,SAAS,aAAa;AAC3B,QAAM,EAAE,KAAK,IAAI,QAAQ;AACzB,QAAM,EAAE,WAAW,IAAI,cAAc;AACrC,QAAM,EAAE,MAAM,iBAAiB,IAAI,sBAAsB;AACzD,QAAM,eAAe,OAAY,IAAI;AAErC,QAAM,eAAe,kBAAkB,OAAO,CAAC,KAAK;AACpD,QAAM,OAAO,YAAY,OAAO;AAEhC,YAAU,MAAM;AACd,QAAI,CAAC,KAAM;AAEX,oBAAgB;AAEhB,QAAI,SAAS,eAAe,cAAc,SAAS,eAAe,eAAe;AAC/E,sBAAgB;AAAA,IAClB,OAAO;AACL,eAAS,iBAAiB,oBAAoB,eAAe;AAAA,IAC/D;AAEA,UAAM,WAAW;AAAA,MACf,IAAI,OAAO,KAAK,EAAE;AAAA,MAClB,OAAO,KAAK;AAAA,MACZ,MAAM,GAAG,KAAK,IAAI,IAAI,KAAK,SAAS,GAAG,KAAK;AAAA,MAC5C,YAAY,OACR,EAAE,SAAS,KAAK,IAChB,EAAE,SAAS,KAAK,SAAS,MAAM,cAAc,aAAa,GAAG;AAAA,IACnE;AAEA,UAAM,SAA8B,EAAE,KAAK,WAAW,MAAM,SAAS;AACrE,QAAI,CAAC,MAAM;AACT,aAAO,UAAU;AACjB,aAAO,UAAU;AAAA,IACnB;AAEA,UAAM,MAAM;AACZ,iBAAa,UAAU,IAAI,MAAM,aAAa,MAAM;AACpD,QAAI,MAAM,YAAY,QAAQ;AAE9B,WAAO,MAAM;AACX,mBAAa,SAAS,QAAQ;AAC9B,mBAAa,UAAU;AACvB,eAAS,oBAAoB,oBAAoB,eAAe;AAAA,IAClE;AAAA,EACF,GAAG,CAAC,MAAM,MAAM,cAAc,SAAS,CAAC;AAExC,SAAO;AACT;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@greatapps/common",
3
- "version": "1.1.192",
3
+ "version": "1.1.194",
4
4
  "description": "Shared library for GreatApps frontend applications",
5
5
  "main": "./dist/index.mjs",
6
6
  "types": "./src/index.ts",
@@ -1,7 +1,6 @@
1
1
  'use client';
2
2
 
3
3
  import { useEffect, useRef } from 'react';
4
- import { usePathname } from 'next/navigation';
5
4
  import { useAuth } from '../../providers/auth.provider';
6
5
  import { useWhitelabel } from '../../providers/whitelabel.provider';
7
6
  import { useActiveSubscription } from '../../modules/subscriptions/hooks/find-active-subscription.hook';
@@ -11,12 +10,6 @@ const V4_WHITELABEL_ID = 367568;
11
10
  const FRILL_SCRIPT_URL = 'https://widget.frill.co/v2/container.js';
12
11
  const FRILL_KEY = '2f77f232-a120-438e-8ef6-01912ffd1b99';
13
12
 
14
- const EXCLUDED_ROUTES = [
15
- '/login',
16
- '/forgot-password',
17
- '/register',
18
- ];
19
-
20
13
  const SURVEYS = [{ key: '7f59dbf6-b665-458a-80e2-778de47efe1c' }];
21
14
  const WIDGETS = [
22
15
  { key: '4a5ba13b-1150-49fe-aa15-f9a2da0ba909' },
@@ -63,18 +56,16 @@ function loadFrillScript() {
63
56
  }
64
57
 
65
58
  export function FrillEmbed() {
66
- const pathname = usePathname();
67
59
  const { user } = useAuth();
68
60
  const { whitelabel } = useWhitelabel();
69
61
  const { data: subscriptionData } = useActiveSubscription();
70
62
  const containerRef = useRef<any>(null);
71
63
 
72
64
  const subscription = subscriptionData?.data?.[0] ?? null;
73
- const isExcluded = EXCLUDED_ROUTES.some((route) => pathname.startsWith(route));
74
65
  const isV4 = whitelabel?.id === V4_WHITELABEL_ID;
75
66
 
76
67
  useEffect(() => {
77
- if (isExcluded || !user) return;
68
+ if (!user) return;
78
69
 
79
70
  initFrillLoader();
80
71
 
@@ -108,7 +99,7 @@ export function FrillEmbed() {
108
99
  containerRef.current = null;
109
100
  document.removeEventListener('DOMContentLoaded', loadFrillScript);
110
101
  };
111
- }, [user, isExcluded, isV4, subscription?.plan_name]);
102
+ }, [user, isV4, subscription?.plan_name]);
112
103
 
113
104
  return null;
114
105
  }