@shwfed/config 2.9.9 → 2.9.11

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.
Files changed (165) hide show
  1. package/dist/mcp.mjs +10 -2
  2. package/dist/module.json +1 -1
  3. package/dist/preview/assets/{FieldGroup.vue_vue_type_script_setup_true_lang-CdbT3cSj.js → FieldGroup.vue_vue_type_script_setup_true_lang-CN4xD2hQ.js} +1 -1
  4. package/dist/preview/assets/badge-CzfW1Ked.js +1 -0
  5. package/dist/preview/assets/config-BdX3zl4t.js +1 -0
  6. package/dist/preview/assets/{config-C8R7tsmC.js → config-Bzwfqv6w.js} +1 -1
  7. package/dist/preview/assets/config-C2y2XI2Q.js +1 -0
  8. package/dist/preview/assets/config-CCXJvpik.js +1 -0
  9. package/dist/preview/assets/config-CDYZN7EX.js +1 -0
  10. package/dist/preview/assets/config-CPuERNUd.js +1 -0
  11. package/dist/preview/assets/config-D37gWDMV.js +1 -0
  12. package/dist/preview/assets/config-DbNukLyq.js +1 -0
  13. package/dist/preview/assets/config-Op5IHwI_.js +1 -0
  14. package/dist/preview/assets/config-e5aOGFb2.js +1 -0
  15. package/dist/preview/assets/config-jJQ2fulH.js +1 -0
  16. package/dist/preview/assets/{config-DVk8b1Qf.js → config-jzfHh7bp.js} +1 -1
  17. package/dist/preview/assets/definition.vue_vue_type_script_setup_true_lang-BgssDGxW.js +1 -0
  18. package/dist/preview/assets/index-0vF7XQ-J.js +1 -0
  19. package/dist/preview/assets/{index-Df0XE7Lz.js → index-CAIvIAWJ.js} +1 -1
  20. package/dist/preview/assets/index-Cyjm-GKs.js +734 -0
  21. package/dist/preview/assets/index-D0eGXK5P.css +1 -0
  22. package/dist/preview/assets/item-CUoRMMz1.js +1 -0
  23. package/dist/preview/assets/{runtime-DU0iHs9-.js → runtime-BALr-Cq0.js} +1 -1
  24. package/dist/preview/assets/runtime-BvcTYin8.js +1 -0
  25. package/dist/preview/assets/runtime-CHQwYQ80.js +1 -0
  26. package/dist/preview/assets/runtime-CU5fYNMI.js +1 -0
  27. package/dist/preview/assets/runtime-CWt21RRo.js +1 -0
  28. package/dist/preview/assets/runtime-C_epees8.js +1 -0
  29. package/dist/preview/assets/runtime-D3TnRYXn.js +1 -0
  30. package/dist/preview/assets/runtime-DWKqftSK.js +1 -0
  31. package/dist/preview/assets/runtime-V_usL1Fa.js +1 -0
  32. package/dist/preview/assets/runtime-wAz72cCJ.js +1 -0
  33. package/dist/preview/assets/schema-meta-DwWuSVqk.js +1 -0
  34. package/dist/preview/index.html +2 -2
  35. package/dist/runtime/components/actions/buttons/2026-04-18/com.shwfed.actions.button.http.request.json/config.d.vue.ts +10 -0
  36. package/dist/runtime/components/actions/buttons/2026-04-18/com.shwfed.actions.button.http.request.json/config.vue.d.ts +10 -0
  37. package/dist/runtime/components/actions/buttons/2026-04-18/com.shwfed.actions.button.http.request.json/schema.d.ts +5 -0
  38. package/dist/runtime/components/actions/buttons/2026-04-18/com.shwfed.actions.button.http.request.json.confirm/config.d.vue.ts +10 -0
  39. package/dist/runtime/components/actions/buttons/2026-04-18/com.shwfed.actions.button.http.request.json.confirm/config.vue.d.ts +10 -0
  40. package/dist/runtime/components/actions/buttons/2026-04-18/com.shwfed.actions.button.http.request.json.confirm/schema.d.ts +5 -0
  41. package/dist/runtime/components/actions/buttons/2026-05-11/com.shwfed.actions.button.modal.layout/config.vue +6 -1
  42. package/dist/runtime/components/actions/buttons/2026-05-15/com.shwfed.actions.button.event.dispatch/config.d.vue.ts +2 -0
  43. package/dist/runtime/components/actions/buttons/2026-05-15/com.shwfed.actions.button.event.dispatch/config.vue.d.ts +2 -0
  44. package/dist/runtime/components/actions/buttons/2026-05-15/com.shwfed.actions.button.event.dispatch/schema.d.ts +1 -0
  45. package/dist/runtime/components/actions/buttons/2026-05-21/com.shwfed.actions.button.http.download/config.d.vue.ts +8 -0
  46. package/dist/runtime/components/actions/buttons/2026-05-21/com.shwfed.actions.button.http.download/config.vue.d.ts +8 -0
  47. package/dist/runtime/components/actions/buttons/2026-05-21/com.shwfed.actions.button.http.download/schema.d.ts +4 -0
  48. package/dist/runtime/components/actions/buttons/2026-05-24/com.shwfed.actions.button.state.write/config.d.vue.ts +2 -0
  49. package/dist/runtime/components/actions/buttons/2026-05-24/com.shwfed.actions.button.state.write/config.vue.d.ts +2 -0
  50. package/dist/runtime/components/actions/buttons/2026-05-24/com.shwfed.actions.button.state.write/schema.d.ts +1 -0
  51. package/dist/runtime/components/actions/buttons/2026-06-08/com.shwfed.actions.button.http.request.json.batch/config.d.vue.ts +2 -0
  52. package/dist/runtime/components/actions/buttons/2026-06-08/com.shwfed.actions.button.http.request.json.batch/config.vue.d.ts +2 -0
  53. package/dist/runtime/components/actions/buttons/2026-06-08/com.shwfed.actions.button.http.request.json.batch/schema.d.ts +1 -0
  54. package/dist/runtime/components/actions/components/trigger-row-scope.d.vue.ts +17 -0
  55. package/dist/runtime/components/actions/components/trigger-row-scope.vue +15 -0
  56. package/dist/runtime/components/actions/components/trigger-row-scope.vue.d.ts +17 -0
  57. package/dist/runtime/components/actions/components/triggers-field.d.vue.ts +2 -0
  58. package/dist/runtime/components/actions/components/triggers-field.vue +29 -7
  59. package/dist/runtime/components/actions/components/triggers-field.vue.d.ts +2 -0
  60. package/dist/runtime/components/actions/config.d.vue.ts +1 -0
  61. package/dist/runtime/components/actions/config.vue +6 -2
  62. package/dist/runtime/components/actions/config.vue.d.ts +1 -0
  63. package/dist/runtime/components/block-layout-editor/index.vue +15 -2
  64. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.tabs/config.vue +5 -2
  65. package/dist/runtime/components/config/blocks/2026-06-02/com.shwfed.block.card/config.vue +4 -1
  66. package/dist/runtime/components/config/config.d.vue.ts +1 -1
  67. package/dist/runtime/components/config/config.vue +2 -33
  68. package/dist/runtime/components/config/config.vue.d.ts +1 -1
  69. package/dist/runtime/components/config/index.vue +5 -1
  70. package/dist/runtime/components/config/schema.d.ts +5 -0
  71. package/dist/runtime/components/config/schema.js +10 -0
  72. package/dist/runtime/components/config/use-editor.d.ts +19 -0
  73. package/dist/runtime/components/config/use-editor.js +36 -0
  74. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.markdown/schema.d.ts +1 -0
  75. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.markdown/schema.js +1 -1
  76. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/config.d.vue.ts +2 -0
  77. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/config.vue +3 -2
  78. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/config.vue.d.ts +2 -0
  79. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/runtime.vue +1 -1
  80. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/schema.d.ts +3 -0
  81. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/schema.js +1 -1
  82. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.d.vue.ts +2 -2
  83. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.vue.d.ts +2 -2
  84. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/config.d.vue.ts +2 -2
  85. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/config.vue.d.ts +2 -2
  86. package/dist/runtime/components/operations/2026-06-11/com.shwfed.operation.http.request.json/config.d.vue.ts +33 -0
  87. package/dist/runtime/components/operations/2026-06-11/com.shwfed.operation.http.request.json/config.vue +130 -0
  88. package/dist/runtime/components/operations/2026-06-11/com.shwfed.operation.http.request.json/config.vue.d.ts +33 -0
  89. package/dist/runtime/components/operations/2026-06-11/com.shwfed.operation.http.request.json/runtime.d.ts +2 -0
  90. package/dist/runtime/components/operations/2026-06-11/com.shwfed.operation.http.request.json/runtime.js +55 -0
  91. package/dist/runtime/components/operations/2026-06-11/com.shwfed.operation.http.request.json/schema.d.ts +23 -0
  92. package/dist/runtime/components/operations/2026-06-11/com.shwfed.operation.http.request.json/schema.js +79 -0
  93. package/dist/runtime/components/operations/utils/resolve.d.ts +16 -1
  94. package/dist/runtime/components/operations/utils/resolve.js +1 -1
  95. package/dist/runtime/components/operations/utils/step-vars.d.ts +22 -0
  96. package/dist/runtime/components/operations/utils/step-vars.js +12 -0
  97. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.actions/config.vue +1 -0
  98. package/dist/runtime/components/table/columns/2026-05-13/com.shwfed.table.column.switch/schema.d.ts +1 -0
  99. package/dist/runtime/components/table/columns/2026-05-13/com.shwfed.table.column.switch.remote/schema.d.ts +1 -0
  100. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.d.vue.ts +2 -0
  101. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.vue.d.ts +2 -0
  102. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/schema.d.ts +1 -0
  103. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.d.vue.ts +2 -0
  104. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.vue.d.ts +2 -0
  105. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/schema.d.ts +1 -0
  106. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.d.vue.ts +2 -0
  107. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.vue.d.ts +2 -0
  108. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/schema.d.ts +1 -0
  109. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.d.vue.ts +2 -0
  110. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.vue.d.ts +2 -0
  111. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/schema.d.ts +1 -0
  112. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.d.vue.ts +2 -0
  113. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.vue.d.ts +2 -0
  114. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/schema.d.ts +1 -0
  115. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.d.vue.ts +2 -0
  116. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.vue.d.ts +2 -0
  117. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/schema.d.ts +1 -0
  118. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.d.vue.ts +2 -0
  119. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.vue.d.ts +2 -0
  120. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/schema.d.ts +2 -0
  121. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.d.vue.ts +2 -0
  122. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.vue.d.ts +2 -0
  123. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/schema.d.ts +2 -0
  124. package/dist/runtime/components/table/config.vue +1 -1
  125. package/dist/runtime/components/ui/expression-editor/CodeMirrorInput.d.vue.ts +2 -0
  126. package/dist/runtime/components/ui/expression-editor/CodeMirrorInput.vue +9 -1
  127. package/dist/runtime/components/ui/expression-editor/CodeMirrorInput.vue.d.ts +2 -0
  128. package/dist/runtime/components/ui/expression-editor/ExpressionEditor.d.vue.ts +2 -2
  129. package/dist/runtime/components/ui/expression-editor/ExpressionEditor.vue +33 -4
  130. package/dist/runtime/components/ui/expression-editor/ExpressionEditor.vue.d.ts +2 -2
  131. package/dist/runtime/components/ui/expression-editor/picker-entries.d.ts +3 -2
  132. package/dist/runtime/components/ui/expression-editor/picker-entries.js +13 -2
  133. package/dist/runtime/components/ui/expression-editor/step-chip-extension.d.ts +5 -0
  134. package/dist/runtime/components/ui/expression-editor/step-chip-extension.js +132 -0
  135. package/dist/runtime/components/ui/expression-editor/step-refs.d.ts +17 -0
  136. package/dist/runtime/components/ui/expression-editor/step-refs.js +29 -0
  137. package/dist/runtime/share/event-bus.d.ts +34 -1
  138. package/dist/runtime/share/event-bus.js +28 -11
  139. package/dist/runtime/utils/cel-context.d.ts +35 -0
  140. package/dist/runtime/utils/cel-context.js +8 -0
  141. package/package.json +1 -1
  142. package/dist/preview/assets/badge-DL-wtgr8.js +0 -1
  143. package/dist/preview/assets/config-80OJWswM.js +0 -1
  144. package/dist/preview/assets/config-B8F7X1oF.js +0 -1
  145. package/dist/preview/assets/config-B9BcmOZt.js +0 -1
  146. package/dist/preview/assets/config-C-Ta4ALL.js +0 -1
  147. package/dist/preview/assets/config-CoObmLL2.js +0 -1
  148. package/dist/preview/assets/config-DBQ-1J66.js +0 -1
  149. package/dist/preview/assets/config-DjsQoLiy.js +0 -1
  150. package/dist/preview/assets/config-RmdB0dwp.js +0 -1
  151. package/dist/preview/assets/config-h_hDvpHt.js +0 -1
  152. package/dist/preview/assets/definition.vue_vue_type_script_setup_true_lang-SX94Z692.js +0 -1
  153. package/dist/preview/assets/index-BIwwDhfa.js +0 -1
  154. package/dist/preview/assets/index-C1h9lV52.css +0 -1
  155. package/dist/preview/assets/index-CsN0336H.js +0 -717
  156. package/dist/preview/assets/item-B9XcOWjy.js +0 -1
  157. package/dist/preview/assets/runtime-BBsXfAZm.js +0 -1
  158. package/dist/preview/assets/runtime-BHlUDfbv.js +0 -1
  159. package/dist/preview/assets/runtime-BrwIgXY3.js +0 -1
  160. package/dist/preview/assets/runtime-C--WPQ3o.js +0 -1
  161. package/dist/preview/assets/runtime-C0yBdMlV.js +0 -1
  162. package/dist/preview/assets/runtime-C6uebSDU.js +0 -1
  163. package/dist/preview/assets/runtime-Dqa4phvv.js +0 -1
  164. package/dist/preview/assets/runtime-Dr-MmEyE.js +0 -1
  165. package/dist/preview/assets/runtime-v_nJoD5I.js +0 -1
