bruce-models 7.1.117 → 7.1.119

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.
@@ -140,5 +140,5 @@ __exportStar(require("./workflow/workflow-item"), exports);
140
140
  __exportStar(require("./workflow/workflow-schedule"), exports);
141
141
  __exportStar(require("./workflow/workflow-type"), exports);
142
142
  // This is updated with the package.json version on build.
143
- exports.VERSION = "7.1.117";
143
+ exports.VERSION = "7.1.119";
144
144
  //# sourceMappingURL=bruce-models.js.map
@@ -42,6 +42,7 @@ var ChangeSet;
42
42
  EConcept["ENTITY_TYPE"] = "ET";
43
43
  EConcept["ENTITY_LOD"] = "EL";
44
44
  EConcept["ENTITY_RELATION"] = "ER";
45
+ EConcept["ASSEMBLY"] = "A";
45
46
  })(EConcept = ChangeSet.EConcept || (ChangeSet.EConcept = {}));
46
47
  /**
47
48
  * Updates existing or creates new Change Set record.
@@ -78,11 +79,18 @@ var ChangeSet;
78
79
  */
79
80
  function Get(params) {
80
81
  return __awaiter(this, void 0, void 0, function* () {
81
- let { id, expandCount, api, req: reqParams } = params;
82
+ let { id, expandCount, expandCountByConcept, api, req: reqParams } = params;
82
83
  if (!api) {
83
84
  api = environment_1.ENVIRONMENT.Api().GetBruceApi();
84
85
  }
85
- const query = expandCount ? "?Expand=Count" : "";
86
+ const expand = [];
87
+ if (expandCount) {
88
+ expand.push("Count");
89
+ }
90
+ if (expandCountByConcept) {
91
+ expand.push("CountByConcept");
92
+ }
93
+ const query = expand.length ? `?Expand=${expand.join(",")}` : "";
86
94
  return yield api.GET(`v3/change/${id}${query}`, api_1.Api.PrepReqParams(reqParams));
87
95
  });
88
96
  }
@@ -141,13 +149,10 @@ var ChangeSet;
141
149
  ChangeSet.Reject = Reject;
142
150
  /**
143
151
  * Gets the paged list of Change Items for the specified Change Set.
144
- * Optionally filter by Concept (E, ET, EL, ER) and/or EntityID.
145
- * TotalCount is returned when PageIndex is 0 (the default).
146
- * Pass -1 for both pageSize and pageIndex to get only TotalCount.
147
152
  */
148
153
  function GetItems(params) {
149
154
  return __awaiter(this, void 0, void 0, function* () {
150
- let { id, api, req: reqParams, pageSize, pageIndex, concept, entityId } = params;
155
+ let { id, api, req: reqParams, pageSize, pageIndex, concept, action, entityId } = params;
151
156
  if (!api) {
152
157
  api = environment_1.ENVIRONMENT.Api().GetBruceApi();
153
158
  }
@@ -161,6 +166,9 @@ var ChangeSet;
161
166
  if (concept != null) {
162
167
  urlParams.append("Concept", concept);
163
168
  }
169
+ if (action != null) {
170
+ urlParams.append("Action", action);
171
+ }
164
172
  if (entityId != null) {
165
173
  urlParams.append("EntityID", entityId);
166
174
  }
@@ -169,6 +177,27 @@ var ChangeSet;
169
177
  });
170
178
  }
171
179
  ChangeSet.GetItems = GetItems;
