runlify 0.0.714 → 0.0.716
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 +31 -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
|
@@ -3,115 +3,115 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
const jest_without_globals_1 = require("jest-without-globals");
|
|
7
|
+
const augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput_1 = require("./augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput");
|
|
8
|
+
const buildedTypes_1 = require("../../../../builders/buildedTypes");
|
|
9
|
+
const AdditionalServiceBuilder_1 = __importDefault(require("../../../../builders/AdditionalServiceBuilder"));
|
|
10
|
+
const getServiceModels_1 = require("./getServiceModels");
|
|
11
11
|
// yarn test --testPathPattern augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput
|
|
12
|
-
describe('augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput',
|
|
13
|
-
describe('from args',
|
|
14
|
-
it('postfixes general model',
|
|
15
|
-
|
|
16
|
-
|
|
12
|
+
describe('augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput', () => {
|
|
13
|
+
describe('from args', () => {
|
|
14
|
+
it('postfixes general model', () => {
|
|
15
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
16
|
+
const someGerenalModel = service.addGeneralModel('someGerenalModel');
|
|
17
17
|
someGerenalModel.addField('fieldOfModel').setType('string').setRequired();
|
|
18
|
-
|
|
18
|
+
const someMethod = service.addMethod('someMethod', buildedTypes_1.MethodType.Query, 'Some method');
|
|
19
19
|
someMethod.setExportedToApi();
|
|
20
|
-
|
|
20
|
+
const someMethodArgs = someMethod.getArgsModel();
|
|
21
21
|
someMethodArgs.addModelField('someGerenalModel', 'objectField').setRequired();
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
(0, jest_without_globals_1.expect)(inputModels).toPartiallyContain({ name:
|
|
22
|
+
const models = (0, getServiceModels_1.getServiceModels)(service.build());
|
|
23
|
+
const { inputModels } = (0, augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput_1.augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput)(models);
|
|
24
|
+
(0, jest_without_globals_1.expect)(inputModels).toPartiallyContain({ name: `${someGerenalModel.name}Input` });
|
|
25
25
|
});
|
|
26
|
-
it('doesn\'t prefix input model',
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
it('doesn\'t prefix input model', () => {
|
|
27
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
28
|
+
const someInputModel = service.addInputModel('someInputModel');
|
|
29
29
|
someInputModel.addField('fieldOfModel').setType('string').setRequired();
|
|
30
|
-
|
|
30
|
+
const someMethod = service.addMethod('someMethod', buildedTypes_1.MethodType.Query, 'Some method');
|
|
31
31
|
someMethod.setExportedToApi();
|
|
32
|
-
|
|
32
|
+
const someMethodArgs = someMethod.getArgsModel();
|
|
33
33
|
someMethodArgs.addModelField('someInputModel', 'objectField').setRequired();
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
(0, jest_without_globals_1.expect)(inputModels).not.toPartiallyContain({ name:
|
|
34
|
+
const models = (0, getServiceModels_1.getServiceModels)(service.build());
|
|
35
|
+
const { inputModels } = (0, augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput_1.augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput)(models);
|
|
36
|
+
(0, jest_without_globals_1.expect)(inputModels).not.toPartiallyContain({ name: `${someInputModel.name}Input` });
|
|
37
37
|
(0, jest_without_globals_1.expect)(inputModels).toPartiallyContain({ name: someInputModel.name });
|
|
38
38
|
});
|
|
39
|
-
it('postfixes general model and next general model',
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
it('postfixes general model and next general model', () => {
|
|
40
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
41
|
+
const someSecondGerenalModel = service.addGeneralModel('someSecondGerenalModel');
|
|
42
42
|
someSecondGerenalModel.addField('fieldOfModel').setType('string').setRequired();
|
|
43
|
-
|
|
43
|
+
const someGerenalModel = service.addGeneralModel('someGerenalModel');
|
|
44
44
|
someGerenalModel.addModelField('someSecondGerenalModel', 'objectField').setRequired();
|
|
45
|
-
|
|
45
|
+
const someMethod = service.addMethod('someMethod', buildedTypes_1.MethodType.Query, 'Some method');
|
|
46
46
|
someMethod.setExportedToApi();
|
|
47
|
-
|
|
47
|
+
const someMethodArgs = someMethod.getArgsModel();
|
|
48
48
|
someMethodArgs.addModelField('someGerenalModel', 'objectField').setRequired();
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
49
|
+
const models = (0, getServiceModels_1.getServiceModels)(service.build());
|
|
50
|
+
const { inputModels } = (0, augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput_1.augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput)(models);
|
|
51
|
+
const mappedSomeGerenalModelName = `${someGerenalModel.name}Input`;
|
|
52
|
+
const mappedSomeSecondGerenalModelName = `${someSecondGerenalModel.name}Input`;
|
|
53
53
|
(0, jest_without_globals_1.expect)(inputModels).toPartiallyContain({ name: mappedSomeSecondGerenalModelName });
|
|
54
54
|
(0, jest_without_globals_1.expect)(inputModels).toPartiallyContain({ name: mappedSomeGerenalModelName });
|
|
55
|
-
|
|
55
|
+
const mappedSomeGerenalModel = inputModels.find(m => m.name === mappedSomeGerenalModelName);
|
|
56
56
|
(0, jest_without_globals_1.expect)(mappedSomeGerenalModel.fields).toPartiallyContain({ model: mappedSomeSecondGerenalModelName });
|
|
57
57
|
});
|
|
58
|
-
it('postfixes general model and doesn\'t prefix next input model',
|
|
59
|
-
|
|
60
|
-
|
|
58
|
+
it('postfixes general model and doesn\'t prefix next input model', () => {
|
|
59
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
60
|
+
const someInputModel = service.addInputModel('someInputModel');
|
|
61
61
|
someInputModel.addField('fieldOfModel').setType('string').setRequired();
|
|
62
|
-
|
|
62
|
+
const someGerenalModel = service.addGeneralModel('someGerenalModel');
|
|
63
63
|
someGerenalModel.addModelField('someInputModel', 'objectField').setRequired();
|
|
64
|
-
|
|
64
|
+
const someMethod = service.addMethod('someMethod', buildedTypes_1.MethodType.Query, 'Some method');
|
|
65
65
|
someMethod.setExportedToApi();
|
|
66
|
-
|
|
66
|
+
const someMethodArgs = someMethod.getArgsModel();
|
|
67
67
|
someMethodArgs.addModelField('someGerenalModel', 'objectField').setRequired();
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
68
|
+
const models = (0, getServiceModels_1.getServiceModels)(service.build());
|
|
69
|
+
const { inputModels } = (0, augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput_1.augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput)(models);
|
|
70
|
+
const mappedSomeGerenalModelName = `${someGerenalModel.name}Input`;
|
|
71
|
+
const someInputModelName = someInputModel.name;
|
|
72
72
|
(0, jest_without_globals_1.expect)(inputModels).toPartiallyContain({ name: someInputModelName });
|
|
73
73
|
(0, jest_without_globals_1.expect)(inputModels).toPartiallyContain({ name: mappedSomeGerenalModelName });
|
|
74
|
-
|
|
74
|
+
const mappedSomeGerenalModel = inputModels.find(m => m.name === mappedSomeGerenalModelName);
|
|
75
75
|
(0, jest_without_globals_1.expect)(mappedSomeGerenalModel.fields).toPartiallyContain({ model: someInputModelName });
|
|
76
76
|
});
|
|
77
|
-
it('doesn\'t prefix input model and postfixes next general model',
|
|
78
|
-
|
|
79
|
-
|
|
77
|
+
it('doesn\'t prefix input model and postfixes next general model', () => {
|
|
78
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
79
|
+
const someGeneralModel = service.addGeneralModel('someGeneralModel');
|
|
80
80
|
someGeneralModel.addField('fieldOfModel').setType('string').setRequired();
|
|
81
|
-
|
|
81
|
+
const someInputModel = service.addInputModel('someInputModel');
|
|
82
82
|
someInputModel.addModelField('someGeneralModel', 'objectField').setRequired();
|
|
83
|
-
|
|
83
|
+
const someMethod = service.addMethod('someMethod', buildedTypes_1.MethodType.Query, 'Some method');
|
|
84
84
|
someMethod.setExportedToApi();
|
|
85
|
-
|
|
85
|
+
const someMethodArgs = someMethod.getArgsModel();
|
|
86
86
|
someMethodArgs.addModelField('someInputModel', 'objectField').setRequired();
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
87
|
+
const models = (0, getServiceModels_1.getServiceModels)(service.build());
|
|
88
|
+
const { inputModels } = (0, augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput_1.augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput)(models);
|
|
89
|
+
const someInputMModelName = someInputModel.name;
|
|
90
|
+
const mappedSomeSecondInputModelName = `${someGeneralModel.name}Input`;
|
|
91
91
|
(0, jest_without_globals_1.expect)(inputModels).toPartiallyContain({ name: mappedSomeSecondInputModelName });
|
|
92
92
|
(0, jest_without_globals_1.expect)(inputModels).toPartiallyContain({ name: someInputMModelName });
|
|
93
|
-
|
|
93
|
+
const mappedSomeGerenalModel = inputModels.find(m => m.name === someInputMModelName);
|
|
94
94
|
(0, jest_without_globals_1.expect)(mappedSomeGerenalModel.fields).toPartiallyContain({ model: mappedSomeSecondInputModelName });
|
|
95
95
|
});
|
|
96
|
-
it('doesn\'t prefix input model and next input model',
|
|
97
|
-
|
|
98
|
-
|
|
96
|
+
it('doesn\'t prefix input model and next input model', () => {
|
|
97
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
98
|
+
const someSecondInputModel = service.addInputModel('someSecondInputModel');
|
|
99
99
|
someSecondInputModel.addField('fieldOfModel').setType('string').setRequired();
|
|
100
|
-
|
|
100
|
+
const someInputModel = service.addInputModel('someInputModel');
|
|
101
101
|
someInputModel.addModelField('someSecondInputModel', 'objectField').setRequired();
|
|
102
|
-
|
|
102
|
+
const someMethod = service.addMethod('someMethod', buildedTypes_1.MethodType.Query, 'Some method');
|
|
103
103
|
someMethod.setExportedToApi();
|
|
104
|
-
|
|
104
|
+
const someMethodArgs = someMethod.getArgsModel();
|
|
105
105
|
someMethodArgs.addModelField('someInputModel', 'objectField').setRequired();
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
106
|
+
const models = (0, getServiceModels_1.getServiceModels)(service.build());
|
|
107
|
+
const { inputModels } = (0, augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput_1.augmentInputModelsByUsedAsInputGeneralModelsAndPostfixThemByInput)(models);
|
|
108
|
+
const someInputMModelName = someInputModel.name;
|
|
109
|
+
const someSecondInputModelName = someSecondInputModel.name;
|
|
110
110
|
(0, jest_without_globals_1.expect)(inputModels).toPartiallyContain({ name: someSecondInputModelName });
|
|
111
111
|
(0, jest_without_globals_1.expect)(inputModels).toPartiallyContain({ name: someInputMModelName });
|
|
112
|
-
|
|
112
|
+
const mappedSomeGerenalModel = inputModels.find(m => m.name === someInputMModelName);
|
|
113
113
|
(0, jest_without_globals_1.expect)(mappedSomeGerenalModel.fields).toPartiallyContain({ model: someSecondInputModelName });
|
|
114
114
|
});
|
|
115
115
|
});
|
|
116
116
|
});
|
|
117
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVnbWVudElucHV0TW9kZWxzQnlVc2VkQXNJbnB1dEdlbmVyYWxNb2RlbHNBbmRQb3N0Zml4VGhlbUJ5SW5wdXQuc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9wcm9qZWN0c0dlbmVyYXRpb24vZ2VuZXJhdG9ycy9ncmFwaC91dGlscy9zZXJ2aWNlTW9kZWxzL2F1Z21lbnRJbnB1dE1vZGVsc0J5VXNlZEFzSW5wdXRHZW5lcmFsTW9kZWxzQW5kUG9zdGZpeFRoZW1CeUlucHV0LnNwZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrREFBNkM7QUFDN0MsMkpBQXVKO0FBQ3ZKLG9FQUErRDtBQUMvRCw2R0FBcUY7QUFDckYseURBQXNEO0FBRXRELGdHQUFnRztBQUVoRyxRQUFRLENBQUMsbUVBQW1FLEVBQUUsR0FBRyxFQUFFO0lBQ2pGLFFBQVEsQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFO1FBQ3pCLEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSxHQUFHLEVBQUU7WUFDakMsTUFBTSxPQUFPLEdBQUcsSUFBSSxrQ0FBd0IsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFFbEUsTUFBTSxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLGtCQUFrQixDQUFDLENBQUM7WUFDckUsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUUxRSxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSx5QkFBVSxDQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsQ0FBQztZQUNwRixVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUU5QixNQUFNLGNBQWMsR0FBRyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDakQsY0FBYyxDQUFDLGFBQWEsQ0FBQyxrQkFBa0Is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
|
|
@@ -1,65 +1,44 @@
|
|
|
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
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
14
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
15
|
-
if (ar || !(i in from)) {
|
|
16
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
17
|
-
ar[i] = from[i];
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
21
|
-
};
|
|
22
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
3
|
exports.getGraphTypesFromInputOutputModels = void 0;
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
4
|
+
const graphql_1 = require("graphql");
|
|
5
|
+
const genGraphField_1 = require("../../fields/genGraphField");
|
|
6
|
+
const getModelInitOrder_1 = require("../models/getModelInitOrder");
|
|
7
|
+
const getGraphTypesFromInputOutputModels = (models) => {
|
|
8
|
+
const allModels = [
|
|
9
|
+
...models.inputModels,
|
|
10
|
+
...models.outputModels,
|
|
11
|
+
];
|
|
12
|
+
const modelsToGetInitOrder = allModels.map(m => ({
|
|
30
13
|
name: m.name,
|
|
31
14
|
fields: m.fields
|
|
32
|
-
.filter(
|
|
33
|
-
.map(
|
|
34
|
-
})
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
15
|
+
.filter(f => f.category === 'model')
|
|
16
|
+
.map(f => f.model),
|
|
17
|
+
}));
|
|
18
|
+
const graphTypes = [];
|
|
19
|
+
const order = (0, getModelInitOrder_1.getModelInitOrder)(modelsToGetInitOrder);
|
|
20
|
+
const inputModelNames = models.inputModels.map(m => m.name);
|
|
21
|
+
for (const modelName of order) {
|
|
22
|
+
const model = allModels.find(m => m.name === modelName);
|
|
40
23
|
if (!model) {
|
|
41
|
-
throw new Error(
|
|
24
|
+
throw new Error(`Can't find "${modelName}" model. Models: ${allModels.map(m => m.name).join(', ')}`);
|
|
42
25
|
}
|
|
43
26
|
if (inputModelNames.includes(modelName)) {
|
|
44
27
|
graphTypes.push(new graphql_1.GraphQLInputObjectType({
|
|
45
28
|
name: model.name,
|
|
46
29
|
fields: model.fields
|
|
47
|
-
.reduce(
|
|
30
|
+
.reduce((acc, cur) => (Object.assign(Object.assign({}, acc), (0, genGraphField_1.genGraphField)(cur, 'input', graphTypes))), {}),
|
|
48
31
|
}));
|
|
49
32
|
}
|
|
50
33
|
else {
|
|
51
34
|
graphTypes.push(new graphql_1.GraphQLObjectType({
|
|
52
35
|
name: model.name,
|
|
53
36
|
fields: model.fields
|
|
54
|
-
.reduce(
|
|
37
|
+
.reduce((acc, cur) => (Object.assign(Object.assign({}, acc), (0, genGraphField_1.genGraphField)(cur, 'result', graphTypes))), {}),
|
|
55
38
|
}));
|
|
56
39
|
}
|
|
57
|
-
};
|
|
58
|
-
for (var _i = 0, order_1 = order; _i < order_1.length; _i++) {
|
|
59
|
-
var modelName = order_1[_i];
|
|
60
|
-
_loop_1(modelName);
|
|
61
40
|
}
|
|
62
41
|
return graphTypes;
|
|
63
42
|
};
|
|
64
43
|
exports.getGraphTypesFromInputOutputModels = getGraphTypesFromInputOutputModels;
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0R3JhcGhUeXBlc0Zyb21JbnB1dE91dHB1dE1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9wcm9qZWN0c0dlbmVyYXRpb24vZ2VuZXJhdG9ycy9ncmFwaC91dGlscy9zZXJ2aWNlTW9kZWxzL2dldEdyYXBoVHlwZXNGcm9tSW5wdXRPdXRwdXRNb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUNBSWdCO0FBRWhCLDhEQUEwRDtBQUMxRCxtRUFBK0Q7QUFHeEQsTUFBTSxrQ0FBa0MsR0FBRyxDQUFDLE1BQWdDLEVBQXNCLEVBQUU7SUFDekcsTUFBTSxTQUFTLEdBQUc7UUFDaEIsR0FBRyxNQUFNLENBQUMsV0FBVztRQUNyQixHQUFHLE1BQU0sQ0FBQyxZQUFZO0tBQ3ZCLENBQUM7SUFFRixNQUFNLG9CQUFvQixHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSTtRQUNaLE1BQU0sRUFBRSxDQUFDLENBQUMsTUFBTTthQUNiLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssT0FBTyxDQUFDO2FBQ25DLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFFLENBQWdCLENBQUMsS0FBSyxDQUFDO0tBQ3JDLENBQUMsQ0FBQyxDQUFDO0lBRUosTUFBTSxVQUFVLEdBQXVCLEVBQUUsQ0FBQztJQUMxQyxNQUFNLEtBQUssR0FBRyxJQUFBLHFDQUFpQixFQUFDLG9CQUFvQixDQUFDLENBQUM7SUFFdEQsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFNUQsS0FBSyxNQUFNLFNBQVMsSUFBSSxLQUFLLEVBQUU7UUFDN0IsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLENBQUM7UUFFeEQsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsZUFBZSxTQUFTLG9CQUFvQixTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDdEc7UUFFRCxJQUFJLGVBQWUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDdkMsVUFBVSxDQUFDLElBQUksQ0FDYixJQUFJLGdDQUFzQixDQUFDO2dCQUN6QixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7Z0JBQ2hCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtxQkFDakIsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsaUNBQU0sR0FBRyxHQUFLLElBQUEsNkJBQWEsRUFBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxFQUFHLEVBQUUsRUFBRSxDQUFDO2FBQ3RGLENBQUMsQ0FDSCxDQUFDO1NBQ0g7YUFBTTtZQUNMLFVBQVUsQ0FBQyxJQUFJLENBQ2IsSUFBSSwyQkFBaUIsQ0FBQztnQkFDcEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO2dCQUNoQixNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07cUJBQ2pCLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLGlDQUFNLEdBQUcsR0FBSyxJQUFBLDZCQUFhLEVBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsRUFBRyxFQUFFLEVBQUUsQ0FBQzthQUN2RixDQUFDLENBQ0gsQ0FBQztTQUNIO0tBQ0Y7SUFFRCxPQUFPLFVBQVUsQ0FBQTtBQUNuQixDQUFDLENBQUE7QUE3Q1ksUUFBQSxrQ0FBa0Msc0NBNkM5QyJ9
|
|
@@ -3,99 +3,122 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
var getPreparedModelsForGraph_1 = require("./getPreparedModelsForGraph");
|
|
6
|
+
const jest_without_globals_1 = require("jest-without-globals");
|
|
7
|
+
const graphql_1 = require("graphql");
|
|
8
|
+
const getGraphTypesFromInputOutputModels_1 = require("./getGraphTypesFromInputOutputModels");
|
|
9
|
+
const AdditionalServiceBuilder_1 = __importDefault(require("../../../../builders/AdditionalServiceBuilder"));
|
|
10
|
+
const types_1 = require("../../../../../types");
|
|
11
|
+
const getPreparedModelsForGraph_1 = require("./getPreparedModelsForGraph");
|
|
13
12
|
// yarn test --testPathPattern getGraphTypesFromInputOutputModels
|
|
14
13
|
// yarn test --testPathPattern getGraphTypesFromInputOutputModels -t 'with simple args and no return'
|
|
15
|
-
|
|
14
|
+
const serviceTypesToGraphSchema = (types) => new graphql_1.GraphQLSchema({
|
|
16
15
|
types: types,
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
var service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
25
|
-
var someMethod = service.addMethod('someMethod', types_1.MethodType.Query, 'Some method');
|
|
16
|
+
});
|
|
17
|
+
const printSchemaForTypes = (types) => (0, graphql_1.printSchema)(serviceTypesToGraphSchema(types));
|
|
18
|
+
describe('getGraphTypesFromInputOutputModels', () => {
|
|
19
|
+
describe('returns types', () => {
|
|
20
|
+
it('without args and return', () => {
|
|
21
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
22
|
+
const someMethod = service.addMethod('someMethod', types_1.MethodType.Query, 'Some method');
|
|
26
23
|
someMethod.setExportedToApi();
|
|
27
|
-
|
|
24
|
+
const models = (0, getPreparedModelsForGraph_1.getPreparedModelsForGraph)(service.build());
|
|
28
25
|
(0, jest_without_globals_1.expect)(printSchemaForTypes((0, getGraphTypesFromInputOutputModels_1.getGraphTypesFromInputOutputModels)(models))).toBeEmpty();
|
|
29
26
|
});
|
|
30
|
-
it('with simple args and no return',
|
|
31
|
-
|
|
32
|
-
|
|
27
|
+
it('with simple args and no return', () => {
|
|
28
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
29
|
+
const someMethod = service.addMethod('someMethod', types_1.MethodType.Query, 'Some method');
|
|
33
30
|
someMethod.setExportedToApi();
|
|
34
|
-
|
|
31
|
+
const someMethodArgs = someMethod.getArgsModel();
|
|
35
32
|
someMethodArgs.addField('someString').setType('string').setRequired();
|
|
36
|
-
|
|
33
|
+
const models = (0, getPreparedModelsForGraph_1.getPreparedModelsForGraph)(service.build());
|
|
37
34
|
(0, jest_without_globals_1.expect)(printSchemaForTypes((0, getGraphTypesFromInputOutputModels_1.getGraphTypesFromInputOutputModels)(models))).toBeEmpty();
|
|
38
35
|
});
|
|
39
|
-
it('with no args and simple return',
|
|
40
|
-
|
|
41
|
-
|
|
36
|
+
it('with no args and simple return', () => {
|
|
37
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
38
|
+
const someMethod = service.addMethod('someMethod', types_1.MethodType.Query, 'Some method');
|
|
42
39
|
someMethod.setExportedToApi();
|
|
43
|
-
|
|
40
|
+
const someMethodResult = someMethod.getReturnModel();
|
|
44
41
|
someMethodResult.addField('someString').setType('string').setRequired();
|
|
45
|
-
|
|
46
|
-
(0, jest_without_globals_1.expect)(printSchemaForTypes((0, getGraphTypesFromInputOutputModels_1.getGraphTypesFromInputOutputModels)(models))).toBe(
|
|
42
|
+
const models = (0, getPreparedModelsForGraph_1.getPreparedModelsForGraph)(service.build());
|
|
43
|
+
(0, jest_without_globals_1.expect)(printSchemaForTypes((0, getGraphTypesFromInputOutputModels_1.getGraphTypesFromInputOutputModels)(models))).toBe(`type SomeServiceSomeMethodResult {
|
|
44
|
+
someString: String!
|
|
45
|
+
}`);
|
|
47
46
|
});
|
|
48
|
-
it('with simple args and simple return',
|
|
49
|
-
|
|
50
|
-
|
|
47
|
+
it('with simple args and simple return', () => {
|
|
48
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
49
|
+
const someMethod = service.addMethod('someMethod', types_1.MethodType.Query, 'Some method');
|
|
51
50
|
someMethod.setExportedToApi();
|
|
52
|
-
|
|
51
|
+
const someMethodArgs = someMethod.getArgsModel();
|
|
53
52
|
someMethodArgs.addField('someString').setType('string').setRequired();
|
|
54
|
-
|
|
53
|
+
const someMethodResult = someMethod.getReturnModel();
|
|
55
54
|
someMethodResult.addField('someString').setType('string').setRequired();
|
|
56
|
-
|
|
57
|
-
(0, jest_without_globals_1.expect)(printSchemaForTypes((0, getGraphTypesFromInputOutputModels_1.getGraphTypesFromInputOutputModels)(models))).toBe(
|
|
55
|
+
const models = (0, getPreparedModelsForGraph_1.getPreparedModelsForGraph)(service.build());
|
|
56
|
+
(0, jest_without_globals_1.expect)(printSchemaForTypes((0, getGraphTypesFromInputOutputModels_1.getGraphTypesFromInputOutputModels)(models))).toBe(`type SomeServiceSomeMethodResult {
|
|
57
|
+
someString: String!
|
|
58
|
+
}`);
|
|
58
59
|
});
|
|
59
|
-
it('with simple args and with inner object someModel in return',
|
|
60
|
-
|
|
61
|
-
|
|
60
|
+
it('with simple args and with inner object someModel in return', () => {
|
|
61
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
62
|
+
const someModel = service.addGeneralModel('someModel');
|
|
62
63
|
someModel.addField('fieldOfModel').setType('string').setRequired();
|
|
63
|
-
|
|
64
|
+
const someMethod = service.addMethod('someMethod', types_1.MethodType.Query, 'Some method');
|
|
64
65
|
someMethod.setExportedToApi();
|
|
65
|
-
|
|
66
|
+
const someMethodArgs = someMethod.getArgsModel();
|
|
66
67
|
someMethodArgs.addField('someString').setType('string').setRequired();
|
|
67
|
-
|
|
68
|
+
const someMethodResult = someMethod.getReturnModel();
|
|
68
69
|
someMethodResult.addModelField('someModel', 'objectField').setRequired();
|
|
69
|
-
|
|
70
|
-
(0, jest_without_globals_1.expect)(printSchemaForTypes((0, getGraphTypesFromInputOutputModels_1.getGraphTypesFromInputOutputModels)(models))).toBe(
|
|
70
|
+
const models = (0, getPreparedModelsForGraph_1.getPreparedModelsForGraph)(service.build());
|
|
71
|
+
(0, jest_without_globals_1.expect)(printSchemaForTypes((0, getGraphTypesFromInputOutputModels_1.getGraphTypesFromInputOutputModels)(models))).toBe(`type SomeServiceSomeModel {
|
|
72
|
+
fieldOfModel: String!
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
type SomeServiceSomeMethodResult {
|
|
76
|
+
objectField: SomeServiceSomeModel!
|
|
77
|
+
}`);
|
|
71
78
|
});
|
|
72
|
-
it('with inner object someModel in args and simple return',
|
|
73
|
-
|
|
74
|
-
|
|
79
|
+
it('with inner object someModel in args and simple return', () => {
|
|
80
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
81
|
+
const someModel = service.addGeneralModel('someModel');
|
|
75
82
|
someModel.addField('fieldOfModel').setType('string').setRequired();
|
|
76
|
-
|
|
83
|
+
const someMethod = service.addMethod('someMethod', types_1.MethodType.Query, 'Some method');
|
|
77
84
|
someMethod.setExportedToApi();
|
|
78
|
-
|
|
85
|
+
const someMethodArgs = someMethod.getArgsModel();
|
|
79
86
|
someMethodArgs.addModelField('someModel', 'objectField').setRequired();
|
|
80
|
-
|
|
87
|
+
const someMethodResult = someMethod.getReturnModel();
|
|
81
88
|
someMethodResult.addField('someString').setType('string').setRequired();
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
(0, jest_without_globals_1.expect)(printSchemaForTypes(result)).toBe(
|
|
89
|
+
const models = (0, getPreparedModelsForGraph_1.getPreparedModelsForGraph)(service.build());
|
|
90
|
+
const result = (0, getGraphTypesFromInputOutputModels_1.getGraphTypesFromInputOutputModels)(models);
|
|
91
|
+
(0, jest_without_globals_1.expect)(printSchemaForTypes(result)).toBe(`input SomeServiceSomeModelInput {
|
|
92
|
+
fieldOfModel: String!
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
type SomeServiceSomeMethodResult {
|
|
96
|
+
someString: String!
|
|
97
|
+
}`);
|
|
85
98
|
});
|
|
86
|
-
it('without args and double level nested fields in return',
|
|
87
|
-
|
|
88
|
-
|
|
99
|
+
it('without args and double level nested fields in return', () => {
|
|
100
|
+
const service = new AdditionalServiceBuilder_1.default('someService', 'ru');
|
|
101
|
+
const anotherModel = service.addGeneralModel('anotherModel');
|
|
89
102
|
anotherModel.addField('fieldOfModel').setType('string').setRequired();
|
|
90
|
-
|
|
103
|
+
const someModel = service.addGeneralModel('someModel');
|
|
91
104
|
someModel.addModelField('anotherModel', 'objectField').setRequired();
|
|
92
|
-
|
|
105
|
+
const someMethod = service.addMethod('someMethod', types_1.MethodType.Query, 'Some method');
|
|
93
106
|
someMethod.setExportedToApi();
|
|
94
|
-
|
|
107
|
+
const someMethodResult = someMethod.getReturnModel();
|
|
95
108
|
someMethodResult.addModelField('someModel', 'objectField').setRequired();
|
|
96
|
-
|
|
97
|
-
(0, jest_without_globals_1.expect)(printSchemaForTypes((0, getGraphTypesFromInputOutputModels_1.getGraphTypesFromInputOutputModels)(models))).toBe(
|
|
109
|
+
const models = (0, getPreparedModelsForGraph_1.getPreparedModelsForGraph)(service.build());
|
|
110
|
+
(0, jest_without_globals_1.expect)(printSchemaForTypes((0, getGraphTypesFromInputOutputModels_1.getGraphTypesFromInputOutputModels)(models))).toBe(`type SomeServiceAnotherModel {
|
|
111
|
+
fieldOfModel: String!
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
type SomeServiceSomeModel {
|
|
115
|
+
objectField: SomeServiceAnotherModel!
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
type SomeServiceSomeMethodResult {
|
|
119
|
+
objectField: SomeServiceSomeModel!
|
|
120
|
+
}`);
|
|
98
121
|
});
|
|
99
122
|
});
|
|
100
123
|
});
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0R3JhcGhUeXBlc0Zyb21JbnB1dE91dHB1dE1vZGVscy5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3Byb2plY3RzR2VuZXJhdGlvbi9nZW5lcmF0b3JzL2dyYXBoL3V0aWxzL3NlcnZpY2VNb2RlbHMvZ2V0R3JhcGhUeXBlc0Zyb21JbnB1dE91dHB1dE1vZGVscy5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0RBQTZDO0FBQzdDLHFDQUFzRTtBQUN0RSw2RkFBeUY7QUFDekYsNkdBQW9GO0FBQ3BGLGdEQUFpRDtBQUNqRCwyRUFBdUU7QUFFdkUsaUVBQWlFO0FBQ2pFLHFHQUFxRztBQUVyRyxNQUFNLHlCQUF5QixHQUFHLENBQUMsS0FBeUIsRUFBRSxFQUFFLENBQUMsSUFBSSx1QkFBYSxDQUFDO0lBQ2pGLEtBQUssRUFBRSxLQUFLO0NBQ2IsQ0FBQyxDQUFBO0FBRUYsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEtBQXlCLEVBQUUsRUFBRSxDQUN4RCxJQUFBLHFCQUFXLEVBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtBQUUvQyxRQUFRLENBQUMsb0NBQW9DLEVBQUUsR0FBRyxFQUFFO0lBQ2xELFFBQVEsQ0FBQyxlQUFlLEVBQUUsR0FBRyxFQUFFO1FBQzdCLEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSxHQUFHLEVBQUU7WUFDakMsTUFBTSxPQUFPLEdBQUcsSUFBSSxrQ0FBd0IsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFFbEUsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsa0JBQVUsQ0FBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLENBQUM7WUFDcEYsVUFBVSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFFOUIsTUFBTSxNQUFNLEdBQUcsSUFBQSxxREFBeUIsRUFBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENB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
|