@shwfed/config 3.0.3 → 3.0.4

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/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "shwfed",
3
3
  "configKey": "shwfed",
4
- "version": "3.0.3",
4
+ "version": "3.0.4",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "1.0.2",
7
7
  "unbuild": "unknown"
@@ -1,5 +1,5 @@
1
1
  <script setup>
2
- import { Effect } from "effect";
2
+ import { Cause, Effect } from "effect";
3
3
  import { createDefu } from "defu";
4
4
  import { cel as _rawCel } from "../../../../../utils/cel";
5
5
  import { celBindings, injectCELContext } from "../../../../../utils/cel-context";
@@ -51,7 +51,27 @@ const effect = Effect.suspend(() => {
51
51
  return Effect.map($cel(write.value, { steps }), (result) => {
52
52
  const merged = mergeAtPath(formState.getAt(path), result);
53
53
  formState.setAt(path, merged);
54
- });
54
+ }).pipe(
55
+ // A row that blows up here — an expression that parses but throws on
56
+ // this click's data (`steps["r1"].json.rate` when the response was
57
+ // null), a path dot-prop cannot descend — is a *config* bug, not a
58
+ // condition the end user can act on. So: no toast, but never silent
59
+ // either. The failure otherwise reaches only the action runner's
60
+ // `catch`, whose `console.error` is `import.meta.dev`-gated — and the
61
+ // designer configures inside the running (production-built) app, so
62
+ // that log is one they can never see. Log ungated, like every other
63
+ // CEL misconfiguration in the runtime (`form/index.vue`,
64
+ // `sidebar/tree.vue`, the field runtimes), naming the row that failed;
65
+ // then re-raise so the click still halts (rows after it, and 写入后,
66
+ // stay skipped). `tapErrorCause` covers a throwing `setAt` (a defect)
67
+ // as well as a failed evaluation.
68
+ Effect.tapErrorCause((cause) => Effect.sync(() => {
69
+ console.error(
70
+ `[shwfed-actions] state.write: failed to write "${path}" for ${props.buttonId}:`,
71
+ Cause.squash(cause)
72
+ );
73
+ }))
74
+ );
55
75
  },
56
76
  { discard: true }
57
77
  )
@@ -39,17 +39,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
39
39
  readonly mode: "formula" | "prefill";
40
40
  readonly expression: string;
41
41
  } | undefined;
42
- readonly validations?: readonly {
43
- readonly message: readonly [{
44
- readonly locale: "zh";
45
- readonly message: string;
46
- }, ...{
47
- readonly locale: "en" | "ja" | "ko";
48
- readonly message: string;
49
- }[]];
50
- readonly warning?: boolean | undefined;
51
- readonly when: string;
52
- }[] | undefined;
53
42
  readonly addon?: {
54
43
  readonly size: "default" | "sm" | "xs";
55
44
  readonly style?: string | undefined;
@@ -117,6 +106,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
117
106
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
118
107
  }[];
119
108
  } | undefined;
109
+ readonly validations?: readonly {
110
+ readonly message: readonly [{
111
+ readonly locale: "zh";
112
+ readonly message: string;
113
+ }, ...{
114
+ readonly locale: "en" | "ja" | "ko";
115
+ readonly message: string;
116
+ }[]];
117
+ readonly warning?: boolean | undefined;
118
+ readonly when: string;
119
+ }[] | undefined;
120
120
  }) => any;
121
121
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
122
122
  "onUpdate:modelValue"?: ((value: {
@@ -155,17 +155,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
155
155
  readonly mode: "formula" | "prefill";
156
156
  readonly expression: string;
157
157
  } | undefined;
158
- readonly validations?: readonly {
159
- readonly message: readonly [{
160
- readonly locale: "zh";
161
- readonly message: string;
162
- }, ...{
163
- readonly locale: "en" | "ja" | "ko";
164
- readonly message: string;
165
- }[]];
166
- readonly warning?: boolean | undefined;
167
- readonly when: string;
168
- }[] | undefined;
169
158
  readonly addon?: {
170
159
  readonly size: "default" | "sm" | "xs";
171
160
  readonly style?: string | undefined;
@@ -233,6 +222,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
233
222
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
234
223
  }[];
235
224
  } | undefined;
225
+ readonly validations?: readonly {
226
+ readonly message: readonly [{
227
+ readonly locale: "zh";
228
+ readonly message: string;
229
+ }, ...{
230
+ readonly locale: "en" | "ja" | "ko";
231
+ readonly message: string;
232
+ }[]];
233
+ readonly warning?: boolean | undefined;
234
+ readonly when: string;
235
+ }[] | undefined;
236
236
  }) => any) | undefined;
