@things-factory/auth-base 9.0.0-beta.4 → 9.0.0-beta.43
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/config/config.development.js +46 -0
- package/config/config.production.js +45 -0
- package/dist-client/auth.js +0 -3
- package/dist-client/auth.js.map +1 -1
- package/dist-client/bootstrap.d.ts +1 -1
- package/dist-client/bootstrap.js +4 -4
- package/dist-client/bootstrap.js.map +1 -1
- package/dist-client/directive/privileged.d.ts +1 -1
- package/dist-client/directive/privileged.js +1 -1
- package/dist-client/directive/privileged.js.map +1 -1
- package/dist-client/index.d.ts +4 -4
- package/dist-client/index.js +4 -4
- package/dist-client/index.js.map +1 -1
- package/dist-client/profiled.js +1 -1
- package/dist-client/profiled.js.map +1 -1
- package/dist-client/reducers/auth.js +1 -1
- package/dist-client/reducers/auth.js.map +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/dist-server/controllers/auth.d.ts +5 -5
- package/dist-server/controllers/auth.js +5 -5
- package/dist-server/controllers/auth.js.map +1 -1
- package/dist-server/controllers/change-pwd.js +19 -19
- package/dist-server/controllers/change-pwd.js.map +1 -1
- package/dist-server/controllers/checkin.js +4 -4
- package/dist-server/controllers/checkin.js.map +1 -1
- package/dist-server/controllers/delete-user.js +9 -9
- package/dist-server/controllers/delete-user.js.map +1 -1
- package/dist-server/controllers/invitation.js +19 -19
- package/dist-server/controllers/invitation.js.map +1 -1
- package/dist-server/controllers/profile.d.ts +5 -5
- package/dist-server/controllers/profile.js +10 -10
- package/dist-server/controllers/profile.js.map +1 -1
- package/dist-server/controllers/reset-password.js +24 -24
- package/dist-server/controllers/reset-password.js.map +1 -1
- package/dist-server/controllers/signin.d.ts +1 -1
- package/dist-server/controllers/signin.js +24 -24
- package/dist-server/controllers/signin.js.map +1 -1
- package/dist-server/controllers/signup.d.ts +1 -1
- package/dist-server/controllers/signup.js +13 -13
- package/dist-server/controllers/signup.js.map +1 -1
- package/dist-server/controllers/unlock-user.js +17 -17
- package/dist-server/controllers/unlock-user.js.map +1 -1
- package/dist-server/controllers/utils/password-rule.js +4 -4
- package/dist-server/controllers/utils/password-rule.js.map +1 -1
- package/dist-server/controllers/utils/save-invitation-token.d.ts +1 -1
- package/dist-server/controllers/utils/save-invitation-token.js +2 -2
- package/dist-server/controllers/utils/save-invitation-token.js.map +1 -1
- package/dist-server/controllers/utils/save-verification-token.d.ts +1 -1
- package/dist-server/controllers/utils/save-verification-token.js +3 -3
- package/dist-server/controllers/utils/save-verification-token.js.map +1 -1
- package/dist-server/controllers/verification.js +23 -23
- package/dist-server/controllers/verification.js.map +1 -1
- package/dist-server/errors/auth-error.js +1 -1
- package/dist-server/errors/auth-error.js.map +1 -1
- package/dist-server/errors/index.d.ts +2 -2
- package/dist-server/errors/index.js +2 -2
- package/dist-server/errors/index.js.map +1 -1
- package/dist-server/errors/user-domain-not-match-error.d.ts +1 -1
- package/dist-server/errors/user-domain-not-match-error.js +8 -8
- package/dist-server/errors/user-domain-not-match-error.js.map +1 -1
- package/dist-server/index.d.ts +16 -16
- package/dist-server/index.js +18 -18
- package/dist-server/index.js.map +1 -1
- package/dist-server/middlewares/authenticate-401-middleware.js +11 -11
- package/dist-server/middlewares/authenticate-401-middleware.js.map +1 -1
- package/dist-server/middlewares/bypass-signin-middleware.d.ts +1 -0
- package/dist-server/middlewares/bypass-signin-middleware.js +20 -0
- package/dist-server/middlewares/bypass-signin-middleware.js.map +1 -0
- package/dist-server/middlewares/domain-authenticate-middleware.d.ts +1 -1
- package/dist-server/middlewares/domain-authenticate-middleware.js +9 -13
- package/dist-server/middlewares/domain-authenticate-middleware.js.map +1 -1
- package/dist-server/middlewares/graphql-authenticate-middleware.js +4 -4
- package/dist-server/middlewares/graphql-authenticate-middleware.js.map +1 -1
- package/dist-server/middlewares/index.d.ts +5 -5
- package/dist-server/middlewares/index.js +24 -19
- package/dist-server/middlewares/index.js.map +1 -1
- package/dist-server/middlewares/jwt-authenticate-middleware.js +15 -15
- package/dist-server/middlewares/jwt-authenticate-middleware.js.map +1 -1
- package/dist-server/middlewares/signin-middleware.js +2 -2
- package/dist-server/middlewares/signin-middleware.js.map +1 -1
- package/dist-server/middlewares/verify-recaptcha-middleware.d.ts +3 -0
- package/dist-server/middlewares/verify-recaptcha-middleware.js +95 -0
- package/dist-server/middlewares/verify-recaptcha-middleware.js.map +1 -0
- package/dist-server/middlewares/webauthn-middleware.js +7 -7
- package/dist-server/middlewares/webauthn-middleware.js.map +1 -1
- package/dist-server/migrations/1548206416130-SeedUser.js +6 -6
- package/dist-server/migrations/1548206416130-SeedUser.js.map +1 -1
- package/dist-server/migrations/1566805283882-SeedPrivilege.js +2 -2
- package/dist-server/migrations/1566805283882-SeedPrivilege.js.map +1 -1
- package/dist-server/migrations/index.js.map +1 -1
- package/dist-server/router/auth-checkin-router.js +18 -17
- package/dist-server/router/auth-checkin-router.js.map +1 -1
- package/dist-server/router/auth-private-process-router.js +27 -19
- package/dist-server/router/auth-private-process-router.js.map +1 -1
- package/dist-server/router/auth-public-process-router.js +24 -24
- package/dist-server/router/auth-public-process-router.js.map +1 -1
- package/dist-server/router/auth-signin-router.js +6 -6
- package/dist-server/router/auth-signin-router.js.map +1 -1
- package/dist-server/router/auth-signup-router.js +11 -8
- package/dist-server/router/auth-signup-router.js.map +1 -1
- package/dist-server/router/index.d.ts +9 -9
- package/dist-server/router/index.js +9 -9
- package/dist-server/router/index.js.map +1 -1
- package/dist-server/router/oauth2/index.d.ts +2 -2
- package/dist-server/router/oauth2/index.js +2 -2
- package/dist-server/router/oauth2/index.js.map +1 -1
- package/dist-server/router/oauth2/oauth2-authorize-router.js +6 -6
- package/dist-server/router/oauth2/oauth2-authorize-router.js.map +1 -1
- package/dist-server/router/oauth2/oauth2-router.d.ts +1 -1
- package/dist-server/router/oauth2/oauth2-router.js +21 -21
- package/dist-server/router/oauth2/oauth2-router.js.map +1 -1
- package/dist-server/router/oauth2/oauth2-server.js +21 -21
- package/dist-server/router/oauth2/oauth2-server.js.map +1 -1
- package/dist-server/router/site-root-router.js +4 -4
- package/dist-server/router/site-root-router.js.map +1 -1
- package/dist-server/router/webauthn-router.js +9 -9
- package/dist-server/router/webauthn-router.js.map +1 -1
- package/dist-server/routes.js +77 -51
- package/dist-server/routes.js.map +1 -1
- package/dist-server/service/app-binding/app-binding-mutation.js +4 -4
- package/dist-server/service/app-binding/app-binding-mutation.js.map +1 -1
- package/dist-server/service/app-binding/app-binding-query.d.ts +4 -4
- package/dist-server/service/app-binding/app-binding-query.js +22 -22
- package/dist-server/service/app-binding/app-binding-query.js.map +1 -1
- package/dist-server/service/app-binding/app-binding-types.d.ts +1 -1
- package/dist-server/service/app-binding/app-binding-types.js +2 -2
- package/dist-server/service/app-binding/app-binding-types.js.map +1 -1
- package/dist-server/service/app-binding/app-binding.d.ts +2 -2
- package/dist-server/service/app-binding/app-binding.js +4 -4
- package/dist-server/service/app-binding/app-binding.js.map +1 -1
- package/dist-server/service/app-binding/index.d.ts +2 -2
- package/dist-server/service/app-binding/index.js +3 -3
- package/dist-server/service/app-binding/index.js.map +1 -1
- package/dist-server/service/appliance/appliance-mutation.d.ts +2 -2
- package/dist-server/service/appliance/appliance-mutation.js +21 -21
- package/dist-server/service/appliance/appliance-mutation.js.map +1 -1
- package/dist-server/service/appliance/appliance-query.d.ts +3 -3
- package/dist-server/service/appliance/appliance-query.js +17 -17
- package/dist-server/service/appliance/appliance-query.js.map +1 -1
- package/dist-server/service/appliance/appliance-types.d.ts +1 -1
- package/dist-server/service/appliance/appliance-types.js +2 -2
- package/dist-server/service/appliance/appliance-types.js.map +1 -1
- package/dist-server/service/appliance/appliance.d.ts +1 -1
- package/dist-server/service/appliance/appliance.js +8 -8
- package/dist-server/service/appliance/appliance.js.map +1 -1
- package/dist-server/service/appliance/index.d.ts +3 -3
- package/dist-server/service/appliance/index.js +5 -5
- package/dist-server/service/appliance/index.js.map +1 -1
- package/dist-server/service/application/application-mutation.d.ts +8 -8
- package/dist-server/service/application/application-mutation.js +20 -20
- package/dist-server/service/application/application-mutation.js.map +1 -1
- package/dist-server/service/application/application-query.d.ts +2 -2
- package/dist-server/service/application/application-query.js +16 -16
- package/dist-server/service/application/application-query.js.map +1 -1
- package/dist-server/service/application/application-types.d.ts +1 -1
- package/dist-server/service/application/application-types.js +4 -4
- package/dist-server/service/application/application-types.js.map +1 -1
- package/dist-server/service/application/application.d.ts +1 -1
- package/dist-server/service/application/application.js +12 -12
- package/dist-server/service/application/application.js.map +1 -1
- package/dist-server/service/application/index.d.ts +3 -3
- package/dist-server/service/application/index.js +5 -5
- package/dist-server/service/application/index.js.map +1 -1
- package/dist-server/service/auth-provider/auth-provider-mutation.d.ts +2 -2
- package/dist-server/service/auth-provider/auth-provider-mutation.js +20 -20
- package/dist-server/service/auth-provider/auth-provider-mutation.js.map +1 -1
- package/dist-server/service/auth-provider/auth-provider-query.d.ts +3 -3
- package/dist-server/service/auth-provider/auth-provider-query.js +20 -20
- package/dist-server/service/auth-provider/auth-provider-query.js.map +1 -1
- package/dist-server/service/auth-provider/auth-provider-type.d.ts +1 -1
- package/dist-server/service/auth-provider/auth-provider-type.js +2 -2
- package/dist-server/service/auth-provider/auth-provider-type.js.map +1 -1
- package/dist-server/service/auth-provider/auth-provider.d.ts +3 -3
- package/dist-server/service/auth-provider/auth-provider.js +12 -12
- package/dist-server/service/auth-provider/auth-provider.js.map +1 -1
- package/dist-server/service/auth-provider/index.d.ts +3 -3
- package/dist-server/service/auth-provider/index.js +5 -5
- package/dist-server/service/auth-provider/index.js.map +1 -1
- package/dist-server/service/domain-generator/domain-generator-mutation.d.ts +1 -1
- package/dist-server/service/domain-generator/domain-generator-mutation.js +11 -11
- package/dist-server/service/domain-generator/domain-generator-mutation.js.map +1 -1
- package/dist-server/service/domain-generator/domain-generator-types.d.ts +1 -1
- package/dist-server/service/domain-generator/domain-generator-types.js +3 -3
- package/dist-server/service/domain-generator/domain-generator-types.js.map +1 -1
- package/dist-server/service/domain-generator/index.d.ts +1 -1
- package/dist-server/service/domain-generator/index.js +2 -2
- package/dist-server/service/domain-generator/index.js.map +1 -1
- package/dist-server/service/domain-link/domain-link-mutation.d.ts +9 -0
- package/dist-server/service/domain-link/domain-link-mutation.js +116 -0
- package/dist-server/service/domain-link/domain-link-mutation.js.map +1 -0
- package/dist-server/service/domain-link/domain-link-query.d.ts +11 -0
- package/dist-server/service/domain-link/domain-link-query.js +75 -0
- package/dist-server/service/domain-link/domain-link-query.js.map +1 -0
- package/dist-server/service/domain-link/domain-link-types.d.ts +18 -0
- package/dist-server/service/domain-link/domain-link-types.js +66 -0
- package/dist-server/service/domain-link/domain-link-types.js.map +1 -0
- package/dist-server/service/domain-link/domain-link.d.ts +28 -0
- package/dist-server/service/domain-link/domain-link.js +105 -0
- package/dist-server/service/domain-link/domain-link.js.map +1 -0
- package/dist-server/service/domain-link/index.d.ts +6 -0
- package/dist-server/service/domain-link/index.js +10 -0
- package/dist-server/service/domain-link/index.js.map +1 -0
- package/dist-server/service/granted-role/granted-role-mutation.d.ts +3 -3
- package/dist-server/service/granted-role/granted-role-mutation.js +17 -17
- package/dist-server/service/granted-role/granted-role-mutation.js.map +1 -1
- package/dist-server/service/granted-role/granted-role-query.d.ts +2 -2
- package/dist-server/service/granted-role/granted-role-query.js +13 -13
- package/dist-server/service/granted-role/granted-role-query.js.map +1 -1
- package/dist-server/service/granted-role/granted-role.d.ts +1 -1
- package/dist-server/service/granted-role/granted-role.js +3 -3
- package/dist-server/service/granted-role/granted-role.js.map +1 -1
- package/dist-server/service/granted-role/index.d.ts +3 -3
- package/dist-server/service/granted-role/index.js +5 -5
- package/dist-server/service/granted-role/index.js.map +1 -1
- package/dist-server/service/index.d.ts +27 -25
- package/dist-server/service/index.js +75 -70
- package/dist-server/service/index.js.map +1 -1
- package/dist-server/service/invitation/index.d.ts +3 -3
- package/dist-server/service/invitation/index.js +5 -5
- package/dist-server/service/invitation/index.js.map +1 -1
- package/dist-server/service/invitation/invitation-mutation.d.ts +2 -2
- package/dist-server/service/invitation/invitation-mutation.js +10 -10
- package/dist-server/service/invitation/invitation-mutation.js.map +1 -1
- package/dist-server/service/invitation/invitation-query.d.ts +1 -1
- package/dist-server/service/invitation/invitation-query.js +7 -7
- package/dist-server/service/invitation/invitation-query.js.map +1 -1
- package/dist-server/service/invitation/invitation-types.d.ts +1 -1
- package/dist-server/service/invitation/invitation-types.js +2 -2
- package/dist-server/service/invitation/invitation-types.js.map +1 -1
- package/dist-server/service/invitation/invitation.d.ts +1 -1
- package/dist-server/service/invitation/invitation.js +5 -5
- package/dist-server/service/invitation/invitation.js.map +1 -1
- package/dist-server/service/login-history/index.d.ts +2 -2
- package/dist-server/service/login-history/index.js +4 -4
- package/dist-server/service/login-history/index.js.map +1 -1
- package/dist-server/service/login-history/login-history-query.d.ts +3 -3
- package/dist-server/service/login-history/login-history-query.js +11 -11
- package/dist-server/service/login-history/login-history-query.js.map +1 -1
- package/dist-server/service/login-history/login-history-type.d.ts +1 -1
- package/dist-server/service/login-history/login-history-type.js +2 -2
- package/dist-server/service/login-history/login-history-type.js.map +1 -1
- package/dist-server/service/login-history/login-history.d.ts +1 -1
- package/dist-server/service/login-history/login-history.js +4 -4
- package/dist-server/service/login-history/login-history.js.map +1 -1
- package/dist-server/service/partner/index.d.ts +3 -3
- package/dist-server/service/partner/index.js +5 -5
- package/dist-server/service/partner/index.js.map +1 -1
- package/dist-server/service/partner/partner-mutation.js +8 -8
- package/dist-server/service/partner/partner-mutation.js.map +1 -1
- package/dist-server/service/partner/partner-query.d.ts +3 -3
- package/dist-server/service/partner/partner-query.js +17 -17
- package/dist-server/service/partner/partner-query.js.map +1 -1
- package/dist-server/service/partner/partner-types.d.ts +1 -1
- package/dist-server/service/partner/partner-types.js +2 -2
- package/dist-server/service/partner/partner-types.js.map +1 -1
- package/dist-server/service/partner/partner.d.ts +1 -1
- package/dist-server/service/partner/partner.js +5 -5
- package/dist-server/service/partner/partner.js.map +1 -1
- package/dist-server/service/password-history/index.d.ts +1 -1
- package/dist-server/service/password-history/index.js +2 -2
- package/dist-server/service/password-history/index.js.map +1 -1
- package/dist-server/service/privilege/index.d.ts +3 -3
- package/dist-server/service/privilege/index.js +5 -5
- package/dist-server/service/privilege/index.js.map +1 -1
- package/dist-server/service/privilege/privilege-directive.js +2 -2
- package/dist-server/service/privilege/privilege-directive.js.map +1 -1
- package/dist-server/service/privilege/privilege-mutation.d.ts +2 -2
- package/dist-server/service/privilege/privilege-mutation.js +15 -15
- package/dist-server/service/privilege/privilege-mutation.js.map +1 -1
- package/dist-server/service/privilege/privilege-query.d.ts +4 -4
- package/dist-server/service/privilege/privilege-query.js +20 -20
- package/dist-server/service/privilege/privilege-query.js.map +1 -1
- package/dist-server/service/privilege/privilege-types.d.ts +1 -1
- package/dist-server/service/privilege/privilege-types.js +2 -2
- package/dist-server/service/privilege/privilege-types.js.map +1 -1
- package/dist-server/service/privilege/privilege.d.ts +2 -2
- package/dist-server/service/privilege/privilege.js +10 -10
- package/dist-server/service/privilege/privilege.js.map +1 -1
- package/dist-server/service/role/index.d.ts +3 -3
- package/dist-server/service/role/index.js +5 -5
- package/dist-server/service/role/index.js.map +1 -1
- package/dist-server/service/role/role-mutation.d.ts +2 -2
- package/dist-server/service/role/role-mutation.js +19 -19
- package/dist-server/service/role/role-mutation.js.map +1 -1
- package/dist-server/service/role/role-query.d.ts +4 -4
- package/dist-server/service/role/role-query.js +29 -29
- package/dist-server/service/role/role-query.js.map +1 -1
- package/dist-server/service/role/role-types.d.ts +1 -1
- package/dist-server/service/role/role-types.js +2 -2
- package/dist-server/service/role/role-types.js.map +1 -1
- package/dist-server/service/role/role.d.ts +2 -2
- package/dist-server/service/role/role.js +12 -12
- package/dist-server/service/role/role.js.map +1 -1
- package/dist-server/service/user/domain-query.d.ts +1 -1
- package/dist-server/service/user/domain-query.js +3 -3
- package/dist-server/service/user/domain-query.js.map +1 -1
- package/dist-server/service/user/index.d.ts +4 -4
- package/dist-server/service/user/index.js +6 -6
- package/dist-server/service/user/index.js.map +1 -1
- package/dist-server/service/user/user-mutation.d.ts +3 -3
- package/dist-server/service/user/user-mutation.js +42 -42
- package/dist-server/service/user/user-mutation.js.map +1 -1
- package/dist-server/service/user/user-query.d.ts +3 -3
- package/dist-server/service/user/user-query.js +21 -21
- package/dist-server/service/user/user-query.js.map +1 -1
- package/dist-server/service/user/user-types.d.ts +1 -1
- package/dist-server/service/user/user-types.js +2 -2
- package/dist-server/service/user/user-types.js.map +1 -1
- package/dist-server/service/user/user.d.ts +3 -3
- package/dist-server/service/user/user.js +40 -40
- package/dist-server/service/user/user.js.map +1 -1
- package/dist-server/service/users-auth-providers/index.d.ts +1 -1
- package/dist-server/service/users-auth-providers/index.js +2 -2
- package/dist-server/service/users-auth-providers/index.js.map +1 -1
- package/dist-server/service/users-auth-providers/users-auth-providers.d.ts +2 -2
- package/dist-server/service/users-auth-providers/users-auth-providers.js +8 -8
- package/dist-server/service/users-auth-providers/users-auth-providers.js.map +1 -1
- package/dist-server/service/verification-token/index.d.ts +1 -1
- package/dist-server/service/verification-token/index.js +2 -2
- package/dist-server/service/verification-token/index.js.map +1 -1
- package/dist-server/service/web-auth-credential/index.d.ts +1 -1
- package/dist-server/service/web-auth-credential/index.js +2 -2
- package/dist-server/service/web-auth-credential/index.js.map +1 -1
- package/dist-server/service/web-auth-credential/web-auth-credential.d.ts +1 -1
- package/dist-server/service/web-auth-credential/web-auth-credential.js +10 -10
- package/dist-server/service/web-auth-credential/web-auth-credential.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/dist-server/types.d.ts +1 -1
- package/dist-server/types.js.map +1 -1
- package/dist-server/utils/access-token-cookie.js +2 -11
- package/dist-server/utils/access-token-cookie.js.map +1 -1
- package/dist-server/utils/check-permission.d.ts +2 -2
- package/dist-server/utils/check-permission.js +3 -3
- package/dist-server/utils/check-permission.js.map +1 -1
- package/dist-server/utils/check-user-belongs-domain.d.ts +1 -1
- package/dist-server/utils/check-user-belongs-domain.js +2 -2
- package/dist-server/utils/check-user-belongs-domain.js.map +1 -1
- package/dist-server/utils/check-user-has-role.d.ts +1 -1
- package/dist-server/utils/check-user-has-role.js +2 -2
- package/dist-server/utils/check-user-has-role.js.map +1 -1
- package/dist-server/utils/get-domain-users.d.ts +1 -1
- package/dist-server/utils/get-domain-users.js +2 -2
- package/dist-server/utils/get-domain-users.js.map +1 -1
- package/dist-server/utils/get-user-domains.d.ts +2 -3
- package/dist-server/utils/get-user-domains.js +30 -26
- package/dist-server/utils/get-user-domains.js.map +1 -1
- package/helps/config/recaptcha.ja.md +49 -0
- package/helps/config/recaptcha.ko.md +49 -0
- package/helps/config/recaptcha.md +49 -0
- package/helps/config/recaptcha.ms.md +49 -0
- package/helps/config/recaptcha.zh.md +49 -0
- package/package.json +7 -6
- package/dist-server/utils/get-domain-from-hostname.d.ts +0 -1
- package/dist-server/utils/get-domain-from-hostname.js +0 -9
- package/dist-server/utils/get-domain-from-hostname.js.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"domain-generator-mutation.js","sourceRoot":"","sources":["../../../server/service/domain-generator/domain-generator-mutation.ts"],"names":[],"mappings":";;;;AAAA,+CAAsE;AACtE,qCAA+C;AAE/C,iDAA6D;AAC7D,iDAA+C;AAE/C,
|
1
|
+
{"version":3,"file":"domain-generator-mutation.js","sourceRoot":"","sources":["../../../server/service/domain-generator/domain-generator-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { ILike, In, Repository } from 'typeorm'\n\nimport { Domain, getRepository } from '@things-factory/shell'\nimport { slugger } from '@things-factory/utils'\n\nimport { Privilege } from '../privilege/privilege.js'\nimport { Role } from '../role/role.js'\nimport { User } from '../user/user.js'\nimport { DomainGeneratorInput, DomainUserRoleInput } from './domain-generator-types.js'\n\n@Resolver()\nexport class DomainGeneratorMutation {\n @Directive('@privilege(superUserGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => Domain)\n async domainRegister(\n @Arg('domainInput') domainInput: DomainGeneratorInput,\n @Ctx() context: ResolverContext\n ): Promise<Domain> {\n const { user } = context.state\n const { name, description } = domainInput\n const domainRepo: Repository<Domain> = getRepository(Domain)\n const subdomain: string = slugger(name)\n\n const domain: Domain = await domainRepo.findOneBy({ subdomain })\n if (domain) {\n throw new Error('domain is duplicated')\n }\n\n return await domainRepo.save({ name, description, subdomain, owner: user.id })\n }\n\n @Directive('@transaction')\n @Mutation(returns => Domain)\n async domainUserRoleRegister(\n @Arg('newDomainInfo') newDomainInfo: DomainUserRoleInput,\n @Ctx() context: ResolverContext\n ): Promise<Domain> {\n const { tx } = context.state\n // 도메인 생성\n const { domain, users, roles } = newDomainInfo\n const domainOwner = users.find(user => user.owner === true)\n\n const domainRepository: Repository<Domain> = tx.getRepository(Domain)\n const roleRepository: Repository<Role> = tx.getRepository(Role)\n const userRepository: Repository<User> = tx.getRepository(User)\n const privilegeRepository: Repository<Privilege> = tx.getRepository(Privilege)\n\n const subdomain: string = slugger(domain.name)\n\n const newDomain = await domainRepository.save({\n name: domain.name,\n description: domain.description,\n subdomain\n })\n\n // 역할 생성\n const newRoles: Role[] = await Promise.all(\n roles.map(async (role: Role) => {\n if (role.privileges?.length) {\n const privilegeIds: string[] = role.privileges.map((p: Privilege) => p.id)\n role.privileges = await privilegeRepository.findBy({\n id: In(privilegeIds)\n })\n }\n\n role.domain = newDomain\n return await roleRepository.save(role)\n })\n )\n\n // 사용자 생성\n let inviteUsers = []\n let createUsers = []\n users.forEach(user => (user.isInvitee ? inviteUsers.push(user) : createUsers.push(user)))\n\n // create user\n await Promise.all(\n createUsers.map(async user => {\n user.domains = [newDomain]\n user.password = User.encode(user.password, user.salt)\n user.salt = User.generateSalt()\n user.passwordUpdatedAt = new Date()\n user.userType = 'user'\n user.roles = filterUserRoles(user.roles, newRoles)\n\n return await userRepository.save(user)\n })\n )\n\n // invite user\n await Promise.all(\n inviteUsers.map(async inviteUser => {\n const user: User = await userRepository.findOne({\n where: { email: inviteUser.email },\n relations: ['domains', 'roles']\n })\n\n user.domains = [...user.domains, newDomain]\n user.roles = [...user.roles, ...filterUserRoles(inviteUser.roles, newRoles)]\n\n return await userRepository.save(user)\n })\n )\n\n // domain owner\n const { id } = await userRepository.findOne({ where: { email: ILike(domainOwner.email) } })\n newDomain.owner = id\n return await domainRepository.save(newDomain)\n }\n}\n\nfunction filterUserRoles(userRoles: Role[], newRoles: Role[]): Role[] {\n const userRoleNames: string[] = userRoles.map((r: Role) => r.name)\n return newRoles.filter((r: Role) => userRoleNames.indexOf(r.name) >= 0)\n}\n"]}
|
@@ -5,7 +5,7 @@ const tslib_1 = require("tslib");
|
|
5
5
|
const type_graphql_1 = require("type-graphql");
|
6
6
|
const graphql_scalars_1 = require("graphql-scalars");
|
7
7
|
const shell_1 = require("@things-factory/shell");
|
8
|
-
const
|
8
|
+
const role_types_js_1 = require("../role/role-types.js");
|
9
9
|
let DomainGeneratorInput = class DomainGeneratorInput {
|
10
10
|
};
|
11
11
|
exports.DomainGeneratorInput = DomainGeneratorInput;
|
@@ -32,7 +32,7 @@ tslib_1.__decorate([
|
|
32
32
|
tslib_1.__metadata("design:type", Array)
|
33
33
|
], DomainUserRoleInput.prototype, "users", void 0);
|
34
34
|
tslib_1.__decorate([
|
35
|
-
(0, type_graphql_1.Field)(type => [
|
35
|
+
(0, type_graphql_1.Field)(type => [role_types_js_1.NewRole]),
|
36
36
|
tslib_1.__metadata("design:type", Array)
|
37
37
|
], DomainUserRoleInput.prototype, "roles", void 0);
|
38
38
|
exports.DomainUserRoleInput = DomainUserRoleInput = tslib_1.__decorate([
|
@@ -62,7 +62,7 @@ tslib_1.__decorate([
|
|
62
62
|
tslib_1.__metadata("design:type", Boolean)
|
63
63
|
], NewUserByDomainWizardInput.prototype, "owner", void 0);
|
64
64
|
tslib_1.__decorate([
|
65
|
-
(0, type_graphql_1.Field)(type => [
|
65
|
+
(0, type_graphql_1.Field)(type => [role_types_js_1.NewRole]),
|
66
66
|
tslib_1.__metadata("design:type", Array)
|
67
67
|
], NewUserByDomainWizardInput.prototype, "roles", void 0);
|
68
68
|
exports.NewUserByDomainWizardInput = NewUserByDomainWizardInput = tslib_1.__decorate([
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"domain-generator-types.js","sourceRoot":"","sources":["../../../server/service/domain-generator/domain-generator-types.ts"],"names":[],"mappings":";;;;AAAA,+CAA+C;AAC/C,qDAAqD;AACrD,iDAAmD;AACnD,
|
1
|
+
{"version":3,"file":"domain-generator-types.js","sourceRoot":"","sources":["../../../server/service/domain-generator/domain-generator-types.ts"],"names":[],"mappings":";;;;AAAA,+CAA+C;AAC/C,qDAAqD;AACrD,iDAAmD;AACnD,yDAA+C;AAGxC,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;CAMhC,CAAA;AANY,oDAAoB;AAE/B;IADC,IAAA,oBAAK,GAAE;;kDACI;AAGZ;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACN;+BALT,oBAAoB;IADhC,IAAA,wBAAS,GAAE;GACC,oBAAoB,CAMhC;AAGM,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;CAS/B,CAAA;AATY,kDAAmB;AAE9B;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,mBAAW,CAAC;sCACnB,mBAAW;mDAAA;AAGnB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,0BAA0B,CAAC,CAAC;;kDACT;AAGnC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,uBAAO,CAAC,CAAC;;kDACT;8BARL,mBAAmB;IAD/B,IAAA,wBAAS,GAAE;GACC,mBAAmB,CAS/B;AAGM,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;CAkBtC,CAAA;AAlBY,gEAA0B;AAErC;IADC,IAAA,oBAAK,GAAE;;wDACI;AAGZ;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,qCAAmB,CAAC;;yDACtB;AAGb;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4DACV;AAGhB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACf,OAAO;6DAAA;AAGlB;IADC,IAAA,oBAAK,GAAE;sCACD,OAAO;yDAAA;AAGd;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,uBAAO,CAAC,CAAC;;yDACT;qCAjBL,0BAA0B;IADtC,IAAA,wBAAS,GAAE;GACC,0BAA0B,CAkBtC","sourcesContent":["import { Field, InputType } from 'type-graphql'\nimport { GraphQLEmailAddress } from 'graphql-scalars'\nimport { DomainInput } from '@things-factory/shell'\nimport { NewRole } from '../role/role-types.js'\n\n@InputType()\nexport class DomainGeneratorInput {\n @Field()\n name: string\n\n @Field({ nullable: true })\n description?: string\n}\n\n@InputType()\nexport class DomainUserRoleInput {\n @Field(type => DomainInput)\n domain: DomainInput\n\n @Field(type => [NewUserByDomainWizardInput])\n users: NewUserByDomainWizardInput[]\n\n @Field(type => [NewRole])\n roles: NewRole[]\n}\n\n@InputType()\nexport class NewUserByDomainWizardInput {\n @Field()\n name: string\n\n @Field(type => GraphQLEmailAddress)\n email: string\n\n @Field({ nullable: true })\n password: string\n\n @Field({ nullable: true })\n isInvitee: Boolean\n\n @Field()\n owner: Boolean\n\n @Field(type => [NewRole])\n roles: NewRole[]\n}\n"]}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import { DomainGeneratorMutation } from './domain-generator-mutation';
|
1
|
+
import { DomainGeneratorMutation } from './domain-generator-mutation.js';
|
2
2
|
export declare const resolvers: (typeof DomainGeneratorMutation)[];
|
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.resolvers = void 0;
|
4
|
-
const
|
5
|
-
exports.resolvers = [
|
4
|
+
const domain_generator_mutation_js_1 = require("./domain-generator-mutation.js");
|
5
|
+
exports.resolvers = [domain_generator_mutation_js_1.DomainGeneratorMutation];
|
6
6
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/domain-generator/index.ts"],"names":[],"mappings":";;;AAAA,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/domain-generator/index.ts"],"names":[],"mappings":";;;AAAA,iFAAwE;AAE3D,QAAA,SAAS,GAAG,CAAC,sDAAuB,CAAC,CAAA","sourcesContent":["import { DomainGeneratorMutation } from './domain-generator-mutation.js'\n\nexport const resolvers = [DomainGeneratorMutation]\n"]}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { DomainLink } from './domain-link.js';
|
2
|
+
import { NewDomainLink, DomainLinkPatch } from './domain-link-types.js';
|
3
|
+
export declare class DomainLinkMutation {
|
4
|
+
createDomainLink(domainLink: NewDomainLink, context: ResolverContext): Promise<DomainLink>;
|
5
|
+
updateDomainLink(id: string, patch: DomainLinkPatch, context: ResolverContext): Promise<DomainLink>;
|
6
|
+
updateMultipleDomainLink(patches: DomainLinkPatch[], context: ResolverContext): Promise<DomainLink[]>;
|
7
|
+
deleteDomainLink(id: string, context: ResolverContext): Promise<boolean>;
|
8
|
+
deleteDomainLinks(ids: string[], context: ResolverContext): Promise<boolean>;
|
9
|
+
}
|
@@ -0,0 +1,116 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.DomainLinkMutation = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const type_graphql_1 = require("type-graphql");
|
6
|
+
const typeorm_1 = require("typeorm");
|
7
|
+
const shell_1 = require("@things-factory/shell");
|
8
|
+
const domain_link_js_1 = require("./domain-link.js");
|
9
|
+
const domain_link_types_js_1 = require("./domain-link-types.js");
|
10
|
+
let DomainLinkMutation = class DomainLinkMutation {
|
11
|
+
async createDomainLink(domainLink, context) {
|
12
|
+
const { user, tx } = context.state;
|
13
|
+
const result = await (0, shell_1.getRepository)(domain_link_js_1.DomainLink, tx).save(Object.assign(Object.assign({}, domainLink), { creator: user, updater: user }));
|
14
|
+
return result;
|
15
|
+
}
|
16
|
+
async updateDomainLink(id, patch, context) {
|
17
|
+
const { domain, user, tx } = context.state;
|
18
|
+
const repository = (0, shell_1.getRepository)(domain_link_js_1.DomainLink, tx);
|
19
|
+
const domainLink = await repository.findOne({
|
20
|
+
where: { id }
|
21
|
+
});
|
22
|
+
const result = await repository.save(Object.assign(Object.assign(Object.assign({}, domainLink), patch), { updater: user }));
|
23
|
+
return result;
|
24
|
+
}
|
25
|
+
async updateMultipleDomainLink(patches, context) {
|
26
|
+
const { domain, user, tx } = context.state;
|
27
|
+
let results = [];
|
28
|
+
const _createRecords = patches.filter((patch) => patch.cuFlag.toUpperCase() === '+');
|
29
|
+
const _updateRecords = patches.filter((patch) => patch.cuFlag.toUpperCase() === 'M');
|
30
|
+
const domainLinkRepo = (0, shell_1.getRepository)(domain_link_js_1.DomainLink, tx);
|
31
|
+
if (_createRecords.length > 0) {
|
32
|
+
for (let i = 0; i < _createRecords.length; i++) {
|
33
|
+
const newRecord = _createRecords[i];
|
34
|
+
const result = await domainLinkRepo.save(Object.assign(Object.assign({}, newRecord), { domain, creator: user, updater: user }));
|
35
|
+
results.push(Object.assign(Object.assign({}, result), { cuFlag: '+' }));
|
36
|
+
}
|
37
|
+
}
|
38
|
+
if (_updateRecords.length > 0) {
|
39
|
+
for (let i = 0; i < _updateRecords.length; i++) {
|
40
|
+
const updateRecord = _updateRecords[i];
|
41
|
+
const domainLink = await domainLinkRepo.findOneBy({ id: updateRecord.id });
|
42
|
+
const result = await domainLinkRepo.save(Object.assign(Object.assign(Object.assign({}, domainLink), updateRecord), { updater: user }));
|
43
|
+
results.push(Object.assign(Object.assign({}, result), { cuFlag: 'M' }));
|
44
|
+
}
|
45
|
+
}
|
46
|
+
return results;
|
47
|
+
}
|
48
|
+
async deleteDomainLink(id, context) {
|
49
|
+
const { domain, tx } = context.state;
|
50
|
+
await (0, shell_1.getRepository)(domain_link_js_1.DomainLink, tx).delete({ id });
|
51
|
+
return true;
|
52
|
+
}
|
53
|
+
async deleteDomainLinks(ids, context) {
|
54
|
+
const { domain, tx } = context.state;
|
55
|
+
await (0, shell_1.getRepository)(domain_link_js_1.DomainLink, tx).delete({
|
56
|
+
id: (0, typeorm_1.In)(ids)
|
57
|
+
});
|
58
|
+
return true;
|
59
|
+
}
|
60
|
+
};
|
61
|
+
exports.DomainLinkMutation = DomainLinkMutation;
|
62
|
+
tslib_1.__decorate([
|
63
|
+
(0, type_graphql_1.Directive)('@transaction'),
|
64
|
+
(0, type_graphql_1.Directive)('@privilege(superUserGranted: true)'),
|
65
|
+
(0, type_graphql_1.Mutation)(returns => domain_link_js_1.DomainLink, { description: 'To create new DomainLink' }),
|
66
|
+
tslib_1.__param(0, (0, type_graphql_1.Arg)('domainLink')),
|
67
|
+
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
68
|
+
tslib_1.__metadata("design:type", Function),
|
69
|
+
tslib_1.__metadata("design:paramtypes", [domain_link_types_js_1.NewDomainLink, Object]),
|
70
|
+
tslib_1.__metadata("design:returntype", Promise)
|
71
|
+
], DomainLinkMutation.prototype, "createDomainLink", null);
|
72
|
+
tslib_1.__decorate([
|
73
|
+
(0, type_graphql_1.Directive)('@transaction'),
|
74
|
+
(0, type_graphql_1.Directive)('@privilege(superUserGranted: true)'),
|
75
|
+
(0, type_graphql_1.Mutation)(returns => domain_link_js_1.DomainLink, { description: 'To modify DomainLink information' }),
|
76
|
+
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
77
|
+
tslib_1.__param(1, (0, type_graphql_1.Arg)('patch')),
|
78
|
+
tslib_1.__param(2, (0, type_graphql_1.Ctx)()),
|
79
|
+
tslib_1.__metadata("design:type", Function),
|
80
|
+
tslib_1.__metadata("design:paramtypes", [String, domain_link_types_js_1.DomainLinkPatch, Object]),
|
81
|
+
tslib_1.__metadata("design:returntype", Promise)
|
82
|
+
], DomainLinkMutation.prototype, "updateDomainLink", null);
|
83
|
+
tslib_1.__decorate([
|
84
|
+
(0, type_graphql_1.Directive)('@transaction'),
|
85
|
+
(0, type_graphql_1.Directive)('@privilege(superUserGranted: true)'),
|
86
|
+
(0, type_graphql_1.Mutation)(returns => [domain_link_js_1.DomainLink], { description: "To modify multiple DomainLinks' information" }),
|
87
|
+
tslib_1.__param(0, (0, type_graphql_1.Arg)('patches', type => [domain_link_types_js_1.DomainLinkPatch])),
|
88
|
+
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
89
|
+
tslib_1.__metadata("design:type", Function),
|
90
|
+
tslib_1.__metadata("design:paramtypes", [Array, Object]),
|
91
|
+
tslib_1.__metadata("design:returntype", Promise)
|
92
|
+
], DomainLinkMutation.prototype, "updateMultipleDomainLink", null);
|
93
|
+
tslib_1.__decorate([
|
94
|
+
(0, type_graphql_1.Directive)('@transaction'),
|
95
|
+
(0, type_graphql_1.Directive)('@privilege(superUserGranted: true)'),
|
96
|
+
(0, type_graphql_1.Mutation)(returns => Boolean, { description: 'To delete DomainLink' }),
|
97
|
+
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
98
|
+
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
99
|
+
tslib_1.__metadata("design:type", Function),
|
100
|
+
tslib_1.__metadata("design:paramtypes", [String, Object]),
|
101
|
+
tslib_1.__metadata("design:returntype", Promise)
|
102
|
+
], DomainLinkMutation.prototype, "deleteDomainLink", null);
|
103
|
+
tslib_1.__decorate([
|
104
|
+
(0, type_graphql_1.Directive)('@transaction'),
|
105
|
+
(0, type_graphql_1.Directive)('@privilege(superUserGranted: true)'),
|
106
|
+
(0, type_graphql_1.Mutation)(returns => Boolean, { description: 'To delete multiple DomainLinks' }),
|
107
|
+
tslib_1.__param(0, (0, type_graphql_1.Arg)('ids', type => [String])),
|
108
|
+
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
109
|
+
tslib_1.__metadata("design:type", Function),
|
110
|
+
tslib_1.__metadata("design:paramtypes", [Array, Object]),
|
111
|
+
tslib_1.__metadata("design:returntype", Promise)
|
112
|
+
], DomainLinkMutation.prototype, "deleteDomainLinks", null);
|
113
|
+
exports.DomainLinkMutation = DomainLinkMutation = tslib_1.__decorate([
|
114
|
+
(0, type_graphql_1.Resolver)(domain_link_js_1.DomainLink)
|
115
|
+
], DomainLinkMutation);
|
116
|
+
//# sourceMappingURL=domain-link-mutation.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"domain-link-mutation.js","sourceRoot":"","sources":["../../../server/service/domain-link/domain-link-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'\nimport { In } from 'typeorm'\nimport { getRepository } from '@things-factory/shell'\n\nimport { DomainLink } from './domain-link.js'\nimport { NewDomainLink, DomainLinkPatch } from './domain-link-types.js'\n\n@Resolver(DomainLink)\nexport class DomainLinkMutation {\n @Directive('@transaction')\n @Directive('@privilege(superUserGranted: true)')\n @Mutation(returns => DomainLink, { description: 'To create new DomainLink' })\n async createDomainLink(\n @Arg('domainLink') domainLink: NewDomainLink,\n @Ctx() context: ResolverContext\n ): Promise<DomainLink> {\n const { user, tx } = context.state\n\n const result = await getRepository(DomainLink, tx).save({\n ...domainLink,\n creator: user,\n updater: user\n })\n\n return result\n }\n\n @Directive('@transaction')\n @Directive('@privilege(superUserGranted: true)')\n @Mutation(returns => DomainLink, { description: 'To modify DomainLink information' })\n async updateDomainLink(\n @Arg('id') id: string,\n @Arg('patch') patch: DomainLinkPatch,\n @Ctx() context: ResolverContext\n ): Promise<DomainLink> {\n const { domain, user, tx } = context.state\n\n const repository = getRepository(DomainLink, tx)\n const domainLink = await repository.findOne({\n where: { id }\n })\n\n const result = await repository.save({\n ...domainLink,\n ...patch,\n updater: user\n })\n\n return result\n }\n\n @Directive('@transaction')\n @Directive('@privilege(superUserGranted: true)')\n @Mutation(returns => [DomainLink], { description: \"To modify multiple DomainLinks' information\" })\n async updateMultipleDomainLink(\n @Arg('patches', type => [DomainLinkPatch]) patches: DomainLinkPatch[],\n @Ctx() context: ResolverContext\n ): Promise<DomainLink[]> {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const domainLinkRepo = getRepository(DomainLink, tx)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await domainLinkRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const updateRecord = _updateRecords[i]\n const domainLink = await domainLinkRepo.findOneBy({ id: updateRecord.id })\n\n const result = await domainLinkRepo.save({\n ...domainLink,\n ...updateRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Directive('@privilege(superUserGranted: true)')\n @Mutation(returns => Boolean, { description: 'To delete DomainLink' })\n async deleteDomainLink(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { domain, tx } = context.state\n\n await getRepository(DomainLink, tx).delete({ id })\n\n return true\n }\n\n @Directive('@transaction')\n @Directive('@privilege(superUserGranted: true)')\n @Mutation(returns => Boolean, { description: 'To delete multiple DomainLinks' })\n async deleteDomainLinks(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { domain, tx } = context.state\n\n await getRepository(DomainLink, tx).delete({\n id: In(ids)\n })\n\n return true\n }\n}\n"]}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { Domain, ListParam } from '@things-factory/shell';
|
2
|
+
import { User } from '../user/user.js';
|
3
|
+
import { DomainLink } from './domain-link.js';
|
4
|
+
import { DomainLinkList } from './domain-link-types.js';
|
5
|
+
export declare class DomainLinkQuery {
|
6
|
+
domainLinks(params: ListParam, context: ResolverContext): Promise<DomainLinkList>;
|
7
|
+
sourceDomain(domainLink: DomainLink): Promise<Domain>;
|
8
|
+
targetDomain(domainLink: DomainLink): Promise<Domain>;
|
9
|
+
updater(domainLink: DomainLink): Promise<User>;
|
10
|
+
creator(domainLink: DomainLink): Promise<User>;
|
11
|
+
}
|
@@ -0,0 +1,75 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.DomainLinkQuery = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const type_graphql_1 = require("type-graphql");
|
6
|
+
const shell_1 = require("@things-factory/shell");
|
7
|
+
const user_js_1 = require("../user/user.js");
|
8
|
+
const domain_link_js_1 = require("./domain-link.js");
|
9
|
+
const domain_link_types_js_1 = require("./domain-link-types.js");
|
10
|
+
let DomainLinkQuery = class DomainLinkQuery {
|
11
|
+
async domainLinks(params, context) {
|
12
|
+
const { domain } = context.state;
|
13
|
+
const queryBuilder = (0, shell_1.getQueryBuilderFromListParams)({
|
14
|
+
params,
|
15
|
+
repository: await (0, shell_1.getRepository)(domain_link_js_1.DomainLink),
|
16
|
+
searchables: ['sourceDomain', 'targetDomain', 'type']
|
17
|
+
});
|
18
|
+
const [items, total] = await queryBuilder.getManyAndCount();
|
19
|
+
return { items, total };
|
20
|
+
}
|
21
|
+
async sourceDomain(domainLink) {
|
22
|
+
return domainLink.sourceDomainId && (await (0, shell_1.getRepository)(shell_1.Domain).findOneBy({ id: domainLink.sourceDomainId }));
|
23
|
+
}
|
24
|
+
async targetDomain(domainLink) {
|
25
|
+
return domainLink.targetDomainId && (await (0, shell_1.getRepository)(shell_1.Domain).findOneBy({ id: domainLink.targetDomainId }));
|
26
|
+
}
|
27
|
+
async updater(domainLink) {
|
28
|
+
return domainLink.updaterId && (await (0, shell_1.getRepository)(user_js_1.User).findOneBy({ id: domainLink.updaterId }));
|
29
|
+
}
|
30
|
+
async creator(domainLink) {
|
31
|
+
return domainLink.creatorId && (await (0, shell_1.getRepository)(user_js_1.User).findOneBy({ id: domainLink.creatorId }));
|
32
|
+
}
|
33
|
+
};
|
34
|
+
exports.DomainLinkQuery = DomainLinkQuery;
|
35
|
+
tslib_1.__decorate([
|
36
|
+
(0, type_graphql_1.Directive)('@privilege(superUserGranted: true)'),
|
37
|
+
(0, type_graphql_1.Query)(returns => domain_link_types_js_1.DomainLinkList, { description: 'To fetch multiple DomainLinks' }),
|
38
|
+
tslib_1.__param(0, (0, type_graphql_1.Args)(type => shell_1.ListParam)),
|
39
|
+
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
40
|
+
tslib_1.__metadata("design:type", Function),
|
41
|
+
tslib_1.__metadata("design:paramtypes", [shell_1.ListParam, Object]),
|
42
|
+
tslib_1.__metadata("design:returntype", Promise)
|
43
|
+
], DomainLinkQuery.prototype, "domainLinks", null);
|
44
|
+
tslib_1.__decorate([
|
45
|
+
(0, type_graphql_1.FieldResolver)(type => shell_1.Domain),
|
46
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
47
|
+
tslib_1.__metadata("design:type", Function),
|
48
|
+
tslib_1.__metadata("design:paramtypes", [domain_link_js_1.DomainLink]),
|
49
|
+
tslib_1.__metadata("design:returntype", Promise)
|
50
|
+
], DomainLinkQuery.prototype, "sourceDomain", null);
|
51
|
+
tslib_1.__decorate([
|
52
|
+
(0, type_graphql_1.FieldResolver)(type => shell_1.Domain),
|
53
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
54
|
+
tslib_1.__metadata("design:type", Function),
|
55
|
+
tslib_1.__metadata("design:paramtypes", [domain_link_js_1.DomainLink]),
|
56
|
+
tslib_1.__metadata("design:returntype", Promise)
|
57
|
+
], DomainLinkQuery.prototype, "targetDomain", null);
|
58
|
+
tslib_1.__decorate([
|
59
|
+
(0, type_graphql_1.FieldResolver)(type => user_js_1.User),
|
60
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
61
|
+
tslib_1.__metadata("design:type", Function),
|
62
|
+
tslib_1.__metadata("design:paramtypes", [domain_link_js_1.DomainLink]),
|
63
|
+
tslib_1.__metadata("design:returntype", Promise)
|
64
|
+
], DomainLinkQuery.prototype, "updater", null);
|
65
|
+
tslib_1.__decorate([
|
66
|
+
(0, type_graphql_1.FieldResolver)(type => user_js_1.User),
|
67
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
68
|
+
tslib_1.__metadata("design:type", Function),
|
69
|
+
tslib_1.__metadata("design:paramtypes", [domain_link_js_1.DomainLink]),
|
70
|
+
tslib_1.__metadata("design:returntype", Promise)
|
71
|
+
], DomainLinkQuery.prototype, "creator", null);
|
72
|
+
exports.DomainLinkQuery = DomainLinkQuery = tslib_1.__decorate([
|
73
|
+
(0, type_graphql_1.Resolver)(domain_link_js_1.DomainLink)
|
74
|
+
], DomainLinkQuery);
|
75
|
+
//# sourceMappingURL=domain-link-query.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"domain-link-query.js","sourceRoot":"","sources":["../../../server/service/domain-link/domain-link-query.ts"],"names":[],"mappings":";;;;AAAA,+CAA8F;AAC9F,iDAAuG;AACvG,6CAAsC;AACtC,qDAA6C;AAC7C,iEAAuD;AAGhD,IAAM,eAAe,GAArB,MAAM,eAAe;IAGpB,AAAN,KAAK,CAAC,WAAW,CACU,MAAiB,EACnC,OAAwB;QAE/B,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,MAAM,YAAY,GAAG,IAAA,qCAA6B,EAAC;YACjD,MAAM;YACN,UAAU,EAAE,MAAM,IAAA,qBAAa,EAAC,2BAAU,CAAC;YAC3C,WAAW,EAAE,CAAC,cAAc,EAAE,cAAc,EAAE,MAAM,CAAC;SACtD,CAAC,CAAA;QAEF,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,YAAY,CAAC,eAAe,EAAE,CAAA;QAE3D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAGK,AAAN,KAAK,CAAC,YAAY,CAAS,UAAsB;QAC/C,OAAO,UAAU,CAAC,cAAc,IAAI,CAAC,MAAM,IAAA,qBAAa,EAAC,cAAM,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;IAChH,CAAC;IAGK,AAAN,KAAK,CAAC,YAAY,CAAS,UAAsB;QAC/C,OAAO,UAAU,CAAC,cAAc,IAAI,CAAC,MAAM,IAAA,qBAAa,EAAC,cAAM,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;IAChH,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,UAAsB;QAC1C,OAAO,UAAU,CAAC,SAAS,IAAI,CAAC,MAAM,IAAA,qBAAa,EAAC,cAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;IACpG,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,UAAsB;QAC1C,OAAO,UAAU,CAAC,SAAS,IAAI,CAAC,MAAM,IAAA,qBAAa,EAAC,cAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;IACpG,CAAC;CACF,CAAA;AAvCY,0CAAe;AAGpB;IAFL,IAAA,wBAAS,EAAC,oCAAoC,CAAC;IAC/C,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,qCAAc,EAAE,EAAE,WAAW,EAAE,+BAA+B,EAAE,CAAC;IAEhF,mBAAA,IAAA,mBAAI,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAS,CAAC,CAAA;IACvB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CAD2B,iBAAS;;kDAc3C;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;IACV,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAa,2BAAU;;mDAEhD;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;IACV,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAa,2BAAU;;mDAEhD;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,cAAI,CAAC;IACb,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAa,2BAAU;;8CAE3C;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,cAAI,CAAC;IACb,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAa,2BAAU;;8CAE3C;0BAtCU,eAAe;IAD3B,IAAA,uBAAQ,EAAC,2BAAU,CAAC;GACR,eAAe,CAuC3B","sourcesContent":["import { Resolver, Query, FieldResolver, Root, Args, Arg, Ctx, Directive } from 'type-graphql'\nimport { Domain, getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'\nimport { User } from '../user/user.js'\nimport { DomainLink } from './domain-link.js'\nimport { DomainLinkList } from './domain-link-types.js'\n\n@Resolver(DomainLink)\nexport class DomainLinkQuery {\n @Directive('@privilege(superUserGranted: true)')\n @Query(returns => DomainLinkList, { description: 'To fetch multiple DomainLinks' })\n async domainLinks(\n @Args(type => ListParam) params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<DomainLinkList> {\n const { domain } = context.state\n\n const queryBuilder = getQueryBuilderFromListParams({\n params,\n repository: await getRepository(DomainLink),\n searchables: ['sourceDomain', 'targetDomain', 'type']\n })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => Domain)\n async sourceDomain(@Root() domainLink: DomainLink): Promise<Domain> {\n return domainLink.sourceDomainId && (await getRepository(Domain).findOneBy({ id: domainLink.sourceDomainId }))\n }\n\n @FieldResolver(type => Domain)\n async targetDomain(@Root() domainLink: DomainLink): Promise<Domain> {\n return domainLink.targetDomainId && (await getRepository(Domain).findOneBy({ id: domainLink.targetDomainId }))\n }\n\n @FieldResolver(type => User)\n async updater(@Root() domainLink: DomainLink): Promise<User> {\n return domainLink.updaterId && (await getRepository(User).findOneBy({ id: domainLink.updaterId }))\n }\n\n @FieldResolver(type => User)\n async creator(@Root() domainLink: DomainLink): Promise<User> {\n return domainLink.creatorId && (await getRepository(User).findOneBy({ id: domainLink.creatorId }))\n }\n}\n"]}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { ObjectRef } from '@things-factory/shell';
|
2
|
+
import { DomainLink, DomainLinkType } from './domain-link.js';
|
3
|
+
export declare class NewDomainLink {
|
4
|
+
sourceDomain: ObjectRef;
|
5
|
+
targetDomain: ObjectRef;
|
6
|
+
type: DomainLinkType;
|
7
|
+
}
|
8
|
+
export declare class DomainLinkPatch {
|
9
|
+
id?: string;
|
10
|
+
sourceDomain: ObjectRef;
|
11
|
+
targetDomain: ObjectRef;
|
12
|
+
type: DomainLinkType;
|
13
|
+
cuFlag?: string;
|
14
|
+
}
|
15
|
+
export declare class DomainLinkList {
|
16
|
+
items: DomainLink[];
|
17
|
+
total: number;
|
18
|
+
}
|
@@ -0,0 +1,66 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.DomainLinkList = exports.DomainLinkPatch = exports.NewDomainLink = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const type_graphql_1 = require("type-graphql");
|
6
|
+
const shell_1 = require("@things-factory/shell");
|
7
|
+
const domain_link_js_1 = require("./domain-link.js");
|
8
|
+
let NewDomainLink = class NewDomainLink {
|
9
|
+
};
|
10
|
+
exports.NewDomainLink = NewDomainLink;
|
11
|
+
tslib_1.__decorate([
|
12
|
+
(0, type_graphql_1.Field)(() => shell_1.ObjectRef),
|
13
|
+
tslib_1.__metadata("design:type", shell_1.ObjectRef)
|
14
|
+
], NewDomainLink.prototype, "sourceDomain", void 0);
|
15
|
+
tslib_1.__decorate([
|
16
|
+
(0, type_graphql_1.Field)(() => shell_1.ObjectRef),
|
17
|
+
tslib_1.__metadata("design:type", shell_1.ObjectRef)
|
18
|
+
], NewDomainLink.prototype, "targetDomain", void 0);
|
19
|
+
tslib_1.__decorate([
|
20
|
+
(0, type_graphql_1.Field)(),
|
21
|
+
tslib_1.__metadata("design:type", String)
|
22
|
+
], NewDomainLink.prototype, "type", void 0);
|
23
|
+
exports.NewDomainLink = NewDomainLink = tslib_1.__decorate([
|
24
|
+
(0, type_graphql_1.InputType)()
|
25
|
+
], NewDomainLink);
|
26
|
+
let DomainLinkPatch = class DomainLinkPatch {
|
27
|
+
};
|
28
|
+
exports.DomainLinkPatch = DomainLinkPatch;
|
29
|
+
tslib_1.__decorate([
|
30
|
+
(0, type_graphql_1.Field)(type => type_graphql_1.ID),
|
31
|
+
tslib_1.__metadata("design:type", String)
|
32
|
+
], DomainLinkPatch.prototype, "id", void 0);
|
33
|
+
tslib_1.__decorate([
|
34
|
+
(0, type_graphql_1.Field)(() => shell_1.ObjectRef, { nullable: true }),
|
35
|
+
tslib_1.__metadata("design:type", shell_1.ObjectRef)
|
36
|
+
], DomainLinkPatch.prototype, "sourceDomain", void 0);
|
37
|
+
tslib_1.__decorate([
|
38
|
+
(0, type_graphql_1.Field)(() => shell_1.ObjectRef, { nullable: true }),
|
39
|
+
tslib_1.__metadata("design:type", shell_1.ObjectRef)
|
40
|
+
], DomainLinkPatch.prototype, "targetDomain", void 0);
|
41
|
+
tslib_1.__decorate([
|
42
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
43
|
+
tslib_1.__metadata("design:type", String)
|
44
|
+
], DomainLinkPatch.prototype, "type", void 0);
|
45
|
+
tslib_1.__decorate([
|
46
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
47
|
+
tslib_1.__metadata("design:type", String)
|
48
|
+
], DomainLinkPatch.prototype, "cuFlag", void 0);
|
49
|
+
exports.DomainLinkPatch = DomainLinkPatch = tslib_1.__decorate([
|
50
|
+
(0, type_graphql_1.InputType)()
|
51
|
+
], DomainLinkPatch);
|
52
|
+
let DomainLinkList = class DomainLinkList {
|
53
|
+
};
|
54
|
+
exports.DomainLinkList = DomainLinkList;
|
55
|
+
tslib_1.__decorate([
|
56
|
+
(0, type_graphql_1.Field)(type => [domain_link_js_1.DomainLink]),
|
57
|
+
tslib_1.__metadata("design:type", Array)
|
58
|
+
], DomainLinkList.prototype, "items", void 0);
|
59
|
+
tslib_1.__decorate([
|
60
|
+
(0, type_graphql_1.Field)(type => type_graphql_1.Int),
|
61
|
+
tslib_1.__metadata("design:type", Number)
|
62
|
+
], DomainLinkList.prototype, "total", void 0);
|
63
|
+
exports.DomainLinkList = DomainLinkList = tslib_1.__decorate([
|
64
|
+
(0, type_graphql_1.ObjectType)()
|
65
|
+
], DomainLinkList);
|
66
|
+
//# sourceMappingURL=domain-link-types.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"domain-link-types.js","sourceRoot":"","sources":["../../../server/service/domain-link/domain-link-types.ts"],"names":[],"mappings":";;;;AAAA,+CAAoE;AAEpE,iDAAiD;AAEjD,qDAA6D;AAGtD,IAAM,aAAa,GAAnB,MAAM,aAAa;CASzB,CAAA;AATY,sCAAa;AAExB;IADC,IAAA,oBAAK,EAAC,GAAG,EAAE,CAAC,iBAAS,CAAC;sCACT,iBAAS;mDAAA;AAGvB;IADC,IAAA,oBAAK,EAAC,GAAG,EAAE,CAAC,iBAAS,CAAC;sCACT,iBAAS;mDAAA;AAGvB;IADC,IAAA,oBAAK,GAAE;;2CACY;wBART,aAAa;IADzB,IAAA,wBAAS,GAAE;GACC,aAAa,CASzB;AAGM,IAAM,eAAe,GAArB,MAAM,eAAe;CAe3B,CAAA;AAfY,0CAAe;AAE1B;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,CAAC;;2CACP;AAGX;IADC,IAAA,oBAAK,EAAC,GAAG,EAAE,CAAC,iBAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCAC7B,iBAAS;qDAAA;AAGvB;IADC,IAAA,oBAAK,EAAC,GAAG,EAAE,CAAC,iBAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCAC7B,iBAAS;qDAAA;AAGvB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;6CACN;AAGpB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;+CACX;0BAdJ,eAAe;IAD3B,IAAA,wBAAS,GAAE;GACC,eAAe,CAe3B;AAGM,IAAM,cAAc,GAApB,MAAM,cAAc;CAM1B,CAAA;AANY,wCAAc;AAEzB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,2BAAU,CAAC,CAAC;;6CACT;AAGnB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAG,CAAC;;6CACN;yBALF,cAAc;IAD1B,IAAA,yBAAU,GAAE;GACA,cAAc,CAM1B","sourcesContent":["import { ObjectType, Field, InputType, Int, ID } from 'type-graphql'\n\nimport { ObjectRef } from '@things-factory/shell'\n\nimport { DomainLink, DomainLinkType } from './domain-link.js'\n\n@InputType()\nexport class NewDomainLink {\n @Field(() => ObjectRef)\n sourceDomain: ObjectRef\n\n @Field(() => ObjectRef)\n targetDomain: ObjectRef\n\n @Field()\n type: DomainLinkType\n}\n\n@InputType()\nexport class DomainLinkPatch {\n @Field(type => ID)\n id?: string\n\n @Field(() => ObjectRef, { nullable: true })\n sourceDomain: ObjectRef\n\n @Field(() => ObjectRef, { nullable: true })\n targetDomain: ObjectRef\n\n @Field({ nullable: true })\n type: DomainLinkType\n\n @Field({ nullable: true })\n cuFlag?: string\n}\n\n@ObjectType()\nexport class DomainLinkList {\n @Field(type => [DomainLink])\n items: DomainLink[]\n\n @Field(type => Int)\n total: number\n}\n"]}
|
@@ -0,0 +1,28 @@
|
|
1
|
+
import { Domain } from '@things-factory/shell';
|
2
|
+
import { User } from '../user/user.js';
|
3
|
+
export declare enum DomainLinkType {
|
4
|
+
has = "has",
|
5
|
+
maintains = "maintains",
|
6
|
+
owns = "owns"
|
7
|
+
}
|
8
|
+
export declare class DomainLink {
|
9
|
+
readonly id: string;
|
10
|
+
/** Source Domain */
|
11
|
+
sourceDomain: Domain;
|
12
|
+
sourceDomainId: string;
|
13
|
+
/** Target Domain */
|
14
|
+
targetDomain: Domain;
|
15
|
+
targetDomainId: string;
|
16
|
+
/** Link Type */
|
17
|
+
type: DomainLinkType;
|
18
|
+
/** Creation Timestamp */
|
19
|
+
createdAt: Date;
|
20
|
+
/** Last Update Timestamp */
|
21
|
+
updatedAt: Date;
|
22
|
+
/** Creator User */
|
23
|
+
creator?: User;
|
24
|
+
creatorId?: string;
|
25
|
+
/** Updater User */
|
26
|
+
updater?: User;
|
27
|
+
updaterId?: string;
|
28
|
+
}
|
@@ -0,0 +1,105 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.DomainLink = exports.DomainLinkType = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const typeorm_1 = require("typeorm");
|
6
|
+
const type_graphql_1 = require("type-graphql");
|
7
|
+
const env_1 = require("@things-factory/env");
|
8
|
+
const shell_1 = require("@things-factory/shell");
|
9
|
+
const user_js_1 = require("../user/user.js");
|
10
|
+
const ORMCONFIG = env_1.config.get('ormconfig', {});
|
11
|
+
const DATABASE_TYPE = ORMCONFIG.type;
|
12
|
+
var DomainLinkType;
|
13
|
+
(function (DomainLinkType) {
|
14
|
+
DomainLinkType["has"] = "has";
|
15
|
+
DomainLinkType["maintains"] = "maintains";
|
16
|
+
DomainLinkType["owns"] = "owns";
|
17
|
+
})(DomainLinkType || (exports.DomainLinkType = DomainLinkType = {}));
|
18
|
+
(0, type_graphql_1.registerEnumType)(DomainLinkType, {
|
19
|
+
name: 'DomainLinkType',
|
20
|
+
description: 'Link type enumeration of a DomainLink'
|
21
|
+
});
|
22
|
+
let DomainLink = class DomainLink {
|
23
|
+
};
|
24
|
+
exports.DomainLink = DomainLink;
|
25
|
+
tslib_1.__decorate([
|
26
|
+
(0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
|
27
|
+
(0, type_graphql_1.Field)(type => type_graphql_1.ID),
|
28
|
+
tslib_1.__metadata("design:type", String)
|
29
|
+
], DomainLink.prototype, "id", void 0);
|
30
|
+
tslib_1.__decorate([
|
31
|
+
(0, typeorm_1.ManyToOne)(() => shell_1.Domain, { nullable: false, onDelete: 'CASCADE' }),
|
32
|
+
(0, type_graphql_1.Field)(() => shell_1.Domain),
|
33
|
+
tslib_1.__metadata("design:type", shell_1.Domain)
|
34
|
+
], DomainLink.prototype, "sourceDomain", void 0);
|
35
|
+
tslib_1.__decorate([
|
36
|
+
(0, typeorm_1.RelationId)((domainLink) => domainLink.sourceDomain),
|
37
|
+
tslib_1.__metadata("design:type", String)
|
38
|
+
], DomainLink.prototype, "sourceDomainId", void 0);
|
39
|
+
tslib_1.__decorate([
|
40
|
+
(0, typeorm_1.ManyToOne)(() => shell_1.Domain, { nullable: false, onDelete: 'CASCADE' }),
|
41
|
+
(0, type_graphql_1.Field)(() => shell_1.Domain),
|
42
|
+
tslib_1.__metadata("design:type", shell_1.Domain)
|
43
|
+
], DomainLink.prototype, "targetDomain", void 0);
|
44
|
+
tslib_1.__decorate([
|
45
|
+
(0, typeorm_1.RelationId)((domainLink) => domainLink.targetDomain),
|
46
|
+
tslib_1.__metadata("design:type", String)
|
47
|
+
], DomainLink.prototype, "targetDomainId", void 0);
|
48
|
+
tslib_1.__decorate([
|
49
|
+
(0, typeorm_1.Column)({
|
50
|
+
type: DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'
|
51
|
+
? 'enum'
|
52
|
+
: DATABASE_TYPE == 'oracle'
|
53
|
+
? 'varchar2'
|
54
|
+
: DATABASE_TYPE == 'mssql'
|
55
|
+
? 'nvarchar'
|
56
|
+
: 'varchar',
|
57
|
+
enum: DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'
|
58
|
+
? DomainLinkType
|
59
|
+
: undefined,
|
60
|
+
length: DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb' ? undefined : 32,
|
61
|
+
default: DomainLinkType.has
|
62
|
+
}),
|
63
|
+
(0, type_graphql_1.Field)(),
|
64
|
+
tslib_1.__metadata("design:type", String)
|
65
|
+
], DomainLink.prototype, "type", void 0);
|
66
|
+
tslib_1.__decorate([
|
67
|
+
(0, typeorm_1.CreateDateColumn)(),
|
68
|
+
(0, type_graphql_1.Field)(),
|
69
|
+
tslib_1.__metadata("design:type", Date
|
70
|
+
/** Last Update Timestamp */
|
71
|
+
)
|
72
|
+
], DomainLink.prototype, "createdAt", void 0);
|
73
|
+
tslib_1.__decorate([
|
74
|
+
(0, typeorm_1.UpdateDateColumn)(),
|
75
|
+
(0, type_graphql_1.Field)(),
|
76
|
+
tslib_1.__metadata("design:type", Date
|
77
|
+
/** Creator User */
|
78
|
+
)
|
79
|
+
], DomainLink.prototype, "updatedAt", void 0);
|
80
|
+
tslib_1.__decorate([
|
81
|
+
(0, typeorm_1.ManyToOne)(() => user_js_1.User, { nullable: true }),
|
82
|
+
(0, type_graphql_1.Field)(() => user_js_1.User, { nullable: true }),
|
83
|
+
tslib_1.__metadata("design:type", user_js_1.User)
|
84
|
+
], DomainLink.prototype, "creator", void 0);
|
85
|
+
tslib_1.__decorate([
|
86
|
+
(0, typeorm_1.RelationId)((domainLink) => domainLink.creator),
|
87
|
+
tslib_1.__metadata("design:type", String)
|
88
|
+
], DomainLink.prototype, "creatorId", void 0);
|
89
|
+
tslib_1.__decorate([
|
90
|
+
(0, typeorm_1.ManyToOne)(() => user_js_1.User, { nullable: true }),
|
91
|
+
(0, type_graphql_1.Field)(() => user_js_1.User, { nullable: true }),
|
92
|
+
tslib_1.__metadata("design:type", user_js_1.User)
|
93
|
+
], DomainLink.prototype, "updater", void 0);
|
94
|
+
tslib_1.__decorate([
|
95
|
+
(0, typeorm_1.RelationId)((domainLink) => domainLink.updater),
|
96
|
+
tslib_1.__metadata("design:type", String)
|
97
|
+
], DomainLink.prototype, "updaterId", void 0);
|
98
|
+
exports.DomainLink = DomainLink = tslib_1.__decorate([
|
99
|
+
(0, typeorm_1.Entity)(),
|
100
|
+
(0, typeorm_1.Index)('ix_domain_link_unique', (domainLink) => [domainLink.sourceDomain, domainLink.targetDomain, domainLink.type], { unique: true }),
|
101
|
+
(0, typeorm_1.Index)('ix_domain_link_source', (domainLink) => [domainLink.sourceDomain]),
|
102
|
+
(0, typeorm_1.Index)('ix_domain_link_target', (domainLink) => [domainLink.targetDomain]),
|
103
|
+
(0, type_graphql_1.ObjectType)({ description: 'Entity for DomainLink representing a connection between two domains' })
|
104
|
+
], DomainLink);
|
105
|
+
//# sourceMappingURL=domain-link.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"domain-link.js","sourceRoot":"","sources":["../../../server/service/domain-link/domain-link.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n CreateDateColumn,\n UpdateDateColumn,\n Entity,\n Index,\n Column,\n RelationId,\n ManyToOne,\n PrimaryGeneratedColumn\n} from 'typeorm'\nimport { ObjectType, Field, ID, registerEnumType } from 'type-graphql'\n\nimport { config } from '@things-factory/env'\nimport { Domain } from '@things-factory/shell'\nimport { User } from '../user/user.js'\n\nconst ORMCONFIG = config.get('ormconfig', {})\nconst DATABASE_TYPE = ORMCONFIG.type\n\nexport enum DomainLinkType {\n has = 'has',\n maintains = 'maintains',\n owns = 'owns'\n}\n\nregisterEnumType(DomainLinkType, {\n name: 'DomainLinkType',\n description: 'Link type enumeration of a DomainLink'\n})\n\n@Entity()\n@Index(\n 'ix_domain_link_unique',\n (domainLink: DomainLink) => [domainLink.sourceDomain, domainLink.targetDomain, domainLink.type],\n { unique: true }\n)\n@Index('ix_domain_link_source', (domainLink: DomainLink) => [domainLink.sourceDomain])\n@Index('ix_domain_link_target', (domainLink: DomainLink) => [domainLink.targetDomain])\n@ObjectType({ description: 'Entity for DomainLink representing a connection between two domains' })\nexport class DomainLink {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n /** Source Domain */\n @ManyToOne(() => Domain, { nullable: false, onDelete: 'CASCADE' })\n @Field(() => Domain)\n sourceDomain: Domain\n\n @RelationId((domainLink: DomainLink) => domainLink.sourceDomain)\n sourceDomainId: string\n\n /** Target Domain */\n @ManyToOne(() => Domain, { nullable: false, onDelete: 'CASCADE' })\n @Field(() => Domain)\n targetDomain: Domain\n\n @RelationId((domainLink: DomainLink) => domainLink.targetDomain)\n targetDomainId: string\n\n /** Link Type */\n @Column({\n type:\n DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'\n ? 'enum'\n : DATABASE_TYPE == 'oracle'\n ? 'varchar2'\n : DATABASE_TYPE == 'mssql'\n ? 'nvarchar'\n : 'varchar',\n enum:\n DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'\n ? DomainLinkType\n : undefined,\n length: DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb' ? undefined : 32,\n default: DomainLinkType.has\n })\n @Field()\n type: DomainLinkType\n\n /** Creation Timestamp */\n @CreateDateColumn()\n @Field()\n createdAt: Date\n\n /** Last Update Timestamp */\n @UpdateDateColumn()\n @Field()\n updatedAt: Date\n\n /** Creator User */\n @ManyToOne(() => User, { nullable: true })\n @Field(() => User, { nullable: true })\n creator?: User\n\n @RelationId((domainLink: DomainLink) => domainLink.creator)\n creatorId?: string\n\n /** Updater User */\n @ManyToOne(() => User, { nullable: true })\n @Field(() => User, { nullable: true })\n updater?: User\n\n @RelationId((domainLink: DomainLink) => domainLink.updater)\n updaterId?: string\n}\n"]}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { DomainLink } from './domain-link.js';
|
2
|
+
import { DomainLinkQuery } from './domain-link-query.js';
|
3
|
+
import { DomainLinkMutation } from './domain-link-mutation.js';
|
4
|
+
export declare const entities: (typeof DomainLink)[];
|
5
|
+
export declare const resolvers: (typeof DomainLinkQuery | typeof DomainLinkMutation)[];
|
6
|
+
export declare const subscribers: any[];
|
@@ -0,0 +1,10 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.subscribers = exports.resolvers = exports.entities = void 0;
|
4
|
+
const domain_link_js_1 = require("./domain-link.js");
|
5
|
+
const domain_link_query_js_1 = require("./domain-link-query.js");
|
6
|
+
const domain_link_mutation_js_1 = require("./domain-link-mutation.js");
|
7
|
+
exports.entities = [domain_link_js_1.DomainLink];
|
8
|
+
exports.resolvers = [domain_link_query_js_1.DomainLinkQuery, domain_link_mutation_js_1.DomainLinkMutation];
|
9
|
+
exports.subscribers = [];
|
10
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/domain-link/index.ts"],"names":[],"mappings":";;;AAAA,qDAA6C;AAC7C,iEAAwD;AACxD,uEAA8D;AAEjD,QAAA,QAAQ,GAAG,CAAC,2BAAU,CAAC,CAAA;AACvB,QAAA,SAAS,GAAG,CAAC,sCAAe,EAAE,4CAAkB,CAAC,CAAA;AACjD,QAAA,WAAW,GAAG,EAAE,CAAA","sourcesContent":["import { DomainLink } from './domain-link.js'\nimport { DomainLinkQuery } from './domain-link-query.js'\nimport { DomainLinkMutation } from './domain-link-mutation.js'\n\nexport const entities = [DomainLink]\nexport const resolvers = [DomainLinkQuery, DomainLinkMutation]\nexport const subscribers = []\n"]}
|