@originator-profile/opvc 0.6.0-beta.1 → 0.6.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,19 +2,28 @@
2
2
 
3
3
  Originator Profile (OP) 仕様に準拠した Verifiable Credential (VC) を作成・管理するためのツールです。
4
4
 
5
- ## Installation
5
+ <!-- prettier-ignore-start -->
6
+ <!-- environments-start -->
6
7
 
7
- ### From source
8
+ <!-- NOTE: Auto-generated by ../../scripts/update-readme-environments.ts from package.json, .github/workflows/test.yml, Dockerfile, and manifest.json. Edit the source, not this section. -->
8
9
 
9
- ```sh
10
- git clone https://github.com/originator-profile/originator-profile.git
11
- cd originator-profile/packages/opvc
12
- pnpm install
13
- npm i -g .
14
- opvc
15
- ```
10
+ ## Environment
11
+
12
+ ### Verified
13
+
14
+ - OS: Ubuntu 24.04
16
15
 
17
- ### Using `npx` / `npm`
16
+ ### Development
17
+
18
+ - Node.js: `^22.18.0 || ^24.10.0 || ^26.2.0`
19
+ - pnpm: `11.0.9`
20
+
21
+ <!-- environments-stop -->
22
+ <!-- prettier-ignore-end -->
23
+
24
+ ## Installation
25
+
26
+ You can install it using `npx` or `npm`.
18
27
 
19
28
  ```sh
20
29
  # npx
@@ -25,6 +34,9 @@ npm i -g @originator-profile/opvc
25
34
  opvc
26
35
  ```
27
36
 
37
+ > [!NOTE]
38
+ > When using `npx`, replace `opvc` in the following documentation with `npx @originator-profile/opvc`. (for example: `opvc help ...` becomes `npx @originator-profile/opvc help ...`)
39
+
28
40
  ## Commands
29
41
 
30
42
  <!-- prettier-ignore-start -->
@@ -76,54 +88,54 @@ FLAG DESCRIPTIONS
76
88
  Article Content Attestation の例:
77
89
 
78
90
  {
79
- "@context": [
80
- "https://www.w3.org/ns/credentials/v2",
81
- "https://originator-profile.org/ns/credentials/v1",
82
- "https://originator-profile.org/ns/cip/v1",
83
- {
84
- "@language": "ja"
85
- }
86
- ],
87
- "type": [
88
- "VerifiableCredential",
89
- "ContentAttestation"
90
- ],
91
- "issuer": "dns:example.com",
92
- "credentialSubject": {
93
- "id": "urn:uuid:78550fa7-f846-4e0f-ad5c-8d34461cb95b",
94
- "type": "Article",
95
- "headline": "<Webページのタイトル>",
96
- "image": {
97
- "id": "<サムネイル画像URL>",
98
- "content": [
99
- "<コンテンツ (data:// 形式URL)>"
100
- ]
101
- },
102
- "description": "<Webページの説明>",
103
- "author": [
104
- "山田花子"
105
- ],
106
- "editor": [
107
- "山田太郎"
108
- ],
109
- "datePublished": "2023-07-04T19:14:00Z",
110
- "dateModified": "2023-07-04T19:14:00Z",
111
- "genre": "Arts & Entertainment"
112
- },
113
- "allowedUrl": "https://media.example.com/articles/2024-06-30",
114
- "target": [
115
- {
116
- "type": "<Target Integrityの種別>",
117
- "content": [
118
- "<コンテンツ本体 (text/html or URL)>"
119
- ],
120
- "cssSelector": "<CSS セレクター (optional)>"
121
- }
122
- ]
91
+ "@context": [
92
+ "https://www.w3.org/ns/credentials/v2",
93
+ "https://originator-profile.org/ns/credentials/v1",
94
+ "https://originator-profile.org/ns/cip/v1",
95
+ {
96
+ "@language": "ja"
97
+ }
98
+ ],
99
+ "type": [
100
+ "VerifiableCredential",
101
+ "ContentAttestation"
102
+ ],
103
+ "issuer": "dns:example.com",
104
+ "credentialSubject": {
105
+ "id": "urn:uuid:78550fa7-f846-4e0f-ad5c-8d34461cb95b",
106
+ "type": "Article",
107
+ "headline": "<Webページのタイトル>",
108
+ "image": {
109
+ "id": "<サムネイル画像URL>",
110
+ "content": [
111
+ "<コンテンツ (data:// 形式URL)>"
112
+ ]
113
+ },
114
+ "description": "<Webページの説明>",
115
+ "author": [
116
+ "山田花子"
117
+ ],
118
+ "editor": [
119
+ "山田太郎"
120
+ ],
121
+ "datePublished": "2023-07-04T19:14:00Z",
122
+ "dateModified": "2023-07-04T19:14:00Z",
123
+ "genre": "Arts & Entertainment"
124
+ },
125
+ "allowedUrl": "https://media.example.com/articles/2024-06-30",
126
+ "target": [
127
+ {
128
+ "type": "<Target Integrityの種別>",
129
+ "content": [
130
+ "<コンテンツ本体 (text/html or URL)>"
131
+ ],
132
+ "cssSelector": "<CSS セレクター (optional)>"
133
+ }
134
+ ]
123
135
  }
