@qoretechnologies/reqraft 0.8.2 → 0.8.3

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 (27) hide show
  1. package/dist/components/form/fields/Field.d.ts +2 -13
  2. package/dist/components/form/fields/Field.d.ts.map +1 -1
  3. package/dist/components/form/fields/Field.js +10 -9
  4. package/dist/components/form/fields/Field.js.map +1 -1
  5. package/dist/components/form/fields/array/ArrayAutoField.d.ts +2 -2
  6. package/dist/components/form/fields/array/ArrayAutoField.d.ts.map +1 -1
  7. package/dist/components/form/fields/array/ArrayAutoField.js +91 -0
  8. package/dist/components/form/fields/array/ArrayAutoField.js.map +1 -1
  9. package/dist/components/form/fields/multi-select/MultiSelectFormField.d.ts +2 -1
  10. package/dist/components/form/fields/multi-select/MultiSelectFormField.d.ts.map +1 -1
  11. package/dist/components/form/fields/multi-select/MultiSelectFormField.js +2 -2
  12. package/dist/components/form/fields/multi-select/MultiSelectFormField.js.map +1 -1
  13. package/dist/components/form/fields/select/Select.d.ts.map +1 -1
  14. package/dist/components/form/fields/select/Select.js +43 -34
  15. package/dist/components/form/fields/select/Select.js.map +1 -1
  16. package/dist/components/form/fields/template/TemplateField.js +3 -3
  17. package/dist/components/form/fields/template/TemplateField.js.map +1 -1
  18. package/dist/types/Form.d.ts +3 -2
  19. package/dist/types/Form.d.ts.map +1 -1
  20. package/package.json +1 -1
  21. package/src/components/form/fields/Field.tsx +27 -49
  22. package/src/components/form/fields/array/ArrayAutoField.stories.tsx +277 -0
  23. package/src/components/form/fields/array/ArrayAutoField.tsx +167 -7
  24. package/src/components/form/fields/multi-select/MultiSelectFormField.tsx +6 -2
  25. package/src/components/form/fields/select/Select.tsx +65 -62
  26. package/src/components/form/fields/template/TemplateField.tsx +3 -3
  27. package/src/types/Form.ts +10 -42
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateField.js","sourceRoot":"","sources":["../../../../../src/components/form/fields/template/TemplateField.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TemplateField.js","sourceRoot":"","sources":["../../../../../src/components/form/fields/template/TemplateField.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
+ import { TQorusType } from '@qoretechnologies/ts-toolkit';
1
2
  import { IColorFormFieldProps } from '../components/form/fields/color/Color';
