@fctc/interface-logic 1.5.4 → 1.5.5
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/configs.js +96 -107
- package/dist/configs.mjs +96 -108
- package/dist/environment.js +122 -137
- package/dist/environment.mjs +122 -140
- package/dist/hooks.js +1396 -1559
- package/dist/hooks.mjs +1396 -1562
- package/dist/provider.d.mts +3 -4
- package/dist/provider.d.ts +3 -4
- package/dist/provider.js +509 -562
- package/dist/provider.mjs +509 -565
- package/dist/services.js +1359 -1524
- package/dist/services.mjs +1355 -1523
- package/dist/store.js +5 -19
- package/dist/store.mjs +5 -22
- package/dist/utils.js +94 -116
- package/dist/utils.mjs +94 -119
- package/package.json +11 -22
package/dist/configs.js
CHANGED
|
@@ -5,7 +5,6 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
7
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __pow = Math.pow;
|
|
9
8
|
var __export = (target, all) => {
|
|
10
9
|
for (var name in all)
|
|
11
10
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -27,26 +26,6 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
27
26
|
mod
|
|
28
27
|
));
|
|
29
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
30
|
-
var __async = (__this, __arguments, generator) => {
|
|
31
|
-
return new Promise((resolve, reject) => {
|
|
32
|
-
var fulfilled = (value) => {
|
|
33
|
-
try {
|
|
34
|
-
step(generator.next(value));
|
|
35
|
-
} catch (e) {
|
|
36
|
-
reject(e);
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
var rejected = (value) => {
|
|
40
|
-
try {
|
|
41
|
-
step(generator.throw(value));
|
|
42
|
-
} catch (e) {
|
|
43
|
-
reject(e);
|
|
44
|
-
}
|
|
45
|
-
};
|
|
46
|
-
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
47
|
-
step((generator = generator.apply(__this, __arguments)).next());
|
|
48
|
-
});
|
|
49
|
-
};
|
|
50
29
|
|
|
51
30
|
// src/configs.ts
|
|
52
31
|
var configs_exports = {};
|
|
@@ -1139,6 +1118,22 @@ var PyRelativeDelta = class _PyRelativeDelta {
|
|
|
1139
1118
|
this.microsecond = params.microsecond;
|
|
1140
1119
|
this.weekday = params.weekday;
|
|
1141
1120
|
}
|
|
1121
|
+
years;
|
|
1122
|
+
months;
|
|
1123
|
+
days;
|
|
1124
|
+
hours;
|
|
1125
|
+
minutes;
|
|
1126
|
+
seconds;
|
|
1127
|
+
microseconds;
|
|
1128
|
+
leapDays;
|
|
1129
|
+
year;
|
|
1130
|
+
month;
|
|
1131
|
+
day;
|
|
1132
|
+
hour;
|
|
1133
|
+
minute;
|
|
1134
|
+
second;
|
|
1135
|
+
microsecond;
|
|
1136
|
+
weekday;
|
|
1142
1137
|
negate() {
|
|
1143
1138
|
return new _PyRelativeDelta(this, -1);
|
|
1144
1139
|
}
|
|
@@ -1253,7 +1248,7 @@ function execOnIterable(iterable, func) {
|
|
|
1253
1248
|
if (typeof iterable === "object" && !Array.isArray(iterable) && !(iterable instanceof Set)) {
|
|
1254
1249
|
iterable = Object.keys(iterable);
|
|
1255
1250
|
}
|
|
1256
|
-
if (typeof
|
|
1251
|
+
if (typeof iterable?.[Symbol.iterator] !== "function") {
|
|
1257
1252
|
throw new EvaluationError("value not iterable");
|
|
1258
1253
|
}
|
|
1259
1254
|
return func(iterable);
|
|
@@ -1576,7 +1571,7 @@ function applyBinaryOp(ast, context) {
|
|
|
1576
1571
|
}
|
|
1577
1572
|
return Math.floor(left / right);
|
|
1578
1573
|
case "**":
|
|
1579
|
-
return
|
|
1574
|
+
return left ** right;
|
|
1580
1575
|
case "==":
|
|
1581
1576
|
return isEqual(left, right);
|
|
1582
1577
|
case "<>":
|
|
@@ -1698,7 +1693,7 @@ function evaluate(ast, context = {}) {
|
|
|
1698
1693
|
const dicts = /* @__PURE__ */ new Set();
|
|
1699
1694
|
let pyContext;
|
|
1700
1695
|
const evalContext = Object.create(context);
|
|
1701
|
-
if (!
|
|
1696
|
+
if (!evalContext?.context) {
|
|
1702
1697
|
Object.defineProperty(evalContext, "context", {
|
|
1703
1698
|
get() {
|
|
1704
1699
|
if (!pyContext) {
|
|
@@ -1709,18 +1704,17 @@ function evaluate(ast, context = {}) {
|
|
|
1709
1704
|
});
|
|
1710
1705
|
}
|
|
1711
1706
|
function _innerEvaluate(ast2) {
|
|
1712
|
-
|
|
1713
|
-
switch (ast2 == null ? void 0 : ast2.type) {
|
|
1707
|
+
switch (ast2?.type) {
|
|
1714
1708
|
case 0:
|
|
1715
1709
|
// Number
|
|
1716
1710
|
case 1:
|
|
1717
1711
|
return ast2.value;
|
|
1718
1712
|
case 5:
|
|
1719
1713
|
if (ast2.value in evalContext) {
|
|
1720
|
-
if (typeof evalContext[ast2.value] === "object" &&
|
|
1721
|
-
return
|
|
1714
|
+
if (typeof evalContext[ast2.value] === "object" && evalContext[ast2.value]?.id) {
|
|
1715
|
+
return evalContext[ast2.value]?.id;
|
|
1722
1716
|
}
|
|
1723
|
-
return
|
|
1717
|
+
return evalContext[ast2.value] ?? false;
|
|
1724
1718
|
} else if (ast2.value in BUILTINS) {
|
|
1725
1719
|
return BUILTINS[ast2.value];
|
|
1726
1720
|
} else {
|
|
@@ -1757,7 +1751,7 @@ function evaluate(ast, context = {}) {
|
|
|
1757
1751
|
const args = ast2.args.map(_evaluate);
|
|
1758
1752
|
const kwargs = {};
|
|
1759
1753
|
for (const kwarg in ast2.kwargs) {
|
|
1760
|
-
kwargs[kwarg] = _evaluate(ast2
|
|
1754
|
+
kwargs[kwarg] = _evaluate(ast2?.kwargs[kwarg]);
|
|
1761
1755
|
}
|
|
1762
1756
|
if (fnValue === PyDate || fnValue === PyDateTime || fnValue === PyTime || fnValue === PyRelativeDelta || fnValue === PyTimeDelta) {
|
|
1763
1757
|
return fnValue.create(...args, kwargs);
|
|
@@ -1836,25 +1830,9 @@ function escapeRegExp(str) {
|
|
|
1836
1830
|
var InvalidDomainError = class extends Error {
|
|
1837
1831
|
};
|
|
1838
1832
|
var Domain = class _Domain {
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
return new _Domain(descr.toString());
|
|
1843
|
-
} else {
|
|
1844
|
-
let rawAST;
|
|
1845
|
-
try {
|
|
1846
|
-
rawAST = typeof descr === "string" ? parseExpr(descr) : toAST(descr);
|
|
1847
|
-
} catch (error) {
|
|
1848
|
-
throw new InvalidDomainError(
|
|
1849
|
-
`Invalid domain representation: ${descr}`,
|
|
1850
|
-
{
|
|
1851
|
-
cause: error
|
|
1852
|
-
}
|
|
1853
|
-
);
|
|
1854
|
-
}
|
|
1855
|
-
this.ast = normalizeDomainAST(rawAST);
|
|
1856
|
-
}
|
|
1857
|
-
}
|
|
1833
|
+
ast = { type: -1, value: null };
|
|
1834
|
+
static TRUE;
|
|
1835
|
+
static FALSE;
|
|
1858
1836
|
static combine(domains, operator) {
|
|
1859
1837
|
if (domains.length === 0) {
|
|
1860
1838
|
return new _Domain([]);
|
|
@@ -1933,6 +1911,24 @@ var Domain = class _Domain {
|
|
|
1933
1911
|
processLeaf(d.ast.value, 0, "&", newDomain);
|
|
1934
1912
|
return newDomain;
|
|
1935
1913
|
}
|
|
1914
|
+
constructor(descr = []) {
|
|
1915
|
+
if (descr instanceof _Domain) {
|
|
1916
|
+
return new _Domain(descr.toString());
|
|
1917
|
+
} else {
|
|
1918
|
+
let rawAST;
|
|
1919
|
+
try {
|
|
1920
|
+
rawAST = typeof descr === "string" ? parseExpr(descr) : toAST(descr);
|
|
1921
|
+
} catch (error) {
|
|
1922
|
+
throw new InvalidDomainError(
|
|
1923
|
+
`Invalid domain representation: ${descr}`,
|
|
1924
|
+
{
|
|
1925
|
+
cause: error
|
|
1926
|
+
}
|
|
1927
|
+
);
|
|
1928
|
+
}
|
|
1929
|
+
this.ast = normalizeDomainAST(rawAST);
|
|
1930
|
+
}
|
|
1931
|
+
}
|
|
1936
1932
|
contains(record) {
|
|
1937
1933
|
const expr = evaluate(this.ast, record);
|
|
1938
1934
|
return matchDomain(record, expr);
|
|
@@ -1951,7 +1947,7 @@ var Domain = class _Domain {
|
|
|
1951
1947
|
return evaluatedAsList;
|
|
1952
1948
|
}
|
|
1953
1949
|
return this.toString();
|
|
1954
|
-
} catch
|
|
1950
|
+
} catch {
|
|
1955
1951
|
return this.toString();
|
|
1956
1952
|
}
|
|
1957
1953
|
}
|
|
@@ -2174,22 +2170,22 @@ var updateTokenParamInOriginalRequest = (originalRequest, newAccessToken) => {
|
|
|
2174
2170
|
|
|
2175
2171
|
// src/utils/storage/local-storage.ts
|
|
2176
2172
|
var localStorageUtils = () => {
|
|
2177
|
-
const setToken = (access_token) =>
|
|
2173
|
+
const setToken = async (access_token) => {
|
|
2178
2174
|
localStorage.setItem("accessToken", access_token);
|
|
2179
|
-
}
|
|
2180
|
-
const setRefreshToken = (refresh_token) =>
|
|
2175
|
+
};
|
|
2176
|
+
const setRefreshToken = async (refresh_token) => {
|
|
2181
2177
|
localStorage.setItem("refreshToken", refresh_token);
|
|
2182
|
-
}
|
|
2183
|
-
const getAccessToken = () =>
|
|
2178
|
+
};
|
|
2179
|
+
const getAccessToken = async () => {
|
|
2184
2180
|
return localStorage.getItem("accessToken");
|
|
2185
|
-
}
|
|
2186
|
-
const getRefreshToken = () =>
|
|
2181
|
+
};
|
|
2182
|
+
const getRefreshToken = async () => {
|
|
2187
2183
|
return localStorage.getItem("refreshToken");
|
|
2188
|
-
}
|
|
2189
|
-
const clearToken = () =>
|
|
2184
|
+
};
|
|
2185
|
+
const clearToken = async () => {
|
|
2190
2186
|
localStorage.removeItem("accessToken");
|
|
2191
2187
|
localStorage.removeItem("refreshToken");
|
|
2192
|
-
}
|
|
2188
|
+
};
|
|
2193
2189
|
return {
|
|
2194
2190
|
setToken,
|
|
2195
2191
|
setRefreshToken,
|
|
@@ -2201,9 +2197,9 @@ var localStorageUtils = () => {
|
|
|
2201
2197
|
|
|
2202
2198
|
// src/utils/storage/session-storage.ts
|
|
2203
2199
|
var sessionStorageUtils = () => {
|
|
2204
|
-
const getBrowserSession = () =>
|
|
2200
|
+
const getBrowserSession = async () => {
|
|
2205
2201
|
return sessionStorage.getItem("browserSession");
|
|
2206
|
-
}
|
|
2202
|
+
};
|
|
2207
2203
|
return {
|
|
2208
2204
|
getBrowserSession
|
|
2209
2205
|
};
|
|
@@ -2212,14 +2208,13 @@ var sessionStorageUtils = () => {
|
|
|
2212
2208
|
// src/configs/axios-client.ts
|
|
2213
2209
|
var axiosClient = {
|
|
2214
2210
|
init(config) {
|
|
2215
|
-
|
|
2216
|
-
const
|
|
2217
|
-
const sessionStorage2 = (_b = config.sessionStorageUtils) != null ? _b : sessionStorageUtils();
|
|
2211
|
+
const localStorage2 = config.localStorageUtils ?? localStorageUtils();
|
|
2212
|
+
const sessionStorage2 = config.sessionStorageUtils ?? sessionStorageUtils();
|
|
2218
2213
|
const db = config.db;
|
|
2219
2214
|
let isRefreshing = false;
|
|
2220
2215
|
let failedQueue = [];
|
|
2221
2216
|
const processQueue = (error, token = null) => {
|
|
2222
|
-
failedQueue
|
|
2217
|
+
failedQueue?.forEach((prom) => {
|
|
2223
2218
|
if (error) {
|
|
2224
2219
|
prom.reject(error);
|
|
2225
2220
|
} else {
|
|
@@ -2235,14 +2230,14 @@ var axiosClient = {
|
|
|
2235
2230
|
paramsSerializer: (params) => new URLSearchParams(params).toString()
|
|
2236
2231
|
});
|
|
2237
2232
|
instance.interceptors.request.use(
|
|
2238
|
-
(config2) =>
|
|
2233
|
+
async (config2) => {
|
|
2239
2234
|
const useRefreshToken = config2.useRefreshToken;
|
|
2240
|
-
const token = useRefreshToken ?
|
|
2235
|
+
const token = useRefreshToken ? await localStorage2.getRefreshToken() : await localStorage2.getAccessToken();
|
|
2241
2236
|
if (token) {
|
|
2242
2237
|
config2.headers["Authorization"] = "Bearer " + token;
|
|
2243
2238
|
}
|
|
2244
2239
|
return config2;
|
|
2245
|
-
}
|
|
2240
|
+
},
|
|
2246
2241
|
(error) => {
|
|
2247
2242
|
Promise.reject(error);
|
|
2248
2243
|
}
|
|
@@ -2251,21 +2246,19 @@ var axiosClient = {
|
|
|
2251
2246
|
(response) => {
|
|
2252
2247
|
return handleResponse(response);
|
|
2253
2248
|
},
|
|
2254
|
-
(error) =>
|
|
2255
|
-
|
|
2256
|
-
const handleError3 = (error2) => __async(null, null, function* () {
|
|
2257
|
-
var _a3;
|
|
2249
|
+
async (error) => {
|
|
2250
|
+
const handleError3 = async (error2) => {
|
|
2258
2251
|
if (!error2.response) {
|
|
2259
2252
|
return error2;
|
|
2260
2253
|
}
|
|
2261
2254
|
const { data } = error2.response;
|
|
2262
|
-
if (data && data.code === 400 && ["invalid_grant"].includes(
|
|
2263
|
-
|
|
2255
|
+
if (data && data.code === 400 && ["invalid_grant"].includes(data.data?.error)) {
|
|
2256
|
+
await clearAuthToken();
|
|
2264
2257
|
}
|
|
2265
2258
|
return data;
|
|
2266
|
-
}
|
|
2259
|
+
};
|
|
2267
2260
|
const originalRequest = error.config;
|
|
2268
|
-
if ((
|
|
2261
|
+
if ((error.response?.status === 403 || error.response?.status === 401 || error.response?.status === 404) && ["TOKEN_EXPIRED", "AUTHEN_FAIL", 401, "ERR_2FA_006"].includes(
|
|
2269
2262
|
error.response.data.code
|
|
2270
2263
|
)) {
|
|
2271
2264
|
if (isRefreshing) {
|
|
@@ -2278,19 +2271,18 @@ var axiosClient = {
|
|
|
2278
2271
|
token
|
|
2279
2272
|
);
|
|
2280
2273
|
return instance.request(originalRequest);
|
|
2281
|
-
}).catch((err) =>
|
|
2282
|
-
|
|
2283
|
-
|
|
2284
|
-
yield clearAuthToken();
|
|
2274
|
+
}).catch(async (err) => {
|
|
2275
|
+
if ((err.response?.status === 400 || err.response?.status === 401) && ["invalid_grant"].includes(err.response.data.error)) {
|
|
2276
|
+
await clearAuthToken();
|
|
2285
2277
|
}
|
|
2286
|
-
})
|
|
2278
|
+
});
|
|
2287
2279
|
}
|
|
2288
|
-
const browserSession =
|
|
2289
|
-
const refreshToken =
|
|
2290
|
-
const accessTokenExp =
|
|
2280
|
+
const browserSession = await sessionStorage2.getBrowserSession();
|
|
2281
|
+
const refreshToken = await localStorage2.getRefreshToken();
|
|
2282
|
+
const accessTokenExp = await localStorage2.getAccessToken();
|
|
2291
2283
|
isRefreshing = true;
|
|
2292
2284
|
if (!refreshToken && (!browserSession || browserSession == "unActive")) {
|
|
2293
|
-
|
|
2285
|
+
await clearAuthToken();
|
|
2294
2286
|
} else {
|
|
2295
2287
|
const payload = Object.fromEntries(
|
|
2296
2288
|
Object.entries({
|
|
@@ -2301,9 +2293,8 @@ var axiosClient = {
|
|
|
2301
2293
|
}).filter(([_, value]) => !!value)
|
|
2302
2294
|
);
|
|
2303
2295
|
return new Promise(function(resolve) {
|
|
2304
|
-
var _a3;
|
|
2305
2296
|
import_axios.default.post(
|
|
2306
|
-
`${config.baseUrl}${
|
|
2297
|
+
`${config.baseUrl}${config.refreshTokenEndpoint ?? "/authentication/oauth2/token" /* AUTH_TOKEN_PATH */}`,
|
|
2307
2298
|
payload,
|
|
2308
2299
|
{
|
|
2309
2300
|
headers: {
|
|
@@ -2311,10 +2302,10 @@ var axiosClient = {
|
|
|
2311
2302
|
Authorization: `Bearer ${accessTokenExp}`
|
|
2312
2303
|
}
|
|
2313
2304
|
}
|
|
2314
|
-
).then((res) =>
|
|
2305
|
+
).then(async (res) => {
|
|
2315
2306
|
const data = res.data;
|
|
2316
|
-
|
|
2317
|
-
|
|
2307
|
+
await localStorage2.setToken(data.access_token);
|
|
2308
|
+
await localStorage2.setRefreshToken(data.refresh_token);
|
|
2318
2309
|
import_axios.default.defaults.headers.common["Authorization"] = "Bearer " + data.access_token;
|
|
2319
2310
|
originalRequest.headers["Authorization"] = "Bearer " + data.access_token;
|
|
2320
2311
|
originalRequest.data = updateTokenParamInOriginalRequest(
|
|
@@ -2323,26 +2314,25 @@ var axiosClient = {
|
|
|
2323
2314
|
);
|
|
2324
2315
|
processQueue(null, data.access_token);
|
|
2325
2316
|
resolve(instance.request(originalRequest));
|
|
2326
|
-
})
|
|
2327
|
-
|
|
2328
|
-
|
|
2329
|
-
yield clearAuthToken();
|
|
2317
|
+
}).catch(async (err) => {
|
|
2318
|
+
if (err && (err?.error_code === "AUTHEN_FAIL" || err?.error_code === "TOKEN_EXPIRED" || err?.error_code === "TOKEN_INCORRECT" || err?.code === "ERR_BAD_REQUEST") || err?.error_code === "ERR_2FA_006") {
|
|
2319
|
+
await clearAuthToken();
|
|
2330
2320
|
}
|
|
2331
2321
|
if (err && err.response) {
|
|
2332
|
-
const { error_code } =
|
|
2322
|
+
const { error_code } = err.response?.data || {};
|
|
2333
2323
|
if (error_code === "AUTHEN_FAIL") {
|
|
2334
|
-
|
|
2324
|
+
await clearAuthToken();
|
|
2335
2325
|
}
|
|
2336
2326
|
}
|
|
2337
2327
|
processQueue(err, null);
|
|
2338
|
-
})
|
|
2328
|
+
}).finally(() => {
|
|
2339
2329
|
isRefreshing = false;
|
|
2340
2330
|
});
|
|
2341
2331
|
});
|
|
2342
2332
|
}
|
|
2343
2333
|
}
|
|
2344
|
-
return Promise.reject(
|
|
2345
|
-
}
|
|
2334
|
+
return Promise.reject(await handleError3(error));
|
|
2335
|
+
}
|
|
2346
2336
|
);
|
|
2347
2337
|
const handleResponse = (res) => {
|
|
2348
2338
|
if (res && res.data) {
|
|
@@ -2351,7 +2341,6 @@ var axiosClient = {
|
|
|
2351
2341
|
return res;
|
|
2352
2342
|
};
|
|
2353
2343
|
const handleError2 = (error) => {
|
|
2354
|
-
var _a2, _b2, _c;
|
|
2355
2344
|
if (error.isAxiosError && error.code === "ECONNABORTED") {
|
|
2356
2345
|
console.error("Request Timeout Error:", error);
|
|
2357
2346
|
return "Request Timeout Error";
|
|
@@ -2359,17 +2348,17 @@ var axiosClient = {
|
|
|
2359
2348
|
console.error("Network Error:", error);
|
|
2360
2349
|
return "Network Error";
|
|
2361
2350
|
} else {
|
|
2362
|
-
console.error("Other Error:", error
|
|
2363
|
-
const errorMessage =
|
|
2364
|
-
return { message: errorMessage, status:
|
|
2351
|
+
console.error("Other Error:", error?.response);
|
|
2352
|
+
const errorMessage = error?.response?.data?.message || "An error occurred";
|
|
2353
|
+
return { message: errorMessage, status: error?.response?.status };
|
|
2365
2354
|
}
|
|
2366
2355
|
};
|
|
2367
|
-
const clearAuthToken = () =>
|
|
2368
|
-
|
|
2356
|
+
const clearAuthToken = async () => {
|
|
2357
|
+
await localStorage2.clearToken();
|
|
2369
2358
|
if (typeof window !== "undefined") {
|
|
2370
2359
|
window.location.href = `/login`;
|
|
2371
2360
|
}
|
|
2372
|
-
}
|
|
2361
|
+
};
|
|
2373
2362
|
function formatUrl(url, db2) {
|
|
2374
2363
|
return url + (db2 ? "?db=" + db2 : "");
|
|
2375
2364
|
}
|