@@ -0,0 +1,33 @@
1
+ import { type Value } from './schema.js';
2
+ type __VLS_ModelProps = {
3
+ modelValue: Value;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
6
+ "update:modelValue": (value: {
7
+ readonly description?: readonly [{
8
+ readonly locale: "zh";
9
+ readonly message: string;
10
+ }, ...{
11
+ readonly locale: "en" | "ja" | "ko";
12
+ readonly message: string;
13
+ }[]] | undefined;
14
+ readonly resultExpression?: string | undefined;
15
+ readonly expression: string;
16
+ readonly titleExpression?: string | undefined;
17
+ }) => any;
18
+ }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
19
+ "onUpdate:modelValue"?: ((value: {
20
+ readonly description?: readonly [{
21
+ readonly locale: "zh";
22
+ readonly message: string;
23
+ }, ...{
24
+ readonly locale: "en" | "ja" | "ko";
25
+ readonly message: string;
26
+ }[]] | undefined;
27
+ readonly resultExpression?: string | undefined;
28
+ readonly expression: string;
29
+ readonly titleExpression?: string | undefined;
30
+ }) => any) | undefined;
31
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
32
+ declare const _default: typeof __VLS_export;
33
+ export default _default;
@@ -0,0 +1,130 @@
1
+ <script setup>
2
+ import { ExpressionEditor } from "../../../ui/expression-editor";
3
+ import { Field, FieldGroup, FieldLabel } from "../../../ui/field";
4
+ import { Locale as LocaleField } from "../../../ui/locale";
5
+ import { Markdown } from "../../../ui/markdown";
6
+ import { getStructFieldDescription, getStructFieldTitle } from "../../../../share/schema-meta";
7
+ import { schema } from "./schema";
8
+ defineOptions({ name: "ShwfedHttpRequestOperationConfig" });
9
+ const value = defineModel({ type: null, ...{ required: true } });
10
+ const opSchema = schema(() => {
11
+ });
12
+ const fieldTitle = (f) => getStructFieldTitle(opSchema, f) ?? f;
13
+ const fieldDescription = (f) => getStructFieldDescription(opSchema, f);
14
+ const JSON_VAR = { json: { type: "dyn", label: "HTTP \u54CD\u5E94" } };
15
+ const OUTCOME_VARS = {
16
+ json: { type: "dyn", label: "HTTP \u54CD\u5E94" },
17
+ result: { type: "string", label: "\u6267\u884C\u7ED3\u679C" }
18
+ };
19
+ function patch(patchValue) {
20
+ const next = { ...value.value, ...patchValue };
21
+ for (const [k, v] of Object.entries(patchValue)) {
22
+ if (v === void 0) Reflect.deleteProperty(next, k);
23
+ }
24
+ value.value = next;
25
+ }
26
+ function patchOptionalExpression(key, v) {
27
+ patch({ [key]: v.length === 0 ? void 0 : v });
28
+ }
29
+ function patchDescription(v) {
30
+ const blank = v.every((entry) => entry.message.trim().length === 0);
31
+ patch({ description: blank ? void 0 : v });
32
+ }
33
+ </script>
34
+
35
+ <template>
36
+ <FieldGroup>
37
+ <Field orientation="vertical">
38
+ <FieldLabel class="text-xs text-zinc-500">
39
+ <template
40
+ v-if="fieldDescription('expression')"
41
+ #tooltip
42
+ >
43
+ <Markdown
44
+ :source="fieldDescription('expression')"
45
+ block
46
+ class="prose prose-sm prose-zinc"
47
+ />
48
+ </template>
49
+ {{ fieldTitle("expression") }}
50
+ </FieldLabel>
51
+ <ExpressionEditor
52
+ :model-value="value.expression"
53
+ multiline
54
+ placeholder="例:http.post('/api/foo').body({ id: row.id })"
55
+ result-type="HttpRequest"
56
+ class="min-h-16"
57
+ @update:model-value="(v) => patch({ expression: v })"
58
+ />
59
+ </Field>
60
+
61
+ <div class="grid grid-cols-2 gap-4">
62
+ <Field orientation="vertical">
63
+ <FieldLabel class="text-xs text-zinc-500">
64
+ <template
65
+ v-if="fieldDescription('resultExpression')"
66
+ #tooltip
67
+ >
68
+ <Markdown
69
+ :source="fieldDescription('resultExpression')"
70
+ block
71
+ class="prose prose-sm prose-zinc"
72
+ />
73
+ </template>
74
+ {{ fieldTitle("resultExpression") }}
75
+ </FieldLabel>
76
+ <ExpressionEditor
77
+ :model-value="value.resultExpression ?? ''"
78
+ placeholder="例:json.code == 0 ? 'success' : 'error'"
79
+ result-type="string"
80
+ :extra-vars="JSON_VAR"
81
+ @update:model-value="(v) => patchOptionalExpression('resultExpression', v)"
82
+ />
83
+ </Field>
84
+
85
+ <Field orientation="vertical">
86
+ <FieldLabel class="text-xs text-zinc-500">
87
+ <template
88
+ v-if="fieldDescription('titleExpression')"
89
+ #tooltip
90
+ >
91
+ <Markdown
92
+ :source="fieldDescription('titleExpression')"
93
+ block
94
+ class="prose prose-sm prose-zinc"
95
+ />
96
+ </template>
97
+ {{ fieldTitle("titleExpression") }}
98
+ </FieldLabel>
99
+ <ExpressionEditor
100
+ :model-value="value.titleExpression ?? ''"
101
+ placeholder="例:result == 'error' ? '保存失败' : '保存成功'"
102
+ result-type="string"
103
+ :extra-vars="OUTCOME_VARS"
104
+ @update:model-value="(v) => patchOptionalExpression('titleExpression', v)"
105
+ />
106
+ </Field>
107
+ </div>
108
+
109
+ <Field orientation="vertical">
110
+ <FieldLabel class="text-xs text-zinc-500">
111
+ <template
112
+ v-if="fieldDescription('description')"
113
+ #tooltip
114
+ >
115
+ <Markdown
116
+ :source="fieldDescription('description')"
117
+ block
118
+ class="prose prose-sm prose-zinc"
119
+ />
120
+ </template>
121
+ {{ fieldTitle("description") }}
122
+ </FieldLabel>
123
+ <LocaleField
124
+ markdown
125
+ :model-value="value.description"
126
+ @update:model-value="(v) => patchDescription(v)"
127
+ />
128
+ </Field>
129
+ </FieldGroup>
130
+ </template>
@@ -0,0 +1,33 @@
1
+ import { type Value } from './schema.js';
2
+ type __VLS_ModelProps = {
3
+ modelValue: Value;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
6
+ "update:modelValue": (value: {
7
+ readonly description?: readonly [{
8
+ readonly locale: "zh";
9
+ readonly message: string;
10
+ }, ...{
11
+ readonly locale: "en" | "ja" | "ko";
12
+ readonly message: string;
13
+ }[]] | undefined;
14
+ readonly resultExpression?: string | undefined;
15
+ readonly expression: string;
16
+ readonly titleExpression?: string | undefined;
17
+ }) => any;
18
+ }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
19
+ "onUpdate:modelValue"?: ((value: {
20
+ readonly description?: readonly [{
21
+ readonly locale: "zh";
22
+ readonly message: string;
23
+ }, ...{
24
+ readonly locale: "en" | "ja" | "ko";
25
+ readonly message: string;
26
+ }[]] | undefined;
27
+ readonly resultExpression?: string | undefined;
28
+ readonly expression: string;
29
+ readonly titleExpression?: string | undefined;
30
+ }) => any) | undefined;
31
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
32
+ declare const _default: typeof __VLS_export;
33
+ export default _default;
@@ -0,0 +1,2 @@
1
+ import type { OperationHandler } from '../../utils/resolve.js';
2
+ export declare const handler: OperationHandler;
@@ -0,0 +1,55 @@
1
+ import { Effect, Either, Option } from "effect";
2
+ import { Fetch } from "fx-fetch";
3
+ import { toast } from "vue-sonner";
4
+ import { asRequest } from "../../../../share/request.js";
5
+ import { getLocalizedText } from "../../../../share/locale.js";
6
+ import { interpolateMarkdown } from "../../../../share/interpolate.js";
7
+ class HttpRequestHalted {
8
+ constructor(reason) {
9
+ this.reason = reason;
10
+ }
11
+ _tag = "HttpRequestHalted";
12
+ }
13
+ const TOAST_STYLES = /* @__PURE__ */ new Set(["success", "error", "warning", "info"]);
14
+ export const handler = (params, ctx) => {
15
+ const { expression, resultExpression, titleExpression, description } = params ?? {};
16
+ if (!expression || expression.trim().length === 0) return Effect.void;
17
+ const program = Effect.gen(function* () {
18
+ const steps = ctx.step?.outputs() ?? {};
19
+ const evaluated = yield* ctx.cel(expression, { steps });
20
+ const request = asRequest(evaluated);
21
+ if (Option.isNone(request)) return;
22
+ const outcome = yield* Effect.either(request.value.json());
23
+ const json = Either.isRight(outcome) ? outcome.right : null;
24
+ if (Either.isRight(outcome)) ctx.step?.publish(json);
25
+ const result = Either.isLeft(outcome) ? "error" : resultExpression === void 0 ? "success" : yield* ctx.cel(resultExpression, { json, steps });
26
+ const kind = TOAST_STYLES.has(result) ? result : "success";
27
+ if (titleExpression !== void 0) {
28
+ const title = yield* ctx.cel(titleExpression, { json, result, steps });
29
+ const raw = getLocalizedText(description, ctx.locale()) ?? "";
30
+ const body = raw.length === 0 ? void 0 : interpolateMarkdown(raw, ctx.cel, { json, result, steps });
31
+ toast[kind](title, body === void 0 ? void 0 : { description: body });
32
+ }
33
+ if (Either.isLeft(outcome)) {
34
+ if (import.meta.dev) console.warn("[shwfed-operations] http request failed", outcome.left);
35
+ return yield* Effect.die(new HttpRequestHalted(outcome.left));
36
+ }
37
+ if (kind === "error") return yield* Effect.die(new HttpRequestHalted("error result"));
38
+ });
39
+ return program.pipe(
40
+ // The bus's handler contract has no requirements channel, so the host
41
+ // can't thread a Fetch layer through — the op provides its own, same layer
42
+ // the button runner uses.
43
+ Effect.provide(Fetch.layer),
44
+ // What remains on the error channel is CEL evaluation failure (request /
45
+ // result / title expression) — a config bug, not a runtime outcome. Mirror
46
+ // the button runner: silent in prod, console in dev; the chain still
47
+ // halts so later requests don't fire off a broken step.
48
+ Effect.catchAll((error) => Effect.zipRight(
49
+ Effect.sync(() => {
50
+ if (import.meta.dev) console.warn("[shwfed-operations] http request op failed", error);
51
+ }),
52
+ Effect.die(new HttpRequestHalted(error))
53
+ ))
54
+ );
55
+ };
@@ -0,0 +1,23 @@
1
+ import { Schema } from 'effect';
2
+ import type { Environment } from '../../../../vendor/cel-js/lib/index.js';
3
+ export declare const type: "com.shwfed.operation.http.request.json";
4
+ export declare const compatibilityDate: "2026-06-11";
5
+ export declare const metadata: {
6
+ readonly name: "发送请求";
7
+ readonly icon: "fluent:cloud-arrow-up-20-regular";
8
+ readonly output: "HTTP 响应(解析后的 JSON)";
9
+ };
10
+ export declare function schema(configure: (env: Environment) => void): Schema.Struct<{
11
+ expression: Schema.Schema<string, string, never>;
12
+ resultExpression: Schema.optional<Schema.Schema<string, string, never>>;
13
+ titleExpression: Schema.optional<Schema.Schema<string, string, never>>;
14
+ description: Schema.optional<Schema.TupleType<readonly [Schema.Struct<{
15
+ locale: Schema.Literal<["zh"]>;
16
+ message: Schema.SchemaClass<string, string, never>;
17
+ }>], [Schema.Struct<{
18
+ locale: Schema.Literal<["ja", "en", "ko"]>;
19
+ message: Schema.SchemaClass<string, string, never>;
20
+ }>]>>;
21
+ }>;
22
+ export type Value = Schema.Schema.Type<ReturnType<typeof schema>>;
23
+ export declare function defaults(): Partial<Value>;
@@ -0,0 +1,79 @@
1
+ import { Schema } from "effect";
2
+ import { Expression } from "../../../../share/expression.js";
3
+ import { Locale } from "../../../../share/locale.js";
4
+ import { md } from "../../../../share/markdown.js";
5
+ import { registerStepsVariableIfAbsent } from "../../utils/step-vars.js";
6
+ export const type = "com.shwfed.operation.http.request.json";
7
+ export const compatibilityDate = "2026-06-11";
8
+ export const metadata = {
9
+ name: "\u53D1\u9001\u8BF7\u6C42",
10
+ icon: "fluent:cloud-arrow-up-20-regular",
11
+ // This op publishes its parsed response as a chain-step output, so later
12
+ // trigger rows can reference it via `steps["<row-id>"]`.
13
+ output: "HTTP \u54CD\u5E94\uFF08\u89E3\u6790\u540E\u7684 JSON\uFF09"
14
+ };
15
+ export function schema(configure) {
16
+ const withSteps = (env) => {
17
+ configure(env);
18
+ registerStepsVariableIfAbsent(env);
19
+ };
20
+ const CelHttpRequest = Expression({ configure: withSteps, resultType: "HttpRequest" });
21
+ const withJson = (env) => {
22
+ withSteps(env);
23
+ env.registerVariable("json", "dyn", {
24
+ description: "HTTP \u54CD\u5E94\u4F53\uFF08\u5DF2\u89E3\u6790 JSON\uFF09"
25
+ });
26
+ };
27
+ const CelResultString = Expression({ configure: withJson, resultType: "string" });
28
+ const withOutcome = (env) => {
29
+ withSteps(env);
30
+ env.registerVariable("json", "dyn", {
31
+ description: "HTTP \u54CD\u5E94\u4F53\uFF08\u5DF2\u89E3\u6790 JSON\uFF1B\u8BF7\u6C42\u5931\u8D25\u65F6\u4E3A null\uFF09"
32
+ });
33
+ env.registerVariable("result", "string", {
34
+ description: "\u300C\u6267\u884C\u7ED3\u679C\u300D\u8868\u8FBE\u5F0F\u7684\u503C\uFF08\u8BF7\u6C42\u5931\u8D25\u65F6\u4E3A error\uFF09"
35
+ });
36
+ };
37
+ const CelToastString = Expression({ configure: withOutcome, resultType: "string" });
38
+ return Schema.Struct({
39
+ expression: CelHttpRequest.annotations({
40
+ title: "\u8BF7\u6C42",
41
+ description: md`
42
+ 构造一个请求,服务器须返回 JSON 响应。
43
+ `
44
+ }),
45
+ resultExpression: Schema.optional(CelResultString.annotations({
46
+ title: "\u6267\u884C\u7ED3\u679C",
47
+ description: md`
48
+ 需返回 \`'success' | 'warning' | 'error' | 'info'\` 中的**一个**。
49
+
50
+ 网络错误等情况下,按 \`error\` 处理。
51
+ `
52
+ })),
53
+ titleExpression: Schema.optional(CelToastString.annotations({
54
+ title: "\u63D0\u793A\u6807\u9898",
55
+ description: md`
56
+ 配置后,作为提示的标题向用户展示。
57
+ `
58
+ })),
59
+ description: Schema.optional(Locale.annotations({
60
+ title: "\u63D0\u793A\u5185\u5BB9",
61
+ description: md`
62
+ 配置后,作为提示的内容向用户展示。
63
+ `
64
+ }))
65
+ }).annotations({
66
+ title: "HttpRequestOperation",
67
+ description: md`
68
+ 发起一次 HTTP 请求(响应解析为 JSON)。请求失败(网络错误 / 非 2xx / 响应不可解析)
69
+ 或「执行结果」为 \`error\` 时中止本次触发链。在触发列表中串联多个本操作即可按顺序
70
+ 调用多个接口——前一个失败后,后续操作不再执行。后面的步骤可经 \`steps["<步骤标识>"]\`
71
+ 引用前面步骤的响应。
72
+
73
+ toast 完全由「提示标题」「提示内容」决定(含失败场景);不配置标题则静默。
74
+ `
75
+ });
76
+ }
77
+ export function defaults() {
78
+ return { expression: "" };
79
+ }
@@ -2,7 +2,7 @@ import type { Component } from 'vue';
2
2
  import type { Effect, Schema } from 'effect';
