@powerhousedao/renown-package 0.0.3 → 0.0.5

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.
Files changed (45) hide show
  1. package/dist/document-models/renown-credential/gen/document-model.js +97 -11
  2. package/dist/document-models/renown-credential/gen/manager/actions.d.ts +14 -2
  3. package/dist/document-models/renown-credential/gen/manager/creators.d.ts +5 -2
  4. package/dist/document-models/renown-credential/gen/manager/creators.js +4 -1
  5. package/dist/document-models/renown-credential/gen/manager/error.d.ts +45 -1
  6. package/dist/document-models/renown-credential/gen/manager/error.js +53 -1
  7. package/dist/document-models/renown-credential/gen/manager/object.d.ts +4 -1
  8. package/dist/document-models/renown-credential/gen/manager/object.js +10 -1
  9. package/dist/document-models/renown-credential/gen/manager/operations.d.ts +4 -1
  10. package/dist/document-models/renown-credential/gen/ph-factories.js +11 -5
  11. package/dist/document-models/renown-credential/gen/reducer.js +12 -0
  12. package/dist/document-models/renown-credential/gen/schema/types.d.ts +43 -12
  13. package/dist/document-models/renown-credential/gen/schema/zod.d.ts +5 -1
  14. package/dist/document-models/renown-credential/gen/schema/zod.js +48 -10
  15. package/dist/document-models/renown-credential/gen/utils.js +12 -6
  16. package/dist/document-models/renown-credential/index.d.ts +3 -0
  17. package/dist/document-models/renown-credential/src/reducers/manager.js +69 -15
  18. package/dist/document-models/renown-user/gen/object.d.ts +1 -1
  19. package/dist/document-models/renown-user/gen/profile/object.d.ts +1 -1
  20. package/dist/document-models/renown-user/gen/reducer.d.ts +1 -1
  21. package/dist/document-models/renown-user/gen/utils.d.ts +1 -1
  22. package/dist/editors/hooks/useRenownCredentialDocument.d.ts +3 -0
  23. package/dist/editors/hooks/useRenownCredentialDocument.js +8 -0
  24. package/dist/editors/index.d.ts +1 -0
  25. package/dist/editors/index.js +1 -0
  26. package/dist/editors/renown-credential-editor/editor.d.ts +3 -0
  27. package/dist/editors/renown-credential-editor/editor.js +115 -0
  28. package/dist/editors/renown-credential-editor/index.d.ts +2 -0
  29. package/dist/editors/renown-credential-editor/index.js +11 -0
  30. package/dist/powerhouse.manifest.json +4 -0
  31. package/dist/processors/index.d.ts +1 -0
  32. package/dist/processors/index.js +1 -0
  33. package/dist/processors/renown-credential/index.d.ts +9 -0
  34. package/dist/processors/renown-credential/index.js +129 -0
  35. package/dist/processors/renown-credential/migrations.d.ts +3 -0
  36. package/dist/processors/renown-credential/migrations.js +77 -0
  37. package/dist/processors/renown-credential/schema.d.ts +27 -0
  38. package/dist/processors/renown-credential/schema.js +1 -0
  39. package/dist/processors/renown-user/migrations.js +2 -2
  40. package/dist/style.css +107 -12
  41. package/dist/subgraphs/renown-credential/resolvers.js +39 -3
  42. package/dist/subgraphs/renown-credential/schema.js +63 -13
  43. package/dist/subgraphs/renown-read-model/resolvers.js +99 -76
  44. package/dist/subgraphs/renown-read-model/schema.js +48 -15
  45. package/package.json +31 -1
package/dist/style.css CHANGED
@@ -7,7 +7,9 @@
7
7
  "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
8
8
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
9
9
  "Courier New", monospace;
10
+ --color-red-50: oklch(97.1% 0.013 17.38);
10
11
  --color-red-100: oklch(93.6% 0.032 17.717);
12
+ --color-red-200: oklch(88.5% 0.062 18.334);
11
13
  --color-red-300: oklch(80.8% 0.114 19.571);
12
14
  --color-red-400: oklch(70.4% 0.191 22.216);
13
15
  --color-red-500: oklch(63.7% 0.237 25.331);
@@ -99,6 +101,7 @@
99
101
  --container-2xl: 42rem;
100
102
  --container-4xl: 56rem;
101
103
  --container-5xl: 64rem;
104
+ --container-6xl: 72rem;
102
105
  --text-xs: 0.75rem;
103
106
  --text-xs--line-height: calc(1 / 0.75);
