tsdk.config.js
Run npx tsdk --init, tsdk will initialize tsdk.config.js file with content:
/** @type {import('tsdk').TSDKConfig} */
module.exports = {
packageDir: 'packages/',
packageName: 'fe-sdk',
baseDir: './src',
entityLibName: 'typeorm',
entityExt: 'entity',
apiconfExt: 'apiconf',
httpLib: 'axios',
shareExt: 'shared',
sharedDirs: ['./src/shared'],
removeFields: [],
monorepoRoot: './',
};Fields
packageDir- which folder to export the modulepackageName- the export module name, default isfe-sdkentityLibName- ORM library, current supportTypeORM,kysely和DrizzleORMentityExt- ORM model extension name, default is*.entity.tsapiconfExt- API config extension name, default is*.apiconf.tsshareExt- shared file extension name, default is*.shared.tssharedDirs- shared dir, default is["./src/shared"]monorepoRoot- monorepo root folder, default is./httpLib-xior|axios, default isaxios;xioruse fetch, and have similiar API with axiosdataHookLib-SWR|ReactQuery,GenerateSWRorReact Queryhooks;dependencies version:swr@^2.2.5;@tanstack/react-query@^5.10.0dependencies- custom dependencies,will combine tofe-sdk/package.jsondependencies. This can custom dependencies and override fe-sdk's default versiondevDependencies- custom devDependencies.
packageDir
packageDir - which folder to export the module
packageName
packageName - the export module name, default is fe-sdk
entityLibName
entityLibName - ORM library, current support TypeORM,kysely 和 DrizzleORM
entityExt
entityExt - ORM model extension name, default is *.entity.ts
apiconfExt
apiconfExt - API config extension name, default is *.apiconf.ts
shareExt
shareExt - shared file extension name, default is *.shared.ts
sharedDirs
sharedDirs - shared dir, default is ["./src/shared"]
monorepoRoot
monorepoRoot - monorepo root folder, default is ./
httpLib
Generate API SDK which request library to use.
xior | axios, default is axios; And xior use fetch, and similiar API with axios
dataHookLib
dataHookLib - SWR | ReactQuery; Generate SWR or React Query hooks;dependencies version: swr@^2.2.5; @tanstack/react-query@^5.10.0
dependencies
Custom dependencies,will combine to fe-sdk/package.json dependencies. This can custom dependencies and override fe-sdk's default version
For example, update tsdk.config.js to change axios to latest version:
/** @type {import('tsdk').TSDKConfig} */
module.exports = {
...
dependencies: {
"axios": "latest"
}
}devDependencies
Like dependencies, but for devDependencies.