@ibiz-template/vue3-components 0.7.41-alpha.43 → 0.7.41-alpha.45

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 (74) hide show
  1. package/dist/ibiz-markdown-editor-C7wR017-.js +1 -0
  2. package/dist/{index-CG3sQH0b.js → index-DgqTP4Vw.js} +1 -1
  3. package/dist/{index-kZrZndeH.js → index-Dr0VM8iS.js} +1 -1
  4. package/dist/index-yLzheFmH.js +11 -0
  5. package/dist/index.min.css +1 -1
  6. package/dist/index.system.min.js +1 -1
  7. package/dist/wang-editor-homqxACE.js +1 -0
  8. package/dist/{xlsx-util-8YSXhmdI.js → xlsx-util-C5MBICNN.js} +1 -1
  9. package/es/control/grid/grid-column/grid-field-column/attachment-column/attachment-column.mjs +2 -1
  10. package/es/control/grid/grid-column/grid-field-column/attachment-column/file-util.mjs +22 -11
  11. package/es/editor/carousel/ibiz-carousel/ibiz-carousel.mjs +5 -2
  12. package/es/editor/code/monaco-editor/monaco-editor.mjs +2 -0
  13. package/es/editor/html/wang-editor/wang-editor.mjs +15 -6
  14. package/es/editor/markdown/ibiz-markdown-editor/custom-menu.mjs +5 -0
  15. package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.css +1 -1
  16. package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.mjs +23 -12
  17. package/es/editor/text-box/input/input.mjs +2 -0
  18. package/es/editor/text-box/signature/signature.mjs +28 -15
  19. package/es/editor/upload/upload-editor.controller.mjs +12 -1
  20. package/es/editor/upload/use/use-iview-upload.mjs +28 -13
  21. package/es/locale/en/index.mjs +5 -1
  22. package/es/locale/zh-CN/index.mjs +5 -1
  23. package/es/panel-component/coop-pos/coop-pos.controller.mjs +11 -1
  24. package/es/panel-component/panel-app-title/panel-app-title.controller.mjs +3 -1
  25. package/es/panel-component/panel-app-title/panel-app-title.mjs +4 -2
  26. package/es/util/ai-chat-util/ai-chat-util.mjs +70 -35
  27. package/es/util/app-util/app-util.mjs +2 -1
  28. package/es/util/inline-ai-util/inline-ai-textarea/common/ai-think/ai-think.css +1 -0
  29. package/es/util/inline-ai-util/inline-ai-textarea/common/ai-think/ai-think.mjs +56 -0
  30. package/es/util/inline-ai-util/inline-ai-textarea/common/ai-tool-call/ai-tool-call.css +1 -0
  31. package/es/util/inline-ai-util/inline-ai-textarea/common/ai-tool-call/ai-tool-call.mjs +52 -0
  32. package/es/util/inline-ai-util/inline-ai-textarea/common/ai-tool-call-item/ai-tool-call-item.css +1 -0
  33. package/es/util/inline-ai-util/inline-ai-textarea/common/ai-tool-call-item/ai-tool-call-item.mjs +143 -0
  34. package/es/util/inline-ai-util/inline-ai-textarea/common/index.mjs +4 -0
  35. package/es/util/inline-ai-util/inline-ai-textarea/icon.mjs +52 -1
  36. package/es/util/inline-ai-util/inline-ai-textarea/inline-ai-textarea.css +1 -1
  37. package/es/util/inline-ai-util/inline-ai-textarea/inline-ai-textarea.hook.mjs +29 -3
  38. package/es/util/inline-ai-util/inline-ai-textarea/inline-ai-textarea.mjs +32 -25
  39. package/es/util/inline-ai-util/inline-ai-textarea/interface.mjs +1 -0
  40. package/lib/control/grid/grid-column/grid-field-column/attachment-column/attachment-column.cjs +2 -1
  41. package/lib/control/grid/grid-column/grid-field-column/attachment-column/file-util.cjs +22 -11
  42. package/lib/editor/carousel/ibiz-carousel/ibiz-carousel.cjs +5 -2
  43. package/lib/editor/code/monaco-editor/monaco-editor.cjs +2 -0
  44. package/lib/editor/html/wang-editor/wang-editor.cjs +15 -6
  45. package/lib/editor/markdown/ibiz-markdown-editor/custom-menu.cjs +5 -0
  46. package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.cjs +23 -12
  47. package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.css +1 -1
  48. package/lib/editor/text-box/input/input.cjs +2 -0
  49. package/lib/editor/text-box/signature/signature.cjs +28 -15
  50. package/lib/editor/upload/upload-editor.controller.cjs +12 -1
  51. package/lib/editor/upload/use/use-iview-upload.cjs +28 -13
  52. package/lib/locale/en/index.cjs +5 -1
  53. package/lib/locale/zh-CN/index.cjs +5 -1
  54. package/lib/panel-component/coop-pos/coop-pos.controller.cjs +11 -1
  55. package/lib/panel-component/panel-app-title/panel-app-title.cjs +4 -2
  56. package/lib/panel-component/panel-app-title/panel-app-title.controller.cjs +3 -1
  57. package/lib/util/ai-chat-util/ai-chat-util.cjs +70 -35
  58. package/lib/util/app-util/app-util.cjs +2 -1
  59. package/lib/util/inline-ai-util/inline-ai-textarea/common/ai-think/ai-think.cjs +58 -0
  60. package/lib/util/inline-ai-util/inline-ai-textarea/common/ai-think/ai-think.css +1 -0
  61. package/lib/util/inline-ai-util/inline-ai-textarea/common/ai-tool-call/ai-tool-call.cjs +54 -0
  62. package/lib/util/inline-ai-util/inline-ai-textarea/common/ai-tool-call/ai-tool-call.css +1 -0
  63. package/lib/util/inline-ai-util/inline-ai-textarea/common/ai-tool-call-item/ai-tool-call-item.cjs +145 -0
  64. package/lib/util/inline-ai-util/inline-ai-textarea/common/ai-tool-call-item/ai-tool-call-item.css +1 -0
  65. package/lib/util/inline-ai-util/inline-ai-textarea/common/index.cjs +9 -0
  66. package/lib/util/inline-ai-util/inline-ai-textarea/icon.cjs +54 -0
  67. package/lib/util/inline-ai-util/inline-ai-textarea/inline-ai-textarea.cjs +31 -24
  68. package/lib/util/inline-ai-util/inline-ai-textarea/inline-ai-textarea.css +1 -1
  69. package/lib/util/inline-ai-util/inline-ai-textarea/inline-ai-textarea.hook.cjs +29 -3
  70. package/lib/util/inline-ai-util/inline-ai-textarea/interface.cjs +3 -0
  71. package/package.json +5 -5
  72. package/dist/ibiz-markdown-editor-DJ662N4_.js +0 -1
  73. package/dist/index-D3x_MFr-.js +0 -11
  74. package/dist/wang-editor-DDSO3Ha9.js +0 -1
