libmodulor 0.24.0 → 0.25.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/CHANGELOG.md +17 -0
- package/README.md +1 -1
- package/dist/esm/apps/Helper/src/lib/project.js +6 -6
- package/dist/esm/dt/Validation.d.ts +2 -2
- package/dist/esm/dt/base/TBase.d.ts +2 -0
- package/dist/esm/dt/base/TBase.js +3 -0
- package/dist/esm/dt/base/TObject.d.ts +6 -4
- package/dist/esm/dt/base/TObject.js +4 -5
- package/dist/esm/dt/base/TString.d.ts +2 -1
- package/dist/esm/dt/base/TString.js +22 -0
- package/dist/esm/dt/final/TFile.d.ts +13 -4
- package/dist/esm/dt/final/TFile.js +70 -8
- package/dist/esm/dt/final/TFileExtension.d.ts +1 -1
- package/dist/esm/dt/final/TFileMimeType.d.ts +2 -6
- package/dist/esm/dt/final/TFileMimeType.js +0 -6
- package/dist/esm/dt/final/TFilePath.d.ts +7 -0
- package/dist/esm/dt/final/TFilePath.js +5 -1
- package/dist/esm/dt/index.d.ts +1 -1
- package/dist/esm/i18n/WordingManager.d.ts +2 -1
- package/dist/esm/i18n/WordingManager.js +23 -2
- package/dist/esm/i18n/locales/de.js +8 -0
- package/dist/esm/i18n/locales/en.js +8 -0
- package/dist/esm/i18n/locales/es.js +8 -0
- package/dist/esm/i18n/locales/fr.js +8 -0
- package/dist/esm/i18n/types.d.ts +2 -2
- package/dist/esm/std/FSManager.d.ts +7 -5
- package/dist/esm/std/FSManager.js +5 -6
- package/dist/esm/std/FormDataBuilder.d.ts +2 -1
- package/dist/esm/std/impl/NodeFSManager.js +3 -2
- package/dist/esm/target/lib/react/StyleContextProvider.d.ts +1 -0
- package/dist/esm/target/lib/react/form.d.ts +1 -1
- package/dist/esm/target/lib/react/form.js +1 -0
- package/dist/esm/target/lib/react/useAction.d.ts +1 -1
- package/dist/esm/target/lib/react/useAction.js +13 -12
- package/dist/esm/target/lib/server-express/funcs.js +2 -1
- package/dist/esm/target/lib/web/input.d.ts +1 -0
- package/dist/esm/target/lib/web/input.js +5 -1
- package/dist/esm/target/react-native-pure/UCFormField.js +2 -1
- package/dist/esm/target/react-native-pure/UCFormFieldControl.js +6 -4
- package/dist/esm/target/react-native-pure/UCFormFieldErr.d.ts +1 -1
- package/dist/esm/target/react-native-pure/UCFormFieldErr.js +4 -1
- package/dist/esm/target/react-native-pure/UCFormFieldHelp.d.ts +4 -0
- package/dist/esm/target/react-native-pure/UCFormFieldHelp.js +15 -0
- package/dist/esm/target/react-web-pure/UCFormField.js +2 -1
- package/dist/esm/target/react-web-pure/UCFormFieldErr.d.ts +1 -1
- package/dist/esm/target/react-web-pure/UCFormFieldErr.js +4 -1
- package/dist/esm/target/react-web-pure/UCFormFieldHelp.d.ts +4 -0
- package/dist/esm/target/react-web-pure/UCFormFieldHelp.js +14 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter/SimpleAppDocsEmitter.d.ts +7 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter/SimpleAppDocsEmitter.js +59 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter/markdown.d.ts +2 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter/markdown.js +10 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter/sequence-diagram.d.ts +2 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter/sequence-diagram.js +92 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter/tech-summary.d.ts +2 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter/tech-summary.js +27 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter/uc-summary.d.ts +2 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter/uc-summary.js +63 -0
- package/dist/esm/testing/impl/newNodeAppTester.js +1 -1
- package/dist/esm/testing/uc-input.js +5 -2
- package/dist/esm/uc/exec.d.ts +42 -21
- package/dist/esm/uc/exec.js +48 -13
- package/dist/esm/uc/input-field.d.ts +6 -4
- package/dist/esm/uc/input-field.js +4 -5
- package/dist/esm/uc/side-effect.d.ts +10 -8
- package/dist/esm/uc/side-effect.js +5 -6
- package/dist/esm/uc/workers/UCInputFilesProcessor.js +3 -3
- package/dist/esm/uc/workers/UCInputValidator.js +2 -1
- package/dist/esm/uc/workers/UCOutputFilesProcessor.js +1 -1
- package/dist/esm/utils/bundling/webpack/loader.js +1 -1
- package/dist/esm/utils/index.d.ts +1 -1
- package/dist/esm/utils/types/utility-types.d.ts +4 -0
- package/package.json +16 -14
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { TFile } from '../dt/index.js';
|
|
1
|
+
import { TFile, TFilePath } from '../dt/index.js';
|
|
2
2
|
import { ucifIsMandatory, ucifMustBeFilledManually, ucifRepeatability, } from '../uc/index.js';
|
|
3
|
+
import { range } from '../utils/index.js';
|
|
3
4
|
export const DEFAULT_UC_INPUT_FILLERS = [
|
|
4
5
|
'ALL_WITH_EXAMPLES',
|
|
5
6
|
'ONLY_MANDATORY_WITH_EXAMPLES',
|
|
@@ -39,7 +40,9 @@ function fillWithExample(f) {
|
|
|
39
40
|
if (type instanceof TFile) {
|
|
40
41
|
const example = type.getExamples()?.[0] ?? type.example();
|
|
41
42
|
// TODO : Consider building a real file with real data (e.g. image, pdf, txt, etc.)
|
|
42
|
-
|
|
43
|
+
// A fake file filled with 0s and 1s
|
|
44
|
+
const blob = range(TFilePath.FILE_SIZE).map((i) => (i % 2).toString());
|
|
45
|
+
const val = new File(blob, example.uri, {
|
|
43
46
|
type: example.type,
|
|
44
47
|
});
|
|
45
48
|
const [isRepeatable] = ucifRepeatability(f.def);
|
package/dist/esm/uc/exec.d.ts
CHANGED
|
@@ -1,38 +1,59 @@
|
|
|
1
|
+
import type { EnumOf } from '../utils/index.js';
|
|
1
2
|
/**
|
|
2
3
|
* Mode of execution of a use case
|
|
3
|
-
*
|
|
4
|
-
* Unlike all the other enums, the values are lowercased for compatibility reasons.
|
|
5
|
-
* Indeed, this value is persisted in the database so we need to support all existing deployments.
|
|
6
4
|
*/
|
|
7
|
-
export declare
|
|
5
|
+
export declare const UCExecMode: {
|
|
8
6
|
/**
|
|
9
7
|
* The use case has been executed programmatically
|
|
10
8
|
*/
|
|
11
|
-
AUTO
|
|
9
|
+
readonly AUTO: "auto";
|
|
12
10
|
/**
|
|
13
11
|
* The use case has been executed explicitly by a user
|
|
14
12
|
*/
|
|
15
|
-
USER
|
|
16
|
-
}
|
|
13
|
+
readonly USER: "user";
|
|
14
|
+
};
|
|
15
|
+
export type UCExecMode = EnumOf<typeof UCExecMode>;
|
|
17
16
|
/**
|
|
18
17
|
* Result of execution of a use case
|
|
19
|
-
*
|
|
20
|
-
* - `aborted` : The user aborted the exec (e.g. by not confirming)
|
|
21
|
-
* - `failed` : The exec failed
|
|
22
|
-
* - `succeeded` : The exec succeeded
|
|
23
18
|
*/
|
|
24
|
-
export
|
|
19
|
+
export declare const UCExecRes: {
|
|
20
|
+
/**
|
|
21
|
+
* The user aborted the exec (e.g. by not confirming)
|
|
22
|
+
*/
|
|
23
|
+
readonly ABORTED: "aborted";
|
|
24
|
+
/**
|
|
25
|
+
* The execution failed
|
|
26
|
+
*/
|
|
27
|
+
readonly FAILED: "failed";
|
|
28
|
+
/**
|
|
29
|
+
* The execution succeeded
|
|
30
|
+
*/
|
|
31
|
+
readonly SUCCEEDED: "succeeded";
|
|
32
|
+
};
|
|
33
|
+
export type UCExecRes = EnumOf<typeof UCExecRes>;
|
|
25
34
|
/**
|
|
26
35
|
* State of execution of a use case
|
|
27
|
-
*
|
|
28
|
-
* - `changing` : An action triggered a change, fields should be disabled
|
|
29
|
-
* - `idle` : It can be touched and filled by the user
|
|
30
|
-
* - `initializing` : It's initializing in some way, fields should be disabled
|
|
31
|
-
* - `submitting` : It's submitting, fields should be disabled and some indicator should show the processing
|
|
32
|
-
*
|
|
33
36
|
* It applies to a form, but it can be applied and generalized to any other interaction mechanism (i.e. cli, voice...).
|
|
34
37
|
*/
|
|
35
|
-
export
|
|
38
|
+
export declare const UCExecState: {
|
|
39
|
+
/**
|
|
40
|
+
* An action triggered a change, fields should be disabled
|
|
41
|
+
*/
|
|
42
|
+
readonly CHANGING: "changing";
|
|
43
|
+
/**
|
|
44
|
+
* It can be touched and filled by the user
|
|
45
|
+
*/
|
|
46
|
+
readonly IDLE: "idle";
|
|
47
|
+
/**
|
|
48
|
+
* It's initializing in some way, fields should be disabled
|
|
49
|
+
*/
|
|
50
|
+
readonly INITIALIZING: "initializing";
|
|
51
|
+
/**
|
|
52
|
+
* It's submitting, fields should be disabled and some indicator should show the processing
|
|
53
|
+
*/
|
|
54
|
+
readonly SUBMITTING: "submitting";
|
|
55
|
+
};
|
|
56
|
+
export type UCExecState = EnumOf<typeof UCExecState>;
|
|
36
57
|
/**
|
|
37
58
|
* Check whether the execution corresponds to a "disabled" state
|
|
38
59
|
*
|
|
@@ -45,8 +66,8 @@ export declare function ucIsDisabled(execState: UCExecState): boolean;
|
|
|
45
66
|
/**
|
|
46
67
|
* Check whether the execution corresponds to a "loading" state
|
|
47
68
|
*
|
|
48
|
-
* Typically, this is used to show a `loading` indicator. Thus, it's `true` when `execState ===
|
|
49
|
-
* Note that it's not for `
|
|
69
|
+
* Typically, this is used to show a `loading` indicator. Thus, it's `true` when `execState === UCExecState.SUBMITTING`.
|
|
70
|
+
* Note that it's not for `UCExecState.CHANGING` or `UCExecState.INITIALIZING` because these are not triggered by the user per sé.
|
|
50
71
|
*
|
|
51
72
|
* @param execState
|
|
52
73
|
* @returns
|
package/dist/esm/uc/exec.js
CHANGED
|
@@ -1,20 +1,55 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Mode of execution of a use case
|
|
3
|
-
*
|
|
4
|
-
* Unlike all the other enums, the values are lowercased for compatibility reasons.
|
|
5
|
-
* Indeed, this value is persisted in the database so we need to support all existing deployments.
|
|
6
3
|
*/
|
|
7
|
-
export
|
|
8
|
-
(function (UCExecMode) {
|
|
4
|
+
export const UCExecMode = {
|
|
9
5
|
/**
|
|
10
6
|
* The use case has been executed programmatically
|
|
11
7
|
*/
|
|
12
|
-
|
|
8
|
+
AUTO: 'auto',
|
|
13
9
|
/**
|
|
14
10
|
* The use case has been executed explicitly by a user
|
|
15
11
|
*/
|
|
16
|
-
|
|
17
|
-
}
|
|
12
|
+
USER: 'user',
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Result of execution of a use case
|
|
16
|
+
*/
|
|
17
|
+
export const UCExecRes = {
|
|
18
|
+
/**
|
|
19
|
+
* The user aborted the exec (e.g. by not confirming)
|
|
20
|
+
*/
|
|
21
|
+
ABORTED: 'aborted',
|
|
22
|
+
/**
|
|
23
|
+
* The execution failed
|
|
24
|
+
*/
|
|
25
|
+
FAILED: 'failed',
|
|
26
|
+
/**
|
|
27
|
+
* The execution succeeded
|
|
28
|
+
*/
|
|
29
|
+
SUCCEEDED: 'succeeded',
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* State of execution of a use case
|
|
33
|
+
* It applies to a form, but it can be applied and generalized to any other interaction mechanism (i.e. cli, voice...).
|
|
34
|
+
*/
|
|
35
|
+
export const UCExecState = {
|
|
36
|
+
/**
|
|
37
|
+
* An action triggered a change, fields should be disabled
|
|
38
|
+
*/
|
|
39
|
+
CHANGING: 'changing',
|
|
40
|
+
/**
|
|
41
|
+
* It can be touched and filled by the user
|
|
42
|
+
*/
|
|
43
|
+
IDLE: 'idle',
|
|
44
|
+
/**
|
|
45
|
+
* It's initializing in some way, fields should be disabled
|
|
46
|
+
*/
|
|
47
|
+
INITIALIZING: 'initializing',
|
|
48
|
+
/**
|
|
49
|
+
* It's submitting, fields should be disabled and some indicator should show the processing
|
|
50
|
+
*/
|
|
51
|
+
SUBMITTING: 'submitting',
|
|
52
|
+
};
|
|
18
53
|
/**
|
|
19
54
|
* Check whether the execution corresponds to a "disabled" state
|
|
20
55
|
*
|
|
@@ -24,19 +59,19 @@ export var UCExecMode;
|
|
|
24
59
|
* @returns
|
|
25
60
|
*/
|
|
26
61
|
export function ucIsDisabled(execState) {
|
|
27
|
-
return execState !==
|
|
62
|
+
return execState !== UCExecState.IDLE;
|
|
28
63
|
}
|
|
29
64
|
/**
|
|
30
65
|
* Check whether the execution corresponds to a "loading" state
|
|
31
66
|
*
|
|
32
|
-
* Typically, this is used to show a `loading` indicator. Thus, it's `true` when `execState ===
|
|
33
|
-
* Note that it's not for `
|
|
67
|
+
* Typically, this is used to show a `loading` indicator. Thus, it's `true` when `execState === UCExecState.SUBMITTING`.
|
|
68
|
+
* Note that it's not for `UCExecState.CHANGING` or `UCExecState.INITIALIZING` because these are not triggered by the user per sé.
|
|
34
69
|
*
|
|
35
70
|
* @param execState
|
|
36
71
|
* @returns
|
|
37
72
|
*/
|
|
38
73
|
export function ucIsLoading(execState) {
|
|
39
|
-
return execState ===
|
|
74
|
+
return execState === UCExecState.SUBMITTING;
|
|
40
75
|
}
|
|
41
76
|
/**
|
|
42
77
|
* Check whether the execution corresponds to an "error" result
|
|
@@ -45,5 +80,5 @@ export function ucIsLoading(execState) {
|
|
|
45
80
|
* @returns
|
|
46
81
|
*/
|
|
47
82
|
export function ucIsOnErr(execRes) {
|
|
48
|
-
return execRes ===
|
|
83
|
+
return execRes === UCExecRes.FAILED;
|
|
49
84
|
}
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import type { DataType, TBase, UIntQuantity } from '../dt/index.js';
|
|
2
|
+
import type { EnumOf } from '../utils/index.js';
|
|
2
3
|
import type { UCFieldKey } from './def.js';
|
|
3
4
|
import type { Value } from './value.js';
|
|
4
|
-
export declare
|
|
5
|
+
export declare const UCInputFieldFillingMode: {
|
|
5
6
|
/**
|
|
6
7
|
* Set programmatically on behalf of the user (e.g. a foreign key id for a given object)
|
|
7
8
|
*/
|
|
8
|
-
AUTO_PRE
|
|
9
|
+
readonly AUTO_PRE: "AUTO_PRE";
|
|
9
10
|
/**
|
|
10
11
|
* Set manually by the user (e.g. a form field, a cli flag, etc.)
|
|
11
12
|
*/
|
|
12
|
-
MANUAL
|
|
13
|
-
}
|
|
13
|
+
readonly MANUAL: "MANUAL";
|
|
14
|
+
};
|
|
15
|
+
export type UCInputFieldFillingMode = EnumOf<typeof UCInputFieldFillingMode>;
|
|
14
16
|
export interface UCInputFieldDefCardinality {
|
|
15
17
|
max?: UIntQuantity;
|
|
16
18
|
min?: UIntQuantity;
|
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
export
|
|
2
|
-
(function (UCInputFieldFillingMode) {
|
|
1
|
+
export const UCInputFieldFillingMode = {
|
|
3
2
|
/**
|
|
4
3
|
* Set programmatically on behalf of the user (e.g. a foreign key id for a given object)
|
|
5
4
|
*/
|
|
6
|
-
|
|
5
|
+
AUTO_PRE: 'AUTO_PRE',
|
|
7
6
|
/**
|
|
8
7
|
* Set manually by the user (e.g. a form field, a cli flag, etc.)
|
|
9
8
|
*/
|
|
10
|
-
|
|
11
|
-
}
|
|
9
|
+
MANUAL: 'MANUAL',
|
|
10
|
+
};
|
|
12
11
|
export function ucifExamples(def) {
|
|
13
12
|
const { type } = def;
|
|
14
13
|
const examples = type.getExamples();
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
import type { EnumOf } from '../utils/index.js';
|
|
2
|
+
export declare const UCOutputSideEffectType: {
|
|
2
3
|
/**
|
|
3
4
|
* Trigger a clearing of the auth on the calling system (e.g. `SignOut`).
|
|
4
5
|
*/
|
|
5
|
-
CLEAR_AUTH
|
|
6
|
+
readonly CLEAR_AUTH: "CLEAR_AUTH";
|
|
6
7
|
/**
|
|
7
8
|
* Trigger a redirect on the calling system (e.g. after the final round of an OAuth1 flow)
|
|
8
9
|
*
|
|
@@ -11,18 +12,19 @@ export declare enum UCOutputSideEffectType {
|
|
|
11
12
|
*
|
|
12
13
|
* It expects a field `redirect: URL` in `output.parts._0.items[0]`.
|
|
13
14
|
*/
|
|
14
|
-
REDIRECT
|
|
15
|
+
readonly REDIRECT: "REDIRECT";
|
|
15
16
|
/**
|
|
16
17
|
* Trigger a setting of the auth on the calling system (e.g. `SignIn` / `SignUp`).
|
|
17
18
|
*
|
|
18
19
|
* It expects a field `jwt: JWT` in `output.parts._0.items[0]`.
|
|
19
20
|
*/
|
|
20
|
-
SET_AUTH
|
|
21
|
-
}
|
|
21
|
+
readonly SET_AUTH: "SET_AUTH";
|
|
22
|
+
};
|
|
23
|
+
export type UCOutputSideEffectType = EnumOf<typeof UCOutputSideEffectType>;
|
|
22
24
|
export type UCOutputSideEffect = {
|
|
23
|
-
type: UCOutputSideEffectType.CLEAR_AUTH;
|
|
25
|
+
type: typeof UCOutputSideEffectType.CLEAR_AUTH;
|
|
24
26
|
} | {
|
|
25
|
-
type: UCOutputSideEffectType.REDIRECT;
|
|
27
|
+
type: typeof UCOutputSideEffectType.REDIRECT;
|
|
26
28
|
} | {
|
|
27
|
-
type: UCOutputSideEffectType.SET_AUTH;
|
|
29
|
+
type: typeof UCOutputSideEffectType.SET_AUTH;
|
|
28
30
|
};
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
export
|
|
2
|
-
(function (UCOutputSideEffectType) {
|
|
1
|
+
export const UCOutputSideEffectType = {
|
|
3
2
|
/**
|
|
4
3
|
* Trigger a clearing of the auth on the calling system (e.g. `SignOut`).
|
|
5
4
|
*/
|
|
6
|
-
|
|
5
|
+
CLEAR_AUTH: 'CLEAR_AUTH',
|
|
7
6
|
/**
|
|
8
7
|
* Trigger a redirect on the calling system (e.g. after the final round of an OAuth1 flow)
|
|
9
8
|
*
|
|
@@ -12,11 +11,11 @@ export var UCOutputSideEffectType;
|
|
|
12
11
|
*
|
|
13
12
|
* It expects a field `redirect: URL` in `output.parts._0.items[0]`.
|
|
14
13
|
*/
|
|
15
|
-
|
|
14
|
+
REDIRECT: 'REDIRECT',
|
|
16
15
|
/**
|
|
17
16
|
* Trigger a setting of the auth on the calling system (e.g. `SignIn` / `SignUp`).
|
|
18
17
|
*
|
|
19
18
|
* It expects a field `jwt: JWT` in `output.parts._0.items[0]`.
|
|
20
19
|
*/
|
|
21
|
-
|
|
22
|
-
}
|
|
20
|
+
SET_AUTH: 'SET_AUTH',
|
|
21
|
+
};
|
|
@@ -66,9 +66,9 @@ let UCInputFilesProcessor = class UCInputFilesProcessor {
|
|
|
66
66
|
await this.fsManager.touch(destPath, await file.arrayBuffer());
|
|
67
67
|
}
|
|
68
68
|
else {
|
|
69
|
-
const {
|
|
70
|
-
await this.fsManager.cp(
|
|
71
|
-
await this.fsManager.rm(
|
|
69
|
+
const { uri } = file;
|
|
70
|
+
await this.fsManager.cp(uri, destPath);
|
|
71
|
+
await this.fsManager.rm(uri);
|
|
72
72
|
}
|
|
73
73
|
return fileNameRef;
|
|
74
74
|
}
|
|
@@ -34,7 +34,8 @@ let UCInputValidator = class UCInputValidator {
|
|
|
34
34
|
let message = this.i18nManager.t(key, { vars: { expected } });
|
|
35
35
|
if (field) {
|
|
36
36
|
const { label } = this.wordingManager.ucif(field);
|
|
37
|
-
message = `${
|
|
37
|
+
message = `${message.charAt(0).toLowerCase()}${message.slice(1)}`;
|
|
38
|
+
message = `${label} ${message}`.trim();
|
|
38
39
|
}
|
|
39
40
|
throw new IllegalArgumentError(message);
|
|
40
41
|
}
|
|
@@ -44,7 +44,7 @@ let UCOutputFilesProcessor = class UCOutputFilesProcessor {
|
|
|
44
44
|
filePath = this.fsManager.path(this.s().uc_files_directory_path, fileName); // => /path/to/files/20230110143732-155eb8d3-9af5-430e-b856-248007859df1.jpg
|
|
45
45
|
}
|
|
46
46
|
else {
|
|
47
|
-
filePath = fileNameRef.
|
|
47
|
+
filePath = fileNameRef.uri;
|
|
48
48
|
}
|
|
49
49
|
if (keepOnlyFileName) {
|
|
50
50
|
const { base } = await this.fsManager.info(filePath);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { assertTransformedCorrectly, isFileEligible, } from '../funcs.js';
|
|
2
2
|
import { transform } from '../typescript.js';
|
|
3
3
|
export default function loader(source) {
|
|
4
|
-
// @ts-expect-error
|
|
4
|
+
// @ts-expect-error : magically made available by Webpack at execution
|
|
5
5
|
const fileName = this.resourcePath;
|
|
6
6
|
if (!isFileEligible(fileName, ['ts'])) {
|
|
7
7
|
return source;
|
|
@@ -23,4 +23,4 @@ export { humanize } from './strings/humanize.js';
|
|
|
23
23
|
export { truncate } from './strings/truncate.js';
|
|
24
24
|
export { fmtBold, fmtCommand, fmtPadEndFor, fmtSection, } from './terminal/fmt.js';
|
|
25
25
|
export { assertIsDefined, isBlank, range, sample, tupleOf, } from './types/funcs.js';
|
|
26
|
-
export type { ExtractStrict, RecursiveNonNullable, StringKeys, } from './types/utility-types.js';
|
|
26
|
+
export type { EnumOf, ExtractStrict, RecursiveNonNullable, StringKeys, } from './types/utility-types.js';
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "libmodulor",
|
|
3
3
|
"description": "A TypeScript library to create platform-agnostic applications",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.25.0",
|
|
5
5
|
"license": "LGPL-3.0",
|
|
6
6
|
"author": "Chafik H'nini <chafik.hnini@gmail.com>",
|
|
7
7
|
"homepage": "https://libmodulor.c100k.eu",
|
|
@@ -96,33 +96,35 @@
|
|
|
96
96
|
"lint:ci": "biome check"
|
|
97
97
|
},
|
|
98
98
|
"devDependencies": {
|
|
99
|
-
"@biomejs/biome": "^2.3.
|
|
99
|
+
"@biomejs/biome": "^2.3.10",
|
|
100
100
|
"@react-native-community/slider": "^4.5.7",
|
|
101
101
|
"@types/react": "^19.2.7",
|
|
102
102
|
"@types/react-dom": "^19.2.3",
|
|
103
103
|
"babel-plugin-parameter-decorator": "^1.0.16",
|
|
104
104
|
"babel-plugin-transform-typescript-metadata": "^0.3.2",
|
|
105
|
-
"expo": "^54.0.
|
|
106
|
-
"
|
|
105
|
+
"expo": "^54.0.29",
|
|
106
|
+
"expo-document-picker": "~14.0.8",
|
|
107
|
+
"expo-image-picker": "^17.0.10",
|
|
108
|
+
"wrangler": "^4.55.0"
|
|
107
109
|
},
|
|
108
110
|
"peerDependencies": {
|
|
109
|
-
"@hono/node-server": "^1.19.
|
|
110
|
-
"@modelcontextprotocol/sdk": "^1.
|
|
111
|
+
"@hono/node-server": "^1.19.7",
|
|
112
|
+
"@modelcontextprotocol/sdk": "^1.25.1",
|
|
111
113
|
"@stricli/core": "^1.2.4",
|
|
112
114
|
"buffer": "^6.0.3",
|
|
113
115
|
"cookie-parser": "^1.4.7",
|
|
114
|
-
"express": "^5.1
|
|
116
|
+
"express": "^5.2.1",
|
|
115
117
|
"express-fileupload": "^1.5.2",
|
|
116
|
-
"fast-check": "^4.
|
|
118
|
+
"fast-check": "^4.4.0",
|
|
117
119
|
"helmet": "^8.1.0",
|
|
118
|
-
"hono": "^4.
|
|
119
|
-
"inversify": "^7.10.
|
|
120
|
-
"jose": "^6.1.
|
|
120
|
+
"hono": "^4.11.1",
|
|
121
|
+
"inversify": "^7.10.7",
|
|
122
|
+
"jose": "^6.1.3",
|
|
121
123
|
"knex": "^3.1.0",
|
|
122
|
-
"next": "^15.5.
|
|
124
|
+
"next": "^15.5.9",
|
|
123
125
|
"pg": "^8.16.3",
|
|
124
|
-
"react": "^19.2.
|
|
125
|
-
"react-dom": "^19.2.
|
|
126
|
+
"react": "^19.2.3",
|
|
127
|
+
"react-dom": "^19.2.3",
|
|
126
128
|
"react-native": "^0.81.5",
|
|
127
129
|
"reflect-metadata": "^0.2.2",
|
|
128
130
|
"sqlite3": "^5.1.7",
|