@semiont/cli 0.4.13 → 0.4.15
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 +15491 -4983
- package/dist/dashboard/dashboard.css +1 -1
- package/dist/dashboard/dashboard.css.map +2 -2
- package/dist/frontend/dist/assets/{ArrowsRightLeftIcon-CMDe963r.js → ArrowsRightLeftIcon-BzLgl5o9.js} +2 -2
- package/dist/frontend/dist/assets/{ArrowsRightLeftIcon-CMDe963r.js.map → ArrowsRightLeftIcon-BzLgl5o9.js.map} +1 -1
- package/dist/frontend/dist/assets/{ChevronLeftIcon-CMXd_XZQ.js → ChevronLeftIcon-BLyRNZuL.js} +2 -2
- package/dist/frontend/dist/assets/{ChevronLeftIcon-CMXd_XZQ.js.map → ChevronLeftIcon-BLyRNZuL.js.map} +1 -1
- package/dist/frontend/dist/assets/{CommandLineIcon-BBerq9Nd.js → CommandLineIcon-Ba4gpk8e.js} +2 -2
- package/dist/frontend/dist/assets/{CommandLineIcon-BBerq9Nd.js.map → CommandLineIcon-Ba4gpk8e.js.map} +1 -1
- package/dist/frontend/dist/assets/CookiePreferences-CO_BNHwm.js +2 -0
- package/dist/frontend/dist/assets/CookiePreferences-CO_BNHwm.js.map +1 -0
- package/dist/frontend/dist/assets/PdfAnnotationCanvas.client-CHDCGQBR-BLaEAPe0.js +2 -0
- package/dist/frontend/dist/assets/{PdfAnnotationCanvas.client-CW6SKH2U-Ct60nVWs.js.map → PdfAnnotationCanvas.client-CHDCGQBR-BLaEAPe0.js.map} +1 -1
- package/dist/frontend/dist/assets/StreamStatusContext-BNiTXRfJ.js +2 -0
- package/dist/frontend/dist/assets/{StreamStatusContext-BuPATpTz.js.map → StreamStatusContext-BNiTXRfJ.js.map} +1 -1
- package/dist/frontend/dist/assets/ToolbarPanels-DRHyLUHl.js +2 -0
- package/dist/frontend/dist/assets/ToolbarPanels-DRHyLUHl.js.map +1 -0
- package/dist/frontend/dist/assets/XMarkIcon-KMKD47CF.js +2 -0
- package/dist/frontend/dist/assets/XMarkIcon-KMKD47CF.js.map +1 -0
- package/dist/frontend/dist/assets/{browser-ponyfill-DkbQZCyF.js → browser-ponyfill-D2ngVqWO.js} +2 -2
- package/dist/frontend/dist/assets/{browser-ponyfill-DkbQZCyF.js.map → browser-ponyfill-D2ngVqWO.js.map} +1 -1
- package/dist/frontend/dist/assets/client-RpFyflU_.js +2 -0
- package/dist/frontend/dist/assets/{client-B-4-Nmfd.js.map → client-RpFyflU_.js.map} +1 -1
- package/dist/frontend/dist/assets/client-bqO7W1Xj.js +2 -0
- package/dist/frontend/dist/assets/{client-CTdkaDl6.js.map → client-bqO7W1Xj.js.map} +1 -1
- package/dist/frontend/dist/assets/client-ekxuarKC.js +2 -0
- package/dist/frontend/dist/assets/{client-rUyzJlA6.js.map → client-ekxuarKC.js.map} +1 -1
- package/dist/frontend/dist/assets/client-xJTgSko3.js +2 -0
- package/dist/frontend/dist/assets/{client-DvSa4CTk.js.map → client-xJTgSko3.js.map} +1 -1
- package/dist/frontend/dist/assets/{i18n-BYxb14hm.js → i18n-BbpF47i1.js} +2 -2
- package/dist/frontend/dist/assets/{i18n-BYxb14hm.js.map → i18n-BbpF47i1.js.map} +1 -1
- package/dist/frontend/dist/assets/{index-CwQxZp6g.css → index-BUe9tsov.css} +1 -1
- package/dist/frontend/dist/assets/index-XWcEpo5a.js +159 -0
- package/dist/frontend/dist/assets/index-XWcEpo5a.js.map +1 -0
- package/dist/frontend/dist/assets/layout-BFanPfv_.js +2 -0
- package/dist/frontend/dist/assets/layout-BFanPfv_.js.map +1 -0
- package/dist/frontend/dist/assets/layout-BN0UEIdX.js +2 -0
- package/dist/frontend/dist/assets/layout-BN0UEIdX.js.map +1 -0
- package/dist/frontend/dist/assets/layout-ChyKFPPP.js +2 -0
- package/dist/frontend/dist/assets/layout-ChyKFPPP.js.map +1 -0
- package/dist/frontend/dist/assets/layout-DmjP6diV.js +2 -0
- package/dist/frontend/dist/assets/layout-DmjP6diV.js.map +1 -0
- package/dist/frontend/dist/assets/{not-found-DE1pkuFl.js → not-found-BboGygIW.js} +2 -2
- package/dist/frontend/dist/assets/{not-found-DE1pkuFl.js.map → not-found-BboGygIW.js.map} +1 -1
- package/dist/frontend/dist/assets/page-8F47gNEm.js +2 -0
- package/dist/frontend/dist/assets/page-8F47gNEm.js.map +1 -0
- package/dist/frontend/dist/assets/page-8x98ZAYe.js +2 -0
- package/dist/frontend/dist/assets/page-8x98ZAYe.js.map +1 -0
- package/dist/frontend/dist/assets/page-BaqIbrus.js +2 -0
- package/dist/frontend/dist/assets/{page-C_L33_wR.js.map → page-BaqIbrus.js.map} +1 -1
- package/dist/frontend/dist/assets/page-BfhPRgzq.js +2 -0
- package/dist/frontend/dist/assets/page-BfhPRgzq.js.map +1 -0
- package/dist/frontend/dist/assets/{page-B-TRTXbV.js → page-Bht4dePL.js} +2 -2
- package/dist/frontend/dist/assets/{page-B-TRTXbV.js.map → page-Bht4dePL.js.map} +1 -1
- package/dist/frontend/dist/assets/page-BtqPeWyh.js +2 -0
- package/dist/frontend/dist/assets/page-BtqPeWyh.js.map +1 -0
- package/dist/frontend/dist/assets/{page-CUbbBytS.js → page-CG7C0ib3.js} +2 -2
- package/dist/frontend/dist/assets/{page-CUbbBytS.js.map → page-CG7C0ib3.js.map} +1 -1
- package/dist/frontend/dist/assets/page-CJnfSnRg.js +2 -0
- package/dist/frontend/dist/assets/page-CJnfSnRg.js.map +1 -0
- package/dist/frontend/dist/assets/page-Cct5hwIU.js +8 -0
- package/dist/frontend/dist/assets/{page-CaVtCo4z.js.map → page-Cct5hwIU.js.map} +1 -1
- package/dist/frontend/dist/assets/page-CnJVZMgv.js +2 -0
- package/dist/frontend/dist/assets/page-CnJVZMgv.js.map +1 -0
- package/dist/frontend/dist/assets/page-CpbZG7nR.js +2 -0
- package/dist/frontend/dist/assets/{page-BfUI7FZJ.js.map → page-CpbZG7nR.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-DXACCazr.js → page-CzvERJKF.js} +2 -2
- package/dist/frontend/dist/assets/{page-DXACCazr.js.map → page-CzvERJKF.js.map} +1 -1
- package/dist/frontend/dist/assets/page-DB8grXzl.js +2 -0
- package/dist/frontend/dist/assets/{page-CGDUl5-d.js.map → page-DB8grXzl.js.map} +1 -1
- package/dist/frontend/dist/assets/page-DI1MUp4X.js +2 -0
- package/dist/frontend/dist/assets/{page-CHq5JMOn.js.map → page-DI1MUp4X.js.map} +1 -1
- package/dist/frontend/dist/assets/page-Dhi8hP-S.js +2 -0
- package/dist/frontend/dist/assets/{page-qhHVLOTR.js.map → page-Dhi8hP-S.js.map} +1 -1
- package/dist/frontend/dist/assets/page-FovvpNWp.js +2 -0
- package/dist/frontend/dist/assets/{page-DiKTriTX.js.map → page-FovvpNWp.js.map} +1 -1
- package/dist/frontend/dist/assets/page-T424mvNp.js +2 -0
- package/dist/frontend/dist/assets/{page-C02dLWb8.js.map → page-T424mvNp.js.map} +1 -1
- package/dist/frontend/dist/assets/{page-D5i-uRGy.js → page-knhbwxzQ.js} +2 -2
- package/dist/frontend/dist/assets/{page-D5i-uRGy.js.map → page-knhbwxzQ.js.map} +1 -1
- package/dist/frontend/dist/assets/privacy-B5TeXaed.js +2 -0
- package/dist/frontend/dist/assets/{privacy-BMKdYFGC.js.map → privacy-B5TeXaed.js.map} +1 -1
- package/dist/frontend/dist/assets/{query-ATBhtd3K.js → query-B6BuIB0M.js} +3 -3
- package/dist/frontend/dist/assets/{query-ATBhtd3K.js.map → query-B6BuIB0M.js.map} +1 -1
- package/dist/frontend/dist/assets/routing-By_4TZHr.js +2 -0
- package/dist/frontend/dist/assets/{routing-BPQO9e8a.js.map → routing-By_4TZHr.js.map} +1 -1
- package/dist/frontend/dist/assets/{routing-BBQqTcTn.js → routing-vcvYfuPO.js} +2 -2
- package/dist/frontend/dist/assets/{routing-BBQqTcTn.js.map → routing-vcvYfuPO.js.map} +1 -1
- package/dist/frontend/dist/assets/{vendor-EnoIVk-c.js → vendor-DJo4KD8w.js} +2 -2
- package/dist/frontend/dist/assets/{vendor-EnoIVk-c.js.map → vendor-DJo4KD8w.js.map} +1 -1
- package/dist/frontend/dist/index.html +5 -5
- package/dist/frontend/dist/messages/ar.json +28 -6
- package/dist/frontend/dist/messages/bn.json +28 -6
- package/dist/frontend/dist/messages/cs.json +28 -6
- package/dist/frontend/dist/messages/da.json +28 -6
- package/dist/frontend/dist/messages/de.json +28 -6
- package/dist/frontend/dist/messages/el.json +28 -6
- package/dist/frontend/dist/messages/en.json +28 -6
- package/dist/frontend/dist/messages/es.json +28 -6
- package/dist/frontend/dist/messages/fa.json +28 -6
- package/dist/frontend/dist/messages/fi.json +28 -6
- package/dist/frontend/dist/messages/fr.json +28 -6
- package/dist/frontend/dist/messages/he.json +28 -6
- package/dist/frontend/dist/messages/hi.json +28 -6
- package/dist/frontend/dist/messages/id.json +28 -6
- package/dist/frontend/dist/messages/it.json +28 -6
- package/dist/frontend/dist/messages/ja.json +28 -6
- package/dist/frontend/dist/messages/ko.json +28 -6
- package/dist/frontend/dist/messages/ms.json +28 -6
- package/dist/frontend/dist/messages/nl.json +28 -6
- package/dist/frontend/dist/messages/no.json +28 -6
- package/dist/frontend/dist/messages/pl.json +28 -6
- package/dist/frontend/dist/messages/pt.json +28 -6
- package/dist/frontend/dist/messages/ro.json +28 -6
- package/dist/frontend/dist/messages/sv.json +28 -6
- package/dist/frontend/dist/messages/th.json +28 -6
- package/dist/frontend/dist/messages/tr.json +28 -6
- package/dist/frontend/dist/messages/uk.json +28 -6
- package/dist/frontend/dist/messages/vi.json +28 -6
- package/dist/frontend/dist/messages/zh.json +28 -6
- package/dist/frontend/package.json +1 -1
- package/package.json +9 -9
- package/dist/frontend/dist/assets/AuthContext-CqopYuY9.js +0 -2
- package/dist/frontend/dist/assets/AuthContext-CqopYuY9.js.map +0 -1
- package/dist/frontend/dist/assets/CookiePreferences-DIUP_g1S.js +0 -2
- package/dist/frontend/dist/assets/CookiePreferences-DIUP_g1S.js.map +0 -1
- package/dist/frontend/dist/assets/KnowledgeBaseContext-CgnF8K-_.js +0 -2
- package/dist/frontend/dist/assets/KnowledgeBaseContext-CgnF8K-_.js.map +0 -1
- package/dist/frontend/dist/assets/PdfAnnotationCanvas.client-CW6SKH2U-Ct60nVWs.js +0 -2
- package/dist/frontend/dist/assets/PlusIcon-qGFPUzg0.js +0 -2
- package/dist/frontend/dist/assets/PlusIcon-qGFPUzg0.js.map +0 -1
- package/dist/frontend/dist/assets/StreamStatusContext-BuPATpTz.js +0 -2
- package/dist/frontend/dist/assets/ToolbarPanels-CtBfzYcP.js +0 -2
- package/dist/frontend/dist/assets/ToolbarPanels-CtBfzYcP.js.map +0 -1
- package/dist/frontend/dist/assets/client-B-4-Nmfd.js +0 -2
- package/dist/frontend/dist/assets/client-CTdkaDl6.js +0 -2
- package/dist/frontend/dist/assets/client-DvSa4CTk.js +0 -2
- package/dist/frontend/dist/assets/client-rUyzJlA6.js +0 -2
- package/dist/frontend/dist/assets/en-IUV4ZXKH-b_r0oyRV.js +0 -135
- package/dist/frontend/dist/assets/en-IUV4ZXKH-b_r0oyRV.js.map +0 -1
- package/dist/frontend/dist/assets/index-dFCLrpeL.js +0 -27
- package/dist/frontend/dist/assets/index-dFCLrpeL.js.map +0 -1
- package/dist/frontend/dist/assets/layout-BwurEG3I.js +0 -2
- package/dist/frontend/dist/assets/layout-BwurEG3I.js.map +0 -1
- package/dist/frontend/dist/assets/layout-CCNyNXfP.js +0 -2
- package/dist/frontend/dist/assets/layout-CCNyNXfP.js.map +0 -1
- package/dist/frontend/dist/assets/layout-CHfFscVU.js +0 -2
- package/dist/frontend/dist/assets/layout-CHfFscVU.js.map +0 -1
- package/dist/frontend/dist/assets/layout-CL9MSbhu.js +0 -6
- package/dist/frontend/dist/assets/layout-CL9MSbhu.js.map +0 -1
- package/dist/frontend/dist/assets/page-B3h2_PT5.js +0 -2
- package/dist/frontend/dist/assets/page-B3h2_PT5.js.map +0 -1
- package/dist/frontend/dist/assets/page-BfUI7FZJ.js +0 -2
- package/dist/frontend/dist/assets/page-C-os3U8h.js +0 -2
- package/dist/frontend/dist/assets/page-C-os3U8h.js.map +0 -1
- package/dist/frontend/dist/assets/page-C02dLWb8.js +0 -2
- package/dist/frontend/dist/assets/page-CGDUl5-d.js +0 -2
- package/dist/frontend/dist/assets/page-CHq5JMOn.js +0 -2
- package/dist/frontend/dist/assets/page-C_L33_wR.js +0 -2
- package/dist/frontend/dist/assets/page-CaVtCo4z.js +0 -8
- package/dist/frontend/dist/assets/page-CjTcoHSS.js +0 -2
- package/dist/frontend/dist/assets/page-CjTcoHSS.js.map +0 -1
- package/dist/frontend/dist/assets/page-CtRMzwE_.js +0 -2
- package/dist/frontend/dist/assets/page-CtRMzwE_.js.map +0 -1
- package/dist/frontend/dist/assets/page-Cu2tT5mi.js +0 -2
- package/dist/frontend/dist/assets/page-Cu2tT5mi.js.map +0 -1
- package/dist/frontend/dist/assets/page-DiKTriTX.js +0 -2
- package/dist/frontend/dist/assets/page-eJup0RrB.js +0 -2
- package/dist/frontend/dist/assets/page-eJup0RrB.js.map +0 -1
- package/dist/frontend/dist/assets/page-qhHVLOTR.js +0 -2
- package/dist/frontend/dist/assets/privacy-BMKdYFGC.js +0 -2
- package/dist/frontend/dist/assets/routing-BPQO9e8a.js +0 -2
- package/dist/frontend/dist/assets/useAuth-B9hvtwrc.js +0 -2
- package/dist/frontend/dist/assets/useAuth-B9hvtwrc.js.map +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{u as j,j as r}from"./query-ATBhtd3K.js";import{r as s}from"./vendor-EnoIVk-c.js";import{d as v,e as w,f as A,g as C,i as L,E as k,T as I}from"./en-IUV4ZXKH-b_r0oyRV.js";import{T as D}from"./ToolbarPanels-CtBfzYcP.js";import{u as M}from"./i18n-BYxb14hm.js";import"./index-dFCLrpeL.js";import"./useAuth-B9hvtwrc.js";import"./AuthContext-CqopYuY9.js";import"./routing-BPQO9e8a.js";import"./KnowledgeBaseContext-CgnF8K-_.js";import"./PlusIcon-qGFPUzg0.js";function G(){const{t:m}=M(),e=(t,N)=>m(`ModerateEntityTags.${t}`,N),[a,i]=s.useState(""),[p,o]=s.useState(""),T=j(),{activePanel:y}=v(),{theme:h,setTheme:c}=w(),{showLineNumbers:f,toggleLineNumbers:d}=A(),E=s.useCallback(({theme:t})=>{c(t)},[c]),b=s.useCallback(()=>{d()},[d]);C({"settings:theme-changed":E,"settings:line-numbers-toggled":b});const l=L(),{data:n,isLoading:u}=l.list.useQuery({refetchInterval:3e4,refetchIntervalInBackground:!0}),x=(n==null?void 0:n.entityTypes)||[],g=l.add.useMutation(),P=async()=>{if(a.trim()){o("");try{await g.mutateAsync(a.trim()),T.invalidateQueries({queryKey:["/api/entity-types"]}),i("")}catch(t){o(t instanceof Error?t.message:e("errorFailedToAdd"))}}};return u?r.jsx("div",{className:"flex items-center justify-center py-20",children:r.jsx("p",{className:"text-gray-600 dark:text-gray-300",children:e("loading")})}):r.jsx(k,{entityTypes:x,isLoading:u,error:p,newTag:a,onNewTagChange:i,onAddTag:P,isAddingTag:g.isPending,theme:h,showLineNumbers:f,activePanel:y,translations:{pageTitle:e("pageTitle"),pageDescription:e("pageDescription"),sectionTitle:e("sectionTitle"),sectionDescription:e("sectionDescription"),inputPlaceholder:e("inputPlaceholder"),addTag:e("addTag"),adding:e("adding")},ToolbarPanels:D,Toolbar:I})}export{G as default};
|
|
2
|
-
//# sourceMappingURL=page-C02dLWb8.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as r}from"./query-ATBhtd3K.js";import{u as f,r as h}from"./vendor-EnoIVk-c.js";import{a as U,L as d}from"./routing-BPQO9e8a.js";import{P as k,a as H}from"./en-IUV4ZXKH-b_r0oyRV.js";import{C as b}from"./CookiePreferences-DIUP_g1S.js";import{K as x}from"./privacy-BMKdYFGC.js";import{r as y,L as A}from"./routing-BBQqTcTn.js";import{u as L}from"./i18n-BYxb14hm.js";import"./index-dFCLrpeL.js";function S(){const{t:n}=L(),o=(t,e)=>n(`AuthSignUp.${t}`,e),i=(t,e)=>n(`Footer.${t}`,e),c=(t,e)=>n(`Navigation.${t}`,e),s=(t,e)=>n(`Home.${t}`,e),[p]=f(),m=U(),a=h.useContext(x),l=p.get("callbackUrl")??"/auth/welcome",u=async()=>{m.push(`/auth/connect?callbackUrl=${encodeURIComponent(l)}`)},g={pageTitle:o("pageTitle"),signUpPrompt:o("signUpPrompt"),signUpWithGoogle:o("signUpWithGoogle"),creatingAccount:o("creatingAccount"),approvedDomainsInfo:o("approvedDomainsInfo"),termsAgreement:o("termsAgreement"),alreadyHaveAccount:o("alreadyHaveAccount"),tagline:s("tagline"),backToHome:o("backToHome")};return r.jsx(k,{Link:A,routes:y,t:i,tNav:c,tHome:s,CookiePreferences:b,...(a==null?void 0:a.openKeyboardHelp)&&{onOpenKeyboardHelp:a.openKeyboardHelp},className:"semiont-page-layout--auth",showAuthLinks:!1,children:r.jsx(H,{onSignUp:u,Link:d,translations:g})})}function N(){return r.jsx(S,{})}export{N as default};
|
|
2
|
-
//# sourceMappingURL=page-CGDUl5-d.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as u}from"./query-ATBhtd3K.js";import{r as n}from"./vendor-EnoIVk-c.js";import{d as g,e as T,f as d,g as h,B as b,T as f}from"./en-IUV4ZXKH-b_r0oyRV.js";import{T as D}from"./ToolbarPanels-CtBfzYcP.js";import{u as x}from"./i18n-BYxb14hm.js";import"./index-dFCLrpeL.js";import"./useAuth-B9hvtwrc.js";import"./AuthContext-CqopYuY9.js";import"./routing-BPQO9e8a.js";import"./KnowledgeBaseContext-CgnF8K-_.js";import"./PlusIcon-qGFPUzg0.js";function y(){const{t:i}=x(),e=(t,p)=>i(`ModerateRecent.${t}`,p),{activePanel:a}=g(),{theme:r,setTheme:s}=T(),{showLineNumbers:m,toggleLineNumbers:o}=d(),c=n.useCallback(({theme:t})=>{s(t)},[s]),l=n.useCallback(()=>{o()},[o]);return h({"settings:theme-changed":c,"settings:line-numbers-toggled":l}),u.jsx(b,{hasDocuments:!1,isLoading:!1,theme:r,showLineNumbers:m,activePanel:a,translations:{pageTitle:e("pageTitle"),pageDescription:e("pageDescription"),sectionTitle:e("sectionTitle"),sectionDescription:e("sectionDescription"),noDocuments:e("noDocuments"),activityWillAppear:e("activityWillAppear"),loading:e("loading")},ToolbarPanels:D,Toolbar:f})}export{y as default};
|
|
2
|
-
//# sourceMappingURL=page-CHq5JMOn.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as s}from"./query-ATBhtd3K.js";import{u as f,r as g}from"./vendor-EnoIVk-c.js";import{P as l,A as y}from"./en-IUV4ZXKH-b_r0oyRV.js";import{C as d}from"./CookiePreferences-DIUP_g1S.js";import{K as A}from"./privacy-BMKdYFGC.js";import{r as h,L as x}from"./routing-BBQqTcTn.js";import{L}from"./routing-BPQO9e8a.js";import{u as b}from"./i18n-BYxb14hm.js";import"./index-dFCLrpeL.js";function D(){const{t}=b(),e=(r,o)=>t(`AuthError.${r}`,o),n=(r,o)=>t(`Footer.${r}`,o),i=(r,o)=>t(`Navigation.${r}`,o),c=(r,o)=>t(`Home.${r}`,o),[m]=f(),a=g.useContext(A),p=m.get("error")??null,u={pageTitle:e("pageTitle"),tryAgain:e("tryAgain"),errorConfiguration:e("errorConfiguration"),errorAccessDenied:e("errorAccessDenied"),errorVerification:e("errorVerification"),errorGeneric:e("errorGeneric")};return s.jsx(l,{Link:x,routes:h,t:n,tNav:i,tHome:c,CookiePreferences:d,...(a==null?void 0:a.openKeyboardHelp)&&{onOpenKeyboardHelp:a.openKeyboardHelp},className:"bg-gray-50 dark:bg-gray-900",children:s.jsx(y,{errorType:p,Link:L,translations:u})})}export{D as default};
|
|
2
|
-
//# sourceMappingURL=page-C_L33_wR.js.map
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import{j as s}from"./query-ATBhtd3K.js";import{r as u}from"./vendor-EnoIVk-c.js";import{P as j,b as c}from"./en-IUV4ZXKH-b_r0oyRV.js";import{C as b}from"./CookiePreferences-DIUP_g1S.js";import{K as N}from"./privacy-BMKdYFGC.js";import{r as f,L as g}from"./routing-BBQqTcTn.js";import{L as o}from"./routing-BPQO9e8a.js";import{u as n}from"./i18n-BYxb14hm.js";import"./index-dFCLrpeL.js";function K(){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=u.useContext(N);return s.jsx(j,{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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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{K as default};
|
|
8
|
-
//# sourceMappingURL=page-CaVtCo4z.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as p}from"./query-ATBhtd3K.js";import{u as x,r as d}from"./vendor-EnoIVk-c.js";import{a as O,L as T}from"./routing-BPQO9e8a.js";import{M as H,F as q,G as C,H as E,I as S,N as A,O as D}from"./en-IUV4ZXKH-b_r0oyRV.js";import{C as K}from"./CookiePreferences-DIUP_g1S.js";import{K as N}from"./privacy-BMKdYFGC.js";import{r as j,L as F}from"./routing-BBQqTcTn.js";import{u as M}from"./AuthContext-CqopYuY9.js";import{u as z}from"./KnowledgeBaseContext-CgnF8K-_.js";import{u as W}from"./i18n-BYxb14hm.js";import"./index-dFCLrpeL.js";var $={};const u=$.SEMIONT_GOOGLE_CLIENT_ID;function P(a){const e=a.trim();return/^https?:\/\//i.test(e)?e:`https://${e}`}function te(){const{t:a}=W(),e=r=>a(`AuthSignIn.${r}`),v=(r,o)=>a(`Footer.${r}`,o),[g]=x(),h=O(),l=d.useContext(N),{setSession:k}=M(),{knowledgeBases:B,addKnowledgeBase:U}=z(),b=g.get("callbackUrl")??"/know",f=g.get("workspaceId"),t=f?B.find(r=>r.id===f):void 0,I=t==null?void 0:t.backendUrl,[y,s]=d.useState(null),w=d.useRef(!1);d.useEffect(()=>{if(!u||w.current)return;const r=document.createElement("script");r.src="https://accounts.google.com/gsi/client",r.async=!0,r.defer=!0,document.head.appendChild(r),w.current=!0},[]);const G=async r=>{var n,i;if(!u){s(e("errorGoogleSignIn"));return}s(null);const o=P(r),m=new C({baseUrl:S(o),eventBus:new E});(n=window.google)==null||n.accounts.id.initialize({client_id:u,callback:async({credential:c})=>{try{const L=await m.authenticateGoogle(A(c));t||U({id:crypto.randomUUID(),label:new URL(o).hostname,backendUrl:o}),k({token:L.token,user:L.user}),h.push(b)}catch{s(e("errorGoogleSignIn"))}}}),(i=window.google)==null||i.accounts.id.prompt()},R=async(r,o,m)=>{s(null);const n=P(r),i=new C({baseUrl:S(n),eventBus:new E});try{const c=await i.authenticatePassword(D(o),m);t||U({id:crypto.randomUUID(),label:new URL(n).hostname,backendUrl:n}),k({token:c.token,user:c.user}),h.push(b)}catch{s(e("errorInvalidCredentials"))}},_={pageTitle:e("pageTitle"),welcomeBack:e("welcomeBack"),signInPrompt:e("signInPrompt"),continueWithGoogle:e("continueWithGoogle"),backendUrlLabel:e("backendUrlLabel"),backendUrlPlaceholder:e("backendUrlPlaceholder"),emailLabel:e("emailLabel"),emailPlaceholder:e("emailPlaceholder"),passwordLabel:e("passwordLabel"),passwordPlaceholder:e("passwordPlaceholder"),signInWithCredentials:e("signInWithCredentials"),or:e("or"),credentialsAuthEnabled:e("credentialsAuthEnabled"),approvedDomainsOnly:e("approvedDomainsOnly"),backToHome:e("backToHome"),learnMore:e("learnMore"),signUpInstead:e("signUpInstead"),errorBackendUrlRequired:e("errorBackendUrlRequired"),errorBackendUrlInvalid:e("errorBackendUrlInvalid"),errorBackendUrlUnreachable:e("errorBackendUrlUnreachable"),errorEmailRequired:e("errorEmailRequired"),errorPasswordRequired:e("errorPasswordRequired"),tagline:a("Home.tagline")};return p.jsxs("div",{className:"semiont-page-wrapper",children:[p.jsx(H,{...I!==void 0&&{backendUrl:I},onGoogleSignIn:u?G:void 0,onCredentialsSignIn:R,error:y,showCredentialsAuth:!0,isLoading:!1,Link:T,translations:_}),p.jsx(q,{Link:F,routes:j,t:v,CookiePreferences:K,...(l==null?void 0:l.openKeyboardHelp)&&{onOpenKeyboardHelp:l.openKeyboardHelp}})]})}export{te as default};
|
|
2
|
-
//# sourceMappingURL=page-CjTcoHSS.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"page-CjTcoHSS.js","sources":["../../src/lib/env.ts","../../src/app/[locale]/auth/connect/page.tsx"],"sourcesContent":["// Environment configuration for Semiont Frontend\n// No validation at module load time - values are validated when actually used\n\n// Site Configuration\nexport const SEMIONT_SITE_NAME = process.env.SEMIONT_SITE_NAME || 'Semiont';\nexport const SEMIONT_BASE_URL = process.env.SEMIONT_BASE_URL || 'http://localhost:3000';\n\n// OAuth Configuration\nexport const SEMIONT_GOOGLE_CLIENT_ID = process.env.SEMIONT_GOOGLE_CLIENT_ID;\n\n// OAuth allowed domains (comma-separated list)\nexport const SEMIONT_OAUTH_ALLOWED_DOMAINS = process.env.SEMIONT_OAUTH_ALLOWED_DOMAINS || '';\n\n// Environment helpers\nexport const isDevelopment = process.env.NODE_ENV === 'development';\nexport const isProduction = process.env.NODE_ENV === 'production';\n\n// Helper to parse allowed domains from comma-separated string\nexport function getAllowedDomains(): string[] {\n return SEMIONT_OAUTH_ALLOWED_DOMAINS\n .split(',')\n .map(d => d.trim())\n .filter(d => d.length > 0);\n}\n","import { useEffect, useState, useContext, useRef } from 'react';\nimport { useSearchParams } from 'react-router-dom';\nimport { useRouter } from '@/i18n/routing';\nimport { useTranslation } from 'react-i18next';\nimport { Footer, SignInForm } 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';\nimport { useAuthContext } from '@/contexts/AuthContext';\nimport { useKnowledgeBaseContext } from '@/contexts/KnowledgeBaseContext';\nimport { SemiontApiClient } from '@semiont/api-client';\nimport { googleCredential, email as makeEmail, baseUrl as makeBaseUrl, EventBus } from '@semiont/core';\nimport { SEMIONT_GOOGLE_CLIENT_ID } from '@/lib/env';\nimport type { KnowledgeBase } from '@/contexts/KnowledgeBaseContext';\n\ndeclare global {\n interface Window {\n google?: {\n accounts: {\n id: {\n initialize: (config: { client_id: string; callback: (response: { credential: string }) => void }) => void;\n prompt: () => void;\n };\n };\n };\n }\n}\n\n/**\n * Normalise a user-entered URL: add https:// if no scheme is present.\n */\nfunction normalizeUrl(raw: string): string {\n const trimmed = raw.trim();\n if (/^https?:\\/\\//i.test(trimmed)) return trimmed;\n return `https://${trimmed}`;\n}\n\nexport default function ConnectPage() {\n const { t: _t } = useTranslation();\n const t = (k: string) => _t(`AuthSignIn.${k}`) as string;\n const tFooter = (k: string, p?: Record<string, unknown>) => _t(`Footer.${k}`, p as any) as string;\n const [searchParams] = useSearchParams();\n const router = useRouter();\n const keyboardContext = useContext(KeyboardShortcutsContext);\n const { setSession } = useAuthContext();\n const { knowledgeBases, addKnowledgeBase } = useKnowledgeBaseContext();\n\n const callbackUrl = searchParams.get('callbackUrl') ?? '/know';\n\n // If workspaceId is in the query string, we're re-authenticating to a known workspace.\n const workspaceId = searchParams.get('workspaceId');\n const knownKnowledgeBase: KnowledgeBase | undefined = workspaceId\n ? knowledgeBases.find(w => w.id === workspaceId)\n : undefined;\n\n // The locked URL shown in the form (undefined = user must enter it)\n const lockedBackendUrl = knownKnowledgeBase?.backendUrl;\n\n const [error, setError] = useState<string | null>(null);\n const googleScriptLoaded = useRef(false);\n\n useEffect(() => {\n if (!SEMIONT_GOOGLE_CLIENT_ID || googleScriptLoaded.current) return;\n const script = document.createElement('script');\n script.src = 'https://accounts.google.com/gsi/client';\n script.async = true;\n script.defer = true;\n document.head.appendChild(script);\n googleScriptLoaded.current = true;\n }, []);\n\n const handleGoogleSignIn = async (backendUrl: string) => {\n if (!SEMIONT_GOOGLE_CLIENT_ID) {\n setError(t('errorGoogleSignIn'));\n return;\n }\n setError(null);\n const normalizedUrl = normalizeUrl(backendUrl);\n const client = new SemiontApiClient({ baseUrl: makeBaseUrl(normalizedUrl), eventBus: new EventBus() });\n\n window.google?.accounts.id.initialize({\n client_id: SEMIONT_GOOGLE_CLIENT_ID,\n callback: async ({ credential }) => {\n try {\n const response = await client.authenticateGoogle(googleCredential(credential));\n if (!knownKnowledgeBase) {\n addKnowledgeBase({\n id: crypto.randomUUID(),\n label: new URL(normalizedUrl).hostname,\n backendUrl: normalizedUrl,\n });\n }\n setSession({ token: response.token, user: response.user as any });\n router.push(callbackUrl);\n } catch {\n setError(t('errorGoogleSignIn'));\n }\n },\n });\n window.google?.accounts.id.prompt();\n };\n\n const handleCredentialsSignIn = async (backendUrl: string, email: string, password: string) => {\n setError(null);\n const normalizedUrl = normalizeUrl(backendUrl);\n const client = new SemiontApiClient({ baseUrl: makeBaseUrl(normalizedUrl), eventBus: new EventBus() });\n try {\n const response = await client.authenticatePassword(makeEmail(email), password);\n if (!knownKnowledgeBase) {\n addKnowledgeBase({\n id: crypto.randomUUID(),\n label: new URL(normalizedUrl).hostname,\n backendUrl: normalizedUrl,\n });\n }\n setSession({ token: response.token, user: response.user as any });\n router.push(callbackUrl);\n } catch {\n setError(t('errorInvalidCredentials'));\n }\n };\n\n const translations = {\n pageTitle: t('pageTitle'),\n welcomeBack: t('welcomeBack'),\n signInPrompt: t('signInPrompt'),\n continueWithGoogle: t('continueWithGoogle'),\n backendUrlLabel: t('backendUrlLabel'),\n backendUrlPlaceholder: t('backendUrlPlaceholder'),\n emailLabel: t('emailLabel'),\n emailPlaceholder: t('emailPlaceholder'),\n passwordLabel: t('passwordLabel'),\n passwordPlaceholder: t('passwordPlaceholder'),\n signInWithCredentials: t('signInWithCredentials'),\n or: t('or'),\n credentialsAuthEnabled: t('credentialsAuthEnabled'),\n approvedDomainsOnly: t('approvedDomainsOnly'),\n backToHome: t('backToHome'),\n learnMore: t('learnMore'),\n signUpInstead: t('signUpInstead'),\n errorBackendUrlRequired: t('errorBackendUrlRequired'),\n errorBackendUrlInvalid: t('errorBackendUrlInvalid'),\n errorBackendUrlUnreachable: t('errorBackendUrlUnreachable'),\n errorEmailRequired: t('errorEmailRequired'),\n errorPasswordRequired: t('errorPasswordRequired'),\n tagline: _t('Home.tagline') as string,\n };\n\n return (\n <div className=\"semiont-page-wrapper\">\n <SignInForm\n {...(lockedBackendUrl !== undefined && { backendUrl: lockedBackendUrl })}\n onGoogleSignIn={SEMIONT_GOOGLE_CLIENT_ID ? handleGoogleSignIn : undefined as any}\n onCredentialsSignIn={handleCredentialsSignIn}\n error={error}\n showCredentialsAuth={true}\n isLoading={false}\n Link={Link}\n translations={translations}\n />\n <Footer\n Link={RoutingLink}\n routes={routes}\n t={tFooter}\n CookiePreferences={CookiePreferences}\n {...(keyboardContext?.openKeyboardHelp && { onOpenKeyboardHelp: keyboardContext.openKeyboardHelp })}\n />\n </div>\n );\n}\n"],"names":["SEMIONT_GOOGLE_CLIENT_ID","define_process_env_default","normalizeUrl","raw","trimmed","ConnectPage","_t","useTranslation","t","k","tFooter","p","searchParams","useSearchParams","router","useRouter","keyboardContext","useContext","KeyboardShortcutsContext","setSession","useAuthContext","knowledgeBases","addKnowledgeBase","useKnowledgeBaseContext","callbackUrl","workspaceId","knownKnowledgeBase","w","lockedBackendUrl","error","setError","useState","googleScriptLoaded","useRef","useEffect","script","handleGoogleSignIn","backendUrl","normalizedUrl","client","SemiontApiClient","makeBaseUrl","EventBus","_a","credential","response","googleCredential","_b","handleCredentialsSignIn","email","password","makeEmail","translations","jsxs","jsx","SignInForm","Link","Footer","RoutingLink","routes","CookiePreferences"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as r}from"./query-ATBhtd3K.js";import{a as R,r as x}from"./vendor-EnoIVk-c.js";import{u as g}from"./routing-BPQO9e8a.js";import{r as n,h as j,s as E,t as m,v as L}from"./en-IUV4ZXKH-b_r0oyRV.js";import{r as S,L as P}from"./routing-BBQqTcTn.js";import{u as h}from"./StreamStatusContext-BuPATpTz.js";import{T as w}from"./ToolbarPanels-CtBfzYcP.js";import"./index-dFCLrpeL.js";import"./i18n-BYxb14hm.js";import"./useAuth-B9hvtwrc.js";import"./AuthContext-CqopYuY9.js";import"./KnowledgeBaseContext-CgnF8K-_.js";import"./PlusIcon-qGFPUzg0.js";function q(){const o=R(),f=g(),e=n(o==null?void 0:o.id),p=h(),d=j(),{data:s,isLoading:t,isError:a,error:u,refetch:c}=d.get.useQuery(e);if(x.useEffect(()=>{a&&!t&&console.error(`[Document] Failed to load resource ${e}:`,u)},[a,t,e,u]),t||!s)return r.jsx(E,{});if(a)return r.jsx(m,{error:u,onRetry:()=>c()});if(!s.resource)return r.jsx(m,{error:new Error("Resource not found"),onRetry:()=>c()});const i=s.resource,l=n(i["@id"]);return r.jsx(L,{resource:i,rUri:l,locale:f,Link:P,routes:S,ToolbarPanels:w,refetchDocument:c,streamStatus:p})}export{q as default};
|
|
2
|
-
//# sourceMappingURL=page-CtRMzwE_.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"page-CtRMzwE_.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 } from 'react';\nimport { useParams } from 'react-router-dom';\nimport { useLocale } from '@/i18n/routing';\nimport { useResources } from '@semiont/react-ui';\nimport { resourceId } from '@semiont/core';\nimport { Link, routes } from '@/lib/routing';\nimport { useStreamStatus } from '@/contexts/StreamStatusContext';\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 */\nexport default function KnowledgeResourcePage() {\n const params = useParams();\n const locale = useLocale();\n\n // The URL param is the bare resource ID\n const rId = resourceId(params?.id as string);\n\n const streamStatus = useStreamStatus();\n\n // Load only the resource descriptor - everything else is loaded by ResourceViewerPage\n const resources = useResources();\n const {\n data: docData,\n isLoading,\n isError,\n error,\n refetch: refetchDocument\n } = resources.get.useQuery(rId) as {\n data: { resource: SemiontResource } | undefined;\n isLoading: boolean;\n isError: boolean;\n error: unknown;\n refetch: () => Promise<unknown>;\n };\n\n // Log error for debugging\n useEffect(() => {\n if (isError && !isLoading) {\n console.error(`[Document] Failed to load resource ${rId}:`, error);\n }\n }, [isError, isLoading, rId, error]);\n\n // Early return: Loading state\n if (isLoading || !docData) {\n return <ResourceLoadingState />;\n }\n\n // Early return: Error state\n if (isError) {\n return <ResourceErrorState error={error} onRetry={() => refetchDocument()} />;\n }\n\n // Early return: ResourceDescriptor not found\n if (!docData.resource) {\n return <ResourceErrorState error={new Error('Resource not found')} onRetry={() => refetchDocument()} />;\n }\n\n const resource = docData.resource;\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 />\n );\n}\n"],"names":["KnowledgeResourcePage","params","useParams","locale","useLocale","rId","resourceId","streamStatus","useStreamStatus","resources","useResources","docData","isLoading","isError","error","refetchDocument","useEffect","ResourceLoadingState","ResourceErrorState","jsx","resource","canonicalId","ResourceViewerPage","Link","routes","ToolbarPanels"],"mappings":"oiBAyBA,SAAwBA,GAAwB,CAC9C,MAAMC,EAASC,EAAA,EACTC,EAASC,EAAA,EAGTC,EAAMC,EAAWL,GAAA,YAAAA,EAAQ,EAAY,EAErCM,EAAeC,EAAA,EAGfC,EAAYC,EAAA,EACZ,CACJ,KAAMC,EACN,UAAAC,EACA,QAAAC,EACA,MAAAC,EACA,QAASC,CAAA,EACPN,EAAU,IAAI,SAASJ,CAAG,EAgB9B,GAPAW,EAAAA,UAAU,IAAM,CACVH,GAAW,CAACD,GACd,QAAQ,MAAM,sCAAsCP,CAAG,IAAKS,CAAK,CAErE,EAAG,CAACD,EAASD,EAAWP,EAAKS,CAAK,CAAC,EAG/BF,GAAa,CAACD,EAChB,aAAQM,EAAA,EAAqB,EAI/B,GAAIJ,EACF,aAAQK,EAAA,CAAmB,MAAAJ,EAAc,QAAS,IAAMC,IAAmB,EAI7E,GAAI,CAACJ,EAAQ,SACX,OAAOQ,MAACD,EAAA,CAAmB,MAAO,IAAI,MAAM,oBAAoB,EAAG,QAAS,IAAMH,EAAA,EAAmB,EAGvG,MAAMK,EAAWT,EAAQ,SAEnBU,EAAcf,EAAWc,EAAS,KAAK,CAAC,EAG9C,OACED,EAAAA,IAACG,EAAA,CACC,SAAAF,EACA,KAAMC,EACN,OAAAlB,EACA,KAAAoB,EACA,OAAAC,EACA,cAAAC,EACA,gBAAAV,EACA,aAAAR,CAAA,CAAA,CAGN"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as l}from"./query-ATBhtd3K.js";import{r as t}from"./vendor-EnoIVk-c.js";import{d as h,e as g,f as v,g as f,Z as b,T as w,_ as C}from"./en-IUV4ZXKH-b_r0oyRV.js";import{T as y}from"./ToolbarPanels-CtBfzYcP.js";import{u as D}from"./useAuth-B9hvtwrc.js";import{u as k}from"./i18n-BYxb14hm.js";import{F as T}from"./CommandLineIcon-BBerq9Nd.js";import"./index-dFCLrpeL.js";import"./AuthContext-CqopYuY9.js";import"./routing-BPQO9e8a.js";import"./KnowledgeBaseContext-CgnF8K-_.js";import"./PlusIcon-qGFPUzg0.js";function L({title:s,titleId:e,...n},i){return t.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":e},n),s?t.createElement("title",{id:e},s):null,t.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M3 13.125C3 12.504 3.504 12 4.125 12h2.25c.621 0 1.125.504 1.125 1.125v6.75C7.5 20.496 6.996 21 6.375 21h-2.25A1.125 1.125 0 0 1 3 19.875v-6.75ZM9.75 8.625c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125v11.25c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V8.625ZM16.5 4.125c0-.621.504-1.125 1.125-1.125h2.25C20.496 3 21 3.504 21 4.125v15.75c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V4.125Z"}))}const x=t.forwardRef(L);function M({title:s,titleId:e,...n},i){return t.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":e},n),s?t.createElement("title",{id:e},s):null,t.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M21.75 17.25v-.228a4.5 4.5 0 0 0-.12-1.03l-2.268-9.64a3.375 3.375 0 0 0-3.285-2.602H7.923a3.375 3.375 0 0 0-3.285 2.602l-2.268 9.64a4.5 4.5 0 0 0-.12 1.03v.228m19.5 0a3 3 0 0 1-3 3H5.25a3 3 0 0 1-3-3m19.5 0a3 3 0 0 0-3-3H5.25a3 3 0 0 0-3 3m16.5 0h.008v.008h-.008v-.008Zm-3 0h.008v.008h-.008v-.008Z"}))}const E=t.forwardRef(M);function O(){const{isFullyAuthenticated:s,isAuthenticated:e,hasValidBackendToken:n}=D();return l.jsx(C,{isFullyAuthenticated:s,isAuthenticated:e,hasValidBackendToken:n})}function W(){const{t:s}=k(),e=(o,d)=>s(`AdminDevOps.${o}`,d),{activePanel:n}=h(),{theme:i,setTheme:r}=g(),{showLineNumbers:c,toggleLineNumbers:a}=v(),m=t.useCallback(({theme:o})=>{r(o)},[r]),u=t.useCallback(()=>{a()},[a]);f({"settings:theme-changed":m,"settings:line-numbers-toggled":u});const p=[{title:e("systemMonitoring"),description:e("systemMonitoringDescription"),icon:x,available:e("systemMonitoringCLI")},{title:e("serviceManagement"),description:e("serviceManagementDescription"),icon:E,available:e("serviceManagementCLI")},{title:e("deploymentControl"),description:e("deploymentControlDescription"),icon:T,available:e("deploymentControlCLI")}];return l.jsx(b,{suggestedFeatures:p,theme:i,showLineNumbers:c,activePanel:n,translations:{title:e("title"),subtitle:e("subtitle"),systemStatus:e("systemStatus"),cliOperations:e("cliOperations"),cliOperationsDescription:e("cliOperationsDescription"),cliTitle:e("cliTitle"),cliDescription:e("cliDescription")},StatusDisplay:O,ToolbarPanels:y,Toolbar:w})}export{W as default};
|
|
2
|
-
//# sourceMappingURL=page-Cu2tT5mi.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"page-Cu2tT5mi.js","sources":["../../../../node_modules/@heroicons/react/24/outline/esm/ChartBarIcon.js","../../../../node_modules/@heroicons/react/24/outline/esm/ServerIcon.js","../../src/app/[locale]/admin/devops/page.tsx"],"sourcesContent":["import * as React from \"react\";\nfunction ChartBarIcon({\n title,\n titleId,\n ...props\n}, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 1.5,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M3 13.125C3 12.504 3.504 12 4.125 12h2.25c.621 0 1.125.504 1.125 1.125v6.75C7.5 20.496 6.996 21 6.375 21h-2.25A1.125 1.125 0 0 1 3 19.875v-6.75ZM9.75 8.625c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125v11.25c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V8.625ZM16.5 4.125c0-.621.504-1.125 1.125-1.125h2.25C20.496 3 21 3.504 21 4.125v15.75c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V4.125Z\"\n }));\n}\nconst ForwardRef = /*#__PURE__*/ React.forwardRef(ChartBarIcon);\nexport default ForwardRef;","import * as React from \"react\";\nfunction ServerIcon({\n title,\n titleId,\n ...props\n}, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 1.5,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M21.75 17.25v-.228a4.5 4.5 0 0 0-.12-1.03l-2.268-9.64a3.375 3.375 0 0 0-3.285-2.602H7.923a3.375 3.375 0 0 0-3.285 2.602l-2.268 9.64a4.5 4.5 0 0 0-.12 1.03v.228m19.5 0a3 3 0 0 1-3 3H5.25a3 3 0 0 1-3-3m19.5 0a3 3 0 0 0-3-3H5.25a3 3 0 0 0-3 3m16.5 0h.008v.008h-.008v-.008Zm-3 0h.008v.008h-.008v-.008Z\"\n }));\n}\nconst ForwardRef = /*#__PURE__*/ React.forwardRef(ServerIcon);\nexport default ForwardRef;","/**\n * DevOps Page - Thin Next.js wrapper\n *\n * This page handles Next.js-specific concerns (translations, hooks)\n * and delegates rendering to the pure React AdminDevOpsPage component.\n */\n\nimport { useTranslation } from 'react-i18next';\nimport { useEffect, useCallback } from 'react';\nimport {\n ChartBarIcon,\n ServerIcon,\n CommandLineIcon\n} from '@heroicons/react/24/outline';\nimport { StatusDisplay, Toolbar } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { useTheme, usePanelBrowse, useLineNumbers, useEventSubscriptions } from '@semiont/react-ui';\nimport { AdminDevOpsPage } from '@semiont/react-ui';\nimport { useAuth } from '@/hooks/useAuth';\n\n// Wrapper component that provides auth props to StatusDisplay\nfunction StatusDisplayWithAuth() {\n const { isFullyAuthenticated, isAuthenticated, hasValidBackendToken } = useAuth();\n return (\n <StatusDisplay\n isFullyAuthenticated={isFullyAuthenticated}\n isAuthenticated={isAuthenticated}\n hasValidBackendToken={hasValidBackendToken}\n />\n );\n}\n\nexport default function DevOpsPage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`AdminDevOps.${k}`, p as any) as string;\n\n // Toolbar and settings state\n const { activePanel } = usePanelBrowse();\n const { theme, setTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n\n // Handle theme change events\n const handleThemeChanged = useCallback(({ theme }: { theme: 'light' | 'dark' | 'system' }) => {\n setTheme(theme);\n }, [setTheme]);\n\n // Handle line numbers toggle events\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 const suggestedFeatures = [\n {\n title: t('systemMonitoring'),\n description: t('systemMonitoringDescription'),\n icon: ChartBarIcon,\n available: t('systemMonitoringCLI')\n },\n {\n title: t('serviceManagement'),\n description: t('serviceManagementDescription'),\n icon: ServerIcon,\n available: t('serviceManagementCLI')\n },\n {\n title: t('deploymentControl'),\n description: t('deploymentControlDescription'),\n icon: CommandLineIcon,\n available: t('deploymentControlCLI')\n },\n ];\n\n return (\n <AdminDevOpsPage\n suggestedFeatures={suggestedFeatures}\n theme={theme}\n showLineNumbers={showLineNumbers}\n activePanel={activePanel}\n translations={{\n title: t('title'),\n subtitle: t('subtitle'),\n systemStatus: t('systemStatus'),\n cliOperations: t('cliOperations'),\n cliOperationsDescription: t('cliOperationsDescription'),\n cliTitle: t('cliTitle'),\n cliDescription: t('cliDescription'),\n }}\n StatusDisplay={StatusDisplayWithAuth}\n ToolbarPanels={ToolbarPanels}\n Toolbar={Toolbar}\n />\n );\n}\n"],"names":["ChartBarIcon","title","titleId","props","svgRef","React.createElement","ForwardRef","React.forwardRef","ServerIcon","StatusDisplayWithAuth","isFullyAuthenticated","isAuthenticated","hasValidBackendToken","useAuth","jsx","StatusDisplay","DevOpsPage","_t","useTranslation","t","k","p","activePanel","usePanelBrowse","theme","setTheme","useTheme","showLineNumbers","toggleLineNumbers","useLineNumbers","handleThemeChanged","useCallback","handleLineNumbersToggled","useEventSubscriptions","suggestedFeatures","CommandLineIcon","AdminDevOpsPage","ToolbarPanels","Toolbar"],"mappings":"kgBACA,SAASA,EAAa,CACpB,MAAAC,EACA,QAAAC,EACA,GAAGC,CACL,EAAGC,EAAQ,CACT,OAAoBC,gBAAoB,MAAO,OAAO,OAAO,CAC3D,MAAO,6BACP,KAAM,OACN,QAAS,YACT,YAAa,IACb,OAAQ,eACR,cAAe,OACf,YAAa,OACb,IAAKD,EACL,kBAAmBF,CACvB,EAAKC,CAAK,EAAGF,EAAqBI,EAAAA,cAAoB,QAAS,CAC3D,GAAIH,CACR,EAAKD,CAAK,EAAI,KAAmBI,EAAAA,cAAoB,OAAQ,CACzD,cAAe,QACf,eAAgB,QAChB,EAAG,kcACP,CAAG,CAAC,CACJ,CACA,MAAMC,EAA2BC,EAAAA,WAAiBP,CAAY,ECvB9D,SAASQ,EAAW,CAClB,MAAAP,EACA,QAAAC,EACA,GAAGC,CACL,EAAGC,EAAQ,CACT,OAAoBC,gBAAoB,MAAO,OAAO,OAAO,CAC3D,MAAO,6BACP,KAAM,OACN,QAAS,YACT,YAAa,IACb,OAAQ,eACR,cAAe,OACf,YAAa,OACb,IAAKD,EACL,kBAAmBF,CACvB,EAAKC,CAAK,EAAGF,EAAqBI,EAAAA,cAAoB,QAAS,CAC3D,GAAIH,CACR,EAAKD,CAAK,EAAI,KAAmBI,EAAAA,cAAoB,OAAQ,CACzD,cAAe,QACf,eAAgB,QAChB,EAAG,2SACP,CAAG,CAAC,CACJ,CACA,MAAMC,EAA2BC,EAAAA,WAAiBC,CAAU,ECH5D,SAASC,GAAwB,CAC/B,KAAM,CAAE,qBAAAC,EAAsB,gBAAAC,EAAiB,qBAAAC,CAAA,EAAyBC,EAAA,EACxE,OACEC,EAAAA,IAACC,EAAA,CACC,qBAAAL,EACA,gBAAAC,EACA,qBAAAC,CAAA,CAAA,CAGN,CAEA,SAAwBI,GAAa,CACnC,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,eAAeG,CAAC,GAAIC,CAAQ,EAG/E,CAAE,YAAAC,CAAA,EAAgBC,EAAA,EAClB,CAAE,MAAAC,EAAO,SAAAC,CAAA,EAAaC,EAAA,EACtB,CAAE,gBAAAC,EAAiB,kBAAAC,CAAA,EAAsBC,EAAA,EAGzCC,EAAqBC,EAAAA,YAAY,CAAC,CAAE,MAAAP,KAAoD,CAC5FC,EAASD,CAAK,CAChB,EAAG,CAACC,CAAQ,CAAC,EAGPO,EAA2BD,EAAAA,YAAY,IAAM,CACjDH,EAAA,CACF,EAAG,CAACA,CAAiB,CAAC,EAEtBK,EAAsB,CACpB,yBAA0BH,EAC1B,gCAAiCE,CAAA,CAClC,EAED,MAAME,EAAoB,CACxB,CACE,MAAOf,EAAE,kBAAkB,EAC3B,YAAaA,EAAE,6BAA6B,EAC5C,KAAMnB,EACN,UAAWmB,EAAE,qBAAqB,CAAA,EAEpC,CACE,MAAOA,EAAE,mBAAmB,EAC5B,YAAaA,EAAE,8BAA8B,EAC7C,KAAMX,EACN,UAAWW,EAAE,sBAAsB,CAAA,EAErC,CACE,MAAOA,EAAE,mBAAmB,EAC5B,YAAaA,EAAE,8BAA8B,EAC7C,KAAMgB,EACN,UAAWhB,EAAE,sBAAsB,CAAA,CACrC,EAGF,OACEL,EAAAA,IAACsB,EAAA,CACC,kBAAAF,EACA,MAAAV,EACA,gBAAAG,EACA,YAAAL,EACA,aAAc,CACZ,MAAOH,EAAE,OAAO,EAChB,SAAUA,EAAE,UAAU,EACtB,aAAcA,EAAE,cAAc,EAC9B,cAAeA,EAAE,eAAe,EAChC,yBAA0BA,EAAE,0BAA0B,EACtD,SAAUA,EAAE,UAAU,EACtB,eAAgBA,EAAE,gBAAgB,CAAA,EAEpC,cAAeV,EACf,cAAA4B,EACA,QAAAC,CAAA,CAAA,CAGN","x_google_ignoreList":[0,1]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as B}from"./query-ATBhtd3K.js";import{r as u}from"./vendor-EnoIVk-c.js";import{a as w}from"./routing-BPQO9e8a.js";import{d as E,e as L,f as N,g as x,h as C,i as F,R as k}from"./en-IUV4ZXKH-b_r0oyRV.js";import{T as j}from"./ToolbarPanels-CtBfzYcP.js";import{u as A}from"./i18n-BYxb14hm.js";import"./index-dFCLrpeL.js";import"./useAuth-B9hvtwrc.js";import"./AuthContext-CqopYuY9.js";import"./KnowledgeBaseContext-CgnF8K-_.js";import"./PlusIcon-qGFPUzg0.js";function H(){const{t:l}=A(),e=(s,P)=>l(`Discover.${s}`,P),n=w(),{activePanel:m}=E(),{theme:Q,setTheme:a,resolvedTheme:h}=L(),{showLineNumbers:d,toggleLineNumbers:c}=N(),g=u.useCallback(({theme:s})=>{a(s)},[a]),p=u.useCallback(()=>{c()},[c]);x({"settings:theme-changed":g,"settings:line-numbers-toggled":p});const i=C(),R=F(),{data:t,isLoading:T}=i.list.useQuery({limit:10,archived:!1}),{data:o}=R.list.useQuery(),{data:r,isFetching:y}=i.search.useQuery("",20),b=(t==null?void 0:t.resources)||[],v=(r==null?void 0:r.resources)||[],f=(o==null?void 0:o.entityTypes)||[];return B.jsx(k,{recentDocuments:b,searchDocuments:v,entityTypes:f,isLoadingRecent:T,isSearching:y,theme:h,showLineNumbers:d,activePanel:m,onNavigateToResource:s=>{n.push(`/know/resource/${encodeURIComponent(s)}`)},onNavigateToCompose:()=>{n.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:j})}export{H as default};
|
|
2
|
-
//# sourceMappingURL=page-DiKTriTX.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as e}from"./query-ATBhtd3K.js";import{r as x}from"./vendor-EnoIVk-c.js";import{u as p}from"./useAuth-B9hvtwrc.js";import{L as o}from"./routing-BPQO9e8a.js";import{S as h,b as n,F as u}from"./en-IUV4ZXKH-b_r0oyRV.js";import{C as f}from"./CookiePreferences-DIUP_g1S.js";import{K as j}from"./privacy-BMKdYFGC.js";import{r as y,L as N}from"./routing-BBQqTcTn.js";import{u as g}from"./i18n-BYxb14hm.js";import"./AuthContext-CqopYuY9.js";import"./index-dFCLrpeL.js";function I(){const{isAuthenticated:i,isLoading:c}=p(),m=c?"loading":i?"authenticated":"unauthenticated",{t:l}=g(),s=(a,r)=>l(`Home.${a}`,r),d=(a,r)=>l(`Footer.${a}`,r),t=x.useContext(j);return e.jsxs("div",{className:"flex flex-col min-h-screen",children:[e.jsx("main",{className:"flex-1 flex flex-col items-center justify-center p-24",role:"main",children:e.jsx("div",{className:"z-10 max-w-5xl text-sm",children:m==="loading"?e.jsx("div",{className:"text-center",children:e.jsx("p",{className:"text-gray-600 dark:text-gray-300",children:s("loading")})}):e.jsxs("div",{className:"text-center space-y-8",children:[e.jsxs("section",{"aria-labelledby":"hero-heading",className:"py-8",children:[e.jsx("h1",{id:"hero-heading",className:"sr-only",children:"Semiont - AI-Powered Research Platform"}),e.jsx(h,{t:s,size:"xl",animated:!0,className:"mb-8"}),e.jsx("p",{className:"text-xl text-gray-600 dark:text-gray-300 max-w-2xl mx-auto",children:s("description")})]}),e.jsx("div",{className:"flex gap-4 justify-center items-center flex-wrap",children:i?e.jsxs(e.Fragment,{children:[e.jsx(o,{to:"/know",className:n.primary.base,children:s("continueToKnowledgeBase")}),e.jsx(o,{to:"/about",className:n.secondary.base,children:s("learnMore")})]}):e.jsx(o,{to:"/auth/connect?callbackUrl=/know",className:n.primary.base,children:s("signIn")})})]})})}),e.jsx(u,{Link:N,routes:y,t:d,CookiePreferences:f,showPolicyLinks:!("__TAURI_INTERNALS__"in window),...(t==null?void 0:t.openKeyboardHelp)&&{onOpenKeyboardHelp:t.openKeyboardHelp}})]})}export{I as default};
|
|
2
|
-
//# sourceMappingURL=page-eJup0RrB.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"page-eJup0RrB.js","sources":["../../src/app/[locale]/page.tsx"],"sourcesContent":["import { useContext } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useAuth } from '@/hooks/useAuth';\nimport { Link } from '@/i18n/routing';\nimport { Footer, SemiontBranding, buttonStyles } 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 Home() {\n const { isAuthenticated, isLoading } = useAuth();\n const status = isLoading ? 'loading' : isAuthenticated ? 'authenticated' : 'unauthenticated';\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Home.${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 keyboardContext = useContext(KeyboardShortcutsContext);\n\n return (\n <div className=\"flex flex-col min-h-screen\">\n <main className=\"flex-1 flex flex-col items-center justify-center p-24\" role=\"main\">\n <div className=\"z-10 max-w-5xl text-sm\">\n {status === 'loading' ? (\n <div className=\"text-center\">\n <p className=\"text-gray-600 dark:text-gray-300\">{t('loading')}</p>\n </div>\n ) : (\n <div className=\"text-center space-y-8\">\n <section aria-labelledby=\"hero-heading\" className=\"py-8\">\n <h1 id=\"hero-heading\" className=\"sr-only\">Semiont - AI-Powered Research Platform</h1>\n <SemiontBranding\n t={t}\n size=\"xl\"\n animated={true}\n className=\"mb-8\"\n />\n <p className=\"text-xl text-gray-600 dark:text-gray-300 max-w-2xl mx-auto\">\n {t('description')}\n </p>\n </section>\n\n <div className=\"flex gap-4 justify-center items-center flex-wrap\">\n {isAuthenticated ? (\n <>\n <Link to=\"/know\" className={buttonStyles.primary.base}>\n {t('continueToKnowledgeBase')}\n </Link>\n <Link to=\"/about\" className={buttonStyles.secondary.base}>\n {t('learnMore')}\n </Link>\n </>\n ) : (\n <Link to=\"/auth/connect?callbackUrl=/know\" className={buttonStyles.primary.base}>\n {t('signIn')}\n </Link>\n )}\n </div>\n </div>\n )}\n </div>\n </main>\n\n <Footer\n Link={RoutingLink}\n routes={routes}\n t={tFooter}\n CookiePreferences={CookiePreferences}\n showPolicyLinks={!('__TAURI_INTERNALS__' in window)}\n {...(keyboardContext?.openKeyboardHelp && { onOpenKeyboardHelp: keyboardContext.openKeyboardHelp })}\n />\n </div>\n );\n}\n"],"names":["Home","isAuthenticated","isLoading","useAuth","status","_t","useTranslation","t","k","p","tFooter","keyboardContext","useContext","KeyboardShortcutsContext","jsxs","jsx","SemiontBranding","Fragment","Link","buttonStyles","Footer","RoutingLink","routes","CookiePreferences"],"mappings":"qdASA,SAAwBA,GAAO,CAC7B,KAAM,CAAE,gBAAAC,EAAiB,UAAAC,CAAA,EAAcC,EAAA,EACjCC,EAASF,EAAY,UAAYD,EAAkB,gBAAkB,kBACrE,CAAE,EAAGI,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,QAAQG,CAAC,GAAIC,CAAQ,EACxEC,EAAU,CAACF,EAAWC,IAAgCJ,EAAG,UAAUG,CAAC,GAAIC,CAAQ,EAChFE,EAAkBC,EAAAA,WAAWC,CAAwB,EAE3D,OACEC,EAAAA,KAAC,MAAA,CAAI,UAAU,6BACb,SAAA,CAAAC,EAAAA,IAAC,OAAA,CAAK,UAAU,wDAAwD,KAAK,OAC3E,SAAAA,EAAAA,IAAC,MAAA,CAAI,UAAU,yBACZ,SAAAX,IAAW,UACVW,EAAAA,IAAC,MAAA,CAAI,UAAU,cACb,SAAAA,MAAC,IAAA,CAAE,UAAU,mCAAoC,SAAAR,EAAE,SAAS,CAAA,CAAE,CAAA,CAChE,EAEAO,EAAAA,KAAC,MAAA,CAAI,UAAU,wBACb,SAAA,CAAAA,EAAAA,KAAC,UAAA,CAAQ,kBAAgB,eAAe,UAAU,OAChD,SAAA,CAAAC,MAAC,KAAA,CAAG,GAAG,eAAe,UAAU,UAAU,SAAA,yCAAsC,EAChFA,EAAAA,IAACC,EAAA,CACC,EAAAT,EACA,KAAK,KACL,SAAU,GACV,UAAU,MAAA,CAAA,QAEX,IAAA,CAAE,UAAU,6DACV,SAAAA,EAAE,aAAa,CAAA,CAClB,CAAA,EACF,EAEAQ,MAAC,MAAA,CAAI,UAAU,mDACZ,WACCD,EAAAA,KAAAG,WAAA,CACE,SAAA,CAAAF,EAAAA,IAACG,EAAA,CAAK,GAAG,QAAQ,UAAWC,EAAa,QAAQ,KAC9C,SAAAZ,EAAE,yBAAyB,CAAA,CAC9B,EACAQ,EAAAA,IAACG,EAAA,CAAK,GAAG,SAAS,UAAWC,EAAa,UAAU,KACjD,SAAAZ,EAAE,WAAW,CAAA,CAChB,CAAA,CAAA,CACF,EAEAQ,EAAAA,IAACG,EAAA,CAAK,GAAG,kCAAkC,UAAWC,EAAa,QAAQ,KACxE,SAAAZ,EAAE,QAAQ,CAAA,CACb,CAAA,CAEJ,CAAA,CAAA,CACF,EAEJ,EACF,EAEAQ,EAAAA,IAACK,EAAA,CACC,KAAMC,EACN,OAAAC,EACA,EAAGZ,EACH,kBAAAa,EACA,gBAAiB,EAAE,wBAAyB,QAC3C,IAAIZ,GAAA,YAAAA,EAAiB,mBAAoB,CAAE,mBAAoBA,EAAgB,gBAAA,CAAiB,CAAA,CACnG,EACF,CAEJ"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as d}from"./query-ATBhtd3K.js";import{r as i}from"./vendor-EnoIVk-c.js";import{d as u,e as g,f as W,g as f,Q as w,T as b}from"./en-IUV4ZXKH-b_r0oyRV.js";import{T as x}from"./ToolbarPanels-CtBfzYcP.js";import{u as T}from"./i18n-BYxb14hm.js";import"./index-dFCLrpeL.js";import"./useAuth-B9hvtwrc.js";import"./AuthContext-CqopYuY9.js";import"./routing-BPQO9e8a.js";import"./KnowledgeBaseContext-CgnF8K-_.js";import"./PlusIcon-qGFPUzg0.js";var v={"legal-irac":{id:"legal-irac",name:"Legal Analysis (IRAC)",description:"Issue, Rule, Application, Conclusion framework for legal reasoning",domain:"legal",tags:[{name:"Issue",description:"The legal question or problem to be resolved",examples:["What is the central legal question?","What must the court decide?","What is the dispute about?"]},{name:"Rule",description:"The relevant law, statute, or legal principle",examples:["What law applies?","What is the legal standard?","What statute governs this case?"]},{name:"Application",description:"How the rule applies to the specific facts",examples:["How does the law apply to these facts?","Analysis of the case","How do the facts satisfy the legal standard?"]},{name:"Conclusion",description:"The resolution or outcome based on the analysis",examples:["What is the court's decision?","What is the final judgment?","What is the holding?"]}]},"scientific-imrad":{id:"scientific-imrad",name:"Scientific Paper (IMRAD)",description:"Introduction, Methods, Results, Discussion structure for research papers",domain:"scientific",tags:[{name:"Introduction",description:"Background, context, and research question",examples:["What is the research question?","Why is this important?","What is the hypothesis?"]},{name:"Methods",description:"Experimental design and procedures",examples:["How was the study conducted?","What methods were used?","What was the experimental design?"]},{name:"Results",description:"Findings and observations",examples:["What did the study find?","What are the data?","What were the observations?"]},{name:"Discussion",description:"Interpretation and implications of results",examples:["What do the results mean?","What are the implications?","How do these findings relate to prior work?"]}]},"argument-toulmin":{id:"argument-toulmin",name:"Argument Structure (Toulmin)",description:"Claim, Evidence, Warrant, Counterargument, Rebuttal framework for argumentation",domain:"general",tags:[{name:"Claim",description:"The main assertion or thesis",examples:["What is being argued?","What is the main point?","What position is being taken?"]},{name:"Evidence",description:"Data or facts supporting the claim",examples:["What supports this claim?","What are the facts?","What data is provided?"]},{name:"Warrant",description:"Reasoning connecting evidence to claim",examples:["Why does this evidence support the claim?","What is the logic?","How does this reasoning work?"]},{name:"Counterargument",description:"Opposing viewpoints or objections",examples:["What are the objections?","What do critics say?","What are alternative views?"]},{name:"Rebuttal",description:"Response to counterarguments",examples:["How is the objection addressed?","Why is the counterargument wrong?","How is the criticism answered?"]}]}};function y(){return Object.values(v)}function P(){const{t:n}=T(),e=(t,p)=>n(`ModerateTagSchemas.${t}`,p),{activePanel:o}=u(),{theme:r,setTheme:a}=g(),{showLineNumbers:c,toggleLineNumbers:s}=W(),l=i.useCallback(({theme:t})=>{a(t)},[a]),h=i.useCallback(()=>{s()},[s]);f({"settings:theme-changed":l,"settings:line-numbers-toggled":h});const m=y();return d.jsx(w,{schemas:m,isLoading:!1,theme:r,showLineNumbers:c,activePanel:o,translations:{pageTitle:e("pageTitle"),pageDescription:e("pageDescription"),categories:e("categories"),loading:e("loading")},ToolbarPanels:x,Toolbar:b})}export{P as default};
|
|
2
|
-
//# sourceMappingURL=page-qhHVLOTR.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as l}from"./query-ATBhtd3K.js";import{r as c}from"./vendor-EnoIVk-c.js";import{a as m}from"./routing-BPQO9e8a.js";import{ag as C,ah as S,ai as b,aj as O}from"./en-IUV4ZXKH-b_r0oyRV.js";import{u as v}from"./i18n-BYxb14hm.js";function E({isOpen:e,onClose:t}){const o=m(),{t:n}=v(),s=(r,a)=>n(`Search.${r}`,a),i=(r,a)=>{r==="resource"?o.push(`/know/resource/${encodeURIComponent(a)}`):o.push(`/know/entity/${a}`)};return l.jsx(C,{isOpen:e,onClose:t,onNavigate:i,translations:{placeholder:s("placeholder"),searching:s("searching"),noResults:s("noResults"),startTyping:s("startTyping"),navigate:s("navigate"),select:s("select"),close:s("close"),enter:s("enter"),esc:s("esc")}})}const T=c.createContext(null);function U({children:e}){const t=m(),[o,n]=c.useState(!1),[s,i]=c.useState(!1),[r,a]=c.useState([]),u=c.useCallback(()=>{n(!0)},[]),f=c.useCallback(()=>{i(!0)},[]),h=c.useCallback(()=>{n(!1),i(!1),r.forEach(w=>w()),a([])},[r]);S([{key:"k",ctrlOrCmd:!0,handler:()=>{u()},description:"Open global search"},{key:"n",ctrlOrCmd:!0,handler:()=>{t.push("/know/compose")},description:"Create new resource"},{key:"/",handler:()=>{u()},description:"Open global search (alternative)"},{key:"?",shift:!0,handler:()=>{f()},description:"Show keyboard shortcuts help"}]),b("Escape",h,300);const k={openGlobalSearch:u,openKeyboardHelp:f,closeAllOverlays:h};return l.jsxs(T.Provider,{value:k,children:[e,o&&l.jsx(E,{isOpen:o,onClose:()=>n(!1)}),s&&l.jsx(O,{isOpen:s,onClose:()=>i(!1)})]})}const x=[{id:"necessary",name:"Strictly Necessary",description:"These cookies are essential for the website to function properly. They enable core functionality such as security, network management, and accessibility.",required:!0,cookies:["semiont-token","consent-preferences"]},{id:"analytics",name:"Analytics",description:"These cookies help us understand how visitors interact with our website by collecting and reporting information anonymously.",required:!1,cookies:["_ga","_ga_*","_gid","_gat","lighthouse-*"]},{id:"marketing",name:"Marketing",description:"These cookies are used to track visitors across websites to display relevant advertisements and measure campaign effectiveness.",required:!1,cookies:["_fbp","_fbc","fr","ads-*"]},{id:"preferences",name:"Preferences",description:"These cookies remember your choices and preferences to provide a more personalized experience.",required:!1,cookies:["theme-preference","language-preference","ui-settings"]}],p="1.0",g="semiont-cookie-consent",_={necessary:!0,analytics:!1,marketing:!1,preferences:!1,timestamp:new Date().toISOString(),version:p},A=e=>{typeof window>"u"||x.forEach(t=>{if(t.required)return;e[t.id]||t.cookies.forEach(n=>{if(n.includes("*")){const s=n.replace("*","");document.cookie.split(";").forEach(i=>{var a;const r=(a=i.split("=")[0])==null?void 0:a.trim();r&&r.startsWith(s)&&d(r)})}else d(n)})})},d=e=>{document.cookie=`${e}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/`,document.cookie=`${e}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/; domain=${window.location.hostname}`;const t=window.location.hostname.split(".").slice(-2).join(".");document.cookie=`${e}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/; domain=.${t}`},I=()=>{if(typeof window>"u")return null;try{const e=localStorage.getItem(g);if(!e)return null;const t=JSON.parse(e);return t.version!==p?null:t}catch(e){return console.warn("Failed to parse cookie consent:",e),null}},j=e=>{if(typeof window>"u")return;const t={..._,...e,necessary:!0,timestamp:new Date().toISOString(),version:p};try{localStorage.setItem(g,JSON.stringify(t)),A(t),window.dispatchEvent(new CustomEvent("cookieConsentChanged",{detail:t}))}catch(o){console.error("Failed to save cookie consent:",o)}},D=()=>{const e=I();if(!e)return!1;const t=new Date(e.timestamp),o=new Date;return o.setMonth(o.getMonth()-13),t>o},G=()=>typeof window>"u"?!1:!D(),y=async()=>{try{const e=Intl.DateTimeFormat().resolvedOptions().timeZone;return e.includes("Europe/")?"EU":e.includes("America/Los_Angeles")||e.includes("America/Vancouver")?"CA":e.includes("America/")?"US":"OTHER"}catch{return"OTHER"}},H=async()=>await y()==="CA",P=async()=>await y()==="EU",q=()=>{if(typeof window>"u")return{};const e={};document.cookie.split(";").forEach(t=>{const[o,n]=t.trim().split("=");o&&n&&(e[`cookie_${o}`]=decodeURIComponent(n))});for(let t=0;t<localStorage.length;t++){const o=localStorage.key(t);o&&(e[`localStorage_${o}`]=localStorage.getItem(o)||"")}for(let t=0;t<sessionStorage.length;t++){const o=sessionStorage.key(t);o&&(e[`sessionStorage_${o}`]=sessionStorage.getItem(o)||"")}return e},J=()=>{typeof window>"u"||(localStorage.clear(),sessionStorage.clear(),document.cookie.split(";").forEach(e=>{var o;const t=(o=e.split("=")[0])==null?void 0:o.trim();t&&d(t)}),window.location.reload())};export{x as C,T as K,U as a,G as b,H as c,J as d,q as e,I as g,P as i,j as s};
|
|
2
|
-
//# sourceMappingURL=privacy-BMKdYFGC.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as m}from"./query-ATBhtd3K.js";import{R as f,a as c,L as g,b as L,c as p}from"./vendor-EnoIVk-c.js";import{D as o,i as h}from"./index-dFCLrpeL.js";import{u}from"./i18n-BYxb14hm.js";const k=f.forwardRef(function({to:a,...n},s){const{i18n:t}=u(),e=c(),l=t.language||e.locale||o,i=typeof a=="string"?`/${l}${a.startsWith("/")?a:`/${a}`}`:a;return m.jsx(g,{ref:s,to:i,...n})});function w(){const r=L(),{i18n:a}=u(),n=c();function s(t,e){return`/${e||a.language||n.locale||o}${t.startsWith("/")?t:`/${t}`}`}return{push(t,e){r(s(t,e==null?void 0:e.locale))},replace(t,e){r(s(t,e==null?void 0:e.locale),{replace:!0})},back(){r(-1)},forward(){r(1)},refresh(){window.location.reload()},prefetch(t){}}}function b(){const{pathname:r}=p(),a=r.match(/^\/[a-z]{2}(\/.*)?$/);return a?a[1]??"/":r}function j(){const r=c(),{i18n:a}=u(),n=r.locale;return n&&h(n)?n:a.language||o}export{k as L,w as a,b,j as u};
|
|
2
|
-
//# sourceMappingURL=routing-BPQO9e8a.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./vendor-EnoIVk-c.js";import{u as m}from"./AuthContext-CqopYuY9.js";function r(){const{session:a,isLoading:n}=m();return e.useMemo(()=>{var o,l;const i=!!a,t=(a==null?void 0:a.user)??null;return{session:a,user:t,backendUser:t,token:(a==null?void 0:a.token)??null,isLoading:n,isAuthenticated:i,hasValidBackendToken:!!(a!=null&&a.token),isFullyAuthenticated:i,userDomain:(t==null?void 0:t.domain)||((o=t==null?void 0:t.email)==null?void 0:o.split("@")[1]),displayName:(t==null?void 0:t.name)??((l=t==null?void 0:t.email)==null?void 0:l.split("@")[0])??"User",avatarUrl:(t==null?void 0:t.image)??null,isAdmin:(t==null?void 0:t.isAdmin)??!1,isModerator:(t==null?void 0:t.isModerator)??!1}},[a,n])}export{r as u};
|
|
2
|
-
//# sourceMappingURL=useAuth-B9hvtwrc.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useAuth-B9hvtwrc.js","sources":["../../src/hooks/useAuth.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { useAuthContext } from '@/contexts/AuthContext';\n\n/**\n * Enhanced authentication hook\n */\nexport function useAuth() {\n const { session, isLoading } = useAuthContext();\n\n return useMemo(() => {\n const isAuthenticated = !!session;\n const user = session?.user ?? null;\n\n return {\n session,\n user,\n backendUser: user,\n token: session?.token ?? null,\n\n isLoading,\n isAuthenticated,\n hasValidBackendToken: !!session?.token,\n isFullyAuthenticated: isAuthenticated,\n\n userDomain: user?.domain || user?.email?.split('@')[1],\n displayName: user?.name ?? user?.email?.split('@')[0] ?? 'User',\n avatarUrl: user?.image ?? null,\n isAdmin: user?.isAdmin ?? false,\n isModerator: user?.isModerator ?? false,\n };\n }, [session, isLoading]);\n}\n\n/**\n * Hook for getting user preferences and settings\n */\nexport function useUserPreferences() {\n return useMemo(() => ({\n theme: 'system' as 'light' | 'dark' | 'system',\n language: 'en',\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,\n emailNotifications: true,\n }), []);\n}\n\n/**\n * Hook for checking user permissions\n */\nexport function usePermissions() {\n const { isFullyAuthenticated, backendUser } = useAuth();\n\n return useMemo(() => {\n if (!isFullyAuthenticated || !backendUser) {\n return { canRead: false, canWrite: false, canAdmin: false, canManageUsers: false };\n }\n return { canRead: true, canWrite: true, canAdmin: false, canManageUsers: false };\n }, [backendUser, isFullyAuthenticated]);\n}\n"],"names":["useAuth","session","isLoading","useAuthContext","useMemo","isAuthenticated","user","_a","_b"],"mappings":"uFAMO,SAASA,GAAU,CACxB,KAAM,CAAE,QAAAC,EAAS,UAAAC,CAAA,EAAcC,EAAA,EAE/B,OAAOC,EAAAA,QAAQ,IAAM,SACnB,MAAMC,EAAkB,CAAC,CAACJ,EACpBK,GAAOL,GAAA,YAAAA,EAAS,OAAQ,KAE9B,MAAO,CACL,QAAAA,EACA,KAAAK,EACA,YAAaA,EACb,OAAOL,GAAA,YAAAA,EAAS,QAAS,KAEzB,UAAAC,EACA,gBAAAG,EACA,qBAAsB,CAAC,EAACJ,GAAA,MAAAA,EAAS,OACjC,qBAAsBI,EAEtB,YAAYC,GAAA,YAAAA,EAAM,WAAUC,EAAAD,GAAA,YAAAA,EAAM,QAAN,YAAAC,EAAa,MAAM,KAAK,IACpD,aAAaD,GAAA,YAAAA,EAAM,SAAQE,EAAAF,GAAA,YAAAA,EAAM,QAAN,YAAAE,EAAa,MAAM,KAAK,KAAM,OACzD,WAAWF,GAAA,YAAAA,EAAM,QAAS,KAC1B,SAASA,GAAA,YAAAA,EAAM,UAAW,GAC1B,aAAaA,GAAA,YAAAA,EAAM,cAAe,EAAA,CAEtC,EAAG,CAACL,EAASC,CAAS,CAAC,CACzB"}
|