zudoku 0.63.1 → 0.64.1
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/client.d.ts +8 -0
- package/dist/config/config.d.ts +3 -1
- package/dist/config/validators/BuildSchema.d.ts +5 -4
- package/dist/config/validators/BuildSchema.js +5 -2
- package/dist/config/validators/BuildSchema.js.map +1 -1
- package/dist/config/validators/InputNavigationSchema.d.ts +20 -20
- package/dist/config/validators/validate.d.ts +10 -12
- package/dist/config/validators/validate.js +8 -8
- package/dist/config/validators/validate.js.map +1 -1
- package/dist/flat-config.d.ts +6 -1
- package/dist/lib/authentication/authentication.d.ts +14 -9
- package/dist/lib/authentication/components/OAuthErrorPage.js +1 -1
- package/dist/lib/authentication/components/OAuthErrorPage.js.map +1 -1
- package/dist/lib/authentication/components/SignIn.js +6 -5
- package/dist/lib/authentication/components/SignIn.js.map +1 -1
- package/dist/lib/authentication/components/SignOut.js +6 -6
- package/dist/lib/authentication/components/SignOut.js.map +1 -1
- package/dist/lib/authentication/components/SignUp.js +5 -5
- package/dist/lib/authentication/components/SignUp.js.map +1 -1
- package/dist/lib/authentication/hook.d.ts +3 -2
- package/dist/lib/authentication/hook.js +12 -8
- package/dist/lib/authentication/hook.js.map +1 -1
- package/dist/lib/authentication/providers/auth0.js +1 -1
- package/dist/lib/authentication/providers/auth0.js.map +1 -1
- package/dist/lib/authentication/providers/azureb2c.d.ts +4 -4
- package/dist/lib/authentication/providers/azureb2c.js +3 -3
- package/dist/lib/authentication/providers/azureb2c.js.map +1 -1
- package/dist/lib/authentication/providers/clerk.js +2 -2
- package/dist/lib/authentication/providers/clerk.js.map +1 -1
- package/dist/lib/authentication/providers/openid.d.ts +7 -7
- package/dist/lib/authentication/providers/openid.js +5 -3
- package/dist/lib/authentication/providers/openid.js.map +1 -1
- package/dist/lib/authentication/providers/supabase/SupabaseAuthUI.d.ts +8 -0
- package/dist/lib/authentication/providers/supabase/SupabaseAuthUI.js +39 -0
- package/dist/lib/authentication/providers/supabase/SupabaseAuthUI.js.map +1 -0
- package/dist/lib/authentication/providers/supabase.js +35 -31
- package/dist/lib/authentication/providers/supabase.js.map +1 -1
- package/dist/lib/authentication/state.d.ts +1 -5
- package/dist/lib/authentication/state.js +2 -14
- package/dist/lib/authentication/state.js.map +1 -1
- package/dist/lib/components/Zudoku.js +3 -3
- package/dist/lib/components/index.d.ts +2 -2
- package/dist/lib/components/navigation/Toc.js +1 -1
- package/dist/lib/components/navigation/Toc.js.map +1 -1
- package/dist/lib/core/RouteGuard.d.ts +1 -1
- package/dist/lib/core/RouteGuard.js +6 -14
- package/dist/lib/core/RouteGuard.js.map +1 -1
- package/dist/lib/core/__internal.d.ts +1 -1
- package/dist/lib/hooks/index.d.ts +2 -2
- package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js +1 -1
- package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/Playground.js +12 -2
- package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/RequestLoginDialog.d.ts +2 -1
- package/dist/lib/plugins/openapi/playground/RequestLoginDialog.js +10 -2
- package/dist/lib/plugins/openapi/playground/RequestLoginDialog.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/result-panel/Highlight.d.ts +1 -1
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.js +1 -1
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +23 -21
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js +1 -1
- package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/useRememberSkipLoginDialog.js +2 -0
- package/dist/lib/plugins/openapi/playground/useRememberSkipLoginDialog.js.map +1 -1
- package/dist/lib/plugins/openapi/util/generateSchemaExample.js +7 -0
- package/dist/lib/plugins/openapi/util/generateSchemaExample.js.map +1 -1
- package/dist/lib/shiki.d.ts +1 -1
- package/dist/lib/shiki.js +13 -2
- package/dist/lib/shiki.js.map +1 -1
- package/dist/lib/ui/Callout.d.ts +5 -5
- package/dist/lib/ui/Callout.js +5 -5
- package/dist/lib/ui/Callout.js.map +1 -1
- package/dist/lib/ui/EmbeddedCodeBlock.d.ts +3 -1
- package/dist/lib/ui/EmbeddedCodeBlock.js +2 -2
- package/dist/lib/ui/EmbeddedCodeBlock.js.map +1 -1
- package/dist/lib/ui/ReactComponentDoc.d.ts +1 -1
- package/dist/lib/ui/ReactComponentDoc.js +2 -2
- package/dist/lib/ui/ReactComponentDoc.js.map +1 -1
- package/dist/lib/ui/SyntaxHighlight.d.ts +1 -0
- package/dist/lib/ui/SyntaxHighlight.js.map +1 -1
- package/dist/lib/util/MdxComponents.d.ts +2 -1
- package/dist/lib/util/MdxComponents.js +3 -2
- package/dist/lib/util/MdxComponents.js.map +1 -1
- package/dist/lib/util/syncZustandState.d.ts +5 -0
- package/dist/lib/util/syncZustandState.js +14 -0
- package/dist/lib/util/syncZustandState.js.map +1 -0
- package/dist/vite/api/SchemaManager.d.ts +3 -1
- package/dist/vite/api/SchemaManager.js +22 -3
- package/dist/vite/api/SchemaManager.js.map +1 -1
- package/dist/vite/api/SchemaManager.test.js +2 -2
- package/dist/vite/api/SchemaManager.test.js.map +1 -1
- package/dist/vite/plugin-api.js +14 -5
- package/dist/vite/plugin-api.js.map +1 -1
- package/dist/vite/plugin-mdx.js +36 -30
- package/dist/vite/plugin-mdx.js.map +1 -1
- package/lib/{ErrorAlert-VBJ8aHH7.js → ErrorAlert-DE3Sf66a.js} +1711 -1772
- package/lib/ErrorAlert-DE3Sf66a.js.map +1 -0
- package/lib/{MdxPage-1xaNI6q_.js → MdxPage-DZfeC0QY.js} +8 -8
- package/lib/{MdxPage-1xaNI6q_.js.map → MdxPage-DZfeC0QY.js.map} +1 -1
- package/lib/{OAuthErrorPage-Du_4sFER.js → OAuthErrorPage-BycMozgn.js} +8 -8
- package/lib/{OAuthErrorPage-Du_4sFER.js.map → OAuthErrorPage-BycMozgn.js.map} +1 -1
- package/lib/{OasProvider-0xiB5cKH.js → OasProvider-1XEOsIiW.js} +3 -3
- package/lib/{OasProvider-0xiB5cKH.js.map → OasProvider-1XEOsIiW.js.map} +1 -1
- package/lib/{OperationList-BzWKTkNq.js → OperationList-DCJw6wXL.js} +113 -109
- package/lib/OperationList-DCJw6wXL.js.map +1 -0
- package/lib/{Pagination-DOcPyfy_.js → Pagination-CJszmeSA.js} +3 -3
- package/lib/{Pagination-DOcPyfy_.js.map → Pagination-CJszmeSA.js.map} +1 -1
- package/lib/RouteGuard-DhU3LRr1.js +81 -0
- package/lib/RouteGuard-DhU3LRr1.js.map +1 -0
- package/lib/{RouterError-fm21cqlj.js → RouterError-VDLnrFqF.js} +5 -5
- package/lib/{RouterError-fm21cqlj.js.map → RouterError-VDLnrFqF.js.map} +1 -1
- package/lib/{SchemaList-Dea2Skqv.js → SchemaList-qOHkDzSz.js} +7 -7
- package/lib/{SchemaList-Dea2Skqv.js.map → SchemaList-qOHkDzSz.js.map} +1 -1
- package/lib/{SchemaView-H9glU5P7.js → SchemaView-D3hm65cc.js} +3 -3
- package/lib/{SchemaView-H9glU5P7.js.map → SchemaView-D3hm65cc.js.map} +1 -1
- package/lib/{Select-CPoGZU_V.js → Select-C1DeCqKv.js} +3 -3
- package/lib/{Select-CPoGZU_V.js.map → Select-C1DeCqKv.js.map} +1 -1
- package/lib/SignUp-6SGx9Yyq.js +50 -0
- package/lib/SignUp-6SGx9Yyq.js.map +1 -0
- package/lib/{SyntaxHighlight-B0laqAqK.js → SyntaxHighlight-zvlnSnHB.js} +789 -778
- package/lib/{SyntaxHighlight-B0laqAqK.js.map → SyntaxHighlight-zvlnSnHB.js.map} +1 -1
- package/lib/{Toc-KzXCRqrX.js → Toc-Da9yp7lo.js} +5 -5
- package/lib/Toc-Da9yp7lo.js.map +1 -0
- package/lib/{ZudokuContext-BXTZApgy.js → ZudokuContext-BUZ5hkWB.js} +33 -31
- package/lib/ZudokuContext-BUZ5hkWB.js.map +1 -0
- package/lib/{chunk-PVWAREVJ-BO6B-RAk.js → chunk-PVWAREVJ-BMhpCH5D.js} +7 -7
- package/lib/{chunk-PVWAREVJ-BO6B-RAk.js.map → chunk-PVWAREVJ-BMhpCH5D.js.map} +1 -1
- package/lib/{circular-OGtD_zFg.js → circular-CSSuz-LS.js} +2 -2
- package/lib/{circular-OGtD_zFg.js.map → circular-CSSuz-LS.js.map} +1 -1
- package/lib/{createServer-DyUc5BPr.js → createServer-CLbcVLbK.js} +4 -4
- package/lib/{createServer-DyUc5BPr.js.map → createServer-CLbcVLbK.js.map} +1 -1
- package/lib/{errors-7_i0Oyw4.js → errors-CuGgh3hf.js} +2 -2
- package/lib/{errors-7_i0Oyw4.js.map → errors-CuGgh3hf.js.map} +1 -1
- package/lib/hook-CMeoxziF.js +40 -0
- package/lib/hook-CMeoxziF.js.map +1 -0
- package/lib/{index-CLJGtw_S.js → index-B1rmok4X.js} +7 -7
- package/lib/{index-CLJGtw_S.js.map → index-B1rmok4X.js.map} +1 -1
- package/lib/{index-PdgTSEkk.js → index-RNAxx6IF.js} +853 -793
- package/lib/index-RNAxx6IF.js.map +1 -0
- package/lib/{index-C5L4favO.js → index-rYHsvtTo.js} +2 -2
- package/lib/{index-C5L4favO.js.map → index-rYHsvtTo.js.map} +1 -1
- package/lib/{mutation-CdGPxHNX.js → mutation-BSU0xu4m.js} +2 -2
- package/lib/{mutation-CdGPxHNX.js.map → mutation-BSU0xu4m.js.map} +1 -1
- package/lib/ui/Callout.js +18 -18
- package/lib/ui/Callout.js.map +1 -1
- package/lib/ui/CodeBlock.js +217 -7
- package/lib/ui/CodeBlock.js.map +1 -1
- package/lib/ui/EmbeddedCodeBlock.js +22 -19
- package/lib/ui/EmbeddedCodeBlock.js.map +1 -1
- package/lib/ui/ReactComponentDoc.js +13 -13
- package/lib/ui/ReactComponentDoc.js.map +1 -1
- package/lib/ui/SyntaxHighlight.js +3 -3
- package/lib/{useExposedProps-Cd7Yg_uG.js → useExposedProps-U3pmsHaG.js} +2 -2
- package/lib/{useExposedProps-Cd7Yg_uG.js.map → useExposedProps-U3pmsHaG.js.map} +1 -1
- package/lib/zudoku.__internal.js +7 -7
- package/lib/zudoku.auth-auth0.js +13 -13
- package/lib/zudoku.auth-auth0.js.map +1 -1
- package/lib/zudoku.auth-azureb2c.js +28 -28
- package/lib/zudoku.auth-azureb2c.js.map +1 -1
- package/lib/zudoku.auth-clerk.js +40 -40
- package/lib/zudoku.auth-clerk.js.map +1 -1
- package/lib/zudoku.auth-openid.js +53 -56
- package/lib/zudoku.auth-openid.js.map +1 -1
- package/lib/zudoku.auth-supabase.js +111 -52
- package/lib/zudoku.auth-supabase.js.map +1 -1
- package/lib/zudoku.components.js +6 -6
- package/lib/zudoku.hooks.js +4 -4
- package/lib/zudoku.plugin-api-catalog.js +5 -5
- package/lib/zudoku.plugin-api-keys.js +99 -99
- package/lib/zudoku.plugin-custom-pages.js +1 -1
- package/lib/zudoku.plugin-markdown.js +1 -1
- package/lib/zudoku.plugin-openapi.js +3 -3
- package/lib/zudoku.plugin-redirect.js +1 -1
- package/lib/zudoku.plugin-search-pagefind.js +38 -38
- package/lib/zudoku.plugin-search-pagefind.js.map +1 -1
- package/lib/zudoku.router.js +2 -2
- package/package.json +16 -8
- package/src/app/main.css +19 -9
- package/src/lib/authentication/authentication.ts +19 -3
- package/src/lib/authentication/components/OAuthErrorPage.tsx +1 -1
- package/src/lib/authentication/components/SignIn.tsx +7 -5
- package/src/lib/authentication/components/SignOut.tsx +7 -6
- package/src/lib/authentication/components/SignUp.tsx +5 -8
- package/src/lib/authentication/hook.ts +21 -10
- package/src/lib/authentication/providers/auth0.tsx +2 -1
- package/src/lib/authentication/providers/azureb2c.tsx +10 -3
- package/src/lib/authentication/providers/clerk.tsx +9 -2
- package/src/lib/authentication/providers/openid.tsx +20 -15
- package/src/lib/authentication/providers/supabase/SupabaseAuthUI.tsx +75 -0
- package/src/lib/authentication/providers/supabase.tsx +59 -43
- package/src/lib/authentication/state.ts +3 -23
- package/src/lib/components/Zudoku.tsx +3 -3
- package/src/lib/components/navigation/Toc.tsx +3 -3
- package/src/lib/core/RouteGuard.tsx +33 -13
- package/src/lib/plugins/openapi/playground/CollapsibleHeader.tsx +2 -2
- package/src/lib/plugins/openapi/playground/Playground.tsx +13 -2
- package/src/lib/plugins/openapi/playground/RequestLoginDialog.tsx +20 -1
- package/src/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.tsx +2 -2
- package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +102 -58
- package/src/lib/plugins/openapi/playground/result-panel/ResultPanel.tsx +1 -1
- package/src/lib/plugins/openapi/playground/useRememberSkipLoginDialog.tsx +3 -0
- package/src/lib/plugins/openapi/util/generateSchemaExample.ts +10 -0
- package/src/lib/shiki.ts +16 -2
- package/src/lib/ui/Callout.tsx +10 -5
- package/src/lib/ui/EmbeddedCodeBlock.tsx +6 -3
- package/src/lib/ui/ReactComponentDoc.tsx +17 -17
- package/src/lib/ui/SyntaxHighlight.tsx +6 -1
- package/src/lib/util/MdxComponents.tsx +3 -5
- package/src/lib/util/syncZustandState.ts +22 -0
- package/lib/CodeBlock-CanTUJLl.js +0 -221
- package/lib/CodeBlock-CanTUJLl.js.map +0 -1
- package/lib/ErrorAlert-VBJ8aHH7.js.map +0 -1
- package/lib/OperationList-BzWKTkNq.js.map +0 -1
- package/lib/RouteGuard-Bg0Lu0OU.js +0 -56
- package/lib/RouteGuard-Bg0Lu0OU.js.map +0 -1
- package/lib/SignUp-DUZ4yUmQ.js +0 -56
- package/lib/SignUp-DUZ4yUmQ.js.map +0 -1
- package/lib/Toc-KzXCRqrX.js.map +0 -1
- package/lib/ZudokuContext-BXTZApgy.js.map +0 -1
- package/lib/hook-CAebs2rv.js +0 -31
- package/lib/hook-CAebs2rv.js.map +0 -1
- package/lib/index-PdgTSEkk.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { R as a, c as r, n as u } from "./ZudokuContext-
|
|
1
|
+
import { R as a, c as r, n as u } from "./ZudokuContext-BUZ5hkWB.js";
|
|
2
2
|
var d = class extends a {
|
|
3
3
|
#e;
|
|
4
4
|
#t;
|
|
@@ -193,4 +193,4 @@ export {
|
|
|
193
193
|
d as M,
|
|
194
194
|
h as g
|
|
195
195
|
};
|
|
196
|
-
//# sourceMappingURL=mutation-
|
|
196
|
+
//# sourceMappingURL=mutation-BSU0xu4m.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutation-CdGPxHNX.js","sources":["../../../node_modules/.pnpm/@tanstack+query-core@5.85.5/node_modules/@tanstack/query-core/build/modern/mutation.js"],"sourcesContent":["// src/mutation.ts\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Removable } from \"./removable.js\";\nimport { createRetryer } from \"./retryer.js\";\nvar Mutation = class extends Removable {\n #observers;\n #mutationCache;\n #retryer;\n constructor(config) {\n super();\n this.mutationId = config.mutationId;\n this.#mutationCache = config.mutationCache;\n this.#observers = [];\n this.state = config.state || getDefaultState();\n this.setOptions(config.options);\n this.scheduleGc();\n }\n setOptions(options) {\n this.options = options;\n this.updateGcTime(this.options.gcTime);\n }\n get meta() {\n return this.options.meta;\n }\n addObserver(observer) {\n if (!this.#observers.includes(observer)) {\n this.#observers.push(observer);\n this.clearGcTimeout();\n this.#mutationCache.notify({\n type: \"observerAdded\",\n mutation: this,\n observer\n });\n }\n }\n removeObserver(observer) {\n this.#observers = this.#observers.filter((x) => x !== observer);\n this.scheduleGc();\n this.#mutationCache.notify({\n type: \"observerRemoved\",\n mutation: this,\n observer\n });\n }\n optionalRemove() {\n if (!this.#observers.length) {\n if (this.state.status === \"pending\") {\n this.scheduleGc();\n } else {\n this.#mutationCache.remove(this);\n }\n }\n }\n continue() {\n return this.#retryer?.continue() ?? // continuing a mutation assumes that variables are set, mutation must have been dehydrated before\n this.execute(this.state.variables);\n }\n async execute(variables) {\n const onContinue = () => {\n this.#dispatch({ type: \"continue\" });\n };\n this.#retryer = createRetryer({\n fn: () => {\n if (!this.options.mutationFn) {\n return Promise.reject(new Error(\"No mutationFn found\"));\n }\n return this.options.mutationFn(variables);\n },\n onFail: (failureCount, error) => {\n this.#dispatch({ type: \"failed\", failureCount, error });\n },\n onPause: () => {\n this.#dispatch({ type: \"pause\" });\n },\n onContinue,\n retry: this.options.retry ?? 0,\n retryDelay: this.options.retryDelay,\n networkMode: this.options.networkMode,\n canRun: () => this.#mutationCache.canRun(this)\n });\n const restored = this.state.status === \"pending\";\n const isPaused = !this.#retryer.canStart();\n try {\n if (restored) {\n onContinue();\n } else {\n this.#dispatch({ type: \"pending\", variables, isPaused });\n await this.#mutationCache.config.onMutate?.(\n variables,\n this\n );\n const context = await this.options.onMutate?.(variables);\n if (context !== this.state.context) {\n this.#dispatch({\n type: \"pending\",\n context,\n variables,\n isPaused\n });\n }\n }\n const data = await this.#retryer.start();\n await this.#mutationCache.config.onSuccess?.(\n data,\n variables,\n this.state.context,\n this\n );\n await this.options.onSuccess?.(data, variables, this.state.context);\n await this.#mutationCache.config.onSettled?.(\n data,\n null,\n this.state.variables,\n this.state.context,\n this\n );\n await this.options.onSettled?.(data, null, variables, this.state.context);\n this.#dispatch({ type: \"success\", data });\n return data;\n } catch (error) {\n try {\n await this.#mutationCache.config.onError?.(\n error,\n variables,\n this.state.context,\n this\n );\n await this.options.onError?.(\n error,\n variables,\n this.state.context\n );\n await this.#mutationCache.config.onSettled?.(\n void 0,\n error,\n this.state.variables,\n this.state.context,\n this\n );\n await this.options.onSettled?.(\n void 0,\n error,\n variables,\n this.state.context\n );\n throw error;\n } finally {\n this.#dispatch({ type: \"error\", error });\n }\n } finally {\n this.#mutationCache.runNext(this);\n }\n }\n #dispatch(action) {\n const reducer = (state) => {\n switch (action.type) {\n case \"failed\":\n return {\n ...state,\n failureCount: action.failureCount,\n failureReason: action.error\n };\n case \"pause\":\n return {\n ...state,\n isPaused: true\n };\n case \"continue\":\n return {\n ...state,\n isPaused: false\n };\n case \"pending\":\n return {\n ...state,\n context: action.context,\n data: void 0,\n failureCount: 0,\n failureReason: null,\n error: null,\n isPaused: action.isPaused,\n status: \"pending\",\n variables: action.variables,\n submittedAt: Date.now()\n };\n case \"success\":\n return {\n ...state,\n data: action.data,\n failureCount: 0,\n failureReason: null,\n error: null,\n status: \"success\",\n isPaused: false\n };\n case \"error\":\n return {\n ...state,\n data: void 0,\n error: action.error,\n failureCount: state.failureCount + 1,\n failureReason: action.error,\n isPaused: false,\n status: \"error\"\n };\n }\n };\n this.state = reducer(this.state);\n notifyManager.batch(() => {\n this.#observers.forEach((observer) => {\n observer.onMutationUpdate(action);\n });\n this.#mutationCache.notify({\n mutation: this,\n type: \"updated\",\n action\n });\n });\n }\n};\nfunction getDefaultState() {\n return {\n context: void 0,\n data: void 0,\n error: null,\n failureCount: 0,\n failureReason: null,\n isPaused: false,\n status: \"idle\",\n variables: void 0,\n submittedAt: 0\n };\n}\nexport {\n Mutation,\n getDefaultState\n};\n//# sourceMappingURL=mutation.js.map"],"names":["Mutation","Removable","#observers","#mutationCache","#retryer","config","getDefaultState","options","observer","x","variables","onContinue","#dispatch","createRetryer","failureCount","error","restored","isPaused","context","data","action","reducer","state","notifyManager"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"mutation-BSU0xu4m.js","sources":["../../../node_modules/.pnpm/@tanstack+query-core@5.85.5/node_modules/@tanstack/query-core/build/modern/mutation.js"],"sourcesContent":["// src/mutation.ts\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Removable } from \"./removable.js\";\nimport { createRetryer } from \"./retryer.js\";\nvar Mutation = class extends Removable {\n #observers;\n #mutationCache;\n #retryer;\n constructor(config) {\n super();\n this.mutationId = config.mutationId;\n this.#mutationCache = config.mutationCache;\n this.#observers = [];\n this.state = config.state || getDefaultState();\n this.setOptions(config.options);\n this.scheduleGc();\n }\n setOptions(options) {\n this.options = options;\n this.updateGcTime(this.options.gcTime);\n }\n get meta() {\n return this.options.meta;\n }\n addObserver(observer) {\n if (!this.#observers.includes(observer)) {\n this.#observers.push(observer);\n this.clearGcTimeout();\n this.#mutationCache.notify({\n type: \"observerAdded\",\n mutation: this,\n observer\n });\n }\n }\n removeObserver(observer) {\n this.#observers = this.#observers.filter((x) => x !== observer);\n this.scheduleGc();\n this.#mutationCache.notify({\n type: \"observerRemoved\",\n mutation: this,\n observer\n });\n }\n optionalRemove() {\n if (!this.#observers.length) {\n if (this.state.status === \"pending\") {\n this.scheduleGc();\n } else {\n this.#mutationCache.remove(this);\n }\n }\n }\n continue() {\n return this.#retryer?.continue() ?? // continuing a mutation assumes that variables are set, mutation must have been dehydrated before\n this.execute(this.state.variables);\n }\n async execute(variables) {\n const onContinue = () => {\n this.#dispatch({ type: \"continue\" });\n };\n this.#retryer = createRetryer({\n fn: () => {\n if (!this.options.mutationFn) {\n return Promise.reject(new Error(\"No mutationFn found\"));\n }\n return this.options.mutationFn(variables);\n },\n onFail: (failureCount, error) => {\n this.#dispatch({ type: \"failed\", failureCount, error });\n },\n onPause: () => {\n this.#dispatch({ type: \"pause\" });\n },\n onContinue,\n retry: this.options.retry ?? 0,\n retryDelay: this.options.retryDelay,\n networkMode: this.options.networkMode,\n canRun: () => this.#mutationCache.canRun(this)\n });\n const restored = this.state.status === \"pending\";\n const isPaused = !this.#retryer.canStart();\n try {\n if (restored) {\n onContinue();\n } else {\n this.#dispatch({ type: \"pending\", variables, isPaused });\n await this.#mutationCache.config.onMutate?.(\n variables,\n this\n );\n const context = await this.options.onMutate?.(variables);\n if (context !== this.state.context) {\n this.#dispatch({\n type: \"pending\",\n context,\n variables,\n isPaused\n });\n }\n }\n const data = await this.#retryer.start();\n await this.#mutationCache.config.onSuccess?.(\n data,\n variables,\n this.state.context,\n this\n );\n await this.options.onSuccess?.(data, variables, this.state.context);\n await this.#mutationCache.config.onSettled?.(\n data,\n null,\n this.state.variables,\n this.state.context,\n this\n );\n await this.options.onSettled?.(data, null, variables, this.state.context);\n this.#dispatch({ type: \"success\", data });\n return data;\n } catch (error) {\n try {\n await this.#mutationCache.config.onError?.(\n error,\n variables,\n this.state.context,\n this\n );\n await this.options.onError?.(\n error,\n variables,\n this.state.context\n );\n await this.#mutationCache.config.onSettled?.(\n void 0,\n error,\n this.state.variables,\n this.state.context,\n this\n );\n await this.options.onSettled?.(\n void 0,\n error,\n variables,\n this.state.context\n );\n throw error;\n } finally {\n this.#dispatch({ type: \"error\", error });\n }\n } finally {\n this.#mutationCache.runNext(this);\n }\n }\n #dispatch(action) {\n const reducer = (state) => {\n switch (action.type) {\n case \"failed\":\n return {\n ...state,\n failureCount: action.failureCount,\n failureReason: action.error\n };\n case \"pause\":\n return {\n ...state,\n isPaused: true\n };\n case \"continue\":\n return {\n ...state,\n isPaused: false\n };\n case \"pending\":\n return {\n ...state,\n context: action.context,\n data: void 0,\n failureCount: 0,\n failureReason: null,\n error: null,\n isPaused: action.isPaused,\n status: \"pending\",\n variables: action.variables,\n submittedAt: Date.now()\n };\n case \"success\":\n return {\n ...state,\n data: action.data,\n failureCount: 0,\n failureReason: null,\n error: null,\n status: \"success\",\n isPaused: false\n };\n case \"error\":\n return {\n ...state,\n data: void 0,\n error: action.error,\n failureCount: state.failureCount + 1,\n failureReason: action.error,\n isPaused: false,\n status: \"error\"\n };\n }\n };\n this.state = reducer(this.state);\n notifyManager.batch(() => {\n this.#observers.forEach((observer) => {\n observer.onMutationUpdate(action);\n });\n this.#mutationCache.notify({\n mutation: this,\n type: \"updated\",\n action\n });\n });\n }\n};\nfunction getDefaultState() {\n return {\n context: void 0,\n data: void 0,\n error: null,\n failureCount: 0,\n failureReason: null,\n isPaused: false,\n status: \"idle\",\n variables: void 0,\n submittedAt: 0\n };\n}\nexport {\n Mutation,\n getDefaultState\n};\n//# sourceMappingURL=mutation.js.map"],"names":["Mutation","Removable","#observers","#mutationCache","#retryer","config","getDefaultState","options","observer","x","variables","onContinue","#dispatch","createRetryer","failureCount","error","restored","isPaused","context","data","action","reducer","state","notifyManager"],"mappings":"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","x_google_ignoreList":[0]}
|
package/lib/ui/Callout.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { j as o } from "../jsx-runtime-BzflLqGi.js";
|
|
2
|
-
import { ShieldAlertIcon as
|
|
2
|
+
import { ShieldAlertIcon as k, AlertTriangleIcon as u, InfoIcon as l, LightbulbIcon as m } from "lucide-react";
|
|
3
3
|
import { c as t } from "../cn-dYga0KKN.js";
|
|
4
4
|
const y = {
|
|
5
5
|
note: {
|
|
@@ -7,7 +7,7 @@ const y = {
|
|
|
7
7
|
bg: "bg-gray-100 dark:bg-zinc-800/50",
|
|
8
8
|
iconColor: "text-gray-600 dark:text-zinc-300",
|
|
9
9
|
titleColor: "text-gray-600 dark:text-zinc-300",
|
|
10
|
-
textColor: "text-gray-600 dark:text-zinc-300",
|
|
10
|
+
textColor: "text-gray-600 dark:text-zinc-300 [&_a]:hover:text-gray-700 [&_a]:dark:hover:text-zinc-400",
|
|
11
11
|
Icon: l
|
|
12
12
|
},
|
|
13
13
|
tip: {
|
|
@@ -15,7 +15,7 @@ const y = {
|
|
|
15
15
|
bg: "bg-green-200/25 dark:bg-green-950/70",
|
|
16
16
|
iconColor: "text-green-600 dark:text-green-200",
|
|
17
17
|
titleColor: "text-green-700 dark:text-green-200",
|
|
18
|
-
textColor: "text-green-600 dark:text-green-50",
|
|
18
|
+
textColor: "text-green-600 dark:text-green-50 [&_a]:hover:text-green-700 [&_a]:dark:hover:text-green-300",
|
|
19
19
|
Icon: m
|
|
20
20
|
},
|
|
21
21
|
info: {
|
|
@@ -23,7 +23,7 @@ const y = {
|
|
|
23
23
|
bg: "bg-blue-50 dark:bg-blue-950/40",
|
|
24
24
|
iconColor: "text-blue-400 dark:text-blue-200",
|
|
25
25
|
titleColor: "text-blue-700 dark:text-blue-200",
|
|
26
|
-
textColor: "text-blue-600 dark:text-blue-100",
|
|
26
|
+
textColor: "text-blue-600 dark:text-blue-100 [&_a]:hover:text-blue-800 [&_a]:dark:hover:text-blue-300",
|
|
27
27
|
Icon: l
|
|
28
28
|
},
|
|
29
29
|
caution: {
|
|
@@ -31,25 +31,25 @@ const y = {
|
|
|
31
31
|
bg: "bg-yellow-100/60 dark:bg-yellow-400/10",
|
|
32
32
|
iconColor: "text-yellow-500 dark:text-yellow-300",
|
|
33
33
|
titleColor: "text-yellow-600 dark:text-yellow-300",
|
|
34
|
-
textColor: "text-yellow-700 dark:text-yellow-200",
|
|
35
|
-
Icon:
|
|
34
|
+
textColor: "text-yellow-700 dark:text-yellow-200 [&_a]:hover:text-yellow-800 [&_a]:dark:hover:text-yellow-300",
|
|
35
|
+
Icon: u
|
|
36
36
|
},
|
|
37
37
|
danger: {
|
|
38
38
|
border: "border-rose-400 dark:border-rose-800",
|
|
39
39
|
bg: "bg-rose-50 dark:bg-rose-950/40",
|
|
40
40
|
iconColor: "text-rose-400 dark:text-rose-300",
|
|
41
41
|
titleColor: "text-rose-800 dark:text-rose-300",
|
|
42
|
-
textColor: "text-rose-700 dark:text-rose-100",
|
|
43
|
-
Icon:
|
|
42
|
+
textColor: "text-rose-700 dark:text-rose-100 [&_a]:hover:text-rose-800 [&_a]:dark:hover:text-rose-300",
|
|
43
|
+
Icon: k
|
|
44
44
|
}
|
|
45
|
-
},
|
|
46
|
-
type:
|
|
47
|
-
children:
|
|
45
|
+
}, f = ({
|
|
46
|
+
type: a,
|
|
47
|
+
children: d,
|
|
48
48
|
title: e,
|
|
49
49
|
className: n,
|
|
50
50
|
icon: r = !0
|
|
51
51
|
}) => {
|
|
52
|
-
const { border:
|
|
52
|
+
const { border: x, bg: b, iconColor: s, titleColor: i, textColor: g, Icon: c } = y[a];
|
|
53
53
|
return /* @__PURE__ */ o.jsxs(
|
|
54
54
|
"div",
|
|
55
55
|
{
|
|
@@ -61,15 +61,15 @@ const y = {
|
|
|
61
61
|
"[&_.code-block-wrapper]:border",
|
|
62
62
|
"[&_ul]:list-disc [&_ol]:list-decimal [&_ul]:ps-4 [&_ul>li]:ps-1 [&_ul>li]:my-1",
|
|
63
63
|
r && e && "items-center",
|
|
64
|
+
x,
|
|
64
65
|
b,
|
|
65
|
-
s,
|
|
66
66
|
n
|
|
67
67
|
),
|
|
68
68
|
children: [
|
|
69
69
|
r && /* @__PURE__ */ o.jsx(
|
|
70
|
-
|
|
70
|
+
c,
|
|
71
71
|
{
|
|
72
|
-
className: t(e ? "align-middle" : "translate-y-1",
|
|
72
|
+
className: t(e ? "align-middle" : "translate-y-1", s),
|
|
73
73
|
size: 20,
|
|
74
74
|
"aria-hidden": "true"
|
|
75
75
|
}
|
|
@@ -81,10 +81,10 @@ const y = {
|
|
|
81
81
|
className: t(
|
|
82
82
|
r && "col-start-2",
|
|
83
83
|
!e && r && "row-start-1",
|
|
84
|
-
|
|
84
|
+
g,
|
|
85
85
|
"overflow-x-auto"
|
|
86
86
|
),
|
|
87
|
-
children:
|
|
87
|
+
children: d
|
|
88
88
|
}
|
|
89
89
|
)
|
|
90
90
|
]
|
|
@@ -92,6 +92,6 @@ const y = {
|
|
|
92
92
|
);
|
|
93
93
|
};
|
|
94
94
|
export {
|
|
95
|
-
|
|
95
|
+
f as Callout
|
|
96
96
|
};
|
|
97
97
|
//# sourceMappingURL=Callout.js.map
|
package/lib/ui/Callout.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Callout.js","sources":["../../src/lib/ui/Callout.tsx"],"sourcesContent":["import {\n AlertTriangleIcon,\n InfoIcon,\n LightbulbIcon,\n type LucideIcon,\n ShieldAlertIcon,\n} from \"lucide-react\";\nimport type { ReactNode } from \"react\";\nimport { cn } from \"../util/cn.js\";\n\nconst stylesMap = {\n note: {\n border: \"border-gray-300 dark:border-zinc-800\",\n bg: \"bg-gray-100 dark:bg-zinc-800/50\",\n iconColor: \"text-gray-600 dark:text-zinc-300\",\n titleColor: \"text-gray-600 dark:text-zinc-300\",\n textColor
|
|
1
|
+
{"version":3,"file":"Callout.js","sources":["../../src/lib/ui/Callout.tsx"],"sourcesContent":["import {\n AlertTriangleIcon,\n InfoIcon,\n LightbulbIcon,\n type LucideIcon,\n ShieldAlertIcon,\n} from \"lucide-react\";\nimport type { ReactNode } from \"react\";\nimport { cn } from \"../util/cn.js\";\n\nconst stylesMap = {\n note: {\n border: \"border-gray-300 dark:border-zinc-800\",\n bg: \"bg-gray-100 dark:bg-zinc-800/50\",\n iconColor: \"text-gray-600 dark:text-zinc-300\",\n titleColor: \"text-gray-600 dark:text-zinc-300\",\n textColor:\n \"text-gray-600 dark:text-zinc-300 [&_a]:hover:text-gray-700 [&_a]:dark:hover:text-zinc-400\",\n Icon: InfoIcon as LucideIcon,\n },\n tip: {\n border: \"border-green-500 dark:border-green-800\",\n bg: \"bg-green-200/25 dark:bg-green-950/70\",\n iconColor: \"text-green-600 dark:text-green-200\",\n titleColor: \"text-green-700 dark:text-green-200\",\n textColor:\n \"text-green-600 dark:text-green-50 [&_a]:hover:text-green-700 [&_a]:dark:hover:text-green-300\",\n Icon: LightbulbIcon as LucideIcon,\n },\n info: {\n border: \"border-blue-400 dark:border-blue-900/60\",\n bg: \"bg-blue-50 dark:bg-blue-950/40\",\n iconColor: \"text-blue-400 dark:text-blue-200\",\n titleColor: \"text-blue-700 dark:text-blue-200\",\n textColor:\n \"text-blue-600 dark:text-blue-100 [&_a]:hover:text-blue-800 [&_a]:dark:hover:text-blue-300\",\n Icon: InfoIcon as LucideIcon,\n },\n caution: {\n border: \"border-yellow-400 dark:border-yellow-400/25\",\n bg: \"bg-yellow-100/60 dark:bg-yellow-400/10\",\n iconColor: \"text-yellow-500 dark:text-yellow-300\",\n titleColor: \"text-yellow-600 dark:text-yellow-300\",\n textColor:\n \"text-yellow-700 dark:text-yellow-200 [&_a]:hover:text-yellow-800 [&_a]:dark:hover:text-yellow-300\",\n Icon: AlertTriangleIcon as LucideIcon,\n },\n danger: {\n border: \"border-rose-400 dark:border-rose-800\",\n bg: \"bg-rose-50 dark:bg-rose-950/40\",\n iconColor: \"text-rose-400 dark:text-rose-300\",\n titleColor: \"text-rose-800 dark:text-rose-300\",\n textColor:\n \"text-rose-700 dark:text-rose-100 [&_a]:hover:text-rose-800 [&_a]:dark:hover:text-rose-300\",\n Icon: ShieldAlertIcon as LucideIcon,\n },\n} as const;\n\ntype CalloutProps = {\n type: keyof typeof stylesMap;\n title?: string;\n children: ReactNode;\n className?: string;\n icon?: boolean;\n};\n\nexport const Callout = ({\n type,\n children,\n title,\n className,\n icon = true,\n}: CalloutProps) => {\n const { border, bg, iconColor, titleColor, textColor, Icon } =\n stylesMap[type];\n\n return (\n <div\n className={cn(\n \"not-prose rounded-md border p-4 text-md my-2\",\n icon &&\n \"grid grid-cols-[min-content_1fr] items-baseline grid-rows-[fit-content_1fr] gap-x-4 gap-y-2\",\n !icon && title && \"flex flex-col gap-2\",\n \"[&_a]:underline [&_a]:decoration-current [&_a]:decoration-from-font [&_a]:underline-offset-4 hover:[&_a]:decoration-1\",\n \"[&_.code-block-wrapper]:border\",\n \"[&_ul]:list-disc [&_ol]:list-decimal [&_ul]:ps-4 [&_ul>li]:ps-1 [&_ul>li]:my-1\",\n icon && title && \"items-center\",\n border,\n bg,\n className,\n )}\n >\n {icon && (\n <Icon\n className={cn(!title ? \"translate-y-1\" : \"align-middle\", iconColor)}\n size={20}\n aria-hidden=\"true\"\n />\n )}\n {title && <h3 className={cn(\"font-medium\", titleColor)}>{title}</h3>}\n <div\n className={cn(\n icon && \"col-start-2\",\n !title && icon && \"row-start-1\",\n textColor,\n \"overflow-x-auto\",\n )}\n >\n {children}\n </div>\n </div>\n );\n};\n"],"names":["stylesMap","InfoIcon","LightbulbIcon","AlertTriangleIcon","ShieldAlertIcon","Callout","type","children","title","className","icon","border","bg","iconColor","titleColor","textColor","Icon","jsxs","cn","jsx"],"mappings":";;;AAUA,MAAMA,IAAY;AAAA,EAChB,MAAM;AAAA,IACJ,QAAQ;AAAA,IACR,IAAI;AAAA,IACJ,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,WACE;AAAA,IACF,MAAMC;AAAA,EAAA;AAAA,EAER,KAAK;AAAA,IACH,QAAQ;AAAA,IACR,IAAI;AAAA,IACJ,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,WACE;AAAA,IACF,MAAMC;AAAA,EAAA;AAAA,EAER,MAAM;AAAA,IACJ,QAAQ;AAAA,IACR,IAAI;AAAA,IACJ,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,WACE;AAAA,IACF,MAAMD;AAAA,EAAA;AAAA,EAER,SAAS;AAAA,IACP,QAAQ;AAAA,IACR,IAAI;AAAA,IACJ,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,WACE;AAAA,IACF,MAAME;AAAA,EAAA;AAAA,EAER,QAAQ;AAAA,IACN,QAAQ;AAAA,IACR,IAAI;AAAA,IACJ,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,WACE;AAAA,IACF,MAAMC;AAAA,EAAA;AAEV,GAUaC,IAAU,CAAC;AAAA,EACtB,MAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,MAAAC,IAAO;AACT,MAAoB;AAClB,QAAM,EAAE,QAAAC,GAAQ,IAAAC,GAAI,WAAAC,GAAW,YAAAC,GAAY,WAAAC,GAAW,MAAAC,EAAA,IACpDhB,EAAUM,CAAI;AAEhB,SACEW,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAR,KACE;AAAA,QACF,CAACA,KAAQF,KAAS;AAAA,QAClB;AAAA,QACA;AAAA,QACA;AAAA,QACAE,KAAQF,KAAS;AAAA,QACjBG;AAAA,QACAC;AAAA,QACAH;AAAA,MAAA;AAAA,MAGD,UAAA;AAAA,QAAAC,KACCS,gBAAAA,EAAAA;AAAAA,UAACH;AAAA,UAAA;AAAA,YACC,WAAWE,EAAIV,IAA0B,iBAAlB,iBAAkCK,CAAS;AAAA,YAClE,MAAM;AAAA,YACN,eAAY;AAAA,UAAA;AAAA,QAAA;AAAA,QAGfL,2BAAU,MAAA,EAAG,WAAWU,EAAG,eAAeJ,CAAU,GAAI,UAAAN,GAAM;AAAA,QAC/DW,gBAAAA,EAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAWD;AAAA,cACTR,KAAQ;AAAA,cACR,CAACF,KAASE,KAAQ;AAAA,cAClBK;AAAA,cACA;AAAA,YAAA;AAAA,YAGD,UAAAR;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IAAA;AAAA,EAAA;AAGN;"}
|
package/lib/ui/CodeBlock.js
CHANGED
|
@@ -1,10 +1,220 @@
|
|
|
1
|
-
import "../jsx-runtime-BzflLqGi.js";
|
|
2
|
-
import "lucide-react";
|
|
3
|
-
import "react";
|
|
4
|
-
import {
|
|
5
|
-
import "../
|
|
6
|
-
|
|
1
|
+
import { j as o } from "../jsx-runtime-BzflLqGi.js";
|
|
2
|
+
import { CheckIcon as d, CopyIcon as h } from "lucide-react";
|
|
3
|
+
import { lazy as t, Suspense as w, useRef as x } from "react";
|
|
4
|
+
import { c as s } from "../cn-dYga0KKN.js";
|
|
5
|
+
import { u } from "../useCopyToClipboard-B_085nfO.js";
|
|
6
|
+
const $ = {
|
|
7
|
+
typescript: {
|
|
8
|
+
pattern: /^(ts|typescript)$/,
|
|
9
|
+
icon: t(() => import("../typescript-C26xdBDC.js")),
|
|
10
|
+
width: 15
|
|
11
|
+
},
|
|
12
|
+
javascript: {
|
|
13
|
+
pattern: /^(js|javascript)$/,
|
|
14
|
+
icon: t(() => import("../javascript-CcmIpL4G.js"))
|
|
15
|
+
},
|
|
16
|
+
react: {
|
|
17
|
+
pattern: /^(react|tsx|jsx)$/,
|
|
18
|
+
icon: t(() => import("../react-DHpVpxRv.js")),
|
|
19
|
+
width: 22
|
|
20
|
+
},
|
|
21
|
+
markdown: {
|
|
22
|
+
pattern: /^(md|markdown)$/,
|
|
23
|
+
icon: t(() => import("../markdown-DYGWCmGQ.js")),
|
|
24
|
+
width: 22
|
|
25
|
+
},
|
|
26
|
+
mdx: {
|
|
27
|
+
pattern: /^mdx$/,
|
|
28
|
+
icon: t(() => import("../mdx-CHwYvXd4.js")),
|
|
29
|
+
width: 28
|
|
30
|
+
},
|
|
31
|
+
java: {
|
|
32
|
+
pattern: /^(java)$/,
|
|
33
|
+
icon: t(() => import("../java-CVLzHfb1.js")),
|
|
34
|
+
width: 22
|
|
35
|
+
},
|
|
36
|
+
json: {
|
|
37
|
+
pattern: /^jsonc?$/,
|
|
38
|
+
icon: t(() => import("../json-4AyP4uiY.js"))
|
|
39
|
+
},
|
|
40
|
+
yaml: {
|
|
41
|
+
pattern: /^yaml$/,
|
|
42
|
+
icon: t(() => import("../yaml-BGsJItKv.js"))
|
|
43
|
+
},
|
|
44
|
+
toml: {
|
|
45
|
+
pattern: /^toml$/,
|
|
46
|
+
icon: t(() => import("../toml-Co9mpdct.js"))
|
|
47
|
+
},
|
|
48
|
+
shell: {
|
|
49
|
+
pattern: /^(shell|bash|sh|zsh|term|terminal|ansi)$/,
|
|
50
|
+
icon: t(() => import("../shell-HUv9oVtp.js"))
|
|
51
|
+
},
|
|
52
|
+
python: {
|
|
53
|
+
pattern: /^(py|python)$/,
|
|
54
|
+
icon: t(() => import("../python-QIQAE5Ei.js"))
|
|
55
|
+
},
|
|
56
|
+
csharp: {
|
|
57
|
+
pattern: /^(cs|csharp|vb)$/,
|
|
58
|
+
icon: t(() => import("../csharp-D8MIL50B.js")),
|
|
59
|
+
width: 20
|
|
60
|
+
},
|
|
61
|
+
rust: {
|
|
62
|
+
pattern: /^(rs|rust)$/,
|
|
63
|
+
icon: t(() => import("../rust-DYnLHAi2.js")),
|
|
64
|
+
width: 20
|
|
65
|
+
},
|
|
66
|
+
ruby: {
|
|
67
|
+
pattern: /^(rb|ruby)$/,
|
|
68
|
+
icon: t(() => import("../ruby-B2dU8Ny5.js"))
|
|
69
|
+
},
|
|
70
|
+
php: {
|
|
71
|
+
pattern: /^php$/,
|
|
72
|
+
icon: t(() => import("../php-rQXzo7K_.js")),
|
|
73
|
+
width: 24
|
|
74
|
+
},
|
|
75
|
+
html: {
|
|
76
|
+
pattern: /^html?$/,
|
|
77
|
+
icon: t(() => import("../html-MGnI2uzP.js")),
|
|
78
|
+
width: 15
|
|
79
|
+
},
|
|
80
|
+
css: {
|
|
81
|
+
pattern: /^css$/,
|
|
82
|
+
icon: t(() => import("../css-Bt6hr1td.js"))
|
|
83
|
+
},
|
|
84
|
+
objectivec: {
|
|
85
|
+
pattern: /^(objc|objectivec)$/,
|
|
86
|
+
icon: t(() => import("../objectivec-HZY8shkd.js")),
|
|
87
|
+
width: 16
|
|
88
|
+
},
|
|
89
|
+
swift: {
|
|
90
|
+
pattern: /^swift$/,
|
|
91
|
+
icon: t(() => import("../swift-B4z6ig1Z.js"))
|
|
92
|
+
},
|
|
93
|
+
go: {
|
|
94
|
+
pattern: /^go$/,
|
|
95
|
+
icon: t(() => import("../go-D2VsmIOS.js")),
|
|
96
|
+
width: 28
|
|
97
|
+
},
|
|
98
|
+
xml: {
|
|
99
|
+
pattern: /^xml$/,
|
|
100
|
+
icon: t(() => import("../xml-BQOOC04j.js"))
|
|
101
|
+
},
|
|
102
|
+
kotlin: {
|
|
103
|
+
pattern: /^(kt|kotlin)$/,
|
|
104
|
+
icon: t(() => import("../kotlin-v2plddBQ.js")),
|
|
105
|
+
width: 14
|
|
106
|
+
},
|
|
107
|
+
graphql: {
|
|
108
|
+
pattern: /^(gql|graphql)$/,
|
|
109
|
+
icon: t(() => import("../graphql-BtA6M4m5.js"))
|
|
110
|
+
},
|
|
111
|
+
zig: {
|
|
112
|
+
pattern: /^zig$/,
|
|
113
|
+
icon: t(() => import("../zig-CUV2sTct.js")),
|
|
114
|
+
width: 28
|
|
115
|
+
},
|
|
116
|
+
scala: {
|
|
117
|
+
pattern: /^scala$/,
|
|
118
|
+
icon: t(() => import("../scala-CeKInBR8.js")),
|
|
119
|
+
width: 18
|
|
120
|
+
},
|
|
121
|
+
dart: {
|
|
122
|
+
pattern: /^dart$/,
|
|
123
|
+
icon: t(() => import("../dart-B0vy1jWB.js")),
|
|
124
|
+
width: 20
|
|
125
|
+
},
|
|
126
|
+
ocaml: {
|
|
127
|
+
pattern: /^ocaml$/,
|
|
128
|
+
icon: t(() => import("../ocaml-DqsdDdwb.js")),
|
|
129
|
+
width: 20
|
|
130
|
+
},
|
|
131
|
+
c: {
|
|
132
|
+
pattern: /^c$/,
|
|
133
|
+
icon: t(() => import("../c-B-NUhs61.js")),
|
|
134
|
+
width: 20
|
|
135
|
+
},
|
|
136
|
+
cpp: {
|
|
137
|
+
pattern: /^(cpp|c\+\+)$/,
|
|
138
|
+
icon: t(() => import("../cpp-79Paht7T.js")),
|
|
139
|
+
width: 20
|
|
140
|
+
},
|
|
141
|
+
commonlisp: {
|
|
142
|
+
pattern: /^(clisp|common-lisp|lisp|cl|commonlisp)$/,
|
|
143
|
+
icon: t(() => import("../commonlisp-De080z23.js")),
|
|
144
|
+
width: 18
|
|
145
|
+
},
|
|
146
|
+
elixir: {
|
|
147
|
+
pattern: /^elixir$/,
|
|
148
|
+
icon: t(() => import("../elixir-Ds8r0sF8.js")),
|
|
149
|
+
width: 18
|
|
150
|
+
},
|
|
151
|
+
powershell: {
|
|
152
|
+
pattern: /^(pshell|powershell|ps1)$/,
|
|
153
|
+
icon: t(() => import("../powershell-CQje9pm1.js")),
|
|
154
|
+
width: 18
|
|
155
|
+
}
|
|
156
|
+
}, b = ({ language: i }) => {
|
|
157
|
+
if (!i) return null;
|
|
158
|
+
const r = Object.values($).find((n) => n.pattern.test(i));
|
|
159
|
+
if (!r) return null;
|
|
160
|
+
const e = r.width ?? 18;
|
|
161
|
+
return /* @__PURE__ */ o.jsx(w, { fallback: /* @__PURE__ */ o.jsx("div", { style: { width: e, height: "1em" } }), children: /* @__PURE__ */ o.jsx(r.icon, { className: "h-auto", style: { width: e } }) });
|
|
162
|
+
}, k = ({
|
|
163
|
+
children: i,
|
|
164
|
+
title: r = "Code",
|
|
165
|
+
language: e,
|
|
166
|
+
showCopy: n = "hover",
|
|
167
|
+
showLanguageIndicator: j,
|
|
168
|
+
showLineNumbers: a,
|
|
169
|
+
...m
|
|
170
|
+
}) => {
|
|
171
|
+
const [p, l] = u(), c = x(null);
|
|
172
|
+
return i ? /* @__PURE__ */ o.jsxs(
|
|
173
|
+
"div",
|
|
174
|
+
{
|
|
175
|
+
className: s(
|
|
176
|
+
"border code-block-wrapper relative group rounded-md overflow-hidden",
|
|
177
|
+
a && "line-numbers",
|
|
178
|
+
m.className
|
|
179
|
+
),
|
|
180
|
+
children: [
|
|
181
|
+
/* @__PURE__ */ o.jsxs("div", { className: "border-b flex items-center h-10 font-sans bg-black/2", children: [
|
|
182
|
+
/* @__PURE__ */ o.jsxs("div", { className: "flex items-center gap-1.5 flex-1 text-sm w-full px-3", children: [
|
|
183
|
+
/* @__PURE__ */ o.jsx(b, { language: e }),
|
|
184
|
+
r
|
|
185
|
+
] }),
|
|
186
|
+
" ",
|
|
187
|
+
n !== "never" && /* @__PURE__ */ o.jsx(
|
|
188
|
+
"button",
|
|
189
|
+
{
|
|
190
|
+
type: "button",
|
|
191
|
+
"aria-label": "Copy code",
|
|
192
|
+
title: "Copy code",
|
|
193
|
+
className: s(
|
|
194
|
+
"transition px-2 py-2 mx-1 rounded-sm",
|
|
195
|
+
!p && "hover:bg-accent hover:brightness-95"
|
|
196
|
+
),
|
|
197
|
+
disabled: p,
|
|
198
|
+
onClick: () => {
|
|
199
|
+
c.current?.textContent && l(c.current.textContent);
|
|
200
|
+
},
|
|
201
|
+
children: p ? /* @__PURE__ */ o.jsx(d, { className: "text-emerald-600", size: 14 }) : /* @__PURE__ */ o.jsx(h, { size: 14 })
|
|
202
|
+
}
|
|
203
|
+
)
|
|
204
|
+
] }),
|
|
205
|
+
/* @__PURE__ */ o.jsx(
|
|
206
|
+
"div",
|
|
207
|
+
{
|
|
208
|
+
className: "code-block text-sm not-prose scrollbar [&_code]:px-3 [&_code]:py-2",
|
|
209
|
+
ref: c,
|
|
210
|
+
children: i
|
|
211
|
+
}
|
|
212
|
+
)
|
|
213
|
+
]
|
|
214
|
+
}
|
|
215
|
+
) : null;
|
|
216
|
+
};
|
|
7
217
|
export {
|
|
8
|
-
|
|
218
|
+
k as CodeBlock
|
|
9
219
|
};
|
|
10
220
|
//# sourceMappingURL=CodeBlock.js.map
|
package/lib/ui/CodeBlock.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeBlock.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
1
|
+
{"version":3,"file":"CodeBlock.js","sources":["../../src/lib/components/LanguageIcon.tsx","../../src/lib/ui/CodeBlock.tsx"],"sourcesContent":["import {\n type ComponentType,\n type LazyExoticComponent,\n lazy,\n Suspense,\n type SVGProps,\n} from \"react\";\n\ntype Language = {\n pattern: RegExp;\n icon: LazyExoticComponent<ComponentType<SVGProps<SVGSVGElement>>>;\n width?: number;\n};\n\nconst Languages: Record<string, Language> = {\n typescript: {\n pattern: /^(ts|typescript)$/,\n icon: lazy(() => import(\"../assets/language-icons/typescript.js\")),\n width: 15,\n },\n javascript: {\n pattern: /^(js|javascript)$/,\n icon: lazy(() => import(\"../assets/language-icons/javascript.js\")),\n },\n react: {\n pattern: /^(react|tsx|jsx)$/,\n icon: lazy(() => import(\"../assets/language-icons/react.js\")),\n width: 22,\n },\n markdown: {\n pattern: /^(md|markdown)$/,\n icon: lazy(() => import(\"../assets/language-icons/markdown.js\")),\n width: 22,\n },\n mdx: {\n pattern: /^mdx$/,\n icon: lazy(() => import(\"../assets/language-icons/mdx.js\")),\n width: 28,\n },\n java: {\n pattern: /^(java)$/,\n icon: lazy(() => import(\"../assets/language-icons/java.js\")),\n width: 22,\n },\n json: {\n pattern: /^jsonc?$/,\n icon: lazy(() => import(\"../assets/language-icons/json.js\")),\n },\n yaml: {\n pattern: /^yaml$/,\n icon: lazy(() => import(\"../assets/language-icons/yaml.js\")),\n },\n toml: {\n pattern: /^toml$/,\n icon: lazy(() => import(\"../assets/language-icons/toml.js\")),\n },\n shell: {\n pattern: /^(shell|bash|sh|zsh|term|terminal|ansi)$/,\n icon: lazy(() => import(\"../assets/language-icons/shell.js\")),\n },\n python: {\n pattern: /^(py|python)$/,\n icon: lazy(() => import(\"../assets/language-icons/python.js\")),\n },\n csharp: {\n pattern: /^(cs|csharp|vb)$/,\n icon: lazy(() => import(\"../assets/language-icons/csharp.js\")),\n width: 20,\n },\n rust: {\n pattern: /^(rs|rust)$/,\n icon: lazy(() => import(\"../assets/language-icons/rust.js\")),\n width: 20,\n },\n ruby: {\n pattern: /^(rb|ruby)$/,\n icon: lazy(() => import(\"../assets/language-icons/ruby.js\")),\n },\n php: {\n pattern: /^php$/,\n icon: lazy(() => import(\"../assets/language-icons/php.js\")),\n width: 24,\n },\n html: {\n pattern: /^html?$/,\n icon: lazy(() => import(\"../assets/language-icons/html.js\")),\n width: 15,\n },\n css: {\n pattern: /^css$/,\n icon: lazy(() => import(\"../assets/language-icons/css.js\")),\n },\n objectivec: {\n pattern: /^(objc|objectivec)$/,\n icon: lazy(() => import(\"../assets/language-icons/objectivec.js\")),\n width: 16,\n },\n swift: {\n pattern: /^swift$/,\n icon: lazy(() => import(\"../assets/language-icons/swift.js\")),\n },\n go: {\n pattern: /^go$/,\n icon: lazy(() => import(\"../assets/language-icons/go.js\")),\n width: 28,\n },\n xml: {\n pattern: /^xml$/,\n icon: lazy(() => import(\"../assets/language-icons/xml.js\")),\n },\n kotlin: {\n pattern: /^(kt|kotlin)$/,\n icon: lazy(() => import(\"../assets/language-icons/kotlin.js\")),\n width: 14,\n },\n graphql: {\n pattern: /^(gql|graphql)$/,\n icon: lazy(() => import(\"../assets/language-icons/graphql.js\")),\n },\n zig: {\n pattern: /^zig$/,\n icon: lazy(() => import(\"../assets/language-icons/zig.js\")),\n width: 28,\n },\n scala: {\n pattern: /^scala$/,\n icon: lazy(() => import(\"../assets/language-icons/scala.js\")),\n width: 18,\n },\n dart: {\n pattern: /^dart$/,\n icon: lazy(() => import(\"../assets/language-icons/dart.js\")),\n width: 20,\n },\n ocaml: {\n pattern: /^ocaml$/,\n icon: lazy(() => import(\"../assets/language-icons/ocaml.js\")),\n width: 20,\n },\n c: {\n pattern: /^c$/,\n icon: lazy(() => import(\"../assets/language-icons/c.js\")),\n width: 20,\n },\n cpp: {\n pattern: /^(cpp|c\\+\\+)$/,\n icon: lazy(() => import(\"../assets/language-icons/cpp.js\")),\n width: 20,\n },\n commonlisp: {\n pattern: /^(clisp|common-lisp|lisp|cl|commonlisp)$/,\n icon: lazy(() => import(\"../assets/language-icons/commonlisp.js\")),\n width: 18,\n },\n elixir: {\n pattern: /^elixir$/,\n icon: lazy(() => import(\"../assets/language-icons/elixir.js\")),\n width: 18,\n },\n powershell: {\n pattern: /^(pshell|powershell|ps1)$/,\n icon: lazy(() => import(\"../assets/language-icons/powershell.js\")),\n width: 18,\n },\n};\n\nexport const LanguageIcon = ({ language }: { language?: string }) => {\n if (!language) return null;\n\n const Lang = Object.values(Languages).find((l) => l.pattern.test(language));\n\n if (!Lang) return null;\n\n const size = Lang.width ?? 18;\n\n return (\n <Suspense fallback={<div style={{ width: size, height: \"1em\" }} />}>\n <Lang.icon className=\"h-auto\" style={{ width: size }} />\n </Suspense>\n );\n};\n","import { CheckIcon, CopyIcon } from \"lucide-react\";\nimport { type ReactNode, useRef } from \"react\";\nimport { LanguageIcon } from \"../components/LanguageIcon.js\";\nimport { cn } from \"../util/cn.js\";\nimport { useCopyToClipboard } from \"../util/useCopyToClipboard.js\";\n\nexport type CodeBlockProps = {\n className?: string;\n noBackground?: boolean;\n wrapLines?: boolean;\n showLanguageIndicator?: boolean;\n language?: string;\n title?: string;\n children?: ReactNode;\n code?: ReactNode;\n showCopy?: \"hover\" | \"always\" | \"never\";\n disabled?: boolean;\n showLineNumbers?: boolean;\n};\n\nexport const CodeBlock = ({\n children,\n title = \"Code\",\n language,\n showCopy = \"hover\",\n showLanguageIndicator,\n showLineNumbers,\n ...props\n}: CodeBlockProps) => {\n const [isCopied, copyToClipboard] = useCopyToClipboard();\n const ref = useRef<HTMLDivElement>(null);\n\n if (!children) return null;\n\n return (\n <div\n className={cn(\n \"border code-block-wrapper relative group rounded-md overflow-hidden\",\n showLineNumbers && \"line-numbers\",\n props.className,\n )}\n >\n <div className=\"border-b flex items-center h-10 font-sans bg-black/2\">\n <div className=\"flex items-center gap-1.5 flex-1 text-sm w-full px-3\">\n <LanguageIcon language={language} />\n {title}\n </div>{\" \"}\n {showCopy !== \"never\" && (\n <button\n type=\"button\"\n aria-label=\"Copy code\"\n title=\"Copy code\"\n className={cn(\n \"transition px-2 py-2 mx-1 rounded-sm\",\n !isCopied && \"hover:bg-accent hover:brightness-95\",\n )}\n disabled={isCopied}\n onClick={() => {\n if (!ref.current?.textContent) return;\n\n copyToClipboard(ref.current.textContent);\n }}\n >\n {isCopied ? (\n <CheckIcon className=\"text-emerald-600\" size={14} />\n ) : (\n <CopyIcon size={14} />\n )}\n </button>\n )}\n </div>\n <div\n className=\"code-block text-sm not-prose scrollbar [&_code]:px-3 [&_code]:py-2\"\n ref={ref}\n >\n {children}\n </div>\n </div>\n );\n};\n"],"names":["Languages","lazy","LanguageIcon","language","Lang","l","size","jsx","Suspense","CodeBlock","children","title","showCopy","showLanguageIndicator","showLineNumbers","props","isCopied","copyToClipboard","useCopyToClipboard","ref","useRef","jsxs","cn","CheckIcon","CopyIcon"],"mappings":"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"}
|
|
@@ -1,41 +1,44 @@
|
|
|
1
1
|
import { j as e } from "../jsx-runtime-BzflLqGi.js";
|
|
2
|
-
import { CheckIcon as m, CopyIcon as
|
|
3
|
-
import { useState as
|
|
2
|
+
import { CheckIcon as m, CopyIcon as x } from "lucide-react";
|
|
3
|
+
import { useState as f, useRef as b } from "react";
|
|
4
4
|
import { c as t } from "../cn-dYga0KKN.js";
|
|
5
|
-
const
|
|
5
|
+
const g = ({
|
|
6
6
|
children: s,
|
|
7
|
+
fullHeight: n,
|
|
7
8
|
language: d,
|
|
8
9
|
showCopy: o = "hover",
|
|
9
|
-
showCopyText:
|
|
10
|
-
showLanguageIndicator:
|
|
10
|
+
showCopyText: a,
|
|
11
|
+
showLanguageIndicator: u = !0,
|
|
11
12
|
showLineNumbers: c,
|
|
12
|
-
...
|
|
13
|
+
...p
|
|
13
14
|
}) => {
|
|
14
|
-
const [
|
|
15
|
+
const [i, l] = f(!1), r = b(null);
|
|
15
16
|
return s ? /* @__PURE__ */ e.jsxs(
|
|
16
17
|
"div",
|
|
17
18
|
{
|
|
18
19
|
className: t(
|
|
19
20
|
"code-block-wrapper relative group bg-muted/50",
|
|
20
|
-
c && "line-numbers"
|
|
21
|
+
c && "line-numbers",
|
|
22
|
+
n && "h-full"
|
|
21
23
|
),
|
|
22
24
|
children: [
|
|
23
25
|
/* @__PURE__ */ e.jsx(
|
|
24
26
|
"div",
|
|
25
27
|
{
|
|
26
28
|
className: t(
|
|
27
|
-
"code-block text-sm not-prose scrollbar overflow-x-auto [&>pre]:p-2",
|
|
28
|
-
|
|
29
|
+
"code-block text-sm not-prose scrollbar [&>pre]:overflow-x-auto [&>pre]:p-2",
|
|
30
|
+
n && "h-full [&>pre]:h-full",
|
|
31
|
+
p.className
|
|
29
32
|
),
|
|
30
33
|
ref: r,
|
|
31
34
|
children: s
|
|
32
35
|
}
|
|
33
36
|
),
|
|
34
|
-
|
|
37
|
+
u && /* @__PURE__ */ e.jsx(
|
|
35
38
|
"span",
|
|
36
39
|
{
|
|
37
40
|
className: t(
|
|
38
|
-
"absolute top-1.5 end-3
|
|
41
|
+
"absolute top-1.5 end-3 text-[11px]! font-mono text-muted-foreground transition group-hover:opacity-0",
|
|
39
42
|
o === "always" && "hidden"
|
|
40
43
|
),
|
|
41
44
|
children: d
|
|
@@ -50,14 +53,14 @@ const j = ({
|
|
|
50
53
|
className: t(
|
|
51
54
|
"absolute top-2 end-2 p-2 transition hover:shadow-xs active:shadow-none active:inset-shadow-xs hover:outline outline-border rounded-md text-sm text-muted-foreground",
|
|
52
55
|
o === "hover" && "opacity-0 group-hover:opacity-100",
|
|
53
|
-
|
|
56
|
+
a && "flex gap-2 items-center font-medium"
|
|
54
57
|
),
|
|
55
|
-
disabled:
|
|
58
|
+
disabled: i,
|
|
56
59
|
onClick: () => {
|
|
57
|
-
r.current?.textContent && (
|
|
60
|
+
r.current?.textContent && (l(!0), navigator.clipboard.writeText(r.current.textContent), setTimeout(() => l(!1), 2e3));
|
|
58
61
|
},
|
|
59
62
|
children: [
|
|
60
|
-
|
|
63
|
+
i ? /* @__PURE__ */ e.jsx(
|
|
61
64
|
m,
|
|
62
65
|
{
|
|
63
66
|
className: "text-emerald-600",
|
|
@@ -65,8 +68,8 @@ const j = ({
|
|
|
65
68
|
strokeWidth: 2.5,
|
|
66
69
|
absoluteStrokeWidth: !0
|
|
67
70
|
}
|
|
68
|
-
) : /* @__PURE__ */ e.jsx(
|
|
69
|
-
|
|
71
|
+
) : /* @__PURE__ */ e.jsx(x, { size: 16 }),
|
|
72
|
+
a && "Copy"
|
|
70
73
|
]
|
|
71
74
|
}
|
|
72
75
|
)
|
|
@@ -75,6 +78,6 @@ const j = ({
|
|
|
75
78
|
) : null;
|
|
76
79
|
};
|
|
77
80
|
export {
|
|
78
|
-
|
|
81
|
+
g as EmbeddedCodeBlock
|
|
79
82
|
};
|
|
80
83
|
//# sourceMappingURL=EmbeddedCodeBlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmbeddedCodeBlock.js","sources":["../../src/lib/ui/EmbeddedCodeBlock.tsx"],"sourcesContent":["import { CheckIcon, CopyIcon } from \"lucide-react\";\nimport type { ReactNode } from \"react\";\nimport { useRef, useState } from \"react\";\nimport { cn } from \"../util/cn.js\";\n\nexport type CodeBlockProps = {\n className?: string;\n noBackground?: boolean;\n wrapLines?: boolean;\n showLanguageIndicator?: boolean;\n language?: string;\n children?: ReactNode;\n code?: ReactNode;\n showCopy?: \"hover\" | \"always\" | \"never\";\n showCopyText?: boolean;\n disabled?: boolean;\n showLineNumbers?: boolean;\n};\n\nexport const EmbeddedCodeBlock = ({\n children,\n language,\n showCopy = \"hover\",\n showCopyText,\n showLanguageIndicator = true,\n showLineNumbers,\n ...props\n}: CodeBlockProps) => {\n const [isCopied, setIsCopied] = useState(false);\n const ref = useRef<HTMLDivElement>(null);\n\n if (!children) return null;\n\n return (\n <div\n className={cn(\n \"code-block-wrapper relative group bg-muted/50\",\n showLineNumbers && \"line-numbers\",\n )}\n >\n <div\n className={cn(\n \"code-block text-sm not-prose scrollbar overflow-x-auto [&>pre]:p-2\",\n props.className,\n )}\n ref={ref}\n >\n {children}\n </div>\n {showLanguageIndicator && (\n <span\n className={cn(\n \"absolute top-1.5 end-3
|
|
1
|
+
{"version":3,"file":"EmbeddedCodeBlock.js","sources":["../../src/lib/ui/EmbeddedCodeBlock.tsx"],"sourcesContent":["import { CheckIcon, CopyIcon } from \"lucide-react\";\nimport type { ReactNode } from \"react\";\nimport { useRef, useState } from \"react\";\nimport { cn } from \"../util/cn.js\";\n\nexport type CodeBlockProps = {\n className?: string;\n noBackground?: boolean;\n wrapLines?: boolean;\n showLanguageIndicator?: boolean;\n language?: string;\n children?: ReactNode;\n code?: ReactNode;\n showCopy?: \"hover\" | \"always\" | \"never\";\n showCopyText?: boolean;\n disabled?: boolean;\n showLineNumbers?: boolean;\n};\n\nexport const EmbeddedCodeBlock = ({\n children,\n fullHeight,\n language,\n showCopy = \"hover\",\n showCopyText,\n showLanguageIndicator = true,\n showLineNumbers,\n ...props\n}: CodeBlockProps & { fullHeight?: boolean }) => {\n const [isCopied, setIsCopied] = useState(false);\n const ref = useRef<HTMLDivElement>(null);\n\n if (!children) return null;\n\n return (\n <div\n className={cn(\n \"code-block-wrapper relative group bg-muted/50\",\n showLineNumbers && \"line-numbers\",\n fullHeight && \"h-full\",\n )}\n >\n <div\n className={cn(\n \"code-block text-sm not-prose scrollbar [&>pre]:overflow-x-auto [&>pre]:p-2\",\n fullHeight && \"h-full [&>pre]:h-full\",\n props.className,\n )}\n ref={ref}\n >\n {children}\n </div>\n {showLanguageIndicator && (\n <span\n className={cn(\n \"absolute top-1.5 end-3 text-[11px]! font-mono text-muted-foreground transition group-hover:opacity-0\",\n showCopy === \"always\" && \"hidden\",\n )}\n >\n {language}\n </span>\n )}\n {showCopy !== \"never\" && (\n <button\n type=\"button\"\n aria-label=\"Copy code\"\n title=\"Copy code\"\n className={cn(\n \"absolute top-2 end-2 p-2 transition hover:shadow-xs active:shadow-none active:inset-shadow-xs hover:outline outline-border rounded-md text-sm text-muted-foreground\",\n showCopy === \"hover\" && \"opacity-0 group-hover:opacity-100\",\n showCopyText && \"flex gap-2 items-center font-medium\",\n )}\n disabled={isCopied}\n onClick={() => {\n if (!ref.current?.textContent) return;\n\n setIsCopied(true);\n void navigator.clipboard.writeText(ref.current.textContent);\n setTimeout(() => setIsCopied(false), 2000);\n }}\n >\n {isCopied ? (\n <CheckIcon\n className=\"text-emerald-600\"\n size={16}\n strokeWidth={2.5}\n absoluteStrokeWidth\n />\n ) : (\n <CopyIcon size={16} />\n )}\n {showCopyText && \"Copy\"}\n </button>\n )}\n </div>\n );\n};\n"],"names":["EmbeddedCodeBlock","children","fullHeight","language","showCopy","showCopyText","showLanguageIndicator","showLineNumbers","props","isCopied","setIsCopied","useState","ref","useRef","jsxs","cn","jsx","CheckIcon","CopyIcon"],"mappings":";;;;AAmBO,MAAMA,IAAoB,CAAC;AAAA,EAChC,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,cAAAC;AAAA,EACA,uBAAAC,IAAwB;AAAA,EACxB,iBAAAC;AAAA,EACA,GAAGC;AACL,MAAiD;AAC/C,QAAM,CAACC,GAAUC,CAAW,IAAIC,EAAS,EAAK,GACxCC,IAAMC,EAAuB,IAAI;AAEvC,SAAKZ,IAGHa,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAR,KAAmB;AAAA,QACnBL,KAAc;AAAA,MAAA;AAAA,MAGhB,UAAA;AAAA,QAAAc,gBAAAA,EAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAWD;AAAA,cACT;AAAA,cACAb,KAAc;AAAA,cACdM,EAAM;AAAA,YAAA;AAAA,YAER,KAAAI;AAAA,YAEC,UAAAX;AAAA,UAAA;AAAA,QAAA;AAAA,QAEFK,KACCU,gBAAAA,EAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAWD;AAAA,cACT;AAAA,cACAX,MAAa,YAAY;AAAA,YAAA;AAAA,YAG1B,UAAAD;AAAA,UAAA;AAAA,QAAA;AAAA,QAGJC,MAAa,WACZU,gBAAAA,EAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,MAAK;AAAA,YACL,cAAW;AAAA,YACX,OAAM;AAAA,YACN,WAAWC;AAAA,cACT;AAAA,cACAX,MAAa,WAAW;AAAA,cACxBC,KAAgB;AAAA,YAAA;AAAA,YAElB,UAAUI;AAAA,YACV,SAAS,MAAM;AACb,cAAKG,EAAI,SAAS,gBAElBF,EAAY,EAAI,GACX,UAAU,UAAU,UAAUE,EAAI,QAAQ,WAAW,GAC1D,WAAW,MAAMF,EAAY,EAAK,GAAG,GAAI;AAAA,YAC3C;AAAA,YAEC,UAAA;AAAA,cAAAD,IACCO,gBAAAA,EAAAA;AAAAA,gBAACC;AAAA,gBAAA;AAAA,kBACC,WAAU;AAAA,kBACV,MAAM;AAAA,kBACN,aAAa;AAAA,kBACb,qBAAmB;AAAA,gBAAA;AAAA,cAAA,IAGrBD,gBAAAA,EAAAA,IAACE,GAAA,EAAS,MAAM,GAAA,CAAI;AAAA,cAErBb,KAAgB;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MACnB;AAAA,IAAA;AAAA,EAAA,IA5DgB;AAgExB;"}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { j as e } from "../jsx-runtime-BzflLqGi.js";
|
|
2
|
-
import { Badge as
|
|
3
|
-
import { Card as
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
return
|
|
7
|
-
/* @__PURE__ */ e.jsxs(
|
|
8
|
-
/* @__PURE__ */ e.jsx(
|
|
9
|
-
/* @__PURE__ */ e.jsx(
|
|
2
|
+
import { Badge as n } from "./Badge.js";
|
|
3
|
+
import { Card as t, CardContent as d, CardHeader as a, CardTitle as c, CardDescription as m } from "./Card.js";
|
|
4
|
+
const j = ({ component: i }) => {
|
|
5
|
+
const s = i.__docgenInfo;
|
|
6
|
+
return s ? /* @__PURE__ */ e.jsx(t, { className: "not-prose", children: /* @__PURE__ */ e.jsxs(d, { className: "p-0", children: [
|
|
7
|
+
/* @__PURE__ */ e.jsxs(a, { className: "border-b mb-1 px-4 py-5", children: [
|
|
8
|
+
/* @__PURE__ */ e.jsx(c, { children: "Component Properties" }),
|
|
9
|
+
/* @__PURE__ */ e.jsx(m, { children: "The properties of the component." })
|
|
10
10
|
] }),
|
|
11
|
-
/* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-[1fr_auto_auto] gap-2 divide-y", children: Object.entries(
|
|
11
|
+
/* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-[1fr_auto_auto] gap-2 divide-y -mx-4 px-4", children: Object.entries(s.props).map(([o, r]) => /* @__PURE__ */ e.jsxs(
|
|
12
12
|
"div",
|
|
13
13
|
{
|
|
14
|
-
className: "px-
|
|
14
|
+
className: "px-4 pb-2 col-span-full grid grid-cols-subgrid",
|
|
15
15
|
children: [
|
|
16
16
|
/* @__PURE__ */ e.jsx("span", { className: "font-medium text-primary", children: o }),
|
|
17
|
-
/* @__PURE__ */ e.jsx("div", { children:
|
|
18
|
-
/* @__PURE__ */ e.jsx("div", { children: typeof
|
|
17
|
+
/* @__PURE__ */ e.jsx("div", { children: r.required && /* @__PURE__ */ e.jsx(n, { className: "ml-2 font-mono", children: "required" }) }),
|
|
18
|
+
/* @__PURE__ */ e.jsx("div", { children: typeof r.type == "object" && r.type.name && /* @__PURE__ */ e.jsx(n, { className: "ml-2 font-mono", variant: "muted", children: r.type.name }) })
|
|
19
19
|
]
|
|
20
20
|
},
|
|
21
21
|
o
|
|
@@ -23,6 +23,6 @@ const m = ({ component: n }) => {
|
|
|
23
23
|
] }) }) : null;
|
|
24
24
|
};
|
|
25
25
|
export {
|
|
26
|
-
|
|
26
|
+
j as ReactComponentDoc
|
|
27
27
|
};
|
|
28
28
|
//# sourceMappingURL=ReactComponentDoc.js.map
|