@limekex/bugreport-widget-sdk 0.1.3 → 0.1.4
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/types/shared.types.d.ts +1 -0
- package/dist/types/shared.types.d.ts.map +1 -1
- package/dist/widget/button.d.ts.map +1 -1
- package/dist/widget/button.js +13 -4
- package/dist/widget/button.js.map +1 -1
- package/dist/widget/modal.d.ts +0 -13
- package/dist/widget/modal.d.ts.map +1 -1
- package/dist/widget/modal.js +64 -2
- package/dist/widget/modal.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.types.d.ts","sourceRoot":"","sources":["../../src/types/shared.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,WAAW;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,GAAG,aAAa,GAAG,WAAW,GAAG,UAAU,CAAC;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,8EAA8E;IAC9E,UAAU,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kCAAkC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,4EAA4E;IAC5E,eAAe,CAAC,EAAE,MAAM,YAAY,CAAC;IACrC,+BAA+B;IAC/B,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAID,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEhE,gDAAgD;AAChD,MAAM,WAAW,gBAAgB;IAE/B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,WAAW,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAG9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.types.d.ts","sourceRoot":"","sources":["../../src/types/shared.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,WAAW;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,GAAG,aAAa,GAAG,WAAW,GAAG,UAAU,CAAC;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,8EAA8E;IAC9E,UAAU,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kCAAkC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,4EAA4E;IAC5E,eAAe,CAAC,EAAE,MAAM,YAAY,CAAC;IACrC,+BAA+B;IAC/B,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAID,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEhE,gDAAgD;AAChD,MAAM,WAAW,gBAAgB;IAE/B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,WAAW,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAG9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAG/B,QAAQ,CAAC,EAAE,MAAM,CAAC;CAInB;AAED,qDAAqD;AACrD,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,IAAI,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,yCAAyC;AACzC,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,iBAAiB,GAAG,wBAAwB,GAAG,sBAAsB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/widget/button.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIzD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/widget/button.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIzD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,IAAI,CAuCxF;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C"}
|
package/dist/widget/button.js
CHANGED
|
@@ -19,11 +19,20 @@ export function injectFloatingButton(instance, theme) {
|
|
|
19
19
|
};
|
|
20
20
|
const button = document.createElement('button');
|
|
21
21
|
button.id = BUTTON_ID;
|
|
22
|
-
button.textContent = '🐛
|
|
22
|
+
button.textContent = '🐛';
|
|
23
23
|
button.setAttribute('style', `position:fixed;${positionStyles[position]}z-index:${zIndex};` +
|
|
24
|
-
`background
|
|
25
|
-
`
|
|
26
|
-
`box-shadow:0 4px 12px rgba(0,0,0,0.
|
|
24
|
+
`background:#1f2937;color:#fff;border:none;border-radius:50%;` +
|
|
25
|
+
`width:48px;height:48px;font-size:22px;cursor:pointer;` +
|
|
26
|
+
`box-shadow:0 4px 12px rgba(0,0,0,0.3);transition:transform 0.2s,box-shadow 0.2s;` +
|
|
27
|
+
`display:flex;align-items:center;justify-content:center;`);
|
|
28
|
+
button.addEventListener('mouseenter', () => {
|
|
29
|
+
button.style.transform = 'scale(1.1)';
|
|
30
|
+
button.style.boxShadow = '0 6px 16px rgba(0,0,0,0.4)';
|
|
31
|
+
});
|
|
32
|
+
button.addEventListener('mouseleave', () => {
|
|
33
|
+
button.style.transform = 'scale(1)';
|
|
34
|
+
button.style.boxShadow = '0 4px 12px rgba(0,0,0,0.3)';
|
|
35
|
+
});
|
|
27
36
|
button.addEventListener('click', () => instance.open());
|
|
28
37
|
document.body.appendChild(button);
|
|
29
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/widget/button.ts"],"names":[],"mappings":"AAGA,MAAM,SAAS,GAAG,4BAA4B,CAAC;AAE/C;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAwB,EAAE,KAAmB;IAChF,IAAI,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC;QAAE,OAAO;IAE/C,MAAM,QAAQ,GAAG,KAAK,EAAE,cAAc,IAAI,cAAc,CAAC;IACzD,MAAM,YAAY,GAAG,KAAK,EAAE,YAAY,IAAI,SAAS,CAAC;IACtD,MAAM,MAAM,GAAG,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC;IAErC,MAAM,cAAc,GAA2B;QAC7C,cAAc,EAAE,yBAAyB;QACzC,aAAa,EAAE,wBAAwB;QACvC,WAAW,EAAE,sBAAsB;QACnC,UAAU,EAAE,qBAAqB;KAClC,CAAC;IAEF,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC;IACtB,MAAM,CAAC,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/widget/button.ts"],"names":[],"mappings":"AAGA,MAAM,SAAS,GAAG,4BAA4B,CAAC;AAE/C;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAwB,EAAE,KAAmB;IAChF,IAAI,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC;QAAE,OAAO;IAE/C,MAAM,QAAQ,GAAG,KAAK,EAAE,cAAc,IAAI,cAAc,CAAC;IACzD,MAAM,YAAY,GAAG,KAAK,EAAE,YAAY,IAAI,SAAS,CAAC;IACtD,MAAM,MAAM,GAAG,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC;IAErC,MAAM,cAAc,GAA2B;QAC7C,cAAc,EAAE,yBAAyB;QACzC,aAAa,EAAE,wBAAwB;QACvC,WAAW,EAAE,sBAAsB;QACnC,UAAU,EAAE,qBAAqB;KAClC,CAAC;IAEF,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC;IACtB,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,MAAM,CAAC,YAAY,CACjB,OAAO,EACP,kBAAkB,cAAc,CAAC,QAAQ,CAAC,WAAW,MAAM,GAAG;QAC5D,8DAA8D;QAC9D,uDAAuD;QACvD,kFAAkF;QAClF,yDAAyD,CAC5D,CAAC;IAEF,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;QACtC,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,4BAA4B,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC;QACpC,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,4BAA4B,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAExD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;AAC/C,CAAC"}
|
package/dist/widget/modal.d.ts
CHANGED
|
@@ -2,19 +2,6 @@ import type { BugReporterConfig } from '../types/shared.types';
|
|
|
2
2
|
export interface ModalCallbacks {
|
|
3
3
|
onClose: () => void;
|
|
4
4
|
}
|
|
5
|
-
/**
|
|
6
|
-
* Opens the bug report modal and wires up form submission.
|
|
7
|
-
*
|
|
8
|
-
* The modal is a plain DOM element with production-ready CSS injected into the
|
|
9
|
-
* page. No React or CSS framework required — works in any web app.
|
|
10
|
-
*
|
|
11
|
-
* Features:
|
|
12
|
-
* - Focus trap (Tab/Shift-Tab cycle within modal)
|
|
13
|
-
* - Animated overlay + slide-up entrance
|
|
14
|
-
* - Responsive layout (stacks on mobile)
|
|
15
|
-
* - "Capture current screen" button (html2canvas when available)
|
|
16
|
-
* - Accessible: aria roles, keyboard dismiss, label associations
|
|
17
|
-
*/
|
|
18
5
|
export declare function openModal(config: BugReporterConfig, callbacks: ModalCallbacks): void;
|
|
19
6
|
export declare function closeModal(callbacks?: ModalCallbacks): void;
|
|
20
7
|
//# sourceMappingURL=modal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../src/widget/modal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAU/D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;
|
|
1
|
+
{"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../src/widget/modal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAU/D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AA4PD,wBAAgB,SAAS,CAAC,MAAM,EAAE,iBAAiB,EAAE,SAAS,EAAE,cAAc,GAAG,IAAI,CAgDpF;AAED,wBAAgB,UAAU,CAAC,SAAS,CAAC,EAAE,cAAc,GAAG,IAAI,CAU3D"}
|
package/dist/widget/modal.js
CHANGED
|
@@ -177,6 +177,28 @@ function injectStyles() {
|
|
|
177
177
|
font-size: 13px;
|
|
178
178
|
}
|
|
179
179
|
|
|
180
|
+
/* ── Verification ────────────────────────────────────────── */
|
|
181
|
+
.__br_checkbox_label {
|
|
182
|
+
display: flex;
|
|
183
|
+
align-items: center;
|
|
184
|
+
gap: 8px;
|
|
185
|
+
font-size: 14px;
|
|
186
|
+
color: #374151;
|
|
187
|
+
cursor: pointer;
|
|
188
|
+
user-select: none;
|
|
189
|
+
}
|
|
190
|
+
.__br_checkbox {
|
|
191
|
+
width: 18px;
|
|
192
|
+
height: 18px;
|
|
193
|
+
cursor: pointer;
|
|
194
|
+
accent-color: #e11d48;
|
|
195
|
+
}
|
|
196
|
+
.__br_turnstile {
|
|
197
|
+
margin-top: 12px;
|
|
198
|
+
display: flex;
|
|
199
|
+
justify-content: center;
|
|
200
|
+
}
|
|
201
|
+
|
|
180
202
|
/* ── Submit button ───────────────────────────────────────── */
|
|
181
203
|
.__br_submit_btn {
|
|
182
204
|
margin-top: 18px;
|
|
@@ -228,10 +250,13 @@ function injectStyles() {
|
|
|
228
250
|
* - "Capture current screen" button (html2canvas when available)
|
|
229
251
|
* - Accessible: aria roles, keyboard dismiss, label associations
|
|
230
252
|
*/
|
|
253
|
+
// Track when modal was opened (for timing bot check)
|
|
254
|
+
let modalOpenedAt = 0;
|
|
231
255
|
export function openModal(config, callbacks) {
|
|
232
256
|
if (document.getElementById(MODAL_ID))
|
|
233
257
|
return;
|
|
234
258
|
injectStyles();
|
|
259
|
+
modalOpenedAt = Date.now();
|
|
235
260
|
const overlay = document.createElement('div');
|
|
236
261
|
overlay.id = OVERLAY_ID;
|
|
237
262
|
const modal = document.createElement('div');
|
|
@@ -336,6 +361,13 @@ async function handleSubmit(form, config, callbacks) {
|
|
|
336
361
|
setFormState(form, 'loading');
|
|
337
362
|
try {
|
|
338
363
|
const values = collectFormValues(form);
|
|
364
|
+
// Bot protection: honeypot + math challenge + timing
|
|
365
|
+
const timeSpent = Math.floor((Date.now() - modalOpenedAt) / 1000);
|
|
366
|
+
const botCheck = {
|
|
367
|
+
honeypot: values.honeypot,
|
|
368
|
+
mathAnswer: values.mathAnswer,
|
|
369
|
+
timeSpent,
|
|
370
|
+
};
|
|
339
371
|
const formData = buildReportPayload({
|
|
340
372
|
summary: values.summary,
|
|
341
373
|
severity: values.severity,
|
|
@@ -345,6 +377,7 @@ async function handleSubmit(form, config, callbacks) {
|
|
|
345
377
|
stepsToReproduce: values.stepsToReproduce,
|
|
346
378
|
notes: values.notes || undefined,
|
|
347
379
|
environment: config.environment,
|
|
380
|
+
botCheck: JSON.stringify(botCheck),
|
|
348
381
|
}, config);
|
|
349
382
|
// Attach screenshot — prefer captured screenshot, fall back to file upload
|
|
350
383
|
if (values.capturedScreenshot) {
|
|
@@ -355,7 +388,7 @@ async function handleSubmit(form, config, callbacks) {
|
|
|
355
388
|
formData.append('screenshot', values.screenshot);
|
|
356
389
|
}
|
|
357
390
|
const result = await submitReport({ apiBaseUrl: config.apiBaseUrl, formData });
|
|
358
|
-
setFormState(form, 'success'
|
|
391
|
+
setFormState(form, 'success');
|
|
359
392
|
}
|
|
360
393
|
catch (err) {
|
|
361
394
|
const message = err instanceof Error ? err.message : 'Unknown error';
|
|
@@ -385,6 +418,8 @@ function collectFormValues(form) {
|
|
|
385
418
|
notes: String(data.get('notes') ?? ''),
|
|
386
419
|
screenshot,
|
|
387
420
|
capturedScreenshot,
|
|
421
|
+
honeypot: String(data.get('website') ?? ''),
|
|
422
|
+
mathAnswer: String(data.get('mathAnswer') ?? ''),
|
|
388
423
|
};
|
|
389
424
|
}
|
|
390
425
|
function setFormState(form, state, message) {
|
|
@@ -402,7 +437,7 @@ function setFormState(form, state, message) {
|
|
|
402
437
|
else if (state === 'success') {
|
|
403
438
|
submitBtn.textContent = 'Submit bug report';
|
|
404
439
|
statusEl.className = '__br_status_success';
|
|
405
|
-
statusEl.
|
|
440
|
+
statusEl.textContent = '✅ Bug report submitted successfully!';
|
|
406
441
|
setTimeout(() => closeModal(), SUCCESS_AUTO_CLOSE_DELAY_MS);
|
|
407
442
|
}
|
|
408
443
|
else if (state === 'error') {
|
|
@@ -412,6 +447,11 @@ function setFormState(form, state, message) {
|
|
|
412
447
|
}
|
|
413
448
|
}
|
|
414
449
|
function buildFormHtml() {
|
|
450
|
+
// Generate random math challenge
|
|
451
|
+
const num1 = Math.floor(Math.random() * 10) + 1; // 1-10
|
|
452
|
+
const num2 = Math.floor(Math.random() * 10) + 1; // 1-10
|
|
453
|
+
const mathQuestion = `${num1} + ${num2}`;
|
|
454
|
+
const mathAnswer = num1 + num2;
|
|
415
455
|
return `
|
|
416
456
|
<div class="__br_header">
|
|
417
457
|
<h2 id="__bugreport_title__" class="__br_title">🐛 Report a bug</h2>
|
|
@@ -420,6 +460,9 @@ function buildFormHtml() {
|
|
|
420
460
|
|
|
421
461
|
<form id="__bugreport_form__" novalidate>
|
|
422
462
|
|
|
463
|
+
<!-- Honeypot field (hidden from users, bots will fill it) -->
|
|
464
|
+
<input name="website" type="text" class="__br_honeypot" tabindex="-1" autocomplete="off" />
|
|
465
|
+
|
|
423
466
|
<div class="__br_field">
|
|
424
467
|
<label for="__br_summary__" class="__br_label">Summary<span class="__br_required">*</span></label>
|
|
425
468
|
<input id="__br_summary__" name="summary" type="text" required minlength="5" maxlength="200"
|
|
@@ -481,6 +524,25 @@ function buildFormHtml() {
|
|
|
481
524
|
placeholder="Anything else worth mentioning?" class="__br_textarea"></textarea>
|
|
482
525
|
</div>
|
|
483
526
|
|
|
527
|
+
<!-- Bot protection: Math challenge -->
|
|
528
|
+
<div class="__br_field __br_math_challenge">
|
|
529
|
+
<label for="__br_mathAnswer__" class="__br_label">Quick check: What is ${mathQuestion}?<span class="__br_required">*</span></label>
|
|
530
|
+
<input id="__br_mathAnswer__" name="mathAnswer" type="number"
|
|
531
|
+
required
|
|
532
|
+
data-answer="${mathAnswer}"
|
|
533
|
+
placeholder="Enter the answer"
|
|
534
|
+
class="__br_input"
|
|
535
|
+
style="max-width: 120px;" />
|
|
536
|
+
<p class="__br_hint">Help us prevent spam</p>
|
|
537
|
+
</div>
|
|
538
|
+
|
|
539
|
+
<div class="__br_field">
|
|
540
|
+
<label class="__br_checkbox_label">
|
|
541
|
+
<input id="__br_confirm__" type="checkbox" required class="__br_checkbox" />
|
|
542
|
+
<span>I confirm this is a legitimate bug report</span>
|
|
543
|
+
</label>
|
|
544
|
+
</div>
|
|
545
|
+
|
|
484
546
|
<div id="__bugreport_status__"></div>
|
|
485
547
|
|
|
486
548
|
<button id="__bugreport_submit__" type="submit" class="__br_submit_btn">
|
package/dist/widget/modal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.js","sourceRoot":"","sources":["../../src/widget/modal.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,2BAA2B,GAAG,IAAI,CAAC;AACzC,MAAM,QAAQ,GAAG,qBAAqB,CAAC;AACvC,MAAM,UAAU,GAAG,uBAAuB,CAAC;AAC3C,MAAM,QAAQ,GAAG,sBAAsB,CAAC;AAMxC,gFAAgF;AAChF,+EAA+E;AAC/E,mDAAmD;AAEnD,SAAS,YAAY;IACnB,IAAI,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC;QAAE,OAAO;IAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,EAAE,GAAG,QAAQ,CAAC;IACpB,KAAK,CAAC,WAAW,GAAG;;OAEf,UAAU;;;;;;;;;;;;;;;OAeV,QAAQ
|
|
1
|
+
{"version":3,"file":"modal.js","sourceRoot":"","sources":["../../src/widget/modal.ts"],"names":[],"mappings":"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"}
|