@netless/fastboard-ui 1.0.0-canary.1 → 1.0.0-canary.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +888 -0
- package/dist/index.d.ts +95 -69
- package/dist/index.js +7315 -1969
- package/dist/index.mjs +7317 -1969
- package/dist/index.svelte.mjs +9976 -3731
- package/package.json +6 -3
- package/src/actions/scroll.ts +1 -1
- package/src/actions/tippy.ts +9 -5
- package/src/behaviors/apps.ts +1 -1
- package/src/components/Button/Button.svelte +4 -1
- package/src/components/Button/Button.svelte.d.ts +2 -2
- package/src/components/Fastboard/Fastboard.scss +2 -3
- package/src/components/Fastboard/Fastboard.svelte +3 -3
- package/src/components/Fastboard/{Fastboard.svelte.ts → Fastboard.svelte.d.ts} +1 -1
- package/src/components/Fastboard/ReplayFastboard.svelte +5 -2
- package/src/components/Fastboard/{ReplayFastboard.svelte.ts → ReplayFastboard.svelte.d.ts} +2 -1
- package/src/components/Icons/Curve.svelte +10 -0
- package/src/components/Icons/CurveDashed.svelte +16 -0
- package/src/components/Icons/Eraser.svelte +35 -1
- package/src/components/Icons/EraserFilled.svelte +2 -2
- package/src/components/Icons/PencilEraser.svelte +16 -0
- package/src/components/Icons/PencilEraserFilled.svelte +16 -0
- package/src/components/Icons/index.ts +11 -0
- package/src/components/PageControl/PageControl.svelte +2 -2
- package/src/components/Toolbar/README.md +1 -1
- package/src/components/Toolbar/Toolbar.scss +5 -5
- package/src/components/Toolbar/Toolbar.svelte +24 -10
- package/src/components/Toolbar/Toolbar.svelte.d.ts +18 -1
- package/src/components/Toolbar/components/Contents.scss +14 -3
- package/src/components/Toolbar/components/Contents.svelte +191 -22
- package/src/components/Toolbar/components/PencilEraserSize.svelte +27 -0
- package/src/components/Toolbar/components/Shapes.svelte +1 -0
- package/src/components/Toolbar/components/Slider.svelte +0 -1
- package/src/components/Toolbar/components/StrokeColor.svelte +1 -0
- package/src/components/Toolbar/components/TextColor.svelte +1 -0
- package/src/components/Toolbar/components/constants.ts +32 -4
- package/src/components/Toolbar/components/helper.ts +1 -1
- package/src/components/theme.scss +11 -4
- package/src/helpers/index.ts +72 -48
- package/src/index.ts +8 -4
- package/src/style.scss +4 -0
- package/src/typings.ts +16 -6
- package/dist/index.js.map +0 -1
- package/dist/index.mjs.map +0 -1
- package/dist/index.svelte.mjs.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,41 +1,24 @@
|
|
|
1
1
|
import { FastboardApp, FastboardPlayer } from '@netless/fastboard-core';
|
|
2
2
|
import { SvelteComponentTyped } from 'svelte';
|
|
3
3
|
|
|
4
|
-
interface
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
declare type Theme = "light" | "dark";
|
|
11
|
-
declare type Language = "en" | "zh-CN";
|
|
12
|
-
declare type IconType = "normal" | "disable";
|
|
13
|
-
declare type GenericIcon<K extends string, E extends string = IconType> = {
|
|
14
|
-
[key in K]: {
|
|
15
|
-
[kind in E]: string;
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
declare type I18nData<T extends string> = Record<Language, Record<T, string>>;
|
|
19
|
-
interface ToolbarConfig {
|
|
20
|
-
apps?: {
|
|
21
|
-
enable?: boolean;
|
|
22
|
-
};
|
|
4
|
+
declare interface PageControlProps {
|
|
5
|
+
app?: FastboardApp | null;
|
|
6
|
+
theme?: Theme;
|
|
7
|
+
language?: Language;
|
|
8
|
+
icons?: GenericIcon<"prev" | "next" | "add">;
|
|
23
9
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
enable?: boolean;
|
|
33
|
-
};
|
|
34
|
-
page_control?: {
|
|
35
|
-
enable?: boolean;
|
|
36
|
-
};
|
|
10
|
+
|
|
11
|
+
declare class PageControl extends SvelteComponentTyped<PageControlProps> {}
|
|
12
|
+
|
|
13
|
+
declare interface PlayerControlProps {
|
|
14
|
+
player?: FastboardPlayer | null;
|
|
15
|
+
theme?: Theme;
|
|
16
|
+
language?: Language;
|
|
17
|
+
icons?: GenericIcon<"play" | "pause" | "loading">;
|
|
37
18
|
}
|
|
38
19
|
|
|
20
|
+
declare class PlayerControl extends SvelteComponentTyped<PlayerControlProps> {}
|
|
21
|
+
|
|
39
22
|
declare interface RedoUndoProps {
|
|
40
23
|
app?: FastboardApp | null;
|
|
41
24
|
theme?: Theme;
|
|
@@ -45,14 +28,31 @@ declare interface RedoUndoProps {
|
|
|
45
28
|
|
|
46
29
|
declare class RedoUndo extends SvelteComponentTyped<RedoUndoProps> {}
|
|
47
30
|
|
|
48
|
-
declare interface
|
|
31
|
+
declare interface ToolbarConfig {
|
|
32
|
+
pencil?: {
|
|
33
|
+
dotted?: boolean;
|
|
34
|
+
};
|
|
35
|
+
apps?: {
|
|
36
|
+
enable?: boolean;
|
|
37
|
+
};
|
|
38
|
+
eraser?: {
|
|
39
|
+
/**
|
|
40
|
+
* - delete: remove shapes under eraser
|
|
41
|
+
* - pencil: wipe out part of strokes under eraser, like a real eraser
|
|
42
|
+
* - both (default): will show a panel to choose different behavior
|
|
43
|
+
*/
|
|
44
|
+
behavior?: "delete" | "pencil" | "both";
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
declare interface ToolbarProps {
|
|
49
49
|
app?: FastboardApp | null;
|
|
50
50
|
theme?: Theme;
|
|
51
51
|
language?: Language;
|
|
52
|
-
|
|
52
|
+
config?: ToolbarConfig;
|
|
53
53
|
}
|
|
54
54
|
|
|
55
|
-
declare class
|
|
55
|
+
declare class Toolbar extends SvelteComponentTyped<ToolbarProps> {}
|
|
56
56
|
|
|
57
57
|
declare interface ZoomControlProps {
|
|
58
58
|
app?: FastboardApp | null;
|
|
@@ -63,71 +63,97 @@ declare interface ZoomControlProps {
|
|
|
63
63
|
|
|
64
64
|
declare class ZoomControl extends SvelteComponentTyped<ZoomControlProps> {}
|
|
65
65
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
66
|
+
interface SvelteAction<T = void> {
|
|
67
|
+
(node: HTMLElement, parameters: T): void | {
|
|
68
|
+
update?: (parameters: T) => void;
|
|
69
|
+
destroy?: () => void;
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
type Theme = "light" | "dark";
|
|
73
|
+
type Language = "en" | "zh-CN";
|
|
74
|
+
type IconType = "normal" | "disable";
|
|
75
|
+
type GenericIcon<K extends string, E extends string = IconType> = {
|
|
76
|
+
[key in K]: {
|
|
77
|
+
[kind in E]: string;
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
type I18nData<T extends string> = Record<Language, Record<T, string>>;
|
|
81
|
+
interface FastboardUIConfig {
|
|
82
|
+
toolbar?: {
|
|
83
|
+
enable?: boolean;
|
|
84
|
+
} & ToolbarConfig;
|
|
85
|
+
redo_undo?: {
|
|
86
|
+
enable?: boolean;
|
|
87
|
+
icons?: RedoUndoProps["icons"];
|
|
88
|
+
};
|
|
89
|
+
zoom_control?: {
|
|
90
|
+
enable?: boolean;
|
|
91
|
+
icons?: ZoomControlProps["icons"];
|
|
92
|
+
};
|
|
93
|
+
page_control?: {
|
|
94
|
+
enable?: boolean;
|
|
95
|
+
icons?: PageControlProps["icons"];
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
interface ReplayFastboardUIConfig {
|
|
99
|
+
player_control?: {
|
|
100
|
+
enable?: boolean;
|
|
101
|
+
icons?: PlayerControlProps["icons"];
|
|
102
|
+
};
|
|
71
103
|
}
|
|
72
104
|
|
|
73
|
-
declare
|
|
74
|
-
|
|
75
|
-
declare interface PlayerControlProps {
|
|
105
|
+
declare interface ReplayFastboardProps {
|
|
76
106
|
player?: FastboardPlayer | null;
|
|
77
107
|
theme?: Theme;
|
|
78
108
|
language?: Language;
|
|
79
|
-
|
|
109
|
+
config?: ReplayFastboardUIConfig;
|
|
110
|
+
containerRef?: (container: HTMLDivElement | null) => void;
|
|
80
111
|
}
|
|
81
112
|
|
|
82
|
-
declare class
|
|
83
|
-
|
|
84
|
-
declare interface ReplayFastboardProps {
|
|
85
|
-
player?: FastboardPlayer | null;
|
|
86
|
-
theme?: Theme;
|
|
87
|
-
language?: Language;
|
|
88
|
-
containerRef?: (container: HTMLDivElement | null) => void;
|
|
89
|
-
}
|
|
90
|
-
declare class ReplayFastboard extends SvelteComponentTyped<ReplayFastboardProps> {
|
|
91
|
-
}
|
|
113
|
+
declare class ReplayFastboard extends SvelteComponentTyped<ReplayFastboardProps> {}
|
|
92
114
|
|
|
93
115
|
declare interface FastboardProps {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
}
|
|
100
|
-
declare class Fastboard extends SvelteComponentTyped<FastboardProps> {
|
|
116
|
+
app?: FastboardApp | null;
|
|
117
|
+
theme?: Theme;
|
|
118
|
+
language?: Language;
|
|
119
|
+
containerRef?: (container: HTMLDivElement | null) => void;
|
|
120
|
+
config?: FastboardUIConfig;
|
|
101
121
|
}
|
|
102
122
|
|
|
123
|
+
declare class Fastboard extends SvelteComponentTyped<FastboardProps> {}
|
|
124
|
+
|
|
103
125
|
interface UI {
|
|
104
126
|
/** render UI to div */
|
|
105
|
-
mount(div: Element, props?:
|
|
127
|
+
mount(div: Element, props?: FastboardProps): UI;
|
|
106
128
|
/** update UI (theme, language, etc.) */
|
|
107
|
-
update(props?:
|
|
129
|
+
update(props?: FastboardProps): void;
|
|
108
130
|
/** remove UI */
|
|
109
131
|
destroy(): void;
|
|
132
|
+
/** div == null ? destroy() : mount() */
|
|
133
|
+
setElement(div: Element | null): void;
|
|
110
134
|
}
|
|
111
135
|
/**
|
|
112
136
|
* @example
|
|
113
137
|
* let ui = createUI(fastboardApp, document.getElementById("whiteboard"));
|
|
114
138
|
* ui.update({ theme: "dark" })
|
|
115
139
|
*/
|
|
116
|
-
declare function createUI(app
|
|
140
|
+
declare function createUI(app?: FastboardApp | null, div?: Element): UI;
|
|
117
141
|
interface ReplayUI {
|
|
118
142
|
/** render UI to div */
|
|
119
|
-
mount(div: Element, props?:
|
|
143
|
+
mount(div: Element, props?: ReplayFastboardProps): ReplayUI;
|
|
120
144
|
/** update UI (theme, language, etc.) */
|
|
121
|
-
update(props?:
|
|
145
|
+
update(props?: ReplayFastboardProps): void;
|
|
122
146
|
/** remove UI */
|
|
123
147
|
destroy(): void;
|
|
148
|
+
/** div == null ? destroy() : mount() */
|
|
149
|
+
setElement(div: Element | null): void;
|
|
124
150
|
}
|
|
125
151
|
/**
|
|
126
152
|
* @example
|
|
127
153
|
* let ui = createReplayUI(fastboardPlayer, document.getElementById("whiteboard"));
|
|
128
154
|
* ui.update({ theme: "dark" })
|
|
129
155
|
*/
|
|
130
|
-
declare function createReplayUI(player
|
|
156
|
+
declare function createReplayUI(player?: FastboardPlayer | null, div?: Element): ReplayUI;
|
|
131
157
|
|
|
132
158
|
interface AppInToolbar {
|
|
133
159
|
kind: string;
|
|
@@ -148,6 +174,6 @@ declare class AppsInToolbar {
|
|
|
148
174
|
clear(): void;
|
|
149
175
|
}
|
|
150
176
|
|
|
151
|
-
declare const
|
|
177
|
+
declare const stockedApps: AppsInToolbar;
|
|
152
178
|
|
|
153
|
-
export { AppInToolbar, AppsInToolbar, Fastboard, FastboardProps, FastboardUIConfig, GenericIcon, I18nData, IconType, Language, PageControl, PageControlProps, PlayerControl, PlayerControlProps, RedoUndo, RedoUndoProps, ReplayFastboard, ReplayFastboardProps, ReplayUI, SvelteAction, Theme, Toolbar,
|
|
179
|
+
export { AppInToolbar, AppsInToolbar, Fastboard, FastboardProps, FastboardUIConfig, GenericIcon, I18nData, IconType, Language, PageControl, PageControlProps, PlayerControl, PlayerControlProps, RedoUndo, RedoUndoProps, ReplayFastboard, ReplayFastboardProps, ReplayFastboardUIConfig, ReplayUI, SvelteAction, Theme, Toolbar, ToolbarProps, UI, ZoomControl, ZoomControlProps, createReplayUI, createUI, stockedApps };
|