@semiont/cli 0.5.8 → 0.5.9

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.
Files changed (81) hide show
  1. package/dist/cli.mjs +27 -21
  2. package/dist/frontend/dist/assets/{CookiePreferences-C6e8MFlf.js → CookiePreferences-CwQNSYq4.js} +2 -2
  3. package/dist/frontend/dist/assets/{CookiePreferences-C6e8MFlf.js.map → CookiePreferences-CwQNSYq4.js.map} +1 -1
  4. package/dist/frontend/dist/assets/{KeyboardShortcutsContext-DA7BzKws.js → KeyboardShortcutsContext-CfYRiurd.js} +2 -2
  5. package/dist/frontend/dist/assets/{KeyboardShortcutsContext-DA7BzKws.js.map → KeyboardShortcutsContext-CfYRiurd.js.map} +1 -1
  6. package/dist/frontend/dist/assets/{PdfAnnotationCanvas.client-U4EVBZEV-DckcWLqH.js → PdfAnnotationCanvas.client-U4EVBZEV-hNsmZuyz.js} +2 -2
  7. package/dist/frontend/dist/assets/{PdfAnnotationCanvas.client-U4EVBZEV-DckcWLqH.js.map → PdfAnnotationCanvas.client-U4EVBZEV-hNsmZuyz.js.map} +1 -1
  8. package/dist/frontend/dist/assets/{ToolbarPanels-Caol-m4o.js → ToolbarPanels-DhP2342d.js} +2 -2
  9. package/dist/frontend/dist/assets/{ToolbarPanels-Caol-m4o.js.map → ToolbarPanels-DhP2342d.js.map} +1 -1
  10. package/dist/frontend/dist/assets/{client-DRRNiKHE.js → client-3m7lyOF-.js} +2 -2
  11. package/dist/frontend/dist/assets/{client-DRRNiKHE.js.map → client-3m7lyOF-.js.map} +1 -1
  12. package/dist/frontend/dist/assets/{client-B9jbkzjQ.js → client-B-MhGs0Z.js} +2 -2
  13. package/dist/frontend/dist/assets/{client-B9jbkzjQ.js.map → client-B-MhGs0Z.js.map} +1 -1
  14. package/dist/frontend/dist/assets/{client-BGst9qK6.js → client-CSwC62BQ.js} +2 -2
  15. package/dist/frontend/dist/assets/{client-BGst9qK6.js.map → client-CSwC62BQ.js.map} +1 -1
  16. package/dist/frontend/dist/assets/{client-C-rY9Drq.js → client-sNRwAXfy.js} +2 -2
  17. package/dist/frontend/dist/assets/{client-C-rY9Drq.js.map → client-sNRwAXfy.js.map} +1 -1
  18. package/dist/frontend/dist/assets/{en-RBN2GUHF-5X5KFFJI.js → en-RBN2GUHF-Bbg1LCI1.js} +1 -1
  19. package/dist/frontend/dist/assets/index-Cx0aNta6.css +1 -0
  20. package/dist/frontend/dist/assets/{index-CbpNJW-y.js → index-D2LrA6v6.js} +54 -54
  21. package/dist/frontend/dist/assets/index-D2LrA6v6.js.map +1 -0
  22. package/dist/frontend/dist/assets/{layout-BVgMTlxy.js → layout--kttJwjx.js} +2 -2
  23. package/dist/frontend/dist/assets/{layout-BVgMTlxy.js.map → layout--kttJwjx.js.map} +1 -1
  24. package/dist/frontend/dist/assets/{layout-V92O6bHB.js → layout-CIBMGRGg.js} +2 -2
  25. package/dist/frontend/dist/assets/{layout-V92O6bHB.js.map → layout-CIBMGRGg.js.map} +1 -1
  26. package/dist/frontend/dist/assets/{layout-DZz4A-DV.js → layout-ChjT2XMf.js} +2 -2
  27. package/dist/frontend/dist/assets/{layout-DZz4A-DV.js.map → layout-ChjT2XMf.js.map} +1 -1
  28. package/dist/frontend/dist/assets/{layout-B4xpEvfH.js → layout-DTOSfecO.js} +2 -2
  29. package/dist/frontend/dist/assets/{layout-B4xpEvfH.js.map → layout-DTOSfecO.js.map} +1 -1
  30. package/dist/frontend/dist/assets/{not-found-CNqSuHBN.js → not-found-CkW7yXCZ.js} +2 -2
  31. package/dist/frontend/dist/assets/{not-found-CNqSuHBN.js.map → not-found-CkW7yXCZ.js.map} +1 -1
  32. package/dist/frontend/dist/assets/{page-8rFUHjpC.js → page-10-2WEh9.js} +2 -2
  33. package/dist/frontend/dist/assets/{page-8rFUHjpC.js.map → page-10-2WEh9.js.map} +1 -1
  34. package/dist/frontend/dist/assets/{page-L2JSv5Kk.js → page-B2YCNfqB.js} +2 -2
  35. package/dist/frontend/dist/assets/{page-L2JSv5Kk.js.map → page-B2YCNfqB.js.map} +1 -1
  36. package/dist/frontend/dist/assets/{page-DQ2A_snw2.js → page-BSoOqqDp2.js} +2 -2
  37. package/dist/frontend/dist/assets/{page-DQ2A_snw2.js.map → page-BSoOqqDp2.js.map} +1 -1
  38. package/dist/frontend/dist/assets/{page-CVt3BWqf.js → page-Bk28sWf5.js} +2 -2
  39. package/dist/frontend/dist/assets/{page-CVt3BWqf.js.map → page-Bk28sWf5.js.map} +1 -1
  40. package/dist/frontend/dist/assets/{page-BAWsRRtn.js → page-BkM7uTwY.js} +2 -2
  41. package/dist/frontend/dist/assets/{page-BAWsRRtn.js.map → page-BkM7uTwY.js.map} +1 -1
  42. package/dist/frontend/dist/assets/{page-X3Zx2YlR.js → page-BmB9iWba.js} +2 -2
  43. package/dist/frontend/dist/assets/{page-X3Zx2YlR.js.map → page-BmB9iWba.js.map} +1 -1
  44. package/dist/frontend/dist/assets/{page-BD9mtU5B.js → page-Bn2RYSD3.js} +2 -2
  45. package/dist/frontend/dist/assets/{page-BD9mtU5B.js.map → page-Bn2RYSD3.js.map} +1 -1
  46. package/dist/frontend/dist/assets/{page-DbBivSvQ.js → page-BnjWmDsM.js} +2 -2
  47. package/dist/frontend/dist/assets/{page-DbBivSvQ.js.map → page-BnjWmDsM.js.map} +1 -1
  48. package/dist/frontend/dist/assets/{page-fAWusbsJ.js → page-ByOTWnuA.js} +2 -2
  49. package/dist/frontend/dist/assets/{page-fAWusbsJ.js.map → page-ByOTWnuA.js.map} +1 -1
  50. package/dist/frontend/dist/assets/{page-DuAK_EQ9.js → page-CC4n7boQ.js} +2 -2
  51. package/dist/frontend/dist/assets/{page-DuAK_EQ9.js.map → page-CC4n7boQ.js.map} +1 -1
  52. package/dist/frontend/dist/assets/{page-CjLt-Qwp.js → page-CNQxEyNO.js} +2 -2
  53. package/dist/frontend/dist/assets/{page-CjLt-Qwp.js.map → page-CNQxEyNO.js.map} +1 -1
  54. package/dist/frontend/dist/assets/{page-BKhbEaHw.js → page-CQvf9PwP.js} +2 -2
  55. package/dist/frontend/dist/assets/{page-BKhbEaHw.js.map → page-CQvf9PwP.js.map} +1 -1
  56. package/dist/frontend/dist/assets/{page-DMQFfFQT.js → page-CVsMMJ4D.js} +2 -2
  57. package/dist/frontend/dist/assets/{page-DMQFfFQT.js.map → page-CVsMMJ4D.js.map} +1 -1
  58. package/dist/frontend/dist/assets/{page-qJrUTCZM.js → page-CW6-9F9w.js} +2 -2
  59. package/dist/frontend/dist/assets/{page-qJrUTCZM.js.map → page-CW6-9F9w.js.map} +1 -1
  60. package/dist/frontend/dist/assets/{page-CwNoPSw6.js → page-D4PdxwPW.js} +2 -2
  61. package/dist/frontend/dist/assets/{page-CwNoPSw6.js.map → page-D4PdxwPW.js.map} +1 -1
  62. package/dist/frontend/dist/assets/{page-D5QnKqPV.js → page-DE5OCneW.js} +2 -2
  63. package/dist/frontend/dist/assets/{page-D5QnKqPV.js.map → page-DE5OCneW.js.map} +1 -1
  64. package/dist/frontend/dist/assets/{page-DNQqAPOQ.js → page-aP22HQnz.js} +2 -2
  65. package/dist/frontend/dist/assets/{page-DNQqAPOQ.js.map → page-aP22HQnz.js.map} +1 -1
  66. package/dist/frontend/dist/assets/{page-Ldhs1vUL.js → page-ps7dwO8y.js} +2 -2
  67. package/dist/frontend/dist/assets/{page-Ldhs1vUL.js.map → page-ps7dwO8y.js.map} +1 -1
  68. package/dist/frontend/dist/assets/{pdf-CwMC2fAS.js → pdf-CHHhr2g_.js} +2 -2
  69. package/dist/frontend/dist/assets/{pdf-CwMC2fAS.js.map → pdf-CHHhr2g_.js.map} +1 -1
  70. package/dist/frontend/dist/assets/{routing-KL8m6eQk.js → routing-D3tVcFuL.js} +2 -2
  71. package/dist/frontend/dist/assets/{routing-KL8m6eQk.js.map → routing-D3tVcFuL.js.map} +1 -1
  72. package/dist/frontend/dist/assets/{routing-B7nppFJ0.js → routing-GE3qy379.js} +2 -2
  73. package/dist/frontend/dist/assets/{routing-B7nppFJ0.js.map → routing-GE3qy379.js.map} +1 -1
  74. package/dist/frontend/dist/assets/{web-DZNfAXJ8.js → web-k3l0Woeo.js} +2 -2
  75. package/dist/frontend/dist/assets/web-k3l0Woeo.js.map +1 -0
  76. package/dist/frontend/dist/index.html +2 -2
  77. package/dist/frontend/package.json +1 -1
  78. package/package.json +8 -8
  79. package/dist/frontend/dist/assets/index-C6By-chD.css +0 -1
  80. package/dist/frontend/dist/assets/index-CbpNJW-y.js.map +0 -1
  81. package/dist/frontend/dist/assets/web-DZNfAXJ8.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"page-D5QnKqPV.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
