@nsshunt/stsfhirclient 1.0.5 → 1.0.6

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.
@@ -1,6 +1,6 @@
1
1
  (function(global, factory) {
2
- typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("node:https"), require("axios"), require("@nsshunt/stsutils"), require("@nsshunt/stsobservability"), require("vitest")) : typeof define === "function" && define.amd ? define(["exports", "node:https", "axios", "@nsshunt/stsutils", "@nsshunt/stsobservability", "vitest"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global["@nsshunt/stsfhirclient"] = {}, global.https, global.axios, global.stsutils, global.stsobservability, global.vitest));
3
- })(this, function(exports2, https, axios, stsutils, stsobservability, vitest) {
2
+ typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("node:https"), require("axios"), require("@nsshunt/stsutils"), require("@nsshunt/stsobservability")) : typeof define === "function" && define.amd ? define(["exports", "node:https", "axios", "@nsshunt/stsutils", "@nsshunt/stsobservability"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global["@nsshunt/stsfhirclient"] = {}, global.https, global.axios, global.stsutils, global.stsobservability));
3
+ })(this, function(exports2, https, axios, stsutils, stsobservability) {
4
4
  "use strict";var __defProp = Object.defineProperty;
5
5
  var __typeError = (msg) => {
6
6
  throw TypeError(msg);
@@ -12,7 +12,7 @@ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read fr
12
12
  var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
13
13
  var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
14
14
 
15
- var _options, _DUMMY_USER, _httpsAgent, _invokeMethods, _maxRetries, _sleepDuration, _NoRetryStatusCodes, _LogDebugMessage, _LogErrorMessage, _GetHttpsAgent, _HandleError, _InvokeResourceAPI, _TestMode, ___InvokeResourceAPI, _testHelper, _endpoint, _fhirClient, _accesssToken, _options2, _clientId, _clientSecret, _GetAccessToken, _LogDebugMessage2, _LogErrorMessage2, _HandleError2, _GetPersonRecord, _GetPersonRecordBatch, _testHelper2, _authUtilsNode;
15
+ var _options, _DUMMY_USER, _httpsAgent, _invokeMethods, _maxRetries, _sleepDuration, _NoRetryStatusCodes, _LogDebugMessage, _LogErrorMessage, _GetHttpsAgent, _HandleError, _InvokeResourceAPI, _TestMode, ___InvokeResourceAPI;
16
16
  var IFhirPersistenceType = /* @__PURE__ */ ((IFhirPersistenceType2) => {
17
17
  IFhirPersistenceType2["postgresResources"] = "postgresResources";
18
18
  IFhirPersistenceType2["postgresResourcesEntities"] = "postgresResourcesEntities";
@@ -3860,711 +3860,8 @@ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "
3860
3860
  _InvokeResourceAPI = new WeakMap();
3861
3861
  _TestMode = new WeakMap();
3862
3862
  ___InvokeResourceAPI = new WeakMap();
3863
- class STSFhirControllerTestCasesClient {
3864
- // ststestrunnernode password
3865
- constructor(options) {
3866
- __privateAdd(this, _testHelper);
3867
- __privateAdd(this, _endpoint, `https://localhost:${goptions.stsfhirport}`);
3868
- __privateAdd(this, _fhirClient);
3869
- __privateAdd(this, _accesssToken, null);
3870
- __privateAdd(this, _options2);
3871
- __privateAdd(this, _clientId, "36615b3a-b71b-49af-a68b-4180daed7a5a");
3872
- // ststestrunnernode
3873
- __privateAdd(this, _clientSecret, "7fbbf116-0537-424b-904f-d8d0a62adf9e");
3874
- __privateAdd(this, _GetAccessToken, async () => {
3875
- if (!__privateGet(this, _accesssToken)) {
3876
- const api = "api://fb6513e4-16fe-4931-bed8-33b82b404a14";
3877
- const resource = "Person";
3878
- const stsFhirApiPrefix = "stsfhir5";
3879
- const scopes = `${api}/${resource}.${stsFhirApiPrefix}:Create${resource} ${api}/${resource}.${stsFhirApiPrefix}:Get${resource}s ${api}/${resource}.${stsFhirApiPrefix}:Update${resource}s ${api}/${resource}.${stsFhirApiPrefix}:Patch${resource}s ${api}/${resource}.${stsFhirApiPrefix}:Delete${resource}s ${api}/${resource}/*.${stsFhirApiPrefix}:Get${resource} ${api}/${resource}/*.${stsFhirApiPrefix}:Update${resource} ${api}/${resource}/*.${stsFhirApiPrefix}:Patch${resource} ${api}/${resource}/*.${stsFhirApiPrefix}:Delete${resource}`.split(" ").sort().join(" ");
3880
- __privateSet(this, _accesssToken, await __privateGet(this, _options2).authUtilsNode.GetAPITokenFromAuthServerUsingScope({
3881
- clientId: __privateGet(this, _clientId),
3882
- authClientSecret: __privateGet(this, _clientSecret),
3883
- scope: scopes,
3884
- endPoint: __privateGet(this, _testHelper).authEndpoint
3885
- }, (error) => __privateGet(this, _LogErrorMessage2).call(this, error)));
3886
- await __privateGet(this, _options2).authUtilsNode.ValidateJWT(__privateGet(this, _accesssToken), "api://fb6513e4-16fe-4931-bed8-33b82b404a14", __privateGet(this, _testHelper).authEndpoint);
3887
- }
3888
- return __privateGet(this, _accesssToken);
3889
- });
3890
- __privateAdd(this, _LogDebugMessage2, (message) => {
3891
- stsutils.defaultLogger.debug(message);
3892
- });
3893
- __privateAdd(this, _LogErrorMessage2, (message) => {
3894
- stsutils.defaultLogger.error(message);
3895
- });
3896
- __privateAdd(this, _HandleError2, (error) => {
3897
- __privateGet(this, _LogDebugMessage2).call(this, chalk$1.red(`HandleError(): Error: [${error}]`));
3898
- });
3899
- __privateAdd(this, _GetPersonRecord, (prefix, index) => {
3900
- const id = `${prefix}${v4()}`;
3901
- const personRecord = {
3902
- id,
3903
- _resourceType: "Person",
3904
- name: [
3905
- {
3906
- family: `family ${index}`,
3907
- given: [`given ${index}`],
3908
- use: `usual`
3909
- }
3910
- ],
3911
- text: {
3912
- div: `New Record ${index}`,
3913
- status: "generated"
3914
- }
3915
- };
3916
- return personRecord;
3917
- });
3918
- __privateAdd(this, _GetPersonRecordBatch, (prefix, iterations) => {
3919
- const persons = [];
3920
- for (let i2 = 0; i2 < iterations; i2++) {
3921
- persons.push(__privateGet(this, _GetPersonRecord).call(this, prefix, i2));
3922
- }
3923
- return persons;
3924
- });
3925
- __publicField(this, "TestGetLatency", async () => {
3926
- vitest.expect.assertions(1);
3927
- try {
3928
- const retVal = await __privateGet(this, _fhirClient).GetLatency();
3929
- if (retVal) {
3930
- vitest.expect(retVal.status).toEqual(200);
3931
- }
3932
- } catch (error) {
3933
- __privateGet(this, _HandleError2).call(this, error);
3934
- }
3935
- });
3936
- __publicField(this, "TestGetAccessToken", async () => {
3937
- vitest.expect.assertions(1);
3938
- try {
3939
- const retVal = await __privateGet(this, _GetAccessToken).call(this);
3940
- vitest.expect(retVal).not.toBeNull();
3941
- } catch (error) {
3942
- __privateGet(this, _HandleError2).call(this, error);
3943
- }
3944
- });
3945
- __publicField(this, "CheckDuplicateErrorHandling", async () => {
3946
- vitest.expect.assertions(2);
3947
- const personRecord = __privateGet(this, _GetPersonRecord).call(this, "", 1);
3948
- const retVal = await __privateGet(this, _fhirClient).CreateResource("Person", personRecord, (error) => {
3949
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(POST /stsresource): ${error}`));
3950
- });
3951
- vitest.expect(retVal).toMatchObject(personRecord);
3952
- const retVal2 = await __privateGet(this, _fhirClient).CreateResource("Person", personRecord, (error) => {
3953
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(POST /stsresource): ${error}`));
3954
- });
3955
- vitest.expect(retVal2).toBeNull();
3956
- });
3957
- __publicField(this, "PostResources", async () => {
3958
- const iterations = 10;
3959
- vitest.expect.assertions(iterations);
3960
- for (let i2 = 0; i2 < iterations; i2++) {
3961
- const personRecord = __privateGet(this, _GetPersonRecord).call(this, "", i2);
3962
- const retVal = await __privateGet(this, _fhirClient).CreateResource("Person", personRecord, (error) => {
3963
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(POST /stsresource): ${error}`));
3964
- });
3965
- vitest.expect(retVal).toMatchObject(personRecord);
3966
- }
3967
- });
3968
- __publicField(this, "StandardCRUDOperations", async () => {
3969
- vitest.expect.assertions(8);
3970
- let personRecord = __privateGet(this, _GetPersonRecord).call(this, "", 1);
3971
- let retVal = await __privateGet(this, _fhirClient).CreateResource("Person", personRecord, (error) => {
3972
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(PostResource): ${error}`));
3973
- });
3974
- vitest.expect(retVal).toMatchObject(personRecord);
3975
- const retVal2 = await __privateGet(this, _fhirClient).CreateResource("Person", personRecord, (error) => {
3976
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(POST /stsresource): ${error}`));
3977
- });
3978
- vitest.expect(retVal2).toBeNull();
3979
- personRecord.text.div = "user01 put updated at " + (/* @__PURE__ */ new Date()).toString();
3980
- retVal = await __privateGet(this, _fhirClient).UpdateResource("Person", personRecord, (error) => {
3981
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(PutResource): ${error}`));
3982
- });
3983
- vitest.expect(retVal).toMatchObject(personRecord);
3984
- const patchPersonRecord = {
3985
- id: personRecord.id,
3986
- text: {
3987
- div: "user01 patched at " + (/* @__PURE__ */ new Date()).toString(),
3988
- status: "generated"
3989
- }
3990
- };
3991
- retVal = await __privateGet(this, _fhirClient).PatchResource("Person", patchPersonRecord, (error) => {
3992
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(PatchResource): ${error}`));
3993
- });
3994
- personRecord = Object.assign({}, personRecord, patchPersonRecord);
3995
- vitest.expect(retVal).toMatchObject(personRecord);
3996
- retVal = await __privateGet(this, _fhirClient).GetResource("Person", personRecord.id, null, (error) => {
3997
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(GetResource): ${error}`));
3998
- });
3999
- vitest.expect(retVal).toMatchObject(personRecord);
4000
- retVal = await __privateGet(this, _fhirClient).GetResource("Person", "willnotfind", null, (error) => {
4001
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(GetResource will not find): ${error}`));
4002
- });
4003
- vitest.expect(retVal).toBeNull();
4004
- retVal = await __privateGet(this, _fhirClient).DeleteResource("Person", personRecord.id, (error) => {
4005
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(DeleteResource): ${error}`));
4006
- });
4007
- vitest.expect(retVal).toMatchObject(personRecord);
4008
- retVal = await __privateGet(this, _fhirClient).GetResource("Person", personRecord.id, null, (error) => {
4009
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(GetResource after delete): ${error}`));
4010
- });
4011
- vitest.expect(retVal).toBeNull();
4012
- });
4013
- __publicField(this, "PostAndQuery", async () => {
4014
- const iterations = 10;
4015
- const personPrefix = `_${v4().replaceAll("-", "_")}_`;
4016
- vitest.expect.assertions(3 + 2 * iterations);
4017
- for (let i2 = 0; i2 < iterations; i2++) {
4018
- const personRecord = __privateGet(this, _GetPersonRecord).call(this, `${personPrefix}s1_`, i2);
4019
- const retVal2 = await __privateGet(this, _fhirClient).CreateResource("Person", personRecord, (error) => {
4020
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(POST /stsresource and query using filter): ${error}`));
4021
- });
4022
- vitest.expect(retVal2).toMatchObject(personRecord);
4023
- }
4024
- for (let i2 = 0; i2 < iterations; i2++) {
4025
- const personRecord = __privateGet(this, _GetPersonRecord).call(this, `${personPrefix}s2_`, i2);
4026
- const retVal2 = await __privateGet(this, _fhirClient).CreateResource("Person", personRecord, (error) => {
4027
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(POST /stsresource and query using filter): ${error}`));
4028
- });
4029
- vitest.expect(retVal2).toMatchObject(personRecord);
4030
- }
4031
- let retVal = await __privateGet(this, _fhirClient).GetResources("Person", [`${personPrefix}`], (error) => {
4032
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(POST /stsresource and query using filter): ${error}`));
4033
- });
4034
- if (retVal) {
4035
- vitest.expect(retVal.length).toEqual(iterations * 2);
4036
- }
4037
- retVal = await __privateGet(this, _fhirClient).GetResources("Person", [`${personPrefix}s1_`], (error) => {
4038
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(POST /stsresource and query using filter): ${error}`));
4039
- });
4040
- if (retVal) {
4041
- vitest.expect(retVal.length).toEqual(iterations);
4042
- }
4043
- retVal = await __privateGet(this, _fhirClient).GetResources("Person", [`${personPrefix}s2_`, `${personPrefix}s1_`], (error) => {
4044
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(POST /stsresource and query using filter): ${error}`));
4045
- });
4046
- if (retVal) {
4047
- vitest.expect(retVal.length).toEqual(iterations * 2);
4048
- }
4049
- });
4050
- __publicField(this, "BatchMethods", async () => {
4051
- const iterations = 10;
4052
- const personPrefix = `_${v4().replaceAll("-", "_")}_`;
4053
- vitest.expect.assertions(11);
4054
- const personRecords = __privateGet(this, _GetPersonRecordBatch).call(this, `${personPrefix}`, 10);
4055
- let stepMessage = `Resource list after put (batch create) resources`;
4056
- let retVal = await __privateGet(this, _fhirClient).UpdateResources("Person", personRecords, (error) => {
4057
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(${stepMessage}): ${error}`));
4058
- });
4059
- if (retVal) {
4060
- vitest.expect(retVal.length).toEqual(iterations);
4061
- vitest.expect(retVal).toMatchObject(personRecords);
4062
- }
4063
- for (let i2 = 0; i2 < iterations; i2++) {
4064
- personRecords[i2].text = {
4065
- div: `user${i2} updated at ` + (/* @__PURE__ */ new Date()).toString(),
4066
- status: "extensions"
4067
- };
4068
- }
4069
- stepMessage = `Resource list after put (update) resources`;
4070
- retVal = await __privateGet(this, _fhirClient).UpdateResources("Person", personRecords, (error) => {
4071
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(${stepMessage}): ${error}`));
4072
- });
4073
- if (retVal) {
4074
- vitest.expect(retVal.length).toEqual(iterations);
4075
- vitest.expect(retVal).toMatchObject(personRecords);
4076
- }
4077
- const patchRecords = [];
4078
- for (let i2 = 0; i2 < iterations; i2++) {
4079
- const updateTextObject = {
4080
- div: `user${i2} patched at ` + (/* @__PURE__ */ new Date()).toString(),
4081
- status: "extensions"
4082
- };
4083
- patchRecords.push({
4084
- id: personRecords[i2].id,
4085
- text: updateTextObject
4086
- });
4087
- personRecords[i2].text = updateTextObject;
4088
- }
4089
- stepMessage = `Resource list after patch resources`;
4090
- retVal = await __privateGet(this, _fhirClient).PatchResources("Person", patchRecords, (error) => {
4091
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(${stepMessage}): ${error}`));
4092
- });
4093
- if (retVal) {
4094
- vitest.expect(retVal.length).toEqual(iterations);
4095
- vitest.expect(retVal).toMatchObject(personRecords);
4096
- }
4097
- stepMessage = `Resource list before deleted resources`;
4098
- retVal = await __privateGet(this, _fhirClient).GetResources("Person", [`${personPrefix}`], (error) => {
4099
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(${stepMessage}): ${error}`));
4100
- });
4101
- if (retVal) {
4102
- vitest.expect(retVal.length).toEqual(iterations);
4103
- }
4104
- const remainingPersonRecords = personRecords.splice(5);
4105
- stepMessage = `Resource list of deleted resources`;
4106
- retVal = await __privateGet(this, _fhirClient).DeleteResources("Person", personRecords, (error) => {
4107
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(${stepMessage}): ${error}`));
4108
- });
4109
- if (retVal) {
4110
- vitest.expect(retVal.length).toEqual(5);
4111
- retVal.sort((a, b) => a.id.localeCompare(b.id));
4112
- personRecords.sort((a, b) => a.id.localeCompare(b.id));
4113
- vitest.expect(retVal).toMatchObject(personRecords);
4114
- }
4115
- stepMessage = `Resource list after partial deletes`;
4116
- retVal = await __privateGet(this, _fhirClient).GetResources("Person", [`${personPrefix}`], (error) => {
4117
- __privateGet(this, _LogErrorMessage2).call(this, chalk$1.red(`test(${stepMessage}): ${error}`));
4118
- });
4119
- if (retVal) {
4120
- vitest.expect(retVal.length).toEqual(5);
4121
- retVal.sort((a, b) => a.id.localeCompare(b.id));
4122
- remainingPersonRecords.sort((a, b) => a.id.localeCompare(b.id));
4123
- vitest.expect(retVal).toMatchObject(remainingPersonRecords);
4124
- }
4125
- });
4126
- __privateSet(this, _options2, options);
4127
- __privateSet(this, _testHelper, options.testHelper);
4128
- __privateSet(this, _fhirClient, new FhirClient({
4129
- fhirEndpoint: __privateGet(this, _endpoint),
4130
- logger: stsutils.defaultLogger,
4131
- publishInstrumentController: null,
4132
- // options.stsApp.InstrumentController,
4133
- testingMode: true,
4134
- GetAccessToken: () => {
4135
- return __privateGet(this, _GetAccessToken).call(this);
4136
- },
4137
- ResetAccessToken: () => {
4138
- __privateSet(this, _accesssToken, null);
4139
- }
4140
- }));
4141
- }
4142
- }
4143
- _testHelper = new WeakMap();
4144
- _endpoint = new WeakMap();
4145
- _fhirClient = new WeakMap();
4146
- _accesssToken = new WeakMap();
4147
- _options2 = new WeakMap();
4148
- _clientId = new WeakMap();
4149
- _clientSecret = new WeakMap();
4150
- _GetAccessToken = new WeakMap();
4151
- _LogDebugMessage2 = new WeakMap();
4152
- _LogErrorMessage2 = new WeakMap();
4153
- _HandleError2 = new WeakMap();
4154
- _GetPersonRecord = new WeakMap();
4155
- _GetPersonRecordBatch = new WeakMap();
4156
- class STSFhirControllerTestCasesDirect {
4157
- constructor(options) {
4158
- __publicField(this, "timeoutVal", 5e3);
4159
- __privateAdd(this, _testHelper2);
4160
- __privateAdd(this, _authUtilsNode);
4161
- __publicField(this, "endpoint", "https://localhost");
4162
- __publicField(this, "DUMMY_USER", "USR_user01@stsmda.com.au");
4163
- __publicField(this, "LogDebugMessage", (message) => {
4164
- stsutils.defaultLogger.debug(message);
4165
- });
4166
- __publicField(this, "LogErrorMessage", (message) => {
4167
- stsutils.defaultLogger.error(message);
4168
- });
4169
- __publicField(this, "HandleError", (error) => {
4170
- this.LogDebugMessage(chalk$1.red(`HandleError(): Error: [${error}]`));
4171
- let responseCode = 500;
4172
- if (axios.isAxiosError(error)) {
4173
- const axiosError = error;
4174
- if (axiosError.response) {
4175
- responseCode = axiosError.response.status;
4176
- this.LogDebugMessage(chalk$1.red(`AXIOS Error Response.Status = [${axiosError.response.status}]`));
4177
- if (axiosError.response.headers) {
4178
- this.LogErrorMessage(chalk$1.red(` headers: [${JSON.stringify(axiosError.response.headers)}]`));
4179
- }
4180
- if (axiosError.response.data) {
4181
- this.LogErrorMessage(chalk$1.red(` data: [${JSON.stringify(axiosError.response.data)}]`));
4182
- }
4183
- try {
4184
- if (axiosError.response.config) {
4185
- this.LogErrorMessage(chalk$1.red(` config: [${JSON.stringify(axiosError.response.config)}]`));
4186
- }
4187
- } catch (innererror) {
4188
- this.LogErrorMessage(chalk$1.red(` could not get response config, error: [${innererror}]`));
4189
- }
4190
- } else {
4191
- this.LogDebugMessage(chalk$1.red(`AXIOS Error = [${axiosError}]`));
4192
- }
4193
- }
4194
- return responseCode;
4195
- });
4196
- __publicField(this, "GetAccessToken", async () => {
4197
- const api = "api://fb6513e4-16fe-4931-bed8-33b82b404a14";
4198
- const resource = "Person";
4199
- const stsFhirApiPrefix = "stsfhir5";
4200
- const scopes = `${api}/${resource}.${stsFhirApiPrefix}:Create${resource} ${api}/${resource}.${stsFhirApiPrefix}:Get${resource}s ${api}/${resource}.${stsFhirApiPrefix}:Update${resource}s ${api}/${resource}.${stsFhirApiPrefix}:Patch${resource}s ${api}/${resource}.${stsFhirApiPrefix}:Delete${resource}s ${api}/${resource}/*.${stsFhirApiPrefix}:Get${resource} ${api}/${resource}/*.${stsFhirApiPrefix}:Update${resource} ${api}/${resource}/*.${stsFhirApiPrefix}:Patch${resource} ${api}/${resource}/*.${stsFhirApiPrefix}:Delete${resource}`.split(" ").sort().join(" ");
4201
- return await __privateGet(this, _authUtilsNode).GetAPITokenFromAuthServerUsingScope({
4202
- clientId: "36615b3a-b71b-49af-a68b-4180daed7a5a",
4203
- // ststestrunnernode
4204
- authClientSecret: "7fbbf116-0537-424b-904f-d8d0a62adf9e",
4205
- // ststestrunnernode password
4206
- scope: scopes,
4207
- endPoint: __privateGet(this, _testHelper2).authEndpoint
4208
- }, (error) => this.LogErrorMessage(error));
4209
- });
4210
- __publicField(this, "__UpdateGeneric", async (url, httpVerb, accesss_token, domainResource, filters, errorCb) => {
4211
- try {
4212
- const headers = {
4213
- "Content-Type": "application/json",
4214
- "Authorization": "Bearer " + accesss_token,
4215
- "x-sts_user_id": this.DUMMY_USER
4216
- };
4217
- const requestConfig = {
4218
- url,
4219
- method: httpVerb,
4220
- headers,
4221
- httpsAgent: __privateGet(this, _testHelper2).getHttpsAgent
4222
- };
4223
- if (filters) {
4224
- requestConfig.data = filters;
4225
- } else if (domainResource) {
4226
- requestConfig.data = domainResource;
4227
- }
4228
- const retVal = await axios(requestConfig);
4229
- return retVal;
4230
- } catch (error) {
4231
- this.HandleError(error);
4232
- errorCb(error);
4233
- return null;
4234
- }
4235
- });
4236
- __publicField(this, "__UpdateResource", async (url, httpVerb, accesss_token, domainResource, filters, errorCb) => {
4237
- return this.__UpdateGeneric(url, httpVerb, accesss_token, domainResource, filters, errorCb);
4238
- });
4239
- __publicField(this, "PostResource", async (accesss_token, resource, domainResource, errorCb) => {
4240
- const url = `${this.endpoint}:${goptions.stsfhirport}${goptions.stsfhirapiroot}/${resource}`;
4241
- return this.__UpdateResource(url, "post", accesss_token, domainResource, null, errorCb);
4242
- });
4243
- __publicField(this, "PutResource", async (accesss_token, resource, domainResource, errorCb) => {
4244
- const url = `${this.endpoint}:${goptions.stsfhirport}${goptions.stsfhirapiroot}/${resource}/${domainResource.id}`;
4245
- return this.__UpdateResource(url, "put", accesss_token, domainResource, null, errorCb);
4246
- });
4247
- __publicField(this, "PutResources", async (accesss_token, resource, domainResources, errorCb) => {
4248
- const url = `${this.endpoint}:${goptions.stsfhirport}${goptions.stsfhirapiroot}/${resource}`;
4249
- return this.__UpdateResource(url, "put", accesss_token, domainResources, null, errorCb);
4250
- });
4251
- __publicField(this, "PatchResource", async (accesss_token, resource, domainResource, errorCb) => {
4252
- const url = `${this.endpoint}:${goptions.stsfhirport}${goptions.stsfhirapiroot}/${resource}/${domainResource.id}`;
4253
- return this.__UpdateResource(url, "patch", accesss_token, domainResource, null, errorCb);
4254
- });
4255
- __publicField(this, "PatchResources", async (accesss_token, resource, domainResources, errorCb) => {
4256
- const url = `${this.endpoint}:${goptions.stsfhirport}${goptions.stsfhirapiroot}/${resource}`;
4257
- return this.__UpdateResource(url, "patch", accesss_token, domainResources, null, errorCb);
4258
- });
4259
- __publicField(this, "GetResource", async (accesss_token, resource, id, filters, errorCb) => {
4260
- const url = `${this.endpoint}:${goptions.stsfhirport}${goptions.stsfhirapiroot}/${resource}/${id}`;
4261
- return this.__UpdateResource(url, "get", accesss_token, null, filters, errorCb);
4262
- });
4263
- __publicField(this, "DeleteResource", async (accesss_token, resource, id, errorCb) => {
4264
- const url = `${this.endpoint}:${goptions.stsfhirport}${goptions.stsfhirapiroot}/${resource}/${id}`;
4265
- return this.__UpdateResource(url, "delete", accesss_token, null, null, errorCb);
4266
- });
4267
- __publicField(this, "DeleteResources", async (accesss_token, resource, domainResources, errorCb) => {
4268
- const url = `${this.endpoint}:${goptions.stsfhirport}${goptions.stsfhirapiroot}/${resource}`;
4269
- return this.__UpdateResource(url, "delete", accesss_token, domainResources, null, errorCb);
4270
- });
4271
- __publicField(this, "GetResources", async (accesss_token, resource, filters, errorCb) => {
4272
- const url = `${this.endpoint}:${goptions.stsfhirport}${goptions.stsfhirapiroot}/${resource}`;
4273
- return this.__UpdateResource(url, "get", accesss_token, null, filters, errorCb);
4274
- });
4275
- __publicField(this, "CheckResourceMetaData", (response, status, checkData) => {
4276
- vitest.expect(response.status).toEqual(status);
4277
- const returnData = response.data;
4278
- vitest.expect(returnData).toMatchObject(checkData);
4279
- });
4280
- __publicField(this, "GetPersonRecord", (prefix, index) => {
4281
- const id = `${prefix}${v4()}`;
4282
- const personRecord = {
4283
- id,
4284
- _resourceType: "Person",
4285
- name: [
4286
- {
4287
- family: `family ${index}`,
4288
- given: [`given ${index}`],
4289
- use: `usual`
4290
- }
4291
- ],
4292
- text: {
4293
- div: `New Record ${index}`,
4294
- status: "generated"
4295
- }
4296
- };
4297
- return personRecord;
4298
- });
4299
- __publicField(this, "GetPersonRecordBatch", (prefix, iterations) => {
4300
- const persons = [];
4301
- for (let i2 = 0; i2 < iterations; i2++) {
4302
- persons.push(this.GetPersonRecord(prefix, i2));
4303
- }
4304
- return persons;
4305
- });
4306
- __publicField(this, "TestGetLatency", async () => {
4307
- vitest.expect.assertions(1);
4308
- const url = `${this.endpoint}:${goptions.stsfhirport}${goptions.stsfhirapiroot}/latency`;
4309
- try {
4310
- const headers = {
4311
- "Content-Type": "application/json"
4312
- };
4313
- const retVal = await axios({
4314
- url,
4315
- method: "get",
4316
- headers,
4317
- httpsAgent: __privateGet(this, _testHelper2).getHttpsAgent
4318
- });
4319
- vitest.expect(retVal.status).toEqual(200);
4320
- } catch (error) {
4321
- this.HandleError(error);
4322
- }
4323
- });
4324
- __publicField(this, "GetAPITokenFromAuthServer", async () => {
4325
- vitest.expect.assertions(1);
4326
- const accesss_token = await this.GetAccessToken();
4327
- await __privateGet(this, _authUtilsNode).ValidateJWT(accesss_token, "api://fb6513e4-16fe-4931-bed8-33b82b404a14", __privateGet(this, _testHelper2).authEndpoint);
4328
- await stsutils.Sleep(200);
4329
- console.log(chalk$1.rgb(255, 204, 255)(`Access Token: [${accesss_token}]`));
4330
- console.log(chalk$1.rgb(255, 204, 255)(`Access Token Size: [${accesss_token.length}]`));
4331
- vitest.expect(1).toEqual(1);
4332
- });
4333
- __publicField(this, "CheckDuplicateErrorHandling", async () => {
4334
- vitest.expect.assertions(4);
4335
- const accesss_token = await this.GetAccessToken();
4336
- vitest.expect(accesss_token).not.toEqual("");
4337
- const personRecord = this.GetPersonRecord("", 1);
4338
- const retVal = await this.PostResource(accesss_token, "Person", personRecord, (error) => {
4339
- this.LogErrorMessage(chalk$1.red(`test(POST /stsresource): ${error}`));
4340
- });
4341
- if (retVal) {
4342
- this.CheckResourceMetaData(retVal, 201, personRecord);
4343
- }
4344
- const retVal2 = await this.PostResource(accesss_token, "Person", personRecord, (error) => {
4345
- this.LogErrorMessage(chalk$1.red(`test(POST /stsresource): ${error}`));
4346
- });
4347
- vitest.expect(retVal2).toBeNull();
4348
- });
4349
- __publicField(this, "PostResources", async () => {
4350
- const iterations = 10;
4351
- vitest.expect.assertions(1 + 2 * iterations);
4352
- const accesss_token = await this.GetAccessToken();
4353
- vitest.expect(accesss_token).not.toEqual("");
4354
- for (let i2 = 0; i2 < iterations; i2++) {
4355
- const personRecord = this.GetPersonRecord("", i2);
4356
- const retVal = await this.PostResource(accesss_token, "Person", personRecord, (error) => {
4357
- this.LogErrorMessage(chalk$1.red(`test(POST /stsresource): ${error}`));
4358
- });
4359
- if (retVal) {
4360
- this.CheckResourceMetaData(retVal, 201, personRecord);
4361
- }
4362
- }
4363
- });
4364
- __publicField(this, "StandardCRUDOperations", async () => {
4365
- vitest.expect.assertions(15);
4366
- const accesss_token = await this.GetAccessToken();
4367
- vitest.expect(accesss_token).not.toEqual("");
4368
- let personRecord = this.GetPersonRecord("", 1);
4369
- let retVal = await this.PostResource(accesss_token, "Person", personRecord, (error) => {
4370
- this.LogErrorMessage(chalk$1.red(`test(PostResource): ${error}`));
4371
- });
4372
- if (retVal) {
4373
- this.CheckResourceMetaData(retVal, 201, personRecord);
4374
- }
4375
- retVal = await this.PostResource(accesss_token, "Person", personRecord, (error) => {
4376
- this.LogErrorMessage(chalk$1.red(`test(PostResource duplicate): ${error}`));
4377
- const responseCode = this.HandleError(error);
4378
- vitest.expect(responseCode).toEqual(StatusCodes.CONFLICT);
4379
- });
4380
- vitest.expect(retVal).toBeNull();
4381
- personRecord.text.div = "user01 put updated at " + (/* @__PURE__ */ new Date()).toString();
4382
- retVal = await this.PutResource(accesss_token, "Person", personRecord, (error) => {
4383
- this.LogErrorMessage(chalk$1.red(`test(PutResource): ${error}`));
4384
- });
4385
- if (retVal) {
4386
- this.CheckResourceMetaData(retVal, 200, personRecord);
4387
- }
4388
- const patchPersonRecord = {
4389
- id: personRecord.id,
4390
- text: {
4391
- div: "user01 patched at " + (/* @__PURE__ */ new Date()).toString(),
4392
- status: "generated"
4393
- }
4394
- };
4395
- retVal = await this.PatchResource(accesss_token, "Person", patchPersonRecord, (error) => {
4396
- this.LogErrorMessage(chalk$1.red(`test(PatchResource): ${error}`));
4397
- });
4398
- personRecord = Object.assign({}, personRecord, patchPersonRecord);
4399
- if (retVal) {
4400
- this.CheckResourceMetaData(retVal, 200, personRecord);
4401
- }
4402
- retVal = await this.GetResource(accesss_token, "Person", personRecord.id, null, (error) => {
4403
- this.LogErrorMessage(chalk$1.red(`test(GetResource): ${error}`));
4404
- });
4405
- if (retVal) {
4406
- this.CheckResourceMetaData(retVal, 200, personRecord);
4407
- }
4408
- retVal = await this.GetResource(accesss_token, "Person", "willnotfind", null, (error) => {
4409
- this.LogErrorMessage(chalk$1.red(`test(GetResource will not find): ${error}`));
4410
- });
4411
- vitest.expect(retVal).toBeNull();
4412
- retVal = await this.DeleteResource(accesss_token, "Person", personRecord.id, (error) => {
4413
- this.LogErrorMessage(chalk$1.red(`test(DeleteResource): ${error}`));
4414
- });
4415
- if (retVal) {
4416
- this.CheckResourceMetaData(retVal, 200, personRecord);
4417
- }
4418
- retVal = await this.GetResource(accesss_token, "Person", personRecord.id, null, (error) => {
4419
- this.LogErrorMessage(chalk$1.red(`test(GetResource after delete): ${error}`));
4420
- });
4421
- vitest.expect(retVal).toBeNull();
4422
- });
4423
- __publicField(this, "PostAndQuery", async () => {
4424
- const iterations = 10;
4425
- const personPrefix = `_${v4().replaceAll("-", "_")}_`;
4426
- vitest.expect.assertions(4 + 4 * iterations);
4427
- const accesss_token = await this.GetAccessToken();
4428
- vitest.expect(accesss_token).not.toEqual("");
4429
- for (let i2 = 0; i2 < iterations; i2++) {
4430
- const personRecord = this.GetPersonRecord(`${personPrefix}s1_`, i2);
4431
- const retVal2 = await this.PostResource(accesss_token, "Person", personRecord, (error) => {
4432
- this.LogErrorMessage(chalk$1.red(`test(POST /stsresource and query using filter): ${error}`));
4433
- });
4434
- if (retVal2) {
4435
- this.CheckResourceMetaData(retVal2, 201, personRecord);
4436
- }
4437
- }
4438
- for (let i2 = 0; i2 < iterations; i2++) {
4439
- const personRecord = this.GetPersonRecord(`${personPrefix}s2_`, i2);
4440
- const retVal2 = await this.PostResource(accesss_token, "Person", personRecord, (error) => {
4441
- this.LogErrorMessage(chalk$1.red(`test(POST /stsresource and query using filter): ${error}`));
4442
- });
4443
- if (retVal2) {
4444
- this.CheckResourceMetaData(retVal2, 201, personRecord);
4445
- }
4446
- }
4447
- let retVal = await this.GetResources(accesss_token, "Person", [`${personPrefix}`], (error) => {
4448
- this.LogErrorMessage(chalk$1.red(`test(POST /stsresource and query using filter): ${error}`));
4449
- });
4450
- if (retVal) {
4451
- console.log(retVal.data);
4452
- vitest.expect(retVal.data.length).toEqual(iterations * 2);
4453
- }
4454
- retVal = await this.GetResources(accesss_token, "Person", [`${personPrefix}s1_`], (error) => {
4455
- this.LogErrorMessage(chalk$1.red(`test(POST /stsresource and query using filter): ${error}`));
4456
- });
4457
- if (retVal) {
4458
- console.log(retVal.data);
4459
- vitest.expect(retVal.data.length).toEqual(iterations);
4460
- }
4461
- retVal = await this.GetResources(accesss_token, "Person", [`${personPrefix}s2_`, `${personPrefix}s1_`], (error) => {
4462
- this.LogErrorMessage(chalk$1.red(`test(POST /stsresource and query using filter): ${error}`));
4463
- });
4464
- if (retVal) {
4465
- console.log(retVal.data);
4466
- vitest.expect(retVal.data.length).toEqual(iterations * 2);
4467
- }
4468
- });
4469
- __publicField(this, "BatchMethods", async () => {
4470
- const iterations = 10;
4471
- const personPrefix = `_${v4().replaceAll("-", "_")}_`;
4472
- vitest.expect.assertions(15);
4473
- const accesss_token = await this.GetAccessToken();
4474
- vitest.expect(accesss_token).not.toEqual("");
4475
- const personRecords = this.GetPersonRecordBatch(`${personPrefix}`, 10);
4476
- let stepMessage = `Resource list after put (batch create) resources`;
4477
- let retVal = await this.PutResources(accesss_token, "Person", personRecords, (error) => {
4478
- this.LogErrorMessage(chalk$1.red(`test(${stepMessage}): ${error}`));
4479
- });
4480
- if (retVal) {
4481
- console.log(chalk$1.yellow(stepMessage));
4482
- console.log(retVal.data);
4483
- vitest.expect(retVal.status).toEqual(StatusCodes.OK);
4484
- vitest.expect(retVal.data.length).toEqual(iterations);
4485
- vitest.expect(retVal.data).toMatchObject(personRecords);
4486
- }
4487
- for (let i2 = 0; i2 < iterations; i2++) {
4488
- personRecords[i2].text = {
4489
- div: `user${i2} updated at ` + (/* @__PURE__ */ new Date()).toString(),
4490
- status: "extensions"
4491
- };
4492
- }
4493
- stepMessage = `Resource list after put (update) resources`;
4494
- retVal = await this.PutResources(accesss_token, "Person", personRecords, (error) => {
4495
- this.LogErrorMessage(chalk$1.red(`test(${stepMessage}): ${error}`));
4496
- });
4497
- if (retVal) {
4498
- console.log(chalk$1.yellow(stepMessage));
4499
- console.log(retVal.data);
4500
- vitest.expect(retVal.status).toEqual(StatusCodes.OK);
4501
- vitest.expect(retVal.data.length).toEqual(iterations);
4502
- vitest.expect(retVal.data).toMatchObject(personRecords);
4503
- }
4504
- const patchRecords = [];
4505
- for (let i2 = 0; i2 < iterations; i2++) {
4506
- const updateTextObject = {
4507
- div: `user${i2} patched at ` + (/* @__PURE__ */ new Date()).toString(),
4508
- status: "extensions"
4509
- };
4510
- patchRecords.push({
4511
- id: personRecords[i2].id,
4512
- text: updateTextObject
4513
- });
4514
- personRecords[i2].text = updateTextObject;
4515
- }
4516
- stepMessage = `Resource list after patch resources`;
4517
- retVal = await this.PatchResources(accesss_token, "Person", patchRecords, (error) => {
4518
- this.LogErrorMessage(chalk$1.red(`test(${stepMessage}): ${error}`));
4519
- });
4520
- if (retVal) {
4521
- console.log(chalk$1.yellow(stepMessage));
4522
- console.log(retVal.data);
4523
- vitest.expect(retVal.status).toEqual(StatusCodes.OK);
4524
- vitest.expect(retVal.data.length).toEqual(iterations);
4525
- vitest.expect(retVal.data).toMatchObject(personRecords);
4526
- }
4527
- stepMessage = `Resource list before deleted resources`;
4528
- retVal = await this.GetResources(accesss_token, "Person", [`${personPrefix}`], (error) => {
4529
- this.LogErrorMessage(chalk$1.red(`test(${stepMessage}): ${error}`));
4530
- });
4531
- if (retVal) {
4532
- console.log(chalk$1.yellow(stepMessage));
4533
- console.log(retVal.data);
4534
- vitest.expect(retVal.data.length).toEqual(iterations);
4535
- }
4536
- personRecords.splice(5);
4537
- stepMessage = `Resource list of deleted resources`;
4538
- retVal = await this.DeleteResources(accesss_token, "Person", personRecords, (error) => {
4539
- this.LogErrorMessage(chalk$1.red(`test(${stepMessage}): ${error}`));
4540
- });
4541
- if (retVal) {
4542
- console.log(chalk$1.yellow(stepMessage));
4543
- console.log(retVal.data);
4544
- vitest.expect(retVal.status).toEqual(StatusCodes.OK);
4545
- vitest.expect(retVal.data.length).toEqual(5);
4546
- vitest.expect(retVal.data).toMatchObject(personRecords);
4547
- }
4548
- stepMessage = `Resource list after partial deletes`;
4549
- retVal = await this.GetResources(accesss_token, "Person", [`${personPrefix}`], (error) => {
4550
- this.LogErrorMessage(chalk$1.red(`test(${stepMessage}): ${error}`));
4551
- });
4552
- if (retVal) {
4553
- console.log(chalk$1.yellow(stepMessage));
4554
- console.log(retVal.data);
4555
- vitest.expect(retVal.data.length).toEqual(5);
4556
- }
4557
- });
4558
- __privateSet(this, _testHelper2, options.testHelper);
4559
- __privateSet(this, _authUtilsNode, options.authUtilsNode);
4560
- }
4561
- }
4562
- _testHelper2 = new WeakMap();
4563
- _authUtilsNode = new WeakMap();
4564
3863
  exports2.FhirClient = FhirClient;
4565
3864
  exports2.IFhirPersistenceType = IFhirPersistenceType;
4566
- exports2.STSFhirControllerTestCasesClient = STSFhirControllerTestCasesClient;
4567
- exports2.STSFhirControllerTestCasesDirect = STSFhirControllerTestCasesDirect;
4568
3865
  Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
4569
3866
  });
4570
3867
  //# sourceMappingURL=stsfhirclient.umd.js.map