nostr-websocket-utils 0.3.17 → 0.4.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.
Files changed (87) hide show
  1. package/README.md +2 -2
  2. package/dist/__mocks__/mockLogger.d.ts +7 -7
  3. package/dist/__mocks__/mockLogger.d.ts.map +1 -1
  4. package/dist/browser/nostr-websocket-utils.min.js +3 -2
  5. package/dist/browser/nostr-websocket-utils.min.js.map +7 -1
  6. package/dist/browser/report.html +1 -1
  7. package/dist/cjs/__mocks__/mockLogger.d.ts +7 -7
  8. package/dist/cjs/__mocks__/mockLogger.d.ts.map +1 -1
  9. package/dist/cjs/core/nostr-server.js +3 -3
  10. package/dist/cjs/core/nostr-server.js.map +1 -1
  11. package/dist/cjs/core/server.js +2 -2
  12. package/dist/cjs/core/server.js.map +1 -1
  13. package/dist/cjs/crypto/handlers.js +1 -1
  14. package/dist/cjs/crypto/handlers.js.map +1 -1
  15. package/dist/cjs/nips/index.d.ts +2 -0
  16. package/dist/cjs/nips/index.d.ts.map +1 -1
  17. package/dist/cjs/nips/index.js +5 -1
  18. package/dist/cjs/nips/index.js.map +1 -1
  19. package/dist/cjs/nips/nip-04.js +2 -2
  20. package/dist/cjs/nips/nip-04.js.map +1 -1
  21. package/dist/cjs/nips/nip-13.js +1 -1
  22. package/dist/cjs/nips/nip-13.js.map +1 -1
  23. package/dist/cjs/nips/nip-16.js +2 -2
  24. package/dist/cjs/nips/nip-16.js.map +1 -1
  25. package/dist/cjs/nips/nip-22.js +2 -2
  26. package/dist/cjs/nips/nip-22.js.map +1 -1
  27. package/dist/cjs/nips/nip-26.d.ts.map +1 -1
  28. package/dist/cjs/nips/nip-26.js +3 -7
  29. package/dist/cjs/nips/nip-26.js.map +1 -1
  30. package/dist/cjs/nips/nip-28.d.ts.map +1 -1
  31. package/dist/cjs/nips/nip-28.js +4 -12
  32. package/dist/cjs/nips/nip-28.js.map +1 -1
  33. package/dist/cjs/nips/nip-33.js +2 -2
  34. package/dist/cjs/nips/nip-33.js.map +1 -1
  35. package/dist/cjs/nips/nip-44.d.ts +69 -0
  36. package/dist/cjs/nips/nip-44.d.ts.map +1 -0
  37. package/dist/cjs/nips/nip-44.js +143 -0
  38. package/dist/cjs/nips/nip-44.js.map +1 -0
  39. package/dist/cjs/nips/nip-46.d.ts +112 -0
  40. package/dist/cjs/nips/nip-46.d.ts.map +1 -0
  41. package/dist/cjs/nips/nip-46.js +123 -0
  42. package/dist/cjs/nips/nip-46.js.map +1 -0
  43. package/dist/cjs/transport/websocket.js +1 -1
  44. package/dist/cjs/transport/websocket.js.map +1 -1
  45. package/dist/cjs/utils/rate-limiter.d.ts.map +1 -1
  46. package/dist/cjs/utils/rate-limiter.js +4 -17
  47. package/dist/cjs/utils/rate-limiter.js.map +1 -1
  48. package/dist/core/nostr-server.js +3 -3
  49. package/dist/core/nostr-server.js.map +1 -1
  50. package/dist/core/server.js +2 -2
  51. package/dist/core/server.js.map +1 -1
  52. package/dist/crypto/handlers.js +1 -1
  53. package/dist/crypto/handlers.js.map +1 -1
  54. package/dist/nips/index.d.ts +2 -0
  55. package/dist/nips/index.d.ts.map +1 -1
  56. package/dist/nips/index.js +5 -1
  57. package/dist/nips/index.js.map +1 -1
  58. package/dist/nips/nip-04.js +2 -2
  59. package/dist/nips/nip-04.js.map +1 -1
  60. package/dist/nips/nip-13.js +1 -1
  61. package/dist/nips/nip-13.js.map +1 -1
  62. package/dist/nips/nip-16.js +2 -2
  63. package/dist/nips/nip-16.js.map +1 -1
  64. package/dist/nips/nip-22.js +2 -2
  65. package/dist/nips/nip-22.js.map +1 -1
  66. package/dist/nips/nip-26.d.ts.map +1 -1
  67. package/dist/nips/nip-26.js +4 -8
  68. package/dist/nips/nip-26.js.map +1 -1
  69. package/dist/nips/nip-28.d.ts.map +1 -1
  70. package/dist/nips/nip-28.js +4 -12
  71. package/dist/nips/nip-28.js.map +1 -1
  72. package/dist/nips/nip-33.js +2 -2
  73. package/dist/nips/nip-33.js.map +1 -1
  74. package/dist/nips/nip-44.d.ts +69 -0
  75. package/dist/nips/nip-44.d.ts.map +1 -0
  76. package/dist/nips/nip-44.js +134 -0
  77. package/dist/nips/nip-44.js.map +1 -0
  78. package/dist/nips/nip-46.d.ts +112 -0
  79. package/dist/nips/nip-46.d.ts.map +1 -0
  80. package/dist/nips/nip-46.js +119 -0
  81. package/dist/nips/nip-46.js.map +1 -0
  82. package/dist/transport/websocket.js +1 -1
  83. package/dist/transport/websocket.js.map +1 -1
  84. package/dist/utils/rate-limiter.d.ts.map +1 -1
  85. package/dist/utils/rate-limiter.js +4 -17
  86. package/dist/utils/rate-limiter.js.map +1 -1
  87. package/package.json +8 -12
