@zag-js/pin-input 0.2.3 → 0.2.5

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/index.d.ts CHANGED
@@ -2,16 +2,866 @@ import { RequiredBy, DirectionProperty, CommonProperties, Context, PropTypes, No
2
2
  import * as _zag_js_core from '@zag-js/core';
3
3
  import { StateMachine } from '@zag-js/core';
4
4
 
5
- declare type IntlTranslations = {
5
+ declare const anatomy: Omit<{
6
+ parts: <U extends string>(...parts: U[]) => Omit<{
7
+ parts: any;
8
+ extendWith: <V extends string>(...parts: V[]) => Omit<{
9
+ parts: any;
10
+ extendWith: <V_1 extends string>(...parts: V_1[]) => Omit<{
11
+ parts: any;
12
+ extendWith: <V_2 extends string>(...parts: V_2[]) => Omit<{
13
+ parts: any;
14
+ extendWith: <V_3 extends string>(...parts: V_3[]) => Omit<{
15
+ parts: any;
16
+ extendWith: <V_4 extends string>(...parts: V_4[]) => Omit<{
17
+ parts: any;
18
+ extendWith: <V_5 extends string>(...parts: V_5[]) => Omit<{
19
+ parts: any;
20
+ extendWith: <V_6 extends string>(...parts: V_6[]) => Omit<{
21
+ parts: any;
22
+ extendWith: <V_7 extends string>(...parts: V_7[]) => Omit<{
23
+ parts: any;
24
+ extendWith: <V_8 extends string>(...parts: V_8[]) => Omit<{
25
+ parts: any;
26
+ extendWith: <V_9 extends string>(...parts: V_9[]) => Omit<any, "parts">;
27
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7 | V_8, {
28
+ selector: string;
29
+ attrs: Record<"data-scope" | "data-part", string>;
30
+ }>;
31
+ }, "parts">;
32
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7, {
33
+ selector: string;
34
+ attrs: Record<"data-scope" | "data-part", string>;
35
+ }>;
36
+ }, "parts">;
37
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6, {
38
+ selector: string;
39
+ attrs: Record<"data-scope" | "data-part", string>;
40
+ }>;
41
+ }, "parts">;
42
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5, {
43
+ selector: string;
44
+ attrs: Record<"data-scope" | "data-part", string>;
45
+ }>;
46
+ }, "parts">;
47
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4, {
48
+ selector: string;
49
+ attrs: Record<"data-scope" | "data-part", string>;
50
+ }>;
51
+ }, "parts">;
52
+ build: () => Record<U | V | V_1 | V_2 | V_3, {
53
+ selector: string;
54
+ attrs: Record<"data-scope" | "data-part", string>;
55
+ }>;
56
+ }, "parts">;
57
+ build: () => Record<U | V | V_1 | V_2, {
58
+ selector: string;
59
+ attrs: Record<"data-scope" | "data-part", string>;
60
+ }>;
61
+ }, "parts">;
62
+ build: () => Record<U | V | V_1, {
63
+ selector: string;
64
+ attrs: Record<"data-scope" | "data-part", string>;
65
+ }>;
66
+ }, "parts">;
67
+ build: () => Record<U | V, {
68
+ selector: string;
69
+ attrs: Record<"data-scope" | "data-part", string>;
70
+ }>;
71
+ }, "parts">;
72
+ build: () => Record<U, {
73
+ selector: string;
74
+ attrs: Record<"data-scope" | "data-part", string>;
75
+ }>;
76
+ }, "parts">;
77
+ extendWith: <V_10 extends string>(...parts: V_10[]) => Omit<{
78
+ parts: <U extends string>(...parts: U[]) => Omit<{
79
+ parts: any;
80
+ extendWith: <V extends string>(...parts: V[]) => Omit<{
81
+ parts: any;
82
+ extendWith: <V_1 extends string>(...parts: V_1[]) => Omit<{
83
+ parts: any;
84
+ extendWith: <V_2 extends string>(...parts: V_2[]) => Omit<{
85
+ parts: any;
86
+ extendWith: <V_3 extends string>(...parts: V_3[]) => Omit<{
87
+ parts: any;
88
+ extendWith: <V_4 extends string>(...parts: V_4[]) => Omit<{
89
+ parts: any;
90
+ extendWith: <V_5 extends string>(...parts: V_5[]) => Omit<{
91
+ parts: any;
92
+ extendWith: <V_6 extends string>(...parts: V_6[]) => Omit<{
93
+ parts: any;
94
+ extendWith: <V_7 extends string>(...parts: V_7[]) => Omit<{
95
+ parts: any;
96
+ extendWith: <V_8 extends string>(...parts: V_8[]) => Omit<{
97
+ parts: any;
98
+ extendWith: <V_9 extends string>(...parts: V_9[]) => Omit<any, "parts">;
99
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7 | V_8, {
100
+ selector: string;
101
+ attrs: Record<"data-scope" | "data-part", string>;
102
+ }>;
103
+ }, "parts">;
104
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7, {
105
+ selector: string;
106
+ attrs: Record<"data-scope" | "data-part", string>;
107
+ }>;
108
+ }, "parts">;
109
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6, {
110
+ selector: string;
111
+ attrs: Record<"data-scope" | "data-part", string>;
112
+ }>;
113
+ }, "parts">;
114
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5, {
115
+ selector: string;
116
+ attrs: Record<"data-scope" | "data-part", string>;
117
+ }>;
118
+ }, "parts">;
119
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4, {
120
+ selector: string;
121
+ attrs: Record<"data-scope" | "data-part", string>;
122
+ }>;
123
+ }, "parts">;
124
+ build: () => Record<U | V | V_1 | V_2 | V_3, {
125
+ selector: string;
126
+ attrs: Record<"data-scope" | "data-part", string>;
127
+ }>;
128
+ }, "parts">;
129
+ build: () => Record<U | V | V_1 | V_2, {
130
+ selector: string;
131
+ attrs: Record<"data-scope" | "data-part", string>;
132
+ }>;
133
+ }, "parts">;
134
+ build: () => Record<U | V | V_1, {
135
+ selector: string;
136
+ attrs: Record<"data-scope" | "data-part", string>;
137
+ }>;
138
+ }, "parts">;
139
+ build: () => Record<U | V, {
140
+ selector: string;
141
+ attrs: Record<"data-scope" | "data-part", string>;
142
+ }>;
143
+ }, "parts">;
144
+ build: () => Record<U, {
145
+ selector: string;
146
+ attrs: Record<"data-scope" | "data-part", string>;
147
+ }>;
148
+ }, "parts">;
149
+ extendWith: <V_11 extends string>(...parts: V_11[]) => Omit<{
150
+ parts: <U extends string>(...parts: U[]) => Omit<{
151
+ parts: any;
152
+ extendWith: <V extends string>(...parts: V[]) => Omit<{
153
+ parts: any;
154
+ extendWith: <V_1 extends string>(...parts: V_1[]) => Omit<{
155
+ parts: any;
156
+ extendWith: <V_2 extends string>(...parts: V_2[]) => Omit<{
157
+ parts: any;
158
+ extendWith: <V_3 extends string>(...parts: V_3[]) => Omit<{
159
+ parts: any;
160
+ extendWith: <V_4 extends string>(...parts: V_4[]) => Omit<{
161
+ parts: any;
162
+ extendWith: <V_5 extends string>(...parts: V_5[]) => Omit<{
163
+ parts: any;
164
+ extendWith: <V_6 extends string>(...parts: V_6[]) => Omit<{
165
+ parts: any;
166
+ extendWith: <V_7 extends string>(...parts: V_7[]) => Omit<{
167
+ parts: any;
168
+ extendWith: <V_8 extends string>(...parts: V_8[]) => Omit<{
169
+ parts: any;
170
+ extendWith: <V_9 extends string>(...parts: V_9[]) => Omit<any, "parts">;
171
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7 | V_8, {
172
+ selector: string;
173
+ attrs: Record<"data-scope" | "data-part", string>;
174
+ }>;
175
+ }, "parts">;
176
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7, {
177
+ selector: string;
178
+ attrs: Record<"data-scope" | "data-part", string>;
179
+ }>;
180
+ }, "parts">;
181
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6, {
182
+ selector: string;
183
+ attrs: Record<"data-scope" | "data-part", string>;
184
+ }>;
185
+ }, "parts">;
186
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5, {
187
+ selector: string;
188
+ attrs: Record<"data-scope" | "data-part", string>;
189
+ }>;
190
+ }, "parts">;
191
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4, {
192
+ selector: string;
193
+ attrs: Record<"data-scope" | "data-part", string>;
194
+ }>;
195
+ }, "parts">;
196
+ build: () => Record<U | V | V_1 | V_2 | V_3, {
197
+ selector: string;
198
+ attrs: Record<"data-scope" | "data-part", string>;
199
+ }>;
200
+ }, "parts">;
201
+ build: () => Record<U | V | V_1 | V_2, {
202
+ selector: string;
203
+ attrs: Record<"data-scope" | "data-part", string>;
204
+ }>;
205
+ }, "parts">;
206
+ build: () => Record<U | V | V_1, {
207
+ selector: string;
208
+ attrs: Record<"data-scope" | "data-part", string>;
209
+ }>;
210
+ }, "parts">;
211
+ build: () => Record<U | V, {
212
+ selector: string;
213
+ attrs: Record<"data-scope" | "data-part", string>;
214
+ }>;
215
+ }, "parts">;
216
+ build: () => Record<U, {
217
+ selector: string;
218
+ attrs: Record<"data-scope" | "data-part", string>;
219
+ }>;
220
+ }, "parts">;
221
+ extendWith: <V_12 extends string>(...parts: V_12[]) => Omit<{
222
+ parts: <U extends string>(...parts: U[]) => Omit<{
223
+ parts: any;
224
+ extendWith: <V extends string>(...parts: V[]) => Omit<{
225
+ parts: any;
226
+ extendWith: <V_1 extends string>(...parts: V_1[]) => Omit<{
227
+ parts: any;
228
+ extendWith: <V_2 extends string>(...parts: V_2[]) => Omit<{
229
+ parts: any;
230
+ extendWith: <V_3 extends string>(...parts: V_3[]) => Omit<{
231
+ parts: any;
232
+ extendWith: <V_4 extends string>(...parts: V_4[]) => Omit<{
233
+ parts: any;
234
+ extendWith: <V_5 extends string>(...parts: V_5[]) => Omit<{
235
+ parts: any;
236
+ extendWith: <V_6 extends string>(...parts: V_6[]) => Omit<{
237
+ parts: any;
238
+ extendWith: <V_7 extends string>(...parts: V_7[]) => Omit<{
239
+ parts: any;
240
+ extendWith: <V_8 extends string>(...parts: V_8[]) => Omit<{
241
+ parts: any;
242
+ extendWith: <V_9 extends string>(...parts: V_9[]) => Omit<any, "parts">;
243
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7 | V_8, {
244
+ selector: string;
245
+ attrs: Record<"data-scope" | "data-part", string>;
246
+ }>;
247
+ }, "parts">;
248
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7, {
249
+ selector: string;
250
+ attrs: Record<"data-scope" | "data-part", string>;
251
+ }>;
252
+ }, "parts">;
253
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6, {
254
+ selector: string;
255
+ attrs: Record<"data-scope" | "data-part", string>;
256
+ }>;
257
+ }, "parts">;
258
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5, {
259
+ selector: string;
260
+ attrs: Record<"data-scope" | "data-part", string>;
261
+ }>;
262
+ }, "parts">;
263
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4, {
264
+ selector: string;
265
+ attrs: Record<"data-scope" | "data-part", string>;
266
+ }>;
267
+ }, "parts">;
268
+ build: () => Record<U | V | V_1 | V_2 | V_3, {
269
+ selector: string;
270
+ attrs: Record<"data-scope" | "data-part", string>;
271
+ }>;
272
+ }, "parts">;
273
+ build: () => Record<U | V | V_1 | V_2, {
274
+ selector: string;
275
+ attrs: Record<"data-scope" | "data-part", string>;
276
+ }>;
277
+ }, "parts">;
278
+ build: () => Record<U | V | V_1, {
279
+ selector: string;
280
+ attrs: Record<"data-scope" | "data-part", string>;
281
+ }>;
282
+ }, "parts">;
283
+ build: () => Record<U | V, {
284
+ selector: string;
285
+ attrs: Record<"data-scope" | "data-part", string>;
286
+ }>;
287
+ }, "parts">;
288
+ build: () => Record<U, {
289
+ selector: string;
290
+ attrs: Record<"data-scope" | "data-part", string>;
291
+ }>;
292
+ }, "parts">;
293
+ extendWith: <V_13 extends string>(...parts: V_13[]) => Omit<{
294
+ parts: <U extends string>(...parts: U[]) => Omit<{
295
+ parts: any;
296
+ extendWith: <V extends string>(...parts: V[]) => Omit<{
297
+ parts: any;
298
+ extendWith: <V_1 extends string>(...parts: V_1[]) => Omit<{
299
+ parts: any;
300
+ extendWith: <V_2 extends string>(...parts: V_2[]) => Omit<{
301
+ parts: any;
302
+ extendWith: <V_3 extends string>(...parts: V_3[]) => Omit<{
303
+ parts: any;
304
+ extendWith: <V_4 extends string>(...parts: V_4[]) => Omit<{
305
+ parts: any;
306
+ extendWith: <V_5 extends string>(...parts: V_5[]) => Omit<{
307
+ parts: any;
308
+ extendWith: <V_6 extends string>(...parts: V_6[]) => Omit<{
309
+ parts: any;
310
+ extendWith: <V_7 extends string>(...parts: V_7[]) => Omit<{
311
+ parts: any;
312
+ extendWith: <V_8 extends string>(...parts: V_8[]) => Omit<{
313
+ parts: any;
314
+ extendWith: <V_9 extends string>(...parts: V_9[]) => Omit<any, "parts">;
315
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7 | V_8, {
316
+ selector: string;
317
+ attrs: Record<"data-scope" | "data-part", string>;
318
+ }>;
319
+ }, "parts">;
320
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7, {
321
+ selector: string;
322
+ attrs: Record<"data-scope" | "data-part", string>;
323
+ }>;
324
+ }, "parts">;
325
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6, {
326
+ selector: string;
327
+ attrs: Record<"data-scope" | "data-part", string>;
328
+ }>;
329
+ }, "parts">;
330
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5, {
331
+ selector: string;
332
+ attrs: Record<"data-scope" | "data-part", string>;
333
+ }>;
334
+ }, "parts">;
335
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4, {
336
+ selector: string;
337
+ attrs: Record<"data-scope" | "data-part", string>;
338
+ }>;
339
+ }, "parts">;
340
+ build: () => Record<U | V | V_1 | V_2 | V_3, {
341
+ selector: string;
342
+ attrs: Record<"data-scope" | "data-part", string>;
343
+ }>;
344
+ }, "parts">;
345
+ build: () => Record<U | V | V_1 | V_2, {
346
+ selector: string;
347
+ attrs: Record<"data-scope" | "data-part", string>;
348
+ }>;
349
+ }, "parts">;
350
+ build: () => Record<U | V | V_1, {
351
+ selector: string;
352
+ attrs: Record<"data-scope" | "data-part", string>;
353
+ }>;
354
+ }, "parts">;
355
+ build: () => Record<U | V, {
356
+ selector: string;
357
+ attrs: Record<"data-scope" | "data-part", string>;
358
+ }>;
359
+ }, "parts">;
360
+ build: () => Record<U, {
361
+ selector: string;
362
+ attrs: Record<"data-scope" | "data-part", string>;
363
+ }>;
364
+ }, "parts">;
365
+ extendWith: <V_14 extends string>(...parts: V_14[]) => Omit<{
366
+ parts: <U extends string>(...parts: U[]) => Omit<{
367
+ parts: any;
368
+ extendWith: <V extends string>(...parts: V[]) => Omit<{
369
+ parts: any;
370
+ extendWith: <V_1 extends string>(...parts: V_1[]) => Omit<{
371
+ parts: any;
372
+ extendWith: <V_2 extends string>(...parts: V_2[]) => Omit<{
373
+ parts: any;
374
+ extendWith: <V_3 extends string>(...parts: V_3[]) => Omit<{
375
+ parts: any;
376
+ extendWith: <V_4 extends string>(...parts: V_4[]) => Omit<{
377
+ parts: any;
378
+ extendWith: <V_5 extends string>(...parts: V_5[]) => Omit<{
379
+ parts: any;
380
+ extendWith: <V_6 extends string>(...parts: V_6[]) => Omit<{
381
+ parts: any;
382
+ extendWith: <V_7 extends string>(...parts: V_7[]) => Omit<{
383
+ parts: any;
384
+ extendWith: <V_8 extends string>(...parts: V_8[]) => Omit<{
385
+ parts: any;
386
+ extendWith: <V_9 extends string>(...parts: V_9[]) => Omit<any, "parts">;
387
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7 | V_8, {
388
+ selector: string;
389
+ attrs: Record<"data-scope" | "data-part", string>;
390
+ }>;
391
+ }, "parts">;
392
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7, {
393
+ selector: string;
394
+ attrs: Record<"data-scope" | "data-part", string>;
395
+ }>;
396
+ }, "parts">;
397
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6, {
398
+ selector: string;
399
+ attrs: Record<"data-scope" | "data-part", string>;
400
+ }>;
401
+ }, "parts">;
402
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5, {
403
+ selector: string;
404
+ attrs: Record<"data-scope" | "data-part", string>;
405
+ }>;
406
+ }, "parts">;
407
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4, {
408
+ selector: string;
409
+ attrs: Record<"data-scope" | "data-part", string>;
410
+ }>;
411
+ }, "parts">;
412
+ build: () => Record<U | V | V_1 | V_2 | V_3, {
413
+ selector: string;
414
+ attrs: Record<"data-scope" | "data-part", string>;
415
+ }>;
416
+ }, "parts">;
417
+ build: () => Record<U | V | V_1 | V_2, {
418
+ selector: string;
419
+ attrs: Record<"data-scope" | "data-part", string>;
420
+ }>;
421
+ }, "parts">;
422
+ build: () => Record<U | V | V_1, {
423
+ selector: string;
424
+ attrs: Record<"data-scope" | "data-part", string>;
425
+ }>;
426
+ }, "parts">;
427
+ build: () => Record<U | V, {
428
+ selector: string;
429
+ attrs: Record<"data-scope" | "data-part", string>;
430
+ }>;
431
+ }, "parts">;
432
+ build: () => Record<U, {
433
+ selector: string;
434
+ attrs: Record<"data-scope" | "data-part", string>;
435
+ }>;
436
+ }, "parts">;
437
+ extendWith: <V_15 extends string>(...parts: V_15[]) => Omit<{
438
+ parts: <U extends string>(...parts: U[]) => Omit<{
439
+ parts: any;
440
+ extendWith: <V extends string>(...parts: V[]) => Omit<{
441
+ parts: any;
442
+ extendWith: <V_1 extends string>(...parts: V_1[]) => Omit<{
443
+ parts: any;
444
+ extendWith: <V_2 extends string>(...parts: V_2[]) => Omit<{
445
+ parts: any;
446
+ extendWith: <V_3 extends string>(...parts: V_3[]) => Omit<{
447
+ parts: any;
448
+ extendWith: <V_4 extends string>(...parts: V_4[]) => Omit<{
449
+ parts: any;
450
+ extendWith: <V_5 extends string>(...parts: V_5[]) => Omit<{
451
+ parts: any;
452
+ extendWith: <V_6 extends string>(...parts: V_6[]) => Omit<{
453
+ parts: any;
454
+ extendWith: <V_7 extends string>(...parts: V_7[]) => Omit<{
455
+ parts: any;
456
+ extendWith: <V_8 extends string>(...parts: V_8[]) => Omit<{
457
+ parts: any;
458
+ extendWith: <V_9 extends string>(...parts: V_9[]) => Omit<any, "parts">;
459
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7 | V_8, {
460
+ selector: string;
461
+ attrs: Record<"data-scope" | "data-part", string>;
462
+ }>;
463
+ }, "parts">;
464
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7, {
465
+ selector: string;
466
+ attrs: Record<"data-scope" | "data-part", string>;
467
+ }>;
468
+ }, "parts">;
469
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6, {
470
+ selector: string;
471
+ attrs: Record<"data-scope" | "data-part", string>;
472
+ }>;
473
+ }, "parts">;
474
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5, {
475
+ selector: string;
476
+ attrs: Record<"data-scope" | "data-part", string>;
477
+ }>;
478
+ }, "parts">;
479
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4, {
480
+ selector: string;
481
+ attrs: Record<"data-scope" | "data-part", string>;
482
+ }>;
483
+ }, "parts">;
484
+ build: () => Record<U | V | V_1 | V_2 | V_3, {
485
+ selector: string;
486
+ attrs: Record<"data-scope" | "data-part", string>;
487
+ }>;
488
+ }, "parts">;
489
+ build: () => Record<U | V | V_1 | V_2, {
490
+ selector: string;
491
+ attrs: Record<"data-scope" | "data-part", string>;
492
+ }>;
493
+ }, "parts">;
494
+ build: () => Record<U | V | V_1, {
495
+ selector: string;
496
+ attrs: Record<"data-scope" | "data-part", string>;
497
+ }>;
498
+ }, "parts">;
499
+ build: () => Record<U | V, {
500
+ selector: string;
501
+ attrs: Record<"data-scope" | "data-part", string>;
502
+ }>;
503
+ }, "parts">;
504
+ build: () => Record<U, {
505
+ selector: string;
506
+ attrs: Record<"data-scope" | "data-part", string>;
507
+ }>;
508
+ }, "parts">;
509
+ extendWith: <V_16 extends string>(...parts: V_16[]) => Omit<{
510
+ parts: <U extends string>(...parts: U[]) => Omit<{
511
+ parts: any;
512
+ extendWith: <V extends string>(...parts: V[]) => Omit<{
513
+ parts: any;
514
+ extendWith: <V_1 extends string>(...parts: V_1[]) => Omit<{
515
+ parts: any;
516
+ extendWith: <V_2 extends string>(...parts: V_2[]) => Omit<{
517
+ parts: any;
518
+ extendWith: <V_3 extends string>(...parts: V_3[]) => Omit<{
519
+ parts: any;
520
+ extendWith: <V_4 extends string>(...parts: V_4[]) => Omit<{
521
+ parts: any;
522
+ extendWith: <V_5 extends string>(...parts: V_5[]) => Omit<{
523
+ parts: any;
524
+ extendWith: <V_6 extends string>(...parts: V_6[]) => Omit<{
525
+ parts: any;
526
+ extendWith: <V_7 extends string>(...parts: V_7[]) => Omit<{
527
+ parts: any;
528
+ extendWith: <V_8 extends string>(...parts: V_8[]) => Omit<{
529
+ parts: any;
530
+ extendWith: <V_9 extends string>(...parts: V_9[]) => Omit<any, "parts">;
531
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7 | V_8, {
532
+ selector: string;
533
+ attrs: Record<"data-scope" | "data-part", string>;
534
+ }>;
535
+ }, "parts">;
536
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7, {
537
+ selector: string;
538
+ attrs: Record<"data-scope" | "data-part", string>;
539
+ }>;
540
+ }, "parts">;
541
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6, {
542
+ selector: string;
543
+ attrs: Record<"data-scope" | "data-part", string>;
544
+ }>;
545
+ }, "parts">;
546
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5, {
547
+ selector: string;
548
+ attrs: Record<"data-scope" | "data-part", string>;
549
+ }>;
550
+ }, "parts">;
551
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4, {
552
+ selector: string;
553
+ attrs: Record<"data-scope" | "data-part", string>;
554
+ }>;
555
+ }, "parts">;
556
+ build: () => Record<U | V | V_1 | V_2 | V_3, {
557
+ selector: string;
558
+ attrs: Record<"data-scope" | "data-part", string>;
559
+ }>;
560
+ }, "parts">;
561
+ build: () => Record<U | V | V_1 | V_2, {
562
+ selector: string;
563
+ attrs: Record<"data-scope" | "data-part", string>;
564
+ }>;
565
+ }, "parts">;
566
+ build: () => Record<U | V | V_1, {
567
+ selector: string;
568
+ attrs: Record<"data-scope" | "data-part", string>;
569
+ }>;
570
+ }, "parts">;
571
+ build: () => Record<U | V, {
572
+ selector: string;
573
+ attrs: Record<"data-scope" | "data-part", string>;
574
+ }>;
575
+ }, "parts">;
576
+ build: () => Record<U, {
577
+ selector: string;
578
+ attrs: Record<"data-scope" | "data-part", string>;
579
+ }>;
580
+ }, "parts">;
581
+ extendWith: <V_17 extends string>(...parts: V_17[]) => Omit<{
582
+ parts: <U extends string>(...parts: U[]) => Omit<{
583
+ parts: any;
584
+ extendWith: <V extends string>(...parts: V[]) => Omit<{
585
+ parts: any;
586
+ extendWith: <V_1 extends string>(...parts: V_1[]) => Omit<{
587
+ parts: any;
588
+ extendWith: <V_2 extends string>(...parts: V_2[]) => Omit<{
589
+ parts: any;
590
+ extendWith: <V_3 extends string>(...parts: V_3[]) => Omit<{
591
+ parts: any;
592
+ extendWith: <V_4 extends string>(...parts: V_4[]) => Omit<{
593
+ parts: any;
594
+ extendWith: <V_5 extends string>(...parts: V_5[]) => Omit<{
595
+ parts: any;
596
+ extendWith: <V_6 extends string>(...parts: V_6[]) => Omit<{
597
+ parts: any;
598
+ extendWith: <V_7 extends string>(...parts: V_7[]) => Omit<{
599
+ parts: any;
600
+ extendWith: <V_8 extends string>(...parts: V_8[]) => Omit<{
601
+ parts: any;
602
+ extendWith: <V_9 extends string>(...parts: V_9[]) => Omit<any, "parts">;
603
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7 | V_8, {
604
+ selector: string;
605
+ attrs: Record<"data-scope" | "data-part", string>;
606
+ }>;
607
+ }, "parts">;
608
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7, {
609
+ selector: string;
610
+ attrs: Record<"data-scope" | "data-part", string>;
611
+ }>;
612
+ }, "parts">;
613
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6, {
614
+ selector: string;
615
+ attrs: Record<"data-scope" | "data-part", string>;
616
+ }>;
617
+ }, "parts">;
618
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5, {
619
+ selector: string;
620
+ attrs: Record<"data-scope" | "data-part", string>;
621
+ }>;
622
+ }, "parts">;
623
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4, {
624
+ selector: string;
625
+ attrs: Record<"data-scope" | "data-part", string>;
626
+ }>;
627
+ }, "parts">;
628
+ build: () => Record<U | V | V_1 | V_2 | V_3, {
629
+ selector: string;
630
+ attrs: Record<"data-scope" | "data-part", string>;
631
+ }>;
632
+ }, "parts">;
633
+ build: () => Record<U | V | V_1 | V_2, {
634
+ selector: string;
635
+ attrs: Record<"data-scope" | "data-part", string>;
636
+ }>;
637
+ }, "parts">;
638
+ build: () => Record<U | V | V_1, {
639
+ selector: string;
640
+ attrs: Record<"data-scope" | "data-part", string>;
641
+ }>;
642
+ }, "parts">;
643
+ build: () => Record<U | V, {
644
+ selector: string;
645
+ attrs: Record<"data-scope" | "data-part", string>;
646
+ }>;
647
+ }, "parts">;
648
+ build: () => Record<U, {
649
+ selector: string;
650
+ attrs: Record<"data-scope" | "data-part", string>;
651
+ }>;
652
+ }, "parts">;
653
+ extendWith: <V_18 extends string>(...parts: V_18[]) => Omit<{
654
+ parts: <U extends string>(...parts: U[]) => Omit<{
655
+ parts: any;
656
+ extendWith: <V extends string>(...parts: V[]) => Omit<{
657
+ parts: any;
658
+ extendWith: <V_1 extends string>(...parts: V_1[]) => Omit<{
659
+ parts: any;
660
+ extendWith: <V_2 extends string>(...parts: V_2[]) => Omit<{
661
+ parts: any;
662
+ extendWith: <V_3 extends string>(...parts: V_3[]) => Omit<{
663
+ parts: any;
664
+ extendWith: <V_4 extends string>(...parts: V_4[]) => Omit<{
665
+ parts: any;
666
+ extendWith: <V_5 extends string>(...parts: V_5[]) => Omit<{
667
+ parts: any;
668
+ extendWith: <V_6 extends string>(...parts: V_6[]) => Omit<{
669
+ parts: any;
670
+ extendWith: <V_7 extends string>(...parts: V_7[]) => Omit<{
671
+ parts: any;
672
+ extendWith: <V_8 extends string>(...parts: V_8[]) => Omit<{
673
+ parts: any;
674
+ extendWith: <V_9 extends string>(...parts: V_9[]) => Omit<any, "parts">;
675
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7 | V_8, {
676
+ selector: string;
677
+ attrs: Record<"data-scope" | "data-part", string>;
678
+ }>;
679
+ }, "parts">;
680
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7, {
681
+ selector: string;
682
+ attrs: Record<"data-scope" | "data-part", string>;
683
+ }>;
684
+ }, "parts">;
685
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6, {
686
+ selector: string;
687
+ attrs: Record<"data-scope" | "data-part", string>;
688
+ }>;
689
+ }, "parts">;
690
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5, {
691
+ selector: string;
692
+ attrs: Record<"data-scope" | "data-part", string>;
693
+ }>;
694
+ }, "parts">;
695
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4, {
696
+ selector: string;
697
+ attrs: Record<"data-scope" | "data-part", string>;
698
+ }>;
699
+ }, "parts">;
700
+ build: () => Record<U | V | V_1 | V_2 | V_3, {
701
+ selector: string;
702
+ attrs: Record<"data-scope" | "data-part", string>;
703
+ }>;
704
+ }, "parts">;
705
+ build: () => Record<U | V | V_1 | V_2, {
706
+ selector: string;
707
+ attrs: Record<"data-scope" | "data-part", string>;
708
+ }>;
709
+ }, "parts">;
710
+ build: () => Record<U | V | V_1, {
711
+ selector: string;
712
+ attrs: Record<"data-scope" | "data-part", string>;
713
+ }>;
714
+ }, "parts">;
715
+ build: () => Record<U | V, {
716
+ selector: string;
717
+ attrs: Record<"data-scope" | "data-part", string>;
718
+ }>;
719
+ }, "parts">;
720
+ build: () => Record<U, {
721
+ selector: string;
722
+ attrs: Record<"data-scope" | "data-part", string>;
723
+ }>;
724
+ }, "parts">;
725
+ extendWith: <V_19 extends string>(...parts: V_19[]) => Omit<{
726
+ parts: <U extends string>(...parts: U[]) => Omit<{
727
+ parts: any;
728
+ extendWith: <V extends string>(...parts: V[]) => Omit<{
729
+ parts: any;
730
+ extendWith: <V_1 extends string>(...parts: V_1[]) => Omit<{
731
+ parts: any;
732
+ extendWith: <V_2 extends string>(...parts: V_2[]) => Omit<{
733
+ parts: any;
734
+ extendWith: <V_3 extends string>(...parts: V_3[]) => Omit<{
735
+ parts: any;
736
+ extendWith: <V_4 extends string>(...parts: V_4[]) => Omit<{
737
+ parts: any;
738
+ extendWith: <V_5 extends string>(...parts: V_5[]) => Omit<{
739
+ parts: any;
740
+ extendWith: <V_6 extends string>(...parts: V_6[]) => Omit<{
741
+ parts: any;
742
+ extendWith: <V_7 extends string>(...parts: V_7[]) => Omit<{
743
+ parts: any;
744
+ extendWith: <V_8 extends string>(...parts: V_8[]) => Omit<{
745
+ parts: any;
746
+ extendWith: <V_9 extends string>(...parts: V_9[]) => Omit<any, "parts">;
747
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7 | V_8, {
748
+ selector: string;
749
+ attrs: Record<"data-scope" | "data-part", string>;
750
+ }>;
751
+ }, "parts">;
752
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6 | V_7, {
753
+ selector: string;
754
+ attrs: Record<"data-scope" | "data-part", string>;
755
+ }>;
756
+ }, "parts">;
757
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5 | V_6, {
758
+ selector: string;
759
+ attrs: Record<"data-scope" | "data-part", string>;
760
+ }>;
761
+ }, "parts">;
762
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4 | V_5, {
763
+ selector: string;
764
+ attrs: Record<"data-scope" | "data-part", string>;
765
+ }>;
766
+ }, "parts">;
767
+ build: () => Record<U | V | V_1 | V_2 | V_3 | V_4, {
768
+ selector: string;
769
+ attrs: Record<"data-scope" | "data-part", string>;
770
+ }>;
771
+ }, "parts">;
772
+ build: () => Record<U | V | V_1 | V_2 | V_3, {
773
+ selector: string;
774
+ attrs: Record<"data-scope" | "data-part", string>;
775
+ }>;
776
+ }, "parts">;
777
+ build: () => Record<U | V | V_1 | V_2, {
778
+ selector: string;
779
+ attrs: Record<"data-scope" | "data-part", string>;
780
+ }>;
781
+ }, "parts">;
782
+ build: () => Record<U | V | V_1, {
783
+ selector: string;
784
+ attrs: Record<"data-scope" | "data-part", string>;
785
+ }>;
786
+ }, "parts">;
787
+ build: () => Record<U | V, {
788
+ selector: string;
789
+ attrs: Record<"data-scope" | "data-part", string>;
790
+ }>;
791
+ }, "parts">;
792
+ build: () => Record<U, {
793
+ selector: string;
794
+ attrs: Record<"data-scope" | "data-part", string>;
795
+ }>;
796
+ }, "parts">;
797
+ extendWith: <V_20 extends string>(...parts: V_20[]) => Omit<any, "parts">;
798
+ build: () => Record<"root" | "label" | "hiddenInput" | "input" | "control" | V_10 | V_11 | V_12 | V_13 | V_14 | V_15 | V_16 | V_17 | V_18 | V_19, {
799
+ selector: string;
800
+ attrs: Record<"data-scope" | "data-part", string>;
801
+ }>;
802
+ }, "parts">;
803
+ build: () => Record<"root" | "label" | "hiddenInput" | "input" | "control" | V_10 | V_11 | V_12 | V_13 | V_14 | V_15 | V_16 | V_17 | V_18, {
804
+ selector: string;
805
+ attrs: Record<"data-scope" | "data-part", string>;
806
+ }>;
807
+ }, "parts">;
808
+ build: () => Record<"root" | "label" | "hiddenInput" | "input" | "control" | V_10 | V_11 | V_12 | V_13 | V_14 | V_15 | V_16 | V_17, {
809
+ selector: string;
810
+ attrs: Record<"data-scope" | "data-part", string>;
811
+ }>;
812
+ }, "parts">;
813
+ build: () => Record<"root" | "label" | "hiddenInput" | "input" | "control" | V_10 | V_11 | V_12 | V_13 | V_14 | V_15 | V_16, {
814
+ selector: string;
815
+ attrs: Record<"data-scope" | "data-part", string>;
816
+ }>;
817
+ }, "parts">;
818
+ build: () => Record<"root" | "label" | "hiddenInput" | "input" | "control" | V_10 | V_11 | V_12 | V_13 | V_14 | V_15, {
819
+ selector: string;
820
+ attrs: Record<"data-scope" | "data-part", string>;
821
+ }>;
822
+ }, "parts">;
823
+ build: () => Record<"root" | "label" | "hiddenInput" | "input" | "control" | V_10 | V_11 | V_12 | V_13 | V_14, {
824
+ selector: string;
825
+ attrs: Record<"data-scope" | "data-part", string>;
826
+ }>;
827
+ }, "parts">;
828
+ build: () => Record<"root" | "label" | "hiddenInput" | "input" | "control" | V_10 | V_11 | V_12 | V_13, {
829
+ selector: string;
830
+ attrs: Record<"data-scope" | "data-part", string>;
831
+ }>;
832
+ }, "parts">;
833
+ build: () => Record<"root" | "label" | "hiddenInput" | "input" | "control" | V_10 | V_11 | V_12, {
834
+ selector: string;
835
+ attrs: Record<"data-scope" | "data-part", string>;
836
+ }>;
837
+ }, "parts">;
838
+ build: () => Record<"root" | "label" | "hiddenInput" | "input" | "control" | V_10 | V_11, {
839
+ selector: string;
840
+ attrs: Record<"data-scope" | "data-part", string>;
841
+ }>;
842
+ }, "parts">;
843
+ build: () => Record<"root" | "label" | "hiddenInput" | "input" | "control" | V_10, {
844
+ selector: string;
845
+ attrs: Record<"data-scope" | "data-part", string>;
846
+ }>;
847
+ }, "parts">;
848
+ build: () => Record<"root" | "label" | "hiddenInput" | "input" | "control", {
849
+ selector: string;
850
+ attrs: Record<"data-scope" | "data-part", string>;
851
+ }>;
852
+ }, "parts">;
853
+
854
+ type IntlTranslations = {
6
855
  inputLabel: (index: number, length: number) => string;
7
856
  };
8
- declare type ElementIds = Partial<{
857
+ type ElementIds = Partial<{
9
858
  root: string;
10
859
  hiddenInput: string;
11
860
  label: string;
861
+ control: string;
12
862
  input(id: string): string;
13
863
  }>;
14
- declare type PublicContext = DirectionProperty & CommonProperties & {
864
+ type PublicContext = DirectionProperty & CommonProperties & {
15
865
  /**
16
866
  * The name of the input element. Useful for form submission.
17
867
  */
@@ -94,8 +944,8 @@ declare type PublicContext = DirectionProperty & CommonProperties & {
94
944
  */
95
945
  translations: IntlTranslations;
96
946
  };
97
- declare type UserDefinedContext = RequiredBy<PublicContext, "id">;
98
- declare type ComputedContext = Readonly<{
947
+ type UserDefinedContext = RequiredBy<PublicContext, "id">;
948
+ type ComputedContext = Readonly<{
99
949
  /**
100
950
  * @computed
101
951
  * The number of inputs
@@ -122,13 +972,13 @@ declare type ComputedContext = Readonly<{
122
972
  */
123
973
  focusedValue: string;
124
974
  }>;
125
- declare type PrivateContext = Context<{}>;
126
- declare type MachineContext = PublicContext & PrivateContext & ComputedContext;
127
- declare type MachineState = {
975
+ type PrivateContext = Context<{}>;
976
+ type MachineContext = PublicContext & PrivateContext & ComputedContext;
977
+ type MachineState = {
128
978
  value: "unknown" | "idle" | "focused";
129
979
  };
130
- declare type State = StateMachine.State<MachineContext, MachineState>;
131
- declare type Send = StateMachine.Send<StateMachine.AnyEventObject>;
980
+ type State = StateMachine.State<MachineContext, MachineState>;
981
+ type Send = StateMachine.Send<StateMachine.AnyEventObject>;
132
982
 
133
983
  declare function connect<T extends PropTypes>(state: State, send: Send, normalize: NormalizeProps<T>): {
134
984
  value: string[];
@@ -141,6 +991,7 @@ declare function connect<T extends PropTypes>(state: State, send: Send, normaliz
141
991
  rootProps: T["element"];
142
992
  labelProps: T["label"];
143
993
  hiddenInputProps: T["input"];
994
+ controlProps: T["element"];
144
995
  getInputProps({ index }: {
145
996
  index: number;
146
997
  }): T["input"];
@@ -148,4 +999,4 @@ declare function connect<T extends PropTypes>(state: State, send: Send, normaliz
148
999
 
149
1000
  declare function machine(userContext: UserDefinedContext): _zag_js_core.Machine<MachineContext, MachineState, _zag_js_core.StateMachine.AnyEventObject>;
150
1001
 
151
- export { UserDefinedContext as Context, connect, machine };
1002
+ export { UserDefinedContext as Context, anatomy, connect, machine };
package/dist/index.js CHANGED
@@ -20,11 +20,17 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/index.ts
21
21
  var src_exports = {};
22
22
  __export(src_exports, {
23
+ anatomy: () => anatomy,
23
24
  connect: () => connect,
24
25
  machine: () => machine
25
26
  });
26
27
  module.exports = __toCommonJS(src_exports);
27
28
 
29
+ // src/pin-input.anatomy.ts
30
+ var import_anatomy = require("@zag-js/anatomy");
31
+ var anatomy = (0, import_anatomy.createAnatomy)("pinInput").parts("root", "label", "hiddenInput", "input", "control");
32
+ var parts = anatomy.build();
33
+
28
34
  // ../../utilities/dom/dist/index.mjs
29
35
  var dataAttr = (guard) => {
30
36
  return guard ? "" : void 0;
@@ -171,6 +177,10 @@ var dom = defineDomHelpers({
171
177
  var _a, _b;
172
178
  return (_b = (_a = ctx.ids) == null ? void 0 : _a.label) != null ? _b : `pin-input:${ctx.id}:label`;
173
179
  },
180
+ getControlId: (ctx) => {
181
+ var _a, _b;
182
+ return (_b = (_a = ctx.ids) == null ? void 0 : _a.control) != null ? _b : `pin-input:${ctx.id}:control`;
183
+ },
174
184
  getRootEl: (ctx) => dom.getById(ctx, dom.getRootId(ctx)),
175
185
  getElements: (ctx) => {
176
186
  const ownerId = CSS.escape(dom.getRootId(ctx));
@@ -211,14 +221,14 @@ function connect(state, send, normalize) {
211
221
  focus,
212
222
  rootProps: normalize.element({
213
223
  dir: state.context.dir,
214
- "data-part": "root",
224
+ ...parts.root.attrs,
215
225
  id: dom.getRootId(state.context),
216
226
  "data-invalid": dataAttr(isInvalid),
217
227
  "data-disabled": dataAttr(state.context.disabled),
218
228
  "data-complete": dataAttr(isValueComplete)
219
229
  }),
220
230
  labelProps: normalize.label({
221
- "data-part": "label",
231
+ ...parts.label.attrs,
222
232
  htmlFor: dom.getHiddenInputId(state.context),
223
233
  id: dom.getLabelId(state.context),
224
234
  "data-invalid": dataAttr(isInvalid),
@@ -230,6 +240,7 @@ function connect(state, send, normalize) {
230
240
  }
231
241
  }),
232
242
  hiddenInputProps: normalize.input({
243
+ ...parts.hiddenInput.attrs,
233
244
  "aria-hidden": true,
234
245
  type: "text",
235
246
  tabIndex: -1,
@@ -240,10 +251,14 @@ function connect(state, send, normalize) {
240
251
  maxLength: state.context.valueLength,
241
252
  defaultValue: state.context.valueAsString
242
253
  }),
254
+ controlProps: normalize.element({
255
+ ...parts.control.attrs,
256
+ id: dom.getControlId(state.context)
257
+ }),
243
258
  getInputProps({ index }) {
244
259
  const inputType = state.context.type === "numeric" ? "tel" : "text";
245
260
  return normalize.input({
246
- "data-part": "input",
261
+ ...parts.input.attrs,
247
262
  disabled: state.context.disabled,
248
263
  "data-disabled": dataAttr(state.context.disabled),
249
264
  "data-complete": dataAttr(isValueComplete),
@@ -636,6 +651,7 @@ function lastChar(value) {
636
651
  }
637
652
  // Annotate the CommonJS export names for ESM import in node:
638
653
  0 && (module.exports = {
654
+ anatomy,
639
655
  connect,
640
656
  machine
641
657
  });
package/dist/index.mjs CHANGED
@@ -1,3 +1,8 @@
1
+ // src/pin-input.anatomy.ts
2
+ import { createAnatomy } from "@zag-js/anatomy";
3
+ var anatomy = createAnatomy("pinInput").parts("root", "label", "hiddenInput", "input", "control");
4
+ var parts = anatomy.build();
5
+
1
6
  // ../../utilities/dom/dist/index.mjs
2
7
  var dataAttr = (guard) => {
3
8
  return guard ? "" : void 0;
@@ -144,6 +149,10 @@ var dom = defineDomHelpers({
144
149
  var _a, _b;
145
150
  return (_b = (_a = ctx.ids) == null ? void 0 : _a.label) != null ? _b : `pin-input:${ctx.id}:label`;
146
151
  },
152
+ getControlId: (ctx) => {
153
+ var _a, _b;
154
+ return (_b = (_a = ctx.ids) == null ? void 0 : _a.control) != null ? _b : `pin-input:${ctx.id}:control`;
155
+ },
147
156
  getRootEl: (ctx) => dom.getById(ctx, dom.getRootId(ctx)),
148
157
  getElements: (ctx) => {
149
158
  const ownerId = CSS.escape(dom.getRootId(ctx));
@@ -184,14 +193,14 @@ function connect(state, send, normalize) {
184
193
  focus,
185
194
  rootProps: normalize.element({
186
195
  dir: state.context.dir,
187
- "data-part": "root",
196
+ ...parts.root.attrs,
188
197
  id: dom.getRootId(state.context),
189
198
  "data-invalid": dataAttr(isInvalid),
190
199
  "data-disabled": dataAttr(state.context.disabled),
191
200
  "data-complete": dataAttr(isValueComplete)
192
201
  }),
193
202
  labelProps: normalize.label({
194
- "data-part": "label",
203
+ ...parts.label.attrs,
195
204
  htmlFor: dom.getHiddenInputId(state.context),
196
205
  id: dom.getLabelId(state.context),
197
206
  "data-invalid": dataAttr(isInvalid),
@@ -203,6 +212,7 @@ function connect(state, send, normalize) {
203
212
  }
204
213
  }),
205
214
  hiddenInputProps: normalize.input({
215
+ ...parts.hiddenInput.attrs,
206
216
  "aria-hidden": true,
207
217
  type: "text",
208
218
  tabIndex: -1,
@@ -213,10 +223,14 @@ function connect(state, send, normalize) {
213
223
  maxLength: state.context.valueLength,
214
224
  defaultValue: state.context.valueAsString
215
225
  }),
226
+ controlProps: normalize.element({
227
+ ...parts.control.attrs,
228
+ id: dom.getControlId(state.context)
229
+ }),
216
230
  getInputProps({ index }) {
217
231
  const inputType = state.context.type === "numeric" ? "tel" : "text";
218
232
  return normalize.input({
219
- "data-part": "input",
233
+ ...parts.input.attrs,
220
234
  disabled: state.context.disabled,
221
235
  "data-disabled": dataAttr(state.context.disabled),
222
236
  "data-complete": dataAttr(isValueComplete),
@@ -608,6 +622,7 @@ function lastChar(value) {
608
622
  return value.charAt(value.length - 1);
609
623
  }
610
624
  export {
625
+ anatomy,
611
626
  connect,
612
627
  machine
613
628
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zag-js/pin-input",
3
- "version": "0.2.3",
3
+ "version": "0.2.5",
4
4
  "description": "Core logic for the pin-input widget implemented as a state machine",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -29,7 +29,8 @@
29
29
  "url": "https://github.com/chakra-ui/zag/issues"
30
30
  },
31
31
  "dependencies": {
32
- "@zag-js/core": "0.2.2",
32
+ "@zag-js/anatomy": "0.1.1",
33
+ "@zag-js/core": "0.2.3",
33
34
  "@zag-js/types": "0.3.1"
34
35
  },
35
36
  "devDependencies": {