3
3
  import type { Environment } from '../../../vendor/cel-js/lib/index.js';
4
4
  import type { CelEvaluator } from '../../../share/interpolate.js';
5
- import type { OperationHandlers } from '../../../share/event-bus.js';
5
+ import type { ChainStep, OperationHandlers } from '../../../share/event-bus.js';
6
6
  type AnySchema = Schema.Schema<any, any, never>;
7
7
  type SchemaFactory = (configure: (env: Environment) => void) => AnySchema;
8
8
  /** Context a host supplies when wiring operation handlers into its channel. */
@@ -11,6 +11,13 @@ export type OperationContext = Readonly<{
11
11
  cel: CelEvaluator;
12
12
  /** Current UI locale, read live (handlers may run long after wiring). */
13
13
  locale: () => string;
14
+ /**
15
+ * This invocation's window onto its trigger chain — read earlier steps'
16
+ * outputs, publish this step's own. Per-request (stamped by
17
+ * `dispatchTriggers`, never by the host), so it is absent at wiring time and
18
+ * outside a trigger chain. Handlers must tolerate the absent case.
19
+ */
20
+ step?: ChainStep;
14
21
  }>;
15
22
  /**
16
23
  * The generic behaviour of a parameterized operation. Infallible on the error
@@ -21,6 +28,14 @@ export type OperationHandler = (params: unknown, ctx: OperationContext) => Effec
21
28
  export type OperationMetadata = Readonly<{
22
29
  name: string;
23
30
  icon: string;
31
+ /**
32
+ * Present iff this operation publishes a chain-step output (`ctx.step.publish`)
33
+ * for later trigger rows to read via `steps["<row-id>"]` — the value is the
34
+ * designer-facing label of what gets published (e.g. 'HTTP 响应'). The trigger
35
+ * editor reads it to decide which rows to offer as step references, so a
36
+ * non-publishing op never advertises a reference that resolves to nothing.
37
+ */
38
+ output?: string;
24
39
  }>;