124
136
  ```
125
137
 
126
- _See code: [src/commands/ca/sign.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.1/packages/opvc/src/commands/ca/sign.ts)_
138
+ _See code: [src/commands/ca/sign.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.2/packages/opvc/src/commands/ca/sign.ts)_
127
139
 
128
140
  ## `opvc ca:unsigned`
129
141
 
@@ -161,54 +173,54 @@ FLAG DESCRIPTIONS
161
173
  Article Content Attestation の例:
162
174
 
163
175
  {
164
- "@context": [
165
- "https://www.w3.org/ns/credentials/v2",
166
- "https://originator-profile.org/ns/credentials/v1",
167
- "https://originator-profile.org/ns/cip/v1",
168
- {
169
- "@language": "<言語・地域コード>"
170
- }
171
- ],
172
- "type": [
173
- "VerifiableCredential",
174
- "ContentAttestation"
175
- ],
176
- "issuer": "<OP ID>",
177
- "credentialSubject": {
178
- "id": "<CA ID>",
179
- "type": "Article",
180
- "headline": "<コンテンツのタイトル>",
181
- "description": "<コンテンツの説明>",
182
- "image": {
183
- "id": "<サムネイル画像URL>",
184
- "content": [
185
- "<コンテンツ (data:// 形式URL)>"
186
- ]
187
- },
188
- "datePublished": "<公開日時>",
189
- "dateModified": "<最終更新日時>",
190
- "author": [
191
- "<著者名>"
192
- ],
193
- "editor": [
194
- "<編集者名>"
195
- ],
196
- "genre": "<ジャンル>"
197
- },
198
- "allowedUrl": "<CAの使用を許可するWebページのURL Pattern>",
199
- "target": [
200
- {
201
- "type": "<Target Integrityの種別>",
202
- "content": [
203
- "<コンテンツ本体 (text/html or URL)>"
204
- ],
205
- "cssSelector": "<CSS セレクター (optional)>"
206
- }
207
- ]
176
+ "@context": [
177
+ "https://www.w3.org/ns/credentials/v2",
178
+ "https://originator-profile.org/ns/credentials/v1",
179
+ "https://originator-profile.org/ns/cip/v1",
180
+ {
181
+ "@language": "<言語・地域コード>"
182
+ }
183
+ ],
184
+ "type": [
185
+ "VerifiableCredential",
186
+ "ContentAttestation"
187
+ ],
188
+ "issuer": "<OP ID>",
189
+ "credentialSubject": {
190
+ "id": "<CA ID>",
191
+ "type": "Article",
192
+ "headline": "<コンテンツのタイトル>",
193
+ "description": "<コンテンツの説明>",
194
+ "image": {
195
+ "id": "<サムネイル画像URL>",
196
+ "content": [
197
+ "<コンテンツ (data:// 形式URL)>"
198
+ ]
199
+ },
200
+ "datePublished": "<公開日時>",
201
+ "dateModified": "<最終更新日時>",
202
+ "author": [
203
+ "<著者名>"
204
+ ],
205
+ "editor": [
206
+ "<編集者名>"
207
+ ],
208
+ "genre": "<ジャンル>"
209
+ },
210
+ "allowedUrl": "<CAの使用を許可するWebページのURL Pattern>",
211
+ "target": [
212
+ {
213
+ "type": "<Target Integrityの種別>",
214
+ "content": [
215
+ "<コンテンツ本体 (text/html or URL)>"
216
+ ],
217
+ "cssSelector": "<CSS セレクター (optional)>"
218
+ }
219
+ ]
208
220
  }
209
221
  ```
210
222
 
