@sitecore/sc-contenthub-webclient-sdk 1.1.0 → 1.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/README.md +35 -7
- package/dist/api/api-info-resource.js +9 -8
- package/dist/api/api-info.js +1 -0
- package/dist/api/api-resource.js +2 -1
- package/dist/api/api-routes-dictionary.js +1 -0
- package/dist/authentication/oauth-grant-base.js +5 -4
- package/dist/authentication/oauth-grant-type.js +1 -0
- package/dist/authentication/oauth-password-grant.js +5 -4
- package/dist/authentication/oauth-refreshtoken-grant.js +4 -3
- package/dist/authentication/token-info.js +6 -5
- package/dist/base-types.js +1 -0
- package/dist/caches/culture-cache.js +1 -0
- package/dist/caches/entity-definition-cache.d.ts +21 -7
- package/dist/caches/entity-definition-cache.js +38 -21
- package/dist/clients/aggregates-client.d.ts +27 -3
- package/dist/clients/aggregates-client.js +4 -3
- package/dist/clients/api-client.js +3 -2
- package/dist/clients/assets-client.d.ts +16 -0
- package/dist/clients/assets-client.js +43 -0
- package/dist/clients/commands-client.d.ts +7 -4
- package/dist/clients/commands-client.js +5 -4
- package/dist/clients/content-hub-client.d.ts +3 -0
- package/dist/clients/content-hub-client.js +3 -0
- package/dist/clients/culture-client.js +1 -0
- package/dist/clients/culture-loader.js +1 -0
- package/dist/clients/entities-client.d.ts +44 -29
- package/dist/clients/entities-client.js +44 -30
- package/dist/clients/entity-definitions-client.d.ts +55 -17
- package/dist/clients/entity-definitions-client.js +58 -57
- package/dist/clients/extended-client.js +1 -0
- package/dist/clients/internal-client.d.ts +17 -2
- package/dist/clients/internal-client.js +17 -3
- package/dist/clients/notifications-client.js +1 -0
- package/dist/clients/option-list-client.d.ts +19 -12
- package/dist/clients/option-list-client.js +13 -12
- package/dist/clients/pages-client.d.ts +13 -6
- package/dist/clients/pages-client.js +9 -8
- package/dist/clients/permissions-client.js +1 -0
- package/dist/clients/policies-client.js +3 -21
- package/dist/clients/querying-client.d.ts +58 -11
- package/dist/clients/querying-client.js +43 -8
- package/dist/clients/raw-client.d.ts +11 -18
- package/dist/clients/raw-client.js +11 -10
- package/dist/clients/request-message.js +1 -0
- package/dist/clients/response-handler.js +8 -26
- package/dist/clients/response-message.js +1 -0
- package/dist/clients/schema-querying.d.ts +4 -3
- package/dist/clients/schema-querying.js +6 -4
- package/dist/clients/search-client.d.ts +7 -4
- package/dist/clients/search-client.js +5 -4
- package/dist/clients/settings-client.d.ts +8 -0
- package/dist/clients/settings-client.js +13 -0
- package/dist/clients/upload-client.d.ts +5 -2
- package/dist/clients/upload-client.js +36 -17
- package/dist/clients/users-client.js +1 -0
- package/dist/clients/version-checker.js +2 -1
- package/dist/clients/web-content-hub-client.js +1 -0
- package/dist/constants/api.d.ts +26 -3
- package/dist/constants/api.js +28 -4
- package/dist/constants/defaults.js +2 -1
- package/dist/constants/definitions.d.ts +10 -0
- package/dist/constants/definitions.js +14 -1
- package/dist/constants/index.js +2 -1
- package/dist/constants/notifications.js +1 -0
- package/dist/contracts/base/culture-insensitive-property.js +1 -0
- package/dist/contracts/base/culture-sensitive-property.js +1 -0
- package/dist/contracts/base/data-type.js +1 -0
- package/dist/contracts/base/entity-base.d.ts +7 -0
- package/dist/contracts/base/entity-base.js +57 -32
- package/dist/contracts/base/entity-construction-args.js +1 -0
- package/dist/contracts/base/entity-definition.d.ts +5 -0
- package/dist/contracts/base/entity-definition.js +20 -18
- package/dist/contracts/base/entity.d.ts +30 -1
- package/dist/contracts/base/entity.js +4 -3
- package/dist/contracts/base/index.js +2 -1
- package/dist/contracts/base/json-content-type.js +1 -0
- package/dist/contracts/base/lazy-loading-manager.js +1 -0
- package/dist/contracts/base/member-condition.js +11 -10
- package/dist/contracts/base/member-definition-type.js +1 -0
- package/dist/contracts/base/member-definition.js +14 -13
- package/dist/contracts/base/member-group.js +12 -11
- package/dist/contracts/base/member.js +1 -0
- package/dist/contracts/base/option-lists/flat-option-list-value.js +1 -0
- package/dist/contracts/base/option-lists/flat-option-list.js +1 -0
- package/dist/contracts/base/option-lists/hierarchical-option-list.js +1 -0
- package/dist/contracts/base/option-lists/hierarchical-options-list-value.js +1 -0
- package/dist/contracts/base/option-lists/option-list-base.js +1 -0
- package/dist/contracts/base/option-lists/option-list-type.js +1 -0
- package/dist/contracts/base/option-lists/option-list-value-base.js +1 -0
- package/dist/contracts/base/option-lists/option-list-value.js +1 -0
- package/dist/contracts/base/option-lists/option-list.js +1 -0
- package/dist/contracts/base/property-definition.js +13 -12
- package/dist/contracts/base/property-definitions/boolean-property-definition.js +3 -2
- package/dist/contracts/base/property-definitions/datetime-property-definition.js +3 -2
- package/dist/contracts/base/property-definitions/datetimeoffset-property-definition.js +3 -2
- package/dist/contracts/base/property-definitions/decimal-property-definition.js +3 -2
- package/dist/contracts/base/property-definitions/index.js +2 -1
- package/dist/contracts/base/property-definitions/integer-property-definition.js +3 -2
- package/dist/contracts/base/property-definitions/json-property-definition.js +4 -3
- package/dist/contracts/base/property-definitions/long-property-definition.js +3 -2
- package/dist/contracts/base/property-definitions/string-property-definition.js +5 -4
- package/dist/contracts/base/property-manager.js +1 -0
- package/dist/contracts/base/property.js +1 -0
- package/dist/contracts/base/related-path.js +1 -0
- package/dist/contracts/base/relation-cardinality.js +1 -0
- package/dist/contracts/base/relation-container.js +5 -4
- package/dist/contracts/base/relation-definition.js +23 -22
- package/dist/contracts/base/relation-manager.d.ts +1 -1
- package/dist/contracts/base/relation-manager.js +6 -6
- package/dist/contracts/base/relation-role.js +1 -0
- package/dist/contracts/base/relation.d.ts +16 -3
- package/dist/contracts/base/relation.js +28 -3
- package/dist/contracts/base/relations/child-to-many-parents-relation.d.ts +4 -1
- package/dist/contracts/base/relations/child-to-many-parents-relation.js +33 -2
- package/dist/contracts/base/relations/child-to-one-parent-relation.d.ts +3 -1
- package/dist/contracts/base/relations/child-to-one-parent-relation.js +27 -2
- package/dist/contracts/base/relations/parent-to-many-children-relation.d.ts +4 -1
- package/dist/contracts/base/relations/parent-to-many-children-relation.js +33 -2
- package/dist/contracts/base/relations/parent-to-one-child-relation.d.ts +3 -1
- package/dist/contracts/base/relations/parent-to-one-child-relation.js +27 -2
- package/dist/contracts/base/relations/to-many-relation.d.ts +10 -0
- package/dist/contracts/base/relations/to-many-relation.js +1 -0
- package/dist/contracts/base/relations/to-one-relation.d.ts +5 -0
- package/dist/contracts/base/relations/to-one-relation.js +1 -0
- package/dist/contracts/base/rendition.js +1 -0
- package/dist/contracts/base/resource.js +1 -0
- package/dist/contracts/base/string-content-type.js +1 -0
- package/dist/contracts/base/typed-entity.js +1 -0
- package/dist/contracts/base/users.js +1 -0
- package/dist/contracts/base/view-mode.js +1 -0
- package/dist/contracts/content/asset.js +1 -0
- package/dist/contracts/content/final-life-cycle-status.js +1 -0
- package/dist/contracts/dirty-tracking/dirty-tracking.js +1 -0
- package/dist/contracts/notifications/mail-template.js +1 -0
- package/dist/contracts/policies/condition.js +1 -0
- package/dist/contracts/policies/member-policy.js +1 -0
- package/dist/contracts/policies/policy.js +1 -0
- package/dist/contracts/policies/rule-type.js +1 -0
- package/dist/contracts/policies/rule.js +1 -0
- package/dist/contracts/policies/user-group-policy.js +2 -0
- package/dist/contracts/policies/user-policy.js +2 -0
- package/dist/contracts/querying/culture-load-option.js +5 -4
- package/dist/contracts/querying/entity-definition-id-iterator.js +1 -0
- package/dist/contracts/querying/entity-definition-id-query-result.js +1 -0
- package/dist/contracts/querying/entity-definition-iterator.js +1 -0
- package/dist/contracts/querying/entity-definition-query-result.js +1 -0
- package/dist/contracts/querying/entity-iterator.js +1 -0
- package/dist/contracts/querying/entity-load-configuration-builder.js +1 -0
- package/dist/contracts/querying/entity-load-configuration.js +5 -4
- package/dist/contracts/querying/entity-load-option.js +9 -8
- package/dist/contracts/querying/entity-query-result.js +1 -0
- package/dist/contracts/querying/filters/comparison-operator.js +1 -0
- package/dist/contracts/querying/filters/composite-filter-operator.js +1 -0
- package/dist/contracts/querying/filters/composite-query-filter.js +7 -6
- package/dist/contracts/querying/filters/createdby-query-filter.js +4 -3
- package/dist/contracts/querying/filters/createdon-query-filter.js +7 -6
- package/dist/contracts/querying/filters/definition-query-filter.js +11 -10
- package/dist/contracts/querying/filters/filter-data-type.js +1 -0
- package/dist/contracts/querying/filters/filter-type.js +1 -0
- package/dist/contracts/querying/filters/id-query-filter.js +8 -7
- package/dist/contracts/querying/filters/identifier-query-filter.js +8 -7
- package/dist/contracts/querying/filters/index.js +2 -1
- package/dist/contracts/querying/filters/modifiedby-query-filter.js +4 -3
- package/dist/contracts/querying/filters/modifiedon-query-filter.js +7 -6
- package/dist/contracts/querying/filters/modules-query-filter.js +5 -4
- package/dist/contracts/querying/filters/not-query-filter.js +5 -4
- package/dist/contracts/querying/filters/property-query-filter.js +11 -10
- package/dist/contracts/querying/filters/query-filter.js +4 -3
- package/dist/contracts/querying/filters/relation-connection-type.js +1 -0
- package/dist/contracts/querying/filters/relation-query-filter.js +8 -7
- package/dist/contracts/querying/filters/secured-ancestors-query-filter.js +8 -7
- package/dist/contracts/querying/filters/user-query-filter.js +11 -10
- package/dist/contracts/querying/id-iterator.js +1 -0
- package/dist/contracts/querying/id-query-result.js +1 -0
- package/dist/contracts/querying/iterator.js +1 -0
- package/dist/contracts/querying/load-option.js +1 -0
- package/dist/contracts/querying/load-options.js +1 -0
- package/dist/contracts/querying/loading-query-iterator.js +1 -0
- package/dist/contracts/querying/member-load-option.js +1 -0
- package/dist/contracts/querying/minimal-schema.js +7 -6
- package/dist/contracts/querying/property-data.js +7 -6
- package/dist/contracts/querying/property-load-option.js +5 -4
- package/dist/contracts/querying/query-iterator.js +1 -0
- package/dist/contracts/querying/query-load-configuration.js +9 -8
- package/dist/contracts/querying/query-request.js +3 -2
- package/dist/contracts/querying/query-result-paging-manager.js +1 -0
- package/dist/contracts/querying/query-result.js +1 -0
- package/dist/contracts/querying/query-sort-order.js +1 -0
- package/dist/contracts/querying/query.js +8 -7
- package/dist/contracts/querying/relation-data.js +6 -5
- package/dist/contracts/querying/relation-load-option.js +5 -4
- package/dist/contracts/querying/relation-specification.js +5 -4
- package/dist/contracts/querying/schema-querying.js +1 -0
- package/dist/contracts/querying/scroll-request.js +5 -4
- package/dist/contracts/querying/skip-take-iterator-base.js +1 -0
- package/dist/contracts/querying/sort-field-type.js +1 -0
- package/dist/contracts/querying/sorting.js +6 -5
- package/dist/contracts/upload/upload-source.js +1 -0
- package/dist/contracts/users/user-group-combine-method.js +1 -0
- package/dist/contracts/users/user-group-configuration.js +7 -6
- package/dist/contracts/users/user-profile.js +1 -0
- package/dist/contracts/users/user.js +1 -0
- package/dist/converters/aggregated-entity-relations-converter.js +1 -0
- package/dist/converters/all-facet-values-children-converter.js +1 -0
- package/dist/converters/api-resource-converter.js +2 -0
- package/dist/converters/date-converter.js +1 -0
- package/dist/converters/file-version-converter.js +1 -0
- package/dist/converters/index.js +2 -1
- package/dist/converters/member-condition-converter.js +1 -0
- package/dist/converters/member-condition-resource-converter.js +1 -0
- package/dist/converters/minimal-schema-relation-cardinality-converter.js +1 -0
- package/dist/converters/page-resource-menus-converter.js +1 -0
- package/dist/converters/page-resource-zones-converter.js +1 -0
- package/dist/converters/relation-map-resource-converter.js +1 -0
- package/dist/converters/relation-resource-converter.js +1 -0
- package/dist/converters/renditions-converter.js +1 -0
- package/dist/converters/string-to-any-map-converter.js +1 -0
- package/dist/culture-info.js +1 -0
- package/dist/dirty-value-calculator.js +1 -0
- package/dist/entity-link.js +7 -6
- package/dist/error-messages.d.ts +0 -3
- package/dist/error-messages.js +1 -3
- package/dist/errors/argument-error.js +1 -0
- package/dist/errors/authentication-error.js +1 -0
- package/dist/errors/bad-request-error.js +1 -0
- package/dist/errors/forbidden-error.js +1 -0
- package/dist/errors/internal-error.js +1 -0
- package/dist/errors/invalid-operation-error.js +1 -0
- package/dist/errors/not-found-error.js +1 -0
- package/dist/errors/not-implemented-error.js +1 -0
- package/dist/errors/not-loaded-error.js +1 -0
- package/dist/errors/not-supported-error.js +1 -0
- package/dist/errors/schema-error.js +1 -0
- package/dist/errors/validation-error.js +1 -0
- package/dist/errors/validation-failure.js +1 -0
- package/dist/errors/web-api-error.js +1 -0
- package/dist/factories/entity-factory.js +2 -1
- package/dist/factories/option-list-factory.js +1 -0
- package/dist/factories/property-factory.js +3 -2
- package/dist/factories/relation-factory.js +5 -4
- package/dist/fileversion.js +1 -0
- package/dist/guard.d.ts +10 -10
- package/dist/guard.js +3 -0
- package/dist/http-method.js +1 -0
- package/dist/index.js +2 -1
- package/dist/link-helper.d.ts +40 -16
- package/dist/link-helper.js +82 -10
- package/dist/link.js +5 -4
- package/dist/logging/log-level.js +1 -0
- package/dist/logging/logger-base.js +1 -0
- package/dist/logging/logger.js +1 -0
- package/dist/logging/null-logger.js +3 -0
- package/dist/mappers/api-resource-mapper.js +1 -0
- package/dist/mappers/condition-mapper.js +1 -0
- package/dist/mappers/entity-copy-options-mapper.d.ts +6 -0
- package/dist/mappers/entity-copy-options-mapper.js +42 -0
- package/dist/mappers/entity-definition-mapper.js +7 -2
- package/dist/mappers/entity-mapper.js +14 -0
- package/dist/mappers/filter-operator-mapper.js +1 -0
- package/dist/mappers/final-life-cycle-status-mapper.js +3 -2
- package/dist/mappers/load-options-mapper.js +1 -0
- package/dist/mappers/mapping-utilities.js +1 -0
- package/dist/mappers/member-condition-mapper.js +3 -2
- package/dist/mappers/member-definition-mapper.js +4 -3
- package/dist/mappers/member-group-mapper.js +1 -0
- package/dist/mappers/member-security-mapper.js +1 -0
- package/dist/mappers/notification-mapper.js +1 -0
- package/dist/mappers/option-list-mapper.js +2 -1
- package/dist/mappers/policy-mapper.js +1 -0
- package/dist/mappers/property-mapper.js +2 -1
- package/dist/mappers/querying-mapper.js +1 -0
- package/dist/mappers/related-path-mapper.js +1 -0
- package/dist/mappers/relation-cardinality-mapper.js +1 -0
- package/dist/mappers/relation-mapper.js +8 -7
- package/dist/mappers/relation-role-mapper.js +3 -2
- package/dist/mappers/rendition-mapper.js +1 -0
- package/dist/mappers/rule-type-mapper.js +1 -0
- package/dist/mappers/rules-mapper.js +1 -0
- package/dist/mappers/typed-entity-creator.js +1 -0
- package/dist/models/aggregate-resources/aggregate-resource.d.ts +2 -1
- package/dist/models/aggregate-resources/aggregate-resource.js +12 -7
- package/dist/models/aggregate-resources/aggregated-entity-resource.js +5 -4
- package/dist/models/content/entity-copy-options-builder.d.ts +112 -0
- package/dist/models/content/entity-copy-options-builder.js +91 -0
- package/dist/models/content/entity-copy-options.d.ts +60 -0
- package/dist/models/content/entity-copy-options.js +14 -0
- package/dist/models/content/property-copy-method.d.ts +21 -0
- package/dist/models/content/property-copy-method.js +26 -0
- package/dist/models/content/property-copy-option.d.ts +34 -0
- package/dist/models/content/property-copy-option.js +12 -0
- package/dist/models/content/relation-copy-method.d.ts +21 -0
- package/dist/models/content/relation-copy-method.js +26 -0
- package/dist/models/content/relation-copy-option.d.ts +35 -0
- package/dist/models/content/relation-copy-option.js +12 -0
- package/dist/models/entity-copy-options-resource.d.ts +28 -0
- package/dist/models/entity-copy-options-resource.js +47 -0
- package/dist/models/entity-definition-collection-resource.js +4 -3
- package/dist/models/entity-definition-resource.d.ts +1 -1
- package/dist/models/entity-definition-resource.js +23 -21
- package/dist/models/entity-list-resource.js +4 -3
- package/dist/models/entity-path.d.ts +4 -0
- package/dist/models/entity-path.js +24 -0
- package/dist/models/entity-resource.d.ts +8 -0
- package/dist/models/entity-resource.js +70 -39
- package/dist/models/list-resource.js +10 -9
- package/dist/models/member-condition-resource.js +10 -9
- package/dist/models/member-definition-resource.js +16 -15
- package/dist/models/member-group-resource.js +13 -12
- package/dist/models/notifications/distribute-notification-resource.js +7 -6
- package/dist/models/notifications/mail-request-broadcast.js +1 -0
- package/dist/models/notifications/mail-request-by-id.js +1 -0
- package/dist/models/notifications/mail-request-by-username.js +1 -0
- package/dist/models/notifications/mail-request.js +1 -0
- package/dist/models/notifications/notification-level.js +1 -0
- package/dist/models/notifications/realtime-request-broadcast.js +1 -0
- package/dist/models/notifications/realtime-request-by-id.js +1 -0
- package/dist/models/notifications/realtime-request-by-username.js +1 -0
- package/dist/models/notifications/realtime-request.js +1 -0
- package/dist/models/notifications/request-by-id.js +1 -0
- package/dist/models/notifications/request-by-username.js +1 -0
- package/dist/models/notifications/validators/mail-validator.js +1 -0
- package/dist/models/notifications/validators/realtime-validator.js +1 -0
- package/dist/models/notifications/validators/request-by-id-validator.js +1 -0
- package/dist/models/notifications/validators/request-by-username-validator.js +1 -0
- package/dist/models/notifications/validators/validator-base.js +1 -0
- package/dist/models/option-lists/flat-option-list-value.js +1 -0
- package/dist/models/option-lists/hierarchical-options-list-value.js +1 -0
- package/dist/models/option-lists/option-list-collection-resource.js +5 -4
- package/dist/models/option-lists/option-list-description-resource.js +5 -4
- package/dist/models/option-lists/option-list-resource.js +12 -11
- package/dist/models/option-lists/option-list-value-resource.js +6 -5
- package/dist/models/pages/component-visualization.js +9 -8
- package/dist/models/pages/language-resource.js +7 -6
- package/dist/models/pages/menu-item.js +12 -11
- package/dist/models/pages/page-component-resource.js +18 -17
- package/dist/models/pages/page-resource.js +21 -20
- package/dist/models/pages/page-row-settings.js +26 -25
- package/dist/models/pages/portal-column-resource.js +5 -4
- package/dist/models/pages/portal-row-resource.js +5 -4
- package/dist/models/pages/portal-section-resource.js +5 -4
- package/dist/models/permissions-resource.js +4 -3
- package/dist/models/policies/condition-resource.js +6 -5
- package/dist/models/policies/member-policy-resource.js +6 -5
- package/dist/models/policies/policy-resource.js +16 -15
- package/dist/models/policies/rule-resource.js +12 -11
- package/dist/models/property-copy-option-resource.d.ts +19 -0
- package/dist/models/property-copy-option-resource.js +41 -0
- package/dist/models/property-definition-resource.js +35 -34
- package/dist/models/query-loading-resource.d.ts +5 -0
- package/dist/models/query-loading-resource.js +9 -3
- package/dist/models/query-result-resource.js +6 -5
- package/dist/models/relation-copy-option-resource.d.ts +20 -0
- package/dist/models/relation-copy-option-resource.js +41 -0
- package/dist/models/relation-definition-resource.js +23 -22
- package/dist/models/relation-map-resource.js +2 -1
- package/dist/models/relation-resource.js +13 -12
- package/dist/models/resource-containers/entity-definition-resource-container.js +1 -0
- package/dist/models/resource-containers/entity-resource-container.js +1 -0
- package/dist/models/resource.js +3 -2
- package/dist/models/search/aggregation-request-resource.js +13 -12
- package/dist/models/search/aggregation-response-resource.js +7 -6
- package/dist/models/search/all-facet-values-response.js +6 -5
- package/dist/models/search/all-facets-request.d.ts +3 -0
- package/dist/models/search/all-facets-request.js +17 -8
- package/dist/models/search/bucket-response-resource.js +8 -7
- package/dist/models/search/date-interval.js +1 -0
- package/dist/models/search/facet-response-resource.js +20 -19
- package/dist/models/search/field-filter-request-resource.js +14 -13
- package/dist/models/search/field-filter-response-resource.js +17 -16
- package/dist/models/search/field-filter-value-response-resource.js +5 -4
- package/dist/models/search/filter-operator.js +1 -0
- package/dist/models/search/full-text-response-resource.js +4 -3
- package/dist/models/search/group-category.js +6 -5
- package/dist/models/search/group-config.js +4 -3
- package/dist/models/search/group-item.js +7 -6
- package/dist/models/search/grouped-view-response-resource.js +12 -11
- package/dist/models/search/metric-option-request-resource.js +5 -4
- package/dist/models/search/metric-option-response-resource.js +5 -4
- package/dist/models/search/nested-relation-info.js +9 -8
- package/dist/models/search/requested-aggregation-type.js +1 -0
- package/dist/models/search/requested-filter-type.js +1 -0
- package/dist/models/search/search-group-request-resource.d.ts +1 -0
- package/dist/models/search/search-group-request-resource.js +8 -3
- package/dist/models/search/search-request.d.ts +2 -0
- package/dist/models/search/search-request.js +37 -28
- package/dist/models/search/search-response.js +24 -23
- package/dist/models/search/selection-pool-filter-resource.js +6 -5
- package/dist/models/search/sorting-request-resource.js +4 -3
- package/dist/models/search/sorting-response-resource.js +5 -4
- package/dist/models/search-document-resource.js +4 -3
- package/dist/models/set-password-request-resource.js +3 -2
- package/dist/models/setting-resource.d.ts +9 -0
- package/dist/models/setting-resource.js +40 -0
- package/dist/models/upload/array-buffer-upload-source.d.ts +8 -0
- package/dist/models/upload/array-buffer-upload-source.js +19 -15
- package/dist/models/upload/create-upload-response.js +5 -4
- package/dist/models/upload/http-upload-source.js +1 -0
- package/dist/models/upload/local-upload-source.js +2 -0
- package/dist/models/upload/upload-action.js +4 -3
- package/dist/models/upload/upload-configuration.js +4 -3
- package/dist/models/upload/upload-request-wrapper.js +8 -7
- package/dist/models/upload/upload-request.js +1 -0
- package/dist/models/user-entity-permissions-resource.js +13 -12
- package/dist/models/versionining/compatibility.js +1 -0
- package/dist/settings/fetch-setting.js +17 -16
- package/dist/settings/super-user-excluded-privileges.js +4 -3
- package/dist/settings/usage-rights-configuration.js +18 -17
- package/dist/type-guards.js +1 -0
- package/dist/utilities/array-utilities.js +1 -0
- package/package.json +20 -21
package/README.md
CHANGED
|
@@ -4,18 +4,46 @@ Sitecore Content Hub WebClient JS SDK, which is a lightweight JS client for Site
|
|
|
4
4
|
|
|
5
5
|
## Internal resources
|
|
6
6
|
|
|
7
|
-
-
|
|
8
|
-
-
|
|
7
|
+
- [Backlog](https://stylelabs.atlassian.net/secure/RapidBoard.jspa?rapidView=347&projectKey=ONSJSSDK&view=planning.nodetail&issueLimit=100)
|
|
8
|
+
- Slack: #ch-devex-questions
|
|
9
9
|
|
|
10
10
|
## Release process
|
|
11
11
|
|
|
12
12
|
There are currently three build configurations that are specified in `bitbucket-pipelines.yml`
|
|
13
13
|
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
14
|
+
- A basic build runs each time a pull request is created or updated. This is to ensure that all unit tests are passing before committing any code to `master`.
|
|
15
|
+
- Once a pull request has been completed and the code is merged to `master`, an internal build is triggered automatically.
|
|
16
|
+
- Public releases can be created by tagging a commit with the following: `release-<major>.<minor>.<patch>` (e.g `release-1.0.0`). Upon a successful build all artifacts are pushed to the public channels.
|
|
17
|
+
|
|
18
|
+
### To Release
|
|
19
|
+
|
|
20
|
+
- Add new release tag, `release-<major>.<minor>.<patch>`.
|
|
21
|
+
- Trigger a release build to publish final artifacts to the partners feed.
|
|
22
|
+
- Cut the release branch, `release\<major>.<minor>.x`.
|
|
23
|
+
- Update the Changelog in Documentation repository.
|
|
24
|
+
- Update Content Hub repository with new official released version.
|
|
25
|
+
- Bump version for the next release.
|
|
17
26
|
|
|
18
27
|
## Documentation
|
|
19
28
|
|
|
20
|
-
|
|
21
|
-
|
|
29
|
+
[Stylelabs.M.Docs reporitory](https://bitbucket.org/stylelabsdev/stylelabs.m.docs/src/master/docfx-website/content/4.0.x/integrations/javascript-sdk/)
|
|
30
|
+
|
|
31
|
+
_NOTE: There are multiple paths for various versions that need to be updated independently._
|
|
32
|
+
|
|
33
|
+
## Dev test configuration
|
|
34
|
+
|
|
35
|
+
Some tests require an instance of ContentHub and a configuration to run.
|
|
36
|
+
|
|
37
|
+
1. Create a .env file in project root.
|
|
38
|
+
1. Configure an OAuth client in `<path-to-contenthub>/en-us/admin/oauthclients`.
|
|
39
|
+
|
|
40
|
+
Example .env config:
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
ENDPOINT=https://localhost:5001
|
|
44
|
+
OAUTH_CLIENT_ID=jssdk
|
|
45
|
+
OAUTH_CLIENT_SECRET=testsecret
|
|
46
|
+
USER_NAME=Administrator
|
|
47
|
+
USER_PASSWORD=admin
|
|
48
|
+
IGNORE_HTTPS_ERRORS=true
|
|
49
|
+
```
|
|
@@ -18,25 +18,26 @@ const api_resource_1 = require("./api-resource");
|
|
|
18
18
|
let ApiInfoResource = class ApiInfoResource {
|
|
19
19
|
};
|
|
20
20
|
__decorate([
|
|
21
|
-
ta_json_1.JsonProperty("file_version"),
|
|
22
|
-
ta_json_1.JsonConverter(file_version_converter_1.FileVersionConverter),
|
|
21
|
+
(0, ta_json_1.JsonProperty)("file_version"),
|
|
22
|
+
(0, ta_json_1.JsonConverter)(file_version_converter_1.FileVersionConverter),
|
|
23
23
|
__metadata("design:type", fileversion_1.FileVersion)
|
|
24
24
|
], ApiInfoResource.prototype, "fileVersion", void 0);
|
|
25
25
|
__decorate([
|
|
26
|
-
ta_json_1.JsonProperty("product_version"),
|
|
26
|
+
(0, ta_json_1.JsonProperty)("product_version"),
|
|
27
27
|
__metadata("design:type", String)
|
|
28
28
|
], ApiInfoResource.prototype, "productVersion", void 0);
|
|
29
29
|
__decorate([
|
|
30
|
-
ta_json_1.JsonProperty("minimum_sdk_version"),
|
|
31
|
-
ta_json_1.JsonConverter(file_version_converter_1.FileVersionConverter),
|
|
30
|
+
(0, ta_json_1.JsonProperty)("minimum_sdk_version"),
|
|
31
|
+
(0, ta_json_1.JsonConverter)(file_version_converter_1.FileVersionConverter),
|
|
32
32
|
__metadata("design:type", fileversion_1.FileVersion)
|
|
33
33
|
], ApiInfoResource.prototype, "minimumSdkVersion", void 0);
|
|
34
34
|
__decorate([
|
|
35
|
-
ta_json_1.JsonProperty("routes"),
|
|
36
|
-
ta_json_1.JsonConverter(api_resource_converter_1.ApiResourceConverter),
|
|
35
|
+
(0, ta_json_1.JsonProperty)("routes"),
|
|
36
|
+
(0, ta_json_1.JsonConverter)(api_resource_converter_1.ApiResourceConverter),
|
|
37
37
|
__metadata("design:type", api_resource_1.ApiResource)
|
|
38
38
|
], ApiInfoResource.prototype, "routes", void 0);
|
|
39
39
|
ApiInfoResource = __decorate([
|
|
40
|
-
ta_json_1.JsonObject()
|
|
40
|
+
(0, ta_json_1.JsonObject)()
|
|
41
41
|
], ApiInfoResource);
|
|
42
42
|
exports.ApiInfoResource = ApiInfoResource;
|
|
43
|
+
//# sourceMappingURL=api-info-resource.js.map
|
package/dist/api/api-info.js
CHANGED
package/dist/api/api-resource.js
CHANGED
|
@@ -11,6 +11,7 @@ const ta_json_1 = require("ta-json");
|
|
|
11
11
|
let ApiResource = class ApiResource {
|
|
12
12
|
};
|
|
13
13
|
ApiResource = __decorate([
|
|
14
|
-
ta_json_1.JsonObject()
|
|
14
|
+
(0, ta_json_1.JsonObject)()
|
|
15
15
|
], ApiResource);
|
|
16
16
|
exports.ApiResource = ApiResource;
|
|
17
|
+
//# sourceMappingURL=api-resource.js.map
|
|
@@ -24,19 +24,20 @@ let OAuthGrantBase = class OAuthGrantBase {
|
|
|
24
24
|
}
|
|
25
25
|
};
|
|
26
26
|
__decorate([
|
|
27
|
-
ta_json_1.JsonProperty("grant_type"),
|
|
27
|
+
(0, ta_json_1.JsonProperty)("grant_type"),
|
|
28
28
|
__metadata("design:type", String)
|
|
29
29
|
], OAuthGrantBase.prototype, "type", void 0);
|
|
30
30
|
__decorate([
|
|
31
|
-
ta_json_1.JsonProperty("client_id"),
|
|
31
|
+
(0, ta_json_1.JsonProperty)("client_id"),
|
|
32
32
|
__metadata("design:type", String)
|
|
33
33
|
], OAuthGrantBase.prototype, "clientId", void 0);
|
|
34
34
|
__decorate([
|
|
35
|
-
ta_json_1.JsonProperty("client_secret"),
|
|
35
|
+
(0, ta_json_1.JsonProperty)("client_secret"),
|
|
36
36
|
__metadata("design:type", String)
|
|
37
37
|
], OAuthGrantBase.prototype, "clientSecret", void 0);
|
|
38
38
|
OAuthGrantBase = __decorate([
|
|
39
|
-
ta_json_1.JsonObject(),
|
|
39
|
+
(0, ta_json_1.JsonObject)(),
|
|
40
40
|
__metadata("design:paramtypes", [String, String])
|
|
41
41
|
], OAuthGrantBase);
|
|
42
42
|
exports.OAuthGrantBase = OAuthGrantBase;
|
|
43
|
+
//# sourceMappingURL=oauth-grant-base.js.map
|
|
@@ -27,19 +27,20 @@ let OAuthPasswordGrant = class OAuthPasswordGrant extends oauth_grant_base_1.OAu
|
|
|
27
27
|
}
|
|
28
28
|
};
|
|
29
29
|
__decorate([
|
|
30
|
-
ta_json_1.JsonProperty("grant_type"),
|
|
30
|
+
(0, ta_json_1.JsonProperty)("grant_type"),
|
|
31
31
|
__metadata("design:type", String)
|
|
32
32
|
], OAuthPasswordGrant.prototype, "type", void 0);
|
|
33
33
|
__decorate([
|
|
34
|
-
ta_json_1.JsonProperty("username"),
|
|
34
|
+
(0, ta_json_1.JsonProperty)("username"),
|
|
35
35
|
__metadata("design:type", String)
|
|
36
36
|
], OAuthPasswordGrant.prototype, "username", void 0);
|
|
37
37
|
__decorate([
|
|
38
|
-
ta_json_1.JsonProperty("password"),
|
|
38
|
+
(0, ta_json_1.JsonProperty)("password"),
|
|
39
39
|
__metadata("design:type", String)
|
|
40
40
|
], OAuthPasswordGrant.prototype, "password", void 0);
|
|
41
41
|
OAuthPasswordGrant = __decorate([
|
|
42
|
-
ta_json_1.JsonObject(),
|
|
42
|
+
(0, ta_json_1.JsonObject)(),
|
|
43
43
|
__metadata("design:paramtypes", [String, String, String, String])
|
|
44
44
|
], OAuthPasswordGrant);
|
|
45
45
|
exports.default = OAuthPasswordGrant;
|
|
46
|
+
//# sourceMappingURL=oauth-password-grant.js.map
|
|
@@ -25,15 +25,16 @@ let OAuthRefreshTokenGrant = class OAuthRefreshTokenGrant extends oauth_grant_ba
|
|
|
25
25
|
}
|
|
26
26
|
};
|
|
27
27
|
__decorate([
|
|
28
|
-
ta_json_1.JsonProperty("grant_type"),
|
|
28
|
+
(0, ta_json_1.JsonProperty)("grant_type"),
|
|
29
29
|
__metadata("design:type", String)
|
|
30
30
|
], OAuthRefreshTokenGrant.prototype, "type", void 0);
|
|
31
31
|
__decorate([
|
|
32
|
-
ta_json_1.JsonProperty("refresh_token"),
|
|
32
|
+
(0, ta_json_1.JsonProperty)("refresh_token"),
|
|
33
33
|
__metadata("design:type", String)
|
|
34
34
|
], OAuthRefreshTokenGrant.prototype, "refreshToken", void 0);
|
|
35
35
|
OAuthRefreshTokenGrant = __decorate([
|
|
36
|
-
ta_json_1.JsonObject(),
|
|
36
|
+
(0, ta_json_1.JsonObject)(),
|
|
37
37
|
__metadata("design:paramtypes", [String, String, String])
|
|
38
38
|
], OAuthRefreshTokenGrant);
|
|
39
39
|
exports.default = OAuthRefreshTokenGrant;
|
|
40
|
+
//# sourceMappingURL=oauth-refreshtoken-grant.js.map
|
|
@@ -14,22 +14,23 @@ const ta_json_1 = require("ta-json");
|
|
|
14
14
|
let TokenInfo = class TokenInfo {
|
|
15
15
|
};
|
|
16
16
|
__decorate([
|
|
17
|
-
ta_json_1.JsonProperty("access_token"),
|
|
17
|
+
(0, ta_json_1.JsonProperty)("access_token"),
|
|
18
18
|
__metadata("design:type", String)
|
|
19
19
|
], TokenInfo.prototype, "accessToken", void 0);
|
|
20
20
|
__decorate([
|
|
21
|
-
ta_json_1.JsonProperty("token_type"),
|
|
21
|
+
(0, ta_json_1.JsonProperty)("token_type"),
|
|
22
22
|
__metadata("design:type", String)
|
|
23
23
|
], TokenInfo.prototype, "tokenType", void 0);
|
|
24
24
|
__decorate([
|
|
25
|
-
ta_json_1.JsonProperty("refresh_token"),
|
|
25
|
+
(0, ta_json_1.JsonProperty)("refresh_token"),
|
|
26
26
|
__metadata("design:type", String)
|
|
27
27
|
], TokenInfo.prototype, "refreshToken", void 0);
|
|
28
28
|
__decorate([
|
|
29
|
-
ta_json_1.JsonProperty("redirect_url"),
|
|
29
|
+
(0, ta_json_1.JsonProperty)("redirect_url"),
|
|
30
30
|
__metadata("design:type", String)
|
|
31
31
|
], TokenInfo.prototype, "redirectUrl", void 0);
|
|
32
32
|
TokenInfo = __decorate([
|
|
33
|
-
ta_json_1.JsonObject()
|
|
33
|
+
(0, ta_json_1.JsonObject)()
|
|
34
34
|
], TokenInfo);
|
|
35
35
|
exports.TokenInfo = TokenInfo;
|
|
36
|
+
//# sourceMappingURL=token-info.js.map
|
package/dist/base-types.js
CHANGED
|
@@ -11,33 +11,43 @@ export declare class EntityDefinitionCache {
|
|
|
11
11
|
/**
|
|
12
12
|
* Load the specified definition into the cache.
|
|
13
13
|
* @param definition - The entity definition
|
|
14
|
+
* @param includeConditionalMembers - Include conditional members
|
|
15
|
+
* @param loadPermissions - Load permissions for the definition
|
|
14
16
|
*/
|
|
15
|
-
load(definition: IEntityDefinition): void;
|
|
17
|
+
load(definition: IEntityDefinition, includeConditionalMembers?: boolean, loadPermissions?: boolean): void;
|
|
16
18
|
/**
|
|
17
19
|
* Load the specified definition into the cache asynchronously.
|
|
18
20
|
* @param key - The definition name or definition id
|
|
19
21
|
* @param promise - A promise resolving to the definition
|
|
22
|
+
* @param includeConditionalMembers - Include conditional members
|
|
23
|
+
* @param loadPermissions - Load permissions for the definition
|
|
20
24
|
*/
|
|
21
|
-
loadAsync(key: string | number, promise: NullableResultPromise<IEntityDefinition
|
|
25
|
+
loadAsync(key: string | number, promise: NullableResultPromise<IEntityDefinition>, includeConditionalMembers?: boolean, loadPermissions?: boolean): Promise<void>;
|
|
22
26
|
/**
|
|
23
27
|
* Retrieve the definition with specified name or id from the cache.
|
|
24
28
|
* @param key - The definition name or definition id
|
|
29
|
+
* @param includeConditionalMembers - Include conditional members
|
|
30
|
+
* @param loadPermissions - Load permissions for the definition
|
|
25
31
|
* @returns The cached definition or null
|
|
26
32
|
*/
|
|
27
|
-
get(key: string | number): Nullable<IEntityDefinition>;
|
|
33
|
+
get(key: string | number, includeConditionalMembers?: boolean, loadPermissions?: boolean): Nullable<IEntityDefinition>;
|
|
28
34
|
/**
|
|
29
35
|
* Retrieve the definition with specified name or id from the cache asynchronously.
|
|
30
36
|
* @param key - The definition name or definition id
|
|
37
|
+
* @param includeConditionalMembers - Include conditional members
|
|
38
|
+
* @param loadPermissions - Load permissions for the definition
|
|
31
39
|
* @returns A promise resolving to the cached definition or null
|
|
32
40
|
*/
|
|
33
|
-
getAsync(key: string | number): Nullable<NullableResultPromise<IEntityDefinition>>;
|
|
41
|
+
getAsync(key: string | number, includeConditionalMembers?: boolean, loadPermissions?: boolean): Nullable<NullableResultPromise<IEntityDefinition>>;
|
|
34
42
|
/**
|
|
35
43
|
* Loads all definitions into the cache.
|
|
36
44
|
* @param definitions - An array of entity definitions
|
|
37
45
|
* @param loadAllIndividually - Flag indicating whether to load the definitions individually or not
|
|
38
46
|
* @param loadAsGroup - Key to be used to store the array of definitions, or false to not load the array
|
|
47
|
+
* @param includeConditionalMembers - Include conditional members
|
|
48
|
+
* @param loadPermissions - Load permissions for the definitions
|
|
39
49
|
*/
|
|
40
|
-
loadAll(definitions: Array<IEntityDefinition>, loadAllIndividually?: boolean, loadAsGroup?: false | string): void;
|
|
50
|
+
loadAll(definitions: Array<IEntityDefinition>, loadAllIndividually?: boolean, loadAsGroup?: false | string, includeConditionalMembers?: boolean, loadPermissions?: boolean): void;
|
|
41
51
|
/**
|
|
42
52
|
* Retrieves an array of definitions that was cached with the specified group key.
|
|
43
53
|
*
|
|
@@ -45,13 +55,17 @@ export declare class EntityDefinitionCache {
|
|
|
45
55
|
* Can not be used to retrieve a single cached definition. Use {@link EntityDefinitionCache.get} instead.
|
|
46
56
|
*
|
|
47
57
|
* @param group - The key with which the group of definitions was stored
|
|
58
|
+
* @param includeConditionalMembers - Include conditional members
|
|
59
|
+
* @param loadPermissions - Load permissions for the definitions
|
|
48
60
|
*/
|
|
49
|
-
getAll(group?: string): Nullable<Array<IEntityDefinition>>;
|
|
61
|
+
getAll(group?: string, includeConditionalMembers?: boolean, loadPermissions?: boolean): Nullable<Array<IEntityDefinition>>;
|
|
50
62
|
/**
|
|
51
63
|
* Invalidates/removes the definition with specified name or id from the cache.
|
|
52
64
|
* @param key - The definition name or definition id
|
|
65
|
+
* @param includeConditionalMembers - Include conditional members
|
|
66
|
+
* @param loadPermissions - Load permissions for the definition
|
|
53
67
|
*/
|
|
54
|
-
invalidate(key?: string | number): void;
|
|
68
|
+
invalidate(key?: string | number, includeConditionalMembers?: boolean, loadPermissions?: boolean): void;
|
|
55
69
|
private validateKey;
|
|
56
70
|
private getCacheKey;
|
|
57
71
|
}
|
|
@@ -18,22 +18,26 @@ class EntityDefinitionCache {
|
|
|
18
18
|
/**
|
|
19
19
|
* Load the specified definition into the cache.
|
|
20
20
|
* @param definition - The entity definition
|
|
21
|
+
* @param includeConditionalMembers - Include conditional members
|
|
22
|
+
* @param loadPermissions - Load permissions for the definition
|
|
21
23
|
*/
|
|
22
|
-
load(definition) {
|
|
24
|
+
load(definition, includeConditionalMembers, loadPermissions) {
|
|
23
25
|
guard_1.default.notNullOrUndefined(definition, "definition");
|
|
24
26
|
guard_1.default.notNullOrUndefined(definition.id, "definition id");
|
|
25
|
-
this._map.set(this.getCacheKey(definition.name), definition);
|
|
26
|
-
this._map.set(definition.id.toString(), definition);
|
|
27
|
+
this._map.set(this.getCacheKey(definition.name, includeConditionalMembers, loadPermissions), definition);
|
|
28
|
+
this._map.set(this.getCacheKey(definition.id.toString(), includeConditionalMembers, loadPermissions), definition);
|
|
27
29
|
}
|
|
28
30
|
/**
|
|
29
31
|
* Load the specified definition into the cache asynchronously.
|
|
30
32
|
* @param key - The definition name or definition id
|
|
31
33
|
* @param promise - A promise resolving to the definition
|
|
34
|
+
* @param includeConditionalMembers - Include conditional members
|
|
35
|
+
* @param loadPermissions - Load permissions for the definition
|
|
32
36
|
*/
|
|
33
|
-
loadAsync(key, promise) {
|
|
37
|
+
loadAsync(key, promise, includeConditionalMembers, loadPermissions) {
|
|
34
38
|
this.validateKey(key);
|
|
35
39
|
guard_1.default.notNullOrUndefined(promise);
|
|
36
|
-
this._map.set(`${this._promiseKeyPrefix}${this.getCacheKey(key.toString())}`, promise);
|
|
40
|
+
this._map.set(`${this._promiseKeyPrefix}${this.getCacheKey(key.toString(), includeConditionalMembers, loadPermissions)}`, promise);
|
|
37
41
|
const loadPromise = promise.then(definition => {
|
|
38
42
|
if (definition) {
|
|
39
43
|
this.load(definition);
|
|
@@ -44,26 +48,30 @@ class EntityDefinitionCache {
|
|
|
44
48
|
/**
|
|
45
49
|
* Retrieve the definition with specified name or id from the cache.
|
|
46
50
|
* @param key - The definition name or definition id
|
|
51
|
+
* @param includeConditionalMembers - Include conditional members
|
|
52
|
+
* @param loadPermissions - Load permissions for the definition
|
|
47
53
|
* @returns The cached definition or null
|
|
48
54
|
*/
|
|
49
|
-
get(key) {
|
|
55
|
+
get(key, includeConditionalMembers, loadPermissions) {
|
|
50
56
|
this.validateKey(key);
|
|
51
|
-
const res = this._map.get(this.getCacheKey(key.toString())) || null;
|
|
57
|
+
const res = this._map.get(this.getCacheKey(key.toString(), includeConditionalMembers, loadPermissions)) || null;
|
|
52
58
|
return res;
|
|
53
59
|
}
|
|
54
60
|
/**
|
|
55
61
|
* Retrieve the definition with specified name or id from the cache asynchronously.
|
|
56
62
|
* @param key - The definition name or definition id
|
|
63
|
+
* @param includeConditionalMembers - Include conditional members
|
|
64
|
+
* @param loadPermissions - Load permissions for the definition
|
|
57
65
|
* @returns A promise resolving to the cached definition or null
|
|
58
66
|
*/
|
|
59
|
-
getAsync(key) {
|
|
67
|
+
getAsync(key, includeConditionalMembers, loadPermissions) {
|
|
60
68
|
this.validateKey(key);
|
|
61
|
-
const promise = (this._map.get(`${this._promiseKeyPrefix}${this.getCacheKey(key.toString())}`) ||
|
|
62
|
-
null);
|
|
69
|
+
const promise = (this._map.get(`${this._promiseKeyPrefix}${this.getCacheKey(key.toString(), includeConditionalMembers, loadPermissions)}`) || null);
|
|
63
70
|
if (promise != null) {
|
|
64
71
|
return promise;
|
|
65
72
|
}
|
|
66
|
-
const definition = (this.get(this.getCacheKey(key.toString())) ||
|
|
73
|
+
const definition = (this.get(this.getCacheKey(key.toString(), includeConditionalMembers, loadPermissions)) ||
|
|
74
|
+
null);
|
|
67
75
|
if (definition != null) {
|
|
68
76
|
return Promise.resolve(definition);
|
|
69
77
|
}
|
|
@@ -74,18 +82,20 @@ class EntityDefinitionCache {
|
|
|
74
82
|
* @param definitions - An array of entity definitions
|
|
75
83
|
* @param loadAllIndividually - Flag indicating whether to load the definitions individually or not
|
|
76
84
|
* @param loadAsGroup - Key to be used to store the array of definitions, or false to not load the array
|
|
85
|
+
* @param includeConditionalMembers - Include conditional members
|
|
86
|
+
* @param loadPermissions - Load permissions for the definitions
|
|
77
87
|
*/
|
|
78
|
-
loadAll(definitions, loadAllIndividually = true, loadAsGroup = this._allCacheKey) {
|
|
88
|
+
loadAll(definitions, loadAllIndividually = true, loadAsGroup = this._allCacheKey, includeConditionalMembers, loadPermissions) {
|
|
79
89
|
guard_1.default.notNullOrUndefined(definitions);
|
|
80
90
|
if (definitions.length === 0) {
|
|
81
91
|
return;
|
|
82
92
|
}
|
|
83
93
|
if (loadAsGroup) {
|
|
84
94
|
guard_1.default.stringNotNullOrEmpty(loadAsGroup);
|
|
85
|
-
this._map.set(this.getCacheKey(loadAsGroup), definitions);
|
|
95
|
+
this._map.set(this.getCacheKey(loadAsGroup, includeConditionalMembers, loadPermissions), definitions);
|
|
86
96
|
}
|
|
87
97
|
if (loadAllIndividually) {
|
|
88
|
-
definitions.forEach(this.load, this);
|
|
98
|
+
definitions.forEach(definition => this.load(definition, includeConditionalMembers, loadPermissions), this);
|
|
89
99
|
}
|
|
90
100
|
}
|
|
91
101
|
/**
|
|
@@ -95,16 +105,20 @@ class EntityDefinitionCache {
|
|
|
95
105
|
* Can not be used to retrieve a single cached definition. Use {@link EntityDefinitionCache.get} instead.
|
|
96
106
|
*
|
|
97
107
|
* @param group - The key with which the group of definitions was stored
|
|
108
|
+
* @param includeConditionalMembers - Include conditional members
|
|
109
|
+
* @param loadPermissions - Load permissions for the definitions
|
|
98
110
|
*/
|
|
99
|
-
getAll(group = this._allCacheKey) {
|
|
100
|
-
const res = this._map.get(this.getCacheKey(group)) || null;
|
|
111
|
+
getAll(group = this._allCacheKey, includeConditionalMembers, loadPermissions) {
|
|
112
|
+
const res = this._map.get(this.getCacheKey(group, includeConditionalMembers, loadPermissions)) || null;
|
|
101
113
|
return res instanceof Array ? res : null;
|
|
102
114
|
}
|
|
103
115
|
/**
|
|
104
116
|
* Invalidates/removes the definition with specified name or id from the cache.
|
|
105
117
|
* @param key - The definition name or definition id
|
|
118
|
+
* @param includeConditionalMembers - Include conditional members
|
|
119
|
+
* @param loadPermissions - Load permissions for the definition
|
|
106
120
|
*/
|
|
107
|
-
invalidate(key) {
|
|
121
|
+
invalidate(key, includeConditionalMembers, loadPermissions) {
|
|
108
122
|
if (!key) {
|
|
109
123
|
this._map.clear();
|
|
110
124
|
return;
|
|
@@ -113,8 +127,8 @@ class EntityDefinitionCache {
|
|
|
113
127
|
const definition = this.get(key);
|
|
114
128
|
if (!definition)
|
|
115
129
|
return;
|
|
116
|
-
this._map.delete(this.getCacheKey(definition.name));
|
|
117
|
-
this._map.delete(definition.id.toString());
|
|
130
|
+
this._map.delete(this.getCacheKey(definition.name, includeConditionalMembers, loadPermissions));
|
|
131
|
+
this._map.delete(this.getCacheKey(definition.id.toString(), includeConditionalMembers, loadPermissions));
|
|
118
132
|
}
|
|
119
133
|
validateKey(key) {
|
|
120
134
|
if (typeof key === "string") {
|
|
@@ -124,8 +138,11 @@ class EntityDefinitionCache {
|
|
|
124
138
|
guard_1.default.validId(key);
|
|
125
139
|
}
|
|
126
140
|
}
|
|
127
|
-
getCacheKey(key) {
|
|
128
|
-
return key.trim().toLowerCase()
|
|
141
|
+
getCacheKey(key, includeConditionalMembers, loadPermissions) {
|
|
142
|
+
return [key.trim().toLowerCase(), includeConditionalMembers && "conditionals", loadPermissions && "permissions"]
|
|
143
|
+
.filter(Boolean)
|
|
144
|
+
.join("-");
|
|
129
145
|
}
|
|
130
146
|
}
|
|
131
147
|
exports.EntityDefinitionCache = EntityDefinitionCache;
|
|
148
|
+
//# sourceMappingURL=entity-definition-cache.js.map
|
|
@@ -1,19 +1,43 @@
|
|
|
1
1
|
import CultureInfo from "../culture-info";
|
|
2
2
|
import { AggregateResource } from "../models/aggregate-resources/aggregate-resource";
|
|
3
3
|
import { IExtendedContentHubClient } from "./extended-client";
|
|
4
|
+
import { CancelCallback } from "./internal-client";
|
|
5
|
+
export interface AggregateLoadOption {
|
|
6
|
+
/**
|
|
7
|
+
* Flag for loading option lists. Defaults to true.
|
|
8
|
+
*/
|
|
9
|
+
loadOptionLists?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Flag for loading settings. Defaults to true.
|
|
12
|
+
*/
|
|
13
|
+
loadSettings?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Flag for loading definitions. Defaults to true.
|
|
16
|
+
*/
|
|
17
|
+
loadDefinitions?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Flag for loading entities. Defaults to true.
|
|
20
|
+
*/
|
|
21
|
+
loadEntities?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Flag for loading permissions. If not defined, will not be added to the query.
|
|
24
|
+
*/
|
|
25
|
+
loadPermissions?: boolean;
|
|
26
|
+
}
|
|
4
27
|
export interface IAggregateClient {
|
|
5
28
|
/**
|
|
6
29
|
* Method for getting the specified aggregate for the specified entity.
|
|
7
30
|
* @param name - The name of the aggregate
|
|
8
31
|
* @param id - The entity id to get the aggregate for
|
|
9
32
|
* @param culture - The user culture
|
|
10
|
-
* @param
|
|
33
|
+
* @param loadOptions - Can optionally configure what needs to be loaded from the aggregates (everything will be loaded by default except for permissions)
|
|
34
|
+
* @param cancelCallback - A {@link CancelCallback} that will be placed in an Axios {@link CancelToken} if provided
|
|
11
35
|
* @returns An aggregate resource
|
|
12
36
|
*/
|
|
13
|
-
getAsync(name: string, id: number, culture?: CultureInfo,
|
|
37
|
+
getAsync(name: string, id: number, culture?: CultureInfo, loadOptions?: AggregateLoadOption, cancelCallback?: CancelCallback): Promise<AggregateResource>;
|
|
14
38
|
}
|
|
15
39
|
export declare class AggregateClient implements IAggregateClient {
|
|
16
40
|
private readonly _client;
|
|
17
41
|
constructor(client: IExtendedContentHubClient);
|
|
18
|
-
getAsync(name: string, id: number, culture?: CultureInfo,
|
|
42
|
+
getAsync(name: string, id: number, culture?: CultureInfo, loadOptions?: AggregateLoadOption, cancelCallback?: CancelCallback): Promise<AggregateResource>;
|
|
19
43
|
}
|
|
@@ -22,14 +22,15 @@ class AggregateClient {
|
|
|
22
22
|
guard_1.default.notNull(client);
|
|
23
23
|
this._client = client;
|
|
24
24
|
}
|
|
25
|
-
getAsync(name, id, culture,
|
|
25
|
+
getAsync(name, id, culture, loadOptions = {}, cancelCallback) {
|
|
26
26
|
return __awaiter(this, void 0, void 0, function* () {
|
|
27
27
|
guard_1.default.stringNotNullOrEmpty(name);
|
|
28
|
-
const link = yield this._client.linkHelper.aggregateToLinkAsync(name, id, culture,
|
|
29
|
-
const response = yield this._client.raw.getAsync(link.href);
|
|
28
|
+
const link = yield this._client.linkHelper.aggregateToLinkAsync(name, id, culture, loadOptions);
|
|
29
|
+
const response = yield this._client.raw.getAsync(link.href, undefined, cancelCallback);
|
|
30
30
|
response_handler_1.ResponseHandler.handleErrors(response);
|
|
31
31
|
return ta_json_1.TaJson.deserialize(response.content, aggregate_resource_1.AggregateResource);
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
exports.AggregateClient = AggregateClient;
|
|
36
|
+
//# sourceMappingURL=aggregates-client.js.map
|
|
@@ -91,10 +91,10 @@ class ApiClient {
|
|
|
91
91
|
if (!this.disableCompatibilityChecks) {
|
|
92
92
|
const compatibilityResult = this._client.versionChecker.getCompatibility(serverVersion, sdkVersion, resource.minimumSdkVersion);
|
|
93
93
|
if (compatibilityResult == compatibility_1.Compatibility.SdkOld) {
|
|
94
|
-
throw new not_supported_error_1.NotSupportedError(string_format_1.default(error_messages_1.default.ContentHubClient.IncompatibleMinimumVersion, sdkVersion, serverVersion, resource.minimumSdkVersion));
|
|
94
|
+
throw new not_supported_error_1.NotSupportedError((0, string_format_1.default)(error_messages_1.default.ContentHubClient.IncompatibleMinimumVersion, sdkVersion, serverVersion, resource.minimumSdkVersion));
|
|
95
95
|
}
|
|
96
96
|
if (compatibilityResult == compatibility_1.Compatibility.SdkNew) {
|
|
97
|
-
throw new not_supported_error_1.NotSupportedError(string_format_1.default(error_messages_1.default.ContentHubClient.IncompatibleVersion, sdkVersion, serverVersion));
|
|
97
|
+
throw new not_supported_error_1.NotSupportedError((0, string_format_1.default)(error_messages_1.default.ContentHubClient.IncompatibleVersion, sdkVersion, serverVersion));
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
const apiInfo = api_resource_mapper_1.ApiResourceMapper.map(resource);
|
|
@@ -103,3 +103,4 @@ class ApiClient {
|
|
|
103
103
|
}
|
|
104
104
|
}
|
|
105
105
|
exports.ApiClient = ApiClient;
|
|
106
|
+
//# sourceMappingURL=api-client.js.map
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IExtendedContentHubClient } from "./extended-client";
|
|
2
|
+
/**
|
|
3
|
+
* Allows fetching culture information.
|
|
4
|
+
*/
|
|
5
|
+
export interface IAssetsClient {
|
|
6
|
+
/**
|
|
7
|
+
* Gets the default culture.
|
|
8
|
+
* @returns The default culture.
|
|
9
|
+
*/
|
|
10
|
+
createPublicLinkAsync(assetId: number, rendition: string, expirationDate?: Date, relativeUrl?: string): Promise<number>;
|
|
11
|
+
}
|
|
12
|
+
export declare class AssetsClient implements IAssetsClient {
|
|
13
|
+
private readonly _client;
|
|
14
|
+
constructor(client: IExtendedContentHubClient);
|
|
15
|
+
createPublicLinkAsync(assetId: number, rendition: string, expirationDate?: Date, relativeUrl?: string): Promise<number>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.AssetsClient = void 0;
|
|
16
|
+
const definitions_1 = require("../constants/definitions");
|
|
17
|
+
const guard_1 = __importDefault(require("../guard"));
|
|
18
|
+
class AssetsClient {
|
|
19
|
+
constructor(client) {
|
|
20
|
+
guard_1.default.notNull(client);
|
|
21
|
+
this._client = client;
|
|
22
|
+
}
|
|
23
|
+
createPublicLinkAsync(assetId, rendition, expirationDate, relativeUrl) {
|
|
24
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
guard_1.default.validId(assetId);
|
|
26
|
+
guard_1.default.stringNotNullOrEmpty(rendition);
|
|
27
|
+
const publicLink = yield this._client.entityFactory.createAsync(definitions_1.PublicLink.definitionName);
|
|
28
|
+
publicLink.setPropertyValue(definitions_1.PublicLink.resource, rendition);
|
|
29
|
+
if (expirationDate) {
|
|
30
|
+
publicLink.setPropertyValue(definitions_1.PublicLink.expirationDate, expirationDate);
|
|
31
|
+
}
|
|
32
|
+
if (relativeUrl) {
|
|
33
|
+
guard_1.default.stringNotNullOrEmpty(relativeUrl);
|
|
34
|
+
publicLink.setPropertyValue(definitions_1.PublicLink.relativeUrl, relativeUrl);
|
|
35
|
+
}
|
|
36
|
+
const assetToPublicLink = publicLink.getRelation(definitions_1.PublicLink.assetToPublicLink);
|
|
37
|
+
assetToPublicLink === null || assetToPublicLink === void 0 ? void 0 : assetToPublicLink.add(assetId);
|
|
38
|
+
return this._client.entities.saveAsync(publicLink);
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.AssetsClient = AssetsClient;
|
|
43
|
+
//# sourceMappingURL=assets-client.js.map
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { IExtendedContentHubClient } from "./extended-client";
|
|
2
|
+
import { CancelCallback } from "./internal-client";
|
|
2
3
|
import { ResponseMessage } from "./response-message";
|
|
3
4
|
export interface ICommandsClient {
|
|
4
5
|
/**
|
|
@@ -6,21 +7,23 @@ export interface ICommandsClient {
|
|
|
6
7
|
* @param namespace - The name of the folder containing the command
|
|
7
8
|
* @param command - The name of the command
|
|
8
9
|
* @param args - The arguments of the command or null/undefined if the command has no arguments
|
|
10
|
+
* @param cancelCallback - A {@link CancelCallback} that will be placed in an Axios {@link CancelToken} if provided
|
|
9
11
|
* @returns The raw HTTP response.
|
|
10
12
|
*/
|
|
11
|
-
executeCommandRawAsync(namespace: string, command: string, args?: unknown): Promise<ResponseMessage<unknown>>;
|
|
13
|
+
executeCommandRawAsync(namespace: string, command: string, args?: unknown, cancelCallback?: CancelCallback): Promise<ResponseMessage<unknown>>;
|
|
12
14
|
/**
|
|
13
15
|
* Executes a Content Hub command.
|
|
14
16
|
* @param namespace - The name of the folder containing the command
|
|
15
17
|
* @param command - The name of the command
|
|
16
18
|
* @param args - The arguments of the command or null/undefined if the command has no arguments
|
|
19
|
+
* @param cancelCallback - A {@link CancelCallback} that will be placed in an Axios {@link CancelToken} if provided
|
|
17
20
|
* @returns The result of the command. If the command has no result, null is returned.
|
|
18
21
|
*/
|
|
19
|
-
executeCommandAsync(namespace: string, command: string, args?: unknown): Promise<unknown>;
|
|
22
|
+
executeCommandAsync(namespace: string, command: string, args?: unknown, cancelCallback?: CancelCallback): Promise<unknown>;
|
|
20
23
|
}
|
|
21
24
|
export declare class CommandsClient implements ICommandsClient {
|
|
22
25
|
private readonly _client;
|
|
23
26
|
constructor(client: IExtendedContentHubClient);
|
|
24
|
-
executeCommandRawAsync(namespace: string, command: string, args?: unknown): Promise<ResponseMessage<unknown>>;
|
|
25
|
-
executeCommandAsync(namespace: string, command: string, args?: unknown): Promise<unknown>;
|
|
27
|
+
executeCommandRawAsync(namespace: string, command: string, args?: unknown, cancelCallback?: CancelCallback): Promise<ResponseMessage<unknown>>;
|
|
28
|
+
executeCommandAsync(namespace: string, command: string, args?: unknown, cancelCallback?: CancelCallback): Promise<unknown>;
|
|
26
29
|
}
|