@shwfed/config 2.9.0 → 2.9.1

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 (62) hide show
  1. package/dist/mcp.mjs +4 -0
  2. package/dist/module.json +1 -1
  3. package/dist/preview/assets/{badge-Ddz0ExD-.js → badge-BFb-1pCT.js} +1 -1
  4. package/dist/preview/assets/{config-q5VV9rp7.js → config-0DneC44h.js} +1 -1
  5. package/dist/preview/assets/{config-5qIYVWZh.js → config-ByZ0313c.js} +1 -1
  6. package/dist/preview/assets/{config-DN_3WauN.js → config-CBypmimA.js} +1 -1
  7. package/dist/preview/assets/{config-vePqHFvZ.js → config-CRxO6DVD.js} +1 -1
  8. package/dist/preview/assets/{config-B8zbFg3y.js → config-CgGwKTMB.js} +1 -1
  9. package/dist/preview/assets/{config-CUeBTyLb.js → config-DFaQa_Ua.js} +1 -1
  10. package/dist/preview/assets/{config---5_lEKG.js → config-DlA3bMzk.js} +1 -1
  11. package/dist/preview/assets/{config-Bn619USg.js → config-iysOo1dH.js} +1 -1
  12. package/dist/preview/assets/{config-U-3fWb-2.js → config-rr6HpsHl.js} +1 -1
  13. package/dist/preview/assets/{definition.vue_vue_type_script_setup_true_lang-fQa65UMX.js → definition.vue_vue_type_script_setup_true_lang-C1MSczMq.js} +1 -1
  14. package/dist/preview/assets/index-CLQQPdxj.js +1 -0
  15. package/dist/preview/assets/{index-BKaqQGb-.js → index-CpLuDJe9.js} +155 -155
  16. package/dist/preview/assets/{index-CzWhSvDG.js → index-CuSwhbkD.js} +1 -1
  17. package/dist/preview/assets/{item-DHarupON.js → item-iBF7XNGG.js} +1 -1
  18. package/dist/preview/assets/{runtime-DOM_La4X.js → runtime-BPK6zdoy.js} +1 -1
  19. package/dist/preview/assets/{runtime-CMuCGJZm.js → runtime-BmED451i.js} +1 -1
  20. package/dist/preview/assets/{runtime-C2rQ3L3-.js → runtime-CPiaq4_s.js} +1 -1
  21. package/dist/preview/assets/{runtime-aLgWVLET.js → runtime-CY9TirG6.js} +1 -1
  22. package/dist/preview/assets/{runtime-560tuaHv.js → runtime-D4WPJrz9.js} +1 -1
  23. package/dist/preview/assets/{runtime-CMsaNery.js → runtime-DrKKzpjq.js} +1 -1
  24. package/dist/preview/assets/{runtime-Dgl3wVfD.js → runtime-S7Afa8F4.js} +1 -1
  25. package/dist/preview/assets/{runtime-CKghL8I_.js → runtime-Uz1zCLPO.js} +1 -1
  26. package/dist/preview/assets/{runtime-DQHb9t0r.js → runtime-XjumEj6A.js} +1 -1
  27. package/dist/preview/index.html +1 -1
  28. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/config.d.vue.ts +16 -16
  29. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/config.vue.d.ts +16 -16
  30. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/config.d.vue.ts +18 -18
  31. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/config.vue.d.ts +18 -18
  32. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/config.d.vue.ts +16 -16
  33. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/config.vue.d.ts +16 -16
  34. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/config.d.vue.ts +18 -18
  35. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/config.vue.d.ts +18 -18
  36. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/config.d.vue.ts +16 -16
  37. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/config.vue.d.ts +16 -16
  38. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/config.d.vue.ts +18 -18
  39. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/config.vue.d.ts +18 -18
  40. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/runtime.vue +4 -4
  41. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/runtime.vue +4 -4
  42. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.d.vue.ts +2 -2
  43. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.vue.d.ts +2 -2
  44. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.d.vue.ts +2 -2
  45. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.vue.d.ts +2 -2
  46. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.d.vue.ts +2 -2
  47. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.vue.d.ts +2 -2
  48. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.d.vue.ts +2 -2
  49. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.vue.d.ts +2 -2
  50. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.d.vue.ts +2 -2
  51. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.vue.d.ts +2 -2
  52. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.d.vue.ts +2 -2
  53. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.vue.d.ts +2 -2
  54. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.d.vue.ts +2 -2
  55. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.vue.d.ts +2 -2
  56. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.d.vue.ts +2 -2
  57. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.vue.d.ts +2 -2
  58. package/dist/runtime/vendor/cel-js/CLAUDE.md +2 -0
  59. package/dist/runtime/vendor/cel-js/PROMPT.md +8 -0
  60. package/dist/runtime/vendor/cel-js/lib/functions.js +4 -0
  61. package/package.json +1 -1
  62. package/dist/preview/assets/index-Bj8xIK5h.js +0 -1