+ {"version":3,"file":"page-DE5OCneW.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{n as e}from"./rolldown-runtime-Bh1tDfsg.js";import{i as t,t as n}from"./i18n-X0oNIUcF.js";import{t as r}from"./vendor-Bd-5Ya9C.js";import{B as i,J as a,N as o,Q as s,Z as c,l,nt as u,rt as d,st as f,tt as p}from"./index-CbpNJW-y.js";import{t as m}from"./ToolbarPanels-Caol-m4o.js";var h=e(t()),g=r();function _(){let{t:e}=n(),t=(t,n)=>e(`ModerateEntityTags.${t}`,n),r=s(f().activeSession$)?.client,_=p(),v=u(()=>i(r,_)),y=s(v.browse.activePanel$)??null,b=s(v.entityTypes$)??[],x=s(v.isLoading$)??!0,S=s(v.newTag$)??``,C=s(v.error$)??``,w=s(v.isAdding$)??!1,{theme:T,setTheme:E}=d(),{showLineNumbers:D,toggleLineNumbers:O}=c();return a({"settings:theme-changed":(0,h.useCallback)(({theme:e})=>E(e),[E]),"settings:line-numbers-toggled":(0,h.useCallback)(()=>O(),[O])}),x?(0,g.jsx)(`div`,{className:`flex items-center justify-center py-20`,children:(0,g.jsx)(`p`,{className:`text-gray-600 dark:text-gray-300`,children:t(`loading`)})}):(0,g.jsx)(l,{entityTypes:b,isLoading:x,error:C,newTag:S,onNewTagChange:v.setNewTag,onAddTag:v.addTag,isAddingTag:w,theme:T,showLineNumbers:D,activePanel:y,translations:{pageTitle:t(`pageTitle`),pageDescription:t(`pageDescription`),sectionTitle:t(`sectionTitle`),sectionDescription:t(`sectionDescription`),inputPlaceholder:t(`inputPlaceholder`),addTag:t(`addTag`),adding:t(`adding`)},ToolbarPanels:m,Toolbar:o})}export{_ as default};
2
- //# sourceMappingURL=page-DNQqAPOQ.js.map
1
+ import{n as e}from"./rolldown-runtime-Bh1tDfsg.js";import{i as t,t as n}from"./i18n-X0oNIUcF.js";import{t as r}from"./vendor-Bd-5Ya9C.js";import{B as i,J as a,N as o,Q as s,Z as c,l,nt as u,rt as d,st as f,tt as p}from"./index-D2LrA6v6.js";import{t as m}from"./ToolbarPanels-DhP2342d.js";var h=e(t()),g=r();function _(){let{t:e}=n(),t=(t,n)=>e(`ModerateEntityTags.${t}`,n),r=s(f().activeSession$)?.client,_=p(),v=u(()=>i(r,_)),y=s(v.browse.activePanel$)??null,b=s(v.entityTypes$)??[],x=s(v.isLoading$)??!0,S=s(v.newTag$)??``,C=s(v.error$)??``,w=s(v.isAdding$)??!1,{theme:T,setTheme:E}=d(),{showLineNumbers:D,toggleLineNumbers:O}=c();return a({"settings:theme-changed":(0,h.useCallback)(({theme:e})=>E(e),[E]),"settings:line-numbers-toggled":(0,h.useCallback)(()=>O(),[O])}),x?(0,g.jsx)(`div`,{className:`flex items-center justify-center py-20`,children:(0,g.jsx)(`p`,{className:`text-gray-600 dark:text-gray-300`,children:t(`loading`)})}):(0,g.jsx)(l,{entityTypes:b,isLoading:x,error:C,newTag:S,onNewTagChange:v.setNewTag,onAddTag:v.addTag,isAddingTag:w,theme:T,showLineNumbers:D,activePanel:y,translations:{pageTitle:t(`pageTitle`),pageDescription:t(`pageDescription`),sectionTitle:t(`sectionTitle`),sectionDescription:t(`sectionDescription`),inputPlaceholder:t(`inputPlaceholder`),addTag:t(`addTag`),adding:t(`adding`)},ToolbarPanels:m,Toolbar:o})}export{_ as default};
2
+ //# sourceMappingURL=page-aP22HQnz.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-DNQqAPOQ.js","names":[],"sources":["../../src/app/[locale]/moderate/entity-tags/page.tsx"],"sourcesContent":["import { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport {\n Toolbar,\n useTheme,\n useShellStateUnit,\n useObservable,\n useLineNumbers,\n useEventSubscriptions,\n useSemiont,\n useStateUnit,\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 client = useObservable(useSemiont().activeSession$)?.client;\n\n const browseStateUnit = useShellStateUnit();\n const stateUnit = useStateUnit(() => createEntityTagsStateUnit(client!, browseStateUnit));\n\n const activePanel = useObservable(stateUnit.browse.activePanel$) ?? null;\n const entityTypes = useObservable(stateUnit.entityTypes$) ?? [];\n const isLoading = useObservable(stateUnit.isLoading$) ?? true;\n const newTag = useObservable(stateUnit.newTag$) ?? '';\n const error = useObservable(stateUnit.error$) ?? '';\n const isAddingTag = useObservable(stateUnit.isAdding$) ?? false;\n\n const { theme, setTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n\n useEventSubscriptions({\n 'settings:theme-changed': useCallback(({ theme }: { theme: 'light' | 'dark' | 'system' }) => setTheme(theme), [setTheme]),\n 'settings:line-numbers-toggled': useCallback(() => toggleLineNumbers(), [toggleLineNumbers]),\n });\n\n 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 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 showLineNumbers={showLineNumbers}\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":"mTAgBA,SAAwB,GAAwB,CAC9C,GAAM,CAAE,EAAG,GAAO,EAAe,EAC3B,GAAK,EAAW,IAAgC,EAAG,sBAAsB,IAAK,CAAQ,EACtF,EAAS,EAAc,EAAW,EAAE,cAAc,GAAG,OAErD,EAAkB,EAAkB,EACpC,EAAY,MAAmB,EAA0B,EAAS,CAAe,CAAC,EAElF,EAAc,EAAc,EAAU,OAAO,YAAY,GAAK,KAC9D,EAAc,EAAc,EAAU,YAAY,GAAK,CAAC,EACxD,EAAY,EAAc,EAAU,UAAU,GAAK,GACnD,EAAS,EAAc,EAAU,OAAO,GAAK,GAC7C,EAAQ,EAAc,EAAU,MAAM,GAAK,GAC3C,EAAc,EAAc,EAAU,SAAS,GAAK,GAEpD,CAAE,QAAO,YAAa,EAAS,EAC/B,CAAE,kBAAiB,qBAAsB,EAAe,EAe9D,OAbA,EAAsB,CACpB,0BAAA,EAAA,EAAA,cAAuC,CAAE,WAAoD,EAAS,CAAK,EAAG,CAAC,CAAQ,CAAC,EACxH,iCAAA,EAAA,EAAA,iBAAmD,EAAkB,EAAG,CAAC,CAAiB,CAAC,CAC7F,CAAC,EAEG,GAEA,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,mDACb,EAAA,EAAA,KAAC,IAAD,CAAG,UAAU,4CAAoC,EAAE,SAAS,CAAK,CAAA,CAC9D,CAAA,GAKP,EAAA,EAAA,KAAC,EAAD,CACe,cACF,YACJ,QACC,SACR,eAAgB,EAAU,UAC1B,SAAU,EAAU,OACP,cACN,QACU,kBACJ,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,CAEL"}
1
+ {"version":3,"file":"page-aP22HQnz.js","names":[],"sources":["../../src/app/[locale]/moderate/entity-tags/page.tsx"],"sourcesContent":["import { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport {\n Toolbar,\n useTheme,\n useShellStateUnit,\n useObservable,\n useLineNumbers,\n useEventSubscriptions,\n useSemiont,\n useStateUnit,\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 client = useObservable(useSemiont().activeSession$)?.client;\n\n const browseStateUnit = useShellStateUnit();\n const stateUnit = useStateUnit(() => createEntityTagsStateUnit(client!, browseStateUnit));\n\n const activePanel = useObservable(stateUnit.browse.activePanel$) ?? null;\n const entityTypes = useObservable(stateUnit.entityTypes$) ?? [];\n const isLoading = useObservable(stateUnit.isLoading$) ?? true;\n const newTag = useObservable(stateUnit.newTag$) ?? '';\n const error = useObservable(stateUnit.error$) ?? '';\n const isAddingTag = useObservable(stateUnit.isAdding$) ?? false;\n\n const { theme, setTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n\n useEventSubscriptions({\n 'settings:theme-changed': useCallback(({ theme }: { theme: 'light' | 'dark' | 'system' }) => setTheme(theme), [setTheme]),\n 'settings:line-numbers-toggled': useCallback(() => toggleLineNumbers(), [toggleLineNumbers]),\n });\n\n 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 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 showLineNumbers={showLineNumbers}\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":"mTAgBA,SAAwB,GAAwB,CAC9C,GAAM,CAAE,EAAG,GAAO,EAAe,EAC3B,GAAK,EAAW,IAAgC,EAAG,sBAAsB,IAAK,CAAQ,EACtF,EAAS,EAAc,EAAW,EAAE,cAAc,GAAG,OAErD,EAAkB,EAAkB,EACpC,EAAY,MAAmB,EAA0B,EAAS,CAAe,CAAC,EAElF,EAAc,EAAc,EAAU,OAAO,YAAY,GAAK,KAC9D,EAAc,EAAc,EAAU,YAAY,GAAK,CAAC,EACxD,EAAY,EAAc,EAAU,UAAU,GAAK,GACnD,EAAS,EAAc,EAAU,OAAO,GAAK,GAC7C,EAAQ,EAAc,EAAU,MAAM,GAAK,GAC3C,EAAc,EAAc,EAAU,SAAS,GAAK,GAEpD,CAAE,QAAO,YAAa,EAAS,EAC/B,CAAE,kBAAiB,qBAAsB,EAAe,EAe9D,OAbA,EAAsB,CACpB,0BAAA,EAAA,EAAA,cAAuC,CAAE,WAAoD,EAAS,CAAK,EAAG,CAAC,CAAQ,CAAC,EACxH,iCAAA,EAAA,EAAA,iBAAmD,EAAkB,EAAG,CAAC,CAAiB,CAAC,CAC7F,CAAC,EAEG,GAEA,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,mDACb,EAAA,EAAA,KAAC,IAAD,CAAG,UAAU,4CAAoC,EAAE,SAAS,CAAK,CAAA,CAC9D,CAAA,GAKP,EAAA,EAAA,KAAC,EAAD,CACe,cACF,YACJ,QACC,SACR,eAAgB,EAAU,UAC1B,SAAU,EAAU,OACP,cACN,QACU,kBACJ,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,CAEL"}
@@ -1,2 +1,2 @@
1
- import{n as e}from"./rolldown-runtime-Bh1tDfsg.js";import{i as t}from"./i18n-X0oNIUcF.js";import{t as n}from"./vendor-Bd-5Ya9C.js";import{C as r,H as i,Pt as a,Q as o,S as s,cn as c,nt as l,st as u,x as d}from"./index-CbpNJW-y.js";import{t as f}from"./ToolbarPanels-Caol-m4o.js";import{n as p}from"./routing-B7nppFJ0.js";import{n as m,t as h}from"./routing-KL8m6eQk.js";var g=e(t()),_=n();function v(){let e=a(c()?.id);return(0,_.jsx)(y,{rId:e},e)}function y({rId:e}){let t=p(),n=o(u().activeSession$),c=o(n?.streamState$)??`initial`,v=n?.kb??null,y=n?.client,b=l(()=>i(y,e)),x=o(b.resource$),S=o(b.isLoading$)??!0;(0,g.useEffect)(()=>{!S&&!x&&console.error(`[Document] Resource ${e} not found`)},[S,e,x]);let C=(0,g.useCallback)(async()=>{b.invalidate()},[b]);if(S)return(0,_.jsx)(s,{});if(!x)return(0,_.jsx)(d,{error:Error(`Resource ${e} not found`),onRetry:C});let w=x;return(0,_.jsx)(r,{resource:w,rUri:a(w[`@id`]),locale:t,Link:h,routes:m,ToolbarPanels:f,refetchDocument:C,streamStatus:c,knowledgeBaseName:v?.label})}export{v as default};
2
- //# sourceMappingURL=page-Ldhs1vUL.js.map
1
+ import{n as e}from"./rolldown-runtime-Bh1tDfsg.js";import{i as t}from"./i18n-X0oNIUcF.js";import{t as n}from"./vendor-Bd-5Ya9C.js";import{C as r,H as i,Pt as a,Q as o,S as s,cn as c,nt as l,st as u,x as d}from"./index-D2LrA6v6.js";import{t as f}from"./ToolbarPanels-DhP2342d.js";import{n as p}from"./routing-GE3qy379.js";import{n as m,t as h}from"./routing-D3tVcFuL.js";var g=e(t()),_=n();function v(){let e=a(c()?.id);return(0,_.jsx)(y,{rId:e},e)}function y({rId:e}){let t=p(),n=o(u().activeSession$),c=o(n?.streamState$)??`initial`,v=n?.kb??null,y=n?.client,b=l(()=>i(y,e)),x=o(b.resource$),S=o(b.isLoading$)??!0;(0,g.useEffect)(()=>{!S&&!x&&console.error(`[Document] Resource ${e} not found`)},[S,e,x]);let C=(0,g.useCallback)(async()=>{b.invalidate()},[b]);if(S)return(0,_.jsx)(s,{});if(!x)return(0,_.jsx)(d,{error:Error(`Resource ${e} not found`),onRetry:C});let w=x;return(0,_.jsx)(r,{resource:w,rUri:a(w[`@id`]),locale:t,Link:h,routes:m,ToolbarPanels:f,refetchDocument:C,streamStatus:c,knowledgeBaseName:v?.label})}export{v as default};
2
+ //# sourceMappingURL=page-ps7dwO8y.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-Ldhs1vUL.js","names":[],"sources":["../../src/app/[locale]/know/resource/[id]/page.tsx"],"sourcesContent":["\"use client\";\n\n/**\n * Resource Viewer Page - Minimal Next.js routing wrapper\n *\n * Handles only Next.js routing and initial resource loading.\n * All other concerns (data loading, events, UI state) are handled by ResourceViewerPage.\n */\n\nimport { useEffect, useCallback } from 'react';\nimport { useParams } from 'react-router-dom';\nimport { useLocale } from '@/i18n/routing';\nimport { useSemiont, useObservable, useStateUnit, createResourceLoaderStateUnit } from '@semiont/react-ui';\nimport { resourceId } from '@semiont/core';\nimport { Link, routes } from '@/lib/routing';\n\n// Feature components\nimport { ResourceLoadingState, ResourceErrorState, ResourceViewerPage } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport type { SemiontResource } from '@semiont/react-ui';\n\n/**\n * Main page component - handles only routing and initial resource load.\n *\n * The inner component is keyed on `rId` so that navigation between\n * resources (URL-param change without component unmount) forces a full\n * remount. Without this, `useStateUnit`'s factory closes over the\n * initial `rId` and never re-runs, and the URL changes but the content\n * stays on the first-loaded resource.\n */\nexport default function KnowledgeResourcePage() {\n const params = useParams();\n const rId = resourceId(params?.id as string);\n return <KnowledgeResourcePageInner key={rId} rId={rId} />;\n}\n\nfunction KnowledgeResourcePageInner({ rId }: { rId: ReturnType<typeof resourceId> }) {\n const locale = useLocale();\n\n const session = useObservable(useSemiont().activeSession$);\n const streamStatus = useObservable(session?.streamState$) ?? 'initial';\n const activeKnowledgeBase = session?.kb ?? null;\n\n const semiont = session?.client;\n const loader = useStateUnit(() => createResourceLoaderStateUnit(semiont!, rId));\n const resourceData = useObservable(loader.resource$);\n const isLoading = useObservable(loader.isLoading$) ?? true;\n\n // Log error for debugging\n useEffect(() => {\n if (!isLoading && !resourceData) {\n console.error(`[Document] Resource ${rId} not found`);\n }\n }, [isLoading, rId, resourceData]);\n\n const refetchDocument = useCallback(async () => {\n loader.invalidate();\n }, [loader]);\n\n // Early return: loading first, then error/not-found\n if (isLoading) {\n return <ResourceLoadingState />;\n }\n if (!resourceData) {\n return <ResourceErrorState error={new Error(`Resource ${rId} not found`)} onRetry={refetchDocument} />;\n }\n\n const resource = resourceData as SemiontResource;\n // resource['@id'] is now a bare ID\n const canonicalId = resourceId(resource['@id']);\n\n // Render with minimal props - all data loading/events handled inside ResourceViewerPage\n return (\n <ResourceViewerPage\n resource={resource}\n rUri={canonicalId}\n locale={locale}\n Link={Link}\n routes={routes}\n ToolbarPanels={ToolbarPanels}\n refetchDocument={refetchDocument}\n streamStatus={streamStatus}\n knowledgeBaseName={activeKnowledgeBase?.label}\n />\n );\n}\n"],"mappings":"qYA8BA,SAAwB,GAAwB,CAE9C,IAAM,EAAM,EADG,EACQ,GAAQ,EAAY,EAC3C,OAAO,EAAA,EAAA,KAAC,EAAD,CAA2C,KAAM,EAAhB,CAAgB,CAC1D,CAEA,SAAS,EAA2B,CAAE,OAA+C,CACnF,IAAM,EAAS,EAAU,EAEnB,EAAU,EAAc,EAAW,EAAE,cAAc,EACnD,EAAe,EAAc,GAAS,YAAY,GAAK,UACvD,EAAsB,GAAS,IAAM,KAErC,EAAU,GAAS,OACnB,EAAS,MAAmB,EAA8B,EAAU,CAAG,CAAC,EACxE,EAAe,EAAc,EAAO,SAAS,EAC7C,EAAY,EAAc,EAAO,UAAU,GAAK,IAGtD,EAAA,EAAA,eAAgB,CACV,CAAC,GAAa,CAAC,GACjB,QAAQ,MAAM,uBAAuB,EAAI,WAAW,CAExD,EAAG,CAAC,EAAW,EAAK,CAAY,CAAC,EAEjC,IAAM,GAAA,EAAA,EAAA,aAA8B,SAAY,CAC9C,EAAO,WAAW,CACpB,EAAG,CAAC,CAAM,CAAC,EAGX,GAAI,EACF,OAAO,EAAA,EAAA,KAAC,EAAD,CAAuB,CAAA,EAEhC,GAAI,CAAC,EACH,OAAO,EAAA,EAAA,KAAC,EAAD,CAAoB,MAAW,MAAM,YAAY,EAAI,WAAW,EAAG,QAAS,CAAkB,CAAA,EAGvG,IAAM,EAAW,EAKjB,OACE,EAAA,EAAA,KAAC,EAAD,CACY,WACV,KANgB,EAAW,EAAS,MAM9B,EACE,SACF,OACE,SACO,gBACE,kBACH,eACd,kBAAmB,GAAqB,KACzC,CAAA,CAEL"}
1
+ {"version":3,"file":"page-ps7dwO8y.js","names":[],"sources":["../../src/app/[locale]/know/resource/[id]/page.tsx"],"sourcesContent":["\"use client\";\n\n/**\n * Resource Viewer Page - Minimal Next.js routing wrapper\n *\n * Handles only Next.js routing and initial resource loading.\n * All other concerns (data loading, events, UI state) are handled by ResourceViewerPage.\n */\n\nimport { useEffect, useCallback } from 'react';\nimport { useParams } from 'react-router-dom';\nimport { useLocale } from '@/i18n/routing';\nimport { useSemiont, useObservable, useStateUnit, createResourceLoaderStateUnit } from '@semiont/react-ui';\nimport { resourceId } from '@semiont/core';\nimport { Link, routes } from '@/lib/routing';\n\n// Feature components\nimport { ResourceLoadingState, ResourceErrorState, ResourceViewerPage } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport type { SemiontResource } from '@semiont/react-ui';\n\n/**\n * Main page component - handles only routing and initial resource load.\n *\n * The inner component is keyed on `rId` so that navigation between\n * resources (URL-param change without component unmount) forces a full\n * remount. Without this, `useStateUnit`'s factory closes over the\n * initial `rId` and never re-runs, and the URL changes but the content\n * stays on the first-loaded resource.\n */\nexport default function KnowledgeResourcePage() {\n const params = useParams();\n const rId = resourceId(params?.id as string);\n return <KnowledgeResourcePageInner key={rId} rId={rId} />;\n}\n\nfunction KnowledgeResourcePageInner({ rId }: { rId: ReturnType<typeof resourceId> }) {\n const locale = useLocale();\n\n const session = useObservable(useSemiont().activeSession$);\n const streamStatus = useObservable(session?.streamState$) ?? 'initial';\n const activeKnowledgeBase = session?.kb ?? null;\n\n const semiont = session?.client;\n const loader = useStateUnit(() => createResourceLoaderStateUnit(semiont!, rId));\n const resourceData = useObservable(loader.resource$);\n const isLoading = useObservable(loader.isLoading$) ?? true;\n\n // Log error for debugging\n useEffect(() => {\n if (!isLoading && !resourceData) {\n console.error(`[Document] Resource ${rId} not found`);\n }\n }, [isLoading, rId, resourceData]);\n\n const refetchDocument = useCallback(async () => {\n loader.invalidate();\n }, [loader]);\n\n // Early return: loading first, then error/not-found\n if (isLoading) {\n return <ResourceLoadingState />;\n }\n if (!resourceData) {\n return <ResourceErrorState error={new Error(`Resource ${rId} not found`)} onRetry={refetchDocument} />;\n }\n\n const resource = resourceData as SemiontResource;\n // resource['@id'] is now a bare ID\n const canonicalId = resourceId(resource['@id']);\n\n // Render with minimal props - all data loading/events handled inside ResourceViewerPage\n return (\n <ResourceViewerPage\n resource={resource}\n rUri={canonicalId}\n locale={locale}\n Link={Link}\n routes={routes}\n ToolbarPanels={ToolbarPanels}\n refetchDocument={refetchDocument}\n streamStatus={streamStatus}\n knowledgeBaseName={activeKnowledgeBase?.label}\n />\n );\n}\n"],"mappings":"qYA8BA,SAAwB,GAAwB,CAE9C,IAAM,EAAM,EADG,EACQ,GAAQ,EAAY,EAC3C,OAAO,EAAA,EAAA,KAAC,EAAD,CAA2C,KAAM,EAAhB,CAAgB,CAC1D,CAEA,SAAS,EAA2B,CAAE,OAA+C,CACnF,IAAM,EAAS,EAAU,EAEnB,EAAU,EAAc,EAAW,EAAE,cAAc,EACnD,EAAe,EAAc,GAAS,YAAY,GAAK,UACvD,EAAsB,GAAS,IAAM,KAErC,EAAU,GAAS,OACnB,EAAS,MAAmB,EAA8B,EAAU,CAAG,CAAC,EACxE,EAAe,EAAc,EAAO,SAAS,EAC7C,EAAY,EAAc,EAAO,UAAU,GAAK,IAGtD,EAAA,EAAA,eAAgB,CACV,CAAC,GAAa,CAAC,GACjB,QAAQ,MAAM,uBAAuB,EAAI,WAAW,CAExD,EAAG,CAAC,EAAW,EAAK,CAAY,CAAC,EAEjC,IAAM,GAAA,EAAA,EAAA,aAA8B,SAAY,CAC9C,EAAO,WAAW,CACpB,EAAG,CAAC,CAAM,CAAC,EAGX,GAAI,EACF,OAAO,EAAA,EAAA,KAAC,EAAD,CAAuB,CAAA,EAEhC,GAAI,CAAC,EACH,OAAO,EAAA,EAAA,KAAC,EAAD,CAAoB,MAAW,MAAM,YAAY,EAAI,WAAW,EAAG,QAAS,CAAkB,CAAA,EAGvG,IAAM,EAAW,EAKjB,OACE,EAAA,EAAA,KAAC,EAAD,CACY,WACV,KANgB,EAAW,EAAS,MAM9B,EACE,SACF,OACE,SACO,gBACE,kBACH,eACd,kBAAmB,GAAqB,KACzC,CAAA,CAEL"}