artalk 2.8.6 → 2.8.7

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/main.d.cts CHANGED
@@ -1,6 +1,3 @@
1
- import { marked } from 'marked';
2
- import { MarkedOptions } from 'marked';
3
-
4
1
  /**
5
2
  * 通用操作按钮
6
3
  */
@@ -9,7 +6,7 @@ declare class ActionBtn {
9
6
  $el: HTMLElement;
10
7
  isLoading: boolean;
11
8
  msgRecTimer?: number;
12
- msgRecTimerFunc?: Function;
9
+ msgRecTimerFunc?: () => void;
13
10
  get isMessaging(): boolean;
14
11
  isConfirming: boolean;
15
12
  confirmRecTimer?: number;
@@ -20,7 +17,7 @@ declare class ActionBtn {
20
17
  /** 获取按钮文字(动态/静态) */
21
18
  private getText;
22
19
  /** 设置点击事件 */
23
- setClick(func: Function): void;
20
+ setClick(func: () => void): void;
24
21
  /** 文字刷新(动态/静态) */
25
22
  updateText(text?: (() => string) | string): void;
26
23
  /** 设置加载状态 */
@@ -32,7 +29,7 @@ declare class ActionBtn {
32
29
  /** 成功消息 */
33
30
  setSuccess(text: string): void;
34
31
  /** 设置消息 */
35
- setMsg(text: string, className?: string, duringTime?: number, after?: Function): void;
32
+ setMsg(text: string, className?: string, duringTime?: number, after?: () => void): void;
36
33
  /** 设置消息复原操作定时器 */
37
34
  private setMsgRecTimer;
38
35
  /** 立刻触发器复原定时器 */
@@ -1204,8 +1201,8 @@ declare interface ApiHandlerPayload {
1204
1201
  img_data?: string;
1205
1202
  iframe?: string;
1206
1203
  };
1207
- need_login: {};
1208
- need_auth_login: {};
1204
+ need_login: object;
1205
+ need_auth_login: object;
1209
1206
  }
1210
1207
 
1211
1208
  declare interface ApiHandlers {
@@ -1333,6 +1330,8 @@ export declare interface ArtalkConfig {
1333
1330
  countEl: string;
1334
1331
  /** PV 数绑定元素 Selector */
1335
1332
  pvEl: string;
1333
+ /** 统计组件 PageKey 属性名 */
1334
+ statPageKeyAttr: string;
1336
1335
  /** 夜间模式 */
1337
1336
  darkMode: boolean | 'auto';
1338
1337
  /** 请求超时(单位:秒) */
@@ -1366,7 +1365,7 @@ export declare interface ArtalkConfig {
1366
1365
  /** Replacer for marked */
1367
1366
  markedReplacers?: ((raw: string) => string)[];
1368
1367
  /** Marked options */
1369
- markedOptions?: MarkedOptions;
1368
+ markedOptions?: any;
1370
1369
  /** 列表请求参数修改器 */
1371
1370
  listFetchParamsModifier?: (params: any) => void;
1372
1371
  remoteConfModifier?: (conf: Partial<ArtalkConfig>) => void;
@@ -1620,7 +1619,7 @@ declare type CommentNode_2 = {
1620
1619
 
1621
1620
  declare interface CommentOptions {
1622
1621
  onAfterRender?: () => void;
1623
- onDelete?: Function;
1622
+ onDelete?: (c: CommentNode) => void;
1624
1623
  /** The comment being replied to (linked comment) */
1625
1624
  replyTo?: CommentData;
1626
1625
  flatMode: boolean;
@@ -1685,7 +1684,7 @@ export declare interface ContextApi extends EventManagerFuncs<EventPayloadMap> {
1685
1684
  /** 配置对象 */
1686
1685
  conf: ArtalkConfig;
1687
1686
  /** marked 依赖对象 */
1688
- getMarked(): TMarked | undefined;
1687
+ getMarked(): any | undefined;
1689
1688
  /** 获取 API 以供 HTTP 请求 */
1690
1689
  getApi(): Api;
1691
1690
  /** Get API handlers */
@@ -2071,6 +2070,7 @@ declare interface EntityCookedNotify {
2071
2070
 
2072
2071
  declare interface EntityCookedPage {
2073
2072
  admin_only: boolean;
2073
+ date: string;
2074
2074
  id: number;
2075
2075
  key: string;
2076
2076
  pv: number;
@@ -2311,7 +2311,7 @@ declare interface HandlerParamsSiteUpdate {
2311
2311
  }
2312
2312
 
2313
2313
  declare interface HandlerParamsTransferImport {
2314
- /** Automatically answer yes for all questions. */
2314
+ /** Automatically answer yes for all questions */
2315
2315
  assumeyes?: boolean;
2316
2316
  /** The JSON data */
2317
2317
  json_data?: string;
@@ -2321,6 +2321,8 @@ declare interface HandlerParamsTransferImport {
2321
2321
  target_site_name?: string;
2322
2322
  /** The target site url */
2323
2323
  target_site_url?: string;
2324
+ /** Keep domain */
2325
+ url_keep_domain?: boolean;
2324
2326
  /** Enable URL resolver */
2325
2327
  url_resolver?: boolean;
2326
2328
  }
@@ -2515,6 +2517,7 @@ declare interface HandlerResponseNotifyList {
2515
2517
 
2516
2518
  declare interface HandlerResponsePageFetch {
2517
2519
  admin_only: boolean;
2520
+ date: string;
2518
2521
  id: number;
2519
2522
  key: string;
2520
2523
  pv: number;
@@ -2547,6 +2550,7 @@ declare interface HandlerResponsePagePV {
2547
2550
 
2548
2551
  declare interface HandlerResponsePageUpdate {
2549
2552
  admin_only: boolean;
2553
+ date: string;
2550
2554
  id: number;
2551
2555
  key: string;
2552
2556
  pv: number;
@@ -3037,8 +3041,6 @@ declare type TKeysOnlyReturn<T extends TObjectWithFuncs, V> = {
3037
3041
  [K in keyof T]: ReturnType<T[K]> extends V ? K : never;
3038
3042
  }[keyof T];
3039
3043
 
3040
- declare type TMarked = typeof marked;
3041
-
3042
3044
  declare type TObjectWithFuncs = {
3043
3045
  [k: string]: (...args: any) => any;
3044
3046
  };
package/dist/main.d.ts CHANGED
@@ -1,6 +1,3 @@
1
- import { marked } from 'marked';
2
- import { MarkedOptions } from 'marked';
3
-
4
1
  /**
5
2
  * 通用操作按钮
6
3
  */
@@ -9,7 +6,7 @@ declare class ActionBtn {
9
6
  $el: HTMLElement;
10
7
  isLoading: boolean;
11
8
  msgRecTimer?: number;
12
- msgRecTimerFunc?: Function;
9
+ msgRecTimerFunc?: () => void;
13
10
  get isMessaging(): boolean;
14
11
  isConfirming: boolean;
15
12
  confirmRecTimer?: number;
@@ -20,7 +17,7 @@ declare class ActionBtn {
20
17
  /** 获取按钮文字(动态/静态) */
21
18
  private getText;
22
19
  /** 设置点击事件 */
23
- setClick(func: Function): void;
20
+ setClick(func: () => void): void;
24
21
  /** 文字刷新(动态/静态) */
25
22
  updateText(text?: (() => string) | string): void;
26
23
  /** 设置加载状态 */
@@ -32,7 +29,7 @@ declare class ActionBtn {
32
29
  /** 成功消息 */
33
30
  setSuccess(text: string): void;
34
31
  /** 设置消息 */
35
- setMsg(text: string, className?: string, duringTime?: number, after?: Function): void;
32
+ setMsg(text: string, className?: string, duringTime?: number, after?: () => void): void;
36
33
  /** 设置消息复原操作定时器 */
37
34
  private setMsgRecTimer;
38
35
  /** 立刻触发器复原定时器 */
@@ -1204,8 +1201,8 @@ declare interface ApiHandlerPayload {
1204
1201
  img_data?: string;
1205
1202
  iframe?: string;
1206
1203
  };
1207
- need_login: {};
1208
- need_auth_login: {};
1204
+ need_login: object;
1205
+ need_auth_login: object;
1209
1206
  }
1210
1207
 
1211
1208
  declare interface ApiHandlers {
@@ -1333,6 +1330,8 @@ export declare interface ArtalkConfig {
1333
1330
  countEl: string;
1334
1331
  /** PV 数绑定元素 Selector */
1335
1332
  pvEl: string;
1333
+ /** 统计组件 PageKey 属性名 */
1334
+ statPageKeyAttr: string;
1336
1335
  /** 夜间模式 */
1337
1336
  darkMode: boolean | 'auto';
1338
1337
  /** 请求超时(单位:秒) */
@@ -1366,7 +1365,7 @@ export declare interface ArtalkConfig {
1366
1365
  /** Replacer for marked */
1367
1366
  markedReplacers?: ((raw: string) => string)[];
1368
1367
  /** Marked options */
1369
- markedOptions?: MarkedOptions;
1368
+ markedOptions?: any;
1370
1369
  /** 列表请求参数修改器 */
1371
1370
  listFetchParamsModifier?: (params: any) => void;
1372
1371
  remoteConfModifier?: (conf: Partial<ArtalkConfig>) => void;
@@ -1620,7 +1619,7 @@ declare type CommentNode_2 = {
1620
1619
 
1621
1620
  declare interface CommentOptions {
1622
1621
  onAfterRender?: () => void;
1623
- onDelete?: Function;
1622
+ onDelete?: (c: CommentNode) => void;
1624
1623
  /** The comment being replied to (linked comment) */
1625
1624
  replyTo?: CommentData;
1626
1625
  flatMode: boolean;
@@ -1685,7 +1684,7 @@ export declare interface ContextApi extends EventManagerFuncs<EventPayloadMap> {
1685
1684
  /** 配置对象 */
1686
1685
  conf: ArtalkConfig;
1687
1686
  /** marked 依赖对象 */
1688
- getMarked(): TMarked | undefined;
1687
+ getMarked(): any | undefined;
1689
1688
  /** 获取 API 以供 HTTP 请求 */
1690
1689
  getApi(): Api;
1691
1690
  /** Get API handlers */
@@ -2071,6 +2070,7 @@ declare interface EntityCookedNotify {
2071
2070
 
2072
2071
  declare interface EntityCookedPage {
2073
2072
  admin_only: boolean;
2073
+ date: string;
2074
2074
  id: number;
2075
2075
  key: string;
2076
2076
  pv: number;
@@ -2311,7 +2311,7 @@ declare interface HandlerParamsSiteUpdate {
2311
2311
  }
2312
2312
 
2313
2313
  declare interface HandlerParamsTransferImport {
2314
- /** Automatically answer yes for all questions. */
2314
+ /** Automatically answer yes for all questions */
2315
2315
  assumeyes?: boolean;
2316
2316
  /** The JSON data */
2317
2317
  json_data?: string;
@@ -2321,6 +2321,8 @@ declare interface HandlerParamsTransferImport {
2321
2321
  target_site_name?: string;
2322
2322
  /** The target site url */
2323
2323
  target_site_url?: string;
2324
+ /** Keep domain */
2325
+ url_keep_domain?: boolean;
2324
2326
  /** Enable URL resolver */
2325
2327
  url_resolver?: boolean;
2326
2328
  }
@@ -2515,6 +2517,7 @@ declare interface HandlerResponseNotifyList {
2515
2517
 
2516
2518
  declare interface HandlerResponsePageFetch {
2517
2519
  admin_only: boolean;
2520
+ date: string;
2518
2521
  id: number;
2519
2522
  key: string;
2520
2523
  pv: number;
@@ -2547,6 +2550,7 @@ declare interface HandlerResponsePagePV {
2547
2550
 
2548
2551
  declare interface HandlerResponsePageUpdate {
2549
2552
  admin_only: boolean;
2553
+ date: string;
2550
2554
  id: number;
2551
2555
  key: string;
2552
2556
  pv: number;
@@ -3037,8 +3041,6 @@ declare type TKeysOnlyReturn<T extends TObjectWithFuncs, V> = {
3037
3041
  [K in keyof T]: ReturnType<T[K]> extends V ? K : never;
3038
3042
  }[keyof T];
3039
3043
 
3040
- declare type TMarked = typeof marked;
3041
-
3042
3044
  declare type TObjectWithFuncs = {
3043
3045
  [k: string]: (...args: any) => any;
3044
3046
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "artalk",
3
- "version": "2.8.6",
3
+ "version": "2.8.7",
4
4
  "description": "A self-hosted comment system",
5
5
  "keywords": [
6
6
  "comment-system",
@@ -108,19 +108,17 @@
108
108
  "marked": "^12.0.2"
109
109
  },
110
110
  "scripts": {
111
- "build": "vite build && pnpm build:lite && pnpm build:i18n",
111
+ "dev": "vite",
112
+ "build": "pnpm build:main && pnpm build:lite && pnpm build:i18n",
113
+ "build:main": "tsc --noEmit && vite build",
112
114
  "build:lite": "cross-env ARTALK_LITE=1 vite build",
113
115
  "build:i18n": "tsx scripts/build-i18n.ts",
114
- "copy:deploy": "cp -r dist deploy && cp CNAME deploy",
115
- "predeploy": "pnpm build && pnpm build:demo && pnpm copy:deploy",
116
- "deploy": "gh-pages -d deploy",
117
- "dev": "vite",
116
+ "preview": "vite preview",
118
117
  "test": "vitest",
119
118
  "coverage": "vitest run --coverage",
120
- "lint": "eslint './src/**/*.{js,ts}'",
121
- "attw": "pnpx @arethetypeswrong/cli --pack .",
122
- "serve": "vite preview",
123
119
  "test:e2e": "playwright test",
124
- "test:report": "playwright show-report"
120
+ "test:e2e-report": "playwright show-report",
121
+ "test:attw": "pnpx @arethetypeswrong/cli --pack .",
122
+ "lint": "eslint ."
125
123
  }
126
124
  }