2
- export type TFormFieldType = 'string' | 'number' | 'boolean' | 'date' | 'time' | 'datetime' | 'select' | 'multiSelect' | 'radio' | 'checkbox' | 'file' | 'image' | 'color' | 'password' | 'email' | 'phone' | 'url' | 'markdown' | 'long-string' | 'cron' | 'richtext' | 'hash' | 'list';
3
- export type TFormFieldValueType<T> = T extends 'string' ? string : T extends 'number' ? number : T extends 'boolean' ? boolean : T extends 'date' ? Date | string : T extends 'time' ? Date | string : T extends 'datetime' ? Date | string : T extends 'select' ? string : T extends 'multiSelect' ? string[] : T extends 'radio' ? string : T extends 'checkbox' ? boolean : T extends 'file' ? File : T extends 'image' ? string : T extends 'color' ? IColorFormFieldProps['value'] : T extends 'password' ? string : T extends 'email' ? string : T extends 'phone' ? string : T extends 'url' ? string : T extends 'markdown' ? string : T extends 'long-string' ? string : T extends 'cron' ? string : T extends 'richtext' ? string : any;
3
+ export type TFormFieldType = TQorusType;
4
+ export type TFormFieldValueType<T> = T extends 'string' | 'long-string' | 'binary' | 'email' | 'url' | 'enum' | 'select-string' | 'file-as-string' ? string : T extends 'int' | 'integer' | 'float' | 'number' ? number : T extends 'bool' | 'boolean' ? boolean : T extends 'date' ? Date | string : T extends 'hash' | 'free-hash' | 'data' ? Record<string, any> : T extends 'list' | 'free-list' | 'range' ? unknown[] : T extends 'rgbcolor' ? IColorFormFieldProps['value'] : T extends 'file' ? File : T extends 'richtext' ? string : T extends 'auto' | 'any' ? any : T extends 'null' | 'nothing' ? null : any;
4
5
  //# sourceMappingURL=Form.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["../../src/types/Form.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAE7E,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,MAAM,GACN,MAAM,GACN,UAAU,GACV,QAAQ,GACR,aAAa,GACb,OAAO,GACP,UAAU,GACV,MAAM,GACN,OAAO,GACP,OAAO,GACP,UAAU,GACV,OAAO,GACP,OAAO,GACP,KAAK,GACL,UAAU,GACV,aAAa,GACb,MAAM,GACN,UAAU,GACV,MAAM,GACN,MAAM,CAAC;AAEX,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAC/B,CAAC,SAAS,QAAQ,GAAG,MAAM,GACzB,CAAC,SAAS,QAAQ,GAAG,MAAM,GAC3B,CAAC,SAAS,SAAS,GAAG,OAAO,GAC7B,CAAC,SAAS,MAAM,GAAG,IAAI,GAAG,MAAM,GAChC,CAAC,SAAS,MAAM,GAAG,IAAI,GAAG,MAAM,GAChC,CAAC,SAAS,UAAU,GAAG,IAAI,GAAG,MAAM,GACpC,CAAC,SAAS,QAAQ,GAAG,MAAM,GAC3B,CAAC,SAAS,aAAa,GAAG,MAAM,EAAE,GAClC,CAAC,SAAS,OAAO,GAAG,MAAM,GAC1B,CAAC,SAAS,UAAU,GAAG,OAAO,GAC9B,CAAC,SAAS,MAAM,GAAG,IAAI,GACvB,CAAC,SAAS,OAAO,GAAG,MAAM,GAC1B,CAAC,SAAS,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,GACjD,CAAC,SAAS,UAAU,GAAG,MAAM,GAC7B,CAAC,SAAS,OAAO,GAAG,MAAM,GAC1B,CAAC,SAAS,OAAO,GAAG,MAAM,GAC1B,CAAC,SAAS,KAAK,GAAG,MAAM,GACxB,CAAC,SAAS,UAAU,GAAG,MAAM,GAC7B,CAAC,SAAS,aAAa,GAAG,MAAM,GAChC,CAAC,SAAS,MAAM,GAAG,MAAM,GACzB,CAAC,SAAS,UAAU,GAAG,MAAM,GAC7B,GAAG,CAAC"}