211
- _See code: [src/commands/ca/unsigned.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.1/packages/opvc/src/commands/ca/unsigned.ts)_
223
+ _See code: [src/commands/ca/unsigned.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.2/packages/opvc/src/commands/ca/unsigned.ts)_
212
224
 
213
225
  ## `opvc help [COMMAND]`
214
226
 
@@ -246,7 +258,7 @@ DESCRIPTION
246
258
  鍵ペアの生成
247
259
  ```
248
260
 
249
- _See code: [src/commands/key-gen/index.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.1/packages/opvc/src/commands/key-gen/index.ts)_
261
+ _See code: [src/commands/key-gen/index.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.2/packages/opvc/src/commands/key-gen/index.ts)_
250
262
 
251
263
  ## `opvc sign`
252
264
 
@@ -303,117 +315,117 @@ FLAG DESCRIPTIONS
303
315
  コアプロファイル (CP) の例:
304
316
 
305
317
  {
306
- "@context": [
307
- "https://www.w3.org/ns/credentials/v2",
308
- "https://originator-profile.org/ns/credentials/v1"
309
- ],
310
- "type": [
311
- "VerifiableCredential",
312
- "CoreProfile"
313
- ],
314
- "issuer": "dns:example.org",
315
- "credentialSubject": {
316
- "id": "dns:example.jp",
317
- "type": "Core",
318
- "jwks": {
319
- "keys": [
320
- {
321
- "kid": "LIstkoCvByn4jk8oZPvigQkzTzO9UwnGnE-VMlkZvYQ",
322
- "kty": "EC",
323
- "crv": "P-256",
324
- "x": "QiVI-I-3gv-17KN0RFLHKh5Vj71vc75eSOkyMsxFxbE",
325
- "y": "bEzRDEy41bihcTnpSILImSVymTQl9BQZq36QpCpJQnI"
326
- }
327
- ]
328
- }
329
- }
318
+ "@context": [
319
+ "https://www.w3.org/ns/credentials/v2",
320
+ "https://originator-profile.org/ns/credentials/v1"
321
+ ],
322
+ "type": [
323
+ "VerifiableCredential",
324
+ "CoreProfile"
325
+ ],
326
+ "issuer": "dns:example.org",
327
+ "credentialSubject": {
328
+ "id": "dns:example.jp",
329
+ "type": "Core",
330
+ "jwks": {
331
+ "keys": [
332
+ {
333
+ "kid": "LIstkoCvByn4jk8oZPvigQkzTzO9UwnGnE-VMlkZvYQ",
334
+ "kty": "EC",
335
+ "crv": "P-256",
336
+ "x": "QiVI-I-3gv-17KN0RFLHKh5Vj71vc75eSOkyMsxFxbE",
337
+ "y": "bEzRDEy41bihcTnpSILImSVymTQl9BQZq36QpCpJQnI"
338
+ }
339
+ ]
340
+ }
341
+ }
330
342
  }
331
343
 
332
344
  ウェブメディアプロファイル (WMP) の例:
333
345
 
334
346
  {
335
- "@context": [
336
- "https://www.w3.org/ns/credentials/v2",
337
- "https://originator-profile.org/ns/credentials/v1",
338
- "https://originator-profile.org/ns/cip/v1",
339
- {
340
- "@language": "ja"
341
- }
342
- ],
343
- "type": [
344
- "VerifiableCredential",
345
- "WebMediaProfile"
346
- ],
347
- "issuer": "dns:wmp-issuer.example.org",
348
- "credentialSubject": {
349
- "id": "dns:wmp-holder.example.jp",
350
- "type": "OnlineBusiness",
351
- "url": "https://www.wmp-holder.example.jp/",
352
- "name": "○○メディア (※開発用サンプル)",
353
- "logo": {
354
- "id": "https://www.wmp-holder.example.jp/image.png",
355
- "digestSRI": "sha256-Upwn7gYMuRmJlD1ZivHk876vXHzokXrwXj50VgfnMnY="
356
- },
357
- "email": "contact@wmp-holder.example.jp",
358
- "telephone": "0000000000",
359
- "contactPoint": {
360
- "id": "https://wmp-holder.example.jp/contact",
361
- "name": "お問い合わせ"
362
- },
363
- "informationTransmissionPolicy": {
364
- "id": "https://wmp-holder.example.jp/statement",
365
- "name": "情報発信ポリシー"
366
- },
367
- "publishingPrinciple": {
368
- "id": "https://wmp-holder.example.jp/editorial-guidelines",
369
- "name": "編集ガイドライン"
370
- },
371
- "privacyPolicy": {
372
- "id": "https://wmp-holder.example.jp/privacy",
373
- "name": "プライバシーポリシー"
374
- },
375
- "description": [
376
- {
377
- "encodingFormat": "text/plain",
378
- "text": "この文章はこの Web メディアに関する補足情報です。"
379
- }
380
- ]
381
- }
347
+ "@context": [
348
+ "https://www.w3.org/ns/credentials/v2",
349
+ "https://originator-profile.org/ns/credentials/v1",
350
+ "https://originator-profile.org/ns/cip/v1",
351
+ {
352
+ "@language": "ja"
353
+ }
354
+ ],
355
+ "type": [
356
+ "VerifiableCredential",
357
+ "WebMediaProfile"
358
+ ],
359
+ "issuer": "dns:wmp-issuer.example.org",
360
+ "credentialSubject": {
361
+ "id": "dns:wmp-holder.example.jp",
362
+ "type": "OnlineBusiness",
363
+ "url": "https://www.wmp-holder.example.jp/",
364
+ "name": "○○メディア (※開発用サンプル)",
365
+ "logo": {
366
+ "id": "https://www.wmp-holder.example.jp/image.png",
367
+ "digestSRI": "sha256-Upwn7gYMuRmJlD1ZivHk876vXHzokXrwXj50VgfnMnY="
368
+ },
369
+ "email": "contact@wmp-holder.example.jp",
370
+ "telephone": "0000000000",
371
+ "contactPoint": {
372
+ "id": "https://wmp-holder.example.jp/contact",
373
+ "name": "お問い合わせ"
374
+ },
375
+ "informationTransmissionPolicy": {
376
+ "id": "https://wmp-holder.example.jp/statement",
377
+ "name": "情報発信ポリシー"
378
+ },
379
+ "publishingPrinciple": {
380
+ "id": "https://wmp-holder.example.jp/editorial-guidelines",
381
+ "name": "編集ガイドライン"
382
+ },
383
+ "privacyPolicy": {
384
+ "id": "https://wmp-holder.example.jp/privacy",
385
+ "name": "プライバシーポリシー"
386
+ },
387
+ "description": [
388
+ {
389
+ "encodingFormat": "text/plain",
390
+ "text": "この文章はこの Web メディアに関する補足情報です。"
391
+ }
392
+ ]
393
+ }
382
394
  }
383
395
 
384
396
  Website Profile (WSP) の例:
385
397
 
386
398
  {
387
- "@context": [
388
- "https://www.w3.org/ns/credentials/v2",
389
- "https://originator-profile.org/ns/credentials/v1",
390
- "https://originator-profile.org/ns/cip/v1",
391
- {
392
- "@language": "ja"
393
- }
394
- ],
395
- "type": [
396
- "VerifiableCredential",
397
- "WebsiteProfile"
398
- ],
399
- "issuer": "dns:example.com",
400
- "credentialSubject": {
401
- "id": "https://media.example.com/",
402
- "type": "WebSite",
403
- "name": "<Webサイトのタイトル>",
404
- "description": "<Webサイトの説明>",
405
- "image": {
406
- "id": "https://media.example.com/image.png",
407
- "digestSRI": "sha256-Upwn7gYMuRmJlD1ZivHk876vXHzokXrwXj50VgfnMnY="
408
- },
409
- "allowedOrigin": [
410
- "https://media.example.com"
411
- ]
412
- }
399
+ "@context": [
400
+ "https://www.w3.org/ns/credentials/v2",
401
+ "https://originator-profile.org/ns/credentials/v1",
402
+ "https://originator-profile.org/ns/cip/v1",
403
+ {
404
+ "@language": "ja"
405
+ }
406
+ ],
407
+ "type": [
408
+ "VerifiableCredential",
409
+ "WebsiteProfile"
410
+ ],
411
+ "issuer": "dns:example.com",
412
+ "credentialSubject": {
413
+ "id": "https://media.example.com/",
414
+ "type": "WebSite",
415
+ "name": "<Webサイトのタイトル>",
416
+ "description": "<Webサイトの説明>",
417
+ "image": {
418
+ "id": "https://media.example.com/image.png",
419
+ "digestSRI": "sha256-Upwn7gYMuRmJlD1ZivHk876vXHzokXrwXj50VgfnMnY="
420
+ },
421
+ "allowedOrigin": [
422
+ "https://media.example.com"
423
+ ]
424
+ }
413
425
  }
414
426
  ```
