typed-backend
Advanced tools
Comparing version 0.1.4 to 0.1.5
"use strict"; | ||
var __importDefault = (this && this.__importDefault) || function (mod) { | ||
return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
const typed_backend_1 = require("typed-backend"); | ||
const CoreEntityAppSetting_1 = __importDefault(require("./entity/CoreEntityAppSetting")); | ||
const CoreEntityMaterializedStatus_1 = __importDefault(require("./entity/CoreEntityMaterializedStatus")); | ||
const Boolean_1 = __importDefault(require("./dataType/atom/Boolean")); | ||
const Date_1 = __importDefault(require("./dataType/atom/Date")); | ||
const JSON_1 = __importDefault(require("./dataType/atom/JSON")); | ||
const Link_1 = __importDefault(require("./dataType/atom/Link")); | ||
const Number_1 = __importDefault(require("./dataType/atom/Number")); | ||
const Select_1 = __importDefault(require("./dataType/atom/Select")); | ||
const String_1 = __importDefault(require("./dataType/atom/String")); | ||
const BacklinkOptions_1 = __importDefault(require("./dataType/BacklinkOptions")); | ||
const DateTime_1 = __importDefault(require("./dataType/DateTime")); | ||
const Options_1 = __importDefault(require("./dataType/Options")); | ||
const ShortText_1 = __importDefault(require("./dataType/ShortText")); | ||
const IdTransformPlugin_1 = __importDefault(require("./entityPlugin/IdTransformPlugin")); | ||
const CoreServiceCLS_1 = __importDefault(require("./service/CoreServiceCLS")); | ||
const CoreServiceEntity_1 = __importDefault(require("./service/CoreServiceEntity")); | ||
const CoreServiceEvent_1 = __importDefault(require("./service/CoreServiceEvent")); | ||
const CoreServiceJob_1 = __importDefault(require("./service/CoreServiceJob")); | ||
const CoreServiceMaterialize_1 = __importDefault(require("./service/CoreServiceMaterialize")); | ||
const CoreServiceQueue_1 = __importDefault(require("./service/CoreServiceQueue")); | ||
exports.default = typed_backend_1.BwApplicationPackage.load({ | ||
config: require('./config').default, | ||
entities: [ | ||
require('./entity/CoreEntityAppSetting').default, | ||
require('./entity/CoreEntityMaterializedStatus').default | ||
], | ||
entities: [CoreEntityAppSetting_1.default, CoreEntityMaterializedStatus_1.default], | ||
queries: [], | ||
subscriptions: [], | ||
mutations: [], | ||
dataTypes: [ | ||
require('./dataType/atom/Boolean').default, | ||
require('./dataType/atom/Date').default, | ||
require('./dataType/atom/JSON').default, | ||
require('./dataType/atom/Link').default, | ||
require('./dataType/atom/Number').default, | ||
require('./dataType/atom/Select').default, | ||
require('./dataType/atom/String').default, | ||
require('./dataType/BacklinkOptions').default, | ||
require('./dataType/DateTime').default, | ||
require('./dataType/Options').default, | ||
require('./dataType/ShortText').default | ||
], | ||
dataTypes: [Boolean_1.default, Date_1.default, JSON_1.default, Link_1.default, Number_1.default, Select_1.default, String_1.default, BacklinkOptions_1.default, DateTime_1.default, Options_1.default, ShortText_1.default], | ||
eventHandlers: [], | ||
implements: [], | ||
entityPlugins: [require('./entityPlugin/IdTransformPlugin').default], | ||
entityPlugins: [IdTransformPlugin_1.default], | ||
services: [ | ||
require('./service/CoreServiceCLS').default, | ||
require('./service/CoreServiceEntity').default, | ||
require('./service/CoreServiceEvent').default, | ||
require('./service/CoreServiceJob').default, | ||
require('./service/CoreServiceMaterialize').default, | ||
require('./service/CoreServiceQueue').default | ||
CoreServiceCLS_1.default, | ||
CoreServiceEntity_1.default, | ||
CoreServiceEvent_1.default, | ||
CoreServiceJob_1.default, | ||
CoreServiceMaterialize_1.default, | ||
CoreServiceQueue_1.default | ||
], | ||
hooks: [], | ||
jobs: [require('./entity/CoreEntityAppSetting').default, require('./entity/CoreEntityMaterializedStatus').default], | ||
jobs: [], | ||
migrations: {} | ||
}); | ||
//# sourceMappingURL=index.js.map |
@@ -214,3 +214,3 @@ import _ from 'lodash'; | ||
get implements(): import("./BwApplicationPackage").BwAppImplementConfig<never>[]; | ||
get entityPlugins(): import("./BwApplicationPackage").BwEntityPluginClass[]; | ||
get entityPlugins(): import("./BwApplicationPackage").BwEntityPluginClass<import("simple-graphql").SGPluginOptions>[]; | ||
get hooks(): import("./BwApplicationPackage").BwAppHookConfig<any>[]; | ||
@@ -217,0 +217,0 @@ get eventHandlers(): BwAppEventHandlerConfig[]; |
@@ -1,2 +0,2 @@ | ||
import { SGHookOptionsMap } from 'simple-graphql'; | ||
import { SGHookOptionsMap, SGPluginOptions } from 'simple-graphql'; | ||
import { BwApplication, BwAppSetting, BwAppSettingTSD, BwDataSourceMap, BwDataTypeConfig, BwEntityPlugin, BwEnvironment, BwEnvironmentContext, BwEventHandlerConfig, BwFieldConfig, BwHookConfig, BwImplementConfig, BwJobConfig, BwLookupValueSetting, BwMigrationFunc, BwMutationConfig, BwQueryConfig, BwService, BwSubscriptionConfig, EventDataTypeTSD, ProtocolTypeTSD } from '..'; | ||
@@ -108,4 +108,4 @@ import { BwAppEntity } from '../entity/BwAppEntity'; | ||
}; | ||
export type BwEntityPluginClass = typeof BwEntityPlugin & { | ||
new (environment: BwEnvironment): BwEntityPlugin; | ||
export type BwEntityPluginClass<T extends SGPluginOptions = SGPluginOptions> = typeof BwEntityPlugin<T> & { | ||
new (environment: BwEnvironment): BwEntityPlugin<T>; | ||
}; | ||
@@ -112,0 +112,0 @@ export declare class BwApplicationPackage { |
@@ -68,33 +68,53 @@ "use strict"; | ||
let searchPattern = recursive ? `${path}/${type}/**/*.[jt]s` : `${path}/${type}/*.[jt]s`; | ||
return glob_1.default | ||
.sync(searchPattern) | ||
.map((file) => `require('${file.replace(path, '.').replace('.ts', '')}').default`) | ||
.join(','); | ||
const files = glob_1.default.sync(searchPattern); | ||
const info = files.map((file) => { | ||
const name = file.substring(file.lastIndexOf('/') + 1, file.length - 3); | ||
return { name: name, importStatement: `import ${name} from '${file.replace(path, '.').replace('.ts', '')}'` }; | ||
}); | ||
return { name: info.map((i) => i.name).join(','), importStatement: info.map((i) => i.importStatement).join('\n') }; | ||
} | ||
function searchMigrations(path) { | ||
const result = {}; | ||
return glob_1.default | ||
.sync(`${path}/migration/migration-*.[jt]s`) | ||
.map((file) => { | ||
const name = file.substring(file.lastIndexOf('/') + 1, file.length - 3).substring('migration-'.length); | ||
result[name] = `${name}:require('${file.replace(path, '.').replace('.ts', '')}').default`; | ||
const files = glob_1.default.sync(`${path}/migration/migration-*.[jt]s`); | ||
const info = files.map((file) => { | ||
const name = file.substring(file.lastIndexOf('/') + 1, file.length - 3); | ||
return { name: name, importStatement: `import ${name} from '${file.replace(path, '.').replace('.ts', '')}'` }; | ||
}); | ||
const name = info | ||
.map((i) => { | ||
const index = i.name.substring('migration-'.length); | ||
return `${index}:${i.name}`; | ||
}) | ||
.join(','); | ||
return { name: name, importStatement: info.map((i) => i.importStatement).join('\n') }; | ||
} | ||
const indexFileContent = `import {BwApplicationPackage} from "typed-backend"; | ||
${searchFiles(path, 'entity').importStatement} | ||
${searchFiles(path, 'query').importStatement} | ||
${searchFiles(path, 'subscription').importStatement} | ||
${searchFiles(path, 'mutation').importStatement} | ||
${searchFiles(path, 'dataType').importStatement} | ||
${searchFiles(path, 'eventHandler').importStatement} | ||
${searchFiles(path, 'implement').importStatement} | ||
${searchFiles(path, 'entityPlugin').importStatement} | ||
${searchFiles(path, 'service', false).importStatement} | ||
${searchFiles(path, 'hooks').importStatement} | ||
${searchFiles(path, 'jobs').importStatement} | ||
${searchMigrations('migration').importStatement} | ||
export default BwApplicationPackage.load({ | ||
config: require('./config').default, | ||
entities: [${searchFiles(path, 'entity')}], | ||
queries: [${searchFiles(path, 'query')}], | ||
subscriptions: [${searchFiles(path, 'subscription')}], | ||
mutations: [${searchFiles(path, 'mutation')}], | ||
dataTypes: [${searchFiles(path, 'dataType')}], | ||
eventHandlers: [${searchFiles(path, 'eventHandler')}], | ||
implements: [${searchFiles(path, 'implement')}], | ||
entityPlugins: [${searchFiles(path, 'entityPlugin')}], | ||
services: [${searchFiles(path, 'service', false)}], | ||
hooks: [${searchFiles(path, 'job')}], | ||
jobs: [${searchFiles(path, 'entity')}], | ||
migrations: {${searchMigrations('migration')}} | ||
entities: [${searchFiles(path, 'entity').name}], | ||
queries: [${searchFiles(path, 'query').name}], | ||
subscriptions: [${searchFiles(path, 'subscription').name}], | ||
mutations: [${searchFiles(path, 'mutation').name}], | ||
dataTypes: [${searchFiles(path, 'dataType').name}], | ||
eventHandlers: [${searchFiles(path, 'eventHandler').name}], | ||
implements: [${searchFiles(path, 'implement').name}], | ||
entityPlugins: [${searchFiles(path, 'entityPlugin').name}], | ||
services: [${searchFiles(path, 'service', false).name}], | ||
hooks: [${searchFiles(path, 'hooks').name}], | ||
jobs: [${searchFiles(path, 'jobs').name}], | ||
migrations: {${searchMigrations('migration').name}} | ||
})`; | ||
@@ -101,0 +121,0 @@ fs_1.default.writeFileSync(`${path}/index.ts`, indexFileContent); |
{ | ||
"name": "typed-backend", | ||
"version": "0.1.4", | ||
"version": "0.1.5", | ||
"description": "", | ||
@@ -12,3 +12,3 @@ "main": "dist/index.js", | ||
"buildAndPublish": "npm run format && npm run build && npm publish", | ||
"gen-app-index": "node dist/tool/genPackageIndex.js ./src/app-*" | ||
"gen-app-index": "node dist/tool/genPackageIndex.js ./src/app-* && prettier -w --print-width 120 --cache --write ./src/app-*/index.ts" | ||
}, | ||
@@ -15,0 +15,0 @@ "author": "logerzhu", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
488766
7571