@steroidsjs/core 3.0.82 → 3.0.84

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.
@@ -3182,6 +3182,14 @@
3182
3182
  "type": "number[]",
3183
3183
  "example": "[1, 22]"
3184
3184
  },
3185
+ {
3186
+ "name": "isFetchDisabled",
3187
+ "decorators": [],
3188
+ "description": "Сигнал, запрещающий отправку запроса на получение данных",
3189
+ "required": false,
3190
+ "type": "boolean",
3191
+ "example": null
3192
+ },
3185
3193
  {
3186
3194
  "name": "items",
3187
3195
  "decorators": [],
@@ -13916,6 +13924,15 @@
13916
13924
  "example": null,
13917
13925
  "defaultValue": null
13918
13926
  },
13927
+ {
13928
+ "name": "isFetchDisabled",
13929
+ "decorators": [],
13930
+ "description": "Сигнал, запрещающий отправку запроса на получение данных",
13931
+ "required": false,
13932
+ "type": "boolean",
13933
+ "example": null,
13934
+ "defaultValue": null
13935
+ },
13919
13936
  {
13920
13937
  "name": "isRenderWithoutFieldLayout",
13921
13938
  "decorators": [],
@@ -15765,6 +15782,15 @@
15765
15782
  "example": null,
15766
15783
  "defaultValue": null
15767
15784
  },
15785
+ {
15786
+ "name": "isFetchDisabled",
15787
+ "decorators": [],
15788
+ "description": "Сигнал, запрещающий отправку запроса на получение данных",
15789
+ "required": false,
15790
+ "type": "boolean",
15791
+ "example": null,
15792
+ "defaultValue": null
15793
+ },
15768
15794
  {
15769
15795
  "name": "isRenderWithoutFieldLayout",
15770
15796
  "decorators": [],
@@ -16348,6 +16374,15 @@
16348
16374
  "example": null,
16349
16375
  "defaultValue": null
16350
16376
  },
16377
+ {
16378
+ "name": "isFetchDisabled",
16379
+ "decorators": [],
16380
+ "description": "Сигнал, запрещающий отправку запроса на получение данных",
16381
+ "required": false,
16382
+ "type": "boolean",
16383
+ "example": null,
16384
+ "defaultValue": null
16385
+ },
16351
16386
  {
16352
16387
  "name": "isRenderWithoutFieldLayout",
16353
16388
  "decorators": [],
@@ -16784,6 +16819,15 @@
16784
16819
  "example": "true",
16785
16820
  "defaultValue": null
16786
16821
  },
16822
+ {
16823
+ "name": "disabledDays",
16824
+ "decorators": [],
16825
+ "description": " Ограничение доступных дат.",
16826
+ "required": false,
16827
+ "type": "{after: Date, before: Date}",
16828
+ "example": null,
16829
+ "defaultValue": null
16830
+ },
16787
16831
  {
16788
16832
  "name": "displayFormat",
16789
16833
  "decorators": [],
@@ -17551,6 +17595,15 @@
17551
17595
  "example": "true",
17552
17596
  "defaultValue": null
17553
17597
  },
17598
+ {
17599
+ "name": "disabledDays",
17600
+ "decorators": [],
17601
+ "description": " Ограничение доступных дат.",
17602
+ "required": false,
17603
+ "type": "{after: Date, before: Date}",
17604
+ "example": null,
17605
+ "defaultValue": null
17606
+ },
17554
17607
  {
17555
17608
  "name": "displayFormat",
17556
17609
  "decorators": [],
@@ -18086,6 +18139,15 @@
18086
18139
  "example": "'isVisible'",
18087
18140
  "defaultValue": null
18088
18141
  },
