@semiont/cli 0.4.22 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.mjs +394 -287
- package/dist/frontend/dist/assets/{CookiePreferences-CPbRK2Nf.js → CookiePreferences-D5wgmVC7.js} +2 -2
- package/dist/frontend/dist/assets/{CookiePreferences-CPbRK2Nf.js.map → CookiePreferences-D5wgmVC7.js.map} +1 -1
- package/dist/frontend/dist/assets/{PdfAnnotationCanvas.client-5QESNO5H-CprYrfHh.js → PdfAnnotationCanvas.client-5QESNO5H-B7UjwjIX.js} +2 -2
- package/dist/frontend/dist/assets/{PdfAnnotationCanvas.client-5QESNO5H-CprYrfHh.js.map → PdfAnnotationCanvas.client-5QESNO5H-B7UjwjIX.js.map} +1 -1
- package/dist/frontend/dist/assets/{ToolbarPanels-CPoZvoTB.js → ToolbarPanels-CjWlSOUC.js} +2 -2
- package/dist/frontend/dist/assets/{ToolbarPanels-CPoZvoTB.js.map → ToolbarPanels-CjWlSOUC.js.map} +1 -1
- package/dist/frontend/dist/assets/{client-kS15_T5U.js → client-B-MtBLP9.js} +2 -2
- package/dist/frontend/dist/assets/{client-kS15_T5U.js.map → client-B-MtBLP9.js.map} +1 -1
- package/dist/frontend/dist/assets/{client-CPOjL49o.js → client-DX1ckM1P.js} +2 -2
- package/dist/frontend/dist/assets/{client-CPOjL49o.js.map → client-DX1ckM1P.js.map} +1 -1
- package/dist/frontend/dist/assets/{client-CCxdaxo8.js → client-Dh9ak8Fa.js} +2 -2
- package/dist/frontend/dist/assets/{client-CCxdaxo8.js.map → client-Dh9ak8Fa.js.map} +1 -1
- package/dist/frontend/dist/assets/{client-D04WIU14.js → client-DsP3tx7D.js} +2 -2
- package/dist/frontend/dist/assets/{client-D04WIU14.js.map → client-DsP3tx7D.js.map} +1 -1
- package/dist/frontend/dist/assets/{index-fHqJXd_A.css → index-Dg-Pampr.css} +1 -1
- package/dist/frontend/dist/assets/{index-Bsr9DJ3G.js → index-DoPpOINE.js} +57 -57
- package/dist/frontend/dist/assets/index-DoPpOINE.js.map +1 -0
- package/dist/frontend/dist/assets/{layout-w9wtEpkI.js → layout-BNfHKiGS.js} +2 -2
- package/dist/frontend/dist/assets/{layout-w9wtEpkI.js.map → layout-BNfHKiGS.js.map} +1 -1
- package/dist/frontend/dist/assets/{layout-DqFHhLVw.js → layout-CMpievJ_.js} +2 -2
- package/dist/frontend/dist/assets/{layout-DqFHhLVw.js.map → layout-CMpievJ_.js.map} +1 -1
- package/dist/frontend/dist/assets/{layout-BWesrQWr.js → layout-Delbhxmy.js} +2 -2
- package/dist/frontend/dist/assets/{layout-BWesrQWr.js.map → layout-Delbhxmy.js.map} +1 -1
- package/dist/frontend/dist/assets/{layout-B-lufx1s.js → layout-G6HeeKIH.js} +2 -2
- package/dist/frontend/dist/assets/{layout-B-lufx1s.js.map → layout-G6HeeKIH.js.map} +1 -1
- package/dist/frontend/dist/assets/{not-found-C0HTZoKU.js → not-found-CtwZrTVU.js} +2 -2
- package/dist/frontend/dist/assets/{not-found-C0HTZoKU.js.map → not-found-CtwZrTVU.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-BS88Xh4W.js → page-7nyyO6Jy.js} +2 -2
- package/dist/frontend/dist/assets/{page-BS88Xh4W.js.map → page-7nyyO6Jy.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-JI9gNkHU.js → page-BEhfXGas.js} +2 -2
- package/dist/frontend/dist/assets/{page-JI9gNkHU.js.map → page-BEhfXGas.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-CryPHwXI.js → page-Bb5SB6_Q.js} +2 -2
- package/dist/frontend/dist/assets/{page-CryPHwXI.js.map → page-Bb5SB6_Q.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-BIyG0SOs.js → page-CI8oLbhf.js} +2 -2
- package/dist/frontend/dist/assets/{page-BIyG0SOs.js.map → page-CI8oLbhf.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-C43cKrO_.js → page-CV0h_zZE.js} +2 -2
- package/dist/frontend/dist/assets/{page-C43cKrO_.js.map → page-CV0h_zZE.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-BoFYscYi.js → page-C_fIdKsk.js} +2 -2
- package/dist/frontend/dist/assets/{page-BoFYscYi.js.map → page-C_fIdKsk.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-CPL87vBZ.js → page-CjI_QXry.js} +2 -2
- package/dist/frontend/dist/assets/{page-CPL87vBZ.js.map → page-CjI_QXry.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-BMeXKClk.js → page-CkiQdVlI.js} +2 -2
- package/dist/frontend/dist/assets/{page-BMeXKClk.js.map → page-CkiQdVlI.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-CU11Rd_F.js → page-D5qkLwSn.js} +2 -2
- package/dist/frontend/dist/assets/{page-CU11Rd_F.js.map → page-D5qkLwSn.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-Dvw2I_gp.js → page-DBYS9qIU.js} +2 -2
- package/dist/frontend/dist/assets/{page-Dvw2I_gp.js.map → page-DBYS9qIU.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-DYOj954J.js → page-DBlue8Rh.js} +2 -2
- package/dist/frontend/dist/assets/{page-DYOj954J.js.map → page-DBlue8Rh.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-haUujHsJ.js → page-DSW3JQF2.js} +2 -2
- package/dist/frontend/dist/assets/{page-haUujHsJ.js.map → page-DSW3JQF2.js.map} +1 -1
- package/dist/frontend/dist/assets/page-DU909Np3.js +2 -0
- package/dist/frontend/dist/assets/{page-Du1JP0jA.js.map → page-DU909Np3.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-BzkBmeDS.js → page-DV9q0oju.js} +2 -2
- package/dist/frontend/dist/assets/{page-BzkBmeDS.js.map → page-DV9q0oju.js.map} +1 -1
- package/dist/frontend/dist/assets/{page--QmNUvGH.js → page-D_6K1M4j.js} +2 -2
- package/dist/frontend/dist/assets/{page--QmNUvGH.js.map → page-D_6K1M4j.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-CHCWv8gH.js → page-RgfG8Fre.js} +2 -2
- package/dist/frontend/dist/assets/{page-CHCWv8gH.js.map → page-RgfG8Fre.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-CN1zC8Ky.js → page-VPeYeXi6.js} +2 -2
- package/dist/frontend/dist/assets/{page-CN1zC8Ky.js.map → page-VPeYeXi6.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-BkEdFy5p.js → page-kVSb0jfm.js} +2 -2
- package/dist/frontend/dist/assets/{page-BkEdFy5p.js.map → page-kVSb0jfm.js.map} +1 -1
- package/dist/frontend/dist/assets/{privacy-CZ8NTWnp.js → privacy-NaGU1hj4.js} +2 -2
- package/dist/frontend/dist/assets/{privacy-CZ8NTWnp.js.map → privacy-NaGU1hj4.js.map} +1 -1
- package/dist/frontend/dist/assets/{routing-D4iNsc7y.js → routing-BybXhU8X.js} +2 -2
- package/dist/frontend/dist/assets/{routing-D4iNsc7y.js.map → routing-BybXhU8X.js.map} +1 -1
- package/dist/frontend/dist/assets/{routing-DCIgrT7s.js → routing-o1npPvOW.js} +2 -2
- package/dist/frontend/dist/assets/{routing-DCIgrT7s.js.map → routing-o1npPvOW.js.map} +1 -1
- package/dist/frontend/dist/assets/{web-Ua5dIRkZ.js → web-DAOI6EsG.js} +2 -2
- package/dist/frontend/dist/assets/{web-Ua5dIRkZ.js.map → web-DAOI6EsG.js.map} +1 -1
- package/dist/frontend/dist/index.html +2 -2
- package/dist/frontend/package.json +1 -1
- package/package.json +8 -8
- package/dist/frontend/dist/assets/index-Bsr9DJ3G.js.map +0 -1
- package/dist/frontend/dist/assets/page-Du1JP0jA.js +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-BS88Xh4W.js","sources":["../../src/app/[locale]/know/compose/page.tsx"],"sourcesContent":["\"use client\";\n\nimport React, { useEffect, Suspense } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useLocale } from '@/i18n/routing';\nimport { useRouter } from '@/i18n/routing';\nimport { useSearchParams } from 'react-router-dom';\nimport {\n useSemiont,\n useToast,\n useTheme,\n useShellVM,\n useObservable,\n useLineNumbers,\n useHoverDelay,\n useEventSubscriptions,\n useViewModel,\n Toolbar,\n ComposeLoadingState,\n ResourceComposePage,\n} from '@semiont/react-ui';\nimport type { SaveResourceParams as UISaveResourceParams } from '@semiont/react-ui';\nimport { createComposePageVM } from '@semiont/sdk';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\n\nfunction ComposeResourceContent() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Compose.${k}`, p as any) as string;\n const locale = useLocale();\n const router = useRouter();\n const [searchParams] = useSearchParams();\n const semiont = useSemiont();\n const activeKbId = useObservable(semiont.activeKbId$);\n const session = useObservable(semiont.activeSession$);\n const user = useObservable(session?.user$);\n const authToken = useObservable(session?.token$);\n const isAuthenticated = !!user;\n // \"Loading\" = a KB is selected but the session hasn't finished constructing\n // yet, so we don't know if auth succeeded.\n const authLoading = activeKbId != null && session == null;\n const { showError, showSuccess } = useToast();\n const client = session?.client;\n\n useEffect(() => {\n if (authLoading) return;\n if (!isAuthenticated) router.push('/');\n }, [authLoading, isAuthenticated, router]);\n\n const browseVM = useShellVM();\n\n const contextKey = searchParams?.get('annotationUri')\n ? `gather-context:${searchParams.get('annotationUri')}`\n : null;\n const storedContext = contextKey && typeof sessionStorage !== 'undefined'\n ? sessionStorage.getItem(contextKey) ?? undefined\n : undefined;\n if (contextKey && storedContext && typeof sessionStorage !== 'undefined') {\n sessionStorage.removeItem(contextKey);\n }\n\n const vm = useViewModel(() => createComposePageVM(client!, browseVM, {\n mode: searchParams?.get('mode') ?? undefined,\n token: searchParams?.get('token') ?? undefined,\n annotationUri: searchParams?.get('annotationUri') ?? undefined,\n sourceDocumentId: searchParams?.get('sourceDocumentId') ?? undefined,\n name: searchParams?.get('name') ?? undefined,\n entityTypes: searchParams?.get('entityTypes') ?? undefined,\n storedContext,\n }, authToken ?? undefined));\n\n const activePanel = useObservable(vm.browse.activePanel$) ?? null;\n const pageMode = useObservable(vm.mode$) ?? 'new';\n const isLoading = useObservable(vm.loading$) ?? true;\n const cloneData = useObservable(vm.cloneData$) ?? null;\n const referenceData = useObservable(vm.referenceData$) ?? null;\n const gatheredContext = useObservable(vm.gatheredContext$) ?? null;\n const availableEntityTypes = useObservable(vm.entityTypes$) ?? [];\n\n const { theme, setTheme, resolvedTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n const { hoverDelayMs } = useHoverDelay();\n\n useEventSubscriptions({\n 'settings:theme-changed': ({ theme }: { theme: 'light' | 'dark' | 'system' }) => setTheme(theme),\n 'settings:line-numbers-toggled': () => toggleLineNumbers(),\n });\n\n const handleSaveResource = async (params: UISaveResourceParams) => {\n try {\n const newResourceId = await vm.save(params);\n if (params.mode === 'reference' && params.annotationUri) {\n showSuccess('Reference successfully linked to the new resource');\n }\n router.push(`/know/resource/${encodeURIComponent(newResourceId)}`);\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : 'Failed to save resource. Please try again.';\n showError(errorMessage);\n throw error;\n }\n };\n\n if (authLoading || isLoading) {\n return <ComposeLoadingState message={authLoading ? 'Checking authentication...' : 'Loading cloned resource...'} />;\n }\n\n if (!isAuthenticated) return null;\n\n return (\n <ResourceComposePage\n mode={pageMode}\n cloneData={cloneData}\n referenceData={referenceData}\n gatheredContext={gatheredContext}\n availableEntityTypes={availableEntityTypes}\n initialLocale={locale}\n theme={resolvedTheme}\n showLineNumbers={showLineNumbers}\n hoverDelayMs={hoverDelayMs}\n activePanel={activePanel}\n onSaveResource={handleSaveResource}\n onCancel={() => router.push('/know/discover')}\n translations={{\n title: t('title'),\n titleEditClone: t('titleEditClone'),\n titleCompleteReference: t('titleCompleteReference'),\n subtitleClone: t('subtitleClone'),\n subtitleReference: t('subtitleReference'),\n linkedNoticePrefix: t('linkedNoticePrefix'),\n resourceName: t('resourceName'),\n resourceNamePlaceholder: t('resourceNamePlaceholder'),\n entityTypes: t('entityTypes'),\n language: t('language'),\n contentSource: t('contentSource'),\n uploadFile: t('uploadFile'),\n uploadFileDescription: t('uploadFileDescription'),\n writeContent: t('writeContent'),\n writeContentDescription: t('writeContentDescription'),\n dropFileOrClick: t('dropFileOrClick'),\n supportedFormats: t('supportedFormats'),\n mediaType: t('mediaType'),\n autoDetected: t('autoDetected'),\n format: t('format'),\n content: t('content'),\n resourceContent: t('resourceContent'),\n encoding: t('encoding'),\n archiveOriginal: t('archiveOriginal'),\n cancel: t('cancel'),\n saving: t('saving'),\n creating: t('creating'),\n creatingAndLinking: t('creatingAndLinking'),\n saveClonedResource: t('saveClonedResource'),\n createAndLinkResource: t('createAndLinkResource'),\n createResource: t('createResource'),\n }}\n ToolbarPanels={ToolbarPanels}\n Toolbar={Toolbar}\n />\n );\n}\n\nexport default function ComposeResourcePage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Compose.${k}`, p as any) as string;\n\n return (\n <Suspense fallback={<ComposeLoadingState message={t('loading')} />}>\n <ComposeResourceContent />\n </Suspense>\n );\n}\n"],"names":["ComposeResourceContent","_t","useTranslation","t","k","p","locale","useLocale","router","useRouter","searchParams","useSearchParams","semiont","useSemiont","activeKbId","useObservable","session","user","authToken","isAuthenticated","authLoading","showError","showSuccess","useToast","client","useEffect","browseVM","useShellVM","contextKey","storedContext","vm","useViewModel","createComposePageVM","activePanel","pageMode","isLoading","cloneData","referenceData","gatheredContext","availableEntityTypes","theme","setTheme","resolvedTheme","useTheme","showLineNumbers","toggleLineNumbers","useLineNumbers","hoverDelayMs","useHoverDelay","useEventSubscriptions","handleSaveResource","params","newResourceId","error","errorMessage","jsx","ComposeLoadingState","ResourceComposePage","ToolbarPanels","Toolbar","ComposeResourcePage","Suspense"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"page-7nyyO6Jy.js","sources":["../../src/app/[locale]/know/compose/page.tsx"],"sourcesContent":["\"use client\";\n\nimport React, { useEffect, Suspense } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useLocale } from '@/i18n/routing';\nimport { useRouter } from '@/i18n/routing';\nimport { useSearchParams } from 'react-router-dom';\nimport {\n useSemiont,\n useToast,\n useTheme,\n useShellVM,\n useObservable,\n useLineNumbers,\n useHoverDelay,\n useEventSubscriptions,\n useViewModel,\n Toolbar,\n ComposeLoadingState,\n ResourceComposePage,\n} from '@semiont/react-ui';\nimport type { SaveResourceParams as UISaveResourceParams } from '@semiont/react-ui';\nimport { createComposePageVM } from '@semiont/sdk';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\n\nfunction ComposeResourceContent() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Compose.${k}`, p as any) as string;\n const locale = useLocale();\n const router = useRouter();\n const [searchParams] = useSearchParams();\n const semiont = useSemiont();\n const activeKbId = useObservable(semiont.activeKbId$);\n const session = useObservable(semiont.activeSession$);\n const user = useObservable(session?.user$);\n const authToken = useObservable(session?.token$);\n const isAuthenticated = !!user;\n // \"Loading\" = a KB is selected but the session hasn't finished constructing\n // yet, so we don't know if auth succeeded.\n const authLoading = activeKbId != null && session == null;\n const { showError, showSuccess } = useToast();\n const client = session?.client;\n\n useEffect(() => {\n if (authLoading) return;\n if (!isAuthenticated) router.push('/');\n }, [authLoading, isAuthenticated, router]);\n\n const browseVM = useShellVM();\n\n const contextKey = searchParams?.get('annotationUri')\n ? `gather-context:${searchParams.get('annotationUri')}`\n : null;\n const storedContext = contextKey && typeof sessionStorage !== 'undefined'\n ? sessionStorage.getItem(contextKey) ?? undefined\n : undefined;\n if (contextKey && storedContext && typeof sessionStorage !== 'undefined') {\n sessionStorage.removeItem(contextKey);\n }\n\n const vm = useViewModel(() => createComposePageVM(client!, browseVM, {\n mode: searchParams?.get('mode') ?? undefined,\n token: searchParams?.get('token') ?? undefined,\n annotationUri: searchParams?.get('annotationUri') ?? undefined,\n sourceDocumentId: searchParams?.get('sourceDocumentId') ?? undefined,\n name: searchParams?.get('name') ?? undefined,\n entityTypes: searchParams?.get('entityTypes') ?? undefined,\n storedContext,\n }, authToken ?? undefined));\n\n const activePanel = useObservable(vm.browse.activePanel$) ?? null;\n const pageMode = useObservable(vm.mode$) ?? 'new';\n const isLoading = useObservable(vm.loading$) ?? true;\n const cloneData = useObservable(vm.cloneData$) ?? null;\n const referenceData = useObservable(vm.referenceData$) ?? null;\n const gatheredContext = useObservable(vm.gatheredContext$) ?? null;\n const availableEntityTypes = useObservable(vm.entityTypes$) ?? [];\n\n const { theme, setTheme, resolvedTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n const { hoverDelayMs } = useHoverDelay();\n\n useEventSubscriptions({\n 'settings:theme-changed': ({ theme }: { theme: 'light' | 'dark' | 'system' }) => setTheme(theme),\n 'settings:line-numbers-toggled': () => toggleLineNumbers(),\n });\n\n const handleSaveResource = async (params: UISaveResourceParams) => {\n try {\n const newResourceId = await vm.save(params);\n if (params.mode === 'reference' && params.annotationUri) {\n showSuccess('Reference successfully linked to the new resource');\n }\n router.push(`/know/resource/${encodeURIComponent(newResourceId)}`);\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : 'Failed to save resource. Please try again.';\n showError(errorMessage);\n throw error;\n }\n };\n\n if (authLoading || isLoading) {\n return <ComposeLoadingState message={authLoading ? 'Checking authentication...' : 'Loading cloned resource...'} />;\n }\n\n if (!isAuthenticated) return null;\n\n return (\n <ResourceComposePage\n mode={pageMode}\n cloneData={cloneData}\n referenceData={referenceData}\n gatheredContext={gatheredContext}\n availableEntityTypes={availableEntityTypes}\n initialLocale={locale}\n theme={resolvedTheme}\n showLineNumbers={showLineNumbers}\n hoverDelayMs={hoverDelayMs}\n activePanel={activePanel}\n onSaveResource={handleSaveResource}\n onCancel={() => router.push('/know/discover')}\n translations={{\n title: t('title'),\n titleEditClone: t('titleEditClone'),\n titleCompleteReference: t('titleCompleteReference'),\n subtitleClone: t('subtitleClone'),\n subtitleReference: t('subtitleReference'),\n linkedNoticePrefix: t('linkedNoticePrefix'),\n resourceName: t('resourceName'),\n resourceNamePlaceholder: t('resourceNamePlaceholder'),\n entityTypes: t('entityTypes'),\n language: t('language'),\n contentSource: t('contentSource'),\n uploadFile: t('uploadFile'),\n uploadFileDescription: t('uploadFileDescription'),\n writeContent: t('writeContent'),\n writeContentDescription: t('writeContentDescription'),\n dropFileOrClick: t('dropFileOrClick'),\n supportedFormats: t('supportedFormats'),\n mediaType: t('mediaType'),\n autoDetected: t('autoDetected'),\n format: t('format'),\n content: t('content'),\n resourceContent: t('resourceContent'),\n encoding: t('encoding'),\n archiveOriginal: t('archiveOriginal'),\n cancel: t('cancel'),\n saving: t('saving'),\n creating: t('creating'),\n creatingAndLinking: t('creatingAndLinking'),\n saveClonedResource: t('saveClonedResource'),\n createAndLinkResource: t('createAndLinkResource'),\n createResource: t('createResource'),\n }}\n ToolbarPanels={ToolbarPanels}\n Toolbar={Toolbar}\n />\n );\n}\n\nexport default function ComposeResourcePage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Compose.${k}`, p as any) as string;\n\n return (\n <Suspense fallback={<ComposeLoadingState message={t('loading')} />}>\n <ComposeResourceContent />\n </Suspense>\n );\n}\n"],"names":["ComposeResourceContent","_t","useTranslation","t","k","p","locale","useLocale","router","useRouter","searchParams","useSearchParams","semiont","useSemiont","activeKbId","useObservable","session","user","authToken","isAuthenticated","authLoading","showError","showSuccess","useToast","client","useEffect","browseVM","useShellVM","contextKey","storedContext","vm","useViewModel","createComposePageVM","activePanel","pageMode","isLoading","cloneData","referenceData","gatheredContext","availableEntityTypes","theme","setTheme","resolvedTheme","useTheme","showLineNumbers","toggleLineNumbers","useLineNumbers","hoverDelayMs","useHoverDelay","useEventSubscriptions","handleSaveResource","params","newResourceId","error","errorMessage","jsx","ComposeLoadingState","ResourceComposePage","ToolbarPanels","Toolbar","ComposeResourcePage","Suspense"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{c as o,u as w,g as P,e as B,h as D,i as k,k as x,j as C,R as E,l as L}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{c as o,u as w,g as P,e as B,h as D,i as k,k as x,j as C,R as E,l as L}from"./index-DoPpOINE.js";import{r as u}from"./vendor-DJo4KD8w.js";import{u as N}from"./routing-o1npPvOW.js";import{T as F}from"./ToolbarPanels-CjWlSOUC.js";import{u as M}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function q(){var i;const{t:l}=M(),e=(s,$)=>l(`Discover.${s}`,$),r=N(),m=(i=o(w().activeSession$))==null?void 0:i.client,h=P(),t=B(()=>L(m,h)),g=o(t.browse.activePanel$)??null,d=o(t.recentResources$)??[],p=o(t.entityTypes$)??[],R=o(t.isLoadingRecent$)??!0,v=o(t.search.query$)??"",n=o(t.search.state$),b=(n==null?void 0:n.results)??[],y=(n==null?void 0:n.isSearching)??!1,{theme:S,setTheme:c,resolvedTheme:T}=D(),{showLineNumbers:f,toggleLineNumbers:a}=k();return x({"settings:theme-changed":u.useCallback(({theme:s})=>c(s),[c]),"settings:line-numbers-toggled":u.useCallback(()=>a(),[a])}),C.jsx(E,{recentDocuments:d,searchDocuments:b,entityTypes:p,isLoadingRecent:R,isSearching:y,searchQuery:v,onSearchQueryChange:t.search.setQuery,theme:T,showLineNumbers:f,activePanel:g,onNavigateToResource:s=>r.push(`/know/resource/${encodeURIComponent(s)}`),onNavigateToCompose:()=>r.push("/know/compose"),translations:{title:e("title"),subtitle:e("subtitle"),searchPlaceholder:e("searchPlaceholder"),searchButton:e("searchButton"),searching:e("searching"),filterByEntityType:e("filterByEntityType"),all:e("all"),recentResources:e("recentResources"),searchResults:s=>e("searchResults",{count:s}),documentsTaggedWith:s=>e("documentsTaggedWith",{entityType:s}),noResultsFound:s=>e("noResultsFound",{query:s}),noResourcesAvailable:e("noResourcesAvailable"),composeFirstResource:e("composeFirstResource"),archived:e("archived"),created:e("created"),loadingKnowledgeBase:e("loadingKnowledgeBase")},ToolbarPanels:F})}export{q as default};
|
|
2
|
+
//# sourceMappingURL=page-BEhfXGas.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-BEhfXGas.js","sources":["../../src/app/[locale]/know/discover/page.tsx"],"sourcesContent":["\"use client\";\n\nimport { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useRouter } from '@/i18n/routing';\nimport {\n useTheme,\n useLineNumbers,\n useEventSubscriptions,\n useObservable,\n useSemiont,\n useViewModel,\n ResourceDiscoveryPage,\n} from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { useShellVM } from '@semiont/react-ui';\nimport { createDiscoverVM } from '@semiont/sdk';\nexport default function DiscoverPage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Discover.${k}`, p as any) as string;\n const router = useRouter();\n const semiont = useObservable(useSemiont().activeSession$)?.client;\n\n const browseVM = useShellVM();\n const vm = useViewModel(() => createDiscoverVM(semiont!, browseVM));\n\n const activePanel = useObservable(vm.browse.activePanel$) ?? null;\n const recentDocuments = useObservable(vm.recentResources$) ?? [];\n const entityTypes = useObservable(vm.entityTypes$) ?? [];\n const isLoadingRecent = useObservable(vm.isLoadingRecent$) ?? true;\n const searchQuery = useObservable(vm.search.query$) ?? '';\n const searchState = useObservable(vm.search.state$);\n const searchDocuments = searchState?.results ?? [];\n const isSearching = searchState?.isSearching ?? false;\n\n const { theme, setTheme, resolvedTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n\n useEventSubscriptions({\n 'settings:theme-changed': useCallback(({ theme }: { theme: 'light' | 'dark' | 'system' }) => setTheme(theme), [setTheme]),\n 'settings:line-numbers-toggled': useCallback(() => toggleLineNumbers(), [toggleLineNumbers]),\n });\n\n return (\n <ResourceDiscoveryPage\n recentDocuments={recentDocuments}\n searchDocuments={searchDocuments}\n entityTypes={entityTypes}\n isLoadingRecent={isLoadingRecent}\n isSearching={isSearching}\n searchQuery={searchQuery}\n onSearchQueryChange={vm.search.setQuery}\n theme={resolvedTheme}\n showLineNumbers={showLineNumbers}\n activePanel={activePanel}\n onNavigateToResource={(resourceId) => router.push(`/know/resource/${encodeURIComponent(resourceId)}`)}\n onNavigateToCompose={() => router.push('/know/compose')}\n translations={{\n title: t('title'),\n subtitle: t('subtitle'),\n searchPlaceholder: t('searchPlaceholder'),\n searchButton: t('searchButton'),\n searching: t('searching'),\n filterByEntityType: t('filterByEntityType'),\n all: t('all'),\n recentResources: t('recentResources'),\n searchResults: (count: number) => t('searchResults', { count }),\n documentsTaggedWith: (entityType: string) => t('documentsTaggedWith', { entityType }),\n noResultsFound: (query: string) => t('noResultsFound', { query }),\n noResourcesAvailable: t('noResourcesAvailable'),\n composeFirstResource: t('composeFirstResource'),\n archived: t('archived'),\n created: t('created'),\n loadingKnowledgeBase: t('loadingKnowledgeBase'),\n }}\n ToolbarPanels={ToolbarPanels}\n />\n );\n}\n"],"names":["DiscoverPage","_t","useTranslation","t","k","p","router","useRouter","semiont","_a","useObservable","useSemiont","browseVM","useShellVM","vm","useViewModel","createDiscoverVM","activePanel","recentDocuments","entityTypes","isLoadingRecent","searchQuery","searchState","searchDocuments","isSearching","theme","setTheme","resolvedTheme","useTheme","showLineNumbers","toggleLineNumbers","useLineNumbers","useEventSubscriptions","useCallback","jsx","ResourceDiscoveryPage","resourceId","count","entityType","query","ToolbarPanels"],"mappings":"iTAiBA,SAAwBA,GAAe,OACrC,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,YAAYG,CAAC,GAAIC,CAAQ,EAC5EC,EAASC,EAAA,EACTC,GAAUC,EAAAC,EAAcC,EAAA,EAAa,cAAc,IAAzC,YAAAF,EAA4C,OAEtDG,EAAWC,EAAA,EACXC,EAAKC,EAAa,IAAMC,EAAiBR,EAAUI,CAAQ,CAAC,EAE5DK,EAAcP,EAAcI,EAAG,OAAO,YAAY,GAAK,KACvDI,EAAkBR,EAAcI,EAAG,gBAAgB,GAAK,CAAA,EACxDK,EAAcT,EAAcI,EAAG,YAAY,GAAK,CAAA,EAChDM,EAAkBV,EAAcI,EAAG,gBAAgB,GAAK,GACxDO,EAAcX,EAAcI,EAAG,OAAO,MAAM,GAAK,GACjDQ,EAAcZ,EAAcI,EAAG,OAAO,MAAM,EAC5CS,GAAkBD,GAAA,YAAAA,EAAa,UAAW,CAAA,EAC1CE,GAAcF,GAAA,YAAAA,EAAa,cAAe,GAE1C,CAAE,MAAAG,EAAO,SAAAC,EAAU,cAAAC,CAAA,EAAkBC,EAAA,EACrC,CAAE,gBAAAC,EAAiB,kBAAAC,CAAA,EAAsBC,EAAA,EAE/C,OAAAC,EAAsB,CACpB,yBAA0BC,EAAAA,YAAY,CAAC,CAAE,MAAAR,KAAoDC,EAASD,CAAK,EAAG,CAACC,CAAQ,CAAC,EACxH,gCAAiCO,EAAAA,YAAY,IAAMH,IAAqB,CAACA,CAAiB,CAAC,CAAA,CAC5F,EAGCI,EAAAA,IAACC,EAAA,CACC,gBAAAjB,EACA,gBAAAK,EACA,YAAAJ,EACA,gBAAAC,EACA,YAAAI,EACA,YAAAH,EACA,oBAAqBP,EAAG,OAAO,SAC/B,MAAOa,EACP,gBAAAE,EACA,YAAAZ,EACA,qBAAuBmB,GAAe9B,EAAO,KAAK,kBAAkB,mBAAmB8B,CAAU,CAAC,EAAE,EACpG,oBAAqB,IAAM9B,EAAO,KAAK,eAAe,EACtD,aAAc,CACZ,MAAOH,EAAE,OAAO,EAChB,SAAUA,EAAE,UAAU,EACtB,kBAAmBA,EAAE,mBAAmB,EACxC,aAAcA,EAAE,cAAc,EAC9B,UAAWA,EAAE,WAAW,EACxB,mBAAoBA,EAAE,oBAAoB,EAC1C,IAAKA,EAAE,KAAK,EACZ,gBAAiBA,EAAE,iBAAiB,EACpC,cAAgBkC,GAAkBlC,EAAE,gBAAiB,CAAE,MAAAkC,EAAO,EAC9D,oBAAsBC,GAAuBnC,EAAE,sBAAuB,CAAE,WAAAmC,EAAY,EACpF,eAAiBC,GAAkBpC,EAAE,iBAAkB,CAAE,MAAAoC,EAAO,EAChE,qBAAsBpC,EAAE,sBAAsB,EAC9C,qBAAsBA,EAAE,sBAAsB,EAC9C,SAAUA,EAAE,UAAU,EACtB,QAASA,EAAE,SAAS,EACpB,qBAAsBA,EAAE,sBAAsB,CAAA,EAEhD,cAAAqC,CAAA,CAAA,CAGN"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as t}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{j as t}from"./index-DoPpOINE.js";import{r as n}from"./vendor-DJo4KD8w.js";import{u as c}from"./routing-o1npPvOW.js";import{u as i}from"./i18n-BbpF47i1.js";function d(){const{t:r}=i(),s=(o,a)=>r(`Moderation.${o}`,a),e=c();return n.useEffect(()=>{e.replace("/moderate/recent")},[e]),t.jsx("div",{className:"flex items-center justify-center py-20",children:t.jsx("p",{className:"text-gray-600 dark:text-gray-300",children:s("redirecting")})})}export{d as default};
|
|
2
|
+
//# sourceMappingURL=page-Bb5SB6_Q.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-Bb5SB6_Q.js","sources":["../../src/app/[locale]/moderate/page.tsx"],"sourcesContent":["import { useEffect } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useRouter } from '@/i18n/routing';\n\nexport default function ModeratePage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Moderation.${k}`, p as any) as string;\n const router = useRouter();\n\n useEffect(() => {\n // Redirect to Recent Documents as the default page\n router.replace('/moderate/recent');\n }, [router]);\n\n return (\n <div className=\"flex items-center justify-center py-20\">\n <p className=\"text-gray-600 dark:text-gray-300\">{t('redirecting')}</p>\n </div>\n );\n}"],"names":["ModeratePage","_t","useTranslation","t","k","p","router","useRouter","useEffect","jsx"],"mappings":"kKAIA,SAAwBA,GAAe,CACrC,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,cAAcG,CAAC,GAAIC,CAAQ,EAC9EC,EAASC,EAAA,EAEfC,OAAAA,EAAAA,UAAU,IAAM,CAEdF,EAAO,QAAQ,kBAAkB,CACnC,EAAG,CAACA,CAAM,CAAC,EAGTG,EAAAA,IAAC,MAAA,CAAI,UAAU,yCACb,SAAAA,MAAC,IAAA,CAAE,UAAU,mCAAoC,SAAAN,EAAE,aAAa,CAAA,CAAE,EACpE,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as t}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{j as t}from"./index-DoPpOINE.js";import{r as a}from"./vendor-DJo4KD8w.js";import{u as l}from"./routing-o1npPvOW.js";import{u}from"./i18n-BbpF47i1.js";function p(){const{t:c}=u(),s=(e,i)=>c(`Sidebar.${e}`,i),r=l(),[o,n]=a.useState(!0);return a.useEffect(()=>{const e=localStorage.getItem("lastViewedDocumentId");e?r.replace(`/know/resource/${e}`):r.replace("/know/discover"),n(!1)},[r]),o?t.jsx("div",{className:"flex items-center justify-center py-20",children:t.jsx("p",{className:"text-gray-600 dark:text-gray-300",children:s("loading")})}):t.jsx("div",{className:"flex items-center justify-center py-20",children:t.jsx("p",{className:"text-gray-600 dark:text-gray-300",children:s("redirecting")})})}export{p as default};
|
|
2
|
+
//# sourceMappingURL=page-CI8oLbhf.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-CI8oLbhf.js","sources":["../../src/app/[locale]/know/page.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { useRouter } from '@/i18n/routing';\nimport { useTranslation } from 'react-i18next';\n\nexport default function KnowledgePage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Sidebar.${k}`, p as any) as string;\n const router = useRouter();\n const [checking, setChecking] = useState(true);\n\n useEffect(() => {\n // Check if there's a last viewed document\n const lastDocumentId = localStorage.getItem('lastViewedDocumentId');\n \n if (lastDocumentId) {\n // If there's a last viewed document, go to it\n router.replace(`/know/resource/${lastDocumentId}`);\n } else {\n // Otherwise, go to Discover\n router.replace('/know/discover');\n }\n \n setChecking(false);\n }, [router]);\n\n if (checking) {\n return (\n <div className=\"flex items-center justify-center py-20\">\n <p className=\"text-gray-600 dark:text-gray-300\">{t('loading')}</p>\n </div>\n );\n }\n\n return (\n <div className=\"flex items-center justify-center py-20\">\n <p className=\"text-gray-600 dark:text-gray-300\">{t('redirecting')}</p>\n </div>\n );\n}"],"names":["KnowledgePage","_t","useTranslation","t","k","p","router","useRouter","checking","setChecking","useState","useEffect","lastDocumentId","jsx"],"mappings":"6JAIA,SAAwBA,GAAgB,CACtC,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,WAAWG,CAAC,GAAIC,CAAQ,EAC3EC,EAASC,EAAA,EACT,CAACC,EAAUC,CAAW,EAAIC,EAAAA,SAAS,EAAI,EAiB7C,OAfAC,EAAAA,UAAU,IAAM,CAEd,MAAMC,EAAiB,aAAa,QAAQ,sBAAsB,EAE9DA,EAEFN,EAAO,QAAQ,kBAAkBM,CAAc,EAAE,EAGjDN,EAAO,QAAQ,gBAAgB,EAGjCG,EAAY,EAAK,CACnB,EAAG,CAACH,CAAM,CAAC,EAEPE,EAEAK,EAAAA,IAAC,MAAA,CAAI,UAAU,yCACb,SAAAA,MAAC,IAAA,CAAE,UAAU,mCAAoC,SAAAV,EAAE,SAAS,CAAA,CAAE,EAChE,EAKFU,EAAAA,IAAC,MAAA,CAAI,UAAU,yCACb,SAAAA,MAAC,IAAA,CAAE,UAAU,mCAAoC,SAAAV,EAAE,aAAa,CAAA,CAAE,EACpE,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as m,j as u,c as s,u as x,e as L,p as R,q as b,s as j}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{r as m,j as u,c as s,u as x,e as L,p as R,q as b,s as j}from"./index-DoPpOINE.js";import{a as P,r as l}from"./vendor-DJo4KD8w.js";import{a as S}from"./routing-o1npPvOW.js";import{r as $,L as k}from"./routing-BybXhU8X.js";import{T as w}from"./ToolbarPanels-CjWlSOUC.js";import"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function q(){const o=P(),r=m(o==null?void 0:o.id);return u.jsx(D,{rId:r},r)}function D({rId:o}){const r=S(),e=s(x().activeSession$),d=s(e==null?void 0:e.streamState$)??"initial",c=(e==null?void 0:e.kb)??null,f=e==null?void 0:e.client,t=L(()=>R(f,o)),a=s(t.resource$),n=s(t.isLoading$)??!0;l.useEffect(()=>{!n&&!a&&console.error(`[Document] Resource ${o} not found`)},[n,o,a]);const p=l.useCallback(async()=>{t.invalidate()},[t]);if(n||!a)return u.jsx(b,{});const i=a,g=m(i["@id"]);return u.jsx(j,{resource:i,rUri:g,locale:r,Link:k,routes:$,ToolbarPanels:w,refetchDocument:p,streamStatus:d,knowledgeBaseName:c==null?void 0:c.label})}export{q as default};
|
|
2
|
+
//# sourceMappingURL=page-CV0h_zZE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-CV0h_zZE.js","sources":["../../src/app/[locale]/know/resource/[id]/page.tsx"],"sourcesContent":["\"use client\";\n\n/**\n * Resource Viewer Page - Minimal Next.js routing wrapper\n *\n * Handles only Next.js routing and initial resource loading.\n * All other concerns (data loading, events, UI state) are handled by ResourceViewerPage.\n */\n\nimport { useEffect, useCallback } from 'react';\nimport { useParams } from 'react-router-dom';\nimport { useLocale } from '@/i18n/routing';\nimport { useSemiont, useObservable, useViewModel, createResourceLoaderVM } from '@semiont/react-ui';\nimport { resourceId } from '@semiont/core';\nimport { Link, routes } from '@/lib/routing';\n\n// Feature components\nimport { ResourceLoadingState, ResourceErrorState, ResourceViewerPage } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport type { SemiontResource } from '@semiont/react-ui';\n\n/**\n * Main page component - handles only routing and initial resource load.\n *\n * The inner component is keyed on `rId` so that navigation between\n * resources (URL-param change without component unmount) forces a full\n * remount. Without this, `useViewModel`'s factory closes over the\n * initial `rId` and never re-runs, and the URL changes but the content\n * stays on the first-loaded resource.\n */\nexport default function KnowledgeResourcePage() {\n const params = useParams();\n const rId = resourceId(params?.id as string);\n return <KnowledgeResourcePageInner key={rId} rId={rId} />;\n}\n\nfunction KnowledgeResourcePageInner({ rId }: { rId: ReturnType<typeof resourceId> }) {\n const locale = useLocale();\n\n const session = useObservable(useSemiont().activeSession$);\n const streamStatus = useObservable(session?.streamState$) ?? 'initial';\n const activeKnowledgeBase = session?.kb ?? null;\n\n const semiont = session?.client;\n const loader = useViewModel(() => createResourceLoaderVM(semiont!, rId));\n const resourceData = useObservable(loader.resource$);\n const isLoading = useObservable(loader.isLoading$) ?? true;\n\n // Log error for debugging\n useEffect(() => {\n if (!isLoading && !resourceData) {\n console.error(`[Document] Resource ${rId} not found`);\n }\n }, [isLoading, rId, resourceData]);\n\n const refetchDocument = useCallback(async () => {\n loader.invalidate();\n }, [loader]);\n\n // Early return: Loading state\n if (isLoading || !resourceData) {\n return <ResourceLoadingState />;\n }\n\n const resource = resourceData as SemiontResource;\n // resource['@id'] is now a bare ID\n const canonicalId = resourceId(resource['@id']);\n\n // Render with minimal props - all data loading/events handled inside ResourceViewerPage\n return (\n <ResourceViewerPage\n resource={resource}\n rUri={canonicalId}\n locale={locale}\n Link={Link}\n routes={routes}\n ToolbarPanels={ToolbarPanels}\n refetchDocument={refetchDocument}\n streamStatus={streamStatus}\n knowledgeBaseName={activeKnowledgeBase?.label}\n />\n );\n}\n"],"names":["KnowledgeResourcePage","params","useParams","rId","resourceId","jsx","KnowledgeResourcePageInner","locale","useLocale","session","useObservable","useSemiont","streamStatus","activeKnowledgeBase","semiont","loader","useViewModel","createResourceLoaderVM","resourceData","isLoading","useEffect","refetchDocument","useCallback","ResourceLoadingState","resource","canonicalId","ResourceViewerPage","Link","routes","ToolbarPanels"],"mappings":"+UA8BA,SAAwBA,GAAwB,CAC9C,MAAMC,EAASC,EAAA,EACTC,EAAMC,EAAWH,GAAA,YAAAA,EAAQ,EAAY,EAC3C,OAAOI,EAAAA,IAACC,EAAA,CAAqC,IAAAH,CAAA,EAALA,CAAe,CACzD,CAEA,SAASG,EAA2B,CAAE,IAAAH,GAA+C,CACnF,MAAMI,EAASC,EAAA,EAETC,EAAUC,EAAcC,EAAA,EAAa,cAAc,EACnDC,EAAeF,EAAcD,GAAA,YAAAA,EAAS,YAAY,GAAK,UACvDI,GAAsBJ,GAAA,YAAAA,EAAS,KAAM,KAErCK,EAAUL,GAAA,YAAAA,EAAS,OACnBM,EAASC,EAAa,IAAMC,EAAuBH,EAAUX,CAAG,CAAC,EACjEe,EAAeR,EAAcK,EAAO,SAAS,EAC7CI,EAAYT,EAAcK,EAAO,UAAU,GAAK,GAGtDK,EAAAA,UAAU,IAAM,CACV,CAACD,GAAa,CAACD,GACjB,QAAQ,MAAM,uBAAuBf,CAAG,YAAY,CAExD,EAAG,CAACgB,EAAWhB,EAAKe,CAAY,CAAC,EAEjC,MAAMG,EAAkBC,EAAAA,YAAY,SAAY,CAC9CP,EAAO,WAAA,CACT,EAAG,CAACA,CAAM,CAAC,EAGX,GAAII,GAAa,CAACD,EAChB,aAAQK,EAAA,EAAqB,EAG/B,MAAMC,EAAWN,EAEXO,EAAcrB,EAAWoB,EAAS,KAAK,CAAC,EAG9C,OACEnB,EAAAA,IAACqB,EAAA,CACC,SAAAF,EACA,KAAMC,EACN,OAAAlB,EACA,KAAAoB,EACA,OAAAC,EACA,cAAAC,EACA,gBAAAR,EACA,aAAAT,EACA,kBAAmBC,GAAA,YAAAA,EAAqB,KAAA,CAAA,CAG9C"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import{j as s,P as u,b as c}from"./index-
|
|
1
|
+
import{j as s,P as u,b as c}from"./index-DoPpOINE.js";import{r as j}from"./vendor-DJo4KD8w.js";import{C as b}from"./CookiePreferences-D5wgmVC7.js";import{K as N}from"./privacy-NaGU1hj4.js";import{r as f,L as g}from"./routing-BybXhU8X.js";import{L as o}from"./routing-o1npPvOW.js";import{u as n}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function A(){const{t:r}=n(),e=(t,i)=>r(`About.${t}`,i),{t:l}=n(),m=(t,i)=>l(`Footer.${t}`,i),{t:d}=n(),h=(t,i)=>d(`Navigation.${t}`,i),{t:p}=n(),x=(t,i)=>p(`Home.${t}`,i),a=j.useContext(N);return s.jsx(u,{Link:g,routes:f,t:m,tNav:h,tHome:x,showAuthLinks:!1,CookiePreferences:b,...(a==null?void 0:a.openKeyboardHelp)&&{onOpenKeyboardHelp:a.openKeyboardHelp},className:"semiont-static-page",children:s.jsx("div",{className:"semiont-static-container",children:s.jsxs("div",{className:"semiont-static-content",children:[s.jsxs("header",{className:"semiont-static-header",children:[s.jsx("h1",{className:"semiont-static-title",children:e("pageTitle")}),s.jsx("p",{className:"semiont-static-subtitle",children:e("tagline")})]}),s.jsxs("div",{className:"semiont-static-action-buttons",children:[s.jsx(o,{to:"/auth/signup",className:c.primary.base,children:e("signUp")}),s.jsx(o,{to:"/auth/connect?callbackUrl=/know",className:c.primary.base,children:e("signIn")})]}),s.jsxs("article",{className:"semiont-static-article",children:[s.jsxs("section",{children:[s.jsx("h2",{children:e("missionTitle")}),s.jsx("p",{children:e("mission")})]}),s.jsxs("section",{children:[s.jsx("h2",{children:e("coreFeaturesTitle")}),s.jsxs("div",{className:"semiont-static-feature-grid",children:[s.jsxs("div",{className:"semiont-static-feature-card",children:[s.jsx("span",{className:"semiont-static-feature-icon",children:"📊"}),s.jsx("h3",{children:e("semanticContentTitle")}),s.jsx("p",{className:"semiont-static-feature-subtitle",children:e("semanticContentSubtitle")}),e("semanticContent").split(`
|
|
2
2
|
|
|
3
3
|
`).map((t,i)=>s.jsx("p",{children:t},i)),s.jsx("span",{className:"semiont-static-badge semiont-static-badge-planned",children:e("planned")})]}),s.jsxs("div",{className:"semiont-static-feature-card",children:[s.jsx("span",{className:"semiont-static-feature-icon",children:"🤝"}),s.jsx("h3",{children:e("collaborationTitle")}),s.jsx("p",{className:"semiont-static-feature-subtitle",children:e("collaborationSubtitle")}),e("collaboration").split(`
|
|
4
4
|
|
|
5
5
|
`).map((t,i)=>s.jsx("p",{children:t},i)),s.jsx("span",{className:"semiont-static-badge semiont-static-badge-planned",children:e("planned")})]}),s.jsxs("div",{className:"semiont-static-feature-card",children:[s.jsx("span",{className:"semiont-static-feature-icon",children:"🔐"}),s.jsx("h3",{children:e("rbacTitle")}),s.jsx("p",{className:"semiont-static-feature-subtitle",children:e("rbacSubtitle")}),e("rbac").split(`
|
|
6
6
|
|
|
7
7
|
`).map((t,i)=>s.jsx("p",{children:t},i)),s.jsx("span",{className:"semiont-static-badge semiont-static-badge-planned",children:e("planned")})]})]})]}),s.jsxs("section",{className:"semiont-static-highlight",children:[s.jsx("h2",{children:e("openSourceTitle")}),s.jsx("p",{children:e("openSource")}),s.jsx("div",{className:"semiont-static-action-buttons",children:s.jsx("a",{href:"https://github.com/The-AI-Alliance/semiont",target:"_blank",rel:"noopener noreferrer",className:c.secondary.base,children:e("viewOnGitHub")})})]}),s.jsxs("section",{children:[s.jsx("h2",{children:e("futureVisionTitle")}),s.jsx("p",{children:e("futureVision")})]})]})]})})})}export{A as default};
|
|
8
|
-
//# sourceMappingURL=page-
|
|
8
|
+
//# sourceMappingURL=page-C_fIdKsk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-C_fIdKsk.js","sources":["../../src/app/[locale]/about/page.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { PageLayout, buttonStyles } from '@semiont/react-ui';\nimport { CookiePreferences } from '@/components/CookiePreferences';\nimport { KeyboardShortcutsContext } from '@/contexts/KeyboardShortcutsContext';\nimport { Link as RoutingLink, routes } from '@/lib/routing';\nimport { Link } from '@/i18n/routing';\n\nexport default function AboutPage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`About.${k}`, p as any) as string;\n const { t: _tFooter } = useTranslation();\n const tFooter = (k: string, p?: Record<string, unknown>) => _tFooter(`Footer.${k}`, p as any) as string;\n const { t: _tNav } = useTranslation();\n const tNav = (k: string, p?: Record<string, unknown>) => _tNav(`Navigation.${k}`, p as any) as string;\n const { t: _tHome } = useTranslation();\n const tHome = (k: string, p?: Record<string, unknown>) => _tHome(`Home.${k}`, p as any) as string;\n const keyboardContext = useContext(KeyboardShortcutsContext);\n\n return (\n <PageLayout\n Link={RoutingLink}\n routes={routes}\n t={tFooter}\n tNav={tNav}\n tHome={tHome}\n showAuthLinks={false}\n CookiePreferences={CookiePreferences}\n {...(keyboardContext?.openKeyboardHelp && { onOpenKeyboardHelp: keyboardContext.openKeyboardHelp })}\n className=\"semiont-static-page\"\n >\n <div className=\"semiont-static-container\">\n <div className=\"semiont-static-content\">\n {/* Header */}\n <header className=\"semiont-static-header\">\n <h1 className=\"semiont-static-title\">\n {t('pageTitle')}\n </h1>\n <p className=\"semiont-static-subtitle\">\n {t('tagline')}\n </p>\n </header>\n\n {/* Action Buttons */}\n <div className=\"semiont-static-action-buttons\">\n <Link\n to=\"/auth/signup\"\n className={buttonStyles.primary.base}\n >\n {t('signUp')}\n </Link>\n <Link\n to=\"/auth/connect?callbackUrl=/know\"\n className={buttonStyles.primary.base}\n >\n {t('signIn')}\n </Link>\n </div>\n\n <article className=\"semiont-static-article\">\n {/* Mission Section */}\n <section>\n <h2>{t('missionTitle')}</h2>\n <p>\n {t('mission')}\n </p>\n </section>\n\n {/* Features Section */}\n <section>\n <h2>{t('coreFeaturesTitle')}</h2>\n\n <div className=\"semiont-static-feature-grid\">\n {/* Semantic Content */}\n <div className=\"semiont-static-feature-card\">\n <span className=\"semiont-static-feature-icon\">📊</span>\n <h3>{t('semanticContentTitle')}</h3>\n <p className=\"semiont-static-feature-subtitle\">\n {t('semanticContentSubtitle')}\n </p>\n {t('semanticContent').split('\\n\\n').map((para, i) => (\n <p key={i}>{para}</p>\n ))}\n <span className=\"semiont-static-badge semiont-static-badge-planned\">\n {t('planned')}\n </span>\n </div>\n\n {/* Real-time Collaboration */}\n <div className=\"semiont-static-feature-card\">\n <span className=\"semiont-static-feature-icon\">🤝</span>\n <h3>{t('collaborationTitle')}</h3>\n <p className=\"semiont-static-feature-subtitle\">\n {t('collaborationSubtitle')}\n </p>\n {t('collaboration').split('\\n\\n').map((para, i) => (\n <p key={i}>{para}</p>\n ))}\n <span className=\"semiont-static-badge semiont-static-badge-planned\">\n {t('planned')}\n </span>\n </div>\n\n {/* Advanced RBAC */}\n <div className=\"semiont-static-feature-card\">\n <span className=\"semiont-static-feature-icon\">🔐</span>\n <h3>{t('rbacTitle')}</h3>\n <p className=\"semiont-static-feature-subtitle\">\n {t('rbacSubtitle')}\n </p>\n {t('rbac').split('\\n\\n').map((para, i) => (\n <p key={i}>{para}</p>\n ))}\n <span className=\"semiont-static-badge semiont-static-badge-planned\">\n {t('planned')}\n </span>\n </div>\n </div>\n </section>\n\n {/* Open Source Section */}\n <section className=\"semiont-static-highlight\">\n <h2>{t('openSourceTitle')}</h2>\n <p>\n {t('openSource')}\n </p>\n <div className=\"semiont-static-action-buttons\">\n <a\n href=\"https://github.com/The-AI-Alliance/semiont\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className={buttonStyles.secondary.base}\n >\n {t('viewOnGitHub')}\n </a>\n </div>\n </section>\n\n {/* Future Vision */}\n <section>\n <h2>{t('futureVisionTitle')}</h2>\n <p>\n {t('futureVision')}\n </p>\n </section>\n </article>\n </div>\n </div>\n </PageLayout>\n );\n}"],"names":["AboutPage","_t","useTranslation","t","k","p","_tFooter","tFooter","_tNav","tNav","_tHome","tHome","keyboardContext","useContext","KeyboardShortcutsContext","jsx","PageLayout","RoutingLink","routes","CookiePreferences","jsxs","Link","buttonStyles","para"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as t,S as a,b as c}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{j as t,S as a,b as c}from"./index-DoPpOINE.js";import{r as o}from"./vendor-DJo4KD8w.js";import{u as m}from"./routing-o1npPvOW.js";import{u as l}from"./i18n-BbpF47i1.js";const f=5e3;function g(){const{t:s}=l(),r=u=>s(`Home.${u}`),i=m(),e=o.useRef(null),n=()=>{e.current&&clearTimeout(e.current),i.push("/know/discover")};return o.useEffect(()=>(e.current=setTimeout(n,f),()=>{e.current&&clearTimeout(e.current)}),[]),t.jsxs("main",{role:"main",style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"100vh",gap:"2rem"},children:[t.jsx(a,{t:r,size:"xl",animated:!0}),t.jsx("button",{onClick:n,className:c.primary.base,children:r("begin")})]})}export{g as default};
|
|
2
|
+
//# sourceMappingURL=page-CjI_QXry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-CjI_QXry.js","sources":["../../src/app/[locale]/page.tsx"],"sourcesContent":["import { useEffect, useRef } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { SemiontBranding, buttonStyles } from '@semiont/react-ui';\nimport { useRouter } from '@/i18n/routing';\n\nconst AUTO_TRANSITION_MS = 5000;\n\nexport default function Home() {\n const { t: _t } = useTranslation();\n const t = (k: string) => _t(`Home.${k}`) as string;\n const router = useRouter();\n const timerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const goToWorkspace = () => {\n if (timerRef.current) clearTimeout(timerRef.current);\n router.push('/know/discover');\n };\n\n useEffect(() => {\n timerRef.current = setTimeout(goToWorkspace, AUTO_TRANSITION_MS);\n return () => { if (timerRef.current) clearTimeout(timerRef.current); };\n }, []);\n\n return (\n <main\n role=\"main\"\n style={{\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n minHeight: '100vh',\n gap: '2rem',\n }}\n >\n <SemiontBranding t={t} size=\"xl\" animated={true} />\n <button onClick={goToWorkspace} className={buttonStyles.primary.base}>\n {t('begin')}\n </button>\n </main>\n );\n}\n"],"names":["AUTO_TRANSITION_MS","Home","_t","useTranslation","t","k","router","useRouter","timerRef","useRef","goToWorkspace","useEffect","jsxs","jsx","SemiontBranding","buttonStyles"],"mappings":"gLAKA,MAAMA,EAAqB,IAE3B,SAAwBC,GAAO,CAC7B,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAKC,GAAcH,EAAG,QAAQG,CAAC,EAAE,EACjCC,EAASC,EAAA,EACTC,EAAWC,EAAAA,OAA6C,IAAI,EAE5DC,EAAgB,IAAM,CACtBF,EAAS,SAAS,aAAaA,EAAS,OAAO,EACnDF,EAAO,KAAK,gBAAgB,CAC9B,EAEAK,OAAAA,EAAAA,UAAU,KACRH,EAAS,QAAU,WAAWE,EAAeV,CAAkB,EACxD,IAAM,CAAMQ,EAAS,SAAS,aAAaA,EAAS,OAAO,CAAG,GACpE,CAAA,CAAE,EAGHI,EAAAA,KAAC,OAAA,CACC,KAAK,OACL,MAAO,CACL,QAAS,OACT,cAAe,SACf,WAAY,SACZ,eAAgB,SAChB,UAAW,QACX,IAAK,MAAA,EAGP,SAAA,CAAAC,EAAAA,IAACC,EAAA,CAAgB,EAAAV,EAAM,KAAK,KAAK,SAAU,GAAM,EACjDS,EAAAA,IAAC,SAAA,CAAO,QAASH,EAAe,UAAWK,EAAa,QAAQ,KAC7D,SAAAX,EAAE,OAAO,CAAA,CACZ,CAAA,CAAA,CAAA,CAGN"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{u as U,c as s,d as I,e as R,j as O,W,P as k,f as L}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{u as U,c as s,d as I,e as R,j as O,W,P as k,f as L}from"./index-DoPpOINE.js";import{r as g}from"./vendor-DJo4KD8w.js";import{u as M,L as $}from"./routing-o1npPvOW.js";import{u as x}from"./i18n-BbpF47i1.js";function B(){var h;const{t:A}=x(),e=(r,p)=>A(`AuthWelcome.${r}`,p),n=U(),T=s(n.activeKbId$),t=s(n.activeSession$),c=s(t==null?void 0:t.user$)??null,d=(t==null?void 0:t.kb)??null,u=!!c,a=T!=null&&t==null,f=r=>{n.signOut(r)},o=M(),[y,v]=g.useState(!1),S=I(),w=t==null?void 0:t.client,l=R(()=>L(w)),i=s(l.userData$),P=s(l.isProcessing$)??!1;g.useEffect(()=>{if(!a){if(!u){o.push("/auth/connect");return}if(i!=null&&i.termsAcceptedAt){o.push("/");return}}},[a,u,o,i]);const m=async r=>{if(!r){d&&f(d.id),o.push("/");return}try{await l.acceptTerms(),v(!0),setTimeout(()=>{o.push("/")},1e3)}catch(p){console.error("Terms acceptance error:",p),S.showError(e("errorAcceptingTerms"))}},C=a?"loading":y?"accepted":"form",b=((h=c==null?void 0:c.name)==null?void 0:h.split(" ")[0])??"";return O.jsx(W,{userName:b,termsAcceptedAt:(i==null?void 0:i.termsAcceptedAt)??null,isNewUser:!(i!=null&&i.termsAcceptedAt),status:C,isProcessing:P,onAccept:()=>m(!0),onDecline:()=>m(!1),translations:{loading:e("loading"),welcomeTitle:e("welcomeTitle"),thanksForAccepting:e("thanksForAccepting"),welcomeUser:e("welcomeUser",{firstName:b}),reviewTermsPrompt:e("reviewTermsPrompt"),termsSummaryTitle:e("termsSummaryTitle"),termsSummaryIntro:e("termsSummaryIntro"),acceptableUseTitle:e("acceptableUseTitle"),acceptableUseResponsible:e("acceptableUseResponsible"),acceptableUseRespect:e("acceptableUseRespect"),acceptableUseConduct:e("acceptableUseConduct"),prohibitedContentTitle:e("prohibitedContentTitle"),prohibitedContentIntro:e("prohibitedContentIntro"),prohibitedIllegal:e("prohibitedIllegal"),prohibitedAdult:e("prohibitedAdult"),prohibitedHate:e("prohibitedHate"),prohibitedViolence:e("prohibitedViolence"),prohibitedMisinformation:e("prohibitedMisinformation"),prohibitedPrivacy:e("prohibitedPrivacy"),prohibitedCopyright:e("prohibitedCopyright"),prohibitedMalware:e("prohibitedMalware"),prohibitedSpam:e("prohibitedSpam"),conductTitle:e("conductTitle"),conductDescription:e("conductDescription"),conductLink:e("conductLink"),conductPromotion:e("conductPromotion"),responsibilitiesTitle:e("responsibilitiesTitle"),responsibilitiesSecure:e("responsibilitiesSecure"),responsibilitiesReport:e("responsibilitiesReport"),responsibilitiesAccurate:e("responsibilitiesAccurate"),responsibilitiesComply:e("responsibilitiesComply"),violationsWarning:e("violationsWarning"),readFullTerms:e("readFullTerms"),termsOfService:e("termsOfService"),and:e("and"),privacyPolicy:e("privacyPolicy"),declineAndSignOut:e("declineAndSignOut"),acceptAndContinue:e("acceptAndContinue"),processing:e("processing"),legallyBound:e("legallyBound")},PageLayout:k,Link:$})}export{B as default};
|
|
2
|
+
//# sourceMappingURL=page-CkiQdVlI.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-CkiQdVlI.js","sources":["../../src/app/[locale]/auth/welcome/page.tsx"],"sourcesContent":["/**\n * Welcome Page - Thin Next.js wrapper\n *\n * This page handles Next.js-specific concerns (routing, auth, API calls)\n * and delegates rendering to the pure React WelcomePage component.\n */\n\nimport React, { useState, useEffect } from 'react';\nimport { useRouter } from '@/i18n/routing';\nimport { useTranslation } from 'react-i18next';\nimport { Link } from '@/i18n/routing';\nimport { PageLayout, useToast, useSemiont, useObservable } from '@semiont/react-ui';\nimport { WelcomePage } from '@semiont/react-ui';\nimport { createWelcomeVM } from '@semiont/react-ui';\nimport { useViewModel } from '@semiont/react-ui';\n\nexport default function Welcome() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`AuthWelcome.${k}`, p as any) as string;\n const semiont = useSemiont();\n const activeKbId = useObservable(semiont.activeKbId$);\n const session = useObservable(semiont.activeSession$);\n const user = useObservable(session?.user$) ?? null;\n const activeKnowledgeBase = session?.kb ?? null;\n const isAuthenticated = !!user;\n // \"Loading\" = KB is selected but session not yet constructed.\n const isLoading = activeKbId != null && session == null;\n const signOut = (id: string) => { void semiont.signOut(id); };\n const router = useRouter();\n const [termsAccepted, setTermsAccepted] = useState(false);\n const toast = useToast();\n\n const client = session?.client;\n const vm = useViewModel(() => createWelcomeVM(client!));\n\n const userData = useObservable(vm.userData$);\n const isProcessing = useObservable(vm.isProcessing$) ?? false;\n\n // Redirect if not authenticated or if terms already accepted\n useEffect(() => {\n if (isLoading) return;\n if (!isAuthenticated) {\n router.push('/auth/connect');\n return;\n }\n\n if (userData?.termsAcceptedAt) {\n router.push('/');\n return;\n }\n }, [isLoading, isAuthenticated, router, userData]);\n\n const handleTermsAcceptance = async (accepted: boolean) => {\n if (!accepted) {\n if (activeKnowledgeBase) {\n signOut(activeKnowledgeBase.id);\n }\n router.push('/');\n return;\n }\n\n try {\n await vm.acceptTerms();\n setTermsAccepted(true);\n\n setTimeout(() => {\n router.push('/');\n }, 1000);\n } catch (error) {\n console.error('Terms acceptance error:', error);\n toast.showError(t('errorAcceptingTerms'));\n }\n };\n\n const pageStatus = isLoading ? 'loading' : termsAccepted ? 'accepted' : 'form';\n const firstName = user?.name?.split(' ')[0] ?? '';\n\n return (\n <WelcomePage\n userName={firstName}\n termsAcceptedAt={userData?.termsAcceptedAt ?? null}\n isNewUser={!userData?.termsAcceptedAt}\n status={pageStatus}\n isProcessing={isProcessing}\n onAccept={() => handleTermsAcceptance(true)}\n onDecline={() => handleTermsAcceptance(false)}\n translations={{\n loading: t('loading'),\n welcomeTitle: t('welcomeTitle'),\n thanksForAccepting: t('thanksForAccepting'),\n welcomeUser: t('welcomeUser', { firstName }),\n reviewTermsPrompt: t('reviewTermsPrompt'),\n termsSummaryTitle: t('termsSummaryTitle'),\n termsSummaryIntro: t('termsSummaryIntro'),\n acceptableUseTitle: t('acceptableUseTitle'),\n acceptableUseResponsible: t('acceptableUseResponsible'),\n acceptableUseRespect: t('acceptableUseRespect'),\n acceptableUseConduct: t('acceptableUseConduct'),\n prohibitedContentTitle: t('prohibitedContentTitle'),\n prohibitedContentIntro: t('prohibitedContentIntro'),\n prohibitedIllegal: t('prohibitedIllegal'),\n prohibitedAdult: t('prohibitedAdult'),\n prohibitedHate: t('prohibitedHate'),\n prohibitedViolence: t('prohibitedViolence'),\n prohibitedMisinformation: t('prohibitedMisinformation'),\n prohibitedPrivacy: t('prohibitedPrivacy'),\n prohibitedCopyright: t('prohibitedCopyright'),\n prohibitedMalware: t('prohibitedMalware'),\n prohibitedSpam: t('prohibitedSpam'),\n conductTitle: t('conductTitle'),\n conductDescription: t('conductDescription'),\n conductLink: t('conductLink'),\n conductPromotion: t('conductPromotion'),\n responsibilitiesTitle: t('responsibilitiesTitle'),\n responsibilitiesSecure: t('responsibilitiesSecure'),\n responsibilitiesReport: t('responsibilitiesReport'),\n responsibilitiesAccurate: t('responsibilitiesAccurate'),\n responsibilitiesComply: t('responsibilitiesComply'),\n violationsWarning: t('violationsWarning'),\n readFullTerms: t('readFullTerms'),\n termsOfService: t('termsOfService'),\n and: t('and'),\n privacyPolicy: t('privacyPolicy'),\n declineAndSignOut: t('declineAndSignOut'),\n acceptAndContinue: t('acceptAndContinue'),\n processing: t('processing'),\n legallyBound: t('legallyBound'),\n }}\n PageLayout={PageLayout}\n Link={Link}\n />\n );\n}\n"],"names":["Welcome","_t","useTranslation","t","k","semiont","useSemiont","activeKbId","useObservable","session","user","activeKnowledgeBase","isAuthenticated","isLoading","signOut","id","router","useRouter","termsAccepted","setTermsAccepted","useState","toast","useToast","client","vm","useViewModel","createWelcomeVM","userData","isProcessing","useEffect","handleTermsAcceptance","accepted","error","pageStatus","firstName","_a","jsx","WelcomePage","PageLayout","Link"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{g,c as h,h as b,i as T,k as d,j as D,B as f,T as v}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{g,c as h,h as b,i as T,k as d,j as D,B as f,T as v}from"./index-DoPpOINE.js";import{r as o}from"./vendor-DJo4KD8w.js";import{T as x}from"./ToolbarPanels-CjWlSOUC.js";import{u as L}from"./i18n-BbpF47i1.js";import"./routing-o1npPvOW.js";import"./XMarkIcon-KMKD47CF.js";function E(){const{t:a}=L(),e=(s,p)=>a(`ModerateRecent.${s}`,p),i=g(),r=h(i.activePanel$)??null,{theme:c,setTheme:t}=b(),{showLineNumbers:l,toggleLineNumbers:n}=T(),m=o.useCallback(({theme:s})=>{t(s)},[t]),u=o.useCallback(()=>{n()},[n]);return d({"settings:theme-changed":m,"settings:line-numbers-toggled":u}),D.jsx(f,{hasDocuments:!1,isLoading:!1,theme:c,showLineNumbers:l,activePanel:r,translations:{pageTitle:e("pageTitle"),pageDescription:e("pageDescription"),sectionTitle:e("sectionTitle"),sectionDescription:e("sectionDescription"),noDocuments:e("noDocuments"),activityWillAppear:e("activityWillAppear"),loading:e("loading")},ToolbarPanels:x,Toolbar:v})}export{E as default};
|
|
2
|
+
//# sourceMappingURL=page-D5qkLwSn.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-D5qkLwSn.js","sources":["../../src/app/[locale]/moderate/recent/page.tsx"],"sourcesContent":["import { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { Toolbar } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { useTheme, useShellVM, useObservable, useLineNumbers, useEventSubscriptions } from '@semiont/react-ui';\nimport { RecentDocumentsPage } from '@semiont/react-ui';\n\n// Authentication is handled by middleware (proxy.ts)\n// Only authenticated moderators/admins can reach this page\n\nexport default function RecentDocumentsPageWrapper() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`ModerateRecent.${k}`, p as any) as string;\n\n // Toolbar and settings state\n const browseVM = useShellVM();\n const activePanel = useObservable(browseVM.activePanel$) ?? null;\n const { theme, setTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n\n const handleThemeChanged = useCallback(({ theme }: { theme: 'light' | 'dark' | 'system' }) => {\n setTheme(theme);\n }, [setTheme]);\n\n const handleLineNumbersToggled = useCallback(() => {\n toggleLineNumbers();\n }, [toggleLineNumbers]);\n\n useEventSubscriptions({\n 'settings:theme-changed': handleThemeChanged,\n 'settings:line-numbers-toggled': handleLineNumbersToggled,\n });\n\n return (\n <RecentDocumentsPage\n hasDocuments={false}\n isLoading={false}\n theme={theme}\n showLineNumbers={showLineNumbers}\n activePanel={activePanel}\n translations={{\n pageTitle: t('pageTitle'),\n pageDescription: t('pageDescription'),\n sectionTitle: t('sectionTitle'),\n sectionDescription: t('sectionDescription'),\n noDocuments: t('noDocuments'),\n activityWillAppear: t('activityWillAppear'),\n loading: t('loading'),\n }}\n ToolbarPanels={ToolbarPanels}\n Toolbar={Toolbar}\n />\n );\n}\n"],"names":["RecentDocumentsPageWrapper","_t","useTranslation","t","k","browseVM","useShellVM","activePanel","useObservable","theme","setTheme","useTheme","showLineNumbers","toggleLineNumbers","useLineNumbers","handleThemeChanged","useCallback","handleLineNumbersToggled","useEventSubscriptions","jsx","RecentDocumentsPage","ToolbarPanels","Toolbar"],"mappings":"kRAUA,SAAwBA,GAA6B,CACnD,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAW,IAAgCH,EAAG,kBAAkBG,CAAC,GAAI,CAAQ,EAGlFC,EAAWC,EAAA,EACXC,EAAcC,EAAcH,EAAS,YAAY,GAAK,KACtD,CAAE,MAAAI,EAAO,SAAAC,CAAA,EAAaC,EAAA,EACtB,CAAE,gBAAAC,EAAiB,kBAAAC,CAAA,EAAsBC,EAAA,EAEzCC,EAAqBC,EAAAA,YAAY,CAAC,CAAE,MAAAP,KAAoD,CAC5FC,EAASD,CAAK,CAChB,EAAG,CAACC,CAAQ,CAAC,EAEPO,EAA2BD,EAAAA,YAAY,IAAM,CACjDH,EAAA,CACF,EAAG,CAACA,CAAiB,CAAC,EAEtB,OAAAK,EAAsB,CACpB,yBAA0BH,EAC1B,gCAAiCE,CAAA,CAClC,EAGCE,EAAAA,IAACC,EAAA,CACC,aAAc,GACd,UAAW,GACX,MAAAX,EACA,gBAAAG,EACA,YAAAL,EACA,aAAc,CACZ,UAAWJ,EAAE,WAAW,EACxB,gBAAiBA,EAAE,iBAAiB,EACpC,aAAcA,EAAE,cAAc,EAC9B,mBAAoBA,EAAE,oBAAoB,EAC1C,YAAaA,EAAE,aAAa,EAC5B,mBAAoBA,EAAE,oBAAoB,EAC1C,QAASA,EAAE,SAAS,CAAA,EAEtB,cAAAkB,EACA,QAAAC,CAAA,CAAA,CAGN"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j as e,P as m}from"./index-
|
|
1
|
+
import{j as e,P as m}from"./index-DoPpOINE.js";import{r as u}from"./vendor-DJo4KD8w.js";import{C as T}from"./CookiePreferences-D5wgmVC7.js";import{K as f}from"./privacy-NaGU1hj4.js";import{r as g,L as k}from"./routing-BybXhU8X.js";import{u as c}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";import"./routing-o1npPvOW.js";function L(){const{t:r}=c(),s=(t,i)=>r(`Privacy.${t}`,i),{t:l}=c(),o=(t,i)=>l(`Footer.${t}`,i),{t:a}=c(),d=(t,i)=>a(`Navigation.${t}`,i),{t:h}=c(),x=(t,i)=>h(`Home.${t}`,i),n=u.useContext(f);return e.jsx(m,{Link:k,routes:g,t:o,tNav:d,tHome:x,CookiePreferences:T,...(n==null?void 0:n.openKeyboardHelp)&&{onOpenKeyboardHelp:n.openKeyboardHelp},className:"semiont-static-page",children:e.jsx("div",{className:"semiont-static-container",children:e.jsxs("div",{className:"semiont-static-content",children:[e.jsx("header",{className:"semiont-static-header",children:e.jsx("h1",{className:"semiont-static-title",children:s("pageTitle")})}),e.jsxs("article",{className:"semiont-static-article",children:[e.jsxs("section",{children:[e.jsx("h2",{children:s("introTitle")}),s("intro").split(`
|
|
2
2
|
|
|
3
3
|
`).map((t,i)=>e.jsx("p",{children:t},i))]}),e.jsxs("section",{children:[e.jsx("h2",{children:s("infoCollectTitle")}),e.jsx("h3",{children:s("personalInfoTitle")}),e.jsx("ul",{children:s("personalInfo").split(`
|
|
4
4
|
`).map((t,i)=>e.jsx("li",{children:t},i))}),e.jsx("h3",{children:s("autoCollectTitle")}),e.jsx("ul",{children:s("autoCollect").split(`
|
|
@@ -17,4 +17,4 @@ import{j as e,P as m}from"./index-Bsr9DJ3G.js";import{r as u}from"./vendor-DJo4K
|
|
|
17
17
|
|
|
18
18
|
`).map((t,i)=>i===0?e.jsx("p",{children:t},i):e.jsx("ul",{children:t.split(`
|
|
19
19
|
`).map((j,p)=>e.jsx("li",{children:j},p))},i))]}),e.jsxs("section",{children:[e.jsx("h2",{children:s("dataRetentionTitle")}),e.jsx("p",{children:s("dataRetention")})]}),e.jsxs("section",{children:[e.jsx("h2",{children:s("internationalTransfersTitle")}),e.jsx("p",{children:s("internationalTransfers")})]}),e.jsxs("section",{children:[e.jsx("h2",{children:s("contactTitle")}),e.jsx("p",{children:s("contactIntro")}),e.jsx("div",{className:"semiont-static-info-box",children:e.jsxs("p",{children:[e.jsx("strong",{children:s("contactEmail")})," privacy@semiont.com",e.jsx("br",{}),e.jsx("strong",{children:s("contactAddress")})," [Your Company Address]"]})})]}),e.jsxs("section",{children:[e.jsx("h2",{children:s("updatesTitle")}),e.jsx("p",{children:s("updates")}),e.jsx("footer",{className:"semiont-static-footer",children:e.jsx("p",{children:e.jsx("strong",{children:s("lastUpdated",{date:new Date().toLocaleDateString()})})})})]})]})]})})})}export{L as default};
|
|
20
|
-
//# sourceMappingURL=page-
|
|
20
|
+
//# sourceMappingURL=page-DBYS9qIU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-Dvw2I_gp.js","sources":["../../src/app/[locale]/privacy/page.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { PageLayout } from '@semiont/react-ui';\nimport { CookiePreferences } from '@/components/CookiePreferences';\nimport { KeyboardShortcutsContext } from '@/contexts/KeyboardShortcutsContext';\nimport { Link as RoutingLink, routes } from '@/lib/routing';\n\nexport default function PrivacyPolicyPage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Privacy.${k}`, p as any) as string;\n const { t: _tFooter } = useTranslation();\n const tFooter = (k: string, p?: Record<string, unknown>) => _tFooter(`Footer.${k}`, p as any) as string;\n const { t: _tNav } = useTranslation();\n const tNav = (k: string, p?: Record<string, unknown>) => _tNav(`Navigation.${k}`, p as any) as string;\n const { t: _tHome } = useTranslation();\n const tHome = (k: string, p?: Record<string, unknown>) => _tHome(`Home.${k}`, p as any) as string;\n const keyboardContext = useContext(KeyboardShortcutsContext);\n\n return (\n <PageLayout\n Link={RoutingLink}\n routes={routes}\n t={tFooter}\n tNav={tNav}\n tHome={tHome}\n CookiePreferences={CookiePreferences}\n {...(keyboardContext?.openKeyboardHelp && { onOpenKeyboardHelp: keyboardContext.openKeyboardHelp })}\n className=\"semiont-static-page\"\n >\n <div className=\"semiont-static-container\">\n <div className=\"semiont-static-content\">\n <header className=\"semiont-static-header\">\n <h1 className=\"semiont-static-title\">{t('pageTitle')}</h1>\n </header>\n\n <article className=\"semiont-static-article\">\n <section>\n <h2>{t('introTitle')}</h2>\n {t('intro').split('\\n\\n').map((para, i) => (\n <p key={i}>\n {para}\n </p>\n ))}\n </section>\n\n <section>\n <h2>{t('infoCollectTitle')}</h2>\n\n <h3>{t('personalInfoTitle')}</h3>\n <ul>\n {t('personalInfo').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('autoCollectTitle')}</h3>\n <ul>\n {t('autoCollect').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n </section>\n\n <section>\n <h2>{t('howWeUseTitle')}</h2>\n <ul>\n {t('howWeUse').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n </section>\n\n <section>\n <h2>{t('cookiePolicyTitle')}</h2>\n <p>\n {t('cookiePolicyIntro')}\n </p>\n\n <h3>{t('cookieCategoriesTitle')}</h3>\n\n <div className=\"semiont-static-cookie-grid\">\n <div className=\"semiont-static-cookie-card\">\n <h4>{t('necessaryCookiesTitle')}</h4>\n {t('necessaryCookies').split('\\n\\n').map((para, i) => (\n <p key={i}>\n {para}\n </p>\n ))}\n </div>\n\n <div className=\"semiont-static-cookie-card\">\n <h4>{t('analyticsCookiesTitle')}</h4>\n {t('analyticsCookies').split('\\n\\n').map((para, i) => (\n <p key={i}>\n {para}\n </p>\n ))}\n </div>\n\n <div className=\"semiont-static-cookie-card\">\n <h4>{t('marketingCookiesTitle')}</h4>\n {t('marketingCookies').split('\\n\\n').map((para, i) => (\n <p key={i}>\n {para}\n </p>\n ))}\n </div>\n\n <div className=\"semiont-static-cookie-card\">\n <h4>{t('preferenceCookiesTitle')}</h4>\n {t('preferenceCookies').split('\\n\\n').map((para, i) => (\n <p key={i}>\n {para}\n </p>\n ))}\n </div>\n </div>\n </section>\n\n <section>\n <h2>{t('yourRightsTitle')}</h2>\n\n <h3>{t('gdprRightsTitle')}</h3>\n <ul>\n {t('gdprRights').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('ccpaRightsTitle')}</h3>\n <ul>\n {t('ccpaRights').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n </section>\n\n <section>\n <h2>{t('dataSecurityTitle')}</h2>\n {t('dataSecurity').split('\\n\\n').map((block, i) => {\n if (i === 0) {\n return (\n <p key={i}>\n {block}\n </p>\n );\n }\n return (\n <ul key={i}>\n {block.split('\\n').map((item, j) => (\n <li key={j}>{item}</li>\n ))}\n </ul>\n );\n })}\n </section>\n\n <section>\n <h2>{t('dataRetentionTitle')}</h2>\n <p>\n {t('dataRetention')}\n </p>\n </section>\n\n <section>\n <h2>{t('internationalTransfersTitle')}</h2>\n <p>\n {t('internationalTransfers')}\n </p>\n </section>\n\n <section>\n <h2>{t('contactTitle')}</h2>\n <p>\n {t('contactIntro')}\n </p>\n <div className=\"semiont-static-info-box\">\n <p>\n <strong>{t('contactEmail')}</strong> privacy@semiont.com<br />\n <strong>{t('contactAddress')}</strong> [Your Company Address]\n </p>\n </div>\n </section>\n\n <section>\n <h2>{t('updatesTitle')}</h2>\n <p>\n {t('updates')}\n </p>\n <footer className=\"semiont-static-footer\">\n <p>\n <strong>{t('lastUpdated', { date: new Date().toLocaleDateString() })}</strong>\n </p>\n </footer>\n </section>\n </article>\n </div>\n </div>\n </PageLayout>\n );\n}"],"names":["PrivacyPolicyPage","_t","useTranslation","t","k","p","_tFooter","tFooter","_tNav","tNav","_tHome","tHome","keyboardContext","useContext","KeyboardShortcutsContext","jsx","PageLayout","RoutingLink","routes","CookiePreferences","jsxs","para","item","block","j"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"page-DBYS9qIU.js","sources":["../../src/app/[locale]/privacy/page.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { PageLayout } from '@semiont/react-ui';\nimport { CookiePreferences } from '@/components/CookiePreferences';\nimport { KeyboardShortcutsContext } from '@/contexts/KeyboardShortcutsContext';\nimport { Link as RoutingLink, routes } from '@/lib/routing';\n\nexport default function PrivacyPolicyPage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Privacy.${k}`, p as any) as string;\n const { t: _tFooter } = useTranslation();\n const tFooter = (k: string, p?: Record<string, unknown>) => _tFooter(`Footer.${k}`, p as any) as string;\n const { t: _tNav } = useTranslation();\n const tNav = (k: string, p?: Record<string, unknown>) => _tNav(`Navigation.${k}`, p as any) as string;\n const { t: _tHome } = useTranslation();\n const tHome = (k: string, p?: Record<string, unknown>) => _tHome(`Home.${k}`, p as any) as string;\n const keyboardContext = useContext(KeyboardShortcutsContext);\n\n return (\n <PageLayout\n Link={RoutingLink}\n routes={routes}\n t={tFooter}\n tNav={tNav}\n tHome={tHome}\n CookiePreferences={CookiePreferences}\n {...(keyboardContext?.openKeyboardHelp && { onOpenKeyboardHelp: keyboardContext.openKeyboardHelp })}\n className=\"semiont-static-page\"\n >\n <div className=\"semiont-static-container\">\n <div className=\"semiont-static-content\">\n <header className=\"semiont-static-header\">\n <h1 className=\"semiont-static-title\">{t('pageTitle')}</h1>\n </header>\n\n <article className=\"semiont-static-article\">\n <section>\n <h2>{t('introTitle')}</h2>\n {t('intro').split('\\n\\n').map((para, i) => (\n <p key={i}>\n {para}\n </p>\n ))}\n </section>\n\n <section>\n <h2>{t('infoCollectTitle')}</h2>\n\n <h3>{t('personalInfoTitle')}</h3>\n <ul>\n {t('personalInfo').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('autoCollectTitle')}</h3>\n <ul>\n {t('autoCollect').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n </section>\n\n <section>\n <h2>{t('howWeUseTitle')}</h2>\n <ul>\n {t('howWeUse').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n </section>\n\n <section>\n <h2>{t('cookiePolicyTitle')}</h2>\n <p>\n {t('cookiePolicyIntro')}\n </p>\n\n <h3>{t('cookieCategoriesTitle')}</h3>\n\n <div className=\"semiont-static-cookie-grid\">\n <div className=\"semiont-static-cookie-card\">\n <h4>{t('necessaryCookiesTitle')}</h4>\n {t('necessaryCookies').split('\\n\\n').map((para, i) => (\n <p key={i}>\n {para}\n </p>\n ))}\n </div>\n\n <div className=\"semiont-static-cookie-card\">\n <h4>{t('analyticsCookiesTitle')}</h4>\n {t('analyticsCookies').split('\\n\\n').map((para, i) => (\n <p key={i}>\n {para}\n </p>\n ))}\n </div>\n\n <div className=\"semiont-static-cookie-card\">\n <h4>{t('marketingCookiesTitle')}</h4>\n {t('marketingCookies').split('\\n\\n').map((para, i) => (\n <p key={i}>\n {para}\n </p>\n ))}\n </div>\n\n <div className=\"semiont-static-cookie-card\">\n <h4>{t('preferenceCookiesTitle')}</h4>\n {t('preferenceCookies').split('\\n\\n').map((para, i) => (\n <p key={i}>\n {para}\n </p>\n ))}\n </div>\n </div>\n </section>\n\n <section>\n <h2>{t('yourRightsTitle')}</h2>\n\n <h3>{t('gdprRightsTitle')}</h3>\n <ul>\n {t('gdprRights').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('ccpaRightsTitle')}</h3>\n <ul>\n {t('ccpaRights').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n </section>\n\n <section>\n <h2>{t('dataSecurityTitle')}</h2>\n {t('dataSecurity').split('\\n\\n').map((block, i) => {\n if (i === 0) {\n return (\n <p key={i}>\n {block}\n </p>\n );\n }\n return (\n <ul key={i}>\n {block.split('\\n').map((item, j) => (\n <li key={j}>{item}</li>\n ))}\n </ul>\n );\n })}\n </section>\n\n <section>\n <h2>{t('dataRetentionTitle')}</h2>\n <p>\n {t('dataRetention')}\n </p>\n </section>\n\n <section>\n <h2>{t('internationalTransfersTitle')}</h2>\n <p>\n {t('internationalTransfers')}\n </p>\n </section>\n\n <section>\n <h2>{t('contactTitle')}</h2>\n <p>\n {t('contactIntro')}\n </p>\n <div className=\"semiont-static-info-box\">\n <p>\n <strong>{t('contactEmail')}</strong> privacy@semiont.com<br />\n <strong>{t('contactAddress')}</strong> [Your Company Address]\n </p>\n </div>\n </section>\n\n <section>\n <h2>{t('updatesTitle')}</h2>\n <p>\n {t('updates')}\n </p>\n <footer className=\"semiont-static-footer\">\n <p>\n <strong>{t('lastUpdated', { date: new Date().toLocaleDateString() })}</strong>\n </p>\n </footer>\n </section>\n </article>\n </div>\n </div>\n </PageLayout>\n );\n}"],"names":["PrivacyPolicyPage","_t","useTranslation","t","k","p","_tFooter","tFooter","_tNav","tNav","_tHome","tHome","keyboardContext","useContext","KeyboardShortcutsContext","jsx","PageLayout","RoutingLink","routes","CookiePreferences","jsxs","para","item","block","j"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{j as i,P as x}from"./index-
|
|
1
|
+
import{j as i,P as x}from"./index-DoPpOINE.js";import{r as j}from"./vendor-DJo4KD8w.js";import{a as u,L as f}from"./routing-o1npPvOW.js";import{C as b}from"./CookiePreferences-D5wgmVC7.js";import{K as T}from"./privacy-NaGU1hj4.js";import{r as v,L as y}from"./routing-BybXhU8X.js";import{u as l}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function C(){const{t:a}=l(),e=(t,s)=>a(`Terms.${t}`,s),{t:r}=l(),c=(t,s)=>r(`Footer.${t}`,s),{t:o}=l(),p=(t,s)=>o(`Navigation.${t}`,s),{t:d}=l(),h=(t,s)=>d(`Home.${t}`,s),m=u(),n=j.useContext(T);return i.jsx(x,{Link:y,routes:v,t:c,tNav:p,tHome:h,CookiePreferences:b,...(n==null?void 0:n.openKeyboardHelp)&&{onOpenKeyboardHelp:n.openKeyboardHelp},className:"semiont-static-page",children:i.jsx("div",{className:"semiont-static-container",children:i.jsxs("div",{className:"semiont-static-content",children:[i.jsxs("header",{className:"semiont-static-header",children:[i.jsx("h1",{className:"semiont-static-title",children:e("pageTitle")}),i.jsx("p",{className:"semiont-static-subtitle",children:e("pageSubtitle")})]}),i.jsxs("article",{className:"semiont-static-article",children:[i.jsx("h2",{children:e("aupTitle")}),i.jsx("p",{children:e("aup")}),i.jsx("h3",{children:e("prohibitedTitle")}),i.jsx("p",{children:e("prohibitedIntro")}),i.jsx("ul",{children:e("prohibited").split(`
|
|
2
2
|
`).map((t,s)=>i.jsx("li",{children:t},s))}),i.jsx("h3",{children:e("aiAllianceTitle")}),i.jsxs("p",{children:[e("aiAllianceIntro")," ",i.jsx("a",{href:"https://ai-alliance.cdn.prismic.io/ai-alliance/Zl-MG5m069VX1dgH_AIAllianceCodeofConduct.pdf",target:"_blank",rel:"noopener noreferrer",className:"semiont-static-link",children:e("aiAllianceLink")}),e("aiAllianceIncludes")]}),i.jsx("ul",{children:e("aiAlliance").split(`
|
|
3
3
|
`).map((t,s)=>i.jsx("li",{children:t},s))}),i.jsx("h3",{children:e("responsibilitiesTitle")}),i.jsx("p",{children:e("responsibilitiesIntro")}),i.jsx("ul",{children:e("responsibilities").split(`
|
|
4
4
|
`).map((t,s)=>i.jsx("li",{children:t},s))}),i.jsx("h3",{children:e("moderationTitle")}),i.jsx("p",{children:e("moderation")}),i.jsx("h3",{children:e("privacyTitle")}),i.jsxs("p",{children:[e("privacy").split(e("privacyLink"))[0],i.jsx(f,{to:`/${m}/privacy`,className:"semiont-static-link",children:e("privacyLink")}),e("privacy").split(e("privacyLink"))[1]]}),i.jsx("h3",{children:e("ipTitle")}),i.jsx("p",{children:e("ip")}),i.jsx("h3",{children:e("liabilityTitle")}),i.jsx("p",{children:e("liability")}),i.jsx("h3",{children:e("changesTitle")}),i.jsx("p",{children:e("changes")}),i.jsx("h3",{children:e("contactTitle")}),i.jsx("p",{children:e("contact")}),i.jsx("footer",{className:"semiont-static-footer",children:i.jsx("p",{children:e("lastUpdated",{date:new Date().toLocaleDateString()})})})]})]})})})}export{C as default};
|
|
5
|
-
//# sourceMappingURL=page-
|
|
5
|
+
//# sourceMappingURL=page-DBlue8Rh.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-DBlue8Rh.js","sources":["../../src/app/[locale]/terms/page.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { Link } from '@/i18n/routing';\nimport { useTranslation } from 'react-i18next';\nimport { useLocale } from '@/i18n/routing';\nimport { PageLayout } from '@semiont/react-ui';\nimport { CookiePreferences } from '@/components/CookiePreferences';\nimport { KeyboardShortcutsContext } from '@/contexts/KeyboardShortcutsContext';\nimport { Link as RoutingLink, routes } from '@/lib/routing';\n\nexport default function TermsOfService() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Terms.${k}`, p as any) as string;\n const { t: _tFooter } = useTranslation();\n const tFooter = (k: string, p?: Record<string, unknown>) => _tFooter(`Footer.${k}`, p as any) as string;\n const { t: _tNav } = useTranslation();\n const tNav = (k: string, p?: Record<string, unknown>) => _tNav(`Navigation.${k}`, p as any) as string;\n const { t: _tHome } = useTranslation();\n const tHome = (k: string, p?: Record<string, unknown>) => _tHome(`Home.${k}`, p as any) as string;\n const locale = useLocale();\n const keyboardContext = useContext(KeyboardShortcutsContext);\n\n return (\n <PageLayout\n Link={RoutingLink}\n routes={routes}\n t={tFooter}\n tNav={tNav}\n tHome={tHome}\n CookiePreferences={CookiePreferences}\n {...(keyboardContext?.openKeyboardHelp && { onOpenKeyboardHelp: keyboardContext.openKeyboardHelp })}\n className=\"semiont-static-page\"\n >\n <div className=\"semiont-static-container\">\n <div className=\"semiont-static-content\">\n <header className=\"semiont-static-header\">\n <h1 className=\"semiont-static-title\">\n {t('pageTitle')}\n </h1>\n <p className=\"semiont-static-subtitle\">\n {t('pageSubtitle')}\n </p>\n </header>\n\n <article className=\"semiont-static-article\">\n <h2>{t('aupTitle')}</h2>\n\n <p>\n {t('aup')}\n </p>\n\n <h3>{t('prohibitedTitle')}</h3>\n <p>{t('prohibitedIntro')}</p>\n <ul>\n {t('prohibited').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('aiAllianceTitle')}</h3>\n <p>\n {t('aiAllianceIntro')}{' '}\n <a\n href=\"https://ai-alliance.cdn.prismic.io/ai-alliance/Zl-MG5m069VX1dgH_AIAllianceCodeofConduct.pdf\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"semiont-static-link\"\n >\n {t('aiAllianceLink')}\n </a>\n {t('aiAllianceIncludes')}\n </p>\n <ul>\n {t('aiAlliance').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('responsibilitiesTitle')}</h3>\n <p>{t('responsibilitiesIntro')}</p>\n <ul>\n {t('responsibilities').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('moderationTitle')}</h3>\n <p>\n {t('moderation')}\n </p>\n\n <h3>{t('privacyTitle')}</h3>\n <p>\n {t('privacy').split(t('privacyLink'))[0]}\n <Link to={`/${locale}/privacy`} className=\"semiont-static-link\">\n {t('privacyLink')}\n </Link>\n {t('privacy').split(t('privacyLink'))[1]}\n </p>\n\n <h3>{t('ipTitle')}</h3>\n <p>\n {t('ip')}\n </p>\n\n <h3>{t('liabilityTitle')}</h3>\n <p>\n {t('liability')}\n </p>\n\n <h3>{t('changesTitle')}</h3>\n <p>\n {t('changes')}\n </p>\n\n <h3>{t('contactTitle')}</h3>\n <p>\n {t('contact')}\n </p>\n\n <footer className=\"semiont-static-footer\">\n <p>\n {t('lastUpdated', { date: new Date().toLocaleDateString() })}\n </p>\n </footer>\n </article>\n\n </div>\n </div>\n </PageLayout>\n );\n}"],"names":["TermsOfService","_t","useTranslation","t","k","p","_tFooter","tFooter","_tNav","tNav","_tHome","tHome","locale","useLocale","keyboardContext","useContext","KeyboardShortcutsContext","jsx","PageLayout","RoutingLink","routes","CookiePreferences","jsxs","item","i","Link"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as o}from"./vendor-DJo4KD8w.js";import{u as t}from"./routing-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{r as o}from"./vendor-DJo4KD8w.js";import{u as t}from"./routing-o1npPvOW.js";import"./index-DoPpOINE.js";import"./i18n-BbpF47i1.js";function a(){const r=t();return o.useEffect(()=>{r.replace("/know/discover")},[r]),null}export{a as default};
|
|
2
|
+
//# sourceMappingURL=page-DSW3JQF2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-DSW3JQF2.js","sources":["../../src/app/[locale]/auth/connect/page.tsx"],"sourcesContent":["import { useEffect } from 'react';\nimport { useRouter } from '@/i18n/routing';\n\n/**\n * Legacy connect page — redirects to /know/discover.\n * Authentication is now handled inline in the Knowledge Base Panel.\n */\nexport default function ConnectPage() {\n const router = useRouter();\n\n useEffect(() => {\n router.replace('/know/discover');\n }, [router]);\n\n return null;\n}\n"],"names":["ConnectPage","router","useRouter","useEffect"],"mappings":"0IAOA,SAAwBA,GAAc,CACpC,MAAMC,EAASC,EAAA,EAEfC,OAAAA,EAAAA,UAAU,IAAM,CACdF,EAAO,QAAQ,gBAAgB,CACjC,EAAG,CAACA,CAAM,CAAC,EAEJ,IACT"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{j as r}from"./index-DoPpOINE.js";import{a as t}from"./routing-o1npPvOW.js";import{N as a}from"./vendor-DJo4KD8w.js";import"./i18n-BbpF47i1.js";function n(){const o=t();return r.jsx(a,{to:`/${o}/admin/users`,replace:!0})}export{n as default};
|
|
2
|
+
//# sourceMappingURL=page-DU909Np3.js.map
|