415
427
 
416
- _See code: [src/commands/sign.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.1/packages/opvc/src/commands/sign.ts)_
428
+ _See code: [src/commands/sign.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.2/packages/opvc/src/commands/sign.ts)_
417
429
 
418
430
  ## `opvc wsp:sign`
419
431
 
@@ -461,97 +473,97 @@ FLAG DESCRIPTIONS
461
473
  Website Profile (WSP) の例:
462
474
 
463
475
  {
464
- "@context": [
465
- "https://www.w3.org/ns/credentials/v2",
466
- "https://originator-profile.org/ns/credentials/v1",
467
- "https://originator-profile.org/ns/cip/v1",
468
- {
469
- "@language": "ja"
470
- }
471
- ],
472
- "type": [
473
- "VerifiableCredential",
474
- "WebsiteProfile"
475
- ],
476
- "issuer": "dns:example.com",
477
- "credentialSubject": {
478
- "id": "https://media.example.com/",
479
- "type": "WebSite",
480
- "name": "<Webサイトのタイトル>",
481
- "description": "<Webサイトの説明>",
482
- "image": {
483
- "id": "https://media.example.com/image.png",
484
- "digestSRI": "sha256-Upwn7gYMuRmJlD1ZivHk876vXHzokXrwXj50VgfnMnY="
485
- },
486
- "allowedOrigin": [
487
- "https://media.example.com"
488
- ]
489
- }
476
+ "@context": [
477
+ "https://www.w3.org/ns/credentials/v2",
478
+ "https://originator-profile.org/ns/credentials/v1",
479
+ "https://originator-profile.org/ns/cip/v1",
480
+ {
481
+ "@language": "ja"
482
+ }
483
+ ],
484
+ "type": [
485
+ "VerifiableCredential",
486
+ "WebsiteProfile"
487
+ ],
488
+ "issuer": "dns:example.com",
489
+ "credentialSubject": {
490
+ "id": "https://media.example.com/",
491
+ "type": "WebSite",
492
+ "name": "<Webサイトのタイトル>",
493
+ "description": "<Webサイトの説明>",
494
+ "image": {
495
+ "id": "https://media.example.com/image.png",
496
+ "digestSRI": "sha256-Upwn7gYMuRmJlD1ZivHk876vXHzokXrwXj50VgfnMnY="
497
+ },
498
+ "allowedOrigin": [
499
+ "https://media.example.com"
500
+ ]
501
+ }
490
502
  }
