artalk 2.7.2 → 2.8.0

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 (161) hide show
  1. package/LICENSE +21 -0
  2. package/dist/Artalk.cjs +11 -0
  3. package/dist/Artalk.cjs.map +1 -0
  4. package/dist/Artalk.css +1 -1
  5. package/dist/Artalk.iife.js +10 -1
  6. package/dist/Artalk.iife.js.map +1 -1
  7. package/dist/Artalk.js +10 -1
  8. package/dist/Artalk.js.map +1 -1
  9. package/dist/{Artalk.es.js → Artalk.mjs} +2552 -1857
  10. package/dist/Artalk.mjs.map +1 -0
  11. package/dist/ArtalkLite.cjs +11 -0
  12. package/dist/ArtalkLite.cjs.map +1 -0
  13. package/dist/ArtalkLite.css +1 -1
  14. package/dist/ArtalkLite.iife.js +10 -1
  15. package/dist/ArtalkLite.iife.js.map +1 -1
  16. package/dist/ArtalkLite.js +10 -1
  17. package/dist/ArtalkLite.js.map +1 -1
  18. package/dist/{ArtalkLite.es.js → ArtalkLite.mjs} +2150 -1261
  19. package/dist/ArtalkLite.mjs.map +1 -0
  20. package/dist/i18n/jp.cjs +1 -0
  21. package/dist/i18n/jp.d.cts +3 -0
  22. package/dist/i18n/jp.d.ts +3 -0
  23. package/dist/i18n/jp.js +1 -1
  24. package/dist/i18n/jp.mjs +94 -0
  25. package/dist/i18n/zh-TW.cjs +1 -0
  26. package/dist/i18n/zh-TW.d.cts +3 -0
  27. package/dist/i18n/zh-TW.d.ts +3 -0
  28. package/dist/i18n/zh-TW.js +1 -1
  29. package/dist/i18n/zh-TW.mjs +94 -0
  30. package/dist/main.d.cts +2812 -0
  31. package/dist/main.d.ts +2812 -0
  32. package/package.json +62 -30
  33. package/dist/Artalk.es.js.map +0 -1
  34. package/dist/ArtalkLite.es.js.map +0 -1
  35. package/dist/src/api/_base.d.ts +0 -17
  36. package/dist/src/api/_options.d.ts +0 -24
  37. package/dist/src/api/_request.d.ts +0 -12
  38. package/dist/src/api/admin.d.ts +0 -10
  39. package/dist/src/api/captcha.d.ts +0 -14
  40. package/dist/src/api/comment.d.ts +0 -29
  41. package/dist/src/api/index.d.ts +0 -29
  42. package/dist/src/api/page.d.ts +0 -22
  43. package/dist/src/api/site.d.ts +0 -17
  44. package/dist/src/api/system.d.ts +0 -33
  45. package/dist/src/api/upload.d.ts +0 -11
  46. package/dist/src/api/user.d.ts +0 -42
  47. package/dist/src/artalk.d.ts +0 -35
  48. package/dist/src/comment/actions.d.ts +0 -17
  49. package/dist/src/comment/comment.d.ts +0 -66
  50. package/dist/src/comment/height-limit.d.ts +0 -30
  51. package/dist/src/comment/index.d.ts +0 -2
  52. package/dist/src/comment/render.d.ts +0 -46
  53. package/dist/src/comment/renders/actions.d.ts +0 -5
  54. package/dist/src/comment/renders/avatar.d.ts +0 -5
  55. package/dist/src/comment/renders/content.d.ts +0 -5
  56. package/dist/src/comment/renders/header.d.ts +0 -5
  57. package/dist/src/comment/renders/index.d.ts +0 -2
  58. package/dist/src/comment/renders/pending.d.ts +0 -5
  59. package/dist/src/comment/renders/reply-at.d.ts +0 -5
  60. package/dist/src/comment/renders/reply-to.d.ts +0 -5
  61. package/dist/src/components/action-btn.d.ts +0 -50
  62. package/dist/src/components/checker/admin.d.ts +0 -3
  63. package/dist/src/components/checker/captcha-renders.d.ts +0 -5
  64. package/dist/src/components/checker/captcha.d.ts +0 -3
  65. package/dist/src/components/checker/index.d.ts +0 -53
  66. package/dist/src/components/dialog.d.ts +0 -16
  67. package/dist/src/components/error-dialog.d.ts +0 -8
  68. package/dist/src/components/pagination.d.ts +0 -31
  69. package/dist/src/components/read-more-btn.d.ts +0 -33
  70. package/dist/src/config.d.ts +0 -24
  71. package/dist/src/context.d.ts +0 -45
  72. package/dist/src/data.d.ts +0 -27
  73. package/dist/src/defaults.d.ts +0 -3
  74. package/dist/src/editor/editor.d.ts +0 -31
  75. package/dist/src/editor/state.d.ts +0 -20
  76. package/dist/src/editor/ui.d.ts +0 -25
  77. package/dist/src/i18n/en.d.ts +0 -73
  78. package/dist/src/i18n/external.d.ts +0 -74
  79. package/dist/src/i18n/index.d.ts +0 -236
  80. package/dist/src/i18n/jp.d.ts +0 -73
  81. package/dist/src/i18n/zh-CN.d.ts +0 -3
  82. package/dist/src/i18n/zh-TW.d.ts +0 -73
  83. package/dist/src/layer/index.d.ts +0 -4
  84. package/dist/src/layer/layer-manager.d.ts +0 -9
  85. package/dist/src/layer/layer.d.ts +0 -12
  86. package/dist/src/layer/scrollbar-helper.d.ts +0 -5
  87. package/dist/src/layer/sidebar-layer.d.ts +0 -20
  88. package/dist/src/layer/wrap.d.ts +0 -13
  89. package/dist/src/lib/component.d.ts +0 -7
  90. package/dist/src/lib/detect.d.ts +0 -10
  91. package/dist/src/lib/event-manager.d.ts +0 -28
  92. package/dist/src/lib/highlight.d.ts +0 -1
  93. package/dist/src/lib/marked-renderer.d.ts +0 -4
  94. package/dist/src/lib/marked.d.ts +0 -11
  95. package/dist/src/lib/sanitizer.d.ts +0 -1
  96. package/dist/src/lib/ui.d.ts +0 -24
  97. package/dist/src/lib/user.d.ts +0 -21
  98. package/dist/src/lib/utils.d.ts +0 -41
  99. package/dist/src/list/comment.d.ts +0 -3
  100. package/dist/src/list/layout.d.ts +0 -23
  101. package/dist/src/list/list.d.ts +0 -14
  102. package/dist/src/list/nest.d.ts +0 -10
  103. package/dist/src/list/page.d.ts +0 -2
  104. package/dist/src/list/paginator/index.d.ts +0 -25
  105. package/dist/src/list/paginator/read-more.d.ts +0 -18
  106. package/dist/src/list/paginator/up-down.d.ts +0 -14
  107. package/dist/src/main.d.ts +0 -7
  108. package/dist/src/plugins/admin-only-elem.d.ts +0 -2
  109. package/dist/src/plugins/conf-remoter.d.ts +0 -2
  110. package/dist/src/plugins/dark-mode.d.ts +0 -2
  111. package/dist/src/plugins/editor/_kit.d.ts +0 -33
  112. package/dist/src/plugins/editor/_plug.d.ts +0 -29
  113. package/dist/src/plugins/editor/_sample.d.ts +0 -5
  114. package/dist/src/plugins/editor/closable.d.ts +0 -7
  115. package/dist/src/plugins/editor/emoticons.d.ts +0 -30
  116. package/dist/src/plugins/editor/header-event.d.ts +0 -6
  117. package/dist/src/plugins/editor/header-link.d.ts +0 -6
  118. package/dist/src/plugins/editor/header-user.d.ts +0 -16
  119. package/dist/src/plugins/editor/index.d.ts +0 -6
  120. package/dist/src/plugins/editor/local-storage.d.ts +0 -6
  121. package/dist/src/plugins/editor/mover.d.ts +0 -6
  122. package/dist/src/plugins/editor/preview.d.ts +0 -7
  123. package/dist/src/plugins/editor/state-edit.d.ts +0 -11
  124. package/dist/src/plugins/editor/state-reply.d.ts +0 -8
  125. package/dist/src/plugins/editor/submit-add.d.ts +0 -18
  126. package/dist/src/plugins/editor/submit-btn.d.ts +0 -5
  127. package/dist/src/plugins/editor/submit.d.ts +0 -17
  128. package/dist/src/plugins/editor/textarea.d.ts +0 -8
  129. package/dist/src/plugins/editor/upload.d.ts +0 -9
  130. package/dist/src/plugins/editor-kit.d.ts +0 -42
  131. package/dist/src/plugins/index.d.ts +0 -2
  132. package/dist/src/plugins/list/copyright.d.ts +0 -2
  133. package/dist/src/plugins/list/count.d.ts +0 -2
  134. package/dist/src/plugins/list/dropdown.d.ts +0 -2
  135. package/dist/src/plugins/list/error-dialog.d.ts +0 -2
  136. package/dist/src/plugins/list/fetch.d.ts +0 -2
  137. package/dist/src/plugins/list/goto-first.d.ts +0 -3
  138. package/dist/src/plugins/list/goto.d.ts +0 -2
  139. package/dist/src/plugins/list/index.d.ts +0 -3
  140. package/dist/src/plugins/list/loading.d.ts +0 -2
  141. package/dist/src/plugins/list/no-comment.d.ts +0 -2
  142. package/dist/src/plugins/list/reach-bottom.d.ts +0 -2
  143. package/dist/src/plugins/list/sidebar-btn.d.ts +0 -2
  144. package/dist/src/plugins/list/time-ticking.d.ts +0 -3
  145. package/dist/src/plugins/list/unread-badge.d.ts +0 -2
  146. package/dist/src/plugins/list/unread.d.ts +0 -2
  147. package/dist/src/plugins/list/with-editor.d.ts +0 -2
  148. package/dist/src/plugins/markdown.d.ts +0 -2
  149. package/dist/src/plugins/stat.d.ts +0 -13
  150. package/dist/src/plugins/version-check.d.ts +0 -2
  151. package/dist/src/service.d.ts +0 -36
  152. package/dist/tests/e2e/comment-add.spec.d.ts +0 -1
  153. package/dist/types/config.d.ts +0 -110
  154. package/dist/types/context.d.ts +0 -62
  155. package/dist/types/data.d.ts +0 -194
  156. package/dist/types/editor.d.ts +0 -76
  157. package/dist/types/event.d.ts +0 -39
  158. package/dist/types/global.d.ts +0 -1
  159. package/dist/types/index.d.ts +0 -7
  160. package/dist/types/plugin.d.ts +0 -2
  161. package/dist/types/sidebar.d.ts +0 -3
