@next-bricks/ai-portal 0.41.2 → 0.42.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 (74) hide show
  1. package/dist/bricks.json +45 -44
  2. package/dist/chunks/{453.e0c39d75.js → 453.e2767a6d.js} +2 -2
  3. package/dist/chunks/453.e2767a6d.js.map +1 -0
  4. package/dist/chunks/6754.9dfa5269.js +2 -0
  5. package/dist/chunks/6754.9dfa5269.js.map +1 -0
  6. package/dist/chunks/7493.6f9d9ca0.js +2 -0
  7. package/dist/chunks/7493.6f9d9ca0.js.map +1 -0
  8. package/dist/chunks/7570.ae14a465.js +2 -0
  9. package/dist/chunks/7570.ae14a465.js.map +1 -0
  10. package/dist/chunks/9474.eb2019f3.js +2 -0
  11. package/dist/chunks/9474.eb2019f3.js.map +1 -0
  12. package/dist/chunks/9749.cfb84a2f.js +2 -0
  13. package/dist/chunks/9749.cfb84a2f.js.map +1 -0
  14. package/dist/chunks/activity-timeline.5ea5526f.js +2 -0
  15. package/dist/chunks/activity-timeline.5ea5526f.js.map +1 -0
  16. package/dist/chunks/chat-box.4f6d3704.js +2 -0
  17. package/dist/chunks/chat-box.4f6d3704.js.map +1 -0
  18. package/dist/chunks/chat-input.679aec70.js +3 -0
  19. package/dist/chunks/chat-input.679aec70.js.map +1 -0
  20. package/dist/chunks/chat-stream.a2e40a99.js +2 -0
  21. package/dist/chunks/chat-stream.a2e40a99.js.map +1 -0
  22. package/dist/chunks/cruise-canvas.77318b42.js +2 -0
  23. package/dist/chunks/cruise-canvas.77318b42.js.map +1 -0
  24. package/dist/chunks/{goal-card-list.5f61cd91.js → goal-card-list.fcce68bd.js} +3 -3
  25. package/dist/chunks/{goal-card-list.5f61cd91.js.map → goal-card-list.fcce68bd.js.map} +1 -1
  26. package/dist/chunks/main.40e44ee2.js +2 -0
  27. package/dist/chunks/{main.24028689.js.map → main.40e44ee2.js.map} +1 -1
  28. package/dist/chunks/{preview-container.fa54ae91.js → preview-container.bbde74aa.js} +2 -2
  29. package/dist/chunks/preview-container.bbde74aa.js.map +1 -0
  30. package/dist/chunks/{project-conversations.d4771579.js → project-conversations.e525349e.js} +3 -3
  31. package/dist/chunks/project-conversations.e525349e.js.map +1 -0
  32. package/dist/examples.json +19 -19
  33. package/dist/index.ad4c133a.js +2 -0
  34. package/dist/{index.6143251e.js.map → index.ad4c133a.js.map} +1 -1
  35. package/dist/manifest.json +335 -312
  36. package/dist/types.json +215 -87
  37. package/dist-types/activity-timeline/i18n.d.ts +2 -2
  38. package/dist-types/chat-box/index.d.ts +9 -2
  39. package/dist-types/chat-stream/ChatStream.d.ts +3 -2
  40. package/dist-types/chat-stream/LegacyChatStream.d.ts +2 -1
  41. package/dist-types/chat-stream/index.d.ts +3 -0
  42. package/dist-types/cruise-canvas/CruiseCanvas.d.ts +3 -2
  43. package/dist-types/cruise-canvas/LegacyCruiseCanvas.d.ts +2 -1
  44. package/dist-types/cruise-canvas/index.d.ts +3 -0
  45. package/dist-types/shared/interfaces.d.ts +1 -0
  46. package/package.json +2 -2
  47. package/dist/chunks/2608.ecdc3896.js +0 -2
  48. package/dist/chunks/2608.ecdc3896.js.map +0 -1
  49. package/dist/chunks/382.d2e3f46f.js +0 -2
  50. package/dist/chunks/382.d2e3f46f.js.map +0 -1
  51. package/dist/chunks/453.e0c39d75.js.map +0 -1
  52. package/dist/chunks/6754.758fa3ae.js +0 -2
  53. package/dist/chunks/6754.758fa3ae.js.map +0 -1
  54. package/dist/chunks/7493.b181babb.js +0 -2
  55. package/dist/chunks/7493.b181babb.js.map +0 -1
  56. package/dist/chunks/7774.505f9191.js +0 -2
  57. package/dist/chunks/7774.505f9191.js.map +0 -1
  58. package/dist/chunks/activity-timeline.85a243bc.js +0 -2
  59. package/dist/chunks/activity-timeline.85a243bc.js.map +0 -1
  60. package/dist/chunks/chat-box.15e40b8e.js +0 -2
  61. package/dist/chunks/chat-box.15e40b8e.js.map +0 -1
  62. package/dist/chunks/chat-input.3e67d2d4.js +0 -3
  63. package/dist/chunks/chat-input.3e67d2d4.js.map +0 -1
  64. package/dist/chunks/chat-stream.88ec601e.js +0 -2
  65. package/dist/chunks/chat-stream.88ec601e.js.map +0 -1
  66. package/dist/chunks/cruise-canvas.f715731a.js +0 -2
  67. package/dist/chunks/cruise-canvas.f715731a.js.map +0 -1
  68. package/dist/chunks/main.24028689.js +0 -2
  69. package/dist/chunks/preview-container.fa54ae91.js.map +0 -1
  70. package/dist/chunks/project-conversations.d4771579.js.map +0 -1
  71. package/dist/index.6143251e.js +0 -2
  72. /package/dist/chunks/{chat-input.3e67d2d4.js.LICENSE.txt → chat-input.679aec70.js.LICENSE.txt} +0 -0
  73. /package/dist/chunks/{goal-card-list.5f61cd91.js.LICENSE.txt → goal-card-list.fcce68bd.js.LICENSE.txt} +0 -0
  74. /package/dist/chunks/{project-conversations.d4771579.js.LICENSE.txt → project-conversations.e525349e.js.LICENSE.txt} +0 -0
