@vtecx/vtecxdocument 1.0.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/README.md +21 -0
- package/docs/api/acl.md +68 -0
- package/docs/api/auth.md +153 -0
- package/docs/api/content.md +177 -0
- package/docs/api/counter.md +96 -0
- package/docs/api/data.md +243 -0
- package/docs/api/db.md +148 -0
- package/docs/api/group.md +151 -0
- package/docs/api/index.md +117 -0
- package/docs/api/notify.md +123 -0
- package/docs/api/oauth.md +100 -0
- package/docs/api/pdf.md +75 -0
- package/docs/api/session.md +170 -0
- package/docs/api/user.md +225 -0
- package/docs/api/util.md +198 -0
- package/docs/framework.md +882 -0
- package/docs/vtecxnext-api.md +259 -0
- package/package.json +24 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# メール・通知
|
|
2
|
+
|
|
3
|
+
メール送信・プッシュ通知・メッセージキューを操作するメソッド群。
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## メール送信
|
|
8
|
+
|
|
9
|
+
### `sendMail(entry, to, cc?, bcc?, attachments?)`
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
sendMail(
|
|
13
|
+
entry: any,
|
|
14
|
+
to: string[],
|
|
15
|
+
cc?: string[],
|
|
16
|
+
bcc?: string[],
|
|
17
|
+
attachments?: string[]
|
|
18
|
+
): Promise<boolean>
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
メールを送信する。件名・本文は `entry`(title = 件名、content = 本文など)で指定する。
|
|
22
|
+
|
|
23
|
+
| 引数 | 型 | 説明 |
|
|
24
|
+
| --- | --- | --- |
|
|
25
|
+
| `entry` | `any` | メールの件名・本文を含むエントリ |
|
|
26
|
+
| `to` | `string[]` | 送信先メールアドレスの配列 |
|
|
27
|
+
| `cc` | `string[]?` | CC |
|
|
28
|
+
| `bcc` | `string[]?` | BCC |
|
|
29
|
+
| `attachments` | `string[]?` | 添付ファイルの URI 配列 |
|
|
30
|
+
|
|
31
|
+
```typescript
|
|
32
|
+
await vtecxnext.sendMail(
|
|
33
|
+
{ title: 'お知らせ', summary: 'テキスト本文', content: { ______text: '<p>HTML本文</p>' } },
|
|
34
|
+
['user@example.com']
|
|
35
|
+
)
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## プッシュ通知
|
|
41
|
+
|
|
42
|
+
### `pushNotification(message, to, title?, subtitle?, imageUrl?, data?)`
|
|
43
|
+
|
|
44
|
+
```typescript
|
|
45
|
+
pushNotification(
|
|
46
|
+
message: string,
|
|
47
|
+
to: string[],
|
|
48
|
+
title?: string,
|
|
49
|
+
subtitle?: string,
|
|
50
|
+
imageUrl?: string,
|
|
51
|
+
data?: any
|
|
52
|
+
): Promise<boolean>
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
モバイルデバイスへのプッシュ通知を送信する。
|
|
56
|
+
|
|
57
|
+
| 引数 | 型 | 説明 |
|
|
58
|
+
| --- | --- | --- |
|
|
59
|
+
| `message` | `string` | 通知本文 |
|
|
60
|
+
| `to` | `string[]` | 送信先(デバイストークン/グループなど)の配列 |
|
|
61
|
+
| `title` | `string?` | 通知タイトル |
|
|
62
|
+
| `subtitle` | `string?` | サブタイトル |
|
|
63
|
+
| `imageUrl` | `string?` | 画像 URL |
|
|
64
|
+
| `data` | `any?` | 追加データ |
|
|
65
|
+
|
|
66
|
+
```typescript
|
|
67
|
+
await vtecxnext.pushNotification('メッセージが届きました', [deviceToken], '新しいメッセージ')
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## メッセージキュー
|
|
73
|
+
|
|
74
|
+
非同期処理の要求をキューに積み、処理状態を管理するための機能。`channel` 単位でキューを識別する。
|
|
75
|
+
|
|
76
|
+
### `setMessageQueue(feed, channel)`
|
|
77
|
+
|
|
78
|
+
```typescript
|
|
79
|
+
setMessageQueue(feed: any, channel: string): Promise<boolean>
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
指定チャネルのキューに feed を登録する。
|
|
83
|
+
|
|
84
|
+
```typescript
|
|
85
|
+
await vtecxnext.setMessageQueue(
|
|
86
|
+
{ feed: { entry: [{ title: 'export-job' }] } },
|
|
87
|
+
'export'
|
|
88
|
+
)
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
### `getMessageQueue(channel)`
|
|
94
|
+
|
|
95
|
+
```typescript
|
|
96
|
+
getMessageQueue(channel: string): Promise<any>
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
指定チャネルのキューに登録された feed を取得する。
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
### `setMessageQueueStatus(flag, channel)`
|
|
104
|
+
|
|
105
|
+
```typescript
|
|
106
|
+
setMessageQueueStatus(flag: boolean, channel: string): Promise<boolean>
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
指定チャネルのメッセージキューの有効・無効状態を設定する。
|
|
110
|
+
|
|
111
|
+
```typescript
|
|
112
|
+
await vtecxnext.setMessageQueueStatus(true, 'export')
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
### `getMessageQueueStatus(channel)`
|
|
118
|
+
|
|
119
|
+
```typescript
|
|
120
|
+
getMessageQueueStatus(channel: string): Promise<any>
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
指定チャネルのメッセージキューの状態を取得する。
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# OAuth・TOTP
|
|
2
|
+
|
|
3
|
+
LINE OAuth 連携および TOTP(時刻ベースワンタイムパスワード)の管理を行うメソッド群。
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## LINE OAuth
|
|
8
|
+
|
|
9
|
+
### `oauthLine()`
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
oauthLine(): Promise<boolean>
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
LINE ログインの認可フローを開始する(認可エンドポイントへのリダイレクトを行う)。
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
### `oauthCallbackLine()`
|
|
20
|
+
|
|
21
|
+
```typescript
|
|
22
|
+
oauthCallbackLine(): Promise<boolean>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
LINE ログインのコールバック処理を行い、セッションを確立する。LINE から渡される `code` / `state` はリクエスト(コンストラクタの `NextRequest`)から読み取られる。
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
### `mergeOAuthUserLine(rxid)`
|
|
30
|
+
|
|
31
|
+
```typescript
|
|
32
|
+
mergeOAuthUserLine(rxid: string): Promise<any>
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
LINE アカウントを既存の vte.cx アカウントに紐付ける。`rxid` でセッションを特定する。
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## TOTP(多要素認証)
|
|
40
|
+
|
|
41
|
+
### `getTotpLink(chs?)`
|
|
42
|
+
|
|
43
|
+
```typescript
|
|
44
|
+
getTotpLink(chs?: number): Promise<any>
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
TOTP 設定用の QR コード URL を含む feed を返す。`chs` で QR コード画像のサイズ(一辺のピクセル数)を指定できる。
|
|
48
|
+
|
|
49
|
+
```typescript
|
|
50
|
+
const totp = await vtecxnext.getTotpLink()
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
### `createTotp(feed)`
|
|
56
|
+
|
|
57
|
+
```typescript
|
|
58
|
+
createTotp(feed: any): Promise<any>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
TOTP を有効化する。認証アプリに表示されるワンタイムコードを feed で渡す。
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
### `deleteTotp(account?)`
|
|
66
|
+
|
|
67
|
+
```typescript
|
|
68
|
+
deleteTotp(account?: string): Promise<any>
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
TOTP を無効化する。`account` を指定すると管理者が対象ユーザーの TOTP を解除する。省略時は自分自身。
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
### `loginWithTotp(totp, isTrustedDevice)`
|
|
76
|
+
|
|
77
|
+
```typescript
|
|
78
|
+
loginWithTotp(totp: string, isTrustedDevice: boolean): Promise<StatusMessage>
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
TOTP コードを検証してログインを完了する。通常ログイン後に呼び出す。
|
|
82
|
+
|
|
83
|
+
| 引数 | 型 | 説明 |
|
|
84
|
+
| --- | --- | --- |
|
|
85
|
+
| `totp` | `string` | 認証アプリに表示されているワンタイムコード |
|
|
86
|
+
| `isTrustedDevice` | `boolean` | `true` にすると次回以降 TOTP をスキップする |
|
|
87
|
+
|
|
88
|
+
```typescript
|
|
89
|
+
await vtecxnext.loginWithTotp('123456', false)
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
### `changeTdid()`
|
|
95
|
+
|
|
96
|
+
```typescript
|
|
97
|
+
changeTdid(): Promise<any>
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
信頼済みデバイス ID(TDID)をリセットする。信頼済みデバイスの登録を無効化する用途で使用。
|
package/docs/api/pdf.md
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# PDF・署名
|
|
2
|
+
|
|
3
|
+
PDF 生成・電子署名の付与・検証を行うメソッド群。
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## PDF 生成
|
|
8
|
+
|
|
9
|
+
### `toPdf(htmlTemplate, filename?)`
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
toPdf(htmlTemplate: string, filename?: string): Promise<boolean>
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
HTML テンプレート文字列を PDF に変換し、レスポンスへ出力する。成功したかどうかを `boolean` で返す。
|
|
16
|
+
|
|
17
|
+
| 引数 | 型 | 説明 |
|
|
18
|
+
| --- | --- | --- |
|
|
19
|
+
| `htmlTemplate` | `string` | PDF 化する HTML テンプレート |
|
|
20
|
+
| `filename` | `string?` | ダウンロード時のファイル名(省略可) |
|
|
21
|
+
|
|
22
|
+
```typescript
|
|
23
|
+
await vtecxnext.toPdf('<html><body><h1>請求書</h1></body></html>', 'invoice.pdf')
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## 電子署名
|
|
29
|
+
|
|
30
|
+
### `putSignature(uri, revision?)`
|
|
31
|
+
|
|
32
|
+
```typescript
|
|
33
|
+
putSignature(uri: string, revision?: number): Promise<any>
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
指定した URI のエントリに電子署名を付与する。
|
|
37
|
+
|
|
38
|
+
| 引数 | 型 | 説明 |
|
|
39
|
+
| --- | --- | --- |
|
|
40
|
+
| `uri` | `string` | 署名対象エントリの URI |
|
|
41
|
+
| `revision` | `number?` | リビジョン(楽観的排他制御。省略可) |
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
### `putSignatures(feed)`
|
|
46
|
+
|
|
47
|
+
```typescript
|
|
48
|
+
putSignatures(feed: any): Promise<any>
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
feed で指定した複数エントリに電子署名を一括で付与する。
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
### `deleteSignature(uri, revision?)`
|
|
56
|
+
|
|
57
|
+
```typescript
|
|
58
|
+
deleteSignature(uri: string, revision?: number): Promise<boolean>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
指定した URI のエントリの署名を削除する。
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
### `checkSignature(uri)`
|
|
66
|
+
|
|
67
|
+
```typescript
|
|
68
|
+
checkSignature(uri: string): Promise<boolean>
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
指定した URI のエントリの署名が有効かどうかを検証し、`boolean` で返す。
|
|
72
|
+
|
|
73
|
+
```typescript
|
|
74
|
+
const isValid = await vtecxnext.checkSignature('/files/contract/001')
|
|
75
|
+
```
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# サーバーセッション
|
|
2
|
+
|
|
3
|
+
サーバーサイドのセッション領域にデータを保存・取得・削除するメソッド群。
|
|
4
|
+
セッションデータはリクエストをまたいで保持される(ユーザーセッションに紐付く)。
|
|
5
|
+
|
|
6
|
+
データ型に応じて 4 種類のサブタイプがある: `Feed`(エントリ一覧)、`Entry`(1 件)、`String`(文字列)、`Long`(整数)。
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Feed(エントリ一覧)
|
|
11
|
+
|
|
12
|
+
### `setSessionFeed(key, feed)`
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
setSessionFeed(key: string, feed: any): Promise<boolean>
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
feed データをセッションに保存する。
|
|
19
|
+
|
|
20
|
+
```typescript
|
|
21
|
+
await vtecxnext.setSessionFeed('cart', { feed: { entry: [...] } })
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
### `getSessionFeed(key)`
|
|
27
|
+
|
|
28
|
+
```typescript
|
|
29
|
+
getSessionFeed(key: string): Promise<any>
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
セッションから feed データを取得する。
|
|
33
|
+
|
|
34
|
+
```typescript
|
|
35
|
+
const cart = await vtecxnext.getSessionFeed('cart')
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
### `deleteSessionFeed(key)`
|
|
41
|
+
|
|
42
|
+
```typescript
|
|
43
|
+
deleteSessionFeed(key: string): Promise<boolean>
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
セッションから feed データを削除する。
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Entry(1 件)
|
|
51
|
+
|
|
52
|
+
### `setSessionEntry(key, entry)`
|
|
53
|
+
|
|
54
|
+
```typescript
|
|
55
|
+
setSessionEntry(key: string, entry: any): Promise<boolean>
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
エントリ 1 件をセッションに保存する。
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
### `getSessionEntry(key)`
|
|
63
|
+
|
|
64
|
+
```typescript
|
|
65
|
+
getSessionEntry(key: string): Promise<any>
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
セッションからエントリ 1 件を取得する。
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
### `deleteSessionEntry(key)`
|
|
73
|
+
|
|
74
|
+
```typescript
|
|
75
|
+
deleteSessionEntry(key: string): Promise<boolean>
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
セッションからエントリを削除する。
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## String(文字列)
|
|
83
|
+
|
|
84
|
+
### `setSessionString(key, value)`
|
|
85
|
+
|
|
86
|
+
```typescript
|
|
87
|
+
setSessionString(key: string, value: string): Promise<boolean>
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
文字列をセッションに保存する。
|
|
91
|
+
|
|
92
|
+
```typescript
|
|
93
|
+
await vtecxnext.setSessionString('selectedTab', 'overview')
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
### `getSessionString(key)`
|
|
99
|
+
|
|
100
|
+
```typescript
|
|
101
|
+
getSessionString(key: string): Promise<string | null>
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
セッションから文字列を取得する。
|
|
105
|
+
|
|
106
|
+
```typescript
|
|
107
|
+
const tab = await vtecxnext.getSessionString('selectedTab')
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
### `deleteSessionString(key)`
|
|
113
|
+
|
|
114
|
+
```typescript
|
|
115
|
+
deleteSessionString(key: string): Promise<boolean>
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
セッションから文字列を削除する。
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## Long(整数)
|
|
123
|
+
|
|
124
|
+
### `setSessionLong(key, value)`
|
|
125
|
+
|
|
126
|
+
```typescript
|
|
127
|
+
setSessionLong(key: string, value: number): Promise<boolean>
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
整数値をセッションに保存する。
|
|
131
|
+
|
|
132
|
+
```typescript
|
|
133
|
+
await vtecxnext.setSessionLong('stepIndex', 2)
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
### `getSessionLong(key)`
|
|
139
|
+
|
|
140
|
+
```typescript
|
|
141
|
+
getSessionLong(key: string): Promise<number | null>
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
セッションから整数値を取得する。
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
### `deleteSessionLong(key)`
|
|
149
|
+
|
|
150
|
+
```typescript
|
|
151
|
+
deleteSessionLong(key: string): Promise<boolean>
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
セッションから整数値を削除する。
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## カウンタ
|
|
159
|
+
|
|
160
|
+
### `incrementSession(key, num)`
|
|
161
|
+
|
|
162
|
+
```typescript
|
|
163
|
+
incrementSession(key: string, num: number): Promise<number | null>
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
セッション上の整数カウンタに `num` を加算する。加算後の値を返す。
|
|
167
|
+
|
|
168
|
+
```typescript
|
|
169
|
+
const count = await vtecxnext.incrementSession('viewCount', 1)
|
|
170
|
+
```
|
package/docs/api/user.md
ADDED
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
# ユーザー管理
|
|
2
|
+
|
|
3
|
+
ユーザーの登録・パスワード変更・無効化・削除などを行うメソッド群。
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## ユーザー登録
|
|
8
|
+
|
|
9
|
+
### `adduser(adduserInfo, reCaptchaToken)`
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
adduser(adduserInfo: AdduserInfo, reCaptchaToken: string): Promise<any>
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
新規ユーザーを登録し、確認メールを送信する。
|
|
16
|
+
|
|
17
|
+
```typescript
|
|
18
|
+
await vtecxnext.adduser(
|
|
19
|
+
{
|
|
20
|
+
username: 'user@example.com',
|
|
21
|
+
pswd: hashedPassword,
|
|
22
|
+
nickname: 'ユーザー名',
|
|
23
|
+
emailSubject: '登録確認',
|
|
24
|
+
emailText: '本登録URLをクリックしてください。',
|
|
25
|
+
emailHtml: '<p>本登録URLをクリックしてください。</p>',
|
|
26
|
+
},
|
|
27
|
+
reCaptchaToken
|
|
28
|
+
)
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
### `adduserByAdmin(adduserInfos)`
|
|
34
|
+
|
|
35
|
+
```typescript
|
|
36
|
+
adduserByAdmin(adduserInfos: AdduserInfo[]): Promise<any>
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
管理者権限で複数ユーザーを一括登録する。reCAPTCHA 不要。
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
### `adduserByGroupadmin(adduserInfos, groupname)`
|
|
44
|
+
|
|
45
|
+
```typescript
|
|
46
|
+
adduserByGroupadmin(adduserInfos: AdduserInfo[], groupname: string): Promise<any>
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
グループ管理者権限で複数ユーザーを登録する。
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## パスワード操作
|
|
54
|
+
|
|
55
|
+
### `passreset(adduserInfo, reCaptchaToken?)`
|
|
56
|
+
|
|
57
|
+
```typescript
|
|
58
|
+
passreset(adduserInfo: AdduserInfo, reCaptchaToken?: string): Promise<any>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
パスワードリセットメールを送信する。
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
### `changepass(newpswd, oldpswd?, passresetToken?)`
|
|
66
|
+
|
|
67
|
+
```typescript
|
|
68
|
+
changepass(newpswd: string, oldpswd?: string, passresetToken?: string): Promise<any>
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
パスワードを変更する。2 つのフローがある。
|
|
72
|
+
|
|
73
|
+
**ログイン済みフロー(現在のパスワードで変更)**
|
|
74
|
+
|
|
75
|
+
```typescript
|
|
76
|
+
await vtecxnext.changepass(newpswd, oldpswd)
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
**メールリセットフロー(未ログイン)**
|
|
80
|
+
|
|
81
|
+
```typescript
|
|
82
|
+
await vtecxnext.loginWithRxid(rxid)
|
|
83
|
+
await vtecxnext.changepass(newpswd, undefined, passresetToken)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
パスワードは `getHashpass(password)`(`@vtecx/vtecxauth`)でハッシュしてから渡す。
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
### `changepassByAdmin(changepassByAdminInfos)`
|
|
91
|
+
|
|
92
|
+
```typescript
|
|
93
|
+
changepassByAdmin(changepassByAdminInfos: ChangepassByAdminInfo[]): Promise<any>
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
管理者権限で指定ユーザーのパスワードを変更する。
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## アカウント変更
|
|
101
|
+
|
|
102
|
+
### `changeaccount(adduserInfo)`
|
|
103
|
+
|
|
104
|
+
```typescript
|
|
105
|
+
changeaccount(adduserInfo: AdduserInfo): Promise<any>
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
メールアドレスなどのアカウント情報を変更する。変更確認メールが送信される。
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
### `changeaccount_verify(verifyCode)`
|
|
113
|
+
|
|
114
|
+
```typescript
|
|
115
|
+
changeaccount_verify(verifyCode: string): Promise<any>
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
`changeaccount()` で送信された確認コードを検証し、変更を確定する。
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## ユーザー状態管理
|
|
123
|
+
|
|
124
|
+
### `userstatus(account?)`
|
|
125
|
+
|
|
126
|
+
```typescript
|
|
127
|
+
userstatus(account?: string): Promise<string | any>
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
ユーザーの状態を取得する。`account` を省略すると全ユーザーの一覧を返す。
|
|
131
|
+
|
|
132
|
+
状態値: `Activated`(本登録)/ `Interim`(仮登録)
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
### `revokeuser(account, isDeleteGroups?)`
|
|
137
|
+
|
|
138
|
+
```typescript
|
|
139
|
+
revokeuser(account: string, isDeleteGroups?: boolean): Promise<any>
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
ユーザーを無効化する(ログイン不可になる)。
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
### `revokeusers(accounts?, uids?, isDeleteGroups?)`
|
|
147
|
+
|
|
148
|
+
```typescript
|
|
149
|
+
revokeusers(accounts?: string[], uids?: string[], isDeleteGroups?: boolean): Promise<any>
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
複数ユーザーを一括無効化する。
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
### `activateuser(account)`
|
|
157
|
+
|
|
158
|
+
```typescript
|
|
159
|
+
activateuser(account: string): Promise<any>
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
無効化されたユーザーを有効化する。
|
|
163
|
+
|
|
164
|
+
---
|
|
165
|
+
|
|
166
|
+
### `activateusers(accounts?, uids?)`
|
|
167
|
+
|
|
168
|
+
```typescript
|
|
169
|
+
activateusers(accounts?: string[], uids?: string[]): Promise<any>
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
複数の無効化されたユーザーを一括有効化する。
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
### `canceluser(isDeleteGroups?)`
|
|
177
|
+
|
|
178
|
+
```typescript
|
|
179
|
+
canceluser(isDeleteGroups?: boolean): Promise<any>
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
ログイン中のユーザー自身がアカウントを退会する。
|
|
183
|
+
|
|
184
|
+
---
|
|
185
|
+
|
|
186
|
+
## ユーザー削除
|
|
187
|
+
|
|
188
|
+
### `deleteuser(account)`
|
|
189
|
+
|
|
190
|
+
```typescript
|
|
191
|
+
deleteuser(account: string): Promise<any>
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
指定ユーザーをサービスから削除する。
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
### `deleteusers(accounts?, uids?)`
|
|
199
|
+
|
|
200
|
+
```typescript
|
|
201
|
+
deleteusers(accounts?: string[], uids?: string[]): Promise<any>
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
複数ユーザーを一括削除する。
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
## 型定義
|
|
209
|
+
|
|
210
|
+
```typescript
|
|
211
|
+
// SDK 上はすべて省略可(用途に応じて必要なフィールドを設定する)
|
|
212
|
+
type AdduserInfo = {
|
|
213
|
+
username?: string // メールアドレス
|
|
214
|
+
pswd?: string // パスワード(ハッシュ済み)
|
|
215
|
+
nickname?: string // ニックネーム
|
|
216
|
+
emailSubject?: string // 確認メール件名
|
|
217
|
+
emailText?: string // 確認メール本文(テキスト)
|
|
218
|
+
emailHtml?: string // 確認メール本文(HTML)
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
type ChangepassByAdminInfo = {
|
|
222
|
+
uid: string // 対象ユーザーの UID
|
|
223
|
+
pswd: string // 新しいパスワード(ハッシュ済み)
|
|
224
|
+
}
|
|
225
|
+
```
|