viewgate-wrapper 1.8.2 → 1.9.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.
- package/dist/components/ViewGateOverlay.d.ts.map +1 -1
- package/dist/viewgate-wrapper.js +329 -293
- package/dist/viewgate-wrapper.umd.cjs +6 -6
- package/package.json +1 -1
- package/dist/cli.js +0 -74
- package/dist/plugin/next-loader.js +0 -11
- package/dist/plugin/transform-logic.js +0 -20
- package/dist/plugin/vite-plugin-viewgate.js +0 -14
package/dist/viewgate-wrapper.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
(function(){"use strict";try{if(typeof document<"u"){var r=document.createElement("style");r.appendChild(document.createTextNode('@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800;900&display=swap";:root{--vg-primary: #2513ec;--vg-primary-gradient: linear-gradient(135deg, #2513ec 0%, #7e3ff2 100%);--vg-glass: rgba(255, 255, 255, .7);--vg-glass-border: rgba(255, 255, 255, .3);--vg-shadow: 0 8px 32px 0 rgba(31, 38, 135, .37);--vg-radius: 16px}body{font-family:Inter,system-ui,-apple-system,sans-serif!important;margin:0}.vg-glassmorphism{background:var(--vg-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--vg-glass-border);box-shadow:var(--vg-shadow);border-radius:var(--vg-radius)}.vg-button-primary{background:var(--vg-primary-gradient);color:#fff;border:none;padding:10px 24px;border-radius:12px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 12px #2513ec4d}.vg-button-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #2513ec66}.vg-button-ghost{background:transparent;color:#444;border:1px solid #ddd;padding:10px 24px;border-radius:12px;cursor:pointer;transition:background .2s}.vg-button-ghost:hover{background:#0000000d}.vg-badge{background:#2513ec1a;color:var(--vg-primary);padding:4px 12px;border-radius:20px;font-size:12px;font-family:JetBrains Mono,monospace;font-weight:700;border:1px solid rgba(37,19,236,.2)}.vg-textarea{width:100%;border:1.5px solid #eee;border-radius:12px;padding:12px;font-family:inherit;color:#0f172a;resize:none;transition:border-color .2s,box-shadow .2s;outline:none}.vg-textarea:focus{border-color:var(--vg-primary);box-shadow:0 0 0 4px #2513ec1a}@keyframes vg-slide-in{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes vg-fade-in{0%{opacity:0}to{opacity:1}}.vg-animate-slide{animation:vg-slide-in .3s cubic-bezier(.16,1,.3,1)}.vg-animate-fade{animation:vg-fade-in .2s ease-out}.vg-toasts{position:fixed;top:24px;right:24px;display:flex;flex-direction:column;gap:12px;z-index:100000}.vg-toast{padding:16px 24px;display:flex;align-items:center;gap:12px;min-width:300px}.vg-toast.success{background:#ecfdf5;border:1px solid #10b981;color:#065f46}.vg-toast.error{background:#fef2f2;border:1px solid #ef4444;color:#991b1b}.vg-cursor-pointer *{cursor:pointer!important}@keyframes vg-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vg-spinner{border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;width:40px;height:40px;animation:vg-spin 1s linear infinite;margin-bottom:16px}')),document.head.appendChild(r)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})();
|
|
2
|
-
import Ae, { createContext as Ge, useState as
|
|
3
|
-
var
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var r=document.createElement("style");r.appendChild(document.createTextNode('@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800;900&display=swap";:root{--vg-primary: #2513ec;--vg-primary-gradient: linear-gradient(135deg, #2513ec 0%, #7e3ff2 100%);--vg-glass: rgba(255, 255, 255, .7);--vg-glass-border: rgba(255, 255, 255, .3);--vg-shadow: 0 8px 32px 0 rgba(31, 38, 135, .37);--vg-radius: 16px}body{font-family:Inter,system-ui,-apple-system,sans-serif!important;margin:0}.vg-glassmorphism{background:var(--vg-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--vg-glass-border);box-shadow:var(--vg-shadow);border-radius:var(--vg-radius)}.vg-button-primary{background:var(--vg-primary-gradient);color:#fff;border:none;padding:10px 24px;border-radius:12px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 12px #2513ec4d}.vg-button-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #2513ec66}.vg-button-ghost{background:transparent;color:#444;border:1px solid #ddd;padding:10px 24px;border-radius:12px;cursor:pointer;transition:background .2s}.vg-button-ghost:hover{background:#0000000d}.vg-badge{background:#2513ec1a;color:var(--vg-primary);padding:4px 12px;border-radius:20px;font-size:12px;font-family:JetBrains Mono,monospace;font-weight:700;border:1px solid rgba(37,19,236,.2)}.vg-textarea{width:100%;border:1.5px solid #eee;border-radius:12px;padding:12px;font-family:inherit;color:#0f172a;resize:none;transition:border-color .2s,box-shadow .2s;outline:none}.vg-textarea:focus{border-color:var(--vg-primary);box-shadow:0 0 0 4px #2513ec1a}@keyframes vg-slide-in{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes vg-fade-in{0%{opacity:0}to{opacity:1}}.vg-animate-slide{animation:vg-slide-in .3s cubic-bezier(.16,1,.3,1)}.vg-animate-fade{animation:vg-fade-in .2s ease-out}.vg-toasts{position:fixed;top:24px;right:24px;display:flex;flex-direction:column;gap:12px;z-index:100000}.vg-toast{padding:16px 24px;display:flex;align-items:center;gap:12px;min-width:300px}.vg-toast.success{background:#ecfdf5;border:1px solid #10b981;color:#065f46}.vg-toast.error{background:#fef2f2;border:1px solid #ef4444;color:#991b1b}.vg-cursor-pointer *{cursor:pointer!important}@keyframes vg-pulse-green{0%{box-shadow:0 0 #10b981b3;border-color:#10b981}70%{box-shadow:0 0 0 15px #10b98100;border-color:#10b981}to{box-shadow:0 0 #10b98100;border-color:#10b981}}.vg-highlight-active{animation:vg-pulse-green 2s infinite!important;outline:4px solid #10b981!important;outline-offset:2px!important;transition:all .3s ease!important;position:relative!important;z-index:9999!important}.vg-highlight-active:after{content:"✓ Revised";position:absolute;top:-25px;left:0;background:#10b981;color:#fff;padding:2px 8px;border-radius:4px;font-size:10px;font-weight:800;text-transform:uppercase;white-space:nowrap;pointer-events:none}@keyframes vg-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vg-spinner{border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;width:40px;height:40px;animation:vg-spin 1s linear infinite;margin-bottom:16px}')),document.head.appendChild(r)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})();
|
|
2
|
+
import Ae, { createContext as Ge, useState as C, useContext as Le, useCallback as oe, useEffect as Z } from "react";
|
|
3
|
+
var K = { exports: {} }, U = {};
|
|
4
4
|
var de;
|
|
5
|
-
function
|
|
6
|
-
if (de) return
|
|
5
|
+
function $e() {
|
|
6
|
+
if (de) return U;
|
|
7
7
|
de = 1;
|
|
8
8
|
var e = /* @__PURE__ */ Symbol.for("react.transitional.element"), t = /* @__PURE__ */ Symbol.for("react.fragment");
|
|
9
9
|
function r(n, a, s) {
|
|
@@ -21,50 +21,50 @@ function Le() {
|
|
|
21
21
|
props: s
|
|
22
22
|
};
|
|
23
23
|
}
|
|
24
|
-
return
|
|
24
|
+
return U.Fragment = t, U.jsx = r, U.jsxs = r, U;
|
|
25
25
|
}
|
|
26
|
-
var
|
|
26
|
+
var Y = {};
|
|
27
27
|
var fe;
|
|
28
28
|
function Ie() {
|
|
29
29
|
return fe || (fe = 1, process.env.NODE_ENV !== "production" && (function() {
|
|
30
30
|
function e(o) {
|
|
31
31
|
if (o == null) return null;
|
|
32
32
|
if (typeof o == "function")
|
|
33
|
-
return o.$$typeof ===
|
|
33
|
+
return o.$$typeof === P ? null : o.displayName || o.name || null;
|
|
34
34
|
if (typeof o == "string") return o;
|
|
35
35
|
switch (o) {
|
|
36
|
-
case
|
|
36
|
+
case V:
|
|
37
37
|
return "Fragment";
|
|
38
|
-
case
|
|
38
|
+
case B:
|
|
39
39
|
return "Profiler";
|
|
40
|
-
case
|
|
40
|
+
case N:
|
|
41
41
|
return "StrictMode";
|
|
42
|
-
case
|
|
42
|
+
case M:
|
|
43
43
|
return "Suspense";
|
|
44
|
-
case
|
|
44
|
+
case ne:
|
|
45
45
|
return "SuspenseList";
|
|
46
|
-
case
|
|
46
|
+
case J:
|
|
47
47
|
return "Activity";
|
|
48
48
|
}
|
|
49
49
|
if (typeof o == "object")
|
|
50
50
|
switch (typeof o.tag == "number" && console.error(
|
|
51
51
|
"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
|
|
52
52
|
), o.$$typeof) {
|
|
53
|
-
case
|
|
53
|
+
case q:
|
|
54
54
|
return "Portal";
|
|
55
|
-
case
|
|
55
|
+
case re:
|
|
56
56
|
return o.displayName || "Context";
|
|
57
|
-
case
|
|
57
|
+
case D:
|
|
58
58
|
return (o._context.displayName || "Context") + ".Consumer";
|
|
59
|
-
case
|
|
60
|
-
var
|
|
61
|
-
return o = o.displayName, o || (o =
|
|
62
|
-
case
|
|
63
|
-
return
|
|
64
|
-
case
|
|
65
|
-
|
|
59
|
+
case A:
|
|
60
|
+
var p = o.render;
|
|
61
|
+
return o = o.displayName, o || (o = p.displayName || p.name || "", o = o !== "" ? "ForwardRef(" + o + ")" : "ForwardRef"), o;
|
|
62
|
+
case se:
|
|
63
|
+
return p = o.displayName || null, p !== null ? p : e(o.type) || "Memo";
|
|
64
|
+
case H:
|
|
65
|
+
p = o._payload, o = o._init;
|
|
66
66
|
try {
|
|
67
|
-
return e(o(
|
|
67
|
+
return e(o(p));
|
|
68
68
|
} catch {
|
|
69
69
|
}
|
|
70
70
|
}
|
|
@@ -76,50 +76,50 @@ function Ie() {
|
|
|
76
76
|
function r(o) {
|
|
77
77
|
try {
|
|
78
78
|
t(o);
|
|
79
|
-
var
|
|
79
|
+
var p = !1;
|
|
80
80
|
} catch {
|
|
81
|
-
|
|
81
|
+
p = !0;
|
|
82
82
|
}
|
|
83
|
-
if (
|
|
84
|
-
|
|
85
|
-
var x =
|
|
83
|
+
if (p) {
|
|
84
|
+
p = console;
|
|
85
|
+
var x = p.error, y = typeof Symbol == "function" && Symbol.toStringTag && o[Symbol.toStringTag] || o.constructor.name || "Object";
|
|
86
86
|
return x.call(
|
|
87
|
-
|
|
87
|
+
p,
|
|
88
88
|
"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
|
|
89
|
-
|
|
89
|
+
y
|
|
90
90
|
), t(o);
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
93
|
function n(o) {
|
|
94
|
-
if (o ===
|
|
95
|
-
if (typeof o == "object" && o !== null && o.$$typeof ===
|
|
94
|
+
if (o === V) return "<>";
|
|
95
|
+
if (typeof o == "object" && o !== null && o.$$typeof === H)
|
|
96
96
|
return "<...>";
|
|
97
97
|
try {
|
|
98
|
-
var
|
|
99
|
-
return
|
|
98
|
+
var p = e(o);
|
|
99
|
+
return p ? "<" + p + ">" : "<...>";
|
|
100
100
|
} catch {
|
|
101
101
|
return "<...>";
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
function a() {
|
|
105
|
-
var o =
|
|
105
|
+
var o = G.A;
|
|
106
106
|
return o === null ? null : o.getOwner();
|
|
107
107
|
}
|
|
108
108
|
function s() {
|
|
109
109
|
return Error("react-stack-top-frame");
|
|
110
110
|
}
|
|
111
111
|
function i(o) {
|
|
112
|
-
if (
|
|
113
|
-
var
|
|
114
|
-
if (
|
|
112
|
+
if (T.call(o, "key")) {
|
|
113
|
+
var p = Object.getOwnPropertyDescriptor(o, "key").get;
|
|
114
|
+
if (p && p.isReactWarning) return !1;
|
|
115
115
|
}
|
|
116
116
|
return o.key !== void 0;
|
|
117
117
|
}
|
|
118
|
-
function c(o,
|
|
118
|
+
function c(o, p) {
|
|
119
119
|
function x() {
|
|
120
|
-
|
|
120
|
+
X || (X = !0, console.error(
|
|
121
121
|
"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
|
|
122
|
-
|
|
122
|
+
p
|
|
123
123
|
));
|
|
124
124
|
}
|
|
125
125
|
x.isReactWarning = !0, Object.defineProperty(o, "key", {
|
|
@@ -129,19 +129,19 @@ function Ie() {
|
|
|
129
129
|
}
|
|
130
130
|
function u() {
|
|
131
131
|
var o = e(this.type);
|
|
132
|
-
return
|
|
132
|
+
return W[o] || (W[o] = !0, console.error(
|
|
133
133
|
"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
|
|
134
134
|
)), o = this.props.ref, o !== void 0 ? o : null;
|
|
135
135
|
}
|
|
136
|
-
function d(o,
|
|
137
|
-
var
|
|
136
|
+
function d(o, p, x, y, R, L) {
|
|
137
|
+
var w = x.ref;
|
|
138
138
|
return o = {
|
|
139
|
-
$$typeof:
|
|
139
|
+
$$typeof: j,
|
|
140
140
|
type: o,
|
|
141
|
-
key:
|
|
141
|
+
key: p,
|
|
142
142
|
props: x,
|
|
143
|
-
_owner:
|
|
144
|
-
}, (
|
|
143
|
+
_owner: y
|
|
144
|
+
}, (w !== void 0 ? w : null) !== null ? Object.defineProperty(o, "ref", {
|
|
145
145
|
enumerable: !1,
|
|
146
146
|
get: u
|
|
147
147
|
}) : Object.defineProperty(o, "ref", { enumerable: !1, value: null }), o._store = {}, Object.defineProperty(o._store, "validated", {
|
|
@@ -158,69 +158,69 @@ function Ie() {
|
|
|
158
158
|
configurable: !1,
|
|
159
159
|
enumerable: !1,
|
|
160
160
|
writable: !0,
|
|
161
|
-
value:
|
|
161
|
+
value: R
|
|
162
162
|
}), Object.defineProperty(o, "_debugTask", {
|
|
163
163
|
configurable: !1,
|
|
164
164
|
enumerable: !1,
|
|
165
165
|
writable: !0,
|
|
166
|
-
value:
|
|
166
|
+
value: L
|
|
167
167
|
}), Object.freeze && (Object.freeze(o.props), Object.freeze(o)), o;
|
|
168
168
|
}
|
|
169
|
-
function
|
|
170
|
-
var
|
|
171
|
-
if (
|
|
172
|
-
if (
|
|
173
|
-
if (
|
|
174
|
-
for (
|
|
175
|
-
g(
|
|
176
|
-
Object.freeze && Object.freeze(
|
|
169
|
+
function h(o, p, x, y, R, L) {
|
|
170
|
+
var w = p.children;
|
|
171
|
+
if (w !== void 0)
|
|
172
|
+
if (y)
|
|
173
|
+
if (z(w)) {
|
|
174
|
+
for (y = 0; y < w.length; y++)
|
|
175
|
+
g(w[y]);
|
|
176
|
+
Object.freeze && Object.freeze(w);
|
|
177
177
|
} else
|
|
178
178
|
console.error(
|
|
179
179
|
"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
|
|
180
180
|
);
|
|
181
|
-
else g(
|
|
182
|
-
if (
|
|
183
|
-
|
|
184
|
-
var $ = Object.keys(
|
|
181
|
+
else g(w);
|
|
182
|
+
if (T.call(p, "key")) {
|
|
183
|
+
w = e(o);
|
|
184
|
+
var $ = Object.keys(p).filter(function(Ve) {
|
|
185
185
|
return Ve !== "key";
|
|
186
186
|
});
|
|
187
|
-
|
|
187
|
+
y = 0 < $.length ? "{key: someKey, " + $.join(": ..., ") + ": ...}" : "{key: someKey}", k[w + y] || ($ = 0 < $.length ? "{" + $.join(": ..., ") + ": ...}" : "{}", console.error(
|
|
188
188
|
`A props object containing a "key" prop is being spread into JSX:
|
|
189
189
|
let props = %s;
|
|
190
190
|
<%s {...props} />
|
|
191
191
|
React keys must be passed directly to JSX without using spread:
|
|
192
192
|
let props = %s;
|
|
193
193
|
<%s key={someKey} {...props} />`,
|
|
194
|
+
y,
|
|
194
195
|
w,
|
|
195
|
-
v,
|
|
196
196
|
$,
|
|
197
|
-
|
|
198
|
-
),
|
|
197
|
+
w
|
|
198
|
+
), k[w + y] = !0);
|
|
199
199
|
}
|
|
200
|
-
if (
|
|
200
|
+
if (w = null, x !== void 0 && (r(x), w = "" + x), i(p) && (r(p.key), w = "" + p.key), "key" in p) {
|
|
201
201
|
x = {};
|
|
202
|
-
for (var
|
|
203
|
-
|
|
204
|
-
} else x =
|
|
205
|
-
return
|
|
202
|
+
for (var ae in p)
|
|
203
|
+
ae !== "key" && (x[ae] = p[ae]);
|
|
204
|
+
} else x = p;
|
|
205
|
+
return w && c(
|
|
206
206
|
x,
|
|
207
207
|
typeof o == "function" ? o.displayName || o.name || "Unknown" : o
|
|
208
208
|
), d(
|
|
209
209
|
o,
|
|
210
|
-
|
|
210
|
+
w,
|
|
211
211
|
x,
|
|
212
212
|
a(),
|
|
213
|
-
|
|
214
|
-
|
|
213
|
+
R,
|
|
214
|
+
L
|
|
215
215
|
);
|
|
216
216
|
}
|
|
217
217
|
function g(o) {
|
|
218
|
-
|
|
218
|
+
v(o) ? o._store && (o._store.validated = 1) : typeof o == "object" && o !== null && o.$$typeof === H && (o._payload.status === "fulfilled" ? v(o._payload.value) && o._payload.value._store && (o._payload.value._store.validated = 1) : o._store && (o._store.validated = 1));
|
|
219
219
|
}
|
|
220
|
-
function
|
|
221
|
-
return typeof o == "object" && o !== null && o.$$typeof ===
|
|
220
|
+
function v(o) {
|
|
221
|
+
return typeof o == "object" && o !== null && o.$$typeof === j;
|
|
222
222
|
}
|
|
223
|
-
var E = Ae,
|
|
223
|
+
var E = Ae, j = /* @__PURE__ */ Symbol.for("react.transitional.element"), q = /* @__PURE__ */ Symbol.for("react.portal"), V = /* @__PURE__ */ Symbol.for("react.fragment"), N = /* @__PURE__ */ Symbol.for("react.strict_mode"), B = /* @__PURE__ */ Symbol.for("react.profiler"), D = /* @__PURE__ */ Symbol.for("react.consumer"), re = /* @__PURE__ */ Symbol.for("react.context"), A = /* @__PURE__ */ Symbol.for("react.forward_ref"), M = /* @__PURE__ */ Symbol.for("react.suspense"), ne = /* @__PURE__ */ Symbol.for("react.suspense_list"), se = /* @__PURE__ */ Symbol.for("react.memo"), H = /* @__PURE__ */ Symbol.for("react.lazy"), J = /* @__PURE__ */ Symbol.for("react.activity"), P = /* @__PURE__ */ Symbol.for("react.client.reference"), G = E.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, T = Object.prototype.hasOwnProperty, z = Array.isArray, _ = console.createTask ? console.createTask : function() {
|
|
224
224
|
return null;
|
|
225
225
|
};
|
|
226
226
|
E = {
|
|
@@ -228,36 +228,36 @@ React keys must be passed directly to JSX without using spread:
|
|
|
228
228
|
return o();
|
|
229
229
|
}
|
|
230
230
|
};
|
|
231
|
-
var
|
|
231
|
+
var X, W = {}, f = E.react_stack_bottom_frame.bind(
|
|
232
232
|
E,
|
|
233
233
|
s
|
|
234
|
-
)(),
|
|
235
|
-
|
|
236
|
-
var
|
|
237
|
-
return
|
|
234
|
+
)(), m = _(n(s)), k = {};
|
|
235
|
+
Y.Fragment = V, Y.jsx = function(o, p, x) {
|
|
236
|
+
var y = 1e4 > G.recentlyCreatedOwnerStacks++;
|
|
237
|
+
return h(
|
|
238
238
|
o,
|
|
239
|
-
|
|
239
|
+
p,
|
|
240
240
|
x,
|
|
241
241
|
!1,
|
|
242
|
-
|
|
243
|
-
|
|
242
|
+
y ? Error("react-stack-top-frame") : f,
|
|
243
|
+
y ? _(n(o)) : m
|
|
244
244
|
);
|
|
245
|
-
},
|
|
246
|
-
var
|
|
247
|
-
return
|
|
245
|
+
}, Y.jsxs = function(o, p, x) {
|
|
246
|
+
var y = 1e4 > G.recentlyCreatedOwnerStacks++;
|
|
247
|
+
return h(
|
|
248
248
|
o,
|
|
249
|
-
|
|
249
|
+
p,
|
|
250
250
|
x,
|
|
251
251
|
!0,
|
|
252
|
-
|
|
253
|
-
|
|
252
|
+
y ? Error("react-stack-top-frame") : f,
|
|
253
|
+
y ? _(n(o)) : m
|
|
254
254
|
);
|
|
255
255
|
};
|
|
256
|
-
})()),
|
|
256
|
+
})()), Y;
|
|
257
257
|
}
|
|
258
258
|
var pe;
|
|
259
259
|
function Fe() {
|
|
260
|
-
return pe || (pe = 1, process.env.NODE_ENV === "production" ?
|
|
260
|
+
return pe || (pe = 1, process.env.NODE_ENV === "production" ? K.exports = $e() : K.exports = Ie()), K.exports;
|
|
261
261
|
}
|
|
262
262
|
var l = Fe();
|
|
263
263
|
const Ne = {
|
|
@@ -291,7 +291,7 @@ const Ne = {
|
|
|
291
291
|
no: "No, cancel",
|
|
292
292
|
deleteSuccess: "The annotation has been deleted.",
|
|
293
293
|
updateSuccess: "Status updated successfully.",
|
|
294
|
-
navigating: "
|
|
294
|
+
navigating: "Redirecting to review..."
|
|
295
295
|
},
|
|
296
296
|
es: {
|
|
297
297
|
enterMode: "🚀 Activar Modo Comentarios",
|
|
@@ -323,22 +323,22 @@ const Ne = {
|
|
|
323
323
|
no: "No, cancelar",
|
|
324
324
|
deleteSuccess: "El comentario ha sido eliminado.",
|
|
325
325
|
updateSuccess: "Estado actualizado correctamente.",
|
|
326
|
-
navigating: "Redirigiendo
|
|
326
|
+
navigating: "Redirigiendo a revisión..."
|
|
327
327
|
}
|
|
328
328
|
}, be = Ge(void 0), De = () => {
|
|
329
|
-
const e =
|
|
329
|
+
const e = Le(be);
|
|
330
330
|
if (!e) throw new Error("useViewGate must be used within a ViewGateProvider");
|
|
331
331
|
return e;
|
|
332
332
|
}, Ft = ({ children: e, language: t = "es", apiKey: r, baseUrl: n = "https://view-gate.vercel.app" }) => {
|
|
333
|
-
const [a, s] =
|
|
334
|
-
const
|
|
335
|
-
s((g) => [...g, { id:
|
|
336
|
-
s((g) => g.filter((
|
|
333
|
+
const [a, s] = C([]), i = (u, d) => {
|
|
334
|
+
const h = Date.now();
|
|
335
|
+
s((g) => [...g, { id: h, message: u, type: d }]), setTimeout(() => {
|
|
336
|
+
s((g) => g.filter((v) => v.id !== h));
|
|
337
337
|
}, 4e3);
|
|
338
338
|
}, c = Ne[t];
|
|
339
339
|
return /* @__PURE__ */ l.jsxs(be.Provider, { "data-source-path": "/src/components/ViewGateProvider.tsx:136", value: { addToast: i, language: t, t: c, apiKey: r, baseUrl: n }, children: [
|
|
340
340
|
e,
|
|
341
|
-
/* @__PURE__ */ l.jsx(
|
|
341
|
+
/* @__PURE__ */ l.jsx($t, { "data-source-path": "/src/components/ViewGateProvider.tsx:138" }),
|
|
342
342
|
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateProvider.tsx:139", className: "vg-toasts", children: a.map((u) => /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateProvider.tsx:141", className: `vg-toast vg-glassmorphism vg-animate-slide ${u.type}`, children: [
|
|
343
343
|
/* @__PURE__ */ l.jsx("span", { "data-source-path": "/src/components/ViewGateProvider.tsx:142", style: { fontSize: "20px" }, children: u.type === "success" ? "✅" : "❌" }),
|
|
344
344
|
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateProvider.tsx:143", children: [
|
|
@@ -366,29 +366,29 @@ const He = /* @__PURE__ */ (() => {
|
|
|
366
366
|
);
|
|
367
367
|
return () => (e += 1, `u${t()}${e}`);
|
|
368
368
|
})();
|
|
369
|
-
function
|
|
369
|
+
function O(e) {
|
|
370
370
|
const t = [];
|
|
371
371
|
for (let r = 0, n = e.length; r < n; r++)
|
|
372
372
|
t.push(e[r]);
|
|
373
373
|
return t;
|
|
374
374
|
}
|
|
375
|
-
let
|
|
375
|
+
let I = null;
|
|
376
376
|
function Ee(e = {}) {
|
|
377
|
-
return
|
|
377
|
+
return I || (e.includeStyleProperties ? (I = e.includeStyleProperties, I) : (I = O(window.getComputedStyle(document.documentElement)), I));
|
|
378
378
|
}
|
|
379
|
-
function
|
|
379
|
+
function Q(e, t) {
|
|
380
380
|
const n = (e.ownerDocument.defaultView || window).getComputedStyle(e).getPropertyValue(t);
|
|
381
381
|
return n ? parseFloat(n.replace("px", "")) : 0;
|
|
382
382
|
}
|
|
383
383
|
function ze(e) {
|
|
384
|
-
const t =
|
|
384
|
+
const t = Q(e, "border-left-width"), r = Q(e, "border-right-width");
|
|
385
385
|
return e.clientWidth + t + r;
|
|
386
386
|
}
|
|
387
387
|
function We(e) {
|
|
388
|
-
const t =
|
|
388
|
+
const t = Q(e, "border-top-width"), r = Q(e, "border-bottom-width");
|
|
389
389
|
return e.clientHeight + t + r;
|
|
390
390
|
}
|
|
391
|
-
function
|
|
391
|
+
function Se(e, t = {}) {
|
|
392
392
|
const r = t.width || ze(e), n = t.height || We(e);
|
|
393
393
|
return { width: r, height: n };
|
|
394
394
|
}
|
|
@@ -401,11 +401,11 @@ function Ue() {
|
|
|
401
401
|
const r = t && t.env ? t.env.devicePixelRatio : null;
|
|
402
402
|
return r && (e = parseInt(r, 10), Number.isNaN(e) && (e = 1)), e || window.devicePixelRatio || 1;
|
|
403
403
|
}
|
|
404
|
-
const
|
|
404
|
+
const S = 16384;
|
|
405
405
|
function Ye(e) {
|
|
406
|
-
(e.width >
|
|
406
|
+
(e.width > S || e.height > S) && (e.width > S && e.height > S ? e.width > e.height ? (e.height *= S / e.width, e.width = S) : (e.width *= S / e.height, e.height = S) : e.width > S ? (e.height *= S / e.width, e.width = S) : (e.width *= S / e.height, e.height = S));
|
|
407
407
|
}
|
|
408
|
-
function
|
|
408
|
+
function ee(e) {
|
|
409
409
|
return new Promise((t, r) => {
|
|
410
410
|
const n = new Image();
|
|
411
411
|
n.onload = () => {
|
|
@@ -475,20 +475,20 @@ function et(e) {
|
|
|
475
475
|
const t = /\.([^./]*?)$/g.exec(e);
|
|
476
476
|
return t ? t[1] : "";
|
|
477
477
|
}
|
|
478
|
-
function
|
|
478
|
+
function le(e) {
|
|
479
479
|
const t = et(e).toLowerCase();
|
|
480
480
|
return Qe[t] || "";
|
|
481
481
|
}
|
|
482
482
|
function tt(e) {
|
|
483
483
|
return e.split(/,/)[1];
|
|
484
484
|
}
|
|
485
|
-
function
|
|
485
|
+
function ce(e) {
|
|
486
486
|
return e.search(/^(data:)/) !== -1;
|
|
487
487
|
}
|
|
488
488
|
function rt(e, t) {
|
|
489
489
|
return `data:${t};base64,${e}`;
|
|
490
490
|
}
|
|
491
|
-
async function
|
|
491
|
+
async function Ce(e, t, r) {
|
|
492
492
|
const n = await fetch(e, t);
|
|
493
493
|
if (n.status === 404)
|
|
494
494
|
throw new Error(`Resource "${n.url}" not found`);
|
|
@@ -504,46 +504,46 @@ async function Se(e, t, r) {
|
|
|
504
504
|
}, c.readAsDataURL(a);
|
|
505
505
|
});
|
|
506
506
|
}
|
|
507
|
-
const
|
|
507
|
+
const ie = {};
|
|
508
508
|
function nt(e, t, r) {
|
|
509
509
|
let n = e.replace(/\?.*/, "");
|
|
510
510
|
return r && (n = e), /ttf|otf|eot|woff2?/i.test(n) && (n = n.replace(/.*\//, "")), t ? `[${t}]${n}` : n;
|
|
511
511
|
}
|
|
512
|
-
async function
|
|
512
|
+
async function ue(e, t, r) {
|
|
513
513
|
const n = nt(e, t, r.includeQueryParams);
|
|
514
|
-
if (
|
|
515
|
-
return
|
|
514
|
+
if (ie[n] != null)
|
|
515
|
+
return ie[n];
|
|
516
516
|
r.cacheBust && (e += (/\?/.test(e) ? "&" : "?") + (/* @__PURE__ */ new Date()).getTime());
|
|
517
517
|
let a;
|
|
518
518
|
try {
|
|
519
|
-
const s = await
|
|
519
|
+
const s = await Ce(e, r.fetchRequestInit, ({ res: i, result: c }) => (t || (t = i.headers.get("Content-Type") || ""), tt(c)));
|
|
520
520
|
a = rt(s, t);
|
|
521
521
|
} catch (s) {
|
|
522
522
|
a = r.imagePlaceholder || "";
|
|
523
523
|
let i = `Failed to fetch resource: ${e}`;
|
|
524
524
|
s && (i = typeof s == "string" ? s : s.message), i && console.warn(i);
|
|
525
525
|
}
|
|
526
|
-
return
|
|
526
|
+
return ie[n] = a, a;
|
|
527
527
|
}
|
|
528
528
|
async function st(e) {
|
|
529
529
|
const t = e.toDataURL();
|
|
530
|
-
return t === "data:," ? e.cloneNode(!1) :
|
|
530
|
+
return t === "data:," ? e.cloneNode(!1) : ee(t);
|
|
531
531
|
}
|
|
532
532
|
async function at(e, t) {
|
|
533
533
|
if (e.currentSrc) {
|
|
534
534
|
const s = document.createElement("canvas"), i = s.getContext("2d");
|
|
535
535
|
s.width = e.clientWidth, s.height = e.clientHeight, i?.drawImage(e, 0, 0, s.width, s.height);
|
|
536
536
|
const c = s.toDataURL();
|
|
537
|
-
return
|
|
537
|
+
return ee(c);
|
|
538
538
|
}
|
|
539
|
-
const r = e.poster, n =
|
|
540
|
-
return
|
|
539
|
+
const r = e.poster, n = le(r), a = await ue(r, n, t);
|
|
540
|
+
return ee(a);
|
|
541
541
|
}
|
|
542
542
|
async function ot(e, t) {
|
|
543
543
|
var r;
|
|
544
544
|
try {
|
|
545
545
|
if (!((r = e?.contentDocument) === null || r === void 0) && r.body)
|
|
546
|
-
return await
|
|
546
|
+
return await te(e.contentDocument.body, t, !0);
|
|
547
547
|
} catch {
|
|
548
548
|
}
|
|
549
549
|
return e.cloneNode(!1);
|
|
@@ -557,7 +557,7 @@ async function lt(e, t, r) {
|
|
|
557
557
|
if (Re(t))
|
|
558
558
|
return t;
|
|
559
559
|
let s = [];
|
|
560
|
-
return ct(e) && e.assignedNodes ? s =
|
|
560
|
+
return ct(e) && e.assignedNodes ? s = O(e.assignedNodes()) : b(e, HTMLIFrameElement) && (!((n = e.contentDocument) === null || n === void 0) && n.body) ? s = O(e.contentDocument.body.childNodes) : s = O(((a = e.shadowRoot) !== null && a !== void 0 ? a : e).childNodes), s.length === 0 || b(e, HTMLVideoElement) || await s.reduce((i, c) => i.then(() => te(c, r)).then((u) => {
|
|
561
561
|
u && t.appendChild(u);
|
|
562
562
|
}), Promise.resolve()), t;
|
|
563
563
|
}
|
|
@@ -592,7 +592,7 @@ async function mt(e, t) {
|
|
|
592
592
|
const c = r[s].getAttribute("xlink:href");
|
|
593
593
|
if (c) {
|
|
594
594
|
const u = e.querySelector(c), d = document.querySelector(c);
|
|
595
|
-
!u && d && !n[c] && (n[c] = await
|
|
595
|
+
!u && d && !n[c] && (n[c] = await te(d, t, !0));
|
|
596
596
|
}
|
|
597
597
|
}
|
|
598
598
|
const a = Object.values(n);
|
|
@@ -607,7 +607,7 @@ async function mt(e, t) {
|
|
|
607
607
|
}
|
|
608
608
|
return e;
|
|
609
609
|
}
|
|
610
|
-
async function
|
|
610
|
+
async function te(e, t, r) {
|
|
611
611
|
return !r && t.filter && !t.filter(e) ? null : Promise.resolve(e).then((n) => it(n, t)).then((n) => lt(e, n, t)).then((n) => pt(e, n, t)).then((n) => mt(n, t));
|
|
612
612
|
}
|
|
613
613
|
const ke = /url\((['"]?)([^'"]+?)\1\)/g, ht = /url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g, gt = /src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;
|
|
@@ -617,13 +617,13 @@ function xt(e) {
|
|
|
617
617
|
}
|
|
618
618
|
function yt(e) {
|
|
619
619
|
const t = [];
|
|
620
|
-
return e.replace(ke, (r, n, a) => (t.push(a), r)), t.filter((r) => !
|
|
620
|
+
return e.replace(ke, (r, n, a) => (t.push(a), r)), t.filter((r) => !ce(r));
|
|
621
621
|
}
|
|
622
622
|
async function wt(e, t, r, n, a) {
|
|
623
623
|
try {
|
|
624
|
-
const s = r ? Me(t, r) : t, i =
|
|
624
|
+
const s = r ? Me(t, r) : t, i = le(t);
|
|
625
625
|
let c;
|
|
626
|
-
return a || (c = await
|
|
626
|
+
return a || (c = await ue(s, i, n)), e.replace(xt(t), `$1${c}$3`);
|
|
627
627
|
} catch {
|
|
628
628
|
}
|
|
629
629
|
return e;
|
|
@@ -648,7 +648,7 @@ async function Te(e, t, r) {
|
|
|
648
648
|
const n = vt(e, r);
|
|
649
649
|
return yt(n).reduce((s, i) => s.then((c) => wt(c, i, t, r)), Promise.resolve(n));
|
|
650
650
|
}
|
|
651
|
-
async function
|
|
651
|
+
async function F(e, t, r) {
|
|
652
652
|
var n;
|
|
653
653
|
const a = (n = t.style) === null || n === void 0 ? void 0 : n.getPropertyValue(e);
|
|
654
654
|
if (a) {
|
|
@@ -658,13 +658,13 @@ async function I(e, t, r) {
|
|
|
658
658
|
return !1;
|
|
659
659
|
}
|
|
660
660
|
async function bt(e, t) {
|
|
661
|
-
await
|
|
661
|
+
await F("background", e, t) || await F("background-image", e, t), await F("mask", e, t) || await F("-webkit-mask", e, t) || await F("mask-image", e, t) || await F("-webkit-mask-image", e, t);
|
|
662
662
|
}
|
|
663
663
|
async function Et(e, t) {
|
|
664
664
|
const r = b(e, HTMLImageElement);
|
|
665
|
-
if (!(r && !
|
|
665
|
+
if (!(r && !ce(e.src)) && !(b(e, SVGImageElement) && !ce(e.href.baseVal)))
|
|
666
666
|
return;
|
|
667
|
-
const n = r ? e.src : e.href.baseVal, a = await
|
|
667
|
+
const n = r ? e.src : e.href.baseVal, a = await ue(n, le(n), t);
|
|
668
668
|
await new Promise((s, i) => {
|
|
669
669
|
e.onload = s, e.onerror = t.onImageErrorHandler ? (...u) => {
|
|
670
670
|
try {
|
|
@@ -677,14 +677,14 @@ async function Et(e, t) {
|
|
|
677
677
|
c.decode && (c.decode = s), c.loading === "lazy" && (c.loading = "eager"), r ? (e.srcset = "", e.src = a) : e.href.baseVal = a;
|
|
678
678
|
});
|
|
679
679
|
}
|
|
680
|
-
async function
|
|
681
|
-
const n =
|
|
680
|
+
async function St(e, t) {
|
|
681
|
+
const n = O(e.childNodes).map((a) => Oe(a, t));
|
|
682
682
|
await Promise.all(n).then(() => e);
|
|
683
683
|
}
|
|
684
684
|
async function Oe(e, t) {
|
|
685
|
-
b(e, Element) && (await bt(e, t), await Et(e, t), await
|
|
685
|
+
b(e, Element) && (await bt(e, t), await Et(e, t), await St(e, t));
|
|
686
686
|
}
|
|
687
|
-
function
|
|
687
|
+
function Ct(e, t) {
|
|
688
688
|
const { style: r } = e;
|
|
689
689
|
t.backgroundColor && (r.backgroundColor = t.backgroundColor), t.width && (r.width = `${t.width}px`), t.height && (r.height = `${t.height}px`);
|
|
690
690
|
const n = t.style;
|
|
@@ -704,7 +704,7 @@ async function we(e, t) {
|
|
|
704
704
|
let r = e.cssText;
|
|
705
705
|
const n = /url\(["']?([^"')]+)["']?\)/g, s = (r.match(/url\([^)]+\)/g) || []).map(async (i) => {
|
|
706
706
|
let c = i.replace(n, "$1");
|
|
707
|
-
return c.startsWith("https://") || (c = new URL(c, e.url).href),
|
|
707
|
+
return c.startsWith("https://") || (c = new URL(c, e.url).href), Ce(c, t.fetchRequestInit, ({ result: u }) => (r = r.replace(i, `url(${u})`), [i, u]));
|
|
708
708
|
});
|
|
709
709
|
return Promise.all(s).then(() => r);
|
|
710
710
|
}
|
|
@@ -739,20 +739,20 @@ async function Rt(e, t) {
|
|
|
739
739
|
return e.forEach((a) => {
|
|
740
740
|
if ("cssRules" in a)
|
|
741
741
|
try {
|
|
742
|
-
|
|
742
|
+
O(a.cssRules || []).forEach((s, i) => {
|
|
743
743
|
if (s.type === CSSRule.IMPORT_RULE) {
|
|
744
744
|
let c = i + 1;
|
|
745
|
-
const u = s.href, d = ye(u).then((
|
|
745
|
+
const u = s.href, d = ye(u).then((h) => we(h, t)).then((h) => ve(h).forEach((g) => {
|
|
746
746
|
try {
|
|
747
747
|
a.insertRule(g, g.startsWith("@import") ? c += 1 : a.cssRules.length);
|
|
748
|
-
} catch (
|
|
748
|
+
} catch (v) {
|
|
749
749
|
console.error("Error inserting rule from remote css", {
|
|
750
750
|
rule: g,
|
|
751
|
-
error:
|
|
751
|
+
error: v
|
|
752
752
|
});
|
|
753
753
|
}
|
|
754
|
-
})).catch((
|
|
755
|
-
console.error("Error loading remote css",
|
|
754
|
+
})).catch((h) => {
|
|
755
|
+
console.error("Error loading remote css", h.toString());
|
|
756
756
|
});
|
|
757
757
|
n.push(d);
|
|
758
758
|
}
|
|
@@ -768,7 +768,7 @@ async function Rt(e, t) {
|
|
|
768
768
|
}), Promise.all(n).then(() => (e.forEach((a) => {
|
|
769
769
|
if ("cssRules" in a)
|
|
770
770
|
try {
|
|
771
|
-
|
|
771
|
+
O(a.cssRules || []).forEach((s) => {
|
|
772
772
|
r.push(s);
|
|
773
773
|
});
|
|
774
774
|
} catch (s) {
|
|
@@ -782,7 +782,7 @@ function kt(e) {
|
|
|
782
782
|
async function jt(e, t) {
|
|
783
783
|
if (e.ownerDocument == null)
|
|
784
784
|
throw new Error("Provided element is not within a Document");
|
|
785
|
-
const r =
|
|
785
|
+
const r = O(e.ownerDocument.styleSheets), n = await Rt(r, t);
|
|
786
786
|
return kt(n);
|
|
787
787
|
}
|
|
788
788
|
function Pe(e) {
|
|
@@ -815,12 +815,12 @@ async function Pt(e, t) {
|
|
|
815
815
|
}
|
|
816
816
|
}
|
|
817
817
|
async function _t(e, t = {}) {
|
|
818
|
-
const { width: r, height: n } =
|
|
819
|
-
return await Pt(a, t), await Oe(a, t),
|
|
818
|
+
const { width: r, height: n } = Se(e, t), a = await te(e, t, !0);
|
|
819
|
+
return await Pt(a, t), await Oe(a, t), Ct(a, t), await Be(a, r, n);
|
|
820
820
|
}
|
|
821
821
|
async function Vt(e, t = {}) {
|
|
822
|
-
const { width: r, height: n } =
|
|
823
|
-
return i.width = d * u, i.height =
|
|
822
|
+
const { width: r, height: n } = Se(e, t), a = await _t(e, t), s = await ee(a), i = document.createElement("canvas"), c = i.getContext("2d"), u = t.pixelRatio || Ue(), d = t.canvasWidth || r, h = t.canvasHeight || n;
|
|
823
|
+
return i.width = d * u, i.height = h * u, t.skipAutoScale || Ye(i), i.style.width = `${d}`, i.style.height = `${h}`, t.backgroundColor && (c.fillStyle = t.backgroundColor, c.fillRect(0, 0, i.width, i.height)), c.drawImage(s, 0, 0, i.width, i.height), i;
|
|
824
824
|
}
|
|
825
825
|
async function At(e, t = {}) {
|
|
826
826
|
return (await Vt(e, t)).toDataURL();
|
|
@@ -839,7 +839,7 @@ const Gt = (e) => {
|
|
|
839
839
|
a = a.return;
|
|
840
840
|
}
|
|
841
841
|
return n.join(" > ") || "Generic Component";
|
|
842
|
-
},
|
|
842
|
+
}, Lt = (e) => {
|
|
843
843
|
let t = "unknown:0", r = e;
|
|
844
844
|
for (; r; ) {
|
|
845
845
|
const d = r.getAttribute("data-source-path");
|
|
@@ -850,26 +850,26 @@ const Gt = (e) => {
|
|
|
850
850
|
r = r.parentElement;
|
|
851
851
|
}
|
|
852
852
|
const n = Gt(e), s = ((d) => {
|
|
853
|
-
const
|
|
853
|
+
const h = [];
|
|
854
854
|
let g = d;
|
|
855
855
|
for (; g && g.nodeType === Node.ELEMENT_NODE; ) {
|
|
856
|
-
let
|
|
856
|
+
let v = g.nodeName.toLowerCase();
|
|
857
857
|
if (g.id) {
|
|
858
|
-
|
|
858
|
+
v += "#" + g.id, h.unshift(v);
|
|
859
859
|
break;
|
|
860
860
|
} else {
|
|
861
|
-
let E = g,
|
|
861
|
+
let E = g, j = 1;
|
|
862
862
|
for (; E.previousElementSibling; )
|
|
863
|
-
E = E.previousElementSibling, E.nodeName.toLowerCase() ===
|
|
864
|
-
|
|
863
|
+
E = E.previousElementSibling, E.nodeName.toLowerCase() === v && j++;
|
|
864
|
+
j > 1 && (v += `:nth-of-type(${j})`);
|
|
865
865
|
}
|
|
866
|
-
|
|
866
|
+
h.unshift(v), g = g.parentElement;
|
|
867
867
|
}
|
|
868
|
-
return
|
|
868
|
+
return h.join(" > ");
|
|
869
869
|
})(e), i = (e.innerText || "").slice(0, 50).trim(), c = {};
|
|
870
870
|
["placeholder", "aria-label", "name", "type", "alt", "title", "value", "role"].forEach((d) => {
|
|
871
|
-
const
|
|
872
|
-
|
|
871
|
+
const h = e.getAttribute(d);
|
|
872
|
+
h && (c[d] = h);
|
|
873
873
|
});
|
|
874
874
|
const u = `${e.tagName.toLowerCase()}-${i.replace(/\s+/g, "_")}-${s.split(" > ").slice(-2).join("_")}`;
|
|
875
875
|
return {
|
|
@@ -889,50 +889,82 @@ const Gt = (e) => {
|
|
|
889
889
|
hint: `Edit ${t.split(":")[0]} at line ${t.split(":")[1] || "?"}`
|
|
890
890
|
}
|
|
891
891
|
};
|
|
892
|
-
},
|
|
893
|
-
const { addToast: e, language: t, t: r, apiKey: n, baseUrl: a } = De(), [s, i] =
|
|
892
|
+
}, $t = () => {
|
|
893
|
+
const { addToast: e, language: t, t: r, apiKey: n, baseUrl: a } = De(), [s, i] = C(!1), [c, u] = C(null), [d, h] = C(null), [g, v] = C(""), [E, j] = C(!1), [q, V] = C(!1), [N, B] = C(!1), [D, re] = C([]), [A, M] = C(null), [ne, se] = C(!1), [H, J] = C(!1), [P, G] = C(null), T = oe(async () => {
|
|
894
894
|
if (n) {
|
|
895
|
-
|
|
895
|
+
J(!0);
|
|
896
896
|
try {
|
|
897
|
-
const
|
|
897
|
+
const f = await fetch(`${a}/api/annotations`, {
|
|
898
898
|
headers: { "x-api-key": n }
|
|
899
899
|
});
|
|
900
|
-
if (
|
|
901
|
-
const
|
|
902
|
-
|
|
900
|
+
if (f.ok) {
|
|
901
|
+
const m = await f.json();
|
|
902
|
+
re(m);
|
|
903
903
|
}
|
|
904
|
-
} catch (
|
|
905
|
-
console.error("Failed to fetch annotations",
|
|
904
|
+
} catch (f) {
|
|
905
|
+
console.error("Failed to fetch annotations", f);
|
|
906
906
|
} finally {
|
|
907
|
-
|
|
907
|
+
J(!1);
|
|
908
908
|
}
|
|
909
909
|
}
|
|
910
910
|
}, [n, a]);
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
911
|
+
Z(() => {
|
|
912
|
+
const f = () => {
|
|
913
|
+
const m = window.location.hash;
|
|
914
|
+
if (m.includes("vg_hl=")) {
|
|
915
|
+
const k = m.split("vg_hl=");
|
|
916
|
+
if (k.length < 2) return;
|
|
917
|
+
const o = decodeURIComponent(k[1]);
|
|
918
|
+
[100, 500, 1e3, 2e3].forEach((x) => {
|
|
919
|
+
setTimeout(() => {
|
|
920
|
+
const y = document.querySelectorAll("*");
|
|
921
|
+
for (const R of y)
|
|
922
|
+
if (R.tagName.toLowerCase() === o.split("-")[0]) {
|
|
923
|
+
const L = R.getBoundingClientRect();
|
|
924
|
+
if (L.width > 0 && L.height > 0) {
|
|
925
|
+
const w = (R.innerText || "").slice(0, 50).trim().replace(/\s+/g, "_");
|
|
926
|
+
if (o.includes(w)) {
|
|
927
|
+
R.classList.add("vg-highlight-active"), G(R), R.scrollIntoView({ behavior: "smooth", block: "center" });
|
|
928
|
+
break;
|
|
929
|
+
}
|
|
930
|
+
}
|
|
931
|
+
}
|
|
932
|
+
}, x);
|
|
933
|
+
});
|
|
934
|
+
}
|
|
935
|
+
};
|
|
936
|
+
return f(), window.addEventListener("hashchange", f), () => window.removeEventListener("hashchange", f);
|
|
937
|
+
}, []), Z(() => {
|
|
938
|
+
if (!P) return;
|
|
939
|
+
const f = () => {
|
|
940
|
+
P.classList.remove("vg-highlight-active"), G(null), window.history.replaceState && window.history.replaceState(null, "", window.location.pathname + window.location.search);
|
|
941
|
+
};
|
|
942
|
+
return P.addEventListener("mouseover", f), () => P.removeEventListener("mouseover", f);
|
|
943
|
+
}, [P]), Z(() => {
|
|
944
|
+
T();
|
|
945
|
+
}, [T]);
|
|
946
|
+
const z = oe((f) => {
|
|
915
947
|
if (!s || d) return;
|
|
916
|
-
const
|
|
917
|
-
if (!
|
|
948
|
+
const m = document.elementFromPoint(f.clientX, f.clientY);
|
|
949
|
+
if (!m || m.id === "viewgate-overlay" || m.closest("#viewgate-ui")) {
|
|
918
950
|
u(null);
|
|
919
951
|
return;
|
|
920
952
|
}
|
|
921
|
-
|
|
922
|
-
tag:
|
|
923
|
-
source:
|
|
924
|
-
rect:
|
|
925
|
-
element:
|
|
926
|
-
previewText: (
|
|
927
|
-
semanticReference:
|
|
953
|
+
m.getAttribute("data-source-path"), u({
|
|
954
|
+
tag: m.tagName.toLowerCase(),
|
|
955
|
+
source: m.getAttribute("data-source-path") || "unknown:0",
|
|
956
|
+
rect: m.getBoundingClientRect(),
|
|
957
|
+
element: m,
|
|
958
|
+
previewText: (m.innerText || "").slice(0, 100) || (m.getAttribute("placeholder") || "").slice(0, 100) || m.tagName.toLowerCase(),
|
|
959
|
+
semanticReference: Lt(m)
|
|
928
960
|
});
|
|
929
|
-
}, [s, d]),
|
|
961
|
+
}, [s, d]), _ = oe(async (f) => {
|
|
930
962
|
if (!(!s || d) && c) {
|
|
931
|
-
|
|
963
|
+
f.preventDefault(), f.stopPropagation(), V(!0);
|
|
932
964
|
try {
|
|
933
|
-
const
|
|
934
|
-
|
|
935
|
-
const
|
|
965
|
+
const m = c.element.style.display, k = window.getComputedStyle(c.element).display === "inline";
|
|
966
|
+
k && (c.element.style.display = "inline-block");
|
|
967
|
+
const o = await At(c.element, {
|
|
936
968
|
backgroundColor: "#ffffff",
|
|
937
969
|
pixelRatio: 2,
|
|
938
970
|
skipFonts: !0,
|
|
@@ -942,21 +974,21 @@ const Gt = (e) => {
|
|
|
942
974
|
// Extra padding for better look
|
|
943
975
|
}
|
|
944
976
|
});
|
|
945
|
-
|
|
946
|
-
} catch (
|
|
947
|
-
console.error("Failed to capture preview:",
|
|
977
|
+
k && (c.element.style.display = m), h({ ...c, visualPreview: o });
|
|
978
|
+
} catch (m) {
|
|
979
|
+
console.error("Failed to capture preview:", m), h(c);
|
|
948
980
|
} finally {
|
|
949
|
-
|
|
981
|
+
V(!1), u(null);
|
|
950
982
|
}
|
|
951
983
|
}
|
|
952
|
-
}, [s, c, d,
|
|
953
|
-
|
|
954
|
-
document.body.classList.remove("vg-cursor-pointer"), window.removeEventListener("mousemove",
|
|
955
|
-
}), [s, d,
|
|
956
|
-
const
|
|
984
|
+
}, [s, c, d, N]);
|
|
985
|
+
Z(() => (s && !d ? document.body.classList.add("vg-cursor-pointer") : document.body.classList.remove("vg-cursor-pointer"), window.addEventListener("mousemove", z), window.addEventListener("click", _, !0), () => {
|
|
986
|
+
document.body.classList.remove("vg-cursor-pointer"), window.removeEventListener("mousemove", z), window.removeEventListener("click", _, !0);
|
|
987
|
+
}), [s, d, z, _]);
|
|
988
|
+
const X = async () => {
|
|
957
989
|
if (!d || !g.trim()) return;
|
|
958
|
-
|
|
959
|
-
const { semanticReference:
|
|
990
|
+
j(!0);
|
|
991
|
+
const { semanticReference: f } = d, [m, k] = f.source.split(":"), o = k || "0";
|
|
960
992
|
try {
|
|
961
993
|
if (!(await fetch(`${a}/api/annotations`, {
|
|
962
994
|
method: "POST",
|
|
@@ -965,23 +997,23 @@ const Gt = (e) => {
|
|
|
965
997
|
"x-api-key": n
|
|
966
998
|
},
|
|
967
999
|
body: JSON.stringify({
|
|
968
|
-
filePath:
|
|
969
|
-
line: parseInt(
|
|
1000
|
+
filePath: m,
|
|
1001
|
+
line: parseInt(o),
|
|
970
1002
|
url: window.location.href,
|
|
971
1003
|
message: g,
|
|
972
|
-
componentName:
|
|
973
|
-
reference:
|
|
1004
|
+
componentName: f.componentPath || d.tag,
|
|
1005
|
+
reference: f
|
|
974
1006
|
})
|
|
975
1007
|
})).ok) throw new Error("Backend failed");
|
|
976
|
-
e(r.success, "success"),
|
|
977
|
-
} catch (
|
|
978
|
-
console.error(
|
|
1008
|
+
e(r.success, "success"), h(null), v(""), i(!1), T();
|
|
1009
|
+
} catch (p) {
|
|
1010
|
+
console.error(p), e(r.error, "error");
|
|
979
1011
|
} finally {
|
|
980
|
-
|
|
1012
|
+
j(!1);
|
|
981
1013
|
}
|
|
982
|
-
},
|
|
1014
|
+
}, W = (f) => f.split("/").pop()?.split("\\").pop() || "unknown";
|
|
983
1015
|
return /* @__PURE__ */ l.jsxs(l.Fragment, { children: [
|
|
984
|
-
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1016
|
+
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:344", style: { position: "fixed", bottom: "30px", right: "30px", zIndex: 99999 }, id: "viewgate-ui", children: [
|
|
985
1017
|
/* @__PURE__ */ l.jsx(
|
|
986
1018
|
"button",
|
|
987
1019
|
{
|
|
@@ -991,11 +1023,11 @@ const Gt = (e) => {
|
|
|
991
1023
|
children: s ? r.exitMode : r.enterMode
|
|
992
1024
|
}
|
|
993
1025
|
),
|
|
994
|
-
|
|
1026
|
+
D.length > 0 && /* @__PURE__ */ l.jsx(
|
|
995
1027
|
"button",
|
|
996
1028
|
{
|
|
997
1029
|
onClick: () => {
|
|
998
|
-
|
|
1030
|
+
B(!N), i(!1), h(null);
|
|
999
1031
|
},
|
|
1000
1032
|
className: "vg-button-ghost",
|
|
1001
1033
|
style: { padding: "12px 24px", fontSize: "15px", marginLeft: "12px", background: "white" },
|
|
@@ -1003,7 +1035,7 @@ const Gt = (e) => {
|
|
|
1003
1035
|
}
|
|
1004
1036
|
)
|
|
1005
1037
|
] }),
|
|
1006
|
-
|
|
1038
|
+
q && /* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:369", style: {
|
|
1007
1039
|
position: "fixed",
|
|
1008
1040
|
top: 0,
|
|
1009
1041
|
left: 0,
|
|
@@ -1015,11 +1047,11 @@ const Gt = (e) => {
|
|
|
1015
1047
|
justifyContent: "center",
|
|
1016
1048
|
zIndex: 1e5,
|
|
1017
1049
|
cursor: "wait"
|
|
1018
|
-
}, children: /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1019
|
-
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1050
|
+
}, children: /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:382", className: "vg-glassmorphism", style: { padding: "30px 50px", fontWeight: 700, display: "flex", flexDirection: "column", alignItems: "center", backgroundColor: "rgba(0,0,0,0.7)", color: "white", border: "1px solid rgba(255,255,255,0.1)" }, children: [
|
|
1051
|
+
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:383", className: "vg-spinner" }),
|
|
1020
1052
|
"Capturing..."
|
|
1021
1053
|
] }) }),
|
|
1022
|
-
s && c && !d && !
|
|
1054
|
+
s && c && !d && !q && /* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:391", style: {
|
|
1023
1055
|
position: "fixed",
|
|
1024
1056
|
top: c.rect.top,
|
|
1025
1057
|
left: c.rect.left,
|
|
@@ -1033,7 +1065,7 @@ const Gt = (e) => {
|
|
|
1033
1065
|
boxShadow: "0 0 15px rgba(37, 19, 236, 0.2)",
|
|
1034
1066
|
transition: "all 0.1s ease-out"
|
|
1035
1067
|
} }),
|
|
1036
|
-
d && /* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1068
|
+
d && /* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:409", className: "vg-animate-fade", style: {
|
|
1037
1069
|
position: "fixed",
|
|
1038
1070
|
top: 0,
|
|
1039
1071
|
left: 0,
|
|
@@ -1045,33 +1077,33 @@ const Gt = (e) => {
|
|
|
1045
1077
|
alignItems: "center",
|
|
1046
1078
|
justifyContent: "center",
|
|
1047
1079
|
zIndex: 99999
|
|
1048
|
-
}, children: /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1080
|
+
}, children: /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:422", className: "vg-glassmorphism vg-animate-slide", style: {
|
|
1049
1081
|
padding: "32px",
|
|
1050
1082
|
width: "460px",
|
|
1051
1083
|
background: "white",
|
|
1052
1084
|
color: "#0f172a"
|
|
1053
1085
|
}, children: [
|
|
1054
|
-
/* @__PURE__ */ l.jsx("h2", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1055
|
-
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1056
|
-
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1057
|
-
d.semanticReference.componentPath ? /* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1086
|
+
/* @__PURE__ */ l.jsx("h2", { "data-source-path": "/src/components/ViewGateOverlay.tsx:428", style: { margin: "0 0 10px 0", fontSize: "24px", fontWeight: 800 }, children: r.feedbackHeader }),
|
|
1087
|
+
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:430", style: { marginBottom: "20px" }, children: [
|
|
1088
|
+
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:431", style: { display: "flex", flexWrap: "wrap", gap: "8px", alignItems: "center" }, children: [
|
|
1089
|
+
d.semanticReference.componentPath ? /* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:433", className: "vg-badge", style: { backgroundColor: "#f5f3ff", color: "#7c3aed", borderColor: "#ddd6fe" }, children: [
|
|
1058
1090
|
"📦 ",
|
|
1059
1091
|
d.tag
|
|
1060
|
-
] }) : /* @__PURE__ */ l.jsx("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1061
|
-
d.semanticReference.source && !d.semanticReference.source.startsWith("unknown") ? /* @__PURE__ */ l.jsx(l.Fragment, { children: /* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1092
|
+
] }) : /* @__PURE__ */ l.jsx("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:437", className: "vg-badge", children: d.tag }),
|
|
1093
|
+
d.semanticReference.source && !d.semanticReference.source.startsWith("unknown") ? /* @__PURE__ */ l.jsx(l.Fragment, { children: /* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:442", className: "vg-badge", style: { backgroundColor: "#fdf2f8", color: "#db2777", borderColor: "#fbcfe8" }, children: [
|
|
1062
1094
|
"📄 ",
|
|
1063
|
-
|
|
1064
|
-
] }) }) : /* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1095
|
+
W(d.semanticReference.source.split(":")[0] || "unknown")
|
|
1096
|
+
] }) }) : /* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:447", className: "vg-badge", style: { backgroundColor: "#f0f9ff", color: "#0369a1", borderColor: "#bae6fd", maxWidth: "300px", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: [
|
|
1065
1097
|
"🆔 ",
|
|
1066
1098
|
d.semanticReference.signature
|
|
1067
1099
|
] })
|
|
1068
1100
|
] }),
|
|
1069
|
-
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1101
|
+
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:452", style: { marginTop: "8px", fontSize: "11px", color: "#94a3b8" }, children: [
|
|
1070
1102
|
"🎯 ",
|
|
1071
1103
|
d.semanticReference.selector
|
|
1072
1104
|
] })
|
|
1073
1105
|
] }),
|
|
1074
|
-
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1106
|
+
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:458", style: {
|
|
1075
1107
|
backgroundColor: "#f8fafc",
|
|
1076
1108
|
borderRadius: "8px",
|
|
1077
1109
|
border: "1px solid #e2e8f0",
|
|
@@ -1080,8 +1112,8 @@ const Gt = (e) => {
|
|
|
1080
1112
|
display: "flex",
|
|
1081
1113
|
flexDirection: "column"
|
|
1082
1114
|
}, children: [
|
|
1083
|
-
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1084
|
-
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1115
|
+
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:467", style: { padding: "8px 12px", fontSize: "10px", color: "#94a3b8", textTransform: "uppercase", fontWeight: 700, borderBottom: "1px solid #f1f5f9" }, children: r.preview }),
|
|
1116
|
+
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:470", style: {
|
|
1085
1117
|
padding: "12px",
|
|
1086
1118
|
display: "flex",
|
|
1087
1119
|
justifyContent: "center",
|
|
@@ -1090,7 +1122,7 @@ const Gt = (e) => {
|
|
|
1090
1122
|
maxHeight: "200px",
|
|
1091
1123
|
overflow: "hidden",
|
|
1092
1124
|
backgroundColor: "#fdfdfd"
|
|
1093
|
-
}, children: d.visualPreview ? /* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1125
|
+
}, children: d.visualPreview ? /* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:481", style: {
|
|
1094
1126
|
position: "relative",
|
|
1095
1127
|
width: "100%",
|
|
1096
1128
|
height: "100%",
|
|
@@ -1112,7 +1144,7 @@ const Gt = (e) => {
|
|
|
1112
1144
|
backgroundColor: "white"
|
|
1113
1145
|
}
|
|
1114
1146
|
}
|
|
1115
|
-
) }) : /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1147
|
+
) }) : /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:504", style: { fontSize: "13px", color: "#64748b", fontStyle: "italic", textAlign: "center", padding: "0 20px" }, children: [
|
|
1116
1148
|
'"',
|
|
1117
1149
|
d.previewText,
|
|
1118
1150
|
'"'
|
|
@@ -1123,17 +1155,17 @@ const Gt = (e) => {
|
|
|
1123
1155
|
{
|
|
1124
1156
|
className: "vg-textarea",
|
|
1125
1157
|
value: g,
|
|
1126
|
-
onChange: (
|
|
1158
|
+
onChange: (f) => v(f.target.value),
|
|
1127
1159
|
rows: 4,
|
|
1128
1160
|
placeholder: r.placeholder,
|
|
1129
1161
|
autoFocus: !0
|
|
1130
1162
|
}
|
|
1131
1163
|
),
|
|
1132
|
-
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1164
|
+
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:520", style: { display: "flex", justifyContent: "flex-end", gap: "12px", marginTop: "24px" }, children: [
|
|
1133
1165
|
/* @__PURE__ */ l.jsx(
|
|
1134
1166
|
"button",
|
|
1135
1167
|
{
|
|
1136
|
-
onClick: () =>
|
|
1168
|
+
onClick: () => h(null),
|
|
1137
1169
|
className: "vg-button-ghost",
|
|
1138
1170
|
children: r.cancel
|
|
1139
1171
|
}
|
|
@@ -1141,7 +1173,7 @@ const Gt = (e) => {
|
|
|
1141
1173
|
/* @__PURE__ */ l.jsx(
|
|
1142
1174
|
"button",
|
|
1143
1175
|
{
|
|
1144
|
-
onClick:
|
|
1176
|
+
onClick: X,
|
|
1145
1177
|
className: "vg-button-primary",
|
|
1146
1178
|
disabled: E || !g.trim(),
|
|
1147
1179
|
style: { opacity: E || !g.trim() ? 0.6 : 1 },
|
|
@@ -1150,7 +1182,7 @@ const Gt = (e) => {
|
|
|
1150
1182
|
)
|
|
1151
1183
|
] })
|
|
1152
1184
|
] }) }),
|
|
1153
|
-
|
|
1185
|
+
N && /* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:542", className: "vg-animate-fade", style: {
|
|
1154
1186
|
position: "fixed",
|
|
1155
1187
|
top: 0,
|
|
1156
1188
|
left: 0,
|
|
@@ -1162,7 +1194,7 @@ const Gt = (e) => {
|
|
|
1162
1194
|
alignItems: "center",
|
|
1163
1195
|
justifyContent: "center",
|
|
1164
1196
|
zIndex: 99999
|
|
1165
|
-
}, children: /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1197
|
+
}, children: /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:555", className: "vg-glassmorphism vg-animate-slide", style: {
|
|
1166
1198
|
padding: "32px",
|
|
1167
1199
|
width: "600px",
|
|
1168
1200
|
maxHeight: "80vh",
|
|
@@ -1171,55 +1203,55 @@ const Gt = (e) => {
|
|
|
1171
1203
|
display: "flex",
|
|
1172
1204
|
flexDirection: "column"
|
|
1173
1205
|
}, children: [
|
|
1174
|
-
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1175
|
-
/* @__PURE__ */ l.jsx("h2", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1176
|
-
/* @__PURE__ */ l.jsx("button", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1206
|
+
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:564", style: { display: "flex", justifyContent: "space-between", alignItems: "center", marginBottom: "20px" }, children: [
|
|
1207
|
+
/* @__PURE__ */ l.jsx("h2", { "data-source-path": "/src/components/ViewGateOverlay.tsx:565", style: { margin: 0, fontSize: "24px", fontWeight: 800 }, children: r.feedbackHeader }),
|
|
1208
|
+
/* @__PURE__ */ l.jsx("button", { "data-source-path": "/src/components/ViewGateOverlay.tsx:566", onClick: () => B(!1), className: "vg-button-ghost", style: { padding: "6px 12px" }, children: "✕" })
|
|
1177
1209
|
] }),
|
|
1178
|
-
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1210
|
+
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:569", style: { overflowY: "auto", flex: 1, paddingRight: "8px", display: "flex", flexDirection: "column", gap: "16px" }, children: H ? /* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:571", style: { textAlign: "center", padding: "40px", color: "#64748b" }, children: "Cargando..." }) : D.length === 0 ? /* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:573", style: { textAlign: "center", padding: "40px", color: "#64748b" }, children: r.noComments }) : D.map((f) => /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:576", style: {
|
|
1179
1211
|
border: "1px solid #e2e8f0",
|
|
1180
1212
|
borderRadius: "12px",
|
|
1181
1213
|
padding: "16px",
|
|
1182
|
-
backgroundColor:
|
|
1214
|
+
backgroundColor: f.status === "ready_for_review" ? "#f0fdf4" : "#fff"
|
|
1183
1215
|
}, children: [
|
|
1184
|
-
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1185
|
-
|
|
1216
|
+
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:582", style: { display: "flex", justifyContent: "space-between", marginBottom: "12px" }, children: /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:583", style: { display: "flex", gap: "8px", alignItems: "center" }, children: [
|
|
1217
|
+
f.status === "ready_for_review" ? /* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:585", className: "vg-badge", style: { backgroundColor: "#dcfce7", color: "#166534", borderColor: "#bbf7d0" }, children: [
|
|
1186
1218
|
"✓ ",
|
|
1187
1219
|
r.readyForReview
|
|
1188
|
-
] }) : /* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1220
|
+
] }) : /* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:587", className: "vg-badge", style: { backgroundColor: "#fef3c7", color: "#92400e", borderColor: "#fde68a" }, children: [
|
|
1189
1221
|
"⏳ ",
|
|
1190
1222
|
r.pending
|
|
1191
1223
|
] }),
|
|
1192
|
-
/* @__PURE__ */ l.jsx("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1224
|
+
/* @__PURE__ */ l.jsx("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:589", style: { fontSize: "12px", color: "#64748b" }, children: new Date(f.timestamp).toLocaleString() })
|
|
1193
1225
|
] }) }),
|
|
1194
|
-
/* @__PURE__ */ l.jsxs("p", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1226
|
+
/* @__PURE__ */ l.jsxs("p", { "data-source-path": "/src/components/ViewGateOverlay.tsx:595", style: { margin: "0 0 12px 0", fontSize: "15px", fontWeight: 600 }, children: [
|
|
1195
1227
|
'"',
|
|
1196
|
-
|
|
1228
|
+
f.message,
|
|
1197
1229
|
'"'
|
|
1198
1230
|
] }),
|
|
1199
|
-
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1200
|
-
/* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1231
|
+
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:597", style: { display: "flex", gap: "6px", flexWrap: "wrap", marginBottom: "16px" }, children: [
|
|
1232
|
+
/* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:598", className: "vg-badge", style: { backgroundColor: "#f1f5f9", color: "#475569", border: "none" }, children: [
|
|
1201
1233
|
"📦 ",
|
|
1202
|
-
|
|
1234
|
+
f.componentName?.split(" > ").pop() || "UI Element"
|
|
1203
1235
|
] }),
|
|
1204
|
-
|
|
1236
|
+
f.filePath && f.filePath !== "unknown" && /* @__PURE__ */ l.jsxs("span", { "data-source-path": "/src/components/ViewGateOverlay.tsx:602", className: "vg-badge", style: { backgroundColor: "#f1f5f9", color: "#475569", border: "none" }, children: [
|
|
1205
1237
|
"📄 ",
|
|
1206
|
-
|
|
1238
|
+
W(f.filePath)
|
|
1207
1239
|
] })
|
|
1208
1240
|
] }),
|
|
1209
|
-
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1210
|
-
|
|
1241
|
+
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:608", style: { display: "flex", gap: "8px", justifyContent: "flex-end", borderTop: "1px solid #e2e8f0", paddingTop: "16px", marginTop: "8px" }, children: [
|
|
1242
|
+
f.status === "pending" ? /* @__PURE__ */ l.jsxs(
|
|
1211
1243
|
"button",
|
|
1212
1244
|
{
|
|
1213
|
-
"data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1245
|
+
"data-source-path": "/src/components/ViewGateOverlay.tsx:610",
|
|
1214
1246
|
className: "vg-button-primary",
|
|
1215
1247
|
style: { display: "flex", alignItems: "center", gap: "6px" },
|
|
1216
1248
|
onClick: async () => {
|
|
1217
1249
|
try {
|
|
1218
|
-
(await fetch(`${a}/api/annotations/${
|
|
1250
|
+
(await fetch(`${a}/api/annotations/${f._id}`, {
|
|
1219
1251
|
method: "PATCH",
|
|
1220
1252
|
headers: { "Content-Type": "application/json", "x-api-key": n },
|
|
1221
1253
|
body: JSON.stringify({ status: "ready_for_review" })
|
|
1222
|
-
})).ok && (
|
|
1254
|
+
})).ok && (T(), e(r.updateSuccess, "success"));
|
|
1223
1255
|
} catch {
|
|
1224
1256
|
e(r.error, "error");
|
|
1225
1257
|
}
|
|
@@ -1232,16 +1264,16 @@ const Gt = (e) => {
|
|
|
1232
1264
|
) : /* @__PURE__ */ l.jsxs(
|
|
1233
1265
|
"button",
|
|
1234
1266
|
{
|
|
1235
|
-
"data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1267
|
+
"data-source-path": "/src/components/ViewGateOverlay.tsx:632",
|
|
1236
1268
|
className: "vg-button-ghost",
|
|
1237
1269
|
style: { display: "flex", alignItems: "center", gap: "6px" },
|
|
1238
1270
|
onClick: async () => {
|
|
1239
1271
|
try {
|
|
1240
|
-
(await fetch(`${a}/api/annotations/${
|
|
1272
|
+
(await fetch(`${a}/api/annotations/${f._id}`, {
|
|
1241
1273
|
method: "PATCH",
|
|
1242
1274
|
headers: { "Content-Type": "application/json", "x-api-key": n },
|
|
1243
1275
|
body: JSON.stringify({ status: "pending" })
|
|
1244
|
-
})).ok && (
|
|
1276
|
+
})).ok && (T(), e(r.updateSuccess, "success"));
|
|
1245
1277
|
} catch {
|
|
1246
1278
|
e(r.error, "error");
|
|
1247
1279
|
}
|
|
@@ -1255,13 +1287,17 @@ const Gt = (e) => {
|
|
|
1255
1287
|
/* @__PURE__ */ l.jsxs(
|
|
1256
1288
|
"button",
|
|
1257
1289
|
{
|
|
1258
|
-
"data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1290
|
+
"data-source-path": "/src/components/ViewGateOverlay.tsx:655",
|
|
1259
1291
|
className: "vg-button-ghost",
|
|
1260
1292
|
style: { display: "flex", alignItems: "center", gap: "6px" },
|
|
1261
1293
|
onClick: () => {
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1294
|
+
if (f.url) {
|
|
1295
|
+
se(!0);
|
|
1296
|
+
const m = new URL(f.url);
|
|
1297
|
+
m.hash = `vg_hl=${encodeURIComponent(f.reference.signature)}`, setTimeout(() => {
|
|
1298
|
+
window.location.href = m.toString();
|
|
1299
|
+
}, 1e3);
|
|
1300
|
+
}
|
|
1265
1301
|
},
|
|
1266
1302
|
children: [
|
|
1267
1303
|
"👁️ ",
|
|
@@ -1272,23 +1308,23 @@ const Gt = (e) => {
|
|
|
1272
1308
|
/* @__PURE__ */ l.jsxs(
|
|
1273
1309
|
"button",
|
|
1274
1310
|
{
|
|
1275
|
-
"data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1311
|
+
"data-source-path": "/src/components/ViewGateOverlay.tsx:672",
|
|
1276
1312
|
className: "vg-button-primary",
|
|
1277
1313
|
style: { backgroundColor: "#ef4444", display: "flex", alignItems: "center", gap: "6px" },
|
|
1278
1314
|
onClick: () => {
|
|
1279
|
-
|
|
1315
|
+
M({
|
|
1280
1316
|
title: r.deleteConfirm,
|
|
1281
1317
|
message: r.confirmDelete,
|
|
1282
1318
|
onConfirm: async () => {
|
|
1283
1319
|
try {
|
|
1284
|
-
(await fetch(`${a}/api/annotations/${
|
|
1320
|
+
(await fetch(`${a}/api/annotations/${f._id}`, {
|
|
1285
1321
|
method: "DELETE",
|
|
1286
1322
|
headers: { "x-api-key": n }
|
|
1287
|
-
})).ok && (
|
|
1323
|
+
})).ok && (T(), e(r.deleteSuccess, "success"));
|
|
1288
1324
|
} catch {
|
|
1289
1325
|
e(r.error, "error");
|
|
1290
1326
|
} finally {
|
|
1291
|
-
|
|
1327
|
+
M(null);
|
|
1292
1328
|
}
|
|
1293
1329
|
}
|
|
1294
1330
|
});
|
|
@@ -1300,9 +1336,9 @@ const Gt = (e) => {
|
|
|
1300
1336
|
}
|
|
1301
1337
|
)
|
|
1302
1338
|
] })
|
|
1303
|
-
] },
|
|
1339
|
+
] }, f._id)) })
|
|
1304
1340
|
] }) }),
|
|
1305
|
-
|
|
1341
|
+
ne && /* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:711", style: {
|
|
1306
1342
|
position: "fixed",
|
|
1307
1343
|
top: 0,
|
|
1308
1344
|
left: 0,
|
|
@@ -1315,11 +1351,11 @@ const Gt = (e) => {
|
|
|
1315
1351
|
zIndex: 3e5,
|
|
1316
1352
|
backdropFilter: "blur(10px)",
|
|
1317
1353
|
color: "white"
|
|
1318
|
-
}, children: /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1319
|
-
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1320
|
-
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1354
|
+
}, children: /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:725", style: { display: "flex", flexDirection: "column", alignItems: "center", gap: "20px" }, children: [
|
|
1355
|
+
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:726", className: "vg-spinner", style: { width: "50px", height: "50px", borderTopColor: "white" } }),
|
|
1356
|
+
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:727", style: { fontSize: "18px", fontWeight: 600, letterSpacing: "0.5px" }, children: r.navigating })
|
|
1321
1357
|
] }) }),
|
|
1322
|
-
|
|
1358
|
+
A && /* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:734", className: "vg-animate-fade", style: {
|
|
1323
1359
|
position: "fixed",
|
|
1324
1360
|
top: 0,
|
|
1325
1361
|
left: 0,
|
|
@@ -1331,22 +1367,22 @@ const Gt = (e) => {
|
|
|
1331
1367
|
alignItems: "center",
|
|
1332
1368
|
justifyContent: "center",
|
|
1333
1369
|
zIndex: 2e5
|
|
1334
|
-
}, children: /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1370
|
+
}, children: /* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:747", className: "vg-glassmorphism vg-animate-slide", style: {
|
|
1335
1371
|
padding: "32px",
|
|
1336
1372
|
width: "400px",
|
|
1337
1373
|
background: "white",
|
|
1338
1374
|
textAlign: "center"
|
|
1339
1375
|
}, children: [
|
|
1340
|
-
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1341
|
-
/* @__PURE__ */ l.jsx("h3", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1342
|
-
/* @__PURE__ */ l.jsx("p", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1343
|
-
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1376
|
+
/* @__PURE__ */ l.jsx("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:753", style: { fontSize: "48px", marginBottom: "16px" }, children: "⚠️" }),
|
|
1377
|
+
/* @__PURE__ */ l.jsx("h3", { "data-source-path": "/src/components/ViewGateOverlay.tsx:754", style: { margin: "0 0 12px 0", fontSize: "20px", fontWeight: 700, color: "#0f172a" }, children: A.title }),
|
|
1378
|
+
/* @__PURE__ */ l.jsx("p", { "data-source-path": "/src/components/ViewGateOverlay.tsx:755", style: { margin: "0 0 24px 0", fontSize: "15px", color: "#64748b", lineHeight: 1.5 }, children: A.message }),
|
|
1379
|
+
/* @__PURE__ */ l.jsxs("div", { "data-source-path": "/src/components/ViewGateOverlay.tsx:757", style: { display: "flex", gap: "12px", justifyContent: "center" }, children: [
|
|
1344
1380
|
/* @__PURE__ */ l.jsx(
|
|
1345
1381
|
"button",
|
|
1346
1382
|
{
|
|
1347
|
-
"data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1383
|
+
"data-source-path": "/src/components/ViewGateOverlay.tsx:758",
|
|
1348
1384
|
className: "vg-button-ghost",
|
|
1349
|
-
onClick: () =>
|
|
1385
|
+
onClick: () => M(null),
|
|
1350
1386
|
style: { flex: 1 },
|
|
1351
1387
|
children: r.no
|
|
1352
1388
|
}
|
|
@@ -1354,10 +1390,10 @@ const Gt = (e) => {
|
|
|
1354
1390
|
/* @__PURE__ */ l.jsx(
|
|
1355
1391
|
"button",
|
|
1356
1392
|
{
|
|
1357
|
-
"data-source-path": "/src/components/ViewGateOverlay.tsx:
|
|
1393
|
+
"data-source-path": "/src/components/ViewGateOverlay.tsx:765",
|
|
1358
1394
|
className: "vg-button-primary",
|
|
1359
1395
|
style: { backgroundColor: "#ef4444", flex: 1 },
|
|
1360
|
-
onClick:
|
|
1396
|
+
onClick: A.onConfirm,
|
|
1361
1397
|
children: r.yes
|
|
1362
1398
|
}
|
|
1363
1399
|
)
|
|
@@ -1371,7 +1407,7 @@ function _e(e, t, r) {
|
|
|
1371
1407
|
return e.split(`
|
|
1372
1408
|
`).map((c, u) => {
|
|
1373
1409
|
const d = u + 1;
|
|
1374
|
-
return c.replace(/(^|[^a-zA-Z0-9])<([a-zA-Z][a-zA-Z0-9\.]*)(?=[ \t\n\/\>])/g, (
|
|
1410
|
+
return c.replace(/(^|[^a-zA-Z0-9])<([a-zA-Z][a-zA-Z0-9\.]*)(?=[ \t\n\/\>])/g, (h, g, v) => h.includes("data-source-path") || v === "Fragment" || v === "React.Fragment" ? h : `${g}<${v} data-source-path="${a}:${d}"`);
|
|
1375
1411
|
}).join(`
|
|
1376
1412
|
`);
|
|
1377
1413
|
}
|
|
@@ -1393,7 +1429,7 @@ function Dt(e) {
|
|
|
1393
1429
|
}
|
|
1394
1430
|
export {
|
|
1395
1431
|
Ft as ViewGate,
|
|
1396
|
-
|
|
1432
|
+
$t as ViewGateOverlay,
|
|
1397
1433
|
_e as transformSourcePaths,
|
|
1398
1434
|
De as useViewGate,
|
|
1399
1435
|
Dt as viewgateNextLoader,
|