104
107
  --text-sm: 0.875rem;
@@ -298,12 +301,21 @@
298
301
  .static {
299
302
  position: static;
300
303
  }
304
+ .col-span-2 {
305
+ grid-column: span 2 / span 2;
306
+ }
301
307
  .mx-auto {
302
308
  margin-inline: auto;
303
309
  }
304
310
  .mt-1 {
305
311
  margin-top: calc(var(--spacing) * 1);
306
312
  }
313
+ .mt-2 {
314
+ margin-top: calc(var(--spacing) * 2);
315
+ }
316
+ .mt-6 {
317
+ margin-top: calc(var(--spacing) * 6);
318
+ }
307
319
  .mb-2 {
308
320
  margin-bottom: calc(var(--spacing) * 2);
309
321
  }
@@ -322,6 +334,9 @@
322
334
  .grid {
323
335
  display: grid;
324
336
  }
337
+ .inline-block {
338
+ display: inline-block;
339
+ }
325
340
  .inline-flex {
326
341
  display: inline-flex;
327
342
  }
@@ -370,6 +385,9 @@
370
385
  .max-w-5xl {
371
386
  max-width: var(--container-5xl);
372
387
  }
388
+ .max-w-6xl {
389
+ max-width: var(--container-6xl);
390
+ }
373
391
  .flex-1 {
374
392
  flex: 1;
375
393
  }
@@ -379,6 +397,9 @@
379
397
  .grid-cols-1 {
380
398
  grid-template-columns: repeat(1, minmax(0, 1fr));
381
399
  }
400
+ .flex-wrap {
401
+ flex-wrap: wrap;
402
+ }
382
403
  .items-center {
383
404
  align-items: center;
384
405
  }
@@ -397,12 +418,25 @@
397
418
  .gap-2 {
398
419
  gap: calc(var(--spacing) * 2);
399
420
  }
421
+ .gap-3 {
422
+ gap: calc(var(--spacing) * 3);
423
+ }
424
+ .gap-4 {
425
+ gap: calc(var(--spacing) * 4);
426
+ }
400
427
  .gap-6 {
401
428
  gap: calc(var(--spacing) * 6);
402
429
  }
403
430
  .gap-8 {
404
431
  gap: calc(var(--spacing) * 8);
405
432
  }
433
+ .space-y-4 {
434
+ :where(& > :not(:last-child)) {
435
+ --tw-space-y-reverse: 0;
436
+ margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
437
+ margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
438
+ }
439
+ }
406
440
  .space-y-6 {
407
441
  :where(& > :not(:last-child)) {
408
442
  --tw-space-y-reverse: 0;
@@ -445,9 +479,15 @@
445
479
  margin-inline-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-x-reverse)));
446
480
  }
447
481
  }
482
+ .overflow-auto {
483
+ overflow: auto;
484
+ }
448
485
  .overflow-hidden {
449
486
  overflow: hidden;
450
487
  }
488
+ .rounded {
489
+ border-radius: 0.25rem;
490
+ }
451
491
  .rounded-full {
452
492
  border-radius: calc(infinity * 1px);
453
493
  }
@@ -461,18 +501,43 @@
461
501
  border-style: var(--tw-border-style);
462
502
  border-width: 1px;
463
503
  }
504
+ .border-b {
505
+ border-bottom-style: var(--tw-border-style);
506
+ border-bottom-width: 1px;
507
+ }
464
508
  .border-gray-200 {
465
509
  border-color: var(--color-gray-200);
466
510
  }
511
+ .border-red-200 {
512
+ border-color: var(--color-red-200);
513
+ }
514
+ .bg-blue-50 {
515
+ background-color: var(--color-blue-50);
516
+ }
517
+ .bg-blue-100 {
518
+ background-color: var(--color-blue-100);
519
+ }
467
520
  .bg-gray-50 {
468
521
  background-color: var(--color-gray-50);
469
522
  }
470
523
  .bg-gray-100 {
471
524
  background-color: var(--color-gray-100);
472
525
  }
526
+ .bg-green-100 {
527
+ background-color: var(--color-green-100);
528
+ }
529
+ .bg-red-50 {
530
+ background-color: var(--color-red-50);
531
+ }
532
+ .bg-red-100 {
533
+ background-color: var(--color-red-100);
534
+ }
473
535
  .bg-white {
474
536
  background-color: var(--color-white);
475
537
  }
538
+ .bg-yellow-100 {
539
+ background-color: var(--color-yellow-100);
540
+ }
476
541
  .object-cover {
477
542
  object-fit: cover;
478
543
  }
