@elliemae/pui-app-sdk 5.22.0-beta.2 → 5.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/dist/cjs/analytics/index.js +1 -2
  2. package/dist/cjs/api/users/index.js +6 -4
  3. package/dist/cjs/data/auth/actions.js +10 -2
  4. package/dist/cjs/index.js +0 -3
  5. package/dist/cjs/utils/auth/index.js +8 -5
  6. package/dist/cjs/utils/decorators/functionDecorators.js +6 -1
  7. package/dist/cjs/utils/micro-frontend/guest.js +14 -101
  8. package/dist/cjs/{view/tests/scriptingObjects/constant.js → utils/micro-frontend/host-app.js} +10 -5
  9. package/dist/cjs/utils/micro-frontend/host.js +3 -36
  10. package/dist/cjs/utils/micro-frontend/scripting-objects/analytics.js +14 -8
  11. package/dist/cjs/{view/tests/utils.js → utils/micro-frontend/ssfguest-adapter.js} +29 -34
  12. package/dist/cjs/utils/testing/index.js +1 -15
  13. package/dist/cjs/view/login/index.js +4 -3
  14. package/dist/cjs/view/micro-iframe-app/iframe/index.js +1 -1
  15. package/dist/cjs/view/micro-iframe-app/iframe.html +1 -5
  16. package/dist/cjs/view/micro-iframe-app/use-frame-loaded.js +1 -3
  17. package/dist/cjs/view/require-auth.js +12 -2
  18. package/dist/esm/analytics/index.js +1 -2
  19. package/dist/esm/api/users/index.js +6 -4
  20. package/dist/esm/data/auth/actions.js +10 -2
  21. package/dist/esm/index.js +1 -7
  22. package/dist/esm/utils/auth/index.js +8 -5
  23. package/dist/esm/utils/decorators/functionDecorators.js +6 -1
  24. package/dist/esm/utils/micro-frontend/guest.js +14 -101
  25. package/dist/esm/utils/micro-frontend/host-app.js +9 -0
  26. package/dist/esm/utils/micro-frontend/host.js +3 -36
  27. package/dist/esm/utils/micro-frontend/scripting-objects/analytics.js +4 -8
  28. package/dist/esm/utils/micro-frontend/ssfguest-adapter.js +28 -0
  29. package/dist/esm/utils/testing/index.js +1 -5
  30. package/dist/esm/view/login/index.js +4 -3
  31. package/dist/esm/view/micro-iframe-app/iframe/index.js +1 -1
  32. package/dist/esm/view/micro-iframe-app/iframe.html +1 -5
  33. package/dist/esm/view/micro-iframe-app/use-frame-loaded.js +1 -3
  34. package/dist/esm/view/require-auth.js +12 -2
  35. package/dist/types/lib/api/users/index.d.ts +2 -1
  36. package/dist/types/lib/data/auth/actions.d.ts +2 -1
  37. package/dist/types/lib/index.d.ts +1 -2
  38. package/dist/types/lib/utils/auth/index.d.ts +4 -2
  39. package/dist/types/lib/utils/micro-frontend/guest.d.ts +11 -46
  40. package/dist/types/lib/utils/micro-frontend/host-app.d.ts +11 -0
  41. package/dist/types/lib/utils/micro-frontend/host.d.ts +10 -27
  42. package/dist/types/lib/utils/micro-frontend/scripting-objects/analytics.d.ts +5 -8
  43. package/dist/types/lib/utils/micro-frontend/ssfguest-adapter.d.ts +7 -0
  44. package/dist/types/lib/utils/micro-frontend/types.d.ts +1 -2
  45. package/dist/types/lib/utils/testing/index.d.ts +1 -57
  46. package/dist/types/lib/utils/window.d.ts +6 -13
  47. package/dist/types/lib/view/login/index.d.ts +2 -1
  48. package/dist/types/lib/view/micro-app/index.d.ts +0 -5
  49. package/dist/types/lib/view/micro-iframe-app/index.d.ts +0 -5
  50. package/dist/types/lib/view/require-auth.d.ts +2 -1
  51. package/dist/types/tsconfig.tsbuildinfo +1 -1
  52. package/package.json +44 -44
  53. package/dist/cjs/utils/micro-frontend/app-bridge.js +0 -38
  54. package/dist/cjs/utils/micro-frontend/tests/app.config.json +0 -200
  55. package/dist/cjs/utils/micro-frontend/tests/utils.js +0 -116
  56. package/dist/cjs/view/guest-microapp.js +0 -126
  57. package/dist/cjs/view/tests/__snapshots__/guest-microapp.test.tsx.snap +0 -21
  58. package/dist/cjs/view/tests/__snapshots__/micro-iframe-app.test.tsx.snap +0 -208
  59. package/dist/cjs/view/tests/app.config.json +0 -200
  60. package/dist/cjs/view/tests/constants.js +0 -44
  61. package/dist/cjs/view/tests/flights/23.1/app.checksum1.css +0 -3
  62. package/dist/cjs/view/tests/flights/23.1/app.checksum1.js +0 -52
  63. package/dist/cjs/view/tests/flights/23.1/manifest.json +0 -4
  64. package/dist/cjs/view/tests/flights/latest/app.checksum.css +0 -3
  65. package/dist/cjs/view/tests/flights/latest/app.checksum.js +0 -52
  66. package/dist/cjs/view/tests/flights/latest/manifest.json +0 -4
  67. package/dist/cjs/view/tests/hotels/23.1/app.checksum.css +0 -3
  68. package/dist/cjs/view/tests/hotels/23.1/app.checksum.js +0 -52
  69. package/dist/cjs/view/tests/hotels/23.1/manifest.json +0 -4
  70. package/dist/cjs/view/tests/hotels/latest/app.checksum.css +0 -3
  71. package/dist/cjs/view/tests/hotels/latest/app.checksum.js +0 -52
  72. package/dist/cjs/view/tests/hotels/latest/manifest.json +0 -4
  73. package/dist/cjs/view/tests/loan/latest/index.js +0 -116
  74. package/dist/cjs/view/tests/loan/latest/manifest.json +0 -3
  75. package/dist/cjs/view/tests/scriptingObjects/appraisalServiceModule.js +0 -81
  76. package/dist/cjs/view/tests/scriptingObjects/global.js +0 -40
  77. package/dist/cjs/view/tests/scriptingObjects/loan.js +0 -200
  78. package/dist/cjs/view/tests/server.js +0 -29
  79. package/dist/cjs/view/tests/serverHandlers.js +0 -210
  80. package/dist/cjs/view/tests/task/latest/index.dev.js +0 -67
  81. package/dist/cjs/view/tests/task/latest/index.js +0 -67
  82. package/dist/cjs/view/tests/task/latest/manifest.json +0 -4
  83. package/dist/cjs/view/tests/travelhub/23.1/app.checksum.css +0 -3
  84. package/dist/cjs/view/tests/travelhub/23.1/app.checksum.js +0 -25
  85. package/dist/cjs/view/tests/travelhub/23.1/landing.checksum1.css +0 -3
  86. package/dist/cjs/view/tests/travelhub/23.1/landing.checksum1.js +0 -6
  87. package/dist/cjs/view/tests/travelhub/23.1/manifest.json +0 -6
  88. package/dist/cjs/view/tests/travelhub/latest/app.checksum.css +0 -3
  89. package/dist/cjs/view/tests/travelhub/latest/app.checksum.js +0 -30
  90. package/dist/cjs/view/tests/travelhub/latest/landing.checksum.css +0 -3
  91. package/dist/cjs/view/tests/travelhub/latest/landing.checksum.js +0 -8
  92. package/dist/cjs/view/tests/travelhub/latest/manifest.json +0 -6
  93. package/dist/esm/utils/micro-frontend/app-bridge.js +0 -18
  94. package/dist/esm/utils/micro-frontend/tests/app.config.json +0 -200
  95. package/dist/esm/utils/micro-frontend/tests/utils.js +0 -96
  96. package/dist/esm/view/guest-microapp.js +0 -96
  97. package/dist/esm/view/tests/__snapshots__/guest-microapp.test.tsx.snap +0 -21
  98. package/dist/esm/view/tests/__snapshots__/micro-iframe-app.test.tsx.snap +0 -208
  99. package/dist/esm/view/tests/app.config.json +0 -200
  100. package/dist/esm/view/tests/constants.js +0 -24
  101. package/dist/esm/view/tests/flights/23.1/app.checksum1.css +0 -3
  102. package/dist/esm/view/tests/flights/23.1/app.checksum1.js +0 -51
  103. package/dist/esm/view/tests/flights/23.1/manifest.json +0 -4
  104. package/dist/esm/view/tests/flights/latest/app.checksum.css +0 -3
  105. package/dist/esm/view/tests/flights/latest/app.checksum.js +0 -51
  106. package/dist/esm/view/tests/flights/latest/manifest.json +0 -4
  107. package/dist/esm/view/tests/hotels/23.1/app.checksum.css +0 -3
  108. package/dist/esm/view/tests/hotels/23.1/app.checksum.js +0 -51
  109. package/dist/esm/view/tests/hotels/23.1/manifest.json +0 -4
  110. package/dist/esm/view/tests/hotels/latest/app.checksum.css +0 -3
  111. package/dist/esm/view/tests/hotels/latest/app.checksum.js +0 -51
  112. package/dist/esm/view/tests/hotels/latest/manifest.json +0 -4
  113. package/dist/esm/view/tests/loan/latest/index.js +0 -115
  114. package/dist/esm/view/tests/loan/latest/manifest.json +0 -3
  115. package/dist/esm/view/tests/scriptingObjects/appraisalServiceModule.js +0 -63
  116. package/dist/esm/view/tests/scriptingObjects/constant.js +0 -4
  117. package/dist/esm/view/tests/scriptingObjects/global.js +0 -22
  118. package/dist/esm/view/tests/scriptingObjects/loan.js +0 -180
  119. package/dist/esm/view/tests/server.js +0 -9
  120. package/dist/esm/view/tests/serverHandlers.js +0 -180
  121. package/dist/esm/view/tests/task/latest/index.dev.js +0 -66
  122. package/dist/esm/view/tests/task/latest/index.js +0 -66
  123. package/dist/esm/view/tests/task/latest/manifest.json +0 -4
  124. package/dist/esm/view/tests/travelhub/23.1/app.checksum.css +0 -3
  125. package/dist/esm/view/tests/travelhub/23.1/app.checksum.js +0 -24
  126. package/dist/esm/view/tests/travelhub/23.1/landing.checksum1.css +0 -3
  127. package/dist/esm/view/tests/travelhub/23.1/landing.checksum1.js +0 -5
  128. package/dist/esm/view/tests/travelhub/23.1/manifest.json +0 -6
  129. package/dist/esm/view/tests/travelhub/latest/app.checksum.css +0 -3
  130. package/dist/esm/view/tests/travelhub/latest/app.checksum.js +0 -29
  131. package/dist/esm/view/tests/travelhub/latest/landing.checksum.css +0 -3
  132. package/dist/esm/view/tests/travelhub/latest/landing.checksum.js +0 -7
  133. package/dist/esm/view/tests/travelhub/latest/manifest.json +0 -6
  134. package/dist/esm/view/tests/utils.js +0 -33
  135. package/dist/types/lib/utils/micro-frontend/app-bridge.d.ts +0 -4
  136. package/dist/types/lib/utils/micro-frontend/tests/utils.d.ts +0 -39
  137. package/dist/types/lib/view/guest-microapp.d.ts +0 -13
  138. package/dist/types/lib/view/tests/constants.d.ts +0 -11
  139. package/dist/types/lib/view/tests/flights/23.1/app.checksum1.d.ts +0 -7
  140. package/dist/types/lib/view/tests/flights/latest/app.checksum.d.ts +0 -7
  141. package/dist/types/lib/view/tests/hotels/23.1/app.checksum.d.ts +0 -7
  142. package/dist/types/lib/view/tests/hotels/latest/app.checksum.d.ts +0 -7
  143. package/dist/types/lib/view/tests/loan/latest/index.d.ts +0 -11
  144. package/dist/types/lib/view/tests/micro-iframe-app.test.d.ts +0 -1
  145. package/dist/types/lib/view/tests/scriptingObjects/appraisalServiceModule.d.ts +0 -36
  146. package/dist/types/lib/view/tests/scriptingObjects/constant.d.ts +0 -1
  147. package/dist/types/lib/view/tests/scriptingObjects/global.d.ts +0 -9
  148. package/dist/types/lib/view/tests/scriptingObjects/loan.d.ts +0 -31
  149. package/dist/types/lib/view/tests/server.d.ts +0 -1
  150. package/dist/types/lib/view/tests/serverHandlers.d.ts +0 -5
  151. package/dist/types/lib/view/tests/task/latest/index.d.ts +0 -10
  152. package/dist/types/lib/view/tests/task/latest/index.dev.d.ts +0 -10
  153. package/dist/types/lib/view/tests/travelhub/23.1/app.checksum.d.ts +0 -7
  154. package/dist/types/lib/view/tests/travelhub/23.1/landing.checksum1.d.ts +0 -2
  155. package/dist/types/lib/view/tests/travelhub/latest/app.checksum.d.ts +0 -0
  156. package/dist/types/lib/view/tests/travelhub/latest/landing.checksum.d.ts +0 -0
  157. package/dist/types/lib/view/tests/utils.d.ts +0 -7
  158. /package/dist/types/lib/{view/tests/guest-microapp.test.d.ts → utils/micro-frontend/tests/guest-ssf-host.test.d.ts} +0 -0