@@ -64,9 +64,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
64
64
  readonly readonly?: string | undefined;
65
65
  readonly grow?: boolean | undefined;
66
66
  readonly enableSorting?: boolean | undefined;
67
- readonly successMessage?: string | undefined;
68
67
  readonly accessor: string;
69
68
  readonly sortKey?: string | undefined;
69
+ readonly successMessage?: string | undefined;
70
70
  }) => any;
71
71
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
72
72
  "onUpdate:modelValue"?: ((value: {
@@ -130,9 +130,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
130
130
  readonly readonly?: string | undefined;
131
131
  readonly grow?: boolean | undefined;
132
132
  readonly enableSorting?: boolean | undefined;
133
- readonly successMessage?: string | undefined;
134
133
  readonly accessor: string;
135
134
  readonly sortKey?: string | undefined;
135
+ readonly successMessage?: string | undefined;
136
136
  }) => any) | undefined;
137
137
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
138
138
  declare const _default: typeof __VLS_export;
@@ -50,9 +50,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
50
50
  readonly locale: "en" | "ja" | "ko";
51
51
  readonly message: string;
52
52
  }[]];
53
- readonly successMessage?: string | undefined;
54
53
  readonly accessor: string;
55
54
  readonly sortKey?: string | undefined;
55
+ readonly successMessage?: string | undefined;
56
56
  }) => any;
57
57
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
58
58
  "onUpdate:modelValue"?: ((value: {
@@ -102,9 +102,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
102
102
  readonly locale: "en" | "ja" | "ko";
103
103
  readonly message: string;
104
104
  }[]];
105
- readonly successMessage?: string | undefined;
106
105
  readonly accessor: string;
107
106
  readonly sortKey?: string | undefined;
107
+ readonly successMessage?: string | undefined;
108
108
  }) => any) | undefined;
109
109
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
110
110
  declare const _default: typeof __VLS_export;
@@ -50,9 +50,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
50
50
  readonly locale: "en" | "ja" | "ko";
51
51
  readonly message: string;
52
52
  }[]];
53
- readonly successMessage?: string | undefined;
54
53
  readonly accessor: string;
55
54
  readonly sortKey?: string | undefined;
55
+ readonly successMessage?: string | undefined;
56
56
  }) => any;
57
57
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
58
58
  "onUpdate:modelValue"?: ((value: {
@@ -102,9 +102,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
102
102
  readonly locale: "en" | "ja" | "ko";
103
103
  readonly message: string;
104
104
  }[]];
105
- readonly successMessage?: string | undefined;
106
105
  readonly accessor: string;
107
106
  readonly sortKey?: string | undefined;
107
+ readonly successMessage?: string | undefined;
108
108
  }) => any) | undefined;
109
109
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
110
110
  declare const _default: typeof __VLS_export;
@@ -64,9 +64,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
64
64
  readonly readonly?: string | undefined;
