wjx-api-sdk 0.1.23 → 0.2.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.
- package/dist/core/constants.d.ts +1 -1
- package/dist/core/constants.js +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/modules/survey/client.d.ts +8 -1
- package/dist/modules/survey/client.js +34 -1
- package/dist/modules/survey/client.js.map +1 -1
- package/dist/modules/survey/json-to-survey.d.ts +20 -0
- package/dist/modules/survey/json-to-survey.js +40 -0
- package/dist/modules/survey/json-to-survey.js.map +1 -0
- package/dist/modules/survey/types.d.ts +12 -0
- package/package.json +38 -38
package/dist/core/constants.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ export declare const Action: {
|
|
|
18
18
|
readonly UPDATE_STATUS: "1000102";
|
|
19
19
|
readonly UPDATE_SETTINGS: "1000103";
|
|
20
20
|
readonly UPLOAD_FILE: "1000104";
|
|
21
|
-
readonly
|
|
21
|
+
readonly CREATE_SURVEY_BY_JSON: "1000106";
|
|
22
22
|
readonly DELETE_SURVEY: "1000301";
|
|
23
23
|
readonly CLEAR_RECYCLE_BIN: "1000302";
|
|
24
24
|
readonly SUBMIT_RESPONSE: "1001001";
|
package/dist/core/constants.js
CHANGED
|
@@ -38,7 +38,7 @@ export const Action = {
|
|
|
38
38
|
UPDATE_STATUS: "1000102",
|
|
39
39
|
UPDATE_SETTINGS: "1000103",
|
|
40
40
|
UPLOAD_FILE: "1000104",
|
|
41
|
-
|
|
41
|
+
CREATE_SURVEY_BY_JSON: "1000106",
|
|
42
42
|
DELETE_SURVEY: "1000301",
|
|
43
43
|
CLEAR_RECYCLE_BIN: "1000302",
|
|
44
44
|
SUBMIT_RESPONSE: "1001001",
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
export { getWjxBaseUrl, getWjxApiUrl, getWjxUserSystemApiUrl, getWjxSubuserApiUrl, getWjxContactsApiUrl, getWjxSsoSubaccountUrl, getWjxSsoUserSystemUrl, getWjxSsoPartnerUrl, getWjxSurveyCreateUrl, getWjxSurveyEditUrl, Action, DEFAULT_TIMEOUT_MS, LONG_TIMEOUT_MS, DEFAULT_MAX_RETRIES, RETRY_DELAY_MS, } from "./core/constants.js";
|
|
2
2
|
export type { WjxCredentials, WjxApiSuccess, WjxApiFailure, WjxApiResponse, FetchLike, RequestOptions, Logger, } from "./core/types.js";
|
|
3
3
|
export { setCredentialProvider, getWjxCredentials, callWjxApi, callWjxUserSystemApi, callWjxSubuserApi, callWjxContactsApi, getCorpId, assignDefined, } from "./core/api-client.js";
|
|
4
|
-
export { createSurvey, createSurveyByText, validateQuestionsJson, getSurvey, listSurveys, updateSurveyStatus, getSurveySettings, updateSurveySettings, deleteSurvey, getQuestionTags, getTagDetails, clearRecycleBin, uploadFile, } from "./modules/survey/client.js";
|
|
4
|
+
export { createSurvey, createSurveyByText, createSurveyByJson, validateQuestionsJson, getSurvey, listSurveys, updateSurveyStatus, getSurveySettings, updateSurveySettings, deleteSurvey, getQuestionTags, getTagDetails, clearRecycleBin, uploadFile, } from "./modules/survey/client.js";
|
|
5
5
|
export { surveyToText, typeToLabel, stripHtml } from "./modules/survey/survey-to-text.js";
|
|
6
6
|
export { textToSurvey, parsedQuestionsToWire, LABEL_TO_TYPE, TYPE_MAP } from "./modules/survey/text-to-survey.js";
|
|
7
7
|
export type { WireQuestion, WireConversionResult } from "./modules/survey/text-to-survey.js";
|
|
8
|
-
export
|
|
8
|
+
export { extractJsonlMetadata, normalizeJsonl, MAX_JSONL_SIZE } from "./modules/survey/json-to-survey.js";
|
|
9
|
+
export type { JsonSurveyMetadata } from "./modules/survey/json-to-survey.js";
|
|
10
|
+
export type { CreateSurveyInput, CreateSurveyByTextInput, CreateSurveyByJsonInput, GetSurveyInput, ListSurveysInput, UpdateSurveyStatusInput, GetSurveySettingsInput, UpdateSurveySettingsInput, DeleteSurveyInput, GetQuestionTagsInput, GetTagDetailsInput, ClearRecycleBinInput, UploadFileInput, SurveyQuestionItem, SurveyQuestion, SurveyDetail, ParsedQuestion, ParsedSurvey, } from "./modules/survey/types.js";
|
|
9
11
|
export { queryResponses, queryResponsesRealtime, downloadResponses, getReport, submitResponse, getFileLinks, getWinners, modifyResponse, get360Report, clearResponses, } from "./modules/response/client.js";
|
|
10
12
|
export type { QueryResponsesInput, QueryResponsesRealtimeInput, DownloadResponsesInput, GetReportInput, SubmitResponseInput, GetFileLinksInput, GetWinnersInput, ModifyResponseInput, Get360ReportInput, ClearResponsesInput, } from "./modules/response/types.js";
|
|
11
13
|
export { queryContacts, addContacts, deleteContacts, addAdmin, deleteAdmin, restoreAdmin, listDepartments, addDepartment, modifyDepartment, deleteDepartment, listTags, addTag, modifyTag, deleteTag, } from "./modules/contacts/client.js";
|
package/dist/index.js
CHANGED
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
export { getWjxBaseUrl, getWjxApiUrl, getWjxUserSystemApiUrl, getWjxSubuserApiUrl, getWjxContactsApiUrl, getWjxSsoSubaccountUrl, getWjxSsoUserSystemUrl, getWjxSsoPartnerUrl, getWjxSurveyCreateUrl, getWjxSurveyEditUrl, Action, DEFAULT_TIMEOUT_MS, LONG_TIMEOUT_MS, DEFAULT_MAX_RETRIES, RETRY_DELAY_MS, } from "./core/constants.js";
|
|
3
3
|
export { setCredentialProvider, getWjxCredentials, callWjxApi, callWjxUserSystemApi, callWjxSubuserApi, callWjxContactsApi, getCorpId, assignDefined, } from "./core/api-client.js";
|
|
4
4
|
// Survey module
|
|
5
|
-
export { createSurvey, createSurveyByText, validateQuestionsJson, getSurvey, listSurveys, updateSurveyStatus, getSurveySettings, updateSurveySettings, deleteSurvey, getQuestionTags, getTagDetails, clearRecycleBin, uploadFile, } from "./modules/survey/client.js";
|
|
5
|
+
export { createSurvey, createSurveyByText, createSurveyByJson, validateQuestionsJson, getSurvey, listSurveys, updateSurveyStatus, getSurveySettings, updateSurveySettings, deleteSurvey, getQuestionTags, getTagDetails, clearRecycleBin, uploadFile, } from "./modules/survey/client.js";
|
|
6
6
|
export { surveyToText, typeToLabel, stripHtml } from "./modules/survey/survey-to-text.js";
|
|
7
7
|
export { textToSurvey, parsedQuestionsToWire, LABEL_TO_TYPE, TYPE_MAP } from "./modules/survey/text-to-survey.js";
|
|
8
|
+
export { extractJsonlMetadata, normalizeJsonl, MAX_JSONL_SIZE } from "./modules/survey/json-to-survey.js";
|
|
8
9
|
// Response module
|
|
9
10
|
export { queryResponses, queryResponsesRealtime, downloadResponses, getReport, submitResponse, getFileLinks, getWinners, modifyResponse, get360Report, clearResponses, } from "./modules/response/client.js";
|
|
10
11
|
// Contacts module
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EACL,aAAa,EACb,YAAY,EACZ,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,MAAM,EACN,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,cAAc,GACf,MAAM,qBAAqB,CAAC;AAU7B,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,UAAU,EACV,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,aAAa,GACd,MAAM,sBAAsB,CAAC;AAE9B,gBAAgB;AAChB,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,qBAAqB,EACrB,SAAS,EACT,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,eAAe,EACf,aAAa,EACb,eAAe,EACf,UAAU,GACX,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EACL,aAAa,EACb,YAAY,EACZ,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,MAAM,EACN,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,cAAc,GACf,MAAM,qBAAqB,CAAC;AAU7B,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,UAAU,EACV,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,aAAa,GACd,MAAM,sBAAsB,CAAC;AAE9B,gBAAgB;AAChB,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,SAAS,EACT,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,eAAe,EACf,aAAa,EACb,eAAe,EACf,UAAU,GACX,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAElH,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAuB1G,kBAAkB;AAClB,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,SAAS,EACT,cAAc,EACd,YAAY,EACZ,UAAU,EACV,cAAc,EACd,YAAY,EACZ,cAAc,GACf,MAAM,8BAA8B,CAAC;AActC,kBAAkB;AAClB,OAAO,EACL,aAAa,EACb,WAAW,EACX,cAAc,EACd,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,QAAQ,EACR,MAAM,EACN,SAAS,EACT,SAAS,GACV,MAAM,8BAA8B,CAAC;AAkBtC,qBAAqB;AACrB,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,iCAAiC,CAAC;AAUzC,oBAAoB;AACpB,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,gCAAgC,CAAC;AASxC,aAAa;AACb,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,eAAe,GAChB,MAAM,yBAAyB,CAAC;AASjC,mBAAmB;AACnB,OAAO,EACL,eAAe,EACf,YAAY,EACZ,aAAa,EACb,eAAe,EACf,cAAc,GACf,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { WjxApiResponse, WjxCredentials, FetchLike } from "../../core/types.js";
|
|
2
2
|
export { textToSurvey, parsedQuestionsToWire } from "./text-to-survey.js";
|
|
3
|
-
|
|
3
|
+
export { extractJsonlMetadata, normalizeJsonl } from "./json-to-survey.js";
|
|
4
|
+
import type { CreateSurveyInput, CreateSurveyByTextInput, CreateSurveyByJsonInput, GetSurveyInput, ListSurveysInput, UpdateSurveyStatusInput, GetSurveySettingsInput, UpdateSurveySettingsInput, DeleteSurveyInput, GetQuestionTagsInput, GetTagDetailsInput, ClearRecycleBinInput, UploadFileInput } from "./types.js";
|
|
4
5
|
export declare function validateQuestionsJson(questions: string): void;
|
|
5
6
|
export declare function createSurvey<T = unknown>(input: CreateSurveyInput, credentials?: WjxCredentials, fetchImpl?: FetchLike): Promise<WjxApiResponse<T>>;
|
|
6
7
|
export declare function getSurvey<T = unknown>(input: GetSurveyInput, credentials?: WjxCredentials, fetchImpl?: FetchLike): Promise<WjxApiResponse<T>>;
|
|
@@ -17,4 +18,10 @@ export declare function clearRecycleBin<T = unknown>(input: ClearRecycleBinInput
|
|
|
17
18
|
* 段落说明题会被自动过滤(API 不支持 q_type=2)。
|
|
18
19
|
*/
|
|
19
20
|
export declare function createSurveyByText<T = unknown>(input: CreateSurveyByTextInput, credentials?: WjxCredentials, fetchImpl?: FetchLike): Promise<WjxApiResponse<T>>;
|
|
21
|
+
/**
|
|
22
|
+
* 通过 JSONL 格式创建问卷(纯透传到服务端 action 1000106)。
|
|
23
|
+
* 客户端仅做基本校验(非空、大小限制、BOM/CRLF 标准化),
|
|
24
|
+
* 服务端自行解析 JSONL 并创建问卷。
|
|
25
|
+
*/
|
|
26
|
+
export declare function createSurveyByJson<T = unknown>(input: CreateSurveyByJsonInput, credentials?: WjxCredentials, fetchImpl?: FetchLike): Promise<WjxApiResponse<T>>;
|
|
20
27
|
export declare function uploadFile<T = unknown>(input: UploadFileInput, credentials?: WjxCredentials, fetchImpl?: FetchLike): Promise<WjxApiResponse<T>>;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import { Action } from "../../core/constants.js";
|
|
1
|
+
import { Action, LONG_TIMEOUT_MS } from "../../core/constants.js";
|
|
2
2
|
import { callWjxApi, getWjxCredentials } from "../../core/api-client.js";
|
|
3
3
|
export { textToSurvey, parsedQuestionsToWire } from "./text-to-survey.js";
|
|
4
4
|
import { textToSurvey, parsedQuestionsToWire } from "./text-to-survey.js";
|
|
5
|
+
export { extractJsonlMetadata, normalizeJsonl } from "./json-to-survey.js";
|
|
6
|
+
import { extractJsonlMetadata, normalizeJsonl, MAX_JSONL_SIZE } from "./json-to-survey.js";
|
|
5
7
|
export function validateQuestionsJson(questions) {
|
|
6
8
|
let parsed;
|
|
7
9
|
try {
|
|
@@ -172,6 +174,37 @@ export async function createSurveyByText(input, credentials = getWjxCredentials(
|
|
|
172
174
|
creater: input.creater,
|
|
173
175
|
}, credentials, fetchImpl);
|
|
174
176
|
}
|
|
177
|
+
/**
|
|
178
|
+
* 通过 JSONL 格式创建问卷(纯透传到服务端 action 1000106)。
|
|
179
|
+
* 客户端仅做基本校验(非空、大小限制、BOM/CRLF 标准化),
|
|
180
|
+
* 服务端自行解析 JSONL 并创建问卷。
|
|
181
|
+
*/
|
|
182
|
+
export async function createSurveyByJson(input, credentials = getWjxCredentials(), fetchImpl = fetch) {
|
|
183
|
+
const jsonl = normalizeJsonl(input.jsonl.trim());
|
|
184
|
+
if (!jsonl) {
|
|
185
|
+
throw new Error("jsonl must not be empty");
|
|
186
|
+
}
|
|
187
|
+
if (jsonl.length > MAX_JSONL_SIZE) {
|
|
188
|
+
throw new Error(`jsonl exceeds maximum size of ${MAX_JSONL_SIZE} bytes (${jsonl.length})`);
|
|
189
|
+
}
|
|
190
|
+
const metadata = extractJsonlMetadata(jsonl);
|
|
191
|
+
const title = input.title ?? metadata.title;
|
|
192
|
+
const description = metadata.description ?? "";
|
|
193
|
+
return callWjxApi({
|
|
194
|
+
action: Action.CREATE_SURVEY_BY_JSON,
|
|
195
|
+
title,
|
|
196
|
+
atype: input.atype ?? 1,
|
|
197
|
+
desc: description,
|
|
198
|
+
surveydatajson: jsonl,
|
|
199
|
+
publish: input.publish ?? false,
|
|
200
|
+
...(input.creater !== undefined ? { creater: input.creater } : {}),
|
|
201
|
+
}, {
|
|
202
|
+
credentials,
|
|
203
|
+
fetchImpl,
|
|
204
|
+
maxRetries: 0,
|
|
205
|
+
timeoutMs: LONG_TIMEOUT_MS,
|
|
206
|
+
});
|
|
207
|
+
}
|
|
175
208
|
export async function uploadFile(input, credentials = getWjxCredentials(), fetchImpl = fetch) {
|
|
176
209
|
return callWjxApi({
|
|
177
210
|
action: Action.UPLOAD_FILE,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/modules/survey/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/modules/survey/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** JSONL 首行 "问卷基础信息" 解析结果 */
|
|
2
|
+
export interface JsonSurveyMetadata {
|
|
3
|
+
title: string;
|
|
4
|
+
description: string;
|
|
5
|
+
endpageinformation: string;
|
|
6
|
+
language: string;
|
|
7
|
+
}
|
|
8
|
+
/** createSurveyByJson 的 JSONL 大小上限(1 MB) */
|
|
9
|
+
export declare const MAX_JSONL_SIZE = 1000000;
|
|
10
|
+
/**
|
|
11
|
+
* 从 JSONL 文本中提取首行 "问卷基础信息" 的元数据(title / description 等)。
|
|
12
|
+
* 仅做最小解析:找到第一个 qtype === "问卷基础信息" 的行即返回。
|
|
13
|
+
*/
|
|
14
|
+
export declare function extractJsonlMetadata(jsonlText: string): JsonSurveyMetadata;
|
|
15
|
+
/**
|
|
16
|
+
* 对 JSONL 文本做标准化预处理:
|
|
17
|
+
* - 剥离 BOM(Windows UTF-8 BOM)
|
|
18
|
+
* - CRLF → LF
|
|
19
|
+
*/
|
|
20
|
+
export declare function normalizeJsonl(jsonl: string): string;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
// ─── Types ──────────────────────────────────────────────────────────
|
|
2
|
+
/** createSurveyByJson 的 JSONL 大小上限(1 MB) */
|
|
3
|
+
export const MAX_JSONL_SIZE = 1_000_000;
|
|
4
|
+
// ─── JSONL 元数据提取 ──────────────────────────────────────────────
|
|
5
|
+
/**
|
|
6
|
+
* 从 JSONL 文本中提取首行 "问卷基础信息" 的元数据(title / description 等)。
|
|
7
|
+
* 仅做最小解析:找到第一个 qtype === "问卷基础信息" 的行即返回。
|
|
8
|
+
*/
|
|
9
|
+
export function extractJsonlMetadata(jsonlText) {
|
|
10
|
+
const lines = jsonlText.split("\n");
|
|
11
|
+
for (const line of lines) {
|
|
12
|
+
const trimmed = line.trim();
|
|
13
|
+
if (!trimmed)
|
|
14
|
+
continue;
|
|
15
|
+
try {
|
|
16
|
+
const obj = JSON.parse(trimmed);
|
|
17
|
+
if (obj.qtype === "问卷基础信息") {
|
|
18
|
+
return {
|
|
19
|
+
title: typeof obj.title === "string" ? obj.title : "",
|
|
20
|
+
description: typeof obj.introduction === "string" ? obj.introduction : "",
|
|
21
|
+
endpageinformation: typeof obj.endpageinformation === "string" ? obj.endpageinformation : "",
|
|
22
|
+
language: typeof obj.language === "string" ? obj.language : "zh",
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
catch {
|
|
27
|
+
// 跳过无法解析的行,让服务端处理
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return { title: "", description: "", endpageinformation: "", language: "zh" };
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* 对 JSONL 文本做标准化预处理:
|
|
34
|
+
* - 剥离 BOM(Windows UTF-8 BOM)
|
|
35
|
+
* - CRLF → LF
|
|
36
|
+
*/
|
|
37
|
+
export function normalizeJsonl(jsonl) {
|
|
38
|
+
return jsonl.replace(/^\uFEFF/, "").replace(/\r\n/g, "\n");
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=json-to-survey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-to-survey.js","sourceRoot":"","sources":["../../../src/modules/survey/json-to-survey.ts"],"names":[],"mappings":"AAAA,uEAAuE;AAUvE,4CAA4C;AAC5C,MAAM,CAAC,MAAM,cAAc,GAAG,SAAS,CAAC;AAExC,iEAAiE;AAEjE;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,SAAiB;IACpD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B,CAAC;YAC3D,IAAI,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC3B,OAAO;oBACL,KAAK,EAAE,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBACrD,WAAW,EAAE,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;oBACzE,kBAAkB,EAAE,OAAO,GAAG,CAAC,kBAAkB,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE;oBAC5F,QAAQ,EAAE,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;iBACjE,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB;QACpB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,kBAAkB,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAChF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAC7D,CAAC"}
|
|
@@ -21,6 +21,18 @@ export interface CreateSurveyByTextInput {
|
|
|
21
21
|
/** 创建者子账号用户名 */
|
|
22
22
|
creater?: string;
|
|
23
23
|
}
|
|
24
|
+
export interface CreateSurveyByJsonInput {
|
|
25
|
+
/** JSONL 格式的问卷内容(每行一个 JSON 对象,首行为问卷基础信息) */
|
|
26
|
+
jsonl: string;
|
|
27
|
+
/** 问卷标题(可选,不传则从"问卷基础信息"条目提取) */
|
|
28
|
+
title?: string;
|
|
29
|
+
/** 问卷类型:1=调查, 2=测评, 3=投票, 6=考试, 7=表单 */
|
|
30
|
+
atype?: number;
|
|
31
|
+
/** 是否立即发布 */
|
|
32
|
+
publish?: boolean;
|
|
33
|
+
/** 创建者子账号用户名 */
|
|
34
|
+
creater?: string;
|
|
35
|
+
}
|
|
24
36
|
export interface UploadFileInput {
|
|
25
37
|
file_name: string;
|
|
26
38
|
file: string;
|
package/package.json
CHANGED
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "wjx-api-sdk",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "问卷星 (Wenjuanxing) OpenAPI SDK — 零 MCP 依赖的 API 客户端",
|
|
5
|
-
"main": "dist/index.js",
|
|
6
|
-
"types": "dist/index.d.ts",
|
|
7
|
-
"files": [
|
|
8
|
-
"dist"
|
|
9
|
-
],
|
|
10
|
-
"engines": {
|
|
11
|
-
"node": ">=20"
|
|
12
|
-
},
|
|
13
|
-
"scripts": {
|
|
14
|
-
"build": "npx -p typescript tsc -p tsconfig.json",
|
|
15
|
-
"test": "npm run build && node --test __tests__/*.test.mjs",
|
|
16
|
-
"clean": "rm -rf dist",
|
|
17
|
-
"prepublishOnly": "npm run build"
|
|
18
|
-
},
|
|
19
|
-
"keywords": [
|
|
20
|
-
"wjx",
|
|
21
|
-
"wenjuanxing",
|
|
22
|
-
"survey",
|
|
23
|
-
"openapi",
|
|
24
|
-
"sdk"
|
|
25
|
-
],
|
|
26
|
-
"author": "wjxagents",
|
|
27
|
-
"license": "MIT",
|
|
28
|
-
"type": "module",
|
|
29
|
-
"repository": {
|
|
30
|
-
"type": "git",
|
|
31
|
-
"url": "https://github.com/wjxcom/wjx-ai-kit.git",
|
|
32
|
-
"directory": "wjx-api-sdk"
|
|
33
|
-
},
|
|
34
|
-
"devDependencies": {
|
|
35
|
-
"@types/node": "^22",
|
|
36
|
-
"typescript": "^5.5"
|
|
37
|
-
}
|
|
38
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "wjx-api-sdk",
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"description": "问卷星 (Wenjuanxing) OpenAPI SDK — 零 MCP 依赖的 API 客户端",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"dist"
|
|
9
|
+
],
|
|
10
|
+
"engines": {
|
|
11
|
+
"node": ">=20"
|
|
12
|
+
},
|
|
13
|
+
"scripts": {
|
|
14
|
+
"build": "npx -p typescript tsc -p tsconfig.json",
|
|
15
|
+
"test": "npm run build && node --test __tests__/*.test.mjs",
|
|
16
|
+
"clean": "rm -rf dist",
|
|
17
|
+
"prepublishOnly": "npm run build"
|
|
18
|
+
},
|
|
19
|
+
"keywords": [
|
|
20
|
+
"wjx",
|
|
21
|
+
"wenjuanxing",
|
|
22
|
+
"survey",
|
|
23
|
+
"openapi",
|
|
24
|
+
"sdk"
|
|
25
|
+
],
|
|
26
|
+
"author": "wjxagents",
|
|
27
|
+
"license": "MIT",
|
|
28
|
+
"type": "module",
|
|
29
|
+
"repository": {
|
|
30
|
+
"type": "git",
|
|
31
|
+
"url": "https://github.com/wjxcom/wjx-ai-kit.git",
|
|
32
|
+
"directory": "wjx-api-sdk"
|
|
33
|
+
},
|
|
34
|
+
"devDependencies": {
|
|
35
|
+
"@types/node": "^22",
|
|
36
|
+
"typescript": "^5.5"
|
|
37
|
+
}
|
|
38
|
+
}
|