@lukoweb/apitogo 0.1.24 → 0.1.38
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/README.md +92 -0
- package/cli.js +13 -13
- package/client.d.ts +8 -8
- package/dist/cli/cli.js +1117 -624
- package/dist/declarations/config/config.d.ts +4 -0
- package/dist/declarations/config/loader.d.ts +2 -0
- package/dist/declarations/config/resolve-modules.d.ts +34 -0
- package/dist/declarations/config/validators/InputNavigationSchema.d.ts +7 -7
- package/dist/declarations/config/validators/ModulesSchema.d.ts +417 -0
- package/dist/declarations/config/validators/ZudokuConfig.d.ts +123 -4
- package/dist/declarations/index.d.ts +3 -1
- package/dist/declarations/lib/authentication/components/ProductionUnlockPage.d.ts +1 -0
- package/dist/declarations/lib/authentication/hook.d.ts +3 -19
- package/dist/declarations/lib/authentication/providers/dev-portal-constants.d.ts +16 -0
- package/dist/declarations/lib/authentication/providers/dev-portal-utils.d.ts +9 -0
- package/dist/declarations/lib/authentication/providers/dev-portal.d.ts +39 -0
- package/dist/declarations/lib/authentication/state.d.ts +12 -26
- package/dist/declarations/lib/components/LandingLayout.d.ts +4 -0
- package/dist/declarations/lib/components/index.d.ts +2 -0
- package/dist/declarations/lib/plugins/api-keys/index.d.ts +2 -1
- package/dist/flat-config.d.ts +209 -24
- package/docs/components/alert.mdx +130 -0
- package/docs/components/badge.mdx +70 -0
- package/docs/components/button.mdx +132 -0
- package/docs/components/callout.mdx +112 -0
- package/docs/components/card.mdx +104 -0
- package/docs/components/checkbox.mdx +72 -0
- package/docs/components/client-only.mdx +79 -0
- package/docs/components/code-tabs.mdx +179 -0
- package/docs/components/dialog.mdx +167 -0
- package/docs/components/head.mdx +200 -0
- package/docs/components/icons.mdx +27 -0
- package/docs/components/input.mdx +96 -0
- package/docs/components/label.mdx +86 -0
- package/docs/components/link.mdx +242 -0
- package/docs/components/markdown.mdx +151 -0
- package/docs/components/mermaid.mdx +81 -0
- package/docs/components/playground.mdx +87 -0
- package/docs/components/secret.mdx +79 -0
- package/docs/components/select.mdx +176 -0
- package/docs/components/shadcn.mdx +73 -0
- package/docs/components/slider.mdx +108 -0
- package/docs/components/slot.mdx +119 -0
- package/docs/components/stepper.mdx +138 -0
- package/docs/components/switch.mdx +96 -0
- package/docs/components/syntax-highlight.mdx +602 -0
- package/docs/components/textarea.mdx +78 -0
- package/docs/components/tooltip.mdx +195 -0
- package/docs/components/typography.mdx +61 -0
- package/docs/concepts/auth-provider-api-identities.md +109 -0
- package/docs/configuration/ai-assistants.md +65 -0
- package/docs/configuration/api-catalog.md +109 -0
- package/docs/configuration/api-reference.md +397 -0
- package/docs/configuration/authentication-auth0.md +174 -0
- package/docs/configuration/authentication-azure-ad.md +238 -0
- package/docs/configuration/authentication-clerk.md +110 -0
- package/docs/configuration/authentication-firebase.md +62 -0
- package/docs/configuration/authentication-pingfederate.md +136 -0
- package/docs/configuration/authentication-supabase.md +226 -0
- package/docs/configuration/authentication.md +231 -0
- package/docs/configuration/build-configuration.mdx +147 -0
- package/docs/configuration/docs.md +282 -0
- package/docs/configuration/footer.mdx +214 -0
- package/docs/configuration/llms.md +90 -0
- package/docs/configuration/make-config.mdx +90 -0
- package/docs/configuration/navigation.mdx +422 -0
- package/docs/configuration/overview.md +380 -0
- package/docs/configuration/protected-routes.md +150 -0
- package/docs/configuration/search.md +163 -0
- package/docs/configuration/sentry.mdx +44 -0
- package/docs/configuration/site.md +124 -0
- package/docs/configuration/slots.mdx +125 -0
- package/docs/configuration/vite-config.md +18 -0
- package/docs/custom-plugins.md +285 -0
- package/docs/customization/colors-theme.mdx +276 -0
- package/docs/customization/fonts.md +110 -0
- package/docs/deploy/apache-nginx.md +41 -0
- package/docs/deploy/apitogo.md +139 -0
- package/docs/deploy/cloudflare-pages.md +75 -0
- package/docs/deploy/direct-upload.md +18 -0
- package/docs/deploy/github-pages.md +50 -0
- package/docs/deploy/vercel.md +103 -0
- package/docs/deployment.md +21 -0
- package/docs/extending/events.md +124 -0
- package/docs/guides/custom-pages.md +106 -0
- package/docs/guides/environment-variables.md +99 -0
- package/docs/guides/managing-api-keys-and-identities.md +172 -0
- package/docs/guides/mermaid.mdx +70 -0
- package/docs/guides/navigation-migration.md +87 -0
- package/docs/guides/navigation-rules.mdx +203 -0
- package/docs/guides/processors.mdx +234 -0
- package/docs/guides/static-files.md +55 -0
- package/docs/guides/transforming-examples.md +156 -0
- package/docs/guides/using-multiple-apis.md +87 -0
- package/docs/markdown/admonitions.md +128 -0
- package/docs/markdown/code-blocks.md +196 -0
- package/docs/markdown/frontmatter.md +173 -0
- package/docs/markdown/mdx.md +68 -0
- package/docs/markdown/overview.md +275 -0
- package/docs/plugins.md +5 -0
- package/docs/quickstart.md +87 -0
- package/docs/writing.mdx +72 -0
- package/package.json +170 -116
- package/src/app/ZuploBuildConfig.ts +36 -36
- package/src/app/defaultTheme.css +77 -77
- package/src/app/demo-cdn.html +37 -37
- package/src/app/demo.html +21 -21
- package/src/app/demo.tsx +77 -77
- package/src/app/entry.client.tsx +118 -118
- package/src/app/entry.server.tsx +160 -160
- package/src/app/env.ts +40 -40
- package/src/app/font.geist.css +73 -73
- package/src/app/main.css +390 -390
- package/src/app/main.tsx +8 -1
- package/src/app/polyfills.ts +47 -47
- package/src/app/processRoutes.tsx +51 -25
- package/src/app/sentry.ts +24 -24
- package/src/app/standalone.html +23 -23
- package/src/app/standalone.tsx +60 -60
- package/src/app/utils/createRedirectRoutes.ts +11 -11
- package/src/config/config.ts +32 -0
- package/src/config/create-plugin.ts +71 -71
- package/src/config/file-exists.ts +6 -6
- package/src/config/loader.ts +11 -1
- package/src/config/resolve-modules.ts +260 -0
- package/src/config/validators/BuildSchema.ts +95 -95
- package/src/config/validators/HeaderNavigationSchema.ts +41 -41
- package/src/config/validators/InputNavigationSchema.test-d.ts +178 -178
- package/src/config/validators/InputNavigationSchema.ts +206 -206
- package/src/config/validators/ModulesSchema.ts +312 -0
- package/src/config/validators/ProtectedRoutesSchema.ts +35 -35
- package/src/config/validators/ZudokuConfig.ts +766 -729
- package/src/config/validators/auth.ts +3 -3
- package/src/config/validators/reason-codes.ts +7 -7
- package/src/env.d.ts +11 -11
- package/src/index.ts +31 -0
- package/src/lib/MissingIcon.tsx +22 -22
- package/src/lib/assets/language-icons/bun.tsx +50 -50
- package/src/lib/assets/language-icons/c.tsx +31 -31
- package/src/lib/assets/language-icons/commonlisp.tsx +22 -22
- package/src/lib/assets/language-icons/cpp.tsx +35 -35
- package/src/lib/assets/language-icons/csharp.tsx +35 -35
- package/src/lib/assets/language-icons/css.tsx +36 -36
- package/src/lib/assets/language-icons/dart.tsx +39 -39
- package/src/lib/assets/language-icons/elixir.tsx +19 -19
- package/src/lib/assets/language-icons/go.tsx +19 -19
- package/src/lib/assets/language-icons/graphql.tsx +19 -19
- package/src/lib/assets/language-icons/html.tsx +24 -24
- package/src/lib/assets/language-icons/java.tsx +35 -35
- package/src/lib/assets/language-icons/javascript.tsx +11 -11
- package/src/lib/assets/language-icons/json.tsx +19 -19
- package/src/lib/assets/language-icons/kotlin.tsx +30 -30
- package/src/lib/assets/language-icons/markdown.tsx +19 -19
- package/src/lib/assets/language-icons/mdx.tsx +23 -23
- package/src/lib/assets/language-icons/npm.tsx +15 -15
- package/src/lib/assets/language-icons/objectivec.tsx +23 -23
- package/src/lib/assets/language-icons/ocaml.tsx +34 -34
- package/src/lib/assets/language-icons/php.tsx +19 -19
- package/src/lib/assets/language-icons/pnpm.tsx +32 -32
- package/src/lib/assets/language-icons/powershell.tsx +27 -27
- package/src/lib/assets/language-icons/python.tsx +23 -23
- package/src/lib/assets/language-icons/react.tsx +21 -21
- package/src/lib/assets/language-icons/ruby.tsx +19 -19
- package/src/lib/assets/language-icons/rust.tsx +19 -19
- package/src/lib/assets/language-icons/scala.tsx +19 -19
- package/src/lib/assets/language-icons/shell.tsx +19 -19
- package/src/lib/assets/language-icons/swift.tsx +19 -19
- package/src/lib/assets/language-icons/toml.tsx +23 -23
- package/src/lib/assets/language-icons/typescript.tsx +23 -23
- package/src/lib/assets/language-icons/xml.tsx +19 -19
- package/src/lib/assets/language-icons/yaml.tsx +23 -23
- package/src/lib/assets/language-icons/yarn.tsx +17 -17
- package/src/lib/assets/language-icons/zig.tsx +32 -32
- package/src/lib/auth/issuer.ts +34 -31
- package/src/lib/authentication/AuthenticationPlugin.tsx +33 -33
- package/src/lib/authentication/authentication.ts +48 -48
- package/src/lib/authentication/components/OAuthErrorPage.tsx +197 -197
- package/src/lib/authentication/components/ProductionUnlockPage.tsx +27 -0
- package/src/lib/authentication/components/SignOut.tsx +15 -15
- package/src/lib/authentication/constants.ts +1 -1
- package/src/lib/authentication/errors.ts +34 -34
- package/src/lib/authentication/hook.ts +141 -139
- package/src/lib/authentication/providers/auth0.tsx +91 -91
- package/src/lib/authentication/providers/azureb2c.tsx +223 -223
- package/src/lib/authentication/providers/dev-portal-constants.ts +21 -0
- package/src/lib/authentication/providers/dev-portal-utils.ts +107 -0
- package/src/lib/authentication/providers/dev-portal.tsx +270 -0
- package/src/lib/authentication/providers/firebase.tsx +486 -486
- package/src/lib/authentication/providers/openid.tsx +516 -516
- package/src/lib/authentication/providers/supabase.tsx +412 -412
- package/src/lib/authentication/providers/util.ts +26 -26
- package/src/lib/authentication/state.ts +179 -91
- package/src/lib/authentication/ui/icons/Apple.tsx +10 -10
- package/src/lib/authentication/ui/icons/Facebook.tsx +15 -15
- package/src/lib/authentication/ui/icons/Github.tsx +16 -16
- package/src/lib/authentication/ui/icons/Google.tsx +16 -16
- package/src/lib/authentication/ui/icons/Microsoft.tsx +12 -12
- package/src/lib/authentication/ui/icons/X.tsx +10 -10
- package/src/lib/authentication/utils/relativeRedirectUrl.ts +16 -16
- package/src/lib/components/AnchorLink.tsx +24 -24
- package/src/lib/components/Banner.tsx +52 -52
- package/src/lib/components/Bootstrap.tsx +77 -77
- package/src/lib/components/BuildCheck.tsx +87 -87
- package/src/lib/components/CategoryHeading.tsx +19 -19
- package/src/lib/components/ClientOnly.tsx +19 -19
- package/src/lib/components/ErrorPage.tsx +26 -26
- package/src/lib/components/Footer.tsx +140 -140
- package/src/lib/components/Framed.tsx +51 -51
- package/src/lib/components/Header.tsx +11 -3
- package/src/lib/components/HeaderNavigation.tsx +148 -148
- package/src/lib/components/Heading.tsx +84 -84
- package/src/lib/components/InlineCode.tsx +15 -15
- package/src/lib/components/LandingLayout.tsx +21 -0
- package/src/lib/components/LanguageIcon.tsx +199 -199
- package/src/lib/components/Markdown.tsx +55 -55
- package/src/lib/components/Meta.tsx +46 -46
- package/src/lib/components/MobileTopNavigation.tsx +11 -3
- package/src/lib/components/NotFoundPage.tsx +37 -37
- package/src/lib/components/PageProgress.tsx +28 -28
- package/src/lib/components/PagefindSearchMeta.tsx +14 -14
- package/src/lib/components/Pagination.tsx +44 -44
- package/src/lib/components/PathRenderer.tsx +61 -61
- package/src/lib/components/PluginHeads.tsx +17 -17
- package/src/lib/components/Search.tsx +70 -70
- package/src/lib/components/Slot.tsx +64 -64
- package/src/lib/components/Spinner.tsx +5 -5
- package/src/lib/components/StatusPage.tsx +96 -96
- package/src/lib/components/ThemeSwitch.tsx +49 -49
- package/src/lib/components/Typography.tsx +12 -12
- package/src/lib/components/Zudoku.tsx +106 -106
- package/src/lib/components/cache.ts +27 -27
- package/src/lib/components/context/RenderContext.ts +11 -11
- package/src/lib/components/context/RouterEventsEmitter.tsx +19 -19
- package/src/lib/components/context/SlotProvider.tsx +149 -149
- package/src/lib/components/context/ViewportAnchorContext.tsx +137 -137
- package/src/lib/components/context/ZudokuContext.ts +140 -140
- package/src/lib/components/context/ZudokuProvider.tsx +22 -22
- package/src/lib/components/context/ZudokuReactContext.tsx +17 -17
- package/src/lib/components/index.ts +2 -0
- package/src/lib/components/navigation/Navigation.tsx +51 -51
- package/src/lib/components/navigation/NavigationBadge.tsx +48 -48
- package/src/lib/components/navigation/NavigationFilterContext.tsx +28 -28
- package/src/lib/components/navigation/NavigationWrapper.tsx +49 -49
- package/src/lib/components/navigation/Toc.tsx +137 -137
- package/src/lib/components/navigation/ZudokuLogo.tsx +25 -25
- package/src/lib/components/navigation/ZuploLogo.tsx +14 -14
- package/src/lib/components/navigation/utils.ts +234 -234
- package/src/lib/core/RouteGuard.tsx +11 -1
- package/src/lib/core/ZudokuContext.ts +271 -271
- package/src/lib/core/plugins.ts +138 -138
- package/src/lib/core/react-query.ts +1 -1
- package/src/lib/core/router.ts +1 -1
- package/src/lib/core/transform-config.ts +67 -67
- package/src/lib/demo/DemoAnnouncement.tsx +17 -17
- package/src/lib/errors/ErrorAlert.tsx +28 -28
- package/src/lib/errors/RouterError.tsx +18 -18
- package/src/lib/errors/ServerError.tsx +5 -5
- package/src/lib/errors/TopLevelError.tsx +6 -6
- package/src/lib/hooks/index.ts +13 -13
- package/src/lib/hooks/useEvent.ts +41 -41
- package/src/lib/hooks/useHighlighter.ts +15 -15
- package/src/lib/hooks/useHotkey.ts +70 -70
- package/src/lib/icons.ts +2 -2
- package/src/lib/navigation/applyRules.ts +127 -127
- package/src/lib/navigation/pathMatcher.ts +81 -81
- package/src/lib/oas/graphql/circular.ts +69 -69
- package/src/lib/oas/graphql/constants.ts +2 -2
- package/src/lib/oas/graphql/index.ts +791 -791
- package/src/lib/oas/parser/dereference/index.ts +84 -84
- package/src/lib/oas/parser/dereference/resolveRef.ts +32 -32
- package/src/lib/oas/parser/index.ts +129 -129
- package/src/lib/oas/parser/schemas/v3.0.json +1489 -1489
- package/src/lib/oas/parser/schemas/v3.1.json +1298 -1298
- package/src/lib/oas/parser/upgrade/index.ts +174 -174
- package/src/lib/plugins/api-catalog/index.tsx +119 -119
- package/src/lib/plugins/api-keys/ProtectedRoute.tsx +33 -33
- package/src/lib/plugins/api-keys/index.tsx +274 -272
- package/src/lib/plugins/api-keys/settings/ApiKeyList.tsx +67 -67
- package/src/lib/plugins/custom-pages/index.tsx +32 -32
- package/src/lib/plugins/markdown/assets/ChatGPTLogo.tsx +11 -11
- package/src/lib/plugins/markdown/assets/ClaudeLogo.tsx +19 -19
- package/src/lib/plugins/markdown/index.tsx +62 -62
- package/src/lib/plugins/openapi/ColorizedParam.tsx +115 -115
- package/src/lib/plugins/openapi/Endpoint.tsx +85 -85
- package/src/lib/plugins/openapi/MCPEndpoint.tsx +273 -273
- package/src/lib/plugins/openapi/OasProvider.tsx +74 -74
- package/src/lib/plugins/openapi/OperationList.tsx +275 -275
- package/src/lib/plugins/openapi/ParamInfos.tsx +96 -96
- package/src/lib/plugins/openapi/ParameterList.tsx +53 -53
- package/src/lib/plugins/openapi/ParameterListItem.tsx +161 -161
- package/src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx +67 -67
- package/src/lib/plugins/openapi/SidecarBox.tsx +57 -57
- package/src/lib/plugins/openapi/SimpleSelect.tsx +46 -46
- package/src/lib/plugins/openapi/client/GraphQLClient.tsx +73 -73
- package/src/lib/plugins/openapi/client/GraphQLContext.tsx +16 -16
- package/src/lib/plugins/openapi/client/createServer.ts +35 -35
- package/src/lib/plugins/openapi/client/useCreateQuery.ts +44 -44
- package/src/lib/plugins/openapi/components/ConstValue.tsx +24 -24
- package/src/lib/plugins/openapi/components/NonHighlightedCode.tsx +22 -22
- package/src/lib/plugins/openapi/components/SelectOnClick.tsx +29 -29
- package/src/lib/plugins/openapi/context.tsx +16 -16
- package/src/lib/plugins/openapi/graphql/fragment-masking.ts +104 -104
- package/src/lib/plugins/openapi/graphql/gql.ts +95 -95
- package/src/lib/plugins/openapi/graphql/graphql.ts +835 -835
- package/src/lib/plugins/openapi/graphql/index.ts +2 -2
- package/src/lib/plugins/openapi/index.tsx +221 -221
- package/src/lib/plugins/openapi/interfaces.ts +100 -100
- package/src/lib/plugins/openapi/playground/Headers.tsx +6 -6
- package/src/lib/plugins/openapi/playground/PathParams.tsx +53 -53
- package/src/lib/plugins/openapi/playground/Spinner.tsx +87 -87
- package/src/lib/plugins/openapi/playground/createUrl.ts +25 -25
- package/src/lib/plugins/openapi/playground/fileUtils.ts +36 -36
- package/src/lib/plugins/openapi/playground/rememberedIdentity.ts +26 -26
- package/src/lib/plugins/openapi/playground/request-panel/UrlPath.tsx +31 -31
- package/src/lib/plugins/openapi/playground/request-panel/UrlQueryParams.tsx +29 -29
- package/src/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.ts +340 -340
- package/src/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.tsx +117 -117
- package/src/lib/plugins/openapi/playground/result-panel/convertToTypes.ts +36 -36
- package/src/lib/plugins/openapi/playground/serializeQueryParams.ts +125 -125
- package/src/lib/plugins/openapi/playground/useRememberSkipLoginDialog.tsx +23 -23
- package/src/lib/plugins/openapi/processors/removeExtensions.ts +29 -29
- package/src/lib/plugins/openapi/processors/removeParameters.ts +103 -103
- package/src/lib/plugins/openapi/processors/removePaths.ts +57 -57
- package/src/lib/plugins/openapi/processors/traverse.ts +1 -1
- package/src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx +39 -39
- package/src/lib/plugins/openapi/schema/UnionView.tsx +132 -132
- package/src/lib/plugins/openapi/schema/union-helpers.ts +123 -123
- package/src/lib/plugins/openapi/schema/utils.ts +49 -49
- package/src/lib/plugins/openapi/state.ts +36 -36
- package/src/lib/plugins/openapi/util/buildTagCategories.ts +54 -54
- package/src/lib/plugins/openapi/util/createHttpSnippet.ts +135 -135
- package/src/lib/plugins/openapi/util/createNavigationCategory.tsx +39 -39
- package/src/lib/plugins/openapi/util/generateSchemaExample.ts +191 -191
- package/src/lib/plugins/openapi/util/getRoutes.tsx +265 -265
- package/src/lib/plugins/openapi/util/methodColorMap.tsx +11 -11
- package/src/lib/plugins/openapi/util/methodToColor.ts +27 -27
- package/src/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.tsx +32 -32
- package/src/lib/plugins/openapi/util/useWarmupSchema.ts +23 -23
- package/src/lib/plugins/search-inkeep/index.tsx +108 -108
- package/src/lib/plugins/search-inkeep/inkeep.ts +24 -24
- package/src/lib/plugins/search-pagefind/get-results.tsx +74 -74
- package/src/lib/plugins/search-pagefind/index.tsx +21 -21
- package/src/lib/plugins/search-pagefind/types.ts +118 -118
- package/src/lib/shiki-constants.ts +24 -24
- package/src/lib/testing/index.tsx +146 -146
- package/src/lib/ui/Accordion.tsx +55 -55
- package/src/lib/ui/Alert.tsx +84 -84
- package/src/lib/ui/AlertDialog.tsx +195 -195
- package/src/lib/ui/AspectRatio.tsx +5 -5
- package/src/lib/ui/Badge.tsx +48 -48
- package/src/lib/ui/Breadcrumb.tsx +115 -115
- package/src/lib/ui/Button.tsx +65 -65
- package/src/lib/ui/ButtonGroup.tsx +80 -80
- package/src/lib/ui/Callout.tsx +113 -113
- package/src/lib/ui/Card.tsx +95 -95
- package/src/lib/ui/Carousel.tsx +259 -259
- package/src/lib/ui/Checkbox.tsx +28 -28
- package/src/lib/ui/CodeBlock.tsx +92 -92
- package/src/lib/ui/CodeTabPanel.tsx +13 -13
- package/src/lib/ui/CodeTabs.tsx +161 -161
- package/src/lib/ui/Collapsible.tsx +31 -31
- package/src/lib/ui/Dialog.tsx +138 -138
- package/src/lib/ui/DismissibleAlert.tsx +74 -74
- package/src/lib/ui/Drawer.tsx +121 -121
- package/src/lib/ui/DropdownMenu.tsx +254 -254
- package/src/lib/ui/EmbeddedCodeBlock.tsx +99 -99
- package/src/lib/ui/Form.tsx +176 -176
- package/src/lib/ui/Frame.tsx +81 -81
- package/src/lib/ui/HoverCard.tsx +26 -26
- package/src/lib/ui/Input.tsx +23 -23
- package/src/lib/ui/InputGroup.tsx +168 -168
- package/src/lib/ui/Item.tsx +213 -213
- package/src/lib/ui/Kbd.tsx +28 -28
- package/src/lib/ui/Label.tsx +23 -23
- package/src/lib/ui/NativeSelect.tsx +48 -48
- package/src/lib/ui/NavigationMenu.tsx +169 -169
- package/src/lib/ui/Pagination.tsx +115 -115
- package/src/lib/ui/Popover.tsx +28 -28
- package/src/lib/ui/Progress.tsx +25 -25
- package/src/lib/ui/RadioGroup.tsx +41 -41
- package/src/lib/ui/ReactComponentDoc.tsx +68 -68
- package/src/lib/ui/ScrollArea.tsx +45 -45
- package/src/lib/ui/Secret.tsx +133 -133
- package/src/lib/ui/Select.tsx +184 -184
- package/src/lib/ui/Separator.tsx +25 -25
- package/src/lib/ui/Skeleton.tsx +15 -15
- package/src/lib/ui/Slider.tsx +25 -25
- package/src/lib/ui/Stepper.tsx +8 -8
- package/src/lib/ui/Switch.tsx +26 -26
- package/src/lib/ui/SyntaxHighlight.tsx +54 -54
- package/src/lib/ui/Tabs.tsx +52 -52
- package/src/lib/ui/Textarea.tsx +22 -22
- package/src/lib/ui/Toggle.tsx +42 -42
- package/src/lib/ui/ToggleGroup.tsx +58 -58
- package/src/lib/ui/Tooltip.tsx +65 -65
- package/src/lib/ui/Value.tsx +42 -42
- package/src/lib/ui/util.tsx +8 -8
- package/src/lib/util/cn.ts +6 -6
- package/src/lib/util/createVariantComponent.tsx +61 -61
- package/src/lib/util/ensureArray.ts +3 -3
- package/src/lib/util/flattenAllOf.ts +72 -72
- package/src/lib/util/flattenAllOfProcessor.ts +74 -74
- package/src/lib/util/hastToJsx.tsx +67 -67
- package/src/lib/util/humanFileSize.ts +15 -15
- package/src/lib/util/invariant.ts +52 -52
- package/src/lib/util/joinUrl.ts +60 -60
- package/src/lib/util/logInit.ts +9 -9
- package/src/lib/util/objectEntries.ts +5 -5
- package/src/lib/util/os.ts +18 -18
- package/src/lib/util/pastellize.ts +25 -25
- package/src/lib/util/problemJson.ts +63 -63
- package/src/lib/util/readFrontmatter.ts +14 -14
- package/src/lib/util/renderIf.ts +4 -4
- package/src/lib/util/scrollIntoViewIfNeeded.ts +18 -18
- package/src/lib/util/slugify.ts +21 -21
- package/src/lib/util/syncZustandState.ts +22 -22
- package/src/lib/util/traverse.ts +70 -70
- package/src/lib/util/types.ts +7 -7
- package/src/lib/util/url.ts +18 -18
- package/src/lib/util/useCopyToClipboard.ts +17 -17
- package/src/lib/util/useExposedProps.tsx +27 -27
- package/src/lib/util/useIsomorphicLayoutEffect.ts +6 -6
- package/src/lib/util/useLatest.ts +18 -18
- package/src/lib/util/useOnScreen.ts +34 -34
- package/src/lib/util/useScrollToAnchor.ts +70 -70
- package/src/lib/util/useScrollToTop.ts +18 -18
- package/src/types.d.ts +57 -53
- package/src/vite/api/SchemaManager.ts +371 -371
- package/src/vite/api/schema-codegen.ts +163 -163
- package/src/vite/config.ts +5 -1
- package/src/vite/css/collect.ts +42 -42
- package/src/vite/css/plugin.ts +105 -105
- package/src/vite/debug.ts +18 -18
- package/src/vite/dev-portal-env.ts +93 -0
- package/src/vite/html.ts +54 -54
- package/src/vite/index.ts +2 -2
- package/src/vite/mdx/rehype-extract-toc-with-jsx-export.ts +19 -19
- package/src/vite/mdx/rehype-extract-toc-with-jsx.ts +70 -70
- package/src/vite/mdx/remark-code-tabs.ts +47 -47
- package/src/vite/mdx/remark-inject-filepath.ts +13 -13
- package/src/vite/mdx/remark-last-modified.ts +103 -103
- package/src/vite/mdx/remark-link-rewrite.ts +23 -23
- package/src/vite/mdx/remark-normalize-image-url.ts +15 -15
- package/src/vite/mdx/remark-static-generation.ts +149 -149
- package/src/vite/mdx/utils.ts +32 -32
- package/src/vite/output.ts +261 -261
- package/src/vite/package-root.ts +12 -12
- package/src/vite/pagefind-dev-index.ts +100 -100
- package/src/vite/plugin-api-keys.ts +6 -1
- package/src/vite/plugin-api.ts +4 -1
- package/src/vite/plugin-auth.ts +5 -1
- package/src/vite/plugin-component.ts +1 -1
- package/src/vite/plugin-config-reload.ts +49 -49
- package/src/vite/plugin-doc-metadata.ts +45 -45
- package/src/vite/plugin-docs.ts +4 -1
- package/src/vite/plugin-metadata.ts +30 -30
- package/src/vite/plugin-modules.ts +144 -0
- package/src/vite/plugin-shiki-register.ts +97 -97
- package/src/vite/plugin-theme.ts +399 -399
- package/src/vite/plugin.ts +2 -0
- package/src/vite/prerender/utils.ts +76 -76
- package/src/vite/prerender/worker.ts +118 -118
- package/src/vite/reporter.ts +34 -34
- package/src/vite/shadcn-registry.ts +48 -48
- package/src/vite/sitemap.ts +78 -78
- package/src/vite/ssr-templates/cloudflare.ts +19 -19
- package/src/vite/ssr-templates/node.ts +25 -25
- package/src/vite/ssr-templates/vercel.ts +22 -22
- package/src/vite/zuplo.ts +30 -30
- package/src/vite-env.d.ts +6 -6
- package/src/zuplo/enrich-with-zuplo-mcp.ts +168 -168
- package/src/zuplo/enrich-with-zuplo.ts +256 -256
- package/src/zuplo/policy-types.ts +46 -46
- package/src/zuplo/with-zuplo-processors.ts +36 -36
- package/src/zuplo/with-zuplo.ts +14 -14
- package/LICENSE.md +0 -18
- package/dist/declarations/lib/components/navigation/ZudokuLogo.d.ts +0 -6
package/dist/flat-config.d.ts
CHANGED
|
@@ -57,31 +57,35 @@ export type _Schema9 = (("Inter" | "Roboto" | "Open Sans" | "Poppins" | "Montser
|
|
|
57
57
|
url: string
|
|
58
58
|
fontFamily?: string
|
|
59
59
|
})
|
|
60
|
-
|
|
60
|
+
/**
|
|
61
|
+
* Whether this module is active in the application.
|
|
62
|
+
*/
|
|
63
|
+
export type _Schema15 = boolean
|
|
64
|
+
export type _Schema35 = ({
|
|
61
65
|
type: "url"
|
|
62
|
-
input: (string |
|
|
63
|
-
server?:
|
|
64
|
-
path?:
|
|
65
|
-
categories?:
|
|
66
|
-
options?:
|
|
66
|
+
input: (string | _Schema36[])
|
|
67
|
+
server?: _Schema37
|
|
68
|
+
path?: _Schema38
|
|
69
|
+
categories?: _Schema39
|
|
70
|
+
options?: _Schema41
|
|
67
71
|
} | {
|
|
68
72
|
type: "file"
|
|
69
|
-
input: (string | (string |
|
|
70
|
-
server?:
|
|
71
|
-
path?:
|
|
72
|
-
categories?:
|
|
73
|
-
options?:
|
|
73
|
+
input: (string | (string | _Schema36)[])
|
|
74
|
+
server?: _Schema37
|
|
75
|
+
path?: _Schema38
|
|
76
|
+
categories?: _Schema39
|
|
77
|
+
options?: _Schema41
|
|
74
78
|
} | {
|
|
75
79
|
type: "raw"
|
|
76
80
|
input: string
|
|
77
|
-
server?:
|
|
78
|
-
path?:
|
|
79
|
-
categories?:
|
|
80
|
-
options?:
|
|
81
|
+
server?: _Schema37
|
|
82
|
+
path?: _Schema38
|
|
83
|
+
categories?: _Schema39
|
|
84
|
+
options?: _Schema41
|
|
81
85
|
})
|
|
82
|
-
export type
|
|
83
|
-
export type
|
|
84
|
-
export type
|
|
86
|
+
export type _Schema37 = string
|
|
87
|
+
export type _Schema38 = string
|
|
88
|
+
export type _Schema39 = {
|
|
85
89
|
label: string
|
|
86
90
|
tags: string[]
|
|
87
91
|
}[]
|
|
@@ -301,6 +305,12 @@ export interface FlatZudokuConfig {
|
|
|
301
305
|
redirectToAfterSignUp?: string
|
|
302
306
|
redirectToAfterSignIn?: string
|
|
303
307
|
redirectToAfterSignOut?: string
|
|
308
|
+
} | {
|
|
309
|
+
type: "dev-portal"
|
|
310
|
+
apiBaseUrl?: string
|
|
311
|
+
redirectToAfterSignUp?: string
|
|
312
|
+
redirectToAfterSignIn?: string
|
|
313
|
+
redirectToAfterSignOut?: string
|
|
304
314
|
})
|
|
305
315
|
search?: ({
|
|
306
316
|
type: "inkeep"
|
|
@@ -353,8 +363,13 @@ export interface FlatZudokuConfig {
|
|
|
353
363
|
includeProtected?: boolean
|
|
354
364
|
}
|
|
355
365
|
}
|
|
356
|
-
|
|
357
|
-
|
|
366
|
+
modules?: {
|
|
367
|
+
docs?: _Schema14
|
|
368
|
+
landing?: _Schema16
|
|
369
|
+
userPanel?: _Schema23
|
|
370
|
+
}
|
|
371
|
+
apis?: (_Schema35 | _Schema35[])
|
|
372
|
+
catalogs?: (_Schema42 | _Schema42[])
|
|
358
373
|
apiKeys?: {
|
|
359
374
|
enabled: boolean
|
|
360
375
|
getConsumers?: unknown
|
|
@@ -382,7 +397,7 @@ export interface FlatZudokuConfig {
|
|
|
382
397
|
}
|
|
383
398
|
enableStatusPages?: boolean
|
|
384
399
|
defaults?: {
|
|
385
|
-
apis:
|
|
400
|
+
apis: _Schema41
|
|
386
401
|
examplesLanguage?: string
|
|
387
402
|
}
|
|
388
403
|
__pluginDirs?: string[]
|
|
@@ -432,12 +447,182 @@ export interface _Schema8 {
|
|
|
432
447
|
ring?: string
|
|
433
448
|
radius?: string
|
|
434
449
|
}
|
|
435
|
-
|
|
450
|
+
/**
|
|
451
|
+
* Documentation module — MD/MDX pages and OpenAPI reference.
|
|
452
|
+
*/
|
|
453
|
+
export interface _Schema14 {
|
|
454
|
+
enabled?: _Schema15
|
|
455
|
+
files?: (string | string[])
|
|
456
|
+
publishMarkdown?: boolean
|
|
457
|
+
defaultOptions?: {
|
|
458
|
+
toc?: boolean
|
|
459
|
+
copyPage?: boolean
|
|
460
|
+
disablePager?: boolean
|
|
461
|
+
showLastModified?: boolean
|
|
462
|
+
suggestEdit?: {
|
|
463
|
+
url: string
|
|
464
|
+
text?: string
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
llms?: {
|
|
468
|
+
llmsTxt?: boolean
|
|
469
|
+
llmsTxtFull?: boolean
|
|
470
|
+
includeProtected?: boolean
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
/**
|
|
474
|
+
* Landing page module — marketing or home page.
|
|
475
|
+
*/
|
|
476
|
+
export interface _Schema16 {
|
|
477
|
+
enabled?: _Schema15
|
|
478
|
+
/**
|
|
479
|
+
* Route path for the landing page.
|
|
480
|
+
*/
|
|
481
|
+
path?: string
|
|
482
|
+
/**
|
|
483
|
+
* Custom React component for the landing page.
|
|
484
|
+
*/
|
|
485
|
+
component?: {
|
|
486
|
+
[k: string]: unknown
|
|
487
|
+
}
|
|
488
|
+
/**
|
|
489
|
+
* Path to a custom landing page component file, relative to the project root.
|
|
490
|
+
*/
|
|
491
|
+
page?: string
|
|
492
|
+
/**
|
|
493
|
+
* Layout wrapper: landing (header + footer), default (docs layout), or none.
|
|
494
|
+
*/
|
|
495
|
+
layout?: ("default" | "landing" | "none")
|
|
496
|
+
content?: _Schema21
|
|
497
|
+
}
|
|
498
|
+
/**
|
|
499
|
+
* Default landing page content when no custom component is provided.
|
|
500
|
+
*/
|
|
501
|
+
export interface _Schema21 {
|
|
502
|
+
hero?: {
|
|
503
|
+
title?: string
|
|
504
|
+
subtitle?: string
|
|
505
|
+
description?: string
|
|
506
|
+
}
|
|
507
|
+
features?: {
|
|
508
|
+
title: string
|
|
509
|
+
description: string
|
|
510
|
+
}[]
|
|
511
|
+
primaryAction?: _Schema22
|
|
512
|
+
secondaryAction?: _Schema22
|
|
513
|
+
showPoweredBy?: boolean
|
|
514
|
+
}
|
|
515
|
+
export interface _Schema22 {
|
|
516
|
+
label: string
|
|
517
|
+
href: string
|
|
518
|
+
}
|
|
519
|
+
/**
|
|
520
|
+
* User panel module — authenticated user area with sub-modules.
|
|
521
|
+
*/
|
|
522
|
+
export interface _Schema23 {
|
|
523
|
+
enabled?: _Schema15
|
|
524
|
+
/**
|
|
525
|
+
* Base path prefix for user panel routes.
|
|
526
|
+
*/
|
|
527
|
+
basePath?: string
|
|
528
|
+
dashboard?: {
|
|
529
|
+
enabled?: _Schema15
|
|
530
|
+
/**
|
|
531
|
+
* Route path for the user dashboard.
|
|
532
|
+
*/
|
|
533
|
+
path?: string
|
|
534
|
+
/**
|
|
535
|
+
* Path to a custom page component file, relative to the project root.
|
|
536
|
+
*/
|
|
537
|
+
page?: string
|
|
538
|
+
/**
|
|
539
|
+
* Custom React component for this sub-module page.
|
|
540
|
+
*/
|
|
541
|
+
component?: {
|
|
542
|
+
[k: string]: unknown
|
|
543
|
+
}
|
|
544
|
+
content?: _Schema30
|
|
545
|
+
}
|
|
546
|
+
userManagement?: {
|
|
547
|
+
enabled?: _Schema15
|
|
548
|
+
routes?: {
|
|
549
|
+
login?: string
|
|
550
|
+
register?: string
|
|
551
|
+
profile?: string
|
|
552
|
+
logout?: string
|
|
553
|
+
}
|
|
554
|
+
/**
|
|
555
|
+
* Path to a custom page component file, relative to the project root.
|
|
556
|
+
*/
|
|
557
|
+
page?: string
|
|
558
|
+
/**
|
|
559
|
+
* Custom React component for this sub-module page.
|
|
560
|
+
*/
|
|
561
|
+
component?: {
|
|
562
|
+
[k: string]: unknown
|
|
563
|
+
}
|
|
564
|
+
content?: _Schema31
|
|
565
|
+
}
|
|
566
|
+
apiKeys?: {
|
|
567
|
+
enabled?: _Schema15
|
|
568
|
+
/**
|
|
569
|
+
* Route path for API key management.
|
|
570
|
+
*/
|
|
571
|
+
path?: string
|
|
572
|
+
}
|
|
573
|
+
plans?: {
|
|
574
|
+
enabled?: _Schema15
|
|
575
|
+
/**
|
|
576
|
+
* Route path for plans and subscription management.
|
|
577
|
+
*/
|
|
578
|
+
path?: string
|
|
579
|
+
/**
|
|
580
|
+
* Path to a custom page component file, relative to the project root.
|
|
581
|
+
*/
|
|
582
|
+
page?: string
|
|
583
|
+
/**
|
|
584
|
+
* Custom React component for this sub-module page.
|
|
585
|
+
*/
|
|
586
|
+
component?: {
|
|
587
|
+
[k: string]: unknown
|
|
588
|
+
}
|
|
589
|
+
content?: _Schema34
|
|
590
|
+
}
|
|
591
|
+
}
|
|
592
|
+
/**
|
|
593
|
+
* Default dashboard page content when no custom component is provided.
|
|
594
|
+
*/
|
|
595
|
+
export interface _Schema30 {
|
|
596
|
+
title?: string
|
|
597
|
+
subtitle?: string
|
|
598
|
+
description?: string
|
|
599
|
+
quickLinks?: _Schema22[]
|
|
600
|
+
}
|
|
601
|
+
/**
|
|
602
|
+
* Default profile page content when no custom component is provided.
|
|
603
|
+
*/
|
|
604
|
+
export interface _Schema31 {
|
|
605
|
+
title?: string
|
|
606
|
+
description?: string
|
|
607
|
+
}
|
|
608
|
+
/**
|
|
609
|
+
* Default plans page content when no custom component is provided.
|
|
610
|
+
*/
|
|
611
|
+
export interface _Schema34 {
|
|
612
|
+
title?: string
|
|
613
|
+
description?: string
|
|
614
|
+
tiers?: {
|
|
615
|
+
name: string
|
|
616
|
+
price?: string
|
|
617
|
+
description?: string
|
|
618
|
+
}[]
|
|
619
|
+
}
|
|
620
|
+
export interface _Schema36 {
|
|
436
621
|
path: string
|
|
437
622
|
input: string
|
|
438
623
|
label?: string
|
|
439
624
|
}
|
|
440
|
-
export interface
|
|
625
|
+
export interface _Schema41 {
|
|
441
626
|
examplesLanguage?: string
|
|
442
627
|
supportedLanguages?: {
|
|
443
628
|
value: string
|
|
@@ -454,7 +639,7 @@ export interface _Schema20 {
|
|
|
454
639
|
transformExamples?: unknown
|
|
455
640
|
generateCodeSnippet?: unknown
|
|
456
641
|
}
|
|
457
|
-
export interface
|
|
642
|
+
export interface _Schema42 {
|
|
458
643
|
path: string
|
|
459
644
|
label: string
|
|
460
645
|
items?: string[]
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Alert
|
|
3
|
+
sidebar_icon: triangle-alert
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
import { Alert, AlertDescription, AlertTitle } from "@lukoweb/apitogo/ui/Alert";
|
|
7
|
+
import { CheckCircle2Icon, TerminalIcon } from "@lukoweb/apitogo/icons";
|
|
8
|
+
import { ReactComponentDoc } from "@lukoweb/apitogo/ui/ReactComponentDoc";
|
|
9
|
+
|
|
10
|
+
An alert component for displaying important information to users with different severity levels.
|
|
11
|
+
|
|
12
|
+
## Import
|
|
13
|
+
|
|
14
|
+
```tsx
|
|
15
|
+
import { Alert, AlertDescription, AlertTitle } from "@lukoweb/apitogo/ui/Alert";
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Components
|
|
19
|
+
|
|
20
|
+
The Alert component consists of several sub-components:
|
|
21
|
+
|
|
22
|
+
- `Alert` - The main container
|
|
23
|
+
- `AlertTitle` - Title for the alert
|
|
24
|
+
- `AlertDescription` - Description content for the alert
|
|
25
|
+
|
|
26
|
+
## Default Alert
|
|
27
|
+
|
|
28
|
+
<Alert className="not-prose">
|
|
29
|
+
<TerminalIcon className="h-4 w-4" />
|
|
30
|
+
<AlertTitle>Heads up!</AlertTitle>
|
|
31
|
+
<AlertDescription>
|
|
32
|
+
You can add components and dependencies to your app using the cli.
|
|
33
|
+
</AlertDescription>
|
|
34
|
+
</Alert>
|
|
35
|
+
|
|
36
|
+
```tsx title="Alert"
|
|
37
|
+
<Alert>
|
|
38
|
+
<TerminalIcon className="h-4 w-4" />
|
|
39
|
+
<AlertTitle>Heads up!</AlertTitle>
|
|
40
|
+
<AlertDescription>
|
|
41
|
+
You can add components and dependencies to your app using the cli.
|
|
42
|
+
</AlertDescription>
|
|
43
|
+
</Alert>
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Destructive Alert
|
|
47
|
+
|
|
48
|
+
<Alert variant="destructive">
|
|
49
|
+
<AlertTitle>Error</AlertTitle>
|
|
50
|
+
<AlertDescription>Your session has expired. Please log in again.</AlertDescription>
|
|
51
|
+
</Alert>
|
|
52
|
+
|
|
53
|
+
```tsx
|
|
54
|
+
<Alert variant="destructive">
|
|
55
|
+
<AlertTitle>Error</AlertTitle>
|
|
56
|
+
<AlertDescription>Your session has expired. Please log in again.</AlertDescription>
|
|
57
|
+
</Alert>
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Without Title
|
|
61
|
+
|
|
62
|
+
<Alert>
|
|
63
|
+
<TerminalIcon className="h-4 w-4" />
|
|
64
|
+
<AlertDescription>
|
|
65
|
+
You can add components and dependencies to your app using the cli.
|
|
66
|
+
</AlertDescription>
|
|
67
|
+
</Alert>
|
|
68
|
+
|
|
69
|
+
```tsx
|
|
70
|
+
<Alert>
|
|
71
|
+
<TerminalIcon className="h-4 w-4" />
|
|
72
|
+
<AlertDescription>
|
|
73
|
+
You can add components and dependencies to your app using the cli.
|
|
74
|
+
</AlertDescription>
|
|
75
|
+
</Alert>
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Without Icon
|
|
79
|
+
|
|
80
|
+
<Alert>
|
|
81
|
+
<AlertTitle>Heads up!</AlertTitle>
|
|
82
|
+
<AlertDescription>
|
|
83
|
+
You can add components and dependencies to your app using the cli.
|
|
84
|
+
</AlertDescription>
|
|
85
|
+
</Alert>
|
|
86
|
+
|
|
87
|
+
```tsx
|
|
88
|
+
<Alert>
|
|
89
|
+
<AlertTitle>Heads up!</AlertTitle>
|
|
90
|
+
<AlertDescription>
|
|
91
|
+
You can add components and dependencies to your app using the cli.
|
|
92
|
+
</AlertDescription>
|
|
93
|
+
</Alert>
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Usage Examples
|
|
97
|
+
|
|
98
|
+
### Success Alert
|
|
99
|
+
|
|
100
|
+
<Alert className="border-green-200 bg-green-50 text-green-800 dark:border-green-800 dark:bg-green-950 dark:text-green-400">
|
|
101
|
+
<CheckCircle2Icon className="h-4 w-4" />
|
|
102
|
+
<AlertTitle>Success!</AlertTitle>
|
|
103
|
+
<AlertDescription>Your changes have been saved successfully.</AlertDescription>
|
|
104
|
+
</Alert>
|
|
105
|
+
|
|
106
|
+
```tsx
|
|
107
|
+
<Alert className="border-green-200 bg-green-50 text-green-800 dark:border-green-800 dark:bg-green-950 dark:text-green-400">
|
|
108
|
+
<CheckCircle2Icon className="h-4 w-4" />
|
|
109
|
+
<AlertTitle>Success!</AlertTitle>
|
|
110
|
+
<AlertDescription>Your changes have been saved successfully.</AlertDescription>
|
|
111
|
+
</Alert>
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Warning Alert
|
|
115
|
+
|
|
116
|
+
<Alert className="border-yellow-200 bg-yellow-50 text-yellow-800 dark:border-yellow-800 dark:bg-yellow-950 dark:text-yellow-400">
|
|
117
|
+
<AlertTitle>Warning!</AlertTitle>
|
|
118
|
+
<AlertDescription>This action cannot be undone. Please proceed with caution.</AlertDescription>
|
|
119
|
+
</Alert>
|
|
120
|
+
|
|
121
|
+
```tsx
|
|
122
|
+
<Alert className="border-yellow-200 bg-yellow-50 text-yellow-800 dark:border-yellow-800 dark:bg-yellow-950 dark:text-yellow-400">
|
|
123
|
+
<AlertTitle>Warning!</AlertTitle>
|
|
124
|
+
<AlertDescription>This action cannot be undone. Please proceed with caution.</AlertDescription>
|
|
125
|
+
</Alert>
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
# Props
|
|
129
|
+
|
|
130
|
+
<ReactComponentDoc component={Alert} />
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Badge
|
|
3
|
+
sidebar_icon: tag
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
A small badge component used to display status information or labels.
|
|
7
|
+
|
|
8
|
+
## Import
|
|
9
|
+
|
|
10
|
+
```tsx
|
|
11
|
+
import { Badge } from "@lukoweb/apitogo/ui/Badge";
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Variants
|
|
15
|
+
|
|
16
|
+
### Default
|
|
17
|
+
|
|
18
|
+
<Badge variant="default">Default</Badge>
|
|
19
|
+
|
|
20
|
+
```tsx
|
|
21
|
+
<Badge variant="default">Default</Badge>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### Secondary
|
|
25
|
+
|
|
26
|
+
<Badge variant="secondary">Secondary</Badge>
|
|
27
|
+
|
|
28
|
+
```tsx
|
|
29
|
+
<Badge variant="secondary">Secondary</Badge>
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### Muted
|
|
33
|
+
|
|
34
|
+
<Badge variant="muted">Muted</Badge>
|
|
35
|
+
|
|
36
|
+
```tsx
|
|
37
|
+
<Badge variant="muted">Muted</Badge>
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Destructive
|
|
41
|
+
|
|
42
|
+
<Badge variant="destructive">Destructive</Badge>
|
|
43
|
+
|
|
44
|
+
```tsx
|
|
45
|
+
<Badge variant="destructive">Destructive</Badge>
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### Outline
|
|
49
|
+
|
|
50
|
+
<Badge variant="outline">Outline</Badge>
|
|
51
|
+
|
|
52
|
+
```tsx
|
|
53
|
+
<Badge variant="outline">Outline</Badge>
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Usage
|
|
57
|
+
|
|
58
|
+
Badges are perfect for showing status, categories, or counts:
|
|
59
|
+
|
|
60
|
+
<div className="flex gap-2">
|
|
61
|
+
<Badge variant="default">New</Badge>
|
|
62
|
+
<Badge variant="secondary">Main</Badge>
|
|
63
|
+
<Badge variant="muted">10</Badge>
|
|
64
|
+
</div>
|
|
65
|
+
|
|
66
|
+
```tsx
|
|
67
|
+
<Badge variant="default">New</Badge>
|
|
68
|
+
<Badge variant="secondary">Main</Badge>
|
|
69
|
+
<Badge variant="muted">10</Badge>
|
|
70
|
+
```
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Button
|
|
3
|
+
sidebar_icon: mouse-pointer-click
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
import { Button } from "@lukoweb/apitogo/ui/Button";
|
|
7
|
+
import { PopcornIcon } from "@lukoweb/apitogo/icons";
|
|
8
|
+
|
|
9
|
+
A flexible button component with multiple variants and sizes for different use cases.
|
|
10
|
+
|
|
11
|
+
## Import
|
|
12
|
+
|
|
13
|
+
```tsx
|
|
14
|
+
import { Button } from "@lukoweb/apitogo/ui/Button";
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Variants
|
|
18
|
+
|
|
19
|
+
### Default
|
|
20
|
+
|
|
21
|
+
<Button variant="default">Default Button</Button>
|
|
22
|
+
|
|
23
|
+
```tsx
|
|
24
|
+
<Button variant="default">Default Button</Button>
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### Destructive
|
|
28
|
+
|
|
29
|
+
<Button variant="destructive">Delete</Button>
|
|
30
|
+
|
|
31
|
+
```tsx
|
|
32
|
+
<Button variant="destructive">Delete</Button>
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Outline
|
|
36
|
+
|
|
37
|
+
<Button variant="outline">Outline Button</Button>
|
|
38
|
+
|
|
39
|
+
```tsx
|
|
40
|
+
<Button variant="outline">Outline Button</Button>
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### Secondary
|
|
44
|
+
|
|
45
|
+
<Button variant="secondary">Secondary</Button>
|
|
46
|
+
|
|
47
|
+
```tsx
|
|
48
|
+
<Button variant="secondary">Secondary</Button>
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### Ghost
|
|
52
|
+
|
|
53
|
+
<Button variant="ghost">Ghost Button</Button>
|
|
54
|
+
|
|
55
|
+
```tsx
|
|
56
|
+
<Button variant="ghost">Ghost Button</Button>
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Link
|
|
60
|
+
|
|
61
|
+
<Button variant="link">Link Button</Button>
|
|
62
|
+
|
|
63
|
+
```tsx
|
|
64
|
+
<Button variant="link">Link Button</Button>
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Sizes
|
|
68
|
+
|
|
69
|
+
### Default Size
|
|
70
|
+
|
|
71
|
+
<Button size="default">Default Size</Button>
|
|
72
|
+
|
|
73
|
+
```tsx
|
|
74
|
+
<Button size="default">Default Size</Button>
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### Small
|
|
78
|
+
|
|
79
|
+
<Button size="sm">Small Button</Button>
|
|
80
|
+
|
|
81
|
+
```tsx
|
|
82
|
+
<Button size="sm">Small Button</Button>
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Large
|
|
86
|
+
|
|
87
|
+
<Button size="lg">Large Button</Button>
|
|
88
|
+
|
|
89
|
+
```tsx
|
|
90
|
+
<Button size="lg">Large Button</Button>
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Extra Large
|
|
94
|
+
|
|
95
|
+
<Button size="xl">Extra Large</Button>
|
|
96
|
+
|
|
97
|
+
```tsx
|
|
98
|
+
<Button size="xl">Extra Large</Button>
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
### Icon
|
|
102
|
+
|
|
103
|
+
<Button size="icon">
|
|
104
|
+
<PopcornIcon size={16} />
|
|
105
|
+
</Button>
|
|
106
|
+
|
|
107
|
+
```tsx
|
|
108
|
+
<Button size="icon">
|
|
109
|
+
<PopcornIcon size={16} />
|
|
110
|
+
</Button>
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## As Child
|
|
114
|
+
|
|
115
|
+
Use the `asChild` prop to render the button as a different element while maintaining button styling:
|
|
116
|
+
|
|
117
|
+
```tsx
|
|
118
|
+
<Button asChild>
|
|
119
|
+
<a href="/link">Link as Button</a>
|
|
120
|
+
</Button>
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
## Custom Styling
|
|
124
|
+
|
|
125
|
+
The Button component accepts all standard button HTML attributes and can be customized with
|
|
126
|
+
additional className:
|
|
127
|
+
|
|
128
|
+
```tsx
|
|
129
|
+
<Button className="w-full" variant="outline">
|
|
130
|
+
Full Width Button
|
|
131
|
+
</Button>
|
|
132
|
+
```
|