180
+ /**
181
+ * Locates the first Change Item naming an Entity, so a paged list can turn to the page holding it.
182
+ */
183
+ function GetItemsIndexOf(params) {
184
+ return __awaiter(this, void 0, void 0, function* () {
185
+ let { id, entityId, concept, action, api, req: reqParams } = params;
186
+ if (!api) {
187
+ api = environment_1.ENVIRONMENT.Api().GetBruceApi();
188
+ }
189
+ const urlParams = new URLSearchParams();
190
+ urlParams.append("IndexOf", entityId);
191
+ if (concept != null) {
192
+ urlParams.append("Concept", concept);
193
+ }
194
+ if (action != null) {
195
+ urlParams.append("Action", action);
196
+ }
197
+ return api.GET(`v3/change/${id}/items?${urlParams.toString()}`, api_1.Api.PrepReqParams(reqParams));
198
+ });
199
+ }
200
+ ChangeSet.GetItemsIndexOf = GetItemsIndexOf;
172
201
  /**
173
202
  * Updates existing or creates new Change Item within the specified Change Set.
174
203
  * To create a new item omit changeItem.ID or set it to 0.
@@ -1 +1 @@
1
- {"version":3,"file":"change-set.js","sourceRoot":"","sources":["../../../src/change-set/change-set.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"change-set.js","sourceRoot":"","sources":["../../../src/change-set/change-set.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.UrlUtils = void 0;
4
4
  var UrlUtils;
5
5
  (function (UrlUtils) {
6
+ // The "S:{expires}.{signature}/" segment the API puts in the path of URLs it signs.
7
+ const SIGNED_SEGMENT = /\/S:(\d+)\.[A-Za-z0-9_-]+\//;
6
8
  /**
7
9
  * Returns a url-safe string that is human readable.
8
10
  * Eg: 'My Project View!' into 'My-Project-View'.
@@ -32,6 +34,52 @@ var UrlUtils;
32
34
  return urlObj.toString();
33
35
  }
34
36
  UrlUtils.AddQueryParam = AddQueryParam;
37
+ /**
38
+ * Removes every occurrence of a query parameter from a url.
39
+ * Eg: RemoveQueryParam('http://example.com/?key=value&other=1', 'key') => 'http://example.com/?other=1'
40
+ * @param url absolute or relative url.
41
+ * @param key decoded name of the parameter to remove.
42
+ * @returns
43
+ */
44
+ function RemoveQueryParam(url, key) {
45
+ if (!url) {
46
+ return url;
47
+ }
48
+ const hashStart = url.indexOf("#");
49
+ const hash = hashStart === -1 ? "" : url.substring(hashStart);
50
+ const beforeHash = hashStart === -1 ? url : url.substring(0, hashStart);
51
+ const queryStart = beforeHash.indexOf("?");
52
+ if (queryStart === -1) {
53
+ return url;
54
+ }
55
+ // Works on the raw string so the parameters that stay keep their exact encoding, which a signed query depends on.
56
+ const kept = beforeHash.substring(queryStart + 1).split("&").filter(pair => {
57
+ return decodeQueryName(pair.split("=")[0]) !== key;
58
+ });
59
+ const query = kept.length ? "?" + kept.join("&") : "";
60
+ return beforeHash.substring(0, queryStart) + query + hash;
61
+ }
62
+ UrlUtils.RemoveQueryParam = RemoveQueryParam;
63
+ /**
64
+ * Returns true when the url carries an API signature that has not expired, so it authorises itself.
65
+ * @param url
66
+ * @returns
67
+ */
68
+ function IsSignedUrl(url) {
69
+ const match = url === null || url === void 0 ? void 0 : url.match(SIGNED_SEGMENT);
70
+ return !!match && Number(match[1]) * 1000 > Date.now();
71
+ }
72
+ UrlUtils.IsSignedUrl = IsSignedUrl;
73
+ /**
74
+ * Removes the API signature from a url.
75
+ * Eg: comparing two urls for the same file that were signed at different times, or a link leaving the app that should grant no more than the reader's own access.
76
+ * @param url
77
+ * @returns
78
+ */
79
+ function RemoveSignature(url) {
80
+ return url ? url.replace(SIGNED_SEGMENT, "/") : url;
81
+ }
82
+ UrlUtils.RemoveSignature = RemoveSignature;
35
83
  /**
36
84
  * Returns a url with the provided url appended to the provided existing url.
37
85
  * @param params
@@ -84,5 +132,16 @@ var UrlUtils;
84
132
  return full;
85
133
  }
86
134
  UrlUtils.ConstructUrl = ConstructUrl;
135
+ /**
136
+ * Decodes a query parameter name the way URLSearchParams does, keeping the raw name when it is malformed.
137
+ */
138
+ function decodeQueryName(name) {
139
+ try {
140
+ return decodeURIComponent(name.replace(/\+/g, " "));
141
+ }
142
+ catch (_a) {
143
+ return name;
144
+ }
145
+ }
87
146
  })(UrlUtils = exports.UrlUtils || (exports.UrlUtils = {}));
88
147
  //# sourceMappingURL=url-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"url-utils.js","sourceRoot":"","sources":["../../../src/util/url-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"url-utils.js","sourceRoot":"","sources":["../../../src/util/url-utils.ts"],"names":[],"mappings":"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"}
@@ -122,4 +122,4 @@ export * from "./util/url-utils";
122
122
  export * from "./workflow/workflow-item";
123
123
  export * from "./workflow/workflow-schedule";
124
124
  export * from "./workflow/workflow-type";
