@jayfong/x-server 2.2.14 → 2.2.16

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/lib/_cjs/index.js CHANGED
@@ -250,6 +250,14 @@ Object.keys(_x).forEach(function (key) {
250
250
  exports[key] = _x[key];
251
251
  });
252
252
 
253
+ var _index = require("./types/index");
254
+
255
+ Object.keys(_index).forEach(function (key) {
256
+ if (key === "default" || key === "__esModule") return;
257
+ if (key in exports && exports[key] === _index[key]) return;
258
+ exports[key] = _index[key];
259
+ });
260
+
253
261
  var _models = require(".x/models");
254
262
 
255
263
  Object.keys(_models).forEach(function (key) {
@@ -7,6 +7,8 @@ exports.SensitiveWordsService = void 0;
7
7
 
8
8
  var _mintFilter = _interopRequireDefault(require("mint-filter"));
9
9
 
10
+ var _vtils = require("vtils");
11
+
10
12
  /**
11
13
  * 敏感词服务。
12
14
  */
@@ -16,6 +18,20 @@ class SensitiveWordsService {
16
18
  this.serviceName = 'sensitiveWords';
17
19
  this.mint = void 0;
18
20
  }
21
+ /**
22
+ * 文本转换。
23
+ */
24
+
25
+
26
+ transform(text) {
27
+ return (// 移除空白字符
28
+ (0, _vtils.removeBlankChars)( // 移除非单词字符
29
+ (0, _vtils.removeNonWordChars)( // 全角转半角
30
+ (0, _vtils.toHalfWidthString)(text))) // 转小写
31
+ .toLowerCase() // 叠词归一
32
+ .replace(/(.)\1+/g, '$1')
33
+ );
34
+ }
19
35
  /**
20
36
  * 处理文本,敏感词将被替换为 * 号。
21
37
  */
@@ -26,7 +42,7 @@ class SensitiveWordsService {
26
42
  this.mint = new _mintFilter.default(this.options.words);
27
43
  }
28
44
 
29
- const res = await this.mint.filter(text, {
45
+ const res = await this.mint.filter(this.transform(text), {
30
46
  every: true,
31
47
  replace: true,
32
48
  words: false
@@ -43,7 +59,7 @@ class SensitiveWordsService {
43
59
  this.mint = new _mintFilter.default(this.options.words);
44
60
  }
45
61
 
46
- const res = await this.mint.filter(text, {
62
+ const res = await this.mint.filter(this.transform(text), {
47
63
  replace: false,
48
64
  every: !!every,
49
65
  words: true
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
package/lib/index.d.ts CHANGED
@@ -29,4 +29,5 @@ export * from './services/rate_limit';
29
29
  export * from './services/redis';
30
30
  export * from './services/sensitive_words';
31
31
  export * from './x';
32
+ export * from './types/index';
32
33
  export * from '.x/models';
package/lib/index.js CHANGED
@@ -30,6 +30,7 @@ export * from "./services/rate_limit";
30
30
  export * from "./services/redis";
31
31
  export * from "./services/sensitive_words";
32
32
  export * from "./x"; // @endindex
33
- // @ts-ignore
33
+
34
+ export * from "./types/index"; // @ts-ignore
34
35
 
35
36
  export * from '.x/models';
@@ -11,6 +11,10 @@ export declare class SensitiveWordsService implements BaseService {
11
11
  serviceName: string;
12
12
  private mint;
13
13
  constructor(options: SensitiveWordsServiceOptions);
14
+ /**
15
+ * 文本转换。
16
+ */
17
+ private transform;
14
18
  /**
15
19
  * 处理文本,敏感词将被替换为 * 号。
16
20
  */
@@ -1,4 +1,5 @@
1
1
  import Mint from 'mint-filter';
2
+ import { removeBlankChars, removeNonWordChars, toHalfWidthString } from 'vtils';
2
3
 
3
4
  /**
4
5
  * 敏感词服务。
@@ -9,6 +10,20 @@ export class SensitiveWordsService {
9
10
  this.serviceName = 'sensitiveWords';
10
11
  this.mint = void 0;
11
12
  }
13
+ /**
14
+ * 文本转换。
15
+ */
16
+
17
+
18
+ transform(text) {
19
+ return (// 移除空白字符
20
+ removeBlankChars( // 移除非单词字符
21
+ removeNonWordChars( // 全角转半角
22
+ toHalfWidthString(text))) // 转小写
23
+ .toLowerCase() // 叠词归一
24
+ .replace(/(.)\1+/g, '$1')
25
+ );
26
+ }
12
27
  /**
13
28
  * 处理文本,敏感词将被替换为 * 号。
14
29
  */
@@ -19,7 +34,7 @@ export class SensitiveWordsService {
19
34
  this.mint = new Mint(this.options.words);
20
35
  }
21
36
 
22
- const res = await this.mint.filter(text, {
37
+ const res = await this.mint.filter(this.transform(text), {
23
38
  every: true,
24
39
  replace: true,
25
40
  words: false
@@ -36,7 +51,7 @@ export class SensitiveWordsService {
36
51
  this.mint = new Mint(this.options.words);
37
52
  }
38
53
 
39
- const res = await this.mint.filter(text, {
54
+ const res = await this.mint.filter(this.transform(text), {
40
55
  replace: false,
41
56
  every: !!every,
42
57
  words: true
@@ -0,0 +1,23 @@
1
+ import { OmitStrict, PartialBy, RequiredBy, RequiredDeep, Simplify } from 'vtils/types';
2
+ export declare type MakeDtoRequired<TRawData extends Record<any, any>, TPickKey extends keyof TRawData = never, TPartialKey extends keyof Pick<RequiredDeep<TRawData>, [
3
+ TPickKey
4
+ ] extends [never] ? keyof TRawData : TPickKey> = never> = Simplify<PartialBy<Pick<RequiredDeep<TRawData>, [
5
+ TPickKey
6
+ ] extends [never] ? keyof TRawData : TPickKey>, TPartialKey>>;
7
+ export declare type MakeDtoPartial<TRawData extends Record<any, any>, TPickKey extends keyof TRawData = never, TRequiredKey extends keyof Pick<Partial<TRawData>, [
8
+ TPickKey
9
+ ] extends [never] ? keyof TRawData : TPickKey> = never> = Simplify<RequiredBy<Pick<Partial<TRawData>, [
10
+ TPickKey
11
+ ] extends [never] ? keyof TRawData : TPickKey>, TRequiredKey>>;
12
+ export declare type MakeDtoExcludeRequired<TRawData extends Record<any, any>, TExcludeKey extends keyof TRawData = never, TPartialKey extends keyof Omit<RequiredDeep<TRawData>, [
13
+ TExcludeKey
14
+ ] extends [never] ? never : TExcludeKey> = never> = Simplify<PartialBy<Omit<RequiredDeep<TRawData>, [
15
+ TExcludeKey
16
+ ] extends [never] ? never : TExcludeKey>, TPartialKey>>;
17
+ export declare type MakeDtoExcludePartial<TRawData extends Record<any, any>, TExcludeKey extends keyof TRawData = never, TRequiredKey extends keyof Omit<Partial<TRawData>, [
18
+ TExcludeKey
19
+ ] extends [never] ? never : TExcludeKey> = never> = Simplify<RequiredBy<Omit<Partial<TRawData>, [
20
+ TExcludeKey
21
+ ] extends [never] ? never : TExcludeKey>, TRequiredKey>>;
22
+ export declare type MakeDtoExclude<T, K extends keyof T> = OmitStrict<T, K>;
23
+ export declare type MakeDtoInclude<T, K extends keyof T> = Pick<T, K>;
@@ -0,0 +1 @@
1
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jayfong/x-server",
3
- "version": "2.2.14",
3
+ "version": "2.2.16",
4
4
  "license": "ISC",
5
5
  "sideEffects": false,
6
6
  "main": "lib/_cjs/index.js",