@codenotch/codenotch.react 1.0.81 → 2.0.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.
- package/README.md +57 -19
- package/dist/components/CodeEditor.d.ts +1 -1
- package/dist/components/CodeEditor.d.ts.map +1 -1
- package/dist/components/CodeEditor.js +66 -64
- package/dist/index.d.ts +86 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +158 -26
- package/dist/models/Codenotch.d.ts +30 -13
- package/dist/models/Codenotch.d.ts.map +1 -1
- package/package.json +46 -44
- package/src/components/CodeEditor.tsx +204 -203
- package/src/index.ts +531 -386
- package/src/models/Codenotch.ts +31 -13
- package/dist/components/Auml.d.ts +0 -46
- package/dist/components/Auml.d.ts.map +0 -1
- package/dist/components/Auml.js +0 -208
- package/dist/models/AppManifestModels.d.ts +0 -46
- package/dist/models/AppManifestModels.d.ts.map +0 -1
- package/dist/models/AppManifestModels.js +0 -2
- package/dist/models/ProjectManifestModels.d.ts +0 -126
- package/dist/models/ProjectManifestModels.d.ts.map +0 -1
- package/dist/models/ProjectManifestModels.js +0 -158
- package/dist/utils/I18nUtils.d.ts +0 -7
- package/dist/utils/I18nUtils.d.ts.map +0 -1
- package/dist/utils/I18nUtils.js +0 -37
- package/src/models/AppManifestModels.ts +0 -54
package/src/models/Codenotch.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import { ProjectManifest, IAppManifest } from "@codenotch/codenotch.core";
|
|
2
3
|
import { ICodenotchSignal, IDisposable } from "./Misc";
|
|
3
|
-
import { ApplicationManifest } from "./AppManifestModels";
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Runtime environment of a Codenotch application.
|
|
@@ -29,7 +29,7 @@ export interface ICodenotchEnv {
|
|
|
29
29
|
theme?: 'light' | 'dark';
|
|
30
30
|
|
|
31
31
|
/** Manifest of the current application (the `<AppName>.manifest.json` file next to the app). */
|
|
32
|
-
appManifest?:
|
|
32
|
+
appManifest?: IAppManifest;
|
|
33
33
|
/** Manifest of the Codenotch project (the project's `manifest.json` file). */
|
|
34
34
|
projectManifest?: ProjectManifest;
|
|
35
35
|
|
|
@@ -135,10 +135,14 @@ export interface IProcessResult<T = any> {
|
|
|
135
135
|
}
|
|
136
136
|
|
|
137
137
|
/**
|
|
138
|
-
* The Codenotch client API
|
|
138
|
+
* The Codenotch client API.
|
|
139
|
+
*
|
|
140
|
+
* Obtained with the `useCodenotch()` hook in function components, through the
|
|
141
|
+
* `cn` prop injected by `withCodenotch()` in class components, or with the
|
|
142
|
+
* plain `getCodenotch()` function anywhere else (handlers, modules, services).
|
|
139
143
|
*
|
|
140
144
|
* It is the bridge between a React app and the Codenotch runtime: it starts
|
|
141
|
-
* server-side BPMN processes, runs
|
|
145
|
+
* server-side BPMN processes, runs CNQL queries, translates i18n keys,
|
|
142
146
|
* listens to real-time signals and manages theme/language.
|
|
143
147
|
*
|
|
144
148
|
* @example
|
|
@@ -191,24 +195,24 @@ export interface ICodenotchApi {
|
|
|
191
195
|
readonly env: ICodenotchEnv;
|
|
192
196
|
|
|
193
197
|
/**
|
|
194
|
-
* Execute a
|
|
198
|
+
* Execute a CNQL query (XML, SELECT-only) against the project's SQL tables and return the parsed JSON result.
|
|
195
199
|
*
|
|
196
200
|
* The root element's `xmlns` must be the project's `serviceName`. Results are
|
|
197
201
|
* keyed by the `Ref` attribute of each queried table.
|
|
198
202
|
*
|
|
199
|
-
* @param
|
|
203
|
+
* @param cnql The CNQL XML query.
|
|
200
204
|
* @param verbose When `true`, asks the server for a verbose response (debugging).
|
|
201
205
|
* @example
|
|
202
|
-
* const data = await cn.
|
|
203
|
-
* <
|
|
206
|
+
* const data = await cn.requestCnql(`
|
|
207
|
+
* <CNQL xmlns="myproject" PageSize="10" PageIndex="0">
|
|
204
208
|
* <Users Ref="results">
|
|
205
209
|
* <Id />
|
|
206
210
|
* <Email />
|
|
207
211
|
* </Users>
|
|
208
|
-
* </
|
|
212
|
+
* </CNQL>`);
|
|
209
213
|
* console.log(data.results); // [{ Id: ..., Email: ... }, ...]
|
|
210
214
|
*/
|
|
211
|
-
readonly
|
|
215
|
+
readonly requestCnql: (cnql: string, verbose?: boolean) => Promise<any>;
|
|
212
216
|
|
|
213
217
|
/**
|
|
214
218
|
* Render the given React element in a fullscreen modal `<dialog>` overlay.
|
|
@@ -224,7 +228,7 @@ export interface ICodenotchApi {
|
|
|
224
228
|
* </div>
|
|
225
229
|
* );
|
|
226
230
|
*/
|
|
227
|
-
readonly showDialog: (node:
|
|
231
|
+
readonly showDialog: (node: ReactNode) => ICodenotchDialog;
|
|
228
232
|
|
|
229
233
|
/**
|
|
230
234
|
* Fetch the text content of a file of the deployed Codenotch project.
|
|
@@ -271,7 +275,21 @@ export interface ICodenotchApi {
|
|
|
271
275
|
/** Manifest of the Codenotch project. Throws if not available in the environment. */
|
|
272
276
|
readonly getProjectManifest: () => ProjectManifest;
|
|
273
277
|
/** Manifest of the current application, if any. */
|
|
274
|
-
readonly getAppManifest: () =>
|
|
278
|
+
readonly getAppManifest: () => IAppManifest | undefined;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
/**
|
|
282
|
+
* Props injected by the `withCodenotch()` higher-order component.
|
|
283
|
+
* Extend it in the props of a class component wrapped by `withCodenotch`.
|
|
284
|
+
*
|
|
285
|
+
* @example
|
|
286
|
+
* interface Props extends WithCodenotchProps { userId: string }
|
|
287
|
+
* class TodoList extends React.Component<Props> { ... }
|
|
288
|
+
* export default withCodenotch(TodoList);
|
|
289
|
+
*/
|
|
290
|
+
export interface WithCodenotchProps {
|
|
291
|
+
/** The Codenotch client API; refreshed (new reference) whenever the environment changes. */
|
|
292
|
+
cn: ICodenotchApi;
|
|
275
293
|
}
|
|
276
294
|
|
|
277
295
|
/**
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { SpaRenderStatus } from '@echino/echino.ui.framework/components/SpaBuilder/common/ISpaRenderProps';
|
|
3
|
-
import type { ICodenotchEnv } from "../models/Codenotch";
|
|
4
|
-
interface IAumlProps {
|
|
5
|
-
/** The AUML (XML) application description to render. */
|
|
6
|
-
value: string;
|
|
7
|
-
/** When `true`, logs compilation and token-refresh details to the console. */
|
|
8
|
-
verbose?: boolean;
|
|
9
|
-
/** Codenotch environment; provides the i18n dictionaries injected into the AUML and the theme. */
|
|
10
|
-
env?: ICodenotchEnv;
|
|
11
|
-
}
|
|
12
|
-
interface IAumlState {
|
|
13
|
-
loaded: boolean;
|
|
14
|
-
inspectorEnabled: boolean;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Renders a legacy AUML (XML) application description inside a React app.
|
|
18
|
-
*
|
|
19
|
-
* Compiles the AUML with the environment's i18n variables, renders it through
|
|
20
|
-
* the Echino SPA renderer, shows a loading overlay until completed, and keeps
|
|
21
|
-
* the user's access token refreshed in the background.
|
|
22
|
-
*
|
|
23
|
-
* Relies on globals injected by the Codenotch runtime hosting page
|
|
24
|
-
* (`serviceName`, `tenant`, `user`, `languages`, `appManifest`…) — it is not
|
|
25
|
-
* usable outside a Codenotch-served application.
|
|
26
|
-
*/
|
|
27
|
-
export declare class Auml extends React.Component<IAumlProps, IAumlState> {
|
|
28
|
-
_refreshTokenTimer: NodeJS.Timeout | undefined;
|
|
29
|
-
constructor(props: IAumlProps);
|
|
30
|
-
componentDidMount(): void;
|
|
31
|
-
registerRefreshToken(): void;
|
|
32
|
-
componentWillUnmount(): void;
|
|
33
|
-
progress(s: SpaRenderStatus): void;
|
|
34
|
-
retrieveInputs(): {
|
|
35
|
-
[k: string]: string;
|
|
36
|
-
};
|
|
37
|
-
getTimeToTokenExpiration(): number | null;
|
|
38
|
-
getTimeToNewTokenExpiration(expirationDateTime: string): number;
|
|
39
|
-
msToTime(ms: number): string;
|
|
40
|
-
parseJwt(token: string): any;
|
|
41
|
-
render(): React.JSX.Element;
|
|
42
|
-
renderLoadingContent(): React.JSX.Element;
|
|
43
|
-
refreshExpiredToken(): Promise<void>;
|
|
44
|
-
}
|
|
45
|
-
export {};
|
|
46
|
-
//# sourceMappingURL=Auml.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Auml.d.ts","sourceRoot":"","sources":["../../src/components/Auml.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,0EAA0E,CAAC;AAE3G,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AASzD,UAAU,UAAU;IAChB,wDAAwD;IACxD,KAAK,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kGAAkG;IAClG,GAAG,CAAC,EAAE,aAAa,CAAC;CACvB;AAED,UAAU,UAAU;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;GAUG;AACH,qBAAa,IAAK,SAAQ,KAAK,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC;IAE7D,kBAAkB,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;gBAEnC,KAAK,EAAE,UAAU;IAa7B,iBAAiB;IAIjB,oBAAoB;IAoCpB,oBAAoB;IAOpB,QAAQ,CAAC,CAAC,EAAE,eAAe;IAS3B,cAAc;;;IAMd,wBAAwB,IAAI,MAAM,GAAG,IAAI;IAqCzC,2BAA2B,CAAC,kBAAkB,EAAE,MAAM,GAAG,MAAM;IAO/D,QAAQ,CAAC,EAAE,EAAE,MAAM;IAmBnB,QAAQ,CAAC,KAAK,EAAE,MAAM;IAUtB,MAAM;IAoDN,oBAAoB;IAkBd,mBAAmB;CAoC5B"}
|
package/dist/components/Auml.js
DELETED
|
@@ -1,208 +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.Auml = void 0;
|
|
7
|
-
const react_1 = __importDefault(require("react"));
|
|
8
|
-
const SpaRenderWithBrowserRouter_1 = require("@echino/echino.ui.framework/components/SpaBuilder/SpaRender/SpaRenderWithBrowserRouter");
|
|
9
|
-
const I18nUtils_1 = __importDefault(require("../utils/I18nUtils"));
|
|
10
|
-
/**
|
|
11
|
-
* Renders a legacy AUML (XML) application description inside a React app.
|
|
12
|
-
*
|
|
13
|
-
* Compiles the AUML with the environment's i18n variables, renders it through
|
|
14
|
-
* the Echino SPA renderer, shows a loading overlay until completed, and keeps
|
|
15
|
-
* the user's access token refreshed in the background.
|
|
16
|
-
*
|
|
17
|
-
* Relies on globals injected by the Codenotch runtime hosting page
|
|
18
|
-
* (`serviceName`, `tenant`, `user`, `languages`, `appManifest`…) — it is not
|
|
19
|
-
* usable outside a Codenotch-served application.
|
|
20
|
-
*/
|
|
21
|
-
class Auml extends react_1.default.Component {
|
|
22
|
-
constructor(props) {
|
|
23
|
-
super(props);
|
|
24
|
-
this.state = {
|
|
25
|
-
loaded: false,
|
|
26
|
-
inspectorEnabled: false
|
|
27
|
-
};
|
|
28
|
-
if (typeof user === 'undefined') {
|
|
29
|
-
let globalObject = typeof window !== 'undefined' ? window : globalThis;
|
|
30
|
-
globalObject['user'] = null; // Make sure user is defined
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
componentDidMount() {
|
|
34
|
-
this.registerRefreshToken();
|
|
35
|
-
}
|
|
36
|
-
registerRefreshToken() {
|
|
37
|
-
try {
|
|
38
|
-
// Setup a method to refresh our access token when it expires
|
|
39
|
-
if (this._refreshTokenTimer) {
|
|
40
|
-
clearTimeout(this._refreshTokenTimer);
|
|
41
|
-
}
|
|
42
|
-
if (user === null) {
|
|
43
|
-
if (this.props.verbose === true) {
|
|
44
|
-
console.log("No user found, will not refresh the token");
|
|
45
|
-
}
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
let timeToExpireMs = this.getTimeToTokenExpiration();
|
|
49
|
-
if (timeToExpireMs === null) {
|
|
50
|
-
if (this.props.verbose === true) {
|
|
51
|
-
console.log("No identity token found, attempting refreshing the token in 5 minutes");
|
|
52
|
-
}
|
|
53
|
-
this._refreshTokenTimer = setTimeout(() => this.refreshExpiredToken(), 5 * 60 * 1000);
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
if (timeToExpireMs <= 0) {
|
|
57
|
-
// Refresh it immediatelty
|
|
58
|
-
this.refreshExpiredToken();
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
this._refreshTokenTimer = setTimeout(() => this.refreshExpiredToken(), timeToExpireMs);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
catch (err) {
|
|
65
|
-
console.warn("Could not setup token refresh timer: " + err);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
componentWillUnmount() {
|
|
69
|
-
// Cleanup the refresh of the token
|
|
70
|
-
if (this._refreshTokenTimer) {
|
|
71
|
-
clearTimeout(this._refreshTokenTimer);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
progress(s) {
|
|
75
|
-
//console.log('progessStatus ', s);
|
|
76
|
-
if (s === 'completed') {
|
|
77
|
-
this.setState({ loaded: true });
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
// Get input from the query parameters in the url
|
|
81
|
-
retrieveInputs() {
|
|
82
|
-
return Object.fromEntries(new URLSearchParams(window.location.search).entries());
|
|
83
|
-
}
|
|
84
|
-
getTimeToTokenExpiration() {
|
|
85
|
-
// The identity token is the only one we have access here on the client
|
|
86
|
-
// We use it to know when the access token (which we can't read) will expire
|
|
87
|
-
let identityToken = null;
|
|
88
|
-
let identityTokenKey = `${tenant.name}IdToken=`;
|
|
89
|
-
let cookies = document.cookie.split(';');
|
|
90
|
-
for (let c of cookies) {
|
|
91
|
-
if (c.trim().startsWith(identityTokenKey)) {
|
|
92
|
-
identityToken = c.trim().slice(identityTokenKey.length);
|
|
93
|
-
break;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
if (identityToken === null) {
|
|
97
|
-
return null; // token not found
|
|
98
|
-
}
|
|
99
|
-
let identityTokenParsed = this.parseJwt(identityToken);
|
|
100
|
-
let expires = identityTokenParsed.exp; // Timestamp in second since Unix epoch
|
|
101
|
-
let timeToExpiresMs = expires * 1000 - new Date().getTime();
|
|
102
|
-
let timeToExpireStr = this.msToTime(timeToExpiresMs);
|
|
103
|
-
if (this.props.verbose === true) {
|
|
104
|
-
console.log(`Token will expire at ${new Date(expires * 1000).toISOString()} (in ${timeToExpireStr}), setting up a timer to refresh it`);
|
|
105
|
-
}
|
|
106
|
-
// Refresh it a bit before the expiration (5 min)
|
|
107
|
-
timeToExpiresMs -= 5 * 60 * 1000;
|
|
108
|
-
return timeToExpiresMs;
|
|
109
|
-
}
|
|
110
|
-
getTimeToNewTokenExpiration(expirationDateTime) {
|
|
111
|
-
let timeToExpiresMs = new Date(expirationDateTime).getTime() - new Date().getTime();
|
|
112
|
-
// Refresh it a bit before the expiration (5 min)
|
|
113
|
-
timeToExpiresMs -= 5 * 60 * 1000;
|
|
114
|
-
return timeToExpiresMs;
|
|
115
|
-
}
|
|
116
|
-
msToTime(ms) {
|
|
117
|
-
let seconds = Math.floor((ms / 1000) % 60), minutes = Math.floor((ms / (1000 * 60)) % 60), hours = Math.floor((ms / (1000 * 60 * 60)) % 24);
|
|
118
|
-
let timeString = seconds + " seconds";
|
|
119
|
-
if (minutes > 0) {
|
|
120
|
-
timeString = minutes + " minutes " + timeString;
|
|
121
|
-
}
|
|
122
|
-
if (hours > 0) {
|
|
123
|
-
timeString = hours + " hours " + timeString;
|
|
124
|
-
}
|
|
125
|
-
return timeString;
|
|
126
|
-
}
|
|
127
|
-
parseJwt(token) {
|
|
128
|
-
var base64Url = token.split('.')[1];
|
|
129
|
-
var base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');
|
|
130
|
-
var jsonPayload = decodeURIComponent(window.atob(base64).split('').map(function (c) {
|
|
131
|
-
return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
|
|
132
|
-
}).join(''));
|
|
133
|
-
return JSON.parse(jsonPayload);
|
|
134
|
-
}
|
|
135
|
-
render() {
|
|
136
|
-
let inputs = this.retrieveInputs();
|
|
137
|
-
let theme = this.props.env?.theme === "dark";
|
|
138
|
-
let aumlManifest = null;
|
|
139
|
-
try {
|
|
140
|
-
let appManifestObj = JSON.parse(appManifest);
|
|
141
|
-
aumlManifest = appManifestObj.auml;
|
|
142
|
-
}
|
|
143
|
-
catch { }
|
|
144
|
-
let auml = this.props.value;
|
|
145
|
-
if (this.props.env) {
|
|
146
|
-
try {
|
|
147
|
-
auml = I18nUtils_1.default.compileAuml(auml, this.props.env);
|
|
148
|
-
if (this.props.verbose === true) {
|
|
149
|
-
console.log("Compiled AUML with i18n variables: ", auml);
|
|
150
|
-
console.log("i18n variables: ", this.props.env.i18n);
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
catch (err) {
|
|
154
|
-
console.error("Error compiling AUML with i18n variables: " + err);
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
return react_1.default.createElement("div", { className: "app" },
|
|
158
|
-
react_1.default.createElement(SpaRenderWithBrowserRouter_1.SpaRenderWithBrowserRouter, { appDescription: auml, tenant: tenant, serviceName: serviceName, packageVersions: packageVersions, user: user, languages: languages, onProgress: (s) => this.progress(s), input: inputs, theme: theme, manifest: aumlManifest, inspectorEnabled: this.state.inspectorEnabled, children: [] }),
|
|
159
|
-
!this.state.loaded &&
|
|
160
|
-
react_1.default.createElement("div", { className: `app-loading ${this.props.env?.theme ?? 'light'}` },
|
|
161
|
-
this.renderLoadingContent(),
|
|
162
|
-
react_1.default.createElement("i", { className: "fas fa-circle-notch fa-spin" })));
|
|
163
|
-
}
|
|
164
|
-
renderLoadingContent() {
|
|
165
|
-
try {
|
|
166
|
-
//@ts-ignore
|
|
167
|
-
let tenant = global.tenant;
|
|
168
|
-
if (tenant.logoUrl) {
|
|
169
|
-
return react_1.default.createElement("img", { src: tenant.logoUrl, alt: tenant.displayName });
|
|
170
|
-
}
|
|
171
|
-
else {
|
|
172
|
-
return react_1.default.createElement("div", { className: 'app-loading-title' }, tenant.displayName);
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
catch (e) {
|
|
176
|
-
console.warn("Could not load tenant information: " + e);
|
|
177
|
-
return react_1.default.createElement("div", { className: 'app-loading-title' }, "Loading...");
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
async refreshExpiredToken() {
|
|
181
|
-
console.log("Token will expire soon, requesting a new one...");
|
|
182
|
-
// Using the refresh token we ask for a new access token using /portal/login/refresh
|
|
183
|
-
// If the refresh token has also expired, we will be redirected to the login page
|
|
184
|
-
let redirectUrl = window.location.href; // Where to send us back in case we need to be redirected to the login page
|
|
185
|
-
let url = `${tenant.clusterUrl}/portal/login/refresh?redirectUrl=${encodeURIComponent(redirectUrl)}`;
|
|
186
|
-
let response = await fetch(url); // For this request to work, we need to have a refresh token in the cookies
|
|
187
|
-
if (response.ok) {
|
|
188
|
-
// Setup next refresh
|
|
189
|
-
let timeToExpireMs;
|
|
190
|
-
try {
|
|
191
|
-
let newTokenExpiration = await response.text();
|
|
192
|
-
timeToExpireMs = this.getTimeToNewTokenExpiration(newTokenExpiration);
|
|
193
|
-
}
|
|
194
|
-
catch {
|
|
195
|
-
timeToExpireMs = 2 * 60 * 60 * 1000; // refresh in 2 hours
|
|
196
|
-
}
|
|
197
|
-
console.log(`Refresh request ok, next refresh in ${this.msToTime(timeToExpireMs)}`);
|
|
198
|
-
this._refreshTokenTimer = setTimeout(() => this.refreshExpiredToken(), timeToExpireMs);
|
|
199
|
-
}
|
|
200
|
-
else {
|
|
201
|
-
let content = await response.text();
|
|
202
|
-
console.error("Could not refresh the token", content);
|
|
203
|
-
console.log("Retrying refreshing the token in 5 minutes...");
|
|
204
|
-
this._refreshTokenTimer = setTimeout(() => this.refreshExpiredToken(), 5 * 60 * 1000);
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
exports.Auml = Auml;
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
export interface ApplicationManifest {
|
|
2
|
-
pwa?: PWAManifest;
|
|
3
|
-
html?: HTMLManifest;
|
|
4
|
-
auml?: AUMLManifest;
|
|
5
|
-
}
|
|
6
|
-
export interface HTMLManifest {
|
|
7
|
-
title?: string;
|
|
8
|
-
description?: string;
|
|
9
|
-
author?: string;
|
|
10
|
-
keywords?: string;
|
|
11
|
-
charset?: string;
|
|
12
|
-
}
|
|
13
|
-
export interface PWAManifest {
|
|
14
|
-
background_color?: string;
|
|
15
|
-
description?: string;
|
|
16
|
-
dir?: string;
|
|
17
|
-
display?: string;
|
|
18
|
-
icons?: PWAManifestIcon[];
|
|
19
|
-
lang?: string;
|
|
20
|
-
name?: string;
|
|
21
|
-
orientation?: string;
|
|
22
|
-
prefer_related_applications?: boolean;
|
|
23
|
-
related_applications?: PWAManifestRelatedApplications[];
|
|
24
|
-
scope?: string;
|
|
25
|
-
short_name?: string;
|
|
26
|
-
start_url?: string;
|
|
27
|
-
theme_color?: string;
|
|
28
|
-
shortcuts?: string;
|
|
29
|
-
display_override?: string[];
|
|
30
|
-
}
|
|
31
|
-
export interface PWAManifestIcon {
|
|
32
|
-
src?: string;
|
|
33
|
-
sizes?: string;
|
|
34
|
-
type?: string;
|
|
35
|
-
}
|
|
36
|
-
export interface PWAManifestRelatedApplications {
|
|
37
|
-
platform?: string;
|
|
38
|
-
url?: string;
|
|
39
|
-
id?: string;
|
|
40
|
-
}
|
|
41
|
-
export interface AUMLManifest {
|
|
42
|
-
name?: string;
|
|
43
|
-
description?: string;
|
|
44
|
-
logoURL?: string;
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=AppManifestModels.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AppManifestModels.d.ts","sourceRoot":"","sources":["../../src/models/AppManifestModels.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,mBAAmB;IAChC,GAAG,CAAC,EAAE,WAAW,CAAC;IAElB,IAAI,CAAC,EAAE,YAAY,CAAC;IAEpB,IAAI,CAAC,EAAE,YAAY,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,eAAe,EAAE,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,oBAAoB,CAAC,EAAE,8BAA8B,EAAE,CAAC;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,eAAe;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,8BAA8B;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
import { JSONSchema7 } from "json-schema";
|
|
2
|
-
export declare class ProjectManifest {
|
|
3
|
-
projectName: string;
|
|
4
|
-
serviceName: string;
|
|
5
|
-
version: string;
|
|
6
|
-
index?: string;
|
|
7
|
-
packages: {
|
|
8
|
-
[packageSource: string]: string;
|
|
9
|
-
};
|
|
10
|
-
apis: ProjectManifestApi[];
|
|
11
|
-
languages?: string[];
|
|
12
|
-
dependencies?: (ProjectManifestDependency | string)[];
|
|
13
|
-
applications: ProjectManifestApplication[];
|
|
14
|
-
reactApplications: ProjectManifestReactApplication[] | undefined;
|
|
15
|
-
expressComponents: ProjectManifestExpressComponent[] | undefined;
|
|
16
|
-
scripts: ProjectManifestScript[] | undefined;
|
|
17
|
-
pdfs: ProjectManifestPdf[] | undefined;
|
|
18
|
-
emails: ProjectManifestEmail[] | undefined;
|
|
19
|
-
htmls: ProjectManifestHtml[] | undefined;
|
|
20
|
-
processes: ProjectManifestProcess[];
|
|
21
|
-
tableDataSources: ProjectManifestDatastore[];
|
|
22
|
-
documentDataSources: ProjectManifestDatastore[];
|
|
23
|
-
roles: ProjectManifestRole[];
|
|
24
|
-
postInstallationProcesses?: ProjectManifestPostInstallationProcess[];
|
|
25
|
-
constructor();
|
|
26
|
-
}
|
|
27
|
-
export declare class ProjectManifestPostInstallationProcess {
|
|
28
|
-
processName: string;
|
|
29
|
-
startEvent: string;
|
|
30
|
-
}
|
|
31
|
-
export declare class ProjectManifestDependency {
|
|
32
|
-
name: string;
|
|
33
|
-
version?: string;
|
|
34
|
-
}
|
|
35
|
-
export declare class ProjectManifestRole {
|
|
36
|
-
name: string;
|
|
37
|
-
description: string;
|
|
38
|
-
}
|
|
39
|
-
export declare class ProjectManifestDatastore {
|
|
40
|
-
name: string;
|
|
41
|
-
file: string;
|
|
42
|
-
ttlMinutes?: number;
|
|
43
|
-
constructor();
|
|
44
|
-
}
|
|
45
|
-
export declare class ProjectManifestProcess {
|
|
46
|
-
processName: string;
|
|
47
|
-
file: string;
|
|
48
|
-
startEvents: ProjectManifestProcessStartEvent[];
|
|
49
|
-
endEvent: JSONSchema7;
|
|
50
|
-
signals: ProjectManigestSignal[];
|
|
51
|
-
priority?: "immediate" | "high" | "medium" | "low";
|
|
52
|
-
minThreads?: number;
|
|
53
|
-
maxThreads?: number;
|
|
54
|
-
constructor();
|
|
55
|
-
}
|
|
56
|
-
export declare class ProjectManigestSignal {
|
|
57
|
-
signalId: string;
|
|
58
|
-
type: string;
|
|
59
|
-
}
|
|
60
|
-
export declare class ProjectManifestProcessStartEvent {
|
|
61
|
-
nodeId: string;
|
|
62
|
-
kind: string;
|
|
63
|
-
scope: string;
|
|
64
|
-
roles: string[];
|
|
65
|
-
input: JSONSchema7;
|
|
66
|
-
constructor();
|
|
67
|
-
}
|
|
68
|
-
export declare class ProjectManifestReactApplication {
|
|
69
|
-
applicationName: string;
|
|
70
|
-
file: string;
|
|
71
|
-
scope: string;
|
|
72
|
-
roles: string[];
|
|
73
|
-
constructor();
|
|
74
|
-
}
|
|
75
|
-
export declare class ProjectManifestApplication {
|
|
76
|
-
applicationName: string;
|
|
77
|
-
file: string;
|
|
78
|
-
scope: string;
|
|
79
|
-
roles: string[];
|
|
80
|
-
constructor();
|
|
81
|
-
}
|
|
82
|
-
export declare class ProjectManifestPdf {
|
|
83
|
-
name: string;
|
|
84
|
-
file: string;
|
|
85
|
-
constructor();
|
|
86
|
-
}
|
|
87
|
-
export declare class ProjectManifestEmail {
|
|
88
|
-
name: string;
|
|
89
|
-
file: string;
|
|
90
|
-
constructor();
|
|
91
|
-
}
|
|
92
|
-
export declare class ProjectManifestHtml {
|
|
93
|
-
name: string;
|
|
94
|
-
file: string;
|
|
95
|
-
constructor();
|
|
96
|
-
}
|
|
97
|
-
export declare class ProjectManifestExpressComponent {
|
|
98
|
-
componentName: string;
|
|
99
|
-
file: string;
|
|
100
|
-
constructor();
|
|
101
|
-
}
|
|
102
|
-
export declare class ProjectManifestScript {
|
|
103
|
-
file: string;
|
|
104
|
-
constructor();
|
|
105
|
-
}
|
|
106
|
-
export declare class ProjectManifestApplicationInsight {
|
|
107
|
-
key: string;
|
|
108
|
-
constructor();
|
|
109
|
-
}
|
|
110
|
-
export declare class ProjectManifestApi {
|
|
111
|
-
path: string;
|
|
112
|
-
method: string;
|
|
113
|
-
bpmn: string;
|
|
114
|
-
startNode: string;
|
|
115
|
-
accept: string;
|
|
116
|
-
priority?: "immediate" | "high" | "medium" | "low";
|
|
117
|
-
minThreads?: number;
|
|
118
|
-
maxThreads?: number;
|
|
119
|
-
constructor();
|
|
120
|
-
}
|
|
121
|
-
export declare class ProjectManifestParameter {
|
|
122
|
-
key: string;
|
|
123
|
-
value: string;
|
|
124
|
-
constructor();
|
|
125
|
-
}
|
|
126
|
-
//# sourceMappingURL=ProjectManifestModels.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectManifestModels.d.ts","sourceRoot":"","sources":["../../src/models/ProjectManifestModels.ts"],"names":[],"mappings":"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"}
|