65
65
  readonly grow?: boolean | undefined;
66
66
  readonly enableSorting?: boolean | undefined;
67
- readonly successMessage?: string | undefined;
68
67
  readonly accessor: string;
69
68
  readonly sortKey?: string | undefined;
69
+ readonly successMessage?: string | undefined;
70
70
  }) => any;
71
71
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
72
72
  "onUpdate:modelValue"?: ((value: {
@@ -130,9 +130,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
130
130
  readonly readonly?: string | undefined;
131
131
  readonly grow?: boolean | undefined;
132
132
  readonly enableSorting?: boolean | undefined;
133
- readonly successMessage?: string | undefined;
134
133
  readonly accessor: string;
135
134
  readonly sortKey?: string | undefined;
135
+ readonly successMessage?: string | undefined;
136
136
  }) => any) | undefined;
137
137
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
138
138
  declare const _default: typeof __VLS_export;
@@ -64,9 +64,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
64
64
  readonly readonly?: string | undefined;
65
65
  readonly grow?: boolean | undefined;
66
66
  readonly enableSorting?: boolean | undefined;
67
- readonly successMessage?: string | undefined;
68
67
  readonly accessor: string;
69
68
  readonly sortKey?: string | undefined;
69
+ readonly successMessage?: string | undefined;
70
70
  }) => any;
71
71
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
72
72
  "onUpdate:modelValue"?: ((value: {
@@ -130,9 +130,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
130
130
  readonly readonly?: string | undefined;
131
131
  readonly grow?: boolean | undefined;
132
132
  readonly enableSorting?: boolean | undefined;
133
- readonly successMessage?: string | undefined;
134
133
  readonly accessor: string;
135
134
  readonly sortKey?: string | undefined;
135
+ readonly successMessage?: string | undefined;
136
136
  }) => any) | undefined;
137
137
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
138
138
  declare const _default: typeof __VLS_export;
@@ -79,9 +79,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
79
79
  };
80
80
  }[];
81
81
  };
82
- readonly successMessage?: string | undefined;
83
82
  readonly accessor: string;
84
83
  readonly sortKey?: string | undefined;
84
+ readonly successMessage?: string | undefined;
85
85
  }) => any;
86
86
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
87
87
  "onUpdate:modelValue"?: ((value: {
@@ -160,9 +160,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
160
160
  };
161
161
  }[];
162
162
  };
163
- readonly successMessage?: string | undefined;
164
163
  readonly accessor: string;
165
164
  readonly sortKey?: string | undefined;
165
+ readonly successMessage?: string | undefined;
166
166
  }) => any) | undefined;
167
167
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
168
168
  declare const _default: typeof __VLS_export;
@@ -79,9 +79,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
79
79
  };
80
80
  }[];
81
81
  };
82
- readonly successMessage?: string | undefined;
83
82
  readonly accessor: string;
84
83
  readonly sortKey?: string | undefined;
84
+ readonly successMessage?: string | undefined;
85
85
  }) => any;
86
86
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
87
87
  "onUpdate:modelValue"?: ((value: {
@@ -160,9 +160,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
160
160
  };
161
161
  }[];
162
162
  };
163
- readonly successMessage?: string | undefined;
164
163
  readonly accessor: string;
165
164
  readonly sortKey?: string | undefined;
165
+ readonly successMessage?: string | undefined;
166
166
  }) => any) | undefined;
167
167
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
168
168
  declare const _default: typeof __VLS_export;
@@ -79,9 +79,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
79
79
  };
80
80
  }[];
81
81
  };
82
- readonly successMessage?: string | undefined;
83
82
  readonly accessor: string;
84
83
  readonly sortKey?: string | undefined;
84
+ readonly successMessage?: string | undefined;
85
85
  }) => any;
86
86
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
87
87
  "onUpdate:modelValue"?: ((value: {
@@ -160,9 +160,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
160
160
  };
161
161
  }[];
162
162
  };
