@finos/legend-application 16.0.102 → 16.0.103
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/lib/components/ActionAlert.d.ts.map +1 -1
- package/lib/components/ActionAlert.js +3 -2
- package/lib/components/ActionAlert.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/package.json +2 -1
- package/lib/stores/AlertService.d.ts +4 -2
- package/lib/stores/AlertService.d.ts.map +1 -1
- package/lib/stores/AlertService.js.map +1 -1
- package/package.json +2 -1
- package/src/components/ActionAlert.tsx +18 -3
- package/src/stores/AlertService.ts +4 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionAlert.d.ts","sourceRoot":"","sources":["../../src/components/ActionAlert.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"ActionAlert.d.ts","sourceRoot":"","sources":["../../src/components/ActionAlert.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAqHH,eAAO,MAAM,WAAW;;CAQtB,CAAC"}
|
|
@@ -19,6 +19,7 @@ import { ActionAlertActionType, ActionAlertType, } from '../stores/AlertService.
|
|
|
19
19
|
import { observer } from 'mobx-react-lite';
|
|
20
20
|
import { noop } from '@finos/legend-shared';
|
|
21
21
|
import { useApplicationStore } from './ApplicationStoreProvider.js';
|
|
22
|
+
import { clsx } from 'clsx';
|
|
22
23
|
const getActionButtonClassName = (type) => {
|
|
23
24
|
switch (type) {
|
|
24
25
|
case ActionAlertActionType.PROCEED_WITH_CAUTION:
|
|
@@ -32,7 +33,7 @@ const getActionButtonClassName = (type) => {
|
|
|
32
33
|
const ActionAlertContent = observer((props) => {
|
|
33
34
|
const { info } = props;
|
|
34
35
|
const applicationStore = useApplicationStore();
|
|
35
|
-
const { title, message, prompt, type, onClose, onEnter, actions } = info;
|
|
36
|
+
const { title, message, messageClass, prompt, promptClass, type, onClose, onEnter, actions, } = info;
|
|
36
37
|
const handleClose = () => {
|
|
37
38
|
onClose?.();
|
|
38
39
|
applicationStore.alertService.setActionAlertInfo(undefined);
|
|
@@ -47,7 +48,7 @@ const ActionAlertContent = observer((props) => {
|
|
|
47
48
|
}, children: _jsxs("form", { onSubmit: (event) => {
|
|
48
49
|
event.preventDefault();
|
|
49
50
|
handleSubmit();
|
|
50
|
-
}, className: `modal search-modal modal--dark blocking-alert blocking-alert--${(type ?? ActionAlertType.STANDARD).toLowerCase()}`, children: [title && _jsx(ModalHeader, { title: title }), _jsxs(ModalBody, { children: [_jsx("div", { className:
|
|
51
|
+
}, className: `modal search-modal modal--dark blocking-alert blocking-alert--${(type ?? ActionAlertType.STANDARD).toLowerCase()}`, children: [title && _jsx(ModalHeader, { title: title }), _jsxs(ModalBody, { children: [_jsx("div", { className: clsx('blocking-alert__summary-text', messageClass), children: message }), _jsx("div", { className: clsx('blocking-alert__prompt-text', promptClass), children: prompt })] }), _jsxs(ModalFooter, { children: [actions.map((action, idx) => {
|
|
51
52
|
// NOTE: need to prevent default for the submit button, otherwise, we would get the warning "Form submission canceled because the form is not connected"
|
|
52
53
|
// See https://stackoverflow.com/a/58234405
|
|
53
54
|
const handler = (e) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionAlert.js","sourceRoot":"","sources":["../../src/components/ActionAlert.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EACL,qBAAqB,EACrB,eAAe,GAEhB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"ActionAlert.js","sourceRoot":"","sources":["../../src/components/ActionAlert.tsx"],"names":[],"mappings":"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"}
|
package/lib/index.css
CHANGED
package/lib/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@finos/legend-application",
|
|
3
|
-
"version": "16.0.
|
|
3
|
+
"version": "16.0.103",
|
|
4
4
|
"description": "Legend application core",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"legend",
|
|
@@ -51,6 +51,7 @@
|
|
|
51
51
|
"@types/react": "19.0.10",
|
|
52
52
|
"@types/react-dom": "19.0.4",
|
|
53
53
|
"@types/react-router-dom": "5.3.3",
|
|
54
|
+
"clsx": "2.1.1",
|
|
54
55
|
"mobx": "6.13.6",
|
|
55
56
|
"mobx-react-lite": "4.1.0",
|
|
56
57
|
"oidc-client-ts": "3.2.0",
|
|
@@ -26,8 +26,10 @@ export declare enum ActionAlertActionType {
|
|
|
26
26
|
}
|
|
27
27
|
export interface ActionAlertInfo {
|
|
28
28
|
title?: string | undefined;
|
|
29
|
-
message: string;
|
|
30
|
-
|
|
29
|
+
message: string | React.ReactNode;
|
|
30
|
+
messageClass?: string | undefined;
|
|
31
|
+
prompt?: string | React.ReactNode | undefined;
|
|
32
|
+
promptClass?: string | undefined;
|
|
31
33
|
type?: ActionAlertType;
|
|
32
34
|
onClose?: () => void;
|
|
33
35
|
onEnter?: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlertService.d.ts","sourceRoot":"","sources":["../../src/stores/AlertService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAE3E,oBAAY,eAAe;IACzB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,KAAK,UAAU;CAChB;AAED,oBAAY,qBAAqB;IAC/B,QAAQ,aAAa;IACrB,oBAAoB,yBAAyB;IAC7C,OAAO,YAAY;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"AlertService.d.ts","sourceRoot":"","sources":["../../src/stores/AlertService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAE3E,oBAAY,eAAe;IACzB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,KAAK,UAAU;CAChB;AAED,oBAAY,qBAAqB;IAC/B,QAAQ,aAAa;IACrB,oBAAoB,yBAAyB;IAC7C,OAAO,YAAY;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IAC9C,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,EAAE;QACP,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;QACvB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;QACrB,IAAI,CAAC,EAAE,qBAAqB,CAAC;KAC9B,EAAE,CAAC;CACL;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,qBAAa,YAAY;IACvB,QAAQ,CAAC,gBAAgB,EAAE,6BAA6B,CAAC;IAEzD,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAClD,eAAe,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;gBAElC,gBAAgB,EAAE,6BAA6B;IAW3D,gBAAgB,CAAC,SAAS,EAAE,iBAAiB,GAAG,SAAS,GAAG,IAAI;IAShE,kBAAkB,CAAC,SAAS,EAAE,eAAe,GAAG,SAAS,GAAG,IAAI;CAajE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlertService.js","sourceRoot":"","sources":["../../src/stores/AlertService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAG1D,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,wCAAqB,CAAA;IACrB,sCAAmB,CAAA;IACnB,kCAAe,CAAA;AACjB,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B;AAED,MAAM,CAAN,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,8CAAqB,CAAA;IACrB,sEAA6C,CAAA;IAC7C,4CAAmB,CAAA;AACrB,CAAC,EAJW,qBAAqB,KAArB,qBAAqB,QAIhC;
|
|
1
|
+
{"version":3,"file":"AlertService.js","sourceRoot":"","sources":["../../src/stores/AlertService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAG1D,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,wCAAqB,CAAA;IACrB,sCAAmB,CAAA;IACnB,kCAAe,CAAA;AACjB,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B;AAED,MAAM,CAAN,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,8CAAqB,CAAA;IACrB,sEAA6C,CAAA;IAC7C,4CAAmB,CAAA;AACrB,CAAC,EAJW,qBAAqB,KAArB,qBAAqB,QAIhC;AAyBD,MAAM,OAAO,YAAY;IACd,gBAAgB,CAAgC;IAEzD,iBAAiB,CAAiC;IAClD,eAAe,CAA+B;IAE9C,YAAY,gBAA+C;QACzD,cAAc,CAAC,IAAI,EAAE;YACnB,iBAAiB,EAAE,UAAU;YAC7B,eAAe,EAAE,UAAU;YAC3B,gBAAgB,EAAE,MAAM;YACxB,kBAAkB,EAAE,MAAM;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAED,gBAAgB,CAAC,SAAwC;QACvD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,kBAAkB,EAAE,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,oBAAoB,EAAE,CAAC;QACxE,CAAC;QACD,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;IACrC,CAAC;IAED,kBAAkB,CAAC,SAAsC;QACvD,IAAI,IAAI,CAAC,eAAe,IAAI,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,kBAAkB,CAC1D,oFAAoF,CACrF,CAAC;QACJ,CAAC;QACD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,kBAAkB,EAAE,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,oBAAoB,EAAE,CAAC;QACxE,CAAC;QACD,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;IACnC,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@finos/legend-application",
|
|
3
|
-
"version": "16.0.
|
|
3
|
+
"version": "16.0.103",
|
|
4
4
|
"description": "Legend application core",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"legend",
|
|
@@ -51,6 +51,7 @@
|
|
|
51
51
|
"@types/react": "19.0.10",
|
|
52
52
|
"@types/react-dom": "19.0.4",
|
|
53
53
|
"@types/react-router-dom": "5.3.3",
|
|
54
|
+
"clsx": "2.1.1",
|
|
54
55
|
"mobx": "6.13.6",
|
|
55
56
|
"mobx-react-lite": "4.1.0",
|
|
56
57
|
"oidc-client-ts": "3.2.0",
|
|
@@ -23,6 +23,7 @@ import {
|
|
|
23
23
|
import { observer } from 'mobx-react-lite';
|
|
24
24
|
import { noop } from '@finos/legend-shared';
|
|
25
25
|
import { useApplicationStore } from './ApplicationStoreProvider.js';
|
|
26
|
+
import { clsx } from 'clsx';
|
|
26
27
|
|
|
27
28
|
const getActionButtonClassName = (type: ActionAlertActionType): string => {
|
|
28
29
|
switch (type) {
|
|
@@ -38,7 +39,17 @@ const getActionButtonClassName = (type: ActionAlertActionType): string => {
|
|
|
38
39
|
const ActionAlertContent = observer((props: { info: ActionAlertInfo }) => {
|
|
39
40
|
const { info } = props;
|
|
40
41
|
const applicationStore = useApplicationStore();
|
|
41
|
-
const {
|
|
42
|
+
const {
|
|
43
|
+
title,
|
|
44
|
+
message,
|
|
45
|
+
messageClass,
|
|
46
|
+
prompt,
|
|
47
|
+
promptClass,
|
|
48
|
+
type,
|
|
49
|
+
onClose,
|
|
50
|
+
onEnter,
|
|
51
|
+
actions,
|
|
52
|
+
} = info;
|
|
42
53
|
const handleClose = (): void => {
|
|
43
54
|
onClose?.();
|
|
44
55
|
applicationStore.alertService.setActionAlertInfo(undefined);
|
|
@@ -68,8 +79,12 @@ const ActionAlertContent = observer((props: { info: ActionAlertInfo }) => {
|
|
|
68
79
|
>
|
|
69
80
|
{title && <ModalHeader title={title} />}
|
|
70
81
|
<ModalBody>
|
|
71
|
-
<div className=
|
|
72
|
-
|
|
82
|
+
<div className={clsx('blocking-alert__summary-text', messageClass)}>
|
|
83
|
+
{message}
|
|
84
|
+
</div>
|
|
85
|
+
<div className={clsx('blocking-alert__prompt-text', promptClass)}>
|
|
86
|
+
{prompt}
|
|
87
|
+
</div>
|
|
73
88
|
</ModalBody>
|
|
74
89
|
<ModalFooter>
|
|
75
90
|
{actions.map((action, idx) => {
|
|
@@ -31,8 +31,10 @@ export enum ActionAlertActionType {
|
|
|
31
31
|
|
|
32
32
|
export interface ActionAlertInfo {
|
|
33
33
|
title?: string | undefined;
|
|
34
|
-
message: string;
|
|
35
|
-
|
|
34
|
+
message: string | React.ReactNode;
|
|
35
|
+
messageClass?: string | undefined;
|
|
36
|
+
prompt?: string | React.ReactNode | undefined;
|
|
37
|
+
promptClass?: string | undefined;
|
|
36
38
|
type?: ActionAlertType;
|
|
37
39
|
onClose?: () => void;
|
|
38
40
|
onEnter?: () => void;
|