@vertesia/ui 1.5.0-dev.20260714.072725Z → 1.5.0-dev.20260722.120446Z
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/lib/core/components/SidePanel.js +1 -1
- package/lib/core/components/SidePanel.js.map +1 -1
- package/lib/core/components/shadcn/button.d.ts +10 -3
- package/lib/core/components/shadcn/button.d.ts.map +1 -1
- package/lib/core/components/shadcn/button.js +41 -9
- package/lib/core/components/shadcn/button.js.map +1 -1
- package/lib/core/components/shadcn/modal/dialog.js +1 -1
- package/lib/core/components/shadcn/modal/dialog.js.map +1 -1
- package/lib/core/components/shadcn/theme/ThemeSwitcher.js +1 -1
- package/lib/core/components/shadcn/theme/ThemeSwitcher.js.map +1 -1
- package/lib/env/index.d.ts +19 -0
- package/lib/env/index.d.ts.map +1 -1
- package/lib/env/index.js +6 -0
- package/lib/env/index.js.map +1 -1
- package/lib/features/agent/chat/AgentChatPlaybackControls.d.ts.map +1 -1
- package/lib/features/agent/chat/AgentChatPlaybackControls.js +2 -2
- package/lib/features/agent/chat/AgentChatPlaybackControls.js.map +1 -1
- package/lib/features/agent/chat/AgentRequestInputOverlay.d.ts.map +1 -1
- package/lib/features/agent/chat/AgentRequestInputOverlay.js +2 -2
- package/lib/features/agent/chat/AgentRequestInputOverlay.js.map +1 -1
- package/lib/features/agent/chat/ArtifactsTab.d.ts.map +1 -1
- package/lib/features/agent/chat/ArtifactsTab.js +68 -11
- package/lib/features/agent/chat/ArtifactsTab.js.map +1 -1
- package/lib/features/agent/chat/ImageLightbox.d.ts.map +1 -1
- package/lib/features/agent/chat/ImageLightbox.js +1 -1
- package/lib/features/agent/chat/ImageLightbox.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentConversation.js +52 -49
- package/lib/features/agent/chat/ModernAgentConversation.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js +5 -5
- package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/Header.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/Header.js +4 -2
- package/lib/features/agent/chat/ModernAgentOutput/Header.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/MessageInput.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/MessageInput.js +2 -2
- package/lib/features/agent/chat/ModernAgentOutput/MessageInput.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/MessageItem.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js +2 -1
- package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/requestInputMessages.d.ts +6 -0
- package/lib/features/agent/chat/ModernAgentOutput/requestInputMessages.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/requestInputMessages.js +15 -1
- package/lib/features/agent/chat/ModernAgentOutput/requestInputMessages.js.map +1 -1
- package/lib/features/agent/chat/hooks/useArtifacts.d.ts +8 -1
- package/lib/features/agent/chat/hooks/useArtifacts.d.ts.map +1 -1
- package/lib/features/agent/chat/hooks/useArtifacts.js +28 -10
- package/lib/features/agent/chat/hooks/useArtifacts.js.map +1 -1
- package/lib/features/document-viewer/UniversalDocumentViewer.d.ts +73 -0
- package/lib/features/document-viewer/UniversalDocumentViewer.d.ts.map +1 -0
- package/lib/features/document-viewer/UniversalDocumentViewer.js +415 -0
- package/lib/features/document-viewer/UniversalDocumentViewer.js.map +1 -0
- package/lib/features/document-viewer/index.d.ts +2 -0
- package/lib/features/document-viewer/index.d.ts.map +1 -0
- package/lib/features/document-viewer/index.js +2 -0
- package/lib/features/document-viewer/index.js.map +1 -0
- package/lib/features/environment/SelectEnvironment.d.ts +28 -0
- package/lib/features/environment/SelectEnvironment.d.ts.map +1 -0
- package/lib/features/environment/SelectEnvironment.js +97 -0
- package/lib/features/environment/SelectEnvironment.js.map +1 -0
- package/lib/features/environment/index.d.ts +2 -0
- package/lib/features/environment/index.d.ts.map +1 -0
- package/lib/features/environment/index.js +2 -0
- package/lib/features/environment/index.js.map +1 -0
- package/lib/features/index.d.ts +3 -0
- package/lib/features/index.d.ts.map +1 -1
- package/lib/features/index.js +3 -0
- package/lib/features/index.js.map +1 -1
- package/lib/features/magic-pdf/AnnotatedImageSlider.js +12 -12
- package/lib/features/magic-pdf/AnnotatedImageSlider.js.map +1 -1
- package/lib/features/magic-pdf/DownloadPopover.d.ts.map +1 -1
- package/lib/features/magic-pdf/DownloadPopover.js +3 -17
- package/lib/features/magic-pdf/DownloadPopover.js.map +1 -1
- package/lib/features/magic-pdf/ExtractedContentView.js +2 -6
- package/lib/features/magic-pdf/ExtractedContentView.js.map +1 -1
- package/lib/features/magic-pdf/GroundedExtractionAssistantPanel.d.ts +25 -0
- package/lib/features/magic-pdf/GroundedExtractionAssistantPanel.d.ts.map +1 -0
- package/lib/features/magic-pdf/GroundedExtractionAssistantPanel.js +42 -0
- package/lib/features/magic-pdf/GroundedExtractionAssistantPanel.js.map +1 -0
- package/lib/features/magic-pdf/GroundedExtractionView.d.ts +27 -0
- package/lib/features/magic-pdf/GroundedExtractionView.d.ts.map +1 -0
- package/lib/features/magic-pdf/GroundedExtractionView.js +377 -0
- package/lib/features/magic-pdf/GroundedExtractionView.js.map +1 -0
- package/lib/features/magic-pdf/MagicPdfProvider.d.ts +0 -2
- package/lib/features/magic-pdf/MagicPdfProvider.d.ts.map +1 -1
- package/lib/features/magic-pdf/MagicPdfProvider.js +15 -42
- package/lib/features/magic-pdf/MagicPdfProvider.js.map +1 -1
- package/lib/features/magic-pdf/MagicPdfView.d.ts.map +1 -1
- package/lib/features/magic-pdf/MagicPdfView.js +2 -19
- package/lib/features/magic-pdf/MagicPdfView.js.map +1 -1
- package/lib/features/magic-pdf/index.d.ts +1 -0
- package/lib/features/magic-pdf/index.d.ts.map +1 -1
- package/lib/features/magic-pdf/index.js +1 -0
- package/lib/features/magic-pdf/index.js.map +1 -1
- package/lib/features/magic-pdf/types.d.ts +1 -1
- package/lib/features/magic-pdf/types.d.ts.map +1 -1
- package/lib/features/oauth/McpConnectionsButton.d.ts.map +1 -1
- package/lib/features/oauth/McpConnectionsButton.js +2 -2
- package/lib/features/oauth/McpConnectionsButton.js.map +1 -1
- package/lib/features/oauth/McpConnectionsDialog.d.ts.map +1 -1
- package/lib/features/oauth/McpConnectionsDialog.js +1 -1
- package/lib/features/oauth/McpConnectionsDialog.js.map +1 -1
- package/lib/features/oauth/RemoteMcpConnectionButton.d.ts.map +1 -1
- package/lib/features/oauth/RemoteMcpConnectionButton.js +1 -1
- package/lib/features/oauth/RemoteMcpConnectionButton.js.map +1 -1
- package/lib/features/pdf-viewer/PdfPageSlider.js +2 -2
- package/lib/features/pdf-viewer/PdfPageSlider.js.map +1 -1
- package/lib/features/pdf-viewer/SimplePdfViewer.d.ts.map +1 -1
- package/lib/features/pdf-viewer/SimplePdfViewer.js +3 -3
- package/lib/features/pdf-viewer/SimplePdfViewer.js.map +1 -1
- package/lib/features/permissions/UserPermissionsProvider.d.ts +2 -3
- package/lib/features/permissions/UserPermissionsProvider.d.ts.map +1 -1
- package/lib/features/permissions/UserPermissionsProvider.js +31 -38
- package/lib/features/permissions/UserPermissionsProvider.js.map +1 -1
- package/lib/features/store/objects/DocumentQuickFilter.d.ts.map +1 -1
- package/lib/features/store/objects/DocumentQuickFilter.js +5 -5
- package/lib/features/store/objects/DocumentQuickFilter.js.map +1 -1
- package/lib/features/store/objects/DocumentSearchResults.d.ts.map +1 -1
- package/lib/features/store/objects/DocumentSearchResults.js +2 -2
- package/lib/features/store/objects/DocumentSearchResults.js.map +1 -1
- package/lib/features/store/objects/components/ContentDispositionButton.d.ts.map +1 -1
- package/lib/features/store/objects/components/ContentDispositionButton.js +1 -1
- package/lib/features/store/objects/components/ContentDispositionButton.js.map +1 -1
- package/lib/features/store/objects/components/ContentOverview.d.ts.map +1 -1
- package/lib/features/store/objects/components/ContentOverview.js +148 -31
- package/lib/features/store/objects/components/ContentOverview.js.map +1 -1
- package/lib/features/store/objects/components/DocumentIcon.js +1 -1
- package/lib/features/store/objects/components/VectorSearchWidget.js +1 -1
- package/lib/features/store/objects/components/VectorSearchWidget.js.map +1 -1
- package/lib/features/store/objects/components/useContentPanelHooks.d.ts +1 -2
- package/lib/features/store/objects/components/useContentPanelHooks.d.ts.map +1 -1
- package/lib/features/store/objects/components/useContentPanelHooks.js +4 -8
- package/lib/features/store/objects/components/useContentPanelHooks.js.map +1 -1
- package/lib/features/store/objects/layout/renderers.d.ts.map +1 -1
- package/lib/features/store/objects/layout/renderers.js +2 -2
- package/lib/features/store/objects/layout/renderers.js.map +1 -1
- package/lib/features/store/objects/selection/SelectionActions.js +1 -1
- package/lib/features/store/objects/selection/SelectionActions.js.map +1 -1
- package/lib/features/store/types/ContentObjectTypesTable.d.ts.map +1 -1
- package/lib/features/store/types/ContentObjectTypesTable.js +4 -4
- package/lib/features/store/types/ContentObjectTypesTable.js.map +1 -1
- package/lib/features/store/types/IntakePolicyEditor.d.ts +15 -0
- package/lib/features/store/types/IntakePolicyEditor.d.ts.map +1 -0
- package/lib/features/store/types/IntakePolicyEditor.js +455 -0
- package/lib/features/store/types/IntakePolicyEditor.js.map +1 -0
- package/lib/features/store/types/IntakePolicyForm.d.ts +11 -0
- package/lib/features/store/types/IntakePolicyForm.d.ts.map +1 -0
- package/lib/features/store/types/IntakePolicyForm.js +91 -0
- package/lib/features/store/types/IntakePolicyForm.js.map +1 -0
- package/lib/features/store/types/SelectContentTypeModal.js +1 -1
- package/lib/features/store/types/SelectContentTypeModal.js.map +1 -1
- package/lib/features/store/types/index.d.ts +2 -0
- package/lib/features/store/types/index.d.ts.map +1 -1
- package/lib/features/store/types/index.js +2 -0
- package/lib/features/store/types/index.js.map +1 -1
- package/lib/features/store/types/intake-policy-editor.logic.d.ts +7 -0
- package/lib/features/store/types/intake-policy-editor.logic.d.ts.map +1 -0
- package/lib/features/store/types/intake-policy-editor.logic.js +60 -0
- package/lib/features/store/types/intake-policy-editor.logic.js.map +1 -0
- package/lib/features/store/types/typeCatalogCache.d.ts +5 -0
- package/lib/features/store/types/typeCatalogCache.d.ts.map +1 -0
- package/lib/features/store/types/typeCatalogCache.js +40 -0
- package/lib/features/store/types/typeCatalogCache.js.map +1 -0
- package/lib/features/user/UserInfo.js +7 -3
- package/lib/features/user/UserInfo.js.map +1 -1
- package/lib/features/views/ViewExperience.d.ts +20 -0
- package/lib/features/views/ViewExperience.d.ts.map +1 -0
- package/lib/features/views/ViewExperience.js +188 -0
- package/lib/features/views/ViewExperience.js.map +1 -0
- package/lib/features/views/ViewNavigation.d.ts +3 -0
- package/lib/features/views/ViewNavigation.d.ts.map +1 -0
- package/lib/features/views/ViewNavigation.js +36 -0
- package/lib/features/views/ViewNavigation.js.map +1 -0
- package/lib/features/views/ViewResults.d.ts +9 -0
- package/lib/features/views/ViewResults.d.ts.map +1 -0
- package/lib/features/views/ViewResults.js +229 -0
- package/lib/features/views/ViewResults.js.map +1 -0
- package/lib/features/views/ViewSearch.d.ts +3 -0
- package/lib/features/views/ViewSearch.d.ts.map +1 -0
- package/lib/features/views/ViewSearch.js +74 -0
- package/lib/features/views/ViewSearch.js.map +1 -0
- package/lib/features/views/index.d.ts +7 -0
- package/lib/features/views/index.d.ts.map +1 -0
- package/lib/features/views/index.js +7 -0
- package/lib/features/views/index.js.map +1 -0
- package/lib/features/views/types.d.ts +39 -0
- package/lib/features/views/types.d.ts.map +1 -0
- package/lib/features/views/types.js +2 -0
- package/lib/features/views/types.js.map +1 -0
- package/lib/features/views/viewState.d.ts +14 -0
- package/lib/features/views/viewState.d.ts.map +1 -0
- package/lib/features/views/viewState.js +117 -0
- package/lib/features/views/viewState.js.map +1 -0
- package/lib/i18n/locales/ar.json +18 -0
- package/lib/i18n/locales/de.json +14 -0
- package/lib/i18n/locales/en.json +246 -32
- package/lib/i18n/locales/es.json +15 -0
- package/lib/i18n/locales/fr.json +15 -0
- package/lib/i18n/locales/it.json +15 -0
- package/lib/i18n/locales/ja.json +13 -0
- package/lib/i18n/locales/ko.json +13 -0
- package/lib/i18n/locales/pt.json +15 -0
- package/lib/i18n/locales/ru.json +16 -0
- package/lib/i18n/locales/tr.json +14 -0
- package/lib/i18n/locales/zh-TW.json +13 -0
- package/lib/i18n/locales/zh.json +13 -0
- package/lib/router/HistoryNavigator.d.ts.map +1 -1
- package/lib/router/HistoryNavigator.js +27 -14
- package/lib/router/HistoryNavigator.js.map +1 -1
- package/lib/router/Nav.d.ts.map +1 -1
- package/lib/router/Nav.js +21 -6
- package/lib/router/Nav.js.map +1 -1
- package/lib/router/Router.d.ts.map +1 -1
- package/lib/router/Router.js +19 -4
- package/lib/router/Router.js.map +1 -1
- package/lib/router/path.d.ts +15 -0
- package/lib/router/path.d.ts.map +1 -1
- package/lib/router/path.js +43 -0
- package/lib/router/path.js.map +1 -1
- package/lib/session/UserSession.d.ts +6 -0
- package/lib/session/UserSession.d.ts.map +1 -1
- package/lib/session/UserSession.js +36 -12
- package/lib/session/UserSession.js.map +1 -1
- package/lib/session/UserSessionProvider.d.ts.map +1 -1
- package/lib/session/UserSessionProvider.js +111 -49
- package/lib/session/UserSessionProvider.js.map +1 -1
- package/lib/session/auth/composable.d.ts.map +1 -1
- package/lib/session/auth/composable.js +52 -3
- package/lib/session/auth/composable.js.map +1 -1
- package/lib/session/auth/domainRouting.d.ts +25 -0
- package/lib/session/auth/domainRouting.d.ts.map +1 -1
- package/lib/session/auth/domainRouting.js +36 -0
- package/lib/session/auth/domainRouting.js.map +1 -1
- package/lib/shell/login/SignInRestrictedEnvStep.d.ts +1 -1
- package/lib/shell/login/SignInRestrictedEnvStep.js +1 -1
- package/lib/shell/login/SigninScreen.js +9 -1
- package/lib/shell/login/SigninScreen.js.map +1 -1
- package/lib/shell/login/productionUrl.d.ts +0 -14
- package/lib/shell/login/productionUrl.d.ts.map +1 -1
- package/lib/shell/login/productionUrl.js +14 -5
- package/lib/shell/login/productionUrl.js.map +1 -1
- package/lib/vertesia-ui-core.js +4 -4
- package/lib/vertesia-ui-core.js.map +1 -1
- package/lib/vertesia-ui-env.js +1 -1
- package/lib/vertesia-ui-env.js.map +1 -1
- package/lib/vertesia-ui-features.js +35 -28
- package/lib/vertesia-ui-features.js.map +1 -1
- package/lib/vertesia-ui-i18n.js +15 -15
- package/lib/vertesia-ui-i18n.js.map +1 -1
- package/lib/vertesia-ui-router.js +1 -1
- package/lib/vertesia-ui-router.js.map +1 -1
- package/lib/vertesia-ui-session.js +1 -1
- package/lib/vertesia-ui-session.js.map +1 -1
- package/lib/vertesia-ui-shell.js +1 -1
- package/lib/vertesia-ui-shell.js.map +1 -1
- package/lib/vertesia-ui-widgets.js +7 -7
- package/lib/vertesia-ui-widgets.js.map +1 -1
- package/lib/widgets/form/Form.js +1 -1
- package/lib/widgets/form/Form.js.map +1 -1
- package/lib/widgets/json-view/JSONSwitcher.js +1 -1
- package/lib/widgets/json-view/JSONSwitcher.js.map +1 -1
- package/lib/widgets/json-view/JSONView.js +6 -6
- package/lib/widgets/json-view/JSONView.js.map +1 -1
- package/lib/widgets/monacoEditor/MonacoEditor.d.ts.map +1 -1
- package/lib/widgets/monacoEditor/MonacoEditor.js +29 -0
- package/lib/widgets/monacoEditor/MonacoEditor.js.map +1 -1
- package/lib/widgets/schema-editor/ManagedSchema.d.ts +8 -0
- package/lib/widgets/schema-editor/ManagedSchema.d.ts.map +1 -1
- package/lib/widgets/schema-editor/ManagedSchema.js +16 -0
- package/lib/widgets/schema-editor/ManagedSchema.js.map +1 -1
- package/lib/widgets/schema-editor/editor/EditableSchemaProperty.d.ts +2 -0
- package/lib/widgets/schema-editor/editor/EditableSchemaProperty.d.ts.map +1 -1
- package/lib/widgets/schema-editor/editor/EditableSchemaProperty.js +1 -0
- package/lib/widgets/schema-editor/editor/EditableSchemaProperty.js.map +1 -1
- package/lib/widgets/schema-editor/editor/PropertyViewer.d.ts.map +1 -1
- package/lib/widgets/schema-editor/editor/PropertyViewer.js +4 -1
- package/lib/widgets/schema-editor/editor/PropertyViewer.js.map +1 -1
- package/lib/widgets/schema-editor/editor/SchemaEditor.d.ts.map +1 -1
- package/lib/widgets/schema-editor/editor/SchemaEditor.js +22 -11
- package/lib/widgets/schema-editor/editor/SchemaEditor.js.map +1 -1
- package/llms.txt +70 -70
- package/package.json +33 -32
- package/src/__tests__/a11y.test.tsx +73 -0
- package/src/core/components/SidePanel.tsx +1 -1
- package/src/core/components/shadcn/button.tsx +67 -12
- package/src/core/components/shadcn/modal/dialog.tsx +1 -1
- package/src/core/components/shadcn/theme/ThemeSwitcher.tsx +1 -1
- package/src/env/index.ts +24 -0
- package/src/features/agent/chat/AgentChatPlaybackControls.tsx +0 -5
- package/src/features/agent/chat/AgentRequestInputOverlay.test.tsx +31 -0
- package/src/features/agent/chat/AgentRequestInputOverlay.tsx +6 -2
- package/src/features/agent/chat/ArtifactsTab.tsx +165 -21
- package/src/features/agent/chat/ImageLightbox.tsx +0 -1
- package/src/features/agent/chat/ModernAgentConversation.test.tsx +48 -0
- package/src/features/agent/chat/ModernAgentConversation.tsx +53 -51
- package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.test.tsx +6 -1
- package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.tsx +21 -15
- package/src/features/agent/chat/ModernAgentOutput/Header.tsx +3 -3
- package/src/features/agent/chat/ModernAgentOutput/MessageInput.tsx +0 -2
- package/src/features/agent/chat/ModernAgentOutput/MessageItem.tsx +4 -1
- package/src/features/agent/chat/ModernAgentOutput/requestInputMessages.test.ts +80 -0
- package/src/features/agent/chat/ModernAgentOutput/requestInputMessages.ts +21 -1
- package/src/features/agent/chat/hooks/useArtifacts.ts +44 -11
- package/src/features/document-viewer/UniversalDocumentViewer.test.tsx +123 -0
- package/src/features/document-viewer/UniversalDocumentViewer.tsx +746 -0
- package/src/features/document-viewer/index.ts +1 -0
- package/src/features/environment/SelectEnvironment.tsx +186 -0
- package/src/features/environment/index.ts +1 -0
- package/src/features/index.ts +3 -0
- package/src/features/magic-pdf/AnnotatedImageSlider.tsx +62 -66
- package/src/features/magic-pdf/DownloadPopover.tsx +5 -48
- package/src/features/magic-pdf/ExtractedContentView.tsx +2 -14
- package/src/features/magic-pdf/GroundedExtractionAssistantPanel.tsx +86 -0
- package/src/features/magic-pdf/GroundedExtractionView.test.tsx +65 -0
- package/src/features/magic-pdf/GroundedExtractionView.tsx +1055 -0
- package/src/features/magic-pdf/MagicPdfProvider.tsx +17 -47
- package/src/features/magic-pdf/MagicPdfView.tsx +3 -51
- package/src/features/magic-pdf/index.ts +1 -0
- package/src/features/magic-pdf/types.ts +1 -1
- package/src/features/oauth/McpConnectionsButton.tsx +0 -2
- package/src/features/oauth/McpConnectionsDialog.tsx +0 -1
- package/src/features/oauth/RemoteMcpConnectionButton.tsx +0 -1
- package/src/features/pdf-viewer/PdfPageSlider.tsx +5 -5
- package/src/features/pdf-viewer/SimplePdfViewer.tsx +11 -12
- package/src/features/permissions/UserPermissionsProvider.tsx +36 -39
- package/src/features/store/objects/DocumentQuickFilter.tsx +13 -15
- package/src/features/store/objects/DocumentSearchResults.tsx +3 -6
- package/src/features/store/objects/components/ContentDispositionButton.tsx +5 -1
- package/src/features/store/objects/components/ContentOverview.tsx +240 -67
- package/src/features/store/objects/components/DocumentIcon.tsx +1 -1
- package/src/features/store/objects/components/VectorSearchWidget.tsx +2 -2
- package/src/features/store/objects/components/useContentPanelHooks.ts +3 -15
- package/src/features/store/objects/layout/renderers.tsx +1 -2
- package/src/features/store/objects/selection/SelectionActions.tsx +1 -1
- package/src/features/store/types/ContentObjectTypesTable.tsx +12 -14
- package/src/features/store/types/IntakePolicyEditor.tsx +679 -0
- package/src/features/store/types/IntakePolicyForm.tsx +838 -0
- package/src/features/store/types/SelectContentTypeModal.tsx +2 -2
- package/src/features/store/types/index.ts +2 -0
- package/src/features/store/types/intake-policy-editor.logic.test.ts +109 -0
- package/src/features/store/types/intake-policy-editor.logic.ts +87 -0
- package/src/features/store/types/typeCatalogCache.ts +45 -0
- package/src/features/user/UserInfo.tsx +7 -7
- package/src/features/views/ViewExperience.test.tsx +273 -0
- package/src/features/views/ViewExperience.tsx +408 -0
- package/src/features/views/ViewNavigation.test.tsx +86 -0
- package/src/features/views/ViewNavigation.tsx +187 -0
- package/src/features/views/ViewResults.test.ts +82 -0
- package/src/features/views/ViewResults.tsx +609 -0
- package/src/features/views/ViewSearch.test.tsx +147 -0
- package/src/features/views/ViewSearch.tsx +205 -0
- package/src/features/views/index.ts +6 -0
- package/src/features/views/types.ts +57 -0
- package/src/features/views/viewState.test.ts +111 -0
- package/src/features/views/viewState.ts +132 -0
- package/src/i18n/locales/ar.json +18 -0
- package/src/i18n/locales/de.json +14 -0
- package/src/i18n/locales/en.json +965 -751
- package/src/i18n/locales/es.json +15 -0
- package/src/i18n/locales/fr.json +15 -0
- package/src/i18n/locales/it.json +15 -0
- package/src/i18n/locales/ja.json +13 -0
- package/src/i18n/locales/ko.json +13 -0
- package/src/i18n/locales/pt.json +15 -0
- package/src/i18n/locales/ru.json +16 -0
- package/src/i18n/locales/tr.json +14 -0
- package/src/i18n/locales/zh-TW.json +13 -0
- package/src/i18n/locales/zh.json +13 -0
- package/src/router/HistoryNavigator.test.ts +48 -0
- package/src/router/HistoryNavigator.ts +28 -14
- package/src/router/Nav.tsx +24 -8
- package/src/router/Router.tsx +18 -4
- package/src/router/path.test.ts +87 -0
- package/src/router/path.ts +38 -0
- package/src/session/UserSession.test.ts +39 -0
- package/src/session/UserSession.ts +37 -12
- package/src/session/UserSessionProvider.tsx +138 -62
- package/src/session/auth/composable.test.ts +111 -0
- package/src/session/auth/composable.ts +58 -3
- package/src/session/auth/domainRouting.test.ts +28 -1
- package/src/session/auth/domainRouting.ts +38 -0
- package/src/shell/login/SignInRestrictedEnvStep.tsx +1 -1
- package/src/shell/login/SigninScreen.tsx +9 -1
- package/src/shell/login/productionUrl.test.ts +8 -5
- package/src/shell/login/productionUrl.ts +15 -5
- package/src/widgets/form/Form.tsx +1 -1
- package/src/widgets/json-view/JSONSwitcher.tsx +2 -2
- package/src/widgets/json-view/JSONView.tsx +7 -7
- package/src/widgets/monacoEditor/MonacoEditor.tsx +29 -0
- package/src/widgets/schema-editor/ManagedSchema.ts +22 -0
- package/src/widgets/schema-editor/editor/EditableSchemaProperty.tsx +3 -0
- package/src/widgets/schema-editor/editor/PropertyViewer.tsx +14 -3
- package/src/widgets/schema-editor/editor/SchemaEditor.tsx +80 -29
package/lib/i18n/locales/ko.json
CHANGED
|
@@ -124,6 +124,7 @@
|
|
|
124
124
|
"agent.noPlanAvailable": "사용 가능한 계획 없음",
|
|
125
125
|
"agent.noPlanDetected": "아직 계획이 감지되지 않았습니다",
|
|
126
126
|
"agent.olderPlan": "이전 계획",
|
|
127
|
+
"agent.onlySystemArtifacts": "Only system files in this run. Enable \"System files\" to view them.",
|
|
127
128
|
"agent.openDocument": "문서 열기",
|
|
128
129
|
"agent.openInNewTab": "새 탭에서 열기",
|
|
129
130
|
"agent.panelRenderError": "{{name}}을(를) 렌더링할 수 없습니다",
|
|
@@ -171,6 +172,7 @@
|
|
|
171
172
|
"agent.showLess": "덜 보기",
|
|
172
173
|
"agent.showMore": "더 보기",
|
|
173
174
|
"agent.showSidebar": "사이드바 표시",
|
|
175
|
+
"agent.showSystemArtifacts": "System files",
|
|
174
176
|
"agent.staged": "준비됨",
|
|
175
177
|
"agent.startAgent": "에이전트 시작",
|
|
176
178
|
"agent.startingAgent": "에이전트 시작 중...",
|
|
@@ -271,6 +273,7 @@
|
|
|
271
273
|
"filter.selectRange": "범위 선택",
|
|
272
274
|
"filter.to": "끝:",
|
|
273
275
|
"form.filter": "필터...",
|
|
276
|
+
"grounded.checkerboard": "체커보드",
|
|
274
277
|
"language.label": "언어",
|
|
275
278
|
"language.placeholder": "언어 선택",
|
|
276
279
|
"layout.pageNotFound": "페이지를 찾을 수 없음",
|
|
@@ -732,6 +735,16 @@
|
|
|
732
735
|
"user.unnamedGroup": "이름 없는 그룹",
|
|
733
736
|
"user.user": "사용자",
|
|
734
737
|
"user.userId": "사용자 ID",
|
|
738
|
+
"view.display": "표시",
|
|
739
|
+
"view.from": "시작",
|
|
740
|
+
"view.pagination": "결과 페이지",
|
|
741
|
+
"view.ranges": "범위",
|
|
742
|
+
"view.removeSelection": "{{value}} 제거",
|
|
743
|
+
"view.resultsCount_other": "{{count}}개 결과",
|
|
744
|
+
"view.searchFields": "검색 필드",
|
|
745
|
+
"view.sort": "정렬",
|
|
746
|
+
"view.to": "종료",
|
|
747
|
+
"view.warning": "보기 알림",
|
|
735
748
|
"widgets.schema.editDescription": "설명 편집",
|
|
736
749
|
"widgets.schema.invalidPropertyDeclaration": "유효하지 않은 속성 선언"
|
|
737
750
|
}
|
package/lib/i18n/locales/pt.json
CHANGED
|
@@ -125,6 +125,7 @@
|
|
|
125
125
|
"agent.noPlanAvailable": "Sem plano disponível",
|
|
126
126
|
"agent.noPlanDetected": "Nenhum plano detectado ainda",
|
|
127
127
|
"agent.olderPlan": "Plano anterior",
|
|
128
|
+
"agent.onlySystemArtifacts": "Only system files in this run. Enable \"System files\" to view them.",
|
|
128
129
|
"agent.openDocument": "Abrir documento",
|
|
129
130
|
"agent.openInNewTab": "Abrir em nova aba",
|
|
130
131
|
"agent.panelRenderError": "Não foi possível renderizar {{name}}",
|
|
@@ -172,6 +173,7 @@
|
|
|
172
173
|
"agent.showLess": "Mostrar menos",
|
|
173
174
|
"agent.showMore": "Mostrar mais",
|
|
174
175
|
"agent.showSidebar": "Mostrar painel",
|
|
176
|
+
"agent.showSystemArtifacts": "System files",
|
|
175
177
|
"agent.staged": "Preparado",
|
|
176
178
|
"agent.startAgent": "Iniciar agente",
|
|
177
179
|
"agent.startingAgent": "Iniciando agente...",
|
|
@@ -273,6 +275,7 @@
|
|
|
273
275
|
"filter.selectRange": "Selecionar intervalo",
|
|
274
276
|
"filter.to": "Até:",
|
|
275
277
|
"form.filter": "Filtrar...",
|
|
278
|
+
"grounded.checkerboard": "Grade quadriculada",
|
|
276
279
|
"language.label": "Idioma",
|
|
277
280
|
"language.placeholder": "Escolher idioma",
|
|
278
281
|
"layout.pageNotFound": "Página não encontrada",
|
|
@@ -742,6 +745,18 @@
|
|
|
742
745
|
"user.unnamedGroup": "Grupo sem nome",
|
|
743
746
|
"user.user": "Usuário",
|
|
744
747
|
"user.userId": "ID do usuário",
|
|
748
|
+
"view.display": "Exibição",
|
|
749
|
+
"view.from": "De",
|
|
750
|
+
"view.pagination": "Páginas de resultados",
|
|
751
|
+
"view.ranges": "Intervalos",
|
|
752
|
+
"view.removeSelection": "Remover {{value}}",
|
|
753
|
+
"view.resultsCount_one": "{{count}} resultado",
|
|
754
|
+
"view.resultsCount_many": "{{count}} resultados",
|
|
755
|
+
"view.resultsCount_other": "{{count}} resultados",
|
|
756
|
+
"view.searchFields": "Campos de pesquisa",
|
|
757
|
+
"view.sort": "Ordenar",
|
|
758
|
+
"view.to": "Até",
|
|
759
|
+
"view.warning": "Aviso de visualização",
|
|
745
760
|
"widgets.schema.editDescription": "Editar descrição",
|
|
746
761
|
"widgets.schema.invalidPropertyDeclaration": "Declaração de propriedade inválida"
|
|
747
762
|
}
|
package/lib/i18n/locales/ru.json
CHANGED
|
@@ -126,6 +126,7 @@
|
|
|
126
126
|
"agent.noPlanAvailable": "План недоступен",
|
|
127
127
|
"agent.noPlanDetected": "План пока не обнаружен",
|
|
128
128
|
"agent.olderPlan": "Более старый план",
|
|
129
|
+
"agent.onlySystemArtifacts": "Only system files in this run. Enable \"System files\" to view them.",
|
|
129
130
|
"agent.openDocument": "Открыть документ",
|
|
130
131
|
"agent.openInNewTab": "Открыть в новой вкладке",
|
|
131
132
|
"agent.panelRenderError": "Не удалось отобразить {{name}}",
|
|
@@ -173,6 +174,7 @@
|
|
|
173
174
|
"agent.showLess": "Показать меньше",
|
|
174
175
|
"agent.showMore": "Показать больше",
|
|
175
176
|
"agent.showSidebar": "Показать боковую панель",
|
|
177
|
+
"agent.showSystemArtifacts": "System files",
|
|
176
178
|
"agent.staged": "Подготовлено",
|
|
177
179
|
"agent.startAgent": "Запустить агента",
|
|
178
180
|
"agent.startingAgent": "Запуск агента...",
|
|
@@ -275,6 +277,7 @@
|
|
|
275
277
|
"filter.selectRange": "Выбрать диапазон",
|
|
276
278
|
"filter.to": "До:",
|
|
277
279
|
"form.filter": "Фильтр...",
|
|
280
|
+
"grounded.checkerboard": "Клетчатая сетка",
|
|
278
281
|
"language.label": "Язык",
|
|
279
282
|
"language.placeholder": "Выберите язык",
|
|
280
283
|
"layout.pageNotFound": "Страница не найдена",
|
|
@@ -752,6 +755,19 @@
|
|
|
752
755
|
"user.unnamedGroup": "Группа без названия",
|
|
753
756
|
"user.user": "Пользователь",
|
|
754
757
|
"user.userId": "ID пользователя",
|
|
758
|
+
"view.display": "Отображение",
|
|
759
|
+
"view.from": "От",
|
|
760
|
+
"view.pagination": "Страницы результатов",
|
|
761
|
+
"view.ranges": "Диапазоны",
|
|
762
|
+
"view.removeSelection": "Удалить {{value}}",
|
|
763
|
+
"view.resultsCount_one": "{{count}} результат",
|
|
764
|
+
"view.resultsCount_few": "{{count}} результата",
|
|
765
|
+
"view.resultsCount_many": "{{count}} результатов",
|
|
766
|
+
"view.resultsCount_other": "{{count}} результата",
|
|
767
|
+
"view.searchFields": "Поля поиска",
|
|
768
|
+
"view.sort": "Сортировать",
|
|
769
|
+
"view.to": "До",
|
|
770
|
+
"view.warning": "Уведомление о представлении",
|
|
755
771
|
"widgets.schema.editDescription": "Редактировать описание",
|
|
756
772
|
"widgets.schema.invalidPropertyDeclaration": "Недопустимое объявление свойства"
|
|
757
773
|
}
|
package/lib/i18n/locales/tr.json
CHANGED
|
@@ -124,6 +124,7 @@
|
|
|
124
124
|
"agent.noPlanAvailable": "Plan mevcut değil",
|
|
125
125
|
"agent.noPlanDetected": "Henüz bir plan algılanmadı",
|
|
126
126
|
"agent.olderPlan": "Daha eski plan",
|
|
127
|
+
"agent.onlySystemArtifacts": "Only system files in this run. Enable \"System files\" to view them.",
|
|
127
128
|
"agent.openDocument": "Belgeyi aç",
|
|
128
129
|
"agent.openInNewTab": "Yeni sekmede aç",
|
|
129
130
|
"agent.panelRenderError": "{{name}} işlenemedi",
|
|
@@ -171,6 +172,7 @@
|
|
|
171
172
|
"agent.showLess": "Daha az göster",
|
|
172
173
|
"agent.showMore": "Daha fazla göster",
|
|
173
174
|
"agent.showSidebar": "Kenar çubuğunu göster",
|
|
175
|
+
"agent.showSystemArtifacts": "System files",
|
|
174
176
|
"agent.staged": "Hazırlandı",
|
|
175
177
|
"agent.startAgent": "Ajanı başlat",
|
|
176
178
|
"agent.startingAgent": "Ajan başlatılıyor...",
|
|
@@ -271,6 +273,7 @@
|
|
|
271
273
|
"filter.selectRange": "Aralık seçin",
|
|
272
274
|
"filter.to": "Bitiş:",
|
|
273
275
|
"form.filter": "Filtrele...",
|
|
276
|
+
"grounded.checkerboard": "Damalı ızgara",
|
|
274
277
|
"language.label": "Dil",
|
|
275
278
|
"language.placeholder": "Dil seçin",
|
|
276
279
|
"layout.pageNotFound": "Sayfa Bulunamadı",
|
|
@@ -732,6 +735,17 @@
|
|
|
732
735
|
"user.unnamedGroup": "Adsız Grup",
|
|
733
736
|
"user.user": "Kullanıcı",
|
|
734
737
|
"user.userId": "Kullanıcı ID",
|
|
738
|
+
"view.display": "Görüntüle",
|
|
739
|
+
"view.from": "Başlangıç",
|
|
740
|
+
"view.pagination": "Sonuç sayfaları",
|
|
741
|
+
"view.ranges": "Aralıklar",
|
|
742
|
+
"view.removeSelection": "{{value}} seçimini kaldır",
|
|
743
|
+
"view.resultsCount_one": "{{count}} sonuç",
|
|
744
|
+
"view.resultsCount_other": "{{count}} sonuç",
|
|
745
|
+
"view.searchFields": "Arama alanları",
|
|
746
|
+
"view.sort": "Sırala",
|
|
747
|
+
"view.to": "Bitiş",
|
|
748
|
+
"view.warning": "Görünüm bildirimi",
|
|
735
749
|
"widgets.schema.editDescription": "Açıklamayı düzenle",
|
|
736
750
|
"widgets.schema.invalidPropertyDeclaration": "Geçersiz özellik bildirimi"
|
|
737
751
|
}
|
|
@@ -124,6 +124,7 @@
|
|
|
124
124
|
"agent.noPlanAvailable": "暫無計劃",
|
|
125
125
|
"agent.noPlanDetected": "尚未偵測到計劃",
|
|
126
126
|
"agent.olderPlan": "較舊的計劃",
|
|
127
|
+
"agent.onlySystemArtifacts": "Only system files in this run. Enable \"System files\" to view them.",
|
|
127
128
|
"agent.openDocument": "開啟文件",
|
|
128
129
|
"agent.openInNewTab": "在新分頁中開啟",
|
|
129
130
|
"agent.panelRenderError": "無法呈現 {{name}}",
|
|
@@ -171,6 +172,7 @@
|
|
|
171
172
|
"agent.showLess": "顯示較少",
|
|
172
173
|
"agent.showMore": "顯示更多",
|
|
173
174
|
"agent.showSidebar": "顯示側邊欄",
|
|
175
|
+
"agent.showSystemArtifacts": "System files",
|
|
174
176
|
"agent.staged": "已暫存",
|
|
175
177
|
"agent.startAgent": "啟動代理",
|
|
176
178
|
"agent.startingAgent": "正在啟動代理...",
|
|
@@ -271,6 +273,7 @@
|
|
|
271
273
|
"filter.selectRange": "選擇範圍",
|
|
272
274
|
"filter.to": "至:",
|
|
273
275
|
"form.filter": "篩選...",
|
|
276
|
+
"grounded.checkerboard": "棋盤格",
|
|
274
277
|
"language.label": "語言",
|
|
275
278
|
"language.placeholder": "選擇語言",
|
|
276
279
|
"layout.pageNotFound": "頁面未找到",
|
|
@@ -732,6 +735,16 @@
|
|
|
732
735
|
"user.unnamedGroup": "未命名群組",
|
|
733
736
|
"user.user": "使用者",
|
|
734
737
|
"user.userId": "使用者ID",
|
|
738
|
+
"view.display": "顯示",
|
|
739
|
+
"view.from": "起始",
|
|
740
|
+
"view.pagination": "結果頁面",
|
|
741
|
+
"view.ranges": "範圍",
|
|
742
|
+
"view.removeSelection": "移除 {{value}}",
|
|
743
|
+
"view.resultsCount_other": "{{count}} 個結果",
|
|
744
|
+
"view.searchFields": "搜尋欄位",
|
|
745
|
+
"view.sort": "排序",
|
|
746
|
+
"view.to": "結束",
|
|
747
|
+
"view.warning": "檢視通知",
|
|
735
748
|
"widgets.schema.editDescription": "編輯描述",
|
|
736
749
|
"widgets.schema.invalidPropertyDeclaration": "無效的屬性宣告"
|
|
737
750
|
}
|
package/lib/i18n/locales/zh.json
CHANGED
|
@@ -124,6 +124,7 @@
|
|
|
124
124
|
"agent.noPlanAvailable": "暂无计划",
|
|
125
125
|
"agent.noPlanDetected": "尚未检测到计划",
|
|
126
126
|
"agent.olderPlan": "较旧的计划",
|
|
127
|
+
"agent.onlySystemArtifacts": "Only system files in this run. Enable \"System files\" to view them.",
|
|
127
128
|
"agent.openDocument": "打开文档",
|
|
128
129
|
"agent.openInNewTab": "在新标签页中打开",
|
|
129
130
|
"agent.panelRenderError": "无法渲染 {{name}}",
|
|
@@ -171,6 +172,7 @@
|
|
|
171
172
|
"agent.showLess": "显示更少",
|
|
172
173
|
"agent.showMore": "显示更多",
|
|
173
174
|
"agent.showSidebar": "显示侧边栏",
|
|
175
|
+
"agent.showSystemArtifacts": "System files",
|
|
174
176
|
"agent.staged": "已暂存",
|
|
175
177
|
"agent.startAgent": "启动代理",
|
|
176
178
|
"agent.startingAgent": "正在启动代理...",
|
|
@@ -271,6 +273,7 @@
|
|
|
271
273
|
"filter.selectRange": "选择范围",
|
|
272
274
|
"filter.to": "至:",
|
|
273
275
|
"form.filter": "筛选...",
|
|
276
|
+
"grounded.checkerboard": "棋盘格",
|
|
274
277
|
"language.label": "语言",
|
|
275
278
|
"language.placeholder": "选择语言",
|
|
276
279
|
"layout.pageNotFound": "页面未找到",
|
|
@@ -732,6 +735,16 @@
|
|
|
732
735
|
"user.unnamedGroup": "未命名群组",
|
|
733
736
|
"user.user": "用户",
|
|
734
737
|
"user.userId": "用户ID",
|
|
738
|
+
"view.display": "显示",
|
|
739
|
+
"view.from": "起始",
|
|
740
|
+
"view.pagination": "结果页面",
|
|
741
|
+
"view.ranges": "范围",
|
|
742
|
+
"view.removeSelection": "移除 {{value}}",
|
|
743
|
+
"view.resultsCount_other": "{{count}} 个结果",
|
|
744
|
+
"view.searchFields": "搜索字段",
|
|
745
|
+
"view.sort": "排序",
|
|
746
|
+
"view.to": "结束",
|
|
747
|
+
"view.warning": "视图通知",
|
|
735
748
|
"widgets.schema.editDescription": "编辑描述",
|
|
736
749
|
"widgets.schema.invalidPropertyDeclaration": "无效的属性声明"
|
|
737
750
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HistoryNavigator.d.ts","sourceRoot":"","sources":["../../src/router/HistoryNavigator.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,SAAS,eAAsB,CAAC;AAEtC,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,MAAM,MAAM,uBAAuB,GAAG,cAAc,GAAG,aAAa,CAAC;AACrE,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;AACnF,qBAAa,mBAAmB;IAGjB,IAAI,EAAE,uBAAuB;IAC7B,IAAI,EAAE,kBAAkB;IACxB,QAAQ,EAAE,GAAG;IACb,KAAK,CAAC,EAAE,OAAO;IAL1B,SAAS,UAAS;gBAEP,IAAI,EAAE,uBAAuB,EAC7B,IAAI,EAAE,kBAAkB,EACxB,QAAQ,EAAE,GAAG,EACb,KAAK,CAAC,EAAE,OAAO,YAAA;IAG1B,IAAI,UAAU,YAEb;IAED,IAAI,aAAa,YAEhB;IAED,IAAI,WAAW,YAEd;IAED,IAAI,YAAY,YAEf;IAED,IAAI,YAAY,YAEf;IAED,MAAM;CAMT;AAED,qBAAa,yBAA0B,SAAQ,mBAAmB;gBAClD,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO;CAGvE;AACD,qBAAa,wBAAyB,SAAQ,mBAAmB;gBACjD,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO;CAGvE;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"HistoryNavigator.d.ts","sourceRoot":"","sources":["../../src/router/HistoryNavigator.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,SAAS,eAAsB,CAAC;AAEtC,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,MAAM,MAAM,uBAAuB,GAAG,cAAc,GAAG,aAAa,CAAC;AACrE,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;AACnF,qBAAa,mBAAmB;IAGjB,IAAI,EAAE,uBAAuB;IAC7B,IAAI,EAAE,kBAAkB;IACxB,QAAQ,EAAE,GAAG;IACb,KAAK,CAAC,EAAE,OAAO;IAL1B,SAAS,UAAS;gBAEP,IAAI,EAAE,uBAAuB,EAC7B,IAAI,EAAE,kBAAkB,EACxB,QAAQ,EAAE,GAAG,EACb,KAAK,CAAC,EAAE,OAAO,YAAA;IAG1B,IAAI,UAAU,YAEb;IAED,IAAI,aAAa,YAEhB;IAED,IAAI,WAAW,YAEd;IAED,IAAI,YAAY,YAEf;IAED,IAAI,YAAY,YAEf;IAED,MAAM;CAMT;AAED,qBAAa,yBAA0B,SAAQ,mBAAmB;gBAClD,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO;CAGvE;AACD,qBAAa,wBAAyB,SAAQ,mBAAmB;gBACjD,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO;CAGvE;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAcD,qBAAa,gBAAgB;IAEzB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,iBAAiB,CAAC,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAC;IAChD,gBAAgB,CAAC,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,IAAI,CAAC;IAC5C,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC,EAAE,CAAM;IAE1D,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI;IAI1D,kBAAkB,CAAC,KAAK,EAAE,mBAAmB;IAM7C;;;OAGG;IACH,YAAY;IAIZ,eAAe,CAAC,IAAI,EAAE,MAAM;IAO5B;;;;;;;;OAQG;IACH,mBAAmB;IAYnB,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB;IAoBlD,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB;IAmBrD,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,eAAe;IA6CrE,KAAK;IAsDL,IAAI;CAIP"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PathWithParams } from './PathWithParams';
|
|
2
|
-
import { joinPath } from './path';
|
|
2
|
+
import { joinPath, withMountBasename } from './path';
|
|
3
3
|
const BASE_PATH = Symbol('BASE_PATH');
|
|
4
4
|
export { BASE_PATH };
|
|
5
5
|
export class LocationChangeEvent {
|
|
@@ -46,14 +46,15 @@ export class AfterLocationChangeEvent extends LocationChangeEvent {
|
|
|
46
46
|
super('afterChange', type, location, state);
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
|
-
function
|
|
50
|
-
if (
|
|
51
|
-
|
|
52
|
-
if (typeof href === 'string' && href.length > 0) {
|
|
53
|
-
return new URL(href);
|
|
54
|
-
}
|
|
49
|
+
function getClosestAnchor(target) {
|
|
50
|
+
if (!(target instanceof Element)) {
|
|
51
|
+
return null;
|
|
55
52
|
}
|
|
56
|
-
return
|
|
53
|
+
return target.closest('a[href]');
|
|
54
|
+
}
|
|
55
|
+
function getElementHrefAsUrl(elem) {
|
|
56
|
+
const href = elem.href.trim();
|
|
57
|
+
return href.length > 0 ? new URL(href) : null;
|
|
57
58
|
}
|
|
58
59
|
export class HistoryNavigator {
|
|
59
60
|
// params to preserve in the query string when navigating
|
|
@@ -115,6 +116,9 @@ export class HistoryNavigator {
|
|
|
115
116
|
to = joinPath(basePath, to);
|
|
116
117
|
}
|
|
117
118
|
to = this.addStickyParams(to);
|
|
119
|
+
// Keep absolute app routes under the served `<base href>` mount instead of resolving them
|
|
120
|
+
// against the bare origin (which collapses the URL off the mount). No-op when origin-served.
|
|
121
|
+
to = withMountBasename(to);
|
|
118
122
|
this._navigate(new URL(to, window.location.href), 'navigate', options);
|
|
119
123
|
}
|
|
120
124
|
stepBack(steps, options = {}) {
|
|
@@ -186,14 +190,23 @@ export class HistoryNavigator {
|
|
|
186
190
|
this.fireLocationChange(new AfterLocationChangeEvent(type, to, state));
|
|
187
191
|
};
|
|
188
192
|
const _linkNavListener = (ev) => {
|
|
189
|
-
|
|
190
|
-
//
|
|
191
|
-
if (
|
|
192
|
-
|
|
193
|
-
|
|
193
|
+
// Let the browser handle modifier / non-primary clicks natively (open in new tab/window,
|
|
194
|
+
// download). Intercepting them here would preventDefault those affordances.
|
|
195
|
+
if (ev.defaultPrevented || ev.metaKey || ev.altKey || ev.ctrlKey || ev.shiftKey || ev.button !== 0) {
|
|
196
|
+
return;
|
|
197
|
+
}
|
|
198
|
+
const anchor = getClosestAnchor(ev.target);
|
|
199
|
+
if (!anchor) {
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
const anchorTarget = anchor.getAttribute('target');
|
|
203
|
+
// Downloads, blob URLs, and explicitly targeted links require native browser navigation.
|
|
204
|
+
if (anchor.hasAttribute('download') ||
|
|
205
|
+
anchor.href.startsWith('blob:') ||
|
|
206
|
+
(!!anchorTarget && anchorTarget.toLowerCase() !== '_self')) {
|
|
194
207
|
return;
|
|
195
208
|
}
|
|
196
|
-
const url = getElementHrefAsUrl(
|
|
209
|
+
const url = getElementHrefAsUrl(anchor);
|
|
197
210
|
if (url && url.origin === window.location.origin) {
|
|
198
211
|
ev.preventDefault();
|
|
199
212
|
const to = new URL(this.addStickyParams(url.href));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HistoryNavigator.js","sourceRoot":"","sources":["../../src/router/HistoryNavigator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"HistoryNavigator.js","sourceRoot":"","sources":["../../src/router/HistoryNavigator.ts"],"names":[],"mappings":"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"}
|
package/lib/router/Nav.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Nav.d.ts","sourceRoot":"","sources":["../../src/router/Nav.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Nav.d.ts","sourceRoot":"","sources":["../../src/router/Nav.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,OAAO,CAAC;AAaxD;;GAEG;AACH,UAAU,QAAQ;IACd,QAAQ,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;IAC9C;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,cAAc,KAAK,IAAI,CAAC;IACvC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AACD,wBAAgB,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,OAAc,EAAE,EAAE,QAAQ,+BAkBtE;AAED;;;GAGG;AACH,UAAU,YAAY;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B;AACD,wBAAgB,OAAO,CAAC,EACpB,QAAQ,EACR,IAAI,EACJ,SAAS,EACT,MAAM,EACN,WAAW,EACX,gBAAwB,EACxB,OAAO,EACP,gBAAgB,GACnB,EAAE,YAAY,+BA4Bd"}
|
package/lib/router/Nav.js
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { withMountBasename } from './path';
|
|
2
3
|
import { useNavigate, useRouterContext } from './Router';
|
|
4
|
+
/**
|
|
5
|
+
* True when the click carries a modifier the browser uses for alternate link behavior
|
|
6
|
+
* (open in new tab/window, download) or is not a primary-button click. Such clicks must fall
|
|
7
|
+
* through to the native anchor so the browser can handle them instead of the SPA router.
|
|
8
|
+
*/
|
|
9
|
+
function isModifiedClick(ev) {
|
|
10
|
+
return ev.metaKey || ev.altKey || ev.ctrlKey || ev.shiftKey || ev.button !== 0;
|
|
11
|
+
}
|
|
3
12
|
export function Nav({ children, to, onClick, replace = true }) {
|
|
4
13
|
const navigate = useNavigate();
|
|
5
14
|
const _onClick = (ev) => {
|
|
@@ -17,14 +26,20 @@ export function Nav({ children, to, onClick, replace = true }) {
|
|
|
17
26
|
}
|
|
18
27
|
export function NavLink({ children, href, className, target, topLevelNav, clearBreadcrumbs = false, replace, skipStickyParams, }) {
|
|
19
28
|
const { router } = useRouterContext();
|
|
20
|
-
//
|
|
21
|
-
//
|
|
29
|
+
// Resolve internal URLs even when a target makes navigation native. New-tab links still need
|
|
30
|
+
// the mount path and tenant sticky params, but must not be intercepted by the SPA router.
|
|
22
31
|
const isAnchorOrEmpty = !href || href.startsWith('#');
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
const
|
|
32
|
+
const isExternalUrl = /^[a-z][a-z0-9+.-]*:/i.test(href) || href.startsWith('//');
|
|
33
|
+
const isInternalUrl = !isAnchorOrEmpty && !isExternalUrl;
|
|
34
|
+
const isNativeNavigation = !!target && target !== '_self';
|
|
35
|
+
// Keep the rendered href under the served `<base href>` mount (correct middle-click / hover /
|
|
36
|
+
// open-in-new-tab); the onClick navigates via the router which applies the same rule. No-op when
|
|
37
|
+
// origin-served (Studio UI). Click handler below passes the raw `href` — navigate() re-bases it.
|
|
38
|
+
const resolvedHref = isInternalUrl
|
|
39
|
+
? withMountBasename(!skipStickyParams ? router.getTopRouter().navigator.addStickyParams(href) : href)
|
|
40
|
+
: href;
|
|
26
41
|
const _onClick = (ev) => {
|
|
27
|
-
if (ev.defaultPrevented || !
|
|
42
|
+
if (ev.defaultPrevented || !isInternalUrl || isNativeNavigation || isModifiedClick(ev)) {
|
|
28
43
|
return;
|
|
29
44
|
}
|
|
30
45
|
ev.stopPropagation();
|
package/lib/router/Nav.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Nav.js","sourceRoot":"","sources":["../../src/router/Nav.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"Nav.js","sourceRoot":"","sources":["../../src/router/Nav.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../src/router/Router.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,KAAK,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACtG,OAAO,EAAE,KAAK,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,
|
|
1
|
+
{"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../src/router/Router.tsx"],"names":[],"mappings":"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"}
|
package/lib/router/Router.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createContext, useContext, useEffect } from 'react';
|
|
2
2
|
import { HistoryNavigator } from './HistoryNavigator';
|
|
3
3
|
import { PathMatcher } from './PathMatcher';
|
|
4
|
-
import { isRootPath, joinPath } from './path';
|
|
4
|
+
import { getMountBasename, isRootPath, joinPath, stripMountBasename } from './path';
|
|
5
5
|
export class BaseRouter {
|
|
6
6
|
// the path to use when navigating to the root of the router
|
|
7
7
|
index;
|
|
@@ -33,7 +33,8 @@ export class Router extends BaseRouter {
|
|
|
33
33
|
}
|
|
34
34
|
// only process afterChange events
|
|
35
35
|
if (event.name === 'afterChange') {
|
|
36
|
-
|
|
36
|
+
// Match app-relative: strip the served `<base href>` mount prefix (no-op when origin-served).
|
|
37
|
+
const match = this.match(stripMountBasename(event.location.pathname));
|
|
37
38
|
if (match?.value) {
|
|
38
39
|
updateState({
|
|
39
40
|
...match,
|
|
@@ -129,8 +130,22 @@ export function useNavigate() {
|
|
|
129
130
|
return navigate;
|
|
130
131
|
}
|
|
131
132
|
export function useRouterBasePath() {
|
|
132
|
-
const {
|
|
133
|
-
|
|
133
|
+
const { router } = useRouterContext();
|
|
134
|
+
// The base path apps prepend to build absolute in-app links (e.g. `${base}/items/${id}`). It MUST
|
|
135
|
+
// include the served `<base href>` mount so links stay on the mount and match the full
|
|
136
|
+
// `useLocation().pathname` (which carries the mount). `getMountBasename()` is '' for the
|
|
137
|
+
// origin-served Studio UI and the mount (no trailing slash) for gateway-served apps.
|
|
138
|
+
const mount = getMountBasename();
|
|
139
|
+
if (router instanceof NestedRouter) {
|
|
140
|
+
// NestedRouter.basePath is relative to the parent router, which sits at the mount, so it must
|
|
141
|
+
// be mount-prefixed too. A bare nested base of '/' (an app whose NestedRouterProvider has no
|
|
142
|
+
// basePath) would otherwise make `${base}/items` resolve to `//items` — a protocol-relative
|
|
143
|
+
// URL that escapes the app. Origin-served Studio (mount '') keeps the raw nested basePath.
|
|
144
|
+
if (!mount)
|
|
145
|
+
return router.basePath;
|
|
146
|
+
return router.basePath === '/' ? mount : joinPath(mount, router.basePath);
|
|
147
|
+
}
|
|
148
|
+
return mount;
|
|
134
149
|
}
|
|
135
150
|
export function useParams(arg) {
|
|
136
151
|
const { params } = useRouterContext();
|
package/lib/router/Router.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Router.js","sourceRoot":"","sources":["../../src/router/Router.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAkD,MAAM,oBAAoB,CAAC;AACtG,OAAO,EAAkB,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAwB,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"Router.js","sourceRoot":"","sources":["../../src/router/Router.tsx"],"names":[],"mappings":"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"}
|
package/lib/router/path.d.ts
CHANGED
|
@@ -3,6 +3,21 @@ export type PathMatchParams = Record<string, string> & {
|
|
|
3
3
|
};
|
|
4
4
|
export declare function isRootPath(path: string): path is "" | "/";
|
|
5
5
|
export declare function joinPath(path1: string, path2: string): string;
|
|
6
|
+
/**
|
|
7
|
+
* The mount base path from an explicit `<base href>` element, or `''` when there is none.
|
|
8
|
+
*
|
|
9
|
+
* Apps served under a deep gateway mount carry `<base href="/tenants/.../app/">`, injected at serve
|
|
10
|
+
* time. The router otherwise resolves absolute routes against the origin, which collapses the URL
|
|
11
|
+
* off the mount (and breaks in-app links). This returns the base pathname without a trailing slash
|
|
12
|
+
* so {@link withMountBasename} can keep navigation under the mount and {@link stripMountBasename}
|
|
13
|
+
* can match routes app-relative. The Studio UI has no `<base>` element, so this returns `''` and
|
|
14
|
+
* every caller becomes a no-op there.
|
|
15
|
+
*/
|
|
16
|
+
export declare function getMountBasename(): string;
|
|
17
|
+
/** Prepend the mount basename to an absolute app path (no-op when no mount, path is relative, or already prefixed). */
|
|
18
|
+
export declare function withMountBasename(path: string): string;
|
|
19
|
+
/** Strip the mount basename from a browser path so route patterns match app-relative (no-op when no mount). */
|
|
20
|
+
export declare function stripMountBasename(path: string): string;
|
|
6
21
|
export declare function getPathSegments(path: string): string[];
|
|
7
22
|
export declare function toSegments(path: string | string[]): string[];
|
|
8
23
|
//# sourceMappingURL=path.d.ts.map
|
package/lib/router/path.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/router/path.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;IACnD,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;CAChB,CAAC;AAEF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,oBAEtC;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,UAWpD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,YAkB3C;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,YAQjD"}
|
|
1
|
+
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/router/path.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;IACnD,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;CAChB,CAAC;AAEF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,oBAEtC;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,UAWpD;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CASzC;AAED,uHAAuH;AACvH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKtD;AAED,+GAA+G;AAC/G,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMvD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,YAkB3C;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,YAQjD"}
|
package/lib/router/path.js
CHANGED
|
@@ -16,6 +16,49 @@ export function joinPath(path1, path2) {
|
|
|
16
16
|
}
|
|
17
17
|
return path2;
|
|
18
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* The mount base path from an explicit `<base href>` element, or `''` when there is none.
|
|
21
|
+
*
|
|
22
|
+
* Apps served under a deep gateway mount carry `<base href="/tenants/.../app/">`, injected at serve
|
|
23
|
+
* time. The router otherwise resolves absolute routes against the origin, which collapses the URL
|
|
24
|
+
* off the mount (and breaks in-app links). This returns the base pathname without a trailing slash
|
|
25
|
+
* so {@link withMountBasename} can keep navigation under the mount and {@link stripMountBasename}
|
|
26
|
+
* can match routes app-relative. The Studio UI has no `<base>` element, so this returns `''` and
|
|
27
|
+
* every caller becomes a no-op there.
|
|
28
|
+
*/
|
|
29
|
+
export function getMountBasename() {
|
|
30
|
+
if (typeof document === 'undefined')
|
|
31
|
+
return '';
|
|
32
|
+
const base = document.querySelector('base[href]');
|
|
33
|
+
if (!base)
|
|
34
|
+
return '';
|
|
35
|
+
try {
|
|
36
|
+
return new URL(base.href, document.URL).pathname.replace(/\/+$/, '');
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
return '';
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/** Prepend the mount basename to an absolute app path (no-op when no mount, path is relative, or already prefixed). */
|
|
43
|
+
export function withMountBasename(path) {
|
|
44
|
+
const base = getMountBasename();
|
|
45
|
+
if (!base || !path.startsWith('/'))
|
|
46
|
+
return path;
|
|
47
|
+
if (path === base || path.startsWith(`${base}/`))
|
|
48
|
+
return path;
|
|
49
|
+
return joinPath(base, path);
|
|
50
|
+
}
|
|
51
|
+
/** Strip the mount basename from a browser path so route patterns match app-relative (no-op when no mount). */
|
|
52
|
+
export function stripMountBasename(path) {
|
|
53
|
+
const base = getMountBasename();
|
|
54
|
+
if (!base)
|
|
55
|
+
return path;
|
|
56
|
+
if (path === base)
|
|
57
|
+
return '/';
|
|
58
|
+
if (path.startsWith(`${base}/`))
|
|
59
|
+
return path.slice(base.length) || '/';
|
|
60
|
+
return path;
|
|
61
|
+
}
|
|
19
62
|
export function getPathSegments(path) {
|
|
20
63
|
if (path === '') {
|
|
21
64
|
return [];
|
package/lib/router/path.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.js","sourceRoot":"","sources":["../../src/router/path.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"path.js","sourceRoot":"","sources":["../../src/router/path.ts"],"names":[],"mappings":"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"}
|