@pksep/yui 0.1.320 → 0.1.323
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/README.md +83 -83
- package/dist/common/extentions.d.ts +2 -0
- package/dist/components/ContentEditor/ContentEditor.vue.d.ts +6 -0
- package/dist/components/ContentEditor/interfaces/content-editor.d.ts +2 -0
- package/dist/components/Icon/enum/enum.d.ts +6 -2
- package/dist/components/Icon/icons.d.ts +4 -0
- package/dist/components/Slider/helpers/media-type.d.ts +4 -0
- package/dist/components/Slider/interface/interface.d.ts +5 -0
- package/dist/helpers/file/cache-pdf.d.ts +2 -0
- package/dist/helpers/file/download-file.d.ts +1 -1
- package/dist/sep-yui.mjs +22405 -22358
- package/dist/sep-yui.umd.cjs +316 -298
- package/dist/style.css +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,83 +1,83 @@
|
|
|
1
|
-
# SEP-YUI
|
|
2
|
-
|
|
3
|
-
**SEP-YUI** — библиотека UI-компонентов для Vue, созданная для решения задачи удобного переиспользования интерфейсных элементов между проектами.
|
|
4
|
-
Она позволяет использовать единый набор UI-решений, снижает связанность компонентов и упрощает поддержку.
|
|
5
|
-
|
|
6
|
-
## Основные преимущества
|
|
7
|
-
|
|
8
|
-
- Лёгкая интеграция в существующие проекты
|
|
9
|
-
- Низкий порог входа
|
|
10
|
-
- Гибкость и кастомизация
|
|
11
|
-
- Регулярные обновления и техническая поддержка
|
|
12
|
-
- Возможность комбинирования компонентов внутри проекта
|
|
13
|
-
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
## Установка и подключение
|
|
17
|
-
|
|
18
|
-
```bash
|
|
19
|
-
bun add @pksep/yui
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
#### 1. Для использования библиотеки в проекте, необходимо импортировать компоненты библиотеки в главный файл проекта main.ts таким образом:
|
|
23
|
-
|
|
24
|
-
```ts
|
|
25
|
-
main.ts;
|
|
26
|
-
import Ylibrary from '@pksep/yui';
|
|
27
|
-
app.use(Ylibrary);
|
|
28
|
-
app.mount('#app');
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
#### 1.1 Для выборочного импорта компонентов, можно использовать подключение такого вида.
|
|
32
|
-
|
|
33
|
-
```ts
|
|
34
|
-
main.ts;
|
|
35
|
-
import { Toggle } from '@pksep/yui';
|
|
36
|
-
app.component('Toggle', Toggle);
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
#### 2. Стили импортируются через путь "@pksep/yui/styles" также в файле main.ts
|
|
40
|
-
|
|
41
|
-
```ts
|
|
42
|
-
main.ts;
|
|
43
|
-
import '@pksep/yui/styles';
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
Стили библиотеки подключаются отдельно от JavaScript и уже содержат используемые
|
|
47
|
-
шрифты Inter Variable и Source Sans Pro. Если проект переопределяет токены или
|
|
48
|
-
стили компонентов, импортируйте собственный stylesheet после `@pksep/yui/styles`.
|
|
49
|
-
|
|
50
|
-
#### 3. Далее просто пишем название компонента внутри проекта и используем как при обычной разработке на Vue.
|
|
51
|
-
|
|
52
|
-
```vue
|
|
53
|
-
App.vue
|
|
54
|
-
<template>
|
|
55
|
-
<Toggle :disabled="true" :backgroundColor="'red'" />
|
|
56
|
-
</template>
|
|
57
|
-
<script setup lang="ts"></script>
|
|
58
|
-
<styles scoped></styles>
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
---
|
|
63
|
-
|
|
64
|
-
## Примеры и Storybook
|
|
65
|
-
|
|
66
|
-
Документация и примеры компонентов:
|
|
67
|
-
|
|
68
|
-
➡️ https://pksep.github.io/sep_yui
|
|
69
|
-
|
|
70
|
-
---
|
|
71
|
-
|
|
72
|
-
## Разработка
|
|
73
|
-
|
|
74
|
-
### Публикация пакетов
|
|
75
|
-
|
|
76
|
-
Обязательно через команду, так как генерятся changelog. Для этого используем:
|
|
77
|
-
[changeloggen](https://unjs.io/packages/changelogen/)
|
|
78
|
-
|
|
79
|
-
```sh
|
|
80
|
-
bun run publish:lib
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
Токен можно для публикации можно получить у менеджера.
|
|
1
|
+
# SEP-YUI
|
|
2
|
+
|
|
3
|
+
**SEP-YUI** — библиотека UI-компонентов для Vue, созданная для решения задачи удобного переиспользования интерфейсных элементов между проектами.
|
|
4
|
+
Она позволяет использовать единый набор UI-решений, снижает связанность компонентов и упрощает поддержку.
|
|
5
|
+
|
|
6
|
+
## Основные преимущества
|
|
7
|
+
|
|
8
|
+
- Лёгкая интеграция в существующие проекты
|
|
9
|
+
- Низкий порог входа
|
|
10
|
+
- Гибкость и кастомизация
|
|
11
|
+
- Регулярные обновления и техническая поддержка
|
|
12
|
+
- Возможность комбинирования компонентов внутри проекта
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Установка и подключение
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
bun add @pksep/yui
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
#### 1. Для использования библиотеки в проекте, необходимо импортировать компоненты библиотеки в главный файл проекта main.ts таким образом:
|
|
23
|
+
|
|
24
|
+
```ts
|
|
25
|
+
main.ts;
|
|
26
|
+
import Ylibrary from '@pksep/yui';
|
|
27
|
+
app.use(Ylibrary);
|
|
28
|
+
app.mount('#app');
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
#### 1.1 Для выборочного импорта компонентов, можно использовать подключение такого вида.
|
|
32
|
+
|
|
33
|
+
```ts
|
|
34
|
+
main.ts;
|
|
35
|
+
import { Toggle } from '@pksep/yui';
|
|
36
|
+
app.component('Toggle', Toggle);
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
#### 2. Стили импортируются через путь "@pksep/yui/styles" также в файле main.ts
|
|
40
|
+
|
|
41
|
+
```ts
|
|
42
|
+
main.ts;
|
|
43
|
+
import '@pksep/yui/styles';
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Стили библиотеки подключаются отдельно от JavaScript и уже содержат используемые
|
|
47
|
+
шрифты Inter Variable и Source Sans Pro. Если проект переопределяет токены или
|
|
48
|
+
стили компонентов, импортируйте собственный stylesheet после `@pksep/yui/styles`.
|
|
49
|
+
|
|
50
|
+
#### 3. Далее просто пишем название компонента внутри проекта и используем как при обычной разработке на Vue.
|
|
51
|
+
|
|
52
|
+
```vue
|
|
53
|
+
App.vue
|
|
54
|
+
<template>
|
|
55
|
+
<Toggle :disabled="true" :backgroundColor="'red'" />
|
|
56
|
+
</template>
|
|
57
|
+
<script setup lang="ts"></script>
|
|
58
|
+
<styles scoped></styles>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Примеры и Storybook
|
|
65
|
+
|
|
66
|
+
Документация и примеры компонентов:
|
|
67
|
+
|
|
68
|
+
➡️ https://pksep.github.io/sep_yui
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Разработка
|
|
73
|
+
|
|
74
|
+
### Публикация пакетов
|
|
75
|
+
|
|
76
|
+
Обязательно через команду, так как генерятся changelog. Для этого используем:
|
|
77
|
+
[changeloggen](https://unjs.io/packages/changelogen/)
|
|
78
|
+
|
|
79
|
+
```sh
|
|
80
|
+
bun run publish:lib
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Токен можно для публикации можно получить у менеджера.
|
|
@@ -3,6 +3,9 @@ import { IContentEditorSlots } from './interfaces/content-editor';
|
|
|
3
3
|
declare function __VLS_template(): Readonly<IContentEditorSlots> & IContentEditorSlots;
|
|
4
4
|
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
5
5
|
modelValue: import('vue').PropType<string>;
|
|
6
|
+
attachmentDraftKey: {
|
|
7
|
+
type: import('vue').PropType<string>;
|
|
8
|
+
};
|
|
6
9
|
layout: {
|
|
7
10
|
type: import('vue').PropType<"auto" | "desktop">;
|
|
8
11
|
};
|
|
@@ -129,6 +132,9 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
129
132
|
"slash-change": (search: string | null) => void;
|
|
130
133
|
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
131
134
|
modelValue: import('vue').PropType<string>;
|
|
135
|
+
attachmentDraftKey: {
|
|
136
|
+
type: import('vue').PropType<string>;
|
|
137
|
+
};
|
|
132
138
|
layout: {
|
|
133
139
|
type: import('vue').PropType<"auto" | "desktop">;
|
|
134
140
|
};
|
|
@@ -17,6 +17,8 @@ export interface IContentEditorSlots {
|
|
|
17
17
|
'desktop-right-action'?: () => unknown;
|
|
18
18
|
}
|
|
19
19
|
export interface IContentEditorProps {
|
|
20
|
+
/** Разделяет несохранённые вложения разных черновиков в одном экземпляре редактора. */
|
|
21
|
+
attachmentDraftKey?: string;
|
|
20
22
|
/** Keeps the full toolbar in narrow embedded surfaces. Default: responsive. */
|
|
21
23
|
layout?: 'auto' | 'desktop';
|
|
22
24
|
/** Hides attachment dialogs while an embedding surface is collapsed. Keeps files. */
|
|
@@ -169,6 +169,11 @@ export declare enum IconNameEnum {
|
|
|
169
169
|
hand = "hand",
|
|
170
170
|
checkCircle = "check-circle",
|
|
171
171
|
lightning = "lightning",
|
|
172
|
+
lightbulbFilament = "lightbulb-filament",
|
|
173
|
+
play = "play",
|
|
174
|
+
pause = "pause",
|
|
175
|
+
stop = "stop",
|
|
176
|
+
circle = "circle",
|
|
172
177
|
emojiRecent = "emoji-recent",
|
|
173
178
|
emojiSmileysPeople = "emoji-smileys-people",
|
|
174
179
|
emojiAnimalsNature = "emoji-animals-nature",
|
|
@@ -177,6 +182,5 @@ export declare enum IconNameEnum {
|
|
|
177
182
|
emojiSymbols = "emoji-symbols",
|
|
178
183
|
emojiObjects = "emoji-objects",
|
|
179
184
|
emojiFlags = "emoji-flags",
|
|
180
|
-
emojiTravelPlaces = "emoji-travel-places"
|
|
181
|
-
lightbulbFilament = "lightbulb-filament"
|
|
185
|
+
emojiTravelPlaces = "emoji-travel-places"
|
|
182
186
|
}
|
|
@@ -181,6 +181,10 @@ export declare const tableError: IVectorIcon;
|
|
|
181
181
|
export declare const rearrange: IVectorIcon;
|
|
182
182
|
export declare const hand: IVectorIcon;
|
|
183
183
|
export declare const checkCircle: IVectorIcon;
|
|
184
|
+
export declare const play: IVectorIcon;
|
|
185
|
+
export declare const pause: IVectorIcon;
|
|
186
|
+
export declare const stop: IVectorIcon;
|
|
187
|
+
export declare const circle: IVectorIcon;
|
|
184
188
|
export declare const lightning: IVectorIcon;
|
|
185
189
|
export declare const emojiRecent: IVectorIcon;
|
|
186
190
|
export declare const emojiSmileysPeople: IVectorIcon;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { SliderMediaType } from '../interface/interface';
|
|
2
|
+
|
|
3
|
+
export declare const isSliderImage: (path: string | null | undefined, mediaType?: SliderMediaType) => boolean;
|
|
4
|
+
export declare const isSliderVideo: (path: string | null | undefined, mediaType?: SliderMediaType) => boolean;
|
|
@@ -6,17 +6,22 @@ export type SliderPathError = {
|
|
|
6
6
|
message?: string;
|
|
7
7
|
};
|
|
8
8
|
export type SliderPath = string | SliderPathError;
|
|
9
|
+
export type SliderMediaType = 'image' | 'video';
|
|
9
10
|
export type SliderItem = {
|
|
10
11
|
path: SliderPath;
|
|
11
12
|
fallbackPath?: string;
|
|
12
13
|
name?: string;
|
|
13
14
|
file?: File;
|
|
15
|
+
downloadPath?: string;
|
|
16
|
+
mediaType?: SliderMediaType;
|
|
14
17
|
};
|
|
15
18
|
export type IFile = {
|
|
16
19
|
path: string;
|
|
17
20
|
fallbackPath?: string;
|
|
18
21
|
name?: string;
|
|
19
22
|
file?: File;
|
|
23
|
+
downloadPath?: string;
|
|
24
|
+
mediaType?: SliderMediaType;
|
|
20
25
|
};
|
|
21
26
|
export interface ISliderProps extends IDataTestIdProp {
|
|
22
27
|
items: SliderItem[];
|
|
@@ -3,6 +3,7 @@ import { PDFDocumentProxy, PDFPageProxy } from 'pdfjs-dist';
|
|
|
3
3
|
declare class CachePdf {
|
|
4
4
|
private cache;
|
|
5
5
|
private cachePage;
|
|
6
|
+
private pending;
|
|
6
7
|
/**
|
|
7
8
|
* Записывает в кэш загруженные документ pdf файла
|
|
8
9
|
* @param key
|
|
@@ -15,6 +16,7 @@ declare class CachePdf {
|
|
|
15
16
|
* @returns
|
|
16
17
|
*/
|
|
17
18
|
getCache(key: string): PDFDocumentProxy | undefined;
|
|
19
|
+
getOrLoad(key: string, load: () => Promise<PDFDocumentProxy>): Promise<PDFDocumentProxy>;
|
|
18
20
|
/**
|
|
19
21
|
* Записывает в кэш страницу
|
|
20
22
|
* @param key
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const downloadFile: (path: string, name?: string, file?: File) => Promise<void>;
|
|
1
|
+
declare const downloadFile: (path: string, name?: string, file?: File, downloadPath?: string) => Promise<void>;
|
|
2
2
|
export default downloadFile;
|