chukyo-sdk 0.1.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/LICENSE +21 -0
- package/README.md +227 -0
- package/dist/cjs/albo/client.js +133 -0
- package/dist/cjs/albo/index.js +55 -0
- package/dist/cjs/albo/parser/albo.js +110 -0
- package/dist/cjs/albo/types/albo.js +351 -0
- package/dist/cjs/albo/types/alboCalendar.js +51 -0
- package/dist/cjs/albo/types/alboCommon.js +55 -0
- package/dist/cjs/albo/types/alboInformation.js +136 -0
- package/dist/cjs/albo/types/alboMenu.js +92 -0
- package/dist/cjs/albo/types/alboQuestionnaire.js +229 -0
- package/dist/cjs/albo/types/alboSharedItem.js +137 -0
- package/dist/cjs/albo/types/alboSystem.js +103 -0
- package/dist/cjs/albo/types/alboUniversalForm.js +51 -0
- package/dist/cjs/common/dom.js +137 -0
- package/dist/cjs/common/utils.js +29 -0
- package/dist/cjs/constants.js +127 -0
- package/dist/cjs/core/request.js +39 -0
- package/dist/cjs/cubics/client.js +49 -0
- package/dist/cjs/cubics/index.js +22 -0
- package/dist/cjs/cubics/parser/cubics.js +103 -0
- package/dist/cjs/cubics/types/cubics.js +90 -0
- package/dist/cjs/errors.js +55 -0
- package/dist/cjs/index.js +50 -0
- package/dist/cjs/manabo/client.js +135 -0
- package/dist/cjs/manabo/index.js +44 -0
- package/dist/cjs/manabo/parser/manaboClass.js +386 -0
- package/dist/cjs/manabo/parser/manaboEntry.js +38 -0
- package/dist/cjs/manabo/parser/manaboMail.js +153 -0
- package/dist/cjs/manabo/parser/manaboNews.js +26 -0
- package/dist/cjs/manabo/parser/manaboTimetable.js +93 -0
- package/dist/cjs/manabo/types/manaboClass.js +223 -0
- package/dist/cjs/manabo/types/manaboEntry.js +43 -0
- package/dist/cjs/manabo/types/manaboMail.js +117 -0
- package/dist/cjs/manabo/types/manaboNews.js +20 -0
- package/dist/cjs/manabo/types/manaboTimetable.js +79 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/shib/builder.js +239 -0
- package/dist/cjs/shib/index.js +32 -0
- package/dist/cjs/shib/parser/shibLogin.js +138 -0
- package/dist/cjs/shib/parser/shibUser.js +51 -0
- package/dist/cjs/shib/types/common.js +2 -0
- package/dist/cjs/shib/types/shibLogin.js +92 -0
- package/dist/cjs/shib/types/shibUser.js +44 -0
- package/dist/cjs/transports/fetch.js +84 -0
- package/dist/cjs/types.js +9 -0
- package/dist/esm/albo/client.d.ts +80 -0
- package/dist/esm/albo/client.d.ts.map +1 -0
- package/dist/esm/albo/client.js +129 -0
- package/dist/esm/albo/index.d.ts +12 -0
- package/dist/esm/albo/index.d.ts.map +1 -0
- package/dist/esm/albo/index.js +11 -0
- package/dist/esm/albo/parser/albo.d.ts +69 -0
- package/dist/esm/albo/parser/albo.d.ts.map +1 -0
- package/dist/esm/albo/parser/albo.js +84 -0
- package/dist/esm/albo/types/albo.d.ts +460 -0
- package/dist/esm/albo/types/albo.d.ts.map +1 -0
- package/dist/esm/albo/types/albo.js +348 -0
- package/dist/esm/albo/types/alboCalendar.d.ts +58 -0
- package/dist/esm/albo/types/alboCalendar.d.ts.map +1 -0
- package/dist/esm/albo/types/alboCalendar.js +48 -0
- package/dist/esm/albo/types/alboCommon.d.ts +52 -0
- package/dist/esm/albo/types/alboCommon.d.ts.map +1 -0
- package/dist/esm/albo/types/alboCommon.js +51 -0
- package/dist/esm/albo/types/alboInformation.d.ts +214 -0
- package/dist/esm/albo/types/alboInformation.d.ts.map +1 -0
- package/dist/esm/albo/types/alboInformation.js +133 -0
- package/dist/esm/albo/types/alboMenu.d.ts +114 -0
- package/dist/esm/albo/types/alboMenu.d.ts.map +1 -0
- package/dist/esm/albo/types/alboMenu.js +89 -0
- package/dist/esm/albo/types/alboQuestionnaire.d.ts +442 -0
- package/dist/esm/albo/types/alboQuestionnaire.d.ts.map +1 -0
- package/dist/esm/albo/types/alboQuestionnaire.js +226 -0
- package/dist/esm/albo/types/alboSharedItem.d.ts +205 -0
- package/dist/esm/albo/types/alboSharedItem.d.ts.map +1 -0
- package/dist/esm/albo/types/alboSharedItem.js +134 -0
- package/dist/esm/albo/types/alboSystem.d.ts +129 -0
- package/dist/esm/albo/types/alboSystem.d.ts.map +1 -0
- package/dist/esm/albo/types/alboSystem.js +100 -0
- package/dist/esm/albo/types/alboUniversalForm.d.ts +63 -0
- package/dist/esm/albo/types/alboUniversalForm.d.ts.map +1 -0
- package/dist/esm/albo/types/alboUniversalForm.js +48 -0
- package/dist/esm/common/dom.d.ts +35 -0
- package/dist/esm/common/dom.d.ts.map +1 -0
- package/dist/esm/common/dom.js +120 -0
- package/dist/esm/common/utils.d.ts +15 -0
- package/dist/esm/common/utils.d.ts.map +1 -0
- package/dist/esm/common/utils.js +22 -0
- package/dist/esm/constants.d.ts +113 -0
- package/dist/esm/constants.d.ts.map +1 -0
- package/dist/esm/constants.js +124 -0
- package/dist/esm/core/request.d.ts +29 -0
- package/dist/esm/core/request.d.ts.map +1 -0
- package/dist/esm/core/request.js +33 -0
- package/dist/esm/cubics/client.d.ts +13 -0
- package/dist/esm/cubics/client.d.ts.map +1 -0
- package/dist/esm/cubics/client.js +45 -0
- package/dist/esm/cubics/index.d.ts +4 -0
- package/dist/esm/cubics/index.d.ts.map +1 -0
- package/dist/esm/cubics/index.js +3 -0
- package/dist/esm/cubics/parser/cubics.d.ts +8 -0
- package/dist/esm/cubics/parser/cubics.d.ts.map +1 -0
- package/dist/esm/cubics/parser/cubics.js +99 -0
- package/dist/esm/cubics/types/cubics.d.ts +94 -0
- package/dist/esm/cubics/types/cubics.d.ts.map +1 -0
- package/dist/esm/cubics/types/cubics.js +87 -0
- package/dist/esm/errors.d.ts +46 -0
- package/dist/esm/errors.d.ts.map +1 -0
- package/dist/esm/errors.js +46 -0
- package/dist/esm/index.d.ts +19 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +25 -0
- package/dist/esm/manabo/client.d.ts +75 -0
- package/dist/esm/manabo/client.d.ts.map +1 -0
- package/dist/esm/manabo/client.js +131 -0
- package/dist/esm/manabo/index.d.ts +12 -0
- package/dist/esm/manabo/index.d.ts.map +1 -0
- package/dist/esm/manabo/index.js +11 -0
- package/dist/esm/manabo/parser/manaboClass.d.ts +9 -0
- package/dist/esm/manabo/parser/manaboClass.d.ts.map +1 -0
- package/dist/esm/manabo/parser/manaboClass.js +377 -0
- package/dist/esm/manabo/parser/manaboEntry.d.ts +8 -0
- package/dist/esm/manabo/parser/manaboEntry.d.ts.map +1 -0
- package/dist/esm/manabo/parser/manaboEntry.js +33 -0
- package/dist/esm/manabo/parser/manaboMail.d.ts +8 -0
- package/dist/esm/manabo/parser/manaboMail.d.ts.map +1 -0
- package/dist/esm/manabo/parser/manaboMail.js +145 -0
- package/dist/esm/manabo/parser/manaboNews.d.ts +7 -0
- package/dist/esm/manabo/parser/manaboNews.d.ts.map +1 -0
- package/dist/esm/manabo/parser/manaboNews.js +22 -0
- package/dist/esm/manabo/parser/manaboTimetable.d.ts +4 -0
- package/dist/esm/manabo/parser/manaboTimetable.d.ts.map +1 -0
- package/dist/esm/manabo/parser/manaboTimetable.js +89 -0
- package/dist/esm/manabo/types/manaboClass.d.ts +294 -0
- package/dist/esm/manabo/types/manaboClass.d.ts.map +1 -0
- package/dist/esm/manabo/types/manaboClass.js +220 -0
- package/dist/esm/manabo/types/manaboEntry.d.ts +24 -0
- package/dist/esm/manabo/types/manaboEntry.d.ts.map +1 -0
- package/dist/esm/manabo/types/manaboEntry.js +40 -0
- package/dist/esm/manabo/types/manaboMail.d.ts +103 -0
- package/dist/esm/manabo/types/manaboMail.d.ts.map +1 -0
- package/dist/esm/manabo/types/manaboMail.js +114 -0
- package/dist/esm/manabo/types/manaboNews.d.ts +15 -0
- package/dist/esm/manabo/types/manaboNews.d.ts.map +1 -0
- package/dist/esm/manabo/types/manaboNews.js +17 -0
- package/dist/esm/manabo/types/manaboTimetable.d.ts +88 -0
- package/dist/esm/manabo/types/manaboTimetable.d.ts.map +1 -0
- package/dist/esm/manabo/types/manaboTimetable.js +76 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/shib/builder.d.ts +154 -0
- package/dist/esm/shib/builder.d.ts.map +1 -0
- package/dist/esm/shib/builder.js +212 -0
- package/dist/esm/shib/index.d.ts +15 -0
- package/dist/esm/shib/index.d.ts.map +1 -0
- package/dist/esm/shib/index.js +14 -0
- package/dist/esm/shib/parser/shibLogin.d.ts +47 -0
- package/dist/esm/shib/parser/shibLogin.d.ts.map +1 -0
- package/dist/esm/shib/parser/shibLogin.js +127 -0
- package/dist/esm/shib/parser/shibUser.d.ts +11 -0
- package/dist/esm/shib/parser/shibUser.d.ts.map +1 -0
- package/dist/esm/shib/parser/shibUser.js +46 -0
- package/dist/esm/shib/types/common.d.ts +20 -0
- package/dist/esm/shib/types/common.d.ts.map +1 -0
- package/dist/esm/shib/types/common.js +1 -0
- package/dist/esm/shib/types/shibLogin.d.ts +62 -0
- package/dist/esm/shib/types/shibLogin.d.ts.map +1 -0
- package/dist/esm/shib/types/shibLogin.js +89 -0
- package/dist/esm/shib/types/shibUser.d.ts +36 -0
- package/dist/esm/shib/types/shibUser.d.ts.map +1 -0
- package/dist/esm/shib/types/shibUser.js +41 -0
- package/dist/esm/transports/fetch.d.ts +36 -0
- package/dist/esm/transports/fetch.d.ts.map +1 -0
- package/dist/esm/transports/fetch.js +80 -0
- package/dist/esm/types.d.ts +71 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +8 -0
- package/package.json +72 -0
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AlboMenuLayoutSchema = exports.AlboMenuDetailSchema = exports.AlboMenuModuleSchema = exports.AlboMenuSchema = exports.AlboMenuItemSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const alboCommon_1 = require("./alboCommon");
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
// メニュー(menu)系。ポータルのタブ/ページとその配置。
|
|
8
|
+
// - GET /api/menu … メニュー(タブ)一覧
|
|
9
|
+
// - GET /api/menu/view/{uuid} … メニュー詳細(配置モジュールを含む)
|
|
10
|
+
// - GET /api/menu-layout/view/{uuid} … メニューのレイアウト設定
|
|
11
|
+
// - POST /api/menu-layout/save/{uuid} … レイアウト保存(レスポンスは view と同型)
|
|
12
|
+
// ---------------------------------------------------------------------------
|
|
13
|
+
/** メニュー(タブ)1 件 */
|
|
14
|
+
exports.AlboMenuItemSchema = zod_1.z.object({
|
|
15
|
+
/** メニュー UUID @example "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" */
|
|
16
|
+
uuid: zod_1.z.string().meta({ description: "メニュー UUID", example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" }),
|
|
17
|
+
/** メニュー名(例: "ホーム") @example "ホーム" */
|
|
18
|
+
name: zod_1.z.string().meta({ description: "メニュー名", example: "ホーム" }),
|
|
19
|
+
/** メニュー名(英語。無ければ null) @example null */
|
|
20
|
+
name_en: zod_1.z.string().nullable().meta({ description: "メニュー名(英語)", example: null }),
|
|
21
|
+
/** 説明(無ければ null) @example null */
|
|
22
|
+
description: zod_1.z.string().nullable().meta({ description: "説明", example: null }),
|
|
23
|
+
/** 説明(英語。無ければ null) @example null */
|
|
24
|
+
description_en: zod_1.z.string().nullable().meta({ description: "説明(英語)", example: null }),
|
|
25
|
+
/** 表示順 @example 0 */
|
|
26
|
+
order: zod_1.z.number().meta({ description: "表示順", example: 0 }),
|
|
27
|
+
/** 公開開始日時(UNIX 秒) @example 1680000000 */
|
|
28
|
+
start_at: zod_1.z.number().meta({ description: "公開開始日時(UNIX 秒)", example: 1680000000 }),
|
|
29
|
+
/** 公開終了日時(UNIX 秒。実質無期限の場合 253402268400 等) @example 253402268400 */
|
|
30
|
+
end_at: zod_1.z.number().meta({ description: "公開終了日時(UNIX 秒)", example: 253402268400 }),
|
|
31
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
32
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
33
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
34
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
35
|
+
/** 配信対象 UUID @example "bbbbbbbb-cccc-dddd-eeee-ffffffffffff" */
|
|
36
|
+
target_uuid: zod_1.z.string().meta({ description: "配信対象 UUID", example: "bbbbbbbb-cccc-dddd-eeee-ffffffffffff" }),
|
|
37
|
+
});
|
|
38
|
+
/** メニュー一覧取得 API のレスポンス全体 */
|
|
39
|
+
exports.AlboMenuSchema = (0, alboCommon_1.alboEnvelope)(zod_1.z.object({
|
|
40
|
+
/** メニュー配列 */
|
|
41
|
+
items: zod_1.z.array(exports.AlboMenuItemSchema).meta({ description: "メニュー配列" }),
|
|
42
|
+
}));
|
|
43
|
+
/**
|
|
44
|
+
* メニューに配置される 1 モジュール(お知らせ・学年暦・アンケート等のウィジェット)。
|
|
45
|
+
* `parts` はモジュール種別(type)ごとに構造が大きく異なるため無変換で保持する。
|
|
46
|
+
*/
|
|
47
|
+
exports.AlboMenuModuleSchema = zod_1.z.object({
|
|
48
|
+
/** モジュール UUID @example "cccccccc-dddd-eeee-ffff-000000000000" */
|
|
49
|
+
uuid: zod_1.z.string().meta({ description: "モジュール UUID", example: "cccccccc-dddd-eeee-ffff-000000000000" }),
|
|
50
|
+
/** モジュール種別(1=学内システム, 2=お知らせ, 3=アンケート, 4=学年暦, 8=汎用申請 …) @example 2 */
|
|
51
|
+
type: zod_1.z.number().meta({ description: "モジュール種別(数値コード)", example: 2 }),
|
|
52
|
+
/** モジュール名(例: "お知らせ") @example "お知らせ" */
|
|
53
|
+
name: zod_1.z.string().meta({ description: "モジュール名", example: "お知らせ" }),
|
|
54
|
+
/** モジュール名(英語。無ければ null) @example null */
|
|
55
|
+
name_en: zod_1.z.string().nullable().meta({ description: "モジュール名(英語)", example: null }),
|
|
56
|
+
/** 説明 @example "" */
|
|
57
|
+
description: zod_1.z.string().meta({ description: "説明", example: "" }),
|
|
58
|
+
/** 説明(英語。無ければ null) @example null */
|
|
59
|
+
description_en: zod_1.z.string().nullable().meta({ description: "説明(英語)", example: null }),
|
|
60
|
+
/** 表示順 @example 0 */
|
|
61
|
+
order: zod_1.z.number().meta({ description: "表示順", example: 0 }),
|
|
62
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
63
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
64
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
65
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
66
|
+
/** 配信対象 UUID @example "bbbbbbbb-cccc-dddd-eeee-ffffffffffff" */
|
|
67
|
+
target_uuid: zod_1.z.string().meta({ description: "配信対象 UUID", example: "bbbbbbbb-cccc-dddd-eeee-ffffffffffff" }),
|
|
68
|
+
/** モジュール固有の設定。種別ごとに形が異なるため無変換で保持する */
|
|
69
|
+
parts: zod_1.z.unknown().meta({ description: "モジュール固有の設定(種別ごとに形が異なるため無変換で保持)" }),
|
|
70
|
+
});
|
|
71
|
+
/** メニュー詳細取得 API のレスポンス全体 */
|
|
72
|
+
exports.AlboMenuDetailSchema = (0, alboCommon_1.alboEnvelope)(exports.AlboMenuItemSchema.extend({
|
|
73
|
+
/** 配置モジュールの配列 */
|
|
74
|
+
modules: zod_1.z.array(exports.AlboMenuModuleSchema).meta({ description: "配置モジュールの配列" }),
|
|
75
|
+
}));
|
|
76
|
+
/**
|
|
77
|
+
* メニューレイアウト取得 API のレスポンス全体。
|
|
78
|
+
* `layout` と `calendar_display_setting` は JSON を文字列化した値がそのまま入っている
|
|
79
|
+
* (必要ならさらに JSON.parse する)。保存 API(menu-layout/save)も同じ形で返る。
|
|
80
|
+
*/
|
|
81
|
+
exports.AlboMenuLayoutSchema = (0, alboCommon_1.alboEnvelope)(zod_1.z.object({
|
|
82
|
+
/** 対象メニューの UUID @example "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" */
|
|
83
|
+
menu_uuid: zod_1.z.string().meta({ description: "対象メニューの UUID", example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" }),
|
|
84
|
+
/** グリッド配置(JSON 文字列) @example "[{\"w\":1,\"h\":33,\"x\":1,\"y\":35,\"i\":\"widget-1\",\"minH\":15}]" */
|
|
85
|
+
layout: zod_1.z.string().meta({ description: "グリッド配置(JSON 文字列)", example: '[{"w":1,"h":33,"x":1,"y":35,"i":"widget-1","minH":15}]' }),
|
|
86
|
+
/** カレンダー表示設定(JSON 文字列) @example "{}" */
|
|
87
|
+
calendar_display_setting: zod_1.z.string().meta({ description: "カレンダー表示設定(JSON 文字列)", example: "{}" }),
|
|
88
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
89
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
90
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
91
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
92
|
+
}));
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AlboQuestionnaireDetailSchema = exports.AlboQuestionnaireDetailResultSchema = exports.AlboQuestionnaireQuestionSchema = exports.AlboQuestionnaireAnswerSchema = exports.AlboQuestionnaireAnswerChoiceSchema = exports.AlboQuestionnaireAnswerCandidateSchema = exports.AlboQuestionnaireCategoryListSchema = exports.AlboQuestionnaireSchema = exports.AlboQuestionnaireItemSchema = exports.AlboQuestionnaireCategorySchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const alboCommon_1 = require("./alboCommon");
|
|
6
|
+
const albo_1 = require("./albo");
|
|
7
|
+
// ---------------------------------------------------------------------------
|
|
8
|
+
// アンケート(questionnaire)系。
|
|
9
|
+
// - GET /api/questionnaire/{page} … アンケート一覧
|
|
10
|
+
// - GET /api/questionnaire/view/{uuid} … アンケート詳細(設問・回答を含む)
|
|
11
|
+
// - PUT /api/questionnaire/answer/{uuid} … 回答送信(レスポンスは詳細と同型)
|
|
12
|
+
// - GET /api/questionnaire-category … アンケートカテゴリ一覧
|
|
13
|
+
// ---------------------------------------------------------------------------
|
|
14
|
+
/** アンケートのカテゴリ(一覧・カテゴリ API の双方で使う) */
|
|
15
|
+
exports.AlboQuestionnaireCategorySchema = zod_1.z.object({
|
|
16
|
+
/** カテゴリ UUID @example "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" */
|
|
17
|
+
uuid: zod_1.z.string().meta({ description: "カテゴリ UUID", example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" }),
|
|
18
|
+
/** カテゴリ名(例: "回答必須") @example "回答必須" */
|
|
19
|
+
name: zod_1.z.string().meta({ description: "カテゴリ名", example: "回答必須" }),
|
|
20
|
+
/** カテゴリ名(英語。無ければ null) @example null */
|
|
21
|
+
name_en: zod_1.z.string().nullable().meta({ description: "カテゴリ名(英語)", example: null }),
|
|
22
|
+
/** 説明(無ければ null) @example null */
|
|
23
|
+
description: zod_1.z.string().nullable().meta({ description: "説明", example: null }),
|
|
24
|
+
/** 説明(英語。無ければ null) @example null */
|
|
25
|
+
description_en: zod_1.z.string().nullable().meta({ description: "説明(英語)", example: null }),
|
|
26
|
+
/** 強制回答に設定できるか(0/1 の数値フラグ) @example 1 */
|
|
27
|
+
can_set_forced: zod_1.z.number().meta({ description: "強制回答に設定できるか(0/1)", example: 1 }),
|
|
28
|
+
/** 表示順 @example 0 */
|
|
29
|
+
order: zod_1.z.number().meta({ description: "表示順", example: 0 }),
|
|
30
|
+
/** 作成者 @example "system" */
|
|
31
|
+
created_by: zod_1.z.string().meta({ description: "作成者", example: "system" }),
|
|
32
|
+
/** 更新者(無ければ null) @example null */
|
|
33
|
+
updated_by: zod_1.z.string().nullable().meta({ description: "更新者", example: null }),
|
|
34
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
35
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
36
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
37
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
38
|
+
/** このカテゴリの未回答アンケート数 @example 1 */
|
|
39
|
+
unanswered_count: zod_1.z.number().meta({ description: "このカテゴリの未回答アンケート数", example: 1 }),
|
|
40
|
+
});
|
|
41
|
+
/** アンケート一覧の 1 件(設問は含まない) */
|
|
42
|
+
exports.AlboQuestionnaireItemSchema = zod_1.z.object({
|
|
43
|
+
/** アンケート UUID @example "12345678-90ab-cdef-1234-567890abcdef" */
|
|
44
|
+
uuid: zod_1.z.string().meta({ description: "アンケート UUID", example: "12345678-90ab-cdef-1234-567890abcdef" }),
|
|
45
|
+
/** 発信元(例: "財務部・財務課") @example "財務部・財務課" */
|
|
46
|
+
publish_from: zod_1.z.string().meta({ description: "発信元", example: "財務部・財務課" }),
|
|
47
|
+
/** 発信元(英語。無ければ null) @example null */
|
|
48
|
+
publish_from_en: zod_1.z.string().nullable().meta({ description: "発信元(英語)", example: null }),
|
|
49
|
+
/** アンケート名 @example "学生生活アンケート" */
|
|
50
|
+
name: zod_1.z.string().meta({ description: "アンケート名", example: "学生生活アンケート" }),
|
|
51
|
+
/** アンケート名(英語。無ければ null) @example null */
|
|
52
|
+
name_en: zod_1.z.string().nullable().meta({ description: "アンケート名(英語)", example: null }),
|
|
53
|
+
/** 説明本文(HTML。無ければ null) @example "<p>ご協力ください。</p>" */
|
|
54
|
+
content: zod_1.z.string().nullable().meta({ description: "説明本文(HTML)", example: "<p>ご協力ください。</p>" }),
|
|
55
|
+
/** 説明本文(英語。無ければ null) @example null */
|
|
56
|
+
content_en: zod_1.z.string().nullable().meta({ description: "説明本文(英語)", example: null }),
|
|
57
|
+
/** 回答後に表示するメッセージ(HTML。無ければ null) @example "<p>ご回答ありがとうございました。</p>" */
|
|
58
|
+
after_message: zod_1.z.string().nullable().meta({ description: "回答後に表示するメッセージ(HTML)", example: "<p>ご回答ありがとうございました。</p>" }),
|
|
59
|
+
/** 回答後メッセージ(英語。無ければ null) @example null */
|
|
60
|
+
after_message_en: zod_1.z.string().nullable().meta({ description: "回答後メッセージ(英語)", example: null }),
|
|
61
|
+
/** 掲載開始日時(UNIX 秒) @example 1783445975 */
|
|
62
|
+
publish_start_at: zod_1.z.number().meta({ description: "掲載開始日時(UNIX 秒)", example: 1783445975 }),
|
|
63
|
+
/** 掲載終了日時(UNIX 秒) @example 1785000000 */
|
|
64
|
+
publish_end_at: zod_1.z.number().meta({ description: "掲載終了日時(UNIX 秒)", example: 1785000000 }),
|
|
65
|
+
/** 回答受付開始日時(UNIX 秒) @example 1783445975 */
|
|
66
|
+
perform_start_at: zod_1.z.number().meta({ description: "回答受付開始日時(UNIX 秒)", example: 1783445975 }),
|
|
67
|
+
/** 回答受付終了日時(UNIX 秒) @example 1785000000 */
|
|
68
|
+
perform_end_at: zod_1.z.number().meta({ description: "回答受付終了日時(UNIX 秒)", example: 1785000000 }),
|
|
69
|
+
/** 結果公開開始日時(UNIX 秒) @example 1785000001 */
|
|
70
|
+
publish_result_start_at: zod_1.z.number().meta({ description: "結果公開開始日時(UNIX 秒)", example: 1785000001 }),
|
|
71
|
+
/** 結果公開終了日時(UNIX 秒) @example 1790000000 */
|
|
72
|
+
publish_result_end_at: zod_1.z.number().meta({ description: "結果公開終了日時(UNIX 秒)", example: 1790000000 }),
|
|
73
|
+
/** 優先度 @example 0 */
|
|
74
|
+
priority: zod_1.z.number().meta({ description: "優先度", example: 0 }),
|
|
75
|
+
/** 匿名アンケートか @example true */
|
|
76
|
+
is_anonymous: zod_1.z.boolean().meta({ description: "匿名アンケートか", example: true }),
|
|
77
|
+
/** 一度しか回答できないか @example true */
|
|
78
|
+
can_be_answered_only_once: zod_1.z.boolean().meta({ description: "一度しか回答できないか", example: true }),
|
|
79
|
+
/** 結果を公開するか @example false */
|
|
80
|
+
is_public_result: zod_1.z.boolean().meta({ description: "結果を公開するか", example: false }),
|
|
81
|
+
/** 回答必須(強制)か @example false */
|
|
82
|
+
is_forced: zod_1.z.boolean().meta({ description: "回答必須(強制)か", example: false }),
|
|
83
|
+
/** アプリ通知を送るか(0/1 の数値フラグ) @example 1 */
|
|
84
|
+
is_send_notification: zod_1.z.number().meta({ description: "アプリ通知を送るか(0/1)", example: 1 }),
|
|
85
|
+
/** メール通知を送るか(0/1 の数値フラグ) @example 0 */
|
|
86
|
+
is_send_mail_notification: zod_1.z.number().meta({ description: "メール通知を送るか(0/1)", example: 0 }),
|
|
87
|
+
/** 作成者 @example "kyomu" */
|
|
88
|
+
created_by: zod_1.z.string().meta({ description: "作成者", example: "kyomu" }),
|
|
89
|
+
/** 更新者 @example "kyomu" */
|
|
90
|
+
updated_by: zod_1.z.string().meta({ description: "更新者", example: "kyomu" }),
|
|
91
|
+
/** テンプレートか(0/1 の数値フラグ) @example 0 */
|
|
92
|
+
is_template: zod_1.z.number().meta({ description: "テンプレートか(0/1)", example: 0 }),
|
|
93
|
+
/** 下書きがあるか @example false */
|
|
94
|
+
has_draft: zod_1.z.boolean().meta({ description: "下書きがあるか", example: false }),
|
|
95
|
+
/** 回答済みか @example false */
|
|
96
|
+
is_answered: zod_1.z.boolean().meta({ description: "回答済みか", example: false }),
|
|
97
|
+
/** カテゴリ */
|
|
98
|
+
category: exports.AlboQuestionnaireCategorySchema,
|
|
99
|
+
});
|
|
100
|
+
/** アンケート一覧取得 API のレスポンス全体 */
|
|
101
|
+
exports.AlboQuestionnaireSchema = (0, alboCommon_1.alboEnvelope)(zod_1.z.object({
|
|
102
|
+
...alboCommon_1.paginationShape,
|
|
103
|
+
/** アンケート配列 */
|
|
104
|
+
items: zod_1.z.array(exports.AlboQuestionnaireItemSchema).meta({ description: "アンケート配列" }),
|
|
105
|
+
}));
|
|
106
|
+
/** アンケートカテゴリ一覧取得 API のレスポンス全体 */
|
|
107
|
+
exports.AlboQuestionnaireCategoryListSchema = (0, alboCommon_1.alboEnvelope)(zod_1.z.object({
|
|
108
|
+
...alboCommon_1.paginationShape,
|
|
109
|
+
/** 全体の未回答アンケート数 @example 1 */
|
|
110
|
+
unanswered_count: zod_1.z.number().meta({ description: "全体の未回答アンケート数", example: 1 }),
|
|
111
|
+
/** カテゴリ配列 */
|
|
112
|
+
items: zod_1.z.array(exports.AlboQuestionnaireCategorySchema).meta({ description: "カテゴリ配列" }),
|
|
113
|
+
}));
|
|
114
|
+
/** 設問の選択肢 */
|
|
115
|
+
exports.AlboQuestionnaireAnswerCandidateSchema = zod_1.z.object({
|
|
116
|
+
/** 選択肢 UUID @example "cccccccc-dddd-eeee-ffff-000000000000" */
|
|
117
|
+
uuid: zod_1.z.string().meta({ description: "選択肢 UUID", example: "cccccccc-dddd-eeee-ffff-000000000000" }),
|
|
118
|
+
/** 選択肢の文言(例: "内容を確認しました") @example "内容を確認しました" */
|
|
119
|
+
content: zod_1.z.string().meta({ description: "選択肢の文言", example: "内容を確認しました" }),
|
|
120
|
+
/** 選択肢の文言(英語。無ければ null) @example null */
|
|
121
|
+
content_en: zod_1.z.string().nullable().meta({ description: "選択肢の文言(英語)", example: null }),
|
|
122
|
+
/** 表示順 @example 0 */
|
|
123
|
+
order: zod_1.z.number().meta({ description: "表示順", example: 0 }),
|
|
124
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
125
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
126
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
127
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
128
|
+
/** 集計時の回答数(結果非公開時は null) @example null */
|
|
129
|
+
answer_count: zod_1.z.number().nullable().meta({ description: "集計時の回答数", example: null }),
|
|
130
|
+
});
|
|
131
|
+
/** 回答で選ばれた選択肢 */
|
|
132
|
+
exports.AlboQuestionnaireAnswerChoiceSchema = zod_1.z.object({
|
|
133
|
+
/** 回答選択肢 UUID @example "dddddddd-eeee-ffff-0000-111111111111" */
|
|
134
|
+
uuid: zod_1.z.string().meta({ description: "回答選択肢 UUID", example: "dddddddd-eeee-ffff-0000-111111111111" }),
|
|
135
|
+
/** 対応する設問選択肢の UUID @example "cccccccc-dddd-eeee-ffff-000000000000" */
|
|
136
|
+
question_answer_candidate_uuid: zod_1.z.string().meta({ description: "対応する設問選択肢の UUID", example: "cccccccc-dddd-eeee-ffff-000000000000" }),
|
|
137
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
138
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
139
|
+
});
|
|
140
|
+
/** 1 ユーザーの 1 設問への回答 */
|
|
141
|
+
exports.AlboQuestionnaireAnswerSchema = zod_1.z.object({
|
|
142
|
+
/** 回答 UUID @example "eeeeeeee-ffff-0000-1111-222222222222" */
|
|
143
|
+
uuid: zod_1.z.string().meta({ description: "回答 UUID", example: "eeeeeeee-ffff-0000-1111-222222222222" }),
|
|
144
|
+
/** 回答したユーザーの UUID @example "aaaaaaaa-0000-0000-0000-000000000000" */
|
|
145
|
+
user_uuid: zod_1.z.string().meta({ description: "回答したユーザーの UUID", example: "aaaaaaaa-0000-0000-0000-000000000000" }),
|
|
146
|
+
/** 自由記述の回答内容(選択式では null) @example null */
|
|
147
|
+
content: zod_1.z.string().nullable().meta({ description: "自由記述の回答内容", example: null }),
|
|
148
|
+
/** 回答種別(設問 type に対応する数値コード) @example 1 */
|
|
149
|
+
type: zod_1.z.number().meta({ description: "回答種別(数値コード)", example: 1 }),
|
|
150
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
151
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
152
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
153
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
154
|
+
/**
|
|
155
|
+
* 回答者のユーザー情報。個人情報を含む大きなオブジェクトのため、
|
|
156
|
+
* 中身は無変換で保持する(構造は AlboPersonalUserSchema 相当)。
|
|
157
|
+
*/
|
|
158
|
+
user: zod_1.z.unknown().meta({ description: "回答者のユーザー情報(個人情報を含む。無変換で保持)" }),
|
|
159
|
+
/** 添付ファイル(無ければ null) @example null */
|
|
160
|
+
file: zod_1.z.unknown().nullable().meta({ description: "添付ファイル", example: null }),
|
|
161
|
+
/** 選択された選択肢の一覧 */
|
|
162
|
+
answer_choice: zod_1.z.array(exports.AlboQuestionnaireAnswerChoiceSchema).meta({ description: "選択された選択肢の一覧" }),
|
|
163
|
+
});
|
|
164
|
+
/** アンケート詳細の 1 設問 */
|
|
165
|
+
exports.AlboQuestionnaireQuestionSchema = zod_1.z.object({
|
|
166
|
+
/** 設問 UUID @example "ffffffff-0000-1111-2222-333333333333" */
|
|
167
|
+
uuid: zod_1.z.string().meta({ description: "設問 UUID", example: "ffffffff-0000-1111-2222-333333333333" }),
|
|
168
|
+
/** 設問のバージョン種別 @example 1 */
|
|
169
|
+
version_type: zod_1.z.number().meta({ description: "設問のバージョン種別", example: 1 }),
|
|
170
|
+
/** 設問文 @example "本日の授業はいかがでしたか" */
|
|
171
|
+
content: zod_1.z.string().meta({ description: "設問文", example: "本日の授業はいかがでしたか" }),
|
|
172
|
+
/** 設問文(英語。無ければ null) @example null */
|
|
173
|
+
content_en: zod_1.z.string().nullable().meta({ description: "設問文(英語)", example: null }),
|
|
174
|
+
/** 補足説明 @example "" */
|
|
175
|
+
detail: zod_1.z.string().meta({ description: "補足説明", example: "" }),
|
|
176
|
+
/** 補足説明(英語。無ければ null) @example null */
|
|
177
|
+
detail_en: zod_1.z.string().nullable().meta({ description: "補足説明(英語)", example: null }),
|
|
178
|
+
/** 設問種別(1=単一選択 など。数値コード) @example 1 */
|
|
179
|
+
type: zod_1.z.number().meta({ description: "設問種別(数値コード)", example: 1 }),
|
|
180
|
+
/** 記述回答の最大文字数(選択式では null) @example null */
|
|
181
|
+
max_length: zod_1.z.number().nullable().meta({ description: "記述回答の最大文字数", example: null }),
|
|
182
|
+
/** 表示順 @example 0 */
|
|
183
|
+
order: zod_1.z.number().meta({ description: "表示順", example: 0 }),
|
|
184
|
+
/** 必須回答か @example true */
|
|
185
|
+
is_required: zod_1.z.boolean().meta({ description: "必須回答か", example: true }),
|
|
186
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
187
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
188
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
189
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
190
|
+
/** 設問に添付されたファイル(無ければ null) @example null */
|
|
191
|
+
file: albo_1.AlboInformationFileSchema.nullable().meta({ description: "設問に添付されたファイル", example: null }),
|
|
192
|
+
/** 分岐設定 @example [] */
|
|
193
|
+
item_branch_choice: zod_1.z.array(zod_1.z.unknown()).meta({ description: "分岐設定", example: [] }),
|
|
194
|
+
/** 選択肢の一覧 */
|
|
195
|
+
answer_candidates: zod_1.z.array(exports.AlboQuestionnaireAnswerCandidateSchema).meta({ description: "選択肢の一覧" }),
|
|
196
|
+
/** 集計時の回答数(結果非公開時は null) @example null */
|
|
197
|
+
answer_count: zod_1.z.number().nullable().meta({ description: "集計時の回答数", example: null }),
|
|
198
|
+
/** この設問への回答(自分の回答を含む) */
|
|
199
|
+
answers: zod_1.z.array(exports.AlboQuestionnaireAnswerSchema).meta({ description: "この設問への回答(自分の回答を含む)" }),
|
|
200
|
+
});
|
|
201
|
+
/** アンケート詳細(設問・回答を含む)の本体 */
|
|
202
|
+
exports.AlboQuestionnaireDetailResultSchema = exports.AlboQuestionnaireItemSchema.omit({
|
|
203
|
+
created_by: true,
|
|
204
|
+
updated_by: true,
|
|
205
|
+
}).extend({
|
|
206
|
+
/** 作成者(無ければ null) @example "kyomu" */
|
|
207
|
+
created_by: zod_1.z.string().nullable().meta({ description: "作成者", example: "kyomu" }),
|
|
208
|
+
/** 更新者(無ければ null) @example null */
|
|
209
|
+
updated_by: zod_1.z.string().nullable().meta({ description: "更新者", example: null }),
|
|
210
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
211
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
212
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
213
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
214
|
+
/** 公開中か @example true */
|
|
215
|
+
is_public: zod_1.z.boolean().meta({ description: "公開中か", example: true }),
|
|
216
|
+
/** 掲載状態(例: "public") @example "public" */
|
|
217
|
+
status_period: zod_1.z.string().meta({ description: "掲載状態", example: "public" }),
|
|
218
|
+
/** 権限 UUID @example "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" */
|
|
219
|
+
permission_uuid: zod_1.z.string().meta({ description: "権限 UUID", example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" }),
|
|
220
|
+
/** 配信対象 UUID @example "bbbbbbbb-cccc-dddd-eeee-ffffffffffff" */
|
|
221
|
+
target_uuid: zod_1.z.string().meta({ description: "配信対象 UUID", example: "bbbbbbbb-cccc-dddd-eeee-ffffffffffff" }),
|
|
222
|
+
/** 設問一覧 */
|
|
223
|
+
items: zod_1.z.array(exports.AlboQuestionnaireQuestionSchema).meta({ description: "設問一覧" }),
|
|
224
|
+
});
|
|
225
|
+
/**
|
|
226
|
+
* アンケート詳細取得 API のレスポンス全体。
|
|
227
|
+
* 回答送信 API(PUT /api/questionnaire/answer/{uuid})も同じ形で返る。
|
|
228
|
+
*/
|
|
229
|
+
exports.AlboQuestionnaireDetailSchema = (0, alboCommon_1.alboEnvelope)(exports.AlboQuestionnaireDetailResultSchema);
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AlboSharedItemListSchema = exports.AlboSharedItemSchema = exports.AlboSharedItemParentFolderSchema = exports.AlboSharedFolderMetaSchema = exports.AlboSharedFolderBaseSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const alboCommon_1 = require("./alboCommon");
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
// ファイル共有(shared-item)系。
|
|
8
|
+
// - GET /api/shared-item/{page}/{folderUuid} … 指定フォルダ配下のファイル/サブフォルダ一覧
|
|
9
|
+
// フォルダのメタ情報(folder_meta)と、その中のアイテム(items)を返す。
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
/** 共有フォルダの基本情報(folder_meta とその親で共通) */
|
|
12
|
+
exports.AlboSharedFolderBaseSchema = zod_1.z.object({
|
|
13
|
+
/** フォルダ UUID @example "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" */
|
|
14
|
+
uuid: zod_1.z.string().meta({ description: "フォルダ UUID", example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" }),
|
|
15
|
+
/** フォルダ名(例: "留学・国際交流") @example "留学・国際交流" */
|
|
16
|
+
name: zod_1.z.string().meta({ description: "フォルダ名", example: "留学・国際交流" }),
|
|
17
|
+
/** 説明(無ければ null) @example null */
|
|
18
|
+
description: zod_1.z.string().nullable().meta({ description: "説明", example: null }),
|
|
19
|
+
/** 説明(英語。無ければ null) @example null */
|
|
20
|
+
description_en: zod_1.z.string().nullable().meta({ description: "説明(英語)", example: null }),
|
|
21
|
+
/** 容量上限(バイト) @example 1073741824 */
|
|
22
|
+
quota: zod_1.z.number().meta({ description: "容量上限(バイト)", example: 1073741824 }),
|
|
23
|
+
/** 管轄部署(例: "国際課") @example "国際課" */
|
|
24
|
+
jurisdiction: zod_1.z.string().meta({ description: "管轄部署", example: "国際課" }),
|
|
25
|
+
/** 管轄部署(英語。無ければ null) @example null */
|
|
26
|
+
jurisdiction_en: zod_1.z.string().nullable().meta({ description: "管轄部署(英語)", example: null }),
|
|
27
|
+
/** 公開開始日時(UNIX 秒) @example 1680000000 */
|
|
28
|
+
publish_start_at: zod_1.z.number().meta({ description: "公開開始日時(UNIX 秒)", example: 1680000000 }),
|
|
29
|
+
/** 公開終了日時(UNIX 秒) @example 253402268400 */
|
|
30
|
+
publish_end_at: zod_1.z.number().meta({ description: "公開終了日時(UNIX 秒)", example: 253402268400 }),
|
|
31
|
+
/** 作成者 UUID(無ければ null) @example null */
|
|
32
|
+
created_by: zod_1.z.string().nullable().meta({ description: "作成者 UUID", example: null }),
|
|
33
|
+
/** 更新者 UUID(無ければ null) @example null */
|
|
34
|
+
updated_by: zod_1.z.string().nullable().meta({ description: "更新者 UUID", example: null }),
|
|
35
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
36
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
37
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
38
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
39
|
+
/** 管理権限の対象 UUID @example "bbbbbbbb-cccc-dddd-eeee-ffffffffffff" */
|
|
40
|
+
manage_target_uuid: zod_1.z.string().meta({ description: "管理権限の対象 UUID", example: "bbbbbbbb-cccc-dddd-eeee-ffffffffffff" }),
|
|
41
|
+
/** 編集権限の対象 UUID @example "cccccccc-dddd-eeee-ffff-000000000000" */
|
|
42
|
+
edit_target_uuid: zod_1.z.string().meta({ description: "編集権限の対象 UUID", example: "cccccccc-dddd-eeee-ffff-000000000000" }),
|
|
43
|
+
/** 閲覧権限の対象 UUID @example "dddddddd-eeee-ffff-0000-111111111111" */
|
|
44
|
+
read_target_uuid: zod_1.z.string().meta({ description: "閲覧権限の対象 UUID", example: "dddddddd-eeee-ffff-0000-111111111111" }),
|
|
45
|
+
});
|
|
46
|
+
/** 現在表示中フォルダのメタ情報 */
|
|
47
|
+
exports.AlboSharedFolderMetaSchema = exports.AlboSharedFolderBaseSchema.extend({
|
|
48
|
+
/** 使用容量の合計(バイト) @example 1048576 */
|
|
49
|
+
total_size: zod_1.z.number().meta({ description: "使用容量の合計(バイト)", example: 1048576 }),
|
|
50
|
+
/** 親フォルダ(最上位なら基本情報のみ) */
|
|
51
|
+
parent: exports.AlboSharedFolderBaseSchema,
|
|
52
|
+
});
|
|
53
|
+
/** アイテムに含まれる親フォルダ情報(folder_meta とは別形式で、target_uuid を持たない) */
|
|
54
|
+
exports.AlboSharedItemParentFolderSchema = zod_1.z.object({
|
|
55
|
+
/** 連番 ID @example 1 */
|
|
56
|
+
id: zod_1.z.number().meta({ description: "連番 ID", example: 1 }),
|
|
57
|
+
/** フォルダ UUID @example "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" */
|
|
58
|
+
uuid: zod_1.z.string().meta({ description: "フォルダ UUID", example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" }),
|
|
59
|
+
/** フォルダ名 @example "留学・国際交流" */
|
|
60
|
+
name: zod_1.z.string().meta({ description: "フォルダ名", example: "留学・国際交流" }),
|
|
61
|
+
/** 説明(無ければ null) @example null */
|
|
62
|
+
description: zod_1.z.string().nullable().meta({ description: "説明", example: null }),
|
|
63
|
+
/** 説明(英語。無ければ null) @example null */
|
|
64
|
+
description_en: zod_1.z.string().nullable().meta({ description: "説明(英語)", example: null }),
|
|
65
|
+
/** 容量上限(バイト) @example 1073741824 */
|
|
66
|
+
quota: zod_1.z.number().meta({ description: "容量上限(バイト)", example: 1073741824 }),
|
|
67
|
+
/** 管轄部署 @example "国際課" */
|
|
68
|
+
jurisdiction: zod_1.z.string().meta({ description: "管轄部署", example: "国際課" }),
|
|
69
|
+
/** 管轄部署(英語。無ければ null) @example null */
|
|
70
|
+
jurisdiction_en: zod_1.z.string().nullable().meta({ description: "管轄部署(英語)", example: null }),
|
|
71
|
+
/** 公開開始日時(UNIX 秒) @example 1680000000 */
|
|
72
|
+
publish_start_at: zod_1.z.number().meta({ description: "公開開始日時(UNIX 秒)", example: 1680000000 }),
|
|
73
|
+
/** 公開終了日時(UNIX 秒) @example 253402268400 */
|
|
74
|
+
publish_end_at: zod_1.z.number().meta({ description: "公開終了日時(UNIX 秒)", example: 253402268400 }),
|
|
75
|
+
/** 削除済みか(0/1 の数値フラグ) @example 0 */
|
|
76
|
+
is_deleted: zod_1.z.number().meta({ description: "削除済みか(0/1)", example: 0 }),
|
|
77
|
+
/** 作成者 UUID(無ければ null) @example null */
|
|
78
|
+
created_by: zod_1.z.string().nullable().meta({ description: "作成者 UUID", example: null }),
|
|
79
|
+
/** 更新者 UUID(無ければ null) @example null */
|
|
80
|
+
updated_by: zod_1.z.string().nullable().meta({ description: "更新者 UUID", example: null }),
|
|
81
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
82
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
83
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
84
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
85
|
+
});
|
|
86
|
+
/** 共有アイテム(ファイル or サブフォルダ)1 件 */
|
|
87
|
+
exports.AlboSharedItemSchema = zod_1.z.object({
|
|
88
|
+
/** アイテム UUID @example "eeeeeeee-ffff-0000-1111-222222222222" */
|
|
89
|
+
uuid: zod_1.z.string().meta({ description: "アイテム UUID", example: "eeeeeeee-ffff-0000-1111-222222222222" }),
|
|
90
|
+
/** ファイル名/フォルダ名 @example "留学案内.pdf" */
|
|
91
|
+
name: zod_1.z.string().meta({ description: "ファイル名/フォルダ名", example: "留学案内.pdf" }),
|
|
92
|
+
/** 説明(無ければ null) @example null */
|
|
93
|
+
description: zod_1.z.string().nullable().meta({ description: "説明", example: null }),
|
|
94
|
+
/** 説明(英語。無ければ null) @example null */
|
|
95
|
+
description_en: zod_1.z.string().nullable().meta({ description: "説明(英語)", example: null }),
|
|
96
|
+
/** 公開開始日時(UNIX 秒) @example 1680000000 */
|
|
97
|
+
publish_start_at: zod_1.z.number().meta({ description: "公開開始日時(UNIX 秒)", example: 1680000000 }),
|
|
98
|
+
/** 公開終了日時(UNIX 秒) @example 253402268400 */
|
|
99
|
+
publish_end_at: zod_1.z.number().meta({ description: "公開終了日時(UNIX 秒)", example: 253402268400 }),
|
|
100
|
+
/**
|
|
101
|
+
* 作成者のユーザー情報。個人情報を含む大きなオブジェクトのため無変換で保持する
|
|
102
|
+
* (構造は AlboPersonalUserSchema 相当)。
|
|
103
|
+
*/
|
|
104
|
+
created_by: zod_1.z.unknown().meta({ description: "作成者のユーザー情報(個人情報を含む。無変換で保持)" }),
|
|
105
|
+
/** 更新者のユーザー情報(無変換で保持) */
|
|
106
|
+
updated_by: zod_1.z.unknown().meta({ description: "更新者のユーザー情報(無変換で保持)" }),
|
|
107
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
108
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
109
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
110
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
111
|
+
/** 所属フォルダ */
|
|
112
|
+
parent_folder: exports.AlboSharedItemParentFolderSchema,
|
|
113
|
+
/** ファイルか(false ならサブフォルダ) @example true */
|
|
114
|
+
is_file: zod_1.z.boolean().meta({ description: "ファイルか(false ならサブフォルダ)", example: true }),
|
|
115
|
+
/** ファイルサイズ(バイト) @example 102400 */
|
|
116
|
+
size: zod_1.z.number().meta({ description: "ファイルサイズ(バイト)", example: 102400 }),
|
|
117
|
+
/** 拡張子(例: "pdf") @example "pdf" */
|
|
118
|
+
extension: zod_1.z.string().meta({ description: "拡張子", example: "pdf" }),
|
|
119
|
+
/** MIME タイプ(例: "application/pdf") @example "application/pdf" */
|
|
120
|
+
mimetype: zod_1.z.string().meta({ description: "MIME タイプ", example: "application/pdf" }),
|
|
121
|
+
/** 編集権限を持つか @example false */
|
|
122
|
+
has_edit_permission: zod_1.z.boolean().meta({ description: "編集権限を持つか", example: false }),
|
|
123
|
+
/** 閲覧権限を持つか @example true */
|
|
124
|
+
has_read_permission: zod_1.z.boolean().meta({ description: "閲覧権限を持つか", example: true }),
|
|
125
|
+
});
|
|
126
|
+
/** ファイル共有一覧取得 API のレスポンス全体 */
|
|
127
|
+
exports.AlboSharedItemListSchema = (0, alboCommon_1.alboEnvelope)(zod_1.z.object({
|
|
128
|
+
...alboCommon_1.paginationShape,
|
|
129
|
+
/** このフォルダに対する編集権限があるか @example false */
|
|
130
|
+
has_edit_permission: zod_1.z.boolean().meta({ description: "このフォルダに対する編集権限があるか", example: false }),
|
|
131
|
+
/** 全体管理権限があるか @example false */
|
|
132
|
+
has_global_permission: zod_1.z.boolean().meta({ description: "全体管理権限があるか", example: false }),
|
|
133
|
+
/** 表示中フォルダのメタ情報 */
|
|
134
|
+
folder_meta: exports.AlboSharedFolderMetaSchema,
|
|
135
|
+
/** ファイル/サブフォルダの配列 */
|
|
136
|
+
items: zod_1.z.array(exports.AlboSharedItemSchema).meta({ description: "ファイル/サブフォルダの配列" }),
|
|
137
|
+
}));
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AlboActionLogSchema = exports.AlboActionLogItemSchema = exports.AlboDeviceSchema = exports.AlboDeviceItemSchema = exports.AlboLanguageSettingSchema = exports.AlboSystemSettingSchema = exports.AlboSystemSettingItemSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const alboCommon_1 = require("./alboCommon");
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
// システム設定・アカウント管理系。
|
|
8
|
+
// - GET /api/system-setting … システム全体の設定一覧
|
|
9
|
+
// - GET /api/language-setting/view … 翻訳(言語)設定
|
|
10
|
+
// - GET /api/device/{page} … ログイン済みスマホデバイス一覧
|
|
11
|
+
// - GET /api/action-log/user-view/{page} … 自分の操作ログ
|
|
12
|
+
// ---------------------------------------------------------------------------
|
|
13
|
+
/** システム設定の 1 項目 */
|
|
14
|
+
exports.AlboSystemSettingItemSchema = zod_1.z.object({
|
|
15
|
+
/** 設定 UUID @example "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" */
|
|
16
|
+
uuid: zod_1.z.string().meta({ description: "設定 UUID", example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" }),
|
|
17
|
+
/** 設定種別コード(例: "01") @example "01" */
|
|
18
|
+
setting_type: zod_1.z.string().meta({ description: "設定種別コード", example: "01" }),
|
|
19
|
+
/** 設定種別名(例: "お知らせ設定") @example "お知らせ設定" */
|
|
20
|
+
setting_type_name: zod_1.z.string().meta({ description: "設定種別名", example: "お知らせ設定" }),
|
|
21
|
+
/** 設定区分コード(例: "016") @example "016" */
|
|
22
|
+
setting_kbn: zod_1.z.string().meta({ description: "設定区分コード", example: "016" }),
|
|
23
|
+
/** 設定区分名(例: "お知らせカテゴリーツリー設定") @example "お知らせカテゴリーツリー設定" */
|
|
24
|
+
setting_kbn_name: zod_1.z.string().meta({ description: "設定区分名", example: "お知らせカテゴリーツリー設定" }),
|
|
25
|
+
/** 設定が有効か @example true */
|
|
26
|
+
setting_active: zod_1.z.boolean().meta({ description: "設定が有効か", example: true }),
|
|
27
|
+
/** 設定値。項目ごとに構造が異なるため無変換で保持する */
|
|
28
|
+
setting_value: zod_1.z.unknown().meta({ description: "設定値(項目ごとに構造が異なるため無変換で保持)" }),
|
|
29
|
+
/** 一般公開される設定か @example false */
|
|
30
|
+
is_public: zod_1.z.boolean().meta({ description: "一般公開される設定か", example: false }),
|
|
31
|
+
});
|
|
32
|
+
/** システム設定一覧取得 API のレスポンス全体 */
|
|
33
|
+
exports.AlboSystemSettingSchema = (0, alboCommon_1.alboEnvelope)(zod_1.z.object({
|
|
34
|
+
/** 設定項目の配列 */
|
|
35
|
+
items: zod_1.z.array(exports.AlboSystemSettingItemSchema).meta({ description: "設定項目の配列" }),
|
|
36
|
+
}));
|
|
37
|
+
/** 翻訳(言語)設定取得 API のレスポンス全体 */
|
|
38
|
+
exports.AlboLanguageSettingSchema = (0, alboCommon_1.alboEnvelope)(zod_1.z.object({
|
|
39
|
+
/** 翻訳エンジン種別(例: "DeepL") @example "DeepL" */
|
|
40
|
+
type: zod_1.z.string().meta({ description: "翻訳エンジン種別", example: "DeepL" }),
|
|
41
|
+
/** 翻訳機能を利用するか(0/1 の数値フラグ) @example 1 */
|
|
42
|
+
using: zod_1.z.number().meta({ description: "翻訳機能を利用するか(0/1)", example: 1 }),
|
|
43
|
+
/** API キーが登録済みか @example true */
|
|
44
|
+
has_api_key: zod_1.z.boolean().meta({ description: "API キーが登録済みか", example: true }),
|
|
45
|
+
}));
|
|
46
|
+
/** ログイン済みスマホデバイス 1 件 */
|
|
47
|
+
exports.AlboDeviceItemSchema = zod_1.z.object({
|
|
48
|
+
/** デバイスの連番 ID @example 1 */
|
|
49
|
+
id: zod_1.z.number().meta({ description: "デバイスの連番 ID", example: 1 }),
|
|
50
|
+
/** ユーザー UUID @example "aaaaaaaa-0000-0000-0000-000000000000" */
|
|
51
|
+
user_uuid: zod_1.z.string().meta({ description: "ユーザー UUID", example: "aaaaaaaa-0000-0000-0000-000000000000" }),
|
|
52
|
+
/** ログイントークン @example "00000000000000000000000000000000" */
|
|
53
|
+
login_token: zod_1.z.string().meta({ description: "ログイントークン", example: "00000000000000000000000000000000" }),
|
|
54
|
+
/** アプリのインスタンス ID @example "00000000-0000-0000-0000-000000000000" */
|
|
55
|
+
instance_id: zod_1.z.string().meta({ description: "アプリのインスタンス ID", example: "00000000-0000-0000-0000-000000000000" }),
|
|
56
|
+
/** プッシュ通知トークン(FCM/APNs) @example "dummy-push-token" */
|
|
57
|
+
token: zod_1.z.string().meta({ description: "プッシュ通知トークン(FCM/APNs)", example: "dummy-push-token" }),
|
|
58
|
+
/** デバイス種別(例: "ios", "android") @example "ios" */
|
|
59
|
+
device_type: zod_1.z.string().meta({ description: "デバイス種別", example: "ios" }),
|
|
60
|
+
/** ワンタイムトークン(無ければ null) @example null */
|
|
61
|
+
onetime_token: zod_1.z.string().nullable().meta({ description: "ワンタイムトークン", example: null }),
|
|
62
|
+
/** マスターパスワード設定済みか(0/1 の数値フラグ) @example 0 */
|
|
63
|
+
is_master_password: zod_1.z.number().meta({ description: "マスターパスワード設定済みか(0/1)", example: 0 }),
|
|
64
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
65
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
66
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
67
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
68
|
+
});
|
|
69
|
+
/** デバイス一覧取得 API のレスポンス全体 */
|
|
70
|
+
exports.AlboDeviceSchema = (0, alboCommon_1.alboEnvelope)(zod_1.z.object({
|
|
71
|
+
...alboCommon_1.paginationShape,
|
|
72
|
+
/** デバイスの配列 */
|
|
73
|
+
items: zod_1.z.array(exports.AlboDeviceItemSchema).meta({ description: "デバイスの配列" }),
|
|
74
|
+
}));
|
|
75
|
+
/** 操作ログ 1 件 */
|
|
76
|
+
exports.AlboActionLogItemSchema = zod_1.z.object({
|
|
77
|
+
/** ログの連番 ID @example 1 */
|
|
78
|
+
id: zod_1.z.number().meta({ description: "ログの連番 ID", example: 1 }),
|
|
79
|
+
/** ログ UUID @example "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" */
|
|
80
|
+
uuid: zod_1.z.string().meta({ description: "ログ UUID", example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" }),
|
|
81
|
+
/** 操作種別(例: "login") @example "login" */
|
|
82
|
+
action: zod_1.z.string().meta({ description: "操作種別", example: "login" }),
|
|
83
|
+
/** プラットフォーム(例: "pc", "smartphone") @example "pc" */
|
|
84
|
+
platform: zod_1.z.string().meta({ description: "プラットフォーム", example: "pc" }),
|
|
85
|
+
/** 接続種別(例: "web", "app") @example "web" */
|
|
86
|
+
type: zod_1.z.string().meta({ description: "接続種別", example: "web" }),
|
|
87
|
+
/** マスターパスワード使用フラグ(0/1 の数値フラグ) @example 0 */
|
|
88
|
+
is_master_password: zod_1.z.number().meta({ description: "マスターパスワード使用フラグ(0/1)", example: 0 }),
|
|
89
|
+
/** 詳細(JSON 文字列) @example "{\"message\":\"SAML login for Web\"}" */
|
|
90
|
+
description: zod_1.z.string().meta({ description: "詳細(JSON 文字列)", example: '{"message":"SAML login for Web"}' }),
|
|
91
|
+
/** リモートアドレス(カンマ区切りで複数の場合あり) @example "0.0.0.0" */
|
|
92
|
+
remote_address: zod_1.z.string().meta({ description: "リモートアドレス", example: "0.0.0.0" }),
|
|
93
|
+
/** 操作したユーザーの UUID @example "aaaaaaaa-0000-0000-0000-000000000000" */
|
|
94
|
+
created_by: zod_1.z.string().meta({ description: "操作したユーザーの UUID", example: "aaaaaaaa-0000-0000-0000-000000000000" }),
|
|
95
|
+
/** 記録日時(UNIX 秒) @example 1700000000 */
|
|
96
|
+
created_at: zod_1.z.number().meta({ description: "記録日時(UNIX 秒)", example: 1700000000 }),
|
|
97
|
+
});
|
|
98
|
+
/** 操作ログ一覧取得 API のレスポンス全体 */
|
|
99
|
+
exports.AlboActionLogSchema = (0, alboCommon_1.alboEnvelope)(zod_1.z.object({
|
|
100
|
+
...alboCommon_1.paginationShape,
|
|
101
|
+
/** 操作ログの配列 */
|
|
102
|
+
items: zod_1.z.array(exports.AlboActionLogItemSchema).meta({ description: "操作ログの配列" }),
|
|
103
|
+
}));
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AlboUniversalFormSchema = exports.AlboUniversalFormCategoryListSchema = exports.AlboUniversalFormCategorySchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const alboCommon_1 = require("./alboCommon");
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
// 汎用申請(universal-form / 各種手続き)系。
|
|
8
|
+
// - GET /api/universal-form/{page} … 申請フォーム一覧
|
|
9
|
+
// - GET /api/universal-form-category/{page} … 申請カテゴリ一覧
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
/** 汎用申請のカテゴリ */
|
|
12
|
+
exports.AlboUniversalFormCategorySchema = zod_1.z.object({
|
|
13
|
+
/** カテゴリ UUID @example "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" */
|
|
14
|
+
uuid: zod_1.z.string().meta({ description: "カテゴリ UUID", example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" }),
|
|
15
|
+
/** カテゴリ名(例: "教務") @example "教務" */
|
|
16
|
+
name: zod_1.z.string().meta({ description: "カテゴリ名", example: "教務" }),
|
|
17
|
+
/** カテゴリ名(英語。無ければ null) @example null */
|
|
18
|
+
name_en: zod_1.z.string().nullable().meta({ description: "カテゴリ名(英語)", example: null }),
|
|
19
|
+
/** 説明(無ければ null) @example null */
|
|
20
|
+
description: zod_1.z.string().nullable().meta({ description: "説明", example: null }),
|
|
21
|
+
/** 説明(英語。無ければ null) @example null */
|
|
22
|
+
description_en: zod_1.z.string().nullable().meta({ description: "説明(英語)", example: null }),
|
|
23
|
+
/** 強制申請に設定できるか(0/1 の数値フラグ) @example 0 */
|
|
24
|
+
can_set_forced: zod_1.z.number().meta({ description: "強制申請に設定できるか(0/1)", example: 0 }),
|
|
25
|
+
/** 表示順 @example 0 */
|
|
26
|
+
order: zod_1.z.number().meta({ description: "表示順", example: 0 }),
|
|
27
|
+
/** 作成者 @example "system" */
|
|
28
|
+
created_by: zod_1.z.string().meta({ description: "作成者", example: "system" }),
|
|
29
|
+
/** 更新者(無ければ null) @example null */
|
|
30
|
+
updated_by: zod_1.z.string().nullable().meta({ description: "更新者", example: null }),
|
|
31
|
+
/** 作成日時(UNIX 秒) @example 1700000000 */
|
|
32
|
+
created_at: zod_1.z.number().meta({ description: "作成日時(UNIX 秒)", example: 1700000000 }),
|
|
33
|
+
/** 更新日時(UNIX 秒) @example 1700000000 */
|
|
34
|
+
updated_at: zod_1.z.number().meta({ description: "更新日時(UNIX 秒)", example: 1700000000 }),
|
|
35
|
+
});
|
|
36
|
+
/** 汎用申請カテゴリ一覧取得 API のレスポンス全体 */
|
|
37
|
+
exports.AlboUniversalFormCategoryListSchema = (0, alboCommon_1.alboEnvelope)(zod_1.z.object({
|
|
38
|
+
...alboCommon_1.paginationShape,
|
|
39
|
+
/** カテゴリ配列 */
|
|
40
|
+
items: zod_1.z.array(exports.AlboUniversalFormCategorySchema).meta({ description: "カテゴリ配列" }),
|
|
41
|
+
}));
|
|
42
|
+
/**
|
|
43
|
+
* 汎用申請一覧取得 API のレスポンス全体。
|
|
44
|
+
* 観測できたのは対象フォームが 0 件(`items: []`)のケースのみ。
|
|
45
|
+
* 個々のフォーム項目の構造は未確認のため、要素は無変換で保持する。
|
|
46
|
+
*/
|
|
47
|
+
exports.AlboUniversalFormSchema = (0, alboCommon_1.alboEnvelope)(zod_1.z.object({
|
|
48
|
+
...alboCommon_1.paginationShape,
|
|
49
|
+
/** 申請フォームの配列 @example [] */
|
|
50
|
+
items: zod_1.z.array(zod_1.z.unknown()).meta({ description: "申請フォームの配列", example: [] }),
|
|
51
|
+
}));
|