@@ -71,7 +71,7 @@ export function validateEventTime(message, validator, logger) {
71
71
  return validator.validateTime(timestamp);
72
72
  }
73
73
  catch (error) {
74
- logger.error('Error validating event time:', error);
74
+ logger.error({ error }, 'Error validating event time');
75
75
  return {
76
76
  valid: false,
77
77
  reason: 'Error validating timestamp'
@@ -116,7 +116,7 @@ export function createTimeSyncManager(logger) {
116
116
  });
117
117
  }
118
118
  catch (error) {
119
- logger.error('Time sync failed:', error);
119
+ logger.error({ error }, 'Time sync failed');
120
120
  }
121
121
  }
122
122
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"nip-22.js","sourceRoot":"","sources":["../../src/nips/nip-22.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nip-22.js","sourceRoot":"","sources":["../../src/nips/nip-22.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"nip-26.d.ts","sourceRoot":"","sources":["../../src/nips/nip-26.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD;;;;;;;GAOG;AACH,UAAU,oBAAoB;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;GAMG;AACH,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,oBAAoB,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,oBAAoB,GAC/B,OAAO,CAAC,MAAM,CAAC,CA2BjB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,oBAAoB,GAC/B,OAAO,CAAC,OAAO,CAAC,CAuBlB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU,CAYtF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,GAAG,IAAI,CAyBtE;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAuChF"}
1
+ {"version":3,"file":"nip-26.d.ts","sourceRoot":"","sources":["../../src/nips/nip-26.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD;;;;;;;GAOG;AACH,UAAU,oBAAoB;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;GAMG;AACH,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,oBAAoB,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,oBAAoB,GAC/B,OAAO,CAAC,MAAM,CAAC,CAuBjB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,oBAAoB,GAC/B,OAAO,CAAC,OAAO,CAAC,CAuBlB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU,CAYtF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,GAAG,IAAI,CAyBtE;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAuChF"}
@@ -3,7 +3,7 @@
3
3
  * @module nips/nip-26
4
4
  */
5
5
  import { getLogger } from '../utils/logger.js';
6
- import { signEvent, verifySignature } from 'nostr-crypto-utils';
6
+ import { finalizeEvent, verifySignature } from 'nostr-crypto-utils';
7
7
  const logger = getLogger('NIP-26');
8
8
  /**
9
9
  * Create a delegation token
@@ -15,17 +15,13 @@ export async function createDelegation(delegatorPrivkey, delegateePubkey, condit
15
15
  .sort()
16
16
  .join('&');
17
17
  const message = `nostr:delegation:${delegateePubkey}:${conditionsString}`;
18
- // Create a NostrEvent object for signing
19
- const event = {
20
- id: '', // This will be set by signEvent
18
+ // Use finalizeEvent for one-step create+sign
19
+ const signedEvent = await finalizeEvent({
21
20
  pubkey: delegateePubkey,
22
- created_at: Math.floor(Date.now() / 1000),
23
21
  kind: 0, // Using kind 0 for delegation events
24
22
  tags: [],
25
23
  content: message,
26
- sig: '' // This will be set by signEvent
27
- };
28
- const signedEvent = await signEvent(event, delegatorPrivkey);
24
+ }, delegatorPrivkey);
29
25
  return signedEvent.sig;
30
26
  }
31
27
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"nip-26.js","sourceRoot":"","sources":["../../src/nips/nip-26.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nip-26.js","sourceRoot":"","sources":["../../src/nips/nip-26.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"nip-28.d.ts","sourceRoot":"","sources":["../../src/nips/nip-28.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;CAOjB,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,eAAe,GACxB,cAAc,CAMhB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,GACf,cAAc,CAWhB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,cAAc,CAShB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtD;;;;OAIG;IACH,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1D;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,CA8D3E;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;OAIG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,CAAC;IAE7C;;;;OAIG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,CAAC;IAE/C;;;;OAIG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;CACtE;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,MAAM,GACb,0BAA0B,CAoC5B"}
1
+ {"version":3,"file":"nip-28.d.ts","sourceRoot":"","sources":["../../src/nips/nip-28.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;CAOjB,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,eAAe,GACxB,cAAc,CAMhB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,GACf,cAAc,CAWhB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,cAAc,CAShB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtD;;;;OAIG;IACH,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1D;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAsD3E;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;OAIG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,CAAC;IAE7C;;;;OAIG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,CAAC;IAE/C;;;;OAIG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;CACtE;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,MAAM,GACb,0BAA0B,CAoC5B"}
@@ -80,15 +80,11 @@ export function createChatMessageHandler(logger) {
80
80
  const channelId = tags.find(tag => tag[0] === 'e' && tag[3] === 'root')?.[1];
81
81
  const replyId = tags.find(tag => tag[0] === 'e' && tag[3] === 'reply')?.[1];
82
82
  // Process message
83
- logger.debug('Processing chat message', {
84
- channelId,
85
- replyId,
86
- content: event.content
87
- });
83
+ logger.debug({ channelId, replyId, content: event.content }, 'Processing chat message');
88
84
  // Additional message processing logic here
89
85
  }
90
86
  catch (error) {
91
- logger.error('Error handling chat message:', error);
87
+ logger.error({ error }, 'Error handling chat message');
92
88
  }
93
89
  },
94
90
  async handleModeration(message) {
@@ -103,15 +99,11 @@ export function createChatMessageHandler(logger) {
103
99
  const channelId = tags.find(tag => tag[0] === 'e' && tag[3] === 'root')?.[1];
104
100
  const messageId = tags.find(tag => tag[0] === 'e' && tag[3] === 'reply')?.[1];
105
101
  // Process moderation
106
- logger.debug('Processing message moderation', {
107
- channelId,
108
- messageId,
109
- reason: event.content
110
- });
102
+ logger.debug({ channelId, messageId, reason: event.content }, 'Processing message moderation');
111
103
  // Additional moderation logic here
112
104
  }
113
105
  catch (error) {
114
- logger.error('Error handling message moderation:', error);
106
+ logger.error({ error }, 'Error handling message moderation');
115
107
  }
116
108
  }
117
109
  };
@@ -1 +1 @@
1
- {"version":3,"file":"nip-28.js","sourceRoot":"","sources":["../../src/nips/nip-28.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nip-28.js","sourceRoot":"","sources":["../../src/nips/nip-28.ts"],"names":[],"mappings":"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"}
@@ -64,7 +64,7 @@ export function validateParameterizedEvent(message, _logger) {
64
64
  return true;
65
65
  }
66
66
  catch (error) {
67
- _logger.error('Error validating parameterized event:', error);
67
+ _logger.error({ error }, 'Error validating parameterized event');
68
68
  return false;
69
69
  }
70
70
  }
@@ -114,7 +114,7 @@ export function createEventReplacementHandler(_logger) {
114
114
  return newEvent.created_at > existingEvent.created_at;
115
115
  }
116
116
  catch (error) {
117
- _logger.error('Error checking event replacement:', error);
117
+ _logger.error({ error }, 'Error checking event replacement');
118
118
  return false;
119
119
  }
120
120
  },
@@ -1 +1 @@
1
- {"version":3,"file":"nip-33.js","sourceRoot":"","sources":["../../src/nips/nip-33.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nip-33.js","sourceRoot":"","sources":["../../src/nips/nip-33.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH;;GAEG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C,oBAAoB,EAAE,KAAK;IAC3B,qBAAqB,EAAE,KAAK;IAC5B,uBAAuB,EAAE,KAAK;IAC9B,cAAc,EAAE,KAAK;IACrB,gBAAgB,EAAE,KAAK;IACvB,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CACtC,IAAY,EACZ,OAAe,EACf,UAAkB,EAClB,iBAA6B,EAAE;IAE/B,OAAO,CAAC,OAAO,EAAE;YACf,IAAI;YACJ,OAAO;YACP,IAAI,EAAE;gBACJ,CAAC,GAAG,EAAE,UAAU,CAAC;gBACjB,GAAG,cAAc;aAClB;SACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAAuB,EACvB,OAAe;IAEf,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;YACtD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAA4B,CAAC;QACpD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAc,CAAC;QAElC,kCAAkC;QAClC,IAAI,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;YAClE,OAAO,KAAK,CAAC;QACf,CAAC;QAED,gCAAgC;QAChC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACpC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACpC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAC/C,CAAC;QAEF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC7C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,sCAAsC,CAAC,CAAC;QACjE,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AA8CD;;;;GAIG;AACH,MAAM,UAAU,+BAA+B,CAC7C,OAAe;IAEf,OAAO;QACL,WAAW,CACT,IAAY,EACZ,OAAe,EACf,UAAkB,EAClB,OAAmB,EAAE;YAErB,OAAO,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACnE,CAAC;QAED,WAAW,CACT,IAAY,EACZ,UAAkB,EAClB,OAAe;YAEf,OAAO,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QAC7D,CAAC;QAED,SAAS,CAAC,KAAe,EAAE,WAAqB;YAC9C,OAAO,CAAC,KAAK,EAAE;oBACb,MAAM,EAAE;wBACN,KAAK;wBACL,IAAI,EAAE,WAAW;qBAClB;iBACF,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC;AAyBD;;;;GAIG;AACH,MAAM,UAAU,6BAA6B,CAC3C,OAAe;IAEf,OAAO;QACL,aAAa,CACX,QAAiC,EACjC,aAAsC;YAEtC,IAAI,CAAC;gBACH,oBAAoB;gBACpB,IAAI,QAAQ,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI;oBAAE,OAAO,KAAK,CAAC;gBAEvD,+BAA+B;gBAC/B,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAkB,CAAC;gBAC5C,MAAM,YAAY,GAAG,aAAa,CAAC,IAAkB,CAAC;gBAEtD,MAAM,OAAO,GAAG,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC1D,MAAM,YAAY,GAAG,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAEpE,IAAI,OAAO,KAAK,YAAY;oBAAE,OAAO,KAAK,CAAC;gBAE3C,mBAAmB;gBACnB,OAAQ,QAAQ,CAAC,UAAqB,GAAI,aAAa,CAAC,UAAqB,CAAC;YAChF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,kCAAkC,CAAC,CAAC;gBAC7D,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,iBAAiB,CAAC,KAA8B;YAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAc,CAAC;YAClC,MAAM,IAAI,GAAI,KAAK,CAAC,IAAmB,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1E,OAAO,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;QAC3B,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * @file NIP-44: Versioned Encrypted Payloads
3
+ * @module nips/nip-44
4
+ * @see https://github.com/nostr-protocol/nips/blob/master/44.md
5
+ *
6
+ * NIP-44 replaces NIP-04 with a modern encryption scheme using
7
+ * ChaCha20 + HMAC-SHA256. This module provides DM-level helpers
8
+ * that parallel the NIP-04 module (nip-04.ts).
9
+ */
10
+ import type { NostrWSMessage } from '../types/messages.js';
11
+ import type { Logger } from '../types/logger.js';
12
+ /**
13
+ * Kind value for NIP-44 encrypted direct messages (gift-wrapped DMs use kind 14,
14
+ * but for parity with NIP-04 kind 4 usage, callers may choose their own kind).
15
+ * NIP-44 itself is a payload format, not a kind — the kind depends on the use case.
16
+ * We default to kind 44 as a convenience constant; callers should override as needed.
17
+ */
18
+ export declare const ENCRYPTED_DM_KIND_44 = 44;
19
+ /**
20
+ * Creates a NIP-44 conversation key from a sender's private key and recipient's public key.
21
+ * This key is symmetric and reusable for all messages in the conversation.
22
+ * @param senderPrivkeyHex - Sender's private key in hex
23
+ * @param recipientPubkeyHex - Recipient's public key in hex
24
+ * @returns Conversation key as Uint8Array
25
+ */
26
+ export declare function getConversationKey(senderPrivkeyHex: string, recipientPubkeyHex: string): Uint8Array;
27
+ /**
28
+ * Encrypts a message using NIP-44
29
+ * @param plaintext - Message content to encrypt
30
+ * @param senderPrivkeyHex - Sender's private key in hex
31
+ * @param recipientPubkeyHex - Recipient's public key in hex
32
+ * @returns Encrypted payload string (base64)
33
+ */
34
+ export declare function encryptNip44(plaintext: string, senderPrivkeyHex: string, recipientPubkeyHex: string): string;
35
+ /**
36
+ * Decrypts a NIP-44 encrypted payload
37
+ * @param payload - Encrypted payload string (base64)
38
+ * @param recipientPrivkeyHex - Recipient's private key in hex
39
+ * @param senderPubkeyHex - Sender's public key in hex
40
+ * @returns Decrypted plaintext
41
+ */
42
+ export declare function decryptNip44(payload: string, recipientPrivkeyHex: string, senderPubkeyHex: string): string;
43
+ /**
44
+ * Creates an encrypted direct message event using NIP-44
45
+ * @param content - Message content to encrypt
46
+ * @param recipientPubkey - Recipient's public key (hex)
47
+ * @param senderPrivkey - Sender's private key (hex)
48
+ * @param tags - Additional tags for the event
49
+ * @param kind - Event kind (defaults to ENCRYPTED_DM_KIND_44)
50
+ * @returns Encrypted message event as NostrWSMessage
51
+ */
52
+ export declare function createEncryptedDM44(content: string, recipientPubkey: string, senderPrivkey: string, tags?: string[][], kind?: number): NostrWSMessage;
53
+ /**
54
+ * Decrypts a received direct message event encrypted with NIP-44
55
+ * @param message - Received message
56
+ * @param recipientPrivkey - Recipient's private key (hex)
57
+ * @param senderPubkey - Sender's public key (hex)
58
+ * @param logger - Logger instance
59
+ * @returns Decrypted message content
60
+ */
61
+ export declare function decryptDM44(message: NostrWSMessage, recipientPrivkey: string, senderPubkey: string, logger: Logger): string;
62
+ /**
63
+ * Validates a NIP-44 encrypted DM event format
64
+ * @param message - Message to validate
65
+ * @param logger - Logger instance
66
+ * @returns True if message follows NIP-44 encrypted DM format
67
+ */
68
+ export declare function validateEncryptedDM44(message: NostrWSMessage, logger: Logger): boolean;
69
+ //# sourceMappingURL=nip-44.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nip-44.d.ts","sourceRoot":"","sources":["../../src/nips/nip-44.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,sBAAsB,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,gBAAgB,EAAE,MAAM,EACxB,kBAAkB,EAAE,MAAM,GACzB,UAAU,CAGZ;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,MAAM,EACxB,kBAAkB,EAAE,MAAM,GACzB,MAAM,CAGR;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,mBAAmB,EAAE,MAAM,EAC3B,eAAe,EAAE,MAAM,GACtB,MAAM,CAGR;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,EACrB,IAAI,GAAE,MAAM,EAAE,EAAO,EACrB,IAAI,GAAE,MAA6B,GAClC,cAAc,CAiBhB;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,cAAc,EACvB,gBAAgB,EAAE,MAAM,EACxB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,GACb,MAAM,CAaR;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,MAAM,GACb,OAAO,CAiCT"}
@@ -0,0 +1,134 @@
1
+ /**
2
+ * @file NIP-44: Versioned Encrypted Payloads
3
+ * @module nips/nip-44
4
+ * @see https://github.com/nostr-protocol/nips/blob/master/44.md
5
+ *
6
+ * NIP-44 replaces NIP-04 with a modern encryption scheme using
7
+ * ChaCha20 + HMAC-SHA256. This module provides DM-level helpers
8
+ * that parallel the NIP-04 module (nip-04.ts).
9
+ */
10
+ import { nip44, hexToBytes, getPublicKeySync } from 'nostr-crypto-utils';
11
+ /**
12
+ * Kind value for NIP-44 encrypted direct messages (gift-wrapped DMs use kind 14,
13
+ * but for parity with NIP-04 kind 4 usage, callers may choose their own kind).
14
+ * NIP-44 itself is a payload format, not a kind — the kind depends on the use case.
15
+ * We default to kind 44 as a convenience constant; callers should override as needed.
16
+ */
17
+ export const ENCRYPTED_DM_KIND_44 = 44;
18
+ /**
19
+ * Creates a NIP-44 conversation key from a sender's private key and recipient's public key.
20
+ * This key is symmetric and reusable for all messages in the conversation.
21
+ * @param senderPrivkeyHex - Sender's private key in hex
22
+ * @param recipientPubkeyHex - Recipient's public key in hex
23
+ * @returns Conversation key as Uint8Array
24
+ */
25
+ export function getConversationKey(senderPrivkeyHex, recipientPubkeyHex) {
26
+ const privkeyBytes = hexToBytes(senderPrivkeyHex);
27
+ return nip44.getConversationKey(privkeyBytes, recipientPubkeyHex);
28
+ }
29
+ /**
30
+ * Encrypts a message using NIP-44
31
+ * @param plaintext - Message content to encrypt
32
+ * @param senderPrivkeyHex - Sender's private key in hex
33
+ * @param recipientPubkeyHex - Recipient's public key in hex
34
+ * @returns Encrypted payload string (base64)
35
+ */
36
+ export function encryptNip44(plaintext, senderPrivkeyHex, recipientPubkeyHex) {
37
+ const conversationKey = getConversationKey(senderPrivkeyHex, recipientPubkeyHex);
38
+ return nip44.encrypt(plaintext, conversationKey);
39
+ }
40
+ /**
41
+ * Decrypts a NIP-44 encrypted payload
42
+ * @param payload - Encrypted payload string (base64)
43
+ * @param recipientPrivkeyHex - Recipient's private key in hex
44
+ * @param senderPubkeyHex - Sender's public key in hex
45
+ * @returns Decrypted plaintext
46
+ */
47
+ export function decryptNip44(payload, recipientPrivkeyHex, senderPubkeyHex) {
48
+ const conversationKey = getConversationKey(recipientPrivkeyHex, senderPubkeyHex);
49
+ return nip44.decrypt(payload, conversationKey);
50
+ }
51
+ /**
52
+ * Creates an encrypted direct message event using NIP-44
53
+ * @param content - Message content to encrypt
54
+ * @param recipientPubkey - Recipient's public key (hex)
55
+ * @param senderPrivkey - Sender's private key (hex)
56
+ * @param tags - Additional tags for the event
57
+ * @param kind - Event kind (defaults to ENCRYPTED_DM_KIND_44)
58
+ * @returns Encrypted message event as NostrWSMessage
59
+ */
60
+ export function createEncryptedDM44(content, recipientPubkey, senderPrivkey, tags = [], kind = ENCRYPTED_DM_KIND_44) {
61
+ try {
62
+ const encryptedContent = encryptNip44(content, senderPrivkey, recipientPubkey);
63
+ const senderPubkey = getPublicKeySync(senderPrivkey);
64
+ return ['EVENT', {
65
+ kind,
66
+ pubkey: senderPubkey,
67
+ content: encryptedContent,
68
+ tags: [
69
+ ['p', recipientPubkey],
70
+ ...tags
71
+ ]
72
+ }];
73
+ }
74
+ catch (error) {
75
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
76
+ throw new Error(`Failed to create NIP-44 encrypted DM: ${errorMessage}`);
77
+ }
78
+ }
79
+ /**
80
+ * Decrypts a received direct message event encrypted with NIP-44
81
+ * @param message - Received message
82
+ * @param recipientPrivkey - Recipient's private key (hex)
83
+ * @param senderPubkey - Sender's public key (hex)
84
+ * @param logger - Logger instance
85
+ * @returns Decrypted message content
86
+ */
87
+ export function decryptDM44(message, recipientPrivkey, senderPubkey, logger) {
88
+ try {
89
+ if (!Array.isArray(message) || message[0] !== 'EVENT') {
90
+ throw new Error('Invalid message format');
91
+ }
92
+ const event = message[1];
93
+ return decryptNip44(event.content, recipientPrivkey, senderPubkey);
94
+ }
95
+ catch (error) {
96
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
97
+ logger.error({ error: errorMessage }, 'Failed to decrypt NIP-44 DM');
98
+ throw new Error(`Failed to decrypt NIP-44 DM: ${errorMessage}`);
99
+ }
100
+ }
101
+ /**
102
+ * Validates a NIP-44 encrypted DM event format
103
+ * @param message - Message to validate
104
+ * @param logger - Logger instance
105
+ * @returns True if message follows NIP-44 encrypted DM format
106
+ */
107
+ export function validateEncryptedDM44(message, logger) {
108
+ try {
109
+ if (!Array.isArray(message) || message[0] !== 'EVENT') {
110
+ logger.debug('Invalid message format');
111
+ return false;
112
+ }
113
+ const event = message[1];
114
+ if (!event.content || typeof event.content !== 'string') {
115
+ logger.debug('Missing or invalid content');
116
+ return false;
117
+ }
118
+ if (!Array.isArray(event.tags)) {
119
+ logger.debug('Missing tags array');
120
+ return false;
121
+ }
122
+ const recipientTag = event.tags.find((tag) => Array.isArray(tag) && tag[0] === 'p' && tag[1]);
123
+ if (!recipientTag) {
124
+ logger.debug('Missing recipient tag');
125
+ return false;
126
+ }
127
+ return true;
128
+ }
129
+ catch (error) {
130
+ logger.error({ error }, 'Error validating NIP-44 encrypted DM');
131
+ return false;
132
+ }
133
+ }
134
+ //# sourceMappingURL=nip-44.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nip-44.js","sourceRoot":"","sources":["../../src/nips/nip-44.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * @file NIP-46: Nostr Connect / Remote Signing Transport
3
+ * @module nips/nip-46
4
+ * @see https://github.com/nostr-protocol/nips/blob/master/46.md
5
+ *
6
+ * nostr-crypto-utils provides the NIP-46 protocol layer (crypto, encoding,
7
+ * message formatting) but has no I/O. This module adds the WebSocket relay
8
+ * transport on top — subscribing for kind 24133 responses, publishing
9
+ * wrapped requests, and correlating request/response pairs.
10
+ */
11
+ import { nip46 } from 'nostr-crypto-utils';
12
+ import type { Nip46Session, Nip46Request, Nip46Response, SignedNostrEvent, BunkerURI } from 'nostr-crypto-utils';
13
+ import { NostrWSClient } from '../core/client.js';
14
+ import type { NostrWSMessage } from '../types/messages.js';
15
+ /**
16
+ * Options for creating a NIP-46 transport
17
+ */
18
+ export interface Nip46TransportOptions {
19
+ /** Timeout for waiting for a response (ms). Defaults to 60000 (60s). */
20
+ timeout?: number;
21
+ }
22
+ /**
23
+ * Result of sending a NIP-46 request
24
+ */
25
+ export interface Nip46TransportResult {
26
+ /** The JSON-RPC response from the remote signer */
27
+ response: Nip46Response;
28
+ /** The raw kind 24133 event that carried the response */
29
+ rawEvent: SignedNostrEvent;
30
+ }
31
+ /**
32
+ * A thin transport layer that bridges nostr-crypto-utils NIP-46 protocol
33
+ * with the WebSocket relay infrastructure in this library.
34
+ *
35
+ * Usage:
36
+ * ```ts
37
+ * const client = new NostrWSClient(['wss://relay.example.com']);
38
+ * await client.connect();
39
+ *
40
+ * const session = nip46.createSession(remotePubkey);
41
+ * const transport = new Nip46Transport(client, session);
42
+ *
43
+ * // Send a connect request
44
+ * const connectReq = nip46.connectRequest(remotePubkey, secret);
45
+ * const result = await transport.sendRequest(connectReq);
46
+ * ```
47
+ */
48
+ export declare class Nip46Transport {
49
+ private client;
50
+ private session;
51
+ private timeout;
52
+ constructor(client: NostrWSClient, session: Nip46Session, options?: Nip46TransportOptions);
53
+ /**
54
+ * Subscribe for NIP-46 response events addressed to our ephemeral pubkey.
55
+ * This sends a REQ message to the relay with the appropriate filter.
56
+ * @param subscriptionId - Subscription ID for the REQ message
57
+ * @param since - Optional since timestamp for the filter
58
+ * @returns The subscription message that was sent
59
+ */
60
+ subscribe(subscriptionId: string, since?: number): Promise<NostrWSMessage>;
61
+ /**
62
+ * Wrap and publish a NIP-46 request as a kind 24133 event.
63
+ * @param request - NIP-46 JSON-RPC request
64
+ * @returns The signed kind 24133 event that was published
65
+ */
66
+ publishRequest(request: Nip46Request): Promise<SignedNostrEvent>;
67
+ /**
68
+ * Attempt to unwrap a kind 24133 event into a NIP-46 request or response.
69
+ * Returns null if the event is not kind 24133 or decryption fails.
70
+ * @param event - A signed Nostr event
71
+ * @returns Decrypted NIP-46 payload, or null on failure
72
+ */
73
+ unwrapEvent(event: SignedNostrEvent): Nip46Request | Nip46Response | null;
74
+ /**
75
+ * Get the NIP-46 response filter for this session.
76
+ * Useful for manual subscription management.
77
+ * @param since - Optional since timestamp
78
+ * @returns Filter object for kind 24133 events tagged to our pubkey
79
+ */
80
+ getResponseFilter(since?: number): {
81
+ kinds: number[];
82
+ '#p': string[];
83
+ since?: number;
84
+ };
85
+ /**
86
+ * Get the current session (read-only info).
87
+ * @returns The session's client and remote pubkeys
88
+ */
89
+ getSessionInfo(): {
90
+ clientPubkey: string;
91
+ remotePubkey: string;
92
+ };
93
+ }
94
+ /** Parse a bunker:// URI */
95
+ export declare const parseBunkerURI: (uri: string) => BunkerURI;
96
+ /** Create a bunker:// URI */
97
+ export declare const createBunkerURI: (remotePubkey: string, relays: string[], secret?: string) => string;
98
+ /** Validate a bunker:// URI */
99
+ export declare const validateBunkerURI: typeof nip46.validateBunkerURI;
100
+ /** Create a new NIP-46 session */
101
+ export declare const createNip46Session: typeof nip46.createSession;
102
+ /** Restore a NIP-46 session */
103
+ export declare const restoreNip46Session: typeof nip46.restoreSession;
104
+ /** Create a 'connect' request */
105
+ export declare const connectRequest: typeof nip46.connectRequest;
106
+ /** Create a 'ping' request */
107
+ export declare const pingRequest: typeof nip46.pingRequest;
108
+ /** Create a 'get_public_key' request */
109
+ export declare const getPublicKeyRequest: typeof nip46.getPublicKeyRequest;
110
+ /** Create a 'sign_event' request */
111
+ export declare const signEventRequest: typeof nip46.signEventRequest;
112
+ //# sourceMappingURL=nip-46.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nip-46.d.ts","sourceRoot":"","sources":["../../src/nips/nip-46.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,SAAS,EACV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAK3D;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,mDAAmD;IACnD,QAAQ,EAAE,aAAa,CAAC;IACxB,yDAAyD;IACzD,QAAQ,EAAE,gBAAgB,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,OAAO,CAAS;gBAGtB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE,qBAA0B;IAOrC;;;;;;OAMG;IACG,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAWhF;;;;OAIG;IACG,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAatE;;;;;OAKG;IACH,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,YAAY,GAAG,aAAa,GAAG,IAAI;IAUzE;;;;;OAKG;IACH,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE;IAItF;;;OAGG;IACH,cAAc,IAAI;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE;CAGjE;AAKD,4BAA4B;AAC5B,eAAO,MAAM,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,SAAgC,CAAC;AAE/E,6BAA6B;AAC7B,eAAO,MAAM,eAAe,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,MAA8B,CAAC;AAE1H,+BAA+B;AAC/B,eAAO,MAAM,iBAAiB,EAAE,OAAO,KAAK,CAAC,iBAA2C,CAAC;AAEzF,kCAAkC;AAClC,eAAO,MAAM,kBAAkB,EAAE,OAAO,KAAK,CAAC,aAAmC,CAAC;AAElF,+BAA+B;AAC/B,eAAO,MAAM,mBAAmB,EAAE,OAAO,KAAK,CAAC,cAAqC,CAAC;AAErF,iCAAiC;AACjC,eAAO,MAAM,cAAc,EAAE,OAAO,KAAK,CAAC,cAAqC,CAAC;AAEhF,8BAA8B;AAC9B,eAAO,MAAM,WAAW,EAAE,OAAO,KAAK,CAAC,WAA+B,CAAC;AAEvE,wCAAwC;AACxC,eAAO,MAAM,mBAAmB,EAAE,OAAO,KAAK,CAAC,mBAA+C,CAAC;AAE/F,oCAAoC;AACpC,eAAO,MAAM,gBAAgB,EAAE,OAAO,KAAK,CAAC,gBAAyC,CAAC"}