@@ -1,194 +0,0 @@
1
- export interface CommentData {
2
- /** 评论 ID */
3
- id: number;
4
- /** 评论正文 */
5
- content: string;
6
- /** 用户昵称 */
7
- nick: string;
8
- /** 用户邮箱 (该字段仅管理员可见) */
9
- email?: string;
10
- /** 用户邮箱(已加密) */
11
- email_encrypted: string;
12
- /** 用户链接 */
13
- link: string;
14
- /** 回复目标评论 ID */
15
- rid: number;
16
- /** User Agent */
17
- ua: string;
18
- /** 评论日期 */
19
- date: string;
20
- /** 是否折叠 */
21
- is_collapsed?: boolean;
22
- /** 是否待审 */
23
- is_pending?: boolean;
24
- /** 是否置顶 */
25
- is_pinned?: boolean;
26
- /** 是否为管理员 */
27
- is_admin?: boolean;
28
- /** 徽章文字 */
29
- badge_name?: string;
30
- /** 徽章颜色 */
31
- badge_color?: string;
32
- /** IP 归属地 */
33
- ip_region?: string;
34
- /** 是否允许回复 */
35
- is_allow_reply?: boolean;
36
- /** 评论页面 key */
37
- page_key: string;
38
- /** 评论页面 url */
39
- page_url?: string;
40
- /** 是否可见 */
41
- visible: boolean;
42
- /** 站点名(用于隔离) */
43
- site_name: string;
44
- /** 赞同数 */
45
- vote_up: number;
46
- /** 反对数 */
47
- vote_down: number;
48
- }
49
- export interface ListData {
50
- /** 评论数据 */
51
- comments: CommentData[];
52
- /** 根评论总数 */
53
- total_roots: number;
54
- /** 评论总数(包括所有子评论) */
55
- total: number;
56
- /** 页面信息 */
57
- page: PageData;
58
- /** 站点信息 */
59
- site: SiteData;
60
- /** 未读的 Notifies */
61
- unread: NotifyData[];
62
- /** 未读计数 */
63
- unread_count: number;
64
- /** API 版本 */
65
- api_version: ApiVersionData;
66
- /** 后端配置 */
67
- conf: any;
68
- }
69
- export interface PageData {
70
- /** 页面 ID */
71
- id: number;
72
- /** 页面唯一标识符 */
73
- key: string;
74
- /** 页面标题 */
75
- title: string;
76
- /** 页面 url */
77
- url: string;
78
- /** 仅管理员可评 */
79
- admin_only: boolean;
80
- /** 站点名(用于隔离) */
81
- site_name: string;
82
- /** 赞同数 */
83
- vote_up: number;
84
- /** 反对数 */
85
- vote_down: number;
86
- }
87
- export interface SiteData {
88
- /** 站点 ID */
89
- id: number;
90
- /** 站点名 */
91
- name: string;
92
- /** 站点 URLs */
93
- urls: string[];
94
- /** 站点 URLs(原始字符串) */
95
- urls_raw: string;
96
- /** 站点主 URL */
97
- first_url: string;
98
- }
99
- export interface UserData {
100
- /** 用户 ID */
101
- id: number;
102
- /** 用户名 */
103
- name: string;
104
- /** 邮箱 */
105
- email: string;
106
- /** 链接 */
107
- link: string;
108
- /** 徽章名称 */
109
- badge_name: string;
110
- /** 徽章颜色 */
111
- badge_color: string;
112
- /** 是否属于管理员 */
113
- is_admin: boolean;
114
- /** 所属站点名 */
115
- site_names: string[];
116
- /** 所属站点名 (字符串) */
117
- site_names_raw: string;
118
- /** 是否允许接收邮件通知 */
119
- receive_email: boolean;
120
- }
121
- export interface UserDataForAdmin extends UserData {
122
- /** 最后一次操作 IP */
123
- last_ip: string;
124
- /** 最后一次操作 UA */
125
- last_ua: string;
126
- /** 是否存在于配置文件中 */
127
- is_in_conf: boolean;
128
- /** 评论数 */
129
- comment_count: number;
130
- /** 密码 */
131
- password: string;
132
- }
133
- export interface NotifyData {
134
- /** 通知 ID */
135
- id: number;
136
- /** 用户 ID */
137
- user_id: number;
138
- /** 评论 ID */
139
- comment_id: number;
140
- /** 是否已读 */
141
- is_read: boolean;
142
- /** 是否已发送邮件通知 */
143
- is_emailed: boolean;
144
- /** 标为已读地址 */
145
- read_link: string;
146
- }
147
- export type EmoticonGrpData = {
148
- name: string;
149
- type: 'emoticon' | 'image' | 'emoji';
150
- items: {
151
- key: string;
152
- val: string;
153
- }[];
154
- };
155
- export type EmoticonListData = EmoticonGrpData[];
156
- export interface ApiVersionData {
157
- /** API 程序名 */
158
- app: string;
159
- /** API 程序版本号 */
160
- version: string;
161
- /** API 程序 CommitHash */
162
- commit_hash: string;
163
- }
164
- export interface ListFetchParams {
165
- offset: number;
166
- limit: number;
167
- flatMode: boolean;
168
- paramsModifier?: (p: any) => void;
169
- onSuccess?: (data: ListData) => void;
170
- onError?: (err: any) => void;
171
- }
172
- export interface ListLastFetchData {
173
- params: ListFetchParams;
174
- data?: ListData;
175
- }
176
- export interface DataManagerApi {
177
- getLoading(): boolean;
178
- setLoading(val: boolean): void;
179
- getListLastFetch(): ListLastFetchData | undefined;
180
- setListLastFetch(val: ListLastFetchData): void;
181
- getComments(): CommentData[];
182
- findComment(id: number): CommentData | undefined;
183
- fetchComments(params: Partial<ListFetchParams>): void;
184
- loadComments(comments: CommentData[]): void;
185
- clearComments(): void;
186
- insertComment(comment: CommentData): void;
187
- updateComment(comment: CommentData): void;
188
- deleteComment(id: number): void;
189
- getUnreads(): NotifyData[];
190
- updateUnreads(unreads: NotifyData[]): void;
191
- getPage(): PageData | undefined;
192
- updatePage(pageData: PageData): void;
193
- }
194
- export type NotifyLevel = "i" | "s" | "w" | "e";
@@ -1,76 +0,0 @@
1
- import type { CommentData, NotifyLevel } from '.';
2
- import type Component from '../src/lib/component';
3
- import type { EditorUI } from '../src/editor/ui';
4
- export type EditorState = 'reply' | 'edit' | 'normal';
5
- export interface EditorApi extends Component {
6
- getUI(): EditorUI;
7
- /**
8
- * Get the header input elements
9
- */
10
- getHeaderInputEls(): Record<string, HTMLInputElement>;
11
- /**
12
- * Set content
13
- */
14
- setContent(val: string): void;
15
- /**
16
- * Insert content
17
- */
18
- insertContent(val: string): void;
19
- /**
20
- * Get the final content
21
- *
22
- * This function returns the raw content or the content transformed through a plugin hook.
23
- */
24
- getContentFinal(): string;
25
- /**
26
- * Get the raw content which is inputed by user
27
- */
28
- getContentRaw(): string;
29
- /**
30
- * Get the HTML format content which is rendered by marked (a markdown parser)
31
- */
32
- getContentMarked(): string;
33
- /**
34
- * Get editor current state
35
- */
36
- getState(): EditorState;
37
- /**
38
- * Focus editor
39
- */
40
- focus(): void;
41
- /**
42
- * Reset editor
43
- */
44
- reset(): void;
45
- /**
46
- * Reset editor UI
47
- *
48
- * call it will move editor to the initial position
49
- */
50
- resetState(): void;
51
- /**
52
- * Submit comment
53
- */
54
- submit(): void;
55
- /**
56
- * Show notification message
57
- */
58
- showNotify(msg: string, type: NotifyLevel): void;
59
- /**
60
- * Show loading on editor
61
- */
62
- showLoading(): void;
63
- /**
64
- * Hide loading on editor
65
- */
66
- hideLoading(): void;
67
- /**
68
- * Start replaying a comment
69
- */
70
- setReply(commentData: CommentData, $comment: HTMLElement, scroll?: boolean): void;
71
- /**
72
- * Start editing a comment
73
- */
74
- setEditComment(commentData: CommentData, $comment: HTMLElement): void;
75
- }
76
- export default EditorApi;
@@ -1,39 +0,0 @@
1
- import type Comment from '../src/comment';
2
- import { CommentData, ListData, ListFetchParams, NotifyData, PageData } from './data';
3
- import { ArtalkConfig, LocalUser } from './config';
4
- interface ErrorData {
5
- msg: string;
6
- data?: any;
7
- }
8
- interface ListFetchedArgs {
9
- params: Partial<ListFetchParams>;
10
- data?: ListData;
11
- error?: ErrorData;
12
- }
13
- /** EventName to EventPayload Type */
14
- export interface EventPayloadMap {
15
- 'inited': undefined;
16
- 'destroy': undefined;
17
- 'list-fetch': Partial<ListFetchParams>;
18
- 'list-fetched': ListFetchedArgs;
19
- 'list-load': CommentData[];
20
- 'list-loaded': CommentData[];
21
- 'list-error': ErrorData;
22
- 'list-goto-first': undefined;
23
- 'list-reach-bottom': undefined;
24
- 'comment-inserted': CommentData;
25
- 'comment-updated': CommentData;
26
- 'comment-deleted': CommentData;
27
- 'comment-rendered': Comment;
28
- 'unreads-updated': NotifyData[];
29
- 'list-goto': number;
30
- 'page-loaded': PageData;
31
- 'editor-submit': undefined;
32
- 'editor-submitted': undefined;
33
- 'user-changed': LocalUser;
34
- 'conf-loaded': ArtalkConfig;
35
- 'dark-mode-changed': boolean | 'auto';
36
- 'sidebar-show': undefined;
37
- 'sidebar-hide': undefined;
38
- }
39
- export {};
@@ -1 +0,0 @@
1
- declare const ARTALK_LITE: boolean
@@ -1,7 +0,0 @@
1
- export * from './config';
2
- export * from './data';
3
- export * from './context';
4
- export * from './editor';
5
- export * from './event';
6
- export * from './plugin';
7
- export * from './sidebar';
@@ -1,2 +0,0 @@
1
- import { ContextApi } from './context';
2
- export type ArtalkPlugin = (ctx: ContextApi) => void;
@@ -1,3 +0,0 @@
1
- export interface SidebarShowPayload {
2
- view?: 'comments' | 'sites' | 'pages' | 'transfer';
3
- }