From f956511d055d6f3d008d11cef31a149e08714fc7 Mon Sep 17 00:00:00 2001 From: Rohin Bhargava Date: Thu, 24 Oct 2024 10:57:19 -0400 Subject: [PATCH 01/11] =?UTF-8?q?Revert=20"Revert=20"fix:=20disconnect=20a?= =?UTF-8?q?fter=20x=20messages=20to=20illustrate=20how=20websockets?= =?UTF-8?q?=E2=80=A6"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 86734646d7b1b81019d5dc1cb3d134e09a4c1c63. --- .../definition/docs/v1/commons/commons.yml | 5 - .../fdr/definition/docs/v1/db/__package__.yml | 3 - .../definition/docs/v1/read/__package__.yml | 3 - .../definition/docs/v1/write/__package__.yml | 3 - .../navigation/latest/__package__.yml | 1 + .../definition/navigation/v1/__package__.yml | 1 + .../src/definition-object-factory.ts | 1 - .../commons/types/PlaygroundConfig.ts | 7 - .../commons/resources/commons/types/index.ts | 1 - .../v1/resources/db/types/DocsDbConfig.ts | 1 - .../v1/resources/read/types/DocsConfig.ts | 1 - .../v1/resources/write/client/Client.ts | 3 - .../client/requests/RegisterDocsRequest.ts | 3 - .../v1/resources/write/types/DocsConfig.ts | 1 - .../v2/resources/write/client/Client.ts | 3 - .../client/requests/RegisterDocsRequest.ts | 3 - .../latest/types/PlaygroundSettings.ts | 1 + .../resources/v1/types/PlaygroundSettings.ts | 1 + .../db/convertDocsDefinitionToDb.ts | 1 - .../read/convertDbDocsConfigToRead.ts | 1 - .../web-socket/WebSocketMessages.scss | 7 +- .../web-socket/WebSocketMessages.tsx | 146 ++++++++++-------- .../src/playground/PlaygroundWebSocket.tsx | 33 +++- .../playground/PlaygroundWebSocketContent.tsx | 4 - .../PlaygroundWebSocketSessionForm.tsx | 10 +- .../src/__test__/local/services/docs.test.ts | 1 - .../__test__/local/services/docsCache.test.ts | 1 - .../__test__/local/services/snippets.test.ts | 3 - .../services/snippetsByEndpointId.test.ts | 1 - ...enerateAlgoliaSearchRecordsForDocs.test.ts | 1 - .../commons/types/PlaygroundConfig.d.ts | 6 - .../commons/types/PlaygroundConfig.js | 4 - .../resources/commons/types/index.d.ts | 1 - .../commons/resources/commons/types/index.js | 1 - .../v1/resources/db/types/DocsDbConfig.d.ts | 1 - .../v1/resources/read/types/DocsConfig.d.ts | 1 - .../v1/resources/write/types/DocsConfig.d.ts | 1 - .../latest/types/PlaygroundSettings.d.ts | 1 + .../v1/types/PlaygroundSettings.d.ts | 1 + servers/fdr/src/healthchecks/checkRedis.ts | 1 - 40 files changed, 125 insertions(+), 144 deletions(-) delete mode 100644 packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.ts delete mode 100644 servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.d.ts delete mode 100644 servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.js diff --git a/fern/apis/fdr/definition/docs/v1/commons/commons.yml b/fern/apis/fdr/definition/docs/v1/commons/commons.yml index deb7a75c7c..a340d465a3 100644 --- a/fern/apis/fdr/definition/docs/v1/commons/commons.yml +++ b/fern/apis/fdr/definition/docs/v1/commons/commons.yml @@ -328,11 +328,6 @@ types: - fallback - optional - # Playground - PlaygroundConfig: - properties: - oauth: optional - # Deprecated ThemedFileId: diff --git a/fern/apis/fdr/definition/docs/v1/db/__package__.yml b/fern/apis/fdr/definition/docs/v1/db/__package__.yml index c7e3520743..7520f5a809 100644 --- a/fern/apis/fdr/definition/docs/v1/db/__package__.yml +++ b/fern/apis/fdr/definition/docs/v1/db/__package__.yml @@ -83,9 +83,6 @@ types: css: optional js: optional - # playground - playground: optional - # deprecated logo: type: optional diff --git a/fern/apis/fdr/definition/docs/v1/read/__package__.yml b/fern/apis/fdr/definition/docs/v1/read/__package__.yml index 8888134506..dddd67cff5 100644 --- a/fern/apis/fdr/definition/docs/v1/read/__package__.yml +++ b/fern/apis/fdr/definition/docs/v1/read/__package__.yml @@ -119,9 +119,6 @@ types: css: optional js: optional - # playground - playground: optional - # deprecated # backgroundImage: # type: optional diff --git a/fern/apis/fdr/definition/docs/v1/write/__package__.yml b/fern/apis/fdr/definition/docs/v1/write/__package__.yml index c4a8a9deb6..a4c0be7e1b 100644 --- a/fern/apis/fdr/definition/docs/v1/write/__package__.yml +++ b/fern/apis/fdr/definition/docs/v1/write/__package__.yml @@ -117,9 +117,6 @@ types: css: optional js: optional - # playground - playground: optional - # deprecated backgroundImage: optional logoV2: optional diff --git a/fern/apis/fdr/definition/navigation/latest/__package__.yml b/fern/apis/fdr/definition/navigation/latest/__package__.yml index 1b39192128..334fbb3b9a 100644 --- a/fern/apis/fdr/definition/navigation/latest/__package__.yml +++ b/fern/apis/fdr/definition/navigation/latest/__package__.yml @@ -254,6 +254,7 @@ types: A list of environment IDs that are allowed to be used in the playground. If not provided, all environments are allowed. And if the provided list is empty, the playground should be disabled. button: optional + limit-websocket-messages-per-connection: optional PlaygroundButtonSettings: properties: diff --git a/fern/apis/fdr/definition/navigation/v1/__package__.yml b/fern/apis/fdr/definition/navigation/v1/__package__.yml index 89efdfa432..7be1037ffb 100644 --- a/fern/apis/fdr/definition/navigation/v1/__package__.yml +++ b/fern/apis/fdr/definition/navigation/v1/__package__.yml @@ -254,6 +254,7 @@ types: A list of environment IDs that are allowed to be used in the playground. If not provided, all environments are allowed. And if the provided list is empty, the playground should be disabled. button: optional + limit-websocket-messages-per-connection: optional PlaygroundButtonSettings: properties: diff --git a/packages/commons/fdr-utils/src/definition-object-factory.ts b/packages/commons/fdr-utils/src/definition-object-factory.ts index 0d301cf35f..5455366756 100644 --- a/packages/commons/fdr-utils/src/definition-object-factory.ts +++ b/packages/commons/fdr-utils/src/definition-object-factory.ts @@ -37,7 +37,6 @@ export class DefinitionObjectFactory { integrations: undefined, css: undefined, js: undefined, - playground: undefined, }, search: { type: "singleAlgoliaIndex", diff --git a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.ts b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.ts deleted file mode 100644 index 3c201cb5a8..0000000000 --- a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.ts +++ /dev/null @@ -1,7 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -export interface PlaygroundConfig { - oauth: boolean | undefined; -} diff --git a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.ts b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.ts index fe0eea23a7..2d510b2e0e 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.ts @@ -45,7 +45,6 @@ export * from "./CustomFontConfig"; export * from "./CustomFontConfigVariant"; export * from "./FontStyle"; export * from "./FontDisplay"; -export * from "./PlaygroundConfig"; export * from "./ThemedFileId"; export * from "./ColorsConfig"; export * from "./ColorsConfigV2"; diff --git a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/db/types/DocsDbConfig.ts b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/db/types/DocsDbConfig.ts index f132f19348..2e9a8caba7 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/db/types/DocsDbConfig.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/db/types/DocsDbConfig.ts @@ -25,7 +25,6 @@ export interface DocsDbConfig { integrations: FernRegistry.docs.v1.commons.IntegrationsConfig | undefined; css: FernRegistry.docs.v1.commons.CssConfig | undefined; js: FernRegistry.docs.v1.commons.JsConfig | undefined; - playground: FernRegistry.docs.v1.commons.PlaygroundConfig | undefined; logo: FernRegistry.FileId | undefined; logoV2: FernRegistry.docs.v1.commons.ThemedFileId | undefined; colors: FernRegistry.docs.v1.commons.ColorsConfig | undefined; diff --git a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/read/types/DocsConfig.ts b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/read/types/DocsConfig.ts index 96a53fe57b..a549e434ee 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/read/types/DocsConfig.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/read/types/DocsConfig.ts @@ -24,5 +24,4 @@ export interface DocsConfig { integrations: FernRegistry.docs.v1.commons.IntegrationsConfig | undefined; css: FernRegistry.docs.v1.commons.CssConfig | undefined; js: FernRegistry.docs.v1.commons.JsConfig | undefined; - playground: FernRegistry.docs.v1.commons.PlaygroundConfig | undefined; } diff --git a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/client/Client.ts b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/client/Client.ts index a2f6b15ec1..e966bcacec 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/client/Client.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/client/Client.ts @@ -362,9 +362,6 @@ export class Write { * "key": "value" * }] * }, - * playground: { - * oauth: true - * }, * backgroundImage: FernRegistry.FileId("string"), * logoV2: { * dark: FernRegistry.FileId("string"), diff --git a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/client/requests/RegisterDocsRequest.ts b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/client/requests/RegisterDocsRequest.ts index 165ee65d65..9004b126c6 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/client/requests/RegisterDocsRequest.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/client/requests/RegisterDocsRequest.ts @@ -284,9 +284,6 @@ import * as FernRegistry from "../../../../../../../../index"; * "key": "value" * }] * }, - * playground: { - * oauth: true - * }, * backgroundImage: FernRegistry.FileId("string"), * logoV2: { * dark: FernRegistry.FileId("string"), diff --git a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/types/DocsConfig.ts b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/types/DocsConfig.ts index 55c12788c4..a5be303dd5 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/types/DocsConfig.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v1/resources/write/types/DocsConfig.ts @@ -24,7 +24,6 @@ export interface DocsConfig { integrations: FernRegistry.docs.v1.commons.IntegrationsConfig | undefined; css: FernRegistry.docs.v1.commons.CssConfig | undefined; js: FernRegistry.docs.v1.commons.JsConfig | undefined; - playground: FernRegistry.docs.v1.commons.PlaygroundConfig | undefined; backgroundImage: FernRegistry.FileId | undefined; logoV2: FernRegistry.docs.v1.commons.ThemedFileId | undefined; logo: FernRegistry.FileId | undefined; diff --git a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v2/resources/write/client/Client.ts b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v2/resources/write/client/Client.ts index cc955c9a0a..bc25cef97d 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v2/resources/write/client/Client.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v2/resources/write/client/Client.ts @@ -464,9 +464,6 @@ export class Write { * "key": "value" * }] * }, - * playground: { - * oauth: true - * }, * backgroundImage: FernRegistry.FileId("string"), * logoV2: { * dark: FernRegistry.FileId("string"), diff --git a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v2/resources/write/client/requests/RegisterDocsRequest.ts b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v2/resources/write/client/requests/RegisterDocsRequest.ts index 165ee65d65..9004b126c6 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v2/resources/write/client/requests/RegisterDocsRequest.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/docs/resources/v2/resources/write/client/requests/RegisterDocsRequest.ts @@ -284,9 +284,6 @@ import * as FernRegistry from "../../../../../../../../index"; * "key": "value" * }] * }, - * playground: { - * oauth: true - * }, * backgroundImage: FernRegistry.FileId("string"), * logoV2: { * dark: FernRegistry.FileId("string"), diff --git a/packages/fdr-sdk/src/client/generated/api/resources/navigation/resources/latest/types/PlaygroundSettings.ts b/packages/fdr-sdk/src/client/generated/api/resources/navigation/resources/latest/types/PlaygroundSettings.ts index d7f0e15c37..7312d680fd 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/navigation/resources/latest/types/PlaygroundSettings.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/navigation/resources/latest/types/PlaygroundSettings.ts @@ -11,4 +11,5 @@ export interface PlaygroundSettings { */ environments: FernRegistry.EnvironmentId[] | undefined; button: FernRegistry.navigation.latest.PlaygroundButtonSettings | undefined; + "limit-websocket-messages-per-connection": number | undefined; } diff --git a/packages/fdr-sdk/src/client/generated/api/resources/navigation/resources/v1/types/PlaygroundSettings.ts b/packages/fdr-sdk/src/client/generated/api/resources/navigation/resources/v1/types/PlaygroundSettings.ts index 717ad1345b..885c7609e8 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/navigation/resources/v1/types/PlaygroundSettings.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/navigation/resources/v1/types/PlaygroundSettings.ts @@ -11,4 +11,5 @@ export interface PlaygroundSettings { */ environments: FernRegistry.EnvironmentId[] | undefined; button: FernRegistry.navigation.v1.PlaygroundButtonSettings | undefined; + "limit-websocket-messages-per-connection": number | undefined; } diff --git a/packages/fdr-sdk/src/converters/db/convertDocsDefinitionToDb.ts b/packages/fdr-sdk/src/converters/db/convertDocsDefinitionToDb.ts index 08079ae48b..0a2f3bdacd 100644 --- a/packages/fdr-sdk/src/converters/db/convertDocsDefinitionToDb.ts +++ b/packages/fdr-sdk/src/converters/db/convertDocsDefinitionToDb.ts @@ -112,7 +112,6 @@ export function convertDocsDefinitionToDb({ defaultLanguage: writeShape.config.defaultLanguage, analyticsConfig: writeShape.config.analyticsConfig, announcement: writeShape.config.announcement, - playground: writeShape.config.playground, }, pages: writeShape.pages, jsFiles: writeShape.jsFiles, diff --git a/packages/fdr-sdk/src/converters/read/convertDbDocsConfigToRead.ts b/packages/fdr-sdk/src/converters/read/convertDbDocsConfigToRead.ts index 51ca7ff9f0..f943bef17b 100644 --- a/packages/fdr-sdk/src/converters/read/convertDbDocsConfigToRead.ts +++ b/packages/fdr-sdk/src/converters/read/convertDbDocsConfigToRead.ts @@ -26,7 +26,6 @@ export function convertDbDocsConfigToRead({ dbShape }: { dbShape: DocsV1Db.DocsD defaultLanguage: dbShape.defaultLanguage, analyticsConfig: dbShape.analyticsConfig, announcement: dbShape.announcement, - playground: dbShape.playground, }; } diff --git a/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.scss b/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.scss index 9746a112b7..788ab16d26 100644 --- a/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.scss +++ b/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.scss @@ -4,7 +4,8 @@ @apply sticky top-0 z-10 backdrop-blur; .fern-web-socket-client, - .fern-web-socket-server { + .fern-web-socket-server, + .fern-web-socket-end-sample { @apply inline-block shrink-0 rounded-full p-0.5; } @@ -16,6 +17,10 @@ @apply t-accent-aaa bg-tag-primary; } + .fern-web-socket-end-sample { + @apply t-danger bg-tag-danger; + } + .fern-web-socket-type { @apply flex-1 inline-flex justify-end; diff --git a/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx b/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx index 42ec302333..e79de8b9a2 100644 --- a/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx +++ b/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx @@ -2,13 +2,14 @@ import { APIV1Read } from "@fern-api/fdr-sdk/client/types"; import { CopyToClipboardButton } from "@fern-ui/components"; import * as Accordion from "@radix-ui/react-accordion"; import cn from "clsx"; -import { ArrowDown, ArrowUp, NavArrowDown } from "iconoir-react"; +import { ArrowDown, ArrowUp, NavArrowDown, Xmark } from "iconoir-react"; import { FC } from "react"; +import { Virtuoso } from "react-virtuoso"; import { FernSyntaxHighlighter } from "../../syntax-highlighting/FernSyntaxHighlighter"; export interface WebSocketMessage { type: string | undefined; - origin: APIV1Read.WebSocketMessageOrigin | undefined; + origin: APIV1Read.WebSocketMessageOrigin | "endSample" | undefined; displayName: string | undefined; data: unknown | undefined; // shape: APIV1Read.WebSocketMessageBodyShape; @@ -21,7 +22,10 @@ interface WebSocketMessagesProps { export const WebSocketMessages: FC = ({ messages }) => { return ( - + {messages.length === 0 && (
@@ -30,71 +34,83 @@ export const WebSocketMessages: FC = ({ messages }) => {
)} - {messages.map((message, index) => { - return ( - - - {message.origin === APIV1Read.WebSocketMessageOrigin.Client ? ( - - - - ) : message.origin === APIV1Read.WebSocketMessageOrigin.Server ? ( - - - - ) : null} - {JSON.stringify(message.data)} - {message.displayName != null || message.type != null ? ( - - {message.displayName ?? message.type} - - ) : null} + { + return ( + + + {message.origin === APIV1Read.WebSocketMessageOrigin.Client ? ( + + + + ) : message.origin === APIV1Read.WebSocketMessageOrigin.Server ? ( + + + + ) : message.origin === "endSample" ? ( + + + + ) : null} + {JSON.stringify(message.data)} + {message.displayName != null || message.type != null ? ( + + + {message.displayName ?? message.type} + + + ) : null} - JSON.stringify(message.data, null, 2)} - onClick={(e) => e.stopPropagation()} - /> + JSON.stringify(message.data, null, 2)} + onClick={(e) => e.stopPropagation()} + /> - - - -
- -
-
-
- - ); - })} + + +
+ +
+
+
+ + ); + }} + followOutput={"smooth"} + /> ); }; diff --git a/packages/ui/app/src/playground/PlaygroundWebSocket.tsx b/packages/ui/app/src/playground/PlaygroundWebSocket.tsx index 6557caebb4..ece10e22a0 100644 --- a/packages/ui/app/src/playground/PlaygroundWebSocket.tsx +++ b/packages/ui/app/src/playground/PlaygroundWebSocket.tsx @@ -21,25 +21,41 @@ interface PlaygroundWebSocketProps { export const PlaygroundWebSocket: FC = ({ context }): ReactElement => { const [formState, setFormState] = usePlaygroundWebsocketFormState(context); + const websocketMessageLimit = usePlaygroundSettings(context.node.id)?.["limit-websocket-messages-per-connection"]; const [connectedState, setConnectedState] = useState<"opening" | "opened" | "closed">("closed"); - const { messages, pushMessage, clearMessages } = useWebsocketMessages(context.channel.id); + const { pushMessage, clearMessages } = useWebsocketMessages(context.node.id); const [error, setError] = useState(null); + const [activeSessionMessageCount, setActiveSessionMessageCount] = useState(0); const socket = useRef(null); // close the socket when the websocket changes - const prevWebsocket = usePrevious(context.channel); + const prevWebsocket = usePrevious(context.node); useEffect(() => { - if (prevWebsocket.id !== context.channel.id) { + if (prevWebsocket.id !== context.node.id) { socket.current?.close(); setError(null); } - }, [context.channel.id, prevWebsocket.id]); + }, [context.node.id, prevWebsocket.id]); // auto-destroy the socket when the component is unmounted useEffect(() => () => socket.current?.close(), []); + // when we get to 20 messages, close the socket + useEffect(() => { + if (websocketMessageLimit && activeSessionMessageCount >= websocketMessageLimit) { + socket.current?.close(); + setConnectedState("closed"); + pushMessage({ + type: "end", + data: "END OF SAMPLE SESSION", + origin: "endSample", + displayName: undefined, + }); + } + }, [activeSessionMessageCount, pushMessage, websocketMessageLimit]); + const settings = usePlaygroundSettings(); const [baseUrl, environmentId] = usePlaygroundBaseUrl(context.channel); @@ -80,13 +96,17 @@ export const PlaygroundWebSocket: FC = ({ context }): if (data.type === "handshake" && data.status === "connected") { setConnectedState("opened"); resolve(true); - } else if (data.type === "data") { + } else if ( + data.type === "data" && + (!websocketMessageLimit || activeSessionMessageCount < websocketMessageLimit) + ) { pushMessage({ type: "received", data: typeof data.data === "string" ? JSON.parse(data.data) : data.data, origin: "server", displayName: undefined, }); + setActiveSessionMessageCount((m) => m + 1); } }; @@ -97,6 +117,7 @@ export const PlaygroundWebSocket: FC = ({ context }): if (ev.code !== 1000) { setError(ev.reason); } + setActiveSessionMessageCount(0); }; socket.current.onerror = (event) => { @@ -112,6 +133,7 @@ export const PlaygroundWebSocket: FC = ({ context }): formState.queryParameters, formState.headers, pushMessage, + activeSessionMessageCount, ]); const handleSendMessage = useCallback( @@ -180,7 +202,6 @@ export const PlaygroundWebSocket: FC = ({ context }): context={context} formState={formState} setFormState={setFormState} - messages={messages} sendMessage={handleSendMessage} startSesssion={startSession} clearMessages={clearMessages} diff --git a/packages/ui/app/src/playground/PlaygroundWebSocketContent.tsx b/packages/ui/app/src/playground/PlaygroundWebSocketContent.tsx index 459239546c..ea0de8014e 100644 --- a/packages/ui/app/src/playground/PlaygroundWebSocketContent.tsx +++ b/packages/ui/app/src/playground/PlaygroundWebSocketContent.tsx @@ -1,7 +1,6 @@ import type * as ApiDefinition from "@fern-api/fdr-sdk/api-definition"; import type { WebSocketContext } from "@fern-api/fdr-sdk/api-definition"; import { Dispatch, FC, SetStateAction, useEffect, useRef, useState } from "react"; -import { WebSocketMessage } from "../api-reference/web-socket/WebSocketMessages"; import { PlaygroundWebSocketSessionForm } from "./PlaygroundWebSocketSessionForm"; import { PlaygroundWebSocketRequestFormState } from "./types"; @@ -9,7 +8,6 @@ interface PlaygroundWebSocketContentProps { context: WebSocketContext; formState: PlaygroundWebSocketRequestFormState; setFormState: Dispatch>; - messages: WebSocketMessage[]; startSesssion: () => void; clearMessages: () => void; sendMessage: (message: ApiDefinition.WebSocketMessage, data: unknown) => void; @@ -21,7 +19,6 @@ export const PlaygroundWebSocketContent: FC = ( context, formState, setFormState, - messages, sendMessage, startSesssion, clearMessages, @@ -56,7 +53,6 @@ export const PlaygroundWebSocketContent: FC = ( context={context} formState={formState} scrollAreaHeight={scrollAreaHeight} - messages={messages} setFormState={setFormState} sendMessage={sendMessage} startSession={startSesssion} diff --git a/packages/ui/app/src/playground/PlaygroundWebSocketSessionForm.tsx b/packages/ui/app/src/playground/PlaygroundWebSocketSessionForm.tsx index af20890cec..3ee9993a65 100644 --- a/packages/ui/app/src/playground/PlaygroundWebSocketSessionForm.tsx +++ b/packages/ui/app/src/playground/PlaygroundWebSocketSessionForm.tsx @@ -4,10 +4,11 @@ import titleCase from "@fern-api/ui-core-utils/titleCase"; import { FernButton, FernCard, FernScrollArea } from "@fern-ui/components"; import cn from "clsx"; import { Dispatch, FC, SetStateAction, useCallback } from "react"; -import { WebSocketMessage, WebSocketMessages } from "../api-reference/web-socket/WebSocketMessages"; +import { WebSocketMessages } from "../api-reference/web-socket/WebSocketMessages"; import { PlaygroundWebSocketHandshakeForm } from "./PlaygroundWebSocketHandshakeForm"; import { HorizontalSplitPane } from "./VerticalSplitPane"; import { PlaygroundTypeReferenceForm } from "./form/PlaygroundTypeReferenceForm"; +import { useWebsocketMessages } from "./hooks/useWebsocketMessages"; import { PlaygroundWebSocketRequestFormState } from "./types"; interface PlaygroundWebSocketSessionFormProps { @@ -17,7 +18,6 @@ interface PlaygroundWebSocketSessionFormProps { // response: Loadable; // sendRequest: () => void; scrollAreaHeight: number; - messages: WebSocketMessage[]; sendMessage: (message: ApiDefinition.WebSocketMessage, data: unknown) => void; clearMessages: () => void; startSession: () => void; @@ -30,12 +30,13 @@ export const PlaygroundWebSocketSessionForm: FC { + const { messages } = useWebsocketMessages(context.node.id); + const setMessage = useCallback( (message: ApiDefinition.WebSocketMessage, data: unknown) => { setFormState((old) => ({ @@ -130,8 +131,7 @@ export const PlaygroundWebSocketSessionForm: FC
- {/* TODO(rohin): Implement Pagination here */} - +
diff --git a/servers/fdr/src/__test__/local/services/docs.test.ts b/servers/fdr/src/__test__/local/services/docs.test.ts index 33dc2663ea..b0ba04a391 100644 --- a/servers/fdr/src/__test__/local/services/docs.test.ts +++ b/servers/fdr/src/__test__/local/services/docs.test.ts @@ -37,7 +37,6 @@ export const WRITE_DOCS_REGISTER_DEFINITION: DocsV1Write.DocsDefinition = { integrations: undefined, css: undefined, js: undefined, - playground: undefined, backgroundImage: undefined, logoV2: undefined, logo: undefined, diff --git a/servers/fdr/src/__test__/local/services/docsCache.test.ts b/servers/fdr/src/__test__/local/services/docsCache.test.ts index c82b8e2876..571f623e6d 100644 --- a/servers/fdr/src/__test__/local/services/docsCache.test.ts +++ b/servers/fdr/src/__test__/local/services/docsCache.test.ts @@ -27,7 +27,6 @@ export const WRITE_DOCS_REGISTER_DEFINITION: DocsV1Write.DocsDefinition = { integrations: undefined, css: undefined, js: undefined, - playground: undefined, backgroundImage: undefined, logoV2: undefined, logo: undefined, diff --git a/servers/fdr/src/__test__/local/services/snippets.test.ts b/servers/fdr/src/__test__/local/services/snippets.test.ts index 833966430e..7a4c6af525 100644 --- a/servers/fdr/src/__test__/local/services/snippets.test.ts +++ b/servers/fdr/src/__test__/local/services/snippets.test.ts @@ -143,7 +143,6 @@ it("get snippets", async () => { integrations: undefined, css: undefined, js: undefined, - playground: undefined, backgroundImage: undefined, logoV2: undefined, logo: undefined, @@ -306,7 +305,6 @@ it("get Go snippets", async () => { integrations: undefined, css: undefined, js: undefined, - playground: undefined, backgroundImage: undefined, logoV2: undefined, logo: undefined, @@ -466,7 +464,6 @@ it("get Ruby snippets", async () => { integrations: undefined, css: undefined, js: undefined, - playground: undefined, backgroundImage: undefined, logoV2: undefined, logo: undefined, diff --git a/servers/fdr/src/__test__/local/services/snippetsByEndpointId.test.ts b/servers/fdr/src/__test__/local/services/snippetsByEndpointId.test.ts index 86dfb81e97..f26d046bc3 100644 --- a/servers/fdr/src/__test__/local/services/snippetsByEndpointId.test.ts +++ b/servers/fdr/src/__test__/local/services/snippetsByEndpointId.test.ts @@ -129,7 +129,6 @@ it("Load snippets by endpoint id", async () => { integrations: undefined, css: undefined, js: undefined, - playground: undefined, backgroundImage: undefined, logoV2: undefined, logo: undefined, diff --git a/servers/fdr/src/__test__/unit-tests/generate-algolia-search-records/testGenerateAlgoliaSearchRecordsForDocs.test.ts b/servers/fdr/src/__test__/unit-tests/generate-algolia-search-records/testGenerateAlgoliaSearchRecordsForDocs.test.ts index fbbdcd8195..4fe0ca55f8 100644 --- a/servers/fdr/src/__test__/unit-tests/generate-algolia-search-records/testGenerateAlgoliaSearchRecordsForDocs.test.ts +++ b/servers/fdr/src/__test__/unit-tests/generate-algolia-search-records/testGenerateAlgoliaSearchRecordsForDocs.test.ts @@ -173,7 +173,6 @@ describe("generateIndexSegmentsForDefinition", () => { integrations: undefined, css: undefined, js: undefined, - playground: undefined, logo: undefined, logoV2: undefined, colors: undefined, diff --git a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.d.ts b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.d.ts deleted file mode 100644 index 196c98fb48..0000000000 --- a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ -export interface PlaygroundConfig { - oauth: boolean | undefined; -} diff --git a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.js b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.js deleted file mode 100644 index 0b46289f5b..0000000000 --- a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/PlaygroundConfig.js +++ /dev/null @@ -1,4 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ -export {}; diff --git a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.d.ts b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.d.ts index fe0eea23a7..2d510b2e0e 100644 --- a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.d.ts +++ b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.d.ts @@ -45,7 +45,6 @@ export * from "./CustomFontConfig"; export * from "./CustomFontConfigVariant"; export * from "./FontStyle"; export * from "./FontDisplay"; -export * from "./PlaygroundConfig"; export * from "./ThemedFileId"; export * from "./ColorsConfig"; export * from "./ColorsConfigV2"; diff --git a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.js b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.js index fe0eea23a7..2d510b2e0e 100644 --- a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.js +++ b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/commons/resources/commons/types/index.js @@ -45,7 +45,6 @@ export * from "./CustomFontConfig"; export * from "./CustomFontConfigVariant"; export * from "./FontStyle"; export * from "./FontDisplay"; -export * from "./PlaygroundConfig"; export * from "./ThemedFileId"; export * from "./ColorsConfig"; export * from "./ColorsConfigV2"; diff --git a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/db/types/DocsDbConfig.d.ts b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/db/types/DocsDbConfig.d.ts index 723ffe07e1..59589e48ea 100644 --- a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/db/types/DocsDbConfig.d.ts +++ b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/db/types/DocsDbConfig.d.ts @@ -23,7 +23,6 @@ export interface DocsDbConfig { integrations: FernRegistry.docs.v1.commons.IntegrationsConfig | undefined; css: FernRegistry.docs.v1.commons.CssConfig | undefined; js: FernRegistry.docs.v1.commons.JsConfig | undefined; - playground: FernRegistry.docs.v1.commons.PlaygroundConfig | undefined; logo: FernRegistry.FileId | undefined; logoV2: FernRegistry.docs.v1.commons.ThemedFileId | undefined; colors: FernRegistry.docs.v1.commons.ColorsConfig | undefined; diff --git a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/read/types/DocsConfig.d.ts b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/read/types/DocsConfig.d.ts index d6d283b373..19f2c6d9f5 100644 --- a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/read/types/DocsConfig.d.ts +++ b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/read/types/DocsConfig.d.ts @@ -22,5 +22,4 @@ export interface DocsConfig { integrations: FernRegistry.docs.v1.commons.IntegrationsConfig | undefined; css: FernRegistry.docs.v1.commons.CssConfig | undefined; js: FernRegistry.docs.v1.commons.JsConfig | undefined; - playground: FernRegistry.docs.v1.commons.PlaygroundConfig | undefined; } diff --git a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/write/types/DocsConfig.d.ts b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/write/types/DocsConfig.d.ts index 05f0136c5a..2c9f10b49f 100644 --- a/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/write/types/DocsConfig.d.ts +++ b/servers/fdr/src/api/generated/api/resources/docs/resources/v1/resources/write/types/DocsConfig.d.ts @@ -22,7 +22,6 @@ export interface DocsConfig { integrations: FernRegistry.docs.v1.commons.IntegrationsConfig | undefined; css: FernRegistry.docs.v1.commons.CssConfig | undefined; js: FernRegistry.docs.v1.commons.JsConfig | undefined; - playground: FernRegistry.docs.v1.commons.PlaygroundConfig | undefined; backgroundImage: FernRegistry.FileId | undefined; logoV2: FernRegistry.docs.v1.commons.ThemedFileId | undefined; logo: FernRegistry.FileId | undefined; diff --git a/servers/fdr/src/api/generated/api/resources/navigation/resources/latest/types/PlaygroundSettings.d.ts b/servers/fdr/src/api/generated/api/resources/navigation/resources/latest/types/PlaygroundSettings.d.ts index ab5c31361f..ecf325fa27 100644 --- a/servers/fdr/src/api/generated/api/resources/navigation/resources/latest/types/PlaygroundSettings.d.ts +++ b/servers/fdr/src/api/generated/api/resources/navigation/resources/latest/types/PlaygroundSettings.d.ts @@ -9,4 +9,5 @@ export interface PlaygroundSettings { */ environments: FernRegistry.EnvironmentId[] | undefined; button: FernRegistry.navigation.latest.PlaygroundButtonSettings | undefined; + "limit-websocket-messages-per-connection": number | undefined; } diff --git a/servers/fdr/src/api/generated/api/resources/navigation/resources/v1/types/PlaygroundSettings.d.ts b/servers/fdr/src/api/generated/api/resources/navigation/resources/v1/types/PlaygroundSettings.d.ts index 114aaec52c..e4a5e9fae7 100644 --- a/servers/fdr/src/api/generated/api/resources/navigation/resources/v1/types/PlaygroundSettings.d.ts +++ b/servers/fdr/src/api/generated/api/resources/navigation/resources/v1/types/PlaygroundSettings.d.ts @@ -9,4 +9,5 @@ export interface PlaygroundSettings { */ environments: FernRegistry.EnvironmentId[] | undefined; button: FernRegistry.navigation.v1.PlaygroundButtonSettings | undefined; + "limit-websocket-messages-per-connection": number | undefined; } diff --git a/servers/fdr/src/healthchecks/checkRedis.ts b/servers/fdr/src/healthchecks/checkRedis.ts index 9822e6f173..03fc55937b 100644 --- a/servers/fdr/src/healthchecks/checkRedis.ts +++ b/servers/fdr/src/healthchecks/checkRedis.ts @@ -38,7 +38,6 @@ const HEALTHCHECK_DOCS_RESPONSE: CachedDocsResponse = { integrations: undefined, css: undefined, js: undefined, - playground: undefined, }, files: {}, filesV2: {}, From 0f21131a222a9fb75285a4d5b7f7564cc07029d9 Mon Sep 17 00:00:00 2001 From: Rohin Bhargava Date: Thu, 24 Oct 2024 13:25:40 -0400 Subject: [PATCH 02/11] add virtualized vs non virtualized component and add visual snapshot test --- .../api-reference/web-socket/WebSocket.tsx | 5 +- .../web-socket/WebSocketMessages.tsx | 146 ++++++++---------- .../WebSocketMessagesVirtualized.tsx | 104 +++++++++++++ .../PlaygroundWebSocketSessionForm.tsx | 4 +- playwright/websockets/fern/definition/api.yml | 7 + .../websockets/fern/definition/websocket.yml | 38 +++++ playwright/websockets/fern/docs.yml | 10 ++ playwright/websockets/fern/fern.config.json | 4 + playwright/websockets/websocket.spec.ts | 16 ++ .../websocket-test-1-chromium-darwin.png | Bin 0 -> 90291 bytes 10 files changed, 249 insertions(+), 85 deletions(-) create mode 100644 packages/ui/app/src/api-reference/web-socket/WebSocketMessagesVirtualized.tsx create mode 100644 playwright/websockets/fern/definition/api.yml create mode 100644 playwright/websockets/fern/definition/websocket.yml create mode 100644 playwright/websockets/fern/docs.yml create mode 100644 playwright/websockets/fern/fern.config.json create mode 100644 playwright/websockets/websocket.spec.ts create mode 100644 playwright/websockets/websocket.spec.ts-snapshots/websocket-test-1-chromium-darwin.png diff --git a/packages/ui/app/src/api-reference/web-socket/WebSocket.tsx b/packages/ui/app/src/api-reference/web-socket/WebSocket.tsx index 1246b884f9..2b501ba9c8 100644 --- a/packages/ui/app/src/api-reference/web-socket/WebSocket.tsx +++ b/packages/ui/app/src/api-reference/web-socket/WebSocket.tsx @@ -21,7 +21,8 @@ import { TitledExample } from "../examples/TitledExample"; import { TypeComponentSeparator } from "../types/TypeComponentSeparator"; import { TypeReferenceDefinitions } from "../types/type-reference/TypeReferenceDefinitions"; import { useApiPageCenterElement } from "../useApiPageCenterElement"; -import { WebSocketMessage, WebSocketMessages } from "./WebSocketMessages"; +import { WebSocketMessage } from "./WebSocketMessages"; +import { WebSocketMessagesVirtualized } from "./WebSocketMessagesVirtualized"; export interface WebSocketProps { node: FernNavigation.WebSocketNode; @@ -347,7 +348,7 @@ const WebhookContent: FC = ({ context, breadcrumb, last }) {exampleMessages.length > 0 && ( - + )} diff --git a/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx b/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx index e79de8b9a2..69c499992f 100644 --- a/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx +++ b/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx @@ -2,9 +2,8 @@ import { APIV1Read } from "@fern-api/fdr-sdk/client/types"; import { CopyToClipboardButton } from "@fern-ui/components"; import * as Accordion from "@radix-ui/react-accordion"; import cn from "clsx"; -import { ArrowDown, ArrowUp, NavArrowDown, Xmark } from "iconoir-react"; +import { ArrowDown, ArrowUp, NavArrowDown } from "iconoir-react"; import { FC } from "react"; -import { Virtuoso } from "react-virtuoso"; import { FernSyntaxHighlighter } from "../../syntax-highlighting/FernSyntaxHighlighter"; export interface WebSocketMessage { @@ -15,17 +14,14 @@ export interface WebSocketMessage { // shape: APIV1Read.WebSocketMessageBodyShape; } -interface WebSocketMessagesProps { +export interface WebSocketMessagesProps { messages: WebSocketMessage[]; // types: Record; } export const WebSocketMessages: FC = ({ messages }) => { return ( - + {messages.length === 0 && (
@@ -34,83 +30,71 @@ export const WebSocketMessages: FC = ({ messages }) => {
)} - { - return ( - - - {message.origin === APIV1Read.WebSocketMessageOrigin.Client ? ( - - - - ) : message.origin === APIV1Read.WebSocketMessageOrigin.Server ? ( - - - - ) : message.origin === "endSample" ? ( - - - - ) : null} - {JSON.stringify(message.data)} - {message.displayName != null || message.type != null ? ( - - - {message.displayName ?? message.type} - - - ) : null} + {messages.map((message, index) => { + return ( + + + {message.origin === APIV1Read.WebSocketMessageOrigin.Client ? ( + + + + ) : message.origin === APIV1Read.WebSocketMessageOrigin.Server ? ( + + + + ) : null} + {JSON.stringify(message.data)} + {message.displayName != null || message.type != null ? ( + + {message.displayName ?? message.type} + + ) : null} - JSON.stringify(message.data, null, 2)} - onClick={(e) => e.stopPropagation()} - /> + JSON.stringify(message.data, null, 2)} + onClick={(e) => e.stopPropagation()} + /> - - - -
- -
-
-
- - ); - }} - followOutput={"smooth"} - /> + + +
+ +
+
+
+ + ); + })} ); }; diff --git a/packages/ui/app/src/api-reference/web-socket/WebSocketMessagesVirtualized.tsx b/packages/ui/app/src/api-reference/web-socket/WebSocketMessagesVirtualized.tsx new file mode 100644 index 0000000000..906247a33c --- /dev/null +++ b/packages/ui/app/src/api-reference/web-socket/WebSocketMessagesVirtualized.tsx @@ -0,0 +1,104 @@ +import { APIV1Read } from "@fern-api/fdr-sdk/client/types"; +import { CopyToClipboardButton } from "@fern-ui/components"; +import * as Accordion from "@radix-ui/react-accordion"; +import cn from "clsx"; +import { ArrowDown, ArrowUp, NavArrowDown, Xmark } from "iconoir-react"; +import { FC } from "react"; +import { Virtuoso } from "react-virtuoso"; +import { FernSyntaxHighlighter } from "../../syntax-highlighting/FernSyntaxHighlighter"; +import { WebSocketMessagesProps } from "./WebSocketMessages"; + +export const WebSocketMessagesVirtualized: FC = ({ messages }) => { + return ( + + {messages.length === 0 && ( +
+
+ {/* */} +

No messages...

+
+
+ )} + { + return ( + + + {message.origin === APIV1Read.WebSocketMessageOrigin.Client ? ( + + + + ) : message.origin === APIV1Read.WebSocketMessageOrigin.Server ? ( + + + + ) : message.origin === "endSample" ? ( + + + + ) : null} + {JSON.stringify(message.data)} + {message.displayName != null || message.type != null ? ( + + + {message.displayName ?? message.type} + + + ) : null} + + JSON.stringify(message.data, null, 2)} + onClick={(e) => e.stopPropagation()} + /> + + + + +
+ +
+
+
+ + ); + }} + followOutput={"smooth"} + /> + + ); +}; diff --git a/packages/ui/app/src/playground/PlaygroundWebSocketSessionForm.tsx b/packages/ui/app/src/playground/PlaygroundWebSocketSessionForm.tsx index 3ee9993a65..df079fb943 100644 --- a/packages/ui/app/src/playground/PlaygroundWebSocketSessionForm.tsx +++ b/packages/ui/app/src/playground/PlaygroundWebSocketSessionForm.tsx @@ -4,7 +4,7 @@ import titleCase from "@fern-api/ui-core-utils/titleCase"; import { FernButton, FernCard, FernScrollArea } from "@fern-ui/components"; import cn from "clsx"; import { Dispatch, FC, SetStateAction, useCallback } from "react"; -import { WebSocketMessages } from "../api-reference/web-socket/WebSocketMessages"; +import { WebSocketMessagesVirtualized } from "../api-reference/web-socket/WebSocketMessagesVirtualized"; import { PlaygroundWebSocketHandshakeForm } from "./PlaygroundWebSocketHandshakeForm"; import { HorizontalSplitPane } from "./VerticalSplitPane"; import { PlaygroundTypeReferenceForm } from "./form/PlaygroundTypeReferenceForm"; @@ -131,7 +131,7 @@ export const PlaygroundWebSocketSessionForm: FC
- +
diff --git a/playwright/websockets/fern/definition/api.yml b/playwright/websockets/fern/definition/api.yml new file mode 100644 index 0000000000..93a93aa742 --- /dev/null +++ b/playwright/websockets/fern/definition/api.yml @@ -0,0 +1,7 @@ +name: api +error-discrimination: + strategy: status-code +display-name: Websocket API +environments: + Default: https://test-websocket-reference.docs.buildwithfern.com/ +default-environment: Default diff --git a/playwright/websockets/fern/definition/websocket.yml b/playwright/websockets/fern/definition/websocket.yml new file mode 100644 index 0000000000..d0d1579515 --- /dev/null +++ b/playwright/websockets/fern/definition/websocket.yml @@ -0,0 +1,38 @@ +channel: + path: /websocket + auth: false + query-parameters: + api_key: optional + messages: + subscribe: + origin: server + body: SubscribeEvent + publish: + origin: client + body: PublishEvent + examples: + - messages: + - type: publish + body: + type: publish_event + - type: subscribe + body: + # type: assistant_end + type: subscribe_event +types: + SubscribeEvent: + properties: + type: literal<"subscribe_event"> + # discriminated: false + # union: + # - root.AssistantEnd + # source: + # openapi: assistant-asyncapi.json + PublishEvent: + properties: + type: literal<"publish_event"> + # discriminated: false + # union: + # - root.AudioInput + # source: + # openapi: assistant-asyncapi.json diff --git a/playwright/websockets/fern/docs.yml b/playwright/websockets/fern/docs.yml new file mode 100644 index 0000000000..b9df44b277 --- /dev/null +++ b/playwright/websockets/fern/docs.yml @@ -0,0 +1,10 @@ +instances: + - url: test-websocket.docs.buildwithfern.com + +navigation: + - api: Websocket API + +colors: + accentPrimary: + dark: "#f0c193" + light: "#7d7f7d" diff --git a/playwright/websockets/fern/fern.config.json b/playwright/websockets/fern/fern.config.json new file mode 100644 index 0000000000..dafc642ff7 --- /dev/null +++ b/playwright/websockets/fern/fern.config.json @@ -0,0 +1,4 @@ +{ + "organization": "fern", + "version": "*" +} diff --git a/playwright/websockets/websocket.spec.ts b/playwright/websockets/websocket.spec.ts new file mode 100644 index 0000000000..569d4ae808 --- /dev/null +++ b/playwright/websockets/websocket.spec.ts @@ -0,0 +1,16 @@ +import { expect, test } from "@playwright/test"; +import execa from "execa"; +import { generatePreviewContext } from "../utils/utils"; + +const target = "https://test-websocket-reference.docs.buildwithfern.com"; + +test.beforeAll(async () => { + const result = await execa("fern", ["generate", "--docs"], { cwd: __dirname }); + expect(result.stdout).toContain(`Published docs to ${target}`); +}); + +test("websocket test", async ({ page }) => { + const preview = generatePreviewContext(target); + await page.goto(preview.previewUrl); + await expect(page).toHaveScreenshot(); +}); diff --git a/playwright/websockets/websocket.spec.ts-snapshots/websocket-test-1-chromium-darwin.png b/playwright/websockets/websocket.spec.ts-snapshots/websocket-test-1-chromium-darwin.png new file mode 100644 index 0000000000000000000000000000000000000000..432d2cd77de51e186e8107f73728d59c5a48db3c GIT binary patch literal 90291 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 H```Z?{7wtm literal 0 HcmV?d00001 From 39320ac9a26aa2b92b66a83f2e55ebc416c1f7ea Mon Sep 17 00:00:00 2001 From: Rohin Bhargava Date: Thu, 24 Oct 2024 13:38:31 -0400 Subject: [PATCH 03/11] add proper url --- playwright/websockets/fern/docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/playwright/websockets/fern/docs.yml b/playwright/websockets/fern/docs.yml index b9df44b277..7519fc1352 100644 --- a/playwright/websockets/fern/docs.yml +++ b/playwright/websockets/fern/docs.yml @@ -1,5 +1,5 @@ instances: - - url: test-websocket.docs.buildwithfern.com + - url: test-websocket-reference.docs.buildwithfern.com navigation: - api: Websocket API From e2127dcd34515195a1302598fe8d2be823181fde Mon Sep 17 00:00:00 2001 From: Rohin Bhargava Date: Thu, 24 Oct 2024 13:57:30 -0400 Subject: [PATCH 04/11] change playwright runner to macos --- .github/workflows/playwright.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/playwright.yml b/.github/workflows/playwright.yml index dcc4cbc85b..fb518cfc76 100644 --- a/.github/workflows/playwright.yml +++ b/.github/workflows/playwright.yml @@ -21,7 +21,7 @@ on: jobs: playwright: - runs-on: ubuntu-latest + runs-on: macos-latest permissions: write-all # required for the playwright-report-summary action if: inputs.deployment_url != '' steps: From baafe1796f7c47f2b089d7933297493761706c74 Mon Sep 17 00:00:00 2001 From: Rohin Bhargava Date: Thu, 24 Oct 2024 14:16:46 -0400 Subject: [PATCH 05/11] add output for playwright results --- .github/workflows/playwright.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/playwright.yml b/.github/workflows/playwright.yml index fb518cfc76..faf0ef0519 100644 --- a/.github/workflows/playwright.yml +++ b/.github/workflows/playwright.yml @@ -48,6 +48,13 @@ jobs: FERN_TOKEN: ${{ secrets.FERN_TOKEN }} DEPLOYMENT_URL: ${{ inputs.deployment_url }} + - uses: actions/upload-artifact@v4 + if: ${{ !cancelled() }} + with: + name: playwright-report + path: playwright-report/ + retention-days: 30 + - uses: daun/playwright-report-summary@v3 if: always() with: From 641d0b8cc5533fe0204edc677c3d00a2aa01c519 Mon Sep 17 00:00:00 2001 From: Rohin Bhargava Date: Thu, 24 Oct 2024 14:31:48 -0400 Subject: [PATCH 06/11] add html reporter --- .github/workflows/playwright.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/playwright.yml b/.github/workflows/playwright.yml index faf0ef0519..e715f1b355 100644 --- a/.github/workflows/playwright.yml +++ b/.github/workflows/playwright.yml @@ -42,7 +42,7 @@ jobs: run: pnpm playwright:build - name: Run Playwright tests - run: pnpm exec playwright test playwright --workers 6 --reporter json + run: pnpm exec playwright test playwright --workers 6 --reporter json,html env: PLAYWRIGHT_JSON_OUTPUT_NAME: results.json FERN_TOKEN: ${{ secrets.FERN_TOKEN }} From 5729e8b251580186ca81174935fd84af0b5ad881 Mon Sep 17 00:00:00 2001 From: Rohin Bhargava Date: Thu, 24 Oct 2024 14:55:53 -0400 Subject: [PATCH 07/11] set cookie properly --- playwright/websockets/websocket.spec.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/playwright/websockets/websocket.spec.ts b/playwright/websockets/websocket.spec.ts index 569d4ae808..5c2cc7fdb5 100644 --- a/playwright/websockets/websocket.spec.ts +++ b/playwright/websockets/websocket.spec.ts @@ -1,6 +1,6 @@ import { expect, test } from "@playwright/test"; import execa from "execa"; -import { generatePreviewContext } from "../utils/utils"; +import { addPreviewCookie, generatePreviewContext } from "../utils/utils"; const target = "https://test-websocket-reference.docs.buildwithfern.com"; @@ -9,8 +9,9 @@ test.beforeAll(async () => { expect(result.stdout).toContain(`Published docs to ${target}`); }); -test("websocket test", async ({ page }) => { +test("websocket test", async ({ page, context }) => { const preview = generatePreviewContext(target); + await addPreviewCookie(context, preview); await page.goto(preview.previewUrl); await expect(page).toHaveScreenshot(); }); From 04a1b336b58ec86d249ff608e8578291f9926073 Mon Sep 17 00:00:00 2001 From: Rohin Bhargava Date: Thu, 24 Oct 2024 16:33:44 -0400 Subject: [PATCH 08/11] add better screenshot --- .../websocket-test-1-chromium-darwin.png | Bin 90291 -> 92825 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/playwright/websockets/websocket.spec.ts-snapshots/websocket-test-1-chromium-darwin.png b/playwright/websockets/websocket.spec.ts-snapshots/websocket-test-1-chromium-darwin.png index 432d2cd77de51e186e8107f73728d59c5a48db3c..382ceca19651d52e6949d5a6429c7f7a66ffa6e5 100644 GIT binary patch literal 92825 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%0A3C5}y!w7`^!nra}i5~XO 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 H```Z?{7wtm From 7c974a9b35555a8557be97bfbeab586ca37a53cb Mon Sep 17 00:00:00 2001 From: Rohin Bhargava Date: Thu, 24 Oct 2024 16:51:24 -0400 Subject: [PATCH 09/11] websocket not virtualized --- packages/ui/app/src/api-reference/web-socket/WebSocket.tsx | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/ui/app/src/api-reference/web-socket/WebSocket.tsx b/packages/ui/app/src/api-reference/web-socket/WebSocket.tsx index 2b501ba9c8..1246b884f9 100644 --- a/packages/ui/app/src/api-reference/web-socket/WebSocket.tsx +++ b/packages/ui/app/src/api-reference/web-socket/WebSocket.tsx @@ -21,8 +21,7 @@ import { TitledExample } from "../examples/TitledExample"; import { TypeComponentSeparator } from "../types/TypeComponentSeparator"; import { TypeReferenceDefinitions } from "../types/type-reference/TypeReferenceDefinitions"; import { useApiPageCenterElement } from "../useApiPageCenterElement"; -import { WebSocketMessage } from "./WebSocketMessages"; -import { WebSocketMessagesVirtualized } from "./WebSocketMessagesVirtualized"; +import { WebSocketMessage, WebSocketMessages } from "./WebSocketMessages"; export interface WebSocketProps { node: FernNavigation.WebSocketNode; @@ -348,7 +347,7 @@ const WebhookContent: FC = ({ context, breadcrumb, last }) {exampleMessages.length > 0 && ( - + )} From 4413f1722d46100c0a185bd09f9f353550b0b23a Mon Sep 17 00:00:00 2001 From: Rohin Bhargava Date: Thu, 24 Oct 2024 18:19:15 -0400 Subject: [PATCH 10/11] increase tolerance on pixels a small amount --- playwright/websockets/websocket.spec.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/playwright/websockets/websocket.spec.ts b/playwright/websockets/websocket.spec.ts index 5c2cc7fdb5..430da59f61 100644 --- a/playwright/websockets/websocket.spec.ts +++ b/playwright/websockets/websocket.spec.ts @@ -13,5 +13,7 @@ test("websocket test", async ({ page, context }) => { const preview = generatePreviewContext(target); await addPreviewCookie(context, preview); await page.goto(preview.previewUrl); - await expect(page).toHaveScreenshot(); + await expect(page).toHaveScreenshot({ + maxDiffPixels: 50, + }); }); From 92752a8ea95e658f692ad2a530c0e26aacbab0f3 Mon Sep 17 00:00:00 2001 From: Rohin Bhargava Date: Fri, 25 Oct 2024 16:14:33 -0400 Subject: [PATCH 11/11] consolidate logic --- .../WebSocketMessageAccordionItem.tsx | 79 ++++++++++++++ .../web-socket/WebSocketMessages.tsx | 94 +++++----------- .../WebSocketMessagesVirtualized.tsx | 102 +----------------- 3 files changed, 107 insertions(+), 168 deletions(-) create mode 100644 packages/ui/app/src/api-reference/web-socket/WebSocketMessageAccordionItem.tsx diff --git a/packages/ui/app/src/api-reference/web-socket/WebSocketMessageAccordionItem.tsx b/packages/ui/app/src/api-reference/web-socket/WebSocketMessageAccordionItem.tsx new file mode 100644 index 0000000000..b87f227655 --- /dev/null +++ b/packages/ui/app/src/api-reference/web-socket/WebSocketMessageAccordionItem.tsx @@ -0,0 +1,79 @@ +import { APIV1Read } from "@fern-api/fdr-sdk/client/types"; +import { CopyToClipboardButton } from "@fern-ui/components"; +import * as Accordion from "@radix-ui/react-accordion"; +import cn from "clsx"; +import { ArrowDown, ArrowUp, NavArrowDown } from "iconoir-react"; +import { FC } from "react"; +import { FernSyntaxHighlighter } from "../../syntax-highlighting/FernSyntaxHighlighter"; +import { WebSocketMessage } from "./WebSocketMessages"; + +export interface WebSocketMessageAccordionItemProps { + message: WebSocketMessage; + index: number; + messagesLength: number; +} + +export const WebsocketMessageAccordionItem: FC = ({ + message, + index, + messagesLength, +}) => { + return ( + + + {message.origin === APIV1Read.WebSocketMessageOrigin.Client ? ( + + + + ) : message.origin === APIV1Read.WebSocketMessageOrigin.Server ? ( + + + + ) : null} + {JSON.stringify(message.data)} + {message.displayName != null || message.type != null ? ( + + {message.displayName ?? message.type} + + ) : null} + + JSON.stringify(message.data, null, 2)} + onClick={(e) => e.stopPropagation()} + /> + + + + +

+ +
+ +
+ + ); +}; diff --git a/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx b/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx index 69c499992f..d04e912fad 100644 --- a/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx +++ b/packages/ui/app/src/api-reference/web-socket/WebSocketMessages.tsx @@ -1,10 +1,8 @@ import { APIV1Read } from "@fern-api/fdr-sdk/client/types"; -import { CopyToClipboardButton } from "@fern-ui/components"; import * as Accordion from "@radix-ui/react-accordion"; -import cn from "clsx"; -import { ArrowDown, ArrowUp, NavArrowDown } from "iconoir-react"; import { FC } from "react"; -import { FernSyntaxHighlighter } from "../../syntax-highlighting/FernSyntaxHighlighter"; +import { Virtuoso } from "react-virtuoso"; +import { WebsocketMessageAccordionItem } from "./WebSocketMessageAccordionItem"; export interface WebSocketMessage { type: string | undefined; @@ -16,10 +14,11 @@ export interface WebSocketMessage { export interface WebSocketMessagesProps { messages: WebSocketMessage[]; + virtualized?: boolean; // types: Record; } -export const WebSocketMessages: FC = ({ messages }) => { +export const WebSocketMessages: FC = ({ messages, virtualized }) => { return ( {messages.length === 0 && ( @@ -30,71 +29,30 @@ export const WebSocketMessages: FC = ({ messages }) => {
)} - {messages.map((message, index) => { - return ( - - - {message.origin === APIV1Read.WebSocketMessageOrigin.Client ? ( - - - - ) : message.origin === APIV1Read.WebSocketMessageOrigin.Server ? ( - - - - ) : null} - {JSON.stringify(message.data)} - {message.displayName != null || message.type != null ? ( - - {message.displayName ?? message.type} - - ) : null} - JSON.stringify(message.data, null, 2)} - onClick={(e) => e.stopPropagation()} - /> - - - - -
- -
-
-
( + - - ); - })} + )} + followOutput={"smooth"} + /> + ) : ( + messages.map((message, index) => ( + + )) + )} ); }; diff --git a/packages/ui/app/src/api-reference/web-socket/WebSocketMessagesVirtualized.tsx b/packages/ui/app/src/api-reference/web-socket/WebSocketMessagesVirtualized.tsx index 906247a33c..834b8548c7 100644 --- a/packages/ui/app/src/api-reference/web-socket/WebSocketMessagesVirtualized.tsx +++ b/packages/ui/app/src/api-reference/web-socket/WebSocketMessagesVirtualized.tsx @@ -1,104 +1,6 @@ -import { APIV1Read } from "@fern-api/fdr-sdk/client/types"; -import { CopyToClipboardButton } from "@fern-ui/components"; -import * as Accordion from "@radix-ui/react-accordion"; -import cn from "clsx"; -import { ArrowDown, ArrowUp, NavArrowDown, Xmark } from "iconoir-react"; import { FC } from "react"; -import { Virtuoso } from "react-virtuoso"; -import { FernSyntaxHighlighter } from "../../syntax-highlighting/FernSyntaxHighlighter"; -import { WebSocketMessagesProps } from "./WebSocketMessages"; +import { WebSocketMessages, WebSocketMessagesProps } from "./WebSocketMessages"; export const WebSocketMessagesVirtualized: FC = ({ messages }) => { - return ( - - {messages.length === 0 && ( -
-
- {/* */} -

No messages...

-
-
- )} - { - return ( - - - {message.origin === APIV1Read.WebSocketMessageOrigin.Client ? ( - - - - ) : message.origin === APIV1Read.WebSocketMessageOrigin.Server ? ( - - - - ) : message.origin === "endSample" ? ( - - - - ) : null} - {JSON.stringify(message.data)} - {message.displayName != null || message.type != null ? ( - - - {message.displayName ?? message.type} - - - ) : null} - - JSON.stringify(message.data, null, 2)} - onClick={(e) => e.stopPropagation()} - /> - - - - -
- -
-
-
- - ); - }} - followOutput={"smooth"} - /> - - ); + return ; };