Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
746a449
chore(deps): upgrade next to 16.3.1, its optimizer no longer deletes …
waleedlatif1 Aug 17, 2026
d152fad
chore(deps): bump js-yaml to 4.3.1 in sim-cli and drop the aged-out r…
waleedlatif1 Aug 17, 2026
ef225f9
fix(connectors): index Office documents and PDFs from SharePoint and …
waleedlatif1 Aug 17, 2026
ae21476
fix(cli): resolve findings from a full command-surface audit (#6788)
waleedlatif1 Aug 17, 2026
c8f559a
fix(workflows,connectors): close pre-merge audit findings (#6783)
waleedlatif1 Aug 17, 2026
1d43639
fix(files): serve mothership chat attachments stored under a workspac…
icecrasher321 Aug 17, 2026
60097c8
fix(cli): default to the host that serves the API (#6791)
waleedlatif1 Aug 17, 2026
38075ad
fix(sap_concur): align the integration with SAP Concur's documented A…
waleedlatif1 Aug 17, 2026
5c37778
fix(cli): identify the CLI to the API and name the remedy on every ke…
waleedlatif1 Aug 17, 2026
fe4480d
fix(cli): keep a path prefix in the login URLs (#6793)
waleedlatif1 Aug 17, 2026
0c34e69
feat(files): upload and safely extract ZIP archives (#6782)
j15z Aug 18, 2026
aa367a4
fix(sap_concur): HMAC the token cache key and wire the sendback comme…
waleedlatif1 Aug 18, 2026
3abac09
fix(cli): name SIM_CONFIG_DIR in help, and fix the similarity score w…
waleedlatif1 Aug 18, 2026
0b4d341
feat(secrets): add optional descriptions to workspace secrets (#6796)
waleedlatif1 Aug 18, 2026
0e84e92
fix(cli): bound, trace, and explain the requests the CLI makes (#6798)
waleedlatif1 Aug 18, 2026
d17a11f
feat(jotform): trigger a workflow on every new form submission (#6802)
waleedlatif1 Aug 18, 2026
9dc828f
fix(email): greet SMTP relays with a qualified hostname instead of [1…
waleedlatif1 Aug 18, 2026
43821e2
improvement(files): make the row the documented owner of module conte…
icecrasher321 Aug 18, 2026
42cee27
fix(forking): stop a parent re-pick blanking a dependent's stored tar…
waleedlatif1 Aug 18, 2026
edc25aa
docs(helm): document null as the way to remove an inherited env key (…
waleedlatif1 Aug 18, 2026
51f1d45
perf(table): collapse sequential round trips on the table read and wr…
waleedlatif1 Aug 18, 2026
34aac38
test(table): pin the row-write behavior the suite could not fail on (…
waleedlatif1 Aug 18, 2026
c86c084
fix(credential-groups): pin the clock in the enrollment tests (#6812)
waleedlatif1 Aug 18, 2026
c17043a
improvement(docs): align code blocks with the platform design system …
waleedlatif1 Aug 18, 2026
c5a9b6a
feat(secrets): let mship add secret descriptions (#6814)
Sg312 Aug 18, 2026
1c69372
feat(cli): follow a run, wait for one, and tail the log (#6813)
waleedlatif1 Aug 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .agents/skills/migrate-application-operation/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -317,7 +317,7 @@ Run at minimum:
```bash
bunx vitest run <focused test files>
bunx biome check <changed source and test files>
bunx turbo run type-check --filter=sim --filter=@sim/auth
bunx turbo run type-check --filter=@sim/app --filter=@sim/auth
bun run check:api-validation:strict
git diff --check
```
Expand Down
34 changes: 34 additions & 0 deletions apps/docs/app/[lang]/[[...slug]]/page.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import type React from 'react'
import { getHighlighter, highlight } from 'fumadocs-core/highlight'
import type { Root } from 'fumadocs-core/page-tree'
import { findNeighbour } from 'fumadocs-core/page-tree'
import type { ApiPageProps } from 'fumadocs-openapi/ui'
Expand All @@ -17,6 +18,8 @@ import { Heading } from '@/components/ui/heading'
import { ResponseSection } from '@/components/ui/response-section'
import { i18n } from '@/lib/i18n'
import { getApiSpecContent, getAuthenticatedCodeSamples, openapi } from '@/lib/openapi'
import { curlJsonBodyGrammar } from '@/lib/shiki-curl-json'
import { simShikiOptions } from '@/lib/shiki-theme'
import { type PageData, source } from '@/lib/source'
import { DOCS_BASE_URL } from '@/lib/urls'

Expand Down Expand Up @@ -69,9 +72,40 @@ function stripLocalePrefix(url: string, lang: string): string {
return url
}

/**
* Renders the API reference's request and response samples through the docs' own `CodeBlock`
* rather than fumadocs-openapi's built-in one, so those blocks get the emcn copy control
* instead of fumadocs' lucide clipboard. Mirrors the default renderer — same `highlight` call,
* same `Pre` component, same `my-0` — differing only in which shell wraps the result.
*
* One asymmetry: `highlight` resolves fumadocs' shared `defaultShikiFactory`, while the renderer
* this replaces uses whatever `shiki` factory the page was configured with. They are the same
* object because that factory is also the default; passing a custom one would be honored on API
* markdown and ignored here.
*/
async function ApiCodeBlock({ lang, code }: { lang: string; code: string }) {
// Registers the injection on the shared highlighter `highlight` resolves; an injection is a
// property of the highlighter, not a per-call option. Idempotent — already-loaded grammars are
// skipped.
await getHighlighter('js', { langs: [curlJsonBodyGrammar] })
return (
<CodeBlock className='my-0'>
{await highlight(code, { lang, ...simShikiOptions, components: { pre: Pre } })}
</CodeBlock>
)
}

const APIPage = createAPIPage(openapi, {
renderCodeBlock: (props) => <ApiCodeBlock {...props} />,
playground: { enabled: false },
generateCodeSamples: getAuthenticatedCodeSamples,
/**
* fumadocs-openapi highlights its request and response samples through its own Shiki
* instance, not the MDX pipeline, so it does not inherit `source.config.ts`. Left alone,
* every API reference page renders `github-light` / `github-dark` while the rest of the docs
* render the platform palette.
*/
shikiOptions: simShikiOptions,
client: {
operation: { APIExampleSelector },
},
Expand Down
14 changes: 2 additions & 12 deletions apps/docs/app/[lang]/layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import type { ReactNode } from 'react'
import { defineI18nUI } from 'fumadocs-ui/i18n'
import { DocsLayout } from 'fumadocs-ui/layouts/docs'
import { RootProvider } from 'fumadocs-ui/provider/next'
import { Geist_Mono, Inter } from 'next/font/google'
import { Inter } from 'next/font/google'
import { ThemeProvider } from 'next-themes'
import {
SidebarFolder,
Expand All @@ -25,12 +25,6 @@ const inter = Inter({
display: 'swap',
})

const geistMono = Geist_Mono({
subsets: ['latin'],
variable: '--font-geist-mono',
display: 'swap',
})

const { provider } = defineI18nUI(i18n, {
translations: {
en: {
Expand Down Expand Up @@ -85,11 +79,7 @@ export default async function Layout({ children, params }: LayoutProps) {
}

return (
<html
lang={lang}
className={`${inter.variable} ${geistMono.variable} ${season.variable}`}
suppressHydrationWarning
>
<html lang={lang} className={`${inter.variable} ${season.variable}`} suppressHydrationWarning>
<head>
<script
id='website-json-ld'
Expand Down
Loading
Loading