@kubb/fabric-core 0.2.15 → 0.2.16
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/{Fabric-0mXLgmur.d.cts → Fabric-AmREkq58.d.ts} +93 -49
- package/dist/{Fabric-C-AqOkTA.d.ts → Fabric-CBrTERuf.d.cts} +93 -49
- package/dist/{defineProperty-B05cRoSl.cjs → defineProperty-Dlhh3lSJ.cjs} +33 -19
- package/dist/defineProperty-Dlhh3lSJ.cjs.map +1 -0
- package/dist/{defineProperty-BZknW4oy.js → defineProperty-_FBdEen_.js} +28 -14
- package/dist/defineProperty-_FBdEen_.js.map +1 -0
- package/dist/index.cjs +57 -26
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +25 -3
- package/dist/index.d.ts +25 -3
- package/dist/index.js +57 -26
- package/dist/index.js.map +1 -1
- package/dist/parsers/typescript.d.cts +2 -2
- package/dist/parsers/typescript.d.ts +2 -2
- package/dist/parsers.d.cts +2 -2
- package/dist/parsers.d.ts +2 -2
- package/dist/plugins.cjs +3 -9
- package/dist/plugins.cjs.map +1 -1
- package/dist/plugins.d.cts +1 -11
- package/dist/plugins.d.ts +1 -11
- package/dist/plugins.js +1 -7
- package/dist/plugins.js.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +2 -3
- package/dist/types.d.ts +2 -3
- package/dist/types.js.map +1 -1
- package/dist/{typescriptParser-B4-y6QxR.d.cts → typescriptParser-C3B3dzh_.d.cts} +2 -2
- package/dist/{typescriptParser-By3ckLtc.d.ts → typescriptParser-DaOfAlmM.d.ts} +2 -2
- package/package.json +1 -1
- package/src/Fabric.ts +99 -50
- package/src/FileManager.ts +19 -2
- package/src/KubbFile.ts +0 -2
- package/src/createFile.ts +87 -71
- package/src/defineFabric.ts +41 -24
- package/src/plugins/barrelPlugin.ts +0 -8
- package/src/plugins/fsPlugin.ts +0 -8
- package/src/types.ts +0 -1
- package/src/utils/AsyncEventEmitter.ts +29 -8
- package/dist/defineFabric-D_m6CB1s.d.ts +0 -9
- package/dist/defineFabric-Dkt2l0wC.d.cts +0 -9
- package/dist/defineProperty-B05cRoSl.cjs.map +0 -1
- package/dist/defineProperty-BZknW4oy.js.map +0 -1
- package/src/utils/EventEmitter.ts +0 -31
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { a as FabricOptions, n as FabricConfig, t as Fabric } from "./Fabric-C-AqOkTA.js";
|
|
2
|
-
|
|
3
|
-
//#region src/defineFabric.d.ts
|
|
4
|
-
type RootRenderFunction<TOptions extends FabricOptions> = (fabric: Fabric<TOptions>) => void | Promise<void>;
|
|
5
|
-
type DefineFabric<TOptions extends FabricOptions> = (config?: FabricConfig<TOptions>) => Fabric<TOptions>;
|
|
6
|
-
declare function defineFabric<TOptions extends FabricOptions>(instance?: RootRenderFunction<TOptions>): DefineFabric<TOptions>;
|
|
7
|
-
//#endregion
|
|
8
|
-
export { defineFabric as n, DefineFabric as t };
|
|
9
|
-
//# sourceMappingURL=defineFabric-D_m6CB1s.d.ts.map
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { a as FabricOptions, n as FabricConfig, t as Fabric } from "./Fabric-0mXLgmur.cjs";
|
|
2
|
-
|
|
3
|
-
//#region src/defineFabric.d.ts
|
|
4
|
-
type RootRenderFunction<TOptions extends FabricOptions> = (fabric: Fabric<TOptions>) => void | Promise<void>;
|
|
5
|
-
type DefineFabric<TOptions extends FabricOptions> = (config?: FabricConfig<TOptions>) => Fabric<TOptions>;
|
|
6
|
-
declare function defineFabric<TOptions extends FabricOptions>(instance?: RootRenderFunction<TOptions>): DefineFabric<TOptions>;
|
|
7
|
-
//#endregion
|
|
8
|
-
export { defineFabric as n, DefineFabric as t };
|
|
9
|
-
//# sourceMappingURL=defineFabric-Dkt2l0wC.d.cts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"defineProperty-B05cRoSl.cjs","names":["e","r","n","t","t","i","n","e","r","t","n","r","e","t","a","e","r","i","n","t","r","n","i","e","t","e","n","r","i","a","e","t","n","r","i","a","uniqueBy","exports","isDeepEqual","name","path","trimExtName"],"sources":["../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/lazyDataLastImpl-BDhrIOwR.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/purry-DH9cw9sy.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/utilityEvaluators-DORpnx39.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/pipe-jLehR9-P.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/purryFromLazy-3oywCNIb.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isDeepEqual-jLo35Woq.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/uniqueBy-C_PxkF_D.js","../src/createFile.ts"],"sourcesContent":["function e(e,t,n){let r=n=>e(n,...t);return n===void 0?r:Object.assign(r,{lazy:n,lazyArgs:t})}export{e as lazyDataLastImpl};\n//# sourceMappingURL=lazyDataLastImpl-BDhrIOwR.js.map","import{lazyDataLastImpl as e}from\"./lazyDataLastImpl-BDhrIOwR.js\";function t(t,n,r){let i=t.length-n.length;if(i===0)return t(...n);if(i===1)return e(t,n,r);throw Error(`Wrong number of arguments`)}export{t as purry};\n//# sourceMappingURL=purry-DH9cw9sy.js.map","const e={done:!0,hasNext:!1},t={done:!1,hasNext:!1},n=()=>e,r=e=>({hasNext:!0,next:e,done:!1});export{t as SKIP_ITEM,n as lazyEmptyEvaluator,r as lazyIdentityEvaluator};\n//# sourceMappingURL=utilityEvaluators-DORpnx39.js.map","import{SKIP_ITEM as e}from\"./utilityEvaluators-DORpnx39.js\";function t(e,...t){let a=e,o=t.map(e=>`lazy`in e?r(e):void 0),s=0;for(;s<t.length;){if(o[s]===void 0||!i(a)){let e=t[s];a=e(a),s+=1;continue}let e=[];for(let n=s;n<t.length;n++){let t=o[n];if(t===void 0||(e.push(t),t.isSingle))break}let r=[];for(let t of a)if(n(t,r,e))break;let{isSingle:c}=e.at(-1);a=c?r[0]:r,s+=e.length}return a}function n(t,r,i){if(i.length===0)return r.push(t),!1;let a=t,o=e,s=!1;for(let[e,t]of i.entries()){let{index:c,items:l}=t;if(l.push(a),o=t(a,c,l),t.index+=1,o.hasNext){if(o.hasMany??!1){for(let t of o.next)if(n(t,r,i.slice(e+1)))return!0;return s}a=o.next}if(!o.hasNext)break;o.done&&(s=!0)}return o.hasNext&&r.push(a),s}function r(e){let{lazy:t,lazyArgs:n}=e,r=t(...n);return Object.assign(r,{isSingle:t.single??!1,index:0,items:[]})}function i(e){return typeof e==`string`||typeof e==`object`&&!!e&&Symbol.iterator in e}export{t as pipe};\n//# sourceMappingURL=pipe-jLehR9-P.js.map","import{pipe as e}from\"./pipe-jLehR9-P.js\";function t(t,n){let r=n.length-t.length;if(r===1){let[r,...i]=n;return e(r,{lazy:t,lazyArgs:i})}if(r===0){let r={lazy:t,lazyArgs:n};return Object.assign(t=>e(t,r),r)}throw Error(`Wrong number of arguments`)}export{t as purryFromLazy};\n//# sourceMappingURL=purryFromLazy-3oywCNIb.js.map","import{purry as e}from\"./purry-DH9cw9sy.js\";function t(...t){return e(n,t)}function n(e,t){if(e===t||Object.is(e,t))return!0;if(typeof e!=`object`||typeof t!=`object`||e===null||t===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t))return!1;if(Array.isArray(e))return r(e,t);if(e instanceof Map)return i(e,t);if(e instanceof Set)return a(e,t);if(e instanceof Date)return e.getTime()===t.getTime();if(e instanceof RegExp)return e.toString()===t.toString();if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let[r,i]of Object.entries(e))if(!(r in t)||!n(i,t[r]))return!1;return!0}function r(e,t){if(e.length!==t.length)return!1;for(let[r,i]of e.entries())if(!n(i,t[r]))return!1;return!0}function i(e,t){if(e.size!==t.size)return!1;for(let[r,i]of e.entries())if(!t.has(r)||!n(i,t.get(r)))return!1;return!0}function a(e,t){if(e.size!==t.size)return!1;let r=[...t];for(let t of e){let e=!1;for(let[i,a]of r.entries())if(n(t,a)){e=!0,r.splice(i,1);break}if(!e)return!1}return!0}export{t as isDeepEqual};\n//# sourceMappingURL=isDeepEqual-jLo35Woq.js.map","import{SKIP_ITEM as e}from\"./utilityEvaluators-DORpnx39.js\";import{purryFromLazy as t}from\"./purryFromLazy-3oywCNIb.js\";function n(...e){return t(r,e)}function r(t){let n=t,r=new Set;return(t,i,a)=>{let o=n(t,i,a);return r.has(o)?e:(r.add(o),{done:!1,hasNext:!0,next:t})}}export{n as uniqueBy};\n//# sourceMappingURL=uniqueBy-C_PxkF_D.js.map","import { createHash } from 'node:crypto'\nimport path from 'node:path'\nimport { orderBy } from 'natural-orderby'\nimport { isDeepEqual, uniqueBy } from 'remeda'\nimport type * as KubbFile from './KubbFile.ts'\nimport { trimExtName } from './utils/trimExtName.ts'\n\nfunction hashObject(obj: Record<string, unknown>): string {\n const str = JSON.stringify(obj, Object.keys(obj).sort())\n return createHash('sha256').update(str).digest('hex')\n}\n\nexport function combineSources(sources: Array<KubbFile.Source>): Array<KubbFile.Source> {\n return uniqueBy(sources, (obj) => [obj.name, obj.isExportable, obj.isTypeOnly] as const)\n}\n\nexport function combineExports(exports: Array<KubbFile.Export>): Array<KubbFile.Export> {\n return orderBy(exports, [\n (v) => !!Array.isArray(v.name),\n (v) => !v.isTypeOnly,\n (v) => v.path,\n (v) => !!v.name,\n (v) => (Array.isArray(v.name) ? orderBy(v.name) : v.name),\n ]).reduce(\n (prev, curr) => {\n const name = curr.name\n const prevByPath = prev.findLast((imp) => imp.path === curr.path)\n const prevByPathAndIsTypeOnly = prev.findLast((imp) => imp.path === curr.path && isDeepEqual(imp.name, name) && imp.isTypeOnly)\n\n if (prevByPathAndIsTypeOnly) {\n // we already have an export that has the same path but uses `isTypeOnly` (export type ...)\n return prev\n }\n\n const uniquePrev = prev.findLast(\n (imp) => imp.path === curr.path && isDeepEqual(imp.name, name) && imp.isTypeOnly === curr.isTypeOnly && imp.asAlias === curr.asAlias,\n )\n\n // we already have an item that was unique enough or name field is empty or prev asAlias is set but current has no changes\n if (uniquePrev || (Array.isArray(name) && !name.length) || (prevByPath?.asAlias && !curr.asAlias)) {\n return prev\n }\n\n if (!prevByPath) {\n return [\n ...prev,\n {\n ...curr,\n name: Array.isArray(name) ? [...new Set(name)] : name,\n },\n ]\n }\n\n // merge all names when prev and current both have the same isTypeOnly set\n if (prevByPath && Array.isArray(prevByPath.name) && Array.isArray(curr.name) && prevByPath.isTypeOnly === curr.isTypeOnly) {\n prevByPath.name = [...new Set([...prevByPath.name, ...curr.name])]\n\n return prev\n }\n\n return [...prev, curr]\n },\n [] as Array<KubbFile.Export>,\n )\n}\n\nexport function combineImports(imports: Array<KubbFile.Import>, exports: Array<KubbFile.Export>, source?: string): Array<KubbFile.Import> {\n return orderBy(imports, [\n (v) => !!Array.isArray(v.name),\n (v) => !v.isTypeOnly,\n (v) => v.path,\n (v) => !!v.name,\n (v) => (Array.isArray(v.name) ? orderBy(v.name) : v.name),\n ]).reduce(\n (prev, curr) => {\n let name = Array.isArray(curr.name) ? [...new Set(curr.name)] : curr.name\n\n const hasImportInSource = (importName: string) => {\n if (!source) {\n return true\n }\n\n const checker = (name?: string) => {\n return name && source.includes(name)\n }\n\n return checker(importName) || exports.some(({ name }) => (Array.isArray(name) ? name.some(checker) : checker(name)))\n }\n\n if (curr.path === curr.root) {\n // root and path are the same file, remove the \"./\" import\n return prev\n }\n\n // merge all names and check if the importName is being used in the generated source and if not filter those imports out\n if (Array.isArray(name)) {\n name = name.filter((item) => (typeof item === 'string' ? hasImportInSource(item) : hasImportInSource(item.propertyName)))\n }\n\n const prevByPath = prev.findLast((imp) => imp.path === curr.path && imp.isTypeOnly === curr.isTypeOnly)\n const uniquePrev = prev.findLast((imp) => imp.path === curr.path && isDeepEqual(imp.name, name) && imp.isTypeOnly === curr.isTypeOnly)\n const prevByPathNameAndIsTypeOnly = prev.findLast((imp) => imp.path === curr.path && isDeepEqual(imp.name, name) && imp.isTypeOnly)\n\n if (prevByPathNameAndIsTypeOnly) {\n // we already have an export that has the same path but uses `isTypeOnly` (import type ...)\n return prev\n }\n\n // already unique enough or name is empty\n if (uniquePrev || (Array.isArray(name) && !name.length)) {\n return prev\n }\n\n // new item, append name\n if (!prevByPath) {\n return [\n ...prev,\n {\n ...curr,\n name,\n },\n ]\n }\n\n // merge all names when prev and current both have the same isTypeOnly set\n if (prevByPath && Array.isArray(prevByPath.name) && Array.isArray(name) && prevByPath.isTypeOnly === curr.isTypeOnly) {\n prevByPath.name = [...new Set([...prevByPath.name, ...name])]\n\n return prev\n }\n\n // no import was found in the source, ignore import\n if (!Array.isArray(name) && name && !hasImportInSource(name)) {\n return prev\n }\n\n return [...prev, curr]\n },\n [] as Array<KubbFile.Import>,\n )\n}\n\n/**\n * Helper to create a file with name and id set\n */\nexport function createFile<TMeta extends object = object>(file: KubbFile.File<TMeta>): KubbFile.ResolvedFile<TMeta> {\n const extname = path.extname(file.baseName) as KubbFile.Extname\n if (!extname) {\n throw new Error(`No extname found for ${file.baseName}`)\n }\n\n const source = file.sources.map((item) => item.value).join('\\n\\n')\n const exports = file.exports?.length ? combineExports(file.exports) : []\n const imports = file.imports?.length && source ? combineImports(file.imports, exports, source) : []\n const sources = file.sources?.length ? combineSources(file.sources) : []\n\n return {\n ...file,\n id: hashObject({ path: file.path }),\n name: trimExtName(file.baseName),\n extname,\n imports: imports,\n exports: exports,\n sources: sources,\n meta: file.meta || ({} as TMeta),\n }\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5,6],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"defineProperty-BZknW4oy.js","names":["e","r","n","t","t","i","n","e","r","t","n","r","e","t","a","e","r","i","n","t","r","n","i","e","t","e","n","r","i","a","e","t","n","r","i","a","uniqueBy","isDeepEqual","name"],"sources":["../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/lazyDataLastImpl-BDhrIOwR.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/purry-DH9cw9sy.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/utilityEvaluators-DORpnx39.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/pipe-jLehR9-P.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/purryFromLazy-3oywCNIb.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isDeepEqual-jLo35Woq.js","../../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/uniqueBy-C_PxkF_D.js","../src/createFile.ts"],"sourcesContent":["function e(e,t,n){let r=n=>e(n,...t);return n===void 0?r:Object.assign(r,{lazy:n,lazyArgs:t})}export{e as lazyDataLastImpl};\n//# sourceMappingURL=lazyDataLastImpl-BDhrIOwR.js.map","import{lazyDataLastImpl as e}from\"./lazyDataLastImpl-BDhrIOwR.js\";function t(t,n,r){let i=t.length-n.length;if(i===0)return t(...n);if(i===1)return e(t,n,r);throw Error(`Wrong number of arguments`)}export{t as purry};\n//# sourceMappingURL=purry-DH9cw9sy.js.map","const e={done:!0,hasNext:!1},t={done:!1,hasNext:!1},n=()=>e,r=e=>({hasNext:!0,next:e,done:!1});export{t as SKIP_ITEM,n as lazyEmptyEvaluator,r as lazyIdentityEvaluator};\n//# sourceMappingURL=utilityEvaluators-DORpnx39.js.map","import{SKIP_ITEM as e}from\"./utilityEvaluators-DORpnx39.js\";function t(e,...t){let a=e,o=t.map(e=>`lazy`in e?r(e):void 0),s=0;for(;s<t.length;){if(o[s]===void 0||!i(a)){let e=t[s];a=e(a),s+=1;continue}let e=[];for(let n=s;n<t.length;n++){let t=o[n];if(t===void 0||(e.push(t),t.isSingle))break}let r=[];for(let t of a)if(n(t,r,e))break;let{isSingle:c}=e.at(-1);a=c?r[0]:r,s+=e.length}return a}function n(t,r,i){if(i.length===0)return r.push(t),!1;let a=t,o=e,s=!1;for(let[e,t]of i.entries()){let{index:c,items:l}=t;if(l.push(a),o=t(a,c,l),t.index+=1,o.hasNext){if(o.hasMany??!1){for(let t of o.next)if(n(t,r,i.slice(e+1)))return!0;return s}a=o.next}if(!o.hasNext)break;o.done&&(s=!0)}return o.hasNext&&r.push(a),s}function r(e){let{lazy:t,lazyArgs:n}=e,r=t(...n);return Object.assign(r,{isSingle:t.single??!1,index:0,items:[]})}function i(e){return typeof e==`string`||typeof e==`object`&&!!e&&Symbol.iterator in e}export{t as pipe};\n//# sourceMappingURL=pipe-jLehR9-P.js.map","import{pipe as e}from\"./pipe-jLehR9-P.js\";function t(t,n){let r=n.length-t.length;if(r===1){let[r,...i]=n;return e(r,{lazy:t,lazyArgs:i})}if(r===0){let r={lazy:t,lazyArgs:n};return Object.assign(t=>e(t,r),r)}throw Error(`Wrong number of arguments`)}export{t as purryFromLazy};\n//# sourceMappingURL=purryFromLazy-3oywCNIb.js.map","import{purry as e}from\"./purry-DH9cw9sy.js\";function t(...t){return e(n,t)}function n(e,t){if(e===t||Object.is(e,t))return!0;if(typeof e!=`object`||typeof t!=`object`||e===null||t===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t))return!1;if(Array.isArray(e))return r(e,t);if(e instanceof Map)return i(e,t);if(e instanceof Set)return a(e,t);if(e instanceof Date)return e.getTime()===t.getTime();if(e instanceof RegExp)return e.toString()===t.toString();if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let[r,i]of Object.entries(e))if(!(r in t)||!n(i,t[r]))return!1;return!0}function r(e,t){if(e.length!==t.length)return!1;for(let[r,i]of e.entries())if(!n(i,t[r]))return!1;return!0}function i(e,t){if(e.size!==t.size)return!1;for(let[r,i]of e.entries())if(!t.has(r)||!n(i,t.get(r)))return!1;return!0}function a(e,t){if(e.size!==t.size)return!1;let r=[...t];for(let t of e){let e=!1;for(let[i,a]of r.entries())if(n(t,a)){e=!0,r.splice(i,1);break}if(!e)return!1}return!0}export{t as isDeepEqual};\n//# sourceMappingURL=isDeepEqual-jLo35Woq.js.map","import{SKIP_ITEM as e}from\"./utilityEvaluators-DORpnx39.js\";import{purryFromLazy as t}from\"./purryFromLazy-3oywCNIb.js\";function n(...e){return t(r,e)}function r(t){let n=t,r=new Set;return(t,i,a)=>{let o=n(t,i,a);return r.has(o)?e:(r.add(o),{done:!1,hasNext:!0,next:t})}}export{n as uniqueBy};\n//# sourceMappingURL=uniqueBy-C_PxkF_D.js.map","import { createHash } from 'node:crypto'\nimport path from 'node:path'\nimport { orderBy } from 'natural-orderby'\nimport { isDeepEqual, uniqueBy } from 'remeda'\nimport type * as KubbFile from './KubbFile.ts'\nimport { trimExtName } from './utils/trimExtName.ts'\n\nfunction hashObject(obj: Record<string, unknown>): string {\n const str = JSON.stringify(obj, Object.keys(obj).sort())\n return createHash('sha256').update(str).digest('hex')\n}\n\nexport function combineSources(sources: Array<KubbFile.Source>): Array<KubbFile.Source> {\n return uniqueBy(sources, (obj) => [obj.name, obj.isExportable, obj.isTypeOnly] as const)\n}\n\nexport function combineExports(exports: Array<KubbFile.Export>): Array<KubbFile.Export> {\n return orderBy(exports, [\n (v) => !!Array.isArray(v.name),\n (v) => !v.isTypeOnly,\n (v) => v.path,\n (v) => !!v.name,\n (v) => (Array.isArray(v.name) ? orderBy(v.name) : v.name),\n ]).reduce(\n (prev, curr) => {\n const name = curr.name\n const prevByPath = prev.findLast((imp) => imp.path === curr.path)\n const prevByPathAndIsTypeOnly = prev.findLast((imp) => imp.path === curr.path && isDeepEqual(imp.name, name) && imp.isTypeOnly)\n\n if (prevByPathAndIsTypeOnly) {\n // we already have an export that has the same path but uses `isTypeOnly` (export type ...)\n return prev\n }\n\n const uniquePrev = prev.findLast(\n (imp) => imp.path === curr.path && isDeepEqual(imp.name, name) && imp.isTypeOnly === curr.isTypeOnly && imp.asAlias === curr.asAlias,\n )\n\n // we already have an item that was unique enough or name field is empty or prev asAlias is set but current has no changes\n if (uniquePrev || (Array.isArray(name) && !name.length) || (prevByPath?.asAlias && !curr.asAlias)) {\n return prev\n }\n\n if (!prevByPath) {\n return [\n ...prev,\n {\n ...curr,\n name: Array.isArray(name) ? [...new Set(name)] : name,\n },\n ]\n }\n\n // merge all names when prev and current both have the same isTypeOnly set\n if (prevByPath && Array.isArray(prevByPath.name) && Array.isArray(curr.name) && prevByPath.isTypeOnly === curr.isTypeOnly) {\n prevByPath.name = [...new Set([...prevByPath.name, ...curr.name])]\n\n return prev\n }\n\n return [...prev, curr]\n },\n [] as Array<KubbFile.Export>,\n )\n}\n\nexport function combineImports(imports: Array<KubbFile.Import>, exports: Array<KubbFile.Export>, source?: string): Array<KubbFile.Import> {\n return orderBy(imports, [\n (v) => !!Array.isArray(v.name),\n (v) => !v.isTypeOnly,\n (v) => v.path,\n (v) => !!v.name,\n (v) => (Array.isArray(v.name) ? orderBy(v.name) : v.name),\n ]).reduce(\n (prev, curr) => {\n let name = Array.isArray(curr.name) ? [...new Set(curr.name)] : curr.name\n\n const hasImportInSource = (importName: string) => {\n if (!source) {\n return true\n }\n\n const checker = (name?: string) => {\n return name && source.includes(name)\n }\n\n return checker(importName) || exports.some(({ name }) => (Array.isArray(name) ? name.some(checker) : checker(name)))\n }\n\n if (curr.path === curr.root) {\n // root and path are the same file, remove the \"./\" import\n return prev\n }\n\n // merge all names and check if the importName is being used in the generated source and if not filter those imports out\n if (Array.isArray(name)) {\n name = name.filter((item) => (typeof item === 'string' ? hasImportInSource(item) : hasImportInSource(item.propertyName)))\n }\n\n const prevByPath = prev.findLast((imp) => imp.path === curr.path && imp.isTypeOnly === curr.isTypeOnly)\n const uniquePrev = prev.findLast((imp) => imp.path === curr.path && isDeepEqual(imp.name, name) && imp.isTypeOnly === curr.isTypeOnly)\n const prevByPathNameAndIsTypeOnly = prev.findLast((imp) => imp.path === curr.path && isDeepEqual(imp.name, name) && imp.isTypeOnly)\n\n if (prevByPathNameAndIsTypeOnly) {\n // we already have an export that has the same path but uses `isTypeOnly` (import type ...)\n return prev\n }\n\n // already unique enough or name is empty\n if (uniquePrev || (Array.isArray(name) && !name.length)) {\n return prev\n }\n\n // new item, append name\n if (!prevByPath) {\n return [\n ...prev,\n {\n ...curr,\n name,\n },\n ]\n }\n\n // merge all names when prev and current both have the same isTypeOnly set\n if (prevByPath && Array.isArray(prevByPath.name) && Array.isArray(name) && prevByPath.isTypeOnly === curr.isTypeOnly) {\n prevByPath.name = [...new Set([...prevByPath.name, ...name])]\n\n return prev\n }\n\n // no import was found in the source, ignore import\n if (!Array.isArray(name) && name && !hasImportInSource(name)) {\n return prev\n }\n\n return [...prev, curr]\n },\n [] as Array<KubbFile.Import>,\n )\n}\n\n/**\n * Helper to create a file with name and id set\n */\nexport function createFile<TMeta extends object = object>(file: KubbFile.File<TMeta>): KubbFile.ResolvedFile<TMeta> {\n const extname = path.extname(file.baseName) as KubbFile.Extname\n if (!extname) {\n throw new Error(`No extname found for ${file.baseName}`)\n }\n\n const source = file.sources.map((item) => item.value).join('\\n\\n')\n const exports = file.exports?.length ? combineExports(file.exports) : []\n const imports = file.imports?.length && source ? combineImports(file.imports, exports, source) : []\n const sources = file.sources?.length ? combineSources(file.sources) : []\n\n return {\n ...file,\n id: hashObject({ path: file.path }),\n name: trimExtName(file.baseName),\n extname,\n imports: imports,\n exports: exports,\n sources: sources,\n meta: file.meta || ({} as TMeta),\n }\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5,6],"mappings":";;;;;;AAAA,SAASA,IAAE,KAAE,KAAE,KAAE;CAAC,IAAIC,OAAE,QAAGD,IAAEE,KAAE,GAAGC,IAAE;AAAC,QAAOD,QAAI,KAAK,IAAED,MAAE,OAAO,OAAOA,KAAE;EAAC,MAAKC;EAAE,UAASC;EAAE,CAAC;;;;;ACA3B,SAASC,IAAE,KAAE,KAAE,KAAE;CAAC,IAAIC,MAAED,IAAE,SAAOE,IAAE;AAAO,KAAGD,QAAI,EAAE,QAAOD,IAAE,GAAGE,IAAE;AAAC,KAAGD,QAAI,EAAE,QAAOE,IAAEH,KAAEE,KAAEE,IAAE;AAAC,OAAM,MAAM,4BAA4B;;;;;ACArM,MAAM,IAAE;CAAC,MAAK,CAAC;CAAE,SAAQ,CAAC;CAAE,EAACC,MAAE;CAAC,MAAK,CAAC;CAAE,SAAQ,CAAC;CAAE,EAACC,YAAM,GAAEC,OAAE,SAAI;CAAC,SAAQ,CAAC;CAAE,MAAKC;CAAE,MAAK,CAAC;CAAE;;;;ACAjC,SAASC,IAAE,KAAE,GAAGA,KAAE;CAAC,IAAIC,MAAEC,KAAE,IAAEF,IAAE,KAAI,QAAG,UAASE,MAAEC,IAAED,IAAE,GAAC,KAAK,EAAE,EAAC,IAAE;AAAE,QAAK,IAAEF,IAAE,SAAQ;AAAC,MAAG,EAAE,OAAK,KAAK,KAAG,CAACI,IAAEH,IAAE,EAAC;GAAC,IAAIC,MAAEF,IAAE;AAAG,SAAEE,IAAED,IAAE,EAAC,KAAG;AAAE;;EAAS,IAAIC,MAAE,EAAE;AAAC,OAAI,IAAIG,MAAE,GAAEA,MAAEL,IAAE,QAAO,OAAI;GAAC,IAAIA,MAAE,EAAEK;AAAG,OAAGL,QAAI,KAAK,MAAIE,IAAE,KAAKF,IAAE,EAACA,IAAE,UAAU;;EAAM,IAAIG,MAAE,EAAE;AAAC,OAAI,IAAIH,OAAKC,IAAE,KAAGI,IAAEL,KAAEG,KAAED,IAAE,CAAC;EAAM,IAAG,EAAC,UAAS,MAAGA,IAAE,GAAG,GAAG;AAAC,QAAE,IAAEC,IAAE,KAAGA,KAAE,KAAGD,IAAE;;AAAO,QAAOD;;AAAE,SAASI,IAAE,KAAE,KAAE,KAAE;AAAC,KAAGD,IAAE,WAAS,EAAE,QAAOD,IAAE,KAAKH,IAAE,EAAC,CAAC;CAAE,IAAIC,MAAED,KAAE,IAAEE,KAAE,IAAE,CAAC;AAAE,MAAI,IAAG,CAACA,KAAEF,QAAKI,IAAE,SAAS,EAAC;EAAC,IAAG,EAAC,OAAM,GAAE,OAAM,MAAGJ;AAAE,MAAG,EAAE,KAAKC,IAAE,EAAC,IAAED,IAAEC,KAAE,GAAE,EAAE,EAAC,IAAE,SAAO,GAAE,EAAE,SAAQ;;AAAC,qBAAG,EAAE,0DAAS,CAAC,GAAE;AAAC,SAAI,IAAID,OAAK,EAAE,KAAK,KAAGK,IAAEL,KAAEG,KAAEC,IAAE,MAAMF,MAAE,EAAE,CAAC,CAAC,QAAM,CAAC;AAAE,WAAO;;AAAE,SAAE,EAAE;;AAAK,MAAG,CAAC,EAAE,QAAQ;AAAM,IAAE,SAAO,IAAE,CAAC;;AAAG,QAAO,EAAE,WAASC,IAAE,KAAKF,IAAE,EAAC;;AAAE,SAASE,IAAE,KAAE;;CAAC,IAAG,EAAC,MAAKH,KAAE,UAASK,QAAGH,KAAEC,MAAEH,IAAE,GAAGK,IAAE;AAAC,QAAO,OAAO,OAAOF,KAAE;EAAC,uBAASH,IAAE,uDAAQ,CAAC;EAAE,OAAM;EAAE,OAAM,EAAE;EAAC,CAAC;;AAAC,SAASI,IAAE,KAAE;AAAC,QAAO,OAAOF,OAAG,YAAU,OAAOA,OAAG,YAAU,CAAC,CAACA,OAAG,OAAO,YAAYA;;;;;ACAt2B,SAASI,IAAE,KAAE,KAAE;CAAC,IAAIC,MAAEC,IAAE,SAAOF,IAAE;AAAO,KAAGC,QAAI,GAAE;EAAC,IAAG,CAACA,KAAE,GAAGE,OAAGD;AAAE,SAAOE,IAAEH,KAAE;GAAC,MAAKD;GAAE,UAASG;GAAE,CAAC;;AAAC,KAAGF,QAAI,GAAE;EAAC,IAAIA,MAAE;GAAC,MAAKD;GAAE,UAASE;GAAE;AAAC,SAAO,OAAO,QAAO,QAAGE,IAAEJ,KAAEC,IAAE,EAACA,IAAE;;AAAC,OAAM,MAAM,4BAA4B;;;;;ACA5M,SAAS,EAAE,GAAGI,KAAE;AAAC,QAAOC,IAAEC,KAAEF,IAAE;;AAAC,SAASE,IAAE,KAAE,KAAE;AAAC,KAAGD,QAAID,OAAG,OAAO,GAAGC,KAAED,IAAE,CAAC,QAAM,CAAC;AAAE,KAAG,OAAOC,OAAG,YAAU,OAAOD,OAAG,YAAUC,QAAI,QAAMD,QAAI,QAAM,OAAO,eAAeC,IAAE,KAAG,OAAO,eAAeD,IAAE,CAAC,QAAM,CAAC;AAAE,KAAG,MAAM,QAAQC,IAAE,CAAC,QAAOE,IAAEF,KAAED,IAAE;AAAC,KAAGC,eAAa,IAAI,QAAO,EAAEA,KAAED,IAAE;AAAC,KAAGC,eAAa,IAAI,QAAO,EAAEA,KAAED,IAAE;AAAC,KAAGC,eAAa,KAAK,QAAOA,IAAE,SAAS,KAAGD,IAAE,SAAS;AAAC,KAAGC,eAAa,OAAO,QAAOA,IAAE,UAAU,KAAGD,IAAE,UAAU;AAAC,KAAG,OAAO,KAAKC,IAAE,CAAC,WAAS,OAAO,KAAKD,IAAE,CAAC,OAAO,QAAM,CAAC;AAAE,MAAI,IAAG,CAACG,KAAEC,QAAK,OAAO,QAAQH,IAAE,CAAC,KAAG,EAAEE,OAAKH,QAAI,CAACE,IAAEE,KAAEJ,IAAEG,KAAG,CAAC,QAAM,CAAC;AAAE,QAAM,CAAC;;AAAE,SAASA,IAAE,KAAE,KAAE;AAAC,KAAGF,IAAE,WAASD,IAAE,OAAO,QAAM,CAAC;AAAE,MAAI,IAAG,CAACG,KAAEC,QAAKH,IAAE,SAAS,CAAC,KAAG,CAACC,IAAEE,KAAEJ,IAAEG,KAAG,CAAC,QAAM,CAAC;AAAE,QAAM,CAAC;;AAAE,SAAS,EAAE,KAAE,KAAE;AAAC,KAAGF,IAAE,SAAOD,IAAE,KAAK,QAAM,CAAC;AAAE,MAAI,IAAG,CAACG,KAAEC,QAAKH,IAAE,SAAS,CAAC,KAAG,CAACD,IAAE,IAAIG,IAAE,IAAE,CAACD,IAAEE,KAAEJ,IAAE,IAAIG,IAAE,CAAC,CAAC,QAAM,CAAC;AAAE,QAAM,CAAC;;AAAE,SAAS,EAAE,KAAE,KAAE;AAAC,KAAGF,IAAE,SAAOD,IAAE,KAAK,QAAM,CAAC;CAAE,IAAIG,MAAE,CAAC,GAAGH,IAAE;AAAC,MAAI,IAAIA,OAAKC,KAAE;EAAC,IAAIA,MAAE,CAAC;AAAE,OAAI,IAAG,CAACG,KAAEC,QAAKF,IAAE,SAAS,CAAC,KAAGD,IAAEF,KAAEK,IAAE,EAAC;AAAC,SAAE,CAAC,GAAEF,IAAE,OAAOC,KAAE,EAAE;AAAC;;AAAM,MAAG,CAACH,IAAE,QAAM,CAAC;;AAAE,QAAM,CAAC;;;;;ACAr2B,SAAS,EAAE,GAAGK,KAAE;AAAC,QAAOC,IAAE,GAAED,IAAE;;AAAC,SAAS,EAAE,KAAE;CAAC,IAAIE,MAAED,KAAEE,sBAAE,IAAI,KAAG;AAAC,SAAO,KAAE,KAAE,QAAI;EAAC,IAAI,IAAED,IAAED,KAAEG,KAAEC,IAAE;AAAC,SAAOF,IAAE,IAAI,EAAE,GAACH,OAAGG,IAAE,IAAI,EAAE,EAAC;GAAC,MAAK,CAAC;GAAE,SAAQ,CAAC;GAAE,MAAKF;GAAE;;;;;;ACO7Q,SAAS,WAAW,KAAsC;CACxD,MAAM,MAAM,KAAK,UAAU,KAAK,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC;AACxD,QAAO,WAAW,SAAS,CAAC,OAAO,IAAI,CAAC,OAAO,MAAM;;AAGvD,SAAgB,eAAe,SAAyD;AACtF,QAAOK,EAAS,UAAU,QAAQ;EAAC,IAAI;EAAM,IAAI;EAAc,IAAI;EAAW,CAAU;;AAG1F,SAAgB,eAAe,SAAyD;AACtF,QAAO,QAAQ,SAAS;GACrB,MAAM,CAAC,CAAC,MAAM,QAAQ,EAAE,KAAK;GAC7B,MAAM,CAAC,EAAE;GACT,MAAM,EAAE;GACR,MAAM,CAAC,CAAC,EAAE;GACV,MAAO,MAAM,QAAQ,EAAE,KAAK,GAAG,QAAQ,EAAE,KAAK,GAAG,EAAE;EACrD,CAAC,CAAC,QACA,MAAM,SAAS;EACd,MAAM,OAAO,KAAK;EAClB,MAAM,aAAa,KAAK,UAAU,QAAQ,IAAI,SAAS,KAAK,KAAK;AAGjE,MAFgC,KAAK,UAAU,QAAQ,IAAI,SAAS,KAAK,QAAQC,EAAY,IAAI,MAAM,KAAK,IAAI,IAAI,WAAW,CAI7H,QAAO;AAQT,MALmB,KAAK,UACrB,QAAQ,IAAI,SAAS,KAAK,QAAQA,EAAY,IAAI,MAAM,KAAK,IAAI,IAAI,eAAe,KAAK,cAAc,IAAI,YAAY,KAAK,QAC9H,IAGkB,MAAM,QAAQ,KAAK,IAAI,CAAC,KAAK,mEAAY,WAAY,YAAW,CAAC,KAAK,QACvF,QAAO;AAGT,MAAI,CAAC,WACH,QAAO,CACL,GAAG,MACH;GACE,GAAG;GACH,MAAM,MAAM,QAAQ,KAAK,GAAG,CAAC,GAAG,IAAI,IAAI,KAAK,CAAC,GAAG;GAClD,CACF;AAIH,MAAI,cAAc,MAAM,QAAQ,WAAW,KAAK,IAAI,MAAM,QAAQ,KAAK,KAAK,IAAI,WAAW,eAAe,KAAK,YAAY;AACzH,cAAW,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,WAAW,MAAM,GAAG,KAAK,KAAK,CAAC,CAAC;AAElE,UAAO;;AAGT,SAAO,CAAC,GAAG,MAAM,KAAK;IAExB,EAAE,CACH;;AAGH,SAAgB,eAAe,SAAiC,SAAiC,QAAyC;AACxI,QAAO,QAAQ,SAAS;GACrB,MAAM,CAAC,CAAC,MAAM,QAAQ,EAAE,KAAK;GAC7B,MAAM,CAAC,EAAE;GACT,MAAM,EAAE;GACR,MAAM,CAAC,CAAC,EAAE;GACV,MAAO,MAAM,QAAQ,EAAE,KAAK,GAAG,QAAQ,EAAE,KAAK,GAAG,EAAE;EACrD,CAAC,CAAC,QACA,MAAM,SAAS;EACd,IAAI,OAAO,MAAM,QAAQ,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK;EAErE,MAAM,qBAAqB,eAAuB;AAChD,OAAI,CAAC,OACH,QAAO;GAGT,MAAM,WAAW,WAAkB;AACjC,WAAOC,UAAQ,OAAO,SAASA,OAAK;;AAGtC,UAAO,QAAQ,WAAW,IAAI,QAAQ,MAAM,EAAE,mBAAY,MAAM,QAAQA,OAAK,GAAGA,OAAK,KAAK,QAAQ,GAAG,QAAQA,OAAK,CAAE;;AAGtH,MAAI,KAAK,SAAS,KAAK,KAErB,QAAO;AAIT,MAAI,MAAM,QAAQ,KAAK,CACrB,QAAO,KAAK,QAAQ,SAAU,OAAO,SAAS,WAAW,kBAAkB,KAAK,GAAG,kBAAkB,KAAK,aAAa,CAAE;EAG3H,MAAM,aAAa,KAAK,UAAU,QAAQ,IAAI,SAAS,KAAK,QAAQ,IAAI,eAAe,KAAK,WAAW;EACvG,MAAM,aAAa,KAAK,UAAU,QAAQ,IAAI,SAAS,KAAK,QAAQD,EAAY,IAAI,MAAM,KAAK,IAAI,IAAI,eAAe,KAAK,WAAW;AAGtI,MAFoC,KAAK,UAAU,QAAQ,IAAI,SAAS,KAAK,QAAQA,EAAY,IAAI,MAAM,KAAK,IAAI,IAAI,WAAW,CAIjI,QAAO;AAIT,MAAI,cAAe,MAAM,QAAQ,KAAK,IAAI,CAAC,KAAK,OAC9C,QAAO;AAIT,MAAI,CAAC,WACH,QAAO,CACL,GAAG,MACH;GACE,GAAG;GACH;GACD,CACF;AAIH,MAAI,cAAc,MAAM,QAAQ,WAAW,KAAK,IAAI,MAAM,QAAQ,KAAK,IAAI,WAAW,eAAe,KAAK,YAAY;AACpH,cAAW,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,WAAW,MAAM,GAAG,KAAK,CAAC,CAAC;AAE7D,UAAO;;AAIT,MAAI,CAAC,MAAM,QAAQ,KAAK,IAAI,QAAQ,CAAC,kBAAkB,KAAK,CAC1D,QAAO;AAGT,SAAO,CAAC,GAAG,MAAM,KAAK;IAExB,EAAE,CACH;;;;;AAMH,SAAgB,WAA0C,MAA0D;;CAClH,MAAM,UAAU,KAAK,QAAQ,KAAK,SAAS;AAC3C,KAAI,CAAC,QACH,OAAM,IAAI,MAAM,wBAAwB,KAAK,WAAW;CAG1D,MAAM,SAAS,KAAK,QAAQ,KAAK,SAAS,KAAK,MAAM,CAAC,KAAK,OAAO;CAClE,MAAM,4BAAU,KAAK,uEAAS,UAAS,eAAe,KAAK,QAAQ,GAAG,EAAE;CACxE,MAAM,4BAAU,KAAK,uEAAS,WAAU,SAAS,eAAe,KAAK,SAAS,SAAS,OAAO,GAAG,EAAE;CACnG,MAAM,4BAAU,KAAK,uEAAS,UAAS,eAAe,KAAK,QAAQ,GAAG,EAAE;AAExE,QAAO;EACL,GAAG;EACH,IAAI,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;EACnC,MAAM,YAAY,KAAK,SAAS;EAChC;EACS;EACA;EACA;EACT,MAAM,KAAK,QAAS,EAAE;EACvB"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { EventEmitter as NodeEventEmitter } from 'node:events'
|
|
2
|
-
|
|
3
|
-
export class EventEmitter<TEvents extends Record<string, any>> {
|
|
4
|
-
constructor(maxListener = 100) {
|
|
5
|
-
this.#emitter.setMaxListeners(maxListener)
|
|
6
|
-
}
|
|
7
|
-
#emitter = new NodeEventEmitter()
|
|
8
|
-
|
|
9
|
-
emit<TEventName extends keyof TEvents & string>(eventName: TEventName, ...eventArg: TEvents[TEventName]): void {
|
|
10
|
-
this.#emitter.emit(eventName, ...(eventArg as any))
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
on<TEventName extends keyof TEvents & string>(eventName: TEventName, handler: (...eventArg: TEvents[TEventName]) => void): void {
|
|
14
|
-
this.#emitter.on(eventName, handler as any)
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
onOnce<TEventName extends keyof TEvents & string>(eventName: TEventName, handler: (...eventArgs: TEvents[TEventName]) => void): void {
|
|
18
|
-
const wrapper = (...args: TEvents[TEventName]) => {
|
|
19
|
-
this.off(eventName, wrapper)
|
|
20
|
-
handler(...args)
|
|
21
|
-
}
|
|
22
|
-
this.on(eventName, wrapper)
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
off<TEventName extends keyof TEvents & string>(eventName: TEventName, handler: (...eventArg: TEvents[TEventName]) => void): void {
|
|
26
|
-
this.#emitter.off(eventName, handler as any)
|
|
27
|
-
}
|
|
28
|
-
removeAll(): void {
|
|
29
|
-
this.#emitter.removeAllListeners()
|
|
30
|
-
}
|
|
31
|
-
}
|