@@ -482,12 +547,21 @@
482
547
  .p-6 {
483
548
  padding: calc(var(--spacing) * 6);
484
549
  }
550
+ .px-2 {
551
+ padding-inline: calc(var(--spacing) * 2);
552
+ }
553
+ .px-3 {
554
+ padding-inline: calc(var(--spacing) * 3);
555
+ }
485
556
  .px-4 {
486
557
  padding-inline: calc(var(--spacing) * 4);
487
558
  }
488
559
  .px-6 {
489
560
  padding-inline: calc(var(--spacing) * 6);
490
561
  }
562
+ .py-1 {
563
+ padding-block: calc(var(--spacing) * 1);
564
+ }
491
565
  .py-5 {
492
566
  padding-block: calc(var(--spacing) * 5);
493
567
  }
@@ -543,6 +617,9 @@
543
617
  .break-all {
544
618
  word-break: break-all;
545
619
  }
620
+ .text-blue-800 {
621
+ color: var(--color-blue-800);
622
+ }
546
623
  .text-gray-400 {
547
624
  color: var(--color-gray-400);
548
625
  }
@@ -555,6 +632,21 @@
555
632
  .text-gray-900 {
556
633
  color: var(--color-gray-900);
557
634
  }
635
+ .text-green-800 {
636
+ color: var(--color-green-800);
637
+ }
638
+ .text-red-600 {
639
+ color: var(--color-red-600);
640
+ }
641
+ .text-red-800 {
642
+ color: var(--color-red-800);
643
+ }
644
+ .text-red-900 {
645
+ color: var(--color-red-900);
646
+ }
647
+ .text-yellow-800 {
648
+ color: var(--color-yellow-800);
649
+ }
558
650
  .uppercase {
559
651
  text-transform: uppercase;
560
652
  }
@@ -5258,7 +5350,7 @@ input[type="number"] {
5258
5350
  }
5259
5351
  }
5260
5352
  }
5261
- /*! tailwindcss v4.1.5 | MIT License | https://tailwindcss.com */
5353
+ /*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */
5262
5354
  @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");
5263
5355
  @layer properties;
5264
5356
  @layer theme, base, components, utilities;
@@ -5535,6 +5627,9 @@ input[type="number"] {
5535
5627
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
5536
5628
  padding-block: 0;
5537
5629
  }
5630
+ ::-webkit-calendar-picker-indicator {
5631
+ line-height: 1;
5632
+ }
5538
5633
  :-moz-ui-invalid {
5539
5634
  box-shadow: none;
5540
5635
  }
@@ -6393,7 +6488,7 @@ input[type="number"] {
6393
6488
  border-radius: 100px;
6394
6489
  }
6395
6490
  .rounded-full {
6396
- border-radius: calc(infinity * 1px);
6491
+ border-radius: calc(infinity * 1px) !important;
6397
6492
  }
