@cyberskill/shared 2.26.0 → 2.28.0
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/README.md +1 -1
- package/dist/config/config.util.cjs +1 -1
- package/dist/config/config.util.js +14 -19
- package/dist/config/eslint/index.cjs +1 -1
- package/dist/config/eslint/index.d.ts +2 -0
- package/dist/config/eslint/index.js +1 -1
- package/dist/config/vitest/vitest.e2e.cjs +1 -1
- package/dist/config/vitest/vitest.e2e.js +1 -1
- package/dist/config/vitest/vitest.unit.cjs +1 -1
- package/dist/config/vitest/vitest.unit.js +1 -1
- package/dist/node/cli/index.cjs +2 -5
- package/dist/node/cli/index.js +108 -103
- package/dist/node/command/command.util.js +1 -1
- package/dist/node/fs/fs.util.cjs +4 -1
- package/dist/node/fs/fs.util.d.ts +8 -0
- package/dist/node/fs/fs.util.js +58 -50
- package/dist/node/fs/index.cjs +1 -1
- package/dist/node/fs/index.js +13 -12
- package/dist/node/mongo/mongo.type.js +3 -3
- package/dist/node/mongo/mongo.util.cjs +2 -5
- package/dist/node/mongo/mongo.util.js +206 -211
- package/dist/node/path/index.cjs +1 -1
- package/dist/node/path/index.js +53 -51
- package/dist/node/path/path.constant.cjs +1 -1
- package/dist/node/path/path.constant.d.ts +3 -0
- package/dist/node/path/path.constant.js +63 -60
- package/dist/node/storage/storage.util.cjs +1 -1
- package/dist/node/storage/storage.util.js +1 -1
- package/dist/node/upload/upload.util.js +3 -3
- package/dist/react/apollo-client/apollo-client.component.cjs +1 -1
- package/dist/react/apollo-client/apollo-client.component.d.ts +1 -1
- package/dist/react/apollo-client/apollo-client.component.js +4 -3
- package/dist/react/apollo-client/apollo-client.context.cjs +1 -1
- package/dist/react/apollo-client/apollo-client.context.d.ts +1 -1
- package/dist/react/apollo-client/apollo-client.context.js +9 -8
- package/dist/react/apollo-client/apollo-client.util.cjs +1 -1
- package/dist/react/apollo-client/apollo-client.util.js +3 -3
- package/dist/react/apollo-client-nextjs/apollo-client-nextjs.component.cjs +1 -1
- package/dist/react/apollo-client-nextjs/apollo-client-nextjs.component.d.ts +1 -1
- package/dist/react/apollo-client-nextjs/apollo-client-nextjs.component.js +9 -8
- package/dist/react/apollo-error/apollo-error.component.cjs +1 -1
- package/dist/react/apollo-error/apollo-error.component.d.ts +1 -1
- package/dist/react/apollo-error/apollo-error.component.js +2 -1
- package/dist/react/apollo-error/apollo-error.provider.cjs +1 -1
- package/dist/react/apollo-error/apollo-error.provider.d.ts +1 -1
- package/dist/react/apollo-error/apollo-error.provider.js +4 -3
- package/dist/react/loading/loading.component.cjs +2 -2
- package/dist/react/loading/loading.component.d.ts +1 -1
- package/dist/react/loading/loading.component.js +7 -6
- package/dist/react/loading/loading.provider.cjs +1 -1
- package/dist/react/loading/loading.provider.d.ts +1 -1
- package/dist/react/loading/loading.provider.js +8 -7
- package/dist/react/next-intl/next-intl.hoc.cjs +1 -1
- package/dist/react/next-intl/next-intl.hoc.d.ts +2 -1
- package/dist/react/next-intl/next-intl.hoc.js +12 -12
- package/dist/react/next-intl/next-intl.provider.cjs +1 -1
- package/dist/react/next-intl/next-intl.provider.d.ts +1 -1
- package/dist/react/next-intl/next-intl.provider.js +5 -4
- package/dist/util/common/common.util.cjs +1 -1
- package/dist/util/common/common.util.d.ts +9 -0
- package/dist/util/common/common.util.js +33 -29
- package/dist/util/common/index.cjs +1 -1
- package/dist/util/common/index.js +6 -5
- package/dist/util/index.cjs +1 -1
- package/dist/util/index.js +23 -22
- package/dist/util/object/object.util.cjs +1 -1
- package/dist/util/object/object.util.js +40 -36
- package/package.json +45 -44
- package/dist/node/mongo/mongo.util.d.ts +0 -1040
- /package/dist/node_modules/.pnpm/{vitest@4.0.16_@types_node@25.0.3_jiti@2.6.1_jsdom@27.4.0_sass@1.97.2_tsx@4.21.0_yaml@2.8.2 → vitest@4.0.18_@types_node@25.3.0_jiti@2.6.1_jsdom@28.1.0_@noble_hashes@1.8.0__sass@1.97.3_tsx@4.21.0_yaml@2.8.2}/node_modules/vitest/dist/config.cjs +0 -0
- /package/dist/node_modules/.pnpm/{vitest@4.0.16_@types_node@25.0.3_jiti@2.6.1_jsdom@27.4.0_sass@1.97.2_tsx@4.21.0_yaml@2.8.2 → vitest@4.0.18_@types_node@25.3.0_jiti@2.6.1_jsdom@28.1.0_@noble_hashes@1.8.0__sass@1.97.3_tsx@4.21.0_yaml@2.8.2}/node_modules/vitest/dist/config.js +0 -0
package/dist/node/fs/fs.util.js
CHANGED
|
@@ -1,63 +1,71 @@
|
|
|
1
1
|
import i from "fs-extra";
|
|
2
|
-
import
|
|
3
|
-
var
|
|
4
|
-
for (var e in
|
|
5
|
-
l.call(
|
|
6
|
-
if (
|
|
7
|
-
for (var e of
|
|
8
|
-
y.call(
|
|
9
|
-
return
|
|
10
|
-
}, m = (
|
|
2
|
+
import p from "node:path";
|
|
3
|
+
var S = Object.defineProperty, c = Object.getOwnPropertySymbols, l = Object.prototype.hasOwnProperty, y = Object.prototype.propertyIsEnumerable, a = (n, r, e) => r in n ? S(n, r, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[r] = e, d = (n, r) => {
|
|
4
|
+
for (var e in r || (r = {}))
|
|
5
|
+
l.call(r, e) && a(n, e, r[e]);
|
|
6
|
+
if (c)
|
|
7
|
+
for (var e of c(r))
|
|
8
|
+
y.call(r, e) && a(n, e, r[e]);
|
|
9
|
+
return n;
|
|
10
|
+
}, m = (n, r) => {
|
|
11
11
|
var e = {};
|
|
12
|
-
for (var t in
|
|
13
|
-
l.call(
|
|
14
|
-
if (
|
|
15
|
-
for (var t of
|
|
16
|
-
|
|
12
|
+
for (var t in n)
|
|
13
|
+
l.call(n, t) && r.indexOf(t) < 0 && (e[t] = n[t]);
|
|
14
|
+
if (n != null && c)
|
|
15
|
+
for (var t of c(n))
|
|
16
|
+
r.indexOf(t) < 0 && y.call(n, t) && (e[t] = n[t]);
|
|
17
17
|
return e;
|
|
18
18
|
};
|
|
19
|
-
const
|
|
20
|
-
lstatSync:
|
|
21
|
-
readdirSync:
|
|
22
|
-
mkdirSync:
|
|
23
|
-
readFileSync:
|
|
24
|
-
unlinkSync:
|
|
25
|
-
statSync:
|
|
26
|
-
createWriteStream:
|
|
27
|
-
} = i,
|
|
28
|
-
function
|
|
29
|
-
i.writeFileSync(
|
|
19
|
+
const g = i, {
|
|
20
|
+
lstatSync: F,
|
|
21
|
+
readdirSync: b,
|
|
22
|
+
mkdirSync: j,
|
|
23
|
+
readFileSync: _,
|
|
24
|
+
unlinkSync: h,
|
|
25
|
+
statSync: v,
|
|
26
|
+
createWriteStream: J
|
|
27
|
+
} = i, P = i.readJsonSync;
|
|
28
|
+
function O(n, r, e) {
|
|
29
|
+
i.writeFileSync(n, r, e != null ? e : "utf-8");
|
|
30
30
|
}
|
|
31
|
-
function
|
|
32
|
-
i.appendFileSync(
|
|
31
|
+
function x(n, r, e) {
|
|
32
|
+
i.appendFileSync(n, r, e != null ? e : "utf-8");
|
|
33
33
|
}
|
|
34
|
-
function
|
|
35
|
-
return
|
|
34
|
+
function s(...n) {
|
|
35
|
+
return n.every((r) => i.pathExistsSync(r));
|
|
36
36
|
}
|
|
37
|
-
function
|
|
38
|
-
|
|
39
|
-
|
|
37
|
+
function C(...n) {
|
|
38
|
+
n.forEach((r) => {
|
|
39
|
+
s(r) && i.removeSync(r);
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
|
-
function D(
|
|
43
|
-
const t = e, { extensions:
|
|
44
|
-
i.copySync(
|
|
45
|
-
filter: (f) =>
|
|
46
|
-
},
|
|
42
|
+
function D(n, r, e = {}) {
|
|
43
|
+
const t = e, { extensions: o } = t, u = m(t, ["extensions"]);
|
|
44
|
+
i.copySync(n, r, d({
|
|
45
|
+
filter: (f) => v(f).isDirectory() || !o || o.length === 0 ? !0 : o.includes(p.extname(f))
|
|
46
|
+
}, u));
|
|
47
|
+
}
|
|
48
|
+
function G(n, r) {
|
|
49
|
+
const e = `
|
|
50
|
+
${r}
|
|
51
|
+
`;
|
|
52
|
+
s(n) ? _(n, "utf-8").split(`
|
|
53
|
+
`).includes(r) || x(n, e) : O(n, e);
|
|
47
54
|
}
|
|
48
55
|
export {
|
|
49
|
-
|
|
56
|
+
G as addGitIgnoreEntry,
|
|
57
|
+
x as appendFileSync,
|
|
50
58
|
D as copySync,
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
59
|
+
J as createWriteStream,
|
|
60
|
+
g as fs,
|
|
61
|
+
F as lstatSync,
|
|
62
|
+
j as mkdirSync,
|
|
63
|
+
s as pathExistsSync,
|
|
64
|
+
_ as readFileSync,
|
|
65
|
+
P as readJsonSync,
|
|
66
|
+
b as readdirSync,
|
|
67
|
+
C as removeSync,
|
|
68
|
+
v as statSync,
|
|
69
|
+
h as unlinkSync,
|
|
70
|
+
O as writeFileSync
|
|
63
71
|
};
|
package/dist/node/fs/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./fs.util.cjs");exports.appendFileSync=e.appendFileSync;exports.copySync=e.copySync;exports.createWriteStream=e.createWriteStream;exports.fs=e.fs;exports.lstatSync=e.lstatSync;exports.mkdirSync=e.mkdirSync;exports.pathExistsSync=e.pathExistsSync;exports.readFileSync=e.readFileSync;exports.readJsonSync=e.readJsonSync;exports.readdirSync=e.readdirSync;exports.removeSync=e.removeSync;exports.statSync=e.statSync;exports.unlinkSync=e.unlinkSync;exports.writeFileSync=e.writeFileSync;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./fs.util.cjs");exports.addGitIgnoreEntry=e.addGitIgnoreEntry;exports.appendFileSync=e.appendFileSync;exports.copySync=e.copySync;exports.createWriteStream=e.createWriteStream;exports.fs=e.fs;exports.lstatSync=e.lstatSync;exports.mkdirSync=e.mkdirSync;exports.pathExistsSync=e.pathExistsSync;exports.readFileSync=e.readFileSync;exports.readJsonSync=e.readJsonSync;exports.readdirSync=e.readdirSync;exports.removeSync=e.removeSync;exports.statSync=e.statSync;exports.unlinkSync=e.unlinkSync;exports.writeFileSync=e.writeFileSync;
|
package/dist/node/fs/index.js
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { addGitIgnoreEntry as c, appendFileSync as r, copySync as y, createWriteStream as t, fs as S, lstatSync as a, mkdirSync as i, pathExistsSync as d, readFileSync as o, readJsonSync as s, readdirSync as l, removeSync as p, statSync as m, unlinkSync as F, writeFileSync as f } from "./fs.util.js";
|
|
2
2
|
export {
|
|
3
|
-
c as
|
|
3
|
+
c as addGitIgnoreEntry,
|
|
4
|
+
r as appendFileSync,
|
|
4
5
|
y as copySync,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
t as createWriteStream,
|
|
7
|
+
S as fs,
|
|
8
|
+
a as lstatSync,
|
|
9
|
+
i as mkdirSync,
|
|
10
|
+
d as pathExistsSync,
|
|
11
|
+
o as readFileSync,
|
|
11
12
|
s as readJsonSync,
|
|
12
13
|
l as readdirSync,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
p as removeSync,
|
|
15
|
+
m as statSync,
|
|
16
|
+
F as unlinkSync,
|
|
17
|
+
f as writeFileSync
|
|
17
18
|
};
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Collection as o, Db as s } from "mongodb";
|
|
2
2
|
import { Document as t, Model as l } from "mongoose";
|
|
3
|
-
class d extends
|
|
3
|
+
class d extends s {
|
|
4
4
|
}
|
|
5
5
|
class m extends t {
|
|
6
6
|
}
|
|
7
7
|
class C extends l {
|
|
8
8
|
}
|
|
9
|
-
class r extends
|
|
9
|
+
class r extends o {
|
|
10
10
|
}
|
|
11
11
|
export {
|
|
12
12
|
r as C_Collection,
|
|
@@ -1,5 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
2
|
-
module.exports = ${JSON.stringify(t,null,4)}
|
|
3
|
-
${w.MIGRATE_MONGO_CONFIG}
|
|
4
|
-
`;E.pathExistsSync(w.PATH.GIT_IGNORE)?E.readFileSync(w.PATH.GIT_IGNORE,"utf-8").split(`
|
|
5
|
-
`).includes(w.MIGRATE_MONGO_CONFIG)||E.appendFileSync(w.PATH.GIT_IGNORE,e):E.writeFileSync(w.PATH.GIT_IGNORE,e)}}),regexify(t,i){if(!t)return{};let e=F.deepClone(t);if(!i||i.length===0)return e;for(const o of i){const r=o.toString().split("."),n=F.getNestedValue(e,r);if(typeof n=="string"&&n.length>0){const l={$regex:`.*${B.regexSearchMapper(n)}.*`,$options:"i"};e=F.setNestedValue(e,r,l)}}return e},isDynamicVirtual(t){return!!(t&&typeof t.ref=="function")},getNewRecords(t,i,e){return R(this,null,function*(){const o=yield t.findAll({});return o.success?i.filter(n=>!o.result.some(l=>e(l,n))):i})},getExistingRecords(t,i,e){return R(this,null,function*(){const o=yield t.findAll({});return o.success?o.result.filter(n=>i.some(l=>e(n,l))):[]})}};function x(t,i,e,o,r){return R(this,null,function*(){if(!i.length||!e)return i;const n=Array.isArray(e)?e:[e];for(const l of n)typeof l=="string"?yield C(t,i,l,o,r):l&&typeof l=="object"&&(yield X(t,i,l,o,r));return i})}function C(t,i,e,o,r){return R(this,null,function*(){var n,l,y,s;const h=e.split(".");if(h.length<2){for(const m of i)yield V(t,m,e,o,void 0,r);return}const u=h[0];if(!u||u.trim()==="")return;const S=h.slice(1).join(".");for(const m of i){const N=m,O=N[u];if(O&&typeof O=="object"){let c=r;const a=c;if(r&&r.schema&&r.schema.virtuals){const f=r.schema.virtuals[u];if(f&&f.options&&f.options.ref){let g;if(typeof f.options.ref=="function"?g=f.options.ref(N):typeof f.options.ref=="string"&&(g=f.options.ref),g){const p=P(g);t.models[p]&&(c=t.models[p])}}}if(!c){const f=(l=(n=r==null?void 0:r.schema)==null?void 0:n.statics)!=null?l:{},p=((r==null?void 0:r._virtualConfigs)||f._dynamicVirtuals||[]).find(d=>d.name===u);if(p&&p.options&&p.options.ref){let d;if(typeof p.options.ref=="function"?d=p.options.ref(N):typeof p.options.ref=="string"&&(d=p.options.ref),d){const b=P(d);t.models[b]&&(c=t.models[b])}}}if(c===a){const f=(s=(y=r==null?void 0:r.schema)==null?void 0:y.statics)!=null?s:{},p=((r==null?void 0:r._virtualConfigs)||f._dynamicVirtuals||[]).find(d=>d.name===u);if(p&&p.options&&p.options.ref){let d;if(typeof p.options.ref=="function"?d=p.options.ref(N):typeof p.options.ref=="string"&&(d=p.options.ref),d){const b=P(d);t.models[b]&&(c=t.models[b])}}}if(Array.isArray(O))for(const f of O)f&&typeof f=="object"&&(yield V(t,f,S,o,u,c));else O&&typeof O=="object"&&(yield V(t,O,S,o,u,c))}}})}function X(t,i,e,o,r){return R(this,null,function*(){const{path:n,populate:l}=e;if(!n)return;if(!l){yield C(t,i,n,o,r);return}const y=n;for(const s of i){const h=s,u=h[y];let S=r;if(r&&r.schema&&r.schema.virtuals){const m=r.schema.virtuals[y];if(m&&m.options&&m.options.ref){let N;if(typeof m.options.ref=="function"?N=m.options.ref(h):typeof m.options.ref=="string"&&(N=m.options.ref),N){const O=P(N);t.models[O]&&(S=t.models[O])}}}if(!S&&typeof u=="object"&&u&&"entityType"in u){const m=P(String(u.entityType));t.models[m]&&(S=t.models[m])}if(u&&typeof u=="object")if(Array.isArray(u))for(const m of u)m&&typeof m=="object"&&(yield x(t,[m],l,o,S));else u&&typeof u=="object"&&(yield x(t,[u],l,o,S))}})}function G(t,i,e,o){if(!e||!i||!i.schema)return;const r=e.split(".");let n=i.schema;for(let l=0;l<r.length;l++){const y=r[l];if(n&&n.virtuals&&y){const s=n.virtuals[y];if(s&&s.options&&s.options.ref){let h;if(typeof s.options.ref=="function"?h=s.options.ref(o):typeof s.options.ref=="string"&&(h=s.options.ref),h&&typeof h=="string"){if(l===r.length-1)return h;const u=t.models[h];if(u&&u.schema){n=u.schema;continue}}}}if(n&&n.paths&&y){const s=n.paths[y];if(s&&s.schema){n=s.schema;continue}}return}}function Y(t,i){if(i)for(const e of Object.keys(t.models)){const o=t.models[e],r=o==null?void 0:o.schema;if(r&&(r.paths&&r.paths[i]||r.virtuals&&r.virtuals[i]))return o}}function Z(t,i){const e=(i||"").split(".")[0]||"";if(e)for(const o of Object.keys(t.models)){const r=t.models[o],n=r==null?void 0:r.schema;if(n&&(n.paths&&n.paths[e]||n.virtuals&&n.virtuals[e]))return r}}function V(t,i,e,o,r,n){return R(this,null,function*(){var l,y;let s=i.__t;if(!s){if(n){const c=r?`${r}.${e}`:e,a=(c||"").split(".")[0]||"";let f=n;if(!!!((l=f==null?void 0:f.schema)!=null&&l.paths&&f.schema.paths[a]||(y=f==null?void 0:f.schema)!=null&&y.virtuals&&f.schema.virtuals[a])){const d=Z(t,c);d&&(f=d)}const p=G(t,f,c,i);if(p)s=p;else{const d=(c.includes(".")?c.split(".").pop():c)||"";if(d){const b=Y(t,d);if(b){const j=G(t,b,c,i);j&&(s=j)}}}}if(o&&o.length>0){const c=e.split(".").pop()||"",a=o.find(f=>f.name===c);if(a&&a.options.ref){let f;typeof a.options.ref=="function"?f=a.options.ref(i):typeof a.options.ref=="string"&&(f=a.options.ref),f&&typeof f=="string"&&(s=f)}}if(!s){for(const[c,a]of Object.entries(i))if(c==="entityType"&&typeof a=="string"){s=a;break}if(s&&t.models[s]){const c=t.models[s];if(c&&c.schema){const a=c.schema,f=e.split(".").pop()||"",g=(d,b="root")=>{if(!d||!d.virtuals)return;const j=d.virtuals;for(const _ of Object.keys(j))if(_===f){const v=j[_];if(v&&v.options&&v.options.ref){let A;if(typeof v.options.ref=="function"?A=v.options.ref(i):typeof v.options.ref=="string"&&(A=v.options.ref),A&&typeof A=="string")return A}}if(d.paths)for(const _ of Object.keys(d.paths)){const v=d.paths[_];if(v&&v.schema){const A=g(v.schema,`${b}.${_}`);if(A)return A}}},p=g(a);p&&(s=p)}}}if(!s){const c=e.split(".").pop()||"";if(n&&n.schema){const a=n.schema,f=(p,d="root")=>{if(!p||!p.virtuals)return;const b=p.virtuals;for(const j of Object.keys(b))if(j===c){const _=b[j];if(_&&_.options&&_.options.ref){let v;if(typeof _.options.ref=="function"?v=_.options.ref(i):typeof _.options.ref=="string"&&(v=_.options.ref),v&&typeof v=="string")return v}}if(p.paths)for(const j of Object.keys(p.paths)){const _=p.paths[j];if(_&&_.schema){const v=f(_.schema,`${d}.${j}`);if(v)return v}}},g=f(a);g&&(s=g)}if(!s&&n){const a=G(t,n,e,i);a&&(s=a)}if(!s&&o&&o.length>0){const a=o.find(f=>f.name===c);if(a&&a.options.ref){let f;typeof a.options.ref=="function"?f=a.options.ref(i):typeof a.options.ref=="string"&&(f=a.options.ref),f&&typeof f=="string"&&(s=f)}}}if(!s){const c=e.split(".").pop()||"",a=c?c.charAt(0).toUpperCase()+c.slice(1):"";a&&t.models[a]&&(s=a)}}const h=t.models[s];if(!h)return;const u=`${e}Id`,S=`${e}Ids`,m=i[u]||i[S]||i[e];if(!m)return;const N=Array.isArray(m)?m:[m],O=yield h.find({id:{$in:N}}).lean();O.length>0&&(Array.isArray(m)?i[e]=O:i[e]=O[0])})}exports.applyNestedPopulate=x;exports.convertEnumToModelName=P;exports.mongo=I;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("migrate-mongo"),k=require("mongoose-aggregate-paginate-v2"),B=require("mongoose-paginate-v2"),q=require("node:crypto"),E=require("../../util/object/object.util.cjs"),J=require("../../util/common/common.util.cjs"),$=require("../fs/fs.util.cjs"),I=require("../path/path.constant.cjs"),H=require("../../util/validate/validate.util.cjs");var K=Object.defineProperty,L=Object.defineProperties,T=Object.getOwnPropertyDescriptors,D=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,Q=Object.prototype.propertyIsEnumerable,G=(t,e,i)=>e in t?K(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,W=(t,e)=>{for(var i in e||(e={}))z.call(e,i)&&G(t,i,e[i]);if(D)for(var i of D(e))Q.call(e,i)&&G(t,i,e[i]);return t},X=(t,e)=>L(t,T(e)),R=(t,e,i)=>new Promise((o,r)=>{var n=s=>{try{y(i.next(s))}catch(h){r(h)}},l=s=>{try{y(i.throw(s))}catch(h){r(h)}},y=s=>s.done?o(s.value):Promise.resolve(s.value).then(n,l);y((i=i.apply(t,e)).next())});function P(t){return t===t.toUpperCase()?t.charAt(0).toUpperCase()+t.slice(1).toLowerCase():t}const A={createGenericFields(){return{id:q.randomUUID(),isDel:!1,createdAt:new Date,updatedAt:new Date}},applyPlugins(t,e){e.filter(i=>typeof i=="function").forEach(i=>t.plugin(i))},applyMiddlewares(t,e){e.forEach(({method:i,pre:o,post:r})=>{i&&o&&t.pre(i,o),i&&r&&t.post(i,r)})},createGenericSchema(t){return new t.Schema({id:{type:String,default:()=>q.randomUUID(),unique:!0},isDel:{type:Boolean,default:!1}},{timestamps:!0})},createSchema({mongoose:t,schema:e,virtuals:i=[],standalone:o=!1}){const r=new t.Schema(e,{toJSON:{virtuals:!0},toObject:{virtuals:!0}});return i.forEach(({name:n,options:l,get:y})=>{if(A.isDynamicVirtual(l)){const s=r.statics;s._dynamicVirtuals||(s._dynamicVirtuals=[]),s._dynamicVirtuals.push({name:n,options:l});const h=r.virtual(n);y?h.get(y):h.get(function(){var u;return((u=this._populated)==null?void 0:u[n])||(l!=null&&l.count?0:l!=null&&l.justOne?null:[])})}else{const s=r.virtual(n,l);y&&s.get(y)}}),o||r.add(A.createGenericSchema(t)),r},createModel({mongoose:t,name:e,schema:i,virtuals:o=[],pagination:r=!0,aggregate:n=!0,middlewares:l=[]}){if(!e)throw new Error("Model name is required.");if(t.models[e])return t.models[e];const y=A.createSchema({mongoose:t,schema:i,virtuals:o});(r||n)&&A.applyPlugins(y,[r&&B,n&&k]),A.applyMiddlewares(y,l);const s=t.model(e,y);return o.length>0&&(s._virtualConfigs=o),s},validator:{isRequired(){return function(t){return R(this,null,function*(){return!H.validate.isEmpty(t)})}},isUnique(t){return function(e){return R(this,null,function*(){if(!Array.isArray(t)||t.length===0)throw new Error("Fields must be a non-empty array of strings.");const i={$or:t.map(r=>({[r]:e}))};return!(yield this.constructor.exists(i))})}},matchesRegex(t){return e=>R(null,null,function*(){if(!Array.isArray(t)||t.some(i=>!(i instanceof RegExp)))throw new Error("regexArray must be an array of valid RegExp objects.");return t.every(i=>i.test(e))})}},migrate:X(W({},C),{setConfig:t=>{const e=`// This file is automatically generated by the Cyberskill CLI.
|
|
2
|
+
module.exports = ${JSON.stringify(t,null,4)}`;$.writeFileSync(I.PATH.MIGRATE_MONGO_CONFIG,e),$.addGitIgnoreEntry(I.PATH.GIT_IGNORE,I.MIGRATE_MONGO_CONFIG)}}),regexify(t,e){if(!t)return{};let i=E.deepClone(t);if(!e||e.length===0)return i;for(const o of e){const r=o.toString().split("."),n=E.getNestedValue(i,r);if(typeof n=="string"&&n.length>0){const l={$regex:`.*${J.regexSearchMapper(n)}.*`,$options:"i"};i=E.setNestedValue(i,r,l)}}return i},isDynamicVirtual(t){return!!(t&&typeof t.ref=="function")},getNewRecords(t,e,i){return R(this,null,function*(){const o=yield t.findAll({});return o.success?e.filter(n=>!o.result.some(l=>i(l,n))):e})},getExistingRecords(t,e,i){return R(this,null,function*(){const o=yield t.findAll({});return o.success?o.result.filter(n=>e.some(l=>i(n,l))):[]})}};function x(t,e,i,o,r){return R(this,null,function*(){if(!e.length||!i)return e;const n=Array.isArray(i)?i:[i];for(const l of n)typeof l=="string"?yield U(t,e,l,o,r):l&&typeof l=="object"&&(yield Y(t,e,l,o,r));return e})}function U(t,e,i,o,r){return R(this,null,function*(){var n,l,y,s;const h=i.split(".");if(h.length<2){for(const m of e)yield V(t,m,i,o,void 0,r);return}const u=h[0];if(!u||u.trim()==="")return;const S=h.slice(1).join(".");for(const m of e){const j=m,b=j[u];if(b&&typeof b=="object"){let c=r;const a=c;if(r&&r.schema&&r.schema.virtuals){const f=r.schema.virtuals[u];if(f&&f.options&&f.options.ref){let O;if(typeof f.options.ref=="function"?O=f.options.ref(j):typeof f.options.ref=="string"&&(O=f.options.ref),O){const p=P(O);t.models[p]&&(c=t.models[p])}}}if(!c){const f=(l=(n=r==null?void 0:r.schema)==null?void 0:n.statics)!=null?l:{},p=((r==null?void 0:r._virtualConfigs)||f._dynamicVirtuals||[]).find(d=>d.name===u);if(p&&p.options&&p.options.ref){let d;if(typeof p.options.ref=="function"?d=p.options.ref(j):typeof p.options.ref=="string"&&(d=p.options.ref),d){const g=P(d);t.models[g]&&(c=t.models[g])}}}if(c===a){const f=(s=(y=r==null?void 0:r.schema)==null?void 0:y.statics)!=null?s:{},p=((r==null?void 0:r._virtualConfigs)||f._dynamicVirtuals||[]).find(d=>d.name===u);if(p&&p.options&&p.options.ref){let d;if(typeof p.options.ref=="function"?d=p.options.ref(j):typeof p.options.ref=="string"&&(d=p.options.ref),d){const g=P(d);t.models[g]&&(c=t.models[g])}}}if(Array.isArray(b))for(const f of b)f&&typeof f=="object"&&(yield V(t,f,S,o,u,c));else b&&typeof b=="object"&&(yield V(t,b,S,o,u,c))}}})}function Y(t,e,i,o,r){return R(this,null,function*(){const{path:n,populate:l}=i;if(!n)return;if(!l){yield U(t,e,n,o,r);return}const y=n;for(const s of e){const h=s,u=h[y];let S=r;if(r&&r.schema&&r.schema.virtuals){const m=r.schema.virtuals[y];if(m&&m.options&&m.options.ref){let j;if(typeof m.options.ref=="function"?j=m.options.ref(h):typeof m.options.ref=="string"&&(j=m.options.ref),j){const b=P(j);t.models[b]&&(S=t.models[b])}}}if(!S&&typeof u=="object"&&u&&"entityType"in u){const m=P(String(u.entityType));t.models[m]&&(S=t.models[m])}if(u&&typeof u=="object")if(Array.isArray(u))for(const m of u)m&&typeof m=="object"&&(yield x(t,[m],l,o,S));else u&&typeof u=="object"&&(yield x(t,[u],l,o,S))}})}function F(t,e,i,o){if(!i||!e||!e.schema)return;const r=i.split(".");let n=e.schema;for(let l=0;l<r.length;l++){const y=r[l];if(n&&n.virtuals&&y){const s=n.virtuals[y];if(s&&s.options&&s.options.ref){let h;if(typeof s.options.ref=="function"?h=s.options.ref(o):typeof s.options.ref=="string"&&(h=s.options.ref),h&&typeof h=="string"){if(l===r.length-1)return h;const u=t.models[h];if(u&&u.schema){n=u.schema;continue}}}}if(n&&n.paths&&y){const s=n.paths[y];if(s&&s.schema){n=s.schema;continue}}return}}function Z(t,e){if(e)for(const i of Object.keys(t.models)){const o=t.models[i],r=o==null?void 0:o.schema;if(r&&(r.paths&&r.paths[e]||r.virtuals&&r.virtuals[e]))return o}}function M(t,e){const i=(e||"").split(".")[0]||"";if(i)for(const o of Object.keys(t.models)){const r=t.models[o],n=r==null?void 0:r.schema;if(n&&(n.paths&&n.paths[i]||n.virtuals&&n.virtuals[i]))return r}}function V(t,e,i,o,r,n){return R(this,null,function*(){var l,y;let s=e.__t;if(!s){if(n){const c=r?`${r}.${i}`:i,a=(c||"").split(".")[0]||"";let f=n;if(!!!((l=f==null?void 0:f.schema)!=null&&l.paths&&f.schema.paths[a]||(y=f==null?void 0:f.schema)!=null&&y.virtuals&&f.schema.virtuals[a])){const d=M(t,c);d&&(f=d)}const p=F(t,f,c,e);if(p)s=p;else{const d=(c.includes(".")?c.split(".").pop():c)||"";if(d){const g=Z(t,d);if(g){const N=F(t,g,c,e);N&&(s=N)}}}}if(o&&o.length>0){const c=i.split(".").pop()||"",a=o.find(f=>f.name===c);if(a&&a.options.ref){let f;typeof a.options.ref=="function"?f=a.options.ref(e):typeof a.options.ref=="string"&&(f=a.options.ref),f&&typeof f=="string"&&(s=f)}}if(!s){for(const[c,a]of Object.entries(e))if(c==="entityType"&&typeof a=="string"){s=a;break}if(s&&t.models[s]){const c=t.models[s];if(c&&c.schema){const a=c.schema,f=i.split(".").pop()||"",O=(d,g="root")=>{if(!d||!d.virtuals)return;const N=d.virtuals;for(const _ of Object.keys(N))if(_===f){const v=N[_];if(v&&v.options&&v.options.ref){let w;if(typeof v.options.ref=="function"?w=v.options.ref(e):typeof v.options.ref=="string"&&(w=v.options.ref),w&&typeof w=="string")return w}}if(d.paths)for(const _ of Object.keys(d.paths)){const v=d.paths[_];if(v&&v.schema){const w=O(v.schema,`${g}.${_}`);if(w)return w}}},p=O(a);p&&(s=p)}}}if(!s){const c=i.split(".").pop()||"";if(n&&n.schema){const a=n.schema,f=(p,d="root")=>{if(!p||!p.virtuals)return;const g=p.virtuals;for(const N of Object.keys(g))if(N===c){const _=g[N];if(_&&_.options&&_.options.ref){let v;if(typeof _.options.ref=="function"?v=_.options.ref(e):typeof _.options.ref=="string"&&(v=_.options.ref),v&&typeof v=="string")return v}}if(p.paths)for(const N of Object.keys(p.paths)){const _=p.paths[N];if(_&&_.schema){const v=f(_.schema,`${d}.${N}`);if(v)return v}}},O=f(a);O&&(s=O)}if(!s&&n){const a=F(t,n,i,e);a&&(s=a)}if(!s&&o&&o.length>0){const a=o.find(f=>f.name===c);if(a&&a.options.ref){let f;typeof a.options.ref=="function"?f=a.options.ref(e):typeof a.options.ref=="string"&&(f=a.options.ref),f&&typeof f=="string"&&(s=f)}}}if(!s){const c=i.split(".").pop()||"",a=c?c.charAt(0).toUpperCase()+c.slice(1):"";a&&t.models[a]&&(s=a)}}const h=t.models[s];if(!h)return;const u=`${i}Id`,S=`${i}Ids`,m=e[u]||e[S]||e[i];if(!m)return;const j=Array.isArray(m)?m:[m],b=yield h.find({id:{$in:j}}).lean();b.length>0&&(Array.isArray(m)?e[i]=b:e[i]=b[0])})}exports.applyNestedPopulate=x;exports.convertEnumToModelName=P;exports.mongo=A;
|