491
503
 
492
504
  多言語 Website Profile (配列) の例:
493
505
 
494
506
  [
495
- {
496
- "@context": [
497
- "https://www.w3.org/ns/credentials/v2",
498
- "https://originator-profile.org/ns/credentials/v1",
499
- "https://originator-profile.org/ns/cip/v1",
500
- {
501
- "@language": "ja"
502
- }
503
- ],
504
- "type": [
505
- "VerifiableCredential",
506
- "WebsiteProfile"
507
- ],
508
- "issuer": "dns:example.com",
509
- "credentialSubject": {
510
- "id": "https://media.example.com/",
511
- "type": "WebSite",
512
- "name": "<Webサイトのタイトル>",
513
- "description": "<Webサイトの説明>",
514
- "image": {
515
- "id": "https://media.example.com/image.png",
516
- "digestSRI": "sha256-Upwn7gYMuRmJlD1ZivHk876vXHzokXrwXj50VgfnMnY="
517
- },
518
- "allowedOrigin": [
519
- "https://media.example.com"
520
- ]
521
- }
522
- },
523
- {
524
- "@context": [
525
- "https://www.w3.org/ns/credentials/v2",
526
- "https://originator-profile.org/ns/credentials/v1",
527
- "https://originator-profile.org/ns/cip/v1",
528
- {
529
- "@language": "en"
530
- }
531
- ],
532
- "type": [
533
- "VerifiableCredential",
534
- "WebsiteProfile"
535
- ],
536
- "issuer": "dns:example.com",
537
- "credentialSubject": {
538
- "id": "https://media.example.com/",
539
- "type": "WebSite",
540
- "name": "<Website title>",
541
- "description": "<Website description>",
542
- "image": {
543
- "id": "https://media.example.com/image.png",
544
- "digestSRI": "sha256-Upwn7gYMuRmJlD1ZivHk876vXHzokXrwXj50VgfnMnY="
545
- },
546
- "allowedOrigin": [
547
- "https://media.example.com"
548
- ]
549
- }
550
- }
507
+ {
508
+ "@context": [
509
+ "https://www.w3.org/ns/credentials/v2",
510
+ "https://originator-profile.org/ns/credentials/v1",
511
+ "https://originator-profile.org/ns/cip/v1",
512
+ {
513
+ "@language": "ja"
514
+ }
515
+ ],
516
+ "type": [
517
+ "VerifiableCredential",
518
+ "WebsiteProfile"
519
+ ],
520
+ "issuer": "dns:example.com",
521
+ "credentialSubject": {
522
+ "id": "https://media.example.com/",
523
+ "type": "WebSite",
524
+ "name": "<Webサイトのタイトル>",
525
+ "description": "<Webサイトの説明>",
526
+ "image": {
527
+ "id": "https://media.example.com/image.png",
528
+ "digestSRI": "sha256-Upwn7gYMuRmJlD1ZivHk876vXHzokXrwXj50VgfnMnY="
529
+ },
530
+ "allowedOrigin": [
531
+ "https://media.example.com"
532
+ ]
533
+ }
534
+ },
535
+ {
536
+ "@context": [
537
+ "https://www.w3.org/ns/credentials/v2",
538
+ "https://originator-profile.org/ns/credentials/v1",
539
+ "https://originator-profile.org/ns/cip/v1",
540
+ {
541
+ "@language": "en"
542
+ }
543
+ ],
544
+ "type": [
545
+ "VerifiableCredential",
546
+ "WebsiteProfile"
547
+ ],
548
+ "issuer": "dns:example.com",
549
+ "credentialSubject": {
550
+ "id": "https://media.example.com/",
551
+ "type": "WebSite",
552
+ "name": "<Website title>",
553
+ "description": "<Website description>",
554
+ "image": {
555
+ "id": "https://media.example.com/image.png",
556
+ "digestSRI": "sha256-Upwn7gYMuRmJlD1ZivHk876vXHzokXrwXj50VgfnMnY="
557
+ },
558
+ "allowedOrigin": [
559
+ "https://media.example.com"
560
+ ]
561
+ }
562
+ }
551
563
  ]
