@effect-app/vue 2.93.7 → 2.94.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/dist/form.d.ts.map +1 -1
- package/dist/form.js +7 -2
- package/package.json +19 -19
- package/src/form.ts +6 -1
- package/test/dist/form-validation-errors.test.d.ts.map +1 -0
- package/test/dist/stubs.d.ts +1 -1
- package/test/form-validation-errors.test.ts +158 -0
- package/tsconfig.json +3 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# @effect-app/vue
|
|
2
2
|
|
|
3
|
+
## 2.94.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 1a102e2: update packages
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [1a102e2]
|
|
12
|
+
- effect-app@3.16.0
|
|
13
|
+
|
|
14
|
+
## 2.93.8
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- ed020e1: fix convertOutInt to account for floats, add test
|
|
19
|
+
|
|
3
20
|
## 2.93.7
|
|
4
21
|
|
|
5
22
|
### Patch Changes
|
package/dist/form.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../src/form.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwB,CAAC,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAyB/C,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,UAE1E;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GAAI,GAAG,MAAM,WAA4C,CAAA;AAE5F,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../src/form.ts"],"names":[],"mappings":"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"}
|
package/dist/form.js
CHANGED
|
@@ -37,7 +37,12 @@ export function convertOutInt(v, type) {
|
|
|
37
37
|
: type === "float"
|
|
38
38
|
? parseFloat(v)
|
|
39
39
|
: type === "int"
|
|
40
|
-
?
|
|
40
|
+
? (() => {
|
|
41
|
+
const asFloat = parseFloat(v);
|
|
42
|
+
const asInt = parseInt(v);
|
|
43
|
+
// if float and int differ, there's a decimal part - keep as float to fail integer validation
|
|
44
|
+
return asFloat !== asInt ? asFloat : asInt;
|
|
45
|
+
})()
|
|
41
46
|
: v;
|
|
42
47
|
return c;
|
|
43
48
|
}
|
|
@@ -293,4 +298,4 @@ export function getMetadataFromSchema(ast) {
|
|
|
293
298
|
required: !nullable
|
|
294
299
|
};
|
|
295
300
|
}
|
|
296
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQXVCLE1BQU0sZ0JBQWdCLENBQUE7QUFDaEUsT0FBTyxLQUFLLFVBQVUsTUFBTSxtQkFBbUIsQ0FBQTtBQUcvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBSXBELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sS0FBSyxDQUFBO0FBRXJDLDBFQUEwRTtBQUMxRSxZQUFZO0FBRVosU0FBUyxpQkFBaUIsQ0FBQyxHQUFjO0lBQ3ZDLFFBQVEsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2pCLEtBQUssYUFBYSxDQUFDLENBQUMsQ0FBQztZQUNuQixPQUFPLEdBQUcsQ0FBQTtRQUNaLENBQUM7UUFDRCxLQUFLLGdCQUFnQixDQUFDLENBQUMsQ0FBQztZQUN0QiwrRUFBK0U7WUFDL0UsOEVBQThFO1lBQzlFLE9BQU8saUJBQWlCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUNqRSxDQUFDO1FBQ0QsS0FBSyxZQUFZLENBQUMsQ0FBQyxDQUFDO1lBQ2xCLE9BQU8saUJBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3BDLENBQUM7UUFDRCxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ1IsT0FBTyxJQUFJLENBQUE7UUFDYixDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsU0FBUyxDQUFDLENBQWdCLEVBQUUsSUFBK0I7SUFDekUsT0FBTyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFD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
|
|
301
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQXVCLE1BQU0sZ0JBQWdCLENBQUE7QUFDaEUsT0FBTyxLQUFLLFVBQVUsTUFBTSxtQkFBbUIsQ0FBQTtBQUcvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBSXBELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sS0FBSyxDQUFBO0FBRXJDLDBFQUEwRTtBQUMxRSxZQUFZO0FBRVosU0FBUyxpQkFBaUIsQ0FBQyxHQUFjO0lBQ3ZDLFFBQVEsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2pCLEtBQUssYUFBYSxDQUFDLENBQUMsQ0FBQztZQUNuQixPQUFPLEdBQUcsQ0FBQTtRQUNaLENBQUM7UUFDRCxLQUFLLGdCQUFnQixDQUFDLENBQUMsQ0FBQztZQUN0QiwrRUFBK0U7WUFDL0UsOEVBQThFO1lBQzlFLE9BQU8saUJBQWlCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUNqRSxDQUFDO1FBQ0QsS0FBSyxZQUFZLENBQUMsQ0FBQyxDQUFDO1lBQ2xCLE9BQU8saUJBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3BDLENBQUM7UUFDRCxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ1IsT0FBTyxJQUFJLENBQUE7UUFDYixDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsU0FBUyxDQUFDLENBQWdCLEVBQUUsSUFBK0I7SUFDekUsT0FBTyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFD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
|
package/package.json
CHANGED
|
@@ -1,38 +1,38 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect-app/vue",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.94.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"homepage": "https://github.com/effect-ts-app/libs/tree/main/packages/vue",
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"@formatjs/intl": "^
|
|
8
|
+
"@formatjs/intl": "^4.1.0",
|
|
9
9
|
"@tanstack/query-core": "5.83.1",
|
|
10
10
|
"@tanstack/vue-query": "5.83.1",
|
|
11
|
-
"@vueuse/core": "^14.
|
|
11
|
+
"@vueuse/core": "^14.1.0",
|
|
12
12
|
"change-case": "^5.4.4",
|
|
13
13
|
"query-string": "^9.3.1",
|
|
14
|
-
"effect-app": "3.
|
|
14
|
+
"effect-app": "3.16.0"
|
|
15
15
|
},
|
|
16
16
|
"peerDependencies": {
|
|
17
|
-
"@effect-atom/atom": "^0.4.
|
|
18
|
-
"@effect-atom/atom-vue": "^0.4.
|
|
19
|
-
"@effect/platform": "^0.
|
|
20
|
-
"@effect/platform-browser": "^0.
|
|
21
|
-
"@sentry/browser": "^10.
|
|
22
|
-
"effect": "^3.19.
|
|
23
|
-
"vue": "^3.5.
|
|
17
|
+
"@effect-atom/atom": "^0.4.13",
|
|
18
|
+
"@effect-atom/atom-vue": "^0.4.5",
|
|
19
|
+
"@effect/platform": "^0.94.1",
|
|
20
|
+
"@effect/platform-browser": "^0.74.0",
|
|
21
|
+
"@sentry/browser": "^10.34.0",
|
|
22
|
+
"effect": "^3.19.14",
|
|
23
|
+
"vue": "^3.5.26"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
"@effect/vitest": "^0.27.0",
|
|
27
|
-
"@formatjs/icu-messageformat-parser": "^
|
|
28
|
-
"@types/node": "
|
|
29
|
-
"@vitejs/plugin-vue": "^6.0.
|
|
30
|
-
"intl-messageformat": "^
|
|
27
|
+
"@formatjs/icu-messageformat-parser": "^3.4.0",
|
|
28
|
+
"@types/node": "25.0.8",
|
|
29
|
+
"@vitejs/plugin-vue": "^6.0.3",
|
|
30
|
+
"intl-messageformat": "^11.1.0",
|
|
31
31
|
"json5": "^2.2.3",
|
|
32
32
|
"typescript": "~5.9.3",
|
|
33
|
-
"vite": "^7.
|
|
34
|
-
"vitest": "^4.0.
|
|
35
|
-
"@effect-app/eslint-shared-config": "0.
|
|
33
|
+
"vite": "^7.3.1",
|
|
34
|
+
"vitest": "^4.0.17",
|
|
35
|
+
"@effect-app/eslint-shared-config": "0.5.0"
|
|
36
36
|
},
|
|
37
37
|
"typesVersions": {
|
|
38
38
|
"*": {
|
|
@@ -139,6 +139,6 @@
|
|
|
139
139
|
"testsuite": "pnpm lint && pnpm circular && pnpm run test:run",
|
|
140
140
|
"ncu": "ncu",
|
|
141
141
|
"pub": "pnpm prepublish && npm publish --access public",
|
|
142
|
-
"prepublish": "
|
|
142
|
+
"prepublish": "cp -f ./tsconfig.json ./tsconfig.json.bak && node ../../scripts/mergeTsConfig.mjs ./tsconfig.json"
|
|
143
143
|
}
|
|
144
144
|
}
|
package/src/form.ts
CHANGED
|
@@ -47,7 +47,12 @@ export function convertOutInt(v: string, type?: "text" | "float" | "int") {
|
|
|
47
47
|
: type === "float"
|
|
48
48
|
? parseFloat(v)
|
|
49
49
|
: type === "int"
|
|
50
|
-
?
|
|
50
|
+
? (() => {
|
|
51
|
+
const asFloat = parseFloat(v)
|
|
52
|
+
const asInt = parseInt(v)
|
|
53
|
+
// if float and int differ, there's a decimal part - keep as float to fail integer validation
|
|
54
|
+
return asFloat !== asInt ? asFloat : asInt
|
|
55
|
+
})()
|
|
51
56
|
: v
|
|
52
57
|
return c
|
|
53
58
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-validation-errors.test.d.ts","sourceRoot":"","sources":["../form-validation-errors.test.ts"],"names":[],"mappings":""}
|
package/test/dist/stubs.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export declare const fakeIntlLayer: (messages?: Record<string, string> | Record<
|
|
|
13
13
|
export declare const useExperimental: (options?: {
|
|
14
14
|
messages?: Record<string, string> | Record<string, MessageFormatElement[]>;
|
|
15
15
|
toasts: any[];
|
|
16
|
-
}) => import("../src/experimental/makeUseCommand.js").CommanderResolved<Toast.Toast | I18n
|
|
16
|
+
}) => import("../src/experimental/makeUseCommand.js").CommanderResolved<WithToast | Toast.Toast | I18n, never>;
|
|
17
17
|
declare const RequestContextMap_base: (new () => {
|
|
18
18
|
readonly config: {};
|
|
19
19
|
}) & {
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { Effect, S } from "effect-app"
|
|
2
|
+
import { buildFieldInfoFromFieldsRoot, translate } from "../src/form.js"
|
|
3
|
+
|
|
4
|
+
// test schema with integer field
|
|
5
|
+
class TestSchema extends S.Class<TestSchema>("TestSchema")({
|
|
6
|
+
integerField: S.Int,
|
|
7
|
+
numberField: S.Number,
|
|
8
|
+
stringField: S.String
|
|
9
|
+
}) {}
|
|
10
|
+
|
|
11
|
+
// translation dictionaries
|
|
12
|
+
const translations: Record<string, Record<string, string>> = {
|
|
13
|
+
en: {
|
|
14
|
+
"validation.integer.expected": "Expected an integer, actual {actualValue}",
|
|
15
|
+
"validation.number.expected": "Expected a number, actual {actualValue}"
|
|
16
|
+
},
|
|
17
|
+
de: {
|
|
18
|
+
"validation.integer.expected": "Es wird eine ganze Zahl erwartet, tatsächlich: {actualValue}",
|
|
19
|
+
"validation.number.expected": "Es wird eine Zahl erwartet, tatsächlich: {actualValue}"
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// mock translate function to capture translation calls and return actual translated string
|
|
24
|
+
const translationCalls: Array<{ id: string; defaultMessage: string; params?: any }> = []
|
|
25
|
+
let currentLocale = "en"
|
|
26
|
+
|
|
27
|
+
const mockTranslate = (msg: { id: string; defaultMessage: string }, params?: any) => {
|
|
28
|
+
translationCalls.push({ id: msg.id, defaultMessage: msg.defaultMessage, params })
|
|
29
|
+
|
|
30
|
+
// get the translation template
|
|
31
|
+
const template = translations[currentLocale]?.[msg.id] || msg.defaultMessage
|
|
32
|
+
|
|
33
|
+
// replace parameters in the template
|
|
34
|
+
if (params) {
|
|
35
|
+
return Object.entries(params).reduce((result, [key, value]) => {
|
|
36
|
+
return result.replace(`{${key}}`, String(value))
|
|
37
|
+
}, template)
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
return template
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
beforeEach(() => {
|
|
44
|
+
translationCalls.length = 0
|
|
45
|
+
currentLocale = "en"
|
|
46
|
+
translate.value = mockTranslate as any
|
|
47
|
+
})
|
|
48
|
+
|
|
49
|
+
it("validates integer field with decimal value (English)", () =>
|
|
50
|
+
Effect
|
|
51
|
+
.gen(function*() {
|
|
52
|
+
currentLocale = "en"
|
|
53
|
+
const fieldInfo = buildFieldInfoFromFieldsRoot(TestSchema)
|
|
54
|
+
const integerFieldInfo = fieldInfo.fields.integerField
|
|
55
|
+
|
|
56
|
+
expect(integerFieldInfo._tag).toBe("FieldInfo")
|
|
57
|
+
expect(integerFieldInfo.type).toBe("int")
|
|
58
|
+
|
|
59
|
+
// test validation rules with a decimal value
|
|
60
|
+
const result = integerFieldInfo.rules[1] ? integerFieldInfo.rules[1]("59.5") : undefined
|
|
61
|
+
|
|
62
|
+
console.log("Validation result (EN):", result)
|
|
63
|
+
console.log("Translation calls:", translationCalls)
|
|
64
|
+
|
|
65
|
+
// the validation should fail
|
|
66
|
+
expect(result).not.toBe(true)
|
|
67
|
+
expect(typeof result).toBe("string")
|
|
68
|
+
|
|
69
|
+
// check if the correct translation key was called
|
|
70
|
+
const integerErrorCall = translationCalls.find((call) => call.id === "validation.integer.expected")
|
|
71
|
+
expect(integerErrorCall).toBeDefined()
|
|
72
|
+
expect(integerErrorCall?.params).toHaveProperty("actualValue")
|
|
73
|
+
expect(integerErrorCall?.params.actualValue).toBe("59.5")
|
|
74
|
+
|
|
75
|
+
// MOST IMPORTANT: verify the actual translated string returned
|
|
76
|
+
expect(result).toBe("Expected an integer, actual 59.5")
|
|
77
|
+
})
|
|
78
|
+
.pipe(Effect.runPromise))
|
|
79
|
+
|
|
80
|
+
it("validates integer field with decimal value (German)", () =>
|
|
81
|
+
Effect
|
|
82
|
+
.gen(function*() {
|
|
83
|
+
currentLocale = "de"
|
|
84
|
+
const fieldInfo = buildFieldInfoFromFieldsRoot(TestSchema)
|
|
85
|
+
const integerFieldInfo = fieldInfo.fields.integerField
|
|
86
|
+
|
|
87
|
+
expect(integerFieldInfo._tag).toBe("FieldInfo")
|
|
88
|
+
expect(integerFieldInfo.type).toBe("int")
|
|
89
|
+
|
|
90
|
+
// test validation rules with a decimal value
|
|
91
|
+
const result = integerFieldInfo.rules[1] ? integerFieldInfo.rules[1]("59.5") : undefined
|
|
92
|
+
|
|
93
|
+
console.log("Validation result (DE):", result)
|
|
94
|
+
|
|
95
|
+
// the validation should fail
|
|
96
|
+
expect(result).not.toBe(true)
|
|
97
|
+
expect(typeof result).toBe("string")
|
|
98
|
+
|
|
99
|
+
// MOST IMPORTANT: verify the actual German translated string returned
|
|
100
|
+
expect(result).toBe("Es wird eine ganze Zahl erwartet, tatsächlich: 59.5")
|
|
101
|
+
})
|
|
102
|
+
.pipe(Effect.runPromise))
|
|
103
|
+
|
|
104
|
+
it("validates string field parsed as number", () =>
|
|
105
|
+
Effect
|
|
106
|
+
.gen(function*() {
|
|
107
|
+
const fieldInfo = buildFieldInfoFromFieldsRoot(TestSchema)
|
|
108
|
+
const stringFieldInfo = fieldInfo.fields.stringField
|
|
109
|
+
|
|
110
|
+
expect(stringFieldInfo._tag).toBe("FieldInfo")
|
|
111
|
+
expect(stringFieldInfo.type).toBe("text")
|
|
112
|
+
|
|
113
|
+
// test validation rules with a number that should fail string validation
|
|
114
|
+
const result = stringFieldInfo.rules[0] ? stringFieldInfo.rules[0]("123") : undefined
|
|
115
|
+
|
|
116
|
+
console.log("Validation result for string field:", result)
|
|
117
|
+
|
|
118
|
+
// string field should accept "123" as a valid string
|
|
119
|
+
expect(result).toBe(true)
|
|
120
|
+
})
|
|
121
|
+
.pipe(Effect.runPromise))
|
|
122
|
+
|
|
123
|
+
it("validates integer field with valid integer", () =>
|
|
124
|
+
Effect
|
|
125
|
+
.gen(function*() {
|
|
126
|
+
const fieldInfo = buildFieldInfoFromFieldsRoot(TestSchema)
|
|
127
|
+
const integerFieldInfo = fieldInfo.fields.integerField
|
|
128
|
+
|
|
129
|
+
// test validation rules with a valid integer
|
|
130
|
+
const result = integerFieldInfo.rules[1] ? integerFieldInfo.rules[1]("42") : undefined
|
|
131
|
+
|
|
132
|
+
console.log("Validation result for valid integer:", result)
|
|
133
|
+
|
|
134
|
+
// the validation should pass
|
|
135
|
+
expect(result).toBe(true)
|
|
136
|
+
})
|
|
137
|
+
.pipe(Effect.runPromise))
|
|
138
|
+
|
|
139
|
+
it("error message format matches regex pattern", () => {
|
|
140
|
+
// test the actual error message format from Effect Schema
|
|
141
|
+
const errorMessage = `Int
|
|
142
|
+
└─ From side refinement failure
|
|
143
|
+
└─ Int
|
|
144
|
+
└─ Predicate refinement failure
|
|
145
|
+
└─ Expected an integer, actual 59.5`
|
|
146
|
+
|
|
147
|
+
const integerMatch = errorMessage.match(/Expected.*integer.*actual\s+(.+)/i)
|
|
148
|
+
expect(integerMatch).toBeTruthy()
|
|
149
|
+
expect(integerMatch![1]).toBe("59.5")
|
|
150
|
+
|
|
151
|
+
const numberErrorMessage = `Number
|
|
152
|
+
└─ Type side transformation failure
|
|
153
|
+
└─ Expected a number, actual "not-a-number"`
|
|
154
|
+
|
|
155
|
+
const numberMatch = numberErrorMessage.match(/Expected.*number.*actual\s+(.+)/i)
|
|
156
|
+
expect(numberMatch).toBeTruthy()
|
|
157
|
+
expect(numberMatch![1]).toBe("\"not-a-number\"")
|
|
158
|
+
})
|
package/tsconfig.json
CHANGED
|
@@ -35,7 +35,9 @@
|
|
|
35
35
|
{
|
|
36
36
|
"name": "@effect/language-service",
|
|
37
37
|
"diagnosticSeverity": {
|
|
38
|
-
"missingEffectServiceDependency": "error"
|
|
38
|
+
"missingEffectServiceDependency": "error",
|
|
39
|
+
"effectFnOpportunity": "warning",
|
|
40
|
+
"globalErrorInEffectFailure": "warning"
|
|
39
41
|
}
|
|
40
42
|
}
|
|
41
43
|
],
|