@blinkk/root-cms 1.0.0-rc.0 → 1.0.0-rc.10
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 +4 -3
- package/dist/cli.js +67 -34
- package/dist/client.js +346 -0
- package/dist/core/client.d.ts +196 -0
- package/dist/core/core.d.ts +56 -0
- package/dist/{project.d.ts → core/project.d.ts} +1 -1
- package/dist/core.js +415 -109
- package/dist/functions.js +29 -20
- package/dist/plugin.js +29 -20
- package/dist/project.js +4 -1
- package/dist/richtext/richtext.d.ts +65 -0
- package/dist/richtext.js +119 -0
- package/dist/{schema-49de9659.d.ts → schema-710fda8a.d.ts} +16 -1
- package/dist/ui/signin.css +44 -57
- package/dist/ui/signin.js +1318 -706
- package/dist/ui/ui.css +97 -44
- package/dist/ui/ui.js +23832 -10136
- package/package.json +41 -25
- package/dist/core.d.ts +0 -108
- /package/dist/{functions.d.ts → core/functions.d.ts} +0 -0
- /package/dist/{plugin.d.ts → core/plugin.d.ts} +0 -0
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.22/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.22";
|
|
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.5.2";
|
|
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,12 +1789,12 @@
|
|
|
2161
1789
|
}
|
|
2162
1790
|
registerCoreComponents("");
|
|
2163
1791
|
|
|
2164
|
-
// ../../node_modules/.pnpm/firebase@
|
|
1792
|
+
// ../../node_modules/.pnpm/firebase@10.5.2/node_modules/firebase/app/dist/esm/index.esm.js
|
|
2165
1793
|
var name2 = "firebase";
|
|
2166
|
-
var version2 = "
|
|
1794
|
+
var version2 = "10.5.2";
|
|
2167
1795
|
registerVersion(name2, version2, "app");
|
|
2168
1796
|
|
|
2169
|
-
// ../../node_modules/.pnpm/tslib@2.
|
|
1797
|
+
// ../../node_modules/.pnpm/tslib@2.6.2/node_modules/tslib/tslib.es6.mjs
|
|
2170
1798
|
function __rest(s2, e2) {
|
|
2171
1799
|
var t2 = {};
|
|
2172
1800
|
for (var p2 in s2)
|
|
@@ -2180,7 +1808,7 @@
|
|
|
2180
1808
|
return t2;
|
|
2181
1809
|
}
|
|
2182
1810
|
|
|
2183
|
-
// ../../node_modules/.pnpm/@firebase+auth@
|
|
1811
|
+
// ../../node_modules/.pnpm/@firebase+auth@1.3.2_@firebase+app@0.9.22/node_modules/@firebase/auth/dist/esm2017/index-94e5f531.js
|
|
2184
1812
|
function _prodErrorMap() {
|
|
2185
1813
|
return {
|
|
2186
1814
|
[
|
|
@@ -2192,6 +1820,11 @@
|
|
|
2192
1820
|
var prodErrorMap = _prodErrorMap;
|
|
2193
1821
|
var _DEFAULT_AUTH_ERROR_FACTORY = new ErrorFactory("auth", "Firebase", _prodErrorMap());
|
|
2194
1822
|
var logClient = new Logger("@firebase/auth");
|
|
1823
|
+
function _logWarn(msg, ...args) {
|
|
1824
|
+
if (logClient.logLevel <= LogLevel.WARN) {
|
|
1825
|
+
logClient.warn(`Auth (${SDK_VERSION}): ${msg}`, ...args);
|
|
1826
|
+
}
|
|
1827
|
+
}
|
|
2195
1828
|
function _logError(msg, ...args) {
|
|
2196
1829
|
if (logClient.logLevel <= LogLevel.ERROR) {
|
|
2197
1830
|
logClient.error(`Auth (${SDK_VERSION}): ${msg}`, ...args);
|
|
@@ -2249,44 +1882,6 @@
|
|
|
2249
1882
|
debugFail(message);
|
|
2250
1883
|
}
|
|
2251
1884
|
}
|
|
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
1885
|
function _getCurrentUrl() {
|
|
2291
1886
|
var _a;
|
|
2292
1887
|
return typeof self !== "undefined" && ((_a = self.location) === null || _a === void 0 ? void 0 : _a.href) || "";
|
|
@@ -2361,6 +1956,12 @@
|
|
|
2361
1956
|
if (typeof self !== "undefined" && "fetch" in self) {
|
|
2362
1957
|
return self.fetch;
|
|
2363
1958
|
}
|
|
1959
|
+
if (typeof globalThis !== "undefined" && globalThis.fetch) {
|
|
1960
|
+
return globalThis.fetch;
|
|
1961
|
+
}
|
|
1962
|
+
if (typeof fetch !== "undefined") {
|
|
1963
|
+
return fetch;
|
|
1964
|
+
}
|
|
2364
1965
|
debugFail("Could not find fetch implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill");
|
|
2365
1966
|
}
|
|
2366
1967
|
static headers() {
|
|
@@ -2370,6 +1971,12 @@
|
|
|
2370
1971
|
if (typeof self !== "undefined" && "Headers" in self) {
|
|
2371
1972
|
return self.Headers;
|
|
2372
1973
|
}
|
|
1974
|
+
if (typeof globalThis !== "undefined" && globalThis.Headers) {
|
|
1975
|
+
return globalThis.Headers;
|
|
1976
|
+
}
|
|
1977
|
+
if (typeof Headers !== "undefined") {
|
|
1978
|
+
return Headers;
|
|
1979
|
+
}
|
|
2373
1980
|
debugFail("Could not find Headers implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill");
|
|
2374
1981
|
}
|
|
2375
1982
|
static response() {
|
|
@@ -2379,6 +1986,12 @@
|
|
|
2379
1986
|
if (typeof self !== "undefined" && "Response" in self) {
|
|
2380
1987
|
return self.Response;
|
|
2381
1988
|
}
|
|
1989
|
+
if (typeof globalThis !== "undefined" && globalThis.Response) {
|
|
1990
|
+
return globalThis.Response;
|
|
1991
|
+
}
|
|
1992
|
+
if (typeof Response !== "undefined") {
|
|
1993
|
+
return Response;
|
|
1994
|
+
}
|
|
2382
1995
|
debugFail("Could not find Response implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill");
|
|
2383
1996
|
}
|
|
2384
1997
|
};
|
|
@@ -2412,7 +2025,7 @@
|
|
|
2412
2025
|
[
|
|
2413
2026
|
"MISSING_PASSWORD"
|
|
2414
2027
|
/* ServerError.MISSING_PASSWORD */
|
|
2415
|
-
]: "
|
|
2028
|
+
]: "missing-password",
|
|
2416
2029
|
// Sign up with email and password errors.
|
|
2417
2030
|
[
|
|
2418
2031
|
"EMAIL_EXISTS"
|
|
@@ -2484,6 +2097,10 @@
|
|
|
2484
2097
|
"TOO_MANY_ATTEMPTS_TRY_LATER"
|
|
2485
2098
|
/* ServerError.TOO_MANY_ATTEMPTS_TRY_LATER */
|
|
2486
2099
|
]: "too-many-requests",
|
|
2100
|
+
[
|
|
2101
|
+
"PASSWORD_DOES_NOT_MEET_REQUIREMENTS"
|
|
2102
|
+
/* ServerError.PASSWORD_DOES_NOT_MEET_REQUIREMENTS */
|
|
2103
|
+
]: "password-does-not-meet-requirements",
|
|
2487
2104
|
// Phone Auth related errors.
|
|
2488
2105
|
[
|
|
2489
2106
|
"INVALID_CODE"
|
|
@@ -2555,8 +2172,41 @@
|
|
|
2555
2172
|
[
|
|
2556
2173
|
"BLOCKING_FUNCTION_ERROR_RESPONSE"
|
|
2557
2174
|
/* ServerError.BLOCKING_FUNCTION_ERROR_RESPONSE */
|
|
2558
|
-
]: "internal-error"
|
|
2559
|
-
|
|
2175
|
+
]: "internal-error",
|
|
2176
|
+
// Recaptcha related errors.
|
|
2177
|
+
[
|
|
2178
|
+
"RECAPTCHA_NOT_ENABLED"
|
|
2179
|
+
/* ServerError.RECAPTCHA_NOT_ENABLED */
|
|
2180
|
+
]: "recaptcha-not-enabled",
|
|
2181
|
+
[
|
|
2182
|
+
"MISSING_RECAPTCHA_TOKEN"
|
|
2183
|
+
/* ServerError.MISSING_RECAPTCHA_TOKEN */
|
|
2184
|
+
]: "missing-recaptcha-token",
|
|
2185
|
+
[
|
|
2186
|
+
"INVALID_RECAPTCHA_TOKEN"
|
|
2187
|
+
/* ServerError.INVALID_RECAPTCHA_TOKEN */
|
|
2188
|
+
]: "invalid-recaptcha-token",
|
|
2189
|
+
[
|
|
2190
|
+
"INVALID_RECAPTCHA_ACTION"
|
|
2191
|
+
/* ServerError.INVALID_RECAPTCHA_ACTION */
|
|
2192
|
+
]: "invalid-recaptcha-action",
|
|
2193
|
+
[
|
|
2194
|
+
"MISSING_CLIENT_TYPE"
|
|
2195
|
+
/* ServerError.MISSING_CLIENT_TYPE */
|
|
2196
|
+
]: "missing-client-type",
|
|
2197
|
+
[
|
|
2198
|
+
"MISSING_RECAPTCHA_VERSION"
|
|
2199
|
+
/* ServerError.MISSING_RECAPTCHA_VERSION */
|
|
2200
|
+
]: "missing-recaptcha-version",
|
|
2201
|
+
[
|
|
2202
|
+
"INVALID_RECAPTCHA_VERSION"
|
|
2203
|
+
/* ServerError.INVALID_RECAPTCHA_VERSION */
|
|
2204
|
+
]: "invalid-recaptcha-version",
|
|
2205
|
+
[
|
|
2206
|
+
"INVALID_REQ_TYPE"
|
|
2207
|
+
/* ServerError.INVALID_REQ_TYPE */
|
|
2208
|
+
]: "invalid-req-type"
|
|
2209
|
+
/* AuthErrorCode.INVALID_REQ_TYPE */
|
|
2560
2210
|
};
|
|
2561
2211
|
var DEFAULT_API_TIMEOUT_MS = new Delay(3e4, 6e4);
|
|
2562
2212
|
function _addTidIfNecessary(auth2, request) {
|
|
@@ -2634,7 +2284,7 @@
|
|
|
2634
2284
|
if (e2 instanceof FirebaseError) {
|
|
2635
2285
|
throw e2;
|
|
2636
2286
|
}
|
|
2637
|
-
_fail(auth2, "
|
|
2287
|
+
_fail(auth2, "network-request-failed", { "message": String(e2) });
|
|
2638
2288
|
}
|
|
2639
2289
|
}
|
|
2640
2290
|
async function _performSignInRequest(auth2, method, path, request, customErrorMap = {}) {
|
|
@@ -2653,6 +2303,18 @@
|
|
|
2653
2303
|
}
|
|
2654
2304
|
return _emulatorUrl(auth2.config, base);
|
|
2655
2305
|
}
|
|
2306
|
+
function _parseEnforcementState(enforcementStateStr) {
|
|
2307
|
+
switch (enforcementStateStr) {
|
|
2308
|
+
case "ENFORCE":
|
|
2309
|
+
return "ENFORCE";
|
|
2310
|
+
case "AUDIT":
|
|
2311
|
+
return "AUDIT";
|
|
2312
|
+
case "OFF":
|
|
2313
|
+
return "OFF";
|
|
2314
|
+
default:
|
|
2315
|
+
return "ENFORCEMENT_STATE_UNSPECIFIED";
|
|
2316
|
+
}
|
|
2317
|
+
}
|
|
2656
2318
|
var NetworkTimeout = class {
|
|
2657
2319
|
constructor(auth2) {
|
|
2658
2320
|
this.auth = auth2;
|
|
@@ -2685,6 +2347,49 @@
|
|
|
2685
2347
|
error.customData._tokenResponse = response;
|
|
2686
2348
|
return error;
|
|
2687
2349
|
}
|
|
2350
|
+
function isEnterprise(grecaptcha) {
|
|
2351
|
+
return grecaptcha !== void 0 && grecaptcha.enterprise !== void 0;
|
|
2352
|
+
}
|
|
2353
|
+
var RecaptchaConfig = class {
|
|
2354
|
+
constructor(response) {
|
|
2355
|
+
this.siteKey = "";
|
|
2356
|
+
this.recaptchaEnforcementState = [];
|
|
2357
|
+
if (response.recaptchaKey === void 0) {
|
|
2358
|
+
throw new Error("recaptchaKey undefined");
|
|
2359
|
+
}
|
|
2360
|
+
this.siteKey = response.recaptchaKey.split("/")[3];
|
|
2361
|
+
this.recaptchaEnforcementState = response.recaptchaEnforcementState;
|
|
2362
|
+
}
|
|
2363
|
+
/**
|
|
2364
|
+
* Returns the reCAPTCHA Enterprise enforcement state for the given provider.
|
|
2365
|
+
*
|
|
2366
|
+
* @param providerStr - The provider whose enforcement state is to be returned.
|
|
2367
|
+
* @returns The reCAPTCHA Enterprise enforcement state for the given provider.
|
|
2368
|
+
*/
|
|
2369
|
+
getProviderEnforcementState(providerStr) {
|
|
2370
|
+
if (!this.recaptchaEnforcementState || this.recaptchaEnforcementState.length === 0) {
|
|
2371
|
+
return null;
|
|
2372
|
+
}
|
|
2373
|
+
for (const recaptchaEnforcementState of this.recaptchaEnforcementState) {
|
|
2374
|
+
if (recaptchaEnforcementState.provider && recaptchaEnforcementState.provider === providerStr) {
|
|
2375
|
+
return _parseEnforcementState(recaptchaEnforcementState.enforcementState);
|
|
2376
|
+
}
|
|
2377
|
+
}
|
|
2378
|
+
return null;
|
|
2379
|
+
}
|
|
2380
|
+
/**
|
|
2381
|
+
* Returns true if the reCAPTCHA Enterprise enforcement state for the provider is set to ENFORCE or AUDIT.
|
|
2382
|
+
*
|
|
2383
|
+
* @param providerStr - The provider whose enablement state is to be returned.
|
|
2384
|
+
* @returns Whether or not reCAPTCHA Enterprise protection is enabled for the given provider.
|
|
2385
|
+
*/
|
|
2386
|
+
isProviderEnabled(providerStr) {
|
|
2387
|
+
return this.getProviderEnforcementState(providerStr) === "ENFORCE" || this.getProviderEnforcementState(providerStr) === "AUDIT";
|
|
2388
|
+
}
|
|
2389
|
+
};
|
|
2390
|
+
async function getRecaptchaConfig(auth2, request) {
|
|
2391
|
+
return _performApiRequest(auth2, "GET", "/v2/recaptchaConfig", _addTidIfNecessary(auth2, request));
|
|
2392
|
+
}
|
|
2688
2393
|
async function deleteAccount(auth2, request) {
|
|
2689
2394
|
return _performApiRequest(auth2, "POST", "/v1/accounts:delete", request);
|
|
2690
2395
|
}
|
|
@@ -3115,7 +2820,9 @@
|
|
|
3115
2820
|
this.stsTokenManager._assign(user.stsTokenManager);
|
|
3116
2821
|
}
|
|
3117
2822
|
_clone(auth2) {
|
|
3118
|
-
|
|
2823
|
+
const newUser = new _UserImpl(Object.assign(Object.assign({}, this), { auth: auth2, stsTokenManager: this.stsTokenManager._clone() }));
|
|
2824
|
+
newUser.metadata._copy(this.metadata);
|
|
2825
|
+
return newUser;
|
|
3119
2826
|
}
|
|
3120
2827
|
_onReload(callback) {
|
|
3121
2828
|
_assert(
|
|
@@ -3271,6 +2978,18 @@
|
|
|
3271
2978
|
return user;
|
|
3272
2979
|
}
|
|
3273
2980
|
};
|
|
2981
|
+
var instanceCache = /* @__PURE__ */ new Map();
|
|
2982
|
+
function _getInstance(cls) {
|
|
2983
|
+
debugAssert(cls instanceof Function, "Expected a class definition");
|
|
2984
|
+
let instance = instanceCache.get(cls);
|
|
2985
|
+
if (instance) {
|
|
2986
|
+
debugAssert(instance instanceof cls, "Instance stored in cache mismatched with class");
|
|
2987
|
+
return instance;
|
|
2988
|
+
}
|
|
2989
|
+
instance = new cls();
|
|
2990
|
+
instanceCache.set(cls, instance);
|
|
2991
|
+
return instance;
|
|
2992
|
+
}
|
|
3274
2993
|
var InMemoryPersistence = class {
|
|
3275
2994
|
constructor() {
|
|
3276
2995
|
this.type = "NONE";
|
|
@@ -3522,10 +3241,136 @@
|
|
|
3522
3241
|
}
|
|
3523
3242
|
}
|
|
3524
3243
|
};
|
|
3244
|
+
async function _getPasswordPolicy(auth2, request = {}) {
|
|
3245
|
+
return _performApiRequest(auth2, "GET", "/v2/passwordPolicy", _addTidIfNecessary(auth2, request));
|
|
3246
|
+
}
|
|
3247
|
+
var MINIMUM_MIN_PASSWORD_LENGTH = 6;
|
|
3248
|
+
var PasswordPolicyImpl = class {
|
|
3249
|
+
constructor(response) {
|
|
3250
|
+
var _a, _b, _c, _d;
|
|
3251
|
+
const responseOptions = response.customStrengthOptions;
|
|
3252
|
+
this.customStrengthOptions = {};
|
|
3253
|
+
this.customStrengthOptions.minPasswordLength = (_a = responseOptions.minPasswordLength) !== null && _a !== void 0 ? _a : MINIMUM_MIN_PASSWORD_LENGTH;
|
|
3254
|
+
if (responseOptions.maxPasswordLength) {
|
|
3255
|
+
this.customStrengthOptions.maxPasswordLength = responseOptions.maxPasswordLength;
|
|
3256
|
+
}
|
|
3257
|
+
if (responseOptions.containsLowercaseCharacter !== void 0) {
|
|
3258
|
+
this.customStrengthOptions.containsLowercaseLetter = responseOptions.containsLowercaseCharacter;
|
|
3259
|
+
}
|
|
3260
|
+
if (responseOptions.containsUppercaseCharacter !== void 0) {
|
|
3261
|
+
this.customStrengthOptions.containsUppercaseLetter = responseOptions.containsUppercaseCharacter;
|
|
3262
|
+
}
|
|
3263
|
+
if (responseOptions.containsNumericCharacter !== void 0) {
|
|
3264
|
+
this.customStrengthOptions.containsNumericCharacter = responseOptions.containsNumericCharacter;
|
|
3265
|
+
}
|
|
3266
|
+
if (responseOptions.containsNonAlphanumericCharacter !== void 0) {
|
|
3267
|
+
this.customStrengthOptions.containsNonAlphanumericCharacter = responseOptions.containsNonAlphanumericCharacter;
|
|
3268
|
+
}
|
|
3269
|
+
this.enforcementState = response.enforcementState;
|
|
3270
|
+
if (this.enforcementState === "ENFORCEMENT_STATE_UNSPECIFIED") {
|
|
3271
|
+
this.enforcementState = "OFF";
|
|
3272
|
+
}
|
|
3273
|
+
this.allowedNonAlphanumericCharacters = (_c = (_b = response.allowedNonAlphanumericCharacters) === null || _b === void 0 ? void 0 : _b.join("")) !== null && _c !== void 0 ? _c : "";
|
|
3274
|
+
this.forceUpgradeOnSignin = (_d = response.forceUpgradeOnSignin) !== null && _d !== void 0 ? _d : false;
|
|
3275
|
+
this.schemaVersion = response.schemaVersion;
|
|
3276
|
+
}
|
|
3277
|
+
validatePassword(password) {
|
|
3278
|
+
var _a, _b, _c, _d, _e, _f;
|
|
3279
|
+
const status = {
|
|
3280
|
+
isValid: true,
|
|
3281
|
+
passwordPolicy: this
|
|
3282
|
+
};
|
|
3283
|
+
this.validatePasswordLengthOptions(password, status);
|
|
3284
|
+
this.validatePasswordCharacterOptions(password, status);
|
|
3285
|
+
status.isValid && (status.isValid = (_a = status.meetsMinPasswordLength) !== null && _a !== void 0 ? _a : true);
|
|
3286
|
+
status.isValid && (status.isValid = (_b = status.meetsMaxPasswordLength) !== null && _b !== void 0 ? _b : true);
|
|
3287
|
+
status.isValid && (status.isValid = (_c = status.containsLowercaseLetter) !== null && _c !== void 0 ? _c : true);
|
|
3288
|
+
status.isValid && (status.isValid = (_d = status.containsUppercaseLetter) !== null && _d !== void 0 ? _d : true);
|
|
3289
|
+
status.isValid && (status.isValid = (_e = status.containsNumericCharacter) !== null && _e !== void 0 ? _e : true);
|
|
3290
|
+
status.isValid && (status.isValid = (_f = status.containsNonAlphanumericCharacter) !== null && _f !== void 0 ? _f : true);
|
|
3291
|
+
return status;
|
|
3292
|
+
}
|
|
3293
|
+
/**
|
|
3294
|
+
* Validates that the password meets the length options for the policy.
|
|
3295
|
+
*
|
|
3296
|
+
* @param password Password to validate.
|
|
3297
|
+
* @param status Validation status.
|
|
3298
|
+
*/
|
|
3299
|
+
validatePasswordLengthOptions(password, status) {
|
|
3300
|
+
const minPasswordLength = this.customStrengthOptions.minPasswordLength;
|
|
3301
|
+
const maxPasswordLength = this.customStrengthOptions.maxPasswordLength;
|
|
3302
|
+
if (minPasswordLength) {
|
|
3303
|
+
status.meetsMinPasswordLength = password.length >= minPasswordLength;
|
|
3304
|
+
}
|
|
3305
|
+
if (maxPasswordLength) {
|
|
3306
|
+
status.meetsMaxPasswordLength = password.length <= maxPasswordLength;
|
|
3307
|
+
}
|
|
3308
|
+
}
|
|
3309
|
+
/**
|
|
3310
|
+
* Validates that the password meets the character options for the policy.
|
|
3311
|
+
*
|
|
3312
|
+
* @param password Password to validate.
|
|
3313
|
+
* @param status Validation status.
|
|
3314
|
+
*/
|
|
3315
|
+
validatePasswordCharacterOptions(password, status) {
|
|
3316
|
+
this.updatePasswordCharacterOptionsStatuses(
|
|
3317
|
+
status,
|
|
3318
|
+
/* containsLowercaseCharacter= */
|
|
3319
|
+
false,
|
|
3320
|
+
/* containsUppercaseCharacter= */
|
|
3321
|
+
false,
|
|
3322
|
+
/* containsNumericCharacter= */
|
|
3323
|
+
false,
|
|
3324
|
+
/* containsNonAlphanumericCharacter= */
|
|
3325
|
+
false
|
|
3326
|
+
);
|
|
3327
|
+
let passwordChar;
|
|
3328
|
+
for (let i2 = 0; i2 < password.length; i2++) {
|
|
3329
|
+
passwordChar = password.charAt(i2);
|
|
3330
|
+
this.updatePasswordCharacterOptionsStatuses(
|
|
3331
|
+
status,
|
|
3332
|
+
/* containsLowercaseCharacter= */
|
|
3333
|
+
passwordChar >= "a" && passwordChar <= "z",
|
|
3334
|
+
/* containsUppercaseCharacter= */
|
|
3335
|
+
passwordChar >= "A" && passwordChar <= "Z",
|
|
3336
|
+
/* containsNumericCharacter= */
|
|
3337
|
+
passwordChar >= "0" && passwordChar <= "9",
|
|
3338
|
+
/* containsNonAlphanumericCharacter= */
|
|
3339
|
+
this.allowedNonAlphanumericCharacters.includes(passwordChar)
|
|
3340
|
+
);
|
|
3341
|
+
}
|
|
3342
|
+
}
|
|
3343
|
+
/**
|
|
3344
|
+
* Updates the running validation status with the statuses for the character options.
|
|
3345
|
+
* Expected to be called each time a character is processed to update each option status
|
|
3346
|
+
* based on the current character.
|
|
3347
|
+
*
|
|
3348
|
+
* @param status Validation status.
|
|
3349
|
+
* @param containsLowercaseCharacter Whether the character is a lowercase letter.
|
|
3350
|
+
* @param containsUppercaseCharacter Whether the character is an uppercase letter.
|
|
3351
|
+
* @param containsNumericCharacter Whether the character is a numeric character.
|
|
3352
|
+
* @param containsNonAlphanumericCharacter Whether the character is a non-alphanumeric character.
|
|
3353
|
+
*/
|
|
3354
|
+
updatePasswordCharacterOptionsStatuses(status, containsLowercaseCharacter, containsUppercaseCharacter, containsNumericCharacter, containsNonAlphanumericCharacter) {
|
|
3355
|
+
if (this.customStrengthOptions.containsLowercaseLetter) {
|
|
3356
|
+
status.containsLowercaseLetter || (status.containsLowercaseLetter = containsLowercaseCharacter);
|
|
3357
|
+
}
|
|
3358
|
+
if (this.customStrengthOptions.containsUppercaseLetter) {
|
|
3359
|
+
status.containsUppercaseLetter || (status.containsUppercaseLetter = containsUppercaseCharacter);
|
|
3360
|
+
}
|
|
3361
|
+
if (this.customStrengthOptions.containsNumericCharacter) {
|
|
3362
|
+
status.containsNumericCharacter || (status.containsNumericCharacter = containsNumericCharacter);
|
|
3363
|
+
}
|
|
3364
|
+
if (this.customStrengthOptions.containsNonAlphanumericCharacter) {
|
|
3365
|
+
status.containsNonAlphanumericCharacter || (status.containsNonAlphanumericCharacter = containsNonAlphanumericCharacter);
|
|
3366
|
+
}
|
|
3367
|
+
}
|
|
3368
|
+
};
|
|
3525
3369
|
var AuthImpl = class {
|
|
3526
|
-
constructor(app2, heartbeatServiceProvider, config) {
|
|
3370
|
+
constructor(app2, heartbeatServiceProvider, appCheckServiceProvider, config) {
|
|
3527
3371
|
this.app = app2;
|
|
3528
3372
|
this.heartbeatServiceProvider = heartbeatServiceProvider;
|
|
3373
|
+
this.appCheckServiceProvider = appCheckServiceProvider;
|
|
3529
3374
|
this.config = config;
|
|
3530
3375
|
this.currentUser = null;
|
|
3531
3376
|
this.emulatorConfig = null;
|
|
@@ -3535,12 +3380,17 @@
|
|
|
3535
3380
|
this.beforeStateQueue = new AuthMiddlewareQueue(this);
|
|
3536
3381
|
this.redirectUser = null;
|
|
3537
3382
|
this.isProactiveRefreshEnabled = false;
|
|
3383
|
+
this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION = 1;
|
|
3538
3384
|
this._canInitEmulator = true;
|
|
3539
3385
|
this._isInitialized = false;
|
|
3540
3386
|
this._deleted = false;
|
|
3541
3387
|
this._initializationPromise = null;
|
|
3542
3388
|
this._popupRedirectResolver = null;
|
|
3543
3389
|
this._errorFactory = _DEFAULT_AUTH_ERROR_FACTORY;
|
|
3390
|
+
this._agentRecaptchaConfig = null;
|
|
3391
|
+
this._tenantRecaptchaConfigs = {};
|
|
3392
|
+
this._projectPasswordPolicy = null;
|
|
3393
|
+
this._tenantPasswordPolicies = {};
|
|
3544
3394
|
this.lastNotifiedUid = void 0;
|
|
3545
3395
|
this.languageCode = null;
|
|
3546
3396
|
this.tenantId = null;
|
|
@@ -3717,6 +3567,39 @@
|
|
|
3717
3567
|
await this.assertedPersistence.setPersistence(_getInstance(persistence));
|
|
3718
3568
|
});
|
|
3719
3569
|
}
|
|
3570
|
+
_getRecaptchaConfig() {
|
|
3571
|
+
if (this.tenantId == null) {
|
|
3572
|
+
return this._agentRecaptchaConfig;
|
|
3573
|
+
} else {
|
|
3574
|
+
return this._tenantRecaptchaConfigs[this.tenantId];
|
|
3575
|
+
}
|
|
3576
|
+
}
|
|
3577
|
+
async validatePassword(password) {
|
|
3578
|
+
if (!this._getPasswordPolicyInternal()) {
|
|
3579
|
+
await this._updatePasswordPolicy();
|
|
3580
|
+
}
|
|
3581
|
+
const passwordPolicy = this._getPasswordPolicyInternal();
|
|
3582
|
+
if (passwordPolicy.schemaVersion !== this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION) {
|
|
3583
|
+
return Promise.reject(this._errorFactory.create("unsupported-password-policy-schema-version", {}));
|
|
3584
|
+
}
|
|
3585
|
+
return passwordPolicy.validatePassword(password);
|
|
3586
|
+
}
|
|
3587
|
+
_getPasswordPolicyInternal() {
|
|
3588
|
+
if (this.tenantId === null) {
|
|
3589
|
+
return this._projectPasswordPolicy;
|
|
3590
|
+
} else {
|
|
3591
|
+
return this._tenantPasswordPolicies[this.tenantId];
|
|
3592
|
+
}
|
|
3593
|
+
}
|
|
3594
|
+
async _updatePasswordPolicy() {
|
|
3595
|
+
const response = await _getPasswordPolicy(this);
|
|
3596
|
+
const passwordPolicy = new PasswordPolicyImpl(response);
|
|
3597
|
+
if (this.tenantId === null) {
|
|
3598
|
+
this._projectPasswordPolicy = passwordPolicy;
|
|
3599
|
+
} else {
|
|
3600
|
+
this._tenantPasswordPolicies[this.tenantId] = passwordPolicy;
|
|
3601
|
+
}
|
|
3602
|
+
}
|
|
3720
3603
|
_getPersistence() {
|
|
3721
3604
|
return this.assertedPersistence.persistence.type;
|
|
3722
3605
|
}
|
|
@@ -3732,6 +3615,18 @@
|
|
|
3732
3615
|
onIdTokenChanged(nextOrObserver, error, completed) {
|
|
3733
3616
|
return this.registerStateListener(this.idTokenSubscription, nextOrObserver, error, completed);
|
|
3734
3617
|
}
|
|
3618
|
+
authStateReady() {
|
|
3619
|
+
return new Promise((resolve, reject) => {
|
|
3620
|
+
if (this.currentUser) {
|
|
3621
|
+
resolve();
|
|
3622
|
+
} else {
|
|
3623
|
+
const unsubscribe = this.onAuthStateChanged(() => {
|
|
3624
|
+
unsubscribe();
|
|
3625
|
+
resolve();
|
|
3626
|
+
}, reject);
|
|
3627
|
+
}
|
|
3628
|
+
});
|
|
3629
|
+
}
|
|
3735
3630
|
toJSON() {
|
|
3736
3631
|
var _a;
|
|
3737
3632
|
return {
|
|
@@ -3826,6 +3721,7 @@
|
|
|
3826
3721
|
};
|
|
3827
3722
|
}
|
|
3828
3723
|
const cb = typeof nextOrObserver === "function" ? nextOrObserver : nextOrObserver.next.bind(nextOrObserver);
|
|
3724
|
+
let isUnsubscribed = false;
|
|
3829
3725
|
const promise = this._isInitialized ? Promise.resolve() : this._initializationPromise;
|
|
3830
3726
|
_assert(
|
|
3831
3727
|
promise,
|
|
@@ -3833,11 +3729,24 @@
|
|
|
3833
3729
|
"internal-error"
|
|
3834
3730
|
/* AuthErrorCode.INTERNAL_ERROR */
|
|
3835
3731
|
);
|
|
3836
|
-
promise.then(() =>
|
|
3732
|
+
promise.then(() => {
|
|
3733
|
+
if (isUnsubscribed) {
|
|
3734
|
+
return;
|
|
3735
|
+
}
|
|
3736
|
+
cb(this.currentUser);
|
|
3737
|
+
});
|
|
3837
3738
|
if (typeof nextOrObserver === "function") {
|
|
3838
|
-
|
|
3739
|
+
const unsubscribe = subscription.addObserver(nextOrObserver, error, completed);
|
|
3740
|
+
return () => {
|
|
3741
|
+
isUnsubscribed = true;
|
|
3742
|
+
unsubscribe();
|
|
3743
|
+
};
|
|
3839
3744
|
} else {
|
|
3840
|
-
|
|
3745
|
+
const unsubscribe = subscription.addObserver(nextOrObserver);
|
|
3746
|
+
return () => {
|
|
3747
|
+
isUnsubscribed = true;
|
|
3748
|
+
unsubscribe();
|
|
3749
|
+
};
|
|
3841
3750
|
}
|
|
3842
3751
|
}
|
|
3843
3752
|
/**
|
|
@@ -3906,28 +3815,235 @@
|
|
|
3906
3815
|
/* HttpHeader.X_FIREBASE_CLIENT */
|
|
3907
3816
|
] = heartbeatsHeader;
|
|
3908
3817
|
}
|
|
3909
|
-
|
|
3818
|
+
const appCheckToken = await this._getAppCheckToken();
|
|
3819
|
+
if (appCheckToken) {
|
|
3820
|
+
headers[
|
|
3821
|
+
"X-Firebase-AppCheck"
|
|
3822
|
+
/* HttpHeader.X_FIREBASE_APP_CHECK */
|
|
3823
|
+
] = appCheckToken;
|
|
3824
|
+
}
|
|
3825
|
+
return headers;
|
|
3826
|
+
}
|
|
3827
|
+
async _getAppCheckToken() {
|
|
3828
|
+
var _a;
|
|
3829
|
+
const appCheckTokenResult = await ((_a = this.appCheckServiceProvider.getImmediate({ optional: true })) === null || _a === void 0 ? void 0 : _a.getToken());
|
|
3830
|
+
if (appCheckTokenResult === null || appCheckTokenResult === void 0 ? void 0 : appCheckTokenResult.error) {
|
|
3831
|
+
_logWarn(`Error while retrieving App Check token: ${appCheckTokenResult.error}`);
|
|
3832
|
+
}
|
|
3833
|
+
return appCheckTokenResult === null || appCheckTokenResult === void 0 ? void 0 : appCheckTokenResult.token;
|
|
3834
|
+
}
|
|
3835
|
+
};
|
|
3836
|
+
function _castAuth(auth2) {
|
|
3837
|
+
return getModularInstance(auth2);
|
|
3838
|
+
}
|
|
3839
|
+
var Subscription = class {
|
|
3840
|
+
constructor(auth2) {
|
|
3841
|
+
this.auth = auth2;
|
|
3842
|
+
this.observer = null;
|
|
3843
|
+
this.addObserver = createSubscribe((observer) => this.observer = observer);
|
|
3844
|
+
}
|
|
3845
|
+
get next() {
|
|
3846
|
+
_assert(
|
|
3847
|
+
this.observer,
|
|
3848
|
+
this.auth,
|
|
3849
|
+
"internal-error"
|
|
3850
|
+
/* AuthErrorCode.INTERNAL_ERROR */
|
|
3851
|
+
);
|
|
3852
|
+
return this.observer.next.bind(this.observer);
|
|
3853
|
+
}
|
|
3854
|
+
};
|
|
3855
|
+
function getScriptParentElement() {
|
|
3856
|
+
var _a, _b;
|
|
3857
|
+
return (_b = (_a = document.getElementsByTagName("head")) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : document;
|
|
3858
|
+
}
|
|
3859
|
+
function _loadJS(url) {
|
|
3860
|
+
return new Promise((resolve, reject) => {
|
|
3861
|
+
const el = document.createElement("script");
|
|
3862
|
+
el.setAttribute("src", url);
|
|
3863
|
+
el.onload = resolve;
|
|
3864
|
+
el.onerror = (e2) => {
|
|
3865
|
+
const error = _createError(
|
|
3866
|
+
"internal-error"
|
|
3867
|
+
/* AuthErrorCode.INTERNAL_ERROR */
|
|
3868
|
+
);
|
|
3869
|
+
error.customData = e2;
|
|
3870
|
+
reject(error);
|
|
3871
|
+
};
|
|
3872
|
+
el.type = "text/javascript";
|
|
3873
|
+
el.charset = "UTF-8";
|
|
3874
|
+
getScriptParentElement().appendChild(el);
|
|
3875
|
+
});
|
|
3876
|
+
}
|
|
3877
|
+
function _generateCallbackName(prefix) {
|
|
3878
|
+
return `__${prefix}${Math.floor(Math.random() * 1e6)}`;
|
|
3879
|
+
}
|
|
3880
|
+
var RECAPTCHA_ENTERPRISE_URL = "https://www.google.com/recaptcha/enterprise.js?render=";
|
|
3881
|
+
var RECAPTCHA_ENTERPRISE_VERIFIER_TYPE = "recaptcha-enterprise";
|
|
3882
|
+
var FAKE_TOKEN = "NO_RECAPTCHA";
|
|
3883
|
+
var RecaptchaEnterpriseVerifier = class {
|
|
3884
|
+
/**
|
|
3885
|
+
*
|
|
3886
|
+
* @param authExtern - The corresponding Firebase {@link Auth} instance.
|
|
3887
|
+
*
|
|
3888
|
+
*/
|
|
3889
|
+
constructor(authExtern) {
|
|
3890
|
+
this.type = RECAPTCHA_ENTERPRISE_VERIFIER_TYPE;
|
|
3891
|
+
this.auth = _castAuth(authExtern);
|
|
3892
|
+
}
|
|
3893
|
+
/**
|
|
3894
|
+
* Executes the verification process.
|
|
3895
|
+
*
|
|
3896
|
+
* @returns A Promise for a token that can be used to assert the validity of a request.
|
|
3897
|
+
*/
|
|
3898
|
+
async verify(action = "verify", forceRefresh = false) {
|
|
3899
|
+
async function retrieveSiteKey(auth2) {
|
|
3900
|
+
if (!forceRefresh) {
|
|
3901
|
+
if (auth2.tenantId == null && auth2._agentRecaptchaConfig != null) {
|
|
3902
|
+
return auth2._agentRecaptchaConfig.siteKey;
|
|
3903
|
+
}
|
|
3904
|
+
if (auth2.tenantId != null && auth2._tenantRecaptchaConfigs[auth2.tenantId] !== void 0) {
|
|
3905
|
+
return auth2._tenantRecaptchaConfigs[auth2.tenantId].siteKey;
|
|
3906
|
+
}
|
|
3907
|
+
}
|
|
3908
|
+
return new Promise(async (resolve, reject) => {
|
|
3909
|
+
getRecaptchaConfig(auth2, {
|
|
3910
|
+
clientType: "CLIENT_TYPE_WEB",
|
|
3911
|
+
version: "RECAPTCHA_ENTERPRISE"
|
|
3912
|
+
/* RecaptchaVersion.ENTERPRISE */
|
|
3913
|
+
}).then((response) => {
|
|
3914
|
+
if (response.recaptchaKey === void 0) {
|
|
3915
|
+
reject(new Error("recaptcha Enterprise site key undefined"));
|
|
3916
|
+
} else {
|
|
3917
|
+
const config = new RecaptchaConfig(response);
|
|
3918
|
+
if (auth2.tenantId == null) {
|
|
3919
|
+
auth2._agentRecaptchaConfig = config;
|
|
3920
|
+
} else {
|
|
3921
|
+
auth2._tenantRecaptchaConfigs[auth2.tenantId] = config;
|
|
3922
|
+
}
|
|
3923
|
+
return resolve(config.siteKey);
|
|
3924
|
+
}
|
|
3925
|
+
}).catch((error) => {
|
|
3926
|
+
reject(error);
|
|
3927
|
+
});
|
|
3928
|
+
});
|
|
3929
|
+
}
|
|
3930
|
+
function retrieveRecaptchaToken(siteKey, resolve, reject) {
|
|
3931
|
+
const grecaptcha = window.grecaptcha;
|
|
3932
|
+
if (isEnterprise(grecaptcha)) {
|
|
3933
|
+
grecaptcha.enterprise.ready(() => {
|
|
3934
|
+
grecaptcha.enterprise.execute(siteKey, { action }).then((token) => {
|
|
3935
|
+
resolve(token);
|
|
3936
|
+
}).catch(() => {
|
|
3937
|
+
resolve(FAKE_TOKEN);
|
|
3938
|
+
});
|
|
3939
|
+
});
|
|
3940
|
+
} else {
|
|
3941
|
+
reject(Error("No reCAPTCHA enterprise script loaded."));
|
|
3942
|
+
}
|
|
3943
|
+
}
|
|
3944
|
+
return new Promise((resolve, reject) => {
|
|
3945
|
+
retrieveSiteKey(this.auth).then((siteKey) => {
|
|
3946
|
+
if (!forceRefresh && isEnterprise(window.grecaptcha)) {
|
|
3947
|
+
retrieveRecaptchaToken(siteKey, resolve, reject);
|
|
3948
|
+
} else {
|
|
3949
|
+
if (typeof window === "undefined") {
|
|
3950
|
+
reject(new Error("RecaptchaVerifier is only supported in browser"));
|
|
3951
|
+
return;
|
|
3952
|
+
}
|
|
3953
|
+
_loadJS(RECAPTCHA_ENTERPRISE_URL + siteKey).then(() => {
|
|
3954
|
+
retrieveRecaptchaToken(siteKey, resolve, reject);
|
|
3955
|
+
}).catch((error) => {
|
|
3956
|
+
reject(error);
|
|
3957
|
+
});
|
|
3958
|
+
}
|
|
3959
|
+
}).catch((error) => {
|
|
3960
|
+
reject(error);
|
|
3961
|
+
});
|
|
3962
|
+
});
|
|
3963
|
+
}
|
|
3964
|
+
};
|
|
3965
|
+
async function injectRecaptchaFields(auth2, request, action, captchaResp = false) {
|
|
3966
|
+
const verifier = new RecaptchaEnterpriseVerifier(auth2);
|
|
3967
|
+
let captchaResponse;
|
|
3968
|
+
try {
|
|
3969
|
+
captchaResponse = await verifier.verify(action);
|
|
3970
|
+
} catch (error) {
|
|
3971
|
+
captchaResponse = await verifier.verify(action, true);
|
|
3972
|
+
}
|
|
3973
|
+
const newRequest = Object.assign({}, request);
|
|
3974
|
+
if (!captchaResp) {
|
|
3975
|
+
Object.assign(newRequest, { captchaResponse });
|
|
3976
|
+
} else {
|
|
3977
|
+
Object.assign(newRequest, { "captchaResp": captchaResponse });
|
|
3978
|
+
}
|
|
3979
|
+
Object.assign(newRequest, {
|
|
3980
|
+
"clientType": "CLIENT_TYPE_WEB"
|
|
3981
|
+
/* RecaptchaClientType.WEB */
|
|
3982
|
+
});
|
|
3983
|
+
Object.assign(newRequest, {
|
|
3984
|
+
"recaptchaVersion": "RECAPTCHA_ENTERPRISE"
|
|
3985
|
+
/* RecaptchaVersion.ENTERPRISE */
|
|
3986
|
+
});
|
|
3987
|
+
return newRequest;
|
|
3988
|
+
}
|
|
3989
|
+
async function handleRecaptchaFlow(authInstance, request, actionName, actionMethod) {
|
|
3990
|
+
var _a;
|
|
3991
|
+
if ((_a = authInstance._getRecaptchaConfig()) === null || _a === void 0 ? void 0 : _a.isProviderEnabled(
|
|
3992
|
+
"EMAIL_PASSWORD_PROVIDER"
|
|
3993
|
+
/* RecaptchaProvider.EMAIL_PASSWORD_PROVIDER */
|
|
3994
|
+
)) {
|
|
3995
|
+
const requestWithRecaptcha = await injectRecaptchaFields(
|
|
3996
|
+
authInstance,
|
|
3997
|
+
request,
|
|
3998
|
+
actionName,
|
|
3999
|
+
actionName === "getOobCode"
|
|
4000
|
+
/* RecaptchaActionName.GET_OOB_CODE */
|
|
4001
|
+
);
|
|
4002
|
+
return actionMethod(authInstance, requestWithRecaptcha);
|
|
4003
|
+
} else {
|
|
4004
|
+
return actionMethod(authInstance, request).catch(async (error) => {
|
|
4005
|
+
if (error.code === `auth/${"missing-recaptcha-token"}`) {
|
|
4006
|
+
console.log(`${actionName} is protected by reCAPTCHA Enterprise for this project. Automatically triggering the reCAPTCHA flow and restarting the flow.`);
|
|
4007
|
+
const requestWithRecaptcha = await injectRecaptchaFields(
|
|
4008
|
+
authInstance,
|
|
4009
|
+
request,
|
|
4010
|
+
actionName,
|
|
4011
|
+
actionName === "getOobCode"
|
|
4012
|
+
/* RecaptchaActionName.GET_OOB_CODE */
|
|
4013
|
+
);
|
|
4014
|
+
return actionMethod(authInstance, requestWithRecaptcha);
|
|
4015
|
+
} else {
|
|
4016
|
+
return Promise.reject(error);
|
|
4017
|
+
}
|
|
4018
|
+
});
|
|
4019
|
+
}
|
|
4020
|
+
}
|
|
4021
|
+
function initializeAuth(app2, deps) {
|
|
4022
|
+
const provider = _getProvider(app2, "auth");
|
|
4023
|
+
if (provider.isInitialized()) {
|
|
4024
|
+
const auth3 = provider.getImmediate();
|
|
4025
|
+
const initialOptions = provider.getOptions();
|
|
4026
|
+
if (deepEqual(initialOptions, deps !== null && deps !== void 0 ? deps : {})) {
|
|
4027
|
+
return auth3;
|
|
4028
|
+
} else {
|
|
4029
|
+
_fail(
|
|
4030
|
+
auth3,
|
|
4031
|
+
"already-initialized"
|
|
4032
|
+
/* AuthErrorCode.ALREADY_INITIALIZED */
|
|
4033
|
+
);
|
|
4034
|
+
}
|
|
3910
4035
|
}
|
|
3911
|
-
|
|
3912
|
-
|
|
3913
|
-
return getModularInstance(auth2);
|
|
4036
|
+
const auth2 = provider.initialize({ options: deps });
|
|
4037
|
+
return auth2;
|
|
3914
4038
|
}
|
|
3915
|
-
|
|
3916
|
-
|
|
3917
|
-
|
|
3918
|
-
|
|
3919
|
-
|
|
3920
|
-
}
|
|
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);
|
|
4039
|
+
function _initializeAuthInstance(auth2, deps) {
|
|
4040
|
+
const persistence = (deps === null || deps === void 0 ? void 0 : deps.persistence) || [];
|
|
4041
|
+
const hierarchy = (Array.isArray(persistence) ? persistence : [persistence]).map(_getInstance);
|
|
4042
|
+
if (deps === null || deps === void 0 ? void 0 : deps.errorMap) {
|
|
4043
|
+
auth2._updateErrorMap(deps.errorMap);
|
|
3929
4044
|
}
|
|
3930
|
-
|
|
4045
|
+
auth2._initializeWithPersistence(hierarchy, deps === null || deps === void 0 ? void 0 : deps.popupRedirectResolver);
|
|
4046
|
+
}
|
|
3931
4047
|
function connectAuthEmulator(auth2, url, options) {
|
|
3932
4048
|
const authInternal = _castAuth(auth2);
|
|
3933
4049
|
_assert(
|
|
@@ -4109,11 +4225,14 @@
|
|
|
4109
4225
|
async _getIdTokenResponse(auth2) {
|
|
4110
4226
|
switch (this.signInMethod) {
|
|
4111
4227
|
case "password":
|
|
4112
|
-
|
|
4228
|
+
const request = {
|
|
4113
4229
|
returnSecureToken: true,
|
|
4114
4230
|
email: this._email,
|
|
4115
|
-
password: this._password
|
|
4116
|
-
|
|
4231
|
+
password: this._password,
|
|
4232
|
+
clientType: "CLIENT_TYPE_WEB"
|
|
4233
|
+
/* RecaptchaClientType.WEB */
|
|
4234
|
+
};
|
|
4235
|
+
return handleRecaptchaFlow(auth2, request, "signInWithPassword", signInWithPassword);
|
|
4117
4236
|
case "emailLink":
|
|
4118
4237
|
return signInWithEmailLink$1(auth2, {
|
|
4119
4238
|
email: this._email,
|
|
@@ -4940,6 +5059,12 @@
|
|
|
4940
5059
|
function finalizeEnrollPhoneMfa(auth2, request) {
|
|
4941
5060
|
return _performApiRequest(auth2, "POST", "/v2/accounts/mfaEnrollment:finalize", _addTidIfNecessary(auth2, request));
|
|
4942
5061
|
}
|
|
5062
|
+
function startEnrollTotpMfa(auth2, request) {
|
|
5063
|
+
return _performApiRequest(auth2, "POST", "/v2/accounts/mfaEnrollment:start", _addTidIfNecessary(auth2, request));
|
|
5064
|
+
}
|
|
5065
|
+
function finalizeEnrollTotpMfa(auth2, request) {
|
|
5066
|
+
return _performApiRequest(auth2, "POST", "/v2/accounts/mfaEnrollment:finalize", _addTidIfNecessary(auth2, request));
|
|
5067
|
+
}
|
|
4943
5068
|
var STORAGE_AVAILABLE_KEY = "__sak";
|
|
4944
5069
|
var BrowserPersistenceClass = class {
|
|
4945
5070
|
constructor(storageRetriever, type) {
|
|
@@ -5686,30 +5811,8 @@
|
|
|
5686
5811
|
function finalizeSignInPhoneMfa(auth2, request) {
|
|
5687
5812
|
return _performApiRequest(auth2, "POST", "/v2/accounts/mfaSignIn:finalize", _addTidIfNecessary(auth2, request));
|
|
5688
5813
|
}
|
|
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)}`;
|
|
5814
|
+
function finalizeSignInTotpMfa(auth2, request) {
|
|
5815
|
+
return _performApiRequest(auth2, "POST", "/v2/accounts/mfaSignIn:finalize", _addTidIfNecessary(auth2, request));
|
|
5713
5816
|
}
|
|
5714
5817
|
var _JSLOAD_CALLBACK = _generateCallbackName("rcb");
|
|
5715
5818
|
var NETWORK_TIMEOUT_DELAY = new Delay(3e4, 6e4);
|
|
@@ -6159,7 +6262,7 @@
|
|
|
6159
6262
|
/* AuthErrorCode.POPUP_CLOSED_BY_USER */
|
|
6160
6263
|
));
|
|
6161
6264
|
},
|
|
6162
|
-
|
|
6265
|
+
8e3
|
|
6163
6266
|
/* _Timeout.AUTH_EVENT */
|
|
6164
6267
|
);
|
|
6165
6268
|
return;
|
|
@@ -6601,7 +6704,8 @@
|
|
|
6601
6704
|
}
|
|
6602
6705
|
var WIDGET_PATH = "__/auth/handler";
|
|
6603
6706
|
var EMULATOR_WIDGET_PATH = "emulator/auth/handler";
|
|
6604
|
-
|
|
6707
|
+
var FIREBASE_APP_CHECK_FRAGMENT_ID = encodeURIComponent("fac");
|
|
6708
|
+
async function _getRedirectUrl(auth2, provider, authType, redirectUrl, eventId, additionalParams) {
|
|
6605
6709
|
_assert(
|
|
6606
6710
|
auth2.config.authDomain,
|
|
6607
6711
|
auth2,
|
|
@@ -6647,7 +6751,9 @@
|
|
|
6647
6751
|
delete paramsDict[key];
|
|
6648
6752
|
}
|
|
6649
6753
|
}
|
|
6650
|
-
|
|
6754
|
+
const appCheckToken = await auth2._getAppCheckToken();
|
|
6755
|
+
const appCheckTokenFragment = appCheckToken ? `#${FIREBASE_APP_CHECK_FRAGMENT_ID}=${encodeURIComponent(appCheckToken)}` : "";
|
|
6756
|
+
return `${getHandlerBase(auth2)}?${querystring(paramsDict).slice(1)}${appCheckTokenFragment}`;
|
|
6651
6757
|
}
|
|
6652
6758
|
function getHandlerBase({ config }) {
|
|
6653
6759
|
if (!config.emulator) {
|
|
@@ -6670,12 +6776,13 @@
|
|
|
6670
6776
|
async _openPopup(auth2, provider, authType, eventId) {
|
|
6671
6777
|
var _a;
|
|
6672
6778
|
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);
|
|
6779
|
+
const url = await _getRedirectUrl(auth2, provider, authType, _getCurrentUrl(), eventId);
|
|
6674
6780
|
return _open(auth2, url, _generateEventId());
|
|
6675
6781
|
}
|
|
6676
6782
|
async _openRedirect(auth2, provider, authType, eventId) {
|
|
6677
6783
|
await this._originValidation(auth2);
|
|
6678
|
-
|
|
6784
|
+
const url = await _getRedirectUrl(auth2, provider, authType, _getCurrentUrl(), eventId);
|
|
6785
|
+
_setWindowLocation(url);
|
|
6679
6786
|
return new Promise(() => {
|
|
6680
6787
|
});
|
|
6681
6788
|
}
|
|
@@ -6793,6 +6900,9 @@
|
|
|
6793
6900
|
/**
|
|
6794
6901
|
* Provides a {@link PhoneMultiFactorAssertion} to confirm ownership of the phone second factor.
|
|
6795
6902
|
*
|
|
6903
|
+
* @remarks
|
|
6904
|
+
* This method does not work in a Node.js environment.
|
|
6905
|
+
*
|
|
6796
6906
|
* @param phoneAuthCredential - A credential provided by {@link PhoneAuthProvider.credential}.
|
|
6797
6907
|
* @returns A {@link PhoneMultiFactorAssertion} which can be used with
|
|
6798
6908
|
* {@link MultiFactorResolver.resolveSignIn}
|
|
@@ -6801,184 +6911,612 @@
|
|
|
6801
6911
|
return PhoneMultiFactorAssertionImpl._fromCredential(credential);
|
|
6802
6912
|
}
|
|
6803
6913
|
};
|
|
6804
|
-
PhoneMultiFactorGenerator.FACTOR_ID = "phone";
|
|
6805
|
-
var
|
|
6806
|
-
|
|
6807
|
-
|
|
6808
|
-
|
|
6809
|
-
|
|
6810
|
-
|
|
6914
|
+
PhoneMultiFactorGenerator.FACTOR_ID = "phone";
|
|
6915
|
+
var TotpMultiFactorGenerator = class {
|
|
6916
|
+
/**
|
|
6917
|
+
* Provides a {@link TotpMultiFactorAssertion} to confirm ownership of
|
|
6918
|
+
* the TOTP (time-based one-time password) second factor.
|
|
6919
|
+
* This assertion is used to complete enrollment in TOTP second factor.
|
|
6920
|
+
*
|
|
6921
|
+
* @param secret A {@link TotpSecret} containing the shared secret key and other TOTP parameters.
|
|
6922
|
+
* @param oneTimePassword One-time password from TOTP App.
|
|
6923
|
+
* @returns A {@link TotpMultiFactorAssertion} which can be used with
|
|
6924
|
+
* {@link MultiFactorUser.enroll}.
|
|
6925
|
+
*/
|
|
6926
|
+
static assertionForEnrollment(secret, oneTimePassword) {
|
|
6927
|
+
return TotpMultiFactorAssertionImpl._fromSecret(secret, oneTimePassword);
|
|
6928
|
+
}
|
|
6929
|
+
/**
|
|
6930
|
+
* Provides a {@link TotpMultiFactorAssertion} to confirm ownership of the TOTP second factor.
|
|
6931
|
+
* This assertion is used to complete signIn with TOTP as the second factor.
|
|
6932
|
+
*
|
|
6933
|
+
* @param enrollmentId identifies the enrolled TOTP second factor.
|
|
6934
|
+
* @param oneTimePassword One-time password from TOTP App.
|
|
6935
|
+
* @returns A {@link TotpMultiFactorAssertion} which can be used with
|
|
6936
|
+
* {@link MultiFactorResolver.resolveSignIn}.
|
|
6937
|
+
*/
|
|
6938
|
+
static assertionForSignIn(enrollmentId, oneTimePassword) {
|
|
6939
|
+
return TotpMultiFactorAssertionImpl._fromEnrollmentId(enrollmentId, oneTimePassword);
|
|
6940
|
+
}
|
|
6941
|
+
/**
|
|
6942
|
+
* Returns a promise to {@link TotpSecret} which contains the TOTP shared secret key and other parameters.
|
|
6943
|
+
* Creates a TOTP secret as part of enrolling a TOTP second factor.
|
|
6944
|
+
* Used for generating a QR code URL or inputting into a TOTP app.
|
|
6945
|
+
* This method uses the auth instance corresponding to the user in the multiFactorSession.
|
|
6946
|
+
*
|
|
6947
|
+
* @param session The {@link MultiFactorSession} that the user is part of.
|
|
6948
|
+
* @returns A promise to {@link TotpSecret}.
|
|
6949
|
+
*/
|
|
6950
|
+
static async generateSecret(session) {
|
|
6951
|
+
var _a;
|
|
6952
|
+
const mfaSession = session;
|
|
6953
|
+
_assert(
|
|
6954
|
+
typeof ((_a = mfaSession.user) === null || _a === void 0 ? void 0 : _a.auth) !== "undefined",
|
|
6955
|
+
"internal-error"
|
|
6956
|
+
/* AuthErrorCode.INTERNAL_ERROR */
|
|
6957
|
+
);
|
|
6958
|
+
const response = await startEnrollTotpMfa(mfaSession.user.auth, {
|
|
6959
|
+
idToken: mfaSession.credential,
|
|
6960
|
+
totpEnrollmentInfo: {}
|
|
6961
|
+
});
|
|
6962
|
+
return TotpSecret._fromStartTotpMfaEnrollmentResponse(response, mfaSession.user.auth);
|
|
6963
|
+
}
|
|
6964
|
+
};
|
|
6965
|
+
TotpMultiFactorGenerator.FACTOR_ID = "totp";
|
|
6966
|
+
var TotpMultiFactorAssertionImpl = class _TotpMultiFactorAssertionImpl extends MultiFactorAssertionImpl {
|
|
6967
|
+
constructor(otp, enrollmentId, secret) {
|
|
6968
|
+
super(
|
|
6969
|
+
"totp"
|
|
6970
|
+
/* FactorId.TOTP */
|
|
6971
|
+
);
|
|
6972
|
+
this.otp = otp;
|
|
6973
|
+
this.enrollmentId = enrollmentId;
|
|
6974
|
+
this.secret = secret;
|
|
6975
|
+
}
|
|
6976
|
+
/** @internal */
|
|
6977
|
+
static _fromSecret(secret, otp) {
|
|
6978
|
+
return new _TotpMultiFactorAssertionImpl(otp, void 0, secret);
|
|
6979
|
+
}
|
|
6980
|
+
/** @internal */
|
|
6981
|
+
static _fromEnrollmentId(enrollmentId, otp) {
|
|
6982
|
+
return new _TotpMultiFactorAssertionImpl(otp, enrollmentId);
|
|
6983
|
+
}
|
|
6984
|
+
/** @internal */
|
|
6985
|
+
async _finalizeEnroll(auth2, idToken, displayName) {
|
|
6986
|
+
_assert(
|
|
6987
|
+
typeof this.secret !== "undefined",
|
|
6988
|
+
auth2,
|
|
6989
|
+
"argument-error"
|
|
6990
|
+
/* AuthErrorCode.ARGUMENT_ERROR */
|
|
6991
|
+
);
|
|
6992
|
+
return finalizeEnrollTotpMfa(auth2, {
|
|
6993
|
+
idToken,
|
|
6994
|
+
displayName,
|
|
6995
|
+
totpVerificationInfo: this.secret._makeTotpVerificationInfo(this.otp)
|
|
6996
|
+
});
|
|
6997
|
+
}
|
|
6998
|
+
/** @internal */
|
|
6999
|
+
async _finalizeSignIn(auth2, mfaPendingCredential) {
|
|
7000
|
+
_assert(
|
|
7001
|
+
this.enrollmentId !== void 0 && this.otp !== void 0,
|
|
7002
|
+
auth2,
|
|
7003
|
+
"argument-error"
|
|
7004
|
+
/* AuthErrorCode.ARGUMENT_ERROR */
|
|
7005
|
+
);
|
|
7006
|
+
const totpVerificationInfo = { verificationCode: this.otp };
|
|
7007
|
+
return finalizeSignInTotpMfa(auth2, {
|
|
7008
|
+
mfaPendingCredential,
|
|
7009
|
+
mfaEnrollmentId: this.enrollmentId,
|
|
7010
|
+
totpVerificationInfo
|
|
7011
|
+
});
|
|
7012
|
+
}
|
|
7013
|
+
};
|
|
7014
|
+
var TotpSecret = class _TotpSecret {
|
|
7015
|
+
// The public members are declared outside the constructor so the docs can be generated.
|
|
7016
|
+
constructor(secretKey, hashingAlgorithm, codeLength, codeIntervalSeconds, enrollmentCompletionDeadline, sessionInfo, auth2) {
|
|
7017
|
+
this.sessionInfo = sessionInfo;
|
|
7018
|
+
this.auth = auth2;
|
|
7019
|
+
this.secretKey = secretKey;
|
|
7020
|
+
this.hashingAlgorithm = hashingAlgorithm;
|
|
7021
|
+
this.codeLength = codeLength;
|
|
7022
|
+
this.codeIntervalSeconds = codeIntervalSeconds;
|
|
7023
|
+
this.enrollmentCompletionDeadline = enrollmentCompletionDeadline;
|
|
7024
|
+
}
|
|
7025
|
+
/** @internal */
|
|
7026
|
+
static _fromStartTotpMfaEnrollmentResponse(response, auth2) {
|
|
7027
|
+
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);
|
|
7028
|
+
}
|
|
7029
|
+
/** @internal */
|
|
7030
|
+
_makeTotpVerificationInfo(otp) {
|
|
7031
|
+
return { sessionInfo: this.sessionInfo, verificationCode: otp };
|
|
7032
|
+
}
|
|
7033
|
+
/**
|
|
7034
|
+
* Returns a QR code URL as described in
|
|
7035
|
+
* https://github.com/google/google-authenticator/wiki/Key-Uri-Format
|
|
7036
|
+
* This can be displayed to the user as a QR code to be scanned into a TOTP app like Google Authenticator.
|
|
7037
|
+
* If the optional parameters are unspecified, an accountName of <userEmail> and issuer of <firebaseAppName> are used.
|
|
7038
|
+
*
|
|
7039
|
+
* @param accountName the name of the account/app along with a user identifier.
|
|
7040
|
+
* @param issuer issuer of the TOTP (likely the app name).
|
|
7041
|
+
* @returns A QR code URL string.
|
|
7042
|
+
*/
|
|
7043
|
+
generateQrCodeUrl(accountName, issuer) {
|
|
7044
|
+
var _a;
|
|
7045
|
+
let useDefaults = false;
|
|
7046
|
+
if (_isEmptyString(accountName) || _isEmptyString(issuer)) {
|
|
7047
|
+
useDefaults = true;
|
|
7048
|
+
}
|
|
7049
|
+
if (useDefaults) {
|
|
7050
|
+
if (_isEmptyString(accountName)) {
|
|
7051
|
+
accountName = ((_a = this.auth.currentUser) === null || _a === void 0 ? void 0 : _a.email) || "unknownuser";
|
|
7052
|
+
}
|
|
7053
|
+
if (_isEmptyString(issuer)) {
|
|
7054
|
+
issuer = this.auth.name;
|
|
7055
|
+
}
|
|
7056
|
+
}
|
|
7057
|
+
return `otpauth://totp/${issuer}:${accountName}?secret=${this.secretKey}&issuer=${issuer}&algorithm=${this.hashingAlgorithm}&digits=${this.codeLength}`;
|
|
7058
|
+
}
|
|
7059
|
+
};
|
|
7060
|
+
function _isEmptyString(input) {
|
|
7061
|
+
return typeof input === "undefined" || (input === null || input === void 0 ? void 0 : input.length) === 0;
|
|
7062
|
+
}
|
|
7063
|
+
var name3 = "@firebase/auth";
|
|
7064
|
+
var version3 = "1.3.2";
|
|
7065
|
+
var AuthInterop = class {
|
|
7066
|
+
constructor(auth2) {
|
|
7067
|
+
this.auth = auth2;
|
|
7068
|
+
this.internalListeners = /* @__PURE__ */ new Map();
|
|
7069
|
+
}
|
|
7070
|
+
getUid() {
|
|
7071
|
+
var _a;
|
|
7072
|
+
this.assertAuthConfigured();
|
|
7073
|
+
return ((_a = this.auth.currentUser) === null || _a === void 0 ? void 0 : _a.uid) || null;
|
|
7074
|
+
}
|
|
7075
|
+
async getToken(forceRefresh) {
|
|
7076
|
+
this.assertAuthConfigured();
|
|
7077
|
+
await this.auth._initializationPromise;
|
|
7078
|
+
if (!this.auth.currentUser) {
|
|
7079
|
+
return null;
|
|
7080
|
+
}
|
|
7081
|
+
const accessToken = await this.auth.currentUser.getIdToken(forceRefresh);
|
|
7082
|
+
return { accessToken };
|
|
7083
|
+
}
|
|
7084
|
+
addAuthTokenListener(listener) {
|
|
7085
|
+
this.assertAuthConfigured();
|
|
7086
|
+
if (this.internalListeners.has(listener)) {
|
|
7087
|
+
return;
|
|
7088
|
+
}
|
|
7089
|
+
const unsubscribe = this.auth.onIdTokenChanged((user) => {
|
|
7090
|
+
listener((user === null || user === void 0 ? void 0 : user.stsTokenManager.accessToken) || null);
|
|
7091
|
+
});
|
|
7092
|
+
this.internalListeners.set(listener, unsubscribe);
|
|
7093
|
+
this.updateProactiveRefresh();
|
|
7094
|
+
}
|
|
7095
|
+
removeAuthTokenListener(listener) {
|
|
7096
|
+
this.assertAuthConfigured();
|
|
7097
|
+
const unsubscribe = this.internalListeners.get(listener);
|
|
7098
|
+
if (!unsubscribe) {
|
|
7099
|
+
return;
|
|
7100
|
+
}
|
|
7101
|
+
this.internalListeners.delete(listener);
|
|
7102
|
+
unsubscribe();
|
|
7103
|
+
this.updateProactiveRefresh();
|
|
7104
|
+
}
|
|
7105
|
+
assertAuthConfigured() {
|
|
7106
|
+
_assert(
|
|
7107
|
+
this.auth._initializationPromise,
|
|
7108
|
+
"dependent-sdk-initialized-before-auth"
|
|
7109
|
+
/* AuthErrorCode.DEPENDENT_SDK_INIT_BEFORE_AUTH */
|
|
7110
|
+
);
|
|
7111
|
+
}
|
|
7112
|
+
updateProactiveRefresh() {
|
|
7113
|
+
if (this.internalListeners.size > 0) {
|
|
7114
|
+
this.auth._startProactiveRefresh();
|
|
7115
|
+
} else {
|
|
7116
|
+
this.auth._stopProactiveRefresh();
|
|
7117
|
+
}
|
|
7118
|
+
}
|
|
7119
|
+
};
|
|
7120
|
+
function getVersionForPlatform(clientPlatform) {
|
|
7121
|
+
switch (clientPlatform) {
|
|
7122
|
+
case "Node":
|
|
7123
|
+
return "node";
|
|
7124
|
+
case "ReactNative":
|
|
7125
|
+
return "rn";
|
|
7126
|
+
case "Worker":
|
|
7127
|
+
return "webworker";
|
|
7128
|
+
case "Cordova":
|
|
7129
|
+
return "cordova";
|
|
7130
|
+
default:
|
|
7131
|
+
return void 0;
|
|
7132
|
+
}
|
|
7133
|
+
}
|
|
7134
|
+
function registerAuth(clientPlatform) {
|
|
7135
|
+
_registerComponent(new Component(
|
|
7136
|
+
"auth",
|
|
7137
|
+
(container, { options: deps }) => {
|
|
7138
|
+
const app2 = container.getProvider("app").getImmediate();
|
|
7139
|
+
const heartbeatServiceProvider = container.getProvider("heartbeat");
|
|
7140
|
+
const appCheckServiceProvider = container.getProvider("app-check-internal");
|
|
7141
|
+
const { apiKey, authDomain } = app2.options;
|
|
7142
|
+
_assert(apiKey && !apiKey.includes(":"), "invalid-api-key", { appName: app2.name });
|
|
7143
|
+
const config = {
|
|
7144
|
+
apiKey,
|
|
7145
|
+
authDomain,
|
|
7146
|
+
clientPlatform,
|
|
7147
|
+
apiHost: "identitytoolkit.googleapis.com",
|
|
7148
|
+
tokenApiHost: "securetoken.googleapis.com",
|
|
7149
|
+
apiScheme: "https",
|
|
7150
|
+
sdkClientVersion: _getClientVersion(clientPlatform)
|
|
7151
|
+
};
|
|
7152
|
+
const authInstance = new AuthImpl(app2, heartbeatServiceProvider, appCheckServiceProvider, config);
|
|
7153
|
+
_initializeAuthInstance(authInstance, deps);
|
|
7154
|
+
return authInstance;
|
|
7155
|
+
},
|
|
7156
|
+
"PUBLIC"
|
|
7157
|
+
/* ComponentType.PUBLIC */
|
|
7158
|
+
).setInstantiationMode(
|
|
7159
|
+
"EXPLICIT"
|
|
7160
|
+
/* InstantiationMode.EXPLICIT */
|
|
7161
|
+
).setInstanceCreatedCallback((container, _instanceIdentifier, _instance) => {
|
|
7162
|
+
const authInternalProvider = container.getProvider(
|
|
7163
|
+
"auth-internal"
|
|
7164
|
+
/* _ComponentName.AUTH_INTERNAL */
|
|
7165
|
+
);
|
|
7166
|
+
authInternalProvider.initialize();
|
|
7167
|
+
}));
|
|
7168
|
+
_registerComponent(new Component(
|
|
7169
|
+
"auth-internal",
|
|
7170
|
+
(container) => {
|
|
7171
|
+
const auth2 = _castAuth(container.getProvider(
|
|
7172
|
+
"auth"
|
|
7173
|
+
/* _ComponentName.AUTH */
|
|
7174
|
+
).getImmediate());
|
|
7175
|
+
return ((auth3) => new AuthInterop(auth3))(auth2);
|
|
7176
|
+
},
|
|
7177
|
+
"PRIVATE"
|
|
7178
|
+
/* ComponentType.PRIVATE */
|
|
7179
|
+
).setInstantiationMode(
|
|
7180
|
+
"EXPLICIT"
|
|
7181
|
+
/* InstantiationMode.EXPLICIT */
|
|
7182
|
+
));
|
|
7183
|
+
registerVersion(name3, version3, getVersionForPlatform(clientPlatform));
|
|
7184
|
+
registerVersion(name3, version3, "esm2017");
|
|
7185
|
+
}
|
|
7186
|
+
var DEFAULT_ID_TOKEN_MAX_AGE = 5 * 60;
|
|
7187
|
+
var authIdTokenMaxAge = getExperimentalSetting("authIdTokenMaxAge") || DEFAULT_ID_TOKEN_MAX_AGE;
|
|
7188
|
+
var lastPostedIdToken = null;
|
|
7189
|
+
var mintCookieFactory = (url) => async (user) => {
|
|
7190
|
+
const idTokenResult = user && await user.getIdTokenResult();
|
|
7191
|
+
const idTokenAge = idTokenResult && ((/* @__PURE__ */ new Date()).getTime() - Date.parse(idTokenResult.issuedAtTime)) / 1e3;
|
|
7192
|
+
if (idTokenAge && idTokenAge > authIdTokenMaxAge) {
|
|
7193
|
+
return;
|
|
7194
|
+
}
|
|
7195
|
+
const idToken = idTokenResult === null || idTokenResult === void 0 ? void 0 : idTokenResult.token;
|
|
7196
|
+
if (lastPostedIdToken === idToken) {
|
|
7197
|
+
return;
|
|
7198
|
+
}
|
|
7199
|
+
lastPostedIdToken = idToken;
|
|
7200
|
+
await fetch(url, {
|
|
7201
|
+
method: idToken ? "POST" : "DELETE",
|
|
7202
|
+
headers: idToken ? {
|
|
7203
|
+
"Authorization": `Bearer ${idToken}`
|
|
7204
|
+
} : {}
|
|
7205
|
+
});
|
|
7206
|
+
};
|
|
7207
|
+
function getAuth(app2 = getApp()) {
|
|
7208
|
+
const provider = _getProvider(app2, "auth");
|
|
7209
|
+
if (provider.isInitialized()) {
|
|
7210
|
+
return provider.getImmediate();
|
|
6811
7211
|
}
|
|
6812
|
-
|
|
6813
|
-
|
|
6814
|
-
|
|
6815
|
-
|
|
7212
|
+
const auth2 = initializeAuth(app2, {
|
|
7213
|
+
popupRedirectResolver: browserPopupRedirectResolver,
|
|
7214
|
+
persistence: [
|
|
7215
|
+
indexedDBLocalPersistence,
|
|
7216
|
+
browserLocalPersistence,
|
|
7217
|
+
browserSessionPersistence
|
|
7218
|
+
]
|
|
7219
|
+
});
|
|
7220
|
+
const authTokenSyncUrl = getExperimentalSetting("authTokenSyncURL");
|
|
7221
|
+
if (authTokenSyncUrl) {
|
|
7222
|
+
const mintCookie = mintCookieFactory(authTokenSyncUrl);
|
|
7223
|
+
beforeAuthStateChanged(auth2, mintCookie, () => mintCookie(auth2.currentUser));
|
|
7224
|
+
onIdTokenChanged(auth2, (user) => mintCookie(user));
|
|
6816
7225
|
}
|
|
6817
|
-
|
|
6818
|
-
|
|
6819
|
-
|
|
6820
|
-
if (!this.auth.currentUser) {
|
|
6821
|
-
return null;
|
|
6822
|
-
}
|
|
6823
|
-
const accessToken = await this.auth.currentUser.getIdToken(forceRefresh);
|
|
6824
|
-
return { accessToken };
|
|
7226
|
+
const authEmulatorHost = getDefaultEmulatorHost("auth");
|
|
7227
|
+
if (authEmulatorHost) {
|
|
7228
|
+
connectAuthEmulator(auth2, `http://${authEmulatorHost}`);
|
|
6825
7229
|
}
|
|
6826
|
-
|
|
6827
|
-
|
|
6828
|
-
|
|
6829
|
-
|
|
6830
|
-
|
|
6831
|
-
|
|
6832
|
-
|
|
6833
|
-
|
|
6834
|
-
|
|
6835
|
-
|
|
7230
|
+
return auth2;
|
|
7231
|
+
}
|
|
7232
|
+
registerAuth(
|
|
7233
|
+
"Browser"
|
|
7234
|
+
/* ClientPlatform.BROWSER */
|
|
7235
|
+
);
|
|
7236
|
+
|
|
7237
|
+
// ../../node_modules/.pnpm/preact@10.11.0/node_modules/preact/dist/preact.module.js
|
|
7238
|
+
var n;
|
|
7239
|
+
var l;
|
|
7240
|
+
var u;
|
|
7241
|
+
var i;
|
|
7242
|
+
var t;
|
|
7243
|
+
var o;
|
|
7244
|
+
var r;
|
|
7245
|
+
var f = {};
|
|
7246
|
+
var e = [];
|
|
7247
|
+
var c = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;
|
|
7248
|
+
function s(n2, l2) {
|
|
7249
|
+
for (var u2 in l2)
|
|
7250
|
+
n2[u2] = l2[u2];
|
|
7251
|
+
return n2;
|
|
7252
|
+
}
|
|
7253
|
+
function a(n2) {
|
|
7254
|
+
var l2 = n2.parentNode;
|
|
7255
|
+
l2 && l2.removeChild(n2);
|
|
7256
|
+
}
|
|
7257
|
+
function h(l2, u2, i2) {
|
|
7258
|
+
var t2, o3, r2, f2 = {};
|
|
7259
|
+
for (r2 in u2)
|
|
7260
|
+
"key" == r2 ? t2 = u2[r2] : "ref" == r2 ? o3 = u2[r2] : f2[r2] = u2[r2];
|
|
7261
|
+
if (arguments.length > 2 && (f2.children = arguments.length > 3 ? n.call(arguments, 2) : i2), "function" == typeof l2 && null != l2.defaultProps)
|
|
7262
|
+
for (r2 in l2.defaultProps)
|
|
7263
|
+
void 0 === f2[r2] && (f2[r2] = l2.defaultProps[r2]);
|
|
7264
|
+
return v(l2, f2, t2, o3, null);
|
|
7265
|
+
}
|
|
7266
|
+
function v(n2, i2, t2, o3, r2) {
|
|
7267
|
+
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 };
|
|
7268
|
+
return null == r2 && null != l.vnode && l.vnode(f2), f2;
|
|
7269
|
+
}
|
|
7270
|
+
function p(n2) {
|
|
7271
|
+
return n2.children;
|
|
7272
|
+
}
|
|
7273
|
+
function d(n2, l2) {
|
|
7274
|
+
this.props = n2, this.context = l2;
|
|
7275
|
+
}
|
|
7276
|
+
function _(n2, l2) {
|
|
7277
|
+
if (null == l2)
|
|
7278
|
+
return n2.__ ? _(n2.__, n2.__.__k.indexOf(n2) + 1) : null;
|
|
7279
|
+
for (var u2; l2 < n2.__k.length; l2++)
|
|
7280
|
+
if (null != (u2 = n2.__k[l2]) && null != u2.__e)
|
|
7281
|
+
return u2.__e;
|
|
7282
|
+
return "function" == typeof n2.type ? _(n2) : null;
|
|
7283
|
+
}
|
|
7284
|
+
function k(n2) {
|
|
7285
|
+
var l2, u2;
|
|
7286
|
+
if (null != (n2 = n2.__) && null != n2.__c) {
|
|
7287
|
+
for (n2.__e = n2.__c.base = null, l2 = 0; l2 < n2.__k.length; l2++)
|
|
7288
|
+
if (null != (u2 = n2.__k[l2]) && null != u2.__e) {
|
|
7289
|
+
n2.__e = n2.__c.base = u2.__e;
|
|
7290
|
+
break;
|
|
7291
|
+
}
|
|
7292
|
+
return k(n2);
|
|
6836
7293
|
}
|
|
6837
|
-
|
|
6838
|
-
|
|
6839
|
-
|
|
6840
|
-
|
|
6841
|
-
|
|
7294
|
+
}
|
|
7295
|
+
function b(n2) {
|
|
7296
|
+
(!n2.__d && (n2.__d = true) && t.push(n2) && !g.__r++ || o !== l.debounceRendering) && ((o = l.debounceRendering) || setTimeout)(g);
|
|
7297
|
+
}
|
|
7298
|
+
function g() {
|
|
7299
|
+
for (var n2; g.__r = t.length; )
|
|
7300
|
+
n2 = t.sort(function(n3, l2) {
|
|
7301
|
+
return n3.__v.__b - l2.__v.__b;
|
|
7302
|
+
}), t = [], n2.some(function(n3) {
|
|
7303
|
+
var l2, u2, i2, t2, o3, r2;
|
|
7304
|
+
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)));
|
|
7305
|
+
});
|
|
7306
|
+
}
|
|
7307
|
+
function w(n2, l2, u2, i2, t2, o3, r2, c2, s2, a2) {
|
|
7308
|
+
var h2, y, d2, k2, b2, g2, w2, x = i2 && i2.__k || e, C2 = x.length;
|
|
7309
|
+
for (u2.__k = [], h2 = 0; h2 < l2.length; h2++)
|
|
7310
|
+
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)) {
|
|
7311
|
+
if (k2.__ = u2, k2.__b = u2.__b + 1, null === (d2 = x[h2]) || d2 && k2.key == d2.key && k2.type === d2.type)
|
|
7312
|
+
x[h2] = void 0;
|
|
7313
|
+
else
|
|
7314
|
+
for (y = 0; y < C2; y++) {
|
|
7315
|
+
if ((d2 = x[y]) && k2.key == d2.key && k2.type === d2.type) {
|
|
7316
|
+
x[y] = void 0;
|
|
7317
|
+
break;
|
|
7318
|
+
}
|
|
7319
|
+
d2 = null;
|
|
7320
|
+
}
|
|
7321
|
+
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
7322
|
}
|
|
6843
|
-
|
|
6844
|
-
|
|
6845
|
-
|
|
6846
|
-
|
|
6847
|
-
|
|
6848
|
-
|
|
6849
|
-
|
|
6850
|
-
|
|
6851
|
-
|
|
6852
|
-
|
|
6853
|
-
|
|
6854
|
-
|
|
6855
|
-
|
|
6856
|
-
|
|
6857
|
-
|
|
6858
|
-
|
|
7323
|
+
for (u2.__e = g2, h2 = C2; h2--; )
|
|
7324
|
+
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]));
|
|
7325
|
+
if (w2)
|
|
7326
|
+
for (h2 = 0; h2 < w2.length; h2++)
|
|
7327
|
+
M(w2[h2], w2[++h2], w2[++h2]);
|
|
7328
|
+
}
|
|
7329
|
+
function m(n2, l2, u2) {
|
|
7330
|
+
for (var i2, t2 = n2.__k, o3 = 0; t2 && o3 < t2.length; o3++)
|
|
7331
|
+
(i2 = t2[o3]) && (i2.__ = n2, l2 = "function" == typeof i2.type ? m(i2, l2, u2) : A(u2, i2, i2, t2, i2.__e, l2));
|
|
7332
|
+
return l2;
|
|
7333
|
+
}
|
|
7334
|
+
function A(n2, l2, u2, i2, t2, o3) {
|
|
7335
|
+
var r2, f2, e2;
|
|
7336
|
+
if (void 0 !== l2.__d)
|
|
7337
|
+
r2 = l2.__d, l2.__d = void 0;
|
|
7338
|
+
else if (null == u2 || t2 != o3 || null == t2.parentNode)
|
|
7339
|
+
n:
|
|
7340
|
+
if (null == o3 || o3.parentNode !== n2)
|
|
7341
|
+
n2.appendChild(t2), r2 = null;
|
|
7342
|
+
else {
|
|
7343
|
+
for (f2 = o3, e2 = 0; (f2 = f2.nextSibling) && e2 < i2.length; e2 += 2)
|
|
7344
|
+
if (f2 == t2)
|
|
7345
|
+
break n;
|
|
7346
|
+
n2.insertBefore(t2, o3), r2 = o3;
|
|
7347
|
+
}
|
|
7348
|
+
return void 0 !== r2 ? r2 : t2.nextSibling;
|
|
7349
|
+
}
|
|
7350
|
+
function C(n2, l2, u2, i2, t2) {
|
|
7351
|
+
var o3;
|
|
7352
|
+
for (o3 in u2)
|
|
7353
|
+
"children" === o3 || "key" === o3 || o3 in l2 || H(n2, o3, null, u2[o3], i2);
|
|
7354
|
+
for (o3 in l2)
|
|
7355
|
+
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);
|
|
7356
|
+
}
|
|
7357
|
+
function $(n2, l2, u2) {
|
|
7358
|
+
"-" === l2[0] ? n2.setProperty(l2, u2) : n2[l2] = null == u2 ? "" : "number" != typeof u2 || c.test(l2) ? u2 : u2 + "px";
|
|
7359
|
+
}
|
|
7360
|
+
function H(n2, l2, u2, i2, t2) {
|
|
7361
|
+
var o3;
|
|
7362
|
+
n:
|
|
7363
|
+
if ("style" === l2)
|
|
7364
|
+
if ("string" == typeof u2)
|
|
7365
|
+
n2.style.cssText = u2;
|
|
7366
|
+
else {
|
|
7367
|
+
if ("string" == typeof i2 && (n2.style.cssText = i2 = ""), i2)
|
|
7368
|
+
for (l2 in i2)
|
|
7369
|
+
u2 && l2 in u2 || $(n2.style, l2, "");
|
|
7370
|
+
if (u2)
|
|
7371
|
+
for (l2 in u2)
|
|
7372
|
+
i2 && u2[l2] === i2[l2] || $(n2.style, l2, u2[l2]);
|
|
7373
|
+
}
|
|
7374
|
+
else if ("o" === l2[0] && "n" === l2[1])
|
|
7375
|
+
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);
|
|
7376
|
+
else if ("dangerouslySetInnerHTML" !== l2) {
|
|
7377
|
+
if (t2)
|
|
7378
|
+
l2 = l2.replace(/xlink(H|:h)/, "h").replace(/sName$/, "s");
|
|
7379
|
+
else if ("href" !== l2 && "list" !== l2 && "form" !== l2 && "tabIndex" !== l2 && "download" !== l2 && l2 in n2)
|
|
7380
|
+
try {
|
|
7381
|
+
n2[l2] = null == u2 ? "" : u2;
|
|
7382
|
+
break n;
|
|
7383
|
+
} catch (n3) {
|
|
7384
|
+
}
|
|
7385
|
+
"function" == typeof u2 || (null != u2 && (false !== u2 || "a" === l2[0] && "r" === l2[1]) ? n2.setAttribute(l2, u2) : n2.removeAttribute(l2));
|
|
6859
7386
|
}
|
|
6860
|
-
|
|
6861
|
-
|
|
6862
|
-
|
|
6863
|
-
|
|
6864
|
-
|
|
6865
|
-
|
|
6866
|
-
|
|
6867
|
-
|
|
6868
|
-
|
|
6869
|
-
|
|
6870
|
-
|
|
6871
|
-
|
|
6872
|
-
|
|
6873
|
-
|
|
7387
|
+
}
|
|
7388
|
+
function I(n2) {
|
|
7389
|
+
this.l[n2.type + false](l.event ? l.event(n2) : n2);
|
|
7390
|
+
}
|
|
7391
|
+
function T(n2) {
|
|
7392
|
+
this.l[n2.type + true](l.event ? l.event(n2) : n2);
|
|
7393
|
+
}
|
|
7394
|
+
function j(n2, u2, i2, t2, o3, r2, f2, e2, c2) {
|
|
7395
|
+
var a2, h2, v2, y, _3, k2, b2, g2, m2, x, A2, C2, $2, H2 = u2.type;
|
|
7396
|
+
if (void 0 !== u2.constructor)
|
|
7397
|
+
return null;
|
|
7398
|
+
null != i2.__h && (c2 = i2.__h, e2 = u2.__e = i2.__e, u2.__h = null, r2 = [e2]), (a2 = l.__b) && a2(u2);
|
|
7399
|
+
try {
|
|
7400
|
+
n:
|
|
7401
|
+
if ("function" == typeof H2) {
|
|
7402
|
+
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)
|
|
7403
|
+
null == H2.getDerivedStateFromProps && null != h2.componentWillMount && h2.componentWillMount(), null != h2.componentDidMount && h2.__h.push(h2.componentDidMount);
|
|
7404
|
+
else {
|
|
7405
|
+
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) {
|
|
7406
|
+
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) {
|
|
7407
|
+
n3 && (n3.__ = u2);
|
|
7408
|
+
}), h2.__h.length && f2.push(h2);
|
|
7409
|
+
break n;
|
|
7410
|
+
}
|
|
7411
|
+
null != h2.componentWillUpdate && h2.componentWillUpdate(g2, h2.__s, x), null != h2.componentDidUpdate && h2.__h.push(function() {
|
|
7412
|
+
h2.componentDidUpdate(y, _3, k2);
|
|
7413
|
+
});
|
|
7414
|
+
}
|
|
7415
|
+
if (h2.context = x, h2.props = g2, h2.__v = u2, h2.__P = n2, A2 = l.__r, C2 = 0, "prototype" in H2 && H2.prototype.render)
|
|
7416
|
+
h2.state = h2.__s, h2.__d = false, A2 && A2(u2), a2 = h2.render(h2.props, h2.state, h2.context);
|
|
7417
|
+
else
|
|
7418
|
+
do {
|
|
7419
|
+
h2.__d = false, A2 && A2(u2), a2 = h2.render(h2.props, h2.state, h2.context), h2.state = h2.__s;
|
|
7420
|
+
} while (h2.__d && ++C2 < 25);
|
|
7421
|
+
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;
|
|
7422
|
+
} else
|
|
7423
|
+
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);
|
|
7424
|
+
(a2 = l.diffed) && a2(u2);
|
|
7425
|
+
} catch (n3) {
|
|
7426
|
+
u2.__v = null, (c2 || null != r2) && (u2.__e = e2, u2.__h = !!c2, r2[r2.indexOf(e2)] = null), l.__e(n3, u2, i2);
|
|
6874
7427
|
}
|
|
6875
7428
|
}
|
|
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");
|
|
7429
|
+
function z(n2, u2) {
|
|
7430
|
+
l.__c && l.__c(u2, n2), n2.some(function(u3) {
|
|
7431
|
+
try {
|
|
7432
|
+
n2 = u3.__h, u3.__h = [], n2.some(function(n3) {
|
|
7433
|
+
n3.call(u3);
|
|
7434
|
+
});
|
|
7435
|
+
} catch (n3) {
|
|
7436
|
+
l.__e(n3, u3.__v);
|
|
7437
|
+
}
|
|
7438
|
+
});
|
|
6931
7439
|
}
|
|
6932
|
-
|
|
6933
|
-
|
|
6934
|
-
|
|
6935
|
-
|
|
6936
|
-
|
|
6937
|
-
|
|
6938
|
-
|
|
6939
|
-
|
|
7440
|
+
function L(l2, u2, i2, t2, o3, r2, e2, c2) {
|
|
7441
|
+
var s2, h2, v2, y = i2.props, p2 = u2.props, d2 = u2.type, k2 = 0;
|
|
7442
|
+
if ("svg" === d2 && (o3 = true), null != r2) {
|
|
7443
|
+
for (; k2 < r2.length; k2++)
|
|
7444
|
+
if ((s2 = r2[k2]) && "setAttribute" in s2 == !!d2 && (d2 ? s2.localName === d2 : 3 === s2.nodeType)) {
|
|
7445
|
+
l2 = s2, r2[k2] = null;
|
|
7446
|
+
break;
|
|
7447
|
+
}
|
|
6940
7448
|
}
|
|
6941
|
-
|
|
6942
|
-
|
|
6943
|
-
|
|
7449
|
+
if (null == l2) {
|
|
7450
|
+
if (null === d2)
|
|
7451
|
+
return document.createTextNode(p2);
|
|
7452
|
+
l2 = o3 ? document.createElementNS("http://www.w3.org/2000/svg", d2) : document.createElement(d2, p2.is && p2), r2 = null, c2 = false;
|
|
6944
7453
|
}
|
|
6945
|
-
|
|
6946
|
-
|
|
6947
|
-
|
|
6948
|
-
|
|
6949
|
-
|
|
6950
|
-
|
|
6951
|
-
|
|
6952
|
-
|
|
6953
|
-
|
|
6954
|
-
|
|
6955
|
-
|
|
6956
|
-
|
|
7454
|
+
if (null === d2)
|
|
7455
|
+
y === p2 || c2 && l2.data === p2 || (l2.data = p2);
|
|
7456
|
+
else {
|
|
7457
|
+
if (r2 = r2 && n.call(l2.childNodes), h2 = (y = i2.props || f).dangerouslySetInnerHTML, v2 = p2.dangerouslySetInnerHTML, !c2) {
|
|
7458
|
+
if (null != r2)
|
|
7459
|
+
for (y = {}, k2 = 0; k2 < l2.attributes.length; k2++)
|
|
7460
|
+
y[l2.attributes[k2].name] = l2.attributes[k2].value;
|
|
7461
|
+
(v2 || h2) && (v2 && (h2 && v2.__html == h2.__html || v2.__html === l2.innerHTML) || (l2.innerHTML = v2 && v2.__html || ""));
|
|
7462
|
+
}
|
|
7463
|
+
if (C(l2, p2, y, o3, c2), v2)
|
|
7464
|
+
u2.__k = [];
|
|
7465
|
+
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)
|
|
7466
|
+
for (k2 = r2.length; k2--; )
|
|
7467
|
+
null != r2[k2] && a(r2[k2]);
|
|
7468
|
+
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
7469
|
}
|
|
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));
|
|
7470
|
+
return l2;
|
|
7471
|
+
}
|
|
7472
|
+
function M(n2, u2, i2) {
|
|
7473
|
+
try {
|
|
7474
|
+
"function" == typeof n2 ? n2(u2) : n2.current = u2;
|
|
7475
|
+
} catch (n3) {
|
|
7476
|
+
l.__e(n3, i2);
|
|
6971
7477
|
}
|
|
6972
|
-
|
|
6973
|
-
|
|
6974
|
-
|
|
7478
|
+
}
|
|
7479
|
+
function N(n2, u2, i2) {
|
|
7480
|
+
var t2, o3;
|
|
7481
|
+
if (l.unmount && l.unmount(n2), (t2 = n2.ref) && (t2.current && t2.current !== n2.__e || M(t2, null, u2)), null != (t2 = n2.__c)) {
|
|
7482
|
+
if (t2.componentWillUnmount)
|
|
7483
|
+
try {
|
|
7484
|
+
t2.componentWillUnmount();
|
|
7485
|
+
} catch (n3) {
|
|
7486
|
+
l.__e(n3, u2);
|
|
7487
|
+
}
|
|
7488
|
+
t2.base = t2.__P = null, n2.__c = void 0;
|
|
6975
7489
|
}
|
|
6976
|
-
|
|
7490
|
+
if (t2 = n2.__k)
|
|
7491
|
+
for (o3 = 0; o3 < t2.length; o3++)
|
|
7492
|
+
t2[o3] && N(t2[o3], u2, "function" != typeof n2.type);
|
|
7493
|
+
i2 || null == n2.__e || a(n2.__e), n2.__ = n2.__e = n2.__d = void 0;
|
|
6977
7494
|
}
|
|
6978
|
-
|
|
6979
|
-
|
|
6980
|
-
|
|
6981
|
-
)
|
|
7495
|
+
function O(n2, l2, u2) {
|
|
7496
|
+
return this.constructor(n2, u2);
|
|
7497
|
+
}
|
|
7498
|
+
function P(u2, i2, t2) {
|
|
7499
|
+
var o3, r2, e2;
|
|
7500
|
+
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);
|
|
7501
|
+
}
|
|
7502
|
+
n = e.slice, l = { __e: function(n2, l2, u2, i2) {
|
|
7503
|
+
for (var t2, o3, r2; l2 = l2.__; )
|
|
7504
|
+
if ((t2 = l2.__c) && !t2.__)
|
|
7505
|
+
try {
|
|
7506
|
+
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)
|
|
7507
|
+
return t2.__E = t2;
|
|
7508
|
+
} catch (l3) {
|
|
7509
|
+
n2 = l3;
|
|
7510
|
+
}
|
|
7511
|
+
throw n2;
|
|
7512
|
+
} }, u = 0, i = function(n2) {
|
|
7513
|
+
return null != n2 && void 0 === n2.constructor;
|
|
7514
|
+
}, d.prototype.setState = function(n2, l2) {
|
|
7515
|
+
var u2;
|
|
7516
|
+
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));
|
|
7517
|
+
}, d.prototype.forceUpdate = function(n2) {
|
|
7518
|
+
this.__v && (this.__e = true, n2 && this.__h.push(n2), b(this));
|
|
7519
|
+
}, d.prototype.render = p, t = [], g.__r = 0, r = 0;
|
|
6982
7520
|
|
|
6983
7521
|
// ../../node_modules/.pnpm/preact@10.11.0/node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js
|
|
6984
7522
|
var _2 = 0;
|
|
@@ -6995,10 +7533,14 @@
|
|
|
6995
7533
|
|
|
6996
7534
|
// signin/signin.tsx
|
|
6997
7535
|
function SignIn() {
|
|
6998
|
-
|
|
6999
|
-
|
|
7536
|
+
const title = window.__ROOT_CTX.name;
|
|
7537
|
+
return /* @__PURE__ */ o2("div", { className: "signin", children: [
|
|
7538
|
+
/* @__PURE__ */ o2("div", { className: "signin__headline", children: [
|
|
7539
|
+
title && /* @__PURE__ */ o2("h1", { className: "signin__headline__title", children: title }),
|
|
7540
|
+
/* @__PURE__ */ o2("p", { className: "signin__headline__body", children: title ? `Sign in to continue to ${title}` : "Sign in to continue" })
|
|
7541
|
+
] }),
|
|
7000
7542
|
/* @__PURE__ */ o2(SignIn.Button, {})
|
|
7001
|
-
] })
|
|
7543
|
+
] });
|
|
7002
7544
|
}
|
|
7003
7545
|
SignIn.Button = () => {
|
|
7004
7546
|
async function signIn() {
|
|
@@ -7527,7 +8069,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7527
8069
|
* limitations under the License.
|
|
7528
8070
|
*)
|
|
7529
8071
|
|
|
7530
|
-
@firebase/auth/dist/esm2017/index-
|
|
8072
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7531
8073
|
(**
|
|
7532
8074
|
* @license
|
|
7533
8075
|
* Copyright 2021 Google LLC
|
|
@@ -7545,7 +8087,43 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7545
8087
|
* limitations under the License.
|
|
7546
8088
|
*)
|
|
7547
8089
|
|
|
7548
|
-
@firebase/auth/dist/esm2017/index-
|
|
8090
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8091
|
+
(**
|
|
8092
|
+
* @license
|
|
8093
|
+
* Copyright 2020 Google LLC
|
|
8094
|
+
*
|
|
8095
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8096
|
+
* you may not use this file except in compliance with the License.
|
|
8097
|
+
* You may obtain a copy of the License at
|
|
8098
|
+
*
|
|
8099
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8100
|
+
*
|
|
8101
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
8102
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8103
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8104
|
+
* See the License for the specific language governing permissions and
|
|
8105
|
+
* limitations under the License.
|
|
8106
|
+
*)
|
|
8107
|
+
|
|
8108
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8109
|
+
(**
|
|
8110
|
+
* @license
|
|
8111
|
+
* Copyright 2020 Google LLC
|
|
8112
|
+
*
|
|
8113
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8114
|
+
* you may not use this file except in compliance with the License.
|
|
8115
|
+
* You may obtain a copy of the License at
|
|
8116
|
+
*
|
|
8117
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8118
|
+
*
|
|
8119
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
8120
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8121
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8122
|
+
* See the License for the specific language governing permissions and
|
|
8123
|
+
* limitations under the License.
|
|
8124
|
+
*)
|
|
8125
|
+
|
|
8126
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7549
8127
|
(**
|
|
7550
8128
|
* @license
|
|
7551
8129
|
* Copyright 2020 Google LLC
|
|
@@ -7563,7 +8141,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7563
8141
|
* limitations under the License.
|
|
7564
8142
|
*)
|
|
7565
8143
|
|
|
7566
|
-
@firebase/auth/dist/esm2017/index-
|
|
8144
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7567
8145
|
(**
|
|
7568
8146
|
* @license
|
|
7569
8147
|
* Copyright 2020 Google LLC
|
|
@@ -7581,7 +8159,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7581
8159
|
* limitations under the License.
|
|
7582
8160
|
*)
|
|
7583
8161
|
|
|
7584
|
-
@firebase/auth/dist/esm2017/index-
|
|
8162
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7585
8163
|
(**
|
|
7586
8164
|
* @license
|
|
7587
8165
|
* Copyright 2020 Google LLC
|
|
@@ -7599,7 +8177,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7599
8177
|
* limitations under the License.
|
|
7600
8178
|
*)
|
|
7601
8179
|
|
|
7602
|
-
@firebase/auth/dist/esm2017/index-
|
|
8180
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7603
8181
|
(**
|
|
7604
8182
|
* @license
|
|
7605
8183
|
* Copyright 2020 Google LLC
|
|
@@ -7633,7 +8211,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7633
8211
|
* limitations under the License.
|
|
7634
8212
|
*)
|
|
7635
8213
|
|
|
7636
|
-
@firebase/auth/dist/esm2017/index-
|
|
8214
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7637
8215
|
(**
|
|
7638
8216
|
* @license
|
|
7639
8217
|
* Copyright 2020 Google LLC
|
|
@@ -7666,8 +8244,42 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7666
8244
|
* See the License for the specific language governing permissions and
|
|
7667
8245
|
* limitations under the License.
|
|
7668
8246
|
*)
|
|
8247
|
+
(**
|
|
8248
|
+
* @license
|
|
8249
|
+
* Copyright 2023 Google LLC
|
|
8250
|
+
*
|
|
8251
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8252
|
+
* you may not use this file except in compliance with the License.
|
|
8253
|
+
* You may obtain a copy of the License at
|
|
8254
|
+
*
|
|
8255
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8256
|
+
*
|
|
8257
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
8258
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8259
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8260
|
+
* See the License for the specific language governing permissions and
|
|
8261
|
+
* limitations under the License.
|
|
8262
|
+
*)
|
|
8263
|
+
|
|
8264
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8265
|
+
(**
|
|
8266
|
+
* @license
|
|
8267
|
+
* Copyright 2020 Google LLC
|
|
8268
|
+
*
|
|
8269
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8270
|
+
* you may not use this file except in compliance with the License.
|
|
8271
|
+
* You may obtain a copy of the License at
|
|
8272
|
+
*
|
|
8273
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8274
|
+
*
|
|
8275
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
8276
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8277
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8278
|
+
* See the License for the specific language governing permissions and
|
|
8279
|
+
* limitations under the License.
|
|
8280
|
+
*)
|
|
7669
8281
|
|
|
7670
|
-
@firebase/auth/dist/esm2017/index-
|
|
8282
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7671
8283
|
(**
|
|
7672
8284
|
* @license
|
|
7673
8285
|
* Copyright 2020 Google LLC
|
|
@@ -7685,7 +8297,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7685
8297
|
* limitations under the License.
|
|
7686
8298
|
*)
|
|
7687
8299
|
|
|
7688
|
-
@firebase/auth/dist/esm2017/index-
|
|
8300
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7689
8301
|
(**
|
|
7690
8302
|
* @license
|
|
7691
8303
|
* Copyright 2020 Google LLC
|
|
@@ -7703,7 +8315,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7703
8315
|
* limitations under the License.
|
|
7704
8316
|
*)
|
|
7705
8317
|
|
|
7706
|
-
@firebase/auth/dist/esm2017/index-
|
|
8318
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7707
8319
|
(**
|
|
7708
8320
|
* @license
|
|
7709
8321
|
* Copyright 2020 Google LLC
|
|
@@ -7737,7 +8349,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7737
8349
|
* limitations under the License.
|
|
7738
8350
|
*)
|
|
7739
8351
|
|
|
7740
|
-
@firebase/auth/dist/esm2017/index-
|
|
8352
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7741
8353
|
(**
|
|
7742
8354
|
* @license
|
|
7743
8355
|
* Copyright 2020 Google LLC
|
|
@@ -7755,7 +8367,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7755
8367
|
* limitations under the License.
|
|
7756
8368
|
*)
|
|
7757
8369
|
|
|
7758
|
-
@firebase/auth/dist/esm2017/index-
|
|
8370
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7759
8371
|
(**
|
|
7760
8372
|
* @license
|
|
7761
8373
|
* Copyright 2020 Google LLC
|
|
@@ -7773,7 +8385,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7773
8385
|
* limitations under the License.
|
|
7774
8386
|
*)
|
|
7775
8387
|
|
|
7776
|
-
@firebase/auth/dist/esm2017/index-
|
|
8388
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7777
8389
|
(**
|
|
7778
8390
|
* @license
|
|
7779
8391
|
* Copyright 2020 Google LLC
|
|
@@ -7791,7 +8403,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7791
8403
|
* limitations under the License.
|
|
7792
8404
|
*)
|
|
7793
8405
|
|
|
7794
|
-
@firebase/auth/dist/esm2017/index-
|
|
8406
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7795
8407
|
(**
|
|
7796
8408
|
* @license
|
|
7797
8409
|
* Copyright 2020 Google LLC
|
|
@@ -7809,7 +8421,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7809
8421
|
* limitations under the License.
|
|
7810
8422
|
*)
|
|
7811
8423
|
|
|
7812
|
-
@firebase/auth/dist/esm2017/index-
|
|
8424
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7813
8425
|
(**
|
|
7814
8426
|
* @license
|
|
7815
8427
|
* Copyright 2020 Google LLC
|
|
@@ -7827,7 +8439,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7827
8439
|
* limitations under the License.
|
|
7828
8440
|
*)
|
|
7829
8441
|
|
|
7830
|
-
@firebase/auth/dist/esm2017/index-
|
|
8442
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7831
8443
|
(**
|
|
7832
8444
|
* @license
|
|
7833
8445
|
* Copyright 2019 Google LLC
|
|
@@ -7845,7 +8457,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7845
8457
|
* limitations under the License.
|
|
7846
8458
|
*)
|
|
7847
8459
|
|
|
7848
|
-
@firebase/auth/dist/esm2017/index-
|
|
8460
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7849
8461
|
(**
|
|
7850
8462
|
* @license
|
|
7851
8463
|
* Copyright 2019 Google LLC
|
|
@@ -7879,7 +8491,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7879
8491
|
* limitations under the License.
|
|
7880
8492
|
*)
|
|
7881
8493
|
|
|
7882
|
-
@firebase/auth/dist/esm2017/index-
|
|
8494
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7883
8495
|
(**
|
|
7884
8496
|
* @license
|
|
7885
8497
|
* Copyright 2020 Google LLC
|
|
@@ -7897,7 +8509,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7897
8509
|
* limitations under the License.
|
|
7898
8510
|
*)
|
|
7899
8511
|
|
|
7900
|
-
@firebase/auth/dist/esm2017/index-
|
|
8512
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7901
8513
|
(**
|
|
7902
8514
|
* @license
|
|
7903
8515
|
* Copyright 2020 Google LLC
|
|
@@ -7915,7 +8527,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7915
8527
|
* limitations under the License.
|
|
7916
8528
|
*)
|
|
7917
8529
|
|
|
7918
|
-
@firebase/auth/dist/esm2017/index-
|
|
8530
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7919
8531
|
(**
|
|
7920
8532
|
* @license
|
|
7921
8533
|
* Copyright 2020 Google LLC
|
|
@@ -7933,7 +8545,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7933
8545
|
* limitations under the License.
|
|
7934
8546
|
*)
|
|
7935
8547
|
|
|
7936
|
-
@firebase/auth/dist/esm2017/index-
|
|
8548
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7937
8549
|
(**
|
|
7938
8550
|
* @license
|
|
7939
8551
|
* Copyright 2020 Google LLC
|
|
@@ -7951,7 +8563,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7951
8563
|
* limitations under the License.
|
|
7952
8564
|
*)
|
|
7953
8565
|
|
|
7954
|
-
@firebase/auth/dist/esm2017/index-
|
|
8566
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7955
8567
|
(**
|
|
7956
8568
|
* @license
|
|
7957
8569
|
* Copyright 2020 Google LLC
|
|
@@ -7969,7 +8581,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7969
8581
|
* limitations under the License.
|
|
7970
8582
|
*)
|
|
7971
8583
|
|
|
7972
|
-
@firebase/auth/dist/esm2017/index-
|
|
8584
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7973
8585
|
(**
|
|
7974
8586
|
* @license
|
|
7975
8587
|
* Copyright 2020 Google LLC
|
|
@@ -7987,7 +8599,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
7987
8599
|
* limitations under the License.
|
|
7988
8600
|
*)
|
|
7989
8601
|
|
|
7990
|
-
@firebase/auth/dist/esm2017/index-
|
|
8602
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
7991
8603
|
(**
|
|
7992
8604
|
* @license
|
|
7993
8605
|
* Copyright 2020 Google LLC
|
|
@@ -8005,7 +8617,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8005
8617
|
* limitations under the License.
|
|
8006
8618
|
*)
|
|
8007
8619
|
|
|
8008
|
-
@firebase/auth/dist/esm2017/index-
|
|
8620
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8009
8621
|
(**
|
|
8010
8622
|
* @license
|
|
8011
8623
|
* Copyright 2020 Google LLC
|
|
@@ -8023,7 +8635,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8023
8635
|
* limitations under the License.
|
|
8024
8636
|
*)
|
|
8025
8637
|
|
|
8026
|
-
@firebase/auth/dist/esm2017/index-
|
|
8638
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8027
8639
|
(**
|
|
8028
8640
|
* @license
|
|
8029
8641
|
* Copyright 2020 Google LLC
|
|
@@ -8041,7 +8653,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8041
8653
|
* limitations under the License.
|
|
8042
8654
|
*)
|
|
8043
8655
|
|
|
8044
|
-
@firebase/auth/dist/esm2017/index-
|
|
8656
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8045
8657
|
(**
|
|
8046
8658
|
* @license
|
|
8047
8659
|
* Copyright 2020 Google LLC
|
|
@@ -8059,7 +8671,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8059
8671
|
* limitations under the License.
|
|
8060
8672
|
*)
|
|
8061
8673
|
|
|
8062
|
-
@firebase/auth/dist/esm2017/index-
|
|
8674
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8063
8675
|
(**
|
|
8064
8676
|
* @license
|
|
8065
8677
|
* Copyright 2019 Google LLC
|
|
@@ -8077,7 +8689,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8077
8689
|
* limitations under the License.
|
|
8078
8690
|
*)
|
|
8079
8691
|
|
|
8080
|
-
@firebase/auth/dist/esm2017/index-
|
|
8692
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8081
8693
|
(**
|
|
8082
8694
|
* @license
|
|
8083
8695
|
* Copyright 2020 Google LLC
|
|
@@ -8095,7 +8707,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8095
8707
|
* limitations under the License.
|
|
8096
8708
|
*)
|
|
8097
8709
|
|
|
8098
|
-
@firebase/auth/dist/esm2017/index-
|
|
8710
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8099
8711
|
(**
|
|
8100
8712
|
* @license
|
|
8101
8713
|
* Copyright 2020 Google LLC
|
|
@@ -8113,7 +8725,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8113
8725
|
* limitations under the License.
|
|
8114
8726
|
*)
|
|
8115
8727
|
|
|
8116
|
-
@firebase/auth/dist/esm2017/index-
|
|
8728
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8117
8729
|
(**
|
|
8118
8730
|
* @license
|
|
8119
8731
|
* Copyright 2020 Google LLC
|
|
@@ -8131,10 +8743,10 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8131
8743
|
* limitations under the License.
|
|
8132
8744
|
*)
|
|
8133
8745
|
|
|
8134
|
-
@firebase/auth/dist/esm2017/index-
|
|
8746
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8135
8747
|
(**
|
|
8136
8748
|
* @license
|
|
8137
|
-
* Copyright
|
|
8749
|
+
* Copyright 2020 Google LLC
|
|
8138
8750
|
*
|
|
8139
8751
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8140
8752
|
* you may not use this file except in compliance with the License.
|
|
@@ -8148,9 +8760,11 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8148
8760
|
* See the License for the specific language governing permissions and
|
|
8149
8761
|
* limitations under the License.
|
|
8150
8762
|
*)
|
|
8763
|
+
|
|
8764
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8151
8765
|
(**
|
|
8152
8766
|
* @license
|
|
8153
|
-
* Copyright
|
|
8767
|
+
* Copyright 2019 Google LLC
|
|
8154
8768
|
*
|
|
8155
8769
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8156
8770
|
* you may not use this file except in compliance with the License.
|
|
@@ -8166,7 +8780,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8166
8780
|
*)
|
|
8167
8781
|
(**
|
|
8168
8782
|
* @license
|
|
8169
|
-
* Copyright 2020 Google LLC
|
|
8783
|
+
* Copyright 2020 Google LLC
|
|
8170
8784
|
*
|
|
8171
8785
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8172
8786
|
* you may not use this file except in compliance with the License.
|
|
@@ -8180,11 +8794,9 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8180
8794
|
* See the License for the specific language governing permissions and
|
|
8181
8795
|
* limitations under the License.
|
|
8182
8796
|
*)
|
|
8183
|
-
|
|
8184
|
-
@firebase/auth/dist/esm2017/index-e3f1fbba.js:
|
|
8185
8797
|
(**
|
|
8186
8798
|
* @license
|
|
8187
|
-
* Copyright 2020 Google LLC
|
|
8799
|
+
* Copyright 2020 Google LLC.
|
|
8188
8800
|
*
|
|
8189
8801
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8190
8802
|
* you may not use this file except in compliance with the License.
|
|
@@ -8199,7 +8811,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8199
8811
|
* limitations under the License.
|
|
8200
8812
|
*)
|
|
8201
8813
|
|
|
8202
|
-
@firebase/auth/dist/esm2017/index-
|
|
8814
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8203
8815
|
(**
|
|
8204
8816
|
* @license
|
|
8205
8817
|
* Copyright 2020 Google LLC
|
|
@@ -8217,7 +8829,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8217
8829
|
* limitations under the License.
|
|
8218
8830
|
*)
|
|
8219
8831
|
|
|
8220
|
-
@firebase/auth/dist/esm2017/index-
|
|
8832
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8221
8833
|
(**
|
|
8222
8834
|
* @license
|
|
8223
8835
|
* Copyright 2020 Google LLC
|
|
@@ -8235,7 +8847,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8235
8847
|
* limitations under the License.
|
|
8236
8848
|
*)
|
|
8237
8849
|
|
|
8238
|
-
@firebase/auth/dist/esm2017/index-
|
|
8850
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8239
8851
|
(**
|
|
8240
8852
|
* @license
|
|
8241
8853
|
* Copyright 2020 Google LLC
|
|
@@ -8253,7 +8865,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8253
8865
|
* limitations under the License.
|
|
8254
8866
|
*)
|
|
8255
8867
|
|
|
8256
|
-
@firebase/auth/dist/esm2017/index-
|
|
8868
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8257
8869
|
(**
|
|
8258
8870
|
* @license
|
|
8259
8871
|
* Copyright 2020 Google LLC
|
|
@@ -8303,7 +8915,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8303
8915
|
* limitations under the License.
|
|
8304
8916
|
*)
|
|
8305
8917
|
|
|
8306
|
-
@firebase/auth/dist/esm2017/index-
|
|
8918
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8307
8919
|
(**
|
|
8308
8920
|
* @license
|
|
8309
8921
|
* Copyright 2020 Google LLC
|
|
@@ -8321,7 +8933,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8321
8933
|
* limitations under the License.
|
|
8322
8934
|
*)
|
|
8323
8935
|
|
|
8324
|
-
@firebase/auth/dist/esm2017/index-
|
|
8936
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8325
8937
|
(**
|
|
8326
8938
|
* @license
|
|
8327
8939
|
* Copyright 2020 Google LLC
|
|
@@ -8339,7 +8951,7 @@ firebase/app/dist/esm/index.esm.js:
|
|
|
8339
8951
|
* limitations under the License.
|
|
8340
8952
|
*)
|
|
8341
8953
|
|
|
8342
|
-
@firebase/auth/dist/esm2017/index-
|
|
8954
|
+
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
8343
8955
|
(**
|
|
8344
8956
|
* @license
|
|
8345
8957
|
* Copyright 2020 Google LLC
|