163
- readonly successMessage?: string | undefined;
164
163
  readonly accessor: string;
165
164
  readonly sortKey?: string | undefined;
165
+ readonly successMessage?: string | undefined;
166
166
  }) => any) | undefined;
167
167
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
168
168
  declare const _default: typeof __VLS_export;
@@ -79,9 +79,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
79
79
  };
80
80
  }[];
81
81
  };
82
- readonly successMessage?: string | undefined;
83
82
  readonly accessor: string;
84
83
  readonly sortKey?: string | undefined;
84
+ readonly successMessage?: string | undefined;
85
85
  }) => any;
86
86
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
87
87
  "onUpdate:modelValue"?: ((value: {
@@ -160,9 +160,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
160
160
  };
161
161
  }[];
162
162
  };
163
- readonly successMessage?: string | undefined;
164
163
  readonly accessor: string;
165
164
  readonly sortKey?: string | undefined;
165
+ readonly successMessage?: string | undefined;
166
166
  }) => any) | undefined;
167
167
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
168
168
  declare const _default: typeof __VLS_export;
@@ -87,8 +87,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
87
87
  readonly target: string;
88
88
  readonly operation: string;
89
89
  }[] | undefined;
90
- readonly successMessage?: string | undefined;
91
90
  readonly accessor: string;
91
+ readonly successMessage?: string | undefined;
92
92
  };
93
93
  }) => any;
94
94
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
@@ -176,8 +176,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
176
176
  readonly target: string;
177
177
  readonly operation: string;
178
178
  }[] | undefined;
179
- readonly successMessage?: string | undefined;
180
179
  readonly accessor: string;
180
+ readonly successMessage?: string | undefined;
181
181
  };
182
182
  }) => any) | undefined;
183
183
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -87,8 +87,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
87
87
  readonly target: string;
88
88
  readonly operation: string;
89
89
  }[] | undefined;
90
- readonly successMessage?: string | undefined;
91
90
  readonly accessor: string;
91
+ readonly successMessage?: string | undefined;
92
92
  };
93
93
  }) => any;
94
94
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
@@ -176,8 +176,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
176
176
  readonly target: string;
177
177
  readonly operation: string;
178
178
  }[] | undefined;
179
- readonly successMessage?: string | undefined;
180
179
  readonly accessor: string;
180
+ readonly successMessage?: string | undefined;
181
181
  };
182
182
  }) => any) | undefined;
183
183
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -87,8 +87,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
87
87
  readonly target: string;
88
88
  readonly operation: string;
89
89
  }[] | undefined;
90
- readonly successMessage?: string | undefined;
91
90
  readonly accessor: string;
91
+ readonly successMessage?: string | undefined;
92
92
  };
93
93
  }) => any;
94
94
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
@@ -176,8 +176,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
176
176
  readonly target: string;
177
177
  readonly operation: string;
178
178
  }[] | undefined;
179
- readonly successMessage?: string | undefined;
180
179
  readonly accessor: string;
180
+ readonly successMessage?: string | undefined;
181
181
  };
182
182
  }) => any) | undefined;
183
183
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -87,8 +87,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
87
87
  readonly target: string;
88
88
  readonly operation: string;
89
89
  }[] | undefined;
90
- readonly successMessage?: string | undefined;
91
90
  readonly accessor: string;
91
+ readonly successMessage?: string | undefined;
92
92
  };
93
93
  }) => any;
94
94
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
@@ -176,8 +176,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
176
176
  readonly target: string;
177
177
  readonly operation: string;
178
178
  }[] | undefined;
179
- readonly successMessage?: string | undefined;
180
179
  readonly accessor: string;
180
+ readonly successMessage?: string | undefined;
181
181
  };
182
182
  }) => any) | undefined;
183
183
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -14,6 +14,8 @@ When modifying this library, keep both `CLAUDE.md` and `PROMPT.md` in sync with
14
14
 