237
237
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
238
238
  declare const _default: typeof __VLS_export;
@@ -39,17 +39,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
39
39
  readonly mode: "formula" | "prefill";
40
40
  readonly expression: string;
41
41
  } | undefined;
42
- readonly validations?: readonly {
43
- readonly message: readonly [{
44
- readonly locale: "zh";
45
- readonly message: string;
46
- }, ...{
47
- readonly locale: "en" | "ja" | "ko";
48
- readonly message: string;
49
- }[]];
50
- readonly warning?: boolean | undefined;
51
- readonly when: string;
52
- }[] | undefined;
53
42
  readonly addon?: {
54
43
  readonly size: "default" | "sm" | "xs";
55
44
  readonly style?: string | undefined;
@@ -117,6 +106,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
117
106
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
118
107
  }[];
119
108
  } | undefined;
109
+ readonly validations?: readonly {
110
+ readonly message: readonly [{
111
+ readonly locale: "zh";
112
+ readonly message: string;
113
+ }, ...{
114
+ readonly locale: "en" | "ja" | "ko";
115
+ readonly message: string;
116
+ }[]];
117
+ readonly warning?: boolean | undefined;
118
+ readonly when: string;
119
+ }[] | undefined;
120
120
  }) => any;
121
121
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
122
122
  "onUpdate:modelValue"?: ((value: {
@@ -155,17 +155,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
155
155
  readonly mode: "formula" | "prefill";
156
156
  readonly expression: string;
157
157
  } | undefined;
158
- readonly validations?: readonly {
159
- readonly message: readonly [{
160
- readonly locale: "zh";
161
- readonly message: string;
162
- }, ...{
163
- readonly locale: "en" | "ja" | "ko";
164
- readonly message: string;
165
- }[]];
166
- readonly warning?: boolean | undefined;
167
- readonly when: string;
168
- }[] | undefined;
169
158
  readonly addon?: {
170
159
  readonly size: "default" | "sm" | "xs";
171
160
  readonly style?: string | undefined;
@@ -233,6 +222,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
233
222
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
234
223
  }[];
235
224
  } | undefined;
225
+ readonly validations?: readonly {
226
+ readonly message: readonly [{
227
+ readonly locale: "zh";
228
+ readonly message: string;
229
+ }, ...{
230
+ readonly locale: "en" | "ja" | "ko";
231
+ readonly message: string;
232
+ }[]];
233
+ readonly warning?: boolean | undefined;
234
+ readonly when: string;
235
+ }[] | undefined;
236
236
  }) => any) | undefined;
237
237
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
238
238
  declare const _default: typeof __VLS_export;
@@ -42,17 +42,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
42
42
  readonly mode: "formula" | "prefill";
43
43
  readonly expression: string;
44
44
  } | undefined;
45
- readonly validations?: readonly {
46
- readonly message: readonly [{
47
- readonly locale: "zh";
48
- readonly message: string;
49
- }, ...{
50
- readonly locale: "en" | "ja" | "ko";
51
- readonly message: string;
52
- }[]];
53
- readonly warning?: boolean | undefined;
54
- readonly when: string;
55
- }[] | undefined;
56
45
  readonly addon?: {
57
46
  readonly size: "default" | "sm" | "xs";
58
47
  readonly style?: string | undefined;
@@ -120,6 +109,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
120
109
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
121
110
  }[];
122
111
  } | undefined;
112
+ readonly validations?: readonly {
113
+ readonly message: readonly [{
114
+ readonly locale: "zh";
115
+ readonly message: string;
116
+ }, ...{
117
+ readonly locale: "en" | "ja" | "ko";
118
+ readonly message: string;
119
+ }[]];
120
+ readonly warning?: boolean | undefined;
121
+ readonly when: string;
122
+ }[] | undefined;
123
123
  readonly precision?: number | undefined;
