sevago-sso-fe 1.0.11 → 1.0.13
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/hooks/index.d.ts +3 -2
- package/dist/index.cjs.js +2371 -289
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +2374 -292
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -10,6 +10,7 @@ const material = require("@mui/material");
|
|
|
10
10
|
const system = require("@mui/system");
|
|
11
11
|
const emStyled = require("@emotion/styled");
|
|
12
12
|
require("@emotion/react");
|
|
13
|
+
const ReactDOM = require("react-dom");
|
|
13
14
|
function _interopNamespaceDefault(e) {
|
|
14
15
|
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
15
16
|
if (e) {
|
|
@@ -468,7 +469,7 @@ const toObjectSet = (arrayOrString, delimiter) => {
|
|
|
468
469
|
isArray$1(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));
|
|
469
470
|
return obj;
|
|
470
471
|
};
|
|
471
|
-
const noop$
|
|
472
|
+
const noop$2 = () => {
|
|
472
473
|
};
|
|
473
474
|
const toFiniteNumber = (value2, defaultValue) => {
|
|
474
475
|
return value2 != null && Number.isFinite(value2 = +value2) ? value2 : defaultValue;
|
|
@@ -571,7 +572,7 @@ const utils$1 = {
|
|
|
571
572
|
freezeMethods,
|
|
572
573
|
toObjectSet,
|
|
573
574
|
toCamelCase,
|
|
574
|
-
noop: noop$
|
|
575
|
+
noop: noop$2,
|
|
575
576
|
toFiniteNumber,
|
|
576
577
|
findKey,
|
|
577
578
|
global: _global,
|
|
@@ -584,7 +585,7 @@ const utils$1 = {
|
|
|
584
585
|
asap,
|
|
585
586
|
isIterable
|
|
586
587
|
};
|
|
587
|
-
function AxiosError$1(message, code,
|
|
588
|
+
function AxiosError$1(message, code, config2, request, response) {
|
|
588
589
|
Error.call(this);
|
|
589
590
|
if (Error.captureStackTrace) {
|
|
590
591
|
Error.captureStackTrace(this, this.constructor);
|
|
@@ -594,7 +595,7 @@ function AxiosError$1(message, code, config, request, response) {
|
|
|
594
595
|
this.message = message;
|
|
595
596
|
this.name = "AxiosError";
|
|
596
597
|
code && (this.code = code);
|
|
597
|
-
|
|
598
|
+
config2 && (this.config = config2);
|
|
598
599
|
request && (this.request = request);
|
|
599
600
|
if (response) {
|
|
600
601
|
this.response = response;
|
|
@@ -643,7 +644,7 @@ const descriptors = {};
|
|
|
643
644
|
});
|
|
644
645
|
Object.defineProperties(AxiosError$1, descriptors);
|
|
645
646
|
Object.defineProperty(prototype$1, "isAxiosError", { value: true });
|
|
646
|
-
AxiosError$1.from = (error, code,
|
|
647
|
+
AxiosError$1.from = (error, code, config2, request, response, customProps) => {
|
|
647
648
|
const axiosError = Object.create(prototype$1);
|
|
648
649
|
utils$1.toFlatObject(error, axiosError, function filter3(obj) {
|
|
649
650
|
return obj !== Error.prototype;
|
|
@@ -652,7 +653,7 @@ AxiosError$1.from = (error, code, config, request, response, customProps) => {
|
|
|
652
653
|
});
|
|
653
654
|
const msg = error && error.message ? error.message : "Error";
|
|
654
655
|
const errCode = code == null && error ? error.code : code;
|
|
655
|
-
AxiosError$1.call(axiosError, msg, errCode,
|
|
656
|
+
AxiosError$1.call(axiosError, msg, errCode, config2, request, response);
|
|
656
657
|
if (error && axiosError.cause == null) {
|
|
657
658
|
Object.defineProperty(axiosError, "cause", { value: error, configurable: true });
|
|
658
659
|
}
|
|
@@ -1368,12 +1369,12 @@ utils$1.reduceDescriptors(AxiosHeaders$1.prototype, ({ value: value2 }, key) =>
|
|
|
1368
1369
|
});
|
|
1369
1370
|
utils$1.freezeMethods(AxiosHeaders$1);
|
|
1370
1371
|
function transformData(fns, response) {
|
|
1371
|
-
const
|
|
1372
|
-
const context = response ||
|
|
1372
|
+
const config2 = this || defaults;
|
|
1373
|
+
const context = response || config2;
|
|
1373
1374
|
const headers = AxiosHeaders$1.from(context.headers);
|
|
1374
1375
|
let data = context.data;
|
|
1375
1376
|
utils$1.forEach(fns, function transform(fn) {
|
|
1376
|
-
data = fn.call(
|
|
1377
|
+
data = fn.call(config2, data, headers.normalize(), response ? response.status : void 0);
|
|
1377
1378
|
});
|
|
1378
1379
|
headers.normalize();
|
|
1379
1380
|
return data;
|
|
@@ -1381,8 +1382,8 @@ function transformData(fns, response) {
|
|
|
1381
1382
|
function isCancel$1(value2) {
|
|
1382
1383
|
return !!(value2 && value2.__CANCEL__);
|
|
1383
1384
|
}
|
|
1384
|
-
function CanceledError$1(message,
|
|
1385
|
-
AxiosError$1.call(this, message == null ? "canceled" : message, AxiosError$1.ERR_CANCELED,
|
|
1385
|
+
function CanceledError$1(message, config2, request) {
|
|
1386
|
+
AxiosError$1.call(this, message == null ? "canceled" : message, AxiosError$1.ERR_CANCELED, config2, request);
|
|
1386
1387
|
this.name = "CanceledError";
|
|
1387
1388
|
}
|
|
1388
1389
|
utils$1.inherits(CanceledError$1, AxiosError$1, {
|
|
@@ -1558,7 +1559,7 @@ function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) {
|
|
|
1558
1559
|
const headersToObject = (thing) => thing instanceof AxiosHeaders$1 ? { ...thing } : thing;
|
|
1559
1560
|
function mergeConfig$1(config1, config2) {
|
|
1560
1561
|
config2 = config2 || {};
|
|
1561
|
-
const
|
|
1562
|
+
const config3 = {};
|
|
1562
1563
|
function getMergedValue(target, source, prop, caseless) {
|
|
1563
1564
|
if (utils$1.isPlainObject(target) && utils$1.isPlainObject(source)) {
|
|
1564
1565
|
return utils$1.merge.call({ caseless }, target, source);
|
|
@@ -1629,15 +1630,15 @@ function mergeConfig$1(config1, config2) {
|
|
|
1629
1630
|
utils$1.forEach(Object.keys({ ...config1, ...config2 }), function computeConfigValue(prop) {
|
|
1630
1631
|
const merge2 = mergeMap[prop] || mergeDeepProperties;
|
|
1631
1632
|
const configValue = merge2(config1[prop], config2[prop], prop);
|
|
1632
|
-
utils$1.isUndefined(configValue) && merge2 !== mergeDirectKeys || (
|
|
1633
|
+
utils$1.isUndefined(configValue) && merge2 !== mergeDirectKeys || (config3[prop] = configValue);
|
|
1633
1634
|
});
|
|
1634
|
-
return
|
|
1635
|
+
return config3;
|
|
1635
1636
|
}
|
|
1636
|
-
const resolveConfig = (
|
|
1637
|
-
const newConfig = mergeConfig$1({},
|
|
1637
|
+
const resolveConfig = (config2) => {
|
|
1638
|
+
const newConfig = mergeConfig$1({}, config2);
|
|
1638
1639
|
let { data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth } = newConfig;
|
|
1639
1640
|
newConfig.headers = headers = AxiosHeaders$1.from(headers);
|
|
1640
|
-
newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url, newConfig.allowAbsoluteUrls),
|
|
1641
|
+
newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url, newConfig.allowAbsoluteUrls), config2.params, config2.paramsSerializer);
|
|
1641
1642
|
if (auth) {
|
|
1642
1643
|
headers.set(
|
|
1643
1644
|
"Authorization",
|
|
@@ -1669,9 +1670,9 @@ const resolveConfig = (config) => {
|
|
|
1669
1670
|
return newConfig;
|
|
1670
1671
|
};
|
|
1671
1672
|
const isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined";
|
|
1672
|
-
const xhrAdapter = isXHRAdapterSupported && function(
|
|
1673
|
+
const xhrAdapter = isXHRAdapterSupported && function(config2) {
|
|
1673
1674
|
return new Promise(function dispatchXhrRequest(resolve, reject) {
|
|
1674
|
-
const _config = resolveConfig(
|
|
1675
|
+
const _config = resolveConfig(config2);
|
|
1675
1676
|
let requestData = _config.data;
|
|
1676
1677
|
const requestHeaders = AxiosHeaders$1.from(_config.headers).normalize();
|
|
1677
1678
|
let { responseType, onUploadProgress, onDownloadProgress } = _config;
|
|
@@ -1700,7 +1701,7 @@ const xhrAdapter = isXHRAdapterSupported && function(config) {
|
|
|
1700
1701
|
status: request.status,
|
|
1701
1702
|
statusText: request.statusText,
|
|
1702
1703
|
headers: responseHeaders,
|
|
1703
|
-
config,
|
|
1704
|
+
config: config2,
|
|
1704
1705
|
request
|
|
1705
1706
|
};
|
|
1706
1707
|
settle(function _resolve(value2) {
|
|
@@ -1729,12 +1730,12 @@ const xhrAdapter = isXHRAdapterSupported && function(config) {
|
|
|
1729
1730
|
if (!request) {
|
|
1730
1731
|
return;
|
|
1731
1732
|
}
|
|
1732
|
-
reject(new AxiosError$1("Request aborted", AxiosError$1.ECONNABORTED,
|
|
1733
|
+
reject(new AxiosError$1("Request aborted", AxiosError$1.ECONNABORTED, config2, request));
|
|
1733
1734
|
request = null;
|
|
1734
1735
|
};
|
|
1735
1736
|
request.onerror = function handleError(event) {
|
|
1736
1737
|
const msg = event && event.message ? event.message : "Network Error";
|
|
1737
|
-
const err = new AxiosError$1(msg, AxiosError$1.ERR_NETWORK,
|
|
1738
|
+
const err = new AxiosError$1(msg, AxiosError$1.ERR_NETWORK, config2, request);
|
|
1738
1739
|
err.event = event || null;
|
|
1739
1740
|
reject(err);
|
|
1740
1741
|
request = null;
|
|
@@ -1748,7 +1749,7 @@ const xhrAdapter = isXHRAdapterSupported && function(config) {
|
|
|
1748
1749
|
reject(new AxiosError$1(
|
|
1749
1750
|
timeoutErrorMessage,
|
|
1750
1751
|
transitional2.clarifyTimeoutError ? AxiosError$1.ETIMEDOUT : AxiosError$1.ECONNABORTED,
|
|
1751
|
-
|
|
1752
|
+
config2,
|
|
1752
1753
|
request
|
|
1753
1754
|
));
|
|
1754
1755
|
request = null;
|
|
@@ -1779,7 +1780,7 @@ const xhrAdapter = isXHRAdapterSupported && function(config) {
|
|
|
1779
1780
|
if (!request) {
|
|
1780
1781
|
return;
|
|
1781
1782
|
}
|
|
1782
|
-
reject(!cancel || cancel.type ? new CanceledError$1(null,
|
|
1783
|
+
reject(!cancel || cancel.type ? new CanceledError$1(null, config2, request) : cancel);
|
|
1783
1784
|
request.abort();
|
|
1784
1785
|
request = null;
|
|
1785
1786
|
};
|
|
@@ -1790,15 +1791,15 @@ const xhrAdapter = isXHRAdapterSupported && function(config) {
|
|
|
1790
1791
|
}
|
|
1791
1792
|
const protocol2 = parseProtocol(_config.url);
|
|
1792
1793
|
if (protocol2 && platform.protocols.indexOf(protocol2) === -1) {
|
|
1793
|
-
reject(new AxiosError$1("Unsupported protocol " + protocol2 + ":", AxiosError$1.ERR_BAD_REQUEST,
|
|
1794
|
+
reject(new AxiosError$1("Unsupported protocol " + protocol2 + ":", AxiosError$1.ERR_BAD_REQUEST, config2));
|
|
1794
1795
|
return;
|
|
1795
1796
|
}
|
|
1796
1797
|
request.send(requestData || null);
|
|
1797
1798
|
});
|
|
1798
1799
|
};
|
|
1799
|
-
const composeSignals = (signals,
|
|
1800
|
+
const composeSignals = (signals, timeout2) => {
|
|
1800
1801
|
const { length } = signals = signals ? signals.filter(Boolean) : [];
|
|
1801
|
-
if (
|
|
1802
|
+
if (timeout2 || length) {
|
|
1802
1803
|
let controller = new AbortController();
|
|
1803
1804
|
let aborted;
|
|
1804
1805
|
const onabort = function(reason) {
|
|
@@ -1809,10 +1810,10 @@ const composeSignals = (signals, timeout) => {
|
|
|
1809
1810
|
controller.abort(err instanceof AxiosError$1 ? err : new CanceledError$1(err instanceof Error ? err.message : err));
|
|
1810
1811
|
}
|
|
1811
1812
|
};
|
|
1812
|
-
let timer =
|
|
1813
|
+
let timer = timeout2 && setTimeout(() => {
|
|
1813
1814
|
timer = null;
|
|
1814
|
-
onabort(new AxiosError$1(`timeout ${
|
|
1815
|
-
},
|
|
1815
|
+
onabort(new AxiosError$1(`timeout ${timeout2} of ms exceeded`, AxiosError$1.ETIMEDOUT));
|
|
1816
|
+
}, timeout2);
|
|
1816
1817
|
const unsubscribe = () => {
|
|
1817
1818
|
if (signals) {
|
|
1818
1819
|
timer && clearTimeout(timer);
|
|
@@ -1952,12 +1953,12 @@ const factory = (env) => {
|
|
|
1952
1953
|
};
|
|
1953
1954
|
isFetchSupported && (() => {
|
|
1954
1955
|
["text", "arrayBuffer", "blob", "formData", "stream"].forEach((type) => {
|
|
1955
|
-
!resolvers[type] && (resolvers[type] = (res,
|
|
1956
|
+
!resolvers[type] && (resolvers[type] = (res, config2) => {
|
|
1956
1957
|
let method = res && res[type];
|
|
1957
1958
|
if (method) {
|
|
1958
1959
|
return method.call(res);
|
|
1959
1960
|
}
|
|
1960
|
-
throw new AxiosError$1(`Response type '${type}' is not supported`, AxiosError$1.ERR_NOT_SUPPORT,
|
|
1961
|
+
throw new AxiosError$1(`Response type '${type}' is not supported`, AxiosError$1.ERR_NOT_SUPPORT, config2);
|
|
1961
1962
|
});
|
|
1962
1963
|
});
|
|
1963
1964
|
})();
|
|
@@ -1989,24 +1990,24 @@ const factory = (env) => {
|
|
|
1989
1990
|
const length = utils$1.toFiniteNumber(headers.getContentLength());
|
|
1990
1991
|
return length == null ? getBodyLength(body) : length;
|
|
1991
1992
|
};
|
|
1992
|
-
return async (
|
|
1993
|
+
return async (config2) => {
|
|
1993
1994
|
let {
|
|
1994
1995
|
url: url2,
|
|
1995
1996
|
method,
|
|
1996
1997
|
data,
|
|
1997
1998
|
signal,
|
|
1998
1999
|
cancelToken,
|
|
1999
|
-
timeout,
|
|
2000
|
+
timeout: timeout2,
|
|
2000
2001
|
onDownloadProgress,
|
|
2001
2002
|
onUploadProgress,
|
|
2002
2003
|
responseType,
|
|
2003
2004
|
headers,
|
|
2004
2005
|
withCredentials = "same-origin",
|
|
2005
2006
|
fetchOptions
|
|
2006
|
-
} = resolveConfig(
|
|
2007
|
+
} = resolveConfig(config2);
|
|
2007
2008
|
let _fetch = envFetch || fetch;
|
|
2008
2009
|
responseType = responseType ? (responseType + "").toLowerCase() : "text";
|
|
2009
|
-
let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()],
|
|
2010
|
+
let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout2);
|
|
2010
2011
|
let request = null;
|
|
2011
2012
|
const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {
|
|
2012
2013
|
composedSignal.unsubscribe();
|
|
@@ -2066,7 +2067,7 @@ const factory = (env) => {
|
|
|
2066
2067
|
);
|
|
2067
2068
|
}
|
|
2068
2069
|
responseType = responseType || "text";
|
|
2069
|
-
let responseData = await resolvers[utils$1.findKey(resolvers, responseType) || "text"](response,
|
|
2070
|
+
let responseData = await resolvers[utils$1.findKey(resolvers, responseType) || "text"](response, config2);
|
|
2070
2071
|
!isStreamResponse && unsubscribe && unsubscribe();
|
|
2071
2072
|
return await new Promise((resolve, reject) => {
|
|
2072
2073
|
settle(resolve, reject, {
|
|
@@ -2074,7 +2075,7 @@ const factory = (env) => {
|
|
|
2074
2075
|
headers: AxiosHeaders$1.from(response.headers),
|
|
2075
2076
|
status: response.status,
|
|
2076
2077
|
statusText: response.statusText,
|
|
2077
|
-
config,
|
|
2078
|
+
config: config2,
|
|
2078
2079
|
request
|
|
2079
2080
|
});
|
|
2080
2081
|
});
|
|
@@ -2082,19 +2083,19 @@ const factory = (env) => {
|
|
|
2082
2083
|
unsubscribe && unsubscribe();
|
|
2083
2084
|
if (err && err.name === "TypeError" && /Load failed|fetch/i.test(err.message)) {
|
|
2084
2085
|
throw Object.assign(
|
|
2085
|
-
new AxiosError$1("Network Error", AxiosError$1.ERR_NETWORK,
|
|
2086
|
+
new AxiosError$1("Network Error", AxiosError$1.ERR_NETWORK, config2, request),
|
|
2086
2087
|
{
|
|
2087
2088
|
cause: err.cause || err
|
|
2088
2089
|
}
|
|
2089
2090
|
);
|
|
2090
2091
|
}
|
|
2091
|
-
throw AxiosError$1.from(err, err && err.code,
|
|
2092
|
+
throw AxiosError$1.from(err, err && err.code, config2, request);
|
|
2092
2093
|
}
|
|
2093
2094
|
};
|
|
2094
2095
|
};
|
|
2095
2096
|
const seedCache = /* @__PURE__ */ new Map();
|
|
2096
|
-
const getFetch = (
|
|
2097
|
-
let env =
|
|
2097
|
+
const getFetch = (config2) => {
|
|
2098
|
+
let env = config2 ? config2.env : {};
|
|
2098
2099
|
const { fetch: fetch2, Request: Request2, Response } = env;
|
|
2099
2100
|
const seeds = [
|
|
2100
2101
|
Request2,
|
|
@@ -2130,7 +2131,7 @@ utils$1.forEach(knownAdapters, (fn, value2) => {
|
|
|
2130
2131
|
const renderReason = (reason) => `- ${reason}`;
|
|
2131
2132
|
const isResolvedHandle = (adapter) => utils$1.isFunction(adapter) || adapter === null || adapter === false;
|
|
2132
2133
|
const adapters = {
|
|
2133
|
-
getAdapter: (adapters2,
|
|
2134
|
+
getAdapter: (adapters2, config2) => {
|
|
2134
2135
|
adapters2 = utils$1.isArray(adapters2) ? adapters2 : [adapters2];
|
|
2135
2136
|
const { length } = adapters2;
|
|
2136
2137
|
let nameOrAdapter;
|
|
@@ -2146,7 +2147,7 @@ const adapters = {
|
|
|
2146
2147
|
throw new AxiosError$1(`Unknown adapter '${id2}'`);
|
|
2147
2148
|
}
|
|
2148
2149
|
}
|
|
2149
|
-
if (adapter && (utils$1.isFunction(adapter) || (adapter = adapter.get(
|
|
2150
|
+
if (adapter && (utils$1.isFunction(adapter) || (adapter = adapter.get(config2)))) {
|
|
2150
2151
|
break;
|
|
2151
2152
|
}
|
|
2152
2153
|
rejectedReasons[id2 || "#" + i] = adapter;
|
|
@@ -2165,41 +2166,41 @@ const adapters = {
|
|
|
2165
2166
|
},
|
|
2166
2167
|
adapters: knownAdapters
|
|
2167
2168
|
};
|
|
2168
|
-
function throwIfCancellationRequested(
|
|
2169
|
-
if (
|
|
2170
|
-
|
|
2169
|
+
function throwIfCancellationRequested(config2) {
|
|
2170
|
+
if (config2.cancelToken) {
|
|
2171
|
+
config2.cancelToken.throwIfRequested();
|
|
2171
2172
|
}
|
|
2172
|
-
if (
|
|
2173
|
-
throw new CanceledError$1(null,
|
|
2173
|
+
if (config2.signal && config2.signal.aborted) {
|
|
2174
|
+
throw new CanceledError$1(null, config2);
|
|
2174
2175
|
}
|
|
2175
2176
|
}
|
|
2176
|
-
function dispatchRequest(
|
|
2177
|
-
throwIfCancellationRequested(
|
|
2178
|
-
|
|
2179
|
-
|
|
2180
|
-
|
|
2181
|
-
|
|
2177
|
+
function dispatchRequest(config2) {
|
|
2178
|
+
throwIfCancellationRequested(config2);
|
|
2179
|
+
config2.headers = AxiosHeaders$1.from(config2.headers);
|
|
2180
|
+
config2.data = transformData.call(
|
|
2181
|
+
config2,
|
|
2182
|
+
config2.transformRequest
|
|
2182
2183
|
);
|
|
2183
|
-
if (["post", "put", "patch"].indexOf(
|
|
2184
|
-
|
|
2184
|
+
if (["post", "put", "patch"].indexOf(config2.method) !== -1) {
|
|
2185
|
+
config2.headers.setContentType("application/x-www-form-urlencoded", false);
|
|
2185
2186
|
}
|
|
2186
|
-
const adapter = adapters.getAdapter(
|
|
2187
|
-
return adapter(
|
|
2188
|
-
throwIfCancellationRequested(
|
|
2187
|
+
const adapter = adapters.getAdapter(config2.adapter || defaults.adapter, config2);
|
|
2188
|
+
return adapter(config2).then(function onAdapterResolution(response) {
|
|
2189
|
+
throwIfCancellationRequested(config2);
|
|
2189
2190
|
response.data = transformData.call(
|
|
2190
|
-
|
|
2191
|
-
|
|
2191
|
+
config2,
|
|
2192
|
+
config2.transformResponse,
|
|
2192
2193
|
response
|
|
2193
2194
|
);
|
|
2194
2195
|
response.headers = AxiosHeaders$1.from(response.headers);
|
|
2195
2196
|
return response;
|
|
2196
2197
|
}, function onAdapterRejection(reason) {
|
|
2197
2198
|
if (!isCancel$1(reason)) {
|
|
2198
|
-
throwIfCancellationRequested(
|
|
2199
|
+
throwIfCancellationRequested(config2);
|
|
2199
2200
|
if (reason && reason.response) {
|
|
2200
2201
|
reason.response.data = transformData.call(
|
|
2201
|
-
|
|
2202
|
-
|
|
2202
|
+
config2,
|
|
2203
|
+
config2.transformResponse,
|
|
2203
2204
|
reason.response
|
|
2204
2205
|
);
|
|
2205
2206
|
reason.response.headers = AxiosHeaders$1.from(reason.response.headers);
|
|
@@ -2267,11 +2268,11 @@ function assertOptions(options, schema, allowUnknown) {
|
|
|
2267
2268
|
}
|
|
2268
2269
|
}
|
|
2269
2270
|
}
|
|
2270
|
-
const validator = {
|
|
2271
|
+
const validator$1 = {
|
|
2271
2272
|
assertOptions,
|
|
2272
2273
|
validators: validators$1
|
|
2273
2274
|
};
|
|
2274
|
-
const validators = validator.validators;
|
|
2275
|
+
const validators = validator$1.validators;
|
|
2275
2276
|
let Axios$1 = class Axios {
|
|
2276
2277
|
constructor(instanceConfig) {
|
|
2277
2278
|
this.defaults = instanceConfig || {};
|
|
@@ -2288,9 +2289,9 @@ let Axios$1 = class Axios {
|
|
|
2288
2289
|
*
|
|
2289
2290
|
* @returns {Promise} The Promise to be fulfilled
|
|
2290
2291
|
*/
|
|
2291
|
-
async request(configOrUrl,
|
|
2292
|
+
async request(configOrUrl, config2) {
|
|
2292
2293
|
try {
|
|
2293
|
-
return await this._request(configOrUrl,
|
|
2294
|
+
return await this._request(configOrUrl, config2);
|
|
2294
2295
|
} catch (err) {
|
|
2295
2296
|
if (err instanceof Error) {
|
|
2296
2297
|
let dummy = {};
|
|
@@ -2308,17 +2309,17 @@ let Axios$1 = class Axios {
|
|
|
2308
2309
|
throw err;
|
|
2309
2310
|
}
|
|
2310
2311
|
}
|
|
2311
|
-
_request(configOrUrl,
|
|
2312
|
+
_request(configOrUrl, config2) {
|
|
2312
2313
|
if (typeof configOrUrl === "string") {
|
|
2313
|
-
|
|
2314
|
-
|
|
2314
|
+
config2 = config2 || {};
|
|
2315
|
+
config2.url = configOrUrl;
|
|
2315
2316
|
} else {
|
|
2316
|
-
|
|
2317
|
+
config2 = configOrUrl || {};
|
|
2317
2318
|
}
|
|
2318
|
-
|
|
2319
|
-
const { transitional: transitional2, paramsSerializer, headers } =
|
|
2319
|
+
config2 = mergeConfig$1(this.defaults, config2);
|
|
2320
|
+
const { transitional: transitional2, paramsSerializer, headers } = config2;
|
|
2320
2321
|
if (transitional2 !== void 0) {
|
|
2321
|
-
validator.assertOptions(transitional2, {
|
|
2322
|
+
validator$1.assertOptions(transitional2, {
|
|
2322
2323
|
silentJSONParsing: validators.transitional(validators.boolean),
|
|
2323
2324
|
forcedJSONParsing: validators.transitional(validators.boolean),
|
|
2324
2325
|
clarifyTimeoutError: validators.transitional(validators.boolean)
|
|
@@ -2326,30 +2327,30 @@ let Axios$1 = class Axios {
|
|
|
2326
2327
|
}
|
|
2327
2328
|
if (paramsSerializer != null) {
|
|
2328
2329
|
if (utils$1.isFunction(paramsSerializer)) {
|
|
2329
|
-
|
|
2330
|
+
config2.paramsSerializer = {
|
|
2330
2331
|
serialize: paramsSerializer
|
|
2331
2332
|
};
|
|
2332
2333
|
} else {
|
|
2333
|
-
validator.assertOptions(paramsSerializer, {
|
|
2334
|
+
validator$1.assertOptions(paramsSerializer, {
|
|
2334
2335
|
encode: validators.function,
|
|
2335
2336
|
serialize: validators.function
|
|
2336
2337
|
}, true);
|
|
2337
2338
|
}
|
|
2338
2339
|
}
|
|
2339
|
-
if (
|
|
2340
|
+
if (config2.allowAbsoluteUrls !== void 0) ;
|
|
2340
2341
|
else if (this.defaults.allowAbsoluteUrls !== void 0) {
|
|
2341
|
-
|
|
2342
|
+
config2.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls;
|
|
2342
2343
|
} else {
|
|
2343
|
-
|
|
2344
|
+
config2.allowAbsoluteUrls = true;
|
|
2344
2345
|
}
|
|
2345
|
-
validator.assertOptions(
|
|
2346
|
+
validator$1.assertOptions(config2, {
|
|
2346
2347
|
baseUrl: validators.spelling("baseURL"),
|
|
2347
2348
|
withXsrfToken: validators.spelling("withXSRFToken")
|
|
2348
2349
|
}, true);
|
|
2349
|
-
|
|
2350
|
+
config2.method = (config2.method || this.defaults.method || "get").toLowerCase();
|
|
2350
2351
|
let contextHeaders = headers && utils$1.merge(
|
|
2351
2352
|
headers.common,
|
|
2352
|
-
headers[
|
|
2353
|
+
headers[config2.method]
|
|
2353
2354
|
);
|
|
2354
2355
|
headers && utils$1.forEach(
|
|
2355
2356
|
["delete", "get", "head", "post", "put", "patch", "common"],
|
|
@@ -2357,11 +2358,11 @@ let Axios$1 = class Axios {
|
|
|
2357
2358
|
delete headers[method];
|
|
2358
2359
|
}
|
|
2359
2360
|
);
|
|
2360
|
-
|
|
2361
|
+
config2.headers = AxiosHeaders$1.concat(contextHeaders, headers);
|
|
2361
2362
|
const requestInterceptorChain = [];
|
|
2362
2363
|
let synchronousRequestInterceptors = true;
|
|
2363
2364
|
this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {
|
|
2364
|
-
if (typeof interceptor.runWhen === "function" && interceptor.runWhen(
|
|
2365
|
+
if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config2) === false) {
|
|
2365
2366
|
return;
|
|
2366
2367
|
}
|
|
2367
2368
|
synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;
|
|
@@ -2379,14 +2380,14 @@ let Axios$1 = class Axios {
|
|
|
2379
2380
|
chain.unshift(...requestInterceptorChain);
|
|
2380
2381
|
chain.push(...responseInterceptorChain);
|
|
2381
2382
|
len = chain.length;
|
|
2382
|
-
promise = Promise.resolve(
|
|
2383
|
+
promise = Promise.resolve(config2);
|
|
2383
2384
|
while (i < len) {
|
|
2384
2385
|
promise = promise.then(chain[i++], chain[i++]);
|
|
2385
2386
|
}
|
|
2386
2387
|
return promise;
|
|
2387
2388
|
}
|
|
2388
2389
|
len = requestInterceptorChain.length;
|
|
2389
|
-
let newConfig =
|
|
2390
|
+
let newConfig = config2;
|
|
2390
2391
|
while (i < len) {
|
|
2391
2392
|
const onFulfilled = requestInterceptorChain[i++];
|
|
2392
2393
|
const onRejected = requestInterceptorChain[i++];
|
|
@@ -2409,25 +2410,25 @@ let Axios$1 = class Axios {
|
|
|
2409
2410
|
}
|
|
2410
2411
|
return promise;
|
|
2411
2412
|
}
|
|
2412
|
-
getUri(
|
|
2413
|
-
|
|
2414
|
-
const fullPath = buildFullPath(
|
|
2415
|
-
return buildURL(fullPath,
|
|
2413
|
+
getUri(config2) {
|
|
2414
|
+
config2 = mergeConfig$1(this.defaults, config2);
|
|
2415
|
+
const fullPath = buildFullPath(config2.baseURL, config2.url, config2.allowAbsoluteUrls);
|
|
2416
|
+
return buildURL(fullPath, config2.params, config2.paramsSerializer);
|
|
2416
2417
|
}
|
|
2417
2418
|
};
|
|
2418
2419
|
utils$1.forEach(["delete", "get", "head", "options"], function forEachMethodNoData(method) {
|
|
2419
|
-
Axios$1.prototype[method] = function(url2,
|
|
2420
|
-
return this.request(mergeConfig$1(
|
|
2420
|
+
Axios$1.prototype[method] = function(url2, config2) {
|
|
2421
|
+
return this.request(mergeConfig$1(config2 || {}, {
|
|
2421
2422
|
method,
|
|
2422
2423
|
url: url2,
|
|
2423
|
-
data: (
|
|
2424
|
+
data: (config2 || {}).data
|
|
2424
2425
|
}));
|
|
2425
2426
|
};
|
|
2426
2427
|
});
|
|
2427
2428
|
utils$1.forEach(["post", "put", "patch"], function forEachMethodWithData(method) {
|
|
2428
2429
|
function generateHTTPMethod(isForm) {
|
|
2429
|
-
return function httpMethod(url2, data,
|
|
2430
|
-
return this.request(mergeConfig$1(
|
|
2430
|
+
return function httpMethod(url2, data, config2) {
|
|
2431
|
+
return this.request(mergeConfig$1(config2 || {}, {
|
|
2431
2432
|
method,
|
|
2432
2433
|
headers: isForm ? {
|
|
2433
2434
|
"Content-Type": "multipart/form-data"
|
|
@@ -2469,11 +2470,11 @@ let CancelToken$1 = class CancelToken {
|
|
|
2469
2470
|
};
|
|
2470
2471
|
return promise;
|
|
2471
2472
|
};
|
|
2472
|
-
executor(function cancel(message,
|
|
2473
|
+
executor(function cancel(message, config2, request) {
|
|
2473
2474
|
if (token.reason) {
|
|
2474
2475
|
return;
|
|
2475
2476
|
}
|
|
2476
|
-
token.reason = new CanceledError$1(message,
|
|
2477
|
+
token.reason = new CanceledError$1(message, config2, request);
|
|
2477
2478
|
resolvePromise(token.reason);
|
|
2478
2479
|
});
|
|
2479
2480
|
}
|
|
@@ -3354,12 +3355,12 @@ const axiosRequest = axios.create({
|
|
|
3354
3355
|
headers: { "Content-Type": "application/json", "X-CSRF-TOKEN": "CSRF-Token" },
|
|
3355
3356
|
withCredentials: true
|
|
3356
3357
|
});
|
|
3357
|
-
axiosRequest.interceptors.request.use(async (
|
|
3358
|
+
axiosRequest.interceptors.request.use(async (config2) => {
|
|
3358
3359
|
const { userUnitPositionId, accessToken } = store.getState().account;
|
|
3359
|
-
if (accessToken)
|
|
3360
|
+
if (accessToken) config2.headers.Authorization = `Bearer ${accessToken}`;
|
|
3360
3361
|
if (userUnitPositionId)
|
|
3361
|
-
|
|
3362
|
-
return
|
|
3362
|
+
config2.headers["userUnitPositionId"] = userUnitPositionId;
|
|
3363
|
+
return config2;
|
|
3363
3364
|
});
|
|
3364
3365
|
let refreshingToken = null;
|
|
3365
3366
|
axiosRequest.interceptors.response.use(
|
|
@@ -4854,12 +4855,12 @@ const ERROR_FACTORY$2 = new ErrorFactory("app", "Firebase", ERRORS);
|
|
|
4854
4855
|
* limitations under the License.
|
|
4855
4856
|
*/
|
|
4856
4857
|
class FirebaseAppImpl {
|
|
4857
|
-
constructor(options,
|
|
4858
|
+
constructor(options, config2, container) {
|
|
4858
4859
|
this._isDeleted = false;
|
|
4859
4860
|
this._options = { ...options };
|
|
4860
|
-
this._config = { ...
|
|
4861
|
-
this._name =
|
|
4862
|
-
this._automaticDataCollectionEnabled =
|
|
4861
|
+
this._config = { ...config2 };
|
|
4862
|
+
this._name = config2.name;
|
|
4863
|
+
this._automaticDataCollectionEnabled = config2.automaticDataCollectionEnabled;
|
|
4863
4864
|
this._container = container;
|
|
4864
4865
|
this.container.addComponent(new Component(
|
|
4865
4866
|
"app",
|
|
@@ -4913,12 +4914,12 @@ function initializeApp(_options, rawConfig = {}) {
|
|
|
4913
4914
|
const name3 = rawConfig;
|
|
4914
4915
|
rawConfig = { name: name3 };
|
|
4915
4916
|
}
|
|
4916
|
-
const
|
|
4917
|
+
const config2 = {
|
|
4917
4918
|
name: DEFAULT_ENTRY_NAME,
|
|
4918
4919
|
automaticDataCollectionEnabled: true,
|
|
4919
4920
|
...rawConfig
|
|
4920
4921
|
};
|
|
4921
|
-
const name2 =
|
|
4922
|
+
const name2 = config2.name;
|
|
4922
4923
|
if (typeof name2 !== "string" || !name2) {
|
|
4923
4924
|
throw ERROR_FACTORY$2.create("bad-app-name", {
|
|
4924
4925
|
appName: String(name2)
|
|
@@ -4933,7 +4934,7 @@ function initializeApp(_options, rawConfig = {}) {
|
|
|
4933
4934
|
}
|
|
4934
4935
|
const existingApp = _apps.get(name2);
|
|
4935
4936
|
if (existingApp) {
|
|
4936
|
-
if (deepEqual(options, existingApp.options) && deepEqual(
|
|
4937
|
+
if (deepEqual(options, existingApp.options) && deepEqual(config2, existingApp.config)) {
|
|
4937
4938
|
return existingApp;
|
|
4938
4939
|
} else {
|
|
4939
4940
|
throw ERROR_FACTORY$2.create("duplicate-app", { appName: name2 });
|
|
@@ -4943,7 +4944,7 @@ function initializeApp(_options, rawConfig = {}) {
|
|
|
4943
4944
|
for (const component of _components.values()) {
|
|
4944
4945
|
container.addComponent(component);
|
|
4945
4946
|
}
|
|
4946
|
-
const newApp = new FirebaseAppImpl(options,
|
|
4947
|
+
const newApp = new FirebaseAppImpl(options, config2, container);
|
|
4947
4948
|
_apps.set(name2, newApp);
|
|
4948
4949
|
return newApp;
|
|
4949
4950
|
}
|
|
@@ -9539,8 +9540,8 @@ class Socket2 extends Emitter {
|
|
|
9539
9540
|
*/
|
|
9540
9541
|
_registerAckCallback(id2, ack) {
|
|
9541
9542
|
var _a;
|
|
9542
|
-
const
|
|
9543
|
-
if (
|
|
9543
|
+
const timeout2 = (_a = this.flags.timeout) !== null && _a !== void 0 ? _a : this._opts.ackTimeout;
|
|
9544
|
+
if (timeout2 === void 0) {
|
|
9544
9545
|
this.acks[id2] = ack;
|
|
9545
9546
|
return;
|
|
9546
9547
|
}
|
|
@@ -9552,7 +9553,7 @@ class Socket2 extends Emitter {
|
|
|
9552
9553
|
}
|
|
9553
9554
|
}
|
|
9554
9555
|
ack.call(this, new Error("operation has timed out"));
|
|
9555
|
-
},
|
|
9556
|
+
}, timeout2);
|
|
9556
9557
|
const fn = (...args) => {
|
|
9557
9558
|
this.io.clearTimeoutFn(timer);
|
|
9558
9559
|
ack.apply(this, args);
|
|
@@ -9950,8 +9951,8 @@ class Socket2 extends Emitter {
|
|
|
9950
9951
|
*
|
|
9951
9952
|
* @returns self
|
|
9952
9953
|
*/
|
|
9953
|
-
timeout(
|
|
9954
|
-
this.flags.timeout =
|
|
9954
|
+
timeout(timeout2) {
|
|
9955
|
+
this.flags.timeout = timeout2;
|
|
9955
9956
|
return this;
|
|
9956
9957
|
}
|
|
9957
9958
|
/**
|
|
@@ -10272,12 +10273,12 @@ class Manager extends Emitter {
|
|
|
10272
10273
|
};
|
|
10273
10274
|
const errorSub = on(socket, "error", onError);
|
|
10274
10275
|
if (false !== this._timeout) {
|
|
10275
|
-
const
|
|
10276
|
+
const timeout2 = this._timeout;
|
|
10276
10277
|
const timer = this.setTimeoutFn(() => {
|
|
10277
10278
|
openSubDestroy();
|
|
10278
10279
|
onError(new Error("timeout"));
|
|
10279
10280
|
socket.close();
|
|
10280
|
-
},
|
|
10281
|
+
}, timeout2);
|
|
10281
10282
|
if (this.opts.autoUnref) {
|
|
10282
10283
|
timer.unref();
|
|
10283
10284
|
}
|
|
@@ -13825,6 +13826,214 @@ function composeClasses(slots, getUtilityClass, classes = void 0) {
|
|
|
13825
13826
|
}
|
|
13826
13827
|
return output;
|
|
13827
13828
|
}
|
|
13829
|
+
const useEnhancedEffect = typeof window !== "undefined" ? React__namespace.useLayoutEffect : React__namespace.useEffect;
|
|
13830
|
+
function useEventCallback$1(fn) {
|
|
13831
|
+
const ref = React__namespace.useRef(fn);
|
|
13832
|
+
useEnhancedEffect(() => {
|
|
13833
|
+
ref.current = fn;
|
|
13834
|
+
});
|
|
13835
|
+
return React__namespace.useRef((...args) => (
|
|
13836
|
+
// @ts-expect-error hide `this`
|
|
13837
|
+
(0, ref.current)(...args)
|
|
13838
|
+
)).current;
|
|
13839
|
+
}
|
|
13840
|
+
const UNINITIALIZED = {};
|
|
13841
|
+
function useLazyRef(init, initArg) {
|
|
13842
|
+
const ref = React__namespace.useRef(UNINITIALIZED);
|
|
13843
|
+
if (ref.current === UNINITIALIZED) {
|
|
13844
|
+
ref.current = init(initArg);
|
|
13845
|
+
}
|
|
13846
|
+
return ref;
|
|
13847
|
+
}
|
|
13848
|
+
const EMPTY = [];
|
|
13849
|
+
function useOnMount(fn) {
|
|
13850
|
+
React__namespace.useEffect(fn, EMPTY);
|
|
13851
|
+
}
|
|
13852
|
+
class Timeout {
|
|
13853
|
+
static create() {
|
|
13854
|
+
return new Timeout();
|
|
13855
|
+
}
|
|
13856
|
+
currentId = null;
|
|
13857
|
+
/**
|
|
13858
|
+
* Executes `fn` after `delay`, clearing any previously scheduled call.
|
|
13859
|
+
*/
|
|
13860
|
+
start(delay2, fn) {
|
|
13861
|
+
this.clear();
|
|
13862
|
+
this.currentId = setTimeout(() => {
|
|
13863
|
+
this.currentId = null;
|
|
13864
|
+
fn();
|
|
13865
|
+
}, delay2);
|
|
13866
|
+
}
|
|
13867
|
+
clear = () => {
|
|
13868
|
+
if (this.currentId !== null) {
|
|
13869
|
+
clearTimeout(this.currentId);
|
|
13870
|
+
this.currentId = null;
|
|
13871
|
+
}
|
|
13872
|
+
};
|
|
13873
|
+
disposeEffect = () => {
|
|
13874
|
+
return this.clear;
|
|
13875
|
+
};
|
|
13876
|
+
}
|
|
13877
|
+
function useTimeout() {
|
|
13878
|
+
const timeout2 = useLazyRef(Timeout.create).current;
|
|
13879
|
+
useOnMount(timeout2.disposeEffect);
|
|
13880
|
+
return timeout2;
|
|
13881
|
+
}
|
|
13882
|
+
function extractEventHandlers(object2, excludeKeys = []) {
|
|
13883
|
+
if (object2 === void 0) {
|
|
13884
|
+
return {};
|
|
13885
|
+
}
|
|
13886
|
+
const result = {};
|
|
13887
|
+
Object.keys(object2).filter((prop) => prop.match(/^on[A-Z]/) && typeof object2[prop] === "function" && !excludeKeys.includes(prop)).forEach((prop) => {
|
|
13888
|
+
result[prop] = object2[prop];
|
|
13889
|
+
});
|
|
13890
|
+
return result;
|
|
13891
|
+
}
|
|
13892
|
+
function useSnackbar$1(parameters = {}) {
|
|
13893
|
+
const {
|
|
13894
|
+
autoHideDuration = null,
|
|
13895
|
+
disableWindowBlurListener = false,
|
|
13896
|
+
onClose,
|
|
13897
|
+
open,
|
|
13898
|
+
resumeHideDuration
|
|
13899
|
+
} = parameters;
|
|
13900
|
+
const timerAutoHide = useTimeout();
|
|
13901
|
+
React__namespace.useEffect(() => {
|
|
13902
|
+
if (!open) {
|
|
13903
|
+
return void 0;
|
|
13904
|
+
}
|
|
13905
|
+
function handleKeyDown(nativeEvent) {
|
|
13906
|
+
if (!nativeEvent.defaultPrevented) {
|
|
13907
|
+
if (nativeEvent.key === "Escape") {
|
|
13908
|
+
onClose?.(nativeEvent, "escapeKeyDown");
|
|
13909
|
+
}
|
|
13910
|
+
}
|
|
13911
|
+
}
|
|
13912
|
+
document.addEventListener("keydown", handleKeyDown);
|
|
13913
|
+
return () => {
|
|
13914
|
+
document.removeEventListener("keydown", handleKeyDown);
|
|
13915
|
+
};
|
|
13916
|
+
}, [open, onClose]);
|
|
13917
|
+
const handleClose = useEventCallback$1((event, reason) => {
|
|
13918
|
+
onClose?.(event, reason);
|
|
13919
|
+
});
|
|
13920
|
+
const setAutoHideTimer = useEventCallback$1((autoHideDurationParam) => {
|
|
13921
|
+
if (!onClose || autoHideDurationParam == null) {
|
|
13922
|
+
return;
|
|
13923
|
+
}
|
|
13924
|
+
timerAutoHide.start(autoHideDurationParam, () => {
|
|
13925
|
+
handleClose(null, "timeout");
|
|
13926
|
+
});
|
|
13927
|
+
});
|
|
13928
|
+
React__namespace.useEffect(() => {
|
|
13929
|
+
if (open) {
|
|
13930
|
+
setAutoHideTimer(autoHideDuration);
|
|
13931
|
+
}
|
|
13932
|
+
return timerAutoHide.clear;
|
|
13933
|
+
}, [open, autoHideDuration, setAutoHideTimer, timerAutoHide]);
|
|
13934
|
+
const handleClickAway = (event) => {
|
|
13935
|
+
onClose?.(event, "clickaway");
|
|
13936
|
+
};
|
|
13937
|
+
const handlePause = timerAutoHide.clear;
|
|
13938
|
+
const handleResume = React__namespace.useCallback(() => {
|
|
13939
|
+
if (autoHideDuration != null) {
|
|
13940
|
+
setAutoHideTimer(resumeHideDuration != null ? resumeHideDuration : autoHideDuration * 0.5);
|
|
13941
|
+
}
|
|
13942
|
+
}, [autoHideDuration, resumeHideDuration, setAutoHideTimer]);
|
|
13943
|
+
const createHandleBlur = (otherHandlers) => (event) => {
|
|
13944
|
+
const onBlurCallback = otherHandlers.onBlur;
|
|
13945
|
+
onBlurCallback?.(event);
|
|
13946
|
+
handleResume();
|
|
13947
|
+
};
|
|
13948
|
+
const createHandleFocus = (otherHandlers) => (event) => {
|
|
13949
|
+
const onFocusCallback = otherHandlers.onFocus;
|
|
13950
|
+
onFocusCallback?.(event);
|
|
13951
|
+
handlePause();
|
|
13952
|
+
};
|
|
13953
|
+
const createMouseEnter = (otherHandlers) => (event) => {
|
|
13954
|
+
const onMouseEnterCallback = otherHandlers.onMouseEnter;
|
|
13955
|
+
onMouseEnterCallback?.(event);
|
|
13956
|
+
handlePause();
|
|
13957
|
+
};
|
|
13958
|
+
const createMouseLeave = (otherHandlers) => (event) => {
|
|
13959
|
+
const onMouseLeaveCallback = otherHandlers.onMouseLeave;
|
|
13960
|
+
onMouseLeaveCallback?.(event);
|
|
13961
|
+
handleResume();
|
|
13962
|
+
};
|
|
13963
|
+
React__namespace.useEffect(() => {
|
|
13964
|
+
if (!disableWindowBlurListener && open) {
|
|
13965
|
+
window.addEventListener("focus", handleResume);
|
|
13966
|
+
window.addEventListener("blur", handlePause);
|
|
13967
|
+
return () => {
|
|
13968
|
+
window.removeEventListener("focus", handleResume);
|
|
13969
|
+
window.removeEventListener("blur", handlePause);
|
|
13970
|
+
};
|
|
13971
|
+
}
|
|
13972
|
+
return void 0;
|
|
13973
|
+
}, [disableWindowBlurListener, open, handleResume, handlePause]);
|
|
13974
|
+
const getRootProps = (externalProps = {}) => {
|
|
13975
|
+
const externalEventHandlers = {
|
|
13976
|
+
...extractEventHandlers(parameters),
|
|
13977
|
+
...extractEventHandlers(externalProps)
|
|
13978
|
+
};
|
|
13979
|
+
return {
|
|
13980
|
+
// ClickAwayListener adds an `onClick` prop which results in the alert not being announced.
|
|
13981
|
+
// See https://github.com/mui/material-ui/issues/29080
|
|
13982
|
+
role: "presentation",
|
|
13983
|
+
...externalProps,
|
|
13984
|
+
...externalEventHandlers,
|
|
13985
|
+
onBlur: createHandleBlur(externalEventHandlers),
|
|
13986
|
+
onFocus: createHandleFocus(externalEventHandlers),
|
|
13987
|
+
onMouseEnter: createMouseEnter(externalEventHandlers),
|
|
13988
|
+
onMouseLeave: createMouseLeave(externalEventHandlers)
|
|
13989
|
+
};
|
|
13990
|
+
};
|
|
13991
|
+
return {
|
|
13992
|
+
getRootProps,
|
|
13993
|
+
onClickAway: handleClickAway
|
|
13994
|
+
};
|
|
13995
|
+
}
|
|
13996
|
+
function ownerDocument(node) {
|
|
13997
|
+
return node && node.ownerDocument || document;
|
|
13998
|
+
}
|
|
13999
|
+
function useForkRef(...refs) {
|
|
14000
|
+
const cleanupRef = React__namespace.useRef(void 0);
|
|
14001
|
+
const refEffect = React__namespace.useCallback((instance) => {
|
|
14002
|
+
const cleanups = refs.map((ref) => {
|
|
14003
|
+
if (ref == null) {
|
|
14004
|
+
return null;
|
|
14005
|
+
}
|
|
14006
|
+
if (typeof ref === "function") {
|
|
14007
|
+
const refCallback = ref;
|
|
14008
|
+
const refCleanup = refCallback(instance);
|
|
14009
|
+
return typeof refCleanup === "function" ? refCleanup : () => {
|
|
14010
|
+
refCallback(null);
|
|
14011
|
+
};
|
|
14012
|
+
}
|
|
14013
|
+
ref.current = instance;
|
|
14014
|
+
return () => {
|
|
14015
|
+
ref.current = null;
|
|
14016
|
+
};
|
|
14017
|
+
});
|
|
14018
|
+
return () => {
|
|
14019
|
+
cleanups.forEach((refCleanup) => refCleanup?.());
|
|
14020
|
+
};
|
|
14021
|
+
}, refs);
|
|
14022
|
+
return React__namespace.useMemo(() => {
|
|
14023
|
+
if (refs.every((ref) => ref == null)) {
|
|
14024
|
+
return null;
|
|
14025
|
+
}
|
|
14026
|
+
return (value2) => {
|
|
14027
|
+
if (cleanupRef.current) {
|
|
14028
|
+
cleanupRef.current();
|
|
14029
|
+
cleanupRef.current = void 0;
|
|
14030
|
+
}
|
|
14031
|
+
if (value2 != null) {
|
|
14032
|
+
cleanupRef.current = refEffect(value2);
|
|
14033
|
+
}
|
|
14034
|
+
};
|
|
14035
|
+
}, refs);
|
|
14036
|
+
}
|
|
13828
14037
|
function chainPropTypes(propType1, propType2) {
|
|
13829
14038
|
if (process.env.NODE_ENV === "production") {
|
|
13830
14039
|
return () => null;
|
|
@@ -13833,6 +14042,188 @@ function chainPropTypes(propType1, propType2) {
|
|
|
13833
14042
|
return propType1(...args) || propType2(...args);
|
|
13834
14043
|
};
|
|
13835
14044
|
}
|
|
14045
|
+
function isClassComponent(elementType) {
|
|
14046
|
+
const {
|
|
14047
|
+
prototype: prototype2 = {}
|
|
14048
|
+
} = elementType;
|
|
14049
|
+
return Boolean(prototype2.isReactComponent);
|
|
14050
|
+
}
|
|
14051
|
+
function acceptingRef(props, propName, componentName, location2, propFullName) {
|
|
14052
|
+
const element = props[propName];
|
|
14053
|
+
const safePropName = propFullName || propName;
|
|
14054
|
+
if (element == null || // When server-side rendering React doesn't warn either.
|
|
14055
|
+
// This is not an accurate check for SSR.
|
|
14056
|
+
// This is only in place for Emotion compat.
|
|
14057
|
+
// TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved.
|
|
14058
|
+
typeof window === "undefined") {
|
|
14059
|
+
return null;
|
|
14060
|
+
}
|
|
14061
|
+
let warningHint;
|
|
14062
|
+
const elementType = element.type;
|
|
14063
|
+
if (typeof elementType === "function" && !isClassComponent(elementType)) {
|
|
14064
|
+
warningHint = "Did you accidentally use a plain function component for an element instead?";
|
|
14065
|
+
}
|
|
14066
|
+
if (warningHint !== void 0) {
|
|
14067
|
+
return new Error(`Invalid ${location2} \`${safePropName}\` supplied to \`${componentName}\`. Expected an element that can hold a ref. ${warningHint} For more information see https://mui.com/r/caveat-with-refs-guide`);
|
|
14068
|
+
}
|
|
14069
|
+
return null;
|
|
14070
|
+
}
|
|
14071
|
+
const elementAcceptingRef = chainPropTypes(PropTypes.element, acceptingRef);
|
|
14072
|
+
elementAcceptingRef.isRequired = chainPropTypes(PropTypes.element.isRequired, acceptingRef);
|
|
14073
|
+
const specialProperty = "exact-prop: ";
|
|
14074
|
+
function exactProp(propTypes2) {
|
|
14075
|
+
if (process.env.NODE_ENV === "production") {
|
|
14076
|
+
return propTypes2;
|
|
14077
|
+
}
|
|
14078
|
+
return {
|
|
14079
|
+
...propTypes2,
|
|
14080
|
+
[specialProperty]: (props) => {
|
|
14081
|
+
const unsupportedProps = Object.keys(props).filter((prop) => !propTypes2.hasOwnProperty(prop));
|
|
14082
|
+
if (unsupportedProps.length > 0) {
|
|
14083
|
+
return new Error(`The following props are not supported: ${unsupportedProps.map((prop) => `\`${prop}\``).join(", ")}. Please remove them.`);
|
|
14084
|
+
}
|
|
14085
|
+
return null;
|
|
14086
|
+
}
|
|
14087
|
+
};
|
|
14088
|
+
}
|
|
14089
|
+
function getReactElementRef(element) {
|
|
14090
|
+
if (parseInt(React__namespace.version, 10) >= 19) {
|
|
14091
|
+
return element?.props?.ref || null;
|
|
14092
|
+
}
|
|
14093
|
+
return element?.ref || null;
|
|
14094
|
+
}
|
|
14095
|
+
function mapEventPropToEvent(eventProp) {
|
|
14096
|
+
return eventProp.substring(2).toLowerCase();
|
|
14097
|
+
}
|
|
14098
|
+
function clickedRootScrollbar(event, doc) {
|
|
14099
|
+
return doc.documentElement.clientWidth < event.clientX || doc.documentElement.clientHeight < event.clientY;
|
|
14100
|
+
}
|
|
14101
|
+
function ClickAwayListener(props) {
|
|
14102
|
+
const {
|
|
14103
|
+
children,
|
|
14104
|
+
disableReactTree = false,
|
|
14105
|
+
mouseEvent = "onClick",
|
|
14106
|
+
onClickAway,
|
|
14107
|
+
touchEvent = "onTouchEnd"
|
|
14108
|
+
} = props;
|
|
14109
|
+
const movedRef = React__namespace.useRef(false);
|
|
14110
|
+
const nodeRef = React__namespace.useRef(null);
|
|
14111
|
+
const activatedRef = React__namespace.useRef(false);
|
|
14112
|
+
const syntheticEventRef = React__namespace.useRef(false);
|
|
14113
|
+
React__namespace.useEffect(() => {
|
|
14114
|
+
setTimeout(() => {
|
|
14115
|
+
activatedRef.current = true;
|
|
14116
|
+
}, 0);
|
|
14117
|
+
return () => {
|
|
14118
|
+
activatedRef.current = false;
|
|
14119
|
+
};
|
|
14120
|
+
}, []);
|
|
14121
|
+
const handleRef = useForkRef(getReactElementRef(children), nodeRef);
|
|
14122
|
+
const handleClickAway = useEventCallback$1((event) => {
|
|
14123
|
+
const insideReactTree = syntheticEventRef.current;
|
|
14124
|
+
syntheticEventRef.current = false;
|
|
14125
|
+
const doc = ownerDocument(nodeRef.current);
|
|
14126
|
+
if (!activatedRef.current || !nodeRef.current || "clientX" in event && clickedRootScrollbar(event, doc)) {
|
|
14127
|
+
return;
|
|
14128
|
+
}
|
|
14129
|
+
if (movedRef.current) {
|
|
14130
|
+
movedRef.current = false;
|
|
14131
|
+
return;
|
|
14132
|
+
}
|
|
14133
|
+
let insideDOM;
|
|
14134
|
+
if (event.composedPath) {
|
|
14135
|
+
insideDOM = event.composedPath().includes(nodeRef.current);
|
|
14136
|
+
} else {
|
|
14137
|
+
insideDOM = !doc.documentElement.contains(
|
|
14138
|
+
// @ts-expect-error returns `false` as intended when not dispatched from a Node
|
|
14139
|
+
event.target
|
|
14140
|
+
) || nodeRef.current.contains(
|
|
14141
|
+
// @ts-expect-error returns `false` as intended when not dispatched from a Node
|
|
14142
|
+
event.target
|
|
14143
|
+
);
|
|
14144
|
+
}
|
|
14145
|
+
if (!insideDOM && (disableReactTree || !insideReactTree)) {
|
|
14146
|
+
onClickAway(event);
|
|
14147
|
+
}
|
|
14148
|
+
});
|
|
14149
|
+
const createHandleSynthetic = (handlerName) => (event) => {
|
|
14150
|
+
syntheticEventRef.current = true;
|
|
14151
|
+
const childrenPropsHandler = children.props[handlerName];
|
|
14152
|
+
if (childrenPropsHandler) {
|
|
14153
|
+
childrenPropsHandler(event);
|
|
14154
|
+
}
|
|
14155
|
+
};
|
|
14156
|
+
const childrenProps = {
|
|
14157
|
+
ref: handleRef
|
|
14158
|
+
};
|
|
14159
|
+
if (touchEvent !== false) {
|
|
14160
|
+
childrenProps[touchEvent] = createHandleSynthetic(touchEvent);
|
|
14161
|
+
}
|
|
14162
|
+
React__namespace.useEffect(() => {
|
|
14163
|
+
if (touchEvent !== false) {
|
|
14164
|
+
const mappedTouchEvent = mapEventPropToEvent(touchEvent);
|
|
14165
|
+
const doc = ownerDocument(nodeRef.current);
|
|
14166
|
+
const handleTouchMove = () => {
|
|
14167
|
+
movedRef.current = true;
|
|
14168
|
+
};
|
|
14169
|
+
doc.addEventListener(mappedTouchEvent, handleClickAway);
|
|
14170
|
+
doc.addEventListener("touchmove", handleTouchMove);
|
|
14171
|
+
return () => {
|
|
14172
|
+
doc.removeEventListener(mappedTouchEvent, handleClickAway);
|
|
14173
|
+
doc.removeEventListener("touchmove", handleTouchMove);
|
|
14174
|
+
};
|
|
14175
|
+
}
|
|
14176
|
+
return void 0;
|
|
14177
|
+
}, [handleClickAway, touchEvent]);
|
|
14178
|
+
if (mouseEvent !== false) {
|
|
14179
|
+
childrenProps[mouseEvent] = createHandleSynthetic(mouseEvent);
|
|
14180
|
+
}
|
|
14181
|
+
React__namespace.useEffect(() => {
|
|
14182
|
+
if (mouseEvent !== false) {
|
|
14183
|
+
const mappedMouseEvent = mapEventPropToEvent(mouseEvent);
|
|
14184
|
+
const doc = ownerDocument(nodeRef.current);
|
|
14185
|
+
doc.addEventListener(mappedMouseEvent, handleClickAway);
|
|
14186
|
+
return () => {
|
|
14187
|
+
doc.removeEventListener(mappedMouseEvent, handleClickAway);
|
|
14188
|
+
};
|
|
14189
|
+
}
|
|
14190
|
+
return void 0;
|
|
14191
|
+
}, [handleClickAway, mouseEvent]);
|
|
14192
|
+
return /* @__PURE__ */ React__namespace.cloneElement(children, childrenProps);
|
|
14193
|
+
}
|
|
14194
|
+
process.env.NODE_ENV !== "production" ? ClickAwayListener.propTypes = {
|
|
14195
|
+
// ┌────────────────────────────── Warning ──────────────────────────────┐
|
|
14196
|
+
// │ These PropTypes are generated from the TypeScript type definitions. │
|
|
14197
|
+
// │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
|
|
14198
|
+
// └─────────────────────────────────────────────────────────────────────┘
|
|
14199
|
+
/**
|
|
14200
|
+
* The wrapped element.
|
|
14201
|
+
*/
|
|
14202
|
+
children: elementAcceptingRef.isRequired,
|
|
14203
|
+
/**
|
|
14204
|
+
* If `true`, the React tree is ignored and only the DOM tree is considered.
|
|
14205
|
+
* This prop changes how portaled elements are handled.
|
|
14206
|
+
* @default false
|
|
14207
|
+
*/
|
|
14208
|
+
disableReactTree: PropTypes.bool,
|
|
14209
|
+
/**
|
|
14210
|
+
* The mouse event to listen to. You can disable the listener by providing `false`.
|
|
14211
|
+
* @default 'onClick'
|
|
14212
|
+
*/
|
|
14213
|
+
mouseEvent: PropTypes.oneOf(["onClick", "onMouseDown", "onMouseUp", "onPointerDown", "onPointerUp", false]),
|
|
14214
|
+
/**
|
|
14215
|
+
* Callback fired when a "click away" event is detected.
|
|
14216
|
+
*/
|
|
14217
|
+
onClickAway: PropTypes.func.isRequired,
|
|
14218
|
+
/**
|
|
14219
|
+
* The touch event to listen to. You can disable the listener by providing `false`.
|
|
14220
|
+
* @default 'onTouchEnd'
|
|
14221
|
+
*/
|
|
14222
|
+
touchEvent: PropTypes.oneOf(["onTouchEnd", "onTouchStart", false])
|
|
14223
|
+
} : void 0;
|
|
14224
|
+
if (process.env.NODE_ENV !== "production") {
|
|
14225
|
+
ClickAwayListener["propTypes"] = exactProp(ClickAwayListener.propTypes);
|
|
14226
|
+
}
|
|
13836
14227
|
function formatMuiErrorMessage(code, ...args) {
|
|
13837
14228
|
const url2 = new URL(`https://mui.com/production-error/?code=${code}`);
|
|
13838
14229
|
args.forEach((arg) => url2.searchParams.append("args[]", arg));
|
|
@@ -14461,8 +14852,8 @@ process.env.NODE_ENV !== "production" ? spacingKeys.reduce((obj, key) => {
|
|
|
14461
14852
|
obj[key] = responsivePropType;
|
|
14462
14853
|
return obj;
|
|
14463
14854
|
}, {}) : {};
|
|
14464
|
-
function compose(...
|
|
14465
|
-
const handlers =
|
|
14855
|
+
function compose(...styles2) {
|
|
14856
|
+
const handlers = styles2.reduce((acc, style2) => {
|
|
14466
14857
|
style2.filterProps.forEach((prop) => {
|
|
14467
14858
|
acc[prop] = style2;
|
|
14468
14859
|
});
|
|
@@ -14476,8 +14867,8 @@ function compose(...styles) {
|
|
|
14476
14867
|
return acc;
|
|
14477
14868
|
}, {});
|
|
14478
14869
|
};
|
|
14479
|
-
fn.propTypes = process.env.NODE_ENV !== "production" ?
|
|
14480
|
-
fn.filterProps =
|
|
14870
|
+
fn.propTypes = process.env.NODE_ENV !== "production" ? styles2.reduce((acc, style2) => Object.assign(acc, style2.propTypes), {}) : {};
|
|
14871
|
+
fn.filterProps = styles2.reduce((acc, style2) => acc.concat(style2.filterProps), []);
|
|
14481
14872
|
return fn;
|
|
14482
14873
|
}
|
|
14483
14874
|
function borderTransform(value2) {
|
|
@@ -14970,12 +15361,12 @@ function callIfFn(maybeFn, arg) {
|
|
|
14970
15361
|
return typeof maybeFn === "function" ? maybeFn(arg) : maybeFn;
|
|
14971
15362
|
}
|
|
14972
15363
|
function unstable_createStyleFunctionSx() {
|
|
14973
|
-
function getThemeValue(prop, val, theme,
|
|
15364
|
+
function getThemeValue(prop, val, theme, config2) {
|
|
14974
15365
|
const props = {
|
|
14975
15366
|
[prop]: val,
|
|
14976
15367
|
theme
|
|
14977
15368
|
};
|
|
14978
|
-
const options =
|
|
15369
|
+
const options = config2[prop];
|
|
14979
15370
|
if (!options) {
|
|
14980
15371
|
return {
|
|
14981
15372
|
[prop]: val
|
|
@@ -15022,7 +15413,7 @@ function unstable_createStyleFunctionSx() {
|
|
|
15022
15413
|
if (!sx) {
|
|
15023
15414
|
return null;
|
|
15024
15415
|
}
|
|
15025
|
-
const
|
|
15416
|
+
const config2 = theme.unstable_sxConfig ?? defaultSxConfig;
|
|
15026
15417
|
function traverse(sxInput) {
|
|
15027
15418
|
let sxObject = sxInput;
|
|
15028
15419
|
if (typeof sxInput === "function") {
|
|
@@ -15040,8 +15431,8 @@ function unstable_createStyleFunctionSx() {
|
|
|
15040
15431
|
const value2 = callIfFn(sxObject[styleKey], theme);
|
|
15041
15432
|
if (value2 !== null && value2 !== void 0) {
|
|
15042
15433
|
if (typeof value2 === "object") {
|
|
15043
|
-
if (
|
|
15044
|
-
css = merge(css, getThemeValue(styleKey, value2, theme,
|
|
15434
|
+
if (config2[styleKey]) {
|
|
15435
|
+
css = merge(css, getThemeValue(styleKey, value2, theme, config2));
|
|
15045
15436
|
} else {
|
|
15046
15437
|
const breakpointsValues = handleBreakpoints({
|
|
15047
15438
|
theme
|
|
@@ -15059,7 +15450,7 @@ function unstable_createStyleFunctionSx() {
|
|
|
15059
15450
|
}
|
|
15060
15451
|
}
|
|
15061
15452
|
} else {
|
|
15062
|
-
css = merge(css, getThemeValue(styleKey, value2, theme,
|
|
15453
|
+
css = merge(css, getThemeValue(styleKey, value2, theme, config2));
|
|
15063
15454
|
}
|
|
15064
15455
|
}
|
|
15065
15456
|
});
|
|
@@ -15833,8 +16224,8 @@ function handleInterpolation(mergedProps, registered, interpolation) {
|
|
|
15833
16224
|
next = next.next;
|
|
15834
16225
|
}
|
|
15835
16226
|
}
|
|
15836
|
-
var
|
|
15837
|
-
return
|
|
16227
|
+
var styles2 = serializedStyles.styles + ";";
|
|
16228
|
+
return styles2;
|
|
15838
16229
|
}
|
|
15839
16230
|
return createStringFromObject(mergedProps, registered, interpolation);
|
|
15840
16231
|
}
|
|
@@ -15890,33 +16281,33 @@ function serializeStyles(args, registered, mergedProps) {
|
|
|
15890
16281
|
return args[0];
|
|
15891
16282
|
}
|
|
15892
16283
|
var stringMode = true;
|
|
15893
|
-
var
|
|
16284
|
+
var styles2 = "";
|
|
15894
16285
|
cursor = void 0;
|
|
15895
16286
|
var strings = args[0];
|
|
15896
16287
|
if (strings == null || strings.raw === void 0) {
|
|
15897
16288
|
stringMode = false;
|
|
15898
|
-
|
|
16289
|
+
styles2 += handleInterpolation(mergedProps, registered, strings);
|
|
15899
16290
|
} else {
|
|
15900
16291
|
var asTemplateStringsArr = strings;
|
|
15901
|
-
|
|
16292
|
+
styles2 += asTemplateStringsArr[0];
|
|
15902
16293
|
}
|
|
15903
16294
|
for (var i = 1; i < args.length; i++) {
|
|
15904
|
-
|
|
16295
|
+
styles2 += handleInterpolation(mergedProps, registered, args[i]);
|
|
15905
16296
|
if (stringMode) {
|
|
15906
16297
|
var templateStringsArr = strings;
|
|
15907
|
-
|
|
16298
|
+
styles2 += templateStringsArr[i];
|
|
15908
16299
|
}
|
|
15909
16300
|
}
|
|
15910
16301
|
labelPattern.lastIndex = 0;
|
|
15911
16302
|
var identifierName = "";
|
|
15912
16303
|
var match;
|
|
15913
|
-
while ((match = labelPattern.exec(
|
|
16304
|
+
while ((match = labelPattern.exec(styles2)) !== null) {
|
|
15914
16305
|
identifierName += "-" + match[1];
|
|
15915
16306
|
}
|
|
15916
|
-
var name2 = murmur2(
|
|
16307
|
+
var name2 = murmur2(styles2) + identifierName;
|
|
15917
16308
|
return {
|
|
15918
16309
|
name: name2,
|
|
15919
|
-
styles,
|
|
16310
|
+
styles: styles2,
|
|
15920
16311
|
next: cursor
|
|
15921
16312
|
};
|
|
15922
16313
|
}
|
|
@@ -15930,14 +16321,14 @@ function serializeStyles(args, registered, mergedProps) {
|
|
|
15930
16321
|
function styled$1(tag, options) {
|
|
15931
16322
|
const stylesFactory = emStyled(tag, options);
|
|
15932
16323
|
if (process.env.NODE_ENV !== "production") {
|
|
15933
|
-
return (...
|
|
16324
|
+
return (...styles2) => {
|
|
15934
16325
|
const component = typeof tag === "string" ? `"${tag}"` : "component";
|
|
15935
|
-
if (
|
|
16326
|
+
if (styles2.length === 0) {
|
|
15936
16327
|
console.error([`MUI: Seems like you called \`styled(${component})()\` without a \`style\` argument.`, 'You must provide a `styles` argument: `styled("div")(styleYouForgotToPass)`.'].join("\n"));
|
|
15937
|
-
} else if (
|
|
16328
|
+
} else if (styles2.some((style2) => style2 === void 0)) {
|
|
15938
16329
|
console.error(`MUI: the styled(${component})(...args) API requires all its args to be defined.`);
|
|
15939
16330
|
}
|
|
15940
|
-
return stylesFactory(...
|
|
16331
|
+
return stylesFactory(...styles2);
|
|
15941
16332
|
};
|
|
15942
16333
|
}
|
|
15943
16334
|
return stylesFactory;
|
|
@@ -15948,8 +16339,8 @@ function internal_mutateStyles(tag, processor) {
|
|
|
15948
16339
|
}
|
|
15949
16340
|
}
|
|
15950
16341
|
const wrapper = [];
|
|
15951
|
-
function internal_serializeStyles(
|
|
15952
|
-
wrapper[0] =
|
|
16342
|
+
function internal_serializeStyles(styles2) {
|
|
16343
|
+
wrapper[0] = styles2;
|
|
15953
16344
|
return serializeStyles(wrapper);
|
|
15954
16345
|
}
|
|
15955
16346
|
function r(e) {
|
|
@@ -16033,12 +16424,12 @@ function getThemeProps(params) {
|
|
|
16033
16424
|
if (!theme || !theme.components || !theme.components[name2]) {
|
|
16034
16425
|
return props;
|
|
16035
16426
|
}
|
|
16036
|
-
const
|
|
16037
|
-
if (
|
|
16038
|
-
return resolveProps(
|
|
16427
|
+
const config2 = theme.components[name2];
|
|
16428
|
+
if (config2.defaultProps) {
|
|
16429
|
+
return resolveProps(config2.defaultProps, props, theme.components.mergeClassNameAndStyle);
|
|
16039
16430
|
}
|
|
16040
|
-
if (!
|
|
16041
|
-
return resolveProps(
|
|
16431
|
+
if (!config2.styleOverrides && !config2.variants) {
|
|
16432
|
+
return resolveProps(config2, props, theme.components.mergeClassNameAndStyle);
|
|
16042
16433
|
}
|
|
16043
16434
|
return props;
|
|
16044
16435
|
}
|
|
@@ -16154,7 +16545,7 @@ function createSpacing(spacingInput = 8, transform = createUnarySpacing({
|
|
|
16154
16545
|
spacing.mui = true;
|
|
16155
16546
|
return spacing;
|
|
16156
16547
|
}
|
|
16157
|
-
function applyStyles(key,
|
|
16548
|
+
function applyStyles(key, styles2) {
|
|
16158
16549
|
const theme = this;
|
|
16159
16550
|
if (theme.vars) {
|
|
16160
16551
|
if (!theme.colorSchemes?.[key] || typeof theme.getColorSchemeSelector !== "function") {
|
|
@@ -16162,17 +16553,17 @@ function applyStyles(key, styles) {
|
|
|
16162
16553
|
}
|
|
16163
16554
|
let selector = theme.getColorSchemeSelector(key);
|
|
16164
16555
|
if (selector === "&") {
|
|
16165
|
-
return
|
|
16556
|
+
return styles2;
|
|
16166
16557
|
}
|
|
16167
16558
|
if (selector.includes("data-") || selector.includes(".")) {
|
|
16168
16559
|
selector = `*:where(${selector.replace(/\s*&$/, "")}) &`;
|
|
16169
16560
|
}
|
|
16170
16561
|
return {
|
|
16171
|
-
[selector]:
|
|
16562
|
+
[selector]: styles2
|
|
16172
16563
|
};
|
|
16173
16564
|
}
|
|
16174
16565
|
if (theme.palette.mode === key) {
|
|
16175
|
-
return
|
|
16566
|
+
return styles2;
|
|
16176
16567
|
}
|
|
16177
16568
|
return {};
|
|
16178
16569
|
}
|
|
@@ -17519,7 +17910,7 @@ function defaultOverridesResolver(slot) {
|
|
|
17519
17910
|
if (!slot) {
|
|
17520
17911
|
return null;
|
|
17521
17912
|
}
|
|
17522
|
-
return (_props,
|
|
17913
|
+
return (_props, styles2) => styles2[slot];
|
|
17523
17914
|
}
|
|
17524
17915
|
function attachTheme(props, themeId, defaultTheme2) {
|
|
17525
17916
|
props.theme = isObjectEmpty(props.theme) ? defaultTheme2 : props.theme[themeId] || props.theme;
|
|
@@ -17591,7 +17982,7 @@ function createStyled(input = {}) {
|
|
|
17591
17982
|
attachTheme(props, themeId, defaultTheme2);
|
|
17592
17983
|
}
|
|
17593
17984
|
const styled2 = (tag, inputOptions = {}) => {
|
|
17594
|
-
internal_mutateStyles(tag, (
|
|
17985
|
+
internal_mutateStyles(tag, (styles2) => styles2.filter((style2) => style2 !== styleFunctionSx));
|
|
17595
17986
|
const {
|
|
17596
17987
|
name: componentName,
|
|
17597
17988
|
slot: componentSlot,
|
|
@@ -17744,31 +18135,1611 @@ const styled = createStyled({
|
|
|
17744
18135
|
defaultTheme,
|
|
17745
18136
|
rootShouldForwardProp
|
|
17746
18137
|
});
|
|
17747
|
-
const memoTheme = system.unstable_memoTheme;
|
|
17748
|
-
process.env.NODE_ENV !== "production" ? {
|
|
18138
|
+
const memoTheme = system.unstable_memoTheme;
|
|
18139
|
+
process.env.NODE_ENV !== "production" ? {
|
|
18140
|
+
// ┌────────────────────────────── Warning ──────────────────────────────┐
|
|
18141
|
+
// │ These PropTypes are generated from the TypeScript type definitions. │
|
|
18142
|
+
// │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
|
|
18143
|
+
// └─────────────────────────────────────────────────────────────────────┘
|
|
18144
|
+
/**
|
|
18145
|
+
* @ignore
|
|
18146
|
+
*/
|
|
18147
|
+
children: PropTypes.node,
|
|
18148
|
+
/**
|
|
18149
|
+
* @ignore
|
|
18150
|
+
*/
|
|
18151
|
+
value: PropTypes.object.isRequired
|
|
18152
|
+
} : void 0;
|
|
18153
|
+
function useDefaultProps(params) {
|
|
18154
|
+
return useDefaultProps$1(params);
|
|
18155
|
+
}
|
|
18156
|
+
function _objectWithoutPropertiesLoose$1(r2, e) {
|
|
18157
|
+
if (null == r2) return {};
|
|
18158
|
+
var t = {};
|
|
18159
|
+
for (var n in r2) if ({}.hasOwnProperty.call(r2, n)) {
|
|
18160
|
+
if (-1 !== e.indexOf(n)) continue;
|
|
18161
|
+
t[n] = r2[n];
|
|
18162
|
+
}
|
|
18163
|
+
return t;
|
|
18164
|
+
}
|
|
18165
|
+
function _setPrototypeOf(t, e) {
|
|
18166
|
+
return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(t2, e2) {
|
|
18167
|
+
return t2.__proto__ = e2, t2;
|
|
18168
|
+
}, _setPrototypeOf(t, e);
|
|
18169
|
+
}
|
|
18170
|
+
function _inheritsLoose(t, o) {
|
|
18171
|
+
t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o);
|
|
18172
|
+
}
|
|
18173
|
+
const config = {
|
|
18174
|
+
disabled: false
|
|
18175
|
+
};
|
|
18176
|
+
var timeoutsShape = process.env.NODE_ENV !== "production" ? PropTypes.oneOfType([PropTypes.number, PropTypes.shape({
|
|
18177
|
+
enter: PropTypes.number,
|
|
18178
|
+
exit: PropTypes.number,
|
|
18179
|
+
appear: PropTypes.number
|
|
18180
|
+
}).isRequired]) : null;
|
|
18181
|
+
process.env.NODE_ENV !== "production" ? PropTypes.oneOfType([PropTypes.string, PropTypes.shape({
|
|
18182
|
+
enter: PropTypes.string,
|
|
18183
|
+
exit: PropTypes.string,
|
|
18184
|
+
active: PropTypes.string
|
|
18185
|
+
}), PropTypes.shape({
|
|
18186
|
+
enter: PropTypes.string,
|
|
18187
|
+
enterDone: PropTypes.string,
|
|
18188
|
+
enterActive: PropTypes.string,
|
|
18189
|
+
exit: PropTypes.string,
|
|
18190
|
+
exitDone: PropTypes.string,
|
|
18191
|
+
exitActive: PropTypes.string
|
|
18192
|
+
})]) : null;
|
|
18193
|
+
const TransitionGroupContext = React.createContext(null);
|
|
18194
|
+
var forceReflow = function forceReflow2(node) {
|
|
18195
|
+
return node.scrollTop;
|
|
18196
|
+
};
|
|
18197
|
+
var UNMOUNTED = "unmounted";
|
|
18198
|
+
var EXITED = "exited";
|
|
18199
|
+
var ENTERING = "entering";
|
|
18200
|
+
var ENTERED = "entered";
|
|
18201
|
+
var EXITING = "exiting";
|
|
18202
|
+
var Transition = /* @__PURE__ */ (function(_React$Component) {
|
|
18203
|
+
_inheritsLoose(Transition2, _React$Component);
|
|
18204
|
+
function Transition2(props, context) {
|
|
18205
|
+
var _this;
|
|
18206
|
+
_this = _React$Component.call(this, props, context) || this;
|
|
18207
|
+
var parentGroup = context;
|
|
18208
|
+
var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;
|
|
18209
|
+
var initialStatus;
|
|
18210
|
+
_this.appearStatus = null;
|
|
18211
|
+
if (props.in) {
|
|
18212
|
+
if (appear) {
|
|
18213
|
+
initialStatus = EXITED;
|
|
18214
|
+
_this.appearStatus = ENTERING;
|
|
18215
|
+
} else {
|
|
18216
|
+
initialStatus = ENTERED;
|
|
18217
|
+
}
|
|
18218
|
+
} else {
|
|
18219
|
+
if (props.unmountOnExit || props.mountOnEnter) {
|
|
18220
|
+
initialStatus = UNMOUNTED;
|
|
18221
|
+
} else {
|
|
18222
|
+
initialStatus = EXITED;
|
|
18223
|
+
}
|
|
18224
|
+
}
|
|
18225
|
+
_this.state = {
|
|
18226
|
+
status: initialStatus
|
|
18227
|
+
};
|
|
18228
|
+
_this.nextCallback = null;
|
|
18229
|
+
return _this;
|
|
18230
|
+
}
|
|
18231
|
+
Transition2.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) {
|
|
18232
|
+
var nextIn = _ref.in;
|
|
18233
|
+
if (nextIn && prevState.status === UNMOUNTED) {
|
|
18234
|
+
return {
|
|
18235
|
+
status: EXITED
|
|
18236
|
+
};
|
|
18237
|
+
}
|
|
18238
|
+
return null;
|
|
18239
|
+
};
|
|
18240
|
+
var _proto = Transition2.prototype;
|
|
18241
|
+
_proto.componentDidMount = function componentDidMount() {
|
|
18242
|
+
this.updateStatus(true, this.appearStatus);
|
|
18243
|
+
};
|
|
18244
|
+
_proto.componentDidUpdate = function componentDidUpdate(prevProps) {
|
|
18245
|
+
var nextStatus = null;
|
|
18246
|
+
if (prevProps !== this.props) {
|
|
18247
|
+
var status = this.state.status;
|
|
18248
|
+
if (this.props.in) {
|
|
18249
|
+
if (status !== ENTERING && status !== ENTERED) {
|
|
18250
|
+
nextStatus = ENTERING;
|
|
18251
|
+
}
|
|
18252
|
+
} else {
|
|
18253
|
+
if (status === ENTERING || status === ENTERED) {
|
|
18254
|
+
nextStatus = EXITING;
|
|
18255
|
+
}
|
|
18256
|
+
}
|
|
18257
|
+
}
|
|
18258
|
+
this.updateStatus(false, nextStatus);
|
|
18259
|
+
};
|
|
18260
|
+
_proto.componentWillUnmount = function componentWillUnmount() {
|
|
18261
|
+
this.cancelNextCallback();
|
|
18262
|
+
};
|
|
18263
|
+
_proto.getTimeouts = function getTimeouts() {
|
|
18264
|
+
var timeout2 = this.props.timeout;
|
|
18265
|
+
var exit, enter, appear;
|
|
18266
|
+
exit = enter = appear = timeout2;
|
|
18267
|
+
if (timeout2 != null && typeof timeout2 !== "number") {
|
|
18268
|
+
exit = timeout2.exit;
|
|
18269
|
+
enter = timeout2.enter;
|
|
18270
|
+
appear = timeout2.appear !== void 0 ? timeout2.appear : enter;
|
|
18271
|
+
}
|
|
18272
|
+
return {
|
|
18273
|
+
exit,
|
|
18274
|
+
enter,
|
|
18275
|
+
appear
|
|
18276
|
+
};
|
|
18277
|
+
};
|
|
18278
|
+
_proto.updateStatus = function updateStatus(mounting, nextStatus) {
|
|
18279
|
+
if (mounting === void 0) {
|
|
18280
|
+
mounting = false;
|
|
18281
|
+
}
|
|
18282
|
+
if (nextStatus !== null) {
|
|
18283
|
+
this.cancelNextCallback();
|
|
18284
|
+
if (nextStatus === ENTERING) {
|
|
18285
|
+
if (this.props.unmountOnExit || this.props.mountOnEnter) {
|
|
18286
|
+
var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this);
|
|
18287
|
+
if (node) forceReflow(node);
|
|
18288
|
+
}
|
|
18289
|
+
this.performEnter(mounting);
|
|
18290
|
+
} else {
|
|
18291
|
+
this.performExit();
|
|
18292
|
+
}
|
|
18293
|
+
} else if (this.props.unmountOnExit && this.state.status === EXITED) {
|
|
18294
|
+
this.setState({
|
|
18295
|
+
status: UNMOUNTED
|
|
18296
|
+
});
|
|
18297
|
+
}
|
|
18298
|
+
};
|
|
18299
|
+
_proto.performEnter = function performEnter(mounting) {
|
|
18300
|
+
var _this2 = this;
|
|
18301
|
+
var enter = this.props.enter;
|
|
18302
|
+
var appearing = this.context ? this.context.isMounting : mounting;
|
|
18303
|
+
var _ref2 = this.props.nodeRef ? [appearing] : [ReactDOM.findDOMNode(this), appearing], maybeNode = _ref2[0], maybeAppearing = _ref2[1];
|
|
18304
|
+
var timeouts = this.getTimeouts();
|
|
18305
|
+
var enterTimeout = appearing ? timeouts.appear : timeouts.enter;
|
|
18306
|
+
if (!mounting && !enter || config.disabled) {
|
|
18307
|
+
this.safeSetState({
|
|
18308
|
+
status: ENTERED
|
|
18309
|
+
}, function() {
|
|
18310
|
+
_this2.props.onEntered(maybeNode);
|
|
18311
|
+
});
|
|
18312
|
+
return;
|
|
18313
|
+
}
|
|
18314
|
+
this.props.onEnter(maybeNode, maybeAppearing);
|
|
18315
|
+
this.safeSetState({
|
|
18316
|
+
status: ENTERING
|
|
18317
|
+
}, function() {
|
|
18318
|
+
_this2.props.onEntering(maybeNode, maybeAppearing);
|
|
18319
|
+
_this2.onTransitionEnd(enterTimeout, function() {
|
|
18320
|
+
_this2.safeSetState({
|
|
18321
|
+
status: ENTERED
|
|
18322
|
+
}, function() {
|
|
18323
|
+
_this2.props.onEntered(maybeNode, maybeAppearing);
|
|
18324
|
+
});
|
|
18325
|
+
});
|
|
18326
|
+
});
|
|
18327
|
+
};
|
|
18328
|
+
_proto.performExit = function performExit() {
|
|
18329
|
+
var _this3 = this;
|
|
18330
|
+
var exit = this.props.exit;
|
|
18331
|
+
var timeouts = this.getTimeouts();
|
|
18332
|
+
var maybeNode = this.props.nodeRef ? void 0 : ReactDOM.findDOMNode(this);
|
|
18333
|
+
if (!exit || config.disabled) {
|
|
18334
|
+
this.safeSetState({
|
|
18335
|
+
status: EXITED
|
|
18336
|
+
}, function() {
|
|
18337
|
+
_this3.props.onExited(maybeNode);
|
|
18338
|
+
});
|
|
18339
|
+
return;
|
|
18340
|
+
}
|
|
18341
|
+
this.props.onExit(maybeNode);
|
|
18342
|
+
this.safeSetState({
|
|
18343
|
+
status: EXITING
|
|
18344
|
+
}, function() {
|
|
18345
|
+
_this3.props.onExiting(maybeNode);
|
|
18346
|
+
_this3.onTransitionEnd(timeouts.exit, function() {
|
|
18347
|
+
_this3.safeSetState({
|
|
18348
|
+
status: EXITED
|
|
18349
|
+
}, function() {
|
|
18350
|
+
_this3.props.onExited(maybeNode);
|
|
18351
|
+
});
|
|
18352
|
+
});
|
|
18353
|
+
});
|
|
18354
|
+
};
|
|
18355
|
+
_proto.cancelNextCallback = function cancelNextCallback() {
|
|
18356
|
+
if (this.nextCallback !== null) {
|
|
18357
|
+
this.nextCallback.cancel();
|
|
18358
|
+
this.nextCallback = null;
|
|
18359
|
+
}
|
|
18360
|
+
};
|
|
18361
|
+
_proto.safeSetState = function safeSetState(nextState, callback) {
|
|
18362
|
+
callback = this.setNextCallback(callback);
|
|
18363
|
+
this.setState(nextState, callback);
|
|
18364
|
+
};
|
|
18365
|
+
_proto.setNextCallback = function setNextCallback(callback) {
|
|
18366
|
+
var _this4 = this;
|
|
18367
|
+
var active = true;
|
|
18368
|
+
this.nextCallback = function(event) {
|
|
18369
|
+
if (active) {
|
|
18370
|
+
active = false;
|
|
18371
|
+
_this4.nextCallback = null;
|
|
18372
|
+
callback(event);
|
|
18373
|
+
}
|
|
18374
|
+
};
|
|
18375
|
+
this.nextCallback.cancel = function() {
|
|
18376
|
+
active = false;
|
|
18377
|
+
};
|
|
18378
|
+
return this.nextCallback;
|
|
18379
|
+
};
|
|
18380
|
+
_proto.onTransitionEnd = function onTransitionEnd(timeout2, handler) {
|
|
18381
|
+
this.setNextCallback(handler);
|
|
18382
|
+
var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this);
|
|
18383
|
+
var doesNotHaveTimeoutOrListener = timeout2 == null && !this.props.addEndListener;
|
|
18384
|
+
if (!node || doesNotHaveTimeoutOrListener) {
|
|
18385
|
+
setTimeout(this.nextCallback, 0);
|
|
18386
|
+
return;
|
|
18387
|
+
}
|
|
18388
|
+
if (this.props.addEndListener) {
|
|
18389
|
+
var _ref3 = this.props.nodeRef ? [this.nextCallback] : [node, this.nextCallback], maybeNode = _ref3[0], maybeNextCallback = _ref3[1];
|
|
18390
|
+
this.props.addEndListener(maybeNode, maybeNextCallback);
|
|
18391
|
+
}
|
|
18392
|
+
if (timeout2 != null) {
|
|
18393
|
+
setTimeout(this.nextCallback, timeout2);
|
|
18394
|
+
}
|
|
18395
|
+
};
|
|
18396
|
+
_proto.render = function render() {
|
|
18397
|
+
var status = this.state.status;
|
|
18398
|
+
if (status === UNMOUNTED) {
|
|
18399
|
+
return null;
|
|
18400
|
+
}
|
|
18401
|
+
var _this$props = this.props, children = _this$props.children;
|
|
18402
|
+
_this$props.in;
|
|
18403
|
+
_this$props.mountOnEnter;
|
|
18404
|
+
_this$props.unmountOnExit;
|
|
18405
|
+
_this$props.appear;
|
|
18406
|
+
_this$props.enter;
|
|
18407
|
+
_this$props.exit;
|
|
18408
|
+
_this$props.timeout;
|
|
18409
|
+
_this$props.addEndListener;
|
|
18410
|
+
_this$props.onEnter;
|
|
18411
|
+
_this$props.onEntering;
|
|
18412
|
+
_this$props.onEntered;
|
|
18413
|
+
_this$props.onExit;
|
|
18414
|
+
_this$props.onExiting;
|
|
18415
|
+
_this$props.onExited;
|
|
18416
|
+
_this$props.nodeRef;
|
|
18417
|
+
var childProps = _objectWithoutPropertiesLoose$1(_this$props, ["children", "in", "mountOnEnter", "unmountOnExit", "appear", "enter", "exit", "timeout", "addEndListener", "onEnter", "onEntering", "onEntered", "onExit", "onExiting", "onExited", "nodeRef"]);
|
|
18418
|
+
return (
|
|
18419
|
+
// allows for nested Transitions
|
|
18420
|
+
/* @__PURE__ */ React.createElement(TransitionGroupContext.Provider, {
|
|
18421
|
+
value: null
|
|
18422
|
+
}, typeof children === "function" ? children(status, childProps) : React.cloneElement(React.Children.only(children), childProps))
|
|
18423
|
+
);
|
|
18424
|
+
};
|
|
18425
|
+
return Transition2;
|
|
18426
|
+
})(React.Component);
|
|
18427
|
+
Transition.contextType = TransitionGroupContext;
|
|
18428
|
+
Transition.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
18429
|
+
/**
|
|
18430
|
+
* A React reference to DOM element that need to transition:
|
|
18431
|
+
* https://stackoverflow.com/a/51127130/4671932
|
|
18432
|
+
*
|
|
18433
|
+
* - When `nodeRef` prop is used, `node` is not passed to callback functions
|
|
18434
|
+
* (e.g. `onEnter`) because user already has direct access to the node.
|
|
18435
|
+
* - When changing `key` prop of `Transition` in a `TransitionGroup` a new
|
|
18436
|
+
* `nodeRef` need to be provided to `Transition` with changed `key` prop
|
|
18437
|
+
* (see
|
|
18438
|
+
* [test/CSSTransition-test.js](https://github.com/reactjs/react-transition-group/blob/13435f897b3ab71f6e19d724f145596f5910581c/test/CSSTransition-test.js#L362-L437)).
|
|
18439
|
+
*/
|
|
18440
|
+
nodeRef: PropTypes.shape({
|
|
18441
|
+
current: typeof Element === "undefined" ? PropTypes.any : function(propValue, key, componentName, location2, propFullName, secret) {
|
|
18442
|
+
var value2 = propValue[key];
|
|
18443
|
+
return PropTypes.instanceOf(value2 && "ownerDocument" in value2 ? value2.ownerDocument.defaultView.Element : Element)(propValue, key, componentName, location2, propFullName, secret);
|
|
18444
|
+
}
|
|
18445
|
+
}),
|
|
18446
|
+
/**
|
|
18447
|
+
* A `function` child can be used instead of a React element. This function is
|
|
18448
|
+
* called with the current transition status (`'entering'`, `'entered'`,
|
|
18449
|
+
* `'exiting'`, `'exited'`), which can be used to apply context
|
|
18450
|
+
* specific props to a component.
|
|
18451
|
+
*
|
|
18452
|
+
* ```jsx
|
|
18453
|
+
* <Transition in={this.state.in} timeout={150}>
|
|
18454
|
+
* {state => (
|
|
18455
|
+
* <MyComponent className={`fade fade-${state}`} />
|
|
18456
|
+
* )}
|
|
18457
|
+
* </Transition>
|
|
18458
|
+
* ```
|
|
18459
|
+
*/
|
|
18460
|
+
children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,
|
|
18461
|
+
/**
|
|
18462
|
+
* Show the component; triggers the enter or exit states
|
|
18463
|
+
*/
|
|
18464
|
+
in: PropTypes.bool,
|
|
18465
|
+
/**
|
|
18466
|
+
* By default the child component is mounted immediately along with
|
|
18467
|
+
* the parent `Transition` component. If you want to "lazy mount" the component on the
|
|
18468
|
+
* first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay
|
|
18469
|
+
* mounted, even on "exited", unless you also specify `unmountOnExit`.
|
|
18470
|
+
*/
|
|
18471
|
+
mountOnEnter: PropTypes.bool,
|
|
18472
|
+
/**
|
|
18473
|
+
* By default the child component stays mounted after it reaches the `'exited'` state.
|
|
18474
|
+
* Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.
|
|
18475
|
+
*/
|
|
18476
|
+
unmountOnExit: PropTypes.bool,
|
|
18477
|
+
/**
|
|
18478
|
+
* By default the child component does not perform the enter transition when
|
|
18479
|
+
* it first mounts, regardless of the value of `in`. If you want this
|
|
18480
|
+
* behavior, set both `appear` and `in` to `true`.
|
|
18481
|
+
*
|
|
18482
|
+
* > **Note**: there are no special appear states like `appearing`/`appeared`, this prop
|
|
18483
|
+
* > only adds an additional enter transition. However, in the
|
|
18484
|
+
* > `<CSSTransition>` component that first enter transition does result in
|
|
18485
|
+
* > additional `.appear-*` classes, that way you can choose to style it
|
|
18486
|
+
* > differently.
|
|
18487
|
+
*/
|
|
18488
|
+
appear: PropTypes.bool,
|
|
18489
|
+
/**
|
|
18490
|
+
* Enable or disable enter transitions.
|
|
18491
|
+
*/
|
|
18492
|
+
enter: PropTypes.bool,
|
|
18493
|
+
/**
|
|
18494
|
+
* Enable or disable exit transitions.
|
|
18495
|
+
*/
|
|
18496
|
+
exit: PropTypes.bool,
|
|
18497
|
+
/**
|
|
18498
|
+
* The duration of the transition, in milliseconds.
|
|
18499
|
+
* Required unless `addEndListener` is provided.
|
|
18500
|
+
*
|
|
18501
|
+
* You may specify a single timeout for all transitions:
|
|
18502
|
+
*
|
|
18503
|
+
* ```jsx
|
|
18504
|
+
* timeout={500}
|
|
18505
|
+
* ```
|
|
18506
|
+
*
|
|
18507
|
+
* or individually:
|
|
18508
|
+
*
|
|
18509
|
+
* ```jsx
|
|
18510
|
+
* timeout={{
|
|
18511
|
+
* appear: 500,
|
|
18512
|
+
* enter: 300,
|
|
18513
|
+
* exit: 500,
|
|
18514
|
+
* }}
|
|
18515
|
+
* ```
|
|
18516
|
+
*
|
|
18517
|
+
* - `appear` defaults to the value of `enter`
|
|
18518
|
+
* - `enter` defaults to `0`
|
|
18519
|
+
* - `exit` defaults to `0`
|
|
18520
|
+
*
|
|
18521
|
+
* @type {number | { enter?: number, exit?: number, appear?: number }}
|
|
18522
|
+
*/
|
|
18523
|
+
timeout: function timeout(props) {
|
|
18524
|
+
var pt = timeoutsShape;
|
|
18525
|
+
if (!props.addEndListener) pt = pt.isRequired;
|
|
18526
|
+
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
18527
|
+
args[_key - 1] = arguments[_key];
|
|
18528
|
+
}
|
|
18529
|
+
return pt.apply(void 0, [props].concat(args));
|
|
18530
|
+
},
|
|
18531
|
+
/**
|
|
18532
|
+
* Add a custom transition end trigger. Called with the transitioning
|
|
18533
|
+
* DOM node and a `done` callback. Allows for more fine grained transition end
|
|
18534
|
+
* logic. Timeouts are still used as a fallback if provided.
|
|
18535
|
+
*
|
|
18536
|
+
* **Note**: when `nodeRef` prop is passed, `node` is not passed.
|
|
18537
|
+
*
|
|
18538
|
+
* ```jsx
|
|
18539
|
+
* addEndListener={(node, done) => {
|
|
18540
|
+
* // use the css transitionend event to mark the finish of a transition
|
|
18541
|
+
* node.addEventListener('transitionend', done, false);
|
|
18542
|
+
* }}
|
|
18543
|
+
* ```
|
|
18544
|
+
*/
|
|
18545
|
+
addEndListener: PropTypes.func,
|
|
18546
|
+
/**
|
|
18547
|
+
* Callback fired before the "entering" status is applied. An extra parameter
|
|
18548
|
+
* `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount
|
|
18549
|
+
*
|
|
18550
|
+
* **Note**: when `nodeRef` prop is passed, `node` is not passed.
|
|
18551
|
+
*
|
|
18552
|
+
* @type Function(node: HtmlElement, isAppearing: bool) -> void
|
|
18553
|
+
*/
|
|
18554
|
+
onEnter: PropTypes.func,
|
|
18555
|
+
/**
|
|
18556
|
+
* Callback fired after the "entering" status is applied. An extra parameter
|
|
18557
|
+
* `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount
|
|
18558
|
+
*
|
|
18559
|
+
* **Note**: when `nodeRef` prop is passed, `node` is not passed.
|
|
18560
|
+
*
|
|
18561
|
+
* @type Function(node: HtmlElement, isAppearing: bool)
|
|
18562
|
+
*/
|
|
18563
|
+
onEntering: PropTypes.func,
|
|
18564
|
+
/**
|
|
18565
|
+
* Callback fired after the "entered" status is applied. An extra parameter
|
|
18566
|
+
* `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount
|
|
18567
|
+
*
|
|
18568
|
+
* **Note**: when `nodeRef` prop is passed, `node` is not passed.
|
|
18569
|
+
*
|
|
18570
|
+
* @type Function(node: HtmlElement, isAppearing: bool) -> void
|
|
18571
|
+
*/
|
|
18572
|
+
onEntered: PropTypes.func,
|
|
18573
|
+
/**
|
|
18574
|
+
* Callback fired before the "exiting" status is applied.
|
|
18575
|
+
*
|
|
18576
|
+
* **Note**: when `nodeRef` prop is passed, `node` is not passed.
|
|
18577
|
+
*
|
|
18578
|
+
* @type Function(node: HtmlElement) -> void
|
|
18579
|
+
*/
|
|
18580
|
+
onExit: PropTypes.func,
|
|
18581
|
+
/**
|
|
18582
|
+
* Callback fired after the "exiting" status is applied.
|
|
18583
|
+
*
|
|
18584
|
+
* **Note**: when `nodeRef` prop is passed, `node` is not passed.
|
|
18585
|
+
*
|
|
18586
|
+
* @type Function(node: HtmlElement) -> void
|
|
18587
|
+
*/
|
|
18588
|
+
onExiting: PropTypes.func,
|
|
18589
|
+
/**
|
|
18590
|
+
* Callback fired after the "exited" status is applied.
|
|
18591
|
+
*
|
|
18592
|
+
* **Note**: when `nodeRef` prop is passed, `node` is not passed
|
|
18593
|
+
*
|
|
18594
|
+
* @type Function(node: HtmlElement) -> void
|
|
18595
|
+
*/
|
|
18596
|
+
onExited: PropTypes.func
|
|
18597
|
+
} : {};
|
|
18598
|
+
function noop$1() {
|
|
18599
|
+
}
|
|
18600
|
+
Transition.defaultProps = {
|
|
18601
|
+
in: false,
|
|
18602
|
+
mountOnEnter: false,
|
|
18603
|
+
unmountOnExit: false,
|
|
18604
|
+
appear: false,
|
|
18605
|
+
enter: true,
|
|
18606
|
+
exit: true,
|
|
18607
|
+
onEnter: noop$1,
|
|
18608
|
+
onEntering: noop$1,
|
|
18609
|
+
onEntered: noop$1,
|
|
18610
|
+
onExit: noop$1,
|
|
18611
|
+
onExiting: noop$1,
|
|
18612
|
+
onExited: noop$1
|
|
18613
|
+
};
|
|
18614
|
+
Transition.UNMOUNTED = UNMOUNTED;
|
|
18615
|
+
Transition.EXITED = EXITED;
|
|
18616
|
+
Transition.ENTERING = ENTERING;
|
|
18617
|
+
Transition.ENTERED = ENTERED;
|
|
18618
|
+
Transition.EXITING = EXITING;
|
|
18619
|
+
const reflow = (node) => node.scrollTop;
|
|
18620
|
+
function getTransitionProps(props, options) {
|
|
18621
|
+
const {
|
|
18622
|
+
timeout: timeout2,
|
|
18623
|
+
easing: easing2,
|
|
18624
|
+
style: style2 = {}
|
|
18625
|
+
} = props;
|
|
18626
|
+
return {
|
|
18627
|
+
duration: style2.transitionDuration ?? (typeof timeout2 === "number" ? timeout2 : timeout2[options.mode] || 0),
|
|
18628
|
+
easing: style2.transitionTimingFunction ?? (typeof easing2 === "object" ? easing2[options.mode] : easing2),
|
|
18629
|
+
delay: style2.transitionDelay
|
|
18630
|
+
};
|
|
18631
|
+
}
|
|
18632
|
+
function getScale(value2) {
|
|
18633
|
+
return `scale(${value2}, ${value2 ** 2})`;
|
|
18634
|
+
}
|
|
18635
|
+
const styles = {
|
|
18636
|
+
entering: {
|
|
18637
|
+
opacity: 1,
|
|
18638
|
+
transform: getScale(1)
|
|
18639
|
+
},
|
|
18640
|
+
entered: {
|
|
18641
|
+
opacity: 1,
|
|
18642
|
+
transform: "none"
|
|
18643
|
+
}
|
|
18644
|
+
};
|
|
18645
|
+
const isWebKit154 = typeof navigator !== "undefined" && /^((?!chrome|android).)*(safari|mobile)/i.test(navigator.userAgent) && /(os |version\/)15(.|_)4/i.test(navigator.userAgent);
|
|
18646
|
+
const Grow = /* @__PURE__ */ React__namespace.forwardRef(function Grow2(props, ref) {
|
|
18647
|
+
const {
|
|
18648
|
+
addEndListener,
|
|
18649
|
+
appear = true,
|
|
18650
|
+
children,
|
|
18651
|
+
easing: easing2,
|
|
18652
|
+
in: inProp,
|
|
18653
|
+
onEnter,
|
|
18654
|
+
onEntered,
|
|
18655
|
+
onEntering,
|
|
18656
|
+
onExit,
|
|
18657
|
+
onExited,
|
|
18658
|
+
onExiting,
|
|
18659
|
+
style: style2,
|
|
18660
|
+
timeout: timeout2 = "auto",
|
|
18661
|
+
// eslint-disable-next-line react/prop-types
|
|
18662
|
+
TransitionComponent = Transition,
|
|
18663
|
+
...other
|
|
18664
|
+
} = props;
|
|
18665
|
+
const timer = useTimeout();
|
|
18666
|
+
const autoTimeout = React__namespace.useRef();
|
|
18667
|
+
const theme = useTheme();
|
|
18668
|
+
const nodeRef = React__namespace.useRef(null);
|
|
18669
|
+
const handleRef = useForkRef(nodeRef, getReactElementRef(children), ref);
|
|
18670
|
+
const normalizedTransitionCallback = (callback) => (maybeIsAppearing) => {
|
|
18671
|
+
if (callback) {
|
|
18672
|
+
const node = nodeRef.current;
|
|
18673
|
+
if (maybeIsAppearing === void 0) {
|
|
18674
|
+
callback(node);
|
|
18675
|
+
} else {
|
|
18676
|
+
callback(node, maybeIsAppearing);
|
|
18677
|
+
}
|
|
18678
|
+
}
|
|
18679
|
+
};
|
|
18680
|
+
const handleEntering = normalizedTransitionCallback(onEntering);
|
|
18681
|
+
const handleEnter = normalizedTransitionCallback((node, isAppearing) => {
|
|
18682
|
+
reflow(node);
|
|
18683
|
+
const {
|
|
18684
|
+
duration: transitionDuration,
|
|
18685
|
+
delay: delay2,
|
|
18686
|
+
easing: transitionTimingFunction
|
|
18687
|
+
} = getTransitionProps({
|
|
18688
|
+
style: style2,
|
|
18689
|
+
timeout: timeout2,
|
|
18690
|
+
easing: easing2
|
|
18691
|
+
}, {
|
|
18692
|
+
mode: "enter"
|
|
18693
|
+
});
|
|
18694
|
+
let duration2;
|
|
18695
|
+
if (timeout2 === "auto") {
|
|
18696
|
+
duration2 = theme.transitions.getAutoHeightDuration(node.clientHeight);
|
|
18697
|
+
autoTimeout.current = duration2;
|
|
18698
|
+
} else {
|
|
18699
|
+
duration2 = transitionDuration;
|
|
18700
|
+
}
|
|
18701
|
+
node.style.transition = [theme.transitions.create("opacity", {
|
|
18702
|
+
duration: duration2,
|
|
18703
|
+
delay: delay2
|
|
18704
|
+
}), theme.transitions.create("transform", {
|
|
18705
|
+
duration: isWebKit154 ? duration2 : duration2 * 0.666,
|
|
18706
|
+
delay: delay2,
|
|
18707
|
+
easing: transitionTimingFunction
|
|
18708
|
+
})].join(",");
|
|
18709
|
+
if (onEnter) {
|
|
18710
|
+
onEnter(node, isAppearing);
|
|
18711
|
+
}
|
|
18712
|
+
});
|
|
18713
|
+
const handleEntered = normalizedTransitionCallback(onEntered);
|
|
18714
|
+
const handleExiting = normalizedTransitionCallback(onExiting);
|
|
18715
|
+
const handleExit = normalizedTransitionCallback((node) => {
|
|
18716
|
+
const {
|
|
18717
|
+
duration: transitionDuration,
|
|
18718
|
+
delay: delay2,
|
|
18719
|
+
easing: transitionTimingFunction
|
|
18720
|
+
} = getTransitionProps({
|
|
18721
|
+
style: style2,
|
|
18722
|
+
timeout: timeout2,
|
|
18723
|
+
easing: easing2
|
|
18724
|
+
}, {
|
|
18725
|
+
mode: "exit"
|
|
18726
|
+
});
|
|
18727
|
+
let duration2;
|
|
18728
|
+
if (timeout2 === "auto") {
|
|
18729
|
+
duration2 = theme.transitions.getAutoHeightDuration(node.clientHeight);
|
|
18730
|
+
autoTimeout.current = duration2;
|
|
18731
|
+
} else {
|
|
18732
|
+
duration2 = transitionDuration;
|
|
18733
|
+
}
|
|
18734
|
+
node.style.transition = [theme.transitions.create("opacity", {
|
|
18735
|
+
duration: duration2,
|
|
18736
|
+
delay: delay2
|
|
18737
|
+
}), theme.transitions.create("transform", {
|
|
18738
|
+
duration: isWebKit154 ? duration2 : duration2 * 0.666,
|
|
18739
|
+
delay: isWebKit154 ? delay2 : delay2 || duration2 * 0.333,
|
|
18740
|
+
easing: transitionTimingFunction
|
|
18741
|
+
})].join(",");
|
|
18742
|
+
node.style.opacity = 0;
|
|
18743
|
+
node.style.transform = getScale(0.75);
|
|
18744
|
+
if (onExit) {
|
|
18745
|
+
onExit(node);
|
|
18746
|
+
}
|
|
18747
|
+
});
|
|
18748
|
+
const handleExited = normalizedTransitionCallback(onExited);
|
|
18749
|
+
const handleAddEndListener = (next) => {
|
|
18750
|
+
if (timeout2 === "auto") {
|
|
18751
|
+
timer.start(autoTimeout.current || 0, next);
|
|
18752
|
+
}
|
|
18753
|
+
if (addEndListener) {
|
|
18754
|
+
addEndListener(nodeRef.current, next);
|
|
18755
|
+
}
|
|
18756
|
+
};
|
|
18757
|
+
return /* @__PURE__ */ jsxRuntime.jsx(TransitionComponent, {
|
|
18758
|
+
appear,
|
|
18759
|
+
in: inProp,
|
|
18760
|
+
nodeRef,
|
|
18761
|
+
onEnter: handleEnter,
|
|
18762
|
+
onEntered: handleEntered,
|
|
18763
|
+
onEntering: handleEntering,
|
|
18764
|
+
onExit: handleExit,
|
|
18765
|
+
onExited: handleExited,
|
|
18766
|
+
onExiting: handleExiting,
|
|
18767
|
+
addEndListener: handleAddEndListener,
|
|
18768
|
+
timeout: timeout2 === "auto" ? null : timeout2,
|
|
18769
|
+
...other,
|
|
18770
|
+
children: (state, {
|
|
18771
|
+
ownerState,
|
|
18772
|
+
...restChildProps
|
|
18773
|
+
}) => {
|
|
18774
|
+
return /* @__PURE__ */ React__namespace.cloneElement(children, {
|
|
18775
|
+
style: {
|
|
18776
|
+
opacity: 0,
|
|
18777
|
+
transform: getScale(0.75),
|
|
18778
|
+
visibility: state === "exited" && !inProp ? "hidden" : void 0,
|
|
18779
|
+
...styles[state],
|
|
18780
|
+
...style2,
|
|
18781
|
+
...children.props.style
|
|
18782
|
+
},
|
|
18783
|
+
ref: handleRef,
|
|
18784
|
+
...restChildProps
|
|
18785
|
+
});
|
|
18786
|
+
}
|
|
18787
|
+
});
|
|
18788
|
+
});
|
|
18789
|
+
process.env.NODE_ENV !== "production" ? Grow.propTypes = {
|
|
18790
|
+
// ┌────────────────────────────── Warning ──────────────────────────────┐
|
|
18791
|
+
// │ These PropTypes are generated from the TypeScript type definitions. │
|
|
18792
|
+
// │ To update them, edit the d.ts file and run `pnpm proptypes`. │
|
|
18793
|
+
// └─────────────────────────────────────────────────────────────────────┘
|
|
18794
|
+
/**
|
|
18795
|
+
* Add a custom transition end trigger. Called with the transitioning DOM
|
|
18796
|
+
* node and a done callback. Allows for more fine grained transition end
|
|
18797
|
+
* logic. Note: Timeouts are still used as a fallback if provided.
|
|
18798
|
+
*/
|
|
18799
|
+
addEndListener: PropTypes.func,
|
|
18800
|
+
/**
|
|
18801
|
+
* Perform the enter transition when it first mounts if `in` is also `true`.
|
|
18802
|
+
* Set this to `false` to disable this behavior.
|
|
18803
|
+
* @default true
|
|
18804
|
+
*/
|
|
18805
|
+
appear: PropTypes.bool,
|
|
18806
|
+
/**
|
|
18807
|
+
* A single child content element.
|
|
18808
|
+
*/
|
|
18809
|
+
children: elementAcceptingRef.isRequired,
|
|
18810
|
+
/**
|
|
18811
|
+
* The transition timing function.
|
|
18812
|
+
* You may specify a single easing or a object containing enter and exit values.
|
|
18813
|
+
*/
|
|
18814
|
+
easing: PropTypes.oneOfType([PropTypes.shape({
|
|
18815
|
+
enter: PropTypes.string,
|
|
18816
|
+
exit: PropTypes.string
|
|
18817
|
+
}), PropTypes.string]),
|
|
18818
|
+
/**
|
|
18819
|
+
* If `true`, the component will transition in.
|
|
18820
|
+
*/
|
|
18821
|
+
in: PropTypes.bool,
|
|
18822
|
+
/**
|
|
18823
|
+
* @ignore
|
|
18824
|
+
*/
|
|
18825
|
+
onEnter: PropTypes.func,
|
|
18826
|
+
/**
|
|
18827
|
+
* @ignore
|
|
18828
|
+
*/
|
|
18829
|
+
onEntered: PropTypes.func,
|
|
18830
|
+
/**
|
|
18831
|
+
* @ignore
|
|
18832
|
+
*/
|
|
18833
|
+
onEntering: PropTypes.func,
|
|
18834
|
+
/**
|
|
18835
|
+
* @ignore
|
|
18836
|
+
*/
|
|
18837
|
+
onExit: PropTypes.func,
|
|
18838
|
+
/**
|
|
18839
|
+
* @ignore
|
|
18840
|
+
*/
|
|
18841
|
+
onExited: PropTypes.func,
|
|
18842
|
+
/**
|
|
18843
|
+
* @ignore
|
|
18844
|
+
*/
|
|
18845
|
+
onExiting: PropTypes.func,
|
|
18846
|
+
/**
|
|
18847
|
+
* @ignore
|
|
18848
|
+
*/
|
|
18849
|
+
style: PropTypes.object,
|
|
18850
|
+
/**
|
|
18851
|
+
* The duration for the transition, in milliseconds.
|
|
18852
|
+
* You may specify a single timeout for all transitions, or individually with an object.
|
|
18853
|
+
*
|
|
18854
|
+
* Set to 'auto' to automatically calculate transition time based on height.
|
|
18855
|
+
* @default 'auto'
|
|
18856
|
+
*/
|
|
18857
|
+
timeout: PropTypes.oneOfType([PropTypes.oneOf(["auto"]), PropTypes.number, PropTypes.shape({
|
|
18858
|
+
appear: PropTypes.number,
|
|
18859
|
+
enter: PropTypes.number,
|
|
18860
|
+
exit: PropTypes.number
|
|
18861
|
+
})])
|
|
18862
|
+
} : void 0;
|
|
18863
|
+
if (Grow) {
|
|
18864
|
+
Grow.muiSupportAuto = true;
|
|
18865
|
+
}
|
|
18866
|
+
function getTypeByValue(value2) {
|
|
18867
|
+
const valueType = typeof value2;
|
|
18868
|
+
switch (valueType) {
|
|
18869
|
+
case "number":
|
|
18870
|
+
if (Number.isNaN(value2)) {
|
|
18871
|
+
return "NaN";
|
|
18872
|
+
}
|
|
18873
|
+
if (!Number.isFinite(value2)) {
|
|
18874
|
+
return "Infinity";
|
|
18875
|
+
}
|
|
18876
|
+
if (value2 !== Math.floor(value2)) {
|
|
18877
|
+
return "float";
|
|
18878
|
+
}
|
|
18879
|
+
return "number";
|
|
18880
|
+
case "object":
|
|
18881
|
+
if (value2 === null) {
|
|
18882
|
+
return "null";
|
|
18883
|
+
}
|
|
18884
|
+
return value2.constructor.name;
|
|
18885
|
+
default:
|
|
18886
|
+
return valueType;
|
|
18887
|
+
}
|
|
18888
|
+
}
|
|
18889
|
+
function requiredInteger(props, propName, componentName, location2) {
|
|
18890
|
+
const propValue = props[propName];
|
|
18891
|
+
if (propValue == null || !Number.isInteger(propValue)) {
|
|
18892
|
+
const propType = getTypeByValue(propValue);
|
|
18893
|
+
return new RangeError(`Invalid ${location2} \`${propName}\` of type \`${propType}\` supplied to \`${componentName}\`, expected \`integer\`.`);
|
|
18894
|
+
}
|
|
18895
|
+
return null;
|
|
18896
|
+
}
|
|
18897
|
+
function validator(props, propName, componentName, location2) {
|
|
18898
|
+
const propValue = props[propName];
|
|
18899
|
+
if (propValue === void 0) {
|
|
18900
|
+
return null;
|
|
18901
|
+
}
|
|
18902
|
+
return requiredInteger(props, propName, componentName, location2);
|
|
18903
|
+
}
|
|
18904
|
+
function validatorNoop() {
|
|
18905
|
+
return null;
|
|
18906
|
+
}
|
|
18907
|
+
validator.isRequired = requiredInteger;
|
|
18908
|
+
validatorNoop.isRequired = validatorNoop;
|
|
18909
|
+
const integerPropType = process.env.NODE_ENV === "production" ? validatorNoop : validator;
|
|
18910
|
+
function generateUtilityClasses(componentName, slots, globalStatePrefix = "Mui") {
|
|
18911
|
+
const result = {};
|
|
18912
|
+
slots.forEach((slot) => {
|
|
18913
|
+
result[slot] = generateUtilityClass(componentName, slot, globalStatePrefix);
|
|
18914
|
+
});
|
|
18915
|
+
return result;
|
|
18916
|
+
}
|
|
18917
|
+
function getPaperUtilityClass(slot) {
|
|
18918
|
+
return generateUtilityClass("MuiPaper", slot);
|
|
18919
|
+
}
|
|
18920
|
+
generateUtilityClasses("MuiPaper", ["root", "rounded", "outlined", "elevation", "elevation0", "elevation1", "elevation2", "elevation3", "elevation4", "elevation5", "elevation6", "elevation7", "elevation8", "elevation9", "elevation10", "elevation11", "elevation12", "elevation13", "elevation14", "elevation15", "elevation16", "elevation17", "elevation18", "elevation19", "elevation20", "elevation21", "elevation22", "elevation23", "elevation24"]);
|
|
18921
|
+
const useUtilityClasses$3 = (ownerState) => {
|
|
18922
|
+
const {
|
|
18923
|
+
square,
|
|
18924
|
+
elevation,
|
|
18925
|
+
variant,
|
|
18926
|
+
classes
|
|
18927
|
+
} = ownerState;
|
|
18928
|
+
const slots = {
|
|
18929
|
+
root: ["root", variant, !square && "rounded", variant === "elevation" && `elevation${elevation}`]
|
|
18930
|
+
};
|
|
18931
|
+
return composeClasses(slots, getPaperUtilityClass, classes);
|
|
18932
|
+
};
|
|
18933
|
+
const PaperRoot = styled("div", {
|
|
18934
|
+
name: "MuiPaper",
|
|
18935
|
+
slot: "Root",
|
|
18936
|
+
overridesResolver: (props, styles2) => {
|
|
18937
|
+
const {
|
|
18938
|
+
ownerState
|
|
18939
|
+
} = props;
|
|
18940
|
+
return [styles2.root, styles2[ownerState.variant], !ownerState.square && styles2.rounded, ownerState.variant === "elevation" && styles2[`elevation${ownerState.elevation}`]];
|
|
18941
|
+
}
|
|
18942
|
+
})(memoTheme(({
|
|
18943
|
+
theme
|
|
18944
|
+
}) => ({
|
|
18945
|
+
backgroundColor: (theme.vars || theme).palette.background.paper,
|
|
18946
|
+
color: (theme.vars || theme).palette.text.primary,
|
|
18947
|
+
transition: theme.transitions.create("box-shadow"),
|
|
18948
|
+
variants: [{
|
|
18949
|
+
props: ({
|
|
18950
|
+
ownerState
|
|
18951
|
+
}) => !ownerState.square,
|
|
18952
|
+
style: {
|
|
18953
|
+
borderRadius: theme.shape.borderRadius
|
|
18954
|
+
}
|
|
18955
|
+
}, {
|
|
18956
|
+
props: {
|
|
18957
|
+
variant: "outlined"
|
|
18958
|
+
},
|
|
18959
|
+
style: {
|
|
18960
|
+
border: `1px solid ${(theme.vars || theme).palette.divider}`
|
|
18961
|
+
}
|
|
18962
|
+
}, {
|
|
18963
|
+
props: {
|
|
18964
|
+
variant: "elevation"
|
|
18965
|
+
},
|
|
18966
|
+
style: {
|
|
18967
|
+
boxShadow: "var(--Paper-shadow)",
|
|
18968
|
+
backgroundImage: "var(--Paper-overlay)"
|
|
18969
|
+
}
|
|
18970
|
+
}]
|
|
18971
|
+
})));
|
|
18972
|
+
const Paper = /* @__PURE__ */ React__namespace.forwardRef(function Paper2(inProps, ref) {
|
|
18973
|
+
const props = useDefaultProps({
|
|
18974
|
+
props: inProps,
|
|
18975
|
+
name: "MuiPaper"
|
|
18976
|
+
});
|
|
18977
|
+
const theme = useTheme();
|
|
18978
|
+
const {
|
|
18979
|
+
className,
|
|
18980
|
+
component = "div",
|
|
18981
|
+
elevation = 1,
|
|
18982
|
+
square = false,
|
|
18983
|
+
variant = "elevation",
|
|
18984
|
+
...other
|
|
18985
|
+
} = props;
|
|
18986
|
+
const ownerState = {
|
|
18987
|
+
...props,
|
|
18988
|
+
component,
|
|
18989
|
+
elevation,
|
|
18990
|
+
square,
|
|
18991
|
+
variant
|
|
18992
|
+
};
|
|
18993
|
+
const classes = useUtilityClasses$3(ownerState);
|
|
18994
|
+
if (process.env.NODE_ENV !== "production") {
|
|
18995
|
+
if (theme.shadows[elevation] === void 0) {
|
|
18996
|
+
console.error([`MUI: The elevation provided <Paper elevation={${elevation}}> is not available in the theme.`, `Please make sure that \`theme.shadows[${elevation}]\` is defined.`].join("\n"));
|
|
18997
|
+
}
|
|
18998
|
+
}
|
|
18999
|
+
return /* @__PURE__ */ jsxRuntime.jsx(PaperRoot, {
|
|
19000
|
+
as: component,
|
|
19001
|
+
ownerState,
|
|
19002
|
+
className: clsx(classes.root, className),
|
|
19003
|
+
ref,
|
|
19004
|
+
...other,
|
|
19005
|
+
style: {
|
|
19006
|
+
...variant === "elevation" && {
|
|
19007
|
+
"--Paper-shadow": (theme.vars || theme).shadows[elevation],
|
|
19008
|
+
...theme.vars && {
|
|
19009
|
+
"--Paper-overlay": theme.vars.overlays?.[elevation]
|
|
19010
|
+
},
|
|
19011
|
+
...!theme.vars && theme.palette.mode === "dark" && {
|
|
19012
|
+
"--Paper-overlay": `linear-gradient(${alpha$1("#fff", getOverlayAlpha(elevation))}, ${alpha$1("#fff", getOverlayAlpha(elevation))})`
|
|
19013
|
+
}
|
|
19014
|
+
},
|
|
19015
|
+
...other.style
|
|
19016
|
+
}
|
|
19017
|
+
});
|
|
19018
|
+
});
|
|
19019
|
+
process.env.NODE_ENV !== "production" ? Paper.propTypes = {
|
|
19020
|
+
// ┌────────────────────────────── Warning ──────────────────────────────┐
|
|
19021
|
+
// │ These PropTypes are generated from the TypeScript type definitions. │
|
|
19022
|
+
// │ To update them, edit the d.ts file and run `pnpm proptypes`. │
|
|
19023
|
+
// └─────────────────────────────────────────────────────────────────────┘
|
|
19024
|
+
/**
|
|
19025
|
+
* The content of the component.
|
|
19026
|
+
*/
|
|
19027
|
+
children: PropTypes.node,
|
|
19028
|
+
/**
|
|
19029
|
+
* Override or extend the styles applied to the component.
|
|
19030
|
+
*/
|
|
19031
|
+
classes: PropTypes.object,
|
|
19032
|
+
/**
|
|
19033
|
+
* @ignore
|
|
19034
|
+
*/
|
|
19035
|
+
className: PropTypes.string,
|
|
19036
|
+
/**
|
|
19037
|
+
* The component used for the root node.
|
|
19038
|
+
* Either a string to use a HTML element or a component.
|
|
19039
|
+
*/
|
|
19040
|
+
component: PropTypes.elementType,
|
|
19041
|
+
/**
|
|
19042
|
+
* Shadow depth, corresponds to `dp` in the spec.
|
|
19043
|
+
* It accepts values between 0 and 24 inclusive.
|
|
19044
|
+
* @default 1
|
|
19045
|
+
*/
|
|
19046
|
+
elevation: chainPropTypes(integerPropType, (props) => {
|
|
19047
|
+
const {
|
|
19048
|
+
elevation,
|
|
19049
|
+
variant
|
|
19050
|
+
} = props;
|
|
19051
|
+
if (elevation > 0 && variant === "outlined") {
|
|
19052
|
+
return new Error(`MUI: Combining \`elevation={${elevation}}\` with \`variant="${variant}"\` has no effect. Either use \`elevation={0}\` or use a different \`variant\`.`);
|
|
19053
|
+
}
|
|
19054
|
+
return null;
|
|
19055
|
+
}),
|
|
19056
|
+
/**
|
|
19057
|
+
* If `true`, rounded corners are disabled.
|
|
19058
|
+
* @default false
|
|
19059
|
+
*/
|
|
19060
|
+
square: PropTypes.bool,
|
|
19061
|
+
/**
|
|
19062
|
+
* @ignore
|
|
19063
|
+
*/
|
|
19064
|
+
style: PropTypes.object,
|
|
19065
|
+
/**
|
|
19066
|
+
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
19067
|
+
*/
|
|
19068
|
+
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
19069
|
+
/**
|
|
19070
|
+
* The variant to use.
|
|
19071
|
+
* @default 'elevation'
|
|
19072
|
+
*/
|
|
19073
|
+
variant: PropTypes.oneOfType([PropTypes.oneOf(["elevation", "outlined"]), PropTypes.string])
|
|
19074
|
+
} : void 0;
|
|
19075
|
+
function getSnackbarContentUtilityClass(slot) {
|
|
19076
|
+
return generateUtilityClass("MuiSnackbarContent", slot);
|
|
19077
|
+
}
|
|
19078
|
+
generateUtilityClasses("MuiSnackbarContent", ["root", "message", "action"]);
|
|
19079
|
+
const useUtilityClasses$2 = (ownerState) => {
|
|
19080
|
+
const {
|
|
19081
|
+
classes
|
|
19082
|
+
} = ownerState;
|
|
19083
|
+
const slots = {
|
|
19084
|
+
root: ["root"],
|
|
19085
|
+
action: ["action"],
|
|
19086
|
+
message: ["message"]
|
|
19087
|
+
};
|
|
19088
|
+
return composeClasses(slots, getSnackbarContentUtilityClass, classes);
|
|
19089
|
+
};
|
|
19090
|
+
const SnackbarContentRoot = styled(Paper, {
|
|
19091
|
+
name: "MuiSnackbarContent",
|
|
19092
|
+
slot: "Root"
|
|
19093
|
+
})(memoTheme(({
|
|
19094
|
+
theme
|
|
19095
|
+
}) => {
|
|
19096
|
+
const emphasis = theme.palette.mode === "light" ? 0.8 : 0.98;
|
|
19097
|
+
return {
|
|
19098
|
+
...theme.typography.body2,
|
|
19099
|
+
color: theme.vars ? theme.vars.palette.SnackbarContent.color : theme.palette.getContrastText(emphasize(theme.palette.background.default, emphasis)),
|
|
19100
|
+
backgroundColor: theme.vars ? theme.vars.palette.SnackbarContent.bg : emphasize(theme.palette.background.default, emphasis),
|
|
19101
|
+
display: "flex",
|
|
19102
|
+
alignItems: "center",
|
|
19103
|
+
flexWrap: "wrap",
|
|
19104
|
+
padding: "6px 16px",
|
|
19105
|
+
flexGrow: 1,
|
|
19106
|
+
[theme.breakpoints.up("sm")]: {
|
|
19107
|
+
flexGrow: "initial",
|
|
19108
|
+
minWidth: 288
|
|
19109
|
+
}
|
|
19110
|
+
};
|
|
19111
|
+
}));
|
|
19112
|
+
const SnackbarContentMessage = styled("div", {
|
|
19113
|
+
name: "MuiSnackbarContent",
|
|
19114
|
+
slot: "Message"
|
|
19115
|
+
})({
|
|
19116
|
+
padding: "8px 0"
|
|
19117
|
+
});
|
|
19118
|
+
const SnackbarContentAction = styled("div", {
|
|
19119
|
+
name: "MuiSnackbarContent",
|
|
19120
|
+
slot: "Action"
|
|
19121
|
+
})({
|
|
19122
|
+
display: "flex",
|
|
19123
|
+
alignItems: "center",
|
|
19124
|
+
marginLeft: "auto",
|
|
19125
|
+
paddingLeft: 16,
|
|
19126
|
+
marginRight: -8
|
|
19127
|
+
});
|
|
19128
|
+
const SnackbarContent = /* @__PURE__ */ React__namespace.forwardRef(function SnackbarContent2(inProps, ref) {
|
|
19129
|
+
const props = useDefaultProps({
|
|
19130
|
+
props: inProps,
|
|
19131
|
+
name: "MuiSnackbarContent"
|
|
19132
|
+
});
|
|
19133
|
+
const {
|
|
19134
|
+
action,
|
|
19135
|
+
className,
|
|
19136
|
+
message,
|
|
19137
|
+
role = "alert",
|
|
19138
|
+
...other
|
|
19139
|
+
} = props;
|
|
19140
|
+
const ownerState = props;
|
|
19141
|
+
const classes = useUtilityClasses$2(ownerState);
|
|
19142
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(SnackbarContentRoot, {
|
|
19143
|
+
role,
|
|
19144
|
+
elevation: 6,
|
|
19145
|
+
className: clsx(classes.root, className),
|
|
19146
|
+
ownerState,
|
|
19147
|
+
ref,
|
|
19148
|
+
...other,
|
|
19149
|
+
children: [/* @__PURE__ */ jsxRuntime.jsx(SnackbarContentMessage, {
|
|
19150
|
+
className: classes.message,
|
|
19151
|
+
ownerState,
|
|
19152
|
+
children: message
|
|
19153
|
+
}), action ? /* @__PURE__ */ jsxRuntime.jsx(SnackbarContentAction, {
|
|
19154
|
+
className: classes.action,
|
|
19155
|
+
ownerState,
|
|
19156
|
+
children: action
|
|
19157
|
+
}) : null]
|
|
19158
|
+
});
|
|
19159
|
+
});
|
|
19160
|
+
process.env.NODE_ENV !== "production" ? SnackbarContent.propTypes = {
|
|
19161
|
+
// ┌────────────────────────────── Warning ──────────────────────────────┐
|
|
19162
|
+
// │ These PropTypes are generated from the TypeScript type definitions. │
|
|
19163
|
+
// │ To update them, edit the d.ts file and run `pnpm proptypes`. │
|
|
19164
|
+
// └─────────────────────────────────────────────────────────────────────┘
|
|
19165
|
+
/**
|
|
19166
|
+
* The action to display. It renders after the message, at the end of the snackbar.
|
|
19167
|
+
*/
|
|
19168
|
+
action: PropTypes.node,
|
|
19169
|
+
/**
|
|
19170
|
+
* Override or extend the styles applied to the component.
|
|
19171
|
+
*/
|
|
19172
|
+
classes: PropTypes.object,
|
|
19173
|
+
/**
|
|
19174
|
+
* @ignore
|
|
19175
|
+
*/
|
|
19176
|
+
className: PropTypes.string,
|
|
19177
|
+
/**
|
|
19178
|
+
* The message to display.
|
|
19179
|
+
*/
|
|
19180
|
+
message: PropTypes.node,
|
|
19181
|
+
/**
|
|
19182
|
+
* The ARIA role attribute of the element.
|
|
19183
|
+
* @default 'alert'
|
|
19184
|
+
*/
|
|
19185
|
+
role: PropTypes.string,
|
|
19186
|
+
/**
|
|
19187
|
+
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
19188
|
+
*/
|
|
19189
|
+
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
|
|
19190
|
+
} : void 0;
|
|
19191
|
+
function getSnackbarUtilityClass(slot) {
|
|
19192
|
+
return generateUtilityClass("MuiSnackbar", slot);
|
|
19193
|
+
}
|
|
19194
|
+
generateUtilityClasses("MuiSnackbar", ["root", "anchorOriginTopCenter", "anchorOriginBottomCenter", "anchorOriginTopRight", "anchorOriginBottomRight", "anchorOriginTopLeft", "anchorOriginBottomLeft"]);
|
|
19195
|
+
function isHostComponent(element) {
|
|
19196
|
+
return typeof element === "string";
|
|
19197
|
+
}
|
|
19198
|
+
function appendOwnerState(elementType, otherProps, ownerState) {
|
|
19199
|
+
if (elementType === void 0 || isHostComponent(elementType)) {
|
|
19200
|
+
return otherProps;
|
|
19201
|
+
}
|
|
19202
|
+
return {
|
|
19203
|
+
...otherProps,
|
|
19204
|
+
ownerState: {
|
|
19205
|
+
...otherProps.ownerState,
|
|
19206
|
+
...ownerState
|
|
19207
|
+
}
|
|
19208
|
+
};
|
|
19209
|
+
}
|
|
19210
|
+
function resolveComponentProps(componentProps, ownerState, slotState) {
|
|
19211
|
+
if (typeof componentProps === "function") {
|
|
19212
|
+
return componentProps(ownerState, slotState);
|
|
19213
|
+
}
|
|
19214
|
+
return componentProps;
|
|
19215
|
+
}
|
|
19216
|
+
function omitEventHandlers(object2) {
|
|
19217
|
+
if (object2 === void 0) {
|
|
19218
|
+
return {};
|
|
19219
|
+
}
|
|
19220
|
+
const result = {};
|
|
19221
|
+
Object.keys(object2).filter((prop) => !(prop.match(/^on[A-Z]/) && typeof object2[prop] === "function")).forEach((prop) => {
|
|
19222
|
+
result[prop] = object2[prop];
|
|
19223
|
+
});
|
|
19224
|
+
return result;
|
|
19225
|
+
}
|
|
19226
|
+
function mergeSlotProps(parameters) {
|
|
19227
|
+
const {
|
|
19228
|
+
getSlotProps,
|
|
19229
|
+
additionalProps,
|
|
19230
|
+
externalSlotProps,
|
|
19231
|
+
externalForwardedProps,
|
|
19232
|
+
className
|
|
19233
|
+
} = parameters;
|
|
19234
|
+
if (!getSlotProps) {
|
|
19235
|
+
const joinedClasses2 = clsx(additionalProps?.className, className, externalForwardedProps?.className, externalSlotProps?.className);
|
|
19236
|
+
const mergedStyle2 = {
|
|
19237
|
+
...additionalProps?.style,
|
|
19238
|
+
...externalForwardedProps?.style,
|
|
19239
|
+
...externalSlotProps?.style
|
|
19240
|
+
};
|
|
19241
|
+
const props2 = {
|
|
19242
|
+
...additionalProps,
|
|
19243
|
+
...externalForwardedProps,
|
|
19244
|
+
...externalSlotProps
|
|
19245
|
+
};
|
|
19246
|
+
if (joinedClasses2.length > 0) {
|
|
19247
|
+
props2.className = joinedClasses2;
|
|
19248
|
+
}
|
|
19249
|
+
if (Object.keys(mergedStyle2).length > 0) {
|
|
19250
|
+
props2.style = mergedStyle2;
|
|
19251
|
+
}
|
|
19252
|
+
return {
|
|
19253
|
+
props: props2,
|
|
19254
|
+
internalRef: void 0
|
|
19255
|
+
};
|
|
19256
|
+
}
|
|
19257
|
+
const eventHandlers = extractEventHandlers({
|
|
19258
|
+
...externalForwardedProps,
|
|
19259
|
+
...externalSlotProps
|
|
19260
|
+
});
|
|
19261
|
+
const componentsPropsWithoutEventHandlers = omitEventHandlers(externalSlotProps);
|
|
19262
|
+
const otherPropsWithoutEventHandlers = omitEventHandlers(externalForwardedProps);
|
|
19263
|
+
const internalSlotProps = getSlotProps(eventHandlers);
|
|
19264
|
+
const joinedClasses = clsx(internalSlotProps?.className, additionalProps?.className, className, externalForwardedProps?.className, externalSlotProps?.className);
|
|
19265
|
+
const mergedStyle = {
|
|
19266
|
+
...internalSlotProps?.style,
|
|
19267
|
+
...additionalProps?.style,
|
|
19268
|
+
...externalForwardedProps?.style,
|
|
19269
|
+
...externalSlotProps?.style
|
|
19270
|
+
};
|
|
19271
|
+
const props = {
|
|
19272
|
+
...internalSlotProps,
|
|
19273
|
+
...additionalProps,
|
|
19274
|
+
...otherPropsWithoutEventHandlers,
|
|
19275
|
+
...componentsPropsWithoutEventHandlers
|
|
19276
|
+
};
|
|
19277
|
+
if (joinedClasses.length > 0) {
|
|
19278
|
+
props.className = joinedClasses;
|
|
19279
|
+
}
|
|
19280
|
+
if (Object.keys(mergedStyle).length > 0) {
|
|
19281
|
+
props.style = mergedStyle;
|
|
19282
|
+
}
|
|
19283
|
+
return {
|
|
19284
|
+
props,
|
|
19285
|
+
internalRef: internalSlotProps.ref
|
|
19286
|
+
};
|
|
19287
|
+
}
|
|
19288
|
+
function useSlot(name2, parameters) {
|
|
19289
|
+
const {
|
|
19290
|
+
className,
|
|
19291
|
+
elementType: initialElementType,
|
|
19292
|
+
ownerState,
|
|
19293
|
+
externalForwardedProps,
|
|
19294
|
+
internalForwardedProps,
|
|
19295
|
+
shouldForwardComponentProp = false,
|
|
19296
|
+
...useSlotPropsParams
|
|
19297
|
+
} = parameters;
|
|
19298
|
+
const {
|
|
19299
|
+
component: rootComponent,
|
|
19300
|
+
slots = {
|
|
19301
|
+
[name2]: void 0
|
|
19302
|
+
},
|
|
19303
|
+
slotProps = {
|
|
19304
|
+
[name2]: void 0
|
|
19305
|
+
},
|
|
19306
|
+
...other
|
|
19307
|
+
} = externalForwardedProps;
|
|
19308
|
+
const elementType = slots[name2] || initialElementType;
|
|
19309
|
+
const resolvedComponentsProps = resolveComponentProps(slotProps[name2], ownerState);
|
|
19310
|
+
const {
|
|
19311
|
+
props: {
|
|
19312
|
+
component: slotComponent,
|
|
19313
|
+
...mergedProps
|
|
19314
|
+
},
|
|
19315
|
+
internalRef
|
|
19316
|
+
} = mergeSlotProps({
|
|
19317
|
+
className,
|
|
19318
|
+
...useSlotPropsParams,
|
|
19319
|
+
externalForwardedProps: name2 === "root" ? other : void 0,
|
|
19320
|
+
externalSlotProps: resolvedComponentsProps
|
|
19321
|
+
});
|
|
19322
|
+
const ref = useForkRef(internalRef, resolvedComponentsProps?.ref, parameters.ref);
|
|
19323
|
+
const LeafComponent = name2 === "root" ? slotComponent || rootComponent : slotComponent;
|
|
19324
|
+
const props = appendOwnerState(elementType, {
|
|
19325
|
+
...name2 === "root" && !rootComponent && !slots[name2] && internalForwardedProps,
|
|
19326
|
+
...name2 !== "root" && !slots[name2] && internalForwardedProps,
|
|
19327
|
+
...mergedProps,
|
|
19328
|
+
...LeafComponent && !shouldForwardComponentProp && {
|
|
19329
|
+
as: LeafComponent
|
|
19330
|
+
},
|
|
19331
|
+
...LeafComponent && shouldForwardComponentProp && {
|
|
19332
|
+
component: LeafComponent
|
|
19333
|
+
},
|
|
19334
|
+
ref
|
|
19335
|
+
}, ownerState);
|
|
19336
|
+
return [elementType, props];
|
|
19337
|
+
}
|
|
19338
|
+
const useUtilityClasses$1 = (ownerState) => {
|
|
19339
|
+
const {
|
|
19340
|
+
classes,
|
|
19341
|
+
anchorOrigin
|
|
19342
|
+
} = ownerState;
|
|
19343
|
+
const slots = {
|
|
19344
|
+
root: ["root", `anchorOrigin${capitalize(anchorOrigin.vertical)}${capitalize(anchorOrigin.horizontal)}`]
|
|
19345
|
+
};
|
|
19346
|
+
return composeClasses(slots, getSnackbarUtilityClass, classes);
|
|
19347
|
+
};
|
|
19348
|
+
const SnackbarRoot = styled("div", {
|
|
19349
|
+
name: "MuiSnackbar",
|
|
19350
|
+
slot: "Root",
|
|
19351
|
+
overridesResolver: (props, styles2) => {
|
|
19352
|
+
const {
|
|
19353
|
+
ownerState
|
|
19354
|
+
} = props;
|
|
19355
|
+
return [styles2.root, styles2[`anchorOrigin${capitalize(ownerState.anchorOrigin.vertical)}${capitalize(ownerState.anchorOrigin.horizontal)}`]];
|
|
19356
|
+
}
|
|
19357
|
+
})(memoTheme(({
|
|
19358
|
+
theme
|
|
19359
|
+
}) => ({
|
|
19360
|
+
zIndex: (theme.vars || theme).zIndex.snackbar,
|
|
19361
|
+
position: "fixed",
|
|
19362
|
+
display: "flex",
|
|
19363
|
+
left: 8,
|
|
19364
|
+
right: 8,
|
|
19365
|
+
justifyContent: "center",
|
|
19366
|
+
alignItems: "center",
|
|
19367
|
+
variants: [{
|
|
19368
|
+
props: ({
|
|
19369
|
+
ownerState
|
|
19370
|
+
}) => ownerState.anchorOrigin.vertical === "top",
|
|
19371
|
+
style: {
|
|
19372
|
+
top: 8,
|
|
19373
|
+
[theme.breakpoints.up("sm")]: {
|
|
19374
|
+
top: 24
|
|
19375
|
+
}
|
|
19376
|
+
}
|
|
19377
|
+
}, {
|
|
19378
|
+
props: ({
|
|
19379
|
+
ownerState
|
|
19380
|
+
}) => ownerState.anchorOrigin.vertical !== "top",
|
|
19381
|
+
style: {
|
|
19382
|
+
bottom: 8,
|
|
19383
|
+
[theme.breakpoints.up("sm")]: {
|
|
19384
|
+
bottom: 24
|
|
19385
|
+
}
|
|
19386
|
+
}
|
|
19387
|
+
}, {
|
|
19388
|
+
props: ({
|
|
19389
|
+
ownerState
|
|
19390
|
+
}) => ownerState.anchorOrigin.horizontal === "left",
|
|
19391
|
+
style: {
|
|
19392
|
+
justifyContent: "flex-start",
|
|
19393
|
+
[theme.breakpoints.up("sm")]: {
|
|
19394
|
+
left: 24,
|
|
19395
|
+
right: "auto"
|
|
19396
|
+
}
|
|
19397
|
+
}
|
|
19398
|
+
}, {
|
|
19399
|
+
props: ({
|
|
19400
|
+
ownerState
|
|
19401
|
+
}) => ownerState.anchorOrigin.horizontal === "right",
|
|
19402
|
+
style: {
|
|
19403
|
+
justifyContent: "flex-end",
|
|
19404
|
+
[theme.breakpoints.up("sm")]: {
|
|
19405
|
+
right: 24,
|
|
19406
|
+
left: "auto"
|
|
19407
|
+
}
|
|
19408
|
+
}
|
|
19409
|
+
}, {
|
|
19410
|
+
props: ({
|
|
19411
|
+
ownerState
|
|
19412
|
+
}) => ownerState.anchorOrigin.horizontal === "center",
|
|
19413
|
+
style: {
|
|
19414
|
+
[theme.breakpoints.up("sm")]: {
|
|
19415
|
+
left: "50%",
|
|
19416
|
+
right: "auto",
|
|
19417
|
+
transform: "translateX(-50%)"
|
|
19418
|
+
}
|
|
19419
|
+
}
|
|
19420
|
+
}]
|
|
19421
|
+
})));
|
|
19422
|
+
const Snackbar = /* @__PURE__ */ React__namespace.forwardRef(function Snackbar2(inProps, ref) {
|
|
19423
|
+
const props = useDefaultProps({
|
|
19424
|
+
props: inProps,
|
|
19425
|
+
name: "MuiSnackbar"
|
|
19426
|
+
});
|
|
19427
|
+
const theme = useTheme();
|
|
19428
|
+
const defaultTransitionDuration = {
|
|
19429
|
+
enter: theme.transitions.duration.enteringScreen,
|
|
19430
|
+
exit: theme.transitions.duration.leavingScreen
|
|
19431
|
+
};
|
|
19432
|
+
const {
|
|
19433
|
+
action,
|
|
19434
|
+
anchorOrigin: {
|
|
19435
|
+
vertical,
|
|
19436
|
+
horizontal
|
|
19437
|
+
} = {
|
|
19438
|
+
vertical: "bottom",
|
|
19439
|
+
horizontal: "left"
|
|
19440
|
+
},
|
|
19441
|
+
autoHideDuration = null,
|
|
19442
|
+
children,
|
|
19443
|
+
className,
|
|
19444
|
+
ClickAwayListenerProps: ClickAwayListenerPropsProp,
|
|
19445
|
+
ContentProps: ContentPropsProp,
|
|
19446
|
+
disableWindowBlurListener = false,
|
|
19447
|
+
message,
|
|
19448
|
+
onBlur,
|
|
19449
|
+
onClose,
|
|
19450
|
+
onFocus,
|
|
19451
|
+
onMouseEnter,
|
|
19452
|
+
onMouseLeave,
|
|
19453
|
+
open,
|
|
19454
|
+
resumeHideDuration,
|
|
19455
|
+
slots = {},
|
|
19456
|
+
slotProps = {},
|
|
19457
|
+
TransitionComponent: TransitionComponentProp,
|
|
19458
|
+
transitionDuration = defaultTransitionDuration,
|
|
19459
|
+
TransitionProps: {
|
|
19460
|
+
onEnter,
|
|
19461
|
+
onExited,
|
|
19462
|
+
...TransitionPropsProp
|
|
19463
|
+
} = {},
|
|
19464
|
+
...other
|
|
19465
|
+
} = props;
|
|
19466
|
+
const ownerState = {
|
|
19467
|
+
...props,
|
|
19468
|
+
anchorOrigin: {
|
|
19469
|
+
vertical,
|
|
19470
|
+
horizontal
|
|
19471
|
+
},
|
|
19472
|
+
autoHideDuration,
|
|
19473
|
+
disableWindowBlurListener,
|
|
19474
|
+
TransitionComponent: TransitionComponentProp,
|
|
19475
|
+
transitionDuration
|
|
19476
|
+
};
|
|
19477
|
+
const classes = useUtilityClasses$1(ownerState);
|
|
19478
|
+
const {
|
|
19479
|
+
getRootProps,
|
|
19480
|
+
onClickAway
|
|
19481
|
+
} = useSnackbar$1({
|
|
19482
|
+
...ownerState
|
|
19483
|
+
});
|
|
19484
|
+
const [exited, setExited] = React__namespace.useState(true);
|
|
19485
|
+
const handleExited = (node) => {
|
|
19486
|
+
setExited(true);
|
|
19487
|
+
if (onExited) {
|
|
19488
|
+
onExited(node);
|
|
19489
|
+
}
|
|
19490
|
+
};
|
|
19491
|
+
const handleEnter = (node, isAppearing) => {
|
|
19492
|
+
setExited(false);
|
|
19493
|
+
if (onEnter) {
|
|
19494
|
+
onEnter(node, isAppearing);
|
|
19495
|
+
}
|
|
19496
|
+
};
|
|
19497
|
+
const externalForwardedProps = {
|
|
19498
|
+
slots: {
|
|
19499
|
+
transition: TransitionComponentProp,
|
|
19500
|
+
...slots
|
|
19501
|
+
},
|
|
19502
|
+
slotProps: {
|
|
19503
|
+
content: ContentPropsProp,
|
|
19504
|
+
clickAwayListener: ClickAwayListenerPropsProp,
|
|
19505
|
+
transition: TransitionPropsProp,
|
|
19506
|
+
...slotProps
|
|
19507
|
+
}
|
|
19508
|
+
};
|
|
19509
|
+
const [Root, rootProps] = useSlot("root", {
|
|
19510
|
+
ref,
|
|
19511
|
+
className: [classes.root, className],
|
|
19512
|
+
elementType: SnackbarRoot,
|
|
19513
|
+
getSlotProps: getRootProps,
|
|
19514
|
+
externalForwardedProps: {
|
|
19515
|
+
...externalForwardedProps,
|
|
19516
|
+
...other
|
|
19517
|
+
},
|
|
19518
|
+
ownerState
|
|
19519
|
+
});
|
|
19520
|
+
const [ClickAwaySlot, {
|
|
19521
|
+
ownerState: clickAwayOwnerStateProp,
|
|
19522
|
+
...clickAwayListenerProps
|
|
19523
|
+
}] = useSlot("clickAwayListener", {
|
|
19524
|
+
elementType: ClickAwayListener,
|
|
19525
|
+
externalForwardedProps,
|
|
19526
|
+
getSlotProps: (handlers) => ({
|
|
19527
|
+
onClickAway: (...params) => {
|
|
19528
|
+
const event = params[0];
|
|
19529
|
+
handlers.onClickAway?.(...params);
|
|
19530
|
+
if (event?.defaultMuiPrevented) {
|
|
19531
|
+
return;
|
|
19532
|
+
}
|
|
19533
|
+
onClickAway(...params);
|
|
19534
|
+
}
|
|
19535
|
+
}),
|
|
19536
|
+
ownerState
|
|
19537
|
+
});
|
|
19538
|
+
const [ContentSlot, contentSlotProps] = useSlot("content", {
|
|
19539
|
+
elementType: SnackbarContent,
|
|
19540
|
+
shouldForwardComponentProp: true,
|
|
19541
|
+
externalForwardedProps,
|
|
19542
|
+
additionalProps: {
|
|
19543
|
+
message,
|
|
19544
|
+
action
|
|
19545
|
+
},
|
|
19546
|
+
ownerState
|
|
19547
|
+
});
|
|
19548
|
+
const [TransitionSlot, transitionProps] = useSlot("transition", {
|
|
19549
|
+
elementType: Grow,
|
|
19550
|
+
externalForwardedProps,
|
|
19551
|
+
getSlotProps: (handlers) => ({
|
|
19552
|
+
onEnter: (...params) => {
|
|
19553
|
+
handlers.onEnter?.(...params);
|
|
19554
|
+
handleEnter(...params);
|
|
19555
|
+
},
|
|
19556
|
+
onExited: (...params) => {
|
|
19557
|
+
handlers.onExited?.(...params);
|
|
19558
|
+
handleExited(...params);
|
|
19559
|
+
}
|
|
19560
|
+
}),
|
|
19561
|
+
additionalProps: {
|
|
19562
|
+
appear: true,
|
|
19563
|
+
in: open,
|
|
19564
|
+
timeout: transitionDuration,
|
|
19565
|
+
direction: vertical === "top" ? "down" : "up"
|
|
19566
|
+
},
|
|
19567
|
+
ownerState
|
|
19568
|
+
});
|
|
19569
|
+
if (!open && exited) {
|
|
19570
|
+
return null;
|
|
19571
|
+
}
|
|
19572
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ClickAwaySlot, {
|
|
19573
|
+
...clickAwayListenerProps,
|
|
19574
|
+
...slots.clickAwayListener && {
|
|
19575
|
+
ownerState: clickAwayOwnerStateProp
|
|
19576
|
+
},
|
|
19577
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(Root, {
|
|
19578
|
+
...rootProps,
|
|
19579
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(TransitionSlot, {
|
|
19580
|
+
...transitionProps,
|
|
19581
|
+
children: children || /* @__PURE__ */ jsxRuntime.jsx(ContentSlot, {
|
|
19582
|
+
...contentSlotProps
|
|
19583
|
+
})
|
|
19584
|
+
})
|
|
19585
|
+
})
|
|
19586
|
+
});
|
|
19587
|
+
});
|
|
19588
|
+
process.env.NODE_ENV !== "production" ? Snackbar.propTypes = {
|
|
17749
19589
|
// ┌────────────────────────────── Warning ──────────────────────────────┐
|
|
17750
19590
|
// │ These PropTypes are generated from the TypeScript type definitions. │
|
|
17751
|
-
// │
|
|
19591
|
+
// │ To update them, edit the d.ts file and run `pnpm proptypes`. │
|
|
17752
19592
|
// └─────────────────────────────────────────────────────────────────────┘
|
|
19593
|
+
/**
|
|
19594
|
+
* The action to display. It renders after the message, at the end of the snackbar.
|
|
19595
|
+
*/
|
|
19596
|
+
action: PropTypes.node,
|
|
19597
|
+
/**
|
|
19598
|
+
* The anchor of the `Snackbar`.
|
|
19599
|
+
* On smaller screens, the component grows to occupy all the available width,
|
|
19600
|
+
* the horizontal alignment is ignored.
|
|
19601
|
+
* @default { vertical: 'bottom', horizontal: 'left' }
|
|
19602
|
+
*/
|
|
19603
|
+
anchorOrigin: PropTypes.shape({
|
|
19604
|
+
horizontal: PropTypes.oneOf(["center", "left", "right"]).isRequired,
|
|
19605
|
+
vertical: PropTypes.oneOf(["bottom", "top"]).isRequired
|
|
19606
|
+
}),
|
|
19607
|
+
/**
|
|
19608
|
+
* The number of milliseconds to wait before automatically calling the
|
|
19609
|
+
* `onClose` function. `onClose` should then set the state of the `open`
|
|
19610
|
+
* prop to hide the Snackbar. This behavior is disabled by default with
|
|
19611
|
+
* the `null` value.
|
|
19612
|
+
* @default null
|
|
19613
|
+
*/
|
|
19614
|
+
autoHideDuration: PropTypes.number,
|
|
19615
|
+
/**
|
|
19616
|
+
* Replace the `SnackbarContent` component.
|
|
19617
|
+
*/
|
|
19618
|
+
children: PropTypes.element,
|
|
19619
|
+
/**
|
|
19620
|
+
* Override or extend the styles applied to the component.
|
|
19621
|
+
*/
|
|
19622
|
+
classes: PropTypes.object,
|
|
17753
19623
|
/**
|
|
17754
19624
|
* @ignore
|
|
17755
19625
|
*/
|
|
17756
|
-
|
|
19626
|
+
className: PropTypes.string,
|
|
19627
|
+
/**
|
|
19628
|
+
* Props applied to the `ClickAwayListener` element.
|
|
19629
|
+
* @deprecated Use `slotProps.clickAwayListener` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
19630
|
+
*/
|
|
19631
|
+
ClickAwayListenerProps: PropTypes.object,
|
|
19632
|
+
/**
|
|
19633
|
+
* Props applied to the [`SnackbarContent`](https://mui.com/material-ui/api/snackbar-content/) element.
|
|
19634
|
+
* @deprecated Use `slotProps.content` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
19635
|
+
*/
|
|
19636
|
+
ContentProps: PropTypes.object,
|
|
19637
|
+
/**
|
|
19638
|
+
* If `true`, the `autoHideDuration` timer will expire even if the window is not focused.
|
|
19639
|
+
* @default false
|
|
19640
|
+
*/
|
|
19641
|
+
disableWindowBlurListener: PropTypes.bool,
|
|
19642
|
+
/**
|
|
19643
|
+
* When displaying multiple consecutive snackbars using a single parent-rendered
|
|
19644
|
+
* `<Snackbar/>`, add the `key` prop to ensure independent treatment of each message.
|
|
19645
|
+
* For instance, use `<Snackbar key={message} />`. Otherwise, messages might update
|
|
19646
|
+
* in place, and features like `autoHideDuration` could be affected.
|
|
19647
|
+
*/
|
|
19648
|
+
key: () => null,
|
|
19649
|
+
/**
|
|
19650
|
+
* The message to display.
|
|
19651
|
+
*/
|
|
19652
|
+
message: PropTypes.node,
|
|
17757
19653
|
/**
|
|
17758
19654
|
* @ignore
|
|
17759
19655
|
*/
|
|
17760
|
-
|
|
19656
|
+
onBlur: PropTypes.func,
|
|
19657
|
+
/**
|
|
19658
|
+
* Callback fired when the component requests to be closed.
|
|
19659
|
+
* Typically `onClose` is used to set state in the parent component,
|
|
19660
|
+
* which is used to control the `Snackbar` `open` prop.
|
|
19661
|
+
* The `reason` parameter can optionally be used to control the response to `onClose`,
|
|
19662
|
+
* for example ignoring `clickaway`.
|
|
19663
|
+
*
|
|
19664
|
+
* @param {React.SyntheticEvent<any> | Event} event The event source of the callback.
|
|
19665
|
+
* @param {string} reason Can be: `"timeout"` (`autoHideDuration` expired), `"clickaway"`, or `"escapeKeyDown"`.
|
|
19666
|
+
*/
|
|
19667
|
+
onClose: PropTypes.func,
|
|
19668
|
+
/**
|
|
19669
|
+
* @ignore
|
|
19670
|
+
*/
|
|
19671
|
+
onFocus: PropTypes.func,
|
|
19672
|
+
/**
|
|
19673
|
+
* @ignore
|
|
19674
|
+
*/
|
|
19675
|
+
onMouseEnter: PropTypes.func,
|
|
19676
|
+
/**
|
|
19677
|
+
* @ignore
|
|
19678
|
+
*/
|
|
19679
|
+
onMouseLeave: PropTypes.func,
|
|
19680
|
+
/**
|
|
19681
|
+
* If `true`, the component is shown.
|
|
19682
|
+
*/
|
|
19683
|
+
open: PropTypes.bool,
|
|
19684
|
+
/**
|
|
19685
|
+
* The number of milliseconds to wait before dismissing after user interaction.
|
|
19686
|
+
* If `autoHideDuration` prop isn't specified, it does nothing.
|
|
19687
|
+
* If `autoHideDuration` prop is specified but `resumeHideDuration` isn't,
|
|
19688
|
+
* we default to `autoHideDuration / 2` ms.
|
|
19689
|
+
*/
|
|
19690
|
+
resumeHideDuration: PropTypes.number,
|
|
19691
|
+
/**
|
|
19692
|
+
* The props used for each slot inside.
|
|
19693
|
+
* @default {}
|
|
19694
|
+
*/
|
|
19695
|
+
slotProps: PropTypes.shape({
|
|
19696
|
+
clickAwayListener: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
|
|
19697
|
+
content: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
|
|
19698
|
+
root: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
|
|
19699
|
+
transition: PropTypes.oneOfType([PropTypes.func, PropTypes.object])
|
|
19700
|
+
}),
|
|
19701
|
+
/**
|
|
19702
|
+
* The components used for each slot inside.
|
|
19703
|
+
* @default {}
|
|
19704
|
+
*/
|
|
19705
|
+
slots: PropTypes.shape({
|
|
19706
|
+
clickAwayListener: PropTypes.elementType,
|
|
19707
|
+
content: PropTypes.elementType,
|
|
19708
|
+
root: PropTypes.elementType,
|
|
19709
|
+
transition: PropTypes.elementType
|
|
19710
|
+
}),
|
|
19711
|
+
/**
|
|
19712
|
+
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
19713
|
+
*/
|
|
19714
|
+
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
19715
|
+
/**
|
|
19716
|
+
* The component used for the transition.
|
|
19717
|
+
* [Follow this guide](https://mui.com/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
|
|
19718
|
+
* @deprecated Use `slots.transition` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
19719
|
+
* @default Grow
|
|
19720
|
+
*/
|
|
19721
|
+
TransitionComponent: PropTypes.elementType,
|
|
19722
|
+
/**
|
|
19723
|
+
* The duration for the transition, in milliseconds.
|
|
19724
|
+
* You may specify a single timeout for all transitions, or individually with an object.
|
|
19725
|
+
* @default {
|
|
19726
|
+
* enter: theme.transitions.duration.enteringScreen,
|
|
19727
|
+
* exit: theme.transitions.duration.leavingScreen,
|
|
19728
|
+
* }
|
|
19729
|
+
*/
|
|
19730
|
+
transitionDuration: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({
|
|
19731
|
+
appear: PropTypes.number,
|
|
19732
|
+
enter: PropTypes.number,
|
|
19733
|
+
exit: PropTypes.number
|
|
19734
|
+
})]),
|
|
19735
|
+
/**
|
|
19736
|
+
* Props applied to the transition element.
|
|
19737
|
+
* By default, the element is based on this [`Transition`](https://reactcommunity.org/react-transition-group/transition/) component.
|
|
19738
|
+
* @deprecated Use `slotProps.transition` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
19739
|
+
* @default {}
|
|
19740
|
+
*/
|
|
19741
|
+
TransitionProps: PropTypes.object
|
|
17761
19742
|
} : void 0;
|
|
17762
|
-
function useDefaultProps(params) {
|
|
17763
|
-
return useDefaultProps$1(params);
|
|
17764
|
-
}
|
|
17765
|
-
function generateUtilityClasses(componentName, slots, globalStatePrefix = "Mui") {
|
|
17766
|
-
const result = {};
|
|
17767
|
-
slots.forEach((slot) => {
|
|
17768
|
-
result[slot] = generateUtilityClass(componentName, slot, globalStatePrefix);
|
|
17769
|
-
});
|
|
17770
|
-
return result;
|
|
17771
|
-
}
|
|
17772
19743
|
var SnackbarType = /* @__PURE__ */ ((SnackbarType2) => {
|
|
17773
19744
|
SnackbarType2["INFO"] = "info";
|
|
17774
19745
|
SnackbarType2["SUCCESS"] = "success";
|
|
@@ -17776,10 +19747,61 @@ var SnackbarType = /* @__PURE__ */ ((SnackbarType2) => {
|
|
|
17776
19747
|
SnackbarType2["WARNING"] = "warning";
|
|
17777
19748
|
return SnackbarType2;
|
|
17778
19749
|
})(SnackbarType || {});
|
|
17779
|
-
const SnackbarContext = React.createContext(
|
|
19750
|
+
const SnackbarContext = React.createContext(
|
|
19751
|
+
void 0
|
|
19752
|
+
);
|
|
19753
|
+
const SnackbarProvider = ({
|
|
19754
|
+
children
|
|
19755
|
+
}) => {
|
|
19756
|
+
const [snackbar, setSnackbar] = React.useState(
|
|
19757
|
+
{
|
|
19758
|
+
open: false,
|
|
19759
|
+
message: "",
|
|
19760
|
+
type: "info"
|
|
19761
|
+
/* INFO */
|
|
19762
|
+
}
|
|
19763
|
+
);
|
|
19764
|
+
const showSnackbar = (params) => {
|
|
19765
|
+
setSnackbar({
|
|
19766
|
+
open: true,
|
|
19767
|
+
...params
|
|
19768
|
+
});
|
|
19769
|
+
};
|
|
19770
|
+
const handleClose = () => {
|
|
19771
|
+
setSnackbar({ ...snackbar, open: false });
|
|
19772
|
+
};
|
|
19773
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(SnackbarContext.Provider, { value: { showSnackbar }, children: [
|
|
19774
|
+
children,
|
|
19775
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
19776
|
+
Snackbar,
|
|
19777
|
+
{
|
|
19778
|
+
anchorOrigin: { vertical: "bottom", horizontal: "right" },
|
|
19779
|
+
sx: {
|
|
19780
|
+
"&.MuiSnackbar-root": {
|
|
19781
|
+
bottom: STYLE.PADDING_GAP_LAYOUT,
|
|
19782
|
+
right: STYLE.PADDING_GAP_LAYOUT
|
|
19783
|
+
}
|
|
19784
|
+
},
|
|
19785
|
+
open: snackbar.open,
|
|
19786
|
+
autoHideDuration: 6e3,
|
|
19787
|
+
onClose: handleClose,
|
|
19788
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
19789
|
+
material.Alert,
|
|
19790
|
+
{
|
|
19791
|
+
sx: { borderRadius: STYLE.BORDER_RADIUS_ELEMENT, boxShadow: 1 },
|
|
19792
|
+
onClose: handleClose,
|
|
19793
|
+
severity: snackbar.type,
|
|
19794
|
+
children: snackbar.message
|
|
19795
|
+
}
|
|
19796
|
+
)
|
|
19797
|
+
}
|
|
19798
|
+
)
|
|
19799
|
+
] });
|
|
19800
|
+
};
|
|
17780
19801
|
const useSnackbar = () => {
|
|
17781
19802
|
const context = React.useContext(SnackbarContext);
|
|
17782
|
-
if (!context)
|
|
19803
|
+
if (!context)
|
|
19804
|
+
throw new Error("useSnackbar must be used within a SnackbarProvider");
|
|
17783
19805
|
return context;
|
|
17784
19806
|
};
|
|
17785
19807
|
const useTagSelector = (movementId) => {
|
|
@@ -17793,11 +19815,15 @@ const useTagSelector = (movementId) => {
|
|
|
17793
19815
|
const { showSnackbar } = useSnackbar();
|
|
17794
19816
|
React.useEffect(() => {
|
|
17795
19817
|
if (searchQuery.trim()) {
|
|
17796
|
-
const filtered = users.filter(
|
|
19818
|
+
const filtered = users.filter(
|
|
19819
|
+
(user) => user.name.toLowerCase().includes(searchQuery.toLowerCase())
|
|
19820
|
+
).filter((user) => !taggedUserIds.has(user.id));
|
|
17797
19821
|
setFilteredUsers(filtered);
|
|
17798
19822
|
setSelectedUserIndex(0);
|
|
17799
19823
|
} else {
|
|
17800
|
-
const availableUsers = users.filter(
|
|
19824
|
+
const availableUsers = users.filter(
|
|
19825
|
+
(user) => !taggedUserIds.has(user?.id)
|
|
19826
|
+
);
|
|
17801
19827
|
setFilteredUsers(availableUsers);
|
|
17802
19828
|
setSelectedUserIndex(0);
|
|
17803
19829
|
}
|
|
@@ -17813,7 +19839,10 @@ const useTagSelector = (movementId) => {
|
|
|
17813
19839
|
const spaceIndex = afterAt?.indexOf(" ");
|
|
17814
19840
|
if (spaceIndex === -1) {
|
|
17815
19841
|
setSearchQuery(afterAt);
|
|
17816
|
-
setTagPosition({
|
|
19842
|
+
setTagPosition({
|
|
19843
|
+
start: lastAtSymbol,
|
|
19844
|
+
end: lastAtSymbol + afterAt.length + 1
|
|
19845
|
+
});
|
|
17817
19846
|
setShowTagSelector(true);
|
|
17818
19847
|
return;
|
|
17819
19848
|
}
|
|
@@ -17900,7 +19929,9 @@ const useUpdateCurrentAccess = () => {
|
|
|
17900
19929
|
async (pathname) => {
|
|
17901
19930
|
const currentAccess = findCurrentAccessByPath(pathname);
|
|
17902
19931
|
if (currentAccess) {
|
|
17903
|
-
await dispatch(
|
|
19932
|
+
await dispatch(
|
|
19933
|
+
ACTION_ACCOUNT.updateCurrentAccess(currentAccess)
|
|
19934
|
+
).unwrap();
|
|
17904
19935
|
}
|
|
17905
19936
|
},
|
|
17906
19937
|
[dispatch]
|
|
@@ -17937,6 +19968,44 @@ const useVersionCheck = (options) => {
|
|
|
17937
19968
|
}
|
|
17938
19969
|
}, [options?.interval]);
|
|
17939
19970
|
};
|
|
19971
|
+
const SidebarContext = React.createContext(
|
|
19972
|
+
void 0
|
|
19973
|
+
);
|
|
19974
|
+
const SidebarProvider = ({
|
|
19975
|
+
children
|
|
19976
|
+
}) => {
|
|
19977
|
+
const [isCollapsed, setIsCollapsed] = React.useState(false);
|
|
19978
|
+
const [activeExpandMenu, setActiveExpandMenu] = React.useState(
|
|
19979
|
+
null
|
|
19980
|
+
);
|
|
19981
|
+
const { current_access } = reactRedux.useSelector(
|
|
19982
|
+
(state) => state.account
|
|
19983
|
+
);
|
|
19984
|
+
React.useEffect(() => {
|
|
19985
|
+
setActiveExpandMenu(null);
|
|
19986
|
+
}, [current_access]);
|
|
19987
|
+
const sidebarWidth = activeExpandMenu ? isCollapsed ? STYLE.WIDTH_COLLAPSE + STYLE.WIDTH_SIDEBAR_EXPAND : STYLE.WIDTH_SIDEBAR + STYLE.WIDTH_SIDEBAR_EXPAND : isCollapsed ? STYLE.WIDTH_COLLAPSE : STYLE.WIDTH_SIDEBAR;
|
|
19988
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
19989
|
+
SidebarContext.Provider,
|
|
19990
|
+
{
|
|
19991
|
+
value: {
|
|
19992
|
+
isCollapsed,
|
|
19993
|
+
setIsCollapsed,
|
|
19994
|
+
activeExpandMenu,
|
|
19995
|
+
setActiveExpandMenu,
|
|
19996
|
+
sidebarWidth: `${sidebarWidth}px`
|
|
19997
|
+
},
|
|
19998
|
+
children
|
|
19999
|
+
}
|
|
20000
|
+
);
|
|
20001
|
+
};
|
|
20002
|
+
const useSidebar = () => {
|
|
20003
|
+
const context = React.useContext(SidebarContext);
|
|
20004
|
+
if (context === void 0) {
|
|
20005
|
+
throw new Error("useSidebar must be used within a SidebarProvider");
|
|
20006
|
+
}
|
|
20007
|
+
return context;
|
|
20008
|
+
};
|
|
17940
20009
|
const AuthLayout = ({ children }) => {
|
|
17941
20010
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
17942
20011
|
material.Stack,
|
|
@@ -18391,11 +20460,11 @@ const useUtilityClasses = (ownerState) => {
|
|
|
18391
20460
|
const CircularProgressRoot = styled("span", {
|
|
18392
20461
|
name: "MuiCircularProgress",
|
|
18393
20462
|
slot: "Root",
|
|
18394
|
-
overridesResolver: (props,
|
|
20463
|
+
overridesResolver: (props, styles2) => {
|
|
18395
20464
|
const {
|
|
18396
20465
|
ownerState
|
|
18397
20466
|
} = props;
|
|
18398
|
-
return [
|
|
20467
|
+
return [styles2.root, styles2[ownerState.variant], styles2[`color${capitalize(ownerState.color)}`]];
|
|
18399
20468
|
}
|
|
18400
20469
|
})(memoTheme(({
|
|
18401
20470
|
theme
|
|
@@ -18434,11 +20503,11 @@ const CircularProgressSVG = styled("svg", {
|
|
|
18434
20503
|
const CircularProgressCircle = styled("circle", {
|
|
18435
20504
|
name: "MuiCircularProgress",
|
|
18436
20505
|
slot: "Circle",
|
|
18437
|
-
overridesResolver: (props,
|
|
20506
|
+
overridesResolver: (props, styles2) => {
|
|
18438
20507
|
const {
|
|
18439
20508
|
ownerState
|
|
18440
20509
|
} = props;
|
|
18441
|
-
return [
|
|
20510
|
+
return [styles2.circle, styles2[`circle${capitalize(ownerState.variant)}`], ownerState.disableShrink && styles2.circleDisableShrink];
|
|
18442
20511
|
}
|
|
18443
20512
|
})(memoTheme(({
|
|
18444
20513
|
theme
|
|
@@ -19193,8 +21262,32 @@ const MonitorPart = ({
|
|
|
19193
21262
|
const DashboardLayout = ({
|
|
19194
21263
|
children
|
|
19195
21264
|
}) => {
|
|
19196
|
-
|
|
19197
|
-
|
|
21265
|
+
const isSystemMonitor = useIsSystemMonitor();
|
|
21266
|
+
const { sidebarWidth } = useSidebar();
|
|
21267
|
+
if (isSystemMonitor) return /* @__PURE__ */ jsxRuntime.jsx(MonitorPart, { children });
|
|
21268
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
21269
|
+
material.Stack,
|
|
21270
|
+
{
|
|
21271
|
+
sx: {
|
|
21272
|
+
minHeight: "100vh",
|
|
21273
|
+
width: "100%"
|
|
21274
|
+
},
|
|
21275
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(material.Stack, { p: 0, gap: 0, children: /* @__PURE__ */ jsxRuntime.jsx(StackRow, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
21276
|
+
material.Stack,
|
|
21277
|
+
{
|
|
21278
|
+
sx: {
|
|
21279
|
+
overflowY: "auto",
|
|
21280
|
+
marginLeft: sidebarWidth,
|
|
21281
|
+
width: "100%",
|
|
21282
|
+
transition: "margin-left 0.3s ease",
|
|
21283
|
+
background: "#F5F6F8",
|
|
21284
|
+
minHeight: `calc(100vh - ${STYLE.HEIGHT_HEADER}px)`
|
|
21285
|
+
},
|
|
21286
|
+
children
|
|
21287
|
+
}
|
|
21288
|
+
) }) })
|
|
21289
|
+
}
|
|
21290
|
+
);
|
|
19198
21291
|
};
|
|
19199
21292
|
const DefaultLayout = ({ children }) => {
|
|
19200
21293
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -22116,13 +24209,13 @@ Object.assign(/* @__PURE__ */ Object.create(null), {
|
|
|
22116
24209
|
});
|
|
22117
24210
|
const isSchema = (obj) => obj && obj.__isYupSchema__;
|
|
22118
24211
|
class Condition {
|
|
22119
|
-
static fromOptions(refs,
|
|
22120
|
-
if (!
|
|
24212
|
+
static fromOptions(refs, config2) {
|
|
24213
|
+
if (!config2.then && !config2.otherwise) throw new TypeError("either `then:` or `otherwise:` is required for `when()` conditions");
|
|
22121
24214
|
let {
|
|
22122
24215
|
is,
|
|
22123
24216
|
then,
|
|
22124
24217
|
otherwise
|
|
22125
|
-
} =
|
|
24218
|
+
} = config2;
|
|
22126
24219
|
let check = typeof is === "function" ? is : (...values2) => values2.every((value2) => value2 === is);
|
|
22127
24220
|
return new Condition(refs, (values2, schema) => {
|
|
22128
24221
|
var _branch;
|
|
@@ -22208,7 +24301,7 @@ class Reference {
|
|
|
22208
24301
|
}
|
|
22209
24302
|
Reference.prototype.__isYupRef = true;
|
|
22210
24303
|
const isAbsent = (value2) => value2 == null;
|
|
22211
|
-
function createValidation(
|
|
24304
|
+
function createValidation(config2) {
|
|
22212
24305
|
function validate({
|
|
22213
24306
|
value: value2,
|
|
22214
24307
|
path = "",
|
|
@@ -22222,7 +24315,7 @@ function createValidation(config) {
|
|
|
22222
24315
|
params,
|
|
22223
24316
|
message,
|
|
22224
24317
|
skipAbsent
|
|
22225
|
-
} =
|
|
24318
|
+
} = config2;
|
|
22226
24319
|
let {
|
|
22227
24320
|
parent,
|
|
22228
24321
|
context,
|
|
@@ -22290,7 +24383,7 @@ function createValidation(config) {
|
|
|
22290
24383
|
}
|
|
22291
24384
|
handleResult(result);
|
|
22292
24385
|
}
|
|
22293
|
-
validate.OPTIONS =
|
|
24386
|
+
validate.OPTIONS = config2;
|
|
22294
24387
|
return validate;
|
|
22295
24388
|
}
|
|
22296
24389
|
function resolveParams(params, options) {
|
|
@@ -24171,37 +26264,6 @@ const NotFoundPage = ({}) => {
|
|
|
24171
26264
|
/* @__PURE__ */ jsxRuntime.jsx(ButtonElement, { content: "Quay lại trang chủ", fullWidth: false, onClick: () => navigate(PAGE.AUTH.path) })
|
|
24172
26265
|
] });
|
|
24173
26266
|
};
|
|
24174
|
-
const SidebarContext = React.createContext(
|
|
24175
|
-
void 0
|
|
24176
|
-
);
|
|
24177
|
-
const SidebarProvider = ({
|
|
24178
|
-
children
|
|
24179
|
-
}) => {
|
|
24180
|
-
const [isCollapsed, setIsCollapsed] = React.useState(false);
|
|
24181
|
-
const [activeExpandMenu, setActiveExpandMenu] = React.useState(
|
|
24182
|
-
null
|
|
24183
|
-
);
|
|
24184
|
-
const { current_access } = reactRedux.useSelector(
|
|
24185
|
-
(state) => state.account
|
|
24186
|
-
);
|
|
24187
|
-
React.useEffect(() => {
|
|
24188
|
-
setActiveExpandMenu(null);
|
|
24189
|
-
}, [current_access]);
|
|
24190
|
-
const sidebarWidth = activeExpandMenu ? isCollapsed ? STYLE.WIDTH_COLLAPSE + STYLE.WIDTH_SIDEBAR_EXPAND : STYLE.WIDTH_SIDEBAR + STYLE.WIDTH_SIDEBAR_EXPAND : isCollapsed ? STYLE.WIDTH_COLLAPSE : STYLE.WIDTH_SIDEBAR;
|
|
24191
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
24192
|
-
SidebarContext.Provider,
|
|
24193
|
-
{
|
|
24194
|
-
value: {
|
|
24195
|
-
isCollapsed,
|
|
24196
|
-
setIsCollapsed,
|
|
24197
|
-
activeExpandMenu,
|
|
24198
|
-
setActiveExpandMenu,
|
|
24199
|
-
sidebarWidth: `${sidebarWidth}px`
|
|
24200
|
-
},
|
|
24201
|
-
children
|
|
24202
|
-
}
|
|
24203
|
-
);
|
|
24204
|
-
};
|
|
24205
26267
|
const LayoutGroupContext = React.createContext({});
|
|
24206
26268
|
function useConstant(init) {
|
|
24207
26269
|
const ref = React.useRef(null);
|
|
@@ -27526,10 +29588,10 @@ function makeLatestValues(props, context, presenceContext, scrapeMotionValues) {
|
|
|
27526
29588
|
}
|
|
27527
29589
|
return values2;
|
|
27528
29590
|
}
|
|
27529
|
-
const makeUseVisualState = (
|
|
29591
|
+
const makeUseVisualState = (config2) => (props, isStatic) => {
|
|
27530
29592
|
const context = React.useContext(MotionContext);
|
|
27531
29593
|
const presenceContext = React.useContext(PresenceContext);
|
|
27532
|
-
const make = () => makeState(
|
|
29594
|
+
const make = () => makeState(config2, props, context, presenceContext);
|
|
27533
29595
|
return isStatic ? make() : useConstant(make);
|
|
27534
29596
|
};
|
|
27535
29597
|
function scrapeMotionValuesFromProps$1(props, prevProps, visualElement) {
|
|
@@ -29861,13 +31923,13 @@ class FlatTree {
|
|
|
29861
31923
|
this.children.forEach(callback);
|
|
29862
31924
|
}
|
|
29863
31925
|
}
|
|
29864
|
-
function delay(callback,
|
|
31926
|
+
function delay(callback, timeout2) {
|
|
29865
31927
|
const start = time.now();
|
|
29866
31928
|
const checkElapsed = ({ timestamp }) => {
|
|
29867
31929
|
const elapsed = timestamp - start;
|
|
29868
|
-
if (elapsed >=
|
|
31930
|
+
if (elapsed >= timeout2) {
|
|
29869
31931
|
cancelFrame(checkElapsed);
|
|
29870
|
-
callback(elapsed -
|
|
31932
|
+
callback(elapsed - timeout2);
|
|
29871
31933
|
}
|
|
29872
31934
|
};
|
|
29873
31935
|
frame.setup(checkElapsed, true);
|
|
@@ -30853,10 +32915,10 @@ function createProjectionNode({ attachResizeListener, defaultParent, measureScro
|
|
|
30853
32915
|
}
|
|
30854
32916
|
const stack = this.sharedNodes.get(layoutId);
|
|
30855
32917
|
stack.add(node);
|
|
30856
|
-
const
|
|
32918
|
+
const config2 = node.options.initialPromotionConfig;
|
|
30857
32919
|
node.promote({
|
|
30858
|
-
transition:
|
|
30859
|
-
preserveFollowOpacity:
|
|
32920
|
+
transition: config2 ? config2.transition : void 0,
|
|
32921
|
+
preserveFollowOpacity: config2 && config2.shouldPreserveFollowOpacity ? config2.shouldPreserveFollowOpacity(node) : void 0
|
|
30860
32922
|
});
|
|
30861
32923
|
}
|
|
30862
32924
|
isLead() {
|
|
@@ -31477,7 +33539,7 @@ const MotionBox = ({
|
|
|
31477
33539
|
} : {};
|
|
31478
33540
|
return /* @__PURE__ */ jsxRuntime.jsx(motion.div, { ...motionProps, ...getAnimationProps(), ...hoverProps, onClick, style: { ...sx }, children });
|
|
31479
33541
|
};
|
|
31480
|
-
const
|
|
33542
|
+
const IconLeft = (props) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
31481
33543
|
"svg",
|
|
31482
33544
|
{
|
|
31483
33545
|
width: "20",
|
|
@@ -31489,7 +33551,7 @@ const IconRight = (props) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
|
31489
33551
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
31490
33552
|
"path",
|
|
31491
33553
|
{
|
|
31492
|
-
d: "
|
|
33554
|
+
d: "M8 15L1 8M1 8L8 1M1 8L19 8",
|
|
31493
33555
|
stroke: "currentColor",
|
|
31494
33556
|
"stroke-width": "2",
|
|
31495
33557
|
"stroke-linecap": "round",
|
|
@@ -31498,7 +33560,7 @@ const IconRight = (props) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
|
31498
33560
|
)
|
|
31499
33561
|
}
|
|
31500
33562
|
);
|
|
31501
|
-
const
|
|
33563
|
+
const IconRight = (props) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
31502
33564
|
"svg",
|
|
31503
33565
|
{
|
|
31504
33566
|
width: "20",
|
|
@@ -31510,7 +33572,7 @@ const IconLeft = (props) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
|
31510
33572
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
31511
33573
|
"path",
|
|
31512
33574
|
{
|
|
31513
|
-
d: "
|
|
33575
|
+
d: "M12 1L19 8M19 8L12 15M19 8L1 8",
|
|
31514
33576
|
stroke: "currentColor",
|
|
31515
33577
|
"stroke-width": "2",
|
|
31516
33578
|
"stroke-linecap": "round",
|
|
@@ -31539,12 +33601,25 @@ const AppGrid = ({
|
|
|
31539
33601
|
const pageSize = Math.max(1, columns * Math.max(1, rows));
|
|
31540
33602
|
const totalPages = Math.max(1, Math.ceil(apps.length / pageSize));
|
|
31541
33603
|
const [page, setPage] = React.useState(0);
|
|
33604
|
+
const { user } = reactRedux.useSelector((state) => state.account);
|
|
31542
33605
|
React.useEffect(() => {
|
|
31543
33606
|
setPage((prev) => prev >= totalPages ? totalPages - 1 : prev);
|
|
31544
33607
|
}, [totalPages, columns, rows, apps.length]);
|
|
31545
33608
|
const start = page * pageSize;
|
|
31546
33609
|
const end = start + pageSize;
|
|
31547
33610
|
const visibleApps = totalPages > 1 ? apps.slice(start, end) : apps;
|
|
33611
|
+
const findLink = (app2) => {
|
|
33612
|
+
if (!app2.children?.length) {
|
|
33613
|
+
return app2.path;
|
|
33614
|
+
}
|
|
33615
|
+
for (const i of app2.children || []) {
|
|
33616
|
+
if (user?.type && i.allowUserTypes.includes(user?.type)) {
|
|
33617
|
+
if (i.path) {
|
|
33618
|
+
return `${i.path}`;
|
|
33619
|
+
}
|
|
33620
|
+
}
|
|
33621
|
+
}
|
|
33622
|
+
};
|
|
31548
33623
|
return /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { sx: { position: "relative" }, children: [
|
|
31549
33624
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
31550
33625
|
material.Box,
|
|
@@ -31556,62 +33631,73 @@ const AppGrid = ({
|
|
|
31556
33631
|
},
|
|
31557
33632
|
children: visibleApps.map((app2, index) => {
|
|
31558
33633
|
const isSelected = selectedAppId === app2.key;
|
|
31559
|
-
return /* @__PURE__ */ jsxRuntime.
|
|
31560
|
-
|
|
33634
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
33635
|
+
reactRouterDom.Link,
|
|
31561
33636
|
{
|
|
31562
|
-
|
|
31563
|
-
|
|
31564
|
-
|
|
31565
|
-
|
|
31566
|
-
|
|
31567
|
-
cursor: "pointer",
|
|
31568
|
-
display: "flex",
|
|
31569
|
-
flex: 1,
|
|
31570
|
-
alignItems: "center",
|
|
31571
|
-
flexDirection: "column"
|
|
33637
|
+
to: findLink(app2) || "#",
|
|
33638
|
+
style: {
|
|
33639
|
+
textDecoration: "none",
|
|
33640
|
+
color: "inherit",
|
|
33641
|
+
width: "100%"
|
|
31572
33642
|
},
|
|
31573
|
-
children:
|
|
31574
|
-
|
|
31575
|
-
|
|
31576
|
-
|
|
31577
|
-
|
|
31578
|
-
|
|
31579
|
-
|
|
31580
|
-
|
|
31581
|
-
|
|
31582
|
-
|
|
31583
|
-
|
|
31584
|
-
|
|
31585
|
-
|
|
31586
|
-
|
|
31587
|
-
|
|
31588
|
-
|
|
31589
|
-
|
|
33643
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
33644
|
+
MotionBox,
|
|
33645
|
+
{
|
|
33646
|
+
preset: "staggerItem",
|
|
33647
|
+
index,
|
|
33648
|
+
hover: true,
|
|
33649
|
+
onClick: () => onClickItem?.(app2),
|
|
33650
|
+
sx: {
|
|
33651
|
+
cursor: "pointer",
|
|
33652
|
+
display: "flex",
|
|
33653
|
+
flex: 1,
|
|
33654
|
+
alignItems: "center",
|
|
33655
|
+
flexDirection: "column"
|
|
33656
|
+
},
|
|
33657
|
+
children: [
|
|
33658
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
33659
|
+
material.Box,
|
|
31590
33660
|
{
|
|
31591
|
-
sx: {
|
|
31592
|
-
|
|
31593
|
-
|
|
33661
|
+
sx: {
|
|
33662
|
+
width: iconSize,
|
|
33663
|
+
height: iconSize,
|
|
33664
|
+
borderRadius: iconRadius,
|
|
33665
|
+
mb: 1.5,
|
|
33666
|
+
display: "flex",
|
|
33667
|
+
alignItems: "center",
|
|
33668
|
+
justifyContent: "center",
|
|
33669
|
+
background: getAppColor(app2.category),
|
|
33670
|
+
boxShadow: isSelected ? `0 0 0 1px ${theme.palette.primary.main}, ${iconShadow}` : iconShadow
|
|
33671
|
+
},
|
|
33672
|
+
children: app2.icon.startsWith("/") && /* @__PURE__ */ jsxRuntime.jsx(
|
|
33673
|
+
ImageElement,
|
|
33674
|
+
{
|
|
33675
|
+
sx: { width: iconSize * 0.56, height: iconSize * 0.56 },
|
|
33676
|
+
url: app2.icon,
|
|
33677
|
+
sizeType: ImageSizeType.SQUARE
|
|
33678
|
+
}
|
|
33679
|
+
)
|
|
33680
|
+
}
|
|
33681
|
+
),
|
|
33682
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
33683
|
+
material.Typography,
|
|
33684
|
+
{
|
|
33685
|
+
variant: titleVariant,
|
|
33686
|
+
sx: { color: titleColor ?? theme.palette.common.white },
|
|
33687
|
+
children: app2.title
|
|
33688
|
+
}
|
|
33689
|
+
),
|
|
33690
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
33691
|
+
material.Typography,
|
|
33692
|
+
{
|
|
33693
|
+
variant: captionVariant,
|
|
33694
|
+
sx: { color: captionColor ?? theme.palette.common.white },
|
|
33695
|
+
children: app2.caption
|
|
31594
33696
|
}
|
|
31595
33697
|
)
|
|
31596
|
-
|
|
31597
|
-
|
|
31598
|
-
|
|
31599
|
-
material.Typography,
|
|
31600
|
-
{
|
|
31601
|
-
variant: titleVariant,
|
|
31602
|
-
sx: { color: titleColor ?? theme.palette.common.white },
|
|
31603
|
-
children: app2.title
|
|
31604
|
-
}
|
|
31605
|
-
),
|
|
31606
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
31607
|
-
material.Typography,
|
|
31608
|
-
{
|
|
31609
|
-
variant: captionVariant,
|
|
31610
|
-
sx: { color: captionColor ?? theme.palette.common.white },
|
|
31611
|
-
children: app2.caption
|
|
31612
|
-
}
|
|
31613
|
-
)
|
|
31614
|
-
]
|
|
33698
|
+
]
|
|
33699
|
+
}
|
|
33700
|
+
)
|
|
31615
33701
|
},
|
|
31616
33702
|
app2.key
|
|
31617
33703
|
);
|
|
@@ -31831,13 +33917,6 @@ const routes = [
|
|
|
31831
33917
|
]
|
|
31832
33918
|
}
|
|
31833
33919
|
];
|
|
31834
|
-
const useSidebar = () => {
|
|
31835
|
-
const context = React.useContext(SidebarContext);
|
|
31836
|
-
if (context === void 0) {
|
|
31837
|
-
throw new Error("useSidebar must be used within a SidebarProvider");
|
|
31838
|
-
}
|
|
31839
|
-
return context;
|
|
31840
|
-
};
|
|
31841
33920
|
const AppsSidebar = ({
|
|
31842
33921
|
isOpen,
|
|
31843
33922
|
onClose
|
|
@@ -32165,6 +34244,8 @@ exports.SYSTEM_MODULES = SYSTEM_MODULES;
|
|
|
32165
34244
|
exports.SidebarContext = SidebarContext;
|
|
32166
34245
|
exports.SidebarProvider = SidebarProvider;
|
|
32167
34246
|
exports.SmallIcon = SmallIcon;
|
|
34247
|
+
exports.SnackbarProvider = SnackbarProvider;
|
|
34248
|
+
exports.SnackbarType = SnackbarType;
|
|
32168
34249
|
exports.SocketNamespace = SocketNamespace;
|
|
32169
34250
|
exports.SocketSystemEvent = SocketSystemEvent;
|
|
32170
34251
|
exports.SocketSystemRoom = SocketSystemRoom;
|
|
@@ -32295,6 +34376,7 @@ exports.useActiveSidebar = useActiveSidebar;
|
|
|
32295
34376
|
exports.useAllApps = useAllApps;
|
|
32296
34377
|
exports.useApps = useApps;
|
|
32297
34378
|
exports.useIsSystemMonitor = useIsSystemMonitor;
|
|
34379
|
+
exports.useSidebar = useSidebar;
|
|
32298
34380
|
exports.useSidebarState = useSidebarState;
|
|
32299
34381
|
exports.useSnackbar = useSnackbar;
|
|
32300
34382
|
exports.useTagSelector = useTagSelector;
|