zudoku 0.64.1 → 0.65.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app/main.d.ts +91 -1
- package/dist/app/main.js +5 -1
- package/dist/app/main.js.map +1 -1
- package/dist/config/config.d.ts +15 -46
- package/dist/config/validators/InputNavigationSchema.d.ts +61 -61
- package/dist/config/validators/NavigationSchema.js +2 -4
- package/dist/config/validators/NavigationSchema.js.map +1 -1
- package/dist/config/validators/ProtectedRoutesSchema.d.ts +1 -1
- package/dist/config/validators/validate.d.ts +158 -2
- package/dist/config/validators/validate.js +37 -0
- package/dist/config/validators/validate.js.map +1 -1
- package/dist/config/validators/validate.test.js +43 -0
- package/dist/config/validators/validate.test.js.map +1 -1
- package/dist/flat-config.d.ts +22 -0
- package/dist/lib/auth/issuer.js +3 -0
- package/dist/lib/auth/issuer.js.map +1 -1
- package/dist/lib/authentication/authentication.d.ts +1 -1
- package/dist/lib/authentication/providers/auth0.js +6 -1
- package/dist/lib/authentication/providers/auth0.js.map +1 -1
- package/dist/lib/authentication/providers/firebase.d.ts +4 -0
- package/dist/lib/authentication/providers/firebase.js +215 -0
- package/dist/lib/authentication/providers/firebase.js.map +1 -0
- package/dist/lib/authentication/providers/supabase.js +1 -6
- package/dist/lib/authentication/providers/supabase.js.map +1 -1
- package/dist/lib/authentication/ui/ZudokuAuthUi.d.ts +24 -0
- package/dist/lib/authentication/ui/ZudokuAuthUi.js +124 -0
- package/dist/lib/authentication/ui/ZudokuAuthUi.js.map +1 -0
- package/dist/lib/authentication/ui/icons/Apple.d.ts +3 -0
- package/dist/lib/authentication/ui/icons/Apple.js +4 -0
- package/dist/lib/authentication/ui/icons/Apple.js.map +1 -0
- package/dist/lib/authentication/ui/icons/Facebook.d.ts +3 -0
- package/dist/lib/authentication/ui/icons/Facebook.js +4 -0
- package/dist/lib/authentication/ui/icons/Facebook.js.map +1 -0
- package/dist/lib/authentication/ui/icons/Github.d.ts +3 -0
- package/dist/lib/authentication/ui/icons/Github.js +4 -0
- package/dist/lib/authentication/ui/icons/Github.js.map +1 -0
- package/dist/lib/authentication/ui/icons/Google.d.ts +3 -0
- package/dist/lib/authentication/ui/icons/Google.js +4 -0
- package/dist/lib/authentication/ui/icons/Google.js.map +1 -0
- package/dist/lib/authentication/ui/icons/Microsoft.d.ts +3 -0
- package/dist/lib/authentication/ui/icons/Microsoft.js +4 -0
- package/dist/lib/authentication/ui/icons/Microsoft.js.map +1 -0
- package/dist/lib/authentication/ui/icons/X.d.ts +3 -0
- package/dist/lib/authentication/ui/icons/X.js +4 -0
- package/dist/lib/authentication/ui/icons/X.js.map +1 -0
- package/dist/lib/components/Autocomplete.d.ts +3 -1
- package/dist/lib/components/Autocomplete.js +6 -2
- package/dist/lib/components/Autocomplete.js.map +1 -1
- package/dist/lib/components/Heading.d.ts +1 -1
- package/dist/lib/components/Layout.js +3 -2
- package/dist/lib/components/Layout.js.map +1 -1
- package/dist/lib/components/navigation/NavigationItem.js +2 -2
- package/dist/lib/components/navigation/NavigationItem.js.map +1 -1
- package/dist/lib/core/RouteGuard.js +6 -6
- package/dist/lib/core/RouteGuard.js.map +1 -1
- package/dist/lib/errors/ErrorAlert.js +1 -1
- package/dist/lib/errors/RouterError.d.ts +3 -1
- package/dist/lib/errors/RouterError.js +3 -2
- package/dist/lib/errors/RouterError.js.map +1 -1
- package/dist/lib/oas/parser/index.js +7 -3
- package/dist/lib/oas/parser/index.js.map +1 -1
- package/dist/lib/plugins/api-keys/ProtectedRoute.js +4 -1
- package/dist/lib/plugins/api-keys/ProtectedRoute.js.map +1 -1
- package/dist/lib/plugins/openapi/CollapsibleCode.d.ts +1 -0
- package/dist/lib/plugins/openapi/CollapsibleCode.js +2 -1
- package/dist/lib/plugins/openapi/CollapsibleCode.js.map +1 -1
- package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.d.ts +5 -0
- package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.js +10 -0
- package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.js.map +1 -0
- package/dist/lib/plugins/openapi/OperationList.js +5 -1
- package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
- package/dist/lib/plugins/openapi/OperationListItem.d.ts +2 -1
- package/dist/lib/plugins/openapi/OperationListItem.js +3 -2
- package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
- package/dist/lib/plugins/openapi/ParameterList.js +7 -4
- package/dist/lib/plugins/openapi/ParameterList.js.map +1 -1
- package/dist/lib/plugins/openapi/ParameterListItem.js +17 -6
- package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
- package/dist/lib/plugins/openapi/RequestBodySidecarBox.d.ts +9 -2
- package/dist/lib/plugins/openapi/RequestBodySidecarBox.js +5 -2
- package/dist/lib/plugins/openapi/RequestBodySidecarBox.js.map +1 -1
- package/dist/lib/plugins/openapi/ResponsesSidecarBox.d.ts +3 -2
- package/dist/lib/plugins/openapi/ResponsesSidecarBox.js +25 -4
- package/dist/lib/plugins/openapi/ResponsesSidecarBox.js.map +1 -1
- package/dist/lib/plugins/openapi/Sidecar.d.ts +2 -2
- package/dist/lib/plugins/openapi/Sidecar.js +53 -26
- package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
- package/dist/lib/plugins/openapi/SidecarBox.js +4 -4
- package/dist/lib/plugins/openapi/SidecarBox.js.map +1 -1
- package/dist/lib/plugins/openapi/SidecarExamples.d.ts +9 -2
- package/dist/lib/plugins/openapi/SidecarExamples.js +24 -43
- package/dist/lib/plugins/openapi/SidecarExamples.js.map +1 -1
- package/dist/lib/plugins/openapi/components/ConstValue.js +1 -1
- package/dist/lib/plugins/openapi/components/ConstValue.js.map +1 -1
- package/dist/lib/plugins/openapi/components/EnumValues.js +1 -1
- package/dist/lib/plugins/openapi/components/EnumValues.js.map +1 -1
- package/dist/lib/plugins/openapi/components/NonHighlightedCode.d.ts +4 -0
- package/dist/lib/plugins/openapi/components/NonHighlightedCode.js +5 -0
- package/dist/lib/plugins/openapi/components/NonHighlightedCode.js.map +1 -0
- package/dist/lib/plugins/openapi/components/ResponseContent.js +5 -6
- package/dist/lib/plugins/openapi/components/ResponseContent.js.map +1 -1
- package/dist/lib/plugins/openapi/interfaces.d.ts +13 -0
- package/dist/lib/plugins/openapi/playground/BodyPanel.js +67 -15
- package/dist/lib/plugins/openapi/playground/BodyPanel.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js +2 -2
- package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js +1 -1
- package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/Headers.js +23 -83
- package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/ParamsGrid.d.ts +10 -2
- package/dist/lib/plugins/openapi/playground/ParamsGrid.js +8 -1
- package/dist/lib/plugins/openapi/playground/ParamsGrid.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/PathParams.js +2 -3
- package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/Playground.d.ts +7 -0
- package/dist/lib/plugins/openapi/playground/Playground.js +56 -28
- package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +3 -2
- package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/QueryParams.js +16 -40
- package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.d.ts +8 -0
- package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.js +19 -0
- package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js +1 -1
- package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.d.ts +1 -0
- package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.js +540 -0
- package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.d.ts +40 -0
- package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.js +205 -0
- package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +2 -2
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +17 -8
- package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaView.d.ts +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaView.js +20 -13
- package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/UnionView.js +2 -5
- package/dist/lib/plugins/openapi/schema/UnionView.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/union-helpers.js +0 -1
- package/dist/lib/plugins/openapi/schema/union-helpers.js.map +1 -1
- package/dist/lib/plugins/openapi/util/generateSchemaExample.js +5 -14
- package/dist/lib/plugins/openapi/util/generateSchemaExample.js.map +1 -1
- package/dist/lib/ui/Badge.d.ts +3 -3
- package/dist/lib/ui/Badge.js +9 -7
- package/dist/lib/ui/Badge.js.map +1 -1
- package/dist/lib/ui/Button.d.ts +1 -1
- package/dist/lib/ui/Button.js +1 -0
- package/dist/lib/ui/Button.js.map +1 -1
- package/dist/lib/ui/Checkbox.d.ts +2 -2
- package/dist/lib/ui/Checkbox.js +4 -4
- package/dist/lib/ui/Checkbox.js.map +1 -1
- package/dist/lib/ui/CodeBlock.d.ts +0 -1
- package/dist/lib/ui/CodeBlock.js +1 -1
- package/dist/lib/ui/CodeBlock.js.map +1 -1
- package/dist/lib/ui/Collapsible.d.ts +4 -4
- package/dist/lib/ui/Collapsible.js +11 -4
- package/dist/lib/ui/Collapsible.js.map +1 -1
- package/dist/lib/ui/Command.d.ts +3 -3
- package/dist/lib/ui/EmbeddedCodeBlock.d.ts +0 -1
- package/dist/lib/ui/EmbeddedCodeBlock.js +3 -2
- package/dist/lib/ui/EmbeddedCodeBlock.js.map +1 -1
- package/dist/lib/ui/Frame.d.ts +8 -0
- package/dist/lib/ui/Frame.js +22 -0
- package/dist/lib/ui/Frame.js.map +1 -0
- package/dist/lib/ui/Item.d.ts +23 -0
- package/dist/lib/ui/Item.js +67 -0
- package/dist/lib/ui/Item.js.map +1 -0
- package/dist/lib/ui/NativeSelect.d.ts +5 -0
- package/dist/lib/ui/NativeSelect.js +14 -0
- package/dist/lib/ui/NativeSelect.js.map +1 -0
- package/dist/lib/ui/Select.d.ts +13 -11
- package/dist/lib/ui/Select.js +34 -23
- package/dist/lib/ui/Select.js.map +1 -1
- package/dist/lib/ui/Separator.d.ts +4 -0
- package/dist/lib/ui/Separator.js +8 -0
- package/dist/lib/ui/Separator.js.map +1 -0
- package/dist/lib/ui/Tooltip.d.ts +7 -7
- package/dist/lib/ui/Tooltip.js +16 -10
- package/dist/lib/ui/Tooltip.js.map +1 -1
- package/dist/lib/util/createVariantComponent.d.ts +5 -2
- package/dist/lib/util/createVariantComponent.js +5 -2
- package/dist/lib/util/createVariantComponent.js.map +1 -1
- package/dist/lib/util/flattenAllOf.d.ts +4 -0
- package/dist/lib/util/flattenAllOf.js +65 -0
- package/dist/lib/util/flattenAllOf.js.map +1 -0
- package/dist/lib/util/flattenAllOf.test.d.ts +1 -0
- package/dist/lib/util/flattenAllOf.test.js +532 -0
- package/dist/lib/util/flattenAllOf.test.js.map +1 -0
- package/dist/lib/util/readFrontmatter.d.ts +6 -0
- package/dist/lib/util/readFrontmatter.js +12 -0
- package/dist/lib/util/readFrontmatter.js.map +1 -0
- package/dist/vite/api/SchemaManager.js +6 -18
- package/dist/vite/api/SchemaManager.js.map +1 -1
- package/dist/vite/mdx/remark-last-modified.js +57 -3
- package/dist/vite/mdx/remark-last-modified.js.map +1 -1
- package/dist/vite/plugin-api.js +2 -2
- package/dist/vite/plugin-api.js.map +1 -1
- package/dist/vite/plugin-frontmatter.js +3 -5
- package/dist/vite/plugin-frontmatter.js.map +1 -1
- package/dist/vite/plugin-markdown-export.js +3 -4
- package/dist/vite/plugin-markdown-export.js.map +1 -1
- package/dist/vite/plugin-theme.js +10 -1
- package/dist/vite/plugin-theme.js.map +1 -1
- package/lib/{Button-DmS4u8Lj.js → Button-B3ucvvQw.js} +7 -6
- package/lib/Button-B3ucvvQw.js.map +1 -0
- package/lib/{ErrorAlert-DE3Sf66a.js → ErrorAlert-BOVgwTRP.js} +2832 -2857
- package/lib/ErrorAlert-BOVgwTRP.js.map +1 -0
- package/lib/{MdxPage-DZfeC0QY.js → MdxPage-CBYFyqUs.js} +6 -6
- package/lib/{MdxPage-DZfeC0QY.js.map → MdxPage-CBYFyqUs.js.map} +1 -1
- package/lib/{OAuthErrorPage-BycMozgn.js → OAuthErrorPage-DlTYnbLO.js} +4 -4
- package/lib/{OAuthErrorPage-BycMozgn.js.map → OAuthErrorPage-DlTYnbLO.js.map} +1 -1
- package/lib/{OasProvider-1XEOsIiW.js → OasProvider-DIPAQ79S.js} +2 -2
- package/lib/{OasProvider-1XEOsIiW.js.map → OasProvider-DIPAQ79S.js.map} +1 -1
- package/lib/OperationList-BOTFIfda.js +5688 -0
- package/lib/OperationList-BOTFIfda.js.map +1 -0
- package/lib/{Pagination-CJszmeSA.js → Pagination-BOZ9Pxcw.js} +2 -2
- package/lib/{Pagination-CJszmeSA.js.map → Pagination-BOZ9Pxcw.js.map} +1 -1
- package/lib/RouteGuard-Brz95MSt.js +77 -0
- package/lib/RouteGuard-Brz95MSt.js.map +1 -0
- package/lib/RouterError-DQS_bMwf.js +42 -0
- package/lib/RouterError-DQS_bMwf.js.map +1 -0
- package/lib/{SchemaList-qOHkDzSz.js → SchemaList-Bu95q_q2.js} +7 -7
- package/lib/{SchemaList-qOHkDzSz.js.map → SchemaList-Bu95q_q2.js.map} +1 -1
- package/lib/SchemaView-CaxK_HV4.js +586 -0
- package/lib/SchemaView-CaxK_HV4.js.map +1 -0
- package/lib/Select-DFRCS31-.js +399 -0
- package/lib/Select-DFRCS31-.js.map +1 -0
- package/lib/{SignUp-6SGx9Yyq.js → SignUp-CfB278ao.js} +2 -2
- package/lib/{SignUp-6SGx9Yyq.js.map → SignUp-CfB278ao.js.map} +1 -1
- package/lib/{SyntaxHighlight-zvlnSnHB.js → SyntaxHighlight-C19vH0V_.js} +525 -509
- package/lib/SyntaxHighlight-C19vH0V_.js.map +1 -0
- package/lib/{Toc-Da9yp7lo.js → Toc-DQIqdghO.js} +2 -2
- package/lib/{Toc-Da9yp7lo.js.map → Toc-DQIqdghO.js.map} +1 -1
- package/lib/{circular-CSSuz-LS.js → circular-B-_VyILZ.js} +6360 -5953
- package/lib/circular-B-_VyILZ.js.map +1 -0
- package/lib/{createServer-CLbcVLbK.js → createServer-C5lXk4ba.js} +4732 -4273
- package/lib/createServer-C5lXk4ba.js.map +1 -0
- package/lib/{errors-CuGgh3hf.js → errors-DqoyOKev.js} +2 -2
- package/lib/{errors-CuGgh3hf.js.map → errors-DqoyOKev.js.map} +1 -1
- package/lib/index-B7yD7ZUk.js +3680 -0
- package/lib/index-B7yD7ZUk.js.map +1 -0
- package/lib/{index-rYHsvtTo.js → index-BG79m3lF.js} +2 -2
- package/lib/{index-rYHsvtTo.js.map → index-BG79m3lF.js.map} +1 -1
- package/lib/{index-B1rmok4X.js → index-DHDtI9H5.js} +3 -3
- package/lib/{index-B1rmok4X.js.map → index-DHDtI9H5.js.map} +1 -1
- package/lib/ui/ActionButton.js +1 -1
- package/lib/ui/Badge.js +27 -13
- package/lib/ui/Badge.js.map +1 -1
- package/lib/ui/Button.js +6 -5
- package/lib/ui/Button.js.map +1 -1
- package/lib/ui/Checkbox.js +29 -26
- package/lib/ui/Checkbox.js.map +1 -1
- package/lib/ui/CodeBlock.js +7 -7
- package/lib/ui/CodeBlock.js.map +1 -1
- package/lib/ui/Collapsible.js +32 -5
- package/lib/ui/Collapsible.js.map +1 -1
- package/lib/ui/EmbeddedCodeBlock.js +26 -25
- package/lib/ui/EmbeddedCodeBlock.js.map +1 -1
- package/lib/ui/Frame.js +81 -0
- package/lib/ui/Frame.js.map +1 -0
- package/lib/ui/Item.js +188 -0
- package/lib/ui/Item.js.map +1 -0
- package/lib/ui/NativeSelect.js +57 -0
- package/lib/ui/NativeSelect.js.map +1 -0
- package/lib/ui/Select.js +166 -116
- package/lib/ui/Select.js.map +1 -1
- package/lib/ui/Separator.js +27 -0
- package/lib/ui/Separator.js.map +1 -0
- package/lib/ui/SyntaxHighlight.js +1 -1
- package/lib/ui/Tabs.js +10 -10
- package/lib/ui/Tooltip.js +55 -28
- package/lib/ui/Tooltip.js.map +1 -1
- package/lib/zudoku.__internal.js +345 -345
- package/lib/zudoku.__internal.js.map +1 -1
- package/lib/zudoku.auth-auth0.js +7 -7
- package/lib/zudoku.auth-auth0.js.map +1 -1
- package/lib/zudoku.auth-azureb2c.js +3 -3
- package/lib/zudoku.auth-clerk.js +1 -1
- package/lib/zudoku.auth-openid.js +3 -3
- package/lib/zudoku.auth-supabase.js +30 -33
- package/lib/zudoku.auth-supabase.js.map +1 -1
- package/lib/zudoku.components.js +2 -2
- package/lib/zudoku.plugin-api-catalog.js +3 -3
- package/lib/zudoku.plugin-api-keys.js +5 -5
- package/lib/zudoku.plugin-api-keys.js.map +1 -1
- package/lib/zudoku.plugin-markdown.js +1 -1
- package/lib/zudoku.plugin-openapi.js +1 -1
- package/lib/zudoku.plugin-search-pagefind.js +2 -2
- package/package.json +18 -13
- package/src/app/main.css +1 -1
- package/src/app/main.tsx +5 -1
- package/src/lib/auth/issuer.ts +3 -0
- package/src/lib/authentication/authentication.ts +1 -1
- package/src/lib/authentication/providers/auth0.tsx +6 -1
- package/src/lib/authentication/providers/firebase.tsx +284 -0
- package/src/lib/authentication/providers/supabase.tsx +2 -7
- package/src/lib/authentication/ui/ZudokuAuthUi.tsx +335 -0
- package/src/lib/authentication/ui/icons/Apple.tsx +10 -0
- package/src/lib/authentication/ui/icons/Facebook.tsx +15 -0
- package/src/lib/authentication/ui/icons/Github.tsx +16 -0
- package/src/lib/authentication/ui/icons/Google.tsx +16 -0
- package/src/lib/authentication/ui/icons/Microsoft.tsx +12 -0
- package/src/lib/authentication/ui/icons/X.tsx +10 -0
- package/src/lib/components/Autocomplete.tsx +11 -2
- package/src/lib/components/Layout.tsx +3 -2
- package/src/lib/components/navigation/NavigationItem.tsx +7 -20
- package/src/lib/core/RouteGuard.tsx +8 -8
- package/src/lib/errors/ErrorAlert.tsx +1 -1
- package/src/lib/errors/RouterError.tsx +7 -2
- package/src/lib/oas/parser/index.ts +8 -3
- package/src/lib/plugins/api-keys/ProtectedRoute.tsx +11 -7
- package/src/lib/plugins/openapi/CollapsibleCode.tsx +5 -3
- package/src/lib/plugins/openapi/GeneratedExampleSidecarBox.tsx +52 -0
- package/src/lib/plugins/openapi/OperationList.tsx +7 -0
- package/src/lib/plugins/openapi/OperationListItem.tsx +10 -7
- package/src/lib/plugins/openapi/ParameterList.tsx +37 -23
- package/src/lib/plugins/openapi/ParameterListItem.tsx +105 -54
- package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +48 -7
- package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +81 -33
- package/src/lib/plugins/openapi/Sidecar.tsx +129 -65
- package/src/lib/plugins/openapi/SidecarBox.tsx +26 -4
- package/src/lib/plugins/openapi/SidecarExamples.tsx +91 -79
- package/src/lib/plugins/openapi/components/ConstValue.tsx +1 -1
- package/src/lib/plugins/openapi/components/EnumValues.tsx +2 -2
- package/src/lib/plugins/openapi/components/NonHighlightedCode.tsx +22 -0
- package/src/lib/plugins/openapi/components/ResponseContent.tsx +63 -53
- package/src/lib/plugins/openapi/interfaces.ts +12 -0
- package/src/lib/plugins/openapi/playground/BodyPanel.tsx +246 -30
- package/src/lib/plugins/openapi/playground/CollapsibleHeader.tsx +10 -6
- package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +3 -2
- package/src/lib/plugins/openapi/playground/Headers.tsx +103 -219
- package/src/lib/plugins/openapi/playground/ParamsGrid.tsx +33 -1
- package/src/lib/plugins/openapi/playground/PathParams.tsx +26 -34
- package/src/lib/plugins/openapi/playground/Playground.tsx +73 -35
- package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +9 -30
- package/src/lib/plugins/openapi/playground/QueryParams.tsx +82 -136
- package/src/lib/plugins/openapi/playground/request-panel/MultipartField.tsx +91 -0
- package/src/lib/plugins/openapi/playground/request-panel/UrlQueryParams.tsx +1 -1
- package/src/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.tsx +872 -0
- package/src/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.ts +349 -0
- package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +2 -6
- package/src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx +1 -1
- package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +89 -55
- package/src/lib/plugins/openapi/schema/SchemaView.tsx +82 -53
- package/src/lib/plugins/openapi/schema/UnionView.tsx +6 -17
- package/src/lib/plugins/openapi/schema/union-helpers.ts +0 -1
- package/src/lib/plugins/openapi/util/generateSchemaExample.ts +5 -15
- package/src/lib/ui/Badge.tsx +21 -12
- package/src/lib/ui/Button.tsx +1 -0
- package/src/lib/ui/Checkbox.tsx +23 -24
- package/src/lib/ui/CodeBlock.tsx +3 -4
- package/src/lib/ui/Collapsible.tsx +26 -4
- package/src/lib/ui/EmbeddedCodeBlock.tsx +21 -19
- package/src/lib/ui/Frame.tsx +81 -0
- package/src/lib/ui/Item.tsx +192 -0
- package/src/lib/ui/NativeSelect.tsx +47 -0
- package/src/lib/ui/Select.tsx +153 -126
- package/src/lib/ui/Separator.tsx +25 -0
- package/src/lib/ui/Tooltip.tsx +54 -32
- package/src/lib/util/createVariantComponent.tsx +31 -5
- package/src/lib/util/flattenAllOf.test.ts +637 -0
- package/src/lib/util/flattenAllOf.ts +101 -0
- package/src/lib/util/readFrontmatter.ts +13 -0
- package/dist/lib/plugins/openapi/playground/InlineInput.d.ts +0 -4
- package/dist/lib/plugins/openapi/playground/InlineInput.js +0 -3
- package/dist/lib/plugins/openapi/playground/InlineInput.js.map +0 -1
- package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.d.ts +0 -5
- package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.js +0 -7
- package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.js.map +0 -1
- package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.d.ts +0 -4
- package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.js +0 -10
- package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.js.map +0 -1
- package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.d.ts +0 -5
- package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.js +0 -16
- package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.js.map +0 -1
- package/lib/Button-DmS4u8Lj.js.map +0 -1
- package/lib/ErrorAlert-DE3Sf66a.js.map +0 -1
- package/lib/OperationList-DCJw6wXL.js +0 -5450
- package/lib/OperationList-DCJw6wXL.js.map +0 -1
- package/lib/RouteGuard-DhU3LRr1.js +0 -81
- package/lib/RouteGuard-DhU3LRr1.js.map +0 -1
- package/lib/RouterError-VDLnrFqF.js +0 -41
- package/lib/RouterError-VDLnrFqF.js.map +0 -1
- package/lib/SchemaView-D3hm65cc.js +0 -458
- package/lib/SchemaView-D3hm65cc.js.map +0 -1
- package/lib/Select-C1DeCqKv.js +0 -372
- package/lib/Select-C1DeCqKv.js.map +0 -1
- package/lib/SyntaxHighlight-zvlnSnHB.js.map +0 -1
- package/lib/circular-CSSuz-LS.js.map +0 -1
- package/lib/createServer-CLbcVLbK.js.map +0 -1
- package/lib/index-RNAxx6IF.js +0 -3364
- package/lib/index-RNAxx6IF.js.map +0 -1
- package/src/lib/plugins/openapi/playground/InlineInput.tsx +0 -6
- package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.tsx +0 -36
- package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.tsx +0 -25
- package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.tsx +0 -42
package/dist/flat-config.d.ts
CHANGED
|
@@ -182,8 +182,22 @@ export interface FlatZudokuConfig {
|
|
|
182
182
|
redirectToAfterSignUp?: string
|
|
183
183
|
redirectToAfterSignIn?: string
|
|
184
184
|
redirectToAfterSignOut?: string
|
|
185
|
+
} | {
|
|
186
|
+
type: "firebase"
|
|
187
|
+
apiKey: string
|
|
188
|
+
authDomain: string
|
|
189
|
+
projectId: string
|
|
190
|
+
storageBucket?: string
|
|
191
|
+
messagingSenderId?: string
|
|
192
|
+
appId: string
|
|
193
|
+
measurementId?: string
|
|
194
|
+
providers?: ("google" | "facebook" | "twitter" | "github" | "microsoft" | "apple" | "yahoo" | "password" | "phone" | "emailLink")[]
|
|
195
|
+
redirectToAfterSignUp?: string
|
|
196
|
+
redirectToAfterSignIn?: string
|
|
197
|
+
redirectToAfterSignOut?: string
|
|
185
198
|
} | {
|
|
186
199
|
type: "openid"
|
|
200
|
+
basePath?: string
|
|
187
201
|
clientId: string
|
|
188
202
|
issuer: string
|
|
189
203
|
audience?: string
|
|
@@ -193,6 +207,7 @@ export interface FlatZudokuConfig {
|
|
|
193
207
|
redirectToAfterSignOut?: string
|
|
194
208
|
} | {
|
|
195
209
|
type: "azureb2c"
|
|
210
|
+
basePath?: string
|
|
196
211
|
clientId: string
|
|
197
212
|
tenantName: string
|
|
198
213
|
policyName: string
|
|
@@ -212,9 +227,11 @@ export interface FlatZudokuConfig {
|
|
|
212
227
|
redirectToAfterSignOut?: string
|
|
213
228
|
options?: {
|
|
214
229
|
alwaysPromptLogin?: boolean
|
|
230
|
+
prompt?: string
|
|
215
231
|
}
|
|
216
232
|
} | {
|
|
217
233
|
type: "supabase"
|
|
234
|
+
basePath?: string
|
|
218
235
|
supabaseUrl: string
|
|
219
236
|
supabaseKey: string
|
|
220
237
|
provider?: string
|
|
@@ -342,12 +359,17 @@ export interface _Schema5 {
|
|
|
342
359
|
}
|
|
343
360
|
export interface _Schema12 {
|
|
344
361
|
examplesLanguage?: string
|
|
362
|
+
supportedLanguages?: {
|
|
363
|
+
value: string
|
|
364
|
+
label: string
|
|
365
|
+
}[]
|
|
345
366
|
disablePlayground?: boolean
|
|
346
367
|
disableSidecar?: boolean
|
|
347
368
|
showVersionSelect?: ("always" | "if-available" | "hide")
|
|
348
369
|
expandAllTags?: boolean
|
|
349
370
|
expandApiInformation?: boolean
|
|
350
371
|
transformExamples?: unknown
|
|
372
|
+
generateCodeSnippet?: unknown
|
|
351
373
|
}
|
|
352
374
|
export interface _Schema13 {
|
|
353
375
|
path: string
|
package/dist/lib/auth/issuer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issuer.js","sourceRoot":"","sources":["../../../src/lib/auth/issuer.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAE7C,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,MAAoB,EAAE,EAAE;IACtD,QAAQ,MAAM,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;QACpC,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,kBAAkB,GAAG,MAAM,CAAC,cAAc,CAAC,WAAW;iBACzD,KAAK,CAAC,GAAG,CAAC;iBACV,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACV,SAAS,CAAC,kBAAkB,EAAE,6BAA6B,CAAC,CAAC;YAC7D,MAAM,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAE7D,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;YACjD,CAAC;YAED,MAAM,WAAW,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3C,SAAS,CAAC,WAAW,EAAE,6BAA6B,CAAC,CAAC;YAEtD,OAAO,WAAW,WAAW,EAAE,CAAC;QAClC,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,OAAO,WAAW,MAAM,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;QACpD,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC;QACtC,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,OAAO,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC;QAC3C,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC;QACtC,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"issuer.js","sourceRoot":"","sources":["../../../src/lib/auth/issuer.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAE7C,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,MAAoB,EAAE,EAAE;IACtD,QAAQ,MAAM,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;QACpC,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,kBAAkB,GAAG,MAAM,CAAC,cAAc,CAAC,WAAW;iBACzD,KAAK,CAAC,GAAG,CAAC;iBACV,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACV,SAAS,CAAC,kBAAkB,EAAE,6BAA6B,CAAC,CAAC;YAC7D,MAAM,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAE7D,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;YACjD,CAAC;YAED,MAAM,WAAW,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3C,SAAS,CAAC,WAAW,EAAE,6BAA6B,CAAC,CAAC;YAEtD,OAAO,WAAW,WAAW,EAAE,CAAC;QAClC,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,OAAO,WAAW,MAAM,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;QACpD,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC;QACtC,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,OAAO,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC;QAC3C,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC;QACtC,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,OAAO,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC;QAC1C,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -14,7 +14,12 @@ class Auth0AuthenticationProvider extends OpenIDAuthenticationProvider {
|
|
|
14
14
|
this.options = config.options;
|
|
15
15
|
}
|
|
16
16
|
onAuthorizationUrl = async (url, { isSignUp }) => {
|
|
17
|
-
if (this.options?.
|
|
17
|
+
if (this.options?.prompt !== undefined) {
|
|
18
|
+
if (this.options.prompt !== "") {
|
|
19
|
+
url.searchParams.set("prompt", this.options.prompt);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
else if (this.options?.alwaysPromptLogin !== false) {
|
|
18
23
|
url.searchParams.set("prompt", "login");
|
|
19
24
|
}
|
|
20
25
|
if (isSignUp) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth0.js","sourceRoot":"","sources":["../../../../src/lib/authentication/providers/auth0.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,2BACJ,SAAQ,4BAA4B;IAGnB,OAAO,CAAuC;IAC/D,YAAY,MAAiC;QAC3C,KAAK,CAAC;YACJ,GAAG,MAAM;YACT,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,WAAW,MAAM,CAAC,MAAM,GAAG;YACnC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,kBAAkB,GAAG,KAAK,EACxB,GAAQ,EACR,EAAE,QAAQ,EAAyB,EACnC,EAAE;QACF,IAAI,IAAI,CAAC,OAAO,EAAE,iBAAiB,KAAK,KAAK,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"auth0.js","sourceRoot":"","sources":["../../../../src/lib/authentication/providers/auth0.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,2BACJ,SAAQ,4BAA4B;IAGnB,OAAO,CAAuC;IAC/D,YAAY,MAAiC;QAC3C,KAAK,CAAC;YACJ,GAAG,MAAM;YACT,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,WAAW,MAAM,CAAC,MAAM,GAAG;YACnC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,kBAAkB,GAAG,KAAK,EACxB,GAAQ,EACR,EAAE,QAAQ,EAAyB,EACnC,EAAE;QACF,IAAI,IAAI,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;gBAC/B,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,EAAE,iBAAiB,KAAK,KAAK,EAAE,CAAC;YACrD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,GAAG,KAAK,EAAE,CAAoB,EAAiB,EAAE;QACtD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5C,YAAY,CAAC,QAAQ,CAAC;YACpB,eAAe,EAAE,KAAK;YACtB,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,SAAS;YAClB,YAAY,EAAE,SAAS;SACxB,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACpD,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAEnD,+EAA+E;QAC/E,uEAAuE;QACvE,+DAA+D;QAC/D,wDAAwD;QAExD,uEAAuE;QACvE,sEAAsE;QACtE,IAAI,EAAE,CAAC,oBAAoB,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC;YACnD,IAAI,OAAO,EAAE,CAAC;gBACZ,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YACvD,CAAC;YACD,SAAS,CAAC,YAAY,CAAC,GAAG,CACxB,0BAA0B,EAC1B,WAAW,CAAC,QAAQ,EAAE,CACvB,CAAC;YAEF,+CAA+C;QACjD,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,CAChD,CAAC;YACF,+CAA+C;QACjD,CAAC;IACH,CAAC,CAAC;CACH;AAED,MAAM,SAAS,GAEX,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,2BAA2B,CAAC,OAAO,CAAC,CAAC;AAE1D,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { FirebaseAuthenticationConfig } from "../../../config/config.js";
|
|
2
|
+
import type { AuthenticationProviderInitializer } from "../authentication.js";
|
|
3
|
+
declare const supabaseAuth: AuthenticationProviderInitializer<FirebaseAuthenticationConfig>;
|
|
4
|
+
export default supabaseAuth;
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { initializeApp } from "firebase/app";
|
|
3
|
+
import { createUserWithEmailAndPassword, getAuth, signInWithEmailAndPassword, signInWithPopup, signOut, } from "firebase/auth";
|
|
4
|
+
import { CoreAuthenticationPlugin } from "../AuthenticationPlugin.js";
|
|
5
|
+
import { SignOut } from "../components/SignOut.js";
|
|
6
|
+
import { AuthorizationError } from "../errors.js";
|
|
7
|
+
import { useAuthState } from "../state.js";
|
|
8
|
+
import { ZudokuSignInUi, ZudokuSignUpUi } from "../ui/ZudokuAuthUi.js";
|
|
9
|
+
class FirebaseAuthenticationProvider extends CoreAuthenticationPlugin {
|
|
10
|
+
app;
|
|
11
|
+
auth;
|
|
12
|
+
providers;
|
|
13
|
+
constructor(config) {
|
|
14
|
+
super();
|
|
15
|
+
this.app = initializeApp({
|
|
16
|
+
apiKey: config.apiKey,
|
|
17
|
+
authDomain: config.authDomain,
|
|
18
|
+
projectId: config.projectId,
|
|
19
|
+
storageBucket: config.storageBucket,
|
|
20
|
+
messagingSenderId: config.messagingSenderId,
|
|
21
|
+
appId: config.appId,
|
|
22
|
+
measurementId: config.measurementId,
|
|
23
|
+
});
|
|
24
|
+
this.auth = getAuth(this.app);
|
|
25
|
+
this.providers = config.providers ?? [];
|
|
26
|
+
}
|
|
27
|
+
async signRequest(request) {
|
|
28
|
+
const accessToken = await this.auth.currentUser?.getIdToken();
|
|
29
|
+
if (!accessToken) {
|
|
30
|
+
throw new AuthorizationError("User is not authenticated");
|
|
31
|
+
}
|
|
32
|
+
request.headers.set("Authorization", `Bearer ${accessToken}`);
|
|
33
|
+
return request;
|
|
34
|
+
}
|
|
35
|
+
signUp = async ({ navigate }, { redirectTo }) => {
|
|
36
|
+
void navigate(redirectTo
|
|
37
|
+
? `/signup?redirectTo=${encodeURIComponent(redirectTo)}`
|
|
38
|
+
: `/signup`);
|
|
39
|
+
};
|
|
40
|
+
signIn = async ({ navigate }, { redirectTo }) => {
|
|
41
|
+
void navigate(redirectTo
|
|
42
|
+
? `/signin?redirectTo=${encodeURIComponent(redirectTo)}`
|
|
43
|
+
: `/signin`);
|
|
44
|
+
};
|
|
45
|
+
getRoutes = () => {
|
|
46
|
+
return [
|
|
47
|
+
{
|
|
48
|
+
path: "/signin",
|
|
49
|
+
element: (_jsx(ZudokuSignInUi, { providers: this.providers, onOAuthSignIn: async (providerId) => {
|
|
50
|
+
useAuthState.setState({ isPending: true });
|
|
51
|
+
const provider = await getProviderForId(providerId);
|
|
52
|
+
if (!provider) {
|
|
53
|
+
throw new AuthorizationError(`Provider ${providerId} not found`);
|
|
54
|
+
}
|
|
55
|
+
const result = await signInWithPopup(this.auth, provider);
|
|
56
|
+
useAuthState.setState({ isPending: false });
|
|
57
|
+
useAuthState.getState().setLoggedIn({
|
|
58
|
+
providerData: { user: result.user },
|
|
59
|
+
profile: {
|
|
60
|
+
sub: result.user.uid,
|
|
61
|
+
email: result.user.email ?? undefined,
|
|
62
|
+
name: result.user.displayName ?? undefined,
|
|
63
|
+
emailVerified: result.user.emailVerified,
|
|
64
|
+
pictureUrl: result.user.photoURL ?? undefined,
|
|
65
|
+
},
|
|
66
|
+
});
|
|
67
|
+
}, onUsernamePasswordSignIn: async (email, password) => {
|
|
68
|
+
try {
|
|
69
|
+
await signInWithEmailAndPassword(this.auth, email, password);
|
|
70
|
+
}
|
|
71
|
+
catch (error) {
|
|
72
|
+
throw Error(getFirebaseErrorMessage(error), { cause: error });
|
|
73
|
+
}
|
|
74
|
+
} })),
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
path: "/signup",
|
|
78
|
+
element: (_jsx(ZudokuSignUpUi, { providers: this.providers, onOAuthSignUp: async (providerId) => {
|
|
79
|
+
const provider = await getProviderForId(providerId);
|
|
80
|
+
if (!provider) {
|
|
81
|
+
throw new AuthorizationError(`Provider ${providerId} not found`);
|
|
82
|
+
}
|
|
83
|
+
await signInWithPopup(this.auth, provider);
|
|
84
|
+
}, onUsernamePasswordSignUp: async (email, password) => {
|
|
85
|
+
await createUserWithEmailAndPassword(this.auth, email, password);
|
|
86
|
+
} })),
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
path: "/signout",
|
|
90
|
+
element: _jsx(SignOut, {}),
|
|
91
|
+
},
|
|
92
|
+
];
|
|
93
|
+
};
|
|
94
|
+
signOut = async () => {
|
|
95
|
+
await signOut(this.auth);
|
|
96
|
+
useAuthState.setState({
|
|
97
|
+
isAuthenticated: false,
|
|
98
|
+
isPending: false,
|
|
99
|
+
profile: undefined,
|
|
100
|
+
providerData: undefined,
|
|
101
|
+
});
|
|
102
|
+
};
|
|
103
|
+
onPageLoad = async () => {
|
|
104
|
+
const user = this.auth.currentUser;
|
|
105
|
+
if (user) {
|
|
106
|
+
await this.updateUserState(user);
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
useAuthState.setState({ isPending: false });
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
async updateUserState(user) {
|
|
113
|
+
useAuthState.getState().setLoggedIn({
|
|
114
|
+
profile: {
|
|
115
|
+
sub: user.uid,
|
|
116
|
+
email: user.email ?? undefined,
|
|
117
|
+
name: user.displayName ?? undefined,
|
|
118
|
+
emailVerified: user.emailVerified,
|
|
119
|
+
pictureUrl: user.photoURL ?? undefined,
|
|
120
|
+
},
|
|
121
|
+
providerData: { user },
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
const supabaseAuth = (options) => new FirebaseAuthenticationProvider(options);
|
|
126
|
+
export default supabaseAuth;
|
|
127
|
+
const getProviderForId = async (providerId) => {
|
|
128
|
+
switch (providerId) {
|
|
129
|
+
case "google": {
|
|
130
|
+
const { GoogleAuthProvider } = await import("firebase/auth");
|
|
131
|
+
return new GoogleAuthProvider();
|
|
132
|
+
}
|
|
133
|
+
case "github": {
|
|
134
|
+
const { GithubAuthProvider } = await import("firebase/auth");
|
|
135
|
+
return new GithubAuthProvider();
|
|
136
|
+
}
|
|
137
|
+
case "facebook": {
|
|
138
|
+
const { FacebookAuthProvider } = await import("firebase/auth");
|
|
139
|
+
return new FacebookAuthProvider();
|
|
140
|
+
}
|
|
141
|
+
case "twitter": {
|
|
142
|
+
const { TwitterAuthProvider } = await import("firebase/auth");
|
|
143
|
+
return new TwitterAuthProvider();
|
|
144
|
+
}
|
|
145
|
+
case "microsoft": {
|
|
146
|
+
const { OAuthProvider } = await import("firebase/auth");
|
|
147
|
+
return new OAuthProvider("microsoft.com");
|
|
148
|
+
}
|
|
149
|
+
case "apple": {
|
|
150
|
+
const { OAuthProvider } = await import("firebase/auth");
|
|
151
|
+
return new OAuthProvider("apple.com");
|
|
152
|
+
}
|
|
153
|
+
case "yahoo": {
|
|
154
|
+
const { OAuthProvider } = await import("firebase/auth");
|
|
155
|
+
return new OAuthProvider("yahoo.com");
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
throw new AuthorizationError(`Provider ${providerId} not found`);
|
|
159
|
+
};
|
|
160
|
+
const getFirebaseErrorMessage = (error) => {
|
|
161
|
+
if (!(error instanceof Error)) {
|
|
162
|
+
return "An unexpected error occurred. Please try again.";
|
|
163
|
+
}
|
|
164
|
+
const errorCode = error.code;
|
|
165
|
+
switch (errorCode) {
|
|
166
|
+
case "auth/email-already-in-use":
|
|
167
|
+
return "The email address is already used by another account.";
|
|
168
|
+
case "auth/invalid-email":
|
|
169
|
+
return "That email address isn't correct.";
|
|
170
|
+
case "auth/operation-not-allowed":
|
|
171
|
+
return "This sign-in method is not enabled. Please contact support.";
|
|
172
|
+
case "auth/weak-password":
|
|
173
|
+
return "The password must be at least 6 characters long.";
|
|
174
|
+
case "auth/user-disabled":
|
|
175
|
+
return "This account has been disabled. Please contact support.";
|
|
176
|
+
case "auth/user-not-found":
|
|
177
|
+
return "That email address doesn't match an existing account.";
|
|
178
|
+
case "auth/wrong-password":
|
|
179
|
+
return "The email and password you entered don't match.";
|
|
180
|
+
case "auth/too-many-requests":
|
|
181
|
+
return "You have entered an incorrect password too many times. Please try again in a few minutes.";
|
|
182
|
+
case "auth/popup-blocked":
|
|
183
|
+
return "The sign-in popup was blocked by your browser. Please allow popups and try again.";
|
|
184
|
+
case "auth/popup-closed-by-user":
|
|
185
|
+
return "The sign-in popup was closed before completing. Please try again.";
|
|
186
|
+
case "auth/network-request-failed":
|
|
187
|
+
return "A network error has occurred. Please check your connection and try again.";
|
|
188
|
+
case "auth/requires-recent-login":
|
|
189
|
+
return "Please login again to perform this operation.";
|
|
190
|
+
case "auth/invalid-credential":
|
|
191
|
+
return "The credential is invalid or has expired. Please try again.";
|
|
192
|
+
case "auth/account-exists-with-different-credential":
|
|
193
|
+
return "An account already exists with the same email address but different sign-in credentials.";
|
|
194
|
+
case "auth/credential-already-in-use":
|
|
195
|
+
return "This credential is already associated with a different user account.";
|
|
196
|
+
case "auth/invalid-verification-code":
|
|
197
|
+
return "Wrong code. Try again.";
|
|
198
|
+
case "auth/invalid-verification-id":
|
|
199
|
+
return "The verification ID is invalid.";
|
|
200
|
+
case "auth/missing-verification-code":
|
|
201
|
+
return "Please enter the verification code.";
|
|
202
|
+
case "auth/user-cancelled":
|
|
203
|
+
return "Please authorize the required permissions to sign in.";
|
|
204
|
+
case "auth/expired-action-code":
|
|
205
|
+
return "This code has expired.";
|
|
206
|
+
case "auth/invalid-action-code":
|
|
207
|
+
return "The action code is invalid. This can happen if the code is malformed or has already been used.";
|
|
208
|
+
case "auth/unauthorized-domain":
|
|
209
|
+
return "This domain is not authorized for OAuth operations.";
|
|
210
|
+
default:
|
|
211
|
+
return (error.message ||
|
|
212
|
+
"An error occurred during authentication. Please try again.");
|
|
213
|
+
}
|
|
214
|
+
};
|
|
215
|
+
//# sourceMappingURL=firebase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"firebase.js","sourceRoot":"","sources":["../../../../src/lib/authentication/providers/firebase.tsx"],"names":[],"mappings":"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"}
|
|
@@ -7,15 +7,10 @@ import { useAuthState } from "../state.js";
|
|
|
7
7
|
import { SupabaseAuthUI } from "./supabase/SupabaseAuthUI.js";
|
|
8
8
|
class SupabaseAuthenticationProvider extends CoreAuthenticationPlugin {
|
|
9
9
|
client;
|
|
10
|
-
providers;
|
|
11
10
|
config;
|
|
12
11
|
constructor(config) {
|
|
13
|
-
const {
|
|
12
|
+
const { supabaseUrl, supabaseKey } = config;
|
|
14
13
|
super();
|
|
15
|
-
this.providers = providers ?? (provider ? [provider] : []);
|
|
16
|
-
if (this.providers.length === 0) {
|
|
17
|
-
throw new Error("At least one provider must be provided");
|
|
18
|
-
}
|
|
19
14
|
this.client = createClient(supabaseUrl, supabaseKey, {
|
|
20
15
|
auth: {
|
|
21
16
|
autoRefreshToken: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supabase.js","sourceRoot":"","sources":["../../../../src/lib/authentication/providers/supabase.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,YAAY,
|
|
1
|
+
{"version":3,"file":"supabase.js","sourceRoot":"","sources":["../../../../src/lib/authentication/providers/supabase.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export declare const AUTH_PROVIDER_NAMES: Record<AuthProviderId, string>;
|
|
3
|
+
export type AuthProviderId = keyof typeof ProviderIcons;
|
|
4
|
+
declare const ProviderIcons: {
|
|
5
|
+
readonly google: (props: React.SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
readonly github: (props: React.SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
readonly facebook: (props: React.SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
readonly twitter: (props: React.SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
readonly x: (props: React.SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
readonly apple: (props: React.SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
readonly microsoft: (props: React.SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
readonly yahoo: React.ExoticComponent<React.FragmentProps>;
|
|
13
|
+
};
|
|
14
|
+
export declare const ZudokuSignInUi: ({ providers, onOAuthSignIn, onUsernamePasswordSignIn, }: {
|
|
15
|
+
providers: string[];
|
|
16
|
+
onOAuthSignIn: (providerId: string) => Promise<void>;
|
|
17
|
+
onUsernamePasswordSignIn: (email: string, password: string) => Promise<void>;
|
|
18
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
export declare const ZudokuSignUpUi: ({ providers, onOAuthSignUp, onUsernamePasswordSignUp, }: {
|
|
20
|
+
providers: string[];
|
|
21
|
+
onOAuthSignUp: (providerId: string) => Promise<void>;
|
|
22
|
+
onUsernamePasswordSignUp: (email: string, password: string) => Promise<void>;
|
|
23
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useMutation } from "@tanstack/react-query";
|
|
3
|
+
import React from "react";
|
|
4
|
+
import { useForm } from "react-hook-form";
|
|
5
|
+
import { Link, useNavigate, useSearchParams } from "react-router";
|
|
6
|
+
import { ActionButton } from "zudoku/ui/ActionButton.js";
|
|
7
|
+
import { Alert, AlertDescription, AlertTitle } from "zudoku/ui/Alert.js";
|
|
8
|
+
import { Button } from "zudoku/ui/Button.js";
|
|
9
|
+
import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "zudoku/ui/Card.js";
|
|
10
|
+
import { Input } from "zudoku/ui/Input.js";
|
|
11
|
+
import { Separator } from "zudoku/ui/Separator.js";
|
|
12
|
+
import { Form, FormControl, FormItem, FormLabel, FormMessage, } from "../../ui/Form.js";
|
|
13
|
+
import { cn } from "../../util/cn.js";
|
|
14
|
+
import createVariantComponent from "../../util/createVariantComponent.js";
|
|
15
|
+
import AppleIcon from "./icons/Apple.js";
|
|
16
|
+
import FacebookIcon from "./icons/Facebook.js";
|
|
17
|
+
import GithubIcon from "./icons/Github.js";
|
|
18
|
+
import GoogleIcon from "./icons/Google.js";
|
|
19
|
+
import MicrosoftIcon from "./icons/Microsoft.js";
|
|
20
|
+
import XIcon from "./icons/X.js";
|
|
21
|
+
export const AUTH_PROVIDER_NAMES = {
|
|
22
|
+
google: "Google",
|
|
23
|
+
github: "GitHub",
|
|
24
|
+
facebook: "Facebook",
|
|
25
|
+
twitter: "X",
|
|
26
|
+
x: "X",
|
|
27
|
+
microsoft: "Microsoft",
|
|
28
|
+
apple: "Apple",
|
|
29
|
+
yahoo: "Yahoo",
|
|
30
|
+
};
|
|
31
|
+
const ProviderIcons = {
|
|
32
|
+
google: GoogleIcon,
|
|
33
|
+
github: GithubIcon,
|
|
34
|
+
facebook: FacebookIcon,
|
|
35
|
+
twitter: XIcon,
|
|
36
|
+
x: XIcon,
|
|
37
|
+
apple: AppleIcon,
|
|
38
|
+
microsoft: MicrosoftIcon,
|
|
39
|
+
yahoo: React.Fragment,
|
|
40
|
+
};
|
|
41
|
+
const isValidAuthProviderId = (provider) => {
|
|
42
|
+
return provider in ProviderIcons;
|
|
43
|
+
};
|
|
44
|
+
const isAuthProviderIdArray = (providers) => {
|
|
45
|
+
return providers.every(isValidAuthProviderId);
|
|
46
|
+
};
|
|
47
|
+
const AuthProviderButton = ({ providerId, onClick, ...buttonProps }) => {
|
|
48
|
+
const IconRenderer = ProviderIcons[providerId];
|
|
49
|
+
return (_jsxs(Button, { variant: "outline", className: "gap-2", onClick: onClick, ...buttonProps, children: [_jsx(IconRenderer, { className: "w-4 h-4 fill-foreground" }), AUTH_PROVIDER_NAMES[providerId]] }));
|
|
50
|
+
};
|
|
51
|
+
const EmailPasswordForm = ({ form, onSubmit, submitLabel, isPending, }) => {
|
|
52
|
+
return (_jsx(Form, { ...form, children: _jsxs("form", { onSubmit: form.handleSubmit(onSubmit), className: "flex flex-col gap-2", children: [_jsxs(FormItem, { children: [_jsx(FormLabel, { children: "E-Mail" }), _jsx(FormControl, { children: _jsx(Input, { placeholder: "Email", ...form.register("email") }) }), _jsx(FormMessage, {})] }), _jsxs(FormItem, { children: [_jsx(FormLabel, { children: "Password" }), _jsx(FormControl, { children: _jsx(Input, { placeholder: "Password", ...form.register("password"), type: "password" }) }), _jsx(FormMessage, {})] }), _jsx(ActionButton, { type: "submit", isPending: isPending, children: submitLabel })] }) }));
|
|
53
|
+
};
|
|
54
|
+
export const ZudokuSignInUi = ({ providers, onOAuthSignIn, onUsernamePasswordSignIn, }) => {
|
|
55
|
+
const navigate = useNavigate();
|
|
56
|
+
const [searchParams] = useSearchParams();
|
|
57
|
+
const redirectTo = searchParams.get("redirectTo");
|
|
58
|
+
if (!isAuthProviderIdArray(providers)) {
|
|
59
|
+
throw new Error("Invalid auth provider IDs");
|
|
60
|
+
}
|
|
61
|
+
const signInUsernameMutation = useMutation({
|
|
62
|
+
mutationFn: async ({ email, password }) => {
|
|
63
|
+
await onUsernamePasswordSignIn(email, password);
|
|
64
|
+
},
|
|
65
|
+
onSuccess: () => {
|
|
66
|
+
void navigate(redirectTo ?? "/");
|
|
67
|
+
},
|
|
68
|
+
});
|
|
69
|
+
const signInByProviderMutation = useMutation({
|
|
70
|
+
mutationFn: async ({ providerId }) => {
|
|
71
|
+
await onOAuthSignIn(providerId);
|
|
72
|
+
},
|
|
73
|
+
onSuccess: () => {
|
|
74
|
+
void navigate(redirectTo ?? "/");
|
|
75
|
+
},
|
|
76
|
+
});
|
|
77
|
+
const form = useForm({
|
|
78
|
+
defaultValues: {
|
|
79
|
+
email: "",
|
|
80
|
+
password: "",
|
|
81
|
+
},
|
|
82
|
+
});
|
|
83
|
+
const pending = signInUsernameMutation.isPending || signInByProviderMutation.isPending;
|
|
84
|
+
const error = signInUsernameMutation.error ?? signInByProviderMutation.error;
|
|
85
|
+
return (_jsxs(AuthCard, { children: [_jsxs(CardHeader, { children: [_jsx(CardTitle, { children: "Sign in" }), _jsx(CardDescription, { children: "Sign in to your account to continue." })] }), _jsxs(CardContent, { className: "flex flex-col gap-4", children: [error && (_jsxs(Alert, { variant: "destructive", children: [_jsx(AlertTitle, { children: "Error" }), _jsx(AlertDescription, { children: error?.message })] })), _jsx(EmailPasswordForm, { form: form, onSubmit: (data) => void signInUsernameMutation.mutate({
|
|
86
|
+
email: data.email,
|
|
87
|
+
password: data.password,
|
|
88
|
+
}), submitLabel: "Sign in", isPending: pending }), _jsx(ProviderSeparator, { providers: providers }), _jsx(ProviderButtons, { providers: providers, onClick: (providerId) => signInByProviderMutation.mutate({ providerId }) }), _jsx(Link, { to: "/signup", className: "text-sm text-muted-foreground", children: "Don't have an account? Sign up." })] })] }));
|
|
89
|
+
};
|
|
90
|
+
export const ZudokuSignUpUi = ({ providers, onOAuthSignUp, onUsernamePasswordSignUp, }) => {
|
|
91
|
+
if (!isAuthProviderIdArray(providers)) {
|
|
92
|
+
throw new Error("Invalid auth provider IDs");
|
|
93
|
+
}
|
|
94
|
+
const signUpUsernameMutation = useMutation({
|
|
95
|
+
mutationFn: async ({ email, password }) => {
|
|
96
|
+
await onUsernamePasswordSignUp(email, password);
|
|
97
|
+
},
|
|
98
|
+
});
|
|
99
|
+
const signUpByProviderMutation = useMutation({
|
|
100
|
+
mutationFn: async ({ providerId }) => {
|
|
101
|
+
await onOAuthSignUp(providerId);
|
|
102
|
+
},
|
|
103
|
+
});
|
|
104
|
+
const form = useForm({
|
|
105
|
+
defaultValues: {
|
|
106
|
+
email: "",
|
|
107
|
+
password: "",
|
|
108
|
+
},
|
|
109
|
+
});
|
|
110
|
+
const pending = signUpUsernameMutation.isPending || signUpByProviderMutation.isPending;
|
|
111
|
+
const error = signUpUsernameMutation.error ?? signUpByProviderMutation.error;
|
|
112
|
+
return (_jsxs(AuthCard, { children: [_jsxs(CardHeader, { children: [_jsx(CardTitle, { children: "Sign up" }), _jsx(CardDescription, { children: "Sign up to your account to continue." })] }), _jsxs(CardContent, { className: "flex flex-col gap-4", children: [error && (_jsxs(Alert, { variant: "destructive", children: [_jsx(AlertTitle, { children: "Error" }), _jsx(AlertDescription, { children: error?.message })] })), _jsx(EmailPasswordForm, { form: form, onSubmit: (data) => void signUpUsernameMutation.mutate({
|
|
113
|
+
email: data.email,
|
|
114
|
+
password: data.password,
|
|
115
|
+
}), submitLabel: "Sign up", isPending: pending }), _jsx(ProviderSeparator, { providers: providers }), _jsx(ProviderButtons, { providers: providers, onClick: (providerId) => signUpByProviderMutation.mutate({ providerId }) }), _jsx(Link, { to: "/signin", className: "text-sm text-muted-foreground", children: "Already have an account? Sign in." })] })] }));
|
|
116
|
+
};
|
|
117
|
+
const AuthCard = createVariantComponent(Card, "max-w-md w-full mt-10 mx-auto");
|
|
118
|
+
const ProviderButtons = ({ providers, onClick, }) => {
|
|
119
|
+
return (_jsx("div", { className: cn("grid grid-cols-2 gap-2", providers.length % 2 === 0 ? "grid-cols-2" : "grid-cols-1"), children: providers.map((provider) => (_jsx(AuthProviderButton, { providerId: provider, onClick: () => onClick(provider) }, provider))) }));
|
|
120
|
+
};
|
|
121
|
+
const ProviderSeparator = ({ providers }) => {
|
|
122
|
+
return (providers.length > 0 && (_jsx(Separator, { className: "my-3 relative", children: _jsx("span", { className: "bg-card text-muted-foreground text-sm px-2 absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2", children: "or continue with" }) })));
|
|
123
|
+
};
|
|
124
|
+
//# sourceMappingURL=ZudokuAuthUi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ZudokuAuthUi.js","sourceRoot":"","sources":["../../../../src/lib/authentication/ui/ZudokuAuthUi.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
const AppleIcon = (props) => (_jsxs("svg", { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", ...props, children: [_jsx("title", { children: "Apple" }), _jsx("path", { d: "M12.152 6.896c-.948 0-2.415-1.078-3.96-1.04-2.04.027-3.91 1.183-4.961 3.014-2.117 3.675-.546 9.103 1.519 12.09 1.013 1.454 2.208 3.09 3.792 3.039 1.52-.065 2.09-.987 3.935-.987 1.831 0 2.35.987 3.96.948 1.637-.026 2.676-1.48 3.676-2.948 1.156-1.688 1.636-3.325 1.662-3.415-.039-.013-3.182-1.221-3.22-4.857-.026-3.04 2.48-4.494 2.597-4.559-1.429-2.09-3.623-2.324-4.39-2.376-2-.156-3.675 1.09-4.61 1.09zM15.53 3.83c.843-1.012 1.4-2.427 1.245-3.83-1.207.052-2.662.805-3.532 1.818-.78.896-1.454 2.338-1.273 3.714 1.338.104 2.715-.688 3.559-1.701" })] }));
|
|
3
|
+
export default AppleIcon;
|
|
4
|
+
//# sourceMappingURL=Apple.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Apple.js","sourceRoot":"","sources":["../../../../../src/lib/authentication/ui/icons/Apple.tsx"],"names":[],"mappings":";AAEA,MAAM,SAAS,GAAG,CAAC,KAA8B,EAAE,EAAE,CAAC,CACpD,eAAK,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,4BAA4B,KAAK,KAAK,aACnE,0BAAQ,OAAO,GAAS,EACxB,eAAM,CAAC,EAAC,+hBAA+hB,GAAG,IACtiB,CACP,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
const FacebookIcon = (props) => (_jsxs("svg", { fill: "#0866FF", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", ...props, children: [_jsx("title", { children: "Facebook" }), _jsx("path", { d: "M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z" })] }));
|
|
3
|
+
export default FacebookIcon;
|
|
4
|
+
//# sourceMappingURL=Facebook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Facebook.js","sourceRoot":"","sources":["../../../../../src/lib/authentication/ui/icons/Facebook.tsx"],"names":[],"mappings":";AAEA,MAAM,YAAY,GAAG,CAAC,KAA8B,EAAE,EAAE,CAAC,CACvD,eACE,IAAI,EAAC,SAAS,EACd,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,4BAA4B,KAC9B,KAAK,aAET,0BAAQ,UAAU,GAAS,EAC3B,eAAM,CAAC,EAAC,gbAAgb,GAAG,IACvb,CACP,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
const GithubIcon = (props) => (_jsxs("svg", { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", ...props, children: [_jsx("title", { children: "GitHub" }), _jsx("path", { d: "M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12" })] }));
|
|
3
|
+
export default GithubIcon;
|
|
4
|
+
//# sourceMappingURL=Github.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Github.js","sourceRoot":"","sources":["../../../../../src/lib/authentication/ui/icons/Github.tsx"],"names":[],"mappings":";AAEA,MAAM,UAAU,GAAG,CAAC,KAA8B,EAAE,EAAE,CAAC,CACrD,eACE,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,4BAA4B,EAClC,KAAK,EAAC,KAAK,EACX,MAAM,EAAC,KAAK,KACR,KAAK,aAET,0BAAQ,QAAQ,GAAS,EACzB,eAAM,CAAC,EAAC,0sBAA0sB,GAAG,IACjtB,CACP,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
const GoogleIcon = (props) => (_jsxs("svg", { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", ...props, children: [_jsx("title", { children: "Google" }), _jsx("path", { d: "M12.48 10.92v3.28h7.84c-.24 1.84-.853 3.187-1.787 4.133-1.147 1.147-2.933 2.4-6.053 2.4-4.827 0-8.6-3.893-8.6-8.72s3.773-8.72 8.6-8.72c2.6 0 4.507 1.027 5.907 2.347l2.307-2.307C18.747 1.44 16.133 0 12.48 0 5.867 0 .307 5.387.307 12s5.56 12 12.173 12c3.573 0 6.267-1.173 8.373-3.36 2.16-2.16 2.84-5.213 2.84-7.667 0-.76-.053-1.467-.173-2.053H12.48z" })] }));
|
|
3
|
+
export default GoogleIcon;
|
|
4
|
+
//# sourceMappingURL=Google.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Google.js","sourceRoot":"","sources":["../../../../../src/lib/authentication/ui/icons/Google.tsx"],"names":[],"mappings":";AAEA,MAAM,UAAU,GAAG,CAAC,KAA8B,EAAE,EAAE,CAAC,CACrD,eACE,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,4BAA4B,EAClC,KAAK,EAAC,KAAK,EACX,MAAM,EAAC,KAAK,KACR,KAAK,aAET,0BAAQ,QAAQ,GAAS,EACzB,eAAM,CAAC,EAAC,6VAA6V,GAAG,IACpW,CACP,CAAC;AAEF,eAAe,UAAU,CAAC"}
|