552
564
  ```
553
565
 
554
- _See code: [src/commands/wsp/sign.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.1/packages/opvc/src/commands/wsp/sign.ts)_
566
+ _See code: [src/commands/wsp/sign.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.2/packages/opvc/src/commands/wsp/sign.ts)_
555
567
 
556
568
  ## `opvc wsp:unsigned`
557
569
 
@@ -585,103 +597,103 @@ FLAG DESCRIPTIONS
585
597
  Website Profile の例:
586
598
 
587
599
  {
588
- "@context": [
589
- "https://www.w3.org/ns/credentials/v2",
590
- "https://originator-profile.org/ns/credentials/v1",
591
- "https://originator-profile.org/ns/cip/v1",
592
- {
593
- "@language": "<言語・地域コード>"
594
- }
595
- ],
596
- "type": [
597
- "VerifiableCredential",
598
- "WebsiteProfile"
599
- ],
600
- "issuer": "<OP ID>",
601
- "credentialSubject": {
602
- "id": "<Web サイトのオリジン (形式: https://<ホスト名>)>",
603
- "type": "WebSite",
604
- "name": "<Web サイトの名称>",
605
- "description": "<Web サイトの説明>",
606
- "image": {
607
- "id": "<サムネイル画像URL>",
608
- "content": [
609
- "<コンテンツ (data:// 形式URL)>"
610
- ]
611
- },
612
- "allowedOrigin": [
613
- "<Web サイトのオリジン (形式: https://<ホスト名>)>"
614
- ]
615
- }
600
+ "@context": [
601
+ "https://www.w3.org/ns/credentials/v2",
602
+ "https://originator-profile.org/ns/credentials/v1",
603
+ "https://originator-profile.org/ns/cip/v1",
604
+ {
605
+ "@language": "<言語・地域コード>"
606
+ }
607
+ ],
608
+ "type": [
609
+ "VerifiableCredential",
610
+ "WebsiteProfile"
611
+ ],
612
+ "issuer": "<OP ID>",
613
+ "credentialSubject": {
614
+ "id": "<Web サイトのオリジン (形式: https://<ホスト名>)>",
615
+ "type": "WebSite",
616
+ "name": "<Web サイトの名称>",
617
+ "description": "<Web サイトの説明>",
618
+ "image": {
619
+ "id": "<サムネイル画像URL>",
620
+ "content": [
621
+ "<コンテンツ (data:// 形式URL)>"
622
+ ]
623
+ },
624
+ "allowedOrigin": [
625
+ "<Web サイトのオリジン (形式: https://<ホスト名>)>"
626
+ ]
627
+ }
616
628
  }
617
629
 
618
630
  多言語の Website Profile (配列) の例:
619
631
 
620
632
  [
621
- {
622
- "@context": [
623
- "https://www.w3.org/ns/credentials/v2",
624
- "https://originator-profile.org/ns/credentials/v1",
625
- "https://originator-profile.org/ns/cip/v1",
626
- {
627
- "@language": "ja"
628
- }
629
- ],
630
- "type": [
631
- "VerifiableCredential",
632
- "WebsiteProfile"
633
- ],
634
- "issuer": "<OP ID>",
635
- "credentialSubject": {
636
- "id": "<Web サイトのオリジン (形式: https://<ホスト名>)>",
637
- "type": "WebSite",
638
- "name": "<Web サイトの名称>",
639
- "description": "<Web サイトの説明>",
640
- "image": {
641
- "id": "<サムネイル画像URL>",
642
- "content": [
643
- "<コンテンツ (data:// 形式URL)>"
644
- ]
645
- },
646
- "allowedOrigin": [
647
- "<Web サイトのオリジン (形式: https://<ホスト名>)>"
648
- ]
649
- }
650
- },
651
- {
652
- "@context": [
653
- "https://www.w3.org/ns/credentials/v2",
654
- "https://originator-profile.org/ns/credentials/v1",
655
- "https://originator-profile.org/ns/cip/v1",
656
- {
657
- "@language": "en"
658
- }
659
- ],
660
- "type": [
661
- "VerifiableCredential",
662
- "WebsiteProfile"
663
- ],
664
- "issuer": "<OP ID>",
665
- "credentialSubject": {
666
- "id": "<Web サイトのオリジン (形式: https://<ホスト名>)>",
667
- "type": "WebSite",
668
- "name": "<Web サイトの名称>",
669
- "description": "<Web サイトの説明>",
670
- "image": {
671
- "id": "<サムネイル画像URL>",
672
- "content": [
673
- "<コンテンツ (data:// 形式URL)>"
674
- ]
675
- },
676
- "allowedOrigin": [
677
- "<Web サイトのオリジン (形式: https://<ホスト名>)>"
678
- ]
679
- }
680
- }
633
+ {
634
+ "@context": [
635
+ "https://www.w3.org/ns/credentials/v2",
636
+ "https://originator-profile.org/ns/credentials/v1",
637
+ "https://originator-profile.org/ns/cip/v1",
638
+ {
639
+ "@language": "ja"
640
+ }
641
+ ],
642
+ "type": [
643
+ "VerifiableCredential",
644
+ "WebsiteProfile"
645
+ ],
646
+ "issuer": "<OP ID>",
647
+ "credentialSubject": {
648
+ "id": "<Web サイトのオリジン (形式: https://<ホスト名>)>",
649
+ "type": "WebSite",
650
+ "name": "<Web サイトの名称>",
651
+ "description": "<Web サイトの説明>",
652
+ "image": {
653
+ "id": "<サムネイル画像URL>",
654
+ "content": [
655
+ "<コンテンツ (data:// 形式URL)>"
656
+ ]
657
+ },
658
+ "allowedOrigin": [
659
+ "<Web サイトのオリジン (形式: https://<ホスト名>)>"
660
+ ]
661
+ }
662
+ },
663
+ {
664
+ "@context": [
665
+ "https://www.w3.org/ns/credentials/v2",
666
+ "https://originator-profile.org/ns/credentials/v1",
667
+ "https://originator-profile.org/ns/cip/v1",
668
+ {
669
+ "@language": "en"
670
+ }
671
+ ],
672
+ "type": [
673
+ "VerifiableCredential",
674
+ "WebsiteProfile"
675
+ ],
676
+ "issuer": "<OP ID>",
677
+ "credentialSubject": {
678
+ "id": "<Web サイトのオリジン (形式: https://<ホスト名>)>",
679
+ "type": "WebSite",
680
+ "name": "<Web サイトの名称>",
681
+ "description": "<Web サイトの説明>",
682
+ "image": {
683
+ "id": "<サムネイル画像URL>",
684
+ "content": [
685
+ "<コンテンツ (data:// 形式URL)>"
686
+ ]
687
+ },
688
+ "allowedOrigin": [
689
+ "<Web サイトのオリジン (形式: https://<ホスト名>)>"
690
+ ]
691
+ }
692
+ }
681
693
  ]
682
694
  ```
