@atlaskit/teams-client 4.0.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/CHANGELOG.md +1061 -0
- package/LICENSE.md +11 -0
- package/README.md +9 -0
- package/client/package.json +15 -0
- package/dist/cjs/common/types.js +8 -0
- package/dist/cjs/common/utils/ari.js +31 -0
- package/dist/cjs/common/utils/error/index.js +182 -0
- package/dist/cjs/common/utils/filter-null.js +9 -0
- package/dist/cjs/common/utils/http.js +119 -0
- package/dist/cjs/common/utils/index.js +37 -0
- package/dist/cjs/common/utils/permissions/constants.js +68 -0
- package/dist/cjs/common/utils/permissions/has-permission.js +42 -0
- package/dist/cjs/common/utils/permissions/index.js +31 -0
- package/dist/cjs/common/utils/permissions/types.js +11 -0
- package/dist/cjs/common/utils/sort-teams.js +52 -0
- package/dist/cjs/common/utils/status-code-handlers-provider.js +30 -0
- package/dist/cjs/common/utils/team.js +19 -0
- package/dist/cjs/common/utils/ufo/constants.js +22 -0
- package/dist/cjs/common/utils/ufo/index.js +69 -0
- package/dist/cjs/common/utils/ufo/utils.js +26 -0
- package/dist/cjs/index.js +166 -0
- package/dist/cjs/mocks/endpoints.js +267 -0
- package/dist/cjs/mocks/generate-data.js +115 -0
- package/dist/cjs/mocks/index.js +61 -0
- package/dist/cjs/mocks/invitations.js +21 -0
- package/dist/cjs/mocks/responses.js +480 -0
- package/dist/cjs/mocks/team-link.js +26 -0
- package/dist/cjs/mocks/team.js +150 -0
- package/dist/cjs/mocks/user.js +102 -0
- package/dist/cjs/mocks/with-faker.js +16 -0
- package/dist/cjs/services/agg-client/index.js +137 -0
- package/dist/cjs/services/agg-client/mocks/index.js +71 -0
- package/dist/cjs/services/agg-client/types.js +10 -0
- package/dist/cjs/services/agg-client/utils/queries/team-membership-query.js +8 -0
- package/dist/cjs/services/agg-client/utils/queries/user-query.js +12 -0
- package/dist/cjs/services/agg-client/utils/user-type.js +18 -0
- package/dist/cjs/services/base-client/index.js +94 -0
- package/dist/cjs/services/collaborationgraph-client/index.js +58 -0
- package/dist/cjs/services/constants.js +13 -0
- package/dist/cjs/services/directory-client/index.js +241 -0
- package/dist/cjs/services/graphql-client/index.js +12 -0
- package/dist/cjs/services/graphql-client/main.js +69 -0
- package/dist/cjs/services/graphql-client/types.js +5 -0
- package/dist/cjs/services/graphql-client/utils/index.js +157 -0
- package/dist/cjs/services/hooks/use-teams-client-setup.js +44 -0
- package/dist/cjs/services/identity-client/index.js +171 -0
- package/dist/cjs/services/identity-client/utils.js +183 -0
- package/dist/cjs/services/index.js +18 -0
- package/dist/cjs/services/invitations-client/index.js +168 -0
- package/dist/cjs/services/invitations-client/types.js +1 -0
- package/dist/cjs/services/invitations-client/utils/index.js +115 -0
- package/dist/cjs/services/invitations-client/utils/types.js +5 -0
- package/dist/cjs/services/legion-client/index.js +1160 -0
- package/dist/cjs/services/legion-client/types.js +5 -0
- package/dist/cjs/services/main.js +1941 -0
- package/dist/cjs/services/mutability-client/index.js +97 -0
- package/dist/cjs/services/mutability-client/types.js +1 -0
- package/dist/cjs/services/object-resolver-client/index.js +60 -0
- package/dist/cjs/services/object-resolver-client/types.js +17 -0
- package/dist/cjs/services/object-resolver-client/utils.js +67 -0
- package/dist/cjs/services/perms-client/index.js +48 -0
- package/dist/cjs/services/public-api-client/generated/data-contracts.js +1 -0
- package/dist/cjs/services/public-api-client/index.js +264 -0
- package/dist/cjs/services/rest-client/index.js +381 -0
- package/dist/cjs/services/rest-client/utils/cookie.js +23 -0
- package/dist/cjs/services/rest-client/utils/parse-error-message.js +62 -0
- package/dist/cjs/services/rest-client/utils/parse-response.js +20 -0
- package/dist/cjs/services/rest-client/utils/strip-uuid.js +10 -0
- package/dist/cjs/services/sentry/constants.js +15 -0
- package/dist/cjs/services/sentry/index.js +67 -0
- package/dist/cjs/services/sentry/main.js +196 -0
- package/dist/cjs/services/sentry/types.js +5 -0
- package/dist/cjs/services/sentry/utils/get-sentry-config.js +45 -0
- package/dist/cjs/services/sentry/utils/initialise-sentry.js +55 -0
- package/dist/cjs/services/sentry/utils/sentry-client.js +121 -0
- package/dist/cjs/services/sentry/utils/use-teams-sentry-client-setup.js +40 -0
- package/dist/cjs/services/teams-in-slack-client/index.js +103 -0
- package/dist/cjs/services/types.js +1 -0
- package/dist/cjs/services/use-query-light/index.js +25 -0
- package/dist/cjs/services/use-query-light/main.js +232 -0
- package/dist/cjs/services/use-query-light/types.js +52 -0
- package/dist/cjs/services/user-info-provider/index.js +18 -0
- package/dist/cjs/services/user-info-provider/main.js +72 -0
- package/dist/cjs/services/user-preferences-client/index.js +98 -0
- package/dist/cjs/types/config.js +1 -0
- package/dist/cjs/types/index.js +19 -0
- package/dist/cjs/types/links.js +22 -0
- package/dist/cjs/types/media.js +1 -0
- package/dist/cjs/types/membership.js +24 -0
- package/dist/cjs/types/slack.js +1 -0
- package/dist/cjs/types/team.js +5 -0
- package/dist/cjs/types/user.js +10 -0
- package/dist/es2019/common/types.js +2 -0
- package/dist/es2019/common/utils/ari.js +21 -0
- package/dist/es2019/common/utils/error/index.js +142 -0
- package/dist/es2019/common/utils/filter-null.js +3 -0
- package/dist/es2019/common/utils/http.js +82 -0
- package/dist/es2019/common/utils/index.js +2 -0
- package/dist/es2019/common/utils/permissions/constants.js +59 -0
- package/dist/es2019/common/utils/permissions/has-permission.js +33 -0
- package/dist/es2019/common/utils/permissions/index.js +2 -0
- package/dist/es2019/common/utils/permissions/types.js +5 -0
- package/dist/es2019/common/utils/sort-teams.js +45 -0
- package/dist/es2019/common/utils/status-code-handlers-provider.js +25 -0
- package/dist/es2019/common/utils/team.js +6 -0
- package/dist/es2019/common/utils/ufo/constants.js +12 -0
- package/dist/es2019/common/utils/ufo/index.js +43 -0
- package/dist/es2019/common/utils/ufo/utils.js +18 -0
- package/dist/es2019/index.js +19 -0
- package/dist/es2019/mocks/endpoints.js +250 -0
- package/dist/es2019/mocks/generate-data.js +96 -0
- package/dist/es2019/mocks/index.js +2 -0
- package/dist/es2019/mocks/invitations.js +11 -0
- package/dist/es2019/mocks/responses.js +478 -0
- package/dist/es2019/mocks/team-link.js +14 -0
- package/dist/es2019/mocks/team.js +127 -0
- package/dist/es2019/mocks/user.js +79 -0
- package/dist/es2019/mocks/with-faker.js +8 -0
- package/dist/es2019/services/agg-client/index.js +70 -0
- package/dist/es2019/services/agg-client/mocks/index.js +64 -0
- package/dist/es2019/services/agg-client/types.js +4 -0
- package/dist/es2019/services/agg-client/utils/queries/team-membership-query.js +36 -0
- package/dist/es2019/services/agg-client/utils/queries/user-query.js +39 -0
- package/dist/es2019/services/agg-client/utils/user-type.js +13 -0
- package/dist/es2019/services/base-client/index.js +66 -0
- package/dist/es2019/services/collaborationgraph-client/index.js +37 -0
- package/dist/es2019/services/constants.js +7 -0
- package/dist/es2019/services/directory-client/index.js +155 -0
- package/dist/es2019/services/graphql-client/index.js +1 -0
- package/dist/es2019/services/graphql-client/main.js +23 -0
- package/dist/es2019/services/graphql-client/types.js +1 -0
- package/dist/es2019/services/graphql-client/utils/index.js +76 -0
- package/dist/es2019/services/hooks/use-teams-client-setup.js +40 -0
- package/dist/es2019/services/identity-client/index.js +53 -0
- package/dist/es2019/services/identity-client/utils.js +167 -0
- package/dist/es2019/services/index.js +1 -0
- package/dist/es2019/services/invitations-client/index.js +65 -0
- package/dist/es2019/services/invitations-client/types.js +0 -0
- package/dist/es2019/services/invitations-client/utils/index.js +101 -0
- package/dist/es2019/services/invitations-client/utils/types.js +1 -0
- package/dist/es2019/services/legion-client/index.js +484 -0
- package/dist/es2019/services/legion-client/types.js +1 -0
- package/dist/es2019/services/main.js +541 -0
- package/dist/es2019/services/mutability-client/index.js +49 -0
- package/dist/es2019/services/mutability-client/types.js +0 -0
- package/dist/es2019/services/object-resolver-client/index.js +21 -0
- package/dist/es2019/services/object-resolver-client/types.js +12 -0
- package/dist/es2019/services/object-resolver-client/utils.js +53 -0
- package/dist/es2019/services/perms-client/index.js +25 -0
- package/dist/es2019/services/public-api-client/generated/data-contracts.js +0 -0
- package/dist/es2019/services/public-api-client/index.js +120 -0
- package/dist/es2019/services/rest-client/index.js +177 -0
- package/dist/es2019/services/rest-client/utils/cookie.js +13 -0
- package/dist/es2019/services/rest-client/utils/parse-error-message.js +20 -0
- package/dist/es2019/services/rest-client/utils/parse-response.js +14 -0
- package/dist/es2019/services/rest-client/utils/strip-uuid.js +4 -0
- package/dist/es2019/services/sentry/constants.js +10 -0
- package/dist/es2019/services/sentry/index.js +2 -0
- package/dist/es2019/services/sentry/main.js +107 -0
- package/dist/es2019/services/sentry/types.js +1 -0
- package/dist/es2019/services/sentry/utils/get-sentry-config.js +37 -0
- package/dist/es2019/services/sentry/utils/initialise-sentry.js +23 -0
- package/dist/es2019/services/sentry/utils/sentry-client.js +57 -0
- package/dist/es2019/services/sentry/utils/use-teams-sentry-client-setup.js +14 -0
- package/dist/es2019/services/teams-in-slack-client/index.js +32 -0
- package/dist/es2019/services/types.js +0 -0
- package/dist/es2019/services/use-query-light/index.js +2 -0
- package/dist/es2019/services/use-query-light/main.js +162 -0
- package/dist/es2019/services/use-query-light/types.js +27 -0
- package/dist/es2019/services/user-info-provider/index.js +1 -0
- package/dist/es2019/services/user-info-provider/main.js +44 -0
- package/dist/es2019/services/user-preferences-client/index.js +19 -0
- package/dist/es2019/types/config.js +0 -0
- package/dist/es2019/types/index.js +2 -0
- package/dist/es2019/types/links.js +16 -0
- package/dist/es2019/types/media.js +0 -0
- package/dist/es2019/types/membership.js +16 -0
- package/dist/es2019/types/slack.js +0 -0
- package/dist/es2019/types/team.js +1 -0
- package/dist/es2019/types/user.js +4 -0
- package/dist/esm/common/types.js +2 -0
- package/dist/esm/common/utils/ari.js +25 -0
- package/dist/esm/common/utils/error/index.js +176 -0
- package/dist/esm/common/utils/filter-null.js +3 -0
- package/dist/esm/common/utils/http.js +109 -0
- package/dist/esm/common/utils/index.js +2 -0
- package/dist/esm/common/utils/permissions/constants.js +61 -0
- package/dist/esm/common/utils/permissions/has-permission.js +34 -0
- package/dist/esm/common/utils/permissions/index.js +2 -0
- package/dist/esm/common/utils/permissions/types.js +5 -0
- package/dist/esm/common/utils/sort-teams.js +46 -0
- package/dist/esm/common/utils/status-code-handlers-provider.js +23 -0
- package/dist/esm/common/utils/team.js +12 -0
- package/dist/esm/common/utils/ufo/constants.js +15 -0
- package/dist/esm/common/utils/ufo/index.js +62 -0
- package/dist/esm/common/utils/ufo/utils.js +20 -0
- package/dist/esm/index.js +19 -0
- package/dist/esm/mocks/endpoints.js +261 -0
- package/dist/esm/mocks/generate-data.js +106 -0
- package/dist/esm/mocks/index.js +2 -0
- package/dist/esm/mocks/invitations.js +14 -0
- package/dist/esm/mocks/responses.js +473 -0
- package/dist/esm/mocks/team-link.js +19 -0
- package/dist/esm/mocks/team.js +143 -0
- package/dist/esm/mocks/user.js +95 -0
- package/dist/esm/mocks/with-faker.js +10 -0
- package/dist/esm/services/agg-client/index.js +130 -0
- package/dist/esm/services/agg-client/mocks/index.js +64 -0
- package/dist/esm/services/agg-client/types.js +4 -0
- package/dist/esm/services/agg-client/utils/queries/team-membership-query.js +2 -0
- package/dist/esm/services/agg-client/utils/queries/user-query.js +5 -0
- package/dist/esm/services/agg-client/utils/user-type.js +12 -0
- package/dist/esm/services/base-client/index.js +87 -0
- package/dist/esm/services/collaborationgraph-client/index.js +51 -0
- package/dist/esm/services/constants.js +7 -0
- package/dist/esm/services/directory-client/index.js +234 -0
- package/dist/esm/services/graphql-client/index.js +1 -0
- package/dist/esm/services/graphql-client/main.js +62 -0
- package/dist/esm/services/graphql-client/types.js +1 -0
- package/dist/esm/services/graphql-client/utils/index.js +149 -0
- package/dist/esm/services/hooks/use-teams-client-setup.js +39 -0
- package/dist/esm/services/identity-client/index.js +164 -0
- package/dist/esm/services/identity-client/utils.js +174 -0
- package/dist/esm/services/index.js +1 -0
- package/dist/esm/services/invitations-client/index.js +163 -0
- package/dist/esm/services/invitations-client/types.js +0 -0
- package/dist/esm/services/invitations-client/utils/index.js +108 -0
- package/dist/esm/services/invitations-client/utils/types.js +1 -0
- package/dist/esm/services/legion-client/index.js +1154 -0
- package/dist/esm/services/legion-client/types.js +1 -0
- package/dist/esm/services/main.js +1936 -0
- package/dist/esm/services/mutability-client/index.js +90 -0
- package/dist/esm/services/mutability-client/types.js +0 -0
- package/dist/esm/services/object-resolver-client/index.js +53 -0
- package/dist/esm/services/object-resolver-client/types.js +12 -0
- package/dist/esm/services/object-resolver-client/utils.js +61 -0
- package/dist/esm/services/perms-client/index.js +42 -0
- package/dist/esm/services/public-api-client/generated/data-contracts.js +0 -0
- package/dist/esm/services/public-api-client/index.js +260 -0
- package/dist/esm/services/rest-client/index.js +373 -0
- package/dist/esm/services/rest-client/utils/cookie.js +14 -0
- package/dist/esm/services/rest-client/utils/parse-error-message.js +55 -0
- package/dist/esm/services/rest-client/utils/parse-response.js +14 -0
- package/dist/esm/services/rest-client/utils/strip-uuid.js +4 -0
- package/dist/esm/services/sentry/constants.js +10 -0
- package/dist/esm/services/sentry/index.js +2 -0
- package/dist/esm/services/sentry/main.js +186 -0
- package/dist/esm/services/sentry/types.js +1 -0
- package/dist/esm/services/sentry/utils/get-sentry-config.js +38 -0
- package/dist/esm/services/sentry/utils/initialise-sentry.js +48 -0
- package/dist/esm/services/sentry/utils/sentry-client.js +108 -0
- package/dist/esm/services/sentry/utils/use-teams-sentry-client-setup.js +33 -0
- package/dist/esm/services/teams-in-slack-client/index.js +96 -0
- package/dist/esm/services/types.js +0 -0
- package/dist/esm/services/use-query-light/index.js +2 -0
- package/dist/esm/services/use-query-light/main.js +225 -0
- package/dist/esm/services/use-query-light/types.js +45 -0
- package/dist/esm/services/user-info-provider/index.js +1 -0
- package/dist/esm/services/user-info-provider/main.js +66 -0
- package/dist/esm/services/user-preferences-client/index.js +91 -0
- package/dist/esm/types/config.js +0 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/links.js +16 -0
- package/dist/esm/types/media.js +0 -0
- package/dist/esm/types/membership.js +17 -0
- package/dist/esm/types/slack.js +0 -0
- package/dist/esm/types/team.js +1 -0
- package/dist/esm/types/user.js +4 -0
- package/dist/types/common/types.d.ts +4 -0
- package/dist/types/common/utils/ari.d.ts +7 -0
- package/dist/types/common/utils/error/index.d.ts +91 -0
- package/dist/types/common/utils/filter-null.d.ts +1 -0
- package/dist/types/common/utils/http.d.ts +31 -0
- package/dist/types/common/utils/index.d.ts +2 -0
- package/dist/types/common/utils/permissions/constants.d.ts +23 -0
- package/dist/types/common/utils/permissions/has-permission.d.ts +31 -0
- package/dist/types/common/utils/permissions/index.d.ts +3 -0
- package/dist/types/common/utils/permissions/types.d.ts +7 -0
- package/dist/types/common/utils/sort-teams.d.ts +2 -0
- package/dist/types/common/utils/status-code-handlers-provider.d.ts +17 -0
- package/dist/types/common/utils/team.d.ts +5 -0
- package/dist/types/common/utils/ufo/constants.d.ts +5 -0
- package/dist/types/common/utils/ufo/index.d.ts +6 -0
- package/dist/types/common/utils/ufo/utils.d.ts +11 -0
- package/dist/types/index.d.ts +15 -0
- package/dist/types/mocks/endpoints.d.ts +22 -0
- package/dist/types/mocks/generate-data.d.ts +16 -0
- package/dist/types/mocks/index.d.ts +2 -0
- package/dist/types/mocks/invitations.d.ts +11 -0
- package/dist/types/mocks/responses.d.ts +75 -0
- package/dist/types/mocks/team-link.d.ts +7 -0
- package/dist/types/mocks/team.d.ts +14 -0
- package/dist/types/mocks/user.d.ts +15 -0
- package/dist/types/mocks/with-faker.d.ts +11 -0
- package/dist/types/services/agg-client/index.d.ts +12 -0
- package/dist/types/services/agg-client/mocks/index.d.ts +49 -0
- package/dist/types/services/agg-client/types.d.ts +13 -0
- package/dist/types/services/agg-client/utils/queries/team-membership-query.d.ts +33 -0
- package/dist/types/services/agg-client/utils/queries/user-query.d.ts +31 -0
- package/dist/types/services/agg-client/utils/user-type.d.ts +7 -0
- package/dist/types/services/base-client/index.d.ts +37 -0
- package/dist/types/services/collaborationgraph-client/index.d.ts +37 -0
- package/dist/types/services/constants.d.ts +2 -0
- package/dist/types/services/directory-client/index.d.ts +53 -0
- package/dist/types/services/graphql-client/index.d.ts +1 -0
- package/dist/types/services/graphql-client/main.d.ts +8 -0
- package/dist/types/services/graphql-client/types.d.ts +19 -0
- package/dist/types/services/graphql-client/utils/index.d.ts +3 -0
- package/dist/types/services/hooks/use-teams-client-setup.d.ts +12 -0
- package/dist/types/services/identity-client/index.d.ts +33 -0
- package/dist/types/services/identity-client/utils.d.ts +81 -0
- package/dist/types/services/index.d.ts +1 -0
- package/dist/types/services/invitations-client/index.d.ts +11 -0
- package/dist/types/services/invitations-client/types.d.ts +67 -0
- package/dist/types/services/invitations-client/utils/index.d.ts +7 -0
- package/dist/types/services/invitations-client/utils/types.d.ts +7 -0
- package/dist/types/services/legion-client/index.d.ts +133 -0
- package/dist/types/services/legion-client/types.d.ts +107 -0
- package/dist/types/services/main.d.ts +316 -0
- package/dist/types/services/mutability-client/index.d.ts +8 -0
- package/dist/types/services/mutability-client/types.d.ts +5 -0
- package/dist/types/services/object-resolver-client/index.d.ts +8 -0
- package/dist/types/services/object-resolver-client/types.d.ts +38 -0
- package/dist/types/services/object-resolver-client/utils.d.ts +18 -0
- package/dist/types/services/perms-client/index.d.ts +16 -0
- package/dist/types/services/public-api-client/generated/data-contracts.d.ts +112 -0
- package/dist/types/services/public-api-client/index.d.ts +41 -0
- package/dist/types/services/rest-client/index.d.ts +40 -0
- package/dist/types/services/rest-client/utils/cookie.d.ts +5 -0
- package/dist/types/services/rest-client/utils/parse-error-message.d.ts +1 -0
- package/dist/types/services/rest-client/utils/parse-response.d.ts +1 -0
- package/dist/types/services/rest-client/utils/strip-uuid.d.ts +1 -0
- package/dist/types/services/sentry/constants.d.ts +5 -0
- package/dist/types/services/sentry/index.d.ts +3 -0
- package/dist/types/services/sentry/main.d.ts +36 -0
- package/dist/types/services/sentry/types.d.ts +36 -0
- package/dist/types/services/sentry/utils/get-sentry-config.d.ts +2 -0
- package/dist/types/services/sentry/utils/initialise-sentry.d.ts +2 -0
- package/dist/types/services/sentry/utils/sentry-client.d.ts +9 -0
- package/dist/types/services/sentry/utils/use-teams-sentry-client-setup.d.ts +2 -0
- package/dist/types/services/teams-in-slack-client/index.d.ts +27 -0
- package/dist/types/services/types.d.ts +10 -0
- package/dist/types/services/use-query-light/index.d.ts +3 -0
- package/dist/types/services/use-query-light/main.d.ts +4 -0
- package/dist/types/services/use-query-light/types.d.ts +57 -0
- package/dist/types/services/user-info-provider/index.d.ts +1 -0
- package/dist/types/services/user-info-provider/main.d.ts +14 -0
- package/dist/types/services/user-preferences-client/index.d.ts +9 -0
- package/dist/types/types/config.d.ts +7 -0
- package/dist/types/types/index.d.ts +10 -0
- package/dist/types/types/links.d.ts +31 -0
- package/dist/types/types/media.d.ts +6 -0
- package/dist/types/types/membership.d.ts +35 -0
- package/dist/types/types/slack.d.ts +7 -0
- package/dist/types/types/team.d.ts +117 -0
- package/dist/types/types/user.d.ts +41 -0
- package/dist/types-ts4.5/common/types.d.ts +4 -0
- package/dist/types-ts4.5/common/utils/ari.d.ts +7 -0
- package/dist/types-ts4.5/common/utils/error/index.d.ts +91 -0
- package/dist/types-ts4.5/common/utils/filter-null.d.ts +1 -0
- package/dist/types-ts4.5/common/utils/http.d.ts +31 -0
- package/dist/types-ts4.5/common/utils/index.d.ts +2 -0
- package/dist/types-ts4.5/common/utils/permissions/constants.d.ts +23 -0
- package/dist/types-ts4.5/common/utils/permissions/has-permission.d.ts +31 -0
- package/dist/types-ts4.5/common/utils/permissions/index.d.ts +3 -0
- package/dist/types-ts4.5/common/utils/permissions/types.d.ts +26 -0
- package/dist/types-ts4.5/common/utils/sort-teams.d.ts +2 -0
- package/dist/types-ts4.5/common/utils/status-code-handlers-provider.d.ts +17 -0
- package/dist/types-ts4.5/common/utils/team.d.ts +5 -0
- package/dist/types-ts4.5/common/utils/ufo/constants.d.ts +64 -0
- package/dist/types-ts4.5/common/utils/ufo/index.d.ts +6 -0
- package/dist/types-ts4.5/common/utils/ufo/utils.d.ts +11 -0
- package/dist/types-ts4.5/index.d.ts +15 -0
- package/dist/types-ts4.5/mocks/endpoints.d.ts +22 -0
- package/dist/types-ts4.5/mocks/generate-data.d.ts +16 -0
- package/dist/types-ts4.5/mocks/index.d.ts +2 -0
- package/dist/types-ts4.5/mocks/invitations.d.ts +11 -0
- package/dist/types-ts4.5/mocks/responses.d.ts +75 -0
- package/dist/types-ts4.5/mocks/team-link.d.ts +7 -0
- package/dist/types-ts4.5/mocks/team.d.ts +14 -0
- package/dist/types-ts4.5/mocks/user.d.ts +15 -0
- package/dist/types-ts4.5/mocks/with-faker.d.ts +11 -0
- package/dist/types-ts4.5/services/agg-client/index.d.ts +12 -0
- package/dist/types-ts4.5/services/agg-client/mocks/index.d.ts +49 -0
- package/dist/types-ts4.5/services/agg-client/types.d.ts +13 -0
- package/dist/types-ts4.5/services/agg-client/utils/queries/team-membership-query.d.ts +33 -0
- package/dist/types-ts4.5/services/agg-client/utils/queries/user-query.d.ts +31 -0
- package/dist/types-ts4.5/services/agg-client/utils/user-type.d.ts +7 -0
- package/dist/types-ts4.5/services/base-client/index.d.ts +37 -0
- package/dist/types-ts4.5/services/collaborationgraph-client/index.d.ts +37 -0
- package/dist/types-ts4.5/services/constants.d.ts +2 -0
- package/dist/types-ts4.5/services/directory-client/index.d.ts +53 -0
- package/dist/types-ts4.5/services/graphql-client/index.d.ts +1 -0
- package/dist/types-ts4.5/services/graphql-client/main.d.ts +8 -0
- package/dist/types-ts4.5/services/graphql-client/types.d.ts +19 -0
- package/dist/types-ts4.5/services/graphql-client/utils/index.d.ts +3 -0
- package/dist/types-ts4.5/services/hooks/use-teams-client-setup.d.ts +12 -0
- package/dist/types-ts4.5/services/identity-client/index.d.ts +33 -0
- package/dist/types-ts4.5/services/identity-client/utils.d.ts +81 -0
- package/dist/types-ts4.5/services/index.d.ts +1 -0
- package/dist/types-ts4.5/services/invitations-client/index.d.ts +11 -0
- package/dist/types-ts4.5/services/invitations-client/types.d.ts +67 -0
- package/dist/types-ts4.5/services/invitations-client/utils/index.d.ts +7 -0
- package/dist/types-ts4.5/services/invitations-client/utils/types.d.ts +7 -0
- package/dist/types-ts4.5/services/legion-client/index.d.ts +133 -0
- package/dist/types-ts4.5/services/legion-client/types.d.ts +107 -0
- package/dist/types-ts4.5/services/main.d.ts +316 -0
- package/dist/types-ts4.5/services/mutability-client/index.d.ts +8 -0
- package/dist/types-ts4.5/services/mutability-client/types.d.ts +5 -0
- package/dist/types-ts4.5/services/object-resolver-client/index.d.ts +8 -0
- package/dist/types-ts4.5/services/object-resolver-client/types.d.ts +38 -0
- package/dist/types-ts4.5/services/object-resolver-client/utils.d.ts +18 -0
- package/dist/types-ts4.5/services/perms-client/index.d.ts +16 -0
- package/dist/types-ts4.5/services/public-api-client/generated/data-contracts.d.ts +112 -0
- package/dist/types-ts4.5/services/public-api-client/index.d.ts +41 -0
- package/dist/types-ts4.5/services/rest-client/index.d.ts +40 -0
- package/dist/types-ts4.5/services/rest-client/utils/cookie.d.ts +5 -0
- package/dist/types-ts4.5/services/rest-client/utils/parse-error-message.d.ts +1 -0
- package/dist/types-ts4.5/services/rest-client/utils/parse-response.d.ts +1 -0
- package/dist/types-ts4.5/services/rest-client/utils/strip-uuid.d.ts +1 -0
- package/dist/types-ts4.5/services/sentry/constants.d.ts +5 -0
- package/dist/types-ts4.5/services/sentry/index.d.ts +3 -0
- package/dist/types-ts4.5/services/sentry/main.d.ts +36 -0
- package/dist/types-ts4.5/services/sentry/types.d.ts +36 -0
- package/dist/types-ts4.5/services/sentry/utils/get-sentry-config.d.ts +2 -0
- package/dist/types-ts4.5/services/sentry/utils/initialise-sentry.d.ts +2 -0
- package/dist/types-ts4.5/services/sentry/utils/sentry-client.d.ts +9 -0
- package/dist/types-ts4.5/services/sentry/utils/use-teams-sentry-client-setup.d.ts +2 -0
- package/dist/types-ts4.5/services/teams-in-slack-client/index.d.ts +27 -0
- package/dist/types-ts4.5/services/types.d.ts +10 -0
- package/dist/types-ts4.5/services/use-query-light/index.d.ts +3 -0
- package/dist/types-ts4.5/services/use-query-light/main.d.ts +7 -0
- package/dist/types-ts4.5/services/use-query-light/types.d.ts +57 -0
- package/dist/types-ts4.5/services/user-info-provider/index.d.ts +1 -0
- package/dist/types-ts4.5/services/user-info-provider/main.d.ts +14 -0
- package/dist/types-ts4.5/services/user-preferences-client/index.d.ts +9 -0
- package/dist/types-ts4.5/types/config.d.ts +7 -0
- package/dist/types-ts4.5/types/index.d.ts +10 -0
- package/dist/types-ts4.5/types/links.d.ts +31 -0
- package/dist/types-ts4.5/types/media.d.ts +6 -0
- package/dist/types-ts4.5/types/membership.d.ts +35 -0
- package/dist/types-ts4.5/types/slack.d.ts +7 -0
- package/dist/types-ts4.5/types/team.d.ts +117 -0
- package/dist/types-ts4.5/types/user.d.ts +51 -0
- package/mocks/package.json +15 -0
- package/package.json +111 -0
- package/permissions/package.json +15 -0
- package/public/package.json +15 -0
- package/report.api.md +1210 -0
- package/scripts/generate-docs.ts +31 -0
- package/scripts/utils.ts +269 -0
- package/sentry/package.json +15 -0
- package/types/package.json +15 -0
- package/ufo/package.json +15 -0
- package/use-query-light/package.json +15 -0
- package/user-info-provider/package.json +15 -0
- package/utils/package.json +15 -0
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { type TeamMembership } from './membership';
|
|
2
|
+
/**
|
|
3
|
+
* @private
|
|
4
|
+
* @deprecated state has been removed as part of migration to V4
|
|
5
|
+
*/
|
|
6
|
+
export type DeprecatedTeamState = 'DISBANDED';
|
|
7
|
+
export type TeamState = 'ACTIVE' | 'PURGED' | DeprecatedTeamState;
|
|
8
|
+
export type TeamMembershipSettings = 'OPEN' | 'MEMBER_INVITE' | 'EXTERNAL';
|
|
9
|
+
export type TeamDiscoverability = 'DISCOVERABLE';
|
|
10
|
+
export type TeamRestriction = 'ORG_MEMBERS' | 'NO_RESTRICTION';
|
|
11
|
+
export type TeamPermission = 'FULL_WRITE' | 'FULL_READ' | 'NONE';
|
|
12
|
+
export type ScopeMode = 'ORG_SCOPE_MODE' | 'SITE_SCOPE_MODE';
|
|
13
|
+
export interface Scope {
|
|
14
|
+
id: string;
|
|
15
|
+
name: string;
|
|
16
|
+
}
|
|
17
|
+
export interface TeamAvatarImage {
|
|
18
|
+
largeAvatarImageUrl: string;
|
|
19
|
+
smallAvatarImageUrl: string;
|
|
20
|
+
largeHeaderImageUrl: string;
|
|
21
|
+
smallHeaderImageUrl: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* @type Team
|
|
25
|
+
* Team type which doean't include the avatar image urls
|
|
26
|
+
*/
|
|
27
|
+
export interface Team {
|
|
28
|
+
id: string;
|
|
29
|
+
displayName: string;
|
|
30
|
+
description: string;
|
|
31
|
+
state: TeamState;
|
|
32
|
+
membershipSettings: TeamMembershipSettings;
|
|
33
|
+
/**
|
|
34
|
+
* @private
|
|
35
|
+
* @deprecated field has been removed as part of migration to V4. Will always be DISCOVERABLE
|
|
36
|
+
*/
|
|
37
|
+
discoverable?: TeamDiscoverability;
|
|
38
|
+
organizationId?: string;
|
|
39
|
+
/**
|
|
40
|
+
* @private
|
|
41
|
+
* @deprecated field has been removed as part of migration to V4
|
|
42
|
+
*/
|
|
43
|
+
restriction: TeamRestriction;
|
|
44
|
+
creatorId?: string;
|
|
45
|
+
permission?: TeamPermission;
|
|
46
|
+
/**
|
|
47
|
+
* @private
|
|
48
|
+
* @deprecated field has been removed as part of migration to V4
|
|
49
|
+
*/
|
|
50
|
+
creatorDomain?: string;
|
|
51
|
+
memberIds?: string[];
|
|
52
|
+
membership?: {
|
|
53
|
+
members?: TeamMembership[];
|
|
54
|
+
errors?: string[];
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* @private
|
|
58
|
+
* @deprecated use organizationId instead
|
|
59
|
+
*/
|
|
60
|
+
orgId?: string;
|
|
61
|
+
scopeMode?: ScopeMode;
|
|
62
|
+
isVerified?: boolean;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* @type TeamWithImageUrls
|
|
66
|
+
*/
|
|
67
|
+
export interface TeamWithImageUrls extends Team, TeamAvatarImage {
|
|
68
|
+
}
|
|
69
|
+
export interface SoftDeletedTeamResponse {
|
|
70
|
+
teamResponse: {
|
|
71
|
+
displayName: string;
|
|
72
|
+
expiry: string;
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
export interface SoftDeletedTeam {
|
|
76
|
+
id: string;
|
|
77
|
+
displayName: string;
|
|
78
|
+
expiry: string;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* @type ExternalReference
|
|
82
|
+
* Payload type for the createTeam API, when the team membershipSetting is EXTERNAL
|
|
83
|
+
* @property {string} source - The source of the external reference, e.g., "ATLASSIAN_GROUP".
|
|
84
|
+
* @property {string} id - Group ID of source
|
|
85
|
+
*/
|
|
86
|
+
export interface ExternalReference {
|
|
87
|
+
source: string;
|
|
88
|
+
id: string;
|
|
89
|
+
displayName?: string;
|
|
90
|
+
syncTeamName?: boolean;
|
|
91
|
+
}
|
|
92
|
+
export type TeamsPermissionApi = 'CAN_CREATE_TEAMS' | 'CAN_VIEW_TEAMS' | 'CAN_ADMIN_TEAMS';
|
|
93
|
+
/**
|
|
94
|
+
* @type TeamsPermissionFromApi
|
|
95
|
+
* Mapped response from GET /api/v4/teams/permission/self/organization/{orgId}
|
|
96
|
+
*/
|
|
97
|
+
export type TeamsPermissionFromApi = {
|
|
98
|
+
permissions: TeamsPermissionApi[];
|
|
99
|
+
};
|
|
100
|
+
export type LinkedTeam = Pick<TeamWithImageUrls, 'id' | 'displayName' | 'description' | 'organizationId' | 'isVerified' | 'smallAvatarImageUrl' | 'largeAvatarImageUrl'> & {
|
|
101
|
+
linkToTeamProfile: string;
|
|
102
|
+
externalReference: {
|
|
103
|
+
id: string;
|
|
104
|
+
};
|
|
105
|
+
scopeMode: ScopeMode;
|
|
106
|
+
scope: Scope;
|
|
107
|
+
};
|
|
108
|
+
export interface LinkedTeamsBulkResponse {
|
|
109
|
+
teams: LinkedTeam[];
|
|
110
|
+
}
|
|
111
|
+
export interface LinkedTeamsProfileDetails {
|
|
112
|
+
profileUrl: string;
|
|
113
|
+
}
|
|
114
|
+
export interface OrgScope {
|
|
115
|
+
scopeMode: ScopeMode;
|
|
116
|
+
scopes: Scope[];
|
|
117
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
type UserPrivacyLevel = 'private' | 'domain' | 'public';
|
|
2
|
+
export type UserStatus = 'active' | 'inactive' | 'closed';
|
|
3
|
+
export type UserType = 'bot' | 'user' | 'agent';
|
|
4
|
+
interface UserPrivacy {
|
|
5
|
+
level: UserPrivacyLevel;
|
|
6
|
+
domain: string;
|
|
7
|
+
isBlacklistedDomain: boolean;
|
|
8
|
+
}
|
|
9
|
+
export interface TeamsClientUser {
|
|
10
|
+
id: string;
|
|
11
|
+
isCurrentUser?: boolean;
|
|
12
|
+
fullName: string;
|
|
13
|
+
nickname?: string;
|
|
14
|
+
email?: string;
|
|
15
|
+
title?: string;
|
|
16
|
+
timezone?: string;
|
|
17
|
+
localTime?: string;
|
|
18
|
+
locale?: string;
|
|
19
|
+
preferredLanguage?: string;
|
|
20
|
+
location?: string;
|
|
21
|
+
companyName?: string;
|
|
22
|
+
department?: string;
|
|
23
|
+
position?: string;
|
|
24
|
+
avatarUrl?: string;
|
|
25
|
+
headerImageUrl?: string;
|
|
26
|
+
privacy?: UserPrivacy;
|
|
27
|
+
status?: UserStatus;
|
|
28
|
+
statusModifiedDate?: number;
|
|
29
|
+
isBot?: boolean;
|
|
30
|
+
isNotMentionable?: boolean;
|
|
31
|
+
phoneNumber?: string;
|
|
32
|
+
userType?: UserType;
|
|
33
|
+
isAgent?: boolean;
|
|
34
|
+
}
|
|
35
|
+
export interface UserInSiteUserbase {
|
|
36
|
+
isPresent: boolean;
|
|
37
|
+
}
|
|
38
|
+
declare const EditableUserFieldList: readonly ["title", "department", "companyName", "location", "phoneNumber", "fullName", "nickname", "locale", "email"];
|
|
39
|
+
export type EditableUserFields = Pick<TeamsClientUser, (typeof EditableUserFieldList)[number]>;
|
|
40
|
+
export declare const isEditableUserField: (key: string) => key is "title" | "department" | "companyName" | "location" | "phoneNumber" | "fullName" | "nickname" | "locale" | "email";
|
|
41
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type TeamARI, type UserARI } from '../types';
|
|
2
|
+
export declare const isUserARI: (ari: string) => ari is `ari:cloud:identity::user/${string}`;
|
|
3
|
+
export declare const toUserId: (ari: UserARI | string) => string;
|
|
4
|
+
export declare const toUserARI: (userId: string) => UserARI;
|
|
5
|
+
export declare const isTeamARI: (ari: string) => ari is `ari:cloud:identity::team/${string}`;
|
|
6
|
+
export declare const toTeamId: (ari: TeamARI | string) => string;
|
|
7
|
+
export declare const toTeamARI: (teamId: string) => TeamARI;
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
export declare enum ErrorCategory {
|
|
2
|
+
NotFound = "NotFound",
|
|
3
|
+
NotPermitted = "NotPermitted",
|
|
4
|
+
MalformedInput = "MalformedInput",
|
|
5
|
+
Internal = "Internal"
|
|
6
|
+
}
|
|
7
|
+
export declare enum StatusCode {
|
|
8
|
+
UNAUTHORIZED = 401,
|
|
9
|
+
FORBIDDEN = 403,
|
|
10
|
+
TIMEOUT = 408,
|
|
11
|
+
GONE = 410,
|
|
12
|
+
PAYLOAD_TOO_LARGE = 413
|
|
13
|
+
}
|
|
14
|
+
export declare function isAuthError(error?: Error | HttpError): boolean;
|
|
15
|
+
export declare function isErrorStatusCode(statusCode: number, error?: Error | HttpError): boolean;
|
|
16
|
+
export declare function doesErrorContainStatus(statusCode: number, message: string): boolean;
|
|
17
|
+
export type DirectoryErrorCode = 'MISSING_ERROR_MESSAGE';
|
|
18
|
+
export declare enum TeamErrorType {
|
|
19
|
+
TEAM_NOT_ACTIVE = "Team must be active"
|
|
20
|
+
}
|
|
21
|
+
export type ErrorObjectType = {
|
|
22
|
+
code?: string;
|
|
23
|
+
message?: TeamErrorType;
|
|
24
|
+
};
|
|
25
|
+
export type SingleError = {
|
|
26
|
+
status?: number;
|
|
27
|
+
error?: string;
|
|
28
|
+
};
|
|
29
|
+
export type RestJsonErrorResponse = {
|
|
30
|
+
errors: (TeamErrorType | ErrorObjectType)[];
|
|
31
|
+
timestamp?: string;
|
|
32
|
+
} & SingleError;
|
|
33
|
+
declare class CommonError extends Error {
|
|
34
|
+
message: string;
|
|
35
|
+
name: string;
|
|
36
|
+
stack: string;
|
|
37
|
+
constructor(message?: string);
|
|
38
|
+
}
|
|
39
|
+
export declare class DefaultError extends CommonError {
|
|
40
|
+
constructor({ message }: {
|
|
41
|
+
message?: string;
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* These errors will not fail UFO experiences
|
|
46
|
+
*/
|
|
47
|
+
export declare class SLOIgnoreError extends CommonError {
|
|
48
|
+
constructor({ message }: {
|
|
49
|
+
message?: string;
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
interface HttpErrorArguments {
|
|
53
|
+
message: string;
|
|
54
|
+
status: number;
|
|
55
|
+
traceId?: string;
|
|
56
|
+
path?: string;
|
|
57
|
+
}
|
|
58
|
+
export declare class HttpError extends CommonError {
|
|
59
|
+
status: number;
|
|
60
|
+
traceId?: string;
|
|
61
|
+
path?: string;
|
|
62
|
+
constructor({ message, status, traceId, path }: HttpErrorArguments);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* These errors will not fail UFO experiences
|
|
66
|
+
*/
|
|
67
|
+
export declare class SLOIgnoreHttpError extends HttpError {
|
|
68
|
+
constructor(props: HttpErrorArguments);
|
|
69
|
+
}
|
|
70
|
+
interface ResultErrorData {
|
|
71
|
+
category: string;
|
|
72
|
+
message: string;
|
|
73
|
+
fields?: object;
|
|
74
|
+
}
|
|
75
|
+
interface FieldError {
|
|
76
|
+
message: string;
|
|
77
|
+
field: string;
|
|
78
|
+
}
|
|
79
|
+
export interface ErrorData {
|
|
80
|
+
category: string;
|
|
81
|
+
message: string;
|
|
82
|
+
fields?: FieldError[];
|
|
83
|
+
}
|
|
84
|
+
export declare class GraphQLError extends CommonError {
|
|
85
|
+
fields?: any;
|
|
86
|
+
category?: string;
|
|
87
|
+
constructor({ message, category, fields }: Partial<ResultErrorData>);
|
|
88
|
+
static from: (rawErrors: ErrorData[]) => GraphQLError;
|
|
89
|
+
}
|
|
90
|
+
export declare function isNetworkError(error: Error): boolean;
|
|
91
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function filterNull<T>(x?: T): x is Exclude<T, null>;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export declare const EXPONENTIAL_BACKOFF_RETRY_POLICY: {
|
|
2
|
+
INITIAL_DELAY: number;
|
|
3
|
+
MAX_RETRIES: number;
|
|
4
|
+
JITTER: boolean;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Checks whether a status code is a 5xx HTTP code.
|
|
8
|
+
* @param {number} status HTTP status code
|
|
9
|
+
*/
|
|
10
|
+
export declare function is5xx(status: number): boolean;
|
|
11
|
+
export declare function isFetchResponse(data: unknown): data is {
|
|
12
|
+
response: Response;
|
|
13
|
+
};
|
|
14
|
+
type ToTryFunctionArgs = any[];
|
|
15
|
+
type ToTryFunction<T> = (...args: ToTryFunctionArgs) => Promise<T>;
|
|
16
|
+
type RetryIfCallback<T> = (a: T) => boolean;
|
|
17
|
+
interface WithExponentialBackoffOptions<T> {
|
|
18
|
+
initial: number;
|
|
19
|
+
jitter?: boolean;
|
|
20
|
+
max: number;
|
|
21
|
+
retryIf?: RetryIfCallback<T>;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Transparently wrap a function so that it is retried until it succeeds or reaches a max retry limit.
|
|
25
|
+
* The returned function has the same signature as the wrapped function.
|
|
26
|
+
*
|
|
27
|
+
* Modified from https://jsfiddle.net/pajtai/pLka0ow9/
|
|
28
|
+
*/
|
|
29
|
+
export declare function withExponentialBackoff<ResponseType>(toTry: ToTryFunction<ResponseType>, hofOptions?: WithExponentialBackoffOptions<ResponseType>): (...args: ToTryFunctionArgs) => Promise<ResponseType>;
|
|
30
|
+
export declare const fetchWithExponentialBackoff: (...args: ToTryFunctionArgs) => Promise<Response>;
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type TeamMembershipSettings, type TeamPermission } from '../../../types/team';
|
|
2
|
+
import { type TeamAction } from './types';
|
|
3
|
+
export type PermissionMap = Required<Record<TeamAction, boolean>>;
|
|
4
|
+
export declare const allPermissions: (defaultPermission: boolean, isMember: boolean) => PermissionMap;
|
|
5
|
+
export declare const vanityActions: TeamAction[];
|
|
6
|
+
export declare const openPermissions: (permission: TeamPermission | undefined) => {
|
|
7
|
+
JOIN_TEAM: boolean;
|
|
8
|
+
REQUEST_TO_JOIN: boolean;
|
|
9
|
+
CANCEL_JOIN_REQUEST: boolean;
|
|
10
|
+
APPROVE_JOIN_REQUEST: boolean;
|
|
11
|
+
REJECT_JOIN_REQUEST: boolean;
|
|
12
|
+
};
|
|
13
|
+
export declare const inviteOnlyPermissions: (permission: TeamPermission | undefined) => {
|
|
14
|
+
REQUEST_TO_JOIN: boolean;
|
|
15
|
+
CANCEL_JOIN_REQUEST: boolean;
|
|
16
|
+
};
|
|
17
|
+
export declare const SCIMSyncTeamPermissions: (isMember: boolean, isOrgAdmin: boolean) => {
|
|
18
|
+
EDIT_DESCRIPTION: boolean;
|
|
19
|
+
EDIT_TEAM_SETTINGS: boolean;
|
|
20
|
+
EDIT_TEAM_LINK: boolean;
|
|
21
|
+
EDIT_TEAM_NAME: boolean;
|
|
22
|
+
};
|
|
23
|
+
export declare const getPermissionMap: (settings: TeamMembershipSettings, permission: TeamPermission | undefined, isMember: boolean, isOrgAdmin: boolean) => PermissionMap;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { type TeamMembership } from '../../../types/membership';
|
|
2
|
+
import { type TeamMembershipSettings, type TeamPermission } from '../../../types/team';
|
|
3
|
+
import { type TeamAction, type TeamPermissions } from './types';
|
|
4
|
+
export declare function hasPermission(action: TeamAction, settings: TeamMembershipSettings, permission: TeamPermission | undefined, isPeopleBrowseEnabled: boolean, currentUserMembership: TeamMembership | undefined, teamVisibilityPermissions?: TeamPermissions): boolean;
|
|
5
|
+
type PermissionOptions = {
|
|
6
|
+
/**
|
|
7
|
+
* The teams membership settings, "OPEN" | "MEMBER_INVITE" | "EXTERNAL"
|
|
8
|
+
*/
|
|
9
|
+
membershipSettings: TeamMembershipSettings;
|
|
10
|
+
/**
|
|
11
|
+
* The users permission for the team, "FULL_WRITE" | "FULL_READ" | "NONE"
|
|
12
|
+
*/
|
|
13
|
+
teamPermission: TeamPermission | undefined;
|
|
14
|
+
/**
|
|
15
|
+
* Is the user a member of the team
|
|
16
|
+
*/
|
|
17
|
+
isMemberOfTeam: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Is the user an org admin
|
|
20
|
+
*/
|
|
21
|
+
isOrgAdmin: boolean;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Determines if a user has permission perform a given action on a team
|
|
25
|
+
*/
|
|
26
|
+
export declare function userCan(action: TeamAction, options: PermissionOptions): boolean;
|
|
27
|
+
/**
|
|
28
|
+
* @deprecated Use `userCan` instead, it gives better visibility into the option mappings
|
|
29
|
+
*/
|
|
30
|
+
export declare function hasPermissionForAction(action: TeamAction, settings: TeamMembershipSettings, permission: TeamPermission | undefined, isMemberOfTeam: boolean, isOrgAdmin?: boolean): boolean;
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export declare const AllTeamActions: readonly [
|
|
2
|
+
"ADD_MEMBER_TO_TEAM",
|
|
3
|
+
"JOIN_TEAM",
|
|
4
|
+
"REQUEST_TO_JOIN",
|
|
5
|
+
"CANCEL_JOIN_REQUEST",
|
|
6
|
+
"APPROVE_JOIN_REQUEST",
|
|
7
|
+
"REJECT_JOIN_REQUEST",
|
|
8
|
+
"REMOVE_MEMBER_FROM_TEAM",
|
|
9
|
+
"CANCEL_INVITE",
|
|
10
|
+
"LEAVE_TEAM",
|
|
11
|
+
"REMOVE_AGENT_FROM_TEAM",
|
|
12
|
+
"ADD_AGENT_TO_TEAM",
|
|
13
|
+
"EDIT_TEAM_NAME",
|
|
14
|
+
"EDIT_DESCRIPTION",
|
|
15
|
+
"EDIT_PROFILE_HEADER",
|
|
16
|
+
"EDIT_TEAM_LINK",
|
|
17
|
+
"EDIT_TEAM_SETTINGS",
|
|
18
|
+
"EDIT_TEAM_MEMBERSHIP",
|
|
19
|
+
"DELETE_TEAM"
|
|
20
|
+
];
|
|
21
|
+
export type TeamAction = (typeof AllTeamActions)[number];
|
|
22
|
+
export type TeamPermissions = {
|
|
23
|
+
canCreateTeams: boolean;
|
|
24
|
+
canViewTeams: boolean;
|
|
25
|
+
canAdminTeams?: boolean;
|
|
26
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Our REST clients are initialised when their module loads which makes it tricky for them to consume the `statusCodeHandlers` prop passed to App from the host application.
|
|
3
|
+
* This is a temporary measure to enable the clients to consume `statusCodeHandlers`.
|
|
4
|
+
* The long term solution is to replace our REST clients with Apollo client custom resolvers
|
|
5
|
+
* This will unify all remote data handling under the apollo-client module which is able to easily receive `statusCodeHandlers` as it is initialised within the React portion of our app.
|
|
6
|
+
*/
|
|
7
|
+
type StatusCodeHandler = (response: Response) => void;
|
|
8
|
+
export interface StatusCodeHandlerMap {
|
|
9
|
+
[statusCode: number]: StatusCodeHandler;
|
|
10
|
+
}
|
|
11
|
+
export declare const statusCodeHandlersProvider: {
|
|
12
|
+
handlers: StatusCodeHandlerMap;
|
|
13
|
+
get(): StatusCodeHandlerMap;
|
|
14
|
+
setHandlers(handlers: StatusCodeHandlerMap): void;
|
|
15
|
+
};
|
|
16
|
+
export declare function handleResponse(response: Response): void;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type TeamMembership } from '../../types';
|
|
2
|
+
export declare function isInvited(member?: TeamMembership): member is TeamMembership & boolean;
|
|
3
|
+
export declare const isNonMember: (member?: TeamMembership) => boolean;
|
|
4
|
+
export declare const isRequestingJoin: (member?: TeamMembership) => boolean;
|
|
5
|
+
export declare const isMember: (member?: TeamMembership) => boolean;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { TeamsUFOExperience } from './index';
|
|
2
|
+
declare const TeamsClientExperienceKeyList: readonly [
|
|
3
|
+
"getAllTeams",
|
|
4
|
+
"getTeamById",
|
|
5
|
+
"updateTeamById",
|
|
6
|
+
"querySettings",
|
|
7
|
+
"queryFeatureFlags",
|
|
8
|
+
"queryTeamMemberships",
|
|
9
|
+
"queryUser",
|
|
10
|
+
"inviteUsersToTeam",
|
|
11
|
+
"getMyTeamMembership",
|
|
12
|
+
"getTeamLinksByTeamId",
|
|
13
|
+
"createTeamLink",
|
|
14
|
+
"updateTeamLink",
|
|
15
|
+
"deleteTeamLink",
|
|
16
|
+
"reorderTeamLink",
|
|
17
|
+
"acceptTeamInvitation",
|
|
18
|
+
"declineTeamInvitation",
|
|
19
|
+
"selfJoinTeam",
|
|
20
|
+
"cancelJoinRequest",
|
|
21
|
+
"acceptJoinRequest",
|
|
22
|
+
"declineJoinRequest",
|
|
23
|
+
"deleteTeamMembership",
|
|
24
|
+
"revokeTeamInvite",
|
|
25
|
+
"deleteTeam",
|
|
26
|
+
"isSingleFullMemberTeam",
|
|
27
|
+
"createTeam",
|
|
28
|
+
"createExternalTeam",
|
|
29
|
+
"getProfileWithMutability",
|
|
30
|
+
"getIsSiteAdmin",
|
|
31
|
+
"addUsersToTeam",
|
|
32
|
+
"removeTeamMemberships",
|
|
33
|
+
"getRecommendedProducts",
|
|
34
|
+
"joinOrRequestDefaultAccessToProductsBulk",
|
|
35
|
+
"getReadMediaToken",
|
|
36
|
+
"getWriteUserMediaToken",
|
|
37
|
+
"updateUserHeaderImage",
|
|
38
|
+
"getWriteTeamMediaToken",
|
|
39
|
+
"getSoftDeletedTeamById",
|
|
40
|
+
"restoreTeam",
|
|
41
|
+
"getUserInSiteUserBase",
|
|
42
|
+
"getLinkedTeamsBulk",
|
|
43
|
+
"getTeamProfileDetails",
|
|
44
|
+
"getUserContainers",
|
|
45
|
+
"getPermissions",
|
|
46
|
+
"getUserManageConfig",
|
|
47
|
+
"getMyAvatarUploadedStatus",
|
|
48
|
+
"deleteUserAvatar",
|
|
49
|
+
"getTeamLinkIcons",
|
|
50
|
+
"getTeamInSlack",
|
|
51
|
+
"getOrgScope",
|
|
52
|
+
"restoreTeamToSyncedGroup",
|
|
53
|
+
"getTeamAndGroupDiff",
|
|
54
|
+
"linkExistingTeamToGroup",
|
|
55
|
+
"fetchUserAvatarInfo",
|
|
56
|
+
"getOrgEligibilityForManagedTeams",
|
|
57
|
+
"updateUser",
|
|
58
|
+
"updateUserAvatar",
|
|
59
|
+
"disconnectTeamInSlack",
|
|
60
|
+
"updateTeamInSlack"
|
|
61
|
+
];
|
|
62
|
+
export type TeamsClientExperienceKeys = (typeof TeamsClientExperienceKeyList)[number];
|
|
63
|
+
export declare const TEAMS_CLIENT_EXPERIENCES: Map<"getAllTeams" | "getOrgEligibilityForManagedTeams" | "createTeam" | "getPermissions" | "getLinkedTeamsBulk" | "getTeamProfileDetails" | "getOrgScope" | "getTeamById" | "updateTeamById" | "querySettings" | "queryFeatureFlags" | "queryTeamMemberships" | "queryUser" | "inviteUsersToTeam" | "getMyTeamMembership" | "getTeamLinksByTeamId" | "createTeamLink" | "updateTeamLink" | "deleteTeamLink" | "reorderTeamLink" | "acceptTeamInvitation" | "declineTeamInvitation" | "selfJoinTeam" | "cancelJoinRequest" | "acceptJoinRequest" | "declineJoinRequest" | "deleteTeamMembership" | "revokeTeamInvite" | "deleteTeam" | "isSingleFullMemberTeam" | "createExternalTeam" | "getProfileWithMutability" | "getIsSiteAdmin" | "addUsersToTeam" | "removeTeamMemberships" | "getRecommendedProducts" | "joinOrRequestDefaultAccessToProductsBulk" | "getReadMediaToken" | "getWriteUserMediaToken" | "updateUserHeaderImage" | "getWriteTeamMediaToken" | "getSoftDeletedTeamById" | "restoreTeam" | "getUserInSiteUserBase" | "getUserContainers" | "getUserManageConfig" | "getMyAvatarUploadedStatus" | "deleteUserAvatar" | "getTeamLinkIcons" | "getTeamInSlack" | "restoreTeamToSyncedGroup" | "getTeamAndGroupDiff" | "linkExistingTeamToGroup" | "fetchUserAvatarInfo" | "updateUser" | "updateUserAvatar" | "disconnectTeamInSlack" | "updateTeamInSlack", TeamsUFOExperience>;
|
|
64
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { UFOExperience } from '@atlaskit/ufo';
|
|
2
|
+
import { type HttpError } from '../error';
|
|
3
|
+
export declare class TeamsUFOExperience extends UFOExperience {
|
|
4
|
+
abortWithError(error: Error | HttpError, reason: string): Promise<boolean | null>;
|
|
5
|
+
failWithError(error: Error | HttpError | unknown): Promise<boolean | null>;
|
|
6
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { HttpError } from '../error';
|
|
2
|
+
export declare const createErrorMetadata: (error: Error | HttpError) => {
|
|
3
|
+
error: {
|
|
4
|
+
name: string;
|
|
5
|
+
message: string;
|
|
6
|
+
stack: string | undefined;
|
|
7
|
+
traceId: string | undefined;
|
|
8
|
+
status: number | undefined;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
export declare const isIgnoredError: (error: Error) => boolean;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { HttpError } from './common/utils/error';
|
|
2
|
+
export type { AllTeamsQuery, OriginQuery } from './services/legion-client';
|
|
3
|
+
export { isTeamMembershipWithUser } from './types/membership';
|
|
4
|
+
export { teamsClient, TeamsClient } from './services';
|
|
5
|
+
export { useTeamsClientSetup, useTeamsClientSetupNext, } from './services/hooks/use-teams-client-setup';
|
|
6
|
+
export { AllTeamActions, hasPermission } from './common/utils/permissions';
|
|
7
|
+
export type { TeamAction } from './common/utils/permissions';
|
|
8
|
+
export { initialiseSentry } from './services/sentry/utils/initialise-sentry';
|
|
9
|
+
export { logException, logInfoMessage } from './services/sentry/main';
|
|
10
|
+
export type { SentryClient } from './services/sentry/types';
|
|
11
|
+
export { userInfoProvider, UserInfoProvider } from './services/user-info-provider';
|
|
12
|
+
export { sortMembersByType, isInvited, isMember, isNonMember, isRequestingJoin, } from './common/utils';
|
|
13
|
+
export { toUserARI, toUserId, toTeamARI, toTeamId } from './common/utils/ari';
|
|
14
|
+
export { useLazyQueryLight, useQueryLight, UseQueryLightError, type ActualGraphQLError, } from './services/use-query-light';
|
|
15
|
+
export type { FetchMoreArgs, QueryOptions } from './services/use-query-light';
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type FakerType from 'faker';
|
|
2
|
+
import type fetchMockType from 'fetch-mock/cjs/client';
|
|
3
|
+
type MockConfig = {
|
|
4
|
+
fetchMock: typeof fetchMockType;
|
|
5
|
+
delay?: number;
|
|
6
|
+
faker?: typeof FakerType;
|
|
7
|
+
restoreFetchMock?: boolean;
|
|
8
|
+
endpointConfig?: {
|
|
9
|
+
teamMembership?: MockTeamMembershipConfig;
|
|
10
|
+
teamType?: 'open' | 'inviteOnly' | 'external';
|
|
11
|
+
memberStatus?: 'requestingToJoin' | 'notMember' | 'fullMember';
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
type MockTeamMembershipConfig = {
|
|
15
|
+
count?: number;
|
|
16
|
+
};
|
|
17
|
+
export declare const mockTeamsClientEndpoints: (config: MockConfig) => void;
|
|
18
|
+
export declare const mockTeamsClientRequestingToJoinEndpoints: (config: MockConfig) => void;
|
|
19
|
+
export declare const mockTeamsClientNotMemberEndpoints: (config: MockConfig) => void;
|
|
20
|
+
export declare const mockTeamsClientAdminEndpoints: (config: MockConfig) => void;
|
|
21
|
+
export declare const mockTeamsClientInviteOnlyMemberEndpoints: (config: MockConfig) => void;
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type FakerType from 'faker';
|
|
2
|
+
import { type TeamMembershipQueryResponse } from '../services/agg-client/utils/queries/team-membership-query';
|
|
3
|
+
import { type Team, type TeamMembership } from '../types';
|
|
4
|
+
type MockConfig = {
|
|
5
|
+
faker: typeof FakerType;
|
|
6
|
+
};
|
|
7
|
+
export declare const randomTeamMembership: ({ faker }: MockConfig, customProps?: {}) => TeamMembership;
|
|
8
|
+
export declare const randomTeamMemberships: (config: MockConfig, n?: number, customProps?: {}) => TeamMembership[];
|
|
9
|
+
export declare const fixedTeamMemberships: (n?: number) => TeamMembership[];
|
|
10
|
+
export declare function randomReturnedNewTeamData({ faker }: MockConfig, customProps?: Partial<Team>): Team;
|
|
11
|
+
export declare const mockTeamMembershipResponseWithNEdges: ({ faker }: MockConfig, n: number) => {
|
|
12
|
+
data: {
|
|
13
|
+
team: TeamMembershipQueryResponse;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { mockTeamsClientEndpoints, mockTeamsClientRequestingToJoinEndpoints, mockTeamsClientAdminEndpoints, mockTeamsClientNotMemberEndpoints, mockTeamsClientInviteOnlyMemberEndpoints, } from './endpoints';
|
|
2
|
+
export { randomReturnedNewTeamData, randomTeamMembership, randomTeamMemberships, fixedTeamMemberships, } from './generate-data';
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { type TeamMembershipQueryResponse } from '../services/agg-client/utils/queries/team-membership-query';
|
|
2
|
+
import { type RecommendationsResponse } from '../services/invitations-client/types';
|
|
3
|
+
import { type LegionTeamGetResponseV4 } from '../services/legion-client/types';
|
|
4
|
+
import { type TeamMembership } from '../types';
|
|
5
|
+
export declare const MOCK_ME_RESPONSE: {
|
|
6
|
+
email: string;
|
|
7
|
+
nickname: string;
|
|
8
|
+
characteristics: {
|
|
9
|
+
not_mentionable: null;
|
|
10
|
+
};
|
|
11
|
+
extended_profile: {
|
|
12
|
+
job_title: string;
|
|
13
|
+
organization: string;
|
|
14
|
+
department: string;
|
|
15
|
+
location: string;
|
|
16
|
+
};
|
|
17
|
+
account_id: string;
|
|
18
|
+
name: string;
|
|
19
|
+
zoneinfo: string;
|
|
20
|
+
locale: string;
|
|
21
|
+
privacy_settings: {
|
|
22
|
+
name: string;
|
|
23
|
+
nickname: string;
|
|
24
|
+
picture: string;
|
|
25
|
+
job_title: string;
|
|
26
|
+
department: string;
|
|
27
|
+
organization: string;
|
|
28
|
+
location: string;
|
|
29
|
+
zoneinfo: string;
|
|
30
|
+
email: string;
|
|
31
|
+
phone_number: string;
|
|
32
|
+
team_type: string;
|
|
33
|
+
};
|
|
34
|
+
picture: any;
|
|
35
|
+
account_type: string;
|
|
36
|
+
account_status: string;
|
|
37
|
+
};
|
|
38
|
+
export declare const MOCK_PROFILE_MUTABILITY_RESPONSE: {
|
|
39
|
+
account_id: string;
|
|
40
|
+
account_type: string;
|
|
41
|
+
account_status: string;
|
|
42
|
+
characteristics: {
|
|
43
|
+
not_mentionable: null;
|
|
44
|
+
};
|
|
45
|
+
email: string;
|
|
46
|
+
extended_profile: {
|
|
47
|
+
job_title: string;
|
|
48
|
+
organization: string;
|
|
49
|
+
department: string;
|
|
50
|
+
location: string;
|
|
51
|
+
};
|
|
52
|
+
locale: string;
|
|
53
|
+
last_updated: string;
|
|
54
|
+
name: string;
|
|
55
|
+
nickname: string;
|
|
56
|
+
not_editable: {
|
|
57
|
+
field: string;
|
|
58
|
+
reason: string;
|
|
59
|
+
}[];
|
|
60
|
+
picture: any;
|
|
61
|
+
};
|
|
62
|
+
export declare const MOCK_MEMBERS_ME_MEMBER_RESPONSE: TeamMembership;
|
|
63
|
+
export declare const MOCK_MEMBERS_ME_ADMIN_RESPONSE: TeamMembership;
|
|
64
|
+
export declare const MOCK_MEMBERS_ME_REQUESTING_RESPONSE: TeamMembership;
|
|
65
|
+
export declare const MOCK_TEAM_MEMBERSHIP_RESPONSE: {
|
|
66
|
+
data: {
|
|
67
|
+
team: TeamMembershipQueryResponse;
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
export declare const MOCK_INVITE_ONLY_TEAM_RESPONSE: LegionTeamGetResponseV4;
|
|
71
|
+
export declare const MOCK_EXTERNAL_TEAM_RESPONSE: LegionTeamGetResponseV4;
|
|
72
|
+
export declare const MOCK_INVITE_ONLY_TEAM_WRITE_PERMISSION_RESPONSE: LegionTeamGetResponseV4;
|
|
73
|
+
export declare const MOCK_OPEN_TEAM_RESPONSE: LegionTeamGetResponseV4;
|
|
74
|
+
export declare const MOCK_OPEN_TEAM_WRITE_PERMISSION_RESPONSE: LegionTeamGetResponseV4;
|
|
75
|
+
export declare const MOCK_PRODUCT_RECOMMENDATIONS_RESPONSE: RecommendationsResponse;
|