1
+ {"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["../../src/types/Form.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAE7E,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC;AAExC,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAC/B,CAAC,SAAS,QAAQ,GAAG,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,eAAe,GAAG,gBAAgB,GAAG,MAAM,GACpH,CAAC,SAAS,KAAK,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GACzD,CAAC,SAAS,MAAM,GAAG,SAAS,GAAG,OAAO,GACtC,CAAC,SAAS,MAAM,GAAG,IAAI,GAAG,MAAM,GAChC,CAAC,SAAS,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7D,CAAC,SAAS,MAAM,GAAG,WAAW,GAAG,OAAO,GAAG,OAAO,EAAE,GACpD,CAAC,SAAS,UAAU,GAAG,oBAAoB,CAAC,OAAO,CAAC,GACpD,CAAC,SAAS,MAAM,GAAG,IAAI,GACvB,CAAC,SAAS,UAAU,GAAG,MAAM,GAC7B,CAAC,SAAS,MAAM,GAAG,KAAK,GAAG,GAAG,GAC9B,CAAC,SAAS,MAAM,GAAG,SAAS,GAAG,IAAI,GACnC,GAAG,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qoretechnologies/reqraft",
3
- "version": "0.8.2",
3
+ "version": "0.8.3",
4
4
  "description": "ReQraft is a collection of React components and hooks that are used across Qore Technologies' products made using the ReQore component library from Qore.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -13,20 +13,19 @@ import { useId } from 'react';
13
13
  import { typedToYaml } from '../../../helpers/common';
14
14
  import { useArgSchema } from '../../../hooks/useArgSchema';
15
15
  import { TFormFieldType, TFormFieldValueType } from '../../../types/Form';
16
- import BooleanFormField, { IBooleanFormFieldProps } from './boolean/Boolean';
16
+ import BooleanFormField from './boolean/Boolean';
17
17
  import ColorFormField, { IColorFormFieldProps } from './color/Color';
18
- import CronFormField, { ICronFormFieldProps } from './cron/Cron';
19
- import { DateFormField, IDateFormFieldProps } from './date/Date';
20
- import { IFileFormFieldValue, IReqraftFileFormFieldProps, ReqraftFileFormField } from './file/File';
21
- import LongStringFormField, { ILongStringFormFieldProps } from './long-string/LongString';
22
- import MarkdownFormField, { IMarkdownFormFieldProps } from './markdown/Markdown';
18
+ import CronFormField from './cron/Cron';
19
+ import { DateFormField } from './date/Date';
20
+ import { IFileFormFieldValue, ReqraftFileFormField } from './file/File';
21
+ import LongStringFormField from './long-string/LongString';
22
+ import MarkdownFormField from './markdown/Markdown';
23
23
  import { MultiSelectFormField } from './multi-select/MultiSelectFormField';
24
24
  import NumberFormField from './number/Number';
25
25
  import { ReqraftObjectFormField } from './object/Object';
26
- import RadioGroupFormField, { IRadioGroupFormFieldProps } from './radio-group/RadioGroup';
27
- import { IRichTextFormFieldProps, RichTextFormField } from './rich-text/RichText';
28
- import { ISelectFormFieldProps, SelectFormField } from './select/Select';
29
- import { IStringFormFieldProps, StringFormField } from './string/String';
26
+ import { RichTextFormField } from './rich-text/RichText';
27
+ import { SelectFormField } from './select/Select';
28
+ import { StringFormField } from './string/String';
30
29
  import { ArrayAutoField } from './array/ArrayAutoField';
31
30
  // Direct import — circular dep (FormEngine → TemplateField → FormField → FormEngine) is safe
32
31
  // because modules are all loaded before any component renders
@@ -35,11 +34,11 @@ import { FormEngine } from '../engine/FormEngine';
35
34
  const mapQorusTypeToFormFieldType = (type: string): TFormFieldType => {
36
35
  switch (type) {
37
36
  case 'richtext': return 'richtext';
38
- case 'bool': case 'boolean': return 'boolean';
39
- case 'int': case 'integer': case 'float': case 'number': return 'number';
37
+ case 'bool': case 'boolean': return 'bool';
38
+ case 'int': case 'integer': case 'float': case 'number': return 'int';
40
39
  case 'date': return 'date';
41
40
  case 'file': return 'file';
42
- case 'rgbcolor': return 'color';
41
+ case 'rgbcolor': return 'rgbcolor';
43
42
  case 'hash': case 'free-hash': return 'hash';
44
43
  case 'list': case 'free-list': return 'list';
45
44
  default: return 'long-string';
@@ -72,21 +71,7 @@ export interface IFormFieldProps<T extends TFormFieldType = TFormFieldType> exte
72
71
  element_allowed_values?: IQorusAllowedValue[];
73
72
  element_allowed_values_creatable?: boolean;
74
73
 
75
- fieldProps?: Omit<
76
- T extends 'string' ? IStringFormFieldProps
77
- : T extends 'boolean' ? IBooleanFormFieldProps
78
- : T extends 'radio' ? IRadioGroupFormFieldProps
79
- : T extends 'color' ? IColorFormFieldProps
80
- : T extends 'long-string' ? ILongStringFormFieldProps
81
- : T extends 'markdown' ? IMarkdownFormFieldProps
82
- : T extends 'cron' ? ICronFormFieldProps
83
- : T extends 'richtext' ? IRichTextFormFieldProps
84
- : T extends 'date' ? IDateFormFieldProps
85
- : T extends 'file' ? IReqraftFileFormFieldProps
86
- : T extends 'select' ? ISelectFormFieldProps
87
- : never,
88
- 'value' | 'onChange'
89
- >;
74
+ fieldProps?: Record<string, any>;
90
75
 
91
76
  label?: IReqoreLabelProps['label'];
92
77
  labelPosition?: 'top' | 'left' | 'right' | 'bottom';
@@ -130,7 +115,7 @@ export const FormField = <T extends TFormFieldType>({
130
115
  return null;
131
116
  }
132
117
 
133
- switch (type) {
118
+ switch (type as string) {
134
119
  case 'string':
135
120
  return (
136
121
  <StringFormField
@@ -142,11 +127,12 @@ export const FormField = <T extends TFormFieldType>({
142
127
  />
143
128
  );
144
129
 
130
+ case 'bool':
145
131
  case 'boolean':
146
132
  return (
147
133
  <BooleanFormField
148
134
  {...rest}
149
- {...(fieldProps as IFormFieldProps<'boolean'>['fieldProps'])}
135
+ {...(fieldProps as IFormFieldProps<'bool'>['fieldProps'])}
150
136
  checked={value as boolean}
151
137
  onChange={(checked) => {
152
138
  handleChange(checked as TFormFieldValueType<T>);
@@ -155,11 +141,14 @@ export const FormField = <T extends TFormFieldType>({
155
141
  />
156
142
  );
157
143
 
144
+ case 'int':
145
+ case 'integer':
146
+ case 'float':
158
147
  case 'number':
159
148
  return (
160
149
  <NumberFormField
161
150
  {...rest}
162
- {...(fieldProps as IFormFieldProps<'number'>['fieldProps'])}
151
+ {...(fieldProps as IFormFieldProps<'int'>['fieldProps'])}
163
152
  value={value as number}
164
153
  onChange={(value) => {
165
154
  handleChange(value as TFormFieldValueType<T>);
@@ -168,11 +157,11 @@ export const FormField = <T extends TFormFieldType>({
168
157
  />
169
158
  );
170
159
 
171
- case 'color':
160
+ case 'rgbcolor':
172
161
  return (
173
162
  <ColorFormField
174
163
  {...rest}
175
- {...(fieldProps as IFormFieldProps<'color'>['fieldProps'])}
164
+ {...(fieldProps as IFormFieldProps<'rgbcolor'>['fieldProps'])}
176
165
  value={value as IColorFormFieldProps['value']}
177
166
  onChange={(color) => {
178
167
  handleChange(color as TFormFieldValueType<T>);
@@ -180,19 +169,6 @@ export const FormField = <T extends TFormFieldType>({
180
169
  />
181
170
  );
182
171
 
183
- case 'radio':
184
- return (
185
- <RadioGroupFormField
186
- {...rest}
187
- {...(fieldProps as IFormFieldProps<'radio'>['fieldProps'])}
188
- value={value as TFormFieldValueType<T>}
189
- onChange={(selected) => {
190
- handleChange(selected as TFormFieldValueType<T>);
191
- }}
192
- id={id}
193
- />
194
- );
195
-
196
172
  case 'long-string':
197
173
  return (
198
174
  <LongStringFormField
@@ -210,7 +186,7 @@ export const FormField = <T extends TFormFieldType>({
210
186
  return (
211
187
  <MarkdownFormField
212
188
  {...rest}
213
- {...(fieldProps as IFormFieldProps<'markdown'>['fieldProps'])}
189
+ {...(fieldProps as any)}
214
190
  value={value as TFormFieldValueType<T>}
215
191
  onChange={(selected) => {
216
192
  handleChange(selected as TFormFieldValueType<T>);
@@ -223,7 +199,7 @@ export const FormField = <T extends TFormFieldType>({
223
199
  return (
224
200
  <CronFormField
225
201
  {...rest}
226
- {...(fieldProps as IFormFieldProps<'cron'>['fieldProps'])}
202
+ {...(fieldProps as any)}
227
203
  value={value as TFormFieldValueType<T>}
228
204
  onChange={(selected) => {
229
205
  handleChange(selected as TFormFieldValueType<T>);
@@ -272,10 +248,12 @@ export const FormField = <T extends TFormFieldType>({
272
248
  );
273
249
 
274
250
  case 'select':
251
+ case 'select-string':
252
+ case 'enum':
275
253
  return (
276
254
  <SelectFormField
277
255
  {...rest}
278
- {...(fieldProps as IFormFieldProps<'select'>['fieldProps'])}
256
+ {...(fieldProps as any)}
279
257
  value={value}
280
258
  onChange={(val) => {
281
259
  handleChange(val as TFormFieldValueType<T>);
@@ -0,0 +1,277 @@
1
+ import { ReqoreControlGroup } from '@qoretechnologies/reqore';
2
+ import { StoryObj } from '@storybook/react';
3
+ import { expect, fireEvent, fn, waitFor, within } from '@storybook/test';
4
+ import { useState } from 'react';
5
+ import { StoryMeta } from '../../../../types';
6
+ import { NumberFormField } from '../number/Number';
7
+ import { StringFormField } from '../string/String';
8
+ import { ArrayAutoField, IArrayAutoFieldProps } from './ArrayAutoField';
9
+
10
+ const stringRenderItem: IArrayAutoFieldProps['renderItem'] = ({
11
+ value,
12
+ onChange,
13
+ disabled,
14
+ readOnly,
15
+ size,
16
+ ...rest
17
+ }) => (
18
+ <StringFormField
19
+ value={(value as string) ?? ''}
20
+ onChange={(v) => onChange(v)}
21
+ disabled={disabled}
22
+ readOnly={readOnly}
23
+ size={size as any}
24
+ aria-label='Array item input'
25
+ {...(rest as any)}
26
+ />
27
+ );
28
+
29
+ const numberRenderItem: IArrayAutoFieldProps['renderItem'] = ({
30
+ value,
31
+ onChange,
32
+ disabled,
33
+ readOnly,
34
+ size,
35
+ ...rest
36
+ }) => (
37
+ <NumberFormField
38
+ value={value as number}
39
+ onChange={(v) => onChange(v)}
40
+ disabled={disabled}
41
+ readOnly={readOnly}
42
+ size={size as any}
43
+ aria-label='Array item input'
44
+ type='int'
45
+ {...(rest as any)}
46
+ />
47
+ );
48
+
49
+ const meta = {
50
+ component: ArrayAutoField,
51
+ title: 'Components/Form/Auto Array',
52
+ args: {
53
+ name: 'testArray',
54
+ onChange: fn(),
55
+ renderItem: stringRenderItem,
56
+ type: 'string',
57
+ },
58
+ render(args) {
59
+ const [value, setValue] = useState(args.value);
60
+
61
+ return (
62
+ <ReqoreControlGroup vertical>
63
+ <ArrayAutoField
64
+ {...args}
65
+ value={value}
66
+ onChange={(_name, val) => {
67
+ args.onChange?.(_name, val);
68
+ setValue(val);
69
+ }}
70
+ />
71
+ </ReqoreControlGroup>
72
+ );
73
+ },
74
+ } as StoryMeta<typeof ArrayAutoField>;
75
+
76
+ export default meta;
77
+ type Story = StoryObj<typeof meta>;
78
+
79
+ // ─── Compact mode stories (non-hash, non-list) ──────────────────────────────
80
+
81
+ export const CompactEmpty: Story = {
82
+ args: {
83
+ type: 'string',
84
+ value: [],
85
+ },
86
+ async play({ canvasElement }) {
87
+ const canvas = within(canvasElement);
88
+
89
+ // Should show the input field but no tags
90
+ await expect(canvas.queryByRole('button', { name: /add item/i })).not.toBeInTheDocument();
91
+ await expect(document.querySelectorAll('.array-auto-compact-tag').length).toBe(0);
92
+
93
+ // Confirm button should be disabled when input is empty
94
+ const confirmBtn = document.querySelector('.array-auto-compact-confirm') as HTMLButtonElement;
95
+ await expect(confirmBtn).toBeInTheDocument();
96
+ await expect(confirmBtn).toBeDisabled();
97
+ },
98
+ };
99
+
100
+ export const CompactWithValues: Story = {
101
+ args: {
102
+ type: 'string',
103
+ value: ['hello', 'world'],
104
+ },
105
+ async play({ canvasElement }) {
106
+ const canvas = within(canvasElement);
107
+
108
+ // Should show 2 tags
109
+ await waitFor(
110
+ () => expect(document.querySelectorAll('.array-auto-compact-tag').length).toBe(2),
111
+ { timeout: 5000 }
112
+ );
113
+
114
+ // Tags should display the values
115
+ await expect(canvas.getByText('hello')).toBeInTheDocument();
116
+ await expect(canvas.getByText('world')).toBeInTheDocument();
117
+ },
118
+ };
119
+
120
+ export const CompactAddItem: Story = {
121
+ args: {
122
+ type: 'string',
123
+ value: ['existing'],
124
+ },
125
+ async play({ args }) {
126
+ await waitFor(
127
+ () => expect(document.querySelectorAll('.array-auto-compact-tag').length).toBe(1),
128
+ { timeout: 5000 }
129
+ );
130
+
131
+ // Type a value into the input
132
+ const input = document.querySelector('.array-auto-compact .reqore-input') as HTMLInputElement;
133
+ await fireEvent.change(input, { target: { value: 'new item' } });
134
+
135
+ // Click confirm
136
+ const confirmBtn = document.querySelector('.array-auto-compact-confirm') as HTMLButtonElement;
137
+ await waitFor(() => expect(confirmBtn).not.toBeDisabled());
138
+ await fireEvent.click(confirmBtn);
139
+
140
+ // Should now have 2 tags
141
+ await waitFor(
142
+ () => expect(document.querySelectorAll('.array-auto-compact-tag').length).toBe(2),
143
+ { timeout: 5000 }
144
+ );
145
+
146
+ // onChange should have been called with both values
147
+ await waitFor(() => {
148
+ const calls = (args.onChange as ReturnType<typeof fn>).mock.calls;
149
+ const lastCall = calls[calls.length - 1];
150
+ expect(lastCall[1]).toEqual(['existing', 'new item']);
151
+ });
152
+ },
153
+ };
154
+
155
+ export const CompactEditItem: Story = {
156
+ args: {
157
+ type: 'string',
158
+ value: ['alpha', 'beta'],
159
+ },
160
+ async play({ args }) {
161
+ await waitFor(
162
+ () => expect(document.querySelectorAll('.array-auto-compact-tag').length).toBe(2),
163
+ { timeout: 5000 }
164
+ );
165
+
166
+ // Click edit on the first tag
167
+ const editBtns = document.querySelectorAll('.array-auto-compact-edit');
168
+ await fireEvent.click(editBtns[0]);
169
+
170
+ // The input should be populated with the tag's value
171
+ const input = document.querySelector('.array-auto-compact .reqore-input') as HTMLInputElement;
172
+ await waitFor(() => expect(input.value).toBe('alpha'));
173
+
174
+ // Change the value
175
+ await fireEvent.change(input, { target: { value: 'alpha-edited' } });
176
+
177
+ // Click confirm (should show check icon in edit mode)
178
+ const confirmBtn = document.querySelector('.array-auto-compact-confirm') as HTMLButtonElement;
179
+ await waitFor(() => expect(confirmBtn).not.toBeDisabled());
180
+ await fireEvent.click(confirmBtn);
181
+
182
+ // Should still have 2 tags, first one updated
183
+ await waitFor(
184
+ () => expect(document.querySelectorAll('.array-auto-compact-tag').length).toBe(2),
185
+ { timeout: 5000 }
186
+ );
187
+
188
+ // onChange should have been called with updated values
189
+ await waitFor(() => {
190
+ const calls = (args.onChange as ReturnType<typeof fn>).mock.calls;
191
+ const lastCall = calls[calls.length - 1];
192
+ expect(lastCall[1]).toEqual(['alpha-edited', 'beta']);
193
+ });
194
+ },
195
+ };
196
+
197
+ export const CompactRemoveItem: Story = {
198
+ args: {
199
+ type: 'string',
200
+ value: ['one', 'two', 'three'],
201
+ },
202
+ async play({ args }) {
203
+ await waitFor(
204
+ () => expect(document.querySelectorAll('.array-auto-compact-tag').length).toBe(3),
205
+ { timeout: 5000 }
206
+ );
207
+
208
+ // Click remove on the second tag ("two")
209
+ const removeBtns = document.querySelectorAll('.array-auto-compact-remove');
210
+ await fireEvent.click(removeBtns[1]);
211
+
212
+ // Should now have 2 tags
213
+ await waitFor(
214
+ () => expect(document.querySelectorAll('.array-auto-compact-tag').length).toBe(2),
215
+ { timeout: 5000 }
216
+ );
217
+
218
+ // onChange should have been called without "two"
219
+ await waitFor(() => {
220
+ const calls = (args.onChange as ReturnType<typeof fn>).mock.calls;
221
+ const lastCall = calls[calls.length - 1];
222
+ expect(lastCall[1]).toEqual(['one', 'three']);
223
+ });
224
+ },
225
+ };
226
+
227
+ export const CompactWithNumbers: Story = {
228
+ args: {
229
+ type: 'int',
230
+ value: [10, 20, 30],
231
+ renderItem: numberRenderItem,
232
+ },
233
+ async play() {
234
+ await waitFor(
235
+ () => expect(document.querySelectorAll('.array-auto-compact-tag').length).toBe(3),
236
+ { timeout: 5000 }
237
+ );
238
+ },
239
+ };
240
+
241
+ export const CompactDisabled: Story = {
242
+ args: {
243
+ type: 'string',
244
+ value: ['locked'],
245
+ disabled: true,
246
+ },
247
+ async play() {
248
+ await waitFor(
249
+ () => expect(document.querySelectorAll('.array-auto-compact-tag').length).toBe(1),
250
+ { timeout: 5000 }
251
+ );
252
+
253
+ // Should not have edit/remove actions
254
+ await expect(document.querySelectorAll('.array-auto-compact-edit').length).toBe(0);
255
+ await expect(document.querySelectorAll('.array-auto-compact-remove').length).toBe(0);
256
+
257
+ // Should not have confirm button
258
+ await expect(document.querySelector('.array-auto-compact-confirm')).not.toBeInTheDocument();
259
+ },
260
+ };
261
+
262
+ // ─── Complex mode stories (hash/list) ────────────────────────────────────────
263
+
264
+ export const ComplexHashItems: Story = {
265
+ args: {
266
+ type: 'hash',
267
+ value: [{ key: 'value' }],
268
+ display_name: 'Hash Items',
269
+ },
270
+ async play() {
271
+ // Should render panel-based UI, not compact tags
272
+ await waitFor(() => expect(document.querySelectorAll('.array-auto-item').length).toBe(1), {
273
+ timeout: 5000,
274
+ });
275
+ await expect(document.querySelectorAll('.array-auto-compact-tag').length).toBe(0);
276
+ },
277
+ };