25
40
  export type OperationEntry = Readonly<{
26
41
  type: string;
@@ -70,7 +70,7 @@ export function operationHandlers(exposed, ctx) {
70
70
  for (const { type, compatibilityDate } of exposed) {
71
71
  const entry = findOperation(type, compatibilityDate);
72
72
  if (!entry) continue;
73
- handlers[type] = (params, cel) => entry.handler(params, cel ? { ...ctx, cel } : ctx);
73
+ handlers[type] = (params, cel, step) => entry.handler(params, { ...ctx, ...cel && { cel }, ...step && { step } });
74
74
  }
75
75
  return handlers;
76
76
  }
@@ -0,0 +1,22 @@
1
+ import type { Environment } from '../../../vendor/cel-js/lib/index.js';
2
+ import { type CELVar } from '../../../utils/cel-context.js';
3
+ /**
4
+ * Register the trigger-chain `steps` variable on `env`, skipping it when
5
+ * already declared. Idempotent for the same reason as the form/row variants:
6
+ * an op schema may be embedded under a host whose `configure` already
7
+ * advertises it, and double registration throws.
8
+ *
9
+ * `dyn` (not `map<string, dyn>`) so `steps["<id>"].data.code` type-checks the
10
+ * same way `form.foo.bar` does — what a step publishes is backend-defined and
11
+ * unknowable at design time. Keyed by trigger-row uuid; the picker renders
12
+ * each key as its「第 N 步」position.
13
+ */
14
+ export declare function registerStepsVariableIfAbsent(env: Environment): void;
15
+ /**
16
+ * The design-time CELVar cell for `steps`, for the trigger editor's per-row
17
+ * `provideCELContext` — what makes a step reference type-check in the inline
18
+ * validator (the editor builds its check env from the injected context). The
19
+ * `value` is irrelevant at design time; at runtime `steps` never rides the
20
+ * context channel at all — the op handler passes it as an evaluation extra.
21
+ */
22
+ export declare function stepsCelVar(): CELVar;
@@ -0,0 +1,12 @@
1
+ import { STEPS_VAR } from "../../../utils/cel-context.js";
2
+ const STEPS_VAR_META = {
3
+ label: "\u524D\u5E8F\u6B65\u9AA4",
4
+ description: "\u672C\u6B21\u89E6\u53D1\u94FE\u4E2D\u524D\u5E8F\u6B65\u9AA4\u53D1\u5E03\u7684\u8F93\u51FA\uFF08\u6309\u6B65\u9AA4\u6807\u8BC6\uFF09"
5
+ };
6
+ export function registerStepsVariableIfAbsent(env) {
7
+ const declared = new Set(env.getDefinitions().variables.map((v) => v.name));
8
+ if (!declared.has(STEPS_VAR)) env.registerVariable(STEPS_VAR, "dyn", STEPS_VAR_META);
9
+ }
10
+ export function stepsCelVar() {
11
+ return { type: "dyn", ...STEPS_VAR_META, value: void 0 };
12
+ }
@@ -55,6 +55,7 @@ const actionValue = computed({
55
55
  <ActionsConfigEditor
56
56
  v-model="actionValue"
57
57
  :configure="registerRowVariables"
58
+ hide-size
58
59
  >
59
60
  <template #general-extra>
60
61
  <Field orientation="vertical">
@@ -16,6 +16,7 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
16
16
  onChange: Schema.optional<Schema.Schema<string, string, never>>;
17
17
  successMessage: Schema.optional<Schema.Schema<string, string, never>>;
18
18
  triggers: Schema.optional<Schema.Array$<Schema.Struct<{
19
+ id: Schema.optional<Schema.refine<string, typeof Schema.String>>;
19
20
  target: Schema.refine<string, typeof Schema.String>;
20
21
  operation: Schema.SchemaClass<string, string, never>;
21
22
  compatibilityDate: Schema.optional<Schema.SchemaClass<string, string, never>>;
@@ -16,6 +16,7 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
16
16
  onChange: Schema.optional<Schema.Schema<string, string, never>>;
17
17
  successMessage: Schema.optional<Schema.Schema<string, string, never>>;
18
18
  triggers: Schema.optional<Schema.Array$<Schema.Struct<{
19
+ id: Schema.optional<Schema.refine<string, typeof Schema.String>>;
19
20
  target: Schema.refine<string, typeof Schema.String>;
20
21
  operation: Schema.SchemaClass<string, string, never>;
21
22
  compatibilityDate: Schema.optional<Schema.SchemaClass<string, string, never>>;
@@ -26,6 +26,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
26
26
  }[]] | undefined;
27
27
  readonly compatibilityDate: "2026-05-24";
28
28
  readonly triggers?: readonly {
29
+ readonly id?: string | undefined;
29
30
  readonly params?: unknown;
30
31
  readonly compatibilityDate?: string | undefined;
31
32
  readonly target: string;
@@ -80,6 +81,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
80
81
  }[]] | undefined;
81
82
  readonly compatibilityDate: "2026-05-24";
82
83
  readonly triggers?: readonly {
84
+ readonly id?: string | undefined;
83
85
  readonly params?: unknown;
84
86
  readonly compatibilityDate?: string | undefined;
85
87
  readonly target: string;
@@ -26,6 +26,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
26
26
  }[]] | undefined;
27
27
  readonly compatibilityDate: "2026-05-24";
28
28
  readonly triggers?: readonly {
29
+ readonly id?: string | undefined;
29
30
  readonly params?: unknown;
30
31
  readonly compatibilityDate?: string | undefined;
31
32
  readonly target: string;
@@ -80,6 +81,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
80
81
  }[]] | undefined;