18142
+ {
18143
+ "name": "availableTime",
18144
+ "decorators": [],
18145
+ "description": "Ограничение доступного времени.",
18146
+ "required": false,
18147
+ "type": "{from: string, to: string}",
18148
+ "example": null,
18149
+ "defaultValue": null
18150
+ },
18089
18151
  {
18090
18152
  "name": "calendarProps",
18091
18153
  "decorators": [],
@@ -18140,6 +18202,15 @@
18140
18202
  "example": "true",
18141
18203
  "defaultValue": null
18142
18204
  },
18205
+ {
18206
+ "name": "disabledDays",
18207
+ "decorators": [],
18208
+ "description": " Ограничение доступных дат.",
18209
+ "required": false,
18210
+ "type": "{after: Date, before: Date}",
18211
+ "example": null,
18212
+ "defaultValue": null
18213
+ },
18143
18214
  {
18144
18215
  "name": "displayFormat",
18145
18216
  "decorators": [],
@@ -18239,6 +18310,15 @@
18239
18310
  "example": null,
18240
18311
  "defaultValue": null
18241
18312
  },
18313
+ {
18314
+ "name": "minuteStep",
18315
+ "decorators": [],
18316
+ "description": "Шаг минут",
18317
+ "required": false,
18318
+ "type": "number",
18319
+ "example": "15",
18320
+ "defaultValue": null
18321
+ },
18242
18322
  {
18243
18323
  "name": "model",
18244
18324
  "decorators": [],
@@ -18518,6 +18598,15 @@
18518
18598
  "example": "'toTime'",
18519
18599
  "defaultValue": null
18520
18600
  },
18601
+ {
18602
+ "name": "availableTime",
18603
+ "decorators": [],
18604
+ "description": "Ограничение доступного времени.",
18605
+ "required": false,
18606
+ "type": "{from: string, to: string}",
18607
+ "example": null,
18608
+ "defaultValue": null
18609
+ },
18521
18610
  {
18522
18611
  "name": "calendarProps",
18523
18612
  "decorators": [],
@@ -18536,6 +18625,24 @@
18536
18625
  "example": null,
18537
18626
  "defaultValue": null
18538
18627
  },
18628
+ {
18629
+ "name": "dateTimeSeparator",
18630
+ "decorators": [],
18631
+ "description": "Разделитель для даты и времени, не влияет на отображение",
18632
+ "required": false,
18633
+ "type": "string",
18634
+ "example": null,
18635
+ "defaultValue": null
18636
+ },
18637
+ {
18638
+ "name": "disabledDays",
18639
+ "decorators": [],
18640
+ "description": " Ограничение доступных дат.",
18641
+ "required": false,
18642
+ "type": "{after: Date, before: Date}",
18643
+ "example": null,
18644
+ "defaultValue": null
18645
+ },
18539
18646
  {
18540
18647
  "name": "hasInitialFocus",
18541
18648
  "decorators": [],
@@ -18572,6 +18679,15 @@
18572
18679
  "example": null,
18573
18680
  "defaultValue": null
18574
18681
  },
18682
+ {
18683
+ "name": "minuteStep",
18684
+ "decorators": [],
18685
+ "description": "Шаг минут",
18686
+ "required": false,
18687
+ "type": "number",
18688
+ "example": "15",
18689
+ "defaultValue": null
18690
+ },
18575
18691
  {
18576
18692
  "name": "rangeButtonsPosition",
18577
18693
  "decorators": [],
@@ -19345,6 +19461,15 @@
19345
19461
  "example": null,
19346
19462
  "defaultValue": null
19347
19463
  },
19464
+ {
19465
+ "name": "isFetchDisabled",
19466
+ "decorators": [],
19467
+ "description": "Сигнал, запрещающий отправку запроса на получение данных",
19468
+ "required": false,
19469
+ "type": "boolean",
19470
+ "example": null,
19471
+ "defaultValue": null
19472
+ },
19348
19473
  {
19349
19474
  "name": "isFetchOnClose",
19350
19475
  "decorators": [],
@@ -19644,6 +19769,15 @@
19644
19769
  }
19645
19770
  ]