6398
6493
  .rounded-lg {
6399
6494
  border-radius: var(--radius-lg);
@@ -7221,7 +7316,7 @@ input[type="number"] {
7221
7316
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
7222
7317
  }
7223
7318
  .transition {
7224
- transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
7319
+ transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
7225
7320
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
7226
7321
  transition-duration: var(--tw-duration, var(--default-transition-duration));
7227
7322
  }
@@ -7408,7 +7503,7 @@ input[type="number"] {
7408
7503
  }
7409
7504
  .file\:rounded-full {
7410
7505
  &::file-selector-button {
7411
- border-radius: calc(infinity * 1px);
7506
+ border-radius: calc(infinity * 1px) !important;
7412
7507
  }
7413
7508
  }
7414
7509
  .file\:border-0 {
@@ -7503,7 +7598,7 @@ input[type="number"] {
7503
7598
  .before\:rounded-full {
7504
7599
  &::before {
7505
7600
  content: var(--tw-content);
7506
- border-radius: calc(infinity * 1px);
7601
+ border-radius: calc(infinity * 1px) !important;
7507
7602
  }
7508
7603
  }
7509
7604
  .before\:bg-blue-900 {
@@ -7624,7 +7719,7 @@ input[type="number"] {
7624
7719
  .after\:rounded-full {
7625
7720
  &::after {
7626
7721
  content: var(--tw-content);
7627
- border-radius: calc(infinity * 1px);
7722
+ border-radius: calc(infinity * 1px) !important;
7628
7723
  }
7629
7724
  }
7630
7725
  .after\:bg-gray-300 {
@@ -9518,7 +9613,7 @@ input[type="number"] {
9518
9613
  }
9519
9614
  .\[\&_\.date-picker\\\\_\\\\_button-next\]\:rounded-full {
9520
9615
  & .date-picker\_\_button-next {
9521
- border-radius: calc(infinity * 1px);
9616
+ border-radius: calc(infinity * 1px) !important;
9522
9617
  }
9523
9618
  }
9524
9619
  .\[\&_\.date-picker\\\\_\\\\_button-next\]\:border-2 {
@@ -9634,7 +9729,7 @@ input[type="number"] {
9634
9729
  }
9635
9730
  .\[\&_\.date-picker\\\\_\\\\_button-previous\]\:rounded-full {
9636
9731
  & .date-picker\_\_button-previous {
9637
- border-radius: calc(infinity * 1px);
9732
+ border-radius: calc(infinity * 1px) !important;
9638
9733
  }
9639
9734
  }
9640
9735
  .\[\&_\.date-picker\\\\_\\\\_button-previous\]\:border-2 {
@@ -9806,7 +9901,7 @@ input[type="number"] {
9806
9901
  }
9807
9902
  .\[\&_\.date-picker\\\\_\\\\_day-button\]\:rounded-full {
9808
9903
  & .date-picker\_\_day-button {
9809
- border-radius: calc(infinity * 1px);
9904
+ border-radius: calc(infinity * 1px) !important;
9810
9905
  }
9811
9906
  }
9812
9907
  .\[\&_\.date-picker\\\\_\\\\_day-button\]\:font-medium {
@@ -10156,7 +10251,7 @@ input[type="number"] {
10156
10251
  }
10157
10252
  .\[\&_\.date-picker\\\\_\\\\_today\]\:rounded-full {
10158
10253
  & .date-picker\_\_today {
10159
- border-radius: calc(infinity * 1px);
10254
+ border-radius: calc(infinity * 1px) !important;
10160
10255
  }
10161
10256
  }
10162
10257
  .\[\&_\.date-picker\\\\_\\\\_today\]\:border-2 {
@@ -10422,7 +10517,7 @@ input[type="number"] {
10422
10517
  }
10423
10518
  .\[\&_\.radio-group\\\\_\\\\_item\]\:rounded-full {
10424
10519
  & .radio-group\_\_item {
10425
- border-radius: calc(infinity * 1px);
10520
+ border-radius: calc(infinity * 1px) !important;
10426
10521
  }
10427
10522
  }
10428
10523
  .\[\&_\.radio-group\\\\_\\\\_item\]\:text-cyan-400 {
@@ -11314,7 +11409,7 @@ input[type="number"] {
11314
11409
  .\[\&_\.date-picker\\\\_\\\\_date-footer\]\:\[\&\>button\]\:rounded-full {
11315
11410
  & .date-picker\_\_date-footer {
11316
11411
  &>button {
11317
- border-radius: calc(infinity * 1px);
11412
+ border-radius: calc(infinity * 1px) !important;
11318
11413
  }
11319
11414
  }
11320
11415
  }
@@ -46,7 +46,7 @@ export const getResolvers = (subgraph) => {
46
46
  revision: doc.header?.revision?.global ?? 0,
47
47
  };
48
48
  }));
49
- return docs.filter((doc) => doc.header.documentType === "renown/credential");
49
+ return docs.filter((doc) => doc.header.documentType === "powerhouse/renown-credential");
50
50
  },
51
51
  };
52
52
  },
@@ -54,12 +54,12 @@ export const getResolvers = (subgraph) => {
54
54
  Mutation: {
55
55
  RenownCredential_createDocument: async (_, args) => {
56
56
  const { driveId, name } = args;
57
- const document = await reactor.addDocument("renown/credential");
57
+ const document = await reactor.addDocument("powerhouse/renown-credential");
58
58
  if (driveId) {
59
59
  await reactor.addAction(driveId, addFile({
60
60
  name,
61
61
  id: document.header.id,
62
- documentType: "renown/credential",
62
+ documentType: "powerhouse/renown-credential",
63
63
  }));
64
64
  }
65
65
  if (name) {
@@ -91,6 +91,42 @@ export const getResolvers = (subgraph) => {
91
91
  }
92
92
  return true;
93
93
  },
94
+ RenownCredential_updateCredentialSubject: async (_, args) => {
95
+ const { docId, input } = args;
96
+ const doc = await reactor.getDocument(docId);
97
+ if (!doc) {
98
+ throw new Error("Document not found");
99
+ }
100
+ const result = await reactor.addAction(docId, actions.updateCredentialSubject(input));
101
+ if (result.status !== "SUCCESS") {
102
+ throw new Error(result.error?.message ?? "Failed to updateCredentialSubject");
103
+ }
104
+ return true;
105
+ },
106
+ RenownCredential_setJwt: async (_, args) => {
107
+ const { docId, input } = args;
108
+ const doc = await reactor.getDocument(docId);
109
+ if (!doc) {
110
+ throw new Error("Document not found");
111
+ }
112
+ const result = await reactor.addAction(docId, actions.setJwt(input));
113
+ if (result.status !== "SUCCESS") {
114
+ throw new Error(result.error?.message ?? "Failed to setJwt");
115
+ }
116
+ return true;
117
+ },
118
+ RenownCredential_setCredentialStatus: async (_, args) => {
119
+ const { docId, input } = args;
120
+ const doc = await reactor.getDocument(docId);
121
+ if (!doc) {
122
+ throw new Error("Document not found");
123
+ }
124
+ const result = await reactor.addAction(docId, actions.setCredentialStatus(input));
125
+ if (result.status !== "SUCCESS") {
126
+ throw new Error(result.error?.message ?? "Failed to setCredentialStatus");
127
+ }
128
+ return true;
129
+ },
94
130
  },
95
131
  };
96
132
  };
@@ -1,16 +1,36 @@
1
1
  import { gql } from "graphql-tag";
2
2
  export const schema = gql `
3
3
  """
4
- Subgraph definition for RenownCredential (renown/credential)
4
+ Subgraph definition for RenownCredential (powerhouse/renown-credential)
5
5
  """
6
+ type CredentialStatus {
7
+ id: String!
8
+ type: String!
9
+ statusPurpose: String!
10
+ statusListIndex: String!
11
+ statusListCredential: String!
12
+ }
13
+
6
14
  type RenownCredentialState {
7
- "Add your global state fields here"
15
+ "W3C VC Required Fields"
16
+ context: [String!]!
17
+ id: String
18
+ type: [String!]!
19
+ issuer: String!
20
+ issuanceDate: DateTime!
21
+ credentialSubject: String!
22
+
23
+ "W3C VC Optional Fields"
24
+ expirationDate: DateTime
25
+ credentialStatus: CredentialStatus
26
+
27
+ "JWT Representation"
8
28
  jwt: String
29
+
30
+ "Revocation tracking"
9
31
  revoked: Boolean
10
- issuer: String
11
- subject: String
12
- audience: String
13
- payload: String
32
+ revokedAt: DateTime
33
+ revocationReason: String
14
34
  }
15
35
 
16
36
  """
@@ -41,20 +61,50 @@ export const schema = gql `
41
61
  docId: PHID
42
62
  input: RenownCredential_RevokeInput
43
63
  ): Int
64
+ RenownCredential_updateCredentialSubject(
65
+ driveId: String
66
+ docId: PHID
67
+ input: RenownCredential_UpdateCredentialSubjectInput
68
+ ): Int
69
+ RenownCredential_setJwt(
70
+ driveId: String
71
+ docId: PHID
72
+ input: RenownCredential_SetJwtInput
73
+ ): Int
74
+ RenownCredential_setCredentialStatus(
75
+ driveId: String
76
+ docId: PHID
77
+ input: RenownCredential_SetCredentialStatusInput
78
+ ): Int
44
79
  }
45
80
 
46
81
  """
47
82
  Module: Manager
48
83
  """
49
84
  input RenownCredential_InitInput {
50
- "Add your inputs here"
51
- jwt: String!
52
- issuer: String
53
- subject: String
54
- audience: String
55
- payload: String
85
+ context: [String!]
86
+ id: String
87
+ type: [String!]
88
+ issuer: String!
89
+ issuanceDate: DateTime!
90
+ credentialSubject: String!
91
+ expirationDate: DateTime
56
92
  }
57
93
  input RenownCredential_RevokeInput {
58
- jwt: String
94
+ revokedAt: DateTime!
95
+ reason: String
96
+ }
97
+ input RenownCredential_UpdateCredentialSubjectInput {
98
+ credentialSubject: String!
99
+ }
100
+ input RenownCredential_SetJwtInput {
101
+ jwt: String!
102
+ }
103
+ input RenownCredential_SetCredentialStatusInput {
104
+ statusId: String!
105
+ statusType: String!
106
+ statusPurpose: String!
107
+ statusListIndex: String!
108
+ statusListCredential: String!
59
109
  }
60
110
  `;