@@ -1 +1 @@
1
- .ibiz-inline-ai-container-context-menu{--ibiz-inline-ai-context-menu-color-bg:var(--ibiz-color-bg-2);--ibiz-inline-ai-context-menu-color-text:var(--ibiz-color-text-0);--ibiz-inline-ai-context-menu-color-bg-active:var(--ibiz-color-fill-0);--mx-menu-text:var(--ibiz-inline-ai-context-menu-color-text);--mx-menu-backgroud:var(--ibiz-inline-ai-context-menu-color-bg);--mx-menu-hover-backgroud:var(--ibiz-inline-ai-context-menu-color-bg-active);--mx-menu-hover-text:var(--ibiz-inline-ai-context-menu-color-text);--mx-menu-open-text:var(--ibiz-inline-ai-context-menu-color-text);--mx-menu-open-backgroud:var(--ibiz-inline-ai-context-menu-color-bg-active);--mx-menu-open-hover-text:var(--ibiz-inline-ai-context-menu-color-text);--mx-menu-open-hover-backgroud:var(--ibiz-inline-ai-context-menu-color-bg-active);--mx-menu-active-backgroud:var(--ibiz-inline-ai-context-menu-color-bg-active);--mx-menu-active-text:var(--ibiz-inline-ai-context-menu-color-text);--mx-menu-backgroud-radius:0}.ibiz-inline-ai-container-context-menu .scroll-content{pointer-events:unset}.ibiz-inline-ai-container-context-menu .mx-context-menu-item{cursor:pointer}.ibiz-inline-ai-textarea-container{--ibiz-inline-ai-textarea-container-color-bg-0:rgb(255, 255, 255);--ibiz-inline-ai-textarea-container-color-bg-1:rgb(249, 249, 249);--ibiz-inline-ai-textarea-container-color-border:rgba(29, 31, 35, 0.1);--ibiz-inline-ai-textarea-container-color-text-0:rgb(29, 31, 35);--ibiz-inline-ai-textarea-container-color-text-1:rgba(0, 0, 0, 0.45);--ibiz-inline-ai-textarea-container-color-text-2:rgb(85, 125, 165);--ibiz-inline-ai-textarea-container-color-text-hove-1:rgb(105, 148, 190);--ibiz-inline-ai-textarea-container-color-bg-hover-1:rgb(217, 236, 255);--ibiz-inline-ai-textarea-container-color-bg-hover-2:rgba(46, 50, 55, 0.05);--ibiz-inline-ai-textarea-container-color-loading:#65b3fc}.ibiz-inline-ai-textarea-container--dark{--ibiz-inline-ai-textarea-container-color-bg-0:rgb(28, 28, 28);--ibiz-inline-ai-textarea-container-color-bg-1:rgb(53, 54, 60);--ibiz-inline-ai-textarea-container-color-border:rgba(255, 255, 255, 0.08);--ibiz-inline-ai-textarea-container-color-text-0:rgb(255, 255, 255);--ibiz-inline-ai-textarea-container-color-text-1:rgba(249, 249, 249, 0.35);--ibiz-inline-ai-textarea-container-color-text-2:rgb(70, 107, 144);--ibiz-inline-ai-textarea-container-color-text-hove-1:rgb(105, 148, 190);--ibiz-inline-ai-textarea-container-color-bg-hover-1:rgba(85, 125, 165, 0.2);--ibiz-inline-ai-textarea-container-color-bg-hover-2:rgb(67, 68, 74);--ibiz-inline-ai-textarea-container-color-loading:rgba(204, 204, 204, 0.6)}.ibiz-inline-ai-textarea-container{position:absolute;color:var(--ibiz-inline-ai-textarea-container-color-text-0);-webkit-user-select:none;-moz-user-select:none;user-select:none}.ibiz-inline-ai-textarea-container .ibiz-inline-ai-textarea-container__content{border:1px solid var(--ibiz-inline-ai-textarea-container-color-border);border-radius:var(--ibiz-border-radius-small);box-shadow:0 0 16px var(--ibiz-color-shadow)}.ibiz-inline-ai-textarea-container.is-show-ai{border:1px solid var(--ibiz-inline-ai-textarea-container-color-border);border-radius:var(--ibiz-border-radius-small);box-shadow:0 0 16px var(--ibiz-color-shadow)}.ibiz-inline-ai-textarea-container.is-show-ai .ibiz-inline-ai-textarea-container__content{border:none;border-radius:var(--ibiz-border-radius-small) var(--ibiz-border-radius-small) 0 0;box-shadow:none}.ibiz-inline-ai-textarea-container.is-show-ai .ibiz-inline-ai-textarea-container__footer{border-radius:0 0 var(--ibiz-border-radius-small) var(--ibiz-border-radius-small)}.ibiz-inline-ai-textarea-container__content{position:relative;display:flex;gap:var(--ibiz-spacing-tight);padding:var(--ibiz-spacing-base-tight);background-color:var(--ibiz-inline-ai-textarea-container-color-bg-0)}.ibiz-inline-ai-textarea-container__content--prefix{flex-shrink:0;color:var(--ibiz-inline-ai-textarea-container-color-text-1)}.ibiz-inline-ai-textarea-container__content--textarea{position:relative;display:flex;flex-direction:column;flex-grow:1;gap:var(--ibiz-spacing-tight);overflow-y:auto}.ibiz-inline-ai-textarea-container__content--textarea textarea{flex-shrink:0;padding:0;overflow:hidden;color:var(--ibiz-inline-ai-textarea-container-color-text-0);resize:none;background-color:var(--ibiz-inline-ai-textarea-container-color-bg-0);border:none;outline:0;transition:height .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1)}.ibiz-inline-ai-textarea-container__content--textarea textarea:disabled{background-color:var(--ibiz-inline-ai-textarea-container-color-bg-0)}.ibiz-inline-ai-textarea-container__content--textarea textarea.is-hidden{display:none}.ibiz-inline-ai-textarea-container__content--suffix{display:flex;flex-direction:column-reverse;flex-shrink:0}.ibiz-inline-ai-textarea-container__content--sand-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--ibiz-inline-ai-textarea-container-color-text-2);cursor:pointer;border-radius:var(--ibiz-spacing-extra-tight)}.ibiz-inline-ai-textarea-container__content--sand-icon:hover{background-color:var(--ibiz-inline-ai-textarea-container-color-bg-hover-1)}.ibiz-inline-ai-textarea-container__content--stop-icon{display:flex;gap:var(--ibiz-spacing-extra-tight);align-items:center;font-size:var(--ibiz-font-size-small);color:var(--ibiz-inline-ai-textarea-container-color-text-1);cursor:pointer}.ibiz-inline-ai-textarea-container__content--stop-icon:hover{color:var(--ibiz-inline-ai-textarea-container-color-text-hove-1)}.ibiz-inline-ai-textarea-container__footer{padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base);font-size:var(--ibiz-font-size-small);color:var(--ibiz-inline-ai-textarea-container-color-text-1);background-color:var(--ibiz-inline-ai-textarea-container-color-bg-1);border-top:1px solid var(--ibiz-inline-ai-textarea-container-color-border)}.ibiz-inline-ai-textarea-container__actions{position:absolute;width:240px;padding:var(--ibiz-spacing-base-tight) 0;font-size:var(--ibiz-font-size-regular);background-color:var(--ibiz-inline-ai-textarea-container-color-bg-0);border:1px solid var(--ibiz-inline-ai-textarea-container-color-border);border-radius:var(--ibiz-border-radius-small);box-shadow:0 0 16px var(--ibiz-color-shadow)}.ibiz-inline-ai-textarea-container__actions--action{display:flex;gap:var(--ibiz-spacing-tight);align-items:center;padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base-loose);cursor:pointer}.ibiz-inline-ai-textarea-container__actions--action:hover{background-color:var(--ibiz-inline-ai-textarea-container-color-bg-hover-2)}.ibiz-inline-ai-textarea-container__actions--action.is-danger:hover{color:var(--ibiz-color-danger)}.ibiz-inline-ai-textarea-container__actions--divider{margin:var(--ibiz-spacing-extra-tight) var(--ibiz-spacing-base-loose);border-top:1px solid var(--ibiz-inline-ai-textarea-container-color-border)}.ibiz-inline-ai-textarea-container__error{flex-grow:1;color:var(--ibiz-color-danger)}.ibiz-inline-ai-textarea-container__think{flex-shrink:0;width:100%;height:auto;font-size:var(--ibiz-font-size-small);color:var(--ibiz-inline-ai-textarea-container-color-text-1)}.ibiz-inline-ai-textarea-container__think--header{display:flex;gap:var(--ibiz-spacing-extra-tight);align-items:center;margin-bottom:var(--ibiz-spacing-tight);cursor:pointer}.ibiz-inline-ai-textarea-container__think--header:hover{color:var(--ibiz-inline-ai-textarea-container-color-text-hove-1)}.ibiz-inline-ai-textarea-container__think--state-icon{display:flex;align-items:center;color:var(--ibiz-color-success)}.ibiz-inline-ai-textarea-container__think--state-icon.is-loading{color:var(--ibiz-inline-ai-textarea-container-color-loading)}.ibiz-inline-ai-textarea-container__think--collapse-icon{display:flex;align-items:center}.ibiz-inline-ai-textarea-container__think--content{position:relative;padding-left:var(--ibiz-spacing-tight);word-wrap:break-word;white-space:pre-wrap;transition:height .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1)}.ibiz-inline-ai-textarea-container__think--content::before{position:absolute;top:0;bottom:0;left:0;width:2px;content:"";background-color:var(--ibiz-inline-ai-textarea-container-color-border)}.ibiz-inline-ai-textarea-container__loading{position:absolute;top:0;left:0;display:flex;gap:8px;align-items:center;width:100%;height:100%;overflow:hidden}@keyframes bounce{0%,100%,80%{transform:scale(0)}40%{transform:scale(1)}}.ibiz-inline-ai-textarea-container__loading--dot{width:12px;height:12px;background:var(--ibiz-inline-ai-textarea-container-color-loading);border-radius:50%;animation:bounce 1.5s infinite ease-in-out}.ibiz-inline-ai-textarea-container__loading--dot:nth-child(2){animation-delay:.2s}.ibiz-inline-ai-textarea-container__loading--dot:nth-child(3){animation-delay:.4s}
1
+ .ibiz-inline-ai-container-context-menu{--ibiz-inline-ai-context-menu-color-bg:var(--ibiz-color-bg-2);--ibiz-inline-ai-context-menu-color-text:var(--ibiz-color-text-0);--ibiz-inline-ai-context-menu-color-bg-active:var(--ibiz-color-fill-0);--mx-menu-text:var(--ibiz-inline-ai-context-menu-color-text);--mx-menu-backgroud:var(--ibiz-inline-ai-context-menu-color-bg);--mx-menu-hover-backgroud:var(--ibiz-inline-ai-context-menu-color-bg-active);--mx-menu-hover-text:var(--ibiz-inline-ai-context-menu-color-text);--mx-menu-open-text:var(--ibiz-inline-ai-context-menu-color-text);--mx-menu-open-backgroud:var(--ibiz-inline-ai-context-menu-color-bg-active);--mx-menu-open-hover-text:var(--ibiz-inline-ai-context-menu-color-text);--mx-menu-open-hover-backgroud:var(--ibiz-inline-ai-context-menu-color-bg-active);--mx-menu-active-backgroud:var(--ibiz-inline-ai-context-menu-color-bg-active);--mx-menu-active-text:var(--ibiz-inline-ai-context-menu-color-text);--mx-menu-backgroud-radius:0}.ibiz-inline-ai-container-context-menu .scroll-content{pointer-events:unset}.ibiz-inline-ai-container-context-menu .mx-context-menu-item{cursor:pointer}.ibiz-inline-ai-textarea-container{--ibiz-inline-ai-textarea-container-color-bg-0:rgb(255, 255, 255);--ibiz-inline-ai-textarea-container-color-bg-1:rgb(249, 249, 249);--ibiz-inline-ai-textarea-container-color-border:rgba(29, 31, 35, 0.1);--ibiz-inline-ai-textarea-container-color-text-0:rgb(29, 31, 35);--ibiz-inline-ai-textarea-container-color-text-1:rgba(0, 0, 0, 0.45);--ibiz-inline-ai-textarea-container-color-text-2:rgb(85, 125, 165);--ibiz-inline-ai-textarea-container-color-text-hove-1:rgb(105, 148, 190);--ibiz-inline-ai-textarea-container-color-bg-hover-1:rgb(217, 236, 255);--ibiz-inline-ai-textarea-container-color-bg-hover-2:rgba(46, 50, 55, 0.05);--ibiz-inline-ai-textarea-container-color-loading:#65b3fc}.ibiz-inline-ai-textarea-container--dark{--ibiz-inline-ai-textarea-container-color-bg-0:rgb(28, 28, 28);--ibiz-inline-ai-textarea-container-color-bg-1:rgb(53, 54, 60);--ibiz-inline-ai-textarea-container-color-border:rgba(255, 255, 255, 0.08);--ibiz-inline-ai-textarea-container-color-text-0:rgb(255, 255, 255);--ibiz-inline-ai-textarea-container-color-text-1:rgba(249, 249, 249, 0.35);--ibiz-inline-ai-textarea-container-color-text-2:rgb(70, 107, 144);--ibiz-inline-ai-textarea-container-color-text-hove-1:rgb(105, 148, 190);--ibiz-inline-ai-textarea-container-color-bg-hover-1:rgba(85, 125, 165, 0.2);--ibiz-inline-ai-textarea-container-color-bg-hover-2:rgb(67, 68, 74);--ibiz-inline-ai-textarea-container-color-loading:rgba(204, 204, 204, 0.6)}.ibiz-inline-ai-textarea-container{position:absolute;color:var(--ibiz-inline-ai-textarea-container-color-text-0);-webkit-user-select:none;-moz-user-select:none;user-select:none}.ibiz-inline-ai-textarea-container .ibiz-inline-ai-textarea-container__content{border:1px solid var(--ibiz-inline-ai-textarea-container-color-border);border-radius:var(--ibiz-border-radius-small);box-shadow:0 0 16px var(--ibiz-color-shadow)}.ibiz-inline-ai-textarea-container.is-show-ai{border:1px solid var(--ibiz-inline-ai-textarea-container-color-border);border-radius:var(--ibiz-border-radius-small);box-shadow:0 0 16px var(--ibiz-color-shadow)}.ibiz-inline-ai-textarea-container.is-show-ai .ibiz-inline-ai-textarea-container__content{border:none;border-radius:var(--ibiz-border-radius-small) var(--ibiz-border-radius-small) 0 0;box-shadow:none}.ibiz-inline-ai-textarea-container.is-show-ai .ibiz-inline-ai-textarea-container__footer{border-radius:0 0 var(--ibiz-border-radius-small) var(--ibiz-border-radius-small)}.ibiz-inline-ai-textarea-container__content{position:relative;display:flex;gap:var(--ibiz-spacing-tight);padding:var(--ibiz-spacing-base-tight);background-color:var(--ibiz-inline-ai-textarea-container-color-bg-0)}.ibiz-inline-ai-textarea-container__content--prefix{flex-shrink:0;color:var(--ibiz-inline-ai-textarea-container-color-text-1)}.ibiz-inline-ai-textarea-container__content--textarea{position:relative;display:flex;flex-direction:column;flex-grow:1;overflow-y:auto}.ibiz-inline-ai-textarea-container__content--textarea textarea{flex-shrink:0;padding:0;overflow:hidden;color:var(--ibiz-inline-ai-textarea-container-color-text-0);resize:none;background-color:var(--ibiz-inline-ai-textarea-container-color-bg-0);border:none;outline:0;transition:height .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1)}.ibiz-inline-ai-textarea-container__content--textarea textarea:disabled{background-color:var(--ibiz-inline-ai-textarea-container-color-bg-0)}.ibiz-inline-ai-textarea-container__content--textarea textarea.is-hidden{display:none}.ibiz-inline-ai-textarea-container__content--suffix{display:flex;flex-direction:column-reverse;flex-shrink:0}.ibiz-inline-ai-textarea-container__content--sand-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--ibiz-inline-ai-textarea-container-color-text-2);cursor:pointer;border-radius:var(--ibiz-spacing-extra-tight)}.ibiz-inline-ai-textarea-container__content--sand-icon:hover{background-color:var(--ibiz-inline-ai-textarea-container-color-bg-hover-1)}.ibiz-inline-ai-textarea-container__content--stop-icon{display:flex;gap:var(--ibiz-spacing-extra-tight);align-items:center;font-size:var(--ibiz-font-size-small);color:var(--ibiz-inline-ai-textarea-container-color-text-1);cursor:pointer}.ibiz-inline-ai-textarea-container__content--stop-icon:hover{color:var(--ibiz-inline-ai-textarea-container-color-text-hove-1)}.ibiz-inline-ai-textarea-container__footer{padding:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base);font-size:var(--ibiz-font-size-small);color:var(--ibiz-inline-ai-textarea-container-color-text-1);background-color:var(--ibiz-inline-ai-textarea-container-color-bg-1);border-top:1px solid var(--ibiz-inline-ai-textarea-container-color-border)}.ibiz-inline-ai-textarea-container__actions{position:absolute;width:240px;padding:var(--ibiz-spacing-base-tight) 0;font-size:var(--ibiz-font-size-regular);background-color:var(--ibiz-inline-ai-textarea-container-color-bg-0);border:1px solid var(--ibiz-inline-ai-textarea-container-color-border);border-radius:var(--ibiz-border-radius-small);box-shadow:0 0 16px var(--ibiz-color-shadow)}.ibiz-inline-ai-textarea-container__actions--action{display:flex;gap:var(--ibiz-spacing-tight);align-items:center;padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base-loose);cursor:pointer}.ibiz-inline-ai-textarea-container__actions--action:hover{background-color:var(--ibiz-inline-ai-textarea-container-color-bg-hover-2)}.ibiz-inline-ai-textarea-container__actions--action.is-danger:hover{color:var(--ibiz-color-danger)}.ibiz-inline-ai-textarea-container__actions--divider{margin:var(--ibiz-spacing-extra-tight) var(--ibiz-spacing-base-loose);border-top:1px solid var(--ibiz-inline-ai-textarea-container-color-border)}.ibiz-inline-ai-textarea-container__error{flex-grow:1;color:var(--ibiz-color-danger)}.ibiz-inline-ai-textarea-container__think{flex-shrink:0;margin-bottom:var(--ibiz-spacing-tight)}.ibiz-inline-ai-textarea-container__tool-call{flex-shrink:0;margin-bottom:var(--ibiz-spacing-tight)}.ibiz-inline-ai-textarea-container__loading{position:absolute;top:0;left:0;display:flex;gap:8px;align-items:center;width:100%;height:100%;overflow:hidden}@keyframes bounce{0%,100%,80%{transform:scale(0)}40%{transform:scale(1)}}.ibiz-inline-ai-textarea-container__loading--dot{width:12px;height:12px;background:var(--ibiz-inline-ai-textarea-container-color-loading);border-radius:50%;animation:bounce 1.5s infinite ease-in-out}.ibiz-inline-ai-textarea-container__loading--dot:nth-child(2){animation-delay:.2s}.ibiz-inline-ai-textarea-container__loading--dot:nth-child(3){animation-delay:.4s}
@@ -136,17 +136,40 @@ const useAI = (props, opts) => {
136
136
  const parseContent = (text) => {
137
137
  let think;
138
138
  let content;
139
+ const toolcalls = [];
139
140
  if (!text)
140
- return { think, content };
141
+ return { think, content, toolcalls };
141
142
  const openThinkIndex = text.indexOf("<think>");
142
143
  const closeThinkIndex = text.indexOf("</think>");
143
144
  if (openThinkIndex !== -1) {
144
145
  think = closeThinkIndex === -1 ? text.slice(openThinkIndex + 7) : text.slice(openThinkIndex + 7, closeThinkIndex);
145
146
  content = closeThinkIndex === -1 ? void 0 : text.slice(closeThinkIndex + 8);
146
147
  } else {
147
- content = text;
148
+ const toolCallRegex = new RegExp(
149
+ "<tool_call>\\s*({[\\s\\S]*?})\\s*</tool_call>",
150
+ "g"
151
+ );
152
+ const matches = text.matchAll(toolCallRegex);
153
+ for (const match of matches) {
154
+ try {
155
+ const toolCallData = JSON.parse(match[1]);
156
+ const tempToolCall = {
157
+ name: toolCallData.name,
158
+ parameters: toolCallData.parameters,
159
+ error: toolCallData.error || false
160
+ };
161
+ if (toolCallData.result)
162
+ Object.assign(tempToolCall, {
163
+ result: toolCallData.result
164
+ });
165
+ toolcalls.push(tempToolCall);
166
+ } catch (e) {
167
+ console.error("\u89E3\u6790\u5DE5\u5177\u8C03\u7528\u5931\u8D25:", e);
168
+ }
169
+ }
170
+ content = text.replace(new RegExp("\\<tool_call\\>[^]*?\\<\\/tool_call\\>", "gs"), "").trim();
148
171
  }
149
- return { think, content };
172
+ return { think, content, toolcalls };
150
173
  };
151
174
  const asyncAskAI = (question, callBack, errorBack) => {
152
175
  return new Promise((resolve) => {
@@ -280,6 +303,9 @@ const useBase = (props, element, message) => {
280
303
  textareaRef.value.style.height = "auto";
281
304
  textareaRef.value.style.height = "".concat(textareaRef.value.scrollHeight, "px");
282
305
  });
306
+ },
307
+ {
308
+ immediate: true
283
309
  }
284
310
  );
285
311
  const updatePosition = () => {
@@ -1,8 +1,11 @@
1
1
  import { defineComponent, createVNode, withDirectives, vModelText, ref, computed, onMounted } from 'vue';
2
2
  import { useNamespace } from '@ibiz-template/vue3-util';
3
3
  import { computedInLineAIParams, useBase, useAI, useInLineAIContainerClick } from './inline-ai-textarea.hook.mjs';
4
- import { AIIcon, StopIcon, SendIcon, LoadingIcon, ThinkSuccessIcon, DownIcon, UpIcon } from './icon.mjs';
4
+ import { AIIcon, StopIcon, SendIcon } from './icon.mjs';
5
+ import './common/index.mjs';
5
6
  import './inline-ai-textarea.css';
7
+ import { AIToolCall } from './common/ai-tool-call/ai-tool-call.mjs';
8
+ import { AIThink } from './common/ai-think/ai-think.mjs';
6
9
 
7
10
  "use strict";
8
11
  const InlineAITextArea = /* @__PURE__ */ defineComponent({
@@ -59,6 +62,7 @@ const InlineAITextArea = /* @__PURE__ */ defineComponent({
59
62
  const textareaRef = ref();
60
63
  const message = ref({
61
64
  role: "USER",
65
+ toolcalls: [],
62
66
  error: void 0,
63
67
  think: void 0,
64
68
  content: props.content
@@ -116,14 +120,22 @@ const InlineAITextArea = /* @__PURE__ */ defineComponent({
116
120
  break;
117
121
  case 30:
118
122
  answerContent = answer.content;
119
- Object.assign(message.value, parseContent(answerContent));
123
+ const {
124
+ think,
125
+ content
126
+ } = parseContent(answerContent);
127
+ Object.assign(message.value, {
128
+ think,
129
+ content
130
+ });
120
131
  break;
121
132
  case 40:
122
133
  isCollapse.value = true;
123
134
  Object.assign(message.value, {
124
- error: answer.content,
135
+ toolcalls: [],
125
136
  think: void 0,
126
- content: void 0
137
+ content: void 0,
138
+ error: answer.content
127
139
  });
128
140
  break;
129
141
  default:
@@ -142,6 +154,7 @@ const InlineAITextArea = /* @__PURE__ */ defineComponent({
142
154
  question = content;
143
155
  answerContent = void 0;
144
156
  Object.assign(message.value, {
157
+ toolcalls: [],
145
158
  error: void 0,
146
159
  think: void 0,
147
160
  content: void 0
@@ -168,9 +181,6 @@ const InlineAITextArea = /* @__PURE__ */ defineComponent({
168
181
  sendQuestion(message.value.content);
169
182
  }
170
183
  };
171
- const onCollapseChange = () => {
172
- isCollapse.value = !isCollapse.value;
173
- };
174
184
  const handleAction = (_e, actionName) => {
175
185
  const content = message.value.content;
176
186
  switch (actionName) {
@@ -219,26 +229,11 @@ const InlineAITextArea = /* @__PURE__ */ defineComponent({
219
229
  "class": ns.em("loading", "dot")
220
230
  }, null)]);
221
231
  };
222
- const renderContent = () => {
232
+ const renderError = () => {
223
233
  if (message.value.error)
224
234
  return createVNode("div", {
225
235
  "class": ns.e("error")
226
236
  }, [message.value.error]);
227
- if (message.value.think)
228
- return createVNode("div", {
229
- "class": ns.e("think")
230
- }, [createVNode("div", {
231
- "class": ns.em("think", "header"),
232
- "onClick": onCollapseChange
233
- }, [createVNode("div", {
234
- "class": [ns.em("think", "state-icon"), ns.is("loading", isLoading.value)]
235
- }, [isLoading.value ? LoadingIcon : ThinkSuccessIcon]), createVNode("div", {
236
- "class": ns.em("think", "title")
237
- }, [isLoading.value ? ibiz.i18n.t("util.inlineAiUtil.thinking") : ibiz.i18n.t("util.inlineAiUtil.thinked")]), createVNode("div", {
238
- "class": ns.em("think", "collapse-icon")
239
- }, [isCollapse.value ? DownIcon : UpIcon])]), !isCollapse.value && createVNode("div", {
240
- "class": ns.em("think", "content")
241
- }, [message.value.think])]);
242
237
  };
243
238
  return {
244
239
  ns,
@@ -248,6 +243,7 @@ const InlineAITextArea = /* @__PURE__ */ defineComponent({
248
243
  message,
249
244
  disabled,
250
245
  isLoading,
246
+ isCollapse,
251
247
  actionsRef,
252
248
  textareaRef,
253
249
  actionStyle,
@@ -255,10 +251,10 @@ const InlineAITextArea = /* @__PURE__ */ defineComponent({
255
251
  contentStyle,
256
252
  containerStyle,
257
253
  onKeydown,
254
+ renderError,
258
255
  sendQuestion,
259
256
  handleAction,
260
257
  renderLoading,
261
- renderContent,
262
258
  stopQuestionAndClose
263
259
  };
264
260
  },
@@ -276,7 +272,18 @@ const InlineAITextArea = /* @__PURE__ */ defineComponent({
276
272
  "class": this.ns.em("content", "ai-icon")
277
273
  }, [AIIcon])]), createVNode("div", {
278
274
  "class": this.ns.em("content", "textarea")
279
- }, [this.renderLoading(), this.renderContent(), withDirectives(createVNode("textarea", {
275
+ }, [this.renderLoading(), createVNode(AIToolCall, {
276
+ "class": this.ns.e("tool-call"),
277
+ "toolCalls": this.message.toolcalls
278
+ }, null), createVNode(AIThink, {
279
+ "class": this.ns.e("think"),
280
+ "think": this.message.think,
281
+ "isLoading": this.isLoading,
282
+ "isCollapse": this.isCollapse,
283
+ "onCollapseChange": (val) => {
284
+ this.isCollapse = val;
285
+ }
286
+ }, null), this.renderError(), withDirectives(createVNode("textarea", {
280
287
  "ref": "textareaRef",
281
288
  "disabled": this.disabled,
282
289
  "onKeydown": this.onKeydown,
@@ -0,0 +1 @@
1
+ "use strict";
@@ -27,6 +27,7 @@ const AttachmentColumn = /* @__PURE__ */ vue.defineComponent({
27
27
  const {
28
28
  getDownloadUrl,
29
29
  files,
30
+ enableNoAccess,
30
31
  onDownload,
31
32
  getDownloadTicketParams
32
33
  } = fileUtil.useFilesParse(props, props.controller);
@@ -57,7 +58,7 @@ const AttachmentColumn = /* @__PURE__ */ vue.defineComponent({
57
58
  const handlePDFPreview = async (file) => {
58
59
  const downloadUrl = getDownloadUrl(props.data, file);
59
60
  let url = file.url || downloadUrl.replace("%fileId%", file.id);
60
- if (ibiz.config.common.enableDownloadTicket) {
61
+ if (ibiz.config.common.enableDownloadTicket && !enableNoAccess) {
61
62
  const downloadTicket = await ibiz.util.file.getDownloadTicket(props.controller.context, props.controller.params, props.data, {
62
63
  fileId: file.id
63
64
  }, getDownloadTicketParams());
@@ -22,9 +22,12 @@ const getFileType = (extension) => {
22
22
  }
23
23
  };
24
24
  function useFilesParse(props, c) {
25
+ var _a, _b;
25
26
  const files = vue.ref([]);
26
27
  const uploadUrl = vue.ref("");
27
28
  const svgBlob = /* @__PURE__ */ new Map();
29
+ const enableNoAccess = ((_a = c.model.userParam) == null ? void 0 : _a.enablenoaccess) === "true";
30
+ const osscat = (_b = c.model.userParam) == null ? void 0 : _b.osscat;
28
31
  const getDownloadTicketParams = () => {
29
32
  const downloadTicketParams = {};
30
33
  if (!c.model.userParam) {
@@ -80,7 +83,7 @@ function useFilesParse(props, c) {
80
83
  }
81
84
  };
82
85
  const getDownloadUrl = (data, file) => {
83
- const editorParams = {};
86
+ const editorParams = { osscat, enableNoAccess };
84
87
  if (file && file.folder) {
85
88
  editorParams.osscat = file.folder;
86
89
  }
@@ -95,14 +98,20 @@ function useFilesParse(props, c) {
95
98
  const onDownload = (file) => {
96
99
  const downloadUrl = getDownloadUrl(props.data, file);
97
100
  const url = file.url || downloadUrl.replace("%fileId%", file.id);
98
- ibiz.util.file.fileDownload(url, file.name, {
99
- context: c.context,
100
- params: c.params,
101
- data: props.data,
102
- file: { fileId: file.id, ...file },
103
- extraParams: {},
104
- downloadTicketParams: getDownloadTicketParams()
105
- });
101
+ ibiz.util.file.fileDownload(
102
+ url,
103
+ file.name,
104
+ {
105
+ context: c.context,
106
+ params: c.params,
107
+ data: props.data,
108
+ file: { fileId: file.id, ...file },
109
+ extraParams: { osscat, enableNoAccess },
110
+ downloadTicketParams: getDownloadTicketParams()
111
+ },
112
+ void 0,
113
+ enableNoAccess
114
+ );
106
115
  };
107
116
  vue.watch(
108
117
  () => props.value,
@@ -115,11 +124,12 @@ function useFilesParse(props, c) {
115
124
  () => props.data,
116
125
  (newVal) => {
117
126
  if (newVal) {
127
+ const editorParams = { osscat, enableNoAccess };
118
128
  const urls = ibiz.util.file.calcFileUpDownUrl(
119
129
  c.context,
120
130
  c.params,
121
131
  newVal,
122
- {}
132
+ editorParams
123
133
  );
124
134
  uploadUrl.value = urls.uploadUrl;
125
135
  }
@@ -135,7 +145,7 @@ function useFilesParse(props, c) {
135
145
  Object.assign(file, {
136
146
  url: file.url || downloadUrl.replace("%fileId%", file.id)
137
147
  });
138
- if (ibiz.config.common.enableDownloadTicket) {
148
+ if (ibiz.config.common.enableDownloadTicket && !enableNoAccess) {
139
149
  ibiz.util.file.getDownloadTicket(
140
150
  c.context,
141
151
  c.params,
@@ -166,6 +176,7 @@ function useFilesParse(props, c) {
166
176
  return {
167
177
  files,
168
178
  uploadUrl,
179
+ enableNoAccess,
169
180
  onDownload,
170
181
  getDownloadUrl,
171
182
  getDownloadTicketParams
@@ -10,9 +10,11 @@ const IBizCarousel = /* @__PURE__ */ vue.defineComponent({
10
10
  props: vue3Util.getEditorProps(),
11
11
  emits: vue3Util.getEditorEmits(),
12
12
  setup(props) {
13
+ var _a;
13
14
  const ns = vue3Util.useNamespace("carousel");
14
15
  const c = props.controller;
15
16
  const editorModel = c.model;
17
+ const enableNoAccess = ((_a = c == null ? void 0 : c.editorParams) == null ? void 0 : _a.enablenoaccess) === "true";
16
18
  const carouselData = vue.ref([]);
17
19
  const isAuto = vue.ref(true);
18
20
  const timeSpan = vue.ref(3e3);
@@ -25,7 +27,8 @@ const IBizCarousel = /* @__PURE__ */ vue.defineComponent({
25
27
  });
26
28
  const getDownloadUrl = (data, file) => {
27
29
  const editorParams = {
28
- ...c.editorParams
30
+ ...c.editorParams,
31
+ enableNoAccess
29
32
  };
30
33
  if (editorParams.exportparams) {
31
34
  editorParams.exportParams = JSON.parse(editorParams.exportparams);
@@ -41,7 +44,7 @@ const IBizCarousel = /* @__PURE__ */ vue.defineComponent({
41
44
  newVal.forEach((carousel) => {
42
45
  const downloadUrl = getDownloadUrl(props.data, carousel);
43
46
  carousel.imgUrl = carousel.imgUrl || downloadUrl.replace("%fileId%", carousel.id);
44
- if (ibiz.config.common.enableDownloadTicket) {
47
+ if (ibiz.config.common.enableDownloadTicket && !enableNoAccess) {
45
48
  ibiz.util.file.getDownloadTicket(c.context, c.params, props.data, {
46
49
  fileId: carousel.id
47
50
  }, c.downloadTicketParams).then((downloadTicket) => {
@@ -126,7 +126,9 @@ const IBizCode = /* @__PURE__ */ vue.defineComponent({
126
126
  view: c.view,
127
127
  ctrl: c.ctrl
128
128
  });
129
+ const resourceOptions = await ibiz.aiChatUtil.getAIResourceOptions(c.context, c.params);
129
130
  chatInstance.create({
131
+ resourceOptions,
130
132
  containerOptions: {
131
133
  zIndex: zIndex.increment(),
132
134
  ...containerOptions
@@ -23,6 +23,7 @@ const IBizHtml = /* @__PURE__ */ vue.defineComponent({
23
23
  emit,
24
24
  slots
25
25
  }) {
26
+ var _a;
26
27
  const ns = vue3Util.useNamespace("html");
27
28
  const c = props.controller;
28
29
  const htmlContent = vue.ref();
@@ -42,6 +43,7 @@ const IBizHtml = /* @__PURE__ */ vue.defineComponent({
42
43
  const readonlyState = vue.ref(false);
43
44
  const enableFullScreen = vue.ref(false);
44
45
  const isFullScreen = vue.ref(false);
46
+ let enableNoAccess = false;
45
47
  const editorModel = c.model;
46
48
  if (editorModel.editorParams) {
47
49
  if (editorModel.editorParams.enableEdit) {
@@ -60,6 +62,9 @@ const IBizHtml = /* @__PURE__ */ vue.defineComponent({
60
62
  if (editorModel.editorParams.enablefullscreen) {
61
63
  enableFullScreen.value = c.toBoolean(editorModel.editorParams.enablefullscreen);
62
64
  }
65
+ if (editorModel.editorParams.enablenoaccess) {
66
+ enableNoAccess = ((_a = c == null ? void 0 : c.editorParams) == null ? void 0 : _a.enablenoaccess) === "true";
67
+ }
63
68
  }
64
69
  if (props.readonly) {
65
70
  hasEnableEdit.value = false;
@@ -67,7 +72,8 @@ const IBizHtml = /* @__PURE__ */ vue.defineComponent({
67
72
  }
68
73
  const getDownloadUrl = (data, file) => {
69
74
  const editorParams = {
70
- ...c.editorParams
75
+ ...c.editorParams,
76
+ enableNoAccess
71
77
  };
72
78
  if (editorParams.exportparams) {
73
79
  editorParams.exportParams = JSON.parse(editorParams.exportparams);
@@ -81,7 +87,8 @@ const IBizHtml = /* @__PURE__ */ vue.defineComponent({
81
87
  vue.watch(() => props.data, (newVal) => {
82
88
  if (newVal) {
83
89
  const editorParams = {
84
- ...c.editorParams
90
+ ...c.editorParams,
91
+ enableNoAccess
85
92
  };
86
93
  if (editorParams.uploadparams) {
87
94
  editorParams.uploadParams = JSON.parse(editorParams.uploadparams);
@@ -140,7 +147,7 @@ const IBizHtml = /* @__PURE__ */ vue.defineComponent({
140
147
  },
141
148
  // 单个文件上传成功之后
142
149
  onSuccess(file, res) {
143
- if (ibiz.config.common.enableDownloadTicket && res.ticket) {
150
+ if (ibiz.config.common.enableDownloadTicket && !enableNoAccess && res.ticket) {
144
151
  ibiz.util.file.setDownloadTicket(res.id, res.ticket);
145
152
  }
146
153
  console.log("".concat(file.name, " \u4E0A\u4F20\u6210\u529F"), res);
@@ -158,7 +165,7 @@ const IBizHtml = /* @__PURE__ */ vue.defineComponent({
158
165
  const downloadUrl = getDownloadUrl(props.data, res);
159
166
  let url = downloadUrl.replace("%fileId%", res.id);
160
167
  const alt = res.filename;
161
- if (ibiz.config.common.enableDownloadTicket) {
168
+ if (ibiz.config.common.enableDownloadTicket && !enableNoAccess) {
162
169
  const downloadTicket = await ibiz.util.file.getDownloadTicket(c.context, c.params, props.data, {
163
170
  fileId: res.id
164
171
  }, c.downloadTicketParams);
@@ -212,7 +219,9 @@ const IBizHtml = /* @__PURE__ */ vue.defineComponent({
212
219
  view: c.view,
213
220
  ctrl: c.ctrl
214
221
  });
222
+ const resourceOptions = await ibiz.aiChatUtil.getAIResourceOptions(c.context, c.params);
215
223
  chatInstance.create({
224
+ resourceOptions,
216
225
  containerOptions: {
217
226
  zIndex: containerZIndex,
218
227
  ...containerOptions
@@ -379,11 +388,11 @@ const IBizHtml = /* @__PURE__ */ vue.defineComponent({
379
388
  });
380
389
  };
381
390
  const moveToLastStr = () => {
382
- var _a, _b;
391
+ var _a2, _b;
383
392
  if (props.value) {
384
393
  const index = props.value.indexOf("</p>");
385
394
  if (index >= 0) {
386
- const offset = (_a = editorRef.value.selection.anchor) == null ? void 0 : _a.offset;
395
+ const offset = (_a2 = editorRef.value.selection.anchor) == null ? void 0 : _a2.offset;
387
396
  const path = (_b = editorRef.value.selection.anchor) == null ? void 0 : _b.path;
388
397
  if (offset === 0 && path.length > 0 && path[0] === 0) {
389
398
  editorRef.value.move(index - 3);
@@ -70,7 +70,12 @@ function initCustomMenu(c, opts) {
70
70
  c.deACMode,
71
71
  { chatInstance, view: c.view, ctrl: c.ctrl }
72
72
  );
73
+ const resourceOptions = await ibiz.aiChatUtil.getAIResourceOptions(
74
+ c.context,
75
+ c.params
76
+ );
73
77
  chatInstance.create({
78
+ resourceOptions,
74
79
  containerOptions: {
75
80
  zIndex: containerZIndex,
76
81
  ...containerOptions
@@ -19,7 +19,7 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
19
19
  emit,
20
20
  slots
21
21
  }) {
22
- var _a, _b, _c;
22
+ var _a, _b, _c, _d, _e;
23
23
  const ns = vue3Util.useNamespace("markdown");
24
24
  const c = props.controller;
25
25
  const currentVal = vue.ref("");
@@ -35,13 +35,14 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
35
35
  });
36
36
  const uploadUrl = vue.ref("");
37
37
  const customTheme = ((_a = c == null ? void 0 : c.editorParams) == null ? void 0 : _a.customTheme) || ((_b = c == null ? void 0 : c.editorParams) == null ? void 0 : _b.customtheme);
38
+ const enableNoAccess = ((_c = c == null ? void 0 : c.editorParams) == null ? void 0 : _c.enablenoaccess) === "true";
38
39
  const {
39
40
  UIStore
40
41
  } = vue3Util.useUIStore();
41
42
  const theme = vue.ref(customTheme || UIStore.theme);
42
43
  const isEditing = vue.ref(false);
43
44
  let showmode = "default";
44
- if (c && ((_c = c.editorParams) == null ? void 0 : _c.showmode)) {
45
+ if (c && ((_d = c.editorParams) == null ? void 0 : _d.showmode)) {
45
46
  showmode = c.editorParams.showmode;
46
47
  }
47
48
  const isFullScreen = vue.ref(false);
@@ -54,6 +55,10 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
54
55
  const lastDirectoryState = vue.ref("pure");
55
56
  let isIgnoreChange = false;
56
57
  let chatInstance;
58
+ let tocPos = "absolute";
59
+ if ((_e = c == null ? void 0 : c.editorParams) == null ? void 0 : _e.tocpos) {
60
+ tocPos = c.editorParams.tocpos === "fixed" ? "fixed" : "absolute";
61
+ }
57
62
  const [AIMenu, AIChart] = customMenu.initCustomMenu(c, {
58
63
  props,
59
64
  chatInstance,
@@ -64,7 +69,8 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
64
69
  vue.watch(() => props.data, (newVal) => {
65
70
  if (newVal && c) {
66
71
  const editorParams = {
67
- ...c.editorParams
72
+ ...c.editorParams,
73
+ enableNoAccess
68
74
  };
69
75
  if (editorParams.uploadparams) {
70
76
  editorParams.uploadParams = JSON.parse(editorParams.uploadparams);
@@ -82,7 +88,8 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
82
88
  return "";
83
89
  }
84
90
  const editorParams = {
85
- ...c.editorParams
91
+ ...c.editorParams,
92
+ enableNoAccess
86
93
  };
87
94
  if (editorParams.exportparams) {
88
95
  editorParams.exportParams = JSON.parse(editorParams.exportparams);
@@ -97,7 +104,7 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
97
104
  const data = await ibiz.util.file.fileUpload(uploadUrl.value, file, headers.value);
98
105
  const downloadUrl = getDownloadUrl(props.data || {}, data.fileid);
99
106
  let url = downloadUrl.replace("%fileId%", data.fileid);
100
- if (ibiz.config.common.enableDownloadTicket && c) {
107
+ if (ibiz.config.common.enableDownloadTicket && c && c.editorParams && !enableNoAccess) {
101
108
  const downloadTicket = await ibiz.util.file.getDownloadTicket(c.context, c.params, props.data || {}, {
102
109
  fileId: data.fileid
103
110
  }, c.downloadTicketParams);
@@ -138,7 +145,7 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
138
145
  setCherryContent(newVal);
139
146
  }
140
147
  });
141
- const afterChange = (_e) => {
148
+ const afterChange = (_e2) => {
142
149
  if (showmode === "manual") {
143
150
  return;
144
151
  }
@@ -231,10 +238,10 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
231
238
  }
232
239
  }
233
240
  };
234
- const handleKeyDown = (_e) => {
235
- _e.stopPropagation();
236
- if (_e.key === "Escape") {
237
- _e.preventDefault();
241
+ const handleKeyDown = (_e2) => {
242
+ _e2.stopPropagation();
243
+ if (_e2.key === "Escape") {
244
+ _e2.preventDefault();
238
245
  if (isFullscreen()) {
239
246
  closeFullscreen();
240
247
  editor.toggleToc(lastDirectoryState.value);
@@ -332,7 +339,7 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
332
339
  // pure: 精简模式/缩略模式,只有一排小点; full: 完整模式,会展示所有标题
333
340
  showAutoNumber: true,
334
341
  // 是否显示自增序号
335
- position: "absolute",
342
+ position: tocPos,
336
343
  // 悬浮目录的悬浮方式。当滚动条在cherry内部时,用absolute;当滚动条在cherry外部时,用fixed
337
344
  cssText: ""
338
345
  // 自定义样式
@@ -356,6 +363,9 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
356
363
  }
357
364
  });
358
365
  editor.toggleToc("pure");
366
+ const html = editor.engine.makeHtml(currentVal.value);
367
+ editor.previewer.update(html);
368
+ editor.toc.updateTocList();
359
369
  editor.setTheme(theme.value);
360
370
  if (customTheme) {
361
371
  editor.setTheme(customTheme);
@@ -518,6 +528,7 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
518
528
  markDownBox,
519
529
  headers,
520
530
  theme,
531
+ UIStore,
521
532
  defaultModel,
522
533
  cssVars,
523
534
  isEditing,
@@ -540,7 +551,7 @@ const IBizMarkDown = /* @__PURE__ */ vue.defineComponent({
540
551
  "tabindex": "-1",
541
552
  "id": this.id,
542
553
  "style": this.cssVars,
543
- "class": [this.ns.b("cherry"), this.ns.m(this.theme === "dark" ? "dark" : "light")]
554
+ "class": [this.ns.b("cherry"), this.ns.m(this.UIStore.theme === "dark" ? "dark" : "light")]
544
555
  }, null)]);
545
556
  }
546
557
  });
@@ -1 +1 @@
1
- .ibiz-markdown{--ibiz-markdown-width:100%;--ibiz-markdown-color-manual-toolbar-bg-save:var(--ibiz-color-primary);--ibiz-markdown-color-manual-toolbar-text-save:var(--ibiz-color-primary-active-text);--ibiz-markdown-color-manual-toolbar-text-cancel:var(--ibiz-color-text-1);--ibiz-markdown-color-manual-toolbar-text-cancel-hover:var(--ibiz-color-primary);--ibiz-markdown-color-dark-scrollbar-thumb-dark:rgb(var(--ibiz-grey-4));--ibiz-markdown-color-light-scrollbar-thumb-dark:rgb(var(--ibiz-grey-4));--ibiz-markdown-color-scrollbar-thumb-dark-hover:rgba(var(--ibiz-grey-4), 0.5);--ibiz-markdown-color-dark-toc-text:var(--ibiz-color-fill-0);--ibiz-markdown-color-toc-header-text:var(--ibiz-color-text-0);--ibiz-markdown-color-dark-mardown-border:rgb(var(--ibiz-grey-2));--ibiz-markdown-spacing-manual-toolbar-height:32px;--ibiz-markdown-spacing-manual-toolbar-gap:var(--ibiz-spacing-base);--ibiz-markdown-spacing-manual-toolbar-item-padding:0 var(--ibiz-spacing-base);--ibiz-markdown-spacing-manual-toolbar-margin:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-tight) 0 0;--ibiz-markdown-spacing-manual-toolbar-fullscreen-height:var(--ibiz-height-control-default);--ibiz-markdown-spacing-manual-toolbar-fullscreen-padding:0 var(--ibiz-spacing-extra-loose);--ibiz-markdown-spacing-manual-toolbar-fullscreen-height-header:var(--ibiz-spacing-super-loose);--ibiz-markdown-height-manual-toolbar-height:var(--ibiz-height-control-default);--ibiz-markdown-border-radius-manual-toolbar-item:var(--ibiz-border-radius-small);--ibiz-markdown-border-manual-toolbar-fullscreen-footer:1px solid var(--ibiz-color-border);--ibiz-markdown-img-preview-top:-32px;--ibiz-markdown-img-preview-right:-36px;--ibiz-markdown-img-preview-width:32px;--ibiz-markdown-img-preview-height:32px}.ibiz-markdown__header{display:flex;flex-shrink:0;gap:var(--ibiz-markdown-spacing-manual-toolbar-gap);align-items:center;justify-content:end;height:var(--ibiz-markdown-spacing-manual-toolbar-height)}.ibiz-markdown__header--edit{cursor:pointer}.ibiz-markdown__header--full{cursor:pointer}.ibiz-markdown__header.is-fullscreen{position:fixed;top:0;right:0;left:0;z-index:999;width:100%;height:calc(var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-height-header));padding:var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-padding);margin-top:0;background-color:var(--ibiz-view-bg-color)}.ibiz-markdown__header.is-fullscreen+.ibiz-markdown-cherry .cherry.fullscreen{top:calc(var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-height-header));height:calc(100% - var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-height-header))}.ibiz-markdown__footer{display:flex;gap:var(--ibiz-markdown-spacing-manual-toolbar-gap);align-items:center;justify-content:end;height:var(--ibiz-markdown-spacing-manual-toolbar-height);margin:var(--ibiz-markdown-spacing-manual-toolbar-margin)}.ibiz-markdown__footer--save{height:var(--ibiz-markdown-height-manual-toolbar-height);padding:var(--ibiz-markdown-spacing-manual-toolbar-item-padding);line-height:var(--ibiz-markdown-height-manual-toolbar-height);color:var(--ibiz-markdown-color-manual-toolbar-text-save);text-align:center;cursor:pointer;background-color:var(--ibiz-markdown-color-manual-toolbar-bg-save);border-radius:var(--ibiz-markdown-border-radius-manual-toolbar-item)}.ibiz-markdown__footer--cancel{color:var(--ibiz-markdown-color-manual-toolbar-text-cancel);cursor:pointer}.ibiz-markdown__footer--cancel:hover{color:var(--ibiz-markdown-color-manual-toolbar-text-cancel-hover)}.ibiz-markdown__footer.is-fullscreen{position:fixed;right:0;bottom:0;left:0;z-index:999;width:100%;height:calc(var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-height) * 2);padding:var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-padding);margin-top:0;background-color:var(--ibiz-view-bg-color);border-top:var(--ibiz-markdown-border-manual-toolbar-fullscreen-footer)}.ibiz-markdown__footer.is-fullscreen+.ibiz-markdown-cherry .cherry.fullscreen{height:calc(100% - var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-height) * 2)}.ibiz-markdown__img-preview.el-image{position:absolute;height:0}.ibiz-markdown__img-preview .el-image-viewer__wrapper{width:90%;height:90%;margin:auto}.ibiz-markdown__img-preview .el-image-viewer__mask{position:fixed;width:100vw;height:100vh;cursor:zoom-out;opacity:.7}.ibiz-markdown__img-preview .el-image-viewer__close{top:var(--ibiz-markdown-img-preview-top);right:var(--ibiz-markdown-img-preview-right);width:var(--ibiz-markdown-img-preview-width);height:var(--ibiz-markdown-img-preview-height)}.ibiz-markdown .ibiz-markdown-cherry{width:var(--ibiz-markdown-width);outline:0}.ibiz-markdown .ibiz-markdown-cherry .cherry{width:100%;border:1px solid var(--ibiz-color-border);box-shadow:none}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-toolbar{box-shadow:none}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-editor{border-top:1px solid var(--ibiz-color-border)}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-previewer{border-top:1px solid var(--ibiz-color-border)}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-previewer img{cursor:zoom-in}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-sidebar{top:49px;border-left:1px solid var(--ibiz-color-border);box-shadow:none}.ibiz-markdown.is-disabled .cherry{min-height:auto}.ibiz-markdown.is-disabled .ibiz-markdown__fullscreen{position:absolute;top:8px;right:12px;z-index:98;font-size:var(--ibiz-font-size-regular);line-height:2.8}.ibiz-markdown.is-disabled .theme__dark .ibiz-markdown__fullscreen{color:var(--ibiz-color-text-0)}.ibiz-markdown.is-disabled .theme__dark .ibiz-markdown__fullscreen:hover{background-color:var(--ibiz-color-bg-3)}.ibiz-markdown.is-manual{display:flex;flex-direction:column}.ibiz-markdown.is-manual .ibiz-markdown-cherry{flex-grow:1;height:calc(100% - var(--ibiz-markdown-spacing-manual-toolbar-height))!important}.ibiz-markdown.is-manual.is-editing{flex-direction:column-reverse}.ibiz-markdown.is-manual .ibiz-markdown-menu{display:none}.ibiz-markdown.is-manual.is-editing .ibiz-markdown-menu{display:block}.ibiz-markdown.is-show-editor-switch-menu .ibiz-composite-form-item-ex-menu{--ibiz-composite-form-item-ex-menu-height:47px;--ibiz-composite-form-item-ex-menu-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base-tight) 0;max-height:100%}.ibiz-markdown.is-show-editor-switch-menu .cherry-toolbar{padding-right:calc(var(--ibiz-composite-form-item-ex-menu-width) + var(--ibiz-spacing-extra-tight))}.ibiz-markdown.is-show-editor-switch-menu .ibiz-markdown-menu{position:absolute;top:1px;right:1px;z-index:var(--ibiz-composite-form-item-ex-menu-z-index);display:flex;align-items:center;height:calc(var(--ibiz-markdown-toolbar-height) - 1px);background:var(--ibiz-composite-form-item-ex-menu-bg-color);border-right:1px solid var(--ibiz-color-border);border-left:1px solid var(--ibiz-color-border)}.ibiz-markdown.is-show-editor-switch-menu .ibiz-markdown-menu.is-fullscreen{position:fixed;z-index:1000}.ibiz-markdown.is-show-editor-switch-menu .ibiz-markdown-menu .ibiz-composite-form-item-ex-menu{position:relative}.ibiz-markdown .cherry-preview--full{border-left:none}.ibiz-markdown .theme__dark,.ibiz-markdown .theme__light{color:var(--ibiz-form-item-text-color)}.ibiz-markdown .cherry-markdown h1 a::before,.ibiz-markdown .cherry-markdown h2 a::before,.ibiz-markdown .cherry-markdown h3 a::before,.ibiz-markdown .cherry-markdown h4 a::before,.ibiz-markdown .cherry-markdown h5 a::before,.ibiz-markdown .cherry-markdown h6 a::before{display:none}.ibiz-markdown .cherry.fullscreen{z-index:999}.ibiz-markdown--light .theme__green .cherry-toolbar,.ibiz-markdown--light .theme__light .cherry-toolbar,.ibiz-markdown--light .theme__violet .cherry-toolbar{background-color:var(--ibiz-color-bg-0)}.ibiz-markdown--light .theme__dark.cherry .cherry-flex-toc{color:var(--ibiz-markdown-color-toc-header-text)}.ibiz-markdown--light .theme__dark.cherry ::-webkit-scrollbar-thumb{background:var(--ibiz-markdown-color-light-scrollbar-thumb-dark)}.ibiz-markdown--light .theme__dark.cherry ::-webkit-scrollbar-thumb:hover{background:var(--ibiz-markdown-color-scrollbar-thumb-dark-hover)}.ibiz-markdown--dark.ibiz-markdown-cherry .cherry{border:1px solid var(--ibiz-markdown-color-dark-mardown-border)}.ibiz-markdown--dark .theme__green .cherry-toolbar,.ibiz-markdown--dark .theme__light .cherry-toolbar,.ibiz-markdown--dark .theme__violet .cherry-toolbar{background-color:var(--ibiz-color-shadow)}.ibiz-markdown--dark .theme__dark.cherry .cherry-toc-head{color:var(--ibiz-markdown-color-dark-toc-text)}.ibiz-markdown--dark .theme__dark.cherry ::-webkit-scrollbar-thumb{background:var(--ibiz-markdown-color-dark-scrollbar-thumb-dark)}.ibiz-markdown--dark .theme__dark.cherry ::-webkit-scrollbar-thumb:hover{background:var(--ibiz-markdown-color-scrollbar-thumb-dark-hover)}
1
+ .ibiz-markdown{--ibiz-markdown-width:100%;--ibiz-markdown-color-manual-toolbar-bg-save:var(--ibiz-color-primary);--ibiz-markdown-color-manual-toolbar-text-save:var(--ibiz-color-primary-active-text);--ibiz-markdown-color-manual-toolbar-text-cancel:var(--ibiz-color-text-1);--ibiz-markdown-color-manual-toolbar-text-cancel-hover:var(--ibiz-color-primary);--ibiz-markdown-color-dark-scrollbar-thumb-dark:rgb(var(--ibiz-grey-4));--ibiz-markdown-color-light-scrollbar-thumb-dark:rgb(var(--ibiz-grey-4));--ibiz-markdown-color-scrollbar-thumb-dark-hover:rgba(var(--ibiz-grey-4), 0.5);--ibiz-markdown-color-dark-toc-text:var(--ibiz-color-fill-0);--ibiz-markdown-color-toc-header-text:var(--ibiz-color-text-0);--ibiz-markdown-color-dark-mardown-border:rgb(var(--ibiz-grey-2));--ibiz-markdown-color-fixed-toc-text:var(--ibiz-color-black);--ibiz-markdown-color-fixed-toc-arrow-text:var(--ibiz-color-primary);--ibiz-markdown-spacing-manual-toolbar-height:32px;--ibiz-markdown-spacing-manual-toolbar-gap:var(--ibiz-spacing-base);--ibiz-markdown-spacing-manual-toolbar-item-padding:0 var(--ibiz-spacing-base);--ibiz-markdown-spacing-manual-toolbar-margin:var(--ibiz-spacing-base-tight) var(--ibiz-spacing-tight) 0 0;--ibiz-markdown-spacing-manual-toolbar-fullscreen-height:var(--ibiz-height-control-default);--ibiz-markdown-spacing-manual-toolbar-fullscreen-padding:0 var(--ibiz-spacing-extra-loose);--ibiz-markdown-spacing-manual-toolbar-fullscreen-height-header:var(--ibiz-spacing-super-loose);--ibiz-markdown-height-manual-toolbar-height:var(--ibiz-height-control-default);--ibiz-markdown-border-radius-manual-toolbar-item:var(--ibiz-border-radius-small);--ibiz-markdown-border-manual-toolbar-fullscreen-footer:1px solid var(--ibiz-color-border);--ibiz-markdown-img-preview-top:-32px;--ibiz-markdown-img-preview-right:-36px;--ibiz-markdown-img-preview-width:32px;--ibiz-markdown-img-preview-height:32px}.ibiz-markdown__header{display:flex;flex-shrink:0;gap:var(--ibiz-markdown-spacing-manual-toolbar-gap);align-items:center;justify-content:end;height:var(--ibiz-markdown-spacing-manual-toolbar-height)}.ibiz-markdown__header--edit{cursor:pointer}.ibiz-markdown__header--full{cursor:pointer}.ibiz-markdown__header.is-fullscreen{position:fixed;top:0;right:0;left:0;z-index:999;width:100%;height:calc(var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-height-header));padding:var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-padding);margin-top:0;background-color:var(--ibiz-view-bg-color)}.ibiz-markdown__header.is-fullscreen+.ibiz-markdown-cherry .cherry.fullscreen{top:calc(var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-height-header));height:calc(100% - var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-height-header))}.ibiz-markdown__footer{display:flex;gap:var(--ibiz-markdown-spacing-manual-toolbar-gap);align-items:center;justify-content:end;height:var(--ibiz-markdown-spacing-manual-toolbar-height);margin:var(--ibiz-markdown-spacing-manual-toolbar-margin)}.ibiz-markdown__footer--save{height:var(--ibiz-markdown-height-manual-toolbar-height);padding:var(--ibiz-markdown-spacing-manual-toolbar-item-padding);line-height:var(--ibiz-markdown-height-manual-toolbar-height);color:var(--ibiz-markdown-color-manual-toolbar-text-save);text-align:center;cursor:pointer;background-color:var(--ibiz-markdown-color-manual-toolbar-bg-save);border-radius:var(--ibiz-markdown-border-radius-manual-toolbar-item)}.ibiz-markdown__footer--cancel{color:var(--ibiz-markdown-color-manual-toolbar-text-cancel);cursor:pointer}.ibiz-markdown__footer--cancel:hover{color:var(--ibiz-markdown-color-manual-toolbar-text-cancel-hover)}.ibiz-markdown__footer.is-fullscreen{position:fixed;right:0;bottom:0;left:0;z-index:999;width:100%;height:calc(var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-height) * 2);padding:var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-padding);margin-top:0;background-color:var(--ibiz-view-bg-color);border-top:var(--ibiz-markdown-border-manual-toolbar-fullscreen-footer)}.ibiz-markdown__footer.is-fullscreen+.ibiz-markdown-cherry .cherry.fullscreen{height:calc(100% - var(--ibiz-markdown-spacing-manual-toolbar-fullscreen-height) * 2)}.ibiz-markdown__img-preview.el-image{position:absolute;height:0}.ibiz-markdown__img-preview .el-image-viewer__wrapper{width:90%;height:90%;margin:auto}.ibiz-markdown__img-preview .el-image-viewer__mask{position:fixed;width:100vw;height:100vh;cursor:zoom-out;opacity:.7}.ibiz-markdown__img-preview .el-image-viewer__close{top:var(--ibiz-markdown-img-preview-top);right:var(--ibiz-markdown-img-preview-right);width:var(--ibiz-markdown-img-preview-width);height:var(--ibiz-markdown-img-preview-height)}.ibiz-markdown .ibiz-markdown-cherry{width:var(--ibiz-markdown-width);outline:0}.ibiz-markdown .ibiz-markdown-cherry .cherry{width:100%;border:1px solid var(--ibiz-color-border);box-shadow:none}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-toolbar{box-shadow:none}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-editor{border-top:1px solid var(--ibiz-color-border)}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-previewer{border-top:1px solid var(--ibiz-color-border)}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-previewer img{cursor:zoom-in}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-sidebar{top:49px;border-left:1px solid var(--ibiz-color-border);box-shadow:none}.ibiz-markdown.is-disabled .cherry{min-height:auto}.ibiz-markdown.is-disabled .ibiz-markdown__fullscreen{position:absolute;top:8px;right:12px;z-index:98;font-size:var(--ibiz-font-size-regular);line-height:2.8}.ibiz-markdown.is-disabled .theme__dark .ibiz-markdown__fullscreen{color:var(--ibiz-color-text-0)}.ibiz-markdown.is-disabled .theme__dark .ibiz-markdown__fullscreen:hover{background-color:var(--ibiz-color-bg-3)}.ibiz-markdown.is-manual{display:flex;flex-direction:column}.ibiz-markdown.is-manual .ibiz-markdown-cherry{flex-grow:1;height:calc(100% - var(--ibiz-markdown-spacing-manual-toolbar-height))!important}.ibiz-markdown.is-manual.is-editing{flex-direction:column-reverse}.ibiz-markdown.is-manual .ibiz-markdown-menu{display:none}.ibiz-markdown.is-manual.is-editing .ibiz-markdown-menu{display:block}.ibiz-markdown.is-show-editor-switch-menu .ibiz-composite-form-item-ex-menu{--ibiz-composite-form-item-ex-menu-height:47px;--ibiz-composite-form-item-ex-menu-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base-tight) 0;max-height:100%}.ibiz-markdown.is-show-editor-switch-menu .cherry-toolbar{padding-right:calc(var(--ibiz-composite-form-item-ex-menu-width) + var(--ibiz-spacing-extra-tight))}.ibiz-markdown.is-show-editor-switch-menu .ibiz-markdown-menu{position:absolute;top:1px;right:1px;z-index:var(--ibiz-composite-form-item-ex-menu-z-index);display:flex;align-items:center;height:calc(var(--ibiz-markdown-toolbar-height) - 1px);background:var(--ibiz-composite-form-item-ex-menu-bg-color);border-right:1px solid var(--ibiz-color-border);border-left:1px solid var(--ibiz-color-border)}.ibiz-markdown.is-show-editor-switch-menu .ibiz-markdown-menu.is-fullscreen{position:fixed;z-index:1000}.ibiz-markdown.is-show-editor-switch-menu .ibiz-markdown-menu .ibiz-composite-form-item-ex-menu{position:relative}.ibiz-markdown .cherry-preview--full{border-left:none}.ibiz-markdown .cherry-flex-toc__fixed{color:var(--ibiz-markdown-color-fixed-toc-text)}.ibiz-markdown .cherry-flex-toc__fixed.cherry-flex-toc__pure .cherry-toc-head{color:var(--ibiz-markdown-color-fixed-toc-arrow-text)}.ibiz-markdown .cherry-flex-toc__fixed:hover{z-index:100}.ibiz-markdown .theme__dark,.ibiz-markdown .theme__light{color:var(--ibiz-form-item-text-color)}.ibiz-markdown .cherry-markdown h1 a::before,.ibiz-markdown .cherry-markdown h2 a::before,.ibiz-markdown .cherry-markdown h3 a::before,.ibiz-markdown .cherry-markdown h4 a::before,.ibiz-markdown .cherry-markdown h5 a::before,.ibiz-markdown .cherry-markdown h6 a::before{display:none}.ibiz-markdown .cherry.fullscreen{z-index:999}.ibiz-markdown--light .theme__green .cherry-toolbar,.ibiz-markdown--light .theme__light .cherry-toolbar,.ibiz-markdown--light .theme__violet .cherry-toolbar{background-color:var(--ibiz-color-bg-0)}.ibiz-markdown--light .theme__dark.cherry .cherry-flex-toc{color:var(--ibiz-markdown-color-toc-header-text)}.ibiz-markdown--light .theme__dark.cherry ::-webkit-scrollbar-thumb{background:var(--ibiz-markdown-color-light-scrollbar-thumb-dark)}.ibiz-markdown--light .theme__dark.cherry ::-webkit-scrollbar-thumb:hover{background:var(--ibiz-markdown-color-scrollbar-thumb-dark-hover)}.ibiz-markdown--dark.ibiz-markdown-cherry .cherry{border:1px solid var(--ibiz-markdown-color-dark-mardown-border)}.ibiz-markdown--dark .theme__green .cherry-toolbar,.ibiz-markdown--dark .theme__light .cherry-toolbar,.ibiz-markdown--dark .theme__violet .cherry-toolbar{background-color:var(--ibiz-color-shadow)}.ibiz-markdown--dark .theme__dark.cherry .cherry-toc-head{color:var(--ibiz-markdown-color-dark-toc-text)}.ibiz-markdown--dark .theme__dark.cherry ::-webkit-scrollbar-thumb{background:var(--ibiz-markdown-color-dark-scrollbar-thumb-dark)}.ibiz-markdown--dark .theme__dark.cherry ::-webkit-scrollbar-thumb:hover{background:var(--ibiz-markdown-color-scrollbar-thumb-dark-hover)}
@@ -177,7 +177,9 @@ const IBizInput = /* @__PURE__ */ vue.defineComponent({
177
177
  view: c.view,
178
178
  ctrl: c.ctrl
179
179
  });
180
+ const resourceOptions = await ibiz.aiChatUtil.getAIResourceOptions(c.context, c.params);
180
181
  chatInstance.create({
182
+ resourceOptions,
181
183
  containerOptions: {
182
184
  zIndex: containerZIndex,
183
185
  ...containerOptions