@jacshuo/onyx 2.2.0 → 2.4.0

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 (135) hide show
  1. package/dist/Chart/BarChart.cjs +1 -1
  2. package/dist/Chart/BarChart.js +1 -1
  3. package/dist/Chart/PieChart.cjs +1 -1
  4. package/dist/Chart/PieChart.js +1 -1
  5. package/dist/Chart/ScatterChart.cjs +1 -1
  6. package/dist/Chart/ScatterChart.js +1 -1
  7. package/dist/Chart/index.cjs +1 -1
  8. package/dist/Chart/index.js +1 -1
  9. package/dist/DataDisplay/VirtualList.cjs +2 -0
  10. package/dist/DataDisplay/VirtualList.css +1 -0
  11. package/dist/DataDisplay/VirtualList.d.cts +5 -0
  12. package/dist/DataDisplay/VirtualList.d.ts +5 -0
  13. package/dist/DataDisplay/VirtualList.js +2 -0
  14. package/dist/DataDisplay/index.cjs +3 -2
  15. package/dist/DataDisplay/index.css +1 -0
  16. package/dist/DataDisplay/index.d.cts +5 -0
  17. package/dist/DataDisplay/index.d.ts +5 -0
  18. package/dist/DataDisplay/index.js +3 -2
  19. package/dist/Extras/FileExplorer.cjs +2 -2
  20. package/dist/Extras/FileExplorer.js +2 -2
  21. package/dist/Extras/LoginPanel.cjs +1 -0
  22. package/dist/Extras/LoginPanel.css +1 -0
  23. package/dist/Extras/LoginPanel.d.cts +3 -0
  24. package/dist/Extras/LoginPanel.d.ts +3 -0
  25. package/dist/Extras/LoginPanel.js +1 -0
  26. package/dist/Extras/RichTextEditor.cjs +45 -0
  27. package/dist/Extras/RichTextEditor.css +1 -0
  28. package/dist/Extras/RichTextEditor.d.cts +10 -0
  29. package/dist/Extras/RichTextEditor.d.ts +10 -0
  30. package/dist/Extras/RichTextEditor.js +45 -0
  31. package/dist/Extras/TypewriterText.cjs +2 -1
  32. package/dist/Extras/TypewriterText.css +1 -1
  33. package/dist/Extras/TypewriterText.js +2 -1
  34. package/dist/Extras/index.cjs +48 -4
  35. package/dist/Extras/index.css +1 -1
  36. package/dist/Extras/index.d.cts +7 -0
  37. package/dist/Extras/index.d.ts +7 -0
  38. package/dist/Extras/index.js +48 -4
  39. package/dist/Forms/Form.cjs +1 -1
  40. package/dist/Forms/Form.js +1 -1
  41. package/dist/Forms/OTPInput.cjs +1 -0
  42. package/dist/Forms/OTPInput.css +1 -0
  43. package/dist/Forms/OTPInput.d.cts +4 -0
  44. package/dist/Forms/OTPInput.d.ts +4 -0
  45. package/dist/Forms/OTPInput.js +1 -0
  46. package/dist/Forms/Select.cjs +1 -1
  47. package/dist/Forms/Select.js +1 -1
  48. package/dist/Forms/index.cjs +1 -1
  49. package/dist/Forms/index.css +1 -0
  50. package/dist/Forms/index.d.cts +4 -0
  51. package/dist/Forms/index.d.ts +4 -0
  52. package/dist/Forms/index.js +1 -1
  53. package/dist/Layout/SplitPanel.cjs +1 -0
  54. package/dist/Layout/SplitPanel.d.cts +3 -0
  55. package/dist/Layout/SplitPanel.d.ts +3 -0
  56. package/dist/Layout/SplitPanel.js +1 -0
  57. package/dist/Layout/index.cjs +1 -1
  58. package/dist/Layout/index.d.cts +3 -0
  59. package/dist/Layout/index.d.ts +3 -0
  60. package/dist/Layout/index.js +1 -1
  61. package/dist/Navigation/Header.cjs +1 -1
  62. package/dist/Navigation/Header.js +1 -1
  63. package/dist/Navigation/RibbonBar.d.cts +3 -3
  64. package/dist/Navigation/RibbonBar.d.ts +3 -3
  65. package/dist/Navigation/index.cjs +2 -2
  66. package/dist/Navigation/index.d.cts +3 -3
  67. package/dist/Navigation/index.d.ts +3 -3
  68. package/dist/Navigation/index.js +2 -2
  69. package/dist/Primitives/Avatar.cjs +1 -1
  70. package/dist/Primitives/Avatar.js +1 -1
  71. package/dist/Primitives/Badge.cjs +1 -1
  72. package/dist/Primitives/Badge.js +1 -1
  73. package/dist/Primitives/Button.cjs +1 -1
  74. package/dist/Primitives/Button.js +1 -1
  75. package/dist/Primitives/Checkbox.cjs +1 -1
  76. package/dist/Primitives/Checkbox.js +1 -1
  77. package/dist/Primitives/Dropdown.cjs +1 -1
  78. package/dist/Primitives/Dropdown.js +1 -1
  79. package/dist/Primitives/DropdownButton.cjs +1 -1
  80. package/dist/Primitives/DropdownButton.js +1 -1
  81. package/dist/Primitives/Indicator.cjs +1 -1
  82. package/dist/Primitives/Indicator.js +1 -1
  83. package/dist/Primitives/Input.cjs +1 -1
  84. package/dist/Primitives/Input.js +1 -1
  85. package/dist/Primitives/Kbd.cjs +1 -0
  86. package/dist/Primitives/Kbd.css +0 -0
  87. package/dist/Primitives/Kbd.d.cts +6 -0
  88. package/dist/Primitives/Kbd.d.ts +6 -0
  89. package/dist/Primitives/Kbd.js +1 -0
  90. package/dist/Primitives/Label.cjs +1 -1
  91. package/dist/Primitives/Label.js +1 -1
  92. package/dist/Primitives/Radio.cjs +1 -1
  93. package/dist/Primitives/Radio.js +1 -1
  94. package/dist/Primitives/Rating.cjs +2 -0
  95. package/dist/Primitives/Rating.css +0 -0
  96. package/dist/Primitives/Rating.d.cts +4 -0
  97. package/dist/Primitives/Rating.d.ts +4 -0
  98. package/dist/Primitives/Rating.js +2 -0
  99. package/dist/Primitives/Slider.cjs +1 -1
  100. package/dist/Primitives/Slider.js +1 -1
  101. package/dist/Primitives/Switch.cjs +1 -1
  102. package/dist/Primitives/Switch.js +1 -1
  103. package/dist/Primitives/Tag.cjs +1 -1
  104. package/dist/Primitives/Tag.js +1 -1
  105. package/dist/Primitives/index.cjs +2 -1
  106. package/dist/Primitives/index.d.cts +10 -0
  107. package/dist/Primitives/index.d.ts +10 -0
  108. package/dist/Primitives/index.js +2 -1
  109. package/dist/_tsup-dts-rollup.d.cts +843 -1
  110. package/dist/_tsup-dts-rollup.d.ts +843 -1
  111. package/dist/index.cjs +49 -5
  112. package/dist/index.css +1 -1
  113. package/dist/index.d.cts +35 -0
  114. package/dist/index.d.ts +35 -0
  115. package/dist/index.js +49 -5
  116. package/dist/styles/DataDisplay/VirtualList.css +35 -0
  117. package/dist/styles/Extras/CinePlayer.css +63 -1
  118. package/dist/styles/Extras/FileExplorer.css +39 -1
  119. package/dist/styles/Extras/FilmReel.css +24 -1
  120. package/dist/styles/Extras/LoginPanel.css +16 -0
  121. package/dist/styles/Extras/MiniPlayer.css +84 -1
  122. package/dist/styles/Extras/RichTextEditor.css +908 -0
  123. package/dist/styles/Extras/TypewriterText.css +254 -0
  124. package/dist/styles/Forms/OTPInput.css +11 -0
  125. package/dist/styles/Layout/SplitPanel.css +15 -0
  126. package/dist/styles/Primitives/DropdownButton.css +26 -1
  127. package/dist/styles/Primitives/Kbd.css +1 -0
  128. package/dist/styles/Primitives/Rating.css +1 -0
  129. package/dist/styles/base.css +281 -0
  130. package/dist/styles.css +281 -0
  131. package/dist/theme.cjs +1 -1
  132. package/dist/theme.d.cts +3 -0
  133. package/dist/theme.d.ts +3 -0
  134. package/dist/theme.js +1 -1
  135. package/package.json +22 -1
