@j2inn/fin5-ui-utils 0.0.1-alpha.3 → 0.0.1-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/fantomProps/fantomPropsToObject.js +3 -7
- package/dist/fantomProps/fantomPropsToObject.js.map +1 -0
- package/dist/fantomProps/generateJsonFromFantomPropsFile.js +5 -33
- package/dist/fantomProps/generateJsonFromFantomPropsFile.js.map +1 -0
- package/dist/fantomProps/index.js +4 -19
- package/dist/fantomProps/index.js.map +1 -0
- package/dist/fantomProps/readFantomPropsFile.js +5 -30
- package/dist/fantomProps/readFantomPropsFile.js.map +1 -0
- package/dist/fin5Top/fin5Top.js +6 -9
- package/dist/fin5Top/fin5Top.js.map +1 -0
- package/dist/fin5Top/getFin5BinUrl.js +3 -6
- package/dist/fin5Top/getFin5BinUrl.js.map +1 -0
- package/dist/fin5Top/index.js +5 -20
- package/dist/fin5Top/index.js.map +1 -0
- package/dist/fin5Top/openFin5Alarm.js +7 -10
- package/dist/fin5Top/openFin5Alarm.js.map +1 -0
- package/dist/fin5Top/openFin5Historian.js +7 -10
- package/dist/fin5Top/openFin5Historian.js.map +1 -0
- package/dist/index.js +4 -19
- package/dist/index.js.map +1 -0
- package/dist/react/components/{DefaultErrorBoundary → ErrorDisplayer}/index.d.ts +0 -0
- package/dist/react/components/ErrorDisplayer/index.jsx +36 -0
- package/dist/react/components/ErrorDisplayer/index.jsx.map +1 -0
- package/dist/react/components/LoadingSpinner/index.jsx +7 -11
- package/dist/react/components/LoadingSpinner/index.jsx.map +1 -0
- package/dist/react/components/index.d.ts +1 -1
- package/dist/react/components/index.js +6 -21
- package/dist/react/components/index.js.map +1 -0
- package/dist/react/components/navigation/BasicLayout/index.d.ts +1 -1
- package/dist/react/components/navigation/BasicLayout/index.jsx +71 -68
- package/dist/react/components/navigation/BasicLayout/index.jsx.map +1 -0
- package/dist/react/components/navigation/MenuPage/index.jsx +4 -9
- package/dist/react/components/navigation/MenuPage/index.jsx.map +1 -0
- package/dist/react/components/navigation/Router.d.ts +1 -1
- package/dist/react/components/navigation/Router.jsx +10 -39
- package/dist/react/components/navigation/Router.jsx.map +1 -0
- package/package.json +10 -7
- package/dist/react/components/DefaultErrorBoundary/index.jsx +0 -43
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseFantomProps = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* Convert the given fantom props as string to JS object (@see https://fantom.org/doc/sys/InStream#readProps)
|
|
6
3
|
*/
|
|
7
|
-
function fantomPropsToObject(props) {
|
|
4
|
+
export default function fantomPropsToObject(props) {
|
|
8
5
|
let i = 0;
|
|
9
6
|
const readChar = () => {
|
|
10
7
|
if (i < props.length) {
|
|
@@ -21,7 +18,6 @@ function fantomPropsToObject(props) {
|
|
|
21
18
|
};
|
|
22
19
|
return parseFantomProps(readChar, unreadChar);
|
|
23
20
|
}
|
|
24
|
-
exports.default = fantomPropsToObject;
|
|
25
21
|
var UTF_8;
|
|
26
22
|
(function (UTF_8) {
|
|
27
23
|
UTF_8[UTF_8["tab"] = 9] = "tab";
|
|
@@ -55,7 +51,7 @@ const hex = function (c) {
|
|
|
55
51
|
* Parse the Fantom props file character by character.
|
|
56
52
|
* Implementation based on https://github.com/fantom-lang/fantom/blob/master/src/sys/js/fan/InStream.js
|
|
57
53
|
*/
|
|
58
|
-
function parseFantomProps(readChar, unreadChar) {
|
|
54
|
+
export function parseFantomProps(readChar, unreadChar) {
|
|
59
55
|
const props = {};
|
|
60
56
|
let name = '';
|
|
61
57
|
let value = null;
|
|
@@ -177,4 +173,4 @@ function parseFantomProps(readChar, unreadChar) {
|
|
|
177
173
|
throw new Error('Invalid name/value pair [Line ' + lineNum + ']');
|
|
178
174
|
return props;
|
|
179
175
|
}
|
|
180
|
-
|
|
176
|
+
//# sourceMappingURL=fantomPropsToObject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fantomPropsToObject.js","sourceRoot":"","sources":["../../src/fantomProps/fantomPropsToObject.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,37 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
const fs = __importStar(require("fs"));
|
|
30
|
-
const readFantomPropsFile_1 = __importDefault(require("./readFantomPropsFile"));
|
|
31
|
-
async function generateJsonFromFantomPropsFile(inputPath = '../locale/en.props', outputPath = './src/localeKeys.json') {
|
|
32
|
-
const result = await (0, readFantomPropsFile_1.default)(inputPath);
|
|
1
|
+
import * as fs from 'fs';
|
|
2
|
+
import readFantomPropsFile from './readFantomPropsFile';
|
|
3
|
+
export default async function generateJsonFromFantomPropsFile(inputPath = '../locale/en.props', outputPath = './src/localeKeys.json') {
|
|
4
|
+
const result = await readFantomPropsFile(inputPath);
|
|
33
5
|
fs.writeFile(outputPath, JSON.stringify(result, null, '\t'), () => {
|
|
34
6
|
return;
|
|
35
7
|
});
|
|
36
8
|
}
|
|
37
|
-
|
|
9
|
+
//# sourceMappingURL=generateJsonFromFantomPropsFile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateJsonFromFantomPropsFile.js","sourceRoot":"","sources":["../../src/fantomProps/generateJsonFromFantomPropsFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AAEvD,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,+BAA+B,CAC5D,SAAS,GAAG,oBAAoB,EAChC,UAAU,GAAG,uBAAuB;IAEpC,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAEnD,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE;QACjE,OAAM;IACP,CAAC,CAAC,CAAA;AACH,CAAC"}
|
|
@@ -1,19 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./fantomPropsToObject"), exports);
|
|
18
|
-
__exportStar(require("./generateJsonFromFantomPropsFile"), exports);
|
|
19
|
-
__exportStar(require("./readFantomPropsFile"), exports);
|
|
1
|
+
export * from './fantomPropsToObject';
|
|
2
|
+
export * from './generateJsonFromFantomPropsFile';
|
|
3
|
+
export * from './readFantomPropsFile';
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fantomProps/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,mCAAmC,CAAA;AACjD,cAAc,uBAAuB,CAAA"}
|
|
@@ -1,34 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
const fs = __importStar(require("fs"));
|
|
27
|
-
const fantomPropsToObject_1 = require("./fantomPropsToObject");
|
|
1
|
+
import * as fs from 'fs';
|
|
2
|
+
import { parseFantomProps } from './fantomPropsToObject';
|
|
28
3
|
/**
|
|
29
4
|
* Asynchronously read the given Fantom props file to JS object (@see https://fantom.org/doc/sys/InStream#readProps)
|
|
30
5
|
*/
|
|
31
|
-
function readFantomPropsFile(path) {
|
|
6
|
+
export default function readFantomPropsFile(path) {
|
|
32
7
|
return new Promise((resolve, reject) => {
|
|
33
8
|
const fileStream = fs.createReadStream(path);
|
|
34
9
|
fileStream.once('readable', function () {
|
|
@@ -39,7 +14,7 @@ function readFantomPropsFile(path) {
|
|
|
39
14
|
return fileStream.unshift(new Uint8Array([char]));
|
|
40
15
|
};
|
|
41
16
|
try {
|
|
42
|
-
resolve(
|
|
17
|
+
resolve(parseFantomProps(readChar, unreadChar));
|
|
43
18
|
}
|
|
44
19
|
catch (error) {
|
|
45
20
|
reject(error);
|
|
@@ -55,4 +30,4 @@ function readFantomPropsFile(path) {
|
|
|
55
30
|
});
|
|
56
31
|
});
|
|
57
32
|
}
|
|
58
|
-
|
|
33
|
+
//# sourceMappingURL=readFantomPropsFile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readFantomPropsFile.js","sourceRoot":"","sources":["../../src/fantomProps/readFantomPropsFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,EAAE,gBAAgB,EAAS,MAAM,uBAAuB,CAAA;AAE/D;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,IAAY;IACvD,OAAO,IAAI,OAAO,CAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAE5C,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE;YAC3B,MAAM,QAAQ,GAAG,GAAW,EAAE;gBAC7B,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;YACrC,CAAC,CAAA;YAED,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE;gBACnC,OAAO,UAAU,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAClD,CAAC,CAAA;YAED,IAAI;gBACH,OAAO,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAA;aAC/C;YAAC,OAAO,KAAK,EAAE;gBACf,MAAM,CAAC,KAAK,CAAC,CAAA;aACb;oBAAS;gBACT,IAAI;oBACH,UAAU,CAAC,KAAK,EAAE,CAAA;iBAClB;gBAAC,OAAO,GAAG,EAAE;oBACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;iBAClB;aACD;QACF,CAAC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACH,CAAC"}
|
package/dist/fin5Top/fin5Top.js
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Fin5AppNames = exports.isWindowTopFin5 = exports.fin5Top = exports.getFin5top = void 0;
|
|
4
1
|
class Fin5TopRetriever {
|
|
5
2
|
static _fin5Top;
|
|
6
3
|
static get fin5Top() {
|
|
@@ -15,9 +12,9 @@ class Fin5TopRetriever {
|
|
|
15
12
|
return this._fin5Top;
|
|
16
13
|
};
|
|
17
14
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
function isWindowTopFin5(notifyFailure) {
|
|
15
|
+
export const getFin5top = Fin5TopRetriever.getFin5top;
|
|
16
|
+
export const fin5Top = Fin5TopRetriever.fin5Top;
|
|
17
|
+
export function isWindowTopFin5(notifyFailure) {
|
|
21
18
|
try {
|
|
22
19
|
window?.top?.origin;
|
|
23
20
|
if (window.top.finstack) {
|
|
@@ -33,8 +30,7 @@ function isWindowTopFin5(notifyFailure) {
|
|
|
33
30
|
return false;
|
|
34
31
|
}
|
|
35
32
|
}
|
|
36
|
-
|
|
37
|
-
var Fin5AppNames;
|
|
33
|
+
export var Fin5AppNames;
|
|
38
34
|
(function (Fin5AppNames) {
|
|
39
35
|
Fin5AppNames["EQUIP"] = "equip";
|
|
40
36
|
Fin5AppNames["GRAPHICS"] = "graphics";
|
|
@@ -52,4 +48,5 @@ var Fin5AppNames;
|
|
|
52
48
|
Fin5AppNames["LOGOUT"] = "logout";
|
|
53
49
|
Fin5AppNames["GENERIC"] = "generic";
|
|
54
50
|
Fin5AppNames["REPORTS"] = "reports";
|
|
55
|
-
})(Fin5AppNames
|
|
51
|
+
})(Fin5AppNames || (Fin5AppNames = {}));
|
|
52
|
+
//# sourceMappingURL=fin5Top.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fin5Top.js","sourceRoot":"","sources":["../../src/fin5Top/fin5Top.ts"],"names":[],"mappings":"AAGA,MAAM,gBAAgB;IACb,MAAM,CAAC,QAAQ,CAAgB;IAEvC,MAAM,KAAK,OAAO;QACjB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAA;IACzB,CAAC;IACD,MAAM,CAAC,UAAU,GAAG,CAAC,aAA0B,EAAkB,EAAE;QAClE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;YAChC,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,aAAa,CAAC;gBAC7C,CAAC,CAAE,MAAM,CAAC,GAA0B,CAAC,uEAAuE;gBAC5G,CAAC,CAAC,IAAI,CAAA;SACP;QACD,OAAO,IAAI,CAAC,QAAQ,CAAA;IACrB,CAAC,CAAA;;AAGF,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAA;AAErD,MAAM,CAAC,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAA;AAE/C,MAAM,UAAU,eAAe,CAAC,aAA0B;IACzD,IAAI;QACH,MAAM,EAAE,GAAG,EAAE,MAAM,CAAA;QACnB,IAAK,MAAM,CAAC,GAA0B,CAAC,QAAQ,EAAE;YAChD,OAAO,IAAI,CAAA;SACX;aAAM;YACN,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;SAC1C;KACD;IAAC,OAAO,GAAG,EAAE;QACb,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACjB,aAAa,EAAE,EAAE,CAAA;QACjB,OAAO,KAAK,CAAA;KACZ;AACF,CAAC;AA8GD,MAAM,CAAN,IAAY,YAiBX;AAjBD,WAAY,YAAY;IACvB,+BAAe,CAAA;IACf,qCAAqB,CAAA;IACrB,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,+BAAe,CAAA;IACf,mCAAmB,CAAA;IACnB,8CAA8B,CAAA;IAC9B,+BAAe,CAAA;IACf,uCAAuB,CAAA;IACvB,8CAA8B,CAAA;IAC9B,oCAAoB,CAAA;IACpB,wCAAwB,CAAA;IACxB,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;AACpB,CAAC,EAjBW,YAAY,KAAZ,YAAY,QAiBvB"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const fin5Top_1 = require("./fin5Top");
|
|
5
|
-
const getFin5BinUrl = (id) => `/finGetFile/${fin5Top_1.fin5Top?.finstack?.projectName}?fileRef=${id?.toString()}`;
|
|
6
|
-
exports.getFin5BinUrl = getFin5BinUrl;
|
|
1
|
+
import { fin5Top } from './fin5Top';
|
|
2
|
+
export const getFin5BinUrl = (id) => `/finGetFile/${fin5Top?.finstack?.projectName}?fileRef=${id?.toString()}`;
|
|
3
|
+
//# sourceMappingURL=getFin5BinUrl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getFin5BinUrl.js","sourceRoot":"","sources":["../../src/fin5Top/getFin5BinUrl.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAAQ,EAAU,EAAE,CACjD,eAAe,OAAO,EAAE,QAAQ,EAAE,WAAW,YAAY,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAA"}
|
package/dist/fin5Top/index.js
CHANGED
|
@@ -1,20 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./fin5Top"), exports);
|
|
18
|
-
__exportStar(require("./getFin5BinUrl"), exports);
|
|
19
|
-
__exportStar(require("./openFin5Alarm"), exports);
|
|
20
|
-
__exportStar(require("./openFin5Historian"), exports);
|
|
1
|
+
export * from './fin5Top';
|
|
2
|
+
export * from './getFin5BinUrl';
|
|
3
|
+
export * from './openFin5Alarm';
|
|
4
|
+
export * from './openFin5Historian';
|
|
5
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fin5Top/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA"}
|
|
@@ -1,20 +1,17 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
//////////////////////////////////////////////////////////////////////////
|
|
3
2
|
// Alarms
|
|
4
3
|
//////////////////////////////////////////////////////////////////////////
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
fin5Top_1.fin5Top?.app.ToggleCollapse(false);
|
|
11
|
-
let alarmFilters = fin5Top_1.fin5Top?.app?.GetAlarmFilters() ?? {};
|
|
4
|
+
import { fin5Top } from './fin5Top';
|
|
5
|
+
export const openFin5AlarmsApp = async ({ targetRef, filter, historical = false, }) => {
|
|
6
|
+
await fin5Top?.app.NavigateToApp(fin5Top?.app?.APP_NAMES?.ALARMS, targetRef);
|
|
7
|
+
fin5Top?.app.ToggleCollapse(false);
|
|
8
|
+
let alarmFilters = fin5Top?.app?.GetAlarmFilters() ?? {};
|
|
12
9
|
if (filter) {
|
|
13
10
|
alarmFilters = {
|
|
14
11
|
...alarmFilters,
|
|
15
12
|
...filter,
|
|
16
13
|
};
|
|
17
14
|
}
|
|
18
|
-
|
|
15
|
+
fin5Top?.app?.SetAlarmFilters(alarmFilters, historical);
|
|
19
16
|
};
|
|
20
|
-
|
|
17
|
+
//# sourceMappingURL=openFin5Alarm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openFin5Alarm.js","sourceRoot":"","sources":["../../src/fin5Top/openFin5Alarm.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,SAAS;AACT,0EAA0E;AAE1E,OAAO,EAAE,OAAO,EAAa,MAAM,WAAW,CAAA;AAyB9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACvC,SAAS,EACT,MAAM,EACN,UAAU,GAAG,KAAK,GACJ,EAAiB,EAAE;IACjC,MAAM,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;IAC5E,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IAElC,IAAI,YAAY,GAAG,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,CAAA;IACxD,IAAI,MAAM,EAAE;QACX,YAAY,GAAG;YACd,GAAG,YAAY;YACf,GAAG,MAAM;SACT,CAAA;KACD;IAED,OAAO,EAAE,GAAG,EAAE,eAAe,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;AACxD,CAAC,CAAA"}
|
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
//////////////////////////////////////////////////////////////////////////
|
|
3
2
|
// Historian
|
|
4
3
|
//////////////////////////////////////////////////////////////////////////
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const openFin5HistorianApp = async (queryType, args) => {
|
|
9
|
-
if (fin5Top_1.fin5Top) {
|
|
4
|
+
import { fin5Top } from './fin5Top';
|
|
5
|
+
export const openFin5HistorianApp = async (queryType, args) => {
|
|
6
|
+
if (fin5Top) {
|
|
10
7
|
queryType && args
|
|
11
|
-
?
|
|
12
|
-
:
|
|
13
|
-
|
|
8
|
+
? fin5Top.app.OpenHistorianWithOptions(queryType, args)
|
|
9
|
+
: fin5Top.app.NavigateToApp(fin5Top.app.APP_NAMES.TREND_LIST);
|
|
10
|
+
fin5Top?.app.ToggleCollapse(false);
|
|
14
11
|
}
|
|
15
12
|
};
|
|
16
|
-
|
|
13
|
+
//# sourceMappingURL=openFin5Historian.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openFin5Historian.js","sourceRoot":"","sources":["../../src/fin5Top/openFin5Historian.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,YAAY;AACZ,0EAA0E;AAE1E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACxC,SAAyB,EACzB,IAAoB,EACJ,EAAE;IAClB,IAAI,OAAO,EAAE;QACZ,SAAS,IAAI,IAAI;YAChB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,SAAS,EAAE,IAAI,CAAC;YACvD,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAC9D,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;KAClC;AACF,CAAC,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,19 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./fantomProps"), exports);
|
|
18
|
-
__exportStar(require("./fin5Top"), exports);
|
|
19
|
-
__exportStar(require("./react/components"), exports);
|
|
1
|
+
export * from './fantomProps';
|
|
2
|
+
export * from './fin5Top';
|
|
3
|
+
export * from './react/components';
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,oBAAoB,CAAA"}
|
|
File without changes
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Button, Collapse, Container, Result, Typography } from '@j2inn/ui';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
export class DefaultErrorBoundary extends React.Component {
|
|
4
|
+
state = {};
|
|
5
|
+
static getDerivedStateFromError(error) {
|
|
6
|
+
// Update state so the next render will show the fallback UI.
|
|
7
|
+
return { error: error };
|
|
8
|
+
}
|
|
9
|
+
componentDidCatch(error, errorInfo) {
|
|
10
|
+
// You can also log the error to an error reporting service
|
|
11
|
+
console.error(error, errorInfo);
|
|
12
|
+
}
|
|
13
|
+
render() {
|
|
14
|
+
if (this.state.error) {
|
|
15
|
+
// You can render any custom fallback UI
|
|
16
|
+
return (<ErrorDisplayer error={this.state.error} extra={[
|
|
17
|
+
<Button type='primary' key='refresh' onClick={() => window.location.reload()}>
|
|
18
|
+
Refresh The Page
|
|
19
|
+
</Button>,
|
|
20
|
+
]}/>);
|
|
21
|
+
}
|
|
22
|
+
return this.props.children;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export const ErrorDisplayer = ({ error, extra, }) => {
|
|
26
|
+
return (<Result status='error' title='Ouch... Something Went Wrong' subTitle={<Container center>
|
|
27
|
+
<Collapse style={{ width: 600, textAlign: 'left' }}>
|
|
28
|
+
<Collapse.Panel header={`${error.toString()}`} key='1'>
|
|
29
|
+
<Typography.Text style={{ width: 400 }}>
|
|
30
|
+
{error.stack}
|
|
31
|
+
</Typography.Text>
|
|
32
|
+
</Collapse.Panel>
|
|
33
|
+
</Collapse>
|
|
34
|
+
</Container>} extra={extra}/>);
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=index.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../src/react/components/ErrorDisplayer/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAC3E,OAAO,KAA+B,MAAM,OAAO,CAAA;AAUnD,MAAM,OAAO,oBAAqB,SAAQ,KAAK,CAAC,SAA6B;IACnE,KAAK,GAAuB,EAAE,CAAA;IAEvC,MAAM,CAAC,wBAAwB,CAAC,KAAY;QAC3C,6DAA6D;QAC7D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACxB,CAAC;IAEQ,iBAAiB,CAAC,KAAY,EAAE,SAAoB;QAC5D,2DAA2D;QAC3D,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IAChC,CAAC;IAEQ,MAAM;QACd,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YACrB,wCAAwC;YACxC,OAAO,CACN,CAAC,cAAc,CACd,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CACxB,KAAK,CAAC,CAAC;oBACN,CAAC,MAAM,CACN,IAAI,CAAC,SAAS,CACd,GAAG,CAAC,SAAS,CACb,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CACxC;;MACD,EAAE,MAAM,CAAC;iBACT,CAAC,EACD,CACF,CAAA;SACD;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAA;IAC3B,CAAC;CACD;AAOD,MAAM,CAAC,MAAM,cAAc,GAAkC,CAAC,EAC7D,KAAK,EACL,KAAK,GACL,EAAE,EAAE;IACJ,OAAO,CACN,CAAC,MAAM,CACN,MAAM,CAAC,OAAO,CACd,KAAK,CAAC,8BAA8B,CACpC,QAAQ,CAAC,CACR,CAAC,SAAS,CAAC,MAAM,CAChB;KAAA,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAClD;MAAA,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CACrD;OAAA,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CACtC;QAAA,CAAC,KAAK,CAAC,KAAK,CACb;OAAA,EAAE,UAAU,CAAC,IAAI,CAClB;MAAA,EAAE,QAAQ,CAAC,KAAK,CACjB;KAAA,EAAE,QAAQ,CACX;IAAA,EAAE,SAAS,CAAC,CACZ,CACD,KAAK,CAAC,CAAC,KAAK,CAAC,EACZ,CACF,CAAA;AACF,CAAC,CAAA"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const LoadingSpinner = () => (<ui_1.Container center style={{ height: '100%', width: '100%' }}>
|
|
9
|
-
<ui_1.Spin size='large'></ui_1.Spin>
|
|
10
|
-
</ui_1.Container>);
|
|
11
|
-
exports.default = LoadingSpinner;
|
|
1
|
+
import { Container, Spin } from '@j2inn/ui';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
const LoadingSpinner = () => (<Container center style={{ height: '100%', width: '100%' }}>
|
|
4
|
+
<Spin size='large'></Spin>
|
|
5
|
+
</Container>);
|
|
6
|
+
export default LoadingSpinner;
|
|
7
|
+
//# sourceMappingURL=index.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../src/react/components/LoadingSpinner/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,cAAc,GAAa,GAAG,EAAE,CAAC,CACtC,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAC1D;EAAA,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAC1B;CAAA,EAAE,SAAS,CAAC,CACZ,CAAA;AAED,eAAe,cAAc,CAAA"}
|
|
@@ -1,21 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./DefaultErrorBoundary"), exports);
|
|
18
|
-
__exportStar(require("./LoadingSpinner"), exports);
|
|
19
|
-
__exportStar(require("./navigation/BasicLayout"), exports);
|
|
20
|
-
__exportStar(require("./navigation/MenuPage"), exports);
|
|
21
|
-
__exportStar(require("./navigation/Router"), exports);
|
|
1
|
+
export * from './ErrorDisplayer';
|
|
2
|
+
export * from './LoadingSpinner';
|
|
3
|
+
export * from './navigation/BasicLayout';
|
|
4
|
+
export * from './navigation/MenuPage';
|
|
5
|
+
export * from './navigation/Router';
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,0BAA0B,CAAA;AACxC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA"}
|
|
@@ -2,7 +2,7 @@ import { MenuProps } from 'antd';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { MenuPage } from '../MenuPage';
|
|
4
4
|
export interface BasicLayoutProps {
|
|
5
|
-
pages
|
|
5
|
+
pages?: MenuPage[];
|
|
6
6
|
defaultPage?: string;
|
|
7
7
|
onPageChange?: (page: string) => void;
|
|
8
8
|
uncollapsedMenuWidth?: number;
|
|
@@ -1,101 +1,104 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
1
|
+
import { MenuUnfoldOutlined } from '@ant-design/icons';
|
|
2
|
+
import { Button, Layout, Menu } from '@j2inn/ui';
|
|
3
|
+
import React, { useEffect, useState } from 'react';
|
|
4
|
+
import { createUseStyles } from 'react-jss';
|
|
5
|
+
import { ErrorDisplayer } from '../../ErrorDisplayer';
|
|
6
|
+
import { getPage } from '../MenuPage';
|
|
7
|
+
import { Router } from '../Router';
|
|
8
|
+
const useStyles = createUseStyles((theme) => {
|
|
9
|
+
console.log('theme ->', theme);
|
|
10
|
+
return {
|
|
11
|
+
header: {
|
|
12
|
+
position: 'fixed',
|
|
13
|
+
width: '100%',
|
|
14
|
+
zIndex: 1000,
|
|
15
|
+
color: theme.textColorInverse,
|
|
16
|
+
background: theme.primary,
|
|
17
|
+
},
|
|
18
|
+
sider: {
|
|
19
|
+
overflow: 'auto',
|
|
20
|
+
height: '100vh',
|
|
21
|
+
position: 'fixed',
|
|
22
|
+
left: 0,
|
|
23
|
+
top: 0,
|
|
24
|
+
bottom: 0,
|
|
25
|
+
zIndex: 999,
|
|
26
|
+
color: 'red',
|
|
27
|
+
backgroundColor: theme.primary,
|
|
28
|
+
},
|
|
29
|
+
menuTrigger: {
|
|
30
|
+
width: 45,
|
|
31
|
+
height: '100%',
|
|
32
|
+
textAlign: 'center',
|
|
33
|
+
fontSize: 18,
|
|
34
|
+
cursor: 'pointer',
|
|
35
|
+
transition: 'color 0.3s ease-in-out',
|
|
36
|
+
backgroundColor: 'transparent',
|
|
37
|
+
color: 'white',
|
|
38
|
+
},
|
|
39
|
+
// '&:hover': {
|
|
40
|
+
// menuTrigger: {
|
|
41
|
+
// color: theme.primary,
|
|
42
|
+
// backgroundColor: theme.backgroundColorBase,
|
|
43
|
+
// },
|
|
44
|
+
// },
|
|
45
|
+
};
|
|
17
46
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.BasicLayout = void 0;
|
|
27
|
-
const icons_1 = require("@ant-design/icons");
|
|
28
|
-
const ui_1 = require("@j2inn/ui");
|
|
29
|
-
const react_1 = __importStar(require("react"));
|
|
30
|
-
const DefaultErrorBoundary_1 = require("../../DefaultErrorBoundary");
|
|
31
|
-
const MenuPage_1 = require("../MenuPage");
|
|
32
|
-
const Router_1 = require("../Router");
|
|
33
47
|
// Workaround j2inn/ui exporting problem
|
|
34
|
-
const Header =
|
|
35
|
-
const Sider =
|
|
36
|
-
const Content =
|
|
48
|
+
const Header = Layout.Header;
|
|
49
|
+
const Sider = Layout.Sider;
|
|
50
|
+
const Content = Layout.Content;
|
|
37
51
|
const DEFAULT_UNCOLLAPSED_MENU_WIDTH = 45;
|
|
38
52
|
const COLLAPSED_MENU_WIDTH = 0;
|
|
39
|
-
const BasicLayout = ({ pages, defaultPage = pages[0].key, onPageChange, uncollapsedMenuWidth = DEFAULT_UNCOLLAPSED_MENU_WIDTH, menuProps, }) => {
|
|
40
|
-
const
|
|
53
|
+
export const BasicLayout = ({ pages = [], defaultPage = pages?.[0].key ?? '', onPageChange, uncollapsedMenuWidth = DEFAULT_UNCOLLAPSED_MENU_WIDTH, menuProps, }) => {
|
|
54
|
+
const classes = useStyles();
|
|
55
|
+
const [currentPage, setCurrentPage] = useState(defaultPage);
|
|
41
56
|
// Fire onChange
|
|
42
|
-
|
|
57
|
+
useEffect(() => {
|
|
43
58
|
onPageChange?.(currentPage);
|
|
44
59
|
}, [currentPage]);
|
|
45
60
|
// manage mobile navigation
|
|
46
|
-
const [isMobile, setIsMobile] =
|
|
47
|
-
const [hiddenSider, setHiddenSider] =
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
className: 'antd-menu-custom-header-trigger',
|
|
57
|
-
onClick: () => {
|
|
58
|
-
setHiddenSider(!hiddenSider);
|
|
59
|
-
},
|
|
60
|
-
})}
|
|
61
|
+
const [isMobile, setIsMobile] = useState(false);
|
|
62
|
+
const [hiddenSider, setHiddenSider] = useState(false);
|
|
63
|
+
// const [collapsedSider, setCollapsedSider] = useState(false)
|
|
64
|
+
// const actualCollapsedMenuWidth =
|
|
65
|
+
// hiddenSider && isMobile ? 0 : COLLAPSED_MENU_WIDTH
|
|
66
|
+
return (<Layout hasSider>
|
|
67
|
+
{isMobile && (<Header className={classes.header}>
|
|
68
|
+
<MenuUnfoldOutlined className={classes.menuTrigger} onClick={() => {
|
|
69
|
+
setHiddenSider(!hiddenSider);
|
|
70
|
+
}}/>
|
|
61
71
|
</Header>)}
|
|
62
72
|
<Sider breakpoint='md' onBreakpoint={(broken) => {
|
|
63
73
|
setIsMobile(broken);
|
|
64
74
|
setHiddenSider(true);
|
|
65
|
-
}} collapsed={
|
|
66
|
-
overflow: 'auto',
|
|
67
|
-
height: '100vh',
|
|
68
|
-
position: 'fixed',
|
|
69
|
-
left: 0,
|
|
70
|
-
top: 0,
|
|
71
|
-
bottom: 0,
|
|
72
|
-
zIndex: 999,
|
|
75
|
+
}} collapsed={isMobile && hiddenSider} collapsedWidth={COLLAPSED_MENU_WIDTH} trigger={null} className={classes.sider} style={{
|
|
73
76
|
paddingTop: isMobile
|
|
74
77
|
? uncollapsedMenuWidth
|
|
75
78
|
: COLLAPSED_MENU_WIDTH,
|
|
76
79
|
}}>
|
|
77
|
-
<
|
|
80
|
+
<Menu mode='inline' {...menuProps} items={pages} selectedKeys={[currentPage]} onSelect={({ key }) => {
|
|
78
81
|
if (!hiddenSider) {
|
|
79
82
|
setHiddenSider(true);
|
|
80
83
|
}
|
|
81
|
-
const page =
|
|
84
|
+
const page = getPage(pages, key);
|
|
82
85
|
if (page?.component) {
|
|
83
86
|
setCurrentPage(key);
|
|
84
87
|
}
|
|
85
88
|
}}/>
|
|
86
89
|
</Sider>
|
|
87
90
|
<Content style={{
|
|
88
|
-
paddingLeft: actualMenuWidth,
|
|
91
|
+
// paddingLeft: actualMenuWidth,
|
|
89
92
|
paddingTop: isMobile
|
|
90
93
|
? uncollapsedMenuWidth
|
|
91
94
|
: COLLAPSED_MENU_WIDTH,
|
|
92
95
|
}}>
|
|
93
|
-
<
|
|
94
|
-
<
|
|
96
|
+
<Router pages={pages} currentPage={currentPage ?? defaultPage} fallbackComponent={<ErrorDisplayer error={new Error('Page Not Found')} extra={[
|
|
97
|
+
<Button type='primary' key='refresh' onClick={() => setCurrentPage(defaultPage)}>
|
|
95
98
|
Go Home
|
|
96
|
-
</
|
|
99
|
+
</Button>,
|
|
97
100
|
]}/>}/>
|
|
98
101
|
</Content>
|
|
99
|
-
</
|
|
102
|
+
</Layout>);
|
|
100
103
|
};
|
|
101
|
-
|
|
104
|
+
//# sourceMappingURL=index.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../src/react/components/navigation/BasicLayout/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAY,MAAM,WAAW,CAAA;AAE1D,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,OAAO,EAAY,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,KAAe,EAAE,EAAE;IACrD,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;IAE9B,OAAO;QACN,MAAM,EAAE;YACP,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE,KAAK,CAAC,gBAAgB;YAC7B,UAAU,EAAE,KAAK,CAAC,OAAO;SACzB;QACD,KAAK,EAAE;YACN,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,OAAO;YACf,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC;YACP,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,GAAG;YACX,KAAK,EAAE,KAAK;YACZ,eAAe,EAAE,KAAK,CAAC,OAAO;SAC9B;QACD,WAAW,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,QAAQ;YACnB,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,wBAAwB;YACpC,eAAe,EAAE,aAAa;YAC9B,KAAK,EAAE,OAAO;SACd;QACD,eAAe;QACf,kBAAkB;QAClB,0BAA0B;QAC1B,gDAAgD;QAChD,MAAM;QACN,KAAK;KACL,CAAA;AACF,CAAC,CAAC,CAAA;AAEF,wCAAwC;AACxC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAiC,CAAA;AACvD,MAAM,KAAK,GAAG,MAAM,CAAC,KAA+B,CAAA;AACpD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAmC,CAAA;AAE1D,MAAM,8BAA8B,GAAG,EAAE,CAAA;AACzC,MAAM,oBAAoB,GAAG,CAAC,CAAA;AAU9B,MAAM,CAAC,MAAM,WAAW,GAA+B,CAAC,EACvD,KAAK,GAAG,EAAE,EACV,WAAW,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,EAClC,YAAY,EACZ,oBAAoB,GAAG,8BAA8B,EACrD,SAAS,GACT,EAAE,EAAE;IACJ,MAAM,OAAO,GAAG,SAAS,EAAE,CAAA;IAC3B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAA;IAE3D,gBAAgB;IAChB,SAAS,CAAC,GAAG,EAAE;QACd,YAAY,EAAE,CAAC,WAAW,CAAC,CAAA;IAC5B,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAA;IAEjB,2BAA2B;IAC3B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC/C,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACrD,8DAA8D;IAE9D,mCAAmC;IACnC,sDAAsD;IACtD,OAAO,CACN,CAAC,MAAM,CAAC,QAAQ,CACf;GAAA,CAAC,QAAQ,IAAI,CACZ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CACjC;KAAA,CAAC,kBAAkB,CAClB,SAAS,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAC/B,OAAO,CAAC,CAAC,GAAG,EAAE;gBACb,cAAc,CAAC,CAAC,WAAW,CAAC,CAAA;YAC7B,CAAC,CAAC,EAEJ;IAAA,EAAE,MAAM,CAAC,CACT,CACD;GAAA,CAAC,KAAK,CACL,UAAU,CAAC,IAAI,CACf,YAAY,CAAC,CAAC,CAAC,MAAe,EAAE,EAAE;YACjC,WAAW,CAAC,MAAM,CAAC,CAAA;YACnB,cAAc,CAAC,IAAI,CAAC,CAAA;QACrB,CAAC,CAAC,CACF,SAAS,CAAC,CAAC,QAAQ,IAAI,WAAW,CAAC,CACnC,cAAc,CAAC,CAAC,oBAAoB,CAAC,CACrC,OAAO,CAAC,CAAC,IAAI,CAAC,CACd,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CACzB,KAAK,CAAC,CAAC;YACN,UAAU,EAAE,QAAQ;gBACnB,CAAC,CAAC,oBAAoB;gBACtB,CAAC,CAAC,oBAAoB;SACvB,CAAC,CACF;IAAA,CAAC,IAAI,CACJ,IAAI,CAAC,QAAQ,CACb,IAAI,SAAS,CAAC,CACd,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAC5B,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;YACrB,IAAI,CAAC,WAAW,EAAE;gBACjB,cAAc,CAAC,IAAI,CAAC,CAAA;aACpB;YACD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;YAChC,IAAI,IAAI,EAAE,SAAS,EAAE;gBACpB,cAAc,CAAC,GAAG,CAAC,CAAA;aACnB;QACF,CAAC,CAAC,EAEJ;GAAA,EAAE,KAAK,CACP;GAAA,CAAC,OAAO,CACP,KAAK,CAAC,CAAC;YACN,gCAAgC;YAChC,UAAU,EAAE,QAAQ;gBACnB,CAAC,CAAC,oBAAoB;gBACtB,CAAC,CAAC,oBAAoB;SACvB,CAAC,CACF;IAAA,CAAC,MAAM,CACN,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,WAAW,CAAC,CAAC,WAAW,IAAI,WAAW,CAAC,CACxC,iBAAiB,CAAC,CACjB,CAAC,cAAc,CACd,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CACnC,KAAK,CAAC,CAAC;gBACN,CAAC,MAAM,CACN,IAAI,CAAC,SAAS,CACd,GAAG,CAAC,SAAS,CACb,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAC3C;;QACD,EAAE,MAAM,CAAC;aACT,CAAC,EACD,CACF,EAEH;GAAA,EAAE,OAAO,CACV;EAAA,EAAE,MAAM,CAAC,CACT,CAAA;AACF,CAAC,CAAA"}
|
|
@@ -1,28 +1,23 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getAllSubPages = exports.pageTreeToPageList = exports.getPage = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* Retrieve a specific page or subPage from a root page list
|
|
6
3
|
* @param name the name of the searched page
|
|
7
4
|
* @param pages the list of root pages
|
|
8
5
|
*/
|
|
9
|
-
function getPage(pages, name) {
|
|
6
|
+
export function getPage(pages, name) {
|
|
10
7
|
return pageTreeToPageList(pages).find((page) => page.key === name && !page.disabled);
|
|
11
8
|
}
|
|
12
|
-
exports.getPage = getPage;
|
|
13
9
|
/**
|
|
14
10
|
* Expands the list of pages to include all the subpages
|
|
15
11
|
*/
|
|
16
|
-
function pageTreeToPageList(pages) {
|
|
12
|
+
export function pageTreeToPageList(pages) {
|
|
17
13
|
return pages.flatMap((page) => getAllSubPages(page));
|
|
18
14
|
}
|
|
19
|
-
exports.pageTreeToPageList = pageTreeToPageList;
|
|
20
15
|
/**
|
|
21
16
|
* Recursively get all the subPages of a root page
|
|
22
17
|
* @param page root page
|
|
23
18
|
* @returns the whole tree of subPages as a list
|
|
24
19
|
*/
|
|
25
|
-
function getAllSubPages(page) {
|
|
20
|
+
export function getAllSubPages(page) {
|
|
26
21
|
if (page.children) {
|
|
27
22
|
return [page].concat(...page.children.map((subPage) => getAllSubPages(subPage)));
|
|
28
23
|
}
|
|
@@ -30,4 +25,4 @@ function getAllSubPages(page) {
|
|
|
30
25
|
return [page];
|
|
31
26
|
}
|
|
32
27
|
}
|
|
33
|
-
|
|
28
|
+
//# sourceMappingURL=index.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../src/react/components/navigation/MenuPage/index.tsx"],"names":[],"mappings":"AAmBA;;;;GAIG;AACH,MAAM,UAAU,OAAO,CACtB,KAAU,EACV,IAAa;IAEb,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC,IAAI,CACpC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAC7C,CAAA;AACF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAqB,KAAU;IAChE,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAS,CAAC,CAAC,CAAA;AAC1D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAqB,IAAO;IACzD,IAAI,IAAI,CAAC,QAAQ,EAAE;QAClB,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CACnB,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,cAAc,CAAC,OAAY,CAAC,CAAC,CAC/D,CAAA;KACD;SAAM;QACN,OAAO,CAAC,IAAI,CAAC,CAAA;KACb;AACF,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PropsWithChildren, ReactElement } from 'react';
|
|
2
2
|
import { MenuPage } from './MenuPage';
|
|
3
3
|
export interface RouterProps<T extends MenuPage> {
|
|
4
|
-
pages
|
|
4
|
+
pages?: T[];
|
|
5
5
|
currentPage: string;
|
|
6
6
|
onPageChange?: (selectedPage?: T) => void;
|
|
7
7
|
fallbackComponent?: ReactElement;
|
|
@@ -1,45 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.Router = void 0;
|
|
30
|
-
const react_1 = __importStar(require("react"));
|
|
31
|
-
const LoadingSpinner_1 = __importDefault(require("../LoadingSpinner"));
|
|
32
|
-
const MenuPage_1 = require("./MenuPage");
|
|
1
|
+
import React, { Suspense, useEffect, useMemo, } from 'react';
|
|
2
|
+
import LoadingSpinner from '../LoadingSpinner';
|
|
3
|
+
import { getPage } from './MenuPage';
|
|
33
4
|
/**
|
|
34
5
|
* Renders the current selected page from a tree of pages
|
|
35
6
|
*/
|
|
36
|
-
function Router({ pages, currentPage, onPageChange, fallbackComponent, }) {
|
|
37
|
-
const page =
|
|
38
|
-
|
|
7
|
+
export function Router({ pages = [], currentPage, onPageChange, fallbackComponent, }) {
|
|
8
|
+
const page = useMemo(() => getPage(pages, currentPage), [pages, currentPage]);
|
|
9
|
+
useEffect(() => {
|
|
39
10
|
onPageChange?.(page);
|
|
40
11
|
}, [page]);
|
|
41
|
-
return page?.component ? (<
|
|
42
|
-
{
|
|
43
|
-
</
|
|
12
|
+
return page?.component ? (<Suspense fallback={<LoadingSpinner />}>
|
|
13
|
+
{React.createElement(page.component, page?.props)}
|
|
14
|
+
</Suspense>) : (fallbackComponent ?? <div>{currentPage} page not found</div>);
|
|
44
15
|
}
|
|
45
|
-
|
|
16
|
+
//# sourceMappingURL=Router.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Router.jsx","sourceRoot":"","sources":["../../../../src/react/components/navigation/Router.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAGb,QAAQ,EACR,SAAS,EACT,OAAO,GACP,MAAM,OAAO,CAAA;AACd,OAAO,cAAc,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAY,MAAM,YAAY,CAAA;AAS9C;;GAEG;AACH,MAAM,UAAU,MAAM,CAAqB,EAC1C,KAAK,GAAG,EAAE,EACV,WAAW,EACX,YAAY,EACZ,iBAAiB,GACkB;IACnC,MAAM,IAAI,GAAG,OAAO,CACnB,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,EACjC,CAAC,KAAK,EAAE,WAAW,CAAC,CACpB,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACd,YAAY,EAAE,CAAC,IAAI,CAAC,CAAA;IACrB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IAEV,OAAO,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CACxB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,AAAD,EAAG,CAAC,CACtC;GAAA,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,CAClD;EAAA,EAAE,QAAQ,CAAC,CACX,CAAC,CAAC,CAAC,CACH,iBAAiB,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,CAAE,eAAc,EAAE,GAAG,CAAC,CAC5D,CAAA;AACF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@j2inn/fin5-ui-utils",
|
|
3
|
-
"version": "0.0.1-alpha.
|
|
3
|
+
"version": "0.0.1-alpha.6",
|
|
4
4
|
"description": "A set of useful client-side utilities useful for creating UI applications on top of FIN 5",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -8,14 +8,15 @@
|
|
|
8
8
|
"clean": "rimraf ./dist",
|
|
9
9
|
"doc": "typedoc ./src --excludePrivate",
|
|
10
10
|
"prebuild": "npm run clean",
|
|
11
|
-
"build": "tsc",
|
|
11
|
+
"build": "tsc --project ./scripts && tsc",
|
|
12
12
|
"checktypes": "tsc --noEmit",
|
|
13
13
|
"format": "prettier-eslint --list-different --write \"$(pwd)/src/**/*.{ts,tsx,js,jsx}\"",
|
|
14
14
|
"lint": "eslint --fix --ext ts,tsx,js,jsx src/",
|
|
15
15
|
"lint-staged": "lint-staged",
|
|
16
16
|
"test": "cross-env NODE_ENV=test && npm run test:jest",
|
|
17
17
|
"test:jest": "jest --passWithNoTests",
|
|
18
|
-
"prepack": "npm run lint && npm
|
|
18
|
+
"prepack": "npm run lint && npm run build",
|
|
19
|
+
"watch": "tsc --watch"
|
|
19
20
|
},
|
|
20
21
|
"author": "",
|
|
21
22
|
"license": "ISC",
|
|
@@ -23,15 +24,17 @@
|
|
|
23
24
|
"dist/**/*"
|
|
24
25
|
],
|
|
25
26
|
"dependencies": {
|
|
27
|
+
"@hot-loader/react-dom": "^17.0.2",
|
|
28
|
+
"@j2inn/react-config": "^4.0.10",
|
|
29
|
+
"@j2inn/ui": "^5.0.0-beta.6",
|
|
30
|
+
"@j2inn/utils": "^5.0.6",
|
|
26
31
|
"haystack-core": "^2.0.29",
|
|
27
32
|
"haystack-nclient": "^3.0.12",
|
|
28
33
|
"haystack-react": "^3.0.3",
|
|
29
|
-
"haystack-units": "^1.0.12"
|
|
30
|
-
"@j2inn/react-config": "^4.0.10",
|
|
31
|
-
"@j2inn/ui": "^5.0.0-beta.6",
|
|
32
|
-
"@j2inn/utils": "^5.0.6"
|
|
34
|
+
"haystack-units": "^1.0.12"
|
|
33
35
|
},
|
|
34
36
|
"peerDependencies": {
|
|
37
|
+
"react-jss": "^10.9.0",
|
|
35
38
|
"react": "^17.0.2",
|
|
36
39
|
"react-dom": "^17.0.2"
|
|
37
40
|
},
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ErrorDisplayer = exports.DefaultErrorBoundary = void 0;
|
|
7
|
-
const ui_1 = require("@j2inn/ui");
|
|
8
|
-
const react_1 = __importDefault(require("react"));
|
|
9
|
-
class DefaultErrorBoundary extends react_1.default.Component {
|
|
10
|
-
state = {};
|
|
11
|
-
static getDerivedStateFromError(error) {
|
|
12
|
-
// Update state so the next render will show the fallback UI.
|
|
13
|
-
return { error: error };
|
|
14
|
-
}
|
|
15
|
-
componentDidCatch(error, errorInfo) {
|
|
16
|
-
// You can also log the error to an error reporting service
|
|
17
|
-
console.error(error, errorInfo);
|
|
18
|
-
}
|
|
19
|
-
render() {
|
|
20
|
-
if (this.state.error) {
|
|
21
|
-
// You can render any custom fallback UI
|
|
22
|
-
return (<exports.ErrorDisplayer error={this.state.error} extra={[
|
|
23
|
-
<ui_1.Button type='primary' key='refresh' onClick={() => window.location.reload()}>
|
|
24
|
-
Refresh The Page
|
|
25
|
-
</ui_1.Button>,
|
|
26
|
-
]}/>);
|
|
27
|
-
}
|
|
28
|
-
return this.props.children;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
exports.DefaultErrorBoundary = DefaultErrorBoundary;
|
|
32
|
-
const ErrorDisplayer = ({ error, extra, }) => {
|
|
33
|
-
return (<ui_1.Result status='error' title='Ouch... Something Went Wrong' subTitle={<ui_1.Container center>
|
|
34
|
-
<ui_1.Collapse style={{ width: 600, textAlign: 'left' }}>
|
|
35
|
-
<ui_1.Collapse.Panel header={`${error.toString()}`} key='1'>
|
|
36
|
-
<ui_1.Typography.Text style={{ width: 400 }}>
|
|
37
|
-
{error.stack}
|
|
38
|
-
</ui_1.Typography.Text>
|
|
39
|
-
</ui_1.Collapse.Panel>
|
|
40
|
-
</ui_1.Collapse>
|
|
41
|
-
</ui_1.Container>} extra={extra}/>);
|
|
42
|
-
};
|
|
43
|
-
exports.ErrorDisplayer = ErrorDisplayer;
|