@relaymessenger/sdk 0.3.7-staging.0 → 0.3.7-staging.10

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/dist/client.js CHANGED
@@ -15,25 +15,8 @@ const delay = async (milliseconds, signal) => {
15
15
  });
16
16
  };
17
17
  const pathID = (value) => encodeURIComponent(value);
18
- /**
19
- * Relay-Server's A2A_ORIGIN for each API host (wrangler.jsonc env.staging:
20
- * PUBLIC_ORIGIN api.staging.relayapp.im, A2A_ORIGIN staging.relayagent.im;
21
- * production drops the "staging" label, scripts/production-config.mjs). With
22
- * no A2A_ORIGIN the Server serves agents under /a2a/ on its own origin
23
- * (config.ts, a2a.ts agentInterfaceUrl).
24
- */
25
- const defaultA2aBaseURL = (baseURL) => {
26
- const url = new URL(baseURL);
27
- if (url.hostname === "api.relayapp.im")
28
- return "https://relayagent.im";
29
- if (url.hostname === "api.staging.relayapp.im")
30
- return "https://staging.relayagent.im";
31
- return `${url.origin}/a2a`;
32
- };
33
18
  class Transport {
34
19
  baseURL;
35
- a2aBaseURL;
36
- #a2aClients = new Map();
37
20
  #apiKey;
38
21
  #fetch;
39
22
  #maxRetries;
@@ -41,7 +24,6 @@ class Transport {
41
24
  #retryBaseDelayMs;
42
25
  constructor(options) {
43
26
  this.baseURL = (options.baseURL ?? "https://api.relayapp.im").replace(/\/+$/, "");
44
- this.a2aBaseURL = (options.a2aBaseURL ?? defaultA2aBaseURL(this.baseURL)).replace(/\/+$/, "");
45
27
  this.#apiKey = options.apiKey;
46
28
  const selectedFetch = options.fetch ?? globalThis.fetch;
47
29
  // Workerd's native fetch validates its receiver. Retaining the bare
@@ -165,38 +147,6 @@ class Transport {
165
147
  throw new RelayAPIError(`Relay attachment upload failed with HTTP ${response.status}.`, { status: response.status });
166
148
  }
167
149
  }
168
- /**
169
- * The official A2A 1.0 client (@a2a-js/sdk) for one agent's address, made
170
- * from its Agent Card at `<a2aBaseURL>/<handle>/agent-card.json` and kept
171
- * for this Relay instance. Every JSON-RPC call carries this agent's Relay
172
- * token as its bearer credential (the card's `relay` HTTP bearer scheme);
173
- * the client adds `A2A-Version: 1.0`. Loaded on first use, so an agent
174
- * that never sends another agent a task or message there never loads it.
175
- */
176
- a2a(handle) {
177
- const key = handle.replace(/^@/, "").trim().toLowerCase();
178
- let client = this.#a2aClients.get(key);
179
- if (!client) {
180
- client = this.#createA2aClient(key);
181
- this.#a2aClients.set(key, client);
182
- client.catch(() => this.#a2aClients.delete(key));
183
- }
184
- return client;
185
- }
186
- async #createA2aClient(handle) {
187
- const { ClientFactory, DefaultAgentCardResolver, JsonRpcTransportFactory, createAuthenticatingFetchWithRetry, } = await import("@a2a-js/sdk/client");
188
- const fetchImpl = this.#fetch;
189
- const apiKey = this.#apiKey;
190
- const authenticated = createAuthenticatingFetchWithRetry(fetchImpl, {
191
- headers: async () => ({ authorization: `Bearer ${apiKey}` }),
192
- shouldRetryWithHeaders: async () => undefined,
193
- });
194
- const factory = new ClientFactory({
195
- transports: [new JsonRpcTransportFactory({ fetchImpl: authenticated })],
196
- cardResolver: new DefaultAgentCardResolver({ fetchImpl }),
197
- });
198
- return factory.createFromUrl(`${this.a2aBaseURL}/${pathID(handle)}/agent-card.json`, "");
199
- }
200
150
  runWebSocket(options) {
201
151
  if (!this.#apiKey)
202
152
  throw new Error("Relay API key is required.");
@@ -693,6 +643,40 @@ export class Access {
693
643
  });
694
644
  }
695
645
  }
646
+ /**
647
+ * The agent's OAuth2 client for Log in with Relay: websites log people in
648
+ * with Relay through standard OpenID Connect, and the person's login lets
649
+ * this agent message them. Discord Developer Portal's OAuth2 page, for the
650
+ * agent's own token; the Console's OAuth2 tab edits the same client.
651
+ */
652
+ export class OAuth2Client {
653
+ transport;
654
+ constructor(transport) {
655
+ this.transport = transport;
656
+ }
657
+ /**
658
+ * `GET /v1/oauth2_client`: the client. A read never makes it (404 until
659
+ * created) and never carries the secret.
660
+ */
661
+ retrieve(options) {
662
+ return this.transport.request({ method: "GET", path: "/v1/oauth2_client", options });
663
+ }
664
+ /**
665
+ * `POST /v1/oauth2_client`: make the client, once (409 when one exists).
666
+ * This answer carries `client_secret`; only a reset shows another.
667
+ */
668
+ create(options) {
669
+ return this.transport.request({ method: "POST", path: "/v1/oauth2_client", expectedStatus: 201, options });
670
+ }
671
+ /** `PATCH /v1/oauth2_client`: replace the redirects, the scopes, or both. */
672
+ update(body, options) {
673
+ return this.transport.request({ method: "PATCH", path: "/v1/oauth2_client", body, options });
674
+ }
675
+ /** `POST /v1/oauth2_client/reset_secret`: a new secret, returned once; the old one stops working. */
676
+ resetSecret(options) {
677
+ return this.transport.request({ method: "POST", path: "/v1/oauth2_client/reset_secret", options });
678
+ }
679
+ }
696
680
  export class WebSocket {
697
681
  transport;
698
682
  constructor(transport) {
@@ -770,6 +754,7 @@ export class Me {
770
754
  * every Handle of the agent names it, and `owner_people`, the people who
771
755
  * administer it. For an agent a person owns, that person; for an
772
756
  * organization's agent, the person who issued the calling Agent Token.
757
+ * `calls_enabled` says whether this server takes Calls.
773
758
  */
774
759
  retrieve(options) {
775
760
  return this.transport.request({
@@ -778,202 +763,6 @@ export class Me {
778
763
  options,
779
764
  });
780
765
  }
781
- /**
782
- * Turn on or off whether this agent accepts tasks (A2A Tasks) from other
783
- * agents. It starts off; only the agent itself sets it. While it is off, a
784
- * message to the agent's A2A address arrives as an ordinary message in the
785
- * chat with the sender. The reply is the agent's message there whose
786
- * `reply_to` names it; a message that names nothing is the reply only when
787
- * it is the agent's next message and the sender sent nothing else since
788
- * the agent last spoke. So reply with `reply_to`: two overlapping messages
789
- * from the same sender get no unnamed reply (Relay-Server `a2a.ts`).
790
- */
791
- update(body, options) {
792
- return this.transport.request({
793
- method: "PATCH",
794
- path: "/v1/me",
795
- body,
796
- options,
797
- });
798
- }
799
- }
800
- export class CommunityMembers {
801
- transport;
802
- constructor(transport) {
803
- this.transport = transport;
804
- }
805
- /** Every member agent, first joined first. Only a member agent may read them. */
806
- list(handle, options) {
807
- return this.transport.request({
808
- method: "GET",
809
- path: `/v1/communities/${pathID(handle)}/members`,
810
- options,
811
- });
812
- }
813
- }
814
- export class Communities {
815
- transport;
816
- members;
817
- constructor(transport) {
818
- this.transport = transport;
819
- this.members = new CommunityMembers(transport);
820
- }
821
- /**
822
- * The communities this agent is a member of, first joined first, each with
823
- * its own `lets_members_message` switch, and the owner's `rules` and
824
- * `links`.
825
- */
826
- list(options) {
827
- return this.transport.request({
828
- method: "GET",
829
- path: "/v1/communities",
830
- options,
831
- });
832
- }
833
- /**
834
- * A public community's page. A private one shows its name, picture and
835
- * owner; with `invite` set to its current invite code, what its join page
836
- * shows, and with any other code it is not found (404, code 2040).
837
- */
838
- retrieve(handle, query = {}, options) {
839
- return this.transport.request({
840
- method: "GET",
841
- path: `/v1/communities/${pathID(handle)}`,
842
- query,
843
- options,
844
- });
845
- }
846
- /**
847
- * Join a community as this agent. A public community needs no code; a
848
- * private one needs its current `invite_code`, the `invite` parameter of
849
- * its invite link. A private community with no code or any other code is
850
- * not found (404, code 2040). Joining again changes nothing. Answers the
851
- * community with its rules; follow them.
852
- */
853
- join(handle, body = {}, options) {
854
- return this.transport.request({
855
- method: "POST",
856
- path: `/v1/communities/${pathID(handle)}/join`,
857
- body,
858
- options,
859
- });
860
- }
861
- /**
862
- * Leave a community this agent is a member of (404, code 2040, when it is
863
- * not). A private community can be joined again only with its current
864
- * invite code.
865
- */
866
- leave(handle, options) {
867
- return this.transport.request({
868
- method: "POST",
869
- path: `/v1/communities/${pathID(handle)}/leave`,
870
- options,
871
- });
872
- }
873
- /**
874
- * This agent's own switch for one community it is in.
875
- *
876
- * `lets_members_message` (on by default): when the agent lets in only
877
- * agents of its communities, this community's members may message it only
878
- * while it is on.
879
- */
880
- update(handle, body, options) {
881
- return this.transport.request({
882
- method: "PATCH",
883
- path: `/v1/communities/${pathID(handle)}`,
884
- body,
885
- options,
886
- });
887
- }
888
- }
889
- const a2aOptions = (options) => options?.signal ? { signal: options.signal } : {};
890
- /**
891
- * Tasks between agents: A2A 1.0 Tasks. The agent working on a task moves it
892
- * with `updateStatus` and adds results with `addArtifact` over Relay's API.
893
- * The agent that sent the task calls the other agent's A2A address with
894
- * `send`, `get` and `cancel`, through the official A2A client; its errors
895
- * are that client's (for example, an agent that does not let yours message
896
- * it answers with a JSON-RPC error whose message is "This agent can't be
897
- * messaged.").
898
- */
899
- export class Tasks {
900
- transport;
901
- constructor(transport) {
902
- this.transport = transport;
903
- }
904
- /** This agent's Tasks, most recently updated first. */
905
- list(query = {}, options) {
906
- return this.transport.request({
907
- method: "GET",
908
- path: "/v1/tasks",
909
- query,
910
- options,
911
- });
912
- }
913
- /** Set the state of a Task another agent sent this agent. */
914
- updateStatus(taskID, body, options) {
915
- return this.transport.request({
916
- method: "POST",
917
- path: `/v1/tasks/${pathID(taskID)}/status`,
918
- body,
919
- options,
920
- });
921
- }
922
- /**
923
- * Append one whole Artifact to a Task another agent sent this agent. The
924
- * same Artifact again changes nothing, so this is retried.
925
- */
926
- addArtifact(taskID, body, options) {
927
- return this.transport.request({
928
- method: "POST",
929
- path: `/v1/tasks/${pathID(taskID)}/artifacts`,
930
- body,
931
- options,
932
- retryable: true,
933
- });
934
- }
935
- /**
936
- * Send the agent `to` a message: A2A SendMessage at its address. The answer
937
- * is what the official A2A client's `sendMessage` answers, a Task or a
938
- * Message (@a2a-js/sdk `SendMessageResult`). An agent that accepts tasks
939
- * answers with a Task; this waits for it to settle unless
940
- * `configuration.returnImmediately` is true. Any other agent answers with a
941
- * Message: its reply in the chat between the two agents, whose id is the
942
- * Message's `contextId`. That reply is the agent's message whose
943
- * `reply_to` names the one sent, or, naming nothing, its next message when
944
- * the one sent is the only one open (see `Me.update`). A Message has a
945
- * `messageId`; a Task does not.
946
- */
947
- async send(params, options) {
948
- const { to, ...request } = params;
949
- const [client, { Message, SendMessageRequest, Task }] = await Promise.all([
950
- this.transport.a2a(to),
951
- import("@a2a-js/sdk"),
952
- ]);
953
- const result = await client.sendMessage(SendMessageRequest.fromJSON(request), a2aOptions(options));
954
- // The test @a2a-js/sdk's own Client uses to tell the two apart.
955
- if ("messageId" in result)
956
- return Message.toJSON(result);
957
- return Task.toJSON(result);
958
- }
959
- /** A2A GetTask at the agent `to`: a Task this agent sent it. */
960
- async get(params, options) {
961
- const { to, ...request } = params;
962
- const [client, { GetTaskRequest, Task }] = await Promise.all([
963
- this.transport.a2a(to),
964
- import("@a2a-js/sdk"),
965
- ]);
966
- return Task.toJSON(await client.getTask(GetTaskRequest.fromJSON(request), a2aOptions(options)));
967
- }
968
- /** A2A CancelTask at the agent `to`: a Task this agent sent it. */
969
- async cancel(params, options) {
970
- const { to, ...request } = params;
971
- const [client, { CancelTaskRequest, Task }] = await Promise.all([
972
- this.transport.a2a(to),
973
- import("@a2a-js/sdk"),
974
- ]);
975
- return Task.toJSON(await client.cancelTask(CancelTaskRequest.fromJSON(request), a2aOptions(options)));
976
- }
977
766
  }
978
767
  export class Relay {
979
768
  access;
@@ -989,9 +778,8 @@ export class Relay {
989
778
  contactCard;
990
779
  contacts;
991
780
  blockedHandles;
992
- communities;
993
781
  me;
994
- tasks;
782
+ oauth2Client;
995
783
  websocket;
996
784
  webhooks;
997
785
  constructor(options) {
@@ -1000,6 +788,7 @@ export class Relay {
1000
788
  const transport = new Transport(options);
1001
789
  this.baseURL = transport.baseURL;
1002
790
  this.access = new Access(transport);
791
+ this.oauth2Client = new OAuth2Client(transport);
1003
792
  this.agents = new Agents(transport);
1004
793
  this.chats = new Chats(transport);
1005
794
  this.calls = new Calls(transport);
@@ -1011,9 +800,7 @@ export class Relay {
1011
800
  this.contactCard = new ContactCard(transport);
1012
801
  this.contacts = new Contacts(transport);
1013
802
  this.blockedHandles = new BlockedHandles(transport);
1014
- this.communities = new Communities(transport);
1015
803
  this.me = new Me(transport);
1016
- this.tasks = new Tasks(transport);
1017
804
  this.websocket = new WebSocket(transport);
1018
805
  this.webhooks = new Webhooks(options.webhookSecret ?? null);
1019
806
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { Access, Agents, Attachments, BlockedHandles, Chats, Calls, Communities, CommunityMembers, ContactCard, Contacts, Me, Messages, PaymentRequests, Relay, Tasks, WebSocket, WebhookEvents, WebhookSubscriptions, type RelayOptions, } from "./client.js";
1
+ export { Access, Agents, Attachments, BlockedHandles, Chats, Calls, ContactCard, Contacts, Me, Messages, PaymentRequests, Relay, WebSocket, WebhookEvents, WebhookSubscriptions, type RelayOptions, } from "./client.js";
2
2
  export { CallRoom, parseCallRoomServerFrame, type CallRoomCloseEvent, type CallRoomConnectionState, type CallRoomEventMap, type CallRoomOptions, type CallRoomReconnectingEvent, } from "./calls/call-room.js";
3
3
  export { RelayAPIError, RelayUnknownEventTypeError, RelayWebhookConfiguredError, type RelayAPIErrorOptions, type RelayWebhookConfiguredErrorOptions, } from "./errors.js";
4
4
  export { RELAY_V1_OPERATIONS, RELAY_WEBHOOK_EVENT_TYPES, type RelayV1Operation, } from "./operations.js";
@@ -10,7 +10,9 @@ export { BUTTONS_BLOCK_INSTRUCTION, BUTTONS_FENCE, BUTTONS_GUIDANCE, BUTTONS_MAX
10
10
  export { IDEMPOTENCY_KEY_MAX_LENGTH, LINK_LINE_INSTRUCTION, LINK_URL_MAX_LENGTH, answerMessages, indexedIdempotencyKey, splitLinks, standaloneLink, type AnswerMessages, type AnswerSegment, } from "./links.js";
11
11
  export { PAYMENT_BLOCK_INSTRUCTION, PAYMENT_CATEGORIES, PAYMENT_DESCRIPTION_MAX_LENGTH, PAYMENT_FENCE, PAYMENT_GUIDANCE, PAYMENT_IMAGE_URL_MAX_LENGTH, createPaymentPart, parsePaymentBlock, paymentRequestFields, splitPayment, type SplitPayment, } from "./payment.js";
12
12
  export { Relay as default } from "./client.js";
13
+ export { RELAY_ISSUER, verifyRelayIdToken, type RelayIdTokenClaims, type VerifyRelayIdTokenOptions, } from "./login.js";
13
14
  export { SELECTION_BLOCK_INSTRUCTION, SELECTION_FENCE, SELECTION_GUIDANCE, SELECTION_MAX_OPTIONS, SELECTION_TITLE_MAX_LENGTH, SELECTION_LABEL_MAX_LENGTH, SELECTION_VALUE_MAX_LENGTH, SELECTION_CONTEXT_MAX_LENGTH, componentParts, selectionPart, parseSelectionBlock, partsWithSelection, splitSelection, selectionReply, selectionReplyContext, type SelectionReply, type SplitSelection, } from "./selection.js";
15
+ export { CAROUSEL_MAX_CARDS, CAROUSEL_MIN_CARDS, RICH_CARD_DESCRIPTION_MAX_LENGTH, RICH_CARD_MAX_SUGGESTIONS, RICH_CARD_TITLE_MAX_LENGTH, SUGGESTION_ID_MAX_LENGTH, SUGGESTION_LABEL_MAX_LENGTH, suggestionReply, type SuggestionReply, } from "./rich-cards.js";
14
16
  export { REPLY_TARGET_TEXT_MAX_LENGTH, replyTargetContext, replyTargetParts, } from "./reply-target.js";
15
17
  export { A2UI_BASIC_CATALOG_ID, A2UI_BROWSER_ACTIONS, A2UI_MEDIA_TYPE, A2UI_VERSION, RELAY_A2UI_CATALOG_ID, a2uiBrowserCardMessages, a2uiBrowserCardUpdate, a2uiBrowserComponent, a2uiPart, isA2uiBrowserAction, deleteA2uiSurface, readA2uiAction, sendA2uiSurface, updateA2uiSurface, type A2uiBrowserCard, type A2uiSendOptions, type A2uiSurface, type A2uiSurfaceUpdate, type A2uiTap, } from "./a2ui.js";
16
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { Access, Agents, Attachments, BlockedHandles, Chats, Calls, Communities, CommunityMembers, ContactCard, Contacts, Me, Messages, PaymentRequests, Relay, Tasks, WebSocket, WebhookEvents, WebhookSubscriptions, } from "./client.js";
1
+ export { Access, Agents, Attachments, BlockedHandles, Chats, Calls, ContactCard, Contacts, Me, Messages, PaymentRequests, Relay, WebSocket, WebhookEvents, WebhookSubscriptions, } from "./client.js";
2
2
  export { CallRoom, parseCallRoomServerFrame, } from "./calls/call-room.js";
3
3
  export { RelayAPIError, RelayUnknownEventTypeError, RelayWebhookConfiguredError, } from "./errors.js";
4
4
  export { RELAY_V1_OPERATIONS, RELAY_WEBHOOK_EVENT_TYPES, } from "./operations.js";
@@ -9,7 +9,9 @@ export { BUTTONS_BLOCK_INSTRUCTION, BUTTONS_FENCE, BUTTONS_GUIDANCE, BUTTONS_MAX
9
9
  export { IDEMPOTENCY_KEY_MAX_LENGTH, LINK_LINE_INSTRUCTION, LINK_URL_MAX_LENGTH, answerMessages, indexedIdempotencyKey, splitLinks, standaloneLink, } from "./links.js";
10
10
  export { PAYMENT_BLOCK_INSTRUCTION, PAYMENT_CATEGORIES, PAYMENT_DESCRIPTION_MAX_LENGTH, PAYMENT_FENCE, PAYMENT_GUIDANCE, PAYMENT_IMAGE_URL_MAX_LENGTH, createPaymentPart, parsePaymentBlock, paymentRequestFields, splitPayment, } from "./payment.js";
11
11
  export { Relay as default } from "./client.js";
12
+ export { RELAY_ISSUER, verifyRelayIdToken, } from "./login.js";
12
13
  export { SELECTION_BLOCK_INSTRUCTION, SELECTION_FENCE, SELECTION_GUIDANCE, SELECTION_MAX_OPTIONS, SELECTION_TITLE_MAX_LENGTH, SELECTION_LABEL_MAX_LENGTH, SELECTION_VALUE_MAX_LENGTH, SELECTION_CONTEXT_MAX_LENGTH, componentParts, selectionPart, parseSelectionBlock, partsWithSelection, splitSelection, selectionReply, selectionReplyContext, } from "./selection.js";
14
+ export { CAROUSEL_MAX_CARDS, CAROUSEL_MIN_CARDS, RICH_CARD_DESCRIPTION_MAX_LENGTH, RICH_CARD_MAX_SUGGESTIONS, RICH_CARD_TITLE_MAX_LENGTH, SUGGESTION_ID_MAX_LENGTH, SUGGESTION_LABEL_MAX_LENGTH, suggestionReply, } from "./rich-cards.js";
13
15
  export { REPLY_TARGET_TEXT_MAX_LENGTH, replyTargetContext, replyTargetParts, } from "./reply-target.js";
14
16
  export { A2UI_BASIC_CATALOG_ID, A2UI_BROWSER_ACTIONS, A2UI_MEDIA_TYPE, A2UI_VERSION, RELAY_A2UI_CATALOG_ID, a2uiBrowserCardMessages, a2uiBrowserCardUpdate, a2uiBrowserComponent, a2uiPart, isA2uiBrowserAction, deleteA2uiSurface, readA2uiAction, sendA2uiSurface, updateA2uiSurface, } from "./a2ui.js";
15
17
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,MAAM,EACN,WAAW,EACX,cAAc,EACd,KAAK,EACL,KAAK,EACL,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,QAAQ,EACR,EAAE,EACF,QAAQ,EACR,eAAe,EACf,KAAK,EACL,KAAK,EACL,SAAS,EACT,aAAa,EACb,oBAAoB,GAErB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,QAAQ,EACR,wBAAwB,GAMzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,aAAa,EACb,0BAA0B,EAC1B,2BAA2B,GAG5B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAE1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,SAAS,GAEV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,QAAQ,EACR,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,GAEvB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,GAMb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GAEb,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,cAAc,GAGf,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,yBAAyB,EACzB,kBAAkB,EAClB,8BAA8B,EAC9B,aAAa,EACb,gBAAgB,EAChB,4BAA4B,EAC5B,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,GAEb,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EACL,2BAA2B,EAC3B,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,qBAAqB,GAGtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,4BAA4B,EAC5B,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,QAAQ,EACR,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,iBAAiB,GAMlB,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,MAAM,EACN,WAAW,EACX,cAAc,EACd,KAAK,EACL,KAAK,EACL,WAAW,EACX,QAAQ,EACR,EAAE,EACF,QAAQ,EACR,eAAe,EACf,KAAK,EACL,SAAS,EACT,aAAa,EACb,oBAAoB,GAErB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,QAAQ,EACR,wBAAwB,GAMzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,aAAa,EACb,0BAA0B,EAC1B,2BAA2B,GAG5B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAE1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,SAAS,GAEV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,QAAQ,EACR,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,GAEvB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,GAMb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GAEb,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,cAAc,GAGf,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,yBAAyB,EACzB,kBAAkB,EAClB,8BAA8B,EAC9B,aAAa,EACb,gBAAgB,EAChB,4BAA4B,EAC5B,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,GAEb,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EACL,YAAY,EACZ,kBAAkB,GAGnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,2BAA2B,EAC3B,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,qBAAqB,GAGtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,gCAAgC,EAChC,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,2BAA2B,EAC3B,eAAe,GAEhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,4BAA4B,EAC5B,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,QAAQ,EACR,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,iBAAiB,GAMlB,MAAM,WAAW,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { type ButtonHTMLAttributes, type ReactElement } from "react";
2
+ /**
3
+ * Relay's "Connect Relay" button for React, the twin of the hosted script
4
+ * (https://auth.relayapp.im/js/relay-login.js). Both are Relay's own shape,
5
+ * Telegram's "Connect Telegram" pill in Relay blue. A click starts a
6
+ * standard OpenID Connect authorization code flow with PKCE (RFC 7636) and
7
+ * a nonce, and keeps `state`, `nonce` and `code_verifier` for ten minutes in
8
+ * a first-party cookie named `relay_login` (base64url JSON). Your callback
9
+ * reads that cookie and exchanges the code with any OpenID Connect library,
10
+ * with your client secret, checking the state and the nonce.
11
+ */
12
+ /** Relay's authorization server. Staging is `https://auth.staging.relayapp.im`. */
13
+ export declare const RELAY_AUTH_ORIGIN = "https://auth.relayapp.im";
14
+ export interface RelayLoginOptions {
15
+ /** Your client ID: your agent's ID. */
16
+ clientId: string;
17
+ /** One of the redirects in your agent's OAuth2 settings. */
18
+ redirectUri: string;
19
+ /** Defaults to "openid profile". Add "email" or "phone" when your agent's scopes allow them. */
20
+ scope?: string;
21
+ /** Defaults to {@link RELAY_AUTH_ORIGIN}. */
22
+ authOrigin?: string;
23
+ }
24
+ /** Starts the login: saves the cookie and opens Relay. */
25
+ export declare function startRelayLogin(options: RelayLoginOptions): Promise<void>;
26
+ export type RelayLoginButtonProps = RelayLoginOptions & Omit<ButtonHTMLAttributes<HTMLButtonElement>, "onClick">;
27
+ /** `<RelayLoginButton clientId="…" redirectUri="…" />`: the "Connect Relay" pill. */
28
+ export declare function RelayLoginButton({ clientId, redirectUri, scope, authOrigin, children, style, ...rest }: RelayLoginButtonProps): ReactElement;
29
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/login-button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,oBAAoB,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAEpF;;;;;;;;;GASG;AAEH,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,6BAA6B,CAAC;AAE5D,MAAM,WAAW,iBAAiB;IAChC,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AASD,0DAA0D;AAC1D,wBAAsB,eAAe,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB/E;AAeD,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,CAAC;AAEjH,qFAAqF;AACrF,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,qBAAqB,GAAG,YAAY,CAiB5I"}
@@ -0,0 +1,58 @@
1
+ import { createElement } from "react";
2
+ /**
3
+ * Relay's "Connect Relay" button for React, the twin of the hosted script
4
+ * (https://auth.relayapp.im/js/relay-login.js). Both are Relay's own shape,
5
+ * Telegram's "Connect Telegram" pill in Relay blue. A click starts a
6
+ * standard OpenID Connect authorization code flow with PKCE (RFC 7636) and
7
+ * a nonce, and keeps `state`, `nonce` and `code_verifier` for ten minutes in
8
+ * a first-party cookie named `relay_login` (base64url JSON). Your callback
9
+ * reads that cookie and exchanges the code with any OpenID Connect library,
10
+ * with your client secret, checking the state and the nonce.
11
+ */
12
+ /** Relay's authorization server. Staging is `https://auth.staging.relayapp.im`. */
13
+ export const RELAY_AUTH_ORIGIN = "https://auth.relayapp.im";
14
+ const BLUE = "#0B75FF";
15
+ const base64url = (bytes) => btoa(String.fromCharCode(...bytes)).replaceAll("+", "-").replaceAll("/", "_").replace(/=+$/u, "");
16
+ const random = (size) => base64url(crypto.getRandomValues(new Uint8Array(size)));
17
+ /** Starts the login: saves the cookie and opens Relay. */
18
+ export async function startRelayLogin(options) {
19
+ const state = random(24);
20
+ const nonce = random(24);
21
+ const verifier = random(32);
22
+ const digest = new Uint8Array(await crypto.subtle.digest("SHA-256", new TextEncoder().encode(verifier)));
23
+ const saved = base64url(new TextEncoder().encode(JSON.stringify({ state, nonce, code_verifier: verifier })));
24
+ document.cookie = `relay_login=${saved}; Path=/; Max-Age=600; SameSite=Lax${location.protocol === "https:" ? "; Secure" : ""}`;
25
+ const query = new URLSearchParams({
26
+ response_type: "code",
27
+ client_id: options.clientId,
28
+ redirect_uri: options.redirectUri,
29
+ scope: options.scope ?? "openid profile",
30
+ state,
31
+ nonce,
32
+ code_challenge: base64url(digest),
33
+ code_challenge_method: "S256",
34
+ });
35
+ location.assign(`${options.authOrigin ?? RELAY_AUTH_ORIGIN}/api/auth/oauth2/authorize?${query.toString()}`);
36
+ }
37
+ const mark = createElement("svg", { viewBox: "0 0 1024 1024", width: 22, height: 22, "aria-hidden": true, style: { flex: "none" } }, createElement("path", {
38
+ d: "M512 185C701 185 854 314 854 475C854 656 695 827 523 827C493 827 467 824 446 815C369 861 302 883 284 865C268 848 300 773 317 720C246 665 210 582 210 484C210 319 344 185 512 185Z",
39
+ fill: "#fff",
40
+ }), createElement("path", {
41
+ d: "M372 514C372 470 408 434 452 434C496 434 532 470 532 514M600 514C600 470 636 434 680 434C724 434 760 470 760 514",
42
+ fill: "none", stroke: BLUE, strokeWidth: 48, strokeLinecap: "round",
43
+ }));
44
+ /** `<RelayLoginButton clientId="…" redirectUri="…" />`: the "Connect Relay" pill. */
45
+ export function RelayLoginButton({ clientId, redirectUri, scope, authOrigin, children, style, ...rest }) {
46
+ return createElement("button", {
47
+ type: "button",
48
+ ...rest,
49
+ onClick: () => void startRelayLogin({ clientId, redirectUri, ...(scope ? { scope } : {}), ...(authOrigin ? { authOrigin } : {}) }),
50
+ style: {
51
+ display: "inline-flex", alignItems: "center", gap: 8, height: 40, padding: "0 18px 0 14px",
52
+ border: 0, borderRadius: 20, background: BLUE, color: "#fff", cursor: "pointer",
53
+ font: "600 15px/1 -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif",
54
+ ...style,
55
+ },
56
+ }, mark, createElement("span", null, children ?? "Connect Relay"));
57
+ }
58
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/login-button/index.ts"],"names":[],"mappings":"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"}