@snabcentr/vue-ui-lib 4.22.0 → 4.22.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.
Files changed (24) hide show
  1. package/dist/manifest.json +2 -2
  2. package/dist/release_notes.tmp +3 -3
  3. package/dist/sc-vue-ui-lib.css +1 -1
  4. package/dist/sc-vue-ui-lib.js +10084 -9530
  5. package/dist/sc-vue-ui-lib.js.map +1 -1
  6. package/dist/sc-vue-ui-lib.umd.cjs +104 -104
  7. package/dist/sc-vue-ui-lib.umd.cjs.map +1 -1
  8. package/dist/src/components/catalog/category-collapse-item.vue.d.ts +50 -17
  9. package/dist/src/components/catalog/category-collapse.vue.d.ts +27 -2
  10. package/dist/src/components/collapse/collapse-item.vue.d.ts +50 -7
  11. package/dist/src/components/dates/date-range/button-presets.d.ts +9 -0
  12. package/dist/src/components/dates/date-range/date-range-dialog.vue.d.ts +1 -1
  13. package/dist/src/components/dates/date-range/date-range-helper.d.ts +48 -1
  14. package/dist/src/components/dates/date-range/day-range-grid.vue.d.ts +40 -0
  15. package/dist/src/components/dates/date-range/interfaces/i-calendar-month.d.ts +18 -0
  16. package/dist/src/components/dates/date-range/interfaces/i-day-cell.d.ts +21 -0
  17. package/dist/src/components/dates/date-range/interfaces/i-range-selection.d.ts +40 -0
  18. package/dist/src/components/dates/date-range/interfaces/i-standard-period-group-options.d.ts +18 -0
  19. package/dist/src/components/dates/date-range/month-range-grid.vue.d.ts +9 -2
  20. package/dist/src/components/dates/date-range/quick-periods-settings.vue.d.ts +29 -0
  21. package/dist/src/components/dates/date-range/quick-periods.vue.d.ts +30 -0
  22. package/dist/src/components/dates/date-range/use-range-selection.d.ts +12 -0
  23. package/dist/src/test/component-test-support.d.ts +40 -0
  24. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { ProductData } from '@snabcentr/common-lib';
1
+ import { CategoryData, ProductData } from '@snabcentr/common-lib';
2
2
  import { ICategoryCollapseItemProperties } from '../../catalog/interfaces/properties/i-category-collapse-item-properties';