15
15
  A `range()` built-in has been added (not from upstream) — `range(number, number)`, `range(number, number, number)` and `range(Date, Date, string)`. It builds an end-exclusive list; the direction follows the operands (counts down when `start > end`); `step` is a positive magnitude; the date unit is `year` / `month` / `day` / `hour` / `minute`. Output length is capped at 100000.
16
16
 
17
+ A `list.enumerate(): list<map<string, dyn>>` receiver method has been added (not from upstream, in `functions.ts` beside `list.size()`) — pairs each element with its 0-based index as a plain `{index, value}` record (CEL has no tuple type). It is a plain function, not a macro (no variable binding); the index is a `Decimal` so it stays a CEL `number` for downstream arithmetic. Receiver `list` resolves to `list<dyn>`, so it matches any list.
18
+
17
19
  `evaluate` now returns `Effect<T, ParseError | EvaluationError | TypeError>` instead of a plain value. The entire evaluation pipeline is Effect-based — every AST node's `evaluate` function returns an Effect, and sub-expressions are composed via `Effect.gen` / `yield*`. Promise-based async handling has been removed. User-registered functions may return `Effect` values, which are automatically flatMapped into the evaluation pipeline. Import `Effect` from `effect` and use `Effect.runSync` or `Effect.runPromise` to execute the returned Effect.
18
20
 
19
21
  The `homogeneousAggregateLiterals` and `enableOptionalTypes` environment options have been removed. Aggregate data structures (lists, maps) are always heterogeneous — mixed-type literals are inferred as `list<dyn>` or `map<dyn, dyn>`. Optional types (`.?`, `[?]`, `optional.*` helpers) are always enabled.
@@ -131,6 +131,14 @@ items.map(i, i.price).sum() // total of mapped prices
131
131
  ```
132
132
  Receiver must be statically typed `list<number>`. Works on number literals and `.map(...)` results; an unlisted variable typed as `dyn` will not match — wrap or type it first.
133
133
 
134
+ ### List enumerate
135
+ ```cel
136
+ [10, 20, 30].enumerate() // [{index: 0, value: 10}, {index: 1, value: 20}, {index: 2, value: 30}]
137
+ items.enumerate().map(e, e.index) // [0, 1, 2, ...]
138
+ items.enumerate().map(e, string(e.index) + ": " + e.value)
139
+ ```
140
+ Pairs each element with its 0-based index as `{index, value}` records (CEL has no tuple type). Works on any `list`. Returns `list<map<string, dyn>>`.
141
+
134
142
  ### String methods
135
143
  ```cel
136
144
  "hello".contains("ell") // true
@@ -50,6 +50,10 @@ export function registerFunctions(registry) {
50
50
  functionOverload("bytes.size(): number", (v) => Decimal.from(v.length));
51
51
  functionOverload("list.size(): number", (v) => Decimal.from(v.length ?? v.size));
52
52
  functionOverload("map.size(): number", (v) => Decimal.from(v instanceof Map ? v.size : objKeys(v).length));
53
+ functionOverload(
54
+ "list.enumerate(): list<map<string, dyn>>",
55
+ (v) => v.map((value, i) => ({ index: Decimal.from(i), value }))
56
+ );
53
57
  functionOverload("bytes(string): bytes", (v) => ByteOpts.fromString(v));
54
58
  functionOverload("bytes(bytes): bytes", identity);
55
59
  functionOverload("number(number): number", (v) => Decimal.from(v));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shwfed/config",
3
- "version": "2.9.0",
3
+ "version": "2.9.1",
4
4
  "description": "Configurable UI for SHWFED",
5
5
  "type": "module",
6
6
  "publishConfig": {
@@ -1 +0,0 @@
1
- import{b1 as e}from"./index-BKaqQGb-.js";import{b2 as f,b3 as r,b4 as s}from"./index-BKaqQGb-.js";export{f as TableConfig,r as createTableConfig,e as default,s as getColumnTechnicalKey};