@mobx-ecosystem/mobx-form 2.11.0 → 2.11.2

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.
@@ -0,0 +1,935 @@
1
+ import { makeAutoObservable } from 'mobx';
2
+
3
+ const isObject = (obj) => obj !== null && typeof obj === 'object';
4
+
5
+ function isEqual(value, other) {
6
+ // Если оба значения одинаковы (включая примитивы и ссылки на один объект)
7
+ if (value === other) {
8
+ return true;
9
+ }
10
+ // Если одно из значений null или не объект, и они не равны (уже проверено выше)
11
+ if (value === null || other === null || typeof value !== 'object' || typeof other !== 'object') {
12
+ return false;
13
+ }
14
+ // Если один из аргументов — Date, сравниваем их временные метки
15
+ if (value instanceof Date && other instanceof Date) {
16
+ return value.getTime() === other.getTime();
17
+ }
18
+ // Если один из аргументов — RegExp, сравниваем их строковые представления
19
+ if (value instanceof RegExp && other instanceof RegExp) {
20
+ return value.toString() === other.toString();
21
+ }
22
+ // Если один из аргументов — Map, преобразуем их в массивы и сравниваем
23
+ if (value instanceof Map && other instanceof Map) {
24
+ if (value.size !== other.size)
25
+ return false;
26
+ for (const [key, val] of value) {
27
+ if (!other.has(key) || !isEqual(val, other.get(key))) {
28
+ return false;
29
+ }
30
+ }
31
+ return true;
32
+ }
33
+ // Если один из аргументов — Set, преобразуем их в массивы и сравниваем
34
+ if (value instanceof Set && other instanceof Set) {
35
+ if (value.size !== other.size)
36
+ return false;
37
+ for (const val of value) {
38
+ if (!other.has(val)) {
39
+ return false;
40
+ }
41
+ }
42
+ return true;
43
+ }
44
+ // Если это массивы, сравниваем их длины и элементы
45
+ if (Array.isArray(value) && Array.isArray(other)) {
46
+ if (value.length !== other.length)
47
+ return false;
48
+ for (let i = 0; i < value.length; i++) {
49
+ if (!isEqual(value[i], other[i])) {
50
+ return false;
51
+ }
52
+ }
53
+ return true;
54
+ }
55
+ // Если это объекты, сравниваем их ключи и значения
56
+ const valueKeys = Object.keys(value);
57
+ const otherKeys = Object.keys(other);
58
+ // Если количество ключей разное, объекты не равны
59
+ if (valueKeys.length !== otherKeys.length) {
60
+ return false;
61
+ }
62
+ // Рекурсивно сравниваем все свойства
63
+ for (const key of valueKeys) {
64
+ if (!Object.hasOwnProperty.call(other, key) || !isEqual(value[key], other[key])) {
65
+ return false;
66
+ }
67
+ }
68
+ return true;
69
+ }
70
+
71
+ class FieldService {
72
+ constructor(initValue, options) {
73
+ Object.defineProperty(this, "validate", {
74
+ enumerable: true,
75
+ configurable: true,
76
+ writable: true,
77
+ value: void 0
78
+ });
79
+ Object.defineProperty(this, "_serviceType", {
80
+ enumerable: true,
81
+ configurable: true,
82
+ writable: true,
83
+ value: 'field-service'
84
+ });
85
+ Object.defineProperty(this, "_initValue", {
86
+ enumerable: true,
87
+ configurable: true,
88
+ writable: true,
89
+ value: undefined
90
+ });
91
+ Object.defineProperty(this, "_value", {
92
+ enumerable: true,
93
+ configurable: true,
94
+ writable: true,
95
+ value: undefined
96
+ });
97
+ Object.defineProperty(this, "_error", {
98
+ enumerable: true,
99
+ configurable: true,
100
+ writable: true,
101
+ value: undefined
102
+ });
103
+ Object.defineProperty(this, "_disabled", {
104
+ enumerable: true,
105
+ configurable: true,
106
+ writable: true,
107
+ value: false
108
+ });
109
+ Object.defineProperty(this, "_isBlurred", {
110
+ enumerable: true,
111
+ configurable: true,
112
+ writable: true,
113
+ value: false
114
+ });
115
+ Object.defineProperty(this, "options", {
116
+ enumerable: true,
117
+ configurable: true,
118
+ writable: true,
119
+ value: void 0
120
+ });
121
+ Object.defineProperty(this, "onChange", {
122
+ enumerable: true,
123
+ configurable: true,
124
+ writable: true,
125
+ value: (_, value) => {
126
+ var _a;
127
+ this.value = value;
128
+ (_a = this.validate) === null || _a === void 0 ? void 0 : _a.call(this);
129
+ }
130
+ });
131
+ Object.defineProperty(this, "onBlur", {
132
+ enumerable: true,
133
+ configurable: true,
134
+ writable: true,
135
+ value: (_) => {
136
+ var _a;
137
+ this.isBlurred = true;
138
+ (_a = this.validate) === null || _a === void 0 ? void 0 : _a.call(this);
139
+ }
140
+ });
141
+ Object.defineProperty(this, "reset", {
142
+ enumerable: true,
143
+ configurable: true,
144
+ writable: true,
145
+ value: () => {
146
+ this.value = this.initValue;
147
+ this.isBlurred = false;
148
+ }
149
+ });
150
+ Object.defineProperty(this, "setAsInit", {
151
+ enumerable: true,
152
+ configurable: true,
153
+ writable: true,
154
+ value: () => {
155
+ this.initValue = this.value;
156
+ this.isBlurred = false;
157
+ }
158
+ });
159
+ Object.defineProperty(this, "touch", {
160
+ enumerable: true,
161
+ configurable: true,
162
+ writable: true,
163
+ value: () => {
164
+ this.isBlurred = true;
165
+ }
166
+ });
167
+ Object.defineProperty(this, "disable", {
168
+ enumerable: true,
169
+ configurable: true,
170
+ writable: true,
171
+ value: () => {
172
+ this.disabled = true;
173
+ }
174
+ });
175
+ Object.defineProperty(this, "enable", {
176
+ enumerable: true,
177
+ configurable: true,
178
+ writable: true,
179
+ value: () => {
180
+ this.disabled = false;
181
+ }
182
+ });
183
+ makeAutoObservable(this);
184
+ this.initValue = initValue;
185
+ this.options = options;
186
+ }
187
+ get initValue() {
188
+ return this._initValue;
189
+ }
190
+ set initValue(initValue) {
191
+ var _a;
192
+ this._initValue = initValue;
193
+ this._value = initValue;
194
+ (_a = this.validate) === null || _a === void 0 ? void 0 : _a.call(this);
195
+ }
196
+ get value() {
197
+ return this._value;
198
+ }
199
+ set value(value) {
200
+ var _a, _b, _c, _d;
201
+ const result = (_b = (_a = this.options) === null || _a === void 0 ? void 0 : _a.beforeChange) === null || _b === void 0 ? void 0 : _b.call(_a, value);
202
+ if (result === 'abort') {
203
+ return;
204
+ }
205
+ const oldValue = this._value;
206
+ this._value = value;
207
+ if (oldValue !== value) {
208
+ (_d = (_c = this.options) === null || _c === void 0 ? void 0 : _c.onChange) === null || _d === void 0 ? void 0 : _d.call(_c, value);
209
+ }
210
+ }
211
+ get error() {
212
+ return this._error;
213
+ }
214
+ set error(error) {
215
+ this._error = error;
216
+ }
217
+ get disabled() {
218
+ return this._disabled;
219
+ }
220
+ set disabled(disabled) {
221
+ this._disabled = disabled;
222
+ }
223
+ get isValid() {
224
+ return !this._error;
225
+ }
226
+ get isInit() {
227
+ if (isObject(this.value)) {
228
+ return isEqual(this.value, this._initValue);
229
+ }
230
+ return this._value === this._initValue;
231
+ }
232
+ get isBlurred() {
233
+ return this._isBlurred;
234
+ }
235
+ set isBlurred(isBlurred) {
236
+ this._isBlurred = isBlurred;
237
+ }
238
+ get isTouched() {
239
+ return !this.isInit || this.isBlurred;
240
+ }
241
+ // TODO: Rethink...
242
+ get props() {
243
+ var _a;
244
+ let commonProps = {
245
+ value: this.value,
246
+ error: this.error,
247
+ disabled: this.disabled,
248
+ };
249
+ if ((_a = this.options) === null || _a === void 0 ? void 0 : _a.onError) {
250
+ commonProps = Object.assign(Object.assign({}, commonProps), { onError: (err) => {
251
+ this.error = this.error || (err === null || err === void 0 ? void 0 : err.toString());
252
+ } });
253
+ }
254
+ return Object.assign(Object.assign({}, commonProps), { onChange: this.onChange, onBlur: this.onBlur });
255
+ }
256
+ }
257
+
258
+ /******************************************************************************
259
+ Copyright (c) Microsoft Corporation.
260
+
261
+ Permission to use, copy, modify, and/or distribute this software for any
262
+ purpose with or without fee is hereby granted.
263
+
264
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
265
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
266
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
267
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
268
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
269
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
270
+ PERFORMANCE OF THIS SOFTWARE.
271
+ ***************************************************************************** */
272
+
273
+ function __awaiter(thisArg, _arguments, P, generator) {
274
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
275
+ return new (P || (P = Promise))(function (resolve, reject) {
276
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
277
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
278
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
279
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
280
+ });
281
+ }
282
+
283
+ let validate;
284
+ let preSubmitValidationError;
285
+ const configureForm = (configuration) => {
286
+ validate = configuration.validation.validate;
287
+ preSubmitValidationError = configuration.validation.preSubmitValidationError;
288
+ };
289
+ const _checkConfiguration = () => {
290
+ if (!validate || !preSubmitValidationError)
291
+ throw new Error("You must define configureForm to configure mobx-form");
292
+ };
293
+
294
+ class CombinedFormFieldService {
295
+ constructor(initValue) {
296
+ Object.defineProperty(this, "_touched", {
297
+ enumerable: true,
298
+ configurable: true,
299
+ writable: true,
300
+ value: false
301
+ });
302
+ Object.defineProperty(this, "_disabled", {
303
+ enumerable: true,
304
+ configurable: true,
305
+ writable: true,
306
+ value: false
307
+ });
308
+ Object.defineProperty(this, "_error", {
309
+ enumerable: true,
310
+ configurable: true,
311
+ writable: true,
312
+ value: undefined
313
+ });
314
+ Object.defineProperty(this, "_initValue", {
315
+ enumerable: true,
316
+ configurable: true,
317
+ writable: true,
318
+ value: []
319
+ });
320
+ Object.defineProperty(this, "_value", {
321
+ enumerable: true,
322
+ configurable: true,
323
+ writable: true,
324
+ value: []
325
+ });
326
+ Object.defineProperty(this, "_validate", {
327
+ enumerable: true,
328
+ configurable: true,
329
+ writable: true,
330
+ value: void 0
331
+ });
332
+ Object.defineProperty(this, "setTouched", {
333
+ enumerable: true,
334
+ configurable: true,
335
+ writable: true,
336
+ value: (touched) => {
337
+ this._touched = touched;
338
+ }
339
+ });
340
+ Object.defineProperty(this, "add", {
341
+ enumerable: true,
342
+ configurable: true,
343
+ writable: true,
344
+ value: (value) => {
345
+ var _a;
346
+ this.value.push(value);
347
+ this.setTouched(true);
348
+ (_a = this.validate) === null || _a === void 0 ? void 0 : _a.call(this, 'only-touched');
349
+ }
350
+ });
351
+ Object.defineProperty(this, "removeByIndex", {
352
+ enumerable: true,
353
+ configurable: true,
354
+ writable: true,
355
+ value: (index) => {
356
+ var _a;
357
+ this.value.splice(index, 1);
358
+ this.setTouched(true);
359
+ (_a = this.validate) === null || _a === void 0 ? void 0 : _a.call(this, 'only-touched');
360
+ }
361
+ });
362
+ Object.defineProperty(this, "reset", {
363
+ enumerable: true,
364
+ configurable: true,
365
+ writable: true,
366
+ value: () => {
367
+ this._value = this.initValue.slice(0); // copy array without objects
368
+ this._value.forEach(it => it.formService.reset());
369
+ this.setTouched(false);
370
+ }
371
+ });
372
+ Object.defineProperty(this, "setAsInit", {
373
+ enumerable: true,
374
+ configurable: true,
375
+ writable: true,
376
+ value: () => {
377
+ this.initValue = this.value;
378
+ this._value.forEach(it => it.formService.setValuesAsInit());
379
+ this.setTouched(false);
380
+ }
381
+ });
382
+ Object.defineProperty(this, "getValues", {
383
+ enumerable: true,
384
+ configurable: true,
385
+ writable: true,
386
+ value: () => {
387
+ return this.value.map(it => it.formService.getValues());
388
+ }
389
+ });
390
+ Object.defineProperty(this, "touch", {
391
+ enumerable: true,
392
+ configurable: true,
393
+ writable: true,
394
+ value: () => {
395
+ this.value.forEach(it => it.formService.touch());
396
+ this.setTouched(true);
397
+ }
398
+ });
399
+ Object.defineProperty(this, "validateFields", {
400
+ enumerable: true,
401
+ configurable: true,
402
+ writable: true,
403
+ value: (type = 'everything') => {
404
+ return Promise.all(this.value.map(it => it.formService.validate(type)));
405
+ }
406
+ });
407
+ Object.defineProperty(this, "validate", {
408
+ enumerable: true,
409
+ configurable: true,
410
+ writable: true,
411
+ value: (type = 'everything') => __awaiter(this, void 0, void 0, function* () {
412
+ var _a;
413
+ return Promise.all([(_a = this._validate) === null || _a === void 0 ? void 0 : _a.call(this), this.validateFields(type)]);
414
+ })
415
+ });
416
+ Object.defineProperty(this, "disable", {
417
+ enumerable: true,
418
+ configurable: true,
419
+ writable: true,
420
+ value: () => {
421
+ this.disabled = true;
422
+ }
423
+ });
424
+ Object.defineProperty(this, "enable", {
425
+ enumerable: true,
426
+ configurable: true,
427
+ writable: true,
428
+ value: () => {
429
+ this.disabled = false;
430
+ }
431
+ });
432
+ makeAutoObservable(this);
433
+ this.initValue = initValue || [];
434
+ }
435
+ get initValue() {
436
+ return this._initValue;
437
+ }
438
+ set initValue(_initValue) {
439
+ var _a;
440
+ this._initValue = _initValue;
441
+ this._value = _initValue.slice(0); // copy array without objects
442
+ this.setTouched(false);
443
+ (_a = this.validate) === null || _a === void 0 ? void 0 : _a.call(this, 'only-touched');
444
+ }
445
+ get value() {
446
+ return this._value;
447
+ }
448
+ set value(array) {
449
+ this._value = array;
450
+ this.setTouched(true);
451
+ }
452
+ get disabled() {
453
+ return this._disabled;
454
+ }
455
+ set disabled(disabled) {
456
+ this._disabled = disabled;
457
+ if (disabled) {
458
+ this.value.forEach(it => it.formService.disable());
459
+ }
460
+ else {
461
+ this.value.forEach(it => it.formService.enable());
462
+ }
463
+ }
464
+ get error() {
465
+ return this._error;
466
+ }
467
+ set error(error) {
468
+ this._error = error;
469
+ }
470
+ get isValid() {
471
+ return !this._error && this.value.every(it => it.formService.isValid);
472
+ }
473
+ get isTouched() {
474
+ return this._touched || this.value.some(it => it.formService.isTouched);
475
+ }
476
+ get isInit() {
477
+ return !this.isTouched;
478
+ }
479
+ get hasItems() {
480
+ return Boolean(this.value.length);
481
+ }
482
+ }
483
+
484
+ class AutocompleteFieldService {
485
+ constructor(initValue) {
486
+ Object.defineProperty(this, "field", {
487
+ enumerable: true,
488
+ configurable: true,
489
+ writable: true,
490
+ value: new FieldService(null)
491
+ });
492
+ Object.defineProperty(this, "inputField", {
493
+ enumerable: true,
494
+ configurable: true,
495
+ writable: true,
496
+ value: new FieldService("")
497
+ });
498
+ Object.defineProperty(this, "setValue", {
499
+ enumerable: true,
500
+ configurable: true,
501
+ writable: true,
502
+ value: (value, { inputValue = "", withNotification = true, withBlur = true }) => {
503
+ var _a, _b, _c, _d;
504
+ if (!withNotification) {
505
+ this.field.value = value;
506
+ this.inputField.value = inputValue;
507
+ (_b = (_a = this.field).validate) === null || _b === void 0 ? void 0 : _b.call(_a);
508
+ (_d = (_c = this.inputField).validate) === null || _d === void 0 ? void 0 : _d.call(_c);
509
+ }
510
+ else {
511
+ this.field.value = value;
512
+ this.inputField.value = inputValue;
513
+ }
514
+ if (withBlur) {
515
+ return this.field.isBlurred = true;
516
+ }
517
+ }
518
+ });
519
+ Object.defineProperty(this, "reset", {
520
+ enumerable: true,
521
+ configurable: true,
522
+ writable: true,
523
+ value: () => {
524
+ this.field.reset();
525
+ }
526
+ });
527
+ Object.defineProperty(this, "setAsInit", {
528
+ enumerable: true,
529
+ configurable: true,
530
+ writable: true,
531
+ value: () => {
532
+ this.field.setAsInit();
533
+ }
534
+ });
535
+ Object.defineProperty(this, "onInputChange", {
536
+ enumerable: true,
537
+ configurable: true,
538
+ writable: true,
539
+ value: (e, value) => {
540
+ this.inputField.value = value;
541
+ }
542
+ });
543
+ Object.defineProperty(this, "touch", {
544
+ enumerable: true,
545
+ configurable: true,
546
+ writable: true,
547
+ value: () => {
548
+ this.field.touch();
549
+ }
550
+ });
551
+ Object.defineProperty(this, "disable", {
552
+ enumerable: true,
553
+ configurable: true,
554
+ writable: true,
555
+ value: () => {
556
+ this.field.disabled = true;
557
+ }
558
+ });
559
+ Object.defineProperty(this, "enable", {
560
+ enumerable: true,
561
+ configurable: true,
562
+ writable: true,
563
+ value: () => {
564
+ this.field.disabled = false;
565
+ }
566
+ });
567
+ makeAutoObservable(this);
568
+ this.field.initValue = initValue;
569
+ }
570
+ get validate() {
571
+ return this.field.validate;
572
+ }
573
+ set validate(validate) {
574
+ this.field.validate = validate;
575
+ }
576
+ get value() {
577
+ return this.field.value;
578
+ }
579
+ set value(value) {
580
+ this.field.value = value;
581
+ }
582
+ get error() {
583
+ return this.field.error;
584
+ }
585
+ set error(error) {
586
+ this.field.error = error;
587
+ }
588
+ get disabled() {
589
+ return this.field.disabled;
590
+ }
591
+ set disabled(disabled) {
592
+ this.field.disabled = disabled;
593
+ }
594
+ get isValid() {
595
+ return this.field.isValid;
596
+ }
597
+ get isInit() {
598
+ return this.field.isInit;
599
+ }
600
+ set initValue(initValue) {
601
+ this.field.initValue = initValue;
602
+ }
603
+ get isTouched() {
604
+ return this.field.isTouched;
605
+ }
606
+ get initValue() {
607
+ return this.field.initValue;
608
+ }
609
+ get props() {
610
+ return Object.assign(Object.assign({}, this.field.props), { inputValue: this.inputField.value, onInputChange: this.onInputChange });
611
+ }
612
+ }
613
+
614
+ class FormService {
615
+ constructor(fields, validationSchema) {
616
+ Object.defineProperty(this, "fields", {
617
+ enumerable: true,
618
+ configurable: true,
619
+ writable: true,
620
+ value: void 0
621
+ });
622
+ Object.defineProperty(this, "validationSchema", {
623
+ enumerable: true,
624
+ configurable: true,
625
+ writable: true,
626
+ value: void 0
627
+ });
628
+ Object.defineProperty(this, "onSubmit", {
629
+ enumerable: true,
630
+ configurable: true,
631
+ writable: true,
632
+ value: void 0
633
+ });
634
+ Object.defineProperty(this, "setOnSubmit", {
635
+ enumerable: true,
636
+ configurable: true,
637
+ writable: true,
638
+ value: (onSubmit) => {
639
+ this.onSubmit = onSubmit;
640
+ }
641
+ });
642
+ Object.defineProperty(this, "submit", {
643
+ enumerable: true,
644
+ configurable: true,
645
+ writable: true,
646
+ value: () => __awaiter(this, void 0, void 0, function* () {
647
+ var _a;
648
+ yield this.validate('everything');
649
+ if (this.canBeSubmitted) {
650
+ return (_a = this.onSubmit) === null || _a === void 0 ? void 0 : _a.call(this);
651
+ }
652
+ else {
653
+ preSubmitValidationError === null || preSubmitValidationError === void 0 ? void 0 : preSubmitValidationError();
654
+ }
655
+ })
656
+ });
657
+ /***
658
+ * Validate the form
659
+ *
660
+ * *Configure this method with configureForm from mobx-form
661
+ */
662
+ Object.defineProperty(this, "validate", {
663
+ enumerable: true,
664
+ configurable: true,
665
+ writable: true,
666
+ value: (type = 'only-touched') => __awaiter(this, void 0, void 0, function* () {
667
+ const fieldValues = this.getValues();
668
+ // валидация для сложных форм снизу -> вверх
669
+ yield this.bypassFields(this.fields, (field) => __awaiter(this, void 0, void 0, function* () {
670
+ var _b;
671
+ if (field instanceof CombinedFormFieldService) {
672
+ return yield ((_b = field.validateFields) === null || _b === void 0 ? void 0 : _b.call(field, type));
673
+ }
674
+ }));
675
+ // валидация для простейших полей сверху -> вниз
676
+ const errors = yield (validate === null || validate === void 0 ? void 0 : validate(fieldValues, this.validationSchema));
677
+ if (errors && Object.keys(errors || []).length != 0) {
678
+ this.setErrors(errors, type);
679
+ }
680
+ else {
681
+ this.resetErrors();
682
+ }
683
+ })
684
+ });
685
+ Object.defineProperty(this, "setValidationSchema", {
686
+ enumerable: true,
687
+ configurable: true,
688
+ writable: true,
689
+ value: (validationSchema) => {
690
+ this.validationSchema = validationSchema;
691
+ this.setValidationToFields();
692
+ }
693
+ });
694
+ /**
695
+ *
696
+ * @returns Object of field values
697
+ */
698
+ Object.defineProperty(this, "getValues", {
699
+ enumerable: true,
700
+ configurable: true,
701
+ writable: true,
702
+ value: () => {
703
+ const values = {};
704
+ for (const key of this.keys) {
705
+ values[key] = this.getValue(this.fields[key]);
706
+ }
707
+ return values;
708
+ }
709
+ });
710
+ Object.defineProperty(this, "getValue", {
711
+ enumerable: true,
712
+ configurable: true,
713
+ writable: true,
714
+ value: (value) => {
715
+ if (value instanceof FieldService || value instanceof CombinedFormFieldService || value instanceof AutocompleteFieldService) {
716
+ return value === null || value === void 0 ? void 0 : value.value;
717
+ }
718
+ else if (typeof value === 'object') {
719
+ const values = {};
720
+ for (const key of Object.keys(value)) {
721
+ values[key] = this.getValue(value === null || value === void 0 ? void 0 : value[key]);
722
+ }
723
+ return values;
724
+ }
725
+ return value;
726
+ }
727
+ });
728
+ /**
729
+ * Set fields by this
730
+ */
731
+ Object.defineProperty(this, "setFieldsByThis", {
732
+ enumerable: true,
733
+ configurable: true,
734
+ writable: true,
735
+ value: (obj) => {
736
+ const fields = {};
737
+ Object.keys(obj).forEach(key => {
738
+ if (obj[key] && obj[key] instanceof FieldService || obj[key] instanceof CombinedFormFieldService || obj[key] instanceof AutocompleteFieldService) {
739
+ fields[key] = obj[key];
740
+ }
741
+ });
742
+ this.fields = fields;
743
+ this.setValidationToFields();
744
+ }
745
+ });
746
+ Object.defineProperty(this, "bypassFields", {
747
+ enumerable: true,
748
+ configurable: true,
749
+ writable: true,
750
+ value: (fields, action, levelParams) => {
751
+ if (fields instanceof FieldService || fields instanceof CombinedFormFieldService || fields instanceof AutocompleteFieldService) {
752
+ // if(typeof fields.value === 'object') {
753
+ // this.bypassFields(fields.value, action, levelParams)
754
+ // }
755
+ return action(fields, levelParams);
756
+ }
757
+ else if (typeof fields === 'object') {
758
+ return Promise.all(Object.keys(fields || {}).map(key => {
759
+ return this.bypassFields(fields === null || fields === void 0 ? void 0 : fields[key], action, levelParams === null || levelParams === void 0 ? void 0 : levelParams[key]);
760
+ }));
761
+ }
762
+ }
763
+ });
764
+ Object.defineProperty(this, "setValidationToFields", {
765
+ enumerable: true,
766
+ configurable: true,
767
+ writable: true,
768
+ value: () => {
769
+ this.bypassFields(this.fields, (field) => {
770
+ if (!(field instanceof CombinedFormFieldService)) {
771
+ field.validate = this.validate;
772
+ }
773
+ else {
774
+ field._validate = this.validate;
775
+ }
776
+ });
777
+ }
778
+ });
779
+ /**
780
+ * Set object to init values by form service keys
781
+ */
782
+ Object.defineProperty(this, "setInitValues", {
783
+ enumerable: true,
784
+ configurable: true,
785
+ writable: true,
786
+ value: (values) => {
787
+ this.bypassFields(this.fields, (field, levelParams) => field.initValue = levelParams, values);
788
+ }
789
+ });
790
+ /**
791
+ * Set object to values by form service keys
792
+ */
793
+ Object.defineProperty(this, "setValues", {
794
+ enumerable: true,
795
+ configurable: true,
796
+ writable: true,
797
+ value: (values) => {
798
+ this.bypassFields(this.fields, (field, levelParams) => field.value = levelParams, values);
799
+ }
800
+ });
801
+ /**
802
+ * Set field errors to undefined
803
+ */
804
+ Object.defineProperty(this, "resetErrors", {
805
+ enumerable: true,
806
+ configurable: true,
807
+ writable: true,
808
+ value: () => {
809
+ this.bypassFields(this.fields, (field) => field.error = undefined);
810
+ }
811
+ });
812
+ /**
813
+ * Set field values to init values
814
+ */
815
+ Object.defineProperty(this, "setValuesAsInit", {
816
+ enumerable: true,
817
+ configurable: true,
818
+ writable: true,
819
+ value: () => {
820
+ this.bypassFields(this.fields, (field) => {
821
+ field.setAsInit();
822
+ });
823
+ }
824
+ });
825
+ /**
826
+ * Reset fields to their own initial values
827
+ */
828
+ Object.defineProperty(this, "reset", {
829
+ enumerable: true,
830
+ configurable: true,
831
+ writable: true,
832
+ value: () => {
833
+ this.bypassFields(this.fields, (field) => field.reset());
834
+ this.validate();
835
+ }
836
+ });
837
+ /**
838
+ * Pass true to the property 'disabled'
839
+ */
840
+ Object.defineProperty(this, "disable", {
841
+ enumerable: true,
842
+ configurable: true,
843
+ writable: true,
844
+ value: () => {
845
+ this.bypassFields(this.fields, (field) => field.disable());
846
+ }
847
+ });
848
+ /**
849
+ * Pass false to the property 'disabled'
850
+ */
851
+ Object.defineProperty(this, "enable", {
852
+ enumerable: true,
853
+ configurable: true,
854
+ writable: true,
855
+ value: () => {
856
+ this.bypassFields(this.fields, (field) => field.enable());
857
+ }
858
+ });
859
+ Object.defineProperty(this, "touch", {
860
+ enumerable: true,
861
+ configurable: true,
862
+ writable: true,
863
+ value: () => {
864
+ this.bypassFields(this.fields, (field) => field.touch());
865
+ }
866
+ });
867
+ _checkConfiguration();
868
+ makeAutoObservable(this);
869
+ this.fields = fields;
870
+ this.validationSchema = validationSchema;
871
+ this.setValidationToFields();
872
+ }
873
+ /**
874
+ * Return field keys
875
+ */
876
+ get keys() {
877
+ return Object.keys(this.fields);
878
+ }
879
+ /**
880
+ * Check each field if its isValid = true
881
+ */
882
+ get isValid() {
883
+ let isValid = true;
884
+ this.bypassFields(this.fields, (field) => {
885
+ if (!field.isValid) {
886
+ isValid = false;
887
+ }
888
+ });
889
+ return isValid;
890
+ }
891
+ /**
892
+ * Check each field if its isTouched = true
893
+ */
894
+ get isTouched() {
895
+ let isTouched = false;
896
+ this.bypassFields(this.fields, (field) => {
897
+ if (field.isTouched) {
898
+ isTouched = true;
899
+ }
900
+ });
901
+ return isTouched;
902
+ }
903
+ /**
904
+ * Check if isTouched = true && isValid = true
905
+ */
906
+ get canBeSubmitted() {
907
+ return this.isTouched && this.isValid;
908
+ }
909
+ /**
910
+ * always true if the form service is empty
911
+ */
912
+ get disabled() {
913
+ let disabled = true;
914
+ this.bypassFields(this.fields, (field) => {
915
+ if (!field.disabled) {
916
+ disabled = false;
917
+ }
918
+ });
919
+ return disabled;
920
+ }
921
+ /**
922
+ * Set errors for fields
923
+ * @param errors object of string which provides errors for fields
924
+ */
925
+ setErrors(error, validationType = 'only-touched') {
926
+ this.bypassFields(this.fields, (field, levelParams) => {
927
+ if (field.isTouched || validationType === 'everything') { // set error only if it's changed
928
+ field.error = levelParams;
929
+ }
930
+ }, error);
931
+ }
932
+ }
933
+
934
+ export { AutocompleteFieldService, CombinedFormFieldService, FieldService, FormService, _checkConfiguration, configureForm, preSubmitValidationError, validate };
935
+ //# sourceMappingURL=index.dev.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.dev.js","sources":["../src/utils/check-types.ts","../src/utils/isEqual.ts","../src/field-service.ts","../node_modules/tslib/tslib.es6.js","../src/configure-form.ts","../src/combined-form-field-service.ts","../src/autocompete-field-service.ts","../src/form-service.ts"],"sourcesContent":[null,null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.push(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.push(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n",null,null,null,null],"names":[],"mappings":"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","x_google_ignoreList":[3]}
package/package.json CHANGED
@@ -2,18 +2,18 @@
2
2
  "type": "module",
3
3
  "name": "@mobx-ecosystem/mobx-form",
4
4
  "private": false,
5
- "version": "2.11.0",
5
+ "version": "2.11.2",
6
6
  "description": "provides the ability to use forms with validation in MobX stores",
7
- "main": "dist/index.js",
8
- "module": "dist/index.js",
9
- "types": "dist/index.d.ts",
7
+ "main": "./dist/index.prod.js",
8
+ "types": "./dist/index.d.ts",
10
9
  "exports": {
11
10
  ".": {
12
- "types": "./dist/index.d.ts",
13
- "import": "./dist/index.js",
14
- "default": "./dist/index.js"
15
- },
16
- "./package.json": "./package.json"
11
+ "import": {
12
+ "development": "./dist/index.dev.js",
13
+ "production": "./dist/index.prod.js",
14
+ "default": "./dist/index.prod.js"
15
+ }
16
+ }
17
17
  },
18
18
  "scripts": {
19
19
  "dev": "tsc --watch",
@@ -1 +0,0 @@
1
- export {};
File without changes