@seayoo-web/kms 2.0.1 → 2.0.2

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 CHANGED
@@ -2,6 +2,24 @@
2
2
 
3
3
  - dsi 查询工具
4
4
  - `queryDsi` 以 ajax 方式查询 dsi 数据
5
- - `jsonpDsi` 以 jsonp 方式查询 dsi 数据
6
- - `jsonxDsi` 以 script 方式查询 dsi 数据
5
+ - `jsonpDsi` 以 jsonp 方式查询 dsi 数据,微信环境无效
6
+ - `jsonxDsi` 以 script 方式查询 dsi 数据,微信环境无效
7
7
  - `convertDsiParam` 工具函数,将 dsi query 参数转成 request param
8
+
9
+ ```js
10
+ import { DSI } from "@seayoo-web/kms";
11
+
12
+ // 微信小程序导入
13
+ // import { DSI } from "@seayoo-web/kms/wx"
14
+
15
+ const dsi = new DSI("https://<project>.dsi.seayoo.com");
16
+
17
+ dsi.queryDsi({ key, query, guard });
18
+ ```
19
+
20
+ ```js
21
+ import { convertDsiParam } from "@seayoo-web/kms";
22
+
23
+ // 可以仅仅使用工具来生成 dsi 的查询参数
24
+ const param = convertDsiParam(query);
25
+ ```
@@ -0,0 +1,50 @@
1
+ var x = Object.defineProperty;
2
+ var L = (t, r, i) => r in t ? x(t, r, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[r] = i;
3
+ var w = (t, r, i) => L(t, typeof r != "symbol" ? r + "" : r, i);
4
+ import { jsonp as K, jsonx as k } from "@seayoo-web/request";
5
+ function y(t) {
6
+ const r = {}, { group: i, filter: a, filterLogic: s, range: l, created: j, updated: d, size: m, page: A, sort: e } = t, { sn: $, fields: o, dataFields: n, multi: D, combo: h, pure: g = "items", label: c, value: f, option: b } = t;
7
+ if ($ && (r.sn = $), i && (r.g = Array.isArray(i) ? i.join(",") : i), a) {
8
+ const v = s === "or" ? "|" : "+", q = Object.keys(a);
9
+ r.filter = q.map((p) => {
10
+ const u = a[p];
11
+ return Array.isArray(u) ? `${p}:${u.join(",")}` : `${p}:${u}`;
12
+ }).join(v);
13
+ }
14
+ return l && (r.r = l), j && (r.created = j.join("-")), d && (r.updated = d.join("-")), e && (r.sort = Array.isArray(e) ? e.join(",") : e), D === !1 && (r.m = "n"), m && (r.s = `${m}`), A && (r.p = `${A}`), o && (r.f = Array.isArray(o) ? o.join(",") : o), n && (r.df = Array.isArray(n) ? n.join(",") : n), h === !0 && (o ? r.c = "y" : console.warn("设置 combo:true 必须要同步设置 fields")), g && (r.pure = g === "items" ? "items" : "y"), c && (r.label = Array.isArray(c) ? c.join(",") : c), f && (r.value = Array.isArray(f) ? f.join(",") : f), b && (r.option = b), r;
15
+ }
16
+ function z(t) {
17
+ return t.replace(/(?:^https?:\/\/|\/*$)/gi, "").toLowerCase();
18
+ }
19
+ class F {
20
+ constructor(r, i) {
21
+ w(this, "req");
22
+ this.req = i({ baseURL: `https://${z(r)}`, timeout: 1e4 });
23
+ }
24
+ /**
25
+ * 查询 Dsi 数据接口并返回接口响应
26
+ */
27
+ async queryDsi({ key: r, query: i, guard: a }) {
28
+ const { data: s } = await this.req.get(r, a, { params: y(i) });
29
+ return s;
30
+ }
31
+ /**
32
+ * 通过 jsonp 方式加载 dsi 数据
33
+ *
34
+ * ⚠️ 微信环境下不支持
35
+ */
36
+ async jsonpDsi({ key: r, query: i, guard: a }) {
37
+ return await K(`${r}/jsonp`, a, y(i));
38
+ }
39
+ /**
40
+ * 通过 jsonx(script) 方式加载 dsi 数据
41
+ *
42
+ * ⚠️ 微信环境下不支持
43
+ */
44
+ async jsonxDsi({ key: r, query: i, guard: a }) {
45
+ return await k(`${r}/script`, a, y(i));
46
+ }
47
+ }
48
+ export {
49
+ F as K
50
+ };
package/dist/index.js CHANGED
@@ -1,32 +1,10 @@
1
- import { NetRequest as L, jsonp as k, jsonx as q } from "@seayoo-web/request";
2
- const { get: z } = L({ timeout: 15e3 });
3
- function y(t) {
4
- const r = {}, { group: i, filter: a, filterLogic: n, range: l, created: d, updated: m, size: A, page: $, sort: s } = t, { sn: g, fields: o, dataFields: e, multi: h, combo: v, pure: b = "items", label: f, value: c, option: w } = t;
5
- if (g && (r.sn = g), i && (r.g = Array.isArray(i) ? i.join(",") : i), a) {
6
- const D = n === "or" ? "|" : "+", x = Object.keys(a);
7
- r.filter = x.map((p) => {
8
- const u = a[p];
9
- return Array.isArray(u) ? `${p}:${u.join(",")}` : `${p}:${u}`;
10
- }).join(D);
1
+ import { NetRequest as r } from "@seayoo-web/request";
2
+ import { K as t } from "./dsi-IrAVonhd.js";
3
+ class m extends t {
4
+ constructor(s) {
5
+ super(s, r);
11
6
  }
12
- return l && (r.r = l), d && (r.created = d.join("-")), m && (r.updated = m.join("-")), s && (r.sort = Array.isArray(s) ? s.join(",") : s), h === !1 && (r.m = "n"), A && (r.s = `${A}`), $ && (r.p = `${$}`), o && (r.f = Array.isArray(o) ? o.join(",") : o), e && (r.df = Array.isArray(e) ? e.join(",") : e), v === !0 && (o ? r.c = "y" : console.warn("设置 combo:true 必须要同步设置 fields")), b && (r.pure = b === "items" ? "items" : "y"), f && (r.label = Array.isArray(f) ? f.join(",") : f), c && (r.value = Array.isArray(c) ? c.join(",") : c), w && (r.option = w), r;
13
- }
14
- async function E({ endpoint: t, key: r, query: i, guard: a }) {
15
- const { data: n } = await z(`https://${j(t)}/${r}`, a, { params: y(i) });
16
- return n;
17
- }
18
- async function F({ endpoint: t, key: r, query: i, guard: a }) {
19
- return await k(`https://${j(t)}/${r}/jsonp`, a, y(i));
20
- }
21
- async function N({ endpoint: t, key: r, query: i, guard: a }) {
22
- return await q(`https://${j(t)}/${r}/script`, a, y(i));
23
- }
24
- function j(t) {
25
- return t.replace(/(?:^https?:\/\/|\/*$)/gi, "").toLowerCase();
26
7
  }
27
8
  export {
28
- y as convertDsiParam,
29
- F as jsonpDsi,
30
- N as jsonxDsi,
31
- E as queryDsi
9
+ m as Dsi
32
10
  };
package/dist/wx.js ADDED
@@ -0,0 +1,10 @@
1
+ import { NetRequest as r } from "@seayoo-web/request/wx";
2
+ import { K as t } from "./dsi-IrAVonhd.js";
3
+ class m extends t {
4
+ constructor(s) {
5
+ super(s, r);
6
+ }
7
+ }
8
+ export {
9
+ m as Dsi
10
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seayoo-web/kms",
3
- "version": "2.0.1",
3
+ "version": "2.0.2",
4
4
  "description": "agent for seayoo.kms",
5
5
  "type": "module",
6
6
  "source": "index.ts",
@@ -17,6 +17,11 @@
17
17
  "types": "./types/index.d.ts",
18
18
  "import": "./dist/index.js",
19
19
  "default": "./dist/index.js"
20
+ },
21
+ "./wx": {
22
+ "types": "./types/wx.d.ts",
23
+ "import": "./dist/wx.js",
24
+ "default": "./dist/wx.js"
20
25
  }
21
26
  },
22
27
  "author": "web@seayoo.com",
@@ -25,11 +30,11 @@
25
30
  "access": "public"
26
31
  },
27
32
  "devDependencies": {
28
- "@seayoo-web/request": "^2.0.6",
33
+ "@seayoo-web/request": "^2.0.8",
29
34
  "@seayoo-web/tsconfig": "^1.0.2"
30
35
  },
31
36
  "peerDependencies": {
32
- "@seayoo-web/request": "^2.0.6"
37
+ "@seayoo-web/request": "^2.0.8"
33
38
  },
34
39
  "scripts": {
35
40
  "build": "vite build && tsc --emitDeclarationOnly",
package/types/index.d.ts CHANGED
@@ -1 +1,4 @@
1
- export * from "./src/dsi";
1
+ import { KMSDsi } from "./src/dsi";
2
+ export declare class Dsi extends KMSDsi {
3
+ constructor(endpoint: string);
4
+ }
@@ -1,3 +1,4 @@
1
+ import { type NetRequestFactory } from "@seayoo-web/request";
1
2
  type BaseFieldType = string | number | null;
2
3
  type QuerySortBaseField = "start" | "end" | "created" | "order" | "updated" | `data.${string}`;
3
4
  type QuerySortField = QuerySortBaseField | `-${QuerySortBaseField}`;
@@ -140,9 +141,7 @@ export interface DsiQueryParam {
140
141
  * 将查询配置转成 dsi 查询参数
141
142
  */
142
143
  export declare function convertDsiParam(query: DsiQueryParam): Record<string, string>;
143
- interface DsiQueryOption<T> {
144
- /** dsi 服务器地址,比如 xxx.dsi.seayoo.com */
145
- endpoint: string;
144
+ export interface DsiQueryOption<T> {
146
145
  /** dsi key / alias */
147
146
  key: string;
148
147
  /** 查询参数 */
@@ -150,16 +149,24 @@ interface DsiQueryOption<T> {
150
149
  /** 响应数据守卫函数 */
151
150
  guard: (data: unknown) => data is T;
152
151
  }
153
- /**
154
- * 查询 Dsi 数据接口并返回接口响应
155
- */
156
- export declare function queryDsi<T = unknown>({ endpoint, key, query, guard }: DsiQueryOption<T>): Promise<T | null>;
157
- /**
158
- * 通过 jsonp 方式加载 dsi 数据
159
- */
160
- export declare function jsonpDsi<T = unknown>({ endpoint, key, query, guard }: DsiQueryOption<T>): Promise<T | null>;
161
- /**
162
- * 通过 jsonx(script) 方式加载 dsi 数据
163
- */
164
- export declare function jsonxDsi<T = unknown>({ endpoint, key, query, guard }: DsiQueryOption<T>): Promise<T | null>;
152
+ export declare class KMSDsi {
153
+ protected req: ReturnType<NetRequestFactory>;
154
+ constructor(endpoint: string, request: NetRequestFactory);
155
+ /**
156
+ * 查询 Dsi 数据接口并返回接口响应
157
+ */
158
+ queryDsi<T = unknown>({ key, query, guard }: DsiQueryOption<T>): Promise<T | null>;
159
+ /**
160
+ * 通过 jsonp 方式加载 dsi 数据
161
+ *
162
+ * ⚠️ 微信环境下不支持
163
+ */
164
+ jsonpDsi<T = unknown>({ key, query, guard }: DsiQueryOption<T>): Promise<T | null>;
165
+ /**
166
+ * 通过 jsonx(script) 方式加载 dsi 数据
167
+ *
168
+ * ⚠️ 微信环境下不支持
169
+ */
170
+ jsonxDsi<T = unknown>({ key, query, guard }: DsiQueryOption<T>): Promise<T | null>;
171
+ }
165
172
  export {};
package/types/wx.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ import { KMSDsi } from "./src/dsi";
2
+ export declare class Dsi extends KMSDsi {
3
+ constructor(endpoint: string);
4
+ }