Skip to content

Commit 0d8e14a

Browse files
committed
fix(project): adjust things
1 parent 45128d9 commit 0d8e14a

File tree

4 files changed

+38
-48
lines changed

4 files changed

+38
-48
lines changed

package.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@
1515
"node": ">=8",
1616
"npm": ">=5"
1717
},
18+
"files": [
19+
"LICENSE",
20+
"README.md",
21+
"dist/"
22+
],
1823
"husky": {
1924
"hooks": {
2025
"pre-commit": "npm run lint && npm run test && npm run make-badges && git add 'README.md'"

rollup.config.js

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
import typescript from 'rollup-plugin-typescript2'
2-
import commonjs from 'rollup-plugin-commonjs'
3-
import external from 'rollup-plugin-peer-deps-external'
4-
import resolve from 'rollup-plugin-node-resolve'
5-
import url from 'rollup-plugin-url'
1+
import typescript from 'rollup-plugin-typescript2';
2+
import commonjs from 'rollup-plugin-commonjs';
3+
import external from 'rollup-plugin-peer-deps-external';
4+
import resolve from 'rollup-plugin-node-resolve';
65

7-
import pkg from './package.json'
6+
import pkg from './package.json';
87

98
export default {
109
input: 'src/index.tsx',
@@ -13,23 +12,22 @@ export default {
1312
file: pkg.main,
1413
format: 'cjs',
1514
exports: 'named',
16-
sourcemap: true
15+
sourcemap: true,
1716
},
1817
{
1918
file: pkg.module,
2019
format: 'es',
2120
exports: 'named',
22-
sourcemap: true
23-
}
21+
sourcemap: true,
22+
},
2423
],
2524
plugins: [
2625
external(),
27-
url({ exclude: ['**/*.svg'] }),
2826
resolve(),
2927
typescript({
3028
rollupCommonJSResolveHack: true,
31-
clean: true
29+
clean: true,
3230
}),
33-
commonjs()
34-
]
35-
}
31+
commonjs(),
32+
],
33+
};

src/index.tsx

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,21 @@ type TUseHotjar = {
66
hotjarId: string,
77
hotjarVersion: string,
88
shouldLog?: boolean
9-
) => Promise<boolean>;
9+
) => boolean;
1010
identityHotjar: (
1111
userId: string,
1212
userInfo: string,
1313
shouldLog?: boolean
14-
) => Promise<boolean>;
14+
) => boolean;
1515
};
1616

1717
export function useHotjar(): TUseHotjar {
1818
const { appendHeadScript } = useAppendHeadScript();
1919

2020
const initHotjar = React.useCallback(
21-
async (
22-
hotjarId: string,
23-
hotjarVersion: string,
24-
shouldLog = true
25-
): Promise<boolean> => {
21+
(hotjarId: string, hotjarVersion: string, shouldLog = true): boolean => {
2622
const hotjarScript = `(function(h,o,t,j,a,r){h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};h._hjSettings={hjid:${hotjarId},hjsv:${hotjarVersion}};a=o.getElementsByTagName('head')[0];r=o.createElement('script');r.async=1;r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;a.appendChild(r);})(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv=');`;
27-
const isHotjarAppended = await appendHeadScript({
23+
const isHotjarAppended = appendHeadScript({
2824
scriptText: hotjarScript,
2925
scriptId: 'hotjar-script',
3026
});
@@ -37,14 +33,10 @@ export function useHotjar(): TUseHotjar {
3733
);
3834

3935
const identityHotjar = React.useCallback(
40-
async (
41-
userId: string,
42-
userInfo: string,
43-
shouldLog = true
44-
): Promise<boolean> => {
36+
(userId: string, userInfo: string, shouldLog = true): boolean => {
4537
try {
4638
const hotjarIdentityScript = `var userId="${userId}" || null;window.hj("identify",userId,{${userInfo}}});`;
47-
const isIdentified = await appendHeadScript({
39+
const isIdentified = appendHeadScript({
4840
scriptText: hotjarIdentityScript,
4941
scriptId: 'identity-script',
5042
});

src/useAppendHeadScript.ts

Lines changed: 15 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,34 +6,29 @@ type TAppendHeadScript = {
66
};
77

88
type TUseAppendHeadScript = {
9-
appendHeadScript: ({
10-
scriptText,
11-
scriptId,
12-
}: TAppendHeadScript) => Promise<boolean>;
9+
appendHeadScript: ({ scriptText, scriptId }: TAppendHeadScript) => boolean;
1310
};
1411

1512
export function useAppendHeadScript(): TUseAppendHeadScript {
1613
const appendHeadScript = ({
1714
scriptText,
1815
scriptId,
19-
}: TAppendHeadScript): Promise<boolean> => {
20-
return new Promise((resolve, reject) => {
21-
try {
22-
const existentScript = document.getElementById(
23-
scriptId
24-
) as HTMLScriptElement;
25-
const script = existentScript || document.createElement('script');
26-
script.id = scriptId;
27-
script.innerText = scriptText;
28-
script.crossOrigin = 'anonymous';
16+
}: TAppendHeadScript): boolean => {
17+
try {
18+
const existentScript = document.getElementById(
19+
scriptId
20+
) as HTMLScriptElement;
21+
const script = existentScript || document.createElement('script');
22+
script.id = scriptId;
23+
script.innerText = scriptText;
24+
script.crossOrigin = 'anonymous';
2925

30-
document.head.appendChild(script);
26+
document.head.appendChild(script);
3127

32-
resolve(true);
33-
} catch (error) {
34-
reject(error);
35-
}
36-
});
28+
return true;
29+
} catch (error) {
30+
return error;
31+
}
3732
};
3833

3934
return React.useMemo(() => ({ appendHeadScript }), []);

0 commit comments

Comments
 (0)