@elliemae/pui-app-sdk 5.32.0 → 5.32.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/demo/{2065.9b113936.iframe.bundle.js → 4194.d7b7bd0c.iframe.bundle.js} +90 -90
- package/demo/4194.d7b7bd0c.iframe.bundle.js.br +0 -0
- package/demo/4194.d7b7bd0c.iframe.bundle.js.gz +0 -0
- package/demo/docs/{2065.9b113936.iframe.bundle.js → 4194.d7b7bd0c.iframe.bundle.js} +90 -90
- package/demo/docs/4194.d7b7bd0c.iframe.bundle.js.br +0 -0
- package/demo/docs/4194.d7b7bd0c.iframe.bundle.js.gz +0 -0
- package/demo/docs/iframe.html +1 -1
- package/demo/docs/index.html +1 -1
- package/demo/docs/{main.0590cb1c0f0bdeece8be.manager.bundle.js → main.0ae090a6634de7a91844.manager.bundle.js} +1 -1
- package/demo/docs/{main.0590cb1c0f0bdeece8be.manager.bundle.js.br → main.0ae090a6634de7a91844.manager.bundle.js.br} +0 -0
- package/demo/docs/main.0ae090a6634de7a91844.manager.bundle.js.gz +0 -0
- package/demo/docs/{main.68a7d280.iframe.bundle.js → main.2d39c220.iframe.bundle.js} +4 -4
- package/demo/docs/main.2d39c220.iframe.bundle.js.br +0 -0
- package/demo/docs/main.2d39c220.iframe.bundle.js.gz +0 -0
- package/demo/docs/project.json +1 -1
- package/demo/iframe.html +1 -1
- package/demo/index.html +1 -1
- package/demo/{main.0590cb1c0f0bdeece8be.manager.bundle.js → main.0ae090a6634de7a91844.manager.bundle.js} +1 -1
- package/demo/{main.0590cb1c0f0bdeece8be.manager.bundle.js.br → main.0ae090a6634de7a91844.manager.bundle.js.br} +0 -0
- package/demo/main.0ae090a6634de7a91844.manager.bundle.js.gz +0 -0
- package/demo/{main.68a7d280.iframe.bundle.js → main.2d39c220.iframe.bundle.js} +4 -4
- package/demo/main.2d39c220.iframe.bundle.js.br +0 -0
- package/demo/main.2d39c220.iframe.bundle.js.gz +0 -0
- package/demo/project.json +1 -1
- package/dist/cjs/view/guest-microapp.js +15 -5
- package/dist/cjs/view/micro-iframe-app/iframe/index.js +6 -1
- package/dist/cjs/view/tests/__snapshots__/guest-microapp.test.tsx.snap +2 -2
- package/dist/cjs/view/tests/scriptingObjects/loan.js +4 -0
- package/dist/esm/view/guest-microapp.js +15 -5
- package/dist/esm/view/micro-iframe-app/iframe/index.js +7 -2
- package/dist/esm/view/tests/__snapshots__/guest-microapp.test.tsx.snap +2 -2
- package/dist/esm/view/tests/scriptingObjects/loan.js +4 -0
- package/dist/types/lib/view/guest-microapp.d.ts +17 -0
- package/dist/types/lib/view/tests/scriptingObjects/loan.d.ts +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +14 -14
- package/demo/2065.9b113936.iframe.bundle.js.br +0 -0
- package/demo/2065.9b113936.iframe.bundle.js.gz +0 -0
- package/demo/docs/2065.9b113936.iframe.bundle.js.br +0 -0
- package/demo/docs/2065.9b113936.iframe.bundle.js.gz +0 -0
- package/demo/docs/main.0590cb1c0f0bdeece8be.manager.bundle.js.gz +0 -0
- package/demo/docs/main.68a7d280.iframe.bundle.js.br +0 -0
- package/demo/docs/main.68a7d280.iframe.bundle.js.gz +0 -0
- package/demo/main.0590cb1c0f0bdeece8be.manager.bundle.js.gz +0 -0
- package/demo/main.68a7d280.iframe.bundle.js.br +0 -0
- package/demo/main.68a7d280.iframe.bundle.js.gz +0 -0
|
@@ -2,6 +2,7 @@ import { jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { memo, useLayoutEffect, useRef, useCallback } from "react";
|
|
3
3
|
import styled from "styled-components";
|
|
4
4
|
import { useDispatch } from "react-redux";
|
|
5
|
+
import { buildLogRocketQueryParams } from "@elliemae/pui-logrocket";
|
|
5
6
|
import {
|
|
6
7
|
MicroAppManager
|
|
7
8
|
} from "../utils/micro-frontend/types.js";
|
|
@@ -28,7 +29,8 @@ const useAppRenderer = (props) => {
|
|
|
28
29
|
onLoadComplete,
|
|
29
30
|
onUnloadComplete,
|
|
30
31
|
containerId,
|
|
31
|
-
ssfAppOptions = {}
|
|
32
|
+
ssfAppOptions = {},
|
|
33
|
+
disableWaitMessage = false
|
|
32
34
|
} = props;
|
|
33
35
|
const dispatch = useDispatch();
|
|
34
36
|
const getConfig = useCallback(
|
|
@@ -45,7 +47,9 @@ const useAppRenderer = (props) => {
|
|
|
45
47
|
let instanceId = null;
|
|
46
48
|
(async () => {
|
|
47
49
|
await unloadInProgress;
|
|
48
|
-
|
|
50
|
+
if (!disableWaitMessage) {
|
|
51
|
+
dispatch(waitMessage.open());
|
|
52
|
+
}
|
|
49
53
|
try {
|
|
50
54
|
const {
|
|
51
55
|
microappManager = MicroAppManager.APPSDK,
|
|
@@ -82,7 +86,10 @@ const useAppRenderer = (props) => {
|
|
|
82
86
|
if (isMounted) {
|
|
83
87
|
instanceId = await appBridge.openApp({
|
|
84
88
|
id,
|
|
85
|
-
frameOptions: {
|
|
89
|
+
frameOptions: {
|
|
90
|
+
containerId,
|
|
91
|
+
queryParams: buildLogRocketQueryParams()
|
|
92
|
+
},
|
|
86
93
|
history,
|
|
87
94
|
homeRoute,
|
|
88
95
|
initialRoute
|
|
@@ -107,7 +114,9 @@ const useAppRenderer = (props) => {
|
|
|
107
114
|
unloadInProgress = Promise.resolve(ssfHost.unloadGuest(instanceId));
|
|
108
115
|
throw ex;
|
|
109
116
|
} finally {
|
|
110
|
-
|
|
117
|
+
if (!disableWaitMessage) {
|
|
118
|
+
dispatch(waitMessage.close());
|
|
119
|
+
}
|
|
111
120
|
}
|
|
112
121
|
})();
|
|
113
122
|
return () => {
|
|
@@ -138,7 +147,8 @@ const useAppRenderer = (props) => {
|
|
|
138
147
|
onLoadComplete,
|
|
139
148
|
onUnloadComplete,
|
|
140
149
|
getConfig,
|
|
141
|
-
ssfAppOptions
|
|
150
|
+
ssfAppOptions,
|
|
151
|
+
disableWaitMessage
|
|
142
152
|
]);
|
|
143
153
|
};
|
|
144
154
|
const GuestMicroApp = memo(
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { memo, useRef } from "react";
|
|
2
|
+
import { memo, useRef, useMemo } from "react";
|
|
3
3
|
import styled from "styled-components";
|
|
4
|
+
import { buildLogRocketQueryParams } from "@elliemae/pui-logrocket";
|
|
4
5
|
import { IFRAME_CONTAINER_ID_PREFIX } from "./const.js";
|
|
5
6
|
const Div = styled.div`
|
|
6
7
|
display: flex;
|
|
@@ -21,13 +22,17 @@ const IFrame = memo(
|
|
|
21
22
|
({ id, name: title, src, sandbox, onFrameReady }) => {
|
|
22
23
|
const frameRef = useRef(null);
|
|
23
24
|
const sandboxProps = sandbox ? { sandbox } : {};
|
|
25
|
+
const srcWithParams = useMemo(
|
|
26
|
+
() => `${src}${src.includes("?") ? "&" : "?"}${buildLogRocketQueryParams()}`,
|
|
27
|
+
[src]
|
|
28
|
+
);
|
|
24
29
|
return /* @__PURE__ */ jsx(Div, { children: /* @__PURE__ */ jsx(
|
|
25
30
|
Iframe,
|
|
26
31
|
{
|
|
27
32
|
id: `${IFRAME_CONTAINER_ID_PREFIX}${id}`,
|
|
28
33
|
ref: frameRef,
|
|
29
34
|
title,
|
|
30
|
-
src,
|
|
35
|
+
src: srcWithParams,
|
|
31
36
|
"data-testid": `${IFRAME_CONTAINER_ID_PREFIX}${id}`,
|
|
32
37
|
...sandboxProps,
|
|
33
38
|
onLoad: () => frameRef?.current?.contentDocument && onFrameReady(frameRef.current.contentDocument)
|
|
@@ -77,14 +77,14 @@ Document {
|
|
|
77
77
|
"hash": "",
|
|
78
78
|
"host": "localhost:3111",
|
|
79
79
|
"hostname": "localhost",
|
|
80
|
-
"href": "http://localhost:3111/frame.html",
|
|
80
|
+
"href": "http://localhost:3111/frame.html?analyticsConsent=false&lrEnabled=false&lrAppId=",
|
|
81
81
|
"origin": "http://localhost:3111",
|
|
82
82
|
"pathname": "/frame.html",
|
|
83
83
|
"port": "3111",
|
|
84
84
|
"protocol": "http:",
|
|
85
85
|
"reload": [Function],
|
|
86
86
|
"replace": [Function],
|
|
87
|
-
"search": "",
|
|
87
|
+
"search": "?analyticsConsent=false&lrEnabled=false&lrAppId=",
|
|
88
88
|
"toString": [Function],
|
|
89
89
|
},
|
|
90
90
|
}
|
|
@@ -38,6 +38,10 @@ class Loan extends ScriptingObject {
|
|
|
38
38
|
name: "editmodechange",
|
|
39
39
|
objectId: "loan"
|
|
40
40
|
});
|
|
41
|
+
FieldChanged = new Event({
|
|
42
|
+
name: "fieldchanged",
|
|
43
|
+
objectId: "loan"
|
|
44
|
+
});
|
|
41
45
|
MilestoneCompleted = new Event({
|
|
42
46
|
name: "milestonecompleted",
|
|
43
47
|
objectId: "loan"
|
|
@@ -6,10 +6,27 @@ export type OnUnloadCompleteFn = () => void;
|
|
|
6
6
|
* Parameters for the GuestMicroApp component.
|
|
7
7
|
*/
|
|
8
8
|
export type GuestMicroAppParams = OpenAppParams & {
|
|
9
|
+
/**
|
|
10
|
+
* Callback function to be called when the app is loaded.
|
|
11
|
+
*/
|
|
9
12
|
onLoadComplete?: OnLoadCompleteFn;
|
|
13
|
+
/**
|
|
14
|
+
* Callback function to be called when the app is unloaded.
|
|
15
|
+
*/
|
|
10
16
|
onUnloadComplete?: OnUnloadCompleteFn;
|
|
17
|
+
/**
|
|
18
|
+
* Container ID where the microapp will be rendered.
|
|
19
|
+
*/
|
|
11
20
|
containerId?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Options specific to SSF microapps.
|
|
23
|
+
*/
|
|
12
24
|
ssfAppOptions?: SSFAppOptions<Record<string, string | number | boolean>>;
|
|
25
|
+
/**
|
|
26
|
+
* Disable the wait message overlay during microapp loading.
|
|
27
|
+
* @default false
|
|
28
|
+
*/
|
|
29
|
+
disableWaitMessage?: boolean;
|
|
13
30
|
};
|
|
14
31
|
/**
|
|
15
32
|
* Component to load a guest microapp
|
|
@@ -8,6 +8,7 @@ export declare class Loan extends ScriptingObject implements ILoan {
|
|
|
8
8
|
readonly Change: Event<Events>;
|
|
9
9
|
readonly Committed: Event<Events>;
|
|
10
10
|
readonly EditModeChange: Event<Events>;
|
|
11
|
+
readonly FieldChanged: Event<Events>;
|
|
11
12
|
readonly MilestoneCompleted: Event<Events>;
|
|
12
13
|
readonly Open: Event<Events>;
|
|
13
14
|
readonly PreCommit: Event<Events>;
|