81
82
  readonly compatibilityDate: "2026-05-24";
82
83
  readonly triggers?: readonly {
84
+ readonly id?: string | undefined;
83
85
  readonly params?: unknown;
84
86
  readonly compatibilityDate?: string | undefined;
85
87
  readonly target: string;
@@ -55,6 +55,7 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
55
55
  onChange: Schema.optional<Schema.Schema<string, string, never>>;
56
56
  successMessage: Schema.optional<Schema.Schema<string, string, never>>;
57
57
  triggers: Schema.optional<Schema.Array$<Schema.Struct<{
58
+ id: Schema.optional<Schema.refine<string, typeof Schema.String>>;
58
59
  target: Schema.refine<string, typeof Schema.String>;
59
60
  operation: Schema.SchemaClass<string, string, never>;
60
61
  compatibilityDate: Schema.optional<Schema.SchemaClass<string, string, never>>;
@@ -50,6 +50,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
50
50
  };
51
51
  }[];
52
52
  readonly triggers?: readonly {
53
+ readonly id?: string | undefined;
53
54
  readonly params?: unknown;
54
55
  readonly compatibilityDate?: string | undefined;
55
56
  readonly target: string;
@@ -118,6 +119,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
118
119
  };
119
120
  }[];
120
121
  readonly triggers?: readonly {
122
+ readonly id?: string | undefined;
121
123
  readonly params?: unknown;
122
124
  readonly compatibilityDate?: string | undefined;
123
125
  readonly target: string;
@@ -50,6 +50,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
50
50
  };