3
3
  /**
4
4
  * Компонент элемента сворачиваемого списка категорий.
@@ -16,13 +16,13 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<IC
16
16
  showProductEditButton: import('../..').ButtonStates | import('../..').ButtonStateFunction<ProductData>;
17
17
  productContextButtonsConfig: (product: ProductData) => Array<import('naive-ui').DropdownOption | import('naive-ui').DropdownGroupOption | import('naive-ui').DropdownDividerOption | import('naive-ui').DropdownRenderOption>;
18
18
  isProductItemSelected: import('../..').ButtonStateFunction<ProductData>;
19
- isCategoryItemSelected: import('../..').ButtonStates | import('../..').ButtonStateFunction<import('@snabcentr/common-lib').CategoryData>;
20
- showCategoryHideForClientButton: import('../..').ButtonStates | import('../..').ButtonStateFunction<import('@snabcentr/common-lib').CategoryData>;
21
- showCategoryRequiredButton: import('../..').ButtonStates | import('../..').ButtonStateFunction<import('@snabcentr/common-lib').CategoryData>;
22
- showCategoryPinButton: import('../..').ButtonStates | import('../..').ButtonStateFunction<import('@snabcentr/common-lib').CategoryData>;
23
- showCategoryEditButton: import('../..').ButtonStates | import('../..').ButtonStateFunction<import('@snabcentr/common-lib').CategoryData>;
24
- categoryContextButtonsConfig: (category: import('@snabcentr/common-lib').CategoryData) => Array<import('naive-ui').DropdownOption | import('naive-ui').DropdownGroupOption | import('naive-ui').DropdownDividerOption | import('naive-ui').DropdownRenderOption>;
25
- showConfigurator: boolean | ((category: import('@snabcentr/common-lib').CategoryData) => boolean);
19
+ isCategoryItemSelected: import('../..').ButtonStates | import('../..').ButtonStateFunction<CategoryData>;
20
+ showCategoryHideForClientButton: import('../..').ButtonStates | import('../..').ButtonStateFunction<CategoryData>;
21
+ showCategoryRequiredButton: import('../..').ButtonStates | import('../..').ButtonStateFunction<CategoryData>;
22
+ showCategoryPinButton: import('../..').ButtonStates | import('../..').ButtonStateFunction<CategoryData>;
23
+ showCategoryEditButton: import('../..').ButtonStates | import('../..').ButtonStateFunction<CategoryData>;
24
+ categoryContextButtonsConfig: (category: CategoryData) => Array<import('naive-ui').DropdownOption | import('naive-ui').DropdownGroupOption | import('naive-ui').DropdownDividerOption | import('naive-ui').DropdownRenderOption>;
25
+ showConfigurator: boolean | ((category: CategoryData) => boolean);
26
26
  canShowConfigurator: boolean | (() => boolean);
27
27
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
28
28
  'collapse-item-reference': ({
@@ -101,17 +101,50 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<IC
101
101
  collapse: () => void;
102
102
  expanded: Readonly<import('vue').Ref<boolean, boolean>>;
103
103
  }> & {} & import('vue').ComponentCustomProperties & {} & {
104
- $slots: {
105
- arrow?(_: {}): any;
106
- 'pre-arrow'?(_: {}): any;
107
- header?(_: {}): any;
108
- 'sub-header'?(_: {}): any;
109
- 'header-extra'?(_: {}): any;
110
- default?(_: {}): any;
104
+ $slots: Readonly<{
105
+ arrow: () => void;
106
+ 'pre-arrow': () => void;
107
+ header: () => void;
108
+ 'sub-header': () => void;
109
+ 'header-extra': () => void;
110
+ default: () => void;
111
+ }> & {
112
+ arrow: () => void;
113
+ 'pre-arrow': () => void;
114
+ header: () => void;
115
+ 'sub-header': () => void;
116
+ 'header-extra': () => void;
117
+ default: () => void;
111
118
  };
112
119
  }) | null;
113
- }, HTMLDivElement>, {
114
- default?(_: {}): any;
120
+ }, HTMLDivElement>, Readonly<{
121
+ /**
122
+ * Содержимое категории.
123
+ */
124
+ default: () => void;
125
+ /**
126
+ * Дополнительное содержимое заголовка элемента категории.
127
+ *
128
+ * @param props Параметры слота.
129
+ * @param props.categoryItem Данные категории, для которой рендерится блок.
130
+ */
131
+ 'header-extra': (props: {
132
+ categoryItem: CategoryData;
133
+ }) => void;
134
+ }> & {
135
+ /**
136
+ * Содержимое категории.
137
+ */
138
+ default: () => void;
139
+ /**
140
+ * Дополнительное содержимое заголовка элемента категории.
141
+ *
142
+ * @param props Параметры слота.
143
+ * @param props.categoryItem Данные категории, для которой рендерится блок.
144
+ */
145
+ 'header-extra': (props: {
146
+ categoryItem: CategoryData;
147
+ }) => void;
115
148
  }>;
116
149
  export default _default;
