@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/dist/index.js
CHANGED
|
@@ -19,8 +19,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
20
|
exports.CodeEditor = exports.env = void 0;
|
|
21
21
|
exports.useCodenotch = useCodenotch;
|
|
22
|
+
exports.getCodenotch = getCodenotch;
|
|
23
|
+
exports.withCodenotch = withCodenotch;
|
|
24
|
+
exports.onCodenotchChange = onCodenotchChange;
|
|
22
25
|
exports.init = init;
|
|
23
|
-
const
|
|
26
|
+
const react_1 = require("react");
|
|
27
|
+
const react_dom_1 = require("react-dom");
|
|
28
|
+
const client_1 = require("react-dom/client");
|
|
24
29
|
const SignalR_1 = require("./core/SignalR");
|
|
25
30
|
const ProcessUtils_1 = __importDefault(require("./core/ProcessUtils"));
|
|
26
31
|
const uuid_1 = require("uuid");
|
|
@@ -36,6 +41,30 @@ exports.env = env;
|
|
|
36
41
|
const MISSING_CLUSTER_URL_ERROR = "Codenotch cluster URL is not defined. Please set it in the Codenotch configuration.";
|
|
37
42
|
const MISSING_SERVICE_NAME_ERROR = "Codenotch service name is not defined. Please set it in the Codenotch configuration.";
|
|
38
43
|
const MISSING_TENANT_NAME_ERROR = "Codenotch tenant name is not defined. Please set it in the Codenotch configuration.";
|
|
44
|
+
// ---------------------------------------------------------------------------
|
|
45
|
+
// Change tracking. `env` is a plain mutable object; every mutation done through
|
|
46
|
+
// the public API (init, setTheme, setLanguage) goes through notify(), which
|
|
47
|
+
// rotates the API object (so React sees a new reference) and wakes up the
|
|
48
|
+
// subscribers: useCodenotch() via useSyncExternalStore, withCodenotch(),
|
|
49
|
+
// and any listener registered with onCodenotchChange().
|
|
50
|
+
// ---------------------------------------------------------------------------
|
|
51
|
+
const listeners = new Set();
|
|
52
|
+
let currentApi;
|
|
53
|
+
function notify() {
|
|
54
|
+
currentApi = createApi();
|
|
55
|
+
listeners.forEach((listener) => {
|
|
56
|
+
try {
|
|
57
|
+
listener();
|
|
58
|
+
}
|
|
59
|
+
catch (error) {
|
|
60
|
+
console.error("Error in Codenotch change listener:", error);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
function subscribe(listener) {
|
|
65
|
+
listeners.add(listener);
|
|
66
|
+
return () => { listeners.delete(listener); };
|
|
67
|
+
}
|
|
39
68
|
/**
|
|
40
69
|
* Initialize the Codenotch environment from the given key-value pairs.
|
|
41
70
|
*
|
|
@@ -141,26 +170,15 @@ function init(envVariables) {
|
|
|
141
170
|
}
|
|
142
171
|
catch {
|
|
143
172
|
}
|
|
173
|
+
notify();
|
|
144
174
|
}
|
|
145
175
|
/**
|
|
146
|
-
*
|
|
147
|
-
*
|
|
148
|
-
*
|
|
149
|
-
* hook rules attached: it can be called anywhere (components, handlers, plain
|
|
150
|
-
* modules). `init()` must have been called first, which the Codenotch runtime
|
|
151
|
-
* does automatically when serving the application.
|
|
152
|
-
*
|
|
153
|
-
* @returns The Codenotch API: BPMN processes, SioQL queries, i18n, signals, theme…
|
|
154
|
-
* @example
|
|
155
|
-
* import { useCodenotch } from 'codenotch-react';
|
|
156
|
-
*
|
|
157
|
-
* const MyApp: React.FC = () => {
|
|
158
|
-
* const cn = useCodenotch();
|
|
159
|
-
* return <h1>{cn.i18n('welcome')}</h1>;
|
|
160
|
-
* };
|
|
176
|
+
* Build the API object bound to {@link env}. Every method reads `env` lazily,
|
|
177
|
+
* so an instance never goes stale; a new one is created by {@link notify} only
|
|
178
|
+
* to give React a fresh reference when the environment changes.
|
|
161
179
|
*/
|
|
162
|
-
function
|
|
163
|
-
|
|
180
|
+
function createApi() {
|
|
181
|
+
const api = {
|
|
164
182
|
env: env,
|
|
165
183
|
uuid: () => (0, uuid_1.v4)(),
|
|
166
184
|
getProjectFileUrl: (relativePath) => {
|
|
@@ -175,7 +193,7 @@ function useCodenotch() {
|
|
|
175
193
|
return url;
|
|
176
194
|
},
|
|
177
195
|
getProjectFile: async (relativePath) => {
|
|
178
|
-
let url =
|
|
196
|
+
let url = api.getProjectFileUrl(relativePath);
|
|
179
197
|
let resp = await fetch(url);
|
|
180
198
|
if (resp.status.toString().startsWith('2') === false) {
|
|
181
199
|
throw new Error(`Failed to fetch file content: ${resp.status} ${resp.statusText}`);
|
|
@@ -183,7 +201,7 @@ function useCodenotch() {
|
|
|
183
201
|
let content = await resp.text();
|
|
184
202
|
return content;
|
|
185
203
|
},
|
|
186
|
-
|
|
204
|
+
requestCnql: async (cnql, verbose) => {
|
|
187
205
|
if (env.clusterUrl === undefined)
|
|
188
206
|
throw new Error(MISSING_CLUSTER_URL_ERROR);
|
|
189
207
|
if (env.serviceName === undefined)
|
|
@@ -193,7 +211,7 @@ function useCodenotch() {
|
|
|
193
211
|
mode: 'cors',
|
|
194
212
|
credentials: 'same-origin',
|
|
195
213
|
headers: { 'Content-Type': 'application/json' },
|
|
196
|
-
body: `"${
|
|
214
|
+
body: `"${cnql.replace(/\"/g, '\\\"')}"`
|
|
197
215
|
};
|
|
198
216
|
if (`${env.accessToken ?? ''}`.trim() !== "") {
|
|
199
217
|
if (env.tenantName === undefined)
|
|
@@ -202,7 +220,7 @@ function useCodenotch() {
|
|
|
202
220
|
...request.headers, [`${env.tenantName}AccessToken`]: env.accessToken
|
|
203
221
|
};
|
|
204
222
|
}
|
|
205
|
-
const response = await fetch(`${env.clusterUrl}/${env.serviceName}/
|
|
223
|
+
const response = await fetch(`${env.clusterUrl}/${env.serviceName}/cnql${verbose ? "?v=true" : ""}`, request);
|
|
206
224
|
if (!response.ok) {
|
|
207
225
|
const error = await response.text();
|
|
208
226
|
throw new Error(error);
|
|
@@ -266,9 +284,14 @@ function useCodenotch() {
|
|
|
266
284
|
},
|
|
267
285
|
showDialog: (node) => {
|
|
268
286
|
let dialogId = "codenotch-dialog-" + Math.random().toString(36).substring(2, 9);
|
|
287
|
+
let root = undefined;
|
|
269
288
|
let result = {
|
|
270
289
|
id: dialogId,
|
|
271
290
|
close: () => {
|
|
291
|
+
// Unmount the React tree first so effects are cleaned up and nothing leaks,
|
|
292
|
+
// then drop the <dialog> element itself.
|
|
293
|
+
root?.unmount();
|
|
294
|
+
root = undefined;
|
|
272
295
|
let dialogElement = document.getElementById(dialogId);
|
|
273
296
|
if (dialogElement) {
|
|
274
297
|
dialogElement.remove();
|
|
@@ -311,9 +334,11 @@ function useCodenotch() {
|
|
|
311
334
|
dialogElement.style.background = '#78787822';
|
|
312
335
|
dialogElement.style.backdropFilter = 'blur(2px)';
|
|
313
336
|
container.appendChild(dialogElement);
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
337
|
+
// React 19: ReactDOM.render() is gone. Render synchronously through a dedicated root
|
|
338
|
+
// so the content is in the DOM before showModal() moves the focus into the dialog.
|
|
339
|
+
root = (0, client_1.createRoot)(dialogElement);
|
|
340
|
+
(0, react_dom_1.flushSync)(() => root.render(node));
|
|
341
|
+
dialogElement.showModal();
|
|
317
342
|
return result;
|
|
318
343
|
},
|
|
319
344
|
listenSignal: async (signalId, callback) => {
|
|
@@ -334,11 +359,13 @@ function useCodenotch() {
|
|
|
334
359
|
document.documentElement.classList.remove(env.theme);
|
|
335
360
|
env.theme = theme;
|
|
336
361
|
document.documentElement.classList.add(theme);
|
|
362
|
+
notify();
|
|
337
363
|
},
|
|
338
364
|
setLanguage: (lang) => {
|
|
339
365
|
if (env.language === lang)
|
|
340
366
|
return;
|
|
341
367
|
env.language = lang;
|
|
368
|
+
notify();
|
|
342
369
|
},
|
|
343
370
|
getLanguages: () => {
|
|
344
371
|
return env.projectManifest?.languages ?? [];
|
|
@@ -359,6 +386,112 @@ function useCodenotch() {
|
|
|
359
386
|
return env.appManifest;
|
|
360
387
|
}
|
|
361
388
|
};
|
|
389
|
+
return api;
|
|
390
|
+
}
|
|
391
|
+
currentApi = createApi();
|
|
392
|
+
/**
|
|
393
|
+
* Return the Codenotch client API bound to the current environment, from
|
|
394
|
+
* anywhere: event handlers, plain modules, class components, services…
|
|
395
|
+
*
|
|
396
|
+
* This is a plain function (not a hook). The returned object is never stale —
|
|
397
|
+
* its methods always read the live environment — but it does not trigger any
|
|
398
|
+
* re-render when the language or theme changes: inside React components prefer
|
|
399
|
+
* {@link useCodenotch} (function components) or {@link withCodenotch}
|
|
400
|
+
* (class components), which do.
|
|
401
|
+
*
|
|
402
|
+
* `init()` must have been called first, which the Codenotch runtime does
|
|
403
|
+
* automatically when serving the application.
|
|
404
|
+
*
|
|
405
|
+
* @example
|
|
406
|
+
* import { getCodenotch } from 'codenotch-react';
|
|
407
|
+
*
|
|
408
|
+
* export async function loadTodos(userId: string) {
|
|
409
|
+
* const result = await getCodenotch().startProcess('getTodos', 'start', { UserId: userId });
|
|
410
|
+
* return result.output.todos;
|
|
411
|
+
* }
|
|
412
|
+
*/
|
|
413
|
+
function getCodenotch() {
|
|
414
|
+
return currentApi;
|
|
415
|
+
}
|
|
416
|
+
/**
|
|
417
|
+
* React hook returning the Codenotch client API.
|
|
418
|
+
*
|
|
419
|
+
* The reference is stable across renders and only changes when the environment
|
|
420
|
+
* changes (`setLanguage`, `setTheme`, `init`), in which case every component
|
|
421
|
+
* using the hook re-renders — so `cn.i18n(...)` output follows the current
|
|
422
|
+
* language automatically, and the object is safe to use in `useMemo` /
|
|
423
|
+
* `useEffect` dependency arrays.
|
|
424
|
+
*
|
|
425
|
+
* Regular hook rules apply (call it unconditionally at the top of a function
|
|
426
|
+
* component or a custom hook). Outside of components — handlers defined in
|
|
427
|
+
* plain modules, services, class components — use {@link getCodenotch} or
|
|
428
|
+
* {@link withCodenotch} instead.
|
|
429
|
+
*
|
|
430
|
+
* @returns The Codenotch API: BPMN processes, CNQL queries, i18n, signals, theme…
|
|
431
|
+
* @example
|
|
432
|
+
* import { useCodenotch } from 'codenotch-react';
|
|
433
|
+
*
|
|
434
|
+
* const MyApp = () => {
|
|
435
|
+
* const cn = useCodenotch();
|
|
436
|
+
* return <h1>{cn.i18n('welcome')}</h1>;
|
|
437
|
+
* };
|
|
438
|
+
*/
|
|
439
|
+
function useCodenotch() {
|
|
440
|
+
return (0, react_1.useSyncExternalStore)(subscribe, getCodenotch, getCodenotch);
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* Register a listener called each time the Codenotch environment changes
|
|
444
|
+
* (`setLanguage`, `setTheme`, `init`). Escape hatch for code that cannot use
|
|
445
|
+
* {@link useCodenotch} or {@link withCodenotch}, e.g. a class component that
|
|
446
|
+
* wants to `forceUpdate()` itself, or a non-React module caching translations.
|
|
447
|
+
*
|
|
448
|
+
* @returns A disposable — call `dispose()` to stop listening.
|
|
449
|
+
* @example
|
|
450
|
+
* componentDidMount() {
|
|
451
|
+
* this.sub = onCodenotchChange(() => this.forceUpdate());
|
|
452
|
+
* }
|
|
453
|
+
* componentWillUnmount() {
|
|
454
|
+
* this.sub.dispose();
|
|
455
|
+
* }
|
|
456
|
+
*/
|
|
457
|
+
function onCodenotchChange(listener) {
|
|
458
|
+
const unsubscribe = subscribe(listener);
|
|
459
|
+
return { dispose: unsubscribe };
|
|
460
|
+
}
|
|
461
|
+
/**
|
|
462
|
+
* Higher-order component injecting the Codenotch API as a `cn` prop.
|
|
463
|
+
*
|
|
464
|
+
* Meant for class components, which cannot call {@link useCodenotch}: the
|
|
465
|
+
* wrapped component receives `this.props.cn` and re-renders whenever the
|
|
466
|
+
* environment changes (language, theme…), exactly like the hook. A `ref`
|
|
467
|
+
* passed to the wrapper is forwarded to the wrapped component instance.
|
|
468
|
+
*
|
|
469
|
+
* @param Component A component whose props extend {@link WithCodenotchProps}.
|
|
470
|
+
* @returns A component with the same props minus `cn`.
|
|
471
|
+
* @example
|
|
472
|
+
* import { withCodenotch, WithCodenotchProps } from 'codenotch-react';
|
|
473
|
+
*
|
|
474
|
+
* interface Props extends WithCodenotchProps {
|
|
475
|
+
* userId: string;
|
|
476
|
+
* }
|
|
477
|
+
*
|
|
478
|
+
* class TodoList extends React.Component<Props> {
|
|
479
|
+
* render() {
|
|
480
|
+
* return <h1>{this.props.cn.i18n('todos.title')}</h1>;
|
|
481
|
+
* }
|
|
482
|
+
* }
|
|
483
|
+
*
|
|
484
|
+
* export default withCodenotch(TodoList);
|
|
485
|
+
* // <TodoList userId="42" /> — `cn` is injected
|
|
486
|
+
*/
|
|
487
|
+
function withCodenotch(Component) {
|
|
488
|
+
const Wrapped = (props) => {
|
|
489
|
+
const cn = useCodenotch();
|
|
490
|
+
// React 19: `ref` is a regular prop, so spreading `props` forwards it.
|
|
491
|
+
return (0, react_1.createElement)(Component, { ...props, cn });
|
|
492
|
+
};
|
|
493
|
+
Wrapped.displayName = `withCodenotch(${Component.displayName || Component.name || "Component"})`;
|
|
494
|
+
return Wrapped;
|
|
362
495
|
}
|
|
363
496
|
// Public models. Re-exported from the package root so that the typings
|
|
364
497
|
// generated by the Codenotch IDE (typings/i18n.d.ts and typings/process.d.ts,
|
|
@@ -366,5 +499,4 @@ function useCodenotch() {
|
|
|
366
499
|
// TranslationRegistry / ProcessRegistry declarations.
|
|
367
500
|
__exportStar(require("./models/Codenotch"), exports);
|
|
368
501
|
__exportStar(require("./models/Misc"), exports);
|
|
369
|
-
__exportStar(require("./models/AppManifestModels"), exports);
|
|
370
502
|
__exportStar(require("@codenotch/codenotch.core"), exports);
|
|
@@ -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
|
* Runtime environment of a Codenotch application.
|
|
6
6
|
*
|
|
@@ -31,7 +31,7 @@ export interface ICodenotchEnv {
|
|
|
31
31
|
/** Current UI theme. Resolved from the `_theme` URL parameter, or `prefers-color-scheme` as a fallback. */
|
|
32
32
|
theme?: 'light' | 'dark';
|
|
33
33
|
/** Manifest of the current application (the `<AppName>.manifest.json` file next to the app). */
|
|
34
|
-
appManifest?:
|
|
34
|
+
appManifest?: IAppManifest;
|
|
35
35
|
/** Manifest of the Codenotch project (the project's `manifest.json` file). */
|
|
36
36
|
projectManifest?: ProjectManifest;
|
|
37
37
|
/** Any additional environment variable passed to `init()`. */
|
|
@@ -120,10 +120,14 @@ export interface IProcessResult<T = any> {
|
|
|
120
120
|
errorMessage: string;
|
|
121
121
|
}
|
|
122
122
|
/**
|
|
123
|
-
* The Codenotch client API
|
|
123
|
+
* The Codenotch client API.
|
|
124
|
+
*
|
|
125
|
+
* Obtained with the `useCodenotch()` hook in function components, through the
|
|
126
|
+
* `cn` prop injected by `withCodenotch()` in class components, or with the
|
|
127
|
+
* plain `getCodenotch()` function anywhere else (handlers, modules, services).
|
|
124
128
|
*
|
|
125
129
|
* It is the bridge between a React app and the Codenotch runtime: it starts
|
|
126
|
-
* server-side BPMN processes, runs
|
|
130
|
+
* server-side BPMN processes, runs CNQL queries, translates i18n keys,
|
|
127
131
|
* listens to real-time signals and manages theme/language.
|
|
128
132
|
*
|
|
129
133
|
* @example
|
|
@@ -165,24 +169,24 @@ export interface ICodenotchApi {
|
|
|
165
169
|
/** Runtime environment (cluster, service, language, theme, i18n dictionaries, manifests…). Populated by `init()`. */
|
|
166
170
|
readonly env: ICodenotchEnv;
|
|
167
171
|
/**
|
|
168
|
-
* Execute a
|
|
172
|
+
* Execute a CNQL query (XML, SELECT-only) against the project's SQL tables and return the parsed JSON result.
|
|
169
173
|
*
|
|
170
174
|
* The root element's `xmlns` must be the project's `serviceName`. Results are
|
|
171
175
|
* keyed by the `Ref` attribute of each queried table.
|
|
172
176
|
*
|
|
173
|
-
* @param
|
|
177
|
+
* @param cnql The CNQL XML query.
|
|
174
178
|
* @param verbose When `true`, asks the server for a verbose response (debugging).
|
|
175
179
|
* @example
|
|
176
|
-
* const data = await cn.
|
|
177
|
-
* <
|
|
180
|
+
* const data = await cn.requestCnql(`
|
|
181
|
+
* <CNQL xmlns="myproject" PageSize="10" PageIndex="0">
|
|
178
182
|
* <Users Ref="results">
|
|
179
183
|
* <Id />
|
|
180
184
|
* <Email />
|
|
181
185
|
* </Users>
|
|
182
|
-
* </
|
|
186
|
+
* </CNQL>`);
|
|
183
187
|
* console.log(data.results); // [{ Id: ..., Email: ... }, ...]
|
|
184
188
|
*/
|
|
185
|
-
readonly
|
|
189
|
+
readonly requestCnql: (cnql: string, verbose?: boolean) => Promise<any>;
|
|
186
190
|
/**
|
|
187
191
|
* Render the given React element in a fullscreen modal `<dialog>` overlay.
|
|
188
192
|
*
|
|
@@ -197,7 +201,7 @@ export interface ICodenotchApi {
|
|
|
197
201
|
* </div>
|
|
198
202
|
* );
|
|
199
203
|
*/
|
|
200
|
-
readonly showDialog: (node:
|
|
204
|
+
readonly showDialog: (node: ReactNode) => ICodenotchDialog;
|
|
201
205
|
/**
|
|
202
206
|
* Fetch the text content of a file of the deployed Codenotch project.
|
|
203
207
|
* @param relativePath Path of the file relative to the project root (e.g. `'readme.md'`).
|
|
@@ -242,7 +246,20 @@ export interface ICodenotchApi {
|
|
|
242
246
|
/** Manifest of the Codenotch project. Throws if not available in the environment. */
|
|
243
247
|
readonly getProjectManifest: () => ProjectManifest;
|
|
244
248
|
/** Manifest of the current application, if any. */
|
|
245
|
-
readonly getAppManifest: () =>
|
|
249
|
+
readonly getAppManifest: () => IAppManifest | undefined;
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Props injected by the `withCodenotch()` higher-order component.
|
|
253
|
+
* Extend it in the props of a class component wrapped by `withCodenotch`.
|
|
254
|
+
*
|
|
255
|
+
* @example
|
|
256
|
+
* interface Props extends WithCodenotchProps { userId: string }
|
|
257
|
+
* class TodoList extends React.Component<Props> { ... }
|
|
258
|
+
* export default withCodenotch(TodoList);
|
|
259
|
+
*/
|
|
260
|
+
export interface WithCodenotchProps {
|
|
261
|
+
/** The Codenotch client API; refreshed (new reference) whenever the environment changes. */
|
|
262
|
+
cn: ICodenotchApi;
|
|
246
263
|
}
|
|
247
264
|
/**
|
|
248
265
|
* Handle on a dialog opened with {@link ICodenotchApi.showDialog}.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Codenotch.d.ts","sourceRoot":"","sources":["../../src/models/Codenotch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Codenotch.d.ts","sourceRoot":"","sources":["../../src/models/Codenotch.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,44 +1,46 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@codenotch/codenotch.react",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "React bindings for Codenotch applications: start BPMN processes, run
|
|
5
|
-
"keywords": [
|
|
6
|
-
"codenotch",
|
|
7
|
-
"react"
|
|
8
|
-
],
|
|
9
|
-
"publishConfig": {
|
|
10
|
-
"access": "public"
|
|
11
|
-
},
|
|
12
|
-
"homepage": "https://codenotch.com",
|
|
13
|
-
"main": "dist/index.js",
|
|
14
|
-
"types": "dist/index.d.ts",
|
|
15
|
-
"author": "Codenotch SA",
|
|
16
|
-
"license": "MIT",
|
|
17
|
-
"scripts": {
|
|
18
|
-
"build": "tsc",
|
|
19
|
-
"dev": "tsc --watch",
|
|
20
|
-
"prepublishOnly": "npm run build",
|
|
21
|
-
"clean": "rm -rf dist"
|
|
22
|
-
},
|
|
23
|
-
"files": [
|
|
24
|
-
"dist/**/*",
|
|
25
|
-
"src/**/*"
|
|
26
|
-
],
|
|
27
|
-
"dependencies": {
|
|
28
|
-
"@codenotch/codenotch.core": "1.0.
|
|
29
|
-
"@microsoft/signalr": "^5.0.6",
|
|
30
|
-
"uuid": "^8.2.0"
|
|
31
|
-
},
|
|
32
|
-
"devDependencies": {
|
|
33
|
-
"@types/node": "^25.3.2",
|
|
34
|
-
"@types/react": "^
|
|
35
|
-
"@types/react-dom": "^
|
|
36
|
-
"@types/uuid": "8.0.0",
|
|
37
|
-
"@types/json-schema": "^7.0.6",
|
|
38
|
-
"react
|
|
39
|
-
"
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "@codenotch/codenotch.react",
|
|
3
|
+
"version": "2.0.0",
|
|
4
|
+
"description": "React bindings for Codenotch applications: start BPMN processes, run cnql queries, translate i18n keys, listen to real-time signals, manage theme and language.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"codenotch",
|
|
7
|
+
"react"
|
|
8
|
+
],
|
|
9
|
+
"publishConfig": {
|
|
10
|
+
"access": "public"
|
|
11
|
+
},
|
|
12
|
+
"homepage": "https://codenotch.com",
|
|
13
|
+
"main": "dist/index.js",
|
|
14
|
+
"types": "dist/index.d.ts",
|
|
15
|
+
"author": "Codenotch SA",
|
|
16
|
+
"license": "MIT",
|
|
17
|
+
"scripts": {
|
|
18
|
+
"build": "tsc",
|
|
19
|
+
"dev": "tsc --watch",
|
|
20
|
+
"prepublishOnly": "npm run build",
|
|
21
|
+
"clean": "rm -rf dist"
|
|
22
|
+
},
|
|
23
|
+
"files": [
|
|
24
|
+
"dist/**/*",
|
|
25
|
+
"src/**/*"
|
|
26
|
+
],
|
|
27
|
+
"dependencies": {
|
|
28
|
+
"@codenotch/codenotch.core": "1.0.21",
|
|
29
|
+
"@microsoft/signalr": "^5.0.6",
|
|
30
|
+
"uuid": "^8.2.0"
|
|
31
|
+
},
|
|
32
|
+
"devDependencies": {
|
|
33
|
+
"@types/node": "^25.3.2",
|
|
34
|
+
"@types/react": "^19.1.0",
|
|
35
|
+
"@types/react-dom": "^19.1.0",
|
|
36
|
+
"@types/uuid": "8.0.0",
|
|
37
|
+
"@types/json-schema": "^7.0.6",
|
|
38
|
+
"react": "^19.1.0",
|
|
39
|
+
"react-dom": "^19.1.0",
|
|
40
|
+
"typescript": "^5.9.3"
|
|
41
|
+
},
|
|
42
|
+
"peerDependencies": {
|
|
43
|
+
"react": ">=19.0.0",
|
|
44
|
+
"react-dom": ">=19.0.0"
|
|
45
|
+
}
|
|
46
|
+
}
|