@semiont/browser 0.5.33 → 0.5.34
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/assets/{CookiePreferences-DmcqbD0J.js → CookiePreferences--yB7lQIF.js} +2 -2
- package/dist/assets/{CookiePreferences-DmcqbD0J.js.map → CookiePreferences--yB7lQIF.js.map} +1 -1
- package/dist/assets/{KeyboardShortcutsContext-DQIIAvHg.js → KeyboardShortcutsContext-Bb3ZQ4QP.js} +2 -2
- package/dist/assets/{KeyboardShortcutsContext-DQIIAvHg.js.map → KeyboardShortcutsContext-Bb3ZQ4QP.js.map} +1 -1
- package/dist/assets/{PdfAnnotationCanvas.client-7EYCQF6V-U031xawA.js → PdfAnnotationCanvas.client-7EYCQF6V-DjhntiNY.js} +2 -2
- package/dist/assets/{PdfAnnotationCanvas.client-7EYCQF6V-U031xawA.js.map → PdfAnnotationCanvas.client-7EYCQF6V-DjhntiNY.js.map} +1 -1
- package/dist/assets/{ToolbarPanels-ry6xWxyQ.js → ToolbarPanels-DMK1LAo0.js} +2 -2
- package/dist/assets/{ToolbarPanels-ry6xWxyQ.js.map → ToolbarPanels-DMK1LAo0.js.map} +1 -1
- package/dist/assets/{client-Bh0_NlMx.js → client-Bb60uCwR.js} +2 -2
- package/dist/assets/{client-Bh0_NlMx.js.map → client-Bb60uCwR.js.map} +1 -1
- package/dist/assets/{client-DPVas1ir.js → client-CBa3uasO.js} +2 -2
- package/dist/assets/{client-DPVas1ir.js.map → client-CBa3uasO.js.map} +1 -1
- package/dist/assets/{en-H4MQUZWO-BKtqNCLE.js → en-H4MQUZWO-BbOPkiNi.js} +1 -1
- package/dist/assets/{index-YWAso44K.js → index-Ojc52FmW.js} +50 -50
- package/dist/assets/index-Ojc52FmW.js.map +1 -0
- package/dist/assets/{layout-gl_pZ7sI.js → layout-B20iBPm-.js} +2 -2
- package/dist/assets/{layout-gl_pZ7sI.js.map → layout-B20iBPm-.js.map} +1 -1
- package/dist/assets/{layout-1FTjRGcC.js → layout-CneiUXGM.js} +2 -2
- package/dist/assets/{layout-1FTjRGcC.js.map → layout-CneiUXGM.js.map} +1 -1
- package/dist/assets/{layout-BL24vUoz.js → layout-DhqPRPc7.js} +2 -2
- package/dist/assets/{layout-BL24vUoz.js.map → layout-DhqPRPc7.js.map} +1 -1
- package/dist/assets/{layout-CMFZCwpp.js → layout-YkO4-GqS.js} +2 -2
- package/dist/assets/{layout-CMFZCwpp.js.map → layout-YkO4-GqS.js.map} +1 -1
- package/dist/assets/{not-found-Bf3lTLrq.js → not-found-D1Vs29Pd.js} +2 -2
- package/dist/assets/{not-found-Bf3lTLrq.js.map → not-found-D1Vs29Pd.js.map} +1 -1
- package/dist/assets/{page-C0b0IMHJ.js → page--ktG80Hk.js} +2 -2
- package/dist/assets/{page-C0b0IMHJ.js.map → page--ktG80Hk.js.map} +1 -1
- package/dist/assets/{page-DNMUxaoU.js → page-B06y4XtB.js} +2 -2
- package/dist/assets/{page-DNMUxaoU.js.map → page-B06y4XtB.js.map} +1 -1
- package/dist/assets/{page-BSNqz9-L.js → page-B7Vp80w2.js} +2 -2
- package/dist/assets/{page-BSNqz9-L.js.map → page-B7Vp80w2.js.map} +1 -1
- package/dist/assets/{page-B06qt0_f.js → page-BD2asFxe.js} +2 -2
- package/dist/assets/{page-B06qt0_f.js.map → page-BD2asFxe.js.map} +1 -1
- package/dist/assets/{page-fxztE4M6.js → page-BJnX_yAg.js} +2 -2
- package/dist/assets/{page-fxztE4M6.js.map → page-BJnX_yAg.js.map} +1 -1
- package/dist/assets/{page-CH8ZnAYi.js → page-BXynYvhE.js} +2 -2
- package/dist/assets/{page-CH8ZnAYi.js.map → page-BXynYvhE.js.map} +1 -1
- package/dist/assets/{page-CEN4ThgV.js → page-BgzC_t5l.js} +2 -2
- package/dist/assets/{page-CEN4ThgV.js.map → page-BgzC_t5l.js.map} +1 -1
- package/dist/assets/{page-FX-SWBET.js → page-BuW3aSm_.js} +2 -2
- package/dist/assets/{page-FX-SWBET.js.map → page-BuW3aSm_.js.map} +1 -1
- package/dist/assets/{page-DRhvMMwi.js → page-C0dhB8e1.js} +2 -2
- package/dist/assets/{page-DRhvMMwi.js.map → page-C0dhB8e1.js.map} +1 -1
- package/dist/assets/{page-Ckk35qEC.js → page-C6IDcAg_.js} +2 -2
- package/dist/assets/{page-Ckk35qEC.js.map → page-C6IDcAg_.js.map} +1 -1
- package/dist/assets/{page-DWMuSgdf.js → page-CB1Zkhf_.js} +2 -2
- package/dist/assets/{page-DWMuSgdf.js.map → page-CB1Zkhf_.js.map} +1 -1
- package/dist/assets/{page-CS1uNON2.js → page-COYp-fvx.js} +2 -2
- package/dist/assets/{page-CS1uNON2.js.map → page-COYp-fvx.js.map} +1 -1
- package/dist/assets/{page-dJc_VjeE.js → page-CW0mYluf.js} +2 -2
- package/dist/assets/{page-dJc_VjeE.js.map → page-CW0mYluf.js.map} +1 -1
- package/dist/assets/{page-DYFp8ySg.js → page-CZj-I3Ya.js} +2 -2
- package/dist/assets/{page-DYFp8ySg.js.map → page-CZj-I3Ya.js.map} +1 -1
- package/dist/assets/{page-C3DgJ9rw.js → page-DNCSUWUQ.js} +2 -2
- package/dist/assets/{page-C3DgJ9rw.js.map → page-DNCSUWUQ.js.map} +1 -1
- package/dist/assets/{page-BggUt9_0.js → page-DVjeBr3D.js} +2 -2
- package/dist/assets/{page-BggUt9_0.js.map → page-DVjeBr3D.js.map} +1 -1
- package/dist/assets/{page-Hs5hZKz4.js → page-IQiRcQOl.js} +2 -2
- package/dist/assets/{page-Hs5hZKz4.js.map → page-IQiRcQOl.js.map} +1 -1
- package/dist/assets/{page-hf1byz9P.js → page-Ln_Qh0ju.js} +2 -2
- package/dist/assets/{page-hf1byz9P.js.map → page-Ln_Qh0ju.js.map} +1 -1
- package/dist/assets/{routing-Dn3ADPMa.js → routing-CjmlBUw_.js} +2 -2
- package/dist/assets/{routing-Dn3ADPMa.js.map → routing-CjmlBUw_.js.map} +1 -1
- package/dist/assets/{routing-BcZYLYt6.js → routing-DMkxvd2j.js} +2 -2
- package/dist/assets/{routing-BcZYLYt6.js.map → routing-DMkxvd2j.js.map} +1 -1
- package/dist/assets/{web-D9m06-8m.js → web-UYBXFOwL.js} +2 -2
- package/dist/assets/{web-D9m06-8m.js.map → web-UYBXFOwL.js.map} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/index-YWAso44K.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page
|
|
1
|
+
{"version":3,"file":"page--ktG80Hk.js","names":[],"sources":["../../src/app/[locale]/know/discover/page.tsx"],"sourcesContent":["\"use client\";\n\nimport { useTranslation } from 'react-i18next';\nimport { useRouter } from '@/i18n/routing';\nimport {\n useTheme,\n useObservable,\n useSemiont,\n useSessionStateUnit,\n ResourceDiscoveryPage,\n} from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { useShellStateUnit } from '@semiont/react-ui';\nimport { createDiscoverStateUnit } from '@semiont/react-ui';\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 session = useObservable(useSemiont().activeSession$) ?? undefined;\n\n const browseStateUnit = useShellStateUnit();\n const stateUnit = useSessionStateUnit(session, (s) => createDiscoverStateUnit(s, browseStateUnit));\n\n const activePanel = useObservable(stateUnit?.browse.activePanel$) ?? null;\n const recentDocuments = useObservable(stateUnit?.recent.value$) ?? [];\n const entityTypes = useObservable(stateUnit?.entityTypes.value$) ?? [];\n // Three states: a terminally failed list has no value either, so deriving\n // \"loading\" from `undefined` left this route spinning for ever.\n // See .plans/PANEL-FAILURE-STATES.md\n const recentError = useObservable(stateUnit?.recent.error$) ?? null;\n const isLoadingRecent = useObservable(stateUnit?.recent.loading$) ?? true;\n const searchQuery = useObservable(stateUnit?.search.query$) ?? '';\n const searchState = useObservable(stateUnit?.search.state$);\n const searchDocuments = searchState?.results ?? [];\n const isSearching = searchState?.isSearching ?? false;\n // Read off the SAME value as the results, never a sibling observable (S10).\n const searchMatchKind = searchState?.matchKind;\n const selectedEntityType = useObservable(stateUnit?.selectedEntityType$) ?? '';\n\n const { resolvedTheme } = useTheme();\n\n if (!stateUnit) return null;\n\n return (\n <ResourceDiscoveryPage\n recentDocuments={recentDocuments}\n searchDocuments={searchDocuments}\n entityTypes={entityTypes}\n isLoadingRecent={isLoadingRecent}\n recentError={recentError}\n onRetryRecent={stateUnit?.recent.retry}\n isSearching={isSearching}\n {...(searchMatchKind ? { searchMatchKind } : {})}\n searchQuery={searchQuery}\n onSearchQueryChange={stateUnit?.search.setQuery}\n selectedEntityType={selectedEntityType}\n onSelectedEntityTypeChange={stateUnit?.setSelectedEntityType}\n theme={resolvedTheme}\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 semanticFallbackNotice: t('semanticFallbackNotice'),\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 recentFailed: t('recentFailed'),\n retry: t('retry'),\n }}\n ToolbarPanels={ToolbarPanels}\n />\n );\n}\n"],"mappings":"mQAcA,SAAwB,GAAe,CACrC,GAAM,CAAK,GAAO,EAAe,EAC3B,GAAK,EAAW,IAAgC,EAAG,YAAY,IAAK,CAAQ,EAC5E,EAAS,EAAU,EACnB,EAAU,EAAc,EAAW,CAAC,CAAC,cAAc,GAAK,IAAA,GAExD,EAAkB,EAAkB,EACpC,EAAY,EAAoB,EAAU,GAAM,EAAwB,EAAG,CAAe,CAAC,EAE3F,EAAc,EAAc,GAAW,OAAO,YAAY,GAAK,KAC/D,EAAkB,EAAc,GAAW,OAAO,MAAM,GAAK,CAAC,EAC9D,EAAc,EAAc,GAAW,YAAY,MAAM,GAAK,CAAC,EAI/D,EAAc,EAAc,GAAW,OAAO,MAAM,GAAK,KACzD,EAAkB,EAAc,GAAW,OAAO,QAAQ,GAAK,GAC/D,EAAc,EAAc,GAAW,OAAO,MAAM,GAAK,GACzD,EAAc,EAAc,GAAW,OAAO,MAAM,EACpD,EAAkB,GAAa,SAAW,CAAC,EAC3C,EAAc,GAAa,aAAe,GAE1C,EAAkB,GAAa,UAC/B,EAAqB,EAAc,GAAW,mBAAmB,GAAK,GAEtE,CAAE,iBAAkB,EAAS,EAInC,OAFK,GAGH,EAAA,EAAA,IAAA,CAAC,EAAD,CACmB,kBACA,kBACJ,cACI,kBACJ,cACb,cAAe,GAAW,OAAO,MACpB,cACb,GAAK,EAAkB,CAAE,iBAAgB,EAAI,CAAC,EACjC,cACb,oBAAqB,GAAW,OAAO,SACnB,qBACpB,2BAA4B,GAAW,sBACvC,MAAO,EACM,cACb,qBAAuB,GAAe,EAAO,KAAK,kBAAkB,mBAAmB,CAAU,GAAG,EACpG,wBAA2B,EAAO,KAAK,eAAe,EACtD,aAAc,CACZ,MAAO,EAAE,OAAO,EAChB,SAAU,EAAE,UAAU,EACtB,kBAAmB,EAAE,mBAAmB,EACxC,aAAc,EAAE,cAAc,EAC9B,UAAW,EAAE,WAAW,EACxB,uBAAwB,EAAE,wBAAwB,EAClD,mBAAoB,EAAE,oBAAoB,EAC1C,IAAK,EAAE,KAAK,EACZ,gBAAiB,EAAE,iBAAiB,EACpC,cAAgB,GAAkB,EAAE,gBAAiB,CAAE,OAAM,CAAC,EAC9D,oBAAsB,GAAuB,EAAE,sBAAuB,CAAE,YAAW,CAAC,EACpF,eAAiB,GAAkB,EAAE,iBAAkB,CAAE,OAAM,CAAC,EAChE,qBAAsB,EAAE,sBAAsB,EAC9C,qBAAsB,EAAE,sBAAsB,EAC9C,SAAU,EAAE,UAAU,EACtB,QAAS,EAAE,SAAS,EACpB,qBAAsB,EAAE,sBAAsB,EAC9C,aAAc,EAAE,cAAc,EAC9B,MAAO,EAAE,OAAO,CAClB,EACe,eAChB,CAAA,EA1CoB,IA4CzB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{$ as i,At as a,Ft as o,Y as s,et as c,j as l,k as u}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{$ as i,At as a,Ft as o,Y as s,et as c,j as l,k as u}from"./index-Ojc52FmW.js";import{t as d}from"./ToolbarPanels-DMK1LAo0.js";var f=e(t()),p=r();function m(){let{t:e}=n(),t=(t,n)=>e(`ModerateTagSchemas.${t}`,n),r=i(),m=s(r.activePanel$)??null,{theme:h}=c(),g=s(a().activeSession$),_=(0,f.useMemo)(()=>g?.client.browse.tagSchemas()??null,[g]),v=s(_),y=v&&o(v)?v.value:[],b=v===void 0||v.status===`pending`;return(0,p.jsx)(u,{schemas:y,isLoading:b,theme:h,activePanel:m,translations:{pageTitle:t(`pageTitle`),pageDescription:t(`pageDescription`),categories:t(`categories`),loading:t(`loading`)},ToolbarPanels:d,Toolbar:l})}export{m as default};
|
|
2
|
+
//# sourceMappingURL=page-B06y4XtB.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-B06y4XtB.js","names":[],"sources":["../../src/app/[locale]/moderate/tag-schemas/page.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { isReady } from '@semiont/sdk';\nimport { useTranslation } from 'react-i18next';\nimport { Toolbar } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { useTheme, useShellStateUnit, useObservable, useSemiont } from '@semiont/react-ui';\nimport { TagSchemasPage } 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 TagSchemasPageWrapper() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`ModerateTagSchemas.${k}`, p as any) as string;\n\n // Toolbar and settings state\n const browseStateUnit = useShellStateUnit();\n const activePanel = useObservable(browseStateUnit.activePanel$) ?? null;\n const { theme } = useTheme();\n\n\n\n // Subscribe to the per-KB tag-schema registry. Schemas are runtime-\n // registered by the KB at session start (frame.addTagSchema). The\n // observable yields `undefined` during the initial fetch — surfaced as\n // `isLoading` to the page component.\n const session = useObservable(useSemiont().activeSession$);\n const tagSchemas$ = useMemo(\n () => session?.client.browse.tagSchemas() ?? null,\n [session],\n );\n const schemasObserved = useObservable(tagSchemas$);\n // D1 unwrap: the third outcome is explicit — a failed registry read shows\n // as not-loading with an empty list here (failure UI is follow-up work).\n const schemas = schemasObserved && isReady(schemasObserved) ? schemasObserved.value : [];\n const isLoading = schemasObserved === undefined || schemasObserved.status === 'pending';\n\n return (\n <TagSchemasPage\n schemas={schemas}\n isLoading={isLoading}\n theme={theme}\n activePanel={activePanel}\n translations={{\n pageTitle: t('pageTitle'),\n pageDescription: t('pageDescription'),\n categories: t('categories'),\n loading: t('loading'),\n }}\n ToolbarPanels={ToolbarPanels}\n Toolbar={Toolbar}\n />\n );\n}\n"],"mappings":"kSAWA,SAAwB,GAAwB,CAC9C,GAAM,CAAE,EAAG,GAAO,EAAe,EAC3B,GAAK,EAAW,IAAgC,EAAG,sBAAsB,IAAK,CAAQ,EAGtF,EAAkB,EAAkB,EACpC,EAAc,EAAc,EAAgB,YAAY,GAAK,KAC7D,CAAE,SAAU,EAAS,EAQrB,EAAU,EAAc,EAAW,CAAC,CAAC,cAAc,EACnD,GAAA,EAAc,EAAA,QAAA,KACZ,GAAS,OAAO,OAAO,WAAW,GAAK,KAC7C,CAAC,CAAO,CACV,EACM,EAAkB,EAAc,CAAW,EAG3C,EAAU,GAAmB,EAAQ,CAAe,EAAI,EAAgB,MAAQ,CAAC,EACjF,EAAY,IAAoB,IAAA,IAAa,EAAgB,SAAW,UAE9E,OACE,EAAA,EAAA,IAAA,CAAC,EAAD,CACW,UACE,YACJ,QACM,cACb,aAAc,CACZ,UAAW,EAAE,WAAW,EACxB,gBAAiB,EAAE,iBAAiB,EACpC,WAAY,EAAE,YAAY,EAC1B,QAAS,EAAE,SAAS,CACtB,EACe,gBACN,SACV,CAAA,CAEL"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{N as i,p as a}from"./index-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{N as i,p as a}from"./index-Ojc52FmW.js";import{t as o}from"./KeyboardShortcutsContext-Bb3ZQ4QP.js";import{t as s}from"./CookiePreferences--yB7lQIF.js";import{t as c}from"./routing-CjmlBUw_.js";import{n as l,t as u}from"./routing-DMkxvd2j.js";var d=e(t()),f=r();function p(){let{t:e}=n(),t=(t,n)=>e(`About.${t}`,n),{t:r}=n(),p=(e,t)=>r(`Footer.${e}`,t),{t:m}=n(),h=(e,t)=>m(`Navigation.${e}`,t),{t:g}=n(),_=(e,t)=>g(`Home.${e}`,t),v=(0,d.useContext)(o);return(0,f.jsx)(a,{Link:u,routes:l,t:p,tNav:h,tHome:_,showAuthLinks:!1,CookiePreferences:s,...v?.openKeyboardHelp&&{onOpenKeyboardHelp:v.openKeyboardHelp},className:`semiont-static-page`,children:(0,f.jsx)(`div`,{className:`semiont-static-container`,children:(0,f.jsxs)(`div`,{className:`semiont-static-content`,children:[(0,f.jsxs)(`header`,{className:`semiont-static-header`,children:[(0,f.jsx)(`h1`,{className:`semiont-static-title`,children:t(`pageTitle`)}),(0,f.jsx)(`p`,{className:`semiont-static-subtitle`,children:t(`tagline`)})]}),(0,f.jsxs)(`div`,{className:`semiont-static-action-buttons`,children:[(0,f.jsx)(c,{to:`/auth/signup`,className:i.primary.base,children:t(`signUp`)}),(0,f.jsx)(c,{to:`/auth/connect?callbackUrl=/know`,className:i.primary.base,children:t(`signIn`)})]}),(0,f.jsxs)(`article`,{className:`semiont-static-article`,children:[(0,f.jsxs)(`section`,{children:[(0,f.jsx)(`h2`,{children:t(`missionTitle`)}),(0,f.jsx)(`p`,{children:t(`mission`)})]}),(0,f.jsxs)(`section`,{children:[(0,f.jsx)(`h2`,{children:t(`coreFeaturesTitle`)}),(0,f.jsxs)(`div`,{className:`semiont-static-feature-grid`,children:[(0,f.jsxs)(`div`,{className:`semiont-static-feature-card`,children:[(0,f.jsx)(`span`,{className:`semiont-static-feature-icon`,children:`📊`}),(0,f.jsx)(`h3`,{children:t(`semanticContentTitle`)}),(0,f.jsx)(`p`,{className:`semiont-static-feature-subtitle`,children:t(`semanticContentSubtitle`)}),t(`semanticContent`).split(`
|
|
2
2
|
|
|
3
3
|
`).map((e,t)=>(0,f.jsx)(`p`,{children:e},t)),(0,f.jsx)(`span`,{className:`semiont-static-badge semiont-static-badge-planned`,children:t(`planned`)})]}),(0,f.jsxs)(`div`,{className:`semiont-static-feature-card`,children:[(0,f.jsx)(`span`,{className:`semiont-static-feature-icon`,children:`🤝`}),(0,f.jsx)(`h3`,{children:t(`collaborationTitle`)}),(0,f.jsx)(`p`,{className:`semiont-static-feature-subtitle`,children:t(`collaborationSubtitle`)}),t(`collaboration`).split(`
|
|
4
4
|
|
|
5
5
|
`).map((e,t)=>(0,f.jsx)(`p`,{children:e},t)),(0,f.jsx)(`span`,{className:`semiont-static-badge semiont-static-badge-planned`,children:t(`planned`)})]}),(0,f.jsxs)(`div`,{className:`semiont-static-feature-card`,children:[(0,f.jsx)(`span`,{className:`semiont-static-feature-icon`,children:`🔐`}),(0,f.jsx)(`h3`,{children:t(`rbacTitle`)}),(0,f.jsx)(`p`,{className:`semiont-static-feature-subtitle`,children:t(`rbacSubtitle`)}),t(`rbac`).split(`
|
|
6
6
|
|
|
7
7
|
`).map((e,t)=>(0,f.jsx)(`p`,{children:e},t)),(0,f.jsx)(`span`,{className:`semiont-static-badge semiont-static-badge-planned`,children:t(`planned`)})]})]})]}),(0,f.jsxs)(`section`,{className:`semiont-static-highlight`,children:[(0,f.jsx)(`h2`,{children:t(`openSourceTitle`)}),(0,f.jsx)(`p`,{children:t(`openSource`)}),(0,f.jsx)(`div`,{className:`semiont-static-action-buttons`,children:(0,f.jsx)(`a`,{href:`https://github.com/The-AI-Alliance/semiont`,target:`_blank`,rel:`noopener noreferrer`,className:i.secondary.base,children:t(`viewOnGitHub`)})})]}),(0,f.jsxs)(`section`,{children:[(0,f.jsx)(`h2`,{children:t(`futureVisionTitle`)}),(0,f.jsx)(`p`,{children:t(`futureVision`)})]})]})]})})})}export{p as default};
|
|
8
|
-
//# sourceMappingURL=page-
|
|
8
|
+
//# sourceMappingURL=page-B7Vp80w2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-B7Vp80w2.js","names":[],"sources":["../../src/app/[locale]/about/page.tsx"],"sourcesContent":["import { 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}"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{C as i,N as a}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{C as i,N as a}from"./index-Ojc52FmW.js";import{i as o}from"./routing-CjmlBUw_.js";var s=e(t()),c=r(),l=5e3;function u(){let{t:e}=n(),t=t=>e(`Home.${t}`),r=o(),u=(0,s.useRef)(null),d=()=>{u.current&&clearTimeout(u.current),r.push(`/know/discover`)};return(0,s.useEffect)(()=>(u.current=setTimeout(d,l),()=>{u.current&&clearTimeout(u.current)}),[]),(0,c.jsxs)(`main`,{role:`main`,style:{display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`center`,minHeight:`100vh`,gap:`2rem`},children:[(0,c.jsx)(i,{t,size:`xl`,animated:!0}),(0,c.jsx)(`button`,{onClick:d,className:a.primary.base,children:t(`begin`)})]})}export{u as default};
|
|
2
|
+
//# sourceMappingURL=page-BD2asFxe.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-BD2asFxe.js","names":[],"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"],"mappings":"sPAKM,EAAqB,IAE3B,SAAwB,GAAO,CAC7B,GAAM,CAAE,EAAG,GAAO,EAAe,EAC3B,EAAK,GAAc,EAAG,QAAQ,GAAG,EACjC,EAAS,EAAU,EACnB,GAAA,EAAW,EAAA,OAAA,CAA6C,IAAI,EAE5D,MAAsB,CACtB,EAAS,SAAS,aAAa,EAAS,OAAO,EACnD,EAAO,KAAK,gBAAgB,CAC9B,EAOA,OALA,EAAA,EAAA,UAAA,MACE,EAAS,QAAU,WAAW,EAAe,CAAkB,MAClD,CAAM,EAAS,SAAS,aAAa,EAAS,OAAO,CAAG,GACpE,CAAC,CAAC,GAGH,EAAA,EAAA,KAAA,CAAC,OAAD,CACE,KAAK,OACL,MAAO,CACL,QAAS,OACT,cAAe,SACf,WAAY,SACZ,eAAgB,SAChB,UAAW,QACX,IAAK,MACP,EATF,SAAA,EAWE,EAAA,EAAA,IAAA,CAAC,EAAD,CAAoB,EAAG,KAAK,KAAK,SAAU,EAAO,CAAA,GAClD,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,QAAS,EAAe,UAAW,EAAa,QAAQ,KAC7D,SAAA,EAAE,OAAO,CACJ,CAAA,CACJ,GAEV"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{i as r,t as i}from"./vendor-vK2W55bZ.js";import{$ as a,At as o,I as s,K as c,Q as l,Y as u,_ as d,et as f,j as p,jt as m,s as h}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{i as r,t as i}from"./vendor-vK2W55bZ.js";import{$ as a,At as o,I as s,K as c,Q as l,Y as u,_ as d,et as f,j as p,jt as m,s as h}from"./index-Ojc52FmW.js";import{t as g}from"./ToolbarPanels-DMK1LAo0.js";import{i as _,n as v}from"./routing-CjmlBUw_.js";var y=e(t()),b=i();function x(){let{t:e}=n(),t=(t,n)=>e(`Compose.${t}`,n),i=v(),x=_(),[S]=r(),C=o(),w=u(C.activeKbId$),T=u(C.activeSession$),E=u(T?.user$),D=u(T?.token$),O=!!E,k=w!=null&&T==null,{showError:A}=m();(0,y.useEffect)(()=>{k||O||x.push(`/`)},[k,O,x]);let j=a(),M=l(T??void 0,e=>s(e,j,{mode:S?.get(`mode`)??void 0,token:S?.get(`token`)??void 0},D??void 0)),N=u(M?.browse.activePanel$)??null,P=u(M?.mode$)??`new`,F=u(M?.loading$)??!0,I=u(M?.cloneData$)??null,L=u(M?.entityTypes.value$)??[],R=u(M?.uploadProgress$)??null,{resolvedTheme:z}=f(),{hoverDelayMs:B}=c();return k||F?(0,b.jsx)(h,{message:k?`Checking authentication...`:`Loading cloned resource...`}):O?(0,b.jsx)(d,{mode:P,cloneData:I,availableEntityTypes:L,initialLocale:i,theme:z,hoverDelayMs:B,activePanel:N,onSaveResource:async e=>{if(M)try{let t=await M.save(e);x.push(`/know/resource/${encodeURIComponent(t)}`)}catch(e){let t=e instanceof Error?e.message:`Failed to save resource. Please try again.`;throw A(t),e}},onCancel:()=>x.push(`/know/discover`),uploadProgress:R,translations:{title:t(`title`),titleEditClone:t(`titleEditClone`),subtitleClone:t(`subtitleClone`),resourceName:t(`resourceName`),resourceNamePlaceholder:t(`resourceNamePlaceholder`),entityTypes:t(`entityTypes`),language:t(`language`),contentSource:t(`contentSource`),uploadFile:t(`uploadFile`),uploadFileDescription:t(`uploadFileDescription`),writeContent:t(`writeContent`),writeContentDescription:t(`writeContentDescription`),dropFileOrClick:t(`dropFileOrClick`),supportedFormats:t(`supportedFormats`),mediaType:t(`mediaType`),autoDetected:t(`autoDetected`),format:t(`format`),content:t(`content`),resourceContent:t(`resourceContent`),encoding:t(`encoding`),archiveOriginal:t(`archiveOriginal`),cancel:t(`cancel`),saving:t(`saving`),creating:t(`creating`),saveClonedResource:t(`saveClonedResource`),createResource:t(`createResource`)},ToolbarPanels:g,Toolbar:p}):null}function S(){let{t:e}=n();return(0,b.jsx)(y.Suspense,{fallback:(0,b.jsx)(h,{message:((t,n)=>e(`Compose.${t}`,n))(`loading`)}),children:(0,b.jsx)(x,{})})}export{S as default};
|
|
2
|
+
//# sourceMappingURL=page-BJnX_yAg.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-BJnX_yAg.js","names":[],"sources":["../../src/app/[locale]/know/compose/page.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect, Suspense } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useLocale } from '@/i18n/routing';\nimport { useRouter } from '@/i18n/routing';\nimport { useSearchParams } from 'react-router';\nimport {\n useSemiont,\n useToast,\n useTheme,\n useShellStateUnit,\n useObservable,\n useHoverDelay,\n useSessionStateUnit,\n Toolbar,\n ComposeLoadingState,\n ResourceComposePage,\n} from '@semiont/react-ui';\nimport type { SaveResourceParams as UISaveResourceParams } from '@semiont/react-ui';\nimport { createComposePageStateUnit } from '@semiont/react-ui';\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 } = useToast();\n\n useEffect(() => {\n if (authLoading) return;\n if (!isAuthenticated) router.push('/');\n }, [authLoading, isAuthenticated, router]);\n\n const browseStateUnit = useShellStateUnit();\n\n const stateUnit = useSessionStateUnit(session ?? undefined, (s) => createComposePageStateUnit(s, browseStateUnit, {\n mode: searchParams?.get('mode') ?? undefined,\n token: searchParams?.get('token') ?? undefined,\n }, authToken ?? undefined));\n\n const activePanel = useObservable(stateUnit?.browse.activePanel$) ?? null;\n const pageMode = useObservable(stateUnit?.mode$) ?? 'new';\n const isLoading = useObservable(stateUnit?.loading$) ?? true;\n const cloneData = useObservable(stateUnit?.cloneData$) ?? null;\n const availableEntityTypes = useObservable(stateUnit?.entityTypes.value$) ?? [];\n const uploadProgress = useObservable(stateUnit?.uploadProgress$) ?? null;\n\n const { resolvedTheme } = useTheme();\n const { hoverDelayMs } = useHoverDelay();\n\n const handleSaveResource = async (params: UISaveResourceParams) => {\n if (!stateUnit) return;\n try {\n const newResourceId = await stateUnit.save(params);\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 availableEntityTypes={availableEntityTypes}\n initialLocale={locale}\n theme={resolvedTheme}\n hoverDelayMs={hoverDelayMs}\n activePanel={activePanel}\n onSaveResource={handleSaveResource}\n onCancel={() => router.push('/know/discover')}\n uploadProgress={uploadProgress}\n translations={{\n title: t('title'),\n titleEditClone: t('titleEditClone'),\n subtitleClone: t('subtitleClone'),\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 saveClonedResource: t('saveClonedResource'),\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"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{At as i,M as a,Q as o,V as s,Y as c,jt as l,p as u}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{At as i,M as a,Q as o,V as s,Y as c,jt as l,p as u}from"./index-Ojc52FmW.js";import{i as d,t as f}from"./routing-CjmlBUw_.js";var p=e(t()),m=r();function h(){let{t:e}=n(),t=(t,n)=>e(`AuthWelcome.${t}`,n),r=i(),a=c(r.activeSession$)??null;return a?(0,m.jsx)(g,{session:a,t},a.id):(0,m.jsx)(_,{status:`loading`,t})}function g({session:e,t}){let n=i(),r=c(e.user$)??null,a=e.kb,u=!!r,f=e=>{n.signOut(e)},h=d(),[g,v]=(0,p.useState)(!1),y=l(),b=o(e,s),x=c(b?.userData$),S=c(b?.isProcessing$)??!1;(0,p.useEffect)(()=>{if(!u){h.push(`/auth/connect`);return}if(x?.termsAcceptedAt){h.push(`/`);return}},[u,h,x]);let C=async e=>{if(!e){a&&f(a.id),h.push(`/`);return}if(b)try{await b.acceptTerms(),v(!0),setTimeout(()=>{h.push(`/`)},1e3)}catch(e){console.error(`Terms acceptance error:`,e),y.showError(t(`errorAcceptingTerms`))}},w=g?`accepted`:`form`,T=r?.name?.split(` `)[0]??``;return(0,m.jsx)(_,{t,userName:T,termsAcceptedAt:x?.termsAcceptedAt??null,status:w,isProcessing:S,onAccept:()=>C(!0),onDecline:()=>C(!1)})}function _({t:e,status:t,userName:n=``,termsAcceptedAt:r=null,isProcessing:i=!1,onAccept:o=()=>{},onDecline:s=()=>{}}){return(0,m.jsx)(a,{userName:n,termsAcceptedAt:r,isNewUser:!r,status:t,isProcessing:i,onAccept:o,onDecline:s,translations:{loading:e(`loading`),welcomeTitle:e(`welcomeTitle`),thanksForAccepting:e(`thanksForAccepting`),welcomeUser:e(`welcomeUser`,{firstName:n}),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:u,Link:f})}export{h as default};
|
|
2
|
+
//# sourceMappingURL=page-BXynYvhE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-BXynYvhE.js","names":[],"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 { 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 { createWelcomeStateUnit } from '@semiont/react-ui';\nimport { useSessionStateUnit } from '@semiont/react-ui';\nimport type { SemiontSession } from '@semiont/sdk';\n\n/**\n * The session gate is API shape now (SESSION-TYPED-FACTORIES.md):\n * `createWelcomeStateUnit` takes the SESSION, and `useSessionStateUnit`\n * constructs only when one exists and rebuilds (dispose-first) when it is\n * replaced — a KB switch or re-auth can no longer leave this page holding a\n * disposed client. This route is where that crashed in production: the user\n * lands here immediately after connecting, mid-activation.\n * See .plans/bugs/resource-page-frozen-on-disposed-client-after-kb-switch.md\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 session = useObservable(semiont.activeSession$) ?? null;\n\n if (!session) {\n return <WelcomeShell status=\"loading\" t={t} />;\n }\n return <WelcomeInner key={session.id} session={session} t={t} />;\n}\n\nfunction WelcomeInner({\n session,\n t,\n}: {\n session: SemiontSession;\n t: (k: string, p?: Record<string, unknown>) => string;\n}) {\n const semiont = useSemiont();\n const user = useObservable(session.user$) ?? null;\n const activeKnowledgeBase = session.kb;\n const isAuthenticated = !!user;\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 stateUnit = useSessionStateUnit(session, createWelcomeStateUnit);\n\n const userData = useObservable(stateUnit?.userData$);\n const isProcessing = useObservable(stateUnit?.isProcessing$) ?? false;\n\n // Redirect if not authenticated or if terms already accepted\n useEffect(() => {\n if (!isAuthenticated) {\n router.push('/auth/connect');\n return;\n }\n\n if (userData?.termsAcceptedAt) {\n router.push('/');\n return;\n }\n }, [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 if (!stateUnit) return;\n try {\n await stateUnit.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 = termsAccepted ? 'accepted' : 'form';\n const firstName = user?.name?.split(' ')[0] ?? '';\n\n return (\n <WelcomeShell\n t={t}\n userName={firstName}\n termsAcceptedAt={userData?.termsAcceptedAt ?? null}\n status={pageStatus}\n isProcessing={isProcessing}\n onAccept={() => handleTermsAcceptance(true)}\n onDecline={() => handleTermsAcceptance(false)}\n />\n );\n}\n\n/**\n * The presentational half: every translation the WelcomePage needs, in one\n * place, so the pre-session loading render and the real one cannot drift.\n */\nfunction WelcomeShell({\n t,\n status,\n userName = '',\n termsAcceptedAt = null,\n isProcessing = false,\n onAccept = () => {},\n onDecline = () => {},\n}: {\n t: (k: string, p?: Record<string, unknown>) => string;\n status: 'loading' | 'accepted' | 'form';\n userName?: string;\n termsAcceptedAt?: string | null;\n isProcessing?: boolean;\n onAccept?: () => void;\n onDecline?: () => void;\n}) {\n return (\n <WelcomePage\n userName={userName}\n termsAcceptedAt={termsAcceptedAt}\n isNewUser={!termsAcceptedAt}\n status={status}\n isProcessing={isProcessing}\n onAccept={onAccept}\n onDecline={onDecline}\n translations={{\n loading: t('loading'),\n welcomeTitle: t('welcomeTitle'),\n thanksForAccepting: t('thanksForAccepting'),\n welcomeUser: t('welcomeUser', { firstName: userName }),\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"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t}from"./i18n-CywLsdxn.js";import{i as n}from"./routing-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t}from"./i18n-CywLsdxn.js";import{i as n}from"./routing-CjmlBUw_.js";var r=e(t());function i(){let e=n();return(0,r.useEffect)(()=>{e.replace(`/know/discover`)},[e]),null}export{i as default};
|
|
2
|
+
//# sourceMappingURL=page-BgzC_t5l.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-BgzC_t5l.js","names":[],"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"],"mappings":"iJAOA,SAAwB,GAAc,CACpC,IAAM,EAAS,EAAU,EAMzB,OAJA,EAAA,EAAA,UAAA,KAAgB,CACd,EAAO,QAAQ,gBAAgB,CACjC,EAAG,CAAC,CAAM,CAAC,EAEJ,IACT"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{p as i}from"./index-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{p as i}from"./index-Ojc52FmW.js";import{t as a}from"./KeyboardShortcutsContext-Bb3ZQ4QP.js";import{t as o}from"./CookiePreferences--yB7lQIF.js";import{n as s,t as c}from"./routing-DMkxvd2j.js";var l=e(t()),u=r();function d(){let{t:e}=n(),t=(t,n)=>e(`Privacy.${t}`,n),{t:r}=n(),d=(e,t)=>r(`Footer.${e}`,t),{t:f}=n(),p=(e,t)=>f(`Navigation.${e}`,t),{t:m}=n(),h=(e,t)=>m(`Home.${e}`,t),g=(0,l.useContext)(a);return(0,u.jsx)(i,{Link:c,routes:s,t:d,tNav:p,tHome:h,CookiePreferences:o,...g?.openKeyboardHelp&&{onOpenKeyboardHelp:g.openKeyboardHelp},className:`semiont-static-page`,children:(0,u.jsx)(`div`,{className:`semiont-static-container`,children:(0,u.jsxs)(`div`,{className:`semiont-static-content`,children:[(0,u.jsx)(`header`,{className:`semiont-static-header`,children:(0,u.jsx)(`h1`,{className:`semiont-static-title`,children:t(`pageTitle`)})}),(0,u.jsxs)(`article`,{className:`semiont-static-article`,children:[(0,u.jsxs)(`section`,{children:[(0,u.jsx)(`h2`,{children:t(`introTitle`)}),t(`intro`).split(`
|
|
2
2
|
|
|
3
3
|
`).map((e,t)=>(0,u.jsx)(`p`,{children:e},t))]}),(0,u.jsxs)(`section`,{children:[(0,u.jsx)(`h2`,{children:t(`infoCollectTitle`)}),(0,u.jsx)(`h3`,{children:t(`personalInfoTitle`)}),(0,u.jsx)(`ul`,{children:t(`personalInfo`).split(`
|
|
4
4
|
`).map((e,t)=>(0,u.jsx)(`li`,{children:e},t))}),(0,u.jsx)(`h3`,{children:t(`autoCollectTitle`)}),(0,u.jsx)(`ul`,{children:t(`autoCollect`).split(`
|
|
@@ -17,4 +17,4 @@ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i
|
|
|
17
17
|
|
|
18
18
|
`).map((e,t)=>t===0?(0,u.jsx)(`p`,{children:e},t):(0,u.jsx)(`ul`,{children:e.split(`
|
|
19
19
|
`).map((e,t)=>(0,u.jsx)(`li`,{children:e},t))},t))]}),(0,u.jsxs)(`section`,{children:[(0,u.jsx)(`h2`,{children:t(`dataRetentionTitle`)}),(0,u.jsx)(`p`,{children:t(`dataRetention`)})]}),(0,u.jsxs)(`section`,{children:[(0,u.jsx)(`h2`,{children:t(`internationalTransfersTitle`)}),(0,u.jsx)(`p`,{children:t(`internationalTransfers`)})]}),(0,u.jsxs)(`section`,{children:[(0,u.jsx)(`h2`,{children:t(`contactTitle`)}),(0,u.jsx)(`p`,{children:t(`contactIntro`)}),(0,u.jsx)(`div`,{className:`semiont-static-info-box`,children:(0,u.jsxs)(`p`,{children:[(0,u.jsx)(`strong`,{children:t(`contactEmail`)}),` privacy@semiont.com`,(0,u.jsx)(`br`,{}),(0,u.jsx)(`strong`,{children:t(`contactAddress`)}),` [Your Company Address]`]})})]}),(0,u.jsxs)(`section`,{children:[(0,u.jsx)(`h2`,{children:t(`updatesTitle`)}),(0,u.jsx)(`p`,{children:t(`updates`)}),(0,u.jsx)(`footer`,{className:`semiont-static-footer`,children:(0,u.jsx)(`p`,{children:(0,u.jsx)(`strong`,{children:t(`lastUpdated`,{date:new Date().toLocaleDateString()})})})})]})]})]})})})}export{d as default};
|
|
20
|
-
//# sourceMappingURL=page-
|
|
20
|
+
//# sourceMappingURL=page-BuW3aSm_.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-FX-SWBET.js","names":[],"sources":["../../src/app/[locale]/privacy/page.tsx"],"sourcesContent":["import { 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}"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"page-BuW3aSm_.js","names":[],"sources":["../../src/app/[locale]/privacy/page.tsx"],"sourcesContent":["import { 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}"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./i18n-CywLsdxn.js";import{t}from"./vendor-vK2W55bZ.js";import{$ as n,Y as r,et as i,j as a,m as o}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{t as e}from"./i18n-CywLsdxn.js";import{t}from"./vendor-vK2W55bZ.js";import{$ as n,Y as r,et as i,j as a,m as o}from"./index-Ojc52FmW.js";import{t as s}from"./ToolbarPanels-DMK1LAo0.js";var c=t();function l(){let{t}=e(),l=(e,n)=>t(`ModerateRecent.${e}`,n),u=n(),d=r(u.activePanel$)??null,{theme:f}=i();return(0,c.jsx)(o,{hasDocuments:!1,isLoading:!1,theme:f,activePanel:d,translations:{pageTitle:l(`pageTitle`),pageDescription:l(`pageDescription`),sectionTitle:l(`sectionTitle`),sectionDescription:l(`sectionDescription`),noDocuments:l(`noDocuments`),activityWillAppear:l(`activityWillAppear`),loading:l(`loading`)},ToolbarPanels:s,Toolbar:a})}export{l as default};
|
|
2
|
+
//# sourceMappingURL=page-C0dhB8e1.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-C0dhB8e1.js","names":[],"sources":["../../src/app/[locale]/moderate/recent/page.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next';\nimport { Toolbar } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { useTheme, useShellStateUnit, useObservable } 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 browseStateUnit = useShellStateUnit();\n const activePanel = useObservable(browseStateUnit.activePanel$) ?? null;\n const { theme } = useTheme();\n\n\n\n return (\n <RecentDocumentsPage\n hasDocuments={false}\n isLoading={false}\n theme={theme}\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"],"mappings":"0MASA,SAAwB,GAA6B,CACnD,GAAM,CAAK,GAAO,EAAe,EAC3B,GAAK,EAAW,IAAgC,EAAG,kBAAkB,IAAK,CAAQ,EAGlF,EAAkB,EAAkB,EACpC,EAAc,EAAc,EAAgB,YAAY,GAAK,KAC7D,CAAE,SAAU,EAAS,EAI3B,OACE,EAAA,EAAA,IAAA,CAAC,EAAD,CACE,aAAc,GACd,UAAW,GACJ,QACM,cACb,aAAc,CACZ,UAAW,EAAE,WAAW,EACxB,gBAAiB,EAAE,iBAAiB,EACpC,aAAc,EAAE,cAAc,EAC9B,mBAAoB,EAAE,oBAAoB,EAC1C,YAAa,EAAE,aAAa,EAC5B,mBAAoB,EAAE,oBAAoB,EAC1C,QAAS,EAAE,SAAS,CACtB,EACe,gBACN,SACV,CAAA,CAEL"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{i}from"./routing-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{i}from"./routing-CjmlBUw_.js";var a=e(t()),o=r();function s(){let{t:e}=n(),t=(t,n)=>e(`Moderation.${t}`,n),r=i();return(0,a.useEffect)(()=>{r.replace(`/moderate/recent`)},[r]),(0,o.jsx)(`div`,{className:`flex items-center justify-center py-20`,children:(0,o.jsx)(`p`,{className:`text-gray-600 dark:text-gray-300`,children:t(`redirecting`)})})}export{s as default};
|
|
2
|
+
//# sourceMappingURL=page-C6IDcAg_.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-C6IDcAg_.js","names":[],"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}"],"mappings":"kMAIA,SAAwB,GAAe,CACrC,GAAM,CAAE,EAAG,GAAO,EAAe,EAC3B,GAAK,EAAW,IAAgC,EAAG,cAAc,IAAK,CAAQ,EAC9E,EAAS,EAAU,EAOzB,OALA,EAAA,EAAA,UAAA,KAAgB,CAEd,EAAO,QAAQ,kBAAkB,CACnC,EAAG,CAAC,CAAM,CAAC,GAGT,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAU,yCACb,UAAA,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,mCAAoC,SAAA,EAAE,aAAa,CAAK,CAAA,CAClE,CAAA,CAET"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{At as i,Y as a}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{t as r}from"./vendor-vK2W55bZ.js";import{At as i,Y as a}from"./index-Ojc52FmW.js";import{i as o}from"./routing-CjmlBUw_.js";var s=e(t()),c=r();function l(){let{t:e}=n(),t=(t,n)=>e(`Sidebar.${t}`,n),r=o(),l=i(),u=a(l.activeSession$)??null,d=a(l.sessionActivating$)??!1,f=a(l.lastViewedResource$)??null,p=u!==null||!d,m=(0,s.useRef)(!1);return(0,s.useEffect)(()=>{!p||m.current||(m.current=!0,r.replace(f?`/know/resource/${encodeURIComponent(f)}`:`/know/discover`))},[p,f,r]),(0,c.jsx)(`div`,{className:`flex items-center justify-center py-20`,children:(0,c.jsx)(`p`,{className:`text-gray-600 dark:text-gray-300`,children:t(p?`redirecting`:`loading`)})})}export{l as default};
|
|
2
|
+
//# sourceMappingURL=page-CB1Zkhf_.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-CB1Zkhf_.js","names":[],"sources":["../../src/app/[locale]/know/page.tsx"],"sourcesContent":["import { useEffect, useRef } from 'react';\nimport { useRouter } from '@/i18n/routing';\nimport { useTranslation } from 'react-i18next';\nimport { useSemiont, useObservable } from '@semiont/react-ui';\n\n/**\n * The /know landing route: resume where the user left off in the ACTIVE\n * knowledge base, or send them to discover.\n *\n * \"Where was I\" is per-KB state, read from `lastViewedResource$` — a\n * projection of the active, connected KB. A global record would redirect\n * into the PREVIOUSLY active KB's resource after a switch: an id the new\n * gateway has never heard of, so a guaranteed 404.\n * See .plans/bugs/resource-page-frozen-on-disposed-client-after-kb-switch.md\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 semiont = useSemiont();\n\n const session = useObservable(semiont.activeSession$) ?? null;\n const activating = useObservable(semiont.sessionActivating$) ?? false;\n const lastViewed = useObservable(semiont.lastViewedResource$) ?? null;\n\n // The projection only carries an answer once a session exists, so a\n // redirect decided during activation would send every cold load to\n // discover no matter where the user actually was. Wait for a session, or\n // for activation to conclude without one (nothing connected → discover).\n const resolved = session !== null || !activating;\n\n const redirected = useRef(false);\n useEffect(() => {\n if (!resolved || redirected.current) return;\n redirected.current = true;\n router.replace(\n lastViewed ? `/know/resource/${encodeURIComponent(lastViewed)}` : '/know/discover',\n );\n }, [resolved, lastViewed, 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(resolved ? 'redirecting' : 'loading')}</p>\n </div>\n );\n}\n"],"mappings":"uPAeA,SAAwB,GAAgB,CACtC,GAAM,CAAE,EAAG,GAAO,EAAe,EAC3B,GAAK,EAAW,IAAgC,EAAG,WAAW,IAAK,CAAQ,EAC3E,EAAS,EAAU,EACnB,EAAU,EAAW,EAErB,EAAU,EAAc,EAAQ,cAAc,GAAK,KACnD,EAAa,EAAc,EAAQ,kBAAkB,GAAK,GAC1D,EAAa,EAAc,EAAQ,mBAAmB,GAAK,KAM3D,EAAW,IAAY,MAAQ,CAAC,EAEhC,GAAA,EAAa,EAAA,OAAA,CAAO,EAAK,EAS/B,OARA,EAAA,EAAA,UAAA,KAAgB,CACV,CAAC,GAAY,EAAW,UAC5B,EAAW,QAAU,GACrB,EAAO,QACL,EAAa,kBAAkB,mBAAmB,CAAU,IAAM,gBACpE,EACF,EAAG,CAAC,EAAU,EAAY,CAAM,CAAC,GAG/B,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAU,yCACb,UAAA,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,mCAAoC,SAAA,EAAE,EAAW,cAAgB,SAAS,CAAK,CAAA,CACzF,CAAA,CAET"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{o as e,t}from"./vendor-vK2W55bZ.js";import{n}from"./routing-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{o as e,t}from"./vendor-vK2W55bZ.js";import{n}from"./routing-CjmlBUw_.js";var r=t();function i(){let t=n();return(0,r.jsx)(e,{to:`/${t}/admin/users`,replace:!0})}export{i as default};
|
|
2
|
+
//# sourceMappingURL=page-COYp-fvx.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-COYp-fvx.js","names":[],"sources":["../../src/app/[locale]/admin/page.tsx"],"sourcesContent":["import { Navigate } from 'react-router';\nimport { useLocale } from '@/i18n/routing';\n\nexport default function AdminPage() {\n const locale = useLocale();\n return <Navigate to={`/${locale}/admin/users`} replace />;\n}\n"],"mappings":"0FAGA,SAAwB,GAAY,CAClC,IAAM,EAAS,EAAU,EACzB,OAAO,EAAA,EAAA,IAAA,CAAC,EAAD,CAAU,GAAI,IAAI,EAAO,cAAe,QAAA,EAAS,CAAA,CAC1D"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{i as r,t as i}from"./vendor-vK2W55bZ.js";import{T as a,p as o}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{i as r,t as i}from"./vendor-vK2W55bZ.js";import{T as a,p as o}from"./index-Ojc52FmW.js";import{t as s}from"./KeyboardShortcutsContext-Bb3ZQ4QP.js";import{t as c}from"./CookiePreferences--yB7lQIF.js";import{i as l,t as u}from"./routing-CjmlBUw_.js";import{n as d,t as f}from"./routing-DMkxvd2j.js";var p=e(t()),m=i();function h(){let{t:e}=n(),t=(t,n)=>e(`AuthSignUp.${t}`,n),i=(t,n)=>e(`Footer.${t}`,n),h=(t,n)=>e(`Navigation.${t}`,n),g=(t,n)=>e(`Home.${t}`,n),[_]=r(),v=l(),y=(0,p.useContext)(s),b=_.get(`callbackUrl`)??`/auth/welcome`,x=async()=>{v.push(`/auth/connect?callbackUrl=${encodeURIComponent(b)}`)},S={pageTitle:t(`pageTitle`),signUpPrompt:t(`signUpPrompt`),signUpWithGoogle:t(`signUpWithGoogle`),creatingAccount:t(`creatingAccount`),approvedDomainsInfo:t(`approvedDomainsInfo`),termsAgreement:t(`termsAgreement`),alreadyHaveAccount:t(`alreadyHaveAccount`),tagline:g(`tagline`),backToHome:t(`backToHome`)};return(0,m.jsx)(o,{Link:f,routes:d,t:i,tNav:h,tHome:g,CookiePreferences:c,...y?.openKeyboardHelp&&{onOpenKeyboardHelp:y.openKeyboardHelp},className:`semiont-page-layout--auth`,showAuthLinks:!1,children:(0,m.jsx)(a,{onSignUp:x,Link:u,translations:S})})}function g(){return(0,m.jsx)(h,{})}export{g as default};
|
|
2
|
+
//# sourceMappingURL=page-CW0mYluf.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-CW0mYluf.js","names":[],"sources":["../../src/app/[locale]/auth/signup/page.tsx"],"sourcesContent":["import { useContext } from 'react';\nimport { useSearchParams } from 'react-router';\nimport { useTranslation } from 'react-i18next';\nimport { useRouter } from '@/i18n/routing';\nimport { PageLayout, SignUpForm } 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\nfunction SignUpContent() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`AuthSignUp.${k}`, p as any) as string;\n const tFooter = (k: string, p?: Record<string, unknown>) => _t(`Footer.${k}`, p as any) as string;\n const tNav = (k: string, p?: Record<string, unknown>) => _t(`Navigation.${k}`, p as any) as string;\n const tHome = (k: string, p?: Record<string, unknown>) => _t(`Home.${k}`, p as any) as string;\n const [searchParams] = useSearchParams();\n const router = useRouter();\n const keyboardContext = useContext(KeyboardShortcutsContext);\n\n const callbackUrl = searchParams.get('callbackUrl') ?? '/auth/welcome';\n\n const handleSignUp = async () => {\n router.push(`/auth/connect?callbackUrl=${encodeURIComponent(callbackUrl)}`);\n };\n\n const translations = {\n pageTitle: t('pageTitle'),\n signUpPrompt: t('signUpPrompt'),\n signUpWithGoogle: t('signUpWithGoogle'),\n creatingAccount: t('creatingAccount'),\n approvedDomainsInfo: t('approvedDomainsInfo'),\n termsAgreement: t('termsAgreement'),\n alreadyHaveAccount: t('alreadyHaveAccount'),\n tagline: tHome('tagline'),\n backToHome: t('backToHome'),\n };\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-page-layout--auth\"\n showAuthLinks={false}\n >\n <SignUpForm onSignUp={handleSignUp} Link={Link} translations={translations} />\n </PageLayout>\n );\n}\n\nexport default function SignUp() {\n return <SignUpContent />;\n}\n"],"mappings":"oaAUA,SAAS,GAAgB,CACvB,GAAM,CAAE,EAAG,GAAO,EAAe,EAC3B,GAAK,EAAW,IAAgC,EAAG,cAAc,IAAK,CAAQ,EAC9E,GAAW,EAAW,IAAgC,EAAG,UAAU,IAAK,CAAQ,EAChF,GAAQ,EAAW,IAAgC,EAAG,cAAc,IAAK,CAAQ,EACjF,GAAS,EAAW,IAAgC,EAAG,QAAQ,IAAK,CAAQ,EAC5E,CAAC,GAAgB,EAAgB,EACjC,EAAS,EAAU,EACnB,GAAA,EAAkB,EAAA,WAAA,CAAW,CAAwB,EAErD,EAAc,EAAa,IAAI,aAAa,GAAK,gBAEjD,EAAe,SAAY,CAC/B,EAAO,KAAK,6BAA6B,mBAAmB,CAAW,GAAG,CAC5E,EAEM,EAAe,CACnB,UAAW,EAAE,WAAW,EACxB,aAAc,EAAE,cAAc,EAC9B,iBAAkB,EAAE,kBAAkB,EACtC,gBAAiB,EAAE,iBAAiB,EACpC,oBAAqB,EAAE,qBAAqB,EAC5C,eAAgB,EAAE,gBAAgB,EAClC,mBAAoB,EAAE,oBAAoB,EAC1C,QAAS,EAAM,SAAS,EACxB,WAAY,EAAE,YAAY,CAC5B,EAEA,OACE,EAAA,EAAA,IAAA,CAAC,EAAD,CACE,KAAM,EACE,SACR,EAAG,EACG,OACC,QACY,oBACnB,GAAK,GAAiB,kBAAoB,CAAE,mBAAoB,EAAgB,gBAAiB,EACjG,UAAU,4BACV,cAAe,GAEf,UAAA,EAAA,EAAA,IAAA,CAAC,EAAD,CAAY,SAAU,EAAoB,OAAoB,cAAe,CAAA,CACnE,CAAA,CAEhB,CAEA,SAAwB,GAAS,CAC/B,OAAO,EAAA,EAAA,IAAA,CAAC,EAAD,CAAgB,CAAA,CACzB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./i18n-CywLsdxn.js";import{t}from"./vendor-vK2W55bZ.js";import{$ as n,At as r,Q as i,R as a,Y as o,c as s,et as c,j as l}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{t as e}from"./i18n-CywLsdxn.js";import{t}from"./vendor-vK2W55bZ.js";import{$ as n,At as r,Q as i,R as a,Y as o,c as s,et as c,j as l}from"./index-Ojc52FmW.js";import{t as u}from"./ToolbarPanels-DMK1LAo0.js";var d=t();function f(){let{t}=e(),f=(e,n)=>t(`ModerateEntityTags.${e}`,n),p=o(r().activeSession$)??void 0,m=n(),h=i(p,e=>a(e,m)),g=o(h?.browse.activePanel$)??null,_=o(h?.entityTypes.value$)??[],v=o(h?.entityTypes.loading$)??!0,y=o(h?.entityTypes.error$)??null,b=o(h?.newTag$)??``,x=o(h?.error$)??``,S=o(h?.isAdding$)??!1,{theme:C}=c();return y?(0,d.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-3 py-20`,children:[(0,d.jsx)(`p`,{className:`text-gray-600 dark:text-gray-300`,children:f(`loadFailed`)}),(0,d.jsx)(`button`,{type:`button`,onClick:h?.entityTypes.retry,className:`semiont-button`,"data-variant":`secondary`,children:f(`retry`)})]}):v?(0,d.jsx)(`div`,{className:`flex items-center justify-center py-20`,children:(0,d.jsx)(`p`,{className:`text-gray-600 dark:text-gray-300`,children:f(`loading`)})}):h?(0,d.jsx)(s,{entityTypes:_,isLoading:v,error:x,newTag:b,onNewTagChange:h?.setNewTag,onAddTag:h?.addTag,isAddingTag:S,theme:C,activePanel:g,translations:{pageTitle:f(`pageTitle`),pageDescription:f(`pageDescription`),sectionTitle:f(`sectionTitle`),sectionDescription:f(`sectionDescription`),inputPlaceholder:f(`inputPlaceholder`),addTag:f(`addTag`),adding:f(`adding`)},ToolbarPanels:u,Toolbar:l}):null}export{f as default};
|
|
2
|
+
//# sourceMappingURL=page-CZj-I3Ya.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-CZj-I3Ya.js","names":[],"sources":["../../src/app/[locale]/moderate/entity-tags/page.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next';\nimport {\n Toolbar,\n useTheme,\n useShellStateUnit,\n useObservable,\n useSemiont,\n useSessionStateUnit,\n EntityTagsPage,\n} from '@semiont/react-ui';\nimport { createEntityTagsStateUnit } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\n\nexport default function EntityTagsPageWrapper() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`ModerateEntityTags.${k}`, p as any) as string;\n const session = useObservable(useSemiont().activeSession$) ?? undefined;\n\n const browseStateUnit = useShellStateUnit();\n const stateUnit = useSessionStateUnit(session, (s) => createEntityTagsStateUnit(s, browseStateUnit));\n\n const activePanel = useObservable(stateUnit?.browse.activePanel$) ?? null;\n const entityTypes = useObservable(stateUnit?.entityTypes.value$) ?? [];\n const isLoading = useObservable(stateUnit?.entityTypes.loading$) ?? true;\n // A terminally failed load is not still loading. Distinct from `error`\n // below, which is the ADD-tag error. See .plans/PANEL-FAILURE-STATES.md\n const loadError = useObservable(stateUnit?.entityTypes.error$) ?? null;\n const newTag = useObservable(stateUnit?.newTag$) ?? '';\n const error = useObservable(stateUnit?.error$) ?? '';\n const isAddingTag = useObservable(stateUnit?.isAdding$) ?? false;\n\n const { theme } = useTheme();\n\n if (loadError) {\n return (\n <div className=\"flex flex-col items-center justify-center gap-3 py-20\">\n <p className=\"text-gray-600 dark:text-gray-300\">{t('loadFailed')}</p>\n <button type=\"button\" onClick={stateUnit?.entityTypes.retry} className=\"semiont-button\" data-variant=\"secondary\">\n {t('retry')}\n </button>\n </div>\n );\n }\n\n if (isLoading) {\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 if (!stateUnit) return null;\n\n return (\n <EntityTagsPage\n entityTypes={entityTypes}\n isLoading={isLoading}\n error={error}\n newTag={newTag}\n onNewTagChange={stateUnit?.setNewTag}\n onAddTag={stateUnit?.addTag}\n isAddingTag={isAddingTag}\n theme={theme}\n activePanel={activePanel}\n translations={{\n pageTitle: t('pageTitle'),\n pageDescription: t('pageDescription'),\n sectionTitle: t('sectionTitle'),\n sectionDescription: t('sectionDescription'),\n inputPlaceholder: t('inputPlaceholder'),\n addTag: t('addTag'),\n adding: t('adding'),\n }}\n ToolbarPanels={ToolbarPanels}\n Toolbar={Toolbar}\n />\n );\n}\n"],"mappings":"gOAaA,SAAwB,GAAwB,CAC9C,GAAM,CAAK,GAAO,EAAe,EAC3B,GAAK,EAAW,IAAgC,EAAG,sBAAsB,IAAK,CAAQ,EACtF,EAAU,EAAc,EAAW,CAAC,CAAC,cAAc,GAAK,IAAA,GAExD,EAAkB,EAAkB,EACpC,EAAY,EAAoB,EAAU,GAAM,EAA0B,EAAG,CAAe,CAAC,EAE7F,EAAc,EAAc,GAAW,OAAO,YAAY,GAAK,KAC/D,EAAc,EAAc,GAAW,YAAY,MAAM,GAAK,CAAC,EAC/D,EAAY,EAAc,GAAW,YAAY,QAAQ,GAAK,GAG9D,EAAY,EAAc,GAAW,YAAY,MAAM,GAAK,KAC5D,EAAS,EAAc,GAAW,OAAO,GAAK,GAC9C,EAAQ,EAAc,GAAW,MAAM,GAAK,GAC5C,EAAc,EAAc,GAAW,SAAS,GAAK,GAErD,CAAE,SAAU,EAAS,EAuB3B,OArBI,GAEA,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wDAAf,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,mCAAoC,SAAA,EAAE,YAAY,CAAK,CAAA,GACpE,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,KAAK,SAAS,QAAS,GAAW,YAAY,MAAO,UAAU,iBAAiB,eAAa,YAClG,SAAA,EAAE,OAAO,CACJ,CAAA,CACL,IAIL,GAEA,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAU,yCACb,UAAA,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,mCAAoC,SAAA,EAAE,SAAS,CAAK,CAAA,CAC9D,CAAA,EAIJ,GAGH,EAAA,EAAA,IAAA,CAAC,EAAD,CACe,cACF,YACJ,QACC,SACR,eAAgB,GAAW,UAC3B,SAAU,GAAW,OACR,cACN,QACM,cACb,aAAc,CACZ,UAAW,EAAE,WAAW,EACxB,gBAAiB,EAAE,iBAAiB,EACpC,aAAc,EAAE,cAAc,EAC9B,mBAAoB,EAAE,oBAAoB,EAC1C,iBAAkB,EAAE,kBAAkB,EACtC,OAAQ,EAAE,QAAQ,EAClB,OAAQ,EAAE,QAAQ,CACpB,EACe,gBACN,SACV,CAAA,EAxBoB,IA0BzB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{i as r,t as i}from"./vendor-vK2W55bZ.js";import{i as a,p as o}from"./index-
|
|
2
|
-
//# sourceMappingURL=page-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./i18n-CywLsdxn.js";import{i as r,t as i}from"./vendor-vK2W55bZ.js";import{i as a,p as o}from"./index-Ojc52FmW.js";import{t as s}from"./KeyboardShortcutsContext-Bb3ZQ4QP.js";import{t as c}from"./CookiePreferences--yB7lQIF.js";import{t as l}from"./routing-CjmlBUw_.js";import{n as u,t as d}from"./routing-DMkxvd2j.js";var f=e(t()),p=i();function m(){let{t:e}=n(),t=(t,n)=>e(`AuthError.${t}`,n),i=(t,n)=>e(`Footer.${t}`,n),m=(t,n)=>e(`Navigation.${t}`,n),h=(t,n)=>e(`Home.${t}`,n),[g]=r(),_=(0,f.useContext)(s),v=g.get(`error`)??null,y={pageTitle:t(`pageTitle`),tryAgain:t(`tryAgain`),errorConfiguration:t(`errorConfiguration`),errorAccessDenied:t(`errorAccessDenied`),errorVerification:t(`errorVerification`),errorGeneric:t(`errorGeneric`)};return(0,p.jsx)(o,{Link:d,routes:u,t:i,tNav:m,tHome:h,CookiePreferences:c,..._?.openKeyboardHelp&&{onOpenKeyboardHelp:_.openKeyboardHelp},className:`bg-gray-50 dark:bg-gray-900`,children:(0,p.jsx)(a,{errorType:v,Link:l,translations:y})})}export{m as default};
|
|
2
|
+
//# sourceMappingURL=page-DNCSUWUQ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-DNCSUWUQ.js","names":[],"sources":["../../src/app/[locale]/auth/error/page.tsx"],"sourcesContent":["import { useContext } from 'react';\nimport { useSearchParams } from 'react-router';\nimport { useTranslation } from 'react-i18next';\nimport { PageLayout, AuthErrorDisplay } 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 AuthError() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`AuthError.${k}`, p as any) as string;\n const tFooter = (k: string, p?: Record<string, unknown>) => _t(`Footer.${k}`, p as any) as string;\n const tNav = (k: string, p?: Record<string, unknown>) => _t(`Navigation.${k}`, p as any) as string;\n const tHome = (k: string, p?: Record<string, unknown>) => _t(`Home.${k}`, p as any) as string;\n const [searchParams] = useSearchParams();\n const keyboardContext = useContext(KeyboardShortcutsContext);\n\n const errorType = searchParams.get('error') ?? null;\n\n const translations = {\n pageTitle: t('pageTitle'),\n tryAgain: t('tryAgain'),\n errorConfiguration: t('errorConfiguration'),\n errorAccessDenied: t('errorAccessDenied'),\n errorVerification: t('errorVerification'),\n errorGeneric: t('errorGeneric'),\n };\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=\"bg-gray-50 dark:bg-gray-900\"\n >\n <AuthErrorDisplay errorType={errorType} Link={Link} translations={translations} />\n </PageLayout>\n );\n}\n"],"mappings":"6ZASA,SAAwB,GAAY,CAClC,GAAM,CAAE,EAAG,GAAO,EAAe,EAC3B,GAAK,EAAW,IAAgC,EAAG,aAAa,IAAK,CAAQ,EAC7E,GAAW,EAAW,IAAgC,EAAG,UAAU,IAAK,CAAQ,EAChF,GAAQ,EAAW,IAAgC,EAAG,cAAc,IAAK,CAAQ,EACjF,GAAS,EAAW,IAAgC,EAAG,QAAQ,IAAK,CAAQ,EAC5E,CAAC,GAAgB,EAAgB,EACjC,GAAA,EAAkB,EAAA,WAAA,CAAW,CAAwB,EAErD,EAAY,EAAa,IAAI,OAAO,GAAK,KAEzC,EAAe,CACnB,UAAW,EAAE,WAAW,EACxB,SAAU,EAAE,UAAU,EACtB,mBAAoB,EAAE,oBAAoB,EAC1C,kBAAmB,EAAE,mBAAmB,EACxC,kBAAmB,EAAE,mBAAmB,EACxC,aAAc,EAAE,cAAc,CAChC,EAEA,OACE,EAAA,EAAA,IAAA,CAAC,EAAD,CACE,KAAM,EACE,SACR,EAAG,EACG,OACC,QACY,oBACnB,GAAK,GAAiB,kBAAoB,CAAE,mBAAoB,EAAgB,gBAAiB,EACjG,UAAU,8BAEV,UAAA,EAAA,EAAA,IAAA,CAAC,EAAD,CAA6B,YAAiB,OAAoB,cAAe,CAAA,CACvE,CAAA,CAEhB"}
|