124
124
  readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
125
125
  readonly valueAsString?: boolean | undefined;
@@ -165,17 +165,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
165
165
  readonly mode: "formula" | "prefill";
166
166
  readonly expression: string;
167
167
  } | undefined;
168
- readonly validations?: readonly {
169
- readonly message: readonly [{
170
- readonly locale: "zh";
171
- readonly message: string;
172
- }, ...{
173
- readonly locale: "en" | "ja" | "ko";
174
- readonly message: string;
175
- }[]];
176
- readonly warning?: boolean | undefined;
177
- readonly when: string;
178
- }[] | undefined;
179
168
  readonly addon?: {
180
169
  readonly size: "default" | "sm" | "xs";
181
170
  readonly style?: string | undefined;
@@ -243,6 +232,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
243
232
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
244
233
  }[];
245
234
  } | undefined;
235
+ readonly validations?: readonly {
236
+ readonly message: readonly [{
237
+ readonly locale: "zh";
238
+ readonly message: string;
239
+ }, ...{
240
+ readonly locale: "en" | "ja" | "ko";
241
+ readonly message: string;
242
+ }[]];
243
+ readonly warning?: boolean | undefined;
244
+ readonly when: string;
245
+ }[] | undefined;
246
246
  readonly precision?: number | undefined;
247
247
  readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
248
248
  readonly valueAsString?: boolean | undefined;
@@ -42,17 +42,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
42
42
  readonly mode: "formula" | "prefill";
43
43
  readonly expression: string;
44
44
  } | undefined;
45
- readonly validations?: readonly {
46
- readonly message: readonly [{
47
- readonly locale: "zh";
48
- readonly message: string;
49
- }, ...{
50
- readonly locale: "en" | "ja" | "ko";
51
- readonly message: string;
52
- }[]];
53
- readonly warning?: boolean | undefined;
54
- readonly when: string;
55
- }[] | undefined;
56
45
  readonly addon?: {
57
46
  readonly size: "default" | "sm" | "xs";
58
47
  readonly style?: string | undefined;
@@ -120,6 +109,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
120
109
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
121
110
  }[];
122
111
  } | undefined;
112
+ readonly validations?: readonly {
113
+ readonly message: readonly [{
114
+ readonly locale: "zh";
115
+ readonly message: string;
116
+ }, ...{
117
+ readonly locale: "en" | "ja" | "ko";
118
+ readonly message: string;
119
+ }[]];
120
+ readonly warning?: boolean | undefined;
121
+ readonly when: string;
122
+ }[] | undefined;
123
123
  readonly precision?: number | undefined;
124
124
  readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
125
125
  readonly valueAsString?: boolean | undefined;
@@ -165,17 +165,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
165
165
  readonly mode: "formula" | "prefill";
166
166
  readonly expression: string;
167
167
  } | undefined;
168
- readonly validations?: readonly {
169
- readonly message: readonly [{
170
- readonly locale: "zh";
171
- readonly message: string;
172
- }, ...{
173
- readonly locale: "en" | "ja" | "ko";
174
- readonly message: string;
175
- }[]];
176
- readonly warning?: boolean | undefined;
177
- readonly when: string;
178
- }[] | undefined;
179
168
  readonly addon?: {
180
169
  readonly size: "default" | "sm" | "xs";
181
170
  readonly style?: string | undefined;
@@ -243,6 +232,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
243
232
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
244
233
  }[];
245
234
  } | undefined;
235
+ readonly validations?: readonly {
236
+ readonly message: readonly [{
237
+ readonly locale: "zh";
238
+ readonly message: string;
239
+ }, ...{
240
+ readonly locale: "en" | "ja" | "ko";
241
+ readonly message: string;
242
+ }[]];
243
+ readonly warning?: boolean | undefined;
244
+ readonly when: string;
245
+ }[] | undefined;
246
246
  readonly precision?: number | undefined;
247
247
  readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
248
248
  readonly valueAsString?: boolean | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shwfed/config",
3
- "version": "3.0.3",
3
+ "version": "3.0.4",
4
4
  "description": "Configurable UI for SHWFED",
5
5
  "type": "module",
6
6
  "publishConfig": {