@crmchatreactcomponent/quick-messages 0.0.8 → 0.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { jsx as o, jsxs as h, Fragment as ee } from "react/jsx-runtime";
2
2
  import { useContext as me, useMemo as D, useState as $, useEffect as E, createContext as ve, useRef as xe } from "react";
3
- import { ConfigProvider as St, theme as jt, Popover as Ce, Space as C, message as $t, Modal as Te, Table as _, Button as T, Flex as z, Empty as Se, Input as U, Popconfirm as kt, Menu as At, Alert as wt, ColorPicker as Pt, Tooltip as Dt } from "antd";
3
+ import { ConfigProvider as St, theme as jt, Popover as Ce, Space as C, message as $t, Modal as Te, Table as _, Button as T, Flex as z, Empty as Se, Input as q, Popconfirm as kt, Menu as At, Alert as wt, ColorPicker as Pt, Tooltip as Dt } from "antd";
4
4
  import Ot, { EmojiStyle as Mt, Theme as te } from "emoji-picker-react";
5
5
  import { useTranslation as I, I18nextProvider as Et } from "react-i18next";
6
6
  import { uniqBy as It } from "lodash-es";
@@ -98,7 +98,7 @@ class Kt {
98
98
  return t;
99
99
  }
100
100
  }
101
- var Vt = typeof global == "object" && global && global.Object === Object && global, Ae = Vt, qt = typeof self == "object" && self && self.Object === Object && self, Ut = Ae || qt || Function("return this")(), w = Ut, Wt = w.Symbol, F = Wt, we = Object.prototype, Yt = we.hasOwnProperty, Jt = we.toString, N = F ? F.toStringTag : void 0;
101
+ var Vt = typeof global == "object" && global && global.Object === Object && global, Ae = Vt, Wt = typeof self == "object" && self && self.Object === Object && self, qt = Ae || Wt || Function("return this")(), w = qt, Ut = w.Symbol, F = Ut, we = Object.prototype, Yt = we.hasOwnProperty, Jt = we.toString, N = F ? F.toStringTag : void 0;
102
102
  function Xt(e) {
103
103
  var t = Yt.call(e, N), r = e[N];
104
104
  try {
@@ -169,7 +169,7 @@ function H(e, t) {
169
169
  var r = xr(e, t);
170
170
  return vr(r) ? r : void 0;
171
171
  }
172
- var Cr = H(w, "WeakMap"), W = Cr, Tr = 9007199254740991;
172
+ var Cr = H(w, "WeakMap"), U = Cr, Tr = 9007199254740991;
173
173
  function Oe(e) {
174
174
  return typeof e == "number" && e > -1 && e % 1 == 0 && e <= Tr;
175
175
  }
@@ -193,9 +193,9 @@ var Ee = Object.prototype, kr = Ee.hasOwnProperty, Ar = Ee.propertyIsEnumerable,
193
193
  function Dr() {
194
194
  return !1;
195
195
  }
196
- var Ie = typeof exports == "object" && exports && !exports.nodeType && exports, ae = Ie && typeof module == "object" && module && !module.nodeType && module, Or = ae && ae.exports === Ie, ie = Or ? w.Buffer : void 0, Mr = ie ? ie.isBuffer : void 0, Er = Mr || Dr, Ir = Er, Nr = "[object Arguments]", Lr = "[object Array]", Gr = "[object Boolean]", Hr = "[object Date]", _r = "[object Error]", zr = "[object Function]", Fr = "[object Map]", Rr = "[object Number]", Br = "[object Object]", Kr = "[object RegExp]", Vr = "[object Set]", qr = "[object String]", Ur = "[object WeakMap]", Wr = "[object ArrayBuffer]", Yr = "[object DataView]", Jr = "[object Float32Array]", Xr = "[object Float64Array]", Qr = "[object Int8Array]", Zr = "[object Int16Array]", en = "[object Int32Array]", tn = "[object Uint8Array]", rn = "[object Uint8ClampedArray]", nn = "[object Uint16Array]", on = "[object Uint32Array]", g = {};
196
+ var Ie = typeof exports == "object" && exports && !exports.nodeType && exports, ae = Ie && typeof module == "object" && module && !module.nodeType && module, Or = ae && ae.exports === Ie, ie = Or ? w.Buffer : void 0, Mr = ie ? ie.isBuffer : void 0, Er = Mr || Dr, Ir = Er, Nr = "[object Arguments]", Lr = "[object Array]", Gr = "[object Boolean]", Hr = "[object Date]", _r = "[object Error]", zr = "[object Function]", Fr = "[object Map]", Rr = "[object Number]", Br = "[object Object]", Kr = "[object RegExp]", Vr = "[object Set]", Wr = "[object String]", qr = "[object WeakMap]", Ur = "[object ArrayBuffer]", Yr = "[object DataView]", Jr = "[object Float32Array]", Xr = "[object Float64Array]", Qr = "[object Int8Array]", Zr = "[object Int16Array]", en = "[object Int32Array]", tn = "[object Uint8Array]", rn = "[object Uint8ClampedArray]", nn = "[object Uint16Array]", on = "[object Uint32Array]", g = {};
197
197
  g[Jr] = g[Xr] = g[Qr] = g[Zr] = g[en] = g[tn] = g[rn] = g[nn] = g[on] = !0;
198
- g[Nr] = g[Lr] = g[Wr] = g[Gr] = g[Yr] = g[Hr] = g[_r] = g[zr] = g[Fr] = g[Rr] = g[Br] = g[Kr] = g[Vr] = g[qr] = g[Ur] = !1;
198
+ g[Nr] = g[Lr] = g[Ur] = g[Gr] = g[Yr] = g[Hr] = g[_r] = g[zr] = g[Fr] = g[Rr] = g[Br] = g[Kr] = g[Vr] = g[Wr] = g[qr] = !1;
199
199
  function an(e) {
200
200
  return G(e) && Oe(e.length) && !!g[O(e)];
201
201
  }
@@ -235,8 +235,8 @@ function J(e) {
235
235
  var r = Sn.call(t, "constructor") && t.constructor;
236
236
  return typeof r == "function" && r instanceof r && Ge.call(r) == jn;
237
237
  }
238
- var $n = H(w, "DataView"), X = $n, kn = H(w, "Promise"), Q = kn, An = H(w, "Set"), Z = An, ce = "[object Map]", wn = "[object Object]", ue = "[object Promise]", de = "[object Set]", pe = "[object WeakMap]", fe = "[object DataView]", Pn = M(X), Dn = M(Y), On = M(Q), Mn = M(Z), En = M(W), P = O;
239
- (X && P(new X(new ArrayBuffer(1))) != fe || Y && P(new Y()) != ce || Q && P(Q.resolve()) != ue || Z && P(new Z()) != de || W && P(new W()) != pe) && (P = function(e) {
238
+ var $n = H(w, "DataView"), X = $n, kn = H(w, "Promise"), Q = kn, An = H(w, "Set"), Z = An, ce = "[object Map]", wn = "[object Object]", ue = "[object Promise]", de = "[object Set]", pe = "[object WeakMap]", fe = "[object DataView]", Pn = M(X), Dn = M(Y), On = M(Q), Mn = M(Z), En = M(U), P = O;
239
+ (X && P(new X(new ArrayBuffer(1))) != fe || Y && P(new Y()) != ce || Q && P(Q.resolve()) != ue || Z && P(new Z()) != de || U && P(new U()) != pe) && (P = function(e) {
240
240
  var t = O(e), r = t == wn ? e.constructor : void 0, n = r ? M(r) : "";
241
241
  if (n)
242
242
  switch (n) {
@@ -400,17 +400,17 @@ class Vn {
400
400
  };
401
401
  }
402
402
  }
403
- const q = [new Vn()];
404
- function qn(e) {
405
- for (let t = 0; t < q.length; t++)
406
- if (q[t].detectRule(e)) {
407
- const r = q[t].parser(e);
403
+ const W = [new Vn()];
404
+ function Wn(e) {
405
+ for (let t = 0; t < W.length; t++)
406
+ if (W[t].detectRule(e)) {
407
+ const r = W[t].parser(e);
408
408
  if (!R(r))
409
409
  return r;
410
410
  }
411
411
  return [];
412
412
  }
413
- class Un {
413
+ class qn {
414
414
  static parse(t) {
415
415
  const r = document.createElement("div");
416
416
  r.innerHTML = t;
@@ -449,7 +449,7 @@ class Un {
449
449
  } : !1;
450
450
  }
451
451
  }
452
- class Wn {
452
+ class Un {
453
453
  constructor() {
454
454
  this.handles = {}, this.props = {}, this.evenHandles = {};
455
455
  }
@@ -549,10 +549,10 @@ class Wn {
549
549
  }
550
550
  }
551
551
  }
552
- (zn(s) || R(s)) && (s = qn(i)), r.clipboardType = s;
552
+ (zn(s) || R(s)) && (s = Wn(i)), r.clipboardType = s;
553
553
  } else {
554
554
  let s = null;
555
- this.props.unknownHtmlParser && (s = this.props.unknownHtmlParser(i)), s = s || Un.parse(i), s || (s = {
555
+ this.props.unknownHtmlParser && (s = this.props.unknownHtmlParser(i)), s = s || qn.parse(i), s || (s = {
556
556
  value: u,
557
557
  type: this.handles[y.PLAIN].type
558
558
  }), r.text = u, r.html = i, J(s) && (r.clipboardType = [[s]]), S(s) && (ge(s) ? r.clipboardType = s : r.clipboardType = [s]);
@@ -582,7 +582,7 @@ const Yn = {
582
582
  handlers: [],
583
583
  tableParsers: []
584
584
  };
585
- class Jn extends Wn {
585
+ class Jn extends Un {
586
586
  constructor(t = {}) {
587
587
  var r, n;
588
588
  if (super(), (n = (r = window.navigator) == null ? void 0 : r.clipboard) != null && n.read)
@@ -694,7 +694,7 @@ const Xn = new Jn(), Qn = ({
694
694
  size: "small",
695
695
  scroll: {
696
696
  y: r,
697
- x: !0
697
+ x: "max-content"
698
698
  },
699
699
  locale: {
700
700
  emptyText: () => /* @__PURE__ */ h(
@@ -834,7 +834,7 @@ function he(e) {
834
834
  if (t) {
835
835
  if (e.type === "textarea")
836
836
  return /* @__PURE__ */ o("div", { style: { paddingBottom: 18 }, children: /* @__PURE__ */ o(
837
- U.TextArea,
837
+ q.TextArea,
838
838
  {
839
839
  showCount: !0,
840
840
  maxLength: e.maxLength,
@@ -859,7 +859,7 @@ function he(e) {
859
859
  ) });
860
860
  if (e.type === "input")
861
861
  return /* @__PURE__ */ o(
862
- U,
862
+ q,
863
863
  {
864
864
  showCount: !0,
865
865
  maxLength: e.maxLength,
@@ -1009,7 +1009,7 @@ const eo = k.div``, to = k.div`
1009
1009
  ) }),
1010
1010
  /* @__PURE__ */ o(be, { onCreate: x, block: !0 })
1011
1011
  ] }),
1012
- p ? /* @__PURE__ */ o(
1012
+ /* @__PURE__ */ o("div", { style: { flex: 1, minWidth: 0 }, children: p ? /* @__PURE__ */ o(
1013
1013
  Qn,
1014
1014
  {
1015
1015
  data: p,
@@ -1023,7 +1023,7 @@ const eo = k.div``, to = k.div`
1023
1023
  message: i("selectAGroupFirst"),
1024
1024
  style: { height: 60, minWidth: 400 }
1025
1025
  }
1026
- )
1026
+ ) })
1027
1027
  ] }) });
1028
1028
  };
1029
1029
  function io(e) {
@@ -1101,7 +1101,7 @@ function _e(e) {
1101
1101
  ":"
1102
1102
  ] }),
1103
1103
  /* @__PURE__ */ o(
1104
- U,
1104
+ q,
1105
1105
  {
1106
1106
  ref: i,
1107
1107
  showCount: !0,
@@ -1325,15 +1325,15 @@ function po(e) {
1325
1325
  }
1326
1326
  /*! This file was generated by vite-i18n-gen-resources-type check https://github.com/CRMChatReactComponent/vite-i18n-gen-resources-type. Please do not modify. */
1327
1327
  var ze = /* @__PURE__ */ ((e) => (e.ZH_CN = "zh-CN", e.EN_US = "en-US", e))(ze || {});
1328
- const Fe = "Are you sure to delete it?", Re = "No data available", Be = "Select a Group first", Ke = "Create a Group", Ve = "Edit Group", qe = "Create Group", Ue = "Title", We = "Color", Ye = "Save", Je = "Create", Xe = "Quick Messages Configs", Qe = "Created Successfully", Ze = "Cannot be saved: title already existing", et = "Cannot be saved: title is empty", tt = "Cannot be saved: content is empty", rt = "Content", nt = "Import from Clipboard", fo = {
1328
+ const Fe = "Are you sure to delete it?", Re = "No data available", Be = "Select a Group first", Ke = "Create a Group", Ve = "Edit Group", We = "Create Group", qe = "Title", Ue = "Color", Ye = "Save", Je = "Create", Xe = "Quick Messages Configs", Qe = "Created Successfully", Ze = "Cannot be saved: title already existing", et = "Cannot be saved: title is empty", tt = "Cannot be saved: content is empty", rt = "Content", nt = "Import from Clipboard", fo = {
1329
1329
  confirmDelete: Fe,
1330
1330
  noData: Re,
1331
1331
  selectAGroupFirst: Be,
1332
1332
  addNewGroup: Ke,
1333
1333
  editGroup: Ve,
1334
- createGroup: qe,
1335
- titleFieldName: Ue,
1336
- colorFieldName: We,
1334
+ createGroup: We,
1335
+ titleFieldName: qe,
1336
+ colorFieldName: Ue,
1337
1337
  save: Ye,
1338
1338
  create: Je,
1339
1339
  quickMessageConfigs: Xe,
@@ -1350,11 +1350,11 @@ const Fe = "Are you sure to delete it?", Re = "No data available", Be = "Selec
1350
1350
  cannotSavedMessageCuzContentEmpty: tt,
1351
1351
  cannotSavedMessageCuzLabelEmpty: et,
1352
1352
  cannotSavedMessageCuzLabelExisted: Ze,
1353
- colorFieldName: We,
1353
+ colorFieldName: Ue,
1354
1354
  confirmDelete: Fe,
1355
1355
  content: rt,
1356
1356
  create: Je,
1357
- createGroup: qe,
1357
+ createGroup: We,
1358
1358
  createSuccessfully: Qe,
1359
1359
  default: fo,
1360
1360
  editGroup: Ve,
@@ -1363,7 +1363,7 @@ const Fe = "Are you sure to delete it?", Re = "No data available", Be = "Selec
1363
1363
  quickMessageConfigs: Xe,
1364
1364
  save: Ye,
1365
1365
  selectAGroupFirst: Be,
1366
- titleFieldName: Ue
1366
+ titleFieldName: qe
1367
1367
  }, Symbol.toStringTag, { value: "Module" })), ot = "确定删除吗?", at = "没有数据", it = "请在左侧选择一个分组", st = "添加一个分组", lt = "编辑分组", ct = "新建分组", ut = "标题", dt = "颜色", pt = "保存", ft = "创建", gt = "快捷消息配置", ht = "创建成功", bt = "无法保存: 标题重复", yt = "无法保存: 标题不能为空", mt = "无法保存: 内容不能为空", vt = "内容", xt = "从剪切板导入", ho = {
1368
1368
  confirmDelete: ot,
1369
1369
  noData: at,
package/dist/index.umd.js CHANGED
@@ -1,6 +1,6 @@
1
- (function(f,o){typeof exports=="object"&&typeof module<"u"?o(exports,require("react/jsx-runtime"),require("react"),require("antd"),require("emoji-picker-react"),require("react-i18next"),require("lodash-es"),require("styled-components"),require("@ant-design/icons"),require("react-use"),require("color"),require("i18next")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","antd","emoji-picker-react","react-i18next","lodash-es","styled-components","@ant-design/icons","react-use","color","i18next"],o):(f=typeof globalThis<"u"?globalThis:f||self,o(f.quickmessages={},f.jsxRuntime,f.react,f.antd,f.EmojiPicker,f.reactI18next,f.lodashEs,f.styled,f.icons,f.reactUse,f.Color,f.i18n))})(this,function(f,o,b,i,L,M,gt,j,G,ht,bt,yt){"use strict";function Q(){const{theme:e}=b.useContext(i.ConfigProvider.ConfigContext);return b.useMemo(()=>(e==null?void 0:e.algorithm)===i.theme.darkAlgorithm,[e])}const vt=L.EmojiStyle.FACEBOOK,mt=({children:e,disabled:t=!1,onSelect:r=()=>{},onOpenChange:n=()=>{}})=>{const[a,s]=b.useState(!1),d=Q();b.useEffect(()=>{n(a)},[a]);function g(l){r(l.emoji),s(!1)}function u(l){t||s(l)}return o.jsx(i.Popover,{title:"",open:a,onOpenChange:u,overlayInnerStyle:{backgroundColor:"transparent",padding:0},trigger:["click"],content:o.jsx(i.Space,{direction:"vertical",size:12,children:o.jsx(L,{skinTonesDisabled:!0,onEmojiClick:g,emojiStyle:vt,lazyLoadEmojis:!1,theme:d?L.Theme.DARK:L.Theme.LIGHT})}),destroyTooltipOnHide:!0,children:e})};function Ct(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const t=Math.random()*16|0;return(e=="x"?t:t&3|8).toString(16)})}function Z(e,t){return e.length>t?e.substring(0,t)+"…":e}const F=b.createContext(null);function Tt(e){const[t,r]=i.message.useMessage(),[n,a]=i.Modal.useModal();return o.jsxs(F.Provider,{value:{messageApi:t,modalApi:n},children:[r,a,e.children]})}class xt{constructor(){this.type=v.PLAIN}toText(t){return t}toHtml(t){return t}parse(t){return t}}var St=typeof global=="object"&&global&&global.Object===Object&&global,R=St,jt=typeof self=="object"&&self&&self.Object===Object&&self,$t=R||jt||Function("return this")(),A=$t,At=A.Symbol,H=At,ee=Object.prototype,kt=ee.hasOwnProperty,Mt=ee.toString,D=H?H.toStringTag:void 0;function Pt(e){var t=kt.call(e,D),r=e[D];try{e[D]=void 0;var n=!0}catch{}var a=Mt.call(e);return n&&(t?e[D]=r:delete e[D]),a}var wt=Object.prototype,Ot=wt.toString;function Dt(e){return Ot.call(e)}var Et="[object Null]",It="[object Undefined]",te=H?H.toStringTag:void 0;function P(e){return e==null?e===void 0?It:Et:te&&te in Object(e)?Pt(e):Dt(e)}function E(e){return e!=null&&typeof e=="object"}var Nt=Array.isArray,S=Nt;function re(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Lt="[object AsyncFunction]",Gt="[object Function]",Ht="[object GeneratorFunction]",_t="[object Proxy]";function ne(e){if(!re(e))return!1;var t=P(e);return t==Gt||t==Ht||t==Lt||t==_t}var Ft=A["__core-js_shared__"],z=Ft,oe=function(){var e=/[^.]+$/.exec(z&&z.keys&&z.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function zt(e){return!!oe&&oe in e}var Bt=Function.prototype,qt=Bt.toString;function w(e){if(e!=null){try{return qt.call(e)}catch{}try{return e+""}catch{}}return""}var Kt=/[\\^$.*+?()[\]{}|]/g,Wt=/^\[object .+?Constructor\]$/,Ut=Function.prototype,Vt=Object.prototype,Yt=Ut.toString,Jt=Vt.hasOwnProperty,Xt=RegExp("^"+Yt.call(Jt).replace(Kt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Qt(e){if(!re(e)||zt(e))return!1;var t=ne(e)?Xt:Wt;return t.test(w(e))}function Zt(e,t){return e==null?void 0:e[t]}function I(e,t){var r=Zt(e,t);return Qt(r)?r:void 0}var Rt=I(A,"WeakMap"),B=Rt,er=9007199254740991;function ae(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=er}function tr(e){return e!=null&&ae(e.length)&&!ne(e)}var rr=Object.prototype;function se(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||rr;return e===r}var nr="[object Arguments]";function ie(e){return E(e)&&P(e)==nr}var le=Object.prototype,or=le.hasOwnProperty,ar=le.propertyIsEnumerable,sr=ie(function(){return arguments}())?ie:function(e){return E(e)&&or.call(e,"callee")&&!ar.call(e,"callee")},ir=sr;function lr(){return!1}var ce=typeof f=="object"&&f&&!f.nodeType&&f,ue=ce&&typeof module=="object"&&module&&!module.nodeType&&module,cr=ue&&ue.exports===ce,de=cr?A.Buffer:void 0,ur=de?de.isBuffer:void 0,dr=ur||lr,pr=dr,fr="[object Arguments]",gr="[object Array]",hr="[object Boolean]",br="[object Date]",yr="[object Error]",vr="[object Function]",mr="[object Map]",Cr="[object Number]",Tr="[object Object]",xr="[object RegExp]",Sr="[object Set]",jr="[object String]",$r="[object WeakMap]",Ar="[object ArrayBuffer]",kr="[object DataView]",Mr="[object Float32Array]",Pr="[object Float64Array]",wr="[object Int8Array]",Or="[object Int16Array]",Dr="[object Int32Array]",Er="[object Uint8Array]",Ir="[object Uint8ClampedArray]",Nr="[object Uint16Array]",Lr="[object Uint32Array]",y={};y[Mr]=y[Pr]=y[wr]=y[Or]=y[Dr]=y[Er]=y[Ir]=y[Nr]=y[Lr]=!0,y[fr]=y[gr]=y[Ar]=y[hr]=y[kr]=y[br]=y[yr]=y[vr]=y[mr]=y[Cr]=y[Tr]=y[xr]=y[Sr]=y[jr]=y[$r]=!1;function Gr(e){return E(e)&&ae(e.length)&&!!y[P(e)]}function Hr(e){return function(t){return e(t)}}var pe=typeof f=="object"&&f&&!f.nodeType&&f,N=pe&&typeof module=="object"&&module&&!module.nodeType&&module,_r=N&&N.exports===pe,q=_r&&R.process,Fr=function(){try{var e=N&&N.require&&N.require("util").types;return e||q&&q.binding&&q.binding("util")}catch{}}(),fe=Fr,ge=fe&&fe.isTypedArray,zr=ge?Hr(ge):Gr,Br=zr;function he(e,t){return function(r){return e(t(r))}}var qr=he(Object.keys,Object),Kr=qr,Wr=Object.prototype,Ur=Wr.hasOwnProperty;function Vr(e){if(!se(e))return Kr(e);var t=[];for(var r in Object(e))Ur.call(e,r)&&r!="constructor"&&t.push(r);return t}var Yr=I(A,"Map"),K=Yr,Jr=he(Object.getPrototypeOf,Object),Xr=Jr,Qr="[object Object]",Zr=Function.prototype,Rr=Object.prototype,be=Zr.toString,en=Rr.hasOwnProperty,tn=be.call(Object);function W(e){if(!E(e)||P(e)!=Qr)return!1;var t=Xr(e);if(t===null)return!0;var r=en.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&be.call(r)==tn}var rn=I(A,"DataView"),U=rn,nn=I(A,"Promise"),V=nn,on=I(A,"Set"),Y=on,ye="[object Map]",an="[object Object]",ve="[object Promise]",me="[object Set]",Ce="[object WeakMap]",Te="[object DataView]",sn=w(U),ln=w(K),cn=w(V),un=w(Y),dn=w(B),O=P;(U&&O(new U(new ArrayBuffer(1)))!=Te||K&&O(new K)!=ye||V&&O(V.resolve())!=ve||Y&&O(new Y)!=me||B&&O(new B)!=Ce)&&(O=function(e){var t=P(e),r=t==an?e.constructor:void 0,n=r?w(r):"";if(n)switch(n){case sn:return Te;case ln:return ye;case cn:return ve;case un:return me;case dn:return Ce}return t});var pn=O,fn="[object String]";function J(e){return typeof e=="string"||!S(e)&&E(e)&&P(e)==fn}var gn="[object Map]",hn="[object Set]",bn=Object.prototype,yn=bn.hasOwnProperty;function vn(e){if(e==null)return!0;if(tr(e)&&(S(e)||typeof e=="string"||typeof e.splice=="function"||pr(e)||Br(e)||ir(e)))return!e.length;var t=pn(e);if(t==gn||t==hn)return!e.size;if(se(e))return!Vr(e).length;for(var r in e)if(yn.call(e,r))return!1;return!0}function xe(e){return e.every(t=>S(t))}function _(e){return!!(!S(e)||e.length===0||S(e[0])&&e[0].length===0)}function Se(e){let t="";return Object.keys(e).map(r=>{t+=` ${r}="${e[r].replace(/"/g,'\\"')}"`}),t}class mn{constructor(){this.type=v.IMAGE}toText(t){var r;return(r=t.title)!=null?r:""}toHtml(t){var r;return`<img src="${t.src}" alt="${t.title}" ${Se((r=t.attrs)!=null?r:{})}>`}parse(t){var r,n;return t.title=(r=t.title)!=null?r:"",t.attrs=(n=t.attrs)!=null?n:{},t}}class Cn{constructor(){this.type=v.HYPERLINK}toText(t){var r;return(r=t.title)!=null?r:""}toHtml(t){return`<a href="${t.link}" target="_blank" ${Se(t.attrs)}>${t.title}</a>`}parse(t){var r,n;return t.title=(r=t.title)!=null?r:"",t.attrs=(n=t.attrs)!=null?n:{},t}}class Tn{constructor(){this.type=v.RICH_TEXT}toText(t){return t.plain}toHtml(t){return t.value}parse(t){return t}}var v=(e=>(e.PLAIN="gs-plain-text",e.IMAGE="gs-image",e.HYPERLINK="gs-hyperlink",e.RICH_TEXT="gs-rich-text",e))(v||{});const xn=[new xt,new mn,new Cn,new Tn];var $=(e=>(e.PLAIN="text/plain",e.HTML="text/html",e))($||{});class Sn{detectRule(t){return!!~t.indexOf("google-sheets-html-origin")}parser(t){const r=document.createElement("div");return r.innerHTML=t,[...r.querySelector("table").querySelector("tbody").childNodes].map(a=>[...a.childNodes].map(s=>this.parseTd(s)))}getSheetsValue(t){try{const r=JSON.parse(t);return r[r[1]]?r[r[1]].replaceAll("&nbsp;"," "):""}catch{return""}}parseTd(t){var r;if(t.dataset.sheetsHyperlink)return{value:{title:this.getSheetsValue(t.dataset.sheetsValue),link:t.dataset.sheetsHyperlink},type:v.HYPERLINK};if(t.dataset.sheetsTextstyleruns)return{value:{plain:this.getSheetsValue(t.dataset.sheetsValue),value:t.innerHTML},type:v.RICH_TEXT};if(t.dataset.sheetsValue)return{value:t.innerHTML.replace(/\<br\>/g,`
2
- `).trim(),type:v.PLAIN};if(t.querySelector("img")){const n=t.querySelector("img");return{value:{src:n.src,title:(r=n.title)!=null?r:""},type:v.IMAGE}}return{value:t.innerText,type:v.PLAIN}}}const X=[new Sn];function jn(e){for(let t=0;t<X.length;t++)if(X[t].detectRule(e)){const r=X[t].parser(e);if(!_(r))return r}return[]}class $n{static parse(t){const r=document.createElement("div");r.innerHTML=t;const n=r.childNodes[0];if(!n)return!1;if(n.dataset.sheetsHyperlink)return{value:{link:n.dataset.sheetsHyperlink,title:n.innerText},type:v.HYPERLINK};if(n.tagName==="A")return{value:{link:n.getAttribute("href"),title:n.innerText},type:v.HYPERLINK};const a=n.childNodes[0];return a&&n.childNodes.length===1&&a.tagName==="IMG"?{value:{link:a.getAttribute("src"),title:a.title},type:v.IMAGE}:n.tagName==="IMG"?{value:{link:n.getAttribute("src"),title:n.title},type:v.IMAGE}:!1}}class An{constructor(){this.handles={},this.props={},this.evenHandles={}}destroy(){this.handles={}}registerHandler(t){[...t,...xn].map(r=>{this.handles[r.type]=r})}formatSetCopyData(t){return J(t)?[[{value:t,payload:void 0,type:this.handles[v.PLAIN].type}]]:W(t)?[[t]]:S(t)?(xe(t)||(t=[t.map(r=>J(r)?{value:r,payload:"",type:this.handles[v.PLAIN].type}:r)]),t=t.map(r=>r.map(n=>J(n)?{value:n,type:this.handles[v.PLAIN].type,payload:""}:n)),t):(console.error("unknown data type",t),[])}getTextData(t){let r="";return t.map((n,a)=>{n.map((s,d)=>{var g;const{value:u,type:l,payload:m}=s;r+=((g=this.handles[l])!=null?g:this.handles[v.PLAIN]).toText(u,m),r+=d<n.length-1?" ":""}),r+=a<t.length-1?`
3
- `:""}),r}getHtmlData(t){var r;let n="";if(t.length===1&&t[0].length===1){const{type:a,value:s,payload:d}=t[0][0];return((r=this.handles[a])!=null?r:this.handles[v.PLAIN]).toHtml(s,d)}return t.map((a,s)=>{n+="<tr>",a.map((d,g)=>{var u;const{value:l,type:m,payload:x}=d;n+=`<td>${((u=this.handles[m])!=null?u:this.handles[v.PLAIN]).toHtml(l,x)}</td>`}),n+="</tr>"}),`<table id="gs-clipboard-table"><tbody>${n}</tbody></table>`}async formatClipboardData(t){const r={text:"",html:"",clipboardType:[]};if(!t.types.includes($.HTML)){const m=await(await t.getType($.PLAIN)).text();return r.text=m,r.html=m,r.clipboardType=[[{value:m,type:this.handles[v.PLAIN].type}]],r}const n=await t.getType($.HTML),a=await t.getType($.PLAIN),s=await n.text(),d=await a.text(),g=document.createElement("div");g.innerHTML=s;const u=g.querySelector("#original-data");if(g.querySelector("#gs-clipboard-table")||u)r.text=d,r.html=s,r.clipboardType=JSON.parse(decodeURIComponent(u.dataset.data));else if(g.querySelector("table")){r.text=d,r.html=s;let l=[];if(this.props.tableParsers.length>0){for(let m=0;m<this.props.tableParsers.length;m++)if(this.props.tableParsers[m].detectRule(s)){const x=this.props.tableParsers[m].parser(s);if(!_(x)){l=x;break}}}(vn(l)||_(l))&&(l=jn(s)),r.clipboardType=l}else{let l=null;this.props.unknownHtmlParser&&(l=this.props.unknownHtmlParser(s)),l=l||$n.parse(s),l||(l={value:d,type:this.handles[v.PLAIN].type}),r.text=d,r.html=s,W(l)&&(r.clipboardType=[[l]]),S(l)&&(xe(l)?r.clipboardType=l:r.clipboardType=[l])}return r}getClipboardTypeData(t){return t}on(t,r){return S(this.evenHandles[t])||(this.evenHandles[t]=[]),this.evenHandles[t].push(r),()=>{this.evenHandles[t].splice(this.evenHandles[t].indexOf(r),1)}}trigger(t,...r){if(S(this.evenHandles[t]))for(let n=0;n<this.evenHandles[t].length;n++){const a=this.evenHandles[t][n];a(...r)}}}const kn={handlers:[],tableParsers:[]};class Mn extends An{constructor(t={}){var r,n;if(super(),(n=(r=window.navigator)==null?void 0:r.clipboard)!=null&&n.read)this.props=Object.assign(kn,t),this.registerHandler(this.props.handlers);else throw new Error("You browser didn't support clipboard api!")}async getDataFromClipboard(){return new Promise((t,r)=>{window.navigator.clipboard.read().then(async n=>{const a=n[0];t(this.transformClipboardData(await this.formatClipboardData(a)))},n=>r(n))})}setCopy(t){return this.setCopyData(this.formatSetCopyData(t),!1)}formatCopyData(t){return this.setCopyData(this.formatSetCopyData(t),!0)}transformClipboardData(t){return _(t.clipboardType)||t.clipboardType.map(r=>{S(r)?r.map(n=>{n.value=this.handles[n.type]?this.handles[n.type].parse(n.value):n.value}):W(r)&&(r.value=this.handles[r.type]?this.handles[r.type].parse(r.value):r.value)}),t}setCopyData(t,r=!1){const n={text:this.getTextData(t),html:this.getHtmlData(t),clipboardType:this.getClipboardTypeData(t)};if(r)return n;this.trigger("beforeCopy",n);const a=[new ClipboardItem({[$.PLAIN]:new Blob([n.text],{type:$.PLAIN}),[$.HTML]:new Blob([n.html+`<div id="original-data" data-data="${encodeURIComponent(JSON.stringify(n.clipboardType))}"></div>`],{type:$.HTML})})];return window.navigator.clipboard.write(a).then(()=>this.trigger("copySucceeded",a),s=>this.trigger("copyFailed",s)),n}}const Pn=new Mn,je=({data:e=[],onChange:t=()=>{},tableHeight:r="460px",limitation:n={}})=>{const{messageApi:a}=b.useContext(F),{title:s=15,content:d=2e3}=n,{t:g}=M.useTranslation();function u(c){const h=e.findIndex(p=>p.label===c.label);e[h]=c,t([...e])}function l(){const c=[{label:`#${e.length+1}`,content:""},...e];t(c),a.success(g("createSuccessfully"))}function m(c){const h=e.filter(p=>p.label!==c);t(h)}async function x(){const p=[...(await Pn.getDataFromClipboard()).clipboardType.map(C=>{var k,T;return{label:((k=C==null?void 0:C[0])==null?void 0:k.value)??"",content:((T=C==null?void 0:C[1])==null?void 0:T.value)??""}}).filter(C=>C.label&&C.content),...e];t(gt.uniqBy(p,"label"))}return o.jsxs(i.Table,{bordered:!0,dataSource:e,pagination:!1,rowKey:"label",size:"small",scroll:{y:r,x:!0},locale:{emptyText:()=>o.jsxs(i.Space,{direction:"vertical",size:24,style:{width:"100%",textAlign:"center",padding:"62px 0px"},children:[o.jsx(i.Empty,{}),o.jsx(i.Button,{type:"primary",onClick:l,children:g("create")})]})},footer:()=>o.jsxs(i.Flex,{style:{width:"100%"},justify:"space-between",children:[o.jsx(i.Space,{children:o.jsx("div",{})}),o.jsxs(i.Space,{size:12,children:[o.jsx(i.Button,{block:!0,type:"text",onClick:x,children:g("importFromClipboard")}),o.jsx(i.Button,{type:"primary",onClick:l,children:g("create")})]})]}),children:[o.jsx(i.Table.Column,{title:g("titleFieldName"),dataIndex:"label",width:400,render:(c,h)=>o.jsx($e,{maxLength:s,type:"input",value:c,onChange:p=>{if(h.label!==p){if(e.find(C=>C.label===p)){a.error(g("cannotSavedMessageCuzLabelExisted"));return}if(p.trim()===""){a.error(g("cannotSavedMessageCuzLabelEmpty"));return}h.label=p,u(h)}}})},"label"),o.jsx(i.Table.Column,{title:g("content"),dataIndex:"content",width:400,render:(c,h)=>o.jsx($e,{maxLength:d,type:"textarea",value:c,onChange:p=>{if(p.trim()===""){a.error(g("cannotSavedMessageCuzContentEmpty"));return}h.content=p,u(h)}})},"content"),o.jsx(i.Table.Column,{title:"操作",dataIndex:"id",width:120,render:(c,h)=>o.jsx(i.Space,{size:4,children:o.jsx(i.Button,{size:"small",type:"text",danger:!0,onClick:()=>m(h.label),children:g("delete")})})},"id")]})},wn=j.div`
1
+ (function(f,o){typeof exports=="object"&&typeof module<"u"?o(exports,require("react/jsx-runtime"),require("react"),require("antd"),require("emoji-picker-react"),require("react-i18next"),require("lodash-es"),require("styled-components"),require("@ant-design/icons"),require("react-use"),require("color"),require("i18next")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","antd","emoji-picker-react","react-i18next","lodash-es","styled-components","@ant-design/icons","react-use","color","i18next"],o):(f=typeof globalThis<"u"?globalThis:f||self,o(f.quickmessages={},f.jsxRuntime,f.react,f.antd,f.EmojiPicker,f.reactI18next,f.lodashEs,f.styled,f.icons,f.reactUse,f.Color,f.i18n))})(this,function(f,o,y,i,L,M,gt,j,G,ht,yt,bt){"use strict";function Q(){const{theme:e}=y.useContext(i.ConfigProvider.ConfigContext);return y.useMemo(()=>(e==null?void 0:e.algorithm)===i.theme.darkAlgorithm,[e])}const vt=L.EmojiStyle.FACEBOOK,mt=({children:e,disabled:t=!1,onSelect:r=()=>{},onOpenChange:n=()=>{}})=>{const[a,s]=y.useState(!1),d=Q();y.useEffect(()=>{n(a)},[a]);function g(l){r(l.emoji),s(!1)}function u(l){t||s(l)}return o.jsx(i.Popover,{title:"",open:a,onOpenChange:u,overlayInnerStyle:{backgroundColor:"transparent",padding:0},trigger:["click"],content:o.jsx(i.Space,{direction:"vertical",size:12,children:o.jsx(L,{skinTonesDisabled:!0,onEmojiClick:g,emojiStyle:vt,lazyLoadEmojis:!1,theme:d?L.Theme.DARK:L.Theme.LIGHT})}),destroyTooltipOnHide:!0,children:e})};function Ct(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const t=Math.random()*16|0;return(e=="x"?t:t&3|8).toString(16)})}function Z(e,t){return e.length>t?e.substring(0,t)+"…":e}const F=y.createContext(null);function Tt(e){const[t,r]=i.message.useMessage(),[n,a]=i.Modal.useModal();return o.jsxs(F.Provider,{value:{messageApi:t,modalApi:n},children:[r,a,e.children]})}class xt{constructor(){this.type=v.PLAIN}toText(t){return t}toHtml(t){return t}parse(t){return t}}var St=typeof global=="object"&&global&&global.Object===Object&&global,R=St,jt=typeof self=="object"&&self&&self.Object===Object&&self,$t=R||jt||Function("return this")(),A=$t,At=A.Symbol,H=At,ee=Object.prototype,kt=ee.hasOwnProperty,Mt=ee.toString,D=H?H.toStringTag:void 0;function Pt(e){var t=kt.call(e,D),r=e[D];try{e[D]=void 0;var n=!0}catch{}var a=Mt.call(e);return n&&(t?e[D]=r:delete e[D]),a}var wt=Object.prototype,Ot=wt.toString;function Dt(e){return Ot.call(e)}var Et="[object Null]",It="[object Undefined]",te=H?H.toStringTag:void 0;function P(e){return e==null?e===void 0?It:Et:te&&te in Object(e)?Pt(e):Dt(e)}function E(e){return e!=null&&typeof e=="object"}var Nt=Array.isArray,S=Nt;function re(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Lt="[object AsyncFunction]",Gt="[object Function]",Ht="[object GeneratorFunction]",_t="[object Proxy]";function ne(e){if(!re(e))return!1;var t=P(e);return t==Gt||t==Ht||t==Lt||t==_t}var Ft=A["__core-js_shared__"],z=Ft,oe=function(){var e=/[^.]+$/.exec(z&&z.keys&&z.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function zt(e){return!!oe&&oe in e}var Bt=Function.prototype,qt=Bt.toString;function w(e){if(e!=null){try{return qt.call(e)}catch{}try{return e+""}catch{}}return""}var Wt=/[\\^$.*+?()[\]{}|]/g,Kt=/^\[object .+?Constructor\]$/,Ut=Function.prototype,Vt=Object.prototype,Yt=Ut.toString,Jt=Vt.hasOwnProperty,Xt=RegExp("^"+Yt.call(Jt).replace(Wt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Qt(e){if(!re(e)||zt(e))return!1;var t=ne(e)?Xt:Kt;return t.test(w(e))}function Zt(e,t){return e==null?void 0:e[t]}function I(e,t){var r=Zt(e,t);return Qt(r)?r:void 0}var Rt=I(A,"WeakMap"),B=Rt,er=9007199254740991;function ae(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=er}function tr(e){return e!=null&&ae(e.length)&&!ne(e)}var rr=Object.prototype;function se(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||rr;return e===r}var nr="[object Arguments]";function ie(e){return E(e)&&P(e)==nr}var le=Object.prototype,or=le.hasOwnProperty,ar=le.propertyIsEnumerable,sr=ie(function(){return arguments}())?ie:function(e){return E(e)&&or.call(e,"callee")&&!ar.call(e,"callee")},ir=sr;function lr(){return!1}var ce=typeof f=="object"&&f&&!f.nodeType&&f,ue=ce&&typeof module=="object"&&module&&!module.nodeType&&module,cr=ue&&ue.exports===ce,de=cr?A.Buffer:void 0,ur=de?de.isBuffer:void 0,dr=ur||lr,pr=dr,fr="[object Arguments]",gr="[object Array]",hr="[object Boolean]",yr="[object Date]",br="[object Error]",vr="[object Function]",mr="[object Map]",Cr="[object Number]",Tr="[object Object]",xr="[object RegExp]",Sr="[object Set]",jr="[object String]",$r="[object WeakMap]",Ar="[object ArrayBuffer]",kr="[object DataView]",Mr="[object Float32Array]",Pr="[object Float64Array]",wr="[object Int8Array]",Or="[object Int16Array]",Dr="[object Int32Array]",Er="[object Uint8Array]",Ir="[object Uint8ClampedArray]",Nr="[object Uint16Array]",Lr="[object Uint32Array]",b={};b[Mr]=b[Pr]=b[wr]=b[Or]=b[Dr]=b[Er]=b[Ir]=b[Nr]=b[Lr]=!0,b[fr]=b[gr]=b[Ar]=b[hr]=b[kr]=b[yr]=b[br]=b[vr]=b[mr]=b[Cr]=b[Tr]=b[xr]=b[Sr]=b[jr]=b[$r]=!1;function Gr(e){return E(e)&&ae(e.length)&&!!b[P(e)]}function Hr(e){return function(t){return e(t)}}var pe=typeof f=="object"&&f&&!f.nodeType&&f,N=pe&&typeof module=="object"&&module&&!module.nodeType&&module,_r=N&&N.exports===pe,q=_r&&R.process,Fr=function(){try{var e=N&&N.require&&N.require("util").types;return e||q&&q.binding&&q.binding("util")}catch{}}(),fe=Fr,ge=fe&&fe.isTypedArray,zr=ge?Hr(ge):Gr,Br=zr;function he(e,t){return function(r){return e(t(r))}}var qr=he(Object.keys,Object),Wr=qr,Kr=Object.prototype,Ur=Kr.hasOwnProperty;function Vr(e){if(!se(e))return Wr(e);var t=[];for(var r in Object(e))Ur.call(e,r)&&r!="constructor"&&t.push(r);return t}var Yr=I(A,"Map"),W=Yr,Jr=he(Object.getPrototypeOf,Object),Xr=Jr,Qr="[object Object]",Zr=Function.prototype,Rr=Object.prototype,ye=Zr.toString,en=Rr.hasOwnProperty,tn=ye.call(Object);function K(e){if(!E(e)||P(e)!=Qr)return!1;var t=Xr(e);if(t===null)return!0;var r=en.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&ye.call(r)==tn}var rn=I(A,"DataView"),U=rn,nn=I(A,"Promise"),V=nn,on=I(A,"Set"),Y=on,be="[object Map]",an="[object Object]",ve="[object Promise]",me="[object Set]",Ce="[object WeakMap]",Te="[object DataView]",sn=w(U),ln=w(W),cn=w(V),un=w(Y),dn=w(B),O=P;(U&&O(new U(new ArrayBuffer(1)))!=Te||W&&O(new W)!=be||V&&O(V.resolve())!=ve||Y&&O(new Y)!=me||B&&O(new B)!=Ce)&&(O=function(e){var t=P(e),r=t==an?e.constructor:void 0,n=r?w(r):"";if(n)switch(n){case sn:return Te;case ln:return be;case cn:return ve;case un:return me;case dn:return Ce}return t});var pn=O,fn="[object String]";function J(e){return typeof e=="string"||!S(e)&&E(e)&&P(e)==fn}var gn="[object Map]",hn="[object Set]",yn=Object.prototype,bn=yn.hasOwnProperty;function vn(e){if(e==null)return!0;if(tr(e)&&(S(e)||typeof e=="string"||typeof e.splice=="function"||pr(e)||Br(e)||ir(e)))return!e.length;var t=pn(e);if(t==gn||t==hn)return!e.size;if(se(e))return!Vr(e).length;for(var r in e)if(bn.call(e,r))return!1;return!0}function xe(e){return e.every(t=>S(t))}function _(e){return!!(!S(e)||e.length===0||S(e[0])&&e[0].length===0)}function Se(e){let t="";return Object.keys(e).map(r=>{t+=` ${r}="${e[r].replace(/"/g,'\\"')}"`}),t}class mn{constructor(){this.type=v.IMAGE}toText(t){var r;return(r=t.title)!=null?r:""}toHtml(t){var r;return`<img src="${t.src}" alt="${t.title}" ${Se((r=t.attrs)!=null?r:{})}>`}parse(t){var r,n;return t.title=(r=t.title)!=null?r:"",t.attrs=(n=t.attrs)!=null?n:{},t}}class Cn{constructor(){this.type=v.HYPERLINK}toText(t){var r;return(r=t.title)!=null?r:""}toHtml(t){return`<a href="${t.link}" target="_blank" ${Se(t.attrs)}>${t.title}</a>`}parse(t){var r,n;return t.title=(r=t.title)!=null?r:"",t.attrs=(n=t.attrs)!=null?n:{},t}}class Tn{constructor(){this.type=v.RICH_TEXT}toText(t){return t.plain}toHtml(t){return t.value}parse(t){return t}}var v=(e=>(e.PLAIN="gs-plain-text",e.IMAGE="gs-image",e.HYPERLINK="gs-hyperlink",e.RICH_TEXT="gs-rich-text",e))(v||{});const xn=[new xt,new mn,new Cn,new Tn];var $=(e=>(e.PLAIN="text/plain",e.HTML="text/html",e))($||{});class Sn{detectRule(t){return!!~t.indexOf("google-sheets-html-origin")}parser(t){const r=document.createElement("div");return r.innerHTML=t,[...r.querySelector("table").querySelector("tbody").childNodes].map(a=>[...a.childNodes].map(s=>this.parseTd(s)))}getSheetsValue(t){try{const r=JSON.parse(t);return r[r[1]]?r[r[1]].replaceAll("&nbsp;"," "):""}catch{return""}}parseTd(t){var r;if(t.dataset.sheetsHyperlink)return{value:{title:this.getSheetsValue(t.dataset.sheetsValue),link:t.dataset.sheetsHyperlink},type:v.HYPERLINK};if(t.dataset.sheetsTextstyleruns)return{value:{plain:this.getSheetsValue(t.dataset.sheetsValue),value:t.innerHTML},type:v.RICH_TEXT};if(t.dataset.sheetsValue)return{value:t.innerHTML.replace(/\<br\>/g,`
2
+ `).trim(),type:v.PLAIN};if(t.querySelector("img")){const n=t.querySelector("img");return{value:{src:n.src,title:(r=n.title)!=null?r:""},type:v.IMAGE}}return{value:t.innerText,type:v.PLAIN}}}const X=[new Sn];function jn(e){for(let t=0;t<X.length;t++)if(X[t].detectRule(e)){const r=X[t].parser(e);if(!_(r))return r}return[]}class $n{static parse(t){const r=document.createElement("div");r.innerHTML=t;const n=r.childNodes[0];if(!n)return!1;if(n.dataset.sheetsHyperlink)return{value:{link:n.dataset.sheetsHyperlink,title:n.innerText},type:v.HYPERLINK};if(n.tagName==="A")return{value:{link:n.getAttribute("href"),title:n.innerText},type:v.HYPERLINK};const a=n.childNodes[0];return a&&n.childNodes.length===1&&a.tagName==="IMG"?{value:{link:a.getAttribute("src"),title:a.title},type:v.IMAGE}:n.tagName==="IMG"?{value:{link:n.getAttribute("src"),title:n.title},type:v.IMAGE}:!1}}class An{constructor(){this.handles={},this.props={},this.evenHandles={}}destroy(){this.handles={}}registerHandler(t){[...t,...xn].map(r=>{this.handles[r.type]=r})}formatSetCopyData(t){return J(t)?[[{value:t,payload:void 0,type:this.handles[v.PLAIN].type}]]:K(t)?[[t]]:S(t)?(xe(t)||(t=[t.map(r=>J(r)?{value:r,payload:"",type:this.handles[v.PLAIN].type}:r)]),t=t.map(r=>r.map(n=>J(n)?{value:n,type:this.handles[v.PLAIN].type,payload:""}:n)),t):(console.error("unknown data type",t),[])}getTextData(t){let r="";return t.map((n,a)=>{n.map((s,d)=>{var g;const{value:u,type:l,payload:m}=s;r+=((g=this.handles[l])!=null?g:this.handles[v.PLAIN]).toText(u,m),r+=d<n.length-1?" ":""}),r+=a<t.length-1?`
3
+ `:""}),r}getHtmlData(t){var r;let n="";if(t.length===1&&t[0].length===1){const{type:a,value:s,payload:d}=t[0][0];return((r=this.handles[a])!=null?r:this.handles[v.PLAIN]).toHtml(s,d)}return t.map((a,s)=>{n+="<tr>",a.map((d,g)=>{var u;const{value:l,type:m,payload:x}=d;n+=`<td>${((u=this.handles[m])!=null?u:this.handles[v.PLAIN]).toHtml(l,x)}</td>`}),n+="</tr>"}),`<table id="gs-clipboard-table"><tbody>${n}</tbody></table>`}async formatClipboardData(t){const r={text:"",html:"",clipboardType:[]};if(!t.types.includes($.HTML)){const m=await(await t.getType($.PLAIN)).text();return r.text=m,r.html=m,r.clipboardType=[[{value:m,type:this.handles[v.PLAIN].type}]],r}const n=await t.getType($.HTML),a=await t.getType($.PLAIN),s=await n.text(),d=await a.text(),g=document.createElement("div");g.innerHTML=s;const u=g.querySelector("#original-data");if(g.querySelector("#gs-clipboard-table")||u)r.text=d,r.html=s,r.clipboardType=JSON.parse(decodeURIComponent(u.dataset.data));else if(g.querySelector("table")){r.text=d,r.html=s;let l=[];if(this.props.tableParsers.length>0){for(let m=0;m<this.props.tableParsers.length;m++)if(this.props.tableParsers[m].detectRule(s)){const x=this.props.tableParsers[m].parser(s);if(!_(x)){l=x;break}}}(vn(l)||_(l))&&(l=jn(s)),r.clipboardType=l}else{let l=null;this.props.unknownHtmlParser&&(l=this.props.unknownHtmlParser(s)),l=l||$n.parse(s),l||(l={value:d,type:this.handles[v.PLAIN].type}),r.text=d,r.html=s,K(l)&&(r.clipboardType=[[l]]),S(l)&&(xe(l)?r.clipboardType=l:r.clipboardType=[l])}return r}getClipboardTypeData(t){return t}on(t,r){return S(this.evenHandles[t])||(this.evenHandles[t]=[]),this.evenHandles[t].push(r),()=>{this.evenHandles[t].splice(this.evenHandles[t].indexOf(r),1)}}trigger(t,...r){if(S(this.evenHandles[t]))for(let n=0;n<this.evenHandles[t].length;n++){const a=this.evenHandles[t][n];a(...r)}}}const kn={handlers:[],tableParsers:[]};class Mn extends An{constructor(t={}){var r,n;if(super(),(n=(r=window.navigator)==null?void 0:r.clipboard)!=null&&n.read)this.props=Object.assign(kn,t),this.registerHandler(this.props.handlers);else throw new Error("You browser didn't support clipboard api!")}async getDataFromClipboard(){return new Promise((t,r)=>{window.navigator.clipboard.read().then(async n=>{const a=n[0];t(this.transformClipboardData(await this.formatClipboardData(a)))},n=>r(n))})}setCopy(t){return this.setCopyData(this.formatSetCopyData(t),!1)}formatCopyData(t){return this.setCopyData(this.formatSetCopyData(t),!0)}transformClipboardData(t){return _(t.clipboardType)||t.clipboardType.map(r=>{S(r)?r.map(n=>{n.value=this.handles[n.type]?this.handles[n.type].parse(n.value):n.value}):K(r)&&(r.value=this.handles[r.type]?this.handles[r.type].parse(r.value):r.value)}),t}setCopyData(t,r=!1){const n={text:this.getTextData(t),html:this.getHtmlData(t),clipboardType:this.getClipboardTypeData(t)};if(r)return n;this.trigger("beforeCopy",n);const a=[new ClipboardItem({[$.PLAIN]:new Blob([n.text],{type:$.PLAIN}),[$.HTML]:new Blob([n.html+`<div id="original-data" data-data="${encodeURIComponent(JSON.stringify(n.clipboardType))}"></div>`],{type:$.HTML})})];return window.navigator.clipboard.write(a).then(()=>this.trigger("copySucceeded",a),s=>this.trigger("copyFailed",s)),n}}const Pn=new Mn,je=({data:e=[],onChange:t=()=>{},tableHeight:r="460px",limitation:n={}})=>{const{messageApi:a}=y.useContext(F),{title:s=15,content:d=2e3}=n,{t:g}=M.useTranslation();function u(c){const h=e.findIndex(p=>p.label===c.label);e[h]=c,t([...e])}function l(){const c=[{label:`#${e.length+1}`,content:""},...e];t(c),a.success(g("createSuccessfully"))}function m(c){const h=e.filter(p=>p.label!==c);t(h)}async function x(){const p=[...(await Pn.getDataFromClipboard()).clipboardType.map(C=>{var k,T;return{label:((k=C==null?void 0:C[0])==null?void 0:k.value)??"",content:((T=C==null?void 0:C[1])==null?void 0:T.value)??""}}).filter(C=>C.label&&C.content),...e];t(gt.uniqBy(p,"label"))}return o.jsxs(i.Table,{bordered:!0,dataSource:e,pagination:!1,rowKey:"label",size:"small",scroll:{y:r,x:"max-content"},locale:{emptyText:()=>o.jsxs(i.Space,{direction:"vertical",size:24,style:{width:"100%",textAlign:"center",padding:"62px 0px"},children:[o.jsx(i.Empty,{}),o.jsx(i.Button,{type:"primary",onClick:l,children:g("create")})]})},footer:()=>o.jsxs(i.Flex,{style:{width:"100%"},justify:"space-between",children:[o.jsx(i.Space,{children:o.jsx("div",{})}),o.jsxs(i.Space,{size:12,children:[o.jsx(i.Button,{block:!0,type:"text",onClick:x,children:g("importFromClipboard")}),o.jsx(i.Button,{type:"primary",onClick:l,children:g("create")})]})]}),children:[o.jsx(i.Table.Column,{title:g("titleFieldName"),dataIndex:"label",width:400,render:(c,h)=>o.jsx($e,{maxLength:s,type:"input",value:c,onChange:p=>{if(h.label!==p){if(e.find(C=>C.label===p)){a.error(g("cannotSavedMessageCuzLabelExisted"));return}if(p.trim()===""){a.error(g("cannotSavedMessageCuzLabelEmpty"));return}h.label=p,u(h)}}})},"label"),o.jsx(i.Table.Column,{title:g("content"),dataIndex:"content",width:400,render:(c,h)=>o.jsx($e,{maxLength:d,type:"textarea",value:c,onChange:p=>{if(p.trim()===""){a.error(g("cannotSavedMessageCuzContentEmpty"));return}h.content=p,u(h)}})},"content"),o.jsx(i.Table.Column,{title:"操作",dataIndex:"id",width:120,render:(c,h)=>o.jsx(i.Space,{size:4,children:o.jsx(i.Button,{size:"small",type:"text",danger:!0,onClick:()=>m(h.label),children:g("delete")})})},"id")]})},wn=j.div`
4
4
  border: 1px solid transparent;
5
5
  padding: 0 4px;
6
6
  margin: 0 -4px;
@@ -10,7 +10,7 @@
10
10
  &:hover {
11
11
  border-color: ${e=>e.$isDark?"#4d4848":"#c0bbbb"};
12
12
  }
13
- `;function $e(e){const[t,r]=b.useState(!1),n=b.useRef(null),a=Q();b.useEffect(()=>{t&&n.current&&(e.type==="input"?n.current.select():n.current.focus())},[t,e.type]);function s(){r(!0)}function d(u){r(!1),e.onChange(u)}function g(u){e.onChange(u),n.current.blur()}if(t){if(e.type==="textarea")return o.jsx("div",{style:{paddingBottom:18},children:o.jsx(i.Input.TextArea,{showCount:!0,maxLength:e.maxLength,defaultValue:e.value,ref:n,size:"small",style:{width:"100%"},autoSize:{minRows:4,maxRows:4},onBlur:u=>d(u.target.value),onKeyDown:u=>{if(u.key==="Enter"){if(u.shiftKey||u.ctrlKey||u.metaKey)return;{u.preventDefault();const l=u.target;return g(l.value),!1}}}})});if(e.type==="input")return o.jsx(i.Input,{showCount:!0,maxLength:e.maxLength,defaultValue:e.value,ref:n,size:"small",style:{width:"100%"},onBlur:u=>d(u.target.value),onPressEnter:u=>{const l=u.target;g(l.value)}})}return o.jsx(wn,{onClick:s,$isDark:a,children:o.jsx("div",{style:{minHeight:22},dangerouslySetInnerHTML:{__html:e.value.trim().split(`
13
+ `;function $e(e){const[t,r]=y.useState(!1),n=y.useRef(null),a=Q();y.useEffect(()=>{t&&n.current&&(e.type==="input"?n.current.select():n.current.focus())},[t,e.type]);function s(){r(!0)}function d(u){r(!1),e.onChange(u)}function g(u){e.onChange(u),n.current.blur()}if(t){if(e.type==="textarea")return o.jsx("div",{style:{paddingBottom:18},children:o.jsx(i.Input.TextArea,{showCount:!0,maxLength:e.maxLength,defaultValue:e.value,ref:n,size:"small",style:{width:"100%"},autoSize:{minRows:4,maxRows:4},onBlur:u=>d(u.target.value),onKeyDown:u=>{if(u.key==="Enter"){if(u.shiftKey||u.ctrlKey||u.metaKey)return;{u.preventDefault();const l=u.target;return g(l.value),!1}}}})});if(e.type==="input")return o.jsx(i.Input,{showCount:!0,maxLength:e.maxLength,defaultValue:e.value,ref:n,size:"small",style:{width:"100%"},onBlur:u=>d(u.target.value),onPressEnter:u=>{const l=u.target;g(l.value)}})}return o.jsx(wn,{onClick:s,$isDark:a,children:o.jsx("div",{style:{minHeight:22},dangerouslySetInnerHTML:{__html:e.value.trim().split(`
14
14
  `).slice(0,4).join("<br/>")+(e.value.trim().split(`
15
15
  `).length>4?"...":"")}})})}const On=j.div``,Dn=j.div`
16
16
  min-height: 380px;
@@ -31,7 +31,7 @@
31
31
  height: 12px;
32
32
  border: 1px solid #fff;
33
33
  border-radius: 4px;
34
- `,Ae=({data:e=[],onChange:t=()=>{},...r})=>{const[n,a]=b.useState([]),{t:s}=M.useTranslation();b.useEffect(()=>{e.length>0&&a([e[0].id])},[]);const d=b.useMemo(()=>e.map(c=>({key:c.id,label:o.jsx(In,{children:o.jsxs(i.Flex,{justify:"space-between",align:"center",children:[o.jsxs(i.Space,{children:[o.jsx("span",{children:c.title}),c.data.length?o.jsxs(En,{children:["(",c.data.length,")"]}):null]}),o.jsxs(i.Space,{size:8,children:[o.jsx(Nn,{$color:c.color}),o.jsx(Ln,{data:c,onSaved:h=>u(c.id,h)}),o.jsx(i.Popconfirm,{title:s("confirmDelete"),onConfirm:()=>l(c.id),children:o.jsx(i.Button,{danger:!0,size:"small",icon:o.jsx(G.DeleteOutlined,{}),type:"text"})})]})]})})})),[e]),g=b.useMemo(()=>{const c=n[0];if(c){const h=e.find(p=>p.id===c);if(h)return h.data}return!1},[n,e]);function u(c,h){const p=[...e],C=p.findIndex(k=>k.id===c);~C&&(p[C]={...p[C],...h}),t(p)}function l(c){const h=[...e].filter(p=>p.id!==c);t(h)}function m(c){const h=[...e],p=n[0];if(p){const C=h.find(k=>k.id===p);C&&(C.data=c)}t(h)}function x(c){const h=Ct(),p=[...e];p.push({id:h,color:c.color,title:c.title,data:[]}),t(p),a([h])}return d.length===0?o.jsxs(i.Flex,{vertical:!0,align:"center",gap:8,children:[o.jsx(i.Empty,{description:s("noData")}),o.jsx(ke,{onCreate:x})]}):o.jsx(On,{children:o.jsxs(i.Flex,{gap:16,children:[o.jsxs(i.Space,{direction:"vertical",children:[o.jsx(Dn,{children:o.jsx(i.Menu,{items:d,style:{width:300},selectedKeys:n,onSelect:({key:c})=>{a([c])}})}),o.jsx(ke,{onCreate:x,block:!0})]}),g?o.jsx(je,{data:g,onChange:m,...r}):o.jsx(i.Alert,{type:"info",message:s("selectAGroupFirst"),style:{height:60,minWidth:400}})]})})};function Ln(e){const[t,r]=b.useState({title:"",color:""});return o.jsx(Me,{isEdit:!1,onCompleteChange:e.onSaved,data:t,onOpenChange:n=>{n&&r(e.data)},onDataChange:n=>r(n),children:o.jsx(i.Button,{size:"small",icon:o.jsx(G.EditOutlined,{}),type:"text"})})}function ke(e){const{t}=M.useTranslation(),r={title:"",color:"#1677FF"},[n,a]=b.useState({...r});return o.jsx(Me,{isEdit:!1,onCompleteChange:e.onCreate,data:n,onOpenChange:s=>{s&&a({...r})},onDataChange:s=>a(s),children:o.jsx(i.Button,{block:!!e.block,icon:o.jsx(G.PlusOutlined,{}),children:t("addNewGroup")})})}function Me(e){const[t,r]=b.useState(!1),[n,a]=b.useState(""),s=b.useRef(null),{t:d}=M.useTranslation();b.useEffect(()=>{e.onOpenChange(t)},[t]),b.useEffect(()=>{t?(a(e.data.color),setTimeout(()=>{var l;(l=s.current)==null||l.focus()},300)):a("")},[e.data]);function g(){e.data.title.trim().length!==0&&(e.onCompleteChange({title:e.data.title.trim(),color:e.data.color}),r(!1))}function u(l,m){e.onDataChange({...e.data,[l]:m})}return o.jsx(o.Fragment,{children:o.jsx(i.Popover,{title:e.isEdit?d("editGroup"):d("createGroup"),open:t,onOpenChange:r,trigger:["click"],content:o.jsxs(i.Space,{direction:"vertical",size:16,children:[o.jsxs(i.Space,{size:16,children:[o.jsxs("span",{children:[d("titleFieldName"),":"]}),o.jsx(i.Input,{ref:s,showCount:!0,maxLength:20,value:e.data.title,onChange:l=>u("title",l.target.value)})]}),o.jsxs(i.Space,{size:16,children:[o.jsxs("span",{children:[d("colorFieldName"),":"]}),n&&o.jsx(i.ColorPicker,{value:n,onChange:l=>a(`#${l.toHex()}`),showText:!0,onChangeComplete:l=>{u("color",`#${l.toHex()}`)}})]}),o.jsx(i.Button,{block:!0,type:"primary",onClick:g,children:e.isEdit?d("create"):d("save")})]}),children:e.children})})}const Pe=({open:e,onOpenChange:t=()=>{},children:r,...n})=>{const[a,s]=b.useState(e),{t:d}=M.useTranslation();return b.useEffect(()=>{s(!!e)},[e]),o.jsxs(o.Fragment,{children:[o.jsx(i.Modal,{title:d("quickMessageConfigs"),open:a,onCancel:()=>{s(!1),t(!1)},width:980,footer:null,children:o.jsx(Ae,{...n})}),o.jsx("span",{onClick:()=>{s(!0),t(!0)},children:r})]})},Gn=j.div`
34
+ `,Ae=({data:e=[],onChange:t=()=>{},...r})=>{const[n,a]=y.useState([]),{t:s}=M.useTranslation();y.useEffect(()=>{e.length>0&&a([e[0].id])},[]);const d=y.useMemo(()=>e.map(c=>({key:c.id,label:o.jsx(In,{children:o.jsxs(i.Flex,{justify:"space-between",align:"center",children:[o.jsxs(i.Space,{children:[o.jsx("span",{children:c.title}),c.data.length?o.jsxs(En,{children:["(",c.data.length,")"]}):null]}),o.jsxs(i.Space,{size:8,children:[o.jsx(Nn,{$color:c.color}),o.jsx(Ln,{data:c,onSaved:h=>u(c.id,h)}),o.jsx(i.Popconfirm,{title:s("confirmDelete"),onConfirm:()=>l(c.id),children:o.jsx(i.Button,{danger:!0,size:"small",icon:o.jsx(G.DeleteOutlined,{}),type:"text"})})]})]})})})),[e]),g=y.useMemo(()=>{const c=n[0];if(c){const h=e.find(p=>p.id===c);if(h)return h.data}return!1},[n,e]);function u(c,h){const p=[...e],C=p.findIndex(k=>k.id===c);~C&&(p[C]={...p[C],...h}),t(p)}function l(c){const h=[...e].filter(p=>p.id!==c);t(h)}function m(c){const h=[...e],p=n[0];if(p){const C=h.find(k=>k.id===p);C&&(C.data=c)}t(h)}function x(c){const h=Ct(),p=[...e];p.push({id:h,color:c.color,title:c.title,data:[]}),t(p),a([h])}return d.length===0?o.jsxs(i.Flex,{vertical:!0,align:"center",gap:8,children:[o.jsx(i.Empty,{description:s("noData")}),o.jsx(ke,{onCreate:x})]}):o.jsx(On,{children:o.jsxs(i.Flex,{gap:16,children:[o.jsxs(i.Space,{direction:"vertical",children:[o.jsx(Dn,{children:o.jsx(i.Menu,{items:d,style:{width:300},selectedKeys:n,onSelect:({key:c})=>{a([c])}})}),o.jsx(ke,{onCreate:x,block:!0})]}),o.jsx("div",{style:{flex:1,minWidth:0},children:g?o.jsx(je,{data:g,onChange:m,...r}):o.jsx(i.Alert,{type:"info",message:s("selectAGroupFirst"),style:{height:60,minWidth:400}})})]})})};function Ln(e){const[t,r]=y.useState({title:"",color:""});return o.jsx(Me,{isEdit:!1,onCompleteChange:e.onSaved,data:t,onOpenChange:n=>{n&&r(e.data)},onDataChange:n=>r(n),children:o.jsx(i.Button,{size:"small",icon:o.jsx(G.EditOutlined,{}),type:"text"})})}function ke(e){const{t}=M.useTranslation(),r={title:"",color:"#1677FF"},[n,a]=y.useState({...r});return o.jsx(Me,{isEdit:!1,onCompleteChange:e.onCreate,data:n,onOpenChange:s=>{s&&a({...r})},onDataChange:s=>a(s),children:o.jsx(i.Button,{block:!!e.block,icon:o.jsx(G.PlusOutlined,{}),children:t("addNewGroup")})})}function Me(e){const[t,r]=y.useState(!1),[n,a]=y.useState(""),s=y.useRef(null),{t:d}=M.useTranslation();y.useEffect(()=>{e.onOpenChange(t)},[t]),y.useEffect(()=>{t?(a(e.data.color),setTimeout(()=>{var l;(l=s.current)==null||l.focus()},300)):a("")},[e.data]);function g(){e.data.title.trim().length!==0&&(e.onCompleteChange({title:e.data.title.trim(),color:e.data.color}),r(!1))}function u(l,m){e.onDataChange({...e.data,[l]:m})}return o.jsx(o.Fragment,{children:o.jsx(i.Popover,{title:e.isEdit?d("editGroup"):d("createGroup"),open:t,onOpenChange:r,trigger:["click"],content:o.jsxs(i.Space,{direction:"vertical",size:16,children:[o.jsxs(i.Space,{size:16,children:[o.jsxs("span",{children:[d("titleFieldName"),":"]}),o.jsx(i.Input,{ref:s,showCount:!0,maxLength:20,value:e.data.title,onChange:l=>u("title",l.target.value)})]}),o.jsxs(i.Space,{size:16,children:[o.jsxs("span",{children:[d("colorFieldName"),":"]}),n&&o.jsx(i.ColorPicker,{value:n,onChange:l=>a(`#${l.toHex()}`),showText:!0,onChangeComplete:l=>{u("color",`#${l.toHex()}`)}})]}),o.jsx(i.Button,{block:!0,type:"primary",onClick:g,children:e.isEdit?d("create"):d("save")})]}),children:e.children})})}const Pe=({open:e,onOpenChange:t=()=>{},children:r,...n})=>{const[a,s]=y.useState(e),{t:d}=M.useTranslation();return y.useEffect(()=>{s(!!e)},[e]),o.jsxs(o.Fragment,{children:[o.jsx(i.Modal,{title:d("quickMessageConfigs"),open:a,onCancel:()=>{s(!1),t(!1)},width:980,footer:null,children:o.jsx(Ae,{...n})}),o.jsx("span",{onClick:()=>{s(!0),t(!0)},children:r})]})},Gn=j.div`
35
35
  font-size: 14px;
36
36
  background: #dae5f8;
37
37
  padding: 0 4px;
@@ -51,7 +51,7 @@
51
51
  }
52
52
  `,Hn=j.div`
53
53
  min-height: 18px;
54
- `,_n=({data:e=[],onChange:t,tableHeight:r,limitation:n,displayTitleMaxLength:a=10,displayMaxLength:s=99,SlotContentPrefixSlot:d,SlotContentSuffixSlot:g,onSelect:u=()=>{}})=>{const[l,m]=b.useState(!1),[x,c]=ht.useLocalStorage("__activeGroupId",""),{t:h}=M.useTranslation(),p=b.useMemo(()=>e.find(T=>T.id===x),[x,e]),C=b.useMemo(()=>p?p.data:[],[p,e]),k=b.useMemo(()=>e.length===0,[e]);return o.jsxs(o.Fragment,{children:[k?o.jsx(i.Button,{size:"small",type:"primary",onClick:()=>m(!0),children:h("create")}):o.jsxs(i.Space,{size:2,direction:"vertical",children:[o.jsx(Hn,{children:o.jsx(i.Space,{size:8,children:C.slice(0,s).map(T=>o.jsx(i.Tooltip,{title:o.jsx("span",{style:{fontSize:12},children:T.label}),destroyTooltipOnHide:!0,children:o.jsxs(Gn,{onClick:Kn=>{Kn.target.closest("bdi")||u(T)},children:[d&&o.jsx("bdi",{children:o.jsx(d,{group:p,message:T})}),Z(T.label,a),g&&o.jsxs("bdi",{children:[o.jsx(g,{group:p,message:T})," "]})]})},T.label))})}),o.jsxs(i.Space,{size:8,children:[e.slice(0,s).map(T=>o.jsx(zn,{data:T,active:x===T.id,displayTitleMaxLength:a,onClick:()=>{c(x===T.id?"":T.id)}},T.id)),o.jsx(i.Button,{size:"small",type:"text",onClick:()=>m(!0),children:o.jsx(G.SettingOutlined,{})})]})]}),o.jsx(Pe,{open:l,onOpenChange:m,data:e,onChange:t,tableHeight:r,limitation:n})]})},Fn=j.div`
54
+ `,_n=({data:e=[],onChange:t,tableHeight:r,limitation:n,displayTitleMaxLength:a=10,displayMaxLength:s=99,SlotContentPrefixSlot:d,SlotContentSuffixSlot:g,onSelect:u=()=>{}})=>{const[l,m]=y.useState(!1),[x,c]=ht.useLocalStorage("__activeGroupId",""),{t:h}=M.useTranslation(),p=y.useMemo(()=>e.find(T=>T.id===x),[x,e]),C=y.useMemo(()=>p?p.data:[],[p,e]),k=y.useMemo(()=>e.length===0,[e]);return o.jsxs(o.Fragment,{children:[k?o.jsx(i.Button,{size:"small",type:"primary",onClick:()=>m(!0),children:h("create")}):o.jsxs(i.Space,{size:2,direction:"vertical",children:[o.jsx(Hn,{children:o.jsx(i.Space,{size:8,children:C.slice(0,s).map(T=>o.jsx(i.Tooltip,{title:o.jsx("span",{style:{fontSize:12},children:T.label}),destroyTooltipOnHide:!0,children:o.jsxs(Gn,{onClick:Wn=>{Wn.target.closest("bdi")||u(T)},children:[d&&o.jsx("bdi",{children:o.jsx(d,{group:p,message:T})}),Z(T.label,a),g&&o.jsxs("bdi",{children:[o.jsx(g,{group:p,message:T})," "]})]})},T.label))})}),o.jsxs(i.Space,{size:8,children:[e.slice(0,s).map(T=>o.jsx(zn,{data:T,active:x===T.id,displayTitleMaxLength:a,onClick:()=>{c(x===T.id?"":T.id)}},T.id)),o.jsx(i.Button,{size:"small",type:"text",onClick:()=>m(!0),children:o.jsx(G.SettingOutlined,{})})]})]}),o.jsx(Pe,{open:l,onOpenChange:m,data:e,onChange:t,tableHeight:r,limitation:n})]})},Fn=j.div`
55
55
  background-color: ${e=>e.$backgroundColor};
56
56
  color: ${e=>e.$textColor};
57
57
  border: 1px solid transparent;
@@ -68,4 +68,4 @@
68
68
  &:active {
69
69
  opacity: 0.6;
70
70
  }
71
- `;function zn(e){const t=b.useMemo(()=>{var s,d;const r=bt(e.data.color),n=r.isDark(),a=n?(s=r.lighten(.2))==null?void 0:s.hex():(d=r.darken(.15))==null?void 0:d.hex();return{$textColor:n?"#fff":"#333",$backgroundColor:e.data.color,$hoverColor:a}},[e.data.color]);return o.jsx(Fn,{...t,$active:e.active,"data-id":e.data.id,onClick:e.onClick,title:e.data.title,children:Z(e.data.title,e.displayTitleMaxLength)})}/*! This file was generated by vite-i18n-gen-resources-type check https://github.com/CRMChatReactComponent/vite-i18n-gen-resources-type. Please do not modify. */var we=(e=>(e.ZH_CN="zh-CN",e.EN_US="en-US",e))(we||{});const Oe="Are you sure to delete it?",De="No data available",Ee="Select a Group first",Ie="Create a Group",Ne="Edit Group",Le="Create Group",Ge="Title",He="Color",_e="Save",Fe="Create",ze="Quick Messages Configs",Be="Created Successfully",qe="Cannot be saved: title already existing",Ke="Cannot be saved: title is empty",We="Cannot be saved: content is empty",Ue="Content",Ve="Import from Clipboard",Bn=Object.freeze(Object.defineProperty({__proto__:null,addNewGroup:Ie,cannotSavedMessageCuzContentEmpty:We,cannotSavedMessageCuzLabelEmpty:Ke,cannotSavedMessageCuzLabelExisted:qe,colorFieldName:He,confirmDelete:Oe,content:Ue,create:Fe,createGroup:Le,createSuccessfully:Be,default:{confirmDelete:Oe,noData:De,selectAGroupFirst:Ee,addNewGroup:Ie,editGroup:Ne,createGroup:Le,titleFieldName:Ge,colorFieldName:He,save:_e,create:Fe,quickMessageConfigs:ze,createSuccessfully:Be,cannotSavedMessageCuzLabelExisted:qe,cannotSavedMessageCuzLabelEmpty:Ke,cannotSavedMessageCuzContentEmpty:We,content:Ue,delete:"Delete",importFromClipboard:Ve},editGroup:Ne,importFromClipboard:Ve,noData:De,quickMessageConfigs:ze,save:_e,selectAGroupFirst:Ee,titleFieldName:Ge},Symbol.toStringTag,{value:"Module"})),Ye="确定删除吗?",Je="没有数据",Xe="请在左侧选择一个分组",Qe="添加一个分组",Ze="编辑分组",Re="新建分组",et="标题",tt="颜色",rt="保存",nt="创建",ot="快捷消息配置",at="创建成功",st="无法保存: 标题重复",it="无法保存: 标题不能为空",lt="无法保存: 内容不能为空",ct="内容",ut="从剪切板导入",dt=Object.entries(Object.assign({"./locales/en-US/common.json":Bn,"./locales/zh-CN/common.json":Object.freeze(Object.defineProperty({__proto__:null,addNewGroup:Qe,cannotSavedMessageCuzContentEmpty:lt,cannotSavedMessageCuzLabelEmpty:it,cannotSavedMessageCuzLabelExisted:st,colorFieldName:tt,confirmDelete:Ye,content:ct,create:nt,createGroup:Re,createSuccessfully:at,default:{confirmDelete:Ye,noData:Je,selectAGroupFirst:Xe,addNewGroup:Qe,editGroup:Ze,createGroup:Re,titleFieldName:et,colorFieldName:tt,save:rt,create:nt,quickMessageConfigs:ot,createSuccessfully:at,cannotSavedMessageCuzLabelExisted:st,cannotSavedMessageCuzLabelEmpty:it,cannotSavedMessageCuzContentEmpty:lt,content:ct,delete:"删除",importFromClipboard:ut},editGroup:Ze,importFromClipboard:ut,noData:Je,quickMessageConfigs:ot,save:rt,selectAGroupFirst:Xe,titleFieldName:et},Symbol.toStringTag,{value:"Module"}))})).reduce((e,t)=>{const[r,n]=t,a=r.match(/\/locales\/([\w-]+)\//),s=r.match(/\/([\w-_]+)\.json$/);return s&&a?(e[a[1]]=e[a[1]]||{},e[a[1]][s[1]]=n.default):console.error(`无法解析文件名称 path:${r}`),e},{}),pt=yt.createInstance();pt.init({lng:we.ZH_CN,debug:!1,ns:Object.keys(dt),resources:dt});const ft=b.createContext(null);function qn(e){return o.jsx(M.I18nextProvider,{i18n:e.i18n||pt,defaultNS:"common",children:o.jsx(ft.Provider,{value:{},children:e.children})})}f.AntdApiContext=F,f.AntdApiContextProviderCmp=Tt,f.EmojiPickerWrapper=mt,f.I18nContext=ft,f.I18nContextCmp=qn,f.MessageConfigsPanel=Ae,f.MessageConfigsPanelModalWrapper=Pe,f.MessagesEditTable=je,f.QuickMessages=_n,Object.defineProperty(f,Symbol.toStringTag,{value:"Module"})});
71
+ `;function zn(e){const t=y.useMemo(()=>{var s,d;const r=yt(e.data.color),n=r.isDark(),a=n?(s=r.lighten(.2))==null?void 0:s.hex():(d=r.darken(.15))==null?void 0:d.hex();return{$textColor:n?"#fff":"#333",$backgroundColor:e.data.color,$hoverColor:a}},[e.data.color]);return o.jsx(Fn,{...t,$active:e.active,"data-id":e.data.id,onClick:e.onClick,title:e.data.title,children:Z(e.data.title,e.displayTitleMaxLength)})}/*! This file was generated by vite-i18n-gen-resources-type check https://github.com/CRMChatReactComponent/vite-i18n-gen-resources-type. Please do not modify. */var we=(e=>(e.ZH_CN="zh-CN",e.EN_US="en-US",e))(we||{});const Oe="Are you sure to delete it?",De="No data available",Ee="Select a Group first",Ie="Create a Group",Ne="Edit Group",Le="Create Group",Ge="Title",He="Color",_e="Save",Fe="Create",ze="Quick Messages Configs",Be="Created Successfully",qe="Cannot be saved: title already existing",We="Cannot be saved: title is empty",Ke="Cannot be saved: content is empty",Ue="Content",Ve="Import from Clipboard",Bn=Object.freeze(Object.defineProperty({__proto__:null,addNewGroup:Ie,cannotSavedMessageCuzContentEmpty:Ke,cannotSavedMessageCuzLabelEmpty:We,cannotSavedMessageCuzLabelExisted:qe,colorFieldName:He,confirmDelete:Oe,content:Ue,create:Fe,createGroup:Le,createSuccessfully:Be,default:{confirmDelete:Oe,noData:De,selectAGroupFirst:Ee,addNewGroup:Ie,editGroup:Ne,createGroup:Le,titleFieldName:Ge,colorFieldName:He,save:_e,create:Fe,quickMessageConfigs:ze,createSuccessfully:Be,cannotSavedMessageCuzLabelExisted:qe,cannotSavedMessageCuzLabelEmpty:We,cannotSavedMessageCuzContentEmpty:Ke,content:Ue,delete:"Delete",importFromClipboard:Ve},editGroup:Ne,importFromClipboard:Ve,noData:De,quickMessageConfigs:ze,save:_e,selectAGroupFirst:Ee,titleFieldName:Ge},Symbol.toStringTag,{value:"Module"})),Ye="确定删除吗?",Je="没有数据",Xe="请在左侧选择一个分组",Qe="添加一个分组",Ze="编辑分组",Re="新建分组",et="标题",tt="颜色",rt="保存",nt="创建",ot="快捷消息配置",at="创建成功",st="无法保存: 标题重复",it="无法保存: 标题不能为空",lt="无法保存: 内容不能为空",ct="内容",ut="从剪切板导入",dt=Object.entries(Object.assign({"./locales/en-US/common.json":Bn,"./locales/zh-CN/common.json":Object.freeze(Object.defineProperty({__proto__:null,addNewGroup:Qe,cannotSavedMessageCuzContentEmpty:lt,cannotSavedMessageCuzLabelEmpty:it,cannotSavedMessageCuzLabelExisted:st,colorFieldName:tt,confirmDelete:Ye,content:ct,create:nt,createGroup:Re,createSuccessfully:at,default:{confirmDelete:Ye,noData:Je,selectAGroupFirst:Xe,addNewGroup:Qe,editGroup:Ze,createGroup:Re,titleFieldName:et,colorFieldName:tt,save:rt,create:nt,quickMessageConfigs:ot,createSuccessfully:at,cannotSavedMessageCuzLabelExisted:st,cannotSavedMessageCuzLabelEmpty:it,cannotSavedMessageCuzContentEmpty:lt,content:ct,delete:"删除",importFromClipboard:ut},editGroup:Ze,importFromClipboard:ut,noData:Je,quickMessageConfigs:ot,save:rt,selectAGroupFirst:Xe,titleFieldName:et},Symbol.toStringTag,{value:"Module"}))})).reduce((e,t)=>{const[r,n]=t,a=r.match(/\/locales\/([\w-]+)\//),s=r.match(/\/([\w-_]+)\.json$/);return s&&a?(e[a[1]]=e[a[1]]||{},e[a[1]][s[1]]=n.default):console.error(`无法解析文件名称 path:${r}`),e},{}),pt=bt.createInstance();pt.init({lng:we.ZH_CN,debug:!1,ns:Object.keys(dt),resources:dt});const ft=y.createContext(null);function qn(e){return o.jsx(M.I18nextProvider,{i18n:e.i18n||pt,defaultNS:"common",children:o.jsx(ft.Provider,{value:{},children:e.children})})}f.AntdApiContext=F,f.AntdApiContextProviderCmp=Tt,f.EmojiPickerWrapper=mt,f.I18nContext=ft,f.I18nContextCmp=qn,f.MessageConfigsPanel=Ae,f.MessageConfigsPanelModalWrapper=Pe,f.MessagesEditTable=je,f.QuickMessages=_n,Object.defineProperty(f,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@crmchatreactcomponent/quick-messages",
3
3
  "private": false,
4
- "version": "0.0.8",
4
+ "version": "0.0.9",
5
5
  "type": "module",
6
6
  "main": "./dist/index.umd.js",
7
7
  "module": "./dist/index.es.js",
@@ -19,6 +19,20 @@
19
19
  },
20
20
  "author": "CarlJin",
21
21
  "homepage": "https://quick-messages-component.pages.dev/",
22
+ "scripts": {
23
+ "serve": "pnpm run sb",
24
+ "build": "vite build && tsc -p ./tsconfig.dist.json -emitDeclarationOnly && tsc-alias -p ./tsconfig.dist.json",
25
+ "lint": "eslint --fix --ext .js,.jsx,.ts,.tsx ./src",
26
+ "checkUpdate": "NPM_CHECK_INSTALLER=pnpm npm-check -u -i",
27
+ "typecheck": "tsc -p tsconfig.json",
28
+ "format": "npx prettier --write \"**/*.{js,mjs,cjs,ts,tsx,jsx,json}\"",
29
+ "sb": "storybook dev -p 6006",
30
+ "sb:build": "storybook build",
31
+ "sb:preview": "serve ./storybook-static",
32
+ "test": "vitest",
33
+ "test:run": "vitest run",
34
+ "coverage": "vitest run --coverage"
35
+ },
22
36
  "dependencies": {
23
37
  "@ant-design/icons": "^5.3.1",
24
38
  "antd": "^5.15.1",
@@ -77,19 +91,5 @@
77
91
  "vite-i18n-gen-resources-type": "^0.0.4",
78
92
  "vite-tsconfig-paths": "^4.3.1",
79
93
  "vitest": "^1.3.1"
80
- },
81
- "scripts": {
82
- "serve": "pnpm run sb",
83
- "build": "vite build && tsc -p ./tsconfig.dist.json -emitDeclarationOnly && tsc-alias -p ./tsconfig.dist.json",
84
- "lint": "eslint --fix --ext .js,.jsx,.ts,.tsx ./src",
85
- "checkUpdate": "NPM_CHECK_INSTALLER=pnpm npm-check -u -i",
86
- "typecheck": "tsc -p tsconfig.json",
87
- "format": "npx prettier --write \"**/*.{js,mjs,cjs,ts,tsx,jsx,json}\"",
88
- "sb": "storybook dev -p 6006",
89
- "sb:build": "storybook build",
90
- "sb:preview": "serve ./storybook-static",
91
- "test": "vitest",
92
- "test:run": "vitest run",
93
- "coverage": "vitest run --coverage"
94
94
  }
95
- }
95
+ }