@blinkk/root-cms 1.0.0-rc.0 → 1.0.0-rc.2
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/app.js +3 -3
- package/dist/cli.js +32 -23
- package/dist/client.d.ts +172 -0
- package/dist/client.js +293 -0
- package/dist/core.d.ts +26 -78
- package/dist/core.js +358 -109
- package/dist/functions.js +28 -20
- package/dist/plugin.js +28 -20
- package/dist/project.js +4 -1
- package/dist/ui/signin.css +37 -58
- package/dist/ui/signin.js +1240 -695
- package/dist/ui/ui.js +9663 -8207
- package/package.json +28 -25
package/dist/ui/signin.js
CHANGED
|
@@ -1,385 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
(() => {
|
|
3
|
-
// ../../node_modules/.pnpm/preact@10.11.0/node_modules/preact/dist/preact.module.js
|
|
4
|
-
var n;
|
|
5
|
-
var l;
|
|
6
|
-
var u;
|
|
7
|
-
var i;
|
|
8
|
-
var t;
|
|
9
|
-
var o;
|
|
10
|
-
var r;
|
|
11
|
-
var f = {};
|
|
12
|
-
var e = [];
|
|
13
|
-
var c = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;
|
|
14
|
-
function s(n2, l2) {
|
|
15
|
-
for (var u2 in l2)
|
|
16
|
-
n2[u2] = l2[u2];
|
|
17
|
-
return n2;
|
|
18
|
-
}
|
|
19
|
-
function a(n2) {
|
|
20
|
-
var l2 = n2.parentNode;
|
|
21
|
-
l2 && l2.removeChild(n2);
|
|
22
|
-
}
|
|
23
|
-
function h(l2, u2, i2) {
|
|
24
|
-
var t2, o3, r2, f2 = {};
|
|
25
|
-
for (r2 in u2)
|
|
26
|
-
"key" == r2 ? t2 = u2[r2] : "ref" == r2 ? o3 = u2[r2] : f2[r2] = u2[r2];
|
|
27
|
-
if (arguments.length > 2 && (f2.children = arguments.length > 3 ? n.call(arguments, 2) : i2), "function" == typeof l2 && null != l2.defaultProps)
|
|
28
|
-
for (r2 in l2.defaultProps)
|
|
29
|
-
void 0 === f2[r2] && (f2[r2] = l2.defaultProps[r2]);
|
|
30
|
-
return v(l2, f2, t2, o3, null);
|
|
31
|
-
}
|
|
32
|
-
function v(n2, i2, t2, o3, r2) {
|
|
33
|
-
var f2 = { type: n2, props: i2, key: t2, ref: o3, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, __h: null, constructor: void 0, __v: null == r2 ? ++u : r2 };
|
|
34
|
-
return null == r2 && null != l.vnode && l.vnode(f2), f2;
|
|
35
|
-
}
|
|
36
|
-
function p(n2) {
|
|
37
|
-
return n2.children;
|
|
38
|
-
}
|
|
39
|
-
function d(n2, l2) {
|
|
40
|
-
this.props = n2, this.context = l2;
|
|
41
|
-
}
|
|
42
|
-
function _(n2, l2) {
|
|
43
|
-
if (null == l2)
|
|
44
|
-
return n2.__ ? _(n2.__, n2.__.__k.indexOf(n2) + 1) : null;
|
|
45
|
-
for (var u2; l2 < n2.__k.length; l2++)
|
|
46
|
-
if (null != (u2 = n2.__k[l2]) && null != u2.__e)
|
|
47
|
-
return u2.__e;
|
|
48
|
-
return "function" == typeof n2.type ? _(n2) : null;
|
|
49
|
-
}
|
|
50
|
-
function k(n2) {
|
|
51
|
-
var l2, u2;
|
|
52
|
-
if (null != (n2 = n2.__) && null != n2.__c) {
|
|
53
|
-
for (n2.__e = n2.__c.base = null, l2 = 0; l2 < n2.__k.length; l2++)
|
|
54
|
-
if (null != (u2 = n2.__k[l2]) && null != u2.__e) {
|
|
55
|
-
n2.__e = n2.__c.base = u2.__e;
|
|
56
|
-
break;
|
|
57
|
-
}
|
|
58
|
-
return k(n2);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
function b(n2) {
|
|
62
|
-
(!n2.__d && (n2.__d = true) && t.push(n2) && !g.__r++ || o !== l.debounceRendering) && ((o = l.debounceRendering) || setTimeout)(g);
|
|
63
|
-
}
|
|
64
|
-
function g() {
|
|
65
|
-
for (var n2; g.__r = t.length; )
|
|
66
|
-
n2 = t.sort(function(n3, l2) {
|
|
67
|
-
return n3.__v.__b - l2.__v.__b;
|
|
68
|
-
}), t = [], n2.some(function(n3) {
|
|
69
|
-
var l2, u2, i2, t2, o3, r2;
|
|
70
|
-
n3.__d && (o3 = (t2 = (l2 = n3).__v).__e, (r2 = l2.__P) && (u2 = [], (i2 = s({}, t2)).__v = t2.__v + 1, j(r2, t2, i2, l2.__n, void 0 !== r2.ownerSVGElement, null != t2.__h ? [o3] : null, u2, null == o3 ? _(t2) : o3, t2.__h), z(u2, t2), t2.__e != o3 && k(t2)));
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
function w(n2, l2, u2, i2, t2, o3, r2, c2, s2, a2) {
|
|
74
|
-
var h2, y, d2, k2, b2, g2, w2, x2 = i2 && i2.__k || e, C2 = x2.length;
|
|
75
|
-
for (u2.__k = [], h2 = 0; h2 < l2.length; h2++)
|
|
76
|
-
if (null != (k2 = u2.__k[h2] = null == (k2 = l2[h2]) || "boolean" == typeof k2 ? null : "string" == typeof k2 || "number" == typeof k2 || "bigint" == typeof k2 ? v(null, k2, null, null, k2) : Array.isArray(k2) ? v(p, { children: k2 }, null, null, null) : k2.__b > 0 ? v(k2.type, k2.props, k2.key, k2.ref ? k2.ref : null, k2.__v) : k2)) {
|
|
77
|
-
if (k2.__ = u2, k2.__b = u2.__b + 1, null === (d2 = x2[h2]) || d2 && k2.key == d2.key && k2.type === d2.type)
|
|
78
|
-
x2[h2] = void 0;
|
|
79
|
-
else
|
|
80
|
-
for (y = 0; y < C2; y++) {
|
|
81
|
-
if ((d2 = x2[y]) && k2.key == d2.key && k2.type === d2.type) {
|
|
82
|
-
x2[y] = void 0;
|
|
83
|
-
break;
|
|
84
|
-
}
|
|
85
|
-
d2 = null;
|
|
86
|
-
}
|
|
87
|
-
j(n2, k2, d2 = d2 || f, t2, o3, r2, c2, s2, a2), b2 = k2.__e, (y = k2.ref) && d2.ref != y && (w2 || (w2 = []), d2.ref && w2.push(d2.ref, null, k2), w2.push(y, k2.__c || b2, k2)), null != b2 ? (null == g2 && (g2 = b2), "function" == typeof k2.type && k2.__k === d2.__k ? k2.__d = s2 = m(k2, s2, n2) : s2 = A(n2, k2, d2, x2, b2, s2), "function" == typeof u2.type && (u2.__d = s2)) : s2 && d2.__e == s2 && s2.parentNode != n2 && (s2 = _(d2));
|
|
88
|
-
}
|
|
89
|
-
for (u2.__e = g2, h2 = C2; h2--; )
|
|
90
|
-
null != x2[h2] && ("function" == typeof u2.type && null != x2[h2].__e && x2[h2].__e == u2.__d && (u2.__d = _(i2, h2 + 1)), N(x2[h2], x2[h2]));
|
|
91
|
-
if (w2)
|
|
92
|
-
for (h2 = 0; h2 < w2.length; h2++)
|
|
93
|
-
M(w2[h2], w2[++h2], w2[++h2]);
|
|
94
|
-
}
|
|
95
|
-
function m(n2, l2, u2) {
|
|
96
|
-
for (var i2, t2 = n2.__k, o3 = 0; t2 && o3 < t2.length; o3++)
|
|
97
|
-
(i2 = t2[o3]) && (i2.__ = n2, l2 = "function" == typeof i2.type ? m(i2, l2, u2) : A(u2, i2, i2, t2, i2.__e, l2));
|
|
98
|
-
return l2;
|
|
99
|
-
}
|
|
100
|
-
function x(n2, l2) {
|
|
101
|
-
return l2 = l2 || [], null == n2 || "boolean" == typeof n2 || (Array.isArray(n2) ? n2.some(function(n3) {
|
|
102
|
-
x(n3, l2);
|
|
103
|
-
}) : l2.push(n2)), l2;
|
|
104
|
-
}
|
|
105
|
-
function A(n2, l2, u2, i2, t2, o3) {
|
|
106
|
-
var r2, f2, e2;
|
|
107
|
-
if (void 0 !== l2.__d)
|
|
108
|
-
r2 = l2.__d, l2.__d = void 0;
|
|
109
|
-
else if (null == u2 || t2 != o3 || null == t2.parentNode)
|
|
110
|
-
n:
|
|
111
|
-
if (null == o3 || o3.parentNode !== n2)
|
|
112
|
-
n2.appendChild(t2), r2 = null;
|
|
113
|
-
else {
|
|
114
|
-
for (f2 = o3, e2 = 0; (f2 = f2.nextSibling) && e2 < i2.length; e2 += 2)
|
|
115
|
-
if (f2 == t2)
|
|
116
|
-
break n;
|
|
117
|
-
n2.insertBefore(t2, o3), r2 = o3;
|
|
118
|
-
}
|
|
119
|
-
return void 0 !== r2 ? r2 : t2.nextSibling;
|
|
120
|
-
}
|
|
121
|
-
function C(n2, l2, u2, i2, t2) {
|
|
122
|
-
var o3;
|
|
123
|
-
for (o3 in u2)
|
|
124
|
-
"children" === o3 || "key" === o3 || o3 in l2 || H(n2, o3, null, u2[o3], i2);
|
|
125
|
-
for (o3 in l2)
|
|
126
|
-
t2 && "function" != typeof l2[o3] || "children" === o3 || "key" === o3 || "value" === o3 || "checked" === o3 || u2[o3] === l2[o3] || H(n2, o3, l2[o3], u2[o3], i2);
|
|
127
|
-
}
|
|
128
|
-
function $(n2, l2, u2) {
|
|
129
|
-
"-" === l2[0] ? n2.setProperty(l2, u2) : n2[l2] = null == u2 ? "" : "number" != typeof u2 || c.test(l2) ? u2 : u2 + "px";
|
|
130
|
-
}
|
|
131
|
-
function H(n2, l2, u2, i2, t2) {
|
|
132
|
-
var o3;
|
|
133
|
-
n:
|
|
134
|
-
if ("style" === l2)
|
|
135
|
-
if ("string" == typeof u2)
|
|
136
|
-
n2.style.cssText = u2;
|
|
137
|
-
else {
|
|
138
|
-
if ("string" == typeof i2 && (n2.style.cssText = i2 = ""), i2)
|
|
139
|
-
for (l2 in i2)
|
|
140
|
-
u2 && l2 in u2 || $(n2.style, l2, "");
|
|
141
|
-
if (u2)
|
|
142
|
-
for (l2 in u2)
|
|
143
|
-
i2 && u2[l2] === i2[l2] || $(n2.style, l2, u2[l2]);
|
|
144
|
-
}
|
|
145
|
-
else if ("o" === l2[0] && "n" === l2[1])
|
|
146
|
-
o3 = l2 !== (l2 = l2.replace(/Capture$/, "")), l2 = l2.toLowerCase() in n2 ? l2.toLowerCase().slice(2) : l2.slice(2), n2.l || (n2.l = {}), n2.l[l2 + o3] = u2, u2 ? i2 || n2.addEventListener(l2, o3 ? T : I, o3) : n2.removeEventListener(l2, o3 ? T : I, o3);
|
|
147
|
-
else if ("dangerouslySetInnerHTML" !== l2) {
|
|
148
|
-
if (t2)
|
|
149
|
-
l2 = l2.replace(/xlink(H|:h)/, "h").replace(/sName$/, "s");
|
|
150
|
-
else if ("href" !== l2 && "list" !== l2 && "form" !== l2 && "tabIndex" !== l2 && "download" !== l2 && l2 in n2)
|
|
151
|
-
try {
|
|
152
|
-
n2[l2] = null == u2 ? "" : u2;
|
|
153
|
-
break n;
|
|
154
|
-
} catch (n3) {
|
|
155
|
-
}
|
|
156
|
-
"function" == typeof u2 || (null != u2 && (false !== u2 || "a" === l2[0] && "r" === l2[1]) ? n2.setAttribute(l2, u2) : n2.removeAttribute(l2));
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
function I(n2) {
|
|
160
|
-
this.l[n2.type + false](l.event ? l.event(n2) : n2);
|
|
161
|
-
}
|
|
162
|
-
function T(n2) {
|
|
163
|
-
this.l[n2.type + true](l.event ? l.event(n2) : n2);
|
|
164
|
-
}
|
|
165
|
-
function j(n2, u2, i2, t2, o3, r2, f2, e2, c2) {
|
|
166
|
-
var a2, h2, v2, y, _3, k2, b2, g2, m2, x2, A2, C2, $2, H2 = u2.type;
|
|
167
|
-
if (void 0 !== u2.constructor)
|
|
168
|
-
return null;
|
|
169
|
-
null != i2.__h && (c2 = i2.__h, e2 = u2.__e = i2.__e, u2.__h = null, r2 = [e2]), (a2 = l.__b) && a2(u2);
|
|
170
|
-
try {
|
|
171
|
-
n:
|
|
172
|
-
if ("function" == typeof H2) {
|
|
173
|
-
if (g2 = u2.props, m2 = (a2 = H2.contextType) && t2[a2.__c], x2 = a2 ? m2 ? m2.props.value : a2.__ : t2, i2.__c ? b2 = (h2 = u2.__c = i2.__c).__ = h2.__E : ("prototype" in H2 && H2.prototype.render ? u2.__c = h2 = new H2(g2, x2) : (u2.__c = h2 = new d(g2, x2), h2.constructor = H2, h2.render = O), m2 && m2.sub(h2), h2.props = g2, h2.state || (h2.state = {}), h2.context = x2, h2.__n = t2, v2 = h2.__d = true, h2.__h = []), null == h2.__s && (h2.__s = h2.state), null != H2.getDerivedStateFromProps && (h2.__s == h2.state && (h2.__s = s({}, h2.__s)), s(h2.__s, H2.getDerivedStateFromProps(g2, h2.__s))), y = h2.props, _3 = h2.state, v2)
|
|
174
|
-
null == H2.getDerivedStateFromProps && null != h2.componentWillMount && h2.componentWillMount(), null != h2.componentDidMount && h2.__h.push(h2.componentDidMount);
|
|
175
|
-
else {
|
|
176
|
-
if (null == H2.getDerivedStateFromProps && g2 !== y && null != h2.componentWillReceiveProps && h2.componentWillReceiveProps(g2, x2), !h2.__e && null != h2.shouldComponentUpdate && false === h2.shouldComponentUpdate(g2, h2.__s, x2) || u2.__v === i2.__v) {
|
|
177
|
-
h2.props = g2, h2.state = h2.__s, u2.__v !== i2.__v && (h2.__d = false), h2.__v = u2, u2.__e = i2.__e, u2.__k = i2.__k, u2.__k.forEach(function(n3) {
|
|
178
|
-
n3 && (n3.__ = u2);
|
|
179
|
-
}), h2.__h.length && f2.push(h2);
|
|
180
|
-
break n;
|
|
181
|
-
}
|
|
182
|
-
null != h2.componentWillUpdate && h2.componentWillUpdate(g2, h2.__s, x2), null != h2.componentDidUpdate && h2.__h.push(function() {
|
|
183
|
-
h2.componentDidUpdate(y, _3, k2);
|
|
184
|
-
});
|
|
185
|
-
}
|
|
186
|
-
if (h2.context = x2, h2.props = g2, h2.__v = u2, h2.__P = n2, A2 = l.__r, C2 = 0, "prototype" in H2 && H2.prototype.render)
|
|
187
|
-
h2.state = h2.__s, h2.__d = false, A2 && A2(u2), a2 = h2.render(h2.props, h2.state, h2.context);
|
|
188
|
-
else
|
|
189
|
-
do {
|
|
190
|
-
h2.__d = false, A2 && A2(u2), a2 = h2.render(h2.props, h2.state, h2.context), h2.state = h2.__s;
|
|
191
|
-
} while (h2.__d && ++C2 < 25);
|
|
192
|
-
h2.state = h2.__s, null != h2.getChildContext && (t2 = s(s({}, t2), h2.getChildContext())), v2 || null == h2.getSnapshotBeforeUpdate || (k2 = h2.getSnapshotBeforeUpdate(y, _3)), $2 = null != a2 && a2.type === p && null == a2.key ? a2.props.children : a2, w(n2, Array.isArray($2) ? $2 : [$2], u2, i2, t2, o3, r2, f2, e2, c2), h2.base = u2.__e, u2.__h = null, h2.__h.length && f2.push(h2), b2 && (h2.__E = h2.__ = null), h2.__e = false;
|
|
193
|
-
} else
|
|
194
|
-
null == r2 && u2.__v === i2.__v ? (u2.__k = i2.__k, u2.__e = i2.__e) : u2.__e = L(i2.__e, u2, i2, t2, o3, r2, f2, c2);
|
|
195
|
-
(a2 = l.diffed) && a2(u2);
|
|
196
|
-
} catch (n3) {
|
|
197
|
-
u2.__v = null, (c2 || null != r2) && (u2.__e = e2, u2.__h = !!c2, r2[r2.indexOf(e2)] = null), l.__e(n3, u2, i2);
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
function z(n2, u2) {
|
|
201
|
-
l.__c && l.__c(u2, n2), n2.some(function(u3) {
|
|
202
|
-
try {
|
|
203
|
-
n2 = u3.__h, u3.__h = [], n2.some(function(n3) {
|
|
204
|
-
n3.call(u3);
|
|
205
|
-
});
|
|
206
|
-
} catch (n3) {
|
|
207
|
-
l.__e(n3, u3.__v);
|
|
208
|
-
}
|
|
209
|
-
});
|
|
210
|
-
}
|
|
211
|
-
function L(l2, u2, i2, t2, o3, r2, e2, c2) {
|
|
212
|
-
var s2, h2, v2, y = i2.props, p2 = u2.props, d2 = u2.type, k2 = 0;
|
|
213
|
-
if ("svg" === d2 && (o3 = true), null != r2) {
|
|
214
|
-
for (; k2 < r2.length; k2++)
|
|
215
|
-
if ((s2 = r2[k2]) && "setAttribute" in s2 == !!d2 && (d2 ? s2.localName === d2 : 3 === s2.nodeType)) {
|
|
216
|
-
l2 = s2, r2[k2] = null;
|
|
217
|
-
break;
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
if (null == l2) {
|
|
221
|
-
if (null === d2)
|
|
222
|
-
return document.createTextNode(p2);
|
|
223
|
-
l2 = o3 ? document.createElementNS("http://www.w3.org/2000/svg", d2) : document.createElement(d2, p2.is && p2), r2 = null, c2 = false;
|
|
224
|
-
}
|
|
225
|
-
if (null === d2)
|
|
226
|
-
y === p2 || c2 && l2.data === p2 || (l2.data = p2);
|
|
227
|
-
else {
|
|
228
|
-
if (r2 = r2 && n.call(l2.childNodes), h2 = (y = i2.props || f).dangerouslySetInnerHTML, v2 = p2.dangerouslySetInnerHTML, !c2) {
|
|
229
|
-
if (null != r2)
|
|
230
|
-
for (y = {}, k2 = 0; k2 < l2.attributes.length; k2++)
|
|
231
|
-
y[l2.attributes[k2].name] = l2.attributes[k2].value;
|
|
232
|
-
(v2 || h2) && (v2 && (h2 && v2.__html == h2.__html || v2.__html === l2.innerHTML) || (l2.innerHTML = v2 && v2.__html || ""));
|
|
233
|
-
}
|
|
234
|
-
if (C(l2, p2, y, o3, c2), v2)
|
|
235
|
-
u2.__k = [];
|
|
236
|
-
else if (k2 = u2.props.children, w(l2, Array.isArray(k2) ? k2 : [k2], u2, i2, t2, o3 && "foreignObject" !== d2, r2, e2, r2 ? r2[0] : i2.__k && _(i2, 0), c2), null != r2)
|
|
237
|
-
for (k2 = r2.length; k2--; )
|
|
238
|
-
null != r2[k2] && a(r2[k2]);
|
|
239
|
-
c2 || ("value" in p2 && void 0 !== (k2 = p2.value) && (k2 !== l2.value || "progress" === d2 && !k2 || "option" === d2 && k2 !== y.value) && H(l2, "value", k2, y.value, false), "checked" in p2 && void 0 !== (k2 = p2.checked) && k2 !== l2.checked && H(l2, "checked", k2, y.checked, false));
|
|
240
|
-
}
|
|
241
|
-
return l2;
|
|
242
|
-
}
|
|
243
|
-
function M(n2, u2, i2) {
|
|
244
|
-
try {
|
|
245
|
-
"function" == typeof n2 ? n2(u2) : n2.current = u2;
|
|
246
|
-
} catch (n3) {
|
|
247
|
-
l.__e(n3, i2);
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
function N(n2, u2, i2) {
|
|
251
|
-
var t2, o3;
|
|
252
|
-
if (l.unmount && l.unmount(n2), (t2 = n2.ref) && (t2.current && t2.current !== n2.__e || M(t2, null, u2)), null != (t2 = n2.__c)) {
|
|
253
|
-
if (t2.componentWillUnmount)
|
|
254
|
-
try {
|
|
255
|
-
t2.componentWillUnmount();
|
|
256
|
-
} catch (n3) {
|
|
257
|
-
l.__e(n3, u2);
|
|
258
|
-
}
|
|
259
|
-
t2.base = t2.__P = null, n2.__c = void 0;
|
|
260
|
-
}
|
|
261
|
-
if (t2 = n2.__k)
|
|
262
|
-
for (o3 = 0; o3 < t2.length; o3++)
|
|
263
|
-
t2[o3] && N(t2[o3], u2, "function" != typeof n2.type);
|
|
264
|
-
i2 || null == n2.__e || a(n2.__e), n2.__ = n2.__e = n2.__d = void 0;
|
|
265
|
-
}
|
|
266
|
-
function O(n2, l2, u2) {
|
|
267
|
-
return this.constructor(n2, u2);
|
|
268
|
-
}
|
|
269
|
-
function P(u2, i2, t2) {
|
|
270
|
-
var o3, r2, e2;
|
|
271
|
-
l.__ && l.__(u2, i2), r2 = (o3 = "function" == typeof t2) ? null : t2 && t2.__k || i2.__k, e2 = [], j(i2, u2 = (!o3 && t2 || i2).__k = h(p, null, [u2]), r2 || f, f, void 0 !== i2.ownerSVGElement, !o3 && t2 ? [t2] : r2 ? null : i2.firstChild ? n.call(i2.childNodes) : null, e2, !o3 && t2 ? t2 : r2 ? r2.__e : i2.firstChild, o3), z(e2, u2);
|
|
272
|
-
}
|
|
273
|
-
n = e.slice, l = { __e: function(n2, l2, u2, i2) {
|
|
274
|
-
for (var t2, o3, r2; l2 = l2.__; )
|
|
275
|
-
if ((t2 = l2.__c) && !t2.__)
|
|
276
|
-
try {
|
|
277
|
-
if ((o3 = t2.constructor) && null != o3.getDerivedStateFromError && (t2.setState(o3.getDerivedStateFromError(n2)), r2 = t2.__d), null != t2.componentDidCatch && (t2.componentDidCatch(n2, i2 || {}), r2 = t2.__d), r2)
|
|
278
|
-
return t2.__E = t2;
|
|
279
|
-
} catch (l3) {
|
|
280
|
-
n2 = l3;
|
|
281
|
-
}
|
|
282
|
-
throw n2;
|
|
283
|
-
} }, u = 0, i = function(n2) {
|
|
284
|
-
return null != n2 && void 0 === n2.constructor;
|
|
285
|
-
}, d.prototype.setState = function(n2, l2) {
|
|
286
|
-
var u2;
|
|
287
|
-
u2 = null != this.__s && this.__s !== this.state ? this.__s : this.__s = s({}, this.state), "function" == typeof n2 && (n2 = n2(s({}, u2), this.props)), n2 && s(u2, n2), null != n2 && this.__v && (l2 && this.__h.push(l2), b(this));
|
|
288
|
-
}, d.prototype.forceUpdate = function(n2) {
|
|
289
|
-
this.__v && (this.__e = true, n2 && this.__h.push(n2), b(this));
|
|
290
|
-
}, d.prototype.render = p, t = [], g.__r = 0, r = 0;
|
|
291
|
-
|
|
292
|
-
// ../../node_modules/.pnpm/@tabler+icons-preact@2.17.0_preact@10.11.0/node_modules/@tabler/icons-preact/dist/esm/defaultAttributes.js
|
|
293
|
-
var defaultAttributes = {
|
|
294
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
295
|
-
width: 24,
|
|
296
|
-
height: 24,
|
|
297
|
-
viewBox: "0 0 24 24",
|
|
298
|
-
fill: "none",
|
|
299
|
-
stroke: "currentColor",
|
|
300
|
-
"stroke-width": 2,
|
|
301
|
-
"stroke-linecap": "round",
|
|
302
|
-
"stroke-linejoin": "round"
|
|
303
|
-
};
|
|
304
|
-
|
|
305
|
-
// ../../node_modules/.pnpm/@tabler+icons-preact@2.17.0_preact@10.11.0/node_modules/@tabler/icons-preact/dist/esm/createPreactComponent.js
|
|
306
|
-
var __defProp = Object.defineProperty;
|
|
307
|
-
var __defProps = Object.defineProperties;
|
|
308
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
309
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
310
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
311
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
312
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
313
|
-
var __spreadValues = (a2, b2) => {
|
|
314
|
-
for (var prop in b2 || (b2 = {}))
|
|
315
|
-
if (__hasOwnProp.call(b2, prop))
|
|
316
|
-
__defNormalProp(a2, prop, b2[prop]);
|
|
317
|
-
if (__getOwnPropSymbols)
|
|
318
|
-
for (var prop of __getOwnPropSymbols(b2)) {
|
|
319
|
-
if (__propIsEnum.call(b2, prop))
|
|
320
|
-
__defNormalProp(a2, prop, b2[prop]);
|
|
321
|
-
}
|
|
322
|
-
return a2;
|
|
323
|
-
};
|
|
324
|
-
var __spreadProps = (a2, b2) => __defProps(a2, __getOwnPropDescs(b2));
|
|
325
|
-
var __objRest = (source, exclude) => {
|
|
326
|
-
var target = {};
|
|
327
|
-
for (var prop in source)
|
|
328
|
-
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
329
|
-
target[prop] = source[prop];
|
|
330
|
-
if (source != null && __getOwnPropSymbols)
|
|
331
|
-
for (var prop of __getOwnPropSymbols(source)) {
|
|
332
|
-
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
333
|
-
target[prop] = source[prop];
|
|
334
|
-
}
|
|
335
|
-
return target;
|
|
336
|
-
};
|
|
337
|
-
var createPreactComponent = (iconName, iconNamePascal, iconNode) => {
|
|
338
|
-
const Component2 = (_a) => {
|
|
339
|
-
var _b = _a, { color = "currentColor", size = 24, stroke = 2, children } = _b, rest = __objRest(_b, ["color", "size", "stroke", "children"]);
|
|
340
|
-
return h(
|
|
341
|
-
"svg",
|
|
342
|
-
__spreadValues(__spreadProps(__spreadValues({}, defaultAttributes), {
|
|
343
|
-
width: size,
|
|
344
|
-
height: size,
|
|
345
|
-
stroke: color,
|
|
346
|
-
"stroke-width": stroke,
|
|
347
|
-
class: `tabler-icon tabler-icon-${iconName}`
|
|
348
|
-
}), rest),
|
|
349
|
-
[...iconNode.map(([tag, attrs]) => h(tag, attrs)), ...x(children)]
|
|
350
|
-
);
|
|
351
|
-
};
|
|
352
|
-
Component2.displayName = `${iconNamePascal}`;
|
|
353
|
-
return Component2;
|
|
354
|
-
};
|
|
355
|
-
|
|
356
|
-
// ../../node_modules/.pnpm/@tabler+icons-preact@2.17.0_preact@10.11.0/node_modules/@tabler/icons-preact/dist/esm/icons/IconSitemap.js
|
|
357
|
-
var IconSitemap = createPreactComponent("sitemap", "IconSitemap", [
|
|
358
|
-
[
|
|
359
|
-
"path",
|
|
360
|
-
{
|
|
361
|
-
d: "M3 15m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",
|
|
362
|
-
key: "svg-0"
|
|
363
|
-
}
|
|
364
|
-
],
|
|
365
|
-
[
|
|
366
|
-
"path",
|
|
367
|
-
{
|
|
368
|
-
d: "M15 15m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",
|
|
369
|
-
key: "svg-1"
|
|
370
|
-
}
|
|
371
|
-
],
|
|
372
|
-
[
|
|
373
|
-
"path",
|
|
374
|
-
{
|
|
375
|
-
d: "M9 3m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",
|
|
376
|
-
key: "svg-2"
|
|
377
|
-
}
|
|
378
|
-
],
|
|
379
|
-
["path", { d: "M6 15v-1a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v1", key: "svg-3" }],
|
|
380
|
-
["path", { d: "M12 9l0 3", key: "svg-4" }]
|
|
381
|
-
]);
|
|
382
|
-
|
|
383
3
|
// ../../node_modules/.pnpm/@firebase+util@1.9.3/node_modules/@firebase/util/dist/index.esm2017.js
|
|
384
4
|
var stringToByteArray$1 = function(str) {
|
|
385
5
|
const out = [];
|
|
@@ -1437,7 +1057,7 @@
|
|
|
1437
1057
|
}
|
|
1438
1058
|
};
|
|
1439
1059
|
|
|
1440
|
-
// ../../node_modules/.pnpm/idb@7.
|
|
1060
|
+
// ../../node_modules/.pnpm/idb@7.1.1/node_modules/idb/build/wrap-idb-value.js
|
|
1441
1061
|
var instanceOfAny = (object, constructors) => constructors.some((c2) => object instanceof c2);
|
|
1442
1062
|
var idbProxyableTypes;
|
|
1443
1063
|
var cursorAdvanceMethods;
|
|
@@ -1580,22 +1200,29 @@
|
|
|
1580
1200
|
}
|
|
1581
1201
|
var unwrap = (value) => reverseTransformCache.get(value);
|
|
1582
1202
|
|
|
1583
|
-
// ../../node_modules/.pnpm/idb@7.
|
|
1203
|
+
// ../../node_modules/.pnpm/idb@7.1.1/node_modules/idb/build/index.js
|
|
1584
1204
|
function openDB(name4, version4, { blocked, upgrade, blocking, terminated } = {}) {
|
|
1585
1205
|
const request = indexedDB.open(name4, version4);
|
|
1586
1206
|
const openPromise = wrap(request);
|
|
1587
1207
|
if (upgrade) {
|
|
1588
1208
|
request.addEventListener("upgradeneeded", (event) => {
|
|
1589
|
-
upgrade(wrap(request.result), event.oldVersion, event.newVersion, wrap(request.transaction));
|
|
1209
|
+
upgrade(wrap(request.result), event.oldVersion, event.newVersion, wrap(request.transaction), event);
|
|
1590
1210
|
});
|
|
1591
1211
|
}
|
|
1592
|
-
if (blocked)
|
|
1593
|
-
request.addEventListener("blocked", () => blocked(
|
|
1212
|
+
if (blocked) {
|
|
1213
|
+
request.addEventListener("blocked", (event) => blocked(
|
|
1214
|
+
// Casting due to https://github.com/microsoft/TypeScript-DOM-lib-generator/pull/1405
|
|
1215
|
+
event.oldVersion,
|
|
1216
|
+
event.newVersion,
|
|
1217
|
+
event
|
|
1218
|
+
));
|
|
1219
|
+
}
|
|
1594
1220
|
openPromise.then((db) => {
|
|
1595
1221
|
if (terminated)
|
|
1596
1222
|
db.addEventListener("close", () => terminated());
|
|
1597
|
-
if (blocking)
|
|
1598
|
-
db.addEventListener("versionchange", () => blocking());
|
|
1223
|
+
if (blocking) {
|
|
1224
|
+
db.addEventListener("versionchange", (event) => blocking(event.oldVersion, event.newVersion, event));
|
|
1225
|
+
}
|
|
1599
1226
|
}).catch(() => {
|
|
1600
1227
|
});
|
|
1601
1228
|
return openPromise;
|
|
@@ -1637,7 +1264,7 @@
|
|
|
1637
1264
|
has: (target, prop) => !!getMethod(target, prop) || oldTraps.has(target, prop)
|
|
1638
1265
|
}));
|
|
1639
1266
|
|
|
1640
|
-
// ../../node_modules/.pnpm/@firebase+app@0.9.
|
|
1267
|
+
// ../../node_modules/.pnpm/@firebase+app@0.9.19/node_modules/@firebase/app/dist/esm/index.esm2017.js
|
|
1641
1268
|
var PlatformLoggerServiceImpl = class {
|
|
1642
1269
|
constructor(container) {
|
|
1643
1270
|
this.container = container;
|
|
@@ -1661,7 +1288,7 @@
|
|
|
1661
1288
|
return (component === null || component === void 0 ? void 0 : component.type) === "VERSION";
|
|
1662
1289
|
}
|
|
1663
1290
|
var name$o = "@firebase/app";
|
|
1664
|
-
var version$1 = "0.9.
|
|
1291
|
+
var version$1 = "0.9.19";
|
|
1665
1292
|
var logger = new Logger("@firebase/app");
|
|
1666
1293
|
var name$n = "@firebase/app-compat";
|
|
1667
1294
|
var name$m = "@firebase/analytics-compat";
|
|
@@ -1687,7 +1314,7 @@
|
|
|
1687
1314
|
var name$2 = "@firebase/firestore";
|
|
1688
1315
|
var name$1 = "@firebase/firestore-compat";
|
|
1689
1316
|
var name = "firebase";
|
|
1690
|
-
var version = "
|
|
1317
|
+
var version = "10.4.0";
|
|
1691
1318
|
var DEFAULT_ENTRY_NAME2 = "[DEFAULT]";
|
|
1692
1319
|
var PLATFORM_LOG_STRING = {
|
|
1693
1320
|
[name$o]: "fire-core",
|
|
@@ -1749,7 +1376,7 @@
|
|
|
1749
1376
|
[
|
|
1750
1377
|
"no-app"
|
|
1751
1378
|
/* AppError.NO_APP */
|
|
1752
|
-
]: "No Firebase App '{$appName}' has been created - call
|
|
1379
|
+
]: "No Firebase App '{$appName}' has been created - call initializeApp() first",
|
|
1753
1380
|
[
|
|
1754
1381
|
"bad-app-name"
|
|
1755
1382
|
/* AppError.BAD_APP_NAME */
|
|
@@ -1885,7 +1512,7 @@
|
|
|
1885
1512
|
}
|
|
1886
1513
|
function getApp(name4 = DEFAULT_ENTRY_NAME2) {
|
|
1887
1514
|
const app2 = _apps.get(name4);
|
|
1888
|
-
if (!app2 && name4 === DEFAULT_ENTRY_NAME2) {
|
|
1515
|
+
if (!app2 && name4 === DEFAULT_ENTRY_NAME2 && getDefaultAppConfig()) {
|
|
1889
1516
|
return initializeApp();
|
|
1890
1517
|
}
|
|
1891
1518
|
if (!app2) {
|
|
@@ -1948,7 +1575,8 @@
|
|
|
1948
1575
|
async function readHeartbeatsFromIndexedDB(app2) {
|
|
1949
1576
|
try {
|
|
1950
1577
|
const db = await getDbPromise();
|
|
1951
|
-
|
|
1578
|
+
const result = await db.transaction(STORE_NAME).objectStore(STORE_NAME).get(computeKey(app2));
|
|
1579
|
+
return result;
|
|
1952
1580
|
} catch (e2) {
|
|
1953
1581
|
if (e2 instanceof FirebaseError) {
|
|
1954
1582
|
logger.warn(e2.message);
|
|
@@ -1966,7 +1594,7 @@
|
|
|
1966
1594
|
const tx = db.transaction(STORE_NAME, "readwrite");
|
|
1967
1595
|
const objectStore = tx.objectStore(STORE_NAME);
|
|
1968
1596
|
await objectStore.put(heartbeatObject, computeKey(app2));
|
|
1969
|
-
|
|
1597
|
+
await tx.done;
|
|
1970
1598
|
} catch (e2) {
|
|
1971
1599
|
if (e2 instanceof FirebaseError) {
|
|
1972
1600
|
logger.warn(e2.message);
|
|
@@ -2161,9 +1789,9 @@
|
|
|
2161
1789
|
}
|
|
2162
1790
|
registerCoreComponents("");
|
|
2163
1791
|
|
|
2164
|
-
// ../../node_modules/.pnpm/firebase@
|
|
1792
|
+
// ../../node_modules/.pnpm/firebase@10.4.0/node_modules/firebase/app/dist/esm/index.esm.js
|
|
2165
1793
|
var name2 = "firebase";
|
|
2166
|
-
var version2 = "
|
|
1794
|
+
var version2 = "10.4.0";
|
|
2167
1795
|
registerVersion(name2, version2, "app");
|
|
2168
1796
|
|
|
2169
1797
|
// ../../node_modules/.pnpm/tslib@2.4.1/node_modules/tslib/tslib.es6.js
|
|
@@ -2180,7 +1808,21 @@
|
|
|
2180
1808
|
return t2;
|
|
2181
1809
|
}
|
|
2182
1810
|
|
|
2183
|
-
// ../../node_modules/.pnpm/@firebase+auth@
|
|
1811
|
+
// ../../node_modules/.pnpm/@firebase+auth@1.3.0_@firebase+app@0.9.19/node_modules/@firebase/auth/dist/esm2017/index-9a76d29a.js
|
|
1812
|
+
function isEnterprise(grecaptcha) {
|
|
1813
|
+
return grecaptcha !== void 0 && grecaptcha.enterprise !== void 0;
|
|
1814
|
+
}
|
|
1815
|
+
var RecaptchaConfig = class {
|
|
1816
|
+
constructor(response) {
|
|
1817
|
+
this.siteKey = "";
|
|
1818
|
+
this.emailPasswordEnabled = false;
|
|
1819
|
+
if (response.recaptchaKey === void 0) {
|
|
1820
|
+
throw new Error("recaptchaKey undefined");
|
|
1821
|
+
}
|
|
1822
|
+
this.siteKey = response.recaptchaKey.split("/")[3];
|
|
1823
|
+
this.emailPasswordEnabled = response.recaptchaEnforcementState.some((enforcementState) => enforcementState.provider === "EMAIL_PASSWORD_PROVIDER" && enforcementState.enforcementState !== "OFF");
|
|
1824
|
+
}
|
|
1825
|
+
};
|
|
2184
1826
|
function _prodErrorMap() {
|
|
2185
1827
|
return {
|
|
2186
1828
|
[
|
|
@@ -2192,6 +1834,11 @@
|
|
|
2192
1834
|
var prodErrorMap = _prodErrorMap;
|
|
2193
1835
|
var _DEFAULT_AUTH_ERROR_FACTORY = new ErrorFactory("auth", "Firebase", _prodErrorMap());
|
|
2194
1836
|
var logClient = new Logger("@firebase/auth");
|
|
1837
|
+
function _logWarn(msg, ...args) {
|
|
1838
|
+
if (logClient.logLevel <= LogLevel.WARN) {
|
|
1839
|
+
logClient.warn(`Auth (${SDK_VERSION}): ${msg}`, ...args);
|
|
1840
|
+
}
|
|
1841
|
+
}
|
|
2195
1842
|
function _logError(msg, ...args) {
|
|
2196
1843
|
if (logClient.logLevel <= LogLevel.ERROR) {
|
|
2197
1844
|
logClient.error(`Auth (${SDK_VERSION}): ${msg}`, ...args);
|
|
@@ -2249,44 +1896,6 @@
|
|
|
2249
1896
|
debugFail(message);
|
|
2250
1897
|
}
|
|
2251
1898
|
}
|
|
2252
|
-
var instanceCache = /* @__PURE__ */ new Map();
|
|
2253
|
-
function _getInstance(cls) {
|
|
2254
|
-
debugAssert(cls instanceof Function, "Expected a class definition");
|
|
2255
|
-
let instance = instanceCache.get(cls);
|
|
2256
|
-
if (instance) {
|
|
2257
|
-
debugAssert(instance instanceof cls, "Instance stored in cache mismatched with class");
|
|
2258
|
-
return instance;
|
|
2259
|
-
}
|
|
2260
|
-
instance = new cls();
|
|
2261
|
-
instanceCache.set(cls, instance);
|
|
2262
|
-
return instance;
|
|
2263
|
-
}
|
|
2264
|
-
function initializeAuth(app2, deps) {
|
|
2265
|
-
const provider = _getProvider(app2, "auth");
|
|
2266
|
-
if (provider.isInitialized()) {
|
|
2267
|
-
const auth3 = provider.getImmediate();
|
|
2268
|
-
const initialOptions = provider.getOptions();
|
|
2269
|
-
if (deepEqual(initialOptions, deps !== null && deps !== void 0 ? deps : {})) {
|
|
2270
|
-
return auth3;
|
|
2271
|
-
} else {
|
|
2272
|
-
_fail(
|
|
2273
|
-
auth3,
|
|
2274
|
-
"already-initialized"
|
|
2275
|
-
/* AuthErrorCode.ALREADY_INITIALIZED */
|
|
2276
|
-
);
|
|
2277
|
-
}
|
|
2278
|
-
}
|
|
2279
|
-
const auth2 = provider.initialize({ options: deps });
|
|
2280
|
-
return auth2;
|
|
2281
|
-
}
|
|
2282
|
-
function _initializeAuthInstance(auth2, deps) {
|
|
2283
|
-
const persistence = (deps === null || deps === void 0 ? void 0 : deps.persistence) || [];
|
|
2284
|
-
const hierarchy = (Array.isArray(persistence) ? persistence : [persistence]).map(_getInstance);
|
|
2285
|
-
if (deps === null || deps === void 0 ? void 0 : deps.errorMap) {
|
|
2286
|
-
auth2._updateErrorMap(deps.errorMap);
|
|
2287
|
-
}
|
|
2288
|
-
auth2._initializeWithPersistence(hierarchy, deps === null || deps === void 0 ? void 0 : deps.popupRedirectResolver);
|
|
2289
|
-
}
|
|
2290
1899
|
function _getCurrentUrl() {
|
|
2291
1900
|
var _a;
|
|
2292
1901
|
return typeof self !== "undefined" && ((_a = self.location) === null || _a === void 0 ? void 0 : _a.href) || "";
|
|
@@ -2412,7 +2021,7 @@
|
|
|
2412
2021
|
[
|
|
2413
2022
|
"MISSING_PASSWORD"
|
|
2414
2023
|
/* ServerError.MISSING_PASSWORD */
|
|
2415
|
-
]: "
|
|
2024
|
+
]: "missing-password",
|
|
2416
2025
|
// Sign up with email and password errors.
|
|
2417
2026
|
[
|
|
2418
2027
|
"EMAIL_EXISTS"
|
|
@@ -2484,6 +2093,10 @@
|
|
|
2484
2093
|
"TOO_MANY_ATTEMPTS_TRY_LATER"
|
|
2485
2094
|
/* ServerError.TOO_MANY_ATTEMPTS_TRY_LATER */
|
|
2486
2095
|
]: "too-many-requests",
|
|
2096
|
+
[
|
|
2097
|
+
"PASSWORD_DOES_NOT_MEET_REQUIREMENTS"
|
|
2098
|
+
/* ServerError.PASSWORD_DOES_NOT_MEET_REQUIREMENTS */
|
|
2099
|
+
]: "password-does-not-meet-requirements",
|
|
2487
2100
|
// Phone Auth related errors.
|
|
2488
2101
|
[
|
|
2489
2102
|
"INVALID_CODE"
|
|
@@ -2555,8 +2168,41 @@
|
|
|
2555
2168
|
[
|
|
2556
2169
|
"BLOCKING_FUNCTION_ERROR_RESPONSE"
|
|
2557
2170
|
/* ServerError.BLOCKING_FUNCTION_ERROR_RESPONSE */
|
|
2558
|
-
]: "internal-error"
|
|
2559
|
-
|
|
2171
|
+
]: "internal-error",
|
|
2172
|
+
// Recaptcha related errors.
|
|
2173
|
+
[
|
|
2174
|
+
"RECAPTCHA_NOT_ENABLED"
|
|
2175
|
+
/* ServerError.RECAPTCHA_NOT_ENABLED */
|
|
2176
|
+
]: "recaptcha-not-enabled",
|
|
2177
|
+
[
|
|
2178
|
+
"MISSING_RECAPTCHA_TOKEN"
|
|
2179
|
+
/* ServerError.MISSING_RECAPTCHA_TOKEN */
|
|
2180
|
+
]: "missing-recaptcha-token",
|
|
2181
|
+
[
|
|
2182
|
+
"INVALID_RECAPTCHA_TOKEN"
|
|
2183
|
+
/* ServerError.INVALID_RECAPTCHA_TOKEN */
|
|
2184
|
+
]: "invalid-recaptcha-token",
|
|
2185
|
+
[
|
|
2186
|
+
"INVALID_RECAPTCHA_ACTION"
|
|
2187
|
+
/* ServerError.INVALID_RECAPTCHA_ACTION */
|
|
2188
|
+
]: "invalid-recaptcha-action",
|
|
2189
|
+
[
|
|
2190
|
+
"MISSING_CLIENT_TYPE"
|
|
2191
|
+
/* ServerError.MISSING_CLIENT_TYPE */
|
|
2192
|
+
]: "missing-client-type",
|
|
2193
|
+
[
|
|
2194
|
+
"MISSING_RECAPTCHA_VERSION"
|
|
2195
|
+
/* ServerError.MISSING_RECAPTCHA_VERSION */
|
|
2196
|
+
]: "missing-recaptcha-version",
|
|
2197
|
+
[
|
|
2198
|
+
"INVALID_RECAPTCHA_VERSION"
|
|
2199
|
+
/* ServerError.INVALID_RECAPTCHA_VERSION */
|
|
2200
|
+
]: "invalid-recaptcha-version",
|
|
2201
|
+
[
|
|
2202
|
+
"INVALID_REQ_TYPE"
|
|
2203
|
+
/* ServerError.INVALID_REQ_TYPE */
|
|
2204
|
+
]: "invalid-req-type"
|
|
2205
|
+
/* AuthErrorCode.INVALID_REQ_TYPE */
|
|
2560
2206
|
};
|
|
2561
2207
|
var DEFAULT_API_TIMEOUT_MS = new Delay(3e4, 6e4);
|
|
2562
2208
|
function _addTidIfNecessary(auth2, request) {
|
|
@@ -2634,7 +2280,7 @@
|
|
|
2634
2280
|
if (e2 instanceof FirebaseError) {
|
|
2635
2281
|
throw e2;
|
|
2636
2282
|
}
|
|
2637
|
-
_fail(auth2, "
|
|
2283
|
+
_fail(auth2, "network-request-failed", { "message": String(e2) });
|
|
2638
2284
|
}
|
|
2639
2285
|
}
|
|
2640
2286
|
async function _performSignInRequest(auth2, method, path, request, customErrorMap = {}) {
|
|
@@ -2685,6 +2331,9 @@
|
|
|
2685
2331
|
error.customData._tokenResponse = response;
|
|
2686
2332
|
return error;
|
|
2687
2333
|
}
|
|
2334
|
+
async function getRecaptchaConfig(auth2, request) {
|
|
2335
|
+
return _performApiRequest(auth2, "GET", "/v2/recaptchaConfig", _addTidIfNecessary(auth2, request));
|
|
2336
|
+
}
|
|
2688
2337
|
async function deleteAccount(auth2, request) {
|
|
2689
2338
|
return _performApiRequest(auth2, "POST", "/v1/accounts:delete", request);
|
|
2690
2339
|
}
|
|
@@ -3115,7 +2764,9 @@
|
|
|
3115
2764
|
this.stsTokenManager._assign(user.stsTokenManager);
|
|
3116
2765
|
}
|
|
3117
2766
|
_clone(auth2) {
|
|
3118
|
-
|
|
2767
|
+
const newUser = new _UserImpl(Object.assign(Object.assign({}, this), { auth: auth2, stsTokenManager: this.stsTokenManager._clone() }));
|
|
2768
|
+
newUser.metadata._copy(this.metadata);
|
|
2769
|
+
return newUser;
|
|
3119
2770
|
}
|
|
3120
2771
|
_onReload(callback) {
|
|
3121
2772
|
_assert(
|
|
@@ -3271,6 +2922,18 @@
|
|
|
3271
2922
|
return user;
|
|
3272
2923
|
}
|
|
3273
2924
|
};
|
|
2925
|
+
var instanceCache = /* @__PURE__ */ new Map();
|
|
2926
|
+
function _getInstance(cls) {
|
|
2927
|
+
debugAssert(cls instanceof Function, "Expected a class definition");
|
|
2928
|
+
let instance = instanceCache.get(cls);
|
|
2929
|
+
if (instance) {
|
|
2930
|
+
debugAssert(instance instanceof cls, "Instance stored in cache mismatched with class");
|
|
2931
|
+
return instance;
|
|
2932
|
+
}
|
|
2933
|
+
instance = new cls();
|
|
2934
|
+
instanceCache.set(cls, instance);
|
|
2935
|
+
return instance;
|
|
2936
|
+
}
|
|
3274
2937
|
var InMemoryPersistence = class {
|
|
3275
2938
|
constructor() {
|
|
3276
2939
|
this.type = "NONE";
|
|
@@ -3522,10 +3185,136 @@
|
|
|
3522
3185
|
}
|
|
3523
3186
|
}
|
|
3524
3187
|
};
|
|
3188
|
+
async function _getPasswordPolicy(auth2, request = {}) {
|
|
3189
|
+
return _performApiRequest(auth2, "GET", "/v2/passwordPolicy", _addTidIfNecessary(auth2, request));
|
|
3190
|
+
}
|
|
3191
|
+
var MINIMUM_MIN_PASSWORD_LENGTH = 6;
|
|
3192
|
+
var PasswordPolicyImpl = class {
|
|
3193
|
+
constructor(response) {
|
|
3194
|
+
var _a, _b, _c, _d;
|
|
3195
|
+
const responseOptions = response.customStrengthOptions;
|
|
3196
|
+
this.customStrengthOptions = {};
|
|
3197
|
+
this.customStrengthOptions.minPasswordLength = (_a = responseOptions.minPasswordLength) !== null && _a !== void 0 ? _a : MINIMUM_MIN_PASSWORD_LENGTH;
|
|
3198
|
+
if (responseOptions.maxPasswordLength) {
|
|
3199
|
+
this.customStrengthOptions.maxPasswordLength = responseOptions.maxPasswordLength;
|
|
3200
|
+
}
|
|
3201
|
+
if (responseOptions.containsLowercaseCharacter !== void 0) {
|
|
3202
|
+
this.customStrengthOptions.containsLowercaseLetter = responseOptions.containsLowercaseCharacter;
|
|
3203
|
+
}
|
|
3204
|
+
if (responseOptions.containsUppercaseCharacter !== void 0) {
|
|
3205
|
+
this.customStrengthOptions.containsUppercaseLetter = responseOptions.containsUppercaseCharacter;
|
|
3206
|
+
}
|
|
3207
|
+
if (responseOptions.containsNumericCharacter !== void 0) {
|
|
3208
|
+
this.customStrengthOptions.containsNumericCharacter = responseOptions.containsNumericCharacter;
|
|
3209
|
+
}
|
|
3210
|
+
if (responseOptions.containsNonAlphanumericCharacter !== void 0) {
|
|
3211
|
+
this.customStrengthOptions.containsNonAlphanumericCharacter = responseOptions.containsNonAlphanumericCharacter;
|
|
3212
|
+
}
|
|
3213
|
+
this.enforcementState = response.enforcementState;
|
|
3214
|
+
if (this.enforcementState === "ENFORCEMENT_STATE_UNSPECIFIED") {
|
|
3215
|
+
this.enforcementState = "OFF";
|
|
3216
|
+
}
|
|
3217
|
+
this.allowedNonAlphanumericCharacters = (_c = (_b = response.allowedNonAlphanumericCharacters) === null || _b === void 0 ? void 0 : _b.join("")) !== null && _c !== void 0 ? _c : "";
|
|
3218
|
+
this.forceUpgradeOnSignin = (_d = response.forceUpgradeOnSignin) !== null && _d !== void 0 ? _d : false;
|
|
3219
|
+
this.schemaVersion = response.schemaVersion;
|
|
3220
|
+
}
|
|
3221
|
+
validatePassword(password) {
|
|
3222
|
+
var _a, _b, _c, _d, _e, _f;
|
|
3223
|
+
const status = {
|
|
3224
|
+
isValid: true,
|
|
3225
|
+
passwordPolicy: this
|
|
3226
|
+
};
|
|
3227
|
+
this.validatePasswordLengthOptions(password, status);
|
|
3228
|
+
this.validatePasswordCharacterOptions(password, status);
|
|
3229
|
+
status.isValid && (status.isValid = (_a = status.meetsMinPasswordLength) !== null && _a !== void 0 ? _a : true);
|
|
3230
|
+
status.isValid && (status.isValid = (_b = status.meetsMaxPasswordLength) !== null && _b !== void 0 ? _b : true);
|
|
3231
|
+
status.isValid && (status.isValid = (_c = status.containsLowercaseLetter) !== null && _c !== void 0 ? _c : true);
|
|
3232
|
+
status.isValid && (status.isValid = (_d = status.containsUppercaseLetter) !== null && _d !== void 0 ? _d : true);
|
|
3233
|
+
status.isValid && (status.isValid = (_e = status.containsNumericCharacter) !== null && _e !== void 0 ? _e : true);
|
|
3234
|
+
status.isValid && (status.isValid = (_f = status.containsNonAlphanumericCharacter) !== null && _f !== void 0 ? _f : true);
|
|
3235
|
+
return status;
|
|
3236
|
+
}
|
|
3237
|
+
/**
|
|
3238
|
+
* Validates that the password meets the length options for the policy.
|
|
3239
|
+
*
|
|
3240
|
+
* @param password Password to validate.
|
|
3241
|
+
* @param status Validation status.
|
|
3242
|
+
*/
|
|
3243
|
+
validatePasswordLengthOptions(password, status) {
|
|
3244
|
+
const minPasswordLength = this.customStrengthOptions.minPasswordLength;
|
|
3245
|
+
const maxPasswordLength = this.customStrengthOptions.maxPasswordLength;
|
|
3246
|
+
if (minPasswordLength) {
|
|
3247
|
+
status.meetsMinPasswordLength = password.length >= minPasswordLength;
|
|
3248
|
+
}
|
|
3249
|
+
if (maxPasswordLength) {
|
|
3250
|
+
status.meetsMaxPasswordLength = password.length <= maxPasswordLength;
|
|
3251
|
+
}
|
|
3252
|
+
}
|
|
3253
|
+
/**
|
|
3254
|
+
* Validates that the password meets the character options for the policy.
|
|
3255
|
+
*
|
|
3256
|
+
* @param password Password to validate.
|
|
3257
|
+
* @param status Validation status.
|
|
3258
|
+
*/
|
|
3259
|
+
validatePasswordCharacterOptions(password, status) {
|
|
3260
|
+
this.updatePasswordCharacterOptionsStatuses(
|
|
3261
|
+
status,
|
|
3262
|
+
/* containsLowercaseCharacter= */
|
|
3263
|
+
false,
|
|
3264
|
+
/* containsUppercaseCharacter= */
|
|
3265
|
+
false,
|
|
3266
|
+
/* containsNumericCharacter= */
|
|
3267
|
+
false,
|
|
3268
|
+
/* containsNonAlphanumericCharacter= */
|
|
3269
|
+
false
|
|
3270
|
+
);
|
|
3271
|
+
let passwordChar;
|
|
3272
|
+
for (let i2 = 0; i2 < password.length; i2++) {
|
|
3273
|
+
passwordChar = password.charAt(i2);
|
|
3274
|
+
this.updatePasswordCharacterOptionsStatuses(
|
|
3275
|
+
status,
|
|
3276
|
+
/* containsLowercaseCharacter= */
|
|
3277
|
+
passwordChar >= "a" && passwordChar <= "z",
|
|
3278
|
+
/* containsUppercaseCharacter= */
|
|
3279
|
+
passwordChar >= "A" && passwordChar <= "Z",
|
|
3280
|
+
/* containsNumericCharacter= */
|
|
3281
|
+
passwordChar >= "0" && passwordChar <= "9",
|
|
3282
|
+
/* containsNonAlphanumericCharacter= */
|
|
3283
|
+
this.allowedNonAlphanumericCharacters.includes(passwordChar)
|
|
3284
|
+
);
|
|
3285
|
+
}
|
|
3286
|
+
}
|
|
3287
|
+
/**
|
|
3288
|
+
* Updates the running validation status with the statuses for the character options.
|
|
3289
|
+
* Expected to be called each time a character is processed to update each option status
|
|
3290
|
+
* based on the current character.
|
|
3291
|
+
*
|
|
3292
|
+
* @param status Validation status.
|
|
3293
|
+
* @param containsLowercaseCharacter Whether the character is a lowercase letter.
|
|
3294
|
+
* @param containsUppercaseCharacter Whether the character is an uppercase letter.
|
|
3295
|
+
* @param containsNumericCharacter Whether the character is a numeric character.
|
|
3296
|
+
* @param containsNonAlphanumericCharacter Whether the character is a non-alphanumeric character.
|
|
3297
|
+
*/
|
|
3298
|
+
updatePasswordCharacterOptionsStatuses(status, containsLowercaseCharacter, containsUppercaseCharacter, containsNumericCharacter, containsNonAlphanumericCharacter) {
|
|
3299
|
+
if (this.customStrengthOptions.containsLowercaseLetter) {
|
|
3300
|
+
status.containsLowercaseLetter || (status.containsLowercaseLetter = containsLowercaseCharacter);
|
|
3301
|
+
}
|
|
3302
|
+
if (this.customStrengthOptions.containsUppercaseLetter) {
|
|
3303
|
+
status.containsUppercaseLetter || (status.containsUppercaseLetter = containsUppercaseCharacter);
|
|
3304
|
+
}
|
|
3305
|
+
if (this.customStrengthOptions.containsNumericCharacter) {
|
|
3306
|
+
status.containsNumericCharacter || (status.containsNumericCharacter = containsNumericCharacter);
|
|
3307
|
+
}
|
|
3308
|
+
if (this.customStrengthOptions.containsNonAlphanumericCharacter) {
|
|
3309
|
+
status.containsNonAlphanumericCharacter || (status.containsNonAlphanumericCharacter = containsNonAlphanumericCharacter);
|
|
3310
|
+
}
|
|
3311
|
+
}
|
|
3312
|
+
};
|
|
3525
3313
|
var AuthImpl = class {
|
|
3526
|
-
constructor(app2, heartbeatServiceProvider, config) {
|
|
3314
|
+
constructor(app2, heartbeatServiceProvider, appCheckServiceProvider, config) {
|
|
3527
3315
|
this.app = app2;
|
|
3528
3316
|
this.heartbeatServiceProvider = heartbeatServiceProvider;
|
|
3317
|
+
this.appCheckServiceProvider = appCheckServiceProvider;
|
|
3529
3318
|
this.config = config;
|
|
3530
3319
|
this.currentUser = null;
|
|
3531
3320
|
this.emulatorConfig = null;
|
|
@@ -3535,12 +3324,17 @@
|
|
|
3535
3324
|
this.beforeStateQueue = new AuthMiddlewareQueue(this);
|
|
3536
3325
|
this.redirectUser = null;
|
|
3537
3326
|
this.isProactiveRefreshEnabled = false;
|
|
3327
|
+
this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION = 1;
|
|
3538
3328
|
this._canInitEmulator = true;
|
|
3539
3329
|
this._isInitialized = false;
|
|
3540
3330
|
this._deleted = false;
|
|
3541
3331
|
this._initializationPromise = null;
|
|
3542
3332
|
this._popupRedirectResolver = null;
|
|
3543
3333
|
this._errorFactory = _DEFAULT_AUTH_ERROR_FACTORY;
|
|
3334
|
+
this._agentRecaptchaConfig = null;
|
|
3335
|
+
this._tenantRecaptchaConfigs = {};
|
|
3336
|
+
this._projectPasswordPolicy = null;
|
|
3337
|
+
this._tenantPasswordPolicies = {};
|
|
3544
3338
|
this.lastNotifiedUid = void 0;
|
|
3545
3339
|
this.languageCode = null;
|
|
3546
3340
|
this.tenantId = null;
|
|
@@ -3717,6 +3511,39 @@
|
|
|
3717
3511
|
await this.assertedPersistence.setPersistence(_getInstance(persistence));
|
|
3718
3512
|
});
|
|
3719
3513
|
}
|
|
3514
|
+
_getRecaptchaConfig() {
|
|
3515
|
+
if (this.tenantId == null) {
|
|
3516
|
+
return this._agentRecaptchaConfig;
|
|
3517
|
+
} else {
|
|
3518
|
+
return this._tenantRecaptchaConfigs[this.tenantId];
|
|
3519
|
+
}
|
|
3520
|
+
}
|
|
3521
|
+
async validatePassword(password) {
|
|
3522
|
+
if (!this._getPasswordPolicyInternal()) {
|
|
3523
|
+
await this._updatePasswordPolicy();
|
|
3524
|
+
}
|
|
3525
|
+
const passwordPolicy = this._getPasswordPolicyInternal();
|
|
3526
|
+
if (passwordPolicy.schemaVersion !== this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION) {
|
|
3527
|
+
return Promise.reject(this._errorFactory.create("unsupported-password-policy-schema-version", {}));
|
|
3528
|
+
}
|
|
3529
|
+
return passwordPolicy.validatePassword(password);
|
|
3530
|
+
}
|
|
3531
|
+
_getPasswordPolicyInternal() {
|
|
3532
|
+
if (this.tenantId === null) {
|
|
3533
|
+
return this._projectPasswordPolicy;
|
|
3534
|
+
} else {
|
|
3535
|
+
return this._tenantPasswordPolicies[this.tenantId];
|
|
3536
|
+
}
|
|
3537
|
+
}
|
|
3538
|
+
async _updatePasswordPolicy() {
|
|
3539
|
+
const response = await _getPasswordPolicy(this);
|
|
3540
|
+
const passwordPolicy = new PasswordPolicyImpl(response);
|
|
3541
|
+
if (this.tenantId === null) {
|
|
3542
|
+
this._projectPasswordPolicy = passwordPolicy;
|
|
3543
|
+
} else {
|
|
3544
|
+
this._tenantPasswordPolicies[this.tenantId] = passwordPolicy;
|
|
3545
|
+
}
|
|
3546
|
+
}
|
|
3720
3547
|
_getPersistence() {
|
|
3721
3548
|
return this.assertedPersistence.persistence.type;
|
|
3722
3549
|
}
|
|
@@ -3732,6 +3559,18 @@
|
|
|
3732
3559
|
onIdTokenChanged(nextOrObserver, error, completed) {
|
|
3733
3560
|
return this.registerStateListener(this.idTokenSubscription, nextOrObserver, error, completed);
|
|
3734
3561
|
}
|
|
3562
|
+
authStateReady() {
|
|
3563
|
+
return new Promise((resolve, reject) => {
|
|
3564
|
+
if (this.currentUser) {
|
|
3565
|
+
resolve();
|
|
3566
|
+
} else {
|
|
3567
|
+
const unsubscribe = this.onAuthStateChanged(() => {
|
|
3568
|
+
unsubscribe();
|
|
3569
|
+
resolve();
|
|
3570
|
+
}, reject);
|
|
3571
|
+
}
|
|
3572
|
+
});
|
|
3573
|
+
}
|
|
3735
3574
|
toJSON() {
|
|
3736
3575
|
var _a;
|
|
3737
3576
|
return {
|
|
@@ -3826,6 +3665,7 @@
|
|
|
3826
3665
|
};
|
|
3827
3666
|
}
|
|
3828
3667
|
const cb = typeof nextOrObserver === "function" ? nextOrObserver : nextOrObserver.next.bind(nextOrObserver);
|
|
3668
|
+
let isUnsubscribed = false;
|
|
3829
3669
|
const promise = this._isInitialized ? Promise.resolve() : this._initializationPromise;
|
|
3830
3670
|
_assert(
|
|
3831
3671
|
promise,
|
|
@@ -3833,11 +3673,24 @@
|
|
|
3833
3673
|
"internal-error"
|
|
3834
3674
|
/* AuthErrorCode.INTERNAL_ERROR */
|
|
3835
3675
|
);
|
|
3836
|
-
promise.then(() =>
|
|
3676
|
+
promise.then(() => {
|
|
3677
|
+
if (isUnsubscribed) {
|
|
3678
|
+
return;
|
|
3679
|
+
}
|
|
3680
|
+
cb(this.currentUser);
|
|
3681
|
+
});
|
|
3837
3682
|
if (typeof nextOrObserver === "function") {
|
|
3838
|
-
|
|
3683
|
+
const unsubscribe = subscription.addObserver(nextOrObserver, error, completed);
|
|
3684
|
+
return () => {
|
|
3685
|
+
isUnsubscribed = true;
|
|
3686
|
+
unsubscribe();
|
|
3687
|
+
};
|
|
3839
3688
|
} else {
|
|
3840
|
-
|
|
3689
|
+
const unsubscribe = subscription.addObserver(nextOrObserver);
|
|
3690
|
+
return () => {
|
|
3691
|
+
isUnsubscribed = true;
|
|
3692
|
+
unsubscribe();
|
|
3693
|
+
};
|
|
3841
3694
|
}
|
|
3842
3695
|
}
|
|
3843
3696
|
/**
|
|
@@ -3906,8 +3759,23 @@
|
|
|
3906
3759
|
/* HttpHeader.X_FIREBASE_CLIENT */
|
|
3907
3760
|
] = heartbeatsHeader;
|
|
3908
3761
|
}
|
|
3762
|
+
const appCheckToken = await this._getAppCheckToken();
|
|
3763
|
+
if (appCheckToken) {
|
|
3764
|
+
headers[
|
|
3765
|
+
"X-Firebase-AppCheck"
|
|
3766
|
+
/* HttpHeader.X_FIREBASE_APP_CHECK */
|
|
3767
|
+
] = appCheckToken;
|
|
3768
|
+
}
|
|
3909
3769
|
return headers;
|
|
3910
3770
|
}
|
|
3771
|
+
async _getAppCheckToken() {
|
|
3772
|
+
var _a;
|
|
3773
|
+
const appCheckTokenResult = await ((_a = this.appCheckServiceProvider.getImmediate({ optional: true })) === null || _a === void 0 ? void 0 : _a.getToken());
|
|
3774
|
+
if (appCheckTokenResult === null || appCheckTokenResult === void 0 ? void 0 : appCheckTokenResult.error) {
|
|
3775
|
+
_logWarn(`Error while retrieving App Check token: ${appCheckTokenResult.error}`);
|
|
3776
|
+
}
|
|
3777
|
+
return appCheckTokenResult === null || appCheckTokenResult === void 0 ? void 0 : appCheckTokenResult.token;
|
|
3778
|
+
}
|
|
3911
3779
|
};
|
|
3912
3780
|
function _castAuth(auth2) {
|
|
3913
3781
|
return getModularInstance(auth2);
|
|
@@ -3918,16 +3786,176 @@
|
|
|
3918
3786
|
this.observer = null;
|
|
3919
3787
|
this.addObserver = createSubscribe((observer) => this.observer = observer);
|
|
3920
3788
|
}
|
|
3921
|
-
get next() {
|
|
3922
|
-
_assert(
|
|
3923
|
-
this.observer,
|
|
3924
|
-
this.auth,
|
|
3925
|
-
"internal-error"
|
|
3926
|
-
/* AuthErrorCode.INTERNAL_ERROR */
|
|
3927
|
-
);
|
|
3928
|
-
return this.observer.next.bind(this.observer);
|
|
3789
|
+
get next() {
|
|
3790
|
+
_assert(
|
|
3791
|
+
this.observer,
|
|
3792
|
+
this.auth,
|
|
3793
|
+
"internal-error"
|
|
3794
|
+
/* AuthErrorCode.INTERNAL_ERROR */
|
|
3795
|
+
);
|
|
3796
|
+
return this.observer.next.bind(this.observer);
|
|
3797
|
+
}
|
|
3798
|
+
};
|
|
3799
|
+
function getScriptParentElement() {
|
|
3800
|
+
var _a, _b;
|
|
3801
|
+
return (_b = (_a = document.getElementsByTagName("head")) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : document;
|
|
3802
|
+
}
|
|
3803
|
+
function _loadJS(url) {
|
|
3804
|
+
return new Promise((resolve, reject) => {
|
|
3805
|
+
const el = document.createElement("script");
|
|
3806
|
+
el.setAttribute("src", url);
|
|
3807
|
+
el.onload = resolve;
|
|
3808
|
+
el.onerror = (e2) => {
|
|
3809
|
+
const error = _createError(
|
|
3810
|
+
"internal-error"
|
|
3811
|
+
/* AuthErrorCode.INTERNAL_ERROR */
|
|
3812
|
+
);
|
|
3813
|
+
error.customData = e2;
|
|
3814
|
+
reject(error);
|
|
3815
|
+
};
|
|
3816
|
+
el.type = "text/javascript";
|
|
3817
|
+
el.charset = "UTF-8";
|
|
3818
|
+
getScriptParentElement().appendChild(el);
|
|
3819
|
+
});
|
|
3820
|
+
}
|
|
3821
|
+
function _generateCallbackName(prefix) {
|
|
3822
|
+
return `__${prefix}${Math.floor(Math.random() * 1e6)}`;
|
|
3823
|
+
}
|
|
3824
|
+
var RECAPTCHA_ENTERPRISE_URL = "https://www.google.com/recaptcha/enterprise.js?render=";
|
|
3825
|
+
var RECAPTCHA_ENTERPRISE_VERIFIER_TYPE = "recaptcha-enterprise";
|
|
3826
|
+
var FAKE_TOKEN = "NO_RECAPTCHA";
|
|
3827
|
+
var RecaptchaEnterpriseVerifier = class {
|
|
3828
|
+
/**
|
|
3829
|
+
*
|
|
3830
|
+
* @param authExtern - The corresponding Firebase {@link Auth} instance.
|
|
3831
|
+
*
|
|
3832
|
+
*/
|
|
3833
|
+
constructor(authExtern) {
|
|
3834
|
+
this.type = RECAPTCHA_ENTERPRISE_VERIFIER_TYPE;
|
|
3835
|
+
this.auth = _castAuth(authExtern);
|
|
3836
|
+
}
|
|
3837
|
+
/**
|
|
3838
|
+
* Executes the verification process.
|
|
3839
|
+
*
|
|
3840
|
+
* @returns A Promise for a token that can be used to assert the validity of a request.
|
|
3841
|
+
*/
|
|
3842
|
+
async verify(action = "verify", forceRefresh = false) {
|
|
3843
|
+
async function retrieveSiteKey(auth2) {
|
|
3844
|
+
if (!forceRefresh) {
|
|
3845
|
+
if (auth2.tenantId == null && auth2._agentRecaptchaConfig != null) {
|
|
3846
|
+
return auth2._agentRecaptchaConfig.siteKey;
|
|
3847
|
+
}
|
|
3848
|
+
if (auth2.tenantId != null && auth2._tenantRecaptchaConfigs[auth2.tenantId] !== void 0) {
|
|
3849
|
+
return auth2._tenantRecaptchaConfigs[auth2.tenantId].siteKey;
|
|
3850
|
+
}
|
|
3851
|
+
}
|
|
3852
|
+
return new Promise(async (resolve, reject) => {
|
|
3853
|
+
getRecaptchaConfig(auth2, {
|
|
3854
|
+
clientType: "CLIENT_TYPE_WEB",
|
|
3855
|
+
version: "RECAPTCHA_ENTERPRISE"
|
|
3856
|
+
/* RecaptchaVersion.ENTERPRISE */
|
|
3857
|
+
}).then((response) => {
|
|
3858
|
+
if (response.recaptchaKey === void 0) {
|
|
3859
|
+
reject(new Error("recaptcha Enterprise site key undefined"));
|
|
3860
|
+
} else {
|
|
3861
|
+
const config = new RecaptchaConfig(response);
|
|
3862
|
+
if (auth2.tenantId == null) {
|
|
3863
|
+
auth2._agentRecaptchaConfig = config;
|
|
3864
|
+
} else {
|
|
3865
|
+
auth2._tenantRecaptchaConfigs[auth2.tenantId] = config;
|
|
3866
|
+
}
|
|
3867
|
+
return resolve(config.siteKey);
|
|
3868
|
+
}
|
|
3869
|
+
}).catch((error) => {
|
|
3870
|
+
reject(error);
|
|
3871
|
+
});
|
|
3872
|
+
});
|
|
3873
|
+
}
|
|
3874
|
+
function retrieveRecaptchaToken(siteKey, resolve, reject) {
|
|
3875
|
+
const grecaptcha = window.grecaptcha;
|
|
3876
|
+
if (isEnterprise(grecaptcha)) {
|
|
3877
|
+
grecaptcha.enterprise.ready(() => {
|
|
3878
|
+
grecaptcha.enterprise.execute(siteKey, { action }).then((token) => {
|
|
3879
|
+
resolve(token);
|
|
3880
|
+
}).catch(() => {
|
|
3881
|
+
resolve(FAKE_TOKEN);
|
|
3882
|
+
});
|
|
3883
|
+
});
|
|
3884
|
+
} else {
|
|
3885
|
+
reject(Error("No reCAPTCHA enterprise script loaded."));
|
|
3886
|
+
}
|
|
3887
|
+
}
|
|
3888
|
+
return new Promise((resolve, reject) => {
|
|
3889
|
+
retrieveSiteKey(this.auth).then((siteKey) => {
|
|
3890
|
+
if (!forceRefresh && isEnterprise(window.grecaptcha)) {
|
|
3891
|
+
retrieveRecaptchaToken(siteKey, resolve, reject);
|
|
3892
|
+
} else {
|
|
3893
|
+
if (typeof window === "undefined") {
|
|
3894
|
+
reject(new Error("RecaptchaVerifier is only supported in browser"));
|
|
3895
|
+
return;
|
|
3896
|
+
}
|
|
3897
|
+
_loadJS(RECAPTCHA_ENTERPRISE_URL + siteKey).then(() => {
|
|
3898
|
+
retrieveRecaptchaToken(siteKey, resolve, reject);
|
|
3899
|
+
}).catch((error) => {
|
|
3900
|
+
reject(error);
|
|
3901
|
+
});
|
|
3902
|
+
}
|
|
3903
|
+
}).catch((error) => {
|
|
3904
|
+
reject(error);
|
|
3905
|
+
});
|
|
3906
|
+
});
|
|
3907
|
+
}
|
|
3908
|
+
};
|
|
3909
|
+
async function injectRecaptchaFields(auth2, request, action, captchaResp = false) {
|
|
3910
|
+
const verifier = new RecaptchaEnterpriseVerifier(auth2);
|
|
3911
|
+
let captchaResponse;
|
|
3912
|
+
try {
|
|
3913
|
+
captchaResponse = await verifier.verify(action);
|
|
3914
|
+
} catch (error) {
|
|
3915
|
+
captchaResponse = await verifier.verify(action, true);
|
|
3916
|
+
}
|
|
3917
|
+
const newRequest = Object.assign({}, request);
|
|
3918
|
+
if (!captchaResp) {
|
|
3919
|
+
Object.assign(newRequest, { captchaResponse });
|
|
3920
|
+
} else {
|
|
3921
|
+
Object.assign(newRequest, { "captchaResp": captchaResponse });
|
|
3922
|
+
}
|
|
3923
|
+
Object.assign(newRequest, {
|
|
3924
|
+
"clientType": "CLIENT_TYPE_WEB"
|
|
3925
|
+
/* RecaptchaClientType.WEB */
|
|
3926
|
+
});
|
|
3927
|
+
Object.assign(newRequest, {
|
|
3928
|
+
"recaptchaVersion": "RECAPTCHA_ENTERPRISE"
|
|
3929
|
+
/* RecaptchaVersion.ENTERPRISE */
|
|
3930
|
+
});
|
|
3931
|
+
return newRequest;
|
|
3932
|
+
}
|
|
3933
|
+
function initializeAuth(app2, deps) {
|
|
3934
|
+
const provider = _getProvider(app2, "auth");
|
|
3935
|
+
if (provider.isInitialized()) {
|
|
3936
|
+
const auth3 = provider.getImmediate();
|
|
3937
|
+
const initialOptions = provider.getOptions();
|
|
3938
|
+
if (deepEqual(initialOptions, deps !== null && deps !== void 0 ? deps : {})) {
|
|
3939
|
+
return auth3;
|
|
3940
|
+
} else {
|
|
3941
|
+
_fail(
|
|
3942
|
+
auth3,
|
|
3943
|
+
"already-initialized"
|
|
3944
|
+
/* AuthErrorCode.ALREADY_INITIALIZED */
|
|
3945
|
+
);
|
|
3946
|
+
}
|
|
3947
|
+
}
|
|
3948
|
+
const auth2 = provider.initialize({ options: deps });
|
|
3949
|
+
return auth2;
|
|
3950
|
+
}
|
|
3951
|
+
function _initializeAuthInstance(auth2, deps) {
|
|
3952
|
+
const persistence = (deps === null || deps === void 0 ? void 0 : deps.persistence) || [];
|
|
3953
|
+
const hierarchy = (Array.isArray(persistence) ? persistence : [persistence]).map(_getInstance);
|
|
3954
|
+
if (deps === null || deps === void 0 ? void 0 : deps.errorMap) {
|
|
3955
|
+
auth2._updateErrorMap(deps.errorMap);
|
|
3929
3956
|
}
|
|
3930
|
-
|
|
3957
|
+
auth2._initializeWithPersistence(hierarchy, deps === null || deps === void 0 ? void 0 : deps.popupRedirectResolver);
|
|
3958
|
+
}
|
|
3931
3959
|
function connectAuthEmulator(auth2, url, options) {
|
|
3932
3960
|
const authInternal = _castAuth(auth2);
|
|
3933
3961
|
_assert(
|
|
@@ -4107,13 +4135,40 @@
|
|
|
4107
4135
|
}
|
|
4108
4136
|
/** @internal */
|
|
4109
4137
|
async _getIdTokenResponse(auth2) {
|
|
4138
|
+
var _a;
|
|
4110
4139
|
switch (this.signInMethod) {
|
|
4111
4140
|
case "password":
|
|
4112
|
-
|
|
4141
|
+
const request = {
|
|
4113
4142
|
returnSecureToken: true,
|
|
4114
4143
|
email: this._email,
|
|
4115
|
-
password: this._password
|
|
4116
|
-
|
|
4144
|
+
password: this._password,
|
|
4145
|
+
clientType: "CLIENT_TYPE_WEB"
|
|
4146
|
+
/* RecaptchaClientType.WEB */
|
|
4147
|
+
};
|
|
4148
|
+
if ((_a = auth2._getRecaptchaConfig()) === null || _a === void 0 ? void 0 : _a.emailPasswordEnabled) {
|
|
4149
|
+
const requestWithRecaptcha = await injectRecaptchaFields(
|
|
4150
|
+
auth2,
|
|
4151
|
+
request,
|
|
4152
|
+
"signInWithPassword"
|
|
4153
|
+
/* RecaptchaActionName.SIGN_IN_WITH_PASSWORD */
|
|
4154
|
+
);
|
|
4155
|
+
return signInWithPassword(auth2, requestWithRecaptcha);
|
|
4156
|
+
} else {
|
|
4157
|
+
return signInWithPassword(auth2, request).catch(async (error) => {
|
|
4158
|
+
if (error.code === `auth/${"missing-recaptcha-token"}`) {
|
|
4159
|
+
console.log("Sign-in with email address and password is protected by reCAPTCHA for this project. Automatically triggering the reCAPTCHA flow and restarting the sign-in flow.");
|
|
4160
|
+
const requestWithRecaptcha = await injectRecaptchaFields(
|
|
4161
|
+
auth2,
|
|
4162
|
+
request,
|
|
4163
|
+
"signInWithPassword"
|
|
4164
|
+
/* RecaptchaActionName.SIGN_IN_WITH_PASSWORD */
|
|
4165
|
+
);
|
|
4166
|
+
return signInWithPassword(auth2, requestWithRecaptcha);
|
|
4167
|
+
} else {
|
|
4168
|
+
return Promise.reject(error);
|
|
4169
|
+
}
|
|
4170
|
+
});
|
|
4171
|
+
}
|
|
4117
4172
|
case "emailLink":
|
|
4118
4173
|
return signInWithEmailLink$1(auth2, {
|
|
4119
4174
|
email: this._email,
|
|
@@ -4940,6 +4995,12 @@
|
|
|
4940
4995
|
function finalizeEnrollPhoneMfa(auth2, request) {
|
|
4941
4996
|
return _performApiRequest(auth2, "POST", "/v2/accounts/mfaEnrollment:finalize", _addTidIfNecessary(auth2, request));
|
|
4942
4997
|
}
|
|
4998
|
+
function startEnrollTotpMfa(auth2, request) {
|
|
4999
|
+
return _performApiRequest(auth2, "POST", "/v2/accounts/mfaEnrollment:start", _addTidIfNecessary(auth2, request));
|
|
5000
|
+
}
|
|
5001
|
+
function finalizeEnrollTotpMfa(auth2, request) {
|
|
5002
|
+
return _performApiRequest(auth2, "POST", "/v2/accounts/mfaEnrollment:finalize", _addTidIfNecessary(auth2, request));
|
|
5003
|
+
}
|
|
4943
5004
|
var STORAGE_AVAILABLE_KEY = "__sak";
|
|
4944
5005
|
var BrowserPersistenceClass = class {
|
|
4945
5006
|
constructor(storageRetriever, type) {
|
|
@@ -5686,30 +5747,8 @@
|
|
|
5686
5747
|
function finalizeSignInPhoneMfa(auth2, request) {
|
|
5687
5748
|
return _performApiRequest(auth2, "POST", "/v2/accounts/mfaSignIn:finalize", _addTidIfNecessary(auth2, request));
|
|
5688
5749
|
}
|
|
5689
|
-
function
|
|
5690
|
-
|
|
5691
|
-
return (_b = (_a = document.getElementsByTagName("head")) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : document;
|
|
5692
|
-
}
|
|
5693
|
-
function _loadJS(url) {
|
|
5694
|
-
return new Promise((resolve, reject) => {
|
|
5695
|
-
const el = document.createElement("script");
|
|
5696
|
-
el.setAttribute("src", url);
|
|
5697
|
-
el.onload = resolve;
|
|
5698
|
-
el.onerror = (e2) => {
|
|
5699
|
-
const error = _createError(
|
|
5700
|
-
"internal-error"
|
|
5701
|
-
/* AuthErrorCode.INTERNAL_ERROR */
|
|
5702
|
-
);
|
|
5703
|
-
error.customData = e2;
|
|
5704
|
-
reject(error);
|
|
5705
|
-
};
|
|
5706
|
-
el.type = "text/javascript";
|
|
5707
|
-
el.charset = "UTF-8";
|
|
5708
|
-
getScriptParentElement().appendChild(el);
|
|
5709
|
-
});
|
|
5710
|
-
}
|
|
5711
|
-
function _generateCallbackName(prefix) {
|
|
5712
|
-
return `__${prefix}${Math.floor(Math.random() * 1e6)}`;
|
|
5750
|
+
function finalizeSignInTotpMfa(auth2, request) {
|
|
5751
|
+
return _performApiRequest(auth2, "POST", "/v2/accounts/mfaSignIn:finalize", _addTidIfNecessary(auth2, request));
|
|
5713
5752
|
}
|
|
5714
5753
|
var _JSLOAD_CALLBACK = _generateCallbackName("rcb");
|
|
5715
5754
|
var NETWORK_TIMEOUT_DELAY = new Delay(3e4, 6e4);
|
|
@@ -6159,7 +6198,7 @@
|
|
|
6159
6198
|
/* AuthErrorCode.POPUP_CLOSED_BY_USER */
|
|
6160
6199
|
));
|
|
6161
6200
|
},
|
|
6162
|
-
|
|
6201
|
+
8e3
|
|
6163
6202
|
/* _Timeout.AUTH_EVENT */
|
|
6164
6203
|
);
|
|
6165
6204
|
return;
|
|
@@ -6601,7 +6640,8 @@
|
|
|
6601
6640
|
}
|
|
6602
6641
|
var WIDGET_PATH = "__/auth/handler";
|
|
6603
6642
|
var EMULATOR_WIDGET_PATH = "emulator/auth/handler";
|
|
6604
|
-
|
|
6643
|
+
var FIREBASE_APP_CHECK_FRAGMENT_ID = encodeURIComponent("fac");
|
|
6644
|
+
async function _getRedirectUrl(auth2, provider, authType, redirectUrl, eventId, additionalParams) {
|
|
6605
6645
|
_assert(
|
|
6606
6646
|
auth2.config.authDomain,
|
|
6607
6647
|
auth2,
|
|
@@ -6647,7 +6687,9 @@
|
|
|
6647
6687
|
delete paramsDict[key];
|
|
6648
6688
|
}
|
|
6649
6689
|
}
|
|
6650
|
-
|
|
6690
|
+
const appCheckToken = await auth2._getAppCheckToken();
|
|
6691
|
+
const appCheckTokenFragment = appCheckToken ? `#${FIREBASE_APP_CHECK_FRAGMENT_ID}=${encodeURIComponent(appCheckToken)}` : "";
|
|
6692
|
+
return `${getHandlerBase(auth2)}?${querystring(paramsDict).slice(1)}${appCheckTokenFragment}`;
|
|
6651
6693
|
}
|
|
6652
6694
|
function getHandlerBase({ config }) {
|
|
6653
6695
|
if (!config.emulator) {
|
|
@@ -6670,12 +6712,13 @@
|
|
|
6670
6712
|
async _openPopup(auth2, provider, authType, eventId) {
|
|
6671
6713
|
var _a;
|
|
6672
6714
|
debugAssert((_a = this.eventManagers[auth2._key()]) === null || _a === void 0 ? void 0 : _a.manager, "_initialize() not called before _openPopup()");
|
|
6673
|
-
const url = _getRedirectUrl(auth2, provider, authType, _getCurrentUrl(), eventId);
|
|
6715
|
+
const url = await _getRedirectUrl(auth2, provider, authType, _getCurrentUrl(), eventId);
|
|
6674
6716
|
return _open(auth2, url, _generateEventId());
|
|
6675
6717
|
}
|
|
6676
6718
|
async _openRedirect(auth2, provider, authType, eventId) {
|
|
6677
6719
|
await this._originValidation(auth2);
|
|
6678
|
-
|
|
6720
|
+
const url = await _getRedirectUrl(auth2, provider, authType, _getCurrentUrl(), eventId);
|
|
6721
|
+
_setWindowLocation(url);
|
|
6679
6722
|
return new Promise(() => {
|
|
6680
6723
|
});
|
|
6681
6724
|
}
|
|
@@ -6793,6 +6836,9 @@
|
|
|
6793
6836
|
/**
|
|
6794
6837
|
* Provides a {@link PhoneMultiFactorAssertion} to confirm ownership of the phone second factor.
|
|
6795
6838
|
*
|
|
6839
|
+
* @remarks
|
|
6840
|
+
* This method does not work in a Node.js environment.
|
|
6841
|
+
*
|
|
6796
6842
|
* @param phoneAuthCredential - A credential provided by {@link PhoneAuthProvider.credential}.
|
|
6797
6843
|
* @returns A {@link PhoneMultiFactorAssertion} which can be used with
|
|
6798
6844
|
* {@link MultiFactorResolver.resolveSignIn}
|
|
@@ -6801,184 +6847,612 @@
|
|
|
6801
6847
|
return PhoneMultiFactorAssertionImpl._fromCredential(credential);
|
|
6802
6848
|
}
|
|
6803
6849
|
};
|
|
6804
|
-
PhoneMultiFactorGenerator.FACTOR_ID = "phone";
|
|
6805
|
-
var
|
|
6806
|
-
|
|
6807
|
-
|
|
6808
|
-
|
|
6809
|
-
|
|
6810
|
-
|
|
6850
|
+
PhoneMultiFactorGenerator.FACTOR_ID = "phone";
|
|
6851
|
+
var TotpMultiFactorGenerator = class {
|
|
6852
|
+
/**
|
|
6853
|
+
* Provides a {@link TotpMultiFactorAssertion} to confirm ownership of
|
|
6854
|
+
* the TOTP (time-based one-time password) second factor.
|
|
6855
|
+
* This assertion is used to complete enrollment in TOTP second factor.
|
|
6856
|
+
*
|
|
6857
|
+
* @param secret A {@link TotpSecret} containing the shared secret key and other TOTP parameters.
|
|
6858
|
+
* @param oneTimePassword One-time password from TOTP App.
|
|
6859
|
+
* @returns A {@link TotpMultiFactorAssertion} which can be used with
|
|
6860
|
+
* {@link MultiFactorUser.enroll}.
|
|
6861
|
+
*/
|
|
6862
|
+
static assertionForEnrollment(secret, oneTimePassword) {
|
|
6863
|
+
return TotpMultiFactorAssertionImpl._fromSecret(secret, oneTimePassword);
|
|
6864
|
+
}
|
|
6865
|
+
/**
|
|
6866
|
+
* Provides a {@link TotpMultiFactorAssertion} to confirm ownership of the TOTP second factor.
|
|
6867
|
+
* This assertion is used to complete signIn with TOTP as the second factor.
|
|
6868
|
+
*
|
|
6869
|
+
* @param enrollmentId identifies the enrolled TOTP second factor.
|
|
6870
|
+
* @param oneTimePassword One-time password from TOTP App.
|
|
6871
|
+
* @returns A {@link TotpMultiFactorAssertion} which can be used with
|
|
6872
|
+
* {@link MultiFactorResolver.resolveSignIn}.
|
|
6873
|
+
*/
|
|
6874
|
+
static assertionForSignIn(enrollmentId, oneTimePassword) {
|
|
6875
|
+
return TotpMultiFactorAssertionImpl._fromEnrollmentId(enrollmentId, oneTimePassword);
|
|
6876
|
+
}
|
|
6877
|
+
/**
|
|
6878
|
+
* Returns a promise to {@link TotpSecret} which contains the TOTP shared secret key and other parameters.
|
|
6879
|
+
* Creates a TOTP secret as part of enrolling a TOTP second factor.
|
|
6880
|
+
* Used for generating a QR code URL or inputting into a TOTP app.
|
|
6881
|
+
* This method uses the auth instance corresponding to the user in the multiFactorSession.
|
|
6882
|
+
*
|
|
6883
|
+
* @param session The {@link MultiFactorSession} that the user is part of.
|
|
6884
|
+
* @returns A promise to {@link TotpSecret}.
|
|
6885
|
+
*/
|
|
6886
|
+
static async generateSecret(session) {
|
|
6887
|
+
var _a;
|
|
6888
|
+
const mfaSession = session;
|
|
6889
|
+
_assert(
|
|
6890
|
+
typeof ((_a = mfaSession.user) === null || _a === void 0 ? void 0 : _a.auth) !== "undefined",
|
|
6891
|
+
"internal-error"
|
|
6892
|
+
/* AuthErrorCode.INTERNAL_ERROR */
|
|
6893
|
+
);
|
|
6894
|
+
const response = await startEnrollTotpMfa(mfaSession.user.auth, {
|
|
6895
|
+
idToken: mfaSession.credential,
|
|
6896
|
+
totpEnrollmentInfo: {}
|
|
6897
|
+
});
|
|
6898
|
+
return TotpSecret._fromStartTotpMfaEnrollmentResponse(response, mfaSession.user.auth);
|
|
6899
|
+
}
|
|
6900
|
+
};
|
|
6901
|
+
TotpMultiFactorGenerator.FACTOR_ID = "totp";
|
|
6902
|
+
var TotpMultiFactorAssertionImpl = class _TotpMultiFactorAssertionImpl extends MultiFactorAssertionImpl {
|
|
6903
|
+
constructor(otp, enrollmentId, secret) {
|
|
6904
|
+
super(
|
|
6905
|
+
"totp"
|
|
6906
|
+
/* FactorId.TOTP */
|
|
6907
|
+
);
|
|
6908
|
+
this.otp = otp;
|
|
6909
|
+
this.enrollmentId = enrollmentId;
|
|
6910
|
+
this.secret = secret;
|
|
6911
|
+
}
|
|
6912
|
+
/** @internal */
|
|
6913
|
+
static _fromSecret(secret, otp) {
|
|
6914
|
+
return new _TotpMultiFactorAssertionImpl(otp, void 0, secret);
|
|
6915
|
+
}
|
|
6916
|
+
/** @internal */
|
|
6917
|
+
static _fromEnrollmentId(enrollmentId, otp) {
|
|
6918
|
+
return new _TotpMultiFactorAssertionImpl(otp, enrollmentId);
|
|
6919
|
+
}
|
|
6920
|
+
/** @internal */
|
|
6921
|
+
async _finalizeEnroll(auth2, idToken, displayName) {
|
|
6922
|
+
_assert(
|
|
6923
|
+
typeof this.secret !== "undefined",
|
|
6924
|
+
auth2,
|
|
6925
|
+
"argument-error"
|
|
6926
|
+
/* AuthErrorCode.ARGUMENT_ERROR */
|
|
6927
|
+
);
|
|
6928
|
+
return finalizeEnrollTotpMfa(auth2, {
|
|
6929
|
+
idToken,
|
|
6930
|
+
displayName,
|
|
6931
|
+
totpVerificationInfo: this.secret._makeTotpVerificationInfo(this.otp)
|
|
6932
|
+
});
|
|
6933
|
+
}
|
|
6934
|
+
/** @internal */
|
|
6935
|
+
async _finalizeSignIn(auth2, mfaPendingCredential) {
|
|
6936
|
+
_assert(
|
|
6937
|
+
this.enrollmentId !== void 0 && this.otp !== void 0,
|
|
6938
|
+
auth2,
|
|
6939
|
+
"argument-error"
|
|
6940
|
+
/* AuthErrorCode.ARGUMENT_ERROR */
|
|
6941
|
+
);
|
|
6942
|
+
const totpVerificationInfo = { verificationCode: this.otp };
|
|
6943
|
+
return finalizeSignInTotpMfa(auth2, {
|
|
6944
|
+
mfaPendingCredential,
|
|
6945
|
+
mfaEnrollmentId: this.enrollmentId,
|
|
6946
|
+
totpVerificationInfo
|
|
6947
|
+
});
|
|
6948
|
+
}
|
|
6949
|
+
};
|
|
6950
|
+
var TotpSecret = class _TotpSecret {
|
|
6951
|
+
// The public members are declared outside the constructor so the docs can be generated.
|
|
6952
|
+
constructor(secretKey, hashingAlgorithm, codeLength, codeIntervalSeconds, enrollmentCompletionDeadline, sessionInfo, auth2) {
|
|
6953
|
+
this.sessionInfo = sessionInfo;
|
|
6954
|
+
this.auth = auth2;
|
|
6955
|
+
this.secretKey = secretKey;
|
|
6956
|
+
this.hashingAlgorithm = hashingAlgorithm;
|
|
6957
|
+
this.codeLength = codeLength;
|
|
6958
|
+
this.codeIntervalSeconds = codeIntervalSeconds;
|
|
6959
|
+
this.enrollmentCompletionDeadline = enrollmentCompletionDeadline;
|
|
6960
|
+
}
|
|
6961
|
+
/** @internal */
|
|
6962
|
+
static _fromStartTotpMfaEnrollmentResponse(response, auth2) {
|
|
6963
|
+
return new _TotpSecret(response.totpSessionInfo.sharedSecretKey, response.totpSessionInfo.hashingAlgorithm, response.totpSessionInfo.verificationCodeLength, response.totpSessionInfo.periodSec, new Date(response.totpSessionInfo.finalizeEnrollmentTime).toUTCString(), response.totpSessionInfo.sessionInfo, auth2);
|
|
6964
|
+
}
|
|
6965
|
+
/** @internal */
|
|
6966
|
+
_makeTotpVerificationInfo(otp) {
|
|
6967
|
+
return { sessionInfo: this.sessionInfo, verificationCode: otp };
|
|
6968
|
+
}
|
|
6969
|
+
/**
|
|
6970
|
+
* Returns a QR code URL as described in
|
|
6971
|
+
* https://github.com/google/google-authenticator/wiki/Key-Uri-Format
|
|
6972
|
+
* This can be displayed to the user as a QR code to be scanned into a TOTP app like Google Authenticator.
|
|
6973
|
+
* If the optional parameters are unspecified, an accountName of <userEmail> and issuer of <firebaseAppName> are used.
|
|
6974
|
+
*
|
|
6975
|
+
* @param accountName the name of the account/app along with a user identifier.
|
|
6976
|
+
* @param issuer issuer of the TOTP (likely the app name).
|
|
6977
|
+
* @returns A QR code URL string.
|
|
6978
|
+
*/
|
|
6979
|
+
generateQrCodeUrl(accountName, issuer) {
|
|
6980
|
+
var _a;
|
|
6981
|
+
let useDefaults = false;
|
|
6982
|
+
if (_isEmptyString(accountName) || _isEmptyString(issuer)) {
|
|
6983
|
+
useDefaults = true;
|
|
6984
|
+
}
|
|
6985
|
+
if (useDefaults) {
|
|
6986
|
+
if (_isEmptyString(accountName)) {
|
|
6987
|
+
accountName = ((_a = this.auth.currentUser) === null || _a === void 0 ? void 0 : _a.email) || "unknownuser";
|
|
6988
|
+
}
|
|
6989
|
+
if (_isEmptyString(issuer)) {
|
|
6990
|
+
issuer = this.auth.name;
|
|
6991
|
+
}
|
|
6992
|
+
}
|
|
6993
|
+
return `otpauth://totp/${issuer}:${accountName}?secret=${this.secretKey}&issuer=${issuer}&algorithm=${this.hashingAlgorithm}&digits=${this.codeLength}`;
|
|
6994
|
+
}
|
|
6995
|
+
};
|
|
6996
|
+
function _isEmptyString(input) {
|
|
6997
|
+
return typeof input === "undefined" || (input === null || input === void 0 ? void 0 : input.length) === 0;
|
|
6998
|
+
}
|
|
6999
|
+
var name3 = "@firebase/auth";
|
|
7000
|
+
var version3 = "1.3.0";
|
|
7001
|
+
var AuthInterop = class {
|
|
7002
|
+
constructor(auth2) {
|
|
7003
|
+
this.auth = auth2;
|
|
7004
|
+
this.internalListeners = /* @__PURE__ */ new Map();
|
|
7005
|
+
}
|
|
7006
|
+
getUid() {
|
|
7007
|
+
var _a;
|
|
7008
|
+
this.assertAuthConfigured();
|
|
7009
|
+
return ((_a = this.auth.currentUser) === null || _a === void 0 ? void 0 : _a.uid) || null;
|
|
7010
|
+
}
|
|
7011
|
+
async getToken(forceRefresh) {
|
|
7012
|
+
this.assertAuthConfigured();
|
|
7013
|
+
await this.auth._initializationPromise;
|
|
7014
|
+
if (!this.auth.currentUser) {
|
|
7015
|
+
return null;
|
|
7016
|
+
}
|
|
7017
|
+
const accessToken = await this.auth.currentUser.getIdToken(forceRefresh);
|
|
7018
|
+
return { accessToken };
|
|
7019
|
+
}
|
|
7020
|
+
addAuthTokenListener(listener) {
|
|
7021
|
+
this.assertAuthConfigured();
|
|
7022
|
+
if (this.internalListeners.has(listener)) {
|
|
7023
|
+
return;
|
|
7024
|
+
}
|
|
7025
|
+
const unsubscribe = this.auth.onIdTokenChanged((user) => {
|
|
7026
|
+
listener((user === null || user === void 0 ? void 0 : user.stsTokenManager.accessToken) || null);
|
|
7027
|
+
});
|
|
7028
|
+
this.internalListeners.set(listener, unsubscribe);
|
|
7029
|
+
this.updateProactiveRefresh();
|
|
7030
|
+
}
|
|
7031
|
+
removeAuthTokenListener(listener) {
|
|
7032
|
+
this.assertAuthConfigured();
|
|
7033
|
+
const unsubscribe = this.internalListeners.get(listener);
|
|
7034
|
+
if (!unsubscribe) {
|
|
7035
|
+
return;
|
|
7036
|
+
}
|
|
7037
|
+
this.internalListeners.delete(listener);
|
|
7038
|
+
unsubscribe();
|
|
7039
|
+
this.updateProactiveRefresh();
|
|
7040
|
+
}
|
|
7041
|
+
assertAuthConfigured() {
|
|
7042
|
+
_assert(
|
|
7043
|
+
this.auth._initializationPromise,
|
|
7044
|
+
"dependent-sdk-initialized-before-auth"
|
|
7045
|
+
/* AuthErrorCode.DEPENDENT_SDK_INIT_BEFORE_AUTH */
|
|
7046
|
+
);
|
|
7047
|
+
}
|
|
7048
|
+
updateProactiveRefresh() {
|
|
7049
|
+
if (this.internalListeners.size > 0) {
|
|
7050
|
+
this.auth._startProactiveRefresh();
|
|
7051
|
+
} else {
|
|
7052
|
+
this.auth._stopProactiveRefresh();
|
|
7053
|
+
}
|
|
7054
|
+
}
|
|
7055
|
+
};
|
|
7056
|
+
function getVersionForPlatform(clientPlatform) {
|
|
7057
|
+
switch (clientPlatform) {
|
|
7058
|
+
case "Node":
|
|
7059
|
+
return "node";
|
|
7060
|
+
case "ReactNative":
|
|
7061
|
+
return "rn";
|
|
7062
|
+
case "Worker":
|
|
7063
|
+
return "webworker";
|
|
7064
|
+
case "Cordova":
|
|
7065
|
+
return "cordova";
|
|
7066
|
+
default:
|
|
7067
|
+
return void 0;
|
|
7068
|
+
}
|
|
7069
|
+
}
|
|
7070
|
+
function registerAuth(clientPlatform) {
|
|
7071
|
+
_registerComponent(new Component(
|
|
7072
|
+
"auth",
|
|
7073
|
+
(container, { options: deps }) => {
|
|
7074
|
+
const app2 = container.getProvider("app").getImmediate();
|
|
7075
|
+
const heartbeatServiceProvider = container.getProvider("heartbeat");
|
|
7076
|
+
const appCheckServiceProvider = container.getProvider("app-check-internal");
|
|
7077
|
+
const { apiKey, authDomain } = app2.options;
|
|
7078
|
+
_assert(apiKey && !apiKey.includes(":"), "invalid-api-key", { appName: app2.name });
|
|
7079
|
+
const config = {
|
|
7080
|
+
apiKey,
|
|
7081
|
+
authDomain,
|
|
7082
|
+
clientPlatform,
|
|
7083
|
+
apiHost: "identitytoolkit.googleapis.com",
|
|
7084
|
+
tokenApiHost: "securetoken.googleapis.com",
|
|
7085
|
+
apiScheme: "https",
|
|
7086
|
+
sdkClientVersion: _getClientVersion(clientPlatform)
|
|
7087
|
+
};
|
|
7088
|
+
const authInstance = new AuthImpl(app2, heartbeatServiceProvider, appCheckServiceProvider, config);
|
|
7089
|
+
_initializeAuthInstance(authInstance, deps);
|
|
7090
|
+
return authInstance;
|
|
7091
|
+
},
|
|
7092
|
+
"PUBLIC"
|
|
7093
|
+
/* ComponentType.PUBLIC */
|
|
7094
|
+
).setInstantiationMode(
|
|
7095
|
+
"EXPLICIT"
|
|
7096
|
+
/* InstantiationMode.EXPLICIT */
|
|
7097
|
+
).setInstanceCreatedCallback((container, _instanceIdentifier, _instance) => {
|
|
7098
|
+
const authInternalProvider = container.getProvider(
|
|
7099
|
+
"auth-internal"
|
|
7100
|
+
/* _ComponentName.AUTH_INTERNAL */
|
|
7101
|
+
);
|
|
7102
|
+
authInternalProvider.initialize();
|
|
7103
|
+
}));
|
|
7104
|
+
_registerComponent(new Component(
|
|
7105
|
+
"auth-internal",
|
|
7106
|
+
(container) => {
|
|
7107
|
+
const auth2 = _castAuth(container.getProvider(
|
|
7108
|
+
"auth"
|
|
7109
|
+
/* _ComponentName.AUTH */
|
|
7110
|
+
).getImmediate());
|
|
7111
|
+
return ((auth3) => new AuthInterop(auth3))(auth2);
|
|
7112
|
+
},
|
|
7113
|
+
"PRIVATE"
|
|
7114
|
+
/* ComponentType.PRIVATE */
|
|
7115
|
+
).setInstantiationMode(
|
|
7116
|
+
"EXPLICIT"
|
|
7117
|
+
/* InstantiationMode.EXPLICIT */
|
|
7118
|
+
));
|
|
7119
|
+
registerVersion(name3, version3, getVersionForPlatform(clientPlatform));
|
|
7120
|
+
registerVersion(name3, version3, "esm2017");
|
|
7121
|
+
}
|
|
7122
|
+
var DEFAULT_ID_TOKEN_MAX_AGE = 5 * 60;
|
|
7123
|
+
var authIdTokenMaxAge = getExperimentalSetting("authIdTokenMaxAge") || DEFAULT_ID_TOKEN_MAX_AGE;
|
|
7124
|
+
var lastPostedIdToken = null;
|
|
7125
|
+
var mintCookieFactory = (url) => async (user) => {
|
|
7126
|
+
const idTokenResult = user && await user.getIdTokenResult();
|
|
7127
|
+
const idTokenAge = idTokenResult && ((/* @__PURE__ */ new Date()).getTime() - Date.parse(idTokenResult.issuedAtTime)) / 1e3;
|
|
7128
|
+
if (idTokenAge && idTokenAge > authIdTokenMaxAge) {
|
|
7129
|
+
return;
|
|
7130
|
+
}
|
|
7131
|
+
const idToken = idTokenResult === null || idTokenResult === void 0 ? void 0 : idTokenResult.token;
|
|
7132
|
+
if (lastPostedIdToken === idToken) {
|
|
7133
|
+
return;
|
|
7134
|
+
}
|
|
7135
|
+
lastPostedIdToken = idToken;
|
|
7136
|
+
await fetch(url, {
|
|
7137
|
+
method: idToken ? "POST" : "DELETE",
|
|
7138
|
+
headers: idToken ? {
|
|
7139
|
+
"Authorization": `Bearer ${idToken}`
|
|
7140
|
+
} : {}
|
|
7141
|
+
});
|
|
7142
|
+
};
|
|
7143
|
+
function getAuth(app2 = getApp()) {
|
|
7144
|
+
const provider = _getProvider(app2, "auth");
|
|
7145
|
+
if (provider.isInitialized()) {
|
|
7146
|
+
return provider.getImmediate();
|
|
6811
7147
|
}
|
|
6812
|
-
|
|
6813
|
-
|
|
6814
|
-
|
|
6815
|
-
|
|
7148
|
+
const auth2 = initializeAuth(app2, {
|
|
7149
|
+
popupRedirectResolver: browserPopupRedirectResolver,
|
|
7150
|
+
persistence: [
|
|
7151
|
+
indexedDBLocalPersistence,
|
|
7152
|
+
browserLocalPersistence,
|
|
7153
|
+
browserSessionPersistence
|
|
7154
|
+
]
|
|
7155
|
+
});
|
|
7156
|
+
const authTokenSyncUrl = getExperimentalSetting("authTokenSyncURL");
|
|
7157
|
+
if (authTokenSyncUrl) {
|
|
7158
|
+
const mintCookie = mintCookieFactory(authTokenSyncUrl);
|
|
7159
|
+
beforeAuthStateChanged(auth2, mintCookie, () => mintCookie(auth2.currentUser));
|
|
7160
|
+
onIdTokenChanged(auth2, (user) => mintCookie(user));
|
|
6816
7161
|
}
|
|
6817
|
-
|
|
6818
|
-
|
|
6819
|
-
|
|
6820
|
-
if (!this.auth.currentUser) {
|
|
6821
|
-
return null;
|
|
6822
|
-
}
|
|
6823
|
-
const accessToken = await this.auth.currentUser.getIdToken(forceRefresh);
|
|
6824
|
-
return { accessToken };
|
|
7162
|
+
const authEmulatorHost = getDefaultEmulatorHost("auth");
|
|
7163
|
+
if (authEmulatorHost) {
|
|
7164
|
+
connectAuthEmulator(auth2, `http://${authEmulatorHost}`);
|
|
6825
7165
|
}
|
|
6826
|
-
|
|
6827
|
-
|
|
6828
|
-
|
|
6829
|
-
|
|
6830
|
-
|
|
6831
|
-
|
|
6832
|
-
|
|
6833
|
-
|
|
6834
|
-
|
|
6835
|
-
|
|
7166
|
+
return auth2;
|
|
7167
|
+
}
|
|
7168
|
+
registerAuth(
|
|
7169
|
+
"Browser"
|
|
7170
|
+
/* ClientPlatform.BROWSER */
|
|
7171
|
+
);
|
|
7172
|
+
|
|
7173
|
+
// ../../node_modules/.pnpm/preact@10.11.0/node_modules/preact/dist/preact.module.js
|
|
7174
|
+
var n;
|
|
7175
|
+
var l;
|
|
7176
|
+
var u;
|
|
7177
|
+
var i;
|
|
7178
|
+
var t;
|
|
7179
|
+
var o;
|
|
7180
|
+
var r;
|
|
7181
|
+
var f = {};
|
|
7182
|
+
var e = [];
|
|
7183
|
+
var c = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;
|
|
7184
|
+
function s(n2, l2) {
|
|
7185
|
+
for (var u2 in l2)
|
|
7186
|
+
n2[u2] = l2[u2];
|
|
7187
|
+
return n2;
|
|
7188
|
+
}
|
|
7189
|
+
function a(n2) {
|
|
7190
|
+
var l2 = n2.parentNode;
|
|
7191
|
+
l2 && l2.removeChild(n2);
|
|
7192
|
+
}
|
|
7193
|
+
function h(l2, u2, i2) {
|
|
7194
|
+
var t2, o3, r2, f2 = {};
|
|
7195
|
+
for (r2 in u2)
|
|
7196
|
+
"key" == r2 ? t2 = u2[r2] : "ref" == r2 ? o3 = u2[r2] : f2[r2] = u2[r2];
|
|
7197
|
+
if (arguments.length > 2 && (f2.children = arguments.length > 3 ? n.call(arguments, 2) : i2), "function" == typeof l2 && null != l2.defaultProps)
|
|
7198
|
+
for (r2 in l2.defaultProps)
|
|
7199
|
+
void 0 === f2[r2] && (f2[r2] = l2.defaultProps[r2]);
|
|
7200
|
+
return v(l2, f2, t2, o3, null);
|
|
7201
|
+
}
|
|
7202
|
+
function v(n2, i2, t2, o3, r2) {
|
|
7203
|
+
var f2 = { type: n2, props: i2, key: t2, ref: o3, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, __h: null, constructor: void 0, __v: null == r2 ? ++u : r2 };
|
|
7204
|
+
return null == r2 && null != l.vnode && l.vnode(f2), f2;
|
|
7205
|
+
}
|
|
7206
|
+
function p(n2) {
|
|
7207
|
+
return n2.children;
|
|
7208
|
+
}
|
|
7209
|
+
function d(n2, l2) {
|
|
7210
|
+
this.props = n2, this.context = l2;
|
|
7211
|
+
}
|
|
7212
|
+
function _(n2, l2) {
|
|
7213
|
+
if (null == l2)
|
|
7214
|
+
return n2.__ ? _(n2.__, n2.__.__k.indexOf(n2) + 1) : null;
|
|
7215
|
+
for (var u2; l2 < n2.__k.length; l2++)
|
|
7216
|
+
if (null != (u2 = n2.__k[l2]) && null != u2.__e)
|
|
7217
|
+
return u2.__e;
|
|
7218
|
+
return "function" == typeof n2.type ? _(n2) : null;
|
|
7219
|
+
}
|
|
7220
|
+
function k(n2) {
|
|
7221
|
+
var l2, u2;
|
|
7222
|
+
if (null != (n2 = n2.__) && null != n2.__c) {
|
|
7223
|
+
for (n2.__e = n2.__c.base = null, l2 = 0; l2 < n2.__k.length; l2++)
|
|
7224
|
+
if (null != (u2 = n2.__k[l2]) && null != u2.__e) {
|
|
7225
|
+
n2.__e = n2.__c.base = u2.__e;
|
|
7226
|
+
break;
|
|
7227
|
+
}
|
|
7228
|
+
return k(n2);
|
|
6836
7229
|
}
|
|
6837
|
-
|
|
6838
|
-
|
|
6839
|
-
|
|
6840
|
-
|
|
6841
|
-
|
|
7230
|
+
}
|
|
7231
|
+
function b(n2) {
|
|
7232
|
+
(!n2.__d && (n2.__d = true) && t.push(n2) && !g.__r++ || o !== l.debounceRendering) && ((o = l.debounceRendering) || setTimeout)(g);
|
|
7233
|
+
}
|
|
7234
|
+
function g() {
|
|
7235
|
+
for (var n2; g.__r = t.length; )
|
|
7236
|
+
n2 = t.sort(function(n3, l2) {
|
|
7237
|
+
return n3.__v.__b - l2.__v.__b;
|
|
7238
|
+
}), t = [], n2.some(function(n3) {
|
|
7239
|
+
var l2, u2, i2, t2, o3, r2;
|
|
7240
|
+
n3.__d && (o3 = (t2 = (l2 = n3).__v).__e, (r2 = l2.__P) && (u2 = [], (i2 = s({}, t2)).__v = t2.__v + 1, j(r2, t2, i2, l2.__n, void 0 !== r2.ownerSVGElement, null != t2.__h ? [o3] : null, u2, null == o3 ? _(t2) : o3, t2.__h), z(u2, t2), t2.__e != o3 && k(t2)));
|
|
7241
|
+
});
|
|
7242
|
+
}
|
|
7243
|
+
function w(n2, l2, u2, i2, t2, o3, r2, c2, s2, a2) {
|
|
7244
|
+
var h2, y, d2, k2, b2, g2, w2, x = i2 && i2.__k || e, C2 = x.length;
|
|
7245
|
+
for (u2.__k = [], h2 = 0; h2 < l2.length; h2++)
|
|
7246
|
+
if (null != (k2 = u2.__k[h2] = null == (k2 = l2[h2]) || "boolean" == typeof k2 ? null : "string" == typeof k2 || "number" == typeof k2 || "bigint" == typeof k2 ? v(null, k2, null, null, k2) : Array.isArray(k2) ? v(p, { children: k2 }, null, null, null) : k2.__b > 0 ? v(k2.type, k2.props, k2.key, k2.ref ? k2.ref : null, k2.__v) : k2)) {
|
|
7247
|
+
if (k2.__ = u2, k2.__b = u2.__b + 1, null === (d2 = x[h2]) || d2 && k2.key == d2.key && k2.type === d2.type)
|
|
7248
|
+
x[h2] = void 0;
|
|
7249
|
+
else
|
|
7250
|
+
for (y = 0; y < C2; y++) {
|
|
7251
|
+
if ((d2 = x[y]) && k2.key == d2.key && k2.type === d2.type) {
|
|
7252
|
+
x[y] = void 0;
|
|
7253
|
+
break;
|
|
7254
|
+
}
|
|
7255
|
+
d2 = null;
|
|
7256
|
+
}
|
|
7257
|
+
j(n2, k2, d2 = d2 || f, t2, o3, r2, c2, s2, a2), b2 = k2.__e, (y = k2.ref) && d2.ref != y && (w2 || (w2 = []), d2.ref && w2.push(d2.ref, null, k2), w2.push(y, k2.__c || b2, k2)), null != b2 ? (null == g2 && (g2 = b2), "function" == typeof k2.type && k2.__k === d2.__k ? k2.__d = s2 = m(k2, s2, n2) : s2 = A(n2, k2, d2, x, b2, s2), "function" == typeof u2.type && (u2.__d = s2)) : s2 && d2.__e == s2 && s2.parentNode != n2 && (s2 = _(d2));
|
|
6842
7258
|
}
|
|
6843
|
-
|
|
6844
|
-
|
|
6845
|
-
|
|
6846
|
-
|
|
6847
|
-
|
|
6848
|
-
|
|
6849
|
-
|
|
6850
|
-
|
|
6851
|
-
|
|
6852
|
-
|
|
6853
|
-
|
|
6854
|
-
|
|
6855
|
-
|
|
6856
|
-
|
|
6857
|
-
|
|
6858
|
-
|
|
7259
|
+
for (u2.__e = g2, h2 = C2; h2--; )
|
|
7260
|
+
null != x[h2] && ("function" == typeof u2.type && null != x[h2].__e && x[h2].__e == u2.__d && (u2.__d = _(i2, h2 + 1)), N(x[h2], x[h2]));
|
|
7261
|
+
if (w2)
|
|
7262
|
+
for (h2 = 0; h2 < w2.length; h2++)
|
|
7263
|
+
M(w2[h2], w2[++h2], w2[++h2]);
|
|
7264
|
+
}
|
|
7265
|
+
function m(n2, l2, u2) {
|
|
7266
|
+
for (var i2, t2 = n2.__k, o3 = 0; t2 && o3 < t2.length; o3++)
|
|
7267
|
+
(i2 = t2[o3]) && (i2.__ = n2, l2 = "function" == typeof i2.type ? m(i2, l2, u2) : A(u2, i2, i2, t2, i2.__e, l2));
|
|
7268
|
+
return l2;
|
|
7269
|
+
}
|
|
7270
|
+
function A(n2, l2, u2, i2, t2, o3) {
|
|
7271
|
+
var r2, f2, e2;
|
|
7272
|
+
if (void 0 !== l2.__d)
|
|
7273
|
+
r2 = l2.__d, l2.__d = void 0;
|
|
7274
|
+
else if (null == u2 || t2 != o3 || null == t2.parentNode)
|
|
7275
|
+
n:
|
|
7276
|
+
if (null == o3 || o3.parentNode !== n2)
|
|
7277
|
+
n2.appendChild(t2), r2 = null;
|
|
7278
|
+
else {
|
|
7279
|
+
for (f2 = o3, e2 = 0; (f2 = f2.nextSibling) && e2 < i2.length; e2 += 2)
|
|
7280
|
+
if (f2 == t2)
|
|
7281
|
+
break n;
|
|
7282
|
+
n2.insertBefore(t2, o3), r2 = o3;
|
|
7283
|
+
}
|
|
7284
|
+
return void 0 !== r2 ? r2 : t2.nextSibling;
|
|
7285
|
+
}
|
|
7286
|
+
function C(n2, l2, u2, i2, t2) {
|
|
7287
|
+
var o3;
|
|
7288
|
+
for (o3 in u2)
|
|
7289
|
+
"children" === o3 || "key" === o3 || o3 in l2 || H(n2, o3, null, u2[o3], i2);
|
|
7290
|
+
for (o3 in l2)
|
|
7291
|
+
t2 && "function" != typeof l2[o3] || "children" === o3 || "key" === o3 || "value" === o3 || "checked" === o3 || u2[o3] === l2[o3] || H(n2, o3, l2[o3], u2[o3], i2);
|
|
7292
|
+
}
|
|
7293
|
+
function $(n2, l2, u2) {
|
|
7294
|
+
"-" === l2[0] ? n2.setProperty(l2, u2) : n2[l2] = null == u2 ? "" : "number" != typeof u2 || c.test(l2) ? u2 : u2 + "px";
|
|
7295
|
+
}
|
|
7296
|
+
function H(n2, l2, u2, i2, t2) {
|
|
7297
|
+
var o3;
|
|
7298
|
+
n:
|
|
7299
|
+
if ("style" === l2)
|
|
7300
|
+
if ("string" == typeof u2)
|
|
7301
|
+
n2.style.cssText = u2;
|
|
7302
|
+
else {
|
|
7303
|
+
if ("string" == typeof i2 && (n2.style.cssText = i2 = ""), i2)
|
|
7304
|
+
for (l2 in i2)
|
|
7305
|
+
u2 && l2 in u2 || $(n2.style, l2, "");
|
|
7306
|
+
if (u2)
|
|
7307
|
+
for (l2 in u2)
|
|
7308
|
+
i2 && u2[l2] === i2[l2] || $(n2.style, l2, u2[l2]);
|
|
7309
|
+
}
|
|
7310
|
+
else if ("o" === l2[0] && "n" === l2[1])
|
|
7311
|
+
o3 = l2 !== (l2 = l2.replace(/Capture$/, "")), l2 = l2.toLowerCase() in n2 ? l2.toLowerCase().slice(2) : l2.slice(2), n2.l || (n2.l = {}), n2.l[l2 + o3] = u2, u2 ? i2 || n2.addEventListener(l2, o3 ? T : I, o3) : n2.removeEventListener(l2, o3 ? T : I, o3);
|
|
7312
|
+
else if ("dangerouslySetInnerHTML" !== l2) {
|
|
7313
|
+
if (t2)
|
|
7314
|
+
l2 = l2.replace(/xlink(H|:h)/, "h").replace(/sName$/, "s");
|
|
7315
|
+
else if ("href" !== l2 && "list" !== l2 && "form" !== l2 && "tabIndex" !== l2 && "download" !== l2 && l2 in n2)
|
|
7316
|
+
try {
|
|
7317
|
+
n2[l2] = null == u2 ? "" : u2;
|
|
7318
|
+
break n;
|
|
7319
|
+
} catch (n3) {
|
|
7320
|
+
}
|
|
7321
|
+
"function" == typeof u2 || (null != u2 && (false !== u2 || "a" === l2[0] && "r" === l2[1]) ? n2.setAttribute(l2, u2) : n2.removeAttribute(l2));
|
|
6859
7322
|
}
|
|
6860
|
-
|
|
6861
|
-
|
|
6862
|
-
|
|
6863
|
-
|
|
6864
|
-
|
|
6865
|
-
|
|
6866
|
-
|
|
6867
|
-
|
|
6868
|
-
|
|
6869
|
-
|
|
6870
|
-
|
|
6871
|
-
|
|
6872
|
-
|
|
6873
|
-
|
|
7323
|
+
}
|
|
7324
|
+
function I(n2) {
|
|
7325
|
+
this.l[n2.type + false](l.event ? l.event(n2) : n2);
|
|
7326
|
+
}
|
|
7327
|
+
function T(n2) {
|
|
7328
|
+
this.l[n2.type + true](l.event ? l.event(n2) : n2);
|
|
7329
|
+
}
|
|
7330
|
+
function j(n2, u2, i2, t2, o3, r2, f2, e2, c2) {
|
|
7331
|
+
var a2, h2, v2, y, _3, k2, b2, g2, m2, x, A2, C2, $2, H2 = u2.type;
|
|
7332
|
+
if (void 0 !== u2.constructor)
|
|
7333
|
+
return null;
|
|
7334
|
+
null != i2.__h && (c2 = i2.__h, e2 = u2.__e = i2.__e, u2.__h = null, r2 = [e2]), (a2 = l.__b) && a2(u2);
|
|
7335
|
+
try {
|
|
7336
|
+
n:
|
|
7337
|
+
if ("function" == typeof H2) {
|
|
7338
|
+
if (g2 = u2.props, m2 = (a2 = H2.contextType) && t2[a2.__c], x = a2 ? m2 ? m2.props.value : a2.__ : t2, i2.__c ? b2 = (h2 = u2.__c = i2.__c).__ = h2.__E : ("prototype" in H2 && H2.prototype.render ? u2.__c = h2 = new H2(g2, x) : (u2.__c = h2 = new d(g2, x), h2.constructor = H2, h2.render = O), m2 && m2.sub(h2), h2.props = g2, h2.state || (h2.state = {}), h2.context = x, h2.__n = t2, v2 = h2.__d = true, h2.__h = []), null == h2.__s && (h2.__s = h2.state), null != H2.getDerivedStateFromProps && (h2.__s == h2.state && (h2.__s = s({}, h2.__s)), s(h2.__s, H2.getDerivedStateFromProps(g2, h2.__s))), y = h2.props, _3 = h2.state, v2)
|
|
7339
|
+
null == H2.getDerivedStateFromProps && null != h2.componentWillMount && h2.componentWillMount(), null != h2.componentDidMount && h2.__h.push(h2.componentDidMount);
|
|
7340
|
+
else {
|
|
7341
|
+
if (null == H2.getDerivedStateFromProps && g2 !== y && null != h2.componentWillReceiveProps && h2.componentWillReceiveProps(g2, x), !h2.__e && null != h2.shouldComponentUpdate && false === h2.shouldComponentUpdate(g2, h2.__s, x) || u2.__v === i2.__v) {
|
|
7342
|
+
h2.props = g2, h2.state = h2.__s, u2.__v !== i2.__v && (h2.__d = false), h2.__v = u2, u2.__e = i2.__e, u2.__k = i2.__k, u2.__k.forEach(function(n3) {
|
|
7343
|
+
n3 && (n3.__ = u2);
|
|
7344
|
+
}), h2.__h.length && f2.push(h2);
|
|
7345
|
+
break n;
|
|
7346
|
+
}
|
|
7347
|
+
null != h2.componentWillUpdate && h2.componentWillUpdate(g2, h2.__s, x), null != h2.componentDidUpdate && h2.__h.push(function() {
|
|
7348
|
+
h2.componentDidUpdate(y, _3, k2);
|
|
7349
|
+
});
|
|
7350
|
+
}
|
|
7351
|
+
if (h2.context = x, h2.props = g2, h2.__v = u2, h2.__P = n2, A2 = l.__r, C2 = 0, "prototype" in H2 && H2.prototype.render)
|
|
7352
|
+
h2.state = h2.__s, h2.__d = false, A2 && A2(u2), a2 = h2.render(h2.props, h2.state, h2.context);
|
|
7353
|
+
else
|
|
7354
|
+
do {
|
|
7355
|
+
h2.__d = false, A2 && A2(u2), a2 = h2.render(h2.props, h2.state, h2.context), h2.state = h2.__s;
|
|
7356
|
+
} while (h2.__d && ++C2 < 25);
|
|
7357
|
+
h2.state = h2.__s, null != h2.getChildContext && (t2 = s(s({}, t2), h2.getChildContext())), v2 || null == h2.getSnapshotBeforeUpdate || (k2 = h2.getSnapshotBeforeUpdate(y, _3)), $2 = null != a2 && a2.type === p && null == a2.key ? a2.props.children : a2, w(n2, Array.isArray($2) ? $2 : [$2], u2, i2, t2, o3, r2, f2, e2, c2), h2.base = u2.__e, u2.__h = null, h2.__h.length && f2.push(h2), b2 && (h2.__E = h2.__ = null), h2.__e = false;
|
|
7358
|
+
} else
|
|
7359
|
+
null == r2 && u2.__v === i2.__v ? (u2.__k = i2.__k, u2.__e = i2.__e) : u2.__e = L(i2.__e, u2, i2, t2, o3, r2, f2, c2);
|
|
7360
|
+
(a2 = l.diffed) && a2(u2);
|
|
7361
|
+
} catch (n3) {
|
|
7362
|
+
u2.__v = null, (c2 || null != r2) && (u2.__e = e2, u2.__h = !!c2, r2[r2.indexOf(e2)] = null), l.__e(n3, u2, i2);
|
|
6874
7363
|
}
|
|
6875
7364
|
}
|
|
6876
|
-
function
|
|
6877
|
-
|
|
6878
|
-
|
|
6879
|
-
|
|
6880
|
-
|
|
6881
|
-
|
|
6882
|
-
|
|
6883
|
-
|
|
6884
|
-
|
|
6885
|
-
|
|
6886
|
-
appName: app3.name
|
|
6887
|
-
});
|
|
6888
|
-
const config = {
|
|
6889
|
-
apiKey,
|
|
6890
|
-
authDomain,
|
|
6891
|
-
clientPlatform,
|
|
6892
|
-
apiHost: "identitytoolkit.googleapis.com",
|
|
6893
|
-
tokenApiHost: "securetoken.googleapis.com",
|
|
6894
|
-
apiScheme: "https",
|
|
6895
|
-
sdkClientVersion: _getClientVersion(clientPlatform)
|
|
6896
|
-
};
|
|
6897
|
-
const authInstance = new AuthImpl(app3, heartbeatServiceProvider2, config);
|
|
6898
|
-
_initializeAuthInstance(authInstance, deps);
|
|
6899
|
-
return authInstance;
|
|
6900
|
-
})(app2, heartbeatServiceProvider);
|
|
6901
|
-
},
|
|
6902
|
-
"PUBLIC"
|
|
6903
|
-
/* ComponentType.PUBLIC */
|
|
6904
|
-
).setInstantiationMode(
|
|
6905
|
-
"EXPLICIT"
|
|
6906
|
-
/* InstantiationMode.EXPLICIT */
|
|
6907
|
-
).setInstanceCreatedCallback((container, _instanceIdentifier, _instance) => {
|
|
6908
|
-
const authInternalProvider = container.getProvider(
|
|
6909
|
-
"auth-internal"
|
|
6910
|
-
/* _ComponentName.AUTH_INTERNAL */
|
|
6911
|
-
);
|
|
6912
|
-
authInternalProvider.initialize();
|
|
6913
|
-
}));
|
|
6914
|
-
_registerComponent(new Component(
|
|
6915
|
-
"auth-internal",
|
|
6916
|
-
(container) => {
|
|
6917
|
-
const auth2 = _castAuth(container.getProvider(
|
|
6918
|
-
"auth"
|
|
6919
|
-
/* _ComponentName.AUTH */
|
|
6920
|
-
).getImmediate());
|
|
6921
|
-
return ((auth3) => new AuthInterop(auth3))(auth2);
|
|
6922
|
-
},
|
|
6923
|
-
"PRIVATE"
|
|
6924
|
-
/* ComponentType.PRIVATE */
|
|
6925
|
-
).setInstantiationMode(
|
|
6926
|
-
"EXPLICIT"
|
|
6927
|
-
/* InstantiationMode.EXPLICIT */
|
|
6928
|
-
));
|
|
6929
|
-
registerVersion(name3, version3, getVersionForPlatform(clientPlatform));
|
|
6930
|
-
registerVersion(name3, version3, "esm2017");
|
|
7365
|
+
function z(n2, u2) {
|
|
7366
|
+
l.__c && l.__c(u2, n2), n2.some(function(u3) {
|
|
7367
|
+
try {
|
|
7368
|
+
n2 = u3.__h, u3.__h = [], n2.some(function(n3) {
|
|
7369
|
+
n3.call(u3);
|
|
7370
|
+
});
|
|
7371
|
+
} catch (n3) {
|
|
7372
|
+
l.__e(n3, u3.__v);
|
|
7373
|
+
}
|
|
7374
|
+
});
|
|
6931
7375
|
}
|
|
6932
|
-
|
|
6933
|
-
|
|
6934
|
-
|
|
6935
|
-
|
|
6936
|
-
|
|
6937
|
-
|
|
6938
|
-
|
|
6939
|
-
|
|
7376
|
+
function L(l2, u2, i2, t2, o3, r2, e2, c2) {
|
|
7377
|
+
var s2, h2, v2, y = i2.props, p2 = u2.props, d2 = u2.type, k2 = 0;
|
|
7378
|
+
if ("svg" === d2 && (o3 = true), null != r2) {
|
|
7379
|
+
for (; k2 < r2.length; k2++)
|
|
7380
|
+
if ((s2 = r2[k2]) && "setAttribute" in s2 == !!d2 && (d2 ? s2.localName === d2 : 3 === s2.nodeType)) {
|
|
7381
|
+
l2 = s2, r2[k2] = null;
|
|
7382
|
+
break;
|
|
7383
|
+
}
|
|
6940
7384
|
}
|
|
6941
|
-
|
|
6942
|
-
|
|
6943
|
-
|
|
7385
|
+
if (null == l2) {
|
|
7386
|
+
if (null === d2)
|
|
7387
|
+
return document.createTextNode(p2);
|
|
7388
|
+
l2 = o3 ? document.createElementNS("http://www.w3.org/2000/svg", d2) : document.createElement(d2, p2.is && p2), r2 = null, c2 = false;
|
|
6944
7389
|
}
|
|
6945
|
-
|
|
6946
|
-
|
|
6947
|
-
|
|
6948
|
-
|
|
6949
|
-
|
|
6950
|
-
|
|
6951
|
-
|
|
6952
|
-
|
|
6953
|
-
|
|
6954
|
-
|
|
6955
|
-
|
|
6956
|
-
|
|
7390
|
+
if (null === d2)
|
|
7391
|
+
y === p2 || c2 && l2.data === p2 || (l2.data = p2);
|
|
7392
|
+
else {
|
|
7393
|
+
if (r2 = r2 && n.call(l2.childNodes), h2 = (y = i2.props || f).dangerouslySetInnerHTML, v2 = p2.dangerouslySetInnerHTML, !c2) {
|
|
7394
|
+
if (null != r2)
|
|
7395
|
+
for (y = {}, k2 = 0; k2 < l2.attributes.length; k2++)
|
|
7396
|
+
y[l2.attributes[k2].name] = l2.attributes[k2].value;
|
|
7397
|
+
(v2 || h2) && (v2 && (h2 && v2.__html == h2.__html || v2.__html === l2.innerHTML) || (l2.innerHTML = v2 && v2.__html || ""));
|
|
7398
|
+
}
|
|
7399
|
+
if (C(l2, p2, y, o3, c2), v2)
|
|
7400
|
+
u2.__k = [];
|
|
7401
|
+
else if (k2 = u2.props.children, w(l2, Array.isArray(k2) ? k2 : [k2], u2, i2, t2, o3 && "foreignObject" !== d2, r2, e2, r2 ? r2[0] : i2.__k && _(i2, 0), c2), null != r2)
|
|
7402
|
+
for (k2 = r2.length; k2--; )
|
|
7403
|
+
null != r2[k2] && a(r2[k2]);
|
|
7404
|
+
c2 || ("value" in p2 && void 0 !== (k2 = p2.value) && (k2 !== l2.value || "progress" === d2 && !k2 || "option" === d2 && k2 !== y.value) && H(l2, "value", k2, y.value, false), "checked" in p2 && void 0 !== (k2 = p2.checked) && k2 !== l2.checked && H(l2, "checked", k2, y.checked, false));
|
|
6957
7405
|
}
|
|
6958
|
-
|
|
6959
|
-
|
|
6960
|
-
|
|
6961
|
-
|
|
6962
|
-
|
|
6963
|
-
|
|
6964
|
-
|
|
6965
|
-
});
|
|
6966
|
-
const authTokenSyncUrl = getExperimentalSetting("authTokenSyncURL");
|
|
6967
|
-
if (authTokenSyncUrl) {
|
|
6968
|
-
const mintCookie = mintCookieFactory(authTokenSyncUrl);
|
|
6969
|
-
beforeAuthStateChanged(auth2, mintCookie, () => mintCookie(auth2.currentUser));
|
|
6970
|
-
onIdTokenChanged(auth2, (user) => mintCookie(user));
|
|
7406
|
+
return l2;
|
|
7407
|
+
}
|
|
7408
|
+
function M(n2, u2, i2) {
|
|
7409
|
+
try {
|
|
7410
|
+
"function" == typeof n2 ? n2(u2) : n2.current = u2;
|
|
7411
|
+
} catch (n3) {
|
|
7412
|
+
l.__e(n3, i2);
|
|
6971
7413
|
}
|
|
6972
|
-
|
|
6973
|
-
|
|
6974
|
-
|
|
7414
|
+
}
|
|
7415
|
+
function N(n2, u2, i2) {
|
|
7416
|
+
var t2, o3;
|
|
7417
|
+
if (l.unmount && l.unmount(n2), (t2 = n2.ref) && (t2.current && t2.current !== n2.__e || M(t2, null, u2)), null != (t2 = n2.__c)) {
|
|
7418
|
+
if (t2.componentWillUnmount)
|
|
7419
|
+
try {
|
|
7420
|
+
t2.componentWillUnmount();
|
|
7421
|
+
} catch (n3) {
|
|
7422
|
+
l.__e(n3, u2);
|
|
7423
|
+
}
|
|
7424
|
+
t2.base = t2.__P = null, n2.__c = void 0;
|
|
6975
7425
|
}
|
|
6976
|
-
|
|
7426
|
+
if (t2 = n2.__k)
|
|
7427
|
+
for (o3 = 0; o3 < t2.length; o3++)
|
|
7428
|
+
t2[o3] && N(t2[o3], u2, "function" != typeof n2.type);
|
|
7429
|
+
i2 || null == n2.__e || a(n2.__e), n2.__ = n2.__e = n2.__d = void 0;
|
|
6977
7430
|
}
|
|
6978
|
-
|
|
6979
|
-
|
|
6980
|
-
|
|
6981
|
-
)
|
|
7431
|
+
function O(n2, l2, u2) {
|
|
7432
|
+
return this.constructor(n2, u2);
|
|
7433
|
+
}
|
|
7434
|
+
function P(u2, i2, t2) {
|
|
7435
|
+
var o3, r2, e2;
|
|
7436
|
+
l.__ && l.__(u2, i2), r2 = (o3 = "function" == typeof t2) ? null : t2 && t2.__k || i2.__k, e2 = [], j(i2, u2 = (!o3 && t2 || i2).__k = h(p, null, [u2]), r2 || f, f, void 0 !== i2.ownerSVGElement, !o3 && t2 ? [t2] : r2 ? null : i2.firstChild ? n.call(i2.childNodes) : null, e2, !o3 && t2 ? t2 : r2 ? r2.__e : i2.firstChild, o3), z(e2, u2);
|
|
7437
|
+
}
|
|
7438
|
+
n = e.slice, l = { __e: function(n2, l2, u2, i2) {
|
|
7439
|
+
for (var t2, o3, r2; l2 = l2.__; )
|
|
7440
|
+
if ((t2 = l2.__c) && !t2.__)
|
|
7441
|
+
try {
|
|
7442
|
+
if ((o3 = t2.constructor) && null != o3.getDerivedStateFromError && (t2.setState(o3.getDerivedStateFromError(n2)), r2 = t2.__d), null != t2.componentDidCatch && (t2.componentDidCatch(n2, i2 || {}), r2 = t2.__d), r2)
|
|
7443
|
+
return t2.__E = t2;
|
|
7444
|
+
} catch (l3) {
|
|
7445
|
+
n2 = l3;
|
|
7446
|
+
}
|
|
7447
|
+
throw n2;
|
|
7448
|
+
} }, u = 0, i = function(n2) {
|
|
7449
|
+
return null != n2 && void 0 === n2.constructor;
|
|
7450
|
+
}, d.prototype.setState = function(n2, l2) {
|
|
7451
|
+
var u2;
|
|
7452
|
+
u2 = null != this.__s && this.__s !== this.state ? this.__s : this.__s = s({}, this.state), "function" == typeof n2 && (n2 = n2(s({}, u2), this.props)), n2 && s(u2, n2), null != n2 && this.__v && (l2 && this.__h.push(l2), b(this));
|
|
7453
|
+
}, d.prototype.forceUpdate = function(n2) {
|
|
7454
|
+
this.__v && (this.__e = true, n2 && this.__h.push(n2), b(this));
|
|
7455
|
+
}, d.prototype.render = p, t = [], g.__r = 0, r = 0;
|
|
6982
7456
|
|
|
6983
7457
|
// ../../node_modules/.pnpm/preact@10.11.0/node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js
|
|
6984
7458
|
var _2 = 0;
|
|
@@ -6995,10 +7469,11 @@
|
|
|
6995
7469
|
|
|
6996
7470
|
// signin/signin.tsx
|
|
6997
7471
|
function SignIn() {
|
|
6998
|
-
|
|
6999
|
-
|
|
7472
|
+
const title = window.__ROOT_CTX.name;
|
|
7473
|
+
return /* @__PURE__ */ o2("div", { className: "signin", children: [
|
|
7474
|
+
title && /* @__PURE__ */ o2("h1", { className: "signin__title", children: title }),
|
|
7000
7475
|
/* @__PURE__ */ o2(SignIn.Button, {})
|
|
7001
|
-
] })
|
|
7476
|
+
] });
|
|
7002
7477
|
}
|
|
7003
7478
|
SignIn.Button = () => {
|
|
7004
7479
|
async function signIn() {
|
|
@@ -7527,7 +8002,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7527
8002
|
* limitations under the License.
|
|
7528
8003
|
*)
|
|
7529
8004
|
|
|
7530
|
-
@firebase/auth/dist/esm2017/index-
|
|
8005
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7531
8006
|
(**
|
|
7532
8007
|
* @license
|
|
7533
8008
|
* Copyright 2021 Google LLC
|
|
@@ -7545,7 +8020,43 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7545
8020
|
* limitations under the License.
|
|
7546
8021
|
*)
|
|
7547
8022
|
|
|
7548
|
-
@firebase/auth/dist/esm2017/index-
|
|
8023
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8024
|
+
(**
|
|
8025
|
+
* @license
|
|
8026
|
+
* Copyright 2020 Google LLC
|
|
8027
|
+
*
|
|
8028
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8029
|
+
* you may not use this file except in compliance with the License.
|
|
8030
|
+
* You may obtain a copy of the License at
|
|
8031
|
+
*
|
|
8032
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8033
|
+
*
|
|
8034
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
8035
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8036
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8037
|
+
* See the License for the specific language governing permissions and
|
|
8038
|
+
* limitations under the License.
|
|
8039
|
+
*)
|
|
8040
|
+
|
|
8041
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8042
|
+
(**
|
|
8043
|
+
* @license
|
|
8044
|
+
* Copyright 2020 Google LLC
|
|
8045
|
+
*
|
|
8046
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8047
|
+
* you may not use this file except in compliance with the License.
|
|
8048
|
+
* You may obtain a copy of the License at
|
|
8049
|
+
*
|
|
8050
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8051
|
+
*
|
|
8052
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
8053
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8054
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8055
|
+
* See the License for the specific language governing permissions and
|
|
8056
|
+
* limitations under the License.
|
|
8057
|
+
*)
|
|
8058
|
+
|
|
8059
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7549
8060
|
(**
|
|
7550
8061
|
* @license
|
|
7551
8062
|
* Copyright 2020 Google LLC
|
|
@@ -7563,7 +8074,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7563
8074
|
* limitations under the License.
|
|
7564
8075
|
*)
|
|
7565
8076
|
|
|
7566
|
-
@firebase/auth/dist/esm2017/index-
|
|
8077
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7567
8078
|
(**
|
|
7568
8079
|
* @license
|
|
7569
8080
|
* Copyright 2020 Google LLC
|
|
@@ -7581,7 +8092,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7581
8092
|
* limitations under the License.
|
|
7582
8093
|
*)
|
|
7583
8094
|
|
|
7584
|
-
@firebase/auth/dist/esm2017/index-
|
|
8095
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7585
8096
|
(**
|
|
7586
8097
|
* @license
|
|
7587
8098
|
* Copyright 2020 Google LLC
|
|
@@ -7599,7 +8110,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7599
8110
|
* limitations under the License.
|
|
7600
8111
|
*)
|
|
7601
8112
|
|
|
7602
|
-
@firebase/auth/dist/esm2017/index-
|
|
8113
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7603
8114
|
(**
|
|
7604
8115
|
* @license
|
|
7605
8116
|
* Copyright 2020 Google LLC
|
|
@@ -7633,7 +8144,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7633
8144
|
* limitations under the License.
|
|
7634
8145
|
*)
|
|
7635
8146
|
|
|
7636
|
-
@firebase/auth/dist/esm2017/index-
|
|
8147
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7637
8148
|
(**
|
|
7638
8149
|
* @license
|
|
7639
8150
|
* Copyright 2020 Google LLC
|
|
@@ -7666,8 +8177,42 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7666
8177
|
* See the License for the specific language governing permissions and
|
|
7667
8178
|
* limitations under the License.
|
|
7668
8179
|
*)
|
|
8180
|
+
(**
|
|
8181
|
+
* @license
|
|
8182
|
+
* Copyright 2023 Google LLC
|
|
8183
|
+
*
|
|
8184
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8185
|
+
* you may not use this file except in compliance with the License.
|
|
8186
|
+
* You may obtain a copy of the License at
|
|
8187
|
+
*
|
|
8188
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8189
|
+
*
|
|
8190
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
8191
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8192
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8193
|
+
* See the License for the specific language governing permissions and
|
|
8194
|
+
* limitations under the License.
|
|
8195
|
+
*)
|
|
8196
|
+
|
|
8197
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8198
|
+
(**
|
|
8199
|
+
* @license
|
|
8200
|
+
* Copyright 2020 Google LLC
|
|
8201
|
+
*
|
|
8202
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8203
|
+
* you may not use this file except in compliance with the License.
|
|
8204
|
+
* You may obtain a copy of the License at
|
|
8205
|
+
*
|
|
8206
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8207
|
+
*
|
|
8208
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
8209
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8210
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8211
|
+
* See the License for the specific language governing permissions and
|
|
8212
|
+
* limitations under the License.
|
|
8213
|
+
*)
|
|
7669
8214
|
|
|
7670
|
-
@firebase/auth/dist/esm2017/index-
|
|
8215
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7671
8216
|
(**
|
|
7672
8217
|
* @license
|
|
7673
8218
|
* Copyright 2020 Google LLC
|
|
@@ -7685,7 +8230,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7685
8230
|
* limitations under the License.
|
|
7686
8231
|
*)
|
|
7687
8232
|
|
|
7688
|
-
@firebase/auth/dist/esm2017/index-
|
|
8233
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7689
8234
|
(**
|
|
7690
8235
|
* @license
|
|
7691
8236
|
* Copyright 2020 Google LLC
|
|
@@ -7703,7 +8248,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7703
8248
|
* limitations under the License.
|
|
7704
8249
|
*)
|
|
7705
8250
|
|
|
7706
|
-
@firebase/auth/dist/esm2017/index-
|
|
8251
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7707
8252
|
(**
|
|
7708
8253
|
* @license
|
|
7709
8254
|
* Copyright 2020 Google LLC
|
|
@@ -7737,7 +8282,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7737
8282
|
* limitations under the License.
|
|
7738
8283
|
*)
|
|
7739
8284
|
|
|
7740
|
-
@firebase/auth/dist/esm2017/index-
|
|
8285
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7741
8286
|
(**
|
|
7742
8287
|
* @license
|
|
7743
8288
|
* Copyright 2020 Google LLC
|
|
@@ -7755,7 +8300,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7755
8300
|
* limitations under the License.
|
|
7756
8301
|
*)
|
|
7757
8302
|
|
|
7758
|
-
@firebase/auth/dist/esm2017/index-
|
|
8303
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7759
8304
|
(**
|
|
7760
8305
|
* @license
|
|
7761
8306
|
* Copyright 2020 Google LLC
|
|
@@ -7773,7 +8318,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7773
8318
|
* limitations under the License.
|
|
7774
8319
|
*)
|
|
7775
8320
|
|
|
7776
|
-
@firebase/auth/dist/esm2017/index-
|
|
8321
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7777
8322
|
(**
|
|
7778
8323
|
* @license
|
|
7779
8324
|
* Copyright 2020 Google LLC
|
|
@@ -7791,7 +8336,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7791
8336
|
* limitations under the License.
|
|
7792
8337
|
*)
|
|
7793
8338
|
|
|
7794
|
-
@firebase/auth/dist/esm2017/index-
|
|
8339
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7795
8340
|
(**
|
|
7796
8341
|
* @license
|
|
7797
8342
|
* Copyright 2020 Google LLC
|
|
@@ -7809,7 +8354,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7809
8354
|
* limitations under the License.
|
|
7810
8355
|
*)
|
|
7811
8356
|
|
|
7812
|
-
@firebase/auth/dist/esm2017/index-
|
|
8357
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7813
8358
|
(**
|
|
7814
8359
|
* @license
|
|
7815
8360
|
* Copyright 2020 Google LLC
|
|
@@ -7827,7 +8372,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7827
8372
|
* limitations under the License.
|
|
7828
8373
|
*)
|
|
7829
8374
|
|
|
7830
|
-
@firebase/auth/dist/esm2017/index-
|
|
8375
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7831
8376
|
(**
|
|
7832
8377
|
* @license
|
|
7833
8378
|
* Copyright 2019 Google LLC
|
|
@@ -7845,7 +8390,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7845
8390
|
* limitations under the License.
|
|
7846
8391
|
*)
|
|
7847
8392
|
|
|
7848
|
-
@firebase/auth/dist/esm2017/index-
|
|
8393
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7849
8394
|
(**
|
|
7850
8395
|
* @license
|
|
7851
8396
|
* Copyright 2019 Google LLC
|
|
@@ -7879,7 +8424,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7879
8424
|
* limitations under the License.
|
|
7880
8425
|
*)
|
|
7881
8426
|
|
|
7882
|
-
@firebase/auth/dist/esm2017/index-
|
|
8427
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7883
8428
|
(**
|
|
7884
8429
|
* @license
|
|
7885
8430
|
* Copyright 2020 Google LLC
|
|
@@ -7897,7 +8442,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7897
8442
|
* limitations under the License.
|
|
7898
8443
|
*)
|
|
7899
8444
|
|
|
7900
|
-
@firebase/auth/dist/esm2017/index-
|
|
8445
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7901
8446
|
(**
|
|
7902
8447
|
* @license
|
|
7903
8448
|
* Copyright 2020 Google LLC
|
|
@@ -7915,7 +8460,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7915
8460
|
* limitations under the License.
|
|
7916
8461
|
*)
|
|
7917
8462
|
|
|
7918
|
-
@firebase/auth/dist/esm2017/index-
|
|
8463
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7919
8464
|
(**
|
|
7920
8465
|
* @license
|
|
7921
8466
|
* Copyright 2020 Google LLC
|
|
@@ -7933,7 +8478,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7933
8478
|
* limitations under the License.
|
|
7934
8479
|
*)
|
|
7935
8480
|
|
|
7936
|
-
@firebase/auth/dist/esm2017/index-
|
|
8481
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7937
8482
|
(**
|
|
7938
8483
|
* @license
|
|
7939
8484
|
* Copyright 2020 Google LLC
|
|
@@ -7951,7 +8496,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7951
8496
|
* limitations under the License.
|
|
7952
8497
|
*)
|
|
7953
8498
|
|
|
7954
|
-
@firebase/auth/dist/esm2017/index-
|
|
8499
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7955
8500
|
(**
|
|
7956
8501
|
* @license
|
|
7957
8502
|
* Copyright 2020 Google LLC
|
|
@@ -7969,7 +8514,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7969
8514
|
* limitations under the License.
|
|
7970
8515
|
*)
|
|
7971
8516
|
|
|
7972
|
-
@firebase/auth/dist/esm2017/index-
|
|
8517
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7973
8518
|
(**
|
|
7974
8519
|
* @license
|
|
7975
8520
|
* Copyright 2020 Google LLC
|
|
@@ -7987,7 +8532,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7987
8532
|
* limitations under the License.
|
|
7988
8533
|
*)
|
|
7989
8534
|
|
|
7990
|
-
@firebase/auth/dist/esm2017/index-
|
|
8535
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
7991
8536
|
(**
|
|
7992
8537
|
* @license
|
|
7993
8538
|
* Copyright 2020 Google LLC
|
|
@@ -8005,7 +8550,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8005
8550
|
* limitations under the License.
|
|
8006
8551
|
*)
|
|
8007
8552
|
|
|
8008
|
-
@firebase/auth/dist/esm2017/index-
|
|
8553
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8009
8554
|
(**
|
|
8010
8555
|
* @license
|
|
8011
8556
|
* Copyright 2020 Google LLC
|
|
@@ -8023,7 +8568,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8023
8568
|
* limitations under the License.
|
|
8024
8569
|
*)
|
|
8025
8570
|
|
|
8026
|
-
@firebase/auth/dist/esm2017/index-
|
|
8571
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8027
8572
|
(**
|
|
8028
8573
|
* @license
|
|
8029
8574
|
* Copyright 2020 Google LLC
|
|
@@ -8041,7 +8586,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8041
8586
|
* limitations under the License.
|
|
8042
8587
|
*)
|
|
8043
8588
|
|
|
8044
|
-
@firebase/auth/dist/esm2017/index-
|
|
8589
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8045
8590
|
(**
|
|
8046
8591
|
* @license
|
|
8047
8592
|
* Copyright 2020 Google LLC
|
|
@@ -8059,7 +8604,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8059
8604
|
* limitations under the License.
|
|
8060
8605
|
*)
|
|
8061
8606
|
|
|
8062
|
-
@firebase/auth/dist/esm2017/index-
|
|
8607
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8063
8608
|
(**
|
|
8064
8609
|
* @license
|
|
8065
8610
|
* Copyright 2019 Google LLC
|
|
@@ -8077,7 +8622,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8077
8622
|
* limitations under the License.
|
|
8078
8623
|
*)
|
|
8079
8624
|
|
|
8080
|
-
@firebase/auth/dist/esm2017/index-
|
|
8625
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8081
8626
|
(**
|
|
8082
8627
|
* @license
|
|
8083
8628
|
* Copyright 2020 Google LLC
|
|
@@ -8095,7 +8640,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8095
8640
|
* limitations under the License.
|
|
8096
8641
|
*)
|
|
8097
8642
|
|
|
8098
|
-
@firebase/auth/dist/esm2017/index-
|
|
8643
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8099
8644
|
(**
|
|
8100
8645
|
* @license
|
|
8101
8646
|
* Copyright 2020 Google LLC
|
|
@@ -8113,7 +8658,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8113
8658
|
* limitations under the License.
|
|
8114
8659
|
*)
|
|
8115
8660
|
|
|
8116
|
-
@firebase/auth/dist/esm2017/index-
|
|
8661
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8117
8662
|
(**
|
|
8118
8663
|
* @license
|
|
8119
8664
|
* Copyright 2020 Google LLC
|
|
@@ -8131,10 +8676,10 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8131
8676
|
* limitations under the License.
|
|
8132
8677
|
*)
|
|
8133
8678
|
|
|
8134
|
-
@firebase/auth/dist/esm2017/index-
|
|
8679
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8135
8680
|
(**
|
|
8136
8681
|
* @license
|
|
8137
|
-
* Copyright
|
|
8682
|
+
* Copyright 2020 Google LLC
|
|
8138
8683
|
*
|
|
8139
8684
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8140
8685
|
* you may not use this file except in compliance with the License.
|
|
@@ -8148,9 +8693,11 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8148
8693
|
* See the License for the specific language governing permissions and
|
|
8149
8694
|
* limitations under the License.
|
|
8150
8695
|
*)
|
|
8696
|
+
|
|
8697
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8151
8698
|
(**
|
|
8152
8699
|
* @license
|
|
8153
|
-
* Copyright
|
|
8700
|
+
* Copyright 2019 Google LLC
|
|
8154
8701
|
*
|
|
8155
8702
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8156
8703
|
* you may not use this file except in compliance with the License.
|
|
@@ -8166,7 +8713,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8166
8713
|
*)
|
|
8167
8714
|
(**
|
|
8168
8715
|
* @license
|
|
8169
|
-
* Copyright 2020 Google LLC
|
|
8716
|
+
* Copyright 2020 Google LLC
|
|
8170
8717
|
*
|
|
8171
8718
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8172
8719
|
* you may not use this file except in compliance with the License.
|
|
@@ -8180,11 +8727,9 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8180
8727
|
* See the License for the specific language governing permissions and
|
|
8181
8728
|
* limitations under the License.
|
|
8182
8729
|
*)
|
|
8183
|
-
|
|
8184
|
-
@firebase/auth/dist/esm2017/index-e3f1fbba.js:
|
|
8185
8730
|
(**
|
|
8186
8731
|
* @license
|
|
8187
|
-
* Copyright 2020 Google LLC
|
|
8732
|
+
* Copyright 2020 Google LLC.
|
|
8188
8733
|
*
|
|
8189
8734
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8190
8735
|
* you may not use this file except in compliance with the License.
|
|
@@ -8199,7 +8744,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8199
8744
|
* limitations under the License.
|
|
8200
8745
|
*)
|
|
8201
8746
|
|
|
8202
|
-
@firebase/auth/dist/esm2017/index-
|
|
8747
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8203
8748
|
(**
|
|
8204
8749
|
* @license
|
|
8205
8750
|
* Copyright 2020 Google LLC
|
|
@@ -8217,7 +8762,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8217
8762
|
* limitations under the License.
|
|
8218
8763
|
*)
|
|
8219
8764
|
|
|
8220
|
-
@firebase/auth/dist/esm2017/index-
|
|
8765
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8221
8766
|
(**
|
|
8222
8767
|
* @license
|
|
8223
8768
|
* Copyright 2020 Google LLC
|
|
@@ -8235,7 +8780,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8235
8780
|
* limitations under the License.
|
|
8236
8781
|
*)
|
|
8237
8782
|
|
|
8238
|
-
@firebase/auth/dist/esm2017/index-
|
|
8783
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8239
8784
|
(**
|
|
8240
8785
|
* @license
|
|
8241
8786
|
* Copyright 2020 Google LLC
|
|
@@ -8253,7 +8798,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8253
8798
|
* limitations under the License.
|
|
8254
8799
|
*)
|
|
8255
8800
|
|
|
8256
|
-
@firebase/auth/dist/esm2017/index-
|
|
8801
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8257
8802
|
(**
|
|
8258
8803
|
* @license
|
|
8259
8804
|
* Copyright 2020 Google LLC
|
|
@@ -8303,7 +8848,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8303
8848
|
* limitations under the License.
|
|
8304
8849
|
*)
|
|
8305
8850
|
|
|
8306
|
-
@firebase/auth/dist/esm2017/index-
|
|
8851
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8307
8852
|
(**
|
|
8308
8853
|
* @license
|
|
8309
8854
|
* Copyright 2020 Google LLC
|
|
@@ -8321,7 +8866,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8321
8866
|
* limitations under the License.
|
|
8322
8867
|
*)
|
|
8323
8868
|
|
|
8324
|
-
@firebase/auth/dist/esm2017/index-
|
|
8869
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8325
8870
|
(**
|
|
8326
8871
|
* @license
|
|
8327
8872
|
* Copyright 2020 Google LLC
|
|
@@ -8339,7 +8884,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8339
8884
|
* limitations under the License.
|
|
8340
8885
|
*)
|
|
8341
8886
|
|
|
8342
|
-
@firebase/auth/dist/esm2017/index-
|
|
8887
|
+
@firebase/auth/dist/esm2017/index-9a76d29a.js:
|
|
8343
8888
|
(**
|
|
8344
8889
|
* @license
|
|
8345
8890
|
* Copyright 2020 Google LLC
|