19646
19771
  },
19772
+ {
19773
+ "name": "onOpen",
19774
+ "decorators": [],
19775
+ "description": "Callback-функция, которая вызывается при открытии DropDown",
19776
+ "required": false,
19777
+ "type": "void",
19778
+ "example": null,
19779
+ "parameters": []
19780
+ },
19647
19781
  {
19648
19782
  "name": "onReset",
19649
19783
  "decorators": [],
@@ -19842,6 +19976,14 @@
19842
19976
  "type": "boolean",
19843
19977
  "example": null
19844
19978
  },
19979
+ {
19980
+ "name": "isFetchDisabled",
19981
+ "decorators": [],
19982
+ "description": "Сигнал, запрещающий отправку запроса на получение данных",
19983
+ "required": false,
19984
+ "type": "boolean",
19985
+ "example": null
19986
+ },
19845
19987
  {
19846
19988
  "name": "isFetchOnClose",
19847
19989
  "decorators": [],
@@ -20166,7 +20308,7 @@
20166
20308
  {
20167
20309
  "name": "onOpen",
20168
20310
  "decorators": [],
20169
- "description": "",
20311
+ "description": "Callback-функция, которая вызывается при открытии DropDown",
20170
20312
  "required": false,
20171
20313
  "type": "void",
20172
20314
  "example": null,
@@ -26398,6 +26540,15 @@
26398
26540
  "example": null,
26399
26541
  "defaultValue": null
26400
26542
  },
26543
+ {
26544
+ "name": "isFetchDisabled",
26545
+ "decorators": [],
26546
+ "description": "Сигнал, запрещающий отправку запроса на получение данных",
26547
+ "required": false,
26548
+ "type": "boolean",
26549
+ "example": null,
26550
+ "defaultValue": null
26551
+ },
26401
26552
  {
26402
26553
  "name": "isRenderWithoutFieldLayout",
26403
26554
  "decorators": [],
@@ -29901,6 +30052,15 @@
29901
30052
  "example": "'isVisible'",
29902
30053
  "defaultValue": null
29903
30054
  },
30055
+ {
30056
+ "name": "availableTime",
30057
+ "decorators": [],
30058
+ "description": " Ограничение доступного времени.",
30059
+ "required": false,
30060
+ "type": "{from: string, to: string}",
30061
+ "example": null,
30062
+ "defaultValue": null
30063
+ },
29904
30064
  {
29905
30065
  "name": "className",
29906
30066
  "decorators": [],
@@ -30027,6 +30187,24 @@
30027
30187
  "example": "'Visible'",
30028
30188
  "defaultValue": null
30029
30189
  },
30190
+ {
30191
+ "name": "maskOptions",
30192
+ "decorators": [],
30193
+ "description": "Опции маски для поля ввода",
30194
+ "required": false,
30195
+ "type": "MaskitoOptions",
30196
+ "example": null,
30197
+ "defaultValue": null
30198
+ },
30199
+ {
30200
+ "name": "minuteStep",
30201
+ "decorators": [],
30202
+ "description": "Шаг минут",
30203
+ "required": false,
30204
+ "type": "number",
30205
+ "example": "15",
30206
+ "defaultValue": null
30207
+ },
30030
30208
  {
30031
30209
  "name": "model",
30032
30210
  "decorators": [],
@@ -30184,10 +30362,18 @@
30184
30362
  "defaultProps": null,
30185
30363
  "extends": [
30186
30364
  "IDateInputStateOutput",
30187
- "Pick<ITimeFieldProps",
30188
- "'size' | 'errors' | 'showRemove' | 'noBorder' | 'className' | 'timePanelViewProps' | 'style'>"
30365
+ "Pick<\n ITimeFieldProps",
30366
+ "'size' | 'errors' | 'showRemove' | 'noBorder' | 'className' | 'timePanelViewProps' | 'style' | 'availableTime' | 'minuteStep'\n >"
30189
30367
  ],
30190
30368
  "properties": [
30369
+ {
30370
+ "name": "availableTime",
30371
+ "decorators": [],
30372
+ "description": " Ограничение доступного времени.",
30373
+ "required": false,
30374
+ "type": "{from: string, to: string}",
30375
+ "example": null
30376
+ },
30191
30377
  {
30192
30378
  "name": "className",
30193
30379
  "decorators": [],
@@ -30220,6 +30406,14 @@
30220
30406
  "type": "boolean",
30221
30407
  "example": null
30222
30408
  },
30409
+ {
30410
+ "name": "minuteStep",
30411
+ "decorators": [],
30412
+ "description": "Шаг минут",
30413
+ "required": false,
30414
+ "type": "number",
30415
+ "example": "15"
30416
+ },
30223
30417
  {
30224
30418
  "name": "noBorder",
30225
30419
  "decorators": [],
@@ -30300,9 +30494,17 @@
30300
30494
  "defaultProps": null,
30301
30495
  "extends": [
30302
30496
  "Pick<ITimeFieldViewProps",
30303
- "'value' | 'onClose' | 'onNow' | 'onSelect' | 'className'>"
30497
+ "'value' | 'onClose' | 'onNow' | 'onSelect' | 'className' | 'availableTime' | 'minuteStep'>"
30304
30498
  ],
30305
30499
  "properties": [
30500
+ {
30501
+ "name": "availableTime",
30502
+ "decorators": [],
30503
+ "description": " Ограничение доступного времени.",
30504
+ "required": false,
30505
+ "type": "{from: string, to: string}",
30506
+ "example": null
30507
+ },
30306
30508
  {
30307
30509
  "name": "className",
30308
30510
  "decorators": [],
@@ -30311,6 +30513,14 @@
30311
30513
  "type": "string",
30312
30514
  "example": null
30313
30515
  },
30516
+ {
30517
+ "name": "minuteStep",
30518
+ "decorators": [],
30519
+ "description": "Шаг минут",
30520
+ "required": false,
30521
+ "type": "number",
30522
+ "example": "15"
30523
+ },
30314
30524
  {
30315
30525
  "name": "showHeader",
30316
30526
  "decorators": [],
@@ -30390,6 +30600,15 @@
30390
30600
  "example": "'toTime'",
30391
30601
  "defaultValue": null
30392
30602
  },
30603
+ {
30604
+ "name": "availableTime",
30605
+ "decorators": [],
30606
+ "description": " Ограничение доступного времени.",
30607
+ "required": false,
30608
+ "type": "{from: string, to: string}",
30609
+ "example": null,
30610
+ "defaultValue": null
30611
+ },
30393
30612
  {
30394
30613
  "name": "className",
30395
30614
  "decorators": [],
@@ -30543,6 +30762,24 @@
30543
30762
  "example": "'Visible'",
30544
30763
  "defaultValue": null
30545
30764
  },
30765
+ {
30766
+ "name": "maskOptions",
30767
+ "decorators": [],
30768
+ "description": "Опции маски для полей",
30769
+ "required": false,
30770
+ "type": "{from: MaskitoOptions, to: MaskitoOptions}",
30771
+ "example": null,
30772
+ "defaultValue": null
30773
+ },
30774
+ {
30775
+ "name": "minuteStep",
30776
+ "decorators": [],
30777
+ "description": "Шаг минут",
30778
+ "required": false,
30779
+ "type": "number",
30780
+ "example": "15",
30781
+ "defaultValue": null
30782
+ },
30546
30783
  {
30547
30784
  "name": "model",
30548
30785
  "decorators": [],
package/en.json CHANGED
@@ -985,6 +985,7 @@
985
985
  "Компонент, который представляет в виде дерева список с иерархической структурой данных\n\nДополнительный функционал: в кастомном view компонента есть возможность реализовать кнопку, по клику на которую\nбудет вызываться функция props.onItemFocus. Данная функция \"находит\" текущий роут в дереве -\nраскрывает родительские уровни, делает элемент активным.\nДанная функция не включает скролл к активному компоненту внутри дерева, это также необходимо\nреализовать в кастомном view локально в проекте.\n": "",
986
986
  "Значение страницы по умолчанию.": "",
987
987
  "Логическое значение, указывающее, можно ли загрузить еще элементы для списка при скролле.": "",
988
+ "Сигнал, запрещающий отправку запроса на получение данных": "",
988
989
  " Ref autocomplete поиска": "",
989
990
  "Нужно ли закрывать выпадающий список после выбора элемента": "",
990
991
  "Ref для drop area": "",
@@ -1020,11 +1021,14 @@
1020
1021
  "Пропсы для отображения элемента": "",
1021
1022
  "Отображать чекбоксы только на узлах, не имеющих вложенных элементов": "",
1022
1023
  "View компонент для элемента дерева": "",
1024
+ " Ограничение доступных дат.": "",
1023
1025
  "Положение дополнительных кнопок (сегодня, вчера и прочие)\nЕсли указано в формате 'position1-position2', то 'position1' будет на устройствах > $tablet-width, а 'position2' на остальных.": "",
1024
1026
  "Перемещать ли фокус на пустое после заполнения": "",
1025
1027
  "Активирует логику:\n- Если кликнули по дате начала или конца диапазона, то позволяем её изменить следующим кликом\n- Если клик не на дату конца или начала диапазона, а диапазон есть, то сбрасываем его\n- Если клик не на дату конца или начала диапазона, а диапазона нет, то устанавливаем кликнутую дату в поле from": "",
1026
1028
  "Добавляет дополнительные кнопки к календарю\ntrue - будут отображены кнопки по-умолчанию\nсписок:\n string - одна из кнопок по-умолчанию\n object - кастомная кнопка": "",
1029
+ "Ограничение доступного времени.": "",
1027
1030
  "Разделитель для даты и времени, не влияет на отображение": "",
1031
+ "Шаг минут": "",
1028
1032
  "Свойства, которые напрямую передаются в DropDown компонент": "",
1029
1033
  "Нужно ли подгружать данные после закрытия DropDown": "",
1030
1034
  "Число в пикселях, больше которого не может быть выпадающее меню": "",
@@ -1039,6 +1043,7 @@
1039
1043
  "Компонент редактора 'ckeditor5-react' из библиотеки @ckeditor\nПримечание: для использования встроенного отображения 'HtmlField', данный компонент должен быть передан": "",
1040
1044
  "Допустимое количество символов после разделителя": "",
1041
1045
  "Может ли число быть отрицательным": "",
1046
+ " Ограничение доступного времени.": "",
1042
1047
  "Подключить бесконечный скролл": "",
1043
1048
  "Аттрибут (название) в форме для поля с флагом, определяющим есть ли следующая страница": "",
1044
1049
  "Аттрибут (название) в форме для поля с номером текущей страницы": "",
@@ -104,6 +104,10 @@ export interface IDataProviderConfig {
104
104
  * @example [1, 22]
105
105
  */
106
106
  initialSelectedIds?: number[];
107
+ /**
108
+ * Сигнал, запрещающий отправку запроса на получение данных
109
+ */
110
+ isFetchDisabled?: boolean;
107
111
  }
108
112
  export interface IDataProviderResult {
109
113
  fetchRemote: ((isAuto: boolean) => Promise<void>) | null;
@@ -165,6 +165,9 @@ function useDataProvider(config) {
165
165
  setItems(config.query ? (0, text_1.smartSearch)(config.query, sourceItems) : sourceItems);
166
166
  return;
167
167
  }
168
+ if (config.isFetchDisabled) {
169
+ return;
170
+ }
168
171
  if (config.autoFetch && !isAutoFetchedRef.current) {
169
172
  isAutoFetchedRef.current = true;
170
173
  fetchRemote(true);
@@ -187,7 +190,8 @@ function useDataProvider(config) {
187
190
  }
188
191
  }
189
192
  }, [autoComplete, components.http, config.autoFetch, config.dataProvider, config.initialSelectedIds, config.query, dataProvider,
190
- dataProvider.action, dataProvider.onSearch, fetchRemote, prevAction, prevParams, prevQuery, prevValues, setSourceItems, sourceItems]);
193
+ dataProvider.action, dataProvider.onSearch, fetchRemote, prevAction, prevParams, prevQuery, prevValues, setSourceItems, sourceItems,
194
+ config.isFetchDisabled]);
191
195
  return {
192
196
  fetchRemote: config.dataProvider && fetchRemote,
193
197
  sourceItems: sourceItems,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steroidsjs/core",
3
- "version": "3.0.82",
3
+ "version": "3.0.84",
4
4
  "description": "",
5
5
  "author": "Vladimir Kozhin <hello@kozhindev.com>",
6
6
  "repository": {
@@ -43,6 +43,10 @@ export interface IAutoCompleteFieldProps extends IBaseFieldProps, IDataProviderC
43
43
  * @example '; '
44
44
  */
45
45
  multipleSeparator?: string;
46
+ /**
47
+ * Сигнал, запрещающий отправку запроса на получение данных
48
+ */
49
+ isFetchDisabled?: boolean;
46
50
  }
47
51
  export interface IAutoCompleteFieldViewProps extends Omit<IAutoCompleteFieldProps, 'items'> {
48
52
  items: IAutoCompleteItem[];
@@ -42,7 +42,8 @@ function AutoCompleteField(props) {
42
42
  autoComplete: props.autoComplete,
43
43
  autoFetch: props.autoFetch,
44
44
  initialSelectedIds: props.selectedIds,
45
- query: query
45
+ query: query,
46
+ isFetchDisabled: props.isFetchDisabled
46
47
  }), items = _b.items, isLoading = _b.isLoading, sourceItems = _b.sourceItems;
47
48
  // Data select
48
49
  var _c = (0, hooks_1.useDataSelect)({
@@ -25,6 +25,13 @@ export interface IDateFieldProps extends IDateInputStateInput, IUiComponent, Pic
25
25
  * Опции маски для поля ввода
26
26
  */
27
27
  maskOptions?: MaskitoOptions;
28
+ /**
29
+ * Ограничение доступных дат.
30
+ */
31
+ disabledDays?: {
32
+ after?: Date;
33
+ before?: Date;
34
+ };
28
35
  [key: string]: any;
29
36
  }
30
37
  export interface IDateFieldViewProps extends IDateInputStateOutput, Pick<IDateFieldProps, 'size' | 'icon' | 'errors' | 'showRemove' | 'className' | 'calendarProps' | 'autoPositioning'> {
@@ -26,9 +26,16 @@ var enums_1 = require("../../../enums");
26
26
  * Поле ввода с выпадающим календарём для выбора даты
27
27
  */
28
28
  function DateField(props) {
29
+ var _a, _b, _c;
29
30
  var components = (0, hooks_1.useComponents)();
30
- var maskInputRef = (0, react_2.useMaskito)({ options: props.maskOptions });
31
- var _a = (0, useDateInputState_1["default"])({
31
+ var maskInputRef = (0, react_2.useMaskito)({
32
+ options: (_a = props.maskOptions) !== null && _a !== void 0 ? _a : (0, kit_1.maskitoDateOptionsGenerator)({
33
+ mode: 'dd/mm/yyyy',
34
+ separator: '.',
35
+ min: (_c = (_b = props.disabledDays) === null || _b === void 0 ? void 0 : _b.before) !== null && _c !== void 0 ? _c : null
36
+ })
37
+ });
38
+ var _d = (0, useDateInputState_1["default"])({
32
39
  input: props.input,
33
40
  disabled: props.disabled,
34
41
  onChange: props.onChange,
@@ -37,9 +44,13 @@ function DateField(props) {
37
44
  placeholder: props.placeholder,
38
45
  valueFormat: props.valueFormat,
39
46
  displayFormat: props.displayFormat
40
- }), onClear = _a.onClear, onClose = _a.onClose, isOpened = _a.isOpened, inputProps = _a.inputProps;
47
+ }), onClear = _d.onClear, onClose = _d.onClose, isOpened = _d.isOpened, inputProps = _d.inputProps;
41
48
  // Calendar props
42
- var calendarProps = (0, react_1.useMemo)(function () { return (__assign({ value: props.input.value, onChange: props.input.onChange, valueFormat: props.valueFormat }, props.calendarProps)); }, [props.calendarProps, props.input.onChange, props.input.value, props.valueFormat]);
49
+ var calendarProps = (0, react_1.useMemo)(function () {
50
+ var _a;
51
+ return (__assign({ value: props.input.value, onChange: props.input.onChange, valueFormat: props.valueFormat }, ((props === null || props === void 0 ? void 0 : props.disabledDays)
52
+ ? __assign(__assign({}, props.calendarProps), { pickerProps: __assign(__assign({}, (_a = props.calendarProps) === null || _a === void 0 ? void 0 : _a.pickerProps), { disabledDays: props.disabledDays }) }) : props.calendarProps)));
53
+ }, [props.calendarProps, props.disabledDays, props.input.onChange, props.input.value, props.valueFormat]);
43
54
  var viewProps = (0, react_1.useMemo)(function () { return (__assign(__assign({}, props.viewProps), { calendarProps: calendarProps, onClear: onClear, onClose: onClose, isOpened: isOpened, inputProps: inputProps, size: props.size, icon: props.icon, errors: props.errors, label: props.label, disabled: props.disabled, className: props.className, showRemove: props.showRemove, style: props.style, autoPositioning: props.autoPositioning, maskInputRef: maskInputRef, id: props.id })); }, [
44
55
  props.viewProps, props.size, props.icon, props.errors, props.label, props.disabled,
45
56
  props.className, props.showRemove, props.style, props.autoPositioning, props.id, calendarProps,
@@ -54,10 +65,6 @@ DateField.defaultProps = {
54
65
  required: false,
55
66
  showRemove: true,
56
67
  autoPositioning: true,
57
- valueFormat: 'YYYY-MM-DD',
58
- maskOptions: (0, kit_1.maskitoDateOptionsGenerator)({
59
- mode: 'dd/mm/yyyy',
60
- separator: '.'
61
- })
68
+ valueFormat: 'YYYY-MM-DD'
62
69
  };
63
70
  exports["default"] = (0, fieldWrapper_1["default"])(enums_1.FieldEnum.DATE_FIELD, DateField);
@@ -42,6 +42,9 @@ function useDateInputState(props) {
42
42
  }, [propsDisplayValue]);
43
43
  // Display input change handler
44
44
  var onDisplayValueChange = (0, react_1.useCallback)(function (value) {
45
+ if (typeof value !== 'string') {
46
+ return;
47
+ }
45
48
  value = value.replace(/[^0-9:., ]/g, '');
46
49
  setDisplayValue(value);
47
50
  var newValue = value;
@@ -91,6 +91,13 @@ export interface IDateRangeFieldProps extends IDateInputStateInput, Omit<IFieldW
91
91
  */
92
92
  to: MaskitoOptions;
93
93
  };
94
+ /**
95
+ * Ограничение доступных дат.
96
+ */
97
+ disabledDays?: {
98
+ after?: Date;
99
+ before?: Date;
100
+ };
94
101
  /**
95
102
  * Активирует логику:
96
103
  * - Если кликнули по дате начала или конца диапазона, то позволяем её изменить следующим кликом