@things-factory/operato-tools 6.0.152 → 6.1.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/client/actions/main.js +1 -1
- package/client/pages/generator/button-config-tab-mixin.js +4 -4
- package/client/pages/generator/column-config-tab-mixin.js +4 -4
- package/client/pages/generator/etc-config-tab-mixin.js +4 -4
- package/client/pages/generator/form-config-tab-mixin.js +4 -4
- package/client/pages/generator/graphql-config-tab-mixin.js +24 -24
- package/client/pages/generator/grid-config-tab-mixin.js +21 -21
- package/client/pages/generator/menu-config-tab-mixin.js +11 -11
- package/client/pages/generator/meta-generator-page.js +11 -11
- package/client/pages/generator/search-config-tab-mixin.js +4 -4
- package/client/pages/generator/tab-config-tab-mixin.js +4 -4
- package/client/pages/main.js +4 -4
- package/client/reducers/main.js +1 -1
- package/client/themes/grist-theme.css +198 -0
- package/client/themes/report-theme.css +47 -0
- package/package.json +4 -4
- package/server/constants/error-code.js +1 -1
- package/server/errors/license-error.js +1 -1
- package/server/routes.js +1 -1
- package/server/service/tool-entity/create-menu.js +1 -1
- package/server/service/tool-entity/create-service.js +1 -1
- package/server/service/tool-secret/tool-permission.js +1 -1
- package/server/service/tool-secret/tool-resolver.js +1 -1
- package/translations/en.json +2 -1
- package/translations/ko.json +2 -1
- package/translations/ms.json +2 -1
- package/translations/zh.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';function a0_0x4c4d(_0x22f1b6,_0x564b38){const _0x2b2195=a0_0x2b21();return a0_0x4c4d=function(_0x4c4d7e,_0x1e5507){_0x4c4d7e=_0x4c4d7e-0x143;let _0x3a8333=_0x2b2195[_0x4c4d7e];return _0x3a8333;},a0_0x4c4d(_0x22f1b6,_0x564b38);}const a0_0x367ed2=a0_0x4c4d;(function(_0x517628,_0x243ea2){const _0x4fec26=a0_0x4c4d,_0x31af0b=_0x517628();while(!![]){try{const _0x1ce77f=parseInt(_0x4fec26(0x170))/0x1*(parseInt(_0x4fec26(0x168))/0x2)+parseInt(_0x4fec26(0x1c8))/0x3*(-parseInt(_0x4fec26(0x1c2))/0x4)+parseInt(_0x4fec26(0x154))/0x5*(-parseInt(_0x4fec26(0x1a4))/0x6)+parseInt(_0x4fec26(0x146))/0x7*(parseInt(_0x4fec26(0x1b8))/0x8)+parseInt(_0x4fec26(0x1c9))/0x9*(-parseInt(_0x4fec26(0x195))/0xa)+parseInt(_0x4fec26(0x1ba))/0xb+parseInt(_0x4fec26(0x1c5))/0xc;if(_0x1ce77f===_0x243ea2)break;else _0x31af0b['push'](_0x31af0b['shift']());}catch(_0xa9979e){_0x31af0b['push'](_0x31af0b['shift']());}}}(a0_0x2b21,0x62521));Object[a0_0x367ed2(0x1ad)](exports,a0_0x367ed2(0x183),{'value':!0x0}),exports['OperatoToolCreateService']=void 0x0;const tslib_1=require(a0_0x367ed2(0x199)),type_graphql_1=require(a0_0x367ed2(0x164)),shell_1=require('@things-factory/shell'),resource_base_1=require(a0_0x367ed2(0x162)),{camelCase:camelCase,startCase:startCase,snakeCase:snakeCase,kebabCase:kebabCase}=require('lodash'),{plural:plural}=require(a0_0x367ed2(0x1d0)),fs=require('fs');function a0_0x2b21(){const _0x179f94=['domain_id','state','Resolvers,','tslib','Entity','/*\x20ENTITIES\x20*/\x0a\x09...','\x0a\x20\x20','Date','decimal','\x0aimport\x20{\x20ObjectType,\x20Field,\x20InputType,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0a\x0a@ObjectType()\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryList\x20{\x0a\x20\x20@Field(type\x20=>\x20[{{pascalCase\x20name}}History])\x0a\x20\x20items:\x20{{pascalCase\x20name}}History[]\x0a\x0a\x20\x20@Field(type\x20=>\x20Int)\x0a\x20\x20total:\x20number\x0a}\x0a','\x20{\x20nullable:\x20','/server','datetime','integer','1116870QeWNyP','\x0aimport\x20{\x20EventSubscriber\x20}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20HistoryEntitySubscriber\x20}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20getRepository\x20}\x20from\x20\x27@things-factory/shell\x27\x0a\x0a@EventSubscriber()\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryEntitySubscriber\x20extends\x20HistoryEntitySubscriber<{{pascalCase\x20name}},{{pascalCase\x20name}}History>\x20{\x0a\x20\x20public\x20get\x20entity()\x20{\x0a\x20\x20\x20\x20return\x20{{pascalCase\x20name}}\x0a\x20\x20}\x0a\x0a\x20\x20public\x20get\x20historyEntity()\x20{\x0a\x20\x20\x20\x20return\x20{{pascalCase\x20name}}History\x0a\x20\x20}\x0a\x0a\x20\x20{{entityToJson}}\x0a\x0a\x20\x20async\x20beforeRemoveHistory(history:{{pascalCase\x20name}}History,entity:{{pascalCase\x20name}}){\x0a\x20\x20\x20\x20let\x20repo\x20=\x20getRepository({{pascalCase\x20name}}History);\x0a\x20\x20\x20\x20const\x20revNo\x20=\x20await\x20repo.createQueryBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.select(\x27max(data_revision_no)\x27,\x20\x27rev_no\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.where(\x27domain_id\x20=\x20:domainId\x27,\x20{\x20domainId:\x20entity.domain.id\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.andWhere(\x27original_id\x20=\x20:originalId\x27,\x20{\x20originalId:\x20entity.id\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.getRawOne()\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20history.dataRevisionNo\x20=\x20revNo\x20?\x20revNo.rev_no\x20+\x201\x20:\x201;\x0a\x20\x20\x20\x20return\x20history;\x0a\x20\x20}\x0a}\x0a','PWD','number','toolCreateService','createHistoryServiceFiles','export\x20*\x20from\x20\x27./','/index.ts','@Column({name:\x27','defineProperty','import\x20{\x20entities\x20as\x20','existsPath','length','created_at','map','nullable','/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0aexport\x20*\x20from\x20\x27./','findOne','createNoHistoryServiceFiels','domain','2630864GtbDdV','.ts','6569937iaraua','{{camelCase\x20name}}.','\x0aimport\x20{\x20Resolver,\x20Query,\x20FieldResolver,\x20Root,\x20Args,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20Domain,\x20ListParam,\x20convertListParams,\x20getRepository,\x20getQueryBuilderFromListParams\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}List\x20}\x20from\x20\x27./{{name}}-type\x27\x0a\x0a@Resolver({{pascalCase\x20name}})\x0aexport\x20class\x20{{pascalCase\x20name}}Query\x20{\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20fetch\x20a\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20return\x20await\x20getRepository({{pascalCase\x20name}}).findOne({\x0a\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20}\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}List,\x20{\x20description:\x20\x27To\x20fetch\x20multiple\x20{{pluralPascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20{{pluralCamelCase\x20name}}(@Args()\x20params:\x20ListParam,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}List>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20queryBuilder\x20=\x20getQueryBuilderFromListParams({\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20params,\x0a\x20\x20\x20\x20\x20\x20repository:\x20await\x20getRepository({{pascalCase\x20name}})\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20const\x20convertedParams\x20=\x20convertListParams(params,\x20domain.id)\x0a\x20\x20\x20\x20const\x20[items,\x20total]\x20=\x20await\x20queryBuilder.getManyAndCount()\x0a\x0a\x20\x20\x20\x20return\x20{\x20items,\x20total\x20}\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20Domain)\x0a\x20\x20async\x20domain(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<Domain>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(Domain).findOneBy({id:{{camelCase\x20name}}.domainId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20updater(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}.updaterId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20creator(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}.creatorId})\x0a\x20\x20}\x0a}\x0a','\x0a\x20\x20public\x20createHistoryEntity(manager,\x20entity)\x20{\x0a\x20\x20\x20\x20let\x20history\x20=\x20manager.create(this.historyEntity,\x20entity);\x0a\x20\x20\x20\x20history.historyJson\x20=\x20JSON.stringify(entity);\x0a\x20\x20\x20\x20return\x20history;\x0a\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20','float','-type.ts','text','readFileSync','1080188EcQjBq','Entities,','OperatoToolCreateService','16700592rQGPMd','EntitySubscribers\x20}\x20from\x20\x27./','bigint','6zpeVRk','90vWkUnJ','includes','colSize','\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Query\x20}\x20from\x20\x27./{{name}}-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryQuery\x20}\x20from\x20\x27./{{name}}-history-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Mutation\x20}\x20from\x20\x27./{{name}}-mutation\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryEntitySubscriber\x20}\x20from\x20\x27./event-subscriber\x27\x0a\x0aexport\x20const\x20entities\x20=\x20[{{pascalCase\x20name}},\x20{{pascalCase\x20name}}History]\x0aexport\x20const\x20resolvers\x20=\x20[{{pascalCase\x20name}}Query,\x20{{pascalCase\x20name}}HistoryQuery,\x20{{pascalCase\x20name}}Mutation]\x0aexport\x20const\x20subscribers\x20=\x20[{{pascalCase\x20name}}HistoryEntitySubscriber]\x0a\x0a','Resolvers\x20}\x20from\x20\x27./','createHistoryEntityText','getColTxtType','pluralize','double','createServiceFiles','packages','replace','/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x09\x09...','Resolvers,\x20subscribers\x20as\x20','type\x20=>','\x0aimport\x20{\x20Resolver,\x20Query,\x20FieldResolver,\x20Root,\x20Args,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20Domain,\x20ListParam,\x20convertListParams,\x20getRepository,\x20getQueryBuilderFromListParams\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryList\x20}\x20from\x20\x27./{{name}}-history-type\x27\x0a\x0a@Resolver({{pascalCase\x20name}}History)\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryQuery\x20{\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}History,\x20{\x20description:\x20\x27To\x20fetch\x20a\x20{{pascalCase\x20name}}History\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}History(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}History>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20return\x20await\x20getRepository({{pascalCase\x20name}}History).findOne({\x0a\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20}\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}HistoryList,\x20{\x20description:\x20\x27To\x20fetch\x20multiple\x20{{pluralPascalCase\x20name}}History\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}Histories(@Args()\x20params:\x20ListParam,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}HistoryList>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20queryBuilder\x20=\x20getQueryBuilderFromListParams({\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20params,\x0a\x20\x20\x20\x20\x20\x20repository:\x20await\x20getRepository({{pascalCase\x20name}}History)\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20const\x20[items,\x20total]\x20=\x20await\x20queryBuilder.getManyAndCount()\x0a\x0a\x20\x20\x20\x20return\x20{\x20items,\x20total\x20}\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20Domain)\x0a\x20\x20async\x20domain(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<Domain>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(Domain).findOneBy({id:{{camelCase\x20name}}History.domainId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20updater(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}History.updaterId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20creator(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}History.creatorId})\x0a\x20\x20}\x0a}\x0a','design:returntype','-query.ts','index.ts','Entities,\x20resolvers\x20as\x20','createEntityText','7CVEhGe','long','-history-type.ts','replaceNamesMap','push','updated_at','env','\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0a\x0aimport\x20{\x0a\x20\x20HistoryActionColumn,\x0a\x20\x20HistoryActionType,\x0a\x20\x20HistoryEntityInterface,\x0a\x20\x20HistoryOriginalIdColumn\x0a}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20config\x20}\x20from\x20\x27@things-factory/env\x27\x0aimport\x20{\x20Domain,\x20ScalarObject\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0aconst\x20ORMCONFIG\x20=\x20config.get(\x27ormconfig\x27,\x20{})\x0aconst\x20DATABASE_TYPE\x20=\x20ORMCONFIG.type\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@Entity(\x27{{tableName}}_histories\x27)\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_0\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId,{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_1\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_2\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_3\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId,\x20{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}History\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}History\x20\x20implements\x20HistoryEntityInterface<{{pascalCase\x20name}}>{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a\x20\x20@HistoryOriginalIdColumn({type:\x20\x27character\x20varying\x27,\x20nullable:\x20false\x20,length:40})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20originalId!:\x20string\x0a\x0a\x0a\x20\x20@HistoryActionColumn({\x0a\x20\x20\x20\x20nullable:\x20false,\x0a\x20\x20\x20\x20type:\x0a\x20\x20\x20\x20\x20\x20DATABASE_TYPE\x20==\x20\x27postgres\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mysql\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mariadb\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27enum\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20DATABASE_TYPE\x20==\x20\x27oracle\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27varchar2\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20\x27smallint\x27,\x0a\x20\x20\x20\x20enum:\x20HistoryActionType\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20dataRevisionAction!:\x20HistoryActionType\x0a\x0a\x20\x20@Column({\x20default:\x201,\x20nullable:\x20false\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201\x0a\x0a{{entityColumns}}\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a','/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0aimport\x20{\x20entities\x20as\x20','character\x20varying','pluralPascalCaseName','date','uniqRank','Float','20hmLpPn','snakeCaseName','getFieldType','Operato\x20Tool\x20Create\x20Service','writeFile','\x27,\x20type:\x20\x27','-history.ts','updater_id','camelCaseName','getRepository','Int','/packages/','-history\x27','\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Query\x20}\x20from\x20\x27./{{name}}-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Mutation\x20}\x20from\x20\x27./{{name}}-mutation\x27\x0a\x0aexport\x20const\x20entities\x20=\x20[{{pascalCase\x20name}}]\x0aexport\x20const\x20resolvers\x20=\x20[{{pascalCase\x20name}}Query,\x20{{pascalCase\x20name}}Mutation]\x0a','@things-factory/resource-base','__param','type-graphql','\x0aimport\x20{\x20Resolver,\x20Mutation,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20In\x20}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20New{{pascalCase\x20name}},\x20{{pascalCase\x20name}}Patch\x20}\x20from\x20\x27./{{name}}-type\x27\x0aimport\x20{\x20getRepository\x20}\x20from\x20\x27@things-factory/shell\x27\x0a\x0a@Resolver({{pascalCase\x20name}})\x0aexport\x20class\x20{{pascalCase\x20name}}Mutation\x20{\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20create\x20new\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20create{{pascalCase\x20name}}(@Arg(\x27{{camelCase\x20name}}\x27)\x20{{camelCase\x20name}}:\x20New{{pascalCase\x20name}},\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20return\x20await\x20tx.getRepository({{pascalCase\x20name}}).save({\x0a\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20creator:\x20user,\x0a\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20modify\x20{{pascalCase\x20name}}\x20information\x27\x20})\x0a\x20\x20async\x20update{{pascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27id\x27)\x20id:\x20string,\x0a\x20\x20\x20\x20@Arg(\x27patch\x27)\x20patch:\x20{{pascalCase\x20name}}Patch,\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20repository\x20=\x20tx.getRepository({{pascalCase\x20name}})\x0a\x20\x20\x20\x20const\x20{{camelCase\x20name}}\x20=\x20await\x20repository.findOne(\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20relations:\x20[\x27domain\x27,\x20\x27updater\x27,\x20\x27creator\x27]\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20)\x0a\x0a\x20\x20\x20\x20return\x20await\x20repository.save({\x0a\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20...patch,\x0a\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20[{{pascalCase\x20name}}],\x20{\x20description:\x20\x22To\x20modify\x20multiple\x20{{pluralPascalCase\x20name}}\x27\x20information\x22\x20})\x0a\x20\x20async\x20updateMultiple{{pascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27patches\x27,\x20type\x20=>\x20[{{pascalCase\x20name}}Patch])\x20patches:\x20{{pascalCase\x20name}}Patch[],\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<{{pascalCase\x20name}}[]>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20let\x20results\x20=\x20[]\x0a\x20\x20\x20\x20const\x20_createRecords\x20=\x20patches.filter((patch:\x20any)\x20=>\x20patch.cuFlag.toUpperCase()\x20===\x20\x27+\x27)\x0a\x20\x20\x20\x20const\x20_updateRecords\x20=\x20patches.filter((patch:\x20any)\x20=>\x20patch.cuFlag.toUpperCase()\x20===\x20\x27M\x27)\x0a\x20\x20\x20\x20const\x20{{camelCase\x20name}}Repo\x20=\x20tx.getRepository({{pascalCase\x20name}})\x0a\x0a\x20\x20\x20\x20if\x20(_createRecords.length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(let\x20i\x20=\x200;\x20i\x20<\x20_createRecords.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20newRecord\x20=\x20_createRecords[i]\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20result\x20=\x20await\x20{{camelCase\x20name}}Repo.save({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...newRecord,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20creator:\x20user,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20results.push({\x20...result,\x20cuFlag:\x20\x27+\x27\x20})\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20if\x20(_updateRecords.length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(let\x20i\x20=\x200;\x20i\x20<\x20_updateRecords.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20updRecord\x20=\x20_updateRecords[i]\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20{{camelCase\x20name}}\x20=\x20await\x20{{camelCase\x20name}}Repo.findOne({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id:updRecord.id\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20relations:\x20[\x27domain\x27,\x20\x27updater\x27,\x20\x27creator\x27]\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20result\x20=\x20await\x20{{camelCase\x20name}}Repo.save({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...updRecord,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20results.push({\x20...result,\x20cuFlag:\x20\x27M\x27\x20})\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20return\x20results\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20Boolean,\x20{\x20description:\x20\x27To\x20delete\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20delete{{pascalCase\x20name}}(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<boolean>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20tx,\x20user\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20await\x20tx.getRepository({{pascalCase\x20name}}).remove({\x20domain,\x20id,\x20updater:user\x20})\x0a\x20\x20\x20\x20return\x20true\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20Boolean,\x20{\x20description:\x20\x27To\x20delete\x20multiple\x20{{camelCase\x20name}}s\x27\x20})\x0a\x20\x20async\x20delete{{pluralPascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27ids\x27,\x20type\x20=>\x20[String])\x20ids:\x20string[],\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<boolean>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20tx,\x20user\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20let\x20delEntitis\x20=\x20ids.map(id=>{\x0a\x20\x20\x20\x20\x20\x20return\x20{domain,id,updater:user}\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20await\x20tx.getRepository({{pascalCase\x20name}}).remove(delEntitis)\x0a\x0a\x20\x20\x20\x20return\x20true\x0a\x20\x20}\x0a}\x0a','...','@Field(','187108psnmpF','filter','indexOf','getProjectRootPath','columnToEntityColumn','design:paramtypes','\x27,\x20nullable:\x20','sort','1wNqxHi','createTypeText','COPY','\x0aimport\x20{\x20ObjectType,\x20Field,\x20InputType,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@InputType()\x0aexport\x20class\x20New{{pascalCase\x20name}}\x20{\x0a{{newTypeColumns}}\x0a}\x0a\x0a@InputType()\x0aexport\x20class\x20{{pascalCase\x20name}}Patch\x20{\x0a\x20\x20@Field(type\x20=>\x20ID,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20id?:\x20string\x0a\x0a{{patchTypeColumns}}\x0a\x0a\x20\x20@Field()\x0a\x20\x20cuFlag:\x20string\x0a}\x0a\x0a@ObjectType()\x0aexport\x20class\x20{{pascalCase\x20name}}List\x20{\x0a\x20\x20@Field(type\x20=>\x20[{{pascalCase\x20name}}])\x0a\x20\x20items:\x20{{pascalCase\x20name}}[]\x0a\x0a\x20\x20@Field(type\x20=>\x20Int)\x0a\x20\x20total:\x20number\x0a}\x0a','existsSync','updater','find','tableName','EntitySubscribers,','__metadata','/*\x20SUBSCRIBERS\x20*/\x0a\x09\x09...','pascalCaseName','@Index(\x27ix_{{snakeCase\x20name}}_0\x27,\x20({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20[{{indexColumns}}],\x20{\x20unique:\x20true\x20})','double\x20precision','utf8','createServicePath','rank','/server/service/','name','__esModule','string','/event-subscriber.ts','colType','\x20})','\x0a\x20\x20@VersionColumn({\x20default:\x201\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201','join','__decorate','/packages','\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0a\x0aimport\x20{\x0a\x20\x20HistoryActionColumn,\x0a\x20\x20HistoryActionType,\x0a\x20\x20HistoryEntityInterface,\x0a\x20\x20HistoryOriginalIdColumn\x0a}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20config\x20}\x20from\x20\x27@things-factory/env\x27\x0aimport\x20{\x20Domain,\x20ScalarObject\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0aconst\x20ORMCONFIG\x20=\x20config.get(\x27ormconfig\x27,\x20{})\x0aconst\x20DATABASE_TYPE\x20=\x20ORMCONFIG.type\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@Entity(\x27{{tableName}}_histories\x27)\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_0\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId,{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_1\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_2\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_3\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId,\x20{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}History\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}History\x20\x20implements\x20HistoryEntityInterface<{{pascalCase\x20name}}>{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a\x20\x20@HistoryOriginalIdColumn({type:\x20\x27character\x20varying\x27,\x20nullable:\x20false\x20,length:40})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20originalId!:\x20string\x0a\x0a\x20\x20@HistoryActionColumn({\x0a\x20\x20\x20\x20nullable:\x20false,\x0a\x20\x20\x20\x20type:\x0a\x20\x20\x20\x20\x20\x20DATABASE_TYPE\x20==\x20\x27postgres\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mysql\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mariadb\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27enum\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20DATABASE_TYPE\x20==\x20\x27oracle\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27varchar2\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20\x27smallint\x27,\x0a\x20\x20\x20\x20enum:\x20HistoryActionType\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20dataRevisionAction!:\x20HistoryActionType\x0a\x0a\x0a\x20\x20@Column({\x20default:\x201,\x20nullable:\x20false\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201\x0a\x0a\x20\x20@Column(\x27simple-json\x27,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20@Field(type\x20=>\x20ScalarObject,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20historyJson?:\x20any\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a','timestamp\x20without\x20time\x20zone','Resolver','createDir','JSON','Query','creator_id','writeFileSync','-mutation.ts','724000bptHOC'];a0_0x2b21=function(){return _0x179f94;};return a0_0x2b21();}let OperatoToolCreateService=class{async[a0_0x367ed2(0x1a8)](_0x115870,_0x51346a){const _0x407588=a0_0x367ed2,{domain:_0x16d915}=_0x51346a[_0x407588(0x197)],_0x46988b=await(0x0,shell_1[_0x407588(0x15d)])(resource_base_1[_0x407588(0x19a)])[_0x407588(0x1b5)]({'where':{'id':_0x115870}}),_0x109402=await(0x0,shell_1['getRepository'])(resource_base_1['EntityColumn'])[_0x407588(0x176)]({'where':{'domain':{'id':_0x16d915['id']},'entity':{'id':_0x46988b['id']}}});let {name:_0x572628='',bundle:_0x3a43f7=''}=_0x46988b||{},_0x58c4eb=this[_0x407588(0x16b)](),_0x1b4ae9=kebabCase(_0x572628);return await this[_0x407588(0x17f)](_0x58c4eb,_0x3a43f7,_0x1b4ae9),await this[_0x407588(0x1d2)](_0x58c4eb,_0x3a43f7,_0x572628,_0x1b4ae9,_0x46988b,_0x109402),!0x0;}async[a0_0x367ed2(0x1d2)](_0x1eb6fa,_0x567231,_0x401e8a,_0x164e80,_0x3b9fc8,_0x2c8e5f){const _0x37028c=a0_0x367ed2;let _0x17280e={'name':_0x164e80,'tableName':_0x3b9fc8[_0x37028c(0x177)],'pascalCaseName':startCase(camelCase(_0x401e8a))[_0x37028c(0x1d4)](/ /g,''),'camelCaseName':camelCase(_0x401e8a),'snakeCaseName':snakeCase(_0x401e8a),'pluralPascalCaseName':startCase(camelCase(plural(_0x401e8a)))[_0x37028c(0x1d4)](/ /g,''),'pluralCamelCaseName':camelCase(plural(_0x401e8a))},_0x5a68f4=_0x1eb6fa+_0x37028c(0x15f)+_0x567231+_0x37028c(0x181);[_0x37028c(0x190),_0x37028c(0x172)]['includes'](_0x3b9fc8['dataProp'])?await this['createHistoryServiceFiles'](_0x5a68f4,_0x164e80,_0x3b9fc8,_0x2c8e5f,_0x17280e):await this[_0x37028c(0x1b6)](_0x5a68f4,_0x164e80,_0x3b9fc8,_0x2c8e5f,_0x17280e);}async[a0_0x367ed2(0x1a9)](_0x22f3ab,_0x491b65,_0x2ae3c4,_0x1ce45f,_0x2b69c6){const _0x11fb65=a0_0x367ed2;await this[_0x11fb65(0x158)](_0x22f3ab+(_0x491b65+_0x11fb65(0x1ab)),serviceHistoryIndex,_0x2b69c6);let _0x303596=this[_0x11fb65(0x145)](_0x2ae3c4,_0x1ce45f);await this[_0x11fb65(0x158)](_0x22f3ab+(_0x491b65+'/'+_0x491b65+_0x11fb65(0x1b9)),_0x303596,_0x2b69c6),await this[_0x11fb65(0x158)](_0x22f3ab+(_0x491b65+'/'+_0x491b65+_0x11fb65(0x1da)),serviceQuery,_0x2b69c6),await this[_0x11fb65(0x158)](_0x22f3ab+(_0x491b65+'/'+_0x491b65+_0x11fb65(0x194)),serviceMutation,_0x2b69c6);let _0x37b98d=this[_0x11fb65(0x171)](_0x1ce45f);await this[_0x11fb65(0x158)](_0x22f3ab+(_0x491b65+'/'+_0x491b65+_0x11fb65(0x1bf)),_0x37b98d,_0x2b69c6);let _0x577b10=this[_0x11fb65(0x1ce)](_0x2ae3c4,_0x1ce45f);await this[_0x11fb65(0x158)](_0x22f3ab+(_0x491b65+'/'+_0x491b65+_0x11fb65(0x15a)),_0x577b10,_0x2b69c6);let _0x2c3ede='';'JSON'==_0x2ae3c4['dataProp']?(_0x2c3ede=_0x11fb65(0x1bd),await this[_0x11fb65(0x158)](_0x22f3ab+(_0x491b65+_0x11fb65(0x185)),serviceEntitySubscriber,_0x2b69c6)):_0x2c3ede='';let _0x1c8ff7=serviceEntitySubscriber[_0x11fb65(0x1d4)](/{{entityToJson}}/g,_0x2c3ede);await this[_0x11fb65(0x158)](_0x22f3ab+(_0x491b65+_0x11fb65(0x185)),_0x1c8ff7,_0x2b69c6),await this['writeFile'](_0x22f3ab+(_0x491b65+'/'+_0x491b65+'-history-query.ts'),serviceHistoryQuery,_0x2b69c6),await this[_0x11fb65(0x158)](_0x22f3ab+(_0x491b65+'/'+_0x491b65+_0x11fb65(0x148)),sereviceHistoryType,_0x2b69c6);let _0x1691ba=_0x22f3ab+_0x11fb65(0x143);0x0==await this['existsPath'](_0x1691ba)&&await this[_0x11fb65(0x158)](_0x1691ba,allIndex,_0x2b69c6);let _0x316925=await fs['readFileSync'](_0x1691ba,_0x11fb65(0x17e));_0x316925[_0x11fb65(0x16a)](_0x11fb65(0x1aa)+_0x2b69c6[_0x11fb65(0x182)]+'/'+_0x2b69c6[_0x11fb65(0x182)]+_0x11fb65(0x160))<0x0&&(_0x316925=_0x316925[_0x11fb65(0x1d4)](/\/\* EXPORT ENTITY TYPES \*\//,_0x11fb65(0x1b4)+_0x2b69c6[_0x11fb65(0x182)]+'/'+_0x2b69c6[_0x11fb65(0x182)]+_0x11fb65(0x160))),_0x316925[_0x11fb65(0x16a)](_0x11fb65(0x1aa)+_0x2b69c6['name']+'/'+_0x2b69c6['name']+'\x27')<0x0&&(_0x316925=_0x316925[_0x11fb65(0x1d4)](/\/\* EXPORT ENTITY TYPES \*\//,_0x11fb65(0x1b4)+_0x2b69c6['name']+'/'+_0x2b69c6[_0x11fb65(0x182)]+'\x27')),_0x316925['indexOf'](_0x11fb65(0x1ae)+_0x2b69c6[_0x11fb65(0x17b)]+'Entities,\x20resolvers\x20as\x20'+_0x2b69c6['pascalCaseName']+_0x11fb65(0x1d6)+_0x2b69c6[_0x11fb65(0x17b)]+_0x11fb65(0x1c6)+_0x2b69c6[_0x11fb65(0x182)]+'\x27')<0x0&&(_0x316925=_0x316925[_0x11fb65(0x1d4)](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,_0x11fb65(0x14e)+_0x2b69c6['pascalCaseName']+_0x11fb65(0x144)+_0x2b69c6[_0x11fb65(0x17b)]+_0x11fb65(0x1d6)+_0x2b69c6['pascalCaseName']+_0x11fb65(0x1c6)+_0x2b69c6[_0x11fb65(0x182)]+'\x27')),_0x316925[_0x11fb65(0x16a)](_0x11fb65(0x166)+_0x2b69c6['pascalCaseName']+_0x11fb65(0x1c3))<0x0&&(_0x316925=_0x316925[_0x11fb65(0x1d4)](/\/\* ENTITIES \*\//,_0x11fb65(0x19b)+_0x2b69c6[_0x11fb65(0x17b)]+_0x11fb65(0x1c3))),_0x316925[_0x11fb65(0x16a)](_0x11fb65(0x166)+_0x2b69c6[_0x11fb65(0x17b)]+_0x11fb65(0x198))<0x0&&(_0x316925=_0x316925[_0x11fb65(0x1d4)](/\/\* RESOLVER CLASSES \*\//,_0x11fb65(0x1d5)+_0x2b69c6[_0x11fb65(0x17b)]+'Resolvers,')),_0x316925[_0x11fb65(0x16a)](_0x11fb65(0x166)+_0x2b69c6[_0x11fb65(0x17b)]+_0x11fb65(0x178))<0x0&&(_0x316925=_0x316925[_0x11fb65(0x1d4)](/\/\* SUBSCRIBERS \*\//,_0x11fb65(0x17a)+_0x2b69c6[_0x11fb65(0x17b)]+_0x11fb65(0x178))),await this[_0x11fb65(0x158)](_0x1691ba,_0x316925,_0x2b69c6);}async[a0_0x367ed2(0x1b6)](_0x236109,_0x10d03d,_0x34b2fc,_0x4f52a7,_0x47fca8){const _0x8d9c06=a0_0x367ed2;await this[_0x8d9c06(0x158)](_0x236109+(_0x10d03d+_0x8d9c06(0x1ab)),serviceIndex,_0x47fca8),await this['writeFile'](_0x236109+(_0x10d03d+'/'+_0x10d03d+_0x8d9c06(0x1da)),serviceQuery,_0x47fca8),await this[_0x8d9c06(0x158)](_0x236109+(_0x10d03d+'/'+_0x10d03d+_0x8d9c06(0x194)),serviceMutation,_0x47fca8);let _0x47d976=this[_0x8d9c06(0x145)](_0x34b2fc,_0x4f52a7);await this[_0x8d9c06(0x158)](_0x236109+(_0x10d03d+'/'+_0x10d03d+'.ts'),_0x47d976,_0x47fca8);let _0x4df927=this[_0x8d9c06(0x171)](_0x4f52a7);await this[_0x8d9c06(0x158)](_0x236109+(_0x10d03d+'/'+_0x10d03d+_0x8d9c06(0x1bf)),_0x4df927,_0x47fca8);let _0x23ee2c=_0x236109+_0x8d9c06(0x143);0x0==await this[_0x8d9c06(0x1af)](_0x23ee2c)&&await this[_0x8d9c06(0x158)](_0x23ee2c,allIndex,_0x47fca8);let _0x46d7b0=await fs[_0x8d9c06(0x1c1)](_0x23ee2c,'utf8');_0x46d7b0[_0x8d9c06(0x16a)](_0x8d9c06(0x1aa)+_0x47fca8[_0x8d9c06(0x182)]+'/'+_0x47fca8[_0x8d9c06(0x182)]+'\x27')<0x0&&(_0x46d7b0=_0x46d7b0[_0x8d9c06(0x1d4)](/\/\* EXPORT ENTITY TYPES \*\//,'/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0aexport\x20*\x20from\x20\x27./'+_0x47fca8[_0x8d9c06(0x182)]+'/'+_0x47fca8[_0x8d9c06(0x182)]+'\x27')),_0x46d7b0[_0x8d9c06(0x16a)]('import\x20{\x20entities\x20as\x20'+_0x47fca8['pascalCaseName']+_0x8d9c06(0x144)+_0x47fca8[_0x8d9c06(0x17b)]+_0x8d9c06(0x1cd)+_0x47fca8[_0x8d9c06(0x182)]+'\x27')<0x0&&(_0x46d7b0=_0x46d7b0[_0x8d9c06(0x1d4)](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,_0x8d9c06(0x14e)+_0x47fca8[_0x8d9c06(0x17b)]+'Entities,\x20resolvers\x20as\x20'+_0x47fca8[_0x8d9c06(0x17b)]+_0x8d9c06(0x1cd)+_0x47fca8[_0x8d9c06(0x182)]+'\x27')),_0x46d7b0['indexOf']('...'+_0x47fca8[_0x8d9c06(0x17b)]+_0x8d9c06(0x1c3))<0x0&&(_0x46d7b0=_0x46d7b0[_0x8d9c06(0x1d4)](/\/\* ENTITIES \*\//,'/*\x20ENTITIES\x20*/\x0a\x09...'+_0x47fca8['pascalCaseName']+'Entities,')),_0x46d7b0[_0x8d9c06(0x16a)](_0x8d9c06(0x166)+_0x47fca8[_0x8d9c06(0x17b)]+_0x8d9c06(0x198))<0x0&&(_0x46d7b0=_0x46d7b0[_0x8d9c06(0x1d4)](/\/\* RESOLVER CLASSES \*\//,_0x8d9c06(0x1d5)+_0x47fca8[_0x8d9c06(0x17b)]+'Resolvers,')),await this[_0x8d9c06(0x158)](_0x23ee2c,_0x46d7b0,_0x47fca8);}[a0_0x367ed2(0x171)](_0x1dd91b){const _0x1cb890=a0_0x367ed2;let _0x4f70ca=sereviceType,_0x4a42ee=_0x1dd91b[_0x1cb890(0x1b2)](_0x4b0eb1=>{const _0x498435=_0x1cb890;if('id'==_0x4b0eb1[_0x498435(0x182)])return'';if('domain_id'==_0x4b0eb1[_0x498435(0x182)])return'';if(_0x498435(0x1b1)==_0x4b0eb1[_0x498435(0x182)])return'';if('updated_at'==_0x4b0eb1['name'])return'';if(_0x498435(0x192)==_0x4b0eb1[_0x498435(0x182)])return'';if(_0x498435(0x15b)==_0x4b0eb1[_0x498435(0x182)])return'';let _0x1191fa=this[_0x498435(0x156)](_0x4b0eb1),_0xe5227e=this[_0x498435(0x1cf)](_0x4b0eb1),_0x27349d=camelCase(_0x4b0eb1['name']);return'\x20\x20'+(_0x498435(0x167)+(0x0==_0x1191fa[_0x498435(0x1b0)]?'':_0x498435(0x1d7)+_0x1191fa+',')+_0x498435(0x1a0)+_0x4b0eb1['nullable']+_0x498435(0x187))+'\x0a\x20\x20'+(''+_0x27349d+(_0x4b0eb1['nullable']?'?':'')+':\x20'+_0xe5227e)+'\x0a';});_0x4f70ca=_0x4f70ca[_0x1cb890(0x1d4)](/{{newTypeColumns}}/g,_0x4a42ee[_0x1cb890(0x189)]('\x0a'));let _0x2d944c=_0x1dd91b[_0x1cb890(0x1b2)](_0xb05e94=>{const _0x4c8519=_0x1cb890;if('id'==_0xb05e94['name'])return'';if('domain_id'==_0xb05e94['name'])return'';if(_0x4c8519(0x1b1)==_0xb05e94[_0x4c8519(0x182)])return'';if(_0x4c8519(0x14b)==_0xb05e94['name'])return'';if(_0x4c8519(0x192)==_0xb05e94[_0x4c8519(0x182)])return'';if(_0x4c8519(0x15b)==_0xb05e94[_0x4c8519(0x182)])return'';let _0x5618fa=this[_0x4c8519(0x156)](_0xb05e94),_0x10d573=this[_0x4c8519(0x1cf)](_0xb05e94);_0xb05e94['nullable']=!0x0;let _0x4109b8=camelCase(_0xb05e94['name']);return'\x20\x20'+('@Field('+(0x0==_0x5618fa['length']?'':_0x4c8519(0x1d7)+_0x5618fa+',')+'\x20{\x20nullable:\x20'+_0xb05e94['nullable']+_0x4c8519(0x187))+_0x4c8519(0x19c)+(''+_0x4109b8+(_0xb05e94[_0x4c8519(0x1b3)]?'?':'')+':\x20'+_0x10d573)+'\x0a';});return _0x4f70ca=_0x4f70ca[_0x1cb890(0x1d4)](/{{patchTypeColumns}}/g,_0x2d944c[_0x1cb890(0x189)]('\x0a')),_0x4f70ca;}[a0_0x367ed2(0x145)](_0x1dc52e,_0x311f8a){const _0x12604d=a0_0x367ed2;let _0x2fca2a=serviceEntity,_0x262961=_0x311f8a[_0x12604d(0x16f)](function(_0x1bd94c,_0x4118b4){const _0xfe095d=_0x12604d;return _0x1bd94c['rank']-_0x4118b4[_0xfe095d(0x180)];})[_0x12604d(0x1b2)](_0x20700c=>this[_0x12604d(0x16c)](_0x20700c));[_0x12604d(0x172),'JSON'][_0x12604d(0x1ca)](_0x1dc52e['dataProp'])&&_0x262961[_0x12604d(0x14a)](_0x12604d(0x188)),_0x2fca2a=_0x2fca2a['replace'](/{{entityColumns}}/g,_0x262961[_0x12604d(0x189)]('\x0a'));let _0x2d7735='',_0x2a8193=_0x311f8a[_0x12604d(0x169)](_0x2fabf2=>_0x2fabf2[_0x12604d(0x152)]&&_0x2fabf2[_0x12604d(0x152)]>0x0)[_0x12604d(0x16f)](function(_0x401093,_0x5d821e){const _0x532640=_0x12604d;return _0x401093[_0x532640(0x152)]-_0x5d821e[_0x532640(0x152)];});if(_0x2a8193[_0x12604d(0x1b0)]>0x0){_0x2d7735=_0x12604d(0x17c);let _0x475725=_0x2a8193[_0x12604d(0x1b2)](_0xf34809=>{const _0x6bd137=_0x12604d;let _0x108797=_0xf34809[_0x6bd137(0x182)];return _0x6bd137(0x196)==_0xf34809[_0x6bd137(0x182)]&&(_0x108797=_0x6bd137(0x1b7)),_0x6bd137(0x192)==_0xf34809[_0x6bd137(0x182)]&&(_0x108797='creator'),_0x6bd137(0x15b)==_0xf34809[_0x6bd137(0x182)]&&(_0x108797=_0x6bd137(0x175)),_0x6bd137(0x1bb)+camelCase(_0x108797);});_0x2d7735=_0x2d7735[_0x12604d(0x1d4)](/{{indexColumns}}/g,_0x475725[_0x12604d(0x189)](','));}return _0x2fca2a=_0x2fca2a['replace'](/{{indexAnn}}/g,_0x2d7735),_0x2fca2a;}[a0_0x367ed2(0x1ce)](_0x55ef0e,_0x272bc9){const _0x1e38f9=a0_0x367ed2;let _0x1cbbdf=_0x1e38f9(0x190)==_0x55ef0e['dataProp']?serviceEntityHistJson:serviceEntityHistCopy,_0x548b3e=_0x272bc9['sort'](function(_0x36d3c8,_0x5a99b6){const _0x532392=_0x1e38f9;return _0x36d3c8[_0x532392(0x180)]-_0x5a99b6['rank'];})[_0x1e38f9(0x1b2)](_0x23f61e=>this[_0x1e38f9(0x16c)](_0x23f61e));return _0x1cbbdf=_0x1cbbdf[_0x1e38f9(0x1d4)](/{{entityColumns}}/g,_0x548b3e[_0x1e38f9(0x189)]('\x0a')),_0x1cbbdf;}[a0_0x367ed2(0x16c)](_0x195a27){const _0x1ae957=a0_0x367ed2;if('id'==_0x195a27[_0x1ae957(0x182)])return'';if(_0x1ae957(0x196)==_0x195a27['name'])return'';if(_0x1ae957(0x1b1)==_0x195a27['name'])return'';if(_0x1ae957(0x14b)==_0x195a27[_0x1ae957(0x182)])return'';if('creator_id'==_0x195a27[_0x1ae957(0x182)])return'';if(_0x1ae957(0x15b)==_0x195a27[_0x1ae957(0x182)])return'';let _0x534f0c=_0x195a27[_0x1ae957(0x186)];_0x1ae957(0x1d1)==_0x195a27[_0x1ae957(0x186)]&&(_0x534f0c=_0x1ae957(0x17d)),_0x1ae957(0x147)==_0x195a27['colType']&&(_0x534f0c=_0x1ae957(0x1c7)),_0x1ae957(0x184)==_0x195a27[_0x1ae957(0x186)]&&(_0x534f0c=_0x1ae957(0x14f)),_0x1ae957(0x1a2)==_0x195a27['colType']&&(_0x534f0c=_0x1ae957(0x18d));let _0x4a8a3c='';_0x1ae957(0x184)==_0x195a27[_0x1ae957(0x186)]&&(_0x4a8a3c=_0x195a27[_0x1ae957(0x1cb)]);let _0x4bf1cb=this[_0x1ae957(0x156)](_0x195a27),_0x33b7a8=this['getColTxtType'](_0x195a27),_0x167792=camelCase(_0x195a27[_0x1ae957(0x182)]);return'\x20\x20'+(_0x1ae957(0x1ac)+_0x195a27[_0x1ae957(0x182)]+_0x1ae957(0x159)+_0x534f0c+_0x1ae957(0x16e)+_0x195a27[_0x1ae957(0x1b3)]+'\x20'+(0x0==_0x4a8a3c[_0x1ae957(0x1b0)]?'':',length:'+_0x4a8a3c)+_0x1ae957(0x187))+_0x1ae957(0x19c)+(_0x1ae957(0x167)+(0x0==_0x4bf1cb[_0x1ae957(0x1b0)]?'':'type\x20=>'+_0x4bf1cb+',')+_0x1ae957(0x1a0)+_0x195a27[_0x1ae957(0x1b3)]+_0x1ae957(0x187))+'\x0a\x20\x20'+(''+_0x167792+(_0x195a27['nullable']?'?':'')+':\x20'+_0x33b7a8)+'\x0a';}[a0_0x367ed2(0x156)](_0x2f50bf){const _0x1a9264=a0_0x367ed2;let _0x4d50e8='';return _0x1a9264(0x1d1)==_0x2f50bf[_0x1a9264(0x186)]&&(_0x4d50e8=_0x1a9264(0x153)),_0x1a9264(0x1be)==_0x2f50bf[_0x1a9264(0x186)]&&(_0x4d50e8='Float'),_0x1a9264(0x147)==_0x2f50bf['colType']&&(_0x4d50e8=_0x1a9264(0x15e)),'integer'==_0x2f50bf[_0x1a9264(0x186)]&&(_0x4d50e8=_0x1a9264(0x15e)),_0x4d50e8;}['getColTxtType'](_0x277019){const _0x2ee794=a0_0x367ed2;let _0x5aa98a=_0x277019[_0x2ee794(0x186)];return _0x2ee794(0x19e)==_0x277019[_0x2ee794(0x186)]&&(_0x5aa98a=_0x2ee794(0x1a7)),'double'==_0x277019[_0x2ee794(0x186)]&&(_0x5aa98a='number'),_0x2ee794(0x1be)==_0x277019[_0x2ee794(0x186)]&&(_0x5aa98a=_0x2ee794(0x1a7)),_0x2ee794(0x1a3)==_0x277019[_0x2ee794(0x186)]&&(_0x5aa98a=_0x2ee794(0x1a7)),_0x2ee794(0x147)==_0x277019[_0x2ee794(0x186)]&&(_0x5aa98a=_0x2ee794(0x1a7)),'datetime'==_0x277019[_0x2ee794(0x186)]&&(_0x5aa98a='Date'),_0x2ee794(0x151)==_0x277019[_0x2ee794(0x186)]&&(_0x5aa98a=_0x2ee794(0x19d)),_0x2ee794(0x1c0)==_0x277019['colType']&&(_0x5aa98a=_0x2ee794(0x184)),_0x5aa98a;}async['writeFile'](_0x588289,_0x147d4c,_0x219635){const _0x1e941c=a0_0x367ed2;await fs[_0x1e941c(0x193)](_0x588289,this[_0x1e941c(0x149)](_0x147d4c,_0x219635),_0x1e941c(0x17e));}[a0_0x367ed2(0x149)](_0xa73210,_0x2677ce){const _0x19755f=a0_0x367ed2;return _0xa73210[_0x19755f(0x1d4)](/{{pascalCase name}}/g,_0x2677ce[_0x19755f(0x17b)])[_0x19755f(0x1d4)](/{{camelCase name}}/g,_0x2677ce[_0x19755f(0x15c)])['replace'](/{{snakeCase name}}/g,_0x2677ce[_0x19755f(0x155)])[_0x19755f(0x1d4)](/{{pluralPascalCase name}}/g,_0x2677ce[_0x19755f(0x150)])[_0x19755f(0x1d4)](/{{pluralCamelCase name}}/g,_0x2677ce['pluralCamelCaseName'])[_0x19755f(0x1d4)](/{{tableName}}/g,_0x2677ce['tableName'])[_0x19755f(0x1d4)](/{{name}}/g,_0x2677ce[_0x19755f(0x182)]);}async['createServicePath'](_0x11159a,_0x3c5e8e,_0x390ad4){const _0x4af9c4=a0_0x367ed2;let _0x23990c=_0x11159a+_0x4af9c4(0x18b);await this[_0x4af9c4(0x18f)](_0x23990c),_0x23990c=_0x23990c+'/'+_0x3c5e8e,await this[_0x4af9c4(0x18f)](_0x23990c),_0x23990c+=_0x4af9c4(0x1a1),await this[_0x4af9c4(0x18f)](_0x23990c),_0x23990c+='/service',await this[_0x4af9c4(0x18f)](_0x23990c),_0x23990c=_0x23990c+'/'+_0x390ad4,await this['createDir'](_0x23990c);}[a0_0x367ed2(0x16b)](){const _0x3c8135=a0_0x367ed2;let _0x5992c7=process[_0x3c8135(0x14c)][_0x3c8135(0x1a6)]['split']('/'),_0x48579f=[];for(let _0x4c836a=0x0;_0x4c836a<_0x5992c7[_0x3c8135(0x1b0)]&&_0x3c8135(0x1d3)!=_0x5992c7[_0x4c836a];_0x4c836a++)_0x48579f['push'](_0x5992c7[_0x4c836a]);return _0x48579f['join']('/');}async['createDir'](_0x3c11fc){0x0==await this['existsPath'](_0x3c11fc)&&fs['mkdirSync'](_0x3c11fc);}async[a0_0x367ed2(0x1af)](_0xf339e8){const _0x5c3465=a0_0x367ed2;return await fs[_0x5c3465(0x174)](_0xf339e8);}};tslib_1['__decorate']([(0x0,type_graphql_1[a0_0x367ed2(0x191)])(_0x54c6c0=>Boolean,{'description':a0_0x367ed2(0x157)}),tslib_1['__param'](0x0,(0x0,type_graphql_1['Arg'])('id')),tslib_1[a0_0x367ed2(0x163)](0x1,(0x0,type_graphql_1['Ctx'])()),tslib_1[a0_0x367ed2(0x179)]('design:type',Function),tslib_1[a0_0x367ed2(0x179)](a0_0x367ed2(0x16d),[String,Object]),tslib_1[a0_0x367ed2(0x179)](a0_0x367ed2(0x1d9),Promise)],OperatoToolCreateService['prototype'],a0_0x367ed2(0x1a8),null),OperatoToolCreateService=tslib_1[a0_0x367ed2(0x18a)]([(0x0,type_graphql_1[a0_0x367ed2(0x18e)])()],OperatoToolCreateService),exports[a0_0x367ed2(0x1c4)]=OperatoToolCreateService;const allIndex='\x0a/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0a\x0a/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0a\x0aexport\x20const\x20entities\x20=\x20[\x20\x20\x0a\x20\x20/*\x20ENTITIES\x20*/\x0a]\x20\x0a\x0a\x0aexport\x20const\x20schema\x20=\x20{\x0a\x20\x20resolverClasses:\x20[\x0a\x20\x20\x20\x20/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x20\x20]\x20\x0a}\x0a\x0aexport\x20const\x20subscribers\x20=\x20[\x0a\x20\x20/*\x20SUBSCRIBERS\x20*/\x0a]\x0a',serviceIndex=a0_0x367ed2(0x161),serviceHistoryIndex=a0_0x367ed2(0x1cc),serviceQuery=a0_0x367ed2(0x1bc),serviceHistoryQuery=a0_0x367ed2(0x1d8),serviceMutation=a0_0x367ed2(0x165),sereviceType=a0_0x367ed2(0x173),sereviceHistoryType=a0_0x367ed2(0x19f),serviceEntity='\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20Domain\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0a@Entity(\x27{{tableName}}\x27)\x0a{{indexAnn}}\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}\x20{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a{{entityColumns}}\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a',serviceEntityHistCopy=a0_0x367ed2(0x14d),serviceEntityHistJson=a0_0x367ed2(0x18c),serviceEntitySubscriber=a0_0x367ed2(0x1a5);
|
|
1
|
+
'use strict';function a0_0x224c(_0x8c6a47,_0x7750bb){const _0x1079c4=a0_0x1079();return a0_0x224c=function(_0x224cd6,_0x5d1617){_0x224cd6=_0x224cd6-0xb3;let _0x45a9c5=_0x1079c4[_0x224cd6];return _0x45a9c5;},a0_0x224c(_0x8c6a47,_0x7750bb);}const a0_0x36a4a4=a0_0x224c;(function(_0x3b98a4,_0x139fa9){const _0x4b1e9c=a0_0x224c,_0x1825a1=_0x3b98a4();while(!![]){try{const _0x14edcf=-parseInt(_0x4b1e9c(0xd4))/0x1+parseInt(_0x4b1e9c(0xe6))/0x2+-parseInt(_0x4b1e9c(0xe7))/0x3+-parseInt(_0x4b1e9c(0xe5))/0x4+-parseInt(_0x4b1e9c(0xf4))/0x5*(parseInt(_0x4b1e9c(0xf3))/0x6)+-parseInt(_0x4b1e9c(0x13d))/0x7+parseInt(_0x4b1e9c(0xf6))/0x8;if(_0x14edcf===_0x139fa9)break;else _0x1825a1['push'](_0x1825a1['shift']());}catch(_0x44c91b){_0x1825a1['push'](_0x1825a1['shift']());}}}(a0_0x1079,0xe3994));function a0_0x1079(){const _0x4aa13b=['colType','/server','design:returntype','\x0aimport\x20{\x20EventSubscriber\x20}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20HistoryEntitySubscriber\x20}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20getRepository\x20}\x20from\x20\x27@things-factory/shell\x27\x0a\x0a@EventSubscriber()\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryEntitySubscriber\x20extends\x20HistoryEntitySubscriber<{{pascalCase\x20name}},{{pascalCase\x20name}}History>\x20{\x0a\x20\x20public\x20get\x20entity()\x20{\x0a\x20\x20\x20\x20return\x20{{pascalCase\x20name}}\x0a\x20\x20}\x0a\x0a\x20\x20public\x20get\x20historyEntity()\x20{\x0a\x20\x20\x20\x20return\x20{{pascalCase\x20name}}History\x0a\x20\x20}\x0a\x0a\x20\x20{{entityToJson}}\x0a\x0a\x20\x20async\x20beforeRemoveHistory(history:{{pascalCase\x20name}}History,entity:{{pascalCase\x20name}}){\x0a\x20\x20\x20\x20let\x20repo\x20=\x20getRepository({{pascalCase\x20name}}History);\x0a\x20\x20\x20\x20const\x20revNo\x20=\x20await\x20repo.createQueryBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.select(\x27max(data_revision_no)\x27,\x20\x27rev_no\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.where(\x27domain_id\x20=\x20:domainId\x27,\x20{\x20domainId:\x20entity.domain.id\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.andWhere(\x27original_id\x20=\x20:originalId\x27,\x20{\x20originalId:\x20entity.id\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.getRawOne()\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20history.dataRevisionNo\x20=\x20revNo\x20?\x20revNo.rev_no\x20+\x201\x20:\x201;\x0a\x20\x20\x20\x20return\x20history;\x0a\x20\x20}\x0a}\x0a','18XiGZSa','541690etmGPJ','__decorate','23336120Dkhzzk','/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x09\x09...','\x0aimport\x20{\x20Resolver,\x20Query,\x20FieldResolver,\x20Root,\x20Args,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20Domain,\x20ListParam,\x20convertListParams,\x20getRepository,\x20getQueryBuilderFromListParams\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryList\x20}\x20from\x20\x27./{{name}}-history-type\x27\x0a\x0a@Resolver({{pascalCase\x20name}}History)\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryQuery\x20{\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}History,\x20{\x20description:\x20\x27To\x20fetch\x20a\x20{{pascalCase\x20name}}History\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}History(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}History>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20return\x20await\x20getRepository({{pascalCase\x20name}}History).findOne({\x0a\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20}\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}HistoryList,\x20{\x20description:\x20\x27To\x20fetch\x20multiple\x20{{pluralPascalCase\x20name}}History\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}Histories(@Args()\x20params:\x20ListParam,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}HistoryList>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20queryBuilder\x20=\x20getQueryBuilderFromListParams({\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20params,\x0a\x20\x20\x20\x20\x20\x20repository:\x20await\x20getRepository({{pascalCase\x20name}}History)\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20const\x20[items,\x20total]\x20=\x20await\x20queryBuilder.getManyAndCount()\x0a\x0a\x20\x20\x20\x20return\x20{\x20items,\x20total\x20}\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20Domain)\x0a\x20\x20async\x20domain(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<Domain>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(Domain).findOneBy({id:{{camelCase\x20name}}History.domainId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20updater(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}History.updaterId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20creator(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}History.creatorId})\x0a\x20\x20}\x0a}\x0a','.ts','lodash','\x20})','utf8','/*\x20ENTITIES\x20*/\x0a\x09...','\x0a/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0a\x0a/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0a\x0aexport\x20const\x20entities\x20=\x20[\x20\x20\x0a\x20\x20/*\x20ENTITIES\x20*/\x0a]\x20\x0a\x0a\x0aexport\x20const\x20schema\x20=\x20{\x0a\x20\x20resolverClasses:\x20[\x0a\x20\x20\x20\x20/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x20\x20]\x20\x0a}\x0a\x0aexport\x20const\x20subscribers\x20=\x20[\x0a\x20\x20/*\x20SUBSCRIBERS\x20*/\x0a]\x0a','Resolvers,\x20subscribers\x20as\x20','double','Entity','bigint','Entities,','replace','double\x20precision','\x0a\x20\x20','getRepository','\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0a\x0aimport\x20{\x0a\x20\x20HistoryActionColumn,\x0a\x20\x20HistoryActionType,\x0a\x20\x20HistoryEntityInterface,\x0a\x20\x20HistoryOriginalIdColumn\x0a}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20config\x20}\x20from\x20\x27@things-factory/env\x27\x0aimport\x20{\x20Domain,\x20ScalarObject\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0aconst\x20ORMCONFIG\x20=\x20config.get(\x27ormconfig\x27,\x20{})\x0aconst\x20DATABASE_TYPE\x20=\x20ORMCONFIG.type\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@Entity(\x27{{tableName}}_histories\x27)\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_0\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId,{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_1\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_2\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_3\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId,\x20{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}History\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}History\x20\x20implements\x20HistoryEntityInterface<{{pascalCase\x20name}}>{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a\x20\x20@HistoryOriginalIdColumn({type:\x20\x27character\x20varying\x27,\x20nullable:\x20false\x20,length:40})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20originalId!:\x20string\x0a\x0a\x20\x20@HistoryActionColumn({\x0a\x20\x20\x20\x20nullable:\x20false,\x0a\x20\x20\x20\x20type:\x0a\x20\x20\x20\x20\x20\x20DATABASE_TYPE\x20==\x20\x27postgres\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mysql\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mariadb\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27enum\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20DATABASE_TYPE\x20==\x20\x27oracle\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27varchar2\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20\x27smallint\x27,\x0a\x20\x20\x20\x20enum:\x20HistoryActionType\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20dataRevisionAction!:\x20HistoryActionType\x0a\x0a\x0a\x20\x20@Column({\x20default:\x201,\x20nullable:\x20false\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201\x0a\x0a\x20\x20@Column(\x27simple-json\x27,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20@Field(type\x20=>\x20ScalarObject,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20historyJson?:\x20any\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a','string','createHistoryServiceFiles','/server/service/','Operato\x20Tool\x20Create\x20Service','/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0aexport\x20*\x20from\x20\x27./','...','updater','toolCreateService','__metadata','find','pluralCamelCaseName','snakeCaseName','writeFileSync','float','readFileSync','join','Resolvers,','EntitySubscribers,','packages','createServicePath','existsPath','OperatoToolCreateService','creator_id','updated_at','-query.ts','sort','timestamp\x20without\x20time\x20zone','camelCaseName','prototype','Ctx','getProjectRootPath','\x27,\x20type:\x20\x27','\x0aimport\x20{\x20Resolver,\x20Query,\x20FieldResolver,\x20Root,\x20Args,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20Domain,\x20ListParam,\x20convertListParams,\x20getRepository,\x20getQueryBuilderFromListParams\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}List\x20}\x20from\x20\x27./{{name}}-type\x27\x0a\x0a@Resolver({{pascalCase\x20name}})\x0aexport\x20class\x20{{pascalCase\x20name}}Query\x20{\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20fetch\x20a\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20return\x20await\x20getRepository({{pascalCase\x20name}}).findOne({\x0a\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20}\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}List,\x20{\x20description:\x20\x27To\x20fetch\x20multiple\x20{{pluralPascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20{{pluralCamelCase\x20name}}(@Args()\x20params:\x20ListParam,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}List>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20queryBuilder\x20=\x20getQueryBuilderFromListParams({\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20params,\x0a\x20\x20\x20\x20\x20\x20repository:\x20await\x20getRepository({{pascalCase\x20name}})\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20const\x20convertedParams\x20=\x20convertListParams(params,\x20domain.id)\x0a\x20\x20\x20\x20const\x20[items,\x20total]\x20=\x20await\x20queryBuilder.getManyAndCount()\x0a\x0a\x20\x20\x20\x20return\x20{\x20items,\x20total\x20}\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20Domain)\x0a\x20\x20async\x20domain(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<Domain>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(Domain).findOneBy({id:{{camelCase\x20name}}.domainId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20updater(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}.updaterId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20creator(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}.creatorId})\x0a\x20\x20}\x0a}\x0a','type\x20=>','push','import\x20{\x20entities\x20as\x20','length','pascalCaseName','createEntityText','writeFile','updater_id','\x0a\x20\x20@VersionColumn({\x20default:\x201\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201','createDir','createServiceFiles','\x0aimport\x20{\x20Resolver,\x20Mutation,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20In\x20}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20New{{pascalCase\x20name}},\x20{{pascalCase\x20name}}Patch\x20}\x20from\x20\x27./{{name}}-type\x27\x0aimport\x20{\x20getRepository\x20}\x20from\x20\x27@things-factory/shell\x27\x0a\x0a@Resolver({{pascalCase\x20name}})\x0aexport\x20class\x20{{pascalCase\x20name}}Mutation\x20{\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20create\x20new\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20create{{pascalCase\x20name}}(@Arg(\x27{{camelCase\x20name}}\x27)\x20{{camelCase\x20name}}:\x20New{{pascalCase\x20name}},\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20return\x20await\x20tx.getRepository({{pascalCase\x20name}}).save({\x0a\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20creator:\x20user,\x0a\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20modify\x20{{pascalCase\x20name}}\x20information\x27\x20})\x0a\x20\x20async\x20update{{pascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27id\x27)\x20id:\x20string,\x0a\x20\x20\x20\x20@Arg(\x27patch\x27)\x20patch:\x20{{pascalCase\x20name}}Patch,\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20repository\x20=\x20tx.getRepository({{pascalCase\x20name}})\x0a\x20\x20\x20\x20const\x20{{camelCase\x20name}}\x20=\x20await\x20repository.findOne(\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20relations:\x20[\x27domain\x27,\x20\x27updater\x27,\x20\x27creator\x27]\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20)\x0a\x0a\x20\x20\x20\x20return\x20await\x20repository.save({\x0a\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20...patch,\x0a\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20[{{pascalCase\x20name}}],\x20{\x20description:\x20\x22To\x20modify\x20multiple\x20{{pluralPascalCase\x20name}}\x27\x20information\x22\x20})\x0a\x20\x20async\x20updateMultiple{{pascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27patches\x27,\x20type\x20=>\x20[{{pascalCase\x20name}}Patch])\x20patches:\x20{{pascalCase\x20name}}Patch[],\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<{{pascalCase\x20name}}[]>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20let\x20results\x20=\x20[]\x0a\x20\x20\x20\x20const\x20_createRecords\x20=\x20patches.filter((patch:\x20any)\x20=>\x20patch.cuFlag.toUpperCase()\x20===\x20\x27+\x27)\x0a\x20\x20\x20\x20const\x20_updateRecords\x20=\x20patches.filter((patch:\x20any)\x20=>\x20patch.cuFlag.toUpperCase()\x20===\x20\x27M\x27)\x0a\x20\x20\x20\x20const\x20{{camelCase\x20name}}Repo\x20=\x20tx.getRepository({{pascalCase\x20name}})\x0a\x0a\x20\x20\x20\x20if\x20(_createRecords.length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(let\x20i\x20=\x200;\x20i\x20<\x20_createRecords.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20newRecord\x20=\x20_createRecords[i]\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20result\x20=\x20await\x20{{camelCase\x20name}}Repo.save({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...newRecord,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20creator:\x20user,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20results.push({\x20...result,\x20cuFlag:\x20\x27+\x27\x20})\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20if\x20(_updateRecords.length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(let\x20i\x20=\x200;\x20i\x20<\x20_updateRecords.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20updRecord\x20=\x20_updateRecords[i]\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20{{camelCase\x20name}}\x20=\x20await\x20{{camelCase\x20name}}Repo.findOne({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id:updRecord.id\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20relations:\x20[\x27domain\x27,\x20\x27updater\x27,\x20\x27creator\x27]\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20result\x20=\x20await\x20{{camelCase\x20name}}Repo.save({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...updRecord,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20results.push({\x20...result,\x20cuFlag:\x20\x27M\x27\x20})\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20return\x20results\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20Boolean,\x20{\x20description:\x20\x27To\x20delete\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20delete{{pascalCase\x20name}}(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<boolean>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20tx,\x20user\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20await\x20tx.getRepository({{pascalCase\x20name}}).remove({\x20domain,\x20id,\x20updater:user\x20})\x0a\x20\x20\x20\x20return\x20true\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20Boolean,\x20{\x20description:\x20\x27To\x20delete\x20multiple\x20{{camelCase\x20name}}s\x27\x20})\x0a\x20\x20async\x20delete{{pluralPascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27ids\x27,\x20type\x20=>\x20[String])\x20ids:\x20string[],\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<boolean>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20tx,\x20user\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20let\x20delEntitis\x20=\x20ids.map(id=>{\x0a\x20\x20\x20\x20\x20\x20return\x20{domain,id,updater:user}\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20await\x20tx.getRepository({{pascalCase\x20name}}).remove(delEntitis)\x0a\x0a\x20\x20\x20\x20return\x20true\x0a\x20\x20}\x0a}\x0a','\x20{\x20nullable:\x20','/*\x20SUBSCRIBERS\x20*/\x0a\x09\x09...','@Column({name:\x27','/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0aimport\x20{\x20entities\x20as\x20','env','\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Query\x20}\x20from\x20\x27./{{name}}-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Mutation\x20}\x20from\x20\x27./{{name}}-mutation\x27\x0a\x0aexport\x20const\x20entities\x20=\x20[{{pascalCase\x20name}}]\x0aexport\x20const\x20resolvers\x20=\x20[{{pascalCase\x20name}}Query,\x20{{pascalCase\x20name}}Mutation]\x0a','replaceNamesMap','8779085EYZmiK','rank','pluralPascalCaseName','\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0a\x0aimport\x20{\x0a\x20\x20HistoryActionColumn,\x0a\x20\x20HistoryActionType,\x0a\x20\x20HistoryEntityInterface,\x0a\x20\x20HistoryOriginalIdColumn\x0a}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20config\x20}\x20from\x20\x27@things-factory/env\x27\x0aimport\x20{\x20Domain,\x20ScalarObject\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0aconst\x20ORMCONFIG\x20=\x20config.get(\x27ormconfig\x27,\x20{})\x0aconst\x20DATABASE_TYPE\x20=\x20ORMCONFIG.type\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@Entity(\x27{{tableName}}_histories\x27)\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_0\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId,{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_1\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_2\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_3\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId,\x20{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}History\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}History\x20\x20implements\x20HistoryEntityInterface<{{pascalCase\x20name}}>{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a\x20\x20@HistoryOriginalIdColumn({type:\x20\x27character\x20varying\x27,\x20nullable:\x20false\x20,length:40})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20originalId!:\x20string\x0a\x0a\x0a\x20\x20@HistoryActionColumn({\x0a\x20\x20\x20\x20nullable:\x20false,\x0a\x20\x20\x20\x20type:\x0a\x20\x20\x20\x20\x20\x20DATABASE_TYPE\x20==\x20\x27postgres\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mysql\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mariadb\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27enum\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20DATABASE_TYPE\x20==\x20\x27oracle\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27varchar2\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20\x27smallint\x27,\x0a\x20\x20\x20\x20enum:\x20HistoryActionType\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20dataRevisionAction!:\x20HistoryActionType\x0a\x0a\x20\x20@Column({\x20default:\x201,\x20nullable:\x20false\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201\x0a\x0a{{entityColumns}}\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a','@Index(\x27ix_{{snakeCase\x20name}}_0\x27,\x20({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20[{{indexColumns}}],\x20{\x20unique:\x20true\x20})','/packages','-type.ts','existsSync','__esModule','text','Date','indexOf','findOne','/packages/','Entities,\x20resolvers\x20as\x20','getColTxtType','getFieldType','/index.ts','-mutation.ts','\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Query\x20}\x20from\x20\x27./{{name}}-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryQuery\x20}\x20from\x20\x27./{{name}}-history-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Mutation\x20}\x20from\x20\x27./{{name}}-mutation\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryEntitySubscriber\x20}\x20from\x20\x27./event-subscriber\x27\x0a\x0aexport\x20const\x20entities\x20=\x20[{{pascalCase\x20name}},\x20{{pascalCase\x20name}}History]\x0aexport\x20const\x20resolvers\x20=\x20[{{pascalCase\x20name}}Query,\x20{{pascalCase\x20name}}HistoryQuery,\x20{{pascalCase\x20name}}Mutation]\x0aexport\x20const\x20subscribers\x20=\x20[{{pascalCase\x20name}}HistoryEntitySubscriber]\x0a\x0a','EntitySubscribers\x20}\x20from\x20\x27./','export\x20*\x20from\x20\x27./','datetime','JSON','map','columnToEntityColumn','pluralize','/service','__param','uniqRank','design:type','created_at','tableName','dataProp','@things-factory/resource-base','\x0aimport\x20{\x20ObjectType,\x20Field,\x20InputType,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@InputType()\x0aexport\x20class\x20New{{pascalCase\x20name}}\x20{\x0a{{newTypeColumns}}\x0a}\x0a\x0a@InputType()\x0aexport\x20class\x20{{pascalCase\x20name}}Patch\x20{\x0a\x20\x20@Field(type\x20=>\x20ID,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20id?:\x20string\x0a\x0a{{patchTypeColumns}}\x0a\x0a\x20\x20@Field()\x0a\x20\x20cuFlag:\x20string\x0a}\x0a\x0a@ObjectType()\x0aexport\x20class\x20{{pascalCase\x20name}}List\x20{\x0a\x20\x20@Field(type\x20=>\x20[{{pascalCase\x20name}}])\x0a\x20\x20items:\x20{{pascalCase\x20name}}[]\x0a\x0a\x20\x20@Field(type\x20=>\x20Int)\x0a\x20\x20total:\x20number\x0a}\x0a','long','domain_id','91765rsNSTd','defineProperty','mkdirSync','COPY','number','createTypeText','Float','PWD','index.ts','name','Arg','-history\x27','state','\x27,\x20nullable:\x20','decimal','tslib','-history.ts','5876128KLiGbV','2806854Ypiebj','744696nDxFNI','Int','createNoHistoryServiceFiels','@Field(','nullable','character\x20varying','/event-subscriber.ts','Resolvers\x20}\x20from\x20\x27./'];a0_0x1079=function(){return _0x4aa13b;};return a0_0x1079();}Object[a0_0x36a4a4(0xd5)](exports,a0_0x36a4a4(0xb6),{'value':!0x0}),exports[a0_0x36a4a4(0x11e)]=void 0x0;const tslib_1=require(a0_0x36a4a4(0xe3)),type_graphql_1=require('type-graphql'),shell_1=require('@things-factory/shell'),resource_base_1=require(a0_0x36a4a4(0xd0)),{camelCase:camelCase,startCase:startCase,snakeCase:snakeCase,kebabCase:kebabCase}=require(a0_0x36a4a4(0xfa)),{plural:plural}=require(a0_0x36a4a4(0xc8)),fs=require('fs');let OperatoToolCreateService=class{async[a0_0x36a4a4(0x110)](_0x593076,_0x2f0e12){const _0x239cd1=a0_0x36a4a4,{domain:_0x20357c}=_0x2f0e12[_0x239cd1(0xe0)],_0x38f01c=await(0x0,shell_1[_0x239cd1(0x107)])(resource_base_1[_0x239cd1(0x101)])[_0x239cd1(0xba)]({'where':{'id':_0x593076}}),_0xb0f946=await(0x0,shell_1[_0x239cd1(0x107)])(resource_base_1['EntityColumn'])[_0x239cd1(0x112)]({'where':{'domain':{'id':_0x20357c['id']},'entity':{'id':_0x38f01c['id']}}});let {name:_0x4a2bfd='',bundle:_0x175bb0=''}=_0x38f01c||{},_0x36942b=this[_0x239cd1(0x127)](),_0x5b7261=kebabCase(_0x4a2bfd);return await this[_0x239cd1(0x11c)](_0x36942b,_0x175bb0,_0x5b7261),await this[_0x239cd1(0x134)](_0x36942b,_0x175bb0,_0x4a2bfd,_0x5b7261,_0x38f01c,_0xb0f946),!0x0;}async['createServiceFiles'](_0x179873,_0x3cd5b4,_0x291427,_0xe4c820,_0x4ed6d1,_0x4e344c){const _0xe7eb74=a0_0x36a4a4;let _0x4f6272={'name':_0xe4c820,'tableName':_0x4ed6d1['tableName'],'pascalCaseName':startCase(camelCase(_0x291427))[_0xe7eb74(0x104)](/ /g,''),'camelCaseName':camelCase(_0x291427),'snakeCaseName':snakeCase(_0x291427),'pluralPascalCaseName':startCase(camelCase(plural(_0x291427)))['replace'](/ /g,''),'pluralCamelCaseName':camelCase(plural(_0x291427))},_0x2bbb7f=_0x179873+_0xe7eb74(0xbb)+_0x3cd5b4+_0xe7eb74(0x10b);['JSON',_0xe7eb74(0xd7)]['includes'](_0x4ed6d1[_0xe7eb74(0xcf)])?await this[_0xe7eb74(0x10a)](_0x2bbb7f,_0xe4c820,_0x4ed6d1,_0x4e344c,_0x4f6272):await this[_0xe7eb74(0xe9)](_0x2bbb7f,_0xe4c820,_0x4ed6d1,_0x4e344c,_0x4f6272);}async['createHistoryServiceFiles'](_0x29a357,_0x1ea5d4,_0x6d7899,_0x8651bb,_0x400d55){const _0x222bb9=a0_0x36a4a4;await this[_0x222bb9(0x130)](_0x29a357+(_0x1ea5d4+_0x222bb9(0xbf)),serviceHistoryIndex,_0x400d55);let _0x23938c=this['createEntityText'](_0x6d7899,_0x8651bb);await this['writeFile'](_0x29a357+(_0x1ea5d4+'/'+_0x1ea5d4+_0x222bb9(0xf9)),_0x23938c,_0x400d55),await this[_0x222bb9(0x130)](_0x29a357+(_0x1ea5d4+'/'+_0x1ea5d4+_0x222bb9(0x121)),serviceQuery,_0x400d55),await this[_0x222bb9(0x130)](_0x29a357+(_0x1ea5d4+'/'+_0x1ea5d4+_0x222bb9(0xc0)),serviceMutation,_0x400d55);let _0xf9be5f=this['createTypeText'](_0x8651bb);await this[_0x222bb9(0x130)](_0x29a357+(_0x1ea5d4+'/'+_0x1ea5d4+_0x222bb9(0xb4)),_0xf9be5f,_0x400d55);let _0x587772=this['createHistoryEntityText'](_0x6d7899,_0x8651bb);await this[_0x222bb9(0x130)](_0x29a357+(_0x1ea5d4+'/'+_0x1ea5d4+_0x222bb9(0xe4)),_0x587772,_0x400d55);let _0x274950='';_0x222bb9(0xc5)==_0x6d7899[_0x222bb9(0xcf)]?(_0x274950='\x0a\x20\x20public\x20createHistoryEntity(manager,\x20entity)\x20{\x0a\x20\x20\x20\x20let\x20history\x20=\x20manager.create(this.historyEntity,\x20entity);\x0a\x20\x20\x20\x20history.historyJson\x20=\x20JSON.stringify(entity);\x0a\x20\x20\x20\x20return\x20history;\x0a\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20',await this['writeFile'](_0x29a357+(_0x1ea5d4+'/event-subscriber.ts'),serviceEntitySubscriber,_0x400d55)):_0x274950='';let _0x11e2a7=serviceEntitySubscriber[_0x222bb9(0x104)](/{{entityToJson}}/g,_0x274950);await this['writeFile'](_0x29a357+(_0x1ea5d4+_0x222bb9(0xed)),_0x11e2a7,_0x400d55),await this['writeFile'](_0x29a357+(_0x1ea5d4+'/'+_0x1ea5d4+'-history-query.ts'),serviceHistoryQuery,_0x400d55),await this['writeFile'](_0x29a357+(_0x1ea5d4+'/'+_0x1ea5d4+'-history-type.ts'),sereviceHistoryType,_0x400d55);let _0x4d9456=_0x29a357+'index.ts';0x0==await this[_0x222bb9(0x11d)](_0x4d9456)&&await this['writeFile'](_0x4d9456,allIndex,_0x400d55);let _0x437250=await fs[_0x222bb9(0x117)](_0x4d9456,_0x222bb9(0xfc));_0x437250[_0x222bb9(0xb9)](_0x222bb9(0xc3)+_0x400d55[_0x222bb9(0xdd)]+'/'+_0x400d55[_0x222bb9(0xdd)]+_0x222bb9(0xdf))<0x0&&(_0x437250=_0x437250[_0x222bb9(0x104)](/\/\* EXPORT ENTITY TYPES \*\//,_0x222bb9(0x10d)+_0x400d55[_0x222bb9(0xdd)]+'/'+_0x400d55[_0x222bb9(0xdd)]+'-history\x27')),_0x437250[_0x222bb9(0xb9)](_0x222bb9(0xc3)+_0x400d55[_0x222bb9(0xdd)]+'/'+_0x400d55['name']+'\x27')<0x0&&(_0x437250=_0x437250[_0x222bb9(0x104)](/\/\* EXPORT ENTITY TYPES \*\//,'/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0aexport\x20*\x20from\x20\x27./'+_0x400d55[_0x222bb9(0xdd)]+'/'+_0x400d55[_0x222bb9(0xdd)]+'\x27')),_0x437250['indexOf'](_0x222bb9(0x12c)+_0x400d55[_0x222bb9(0x12e)]+_0x222bb9(0xbc)+_0x400d55[_0x222bb9(0x12e)]+_0x222bb9(0xff)+_0x400d55[_0x222bb9(0x12e)]+_0x222bb9(0xc2)+_0x400d55[_0x222bb9(0xdd)]+'\x27')<0x0&&(_0x437250=_0x437250[_0x222bb9(0x104)](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,_0x222bb9(0x139)+_0x400d55['pascalCaseName']+_0x222bb9(0xbc)+_0x400d55[_0x222bb9(0x12e)]+_0x222bb9(0xff)+_0x400d55['pascalCaseName']+_0x222bb9(0xc2)+_0x400d55['name']+'\x27')),_0x437250[_0x222bb9(0xb9)](_0x222bb9(0x10e)+_0x400d55['pascalCaseName']+'Entities,')<0x0&&(_0x437250=_0x437250['replace'](/\/\* ENTITIES \*\//,_0x222bb9(0xfd)+_0x400d55[_0x222bb9(0x12e)]+_0x222bb9(0x103))),_0x437250['indexOf'](_0x222bb9(0x10e)+_0x400d55[_0x222bb9(0x12e)]+_0x222bb9(0x119))<0x0&&(_0x437250=_0x437250[_0x222bb9(0x104)](/\/\* RESOLVER CLASSES \*\//,_0x222bb9(0xf7)+_0x400d55['pascalCaseName']+'Resolvers,')),_0x437250['indexOf'](_0x222bb9(0x10e)+_0x400d55[_0x222bb9(0x12e)]+'EntitySubscribers,')<0x0&&(_0x437250=_0x437250[_0x222bb9(0x104)](/\/\* SUBSCRIBERS \*\//,_0x222bb9(0x137)+_0x400d55[_0x222bb9(0x12e)]+_0x222bb9(0x11a))),await this[_0x222bb9(0x130)](_0x4d9456,_0x437250,_0x400d55);}async['createNoHistoryServiceFiels'](_0x3ecba4,_0x34bf65,_0x1fe16d,_0x663650,_0x1dcec8){const _0x2d540f=a0_0x36a4a4;await this[_0x2d540f(0x130)](_0x3ecba4+(_0x34bf65+'/index.ts'),serviceIndex,_0x1dcec8),await this[_0x2d540f(0x130)](_0x3ecba4+(_0x34bf65+'/'+_0x34bf65+_0x2d540f(0x121)),serviceQuery,_0x1dcec8),await this['writeFile'](_0x3ecba4+(_0x34bf65+'/'+_0x34bf65+_0x2d540f(0xc0)),serviceMutation,_0x1dcec8);let _0x4b4139=this['createEntityText'](_0x1fe16d,_0x663650);await this[_0x2d540f(0x130)](_0x3ecba4+(_0x34bf65+'/'+_0x34bf65+_0x2d540f(0xf9)),_0x4b4139,_0x1dcec8);let _0x2cb7bc=this[_0x2d540f(0xd9)](_0x663650);await this[_0x2d540f(0x130)](_0x3ecba4+(_0x34bf65+'/'+_0x34bf65+_0x2d540f(0xb4)),_0x2cb7bc,_0x1dcec8);let _0x232908=_0x3ecba4+_0x2d540f(0xdc);0x0==await this[_0x2d540f(0x11d)](_0x232908)&&await this[_0x2d540f(0x130)](_0x232908,allIndex,_0x1dcec8);let _0x2a2c53=await fs[_0x2d540f(0x117)](_0x232908,_0x2d540f(0xfc));_0x2a2c53[_0x2d540f(0xb9)]('export\x20*\x20from\x20\x27./'+_0x1dcec8[_0x2d540f(0xdd)]+'/'+_0x1dcec8['name']+'\x27')<0x0&&(_0x2a2c53=_0x2a2c53[_0x2d540f(0x104)](/\/\* EXPORT ENTITY TYPES \*\//,_0x2d540f(0x10d)+_0x1dcec8[_0x2d540f(0xdd)]+'/'+_0x1dcec8[_0x2d540f(0xdd)]+'\x27')),_0x2a2c53[_0x2d540f(0xb9)](_0x2d540f(0x12c)+_0x1dcec8[_0x2d540f(0x12e)]+_0x2d540f(0xbc)+_0x1dcec8[_0x2d540f(0x12e)]+'Resolvers\x20}\x20from\x20\x27./'+_0x1dcec8['name']+'\x27')<0x0&&(_0x2a2c53=_0x2a2c53[_0x2d540f(0x104)](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,_0x2d540f(0x139)+_0x1dcec8['pascalCaseName']+_0x2d540f(0xbc)+_0x1dcec8[_0x2d540f(0x12e)]+_0x2d540f(0xee)+_0x1dcec8[_0x2d540f(0xdd)]+'\x27')),_0x2a2c53[_0x2d540f(0xb9)](_0x2d540f(0x10e)+_0x1dcec8['pascalCaseName']+'Entities,')<0x0&&(_0x2a2c53=_0x2a2c53['replace'](/\/\* ENTITIES \*\//,_0x2d540f(0xfd)+_0x1dcec8[_0x2d540f(0x12e)]+_0x2d540f(0x103))),_0x2a2c53[_0x2d540f(0xb9)]('...'+_0x1dcec8['pascalCaseName']+_0x2d540f(0x119))<0x0&&(_0x2a2c53=_0x2a2c53[_0x2d540f(0x104)](/\/\* RESOLVER CLASSES \*\//,'/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x09\x09...'+_0x1dcec8[_0x2d540f(0x12e)]+_0x2d540f(0x119))),await this[_0x2d540f(0x130)](_0x232908,_0x2a2c53,_0x1dcec8);}[a0_0x36a4a4(0xd9)](_0x1dd8a1){const _0x4bded3=a0_0x36a4a4;let _0x6b3f65=sereviceType,_0x40798b=_0x1dd8a1[_0x4bded3(0xc6)](_0x5b5b93=>{const _0x1643dc=_0x4bded3;if('id'==_0x5b5b93[_0x1643dc(0xdd)])return'';if(_0x1643dc(0xd3)==_0x5b5b93[_0x1643dc(0xdd)])return'';if(_0x1643dc(0xcd)==_0x5b5b93[_0x1643dc(0xdd)])return'';if('updated_at'==_0x5b5b93[_0x1643dc(0xdd)])return'';if('creator_id'==_0x5b5b93[_0x1643dc(0xdd)])return'';if('updater_id'==_0x5b5b93[_0x1643dc(0xdd)])return'';let _0x199798=this[_0x1643dc(0xbe)](_0x5b5b93),_0x79b9ce=this[_0x1643dc(0xbd)](_0x5b5b93),_0xee086d=camelCase(_0x5b5b93[_0x1643dc(0xdd)]);return'\x20\x20'+(_0x1643dc(0xea)+(0x0==_0x199798[_0x1643dc(0x12d)]?'':_0x1643dc(0x12a)+_0x199798+',')+_0x1643dc(0x136)+_0x5b5b93[_0x1643dc(0xeb)]+'\x20})')+_0x1643dc(0x106)+(''+_0xee086d+(_0x5b5b93['nullable']?'?':'')+':\x20'+_0x79b9ce)+'\x0a';});_0x6b3f65=_0x6b3f65[_0x4bded3(0x104)](/{{newTypeColumns}}/g,_0x40798b['join']('\x0a'));let _0x293e36=_0x1dd8a1['map'](_0x369228=>{const _0x48560f=_0x4bded3;if('id'==_0x369228['name'])return'';if(_0x48560f(0xd3)==_0x369228[_0x48560f(0xdd)])return'';if(_0x48560f(0xcd)==_0x369228[_0x48560f(0xdd)])return'';if(_0x48560f(0x120)==_0x369228[_0x48560f(0xdd)])return'';if(_0x48560f(0x11f)==_0x369228[_0x48560f(0xdd)])return'';if('updater_id'==_0x369228[_0x48560f(0xdd)])return'';let _0x35028d=this['getFieldType'](_0x369228),_0x20e690=this[_0x48560f(0xbd)](_0x369228);_0x369228[_0x48560f(0xeb)]=!0x0;let _0x520476=camelCase(_0x369228[_0x48560f(0xdd)]);return'\x20\x20'+(_0x48560f(0xea)+(0x0==_0x35028d[_0x48560f(0x12d)]?'':_0x48560f(0x12a)+_0x35028d+',')+'\x20{\x20nullable:\x20'+_0x369228[_0x48560f(0xeb)]+_0x48560f(0xfb))+'\x0a\x20\x20'+(''+_0x520476+(_0x369228['nullable']?'?':'')+':\x20'+_0x20e690)+'\x0a';});return _0x6b3f65=_0x6b3f65['replace'](/{{patchTypeColumns}}/g,_0x293e36[_0x4bded3(0x118)]('\x0a')),_0x6b3f65;}[a0_0x36a4a4(0x12f)](_0x4e9041,_0xad0226){const _0x829182=a0_0x36a4a4;let _0x4e622e=serviceEntity,_0x4dd029=_0xad0226[_0x829182(0x122)](function(_0x4f13a8,_0x198840){const _0x301085=_0x829182;return _0x4f13a8[_0x301085(0x13e)]-_0x198840['rank'];})[_0x829182(0xc6)](_0x2e9479=>this['columnToEntityColumn'](_0x2e9479));[_0x829182(0xd7),_0x829182(0xc5)]['includes'](_0x4e9041['dataProp'])&&_0x4dd029[_0x829182(0x12b)](_0x829182(0x132)),_0x4e622e=_0x4e622e[_0x829182(0x104)](/{{entityColumns}}/g,_0x4dd029[_0x829182(0x118)]('\x0a'));let _0x4b418d='',_0x1c7d37=_0xad0226['filter'](_0x561668=>_0x561668[_0x829182(0xcb)]&&_0x561668[_0x829182(0xcb)]>0x0)[_0x829182(0x122)](function(_0x5522f9,_0x352063){const _0x34f650=_0x829182;return _0x5522f9[_0x34f650(0xcb)]-_0x352063[_0x34f650(0xcb)];});if(_0x1c7d37[_0x829182(0x12d)]>0x0){_0x4b418d=_0x829182(0x141);let _0x2d62b5=_0x1c7d37[_0x829182(0xc6)](_0x3454e3=>{const _0x4701dc=_0x829182;let _0x5dd992=_0x3454e3[_0x4701dc(0xdd)];return _0x4701dc(0xd3)==_0x3454e3['name']&&(_0x5dd992='domain'),_0x4701dc(0x11f)==_0x3454e3['name']&&(_0x5dd992='creator'),_0x4701dc(0x131)==_0x3454e3['name']&&(_0x5dd992=_0x4701dc(0x10f)),'{{camelCase\x20name}}.'+camelCase(_0x5dd992);});_0x4b418d=_0x4b418d[_0x829182(0x104)](/{{indexColumns}}/g,_0x2d62b5[_0x829182(0x118)](','));}return _0x4e622e=_0x4e622e[_0x829182(0x104)](/{{indexAnn}}/g,_0x4b418d),_0x4e622e;}['createHistoryEntityText'](_0x42c489,_0x5466aa){const _0xfa48a4=a0_0x36a4a4;let _0x45b2a8=_0xfa48a4(0xc5)==_0x42c489[_0xfa48a4(0xcf)]?serviceEntityHistJson:serviceEntityHistCopy,_0x1161c4=_0x5466aa[_0xfa48a4(0x122)](function(_0x4ecf36,_0x47a29b){return _0x4ecf36['rank']-_0x47a29b['rank'];})[_0xfa48a4(0xc6)](_0x54b6c4=>this[_0xfa48a4(0xc7)](_0x54b6c4));return _0x45b2a8=_0x45b2a8[_0xfa48a4(0x104)](/{{entityColumns}}/g,_0x1161c4[_0xfa48a4(0x118)]('\x0a')),_0x45b2a8;}['columnToEntityColumn'](_0x5b41f3){const _0x5eb5b1=a0_0x36a4a4;if('id'==_0x5b41f3[_0x5eb5b1(0xdd)])return'';if(_0x5eb5b1(0xd3)==_0x5b41f3[_0x5eb5b1(0xdd)])return'';if(_0x5eb5b1(0xcd)==_0x5b41f3['name'])return'';if(_0x5eb5b1(0x120)==_0x5b41f3[_0x5eb5b1(0xdd)])return'';if('creator_id'==_0x5b41f3[_0x5eb5b1(0xdd)])return'';if('updater_id'==_0x5b41f3[_0x5eb5b1(0xdd)])return'';let _0x414e27=_0x5b41f3[_0x5eb5b1(0xef)];_0x5eb5b1(0x100)==_0x5b41f3[_0x5eb5b1(0xef)]&&(_0x414e27=_0x5eb5b1(0x105)),_0x5eb5b1(0xd2)==_0x5b41f3[_0x5eb5b1(0xef)]&&(_0x414e27=_0x5eb5b1(0x102)),'string'==_0x5b41f3[_0x5eb5b1(0xef)]&&(_0x414e27=_0x5eb5b1(0xec)),_0x5eb5b1(0xc4)==_0x5b41f3['colType']&&(_0x414e27=_0x5eb5b1(0x123));let _0x5f25ca='';_0x5eb5b1(0x109)==_0x5b41f3['colType']&&(_0x5f25ca=_0x5b41f3['colSize']);let _0x329293=this[_0x5eb5b1(0xbe)](_0x5b41f3),_0x4f16e6=this[_0x5eb5b1(0xbd)](_0x5b41f3),_0x40e1d0=camelCase(_0x5b41f3[_0x5eb5b1(0xdd)]);return'\x20\x20'+(_0x5eb5b1(0x138)+_0x5b41f3[_0x5eb5b1(0xdd)]+_0x5eb5b1(0x128)+_0x414e27+_0x5eb5b1(0xe1)+_0x5b41f3[_0x5eb5b1(0xeb)]+'\x20'+(0x0==_0x5f25ca[_0x5eb5b1(0x12d)]?'':',length:'+_0x5f25ca)+_0x5eb5b1(0xfb))+'\x0a\x20\x20'+(_0x5eb5b1(0xea)+(0x0==_0x329293[_0x5eb5b1(0x12d)]?'':_0x5eb5b1(0x12a)+_0x329293+',')+_0x5eb5b1(0x136)+_0x5b41f3[_0x5eb5b1(0xeb)]+_0x5eb5b1(0xfb))+_0x5eb5b1(0x106)+(''+_0x40e1d0+(_0x5b41f3[_0x5eb5b1(0xeb)]?'?':'')+':\x20'+_0x4f16e6)+'\x0a';}[a0_0x36a4a4(0xbe)](_0x403fb2){const _0x3bb7e5=a0_0x36a4a4;let _0x5e0052='';return'double'==_0x403fb2['colType']&&(_0x5e0052='Float'),_0x3bb7e5(0x116)==_0x403fb2[_0x3bb7e5(0xef)]&&(_0x5e0052=_0x3bb7e5(0xda)),_0x3bb7e5(0xd2)==_0x403fb2['colType']&&(_0x5e0052=_0x3bb7e5(0xe8)),'integer'==_0x403fb2[_0x3bb7e5(0xef)]&&(_0x5e0052=_0x3bb7e5(0xe8)),_0x5e0052;}[a0_0x36a4a4(0xbd)](_0x2144a5){const _0x5817bf=a0_0x36a4a4;let _0x302a2e=_0x2144a5[_0x5817bf(0xef)];return _0x5817bf(0xe2)==_0x2144a5[_0x5817bf(0xef)]&&(_0x302a2e=_0x5817bf(0xd8)),_0x5817bf(0x100)==_0x2144a5[_0x5817bf(0xef)]&&(_0x302a2e='number'),_0x5817bf(0x116)==_0x2144a5[_0x5817bf(0xef)]&&(_0x302a2e='number'),'integer'==_0x2144a5['colType']&&(_0x302a2e=_0x5817bf(0xd8)),_0x5817bf(0xd2)==_0x2144a5[_0x5817bf(0xef)]&&(_0x302a2e=_0x5817bf(0xd8)),_0x5817bf(0xc4)==_0x2144a5[_0x5817bf(0xef)]&&(_0x302a2e=_0x5817bf(0xb8)),'date'==_0x2144a5[_0x5817bf(0xef)]&&(_0x302a2e=_0x5817bf(0xb8)),_0x5817bf(0xb7)==_0x2144a5['colType']&&(_0x302a2e=_0x5817bf(0x109)),_0x302a2e;}async['writeFile'](_0x5758dd,_0x5397ec,_0x52fbaa){const _0x194c81=a0_0x36a4a4;await fs[_0x194c81(0x115)](_0x5758dd,this[_0x194c81(0x13c)](_0x5397ec,_0x52fbaa),'utf8');}['replaceNamesMap'](_0xef7cbd,_0x518630){const _0x5cf156=a0_0x36a4a4;return _0xef7cbd[_0x5cf156(0x104)](/{{pascalCase name}}/g,_0x518630[_0x5cf156(0x12e)])[_0x5cf156(0x104)](/{{camelCase name}}/g,_0x518630[_0x5cf156(0x124)])[_0x5cf156(0x104)](/{{snakeCase name}}/g,_0x518630[_0x5cf156(0x114)])['replace'](/{{pluralPascalCase name}}/g,_0x518630[_0x5cf156(0x13f)])[_0x5cf156(0x104)](/{{pluralCamelCase name}}/g,_0x518630[_0x5cf156(0x113)])[_0x5cf156(0x104)](/{{tableName}}/g,_0x518630[_0x5cf156(0xce)])[_0x5cf156(0x104)](/{{name}}/g,_0x518630[_0x5cf156(0xdd)]);}async[a0_0x36a4a4(0x11c)](_0x412036,_0x1b6074,_0xd1687d){const _0x193517=a0_0x36a4a4;let _0x17fae1=_0x412036+_0x193517(0xb3);await this[_0x193517(0x133)](_0x17fae1),_0x17fae1=_0x17fae1+'/'+_0x1b6074,await this[_0x193517(0x133)](_0x17fae1),_0x17fae1+=_0x193517(0xf0),await this[_0x193517(0x133)](_0x17fae1),_0x17fae1+=_0x193517(0xc9),await this[_0x193517(0x133)](_0x17fae1),_0x17fae1=_0x17fae1+'/'+_0xd1687d,await this['createDir'](_0x17fae1);}[a0_0x36a4a4(0x127)](){const _0xc887f0=a0_0x36a4a4;let _0xba381f=process[_0xc887f0(0x13a)][_0xc887f0(0xdb)]['split']('/'),_0x1318c9=[];for(let _0x275e43=0x0;_0x275e43<_0xba381f[_0xc887f0(0x12d)]&&_0xc887f0(0x11b)!=_0xba381f[_0x275e43];_0x275e43++)_0x1318c9['push'](_0xba381f[_0x275e43]);return _0x1318c9[_0xc887f0(0x118)]('/');}async[a0_0x36a4a4(0x133)](_0x2a829b){const _0x2e8574=a0_0x36a4a4;0x0==await this[_0x2e8574(0x11d)](_0x2a829b)&&fs[_0x2e8574(0xd6)](_0x2a829b);}async[a0_0x36a4a4(0x11d)](_0x9c5ed4){const _0xf3e361=a0_0x36a4a4;return await fs[_0xf3e361(0xb5)](_0x9c5ed4);}};tslib_1[a0_0x36a4a4(0xf5)]([(0x0,type_graphql_1['Query'])(_0x40a933=>Boolean,{'description':a0_0x36a4a4(0x10c)}),tslib_1[a0_0x36a4a4(0xca)](0x0,(0x0,type_graphql_1[a0_0x36a4a4(0xde)])('id')),tslib_1['__param'](0x1,(0x0,type_graphql_1[a0_0x36a4a4(0x126)])()),tslib_1[a0_0x36a4a4(0x111)](a0_0x36a4a4(0xcc),Function),tslib_1[a0_0x36a4a4(0x111)]('design:paramtypes',[String,Object]),tslib_1[a0_0x36a4a4(0x111)](a0_0x36a4a4(0xf1),Promise)],OperatoToolCreateService[a0_0x36a4a4(0x125)],a0_0x36a4a4(0x110),null),OperatoToolCreateService=tslib_1['__decorate']([(0x0,type_graphql_1['Resolver'])()],OperatoToolCreateService),exports[a0_0x36a4a4(0x11e)]=OperatoToolCreateService;const allIndex=a0_0x36a4a4(0xfe),serviceIndex=a0_0x36a4a4(0x13b),serviceHistoryIndex=a0_0x36a4a4(0xc1),serviceQuery=a0_0x36a4a4(0x129),serviceHistoryQuery=a0_0x36a4a4(0xf8),serviceMutation=a0_0x36a4a4(0x135),sereviceType=a0_0x36a4a4(0xd1),sereviceHistoryType='\x0aimport\x20{\x20ObjectType,\x20Field,\x20InputType,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0a\x0a@ObjectType()\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryList\x20{\x0a\x20\x20@Field(type\x20=>\x20[{{pascalCase\x20name}}History])\x0a\x20\x20items:\x20{{pascalCase\x20name}}History[]\x0a\x0a\x20\x20@Field(type\x20=>\x20Int)\x0a\x20\x20total:\x20number\x0a}\x0a',serviceEntity='\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20Domain\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0a@Entity(\x27{{tableName}}\x27)\x0a{{indexAnn}}\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}\x20{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a{{entityColumns}}\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a',serviceEntityHistCopy=a0_0x36a4a4(0x140),serviceEntityHistJson=a0_0x36a4a4(0x108),serviceEntitySubscriber=a0_0x36a4a4(0xf2);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';
|
|
1
|
+
'use strict';const a0_0xea7a12=a0_0x39f0;(function(_0x52e67a,_0x5b45ce){const _0x2e6201=a0_0x39f0,_0x5724af=_0x52e67a();while(!![]){try{const _0xa26ae1=-parseInt(_0x2e6201(0xd3))/0x1+-parseInt(_0x2e6201(0xcc))/0x2*(-parseInt(_0x2e6201(0xc0))/0x3)+-parseInt(_0x2e6201(0xc5))/0x4*(parseInt(_0x2e6201(0xd4))/0x5)+parseInt(_0x2e6201(0xe3))/0x6*(parseInt(_0x2e6201(0xd1))/0x7)+parseInt(_0x2e6201(0xc7))/0x8*(-parseInt(_0x2e6201(0xc6))/0x9)+-parseInt(_0x2e6201(0xe1))/0xa+-parseInt(_0x2e6201(0xbf))/0xb*(-parseInt(_0x2e6201(0xca))/0xc);if(_0xa26ae1===_0x5b45ce)break;else _0x5724af['push'](_0x5724af['shift']());}catch(_0x264c1e){_0x5724af['push'](_0x5724af['shift']());}}}(a0_0x469a,0xef3d1));function a0_0x39f0(_0x3caa1c,_0x261b54){const _0x469ae3=a0_0x469a();return a0_0x39f0=function(_0x39f01e,_0x276230){_0x39f01e=_0x39f01e-0xbe;let _0x33ee48=_0x469ae3[_0x39f01e];return _0x33ee48;},a0_0x39f0(_0x3caa1c,_0x261b54);}Object[a0_0xea7a12(0xd9)](exports,a0_0xea7a12(0xd5),{'value':!0x0}),exports['checkStudioTemplateIsOverLimit']=exports[a0_0xea7a12(0xde)]=void 0x0;const operato_license_checker_1=require('@things-factory/operato-license-checker'),shell_1=require(a0_0xea7a12(0xc1)),menu_base_1=require(a0_0xea7a12(0xe4)),license_error_1=require('../../errors/license-error');async function checkStudioPermission(){const _0x48cccf=a0_0xea7a12;let _0x4f97d9=((0x0,operato_license_checker_1['getPermission'])(_0x48cccf(0xe5))||',')[_0x48cccf(0xd8)](',')[_0x48cccf(0xcf)](_0x1252a3=>_0x1252a3[_0x48cccf(0xdd)]()),_0x3ddd6c=!0x1;return _0x4f97d9[_0x48cccf(0xc8)](_0x3464c9=>{const _0x324c14=_0x48cccf;_0x3464c9[_0x324c14(0xbe)](_0x324c14(0xce))&&(_0x3ddd6c=!0x0);}),_0x3ddd6c;}function a0_0x469a(){const _0x51b71a=['@things-factory/menu-base','Permissions\x20For\x20Tailor\x20Tool','INVALID_LICENSE','includes','31267841DZUaAb','890811gjbLEG','@things-factory/shell','getRepository','(template\x20is\x20not\x20null\x20and\x20template\x20!=\x20\x27\x27\x20)','Menu','550404uFTmlX','9XfjcBa','5012920Qqytfs','forEach','manager','12kOCjMl','from','2aDmgYN','getCount','Studio','map','select','7ROwnjz','ERROR_CODES','1736818PZsCiv','55udvoSL','__esModule','where','LicenseError','split','defineProperty','checkStudioTemplateIsOverLimit','id\x20!=\x20:id','createQueryBuilder','trim','checkStudioPermission','menu','andWhere','2365240yZpWVr','OVER_LIMIT','11724126BjSbaV'];a0_0x469a=function(){return _0x51b71a;};return a0_0x469a();}async function checkStudioTemplateIsOverLimit(_0x453cb6,_0x434819){const _0x53e683=a0_0xea7a12;if(0x0==await checkStudioPermission())throw new license_error_1[(_0x53e683(0xd7))]({'errorCode':_0x434819['t'](license_error_1[_0x53e683(0xd7)][_0x53e683(0xd2)][_0x53e683(0xe6)])});var _0x2603b7=0x0;if(_0x2603b7=_0x453cb6&&''!=_0x453cb6?await(0x0,shell_1['getRepository'])(menu_base_1[_0x53e683(0xc4)])[_0x53e683(0xc9)][_0x53e683(0xdc)]()[_0x53e683(0xd0)](_0x53e683(0xdf))['from'](menu_base_1['Menu'],'menu')[_0x53e683(0xd6)](_0x53e683(0xdb),{'id':_0x453cb6})[_0x53e683(0xe0)]('(template\x20is\x20not\x20null\x20and\x20template\x20!=\x20\x27\x27\x20)')[_0x53e683(0xcd)]()+0x1:await(0x0,shell_1[_0x53e683(0xc2)])(menu_base_1[_0x53e683(0xc4)])[_0x53e683(0xc9)][_0x53e683(0xdc)]()[_0x53e683(0xd0)](_0x53e683(0xdf))[_0x53e683(0xcb)](menu_base_1[_0x53e683(0xc4)],_0x53e683(0xdf))['where'](_0x53e683(0xc3))[_0x53e683(0xcd)]()+0x1,!(0x0,operato_license_checker_1['checkTarget'])(_0x2603b7))throw new license_error_1['LicenseError']({'errorCode':_0x434819['t'](license_error_1[_0x53e683(0xd7)][_0x53e683(0xd2)][_0x53e683(0xe2)])});return!0x0;}exports[a0_0xea7a12(0xde)]=checkStudioPermission,exports[a0_0xea7a12(0xda)]=checkStudioTemplateIsOverLimit;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const
|
|
1
|
+
'use strict';function a0_0x4e9c(){const _0xc77048=['3934630EbiBsl','__param','Query','checkStudioTemplateIsOverLimit','Ctx','35PUCHYq','1525638zCYbxt','design:paramtypes','748010FHaLIB','prototype','OperatoToolResolver','design:returntype','Operato\x20Tool\x20Studio\x20Usage\x20Permissions','type-graphql','616665cLifVs','defineProperty','tslib','design:type','./tool-permission','698484jUncDv','3Zsnkzp','__metadata','Arg','4911592SUBgot','436542dgOral','studioTemplateIsOverLimit','__decorate','18wTSaZH'];a0_0x4e9c=function(){return _0xc77048;};return a0_0x4e9c();}const a0_0x3d156d=a0_0x522a;(function(_0x5a2e5a,_0x4ab99d){const _0xe7d2b0=a0_0x522a,_0x6ed395=_0x5a2e5a();while(!![]){try{const _0x13416f=parseInt(_0xe7d2b0(0x11a))/0x1+parseInt(_0xe7d2b0(0x12e))/0x2*(-parseInt(_0xe7d2b0(0x120))/0x3)+-parseInt(_0xe7d2b0(0x11f))/0x4+parseInt(_0xe7d2b0(0x12d))/0x5*(parseInt(_0xe7d2b0(0x124))/0x6)+-parseInt(_0xe7d2b0(0x128))/0x7+parseInt(_0xe7d2b0(0x123))/0x8+-parseInt(_0xe7d2b0(0x127))/0x9*(-parseInt(_0xe7d2b0(0x130))/0xa);if(_0x13416f===_0x4ab99d)break;else _0x6ed395['push'](_0x6ed395['shift']());}catch(_0x22dd96){_0x6ed395['push'](_0x6ed395['shift']());}}}(a0_0x4e9c,0x5f361));Object[a0_0x3d156d(0x11b)](exports,'__esModule',{'value':!0x0}),exports[a0_0x3d156d(0x132)]=void 0x0;const tslib_1=require(a0_0x3d156d(0x11c)),type_graphql_1=require(a0_0x3d156d(0x119)),tool_permission_1=require(a0_0x3d156d(0x11e));let OperatoToolResolver=class{async['studioPermission'](_0x2e3bb6){return(0x0,tool_permission_1['checkStudioPermission'])();}async[a0_0x3d156d(0x125)](_0x140d64,_0x32defe){const _0x3fa1c3=a0_0x3d156d;return(0x0,tool_permission_1[_0x3fa1c3(0x12b)])(_0x140d64,_0x32defe);}};function a0_0x522a(_0x46b25f,_0x1a6686){const _0x4e9c61=a0_0x4e9c();return a0_0x522a=function(_0x522aad,_0x2feac8){_0x522aad=_0x522aad-0x119;let _0x1bb9df=_0x4e9c61[_0x522aad];return _0x1bb9df;},a0_0x522a(_0x46b25f,_0x1a6686);}tslib_1['__decorate']([(0x0,type_graphql_1[a0_0x3d156d(0x12a)])(_0x7b63a0=>Boolean,{'description':a0_0x3d156d(0x134)}),tslib_1[a0_0x3d156d(0x129)](0x0,(0x0,type_graphql_1[a0_0x3d156d(0x12c)])()),tslib_1['__metadata'](a0_0x3d156d(0x11d),Function),tslib_1['__metadata'](a0_0x3d156d(0x12f),[Object]),tslib_1['__metadata']('design:returntype',Promise)],OperatoToolResolver[a0_0x3d156d(0x131)],'studioPermission',null),tslib_1['__decorate']([(0x0,type_graphql_1[a0_0x3d156d(0x12a)])(_0x479a55=>Boolean,{'description':'Operato\x20Tool\x20Studio\x20Limit\x20check'}),tslib_1[a0_0x3d156d(0x129)](0x0,(0x0,type_graphql_1[a0_0x3d156d(0x122)])('id')),tslib_1['__param'](0x1,(0x0,type_graphql_1[a0_0x3d156d(0x12c)])()),tslib_1[a0_0x3d156d(0x121)]('design:type',Function),tslib_1[a0_0x3d156d(0x121)](a0_0x3d156d(0x12f),[String,Object]),tslib_1['__metadata'](a0_0x3d156d(0x133),Promise)],OperatoToolResolver['prototype'],'studioTemplateIsOverLimit',null),OperatoToolResolver=tslib_1[a0_0x3d156d(0x126)]([(0x0,type_graphql_1['Resolver'])()],OperatoToolResolver),exports[a0_0x3d156d(0x132)]=OperatoToolResolver;
|
package/translations/en.json
CHANGED
package/translations/ko.json
CHANGED
package/translations/ms.json
CHANGED