51
51
  }[];
52
52
  readonly triggers?: readonly {
53
+ readonly id?: string | undefined;
53
54
  readonly params?: unknown;
54
55
  readonly compatibilityDate?: string | undefined;
55
56
  readonly target: string;
@@ -118,6 +119,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
118
119
  };
119
120
  }[];
120
121
  readonly triggers?: readonly {
122
+ readonly id?: string | undefined;
121
123
  readonly params?: unknown;
122
124
  readonly compatibilityDate?: string | undefined;
123
125
  readonly target: string;
@@ -96,6 +96,7 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
96
96
  onChange: Schema.optional<Schema.Schema<string, string, never>>;
97
97
  successMessage: Schema.optional<Schema.Schema<string, string, never>>;
98
98
  triggers: Schema.optional<Schema.Array$<Schema.Struct<{
99
+ id: Schema.optional<Schema.refine<string, typeof Schema.String>>;
99
100
  target: Schema.refine<string, typeof Schema.String>;
100
101
  operation: Schema.SchemaClass<string, string, never>;
101
102
  compatibilityDate: Schema.optional<Schema.SchemaClass<string, string, never>>;
@@ -26,6 +26,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
26
26
  }[]] | undefined;
27
27
  readonly compatibilityDate: "2026-05-25";
28
28
  readonly triggers?: readonly {
29
+ readonly id?: string | undefined;
29
30
  readonly params?: unknown;
30
31
  readonly compatibilityDate?: string | undefined;
31
32
  readonly target: string;
@@ -80,6 +81,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
80
81
  }[]] | undefined;
