runlify 0.0.714 → 0.0.715
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/build/cli.js +20 -52
- package/build/commands/availableEnvironments.js +16 -51
- package/build/commands/generate.js +10 -46
- package/build/commands/init.js +73 -140
- package/build/commands/login.js +6 -42
- package/build/commands/logout.js +5 -41
- package/build/commands/pullEnvs.js +23 -70
- package/build/commands/readEnv.js +16 -45
- package/build/commands/regen.js +17 -48
- package/build/commands/runlify.js +6 -37
- package/build/commands/showToken.js +14 -45
- package/build/commands/start.js +57 -84
- package/build/commands/tryGetMeta.js +7 -43
- package/build/documentation/algoritmToDoc.js +4 -4
- package/build/documentation/algoritmToDoc.spec.js +5 -5
- package/build/documentation/curlExampleToText.js +15 -16
- package/build/documentation/curlExampleToText.spec.js +32 -16
- package/build/documentation/doc.js +1 -2
- package/build/documentation/docToFlatDoc.js +13 -17
- package/build/documentation/docToFlatDoc.spec.js +9 -9
- package/build/documentation/flatDoc.js +1 -2
- package/build/documentation/flatDocToText.js +4 -6
- package/build/documentation/flatDocToText.spec.js +20 -8
- package/build/documentation/templateDoc.js +1 -2
- package/build/documentation/templateDocToDoc.js +2 -2
- package/build/extensions/auth.js +64 -124
- package/build/extensions/cli-extension.js +3 -3
- package/build/extensions/cloudEnv.js +76 -120
- package/build/extensions/cloudMeta.js +35 -73
- package/build/extensions/globalConfig.js +37 -80
- package/build/extensions/localConfig.js +15 -46
- package/build/extensions/preventRunningIfUpdateAvailable.js +18 -52
- package/build/log.js +6 -6
- package/build/projectsGeneration/args.js +33 -53
- package/build/projectsGeneration/builders/AdditionalServiceBuilder.js +62 -96
- package/build/projectsGeneration/builders/BaseBuilder.js +30 -34
- package/build/projectsGeneration/builders/BaseSavableEntityBuilder.js +272 -312
- package/build/projectsGeneration/builders/CatalogBuilder.js +17 -46
- package/build/projectsGeneration/builders/ConfigVarBuilder.js +25 -36
- package/build/projectsGeneration/builders/DeploymentBuilder.js +18 -47
- package/build/projectsGeneration/builders/DocumentBuilder.js +26 -56
- package/build/projectsGeneration/builders/InfoRegistryBuilder.js +106 -140
- package/build/projectsGeneration/builders/PageBuilder.js +22 -51
- package/build/projectsGeneration/builders/PermissionBuilder.js +12 -41
- package/build/projectsGeneration/builders/ReportBuilder.js +23 -52
- package/build/projectsGeneration/builders/RestApiBuilder.js +20 -50
- package/build/projectsGeneration/builders/RestApiMethodBuilder.js +25 -54
- package/build/projectsGeneration/builders/RoleBuilder.js +12 -41
- package/build/projectsGeneration/builders/SumRegistryBuilder.js +100 -133
- package/build/projectsGeneration/builders/SystemMetaBuilder.js +281 -324
- package/build/projectsGeneration/builders/TelegramBotBuilder.js +18 -47
- package/build/projectsGeneration/builders/docs/DocumentationOfDocumentBuilder.js +8 -9
- package/build/projectsGeneration/builders/fields/BaseFieldBuilder.js +89 -105
- package/build/projectsGeneration/builders/fields/IdFieldBuilder.js +24 -54
- package/build/projectsGeneration/builders/fields/LinkFieldBuilder.js +33 -62
- package/build/projectsGeneration/builders/fields/ModelFieldBuilder.js +18 -47
- package/build/projectsGeneration/builders/fields/ScalarFieldBuilder.js +11 -42
- package/build/projectsGeneration/builders/fields/ViewLinkFieldBuilder.js +26 -55
- package/build/projectsGeneration/builders/integrationClients/IntegrationClientArgsModelBuilder.js +6 -23
- package/build/projectsGeneration/builders/integrationClients/IntegrationClientBaseModelBuilder.js +28 -57
- package/build/projectsGeneration/builders/integrationClients/IntegrationClientBuilder.js +25 -54
- package/build/projectsGeneration/builders/integrationClients/IntegrationClientQueryMethodsBuilder.js +18 -47
- package/build/projectsGeneration/builders/integrationClients/IntegrationClientReturnModelBuilder.js +12 -41
- package/build/projectsGeneration/builders/materialUiIcons.js +2 -2
- package/build/projectsGeneration/builders/mehods/ArgsModelBuilder.js +6 -23
- package/build/projectsGeneration/builders/mehods/BaseModelBuilder.js +30 -59
- package/build/projectsGeneration/builders/mehods/MethodBuilder.js +36 -66
- package/build/projectsGeneration/builders/mehods/ReturnModelBuilder.js +12 -41
- package/build/projectsGeneration/builders/menu/BaseMenuItemBuilder.js +24 -54
- package/build/projectsGeneration/builders/menu/ExternalEnvMenuItemBuilder.js +11 -40
- package/build/projectsGeneration/builders/menu/ExternalMenuItemBuilder.js +11 -40
- package/build/projectsGeneration/builders/menu/GroupMenuItemBuilder.js +31 -66
- package/build/projectsGeneration/builders/menu/InternalMenuItemBuilder.js +16 -45
- package/build/projectsGeneration/builders/tsFilterFields.js +11 -12
- package/build/projectsGeneration/builders/tsFilterFields.spec.js +29 -11
- package/build/projectsGeneration/builders/ui/FormsBuilder.js +9 -10
- package/build/projectsGeneration/builders/ui/ListFormBuilder.js +9 -10
- package/build/projectsGeneration/builders/ui/ListFormFilterBuilder.js +14 -16
- package/build/projectsGeneration/builders/ui/ListFormFilterFieldBuilder.js +8 -9
- package/build/projectsGeneration/builders/utils/accessFunctions.js +4 -4
- package/build/projectsGeneration/builders/validation/baseValudationToYupAssertions.js +4 -4
- package/build/projectsGeneration/builders/validation/bigintValudationToYupAssertions.js +5 -5
- package/build/projectsGeneration/builders/validation/bigintValudationToYupAssertions.spec.js +7 -7
- package/build/projectsGeneration/builders/validation/floatValudationToYupAssertions.js +4 -4
- package/build/projectsGeneration/builders/validation/floatValudationToYupAssertions.spec.js +6 -6
- package/build/projectsGeneration/builders/validation/intValudationToYupAssertions.js +9 -9
- package/build/projectsGeneration/builders/validation/intValudationToYupAssertions.spec.js +9 -9
- package/build/projectsGeneration/builders/validation/numberValudationToYupAssertions.js +10 -10
- package/build/projectsGeneration/builders/validation/stringValudationToYupAssertions.js +6 -6
- package/build/projectsGeneration/builders/validation/stringValudationToYupAssertions.spec.js +6 -6
- package/build/projectsGeneration/commonEntities/addAggregateTrackings.js +3 -3
- package/build/projectsGeneration/commonEntities/addAuditLogs.js +6 -6
- package/build/projectsGeneration/commonEntities/addAutogeneration.js +4 -4
- package/build/projectsGeneration/commonEntities/addCommonCommands.js +2 -2
- package/build/projectsGeneration/commonEntities/addCommonEntities.js +14 -14
- package/build/projectsGeneration/commonEntities/addConfigurationVariables.js +4 -4
- package/build/projectsGeneration/commonEntities/addLanguages.js +3 -3
- package/build/projectsGeneration/commonEntities/addManagers.js +6 -6
- package/build/projectsGeneration/commonEntities/addRefreshTokens.js +4 -4
- package/build/projectsGeneration/commonEntities/addRoles.js +8 -8
- package/build/projectsGeneration/commonEntities/addTenants.js +3 -3
- package/build/projectsGeneration/commonEntities/addUserSettings.js +7 -7
- package/build/projectsGeneration/commonEntities/addUsers.js +4 -4
- package/build/projectsGeneration/defaultCatalogs/addElasticSearch.js +12 -13
- package/build/projectsGeneration/defaultCatalogs/files.js +6 -6
- package/build/projectsGeneration/fileCleaners/back/graphServices/cleanGraphServices.js +24 -59
- package/build/projectsGeneration/fileCleaners/back/services/cleanServices.js +32 -67
- package/build/projectsGeneration/fileCleaners/cleanFiles.js +7 -38
- package/build/projectsGeneration/fileCleaners/ui/cleanUi.js +7 -39
- package/build/projectsGeneration/fileCleaners/ui/pages/cleanPages.js +24 -59
- package/build/projectsGeneration/fileCleaners/ui/widgets/cleanWidgets.js +10 -40
- package/build/projectsGeneration/fileCleaners/ui/widgets/cleanWidgetsByType.js +29 -62
- package/build/projectsGeneration/genGraphSchemesByLocalGenerator.js +26 -68
- package/build/projectsGeneration/generateAdditionalService.js +41 -98
- package/build/projectsGeneration/generateEntity.js +215 -346
- package/build/projectsGeneration/generateEnvironment.js +157 -265
- package/build/projectsGeneration/generateProject.js +422 -724
- package/build/projectsGeneration/generators/fieldTypeToTsType.js +4 -4
- package/build/projectsGeneration/generators/fileTemplates/back/Entities.js +16 -14
- package/build/projectsGeneration/generators/fileTemplates/back/devEnum.js +17 -13
- package/build/projectsGeneration/generators/fileTemplates/back/elastic/elastic.js +8 -44
- package/build/projectsGeneration/generators/fileTemplates/back/elastic/jobs.js +36 -26
- package/build/projectsGeneration/generators/fileTemplates/back/enum.js +17 -13
- package/build/projectsGeneration/generators/fileTemplates/back/environment/chart/Chart.js +12 -8
- package/build/projectsGeneration/generators/fileTemplates/back/environment/chart/templates/back.js +128 -12
- package/build/projectsGeneration/generators/fileTemplates/back/environment/chart/templates/ingress.js +54 -8
- package/build/projectsGeneration/generators/fileTemplates/back/environment/chart/values.js +149 -13
- package/build/projectsGeneration/generators/fileTemplates/back/environment/ciNotify.js +19 -8
- package/build/projectsGeneration/generators/fileTemplates/back/environment/defaultEnv.js +5 -9
- package/build/projectsGeneration/generators/fileTemplates/back/environment/dockerfileTmplBack.js +38 -8
- package/build/projectsGeneration/generators/fileTemplates/back/environment/dockerfileTmplUI.js +42 -8
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocSpec.js +3 -6
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsConfiguration.js +27 -19
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsEntity.js +7 -5
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsIntegrationClient.js +44 -29
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsRestApi.js +45 -18
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/spec/findLinksToEntities.js +2 -4
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/spec/getAllSavableEntities.js +7 -11
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/spec/getProjectSpec.js +206 -216
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/spec/titleMd.js +5 -5
- package/build/projectsGeneration/generators/fileTemplates/back/environment/gitlabCi.js +272 -37
- package/build/projectsGeneration/generators/fileTemplates/back/environment/src/clients/getPrisma.js +78 -9
- package/build/projectsGeneration/generators/fileTemplates/back/environment/src/clients/queue/getQueue.js +42 -9
- package/build/projectsGeneration/generators/fileTemplates/back/environment/src/index.js +36 -9
- package/build/projectsGeneration/generators/fileTemplates/back/environment/src/integrationClients/IntegrationClient.js +56 -5
- package/build/projectsGeneration/generators/fileTemplates/back/environment/src/integrationClients/IntegrationClients.js +12 -9
- package/build/projectsGeneration/generators/fileTemplates/back/environment/src/integrationClients/fieldsToTsTypeFields.js +4 -6
- package/build/projectsGeneration/generators/fileTemplates/back/environment/src/integrationClients/integrationClientConstrictors.js +13 -9
- package/build/projectsGeneration/generators/fileTemplates/back/environment/src/integrationClients/tsModelTmpl.js +6 -4
- package/build/projectsGeneration/generators/fileTemplates/back/environment/src/integrationClients/types.js +15 -7
- package/build/projectsGeneration/generators/fileTemplates/back/graph/additionalResolvers.js +9 -2
- package/build/projectsGeneration/generators/fileTemplates/back/graph/additionalService/permissionToGraphql.js +16 -9
- package/build/projectsGeneration/generators/fileTemplates/back/graph/additionalService/resolvers.js +32 -12
- package/build/projectsGeneration/generators/fileTemplates/back/graph/additionalService/typeDefs.js +18 -11
- package/build/projectsGeneration/generators/fileTemplates/back/graph/additionalTypes.js +7 -2
- package/build/projectsGeneration/generators/fileTemplates/back/graph/entityAdditionalPermissionToGraphqlTmpl.js +20 -9
- package/build/projectsGeneration/generators/fileTemplates/back/graph/entityBasePermissionToGraphql.js +22 -10
- package/build/projectsGeneration/generators/fileTemplates/back/graph/entityPermissionToGraphqlTmpl.js +18 -9
- package/build/projectsGeneration/generators/fileTemplates/back/graph/help/baseResolvers.js +17 -2
- package/build/projectsGeneration/generators/fileTemplates/back/graph/help/baseTypeDefs.js +15 -5
- package/build/projectsGeneration/generators/fileTemplates/back/graph/help/permissionsToGraphql.js +11 -2
- package/build/projectsGeneration/generators/fileTemplates/back/graph/meta/resolvers.js +26 -2
- package/build/projectsGeneration/generators/fileTemplates/back/graph/meta/typeDefs.js +17 -2
- package/build/projectsGeneration/generators/fileTemplates/back/graph/permissionsToGraphql.js +52 -13
- package/build/projectsGeneration/generators/fileTemplates/back/graph/resolvers.js +52 -13
- package/build/projectsGeneration/generators/fileTemplates/back/graph/types.js +18 -11
- package/build/projectsGeneration/generators/fileTemplates/back/initCommon.js +30 -16
- package/build/projectsGeneration/generators/fileTemplates/back/initDev.js +27 -15
- package/build/projectsGeneration/generators/fileTemplates/back/initEntities.js +24 -10
- package/build/projectsGeneration/generators/fileTemplates/back/root/config/config.js +30 -16
- package/build/projectsGeneration/generators/fileTemplates/back/root/restRouter.js +21 -2
- package/build/projectsGeneration/generators/fileTemplates/back/services/AdditionalServices.js +7 -2
- package/build/projectsGeneration/generators/fileTemplates/back/services/BaseServices.js +18 -22
- package/build/projectsGeneration/generators/fileTemplates/back/services/HelpService/HelpService.js +30 -7
- package/build/projectsGeneration/generators/fileTemplates/back/services/additionalService/types.js +18 -13
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/additionalClass.js +7 -5
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/class.js +126 -49
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/config.js +59 -40
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/additionalOperationsOnCreate.js +13 -5
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/additionalOperationsOnDelete.js +14 -6
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/additionalOperationsOnUpdate.js +14 -6
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/afterCreate.js +15 -6
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/afterDelete.js +15 -6
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/afterUpdate.js +15 -6
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/beforeCreate.js +15 -6
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/beforeDelete.js +15 -6
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/beforeUpdate.js +14 -6
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/beforeUpsert.js +30 -7
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/changeListFilter.js +14 -6
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/hooks/tenantIdRequiredHooks.js +81 -8
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/initBuiltInHooks.js +22 -10
- package/build/projectsGeneration/generators/fileTemplates/back/services/entity/initUserHooks.js +31 -6
- package/build/projectsGeneration/generators/fileTemplates/back/services/serviceConstrictors.js +26 -14
- package/build/projectsGeneration/generators/fileTemplates/ui/Dashboard.js +14 -2
- package/build/projectsGeneration/generators/fileTemplates/ui/MetaPage.js +120 -3
- package/build/projectsGeneration/generators/fileTemplates/ui/ResourcesPage.js +45 -10
- package/build/projectsGeneration/generators/fileTemplates/ui/additionalRoutes.js +5 -2
- package/build/projectsGeneration/generators/fileTemplates/ui/entityMapping.js +14 -12
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/chart/Chart.js +12 -8
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/chart/templates/front.js +118 -13
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/chart/templates/ingress.js +51 -8
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/chart/values.js +79 -8
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/ciNotify.js +19 -8
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/docs/adminAppDocsConfiguration.js +27 -21
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/gitlabCi.js +179 -26
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/src/App.js +107 -10
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/src/contexts/SpacesContext.js +67 -9
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/src/dataProvider/getAdditionalMethods.js +55 -18
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/src/dataProvider/index.js +93 -13
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/src/i18nProvider/index.js +51 -19
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/src/layout/AppBar.js +60 -9
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/src/layout/Menu.js +52 -9
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/src/routes.js +38 -9
- package/build/projectsGeneration/generators/fileTemplates/ui/functions/Functions.js +60 -7
- package/build/projectsGeneration/generators/fileTemplates/ui/getAdditionalMenu.js +11 -2
- package/build/projectsGeneration/generators/fileTemplates/ui/getDefaultMenu.js +136 -23
- package/build/projectsGeneration/generators/fileTemplates/ui/i18n/lang/uiLangCatalogsTmpl.js +3 -5
- package/build/projectsGeneration/generators/fileTemplates/ui/i18n/lang/uiLangDocsTmpl.js +3 -5
- package/build/projectsGeneration/generators/fileTemplates/ui/i18n/lang/uiLangInfoRegistriesTmpl.js +3 -5
- package/build/projectsGeneration/generators/fileTemplates/ui/i18n/lang/uiLangReportsTmpl.js +3 -3
- package/build/projectsGeneration/generators/fileTemplates/ui/i18n/lang/uiLangSumRegistriesTmpl.js +3 -5
- package/build/projectsGeneration/generators/fileTemplates/ui/i18n/lang/uiTranslationsForServicesOfSavablesTmpl.js +33 -21
- package/build/projectsGeneration/generators/fileTemplates/ui/i18n/lang/uiTranslationsLangTmpl.js +23 -15
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityCreate/DefaultEntityCreate.js +101 -62
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityCreate/index.js +15 -5
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityEdit/DefaultEntityEdit.js +176 -77
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityEdit/index.js +15 -5
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityList/DefaultEntityFilter.js +68 -50
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityList/DefaultEntityList.js +83 -47
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityList/EntityFilter.js +12 -5
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityList/index.js +15 -5
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityShow/DefaultActions.js +54 -19
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityShow/DefaultEntityShow.js +53 -30
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityShow/DefaultMainTab.js +45 -32
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityShow/DependencyTab.js +57 -41
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityShow/MainTab.js +3 -2
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityShow/additionalTabs.js +7 -3
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/EntityShow/index.js +15 -5
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/Icon.js +8 -8
- package/build/projectsGeneration/generators/fileTemplates/ui/pages/getEntityValidation.js +45 -30
- package/build/projectsGeneration/generators/fileTemplates/ui/resources.js +46 -12
- package/build/projectsGeneration/generators/fileTemplates/ui/widgets/count/CountWidget.js +50 -9
- package/build/projectsGeneration/generators/fileTemplates/ui/widgets/list/ListWidget.js +109 -14
- package/build/projectsGeneration/generators/graph/fieldTypeToGraphScalar.js +8 -9
- package/build/projectsGeneration/generators/graph/fieldTypeToGraphScalarStringified.js +4 -6
- package/build/projectsGeneration/generators/graph/fields/genGraphField.js +8 -9
- package/build/projectsGeneration/generators/graph/fields/genGraphIdField.js +7 -8
- package/build/projectsGeneration/generators/graph/fields/genGraphIdFieldType.js +6 -6
- package/build/projectsGeneration/generators/graph/fields/genGraphLinkField.js +10 -11
- package/build/projectsGeneration/generators/graph/fields/genGraphModelField.js +10 -11
- package/build/projectsGeneration/generators/graph/fields/genGraphScalarField.js +10 -11
- package/build/projectsGeneration/generators/graph/filters/genGraphField.js +7 -7
- package/build/projectsGeneration/generators/graph/filters/genGraphIdFilter.js +12 -14
- package/build/projectsGeneration/generators/graph/filters/genGraphLinkFilter.js +12 -24
- package/build/projectsGeneration/generators/graph/filters/genGraphScalarFilter.js +25 -37
- package/build/projectsGeneration/generators/graph/genGraphAdditionalServiceSchema.js +35 -35
- package/build/projectsGeneration/generators/graph/genGraphAdditionalServiceSchema.spec.js +148 -65
- package/build/projectsGeneration/generators/graph/genGraphCrudSchema.js +38 -50
- package/build/projectsGeneration/generators/graph/genGraphCrudSchema.spec.js +393 -34
- package/build/projectsGeneration/generators/graph/genGraphFilterType.js +11 -22
- package/build/projectsGeneration/generators/graph/genGraphFilterType.spec.js +75 -13
- package/build/projectsGeneration/generators/graph/genGraphModelType.js +15 -27
- package/build/projectsGeneration/generators/graph/genGraphType.js +7 -18
- package/build/projectsGeneration/generators/graph/genGraphType.spec.js +27 -12
- package/build/projectsGeneration/generators/graph/printGraphType.js +5 -7
- package/build/projectsGeneration/generators/graph/printGraphType.spec.js +11 -6
- package/build/projectsGeneration/generators/graph/utils/mapUtils.js +11 -30
- package/build/projectsGeneration/generators/graph/utils/models/getModelInitOrder.js +14 -28
- package/build/projectsGeneration/generators/graph/utils/models/getModelInitOrder.spec.js +18 -18
- package/build/projectsGeneration/generators/graph/utils/models/getUniqModels.js +3 -3
- package/build/projectsGeneration/generators/graph/utils/models/getUniqModels.spec.js +17 -28
- package/build/projectsGeneration/generators/graph/utils/models/getUsedModels.js +14 -19
- package/build/projectsGeneration/generators/graph/utils/models/getUsedModels.spec.js +40 -51
- package/build/projectsGeneration/generators/graph/utils/serviceModels/augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput.js +17 -26
- package/build/projectsGeneration/generators/graph/utils/serviceModels/augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput.spec.js +68 -68
- package/build/projectsGeneration/generators/graph/utils/serviceModels/getGraphTypesFromInputOutputModels.js +21 -42
- package/build/projectsGeneration/generators/graph/utils/serviceModels/getGraphTypesFromInputOutputModels.spec.js +85 -62
- package/build/projectsGeneration/generators/graph/utils/serviceModels/getPreparedModelsForGraph.js +20 -31
- package/build/projectsGeneration/generators/graph/utils/serviceModels/getPreparedModelsForGraph.spec.js +48 -49
- package/build/projectsGeneration/generators/graph/utils/serviceModels/getServiceModels.js +7 -7
- package/build/projectsGeneration/generators/graph/utils/serviceModels/getUsedGraphModelsForService.js +6 -6
- package/build/projectsGeneration/generators/graph/utils/serviceModels/getUsedGraphModelsForService.spec.js +13 -13
- package/build/projectsGeneration/generators/graph/utils/serviceModels/getUsedModelsForService.js +18 -21
- package/build/projectsGeneration/generators/graph/utils/serviceModels/getUsedModelsForService.spec.js +153 -153
- package/build/projectsGeneration/generators/graph/utils/serviceModels/prefixServiceModelsWithServiceName.js +25 -26
- package/build/projectsGeneration/generators/graph/utils/serviceModels/prefixServiceModelsWithServiceName.spec.js +69 -69
- package/build/projectsGeneration/generators/graph/utils/serviceModels/removeDublicatesFromServiceModels.js +4 -4
- package/build/projectsGeneration/generators/graph/utils/serviceModels/removeUnusedInOutputGeneralModels.js +6 -17
- package/build/projectsGeneration/generators/graph/utils/serviceModels/removeVoidsInServiceModels.js +5 -5
- package/build/projectsGeneration/generators/prisma/fieldIdTypeToPrismaType.js +3 -3
- package/build/projectsGeneration/generators/prisma/fieldTypeToPrismaType.js +3 -3
- package/build/projectsGeneration/generators/prisma/scheme/fields/genPrismaDefault.js +3 -3
- package/build/projectsGeneration/generators/prisma/scheme/fields/genPrismaDefault.spec.js +20 -20
- package/build/projectsGeneration/generators/prisma/scheme/fields/genPrismaField.js +7 -8
- package/build/projectsGeneration/generators/prisma/scheme/fields/genPrismaFieldFromExternalEntity.js +6 -7
- package/build/projectsGeneration/generators/prisma/scheme/fields/genPrismaFieldFromExternalEntity.spec.js +7 -19
- package/build/projectsGeneration/generators/prisma/scheme/fields/genPrismaIdField.js +10 -11
- package/build/projectsGeneration/generators/prisma/scheme/fields/genPrismaIdField.spec.js +13 -13
- package/build/projectsGeneration/generators/prisma/scheme/fields/genPrismaLinkFields.js +15 -18
- package/build/projectsGeneration/generators/prisma/scheme/fields/genPrismaLinkFields.spec.js +27 -28
- package/build/projectsGeneration/generators/prisma/scheme/fields/genPrismaScalarField.js +12 -14
- package/build/projectsGeneration/generators/prisma/scheme/fields/genPrismaScalarField.spec.js +29 -30
- package/build/projectsGeneration/generators/prisma/scheme/genPrismaEntity.js +23 -32
- package/build/projectsGeneration/generators/prisma/scheme/genPrismaEntity.spec.js +104 -47
- package/build/projectsGeneration/generators/prisma/scheme/genPrismaSchemaForEntities.js +5 -7
- package/build/projectsGeneration/generators/prisma/scheme/genPrismaSchemaForEntitiesWithClientAdnDb.js +19 -10
- package/build/projectsGeneration/generators/ui/componentNames/edit/getCompNameToEditScalar.js +3 -3
- package/build/projectsGeneration/generators/ui/componentNames/edit/getCompNamesToEditField.js +7 -7
- package/build/projectsGeneration/generators/ui/componentNames/edit/getCompNamesToEditIdField.js +3 -3
- package/build/projectsGeneration/generators/ui/componentNames/edit/getCompNamesToEditLinkField.js +5 -5
- package/build/projectsGeneration/generators/ui/componentNames/edit/getCompNamesToEditLinkField.spec.js +10 -10
- package/build/projectsGeneration/generators/ui/componentNames/edit/getCompNamesToEditScalarField.js +3 -3
- package/build/projectsGeneration/generators/ui/componentNames/show/getCompNameToShowScalar.js +3 -3
- package/build/projectsGeneration/generators/ui/componentNames/show/getCompNamesToShowField.js +7 -7
- package/build/projectsGeneration/generators/ui/componentNames/show/getCompNamesToShowIdField.js +3 -3
- package/build/projectsGeneration/generators/ui/componentNames/show/getCompNamesToShowLinkField.js +2 -14
- package/build/projectsGeneration/generators/ui/componentNames/show/getCompNamesToShowLinkField.spec.js +17 -17
- package/build/projectsGeneration/generators/ui/componentNames/show/getCompNamesToShowScalarField.js +3 -3
- package/build/projectsGeneration/generators/ui/getLinkShowComponent.spec.js +18 -18
- package/build/projectsGeneration/generators/ui/getScalarShowComponent.spec.js +11 -11
- package/build/projectsGeneration/generators/ui/getShowComponent.js +19 -20
- package/build/projectsGeneration/links/getLinksFromExternalEntities.js +2 -4
- package/build/projectsGeneration/links/getLinksFromExternalEntities.spec.js +11 -22
- package/build/projectsGeneration/links/getLinksOfEntities.js +6 -8
- package/build/projectsGeneration/links/getLinksOfEntities.spec.js +20 -31
- package/build/projectsGeneration/links/getLinksToExternalEntities.js +2 -4
- package/build/projectsGeneration/links/getLinksToExternalEntities.spec.js +11 -22
- package/build/projectsGeneration/metaUtils.js +17 -23
- package/build/projectsGeneration/modelsGeneration.serialization.spec.js +8 -8
- package/build/projectsGeneration/modules/addEmailModuleEntities.js +11 -11
- package/build/projectsGeneration/types.js +6 -6
- package/build/projectsGeneration/utils.js +24 -61
- package/build/refs/yup.spec.js +7 -7
- package/build/types/projectsGeneration/builders/InfoRegistryBuilder.d.ts +0 -4
- package/build/types/projectsGeneration/builders/SumRegistryBuilder.d.ts +0 -3
- package/build/types/projectsGeneration/fileCleaners/cleanFiles.d.ts +1 -1
- package/build/types/projectsGeneration/generateProject.d.ts +0 -5
- package/build/types/projectsGeneration/generators/fileTemplates/back/environment/chart/templates/back.d.ts +1 -1
- package/build/types/projectsGeneration/generators/fileTemplates/back/environment/chart/templates/ingress.d.ts +1 -1
- package/build/types/projectsGeneration/generators/fileTemplates/back/environment/dockerfileTmplBack.d.ts +1 -1
- package/build/types/projectsGeneration/generators/fileTemplates/back/environment/dockerfileTmplUI.d.ts +1 -1
- package/build/types/projectsGeneration/generators/fileTemplates/back/environment/src/integrationClients/IntegrationClient.d.ts +1 -1
- package/build/types/projectsGeneration/generators/fileTemplates/back/services/entity/config.d.ts +1 -1
- package/build/types/projectsGeneration/generators/fileTemplates/ui/environment/chart/templates/front.d.ts +1 -1
- package/build/types/projectsGeneration/generators/fileTemplates/ui/environment/chart/templates/ingress.d.ts +1 -1
- package/build/types/projectsGeneration/generators/fileTemplates/ui/environment/src/App.d.ts +1 -1
- package/build/utils/TermSignals.js +35 -43
- package/build/utils/cases.js +12 -18
- package/build/utils/getPkgManager.js +4 -4
- package/package.json +12 -24
- package/build/projectsGeneration/fileCleaners/back/cleanBack.js +0 -50
- package/build/types/projectsGeneration/fileCleaners/back/cleanBack.d.ts +0 -3
|
@@ -1,15 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -19,105 +8,69 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
19
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
9
|
});
|
|
21
10
|
};
|
|
22
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
-
function step(op) {
|
|
27
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
-
switch (op[0]) {
|
|
32
|
-
case 0: case 1: t = op; break;
|
|
33
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
-
default:
|
|
37
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
-
if (t[2]) _.ops.pop();
|
|
42
|
-
_.trys.pop(); continue;
|
|
43
|
-
}
|
|
44
|
-
op = body.call(thisArg, _);
|
|
45
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
50
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
51
|
-
if (ar || !(i in from)) {
|
|
52
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
53
|
-
ar[i] = from[i];
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
57
|
-
};
|
|
58
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
59
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
60
13
|
};
|
|
61
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
62
|
-
exports.generateFront = exports.
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
15
|
+
exports.generateFront = exports.generateFrontSrc = exports.generateFrontSrcEntity = exports.generateFrontSrcGetEntityValidation = exports.generateFrontSrcEntityIcon = exports.generateFrontSrcEntityTranslationsReports = exports.generateFrontSrcEntityTranslationsSumRegistries = exports.generateFrontSrcEntityTranslationsInfoRegistries = exports.generateFrontSrcEntityTranslationsCatalogs = exports.generateFrontSrcEntityTranslationsDocs = exports.generateBack = exports.generateBackDocs = exports.generateAdminAppDocsConfiguration = exports.generateBackDevEnumsInit = exports.generateBackDevEnums = exports.generateBackEntitiesEnumInit = exports.generateBackEnumsInit = exports.generateBackEntityEnum = exports.generateBackEnums = exports.generateBackDocsEntities = exports.generateBackDocsIntegrationClients = exports.generateBackDocsRestApis = exports.generateBackDocsSpec = exports.generateBackDocsConfiguration = exports.generateBackEnvs = exports.generateBackIntegrationClients = exports.generateBackSrc = void 0;
|
|
16
|
+
const path_1 = require("path");
|
|
17
|
+
const resources_1 = require("./generators/fileTemplates/ui/resources");
|
|
18
|
+
const ResourcesPage_1 = require("./generators/fileTemplates/ui/ResourcesPage");
|
|
19
|
+
const permissionsToGraphql_1 = require("./generators/fileTemplates/back/graph/permissionsToGraphql");
|
|
20
|
+
const routes_1 = __importDefault(require("./generators/fileTemplates/ui/environment/src/routes"));
|
|
21
|
+
const entityMapping_1 = require("./generators/fileTemplates/ui/entityMapping");
|
|
22
|
+
const Dashboard_1 = __importDefault(require("./generators/fileTemplates/ui/Dashboard"));
|
|
23
|
+
const Functions_1 = require("./generators/fileTemplates/ui/functions/Functions");
|
|
24
|
+
const getDefaultMenu_1 = require("./generators/fileTemplates/ui/getDefaultMenu");
|
|
25
|
+
const generateEnvironment_1 = require("./generateEnvironment");
|
|
26
|
+
const config_1 = require("./generators/fileTemplates/back/root/config/config");
|
|
27
|
+
const genGraphSchemesByLocalGenerator_1 = require("./genGraphSchemesByLocalGenerator");
|
|
28
|
+
const types_1 = require("./types");
|
|
29
|
+
const generateEntity_1 = require("./generateEntity");
|
|
30
|
+
const restRouter_1 = require("./generators/fileTemplates/back/root/restRouter");
|
|
31
|
+
const utils_1 = require("./utils");
|
|
32
|
+
const additionalRoutes_1 = require("./generators/fileTemplates/ui/additionalRoutes");
|
|
33
|
+
const getAdditionalMenu_1 = require("./generators/fileTemplates/ui/getAdditionalMenu");
|
|
34
|
+
const MetaPage_1 = require("./generators/fileTemplates/ui/MetaPage");
|
|
35
|
+
const AdditionalServices_1 = require("./generators/fileTemplates/back/services/AdditionalServices");
|
|
36
|
+
const uiLangDocsTmpl_1 = require("./generators/fileTemplates/ui/i18n/lang/uiLangDocsTmpl");
|
|
37
|
+
const fs_jetpack_1 = require("fs-jetpack");
|
|
38
|
+
const uiLangReportsTmpl_1 = require("./generators/fileTemplates/ui/i18n/lang/uiLangReportsTmpl");
|
|
39
|
+
const Icon_1 = require("./generators/fileTemplates/ui/pages/Icon");
|
|
40
|
+
const cases_1 = require("../utils/cases");
|
|
41
|
+
const uiLangCatalogsTmpl_1 = require("./generators/fileTemplates/ui/i18n/lang/uiLangCatalogsTmpl");
|
|
42
|
+
const uiLangInfoRegistriesTmpl_1 = require("./generators/fileTemplates/ui/i18n/lang/uiLangInfoRegistriesTmpl");
|
|
43
|
+
const uiLangSumRegistriesTmpl_1 = require("./generators/fileTemplates/ui/i18n/lang/uiLangSumRegistriesTmpl");
|
|
44
|
+
const args_1 = require("./args");
|
|
45
|
+
const defaultEnv_1 = require("./generators/fileTemplates/back/environment/defaultEnv");
|
|
46
|
+
const backDocsConfiguration_1 = __importDefault(require("./generators/fileTemplates/back/environment/docs/backDocsConfiguration"));
|
|
47
|
+
const adminAppDocsConfiguration_1 = require("./generators/fileTemplates/ui/environment/docs/adminAppDocsConfiguration");
|
|
48
|
+
const backDocsRestApi_1 = __importDefault(require("./generators/fileTemplates/back/environment/docs/backDocsRestApi"));
|
|
49
|
+
const backDocsEntity_1 = __importDefault(require("./generators/fileTemplates/back/environment/docs/backDocsEntity"));
|
|
50
|
+
const pluralize_1 = require("pluralize");
|
|
51
|
+
const baseResolvers_1 = __importDefault(require("./generators/fileTemplates/back/graph/help/baseResolvers"));
|
|
52
|
+
const HelpService_1 = __importDefault(require("./generators/fileTemplates/back/services/HelpService/HelpService"));
|
|
53
|
+
const BaseServices_1 = __importDefault(require("./generators/fileTemplates/back/services/BaseServices"));
|
|
54
|
+
const baseTypeDefs_1 = __importDefault(require("./generators/fileTemplates/back/graph/help/baseTypeDefs"));
|
|
55
|
+
const permissionsToGraphql_2 = __importDefault(require("./generators/fileTemplates/back/graph/help/permissionsToGraphql"));
|
|
56
|
+
const enum_1 = require("./generators/fileTemplates/back/enum");
|
|
57
|
+
const devEnum_1 = require("./generators/fileTemplates/back/devEnum");
|
|
58
|
+
const initCommon_1 = require("./generators/fileTemplates/back/initCommon");
|
|
59
|
+
const initDev_1 = require("./generators/fileTemplates/back/initDev");
|
|
60
|
+
const serviceConstrictors_1 = __importDefault(require("./generators/fileTemplates/back/services/serviceConstrictors"));
|
|
61
|
+
const Entities_1 = require("./generators/fileTemplates/back/Entities");
|
|
62
|
+
const initEntities_1 = require("./generators/fileTemplates/back/initEntities");
|
|
63
|
+
const getEntityValidation_1 = require("./generators/fileTemplates/ui/pages/getEntityValidation");
|
|
64
|
+
const elastic_1 = require("./generators/fileTemplates/back/elastic/elastic");
|
|
65
|
+
const backDocsIntegrationClient_1 = __importDefault(require("./generators/fileTemplates/back/environment/docs/backDocsIntegrationClient"));
|
|
66
|
+
const IntegrationClient_1 = __importDefault(require("./generators/fileTemplates/back/environment/src/integrationClients/IntegrationClient"));
|
|
67
|
+
const change_case_1 = require("change-case");
|
|
68
|
+
const types_2 = __importDefault(require("./generators/fileTemplates/back/environment/src/integrationClients/types"));
|
|
69
|
+
const backDocSpec_1 = __importDefault(require("./generators/fileTemplates/back/environment/docs/backDocSpec"));
|
|
70
|
+
const generateAdditionalService_1 = require("./generateAdditionalService");
|
|
71
|
+
const IntegrationClients_1 = __importDefault(require("./generators/fileTemplates/back/environment/src/integrationClients/IntegrationClients"));
|
|
72
|
+
const integrationClientConstrictors_1 = __importDefault(require("./generators/fileTemplates/back/environment/src/integrationClients/integrationClientConstrictors"));
|
|
73
|
+
const cleanFiles_1 = __importDefault(require("./fileCleaners/cleanFiles"));
|
|
121
74
|
// Бек (generateBack)
|
|
122
75
|
// Исходники бека (generateBackSrc)
|
|
123
76
|
// Исходники бека (generateBackSrcEntity)
|
|
@@ -128,649 +81,394 @@ var cleanFiles_1 = __importDefault(require("./fileCleaners/cleanFiles"));
|
|
|
128
81
|
// Исходники фронта (generateFrontSrcEntity)
|
|
129
82
|
// GitlabCi фронта (generateFrontGitlabCi)
|
|
130
83
|
// Helm чарты фронта (generateFrontHelm)
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
return [2 /*return*/];
|
|
148
|
-
});
|
|
149
|
-
});
|
|
150
|
-
};
|
|
151
|
-
var generateBackSrc = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
152
|
-
return __generator(this, function (_a) {
|
|
153
|
-
switch (_a.label) {
|
|
154
|
-
case 0:
|
|
155
|
-
// log.info('generateBackSrc');
|
|
156
|
-
return [4 /*yield*/, Promise.all([
|
|
157
|
-
(0, fs_jetpack_1.write)((0, path_1.join)(args.options.detachedBackProject, 'src', 'config', 'config.ts'), (0, config_1.configItemsTmpl)(args)),
|
|
158
|
-
generateHelpService(args, true),
|
|
159
|
-
])];
|
|
160
|
-
case 1:
|
|
161
|
-
// log.info('generateBackSrc');
|
|
162
|
-
_a.sent();
|
|
163
|
-
return [4 /*yield*/, Promise.all(args.entities.map(function (entity) {
|
|
164
|
-
return (0, exports.generateBackSrcEntity)((0, args_1.prepareEntityWideGenerationArgs)(args, entity));
|
|
165
|
-
}))];
|
|
166
|
-
case 2:
|
|
167
|
-
_a.sent();
|
|
168
|
-
(0, exports.generateBackIntegrationClients)(args);
|
|
169
|
-
return [2 /*return*/];
|
|
170
|
-
}
|
|
171
|
-
});
|
|
172
|
-
}); };
|
|
84
|
+
const generateHelpService = (args, typesOnly = false) => __awaiter(void 0, void 0, void 0, function* () {
|
|
85
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(args.options.detachedBackProject, 'src', 'adm', 'graph', 'services', 'help', 'baseTypeDefs.ts'), (0, baseTypeDefs_1.default)(args));
|
|
86
|
+
if (!typesOnly) {
|
|
87
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(args.options.detachedBackProject, 'src', 'adm', 'graph', 'services', 'help', 'baseResolvers.ts'), (0, baseResolvers_1.default)());
|
|
88
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(args.options.detachedBackProject, 'src', 'adm', 'graph', 'services', 'help', 'permissionsToGraphql.ts'), (0, permissionsToGraphql_2.default)());
|
|
89
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(args.options.detachedBackProject, 'src', 'adm', 'services', 'HelpService', 'HelpService.ts'), (0, HelpService_1.default)(args));
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
const generateBackSrc = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
93
|
+
// log.info('generateBackSrc');
|
|
94
|
+
yield Promise.all([
|
|
95
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(args.options.detachedBackProject, 'src', 'config', 'config.ts'), (0, config_1.configItemsTmpl)(args)),
|
|
96
|
+
generateHelpService(args, true),
|
|
97
|
+
]);
|
|
98
|
+
(0, exports.generateBackIntegrationClients)(args);
|
|
99
|
+
});
|
|
173
100
|
exports.generateBackSrc = generateBackSrc;
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
(0, fs_jetpack_1.write)((0, path_1.join)(clientFolder, "types.ts"), (0, types_2.default)(args, client));
|
|
182
|
-
}
|
|
183
|
-
return [2 /*return*/];
|
|
184
|
-
});
|
|
185
|
-
}); };
|
|
101
|
+
const generateBackIntegrationClients = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
102
|
+
for (const client of args.system.integrationClients) {
|
|
103
|
+
const clientFolder = (0, path_1.join)(args.options.detachedBackProject, 'src', 'integrationClients', `${client.name}`);
|
|
104
|
+
(0, utils_1.writeFileIfNotExists)((0, path_1.join)(clientFolder, `${(0, change_case_1.pascalCase)(client.name)}Client.ts`), (0, IntegrationClient_1.default)(args, client));
|
|
105
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(clientFolder, `types.ts`), (0, types_2.default)(args, client));
|
|
106
|
+
}
|
|
107
|
+
});
|
|
186
108
|
exports.generateBackIntegrationClients = generateBackIntegrationClients;
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
}); };
|
|
192
|
-
exports.generateBackGitlabCi = generateBackGitlabCi;
|
|
193
|
-
var generateBackHelm = function (_args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
194
|
-
return __generator(this, function (_a) {
|
|
195
|
-
return [2 /*return*/];
|
|
196
|
-
});
|
|
197
|
-
}); };
|
|
198
|
-
exports.generateBackHelm = generateBackHelm;
|
|
199
|
-
var generateBackEnvs = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
200
|
-
var filePath;
|
|
201
|
-
return __generator(this, function (_a) {
|
|
202
|
-
filePath = (0, path_1.join)(args.options.detachedBackProject, 'config', 'default.json');
|
|
203
|
-
(0, fs_jetpack_1.write)(filePath, (0, defaultEnv_1.backDefaultEnv)(args));
|
|
204
|
-
return [2 /*return*/];
|
|
205
|
-
});
|
|
206
|
-
}); };
|
|
109
|
+
const generateBackEnvs = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
110
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'config', 'default.json');
|
|
111
|
+
(0, fs_jetpack_1.write)(filePath, (0, defaultEnv_1.backDefaultEnv)(args));
|
|
112
|
+
});
|
|
207
113
|
exports.generateBackEnvs = generateBackEnvs;
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
(0, fs_jetpack_1.write)(filePath, (0, backDocsConfiguration_1.default)(args));
|
|
213
|
-
return [2 /*return*/];
|
|
214
|
-
});
|
|
215
|
-
}); };
|
|
114
|
+
const generateBackDocsConfiguration = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
115
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'docs', 'configuration.md');
|
|
116
|
+
(0, fs_jetpack_1.write)(filePath, (0, backDocsConfiguration_1.default)(args));
|
|
117
|
+
});
|
|
216
118
|
exports.generateBackDocsConfiguration = generateBackDocsConfiguration;
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
(0, fs_jetpack_1.write)(filePath, (0, backDocSpec_1.default)(args));
|
|
222
|
-
return [2 /*return*/];
|
|
223
|
-
});
|
|
224
|
-
}); };
|
|
119
|
+
const generateBackDocsSpec = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
120
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'docs', 'spec.md');
|
|
121
|
+
(0, fs_jetpack_1.write)(filePath, (0, backDocSpec_1.default)(args));
|
|
122
|
+
});
|
|
225
123
|
exports.generateBackDocsSpec = generateBackDocsSpec;
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
(0, fs_jetpack_1.write)(filePath, (0, backDocsRestApi_1.default)(args, restApi));
|
|
233
|
-
}
|
|
234
|
-
return [2 /*return*/];
|
|
235
|
-
});
|
|
236
|
-
}); };
|
|
124
|
+
const generateBackDocsRestApis = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
125
|
+
for (const restApi of args.system.restApis) {
|
|
126
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'docs', 'restApis', `${restApi.name}.md`);
|
|
127
|
+
(0, fs_jetpack_1.write)(filePath, (0, backDocsRestApi_1.default)(args, restApi));
|
|
128
|
+
}
|
|
129
|
+
});
|
|
237
130
|
exports.generateBackDocsRestApis = generateBackDocsRestApis;
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
(0, fs_jetpack_1.write)(filePath, (0, backDocsIntegrationClient_1.default)(args, client));
|
|
245
|
-
}
|
|
246
|
-
return [2 /*return*/];
|
|
247
|
-
});
|
|
248
|
-
}); };
|
|
131
|
+
const generateBackDocsIntegrationClients = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
132
|
+
for (const client of args.system.integrationClients) {
|
|
133
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'docs', 'integrationClients', `${client.name}.md`);
|
|
134
|
+
(0, fs_jetpack_1.write)(filePath, (0, backDocsIntegrationClient_1.default)(args, client));
|
|
135
|
+
}
|
|
136
|
+
});
|
|
249
137
|
exports.generateBackDocsIntegrationClients = generateBackDocsIntegrationClients;
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
}))];
|
|
257
|
-
case 1:
|
|
258
|
-
_a.sent();
|
|
259
|
-
return [2 /*return*/];
|
|
260
|
-
}
|
|
261
|
-
});
|
|
262
|
-
}); };
|
|
138
|
+
const generateBackDocsEntities = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
139
|
+
yield Promise.all(args.entities.map((entity) => {
|
|
140
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'docs', (0, pluralize_1.plural)(entity.type), `${entity.name}.md`);
|
|
141
|
+
return (0, fs_jetpack_1.write)(filePath, (0, backDocsEntity_1.default)((0, args_1.prepareEntityWideGenerationArgs)(args, entity)));
|
|
142
|
+
}));
|
|
143
|
+
});
|
|
263
144
|
exports.generateBackDocsEntities = generateBackDocsEntities;
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
}))];
|
|
276
|
-
case 1:
|
|
277
|
-
_a.sent();
|
|
278
|
-
return [2 /*return*/];
|
|
279
|
-
}
|
|
280
|
-
});
|
|
281
|
-
}); };
|
|
145
|
+
const generateBackEnums = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
146
|
+
yield Promise.all(args.entities
|
|
147
|
+
.filter((e) => e.predefinedElements.length > 0)
|
|
148
|
+
.map((entity) => {
|
|
149
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'src', 'types', `${(0, cases_1.pascal)((0, pluralize_1.singular)(entity.name))}.ts`);
|
|
150
|
+
return (0, fs_jetpack_1.write)(filePath, (0, enum_1.enumTmpl)({
|
|
151
|
+
entity,
|
|
152
|
+
options: args.options,
|
|
153
|
+
}));
|
|
154
|
+
}));
|
|
155
|
+
});
|
|
282
156
|
exports.generateBackEnums = generateBackEnums;
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
return
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
}))];
|
|
291
|
-
});
|
|
292
|
-
}); };
|
|
157
|
+
const generateBackEntityEnum = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
158
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'src', 'types', 'Entity.ts');
|
|
159
|
+
return (0, fs_jetpack_1.write)(filePath, (0, Entities_1.Entities)({
|
|
160
|
+
entities: args.entities,
|
|
161
|
+
options: args.options,
|
|
162
|
+
}));
|
|
163
|
+
});
|
|
293
164
|
exports.generateBackEntityEnum = generateBackEntityEnum;
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
}))];
|
|
306
|
-
case 1:
|
|
307
|
-
_a.sent();
|
|
308
|
-
return [2 /*return*/];
|
|
309
|
-
}
|
|
310
|
-
});
|
|
311
|
-
}); };
|
|
165
|
+
const generateBackEnumsInit = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
166
|
+
yield Promise.all(args.entities
|
|
167
|
+
.filter((e) => e.predefinedElements.length > 0)
|
|
168
|
+
.map((entity) => {
|
|
169
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'src', 'init', 'common', `init${(0, cases_1.pascal)(entity.name)}.ts`);
|
|
170
|
+
return (0, fs_jetpack_1.write)(filePath, (0, initCommon_1.initCommonEnumTmpl)({
|
|
171
|
+
entity,
|
|
172
|
+
options: args.options,
|
|
173
|
+
}));
|
|
174
|
+
}));
|
|
175
|
+
});
|
|
312
176
|
exports.generateBackEnumsInit = generateBackEnumsInit;
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
return
|
|
316
|
-
|
|
317
|
-
return [2 /*return*/, (0, fs_jetpack_1.write)(filePath, (0, initEntities_1.initEntities)(args))];
|
|
318
|
-
});
|
|
319
|
-
}); };
|
|
177
|
+
const generateBackEntitiesEnumInit = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
178
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'src', 'init', 'common', 'initEntities.ts');
|
|
179
|
+
return (0, fs_jetpack_1.write)(filePath, (0, initEntities_1.initEntities)(args));
|
|
180
|
+
});
|
|
320
181
|
exports.generateBackEntitiesEnumInit = generateBackEntitiesEnumInit;
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
}))];
|
|
333
|
-
case 1:
|
|
334
|
-
_a.sent();
|
|
335
|
-
return [2 /*return*/];
|
|
336
|
-
}
|
|
337
|
-
});
|
|
338
|
-
}); };
|
|
182
|
+
const generateBackDevEnums = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
183
|
+
yield Promise.all(args.entities
|
|
184
|
+
.filter((e) => e.devPerefinedElements.length > 0)
|
|
185
|
+
.map((entity) => {
|
|
186
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'src', 'types', `Dev${(0, cases_1.pascal)((0, pluralize_1.singular)(entity.name))}.ts`);
|
|
187
|
+
return (0, fs_jetpack_1.write)(filePath, (0, devEnum_1.devEnumTmpl)({
|
|
188
|
+
entity,
|
|
189
|
+
options: args.options,
|
|
190
|
+
}));
|
|
191
|
+
}));
|
|
192
|
+
});
|
|
339
193
|
exports.generateBackDevEnums = generateBackDevEnums;
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
}))];
|
|
352
|
-
case 1:
|
|
353
|
-
_a.sent();
|
|
354
|
-
return [2 /*return*/];
|
|
355
|
-
}
|
|
356
|
-
});
|
|
357
|
-
}); };
|
|
194
|
+
const generateBackDevEnumsInit = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
195
|
+
yield Promise.all(args.entities
|
|
196
|
+
.filter((e) => e.devPerefinedElements.length > 0)
|
|
197
|
+
.map((entity) => {
|
|
198
|
+
const filePath = (0, path_1.join)(args.options.detachedBackProject, 'src', 'init', 'dev', `init${(0, cases_1.pascal)(entity.name)}.ts`);
|
|
199
|
+
return (0, fs_jetpack_1.write)(filePath, (0, initDev_1.initDevEnumTmpl)({
|
|
200
|
+
entity,
|
|
201
|
+
options: args.options,
|
|
202
|
+
}));
|
|
203
|
+
}));
|
|
204
|
+
});
|
|
358
205
|
exports.generateBackDevEnumsInit = generateBackDevEnumsInit;
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
(0, fs_jetpack_1.write)(filePath, (0, adminAppDocsConfiguration_1.adminAppDocsConfiguration)(args));
|
|
364
|
-
return [2 /*return*/];
|
|
365
|
-
});
|
|
366
|
-
}); };
|
|
206
|
+
const generateAdminAppDocsConfiguration = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
207
|
+
const filePath = (0, path_1.join)(args.options.detachedUiProject, 'docs', 'configuration.md');
|
|
208
|
+
(0, fs_jetpack_1.write)(filePath, (0, adminAppDocsConfiguration_1.adminAppDocsConfiguration)(args));
|
|
209
|
+
});
|
|
367
210
|
exports.generateAdminAppDocsConfiguration = generateAdminAppDocsConfiguration;
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
])];
|
|
385
|
-
case 1:
|
|
386
|
-
_a.sent();
|
|
387
|
-
return [2 /*return*/];
|
|
388
|
-
}
|
|
389
|
-
});
|
|
390
|
-
}); };
|
|
211
|
+
const generateBackDocs = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
212
|
+
yield Promise.all([
|
|
213
|
+
(0, exports.generateBackDocsSpec)(args),
|
|
214
|
+
(0, exports.generateBackDocsConfiguration)(args),
|
|
215
|
+
(0, exports.generateBackDocsRestApis)(args),
|
|
216
|
+
(0, exports.generateBackDocsIntegrationClients)(args),
|
|
217
|
+
(0, exports.generateBackDocsEntities)(args),
|
|
218
|
+
(0, exports.generateBackEnums)(args),
|
|
219
|
+
(0, exports.generateBackEnumsInit)(args),
|
|
220
|
+
(0, exports.generateBackEntityEnum)(args),
|
|
221
|
+
(0, exports.generateBackEntitiesEnumInit)(args),
|
|
222
|
+
(0, exports.generateBackDevEnums)(args),
|
|
223
|
+
(0, exports.generateBackDevEnumsInit)(args),
|
|
224
|
+
(0, exports.generateAdminAppDocsConfiguration)(args),
|
|
225
|
+
]);
|
|
226
|
+
});
|
|
391
227
|
exports.generateBackDocs = generateBackDocs;
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
(0, exports.generateBackEnvs)(args),
|
|
402
|
-
(0, exports.generateBackDocs)(args),
|
|
403
|
-
(0, elastic_1.generateBackElasticBootstrap)(args),
|
|
404
|
-
])];
|
|
405
|
-
case 1:
|
|
406
|
-
// log.info('generateBack');
|
|
407
|
-
_a.sent();
|
|
408
|
-
return [2 /*return*/];
|
|
409
|
-
}
|
|
410
|
-
});
|
|
411
|
-
}); };
|
|
228
|
+
const generateBack = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
229
|
+
// log.info('generateBack');
|
|
230
|
+
yield Promise.all([
|
|
231
|
+
(0, exports.generateBackSrc)(args),
|
|
232
|
+
(0, exports.generateBackEnvs)(args),
|
|
233
|
+
(0, exports.generateBackDocs)(args),
|
|
234
|
+
(0, elastic_1.generateBackElasticBootstrap)(args),
|
|
235
|
+
]);
|
|
236
|
+
});
|
|
412
237
|
exports.generateBack = generateBack;
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
(0, fs_jetpack_1.write)(filePath, (0, uiLangDocsTmpl_1.uiTranslationsLangDocsTmpl)(args, lang.id));
|
|
421
|
-
}
|
|
422
|
-
return [2 /*return*/];
|
|
423
|
-
});
|
|
424
|
-
}); };
|
|
238
|
+
const generateFrontSrcEntityTranslationsDocs = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
239
|
+
// log.info('generateFrontSrcEntityTranslationsDocs');
|
|
240
|
+
for (const lang of args.system.languages) {
|
|
241
|
+
const filePath = (0, path_1.join)(args.options.detachedUiProject, `src/i18n/${lang.id}/${lang.id}Docs.ts`);
|
|
242
|
+
(0, fs_jetpack_1.write)(filePath, (0, uiLangDocsTmpl_1.uiTranslationsLangDocsTmpl)(args, lang.id));
|
|
243
|
+
}
|
|
244
|
+
});
|
|
425
245
|
exports.generateFrontSrcEntityTranslationsDocs = generateFrontSrcEntityTranslationsDocs;
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
(0, fs_jetpack_1.write)(filePath, (0, uiLangCatalogsTmpl_1.uiTranslationsLangCatalogsTmpl)(args, lang.id));
|
|
434
|
-
}
|
|
435
|
-
return [2 /*return*/];
|
|
436
|
-
});
|
|
437
|
-
}); };
|
|
246
|
+
const generateFrontSrcEntityTranslationsCatalogs = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
247
|
+
// log.info('generateFrontSrcEntityTranslationsCatalogs');
|
|
248
|
+
for (const lang of args.system.languages) {
|
|
249
|
+
const filePath = (0, path_1.join)(args.options.detachedUiProject, `src/i18n/${lang.id}/${lang.id}Catalogs.ts`);
|
|
250
|
+
(0, fs_jetpack_1.write)(filePath, (0, uiLangCatalogsTmpl_1.uiTranslationsLangCatalogsTmpl)(args, lang.id));
|
|
251
|
+
}
|
|
252
|
+
});
|
|
438
253
|
exports.generateFrontSrcEntityTranslationsCatalogs = generateFrontSrcEntityTranslationsCatalogs;
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
(0, fs_jetpack_1.write)(filePath, (0, uiLangInfoRegistriesTmpl_1.uiTranslationsLangInfoRegistriesTmpl)(args, lang.id));
|
|
447
|
-
}
|
|
448
|
-
return [2 /*return*/];
|
|
449
|
-
});
|
|
450
|
-
}); };
|
|
254
|
+
const generateFrontSrcEntityTranslationsInfoRegistries = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
255
|
+
// log.info('generateFrontSrcEntityTranslationsInfoRegistries');
|
|
256
|
+
for (const lang of args.system.languages) {
|
|
257
|
+
const filePath = (0, path_1.join)(args.options.detachedUiProject, `src/i18n/${lang.id}/${lang.id}InfoRegistries.ts`);
|
|
258
|
+
(0, fs_jetpack_1.write)(filePath, (0, uiLangInfoRegistriesTmpl_1.uiTranslationsLangInfoRegistriesTmpl)(args, lang.id));
|
|
259
|
+
}
|
|
260
|
+
});
|
|
451
261
|
exports.generateFrontSrcEntityTranslationsInfoRegistries = generateFrontSrcEntityTranslationsInfoRegistries;
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
(0, fs_jetpack_1.write)(filePath, (0, uiLangSumRegistriesTmpl_1.uiTranslationsLangSumRegistriesTmpl)(args, lang.id));
|
|
460
|
-
}
|
|
461
|
-
return [2 /*return*/];
|
|
462
|
-
});
|
|
463
|
-
}); };
|
|
262
|
+
const generateFrontSrcEntityTranslationsSumRegistries = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
263
|
+
// log.info('generateFrontSrcEntityTranslationsSumRegistries');
|
|
264
|
+
for (const lang of args.system.languages) {
|
|
265
|
+
const filePath = (0, path_1.join)(args.options.detachedUiProject, `src/i18n/${lang.id}/${lang.id}SumRegistries.ts`);
|
|
266
|
+
(0, fs_jetpack_1.write)(filePath, (0, uiLangSumRegistriesTmpl_1.uiTranslationsLangSumRegistriesTmpl)(args, lang.id));
|
|
267
|
+
}
|
|
268
|
+
});
|
|
464
269
|
exports.generateFrontSrcEntityTranslationsSumRegistries = generateFrontSrcEntityTranslationsSumRegistries;
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
(0, fs_jetpack_1.write)(filePath, (0, uiLangReportsTmpl_1.uiTranslationsLangReportsTmpl)(args, lang.id));
|
|
473
|
-
}
|
|
474
|
-
return [2 /*return*/];
|
|
475
|
-
});
|
|
476
|
-
}); };
|
|
270
|
+
const generateFrontSrcEntityTranslationsReports = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
271
|
+
// log.info('generateFrontSrcEntityTranslationsReports');
|
|
272
|
+
for (const lang of args.system.languages) {
|
|
273
|
+
const filePath = (0, path_1.join)(args.options.detachedUiProject, `src/i18n/${lang.id}/${lang.id}Reports.ts`);
|
|
274
|
+
(0, fs_jetpack_1.write)(filePath, (0, uiLangReportsTmpl_1.uiTranslationsLangReportsTmpl)(args, lang.id));
|
|
275
|
+
}
|
|
276
|
+
});
|
|
477
277
|
exports.generateFrontSrcEntityTranslationsReports = generateFrontSrcEntityTranslationsReports;
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
(0, fs_jetpack_1.write)(filePath, (0, Icon_1.uiEntityIconTmpl)(entityWideGenerationArgs));
|
|
484
|
-
return [2 /*return*/];
|
|
485
|
-
});
|
|
486
|
-
}); };
|
|
278
|
+
const generateFrontSrcEntityIcon = (entityWideGenerationArgs) => __awaiter(void 0, void 0, void 0, function* () {
|
|
279
|
+
const { entity: { name }, } = entityWideGenerationArgs;
|
|
280
|
+
const filePath = (0, path_1.join)(entityWideGenerationArgs.options.detachedUiProject, `src/adm/pages/${name}/${(0, cases_1.pascalSingular)(name)}Icon.tsx`);
|
|
281
|
+
(0, fs_jetpack_1.write)(filePath, (0, Icon_1.uiEntityIconTmpl)(entityWideGenerationArgs));
|
|
282
|
+
});
|
|
487
283
|
exports.generateFrontSrcEntityIcon = generateFrontSrcEntityIcon;
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
return [2 /*return*/];
|
|
495
|
-
});
|
|
496
|
-
}); };
|
|
284
|
+
const generateFrontSrcGetEntityValidation = (entityWideGenerationArgs) => __awaiter(void 0, void 0, void 0, function* () {
|
|
285
|
+
const { entity: { name }, } = entityWideGenerationArgs;
|
|
286
|
+
// src/adm/pages/milesReceivedForFlightsByManagerDocuments/getMilesReceivedForFlightsByManagerDocumentValidation.tsx
|
|
287
|
+
const filePath = (0, path_1.join)(entityWideGenerationArgs.options.detachedUiProject, `src/adm/pages/${name}/get${(0, cases_1.pascalSingular)(name)}Validation.tsx`);
|
|
288
|
+
(0, fs_jetpack_1.write)(filePath, (0, getEntityValidation_1.uiGetEntityValidationTmpl)(entityWideGenerationArgs));
|
|
289
|
+
});
|
|
497
290
|
exports.generateFrontSrcGetEntityValidation = generateFrontSrcGetEntityValidation;
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
return [4 /*yield*/, (0, exports.generateFrontSrcEntityIcon)(entityWideGenerationArgs)];
|
|
505
|
-
case 1:
|
|
506
|
-
// log.info('generateFrontSrcEntity');
|
|
507
|
-
// log.info(typeof entityWideGenerationArgs);
|
|
508
|
-
_a.sent();
|
|
509
|
-
return [4 /*yield*/, (0, exports.generateFrontSrcGetEntityValidation)(entityWideGenerationArgs)];
|
|
510
|
-
case 2:
|
|
511
|
-
_a.sent();
|
|
512
|
-
return [2 /*return*/];
|
|
513
|
-
}
|
|
514
|
-
});
|
|
515
|
-
}); };
|
|
291
|
+
const generateFrontSrcEntity = (entityWideGenerationArgs) => __awaiter(void 0, void 0, void 0, function* () {
|
|
292
|
+
// log.info('generateFrontSrcEntity');
|
|
293
|
+
// log.info(typeof entityWideGenerationArgs);
|
|
294
|
+
yield (0, exports.generateFrontSrcEntityIcon)(entityWideGenerationArgs);
|
|
295
|
+
yield (0, exports.generateFrontSrcGetEntityValidation)(entityWideGenerationArgs);
|
|
296
|
+
});
|
|
516
297
|
exports.generateFrontSrcEntity = generateFrontSrcEntity;
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
(0, exports.generateFrontSrcEntityTranslationsCatalogs)(args),
|
|
528
|
-
(0, exports.generateFrontSrcEntityTranslationsSumRegistries)(args),
|
|
529
|
-
(0, exports.generateFrontSrcEntityTranslationsInfoRegistries)(args),
|
|
530
|
-
(0, exports.generateFrontSrcEntityTranslationsReports)(args),
|
|
531
|
-
])];
|
|
532
|
-
case 2:
|
|
533
|
-
_a.sent();
|
|
534
|
-
return [2 /*return*/];
|
|
535
|
-
}
|
|
536
|
-
});
|
|
537
|
-
}); };
|
|
298
|
+
const generateFrontSrc = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
299
|
+
yield Promise.all(args.entities.map((entity) => (0, exports.generateFrontSrcEntity)((0, args_1.prepareEntityWideGenerationArgs)(args, entity))));
|
|
300
|
+
yield Promise.all([
|
|
301
|
+
(0, exports.generateFrontSrcEntityTranslationsDocs)(args),
|
|
302
|
+
(0, exports.generateFrontSrcEntityTranslationsCatalogs)(args),
|
|
303
|
+
(0, exports.generateFrontSrcEntityTranslationsSumRegistries)(args),
|
|
304
|
+
(0, exports.generateFrontSrcEntityTranslationsInfoRegistries)(args),
|
|
305
|
+
(0, exports.generateFrontSrcEntityTranslationsReports)(args),
|
|
306
|
+
]);
|
|
307
|
+
});
|
|
538
308
|
exports.generateFrontSrc = generateFrontSrc;
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
var generateFrontHelm = function (_args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
546
|
-
return __generator(this, function (_a) {
|
|
547
|
-
return [2 /*return*/];
|
|
548
|
-
});
|
|
549
|
-
}); };
|
|
550
|
-
exports.generateFrontHelm = generateFrontHelm;
|
|
551
|
-
var generateFront = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
552
|
-
return __generator(this, function (_a) {
|
|
553
|
-
switch (_a.label) {
|
|
554
|
-
case 0:
|
|
555
|
-
// log.info('generateFront');
|
|
556
|
-
return [4 /*yield*/, Promise.all([
|
|
557
|
-
(0, exports.generateFrontSrc)(args),
|
|
558
|
-
(0, exports.generateFrontGitlabCi)(args),
|
|
559
|
-
(0, exports.generateFrontHelm)(args),
|
|
560
|
-
])];
|
|
561
|
-
case 1:
|
|
562
|
-
// log.info('generateFront');
|
|
563
|
-
_a.sent();
|
|
564
|
-
return [2 /*return*/];
|
|
565
|
-
}
|
|
566
|
-
});
|
|
567
|
-
}); };
|
|
309
|
+
const generateFront = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
310
|
+
// log.info('generateFront');
|
|
311
|
+
yield Promise.all([
|
|
312
|
+
(0, exports.generateFrontSrc)(args),
|
|
313
|
+
]);
|
|
314
|
+
});
|
|
568
315
|
exports.generateFront = generateFront;
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
// Resources page
|
|
727
|
-
// src/dc/entityMapping.ts genUiEntityMapping uiEntityMappingTmpl
|
|
728
|
-
if (opts.genUiEntityMapping) {
|
|
729
|
-
generatedResources = (0, entityMapping_1.uiEntityMappingTmpl)(args, opts);
|
|
730
|
-
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'entityMapping.ts'), generatedResources);
|
|
731
|
-
}
|
|
732
|
-
if (!opts.genUiMenu) return [3 /*break*/, 10];
|
|
733
|
-
generatedSubMenu = (0, getDefaultMenu_1.uiGetDefaultMenuTmpl)(args);
|
|
734
|
-
generatedAdditionalMenu = (0, getAdditionalMenu_1.uiGetAdditionalMenuTmpl)();
|
|
735
|
-
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'getDefaultMenu.ts'), generatedSubMenu);
|
|
736
|
-
return [4 /*yield*/, (0, utils_1.writeFileIfNotExists)((0, path_1.join)(prjUiSrcPrefixedDir, 'getAdditionalMenu.ts'), generatedAdditionalMenu)];
|
|
737
|
-
case 9:
|
|
738
|
-
_b.sent();
|
|
739
|
-
_b.label = 10;
|
|
740
|
-
case 10:
|
|
741
|
-
// Resources page
|
|
742
|
-
// src/dc/routes.tsx genUiRoutes uiRoutesTmpl
|
|
743
|
-
if (opts.genUiRoutes) {
|
|
744
|
-
generatedResources = (0, routes_1.default)(args);
|
|
745
|
-
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'routes.tsx'), generatedResources);
|
|
746
|
-
}
|
|
747
|
-
generatedUiAdditionalRoutesTmpl = (0, additionalRoutes_1.uiAdditionalRoutesTmpl)();
|
|
748
|
-
return [4 /*yield*/, (0, utils_1.writeFileIfNotExists)((0, path_1.join)(prjUiSrcPrefixedDir, 'additionalRoutes.tsx'), generatedUiAdditionalRoutesTmpl)
|
|
749
|
-
// Functions page
|
|
750
|
-
// src/dc/functions/Functions.tsx
|
|
751
|
-
];
|
|
752
|
-
case 11:
|
|
753
|
-
_b.sent();
|
|
754
|
-
// Functions page
|
|
755
|
-
// src/dc/functions/Functions.tsx
|
|
756
|
-
if (opts.genUiFunctions) {
|
|
757
|
-
generatedResources = (0, Functions_1.uiFunctionsTmpl)(opts);
|
|
758
|
-
uiFunctionsDir = (0, path_1.join)(prjUiSrcPrefixedDir, 'functions');
|
|
759
|
-
(0, fs_jetpack_1.write)((0, path_1.join)(uiFunctionsDir, 'Functions.tsx'), generatedResources);
|
|
760
|
-
}
|
|
761
|
-
if (!opts.genUiDashboard) return [3 /*break*/, 13];
|
|
762
|
-
generatedResources = (0, Dashboard_1.default)();
|
|
763
|
-
return [4 /*yield*/, (0, utils_1.writeFileIfNotExists)((0, path_1.join)(prjUiSrcPrefixedDir, 'Dashboard.tsx'), generatedResources)];
|
|
764
|
-
case 12:
|
|
765
|
-
_b.sent();
|
|
766
|
-
_b.label = 13;
|
|
767
|
-
case 13: return [4 /*yield*/, (0, generateEnvironment_1.generateEnvironment)(args)];
|
|
768
|
-
case 14:
|
|
769
|
-
_b.sent();
|
|
770
|
-
return [2 /*return*/];
|
|
771
|
-
}
|
|
772
|
-
});
|
|
773
|
-
});
|
|
774
|
-
};
|
|
316
|
+
const generateProject = (system, initialOpts = types_1.defaultBootstrapEntityOptions) => __awaiter(void 0, void 0, void 0, function* () {
|
|
317
|
+
const dir = (0, fs_jetpack_1.cwd)('..').cwd();
|
|
318
|
+
const detachedBackProject = (0, path_1.join)(dir, `${initialOpts.projectPrefix}-back`);
|
|
319
|
+
const detachedUiProject = (0, path_1.join)(dir, `${initialOpts.projectPrefix}-ui`);
|
|
320
|
+
;
|
|
321
|
+
const opts = Object.assign(Object.assign(Object.assign({}, types_1.defaultBootstrapEntityOptions), initialOpts), { detachedBackProject,
|
|
322
|
+
detachedUiProject });
|
|
323
|
+
const args = (0, args_1.prepareProjectWideGenerationArgs)(system, opts);
|
|
324
|
+
yield (0, exports.generateBack)(args);
|
|
325
|
+
yield (0, exports.generateFront)(args);
|
|
326
|
+
const { entities } = args;
|
|
327
|
+
let prjBackSrcPrefixedDir = '';
|
|
328
|
+
const prjDetachedBackSrcDir = (0, path_1.join)(opts.detachedBackProject, 'src');
|
|
329
|
+
// if (opts.detachedBackProject) {
|
|
330
|
+
prjBackSrcPrefixedDir = (0, path_1.join)(prjDetachedBackSrcDir, 'adm');
|
|
331
|
+
// } else {
|
|
332
|
+
// prjBackSrcPrefixedDir = join(__dirname, '..', '..', prefix);
|
|
333
|
+
// }
|
|
334
|
+
// Pre grapgql types compose generation
|
|
335
|
+
yield Promise.all([
|
|
336
|
+
(0, cleanFiles_1.default)(args),
|
|
337
|
+
...entities.map((entity) => (0, generateEntity_1.generateEntity)((0, args_1.prepareEntityWideGenerationArgs)(Object.assign(Object.assign({}, args), { options: Object.assign(Object.assign({}, opts), { typesOnly: true }) }), entity))),
|
|
338
|
+
...system.additionalServices.map((service) => (0, generateAdditionalService_1.generateAdditionalService)((0, args_1.prepareAdditionalServiceWideGenerationArgs)(Object.assign(Object.assign({}, args), { options: Object.assign(Object.assign({}, opts), { typesOnly: true }) }), service))),
|
|
339
|
+
]);
|
|
340
|
+
// const graphMetaServiceDir = join(
|
|
341
|
+
// prjBackSrcPrefixedDir,
|
|
342
|
+
// 'graph',
|
|
343
|
+
// 'services',
|
|
344
|
+
// 'meta'
|
|
345
|
+
// )
|
|
346
|
+
// write(`${graphMetaServiceDir}/baseTypeDefs.ts`, graphMetaTypesTmpl())
|
|
347
|
+
yield (0, genGraphSchemesByLocalGenerator_1.genGraphSchemesByLocalGenerator)(opts);
|
|
348
|
+
yield generateHelpService(args, false);
|
|
349
|
+
// Full generation
|
|
350
|
+
yield Promise.all([
|
|
351
|
+
...entities.map((entity) => (0, generateEntity_1.generateEntity)((0, args_1.prepareEntityWideGenerationArgs)(Object.assign(Object.assign({}, args), { options: Object.assign({}, opts) }), entity))),
|
|
352
|
+
...system.additionalServices.map((service) => (0, generateAdditionalService_1.generateAdditionalService)((0, args_1.prepareAdditionalServiceWideGenerationArgs)(Object.assign(Object.assign({}, args), { options: Object.assign({}, opts) }), service))),
|
|
353
|
+
]);
|
|
354
|
+
// Prisma schema
|
|
355
|
+
const servicesDir = (0, path_1.join)(prjBackSrcPrefixedDir, 'services');
|
|
356
|
+
// if (opts.genPrismaSchema) {
|
|
357
|
+
// const prismaSchema = genPrismaSchemaForEntities(args, allLinks);
|
|
358
|
+
// write(join(prjBackSrcPrefixedDir, 'schema.prisma'), prismaSchema);
|
|
359
|
+
// }
|
|
360
|
+
// Graph
|
|
361
|
+
const graphDir = (0, path_1.join)(prjBackSrcPrefixedDir, 'graph');
|
|
362
|
+
// write(
|
|
363
|
+
// `${graphMetaServiceDir}/baseResolvers.ts`,
|
|
364
|
+
// // graphMetaResolversTmpl()
|
|
365
|
+
// )
|
|
366
|
+
// // Context
|
|
367
|
+
// // src/dc/services/context.ts
|
|
368
|
+
// if (opts.genContext && !opts.typesOnly) {
|
|
369
|
+
// write(join(servicesDir, 'context.ts'), graphContextTmpl(args));
|
|
370
|
+
// }
|
|
371
|
+
// Types
|
|
372
|
+
if (opts.genContext) {
|
|
373
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(servicesDir, 'BaseServices.ts'), (0, BaseServices_1.default)(args));
|
|
374
|
+
}
|
|
375
|
+
// Types
|
|
376
|
+
if (opts.genContext) {
|
|
377
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(servicesDir, 'serviceConstrictors.ts'), (0, serviceConstrictors_1.default)(args));
|
|
378
|
+
}
|
|
379
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(servicesDir, 'IntegrationClients.ts'), (0, IntegrationClients_1.default)(args));
|
|
380
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(servicesDir, 'integrationClientConstrictors.ts'), (0, integrationClientConstrictors_1.default)(args));
|
|
381
|
+
const generatedAdditionalServices = (0, AdditionalServices_1.additionalServicesTmpl)();
|
|
382
|
+
yield (0, utils_1.writeFileIfNotExists)((0, path_1.join)(servicesDir, 'AdditionalServices.ts'), generatedAdditionalServices);
|
|
383
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(graphDir, 'permissionsToGraphql.ts'), (0, permissionsToGraphql_1.backPermissionToGraphqlTmpl)(args, opts));
|
|
384
|
+
// Root
|
|
385
|
+
// src/restRouter.ts
|
|
386
|
+
const restRouter = (0, restRouter_1.restRouterTmpl)();
|
|
387
|
+
yield (0, utils_1.writeFileIfNotExists)((0, path_1.join)(prjDetachedBackSrcDir, 'rest', 'restRouter.ts'), restRouter);
|
|
388
|
+
// // src/meta/metadata.json
|
|
389
|
+
// const genFolder = join(prjDetachedBackSrcDir, 'gen')
|
|
390
|
+
// name: string;
|
|
391
|
+
// prefix: string;
|
|
392
|
+
// needFor: string;
|
|
393
|
+
// configVars: string[];
|
|
394
|
+
// deployEnvironments: string[];
|
|
395
|
+
// catalogs: EntityWithOptions[];
|
|
396
|
+
// documents: EntityWithOptions[];
|
|
397
|
+
// infoRegistries: EntityWithOptions[];
|
|
398
|
+
// sumRegistries: EntityWithOptions[];
|
|
399
|
+
// const metaWithoutOptions = {
|
|
400
|
+
// ...system,
|
|
401
|
+
// catalogs: system.catalogs,
|
|
402
|
+
// documents: system.documents,
|
|
403
|
+
// infoRegistries: system.infoRegistries,
|
|
404
|
+
// sumRegistries: system.sumRegistries,
|
|
405
|
+
// }
|
|
406
|
+
// write(
|
|
407
|
+
// join(genFolder, 'metadata.json'),
|
|
408
|
+
// stringify(metaWithoutOptions, undefined, 1)
|
|
409
|
+
// )
|
|
410
|
+
// UI
|
|
411
|
+
let prjUiSrcPrefixedDir = '';
|
|
412
|
+
const prjDetachedUiSrcDir = (0, path_1.join)(opts.detachedUiProject, 'src');
|
|
413
|
+
// if (opts.detachedBackProject) {
|
|
414
|
+
prjUiSrcPrefixedDir = (0, path_1.join)(prjDetachedUiSrcDir, 'adm');
|
|
415
|
+
// } else {
|
|
416
|
+
// prjUiSrcPrefixedDir = join('/home/name/prj/crawler-ui/src', prefix);
|
|
417
|
+
// }
|
|
418
|
+
if (!opts.typesOnly) {
|
|
419
|
+
// Resources
|
|
420
|
+
// src/dc/resources.tsx genUiResources uiResourcesTmpl
|
|
421
|
+
if (opts.genUiResources) {
|
|
422
|
+
const { resources, resourcesChunk0, resourcesChunk1 } = (0, resources_1.uiResourcesTmpl)(args);
|
|
423
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'resources.tsx'), resources);
|
|
424
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'resourcesChunk0.tsx'), resourcesChunk0);
|
|
425
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'resourcesChunk1.tsx'), resourcesChunk1);
|
|
426
|
+
}
|
|
427
|
+
// Resources page
|
|
428
|
+
// src/dc/ResourcesPage.tsx genUiResourcesPage uiResourcesPageTmpl
|
|
429
|
+
if (opts.genUiResourcesPage) {
|
|
430
|
+
const generatedResources = (0, ResourcesPage_1.uiResourcesPageTmpl)(args);
|
|
431
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'ResourcesPage.tsx'), generatedResources);
|
|
432
|
+
}
|
|
433
|
+
const generatedUiMetaPage = (0, MetaPage_1.uiMetaPageTmpl)();
|
|
434
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'MetaPage.tsx'), generatedUiMetaPage);
|
|
435
|
+
// Resources page
|
|
436
|
+
// src/dc/entityMapping.ts genUiEntityMapping uiEntityMappingTmpl
|
|
437
|
+
if (opts.genUiEntityMapping) {
|
|
438
|
+
const generatedResources = (0, entityMapping_1.uiEntityMappingTmpl)(args, opts);
|
|
439
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'entityMapping.ts'), generatedResources);
|
|
440
|
+
}
|
|
441
|
+
// Resources page
|
|
442
|
+
// src/dc/ProjectMenu.tsx genUiMenu uiMenuTmpl
|
|
443
|
+
if (opts.genUiMenu) {
|
|
444
|
+
const generatedSubMenu = (0, getDefaultMenu_1.uiGetDefaultMenuTmpl)(args);
|
|
445
|
+
const generatedAdditionalMenu = (0, getAdditionalMenu_1.uiGetAdditionalMenuTmpl)();
|
|
446
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'getDefaultMenu.ts'), generatedSubMenu);
|
|
447
|
+
yield (0, utils_1.writeFileIfNotExists)((0, path_1.join)(prjUiSrcPrefixedDir, 'getAdditionalMenu.ts'), generatedAdditionalMenu);
|
|
448
|
+
}
|
|
449
|
+
// Resources page
|
|
450
|
+
// src/dc/routes.tsx genUiRoutes uiRoutesTmpl
|
|
451
|
+
if (opts.genUiRoutes) {
|
|
452
|
+
const generatedResources = (0, routes_1.default)(args);
|
|
453
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'routes.tsx'), generatedResources);
|
|
454
|
+
}
|
|
455
|
+
const generatedUiAdditionalRoutesTmpl = (0, additionalRoutes_1.uiAdditionalRoutesTmpl)();
|
|
456
|
+
yield (0, utils_1.writeFileIfNotExists)((0, path_1.join)(prjUiSrcPrefixedDir, 'additionalRoutes.tsx'), generatedUiAdditionalRoutesTmpl);
|
|
457
|
+
// Functions page
|
|
458
|
+
// src/dc/functions/Functions.tsx
|
|
459
|
+
if (opts.genUiFunctions) {
|
|
460
|
+
const generatedResources = (0, Functions_1.uiFunctionsTmpl)(opts);
|
|
461
|
+
const uiFunctionsDir = (0, path_1.join)(prjUiSrcPrefixedDir, 'functions');
|
|
462
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(uiFunctionsDir, 'Functions.tsx'), generatedResources);
|
|
463
|
+
}
|
|
464
|
+
// Dashboard page
|
|
465
|
+
// src/dc/dashboard.tsx
|
|
466
|
+
if (opts.genUiDashboard) {
|
|
467
|
+
const generatedResources = (0, Dashboard_1.default)();
|
|
468
|
+
yield (0, utils_1.writeFileIfNotExists)((0, path_1.join)(prjUiSrcPrefixedDir, 'Dashboard.tsx'), generatedResources);
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
yield (0, generateEnvironment_1.generateEnvironment)(args);
|
|
472
|
+
});
|
|
775
473
|
exports.default = generateProject;
|
|
776
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVQcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb2plY3RzR2VuZXJhdGlvbi9nZW5lcmF0ZVByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2QkFBMkI7QUFDM0IscUVBQXlFO0FBQ3pFLDZFQUFpRjtBQUNqRixtR0FBd0c7QUFDeEcsZ0dBQStFO0FBQy9FLDZFQUFpRjtBQUNqRixzRkFBcUU7QUFDckUsK0VBQW1GO0FBQ25GLCtFQUFtRjtBQUNuRiw2REFBMkQ7QUFDM0QsNkVBQW9GO0FBQ3BGLHFGQUFtRjtBQUNuRixpQ0FBb0Y7QUFDcEYsbURBQWlEO0FBQ2pELDhFQUFnRjtBQUNoRixpQ0FBOEM7QUFDOUMsbUZBQXVGO0FBQ3ZGLHFGQUF5RjtBQUN6RixtRUFBdUU7QUFDdkUsa0dBQW9HO0FBRXBHLHlGQUFtRztBQUNuRyx5Q0FBdUM7QUFDdkMsK0ZBQXlHO0FBQ3pHLGlFQUEyRTtBQUMzRSx3Q0FBdUQ7QUFDdkQsaUdBQTJHO0FBQzNHLDZHQUF1SDtBQUN2SCwyR0FBcUg7QUFDckgsK0JBTWU7QUFDZixxRkFBdUY7QUFDdkYsaUlBQTBHO0FBQzFHLHNIQUFvSDtBQUNwSCxxSEFBOEY7QUFDOUYsbUhBQTRGO0FBQzVGLHVDQUE0QztBQUM1QywyR0FBd0Y7QUFDeEYsaUhBQThGO0FBQzlGLHVHQUF5RjtBQUN6Rix5R0FBc0Y7QUFDdEYseUhBQXNHO0FBQ3RHLDZEQUErRDtBQUMvRCxtRUFBcUU7QUFDckUseUVBQStFO0FBQy9FLG1FQUF5RTtBQUN6RSxxSEFBdUc7QUFDdkcscUVBQW1FO0FBQ25FLDZFQUEyRTtBQUMzRSwrRkFBbUc7QUFDbkcsMkVBQTZGO0FBQzdGLHlJQUFrSDtBQUNsSCwySUFBNEg7QUFDNUgsMkNBQXdDO0FBQ3hDLG1IQUFxSDtBQUNySCw2R0FB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
|
|
474
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVQcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb2plY3RzR2VuZXJhdGlvbi9nZW5lcmF0ZVByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0JBQTJCO0FBQzNCLHVFQUF5RTtBQUN6RSwrRUFBaUY7QUFDakYscUdBQXdHO0FBQ3hHLGtHQUErRTtBQUMvRSwrRUFBaUY7QUFDakYsd0ZBQXFFO0FBQ3JFLGlGQUFtRjtBQUNuRixpRkFBbUY7QUFDbkYsK0RBQTJEO0FBQzNELCtFQUFvRjtBQUNwRix1RkFBbUY7QUFDbkYsbUNBQW9GO0FBQ3BGLHFEQUFpRDtBQUNqRCxnRkFBZ0Y7QUFDaEYsbUNBQThDO0FBQzlDLHFGQUF1RjtBQUN2Rix1RkFBeUY7QUFDekYscUVBQXVFO0FBQ3ZFLG9HQUFvRztBQUVwRywyRkFBbUc7QUFDbkcsMkNBQXVDO0FBQ3ZDLGlHQUF5RztBQUN6RyxtRUFBMkU7QUFDM0UsMENBQXVEO0FBQ3ZELG1HQUEyRztBQUMzRywrR0FBdUg7QUFDdkgsNkdBQXFIO0FBQ3JILGlDQU1lO0FBQ2YsdUZBQXVGO0FBQ3ZGLG1JQUEwRztBQUMxRyx3SEFBb0g7QUFDcEgsdUhBQThGO0FBQzlGLHFIQUE0RjtBQUM1Rix5Q0FBNEM7QUFDNUMsNkdBQXdGO0FBQ3hGLG1IQUE4RjtBQUM5Rix5R0FBeUY7QUFDekYsMkdBQXNGO0FBQ3RGLDJIQUFzRztBQUN0RywrREFBK0Q7QUFDL0QscUVBQXFFO0FBQ3JFLDJFQUErRTtBQUMvRSxxRUFBeUU7QUFDekUsdUhBQXVHO0FBQ3ZHLHVFQUFtRTtBQUNuRSwrRUFBMkU7QUFDM0UsaUdBQW1HO0FBQ25HLDZFQUE2RjtBQUM3RiwySUFBa0g7QUFDbEgsNklBQTRIO0FBQzVILDZDQUF3QztBQUN4QyxxSEFBcUg7QUFDckgsK0dBQXNGO0FBQ3RGLDJFQUF1RTtBQUN2RSwrSUFBNkg7QUFDN0gscUtBQW1KO0FBQ25K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
|