@@ -1,4 +0,0 @@
1
- {
2
- "app.js": "23.1/app.checksum1.js",
3
- "app.css": "23.1/app.checksum1.css"
4
- }
@@ -1,3 +0,0 @@
1
- h1 {
2
- color: green;
3
- }
@@ -1,51 +0,0 @@
1
- const appId = "flights";
2
- const appName = "Flights App";
3
- const getWindow = () => {
4
- try {
5
- window.parent.document;
6
- return window.parent;
7
- } catch (err) {
8
- return window;
9
- }
10
- };
11
- let host = null;
12
- let parentHistory = null;
13
- let logger = null;
14
- const browserWindow = getWindow();
15
- browserWindow.__TEST__ = browserWindow.__TEST__ ?? {
16
- logs: []
17
- };
18
- window.emui = window.emui || { uuid: crypto.randomUUID() };
19
- window.emui.app = {
20
- uuid: window.emui.uuid,
21
- init: async (options) => {
22
- browserWindow.__TEST__.logs.push(`${appId} initializing`);
23
- host = options.host;
24
- parentHistory = options.history;
25
- logger = options.logger;
26
- return Promise.resolve();
27
- },
28
- mount: async () => {
29
- browserWindow.__TEST__.logs.push(`${appId} mounting`);
30
- const mainElement = document.createElement("main");
31
- const pageHeaderEle = document.createElement("h1");
32
- pageHeaderEle.textContent = appName;
33
- pageHeaderEle.id = "header";
34
- mainElement.appendChild(pageHeaderEle);
35
- const versionEle = document.createElement("p");
36
- versionEle.textContent = "Version: Latest";
37
- versionEle.id = "version";
38
- mainElement.appendChild(versionEle);
39
- document.body.appendChild(mainElement);
40
- browserWindow.__TEST__.logs.push(`${appId} mounted`);
41
- return Promise.resolve();
42
- },
43
- unmount: () => {
44
- browserWindow.__TEST__.logs.push(`${appId} unmounting`);
45
- const mainEle = document.getElementsByTagName("main")[0];
46
- if (mainEle) mainEle.remove();
47
- browserWindow.__TEST__.logs.push(`${appId} unmounted`);
48
- return Promise.resolve();
49
- }
50
- };
51
- browserWindow.emui?.registerApp?.({ appId, app: window.emui.app });
@@ -1,4 +0,0 @@
1
- {
2
- "app.js": "latest/app.checksum.js",
3
- "app.css": "latest/app.checksum.css"
4
- }
@@ -1,3 +0,0 @@
1
- h1 {
2
- color: red;
3
- }
@@ -1,51 +0,0 @@
1
- const appId = "hotels";
2
- const appName = "Hotels App";
3
- const getWindow = () => {
4
- try {
5
- window.parent.document;
6
- return window.parent;
7
- } catch (err) {
8
- return window;
9
- }
10
- };
11
- let host = null;
12
- let parentHistory = null;
13
- let logger = null;
14
- const browserWindow = getWindow();
15
- browserWindow.__TEST__ = browserWindow.__TEST__ ?? {
16
- logs: []
17
- };
18
- window.emui = window.emui || { uuid: crypto.randomUUID() };
19
- window.emui.app = {
20
- uuid: window.emui.uuid,
21
- init: async (options) => {
22
- browserWindow.__TEST__.logs.push(`${appId} initializing`);
23
- host = options.host;
24
- parentHistory = options.history;
25
- logger = options.logger;
26
- return Promise.resolve();
27
- },
28
- mount: async () => {
29
- browserWindow.__TEST__.logs.push(`${appId} mounting`);
30
- const mainElement = document.createElement("main");
31
- const pageHeaderEle = document.createElement("h1");
32
- pageHeaderEle.textContent = appName;
33
- pageHeaderEle.id = "header";
34
- mainElement.appendChild(pageHeaderEle);
35
- const versionEle = document.createElement("p");
36
- versionEle.textContent = "Version: 23.1";
37
- versionEle.id = "version";
38
- mainElement.appendChild(versionEle);
39
- document.body.appendChild(mainElement);
40
- browserWindow.__TEST__.logs.push(`${appId} mounted`);
41
- return Promise.resolve();
42
- },
43
- unmount: () => {
44
- browserWindow.__TEST__.logs.push(`${appId} unmounting`);
45
- const mainEle = document.getElementsByTagName("main")[0];
46
- if (mainEle) mainEle.remove();
47
- browserWindow.__TEST__.logs.push(`${appId} unmounted`);
48
- return Promise.resolve();
49
- }
50
- };
51
- browserWindow.emui?.registerApp?.({ appId, app: window.emui.app });
@@ -1,4 +0,0 @@
1
- {
2
- "app.js": "23.1/app.checksum.js",
3
- "app.css": "23.1/app.checksum.css"
4
- }
@@ -1,3 +0,0 @@
1
- h1 {
2
- color: blue;
3
- }
@@ -1,51 +0,0 @@
1
- const appId = "hotels";
2
- const appName = "Hotels App";
3
- const getWindow = () => {
4
- try {
5
- window.parent.document;
6
- return window.parent;
7
- } catch (err) {
8
- return window;
9
- }
10
- };
11
- let host = null;
12
- let parentHistory = null;
13
- let logger = null;
14
- const browserWindow = getWindow();
15
- browserWindow.__TEST__ = browserWindow.__TEST__ ?? {
16
- logs: []
17
- };
18
- window.emui = window.emui || { uuid: crypto.randomUUID() };
19
- window.emui.app = {
20
- uuid: window.emui.uuid,
21
- init: async (options) => {
22
- browserWindow.__TEST__.logs.push(`${appId} initializing`);
23
- host = options.host;
24
- parentHistory = options.history;
25
- logger = options.logger;
26
- return Promise.resolve();
27
- },
28
- mount: async () => {
29
- browserWindow.__TEST__.logs.push(`${appId} mounting`);
30
- const mainElement = document.createElement("main");
31
- const pageHeaderEle = document.createElement("h1");
32
- pageHeaderEle.textContent = appName;
33
- pageHeaderEle.id = "header";
34
- mainElement.appendChild(pageHeaderEle);
35
- const versionEle = document.createElement("p");
36
- versionEle.textContent = "Version: Latest";
37
- versionEle.id = "version";
38
- mainElement.appendChild(versionEle);
39
- document.body.appendChild(mainElement);
40
- browserWindow.__TEST__.logs.push(`${appId} mounted`);
41
- return Promise.resolve();
42
- },
43
- unmount: () => {
44
- browserWindow.__TEST__.logs.push(`${appId} unmounting`);
45
- const mainEle = document.getElementsByTagName("main")[0];
46
- if (mainEle) mainEle.remove();
47
- browserWindow.__TEST__.logs.push(`${appId} unmounted`);
48
- return Promise.resolve();
49
- }
50
- };
51
- browserWindow.emui?.registerApp?.({ appId, app: window.emui.app });
@@ -1,4 +0,0 @@
1
- {
2
- "app.js": "latest/app.checksum.js",
3
- "app.css": "latest/app.checksum.css"
4
- }
@@ -1,115 +0,0 @@
1
- const appId = "loanapp";
2
- const appName = "Loan App";
3
- const appElementId = `pui-app-container-${appId}`;
4
- const pipelinePath = "/pipeline";
5
- const pipelineLinkText = "Pipeline";
6
- const getWindow = () => {
7
- let winObj = window;
8
- try {
9
- window.parent.document;
10
- winObj = window.parent;
11
- } catch (err) {
12
- }
13
- winObj.__TEST__ = winObj.__TEST__ ?? {};
14
- winObj.__TEST__.logs = winObj.__TEST__.logs ?? [];
15
- winObj.__TEST__[appId] = [];
16
- winObj.addTestLog = (log) => {
17
- winObj.__TEST__.logs.push(log);
18
- };
19
- winObj.addAppLog = (log) => {
20
- winObj.__TEST__[appId].push(log);
21
- };
22
- return winObj;
23
- };
24
- let host = null;
25
- let parentHistory = null;
26
- let logger = null;
27
- const browserWindow = getWindow(appId);
28
- window.__TEST__ = {};
29
- const setFrameSize = () => {
30
- const { document: document2 } = window;
31
- const iframeBody = document2.body;
32
- const iframeHTML = document2.documentElement;
33
- const size = {
34
- height: Math.max(
35
- iframeBody.scrollHeight,
36
- iframeBody.offsetHeight,
37
- iframeHTML.offsetHeight
38
- ),
39
- width: Math.max(
40
- iframeBody.scrollWidth,
41
- iframeBody.offsetWidth,
42
- iframeHTML.offsetWidth
43
- )
44
- };
45
- host.setAppWindowSize?.({
46
- appId,
47
- size
48
- });
49
- };
50
- window.emui = window.emui || { uuid: crypto.randomUUID() };
51
- window.emui.app = {
52
- uuid: window.emui.uuid,
53
- init: async (options) => {
54
- browserWindow.addTestLog(`${appId} initializing`);
55
- host = options.host;
56
- parentHistory = options.history;
57
- logger = options.logger;
58
- window.__TEST__.initOptions = options;
59
- setFrameSize();
60
- },
61
- mount: async (options) => {
62
- browserWindow.addTestLog(`${appId} mounting`);
63
- window.__TEST__.mountOptions = options;
64
- const appContainer = document.getElementById(appElementId);
65
- if (appContainer) {
66
- const mainElement = document.createElement("main");
67
- appContainer.appendChild(mainElement);
68
- const pageHeaderEle = document.createElement("h1");
69
- pageHeaderEle.textContent = appName;
70
- mainElement.appendChild(pageHeaderEle);
71
- const contentEle = document.createElement("p");
72
- contentEle.textContent = "Go to ";
73
- mainElement.appendChild(contentEle);
74
- const linkEle = document.createElement("a");
75
- linkEle.href = "#";
76
- linkEle.onclick = () => {
77
- parentHistory?.push?.(pipelinePath);
78
- };
79
- linkEle.textContent = pipelineLinkText;
80
- contentEle.appendChild(linkEle);
81
- browserWindow.addTestLog(`${appId} mounted`);
82
- const loanObj = await host.getObject("loan");
83
- if (loanObj) {
84
- const loanData = await loanObj.all();
85
- browserWindow.addAppLog(
86
- `loan.all():returns:${JSON.stringify(loanData)}`
87
- );
88
- host.subscribe({
89
- eventId: "loan.precommit",
90
- callback: (data) => {
91
- browserWindow.addAppLog(
92
- `loan.precommit:event:received: eventName:${data.eventName} eventParams:${JSON.stringify(data.eventParams)}`
93
- );
94
- return true;
95
- }
96
- });
97
- await loanObj.commit();
98
- }
99
- } else {
100
- throw new Error(
101
- `App container element with id ${appElementId} not found`
102
- );
103
- }
104
- },
105
- unmount: () => {
106
- browserWindow.addTestLog(`${appId} unmounting`);
107
- const appContainer = document.getElementById(appElementId);
108
- if (appContainer) {
109
- appContainer.removeChild(appContainer.getElementsByTagName("main")[0]);
110
- }
111
- browserWindow.addTestLog(`${appId} unmounted`);
112
- return Promise.resolve();
113
- }
114
- };
115
- browserWindow.emui?.registerApp?.({ appId, app: window.emui.app });
@@ -1,3 +0,0 @@
1
- {
2
- "index.js": "latest/index.js"
3
- }
@@ -1,63 +0,0 @@
1
- import {
2
- ScriptingObjectNames
3
- } from "@elliemae/pui-scripting-object";
4
- import { ScriptingObject, Event } from "@elliemae/microfe-common";
5
- class AppraisalService extends ScriptingObject {
6
- #loanId;
7
- #creditScore;
8
- Close = new Event({
9
- name: "Close",
10
- objectId: ScriptingObjectNames.Module
11
- });
12
- Unloading = new Event({
13
- name: "Unloading",
14
- objectId: ScriptingObjectNames.Module
15
- });
16
- onPreCommit = new Event({
17
- name: "onPreCommit",
18
- objectId: ScriptingObjectNames.Module
19
- });
20
- onSaved = new Event({
21
- name: "onSaved",
22
- objectId: ScriptingObjectNames.Module
23
- });
24
- constructor({
25
- loanId,
26
- creditScore
27
- }) {
28
- super(ScriptingObjectNames.Module);
29
- this.#loanId = loanId;
30
- this.#creditScore = creditScore;
31
- }
32
- getCapabilities = () => Promise.resolve({
33
- isAdmin: true,
34
- los: "Encompass"
35
- });
36
- getParameters = () => Promise.resolve({
37
- moduleId: "appraisalService",
38
- loanId: this.#loanId,
39
- creditScore: this.#creditScore
40
- });
41
- setCreditScore = (creditScore) => {
42
- this.#creditScore = creditScore;
43
- return Promise.resolve();
44
- };
45
- saveLoan = () => Promise.resolve();
46
- commit = () => new Promise((resolve) => {
47
- setTimeout(() => {
48
- resolve({ loanId: this.#loanId });
49
- }, 1e3);
50
- });
51
- delete = () => {
52
- throw new Error("Not implemented");
53
- };
54
- log = async (message, level) => {
55
- console.log(message, level);
56
- return Promise.resolve();
57
- };
58
- unload = async () => {
59
- };
60
- }
61
- export {
62
- AppraisalService
63
- };
@@ -1,4 +0,0 @@
1
- const UNLOADING_EVENT_NAME = "Unloading";
2
- export {
3
- UNLOADING_EVENT_NAME
4
- };
@@ -1,22 +0,0 @@
1
- import {
2
- ScriptingObjectNames
3
- } from "@elliemae/pui-scripting-object";
4
- import { ScriptingObject, Event } from "@elliemae/microfe-common";
5
- class Global extends ScriptingObject {
6
- #data = /* @__PURE__ */ new Map();
7
- constructor() {
8
- super("Global");
9
- }
10
- Change = new Event({
11
- name: "Change",
12
- objectId: ScriptingObjectNames.Global
13
- });
14
- set = (key, value) => {
15
- this.#data.set(key, value);
16
- return Promise.resolve();
17
- };
18
- get = (key) => Promise.resolve(this.#data.get(key) || "");
19
- }
20
- export {
21
- Global
22
- };
@@ -1,180 +0,0 @@
1
- import { ScriptingObject, Event } from "@elliemae/pui-app-bridge";
2
- class Loan extends ScriptingObject {
3
- #loanData;
4
- #appBridge;
5
- constructor(appBridge) {
6
- super("loan");
7
- this.#appBridge = appBridge;
8
- this.#loanData = {
9
- id: "1234567890",
10
- status: "active",
11
- loanAmount: 1e5,
12
- interestRate: 3.5,
13
- term: 30
14
- };
15
- window.__TEST__ = window.__TEST__ ?? {};
16
- window.__TEST__.soLogs = window.__TEST__.soLogs ?? [];
17
- }
18
- #log(message) {
19
- window.__TEST__.soLogs.push(message);
20
- }
21
- ApplicationSelected = new Event({
22
- name: "applicationselected",
23
- objectId: "loan"
24
- });
25
- Close = new Event({
26
- name: "close",
27
- objectId: "loan"
28
- });
29
- Change = new Event({
30
- name: "change",
31
- objectId: "loan"
32
- });
33
- Committed = new Event({
34
- name: "committed",
35
- objectId: "loan"
36
- });
37
- EditModeChange = new Event({
38
- name: "editmodechange",
39
- objectId: "loan"
40
- });
41
- MilestoneCompleted = new Event({
42
- name: "milestonecompleted",
43
- objectId: "loan"
44
- });
45
- Open = new Event({
46
- name: "open",
47
- objectId: "loan"
48
- });
49
- PreCommit = new Event({
50
- name: "precommit",
51
- objectId: "loan"
52
- });
53
- PreMilestoneComplete = new Event({
54
- name: "premilestonecomplete",
55
- objectId: "loan"
56
- });
57
- Sync = new Event({
58
- name: "sync",
59
- objectId: "loan"
60
- });
61
- all = () => {
62
- this.#log("loan.all");
63
- return Promise.resolve(this.#loanData);
64
- };
65
- applyLock = (fieldId, lock) => {
66
- this.#log(`loan.applyLock: fieldId: ${fieldId}, lock: ${String(lock)}`);
67
- return Promise.resolve();
68
- };
69
- calculate = () => {
70
- this.#log("loan.calculate");
71
- return Promise.resolve(this.#loanData);
72
- };
73
- commit = async () => {
74
- this.#log("loan.commit");
75
- const feedBack = await this.#appBridge.dispatchEvent({
76
- event: this.PreCommit,
77
- eventParams: {
78
- id: this.#loanData.id
79
- },
80
- eventOptions: {
81
- timeout: 1e3
82
- }
83
- });
84
- this.#log(`loan.precommit:event:feedback: ${JSON.stringify(feedBack)}`);
85
- if (feedBack.every((item) => item === true)) {
86
- this.#log("loan.commit:succeed");
87
- } else {
88
- this.#log("loan.commit:failed");
89
- }
90
- return this.#loanData.id;
91
- };
92
- execAction = (type, params) => {
93
- this.#log(
94
- `loan.execAction: type: ${type}, params: ${JSON.stringify(params)}`
95
- );
96
- return Promise.resolve({
97
- status: "success",
98
- message: "Action executed successfully"
99
- });
100
- };
101
- getCollection = (name) => {
102
- this.#log(`loan.getCollection: name: ${name}`);
103
- return Promise.resolve({
104
- name,
105
- data: [],
106
- id: "collection-id",
107
- objectType: "LoanCollection",
108
- removeAt: (index) => {
109
- this.#log(`loan.getCollection.removeAt: index: ${index}`);
110
- }
111
- });
112
- };
113
- getCurrentApplication = () => {
114
- this.#log("loan.getCurrentApplication");
115
- return Promise.resolve({
116
- ...this.#loanData,
117
- index: 0,
118
- legacyId: "legacy-id"
119
- });
120
- };
121
- getField = (id) => {
122
- this.#log(`loan.getField: id: ${id}`);
123
- return Promise.resolve(this.#loanData.name);
124
- };
125
- getFieldOptions = (param) => {
126
- this.#log(`loan.getFieldOptions: param: ${JSON.stringify(param)}`);
127
- return Promise.resolve({
128
- fieldId: [
129
- {
130
- id: "option1",
131
- label: "Option 1",
132
- name: "OptionName1",
133
- value: "OptionValue1"
134
- },
135
- {
136
- id: "option2",
137
- label: "Option 2",
138
- name: "OptionName2",
139
- value: "OptionValue2"
140
- }
141
- ]
142
- });
143
- };
144
- getFields = (ids) => {
145
- this.#log(`loan.getFields: ids: ${JSON.stringify(ids)}`);
146
- const fields = ids.reduce((acc, id) => {
147
- acc[id] = this.#loanData.name;
148
- return acc;
149
- }, {});
150
- return Promise.resolve(fields);
151
- };
152
- isReadOnly = () => {
153
- this.#log("loan.isReadOnly");
154
- return Promise.resolve(false);
155
- };
156
- merge = () => {
157
- this.#log("loan.merge");
158
- return Promise.resolve();
159
- };
160
- setCurrentApplication = (options) => {
161
- this.#log(
162
- `loan.setCurrentApplication: options: ${JSON.stringify(options)}`
163
- );
164
- return Promise.resolve();
165
- };
166
- setEditMode = (options) => {
167
- this.#log(`loan.setEditMode: options: ${JSON.stringify(options)}`);
168
- return Promise.resolve();
169
- };
170
- setFields = (fields) => {
171
- this.#log(`loan.setFields: fields: ${JSON.stringify(fields)}`);
172
- Object.keys(fields).forEach((key) => {
173
- const field = fields[key];
174
- });
175
- return Promise.resolve();
176
- };
177
- }
178
- export {
179
- Loan
180
- };
@@ -1,9 +0,0 @@
1
- import { setupServer } from "msw/node";
2
- import { serverHandlers } from "./serverHandlers.js";
3
- const initServer = () => {
4
- const server = setupServer(...serverHandlers);
5
- return server;
6
- };
7
- export {
8
- initServer
9
- };