@@ -0,0 +1,2 @@
1
+ "use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[2052,9576],{465:(t,e,a)=>{a.d(e,{c:()=>s,P:()=>T});var n=a(21302),r=a(87117);const i="libs-datetime";let o=function(t){return t.TODAY="TODAY",t.YESTERDAY="YESTERDAY",t.FUTURE_AFTER="FUTURE_AFTER",t.FORMAT_MEDIUM_DATETIME="FORMAT_MEDIUM_DATETIME",t.FORMAT_MEDIUM_DATE="FORMAT_MEDIUM_DATE",t.FORMAT_SHORT_DATETIME="FORMAT_SHORT_DATETIME",t.FORMAT_SHORT_DATE="FORMAT_SHORT_DATE",t.FORMAT_SHORT_DAY_DATETIME="FORMAT_SHORT_DAY_DATETIME",t.FORMAT_SHORT_DAY_DATE="FORMAT_SHORT_DAY_DATE",t.SECONDS="SECONDS",t.MILL_SECONDS="MILL_SECONDS",t.MINUTES="MINUTES",t.HOURS="HOURS",t.DAYS="DARS",t.MONTHS="MONTHS",t}({});const c={[o.YESTERDAY]:"Yesterday",[o.TODAY]:"Today",[o.FUTURE_AFTER]:"After {{time}}",[o.FORMAT_MEDIUM_DATETIME]:"LLL",[o.FORMAT_MEDIUM_DATE]:"LL",[o.FORMAT_SHORT_DATETIME]:"MMM D ah:mm",[o.FORMAT_SHORT_DATE]:"MMM D",[o.FORMAT_SHORT_DAY_DATETIME]:"MMM D HH:mm",[o.FORMAT_SHORT_DAY_DATE]:"MMM D",[o.MONTHS]:"months",[o.HOURS]:"hours",[o.SECONDS]:"seconds",[o.MILL_SECONDS]:"millseconds",[o.DAYS]:"days",[o.MINUTES]:"minutes"},l={[o.YESTERDAY]:"昨天",[o.TODAY]:"今天",[o.FUTURE_AFTER]:"{{time}}后",[o.FORMAT_MEDIUM_DATETIME]:"LL ah:mm",[o.FORMAT_MEDIUM_DATE]:"LL",[o.FORMAT_SHORT_DATETIME]:"MMMD日 ah:mm",[o.FORMAT_SHORT_DATE]:"MMMD日",[o.FORMAT_SHORT_DAY_DATETIME]:"MMMD日 HH:mm",[o.FORMAT_SHORT_DAY_DATE]:"MMMD日",[o.MONTHS]:"个月",[o.HOURS]:"小时",[o.SECONDS]:"秒",[o.MILL_SECONDS]:"毫秒",[o.DAYS]:"天",[o.MINUTES]:"分钟"};(0,r.initializeI18n)(i,{en:c,zh:l});let s=function(t){return t.full="full",t.default="default",t.relative="relative",t.past="past",t.future="future",t.accurate="accurate",t.auto="auto",t}({});const T=function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.auto,a=arguments.length>2?arguments[2]:void 0;if(null==t||t===-1/0||t===1/0)return null;const c=n(t),l=n().add(0),T="date"===a?"LL":"LL HH:mm",E=r.i18n.t(`${i}:${"date"===a?o.FORMAT_MEDIUM_DATE:o.FORMAT_MEDIUM_DATETIME}`),u=r.i18n.t(`${i}:${"date"===a?o.FORMAT_SHORT_DATE:o.FORMAT_SHORT_DATETIME}`),A=r.i18n.t(`${i}:${"date"===a?o.FORMAT_SHORT_DAY_DATE:o.FORMAT_SHORT_DAY_DATETIME}`),_="date"===a?"LL":"LL HH:mm:ss";let d;switch(e){case s.full:d=c.format(T);break;case s.default:d=c.format(_);break;case s.relative:{const t=+c-+l;d=t<=0?n.duration(t).humanize(!0):r.i18n.t(`${i}:${o.FUTURE_AFTER}`,{time:n.duration(t).humanize()});break}case s.past:d=n.duration(Math.min(+c-+l,0)).humanize(!0);break;case s.future:d=r.i18n.t(`${i}:${o.FUTURE_AFTER}`,{time:n.duration(Math.max(+c-+l,0)).humanize()});break;case s.accurate:d=(()=>{const t=+c.diff(l,"days",!0).toFixed(1);let e="";const n=c.year()<l.year()?"lastYear":t<-2||c.isBefore(l.clone().add(-1,"day"),"day")?"twoDaysBefore":c.isSame(l.clone().add(-1,"day"),"day")?"yesterday":c.isSame(l,"day")?"sameDay":t<2&&c.isSame(l.clone().add(1,"day"),"day")?"nextDay":t<7?"nextWeek":"default";switch(n){case"sameDay":case"yesterday":e=`${r.i18n.t(`${i}:${"yesterday"===n?o.YESTERDAY:o.TODAY}`)}${"date"===a?"":` ${c.format("HH:mm")}`}`;break;case"lastYear":default:e=c.format(T);break;case"twoDaysBefore":e=c.format(A)}return e})();break;default:d=c.format(c.year()===l.year()?u:E)}return d}},8020:(t,e,a)=>{a.d(e,{I:()=>o,K:()=>r,NS:()=>i,t:()=>c});var n=a(87117);let r=function(t){return t.STARTED_A_CHAT="STARTED_A_CHAT",t.CREATED_THIS_GOAL="CREATED_THIS_GOAL",t.CHANGED_THE_GOAL_TITLE="CHANGED_THE_GOAL_TITLE",t.CHANGED_THE_GOAL_DESCRIPTION="CHANGED_THE_GOAL_DESCRIPTION",t.CHANGED_THE_GOAL="CHANGED_THE_GOAL",t.DELETED_THIS_GOAL="DELETED_THIS_GOAL",t.DECOMPOSED_THIS_GOAL="DECOMPOSED_THIS_GOAL",t.SET_OWNER="SET_OWNER",t.REMOVED_GOAL_PARTICIPANTS="REMOVED_GOAL_PARTICIPANTS",t.ADDED_GOAL_PARTICIPANTS="ADDED_GOAL_PARTICIPANTS",t.COMMENTED="COMMENTED",t.COMMA="COMMA",t.SEMICOLON="SEMICOLON",t}({});const i="bricks/ai-portal/activity-timeline",o={en:{STARTED_A_CHAT:"started a chat",CREATED_THIS_GOAL:"created this goal",CHANGED_THE_GOAL_TITLE:'changed the goal title to "{{ title }}"',CHANGED_THE_GOAL_DESCRIPTION:'changed the goal description to "{{ description }}"',CHANGED_THE_GOAL:"changed the goal",DELETED_THIS_GOAL:"deleted this goal",DECOMPOSED_THIS_GOAL:"decomposed this goal to {{ count }} sub-goal: ",DECOMPOSED_THIS_GOAL_plural:"decomposed this goal to {{ count }} sub-goals: ",SET_OWNER:"set {{ user }} as the owner",REMOVED_GOAL_PARTICIPANTS:"removed a goal participant: ",REMOVED_GOAL_PARTICIPANTS_plural:"removed {{ count }} goal participants: ",ADDED_GOAL_PARTICIPANTS:"added a goal participant: ",ADDED_GOAL_PARTICIPANTS_plural:"added {{ count }} goal participants: ",COMMENTED:"commented",COMMA:", ",SEMICOLON:"; "},zh:{STARTED_A_CHAT:"发起了对话",CREATED_THIS_GOAL:"创建了此目标",CHANGED_THE_GOAL_TITLE:"修改目标标题为 “{{ title }}”",CHANGED_THE_GOAL_DESCRIPTION:"修改目标描述为 “{{ description }}”",CHANGED_THE_GOAL:"修改了此目标",DELETED_THIS_GOAL:"删除了此目标",DECOMPOSED_THIS_GOAL:"将此目标分解为 {{ count }} 个子目标:",DECOMPOSED_THIS_GOAL_plural:"将此目标分解为 {{ count }} 个子目标:",SET_OWNER:"设定负责人为 {{ user }}",REMOVED_GOAL_PARTICIPANTS:"移除了目标参与成员:",ADDED_GOAL_PARTICIPANTS:"添加了目标参与成员:",COMMENTED:"评论",COMMA:",",SEMICOLON:";"}},c=n.i18n.getFixedT(null,i)},11369:(t,e,a)=>{a.d(e,{A:()=>r});var n=a(17545);function r(t){var e=function(t){if("object"!=(0,n.A)(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var a=e.call(t,"string");if("object"!=(0,n.A)(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==(0,n.A)(e)?e:e+""}},12559:(t,e,a)=>{function n(t,e,a){if("function"==typeof t?t===e:t.has(e))return arguments.length<3?e:a;throw new TypeError("Private element is not present on this object")}a.d(e,{A:()=>n})},14763:(t,e,a)=>{a.d(e,{A:()=>c});var n=a(36758),r=a.n(n),i=a(40935),o=a.n(i)()(r());o.push([t.id,':host{display:block;color:#262626}:host([hidden]){display:none}*{box-sizing:border-box}ul{list-style:none;margin:0;padding:0}.activity{position:relative;padding-left:27px}.activity + .activity{margin-top:20px}.main{display:flex;align-items:flex-start}.action{flex:1;min-width:0;display:flex;align-items:center;margin-left:6px;word-break:break-word}.time{color:#8c8c8c;margin-left:12px}.action,\n.time{padding:1px 0}.guide-line{position:absolute;left:8px;top:0;bottom:-20px;width:0;background-color:#d8d8d8}.guide-line::before{content:"";position:absolute;top:0;bottom:0;left:3.5px;width:1px;background-color:#d8d8d8}.guide-line::after{content:"";position:absolute;top:8px;left:0;width:8px;height:8px;border-radius:8px;background-color:#d8d8d8}.activity:first-child .guide-line::before{top:12px}.activity:last-child .guide-line::before{height:12px;bottom:auto}.comment{position:relative;font-size:13px;color:#595959;background-color:#f3f3f3;border-radius:8px;padding:8px 12px;margin-top:10px}.comment::before{content:"";position:absolute;top:-6px;left:36px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #f3f3f3}.conversation{margin:0 7px 0 10px}.conversation::part(link){background:#f9f0ff;border-radius:3px;font-weight:500;font-size:12px;color:#aa64f5;display:flex;align-items:center;height:24px;padding:0 8px}.external-link-icon{color:#8c8c8c}.loading{display:flex;align-items:center;justify-content:center;padding:24px;font-size:20px;color:#595959}',""]);const c=o.toString()},17545:(t,e,a)=>{function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}a.d(e,{A:()=>n})},26902:(t,e,a)=>{a.d(e,{A:()=>r});var n=a(17545);function r(t){if(Object(t)!==t)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==t?(0,n.A)(t):"null"));return t}},36758:t=>{t.exports=function(t){return t[1]}},40935:t=>{t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var a="",n=void 0!==e[5];return e[4]&&(a+="@supports (".concat(e[4],") {")),e[2]&&(a+="@media ".concat(e[2]," {")),n&&(a+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),a+=t(e),n&&(a+="}"),e[2]&&(a+="}"),e[4]&&(a+="}"),a})).join("")},e.i=function(t,a,n,r,i){"string"==typeof t&&(t=[[null,t,void 0]]);var o={};if(n)for(var c=0;c<this.length;c++){var l=this[c][0];null!=l&&(o[l]=!0)}for(var s=0;s<t.length;s++){var T=[].concat(t[s]);n&&o[T[0]]||(void 0!==i&&(void 0===T[5]||(T[1]="@layer".concat(T[5].length>0?" ".concat(T[5]):""," {").concat(T[1],"}")),T[5]=i),a&&(T[2]?(T[1]="@media ".concat(T[2]," {").concat(T[1],"}"),T[2]=a):T[2]=a),r&&(T[4]?(T[1]="@supports (".concat(T[4],") {").concat(T[1],"}"),T[4]=r):T[4]="".concat(r)),e.push(T))}},e}},62740:(t,e,a)=>{a.d(e,{A:()=>c});var n=a(17545),r=a(26902);function i(t,e,a){"symbol"==(0,n.A)(e)&&(e=(e=e.description)?"["+e+"]":"");try{Object.defineProperty(t,"name",{configurable:!0,value:a?a+" "+e:e})}catch(t){}return t}var o=a(11369);function c(t,e,a,c,l,s){var T,E,u,A,_,d,m,p=Symbol.metadata||Symbol.for("Symbol.metadata"),O=Object.defineProperty,D=Object.create,f=[D(null),D(null)],M=e.length;function S(e,a,n){return function(r,i){a&&(i=r,r=t);for(var o=0;o<e.length;o++)i=e[o].apply(r,n?[i]:[]);return n?i:r}}function h(t,e,a,n){if("function"!=typeof t&&(n||void 0!==t))throw new TypeError(e+" must "+(a||"be")+" a function"+(n?"":" or undefined"));return t}function R(t,e,a,r,o,c,l,s,u,A,_){function d(t){if(!_(t))throw new TypeError("Attempted to access private element on non-instance")}var m=[].concat(e[0]),p=e[3],D=!l,M=1===o,R=3===o,g=4===o,I=2===o;function y(e,a,n){return function(r,i){return a&&(i=r,r=t),n&&n(r),v[e].call(r,i)}}if(!D){var v={},b=[],H=R?"get":g||M?"set":"value";if(u?(A||M?v={get:i((function(){return p(this)}),r,"get"),set:function(t){e[4](this,t)}}:v[H]=p,A||i(v[H],r,I?"":H)):A||(v=Object.getOwnPropertyDescriptor(t,r)),!A&&!u){if((E=f[+s][r])&&7!=(E^o))throw Error("Decorating two elements with the same name ("+v[H].name+") is not supported yet");f[+s][r]=o<3?1:o}}for(var L=t,C=m.length-1;C>=0;C-=a?2:1){var N=h(m[C],"A decorator","be",!0),G=a?m[C-1]:void 0,x={},w={kind:["field","accessor","method","getter","setter","class"][o],name:r,metadata:T,addInitializer:function(t,e){if(t.v)throw Error("attempted to call addInitializer after decoration was finished");h(e,"An initializer","be",!0),c.push(e)}.bind(null,x)};if(D)E=N.call(G,L,w),x.v=1,h(E,"class decorators","return")&&(L=E);else if(w.static=s,w.private=u,E=w.access={has:u?_.bind():function(t){return r in t}},g||(E.get=u?I?function(t){return d(t),v.value}:y("get",0,d):function(t){return t[r]}),I||R||(E.set=u?y("set",0,d):function(t,e){t[r]=e}),L=N.call(G,M?{get:v.get,set:v.set}:v[H],w),x.v=1,M){if("object"==(0,n.A)(L)&&L)(E=h(L.get,"accessor.get"))&&(v.get=E),(E=h(L.set,"accessor.set"))&&(v.set=E),(E=h(L.init,"accessor.init"))&&b.unshift(E);else if(void 0!==L)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else h(L,(A?"field":"method")+" decorators","return")&&(A?b.unshift(L):v[H]=L)}return o<2&&l.push(S(b,s,1),S(c,s,0)),A||D||(u?M?l.splice(-1,0,y("get",s),y("set",s)):l.push(I?v[H]:h.call.bind(v[H])):O(t,r,v)),L}function g(t){return O(t,p,{configurable:!0,enumerable:!0,value:T})}return void 0!==s&&(T=s[p]),T=D(null==T?null:T),_=[],d=function(t){t&&_.push(S(t))},m=function(e,n){for(var i=0;i<a.length;i++){var c=a[i],s=c[1],T=7&s;if((8&s)==e&&!T==n){var E=c[2],d=!!c[3],m=16&s;R(e?t:t.prototype,c,m,d?"#"+E:(0,o.A)(E),T,T<2?[]:e?A=A||[]:u=u||[],_,!!e,d,n,e&&d?function(e){return(0,r.A)(e)===t}:l)}}},m(8,0),m(0,0),m(8,1),m(0,1),d(u),d(A),E=_,M||g(t),{e:E,get c(){var a=[];return M&&[g(t=R(t,[e],c,t.name,5,a)),S(a,1)]}}}},70829:(t,e,a)=>{a.d(e,{A:()=>r});var n=a(12559);function r(t,e){return t.get((0,n.A)(t,e))}},70918:(t,e,a)=>{a.d(e,{A:()=>r});var n=a(72016);function r(t,e,a){(0,n.A)(t,e),e.set(t,a)}},72016:(t,e,a)=>{function n(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}a.d(e,{A:()=>n})},86121:(t,e,a)=>{a.d(e,{A:()=>r});var n=a(12559);function r(t,e,a){return t.set((0,n.A)(t,e),a),a}},88954:(t,e,a)=>{a.r(e),a.d(e,{ActivityTimeline:()=>y});var n,r=a(70918),i=a(86121),o=a(70829),c=a(62740),l=a(18769),s=a.n(l),T=a(7921),E=a(11280),u=(a(65168),a(87117)),A=a(465),_=a(8020),d=a(14763),m=a(98343);let p,O,D,f,M;(0,u.initializeI18n)(_.NS,_.I);const S=(0,E.wrapBrick)("eo-link"),h=(0,E.wrapBrick)("eo-icon"),R=(0,E.wrapBrick)("eo-easyops-avatar"),{defineElement:g,property:I}=(0,T.createDecorators)();let y;var v=new WeakMap,b=new WeakMap;class H extends E.ReactNextElement{constructor(){super(...arguments),(0,r.A)(this,v,O(this)),(0,r.A)(this,b,(D(this),f(this))),M(this)}get list(){return(0,o.A)(v,this)}set list(t){(0,i.A)(v,this,t)}get chatUrlTemplate(){return(0,o.A)(b,this)}set chatUrlTemplate(t){(0,i.A)(b,this,t)}render(){return s().createElement(L,{list:this.list,chatUrlTemplate:this.chatUrlTemplate})}}function L(t){let{list:e,chatUrlTemplate:a}=t;return e?s().createElement("ul",null,e.map(((t,e)=>{var n,r;return s().createElement("li",{className:"activity",key:e},s().createElement("div",{className:"guide-line"}),s().createElement("div",{className:"main"},s().createElement(R,{className:"avatar",nameOrInstanceId:t.user_id,size:"xs"}),s().createElement("span",{className:"action"},t.user_name," ","start_conversation"===t.action_type?s().createElement(s().Fragment,null,s().createElement("span",null,(0,_.t)(_.K.STARTED_A_CHAT)),s().createElement(S,{className:"conversation",url:(0,m.Q)(a,t),target:"_blank"},null===(n=t.metadata)||void 0===n?void 0:n.conversation_title),s().createElement(h,{className:"external-link-icon",lib:"lucide",icon:"external-link"})):"create_goal"===t.action_type?(0,_.t)(_.K.CREATED_THIS_GOAL):"edit_goal"===t.action_type?t.metadata.after.title?(0,_.t)(_.K.CHANGED_THE_GOAL_TITLE,t.metadata.after):t.metadata.after.description?(0,_.t)(_.K.CHANGED_THE_GOAL_DESCRIPTION,t.metadata.after):(0,_.t)(_.K.CHANGED_THE_GOAL):"delete_goal"===t.action_type?(0,_.t)(_.K.DELETED_THIS_GOAL):"decompose_goals"===t.action_type?`${(0,_.t)(_.K.DECOMPOSED_THIS_GOAL,{count:t.metadata.sub_goals_count})}${t.metadata.sub_goals.map((t=>t.title)).join((0,_.t)(_.K.COMMA))}`:"alter_owner"===t.action_type?(0,_.t)(_.K.SET_OWNER,{user:t.metadata.after.owner.user_name}):"alter_user"===t.action_type?function(t){const e=[],a=[],n=new Set(t.metadata.before.users.map((t=>t.user_name)));for(const e of t.metadata.after.users)n.has(e.user_name)||a.push(e.user_name);const r=new Set(t.metadata.after.users.map((t=>t.user_name)));for(const a of t.metadata.before.users)r.has(a.user_name)||e.push(a.user_name);const i=[];return e.length>0&&i.push((0,_.t)(_.K.REMOVED_GOAL_PARTICIPANTS,{count:e.length})+e.join((0,_.t)(_.K.COMMA))),a.length>0&&i.push((0,_.t)(_.K.ADDED_GOAL_PARTICIPANTS,{count:a.length})+a.join((0,_.t)(_.K.COMMA))),i.join((0,_.t)(_.K.SEMICOLON))}(t):"add_comment"===t.action_type?(0,_.t)(_.K.COMMENTED):t.action_type),s().createElement("span",{className:"time",title:(0,A.P)(t.time,A.c.full)},(0,A.P)(t.time,A.c.relative))),"add_comment"===t.action_type&&s().createElement("div",{className:"comment"},null===(r=t.metadata)||void 0===r?void 0:r.comment_content))}))):s().createElement("div",{className:"loading"},s().createElement(h,{lib:"antd",icon:"loading-3-quarters",spinning:!0}))}n=H,({e:[O,D,f,M],c:[y,p]}=(0,c.A)(n,[g("ai-portal.activity-timeline",{styleTexts:[d.A]})],[[I({attribute:!1}),1,"list"],[I(),1,"chatUrlTemplate"]],0,void 0,E.ReactNextElement)),p()},98343:(t,e,a)=>{a.d(e,{Q:()=>r});var n=a(41030);function r(t,e){return null==t?void 0:t.replace(/{{(.*?)}}/g,((t,a)=>(0,n.get)(e,a.trim())))}}}]);
2
+ //# sourceMappingURL=activity-timeline.5ea5526f.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/activity-timeline.5ea5526f.js","mappings":"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","sources":["webpack:///../../../src/i18n/constants.ts","webpack:///../../../../src/i18n/locales/en.ts","webpack:///../../../../src/i18n/locales/zh.ts","webpack:///../../../src/i18n/index.ts","webpack:///../../src/humanizeTime.ts","webpack:///./src/activity-timeline/i18n.ts","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.js","webpack:///./src/activity-timeline/styles.shadow.css","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/setFunctionName.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/applyDecs2311.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js","webpack:///./src/activity-timeline/index.tsx","webpack:///./src/shared/parseTemplate.ts"],"sourcesContent":["export const NS_LIBS_DATETIME = \"libs-datetime\";\n\nexport enum K {\n TODAY = \"TODAY\",\n YESTERDAY = \"YESTERDAY\",\n FUTURE_AFTER = \"FUTURE_AFTER\",\n FORMAT_MEDIUM_DATETIME = \"FORMAT_MEDIUM_DATETIME\",\n FORMAT_MEDIUM_DATE = \"FORMAT_MEDIUM_DATE\",\n FORMAT_SHORT_DATETIME = \"FORMAT_SHORT_DATETIME\",\n FORMAT_SHORT_DATE = \"FORMAT_SHORT_DATE\",\n FORMAT_SHORT_DAY_DATETIME = \"FORMAT_SHORT_DAY_DATETIME\",\n FORMAT_SHORT_DAY_DATE = \"FORMAT_SHORT_DAY_DATE\",\n SECONDS = \"SECONDS\",\n MILL_SECONDS = \"MILL_SECONDS\",\n MINUTES = \"MINUTES\",\n HOURS = \"HOURS\",\n DAYS = \"DARS\",\n MONTHS = \"MONTHS\",\n}\n\nexport type Locale = { [key in K]: string };\n","import { Locale, K } from \"../constants.js\";\n\nconst locale: Locale = {\n [K.YESTERDAY]: \"Yesterday\",\n [K.TODAY]: \"Today\",\n [K.FUTURE_AFTER]: \"After {{time}}\",\n [K.FORMAT_MEDIUM_DATETIME]: \"LLL\",\n [K.FORMAT_MEDIUM_DATE]: \"LL\",\n [K.FORMAT_SHORT_DATETIME]: \"MMM D ah:mm\",\n [K.FORMAT_SHORT_DATE]: \"MMM D\",\n [K.FORMAT_SHORT_DAY_DATETIME]: \"MMM D HH:mm\",\n [K.FORMAT_SHORT_DAY_DATE]: \"MMM D\",\n [K.MONTHS]: \"months\",\n [K.HOURS]: \"hours\",\n [K.SECONDS]: \"seconds\",\n [K.MILL_SECONDS]: \"millseconds\",\n [K.DAYS]: \"days\",\n [K.MINUTES]: \"minutes\",\n};\n\nexport default locale;\n","import { Locale, K } from \"../constants.js\";\n\nconst locale: Locale = {\n [K.YESTERDAY]: \"昨天\",\n [K.TODAY]: \"今天\",\n [K.FUTURE_AFTER]: \"{{time}}后\",\n [K.FORMAT_MEDIUM_DATETIME]: \"LL ah:mm\",\n [K.FORMAT_MEDIUM_DATE]: \"LL\",\n [K.FORMAT_SHORT_DATETIME]: \"MMMD日 ah:mm\",\n [K.FORMAT_SHORT_DATE]: \"MMMD日\",\n [K.FORMAT_SHORT_DAY_DATETIME]: \"MMMD日 HH:mm\",\n [K.FORMAT_SHORT_DAY_DATE]: \"MMMD日\",\n [K.MONTHS]: \"个月\",\n [K.HOURS]: \"小时\",\n [K.SECONDS]: \"秒\",\n [K.MILL_SECONDS]: \"毫秒\",\n [K.DAYS]: \"天\",\n [K.MINUTES]: \"分钟\",\n};\n\nexport default locale;\n","import { initializeI18n } from \"@next-core/i18n\";\nimport { NS_LIBS_DATETIME } from \"./constants.js\";\nimport en from \"./locales/en.js\";\nimport zh from \"./locales/zh.js\";\n\nexport function addResourceBundle(): void {\n initializeI18n(NS_LIBS_DATETIME, { en, zh });\n}\n","import moment from \"moment\";\nimport { i18n } from \"@next-core/i18n\";\nimport { NS_LIBS_DATETIME, K } from \"./i18n/constants.js\";\nimport { addResourceBundle } from \"./i18n/index.js\";\n\naddResourceBundle();\n\nconst TIME_OFFSET = 0;\n\nexport enum HumanizeTimeFormat {\n full = \"full\",\n default = \"default\",\n relative = \"relative\",\n past = \"past\",\n future = \"future\",\n accurate = \"accurate\",\n auto = \"auto\",\n}\n\nexport const humanizeTime = (\n time: moment.MomentInput,\n format: HumanizeTimeFormat = HumanizeTimeFormat.auto,\n /** 默认为 \"datetime\" */\n type?: \"datetime\" | \"date\"\n): string | null => {\n if (\n time === undefined ||\n time === null ||\n time === -Infinity ||\n time === Infinity\n ) {\n return null;\n }\n const m = moment(time);\n const now = moment().add(TIME_OFFSET);\n const fFull = type === \"date\" ? \"LL\" : \"LL HH:mm\";\n const fMedium = i18n.t(\n `${NS_LIBS_DATETIME}:${type === \"date\" ? K.FORMAT_MEDIUM_DATE : K.FORMAT_MEDIUM_DATETIME}`\n );\n const fShort = i18n.t(\n `${NS_LIBS_DATETIME}:${type === \"date\" ? K.FORMAT_SHORT_DATE : K.FORMAT_SHORT_DATETIME}`\n );\n const fShort24 = i18n.t(\n `${NS_LIBS_DATETIME}:${type === \"date\" ? K.FORMAT_SHORT_DAY_DATE : K.FORMAT_SHORT_DAY_DATETIME}`\n );\n const fDefault = type === \"date\" ? \"LL\" : \"LL HH:mm:ss\";\n const fHourMinute = \"HH:mm\";\n let text;\n\n /* 用于精确显示时间的参数\n * 今天与昨天,显示:今天(昨天)x:x的格式,如:今天12:21、昨天16:33\n * 昨天以前的时间,显示:x月x日x时:x分,如:11月23日11:22\n * 今年以前的时间,显示:x年x月x日x时:x分,如:2016年11月11日11:11\n */\n const getAccurateTime = () => {\n const diff = +m.diff(now, \"days\", true).toFixed(1);\n let _text = \"\";\n const retVal =\n m.year() < now.year()\n ? \"lastYear\"\n : diff < -2 || m.isBefore(now.clone().add(-1, \"day\"), \"day\")\n ? \"twoDaysBefore\"\n : m.isSame(now.clone().add(-1, \"day\"), \"day\")\n ? \"yesterday\"\n : m.isSame(now, \"day\")\n ? \"sameDay\"\n : diff < 2 && m.isSame(now.clone().add(1, \"day\"), \"day\")\n ? \"nextDay\"\n : diff < 7\n ? \"nextWeek\"\n : \"default\";\n switch (retVal) {\n case \"sameDay\":\n case \"yesterday\":\n _text = `${i18n.t(`${NS_LIBS_DATETIME}:${retVal === \"yesterday\" ? K.YESTERDAY : K.TODAY}`)}${\n type === \"date\" ? \"\" : ` ${m.format(fHourMinute)}`\n }`;\n break;\n case \"lastYear\":\n _text = m.format(fFull);\n break;\n case \"twoDaysBefore\":\n _text = m.format(fShort24);\n break;\n default:\n _text = m.format(fFull);\n }\n\n return _text;\n };\n\n switch (format) {\n case HumanizeTimeFormat.full:\n text = m.format(fFull);\n break;\n case HumanizeTimeFormat.default:\n text = m.format(fDefault);\n break;\n case HumanizeTimeFormat.relative: {\n const diff = +m - +now;\n text =\n diff <= 0\n ? moment.duration(diff).humanize(true)\n : i18n.t(`${NS_LIBS_DATETIME}:${K.FUTURE_AFTER}`, {\n time: moment.duration(diff).humanize(),\n });\n break;\n }\n case HumanizeTimeFormat.past:\n text = moment.duration(Math.min(+m - +now, 0)).humanize(true);\n break;\n case HumanizeTimeFormat.future:\n text = i18n.t(`${NS_LIBS_DATETIME}:${K.FUTURE_AFTER}`, {\n time: moment.duration(Math.max(+m - +now, 0)).humanize(),\n });\n break;\n case HumanizeTimeFormat.accurate:\n text = getAccurateTime();\n break;\n default:\n text = m.format(m.year() === now.year() ? fShort : fMedium);\n }\n return text;\n};\n","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n STARTED_A_CHAT = \"STARTED_A_CHAT\",\n CREATED_THIS_GOAL = \"CREATED_THIS_GOAL\",\n CHANGED_THE_GOAL_TITLE = \"CHANGED_THE_GOAL_TITLE\",\n CHANGED_THE_GOAL_DESCRIPTION = \"CHANGED_THE_GOAL_DESCRIPTION\",\n CHANGED_THE_GOAL = \"CHANGED_THE_GOAL\",\n DELETED_THIS_GOAL = \"DELETED_THIS_GOAL\",\n DECOMPOSED_THIS_GOAL = \"DECOMPOSED_THIS_GOAL\",\n SET_OWNER = \"SET_OWNER\",\n REMOVED_GOAL_PARTICIPANTS = \"REMOVED_GOAL_PARTICIPANTS\",\n ADDED_GOAL_PARTICIPANTS = \"ADDED_GOAL_PARTICIPANTS\",\n COMMENTED = \"COMMENTED\",\n COMMA = \"COMMA\",\n SEMICOLON = \"SEMICOLON\",\n}\n\nconst en: Locale = {\n STARTED_A_CHAT: \"started a chat\",\n CREATED_THIS_GOAL: \"created this goal\",\n CHANGED_THE_GOAL_TITLE: 'changed the goal title to \"{{ title }}\"',\n CHANGED_THE_GOAL_DESCRIPTION:\n 'changed the goal description to \"{{ description }}\"',\n CHANGED_THE_GOAL: \"changed the goal\",\n DELETED_THIS_GOAL: \"deleted this goal\",\n DECOMPOSED_THIS_GOAL: \"decomposed this goal to {{ count }} sub-goal: \",\n DECOMPOSED_THIS_GOAL_plural:\n \"decomposed this goal to {{ count }} sub-goals: \",\n SET_OWNER: \"set {{ user }} as the owner\",\n REMOVED_GOAL_PARTICIPANTS: \"removed a goal participant: \",\n REMOVED_GOAL_PARTICIPANTS_plural: \"removed {{ count }} goal participants: \",\n ADDED_GOAL_PARTICIPANTS: \"added a goal participant: \",\n ADDED_GOAL_PARTICIPANTS_plural: \"added {{ count }} goal participants: \",\n COMMENTED: \"commented\",\n COMMA: \", \",\n SEMICOLON: \"; \",\n};\n\nconst zh: Locale = {\n STARTED_A_CHAT: \"发起了对话\",\n CREATED_THIS_GOAL: \"创建了此目标\",\n CHANGED_THE_GOAL_TITLE: \"修改目标标题为 “{{ title }}”\",\n CHANGED_THE_GOAL_DESCRIPTION: \"修改目标描述为 “{{ description }}”\",\n CHANGED_THE_GOAL: \"修改了此目标\",\n DELETED_THIS_GOAL: \"删除了此目标\",\n DECOMPOSED_THIS_GOAL: \"将此目标分解为 {{ count }} 个子目标:\",\n DECOMPOSED_THIS_GOAL_plural: \"将此目标分解为 {{ count }} 个子目标:\",\n SET_OWNER: \"设定负责人为 {{ user }}\",\n REMOVED_GOAL_PARTICIPANTS: \"移除了目标参与成员:\",\n ADDED_GOAL_PARTICIPANTS: \"添加了目标参与成员:\",\n COMMENTED: \"评论\",\n COMMA: \",\",\n SEMICOLON: \";\",\n};\n\nexport const NS = \"bricks/ai-portal/activity-timeline\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _assertClassBrand(e, t, n) {\n if (\"function\" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;\n throw new TypeError(\"Private element is not present on this object\");\n}","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block;color:#262626}:host([hidden]){display:none}*{box-sizing:border-box}ul{list-style:none;margin:0;padding:0}.activity{position:relative;padding-left:27px}.activity + .activity{margin-top:20px}.main{display:flex;align-items:flex-start}.action{flex:1;min-width:0;display:flex;align-items:center;margin-left:6px;word-break:break-word}.time{color:#8c8c8c;margin-left:12px}.action,\n.time{padding:1px 0}.guide-line{position:absolute;left:8px;top:0;bottom:-20px;width:0;background-color:#d8d8d8}.guide-line::before{content:\"\";position:absolute;top:0;bottom:0;left:3.5px;width:1px;background-color:#d8d8d8}.guide-line::after{content:\"\";position:absolute;top:8px;left:0;width:8px;height:8px;border-radius:8px;background-color:#d8d8d8}.activity:first-child .guide-line::before{top:12px}.activity:last-child .guide-line::before{height:12px;bottom:auto}.comment{position:relative;font-size:13px;color:#595959;background-color:#f3f3f3;border-radius:8px;padding:8px 12px;margin-top:10px}.comment::before{content:\"\";position:absolute;top:-6px;left:36px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #f3f3f3}.conversation{margin:0 7px 0 10px}.conversation::part(link){background:#f9f0ff;border-radius:3px;font-weight:500;font-size:12px;color:#aa64f5;display:flex;align-items:center;height:24px;padding:0 8px}.external-link-icon{color:#8c8c8c}.loading{display:flex;align-items:center;justify-content:center;padding:24px;font-size:20px;color:#595959}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","import _typeof from \"./typeof.js\";\nexport default function setFunctionName(e, t, n) {\n \"symbol\" == _typeof(t) && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\");\n try {\n Object.defineProperty(e, \"name\", {\n configurable: !0,\n value: n ? n + \" \" + t : t\n });\n } catch (e) {}\n return e;\n}","import _typeof from \"./typeof.js\";\nimport checkInRHS from \"./checkInRHS.js\";\nimport setFunctionName from \"./setFunctionName.js\";\nimport toPropertyKey from \"./toPropertyKey.js\";\nexport default function applyDecs2311(e, t, n, r, o, i) {\n var a,\n c,\n u,\n s,\n f,\n l,\n p,\n d = Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\"),\n m = Object.defineProperty,\n h = Object.create,\n y = [h(null), h(null)],\n v = t.length;\n function g(t, n, r) {\n return function (o, i) {\n n && (i = o, o = e);\n for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []);\n return r ? i : o;\n };\n }\n function b(e, t, n, r) {\n if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\"));\n return e;\n }\n function applyDec(e, t, n, r, o, i, u, s, f, l, p) {\n function d(e) {\n if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\");\n }\n var h = [].concat(t[0]),\n v = t[3],\n w = !u,\n D = 1 === o,\n S = 3 === o,\n j = 4 === o,\n E = 2 === o;\n function I(t, n, r) {\n return function (o, i) {\n return n && (i = o, o = e), r && r(o), P[t].call(o, i);\n };\n }\n if (!w) {\n var P = {},\n k = [],\n F = S ? \"get\" : j || D ? \"set\" : \"value\";\n if (f ? (l || D ? P = {\n get: setFunctionName(function () {\n return v(this);\n }, r, \"get\"),\n set: function set(e) {\n t[4](this, e);\n }\n } : P[F] = v, l || setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) {\n if ((c = y[+s][r]) && 7 != (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\");\n y[+s][r] = o < 3 ? 1 : o;\n }\n }\n for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) {\n var z = b(h[O], \"A decorator\", \"be\", !0),\n A = n ? h[O - 1] : void 0,\n H = {},\n K = {\n kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o],\n name: r,\n metadata: a,\n addInitializer: function (e, t) {\n if (e.v) throw Error(\"attempted to call addInitializer after decoration was finished\");\n b(t, \"An initializer\", \"be\", !0), i.push(t);\n }.bind(null, H)\n };\n if (w) c = z.call(A, N, K), H.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (K[\"static\"] = s, K[\"private\"] = f, c = K.access = {\n has: f ? p.bind() : function (e) {\n return r in e;\n }\n }, j || (c.get = f ? E ? function (e) {\n return d(e), P.value;\n } : I(\"get\", 0, d) : function (e) {\n return e[r];\n }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) {\n e[r] = t;\n }), N = z.call(A, D ? {\n get: P.get,\n set: P.set\n } : P[F], K), H.v = 1, D) {\n if (\"object\" == _typeof(N) && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\");\n } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N);\n }\n return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N;\n }\n function w(e) {\n return m(e, d, {\n configurable: !0,\n enumerable: !0,\n value: a\n });\n }\n return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function l(e) {\n e && f.push(g(e));\n }, p = function p(t, r) {\n for (var i = 0; i < n.length; i++) {\n var a = n[i],\n c = a[1],\n l = 7 & c;\n if ((8 & c) == t && !l == r) {\n var p = a[2],\n d = !!a[3],\n m = 16 & c;\n applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) {\n return checkInRHS(t) === e;\n } : o);\n }\n }\n }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), {\n e: c,\n get c() {\n var n = [];\n return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)];\n }\n };\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldGet2(s, a) {\n return s.get(assertClassBrand(s, a));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldSet2(s, a, r) {\n return s.set(assertClassBrand(s, a), r), r;\n}","import React from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type {\n EoEasyopsAvatar,\n EoEasyopsAvatarProps,\n} from \"@next-bricks/basic/easyops-avatar\";\nimport { humanizeTime, HumanizeTimeFormat } from \"@next-shared/datetime\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport styleText from \"./styles.shadow.css\";\nimport { parseTemplate } from \"../shared/parseTemplate.js\";\nimport type { Activity, ActivityOfAlterUser } from \"./interfaces.js\";\n\ninitializeI18n(NS, locales);\n\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedAvatar = wrapBrick<EoEasyopsAvatar, EoEasyopsAvatarProps>(\n \"eo-easyops-avatar\"\n);\nconst { defineElement, property } = createDecorators();\n\nexport interface ActivityTimelineProps {\n list?: Activity[];\n chatUrlTemplate?: string;\n}\n\n/**\n * 构件 `ai-portal.activity-timeline`\n */\nexport\n@defineElement(\"ai-portal.activity-timeline\", {\n styleTexts: [styleText],\n})\nclass ActivityTimeline\n extends ReactNextElement\n implements ActivityTimelineProps\n{\n @property({ attribute: false })\n accessor list: Activity[] | undefined;\n\n @property()\n accessor chatUrlTemplate: string | undefined;\n\n render() {\n return (\n <ActivityTimelineComponent\n list={this.list}\n chatUrlTemplate={this.chatUrlTemplate}\n />\n );\n }\n}\n\nfunction ActivityTimelineComponent({\n list,\n chatUrlTemplate,\n}: ActivityTimelineProps) {\n if (!list) {\n return (\n <div className=\"loading\">\n <WrappedIcon lib=\"antd\" icon=\"loading-3-quarters\" spinning />\n </div>\n );\n }\n\n return (\n <ul>\n {list.map((activity, index) => (\n <li className=\"activity\" key={index}>\n <div className=\"guide-line\" />\n <div className=\"main\">\n <WrappedAvatar\n className=\"avatar\"\n nameOrInstanceId={activity.user_id}\n size=\"xs\"\n />\n <span className=\"action\">\n {activity.user_name}\n &nbsp;\n {activity.action_type === \"start_conversation\" ? (\n <>\n <span>{t(K.STARTED_A_CHAT)}</span>\n <WrappedLink\n className=\"conversation\"\n url={parseTemplate(chatUrlTemplate, activity)}\n target=\"_blank\"\n >\n {activity.metadata?.conversation_title}\n </WrappedLink>\n <WrappedIcon\n className=\"external-link-icon\"\n lib=\"lucide\"\n icon=\"external-link\"\n />\n </>\n ) : activity.action_type === \"create_goal\" ? (\n t(K.CREATED_THIS_GOAL)\n ) : activity.action_type === \"edit_goal\" ? (\n activity.metadata.after.title ? (\n t(K.CHANGED_THE_GOAL_TITLE, activity.metadata.after)\n ) : activity.metadata.after.description ? (\n t(K.CHANGED_THE_GOAL_DESCRIPTION, activity.metadata.after)\n ) : (\n t(K.CHANGED_THE_GOAL)\n )\n ) : activity.action_type === \"delete_goal\" ? (\n t(K.DELETED_THIS_GOAL)\n ) : activity.action_type === \"decompose_goals\" ? (\n `${t(K.DECOMPOSED_THIS_GOAL, {\n count: activity.metadata.sub_goals_count,\n })}${activity.metadata.sub_goals\n .map((g) => g.title)\n .join(t(K.COMMA))}`\n ) : activity.action_type === \"alter_owner\" ? (\n t(K.SET_OWNER, {\n user: activity.metadata.after.owner.user_name,\n })\n ) : activity.action_type === \"alter_user\" ? (\n getAlterPARTICIPANTsActivityDescription(activity)\n ) : activity.action_type === \"add_comment\" ? (\n t(K.COMMENTED)\n ) : (\n // Defense for future action types\n (activity as { action_type: string }).action_type\n )}\n </span>\n <span\n className=\"time\"\n title={humanizeTime(activity.time, HumanizeTimeFormat.full)!}\n >\n {humanizeTime(activity.time, HumanizeTimeFormat.relative)}\n </span>\n </div>\n {activity.action_type === \"add_comment\" && (\n <div className=\"comment\">{activity.metadata?.comment_content}</div>\n )}\n </li>\n ))}\n </ul>\n );\n}\n\nfunction getAlterPARTICIPANTsActivityDescription(\n activity: ActivityOfAlterUser\n) {\n const removed: string[] = [];\n const added: string[] = [];\n const beforeUserIds = new Set(\n activity.metadata.before.users.map((user) => user.user_name)\n );\n for (const user of activity.metadata.after.users) {\n if (!beforeUserIds.has(user.user_name)) {\n added.push(user.user_name);\n }\n }\n const afterUserIds = new Set(\n activity.metadata.after.users.map((user) => user.user_name)\n );\n for (const user of activity.metadata.before.users) {\n if (!afterUserIds.has(user.user_name)) {\n removed.push(user.user_name);\n }\n }\n\n const descriptions: string[] = [];\n if (removed.length > 0) {\n descriptions.push(\n t(K.REMOVED_GOAL_PARTICIPANTS, { count: removed.length }) +\n removed.join(t(K.COMMA))\n );\n }\n if (added.length > 0) {\n descriptions.push(\n t(K.ADDED_GOAL_PARTICIPANTS, { count: added.length }) +\n added.join(t(K.COMMA))\n );\n }\n\n return descriptions.join(t(K.SEMICOLON));\n}\n","import { get } from \"lodash\";\n\nexport function parseTemplate(\n template: string | undefined,\n context: Record<string, any>\n) {\n return template?.replace(/{{(.*?)}}/g, (_match: string, key: string) => {\n const value = get(context, key.trim());\n return value;\n });\n}\n"],"names":["NS_LIBS_DATETIME","K","YESTERDAY","TODAY","FUTURE_AFTER","FORMAT_MEDIUM_DATETIME","FORMAT_MEDIUM_DATE","FORMAT_SHORT_DATETIME","FORMAT_SHORT_DATE","FORMAT_SHORT_DAY_DATETIME","FORMAT_SHORT_DAY_DATE","MONTHS","HOURS","SECONDS","MILL_SECONDS","DAYS","MINUTES","initializeI18n","en","zh","HumanizeTimeFormat","humanizeTime","time","format","arguments","length","undefined","auto","type","Infinity","m","moment","now","add","fFull","fMedium","i18n","t","fShort","fShort24","fDefault","text","full","default","relative","diff","humanize","past","Math","min","future","max","accurate","getAccurateTime","toFixed","_text","retVal","year","isBefore","clone","isSame","NS","locales","STARTED_A_CHAT","CREATED_THIS_GOAL","CHANGED_THE_GOAL_TITLE","CHANGED_THE_GOAL_DESCRIPTION","CHANGED_THE_GOAL","DELETED_THIS_GOAL","DECOMPOSED_THIS_GOAL","DECOMPOSED_THIS_GOAL_plural","SET_OWNER","REMOVED_GOAL_PARTICIPANTS","REMOVED_GOAL_PARTICIPANTS_plural","ADDED_GOAL_PARTICIPANTS","ADDED_GOAL_PARTICIPANTS_plural","COMMENTED","COMMA","SEMICOLON","getFixedT","toPropertyKey","i","e","Symbol","toPrimitive","call","r","TypeError","String","_assertClassBrand","n","has","___CSS_LOADER_EXPORT___","push","module","id","toString","_typeof","o","iterator","constructor","prototype","_checkInRHS","Object","exports","cssWithMappingToString","list","this","map","item","content","needLayer","concat","join","modules","media","dedupe","supports","layer","alreadyImportedModules","k","_k","setFunctionName","description","defineProperty","configurable","value","applyDecs2311","a","c","u","s","f","l","p","d","metadata","h","create","y","v","g","apply","b","applyDec","w","D","S","j","E","I","P","F","get","set","getOwnPropertyDescriptor","Error","name","N","O","z","A","H","kind","addInitializer","bind","access","init","unshift","splice","enumerable","checkInRHS","_classPrivateFieldGet2","_classPrivateFieldInitSpec","obj","privateMap","_checkPrivateRedeclaration","privateCollection","_classPrivateFieldSet2","WrappedLink","wrapBrick","WrappedIcon","WrappedAvatar","defineElement","property","createDecorators","_ActivityTimeline","_A","WeakMap","_B","ActivityTimeline","ReactNextElement","_init_list","_init_extra_list","_init_chatUrlTemplate","_init_extra_chatUrlTemplate","_classPrivateFieldGet","_classPrivateFieldSet","chatUrlTemplate","render","React","ActivityTimelineComponent","_ref","activity","index","_activity$metadata","_activity$metadata2","className","key","nameOrInstanceId","user_id","size","user_name","action_type","url","parseTemplate","target","conversation_title","lib","icon","after","title","count","sub_goals_count","sub_goals","user","owner","removed","added","beforeUserIds","Set","before","users","afterUserIds","descriptions","getAlterPARTICIPANTsActivityDescription","comment_content","spinning","_ActivityTimeline2","_initClass","_applyDecs","styleTexts","styleText","attribute","template","context","replace","_match","trim"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[6573],{433:(e,t,n)=>{n.d(t,{I:()=>l,K:()=>i,NS:()=>s,t:()=>c});var o=n(87117);let i=function(e){return e.ASK_ANY_THING="ASK_ANYTHING",e.COMMON_TASKS="COMMON_TASKS",e}({});const a={[i.ASK_ANY_THING]:"Ask anything",[i.COMMON_TASKS]:"Common tasks"},r={[i.ASK_ANY_THING]:"询问任何问题",[i.COMMON_TASKS]:"常用任务"},s="bricks/ai-portal/chat-box",l={en:a,zh:r},c=o.i18n.getFixedT(null,s)},20062:e=>{e.exports=function(e,t){return t||(t={}),e?(e=String(e.__esModule?e.default:e),/^['"].*['"]$/.test(e)&&(e=e.slice(1,-1)),t.hash&&(e+=t.hash),/["'() \t\n]|(%20)/.test(e)||t.needQuotes?'"'.concat(e.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):e):e}},23144:(e,t,n)=>{n.d(t,{U:()=>a});var o=n(56548);let i;function a(e,t){i||(i=document.createElement("div"),i.setAttribute("tab-index","-1"),i.setAttribute("aria-hidden","true"),document.body.appendChild(i)),i.setAttribute("style",(0,o.w)(e)),i.textContent=e.value.slice(0,t);const n=document.createElement("span");n.textContent="​",i.appendChild(n);const a=n.getBoundingClientRect();return n.remove(),{top:a.top,left:a.left}}},24586:(e,t,n)=>{n.d(t,{A:()=>i});var o=n(11369);function i(e,t,n){return(t=(0,o.A)(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},47008:(e,t,n)=>{n.d(t,{A:()=>p});var o=n(36758),i=n.n(o),a=n(40935),r=n.n(a),s=n(20062),l=n.n(s),c=new URL(n(47336),n.b),u=r()(i()),d=l()(c);u.push([e.id,`:host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.root{color:#262626;background:url(${d}) no-repeat center bottom;background-size:100% 104px;padding:12px 12px 29px;margin:0 -12px}.container{position:relative;background:#ffffff;box-shadow:0px 2px 4px 0px rgba(38,45,65,0.1);border-radius:16px;border:1px solid #dadfe8}.container:has(textarea:focus){border-color:#b7c3d8}textarea{display:block;width:100%;padding:10px 16px 50px;color:var(--antd-input-color);border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.5);font:inherit;font-size:14px;line-height:22px;height:120px}textarea::placeholder{color:rgba(0,0,0,0.4)}.btn-send:focus,\ntextarea:focus{outline:none}.actions-bar{position:absolute;bottom:12px;left:14px;right:14px;display:flex;align-items:flex-end;justify-content:space-between}.btn-send{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--elevo-color-brand);border:none;border-radius:8px;color:#fff;flex-shrink:0}.btn-send[disabled]{background:rgba(0,0,0,0.15)}.btn-send:not([disabled]){cursor:pointer}.btn-send:not([disabled]):hover{background:#5166ff}.btn-send:not([disabled]):active{background:#1e33cc}.mentions{position:absolute}.mention-overlay{position:absolute;border-radius:4px;pointer-events:none;background:rgba(38,45,65,0.1)}`,""]);const p=u.toString()},47336:(e,t,n)=>{e.exports=n.p+"images/25c20165.png"},56548:(e,t,n)=>{n.d(t,{w:()=>a});const o="\n min-height: 0!important;\n max-height: none!important;\n height: 0!important;\n visibility: hidden!important;\n overflow: hidden!important;\n position: absolute!important;\n z-index: -1000!important;\n top: 0!important;\n left: 0!important;\n pointer-events: none!important;\n",i=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","font-variant","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break","white-space"];function a(e){const t=window.getComputedStyle(e);return`${i.map((e=>`${e}:${t.getPropertyValue(e)}`)).join(";")};${o}`}},66491:(e,t,n)=>{n.d(t,{f:()=>a});var o=n(56548);let i;function a(e,t,n){i||(i=document.createElement("div"),i.setAttribute("tab-index","-1"),i.setAttribute("aria-hidden","true"),document.body.appendChild(i)),i.setAttribute("style",(0,o.w)(e)),i.textContent=t;const a=document.createElement("span");a.textContent=n,i.appendChild(a);const r=a.getBoundingClientRect();return a.remove(),r}},67707:(e,t,n)=>{n.r(t),n.d(t,{ChatBox:()=>U,ChatBoxComponent:()=>L});var o,i=n(74635),a=n(70918),r=n(24586),s=n(26902),l=n(5536),c=n(86121),u=n(70829),d=n(62740),p=n(18769),h=n.n(p),m=n(7921),f=n(11280),b=n(23144),g=n(66491),v=n(71451),x=(n(65168),n(87117)),w=n(433),A=n(47008);let y,k,S,C,E,R,M,z,N,_,I,K,T,P,B,D,$,O;(0,x.initializeI18n)(w.NS,w.I);const W=(0,f.wrapBrick)("eo-icon"),F=(0,f.wrapBrick)("eo-actions",{onActionClick:"action.click",onItemDragEnd:"item.drag.end",onItemDragStart:"item.drag.start"}),{defineElement:H,property:V,event:Y,method:G}=(0,m.createDecorators)(),L=(0,p.forwardRef)(ie);let U;var j=new WeakMap,q=new WeakMap,Q=new WeakMap,J=new WeakMap,X=new WeakMap,Z=new WeakSet,ee=new WeakMap,te=new WeakMap,ne=new WeakMap;class oe extends f.ReactNextElement{constructor(){super(...arguments),(0,i.A)(this,Z),(0,r.A)(this,"ref",(y(this),(0,p.createRef)())),(0,a.A)(this,j,S(this)),(0,a.A)(this,q,(C(this),E(this))),(0,a.A)(this,Q,(R(this),M(this))),(0,a.A)(this,J,(z(this),N(this))),(0,a.A)(this,X,(_(this),I(this))),(0,a.A)(this,ee,(P(this),e=>{(0,l.A)(Z,this,K).emit(e)})),(0,a.A)(this,te,B(this)),(0,a.A)(this,ne,(O(this),e=>{(0,l.A)(Z,this,D).emit(e)}))}get disabled(){return(0,u.A)(j,this)}set disabled(e){(0,c.A)(j,this,e)}get placeholder(){return(0,u.A)(q,this)}set placeholder(e){(0,c.A)(q,this,e)}get autoFocus(){return(0,u.A)(Q,this)}set autoFocus(e){(0,c.A)(Q,this,e)}get aiEmployees(){return(0,u.A)(J,this)}set aiEmployees(e){(0,c.A)(J,this,e)}setValue(e){var t;null===(t=this.ref.current)||void 0===t||t.setValue(e)}getValue(){var e;return null===(e=this.ref.current)||void 0===e?void 0:e.getValue()}render(){return h().createElement(L,{disabled:this.disabled,placeholder:this.placeholder,autoFocus:this.autoFocus,aiEmployees:this.aiEmployees,onSubmit:(0,u.A)(ee,this),onEmployeeMention:(0,u.A)(ne,this),ref:this.ref})}}function ie(e,t){let{disabled:n,placeholder:o,autoFocus:i,aiEmployees:a,onSubmit:r,onEmployeeMention:s}=e;const l=(0,p.useRef)(null),c=(0,p.useRef)(null),[u,d]=(0,p.useState)(""),m=(0,p.useRef)(""),[f,x]=(0,p.useState)(null),[A,y]=(0,p.useState)(""),[k,S]=(0,p.useState)(0),C=(0,p.useRef)(null);(0,p.useImperativeHandle)(t,(()=>({setValue:e=>{m.current=e,d(e)},getValue:()=>m.current})));const E=(0,p.useCallback)((e=>{e.currentTarget.value&&r(e.currentTarget.value)}),[r]),R=(0,p.useCallback)((e=>{const{value:t,selectionStart:n,selectionEnd:o}=e.target;if(m.current=t,d(t),!A&&null!==n&&n===o&&null!=a&&a.length){const o=t.slice(0,n),i=o.lastIndexOf("@");if(i>=0){const t=o.slice(i+1).toLowerCase(),r=(0,b.U)(e.currentTarget,n),s=a.filter((e=>e.employeeId.toLowerCase().includes(t)||e.name.toLowerCase().includes(t))).slice(0,10);if(s.length>0)return x({position:{left:r.left+10,top:r.top+22},range:{start:i,end:n},actions:s.map((e=>({key:e.employeeId,text:e.name,data:e})))}),void S(0)}}x(null)}),[a,A]);(0,p.useEffect)((()=>{A&&!u.includes(A)&&(y(""),s(null))}),[A,s,u]);const M=(0,p.useCallback)((()=>{r(m.current)}),[r]);(0,p.useEffect)((()=>{i&&Promise.resolve().then((()=>{var e;null===(e=c.current)||void 0===e||e.focus()}))}),[]);const z=(0,p.useMemo)((()=>{var e;const t=null===(e=c.current)||void 0===e?void 0:e.element;if(!A||!t)return"";const n=u.indexOf(A);return n<0?"":u.slice(0,n)}),[A,u]),N=(0,p.useMemo)((()=>{var e;const t=null===(e=c.current)||void 0===e?void 0:e.element;if(!A||!t)return null;const n=(0,g.f)(t,z,A.slice(0,-1));return{left:n.left-1,top:n.top-1,width:n.width+4,height:n.height+4}}),[A,z]),_=(0,p.useCallback)((e=>{const t=`@${e.text} `,n=`${m.current.slice(0,f.range.start)}${t}`,o=`${n}${m.current.slice(f.range.end)}`;m.current=o,C.current={start:n.length,end:n.length},d(o),y(t),x(null),s(e.data)}),[f,s]),I=(0,p.useCallback)((e=>{switch(e.key){case"Escape":if(!f)return;return e.preventDefault(),e.stopPropagation(),e.nativeEvent.stopImmediatePropagation(),x(null),!1;case"ArrowUp":case"ArrowDown":if(!f)return;return e.preventDefault(),e.stopPropagation(),e.nativeEvent.stopImmediatePropagation(),S((t=>{const n=t+("ArrowUp"===e.key?-1:1),o=f.actions.length;return(o+n)%o})),!1;case"Enter":if(!f)return;return e.preventDefault(),e.stopPropagation(),e.nativeEvent.stopImmediatePropagation(),_(f.actions[k]),!1;case"Delete":case"Backspace":if(null!=A&&A.length){let{selectionStart:t,selectionEnd:n}=e.currentTarget;t===n&&("Backspace"===e.key?t-=1:n+=1);const o=z.length,i=o+A.length;if(t<i&&n>o){const a=Math.min(t,o),r=Math.max(n,i),s=`${m.current.slice(0,a)}${m.current.slice(r)}`;return m.current=s,C.current={start:a,end:a},d(s),e.preventDefault(),e.stopPropagation(),!1}}}}),[k,_,f,z.length,null==A?void 0:A.length]);return h().createElement("div",{className:"root"},h().createElement("div",{className:"container",ref:l},h().createElement(v.e,{containerRef:l,ref:c,value:u,minRows:58/22,paddingSize:60,autoResize:!0,disabled:n,placeholder:null!=o?o:(0,w.t)(w.K.ASK_ANY_THING),submitWhen:"enter-without-shift",desiredSelectionRef:C,onSubmit:E,onChange:R,onKeyDown:I}),h().createElement("div",{className:"actions-bar"},h().createElement("div",null,h().createElement("slot",{name:"actions"})),h().createElement("button",{className:"btn-send",disabled:!u,onClick:M},h().createElement(W,{lib:"fa",prefix:"fas",icon:"arrow-up"}))),f&&h().createElement(F,{className:"mentions",actions:f.actions,style:f.position,onActionClick:e=>_(e.detail),checkedKeys:[f.actions[k].key]}),N&&h().createElement("div",{className:"mention-overlay",style:N})))}o=oe,({e:[S,C,E,R,M,z,N,_,I,K,T,P,B,D,$,O,y],c:[U,k]}=(0,d.A)(o,[H("ai-portal.chat-box",{styleTexts:[A.A],shadowOptions:{delegatesFocus:!0}})],[[V({type:Boolean}),1,"disabled"],[V(),1,"placeholder"],[V({type:Boolean}),1,"autoFocus"],[V({attribute:!1}),1,"aiEmployees"],[Y({type:"message.submit"}),1,"messageSubmit",e=>(0,u.A)(X,e),(e,t)=>(0,c.A)(X,e,t)],[Y({type:"ai-employee.mention"}),1,"employeeMention",e=>(0,u.A)(te,e),(e,t)=>(0,c.A)(te,e,t)],[G(),2,"setValue"],[G(),2,"getValue"]],0,(e=>ne.has((0,s.A)(e))),f.ReactNextElement)),k()},71451:(e,t,n)=>{n.d(t,{e:()=>u});var o=n(89575),i=n(18769),a=n(59435),r=n(99126),s=n(56548);let l;const c=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey",u=i.forwardRef(d);function d(e,t){let{autoResize:n,minRows:u,maxRows:d,borderSize:p,paddingSize:h,containerRef:m,value:f,style:b,submitWhen:g,desiredSelectionRef:v,onChange:x,onSubmit:w,onKeyDown:A,onCompositionStart:y,onCompositionEnd:k,...S}=e;const C=null==n||n,[E,R]=(0,i.useState)(null!=f?f:""),M=(0,i.useRef)(null),[z,N]=(0,i.useState)(null);(0,i.useImperativeHandle)(t,(()=>({focus:()=>{const e=M.current;if(e){var t;const n=null===(t=e.value)||void 0===t?void 0:t.length;e.focus(),n&&e.setSelectionRange(n,n)}},element:M.current})),[]);const _=(0,i.useCallback)((()=>{const e=M.current;if(e&&C){const t=function(e,t){const{minRows:n=null,maxRows:o=null,borderSize:i=2,paddingSize:a=8}=null!=t?t:{};let r,c,u;l||(l=document.createElement("textarea"),l.setAttribute("tab-index","-1"),l.setAttribute("aria-hidden","true"),document.body.appendChild(l)),l.setAttribute("style",(0,s.w)(e)),l.value=e.value||e.placeholder||"";let d=l.scrollHeight+i;if(null!==n||null!==o){const e=parseFloat(window.getComputedStyle(l).getPropertyValue("line-height"));null!==n&&(r=e*n+a+i,d=Math.max(r,d)),null!==o&&(c=e*o+a+i,d<=c&&(u="hidden"),d=Math.min(c,d))}const p={height:d,overflowY:u,resize:"none"};return r&&(p.minHeight=r),c&&(p.maxHeight=c),p}(e,{minRows:u,maxRows:d,borderSize:p,paddingSize:h});(0,a.flushSync)((()=>{N(t)}))}}),[C,d,u,p,h]);(0,i.useEffect)((()=>{R(null!=f?f:"")}),[f]),(0,i.useEffect)((()=>{_()}),[_,E]);const I=(0,i.useRef)(!1),K=(0,i.useCallback)((e=>{I.current=!0,null==y||y(e)}),[y]),T=(0,i.useCallback)((e=>{I.current=!1,null==k||k(e)}),[k]),P=(0,i.useCallback)((e=>{I.current||!1!==(null==A?void 0:A(e))&&"Enter"===e.key&&("enter-without-shift"===g?!e.shiftKey:"enter-with-mod"===g&&e[c])&&(e.preventDefault(),e.stopPropagation(),null==w||w(e))}),[A,w,g]);return(0,i.useLayoutEffect)((()=>{const e=null==v?void 0:v.current,t=M.current;if(e&&t){const{start:n,end:o}=e;v.current=null,t.setSelectionRange(n,o)}}),[v,E]),(0,i.useEffect)((()=>{const e=null==m?void 0:m.current;if(!e||!C)return;let t;const n=new r.A((n=>{for(const o of n)if(o.target===e){const e=o.contentBoxSize?o.contentBoxSize[0]?o.contentBoxSize[0].inlineSize:o.contentBoxSize.inlineSize:o.contentRect.width;if(void 0!==e&&e!==t){const n=!t;t=e,n||requestAnimationFrame(_)}}}));return n.observe(e),()=>{n.disconnect()}}),[C,m,_]),i.createElement("textarea",(0,o.A)({},S,{ref:M,value:E,style:{...b,...z},onChange:e=>{R(e.target.value),null==x||x(e)},onCompositionStart:K,onCompositionEnd:T,onKeyDown:P}))}}}]);
2
+ //# sourceMappingURL=chat-box.4f6d3704.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/chat-box.4f6d3704.js","mappings":"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","sources":["webpack:///./src/chat-box/i18n.ts","webpack:///../../node_modules/css-loader/dist/runtime/getUrl.js","webpack:///../../src/getCaretPositionInTextarea.ts","webpack:///../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///./src/chat-box/styles.shadow.css","webpack:///../../../src/utils/getMirroredStyle.ts","webpack:///../../src/getContentRectInTextarea.ts","webpack:///./src/chat-box/index.tsx","webpack:///../../../src/utils/calculateAutoSizeStyle.ts","webpack:///../../src/TextareaAutoResize.tsx"],"sourcesContent":["import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n ASK_ANY_THING = \"ASK_ANYTHING\",\n COMMON_TASKS = \"COMMON_TASKS\",\n}\n\nconst en: Locale = {\n [K.ASK_ANY_THING]: \"Ask anything\",\n [K.COMMON_TASKS]: \"Common tasks\",\n};\n\nconst zh: Locale = {\n [K.ASK_ANY_THING]: \"询问任何问题\",\n [K.COMMON_TASKS]: \"常用任务\",\n};\n\nexport const NS = \"bricks/ai-portal/chat-box\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};","import { getMirroredStyle } from \"./utils/getMirroredStyle.js\";\n\nlet hiddenElement: HTMLDivElement | undefined;\n\nexport function getCaretPositionInTextarea(\n textarea: HTMLTextAreaElement,\n index: number\n) {\n if (!hiddenElement) {\n hiddenElement = document.createElement(\"div\");\n hiddenElement.setAttribute(\"tab-index\", \"-1\");\n hiddenElement.setAttribute(\"aria-hidden\", \"true\");\n document.body.appendChild(hiddenElement);\n }\n\n hiddenElement.setAttribute(\"style\", getMirroredStyle(textarea));\n hiddenElement.textContent = textarea.value.slice(0, index);\n\n const span = document.createElement(\"span\");\n span.textContent = \"\\u200b\"; // 占位符\n hiddenElement.appendChild(span);\n\n const rect = span.getBoundingClientRect();\n span.remove();\n return {\n top: rect.top,\n left: rect.left,\n };\n}\n","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./images/bg.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.root{color:#262626;background:url(${___CSS_LOADER_URL_REPLACEMENT_0___}) no-repeat center bottom;background-size:100% 104px;padding:12px 12px 29px;margin:0 -12px}.container{position:relative;background:#ffffff;box-shadow:0px 2px 4px 0px rgba(38,45,65,0.1);border-radius:16px;border:1px solid #dadfe8}.container:has(textarea:focus){border-color:#b7c3d8}textarea{display:block;width:100%;padding:10px 16px 50px;color:var(--antd-input-color);border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.5);font:inherit;font-size:14px;line-height:22px;height:120px}textarea::placeholder{color:rgba(0,0,0,0.4)}.btn-send:focus,\ntextarea:focus{outline:none}.actions-bar{position:absolute;bottom:12px;left:14px;right:14px;display:flex;align-items:flex-end;justify-content:space-between}.btn-send{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--elevo-color-brand);border:none;border-radius:8px;color:#fff;flex-shrink:0}.btn-send[disabled]{background:rgba(0,0,0,0.15)}.btn-send:not([disabled]){cursor:pointer}.btn-send:not([disabled]):hover{background:#5166ff}.btn-send:not([disabled]):active{background:#1e33cc}.mentions{position:absolute}.mention-overlay{position:absolute;border-radius:4px;pointer-events:none;background:rgba(38,45,65,0.1)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","const HIDDEN_STYLE = `\n min-height: 0!important;\n max-height: none!important;\n height: 0!important;\n visibility: hidden!important;\n overflow: hidden!important;\n position: absolute!important;\n z-index: -1000!important;\n top: 0!important;\n left: 0!important;\n pointer-events: none!important;\n`;\n\nconst SIZING_STYLE = [\n \"letter-spacing\",\n \"line-height\",\n \"padding-top\",\n \"padding-bottom\",\n \"font-family\",\n \"font-weight\",\n \"font-size\",\n \"font-variant\",\n \"text-rendering\",\n \"text-transform\",\n \"width\",\n \"text-indent\",\n \"padding-left\",\n \"padding-right\",\n \"border-width\",\n \"box-sizing\",\n \"word-break\",\n \"white-space\",\n];\n\n/**\n * 创建一个镜像元素,用于计算光标位置或文本尺寸。\n */\nexport function getMirroredStyle(element: HTMLElement) {\n const uiTextNodeStyle = window.getComputedStyle(element);\n const sizingStyle = SIZING_STYLE.map(\n (name) => `${name}:${uiTextNodeStyle.getPropertyValue(name)}`\n ).join(\";\");\n return `${sizingStyle};${HIDDEN_STYLE}`;\n}\n","import { getMirroredStyle } from \"./utils/getMirroredStyle.js\";\n\nlet hiddenElement: HTMLDivElement | undefined;\n\nexport function getContentRectInTextarea(\n textarea: HTMLTextAreaElement,\n prefix: string,\n measureContent: string\n) {\n if (!hiddenElement) {\n hiddenElement = document.createElement(\"div\");\n hiddenElement.setAttribute(\"tab-index\", \"-1\");\n hiddenElement.setAttribute(\"aria-hidden\", \"true\");\n document.body.appendChild(hiddenElement);\n }\n hiddenElement.setAttribute(\"style\", getMirroredStyle(textarea));\n\n hiddenElement.textContent = prefix;\n\n const span = document.createElement(\"span\");\n span.textContent = measureContent;\n hiddenElement.appendChild(span);\n\n const rect = span.getBoundingClientRect();\n span.remove();\n return rect;\n}\n","import React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n useImperativeHandle,\n createRef,\n useMemo,\n} from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport {\n getCaretPositionInTextarea,\n getContentRectInTextarea,\n TextareaAutoResize,\n type TextareaAutoResizeRef,\n} from \"@next-shared/form\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type {\n ActionsEvents,\n ActionsEventsMapping,\n ActionsProps,\n EoActions,\n SimpleAction,\n} from \"@next-bricks/basic/actions\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport styleText from \"./styles.shadow.css\";\n\ninitializeI18n(NS, locales);\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedActions = wrapBrick<\n EoActions,\n ActionsProps,\n ActionsEvents,\n ActionsEventsMapping\n>(\"eo-actions\", {\n onActionClick: \"action.click\",\n onItemDragEnd: \"item.drag.end\",\n onItemDragStart: \"item.drag.start\",\n});\n\nconst { defineElement, property, event, method } = createDecorators();\n\nexport const ChatBoxComponent = forwardRef(LegacyChatBoxComponent);\n\nexport interface ChatBoxProps {\n disabled?: boolean;\n placeholder?: string;\n autoFocus?: boolean;\n aiEmployees?: AIEmployee[];\n}\n\nexport interface AIEmployee {\n employeeId: string;\n name: string;\n}\n\nexport interface ChatBoxRef {\n setValue: (value: string) => void;\n getValue: () => string;\n}\n\n/**\n * 构件 `ai-portal.chat-box`\n */\nexport\n@defineElement(\"ai-portal.chat-box\", {\n styleTexts: [styleText],\n shadowOptions: {\n delegatesFocus: true,\n },\n})\nclass ChatBox extends ReactNextElement implements ChatBoxProps {\n ref = createRef<ChatBoxRef>();\n\n @property({ type: Boolean })\n accessor disabled: boolean | undefined;\n\n @property()\n accessor placeholder: string | undefined;\n\n @property({ type: Boolean })\n accessor autoFocus: boolean | undefined;\n\n @property({ attribute: false })\n accessor aiEmployees: AIEmployee[] | undefined;\n\n @event({ type: \"message.submit\" })\n accessor #messageSubmit!: EventEmitter<string>;\n\n #handleMessageSubmit = (value: string) => {\n this.#messageSubmit.emit(value);\n };\n\n @event({ type: \"ai-employee.mention\" })\n accessor #employeeMention!: EventEmitter<AIEmployee | null>;\n\n #handleEmployeeMention = (employee: AIEmployee | null) => {\n this.#employeeMention.emit(employee);\n };\n\n @method()\n setValue(value: string) {\n this.ref.current?.setValue(value);\n }\n\n @method()\n getValue() {\n return this.ref.current?.getValue();\n }\n\n render() {\n return (\n <ChatBoxComponent\n disabled={this.disabled}\n placeholder={this.placeholder}\n autoFocus={this.autoFocus}\n aiEmployees={this.aiEmployees}\n onSubmit={this.#handleMessageSubmit}\n onEmployeeMention={this.#handleEmployeeMention}\n ref={this.ref}\n />\n );\n }\n}\n\ninterface ChatBoxComponentProps extends ChatBoxProps {\n onSubmit: (value: string) => void;\n onEmployeeMention: (employee: AIEmployee | null) => void;\n ref?: React.Ref<ChatBoxRef>;\n}\n\ninterface MentionPopover {\n position: {\n left: number;\n top: number;\n };\n range: {\n start: number;\n end: number;\n };\n actions: SimpleAction[];\n}\n\nfunction LegacyChatBoxComponent(\n {\n disabled,\n placeholder,\n autoFocus,\n aiEmployees,\n onSubmit,\n onEmployeeMention,\n }: ChatBoxComponentProps,\n ref: React.Ref<ChatBoxRef>\n) {\n const containerRef = useRef<HTMLDivElement>(null);\n const textareaRef = useRef<TextareaAutoResizeRef>(null);\n const [value, setValue] = useState(\"\");\n const valueRef = useRef(\"\");\n const [mentionPopover, setMentionPopover] = useState<MentionPopover | null>(\n null\n );\n const [mentionedText, setMentionedText] = useState(\"\");\n const [activeActionIndex, setActiveActionIndex] = useState(0);\n const selectionRef = useRef<{ start: number; end: number } | null>(null);\n\n useImperativeHandle(ref, () => ({\n setValue: (value: string) => {\n valueRef.current = value;\n setValue(value);\n },\n getValue: () => {\n return valueRef.current;\n },\n }));\n\n const handleSubmit = useCallback(\n (e: React.FormEvent<HTMLTextAreaElement>) => {\n if (e.currentTarget.value) {\n onSubmit(e.currentTarget.value);\n }\n },\n [onSubmit]\n );\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n const { value, selectionStart, selectionEnd } = e.target;\n valueRef.current = value;\n setValue(value);\n\n if (\n !mentionedText &&\n selectionStart !== null &&\n selectionStart === selectionEnd &&\n aiEmployees?.length\n ) {\n // const lastChar = value[selectionStart - 1];\n const previousContent = value.slice(0, selectionStart);\n const mentionIndex = previousContent.lastIndexOf(\"@\");\n if (mentionIndex >= 0) {\n const mentionText = previousContent\n .slice(mentionIndex + 1)\n .toLowerCase();\n const position = getCaretPositionInTextarea(\n e.currentTarget,\n selectionStart\n );\n const matchedEmployees = aiEmployees\n .filter(\n (employee) =>\n employee.employeeId.toLowerCase().includes(mentionText) ||\n employee.name.toLowerCase().includes(mentionText)\n )\n .slice(0, 10);\n if (matchedEmployees.length > 0) {\n setMentionPopover({\n position: {\n left: position.left + 10,\n top: position.top + 22,\n },\n range: { start: mentionIndex, end: selectionStart },\n actions: matchedEmployees.map((employee) => ({\n key: employee.employeeId,\n text: employee.name,\n data: employee,\n })),\n });\n setActiveActionIndex(0);\n return;\n }\n }\n }\n setMentionPopover(null);\n },\n [aiEmployees, mentionedText]\n );\n\n useEffect(() => {\n if (mentionedText && !value.includes(mentionedText)) {\n setMentionedText(\"\");\n onEmployeeMention(null);\n }\n }, [mentionedText, onEmployeeMention, value]);\n\n const handleSubmitClick = useCallback(() => {\n onSubmit(valueRef.current);\n }, [onSubmit]);\n\n useEffect(\n () => {\n if (autoFocus) {\n Promise.resolve().then(() => {\n textareaRef.current?.focus();\n });\n }\n },\n // One-time focus\n // eslint-disable-next-line react-hooks/exhaustive-deps\n []\n );\n\n const mentionPrefix = useMemo(() => {\n const element = textareaRef.current?.element;\n if (!mentionedText || !element) {\n return \"\";\n }\n const index = value.indexOf(mentionedText);\n if (index < 0) {\n return \"\";\n }\n return value.slice(0, index);\n }, [mentionedText, value]);\n\n const mentionOverlay = useMemo(() => {\n const element = textareaRef.current?.element;\n if (!mentionedText || !element) {\n return null;\n }\n const rect = getContentRectInTextarea(\n element,\n mentionPrefix,\n mentionedText.slice(0, -1)\n );\n return {\n left: rect.left - 1,\n top: rect.top - 1,\n width: rect.width + 4,\n height: rect.height + 4,\n };\n }, [mentionedText, mentionPrefix]);\n\n const handleMention = useCallback(\n (action: SimpleAction) => {\n const mention = `@${action.text} `;\n const prefix = `${valueRef.current.slice(0, mentionPopover!.range.start)}${mention}`;\n const newValue = `${prefix}${valueRef.current.slice(mentionPopover!.range.end)}`;\n valueRef.current = newValue;\n selectionRef.current = { start: prefix.length, end: prefix.length };\n setValue(newValue);\n setMentionedText(mention);\n setMentionPopover(null);\n onEmployeeMention((action as { data?: AIEmployee }).data!);\n },\n [mentionPopover, onEmployeeMention]\n );\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n switch (e.key) {\n case \"Escape\":\n if (!mentionPopover) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.nativeEvent.stopImmediatePropagation();\n setMentionPopover(null);\n return false;\n case \"ArrowUp\":\n case \"ArrowDown\": {\n if (!mentionPopover) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.nativeEvent.stopImmediatePropagation();\n setActiveActionIndex((prev) => {\n const nextIndex = prev + (e.key === \"ArrowUp\" ? -1 : 1);\n const total = mentionPopover.actions.length;\n const next = (total + nextIndex) % total;\n return next;\n });\n return false;\n }\n case \"Enter\":\n if (!mentionPopover) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.nativeEvent.stopImmediatePropagation();\n handleMention(mentionPopover.actions[activeActionIndex]);\n return false;\n case \"Delete\":\n case \"Backspace\": {\n if (mentionedText?.length) {\n let { selectionStart, selectionEnd } = e.currentTarget;\n if (selectionStart === selectionEnd) {\n if (e.key === \"Backspace\") {\n selectionStart -= 1;\n } else {\n selectionEnd += 1;\n }\n }\n const currentStart = mentionPrefix.length;\n const currentEnd = currentStart + mentionedText.length;\n if (selectionStart < currentEnd && selectionEnd > currentStart) {\n const start = Math.min(selectionStart, currentStart);\n const end = Math.max(selectionEnd, currentEnd);\n const newValue = `${valueRef.current.slice(0, start)}${valueRef.current.slice(end)}`;\n valueRef.current = newValue;\n selectionRef.current = { start, end: start };\n setValue(newValue);\n e.preventDefault();\n e.stopPropagation();\n return false;\n }\n }\n break;\n }\n }\n },\n [\n activeActionIndex,\n handleMention,\n mentionPopover,\n mentionPrefix.length,\n mentionedText?.length,\n ]\n );\n\n return (\n <div className=\"root\">\n <div className=\"container\" ref={containerRef}>\n <TextareaAutoResize\n containerRef={containerRef}\n ref={textareaRef}\n value={value}\n minRows={58 / 22}\n paddingSize={60}\n autoResize\n disabled={disabled}\n placeholder={placeholder ?? t(K.ASK_ANY_THING)}\n submitWhen=\"enter-without-shift\"\n desiredSelectionRef={selectionRef}\n onSubmit={handleSubmit}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n />\n <div className=\"actions-bar\">\n <div>\n <slot name=\"actions\"></slot>\n </div>\n <button\n className=\"btn-send\"\n disabled={!value}\n onClick={handleSubmitClick}\n >\n <WrappedIcon lib=\"fa\" prefix=\"fas\" icon=\"arrow-up\" />\n </button>\n </div>\n {mentionPopover && (\n <WrappedActions\n className=\"mentions\"\n actions={mentionPopover.actions}\n style={mentionPopover.position}\n onActionClick={(e) => handleMention(e.detail)}\n checkedKeys={[mentionPopover.actions[activeActionIndex].key!]}\n />\n )}\n {mentionOverlay && (\n <div className=\"mention-overlay\" style={mentionOverlay} />\n )}\n </div>\n </div>\n );\n}\n","// istanbul ignore file\nimport type React from \"react\";\nimport { getMirroredStyle } from \"./getMirroredStyle.js\";\n\nlet hiddenTextarea: HTMLTextAreaElement | undefined;\n\nexport interface AutoSizeOptions {\n minRows?: number | null;\n maxRows?: number | null;\n borderSize?: number;\n paddingSize?: number;\n}\n\n/**\n * 计算 textarea 高度\n * https://github.com/react-component/textarea/blob/1c0026fbe30e5f7dff1fca695b2cf262246381ca/src/calculateNodeHeight.tsx\n */\nexport default function calculateAutoSizeStyle(\n uiTextNode: HTMLTextAreaElement,\n options?: AutoSizeOptions\n): React.CSSProperties {\n const {\n minRows = null,\n maxRows = null,\n borderSize = 2,\n paddingSize = 8,\n } = options ?? {};\n\n if (!hiddenTextarea) {\n hiddenTextarea = document.createElement(\"textarea\");\n hiddenTextarea.setAttribute(\"tab-index\", \"-1\");\n hiddenTextarea.setAttribute(\"aria-hidden\", \"true\");\n document.body.appendChild(hiddenTextarea);\n }\n\n // equal style\n hiddenTextarea.setAttribute(\"style\", getMirroredStyle(uiTextNode));\n hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || \"\";\n\n let minHeight: number | undefined;\n let maxHeight: number | undefined;\n let overflowY: React.CSSProperties[\"overflowY\"];\n\n let height = hiddenTextarea.scrollHeight + borderSize;\n\n if (minRows !== null || maxRows !== null) {\n const singleRowHeight =\n process.env.NODE_ENV === \"test\"\n ? 22\n : parseFloat(\n window\n .getComputedStyle(hiddenTextarea)\n .getPropertyValue(\"line-height\")\n );\n if (minRows !== null) {\n minHeight = singleRowHeight * minRows + paddingSize + borderSize;\n height = Math.max(minHeight, height);\n }\n if (maxRows !== null) {\n maxHeight = singleRowHeight * maxRows + paddingSize + borderSize;\n if (height <= maxHeight) {\n overflowY = \"hidden\";\n }\n height = Math.min(maxHeight, height);\n }\n }\n\n const style: React.CSSProperties = {\n height,\n overflowY,\n resize: \"none\",\n };\n\n if (minHeight) {\n style.minHeight = minHeight;\n }\n if (maxHeight) {\n style.maxHeight = maxHeight;\n }\n\n return style;\n}\n","import React, {\n useCallback,\n useEffect,\n useImperativeHandle,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport { flushSync } from \"react-dom\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nimport calculateAutoSizeStyle from \"./utils/calculateAutoSizeStyle.js\";\n\n// istanbul ignore next\nconst modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n\nexport interface TextareaAutoResizeProps\n extends React.DetailedHTMLProps<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n HTMLTextAreaElement\n > {\n /** @default true */\n autoResize?: boolean;\n minRows?: number | null;\n maxRows?: number | null;\n /** @default 2 */\n borderSize?: number;\n /** @default 8 */\n paddingSize?: number;\n containerRef?: React.RefObject<HTMLElement>;\n submitWhen?: \"enter-without-shift\" | \"enter-with-mod\";\n desiredSelectionRef?: React.MutableRefObject<{\n start: number;\n end: number;\n } | null>;\n onChange?: (e: React.ChangeEvent<HTMLTextAreaElement>) => void;\n /**\n * The handler can return false to prevent default behavior (submit)\n */\n onKeyDown?: (e: React.KeyboardEvent<HTMLTextAreaElement>) => void | false;\n}\n\nexport interface TextareaAutoResizeRef {\n focus(): void;\n element: HTMLTextAreaElement | null;\n}\n\nexport const TextareaAutoResize = React.forwardRef<\n TextareaAutoResizeRef,\n TextareaAutoResizeProps\n>(LegacyTextareaAutoResize);\n\nfunction LegacyTextareaAutoResize(\n {\n autoResize: _autoResize,\n minRows,\n maxRows,\n borderSize,\n paddingSize,\n containerRef,\n value: propValue,\n style,\n submitWhen,\n desiredSelectionRef,\n onChange,\n onSubmit,\n onKeyDown,\n onCompositionStart,\n onCompositionEnd,\n ...props\n }: TextareaAutoResizeProps,\n ref: React.ForwardedRef<TextareaAutoResizeRef>\n): React.JSX.Element {\n const autoResize = _autoResize ?? true;\n const [value, setValue] = useState(propValue ?? \"\");\n const textareaRef = useRef<HTMLTextAreaElement>(null);\n const [autoStyle, setAutoStyle] = useState<React.CSSProperties | null>(null);\n\n useImperativeHandle(\n ref,\n () => ({\n focus: () => {\n const textarea = textareaRef.current;\n // istanbul ignore else: defensive check\n if (textarea) {\n const valueLength = textarea.value?.length;\n textarea.focus();\n valueLength && textarea.setSelectionRange(valueLength, valueLength);\n }\n },\n element: textareaRef.current,\n }),\n []\n );\n\n const doAutoResize = useCallback(() => {\n const textarea = textareaRef.current;\n if (textarea && autoResize) {\n const style = calculateAutoSizeStyle(textarea, {\n minRows,\n maxRows,\n borderSize,\n paddingSize,\n });\n // istanbul ignore next\n if (process.env.NODE_ENV === \"test\") {\n setAutoStyle(style);\n } else {\n flushSync(() => {\n setAutoStyle(style);\n });\n }\n }\n }, [autoResize, maxRows, minRows, borderSize, paddingSize]);\n\n const handleInputChange = (\n e: React.ChangeEvent<HTMLTextAreaElement>\n ): void => {\n setValue(e.target.value);\n onChange?.(e);\n };\n\n useEffect(() => {\n setValue(propValue ?? \"\");\n }, [propValue]);\n\n useEffect(() => {\n doAutoResize();\n }, [doAutoResize, value]);\n\n const compositionRef = useRef(false);\n\n const handleCompositionStart = useCallback(\n (e: React.CompositionEvent<HTMLTextAreaElement>) => {\n compositionRef.current = true;\n onCompositionStart?.(e);\n },\n [onCompositionStart]\n );\n\n const handleCompositionEnd = useCallback(\n (e: React.CompositionEvent<HTMLTextAreaElement>) => {\n compositionRef.current = false;\n onCompositionEnd?.(e);\n },\n [onCompositionEnd]\n );\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n if (compositionRef.current) {\n // Ignore key events during composition\n return;\n }\n\n if (onKeyDown?.(e) === false) {\n return;\n }\n\n if (\n e.key === \"Enter\" &&\n (submitWhen === \"enter-without-shift\"\n ? !e.shiftKey\n : submitWhen === \"enter-with-mod\" && e[modKey])\n ) {\n e.preventDefault();\n e.stopPropagation();\n onSubmit?.(e);\n }\n },\n [onKeyDown, onSubmit, submitWhen]\n );\n\n useLayoutEffect(() => {\n const desiredSelection = desiredSelectionRef?.current;\n const textarea = textareaRef.current;\n if (desiredSelection && textarea) {\n const { start, end } = desiredSelection;\n desiredSelectionRef.current = null;\n textarea.setSelectionRange(start, end);\n }\n }, [desiredSelectionRef, value]);\n\n // istanbul ignore next\n useEffect(() => {\n const container = containerRef?.current;\n if (!container || !autoResize) {\n return;\n }\n let previousInlineSize: number | undefined;\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === container) {\n // istanbul ignore next: compatibility\n const currentInlineSize = entry.contentBoxSize\n ? entry.contentBoxSize[0]\n ? entry.contentBoxSize[0].inlineSize\n : (entry.contentBoxSize as unknown as ResizeObserverSize)\n .inlineSize\n : entry.contentRect.width;\n if (\n currentInlineSize !== undefined &&\n currentInlineSize !== previousInlineSize\n ) {\n const isInitial = !previousInlineSize;\n previousInlineSize = currentInlineSize;\n if (!isInitial) {\n requestAnimationFrame(doAutoResize);\n }\n }\n }\n }\n });\n observer.observe(container);\n return () => {\n observer.disconnect();\n };\n }, [autoResize, containerRef, doAutoResize]);\n\n return (\n <textarea\n {...props}\n ref={textareaRef}\n value={value}\n style={{\n ...style,\n ...autoStyle,\n }}\n onChange={handleInputChange}\n onCompositionStart={handleCompositionStart}\n onCompositionEnd={handleCompositionEnd}\n onKeyDown={handleKeyDown}\n />\n );\n}\n"],"names":["K","en","ASK_ANY_THING","COMMON_TASKS","zh","NS","locales","t","i18n","getFixedT","module","exports","url","options","String","__esModule","default","test","slice","hash","needQuotes","concat","replace","hiddenElement","getCaretPositionInTextarea","textarea","index","document","createElement","setAttribute","body","appendChild","getMirroredStyle","textContent","value","span","rect","getBoundingClientRect","remove","top","left","_defineProperty","obj","key","Object","defineProperty","enumerable","configurable","writable","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","push","id","toString","HIDDEN_STYLE","SIZING_STYLE","element","uiTextNodeStyle","window","getComputedStyle","map","name","getPropertyValue","join","getContentRectInTextarea","prefix","measureContent","initializeI18n","WrappedIcon","wrapBrick","WrappedActions","onActionClick","onItemDragEnd","onItemDragStart","defineElement","property","event","method","createDecorators","ChatBoxComponent","forwardRef","LegacyChatBoxComponent","_ChatBox","_A","WeakMap","_B","_C","_D","_E","_ChatBox_brand","WeakSet","_handleMessageSubmit","_F","_handleEmployeeMention","ChatBox","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_initProto","createRef","_classPrivateFieldInitSpec","_init_disabled","_init_extra_disabled","_init_placeholder","_init_extra_placeholder","_init_autoFocus","_init_extra_autoFocus","_init_aiEmployees","_init_extra_aiEmployees","_init_messageSubmit","_init_extra_messageSubmit","_classPrivateGetter","this","_get_messageSubmit","emit","_init_employeeMention","_init_extra_employeeMention","employee","_get_employeeMention","disabled","_classPrivateFieldGet","v","_classPrivateFieldSet","placeholder","autoFocus","aiEmployees","setValue","_this$ref$current","ref","current","getValue","_this$ref$current2","render","React","onSubmit","onEmployeeMention","_ref","containerRef","useRef","textareaRef","useState","valueRef","mentionPopover","setMentionPopover","mentionedText","setMentionedText","activeActionIndex","setActiveActionIndex","selectionRef","useImperativeHandle","handleSubmit","useCallback","e","currentTarget","handleChange","selectionStart","selectionEnd","target","length","previousContent","mentionIndex","lastIndexOf","mentionText","toLowerCase","position","matchedEmployees","filter","employeeId","includes","range","start","end","actions","text","data","useEffect","handleSubmitClick","Promise","resolve","then","_textareaRef$current","focus","mentionPrefix","useMemo","_textareaRef$current2","indexOf","mentionOverlay","_textareaRef$current3","width","height","handleMention","action","mention","newValue","handleKeyDown","preventDefault","stopPropagation","nativeEvent","stopImmediatePropagation","prev","nextIndex","total","currentStart","currentEnd","Math","min","max","className","TextareaAutoResize","minRows","paddingSize","autoResize","submitWhen","desiredSelectionRef","onChange","onKeyDown","onClick","lib","icon","style","detail","checkedKeys","_ChatBox2","_set_messageSubmit","_set_employeeMention","c","_initClass","_applyDecs","styleTexts","styleText","shadowOptions","delegatesFocus","type","Boolean","attribute","o","_","has","_checkInRHS","hiddenTextarea","modKey","navigator","platform","LegacyTextareaAutoResize","_autoResize","maxRows","borderSize","propValue","onCompositionStart","onCompositionEnd","props","autoStyle","setAutoStyle","_textarea$value","valueLength","setSelectionRange","doAutoResize","uiTextNode","minHeight","maxHeight","overflowY","scrollHeight","singleRowHeight","parseFloat","resize","calculateAutoSizeStyle","flushSync","compositionRef","handleCompositionStart","handleCompositionEnd","shiftKey","useLayoutEffect","desiredSelection","container","previousInlineSize","observer","ResizeObserver","entries","entry","currentInlineSize","contentBoxSize","inlineSize","contentRect","undefined","isInitial","requestAnimationFrame","observe","disconnect","_extends"],"sourceRoot":""}
@@ -0,0 +1,3 @@
1
+ /*! For license information please see chat-input.679aec70.js.LICENSE.txt */
2
+ (globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[7218],{6798:(e,t,n)=>{"use strict";n.d(t,{I:()=>a,K:()=>o,NS:()=>r,t:()=>s});var i=n(87117);let o=function(e){return e.TERMINATE_THE_TASK="TERMINATE_THE_TASK",e}({});const r="bricks/ai-portal/chat-input",a={en:{TERMINATE_THE_TASK:"Terminate the task"},zh:{TERMINATE_THE_TASK:"终止任务"}},s=i.i18n.getFixedT(null,r)},6988:(e,t,n)=>{"use strict";n.r(t),n.d(t,{ChatInput:()=>G});var i,o=n(74635),r=n(70918),a=n(26902),s=n(5536),l=n(86121),c=n(70829),u=n(62740),p=n(18769),d=n.n(p),h=n(7921),f=n(11280),b=n(71451),m=(n(65168),n(87117)),g=n(99126),x=n(53373),v=n.n(x),w=n(6798),A=n(84479);let S,k,E,y,T,z,R,C,M,_,B,N,K,W,F,H,D,I,P;(0,m.initializeI18n)(w.NS,w.I);const j={lib:"antd",icon:"loading-3-quarters",spinning:!0},$={lib:"fa",prefix:"far",icon:"circle-stop"},L=(0,f.wrapBrick)("eo-icon"),O=(0,f.wrapBrick)("ai-portal.icon-button"),{defineElement:q,property:V,event:Y}=(0,h.createDecorators)();let G;var J=new WeakMap,Q=new WeakMap,U=new WeakMap,X=new WeakMap,Z=new WeakMap,ee=new WeakMap,te=new WeakSet,ne=new WeakMap,ie=new WeakMap,oe=new WeakMap;class re extends f.ReactNextElement{constructor(){super(...arguments),(0,o.A)(this,te),(0,r.A)(this,J,k(this)),(0,r.A)(this,Q,(E(this),y(this))),(0,r.A)(this,U,(T(this),z(this))),(0,r.A)(this,X,(R(this),C(this))),(0,r.A)(this,Z,(M(this),_(this))),(0,r.A)(this,ee,(B(this),N(this))),(0,r.A)(this,ne,(F(this),e=>{(0,s.A)(te,this,K).emit(e)})),(0,r.A)(this,ie,H(this)),(0,r.A)(this,oe,(P(this),()=>{(0,s.A)(te,this,D).emit()}))}get placeholder(){return(0,c.A)(J,this)}set placeholder(e){(0,l.A)(J,this,e)}get autoFocus(){return(0,c.A)(Q,this)}set autoFocus(e){(0,l.A)(Q,this,e)}get submitDisabled(){return(0,c.A)(U,this)}set submitDisabled(e){(0,l.A)(U,this,e)}get supportsTerminate(){return(0,c.A)(X,this)}set supportsTerminate(e){(0,l.A)(X,this,e)}get terminating(){return(0,c.A)(Z,this)}set terminating(e){(0,l.A)(Z,this,e)}render(){return d().createElement(ae,{placeholder:this.placeholder,autoFocus:this.autoFocus,submitDisabled:this.submitDisabled,supportsTerminate:this.supportsTerminate,terminating:this.terminating,onSubmit:(0,c.A)(ne,this),onTerminate:(0,c.A)(oe,this)})}}function ae(e){let{placeholder:t,autoFocus:n,submitDisabled:i,supportsTerminate:o,terminating:r,onSubmit:a,onTerminate:s}=e;const l=(0,p.useRef)(null),c=(0,p.useRef)(null),[u,h]=(0,p.useState)(""),f=(0,p.useRef)(""),[m,x]=(0,p.useState)(!1);(0,p.useEffect)((()=>{var e;n&&!i&&(null===(e=c.current)||void 0===e||e.focus())}),[n,i]);const A=(0,p.useCallback)((e=>{!i&&e&&(a(e),f.current="",h(""))}),[i,a]),S=(0,p.useCallback)((e=>{A(e.currentTarget.value)}),[A]),k=(0,p.useCallback)((e=>{f.current=e.target.value,h(e.target.value)}),[]),E=(0,p.useCallback)((()=>{A(f.current)}),[A]);(0,p.useEffect)((()=>{const e=null==l?void 0:l.current;if(!e)return;const t=new g.A((t=>{for(const n of t)n.target===e&&(n.contentBoxSize?n.contentBoxSize[0]?n.contentBoxSize[0].blockSize:n.contentBoxSize.blockSize:n.contentRect.height)>52&&x(!0)}));return t.observe(e),()=>{t.disconnect()}}),[]),(0,p.useEffect)((()=>{u||x(!1)}),[u]);const y=(0,p.useCallback)((e=>{var t;for(const t of e.nativeEvent.composedPath())if(t instanceof HTMLTextAreaElement||t instanceof HTMLButtonElement)return;null===(t=c.current)||void 0===t||t.focus()}),[]);return d().createElement("div",{className:"container",onClick:y},d().createElement("div",{className:v()("box",{wrap:m})},d().createElement("div",{className:"input",ref:l},d().createElement(b.e,{containerRef:l,ref:c,value:u,minRows:1,maxRows:4,borderSize:0,paddingSize:16,autoResize:!0,placeholder:t,submitWhen:"enter-without-shift",onSubmit:S,onChange:k})),d().createElement("div",{className:"toolbar"},i&&o?d().createElement(d().Fragment,null,r?d().createElement(O,{icon:j,disabled:!0}):d().createElement(O,{icon:$,tooltip:(0,w.t)(w.K.TERMINATE_THE_TASK),onClick:s})):d().createElement("button",{className:"btn-send",disabled:i||!u,onClick:E},d().createElement(L,{lib:"fa",icon:"arrow-up"})))))}i=re,({e:[k,E,y,T,z,R,C,M,_,B,N,K,W,F,H,D,I,P],c:[G,S]}=(0,u.A)(i,[q("ai-portal.chat-input",{styleTexts:[A.A],shadowOptions:{delegatesFocus:!0}})],[[V(),1,"placeholder"],[V({type:Boolean}),1,"autoFocus"],[V({type:Boolean}),1,"submitDisabled"],[V({type:Boolean}),1,"supportsTerminate"],[V({type:Boolean}),1,"terminating"],[Y({type:"message.submit"}),1,"messageSubmit",e=>(0,c.A)(ee,e),(e,t)=>(0,l.A)(ee,e,t)],[Y({type:"terminate"}),1,"terminate",e=>(0,c.A)(ie,e),(e,t)=>(0,l.A)(ie,e,t)]],0,(e=>oe.has((0,a.A)(e))),f.ReactNextElement)),S()},53373:(e,t)=>{var n;!function(){"use strict";var i={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=a(e,r(n)))}return e}function r(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return o.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)i.call(e,n)&&e[n]&&(t=a(t,n));return t}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},56548:(e,t,n)=>{"use strict";n.d(t,{w:()=>r});const i="\n min-height: 0!important;\n max-height: none!important;\n height: 0!important;\n visibility: hidden!important;\n overflow: hidden!important;\n position: absolute!important;\n z-index: -1000!important;\n top: 0!important;\n left: 0!important;\n pointer-events: none!important;\n",o=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","font-variant","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break","white-space"];function r(e){const t=window.getComputedStyle(e);return`${o.map((e=>`${e}:${t.getPropertyValue(e)}`)).join(";")};${i}`}},71451:(e,t,n)=>{"use strict";n.d(t,{e:()=>u});var i=n(89575),o=n(18769),r=n(59435),a=n(99126),s=n(56548);let l;const c=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey",u=o.forwardRef(p);function p(e,t){let{autoResize:n,minRows:u,maxRows:p,borderSize:d,paddingSize:h,containerRef:f,value:b,style:m,submitWhen:g,desiredSelectionRef:x,onChange:v,onSubmit:w,onKeyDown:A,onCompositionStart:S,onCompositionEnd:k,...E}=e;const y=null==n||n,[T,z]=(0,o.useState)(null!=b?b:""),R=(0,o.useRef)(null),[C,M]=(0,o.useState)(null);(0,o.useImperativeHandle)(t,(()=>({focus:()=>{const e=R.current;if(e){var t;const n=null===(t=e.value)||void 0===t?void 0:t.length;e.focus(),n&&e.setSelectionRange(n,n)}},element:R.current})),[]);const _=(0,o.useCallback)((()=>{const e=R.current;if(e&&y){const t=function(e,t){const{minRows:n=null,maxRows:i=null,borderSize:o=2,paddingSize:r=8}=null!=t?t:{};let a,c,u;l||(l=document.createElement("textarea"),l.setAttribute("tab-index","-1"),l.setAttribute("aria-hidden","true"),document.body.appendChild(l)),l.setAttribute("style",(0,s.w)(e)),l.value=e.value||e.placeholder||"";let p=l.scrollHeight+o;if(null!==n||null!==i){const e=parseFloat(window.getComputedStyle(l).getPropertyValue("line-height"));null!==n&&(a=e*n+r+o,p=Math.max(a,p)),null!==i&&(c=e*i+r+o,p<=c&&(u="hidden"),p=Math.min(c,p))}const d={height:p,overflowY:u,resize:"none"};return a&&(d.minHeight=a),c&&(d.maxHeight=c),d}(e,{minRows:u,maxRows:p,borderSize:d,paddingSize:h});(0,r.flushSync)((()=>{M(t)}))}}),[y,p,u,d,h]);(0,o.useEffect)((()=>{z(null!=b?b:"")}),[b]),(0,o.useEffect)((()=>{_()}),[_,T]);const B=(0,o.useRef)(!1),N=(0,o.useCallback)((e=>{B.current=!0,null==S||S(e)}),[S]),K=(0,o.useCallback)((e=>{B.current=!1,null==k||k(e)}),[k]),W=(0,o.useCallback)((e=>{B.current||!1!==(null==A?void 0:A(e))&&"Enter"===e.key&&("enter-without-shift"===g?!e.shiftKey:"enter-with-mod"===g&&e[c])&&(e.preventDefault(),e.stopPropagation(),null==w||w(e))}),[A,w,g]);return(0,o.useLayoutEffect)((()=>{const e=null==x?void 0:x.current,t=R.current;if(e&&t){const{start:n,end:i}=e;x.current=null,t.setSelectionRange(n,i)}}),[x,T]),(0,o.useEffect)((()=>{const e=null==f?void 0:f.current;if(!e||!y)return;let t;const n=new a.A((n=>{for(const i of n)if(i.target===e){const e=i.contentBoxSize?i.contentBoxSize[0]?i.contentBoxSize[0].inlineSize:i.contentBoxSize.inlineSize:i.contentRect.width;if(void 0!==e&&e!==t){const n=!t;t=e,n||requestAnimationFrame(_)}}}));return n.observe(e),()=>{n.disconnect()}}),[y,f,_]),o.createElement("textarea",(0,i.A)({},E,{ref:R,value:T,style:{...m,...C},onChange:e=>{z(e.target.value),null==v||v(e)},onCompositionStart:N,onCompositionEnd:K,onKeyDown:W}))}},84479:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var i=n(36758),o=n.n(i),r=n(40935),a=n.n(r)()(o());a.push([e.id,":host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.container{background-color:#fff;border:2px solid #7891ff;border-radius:12px;box-shadow:0px 9px 28px 8px rgba(0,0,0,0.05),0px 6px 16px 0px rgba(0,0,0,0.08),0px 3px 6px -4px rgba(0,0,0,0.12);cursor:text}.container:not(:has(textarea:focus)){background-color:rgba(255,255,255,0.5);border-color:#99c4ff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.box{display:flex;flex-wrap:wrap;border-radius:10px;padding:8px}.input{min-width:0;flex:1}.wrap .input{flex-basis:100%}.input textarea{display:block;width:100%;padding:8px;font:inherit;font-size:16px;line-height:24px;color:var(--antd-input-color);border:none;background:none;height:24px;color:#262626}.input textarea::placeholder{color:#bfbfbf}.toolbar{padding:5px 0 5px 8px;margin-left:auto;display:flex;align-items:center;gap:2px}.btn-send:focus,\ntextarea:focus{outline:none}.btn-send{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--elevo-color-brand);border:none;border-radius:8px;color:#fff}.btn-send:disabled{background:rgba(0,0,0,0.15)}.btn-send:not(:disabled){cursor:pointer}.btn-send:not(:disabled):hover{background:#5166ff}.btn-send:not(:disabled):active{background:#1e33cc}",""]);const s=a.toString()}}]);
3
+ //# sourceMappingURL=chat-input.679aec70.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/chat-input.679aec70.js","mappings":"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","sources":["webpack:///./src/chat-input/i18n.ts","webpack:///./src/chat-input/index.tsx","webpack:///../../node_modules/classnames/index.js","webpack:///../../../src/utils/getMirroredStyle.ts","webpack:///../../../src/utils/calculateAutoSizeStyle.ts","webpack:///../../src/TextareaAutoResize.tsx","webpack:///./src/chat-input/styles.shadow.css"],"sourcesContent":["import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n TERMINATE_THE_TASK = \"TERMINATE_THE_TASK\",\n}\n\nconst en: Locale = {\n TERMINATE_THE_TASK: \"Terminate the task\",\n};\n\nconst zh: Locale = {\n TERMINATE_THE_TASK: \"终止任务\",\n};\n\nexport const NS = \"bricks/ai-portal/chat-input\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n","import React, { useCallback, useEffect, useRef, useState } from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport {\n TextareaAutoResize,\n type TextareaAutoResizeRef,\n} from \"@next-shared/form\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport classNames from \"classnames\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport type { IconButton, IconButtonProps } from \"../icon-button\";\nimport styleText from \"./styles.shadow.css\";\n\ninitializeI18n(NS, locales);\n\nconst ICON_LOADING: GeneralIconProps = {\n lib: \"antd\",\n icon: \"loading-3-quarters\",\n spinning: true,\n};\n\nconst ICON_STOP: GeneralIconProps = {\n lib: \"fa\",\n prefix: \"far\",\n icon: \"circle-stop\",\n};\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedIconButton = wrapBrick<IconButton, IconButtonProps>(\n \"ai-portal.icon-button\"\n);\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface ChatInputProps {\n placeholder?: string;\n autoFocus?: boolean;\n submitDisabled?: boolean;\n supportsTerminate?: boolean;\n terminating?: boolean;\n}\n\nexport interface ChatInputEvents {\n \"message.submit\": CustomEvent<string>;\n terminate: Event;\n}\n\nexport interface ChatInputMapEvents {\n onMessageSubmit: \"message.submit\";\n onTerminate: \"terminate\";\n}\n\n/**\n * 构件 `ai-portal.chat-input`\n */\nexport\n@defineElement(\"ai-portal.chat-input\", {\n styleTexts: [styleText],\n shadowOptions: {\n delegatesFocus: true,\n },\n})\nclass ChatInput extends ReactNextElement implements ChatInputProps {\n @property()\n accessor placeholder: string | undefined;\n\n @property({ type: Boolean })\n accessor autoFocus: boolean | undefined;\n\n @property({ type: Boolean })\n accessor submitDisabled: boolean | undefined;\n\n @property({ type: Boolean })\n accessor supportsTerminate: boolean | undefined;\n\n @property({ type: Boolean })\n accessor terminating: boolean | undefined;\n\n @event({ type: \"message.submit\" })\n accessor #messageSubmit!: EventEmitter<string>;\n\n #handleMessageSubmit = (value: string) => {\n this.#messageSubmit.emit(value);\n };\n\n @event({ type: \"terminate\" })\n accessor #terminate!: EventEmitter<void>;\n\n #handleTerminate = () => {\n this.#terminate.emit();\n };\n\n render() {\n return (\n <ChatInputComponent\n placeholder={this.placeholder}\n autoFocus={this.autoFocus}\n submitDisabled={this.submitDisabled}\n supportsTerminate={this.supportsTerminate}\n terminating={this.terminating}\n onSubmit={this.#handleMessageSubmit}\n onTerminate={this.#handleTerminate}\n />\n );\n }\n}\n\ninterface ChatInputComponentProps extends ChatInputProps {\n onSubmit: (value: string) => void;\n onTerminate: () => void;\n}\n\nfunction ChatInputComponent({\n placeholder,\n autoFocus,\n submitDisabled,\n supportsTerminate,\n terminating,\n onSubmit,\n onTerminate,\n}: ChatInputComponentProps) {\n const containerRef = useRef<HTMLDivElement>(null);\n const textareaRef = useRef<TextareaAutoResizeRef>(null);\n const [value, setValue] = useState(\"\");\n const valueRef = useRef(\"\");\n const [wrap, setWrap] = useState(false);\n\n useEffect(() => {\n if (autoFocus && !submitDisabled) {\n textareaRef.current?.focus();\n }\n }, [autoFocus, submitDisabled]);\n\n const onBeforeSubmit = useCallback(\n (value: string) => {\n if (submitDisabled || !value) {\n return;\n }\n\n onSubmit(value);\n valueRef.current = \"\";\n setValue(\"\");\n },\n [submitDisabled, onSubmit]\n );\n\n const handleSubmit = useCallback(\n (e: React.FormEvent<HTMLTextAreaElement>) => {\n onBeforeSubmit(e.currentTarget.value);\n },\n [onBeforeSubmit]\n );\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n valueRef.current = e.target.value;\n setValue(e.target.value);\n },\n []\n );\n\n const handleSubmitClick = useCallback(() => {\n onBeforeSubmit(valueRef.current);\n }, [onBeforeSubmit]);\n\n // istanbul ignore next\n useEffect(() => {\n const container = containerRef?.current;\n if (!container) {\n return;\n }\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === container) {\n const currentBlockSize = entry.contentBoxSize\n ? entry.contentBoxSize[0]\n ? entry.contentBoxSize[0].blockSize\n : (entry.contentBoxSize as unknown as ResizeObserverSize)\n .blockSize\n : entry.contentRect.height;\n if (currentBlockSize > 52) {\n setWrap(true);\n }\n }\n }\n });\n observer.observe(container);\n return () => {\n observer.disconnect();\n };\n }, []);\n\n useEffect(() => {\n if (!value) {\n setWrap(false);\n }\n }, [value]);\n\n const handleContainerClick = useCallback((e: React.MouseEvent) => {\n for (const item of e.nativeEvent.composedPath()) {\n if (\n item instanceof HTMLTextAreaElement ||\n item instanceof HTMLButtonElement\n ) {\n return;\n }\n }\n textareaRef.current?.focus();\n }, []);\n\n return (\n <div className=\"container\" onClick={handleContainerClick}>\n <div className={classNames(\"box\", { wrap })}>\n <div className=\"input\" ref={containerRef}>\n <TextareaAutoResize\n containerRef={containerRef}\n ref={textareaRef}\n value={value}\n minRows={1}\n maxRows={4}\n borderSize={0}\n paddingSize={16}\n autoResize\n placeholder={placeholder}\n submitWhen=\"enter-without-shift\"\n onSubmit={handleSubmit}\n onChange={handleChange}\n />\n </div>\n <div className=\"toolbar\">\n {!submitDisabled || !supportsTerminate ? (\n <button\n className=\"btn-send\"\n disabled={submitDisabled || !value}\n onClick={handleSubmitClick}\n >\n <WrappedIcon lib=\"fa\" icon=\"arrow-up\" />\n </button>\n ) : (\n <>\n {terminating ? (\n <WrappedIconButton icon={ICON_LOADING} disabled />\n ) : (\n <WrappedIconButton\n icon={ICON_STOP}\n tooltip={t(K.TERMINATE_THE_TASK)}\n onClick={onTerminate}\n />\n )}\n </>\n )}\n </div>\n </div>\n </div>\n );\n}\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","const HIDDEN_STYLE = `\n min-height: 0!important;\n max-height: none!important;\n height: 0!important;\n visibility: hidden!important;\n overflow: hidden!important;\n position: absolute!important;\n z-index: -1000!important;\n top: 0!important;\n left: 0!important;\n pointer-events: none!important;\n`;\n\nconst SIZING_STYLE = [\n \"letter-spacing\",\n \"line-height\",\n \"padding-top\",\n \"padding-bottom\",\n \"font-family\",\n \"font-weight\",\n \"font-size\",\n \"font-variant\",\n \"text-rendering\",\n \"text-transform\",\n \"width\",\n \"text-indent\",\n \"padding-left\",\n \"padding-right\",\n \"border-width\",\n \"box-sizing\",\n \"word-break\",\n \"white-space\",\n];\n\n/**\n * 创建一个镜像元素,用于计算光标位置或文本尺寸。\n */\nexport function getMirroredStyle(element: HTMLElement) {\n const uiTextNodeStyle = window.getComputedStyle(element);\n const sizingStyle = SIZING_STYLE.map(\n (name) => `${name}:${uiTextNodeStyle.getPropertyValue(name)}`\n ).join(\";\");\n return `${sizingStyle};${HIDDEN_STYLE}`;\n}\n","// istanbul ignore file\nimport type React from \"react\";\nimport { getMirroredStyle } from \"./getMirroredStyle.js\";\n\nlet hiddenTextarea: HTMLTextAreaElement | undefined;\n\nexport interface AutoSizeOptions {\n minRows?: number | null;\n maxRows?: number | null;\n borderSize?: number;\n paddingSize?: number;\n}\n\n/**\n * 计算 textarea 高度\n * https://github.com/react-component/textarea/blob/1c0026fbe30e5f7dff1fca695b2cf262246381ca/src/calculateNodeHeight.tsx\n */\nexport default function calculateAutoSizeStyle(\n uiTextNode: HTMLTextAreaElement,\n options?: AutoSizeOptions\n): React.CSSProperties {\n const {\n minRows = null,\n maxRows = null,\n borderSize = 2,\n paddingSize = 8,\n } = options ?? {};\n\n if (!hiddenTextarea) {\n hiddenTextarea = document.createElement(\"textarea\");\n hiddenTextarea.setAttribute(\"tab-index\", \"-1\");\n hiddenTextarea.setAttribute(\"aria-hidden\", \"true\");\n document.body.appendChild(hiddenTextarea);\n }\n\n // equal style\n hiddenTextarea.setAttribute(\"style\", getMirroredStyle(uiTextNode));\n hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || \"\";\n\n let minHeight: number | undefined;\n let maxHeight: number | undefined;\n let overflowY: React.CSSProperties[\"overflowY\"];\n\n let height = hiddenTextarea.scrollHeight + borderSize;\n\n if (minRows !== null || maxRows !== null) {\n const singleRowHeight =\n process.env.NODE_ENV === \"test\"\n ? 22\n : parseFloat(\n window\n .getComputedStyle(hiddenTextarea)\n .getPropertyValue(\"line-height\")\n );\n if (minRows !== null) {\n minHeight = singleRowHeight * minRows + paddingSize + borderSize;\n height = Math.max(minHeight, height);\n }\n if (maxRows !== null) {\n maxHeight = singleRowHeight * maxRows + paddingSize + borderSize;\n if (height <= maxHeight) {\n overflowY = \"hidden\";\n }\n height = Math.min(maxHeight, height);\n }\n }\n\n const style: React.CSSProperties = {\n height,\n overflowY,\n resize: \"none\",\n };\n\n if (minHeight) {\n style.minHeight = minHeight;\n }\n if (maxHeight) {\n style.maxHeight = maxHeight;\n }\n\n return style;\n}\n","import React, {\n useCallback,\n useEffect,\n useImperativeHandle,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport { flushSync } from \"react-dom\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nimport calculateAutoSizeStyle from \"./utils/calculateAutoSizeStyle.js\";\n\n// istanbul ignore next\nconst modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n\nexport interface TextareaAutoResizeProps\n extends React.DetailedHTMLProps<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n HTMLTextAreaElement\n > {\n /** @default true */\n autoResize?: boolean;\n minRows?: number | null;\n maxRows?: number | null;\n /** @default 2 */\n borderSize?: number;\n /** @default 8 */\n paddingSize?: number;\n containerRef?: React.RefObject<HTMLElement>;\n submitWhen?: \"enter-without-shift\" | \"enter-with-mod\";\n desiredSelectionRef?: React.MutableRefObject<{\n start: number;\n end: number;\n } | null>;\n onChange?: (e: React.ChangeEvent<HTMLTextAreaElement>) => void;\n /**\n * The handler can return false to prevent default behavior (submit)\n */\n onKeyDown?: (e: React.KeyboardEvent<HTMLTextAreaElement>) => void | false;\n}\n\nexport interface TextareaAutoResizeRef {\n focus(): void;\n element: HTMLTextAreaElement | null;\n}\n\nexport const TextareaAutoResize = React.forwardRef<\n TextareaAutoResizeRef,\n TextareaAutoResizeProps\n>(LegacyTextareaAutoResize);\n\nfunction LegacyTextareaAutoResize(\n {\n autoResize: _autoResize,\n minRows,\n maxRows,\n borderSize,\n paddingSize,\n containerRef,\n value: propValue,\n style,\n submitWhen,\n desiredSelectionRef,\n onChange,\n onSubmit,\n onKeyDown,\n onCompositionStart,\n onCompositionEnd,\n ...props\n }: TextareaAutoResizeProps,\n ref: React.ForwardedRef<TextareaAutoResizeRef>\n): React.JSX.Element {\n const autoResize = _autoResize ?? true;\n const [value, setValue] = useState(propValue ?? \"\");\n const textareaRef = useRef<HTMLTextAreaElement>(null);\n const [autoStyle, setAutoStyle] = useState<React.CSSProperties | null>(null);\n\n useImperativeHandle(\n ref,\n () => ({\n focus: () => {\n const textarea = textareaRef.current;\n // istanbul ignore else: defensive check\n if (textarea) {\n const valueLength = textarea.value?.length;\n textarea.focus();\n valueLength && textarea.setSelectionRange(valueLength, valueLength);\n }\n },\n element: textareaRef.current,\n }),\n []\n );\n\n const doAutoResize = useCallback(() => {\n const textarea = textareaRef.current;\n if (textarea && autoResize) {\n const style = calculateAutoSizeStyle(textarea, {\n minRows,\n maxRows,\n borderSize,\n paddingSize,\n });\n // istanbul ignore next\n if (process.env.NODE_ENV === \"test\") {\n setAutoStyle(style);\n } else {\n flushSync(() => {\n setAutoStyle(style);\n });\n }\n }\n }, [autoResize, maxRows, minRows, borderSize, paddingSize]);\n\n const handleInputChange = (\n e: React.ChangeEvent<HTMLTextAreaElement>\n ): void => {\n setValue(e.target.value);\n onChange?.(e);\n };\n\n useEffect(() => {\n setValue(propValue ?? \"\");\n }, [propValue]);\n\n useEffect(() => {\n doAutoResize();\n }, [doAutoResize, value]);\n\n const compositionRef = useRef(false);\n\n const handleCompositionStart = useCallback(\n (e: React.CompositionEvent<HTMLTextAreaElement>) => {\n compositionRef.current = true;\n onCompositionStart?.(e);\n },\n [onCompositionStart]\n );\n\n const handleCompositionEnd = useCallback(\n (e: React.CompositionEvent<HTMLTextAreaElement>) => {\n compositionRef.current = false;\n onCompositionEnd?.(e);\n },\n [onCompositionEnd]\n );\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n if (compositionRef.current) {\n // Ignore key events during composition\n return;\n }\n\n if (onKeyDown?.(e) === false) {\n return;\n }\n\n if (\n e.key === \"Enter\" &&\n (submitWhen === \"enter-without-shift\"\n ? !e.shiftKey\n : submitWhen === \"enter-with-mod\" && e[modKey])\n ) {\n e.preventDefault();\n e.stopPropagation();\n onSubmit?.(e);\n }\n },\n [onKeyDown, onSubmit, submitWhen]\n );\n\n useLayoutEffect(() => {\n const desiredSelection = desiredSelectionRef?.current;\n const textarea = textareaRef.current;\n if (desiredSelection && textarea) {\n const { start, end } = desiredSelection;\n desiredSelectionRef.current = null;\n textarea.setSelectionRange(start, end);\n }\n }, [desiredSelectionRef, value]);\n\n // istanbul ignore next\n useEffect(() => {\n const container = containerRef?.current;\n if (!container || !autoResize) {\n return;\n }\n let previousInlineSize: number | undefined;\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === container) {\n // istanbul ignore next: compatibility\n const currentInlineSize = entry.contentBoxSize\n ? entry.contentBoxSize[0]\n ? entry.contentBoxSize[0].inlineSize\n : (entry.contentBoxSize as unknown as ResizeObserverSize)\n .inlineSize\n : entry.contentRect.width;\n if (\n currentInlineSize !== undefined &&\n currentInlineSize !== previousInlineSize\n ) {\n const isInitial = !previousInlineSize;\n previousInlineSize = currentInlineSize;\n if (!isInitial) {\n requestAnimationFrame(doAutoResize);\n }\n }\n }\n }\n });\n observer.observe(container);\n return () => {\n observer.disconnect();\n };\n }, [autoResize, containerRef, doAutoResize]);\n\n return (\n <textarea\n {...props}\n ref={textareaRef}\n value={value}\n style={{\n ...style,\n ...autoStyle,\n }}\n onChange={handleInputChange}\n onCompositionStart={handleCompositionStart}\n onCompositionEnd={handleCompositionEnd}\n onKeyDown={handleKeyDown}\n />\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.container{background-color:#fff;border:2px solid #7891ff;border-radius:12px;box-shadow:0px 9px 28px 8px rgba(0,0,0,0.05),0px 6px 16px 0px rgba(0,0,0,0.08),0px 3px 6px -4px rgba(0,0,0,0.12);cursor:text}.container:not(:has(textarea:focus)){background-color:rgba(255,255,255,0.5);border-color:#99c4ff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.box{display:flex;flex-wrap:wrap;border-radius:10px;padding:8px}.input{min-width:0;flex:1}.wrap .input{flex-basis:100%}.input textarea{display:block;width:100%;padding:8px;font:inherit;font-size:16px;line-height:24px;color:var(--antd-input-color);border:none;background:none;height:24px;color:#262626}.input textarea::placeholder{color:#bfbfbf}.toolbar{padding:5px 0 5px 8px;margin-left:auto;display:flex;align-items:center;gap:2px}.btn-send:focus,\ntextarea:focus{outline:none}.btn-send{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--elevo-color-brand);border:none;border-radius:8px;color:#fff}.btn-send:disabled{background:rgba(0,0,0,0.15)}.btn-send:not(:disabled){cursor:pointer}.btn-send:not(:disabled):hover{background:#5166ff}.btn-send:not(:disabled):active{background:#1e33cc}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["K","NS","locales","en","TERMINATE_THE_TASK","zh","t","i18n","getFixedT","initializeI18n","ICON_LOADING","lib","icon","spinning","ICON_STOP","prefix","WrappedIcon","wrapBrick","WrappedIconButton","defineElement","property","event","createDecorators","_ChatInput","_A","WeakMap","_B","_C","_D","_E","_F","_ChatInput_brand","WeakSet","_handleMessageSubmit","_G","_handleTerminate","ChatInput","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_init_placeholder","_init_extra_placeholder","_init_autoFocus","_init_extra_autoFocus","_init_submitDisabled","_init_extra_submitDisabled","_init_supportsTerminate","_init_extra_supportsTerminate","_init_terminating","_init_extra_terminating","_init_messageSubmit","_init_extra_messageSubmit","value","_classPrivateGetter","this","_get_messageSubmit","emit","_init_terminate","_init_extra_terminate","_get_terminate","placeholder","_classPrivateFieldGet","v","_classPrivateFieldSet","autoFocus","submitDisabled","supportsTerminate","terminating","render","React","ChatInputComponent","onSubmit","onTerminate","_ref","containerRef","useRef","textareaRef","setValue","useState","valueRef","wrap","setWrap","useEffect","_textareaRef$current","current","focus","onBeforeSubmit","useCallback","handleSubmit","e","currentTarget","handleChange","target","handleSubmitClick","container","observer","ResizeObserver","entries","entry","contentBoxSize","blockSize","contentRect","height","observe","disconnect","handleContainerClick","_textareaRef$current2","item","nativeEvent","composedPath","HTMLTextAreaElement","HTMLButtonElement","className","onClick","classNames","ref","TextareaAutoResize","minRows","maxRows","borderSize","paddingSize","autoResize","submitWhen","onChange","disabled","tooltip","_ChatInput2","_set_messageSubmit","_set_terminate","c","_initClass","_applyDecs","styleTexts","styleText","shadowOptions","delegatesFocus","type","Boolean","o","_","has","_checkInRHS","hasOwn","hasOwnProperty","classes","i","length","arg","appendClass","parseValue","Array","isArray","apply","toString","Object","prototype","includes","key","call","newClass","module","exports","default","HIDDEN_STYLE","SIZING_STYLE","getMirroredStyle","element","uiTextNodeStyle","window","getComputedStyle","map","name","getPropertyValue","join","hiddenTextarea","modKey","test","navigator","platform","LegacyTextareaAutoResize","_autoResize","propValue","style","desiredSelectionRef","onKeyDown","onCompositionStart","onCompositionEnd","props","autoStyle","setAutoStyle","useImperativeHandle","textarea","_textarea$value","valueLength","setSelectionRange","doAutoResize","uiTextNode","options","minHeight","maxHeight","overflowY","document","createElement","setAttribute","body","appendChild","scrollHeight","singleRowHeight","parseFloat","Math","max","min","resize","calculateAutoSizeStyle","flushSync","compositionRef","handleCompositionStart","handleCompositionEnd","handleKeyDown","shiftKey","preventDefault","stopPropagation","useLayoutEffect","desiredSelection","start","end","previousInlineSize","currentInlineSize","inlineSize","width","undefined","isInitial","requestAnimationFrame","_extends","___CSS_LOADER_EXPORT___","push","id"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[366],{38208:(e,t,i)=>{i.r(t),i.d(t,{ChatStream:()=>Me});var s,a=i(74635),h=i(70918),n=i(26902),r=i(5536),o=i(86121),A=i(70829),p=i(62740),d=i(18769),w=i.n(d),l=i(7921),c=i(11280),k=(i(65168),i(87117)),u=i(92914),b=i(82515),m=i(16572);let v,y,M,W,F,f,S,g,D,I,O,R,U,V,T,E,_,C,B,q,x,N,z,L,j,G,H,J,K,P,Q,X,Y,Z,$,ee,te,ie,se,ae,he,ne,re,oe,Ae,pe,de,we,le,ce;(0,k.initializeI18n)(u.NS,u.I);const{defineElement:ke,property:ue,event:be,method:me}=(0,l.createDecorators)(),ve=(0,d.forwardRef)(b.L),ye=(0,d.forwardRef)(m.C);let Me;var We=new WeakMap,Fe=new WeakMap,fe=new WeakMap,Se=new WeakMap,ge=new WeakMap,De=new WeakMap,Ie=new WeakMap,Oe=new WeakMap,Re=new WeakMap,Ue=new WeakMap,Ve=new WeakMap,Te=new WeakMap,Ee=new WeakMap,_e=new WeakSet,Ce=new WeakMap,Be=new WeakMap,qe=new WeakMap,xe=new WeakMap,Ne=new WeakMap,ze=new WeakMap,Le=new WeakMap,je=new WeakMap,Ge=new WeakMap,He=new WeakMap,Je=new WeakMap,Ke=new WeakMap;class Pe extends c.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,_e),(0,h.A)(this,We,(v(this),M(this))),(0,h.A)(this,Fe,(W(this),F(this))),(0,h.A)(this,fe,(f(this),S(this))),(0,h.A)(this,Se,(g(this),D(this))),(0,h.A)(this,ge,(I(this),O(this))),(0,h.A)(this,De,(R(this),U(this))),(0,h.A)(this,Ie,(V(this),T(this))),(0,h.A)(this,Oe,(E(this),_(this))),(0,h.A)(this,Re,(C(this),B(this))),(0,h.A)(this,Ue,(q(this),x(this))),(0,h.A)(this,Ve,(N(this),z(this))),(0,h.A)(this,Te,(L(this),j(this))),(0,h.A)(this,Ee,(G(this),H(this))),(0,h.A)(this,Ce,(P(this),()=>{(0,r.A)(_e,this,J).emit()})),(0,h.A)(this,Be,Q(this)),(0,h.A)(this,qe,(Z(this),()=>{(0,r.A)(_e,this,X).emit()})),(0,h.A)(this,xe,$(this)),(0,h.A)(this,Ne,(ie(this),e=>{(0,r.A)(_e,this,ee).emit(e)})),(0,h.A)(this,ze,se(this)),(0,h.A)(this,Le,(ne(this),e=>{(0,r.A)(_e,this,ae).emit(e)})),(0,h.A)(this,je,re(this)),(0,h.A)(this,Ge,(pe(this),()=>{(0,r.A)(_e,this,oe).emit("canvas")})),(0,h.A)(this,He,de(this)),(0,h.A)(this,Je,(ce(this),e=>{(0,r.A)(_e,this,we).emit(e)})),(0,h.A)(this,Ke,(0,d.createRef)())}get conversationId(){return(0,A.A)(We,this)}set conversationId(e){(0,o.A)(We,this,e)}get initialRequest(){return(0,A.A)(Fe,this)}set initialRequest(e){(0,o.A)(Fe,this,e)}get taskId(){return(0,A.A)(fe,this)}set taskId(e){(0,o.A)(fe,this,e)}get replay(){return(0,A.A)(Se,this)}set replay(e){(0,o.A)(Se,this,e)}get replayDelay(){return(0,A.A)(ge,this)}set replayDelay(e){(0,o.A)(ge,this,e)}get supports(){return(0,A.A)(De,this)}set supports(e){(0,o.A)(De,this,e)}get showFeedback(){return(0,A.A)(Ie,this)}set showFeedback(e){(0,o.A)(Ie,this,e)}get showFeedbackAfterFailed(){return(0,A.A)(Oe,this)}set showFeedbackAfterFailed(e){(0,o.A)(Oe,this,e)}get showFeedbackOnView(){return(0,A.A)(Re,this)}set showFeedbackOnView(e){(0,o.A)(Re,this,e)}get showUiSwitch(){return(0,A.A)(Ue,this)}set showUiSwitch(e){(0,o.A)(Ue,this,e)}get hideMermaid(){return(0,A.A)(Ve,this)}set hideMermaid(e){(0,o.A)(Ve,this,e)}get previewUrlTemplate(){return(0,A.A)(Te,this)}set previewUrlTemplate(e){(0,o.A)(Te,this,e)}resumed(){var e,t;null===(e=(0,A.A)(Ke,this).current)||void 0===e||null===(t=e.resumed)||void 0===t||t.call(e)}feedbackSubmitDone(){var e;null===(e=(0,A.A)(Ke,this).current)||void 0===e||e.feedbackSubmitDone()}feedbackSubmitFailed(){var e;null===(e=(0,A.A)(Ke,this).current)||void 0===e||e.feedbackSubmitFailed()}feedbackOnViewDone(e){var t;null===(t=(0,A.A)(Ke,this).current)||void 0===t||t.feedbackOnViewDone(e)}render(){const e=this.conversationId?ye:ve;return w().createElement(e,{conversationId:this.conversationId,initialRequest:this.initialRequest,taskId:this.taskId,replay:this.replay,replayDelay:this.replayDelay,supports:this.supports,showFeedback:this.showFeedback,showFeedbackAfterFailed:this.showFeedbackAfterFailed,showFeedbackOnView:this.showFeedbackOnView,showUiSwitch:this.showUiSwitch,previewUrlTemplate:this.previewUrlTemplate,onShare:(0,A.A)(Ce,this),onTerminate:(0,A.A)(qe,this),onSubmitFeedback:(0,A.A)(Ne,this),onSwitchToCanvas:(0,A.A)(Ge,this),onFeedbackOnView:(0,A.A)(Le,this),onDetailChange:(0,A.A)(Je,this)})}}s=Pe,({e:[M,W,F,f,S,g,D,I,O,R,U,V,T,E,_,C,B,q,x,N,z,L,j,G,H,J,K,P,Q,X,Y,Z,$,ee,te,ie,se,ae,he,ne,re,oe,Ae,pe,de,we,le,ce,v],c:[Me,y]}=(0,p.A)(s,[ke("ai-portal.chat-stream",{shadowOptions:!1})],[[ue(),1,"conversationId"],[ue({attribute:!1,render:!1}),1,"initialRequest"],[ue(),1,"taskId"],[ue({type:Boolean}),1,"replay"],[ue({type:Number}),1,"replayDelay"],[ue({attribute:!1}),1,"supports"],[ue({type:Boolean}),1,"showFeedback"],[ue({type:Boolean}),1,"showFeedbackAfterFailed"],[ue({type:Boolean}),1,"showFeedbackOnView"],[ue({type:Boolean}),1,"showUiSwitch"],[ue({type:Boolean,render:!1}),1,"hideMermaid"],[ue(),1,"previewUrlTemplate"],[be({type:"share"}),1,"shareEvent",e=>(0,A.A)(Ee,e),(e,t)=>(0,o.A)(Ee,e,t)],[be({type:"terminate"}),1,"terminateEvent",e=>(0,A.A)(Be,e),(e,t)=>(0,o.A)(Be,e,t)],[be({type:"feedback.submit"}),1,"feedbackSubmitEvent",e=>(0,A.A)(xe,e),(e,t)=>(0,o.A)(xe,e,t)],[be({type:"feedback.on.view"}),1,"feedbackOnViewEvent",e=>(0,A.A)(ze,e),(e,t)=>(0,o.A)(ze,e,t)],[be({type:"ui.switch"}),1,"switch",e=>(0,A.A)(je,e),(e,t)=>(0,o.A)(je,e,t)],[be({type:"detail.change"}),1,"detailChange",e=>(0,A.A)(He,e),(e,t)=>(0,o.A)(He,e,t)],[me(),2,"resumed"],[me(),2,"feedbackSubmitDone"],[me(),2,"feedbackSubmitFailed"],[me(),2,"feedbackOnViewDone"]],0,(e=>Ke.has((0,n.A)(e))),c.ReactNextElement)),y()}}]);
2
+ //# sourceMappingURL=chat-stream.a2e40a99.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/chat-stream.a2e40a99.js","mappings":"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","sources":["webpack:///./src/chat-stream/index.tsx"],"sourcesContent":["// istanbul ignore file: experimental\nimport React, { createRef, forwardRef } from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { NS, locales } from \"./i18n.js\";\nimport type { FeedbackDetail } from \"../cruise-canvas/interfaces.js\";\nimport { LegacyChatStreamComponent } from \"./LegacyChatStream.js\";\nimport { ChatStreamComponent } from \"./ChatStream.js\";\nimport type { RequestStore } from \"../shared/interfaces.js\";\n\ninitializeI18n(NS, locales);\n\nconst { defineElement, property, event, method } = createDecorators();\n\nexport interface ChatStreamProps {\n conversationId?: string;\n initialRequest?: RequestStore | null;\n taskId?: string;\n replay?: boolean;\n replayDelay?: number;\n supports?: Record<string, boolean>;\n showFeedback?: boolean;\n showFeedbackAfterFailed?: boolean;\n showFeedbackOnView?: boolean;\n showUiSwitch?: boolean;\n previewUrlTemplate?: string;\n}\n\nexport interface ConversationDetail {\n projectId?: string;\n}\n\nconst ForwardedLegacyChatStreamComponent = forwardRef(\n LegacyChatStreamComponent\n);\n\nconst ForwardedChatStreamComponent = forwardRef(ChatStreamComponent);\n\n/**\n * 构件 `ai-portal.chat-stream`\n */\nexport\n@defineElement(\"ai-portal.chat-stream\", {\n // Will wrap v2 bricks which don't support in shadow DOM.\n shadowOptions: false,\n})\nclass ChatStream extends ReactNextElement implements ChatStreamProps {\n @property()\n accessor conversationId: string | undefined;\n\n /** 初始请求数据。仅初始设置有效。 */\n @property({ attribute: false, render: false })\n accessor initialRequest: RequestStore | undefined | null;\n\n @property()\n accessor taskId: string | undefined;\n\n /** 是否启用回放。仅初始设置有效。 */\n @property({ type: Boolean })\n accessor replay: boolean | undefined;\n\n /**\n * 设置回放时消息之间的时间间隔,单位为秒。仅初始设置有效。\n *\n * @default 2\n */\n @property({ type: Number })\n accessor replayDelay: number | undefined;\n\n @property({ attribute: false })\n accessor supports: Record<string, boolean> | undefined;\n\n @property({ type: Boolean })\n accessor showFeedback: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showFeedbackAfterFailed: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showFeedbackOnView: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showUiSwitch: boolean | undefined;\n\n @property({ type: Boolean, render: false })\n accessor hideMermaid: boolean | undefined;\n\n @property()\n accessor previewUrlTemplate: string | undefined;\n\n @event({ type: \"share\" })\n accessor #shareEvent!: EventEmitter<void>;\n\n #onShare = () => {\n this.#shareEvent.emit();\n };\n\n @event({ type: \"terminate\" })\n accessor #terminateEvent!: EventEmitter<void>;\n\n #onTerminate = () => {\n this.#terminateEvent.emit();\n };\n\n @event({ type: \"feedback.submit\" })\n accessor #feedbackSubmitEvent!: EventEmitter<FeedbackDetail>;\n\n #onSubmitFeedback = (detail: FeedbackDetail) => {\n this.#feedbackSubmitEvent.emit(detail);\n };\n\n @event({ type: \"feedback.on.view\" })\n accessor #feedbackOnViewEvent!: EventEmitter<string>;\n\n #onFeedbackOnView = (viewId: string) => {\n this.#feedbackOnViewEvent.emit(viewId);\n };\n\n @event({ type: \"ui.switch\" })\n accessor #switch!: EventEmitter<\"canvas\">;\n\n #onSwitchToCanvas = () => {\n this.#switch.emit(\"canvas\");\n };\n\n @event({ type: \"detail.change\" })\n accessor #detailChange!: EventEmitter<ConversationDetail>;\n\n #onDetailChange = (detail: ConversationDetail) => {\n this.#detailChange.emit(detail);\n };\n\n #ref = createRef<ChatStreamRef>();\n\n @method()\n resumed() {\n this.#ref.current?.resumed?.();\n }\n\n @method()\n feedbackSubmitDone() {\n this.#ref.current?.feedbackSubmitDone();\n }\n\n @method()\n feedbackSubmitFailed() {\n this.#ref.current?.feedbackSubmitFailed();\n }\n\n @method()\n feedbackOnViewDone(viewId: string) {\n this.#ref.current?.feedbackOnViewDone(viewId);\n }\n\n render() {\n const Component = this.conversationId\n ? ForwardedChatStreamComponent\n : ForwardedLegacyChatStreamComponent;\n return (\n <Component\n conversationId={this.conversationId!}\n initialRequest={this.initialRequest}\n taskId={this.taskId}\n replay={this.replay}\n replayDelay={this.replayDelay}\n supports={this.supports}\n showFeedback={this.showFeedback}\n showFeedbackAfterFailed={this.showFeedbackAfterFailed}\n showFeedbackOnView={this.showFeedbackOnView}\n showUiSwitch={this.showUiSwitch}\n previewUrlTemplate={this.previewUrlTemplate}\n onShare={this.#onShare}\n onTerminate={this.#onTerminate}\n onSubmitFeedback={this.#onSubmitFeedback}\n onSwitchToCanvas={this.#onSwitchToCanvas}\n onFeedbackOnView={this.#onFeedbackOnView}\n onDetailChange={this.#onDetailChange}\n />\n );\n }\n}\n\nexport interface ChatStreamRef {\n resumed?: () => void;\n feedbackSubmitDone: () => void;\n feedbackSubmitFailed: () => void;\n feedbackOnViewDone: (viewId: string) => void;\n}\n"],"names":["initializeI18n","NS","locales","defineElement","property","event","method","createDecorators","ForwardedLegacyChatStreamComponent","forwardRef","LegacyChatStreamComponent","ForwardedChatStreamComponent","ChatStreamComponent","_ChatStream","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_ChatStream_brand","WeakSet","_onShare","_N","_onTerminate","_O","_onSubmitFeedback","_P","_onFeedbackOnView","_Q","_onSwitchToCanvas","_R","_onDetailChange","_ref","ChatStream","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_initProto","_init_conversationId","_init_extra_conversationId","_init_initialRequest","_init_extra_initialRequest","_init_taskId","_init_extra_taskId","_init_replay","_init_extra_replay","_init_replayDelay","_init_extra_replayDelay","_init_supports","_init_extra_supports","_init_showFeedback","_init_extra_showFeedback","_init_showFeedbackAfterFailed","_init_extra_showFeedbackAfterFailed","_init_showFeedbackOnView","_init_extra_showFeedbackOnView","_init_showUiSwitch","_init_extra_showUiSwitch","_init_hideMermaid","_init_extra_hideMermaid","_init_previewUrlTemplate","_init_extra_previewUrlTemplate","_init_shareEvent","_init_extra_shareEvent","_classPrivateGetter","this","_get_shareEvent","emit","_init_terminateEvent","_init_extra_terminateEvent","_get_terminateEvent","_init_feedbackSubmitEvent","_init_extra_feedbackSubmitEvent","detail","_get_feedbackSubmitEvent","_init_feedbackOnViewEvent","_init_extra_feedbackOnViewEvent","viewId","_get_feedbackOnViewEvent","_init_switch","_init_extra_switch","_get_switch","_init_detailChange","_init_extra_detailChange","_get_detailChange","createRef","conversationId","_classPrivateFieldGet","v","_classPrivateFieldSet","initialRequest","taskId","replay","replayDelay","supports","showFeedback","showFeedbackAfterFailed","showFeedbackOnView","showUiSwitch","hideMermaid","previewUrlTemplate","resumed","_classPrivateFieldGet2","_classPrivateFieldGet3","current","call","feedbackSubmitDone","_classPrivateFieldGet4","feedbackSubmitFailed","_classPrivateFieldGet5","feedbackOnViewDone","_classPrivateFieldGet6","render","Component","React","onShare","onTerminate","onSubmitFeedback","onSwitchToCanvas","onFeedbackOnView","onDetailChange","_ChatStream2","e","_set_shareEvent","_set_terminateEvent","_set_feedbackSubmitEvent","_set_feedbackOnViewEvent","_set_switch","_set_detailChange","c","_initClass","_applyDecs","shadowOptions","attribute","type","Boolean","Number","o","_","has","_checkInRHS"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[2267],{16185:(e,t,s)=>{s.r(t),s.d(t,{CruiseCanvas:()=>Ie});var i,a=s(74635),h=s(70918),n=s(26902),r=s(5536),o=s(86121),A=s(70829),d=s(62740),w=s(18769),p=s.n(w),k=s(7921),l=s(11280),c=(s(65168),s(87117)),u=s(80079),b=s(51850),m=s(78523);let M,y,v,W,f,F,g,S,D,E,I,O,x,J,R,U,V,B,T,_,C,j,q,H,N,z,G,K,L,P,Q,X,Y,Z,$,ee,te,se,ie,ae,he,ne,re,oe,Ae,de,we,pe,ke,le,ce,ue,be,me,Me,ye,ve,We;(0,c.initializeI18n)(u.NS,u.I);const{defineElement:fe,property:Fe,event:ge,method:Se}=(0,k.createDecorators)(),De=(0,w.forwardRef)(b.A),Ee=(0,w.forwardRef)(m.B);let Ie;var Oe=new WeakMap,xe=new WeakMap,Je=new WeakMap,Re=new WeakMap,Ue=new WeakMap,Ve=new WeakMap,Be=new WeakMap,Te=new WeakMap,_e=new WeakMap,Ce=new WeakMap,je=new WeakMap,qe=new WeakMap,He=new WeakMap,Ne=new WeakMap,ze=new WeakMap,Ge=new WeakMap,Ke=new WeakMap,Le=new WeakSet,Pe=new WeakMap,Qe=new WeakMap,Xe=new WeakMap,Ye=new WeakMap,Ze=new WeakMap,$e=new WeakMap,et=new WeakMap,tt=new WeakMap,st=new WeakMap,it=new WeakMap,at=new WeakMap,ht=new WeakMap;class nt extends l.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,Le),(0,h.A)(this,Oe,(M(this),v(this))),(0,h.A)(this,xe,(W(this),f(this))),(0,h.A)(this,Je,(F(this),g(this))),(0,h.A)(this,Re,(S(this),D(this))),(0,h.A)(this,Ue,(E(this),I(this))),(0,h.A)(this,Ve,(O(this),x(this))),(0,h.A)(this,Be,(J(this),R(this))),(0,h.A)(this,Te,(U(this),V(this))),(0,h.A)(this,_e,(B(this),T(this))),(0,h.A)(this,Ce,(_(this),C(this))),(0,h.A)(this,je,(j(this),q(this))),(0,h.A)(this,qe,(H(this),N(this))),(0,h.A)(this,He,(z(this),G(this))),(0,h.A)(this,Ne,(K(this),L(this))),(0,h.A)(this,ze,(P(this),Q(this))),(0,h.A)(this,Ge,(X(this),Y(this))),(0,h.A)(this,Ke,(Z(this),$(this))),(0,h.A)(this,Pe,(se(this),()=>{(0,r.A)(Le,this,ee).emit()})),(0,h.A)(this,Qe,ie(this)),(0,h.A)(this,Xe,(ne(this),()=>{(0,r.A)(Le,this,ae).emit()})),(0,h.A)(this,Ye,re(this)),(0,h.A)(this,Ze,(de(this),e=>{(0,r.A)(Le,this,oe).emit(e)})),(0,h.A)(this,$e,we(this)),(0,h.A)(this,et,(le(this),e=>{(0,r.A)(Le,this,pe).emit(e)})),(0,h.A)(this,tt,ce(this)),(0,h.A)(this,st,(me(this),()=>{(0,r.A)(Le,this,ue).emit("chat")})),(0,h.A)(this,it,Me(this)),(0,h.A)(this,at,(We(this),e=>{(0,r.A)(Le,this,ye).emit(e)})),(0,h.A)(this,ht,(0,w.createRef)())}get conversationId(){return(0,A.A)(Oe,this)}set conversationId(e){(0,o.A)(Oe,this,e)}get initialRequest(){return(0,A.A)(xe,this)}set initialRequest(e){(0,o.A)(xe,this,e)}get taskId(){return(0,A.A)(Je,this)}set taskId(e){(0,o.A)(Je,this,e)}get task(){return(0,A.A)(Re,this)}set task(e){(0,o.A)(Re,this,e)}get jobs(){return(0,A.A)(Ue,this)}set jobs(e){(0,o.A)(Ue,this,e)}get replay(){return(0,A.A)(Ve,this)}set replay(e){(0,o.A)(Ve,this,e)}get replayDelay(){return(0,A.A)(Be,this)}set replayDelay(e){(0,o.A)(Be,this,e)}get supports(){return(0,A.A)(Te,this)}set supports(e){(0,o.A)(Te,this,e)}get showHiddenJobs(){return(0,A.A)(_e,this)}set showHiddenJobs(e){(0,o.A)(_e,this,e)}get showFeedback(){return(0,A.A)(Ce,this)}set showFeedback(e){(0,o.A)(Ce,this,e)}get showFeedbackAfterFailed(){return(0,A.A)(je,this)}set showFeedbackAfterFailed(e){(0,o.A)(je,this,e)}get showFeedbackOnView(){return(0,A.A)(qe,this)}set showFeedbackOnView(e){(0,o.A)(qe,this,e)}get showUiSwitch(){return(0,A.A)(He,this)}set showUiSwitch(e){(0,o.A)(He,this,e)}get hideMermaid(){return(0,A.A)(Ne,this)}set hideMermaid(e){(0,o.A)(Ne,this,e)}get showJsxEditor(){return(0,A.A)(ze,this)}set showJsxEditor(e){(0,o.A)(ze,this,e)}get previewUrlTemplate(){return(0,A.A)(Ge,this)}set previewUrlTemplate(e){(0,o.A)(Ge,this,e)}resumed(){var e,t;null===(e=(0,A.A)(ht,this).current)||void 0===e||null===(t=e.resumed)||void 0===t||t.call(e)}feedbackSubmitDone(){var e;null===(e=(0,A.A)(ht,this).current)||void 0===e||e.feedbackSubmitDone()}feedbackSubmitFailed(){var e;null===(e=(0,A.A)(ht,this).current)||void 0===e||e.feedbackSubmitFailed()}feedbackOnViewDone(e){var t;null===(t=(0,A.A)(ht,this).current)||void 0===t||t.feedbackOnViewDone(e)}render(){const e=this.conversationId?Ee:De;return p().createElement(e,{conversationId:this.conversationId,initialRequest:this.initialRequest,taskId:this.taskId,jobs:this.jobs,task:this.task,replay:this.replay,replayDelay:this.replayDelay,supports:this.supports,showHiddenJobs:this.showHiddenJobs,showFeedback:this.showFeedback,showFeedbackAfterFailed:this.showFeedbackAfterFailed,showUiSwitch:this.showUiSwitch,showFeedbackOnView:this.showFeedbackOnView,showJsxEditor:this.showJsxEditor,previewUrlTemplate:this.previewUrlTemplate,onShare:(0,A.A)(Pe,this),onTerminate:(0,A.A)(Xe,this),onSubmitFeedback:(0,A.A)(Ze,this),onSwitchToChat:(0,A.A)(st,this),onFeedbackOnView:(0,A.A)(et,this),onDetailChange:(0,A.A)(at,this),ref:(0,A.A)(ht,this)})}}i=nt,({e:[v,W,f,F,g,S,D,E,I,O,x,J,R,U,V,B,T,_,C,j,q,H,N,z,G,K,L,P,Q,X,Y,Z,$,ee,te,se,ie,ae,he,ne,re,oe,Ae,de,we,pe,ke,le,ce,ue,be,me,Me,ye,ve,We,M],c:[Ie,y]}=(0,d.A)(i,[fe("ai-portal.cruise-canvas",{shadowOptions:!1})],[[Fe(),1,"conversationId"],[Fe({attribute:!1,render:!1}),1,"initialRequest"],[Fe(),1,"taskId"],[Fe({attribute:!1}),1,"task"],[Fe({attribute:!1}),1,"jobs"],[Fe({type:Boolean,render:!1}),1,"replay"],[Fe({type:Number,render:!1}),1,"replayDelay"],[Fe({attribute:!1}),1,"supports"],[Fe({type:Boolean}),1,"showHiddenJobs"],[Fe({type:Boolean}),1,"showFeedback"],[Fe({type:Boolean}),1,"showFeedbackAfterFailed"],[Fe({type:Boolean}),1,"showFeedbackOnView"],[Fe({type:Boolean}),1,"showUiSwitch"],[Fe({type:Boolean,render:!1}),1,"hideMermaid"],[Fe({type:Boolean}),1,"showJsxEditor"],[Fe(),1,"previewUrlTemplate"],[ge({type:"share"}),1,"shareEvent",e=>(0,A.A)(Ke,e),(e,t)=>(0,o.A)(Ke,e,t)],[ge({type:"terminate"}),1,"terminateEvent",e=>(0,A.A)(Qe,e),(e,t)=>(0,o.A)(Qe,e,t)],[ge({type:"feedback.submit"}),1,"feedbackSubmitEvent",e=>(0,A.A)(Ye,e),(e,t)=>(0,o.A)(Ye,e,t)],[ge({type:"feedback.on.view"}),1,"feedbackOnViewEvent",e=>(0,A.A)($e,e),(e,t)=>(0,o.A)($e,e,t)],[ge({type:"ui.switch"}),1,"switch",e=>(0,A.A)(tt,e),(e,t)=>(0,o.A)(tt,e,t)],[ge({type:"detail.change"}),1,"detailChange",e=>(0,A.A)(it,e),(e,t)=>(0,o.A)(it,e,t)],[Se(),2,"resumed"],[Se(),2,"feedbackSubmitDone"],[Se(),2,"feedbackSubmitFailed"],[Se(),2,"feedbackOnViewDone"]],0,(e=>ht.has((0,n.A)(e))),l.ReactNextElement)),y()}}]);
2
+ //# sourceMappingURL=cruise-canvas.77318b42.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/cruise-canvas.77318b42.js","mappings":"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","sources":["webpack:///./src/cruise-canvas/index.tsx"],"sourcesContent":["// istanbul ignore file: experimental\nimport React, { createRef, forwardRef } from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { NS, locales } from \"./i18n.js\";\nimport type { Job, TaskBaseDetail, FeedbackDetail } from \"./interfaces.js\";\nimport { LegacyCruiseCanvasComponent } from \"./LegacyCruiseCanvas.js\";\nimport { CruiseCanvasComponent, type CruiseCanvasRef } from \"./CruiseCanvas.js\";\nimport type { RequestStore } from \"../shared/interfaces.js\";\n\ninitializeI18n(NS, locales);\n\nconst { defineElement, property, event, method } = createDecorators();\n\nexport interface CruiseCanvasProps {\n conversationId?: string;\n initialRequest?: RequestStore | null;\n taskId?: string;\n task?: TaskBaseDetail;\n jobs?: Job[];\n replay?: boolean;\n replayDelay?: number;\n supports?: Record<string, boolean>;\n showHiddenJobs?: boolean;\n showFeedback?: boolean;\n showFeedbackAfterFailed?: boolean;\n showUiSwitch?: boolean;\n showFeedbackOnView?: boolean;\n showJsxEditor?: boolean;\n previewUrlTemplate?: string;\n}\n\nexport interface ConversationDetail {\n projectId?: string;\n}\n\nconst ForwardedLegacyCruiseCanvasComponent = forwardRef(\n LegacyCruiseCanvasComponent\n);\n\nconst ForwardedCruiseCanvasComponent = forwardRef(CruiseCanvasComponent);\n\n/**\n * 构件 `ai-portal.cruise-canvas`\n */\nexport\n@defineElement(\"ai-portal.cruise-canvas\", {\n // Will wrap v2 bricks which don't support in shadow DOM.\n shadowOptions: false,\n})\nclass CruiseCanvas extends ReactNextElement implements CruiseCanvasProps {\n @property()\n accessor conversationId: string | undefined;\n\n /** 初始请求数据。仅初始设置有效。 */\n @property({ attribute: false, render: false })\n accessor initialRequest: RequestStore | undefined | null;\n\n @property()\n accessor taskId: string | undefined;\n\n @property({ attribute: false })\n accessor task: TaskBaseDetail | undefined;\n\n @property({ attribute: false })\n accessor jobs: Job[] | undefined;\n\n /** 是否启用回放。仅初始设置有效。 */\n @property({ type: Boolean, render: false })\n accessor replay: boolean | undefined;\n\n /**\n * 设置回放时消息之间的时间间隔,单位为秒。仅初始设置有效。\n *\n * @default 2\n */\n @property({ type: Number, render: false })\n accessor replayDelay: number | undefined;\n\n @property({ attribute: false })\n accessor supports: Record<string, boolean> | undefined;\n\n @property({ type: Boolean })\n accessor showHiddenJobs: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showFeedback: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showFeedbackAfterFailed: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showFeedbackOnView: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showUiSwitch: boolean | undefined;\n\n @property({ type: Boolean, render: false })\n accessor hideMermaid: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showJsxEditor: boolean | undefined;\n\n @property()\n accessor previewUrlTemplate: string | undefined;\n\n @event({ type: \"share\" })\n accessor #shareEvent!: EventEmitter<void>;\n\n #onShare = () => {\n this.#shareEvent.emit();\n };\n\n @event({ type: \"terminate\" })\n accessor #terminateEvent!: EventEmitter<void>;\n\n #onTerminate = () => {\n this.#terminateEvent.emit();\n };\n\n @event({ type: \"feedback.submit\" })\n accessor #feedbackSubmitEvent!: EventEmitter<FeedbackDetail>;\n\n #onSubmitFeedback = (detail: FeedbackDetail) => {\n this.#feedbackSubmitEvent.emit(detail);\n };\n\n @event({ type: \"feedback.on.view\" })\n accessor #feedbackOnViewEvent!: EventEmitter<string>;\n\n #onFeedbackOnView = (viewId: string) => {\n this.#feedbackOnViewEvent.emit(viewId);\n };\n\n @event({ type: \"ui.switch\" })\n accessor #switch!: EventEmitter<\"chat\">;\n\n #onSwitchToChat = () => {\n this.#switch.emit(\"chat\");\n };\n\n @event({ type: \"detail.change\" })\n accessor #detailChange!: EventEmitter<ConversationDetail>;\n\n #onDetailChange = (detail: ConversationDetail) => {\n this.#detailChange.emit(detail);\n };\n\n #ref = createRef<CruiseCanvasRef>();\n\n @method()\n resumed() {\n this.#ref.current?.resumed?.();\n }\n\n @method()\n feedbackSubmitDone() {\n this.#ref.current?.feedbackSubmitDone();\n }\n\n @method()\n feedbackSubmitFailed() {\n this.#ref.current?.feedbackSubmitFailed();\n }\n\n @method()\n feedbackOnViewDone(viewId: string) {\n this.#ref.current?.feedbackOnViewDone(viewId);\n }\n\n render() {\n const Component = this.conversationId\n ? ForwardedCruiseCanvasComponent\n : ForwardedLegacyCruiseCanvasComponent;\n return (\n <Component\n conversationId={this.conversationId!}\n initialRequest={this.initialRequest}\n taskId={this.taskId}\n jobs={this.jobs}\n task={this.task}\n replay={this.replay}\n replayDelay={this.replayDelay}\n supports={this.supports}\n showHiddenJobs={this.showHiddenJobs}\n showFeedback={this.showFeedback}\n showFeedbackAfterFailed={this.showFeedbackAfterFailed}\n showUiSwitch={this.showUiSwitch}\n showFeedbackOnView={this.showFeedbackOnView}\n showJsxEditor={this.showJsxEditor}\n previewUrlTemplate={this.previewUrlTemplate}\n onShare={this.#onShare}\n onTerminate={this.#onTerminate}\n onSubmitFeedback={this.#onSubmitFeedback}\n onSwitchToChat={this.#onSwitchToChat}\n onFeedbackOnView={this.#onFeedbackOnView}\n onDetailChange={this.#onDetailChange}\n ref={this.#ref}\n />\n );\n }\n}\n"],"names":["initializeI18n","NS","locales","defineElement","property","event","method","createDecorators","ForwardedLegacyCruiseCanvasComponent","forwardRef","LegacyCruiseCanvasComponent","ForwardedCruiseCanvasComponent","CruiseCanvasComponent","_CruiseCanvas","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_CruiseCanvas_brand","WeakSet","_onShare","_R","_onTerminate","_S","_onSubmitFeedback","_T","_onFeedbackOnView","_U","_onSwitchToChat","_V","_onDetailChange","_ref","CruiseCanvas","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_initProto","_init_conversationId","_init_extra_conversationId","_init_initialRequest","_init_extra_initialRequest","_init_taskId","_init_extra_taskId","_init_task","_init_extra_task","_init_jobs","_init_extra_jobs","_init_replay","_init_extra_replay","_init_replayDelay","_init_extra_replayDelay","_init_supports","_init_extra_supports","_init_showHiddenJobs","_init_extra_showHiddenJobs","_init_showFeedback","_init_extra_showFeedback","_init_showFeedbackAfterFailed","_init_extra_showFeedbackAfterFailed","_init_showFeedbackOnView","_init_extra_showFeedbackOnView","_init_showUiSwitch","_init_extra_showUiSwitch","_init_hideMermaid","_init_extra_hideMermaid","_init_showJsxEditor","_init_extra_showJsxEditor","_init_previewUrlTemplate","_init_extra_previewUrlTemplate","_init_shareEvent","_init_extra_shareEvent","_classPrivateGetter","this","_get_shareEvent","emit","_init_terminateEvent","_init_extra_terminateEvent","_get_terminateEvent","_init_feedbackSubmitEvent","_init_extra_feedbackSubmitEvent","detail","_get_feedbackSubmitEvent","_init_feedbackOnViewEvent","_init_extra_feedbackOnViewEvent","viewId","_get_feedbackOnViewEvent","_init_switch","_init_extra_switch","_get_switch","_init_detailChange","_init_extra_detailChange","_get_detailChange","createRef","conversationId","_classPrivateFieldGet","v","_classPrivateFieldSet","initialRequest","taskId","task","jobs","replay","replayDelay","supports","showHiddenJobs","showFeedback","showFeedbackAfterFailed","showFeedbackOnView","showUiSwitch","hideMermaid","showJsxEditor","previewUrlTemplate","resumed","_classPrivateFieldGet2","_classPrivateFieldGet3","current","call","feedbackSubmitDone","_classPrivateFieldGet4","feedbackSubmitFailed","_classPrivateFieldGet5","feedbackOnViewDone","_classPrivateFieldGet6","render","Component","React","onShare","onTerminate","onSubmitFeedback","onSwitchToChat","onFeedbackOnView","onDetailChange","ref","_CruiseCanvas2","e","_set_shareEvent","_set_terminateEvent","_set_feedbackSubmitEvent","_set_feedbackOnViewEvent","_set_switch","_set_detailChange","c","_initClass","_applyDecs","shadowOptions","attribute","type","Boolean","Number","o","_","has","_checkInRHS"],"sourceRoot":""}