@frankieone/one-sdk 0.5.5-rc → 0.6.5-alpha

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.
Files changed (112) hide show
  1. package/README.md +38 -36
  2. package/dist/commit.txt +2 -2
  3. package/dist/esm/modules/common/constants.d.ts +1 -0
  4. package/dist/esm/modules/common/constants.js +2 -0
  5. package/dist/esm/modules/common/constants.js.map +1 -1
  6. package/dist/esm/modules/common/modules/{runIfWhen.d.ts → HOF.d.ts} +17 -2
  7. package/dist/esm/modules/common/modules/{runIfWhen.js → HOF.js} +22 -3
  8. package/dist/esm/modules/common/modules/HOF.js.map +1 -0
  9. package/dist/esm/modules/common/modules/LocalStorage.d.ts +6 -0
  10. package/dist/esm/modules/common/modules/LocalStorage.js +21 -0
  11. package/dist/esm/modules/common/modules/LocalStorage.js.map +1 -0
  12. package/dist/esm/modules/common/modules/env2url.d.ts +6 -1
  13. package/dist/esm/modules/common/modules/env2url.js +17 -1
  14. package/dist/esm/modules/common/modules/env2url.js.map +1 -1
  15. package/dist/esm/modules/common/modules/url.d.ts +5 -0
  16. package/dist/esm/modules/common/modules/url.js +10 -0
  17. package/dist/esm/modules/common/modules/url.js.map +1 -0
  18. package/dist/esm/modules/common/types/Configuration.d.ts +15 -0
  19. package/dist/esm/modules/federation/constants.d.ts +2 -0
  20. package/dist/esm/modules/federation/constants.js +3 -0
  21. package/dist/esm/modules/federation/constants.js.map +1 -0
  22. package/dist/esm/modules/federation/index.d.ts +3 -0
  23. package/dist/esm/modules/federation/index.js +69 -0
  24. package/dist/esm/modules/federation/index.js.map +1 -0
  25. package/dist/esm/modules/federation/parseConfiguration.d.ts +2 -0
  26. package/dist/esm/modules/federation/parseConfiguration.js +43 -0
  27. package/dist/esm/modules/federation/parseConfiguration.js.map +1 -0
  28. package/dist/esm/modules/federation/types/events.d.ts +4 -0
  29. package/dist/esm/modules/federation/types/events.js +2 -0
  30. package/dist/esm/modules/federation/types/events.js.map +1 -0
  31. package/dist/esm/modules/federation/types/module.d.ts +8 -0
  32. package/dist/esm/modules/federation/types/module.js +2 -0
  33. package/dist/esm/modules/federation/types/module.js.map +1 -0
  34. package/dist/esm/modules/federation/types/wrapper.d.ts +18 -0
  35. package/dist/esm/modules/federation/types/wrapper.js +2 -0
  36. package/dist/esm/modules/federation/types/wrapper.js.map +1 -0
  37. package/dist/esm/modules/federation/vendors/Singpass.d.ts +8 -0
  38. package/dist/esm/modules/federation/vendors/Singpass.js +110 -0
  39. package/dist/esm/modules/federation/vendors/Singpass.js.map +1 -0
  40. package/dist/esm/modules/frankie-client/DummyFrankieApiClient.d.ts +28 -22
  41. package/dist/esm/modules/frankie-client/DummyFrankieApiClient.js +47 -45
  42. package/dist/esm/modules/frankie-client/DummyFrankieApiClient.js.map +1 -1
  43. package/dist/esm/modules/frankie-client/FrankieApiClient.d.ts +6 -8
  44. package/dist/esm/modules/frankie-client/FrankieApiClient.js +10 -25
  45. package/dist/esm/modules/frankie-client/FrankieApiClient.js.map +1 -1
  46. package/dist/esm/modules/frankie-client/clients/ApplicantClient.js +7 -11
  47. package/dist/esm/modules/frankie-client/clients/ApplicantClient.js.map +1 -1
  48. package/dist/esm/modules/frankie-client/clients/BaseClient.d.ts +1 -3
  49. package/dist/esm/modules/frankie-client/clients/BaseClient.js +4 -3
  50. package/dist/esm/modules/frankie-client/clients/BaseClient.js.map +1 -1
  51. package/dist/esm/modules/frankie-client/clients/FederationClient.d.ts +11 -0
  52. package/dist/esm/modules/frankie-client/clients/FederationClient.js +24 -0
  53. package/dist/esm/modules/frankie-client/clients/FederationClient.js.map +1 -0
  54. package/dist/esm/modules/frankie-client/clients/StorageClient.d.ts +10 -0
  55. package/dist/esm/modules/frankie-client/clients/StorageClient.js +23 -0
  56. package/dist/esm/modules/frankie-client/clients/StorageClient.js.map +1 -0
  57. package/dist/esm/modules/frankie-client/index.d.ts +8 -2
  58. package/dist/esm/modules/frankie-client/index.js +23 -32
  59. package/dist/esm/modules/frankie-client/index.js.map +1 -1
  60. package/dist/esm/modules/frankie-client/mocks/federation/index.d.ts +4 -0
  61. package/dist/esm/modules/frankie-client/mocks/federation/index.js +32 -0
  62. package/dist/esm/modules/frankie-client/mocks/federation/index.js.map +1 -0
  63. package/dist/esm/modules/frankie-client/mocks/index.js +4 -0
  64. package/dist/esm/modules/frankie-client/mocks/index.js.map +1 -1
  65. package/dist/esm/modules/frankie-client/mocks/individual/loadIndividual.d.ts +1 -1
  66. package/dist/esm/modules/frankie-client/mocks/individual/loadIndividual.js +2 -2
  67. package/dist/esm/modules/frankie-client/mocks/individual/loadIndividual.js.map +1 -1
  68. package/dist/esm/modules/index.d.ts +15 -3
  69. package/dist/esm/modules/index.js +18 -9
  70. package/dist/esm/modules/index.js.map +1 -1
  71. package/dist/esm/modules/individual/actions/search.js +4 -5
  72. package/dist/esm/modules/individual/actions/search.js.map +1 -1
  73. package/dist/esm/modules/individual/types/events.d.ts +1 -1
  74. package/dist/esm/modules/meta.json +1 -1
  75. package/dist/esm/modules/ocr/actions/start.js +6 -14
  76. package/dist/esm/modules/ocr/actions/start.js.map +1 -1
  77. package/dist/esm/modules/sdk/index.js +3 -1
  78. package/dist/esm/modules/sdk/index.js.map +1 -1
  79. package/dist/esm/modules/sdk/initialisation/componentLoader.js +1 -1
  80. package/dist/esm/modules/sdk/initialisation/componentLoader.js.map +1 -1
  81. package/dist/esm/modules/sdk/initialisation/configurationParser.js +4 -7
  82. package/dist/esm/modules/sdk/initialisation/configurationParser.js.map +1 -1
  83. package/dist/esm/modules/sdk/initialisation/sharedDependencies.d.ts +2 -1
  84. package/dist/esm/modules/sdk/initialisation/sharedDependencies.js +4 -4
  85. package/dist/esm/modules/sdk/initialisation/sharedDependencies.js.map +1 -1
  86. package/dist/esm/modules/sdk/types/components.d.ts +2 -2
  87. package/dist/esm/modules/sdk/types/configuration.d.ts +17 -26
  88. package/dist/esm/modules/sdk/types/configuration.js.map +1 -1
  89. package/dist/esm/modules/sdk/types/module.d.ts +1 -1
  90. package/dist/esm/modules/session/SessionContext.d.ts +55 -0
  91. package/dist/esm/modules/session/SessionContext.js +88 -0
  92. package/dist/esm/modules/session/SessionContext.js.map +1 -0
  93. package/dist/esm/modules/session/constants.d.ts +3 -0
  94. package/dist/esm/modules/session/constants.js +4 -0
  95. package/dist/esm/modules/session/constants.js.map +1 -0
  96. package/dist/esm/modules/session/index.d.ts +6 -0
  97. package/dist/esm/modules/session/index.js +70 -0
  98. package/dist/esm/modules/session/index.js.map +1 -0
  99. package/dist/esm/modules/session/types/module.d.ts +5 -0
  100. package/dist/esm/modules/session/types/module.js +2 -0
  101. package/dist/esm/modules/session/types/module.js.map +1 -0
  102. package/dist/esm/types/Primitives.d.ts +1 -0
  103. package/dist/release.txt +2 -2
  104. package/dist/umd/device-sardine.js +1 -1
  105. package/dist/umd/oneSdk.umd.js +1 -1
  106. package/dist/umd/oneSdk.umd.js.map +1 -1
  107. package/dist/version.txt +2 -2
  108. package/package.json +12 -9
  109. package/dist/esm/modules/common/modules/runIfWhen.js.map +0 -1
  110. package/dist/esm/modules/common/types/Session.d.ts +0 -16
  111. package/dist/esm/modules/common/types/Session.js +0 -2
  112. package/dist/esm/modules/common/types/Session.js.map +0 -1