81
82
  readonly compatibilityDate: "2026-05-25";
82
83
  readonly triggers?: readonly {
84
+ readonly id?: string | undefined;
83
85
  readonly params?: unknown;
84
86
  readonly compatibilityDate?: string | undefined;
85
87
  readonly target: string;
@@ -26,6 +26,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
26
26
  }[]] | undefined;
27
27
  readonly compatibilityDate: "2026-05-25";
28
28
  readonly triggers?: readonly {
29
+ readonly id?: string | undefined;
29
30
  readonly params?: unknown;
30
31
  readonly compatibilityDate?: string | undefined;
31
32
  readonly target: string;
@@ -80,6 +81,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
80
81
  }[]] | undefined;
81
82
  readonly compatibilityDate: "2026-05-25";
82
83
  readonly triggers?: readonly {
84
+ readonly id?: string | undefined;
83
85
  readonly params?: unknown;
84
86
  readonly compatibilityDate?: string | undefined;
85
87
  readonly target: string;
@@ -55,6 +55,7 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
55
55
  onChange: Schema.optional<Schema.Schema<string, string, never>>;
56
56
  successMessage: Schema.optional<Schema.Schema<string, string, never>>;
57
57
  triggers: Schema.optional<Schema.Array$<Schema.Struct<{
58
+ id: Schema.optional<Schema.refine<string, typeof Schema.String>>;
58
59
  target: Schema.refine<string, typeof Schema.String>;
59
60
  operation: Schema.SchemaClass<string, string, never>;
60
61
  compatibilityDate: Schema.optional<Schema.SchemaClass<string, string, never>>;
@@ -50,6 +50,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
50
50
  };
51
51
  }[];
