@esri/hub-common 12.6.1 → 12.8.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/dist/esm/core/behaviors/IWithVersioningBehavior.js +1 -0
- package/dist/esm/core/behaviors/IWithVersioningBehavior.js.map +1 -0
- package/dist/esm/core/behaviors/index.js +1 -0
- package/dist/esm/core/behaviors/index.js.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/pages/_internal/PageBusinessRules.js +8 -0
- package/dist/esm/pages/_internal/PageBusinessRules.js.map +1 -0
- package/dist/esm/sites/HubSite.js +59 -0
- package/dist/esm/sites/HubSite.js.map +1 -1
- package/dist/esm/sites/_internal/SiteBusinessRules.js +8 -0
- package/dist/esm/sites/_internal/SiteBusinessRules.js.map +1 -1
- package/dist/esm/sites/_internal/_migrate-event-list-card-configs.js +30 -0
- package/dist/esm/sites/_internal/_migrate-event-list-card-configs.js.map +1 -0
- package/dist/esm/sites/_internal/getPropertyMap.js +2 -0
- package/dist/esm/sites/_internal/getPropertyMap.js.map +1 -1
- package/dist/esm/sites/site-schema-version.js +1 -1
- package/dist/esm/sites/upgrade-site-schema.js +2 -0
- package/dist/esm/sites/upgrade-site-schema.js.map +1 -1
- package/dist/esm/versioning/_internal/constants.js +10 -0
- package/dist/esm/versioning/_internal/constants.js.map +1 -0
- package/dist/esm/versioning/_internal/getIncludeListFromItemType.js +23 -0
- package/dist/esm/versioning/_internal/getIncludeListFromItemType.js.map +1 -0
- package/dist/esm/versioning/_internal/getPrefix.js +9 -0
- package/dist/esm/versioning/_internal/getPrefix.js.map +1 -0
- package/dist/esm/versioning/_internal/getResourceNameFromVersionId.js +11 -0
- package/dist/esm/versioning/_internal/getResourceNameFromVersionId.js.map +1 -0
- package/dist/esm/versioning/_internal/getVersionData.js +11 -0
- package/dist/esm/versioning/_internal/getVersionData.js.map +1 -0
- package/dist/esm/versioning/_internal/index.js +5 -0
- package/dist/esm/versioning/_internal/index.js.map +1 -0
- package/dist/esm/versioning/_internal/versionMetadataFromResource.js +22 -0
- package/dist/esm/versioning/_internal/versionMetadataFromResource.js.map +1 -0
- package/dist/esm/versioning/createVersion.js +41 -0
- package/dist/esm/versioning/createVersion.js.map +1 -0
- package/dist/esm/versioning/deleteVersion.js +15 -0
- package/dist/esm/versioning/deleteVersion.js.map +1 -0
- package/dist/esm/versioning/getVersion.js +13 -0
- package/dist/esm/versioning/getVersion.js.map +1 -0
- package/dist/esm/versioning/index.js +8 -0
- package/dist/esm/versioning/index.js.map +1 -0
- package/dist/esm/versioning/searchVersions.js +18 -0
- package/dist/esm/versioning/searchVersions.js.map +1 -0
- package/dist/esm/versioning/types/ICreateVersionOptions.js +1 -0
- package/dist/esm/versioning/types/ICreateVersionOptions.js.map +1 -0
- package/dist/esm/versioning/types/IVersion.js +1 -0
- package/dist/esm/versioning/types/IVersion.js.map +1 -0
- package/dist/esm/versioning/types/IVersionMetadata.js +1 -0
- package/dist/esm/versioning/types/IVersionMetadata.js.map +1 -0
- package/dist/esm/versioning/types/index.js +4 -0
- package/dist/esm/versioning/types/index.js.map +1 -0
- package/dist/esm/versioning/updateVersion.js +28 -0
- package/dist/esm/versioning/updateVersion.js.map +1 -0
- package/dist/esm/versioning/utils.js +17 -0
- package/dist/esm/versioning/utils.js.map +1 -0
- package/dist/node/core/behaviors/IWithVersioningBehavior.js +3 -0
- package/dist/node/core/behaviors/IWithVersioningBehavior.js.map +1 -0
- package/dist/node/core/behaviors/index.js +1 -0
- package/dist/node/core/behaviors/index.js.map +1 -1
- package/dist/node/index.js +1 -0
- package/dist/node/index.js.map +1 -1
- package/dist/node/pages/_internal/PageBusinessRules.js +11 -0
- package/dist/node/pages/_internal/PageBusinessRules.js.map +1 -0
- package/dist/node/sites/HubSite.js +59 -0
- package/dist/node/sites/HubSite.js.map +1 -1
- package/dist/node/sites/_internal/SiteBusinessRules.js +9 -1
- package/dist/node/sites/_internal/SiteBusinessRules.js.map +1 -1
- package/dist/node/sites/_internal/_migrate-event-list-card-configs.js +34 -0
- package/dist/node/sites/_internal/_migrate-event-list-card-configs.js.map +1 -0
- package/dist/node/sites/_internal/getPropertyMap.js +2 -0
- package/dist/node/sites/_internal/getPropertyMap.js.map +1 -1
- package/dist/node/sites/site-schema-version.js +1 -1
- package/dist/node/sites/upgrade-site-schema.js +2 -0
- package/dist/node/sites/upgrade-site-schema.js.map +1 -1
- package/dist/node/versioning/_internal/constants.js +13 -0
- package/dist/node/versioning/_internal/constants.js.map +1 -0
- package/dist/node/versioning/_internal/getIncludeListFromItemType.js +27 -0
- package/dist/node/versioning/_internal/getIncludeListFromItemType.js.map +1 -0
- package/dist/node/versioning/_internal/getPrefix.js +13 -0
- package/dist/node/versioning/_internal/getPrefix.js.map +1 -0
- package/dist/node/versioning/_internal/getResourceNameFromVersionId.js +15 -0
- package/dist/node/versioning/_internal/getResourceNameFromVersionId.js.map +1 -0
- package/dist/node/versioning/_internal/getVersionData.js +15 -0
- package/dist/node/versioning/_internal/getVersionData.js.map +1 -0
- package/dist/node/versioning/_internal/index.js +8 -0
- package/dist/node/versioning/_internal/index.js.map +1 -0
- package/dist/node/versioning/_internal/versionMetadataFromResource.js +26 -0
- package/dist/node/versioning/_internal/versionMetadataFromResource.js.map +1 -0
- package/dist/node/versioning/createVersion.js +45 -0
- package/dist/node/versioning/createVersion.js.map +1 -0
- package/dist/node/versioning/deleteVersion.js +19 -0
- package/dist/node/versioning/deleteVersion.js.map +1 -0
- package/dist/node/versioning/getVersion.js +17 -0
- package/dist/node/versioning/getVersion.js.map +1 -0
- package/dist/node/versioning/index.js +11 -0
- package/dist/node/versioning/index.js.map +1 -0
- package/dist/node/versioning/searchVersions.js +22 -0
- package/dist/node/versioning/searchVersions.js.map +1 -0
- package/dist/node/versioning/types/ICreateVersionOptions.js +3 -0
- package/dist/node/versioning/types/ICreateVersionOptions.js.map +1 -0
- package/dist/node/versioning/types/IVersion.js +3 -0
- package/dist/node/versioning/types/IVersion.js.map +1 -0
- package/dist/node/versioning/types/IVersionMetadata.js +3 -0
- package/dist/node/versioning/types/IVersionMetadata.js.map +1 -0
- package/dist/node/versioning/types/index.js +7 -0
- package/dist/node/versioning/types/index.js.map +1 -0
- package/dist/node/versioning/updateVersion.js +32 -0
- package/dist/node/versioning/updateVersion.js.map +1 -0
- package/dist/node/versioning/utils.js +21 -0
- package/dist/node/versioning/utils.js.map +1 -0
- package/dist/types/core/behaviors/IWithVersioningBehavior.d.ts +36 -0
- package/dist/types/core/behaviors/index.d.ts +1 -0
- package/dist/types/core/types/IHubSite.d.ts +2 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/pages/_internal/PageBusinessRules.d.ts +4 -0
- package/dist/types/sites/HubSite.d.ts +33 -2
- package/dist/types/sites/_internal/SiteBusinessRules.d.ts +4 -0
- package/dist/types/sites/_internal/_migrate-event-list-card-configs.d.ts +8 -0
- package/dist/types/sites/site-schema-version.d.ts +1 -1
- package/dist/types/versioning/_internal/constants.d.ts +2 -0
- package/dist/types/versioning/_internal/getIncludeListFromItemType.d.ts +7 -0
- package/dist/types/versioning/_internal/getPrefix.d.ts +6 -0
- package/dist/types/versioning/_internal/getResourceNameFromVersionId.d.ts +6 -0
- package/dist/types/versioning/_internal/getVersionData.d.ts +8 -0
- package/dist/types/versioning/_internal/index.d.ts +4 -0
- package/dist/types/versioning/_internal/versionMetadataFromResource.d.ts +7 -0
- package/dist/types/versioning/createVersion.d.ts +10 -0
- package/dist/types/versioning/deleteVersion.d.ts +12 -0
- package/dist/types/versioning/getVersion.d.ts +10 -0
- package/dist/types/versioning/index.d.ts +7 -0
- package/dist/types/versioning/searchVersions.d.ts +9 -0
- package/dist/types/versioning/types/ICreateVersionOptions.d.ts +13 -0
- package/dist/types/versioning/types/IVersion.d.ts +11 -0
- package/dist/types/versioning/types/IVersionMetadata.d.ts +42 -0
- package/dist/types/versioning/types/index.d.ts +3 -0
- package/dist/types/versioning/updateVersion.d.ts +11 -0
- package/dist/types/versioning/utils.d.ts +10 -0
- package/package.json +1 -1
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateVersion = void 0;
|
|
4
|
+
const get_prop_1 = require("../objects/get-prop");
|
|
5
|
+
const merge_objects_1 = require("../objects/merge-objects");
|
|
6
|
+
const object_to_json_blob_1 = require("../resources/object-to-json-blob");
|
|
7
|
+
const getPrefix_1 = require("./_internal/getPrefix");
|
|
8
|
+
const getVersionData_1 = require("./_internal/getVersionData");
|
|
9
|
+
const constants_1 = require("./_internal/constants");
|
|
10
|
+
const getIncludeListFromItemType_1 = require("./_internal/getIncludeListFromItemType");
|
|
11
|
+
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
12
|
+
/**
|
|
13
|
+
* Updates the specified version with with the state of the supplied model
|
|
14
|
+
* @param model
|
|
15
|
+
* @param version
|
|
16
|
+
* @param requestOptions
|
|
17
|
+
* @returns
|
|
18
|
+
*/
|
|
19
|
+
async function updateVersion(model, version, requestOptions) {
|
|
20
|
+
// we expect the model to contain the changes that we want to apply to the version
|
|
21
|
+
// but we also need the versionResource so we can preserve the created and creator props
|
|
22
|
+
const includeList = getIncludeListFromItemType_1.getIncludeListFromItemType(model);
|
|
23
|
+
version.data = getVersionData_1.getVersionData(model, includeList);
|
|
24
|
+
const prefix = getPrefix_1.getPrefix(version.id);
|
|
25
|
+
version.updated = Date.now();
|
|
26
|
+
const versionBlob = object_to_json_blob_1.objectToJsonBlob(version);
|
|
27
|
+
const properties = merge_objects_1.mergeObjects(version, {}, constants_1.VERSION_RESOURCE_PROPERTIES);
|
|
28
|
+
await arcgis_rest_portal_1.updateItemResource(Object.assign(Object.assign({}, requestOptions), { id: get_prop_1.getProp(model, "item.id"), name: constants_1.VERSION_RESOURCE_NAME, owner: get_prop_1.getProp(model, "item.owner"), params: { properties }, prefix, private: true, resource: versionBlob }));
|
|
29
|
+
return version;
|
|
30
|
+
}
|
|
31
|
+
exports.updateVersion = updateVersion;
|
|
32
|
+
//# sourceMappingURL=updateVersion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateVersion.js","sourceRoot":"","sources":["../../../src/versioning/updateVersion.ts"],"names":[],"mappings":";;;AACA,kDAA8C;AAC9C,4DAAwD;AACxD,0EAAoE;AAGpE,qDAAkD;AAClD,+DAA4D;AAC5D,qDAG+B;AAC/B,uFAAoF;AACpF,iEAA8D;AAE9D;;;;;;GAMG;AACI,KAAK,UAAU,aAAa,CACjC,KAAa,EACb,OAAiB,EACjB,cAAsC;IAEtC,kFAAkF;IAClF,wFAAwF;IAExF,MAAM,WAAW,GAAG,uDAA0B,CAAC,KAAK,CAAC,CAAC;IACtD,OAAO,CAAC,IAAI,GAAG,+BAAc,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAElD,MAAM,MAAM,GAAG,qBAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACrC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,WAAW,GAAG,sCAAgB,CAAC,OAAO,CAAC,CAAC;IAE9C,MAAM,UAAU,GAAG,4BAAY,CAAC,OAAO,EAAE,EAAE,EAAE,uCAA2B,CAAC,CAAC;IAE1E,MAAM,uCAAkB,iCACnB,cAAc,KACjB,EAAE,EAAE,kBAAO,CAAC,KAAK,EAAE,SAAS,CAAC,EAC7B,IAAI,EAAE,iCAAqB,EAC3B,KAAK,EAAE,kBAAO,CAAC,KAAK,EAAE,YAAY,CAAC,EACnC,MAAM,EAAE,EAAE,UAAU,EAAE,EACtB,MAAM,EACN,OAAO,EAAE,IAAI,EACb,QAAQ,EAAE,WAAW,IACrB,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC;AA7BD,sCA6BC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.applyVersion = void 0;
|
|
4
|
+
const util_1 = require("../util");
|
|
5
|
+
const merge_objects_1 = require("../objects/merge-objects");
|
|
6
|
+
const getIncludeListFromItemType_1 = require("./_internal/getIncludeListFromItemType");
|
|
7
|
+
/**
|
|
8
|
+
* Applies the versioned data to the model
|
|
9
|
+
* @param model
|
|
10
|
+
* @param version
|
|
11
|
+
* @param includeList
|
|
12
|
+
* @returns
|
|
13
|
+
*/
|
|
14
|
+
function applyVersion(model, version, includeList) {
|
|
15
|
+
if (!includeList) {
|
|
16
|
+
includeList = getIncludeListFromItemType_1.getIncludeListFromItemType(model);
|
|
17
|
+
}
|
|
18
|
+
return merge_objects_1.mergeObjects(version.data, util_1.cloneObject(model), includeList);
|
|
19
|
+
}
|
|
20
|
+
exports.applyVersion = applyVersion;
|
|
21
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/versioning/utils.ts"],"names":[],"mappings":";;;AAAA,kCAAsC;AACtC,4DAAwD;AAGxD,uFAAoF;AAEpF;;;;;;GAMG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,OAAiB,EACjB,WAAsB;IAEtB,IAAI,CAAC,WAAW,EAAE;QAChB,WAAW,GAAG,uDAA0B,CAAC,KAAK,CAAC,CAAC;KACjD;IACD,OAAO,4BAAY,CAAC,OAAO,CAAC,IAAI,EAAE,kBAAW,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;AACrE,CAAC;AATD,oCASC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { ICreateVersionOptions, IVersion, IVersionMetadata } from "../../versioning";
|
|
2
|
+
/**
|
|
3
|
+
* Composable behavior that adds versioning to an entity
|
|
4
|
+
*/
|
|
5
|
+
export interface IWithVersioningBehavior {
|
|
6
|
+
/**
|
|
7
|
+
* Gets all the versions of the entity
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
searchVersions(): Promise<IVersionMetadata[]>;
|
|
11
|
+
/**
|
|
12
|
+
* Gets the specified version of the entity
|
|
13
|
+
* @param versionId
|
|
14
|
+
* @returns
|
|
15
|
+
*/
|
|
16
|
+
getVersion(versionId: string): Promise<IVersion>;
|
|
17
|
+
/**
|
|
18
|
+
* Creates a new version of the entity
|
|
19
|
+
* @param options
|
|
20
|
+
* @returns
|
|
21
|
+
*/
|
|
22
|
+
createVersion(options?: ICreateVersionOptions): Promise<IVersion>;
|
|
23
|
+
/**
|
|
24
|
+
* Updates the specified version of the entity
|
|
25
|
+
* @param version
|
|
26
|
+
* @returns
|
|
27
|
+
*/
|
|
28
|
+
updateVersion(version: IVersion): Promise<IVersion>;
|
|
29
|
+
/**
|
|
30
|
+
* Deletes the specified version of the entity
|
|
31
|
+
* @returns
|
|
32
|
+
*/
|
|
33
|
+
deleteVersion(versionId: string): Promise<{
|
|
34
|
+
success: boolean;
|
|
35
|
+
}>;
|
|
36
|
+
}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { IExtent } from "@esri/arcgis-rest-feature-layer";
|
|
2
|
+
import { IWithVersioningBehavior } from "../behaviors";
|
|
2
3
|
import { IWithCatalog, IWithLayout, IWithPermissions, IWithSlug } from "../traits/index";
|
|
3
4
|
import { IHubItemEntity } from "./IHubItemEntity";
|
|
4
5
|
/**
|
|
5
6
|
* DRAFT: Under development and more properties will likely be added
|
|
6
7
|
* @internal
|
|
7
8
|
*/
|
|
8
|
-
export interface IHubSite extends IHubItemEntity, IWithSlug, IWithCatalog, IWithLayout, IWithPermissions {
|
|
9
|
+
export interface IHubSite extends IHubItemEntity, IWithSlug, IWithCatalog, IWithLayout, IWithPermissions, IWithVersioningBehavior {
|
|
9
10
|
/**
|
|
10
11
|
* Array of minimal page objects
|
|
11
12
|
*/
|
package/dist/types/index.d.ts
CHANGED
|
@@ -29,6 +29,7 @@ export * from "./urls";
|
|
|
29
29
|
export * from "./users";
|
|
30
30
|
export * from "./util";
|
|
31
31
|
export * from "./utils";
|
|
32
|
+
export * from "./versioning";
|
|
32
33
|
import OperationStack from "./OperationStack";
|
|
33
34
|
import OperationError from "./OperationError";
|
|
34
35
|
import HubError from "./HubError";
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { IHubSite, IWithPermissionBehavior, IWithCatalogBehavior, IWithStoreBehavior, IWithSharingBehavior } from "../core";
|
|
1
|
+
import { IHubSite, IWithPermissionBehavior, IWithCatalogBehavior, IWithStoreBehavior, IWithSharingBehavior, IWithVersioningBehavior } from "../core";
|
|
2
2
|
import { Catalog } from "../search";
|
|
3
3
|
import { IArcGISContext } from "../ArcGISContext";
|
|
4
4
|
import { HubItemEntity } from "../core/HubItemEntity";
|
|
5
5
|
import { IContainsResponse, IDeepCatalogInfo } from "../search";
|
|
6
|
+
import { ICreateVersionOptions, IVersion, IVersionMetadata } from "../versioning";
|
|
6
7
|
/**
|
|
7
8
|
* Hub Site Class
|
|
8
9
|
* NOTE: This is a minimal implementation. Create operations are not supported at this time
|
|
9
10
|
*/
|
|
10
|
-
export declare class HubSite extends HubItemEntity<IHubSite> implements IWithStoreBehavior<IHubSite>, IWithPermissionBehavior, IWithCatalogBehavior, IWithSharingBehavior {
|
|
11
|
+
export declare class HubSite extends HubItemEntity<IHubSite> implements IWithStoreBehavior<IHubSite>, IWithPermissionBehavior, IWithCatalogBehavior, IWithSharingBehavior, IWithVersioningBehavior {
|
|
11
12
|
private _catalog;
|
|
12
13
|
private _catalogCache;
|
|
13
14
|
/**
|
|
@@ -94,4 +95,34 @@ export declare class HubSite extends HubItemEntity<IHubSite> implements IWithSto
|
|
|
94
95
|
* @returns
|
|
95
96
|
*/
|
|
96
97
|
contains(identifier: string, hierarchy?: IDeepCatalogInfo[]): Promise<IContainsResponse>;
|
|
98
|
+
/**
|
|
99
|
+
* Gets all the versions of the site
|
|
100
|
+
* @returns
|
|
101
|
+
*/
|
|
102
|
+
searchVersions(): Promise<IVersionMetadata[]>;
|
|
103
|
+
/**
|
|
104
|
+
* Gets the specified version of the site
|
|
105
|
+
* @param versionId
|
|
106
|
+
* @returns
|
|
107
|
+
*/
|
|
108
|
+
getVersion(versionId: string): Promise<IVersion>;
|
|
109
|
+
/**
|
|
110
|
+
* Creates a new version of the site
|
|
111
|
+
* @param options
|
|
112
|
+
* @returns
|
|
113
|
+
*/
|
|
114
|
+
createVersion(options?: ICreateVersionOptions): Promise<IVersion>;
|
|
115
|
+
/**
|
|
116
|
+
* Updates the specified version of the site
|
|
117
|
+
* @param version
|
|
118
|
+
* @returns
|
|
119
|
+
*/
|
|
120
|
+
updateVersion(version: IVersion): Promise<IVersion>;
|
|
121
|
+
/**
|
|
122
|
+
* Deletes the specified version of the entity
|
|
123
|
+
* @returns
|
|
124
|
+
*/
|
|
125
|
+
deleteVersion(versionId: string): Promise<{
|
|
126
|
+
success: boolean;
|
|
127
|
+
}>;
|
|
97
128
|
}
|
|
@@ -23,3 +23,7 @@ export declare const SitePermissions: readonly ["hub:site:create", "hub:site:del
|
|
|
23
23
|
* @private
|
|
24
24
|
*/
|
|
25
25
|
export declare const SitesPermissionPolicies: IPermissionPolicy[];
|
|
26
|
+
/**
|
|
27
|
+
* Site versioning include list
|
|
28
|
+
*/
|
|
29
|
+
export declare const SiteVersionIncludeList: string[];
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IModel, IDraft } from "../../types";
|
|
2
|
+
/**
|
|
3
|
+
* Reconfigure event list card properties
|
|
4
|
+
* @private
|
|
5
|
+
* @param {object} model Site Model
|
|
6
|
+
* @returns {object}
|
|
7
|
+
*/
|
|
8
|
+
export declare function _migrateEventListCardConfigs<T extends IModel | IDraft>(model: T): T;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const SITE_SCHEMA_VERSION = 1.
|
|
1
|
+
export declare const SITE_SCHEMA_VERSION = 1.6;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IModel } from "../../types";
|
|
2
|
+
/**
|
|
3
|
+
* Returns the version data (ie the part of the model that gets versioned) from the model
|
|
4
|
+
* @param model
|
|
5
|
+
* @param includeList
|
|
6
|
+
* @private
|
|
7
|
+
*/
|
|
8
|
+
export declare function getVersionData(model: IModel, includeList: string[]): Record<string, any>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IHubUserRequestOptions } from "../types";
|
|
2
|
+
import { ICreateVersionOptions, IVersion } from "./types";
|
|
3
|
+
import { IModel } from "../types";
|
|
4
|
+
/**
|
|
5
|
+
* Creates and returns a new version of the entity
|
|
6
|
+
* @param entity
|
|
7
|
+
* @param requestOptions
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export declare function createVersion(model: IModel, requestOptions: IHubUserRequestOptions, options?: ICreateVersionOptions): Promise<IVersion>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IHubUserRequestOptions } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* Deletes the version specified by the entity id and versionId
|
|
4
|
+
* @param id
|
|
5
|
+
* @param versionId
|
|
6
|
+
* @param owner
|
|
7
|
+
* @param requestOptions
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export declare function deleteVersion(id: string, versionId: string, owner: string, requestOptions: IHubUserRequestOptions): Promise<{
|
|
11
|
+
success: boolean;
|
|
12
|
+
}>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IHubUserRequestOptions } from "../types";
|
|
2
|
+
import { IVersion } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* Returns an IVersion object for the specified entity id and versionId
|
|
5
|
+
* @param id
|
|
6
|
+
* @param versionId
|
|
7
|
+
* @param requestOptions
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export declare function getVersion(id: string, versionId: string, requestOptions: IHubUserRequestOptions): Promise<IVersion>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IHubUserRequestOptions } from "../types";
|
|
2
|
+
import { IVersionMetadata } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* Returns an array containing the versions of the specified item
|
|
5
|
+
* @param id
|
|
6
|
+
* @param requestOptions
|
|
7
|
+
* @returns
|
|
8
|
+
*/
|
|
9
|
+
export declare function searchVersions(id: string, requestOptions: IHubUserRequestOptions): Promise<IVersionMetadata[]>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Options for creating a new version of an entity
|
|
3
|
+
*/
|
|
4
|
+
export interface ICreateVersionOptions {
|
|
5
|
+
/**
|
|
6
|
+
* Optional name of the version
|
|
7
|
+
*/
|
|
8
|
+
name?: string;
|
|
9
|
+
/**
|
|
10
|
+
* Optional parentId (the versionId of the parent version)
|
|
11
|
+
*/
|
|
12
|
+
parentId?: string;
|
|
13
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IVersionMetadata } from "./IVersionMetadata";
|
|
2
|
+
/**
|
|
3
|
+
* The version of the entity.
|
|
4
|
+
* This contains the metadata about the version and the versioned data itself.
|
|
5
|
+
*/
|
|
6
|
+
export interface IVersion extends IVersionMetadata {
|
|
7
|
+
/**
|
|
8
|
+
* The versioned data
|
|
9
|
+
*/
|
|
10
|
+
data: Record<string, any>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metadata pertaining to the version
|
|
3
|
+
* This is what we get back when we search for versions of an entity.
|
|
4
|
+
*/
|
|
5
|
+
export interface IVersionMetadata {
|
|
6
|
+
/**
|
|
7
|
+
* The access level of the version resource
|
|
8
|
+
*/
|
|
9
|
+
access?: string;
|
|
10
|
+
/**
|
|
11
|
+
* The created timestamp
|
|
12
|
+
*/
|
|
13
|
+
created: number;
|
|
14
|
+
/**
|
|
15
|
+
* The username of the creator
|
|
16
|
+
*/
|
|
17
|
+
creator: string;
|
|
18
|
+
/**
|
|
19
|
+
* The id of the version
|
|
20
|
+
*/
|
|
21
|
+
id: string;
|
|
22
|
+
/**
|
|
23
|
+
* The name of the version
|
|
24
|
+
*/
|
|
25
|
+
name?: string;
|
|
26
|
+
/**
|
|
27
|
+
* The parent version id
|
|
28
|
+
*/
|
|
29
|
+
parent?: string;
|
|
30
|
+
/**
|
|
31
|
+
* The full path to the version
|
|
32
|
+
*/
|
|
33
|
+
path: string;
|
|
34
|
+
/**
|
|
35
|
+
* The size of the version resource
|
|
36
|
+
*/
|
|
37
|
+
size?: number;
|
|
38
|
+
/**
|
|
39
|
+
* The updated timestamp
|
|
40
|
+
*/
|
|
41
|
+
updated: number;
|
|
42
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IHubUserRequestOptions } from "../types";
|
|
2
|
+
import { IModel } from "../types";
|
|
3
|
+
import { IVersion } from "./types";
|
|
4
|
+
/**
|
|
5
|
+
* Updates the specified version with with the state of the supplied model
|
|
6
|
+
* @param model
|
|
7
|
+
* @param version
|
|
8
|
+
* @param requestOptions
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
export declare function updateVersion(model: IModel, version: IVersion, requestOptions: IHubUserRequestOptions): Promise<IVersion>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IModel } from "../types";
|
|
2
|
+
import { IVersion } from "./types/IVersion";
|
|
3
|
+
/**
|
|
4
|
+
* Applies the versioned data to the model
|
|
5
|
+
* @param model
|
|
6
|
+
* @param version
|
|
7
|
+
* @param includeList
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export declare function applyVersion(model: IModel, version: IVersion, includeList?: string[]): IModel;
|