683
695
 
684
- _See code: [src/commands/wsp/unsigned.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.1/packages/opvc/src/commands/wsp/unsigned.ts)_
696
+ _See code: [src/commands/wsp/unsigned.ts](https://github.com/originator-profile/originator-profile/blob/v0.6.0-beta.2/packages/opvc/src/commands/wsp/unsigned.ts)_
685
697
  <!-- commandsstop -->
686
698
  <!-- prettier-ignore-end -->
687
699
 
package/dist/help.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ import { CommandHelp, Help as Help$1 } from "@oclif/core/help";
2
+
3
+ //#region src/help.d.ts
4
+ declare class IndentPreservingCommandHelp extends CommandHelp {
5
+ wrap(body: string, spacing?: number): string;
6
+ }
7
+ declare class Help extends Help$1 {
8
+ CommandHelpClass: typeof IndentPreservingCommandHelp;
9
+ }
10
+ //#endregion
11
+ export { Help as default };
package/dist/help.js ADDED
@@ -0,0 +1,16 @@
1
+ import { CommandHelp, Help as Help$1 } from "@oclif/core/help";
2
+ import wrapAnsi from "wrap-ansi";
3
+ //#region src/help.ts
4
+ var IndentPreservingCommandHelp = class extends CommandHelp {
5
+ wrap(body, spacing = this.indentSpacing) {
6
+ return wrapAnsi(this.render(body), this.opts.maxWidth - spacing, {
7
+ hard: true,
8
+ trim: false
9
+ }).split("\n").map((l) => l.trimEnd()).join("\n");
10
+ }
11
+ };
12
+ var Help = class extends Help$1 {
13
+ CommandHelpClass = IndentPreservingCommandHelp;
14
+ };
15
+ //#endregion
16
+ export { Help as default };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@originator-profile/opvc",
3
- "version": "0.6.0-beta.1",
3
+ "version": "0.6.0-beta.2",
4
4
  "license": "Apache-2.0",
5
5
  "homepage": "https://docs.originator-profile.org",
6
6
  "repository": {
@@ -26,6 +26,7 @@
26
26
  "oclif": {
27
27
  "bin": "opvc",
28
28
  "commands": "dist/commands",
29
+ "helpClass": "./dist/help",
29
30
  "repositoryPrefix": "<%- repo %>/blob/v<%- version %>/packages/opvc/<%- commandPath %>",
30
31
  "plugins": [
31
32
  "@oclif/plugin-help"
@@ -38,11 +39,12 @@
38
39
  "http-errors-enhanced": "^4.0.2",
39
40
  "jose": "^6.2.2",
40
41
  "jsdom": "^29.0.1",
41
- "@originator-profile/cryptography": "0.6.0-beta.1",
42
- "@originator-profile/model": "0.6.0-beta.1",
43
- "@originator-profile/core": "0.6.0-beta.1",
44
- "@originator-profile/sign": "0.6.0-beta.1",
45
- "@originator-profile/securing-mechanism": "0.6.0-beta.1"
42
+ "wrap-ansi": "^9.0.2",
43
+ "@originator-profile/core": "0.6.0-beta.2",
44
+ "@originator-profile/model": "0.6.0-beta.2",
45
+ "@originator-profile/cryptography": "0.6.0-beta.2",
46
+ "@originator-profile/sign": "0.6.0-beta.2",
47
+ "@originator-profile/securing-mechanism": "0.6.0-beta.2"
46
48
  },
47
49
  "devDependencies": {
48
50
  "@types/node": "25.6.0",
@@ -51,8 +53,8 @@
51
53
  "tsdown": "0.21.7",
52
54
  "typescript": "6.0.2",
53
55
  "websri": "1.0.1",
54
- "@originator-profile/tsconfig": "0.6.0-beta.1",
55
- "eslint-config-originator-profile": "0.6.0-beta.1"
56
+ "@originator-profile/tsconfig": "0.6.0-beta.2",
57
+ "eslint-config-originator-profile": "0.6.0-beta.2"
56
58
  },
57
59
  "scripts": {
58
60
  "build": "tsdown && oclif manifest && oclif readme",