117
150
  type __VLS_WithTemplateSlots<T, S> = T & {
@@ -3,7 +3,7 @@ import { CategoryData, SearchResult } from '@snabcentr/common-lib';
3
3
  /**
4
4
  * Компонент списка сворачиваемых элементов каталога.
5
5
  */
6
- declare const _default: import('vue').DefineComponent<ICategoryCollapseProperties, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<ICategoryCollapseProperties> & Readonly<{}>, {
6
+ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<ICategoryCollapseProperties, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<ICategoryCollapseProperties> & Readonly<{}>, {
7
7
  loading: boolean;
8
8
  showSlugs: boolean;
9
9
  showProperties: boolean;
@@ -22,5 +22,30 @@ declare const _default: import('vue').DefineComponent<ICategoryCollapsePropertie
22
22
  showCategoryEditButton: import('../..').ButtonStates | import('../..').ButtonStateFunction<CategoryData>;
23
23
  categoryContextButtonsConfig: (category: CategoryData) => Array<import('naive-ui').DropdownOption | import('naive-ui').DropdownGroupOption | import('naive-ui').DropdownDividerOption | import('naive-ui').DropdownRenderOption>;
24
24
  client: import('@snabcentr/common-lib').IClient;
25
- }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
25
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>, Readonly<{
26
+ /**
27
+ * Дополнительное содержимое заголовка элемента категории.
28
+ *
29
+ * @param props Параметры слота.
30
+ * @param props.categoryItem Данные категории, для которой рендерится блок.
31
+ */
32
+ 'header-extra': (props: {
33
+ categoryItem: CategoryData;
34
+ }) => void;
35
+ }> & {
36
+ /**
37
+ * Дополнительное содержимое заголовка элемента категории.
38
+ *
39
+ * @param props Параметры слота.
40
+ * @param props.categoryItem Данные категории, для которой рендерится блок.
41
+ */
42
+ 'header-extra': (props: {
43
+ categoryItem: CategoryData;
44
+ }) => void;
45
+ }>;
26
46
  export default _default;
47
+ type __VLS_WithTemplateSlots<T, S> = T & {
48
+ new (): {
49
+ $slots: S;
50
+ };
51
+ };
@@ -52,13 +52,56 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<{
52
52
  name: string | number;
53
53
  disabled: boolean;
54
54
  title: string;
55
- }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>, {
56
- arrow?(_: {}): any;
57
- 'pre-arrow'?(_: {}): any;
58
- header?(_: {}): any;
59
- 'sub-header'?(_: {}): any;
60
- 'header-extra'?(_: {}): any;
61
- default?(_: {}): any;
55
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>, Readonly<{
56
+ /**
57
+ * Значок скрытия и отображения содержимого.
58
+ */
59
+ arrow: () => void;
60
+ /**
61
+ * Зона значков слева от заголовка.
62
+ */
63
+ 'pre-arrow': () => void;
64
+ /**
65
+ * Основной заголовок элемента.
66
+ */
67
+ header: () => void;
68
+ /**
69
+ * Вспомогательный заголовок под основным.
70
+ */
71
+ 'sub-header': () => void;
72
+ /**
73
+ * Дополнительное содержимое заголовка справа.
74
+ */
75
+ 'header-extra': () => void;
76
+ /**
77
+ * Содержимое элемента, отображаемое в развёрнутом состоянии.
78
+ */
79
+ default: () => void;
80
+ }> & {
81
+ /**
82
+ * Значок скрытия и отображения содержимого.
83
+ */
84
+ arrow: () => void;
85
+ /**
86
+ * Зона значков слева от заголовка.
87
+ */
88
+ 'pre-arrow': () => void;
89
+ /**
90
+ * Основной заголовок элемента.
91
+ */
92
+ header: () => void;
93
+ /**
94
+ * Вспомогательный заголовок под основным.
95
+ */
96
+ 'sub-header': () => void;
97
+ /**
98
+ * Дополнительное содержимое заголовка справа.
99
+ */
100
+ 'header-extra': () => void;
101
+ /**
102
+ * Содержимое элемента, отображаемое в развёрнутом состоянии.
103
+ */
104
+ default: () => void;
62
105
  }>;
63
106
  export default _default;
64
107
  type __VLS_WithTemplateSlots<T, S> = T & {
@@ -0,0 +1,9 @@
1
+ import { ButtonProps } from 'naive-ui';
2
+ /**
3
+ * Пресет внешнего вида кнопок быстрого выбора периода: крупные скруглённые кнопки со светлой рамкой.
4
+ */
5
+ export declare const QUICK_PERIOD_BUTTON_THEME: ButtonProps['themeOverrides'];
6
+ /**
7
+ * Пресет внешнего вида кнопок листания сеток периода: квадратные кнопки со светлой рамкой.
8
+ */
9
+ export declare const GRID_ARROW_BUTTON_THEME: ButtonProps['themeOverrides'];
@@ -2,7 +2,7 @@ import { IClearable } from '../../../properties/interfaces/i-clearable';
2
2
  import { IDateRangeDisabled } from '../../../properties/interfaces/i-date-range-disabled';
3
3
  import { IDatePeriod, ILabeledPeriod } from '@snabcentr/common-lib';
4
4
  /**
5
- * Диалог «Выберите период» с сеткой месяцев и стандартными периодами.
5
+ * Диалог «Выберите период» с быстрым выбором, сеткой месяцев, календарём дней и стандартными периодами.
6
6
  */
7
7
  declare const _default: import('vue').DefineComponent<IClearable & IDateRangeDisabled & {
8
8
  /**
@@ -1,12 +1,45 @@
1
- import { IDatePeriod } from '@snabcentr/common-lib';
1
+ import { IDatePeriod, ILabeledPeriod, IStandardPeriod } from '@snabcentr/common-lib';
2
+ import { SelectGroupOption, SelectOption } from 'naive-ui';
2
3
  /**
3
4
  * Ключ хранилища для последнего выбранного вида диалога выбора периода.
4
5
  */
5
6
  export declare const DATE_RANGE_DIALOG_MODE_STORAGE_KEY = "date-range.dialog.mode";
7
+ /**
8
+ * Ключ хранилища для последнего выбранного масштаба сетки диалога выбора периода: по месяцам или по дням.
9
+ */
10
+ export declare const DATE_RANGE_DIALOG_SCALE_STORAGE_KEY = "date-range.dialog.scale";
11
+ /**
12
+ * Ключ хранилища для набора периодов быстрого выбора.
13
+ */
14
+ export declare const DATE_RANGE_QUICK_PERIODS_STORAGE_KEY = "date-range.quick-periods";
15
+ /**
16
+ * Набор периодов быстрого выбора по умолчанию — ключи стандартных периодов.
17
+ */
18
+ export declare const DEFAULT_QUICK_PERIOD_KEYS: string[];
6
19
  /**
7
20
  * Краткие названия месяцев для сеток выбора: заданы явно и не зависят от локали календаря.
8
21
  */
9
22
  export declare const MONTH_LABELS: string[];
23
+ /**
24
+ * Полные названия месяцев для заголовков календаря.
25
+ */
26
+ export declare const MONTH_NAMES: string[];
27
+ /**
28
+ * Краткие названия дней недели, неделя начинается с понедельника.
29
+ */
30
+ export declare const WEEKDAY_LABELS: string[];
31
+ /**
32
+ * Возвращает сквозной индекс календарного дня: число дней от точки отсчёта, без влияния перевода часов.
33
+ *
34
+ * @param date Дата.
35
+ */
36
+ export declare const dayIndex: (date: Date) => number;
37
+ /**
38
+ * Возвращает начало дня по его сквозному индексу.
39
+ *
40
+ * @param index Сквозной индекс дня.
41
+ */
42
+ export declare const dateFromDayIndex: (index: number) => Date;
10
43
  /**
11
44
  * Нормализует границы периода: «от» приводится к началу дня, «до» — к концу дня, границы могут быть
12
45
  * не заданы по отдельности (полуоткрытый период). Инвертированные границы переставляются местами;
@@ -22,3 +55,17 @@ export declare const normalizePeriod: (from?: Date | null, to?: Date | null, loc
22
55
  from?: boolean;
23
56
  to?: boolean;
24
57
  }) => IDatePeriod;
58
+ /**
59
+ * Преобразует периоды в опции списка: значение опции — ключ периода, сам период доступен в поле item.
60
+ *
61
+ * @param periods Периоды по ключам.
62
+ */
63
+ export declare const periodsToOptions: (periods: Record<string, ILabeledPeriod>) => SelectOption[];
64
+ /**
65
+ * Возвращает разделы списка стандартных периодов одной группы: группа «Прочее» разбивается
66
+ * на разделы с подзаголовками, остальные группы — один раздел без подзаголовка.
67
+ *
68
+ * @param periods Стандартные периоды по ключам.
69
+ * @param groupKey Ключ группы.
70
+ */
71
+ export declare const standardPeriodSections: (periods: Record<string, IStandardPeriod>, groupKey: string) => SelectGroupOption[];
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Календарь дней на несколько месяцев подряд с выбором диапазона двумя кликами, протяжкой или клавиатурой.
3
+ */
4
+ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<{
5
+ /**
6
+ * Начало выбранного периода.
7
+ */
8
+ from?: Date | null;
9
+ /**
10
+ * Окончание выбранного периода.
11
+ */
12
+ to?: Date | null;
13
+ }, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
14
+ select: (value: {
15
+ from: Date;
16
+ to: Date;
17
+ }) => any;
18
+ }, string, import('vue').PublicProps, Readonly<{
19
+ /**
20
+ * Начало выбранного периода.
21
+ */
22
+ from?: Date | null;
23
+ /**
24
+ * Окончание выбранного периода.
25
+ */
26
+ to?: Date | null;
27
+ }> & Readonly<{
28
+ onSelect?: ((value: {
29
+ from: Date;
30
+ to: Date;
31
+ }) => any) | undefined;
32
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>, {
33
+ actions?(_: {}): any;
34
+ }>;
35
+ export default _default;
36
+ type __VLS_WithTemplateSlots<T, S> = T & {
37
+ new (): {
38
+ $slots: S;
39
+ };
40
+ };
@@ -0,0 +1,18 @@
1
+ import { IDayCell } from './i-day-cell';
2
+ /**
3
+ * Месяц календарной сетки: заголовок и ячейки дней.
4
+ */
5
+ export interface ICalendarMonth {
6
+ /**
7
+ * Ключ месяца для рендера списка.
8
+ */
9
+ key: string;
10
+ /**
11
+ * Заголовок месяца, например «Май 2025».
12
+ */
13
+ title: string;
14
+ /**
15
+ * Ячейки дней: шесть недель по семь дней, начиная с понедельника.
16
+ */
17
+ cells: IDayCell[];
18
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Ячейка дня в календарной сетке месяца.
3
+ */
4
+ export interface IDayCell {
5
+ /**
6
+ * Сквозной индекс дня.
7
+ */
8
+ index: number;
9
+ /**
10
+ * Число месяца.
11
+ */
12
+ day: number;
13
+ /**
14
+ * Признак принадлежности дня показываемому месяцу; дни соседних месяцев заполняют сетку и недоступны для выбора.
15
+ */
16
+ isCurrentMonth: boolean;
17
+ /**
18
+ * Признак сегодняшнего дня.
19
+ */
20
+ isToday: boolean;
21
+ }
@@ -0,0 +1,40 @@
1
+ import { ComputedRef } from 'vue';
2
+ /**
3
+ * Состояние и обработчики выбора диапазона ячеек сетки по их сквозным индексам.
4
+ */
5
+ export interface IRangeSelection {
6
+ /**
7
+ * Активный подсвечиваемый диапазон: протяжка, затем предпросмотр после первого клика,
8
+ * затем диапазон из значения периода.
9
+ */
10
+ activeRange: ComputedRef<[number, number] | null>;
11
+ /**
12
+ * Возвращает положение ячейки в активном диапазоне: граница, середина либо null вне диапазона.
13
+ *
14
+ * @param index Сквозной индекс ячейки.
15
+ */
16
+ cellPosition(index: number): 'bound' | 'in-range' | null;
17
+ /**
18
+ * Обработчик зажатия указателя на ячейке.
19
+ *
20
+ * @param index Сквозной индекс ячейки.
21
+ */
22
+ pointerDownHandler(index: number): void;
23
+ /**
24
+ * Обработчик наведения указателя на ячейку: двигает предпросмотр цепочки; при зажатом указателе
25
+ * переводит выбор в режим протяжки.
26
+ *
27
+ * @param index Сквозной индекс ячейки.
28
+ */
29
+ pointerEnterHandler(index: number): void;
30
+ /**
31
+ * Обработчик ухода указателя с сетки: снимает предпросмотр наведения.
32
+ */
33
+ pointerLeaveHandler(): void;
34
+ /**
35
+ * Обработчик выбора ячейки с клавиатуры по логике пары кликов «первый / второй».
36
+ *
37
+ * @param index Сквозной индекс ячейки.
38
+ */
39
+ selectHandler(index: number): void;
40
+ }
@@ -0,0 +1,18 @@
1
+ import { SelectGroupOption } from 'naive-ui';
2
+ /**
3
+ * Группа стандартных периодов с разделами опций для списков выбора.
4
+ */
5
+ export interface IStandardPeriodGroupOptions {
6
+ /**
7
+ * Ключ группы.
8
+ */
9
+ key: string;
10
+ /**
11
+ * Название группы.
12
+ */
13
+ label: string;
14
+ /**
15
+ * Разделы группы с опциями периодов.
16
+ */
17
+ sections: SelectGroupOption[];
18
+ }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Сетка месяцев на три года с выбором диапазона двумя кликами, протяжкой или клавиатурой.
3
3
  */
4
- declare const _default: import('vue').DefineComponent<{
4
+ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<{
5
5
  /**
6
6
  * Начало выбранного периода.
7
7
  */
@@ -29,5 +29,12 @@ declare const _default: import('vue').DefineComponent<{
29
29
  from: Date;
30
30
  to: Date;
31
31
  }) => any) | undefined;
32
- }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
32
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>, {
33
+ actions?(_: {}): any;
34
+ }>;
33
35
  export default _default;
36
+ type __VLS_WithTemplateSlots<T, S> = T & {
37
+ new (): {
38
+ $slots: S;
39
+ };
40
+ };
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Диалог настройки набора периодов быстрого выбора.
3
+ */
4
+ declare const _default: import('vue').DefineComponent<{
5
+ /**
6
+ * Признак отображения диалога.
7
+ */
8
+ show: boolean;
9
+ /**
10
+ * Ключи стандартных периодов, показываемых в быстром выборе сейчас, — начальное состояние галочек.
11
+ */
12
+ selectedKeys: string[];
13
+ }, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
14
+ "update:show": (show: boolean) => any;
15
+ save: (keys: string[]) => any;
16
+ }, string, import('vue').PublicProps, Readonly<{
17
+ /**
18
+ * Признак отображения диалога.
19
+ */
20
+ show: boolean;
21
+ /**
22
+ * Ключи стандартных периодов, показываемых в быстром выборе сейчас, — начальное состояние галочек.
23
+ */
24
+ selectedKeys: string[];
25
+ }> & Readonly<{
26
+ "onUpdate:show"?: ((show: boolean) => any) | undefined;
27
+ onSave?: ((keys: string[]) => any) | undefined;
28
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
29
+ export default _default;
@@ -0,0 +1,30 @@
1
+ import { SelectOption } from 'naive-ui';
2
+ /**
3
+ * Быстрый выбор периода: строка кнопок выбранных стандартных периодов с настройкой набора.
4
+ */
5
+ declare const _default: import('vue').DefineComponent<{
6
+ /**
7
+ * Начало текущего периода — для подсветки совпадающего варианта.
8
+ */
9
+ from?: Date | null;
10
+ /**
11
+ * Окончание текущего периода — для подсветки совпадающего варианта.
12
+ */
13
+ to?: Date | null;
14
+ }, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
15
+ apply: (option: SelectOption) => any;
16
+ preview: (option?: SelectOption | undefined) => any;
17
+ }, string, import('vue').PublicProps, Readonly<{
18
+ /**
19
+ * Начало текущего периода — для подсветки совпадающего варианта.
20
+ */
21
+ from?: Date | null;
22
+ /**
23
+ * Окончание текущего периода — для подсветки совпадающего варианта.
24
+ */
25
+ to?: Date | null;
26
+ }> & Readonly<{
27
+ onApply?: ((option: SelectOption) => any) | undefined;
28
+ onPreview?: ((option?: SelectOption | undefined) => any) | undefined;
29
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
30
+ export default _default;
@@ -0,0 +1,12 @@
1
+ import { Ref } from 'vue';
2
+ import { IRangeSelection } from './interfaces/i-range-selection';
3
+ /**
4
+ * Выбор диапазона ячеек сетки по сквозным индексам: парой кликов «первый / второй», протяжкой
5
+ * или с клавиатуры. Первый клик фиксирует якорь и отдаёт черновой диапазон из одной ячейки,
6
+ * второй — завершает диапазон; отпускание указателя слушается на window, чтобы отпускание
7
+ * вне сетки не подвешивало выбор.
8
+ *
9
+ * @param selectedRange Диапазон из значения периода — подсвечивается, пока нет незавершённого выбора.
10
+ * @param complete Обработчик завершённого выбора; получает упорядоченные индексы границ.
11
+ */
12
+ export declare const useRangeSelection: (selectedRange: Ref<[number, number] | null>, complete: (start: number, end: number) => void) => IRangeSelection;
@@ -69,6 +69,46 @@ export declare const componentMountOptions: {
69
69
  inheritAttrs: boolean;
70
70
  template: string;
71
71
  };
72
+ IconMdiMagnifyPlusOutline: {
73
+ inheritAttrs: boolean;
74
+ template: string;
75
+ };
76
+ IconMdiMagnifyMinusOutline: {
77
+ inheritAttrs: boolean;
78
+ template: string;
79
+ };
80
+ IconMdiCalendarMonthOutline: {
81
+ inheritAttrs: boolean;
82
+ template: string;
83
+ };
84
+ IconMdiChartBar: {
85
+ inheritAttrs: boolean;
86
+ template: string;
87
+ };
88
+ IconMdiChartLine: {
89
+ inheritAttrs: boolean;
90
+ template: string;
91
+ };
92
+ IconMdiChevronLeft: {
93
+ inheritAttrs: boolean;
94
+ template: string;
95
+ };
96
+ IconMdiChevronRight: {
97
+ inheritAttrs: boolean;
98
+ template: string;
99
+ };
100
+ IconMdiCogOutline: {
101
+ inheritAttrs: boolean;
102
+ template: string;
103
+ };
104
+ IconMdiCalendarTodayOutline: {
105
+ inheritAttrs: boolean;
106
+ template: string;
107
+ };
108
+ IconMdiCalendarWeekOutline: {
109
+ inheritAttrs: boolean;
110
+ template: string;
111
+ };
72
112
  };
73
113
  };
74
114
  };
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "keywords": [],
5
5
  "author": "Sergey S. Smirnov <dev@snabcentr.com>",
6
6
  "type": "module",
7
- "version": "4.22.0",
7
+ "version": "4.22.2",
8
8
  "license": "ISC",
9
9
  "scripts": {
10
10
  "dev": "vite",