125
- export declare const VERSION = "7.1.117";
125
+ export declare const VERSION = "7.1.119";
@@ -27,7 +27,8 @@ export declare namespace ChangeSet {
27
27
  ENTITY = "E",
28
28
  ENTITY_TYPE = "ET",
29
29
  ENTITY_LOD = "EL",
30
- ENTITY_RELATION = "ER"
30
+ ENTITY_RELATION = "ER",
31
+ ASSEMBLY = "A"
31
32
  }
32
33
  /**
33
34
  * Each record represents one registered bundle of proposed changes to Entities, Relations, etc.
@@ -42,6 +43,7 @@ export declare namespace ChangeSet {
42
43
  "PendingAction.ID"?: number;
43
44
  "PendingAction"?: PendingAction.IAction;
44
45
  "Count"?: IChangeCount;
46
+ "CountByConcept"?: Record<string, IChangeCount>;
45
47
  }
46
48
  /**
47
49
  * Item counts of one Change Set split by the action its items propose.
@@ -75,6 +77,14 @@ export declare namespace ChangeSet {
75
77
  "Items": IChangeItem[];
76
78
  "TotalCount"?: number;
77
79
  }
80
+ /**
81
+ * Response from GetItemsIndexOf.
82
+ */
83
+ interface IChangeItemsIndexRes {
84
+ "Change": IChangeSet;
85
+ "Index": number;
86
+ "Concept"?: EConcept | string;
87
+ }
78
88
  /**
79
89
  * Response from UpdateItems.
80
90
  */
@@ -106,6 +116,7 @@ export declare namespace ChangeSet {
106
116
  function Get(params: {
107
117
  id: number;
108
118
  expandCount?: boolean;
119
+ expandCountByConcept?: boolean;
109
120
  api?: BruceApi.Api;
110
121
  req?: Api.IReqParams;
111
122
  }): Promise<IChangeSet>;
@@ -144,19 +155,28 @@ export declare namespace ChangeSet {
144
155
  }): Promise<IChangeSet>;
145
156
  /**
146
157
  * Gets the paged list of Change Items for the specified Change Set.
147
- * Optionally filter by Concept (E, ET, EL, ER) and/or EntityID.
148
- * TotalCount is returned when PageIndex is 0 (the default).
149
- * Pass -1 for both pageSize and pageIndex to get only TotalCount.
150
158
  */
151
159
  function GetItems(params: {
152
160
  id: number;
153
161
  pageSize?: number;
154
162
  pageIndex?: number;
155
163
  concept?: EConcept | string;
164
+ action?: EAction | string;
156
165
  entityId?: string;
157
166
  api?: BruceApi.Api;
158
167
  req?: Api.IReqParams;
159
168
  }): Promise<IChangeItemsRes>;
169
+ /**
170
+ * Locates the first Change Item naming an Entity, so a paged list can turn to the page holding it.
171
+ */
172
+ function GetItemsIndexOf(params: {
173
+ id: number;
174
+ entityId: string;
175
+ concept?: EConcept | string;
176
+ action?: EAction | string;
177
+ api?: BruceApi.Api;
178
+ req?: Api.IReqParams;
179
+ }): Promise<IChangeItemsIndexRes>;
160
180
  /**
161
181
  * Updates existing or creates new Change Item within the specified Change Set.
162
182
  * To create a new item omit changeItem.ID or set it to 0.
@@ -16,6 +16,27 @@ export declare namespace UrlUtils {
16
16
  * @returns
17
17
  */
18
18
  function AddQueryParam(url: string, key: string, value: string): string;
19
+ /**
20
+ * Removes every occurrence of a query parameter from a url.
21
+ * Eg: RemoveQueryParam('http://example.com/?key=value&other=1', 'key') => 'http://example.com/?other=1'
22
+ * @param url absolute or relative url.
23
+ * @param key decoded name of the parameter to remove.
24
+ * @returns
25
+ */
26
+ function RemoveQueryParam(url: string, key: string): string;
27
+ /**
28
+ * Returns true when the url carries an API signature that has not expired, so it authorises itself.
29
+ * @param url
30
+ * @returns
31
+ */
32
+ function IsSignedUrl(url: string): boolean;
33
+ /**
34
+ * Removes the API signature from a url.
35
+ * Eg: comparing two urls for the same file that were signed at different times, or a link leaving the app that should grant no more than the reader's own access.
36
+ * @param url
37
+ * @returns
38
+ */
39
+ function RemoveSignature(url: string): string;
19
40
  /**
20
41
  * Returns a url with the provided url appended to the provided existing url.
21
42
  * @param params
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bruce-models",
3
- "version": "7.1.117",
3
+ "version": "7.1.119",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "main": "dist/bruce-models.umd.js",