PageSourceSearch

https://www.friedhofsfonds.org/bundles/markocupiccontaoaltchaantispam/altcha/js/altcha.js

js friedhofsfonds.org collected 2026-10-02 20:50:14 UTC 35,800 bytes, 1,031 lines download raw bytes

1var je = Object.defineProperty;
2var Ge = (t, e, n) => e in t ? je(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
3var x = (t, e, n) => (Ge(t, typeof e != "symbol" ? e + "" : e, n), n);
4function Z() {
5}
6function de(t) {
7    return t();
8}
9function ie() {
10    return /* @__PURE__ */ Object.create(null);
11}
12function H(t) {
13    t.forEach(de);
14}
15function ge(t) {
16    return typeof t == "function";
17}
18function Ae(t, e) {
19    return t != t ? e == e : t !== e || t && typeof t == "object" || typeof t == "function";
20}
21function Se(t) {
22    return Object.keys(t).length === 0;
23}
24function m(t, e) {
25    t.appendChild(e);
26}
27function Ve(t, e, n) {
28    const r = Me(t);
29    if (!r.getElementById(e)) {
30        const l = v("style");
31        l.id = e, l.textContent = n, Ue(r, l);
32    }
33}
34function Me(t) {
35    if (!t)
36        return document;
37    const e = t.getRootNode ? t.getRootNode() : t.ownerDocument;
38    return e && /** @type {ShadowRoot} */
39    e.host ? (
40        /** @type {ShadowRoot} */
41        e
42    ) : t.ownerDocument;
43}
44function Ue(t, e) {
45    return m(
46        /** @type {Document} */
47        t.head || t,
48        e
49    ), e.sheet;
50}
51function q(t, e, n) {
52    t.insertBefore(e, n || null);
53}
54function I(t) {
55    t.parentNode && t.parentNode.removeChild(t);
56}
57function v(t) {
58    return document.createElement(t);
59}
60function G(t) {
61    return document.createElementNS("http://www.w3.org/2000/svg", t);
62}
63function Fe(t) {
64    return document.createTextNode(t);
65}
66function M() {
67    return Fe(" ");
68}
69function D(t, e, n, r) {
70    return t.addEventListener(e, n, r), () => t.removeEventListener(e, n, r);
71}
72function c(t, e, n) {
73    n == null ? t.removeAttribute(e) : t.getAttribute(e) !== n && t.setAttribute(e, n);
74}
75function Ye(t) {
76    return Array.from(t.childNodes);
77}
78function le(t, e, n) {
79    t.classList.toggle(e, !!n);
80}
81function Ze(t, e, { bubbles: n = !1, cancelable: r = !1 } = {}) {
82    return new CustomEvent(t, { detail: e, bubbles: n, cancelable: r });
83}
84function Oe(t) {
85    const e = {};
86    return t.childNodes.forEach(
87        /** @param {Element} node */
88        (n) => {
89            e[n.slot || "default"] = !0;
90        }
91    ), e;
92}
93let B;
94function O(t) {
95    B = t;
96}
97function ee() {
98    if (!B)
99        throw new Error("Function called outside component initialization");
100    return B;
101}
102function Be(t) {
103    ee().$$.on_mount.push(t);
104}
105function He(t) {
106    ee().$$.on_destroy.push(t);
107}
108function We() {
109    const t = ee();
110    return (e, n, { cancelable: r = !1 } = {}) => {
111        const l = t.$$.callbacks[e];
112        if (l) {
113            const i = Ze(
114                /** @type {string} */
115                e,
116                n,
117                { cancelable: r }
118            );
119            return l.slice().forEach((s) => {
120                s.call(t, i);
121            }), !i.defaultPrevented;
122        }
123        return !0;
124    };
125}
126const F = [], z = [];
127let Y = [];
128const oe = [], me = /* @__PURE__ */ Promise.resolve();
129let J = !1;
130function we() {
131    J || (J = !0, me.then(C));
132}
133function Pe() {
134    return we(), me;
135}
136function Q(t) {
137    Y.push(t);
138}
139const K = /* @__PURE__ */ new Set();
140let U = 0;
141function C() {
142    if (U !== 0)
143        return;
144    const t = B;
145    do {
146        try {
147            for (; U < F.length; ) {
148                const e = F[U];
149                U++, O(e), Te(e.$$);
150            }
151        } catch (e) {
152            throw F.length = 0, U = 0, e;
153        }
154        for (O(null), F.length = 0, U = 0; z.length; )
155            z.pop()();
156        for (let e = 0; e < Y.length; e += 1) {
157            const n = Y[e];
158            K.has(n) || (K.add(n), n());
159        }
160        Y.length = 0;
161    } while (F.length);
162    for (; oe.length; )
163        oe.pop()();
164    J = !1, K.clear(), O(t);
165}
166function Te(t) {
167    if (t.fragment !== null) {
168        t.update(), H(t.before_update);
169        const e = t.dirty;
170        t.dirty = [-1], t.fragment && t.fragment.p(t.ctx, e), t.after_update.forEach(Q);
171    }
172}
173function Xe(t) {
174    const e = [], n = [];
175    Y.forEach((r) => t.indexOf(r) === -1 ? e.push(r) : n.push(r)), n.forEach((r) => r()), Y = e;
176}
177const De = /* @__PURE__ */ new Set();
178function Ke(t, e) {
179    t && t.i && (De.delete(t), t.i(e));
180}
181function ze(t, e, n) {
182    const { fragment: r, after_update: l } = t.$$;
183    r && r.m(e, n), Q(() => {
184        const i = t.$$.on_mount.map(de).filter(ge);
185        t.$$.on_destroy ? t.$$.on_destroy.push(...i) : H(i), t.$$.on_mount = [];
186    }), l.forEach(Q);
187}
188function Je(t, e) {
189    const n = t.$$;
vendor: 8,389 bytes, lines 190-436
190    n.fragment !== null && (Xe(n.after_update), H(n.on_destroy), n.fragment && n.fragment.d(e), n.on_destroy = n.fragment = null, n.ctx = []);
191}
192function Qe(t, e) {
193    t.$$.dirty[0] === -1 && (F.push(t), we(), t.$$.dirty.fill(0)), t.$$.dirty[e / 31 | 0] |= 1 << e % 31;
194}
195function et(t, e, n, r, l, i, s = null, a = [-1]) {
196    const u = B;
197    O(t);
198    const f = t.$$ = {
199        fragment: null,
200        ctx: [],
201        // state
202        props: i,
203        update: Z,
204        not_equal: l,
205        bound: ie(),
206        // lifecycle
207        on_mount: [],
208        on_destroy: [],
209        on_disconnect: [],
210        before_update: [],
211        after_update: [],
212        context: new Map(e.context || (u ? u.$$.context : [])),
213        // everything else
214        callbacks: ie(),
215        dirty: a,
216        skip_bound: !1,
217        root: e.target || u.$$.root
218    };
219    s && s(f.root);
220    let N = !1;
221    if (f.ctx = n ? n(t, e.props || {}, (y, R, ...L) => {
222        const j = L.length ? L[0] : R;
223        return f.ctx && l(f.ctx[y], f.ctx[y] = j) && (!f.skip_bound && f.bound[y] && f.bound[y](j), N && Qe(t, y)), R;
224    }) : [], f.update(), N = !0, H(f.before_update), f.fragment = r ? r(f.ctx) : !1, e.target) {
225        if (e.hydrate) {
226            const y = Ye(e.target);
227            f.fragment && f.fragment.l(y), y.forEach(I);
228        } else
229            f.fragment && f.fragment.c();
230        e.intro && Ke(t.$$.fragment), ze(t, e.target, e.anchor), C();
231    }
232    O(u);
233}
234let be;
235typeof HTMLElement == "function" && (be = class extends HTMLElement {
236    constructor(e, n, r) {
237        super();
238        /** The Svelte component constructor */
239        x(this, "$$ctor");
240        /** Slots */
241        x(this, "$$s");
242        /** The Svelte component instance */
243        x(this, "$$c");
244        /** Whether or not the custom element is connected */
245        x(this, "$$cn", !1);
246        /** Component props data */
247        x(this, "$$d", {});
248        /** `true` if currently in the process of reflecting component props back to attributes */
249        x(this, "$$r", !1);
250        /** @type {Record<string, CustomElementPropDefinition>} Props definition (name, reflected, type etc) */
251        x(this, "$$p_d", {});
252        /** @type {Record<string, Function[]>} Event listeners */
253        x(this, "$$l", {});
254        /** @type {Map<Function, Function>} Event listener unsubscribe functions */
255        x(this, "$$l_u", /* @__PURE__ */ new Map());
256        this.$$ctor = e, this.$$s = n, r && this.attachShadow({ mode: "open" });
257    }
258    addEventListener(e, n, r) {
259        if (this.$$l[e] = this.$$l[e] || [], this.$$l[e].push(n), this.$$c) {
260            const l = this.$$c.$on(e, n);
261            this.$$l_u.set(n, l);
262        }
263        super.addEventListener(e, n, r);
264    }
265    removeEventListener(e, n, r) {
266        if (super.removeEventListener(e, n, r), this.$$c) {
267            const l = this.$$l_u.get(n);
268            l && (l(), this.$$l_u.delete(n));
269        }
270    }
271    async connectedCallback() {
272        if (this.$$cn = !0, !this.$$c) {
273            let e = function(i) {
274                return () => {
275                    let s;
276                    return {
277                        c: function() {
278                            s = v("slot"), i !== "default" && c(s, "name", i);
279                        },
280                        /**
281                         * @param {HTMLElement} target
282                         * @param {HTMLElement} [anchor]
283                         */
284                        m: function(f, N) {
285                            q(f, s, N);
286                        },
287                        d: function(f) {
288                            f && I(s);
289                        }
290                    };
291                };
292            };
293            if (await Promise.resolve(), !this.$$cn)
294                return;
295            const n = {}, r = Oe(this);
296            for (const i of this.$$s)
297                i in r && (n[i] = [e(i)]);
298            for (const i of this.attributes) {
299                const s = this.$$g_p(i.name);
300                s in this.$$d || (this.$$d[s] = P(s, i.value, this.$$p_d, "toProp"));
301            }
302            this.$$c = new this.$$ctor({
303                target: this.shadowRoot || this,
304                props: {
305                    ...this.$$d,
306                    $$slots: n,
307                    $$scope: {
308                        ctx: []
309                    }
310                }
311            });
312            const l = () => {
313                this.$$r = !0;
314                for (const i in this.$$p_d)
315                    if (this.$$d[i] = this.$$c.$$.ctx[this.$$c.$$.props[i]], this.$$p_d[i].reflect) {
316                        const s = P(
317                            i,
318                            this.$$d[i],
319                            this.$$p_d,
320                            "toAttribute"
321                        );
322                        s == null ? this.removeAttribute(this.$$p_d[i].attribute || i) : this.setAttribute(this.$$p_d[i].attribute || i, s);
323                    }
324                this.$$r = !1;
325            };
326            this.$$c.$$.after_update.push(l), l();
327            for (const i in this.$$l)
328                for (const s of this.$$l[i]) {
329                    const a = this.$$c.$on(i, s);
330                    this.$$l_u.set(s, a);
331                }
332            this.$$l = {};
333        }
334    }
335    // We don't need this when working within Svelte code, but for compatibility of people using this outside of Svelte
336    // and setting attributes through setAttribute etc, this is helpful
337    attributeChangedCallback(e, n, r) {
338        var l;
339        this.$$r || (e = this.$$g_p(e), this.$$d[e] = P(e, r, this.$$p_d, "toProp"), (l = this.$$c) == null || l.$set({ [e]: this.$$d[e] }));
340    }
341    disconnectedCallback() {
342        this.$$cn = !1, Promise.resolve().then(() => {
343            this.$$cn || (this.$$c.$destroy(), this.$$c = void 0);
344        });
345    }
346    $$g_p(e) {
347        return Object.keys(this.$$p_d).find(
348            (n) => this.$$p_d[n].attribute === e || !this.$$p_d[n].attribute && n.toLowerCase() === e
349        ) || e;
350    }
351});
352function P(t, e, n, r) {
353    var i;
354    const l = (i = n[t]) == null ? void 0 : i.type;
355    if (e = l === "Boolean" && typeof e != "boolean" ? e != null : e, !r || !n[t])
356        return e;
357    if (r === "toAttribute")
358        switch (l) {
359            case "Object":
360            case "Array":
361                return e == null ? null : JSON.stringify(e);
362            case "Boolean":
363                return e ? "" : null;
364            case "Number":
365                return e ?? null;
366            default:
367                return e;
368        }
369    else
370        switch (l) {
371            case "Object":
372            case "Array":
373                return e && JSON.parse(e);
374            case "Boolean":
375                return e;
376            case "Number":
377                return e != null ? +e : e;
378            default:
379                return e;
380        }
381}
382function tt(t, e, n, r, l, i) {
383    let s = class extends be {
384        constructor() {
385            super(t, n, l), this.$$p_d = e;
386        }
387        static get observedAttributes() {
388            return Object.keys(e).map(
389                (a) => (e[a].attribute || a).toLowerCase()
390            );
391        }
392    };
393    return Object.keys(e).forEach((a) => {
394        Object.defineProperty(s.prototype, a, {
395            get() {
396                return this.$$c && a in this.$$c ? this.$$c[a] : this.$$d[a];
397            },
398            set(u) {
399                var f;
400                u = P(a, u, e), this.$$d[a] = u, (f = this.$$c) == null || f.$set({ [a]: u });
401            }
402        });
403    }), r.forEach((a) => {
404        Object.defineProperty(s.prototype, a, {
405            get() {
406                var u;
407                return (u = this.$$c) == null ? void 0 : u[a];
408            }
409        });
410    }), i && (s = i(s)), t.element = /** @type {any} */
411        s, s;
412}
413class nt {
414    constructor() {
415        /**
416         * ### PRIVATE API
417         *
418         * Do not use, may change at any time
419         *
420         * @type {any}
421         */
422        x(this, "$$");
423        /**
424         * ### PRIVATE API
425         *
426         * Do not use, may change at any time
427         *
428         * @type {any}
429         */
430        x(this, "$$set");
431    }
432    /** @returns {void} */
433    $destroy() {
434        Je(this, 1), this.$destroy = Z;
435    }
436    /**
437     * @template {Extract<keyof Events, string>} K
438     * @param {K} type
439     * @param {((e: Events[K]) => void) | null | undefined} callback
440     * @returns {() => void}
441     */
442    $on(e, n) {
443        if (!ge(n))
444            return Z;
445        const r = this.$$.callbacks[e] || (this.$$.callbacks[e] = []);
446        return r.push(n), () => {
447            const l = r.indexOf(n);
448            l !== -1 && r.splice(l, 1);
449        };
450    }
451    /**
452     * @param {Partial<Props>} props
453     * @returns {void}
454     */
455    $set(e) {
456        this.$$set && !Se(e) && (this.$$.skip_bound = !0, this.$$set(e), this.$$.skip_bound = !1);
457    }
458}
459const rt = "4";
460typeof window < "u" && (window.__svelte || (window.__svelte = { v: /* @__PURE__ */ new Set() })).v.add(rt);
461const _e = "KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IHI9bmV3IFRleHRFbmNvZGVyO2Z1bmN0aW9uIGMoZSl7cmV0dXJuWy4uLm5ldyBVaW50OEFycmF5KGUpXS5tYXAobj0+bi50b1N0cmluZygxNikucGFkU3RhcnQoMiwiMCIpKS5qb2luKCIiKX1hc3luYyBmdW5jdGlvbiBsKGUsbixhKXtyZXR1cm4gYyhhd2FpdCBjcnlwdG8uc3VidGxlLmRpZ2VzdChhLnRvVXBwZXJDYXNlKCksci5lbmNvZGUoZStuKSkpfWFzeW5jIGZ1bmN0aW9uIGkoZSxuLGE9IlNIQS0yNTYiLG89MWU3KXtjb25zdCBzPURhdGUubm93KCk7Zm9yKGxldCB0PTA7dDw9bzt0KyspaWYoYXdhaXQgbChuLHQsYSk9PT1lKXJldHVybntudW1iZXI6dCx0b29rOkRhdGUubm93KCktc307cmV0dXJuIG51bGx9b25tZXNzYWdlPWFzeW5jIGU9Pntjb25zdHthbGc6bixjaGFsbGVuZ2U6YSxtYXg6byxzYWx0OnN9PWUuZGF0YXx8e307aWYoYSYmcyl7Y29uc3QgdD1hd2FpdCBpKGEscyxuLG8pO3NlbGYucG9zdE1lc3NhZ2UodCYmey4uLnQsd29ya2VyOiEwfSl9ZWxzZSBzZWxmLnBvc3RNZXNzYWdlKG51bGwpfX0pKCk7Cg==", se = typeof window < "u" && window.Blob && new Blob([atob(_e)], { type: "text/javascript;charset=utf-8" });
462function it() {
463    let t;
464    try {
465        if (t = se && (window.URL || window.webkitURL).createObjectURL(se), !t)
466            throw "";
467        return new Worker(t);
468    } catch {
469        return new Worker("data:application/javascript;base64," + _e);
470    } finally {
471        t && (window.URL || window.webkitURL).revokeObjectURL(t);
472    }
473}
474const lt = 1e7, ot = new TextEncoder();
475function st(t) {
476    return [...new Uint8Array(t)].map((e) => e.toString(16).padStart(2, "0")).join("");
477}
478async function ct(t = 1e5, e = "SHA-256") {
479    const n = Date.now().toString(16), r = Math.round(Math.random() * t), l = await $e(n, r, e);
480    return {
481        algorithm: e,
482        challenge: l,
483        salt: n,
484        signature: ""
485    };
486}
487async function $e(t, e, n) {
488    return st(await crypto.subtle.digest(n.toUpperCase(), ot.encode(t + e)));
489}
490async function at(t, e, n = "SHA-256", r = lt) {
491    const l = Date.now();
492    for (let i = 0; i <= r; i++)
493        if (await $e(e, i, n) === t)
494            return {
495                number: i,
496                took: Date.now() - l
497            };
498    return null;
499}
500var p = /* @__PURE__ */ ((t) => (t.ERROR = "error", t.VERIFIED = "verified", t.VERIFYING = "verifying", t.UNVERIFIED = "unverified", t))(p || {});
501function ft(t) {
502    Ve(t, "svelte-fqcw55", ".altcha.svelte-fqcw55.svelte-fqcw55{background:var(--altcha-color-base, transparent);border:1px solid var(--altcha-color-border, #a0a0a0);border-radius:3px;color:var(--altcha-color-text, currentColor);display:flex;flex-direction:column;max-width:260px;overflow:hidden;position:relative;text-align:left}.altcha.svelte-fqcw55.svelte-fqcw55:focus-within{border-color:var(--altcha-color-border-focus, currentColor)}.altcha-main.svelte-fqcw55.svelte-fqcw55{align-items:center;display:flex;gap:0.4rem;padding:0.7rem}.altcha-label.svelte-fqcw55.svelte-fqcw55{flex-grow:1}.altcha-label.svelte-fqcw55 label.svelte-fqcw55{cursor:pointer}.altcha-logo.svelte-fqcw55.svelte-fqcw55{color:currentColor;opacity:0.3}.altcha-logo.svelte-fqcw55.svelte-fqcw55:hover{opacity:1}.altcha-error.svelte-fqcw55.svelte-fqcw55{color:var(--altcha-color-error-text, #f23939);display:flex;font-size:0.85rem;gap:0.3rem;padding:0 0.7rem 0.7rem}.altcha-footer.svelte-fqcw55.svelte-fqcw55{align-items:center;background-color:var(--altcha-color-footer-bg, transparent);display:flex;font-size:0.75rem;opacity:0.4;padding:0.2rem 0.7rem;text-align:right}.altcha-footer.svelte-fqcw55.svelte-fqcw55:hover{opacity:1}.altcha-footer.svelte-fqcw55>.svelte-fqcw55:first-child{flex-grow:1}.altcha-footer.svelte-fqcw55 a{color:currentColor}.altcha-checkbox.svelte-fqcw55.svelte-fqcw55{display:flex;align-items:center;height:24px;width:24px}.altcha-checkbox.svelte-fqcw55 input.svelte-fqcw55{width:18px;height:18px;margin:0}.altcha-hidden.svelte-fqcw55.svelte-fqcw55{display:none}.altcha-spinner.svelte-fqcw55.svelte-fqcw55{animation:svelte-fqcw55-altcha-spinner 0.75s infinite linear;transform-origin:center}@keyframes svelte-fqcw55-altcha-spinner{100%{transform:rotate(360deg)}}");
503}
504function ce(t) {
505    let e, n, r;
506    return {
507        c() {
508            e = G("svg"), n = G("path"), r = G("path"), c(n, "d", "M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z"), c(n, "fill", "currentColor"), c(n, "opacity", ".25"), c(r, "d", "M12,4a8,8,0,0,1,7.89,6.7A1.53,1.53,0,0,0,21.38,12h0a1.5,1.5,0,0,0,1.48-1.75,11,11,0,0,0-21.72,0A1.5,1.5,0,0,0,2.62,12h0a1.53,1.53,0,0,0,1.49-1.3A8,8,0,0,1,12,4Z"), c(r, "fill", "currentColor"), c(r, "class", "altcha-spinner svelte-fqcw55"), c(e, "width", "24"), c(e, "height", "24"), c(e, "viewBox", "0 0 24 24"), c(e, "xmlns", "http://www.w3.org/2000/svg");
509        },
510        m(l, i) {
511            q(l, e, i), m(e, n), m(e, r);
512        },
513        d(l) {
514            l && I(e);
515        }
516    };
517}
518function ut(t) {
519    let e, n = (
520        /*_strings*/
521        t[9].label + ""
522    ), r;
523    return {
524        c() {
525            e = v("label"), c(e, "for", r = /*name*/
526                t[3] + "_checkbox"), c(e, "class", "svelte-fqcw55");
527        },
528        m(l, i) {
529            q(l, e, i), e.innerHTML = n;
530        },
531        p(l, i) {
532            i[0] & /*_strings*/
533            512 && n !== (n = /*_strings*/
534                l[9].label + "") && (e.innerHTML = n), i[0] & /*name*/
535            8 && r !== (r = /*name*/
536                l[3] + "_checkbox") && c(e, "for", r);
537        },
538        d(l) {
539            l && I(e);
540        }
541    };
542}
543function ht(t) {
544    let e, n = (
545        /*_strings*/
546        t[9].verifying + ""
547    );
548    return {
549        c() {
550            e = v("span");
551        },
552        m(r, l) {
553            q(r, e, l), e.innerHTML = n;
554        },
555        p(r, l) {
556            l[0] & /*_strings*/
557            512 && n !== (n = /*_strings*/
558                r[9].verifying + "") && (e.innerHTML = n);
559        },
560        d(r) {
561            r && I(e);
562        }
563    };
564}
565function dt(t) {
566    let e, n = (
567        /*_strings*/
568        t[9].verified + ""
569    ), r, l;
570    return {
571        c() {
572            e = v("span"), r = M(), l = v("input"), c(l, "type", "hidden"), c(
573                l,
574                "name",
575                /*name*/
576                t[3]
577            ), l.value = /*payload*/
578                t[4];
579        },
580        m(i, s) {
581            q(i, e, s), e.innerHTML = n, q(i, r, s), q(i, l, s);
582        },
583        p(i, s) {
584            s[0] & /*_strings*/
585            512 && n !== (n = /*_strings*/
586                i[9].verified + "") && (e.innerHTML = n), s[0] & /*name*/
587            8 && c(
588                l,
589                "name",
590                /*name*/
591                i[3]
592            ), s[0] & /*payload*/
593            16 && (l.value = /*payload*/
594                i[4]);
595        },
596        d(i) {
597            i && (I(e), I(r), I(l));
598        }
599    };
600}
601function ae(t) {
602    let e, n, r, l, i, s;
603    return {
604        c() {
605            e = v("div"), n = v("a"), r = G("svg"), l = G("path"), i = G("path"), s = G("path"), c(l, "d", "M2.33955 16.4279C5.88954 20.6586 12.1971 21.2105 16.4279 17.6604C18.4699 15.947 19.6548 13.5911 19.9352 11.1365L17.9886 10.4279C17.8738 12.5624 16.909 14.6459 
60515.1423 16.1284C11.7577 18.9684 6.71167 18.5269 3.87164 15.1423C1.03163 11.7577 1.4731 6.71166 4.8577 3.87164C8.24231 1.03162 13.2883 1.4731 16.1284 4.8577C16.9767 5.86872 17.5322 7.02798 17.804 8.2324L19.9522 9.01429C19.7622 7.07737 19.0059 5.17558 17.6604 3.57212C14.1104 -0.658624 7.80283 -1.21043 3.57212 2.33956C-0.658625 5.88958 -1.21046 12.1971 2.33955 16.4279Z"), c(l, "fill", "currentColor"), c(i, "d", "M3.57212 2.33956C1.65755 3.94607 0.496389 6.11731 0.12782 8.40523L2.04639 9.13961C2.26047 7.15832 3.21057 5.25375 4.8577 3.87164C8.24231 1.03162 13.2883 1.4731 16.1284 4.8577L13.8302 6.78606L19.9633 9.13364C19.7929 7.15555 19.0335 5.20847 17.6604 3.57212C14.1104 -0.658624 7.80283 -1.21043 3.57212 2.33956Z"), c(i, "fill", "currentColor"), c(s, "d", "M7 10H5C5 12.7614 7.23858 15 10 15C12.7614 15 15 12.7614 15 10H13C13 11.6569 11.6569 13 10 13C8.3431 13 7 11.6569 7 10Z"), c(s, "fill", "currentColor"), c(r, "width", "22"), c(r, "height", "22"), c(r, "viewBox", "0 0 20 20"), c(r, "fill", "none"), c(r, "xmlns", "http://www.w3.org/2000/svg"), c(n, "href", ve), c(n, "target", "_blank"), c(n, "class", "altcha-logo svelte-fqcw55");
606        },
607        m(a, u) {
608            q(a, e, u), m(e, n), m(n, r), m(r, l), m(r, i), m(r, s);
609        },
610        p: Z,
611        d(a) {
612            a && I(e);
613        }
614    };
615}
616function fe(t) {
617    let e, n, r, l, i, s = (
618        /*_strings*/
619        t[9].error + ""
620    );
621    return {
622        c() {
623            e = v("div"), n = G("svg"), r = G("path"), l = M(), i = v("div"), c(r, "stroke-linecap", "round"), c(r, "stroke-linejoin", "round"), c(r, "d", "M6 18L18 6M6 6l12 12"), c(n, "width", "14"), c(n, "height", "14"), c(n, "xmlns", "http://www.w3.org/2000/svg"), c(n, "fill", "none"), c(n, "viewBox", "0 0 24 24"), c(n, "stroke-width", "1.5"), c(n, "stroke", "currentColor"), c(
624                i,
625                "title",
626                /*error*/
627                t[8]
628            ), c(e, "class", "altcha-error svelte-fqcw55");
629        },
630        m(a, u) {
631            q(a, e, u), m(e, n), m(n, r), m(e, l), m(e, i), i.innerHTML = s;
632        },
633        p(a, u) {
634            u[0] & /*_strings*/
635            512 && s !== (s = /*_strings*/
636                a[9].error + "") && (i.innerHTML = s), u[0] & /*error*/
637            256 && c(
638                i,
639                "title",
640                /*error*/
641                a[8]
642            );
643        },
644        d(a) {
645            a && I(e);
646        }
647    };
648}
649function ue(t) {
650    let e, n, r = (
651        /*_strings*/
652        t[9].footer + ""
653    );
654    return {
655        c() {
656            e = v("div"), n = v("div"), c(n, "class", "svelte-fqcw55"), c(e, "class", "altcha-footer svelte-fqcw55");
657        },
658        m(l, i) {
659            q(l, e, i), m(e, n), n.innerHTML = r;
660        },
661        p(l, i) {
662            i[0] & /*_strings*/
663            512 && r !== (r = /*_strings*/
664                l[9].footer + "") && (n.innerHTML = r);
665        },
666        d(l) {
667            l && I(e);
668        }
669    };
670}
671function gt(t) {
672    let e, n, r, l, i, s, a, u, f, N, y, R, L, j, _ = (
673        /*state*/
674        t[5] === p.VERIFYING && ce()
675    );
676    function A(h, b) {
677        return (
678            /*state*/
679            h[5] === p.VERIFIED ? dt : (
680                /*state*/
681                h[5] === p.VERIFYING ? ht : ut
682            )
683        );
684    }
685    let V = A(t), k = V(t), g = (
686        /*hidelogo*/
687        t[2] !== !0 && ae()
688    ), w = (
689        /*error*/
690        t[8] && fe(t)
691    ), d = (
692        /*_strings*/
693        t[9].footer && /*hidefooter*/
694        t[1] !== !0 && ue(t)
695    );
696    return {
697        c() {
698            e = v("div"), n = v("div"), _ && _.c(), r = M(), l = v("div"), i = v("input"), u = M(), f = v("div"), k.c(), N = M(), g && g.c(), y = M(), w && w.c(), R = M(), d && d.c(), c(i, "type", "checkbox"), c(i, "id", s = /*name*/
699                t[3] + "_checkbox"), i.required = a = /*auto*/
700                t[0] !== "onsubmit", c(i, "class", "svelte-fqcw55"), c(l, "class", "altcha-checkbox svelte-fqcw55"), le(
701                l,
702                "altcha-hidden",
703                /*state*/
704                t[5] === p.VERIFYING
705            ), c(f, "class", "altcha-label svelte-fqcw55"), c(n, "class", "altcha-main svelte-fqcw55"), c(e, "class", "altcha svelte-fqcw55"), c(
706                e,
707                "data-state",
708                /*state*/
709                t[5]
710            );
711        },
712        m(h, b) {
713            q(h, e, b), m(e, n), _ && _.m(n, null), m(n, r), m(n, l), m(l, i), i.checked = /*checked*/
714                t[6], m(n, u), m(n, f), k.m(f, null), m(n, N), g && g.m(n, null), m(e, y), w && w.m(e, null), m(e, R), d && d.m(e, null), t[23](e), L || (j = [
715                D(
716                    i,
717                    "change",
718                    /*input_change_handler*/
719                    t[22]
720                ),
721                D(
722                    i,
723                    "change",
724                    /*onCheckedChange*/
725                    t[10]
726                ),
727                D(
728                    i,
729                    "invalid",
730                    /*onInvalid*/
731                    t[11]
732                )
733            ], L = !0);
734        },
735        p(h, b) {
736            /*state*/
737            h[5] === p.VERIFYING ? _ || (_ = ce(), _.c(), _.m(n, r)) : _ && (_.d(1), _ = null), b[0] & /*name*/
738            8 && s !== (s = /*name*/
739                h[3] + "_checkbox") && c(i, "id", s), b[0] & /*auto*/
740            1 && a !== (a = /*auto*/
741                h[0] !== "onsubmit") && (i.required = a), b[0] & /*checked*/
742            64 && (i.checked = /*checked*/
743                h[6]), b[0] & /*state*/
744            32 && le(
745                l,
746                "altcha-hidden",
747                /*state*/
748                h[5] === p.VERIFYING
749            ), V === (V = A(h)) && k ? k.p(h, b) : (k.d(1), k = V(h), 
749k && (k.c(), k.m(f, null))), /*hidelogo*/
750                h[2] !== !0 ? g ? g.p(h, b) : (g = ae(), g.c(), g.m(n, null)) : g && (g.d(1), g = null), /*error*/
751                h[8] ? w ? w.p(h, b) : (w = fe(h), w.c(), w.m(e, R)) : w && (w.d(1), w = null), /*_strings*/
752                h[9].footer && /*hidefooter*/
753                h[1] !== !0 ? d ? d.p(h, b) : (d = ue(h), d.c(), d.m(e, null)) : d && (d.d(1), d = null), b[0] & /*state*/
754            32 && c(
755                e,
756                "data-state",
757                /*state*/
758                h[5]
759            );
760        },
761        i: Z,
762        o: Z,
763        d(h) {
764            h && I(e), _ && _.d(), k.d(), g && g.d(), w && w.d(), d && d.d(), t[23](null), L = !1, H(j);
765        }
766    };
767}
768const ve = "https://altcha.org/";
769function he(t) {
770    return JSON.parse(t);
771}
772function mt(t, e, n) {
773    let r, l, i, { auto: s = void 0 } = e, { challengeurl: a = void 0 } = e, { challengejson: u = void 0 } = e, { debug: f = !1 } = e, { hidefooter: N = !1 } = e, { hidelogo: y = !1 } = e, { name: R = "altcha" } = e, { maxnumber: L = void 0 } = e, { mockerror: j = !1 } = e, { strings: _ = void 0 } = e, { test: A = !1 } = e;
774    const V = We(), k = ["SHA-256", "SHA-384", "SHA-512"];
775    let g = !1, w, d = null, h = null, b = null, S = p.UNVERIFIED;
776    He(() => {
777        d && (d.removeEventListener("submit", te), d.removeEventListener("reset", ne), d = null);
778    }), Be(() => {
779        E("mounted", "0.1.6"), A && E("using test mode"), s !== void 0 && E("auto", s), d = w.closest("form"), d && (d.addEventListener("submit", te), d.addEventListener("reset", ne)), s === "onload" && W();
780    });
781    function E(...o) {
782        (f || o.some(($) => $ instanceof Error)) && console[o[0] instanceof Error ? "error" : "log"]("ALTCHA", ...o);
783    }
784    function te(o) {
785        d && s === "onsubmit" && S === p.UNVERIFIED && (o.preventDefault(), o.stopPropagation(), W().then(() => {
786            d == null || d.requestSubmit();
787        }));
788    }
789    function ne() {
790        T();
791    }
792    function pe(o, $) {
793        return btoa(JSON.stringify({
794            algorithm: o.algorithm,
795            challenge: o.challenge,
796            number: $.number,
797            salt: o.salt,
798            signature: o.signature,
799            test: A ? !0 : void 0,
800            took: $.took
801        }));
802    }
803    function ye(o) {
804        if (!o.algorithm)
805            throw new Error("Invalid challenge. Property algorithm is missing.");
806        if (o.signature === void 0)
807            throw new Error("Invalid challenge. Property signature is missing.");
808        if (!k.includes(o.algorithm.toUpperCase()))
809            throw new Error(`Unknown algorithm value. Allowed values: ${k.join(", ")}`);
810        if (!o.challenge || o.challenge.length < 40)
811            throw new Error("Challenge is too short. Min. 40 chars.");
812        if (!o.salt || o.salt.length < 10)
813            throw new Error("Salt is too short. Min. 10 chars.");
814    }
815    async function ke() {
816        if (j)
817            throw E("mocking error"), new Error("Mocked error.");
818        if (r)
819            return E("using provided json data"), r;
820        if (A)
821            return E("generating test challenge"), ct();
822        {
823            if (!a)
824                throw new Error("Attribute challengeurl not set.");
825            E("fetching challenge from", a);
826            const o = await fetch(a);
827            if (o.status !== 200)
828                throw new Error(`Server responded with ${o.status}.`);
829            return o.json();
830        }
831    }
832    async function Ee(o) {
833        let $ = null;
834        if ("Worker" in window) {
835            try {
836                $ = await Ce(o.challenge, o.salt, o.algorithm);
837            } catch (X) {
838                E(X);
839            }
840            if (($ == null ? void 0 : $.number) !== void 0)
841                return { data: o, solution: $ };
842        }
843        return {
844            data: o,
845            solution: await at(o.challenge, o.salt, o.algorithm, L)
846        };
847    }
848    async function Ce(o, $, X) {
849        const re = new it();
850        return new Promise((Ne) => {
851            re.addEventListener("message", (Re) => {
852                Ne(Re.data);
853            }), re.postMessage({ alg: X, challenge: o, max: L, salt: $ });
854        });
855    }
856    function xe() {
857        [p.UNVERIFIED, p.ERROR].includes(S) ? W() : n(6, g = !0);
858    }
859    function Ie() {
860        S === p.VERIFYING && alert(i.waitAlert);
861    }
862    function T(o = p.UNVERIFIED) {
863        n(6, g = !1), n(8, h = null), n(4, b = null), n(5, S = o);
864    }
865    async function W() {
866        return T(p.VERIFYING), ke().then((o) => (ye(o), E("challenge", o), Ee(o))).then(({ data: o, solution: $ }) => {
867            if (E("solution", $), ($ == null ? void 0 : $.number) !== void 0)
868                E("verified"), n(5, S = p.VERIFIED), n(6, g = !0), n(4, b = pe(o, $)), E("payload", b), Pe().then(() => {
869                    V("verified", { payload: b });
870                });
871            else
872                throw new Error("Unexpected result returned.");
873        }).catch((o) => {
874            E(o), n(5, S = p.ERROR), n(6, g = !1), n(8, h = o);
875        });
876    }
877    function Le() {
878        g = this.checked, n(6, g);
879    }
880    function qe(o) {
881        z[o ? "unshift" : "push"](() => {
882            w = o, n(7, w);
883        });
884    }
885    return t.$$set = (o) => {
886        "auto" in o && n(0, s = o.auto), "challengeurl" in o && n(12, a = o.challengeurl), "challengejson" in o && n(13, u = o.challengejson), "debug" in o && n(14, f = o.debug), "hidefooter" in o && n(1, N = o.hidefooter), "hidelogo" in o && n(2, y = o.hidelogo), "name" in o && n(3, R = o.name), "maxnumber" in o && n(15, L = o.maxnumber), "mockerror" in o && n(16, j = o.mockerror), "strings" in o && n(17, _ = o.strings), "test" in o && n(18, A = o.test);
887    }, t.$$.update = () => {
888        t.$$.dirty[0] & /*challengejson*/
889        8192 && (r = u ? he(u) : void 0), t.$$.dirty[0] & /*strings*/
890        131072 && n(21, l = _ ? he(_) : {}), t.$$.dirty[0] & /*parsedStrings*/
891        2097152 && n(9, i = {
892            error: "Verification failed. Try again later.",
893            footer: `Protected by <a href="${ve}" target="_blank">ALTCHA</a>`,
894            label: "I'm not a robot",
895            verified: "Verified",
896            verifying: "Verifying...",
897            waitAlert: "Verifying... please wait.",
898            ...l
899        }), t.$$.dirty[0] & /*payload, state*/
900        48 && V("statechange", { payload: b, state: S });
901    }, [
902        s,
903        N,
904        y,
905        R,
906        b,
907        S,
908        g,
909        w,
910        h,
911        i,
912        xe,
913        Ie,
914        a,
915        u,
916        f,
917        L,
918        j,
919        _,
920        A,
921        T,
922        W,
923        l,
924        Le,
925        qe
926    ];
927}
928class wt extends nt {
929    constructor(e) {
930        super(), et(
931            this,
932            e,
933            mt,
934            gt,
935            Ae,
936            {
937                auto: 0,
938                challengeurl: 12,
939                challengejson: 13,
940                debug: 14,
941                hidefooter: 1,
942                hidelogo: 2,
943                name: 3,
944                maxnumber: 15,
945                mockerror: 16,
946                strings: 17,
947                test: 18,
948                reset: 19,
949                verify: 20
950            },
951            ft,
952            [-1, -1]
953        );
954    }
955    get auto() {
956        return this.$$.ctx[0];
957    }
958    set auto(e) {
959        this.$$set({ auto: e }), C();
960    }
961    get challengeurl() {
962        return this.$$.ctx[12];
963    }
964    set challengeurl(e) {
965        this.$$set({ challengeurl: e }), C();
966    }
967    get challengejson() {
968        return this.$$.ctx[13];
969    }
970    set challengejson(e) {
971        this.$$set({ challengejson: e }), C();
972    }
973    get debug() {
974        return this.$$.ctx[14];
975    }
976    set debug(e) {
977        this.$$set({ debug: e }), C();
978    }
979    get hidefooter() {
980        return this.$$.ctx[1];
981    }
982    set hidefooter(e) {
983        this.$$set({ hidefooter: e }), C();
984    }
985    get hidelogo() {
986        return this.$$.ctx[2];
987    }
988    set hidelogo(e) {
989        this.$$set({ hidelogo: e }), C();
990    }
991    get name() {
992        return this.$$.ctx[3];
993    }
994    set name(e) {
995        this.$$set({ name: e }), C();
996    }
997    get maxnumber() {
998        return this.$$.ctx[15];
999    }
1000    set maxnumber(e) {
1001        this.$$set({ maxnumber: e }), C();
1002    }
1003    get mockerror() {
1004        return this.$$.ctx[16];
1005    }
1006    set mockerror(e) {
1007        this.$$set({ mockerror: e }), C();
1008    }
1009    get strings() {
1010        return this.$$.ctx[17];
1011    }
1012    set strings(e) {
1013        this.$$set({ strings: e }), C();
1014    }
1015    get test() {
1016        return this.$$.ctx[18];
1017    }
1018    set test(e) {
1019        this.$$set({ test: e }), C();
1020    }
1021    get reset() {
1022        return this.$$.ctx[19];
1023    }
1024    get verify() {
1025        return this.$$.ctx[20];
1026    }
1027}
1028customElements.define("altcha-widget", tt(wt, { auto: {}, challengeurl: {}, challengejson: {}, debug: { type: "Boolean" }, hidefooter: { type: "Boolean" }, hidelogo: { type: "Boolean" }, name: {}, maxnumber: {}, mockerror: { type: "Boolean" }, strings: {}, test: { type: "Boolean" } }, [], ["reset", "verify"], !1));
1029export {
1030    wt as Altcha
1031};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.