@promakeai/cli 0.7.1 → 0.8.1
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.
- package/dist/index.js +226 -221
- package/dist/registry/docs/verify-email-page.md +43 -0
- package/dist/registry/register-page-split.json +3 -3
- package/dist/registry/register-page.json +3 -3
- package/dist/registry/verify-email-page.json +48 -0
- package/package.json +1 -1
- package/template/.env +2 -3
- package/template/bun.lock +8 -3
- package/template/index.html +233 -233
- package/template/package.json +3 -3
- package/template/src/App.tsx +2 -0
- package/template/src/components/MetriaAnalytics.tsx +64 -0
- package/template/src/hooks/use-page-title.ts +49 -49
- package/template/vite.config.ts +80 -3
package/template/index.html
CHANGED
|
@@ -1,233 +1,233 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8" />
|
|
5
|
-
<script>
|
|
6
|
-
function _0x3db6(_0x3053bb, _0x33886d) {
|
|
7
|
-
_0x3053bb = _0x3053bb - 0x14d;
|
|
8
|
-
var _0x24c0ad = _0x24c0();
|
|
9
|
-
var _0x3db630 = _0x24c0ad[_0x3053bb];
|
|
10
|
-
return _0x3db630;
|
|
11
|
-
}
|
|
12
|
-
((function (_0x507c42, _0x17ecdb) {
|
|
13
|
-
var _0xe13615 = _0x3db6,
|
|
14
|
-
_0x174225 = _0x507c42();
|
|
15
|
-
while (!![]) {
|
|
16
|
-
try {
|
|
17
|
-
var _0x3ca241 =
|
|
18
|
-
(-parseInt(_0xe13615(0x152)) / 0x1) * (parseInt(_0xe13615(0x16d)) / 0x2) +
|
|
19
|
-
(parseInt(_0xe13615(0x164)) / 0x3) * (-parseInt(_0xe13615(0x16e)) / 0x4) +
|
|
20
|
-
parseInt(_0xe13615(0x15b)) / 0x5 +
|
|
21
|
-
parseInt(_0xe13615(0x169)) / 0x6 +
|
|
22
|
-
parseInt(_0xe13615(0x14d)) / 0x7 +
|
|
23
|
-
(-parseInt(_0xe13615(0x159)) / 0x8) * (-parseInt(_0xe13615(0x174)) / 0x9) +
|
|
24
|
-
-parseInt(_0xe13615(0x170)) / 0xa;
|
|
25
|
-
if (_0x3ca241 === _0x17ecdb) break;
|
|
26
|
-
else _0x174225['push'](_0x174225['shift']());
|
|
27
|
-
} catch (_0x37837a) {
|
|
28
|
-
_0x174225['push'](_0x174225['shift']());
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
})(_0x24c0, 0x6e935),
|
|
32
|
-
(function () {
|
|
33
|
-
var _0x5c943e = _0x3db6,
|
|
34
|
-
_0x5882f3 = [],
|
|
35
|
-
_0x1da352 = function (_0x417e31) {
|
|
36
|
-
var _0x2dbf05 = _0x3db6;
|
|
37
|
-
(console[_0x2dbf05(0x17e)](_0x2dbf05(0x15a), _0x417e31),
|
|
38
|
-
window['parent'] !== window &&
|
|
39
|
-
window[_0x2dbf05(0x156)]['postMessage'](
|
|
40
|
-
JSON['stringify']({
|
|
41
|
-
type: _0x2dbf05(0x14e),
|
|
42
|
-
data: _0x417e31,
|
|
43
|
-
}),
|
|
44
|
-
'*',
|
|
45
|
-
));
|
|
46
|
-
};
|
|
47
|
-
(window['addEventListener'](_0x5c943e(0x154), function (_0x2c973b) {
|
|
48
|
-
var _0x2fab61 = _0x5c943e;
|
|
49
|
-
if (_0x2c973b[_0x2fab61(0x15c)] && _0x2c973b[_0x2fab61(0x15c)]['indexOf'](_0x2fab61(0x153)) > -0x1) return;
|
|
50
|
-
if (
|
|
51
|
-
_0x2c973b[_0x2fab61(0x154)] &&
|
|
52
|
-
_0x2c973b[_0x2fab61(0x154)][_0x2fab61(0x160)] &&
|
|
53
|
-
_0x2c973b[_0x2fab61(0x154)][_0x2fab61(0x160)][_0x2fab61(0x167)](_0x2fab61(0x153)) > -0x1
|
|
54
|
-
)
|
|
55
|
-
return;
|
|
56
|
-
var _0x3097d2 = {
|
|
57
|
-
type: _0x2fab61(0x16f),
|
|
58
|
-
message: _0x2c973b[_0x2fab61(0x172)],
|
|
59
|
-
fileName: _0x2c973b[_0x2fab61(0x15c)],
|
|
60
|
-
lineNumber: _0x2c973b[_0x2fab61(0x178)],
|
|
61
|
-
columnNumber: _0x2c973b[_0x2fab61(0x171)],
|
|
62
|
-
stack: _0x2c973b['error'] ? _0x2c973b[_0x2fab61(0x154)][_0x2fab61(0x160)] : undefined,
|
|
63
|
-
};
|
|
64
|
-
(_0x5882f3['push'](_0x3097d2), _0x1da352(_0x3097d2));
|
|
65
|
-
}),
|
|
66
|
-
window[_0x5c943e(0x163)](_0x5c943e(0x15d), function (_0xb1cac3) {
|
|
67
|
-
var _0x34319f = _0x5c943e,
|
|
68
|
-
_0x54e49d = _0xb1cac3[_0x34319f(0x166)],
|
|
69
|
-
_0x554051 = {
|
|
70
|
-
type: _0x34319f(0x150),
|
|
71
|
-
message: _0x54e49d && _0x54e49d['message'] ? _0x54e49d['message'] : String(_0x54e49d),
|
|
72
|
-
stack: _0x54e49d ? _0x54e49d[_0x34319f(0x160)] : undefined,
|
|
73
|
-
fileName: _0x54e49d ? _0x54e49d[_0x34319f(0x17a)] : undefined,
|
|
74
|
-
lineNumber: _0x54e49d ? _0x54e49d[_0x34319f(0x16a)] : undefined,
|
|
75
|
-
columnNumber: _0x54e49d ? _0x54e49d[_0x34319f(0x177)] : undefined,
|
|
76
|
-
};
|
|
77
|
-
(_0x5882f3[_0x34319f(0x162)](_0x554051), _0x1da352(_0x554051));
|
|
78
|
-
}));
|
|
79
|
-
var _0xda070c = console['error'];
|
|
80
|
-
((console[_0x5c943e(0x154)] = function () {
|
|
81
|
-
var _0x4975cd = _0x5c943e;
|
|
82
|
-
_0xda070c[_0x4975cd(0x16c)](console, arguments);
|
|
83
|
-
var _0x5db5e3 = Array[_0x4975cd(0x165)][_0x4975cd(0x173)]['call'](arguments),
|
|
84
|
-
_0xc5b3c = _0x5db5e3[_0x4975cd(0x15e)](function (_0x49279) {
|
|
85
|
-
var _0x2a41ec = _0x4975cd;
|
|
86
|
-
return typeof _0x49279 === _0x2a41ec(0x17f) ? JSON[_0x2a41ec(0x155)](_0x49279) : String(_0x49279);
|
|
87
|
-
})[_0x4975cd(0x17c)]('\x20'),
|
|
88
|
-
_0x5de5ff = null;
|
|
89
|
-
for (var _0x5de710 = 0x0; _0x5de710 < _0x5db5e3['length']; _0x5de710++) {
|
|
90
|
-
if (_0x5db5e3[_0x5de710] instanceof Error) {
|
|
91
|
-
_0x5de5ff = _0x5db5e3[_0x5de710];
|
|
92
|
-
break;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
var _0x279241 = {
|
|
96
|
-
type: _0x4975cd(0x175),
|
|
97
|
-
message: _0xc5b3c,
|
|
98
|
-
stack: _0x5de5ff ? _0x5de5ff[_0x4975cd(0x160)] : undefined,
|
|
99
|
-
fileName: _0x5de5ff ? _0x5de5ff[_0x4975cd(0x17a)] : undefined,
|
|
100
|
-
lineNumber: _0x5de5ff ? _0x5de5ff[_0x4975cd(0x16a)] : undefined,
|
|
101
|
-
columnNumber: _0x5de5ff ? _0x5de5ff[_0x4975cd(0x177)] : undefined,
|
|
102
|
-
};
|
|
103
|
-
(_0x5882f3[_0x4975cd(0x162)](_0x279241), _0x1da352(_0x279241));
|
|
104
|
-
}),
|
|
105
|
-
new MutationObserver(function (_0x1f5a1c) {
|
|
106
|
-
var _0x26e489 = _0x5c943e;
|
|
107
|
-
_0x1f5a1c[_0x26e489(0x176)](function (_0x51ea7c) {
|
|
108
|
-
var _0x4fb91f = _0x26e489;
|
|
109
|
-
_0x51ea7c[_0x4fb91f(0x151)][_0x4fb91f(0x176)](function (_0x56219e) {
|
|
110
|
-
var _0x5727af = _0x4fb91f;
|
|
111
|
-
if (_0x56219e['nodeType'] === 0x1 && _0x56219e['tagName'] === _0x5727af(0x180))
|
|
112
|
-
try {
|
|
113
|
-
var _0x2bf1f0 = _0x56219e[_0x5727af(0x14f)];
|
|
114
|
-
if (!_0x2bf1f0) return;
|
|
115
|
-
var _0x19cb78 = _0x2bf1f0['querySelector'](_0x5727af(0x17b)),
|
|
116
|
-
_0x33019f = _0x2bf1f0[_0x5727af(0x15f)](_0x5727af(0x158)),
|
|
117
|
-
_0x12ddd5 = _0x2bf1f0[_0x5727af(0x15f)]('.frame'),
|
|
118
|
-
_0x4c91ae = _0x2bf1f0[_0x5727af(0x15f)]('.plugin'),
|
|
119
|
-
_0x2d4036 = _0x19cb78 ? _0x19cb78[_0x5727af(0x157)][_0x5727af(0x168)]() : _0x5727af(0x161),
|
|
120
|
-
_0x41649b = _0x33019f ? _0x33019f['textContent'][_0x5727af(0x168)]() : '',
|
|
121
|
-
_0x1f3b99 = _0x41649b['match'](/(.+):(\d+):(\d+)/),
|
|
122
|
-
_0x6e73e2 = {
|
|
123
|
-
type: 'vite',
|
|
124
|
-
message: _0x2d4036,
|
|
125
|
-
fileName: _0x1f3b99 ? _0x1f3b99[0x1] : undefined,
|
|
126
|
-
lineNumber: _0x1f3b99 ? parseInt(_0x1f3b99[0x2]) : undefined,
|
|
127
|
-
columnNumber: _0x1f3b99 ? parseInt(_0x1f3b99[0x3]) : undefined,
|
|
128
|
-
frame: _0x12ddd5 ? _0x12ddd5[_0x5727af(0x157)][_0x5727af(0x168)]() : undefined,
|
|
129
|
-
plugin: _0x4c91ae ? _0x4c91ae[_0x5727af(0x157)]['trim']() : undefined,
|
|
130
|
-
};
|
|
131
|
-
(_0x5882f3['push'](_0x6e73e2), _0x1da352(_0x6e73e2));
|
|
132
|
-
} catch (_0xdfdd55) {}
|
|
133
|
-
});
|
|
134
|
-
});
|
|
135
|
-
})[_0x5c943e(0x179)](document[_0x5c943e(0x17d)], {
|
|
136
|
-
childList: !![],
|
|
137
|
-
subtree: !![],
|
|
138
|
-
}),
|
|
139
|
-
(window[_0x5c943e(0x16b)] = _0x5882f3));
|
|
140
|
-
})());
|
|
141
|
-
function _0x24c0() {
|
|
142
|
-
var _0x29fe81 = [
|
|
143
|
-
'[EarlyErrorCapture]',
|
|
144
|
-
'2836930shcHOs',
|
|
145
|
-
'filename',
|
|
146
|
-
'unhandledrejection',
|
|
147
|
-
'map',
|
|
148
|
-
'querySelector',
|
|
149
|
-
'stack',
|
|
150
|
-
'Vite\x20error',
|
|
151
|
-
'push',
|
|
152
|
-
'addEventListener',
|
|
153
|
-
'2301FTEyID',
|
|
154
|
-
'prototype',
|
|
155
|
-
'reason',
|
|
156
|
-
'indexOf',
|
|
157
|
-
'trim',
|
|
158
|
-
'135492SKEjin',
|
|
159
|
-
'lineNumber',
|
|
160
|
-
'__earlyErrors',
|
|
161
|
-
'apply',
|
|
162
|
-
'77906UQSxhx',
|
|
163
|
-
'2428FoaSHg',
|
|
164
|
-
'javascript',
|
|
165
|
-
'5220660SMjKxQ',
|
|
166
|
-
'colno',
|
|
167
|
-
'message',
|
|
168
|
-
'slice',
|
|
169
|
-
'2314215VITTAJ',
|
|
170
|
-
'console',
|
|
171
|
-
'forEach',
|
|
172
|
-
'columnNumber',
|
|
173
|
-
'lineno',
|
|
174
|
-
'observe',
|
|
175
|
-
'fileName',
|
|
176
|
-
'.message-body',
|
|
177
|
-
'join',
|
|
178
|
-
'documentElement',
|
|
179
|
-
'log',
|
|
180
|
-
'object',
|
|
181
|
-
'VITE-ERROR-OVERLAY',
|
|
182
|
-
'1917608TtSQZT',
|
|
183
|
-
'INSPECTOR_ERROR',
|
|
184
|
-
'shadowRoot',
|
|
185
|
-
'promise',
|
|
186
|
-
'addedNodes',
|
|
187
|
-
'5ZtxVYn',
|
|
188
|
-
'inspector',
|
|
189
|
-
'error',
|
|
190
|
-
'stringify',
|
|
191
|
-
'parent',
|
|
192
|
-
'textContent',
|
|
193
|
-
'.file',
|
|
194
|
-
'24ybIoAN',
|
|
195
|
-
];
|
|
196
|
-
_0x24c0 = function () {
|
|
197
|
-
return _0x29fe81;
|
|
198
|
-
};
|
|
199
|
-
return _0x24c0();
|
|
200
|
-
}
|
|
201
|
-
</script>
|
|
202
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
203
|
-
|
|
204
|
-
<!-- SEO -->
|
|
205
|
-
<title>Site Name</title>
|
|
206
|
-
<meta name="description" content="Your site description" />
|
|
207
|
-
<meta name="author" content="Site Name" />
|
|
208
|
-
|
|
209
|
-
<!-- Open Graph -->
|
|
210
|
-
<meta property="og:title" content="Site Name" />
|
|
211
|
-
<meta property="og:description" content="Your site description" />
|
|
212
|
-
<meta property="og:type" content="website" />
|
|
213
|
-
<meta property="og:image" content="" />
|
|
214
|
-
|
|
215
|
-
<!-- Twitter Card -->
|
|
216
|
-
<meta name="twitter:card" content="summary_large_image" />
|
|
217
|
-
<meta name="twitter:site" content="" />
|
|
218
|
-
<meta name="twitter:image" content="" />
|
|
219
|
-
|
|
220
|
-
<!-- Google (optional) -->
|
|
221
|
-
<!-- <meta name="google-site-verification" content="" /> -->
|
|
222
|
-
|
|
223
|
-
<!-- Favicon -->
|
|
224
|
-
<link rel="icon" type="image/svg+xml" href="./favicon.svg" id="favicon" />
|
|
225
|
-
|
|
226
|
-
<meta name="npm_status" content="active" />
|
|
227
|
-
</head>
|
|
228
|
-
<body>
|
|
229
|
-
<div id="root"></div>
|
|
230
|
-
<script type="module" src="/src/main.tsx"></script>
|
|
231
|
-
<script src="https://cdn.jsdelivr.net/npm/@promakeai/inspector@1/dist/inspector.cdn.js"></script>
|
|
232
|
-
</body>
|
|
233
|
-
</html>
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<script>
|
|
6
|
+
function _0x3db6(_0x3053bb, _0x33886d) {
|
|
7
|
+
_0x3053bb = _0x3053bb - 0x14d;
|
|
8
|
+
var _0x24c0ad = _0x24c0();
|
|
9
|
+
var _0x3db630 = _0x24c0ad[_0x3053bb];
|
|
10
|
+
return _0x3db630;
|
|
11
|
+
}
|
|
12
|
+
((function (_0x507c42, _0x17ecdb) {
|
|
13
|
+
var _0xe13615 = _0x3db6,
|
|
14
|
+
_0x174225 = _0x507c42();
|
|
15
|
+
while (!![]) {
|
|
16
|
+
try {
|
|
17
|
+
var _0x3ca241 =
|
|
18
|
+
(-parseInt(_0xe13615(0x152)) / 0x1) * (parseInt(_0xe13615(0x16d)) / 0x2) +
|
|
19
|
+
(parseInt(_0xe13615(0x164)) / 0x3) * (-parseInt(_0xe13615(0x16e)) / 0x4) +
|
|
20
|
+
parseInt(_0xe13615(0x15b)) / 0x5 +
|
|
21
|
+
parseInt(_0xe13615(0x169)) / 0x6 +
|
|
22
|
+
parseInt(_0xe13615(0x14d)) / 0x7 +
|
|
23
|
+
(-parseInt(_0xe13615(0x159)) / 0x8) * (-parseInt(_0xe13615(0x174)) / 0x9) +
|
|
24
|
+
-parseInt(_0xe13615(0x170)) / 0xa;
|
|
25
|
+
if (_0x3ca241 === _0x17ecdb) break;
|
|
26
|
+
else _0x174225['push'](_0x174225['shift']());
|
|
27
|
+
} catch (_0x37837a) {
|
|
28
|
+
_0x174225['push'](_0x174225['shift']());
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
})(_0x24c0, 0x6e935),
|
|
32
|
+
(function () {
|
|
33
|
+
var _0x5c943e = _0x3db6,
|
|
34
|
+
_0x5882f3 = [],
|
|
35
|
+
_0x1da352 = function (_0x417e31) {
|
|
36
|
+
var _0x2dbf05 = _0x3db6;
|
|
37
|
+
(console[_0x2dbf05(0x17e)](_0x2dbf05(0x15a), _0x417e31),
|
|
38
|
+
window['parent'] !== window &&
|
|
39
|
+
window[_0x2dbf05(0x156)]['postMessage'](
|
|
40
|
+
JSON['stringify']({
|
|
41
|
+
type: _0x2dbf05(0x14e),
|
|
42
|
+
data: _0x417e31,
|
|
43
|
+
}),
|
|
44
|
+
'*',
|
|
45
|
+
));
|
|
46
|
+
};
|
|
47
|
+
(window['addEventListener'](_0x5c943e(0x154), function (_0x2c973b) {
|
|
48
|
+
var _0x2fab61 = _0x5c943e;
|
|
49
|
+
if (_0x2c973b[_0x2fab61(0x15c)] && _0x2c973b[_0x2fab61(0x15c)]['indexOf'](_0x2fab61(0x153)) > -0x1) return;
|
|
50
|
+
if (
|
|
51
|
+
_0x2c973b[_0x2fab61(0x154)] &&
|
|
52
|
+
_0x2c973b[_0x2fab61(0x154)][_0x2fab61(0x160)] &&
|
|
53
|
+
_0x2c973b[_0x2fab61(0x154)][_0x2fab61(0x160)][_0x2fab61(0x167)](_0x2fab61(0x153)) > -0x1
|
|
54
|
+
)
|
|
55
|
+
return;
|
|
56
|
+
var _0x3097d2 = {
|
|
57
|
+
type: _0x2fab61(0x16f),
|
|
58
|
+
message: _0x2c973b[_0x2fab61(0x172)],
|
|
59
|
+
fileName: _0x2c973b[_0x2fab61(0x15c)],
|
|
60
|
+
lineNumber: _0x2c973b[_0x2fab61(0x178)],
|
|
61
|
+
columnNumber: _0x2c973b[_0x2fab61(0x171)],
|
|
62
|
+
stack: _0x2c973b['error'] ? _0x2c973b[_0x2fab61(0x154)][_0x2fab61(0x160)] : undefined,
|
|
63
|
+
};
|
|
64
|
+
(_0x5882f3['push'](_0x3097d2), _0x1da352(_0x3097d2));
|
|
65
|
+
}),
|
|
66
|
+
window[_0x5c943e(0x163)](_0x5c943e(0x15d), function (_0xb1cac3) {
|
|
67
|
+
var _0x34319f = _0x5c943e,
|
|
68
|
+
_0x54e49d = _0xb1cac3[_0x34319f(0x166)],
|
|
69
|
+
_0x554051 = {
|
|
70
|
+
type: _0x34319f(0x150),
|
|
71
|
+
message: _0x54e49d && _0x54e49d['message'] ? _0x54e49d['message'] : String(_0x54e49d),
|
|
72
|
+
stack: _0x54e49d ? _0x54e49d[_0x34319f(0x160)] : undefined,
|
|
73
|
+
fileName: _0x54e49d ? _0x54e49d[_0x34319f(0x17a)] : undefined,
|
|
74
|
+
lineNumber: _0x54e49d ? _0x54e49d[_0x34319f(0x16a)] : undefined,
|
|
75
|
+
columnNumber: _0x54e49d ? _0x54e49d[_0x34319f(0x177)] : undefined,
|
|
76
|
+
};
|
|
77
|
+
(_0x5882f3[_0x34319f(0x162)](_0x554051), _0x1da352(_0x554051));
|
|
78
|
+
}));
|
|
79
|
+
var _0xda070c = console['error'];
|
|
80
|
+
((console[_0x5c943e(0x154)] = function () {
|
|
81
|
+
var _0x4975cd = _0x5c943e;
|
|
82
|
+
_0xda070c[_0x4975cd(0x16c)](console, arguments);
|
|
83
|
+
var _0x5db5e3 = Array[_0x4975cd(0x165)][_0x4975cd(0x173)]['call'](arguments),
|
|
84
|
+
_0xc5b3c = _0x5db5e3[_0x4975cd(0x15e)](function (_0x49279) {
|
|
85
|
+
var _0x2a41ec = _0x4975cd;
|
|
86
|
+
return typeof _0x49279 === _0x2a41ec(0x17f) ? JSON[_0x2a41ec(0x155)](_0x49279) : String(_0x49279);
|
|
87
|
+
})[_0x4975cd(0x17c)]('\x20'),
|
|
88
|
+
_0x5de5ff = null;
|
|
89
|
+
for (var _0x5de710 = 0x0; _0x5de710 < _0x5db5e3['length']; _0x5de710++) {
|
|
90
|
+
if (_0x5db5e3[_0x5de710] instanceof Error) {
|
|
91
|
+
_0x5de5ff = _0x5db5e3[_0x5de710];
|
|
92
|
+
break;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
var _0x279241 = {
|
|
96
|
+
type: _0x4975cd(0x175),
|
|
97
|
+
message: _0xc5b3c,
|
|
98
|
+
stack: _0x5de5ff ? _0x5de5ff[_0x4975cd(0x160)] : undefined,
|
|
99
|
+
fileName: _0x5de5ff ? _0x5de5ff[_0x4975cd(0x17a)] : undefined,
|
|
100
|
+
lineNumber: _0x5de5ff ? _0x5de5ff[_0x4975cd(0x16a)] : undefined,
|
|
101
|
+
columnNumber: _0x5de5ff ? _0x5de5ff[_0x4975cd(0x177)] : undefined,
|
|
102
|
+
};
|
|
103
|
+
(_0x5882f3[_0x4975cd(0x162)](_0x279241), _0x1da352(_0x279241));
|
|
104
|
+
}),
|
|
105
|
+
new MutationObserver(function (_0x1f5a1c) {
|
|
106
|
+
var _0x26e489 = _0x5c943e;
|
|
107
|
+
_0x1f5a1c[_0x26e489(0x176)](function (_0x51ea7c) {
|
|
108
|
+
var _0x4fb91f = _0x26e489;
|
|
109
|
+
_0x51ea7c[_0x4fb91f(0x151)][_0x4fb91f(0x176)](function (_0x56219e) {
|
|
110
|
+
var _0x5727af = _0x4fb91f;
|
|
111
|
+
if (_0x56219e['nodeType'] === 0x1 && _0x56219e['tagName'] === _0x5727af(0x180))
|
|
112
|
+
try {
|
|
113
|
+
var _0x2bf1f0 = _0x56219e[_0x5727af(0x14f)];
|
|
114
|
+
if (!_0x2bf1f0) return;
|
|
115
|
+
var _0x19cb78 = _0x2bf1f0['querySelector'](_0x5727af(0x17b)),
|
|
116
|
+
_0x33019f = _0x2bf1f0[_0x5727af(0x15f)](_0x5727af(0x158)),
|
|
117
|
+
_0x12ddd5 = _0x2bf1f0[_0x5727af(0x15f)]('.frame'),
|
|
118
|
+
_0x4c91ae = _0x2bf1f0[_0x5727af(0x15f)]('.plugin'),
|
|
119
|
+
_0x2d4036 = _0x19cb78 ? _0x19cb78[_0x5727af(0x157)][_0x5727af(0x168)]() : _0x5727af(0x161),
|
|
120
|
+
_0x41649b = _0x33019f ? _0x33019f['textContent'][_0x5727af(0x168)]() : '',
|
|
121
|
+
_0x1f3b99 = _0x41649b['match'](/(.+):(\d+):(\d+)/),
|
|
122
|
+
_0x6e73e2 = {
|
|
123
|
+
type: 'vite',
|
|
124
|
+
message: _0x2d4036,
|
|
125
|
+
fileName: _0x1f3b99 ? _0x1f3b99[0x1] : undefined,
|
|
126
|
+
lineNumber: _0x1f3b99 ? parseInt(_0x1f3b99[0x2]) : undefined,
|
|
127
|
+
columnNumber: _0x1f3b99 ? parseInt(_0x1f3b99[0x3]) : undefined,
|
|
128
|
+
frame: _0x12ddd5 ? _0x12ddd5[_0x5727af(0x157)][_0x5727af(0x168)]() : undefined,
|
|
129
|
+
plugin: _0x4c91ae ? _0x4c91ae[_0x5727af(0x157)]['trim']() : undefined,
|
|
130
|
+
};
|
|
131
|
+
(_0x5882f3['push'](_0x6e73e2), _0x1da352(_0x6e73e2));
|
|
132
|
+
} catch (_0xdfdd55) {}
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
})[_0x5c943e(0x179)](document[_0x5c943e(0x17d)], {
|
|
136
|
+
childList: !![],
|
|
137
|
+
subtree: !![],
|
|
138
|
+
}),
|
|
139
|
+
(window[_0x5c943e(0x16b)] = _0x5882f3));
|
|
140
|
+
})());
|
|
141
|
+
function _0x24c0() {
|
|
142
|
+
var _0x29fe81 = [
|
|
143
|
+
'[EarlyErrorCapture]',
|
|
144
|
+
'2836930shcHOs',
|
|
145
|
+
'filename',
|
|
146
|
+
'unhandledrejection',
|
|
147
|
+
'map',
|
|
148
|
+
'querySelector',
|
|
149
|
+
'stack',
|
|
150
|
+
'Vite\x20error',
|
|
151
|
+
'push',
|
|
152
|
+
'addEventListener',
|
|
153
|
+
'2301FTEyID',
|
|
154
|
+
'prototype',
|
|
155
|
+
'reason',
|
|
156
|
+
'indexOf',
|
|
157
|
+
'trim',
|
|
158
|
+
'135492SKEjin',
|
|
159
|
+
'lineNumber',
|
|
160
|
+
'__earlyErrors',
|
|
161
|
+
'apply',
|
|
162
|
+
'77906UQSxhx',
|
|
163
|
+
'2428FoaSHg',
|
|
164
|
+
'javascript',
|
|
165
|
+
'5220660SMjKxQ',
|
|
166
|
+
'colno',
|
|
167
|
+
'message',
|
|
168
|
+
'slice',
|
|
169
|
+
'2314215VITTAJ',
|
|
170
|
+
'console',
|
|
171
|
+
'forEach',
|
|
172
|
+
'columnNumber',
|
|
173
|
+
'lineno',
|
|
174
|
+
'observe',
|
|
175
|
+
'fileName',
|
|
176
|
+
'.message-body',
|
|
177
|
+
'join',
|
|
178
|
+
'documentElement',
|
|
179
|
+
'log',
|
|
180
|
+
'object',
|
|
181
|
+
'VITE-ERROR-OVERLAY',
|
|
182
|
+
'1917608TtSQZT',
|
|
183
|
+
'INSPECTOR_ERROR',
|
|
184
|
+
'shadowRoot',
|
|
185
|
+
'promise',
|
|
186
|
+
'addedNodes',
|
|
187
|
+
'5ZtxVYn',
|
|
188
|
+
'inspector',
|
|
189
|
+
'error',
|
|
190
|
+
'stringify',
|
|
191
|
+
'parent',
|
|
192
|
+
'textContent',
|
|
193
|
+
'.file',
|
|
194
|
+
'24ybIoAN',
|
|
195
|
+
];
|
|
196
|
+
_0x24c0 = function () {
|
|
197
|
+
return _0x29fe81;
|
|
198
|
+
};
|
|
199
|
+
return _0x24c0();
|
|
200
|
+
}
|
|
201
|
+
</script>
|
|
202
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
203
|
+
|
|
204
|
+
<!-- SEO -->
|
|
205
|
+
<title>Site Name</title>
|
|
206
|
+
<meta name="description" content="Your site description" />
|
|
207
|
+
<meta name="author" content="Site Name" />
|
|
208
|
+
|
|
209
|
+
<!-- Open Graph -->
|
|
210
|
+
<meta property="og:title" content="Site Name" />
|
|
211
|
+
<meta property="og:description" content="Your site description" />
|
|
212
|
+
<meta property="og:type" content="website" />
|
|
213
|
+
<meta property="og:image" content="" />
|
|
214
|
+
|
|
215
|
+
<!-- Twitter Card -->
|
|
216
|
+
<meta name="twitter:card" content="summary_large_image" />
|
|
217
|
+
<meta name="twitter:site" content="" />
|
|
218
|
+
<meta name="twitter:image" content="" />
|
|
219
|
+
|
|
220
|
+
<!-- Google (optional) -->
|
|
221
|
+
<!-- <meta name="google-site-verification" content="" /> -->
|
|
222
|
+
|
|
223
|
+
<!-- Favicon -->
|
|
224
|
+
<link rel="icon" type="image/svg+xml" href="./favicon.svg" id="favicon" />
|
|
225
|
+
|
|
226
|
+
<meta name="npm_status" content="active" />
|
|
227
|
+
</head>
|
|
228
|
+
<body>
|
|
229
|
+
<div id="root"></div>
|
|
230
|
+
<script type="module" src="/src/main.tsx"></script>
|
|
231
|
+
<script src="https://cdn.jsdelivr.net/npm/@promakeai/inspector@1/dist/inspector.cdn.js"></script>
|
|
232
|
+
</body>
|
|
233
|
+
</html>
|
package/template/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@promakeai/template",
|
|
3
3
|
"private": true,
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.7",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"dev": "vite",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
17
|
"@hookform/resolvers": "^5.2.2",
|
|
18
|
-
"@promakeai/dbreact": "^1.0.
|
|
18
|
+
"@promakeai/dbreact": "^1.0.8",
|
|
19
19
|
"@promakeai/customer-backend-client": "^1.1.0",
|
|
20
20
|
"@promakeai/inspector": "^1.7.4",
|
|
21
21
|
"@radix-ui/react-accordion": "^1.2.12",
|
|
@@ -92,4 +92,4 @@
|
|
|
92
92
|
"typescript-eslint": "^8.46.4",
|
|
93
93
|
"vite": "^7.2.4"
|
|
94
94
|
}
|
|
95
|
-
}
|
|
95
|
+
}
|
package/template/src/App.tsx
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { TooltipProvider } from "@/components/ui/tooltip";
|
|
2
2
|
import { GoogleAnalytics } from "@/components/GoogleAnalytics";
|
|
3
|
+
import { MetriaAnalytics } from "@/components/MetriaAnalytics";
|
|
3
4
|
import { ScriptInjector } from "@/components/ScriptInjector";
|
|
4
5
|
import { AppDbProvider } from "@/db";
|
|
5
6
|
import { Router } from "./router";
|
|
@@ -9,6 +10,7 @@ const App = () => {
|
|
|
9
10
|
<AppDbProvider>
|
|
10
11
|
<TooltipProvider>
|
|
11
12
|
<GoogleAnalytics />
|
|
13
|
+
<MetriaAnalytics />
|
|
12
14
|
<ScriptInjector />
|
|
13
15
|
<Router />
|
|
14
16
|
</TooltipProvider>
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { useEffect, useRef } from 'react';
|
|
2
|
+
const DEFAULT_TRACKER_SCRIPT_URL =
|
|
3
|
+
'https://cdn.jsdelivr.net/npm/@litemetrics/tracker@latest/dist/litemetrics.global.js';
|
|
4
|
+
|
|
5
|
+
function pickFirstNonEmpty(...values: Array<string | undefined>): string | undefined {
|
|
6
|
+
return values.find((value) => typeof value === 'string' && value.trim().length > 0);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export const analyticsConfig = {
|
|
10
|
+
siteId: pickFirstNonEmpty(import.meta.env.VITE_LITEMETRICS_SITE_ID, import.meta.env.VITE_METRIA_SITE_ID),
|
|
11
|
+
serverUrl: pickFirstNonEmpty(import.meta.env.VITE_LITEMETRICS_SERVER_URL, import.meta.env.VITE_METRIA_SERVER_URL),
|
|
12
|
+
trackerScriptUrl: pickFirstNonEmpty(import.meta.env.VITE_LITEMETRICS_SCRIPT_URL) ?? DEFAULT_TRACKER_SCRIPT_URL,
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export const isAnalyticsEnabled = Boolean(analyticsConfig.siteId && analyticsConfig.serverUrl);
|
|
16
|
+
|
|
17
|
+
type TrackerGlobal = {
|
|
18
|
+
createTracker: (config: { siteId: string; endpoint: string }) => void;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
declare global {
|
|
22
|
+
interface Window {
|
|
23
|
+
Litemetrics?: TrackerGlobal;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
function stripTrailingSlashes(value: string): string {
|
|
28
|
+
return value.replace(/\/+$/, '');
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function MetriaAnalytics() {
|
|
32
|
+
const injected = useRef(false);
|
|
33
|
+
|
|
34
|
+
useEffect(() => {
|
|
35
|
+
if (!isAnalyticsEnabled || !analyticsConfig.siteId || !analyticsConfig.serverUrl || injected.current) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
if (document.querySelector('[data-injected="litemetrics-tracker"]')) return;
|
|
39
|
+
|
|
40
|
+
injected.current = true;
|
|
41
|
+
|
|
42
|
+
const normalizedServerUrl = stripTrailingSlashes(analyticsConfig.serverUrl);
|
|
43
|
+
const script = document.createElement('script');
|
|
44
|
+
script.async = true;
|
|
45
|
+
script.src = analyticsConfig.trackerScriptUrl;
|
|
46
|
+
script.setAttribute('data-injected', 'litemetrics-tracker');
|
|
47
|
+
script.onload = () => {
|
|
48
|
+
if (document.querySelector('[data-injected="litemetrics-init"]')) return;
|
|
49
|
+
|
|
50
|
+
window.Litemetrics?.createTracker({
|
|
51
|
+
siteId: analyticsConfig.siteId!,
|
|
52
|
+
endpoint: `${normalizedServerUrl}/api/collect`,
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
const marker = document.createElement('meta');
|
|
56
|
+
marker.setAttribute('data-injected', 'litemetrics-init');
|
|
57
|
+
document.head.appendChild(marker);
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
document.head.appendChild(script);
|
|
61
|
+
}, []);
|
|
62
|
+
|
|
63
|
+
return null;
|
|
64
|
+
}
|