52
52
  readonly triggers?: readonly {
53
+ readonly id?: string | undefined;
53
54
  readonly params?: unknown;
54
55
  readonly compatibilityDate?: string | undefined;
55
56
  readonly target: string;
@@ -118,6 +119,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
118
119
  };
119
120
  }[];
120
121
  readonly triggers?: readonly {
122
+ readonly id?: string | undefined;
121
123
  readonly params?: unknown;
122
124
  readonly compatibilityDate?: string | undefined;
123
125
  readonly target: string;
@@ -50,6 +50,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
50
50
  };
51
51
  }[];
52
52
  readonly triggers?: readonly {
53
+ readonly id?: string | undefined;
53
54
  readonly params?: unknown;
54
55
  readonly compatibilityDate?: string | undefined;
55
56
  readonly target: string;
@@ -118,6 +119,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
118
119
  };
119
120
  }[];
120
121
  readonly triggers?: readonly {
122
+ readonly id?: string | undefined;
121
123
  readonly params?: unknown;
122
124
  readonly compatibilityDate?: string | undefined;
123
125
  readonly target: string;
@@ -96,6 +96,7 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
96
96
  onChange: Schema.optional<Schema.Schema<string, string, never>>;
97
97
  successMessage: Schema.optional<Schema.Schema<string, string, never>>;
98
98
  triggers: Schema.optional<Schema.Array$<Schema.Struct<{
99
+ id: Schema.optional<Schema.refine<string, typeof Schema.String>>;
99
100
  target: Schema.refine<string, typeof Schema.String>;
100
101
  operation: Schema.SchemaClass<string, string, never>;
101
102
  compatibilityDate: Schema.optional<Schema.SchemaClass<string, string, never>>;