@lightsoft/js-sdk 1.0.1 → 1.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/dist/index.d.ts CHANGED
@@ -1,8 +1,53 @@
1
1
  import { Ref } from 'vue';
2
2
 
3
+ type RequestOptions = {
4
+ data?: Document | XMLHttpRequestBodyInit | null;
5
+ headers?: {
6
+ [key: string]: string;
7
+ };
8
+ async?: boolean;
9
+ };
10
+ type RequestType = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'OPTIONS' | 'HEAD' | 'TRACE' | 'CONNECT';
11
+
12
+ declare class Request {
13
+ private readonly xhr;
14
+ private beforeRequestOptions;
15
+ private beforeResponseCallback;
16
+ constructor();
17
+ create(): XMLHttpRequest;
18
+ useState(state: 'SUCCESS' | 'FAIL' | 'PENDING'): boolean;
19
+ send(type: RequestType, url: string, options?: RequestOptions): Promise<unknown>;
20
+ transformResponse(response: XMLHttpRequest): {
21
+ data: any;
22
+ code: number;
23
+ message: string;
24
+ };
25
+ transformQuery(url: string, query: any): string;
26
+ beforeSend(callback: () => RequestOptions): void;
27
+ beforeResponse(callback: (...args: any) => void): void;
28
+ abort(): void;
29
+ get(url: string, query?: any, headers?: RequestOptions['headers']): Promise<unknown>;
30
+ post(url: string, data?: any, headers?: RequestOptions['headers']): Promise<unknown>;
31
+ put(url: string, data?: any, headers?: RequestOptions['headers']): Promise<unknown>;
32
+ delete(url: string, data?: any, headers?: RequestOptions['headers']): Promise<unknown>;
33
+ patch(url: string, data?: any, headers?: RequestOptions['headers']): Promise<unknown>;
34
+ options(url: string, data?: any, headers?: RequestOptions['headers']): Promise<unknown>;
35
+ head(url: string, data?: any, headers?: RequestOptions['headers']): Promise<unknown>;
36
+ trace(url: string, data?: any, headers?: RequestOptions['headers']): Promise<unknown>;
37
+ connect(url: string, data?: any, headers?: RequestOptions['headers']): Promise<unknown>;
38
+ }
39
+ declare class RequestChain {
40
+ private fieldList;
41
+ private responses;
42
+ constructor(...args: Record<string, any>[]);
43
+ getParams(type: 'query' | 'body', data: any, fields: any): string | Record<string, any>;
44
+ setParams(...args: Record<string, any>[]): void;
45
+ chain(list: any[]): any;
46
+ }
47
+
3
48
  interface CountDown {
4
49
  countdownText: Ref<string>;
5
- isDisabled: Ref<boolean>;
50
+ disabled: Ref<boolean>;
6
51
  send: () => void;
7
52
  }
8
53
  /**
@@ -171,5 +216,65 @@ declare function findTreeDataNode(data: ISectoralTable[], targetDeptCode: string
171
216
  */
172
217
  declare function findTreeDataNodeName(dept: ISectoralTable, queryString: string, results: ISectoralTable[]): void;
173
218
 
174
- export { HAS_FEILD, InputLegalityValidate, InputLengthValidate, LENGTH_LIMIT, LOGIN_TYPE, RecordType, dataHandler, debounce, deepMerge, findTreeDataNode, findTreeDataNodeName, isMobileDevice, isNull, objectArrayToString, throttle, useCountDown };
219
+ declare class Mask {
220
+ private task;
221
+ private selectors;
222
+ private opacity;
223
+ private elementIndex;
224
+ constructor(selectors: string[], opacity?: number);
225
+ start(): void;
226
+ process(handle: (resolve: any, index: number, element: Element) => void): this;
227
+ open(element?: Element): void;
228
+ close(): void;
229
+ }
230
+
231
+ type TourPlaceholder = {
232
+ title: string;
233
+ text: string;
234
+ next: string;
235
+ };
236
+ declare class Tour {
237
+ private selectors;
238
+ private elementIndex;
239
+ private tourTargetElement;
240
+ private tourElement;
241
+ private tourElementContentTemplate;
242
+ private placeholder;
243
+ private config;
244
+ constructor(selectors: string[]);
245
+ setPlaceholder(placeholder: TourPlaceholder): void;
246
+ setContentTemplate(template: string): void;
247
+ setConfig(config: Partial<typeof this.config>): void;
248
+ start(): void;
249
+ layout(element: HTMLElement): void;
250
+ close(): void;
251
+ }
252
+
253
+ type WebSocketState = 'CONNECTING' | 'OPEN' | 'CLOSING' | 'CLOSED';
254
+ interface WebSocketConfig {
255
+ timeout?: number;
256
+ reconnect: boolean;
257
+ reconnectTime?: number;
258
+ maxReconnectNumber?: number;
259
+ }
260
+ declare function createWebSocket(url: string, config: WebSocketConfig | null, onOpen?: Function | null): WebSocket;
261
+ declare function useSendMessage(ws: WebSocket, data: any): void;
262
+ declare function useWebSocketMessage(ws: WebSocket, callback: Function): void;
263
+ declare function useWebSocketClose(ws: WebSocket, code?: number, message?: string): void;
264
+ declare function getState(ws: WebSocket, type: WebSocketState): boolean;
265
+
266
+ /**
267
+ * 匹配中文字母数字
268
+ */
269
+ declare const ZN_LETTER_NUMBER: RegExp;
270
+ /**
271
+ * 匹配 IP
272
+ */
273
+ declare const IP: RegExp;
274
+ /**
275
+ * 匹配手机号
276
+ */
277
+ declare const PHONE: RegExp;
278
+
279
+ export { HAS_FEILD, IP, InputLegalityValidate, InputLengthValidate, LENGTH_LIMIT, LOGIN_TYPE, Mask, PHONE, RecordType, Request, RequestChain, Tour, ZN_LETTER_NUMBER, createWebSocket, dataHandler, debounce, deepMerge, findTreeDataNode, findTreeDataNodeName, getState, isMobileDevice, isNull, objectArrayToString, throttle, useCountDown, useSendMessage, useWebSocketClose, useWebSocketMessage };
175
280
  export type { ISectoralTable, Tag, typeIsNull };