@@ -10,7 +10,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  import { Applicant } from "../../common/shared/models/Applicant";
11
11
  import { CheckSummary } from "../../common/shared/models/CheckSummary";
12
12
  import { Document } from "../../common/shared/models/Document";
13
- import { hasEntityId } from "../../common/types/Session";
14
13
  import { BaseClient } from "./BaseClient";
15
14
  /**
16
15
  * Applicant client handles BFF Applicant and Document Operations
@@ -23,7 +22,7 @@ export class ApplicantClient extends BaseClient {
23
22
  * A search made using entityId HAS to be successful, since the entity id already exists. If not found, throw exception
24
23
  * A search made using reference doesn't need to return results, as it might be a
25
24
  */
26
- const { reference, entityId } = this.entityIdentifier;
25
+ const { reference, entityId } = this;
27
26
  const data = yield this.frankie
28
27
  .get("/data/v2/applicant/", {
29
28
  params: {
@@ -59,11 +58,10 @@ export class ApplicantClient extends BaseClient {
59
58
  updateApplicant(payload) {
60
59
  return __awaiter(this, void 0, void 0, function* () {
61
60
  const { applicant, documents } = payload;
62
- if (!hasEntityId(this.entityIdentifier))
61
+ if (!this.entityId)
63
62
  throw new Error("Entity id not found in local state. Has entity been created yet?");
64
- const { entityId } = this.entityIdentifier;
65
63
  return this.frankie
66
- .put(`/data/v2/applicants/${entityId}`, {
64
+ .put(`/data/v2/applicants/${this.entityId}`, {
67
65
  applicant,
68
66
  documents,
69
67
  kycMethod: "electronic",
@@ -73,10 +71,9 @@ export class ApplicantClient extends BaseClient {
73
71
  }
74
72
  getLatestCheckResults() {
75
73
  return __awaiter(this, void 0, void 0, function* () {
76
- if (!hasEntityId(this.entityIdentifier))
74
+ if (!this.entityId)
77
75
  throw new Error("Entity id not found in local state. Has entity been created yet?");
78
- const { entityId } = this.entityIdentifier;
79
- return yield this.frankie.get(`/data/v2/applicants/${entityId}`).then((r) => {
76
+ return yield this.frankie.get(`/data/v2/applicants/${this.entityId}`).then((r) => {
80
77
  const { checkSummary } = r.data;
81
78
  return CheckSummary.fromJSON(checkSummary);
82
79
  });
@@ -84,10 +81,9 @@ export class ApplicantClient extends BaseClient {
84
81
  }
85
82
  triggerChecks() {
86
83
  return __awaiter(this, void 0, void 0, function* () {
87
- if (!hasEntityId(this.entityIdentifier))
84
+ if (!this.entityId)
88
85
  throw new Error("Entity id not found in local state. Has entity been created yet?");
89
- const { entityId } = this.entityIdentifier;
90
- yield this.frankie.post(`/data/v1/applicants/${entityId}/checks`);
86
+ yield this.frankie.post(`/data/v1/applicants/${this.entityId}/checks`);
91
87
  return this.getLatestCheckResults();
92
88
  });
93
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicantClient.js","sourceRoot":"","sources":["../../../../../modules/frankie-client/clients/ApplicantClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApplicantClient.js","sourceRoot":"","sources":["../../../../../modules/frankie-client/clients/ApplicantClient.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,8 @@
1
- import { ApplicantId } from "../../common/types/Session";
2
- import { ReadonlyDeep } from "type-fest";
3
1
  import { FrankieApiClient } from "../FrankieApiClient";
4
2
  export declare class BaseClient {
5
3
  protected frankie: FrankieApiClient;
6
4
  constructor(frankie: FrankieApiClient);
7
- get entityIdentifier(): ReadonlyDeep<ApplicantId>;
5
+ get reference(): string | null;
8
6
  get entityId(): string | null;
9
7
  set entityId(v: string | null);
10
8
  }
@@ -2,12 +2,13 @@ export class BaseClient {
2
2
  constructor(frankie) {
3
3
  this.frankie = frankie;
4
4
  }
5
- get entityIdentifier() {
6
- return Object.freeze(Object.assign({}, this.frankie.session));
5
+ get reference() {
6
+ var _a;
7
+ return (_a = this.frankie.session.reference) !== null && _a !== void 0 ? _a : null;
7
8
  }
8
9
  get entityId() {
9
10
  var _a;
10
- return (_a = this.entityIdentifier.entityId) !== null && _a !== void 0 ? _a : null;
11
+ return (_a = this.frankie.session.entityId) !== null && _a !== void 0 ? _a : null;
11
12
  }
12
13
  set entityId(v) {
13
14
  this.frankie.entityId = v;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseClient.js","sourceRoot":"","sources":["../../../../../modules/frankie-client/clients/BaseClient.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,UAAU;IACrB,YAAsB,OAAyB;QAAzB,YAAO,GAAP,OAAO,CAAkB;IAAG,CAAC;IAEnD,IAAI,gBAAgB;QAClB,OAAO,MAAM,CAAC,MAAM,mBAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAG,CAAC;IACpD,CAAC;IACD,IAAI,QAAQ;;QACV,OAAO,MAAC,IAAI,CAAC,gBAAiC,CAAC,QAAQ,mCAAI,IAAI,CAAC;IAClE,CAAC;IACD,IAAI,QAAQ,CAAC,CAAgB;QAC3B,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IAC5B,CAAC;CACF"}
1
+ {"version":3,"file":"BaseClient.js","sourceRoot":"","sources":["../../../../../modules/frankie-client/clients/BaseClient.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,UAAU;IACrB,YAAsB,OAAyB;QAAzB,YAAO,GAAP,OAAO,CAAkB;IAAG,CAAC;IAEnD,IAAI,SAAS;;QACX,OAAO,MAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,mCAAI,IAAI,CAAC;IAChD,CAAC;IACD,IAAI,QAAQ;;QACV,OAAO,MAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,mCAAI,IAAI,CAAC;IAC/C,CAAC;IACD,IAAI,QAAQ,CAAC,CAAgB;QAC3B,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IAC5B,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ import { Vendor } from "../../federation/constants";
2
+ import { BaseClient } from "./BaseClient";
3
+ export declare class FederationClient extends BaseClient {
4
+ provideAuthorisation(provider: Vendor, authCode: string): Promise<AuthorisationPayload>;
5
+ submitCachedData(): Promise<unknown>;
6
+ }
7
+ declare type AuthorisationPayload = {
8
+ individual: object;
9
+ status: string;
10
+ };
11
+ export {};
@@ -0,0 +1,24 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { BaseClient } from "./BaseClient";
11
+ export class FederationClient extends BaseClient {
12
+ provideAuthorisation(provider, authCode) {
13
+ return __awaiter(this, void 0, void 0, function* () {
14
+ // TODO: This whole method
15
+ return yield this.frankie
16
+ .get(`/federation/v1/callback/${provider}?authCode=${authCode}`)
17
+ .then((d) => d.data);
18
+ });
19
+ }
20
+ submitCachedData() {
21
+ return this.frankie.post("/federation/v1/singpass/entity").then((d) => d.data);
22
+ }
23
+ }
24
+ //# sourceMappingURL=FederationClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FederationClient.js","sourceRoot":"","sources":["../../../../../modules/frankie-client/clients/FederationClient.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,OAAO,gBAAiB,SAAQ,UAAU;IACxC,oBAAoB,CAAC,QAAgB,EAAE,QAAgB;;YAC3D,0BAA0B;YAC1B,OAAO,MAAM,IAAI,CAAC,OAAO;iBACtB,GAAG,CAAuB,2BAA2B,QAAQ,aAAa,QAAQ,EAAE,CAAC;iBACrF,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;KAAA;IACD,gBAAgB;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACjF,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * May be used to abstract quick storage. May be implemented as a wrapper for LocalStorage
3
+ * OR as a wrapper for a backend API which stores temporary data in redis
4
+ */
5
+ import { BaseClient } from "./BaseClient";
6
+ export declare class StorageClient extends BaseClient {
7
+ store(key: string, value: unknown): void;
8
+ retrieve<Type>(key: string): Type;
9
+ retrieveAndDelete<Type>(key: string): Type;
10
+ }
@@ -0,0 +1,23 @@
1
+ /**
2
+ * May be used to abstract quick storage. May be implemented as a wrapper for LocalStorage
3
+ * OR as a wrapper for a backend API which stores temporary data in redis
4
+ */
5
+ import { BaseClient } from "./BaseClient";
6
+ export class StorageClient extends BaseClient {
7
+ store(key, value) {
8
+ window.localStorage.setItem(key, JSON.stringify(value));
9
+ }
10
+ retrieve(key) {
11
+ // May fail parsing and throw exception
12
+ const value = window.localStorage.getItem(key);
13
+ if (!value)
14
+ return null;
15
+ return JSON.parse(value);
16
+ }
17
+ retrieveAndDelete(key) {
18
+ const value = this.retrieve(key);
19
+ window.localStorage.removeItem(key);
20
+ return value;
21
+ }
22
+ }
23
+ //# sourceMappingURL=StorageClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StorageClient.js","sourceRoot":"","sources":["../../../../../modules/frankie-client/clients/StorageClient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,OAAO,aAAc,SAAQ,UAAU;IAC3C,KAAK,CAAC,GAAW,EAAE,KAAc;QAC/B,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ,CAAO,GAAW;QACxB,uCAAuC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,iBAAiB,CAAO,GAAW;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAO,GAAG,CAAC,CAAC;QACvC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
@@ -1,9 +1,15 @@
1
1
  import { EventHub } from "../common";
2
2
  import { GlobalEvents, OneSdkRootParameters } from "../sdk/types";
3
+ import { SessionContext } from "../session/SessionContext";
3
4
  import { DummyFrankieApiClient } from "./DummyFrankieApiClient";
4
5
  import { FrankieApiClient } from "./FrankieApiClient";
5
- declare type Options = Pick<OneSdkRootParameters, "mode" | "session"> & {
6
+ declare type Mode = OneSdkRootParameters["mode"];
7
+ declare type Options<Validate extends boolean = true> = {
6
8
  globalEventHub: EventHub<GlobalEvents>;
9
+ mode: Mode;
10
+ session: SessionContext;
11
+ validateToken?: Validate;
7
12
  };
8
- export declare function mkFrankieClient(options: Options): Promise<FrankieApiClient>;
13
+ export declare function mkFrankieClient(options: Options<false>): FrankieApiClient;
14
+ export declare function mkFrankieClient(options: Options<true>): Promise<FrankieApiClient>;
9
15
  export { FrankieApiClient, DummyFrankieApiClient };
@@ -1,13 +1,5 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { SdkModes } from "../sdk/types";
2
+ import { resolveMode } from "../sdk/initialisation/configurationParser";
11
3
  import { Status } from "./clients/OCRClient";
12
4
  import { DummyFrankieApiClient } from "./DummyFrankieApiClient";
13
5
  import { FrankieApiClient } from "./FrankieApiClient";
@@ -22,30 +14,29 @@ const defaultMockOptions = {
22
14
  statusResults: [Status.WAITING_BACK, Status.DOCUMENTS_INVALID, Status.COMPLETE],
23
15
  },
24
16
  };
25
- const isDummy = (mode) => (typeof mode === "string" ? mode : mode.modeName);
26
17
  export function mkFrankieClient(options) {
27
- var _a;
28
- return __awaiter(this, void 0, void 0, function* () {
29
- if (isDummy(options.mode) === SdkModes.DUMMY) {
30
- // initialise dummy client with optional token
31
- const dummyClient = new DummyFrankieApiClient(Object.assign(Object.assign({}, options), { defaultDelay: 200 }));
32
- if ((_a = options.session) === null || _a === void 0 ? void 0 : _a.token)
33
- dummyClient.setToken(options.session.token);
34
- // resolve mock options either from mode: { options } or if mode: "dummy", then use default mock options
35
- const simplifiedMockOptions = typeof options.mode === "string" ? defaultMockOptions : options.mode.mocks;
36
- const mockOptions = resolveSimplifiedMockOptions(simplifiedMockOptions);
37
- console.debug("Resolved mock options", {
38
- mockOptions,
39
- resultingMockedRequests: mockOptions,
40
- });
41
- // inject mocked flow to dummy client
42
- return mockFlow(dummyClient, mockOptions);
43
- }
44
- // if not in dummy mode, simply initialise the regular api client with the provided token
45
- const client = new FrankieApiClient();
46
- yield client.setToken(options.session.token, { checkValidity: true });
47
- return client;
48
- });
18
+ if (resolveMode(options).modeName === SdkModes.DUMMY) {
19
+ // initialise dummy client with optional token
20
+ const dummyClient = new DummyFrankieApiClient(Object.assign(Object.assign({}, options), { defaultDelay: 200 }));
21
+ dummyClient.session = options.session;
22
+ // resolve mock options either from mode: { options } or if mode: "dummy", then use default mock options
23
+ const simplifiedMockOptions = typeof options.mode === "string" ? defaultMockOptions : options.mode.mocks;
24
+ const mockOptions = resolveSimplifiedMockOptions(simplifiedMockOptions);
25
+ console.debug("Resolved mock options", {
26
+ mockOptions,
27
+ resultingMockedRequests: mockOptions,
28
+ });
29
+ // inject mocked flow to dummy client
30
+ return mockFlow(dummyClient, mockOptions);
31
+ }
32
+ // if not in dummy mode, simply initialise the regular api client with the provided token
33
+ const client = new FrankieApiClient();
34
+ client.session = options.session;
35
+ // This function is only synchronous if options.validateToken is explicitly false
36
+ const { validateToken = true } = options;
37
+ if (validateToken)
38
+ return client.validateSession().then(() => client);
39
+ return client;
49
40
  }
50
41
  export { FrankieApiClient, DummyFrankieApiClient };
51
42
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../modules/frankie-client/index.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAsC,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAe,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,4BAA4B,EAAyB,MAAM,oBAAoB,CAAC;AAEzF,MAAM,kBAAkB,GAA0B;IAChD,mBAAmB,EAAE;QACnB,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;KAChD;IACD,OAAO,EAAE;QACP,YAAY,EAAE,iBAAiB;QAC/B,aAAa,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC;KAChF;CACF,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,IAAU,EAAE,EAAE,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAGlF,MAAM,UAAgB,eAAe,CAAC,OAAgB;;;QACpD,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,KAAK,EAAE;YAC5C,8CAA8C;YAC9C,MAAM,WAAW,GAAG,IAAI,qBAAqB,iCAAM,OAAO,KAAE,YAAY,EAAE,GAAG,IAAG,CAAC;YACjF,IAAI,MAAA,OAAO,CAAC,OAAO,0CAAE,KAAK;gBAAE,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACxE,wGAAwG;YACxG,MAAM,qBAAqB,GACzB,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YAC7E,MAAM,WAAW,GAAgB,4BAA4B,CAAC,qBAAqB,CAAC,CAAC;YACrF,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE;gBACrC,WAAW;gBACX,uBAAuB,EAAE,WAAW;aACrC,CAAC,CAAC;YACH,qCAAqC;YACrC,OAAO,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;SAC3C;QACD,yFAAyF;QACzF,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACtC,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACtE,OAAO,MAAM,CAAC;;CACf;AACD,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../modules/frankie-client/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAsC,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAExE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAe,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,4BAA4B,EAAyB,MAAM,oBAAoB,CAAC;AAEzF,MAAM,kBAAkB,GAA0B;IAChD,mBAAmB,EAAE;QACnB,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;KAChD;IACD,OAAO,EAAE;QACP,YAAY,EAAE,iBAAiB;QAC/B,aAAa,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC;KAChF;CACF,CAAC;AAWF,MAAM,UAAU,eAAe,CAAC,OAAyB;IACvD,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,KAAK,EAAE;QACpD,8CAA8C;QAC9C,MAAM,WAAW,GAAG,IAAI,qBAAqB,iCAAM,OAAO,KAAE,YAAY,EAAE,GAAG,IAAG,CAAC;QACjF,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QACtC,wGAAwG;QACxG,MAAM,qBAAqB,GACzB,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAC7E,MAAM,WAAW,GAAgB,4BAA4B,CAAC,qBAAqB,CAAC,CAAC;QACrF,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE;YACrC,WAAW;YACX,uBAAuB,EAAE,WAAW;SACrC,CAAC,CAAC;QACH,qCAAqC;QACrC,OAAO,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;KAC3C;IACD,yFAAyF;IACzF,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;IACtC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAEjC,iFAAiF;IACjF,MAAM,EAAE,aAAa,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IACzC,IAAI,aAAa;QAAE,OAAO,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC;IACtE,OAAO,MAAM,CAAC;AAChB,CAAC;AACD,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { DummyFrankieApiClient } from "../../../frankie-client";
2
+ export declare function skipFederationLogin(client: DummyFrankieApiClient): void;
3
+ export declare function successfulDataFetching(client: DummyFrankieApiClient): void;
4
+ export declare function successfulConfirmation(client: DummyFrankieApiClient): void;
@@ -0,0 +1,32 @@
1
+ import { singpassURLs } from "../../../federation/vendors/Singpass";
2
+ import { v4 as uuid } from "uuid";
3
+ import { QUERY_PARAM, URL_PARAM } from "../../DummyFrankieApiClient";
4
+ export function skipFederationLogin(client) {
5
+ client.stubResponse({ url: /.+/, method: "redirect" }, (url) => {
6
+ const authCode = uuid();
7
+ if (Object.values(singpassURLs).some((u) => u.includes(url.hostname))) {
8
+ const newUrl = new URL(window.location.href);
9
+ newUrl.searchParams.append("code", authCode);
10
+ newUrl.searchParams.append("state", url.searchParams.get("state"));
11
+ return newUrl;
12
+ }
13
+ return null;
14
+ });
15
+ }
16
+ export function successfulDataFetching(client) {
17
+ client.stubResponse({ url: new RegExp(`/federation/v1/callback/${URL_PARAM}\\?authCode=${QUERY_PARAM}`), method: "get" }, (data) => ({
18
+ title: `Get data from '${data.urlMatch[1]}'`,
19
+ status: 200,
20
+ data: {
21
+ individual: { name: { givenName: "Dummy name", familyName: "Family" }, addresses: [], documents: {} },
22
+ status: "STATUS_OK",
23
+ },
24
+ }));
25
+ }
26
+ export function successfulConfirmation(client) {
27
+ client.stubResponse({ url: "/federation/v1/singpass/entity", method: "post" }, {
28
+ title: "Confirming federation data",
29
+ status: 201,
30
+ });
31
+ }
32
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../modules/frankie-client/mocks/federation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAEnE,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAErE,MAAM,UAAU,mBAAmB,CAAC,MAA6B;IAC/D,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;QAC7D,MAAM,QAAQ,GAAG,IAAI,EAAE,CAAC;QAExB,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE;YACrE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC7C,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC7C,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;YACnE,OAAO,MAAM,CAAC;SACf;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAA6B;IAClE,MAAM,CAAC,YAAY,CACjB,EAAE,GAAG,EAAE,IAAI,MAAM,CAAC,2BAA2B,SAAS,eAAe,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EACpG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACT,KAAK,EAAE,kBAAkB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG;QAC5C,MAAM,EAAE,GAAG;QACX,IAAI,EAAE;YACJ,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;YACrG,MAAM,EAAE,WAAW;SACpB;KACF,CAAC,CACH,CAAC;AACJ,CAAC;AACD,MAAM,UAAU,sBAAsB,CAAC,MAA6B;IAClE,MAAM,CAAC,YAAY,CACjB,EAAE,GAAG,EAAE,gCAAgC,EAAE,MAAM,EAAE,MAAM,EAAE,EACzD;QACE,KAAK,EAAE,4BAA4B;QACnC,MAAM,EAAE,GAAG;KACZ,CACF,CAAC;AACJ,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { generateIDVToken, initIDVProcess, initSynchronousIDVProcess } from "./biometrics/idvSubmission";
2
+ import { skipFederationLogin, successfulConfirmation, successfulDataFetching } from "./federation";
2
3
  import { applicantNotFound, loadExistingApplicant, loadSuccessfulCheckResults, } from "./individual/loadIndividual";
3
4
  import { submitSuccessfulData, successfulVerification } from "./individual/submitData";
4
5
  import { loadConfiguration } from "./initialisation/loadConfiguration";
@@ -21,6 +22,9 @@ export function mockFlow(client, options) {
21
22
  generateIDVToken(client);
22
23
  initIDVProcess(client);
23
24
  initSynchronousIDVProcess(client);
25
+ skipFederationLogin(client);
26
+ successfulDataFetching(client);
27
+ successfulConfirmation(client);
24
28
  return client;
25
29
  }
26
30
  const hasPreloadedIndividual = (options) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../modules/frankie-client/mocks/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACzG,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,0BAA0B,GAE3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAA6B,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,UAAU,QAAQ,CAAC,MAA6B,EAAE,OAAoB;IAC1E,aAAa,CAAC,MAAM,CAAC,CAAC;IACtB,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1B,aAAa,CAAC,MAAM,CAAC,CAAC;IAEtB,IAAI,sBAAsB,CAAC,OAAO,CAAC;QAAE,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;;QACvE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAE/B,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC7B,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACnC,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAE/B,IAAI,aAAa,CAAC,OAAO,CAAC;QAAE,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEvD,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzB,cAAc,CAAC,MAAM,CAAC,CAAC;IACvB,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAElC,OAAO,MAAM,CAAC;AAChB,CAAC;AACD,MAAM,sBAAsB,GAAG,CAC7B,OAAoB,EAC4D,EAAE;IAClF,OAAO,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC9C,CAAC,CAAC;AACF,MAAM,aAAa,GAAG,CACpB,OAAoB,EAC2D,EAAE;IACjF,OAAO,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AACtC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../modules/frankie-client/mocks/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACzG,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACnG,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,0BAA0B,GAE3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAA6B,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,UAAU,QAAQ,CAAC,MAA6B,EAAE,OAAoB;IAC1E,aAAa,CAAC,MAAM,CAAC,CAAC;IACtB,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1B,aAAa,CAAC,MAAM,CAAC,CAAC;IAEtB,IAAI,sBAAsB,CAAC,OAAO,CAAC;QAAE,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;;QACvE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAE/B,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC7B,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACnC,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAE/B,IAAI,aAAa,CAAC,OAAO,CAAC;QAAE,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEvD,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzB,cAAc,CAAC,MAAM,CAAC,CAAC;IACvB,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAElC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC5B,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC/B,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAE/B,OAAO,MAAM,CAAC;AAChB,CAAC;AACD,MAAM,sBAAsB,GAAG,CAC7B,OAAoB,EAC4D,EAAE;IAClF,OAAO,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC9C,CAAC,CAAC;AACF,MAAM,aAAa,GAAG,CACpB,OAAoB,EAC2D,EAAE;IACjF,OAAO,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AACtC,CAAC,CAAC"}
@@ -10,7 +10,7 @@ export declare type Options = {
10
10
  declare type MockOptions = MockOptionsPartial & {
11
11
  preloadedIndividual: Options;
12
12
  };
13
- export declare function resolveIndividualDdata(options: Options): {
13
+ export declare function resolveIndividualData(options: Options): {
14
14
  individual: Applicant & {
15
15
  name: {
16
16
  givenName: string;
@@ -4,7 +4,7 @@ import { Document } from "../../../common/shared/models/Document";
4
4
  import merge from "lodash.merge";
5
5
  import { v4 as uuid } from "uuid";
6
6
  import { URL_PARAM } from "../../DummyFrankieApiClient";
7
- export function resolveIndividualDdata(options) {
7
+ export function resolveIndividualData(options) {
8
8
  var _a, _b;
9
9
  return {
10
10
  individual: merge(new Applicant(), {
@@ -22,7 +22,7 @@ export function resolveIndividualDdata(options) {
22
22
  };
23
23
  }
24
24
  export function loadExistingApplicant(client, options) {
25
- const { individual, documents } = resolveIndividualDdata(options.preloadedIndividual);
25
+ const { individual, documents } = resolveIndividualData(options.preloadedIndividual);
26
26
  client.stubResponse({ url: "/data/v2/applicant", method: "get" }, (config) => {
27
27
  if (config.params.entityId)
28
28
  individual.entityId = config.params.entityId;
@@ -1 +1 @@
1
- {"version":3,"file":"loadIndividual.js","sourceRoot":"","sources":["../../../../../../modules/frankie-client/mocks/individual/loadIndividual.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadIndividual.js","sourceRoot":"","sources":["../../../../../../modules/frankie-client/mocks/individual/loadIndividual.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,34 @@
1
1
  import * as utils from "./common";
2
+ import { ENVIRONMENTS } from "./common";
2
3
  import { FrankieApiClient } from "./frankie-client";
3
4
  import { SdkModes } from "./sdk/types";
4
5
  /**
5
6
  * Explicitly Export types (with type-only exports) and enums (without "type") at the root when importing into a typescript project via npm
6
7
  * https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-8.html#type-only-imports-and-export
7
8
  */
8
- export { ENVIRONMENTS } from "./common";
9
9
  export type { Accessors, mkEventHub, ReadonlyAccessors } from "./common";
10
10
  export type { CheckSummary } from "./common/shared/models/CheckSummary";
11
11
  export type { DeviceModule, DeviceModuleContext as DeviceModuleContext, Events as DeviceModuleEvents, } from "./device";
12
- export type { FrankieApiClient } from "./frankie-client";
12
+ export { DummyFrankieApiClient, FrankieApiClient } from "./frankie-client";
13
13
  export { Status as OCRStatus } from "./ocr";
14
14
  export type { OneSdkContext, OneSdkRootParameters as OneSdkConfiguration } from "./sdk";
15
- export { SdkModes as SdkMode };
15
+ export { SdkModes as SdkMode, ENVIRONMENTS as Environments };
16
+ export { OneSDK };
17
+ /**
18
+ * The default export of the OneSDK, also exposed as a named variable `OneSDK`.
19
+ * It is an asynchronous function that returns a Promise of the OneSdkContext,
20
+ * which is essentially an instance of the OneSDK.
21
+ * (options: OneSdkRootParameters) => Promise<OneSdkContext>
22
+ *
23
+ * This default export also contains utilities attached to it, such as the `modes` enum.
24
+ * @param {OneSdkRootParameters} options
25
+ * @returns {Promise<OneSdkContext>} Promise of an Instance of OneSDK
26
+ */
16
27
  declare const OneSDK: ((p: import("./sdk").OneSdkRootParameters) => Promise<import("./sdk").OneSdkContext>) & {
17
28
  FrankieApiClient: typeof FrankieApiClient;
18
29
  utils: typeof utils;
19
30
  modes: typeof SdkModes;
31
+ environments: typeof utils.ENVIRONMENTS;
20
32
  version: string;
21
33
  };
22
34
  export default OneSDK;
@@ -1,23 +1,32 @@
1
1
  import * as utils from "./common";
2
+ import { ENVIRONMENTS } from "./common";
2
3
  import { FrankieApiClient } from "./frankie-client";
3
4
  import packageMeta from "./meta.json";
4
5
  import { oneSdk } from "./sdk";
5
6
  import { SdkModes } from "./sdk/types";
6
- /**
7
- * Explicitly Export types (with type-only exports) and enums (without "type") at the root when importing into a typescript project via npm
8
- * https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-8.html#type-only-imports-and-export
9
- */
10
- export { ENVIRONMENTS } from "./common";
7
+ export { DummyFrankieApiClient, FrankieApiClient } from "./frankie-client";
11
8
  export { Status as OCRStatus } from "./ocr";
12
- export { SdkModes as SdkMode };
9
+ export { SdkModes as SdkMode, ENVIRONMENTS as Environments };
13
10
  // Exported OneSdk object
14
- // Via CDN, it will be available globally as [window.]OneSdk
15
- // OneSdk is a function, but also contains the objects
16
- // FrankieApiClient and utils
11
+ // Either named as OneSDK or as a default export, which when loaded via CDN
12
+ // The UMD build will attach the default export to the global window object as [window.]OneSdk
13
+ // You'll find extra descriptions in the JSDoc below
14
+ export { OneSDK };
15
+ /**
16
+ * The default export of the OneSDK, also exposed as a named variable `OneSDK`.
17
+ * It is an asynchronous function that returns a Promise of the OneSdkContext,
18
+ * which is essentially an instance of the OneSDK.
19
+ * (options: OneSdkRootParameters) => Promise<OneSdkContext>
20
+ *
21
+ * This default export also contains utilities attached to it, such as the `modes` enum.
22
+ * @param {OneSdkRootParameters} options
23
+ * @returns {Promise<OneSdkContext>} Promise of an Instance of OneSDK
24
+ */
17
25
  const OneSDK = Object.assign(oneSdk.initialise, {
18
26
  FrankieApiClient,
19
27
  utils,
20
28
  modes: SdkModes,
29
+ environments: ENVIRONMENTS,
21
30
  version: packageMeta.version,
22
31
  });
23
32
  // eslint-disable-next-line import/no-default-export
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../modules/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC;;;GAGG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAS9C,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,QAAQ,IAAI,OAAO,EAAE,CAAC;AAC/B,yBAAyB;AACzB,4DAA4D;AAC5D,sDAAsD;AACtD,6BAA6B;AAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE;IAC9C,gBAAgB;IAChB,KAAK;IACL,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,WAAW,CAAC,OAAO;CAC7B,CAAC,CAAC;AACH,oDAAoD;AACpD,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../modules/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAYvC,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,QAAQ,IAAI,OAAO,EAAE,YAAY,IAAI,YAAY,EAAE,CAAC;AAC7D,yBAAyB;AACzB,2EAA2E;AAC3E,8FAA8F;AAC9F,oDAAoD;AACpD,OAAO,EAAE,MAAM,EAAE,CAAC;AAClB;;;;;;;;;GASG;AACH,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE;IAC9C,gBAAgB;IAChB,KAAK;IACL,KAAK,EAAE,QAAQ;IACf,YAAY,EAAE,YAAY;IAC1B,OAAO,EAAE,WAAW,CAAC,OAAO;CAC7B,CAAC,CAAC;AACH,oDAAoD;AACpD,eAAe,MAAM,CAAC"}
@@ -9,7 +9,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { OneSDKError } from "../../common";
11
11
  import { Applicant } from "../../common/shared/models/Applicant";
12
- import { hasEntityId } from "../../common/types/Session";
13
12
  import { Profile } from "../../common/shared/models/Profile";
14
13
  export const mkSearchMethod = (deps) => () => __awaiter(void 0, void 0, void 0, function* () {
15
14
  const { client, eventHub, state$, recipeName } = deps;
@@ -23,8 +22,8 @@ export const mkSearchMethod = (deps) => () => __awaiter(void 0, void 0, void 0,
23
22
  hasLoaded = true;
24
23
  }
25
24
  catch (e) {
26
- if (hasEntityId(client.entityIdentifier)) {
27
- const errorMessage = `Critical error! There was an issue loading the individual's details. Is the entityId (${client.entityIdentifier.entityId}) used to create this session valid?`;
25
+ if (client.entityId) {
26
+ const errorMessage = `Critical error! There was an issue loading the individual's details. Is the entityId (${client.entityId}) used to create this session valid?`;
28
27
  eventHub.emit("error", new OneSDKError(errorMessage, e));
29
28
  hasLoaded = false;
30
29
  throw new Error(errorMessage);
@@ -35,7 +34,7 @@ export const mkSearchMethod = (deps) => () => __awaiter(void 0, void 0, void 0,
35
34
  documents = [];
36
35
  const profile = new Profile(recipeName, "electronic");
37
36
  applicant.profile = profile;
38
- applicant.customerReference = client.entityIdentifier.reference;
37
+ applicant.customerReference = client.reference;
39
38
  }
40
39
  }
41
40
  const isPreloaded = Boolean(applicant === null || applicant === void 0 ? void 0 : applicant.entityId);
@@ -46,6 +45,6 @@ export const mkSearchMethod = (deps) => () => __awaiter(void 0, void 0, void 0,
46
45
  isPreloaded,
47
46
  });
48
47
  if (hasLoaded)
49
- eventHub.emit("data_loaded", Object.assign(Object.assign({}, client.entityIdentifier), { isPreloaded }));
48
+ eventHub.emit("data_loaded", { entityId: client.entityId, reference: client.reference, isPreloaded });
50
49
  });
51
50
  //# sourceMappingURL=search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../../modules/individual/actions/search.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAY,WAAW,EAAiB,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAG7D,MAAM,CAAC,MAAM,cAAc,GACzB,CAAC,IAA+G,EAAE,EAAE,CACpH,GAAS,EAAE;IACT,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IACtD,IAAI,SAAS,GAAc,IAAI,CAAC;IAChC,IAAI,SAAS,GAAe,IAAI,CAAC;IACjC,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,IAAI;QACF,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAClC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAC5B,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAC5B,SAAS,GAAG,IAAI,CAAC;KAClB;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,WAAW,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE;YACxC,MAAM,YAAY,GAAG,yFAAyF,MAAM,CAAC,gBAAgB,CAAC,QAAQ,sCAAsC,CAAC;YACrL,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;YACzD,SAAS,GAAG,KAAK,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;SAC/B;aAAM;YACL,SAAS,GAAG,IAAI,CAAC;YACjB,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,SAAS,GAAG,EAAE,CAAC;YAEf,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YACtD,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;YAC5B,SAAS,CAAC,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC;SACjE;KACF;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,CAAC,CAAC;IACjD,MAAM,CAAC,IAAI,CAAC;QACV,SAAS;QACT,SAAS;QACT,SAAS;QACT,WAAW;KACZ,CAAC,CAAC;IACH,IAAI,SAAS;QAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,kCAAO,MAAM,CAAC,gBAAgB,KAAE,WAAW,IAAG,CAAC;AAC3F,CAAC,CAAA,CAAC"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../../modules/individual/actions/search.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAY,WAAW,EAAiB,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAGnE,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAG7D,MAAM,CAAC,MAAM,cAAc,GACzB,CAAC,IAA+G,EAAE,EAAE,CACpH,GAAS,EAAE;IACT,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IACtD,IAAI,SAAS,GAAc,IAAI,CAAC;IAChC,IAAI,SAAS,GAAe,IAAI,CAAC;IACjC,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,IAAI;QACF,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAClC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAC5B,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAC5B,SAAS,GAAG,IAAI,CAAC;KAClB;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,MAAM,CAAC,QAAQ,EAAE;YACnB,MAAM,YAAY,GAAG,yFAAyF,MAAM,CAAC,QAAQ,sCAAsC,CAAC;YACpK,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;YACzD,SAAS,GAAG,KAAK,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;SAC/B;aAAM;YACL,SAAS,GAAG,IAAI,CAAC;YACjB,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,SAAS,GAAG,EAAE,CAAC;YAEf,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YACtD,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;YAC5B,SAAS,CAAC,iBAAiB,GAAG,MAAM,CAAC,SAAS,CAAC;SAChD;KACF;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,CAAC,CAAC;IACjD,MAAM,CAAC,IAAI,CAAC;QACV,SAAS;QACT,SAAS;QACT,SAAS;QACT,WAAW;KACZ,CAAC,CAAC;IACH,IAAI,SAAS;QACX,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;AAC1G,CAAC,CAAA,CAAC"}
@@ -1,4 +1,4 @@
1
- import { ApplicantId } from "../../common/types/Session";
1
+ import { ApplicantId } from "../../session/SessionContext";
2
2
  export declare type Events = {
3
3
  data_loaded: [ApplicantId & {
4
4
  isPreloaded: boolean;
@@ -1 +1 @@
1
- { "version": "0.5.5-rc" }
1
+ { "version": "0.6.5-alpha" }
@@ -8,9 +8,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { Document } from "../../common/shared/models/Document";
11
- import { isCompleteStatus, isFailedStatus, isInputRequiredStatus, Status, } from "../../frankie-client/clients/OCRClient";
12
- import { filter, Subject, takeUntil, takeWhile } from "rxjs";
11
+ import { Status, isCompleteStatus, isFailedStatus, isInputRequiredStatus, } from "../../frankie-client/clients/OCRClient";
12
+ import { Subject, filter, takeUntil, takeWhile } from "rxjs";
13
13
  import { OneSDKError } from "../../common/errors/OneSDKError";
14
+ import { runOnce } from "../../common/modules/HOF";
14
15
  /**
15
16
  * Returns the start method called by customers to trigger the OCR flow
16
17
  * It first generates two observables by branching off the OCR's internal state variables
@@ -53,6 +54,7 @@ export const mkStartMethod = (deps) => () => __awaiter(void 0, void 0, void 0, f
53
54
  const subscriber = {
54
55
  next: (newStatus) => {
55
56
  // For each new status/failureStatus, trigger inputRequired part of the flow
57
+ // This callback is what implements the loops in the OCR Flow
56
58
  inputRequired(newStatus, depsWithManualInterrupt);
57
59
  },
58
60
  complete: () => {
@@ -71,9 +73,9 @@ export const mkStartMethod = (deps) => () => __awaiter(void 0, void 0, void 0, f
71
73
  // either continue a flow, or start a new one
72
74
  yield resetCurrentStatus(depsWithManualInterrupt);
73
75
  // register callbacks to each data stream
74
- // for status
76
+ // - for each new status, handle "error", "complete" and "next"/loop callbacks
75
77
  statusUntilComplete$.subscribe(subscriber);
76
- // for failed statuses
78
+ // - for each new failed statuses, only handle the "next"/loop callback
77
79
  failedStatusExceptNull$.subscribe(subscriber.next);
78
80
  // expose interruptOCR() to allow interruption of an active flow, which unregister all listeners
79
81
  return {
@@ -180,16 +182,6 @@ export const inputRequired = (status, deps) => {
180
182
  const provideFile = mkProvideFile(deps);
181
183
  eventHub.emit("input_required", info, status, runOnce(provideFile, message));
182
184
  };
183
- const runOnce = (func, errorMessage) => {
184
- let wasCalled = false;
185
- return ((...args) => {
186
- if (wasCalled)
187
- throw new Error(errorMessage);
188
- const result = func(...args);
189
- wasCalled = true;
190
- return result;
191
- });
192
- };
193
185
  export const mkProvideFile = (deps) => (file) => {
194
186
  const { files$, document$, client } = deps;
195
187
  if (!file.type)