@@ -0,0 +1,45 @@
1
+ 'use strict';var Oe=require('react'),react=require('@tiptap/react'),lucideReact=require('lucide-react'),clsx=require('clsx'),tailwindMerge=require('tailwind-merge'),jsxRuntime=require('react/jsx-runtime'),classVarianceAuthority=require('class-variance-authority'),transform=require('@tiptap/pm/transform'),commands=require('@tiptap/pm/commands'),state=require('@tiptap/pm/state'),model=require('@tiptap/pm/model'),schemaList=require('@tiptap/pm/schema-list'),view=require('@tiptap/pm/view');require('@tiptap/pm/keymap');var Js=require('@tiptap/starter-kit'),Xs=require('@tiptap/extension-underline'),Ys=require('@tiptap/extension-text-align'),extensionColor=require('@tiptap/extension-color'),Qs=require('@tiptap/extension-highlight'),Zs=require('@tiptap/extension-link'),ea=require('@tiptap/extension-youtube'),ta=require('@tiptap/extension-placeholder'),ra=require('@tiptap/extension-character-count'),na=require('@tiptap/extension-typography'),oa=require('@tiptap/extension-subscript'),ia=require('@tiptap/extension-superscript'),extensionTable=require('@tiptap/extension-table'),aa=require('@tiptap/extension-table-row'),la=require('@tiptap/extension-table-header'),ca=require('@tiptap/extension-table-cell'),Hs=require('@tiptap/extension-image'),marked=require('marked');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var Oe__default=/*#__PURE__*/_interopDefault(Oe);var Js__default=/*#__PURE__*/_interopDefault(Js);var Xs__default=/*#__PURE__*/_interopDefault(Xs);var Ys__default=/*#__PURE__*/_interopDefault(Ys);var Qs__default=/*#__PURE__*/_interopDefault(Qs);var Zs__default=/*#__PURE__*/_interopDefault(Zs);var ea__default=/*#__PURE__*/_interopDefault(ea);var ta__default=/*#__PURE__*/_interopDefault(ta);var ra__default=/*#__PURE__*/_interopDefault(ra);var na__default=/*#__PURE__*/_interopDefault(na);var oa__default=/*#__PURE__*/_interopDefault(oa);var ia__default=/*#__PURE__*/_interopDefault(ia);var aa__default=/*#__PURE__*/_interopDefault(aa);var la__default=/*#__PURE__*/_interopDefault(la);var ca__default=/*#__PURE__*/_interopDefault(ca);var Hs__default=/*#__PURE__*/_interopDefault(Hs);function D(...e){return tailwindMerge.twMerge(clsx.clsx(e))}function Ot({item:e,mode:t}){return e.separator?jsxRuntime.jsx("div",{className:"mx-1 h-10 w-px self-center bg-primary-200 dark:bg-primary-700","aria-hidden":true}):jsxRuntime.jsxs("button",{type:"button",title:e.title??e.label,disabled:e.disabled,onClick:e.onClick,"aria-pressed":e.active,className:D("relative flex shrink-0 items-center justify-center gap-1.5 rounded-lg px-2.5 py-1.5 text-xs font-medium transition-all duration-150 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-400","disabled:cursor-not-allowed disabled:opacity-40",e.active?"bg-primary-100 text-primary-700 shadow-inner dark:bg-primary-800 dark:text-primary-200":"text-primary-700 hover:bg-primary-50 active:bg-primary-100 dark:text-primary-300 dark:hover:bg-primary-800",t==="full"?"min-w-[3.5rem] flex-col gap-0.5 py-2":"","[&_svg]:shrink-0",t==="full"?"[&_svg]:h-5 [&_svg]:w-5":"[&_svg]:h-4 [&_svg]:w-4"),children:[e.icon&&jsxRuntime.jsx("span",{children:e.icon}),t!=="icons"&&jsxRuntime.jsx("span",{className:D(t==="full"?"text-[0.6rem] leading-tight":""),children:e.label})]})}function an({group:e,mode:t,disabled:r=false}){return jsxRuntime.jsxs("div",{className:D("flex shrink-0 flex-col items-stretch",r&&"opacity-50"),children:[jsxRuntime.jsx("div",{className:"flex items-center gap-0.5 px-1",children:e.items.map(n=>jsxRuntime.jsx(Ot,{item:r?{...n,disabled:true}:n,mode:t},n.key))}),t==="full"&&jsxRuntime.jsx("div",{className:"mt-1 border-t border-primary-100 px-2 pt-0.5 text-center dark:border-primary-800",children:jsxRuntime.jsx("span",{className:"text-[0.55rem] text-secondary-400 dark:text-secondary-500",children:e.label})})]})}function Bt({tabs:e,defaultTab:t,activeTab:r,onTabChange:n,mode:o,onModeChange:i,sticky:a=false,className:l}){let s=e.filter(x=>!x.hidden),[d,p]=Oe.useState(t??s[0]?.key??""),[u,m]=Oe.useState(o??"full"),[c,f]=Oe.useState(true),h=r??d,g=o??u,v=x=>{if(!s.find(N=>N.key===x)?.disabled){if(x===h&&g!=="icons"){f(N=>!N);return}p(x),n?.(x),f(true);}},T=s.find(x=>x.key===h)??s[0];return jsxRuntime.jsxs("div",{className:D("select-none border-b border-primary-200 bg-white dark:border-primary-700 dark:bg-primary-900",a&&"sticky top-0 z-30",l),children:[jsxRuntime.jsxs("div",{className:"flex items-center border-b border-primary-100 dark:border-primary-800",children:[jsxRuntime.jsx("div",{className:"flex flex-1 items-end overflow-x-auto",children:s.map(x=>jsxRuntime.jsxs("button",{type:"button",disabled:x.disabled,onClick:()=>v(x.key),className:D("flex shrink-0 items-center gap-1.5 border-b-2 px-4 py-2 text-sm font-medium transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-400 [&_svg]:h-4 [&_svg]:w-4",x.disabled?"cursor-not-allowed border-transparent text-secondary-300 opacity-50 dark:text-secondary-600":x.key===h&&c?"border-primary-500 text-primary-700 dark:border-primary-400 dark:text-primary-200":"border-transparent text-secondary-500 hover:border-primary-300 hover:text-primary-600 dark:text-secondary-400 dark:hover:text-primary-300"),children:[x.icon,x.label]},x.key))}),jsxRuntime.jsx("button",{type:"button",title:c?"Collapse ribbon":"Expand ribbon",onClick:()=>f(x=>!x),className:"ml-auto mr-2 rounded-md p-1.5 text-secondary-400 transition-colors hover:bg-primary-50 hover:text-primary-600 dark:hover:bg-primary-800 dark:hover:text-primary-300",children:c?jsxRuntime.jsx(lucideReact.ChevronUp,{className:"h-4 w-4"}):jsxRuntime.jsx(lucideReact.ChevronDown,{className:"h-4 w-4"})})]}),c&&T&&g!=="icons"&&jsxRuntime.jsx("div",{className:"flex items-stretch gap-1 overflow-x-auto px-2 py-1.5",children:T.groups.map((x,M)=>jsxRuntime.jsxs(Oe__default.default.Fragment,{children:[M>0&&jsxRuntime.jsx("div",{className:"mx-1 h-auto w-px self-stretch bg-primary-100 dark:bg-primary-800"}),jsxRuntime.jsx(an,{group:x,mode:g,disabled:x.disabled||T.disabled})]},x.key))}),g==="icons"&&c&&T&&jsxRuntime.jsx("div",{className:"flex items-center gap-0.5 overflow-x-auto px-2 py-1",children:T.groups.flatMap(x=>x.items.map(M=>jsxRuntime.jsx(Ot,{item:x.disabled||T.disabled?{...M,disabled:true}:M,mode:"icons"},M.key)))})]})}classVarianceAuthority.cva("inline-flex cursor-pointer items-center justify-center gap-1.5 rounded font-medium transition-colors disabled:pointer-events-none disabled:opacity-50 [&_svg]:shrink-0",{variants:{intent:{primary:"bg-primary-500 text-white hover:bg-primary-600 active:bg-primary-700",secondary:"bg-secondary-500 text-white hover:bg-secondary-600 active:bg-secondary-700",danger:"bg-danger-500 text-white hover:bg-danger-600 active:bg-danger-700",warning:"bg-warning-500 text-white hover:bg-warning-600 active:bg-warning-700",ghost:"bg-transparent text-primary-700 hover:bg-primary-100 active:bg-primary-200 dark:text-primary-300 dark:hover:bg-primary-800",outline:"border border-primary-300 bg-transparent text-primary-700 hover:bg-primary-50 dark:border-primary-600 dark:text-primary-300 dark:hover:bg-primary-800"},size:{sm:"h-7 px-3 text-xs [&_svg]:h-3.5 [&_svg]:w-3.5",md:"h-9 px-4 text-sm [&_svg]:h-4 [&_svg]:w-4",lg:"h-11 px-6 text-base [&_svg]:h-5 [&_svg]:w-5"}},defaultVariants:{intent:"primary",size:"md"}});classVarianceAuthority.cva("inline-flex items-center gap-1 rounded border font-semibold [&_svg]:shrink-0",{variants:{intent:{success:"border-success-200 bg-success-100 text-success-800 dark:border-success-800 dark:bg-success-900/30 dark:text-success-400",warning:"border-warning-200 bg-warning-100 text-warning-800 dark:border-warning-800 dark:bg-warning-900/30 dark:text-warning-400",error:"border-danger-200 bg-danger-100 text-danger-800 dark:border-danger-800 dark:bg-danger-900/30 dark:text-danger-400",info:"border-primary-200 bg-primary-100 text-primary-800 dark:border-primary-800 dark:bg-primary-900/30 dark:text-primary-400",primary:"border-secondary-200 bg-secondary-100 text-secondary-700 dark:border-secondary-700 dark:bg-secondary-800 dark:text-secondary-300"},size:{sm:"px-1.5 py-0 text-[0.625rem] [&_svg]:h-2.5 [&_svg]:w-2.5",md:"px-2.5 py-0.5 text-xs [&_svg]:h-3 [&_svg]:w-3",lg:"px-3 py-1 text-sm [&_svg]:h-3.5 [&_svg]:w-3.5"}},defaultVariants:{intent:"primary",size:"md"}});classVarianceAuthority.cva("absolute flex items-center justify-center rounded-full font-bold leading-none ring-2 ring-white select-none pointer-events-none z-10 dark:ring-primary-900",{variants:{intent:{danger:"bg-danger-500 text-white",success:"bg-success-500 text-white",warning:"bg-warning-500 text-white",info:"bg-primary-500 text-white",primary:"bg-secondary-500 text-white"},size:{sm:"text-[0.5rem]",md:"text-[0.625rem]",lg:"text-xs"},dot:{true:"",false:""},placement:{"top-right":"top-0 right-0 translate-x-1/2 -translate-y-1/2","top-left":"top-0 left-0 -translate-x-1/2 -translate-y-1/2","bottom-right":"bottom-0 right-0 translate-x-1/2 translate-y-1/2","bottom-left":"bottom-0 left-0 -translate-x-1/2 translate-y-1/2"}},compoundVariants:[{dot:true,size:"sm",class:"h-1.5 w-1.5 min-w-0 ring-1"},{dot:true,size:"md",class:"h-2 w-2 min-w-0"},{dot:true,size:"lg",class:"h-2.5 w-2.5 min-w-0"},{dot:false,size:"sm",class:"h-4 min-w-4 px-1"},{dot:false,size:"md",class:"h-5 min-w-5 px-1.5"},{dot:false,size:"lg",class:"h-6 min-w-6 px-2"}],defaultVariants:{intent:"danger",size:"md",dot:false,placement:"top-right"}});classVarianceAuthority.cva("w-full rounded-md border bg-white text-secondary-900 transition-colors placeholder:text-secondary-400 focus:outline-none focus:ring-2 dark:bg-secondary-900 dark:text-secondary-100 dark:placeholder:text-secondary-600",{variants:{state:{default:"border-secondary-300 focus:border-primary-500 focus:ring-primary-500/20 dark:border-secondary-600",error:"border-danger-400 focus:border-danger-500 focus:ring-danger-500/20"},size:{sm:"h-7 px-2 text-xs",md:"h-9 px-3 py-2 text-sm",lg:"h-11 px-4 py-2.5 text-base"}},defaultVariants:{state:"default",size:"md"}});classVarianceAuthority.cva("inline-flex items-center gap-1 font-medium [&_svg]:shrink-0",{variants:{size:{sm:"text-xs [&_svg]:h-3 [&_svg]:w-3",md:"text-sm [&_svg]:h-3.5 [&_svg]:w-3.5",lg:"text-base [&_svg]:h-4 [&_svg]:w-4"},intent:{default:"text-primary-700 dark:text-primary-300",muted:"text-primary-400 dark:text-primary-500",required:"text-primary-700 dark:text-primary-300 after:ml-0.5 after:text-danger-500 after:content-['*']"}},defaultVariants:{size:"md",intent:"default"}});classVarianceAuthority.cva("relative inline-flex shrink-0 items-center justify-center rounded border-2 transition-all duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",{variants:{intent:{primary:"border-primary-300 dark:border-primary-600 focus-visible:ring-primary-500/40",secondary:"border-secondary-300 dark:border-secondary-600 focus-visible:ring-secondary-500/40",danger:"border-danger-300 dark:border-danger-600 focus-visible:ring-danger-500/40",warning:"border-warning-300 dark:border-warning-600 focus-visible:ring-warning-500/40",success:"border-success-300 dark:border-success-600 focus-visible:ring-success-500/40"},size:{sm:"h-4 w-4 rounded-[3px]",md:"h-5 w-5 rounded",lg:"h-6 w-6 rounded-[5px]"},checked:{on:"",off:"bg-white dark:bg-primary-900"}},compoundVariants:[{intent:"primary",checked:"on",class:"border-primary-500 bg-primary-500 dark:border-primary-500 dark:bg-primary-500"},{intent:"secondary",checked:"on",class:"border-secondary-500 bg-secondary-500 dark:border-secondary-500 dark:bg-secondary-500"},{intent:"danger",checked:"on",class:"border-danger-500 bg-danger-500 dark:border-danger-500 dark:bg-danger-500"},{intent:"warning",checked:"on",class:"border-warning-500 bg-warning-500 dark:border-warning-500 dark:bg-warning-500"},{intent:"success",checked:"on",class:"border-success-500 bg-success-500 dark:border-success-500 dark:bg-success-500"}],defaultVariants:{intent:"primary",size:"md",checked:"off"}});classVarianceAuthority.cva("relative inline-flex shrink-0 items-center justify-center rounded-full border-2 transition-all duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",{variants:{intent:{primary:"border-primary-300 dark:border-primary-600 focus-visible:ring-primary-500/40",secondary:"border-secondary-300 dark:border-secondary-600 focus-visible:ring-secondary-500/40",danger:"border-danger-300 dark:border-danger-600 focus-visible:ring-danger-500/40",warning:"border-warning-300 dark:border-warning-600 focus-visible:ring-warning-500/40",success:"border-success-300 dark:border-success-600 focus-visible:ring-success-500/40"},size:{sm:"h-4 w-4",md:"h-5 w-5",lg:"h-6 w-6"},checked:{on:"",off:"bg-white dark:bg-primary-900"}},compoundVariants:[{intent:"primary",checked:"on",class:"border-primary-500 bg-primary-500 dark:border-primary-500 dark:bg-primary-500"},{intent:"secondary",checked:"on",class:"border-secondary-500 bg-secondary-500 dark:border-secondary-500 dark:bg-secondary-500"},{intent:"danger",checked:"on",class:"border-danger-500 bg-danger-500 dark:border-danger-500 dark:bg-danger-500"},{intent:"warning",checked:"on",class:"border-warning-500 bg-warning-500 dark:border-warning-500 dark:bg-warning-500"},{intent:"success",checked:"on",class:"border-success-500 bg-success-500 dark:border-success-500 dark:bg-success-500"}],defaultVariants:{intent:"primary",size:"md",checked:"off"}});var Ft=classVarianceAuthority.cva("",{variants:{intent:{primary:"",secondary:"",danger:"",warning:"",success:""},size:{sm:"",md:"",lg:""},checked:{on:"",off:"bg-primary-300 dark:bg-primary-800"}},compoundVariants:[{intent:"primary",checked:"on",class:"bg-primary-500 dark:bg-primary-500"},{intent:"secondary",checked:"on",class:"bg-secondary-500 dark:bg-secondary-500"},{intent:"danger",checked:"on",class:"bg-danger-500 dark:bg-danger-500"},{intent:"warning",checked:"on",class:"bg-warning-500 dark:bg-warning-500"},{intent:"success",checked:"on",class:"bg-success-500 dark:bg-success-500"}],defaultVariants:{intent:"primary",size:"md",checked:"off"}});classVarianceAuthority.cva("bg-primary-200 text-primary-700 dark:bg-primary-700 dark:text-primary-200",{variants:{size:{xs:"h-6 w-6 text-[10px]",sm:"h-8 w-8 text-xs",md:"h-10 w-10 text-sm",lg:"h-12 w-12 text-base",xl:"h-16 w-16 text-lg"},shape:{circular:"rounded-full",rounded:"rounded-lg",square:"rounded-none"}},defaultVariants:{size:"md",shape:"circular"}});classVarianceAuthority.cva("inline-flex items-center",{variants:{size:{sm:"gap-0.5 [&_.rating-icon]:h-4 [&_.rating-icon]:w-4",md:"gap-1 [&_.rating-icon]:h-6 [&_.rating-icon]:w-6",lg:"gap-1.5 [&_.rating-icon]:h-8 [&_.rating-icon]:w-8"}},defaultVariants:{size:"md"}});classVarianceAuthority.cva("inline-flex items-center justify-center rounded font-mono font-medium select-none",{variants:{size:{xs:"h-4 min-w-4 px-1 text-[0.6rem]",sm:"h-5 min-w-5 px-1.5 text-xs",md:"h-6 min-w-6 px-2 text-sm",lg:"h-8 min-w-8 px-2.5 text-base"},variant:{default:"border border-secondary-300 bg-secondary-100 text-secondary-700 shadow-[0_2px_0_0_var(--color-secondary-300)] dark:border-secondary-600 dark:bg-secondary-800 dark:text-secondary-300 dark:shadow-[0_2px_0_0_var(--color-secondary-600)]",outline:"border border-secondary-400 bg-transparent text-secondary-700 dark:border-secondary-500 dark:text-secondary-300",ghost:"text-secondary-600 dark:text-secondary-400"}},defaultVariants:{size:"sm",variant:"default"}});classVarianceAuthority.cva("relative flex w-full touch-none select-none items-center",{variants:{intent:{primary:"[&_.slider-fill]:bg-primary-500 [&_.slider-thumb]:border-primary-500",secondary:"[&_.slider-fill]:bg-secondary-500 [&_.slider-thumb]:border-secondary-500",success:"[&_.slider-fill]:bg-success-500 [&_.slider-thumb]:border-success-500",danger:"[&_.slider-fill]:bg-danger-500 [&_.slider-thumb]:border-danger-500",warning:"[&_.slider-fill]:bg-warning-500 [&_.slider-thumb]:border-warning-500"},size:{sm:"h-4",md:"h-5",lg:"h-6"}},defaultVariants:{intent:"primary",size:"md"}});classVarianceAuthority.cva("inline-flex items-center gap-1 rounded-full font-medium select-none transition-colors [&_svg]:shrink-0",{variants:{intent:{primary:"bg-primary-100 text-primary-700 dark:bg-primary-800 dark:text-primary-200",secondary:"bg-secondary-100 text-secondary-700 dark:bg-secondary-800 dark:text-secondary-200",success:"bg-success-100 text-success-700 dark:bg-success-900/40 dark:text-success-300",danger:"bg-danger-100 text-danger-700 dark:bg-danger-900/40 dark:text-danger-300",warning:"bg-warning-100 text-warning-700 dark:bg-warning-900/40 dark:text-warning-300",info:"bg-blue-100 text-blue-700 dark:bg-blue-900/40 dark:text-blue-300"},size:{sm:"h-5 px-2 text-[0.6875rem] gap-0.5",md:"h-6 px-2.5 text-xs gap-1",lg:"h-7 px-3 text-sm gap-1"},variant:{solid:"",outline:"bg-transparent border",soft:""}},compoundVariants:[{intent:"primary",variant:"outline",class:"border-primary-300 text-primary-700 dark:border-primary-600 dark:text-primary-300"},{intent:"secondary",variant:"outline",class:"border-secondary-300 text-secondary-700 dark:border-secondary-600 dark:text-secondary-300"},{intent:"success",variant:"outline",class:"border-success-400 text-success-700 dark:border-success-600 dark:text-success-300"},{intent:"danger",variant:"outline",class:"border-danger-400 text-danger-700 dark:border-danger-600 dark:text-danger-300"},{intent:"warning",variant:"outline",class:"border-warning-400 text-warning-700 dark:border-warning-600 dark:text-warning-300"},{intent:"info",variant:"outline",class:"border-blue-400 text-blue-700 dark:border-blue-600 dark:text-blue-300"}],defaultVariants:{intent:"primary",size:"md",variant:"solid"}});classVarianceAuthority.cva("relative w-full cursor-pointer rounded-md border bg-white text-sm transition-colors dark:bg-primary-900",{variants:{intent:{default:"border-primary-300 text-primary-900 hover:border-primary-400 focus-within:border-primary-500 focus-within:ring-2 focus-within:ring-primary-500/20 dark:border-primary-600 dark:text-primary-100 dark:hover:border-primary-500 dark:focus-within:border-primary-400",danger:"border-danger-500 text-primary-900 focus-within:ring-2 focus-within:ring-danger-500/20 dark:border-danger-500 dark:text-primary-100"},size:{sm:"h-7 px-2 text-xs",md:"h-9 px-3 text-sm",lg:"h-11 px-4 text-base"}},defaultVariants:{intent:"default",size:"md"}});var un={sm:{trackFixed:"h-5 w-9",trackH:"h-5 min-w-9",thumb:"h-3.5 w-3.5",thumbTop:"top-[3px]",thumbOff:"left-[2px]",thumbOn:"left-[calc(100%-16px)]",pad:"pl-[6px] pr-[18px]",contentLeft:"left-[6px]",contentRight:"right-[6px]",icon:"text-[10px] [&_svg]:h-3 [&_svg]:w-3"},md:{trackFixed:"h-6 w-11",trackH:"h-6 min-w-11",thumb:"h-4.5 w-4.5",thumbTop:"top-[3px]",thumbOff:"left-[2px]",thumbOn:"left-[calc(100%-20px)]",pad:"pl-[7px] pr-[23px]",contentLeft:"left-[7px]",contentRight:"right-[7px]",icon:"text-xs [&_svg]:h-3.5 [&_svg]:w-3.5"},lg:{trackFixed:"h-7 w-14",trackH:"h-7 min-w-14",thumb:"h-5.5 w-5.5",thumbTop:"top-[3px]",thumbOff:"left-[3px]",thumbOn:"left-[calc(100%-25px)]",pad:"pl-[8px] pr-[28px]",contentLeft:"left-[8px]",contentRight:"right-[8px]",icon:"text-sm [&_svg]:h-4 [&_svg]:w-4"}},pn={primary:"text-primary-100",secondary:"text-secondary-100",danger:"text-danger-100",warning:"text-warning-100",success:"text-success-100"};function Ce({checked:e,defaultChecked:t=false,onCheckedChange:r,checkedContent:n,uncheckedContent:o,intent:i,size:a,label:l,id:s,className:d,disabled:p,...u}){let m=Oe.useId(),c=s??m,f=a??"md",h=i??"primary",g=un[f],v=n!=null||o!=null,[C,T]=Oe.useState(t),x=e??C,M=Oe.useCallback(N=>{let z=N.target.checked;e===void 0&&T(z),r?.(z);},[e,r]);return jsxRuntime.jsxs("label",{htmlFor:c,className:D("inline-flex cursor-pointer items-center gap-2",p&&"pointer-events-none opacity-50",d),children:[jsxRuntime.jsx("input",{...u,id:c,type:"checkbox",role:"switch",className:"sr-only",checked:x,disabled:p,onChange:M,"aria-checked":x}),jsxRuntime.jsxs("span",{className:D("relative inline-flex shrink-0 items-center rounded-full transition-colors duration-200",v?g.trackH:g.trackFixed,Ft({intent:i,size:a,checked:x?"on":"off"})),children:[v?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("span",{className:D("pointer-events-none invisible inline-grid",g.icon),children:[jsxRuntime.jsx("span",{className:D("[grid-area:1/1] whitespace-nowrap",g.pad),children:n}),jsxRuntime.jsx("span",{className:D("[grid-area:1/1] whitespace-nowrap",g.pad),children:o})]}),jsxRuntime.jsx("span",{className:D("absolute top-1/2 -translate-y-1/2 whitespace-nowrap font-medium leading-none transition-opacity duration-200",g.contentLeft,g.icon,pn[h],x?"opacity-100":"opacity-0"),children:n}),jsxRuntime.jsx("span",{className:D("absolute top-1/2 -translate-y-1/2 whitespace-nowrap font-medium leading-none transition-opacity duration-200",g.contentRight,g.icon,"text-primary-400 dark:text-primary-500",x?"opacity-0":"opacity-100"),children:o})]}):null,jsxRuntime.jsx("span",{className:D("pointer-events-none absolute rounded-full bg-white shadow-sm transition-[left] duration-200 ease-in-out",g.thumb,g.thumbTop,x?g.thumbOn:g.thumbOff)})]}),l&&jsxRuntime.jsx("span",{className:"select-none text-sm text-primary-700 dark:text-primary-300",children:l})]})}var fn=Object.defineProperty,it=(e,t)=>{for(var r in t)fn(e,r,{get:t[r],enumerable:true});};function $e(e){let{state:t,transaction:r}=e,{selection:n}=r,{doc:o}=r,{storedMarks:i}=r;return {...t,apply:t.apply.bind(t),applyTransaction:t.applyTransaction.bind(t),plugins:t.plugins,schema:t.schema,reconfigure:t.reconfigure.bind(t),toJSON:t.toJSON.bind(t),get storedMarks(){return i},get selection(){return n},get doc(){return o},get tr(){return n=r.selection,o=r.doc,i=r.storedMarks,r}}}var st=class{constructor(e){this.editor=e.editor,this.rawCommands=this.editor.extensionManager.commands,this.customState=e.state;}get hasCustomState(){return !!this.customState}get state(){return this.customState||this.editor.state}get commands(){let{rawCommands:e,editor:t,state:r}=this,{view:n}=t,{tr:o}=r,i=this.buildProps(o);return Object.fromEntries(Object.entries(e).map(([a,l])=>[a,(...d)=>{let p=l(...d)(i);return !o.getMeta("preventDispatch")&&!this.hasCustomState&&n.dispatch(o),p}]))}get chain(){return ()=>this.createChain()}get can(){return ()=>this.createCan()}createChain(e,t=true){let{rawCommands:r,editor:n,state:o}=this,{view:i}=n,a=[],l=!!e,s=e||o.tr,d=()=>(!l&&t&&!s.getMeta("preventDispatch")&&!this.hasCustomState&&i.dispatch(s),a.every(u=>u===true)),p={...Object.fromEntries(Object.entries(r).map(([u,m])=>[u,(...f)=>{let h=this.buildProps(s,t),g=m(...f)(h);return a.push(g),p}])),run:d};return p}createCan(e){let{rawCommands:t,state:r}=this,n=false,o=e||r.tr,i=this.buildProps(o,n);return {...Object.fromEntries(Object.entries(t).map(([l,s])=>[l,(...d)=>s(...d)({...i,dispatch:void 0})])),chain:()=>this.createChain(o,n)}}buildProps(e,t=true){let{rawCommands:r,editor:n,state:o}=this,{view:i}=n,a={tr:e,editor:n,view:i,state:$e({state:o,transaction:e}),dispatch:t?()=>{}:void 0,chain:()=>this.createChain(e,t),can:()=>this.createCan(e),get commands(){return Object.fromEntries(Object.entries(r).map(([l,s])=>[l,(...d)=>s(...d)(a)]))}};return a}},rr={};it(rr,{blur:()=>hn,clearContent:()=>gn,clearNodes:()=>yn,command:()=>vn,createParagraphNear:()=>wn,cut:()=>Mn,deleteCurrentNode:()=>Sn,deleteNode:()=>En,deleteRange:()=>Tn,deleteSelection:()=>Rn,enter:()=>Nn,exitCode:()=>An,extendMarkRange:()=>In,first:()=>_n,focus:()=>Hn,forEach:()=>On,insertContent:()=>Bn,insertContentAt:()=>Xn,joinBackward:()=>ro,joinDown:()=>to,joinForward:()=>no,joinItemBackward:()=>io,joinItemForward:()=>ao,joinTextblockBackward:()=>co,joinTextblockForward:()=>po,joinUp:()=>eo,keyboardShortcut:()=>fo,lift:()=>go,liftEmptyBlock:()=>yo,liftListItem:()=>ko,newlineInCode:()=>xo,resetAttributes:()=>Mo,scrollIntoView:()=>So,selectAll:()=>To,selectNodeBackward:()=>Ro,selectNodeForward:()=>Po,selectParentNode:()=>zo,selectTextblockEnd:()=>_o,selectTextblockStart:()=>$o,setContent:()=>Ho,setMark:()=>si,setMeta:()=>ai,setNode:()=>li,setNodeSelection:()=>di,setTextDirection:()=>ui,setTextSelection:()=>pi,sinkListItem:()=>fi,splitBlock:()=>bi,splitListItem:()=>wi,toggleList:()=>xi,toggleMark:()=>Mi,toggleNode:()=>Si,toggleWrap:()=>Ei,undoInputRule:()=>Ti,unsetAllMarks:()=>Ci,unsetMark:()=>Ri,unsetTextDirection:()=>Ni,updateAttributes:()=>Pi,wrapIn:()=>zi,wrapInList:()=>_i});var hn=()=>({editor:e,view:t})=>(requestAnimationFrame(()=>{var r;e.isDestroyed||(t.dom.blur(),(r=window?.getSelection())==null||r.removeAllRanges());}),true),gn=(e=true)=>({commands:t})=>t.setContent("",{emitUpdate:e}),yn=()=>({state:e,tr:t,dispatch:r})=>{let{selection:n}=t,{ranges:o}=n;return r&&o.forEach(({$from:i,$to:a})=>{e.doc.nodesBetween(i.pos,a.pos,(l,s)=>{if(l.type.isText)return;let{doc:d,mapping:p}=t,u=d.resolve(p.map(s)),m=d.resolve(p.map(s+l.nodeSize)),c=u.blockRange(m);if(!c)return;let f=transform.liftTarget(c);if(l.type.isTextblock){let{defaultType:h}=u.parent.contentMatchAt(u.index());t.setNodeMarkup(c.start,h);}(f||f===0)&&t.lift(c,f);});}),true},vn=e=>t=>e(t),wn=()=>({state:e,dispatch:t})=>commands.createParagraphNear(e,t),Mn=(e,t)=>({editor:r,tr:n})=>{let{state:o}=r,i=o.doc.slice(e.from,e.to);n.deleteRange(e.from,e.to);let a=n.mapping.map(t);return n.insert(a,i.content),n.setSelection(new state.TextSelection(n.doc.resolve(Math.max(a-1,0)))),true},Sn=()=>({tr:e,dispatch:t})=>{let{selection:r}=e,n=r.$anchor.node();if(n.content.size>0)return false;let o=e.selection.$anchor;for(let i=o.depth;i>0;i-=1)if(o.node(i).type===n.type){if(t){let l=o.before(i),s=o.after(i);e.delete(l,s).scrollIntoView();}return true}return false};function V(e,t){if(typeof e=="string"){if(!t.nodes[e])throw Error(`There is no node type named '${e}'. Maybe you forgot to add the extension?`);return t.nodes[e]}return e}var En=e=>({tr:t,state:r,dispatch:n})=>{let o=V(e,r.schema),i=t.selection.$anchor;for(let a=i.depth;a>0;a-=1)if(i.node(a).type===o){if(n){let s=i.before(a),d=i.after(a);t.delete(s,d).scrollIntoView();}return true}return false},Tn=e=>({tr:t,dispatch:r})=>{let{from:n,to:o}=e;return r&&t.delete(n,o),true},Rn=()=>({state:e,dispatch:t})=>commands.deleteSelection(e,t),Nn=()=>({commands:e})=>e.keyboardShortcut("Enter"),An=()=>({state:e,dispatch:t})=>commands.exitCode(e,t);function at(e){return Object.prototype.toString.call(e)==="[object RegExp]"}function Ie(e,t,r={strict:true}){let n=Object.keys(t);return n.length?n.every(o=>r.strict?t[o]===e[o]:at(t[o])?t[o].test(e[o]):t[o]===e[o]):true}function nr(e,t,r={}){return e.find(n=>n.type===t&&Ie(Object.fromEntries(Object.keys(r).map(o=>[o,n.attrs[o]])),r))}function Vt(e,t,r={}){return !!nr(e,t,r)}function or(e,t,r){var n;if(!e||!t)return;let o=e.parent.childAfter(e.parentOffset);if((!o.node||!o.node.marks.some(p=>p.type===t))&&(o=e.parent.childBefore(e.parentOffset)),!o.node||!o.node.marks.some(p=>p.type===t)||(r=r||((n=o.node.marks[0])==null?void 0:n.attrs),!nr([...o.node.marks],t,r)))return;let a=o.index,l=e.start()+o.offset,s=a+1,d=l+o.node.nodeSize;for(;a>0&&Vt([...e.parent.child(a-1).marks],t,r);)a-=1,l-=e.parent.child(a).nodeSize;for(;s<e.parent.childCount&&Vt([...e.parent.child(s).marks],t,r);)d+=e.parent.child(s).nodeSize,s+=1;return {from:l,to:d}}function Q(e,t){if(typeof e=="string"){if(!t.marks[e])throw Error(`There is no mark type named '${e}'. Maybe you forgot to add the extension?`);return t.marks[e]}return e}var In=(e,t={})=>({tr:r,state:n,dispatch:o})=>{let i=Q(e,n.schema),{doc:a,selection:l}=r,{$from:s,from:d,to:p}=l;if(o){let u=or(s,i,t);if(u&&u.from<=d&&u.to>=p){let m=state.TextSelection.create(a,u.from,u.to);r.setSelection(m);}}return true},_n=e=>t=>{let r=typeof e=="function"?e(t):e;for(let n=0;n<r.length;n+=1)if(r[n](t))return true;return false};function ir(e){return e instanceof state.TextSelection}function oe(e=0,t=0,r=0){return Math.min(Math.max(e,t),r)}function $n(e,t=null){if(!t)return null;let r=state.Selection.atStart(e),n=state.Selection.atEnd(e);if(t==="start"||t===true)return r;if(t==="end")return n;let o=r.from,i=n.to;return t==="all"?state.TextSelection.create(e,oe(0,o,i),oe(e.content.size,o,i)):state.TextSelection.create(e,oe(t,o,i),oe(t,o,i))}function Wt(){return navigator.platform==="Android"||/android/i.test(navigator.userAgent)}function _e(){return ["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document}function Dn(){return typeof navigator<"u"?/^((?!chrome|android).)*safari/i.test(navigator.userAgent):false}var Hn=(e=null,t={})=>({editor:r,view:n,tr:o,dispatch:i})=>{t={scrollIntoView:true,...t};let a=()=>{(_e()||Wt())&&n.dom.focus(),Dn()&&!_e()&&!Wt()&&n.dom.focus({preventScroll:true}),requestAnimationFrame(()=>{r.isDestroyed||(n.focus(),t?.scrollIntoView&&r.commands.scrollIntoView());});};try{if(n.hasFocus()&&e===null||e===!1)return !0}catch{return false}if(i&&e===null&&!ir(r.state.selection))return a(),true;let l=$n(o.doc,e)||r.state.selection,s=r.state.selection.eq(l);return i&&(s||o.setSelection(l),s&&o.storedMarks&&o.setStoredMarks(o.storedMarks),a()),true},On=(e,t)=>r=>e.every((n,o)=>t(n,{...r,index:o})),Bn=(e,t)=>({tr:r,commands:n})=>n.insertContentAt({from:r.selection.from,to:r.selection.to},e,t),sr=e=>{let t=e.childNodes;for(let r=t.length-1;r>=0;r-=1){let n=t[r];n.nodeType===3&&n.nodeValue&&/^(\n\s\s|\n)$/.test(n.nodeValue)?e.removeChild(n):n.nodeType===1&&sr(n);}return e};function Re(e){if(typeof window>"u")throw new Error("[tiptap error]: there is no window object available, so this function cannot be used");let t=`<body>${e}</body>`,r=new window.DOMParser().parseFromString(t,"text/html").body;return sr(r)}function he(e,t,r){if(e instanceof model.Node||e instanceof model.Fragment)return e;r={slice:true,parseOptions:{},...r};let n=typeof e=="object"&&e!==null,o=typeof e=="string";if(n)try{if(Array.isArray(e)&&e.length>0)return model.Fragment.fromArray(e.map(l=>t.nodeFromJSON(l)));let a=t.nodeFromJSON(e);return r.errorOnInvalidContent&&a.check(),a}catch(i){if(r.errorOnInvalidContent)throw new Error("[tiptap error]: Invalid JSON content",{cause:i});return console.warn("[tiptap warn]: Invalid content.","Passed value:",e,"Error:",i),he("",t,r)}if(o){if(r.errorOnInvalidContent){let a=false,l="",s=new model.Schema({topNode:t.spec.topNode,marks:t.spec.marks,nodes:t.spec.nodes.append({__tiptap__private__unknown__catch__all__node:{content:"inline*",group:"block",parseDOM:[{tag:"*",getAttrs:d=>(a=true,l=typeof d=="string"?d:d.outerHTML,null)}]}})});if(r.slice?model.DOMParser.fromSchema(s).parseSlice(Re(e),r.parseOptions):model.DOMParser.fromSchema(s).parse(Re(e),r.parseOptions),r.errorOnInvalidContent&&a)throw new Error("[tiptap error]: Invalid HTML content",{cause:new Error(`Invalid element found: ${l}`)})}let i=model.DOMParser.fromSchema(t);return r.slice?i.parseSlice(Re(e),r.parseOptions).content:i.parse(Re(e),r.parseOptions)}return he("",t,r)}function qn(e,t,r){let n=e.steps.length-1;if(n<t)return;let o=e.steps[n];if(!(o instanceof transform.ReplaceStep||o instanceof transform.ReplaceAroundStep))return;let i=e.mapping.maps[n],a=0;i.forEach((l,s,d,p)=>{a===0&&(a=p);}),e.setSelection(state.Selection.near(e.doc.resolve(a),r));}var Jn=e=>!("type"in e),Xn=(e,t,r)=>({tr:n,dispatch:o,editor:i})=>{var a;if(o){r={parseOptions:i.options.parseOptions,updateSelection:true,applyInputRules:false,applyPasteRules:false,...r};let l,s=g=>{i.emit("contentError",{editor:i,error:g,disableCollaboration:()=>{"collaboration"in i.storage&&typeof i.storage.collaboration=="object"&&i.storage.collaboration&&(i.storage.collaboration.isDisabled=true);}});},d={preserveWhitespace:"full",...r.parseOptions};if(!r.errorOnInvalidContent&&!i.options.enableContentCheck&&i.options.emitContentError)try{he(t,i.schema,{parseOptions:d,errorOnInvalidContent:!0});}catch(g){s(g);}try{l=he(t,i.schema,{parseOptions:d,errorOnInvalidContent:(a=r.errorOnInvalidContent)!=null?a:i.options.enableContentCheck});}catch(g){return s(g),false}let{from:p,to:u}=typeof e=="number"?{from:e,to:e}:{from:e.from,to:e.to},m=true,c=true;if((Jn(l)?l:[l]).forEach(g=>{g.check(),m=m?g.isText&&g.marks.length===0:false,c=c?g.isBlock:false;}),p===u&&c){let{parent:g}=n.doc.resolve(p);g.isTextblock&&!g.type.spec.code&&!g.childCount&&(p-=1,u+=1);}let h;if(m){if(Array.isArray(t))h=t.map(g=>g.text||"").join("");else if(t instanceof model.Fragment){let g="";t.forEach(v=>{v.text&&(g+=v.text);}),h=g;}else typeof t=="object"&&t&&t.text?h=t.text:h=t;n.insertText(h,p,u);}else {h=l;let g=n.doc.resolve(p),v=g.node(),C=g.parentOffset===0,T=v.isText||v.isTextblock,x=v.content.size>0;C&&T&&x&&(p=Math.max(0,p-1)),n.replaceWith(p,u,h);}r.updateSelection&&qn(n,n.steps.length-1,-1),r.applyInputRules&&n.setMeta("applyInputRules",{from:p,text:h}),r.applyPasteRules&&n.setMeta("applyPasteRules",{from:p,text:h});}return true},eo=()=>({state:e,dispatch:t})=>commands.joinUp(e,t),to=()=>({state:e,dispatch:t})=>commands.joinDown(e,t),ro=()=>({state:e,dispatch:t})=>commands.joinBackward(e,t),no=()=>({state:e,dispatch:t})=>commands.joinForward(e,t),io=()=>({state:e,dispatch:t,tr:r})=>{try{let n=transform.joinPoint(e.doc,e.selection.$from.pos,-1);return n==null?!1:(r.join(n,2),t&&t(r),!0)}catch{return false}},ao=()=>({state:e,dispatch:t,tr:r})=>{try{let n=transform.joinPoint(e.doc,e.selection.$from.pos,1);return n==null?!1:(r.join(n,2),t&&t(r),!0)}catch{return false}},co=()=>({state:e,dispatch:t})=>commands.joinTextblockBackward(e,t),po=()=>({state:e,dispatch:t})=>commands.joinTextblockForward(e,t);function ar(){return typeof navigator<"u"?/Mac/.test(navigator.platform):false}function mo(e){let t=e.split(/-(?!$)/),r=t[t.length-1];r==="Space"&&(r=" ");let n,o,i,a;for(let l=0;l<t.length-1;l+=1){let s=t[l];if(/^(cmd|meta|m)$/i.test(s))a=true;else if(/^a(lt)?$/i.test(s))n=true;else if(/^(c|ctrl|control)$/i.test(s))o=true;else if(/^s(hift)?$/i.test(s))i=true;else if(/^mod$/i.test(s))_e()||ar()?a=true:o=true;else throw new Error(`Unrecognized modifier name: ${s}`)}return n&&(r=`Alt-${r}`),o&&(r=`Ctrl-${r}`),a&&(r=`Meta-${r}`),i&&(r=`Shift-${r}`),r}var fo=e=>({editor:t,view:r,tr:n,dispatch:o})=>{let i=mo(e).split(/-(?!$)/),a=i.find(d=>!["Alt","Ctrl","Meta","Shift"].includes(d)),l=new KeyboardEvent("keydown",{key:a==="Space"?" ":a,altKey:i.includes("Alt"),ctrlKey:i.includes("Ctrl"),metaKey:i.includes("Meta"),shiftKey:i.includes("Shift"),bubbles:true,cancelable:true}),s=t.captureTransaction(()=>{r.someProp("handleKeyDown",d=>d(r,l));});return s?.steps.forEach(d=>{let p=d.map(n.mapping);p&&o&&n.maybeStep(p);}),true};function lt(e,t,r={}){let{from:n,to:o,empty:i}=e.selection,a=t?V(t,e.schema):null,l=[];e.doc.nodesBetween(n,o,(u,m)=>{if(u.isText)return;let c=Math.max(n,m),f=Math.min(o,m+u.nodeSize);l.push({node:u,from:c,to:f});});let s=o-n,d=l.filter(u=>a?a.name===u.node.type.name:true).filter(u=>Ie(u.node.attrs,r,{strict:false}));return i?!!d.length:d.reduce((u,m)=>u+m.to-m.from,0)>=s}var go=(e,t={})=>({state:r,dispatch:n})=>{let o=V(e,r.schema);return lt(r,o,t)?commands.lift(r,n):false},yo=()=>({state:e,dispatch:t})=>commands.liftEmptyBlock(e,t),ko=e=>({state:t,dispatch:r})=>{let n=V(e,t.schema);return schemaList.liftListItem(n)(t,r)},xo=()=>({state:e,dispatch:t})=>commands.newlineInCode(e,t);function lr(e,t){return t.nodes[e]?"node":t.marks[e]?"mark":null}function qt(e,t){let r=typeof t=="string"?[t]:t;return Object.keys(e).reduce((n,o)=>(r.includes(o)||(n[o]=e[o]),n),{})}var Mo=(e,t)=>({tr:r,state:n,dispatch:o})=>{let i=null,a=null,l=lr(typeof e=="string"?e:e.name,n.schema);if(!l)return false;l==="node"&&(i=V(e,n.schema)),l==="mark"&&(a=Q(e,n.schema));let s=false;return r.selection.ranges.forEach(d=>{n.doc.nodesBetween(d.$from.pos,d.$to.pos,(p,u)=>{i&&i===p.type&&(s=true,o&&r.setNodeMarkup(u,void 0,qt(p.attrs,t))),a&&p.marks.length&&p.marks.forEach(m=>{a===m.type&&(s=true,o&&r.addMark(u,u+p.nodeSize,a.create(qt(m.attrs,t))));});});}),s},So=()=>({tr:e,dispatch:t})=>(t&&e.scrollIntoView(),true),To=()=>({tr:e,dispatch:t})=>{if(t){let r=new state.AllSelection(e.doc);e.setSelection(r);}return true},Ro=()=>({state:e,dispatch:t})=>commands.selectNodeBackward(e,t),Po=()=>({state:e,dispatch:t})=>commands.selectNodeForward(e,t),zo=()=>({state:e,dispatch:t})=>commands.selectParentNode(e,t),_o=()=>({state:e,dispatch:t})=>commands.selectTextblockEnd(e,t),$o=()=>({state:e,dispatch:t})=>commands.selectTextblockStart(e,t);function Do(e,t,r={},n={}){return he(e,t,{slice:false,parseOptions:r,errorOnInvalidContent:n.errorOnInvalidContent})}var Ho=(e,{errorOnInvalidContent:t,emitUpdate:r=true,parseOptions:n={}}={})=>({editor:o,tr:i,dispatch:a,commands:l})=>{let{doc:s}=i;if(n.preserveWhitespace!=="full"){let d=Do(e,o.schema,n,{errorOnInvalidContent:t??o.options.enableContentCheck});return a&&i.replaceWith(0,s.content.size,d).setMeta("preventUpdate",!r),true}return a&&i.setMeta("preventUpdate",!r),l.insertContentAt({from:0,to:s.content.size},e,{parseOptions:n,errorOnInvalidContent:t??o.options.enableContentCheck})};function Oo(e,t){let r=Q(t,e.schema),{from:n,to:o,empty:i}=e.selection,a=[];i?(e.storedMarks&&a.push(...e.storedMarks),a.push(...e.selection.$head.marks())):e.doc.nodesBetween(n,o,s=>{a.push(...s.marks);});let l=a.find(s=>s.type.name===r.name);return l?{...l.attrs}:{}}function Fo(e,t){let r=new transform.Transform(e);return t.forEach(n=>{n.steps.forEach(o=>{r.step(o);});}),r}function Vo(e){for(let t=0;t<e.edgeCount;t+=1){let{type:r}=e.edge(t);if(r.isTextblock&&!r.hasRequiredAttrs())return r}return null}function jo(e,t){for(let r=e.depth;r>0;r-=1){let n=e.node(r);if(t(n))return {pos:r>0?e.before(r):0,start:e.start(r),depth:r,node:n}}}function ct(e){return t=>jo(t.$from,e)}function E(e,t,r){return e.config[t]===void 0&&e.parent?E(e.parent,t,r):typeof e.config[t]=="function"?e.config[t].bind({...r,parent:e.parent?E(e.parent,t,r):null}):e.config[t]}function Ko(e){return typeof e=="function"}function _(e,t=void 0,...r){return Ko(e)?t?e.bind(t)(...r):e(...r):e}function ae(e){let t=e.filter(o=>o.type==="extension"),r=e.filter(o=>o.type==="node"),n=e.filter(o=>o.type==="mark");return {baseExtensions:t,nodeExtensions:r,markExtensions:n}}function Jo(e){let t=[],r="",n=false,o=false,i=0,a=e.length;for(let l=0;l<a;l+=1){let s=e[l];if(s==="'"&&!o){n=!n,r+=s;continue}if(s==='"'&&!n){o=!o,r+=s;continue}if(!n&&!o){if(s==="("){i+=1,r+=s;continue}if(s===")"&&i>0){i-=1,r+=s;continue}if(s===";"&&i===0){t.push(r),r="";continue}}r+=s;}return r&&t.push(r),t}function Jt(e){let t=[],r=Jo(e||""),n=r.length;for(let o=0;o<n;o+=1){let i=r[o],a=i.indexOf(":");if(a===-1)continue;let l=i.slice(0,a).trim(),s=i.slice(a+1).trim();l&&s&&t.push([l,s]);}return t}function le(...e){return e.filter(t=>!!t).reduce((t,r)=>{let n={...t};return Object.entries(r).forEach(([o,i])=>{if(!n[o]){n[o]=i;return}if(o==="class"){let l=i?String(i).split(" "):[],s=n[o]?n[o].split(" "):[],d=l.filter(p=>!s.includes(p));n[o]=[...s,...d].join(" ");}else if(o==="style"){let l=new Map([...Jt(n[o]),...Jt(i)]);n[o]=Array.from(l.entries()).map(([s,d])=>`${s}: ${d}`).join("; ");}else n[o]=i;}),n},{})}function Qo(e,t,r){let{from:n,to:o}=t,{blockSeparator:i=`
2
+
3
+ `,textSerializers:a={}}=r||{},l="";return e.nodesBetween(n,o,(s,d,p,u)=>{var m;s.isBlock&&d>n&&(l+=i);let c=a?.[s.type.name];if(c)return p&&(l+=c({node:s,pos:d,parent:p,index:u,range:t})),false;s.isText&&(l+=(m=s?.text)==null?void 0:m.slice(Math.max(n,d)-d,o-d));}),l}function Zo(e){return Object.fromEntries(Object.entries(e.nodes).filter(([,t])=>t.spec.toText).map(([t,r])=>[t,r.spec.toText]))}function ei(e,t=JSON.stringify){let r={};return e.filter(n=>{let o=t(n);return Object.prototype.hasOwnProperty.call(r,o)?false:r[o]=true})}function ti(e){let t=ei(e);return t.length===1?t:t.filter((r,n)=>!t.filter((i,a)=>a!==n).some(i=>r.oldRange.from>=i.oldRange.from&&r.oldRange.to<=i.oldRange.to&&r.newRange.from>=i.newRange.from&&r.newRange.to<=i.newRange.to))}function ri(e){let{mapping:t,steps:r}=e,n=[];return t.maps.forEach((o,i)=>{let a=[];if(o.ranges.length)o.forEach((l,s)=>{a.push({from:l,to:s});});else {let{from:l,to:s}=r[i];if(l===void 0||s===void 0)return;a.push({from:l,to:s});}a.forEach(({from:l,to:s})=>{let d=t.slice(i).map(l,-1),p=t.slice(i).map(s),u=t.invert().map(d,-1),m=t.invert().map(p);n.push({oldRange:{from:u,to:m},newRange:{from:d,to:p}});});}),ti(n)}function ze(e,t,r){return Object.fromEntries(Object.entries(r).filter(([n])=>{let o=e.find(i=>i.type===t&&i.name===n);return o?o.attribute.keepOnSplit:false}))}function oi(e,t,r={}){let{empty:n,ranges:o}=e.selection,i=t?Q(t,e.schema):null;if(n)return !!(e.storedMarks||e.selection.$from.marks()).filter(u=>i?i.name===u.type.name:true).find(u=>Ie(u.attrs,r,{strict:false}));let a=0,l=[];if(o.forEach(({$from:u,$to:m})=>{let c=u.pos,f=m.pos;e.doc.nodesBetween(c,f,(h,g)=>{if(i&&h.inlineContent&&!h.type.allowsMarkType(i))return false;if(!h.isText&&!h.marks.length)return;let v=Math.max(c,g),C=Math.min(f,g+h.nodeSize),T=C-v;a+=T,l.push(...h.marks.map(x=>({mark:x,from:v,to:C})));});}),a===0)return false;let s=l.filter(u=>i?i.name===u.mark.type.name:true).filter(u=>Ie(u.mark.attrs,r,{strict:false})).reduce((u,m)=>u+m.to-m.from,0),d=l.filter(u=>i?u.mark.type!==i&&u.mark.type.excludes(i):true).reduce((u,m)=>u+m.to-m.from,0);return (s>0?s+d:s)>=a}function Zt(e,t){let{nodeExtensions:r}=ae(t),n=r.find(a=>a.name===e);if(!n)return false;let o={name:n.name,options:n.options,storage:n.storage},i=_(E(n,"group",o));return typeof i!="string"?false:i.split(" ").includes("list")}function pr(e,{checkChildren:t=true,ignoreWhitespace:r=false}={}){var n;if(r){if(e.type.name==="hardBreak")return true;if(e.isText)return !/\S/.test((n=e.text)!=null?n:"")}if(e.isText)return !e.text;if(e.isAtom||e.isLeaf)return false;if(e.content.childCount===0)return true;if(t){let o=true;return e.content.forEach(i=>{o!==false&&(pr(i,{ignoreWhitespace:r,checkChildren:t})||(o=false));}),o}return false}function ii(e,t,r){var n;let{selection:o}=t,i=null;if(ir(o)&&(i=o.$cursor),i){let l=(n=e.storedMarks)!=null?n:i.marks();return i.parent.type.allowsMarkType(r)&&(!!r.isInSet(l)||!l.some(d=>d.type.excludes(r)))}let{ranges:a}=o;return a.some(({$from:l,$to:s})=>{let d=l.depth===0?e.doc.inlineContent&&e.doc.type.allowsMarkType(r):false;return e.doc.nodesBetween(l.pos,s.pos,(p,u,m)=>{if(d)return false;if(p.isInline){let c=!m||m.type.allowsMarkType(r),f=!!r.isInSet(p.marks)||!p.marks.some(h=>h.type.excludes(r));d=c&&f;}return !d}),d})}var si=(e,t={})=>({tr:r,state:n,dispatch:o})=>{let{selection:i}=r,{empty:a,ranges:l}=i,s=Q(e,n.schema);if(o)if(a){let d=Oo(n,s);r.addStoredMark(s.create({...d,...t}));}else l.forEach(d=>{let p=d.$from.pos,u=d.$to.pos;n.doc.nodesBetween(p,u,(m,c)=>{let f=Math.max(c,p),h=Math.min(c+m.nodeSize,u);m.marks.find(v=>v.type===s)?m.marks.forEach(v=>{s===v.type&&r.addMark(f,h,s.create({...v.attrs,...t}));}):r.addMark(f,h,s.create(t));});});return ii(n,r,s)},ai=(e,t)=>({tr:r})=>(r.setMeta(e,t),true),li=(e,t={})=>({state:r,dispatch:n,chain:o})=>{let i=V(e,r.schema),a;return r.selection.$anchor.sameParent(r.selection.$head)&&(a=r.selection.$anchor.parent.attrs),i.isTextblock?o().command(({commands:l})=>commands.setBlockType(i,{...a,...t})(r)?true:l.clearNodes()).command(({state:l})=>commands.setBlockType(i,{...a,...t})(l,n)).run():(console.warn('[tiptap warn]: Currently "setNode()" only supports text block nodes.'),false)},di=e=>({tr:t,dispatch:r})=>{if(r){let{doc:n}=t,o=oe(e,0,n.content.size),i=state.NodeSelection.create(n,o);t.setSelection(i);}return true},ui=(e,t)=>({tr:r,state:n,dispatch:o})=>{let{selection:i}=n,a,l;return typeof t=="number"?(a=t,l=t):t&&"from"in t&&"to"in t?(a=t.from,l=t.to):(a=i.from,l=i.to),o&&r.doc.nodesBetween(a,l,(s,d)=>{s.isText||r.setNodeMarkup(d,void 0,{...s.attrs,dir:e});}),true},pi=e=>({tr:t,dispatch:r})=>{if(r){let{doc:n}=t,{from:o,to:i}=typeof e=="number"?{from:e,to:e}:e,a=state.TextSelection.atStart(n).from,l=state.TextSelection.atEnd(n).to,s=oe(o,a,l),d=oe(i,a,l),p=state.TextSelection.create(n,s,d);t.setSelection(p);}return true},fi=e=>({state:t,dispatch:r})=>{let n=V(e,t.schema);return schemaList.sinkListItem(n)(t,r)};function tr(e,t){let r=e.storedMarks||e.selection.$to.parentOffset&&e.selection.$from.marks();if(r){let n=r.filter(o=>t?.includes(o.type.name));e.tr.ensureMarks(n);}}var bi=({keepMarks:e=true}={})=>({tr:t,state:r,dispatch:n,editor:o})=>{let{selection:i,doc:a}=t,{$from:l,$to:s}=i,d=o.extensionManager.attributes,p=ze(d,l.node().type.name,l.node().attrs);if(i instanceof state.NodeSelection&&i.node.isBlock)return !l.parentOffset||!transform.canSplit(a,l.pos)?false:(n&&(e&&tr(r,o.extensionManager.splittableMarks),t.split(l.pos).scrollIntoView()),true);if(!l.parent.isBlock)return false;let u=s.parentOffset===s.parent.content.size,m=l.depth===0?void 0:Vo(l.node(-1).contentMatchAt(l.indexAfter(-1))),c=u&&m?[{type:m,attrs:p}]:void 0,f=transform.canSplit(t.doc,t.mapping.map(l.pos),1,c);if(!c&&!f&&transform.canSplit(t.doc,t.mapping.map(l.pos),1,m?[{type:m}]:void 0)&&(f=true,c=m?[{type:m,attrs:p}]:void 0),n){if(f&&(i instanceof state.TextSelection&&t.deleteSelection(),t.split(t.mapping.map(l.pos),1,c),m&&!u&&!l.parentOffset&&l.parent.type!==m)){let h=t.mapping.map(l.before()),g=t.doc.resolve(h);l.node(-1).canReplaceWith(g.index(),g.index()+1,m)&&t.setNodeMarkup(t.mapping.map(l.before()),m);}e&&tr(r,o.extensionManager.splittableMarks),t.scrollIntoView();}return f},wi=(e,t={})=>({tr:r,state:n,dispatch:o,editor:i})=>{var a;let l=V(e,n.schema),{$from:s,$to:d}=n.selection,p=n.selection.node;if(p&&p.isBlock||s.depth<2||!s.sameParent(d))return false;let u=s.node(-1);if(u.type!==l)return false;let m=i.extensionManager.attributes;if(s.parent.content.size===0&&s.node(-1).childCount===s.indexAfter(-1)){if(s.depth===2||s.node(-3).type!==l||s.index(-2)!==s.node(-2).childCount-1)return false;if(o){let v=model.Fragment.empty,C=s.index(-1)?1:s.index(-2)?2:3;for(let O=s.depth-C;O>=s.depth-3;O-=1)v=model.Fragment.from(s.node(O).copy(v));let T=s.indexAfter(-1)<s.node(-2).childCount?1:s.indexAfter(-2)<s.node(-3).childCount?2:3,x={...ze(m,s.node().type.name,s.node().attrs),...t},M=((a=l.contentMatch.defaultType)==null?void 0:a.createAndFill(x))||void 0;v=v.append(model.Fragment.from(l.createAndFill(null,M)||void 0));let N=s.before(s.depth-(C-1));r.replace(N,s.after(-T),new model.Slice(v,4-C,0));let z=-1;r.doc.nodesBetween(N,r.doc.content.size,(O,U)=>{if(z>-1)return false;O.isTextblock&&O.content.size===0&&(z=U+1);}),z>-1&&r.setSelection(state.TextSelection.near(r.doc.resolve(z))),r.scrollIntoView();}return true}let c=d.pos===s.end()?u.contentMatchAt(0).defaultType:null,f={...ze(m,u.type.name,u.attrs),...t},h={...ze(m,s.node().type.name,s.node().attrs),...t};r.delete(s.pos,d.pos);let g=c?[{type:l,attrs:f},{type:c,attrs:h}]:[{type:l,attrs:f}];if(!transform.canSplit(r.doc,s.pos,2))return false;if(o){let{selection:v,storedMarks:C}=n,{splittableMarks:T}=i.extensionManager,x=C||v.$to.parentOffset&&v.$from.marks();if(r.split(s.pos,2,g).scrollIntoView(),!x||!o)return true;let M=x.filter(N=>T.includes(N.type.name));r.ensureMarks(M);}return true},rt=(e,t)=>{let r=ct(a=>a.type===t)(e.selection);if(!r)return true;let n=e.doc.resolve(Math.max(0,r.pos-1)).before(r.depth);if(n===void 0)return true;let o=e.doc.nodeAt(n);return r.node.type===o?.type&&transform.canJoin(e.doc,r.pos)&&e.join(r.pos),true},nt=(e,t)=>{let r=ct(a=>a.type===t)(e.selection);if(!r)return true;let n=e.doc.resolve(r.start).after(r.depth);if(n===void 0)return true;let o=e.doc.nodeAt(n);return r.node.type===o?.type&&transform.canJoin(e.doc,n)&&e.join(n),true},xi=(e,t,r,n={})=>({editor:o,tr:i,state:a,dispatch:l,chain:s,commands:d,can:p})=>{let{extensions:u,splittableMarks:m}=o.extensionManager,c=V(e,a.schema),f=V(t,a.schema),{selection:h,storedMarks:g}=a,{$from:v,$to:C}=h,T=v.blockRange(C),x=g||h.$to.parentOffset&&h.$from.marks();if(!T)return false;let M=ct(N=>Zt(N.type.name,u))(h);if(T.depth>=1&&M&&T.depth-M.depth<=1){if(M.node.type===c)return d.liftListItem(f);if(Zt(M.node.type.name,u)&&c.validContent(M.node.content)&&l)return s().command(()=>(i.setNodeMarkup(M.pos,c),true)).command(()=>rt(i,c)).command(()=>nt(i,c)).run()}return !r||!x||!l?s().command(()=>p().wrapInList(c,n)?true:d.clearNodes()).wrapInList(c,n).command(()=>rt(i,c)).command(()=>nt(i,c)).run():s().command(()=>{let N=p().wrapInList(c,n),z=x.filter(O=>m.includes(O.type.name));return i.ensureMarks(z),N?true:d.clearNodes()}).wrapInList(c,n).command(()=>rt(i,c)).command(()=>nt(i,c)).run()},Mi=(e,t={},r={})=>({state:n,commands:o})=>{let{extendEmptyMarkRange:i=false}=r,a=Q(e,n.schema);return oi(n,a,t)?o.unsetMark(a,{extendEmptyMarkRange:i}):o.setMark(a,t)},Si=(e,t,r={})=>({state:n,commands:o})=>{let i=V(e,n.schema),a=V(t,n.schema),l=lt(n,i,r),s;return n.selection.$anchor.sameParent(n.selection.$head)&&(s=n.selection.$anchor.parent.attrs),l?o.setNode(a,s):o.setNode(i,{...s,...r})},Ei=(e,t={})=>({state:r,commands:n})=>{let o=V(e,r.schema);return lt(r,o,t)?n.lift(o):n.wrapIn(o,t)},Ti=()=>({state:e,dispatch:t})=>{let r=e.plugins;for(let n=0;n<r.length;n+=1){let o=r[n],i;if(o.spec.isInputRules&&(i=o.getState(e))){if(t){let a=e.tr,l=i.transform;for(let s=l.steps.length-1;s>=0;s-=1)a.step(l.steps[s].invert(l.docs[s]));if(i.text){let s=a.doc.resolve(i.from).marks();a.replaceWith(i.from,i.to,e.schema.text(i.text,s));}else a.delete(i.from,i.to);}return true}}return false},Ci=()=>({tr:e,dispatch:t})=>{let{selection:r}=e,{empty:n,ranges:o}=r;return n||t&&o.forEach(i=>{e.removeMark(i.$from.pos,i.$to.pos);}),true},Ri=(e,t={})=>({tr:r,state:n,dispatch:o})=>{var i;let{extendEmptyMarkRange:a=false}=t,{selection:l}=r,s=Q(e,n.schema),{$from:d,empty:p,ranges:u}=l;if(!o)return true;if(p&&a){let{from:m,to:c}=l,f=(i=d.marks().find(g=>g.type===s))==null?void 0:i.attrs,h=or(d,s,f);h&&(m=h.from,c=h.to),r.removeMark(m,c,s);}else u.forEach(m=>{r.removeMark(m.$from.pos,m.$to.pos,s);});return r.removeStoredMark(s),true},Ni=e=>({tr:t,state:r,dispatch:n})=>{let{selection:o}=r,i,a;return typeof e=="number"?(i=e,a=e):e&&"from"in e&&"to"in e?(i=e.from,a=e.to):(i=o.from,a=o.to),n&&t.doc.nodesBetween(i,a,(l,s)=>{if(l.isText)return;let d={...l.attrs};delete d.dir,t.setNodeMarkup(s,void 0,d);}),true},Pi=(e,t={})=>({tr:r,state:n,dispatch:o})=>{let i=null,a=null,l=lr(typeof e=="string"?e:e.name,n.schema);if(!l)return false;l==="node"&&(i=V(e,n.schema)),l==="mark"&&(a=Q(e,n.schema));let s=false;return r.selection.ranges.forEach(d=>{let p=d.$from.pos,u=d.$to.pos,m,c,f,h;r.selection.empty?n.doc.nodesBetween(p,u,(g,v)=>{i&&i===g.type&&(s=true,f=Math.max(v,p),h=Math.min(v+g.nodeSize,u),m=v,c=g);}):n.doc.nodesBetween(p,u,(g,v)=>{v<p&&i&&i===g.type&&(s=true,f=Math.max(v,p),h=Math.min(v+g.nodeSize,u),m=v,c=g),v>=p&&v<=u&&(i&&i===g.type&&(s=true,o&&r.setNodeMarkup(v,void 0,{...g.attrs,...t})),a&&g.marks.length&&g.marks.forEach(C=>{if(a===C.type&&(s=true,o)){let T=Math.max(v,p),x=Math.min(v+g.nodeSize,u);r.addMark(T,x,a.create({...C.attrs,...t}));}}));}),c&&(m!==void 0&&o&&r.setNodeMarkup(m,void 0,{...c.attrs,...t}),a&&c.marks.length&&c.marks.forEach(g=>{a===g.type&&o&&r.addMark(f,h,a.create({...g.attrs,...t}));}));}),s},zi=(e,t={})=>({state:r,dispatch:n})=>{let o=V(e,r.schema);return commands.wrapIn(o,t)(r,n)},_i=(e,t={})=>({state:r,dispatch:n})=>{let o=V(e,r.schema);return schemaList.wrapInList(o,t)(r,n)};function Bi(e){return Object.prototype.toString.call(e).slice(8,-1)}function Pe(e){return Bi(e)!=="Object"?false:e.constructor===Object&&Object.getPrototypeOf(e)===Object.prototype}function fr(e,t){let r={...e};return Pe(e)&&Pe(t)&&Object.keys(t).forEach(n=>{Pe(t[n])&&Pe(e[n])?r[n]=fr(e[n],t[n]):r[n]=t[n];}),r}var ut=class{constructor(e={}){this.type="extendable",this.parent=null,this.child=null,this.name="",this.config={name:this.name},this.config={...this.config,...e},this.name=this.config.name;}get options(){return {..._(E(this,"addOptions",{name:this.name}))||{}}}get storage(){return {..._(E(this,"addStorage",{name:this.name,options:this.options}))||{}}}configure(e={}){let t=this.extend({...this.config,addOptions:()=>fr(this.options,e)});return t.name=this.name,t.parent=this.parent,t}extend(e={}){let t=new this.constructor({...this.config,...e});return t.parent=this,this.child=t,t.name="name"in e?e.name:t.parent.name,t}},pt=class hr extends ut{constructor(){super(...arguments),this.type="mark";}static create(t={}){let r=typeof t=="function"?t():t;return new hr(r)}static handleExit({editor:t,mark:r}){let{tr:n}=t.state,o=t.state.selection.$from;if(o.pos===o.end()){let a=o.marks();if(!!!a.find(d=>d?.type.name===r.name))return false;let s=a.find(d=>d?.type.name===r.name);return s&&n.removeStoredMark(s),n.insertText(" ",o.pos),t.view.dispatch(n),true}return false}configure(t){return super.configure(t)}extend(t){let r=typeof t=="function"?t():t;return super.extend(r)}};var Ji={};it(Ji,{ClipboardTextSerializer:()=>Gi,Commands:()=>Qi,Delete:()=>es,Drop:()=>ns,Editable:()=>ss,FocusEvents:()=>cs,Keymap:()=>ps,Paste:()=>hs,Tabindex:()=>ys,TextDirection:()=>ws,focusEventsPluginKey:()=>br});var I=class gr extends ut{constructor(){super(...arguments),this.type="extension";}static create(t={}){let r=typeof t=="function"?t():t;return new gr(r)}configure(t){return super.configure(t)}extend(t){let r=typeof t=="function"?t():t;return super.extend(r)}},Gi=I.create({name:"clipboardTextSerializer",addOptions(){return {blockSeparator:void 0}},addProseMirrorPlugins(){return [new state.Plugin({key:new state.PluginKey("clipboardTextSerializer"),props:{clipboardTextSerializer:()=>{let{editor:e}=this,{state:t,schema:r}=e,{doc:n,selection:o}=t,{ranges:i}=o,a=Math.min(...i.map(p=>p.$from.pos)),l=Math.max(...i.map(p=>p.$to.pos)),s=Zo(r);return Qo(n,{from:a,to:l},{...this.options.blockSeparator!==void 0?{blockSeparator:this.options.blockSeparator}:{},textSerializers:s})}}})]}}),Qi=I.create({name:"commands",addCommands(){return {...rr}}}),es=I.create({name:"delete",onUpdate({transaction:e,appendedTransactions:t}){var r,n,o;let i=()=>{var a,l,s,d;if((d=(s=(l=(a=this.editor.options.coreExtensionOptions)==null?void 0:a.delete)==null?void 0:l.filterTransaction)==null?void 0:s.call(l,e))!=null?d:e.getMeta("y-sync$"))return;let p=Fo(e.before,[e,...t]);ri(p).forEach(c=>{p.mapping.mapResult(c.oldRange.from).deletedAfter&&p.mapping.mapResult(c.oldRange.to).deletedBefore&&p.before.nodesBetween(c.oldRange.from,c.oldRange.to,(f,h)=>{let g=h+f.nodeSize-2,v=c.oldRange.from<=h&&g<=c.oldRange.to;this.editor.emit("delete",{type:"node",node:f,from:h,to:g,newFrom:p.mapping.map(h),newTo:p.mapping.map(g),deletedRange:c.oldRange,newRange:c.newRange,partial:!v,editor:this.editor,transaction:e,combinedTransform:p});});});let m=p.mapping;p.steps.forEach((c,f)=>{var h,g;if(c instanceof transform.RemoveMarkStep){let v=m.slice(f).map(c.from,-1),C=m.slice(f).map(c.to),T=m.invert().map(v,-1),x=m.invert().map(C),M=(h=p.doc.nodeAt(v-1))==null?void 0:h.marks.some(z=>z.eq(c.mark)),N=(g=p.doc.nodeAt(C))==null?void 0:g.marks.some(z=>z.eq(c.mark));this.editor.emit("delete",{type:"mark",mark:c.mark,from:c.from,to:c.to,deletedRange:{from:T,to:x},newRange:{from:v,to:C},partial:!!(N||M),editor:this.editor,transaction:e,combinedTransform:p});}});};(o=(n=(r=this.editor.options.coreExtensionOptions)==null?void 0:r.delete)==null?void 0:n.async)==null||o?setTimeout(i,0):i();}}),ns=I.create({name:"drop",addProseMirrorPlugins(){return [new state.Plugin({key:new state.PluginKey("tiptapDrop"),props:{handleDrop:(e,t,r,n)=>{this.editor.emit("drop",{editor:this.editor,event:t,slice:r,moved:n});}}})]}}),ss=I.create({name:"editable",addProseMirrorPlugins(){return [new state.Plugin({key:new state.PluginKey("editable"),props:{editable:()=>this.editor.options.editable}})]}}),br=new state.PluginKey("focusEvents"),cs=I.create({name:"focusEvents",addProseMirrorPlugins(){let{editor:e}=this;return [new state.Plugin({key:br,props:{handleDOMEvents:{focus:(t,r)=>{e.isFocused=true;let n=e.state.tr.setMeta("focus",{event:r}).setMeta("addToHistory",false);return t.dispatch(n),false},blur:(t,r)=>{e.isFocused=false;let n=e.state.tr.setMeta("blur",{event:r}).setMeta("addToHistory",false);return t.dispatch(n),false}}}})]}}),ps=I.create({name:"keymap",addKeyboardShortcuts(){let e=()=>this.editor.commands.first(({commands:a})=>[()=>a.undoInputRule(),()=>a.command(({tr:l})=>{let{selection:s,doc:d}=l,{empty:p,$anchor:u}=s,{pos:m,parent:c}=u,f=u.parent.isTextblock&&m>0?l.doc.resolve(m-1):u,h=f.parent.type.spec.isolating,g=u.pos-u.parentOffset,v=h&&f.parent.childCount===1?g===u.pos:state.Selection.atStart(d).from===m;return !p||!c.type.isTextblock||c.textContent.length||!v||v&&u.parent.type.name==="paragraph"?false:a.clearNodes()}),()=>a.deleteSelection(),()=>a.joinBackward(),()=>a.selectNodeBackward()]),t=()=>this.editor.commands.first(({commands:a})=>[()=>a.deleteSelection(),()=>a.deleteCurrentNode(),()=>a.joinForward(),()=>a.selectNodeForward()]),n={Enter:()=>this.editor.commands.first(({commands:a})=>[()=>a.newlineInCode(),()=>a.createParagraphNear(),()=>a.liftEmptyBlock(),()=>a.splitBlock()]),"Mod-Enter":()=>this.editor.commands.exitCode(),Backspace:e,"Mod-Backspace":e,"Shift-Backspace":e,Delete:t,"Mod-Delete":t,"Mod-a":()=>this.editor.commands.selectAll()},o={...n},i={...n,"Ctrl-h":e,"Alt-Backspace":e,"Ctrl-d":t,"Ctrl-Alt-Backspace":t,"Alt-Delete":t,"Alt-d":t,"Ctrl-a":()=>this.editor.commands.selectTextblockStart(),"Ctrl-e":()=>this.editor.commands.selectTextblockEnd()};return _e()||ar()?i:o},addProseMirrorPlugins(){return [new state.Plugin({key:new state.PluginKey("clearDocument"),appendTransaction:(e,t,r)=>{if(e.some(h=>h.getMeta("composition")))return;let n=e.some(h=>h.docChanged)&&!t.doc.eq(r.doc),o=e.some(h=>h.getMeta("preventClearDocument"));if(!n||o)return;let{empty:i,from:a,to:l}=t.selection,s=state.Selection.atStart(t.doc).from,d=state.Selection.atEnd(t.doc).to;if(i||!(a===s&&l===d)||!pr(r.doc))return;let m=r.tr,c=$e({state:r,transaction:m}),{commands:f}=new st({editor:this.editor,state:c});if(f.clearNodes(),!!m.steps.length)return m}})]}}),hs=I.create({name:"paste",addProseMirrorPlugins(){return [new state.Plugin({key:new state.PluginKey("tiptapPaste"),props:{handlePaste:(e,t,r)=>{this.editor.emit("paste",{editor:this.editor,event:t,slice:r});}}})]}}),ys=I.create({name:"tabindex",addProseMirrorPlugins(){return [new state.Plugin({key:new state.PluginKey("tabindex"),props:{attributes:()=>this.editor.isEditable?{tabindex:"0"}:{}}})]}}),ws=I.create({name:"textDirection",addOptions(){return {direction:void 0}},addGlobalAttributes(){if(!this.options.direction)return [];let{nodeExtensions:e}=ae(this.extensions);return [{types:e.filter(t=>t.name!=="text").map(t=>t.name),attributes:{dir:{default:this.options.direction,parseHTML:t=>{let r=t.getAttribute("dir");return r&&(r==="ltr"||r==="rtl"||r==="auto")?r:this.options.direction},renderHTML:t=>t.dir?{dir:t.dir}:{}}}}]},addProseMirrorPlugins(){return [new state.Plugin({key:new state.PluginKey("textDirection"),props:{attributes:()=>{let e=this.options.direction;return e?{dir:e}:{}}}})]}});var xs={};it(xs,{createAtomBlockMarkdownSpec:()=>Ms,createBlockMarkdownSpec:()=>Ss,createInlineMarkdownSpec:()=>Cs,parseAttributes:()=>ft,parseIndentedBlocks:()=>Rs,renderNestedMarkdownContent:()=>Ns,serializeAttributes:()=>ht});function ft(e){if(!e?.trim())return {};let t={},r=[],n=e.replace(/["']([^"']*)["']/g,d=>(r.push(d),`__QUOTED_${r.length-1}__`)),o=n.match(/(?:^|\s)\.([a-zA-Z][\w-]*)/g);if(o){let d=o.map(p=>p.trim().slice(1));t.class=d.join(" ");}let i=n.match(/(?:^|\s)#([a-zA-Z][\w-]*)/);i&&(t.id=i[1]);let a=/([a-zA-Z][\w-]*)\s*=\s*(__QUOTED_\d+__)/g;Array.from(n.matchAll(a)).forEach(([,d,p])=>{var u;let m=parseInt(((u=p.match(/__QUOTED_(\d+)__/))==null?void 0:u[1])||"0",10),c=r[m];c&&(t[d]=c.slice(1,-1));});let s=n.replace(/(?:^|\s)\.([a-zA-Z][\w-]*)/g,"").replace(/(?:^|\s)#([a-zA-Z][\w-]*)/g,"").replace(/([a-zA-Z][\w-]*)\s*=\s*__QUOTED_\d+__/g,"").trim();return s&&s.split(/\s+/).filter(Boolean).forEach(p=>{p.match(/^[a-zA-Z][\w-]*$/)&&(t[p]=true);}),t}function ht(e){if(!e||Object.keys(e).length===0)return "";let t=[];return e.class&&String(e.class).split(/\s+/).filter(Boolean).forEach(n=>t.push(`.${n}`)),e.id&&t.push(`#${e.id}`),Object.entries(e).forEach(([r,n])=>{r==="class"||r==="id"||(n===true?t.push(r):n!==false&&n!=null&&t.push(`${r}="${String(n)}"`));}),t.join(" ")}function Ms(e){let{nodeName:t,name:r,parseAttributes:n=ft,serializeAttributes:o=ht,defaultAttributes:i={},requiredAttributes:a=[],allowedAttributes:l}=e,s=r||t,d=p=>{if(!l)return p;let u={};return l.forEach(m=>{m in p&&(u[m]=p[m]);}),u};return {parseMarkdown:(p,u)=>{let m={...i,...p.attributes};return u.createNode(t,m,[])},markdownTokenizer:{name:t,level:"block",start(p){var u;let m=new RegExp(`^:::${s}(?:\\s|$)`,"m"),c=(u=p.match(m))==null?void 0:u.index;return c!==void 0?c:-1},tokenize(p,u,m){let c=new RegExp(`^:::${s}(?:\\s+\\{([^}]*)\\})?\\s*:::(?:\\n|$)`),f=p.match(c);if(!f)return;let h=f[1]||"",g=n(h);if(!a.find(C=>!(C in g)))return {type:t,raw:f[0],attributes:g}}},renderMarkdown:p=>{let u=d(p.attrs||{}),m=o(u),c=m?` {${m}}`:"";return `:::${s}${c} :::`}}}function Ss(e){let{nodeName:t,name:r,getContent:n,parseAttributes:o=ft,serializeAttributes:i=ht,defaultAttributes:a={},content:l="block",allowedAttributes:s}=e,d=r||t,p=u=>{if(!s)return u;let m={};return s.forEach(c=>{c in u&&(m[c]=u[c]);}),m};return {parseMarkdown:(u,m)=>{let c;if(n){let h=n(u);c=typeof h=="string"?[{type:"text",text:h}]:h;}else l==="block"?c=m.parseChildren(u.tokens||[]):c=m.parseInline(u.tokens||[]);let f={...a,...u.attributes};return m.createNode(t,f,c)},markdownTokenizer:{name:t,level:"block",start(u){var m;let c=new RegExp(`^:::${d}`,"m"),f=(m=u.match(c))==null?void 0:m.index;return f!==void 0?f:-1},tokenize(u,m,c){var f;let h=new RegExp(`^:::${d}(?:\\s+\\{([^}]*)\\})?\\s*\\n`),g=u.match(h);if(!g)return;let[v,C=""]=g,T=o(C),x=1,M=v.length,N="",z=/^:::([\w-]*)(\s.*)?/gm,O=u.slice(M);for(z.lastIndex=0;;){let U=z.exec(O);if(U===null)break;let Y=U.index,te=U[1];if(!((f=U[2])!=null&&f.endsWith(":::"))){if(te)x+=1;else if(x-=1,x===0){let ie=O.slice(0,Y);N=ie.trim();let G=u.slice(0,M+Y+U[0].length),R=[];if(N)if(l==="block")for(R=c.blockTokens(ie),R.forEach(X=>{X.text&&(!X.tokens||X.tokens.length===0)&&(X.tokens=c.inlineTokens(X.text));});R.length>0;){let X=R[R.length-1];if(X.type==="paragraph"&&(!X.text||X.text.trim()===""))R.pop();else break}else R=c.inlineTokens(N);return {type:t,raw:G,attributes:T,content:N,tokens:R}}}}}},renderMarkdown:(u,m)=>{let c=p(u.attrs||{}),f=i(c),h=f?` {${f}}`:"",g=m.renderChildren(u.content||[],`
4
+
5
+ `);return `:::${d}${h}
6
+
7
+ ${g}
8
+
9
+ :::`}}}function Es(e){if(!e.trim())return {};let t={},r=/(\w+)=(?:"([^"]*)"|'([^']*)')/g,n=r.exec(e);for(;n!==null;){let[,o,i,a]=n;t[o]=i||a,n=r.exec(e);}return t}function Ts(e){return Object.entries(e).filter(([,t])=>t!=null).map(([t,r])=>`${t}="${r}"`).join(" ")}function Cs(e){let{nodeName:t,name:r,getContent:n,parseAttributes:o=Es,serializeAttributes:i=Ts,defaultAttributes:a={},selfClosing:l=false,allowedAttributes:s}=e,d=r||t,p=m=>{if(!s)return m;let c={};return s.forEach(f=>{let h=typeof f=="string"?f:f.name,g=typeof f=="string"?void 0:f.skipIfDefault;if(h in m){let v=m[h];if(g!==void 0&&v===g)return;c[h]=v;}}),c},u=d.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return {parseMarkdown:(m,c)=>{let f={...a,...m.attributes};if(l)return c.createNode(t,f);let h=n?n(m):m.content||"";return h?c.createNode(t,f,[c.createTextNode(h)]):c.createNode(t,f,[])},markdownTokenizer:{name:t,level:"inline",start(m){let c=l?new RegExp(`\\[${u}\\s*[^\\]]*\\]`):new RegExp(`\\[${u}\\s*[^\\]]*\\][\\s\\S]*?\\[\\/${u}\\]`),f=m.match(c),h=f?.index;return h!==void 0?h:-1},tokenize(m,c,f){let h=l?new RegExp(`^\\[${u}\\s*([^\\]]*)\\]`):new RegExp(`^\\[${u}\\s*([^\\]]*)\\]([\\s\\S]*?)\\[\\/${u}\\]`),g=m.match(h);if(!g)return;let v="",C="";if(l){let[,x]=g;C=x;}else {let[,x,M]=g;C=x,v=M||"";}let T=o(C.trim());return {type:t,raw:g[0],content:v.trim(),attributes:T}}},renderMarkdown:m=>{let c="";n?c=n(m):m.content&&m.content.length>0&&(c=m.content.filter(v=>v.type==="text").map(v=>v.text).join(""));let f=p(m.attrs||{}),h=i(f),g=h?` ${h}`:"";return l?`[${d}${g}]`:`[${d}${g}]${c}[/${d}]`}}}function Rs(e,t,r){var n,o,i,a;let l=e.split(`
10
+ `),s=[],d="",p=0,u=t.baseIndentSize||2;for(;p<l.length;){let m=l[p],c=m.match(t.itemPattern);if(!c){if(s.length>0)break;if(m.trim()===""){p+=1,d=`${d}${m}
11
+ `;continue}else return}let f=t.extractItemData(c),{indentLevel:h,mainContent:g}=f;d=`${d}${m}
12
+ `;let v=[g];for(p+=1;p<l.length;){let M=l[p];if(M.trim()===""){let z=l.slice(p+1).findIndex(Y=>Y.trim()!=="");if(z===-1)break;if((((o=(n=l[p+1+z].match(/^(\s*)/))==null?void 0:n[1])==null?void 0:o.length)||0)>h){v.push(M),d=`${d}${M}
13
+ `,p+=1;continue}else break}if((((a=(i=M.match(/^(\s*)/))==null?void 0:i[1])==null?void 0:a.length)||0)>h)v.push(M),d=`${d}${M}
14
+ `,p+=1;else break}let C,T=v.slice(1);if(T.length>0){let M=T.map(N=>N.slice(h+u)).join(`
15
+ `);M.trim()&&(t.customNestedParser?C=t.customNestedParser(M):C=r.blockTokens(M));}let x=t.createToken(f,C);s.push(x);}if(s.length!==0)return {items:s,raw:d}}function Ns(e,t,r,n){if(!e||!Array.isArray(e.content))return "";let o=typeof r=="function"?r(n):r,[i,...a]=e.content,l=t.renderChildren([i]),s=`${o}${l}`;return a&&a.length>0&&a.forEach((d,p)=>{var u,m;let c=(m=(u=t.renderChild)==null?void 0:u.call(t,d,p+1))!=null?m:t.renderChildren([d]);if(c!=null){let f=c.split(`
16
+ `).map(h=>h?t.indent(h):t.indent("")).join(`
17
+ `);s+=d.type==="paragraph"?`
18
+
19
+ ${f}`:`
20
+ ${f}`;}}),s}var gt=class yr extends ut{constructor(){super(...arguments),this.type="node";}static create(t={}){let r=typeof t=="function"?t():t;return new yr(r)}configure(t){return super.configure(t)}extend(t){let r=typeof t=="function"?t():t;return super.extend(r)}};var As=20,vr=(e,t=0)=>{let r=[];return !e.children.length||t>As||Array.from(e.children).forEach(n=>{n.tagName==="SPAN"?r.push(n):n.children.length&&r.push(...vr(n,t+1));}),r},zs=e=>{if(!e.children.length)return;let t=vr(e);t&&t.forEach(r=>{var n,o;let i=r.getAttribute("style"),a=(o=(n=r.parentElement)==null?void 0:n.closest("span"))==null?void 0:o.getAttribute("style");r.setAttribute("style",`${a};${i}`);});},bt=pt.create({name:"textStyle",priority:101,addOptions(){return {HTMLAttributes:{},mergeNestedSpanStyles:true}},parseHTML(){return [{tag:"span",consuming:false,getAttrs:e=>e.hasAttribute("style")?(this.options.mergeNestedSpanStyles&&zs(e),{}):false}]},renderHTML({HTMLAttributes:e}){return ["span",le(this.options.HTMLAttributes,e),0]},addCommands(){return {toggleTextStyle:e=>({commands:t})=>t.toggleMark(this.name,e),removeEmptyTextStyle:()=>({tr:e})=>{let{selection:t}=e;return e.doc.nodesBetween(t.from,t.to,(r,n)=>{if(r.isTextblock)return true;r.marks.filter(o=>o.type===this.type).some(o=>Object.values(o.attrs).some(i=>!!i))||e.removeMark(n,n+r.nodeSize,this.type);}),true}}}}),Is=I.create({name:"backgroundColor",addOptions(){return {types:["textStyle"]}},addGlobalAttributes(){return [{types:this.options.types,attributes:{backgroundColor:{default:null,parseHTML:e=>{var t;let r=e.getAttribute("style");if(r){let n=r.split(";").map(o=>o.trim()).filter(Boolean);for(let o=n.length-1;o>=0;o-=1){let i=n[o].split(":");if(i.length>=2){let a=i[0].trim().toLowerCase(),l=i.slice(1).join(":").trim();if(a==="background-color")return l.replace(/['"]+/g,"")}}}return (t=e.style.backgroundColor)==null?void 0:t.replace(/['"]+/g,"")},renderHTML:e=>e.backgroundColor?{style:`background-color: ${e.backgroundColor}`}:{}}}}]},addCommands(){return {setBackgroundColor:e=>({chain:t})=>t().setMark("textStyle",{backgroundColor:e}).run(),unsetBackgroundColor:()=>({chain:e})=>e().setMark("textStyle",{backgroundColor:null}).removeEmptyTextStyle().run()}}}),_s=I.create({name:"color",addOptions(){return {types:["textStyle"]}},addGlobalAttributes(){return [{types:this.options.types,attributes:{color:{default:null,parseHTML:e=>{var t;let r=e.getAttribute("style");if(r){let n=r.split(";").map(o=>o.trim()).filter(Boolean);for(let o=n.length-1;o>=0;o-=1){let i=n[o].split(":");if(i.length>=2){let a=i[0].trim().toLowerCase(),l=i.slice(1).join(":").trim();if(a==="color")return l.replace(/['"]+/g,"")}}}return (t=e.style.color)==null?void 0:t.replace(/['"]+/g,"")},renderHTML:e=>e.color?{style:`color: ${e.color}`}:{}}}}]},addCommands(){return {setColor:e=>({chain:t})=>t().setMark("textStyle",{color:e}).run(),unsetColor:()=>({chain:e})=>e().setMark("textStyle",{color:null}).removeEmptyTextStyle().run()}}}),Ls=I.create({name:"fontFamily",addOptions(){return {types:["textStyle"]}},addGlobalAttributes(){return [{types:this.options.types,attributes:{fontFamily:{default:null,parseHTML:e=>e.style.fontFamily,renderHTML:e=>e.fontFamily?{style:`font-family: ${e.fontFamily}`}:{}}}}]},addCommands(){return {setFontFamily:e=>({chain:t})=>t().setMark("textStyle",{fontFamily:e}).run(),unsetFontFamily:()=>({chain:e})=>e().setMark("textStyle",{fontFamily:null}).removeEmptyTextStyle().run()}}}),$s=I.create({name:"fontSize",addOptions(){return {types:["textStyle"]}},addGlobalAttributes(){return [{types:this.options.types,attributes:{fontSize:{default:null,parseHTML:e=>e.style.fontSize,renderHTML:e=>e.fontSize?{style:`font-size: ${e.fontSize}`}:{}}}}]},addCommands(){return {setFontSize:e=>({chain:t})=>t().setMark("textStyle",{fontSize:e}).run(),unsetFontSize:()=>({chain:e})=>e().setMark("textStyle",{fontSize:null}).removeEmptyTextStyle().run()}}}),Ds=I.create({name:"lineHeight",addOptions(){return {types:["textStyle"]}},addGlobalAttributes(){return [{types:this.options.types,attributes:{lineHeight:{default:null,parseHTML:e=>e.style.lineHeight,renderHTML:e=>e.lineHeight?{style:`line-height: ${e.lineHeight}`}:{}}}}]},addCommands(){return {setLineHeight:e=>({chain:t})=>t().setMark("textStyle",{lineHeight:e}).run(),unsetLineHeight:()=>({chain:e})=>e().setMark("textStyle",{lineHeight:null}).removeEmptyTextStyle().run()}}});I.create({name:"textStyleKit",addExtensions(){let e=[];return this.options.backgroundColor!==false&&e.push(Is.configure(this.options.backgroundColor)),this.options.color!==false&&e.push(_s.configure(this.options.color)),this.options.fontFamily!==false&&e.push(Ls.configure(this.options.fontFamily)),this.options.fontSize!==false&&e.push($s.configure(this.options.fontSize)),this.options.lineHeight!==false&&e.push(Ds.configure(this.options.lineHeight)),this.options.textStyle!==false&&e.push(bt.configure(this.options.textStyle)),e}});function Os({node:e,updateAttributes:t,selected:r}){let n=Oe.useRef(null),[o,i]=Oe.useState(false),a=Oe.useRef({x:0,width:0}),{src:l,alt:s,title:d}=e.attrs,p=e.attrs.width;function u(m){m.preventDefault(),m.stopPropagation();let c=n.current?.offsetWidth??(typeof p=="number"?p:200);a.current={x:m.clientX,width:c},i(true);}return Oe.useEffect(()=>{if(!o)return;function m(f){let h=f.clientX-a.current.x,g=Math.max(60,Math.round(a.current.width+h));t({width:g,height:null});}function c(){i(false);}return document.addEventListener("mousemove",m),document.addEventListener("mouseup",c),()=>{document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",c);}},[o,t]),jsxRuntime.jsxs(react.NodeViewWrapper,{as:"span",className:`rte-image-wrapper${r?" rte-image-wrapper--selected":""}`,children:[jsxRuntime.jsx("img",{ref:n,src:l,alt:s??"",title:d??"",draggable:false,style:{display:"block",maxWidth:"100%",width:p?`${p}px`:void 0,cursor:o?"ew-resize":"default"}}),r&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{className:"rte-rh rte-rh--nw"}),jsxRuntime.jsx("span",{className:"rte-rh rte-rh--ne"}),jsxRuntime.jsx("span",{className:"rte-rh rte-rh--sw"}),jsxRuntime.jsx("span",{className:"rte-rh rte-rh--se",onMouseDown:u,title:"Drag to resize",role:"separator","aria-label":"Resize image"}),jsxRuntime.jsx("span",{className:"rte-rh rte-rh--e",onMouseDown:u,title:"Drag to resize",role:"separator","aria-label":"Resize image"}),p&&jsxRuntime.jsxs("span",{className:"rte-image-size-label","aria-live":"polite",children:[p,"px"]})]})]})}var kr=Hs__default.default.extend({name:"image",addAttributes(){return {...this.parent?.(),width:{default:null,parseHTML:e=>{let t=e.getAttribute("width");return t?parseInt(t,10):null},renderHTML:e=>e.width?{width:e.width,style:`width:${e.width}px;`}:{}},height:{default:null,parseHTML:e=>{let t=e.getAttribute("height");return t?parseInt(t,10):null},renderHTML:e=>e.height?{height:e.height}:{}}}},addNodeView(){return react.ReactNodeViewRenderer(Os)}}).configure({inline:true,allowBase64:true});function Bs({node:e,updateAttributes:t,selected:r}){let n=Oe.useRef(null),[o,i]=Oe.useState(false),a=Oe.useRef({x:0,width:0}),{src:l}=e.attrs,s=e.attrs.width;function d(p){p.preventDefault(),p.stopPropagation();let u=n.current?.offsetWidth??(typeof s=="number"?s:320);a.current={x:p.clientX,width:u},i(true);}return Oe.useEffect(()=>{if(!o)return;function p(m){let c=m.clientX-a.current.x,f=Math.max(120,Math.round(a.current.width+c));t({width:f});}function u(){i(false);}return document.addEventListener("mousemove",p),document.addEventListener("mouseup",u),()=>{document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",u);}},[o,t]),jsxRuntime.jsx(react.NodeViewWrapper,{as:"div",className:`rte-video-wrapper${r?" rte-video-wrapper--selected":""}`,children:jsxRuntime.jsxs("div",{ref:n,style:{display:"inline-block",maxWidth:"100%",width:s?`${s}px`:"100%",position:"relative"},children:[jsxRuntime.jsx("video",{src:l,controls:true,style:{display:"block",width:"100%",maxWidth:"100%"}}),r&&jsxRuntime.jsx("span",{className:"rte-rh rte-rh--e",onMouseDown:d,title:"Drag to resize",role:"separator","aria-label":"Resize video"})]})})}var wr=gt.create({name:"resizableVideo",group:"block",atom:true,draggable:true,addAttributes(){return {src:{default:null},width:{default:null,parseHTML:e=>{let t=e.getAttribute("data-width");return t?parseInt(t,10):null},renderHTML:e=>e.width?{"data-width":e.width}:{}}}},parseHTML(){return [{tag:"div[data-type=resizable-video]"}]},renderHTML({HTMLAttributes:e}){return ["div",le({"data-type":"resizable-video"},e)]},addNodeView(){return react.ReactNodeViewRenderer(Bs)}});function Fs({node:e,updateAttributes:t,selected:r}){let n=Oe.useRef(null),[o,i]=Oe.useState(false),a=Oe.useRef({x:0,width:0}),{src:l}=e.attrs,s=e.attrs.width??480,d=e.attrs.height??Math.round(s*9/16);function p(u){u.preventDefault(),u.stopPropagation();let m=n.current?.offsetWidth??s;a.current={x:u.clientX,width:m},i(true);}return Oe.useEffect(()=>{if(!o)return;function u(c){let f=c.clientX-a.current.x,h=Math.max(160,Math.round(a.current.width+f));t({width:h,height:Math.round(h*9/16)});}function m(){i(false);}return document.addEventListener("mousemove",u),document.addEventListener("mouseup",m),()=>{document.removeEventListener("mousemove",u),document.removeEventListener("mouseup",m);}},[o,t]),jsxRuntime.jsx(react.NodeViewWrapper,{as:"div",className:`rte-embed-wrapper${r?" rte-embed-wrapper--selected":""}`,children:jsxRuntime.jsxs("div",{ref:n,style:{display:"inline-block",position:"relative",width:`${s}px`,maxWidth:"100%"},children:[jsxRuntime.jsx("iframe",{src:l,width:s,height:d,allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; fullscreen",sandbox:"allow-scripts allow-same-origin allow-popups allow-presentation",title:"Embedded video",style:{display:"block",border:"none",maxWidth:"100%"}}),r&&jsxRuntime.jsx("span",{className:"rte-rh rte-rh--e",onMouseDown:p,title:"Drag to resize",role:"separator","aria-label":"Resize embed"})]})})}var xr=gt.create({name:"embedFrame",group:"block",atom:true,draggable:true,addAttributes(){return {src:{default:null},width:{default:480},height:{default:270}}},parseHTML(){return [{tag:"div[data-type=embed-frame]"}]},renderHTML({HTMLAttributes:e}){return ["div",le({"data-type":"embed-frame"},e)]},addNodeView(){return react.ReactNodeViewRenderer(Fs)}});function be(e){return marked.marked.parse(e,{async:false})}function De(e){return e.replace(/<h1[^>]*>([\s\S]*?)<\/h1>/gi,`# $1
21
+
22
+ `).replace(/<h2[^>]*>([\s\S]*?)<\/h2>/gi,`## $1
23
+
24
+ `).replace(/<h3[^>]*>([\s\S]*?)<\/h3>/gi,`### $1
25
+
26
+ `).replace(/<h4[^>]*>([\s\S]*?)<\/h4>/gi,`#### $1
27
+
28
+ `).replace(/<h5[^>]*>([\s\S]*?)<\/h5>/gi,`##### $1
29
+
30
+ `).replace(/<h6[^>]*>([\s\S]*?)<\/h6>/gi,`###### $1
31
+
32
+ `).replace(/<blockquote[^>]*>([\s\S]*?)<\/blockquote>/gi,(t,r)=>r.trim().replace(/^/gm,"> ")+`
33
+
34
+ `).replace(/<pre[^>]*><code[^>]*>([\s\S]*?)<\/code><\/pre>/gi,"```\n$1\n```\n\n").replace(/<hr\s*\/?>/gi,`
35
+ ---
36
+
37
+ `).replace(/<li[^>]*>([\s\S]*?)<\/li>/gi,`- $1
38
+ `).replace(/<\/?(ul|ol)[^>]*>/gi,`
39
+ `).replace(/<strong[^>]*>([\s\S]*?)<\/strong>/gi,"**$1**").replace(/<b[^>]*>([\s\S]*?)<\/b>/gi,"**$1**").replace(/<em[^>]*>([\s\S]*?)<\/em>/gi,"_$1_").replace(/<i[^>]*>([\s\S]*?)<\/i>/gi,"_$1_").replace(/<s[^>]*>([\s\S]*?)<\/s>/gi,"~~$1~~").replace(/<del[^>]*>([\s\S]*?)<\/del>/gi,"~~$1~~").replace(/<code[^>]*>([\s\S]*?)<\/code>/gi,"`$1`").replace(/<a[^>]*href="([^"]*)"[^>]*>([\s\S]*?)<\/a>/gi,"[$2]($1)").replace(/<img[^>]*src="([^"]*)"[^>]*alt="([^"]*)"[^>]*\/?>/gi,"![$2]($1)").replace(/<img[^>]*src="([^"]*)"[^>]*\/?>/gi,"![]($1)").replace(/<br\s*\/?>/gi,`
40
+ `).replace(/<p[^>]*>([\s\S]*?)<\/p>/gi,`$1
41
+
42
+ `).replace(/<[^>]+>/g,"").replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/&nbsp;/g," ").replace(/\n{3,}/g,`
43
+
44
+ `).trim()}function xt(e){return e.trim()?e.trim().split(/\s+/).length:0}function Mt(e,t,r=false){if(!t)return [];let n=[],o=r?"g":"gi",i=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),a=new RegExp(i,o);return e.descendants((l,s)=>{if(!l.isText||!l.text)return;let d;for(a.lastIndex=0;(d=a.exec(l.text))!==null;)n.push({from:s+d.index,to:s+d.index+d[0].length});}),n}function He(e,t,r=false){if(!t)return [];let n=r?"g":"gi",o=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=new RegExp(o,n),a=[],l;for(;(l=i.exec(e))!==null;)a.push([l.index,l.index+l[0].length]);return a}var J=new state.PluginKey("rteSearch"),da=I.create({name:"rteSearch",addProseMirrorPlugins(){return [new state.Plugin({key:J,state:{init(){return {query:"",caseSensitive:false,currentIndex:0,matches:[]}},apply(e,t){let r=e.getMeta(J);if(r){let n={...t,...r};return n.matches=Mt(e.doc,n.query,n.caseSensitive),n.currentIndex>=n.matches.length&&(n.currentIndex=0),n}if(e.docChanged&&t.query){let n=Mt(e.doc,t.query,t.caseSensitive),o=Math.min(t.currentIndex,Math.max(0,n.length-1));return {...t,matches:n,currentIndex:o}}return t}},props:{decorations(e){let t=J.getState(e);if(!t?.query||!t.matches.length)return view.DecorationSet.empty;let r=t.matches.map((n,o)=>view.Decoration.inline(n.from,n.to,{class:o===t.currentIndex?"rte-search-current":"rte-search-match"}));return view.DecorationSet.create(e.doc,r)}}})]}});function Sr(e){return react.useEditor({extensions:[Js__default.default,Xs__default.default,Ys__default.default.configure({types:["heading","paragraph"]}),bt,extensionColor.Color,Qs__default.default.configure({multicolor:true}),kr,wr,xr,Zs__default.default.configure({openOnClick:false}),ea__default.default.configure({width:480,height:320}),ta__default.default.configure({placeholder:e.placeholder??"Start typing\u2026"}),ra__default.default,na__default.default,oa__default.default,ia__default.default,extensionTable.Table.configure({resizable:true}),aa__default.default,la__default.default,ca__default.default,da],content:e.defaultValue??"",editable:!e.readOnly,autofocus:e.autoFocus,onUpdate:({editor:r})=>{e.onChange?.({html:r.getHTML(),markdown:"",json:r.getJSON(),text:r.getText()});}})}var nl={tab_home:"Home",tab_insert:"Insert",tab_format:"Format",group_clipboard:"Clipboard",undo:"Undo",redo:"Redo",save:"Save",group_text:"Text",bold:"Bold",italic:"Italic",underline:"Underline",strikethrough:"Strikethrough",group_headings:"Headings",h1:"H1",h2:"H2",h3:"H3",paragraph:"Normal",group_alignment:"Alignment",alignLeft:"Left",alignCenter:"Center",alignRight:"Right",alignJustify:"Justify",group_lists:"Lists",bulletList:"Bullet",orderedList:"Ordered",group_media:"Media",image:"Image",video:"Video",youtube:"Video",group_content:"Content",link:"Link",table:"Table",codeBlock:"Code Block",blockquote:"Quote",divider:"Divider",group_style:"Style",color:"Color",highlight:"Highlight",subscript:"Sub",superscript:"Sup",group_reset:"Reset",clear:"Clear",group_table_rows:"Rows",addRowBefore:"Add Above",addRowAfter:"Add Below",deleteRow:"Del Row",group_table_cols:"Columns",addColBefore:"Add Left",addColAfter:"Add Right",deleteColumn:"Del Col",group_table_cells:"Cells",mergeCells:"Merge",splitCell:"Split",deleteTable:"Del Table"};function Z({icon:e,label:t,onClick:r,disabled:n=false,title:o}){return jsxRuntime.jsxs("button",{type:"button",className:D("rte-tbar-btn",n&&"rte-tbar-btn--disabled"),onClick:r,disabled:n,title:o??t,children:[e,jsxRuntime.jsx("span",{className:"rte-tbar-label",children:t})]})}function ol({editor:e,L:t,readOnly:r}){let[,n]=Oe.useState(0),[o,i]=Oe.useState(null),a=Oe.useRef(null);if(Oe.useEffect(()=>{if(!e)return;let p=()=>n(u=>u+1);return e.on("selectionUpdate",p),e.on("transaction",p),()=>{e.off("selectionUpdate",p),e.off("transaction",p);}},[e]),Oe.useEffect(()=>{if(!o)return;function p(u){a.current&&!a.current.contains(u.target)&&i(null);}return document.addEventListener("mousedown",p),()=>document.removeEventListener("mousedown",p)},[o]),!e||r||!e.isActive("table"))return null;let l=e.can().mergeCells(),s=e.can().splitCell();function d(){s?e.chain().focus().splitCell().run():i(p=>p?null:"col");}return jsxRuntime.jsxs("div",{className:"rte-tablebar",role:"toolbar","aria-label":"Table editing",children:[jsxRuntime.jsx("span",{className:"rte-tbar-group-label",children:t.group_table_rows}),jsxRuntime.jsx(Z,{icon:jsxRuntime.jsx(lucideReact.BetweenHorizontalStart,{size:13}),label:t.addRowBefore,onClick:()=>e.chain().focus().addRowBefore().run()}),jsxRuntime.jsx(Z,{icon:jsxRuntime.jsx(lucideReact.BetweenHorizontalEnd,{size:13}),label:t.addRowAfter,onClick:()=>e.chain().focus().addRowAfter().run()}),jsxRuntime.jsx(Z,{icon:jsxRuntime.jsx(lucideReact.Trash2,{size:13}),label:t.deleteRow,onClick:()=>e.chain().focus().deleteRow().run()}),jsxRuntime.jsx("div",{className:"rte-tbar-sep"}),jsxRuntime.jsx("span",{className:"rte-tbar-group-label",children:t.group_table_cols}),jsxRuntime.jsx(Z,{icon:jsxRuntime.jsx(lucideReact.BetweenVerticalStart,{size:13}),label:t.addColBefore,onClick:()=>e.chain().focus().addColumnBefore().run()}),jsxRuntime.jsx(Z,{icon:jsxRuntime.jsx(lucideReact.BetweenVerticalEnd,{size:13}),label:t.addColAfter,onClick:()=>e.chain().focus().addColumnAfter().run()}),jsxRuntime.jsx(Z,{icon:jsxRuntime.jsx(lucideReact.Trash2,{size:13}),label:t.deleteColumn,onClick:()=>e.chain().focus().deleteColumn().run()}),jsxRuntime.jsx("div",{className:"rte-tbar-sep"}),jsxRuntime.jsx("span",{className:"rte-tbar-group-label",children:t.group_table_cells}),jsxRuntime.jsx(Z,{icon:jsxRuntime.jsx(lucideReact.TableCellsMerge,{size:13}),label:t.mergeCells,onClick:()=>e.chain().focus().mergeCells().run(),disabled:!l,title:l?t.mergeCells:`${t.mergeCells} (Shift+click to select cells)`}),jsxRuntime.jsxs("div",{className:"rte-tbar-split-wrap",ref:a,children:[jsxRuntime.jsx(Z,{icon:jsxRuntime.jsx(lucideReact.TableCellsSplit,{size:13}),label:s?t.splitCell:`${t.splitCell}\u2026`,onClick:d,title:s?t.splitCell:"Split by adding a column or row"}),o&&!s&&jsxRuntime.jsxs("div",{className:"rte-tbar-split-picker",children:[jsxRuntime.jsxs("button",{className:"rte-tbar-split-pick-btn",onClick:()=>{e.chain().focus().addColumnAfter().run(),i(null);},children:[jsxRuntime.jsx(lucideReact.BetweenVerticalEnd,{size:13}),"Split column"]}),jsxRuntime.jsxs("button",{className:"rte-tbar-split-pick-btn",onClick:()=>{e.chain().focus().addRowAfter().run(),i(null);},children:[jsxRuntime.jsx(lucideReact.BetweenHorizontalEnd,{size:13}),"Split row"]})]})]}),jsxRuntime.jsx("div",{className:"rte-tbar-sep"}),jsxRuntime.jsx(Z,{icon:jsxRuntime.jsx(lucideReact.Trash2,{size:13}),label:t.deleteTable,onClick:()=>e.chain().focus().deleteTable().run()})]})}function Et({open:e,onClose:t,children:r}){let n=Oe.useRef(null);return Oe.useEffect(()=>{if(!e)return;function o(i){n.current&&!n.current.contains(i.target)&&t();}return document.addEventListener("mousedown",o),()=>document.removeEventListener("mousedown",o)},[e,t]),e?jsxRuntime.jsx("div",{ref:n,className:"rte-inline-dialog",children:r}):null}function il({mode:e,onClose:t,onFind:r,onPrev:n,onNext:o,onReplace:i,onReplaceAll:a,matchCount:l,currentIndex:s}){let[d,p]=Oe__default.default.useState(""),[u,m]=Oe__default.default.useState(""),[c,f]=Oe__default.default.useState(false),h=Oe__default.default.useRef(null);Oe.useEffect(()=>{h.current?.focus();},[]);function g(M){let N=M.target.value;p(N),r(N,c);}function v(){let M=!c;f(M),r(d,M);}function C(M){if(M.key==="Escape"){t();return}M.key==="Enter"&&(M.shiftKey?n():o());}let T=l>0,x=d?T?`${s+1} / ${l}`:"No results":"";return jsxRuntime.jsxs("div",{className:"rte-findbar",role:"search","aria-label":"Find and replace",children:[jsxRuntime.jsxs("div",{className:"rte-findbar-row",children:[jsxRuntime.jsx(lucideReact.Search,{size:14,className:"rte-findbar-icon"}),jsxRuntime.jsx("input",{ref:h,className:"rte-findbar-input",value:d,onChange:g,onKeyDown:C,placeholder:"Find\u2026","aria-label":"Find",spellCheck:false}),jsxRuntime.jsx("button",{className:D("rte-findbar-btn",c&&"rte-findbar-btn--active"),onClick:v,title:"Match case","aria-pressed":c,children:"Aa"}),jsxRuntime.jsx("span",{className:"rte-findbar-count",children:x}),jsxRuntime.jsx("button",{className:"rte-findbar-btn",onClick:n,disabled:!T,title:"Previous match (Shift+Enter)","aria-label":"Previous match",children:jsxRuntime.jsx(lucideReact.ChevronUp,{size:14})}),jsxRuntime.jsx("button",{className:"rte-findbar-btn",onClick:o,disabled:!T,title:"Next match (Enter)","aria-label":"Next match",children:jsxRuntime.jsx(lucideReact.ChevronDown,{size:14})}),jsxRuntime.jsx("button",{className:"rte-findbar-btn rte-findbar-btn--close",onClick:t,title:"Close (Esc)","aria-label":"Close find bar",children:jsxRuntime.jsx(lucideReact.X,{size:14})})]}),e==="replace"&&jsxRuntime.jsxs("div",{className:"rte-findbar-row",children:[jsxRuntime.jsx(lucideReact.Replace,{size:14,className:"rte-findbar-icon"}),jsxRuntime.jsx("input",{className:"rte-findbar-input",value:u,onChange:M=>m(M.target.value),onKeyDown:M=>M.key==="Escape"&&t(),placeholder:"Replace with\u2026","aria-label":"Replace with",spellCheck:false}),jsxRuntime.jsx("button",{className:"rte-findbar-btn rte-findbar-btn--action",onClick:()=>i(u),disabled:!T,title:"Replace current",children:"Replace"}),jsxRuntime.jsx("button",{className:"rte-findbar-btn rte-findbar-btn--action",onClick:()=>a(u),disabled:!T,title:"Replace all",children:"All"})]})]})}var Rr=Oe.forwardRef(function(t,r){let{mode:n,defaultMode:o="richtext",onModeChange:i,showPreview:a,defaultShowPreview:l=false,onPreviewChange:s,defaultValue:d="",value:p,onChange:u,placeholder:m="Start typing\u2026",readOnly:c=false,height:f=400,minHeight:h,maxHeight:g,showWordCount:v=true,showCharCount:C=true,onImageUpload:T,allowedImageTypes:x,maxImageSize:M,autoFocus:N=false,spellCheck:z=true,className:O,style:U,labels:Y,extraRibbonGroups:te,extraRibbonTabs:ie,onSave:G}=t,R={...nl,...Y},[X,Nr]=Oe.useState(o),S=n??X;function Pr(k){if(k!==S){if(k==="markdown"){let w=b?.getHTML()??Ct;re(De(w));}else {let w=be(B);Ve(w),b?.commands.setContent(w);}n===void 0&&Nr(k),i?.(k);}}let[Be,Tt]=Oe.useState(()=>typeof window<"u"?window.matchMedia("(prefers-color-scheme: dark)").matches:false);function Fe(k){Tt(k),k?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark");}Oe.useEffect(()=>{Fe(Be);let k=window.matchMedia("(prefers-color-scheme: dark)");function w(P){Tt(P.matches),Fe(P.matches);}return k.addEventListener("change",w),()=>k.removeEventListener("change",w)},[]);let[Ar,zr]=Oe.useState(l),ve=a??Ar;function Ir(k){let w=k??!ve;a===void 0&&zr(w),s?.(w);}let[B,re]=Oe.useState(S==="markdown"?p??d:""),[Ct,Ve]=Oe.useState(S==="richtext"?p??d??"":""),[_r,de]=Oe.useState(false),[ue,je]=Oe.useState(""),[Lr,pe]=Oe.useState(false),[Ue,ke]=Oe.useState(""),[$r,we]=Oe.useState(false),[Rt,We]=Oe.useState(""),[Nt,xe]=Oe.useState(null),[Pt,Ke]=Oe.useState(null),[Dr,qe]=Oe.useState(0),[Je,Me]=Oe.useState(0),[Se,At]=Oe.useState(""),Hr=Oe.useRef(null),Xe=Oe.useRef(null),zt=Oe.useRef(null);Oe.useEffect(()=>{function k(w){!(w.metaKey||w.ctrlKey)||w.key.toLowerCase()!=="f"||Xe.current?.contains(w.target)&&(w.preventDefault(),w.shiftKey?Ke(A=>A==="replace"?null:"replace"):Ke(A=>A!==null?null:"find"));}return document.addEventListener("keydown",k,true),()=>document.removeEventListener("keydown",k,true)},[]);function Or(k){let w=k.trim();if(/\.(mp4|webm|ogg|ogv|mov|m4v|flv|mkv)(\?[^#]*)?$/i.test(w))return {kind:"video"};if(/(?:youtube\.com|youtu\.be|youtube-nocookie\.com)/.test(w))return {kind:"youtube"};let P=w.match(/vimeo\.com\/(?:video\/)?(\d+)/);if(P)return {kind:"iframe",embedUrl:`https://player.vimeo.com/video/${P[1]}`};let A=w.match(/bilibili\.com\/video\/(BV[\w]+|av\d+)/i);if(A)return {kind:"iframe",embedUrl:`https://player.bilibili.com/player.html?bvid=${A[1]}&high_quality=1&danmaku=0`};let $=w.match(/dailymotion\.com\/(?:video\/|embed\/video\/)([a-z0-9]+)/i);if($)return {kind:"iframe",embedUrl:`https://www.dailymotion.com/embed/video/${$[1]}`};let F=w.match(/twitch\.tv\/\w+\/clip\/([\w-]+)/);if(F){let W=typeof window<"u"?window.location.hostname:"localhost";return {kind:"iframe",embedUrl:`https://clips.twitch.tv/embed?clip=${F[1]}&parent=${W}`}}return null}function It(){let k=Rt.trim();if(!k)return;let w=Or(k);if(!w){xe("Unsupported URL. Paste a YouTube, Vimeo, Bilibili, Dailymotion, or direct .mp4/.webm link.");return}w.kind==="youtube"?b?.chain().focus().setYoutubeVideo({src:k}).run():w.kind==="iframe"?b?.chain().focus().insertContent({type:"embedFrame",attrs:{src:w.embedUrl}}).run():b?.chain().focus().insertContent({type:"resizableVideo",attrs:{src:k}}).run(),We(""),xe(null),we(false);}function Ye(k,w){b&&b.view.dispatch(b.view.state.tr.setMeta(J,{query:k,caseSensitive:w,currentIndex:0}));}function _t(k){if(!b)return;let w=J.getState(b.view.state);if(!w||!w.matches.length)return;let P=w.matches.length,A=((w.currentIndex+k)%P+P)%P;b.view.dispatch(b.view.state.tr.setMeta(J,{currentIndex:A}));let $=w.matches[A];$&&(b.commands.setTextSelection({from:$.from,to:$.to}),b.commands.scrollIntoView());}function Br(k){if(!b)return;let w=J.getState(b.view.state);if(!w||!w.matches.length)return;let P=w.matches[w.currentIndex];P&&(b.chain().setTextSelection({from:P.from,to:P.to}).insertContent(k).run(),Ye(w.query,w.caseSensitive));}function Fr(k){if(!b)return;let w=J.getState(b.view.state);if(!w||!w.matches.length)return;let P=b.chain();[...w.matches].reverse().forEach(A=>{P.setTextSelection({from:A.from,to:A.to}).insertContent(k);}),P.run(),Ye(w.query,w.caseSensitive);}function Lt(k,w){At(k);let P=He(B,k,w);qe(P.length),Me(0);}function $t(k,w,P){let A=He(B,w,P);if(!A.length)return;let $=A.length,F=((Je+k)%$+$)%$;Me(F);let W=zt.current;W&&(W.focus(),W.setSelectionRange(A[F][0],A[F][1]));}function Vr(k,w,P){let A=He(B,k,P);if(!A.length)return;let[$,F]=A[Je]??A[0],W=B.slice(0,$)+w+B.slice(F);re(W);}function jr(k,w,P){let A=k.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),$=new RegExp(A,"gi");re(F=>F.replace($,w)),qe(0),Me(0);}let b=Sr({defaultValue:S==="richtext"?p??d:"",placeholder:m,readOnly:c,autoFocus:S==="richtext"&&N,onChange:k=>{Ve(k.html),u?.({...k,markdown:De(k.html)});}});Oe.useEffect(()=>{p!==void 0&&b&&S==="richtext"&&b.getHTML()!==p&&(b.commands.setContent(p),Ve(p));},[p,b,S]);let Dt=b?J.getState(b.view.state):null,Ur=S==="richtext"?Dt?.matches.length??0:Dr,Wr=S==="richtext"?Dt?.currentIndex??0:Je;function Ht(){if(!G)return;let k=S==="markdown"?B:b?.getHTML()??"";G(k,S);}Oe.useEffect(()=>{if(!G)return;function k(w){!(w.metaKey||w.ctrlKey)||w.key.toLowerCase()!=="s"||Xe.current?.contains(w.target)&&(w.preventDefault(),Ht());}return document.addEventListener("keydown",k,true),()=>document.removeEventListener("keydown",k,true)},[G,S,B,b]);function Kr(k){let w=k.target.value;re(w),u?.({html:be(w),markdown:w,json:{},text:w});}let qr=Oe.useCallback(async k=>{let P=Array.from(k.clipboardData?.items??[]).find(F=>F.type.startsWith("image/"));if(!P)return;k.preventDefault();let A=P.getAsFile();if(!A||x&&!x.includes(A.type)||M&&A.size>M)return;let $;if(T?$=await T(A):$=await new Promise(F=>{let W=new FileReader;W.onload=()=>F(W.result),W.readAsDataURL(A);}),S==="richtext"&&b)b.chain().focus().setImage({src:$}).run();else {let F=k.currentTarget.querySelector(".rte-markdown-source");if(F){let W=F.selectionStart,Qr=`![pasted image](${$})`,Zr=B.slice(0,W),en=B.slice(W);re(Zr+Qr+en);}}},[S,b,B,T,x,M]);Oe.useImperativeHandle(r,()=>({getContent:()=>S==="markdown"?B:b?.getHTML()??"",getMode:()=>S,getHTML:()=>b?.getHTML()??"",getMarkdown:()=>S==="markdown"?B:De(b?.getHTML()??""),getJSON:()=>b?.getJSON()??{},getText:()=>b?.getText()??"",setHTML:k=>b?.commands.setContent(k),setMarkdown:k=>{re(k),b?.commands.setContent(be(k));},setJSON:k=>b?.commands.setContent(k),clear:()=>{b?.commands.clearContent(),re("");},focus:()=>b?.commands.focus(),blur:()=>(b?.view.dom).blur()}));let Jr=b?.storage?.characterCount?.characters?.()??B.length,Xr=S==="richtext"?xt(b?.getText()??""):xt(B),Yr=[...[{key:"home",label:R.tab_home,groups:[{key:"clipboard",label:R.group_clipboard,items:[{key:"undo",label:R.undo,icon:jsxRuntime.jsx(lucideReact.Undo2,{}),disabled:c||!b?.can().undo()||S==="markdown",onClick:()=>b?.chain().focus().undo().run()},{key:"redo",label:R.redo,icon:jsxRuntime.jsx(lucideReact.Redo2,{}),disabled:c||!b?.can().redo()||S==="markdown",onClick:()=>b?.chain().focus().redo().run()},{key:"save",label:R.save,icon:jsxRuntime.jsx(lucideReact.Save,{}),disabled:c||!G,onClick:Ht}]},{key:"text",label:R.group_text,items:[{key:"bold",label:R.bold,icon:jsxRuntime.jsx(lucideReact.Bold,{}),active:b?.isActive("bold"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleBold().run()},{key:"italic",label:R.italic,icon:jsxRuntime.jsx(lucideReact.Italic,{}),active:b?.isActive("italic"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleItalic().run()},{key:"underline",label:R.underline,icon:jsxRuntime.jsx(lucideReact.Underline,{}),active:b?.isActive("underline"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleUnderline().run()},{key:"strike",label:R.strikethrough,icon:jsxRuntime.jsx(lucideReact.Strikethrough,{}),active:b?.isActive("strike"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleStrike().run()}]},{key:"headings",label:R.group_headings,items:[{key:"h1",label:R.h1,icon:jsxRuntime.jsx(lucideReact.Heading1,{}),active:b?.isActive("heading",{level:1}),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleHeading({level:1}).run()},{key:"h2",label:R.h2,icon:jsxRuntime.jsx(lucideReact.Heading2,{}),active:b?.isActive("heading",{level:2}),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleHeading({level:2}).run()},{key:"h3",label:R.h3,icon:jsxRuntime.jsx(lucideReact.Heading3,{}),active:b?.isActive("heading",{level:3}),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleHeading({level:3}).run()},{key:"paragraph",label:R.paragraph,icon:jsxRuntime.jsx(lucideReact.Type,{}),active:b?.isActive("paragraph"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().setParagraph().run()}]},{key:"alignment",label:R.group_alignment,items:[{key:"align-left",label:R.alignLeft,icon:jsxRuntime.jsx(lucideReact.AlignLeft,{}),active:b?.isActive({textAlign:"left"}),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().setTextAlign("left").run()},{key:"align-center",label:R.alignCenter,icon:jsxRuntime.jsx(lucideReact.AlignCenter,{}),active:b?.isActive({textAlign:"center"}),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().setTextAlign("center").run()},{key:"align-right",label:R.alignRight,icon:jsxRuntime.jsx(lucideReact.AlignRight,{}),active:b?.isActive({textAlign:"right"}),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().setTextAlign("right").run()},{key:"align-justify",label:R.alignJustify,icon:jsxRuntime.jsx(lucideReact.AlignJustify,{}),active:b?.isActive({textAlign:"justify"}),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().setTextAlign("justify").run()}]},{key:"lists",label:R.group_lists,items:[{key:"bullet-list",label:R.bulletList,icon:jsxRuntime.jsx(lucideReact.List,{}),active:b?.isActive("bulletList"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleBulletList().run()},{key:"ordered-list",label:R.orderedList,icon:jsxRuntime.jsx(lucideReact.ListOrdered,{}),active:b?.isActive("orderedList"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleOrderedList().run()}]},...te?.home??[]]},{key:"insert",label:R.tab_insert,groups:[{key:"media",label:R.group_media,items:[{key:"image",label:R.image,icon:jsxRuntime.jsx(lucideReact.Image,{}),disabled:c||S==="markdown",onClick:()=>de(true)},{key:"video",label:R.video??R.youtube,icon:jsxRuntime.jsx(lucideReact.Video,{}),disabled:c||S==="markdown",onClick:()=>{We(""),xe(null),we(true);}}]},{key:"content",label:R.group_content,items:[{key:"link",label:R.link,icon:jsxRuntime.jsx(lucideReact.Link,{}),active:b?.isActive("link"),disabled:c||S==="markdown",onClick:()=>{let k=b?.getAttributes("link").href??"";ke(k),pe(true);}},{key:"table",label:R.table,icon:jsxRuntime.jsx(lucideReact.Table,{}),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().insertTable({rows:3,cols:3,withHeaderRow:true}).run()},{key:"code-block",label:R.codeBlock,icon:jsxRuntime.jsx(lucideReact.Code,{}),active:b?.isActive("codeBlock"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleCodeBlock().run()},{key:"blockquote",label:R.blockquote,icon:jsxRuntime.jsx(lucideReact.Quote,{}),active:b?.isActive("blockquote"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleBlockquote().run()},{key:"hr",label:R.divider,icon:jsxRuntime.jsx(lucideReact.Minus,{}),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().setHorizontalRule().run()}]},...te?.insert??[]]},{key:"format",label:R.tab_format,groups:[{key:"style",label:R.group_style,items:[{key:"color",label:R.color,icon:jsxRuntime.jsx(lucideReact.Palette,{}),disabled:c||S==="markdown",onClick:()=>{document.getElementById("rte-color-input")?.click();}},{key:"highlight",label:R.highlight,icon:jsxRuntime.jsx(lucideReact.Highlighter,{}),active:b?.isActive("highlight"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleHighlight().run()},{key:"subscript",label:R.subscript,icon:jsxRuntime.jsx(lucideReact.Subscript,{}),active:b?.isActive("subscript"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleSubscript().run()},{key:"superscript",label:R.superscript,icon:jsxRuntime.jsx(lucideReact.Superscript,{}),active:b?.isActive("superscript"),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().toggleSuperscript().run()}]},{key:"reset",label:R.group_reset,items:[{key:"clear",label:R.clear,icon:jsxRuntime.jsx(lucideReact.Eraser,{}),disabled:c||S==="markdown",onClick:()=>b?.chain().focus().unsetAllMarks().clearNodes().run()}]},...te?.format??[]]}],...ie??[]],Ee={};f&&(Ee.height=typeof f=="number"?`${f}px`:f),h&&(Ee.minHeight=typeof h=="number"?`${h}px`:h),g&&(Ee.maxHeight=typeof g=="number"?`${g}px`:g);let Gr=S==="richtext"?Ct:be(B);return jsxRuntime.jsxs("div",{ref:Xe,className:D("rte-root",O),style:{...Ee,...U},"data-testid":"rte-root",onPaste:qr,children:[jsxRuntime.jsx("input",{id:"rte-color-input",type:"color",className:"sr-only","aria-hidden":true,onChange:k=>{b?.chain().focus().setColor(k.target.value).run();}}),jsxRuntime.jsxs("div",{ref:Hr,className:"rte-ribbon relative",children:[jsxRuntime.jsx(Bt,{tabs:Yr}),jsxRuntime.jsxs(Et,{open:_r,onClose:()=>de(false),children:[jsxRuntime.jsx("input",{type:"url",placeholder:"Image URL\u2026",value:ue,onChange:k=>je(k.target.value),onKeyDown:k=>{k.key==="Enter"&&(ue&&b?.chain().focus().setImage({src:ue}).run(),je(""),de(false));},autoFocus:true}),jsxRuntime.jsx("button",{onClick:()=>{ue&&b?.chain().focus().setImage({src:ue}).run(),je(""),de(false);},children:"Insert"}),jsxRuntime.jsx("button",{className:"rte-cancel-btn",onClick:()=>de(false),children:"Cancel"})]}),jsxRuntime.jsxs(Et,{open:Lr,onClose:()=>pe(false),children:[jsxRuntime.jsx("input",{type:"url",placeholder:"https://\u2026",value:Ue,onChange:k=>ke(k.target.value),onKeyDown:k=>{k.key==="Enter"&&(b?.chain().focus().setLink({href:Ue}).run(),ke(""),pe(false));},autoFocus:true}),jsxRuntime.jsx("button",{onClick:()=>{b?.chain().focus().setLink({href:Ue}).run(),ke(""),pe(false);},children:"Apply"}),jsxRuntime.jsx("button",{className:"rte-cancel-btn",onClick:()=>pe(false),children:"Cancel"})]}),jsxRuntime.jsxs(Et,{open:$r,onClose:()=>we(false),children:[jsxRuntime.jsx("input",{type:"url",placeholder:"YouTube, Vimeo, Bilibili, or .mp4 URL\u2026",value:Rt,onChange:k=>{We(k.target.value),xe(null);},onKeyDown:k=>{k.key==="Enter"&&It();},autoFocus:true,style:{minWidth:280}}),Nt&&jsxRuntime.jsx("span",{style:{fontSize:"0.72rem",color:"var(--color-danger-500)",flex:"0 0 100%"},children:Nt}),jsxRuntime.jsx("button",{onClick:It,children:"Embed"}),jsxRuntime.jsx("button",{className:"rte-cancel-btn",onClick:()=>we(false),children:"Cancel"})]})]}),S==="richtext"&&jsxRuntime.jsx(ol,{editor:b,L:R,readOnly:c??false}),Pt!==null&&jsxRuntime.jsx(il,{mode:Pt,onClose:()=>{Ke(null),b&&b.view.dispatch(b.view.state.tr.setMeta(J,{query:"",currentIndex:0,matches:[]})),qe(0),Me(0),At("");},onFind:(k,w)=>{S==="richtext"?Ye(k,w):Lt(k,w);},onPrev:()=>{S==="richtext"?_t(-1):$t(-1,Se,false);},onNext:()=>{S==="richtext"?_t(1):$t(1,Se,false);},onReplace:k=>{if(S==="richtext"){let w=b?J.getState(b.view.state):null;Br(k),w&&Lt(w.query,w.caseSensitive);}else Vr(Se,k,false);},onReplaceAll:k=>{S==="richtext"?Fr(k):jr(Se,k);},matchCount:Ur,currentIndex:Wr}),jsxRuntime.jsxs("div",{className:"rte-body",children:[jsxRuntime.jsx("div",{className:"rte-editor-pane",children:S==="richtext"?jsxRuntime.jsx(react.EditorContent,{editor:b,spellCheck:z,readOnly:c}):jsxRuntime.jsx("textarea",{ref:zt,className:"rte-markdown-source",value:B,onChange:Kr,placeholder:m,readOnly:c,spellCheck:z,"data-testid":"rte-markdown-source"})}),ve&&jsxRuntime.jsx("div",{className:"rte-preview-pane","data-testid":"rte-preview-pane",children:jsxRuntime.jsx("div",{className:"prose",dangerouslySetInnerHTML:{__html:Gr}})})]}),jsxRuntime.jsxs("div",{className:"rte-statusbar",children:[jsxRuntime.jsxs("div",{className:"rte-statusbar-left",children:[jsxRuntime.jsx(Ce,{size:"sm",checked:Be,onCheckedChange:Fe,checkedContent:jsxRuntime.jsx(lucideReact.Moon,{size:10}),uncheckedContent:jsxRuntime.jsx(lucideReact.Sun,{size:10}),"aria-label":"Toggle dark mode",title:Be?"Switch to light mode":"Switch to dark mode"}),jsxRuntime.jsx("span",{className:"rte-statusbar-divider"}),jsxRuntime.jsx(Ce,{size:"sm",checked:S==="markdown",onCheckedChange:k=>Pr(k?"markdown":"richtext"),disabled:n!==void 0,checkedContent:jsxRuntime.jsx(lucideReact.Code,{size:10}),uncheckedContent:jsxRuntime.jsx(lucideReact.FileText,{size:10}),"aria-label":"Toggle editor mode",title:n!==void 0?`Mode locked: ${S}`:S==="markdown"?"Markdown mode (click for Rich Text)":"Rich Text mode (click for Markdown)"}),jsxRuntime.jsx("span",{className:"rte-statusbar-label",children:S==="markdown"?"Markdown":"Rich Text"})]}),jsxRuntime.jsxs("div",{className:"rte-statusbar-right",children:[jsxRuntime.jsx(Ce,{size:"sm",checked:ve,onCheckedChange:Ir,checkedContent:jsxRuntime.jsx(lucideReact.Eye,{size:10}),uncheckedContent:jsxRuntime.jsx(lucideReact.EyeOff,{size:10}),"aria-label":"Toggle live preview",title:ve?"Hide preview":"Show live preview"}),jsxRuntime.jsx("span",{className:"rte-statusbar-label",children:"Preview"}),(v||C)&&jsxRuntime.jsx("span",{className:"rte-statusbar-divider"}),v&&jsxRuntime.jsxs("span",{children:[Xr," words"]}),C&&jsxRuntime.jsxs("span",{children:[Jr," chars"]})]})]})]})});Rr.displayName="RichTextEditor";
45
+ exports.RichTextEditor=Rr;
@@ -0,0 +1 @@
1
+ .rte-root{display:flex;flex-direction:column;border:1px solid var(--color-primary-200);border-radius:.5rem;overflow:hidden;background:var(--color-white, #fff)}.dark .rte-root{border-color:var(--color-primary-700);background:var(--color-primary-900)}.rte-ribbon{border-bottom:1px solid var(--color-primary-200);flex-shrink:0}.dark .rte-ribbon{border-bottom-color:var(--color-primary-700)}.rte-body{display:flex;flex-direction:row;flex:1 1 0;overflow:hidden;min-height:0}.rte-editor-pane{flex:1 1 auto;overflow-y:auto;overscroll-behavior-y:contain;position:relative}.rte-preview-pane{flex:0 0 50%;max-width:50%;border-left:1px solid var(--color-primary-200);overflow-y:auto;overscroll-behavior-y:contain;padding:1rem 1.25rem}.dark .rte-preview-pane{border-left-color:var(--color-primary-700)}@media(max-width:640px){.rte-body{flex-direction:column}.rte-preview-pane{flex:0 0 auto;max-width:100%;border-left:none;border-top:1px solid var(--color-primary-200)}.dark .rte-preview-pane{border-top-color:var(--color-primary-700)}}.rte-preview-pane .prose{font-size:.9rem;line-height:1.7;color:var(--color-primary-800)}.dark .rte-preview-pane .prose{color:var(--color-primary-100)}.rte-preview-pane .prose h1{font-size:1.75rem;font-weight:700;margin:.75rem 0}.rte-preview-pane .prose h2{font-size:1.4rem;font-weight:600;margin:.65rem 0}.rte-preview-pane .prose h3{font-size:1.15rem;font-weight:600;margin:.5rem 0}.rte-preview-pane .prose h4{font-size:1rem;font-weight:600;margin:.4rem 0}.rte-preview-pane .prose p{margin:.5rem 0}.rte-preview-pane .prose ul{list-style:disc;padding-left:1.5rem;margin:.5rem 0}.rte-preview-pane .prose ol{list-style:decimal;padding-left:1.5rem;margin:.5rem 0}.rte-preview-pane .prose li{margin:.2rem 0}.rte-preview-pane .prose a{color:var(--color-primary-500);text-decoration:underline}.rte-preview-pane .prose code{background:var(--color-primary-100);border-radius:.25rem;padding:.1em .35em;font-family:ui-monospace,monospace;font-size:.85em}.dark .rte-preview-pane .prose code{background:var(--color-primary-800)}.rte-preview-pane .prose pre{background:var(--color-primary-900);color:var(--color-primary-100);border-radius:.5rem;padding:1rem;overflow-x:auto;font-family:ui-monospace,monospace;font-size:.85em;margin:.75rem 0}.dark .rte-preview-pane .prose pre{background:var(--color-primary-800)}.rte-preview-pane .prose blockquote{border-left:4px solid var(--color-primary-300);padding-left:1rem;color:var(--color-primary-500);margin:.75rem 0;font-style:italic}.dark .rte-preview-pane .prose blockquote{border-left-color:var(--color-primary-600);color:var(--color-primary-400)}.rte-preview-pane .prose table{width:100%;border-collapse:collapse;margin:.75rem 0}.rte-preview-pane .prose th,.rte-preview-pane .prose td{border:1px solid var(--color-primary-200);padding:.4rem .75rem;text-align:left}.dark .rte-preview-pane .prose th,.dark .rte-preview-pane .prose td{border-color:var(--color-primary-700)}.rte-preview-pane .prose th{background:var(--color-primary-50);font-weight:600}.dark .rte-preview-pane .prose th{background:var(--color-primary-800)}.rte-preview-pane .prose img{max-width:100%;border-radius:.375rem}.rte-preview-pane .prose hr{border:none;border-top:1px solid var(--color-primary-200);margin:1rem 0}.dark .rte-preview-pane .prose hr{border-top-color:var(--color-primary-700)}.rte-markdown-source{width:100%;height:100%;resize:none;border:none;outline:none;padding:1rem 1.25rem;font-family:ui-monospace,Cascadia Code,Fira Code,monospace;font-size:.875rem;line-height:1.65;background:transparent;color:var(--color-primary-900);box-sizing:border-box}.dark .rte-markdown-source{color:var(--color-primary-100)}.rte-markdown-source::placeholder{color:var(--color-primary-400)}.rte-statusbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.2rem .75rem;font-size:.7rem;color:var(--color-primary-400);border-top:1px solid var(--color-primary-100);flex-shrink:0}.dark .rte-statusbar{border-top-color:var(--color-primary-800);color:var(--color-primary-500)}.rte-statusbar-left{display:flex;align-items:center;gap:.4rem}.rte-statusbar-right{display:flex;align-items:center;gap:.75rem}.rte-statusbar-divider{width:1px;height:1rem;background:var(--color-primary-200);flex-shrink:0}.dark .rte-statusbar-divider{background:var(--color-primary-700)}.rte-statusbar-label{font-size:.68rem;font-weight:500;color:var(--color-primary-500);user-select:none}.dark .rte-statusbar-label{color:var(--color-primary-400)}.ProseMirror{outline:none;padding:.875rem 1.25rem;min-height:180px;caret-color:var(--color-primary-600);color:var(--color-primary-900);font-size:.9rem;line-height:1.7}.dark .ProseMirror{color:var(--color-primary-100)}.ProseMirror p{margin:.4rem 0}.ProseMirror h1{font-size:1.75rem;font-weight:700;margin:.6rem 0}.ProseMirror h2{font-size:1.4rem;font-weight:600;margin:.5rem 0}.ProseMirror h3{font-size:1.15rem;font-weight:600;margin:.4rem 0}.ProseMirror h4{font-size:1rem;font-weight:600;margin:.35rem 0}.ProseMirror ul{list-style:disc;padding-left:1.5rem;margin:.4rem 0}.ProseMirror ol{list-style:decimal;padding-left:1.5rem;margin:.4rem 0}.ProseMirror a{color:var(--color-primary-500);text-decoration:underline;cursor:pointer}.ProseMirror code{background:var(--color-primary-100);border-radius:.25rem;padding:.1em .35em;font-family:ui-monospace,monospace;font-size:.85em}.dark .ProseMirror code{background:var(--color-primary-800)}.ProseMirror pre{background:var(--color-primary-900);color:var(--color-primary-100);border-radius:.5rem;padding:.875rem 1rem;overflow-x:auto;font-family:ui-monospace,monospace;font-size:.85em;margin:.5rem 0}.dark .ProseMirror pre{background:var(--color-primary-800)}.ProseMirror blockquote{border-left:4px solid var(--color-primary-300);padding-left:1rem;color:var(--color-primary-500);margin:.5rem 0;font-style:italic}.dark .ProseMirror blockquote{border-left-color:var(--color-primary-600);color:var(--color-primary-400)}.ProseMirror table{border-collapse:collapse;margin:.5rem 0;width:100%}.ProseMirror th,.ProseMirror td{border:1px solid var(--color-primary-200);padding:.35rem .6rem;text-align:left;vertical-align:top}.dark .ProseMirror th,.dark .ProseMirror td{border-color:var(--color-primary-700)}.ProseMirror th{background:var(--color-primary-50);font-weight:600}.dark .ProseMirror th{background:var(--color-primary-800)}.ProseMirror img{max-width:100%;border-radius:.375rem;display:inline-block}.ProseMirror hr{border:none;border-top:1px solid var(--color-primary-200);margin:.75rem 0}.dark .ProseMirror hr{border-top-color:var(--color-primary-700)}.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--color-primary-400);pointer-events:none;height:0}.ProseMirror .selectedCell{background:var(--color-primary-100)}.dark .ProseMirror .selectedCell{background:var(--color-primary-800)}.ProseMirror .column-resize-handle{position:absolute;right:-2px;top:0;bottom:0;width:4px;background:var(--color-primary-400);pointer-events:none;opacity:0;transition:opacity .15s}.ProseMirror th:hover .column-resize-handle,.ProseMirror td:hover .column-resize-handle{opacity:1}.column-resize-dragging .column-resize-handle{opacity:1;background:var(--color-primary-500)}.ProseMirror.resize-cursor,.column-resize-dragging{cursor:col-resize}.ProseMirror th,.ProseMirror td{position:relative}.rte-inline-dialog{position:absolute;z-index:40;top:2.5rem;left:0;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--color-white, #fff);border:1px solid var(--color-primary-200);border-radius:.5rem;box-shadow:0 4px 12px #0000001f;min-width:18rem}.dark .rte-inline-dialog{background:var(--color-primary-900);border-color:var(--color-primary-700);box-shadow:0 4px 12px #0006}.rte-inline-dialog input[type=text],.rte-inline-dialog input[type=url]{flex:1;border:1px solid var(--color-primary-200);border-radius:.375rem;padding:.3rem .5rem;font-size:.8rem;outline:none;background:transparent;color:inherit}.dark .rte-inline-dialog input[type=text],.dark .rte-inline-dialog input[type=url]{border-color:var(--color-primary-700)}.rte-inline-dialog input[type=text]:focus,.rte-inline-dialog input[type=url]:focus{border-color:var(--color-primary-400)}.rte-inline-dialog button{font-size:.75rem;padding:.3rem .6rem;border-radius:.375rem;cursor:pointer;border:none;background:var(--color-primary-600);color:#fff;font-weight:500}.rte-inline-dialog button:hover{background:var(--color-primary-700)}.rte-inline-dialog button.rte-cancel-btn{background:var(--color-secondary-200);color:var(--color-primary-800)}.dark .rte-inline-dialog button.rte-cancel-btn{background:var(--color-primary-700);color:var(--color-primary-100)}.ProseMirror div[data-youtube-video]{max-width:100%;margin:.5rem 0}.ProseMirror div[data-youtube-video] iframe{max-width:100%;border-radius:.375rem}.rte-image-wrapper{display:inline-block;position:relative;line-height:0;user-select:none;vertical-align:middle}.rte-image-wrapper img{display:block;max-width:100%;border-radius:.25rem}.rte-image-wrapper--selected img{outline:2px solid var(--color-primary-500);outline-offset:2px}.rte-rh{position:absolute;width:9px;height:9px;background:var(--color-primary-500);border:1.5px solid #fff;border-radius:2px;z-index:10;box-shadow:0 1px 3px #00000040}.rte-rh--nw{top:-4px;left:-4px;cursor:nw-resize}.rte-rh--ne{top:-4px;right:-4px;cursor:ne-resize}.rte-rh--sw{bottom:-4px;left:-4px;cursor:sw-resize}.rte-rh--se{bottom:-4px;right:-4px;cursor:se-resize}.rte-rh--e{top:50%;right:-4px;transform:translateY(-50%);cursor:ew-resize}.rte-rh--nw,.rte-rh--ne,.rte-rh--sw{pointer-events:none}.rte-rh--se,.rte-rh--e{pointer-events:auto}.rte-image-size-label{position:absolute;bottom:6px;left:50%;transform:translate(-50%);background:#0000009e;color:#fff;font-size:.62rem;font-weight:500;padding:1px 5px;border-radius:3px;white-space:nowrap;pointer-events:none;user-select:none}.rte-video-wrapper{display:block;margin:.5em 0;line-height:0}.rte-video-wrapper video{border-radius:.375rem;box-shadow:0 1px 4px #0000001a}.rte-video-wrapper--selected video{outline:2px solid var(--color-primary-500);outline-offset:2px}.rte-embed-wrapper{display:block;margin:.5em 0}.rte-embed-wrapper iframe{border-radius:.375rem;box-shadow:0 1px 4px #0000001a}.rte-embed-wrapper--selected iframe{outline:2px solid var(--color-primary-500);outline-offset:2px}.rte-tablebar{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:.1rem .25rem;padding:.3rem .75rem;background:var(--color-primary-50);border-bottom:1px solid var(--color-primary-200);flex-shrink:0;animation:rte-tbar-in .15s ease}@keyframes rte-tbar-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dark .rte-tablebar{background:var(--color-primary-900);border-bottom-color:var(--color-primary-700)}.rte-tbar-group-label{font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-primary-400);user-select:none;padding:0 .1rem}.dark .rte-tbar-group-label{color:var(--color-primary-500)}.rte-tbar-sep{width:1px;height:1.25rem;background:var(--color-primary-200);flex-shrink:0;margin:0 .2rem}.dark .rte-tbar-sep{background:var(--color-primary-700)}.rte-tbar-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .4rem;border:none;border-radius:.3rem;background:transparent;color:var(--color-primary-700);cursor:pointer;font-size:.7rem;font-weight:500;line-height:1;transition:background .12s,color .12s;white-space:nowrap}.rte-tbar-btn:hover:not(:disabled){background:var(--color-primary-100);color:var(--color-primary-900)}.rte-tbar-btn:disabled,.rte-tbar-btn--disabled{opacity:.38;cursor:not-allowed}.dark .rte-tbar-btn{color:var(--color-primary-300)}.dark .rte-tbar-btn:hover:not(:disabled){background:var(--color-primary-800);color:var(--color-primary-100)}.rte-tbar-label{font-size:.68rem}.rte-tbar-split-wrap{position:relative;display:inline-flex}.rte-tbar-split-picker{position:absolute;top:calc(100% + 4px);left:0;z-index:50;display:flex;flex-direction:column;gap:2px;padding:4px;background:var(--color-white, #fff);border:1px solid var(--color-primary-200);border-radius:.4rem;box-shadow:0 4px 12px #0000001f;min-width:9rem;animation:rte-tbar-in .12s ease}.dark .rte-tbar-split-picker{background:var(--color-primary-900);border-color:var(--color-primary-700);box-shadow:0 4px 12px #0006}.rte-tbar-split-pick-btn{display:flex;align-items:center;gap:.4rem;width:100%;padding:.3rem .5rem;font-size:.72rem;font-weight:500;background:transparent;border:none;border-radius:.3rem;color:var(--color-primary-700);cursor:pointer;text-align:left;transition:background .1s}.rte-tbar-split-pick-btn:hover{background:var(--color-primary-100);color:var(--color-primary-900)}.dark .rte-tbar-split-pick-btn{color:var(--color-primary-300)}.dark .rte-tbar-split-pick-btn:hover{background:var(--color-primary-800);color:var(--color-primary-100)}.rte-findbar{display:flex;flex-direction:column;gap:.35rem;padding:.45rem .75rem;background:var(--color-primary-50);border-bottom:1px solid var(--color-primary-200);flex-shrink:0;animation:rte-findbar-in .15s ease}@keyframes rte-findbar-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.dark .rte-findbar{background:var(--color-primary-950, #0a0a0f);border-bottom-color:var(--color-primary-700)}.rte-findbar-row{display:flex;align-items:center;gap:.35rem}.rte-findbar-icon{color:var(--color-primary-400);flex-shrink:0}.rte-findbar-input{flex:1;height:1.75rem;padding:0 .5rem;font-size:.8rem;border:1px solid var(--color-primary-200);border-radius:.375rem;outline:none;background:var(--color-white, #fff);color:var(--color-primary-900);transition:border-color .15s}.rte-findbar-input:focus{border-color:var(--color-primary-400)}.dark .rte-findbar-input{background:var(--color-primary-900);border-color:var(--color-primary-700);color:var(--color-primary-100)}.dark .rte-findbar-input:focus{border-color:var(--color-primary-500)}.rte-findbar-count{font-size:.72rem;color:var(--color-primary-400);white-space:nowrap;min-width:3.5rem;text-align:center}.rte-findbar-btn{display:inline-flex;align-items:center;justify-content:center;height:1.75rem;min-width:1.75rem;padding:0 .4rem;font-size:.72rem;font-weight:600;border:1px solid var(--color-primary-200);border-radius:.375rem;background:transparent;color:var(--color-primary-600);cursor:pointer;transition:background .12s,color .12s,border-color .12s}.rte-findbar-btn:hover:not(:disabled){background:var(--color-primary-100);border-color:var(--color-primary-300)}.rte-findbar-btn:disabled{opacity:.4;cursor:not-allowed}.rte-findbar-btn--active{background:var(--color-primary-600);color:#fff;border-color:var(--color-primary-600)}.rte-findbar-btn--active:hover:not(:disabled){background:var(--color-primary-700)}.rte-findbar-btn--close{color:var(--color-primary-400);border-color:transparent;margin-left:.15rem}.rte-findbar-btn--close:hover:not(:disabled){background:var(--color-danger-100);color:var(--color-danger-600);border-color:transparent}.rte-findbar-btn--action{min-width:auto;padding:0 .6rem;font-size:.72rem}.dark .rte-findbar-btn{border-color:var(--color-primary-700);color:var(--color-primary-300)}.dark .rte-findbar-btn:hover:not(:disabled){background:var(--color-primary-800);border-color:var(--color-primary-600)}.rte-search-match{background:color-mix(in srgb,var(--color-warning-400) 40%,transparent);border-radius:2px}.rte-search-current{background:color-mix(in srgb,var(--color-warning-500) 70%,transparent);border-radius:2px;outline:1px solid var(--color-warning-500)}.dark .rte-search-match{background:color-mix(in srgb,var(--color-warning-600) 40%,transparent)}.dark .rte-search-current{background:color-mix(in srgb,var(--color-warning-500) 60%,transparent);outline-color:var(--color-warning-400)}
@@ -0,0 +1,10 @@
1
+ export { RichTextEditor_alias_3 as RichTextEditor } from '../_tsup-dts-rollup.cjs';
2
+ export { RichTextEditorProps_alias_2 as RichTextEditorProps } from '../_tsup-dts-rollup.cjs';
3
+ export { RichTextEditorHandle_alias_2 as RichTextEditorHandle } from '../_tsup-dts-rollup.cjs';
4
+ export { RichEditorMode_alias_2 as RichEditorMode } from '../_tsup-dts-rollup.cjs';
5
+ export { RichTextEditorLabels_alias_1 as RichTextEditorLabels } from '../_tsup-dts-rollup.cjs';
6
+ export { RichEditorBuiltInTabKey_alias_1 as RichEditorBuiltInTabKey } from '../_tsup-dts-rollup.cjs';
7
+ export { RichTextEditorRibbonProps_alias_1 as RichTextEditorRibbonProps } from '../_tsup-dts-rollup.cjs';
8
+ export { RibbonTab_alias_1 as RibbonTab } from '../_tsup-dts-rollup.cjs';
9
+ export { RibbonGroup_alias_1 as RibbonGroup } from '../_tsup-dts-rollup.cjs';
10
+ export { RibbonItem_alias_1 as RibbonItem } from '../_tsup-dts-rollup.cjs';
@@ -0,0 +1,10 @@
1
+ export { RichTextEditor_alias_3 as RichTextEditor } from '../_tsup-dts-rollup.js';
2
+ export { RichTextEditorProps_alias_2 as RichTextEditorProps } from '../_tsup-dts-rollup.js';
3
+ export { RichTextEditorHandle_alias_2 as RichTextEditorHandle } from '../_tsup-dts-rollup.js';
4
+ export { RichEditorMode_alias_2 as RichEditorMode } from '../_tsup-dts-rollup.js';
5
+ export { RichTextEditorLabels_alias_1 as RichTextEditorLabels } from '../_tsup-dts-rollup.js';
6
+ export { RichEditorBuiltInTabKey_alias_1 as RichEditorBuiltInTabKey } from '../_tsup-dts-rollup.js';
7
+ export { RichTextEditorRibbonProps_alias_1 as RichTextEditorRibbonProps } from '../_tsup-dts-rollup.js';
8
+ export { RibbonTab_alias_1 as RibbonTab } from '../_tsup-dts-rollup.js';
9
+ export { RibbonGroup_alias_1 as RibbonGroup } from '../_tsup-dts-rollup.js';
10
+ export { RibbonItem_alias_1 as RibbonItem } from '../_tsup-dts-rollup.js';