@equinor/fusion-services 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +78 -0
- package/dist/esm/index.js +25 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/roles/endpoints/access-roles.get.js +118 -0
- package/dist/esm/roles/endpoints/access-roles.get.js.map +1 -0
- package/dist/esm/roles/endpoints/account-access-role-assignments.get.js +133 -0
- package/dist/esm/roles/endpoints/account-access-role-assignments.get.js.map +1 -0
- package/dist/esm/roles/endpoints/account-active-access-role-assignments.get.js +115 -0
- package/dist/esm/roles/endpoints/account-active-access-role-assignments.get.js.map +1 -0
- package/dist/esm/roles/endpoints/account-claimable-role-assignment-activation.get.js +118 -0
- package/dist/esm/roles/endpoints/account-claimable-role-assignment-activation.get.js.map +1 -0
- package/dist/esm/roles/endpoints/account-claimable-role-assignment-activation.post.js +124 -0
- package/dist/esm/roles/endpoints/account-claimable-role-assignment-activation.post.js.map +1 -0
- package/dist/esm/roles/endpoints/account-claimable-role-assignment-deactivation.post.js +120 -0
- package/dist/esm/roles/endpoints/account-claimable-role-assignment-deactivation.post.js.map +1 -0
- package/dist/esm/roles/endpoints/account-claimable-role-assignments.get.js +118 -0
- package/dist/esm/roles/endpoints/account-claimable-role-assignments.get.js.map +1 -0
- package/dist/esm/roles/endpoints/account-consolidated-claimable-role-assignments.get.js +120 -0
- package/dist/esm/roles/endpoints/account-consolidated-claimable-role-assignments.get.js.map +1 -0
- package/dist/esm/roles/endpoints/account-consolidated-role-assignments.get.js +116 -0
- package/dist/esm/roles/endpoints/account-consolidated-role-assignments.get.js.map +1 -0
- package/dist/esm/roles/endpoints/account-role-assignments.get.js +115 -0
- package/dist/esm/roles/endpoints/account-role-assignments.get.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role-access-role.delete.js +118 -0
- package/dist/esm/roles/endpoints/claimable-role-access-role.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role-access-roles.post.js +118 -0
- package/dist/esm/roles/endpoints/claimable-role-access-roles.post.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role-assignment-activations-by-assignment.get.js +128 -0
- package/dist/esm/roles/endpoints/claimable-role-assignment-activations-by-assignment.get.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role-assignment-activations.get.js +106 -0
- package/dist/esm/roles/endpoints/claimable-role-assignment-activations.get.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role-assignment.delete.js +118 -0
- package/dist/esm/roles/endpoints/claimable-role-assignment.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role-assignment.get.js +112 -0
- package/dist/esm/roles/endpoints/claimable-role-assignment.get.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role-assignment.patch.js +122 -0
- package/dist/esm/roles/endpoints/claimable-role-assignment.patch.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role-assignments-by-external-identifier.delete.js +121 -0
- package/dist/esm/roles/endpoints/claimable-role-assignments-by-external-identifier.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role-assignments.get.js +127 -0
- package/dist/esm/roles/endpoints/claimable-role-assignments.get.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role-assignments.post.js +120 -0
- package/dist/esm/roles/endpoints/claimable-role-assignments.post.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role.delete.js +112 -0
- package/dist/esm/roles/endpoints/claimable-role.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role.get.js +108 -0
- package/dist/esm/roles/endpoints/claimable-role.get.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-role.patch.js +118 -0
- package/dist/esm/roles/endpoints/claimable-role.patch.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-roles.get.js +127 -0
- package/dist/esm/roles/endpoints/claimable-roles.get.js.map +1 -0
- package/dist/esm/roles/endpoints/claimable-roles.post.js +114 -0
- package/dist/esm/roles/endpoints/claimable-roles.post.js.map +1 -0
- package/dist/esm/roles/endpoints/public-schema.get.js +104 -0
- package/dist/esm/roles/endpoints/public-schema.get.js.map +1 -0
- package/dist/esm/roles/endpoints/role-access-role.delete.js +115 -0
- package/dist/esm/roles/endpoints/role-access-role.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/role-access-roles.post.js +116 -0
- package/dist/esm/roles/endpoints/role-access-roles.post.js.map +1 -0
- package/dist/esm/roles/endpoints/role-assignment.delete.js +115 -0
- package/dist/esm/roles/endpoints/role-assignment.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/role-assignment.get.js +113 -0
- package/dist/esm/roles/endpoints/role-assignment.get.js.map +1 -0
- package/dist/esm/roles/endpoints/role-assignment.patch.js +119 -0
- package/dist/esm/roles/endpoints/role-assignment.patch.js.map +1 -0
- package/dist/esm/roles/endpoints/role-assignments-by-external-identifier.delete.js +117 -0
- package/dist/esm/roles/endpoints/role-assignments-by-external-identifier.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/role-assignments-delete.post.js +118 -0
- package/dist/esm/roles/endpoints/role-assignments-delete.post.js.map +1 -0
- package/dist/esm/roles/endpoints/role-assignments.get.js +128 -0
- package/dist/esm/roles/endpoints/role-assignments.get.js.map +1 -0
- package/dist/esm/roles/endpoints/role-assignments.post.js +118 -0
- package/dist/esm/roles/endpoints/role-assignments.post.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-expired-history.delete.js +112 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-expired-history.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-history.get.js +122 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-history.get.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-history.post.js +120 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-history.post.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-notifications.get.js +123 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-notifications.get.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-notifications.post.js +121 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-notifications.post.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-status.get.js +106 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-status.get.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-status.patch.js +116 -0
- package/dist/esm/roles/endpoints/role-binding-configuration-status.patch.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configuration.delete.js +110 -0
- package/dist/esm/roles/endpoints/role-binding-configuration.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configuration.get.js +114 -0
- package/dist/esm/roles/endpoints/role-binding-configuration.get.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configuration.patch.js +115 -0
- package/dist/esm/roles/endpoints/role-binding-configuration.patch.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configurations.get.js +119 -0
- package/dist/esm/roles/endpoints/role-binding-configurations.get.js.map +1 -0
- package/dist/esm/roles/endpoints/role-binding-configurations.post.js +116 -0
- package/dist/esm/roles/endpoints/role-binding-configurations.post.js.map +1 -0
- package/dist/esm/roles/endpoints/role.delete.js +111 -0
- package/dist/esm/roles/endpoints/role.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/role.get.js +110 -0
- package/dist/esm/roles/endpoints/role.get.js.map +1 -0
- package/dist/esm/roles/endpoints/role.patch.js +117 -0
- package/dist/esm/roles/endpoints/role.patch.js.map +1 -0
- package/dist/esm/roles/endpoints/roles-subscription.put.js +115 -0
- package/dist/esm/roles/endpoints/roles-subscription.put.js.map +1 -0
- package/dist/esm/roles/endpoints/roles.get.js +125 -0
- package/dist/esm/roles/endpoints/roles.get.js.map +1 -0
- package/dist/esm/roles/endpoints/roles.post.js +116 -0
- package/dist/esm/roles/endpoints/roles.post.js.map +1 -0
- package/dist/esm/roles/endpoints/scope-type.delete.js +110 -0
- package/dist/esm/roles/endpoints/scope-type.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/scope-type.get.js +103 -0
- package/dist/esm/roles/endpoints/scope-type.get.js.map +1 -0
- package/dist/esm/roles/endpoints/scope-type.patch.js +116 -0
- package/dist/esm/roles/endpoints/scope-type.patch.js.map +1 -0
- package/dist/esm/roles/endpoints/scope-types.get.js +98 -0
- package/dist/esm/roles/endpoints/scope-types.get.js.map +1 -0
- package/dist/esm/roles/endpoints/scope-types.post.js +113 -0
- package/dist/esm/roles/endpoints/scope-types.post.js.map +1 -0
- package/dist/esm/roles/endpoints/system-access-role-assignment.delete.js +119 -0
- package/dist/esm/roles/endpoints/system-access-role-assignment.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/system-access-role-assignment.get.js +119 -0
- package/dist/esm/roles/endpoints/system-access-role-assignment.get.js.map +1 -0
- package/dist/esm/roles/endpoints/system-access-role-assignment.patch.js +123 -0
- package/dist/esm/roles/endpoints/system-access-role-assignment.patch.js.map +1 -0
- package/dist/esm/roles/endpoints/system-access-role-assignments.get.js +134 -0
- package/dist/esm/roles/endpoints/system-access-role-assignments.get.js.map +1 -0
- package/dist/esm/roles/endpoints/system-access-role-assignments.post.js +120 -0
- package/dist/esm/roles/endpoints/system-access-role-assignments.post.js.map +1 -0
- package/dist/esm/roles/endpoints/system-access-role.delete.js +115 -0
- package/dist/esm/roles/endpoints/system-access-role.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/system-access-role.get.js +109 -0
- package/dist/esm/roles/endpoints/system-access-role.get.js.map +1 -0
- package/dist/esm/roles/endpoints/system-access-role.patch.js +119 -0
- package/dist/esm/roles/endpoints/system-access-role.patch.js.map +1 -0
- package/dist/esm/roles/endpoints/system-access-roles.get.js +106 -0
- package/dist/esm/roles/endpoints/system-access-roles.get.js.map +1 -0
- package/dist/esm/roles/endpoints/system-access-roles.post.js +116 -0
- package/dist/esm/roles/endpoints/system-access-roles.post.js.map +1 -0
- package/dist/esm/roles/endpoints/system.delete.js +108 -0
- package/dist/esm/roles/endpoints/system.delete.js.map +1 -0
- package/dist/esm/roles/endpoints/system.get.js +101 -0
- package/dist/esm/roles/endpoints/system.get.js.map +1 -0
- package/dist/esm/roles/endpoints/system.patch.js +114 -0
- package/dist/esm/roles/endpoints/system.patch.js.map +1 -0
- package/dist/esm/roles/endpoints/systems.get.js +113 -0
- package/dist/esm/roles/endpoints/systems.get.js.map +1 -0
- package/dist/esm/roles/endpoints/systems.post.js +113 -0
- package/dist/esm/roles/endpoints/systems.post.js.map +1 -0
- package/dist/esm/roles/index.js +190 -0
- package/dist/esm/roles/index.js.map +1 -0
- package/dist/esm/roles/static.js +29 -0
- package/dist/esm/roles/static.js.map +1 -0
- package/dist/esm/roles/types.js +7 -0
- package/dist/esm/roles/types.js.map +1 -0
- package/dist/esm/roles/v1/schemas/access-role-mapping-schema-v1.js +11 -0
- package/dist/esm/roles/v1/schemas/access-role-mapping-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/activate-assigned-claimable-role-request-schema-v1.js +14 -0
- package/dist/esm/roles/v1/schemas/activate-assigned-claimable-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/add-claimable-role-access-role-request-schema-v1.js +13 -0
- package/dist/esm/roles/v1/schemas/add-claimable-role-access-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/add-role-access-role-request-schema-v1.js +13 -0
- package/dist/esm/roles/v1/schemas/add-role-access-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-access-role-assignment-schema-v1.js +46 -0
- package/dist/esm/roles/v1/schemas/api-access-role-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-access-role-mapping-schema-v1.js +15 -0
- package/dist/esm/roles/v1/schemas/api-access-role-mapping-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-access-role-schema-v1.js +16 -0
- package/dist/esm/roles/v1/schemas/api-access-role-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-account-access-role-assignment-schema-v1.js +46 -0
- package/dist/esm/roles/v1/schemas/api-account-access-role-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-account-access-role-schema-v1.js +9 -0
- package/dist/esm/roles/v1/schemas/api-account-access-role-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-account-active-access-role-assignment-schema-v1.js +21 -0
- package/dist/esm/roles/v1/schemas/api-account-active-access-role-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-account-claimable-role-assignment-schema-v1.js +11 -0
- package/dist/esm/roles/v1/schemas/api-account-claimable-role-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-account-role-assignment-schema-v1.js +11 -0
- package/dist/esm/roles/v1/schemas/api-account-role-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-account-schema-v1.js +25 -0
- package/dist/esm/roles/v1/schemas/api-account-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-binding-execution-record-schema-v1.js +52 -0
- package/dist/esm/roles/v1/schemas/api-binding-execution-record-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-binding-notification-record-schema-v1.js +32 -0
- package/dist/esm/roles/v1/schemas/api-binding-notification-record-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-claimable-access-role-mapping-schema-v1.js +15 -0
- package/dist/esm/roles/v1/schemas/api-claimable-access-role-mapping-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-claimable-role-assignment-activation-schema-v1.js +21 -0
- package/dist/esm/roles/v1/schemas/api-claimable-role-assignment-activation-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-claimable-role-assignment-schema-v1.js +48 -0
- package/dist/esm/roles/v1/schemas/api-claimable-role-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-claimable-role-schema-v1.js +18 -0
- package/dist/esm/roles/v1/schemas/api-claimable-role-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-claimable-role-scope-schema-v1.js +16 -0
- package/dist/esm/roles/v1/schemas/api-claimable-role-scope-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-consolidated-assignment-entry-schema-v1.js +25 -0
- package/dist/esm/roles/v1/schemas/api-consolidated-assignment-entry-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-consolidated-claimable-role-assignment-schema-v1.js +51 -0
- package/dist/esm/roles/v1/schemas/api-consolidated-claimable-role-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-consolidated-claimable-role-ref-schema-v1.js +18 -0
- package/dist/esm/roles/v1/schemas/api-consolidated-claimable-role-ref-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-consolidated-role-assignment-schema-v1.js +41 -0
- package/dist/esm/roles/v1/schemas/api-consolidated-role-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-extended-access-role-schema-v1.js +9 -0
- package/dist/esm/roles/v1/schemas/api-extended-access-role-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-extended-claimable-role-assignment-activation-schema-v1.js +24 -0
- package/dist/esm/roles/v1/schemas/api-extended-claimable-role-assignment-activation-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-owner-schema-v1.js +12 -0
- package/dist/esm/roles/v1/schemas/api-owner-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-paged-collection-schema-v1.js +41 -0
- package/dist/esm/roles/v1/schemas/api-paged-collection-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-purge-binding-result-schema-v1.js +12 -0
- package/dist/esm/roles/v1/schemas/api-purge-binding-result-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-role-assignment-schema-v1.js +38 -0
- package/dist/esm/roles/v1/schemas/api-role-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-role-binding-configuration-schema-v1.js +36 -0
- package/dist/esm/roles/v1/schemas/api-role-binding-configuration-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-role-binding-configuration-status-schema-v1.js +28 -0
- package/dist/esm/roles/v1/schemas/api-role-binding-configuration-status-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-role-schema-v1.js +24 -0
- package/dist/esm/roles/v1/schemas/api-role-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-role-scope-schema-v1.js +16 -0
- package/dist/esm/roles/v1/schemas/api-role-scope-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-scope-schema-v1.js +16 -0
- package/dist/esm/roles/v1/schemas/api-scope-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-scope-type-schema-v1.js +13 -0
- package/dist/esm/roles/v1/schemas/api-scope-type-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-scope-values-schema-v1.js +22 -0
- package/dist/esm/roles/v1/schemas/api-scope-values-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-simple-claimable-role-assignment-schema-v1.js +12 -0
- package/dist/esm/roles/v1/schemas/api-simple-claimable-role-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-simple-claimable-role-schema-v1.js +27 -0
- package/dist/esm/roles/v1/schemas/api-simple-claimable-role-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-simple-role-assignment-schema-v1.js +12 -0
- package/dist/esm/roles/v1/schemas/api-simple-role-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-simple-role-schema-v1.js +18 -0
- package/dist/esm/roles/v1/schemas/api-simple-role-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-simple-system-schema-v1.js +11 -0
- package/dist/esm/roles/v1/schemas/api-simple-system-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-subscription-type-schema-v1.js +6 -0
- package/dist/esm/roles/v1/schemas/api-subscription-type-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/api-system-schema-v1.js +11 -0
- package/dist/esm/roles/v1/schemas/api-system-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/assign-access-role-request-schema-v1.js +32 -0
- package/dist/esm/roles/v1/schemas/assign-access-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/assign-claimable-role-request-schema-v1.js +32 -0
- package/dist/esm/roles/v1/schemas/assign-claimable-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/assign-role-request-schema-v1.js +32 -0
- package/dist/esm/roles/v1/schemas/assign-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/claimable-role-binding-schema-v1.js +14 -0
- package/dist/esm/roles/v1/schemas/claimable-role-binding-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/create-access-role-request-schema-v1.js +19 -0
- package/dist/esm/roles/v1/schemas/create-access-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/create-binding-execution-record-request-schema-v1.js +49 -0
- package/dist/esm/roles/v1/schemas/create-binding-execution-record-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/create-binding-execution-record-response-schema-v1.js +9 -0
- package/dist/esm/roles/v1/schemas/create-binding-execution-record-response-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/create-binding-notification-record-request-schema-v1.js +23 -0
- package/dist/esm/roles/v1/schemas/create-binding-notification-record-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/create-binding-notification-record-response-schema-v1.js +9 -0
- package/dist/esm/roles/v1/schemas/create-binding-notification-record-response-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/create-claimable-role-request-schema-v1.js +27 -0
- package/dist/esm/roles/v1/schemas/create-claimable-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/create-role-binding-configuration-request-schema-v1.js +27 -0
- package/dist/esm/roles/v1/schemas/create-role-binding-configuration-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/create-role-request-schema-v1.js +27 -0
- package/dist/esm/roles/v1/schemas/create-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/create-scope-type-request-schema-v1.js +14 -0
- package/dist/esm/roles/v1/schemas/create-scope-type-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/delete-role-assignments-request-schema-v1.js +13 -0
- package/dist/esm/roles/v1/schemas/delete-role-assignments-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/entra-group-binding-schema-v1.js +24 -0
- package/dist/esm/roles/v1/schemas/entra-group-binding-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/entra-group-schema-v1.js +11 -0
- package/dist/esm/roles/v1/schemas/entra-group-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/expand-schema-v1.js +4 -0
- package/dist/esm/roles/v1/schemas/expand-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/filter-schema-v1.js +4 -0
- package/dist/esm/roles/v1/schemas/filter-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/include-deleted-schema-v1.js +7 -0
- package/dist/esm/roles/v1/schemas/include-deleted-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/org-chart-assign-entry-schema-v1.js +14 -0
- package/dist/esm/roles/v1/schemas/org-chart-assign-entry-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/org-chart-assignment-schema-v1.js +18 -0
- package/dist/esm/roles/v1/schemas/org-chart-assignment-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/org-chart-binding-schema-v1.js +19 -0
- package/dist/esm/roles/v1/schemas/org-chart-binding-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/org-chart-context-schema-v1.js +22 -0
- package/dist/esm/roles/v1/schemas/org-chart-context-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/org-chart-match-criteria-schema-v1.js +16 -0
- package/dist/esm/roles/v1/schemas/org-chart-match-criteria-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/org-chart-profile-schema-v1.js +15 -0
- package/dist/esm/roles/v1/schemas/org-chart-profile-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/org-chart-rule-schema-v1.js +13 -0
- package/dist/esm/roles/v1/schemas/org-chart-rule-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/org-chart-scope-schema-v1.js +20 -0
- package/dist/esm/roles/v1/schemas/org-chart-scope-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/owner-info-schema-v1.js +11 -0
- package/dist/esm/roles/v1/schemas/owner-info-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/register-system-request-schema-v1.js +17 -0
- package/dist/esm/roles/v1/schemas/register-system-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/request-claimable-role-scope-schema-v1.js +19 -0
- package/dist/esm/roles/v1/schemas/request-claimable-role-scope-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/request-role-scope-schema-v1.js +19 -0
- package/dist/esm/roles/v1/schemas/request-role-scope-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/request-scope-schema-v1.js +19 -0
- package/dist/esm/roles/v1/schemas/request-scope-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/role-binding-configuration-binding-schema-v1.js +13 -0
- package/dist/esm/roles/v1/schemas/role-binding-configuration-binding-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/role-binding-schema-v1.js +14 -0
- package/dist/esm/roles/v1/schemas/role-binding-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/scope-binding-schema-v1.js +19 -0
- package/dist/esm/roles/v1/schemas/scope-binding-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/skip-schema-v1.js +9 -0
- package/dist/esm/roles/v1/schemas/skip-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/subscription-request-schema-v1.js +19 -0
- package/dist/esm/roles/v1/schemas/subscription-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/top-schema-v1.js +10 -0
- package/dist/esm/roles/v1/schemas/top-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/update-access-role-assignment-request-schema-v1.js +12 -0
- package/dist/esm/roles/v1/schemas/update-access-role-assignment-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/update-access-role-request-schema-v1.js +12 -0
- package/dist/esm/roles/v1/schemas/update-access-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/update-claimable-role-assignment-request-schema-v1.js +12 -0
- package/dist/esm/roles/v1/schemas/update-claimable-role-assignment-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/update-claimable-role-request-schema-v1.js +22 -0
- package/dist/esm/roles/v1/schemas/update-claimable-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/update-role-assignment-request-schema-v1.js +12 -0
- package/dist/esm/roles/v1/schemas/update-role-assignment-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/update-role-binding-configuration-request-schema-v1.js +32 -0
- package/dist/esm/roles/v1/schemas/update-role-binding-configuration-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/update-role-binding-configuration-status-request-schema-v1.js +14 -0
- package/dist/esm/roles/v1/schemas/update-role-binding-configuration-status-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/update-role-request-schema-v1.js +22 -0
- package/dist/esm/roles/v1/schemas/update-role-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/update-scope-request-schema-v1.js +12 -0
- package/dist/esm/roles/v1/schemas/update-scope-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/schemas/update-system-request-schema-v1.js +18 -0
- package/dist/esm/roles/v1/schemas/update-system-request-schema-v1.js.map +1 -0
- package/dist/esm/roles/v1/types.js +19 -0
- package/dist/esm/roles/v1/types.js.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils.js +118 -0
- package/dist/esm/utils.js.map +1 -0
- package/dist/esm/version.js +3 -0
- package/dist/esm/version.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types/index.d.ts +23 -0
- package/dist/types/roles/endpoints/access-roles.get.d.ts +136 -0
- package/dist/types/roles/endpoints/account-access-role-assignments.get.d.ts +275 -0
- package/dist/types/roles/endpoints/account-active-access-role-assignments.get.d.ts +118 -0
- package/dist/types/roles/endpoints/account-claimable-role-assignment-activation.get.d.ts +123 -0
- package/dist/types/roles/endpoints/account-claimable-role-assignment-activation.post.d.ts +127 -0
- package/dist/types/roles/endpoints/account-claimable-role-assignment-deactivation.post.d.ts +123 -0
- package/dist/types/roles/endpoints/account-claimable-role-assignments.get.d.ts +230 -0
- package/dist/types/roles/endpoints/account-consolidated-claimable-role-assignments.get.d.ts +150 -0
- package/dist/types/roles/endpoints/account-consolidated-role-assignments.get.d.ts +146 -0
- package/dist/types/roles/endpoints/account-role-assignments.get.d.ts +197 -0
- package/dist/types/roles/endpoints/claimable-role-access-role.delete.d.ts +105 -0
- package/dist/types/roles/endpoints/claimable-role-access-roles.post.d.ts +150 -0
- package/dist/types/roles/endpoints/claimable-role-assignment-activations-by-assignment.get.d.ts +150 -0
- package/dist/types/roles/endpoints/claimable-role-assignment-activations.get.d.ts +187 -0
- package/dist/types/roles/endpoints/claimable-role-assignment.delete.d.ts +106 -0
- package/dist/types/roles/endpoints/claimable-role-assignment.get.d.ts +152 -0
- package/dist/types/roles/endpoints/claimable-role-assignment.patch.d.ts +158 -0
- package/dist/types/roles/endpoints/claimable-role-assignments-by-external-identifier.delete.d.ts +113 -0
- package/dist/types/roles/endpoints/claimable-role-assignments.get.d.ts +211 -0
- package/dist/types/roles/endpoints/claimable-role-assignments.post.d.ts +168 -0
- package/dist/types/roles/endpoints/claimable-role.delete.d.ts +100 -0
- package/dist/types/roles/endpoints/claimable-role.get.d.ts +141 -0
- package/dist/types/roles/endpoints/claimable-role.patch.d.ts +149 -0
- package/dist/types/roles/endpoints/claimable-roles.get.d.ts +199 -0
- package/dist/types/roles/endpoints/claimable-roles.post.d.ts +150 -0
- package/dist/types/roles/endpoints/public-schema.get.d.ts +98 -0
- package/dist/types/roles/endpoints/role-access-role.delete.d.ts +104 -0
- package/dist/types/roles/endpoints/role-access-roles.post.d.ts +150 -0
- package/dist/types/roles/endpoints/role-assignment.delete.d.ts +104 -0
- package/dist/types/roles/endpoints/role-assignment.get.d.ts +138 -0
- package/dist/types/roles/endpoints/role-assignment.patch.d.ts +140 -0
- package/dist/types/roles/endpoints/role-assignments-by-external-identifier.delete.d.ts +109 -0
- package/dist/types/roles/endpoints/role-assignments-delete.post.d.ts +108 -0
- package/dist/types/roles/endpoints/role-assignments.get.d.ts +184 -0
- package/dist/types/roles/endpoints/role-assignments.post.d.ts +151 -0
- package/dist/types/roles/endpoints/role-binding-configuration-expired-history.delete.d.ts +109 -0
- package/dist/types/roles/endpoints/role-binding-configuration-history.get.d.ts +145 -0
- package/dist/types/roles/endpoints/role-binding-configuration-history.post.d.ts +125 -0
- package/dist/types/roles/endpoints/role-binding-configuration-notifications.get.d.ts +140 -0
- package/dist/types/roles/endpoints/role-binding-configuration-notifications.post.d.ts +122 -0
- package/dist/types/roles/endpoints/role-binding-configuration-status.get.d.ts +110 -0
- package/dist/types/roles/endpoints/role-binding-configuration-status.patch.d.ts +117 -0
- package/dist/types/roles/endpoints/role-binding-configuration.delete.d.ts +100 -0
- package/dist/types/roles/endpoints/role-binding-configuration.get.d.ts +117 -0
- package/dist/types/roles/endpoints/role-binding-configuration.patch.d.ts +171 -0
- package/dist/types/roles/endpoints/role-binding-configurations.get.d.ts +115 -0
- package/dist/types/roles/endpoints/role-binding-configurations.post.d.ts +173 -0
- package/dist/types/roles/endpoints/role.delete.d.ts +100 -0
- package/dist/types/roles/endpoints/role.get.d.ts +144 -0
- package/dist/types/roles/endpoints/role.patch.d.ts +149 -0
- package/dist/types/roles/endpoints/roles-subscription.put.d.ts +110 -0
- package/dist/types/roles/endpoints/roles.get.d.ts +197 -0
- package/dist/types/roles/endpoints/roles.post.d.ts +152 -0
- package/dist/types/roles/endpoints/scope-type.delete.d.ts +100 -0
- package/dist/types/roles/endpoints/scope-type.get.d.ts +100 -0
- package/dist/types/roles/endpoints/scope-type.patch.d.ts +110 -0
- package/dist/types/roles/endpoints/scope-types.get.d.ts +97 -0
- package/dist/types/roles/endpoints/scope-types.post.d.ts +106 -0
- package/dist/types/roles/endpoints/system-access-role-assignment.delete.d.ts +109 -0
- package/dist/types/roles/endpoints/system-access-role-assignment.get.d.ts +182 -0
- package/dist/types/roles/endpoints/system-access-role-assignment.patch.d.ts +186 -0
- package/dist/types/roles/endpoints/system-access-role-assignments.get.d.ts +267 -0
- package/dist/types/roles/endpoints/system-access-role-assignments.post.d.ts +194 -0
- package/dist/types/roles/endpoints/system-access-role.delete.d.ts +104 -0
- package/dist/types/roles/endpoints/system-access-role.get.d.ts +111 -0
- package/dist/types/roles/endpoints/system-access-role.patch.d.ts +117 -0
- package/dist/types/roles/endpoints/system-access-roles.get.d.ts +109 -0
- package/dist/types/roles/endpoints/system-access-roles.post.d.ts +117 -0
- package/dist/types/roles/endpoints/system.delete.d.ts +97 -0
- package/dist/types/roles/endpoints/system.get.d.ts +110 -0
- package/dist/types/roles/endpoints/system.patch.d.ts +123 -0
- package/dist/types/roles/endpoints/systems.get.d.ts +138 -0
- package/dist/types/roles/endpoints/systems.post.d.ts +122 -0
- package/dist/types/roles/index.d.ts +191 -0
- package/dist/types/roles/static.d.ts +27 -0
- package/dist/types/roles/types.d.ts +22 -0
- package/dist/types/roles/v1/schemas/access-role-mapping-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/activate-assigned-claimable-role-request-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/add-claimable-role-access-role-request-schema-v1.d.ts +16 -0
- package/dist/types/roles/v1/schemas/add-role-access-role-request-schema-v1.d.ts +15 -0
- package/dist/types/roles/v1/schemas/api-access-role-assignment-schema-v1.d.ts +82 -0
- package/dist/types/roles/v1/schemas/api-access-role-mapping-schema-v1.d.ts +22 -0
- package/dist/types/roles/v1/schemas/api-access-role-schema-v1.d.ts +19 -0
- package/dist/types/roles/v1/schemas/api-account-access-role-assignment-schema-v1.d.ts +88 -0
- package/dist/types/roles/v1/schemas/api-account-access-role-schema-v1.d.ts +25 -0
- package/dist/types/roles/v1/schemas/api-account-active-access-role-assignment-schema-v1.d.ts +21 -0
- package/dist/types/roles/v1/schemas/api-account-claimable-role-assignment-schema-v1.d.ts +69 -0
- package/dist/types/roles/v1/schemas/api-account-role-assignment-schema-v1.d.ts +52 -0
- package/dist/types/roles/v1/schemas/api-account-schema-v1.d.ts +17 -0
- package/dist/types/roles/v1/schemas/api-binding-execution-record-schema-v1.d.ts +23 -0
- package/dist/types/roles/v1/schemas/api-binding-notification-record-schema-v1.d.ts +20 -0
- package/dist/types/roles/v1/schemas/api-claimable-access-role-mapping-schema-v1.d.ts +23 -0
- package/dist/types/roles/v1/schemas/api-claimable-role-assignment-activation-schema-v1.d.ts +24 -0
- package/dist/types/roles/v1/schemas/api-claimable-role-assignment-schema-v1.d.ts +57 -0
- package/dist/types/roles/v1/schemas/api-claimable-role-schema-v1.d.ts +52 -0
- package/dist/types/roles/v1/schemas/api-claimable-role-scope-schema-v1.d.ts +15 -0
- package/dist/types/roles/v1/schemas/api-consolidated-assignment-entry-schema-v1.d.ts +18 -0
- package/dist/types/roles/v1/schemas/api-consolidated-claimable-role-assignment-schema-v1.d.ts +47 -0
- package/dist/types/roles/v1/schemas/api-consolidated-claimable-role-ref-schema-v1.d.ts +16 -0
- package/dist/types/roles/v1/schemas/api-consolidated-role-assignment-schema-v1.d.ts +48 -0
- package/dist/types/roles/v1/schemas/api-extended-access-role-schema-v1.d.ts +24 -0
- package/dist/types/roles/v1/schemas/api-extended-claimable-role-assignment-activation-schema-v1.d.ts +52 -0
- package/dist/types/roles/v1/schemas/api-owner-schema-v1.d.ts +20 -0
- package/dist/types/roles/v1/schemas/api-paged-collection-schema-v1.d.ts +37 -0
- package/dist/types/roles/v1/schemas/api-purge-binding-result-schema-v1.d.ts +12 -0
- package/dist/types/roles/v1/schemas/api-role-assignment-schema-v1.d.ts +42 -0
- package/dist/types/roles/v1/schemas/api-role-binding-configuration-schema-v1.d.ts +23 -0
- package/dist/types/roles/v1/schemas/api-role-binding-configuration-status-schema-v1.d.ts +18 -0
- package/dist/types/roles/v1/schemas/api-role-schema-v1.d.ts +51 -0
- package/dist/types/roles/v1/schemas/api-role-scope-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/api-scope-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/api-scope-type-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/api-scope-values-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/api-simple-claimable-role-assignment-schema-v1.d.ts +37 -0
- package/dist/types/roles/v1/schemas/api-simple-claimable-role-schema-v1.d.ts +32 -0
- package/dist/types/roles/v1/schemas/api-simple-role-assignment-schema-v1.d.ts +22 -0
- package/dist/types/roles/v1/schemas/api-simple-role-schema-v1.d.ts +19 -0
- package/dist/types/roles/v1/schemas/api-simple-system-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/api-subscription-type-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/api-system-schema-v1.d.ts +26 -0
- package/dist/types/roles/v1/schemas/assign-access-role-request-schema-v1.d.ts +24 -0
- package/dist/types/roles/v1/schemas/assign-claimable-role-request-schema-v1.d.ts +24 -0
- package/dist/types/roles/v1/schemas/assign-role-request-schema-v1.d.ts +24 -0
- package/dist/types/roles/v1/schemas/claimable-role-binding-schema-v1.d.ts +18 -0
- package/dist/types/roles/v1/schemas/create-access-role-request-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/create-binding-execution-record-request-schema-v1.d.ts +21 -0
- package/dist/types/roles/v1/schemas/create-binding-execution-record-response-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/create-binding-notification-record-request-schema-v1.d.ts +17 -0
- package/dist/types/roles/v1/schemas/create-binding-notification-record-response-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/create-claimable-role-request-schema-v1.d.ts +19 -0
- package/dist/types/roles/v1/schemas/create-role-binding-configuration-request-schema-v1.d.ts +81 -0
- package/dist/types/roles/v1/schemas/create-role-request-schema-v1.d.ts +19 -0
- package/dist/types/roles/v1/schemas/create-scope-type-request-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/delete-role-assignments-request-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/entra-group-binding-schema-v1.d.ts +35 -0
- package/dist/types/roles/v1/schemas/entra-group-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/expand-schema-v1.d.ts +11 -0
- package/dist/types/roles/v1/schemas/filter-schema-v1.d.ts +10 -0
- package/dist/types/roles/v1/schemas/include-deleted-schema-v1.d.ts +11 -0
- package/dist/types/roles/v1/schemas/org-chart-assign-entry-schema-v1.d.ts +18 -0
- package/dist/types/roles/v1/schemas/org-chart-assignment-schema-v1.d.ts +29 -0
- package/dist/types/roles/v1/schemas/org-chart-binding-schema-v1.d.ts +48 -0
- package/dist/types/roles/v1/schemas/org-chart-context-schema-v1.d.ts +15 -0
- package/dist/types/roles/v1/schemas/org-chart-match-criteria-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/org-chart-profile-schema-v1.d.ts +38 -0
- package/dist/types/roles/v1/schemas/org-chart-rule-schema-v1.d.ts +35 -0
- package/dist/types/roles/v1/schemas/org-chart-scope-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/owner-info-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/register-system-request-schema-v1.d.ts +17 -0
- package/dist/types/roles/v1/schemas/request-claimable-role-scope-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/request-role-scope-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/request-scope-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/role-binding-configuration-binding-schema-v1.d.ts +78 -0
- package/dist/types/roles/v1/schemas/role-binding-schema-v1.d.ts +18 -0
- package/dist/types/roles/v1/schemas/scope-binding-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/skip-schema-v1.d.ts +11 -0
- package/dist/types/roles/v1/schemas/subscription-request-schema-v1.d.ts +19 -0
- package/dist/types/roles/v1/schemas/top-schema-v1.d.ts +11 -0
- package/dist/types/roles/v1/schemas/update-access-role-assignment-request-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/update-access-role-request-schema-v1.d.ts +12 -0
- package/dist/types/roles/v1/schemas/update-claimable-role-assignment-request-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/update-claimable-role-request-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/update-role-assignment-request-schema-v1.d.ts +13 -0
- package/dist/types/roles/v1/schemas/update-role-binding-configuration-request-schema-v1.d.ts +79 -0
- package/dist/types/roles/v1/schemas/update-role-binding-configuration-status-request-schema-v1.d.ts +15 -0
- package/dist/types/roles/v1/schemas/update-role-request-schema-v1.d.ts +14 -0
- package/dist/types/roles/v1/schemas/update-scope-request-schema-v1.d.ts +12 -0
- package/dist/types/roles/v1/schemas/update-system-request-schema-v1.d.ts +16 -0
- package/dist/types/roles/v1/types.d.ts +109 -0
- package/dist/types/types.d.ts +173 -0
- package/dist/types/utils.d.ts +97 -0
- package/dist/types/version.d.ts +1 -0
- package/docs/roles.md +211 -0
- package/package.json +62 -0
- package/src/roles/v1/openapi.json +1 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { extractVersion, parseVersionedArgs, versionedResponseSelector } from '../../utils';
|
|
3
|
+
import { ApiVersion } from '../static';
|
|
4
|
+
import { ApiClaimableRoleSchemaV1 } from '../v1/schemas/api-claimable-role-schema-v1';
|
|
5
|
+
import { CreateClaimableRoleRequestSchemaV1 } from '../v1/schemas/create-claimable-role-request-schema-v1';
|
|
6
|
+
/**
|
|
7
|
+
* Version contract for `createClaimableRole`, implementing `POST /claimable-roles`.
|
|
8
|
+
*
|
|
9
|
+
* Each concrete {@link ApiVersion} maps to the argument and response schemas that
|
|
10
|
+
* version publishes, so the version a caller passes is the single discriminator
|
|
11
|
+
* for the request shape, the request path, and the response shape.
|
|
12
|
+
*/
|
|
13
|
+
const VersionContract = {
|
|
14
|
+
[ApiVersion.v1]: {
|
|
15
|
+
/** Arguments accepted by version 1.0 of this operation. */
|
|
16
|
+
args: z
|
|
17
|
+
.object({
|
|
18
|
+
...CreateClaimableRoleRequestSchemaV1.shape,
|
|
19
|
+
})
|
|
20
|
+
.describe('Arguments for POST /claimable-roles (createClaimableRole v1.0).'),
|
|
21
|
+
/** Response published by version 1.0 of this operation. */
|
|
22
|
+
response: ApiClaimableRoleSchemaV1,
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
/** Builds the request init for the resolved version, including its response-schema selector. */
|
|
26
|
+
const generateRequestParameters = (version, args, init) => {
|
|
27
|
+
// Select the response schema that matches the requested API version.
|
|
28
|
+
switch (version) {
|
|
29
|
+
case ApiVersion.v1: {
|
|
30
|
+
// The operation takes no path identifiers, so every argument belongs to the request body.
|
|
31
|
+
const body = { ...args };
|
|
32
|
+
const baseInit = {
|
|
33
|
+
method: 'POST',
|
|
34
|
+
selector: versionedResponseSelector(VersionContract, version),
|
|
35
|
+
body,
|
|
36
|
+
};
|
|
37
|
+
// Apply the caller-supplied `init` first, then the generated defaults, so the
|
|
38
|
+
// generated `method`, `body`, and version-specific response `selector` always win
|
|
39
|
+
// and cannot be overridden or bypassed.
|
|
40
|
+
return Object.assign({}, init, baseInit);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
throw Error(`Unknown API version: ${version}`);
|
|
44
|
+
};
|
|
45
|
+
/** Builds the request path for the resolved version, including its `api-version` parameter. */
|
|
46
|
+
const generateApiPath = (version, _args) => {
|
|
47
|
+
// Build the endpoint path according to the requested API version.
|
|
48
|
+
switch (version) {
|
|
49
|
+
case ApiVersion.v1: {
|
|
50
|
+
const params = new URLSearchParams();
|
|
51
|
+
params.append('api-version', version);
|
|
52
|
+
return `/claimable-roles?${String(params)}`;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
throw Error(`Unknown API version: ${version}`);
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Creates a claimable role: a role an account can be granted and then claim on demand for a
|
|
59
|
+
* limited period.
|
|
60
|
+
*
|
|
61
|
+
* Roles V2 operation: `POST /claimable-roles` — "Create a new claimable role."
|
|
62
|
+
*
|
|
63
|
+
* Curried in two stages: `createClaimableRole(version, client, method)` binds the API version,
|
|
64
|
+
* the `IHttpClient` that reaches the Roles service, and the execution method — `'json'` for a
|
|
65
|
+
* promise, `'json$'` for an observable stream. The returned function takes
|
|
66
|
+
* {@link CreateClaimableRoleArg} plus an optional `ClientRequestInit`, and gives back
|
|
67
|
+
* {@link CreateClaimableRoleResult}.
|
|
68
|
+
*
|
|
69
|
+
* The version argument is the single discriminator: `'v1'` — equivalently `'1.0'` or
|
|
70
|
+
* `ApiVersion.v1` — selects the version-1.0 argument schema, validates the response with
|
|
71
|
+
* `ApiClaimableRoleSchemaV1`, and sends `api-version=1.0` on the request.
|
|
72
|
+
*
|
|
73
|
+
* Roles V2 answers `201 Created`; the body is typed `ApiClaimableRoleV1`. The contract declares
|
|
74
|
+
* `403 Forbidden` for callers the Roles service does not authorise for this operation.
|
|
75
|
+
*
|
|
76
|
+
* @template TVersion - Roles API version identifier: `'v1'`, `'1.0'`, or `ApiVersion.v1`.
|
|
77
|
+
* @template TMethod - Execution method: `'json'` for a promise, `'json$'` for an observable.
|
|
78
|
+
* @param version - API version selecting the request path, the argument schema, and the
|
|
79
|
+
* response schema.
|
|
80
|
+
* @param client - HTTP client that executes the request against the Roles service.
|
|
81
|
+
* @param method - Execution method, defaulting to `'json'`.
|
|
82
|
+
* @returns A request function taking {@link CreateClaimableRoleArg} and an optional
|
|
83
|
+
* `ClientRequestInit`, returning {@link CreateClaimableRoleResult}.
|
|
84
|
+
* @throws {Error} When `version` names an API version this operation does not publish. The
|
|
85
|
+
* check runs while binding, before the HTTP client is used.
|
|
86
|
+
* @throws {z.ZodError} From the returned function, when the arguments fail this version's
|
|
87
|
+
* argument schema or the response body fails its response schema.
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* ```ts
|
|
91
|
+
* import { createClaimableRole } from '@equinor/fusion-services/roles';
|
|
92
|
+
*
|
|
93
|
+
* const claimableRole = await createClaimableRole('v1', httpClient)({
|
|
94
|
+
* name: 'on-call-approver',
|
|
95
|
+
* displayName: 'On-call approver',
|
|
96
|
+
* systemIdentifier: 'fusion-core',
|
|
97
|
+
* });
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
const createClaimableRole = (version, client, method = 'json') => {
|
|
101
|
+
const apiVersion = extractVersion(ApiVersion, version);
|
|
102
|
+
return (input, init) => {
|
|
103
|
+
// The operation has no required arguments, so an omitted argument object parses as empty.
|
|
104
|
+
const args = parseVersionedArgs(VersionContract, apiVersion, input ?? {});
|
|
105
|
+
return client[method](generateApiPath(apiVersion, args), generateRequestParameters(apiVersion, args, init));
|
|
106
|
+
};
|
|
107
|
+
};
|
|
108
|
+
// Every symbol is declared under its public name so hover and code completion show this
|
|
109
|
+
// endpoint's own documentation. They are exported in one block rather than inline because an
|
|
110
|
+
// inline `export const` would require renaming the file away from the `<resource>.<verb>`
|
|
111
|
+
// convention that mirrors the OpenAPI operation it implements.
|
|
112
|
+
// fusion-lint-disable-next-line no-separate-export
|
|
113
|
+
export { createClaimableRole, };
|
|
114
|
+
//# sourceMappingURL=claimable-roles.post.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claimable-roles.post.js","sourceRoot":"","sources":["../../../../src/roles/endpoints/claimable-roles.post.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoBxB,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,EAAE,kCAAkC,EAAE,MAAM,uDAAuD,CAAC;AAc3G;;;;;;GAMG;AACH,MAAM,eAAe,GAAG;IACtB,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;QACf,2DAA2D;QAC3D,IAAI,EAAE,CAAC;aACJ,MAAM,CAAC;YACN,GAAG,kCAAkC,CAAC,KAAK;SAC5C,CAAC;aACD,QAAQ,CAAC,iEAAiE,CAAC;QAC9E,2DAA2D;QAC3D,QAAQ,EAAE,wBAAwB;KACnC;CACoC,CAAC;AAwCxC,gGAAgG;AAChG,MAAM,yBAAyB,GAAG,CAChC,OAAiB,EACjB,IAA2D,EAC3D,IAA8C,EACL,EAAE;IAC3C,qEAAqE;IACrE,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,UAAU,CAAC,EAAE,EAAE,CAAC;YACnB,0FAA0F;YAC1F,MAAM,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;YACzB,MAAM,QAAQ,GAA8E;gBAC1F,MAAM,EAAE,MAAM;gBACd,QAAQ,EAAE,yBAAyB,CAAC,eAAe,EAAE,OAAO,CAAC;gBAC7D,IAAI;aACL,CAAC;YACF,8EAA8E;YAC9E,kFAAkF;YAClF,wCAAwC;YACxC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IACD,MAAM,KAAK,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF,+FAA+F;AAC/F,MAAM,eAAe,GAAG,CACtB,OAAiB,EACjB,KAA4D,EACpD,EAAE;IACV,kEAAkE;IAClE,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,UAAU,CAAC,EAAE,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO,oBAAoB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,MAAM,KAAK,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,MAAM,mBAAmB,GAAG,CAI1B,OAAiB,EACjB,MAAmB,EACnB,MAAM,GAAY,MAAiB,EACnC,EAAE;IAEF,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACvD,OAAO,CACL,KAA6C,EAC7C,IAAiF,EAC9B,EAAE;QACrD,0FAA0F;QAC1F,MAAM,IAAI,GAAG,kBAAkB,CAAC,eAAe,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QAC1E,OAAO,MAAM,CAAC,MAAM,CAAC,CACnB,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,EACjC,yBAAyB,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,CACG,CAAC;IACzD,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,wFAAwF;AACxF,6FAA6F;AAC7F,0FAA0F;AAC1F,+DAA+D;AAC/D,mDAAmD;AACnD,OAAO,EAKL,mBAAmB,GACpB,CAAC"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { extractVersion, parseVersionedArgs, versionedResponseSelector } from '../../utils';
|
|
3
|
+
import { ApiVersion } from '../static';
|
|
4
|
+
/**
|
|
5
|
+
* Version contract for `getPublicSchema`, implementing `GET /public/schemas/{type}`.
|
|
6
|
+
*
|
|
7
|
+
* Each concrete {@link ApiVersion} maps to the argument and response schemas that
|
|
8
|
+
* version publishes, so the version a caller passes is the single discriminator
|
|
9
|
+
* for the request shape, the request path, and the response shape.
|
|
10
|
+
*/
|
|
11
|
+
const VersionContract = {
|
|
12
|
+
[ApiVersion.v1]: {
|
|
13
|
+
/** Arguments accepted by version 1.0 of this operation. */
|
|
14
|
+
args: z
|
|
15
|
+
.object({
|
|
16
|
+
/** Published schema type, currently `role-config.schema.json`. */
|
|
17
|
+
type: z.string().describe('Published schema type, currently `role-config.schema.json`.'),
|
|
18
|
+
})
|
|
19
|
+
.describe('Arguments for GET /public/schemas/{type} (getPublicSchema v1.0).'),
|
|
20
|
+
/** Response published by version 1.0. The upstream spec does not publish a response schema. */
|
|
21
|
+
response: z.unknown(),
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
/** Builds the request init for the resolved version, including its response-schema selector. */
|
|
25
|
+
const generateRequestParameters = (version, _args, init) => {
|
|
26
|
+
// Select the response schema that matches the requested API version.
|
|
27
|
+
switch (version) {
|
|
28
|
+
case ApiVersion.v1: {
|
|
29
|
+
const baseInit = {
|
|
30
|
+
selector: versionedResponseSelector(VersionContract, version),
|
|
31
|
+
};
|
|
32
|
+
// Apply the caller-supplied `init` first, then the generated defaults, so the
|
|
33
|
+
// version-specific response `selector` always wins and cannot be bypassed.
|
|
34
|
+
return Object.assign({}, init, baseInit);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
throw Error(`Unknown API version: ${version}`);
|
|
38
|
+
};
|
|
39
|
+
/** Builds the request path for the resolved version, including its `api-version` parameter. */
|
|
40
|
+
const generateApiPath = (version, args) => {
|
|
41
|
+
// Build the endpoint path according to the requested API version.
|
|
42
|
+
switch (version) {
|
|
43
|
+
case ApiVersion.v1: {
|
|
44
|
+
const params = new URLSearchParams();
|
|
45
|
+
params.append('api-version', version);
|
|
46
|
+
return `/public/schemas/${encodeURIComponent(args.type)}?${String(params)}`;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
throw Error(`Unknown API version: ${version}`);
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Fetches a published JSON Schema document from the Roles service's public schema catalogue.
|
|
53
|
+
*
|
|
54
|
+
* Roles V2 operation: `GET /public/schemas/{type}` — "Returns a JSON schema for the specified
|
|
55
|
+
* type."
|
|
56
|
+
*
|
|
57
|
+
* Curried in two stages: `getPublicSchema(version, client, method)` binds the API version, the
|
|
58
|
+
* `IHttpClient` that reaches the Roles service, and the execution method — `'json'` for a
|
|
59
|
+
* promise, `'json$'` for an observable stream. The returned function takes
|
|
60
|
+
* {@link GetPublicSchemaArg} plus an optional `ClientRequestInit`, and gives back
|
|
61
|
+
* {@link GetPublicSchemaResult}.
|
|
62
|
+
*
|
|
63
|
+
* The version argument is the single discriminator: `'v1'` — equivalently `'1.0'` or
|
|
64
|
+
* `ApiVersion.v1` — selects the version-1.0 argument schema, passes the response body through
|
|
65
|
+
* unvalidated (the contract publishes no response schema), and sends `api-version=1.0` on the
|
|
66
|
+
* request.
|
|
67
|
+
*
|
|
68
|
+
* Roles V2 answers `200 OK`; the contract publishes no response schema, so the body is typed
|
|
69
|
+
* `unknown`.
|
|
70
|
+
*
|
|
71
|
+
* @template TVersion - Roles API version identifier: `'v1'`, `'1.0'`, or `ApiVersion.v1`.
|
|
72
|
+
* @template TMethod - Execution method: `'json'` for a promise, `'json$'` for an observable.
|
|
73
|
+
* @param version - API version selecting the request path, the argument schema, and the
|
|
74
|
+
* response schema.
|
|
75
|
+
* @param client - HTTP client that executes the request against the Roles service.
|
|
76
|
+
* @param method - Execution method, defaulting to `'json'`.
|
|
77
|
+
* @returns A request function taking {@link GetPublicSchemaArg} and an optional
|
|
78
|
+
* `ClientRequestInit`, returning {@link GetPublicSchemaResult}.
|
|
79
|
+
* @throws {Error} When `version` names an API version this operation does not publish. The
|
|
80
|
+
* check runs while binding, before the HTTP client is used.
|
|
81
|
+
* @throws {z.ZodError} From the returned function, when the arguments fail this version's
|
|
82
|
+
* argument schema or the response body fails its response schema.
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```ts
|
|
86
|
+
* import { getPublicSchema } from '@equinor/fusion-services/roles';
|
|
87
|
+
*
|
|
88
|
+
* const schema = await getPublicSchema('v1', httpClient)({ type: 'role-config.schema.json' });
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
const getPublicSchema = (version, client, method = 'json') => {
|
|
92
|
+
const apiVersion = extractVersion(ApiVersion, version);
|
|
93
|
+
return (input, init) => {
|
|
94
|
+
const args = parseVersionedArgs(VersionContract, apiVersion, input);
|
|
95
|
+
return client[method](generateApiPath(apiVersion, args), generateRequestParameters(apiVersion, args, init));
|
|
96
|
+
};
|
|
97
|
+
};
|
|
98
|
+
// Every symbol is declared under its public name so hover and code completion show this
|
|
99
|
+
// endpoint's own documentation. They are exported in one block rather than inline because an
|
|
100
|
+
// inline `export const` would require renaming the file away from the `<resource>.<verb>`
|
|
101
|
+
// convention that mirrors the OpenAPI operation it implements.
|
|
102
|
+
// fusion-lint-disable-next-line no-separate-export
|
|
103
|
+
export { getPublicSchema, };
|
|
104
|
+
//# sourceMappingURL=public-schema.get.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public-schema.get.js","sourceRoot":"","sources":["../../../../src/roles/endpoints/public-schema.get.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoBxB,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAcvC;;;;;;GAMG;AACH,MAAM,eAAe,GAAG;IACtB,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;QACf,2DAA2D;QAC3D,IAAI,EAAE,CAAC;aACJ,MAAM,CAAC;YACN,kEAAkE;YAClE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6DAA6D,CAAC;SACzF,CAAC;aACD,QAAQ,CAAC,kEAAkE,CAAC;QAC/E,+FAA+F;QAC/F,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;KACtB;CACoC,CAAC;AAuCxC,gGAAgG;AAChG,MAAM,yBAAyB,GAAG,CAChC,OAAiB,EACjB,KAA4D,EAC5D,IAA8C,EACL,EAAE;IAC3C,qEAAqE;IACrE,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,UAAU,CAAC,EAAE,EAAE,CAAC;YACnB,MAAM,QAAQ,GAA0E;gBACtF,QAAQ,EAAE,yBAAyB,CAAC,eAAe,EAAE,OAAO,CAAC;aAC9D,CAAC;YACF,8EAA8E;YAC9E,2EAA2E;YAC3E,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IACD,MAAM,KAAK,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF,+FAA+F;AAC/F,MAAM,eAAe,GAAG,CACtB,OAAiB,EACjB,IAA2D,EACnD,EAAE;IACV,kEAAkE;IAClE,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,UAAU,CAAC,EAAE,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO,mBAAmB,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9E,CAAC;IACH,CAAC;IACD,MAAM,KAAK,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,eAAe,GAAG,CAItB,OAAiB,EACjB,MAAmB,EACnB,MAAM,GAAY,MAAiB,EACnC,EAAE;IAEF,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACvD,OAAO,CACL,KAAwC,EACxC,IAA6E,EAC9B,EAAE;QACjD,MAAM,IAAI,GAAG,kBAAkB,CAAC,eAAe,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;QACpE,OAAO,MAAM,CAAC,MAAM,CAAC,CACnB,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,EACjC,yBAAyB,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,CACD,CAAC;IACrD,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,wFAAwF;AACxF,6FAA6F;AAC7F,0FAA0F;AAC1F,+DAA+D;AAC/D,mDAAmD;AACnD,OAAO,EAKL,eAAe,GAChB,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { extractVersion, parseVersionedArgs, versionedResponseSelector } from '../../utils';
|
|
3
|
+
import { ApiVersion } from '../static';
|
|
4
|
+
/**
|
|
5
|
+
* Version contract for `deleteRoleAccessRole`, implementing
|
|
6
|
+
* `DELETE /roles/{roleIdentifier}/access-roles/{accessRoleIdentifier}`.
|
|
7
|
+
*
|
|
8
|
+
* Each concrete {@link ApiVersion} maps to the argument and response schemas that
|
|
9
|
+
* version publishes, so the version a caller passes is the single discriminator
|
|
10
|
+
* for the request shape, the request path, and the response shape.
|
|
11
|
+
*/
|
|
12
|
+
const VersionContract = {
|
|
13
|
+
[ApiVersion.v1]: {
|
|
14
|
+
/** Arguments accepted by version 1.0 of this operation. */
|
|
15
|
+
args: z
|
|
16
|
+
.object({
|
|
17
|
+
/** Role UUID or unique role name. */
|
|
18
|
+
roleIdentifier: z.string().describe('Role UUID or unique role name.'),
|
|
19
|
+
/** Access role UUID or unique access role name. */
|
|
20
|
+
accessRoleIdentifier: z.string().describe('Access role UUID or unique access role name.'),
|
|
21
|
+
})
|
|
22
|
+
.describe('Arguments for DELETE /roles/{roleIdentifier}/access-roles/{accessRoleIdentifier} (deleteRoleAccessRole v1.0).'),
|
|
23
|
+
/** Response published by version 1.0. The operation answers `204 No Content`. */
|
|
24
|
+
response: z.void(),
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
/** Builds the request init for the resolved version, including its response-schema selector. */
|
|
28
|
+
const generateRequestParameters = (version, _args, init) => {
|
|
29
|
+
// Select the response schema that matches the requested API version.
|
|
30
|
+
switch (version) {
|
|
31
|
+
case ApiVersion.v1: {
|
|
32
|
+
const baseInit = {
|
|
33
|
+
method: 'DELETE',
|
|
34
|
+
selector: versionedResponseSelector(VersionContract, version),
|
|
35
|
+
// The contract declares no request body, so any caller-supplied body is dropped.
|
|
36
|
+
body: undefined,
|
|
37
|
+
};
|
|
38
|
+
// Apply the caller-supplied `init` first, then the generated defaults, so the
|
|
39
|
+
// generated `method`, forced empty `body`, and version-specific response `selector`
|
|
40
|
+
// always win and cannot be overridden or bypassed.
|
|
41
|
+
return Object.assign({}, init, baseInit);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
throw Error(`Unknown API version: ${version}`);
|
|
45
|
+
};
|
|
46
|
+
/** Builds the request path for the resolved version, including its `api-version` parameter. */
|
|
47
|
+
const generateApiPath = (version, args) => {
|
|
48
|
+
// Build the endpoint path according to the requested API version.
|
|
49
|
+
switch (version) {
|
|
50
|
+
case ApiVersion.v1: {
|
|
51
|
+
const params = new URLSearchParams();
|
|
52
|
+
params.append('api-version', version);
|
|
53
|
+
return `/roles/${encodeURIComponent(args.roleIdentifier)}/access-roles/${encodeURIComponent(args.accessRoleIdentifier)}?${String(params)}`;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
throw Error(`Unknown API version: ${version}`);
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Removes one access role mapping from a role.
|
|
60
|
+
*
|
|
61
|
+
* Roles V2 operation: `DELETE /roles/{roleIdentifier}/access-roles/{accessRoleIdentifier}` —
|
|
62
|
+
* "Delete an access role from a role"
|
|
63
|
+
*
|
|
64
|
+
* Curried in two stages: `deleteRoleAccessRole(version, client, method)` binds the API version,
|
|
65
|
+
* the `IHttpClient` that reaches the Roles service, and the execution method — `'json'` for a
|
|
66
|
+
* promise, `'json$'` for an observable stream. The returned function takes
|
|
67
|
+
* {@link DeleteRoleAccessRoleArg} plus an optional `ClientRequestInit`, and gives back
|
|
68
|
+
* {@link DeleteRoleAccessRoleResult}.
|
|
69
|
+
*
|
|
70
|
+
* The version argument is the single discriminator: `'v1'` — equivalently `'1.0'` or
|
|
71
|
+
* `ApiVersion.v1` — selects the version-1.0 argument schema, expects the empty success body,
|
|
72
|
+
* and sends `api-version=1.0` on the request.
|
|
73
|
+
*
|
|
74
|
+
* Destructive: it removes the access role mapping permanently, and the deletion cannot be
|
|
75
|
+
* undone through this API. Roles V2 answers `204 No Content` with no body, so the resolved
|
|
76
|
+
* value is `void`. The contract declares `403 Forbidden` for callers the Roles service does not
|
|
77
|
+
* authorise for this operation.
|
|
78
|
+
*
|
|
79
|
+
* @template TVersion - Roles API version identifier: `'v1'`, `'1.0'`, or `ApiVersion.v1`.
|
|
80
|
+
* @template TMethod - Execution method: `'json'` for a promise, `'json$'` for an observable.
|
|
81
|
+
* @param version - API version selecting the request path, the argument schema, and the
|
|
82
|
+
* response schema.
|
|
83
|
+
* @param client - HTTP client that executes the request against the Roles service.
|
|
84
|
+
* @param method - Execution method, defaulting to `'json'`.
|
|
85
|
+
* @returns A request function taking {@link DeleteRoleAccessRoleArg} and an optional
|
|
86
|
+
* `ClientRequestInit`, returning {@link DeleteRoleAccessRoleResult}.
|
|
87
|
+
* @throws {Error} When `version` names an API version this operation does not publish. The
|
|
88
|
+
* check runs while binding, before the HTTP client is used.
|
|
89
|
+
* @throws {z.ZodError} From the returned function, when the arguments fail this version's
|
|
90
|
+
* argument schema or the response body fails its response schema.
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* ```ts
|
|
94
|
+
* import { deleteRoleAccessRole } from '@equinor/fusion-services/roles';
|
|
95
|
+
*
|
|
96
|
+
* await deleteRoleAccessRole('v1', httpClient)({
|
|
97
|
+
* roleIdentifier: 'reader',
|
|
98
|
+
* accessRoleIdentifier: 'writer',
|
|
99
|
+
* });
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
102
|
+
const deleteRoleAccessRole = (version, client, method = 'json') => {
|
|
103
|
+
const apiVersion = extractVersion(ApiVersion, version);
|
|
104
|
+
return (input, init) => {
|
|
105
|
+
const args = parseVersionedArgs(VersionContract, apiVersion, input);
|
|
106
|
+
return client[method](generateApiPath(apiVersion, args), generateRequestParameters(apiVersion, args, init));
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
// Every symbol is declared under its public name so hover and code completion show this
|
|
110
|
+
// endpoint's own documentation. They are exported in one block rather than inline because an
|
|
111
|
+
// inline `export const` would require renaming the file away from the `<resource>.<verb>`
|
|
112
|
+
// convention that mirrors the OpenAPI operation it implements.
|
|
113
|
+
// fusion-lint-disable-next-line no-separate-export
|
|
114
|
+
export { deleteRoleAccessRole, };
|
|
115
|
+
//# sourceMappingURL=role-access-role.delete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"role-access-role.delete.js","sourceRoot":"","sources":["../../../../src/roles/endpoints/role-access-role.delete.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { extractVersion, parseVersionedArgs, versionedResponseSelector } from '../../utils';
|
|
3
|
+
import { ApiVersion } from '../static';
|
|
4
|
+
import { AddRoleAccessRoleRequestSchemaV1 } from '../v1/schemas/add-role-access-role-request-schema-v1';
|
|
5
|
+
import { ApiRoleSchemaV1 } from '../v1/schemas/api-role-schema-v1';
|
|
6
|
+
/**
|
|
7
|
+
* Version contract for `addRoleAccessRoles`, implementing
|
|
8
|
+
* `POST /roles/{roleIdentifier}/access-roles`.
|
|
9
|
+
*
|
|
10
|
+
* Each concrete {@link ApiVersion} maps to the argument and response schemas that
|
|
11
|
+
* version publishes, so the version a caller passes is the single discriminator
|
|
12
|
+
* for the request shape, the request path, and the response shape.
|
|
13
|
+
*/
|
|
14
|
+
const VersionContract = {
|
|
15
|
+
[ApiVersion.v1]: {
|
|
16
|
+
/** Arguments accepted by version 1.0 of this operation. */
|
|
17
|
+
args: z
|
|
18
|
+
.object({
|
|
19
|
+
/** Role UUID or unique role name. */
|
|
20
|
+
roleIdentifier: z.string().describe('Role UUID or unique role name.'),
|
|
21
|
+
...AddRoleAccessRoleRequestSchemaV1.shape,
|
|
22
|
+
})
|
|
23
|
+
.describe('Arguments for POST /roles/{roleIdentifier}/access-roles (addRoleAccessRoles v1.0).'),
|
|
24
|
+
/** Response published by version 1.0 of this operation. */
|
|
25
|
+
response: ApiRoleSchemaV1,
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
/** Builds the request init for the resolved version, including its response-schema selector. */
|
|
29
|
+
const generateRequestParameters = (version, args, init) => {
|
|
30
|
+
// Select the response schema that matches the requested API version.
|
|
31
|
+
switch (version) {
|
|
32
|
+
case ApiVersion.v1: {
|
|
33
|
+
// Path identifiers address the resource, so only the remaining fields form the request body.
|
|
34
|
+
const { roleIdentifier: _roleIdentifier, ...body } = args;
|
|
35
|
+
const baseInit = {
|
|
36
|
+
method: 'POST',
|
|
37
|
+
selector: versionedResponseSelector(VersionContract, version),
|
|
38
|
+
body,
|
|
39
|
+
};
|
|
40
|
+
// Apply the caller-supplied `init` first, then the generated defaults, so the
|
|
41
|
+
// generated `method`, `body`, and version-specific response `selector` always win
|
|
42
|
+
// and cannot be overridden or bypassed.
|
|
43
|
+
return Object.assign({}, init, baseInit);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
throw Error(`Unknown API version: ${version}`);
|
|
47
|
+
};
|
|
48
|
+
/** Builds the request path for the resolved version, including its `api-version` parameter. */
|
|
49
|
+
const generateApiPath = (version, args) => {
|
|
50
|
+
// Build the endpoint path according to the requested API version.
|
|
51
|
+
switch (version) {
|
|
52
|
+
case ApiVersion.v1: {
|
|
53
|
+
const params = new URLSearchParams();
|
|
54
|
+
params.append('api-version', version);
|
|
55
|
+
return `/roles/${encodeURIComponent(args.roleIdentifier)}/access-roles?${String(params)}`;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
throw Error(`Unknown API version: ${version}`);
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Adds one or more access role mappings to a role, so every holder of the role gains the mapped
|
|
62
|
+
* access roles.
|
|
63
|
+
*
|
|
64
|
+
* Roles V2 operation: `POST /roles/{roleIdentifier}/access-roles` — "Add one or more access
|
|
65
|
+
* role mappings to a role."
|
|
66
|
+
*
|
|
67
|
+
* Curried in two stages: `addRoleAccessRoles(version, client, method)` binds the API version,
|
|
68
|
+
* the `IHttpClient` that reaches the Roles service, and the execution method — `'json'` for a
|
|
69
|
+
* promise, `'json$'` for an observable stream. The returned function takes
|
|
70
|
+
* {@link AddRoleAccessRolesArg} plus an optional `ClientRequestInit`, and gives back
|
|
71
|
+
* {@link AddRoleAccessRolesResult}.
|
|
72
|
+
*
|
|
73
|
+
* The version argument is the single discriminator: `'v1'` — equivalently `'1.0'` or
|
|
74
|
+
* `ApiVersion.v1` — selects the version-1.0 argument schema, validates the response with
|
|
75
|
+
* `ApiRoleSchemaV1`, and sends `api-version=1.0` on the request.
|
|
76
|
+
*
|
|
77
|
+
* Roles V2 answers `201 Created`; the body is typed `ApiRoleV1`. The contract declares `403
|
|
78
|
+
* Forbidden` for callers the Roles service does not authorise for this operation.
|
|
79
|
+
*
|
|
80
|
+
* @template TVersion - Roles API version identifier: `'v1'`, `'1.0'`, or `ApiVersion.v1`.
|
|
81
|
+
* @template TMethod - Execution method: `'json'` for a promise, `'json$'` for an observable.
|
|
82
|
+
* @param version - API version selecting the request path, the argument schema, and the
|
|
83
|
+
* response schema.
|
|
84
|
+
* @param client - HTTP client that executes the request against the Roles service.
|
|
85
|
+
* @param method - Execution method, defaulting to `'json'`.
|
|
86
|
+
* @returns A request function taking {@link AddRoleAccessRolesArg} and an optional
|
|
87
|
+
* `ClientRequestInit`, returning {@link AddRoleAccessRolesResult}.
|
|
88
|
+
* @throws {Error} When `version` names an API version this operation does not publish. The
|
|
89
|
+
* check runs while binding, before the HTTP client is used.
|
|
90
|
+
* @throws {z.ZodError} From the returned function, when the arguments fail this version's
|
|
91
|
+
* argument schema or the response body fails its response schema.
|
|
92
|
+
*
|
|
93
|
+
* @example
|
|
94
|
+
* ```ts
|
|
95
|
+
* import { addRoleAccessRoles } from '@equinor/fusion-services/roles';
|
|
96
|
+
*
|
|
97
|
+
* const role = await addRoleAccessRoles('v1', httpClient)({
|
|
98
|
+
* roleIdentifier: 'reader',
|
|
99
|
+
* accessRoleMappings: [{ accessRoleIdentifier: 'writer' }],
|
|
100
|
+
* });
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
const addRoleAccessRoles = (version, client, method = 'json') => {
|
|
104
|
+
const apiVersion = extractVersion(ApiVersion, version);
|
|
105
|
+
return (input, init) => {
|
|
106
|
+
const args = parseVersionedArgs(VersionContract, apiVersion, input);
|
|
107
|
+
return client[method](generateApiPath(apiVersion, args), generateRequestParameters(apiVersion, args, init));
|
|
108
|
+
};
|
|
109
|
+
};
|
|
110
|
+
// Every symbol is declared under its public name so hover and code completion show this
|
|
111
|
+
// endpoint's own documentation. They are exported in one block rather than inline because an
|
|
112
|
+
// inline `export const` would require renaming the file away from the `<resource>.<verb>`
|
|
113
|
+
// convention that mirrors the OpenAPI operation it implements.
|
|
114
|
+
// fusion-lint-disable-next-line no-separate-export
|
|
115
|
+
export { addRoleAccessRoles, };
|
|
116
|
+
//# sourceMappingURL=role-access-roles.post.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"role-access-roles.post.js","sourceRoot":"","sources":["../../../../src/roles/endpoints/role-access-roles.post.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { extractVersion, parseVersionedArgs, versionedResponseSelector } from '../../utils';
|
|
3
|
+
import { ApiVersion } from '../static';
|
|
4
|
+
/**
|
|
5
|
+
* Version contract for `deleteRoleAssignment`, implementing
|
|
6
|
+
* `DELETE /roles/{roleIdentifier}/assignments/{roleAssignmentId}`.
|
|
7
|
+
*
|
|
8
|
+
* Each concrete {@link ApiVersion} maps to the argument and response schemas that
|
|
9
|
+
* version publishes, so the version a caller passes is the single discriminator
|
|
10
|
+
* for the request shape, the request path, and the response shape.
|
|
11
|
+
*/
|
|
12
|
+
const VersionContract = {
|
|
13
|
+
[ApiVersion.v1]: {
|
|
14
|
+
/** Arguments accepted by version 1.0 of this operation. */
|
|
15
|
+
args: z
|
|
16
|
+
.object({
|
|
17
|
+
/** Role UUID or unique role name. */
|
|
18
|
+
roleIdentifier: z.string().describe('Role UUID or unique role name.'),
|
|
19
|
+
/** Role assignment UUID. */
|
|
20
|
+
roleAssignmentId: z.string().describe('Role assignment UUID.'),
|
|
21
|
+
})
|
|
22
|
+
.describe('Arguments for DELETE /roles/{roleIdentifier}/assignments/{roleAssignmentId} (deleteRoleAssignment v1.0).'),
|
|
23
|
+
/** Response published by version 1.0. The operation answers `204 No Content`. */
|
|
24
|
+
response: z.void(),
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
/** Builds the request init for the resolved version, including its response-schema selector. */
|
|
28
|
+
const generateRequestParameters = (version, _args, init) => {
|
|
29
|
+
// Select the response schema that matches the requested API version.
|
|
30
|
+
switch (version) {
|
|
31
|
+
case ApiVersion.v1: {
|
|
32
|
+
const baseInit = {
|
|
33
|
+
method: 'DELETE',
|
|
34
|
+
selector: versionedResponseSelector(VersionContract, version),
|
|
35
|
+
// The contract declares no request body, so any caller-supplied body is dropped.
|
|
36
|
+
body: undefined,
|
|
37
|
+
};
|
|
38
|
+
// Apply the caller-supplied `init` first, then the generated defaults, so the
|
|
39
|
+
// generated `method`, forced empty `body`, and version-specific response `selector`
|
|
40
|
+
// always win and cannot be overridden or bypassed.
|
|
41
|
+
return Object.assign({}, init, baseInit);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
throw Error(`Unknown API version: ${version}`);
|
|
45
|
+
};
|
|
46
|
+
/** Builds the request path for the resolved version, including its `api-version` parameter. */
|
|
47
|
+
const generateApiPath = (version, args) => {
|
|
48
|
+
// Build the endpoint path according to the requested API version.
|
|
49
|
+
switch (version) {
|
|
50
|
+
case ApiVersion.v1: {
|
|
51
|
+
const params = new URLSearchParams();
|
|
52
|
+
params.append('api-version', version);
|
|
53
|
+
return `/roles/${encodeURIComponent(args.roleIdentifier)}/assignments/${encodeURIComponent(args.roleAssignmentId)}?${String(params)}`;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
throw Error(`Unknown API version: ${version}`);
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Deletes one assignment of a role, addressed by its assignment ID.
|
|
60
|
+
*
|
|
61
|
+
* Roles V2 operation: `DELETE /roles/{roleIdentifier}/assignments/{roleAssignmentId}` — "Delete
|
|
62
|
+
* a role assignment by its ID"
|
|
63
|
+
*
|
|
64
|
+
* Curried in two stages: `deleteRoleAssignment(version, client, method)` binds the API version,
|
|
65
|
+
* the `IHttpClient` that reaches the Roles service, and the execution method — `'json'` for a
|
|
66
|
+
* promise, `'json$'` for an observable stream. The returned function takes
|
|
67
|
+
* {@link DeleteRoleAssignmentArg} plus an optional `ClientRequestInit`, and gives back
|
|
68
|
+
* {@link DeleteRoleAssignmentResult}.
|
|
69
|
+
*
|
|
70
|
+
* The version argument is the single discriminator: `'v1'` — equivalently `'1.0'` or
|
|
71
|
+
* `ApiVersion.v1` — selects the version-1.0 argument schema, expects the empty success body,
|
|
72
|
+
* and sends `api-version=1.0` on the request.
|
|
73
|
+
*
|
|
74
|
+
* Destructive: it removes the role assignment permanently, and the deletion cannot be undone
|
|
75
|
+
* through this API. Roles V2 answers `204 No Content` with no body, so the resolved value is
|
|
76
|
+
* `void`. The contract declares `403 Forbidden` for callers the Roles service does not
|
|
77
|
+
* authorise for this operation.
|
|
78
|
+
*
|
|
79
|
+
* @template TVersion - Roles API version identifier: `'v1'`, `'1.0'`, or `ApiVersion.v1`.
|
|
80
|
+
* @template TMethod - Execution method: `'json'` for a promise, `'json$'` for an observable.
|
|
81
|
+
* @param version - API version selecting the request path, the argument schema, and the
|
|
82
|
+
* response schema.
|
|
83
|
+
* @param client - HTTP client that executes the request against the Roles service.
|
|
84
|
+
* @param method - Execution method, defaulting to `'json'`.
|
|
85
|
+
* @returns A request function taking {@link DeleteRoleAssignmentArg} and an optional
|
|
86
|
+
* `ClientRequestInit`, returning {@link DeleteRoleAssignmentResult}.
|
|
87
|
+
* @throws {Error} When `version` names an API version this operation does not publish. The
|
|
88
|
+
* check runs while binding, before the HTTP client is used.
|
|
89
|
+
* @throws {z.ZodError} From the returned function, when the arguments fail this version's
|
|
90
|
+
* argument schema or the response body fails its response schema.
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* ```ts
|
|
94
|
+
* import { deleteRoleAssignment } from '@equinor/fusion-services/roles';
|
|
95
|
+
*
|
|
96
|
+
* await deleteRoleAssignment('v1', httpClient)({
|
|
97
|
+
* roleIdentifier: 'reader',
|
|
98
|
+
* roleAssignmentId: '0f5a8d1c-2b3e-4a6f-9c10-7d8e9f0a1b2c',
|
|
99
|
+
* });
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
102
|
+
const deleteRoleAssignment = (version, client, method = 'json') => {
|
|
103
|
+
const apiVersion = extractVersion(ApiVersion, version);
|
|
104
|
+
return (input, init) => {
|
|
105
|
+
const args = parseVersionedArgs(VersionContract, apiVersion, input);
|
|
106
|
+
return client[method](generateApiPath(apiVersion, args), generateRequestParameters(apiVersion, args, init));
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
// Every symbol is declared under its public name so hover and code completion show this
|
|
110
|
+
// endpoint's own documentation. They are exported in one block rather than inline because an
|
|
111
|
+
// inline `export const` would require renaming the file away from the `<resource>.<verb>`
|
|
112
|
+
// convention that mirrors the OpenAPI operation it implements.
|
|
113
|
+
// fusion-lint-disable-next-line no-separate-export
|
|
114
|
+
export { deleteRoleAssignment, };
|
|
115
|
+
//# sourceMappingURL=role-assignment.delete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"role-assignment.delete.js","sourceRoot":"","sources":["../../../../src/roles/endpoints/role-assignment.delete.ts"],"names":[],"mappings":"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"}
|