@univerjs/sheets-hyper-link-ui 1.0.0-beta.1 → 1.0.0-beta.2
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/lib/cjs/index.js +1 -1
- package/lib/es/index.js +1 -1
- package/lib/index.js +1 -1
- package/lib/umd/index.js +1 -1
- package/package.json +15 -15
package/lib/cjs/index.js
CHANGED
|
@@ -1539,7 +1539,7 @@ const menuSchema = {
|
|
|
1539
1539
|
//#endregion
|
|
1540
1540
|
//#region package.json
|
|
1541
1541
|
var name = "@univerjs/sheets-hyper-link-ui";
|
|
1542
|
-
var version = "1.0.0-beta.
|
|
1542
|
+
var version = "1.0.0-beta.2";
|
|
1543
1543
|
|
|
1544
1544
|
//#endregion
|
|
1545
1545
|
//#region src/controllers/auto-fill.controller.ts
|
package/lib/es/index.js
CHANGED
|
@@ -1538,7 +1538,7 @@ const menuSchema = {
|
|
|
1538
1538
|
//#endregion
|
|
1539
1539
|
//#region package.json
|
|
1540
1540
|
var name = "@univerjs/sheets-hyper-link-ui";
|
|
1541
|
-
var version = "1.0.0-beta.
|
|
1541
|
+
var version = "1.0.0-beta.2";
|
|
1542
1542
|
|
|
1543
1543
|
//#endregion
|
|
1544
1544
|
//#region src/controllers/auto-fill.controller.ts
|
package/lib/index.js
CHANGED
|
@@ -1538,7 +1538,7 @@ const menuSchema = {
|
|
|
1538
1538
|
//#endregion
|
|
1539
1539
|
//#region package.json
|
|
1540
1540
|
var name = "@univerjs/sheets-hyper-link-ui";
|
|
1541
|
-
var version = "1.0.0-beta.
|
|
1541
|
+
var version = "1.0.0-beta.2";
|
|
1542
1542
|
|
|
1543
1543
|
//#endregion
|
|
1544
1544
|
//#region src/controllers/auto-fill.controller.ts
|
package/lib/umd/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@univerjs/core"),require("@univerjs/sheets"),require("@univerjs/sheets-ui"),require("@univerjs/docs"),require("@univerjs/docs-ui"),require("@univerjs/engine-render"),require("rxjs"),require("@univerjs/design"),require("@univerjs/engine-formula"),require("@univerjs/sheets-formula-ui"),require("@univerjs/sheets-hyper-link"),require("@univerjs/ui"),require("react"),require("react/jsx-runtime"),require("@univerjs/sheets-data-validation")):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/sheets`,`@univerjs/sheets-ui`,`@univerjs/docs`,`@univerjs/docs-ui`,`@univerjs/engine-render`,`rxjs`,`@univerjs/design`,`@univerjs/engine-formula`,`@univerjs/sheets-formula-ui`,`@univerjs/sheets-hyper-link`,`@univerjs/ui`,`react`,`react/jsx-runtime`,`@univerjs/sheets-data-validation`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverSheetsHyperLinkUi={},e.UniverCore,e.UniverSheets,e.UniverSheetsUi,e.UniverDocs,e.UniverDocsUi,e.UniverEngineRender,e.rxjs,e.UniverDesign,e.UniverEngineFormula,e.UniverSheetsFormulaUi,e.UniverSheetsHyperLink,e.UniverUi,e.React,e.React,e.UniverSheetsDataValidation))})(this,function(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});function g(e){return t.Tools.isLegalUrl(e)}function _(e){return/^[a-zA-Z]+:\/\//.test(e)}function v(e){return/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/.test(e)}function y(e){if(g(e)){let t=_(e)?e:v(e)?`mailto://${e}`:`http://${e}`,n;try{n=new URL(t)}catch{return e}return n.hostname===location.hostname&&n.port===location.port&&n.protocol===location.protocol&&n.pathname===location.pathname&&n.hash&&!n.search?n.hash:t}return e}let b=`sheets-hyper-link-ui.config`,x={};function S(e,t){return function(n,r){t(n,r,e)}}function C(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function w(e,n){let r=n.getMergeData(),i=n.getMaxColumns()-1,a=n.getMaxRows()-1;if(i<e.endColumn&&(e.endColumn=i),a<e.endRow&&(e.endRow=a),e.rangeType===t.RANGE_TYPE.COLUMN||t.RANGE_TYPE.ROW)return e;let o=[];return r.forEach(n=>{t.Rectangle.intersects(e,n)&&o.push(n)}),t.Rectangle.realUnion(e,...o)}let T=class{constructor(e,t,n,r,i,a){this._univerInstanceService=e,this._commandService=t,this._definedNamesService=n,this._messageService=r,this._localeService=i,this._configService=a}navigate(e){switch(e.type){case d.SheetHyperLinkType.URL:this.navigateToOtherWebsite(e.url);break;default:this._navigateToUniver(e.searchObj)}}_navigateToUniver(e){let{gid:n,range:r,rangeid:i}=e,a=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET);if(!a)return;let o=a.getUnitId();if(i){let e=this._definedNamesService.getValueById(o,i);if(!e)return;let{formulaOrRefString:t}=e,n=this._definedNamesService.getWorksheetByRef(o,t);if(!n){this._messageService.show({content:this._localeService.t(`sheets-hyper-link-ui.message.refError`),type:c.MessageType.Error});return}if(n.isSheetHidden()){this._messageService.show({content:this._localeService.t(`sheets-hyper-link-ui.message.hiddenSheet`),type:c.MessageType.Error});return}this.navigateToDefineName(o,i)}if(n){if(r){let e=(0,l.deserializeRangeWithSheet)(r);(0,t.isValidRange)(e.range)&&r!==d.ERROR_RANGE&&this.navigateToRange(o,n,e.range);return}this.navigateToSheetById(o,n)}}async navigateToRange(e,t,i,a){let o=await this.navigateToSheetById(e,t);if(o){let s=w(i,o);await this._commandService.executeCommand(n.SetSelectionsOperation.id,{unitId:e,subUnitId:t,selections:[{range:s,primary:null}]}),await this._commandService.executeCommand(r.ScrollToRangeOperation.id,{range:s,forceTop:a})}}async navigateToSheetById(e,r){let i=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_SHEET);if(!i)return!1;let a=i.getActiveSheet();if(!a)return!1;if(a.getSheetId()===r)return a;let o=i.getSheetBySheetId(r);return o?i.getHiddenWorksheets().indexOf(r)>-1?(this._messageService.show({content:this._localeService.t(`sheets-hyper-link-ui.message.hiddenSheet`),type:c.MessageType.Error}),!1):await this._commandService.executeCommand(n.SetWorksheetActiveOperation.id,{unitId:e,subUnitId:r})?o:!1:(this._messageService.show({content:this._localeService.t(`sheets-hyper-link-ui.message.noSheet`),type:c.MessageType.Error}),!1)}async navigateToDefineName(e,t){return this._definedNamesService.focusRange(e,t),!0}async navigateToOtherWebsite(e){var n;if(!(0,t.isSafeUrl)(e))return;let r=this._configService.getConfig(b);if(r!=null&&(n=r.urlHandler)!=null&&n.navigateToOtherWebsite)return r.urlHandler.navigateToOtherWebsite(e);window.open(e,`_blank`,`noopener noreferrer`)}};T=C([S(0,t.IUniverInstanceService),S(1,t.ICommandService),S(2,l.IDefinedNamesService),S(3,f.IMessageService),S(4,(0,t.Inject)(t.LocaleService)),S(5,t.IConfigService)],T);function E(e){"@babel/helpers - typeof";return E=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},E(e)}function D(e,t){if(E(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(E(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function O(e){var t=D(e,`string`);return E(t)==`symbol`?t:t+``}function k(e,t,n){return(t=O(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var ee=class extends t.Disposable{constructor(...e){super(...e),k(this,`_customHyperLinks`,new Map)}isBuiltInLinkType(e){return e!==d.SheetHyperLinkType.URL}getOptions(){return Array.from(this._customHyperLinks.values()).map(({option:e})=>e)}findCustomHyperLink(e){return Array.from(this._customHyperLinks.values()).find(t=>t.match(e))}registerCustomHyperLink(e){this._customHyperLinks.set(e.type,e)}getCustomHyperLink(e){return this._customHyperLinks.get(e)}removeCustomHyperLink(e){let{_customHyperLinks:t}=this;t.delete(e)}dispose(){super.dispose(),this._customHyperLinks.clear()}};function te(e){return e.trim().length===0}function ne(e,n){let[r]=e.split(`,`).map(l.deserializeRangeWithSheet);return!r||!(0,t.isValidRange)(r.range)?``:(r.sheetName||=n,(0,l.serializeRangeToRefString)(r))}let A=()=>{let[e,s]=(0,p.useState)(``),[h,_]=(0,p.useState)(!1),[v,b]=(0,p.useState)(``),[x,S]=(0,p.useState)(!0),[C,w]=(0,p.useState)(d.SheetHyperLinkType.URL),[E,D]=(0,p.useState)(``),O=(0,f.useDependency)(t.LocaleService),k=(0,f.useDependency)(l.IDefinedNamesService),A=(0,f.useDependency)(r.IEditorBridgeService),j=(0,f.useDependency)(t.IUniverInstanceService),M=(0,f.useDependency)(U),N=(0,f.useObservable)(M.currentEditing$),re=(0,f.useDependency)(d.SheetsHyperLinkParserService),P=(0,f.useDependency)(T),F=(0,f.useDependency)(t.ICommandService),I=(0,f.useDependency)(ee),ie=(0,p.useMemo)(()=>I.getOptions(),[I]),ae=(0,f.useDependency)(o.IRenderManagerService),oe=(0,f.useDependency)(r.IMarkSelectionService),L=(0,f.useDependency)(i.DocSelectionManagerService),se=(0,f.useDependency)(t.ThemeService),[R,ce]=(0,p.useState)(!1),le=(0,f.useDependency)(n.SheetsSelectionsService),ue=(0,p.useMemo)(()=>le.getCurrentSelections(),[]),z=(0,p.useMemo)(()=>{if(!I.isBuiltInLinkType(C))return I.getCustomHyperLink(C)},[I,C]),[B,de]=(0,p.useState)(!1),[V,H]=(0,p.useState)(!1),fe=(0,p.useRef)(!1),W=(0,f.useEvent)(()=>fe.current),G=(0,f.useEvent)(e=>{fe.current=e}),K=j.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),q=(K==null?void 0:K.getActiveSheet().getSheetId())||``,Y=(0,p.useCallback)(e=>{b(e.replaceAll(t.DataStreamTreeTokenType.CUSTOM_RANGE_START,``).replaceAll(t.DataStreamTreeTokenType.CUSTOM_RANGE_END,``))},[b]);(0,p.useEffect)(()=>{if((N==null?void 0:N.row)!==void 0&&N.col!==void 0){let{customRange:u,row:f,col:p}=N,{label:m}=N;typeof m==`number`&&(m=`${m}`);let h;if(u){var e;h={id:(u==null?void 0:u.rangeId)??``,display:m??``,payload:(u==null||(e=u.properties)==null?void 0:e.url)??``,row:f,column:p}}else if(N.type===`viewing`){var n,r,i;let e=j.getUnit(N.unitId),a=e==null?void 0:e.getSheetBySheetId(N.subUnitId),o=a==null?void 0:a.getCellRaw(N.row,N.col),s=o==null||(n=o.p)==null||(n=n.body)==null||(n=n.customRanges)==null?void 0:n.find(e=>{var n;return e.rangeType===t.CustomRangeType.HYPERLINK&&((n=e.properties)==null?void 0:n.url)}),c=o==null?void 0:o.v;o&&(!t.BuildTextUtils.transform.isEmptyDocument((r=o.p)==null||(r=r.body)==null?void 0:r.dataStream)||t.Tools.isDefine(c))&&S(!1),h={id:``,display:``,payload:(s==null||(i=s.properties)==null?void 0:i.url)??``,row:f,column:p}}else{var a,o;let e=j.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),n=L.getActiveTextRange(),r=e==null?void 0:e.getBody(),i=n&&r?n:null,s=i&&((a=t.BuildTextUtils.customRange.getCustomRangesInterestsWithSelection(i,(r==null?void 0:r.customRanges)??[]))==null?void 0:a[0]);S(!1),h={id:``,display:m??``,payload:(s==null||(o=s.properties)==null?void 0:o.url)??``,row:f,column:p}}s(h.id);let g=I.findCustomHyperLink(h);if(g){let e=g.convert(h);w(e.type),D(e.payload),Y(e.display);return}Y(h.display);let _=re.parseHyperLink(h.payload);switch(w(_.type===d.SheetHyperLinkType.INVALID?d.SheetHyperLinkType.RANGE:_.type),_.type){case d.SheetHyperLinkType.URL:D(_.url),_.url===h.display&&G(!0);break;case d.SheetHyperLinkType.RANGE:{var c;let e=_.searchObj,t=(0,l.serializeRangeWithSheet)(e.gid?((c=j.getUnit(N.unitId))==null||(c=c.getSheetBySheetId(e.gid))==null?void 0:c.getName())??``:``,(0,l.deserializeRangeWithSheet)(e.range).range);D(t),t===h.display&&G(!0);break}case d.SheetHyperLinkType.SHEET:{let e=_.searchObj;D(e.gid);break}case d.SheetHyperLinkType.DEFINE_NAME:{let e=_.searchObj;D(e.rangeid);break}default:D(``);break}}},[N,P,I,L,j]),(0,p.useEffect)(()=>{let e=null;if(N&&!N.customRangeId&&N.type===`viewing`&&t.Tools.isDefine(N.row)&&t.Tools.isDefine(N.col)){let n=j.getUnit(N.unitId,t.UniverInstanceType.UNIVER_SHEET),r=n==null?void 0:n.getSheetBySheetId(N.subUnitId),i=r==null?void 0:r.getMergedCell(N.row,N.col),a=new t.ColorKit(se.getColorFromTheme(`primary.600`)).toRgb();e=oe.addShape({range:i??{startColumn:N.col,endColumn:N.col,startRow:N.row,endRow:N.row},style:{fill:`rgb(${a.r}, ${a.g}, ${a.b}, 0.12)`,strokeWidth:1,stroke:`#FFBD37`,widgets:{}},primary:null},[],-1)}return()=>{e&&oe.removeShape(e)}},[N,oe,se,j]),(0,p.useEffect)(()=>{H(C===d.SheetHyperLinkType.RANGE)},[C]),(0,p.useEffect)(()=>{let e=ae.getRenderUnitById(A.getCurrentEditorId()),n=new t.DisposableCollection;if(e){let t=e.with(a.DocSelectionRenderService);t.setReserveRangesStatus(!0),n.add(()=>{t.setReserveRangesStatus(!1)})}return()=>{A.disableForceKeepVisible(),n.dispose()}},[A,ae]),(0,p.useEffect)(()=>(V&&M.setIsKeepVisible(V),M.setIsKeepVisible(R),()=>{M.setIsKeepVisible(!1)}),[V,R,M]),(0,p.useEffect)(()=>{if(V)return A.enableForceKeepVisible(),()=>{A.disableForceKeepVisible()}},[V,A]);let X=[{label:O.t(`sheets-hyper-link-ui.form.link`),value:d.SheetHyperLinkType.URL},{label:O.t(`sheets-hyper-link-ui.form.range`),value:d.SheetHyperLinkType.RANGE},{label:O.t(`sheets-hyper-link-ui.form.worksheet`),value:d.SheetHyperLinkType.SHEET},{label:O.t(`sheets-hyper-link-ui.form.definedName`),value:d.SheetHyperLinkType.DEFINE_NAME},...ie],pe=(0,f.useEvent)(e=>{var t;let n=ne(e,(K==null||(t=K.getActiveSheet())==null?void 0:t.getName())||``);if(!n){D(``);return}D(n),(W()||!v)&&(Y(n),G(!0))});if(!K)return;let Z=K.getHiddenWorksheets(),me=K.getSheets().map(e=>({label:e.getName(),value:e.getSheetId()})).filter(e=>Z.indexOf(e.value)===-1),Q=Object.values(k.getDefinedNameMap(K.getUnitId())??{}).map(e=>({label:e.name,value:e.id})),he=(e,t)=>{if(e===d.SheetHyperLinkType.URL)return y(t);if(e===d.SheetHyperLinkType.RANGE){let e=(0,l.deserializeRangeWithSheet)(t),n=K.getSheetBySheetName(e.sheetName);if(n)return`#gid=${n.getSheetId()}&range=${(0,l.serializeRange)(e.range)}`}return`#${e}=${t}`},ge=async()=>{if(x&&te(v)||!E||C===d.SheetHyperLinkType.URL&&!g(E)){de(!0);return}if(N)if(e){let t=N.type===`editing`?d.UpdateRichHyperLinkCommand.id:d.UpdateHyperLinkCommand.id;await F.executeCommand(t,{id:e,unitId:N.unitId,subUnitId:N.subUnitId,payload:{display:x?v:``,payload:he(C,E)},row:N.row,column:N.col,documentId:A.getCurrentEditorId()})}else{let e=N.type===`editing`?d.AddRichHyperLinkCommand.id:d.AddHyperLinkCommand.id;await F.executeCommand(e,{unitId:N.unitId,subUnitId:N.subUnitId,link:{id:(0,t.generateRandomId)(),row:N.row,column:N.col,payload:he(C,E),display:x?v:``},documentId:A.getCurrentEditorId()})}(N==null?void 0:N.type)===`viewing`&&(await F.executeCommand(n.SetWorksheetActiveOperation.id,{unitId:N.unitId,subUnitId:N.subUnitId}),await F.executeCommand(r.ScrollToRangeOperation.id,{range:{startRow:Math.max(N.row-1,0),endRow:N.row+1,startColumn:Math.max(N.col-1,0),endColumn:N.col+1}})),F.executeCommand(J.id)};return N?(0,m.jsxs)(`div`,{className:(0,c.clsx)(`univer-box-border univer-w-[296px] univer-rounded-xl univer-bg-gray-0 univer-p-4 univer-shadow-md dark:!univer-bg-gray-900`,c.borderClassName),children:[x?(0,m.jsx)(c.FormLayout,{label:O.t(`sheets-hyper-link-ui.form.label`),error:B&&te(v)?O.t(`sheets-hyper-link-ui.form.inputError`):``,children:(0,m.jsx)(c.Input,{value:v,onChange:e=>{Y(e),G(!1)},placeholder:O.t(`sheets-hyper-link-ui.form.labelPlaceholder`),autoFocus:!0,onKeyDown:e=>{e.keyCode===f.KeyCode.ENTER&&ge()}})}):null,(0,m.jsx)(c.FormLayout,{label:O.t(`sheets-hyper-link-ui.form.type`),children:(0,m.jsx)(c.Select,{className:`univer-w-full`,options:X,value:C,onChange:e=>{w(e),D(``)}})}),C===d.SheetHyperLinkType.URL&&(0,m.jsx)(c.FormLayout,{error:B?E?g(E)?``:O.t(`sheets-hyper-link-ui.form.linkError`):O.t(`sheets-hyper-link-ui.form.inputError`):``,children:(0,m.jsx)(c.Input,{value:E,onChange:e=>{D(e),e&&(W()||!v||v===e)&&(Y(e),G(!0))},placeholder:O.t(`sheets-hyper-link-ui.form.linkPlaceholder`),autoFocus:!0,onKeyDown:e=>{e.keyCode===f.KeyCode.ENTER&&ge()}})}),C===d.SheetHyperLinkType.RANGE&&(0,m.jsx)(c.FormLayout,{error:B&&!E?O.t(`sheets-hyper-link-ui.form.inputError`):``,children:(0,m.jsx)(u.RangeSelector,{unitId:K.getUnitId(),subUnitId:q,maxRangeCount:1,supportAcrossSheet:!0,initialValue:E,resetRange:ue,onChange:(e,t)=>pe(t),onRangeSelectorDialogVisibleChange:async e=>{ce(e),e?(N.type!==`viewing`&&A.enableForceKeepVisible(),_(!0)):(await P.navigateToRange(N.unitId,N.subUnitId,{startRow:N.row,endRow:N.row,startColumn:N.col,endColumn:N.col},!0),A.disableForceKeepVisible(),_(!1))},onFocusChange:e=>H(e)})}),C===d.SheetHyperLinkType.SHEET&&(0,m.jsx)(c.FormLayout,{error:B&&!E?O.t(`sheets-hyper-link-ui.form.selectError`):``,children:(0,m.jsx)(c.Select,{className:`univer-w-full`,options:me,value:E,onChange:e=>{var t,n;D(e);let r=(t=me.find(t=>t.value===e))==null?void 0:t.label,i=(n=me.find(e=>e.value===E))==null?void 0:n.label;r&&(W()||!v||v===i)&&(Y(r),G(!0))}})}),C===d.SheetHyperLinkType.DEFINE_NAME&&(0,m.jsx)(c.FormLayout,{error:B&&!E?O.t(`sheets-hyper-link-ui.form.selectError`):``,children:(0,m.jsx)(c.Select,{className:`univer-w-full`,options:Q,value:E,onChange:e=>{var t,n;D(e);let r=(t=Q.find(t=>t.value===e))==null?void 0:t.label,i=(n=Q.find(e=>e.value===E))==null?void 0:n.label;r&&(W()||!v||v===i)&&(Y(r),G(!0))}})}),(z==null?void 0:z.Form)&&(0,m.jsx)(z.Form,{linkId:e,payload:E,display:v,showError:B,getIsDisplaySyncedWithPayload:W,setDisplaySyncedWithPayload:G,setDisplay:e=>{Y(e),G(!0)},setPayload:D}),(0,m.jsxs)(`div`,{className:`univer-flex univer-flex-row univer-justify-end univer-gap-2`,children:[(0,m.jsx)(c.Button,{onClick:()=>{N&&P.navigateToRange(N.unitId,N.subUnitId,{startRow:N.row,endRow:N.row,startColumn:N.col,endColumn:N.col},!0),F.executeCommand(J.id)},children:O.t(`sheets-hyper-link-ui.form.cancel`)}),(0,m.jsx)(c.Button,{variant:`primary`,onClick:async()=>{ge()},children:O.t(`sheets-hyper-link-ui.form.ok`)})]})]}):null};A.componentKey=`univer.sheet.cell-link-edit`;function j({ref:e,...t}){let{icon:n,id:r,className:i,extend:a,...o}=t,s=`univerjs-icon univerjs-icon-${r} ${i||``}`.trim(),c=(0,p.useRef)(`_${P()}`);return M(n,`${r}`,{defIds:n.defIds,idSuffix:c.current},{ref:e,className:s,...o},a)}function M(e,t,n,r,i){return(0,p.createElement)(e.tag,{key:t,...N(e,n,i),...r},(re(e,n).children||[]).map((r,a)=>M(r,`${t}-${e.tag}-${a}`,n,void 0,i)))}function N(e,t,n){let r={...e.attrs};n!=null&&n.colorChannel1&&r.fill===`colorChannel1`&&(r.fill=n.colorChannel1),n!=null&&n.colorChannel1&&r.stroke===`colorChannel1`&&(r.stroke=n.colorChannel1),e.tag===`mask`&&r.id&&(r.id+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{e===`mask`&&typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))});let{defIds:i}=t;return!i||i.length===0?r:(e.tag===`use`&&r[`xlink:href`]&&(r[`xlink:href`]+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))}),r)}function re(e,t){var n;let{defIds:r}=t;return!r||r.length===0?e:e.tag===`defs`&&(n=e.children)!=null&&n.length?{...e,children:e.children.map(e=>typeof e.attrs.id==`string`&&r&&r.includes(e.attrs.id)?{...e,attrs:{...e.attrs,id:e.attrs.id+t.idSuffix}}:e)}:e}function P(){return Math.random().toString(36).substring(2,8)}j.displayName=`UniverIcon`;let F={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M7.9999 1.12915C8.03875 1.12915 8.07673 1.13284 8.11352 1.13989H12.2599C13.6958 1.13989 14.8599 2.30395 14.8599 3.73989V7.88619C14.867 7.92301 14.8707 7.96102 14.8707 7.9999C14.8707 8.03878 14.867 8.0768 14.8599 8.11362V12.2599C14.8599 13.6958 13.6958 14.8599 12.2599 14.8599H8.11362C8.0768 14.867 8.03878 14.8707 7.9999 14.8707C7.96102 14.8707 7.92301 14.867 7.88619 14.8599H3.73989C2.30396 14.8599 1.13989 13.6958 1.13989 12.2599V8.11352C1.13284 8.07673 1.12915 8.03875 1.12915 7.9999C1.12915 7.96106 1.13284 7.92308 1.13989 7.88629V3.73989C1.13989 2.30396 2.30395 1.13989 3.73989 1.13989H7.88629C7.92308 1.13284 7.96106 1.12915 7.9999 1.12915ZM2.33989 8.5999V12.2599C2.33989 13.0331 2.9667 13.6599 3.73989 13.6599H7.3999V8.5999H2.33989ZM7.3999 7.3999H2.33989V3.73989C2.33989 2.9667 2.96669 2.33989 3.73989 2.33989H7.3999V7.3999ZM8.5999 8.5999V13.6599H12.2599C13.0331 13.6599 13.6599 13.0331 13.6599 12.2599V8.5999H8.5999ZM13.6599 7.3999H8.5999V2.33989H12.2599C13.0331 2.33989 13.6599 2.96669 13.6599 3.73989V7.3999Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},I=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`all-border-icon`,ref:t,icon:F}))});I.displayName=`AllBorderIcon`;let ie={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M4.1302 12.4251C4.25802 13.7417 5.36779 14.7708 6.71792 14.7708H11.7179C13.1539 14.7708 14.3179 13.6067 14.3179 12.1708V6.1708C14.3179 4.78586 13.2351 3.65383 11.8698 3.57517C11.742 2.25858 10.6323 1.22949 9.28213 1.22949H4.28213C2.84619 1.22949 1.68213 2.39355 1.68213 3.82949V9.82949C1.68213 11.2144 2.76497 12.3465 4.1302 12.4251ZM10.6583 3.5708H6.71792C5.28198 3.5708 4.11792 4.73486 4.11792 6.1708V11.22C3.4221 11.1387 2.88213 10.5471 2.88213 9.82949V3.82949C2.88213 3.05629 3.50893 2.42949 4.28213 2.42949H9.28213C9.96695 2.42949 10.5369 2.92119 10.6583 3.5708ZM13.1179 6.1708C13.1179 5.3976 12.4911 4.7708 11.7179 4.7708H6.71792C5.94472 4.7708 5.31792 5.3976 5.31792 6.1708V12.1708C5.31792 12.944 5.94472 13.5708 6.71792 13.5708H11.7179C12.4911 13.5708 13.1179 12.944 13.1179 12.1708V6.1708Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},ae=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`copy-icon`,ref:t,icon:ie}))});ae.displayName=`CopyIcon`;let oe={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M9.8816 1.97978C11.0177 0.843607 12.862 0.884962 14.0004 2.02342C15.1389 3.16188 15.1803 5.00612 14.0441 6.14228L11.399 8.78737C11.1608 9.02559 10.7746 9.02559 10.5363 8.78737C10.2981 8.54915 10.2981 8.16292 10.5363 7.9247L13.1814 5.2796C13.8195 4.64155 13.8217 3.57006 13.1378 2.8861C12.4538 2.20211 11.3823 2.20438 10.7443 2.84245L7.6976 5.88911L7.69317 5.89349C7.05959 6.53211 7.05894 7.60014 7.74132 8.28252C7.97954 8.52074 7.97954 8.90697 7.74132 9.14519C7.5031 9.38341 7.11687 9.38341 6.87865 9.14519C5.74016 8.00671 5.69884 6.16251 6.83497 5.02633L6.84021 5.02116L9.8816 1.97978Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M4.61426 7.2364C4.85248 6.99818 5.23871 6.99818 5.47693 7.2364C5.71515 7.47462 5.71515 7.86085 5.47693 8.09907L2.83183 10.7442C2.19375 11.3823 2.1915 12.4537 2.87547 13.1377C3.55945 13.8217 4.6309 13.8194 5.26899 13.1813L8.31566 10.1347C8.32262 10.1277 8.32971 10.121 8.33691 10.1144C8.34408 10.1064 8.3515 10.0986 8.35916 10.091C8.99721 9.45291 8.99949 8.38145 8.3155 7.69746C8.07728 7.45924 8.07728 7.07301 8.3155 6.83479C8.55372 6.59657 8.93995 6.59657 9.17817 6.83479C10.3166 7.97327 10.358 9.81748 9.22183 10.9536C9.21487 10.9606 9.20779 10.9673 9.20058 10.9739C9.19341 10.9819 9.18599 10.9897 9.17833 10.9973L6.13166 14.044C4.99548 15.1802 3.15127 15.1389 2.01279 14.0004C0.874362 12.8619 0.83297 11.0177 1.96916 9.8815L4.61426 7.2364Z`}}]},L=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`link-icon`,ref:t,icon:oe}))});L.displayName=`LinkIcon`;let se={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 17`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M12.5935 3.47302C11.6354 2.51492 10.082 2.51492 9.12388 3.47302L7.83534 4.76157C7.60102 4.99588 7.22112 4.99588 6.98681 4.76157C6.75249 4.52725 6.75249 4.14735 6.98681 3.91304L8.27535 2.62449C9.70209 1.19776 12.0153 1.19776 13.442 2.62449C14.8688 4.05123 14.8688 6.36442 13.442 7.79116L12.1535 9.0797C11.9192 9.31402 11.5393 9.31402 11.3049 9.0797C11.0706 8.84539 11.0706 8.46549 11.3049 8.23117L12.5935 6.94263C13.5516 5.98452 13.5516 4.43113 12.5935 3.47302Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.40637 12.6606C2.44827 11.7025 2.44827 10.1491 3.40637 9.19102L4.69492 7.90248C4.92923 7.66816 4.92923 7.28826 4.69492 7.05395C4.4606 6.81963 4.0807 6.81963 3.84639 7.05395L2.55784 8.34249C1.13111 9.76923 1.13111 12.0824 2.55784 13.5092C3.98458 14.9359 6.29777 14.9359 7.72451 13.5092L9.01305 12.2206C9.24737 11.9863 9.24737 11.6064 9.01305 11.3721C8.77874 11.1378 8.39884 11.1378 8.16452 11.3721L6.87598 12.6606C5.91787 13.6187 4.36448 13.6187 3.40637 12.6606Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.5852 2.80332C3.35088 2.569 2.97098 2.569 2.73667 2.80332C2.50235 3.03763 2.50235 3.41753 2.73667 3.65185L12.4151 13.3302C12.6494 13.5646 13.0293 13.5646 13.2636 13.3302C13.4979 13.0959 13.4979 12.716 13.2636 12.4817L3.5852 2.80332Z`}}]},R=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`unlink-icon`,ref:t,icon:se}))});R.displayName=`UnlinkIcon`;let ce={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M12.6551 1.98906C11.7476 1.08113 10.2757 1.08149 9.3686 1.98987L4.82542 6.53955C4.75087 6.61421 4.69336 6.70411 4.65682 6.80309L3.2461 10.625C3.16506 10.8446 3.21909 11.0912 3.3845 11.2568C3.54991 11.4224 3.79651 11.4767 4.01616 11.3959L7.85031 9.98517C7.94979 9.94856 8.04014 9.89077 8.11508 9.81579L12.6552 5.27327C13.5618 4.36621 13.5618 2.89607 12.6551 1.98906ZM10.2177 2.83779C10.6562 2.39869 11.3677 2.39851 11.8064 2.8374C12.2447 3.27584 12.2447 3.9865 11.8065 4.42497L7.3392 8.89457L4.82213 9.82068L5.74706 7.31487L10.2177 2.83779Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.79238 13.2999C1.46101 13.2999 1.19238 13.5685 1.19238 13.8999C1.19238 14.2313 1.46101 14.4999 1.79238 14.4999H14.4924C14.8238 14.4999 15.0924 14.2313 15.0924 13.8999C15.0924 13.5685 14.8238 13.2999 14.4924 13.2999H1.79238Z`}}]},le=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`write-icon`,ref:t,icon:ce}))});le.displayName=`WriteIcon`;let ue={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`#35BD4B`,d:`M3.4535 1.12549C2.7002 1.12549 2.08954 1.73615 2.08954 2.48945V13.5104C2.08954 14.2637 2.7002 14.8744 3.4535 14.8744H12.5465C13.2998 14.8744 13.9105 14.2637 13.9105 13.5104V5.0992L10.0091 1.12549H3.4535Z`}},{tag:`path`,attrs:{fill:`#32A846`,d:`M10.0075 1.12549L13.9104 5.09842H10.6742C10.306 5.09842 10.0075 4.79994 10.0075 4.43175V1.12549Z`}},{tag:`path`,attrs:{fill:`white`,d:`M4.7 7.05H11.1V12.05H4.7V7.05ZM5.5 7.85V9.2H7.35V7.85H5.5ZM8.15 7.85V9.2H10.3V7.85H8.15ZM5.5 10V11.25H7.35V10H5.5ZM8.15 10V11.25H10.3V10H8.15Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},z=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`sheets-multi-icon`,ref:t,icon:ue}))});z.displayName=`SheetsMultiIcon`;let B={[d.SheetHyperLinkType.URL]:(0,m.jsx)(L,{}),[d.SheetHyperLinkType.SHEET]:(0,m.jsx)(z,{className:`univer-text-green-500`}),[d.SheetHyperLinkType.RANGE]:(0,m.jsx)(I,{}),[d.SheetHyperLinkType.DEFINE_NAME]:(0,m.jsx)(I,{}),[d.SheetHyperLinkType.INVALID]:(0,m.jsx)(I,{})},de=e=>{var n;let i=(0,f.useDependency)(U),a=(0,f.useDependency)(t.ICommandService),o=(0,f.useDependency)(f.IMessageService),s=(0,f.useDependency)(t.LocaleService),l=(0,f.useDependency)(T),u=(0,f.useDependency)(r.IEditorBridgeService),p=(0,f.useDependency)(d.SheetsHyperLinkParserService),{customRange:h,row:g,col:_,unitId:v,subUnitId:y,editPermission:b,copyPermission:x,type:S}=e;if(!(h!=null&&(n=h.properties)!=null&&n.url))return null;let C=p.parseHyperLink(h.properties.url??``),w=C.type===d.SheetHyperLinkType.INVALID;return(0,m.jsxs)(`div`,{className:(0,c.clsx)(`univer-mb-1 univer-flex univer-max-w-80 univer-flex-row univer-items-center univer-justify-between univer-gap-2 univer-overflow-hidden univer-rounded-lg univer-bg-gray-0 univer-p-2 univer-shadow-md dark:!univer-bg-gray-900`,c.borderClassName),onClick:()=>i.hideCurrentPopup(),children:[(0,m.jsxs)(`div`,{className:(0,c.clsx)(`univer-flex univer-h-6 univer-flex-1 univer-cursor-pointer univer-flex-row univer-items-center univer-gap-1 univer-truncate univer-text-sm univer-leading-5 univer-text-primary-600`,{"univer-text-red-500":w}),onClick:()=>{w||l.navigate(C)},children:[(0,m.jsx)(`div`,{className:`univer-flex univer-size-5 univer-flex-none univer-items-center univer-justify-center univer-text-base univer-text-gray-900 dark:!univer-text-gray-0`,children:B[C.type]}),(0,m.jsx)(c.Tooltip,{showIfEllipsis:!0,title:C.name,asChild:!0,children:(0,m.jsx)(`span`,{className:`univer-flex-1 univer-truncate`,children:C.name})})]}),(0,m.jsxs)(`div`,{className:`univer-flex univer-h-6 univer-flex-none univer-flex-row univer-items-center univer-justify-center univer-gap-2`,children:[x&&(0,m.jsx)(`div`,{className:(0,c.clsx)(`univer-flex univer-size-6 univer-cursor-pointer univer-flex-row univer-items-center univer-justify-center univer-rounded univer-text-base hover:univer-bg-gray-100 dark:hover:!univer-bg-gray-700`,{"univer-text-red-500":w}),onClick:()=>{if(!w){if(C.type!==d.SheetHyperLinkType.URL){let e=new URL(window.location.href);e.hash=C.url.slice(1),navigator.clipboard.writeText(e.href)}else navigator.clipboard.writeText(C.url);o.show({content:s.t(`sheets-hyper-link-ui.message.coped`),type:c.MessageType.Info})}},children:(0,m.jsx)(c.Tooltip,{placement:`bottom`,title:s.t(`sheets-hyper-link-ui.popup.copy`),children:(0,m.jsx)(ae,{className:`dark:!univer-text-gray-0`})})}),b&&(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(`div`,{"data-u-comp":`cell-link-popup-edit`,className:`univer-flex univer-size-6 univer-cursor-pointer univer-flex-row univer-items-center univer-justify-center univer-rounded univer-text-base hover:univer-bg-gray-100 dark:hover:!univer-bg-gray-700`,onClick:()=>{a.executeCommand(q.id,{unitId:v,subUnitId:y,row:g,col:_,customRangeId:h.rangeId,type:S})},children:(0,m.jsx)(c.Tooltip,{placement:`bottom`,title:s.t(`sheets-hyper-link-ui.popup.edit`),children:(0,m.jsx)(le,{className:`dark:!univer-text-gray-0`})})}),(0,m.jsx)(`div`,{"data-u-comp":`cell-link-popup-remove`,className:`univer-flex univer-size-6 univer-cursor-pointer univer-flex-row univer-items-center univer-justify-center univer-rounded univer-text-base hover:univer-bg-gray-100 dark:hover:!univer-bg-gray-700`,onClick:()=>{let e=S===`editing`?d.CancelRichHyperLinkCommand.id:d.CancelHyperLinkCommand.id;a.syncExecuteCommand(e,{unitId:v,subUnitId:y,id:h.rangeId,row:g,column:_,documentId:u.getCurrentEditorId()})&&i.hideCurrentPopup(void 0,!0)},children:(0,m.jsx)(c.Tooltip,{placement:`bottom`,title:s.t(`sheets-hyper-link-ui.popup.cancel`),children:(0,m.jsx)(R,{className:`dark:!univer-text-gray-0`})})})]})]})]})},V=()=>{let e=(0,f.useDependency)(U),n=(0,f.useObservable)(e.currentPopup$,e.currentPopup),r=(0,f.useDependency)(t.IUniverInstanceService);if(!n)return null;if(n.showAll){var i;let e=r.getUnit(n.unitId,t.UniverInstanceType.UNIVER_SHEET),a=e==null?void 0:e.getSheetBySheetId(n.subUnitId),o=a==null?void 0:a.getCell(n.row,n.col),s=o==null||(i=o.p)==null||(i=i.body)==null?void 0:i.customRanges;return s!=null&&s.length?(0,m.jsx)(`div`,{children:s.map(e=>(0,m.jsx)(de,{...n,customRange:e},e.rangeId))}):null}return(0,m.jsx)(de,{...n})};V.componentKey=`univer.sheet.cell-link-popup`;let H=(e,t)=>{var n,r;return e.unitId===t.unitId&&e.subUnitId===t.subUnitId&&e.row===t.row&&e.col===t.col&&((n=e.customRange)==null?void 0:n.rangeId)===((r=t.customRange)==null?void 0:r.rangeId)&&e.type===t.type},U=class extends t.Disposable{get currentPopup(){return this._currentPopup}get currentEditing(){return this._currentEditing$.getValue()}constructor(e,t,n,r,i){super(),this._sheetCanvasPopManagerService=e,this._injector=t,this._univerInstanceService=n,this._editorBridgeService=r,this._textSelectionManagerService=i,k(this,`_currentPopup`,null),k(this,`_currentPopup$`,new s.Subject),k(this,`currentPopup$`,this._currentPopup$.asObservable()),k(this,`_currentEditingPopup`,null),k(this,`_currentEditing$`,new s.BehaviorSubject(null)),k(this,`currentEditing$`,this._currentEditing$.asObservable()),k(this,`_isKeepVisible`,!1),this.disposeWithMe(()=>{this.hideCurrentPopup(),this.endEditing(),this._currentEditing$.complete(),this._currentPopup$.complete()})}setIsKeepVisible(e){this._isKeepVisible=e}getIsKeepVisible(){return this._isKeepVisible}showPopup(e){if(this._currentPopup&&H(e,this._currentPopup))return;this.hideCurrentPopup(void 0,!0);let t=this._currentEditing$.getValue();if(t&&H(e,t))return;let{unitId:n,subUnitId:r,row:i,col:a,customRangeRect:o,customRange:s}=e,c,l={componentKey:V.componentKey,direction:`bottom`,onClickOutside:()=>{this.hideCurrentPopup()},onClick:()=>{this.hideCurrentPopup(e.type,!0)}};if(e.type===`editing`){if(!s)return;c=o&&this._sheetCanvasPopManagerService.attachPopupToAbsolutePosition(o,l)}else if(e.showAll)c=this._sheetCanvasPopManagerService.attachPopupToCell(e.row,e.col,l,n,r);else{if(!s)return;c=o&&this._sheetCanvasPopManagerService.attachPopupByPosition(o,l,e)}if(c){if(this._currentPopup){var u;(u=this._currentPopup.disposable)==null||u.dispose()}this._currentPopup={unitId:n,subUnitId:r,disposable:c,row:i,col:a,editPermission:!!e.editPermission,copyPermission:!!e.copyPermission,customRange:s,type:e.type,showAll:e.showAll},this._currentPopup$.next(this._currentPopup)}}hideCurrentPopup(e,t){if(this._currentPopup&&((!e||e===this._currentPopup.type)&&this._currentPopup.disposable.canDispose()||t)){var n;(n=this._currentPopup)==null||(n=n.disposable)==null||n.dispose(),this._currentPopup=null,this._currentPopup$.next(null)}}dispose(){super.dispose(),this.hideCurrentPopup(),this.endEditing(),this._currentPopup$.complete(),this._currentEditing$.complete()}_getEditingRange(){let e=this._editorBridgeService.isVisible().visible,n=this._editorBridgeService.getEditCellState();if(e&&n){var r,i;let e=this._textSelectionManagerService.getActiveTextRange(),a=(r=n.documentLayoutObject.documentModel)==null?void 0:r.getBody();if(!a)return null;if(!e||e.collapsed)return{startOffset:0,endOffset:a.dataStream.length-2,collapsed:a.dataStream.length-2==0,label:t.BuildTextUtils.transform.getPlainText(a.dataStream)};let o=t.BuildTextUtils.customRange.getCustomRangesInterestsWithSelection(e,((i=a.customRanges)==null?void 0:i.filter(e=>e.rangeType===t.CustomRangeType.HYPERLINK))??[]),s=e.startOffset,c=e.endOffset;return o.forEach(e=>{s=Math.min(s,e.startIndex),c=Math.max(c,e.endIndex+1)}),{startOffset:s,endOffset:c,collapsed:s===c,label:t.BuildTextUtils.transform.getPlainText(a.dataStream.slice(s,c))}}return null}get _editPopup(){return{componentKey:A.componentKey,direction:`vertical`,onClickOutside:()=>{this.endEditing()},onContextMenu:()=>{this.endEditing()},hiddenType:`hide`}}startAddEditing(e){let{unitId:n,subUnitId:r,type:i}=e;if(i===`editing`){let i=this._getEditingRange();if(!i)return;this._textSelectionManagerService.replaceDocRanges([{...i}],{unitId:t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,subUnitId:t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY});let s=this._injector.get(o.IRenderManagerService).getRenderUnitById(t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY);if(!s)return;let c=(0,a.calcDocRangePositions)(i,s);if(!(c!=null&&c.length))return;this._currentEditingPopup=this._sheetCanvasPopManagerService.attachPopupToAbsolutePosition(c.pop(),this._editPopup,n,r),this._currentEditing$.next({...e,label:(i==null?void 0:i.label)??``})}else{var s;this._currentEditingPopup=this._sheetCanvasPopManagerService.attachPopupToCell(e.row,e.col,this._editPopup,n,r);let i=this._univerInstanceService.getUnit(n,t.UniverInstanceType.UNIVER_SHEET),a=i==null?void 0:i.getSheetBySheetId(r),o=a==null?void 0:a.getCellRaw(e.row,e.col);this._currentEditing$.next({...e,label:o!=null&&o.p?t.BuildTextUtils.transform.getPlainText(((s=o.p.body)==null?void 0:s.dataStream)??``):((o==null?void 0:o.v)??``).toString()})}}startEditing(e){var n;(n=this._currentEditingPopup)==null||n.dispose(),this.hideCurrentPopup(void 0,!0);let{unitId:i,subUnitId:a}=e,o,s;if(e.type===`editing`){var c;let t=(0,r.getEditingCustomRangePosition)(this._injector,e.unitId,e.subUnitId,e.row,e.col,e.customRangeId);if(!t||!((c=t.rects)!=null&&c.length))return;o=t.customRange,s=t.label,this._textSelectionManagerService.replaceDocRanges([{startOffset:o.startIndex,endOffset:o.endIndex+1}]),this._currentEditingPopup=this._sheetCanvasPopManagerService.attachPopupToAbsolutePosition(t.rects.pop(),this._editPopup,i,a)}else{var l;let n=this._univerInstanceService.getUnit(i,t.UniverInstanceType.UNIVER_SHEET),c=n==null?void 0:n.getSheetBySheetId(a),u=c==null?void 0:c.getCellRaw(e.row,e.col),d=n==null?void 0:n.getStyles().getStyleByCell(u),f=d==null?void 0:d.tr,p=(0,r.getCustomRangePosition)(this._injector,e.unitId,e.subUnitId,e.row,e.col,e.customRangeId);if(!p||!((l=p.rects)!=null&&l.length))return;o=p.customRange,s=p.label,f?this._currentEditingPopup=this._sheetCanvasPopManagerService.attachPopupToCell(e.row,e.col,this._editPopup,i,a):this._currentEditingPopup=this._sheetCanvasPopManagerService.attachPopupByPosition(p.rects.pop(),this._editPopup,{unitId:i,subUnitId:a,row:e.row,col:e.col})}this._currentEditing$.next({...e,customRange:o,label:s})}endEditing(e){if(this.getIsKeepVisible())return;let t=this._currentEditing$.getValue();if(t&&(!e||e===t.type)){var n;(n=this._currentEditingPopup)==null||n.dispose(),this._currentEditing$.next(null)}}};U=C([S(0,(0,t.Inject)(r.SheetCanvasPopManagerService)),S(1,(0,t.Inject)(t.Injector)),S(2,t.IUniverInstanceService),S(3,r.IEditorBridgeService),S(4,(0,t.Inject)(i.DocSelectionManagerService))],U);let fe=new Set([t.DataValidationType.CHECKBOX,t.DataValidationType.LIST,t.DataValidationType.LIST_MULTIPLE]),W=(e,t,n,r)=>{var i,a;let o=t.getCell(n,r);if(o!=null&&o.f||o!=null&&o.si||o!=null&&(i=o.p)!=null&&(i=i.body)!=null&&(i=i.customBlocks)!=null&&i.length)return 1;let s=e.has(h.SheetDataValidationModel)?e.get(h.SheetDataValidationModel):null,c=s==null?void 0:s.getRuleByLocation(t.getUnitId(),t.getSheetId(),n,r);return c&&fe.has(c.type)?!0:o!=null&&(a=o.p)!=null&&(a=a.drawingsOrder)!=null&&a.length?2:0},G=e=>{let r=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET);if(!r)return!0;let i=r.getActiveSheet(),a=e.get(n.SheetsSelectionsService).getCurrentSelections();if(!a.length)return!0;let o=a[0].range.startRow,s=a[0].range.startColumn;return W(e,i,o,s)===1},K=e=>{var n;let r=e.get(i.DocSelectionManagerService),a=e.get(t.IUniverInstanceService),o=r.getTextRanges();if(!(o!=null&&o.length))return!0;let s=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);return!!(!s||o.every(e=>e.collapsed)||!((n=s.getSelfOrHeaderFooterModel(o[0].segmentId))!=null&&n.getBody()))},q={type:t.CommandType.OPERATION,id:`sheet.operation.open-hyper-link-edit-panel`,handler(e,t){if(!t)return!1;let n=e.get(U);return t.customRangeId?n.startEditing(t):n.startAddEditing(t),!0}},J={type:t.CommandType.OPERATION,id:`sheet.operation.close-hyper-link-popup`,handler(e){return e.get(U).endEditing(),!0}},Y={type:t.CommandType.OPERATION,id:`sheet.operation.insert-hyper-link`,handler(e){let i=(0,n.getSheetCommandTarget)(e.get(t.IUniverInstanceService)),a=e.get(r.IEditorBridgeService);if(!i)return!1;let o=e.get(t.ICommandService),s=e.get(n.SheetsSelectionsService).getCurrentLastSelection();if(!s)return!1;let c=s.range.startRow,l=s.range.startColumn,u=a.isVisible();return o.executeCommand(q.id,{unitId:i.unitId,subUnitId:i.subUnitId,row:c,col:l,type:u.visible?`editing`:`viewing`})}},X={type:t.CommandType.OPERATION,id:`sheet.operation.insert-hyper-link-toolbar`,handler(e){if(G(e))return!1;let n=e.get(t.ICommandService);return e.get(U).currentEditing?n.executeCommand(J.id):n.executeCommand(Y.id)}},pe=`SHEET_HYPER_LINK_UI_PLUGIN`,Z=class extends t.Disposable{registerPlainTextFilter(e){this._plainTextFilter.add(e)}removePlainTextFilter(e){this._plainTextFilter.delete(e)}_filterPlainText(e){return Array.from(this._plainTextFilter).every(t=>t(e))}constructor(e,t,n,r){super(),this._sheetClipboardService=e,this._hyperLinkModel=t,this._injector=n,this._resolverService=r,k(this,`_plainTextFilter`,new Set),k(this,`_copyInfo`,void 0),this._initCopyPaste(),this.disposeWithMe(()=>{this._plainTextFilter.clear()})}_initCopyPaste(){this._sheetClipboardService.addClipboardHook({id:pe,onBeforeCopy:(e,t,n)=>this._collect(e,t,n),onPasteCells:(e,t,n,i)=>{let{copyType:a=r.COPY_TYPE.COPY,pasteType:o}=i,{range:s}=e||{},{range:c,unitId:l,subUnitId:u}=t;return this._generateMutations(c,{copyType:a,pasteType:o,copyRange:s,unitId:l,subUnitId:u})},onPastePlainText:(e,n)=>{let i=this._filterPlainText(n);if(g(n)&&i){let{range:n,unitId:i,subUnitId:a}=e,{ranges:[o],mapFunc:s}=(0,r.virtualizeDiscreteRanges)([n]),c=[],l=[];return t.Range.foreach(o,(e,t)=>{let{row:n,col:r}=s(e,t),o=this._hyperLinkModel.getHyperLinkByLocation(i,a,n,r);o&&c.push({id:d.RemoveHyperLinkMutation.id,params:{unitId:i,subUnitId:a,id:o.id}}),o&&l.push({id:d.AddHyperLinkMutation.id,params:{unitId:i,subUnitId:a,link:o}})}),{redos:c,undos:l}}return{undos:[],redos:[]}},priority:99})}_collect(e,r,i){let a=new t.ObjectMatrix;this._copyInfo={unitId:e,subUnitId:r,matrix:a};let o=this._injector.invoke(t=>(0,n.rangeToDiscreteRange)(i,t,e,r));if(!o)return;let{rows:s,cols:c}=o;s.forEach((t,n)=>{c.forEach((i,o)=>{let s=this._hyperLinkModel.getHyperLinkByLocation(e,r,t,i);a.setValue(n,o,(s==null?void 0:s.id)??``)})})}_generateMutations(e,n){if(!this._copyInfo||!this._copyInfo||!this._copyInfo.matrix.getSizeOf()||!n.copyRange||[r.PREDEFINED_HOOK_NAME_PASTE.SPECIAL_PASTE_COL_WIDTH,r.PREDEFINED_HOOK_NAME_PASTE.SPECIAL_PASTE_VALUE,r.PREDEFINED_HOOK_NAME_PASTE.SPECIAL_PASTE_FORMAT,r.PREDEFINED_HOOK_NAME_PASTE.SPECIAL_PASTE_FORMULA].includes(n.pasteType))return{redos:[],undos:[]};let{unitId:i,subUnitId:a}=this._copyInfo,o=[],s=[],{ranges:[c,l],mapFunc:u}=(0,r.virtualizeDiscreteRanges)([n.copyRange,e]);return(0,r.getRepeatRange)(c,l,!0).forEach(({startRange:e})=>{var r;(r=this._copyInfo)==null||r.matrix.forValue((r,c,l)=>{let f=t.Rectangle.getPositionRange({startRow:r,endRow:r,startColumn:c,endColumn:c},e),p=this._hyperLinkModel.getHyperLink(i,a,l),{row:m,col:h}=u(f.startRow,f.startColumn),g=this._hyperLinkModel.getHyperLinkByLocation(n.unitId,n.subUnitId,m,h),_=(0,t.generateRandomId)();g&&o.push({id:d.RemoveHyperLinkMutation.id,params:{unitId:n.unitId,subUnitId:n.subUnitId,id:g.id}}),p&&(o.push({id:d.AddHyperLinkMutation.id,params:{unitId:n.unitId,subUnitId:n.subUnitId,link:{...p,id:_,row:m,column:h}}}),s.push({id:d.RemoveHyperLinkMutation.id,params:{unitId:n.unitId,subUnitId:n.subUnitId,id:_}})),g&&s.push({id:d.AddHyperLinkMutation.id,params:{unitId:n.unitId,subUnitId:n.subUnitId,link:g}})})}),{redos:o,undos:s}}};Z=C([S(0,r.ISheetClipboardService),S(1,(0,t.Inject)(d.HyperLinkModel)),S(2,(0,t.Inject)(t.Injector)),S(3,(0,t.Inject)(T))],Z);let me=(e,i=t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY)=>{var c;let l=e.get(t.IUniverInstanceService),u=(c=e.get(o.IRenderManagerService).getRenderUnitById(i))==null?void 0:c.with(a.DocSelectionRenderService);return u?u.textSelectionInner$.pipe((0,s.map)(()=>{let t=e.get(r.IEditorBridgeService).getEditCellState();if(!t)return!0;let i=(0,n.getSheetCommandTarget)(l,{unitId:t.unitId,subUnitId:t.sheetId});return!(i!=null&&i.worksheet)||W(e,i.worksheet,t.row,t.column)===1||K(e)})):(0,s.of)(!0)},Q=e=>{let i=e.get(t.IUniverInstanceService),a=e.has(r.IEditorBridgeService)?e.get(r.IEditorBridgeService):null;return((a==null?void 0:a.currentEditCellState$.pipe((0,s.map)(t=>{if(!t)return 1;let r=(0,n.getSheetCommandTarget)(i,{unitId:t.unitId,subUnitId:t.sheetId});return r?W(e,r.worksheet,t.row,t.column):1}),(0,s.switchMap)(n=>n===1?(0,s.of)(!0):(0,s.combineLatest)([a?a.visible$:(0,s.of)(null),i.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC)]).pipe((0,s.switchMap)(([r,i])=>r!=null&&r.visible?(i==null?void 0:i.getUnitId())===t.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY?(0,s.of)(!0):me(e,t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY):(0,s.of)(n!==0))))))??(0,s.of)(!0)).pipe((0,s.switchMap)(t=>t?(0,s.of)(!0):(0,r.getCurrentRangeDisable$)(e,{workbookTypes:[n.WorkbookEditablePermission],worksheetTypes:[n.WorksheetEditPermission,n.WorksheetSetCellValuePermission,n.WorksheetInsertHyperlinkPermission],rangeTypes:[n.RangeProtectionPermissionEditPoint]},!0)))},he=e=>({commandId:Y.id,type:f.MenuItemType.BUTTON,title:`sheets-hyper-link-ui.menu.add`,icon:`LinkIcon`,id:Y.id,hidden$:(0,f.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_SHEET),disabled$:Q(e)}),ge=e=>({tooltip:`sheets-hyper-link-ui.form.addTitle`,commandId:X.id,type:f.MenuItemType.BUTTON,icon:`LinkIcon`,id:X.id,hidden$:(0,f.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_SHEET),disabled$:Q(e)}),_e={id:X.id,binding:f.KeyCode.K|f.MetaKeys.CTRL_COMMAND,preconditions:r.whenSheetEditorFocused},ve={[f.RibbonInsertGroup.MEDIA]:{[X.id]:{order:1,gridLayout:{row:1,column:2,rowSpan:2,showLabel:!0},menuItemFactory:ge}},[f.ContextMenuPosition.MAIN_AREA]:{[f.ContextMenuGroup.OTHERS]:{order:1,[X.id]:{order:0,menuItemFactory:he}}}};var ye=`@univerjs/sheets-hyper-link-ui`,be=`1.0.0-beta.1`;let xe=class extends t.Disposable{constructor(e,t){super(),this._autoFillService=e,this._hyperLinkModel=t,this._initAutoFill()}_initAutoFill(){let e=()=>({redos:[],undos:[]}),i=(e,i)=>{let{source:a,target:o,unitId:s,subUnitId:c}=e,l=(0,r.virtualizeDiscreteRanges)([a,o]),[u,f]=l.ranges,{mapFunc:p}=l,m={row:u.startRow,col:u.startColumn},h=n.AutoFillTools.getAutoFillRepeatRange(u,f),g=[],_=[];return h.forEach(e=>{let r=e.repeatStartCell,a=e.relativeRange,o={startRow:m.row,startColumn:m.col,endColumn:m.col,endRow:m.row},l={startRow:r.row,startColumn:r.col,endColumn:r.col,endRow:r.row};t.Range.foreach(a,(e,r)=>{let a=t.Rectangle.getPositionRange({startRow:e,startColumn:r,endColumn:r,endRow:e},o),{row:u,col:f}=p(a.startRow,a.startColumn),m=this._hyperLinkModel.getHyperLinkByLocation(s,c,u,f),h=t.Rectangle.getPositionRange({startRow:e,startColumn:r,endColumn:r,endRow:e},l),{row:v,col:y}=p(h.startRow,h.startColumn),b=(0,t.generateRandomId)(),x=this._hyperLinkModel.getHyperLinkByLocation(s,c,v,y);x&&g.push({id:d.RemoveHyperLinkMutation.id,params:{unitId:s,subUnitId:c,id:x.id}}),(n.AUTO_FILL_APPLY_TYPE.COPY===i||n.AUTO_FILL_APPLY_TYPE.SERIES===i)&&m&&(g.push({id:d.AddHyperLinkMutation.id,params:{unitId:s,subUnitId:c,link:{...m,id:b,row:v,column:y}}}),_.push({id:d.RemoveHyperLinkMutation.id,params:{unitId:s,subUnitId:c,id:b}})),x&&_.push({id:d.AddHyperLinkMutation.id,params:{unitId:s,subUnitId:c,link:x}})})}),{undos:_,redos:g}},a={id:pe,onFillData:(t,r,a)=>a===n.AUTO_FILL_APPLY_TYPE.COPY||a===n.AUTO_FILL_APPLY_TYPE.ONLY_FORMAT||a===n.AUTO_FILL_APPLY_TYPE.SERIES?i(t,a):e()};this.disposeWithMe(this._autoFillService.addHook(a))}};xe=C([S(0,n.IAutoFillService),S(1,(0,t.Inject)(d.HyperLinkModel))],xe);let Se=class extends t.Disposable{constructor(e,t){super(),this._componentManager=e,this._iconManager=t,this._registerComponents(),this._registerIcons()}_registerComponents(){[[V.componentKey,V],[A.componentKey,A]].forEach(([e,t])=>{this._componentManager.register(e,t)})}_registerIcons(){this.disposeWithMe(this._iconManager.register({LinkIcon:L}))}};Se=C([S(0,(0,t.Inject)(f.ComponentManager)),S(1,(0,t.Inject)(f.IconManager))],Se);let Ce=class extends t.Disposable{constructor(e,t,n){super(),this._localeService=e,this._commandService=t,this._sheetPermissionCheckController=n,this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(e=>{e.id===_e.id&&(this._sheetPermissionCheckController.permissionCheckWithRanges({workbookTypes:[n.WorkbookEditablePermission],rangeTypes:[n.RangeProtectionPermissionEditPoint],worksheetTypes:[n.WorksheetEditPermission,n.WorksheetSetCellValuePermission,n.WorksheetInsertHyperlinkPermission]})||this._sheetPermissionCheckController.blockExecuteWithoutPermission(this._localeService.t(`sheets-hyper-link-ui.permission.hyperLinkErr`)))}))}};Ce=C([S(0,(0,t.Inject)(t.LocaleService)),S(1,t.ICommandService),S(2,(0,t.Inject)(n.SheetPermissionCheckController))],Ce);let we=class extends t.Disposable{constructor(e,t,n,r,i,a,o,s,c){super(),this._hoverManagerService=e,this._sheetsHyperLinkPopupService=t,this._renderManagerService=n,this._permissionService=r,this._sheetPermissionCheckController=i,this._commandService=a,this._editorBridgeService=o,this._textSelectionManagerService=s,this._univerInstanceService=c,this._initHoverListener(),this._initCommandListener(),this._initHoverEditingListener(),this._initTextSelectionListener()}_getLinkPermission(e){let{unitId:r,subUnitId:i,row:a,col:o}=e,s=this._univerInstanceService.getUnit(r,t.UniverInstanceType.UNIVER_SHEET),c=s==null?void 0:s.getSheetBySheetId(i);if(!c)return{viewPermission:!1,editPermission:!1,copyPermission:!1};let l=this._sheetPermissionCheckController.permissionCheckWithRanges({workbookTypes:[n.WorkbookViewPermission],worksheetTypes:[n.WorksheetViewPermission],rangeTypes:[n.RangeProtectionPermissionViewPoint]},[{startRow:a,startColumn:o,endRow:a,endColumn:o}],r,i),u=this._sheetPermissionCheckController.permissionCheckWithRanges({workbookTypes:[n.WorkbookEditablePermission],worksheetTypes:[n.WorksheetEditPermission,n.WorksheetInsertHyperlinkPermission],rangeTypes:[n.RangeProtectionPermissionEditPoint]},[{startRow:a,startColumn:o,endRow:a,endColumn:o}],r,i),d=c.getCellRaw(a,o);d!=null&&d.f&&d.f.startsWith(`=HYPERLINK(`)&&(u=!1);let f=this._permissionService.composePermission([new n.WorkbookCopyPermission(r).id,new n.WorksheetCopyPermission(r,i).id]).every(e=>e.value);return{viewPermission:l,editPermission:u,copyPermission:f}}_initHoverListener(){this.disposeWithMe(this._hoverManagerService.currentRichText$.pipe((0,s.debounceTime)(200)).subscribe(e=>{var n,i,a;if(!e||((n=e.customRange)==null?void 0:n.rangeType)!==t.CustomRangeType.HYPERLINK){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}let{unitId:o,subUnitId:s,row:c,col:l}=e,u=this._renderManagerService.getRenderUnitById(o);if(!u)return;let d=this._univerInstanceService.getUnit(o,t.UniverInstanceType.UNIVER_SHEET),f=d==null?void 0:d.getSheetBySheetId(s);if(!f)return;if(!u.with(r.HoverRenderController).active){this._sheetsHyperLinkPopupService.hideCurrentPopup(`viewing`);return}let p=u==null||(i=u.with(r.SheetSkeletonManagerService).getSkeletonParam(s))==null?void 0:i.skeleton,m=l,h=c,g=h,_=m;p&&p.overflowCache.forValue((e,n,r)=>{t.Rectangle.contains(r,{startColumn:m,endColumn:m,startRow:h,endRow:h})&&(g=e,_=n)});let{viewPermission:v,editPermission:y,copyPermission:b}=this._getLinkPermission(e);if(!v){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}let x=f.getCellStyleOnly(g,_),S=d.getStyles().getStyleByCell(x),C=S==null||(a=S.tr)==null?void 0:a.a;if(!C&&!e.customRange){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}this._sheetsHyperLinkPopupService.showPopup({row:g,col:_,editPermission:y,copyPermission:b,customRange:e.customRange,customRangeRect:e.rect,type:`viewing`,unitId:o,subUnitId:s,showAll:!!C})}))}_initHoverEditingListener(){let e=null;this.disposeWithMe(this._editorBridgeService.currentEditCellState$.pipe((0,s.switchMap)(e=>this._editorBridgeService.visible$.pipe((0,s.map)(t=>({visible:t,state:e}))))).subscribe(({visible:n,state:i})=>{if(!i||i.editorUnitId!==t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY)return;if(!n.visible){e==null||e.unsubscribe(),this._sheetsHyperLinkPopupService.hideCurrentPopup(`editing`),this._sheetsHyperLinkPopupService.endEditing(`editing`);return}let{editorUnitId:o,unitId:c,sheetId:l,row:u,column:d}=i,f=this._renderManagerService.getRenderUnitById(o);if(!f)return;let{editPermission:p,viewPermission:m,copyPermission:h}=this._getLinkPermission({unitId:c,subUnitId:l,row:u,col:d}),g=f.with(a.DocEventManagerService);m&&(e==null||e.unsubscribe(),e=g.hoverCustomRanges$.pipe((0,s.debounceTime)(200)).subscribe(e=>{var n;let i=e.find(e=>e.range.rangeType===t.CustomRangeType.HYPERLINK);if(!i){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}let a=i.rects[i.rects.length-1];if(!((n=this._renderManagerService.getRenderUnitById(c))!=null&&(n=n.with(r.SheetSkeletonManagerService).getSkeletonParam(l))!=null&&n.skeleton)||!a)return;let o=f.engine.getCanvasElement().getBoundingClientRect();this._sheetsHyperLinkPopupService.showPopup({unitId:c,subUnitId:l,row:u,col:d,customRange:i.range,customRangeRect:{left:a.left+o.left,top:a.top+o.top,bottom:a.bottom+o.top,right:a.right+o.left},editPermission:p,copyPermission:h,type:`editing`})}))})),this.disposeWithMe(()=>{e==null||e.unsubscribe()})}_initTextSelectionListener(){this.disposeWithMe(this._textSelectionManagerService.textSelection$.subscribe(e=>{e&&e.unitId===t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&this._sheetsHyperLinkPopupService.endEditing(`editing`)}))}_initCommandListener(){let e=[n.ClearSelectionContentCommand.id,n.ClearSelectionAllCommand.id,n.ClearSelectionFormatCommand.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{e.includes(t.id)&&this._sheetsHyperLinkPopupService.hideCurrentPopup()}))}};we=C([S(0,(0,t.Inject)(r.HoverManagerService)),S(1,(0,t.Inject)(U)),S(2,(0,t.Inject)(o.IRenderManagerService)),S(3,(0,t.Inject)(t.IPermissionService)),S(4,(0,t.Inject)(n.SheetPermissionCheckController)),S(5,t.ICommandService),S(6,r.IEditorBridgeService),S(7,(0,t.Inject)(i.DocSelectionManagerService)),S(8,t.IUniverInstanceService)],we);let Te=class extends t.Disposable{constructor(e,t){super(),this._context=e,this._hyperLinkModel=t,this._initSkeletonChange()}_initSkeletonChange(){let e=()=>{var e;(e=this._context.mainComponent)==null||e.makeForceDirty()};this.disposeWithMe(this._hyperLinkModel.linkUpdate$.pipe((0,s.debounceTime)(16)).subscribe(()=>{e()}))}};Te=C([S(1,(0,t.Inject)(d.HyperLinkModel))],Te);let Ee=class extends t.Disposable{constructor(e,t,n){super(),this._commandService=e,this._menuManagerService=t,this._shortcutService=n,this._initCommands(),this._initMenus(),this._initShortCut()}_initCommands(){[q,J,Y,X].forEach(e=>{this._commandService.registerCommand(e)})}_initMenus(){this._menuManagerService.mergeMenu(ve)}_initShortCut(){this._shortcutService.registerShortcut(_e)}};Ee=C([S(0,t.ICommandService),S(1,f.IMenuManagerService),S(2,(0,t.Inject)(f.IShortcutService))],Ee);let De=class extends t.Disposable{constructor(e,t){super(),this._parserService=e,this._resolverService=t,this._handleInitUrl()}_handleInitUrl(){let e=location.hash;if(e){let t=this._parserService.parseHyperLink(e);this._resolverService.navigate(t)}}};De=C([S(0,(0,t.Inject)(d.SheetsHyperLinkParserService)),S(1,(0,t.Inject)(T))],De);let $=class extends t.Plugin{constructor(e=x,n,r){super(),this._config=e,this._injector=n,this._configService=r;let{menu:i,...a}=(0,t.merge)({},x,this._config);i&&this._configService.setConfig(`menu`,i,{merge:!0}),this._configService.setConfig(b,a)}onStarting(){this._injector.add([Se]),this._injector.get(Se),[[T],[U],[ee],[we],[Ee],[xe],[Z],[Ce],[De]].forEach(e=>this._injector.add(e))}onReady(){this._injector.get(o.IRenderManagerService).registerRenderModule(t.UniverInstanceType.UNIVER_SHEET,[Te]),this._injector.get(xe),this._injector.get(Z),this._injector.get(Ee)}onRendered(){this._injector.get(Ce),this._injector.get(De),this._injector.get(we)}};k($,`pluginName`,pe),k($,`packageName`,ye),k($,`version`,be),k($,`type`,t.UniverInstanceType.UNIVER_SHEET),$=C([(0,t.DependentOn)(i.UniverDocsPlugin,l.UniverFormulaEnginePlugin,o.UniverRenderEnginePlugin,n.UniverSheetsPlugin,a.UniverDocsUIPlugin,d.UniverSheetsHyperLinkPlugin,r.UniverSheetsUIPlugin),S(1,(0,t.Inject)(t.Injector)),S(2,t.IConfigService)],$),e.CloseHyperLinkPopupOperation=J,e.InsertHyperLinkOperation=Y,e.InsertLinkShortcut=_e,e.OpenHyperLinkEditPanelOperation=q,Object.defineProperty(e,"SheetsHyperLinkCopyPasteController",{enumerable:!0,get:function(){return Z}}),Object.defineProperty(e,"SheetsHyperLinkPopupService",{enumerable:!0,get:function(){return U}}),Object.defineProperty(e,"SheetsHyperLinkResolverService",{enumerable:!0,get:function(){return T}}),e.SheetsHyperLinkSidePanelService=ee,e.SheetsHyperLinkUIMenuSchema=ve,Object.defineProperty(e,"UniverSheetsHyperLinkUIPlugin",{enumerable:!0,get:function(){return $}})});
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@univerjs/core"),require("@univerjs/sheets"),require("@univerjs/sheets-ui"),require("@univerjs/docs"),require("@univerjs/docs-ui"),require("@univerjs/engine-render"),require("rxjs"),require("@univerjs/design"),require("@univerjs/engine-formula"),require("@univerjs/sheets-formula-ui"),require("@univerjs/sheets-hyper-link"),require("@univerjs/ui"),require("react"),require("react/jsx-runtime"),require("@univerjs/sheets-data-validation")):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/sheets`,`@univerjs/sheets-ui`,`@univerjs/docs`,`@univerjs/docs-ui`,`@univerjs/engine-render`,`rxjs`,`@univerjs/design`,`@univerjs/engine-formula`,`@univerjs/sheets-formula-ui`,`@univerjs/sheets-hyper-link`,`@univerjs/ui`,`react`,`react/jsx-runtime`,`@univerjs/sheets-data-validation`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverSheetsHyperLinkUi={},e.UniverCore,e.UniverSheets,e.UniverSheetsUi,e.UniverDocs,e.UniverDocsUi,e.UniverEngineRender,e.rxjs,e.UniverDesign,e.UniverEngineFormula,e.UniverSheetsFormulaUi,e.UniverSheetsHyperLink,e.UniverUi,e.React,e.React,e.UniverSheetsDataValidation))})(this,function(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});function g(e){return t.Tools.isLegalUrl(e)}function _(e){return/^[a-zA-Z]+:\/\//.test(e)}function v(e){return/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/.test(e)}function y(e){if(g(e)){let t=_(e)?e:v(e)?`mailto://${e}`:`http://${e}`,n;try{n=new URL(t)}catch{return e}return n.hostname===location.hostname&&n.port===location.port&&n.protocol===location.protocol&&n.pathname===location.pathname&&n.hash&&!n.search?n.hash:t}return e}let b=`sheets-hyper-link-ui.config`,x={};function S(e,t){return function(n,r){t(n,r,e)}}function C(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function w(e,n){let r=n.getMergeData(),i=n.getMaxColumns()-1,a=n.getMaxRows()-1;if(i<e.endColumn&&(e.endColumn=i),a<e.endRow&&(e.endRow=a),e.rangeType===t.RANGE_TYPE.COLUMN||t.RANGE_TYPE.ROW)return e;let o=[];return r.forEach(n=>{t.Rectangle.intersects(e,n)&&o.push(n)}),t.Rectangle.realUnion(e,...o)}let T=class{constructor(e,t,n,r,i,a){this._univerInstanceService=e,this._commandService=t,this._definedNamesService=n,this._messageService=r,this._localeService=i,this._configService=a}navigate(e){switch(e.type){case d.SheetHyperLinkType.URL:this.navigateToOtherWebsite(e.url);break;default:this._navigateToUniver(e.searchObj)}}_navigateToUniver(e){let{gid:n,range:r,rangeid:i}=e,a=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET);if(!a)return;let o=a.getUnitId();if(i){let e=this._definedNamesService.getValueById(o,i);if(!e)return;let{formulaOrRefString:t}=e,n=this._definedNamesService.getWorksheetByRef(o,t);if(!n){this._messageService.show({content:this._localeService.t(`sheets-hyper-link-ui.message.refError`),type:c.MessageType.Error});return}if(n.isSheetHidden()){this._messageService.show({content:this._localeService.t(`sheets-hyper-link-ui.message.hiddenSheet`),type:c.MessageType.Error});return}this.navigateToDefineName(o,i)}if(n){if(r){let e=(0,l.deserializeRangeWithSheet)(r);(0,t.isValidRange)(e.range)&&r!==d.ERROR_RANGE&&this.navigateToRange(o,n,e.range);return}this.navigateToSheetById(o,n)}}async navigateToRange(e,t,i,a){let o=await this.navigateToSheetById(e,t);if(o){let s=w(i,o);await this._commandService.executeCommand(n.SetSelectionsOperation.id,{unitId:e,subUnitId:t,selections:[{range:s,primary:null}]}),await this._commandService.executeCommand(r.ScrollToRangeOperation.id,{range:s,forceTop:a})}}async navigateToSheetById(e,r){let i=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_SHEET);if(!i)return!1;let a=i.getActiveSheet();if(!a)return!1;if(a.getSheetId()===r)return a;let o=i.getSheetBySheetId(r);return o?i.getHiddenWorksheets().indexOf(r)>-1?(this._messageService.show({content:this._localeService.t(`sheets-hyper-link-ui.message.hiddenSheet`),type:c.MessageType.Error}),!1):await this._commandService.executeCommand(n.SetWorksheetActiveOperation.id,{unitId:e,subUnitId:r})?o:!1:(this._messageService.show({content:this._localeService.t(`sheets-hyper-link-ui.message.noSheet`),type:c.MessageType.Error}),!1)}async navigateToDefineName(e,t){return this._definedNamesService.focusRange(e,t),!0}async navigateToOtherWebsite(e){var n;if(!(0,t.isSafeUrl)(e))return;let r=this._configService.getConfig(b);if(r!=null&&(n=r.urlHandler)!=null&&n.navigateToOtherWebsite)return r.urlHandler.navigateToOtherWebsite(e);window.open(e,`_blank`,`noopener noreferrer`)}};T=C([S(0,t.IUniverInstanceService),S(1,t.ICommandService),S(2,l.IDefinedNamesService),S(3,f.IMessageService),S(4,(0,t.Inject)(t.LocaleService)),S(5,t.IConfigService)],T);function E(e){"@babel/helpers - typeof";return E=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},E(e)}function D(e,t){if(E(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(E(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function O(e){var t=D(e,`string`);return E(t)==`symbol`?t:t+``}function k(e,t,n){return(t=O(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var ee=class extends t.Disposable{constructor(...e){super(...e),k(this,`_customHyperLinks`,new Map)}isBuiltInLinkType(e){return e!==d.SheetHyperLinkType.URL}getOptions(){return Array.from(this._customHyperLinks.values()).map(({option:e})=>e)}findCustomHyperLink(e){return Array.from(this._customHyperLinks.values()).find(t=>t.match(e))}registerCustomHyperLink(e){this._customHyperLinks.set(e.type,e)}getCustomHyperLink(e){return this._customHyperLinks.get(e)}removeCustomHyperLink(e){let{_customHyperLinks:t}=this;t.delete(e)}dispose(){super.dispose(),this._customHyperLinks.clear()}};function te(e){return e.trim().length===0}function ne(e,n){let[r]=e.split(`,`).map(l.deserializeRangeWithSheet);return!r||!(0,t.isValidRange)(r.range)?``:(r.sheetName||=n,(0,l.serializeRangeToRefString)(r))}let A=()=>{let[e,s]=(0,p.useState)(``),[h,_]=(0,p.useState)(!1),[v,b]=(0,p.useState)(``),[x,S]=(0,p.useState)(!0),[C,w]=(0,p.useState)(d.SheetHyperLinkType.URL),[E,D]=(0,p.useState)(``),O=(0,f.useDependency)(t.LocaleService),k=(0,f.useDependency)(l.IDefinedNamesService),A=(0,f.useDependency)(r.IEditorBridgeService),j=(0,f.useDependency)(t.IUniverInstanceService),M=(0,f.useDependency)(U),N=(0,f.useObservable)(M.currentEditing$),re=(0,f.useDependency)(d.SheetsHyperLinkParserService),ie=(0,f.useDependency)(T),P=(0,f.useDependency)(t.ICommandService),F=(0,f.useDependency)(ee),ae=(0,p.useMemo)(()=>F.getOptions(),[F]),I=(0,f.useDependency)(o.IRenderManagerService),oe=(0,f.useDependency)(r.IMarkSelectionService),se=(0,f.useDependency)(i.DocSelectionManagerService),ce=(0,f.useDependency)(t.ThemeService),[L,le]=(0,p.useState)(!1),ue=(0,f.useDependency)(n.SheetsSelectionsService),de=(0,p.useMemo)(()=>ue.getCurrentSelections(),[]),R=(0,p.useMemo)(()=>{if(!F.isBuiltInLinkType(C))return F.getCustomHyperLink(C)},[F,C]),[z,fe]=(0,p.useState)(!1),[B,pe]=(0,p.useState)(!1),V=(0,p.useRef)(!1),H=(0,f.useEvent)(()=>V.current),W=(0,f.useEvent)(e=>{V.current=e}),G=j.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),me=(G==null?void 0:G.getActiveSheet().getSheetId())||``,K=(0,p.useCallback)(e=>{b(e.replaceAll(t.DataStreamTreeTokenType.CUSTOM_RANGE_START,``).replaceAll(t.DataStreamTreeTokenType.CUSTOM_RANGE_END,``))},[b]);(0,p.useEffect)(()=>{if((N==null?void 0:N.row)!==void 0&&N.col!==void 0){let{customRange:u,row:f,col:p}=N,{label:m}=N;typeof m==`number`&&(m=`${m}`);let h;if(u){var e;h={id:(u==null?void 0:u.rangeId)??``,display:m??``,payload:(u==null||(e=u.properties)==null?void 0:e.url)??``,row:f,column:p}}else if(N.type===`viewing`){var n,r,i;let e=j.getUnit(N.unitId),a=e==null?void 0:e.getSheetBySheetId(N.subUnitId),o=a==null?void 0:a.getCellRaw(N.row,N.col),s=o==null||(n=o.p)==null||(n=n.body)==null||(n=n.customRanges)==null?void 0:n.find(e=>{var n;return e.rangeType===t.CustomRangeType.HYPERLINK&&((n=e.properties)==null?void 0:n.url)}),c=o==null?void 0:o.v;o&&(!t.BuildTextUtils.transform.isEmptyDocument((r=o.p)==null||(r=r.body)==null?void 0:r.dataStream)||t.Tools.isDefine(c))&&S(!1),h={id:``,display:``,payload:(s==null||(i=s.properties)==null?void 0:i.url)??``,row:f,column:p}}else{var a,o;let e=j.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC),n=se.getActiveTextRange(),r=e==null?void 0:e.getBody(),i=n&&r?n:null,s=i&&((a=t.BuildTextUtils.customRange.getCustomRangesInterestsWithSelection(i,(r==null?void 0:r.customRanges)??[]))==null?void 0:a[0]);S(!1),h={id:``,display:m??``,payload:(s==null||(o=s.properties)==null?void 0:o.url)??``,row:f,column:p}}s(h.id);let g=F.findCustomHyperLink(h);if(g){let e=g.convert(h);w(e.type),D(e.payload),K(e.display);return}K(h.display);let _=re.parseHyperLink(h.payload);switch(w(_.type===d.SheetHyperLinkType.INVALID?d.SheetHyperLinkType.RANGE:_.type),_.type){case d.SheetHyperLinkType.URL:D(_.url),_.url===h.display&&W(!0);break;case d.SheetHyperLinkType.RANGE:{var c;let e=_.searchObj,t=(0,l.serializeRangeWithSheet)(e.gid?((c=j.getUnit(N.unitId))==null||(c=c.getSheetBySheetId(e.gid))==null?void 0:c.getName())??``:``,(0,l.deserializeRangeWithSheet)(e.range).range);D(t),t===h.display&&W(!0);break}case d.SheetHyperLinkType.SHEET:{let e=_.searchObj;D(e.gid);break}case d.SheetHyperLinkType.DEFINE_NAME:{let e=_.searchObj;D(e.rangeid);break}default:D(``);break}}},[N,ie,F,se,j]),(0,p.useEffect)(()=>{let e=null;if(N&&!N.customRangeId&&N.type===`viewing`&&t.Tools.isDefine(N.row)&&t.Tools.isDefine(N.col)){let n=j.getUnit(N.unitId,t.UniverInstanceType.UNIVER_SHEET),r=n==null?void 0:n.getSheetBySheetId(N.subUnitId),i=r==null?void 0:r.getMergedCell(N.row,N.col),a=new t.ColorKit(ce.getColorFromTheme(`primary.600`)).toRgb();e=oe.addShape({range:i??{startColumn:N.col,endColumn:N.col,startRow:N.row,endRow:N.row},style:{fill:`rgb(${a.r}, ${a.g}, ${a.b}, 0.12)`,strokeWidth:1,stroke:`#FFBD37`,widgets:{}},primary:null},[],-1)}return()=>{e&&oe.removeShape(e)}},[N,oe,ce,j]),(0,p.useEffect)(()=>{pe(C===d.SheetHyperLinkType.RANGE)},[C]),(0,p.useEffect)(()=>{let e=I.getRenderUnitById(A.getCurrentEditorId()),n=new t.DisposableCollection;if(e){let t=e.with(a.DocSelectionRenderService);t.setReserveRangesStatus(!0),n.add(()=>{t.setReserveRangesStatus(!1)})}return()=>{A.disableForceKeepVisible(),n.dispose()}},[A,I]),(0,p.useEffect)(()=>(B&&M.setIsKeepVisible(B),M.setIsKeepVisible(L),()=>{M.setIsKeepVisible(!1)}),[B,L,M]),(0,p.useEffect)(()=>{if(B)return A.enableForceKeepVisible(),()=>{A.disableForceKeepVisible()}},[B,A]);let q=[{label:O.t(`sheets-hyper-link-ui.form.link`),value:d.SheetHyperLinkType.URL},{label:O.t(`sheets-hyper-link-ui.form.range`),value:d.SheetHyperLinkType.RANGE},{label:O.t(`sheets-hyper-link-ui.form.worksheet`),value:d.SheetHyperLinkType.SHEET},{label:O.t(`sheets-hyper-link-ui.form.definedName`),value:d.SheetHyperLinkType.DEFINE_NAME},...ae],Y=(0,f.useEvent)(e=>{var t;let n=ne(e,(G==null||(t=G.getActiveSheet())==null?void 0:t.getName())||``);if(!n){D(``);return}D(n),(H()||!v)&&(K(n),W(!0))});if(!G)return;let X=G.getHiddenWorksheets(),Z=G.getSheets().map(e=>({label:e.getName(),value:e.getSheetId()})).filter(e=>X.indexOf(e.value)===-1),Q=Object.values(k.getDefinedNameMap(G.getUnitId())??{}).map(e=>({label:e.name,value:e.id})),he=(e,t)=>{if(e===d.SheetHyperLinkType.URL)return y(t);if(e===d.SheetHyperLinkType.RANGE){let e=(0,l.deserializeRangeWithSheet)(t),n=G.getSheetBySheetName(e.sheetName);if(n)return`#gid=${n.getSheetId()}&range=${(0,l.serializeRange)(e.range)}`}return`#${e}=${t}`},ge=async()=>{if(x&&te(v)||!E||C===d.SheetHyperLinkType.URL&&!g(E)){fe(!0);return}if(N)if(e){let t=N.type===`editing`?d.UpdateRichHyperLinkCommand.id:d.UpdateHyperLinkCommand.id;await P.executeCommand(t,{id:e,unitId:N.unitId,subUnitId:N.subUnitId,payload:{display:x?v:``,payload:he(C,E)},row:N.row,column:N.col,documentId:A.getCurrentEditorId()})}else{let e=N.type===`editing`?d.AddRichHyperLinkCommand.id:d.AddHyperLinkCommand.id;await P.executeCommand(e,{unitId:N.unitId,subUnitId:N.subUnitId,link:{id:(0,t.generateRandomId)(),row:N.row,column:N.col,payload:he(C,E),display:x?v:``},documentId:A.getCurrentEditorId()})}(N==null?void 0:N.type)===`viewing`&&(await P.executeCommand(n.SetWorksheetActiveOperation.id,{unitId:N.unitId,subUnitId:N.subUnitId}),await P.executeCommand(r.ScrollToRangeOperation.id,{range:{startRow:Math.max(N.row-1,0),endRow:N.row+1,startColumn:Math.max(N.col-1,0),endColumn:N.col+1}})),P.executeCommand(J.id)};return N?(0,m.jsxs)(`div`,{className:(0,c.clsx)(`univer-box-border univer-w-[296px] univer-rounded-xl univer-bg-gray-0 univer-p-4 univer-shadow-md dark:!univer-bg-gray-900`,c.borderClassName),children:[x?(0,m.jsx)(c.FormLayout,{label:O.t(`sheets-hyper-link-ui.form.label`),error:z&&te(v)?O.t(`sheets-hyper-link-ui.form.inputError`):``,children:(0,m.jsx)(c.Input,{value:v,onChange:e=>{K(e),W(!1)},placeholder:O.t(`sheets-hyper-link-ui.form.labelPlaceholder`),autoFocus:!0,onKeyDown:e=>{e.keyCode===f.KeyCode.ENTER&&ge()}})}):null,(0,m.jsx)(c.FormLayout,{label:O.t(`sheets-hyper-link-ui.form.type`),children:(0,m.jsx)(c.Select,{className:`univer-w-full`,options:q,value:C,onChange:e=>{w(e),D(``)}})}),C===d.SheetHyperLinkType.URL&&(0,m.jsx)(c.FormLayout,{error:z?E?g(E)?``:O.t(`sheets-hyper-link-ui.form.linkError`):O.t(`sheets-hyper-link-ui.form.inputError`):``,children:(0,m.jsx)(c.Input,{value:E,onChange:e=>{D(e),e&&(H()||!v||v===e)&&(K(e),W(!0))},placeholder:O.t(`sheets-hyper-link-ui.form.linkPlaceholder`),autoFocus:!0,onKeyDown:e=>{e.keyCode===f.KeyCode.ENTER&&ge()}})}),C===d.SheetHyperLinkType.RANGE&&(0,m.jsx)(c.FormLayout,{error:z&&!E?O.t(`sheets-hyper-link-ui.form.inputError`):``,children:(0,m.jsx)(u.RangeSelector,{unitId:G.getUnitId(),subUnitId:me,maxRangeCount:1,supportAcrossSheet:!0,initialValue:E,resetRange:de,onChange:(e,t)=>Y(t),onRangeSelectorDialogVisibleChange:async e=>{le(e),e?(N.type!==`viewing`&&A.enableForceKeepVisible(),_(!0)):(await ie.navigateToRange(N.unitId,N.subUnitId,{startRow:N.row,endRow:N.row,startColumn:N.col,endColumn:N.col},!0),A.disableForceKeepVisible(),_(!1))},onFocusChange:e=>pe(e)})}),C===d.SheetHyperLinkType.SHEET&&(0,m.jsx)(c.FormLayout,{error:z&&!E?O.t(`sheets-hyper-link-ui.form.selectError`):``,children:(0,m.jsx)(c.Select,{className:`univer-w-full`,options:Z,value:E,onChange:e=>{var t,n;D(e);let r=(t=Z.find(t=>t.value===e))==null?void 0:t.label,i=(n=Z.find(e=>e.value===E))==null?void 0:n.label;r&&(H()||!v||v===i)&&(K(r),W(!0))}})}),C===d.SheetHyperLinkType.DEFINE_NAME&&(0,m.jsx)(c.FormLayout,{error:z&&!E?O.t(`sheets-hyper-link-ui.form.selectError`):``,children:(0,m.jsx)(c.Select,{className:`univer-w-full`,options:Q,value:E,onChange:e=>{var t,n;D(e);let r=(t=Q.find(t=>t.value===e))==null?void 0:t.label,i=(n=Q.find(e=>e.value===E))==null?void 0:n.label;r&&(H()||!v||v===i)&&(K(r),W(!0))}})}),(R==null?void 0:R.Form)&&(0,m.jsx)(R.Form,{linkId:e,payload:E,display:v,showError:z,getIsDisplaySyncedWithPayload:H,setDisplaySyncedWithPayload:W,setDisplay:e=>{K(e),W(!0)},setPayload:D}),(0,m.jsxs)(`div`,{className:`univer-flex univer-flex-row univer-justify-end univer-gap-2`,children:[(0,m.jsx)(c.Button,{onClick:()=>{N&&ie.navigateToRange(N.unitId,N.subUnitId,{startRow:N.row,endRow:N.row,startColumn:N.col,endColumn:N.col},!0),P.executeCommand(J.id)},children:O.t(`sheets-hyper-link-ui.form.cancel`)}),(0,m.jsx)(c.Button,{variant:`primary`,onClick:async()=>{ge()},children:O.t(`sheets-hyper-link-ui.form.ok`)})]})]}):null};A.componentKey=`univer.sheet.cell-link-edit`;function j({ref:e,...t}){let{preserveStrokeWidth:n,icon:r,id:i,className:a,extend:o,...s}=t,c=`univerjs-icon univerjs-icon-${i} ${a||``}`.trim(),l=`_${(0,p.useId)()}`,u=(0,p.useRef)(null);return(0,p.useImperativeHandle)(e,()=>u.current),(0,p.useLayoutEffect)(()=>{if(!(!n||!u.current||u.current.localName!==r.tag))return ie(u.current)},[n,r]),M(r,`${i}`,{defIds:r.defIds,idSuffix:l},{ref:u,className:c,...s},o)}function M(e,t,n,r,i){return(0,p.createElement)(e.tag,{key:t,...N(e,n,i),...r},(re(e,n).children||[]).map((r,a)=>M(r,`${t}-${e.tag}-${a}`,n,void 0,i)))}function N(e,t,n){let r={...e.attrs};n!=null&&n.colorChannel1&&r.fill===`colorChannel1`&&(r.fill=n.colorChannel1),n!=null&&n.colorChannel1&&r.stroke===`colorChannel1`&&(r.stroke=n.colorChannel1),e.tag===`mask`&&r.id&&(r.id+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{e===`mask`&&typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))});let{defIds:i}=t;return!i||i.length===0?r:(e.tag===`use`&&r[`xlink:href`]&&(r[`xlink:href`]+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))}),r)}function re(e,t){var n;let{defIds:r}=t;return!r||r.length===0?e:e.tag===`defs`&&(n=e.children)!=null&&n.length?{...e,children:e.children.map(e=>typeof e.attrs.id==`string`&&r&&r.includes(e.attrs.id)?{...e,attrs:{...e.attrs,id:e.attrs.id+t.idSuffix}}:e)}:e}function ie(e){let t=e.viewBox.baseVal,n=Math.max(t.width,t.height);if(!Number.isFinite(n)||n<=0||t.width<=0||t.height<=0)return()=>void 0;let r=16/n,i=Array.from(e.querySelectorAll(`circle, ellipse, line, path, polygon, polyline, rect, text, textPath, tspan, use`)).flatMap(e=>{let t=getComputedStyle(e),n=Number.parseFloat(t.strokeWidth);return t.stroke===`none`||Number.parseFloat(t.strokeOpacity)===0||t.vectorEffect===`non-scaling-stroke`||!Number.isFinite(n)||n<=0?[]:[{element:e,hadStyleAttribute:e.hasAttribute(`style`),originalStrokeWidth:n,strokeWidth:P(e.style,`stroke-width`)}]}).map(e=>({appliedStrokeWidth:null,element:e.element,hadStyleAttribute:e.hadStyleAttribute,isReleased:!1,originalStrokeWidth:e.originalStrokeWidth,strokeWidth:e.strokeWidth}));if(i.length===0)return()=>void 0;let a=(e,n)=>{if(t.width<=0||t.height<=0||e<=0||n<=0)return;let a=Math.min(e/t.width,n/t.height);!Number.isFinite(a)||a<=0||i.forEach(e=>{if(e.isReleased)return;if(e.appliedStrokeWidth!==null&&(e.element.style.getPropertyValue(`stroke-width`)!==e.appliedStrokeWidth||e.element.style.getPropertyPriority(`stroke-width`)!==e.strokeWidth.priority)){e.appliedStrokeWidth=null,e.isReleased=!0;return}let t=e.originalStrokeWidth*r/a,n=`${Number(t.toFixed(12))}px`;e.element.style.setProperty(`stroke-width`,n,e.strokeWidth.priority),e.appliedStrokeWidth=n})},o=e.getBoundingClientRect();a(o.width,o.height);let s=typeof ResizeObserver>`u`?null:new ResizeObserver(t=>{if(t.some(t=>t.target===e)){let t=e.getBoundingClientRect();a(t.width,t.height)}});return s==null||s.observe(e),()=>{s==null||s.disconnect(),i.forEach(e=>{e.appliedStrokeWidth!==null&&(F(e.element.style,`stroke-width`,e.appliedStrokeWidth,e.strokeWidth.priority,e.strokeWidth),!e.hadStyleAttribute&&e.element.style.length===0&&e.element.removeAttribute(`style`))})}}function P(e,t){return{priority:e.getPropertyPriority(t),value:e.getPropertyValue(t)}}function F(e,t,n,r,i){e.getPropertyValue(t)===n&&e.getPropertyPriority(t)===r&&(i.value?e.setProperty(t,i.value,i.priority):e.removeProperty(t))}j.displayName=`UniverIcon`;let ae={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M7.9999 1.12915C8.03875 1.12915 8.07673 1.13284 8.11352 1.13989H12.2599C13.6958 1.13989 14.8599 2.30395 14.8599 3.73989V7.88619C14.867 7.92301 14.8707 7.96102 14.8707 7.9999C14.8707 8.03878 14.867 8.0768 14.8599 8.11362V12.2599C14.8599 13.6958 13.6958 14.8599 12.2599 14.8599H8.11362C8.0768 14.867 8.03878 14.8707 7.9999 14.8707C7.96102 14.8707 7.92301 14.867 7.88619 14.8599H3.73989C2.30396 14.8599 1.13989 13.6958 1.13989 12.2599V8.11352C1.13284 8.07673 1.12915 8.03875 1.12915 7.9999C1.12915 7.96106 1.13284 7.92308 1.13989 7.88629V3.73989C1.13989 2.30396 2.30395 1.13989 3.73989 1.13989H7.88629C7.92308 1.13284 7.96106 1.12915 7.9999 1.12915ZM2.33989 8.5999V12.2599C2.33989 13.0331 2.9667 13.6599 3.73989 13.6599H7.3999V8.5999H2.33989ZM7.3999 7.3999H2.33989V3.73989C2.33989 2.9667 2.96669 2.33989 3.73989 2.33989H7.3999V7.3999ZM8.5999 8.5999V13.6599H12.2599C13.0331 13.6599 13.6599 13.0331 13.6599 12.2599V8.5999H8.5999ZM13.6599 7.3999H8.5999V2.33989H12.2599C13.0331 2.33989 13.6599 2.96669 13.6599 3.73989V7.3999Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},I=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`all-border-icon`,ref:t,icon:ae}))});I.displayName=`AllBorderIcon`;let oe={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M4.1302 12.4251C4.25802 13.7417 5.36779 14.7708 6.71792 14.7708H11.7179C13.1539 14.7708 14.3179 13.6067 14.3179 12.1708V6.1708C14.3179 4.78586 13.2351 3.65383 11.8698 3.57517C11.742 2.25858 10.6323 1.22949 9.28213 1.22949H4.28213C2.84619 1.22949 1.68213 2.39355 1.68213 3.82949V9.82949C1.68213 11.2144 2.76497 12.3465 4.1302 12.4251ZM10.6583 3.5708H6.71792C5.28198 3.5708 4.11792 4.73486 4.11792 6.1708V11.22C3.4221 11.1387 2.88213 10.5471 2.88213 9.82949V3.82949C2.88213 3.05629 3.50893 2.42949 4.28213 2.42949H9.28213C9.96695 2.42949 10.5369 2.92119 10.6583 3.5708ZM13.1179 6.1708C13.1179 5.3976 12.4911 4.7708 11.7179 4.7708H6.71792C5.94472 4.7708 5.31792 5.3976 5.31792 6.1708V12.1708C5.31792 12.944 5.94472 13.5708 6.71792 13.5708H11.7179C12.4911 13.5708 13.1179 12.944 13.1179 12.1708V6.1708Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},se=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`copy-icon`,ref:t,icon:oe}))});se.displayName=`CopyIcon`;let ce={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{stroke:`currentColor`,d:`M7.30999 8.71386C6.39955 7.80343 6.37922 6.34731 7.26629 5.45772L10.313 2.41112C11.2111 1.51303 12.6799 1.51258 13.5691 2.45476C14.4811 3.36679 14.4798 4.84384 13.6128 5.71094L10.9677 8.35604`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.22}},{tag:`path`,attrs:{stroke:`currentColor`,d:`M5.0456 7.66774L2.4005 10.3128C1.50242 11.2109 1.50197 12.6798 2.44413 13.5691C3.35615 14.4811 4.8332 14.4798 5.70033 13.6127L8.747 10.566C9.65743 9.65558 9.67776 8.19945 8.7905 7.30999`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.22}}]},L=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`link-icon`,ref:t,icon:ce}))});L.displayName=`LinkIcon`;let le={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 17`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M12.5935 3.47302C11.6354 2.51492 10.082 2.51492 9.12388 3.47302L7.83534 4.76157C7.60102 4.99588 7.22112 4.99588 6.98681 4.76157C6.75249 4.52725 6.75249 4.14735 6.98681 3.91304L8.27535 2.62449C9.70209 1.19776 12.0153 1.19776 13.442 2.62449C14.8688 4.05123 14.8688 6.36442 13.442 7.79116L12.1535 9.0797C11.9192 9.31402 11.5393 9.31402 11.3049 9.0797C11.0706 8.84539 11.0706 8.46549 11.3049 8.23117L12.5935 6.94263C13.5516 5.98452 13.5516 4.43113 12.5935 3.47302Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.40637 12.6606C2.44827 11.7025 2.44827 10.1491 3.40637 9.19102L4.69492 7.90248C4.92923 7.66816 4.92923 7.28826 4.69492 7.05395C4.4606 6.81963 4.0807 6.81963 3.84639 7.05395L2.55784 8.34249C1.13111 9.76923 1.13111 12.0824 2.55784 13.5092C3.98458 14.9359 6.29777 14.9359 7.72451 13.5092L9.01305 12.2206C9.24737 11.9863 9.24737 11.6064 9.01305 11.3721C8.77874 11.1378 8.39884 11.1378 8.16452 11.3721L6.87598 12.6606C5.91787 13.6187 4.36448 13.6187 3.40637 12.6606Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M3.5852 2.80332C3.35088 2.569 2.97098 2.569 2.73667 2.80332C2.50235 3.03763 2.50235 3.41753 2.73667 3.65185L12.4151 13.3302C12.6494 13.5646 13.0293 13.5646 13.2636 13.3302C13.4979 13.0959 13.4979 12.716 13.2636 12.4817L3.5852 2.80332Z`}}]},ue=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`unlink-icon`,ref:t,icon:le}))});ue.displayName=`UnlinkIcon`;let de={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 17 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M12.6551 1.98906C11.7476 1.08113 10.2757 1.08149 9.3686 1.98987L4.82542 6.53955C4.75087 6.61421 4.69336 6.70411 4.65682 6.80309L3.2461 10.625C3.16506 10.8446 3.21909 11.0912 3.3845 11.2568C3.54991 11.4224 3.79651 11.4767 4.01616 11.3959L7.85031 9.98517C7.94979 9.94856 8.04014 9.89077 8.11508 9.81579L12.6552 5.27327C13.5618 4.36621 13.5618 2.89607 12.6551 1.98906ZM10.2177 2.83779C10.6562 2.39869 11.3677 2.39851 11.8064 2.8374C12.2447 3.27584 12.2447 3.9865 11.8065 4.42497L7.3392 8.89457L4.82213 9.82068L5.74706 7.31487L10.2177 2.83779Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.79238 13.2999C1.46101 13.2999 1.19238 13.5685 1.19238 13.8999C1.19238 14.2313 1.46101 14.4999 1.79238 14.4999H14.4924C14.8238 14.4999 15.0924 14.2313 15.0924 13.8999C15.0924 13.5685 14.8238 13.2999 14.4924 13.2999H1.79238Z`}}]},R=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`write-icon`,ref:t,icon:de}))});R.displayName=`WriteIcon`;let z={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`#35BD4B`,d:`M3.4535 1.12549C2.7002 1.12549 2.08954 1.73615 2.08954 2.48945V13.5104C2.08954 14.2637 2.7002 14.8744 3.4535 14.8744H12.5465C13.2998 14.8744 13.9105 14.2637 13.9105 13.5104V5.0992L10.0091 1.12549H3.4535Z`}},{tag:`path`,attrs:{fill:`#32A846`,d:`M10.0075 1.12549L13.9104 5.09842H10.6742C10.306 5.09842 10.0075 4.79994 10.0075 4.43175V1.12549Z`}},{tag:`path`,attrs:{fill:`white`,d:`M4.7 7.05H11.1V12.05H4.7V7.05ZM5.5 7.85V9.2H7.35V7.85H5.5ZM8.15 7.85V9.2H10.3V7.85H8.15ZM5.5 10V11.25H7.35V10H5.5ZM8.15 10V11.25H10.3V10H8.15Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},fe=(0,p.forwardRef)(function(e,t){return(0,p.createElement)(j,Object.assign({},e,{id:`sheets-multi-icon`,ref:t,icon:z}))});fe.displayName=`SheetsMultiIcon`;let B={[d.SheetHyperLinkType.URL]:(0,m.jsx)(L,{}),[d.SheetHyperLinkType.SHEET]:(0,m.jsx)(fe,{className:`univer-text-green-500`}),[d.SheetHyperLinkType.RANGE]:(0,m.jsx)(I,{}),[d.SheetHyperLinkType.DEFINE_NAME]:(0,m.jsx)(I,{}),[d.SheetHyperLinkType.INVALID]:(0,m.jsx)(I,{})},pe=e=>{var n;let i=(0,f.useDependency)(U),a=(0,f.useDependency)(t.ICommandService),o=(0,f.useDependency)(f.IMessageService),s=(0,f.useDependency)(t.LocaleService),l=(0,f.useDependency)(T),u=(0,f.useDependency)(r.IEditorBridgeService),p=(0,f.useDependency)(d.SheetsHyperLinkParserService),{customRange:h,row:g,col:_,unitId:v,subUnitId:y,editPermission:b,copyPermission:x,type:S}=e;if(!(h!=null&&(n=h.properties)!=null&&n.url))return null;let C=p.parseHyperLink(h.properties.url??``),w=C.type===d.SheetHyperLinkType.INVALID;return(0,m.jsxs)(`div`,{className:(0,c.clsx)(`univer-mb-1 univer-flex univer-max-w-80 univer-flex-row univer-items-center univer-justify-between univer-gap-2 univer-overflow-hidden univer-rounded-lg univer-bg-gray-0 univer-p-2 univer-shadow-md dark:!univer-bg-gray-900`,c.borderClassName),onClick:()=>i.hideCurrentPopup(),children:[(0,m.jsxs)(`div`,{className:(0,c.clsx)(`univer-flex univer-h-6 univer-flex-1 univer-cursor-pointer univer-flex-row univer-items-center univer-gap-1 univer-truncate univer-text-sm univer-leading-5 univer-text-primary-600`,{"univer-text-red-500":w}),onClick:()=>{w||l.navigate(C)},children:[(0,m.jsx)(`div`,{className:`univer-flex univer-size-5 univer-flex-none univer-items-center univer-justify-center univer-text-base univer-text-gray-900 dark:!univer-text-gray-0`,children:B[C.type]}),(0,m.jsx)(c.Tooltip,{showIfEllipsis:!0,title:C.name,asChild:!0,children:(0,m.jsx)(`span`,{className:`univer-flex-1 univer-truncate`,children:C.name})})]}),(0,m.jsxs)(`div`,{className:`univer-flex univer-h-6 univer-flex-none univer-flex-row univer-items-center univer-justify-center univer-gap-2`,children:[x&&(0,m.jsx)(`div`,{className:(0,c.clsx)(`univer-flex univer-size-6 univer-cursor-pointer univer-flex-row univer-items-center univer-justify-center univer-rounded univer-text-base hover:univer-bg-gray-100 dark:hover:!univer-bg-gray-700`,{"univer-text-red-500":w}),onClick:()=>{if(!w){if(C.type!==d.SheetHyperLinkType.URL){let e=new URL(window.location.href);e.hash=C.url.slice(1),navigator.clipboard.writeText(e.href)}else navigator.clipboard.writeText(C.url);o.show({content:s.t(`sheets-hyper-link-ui.message.coped`),type:c.MessageType.Info})}},children:(0,m.jsx)(c.Tooltip,{placement:`bottom`,title:s.t(`sheets-hyper-link-ui.popup.copy`),children:(0,m.jsx)(se,{className:`dark:!univer-text-gray-0`})})}),b&&(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(`div`,{"data-u-comp":`cell-link-popup-edit`,className:`univer-flex univer-size-6 univer-cursor-pointer univer-flex-row univer-items-center univer-justify-center univer-rounded univer-text-base hover:univer-bg-gray-100 dark:hover:!univer-bg-gray-700`,onClick:()=>{a.executeCommand(q.id,{unitId:v,subUnitId:y,row:g,col:_,customRangeId:h.rangeId,type:S})},children:(0,m.jsx)(c.Tooltip,{placement:`bottom`,title:s.t(`sheets-hyper-link-ui.popup.edit`),children:(0,m.jsx)(R,{className:`dark:!univer-text-gray-0`})})}),(0,m.jsx)(`div`,{"data-u-comp":`cell-link-popup-remove`,className:`univer-flex univer-size-6 univer-cursor-pointer univer-flex-row univer-items-center univer-justify-center univer-rounded univer-text-base hover:univer-bg-gray-100 dark:hover:!univer-bg-gray-700`,onClick:()=>{let e=S===`editing`?d.CancelRichHyperLinkCommand.id:d.CancelHyperLinkCommand.id;a.syncExecuteCommand(e,{unitId:v,subUnitId:y,id:h.rangeId,row:g,column:_,documentId:u.getCurrentEditorId()})&&i.hideCurrentPopup(void 0,!0)},children:(0,m.jsx)(c.Tooltip,{placement:`bottom`,title:s.t(`sheets-hyper-link-ui.popup.cancel`),children:(0,m.jsx)(ue,{className:`dark:!univer-text-gray-0`})})})]})]})]})},V=()=>{let e=(0,f.useDependency)(U),n=(0,f.useObservable)(e.currentPopup$,e.currentPopup),r=(0,f.useDependency)(t.IUniverInstanceService);if(!n)return null;if(n.showAll){var i;let e=r.getUnit(n.unitId,t.UniverInstanceType.UNIVER_SHEET),a=e==null?void 0:e.getSheetBySheetId(n.subUnitId),o=a==null?void 0:a.getCell(n.row,n.col),s=o==null||(i=o.p)==null||(i=i.body)==null?void 0:i.customRanges;return s!=null&&s.length?(0,m.jsx)(`div`,{children:s.map(e=>(0,m.jsx)(pe,{...n,customRange:e},e.rangeId))}):null}return(0,m.jsx)(pe,{...n})};V.componentKey=`univer.sheet.cell-link-popup`;let H=(e,t)=>{var n,r;return e.unitId===t.unitId&&e.subUnitId===t.subUnitId&&e.row===t.row&&e.col===t.col&&((n=e.customRange)==null?void 0:n.rangeId)===((r=t.customRange)==null?void 0:r.rangeId)&&e.type===t.type},U=class extends t.Disposable{get currentPopup(){return this._currentPopup}get currentEditing(){return this._currentEditing$.getValue()}constructor(e,t,n,r,i){super(),this._sheetCanvasPopManagerService=e,this._injector=t,this._univerInstanceService=n,this._editorBridgeService=r,this._textSelectionManagerService=i,k(this,`_currentPopup`,null),k(this,`_currentPopup$`,new s.Subject),k(this,`currentPopup$`,this._currentPopup$.asObservable()),k(this,`_currentEditingPopup`,null),k(this,`_currentEditing$`,new s.BehaviorSubject(null)),k(this,`currentEditing$`,this._currentEditing$.asObservable()),k(this,`_isKeepVisible`,!1),this.disposeWithMe(()=>{this.hideCurrentPopup(),this.endEditing(),this._currentEditing$.complete(),this._currentPopup$.complete()})}setIsKeepVisible(e){this._isKeepVisible=e}getIsKeepVisible(){return this._isKeepVisible}showPopup(e){if(this._currentPopup&&H(e,this._currentPopup))return;this.hideCurrentPopup(void 0,!0);let t=this._currentEditing$.getValue();if(t&&H(e,t))return;let{unitId:n,subUnitId:r,row:i,col:a,customRangeRect:o,customRange:s}=e,c,l={componentKey:V.componentKey,direction:`bottom`,onClickOutside:()=>{this.hideCurrentPopup()},onClick:()=>{this.hideCurrentPopup(e.type,!0)}};if(e.type===`editing`){if(!s)return;c=o&&this._sheetCanvasPopManagerService.attachPopupToAbsolutePosition(o,l)}else if(e.showAll)c=this._sheetCanvasPopManagerService.attachPopupToCell(e.row,e.col,l,n,r);else{if(!s)return;c=o&&this._sheetCanvasPopManagerService.attachPopupByPosition(o,l,e)}if(c){if(this._currentPopup){var u;(u=this._currentPopup.disposable)==null||u.dispose()}this._currentPopup={unitId:n,subUnitId:r,disposable:c,row:i,col:a,editPermission:!!e.editPermission,copyPermission:!!e.copyPermission,customRange:s,type:e.type,showAll:e.showAll},this._currentPopup$.next(this._currentPopup)}}hideCurrentPopup(e,t){if(this._currentPopup&&((!e||e===this._currentPopup.type)&&this._currentPopup.disposable.canDispose()||t)){var n;(n=this._currentPopup)==null||(n=n.disposable)==null||n.dispose(),this._currentPopup=null,this._currentPopup$.next(null)}}dispose(){super.dispose(),this.hideCurrentPopup(),this.endEditing(),this._currentPopup$.complete(),this._currentEditing$.complete()}_getEditingRange(){let e=this._editorBridgeService.isVisible().visible,n=this._editorBridgeService.getEditCellState();if(e&&n){var r,i;let e=this._textSelectionManagerService.getActiveTextRange(),a=(r=n.documentLayoutObject.documentModel)==null?void 0:r.getBody();if(!a)return null;if(!e||e.collapsed)return{startOffset:0,endOffset:a.dataStream.length-2,collapsed:a.dataStream.length-2==0,label:t.BuildTextUtils.transform.getPlainText(a.dataStream)};let o=t.BuildTextUtils.customRange.getCustomRangesInterestsWithSelection(e,((i=a.customRanges)==null?void 0:i.filter(e=>e.rangeType===t.CustomRangeType.HYPERLINK))??[]),s=e.startOffset,c=e.endOffset;return o.forEach(e=>{s=Math.min(s,e.startIndex),c=Math.max(c,e.endIndex+1)}),{startOffset:s,endOffset:c,collapsed:s===c,label:t.BuildTextUtils.transform.getPlainText(a.dataStream.slice(s,c))}}return null}get _editPopup(){return{componentKey:A.componentKey,direction:`vertical`,onClickOutside:()=>{this.endEditing()},onContextMenu:()=>{this.endEditing()},hiddenType:`hide`}}startAddEditing(e){let{unitId:n,subUnitId:r,type:i}=e;if(i===`editing`){let i=this._getEditingRange();if(!i)return;this._textSelectionManagerService.replaceDocRanges([{...i}],{unitId:t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,subUnitId:t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY});let s=this._injector.get(o.IRenderManagerService).getRenderUnitById(t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY);if(!s)return;let c=(0,a.calcDocRangePositions)(i,s);if(!(c!=null&&c.length))return;this._currentEditingPopup=this._sheetCanvasPopManagerService.attachPopupToAbsolutePosition(c.pop(),this._editPopup,n,r),this._currentEditing$.next({...e,label:(i==null?void 0:i.label)??``})}else{var s;this._currentEditingPopup=this._sheetCanvasPopManagerService.attachPopupToCell(e.row,e.col,this._editPopup,n,r);let i=this._univerInstanceService.getUnit(n,t.UniverInstanceType.UNIVER_SHEET),a=i==null?void 0:i.getSheetBySheetId(r),o=a==null?void 0:a.getCellRaw(e.row,e.col);this._currentEditing$.next({...e,label:o!=null&&o.p?t.BuildTextUtils.transform.getPlainText(((s=o.p.body)==null?void 0:s.dataStream)??``):((o==null?void 0:o.v)??``).toString()})}}startEditing(e){var n;(n=this._currentEditingPopup)==null||n.dispose(),this.hideCurrentPopup(void 0,!0);let{unitId:i,subUnitId:a}=e,o,s;if(e.type===`editing`){var c;let t=(0,r.getEditingCustomRangePosition)(this._injector,e.unitId,e.subUnitId,e.row,e.col,e.customRangeId);if(!t||!((c=t.rects)!=null&&c.length))return;o=t.customRange,s=t.label,this._textSelectionManagerService.replaceDocRanges([{startOffset:o.startIndex,endOffset:o.endIndex+1}]),this._currentEditingPopup=this._sheetCanvasPopManagerService.attachPopupToAbsolutePosition(t.rects.pop(),this._editPopup,i,a)}else{var l;let n=this._univerInstanceService.getUnit(i,t.UniverInstanceType.UNIVER_SHEET),c=n==null?void 0:n.getSheetBySheetId(a),u=c==null?void 0:c.getCellRaw(e.row,e.col),d=n==null?void 0:n.getStyles().getStyleByCell(u),f=d==null?void 0:d.tr,p=(0,r.getCustomRangePosition)(this._injector,e.unitId,e.subUnitId,e.row,e.col,e.customRangeId);if(!p||!((l=p.rects)!=null&&l.length))return;o=p.customRange,s=p.label,f?this._currentEditingPopup=this._sheetCanvasPopManagerService.attachPopupToCell(e.row,e.col,this._editPopup,i,a):this._currentEditingPopup=this._sheetCanvasPopManagerService.attachPopupByPosition(p.rects.pop(),this._editPopup,{unitId:i,subUnitId:a,row:e.row,col:e.col})}this._currentEditing$.next({...e,customRange:o,label:s})}endEditing(e){if(this.getIsKeepVisible())return;let t=this._currentEditing$.getValue();if(t&&(!e||e===t.type)){var n;(n=this._currentEditingPopup)==null||n.dispose(),this._currentEditing$.next(null)}}};U=C([S(0,(0,t.Inject)(r.SheetCanvasPopManagerService)),S(1,(0,t.Inject)(t.Injector)),S(2,t.IUniverInstanceService),S(3,r.IEditorBridgeService),S(4,(0,t.Inject)(i.DocSelectionManagerService))],U);let W=new Set([t.DataValidationType.CHECKBOX,t.DataValidationType.LIST,t.DataValidationType.LIST_MULTIPLE]),G=(e,t,n,r)=>{var i,a;let o=t.getCell(n,r);if(o!=null&&o.f||o!=null&&o.si||o!=null&&(i=o.p)!=null&&(i=i.body)!=null&&(i=i.customBlocks)!=null&&i.length)return 1;let s=e.has(h.SheetDataValidationModel)?e.get(h.SheetDataValidationModel):null,c=s==null?void 0:s.getRuleByLocation(t.getUnitId(),t.getSheetId(),n,r);return c&&W.has(c.type)?!0:o!=null&&(a=o.p)!=null&&(a=a.drawingsOrder)!=null&&a.length?2:0},me=e=>{let r=e.get(t.IUniverInstanceService).getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET);if(!r)return!0;let i=r.getActiveSheet(),a=e.get(n.SheetsSelectionsService).getCurrentSelections();if(!a.length)return!0;let o=a[0].range.startRow,s=a[0].range.startColumn;return G(e,i,o,s)===1},K=e=>{var n;let r=e.get(i.DocSelectionManagerService),a=e.get(t.IUniverInstanceService),o=r.getTextRanges();if(!(o!=null&&o.length))return!0;let s=a.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);return!!(!s||o.every(e=>e.collapsed)||!((n=s.getSelfOrHeaderFooterModel(o[0].segmentId))!=null&&n.getBody()))},q={type:t.CommandType.OPERATION,id:`sheet.operation.open-hyper-link-edit-panel`,handler(e,t){if(!t)return!1;let n=e.get(U);return t.customRangeId?n.startEditing(t):n.startAddEditing(t),!0}},J={type:t.CommandType.OPERATION,id:`sheet.operation.close-hyper-link-popup`,handler(e){return e.get(U).endEditing(),!0}},Y={type:t.CommandType.OPERATION,id:`sheet.operation.insert-hyper-link`,handler(e){let i=(0,n.getSheetCommandTarget)(e.get(t.IUniverInstanceService)),a=e.get(r.IEditorBridgeService);if(!i)return!1;let o=e.get(t.ICommandService),s=e.get(n.SheetsSelectionsService).getCurrentLastSelection();if(!s)return!1;let c=s.range.startRow,l=s.range.startColumn,u=a.isVisible();return o.executeCommand(q.id,{unitId:i.unitId,subUnitId:i.subUnitId,row:c,col:l,type:u.visible?`editing`:`viewing`})}},X={type:t.CommandType.OPERATION,id:`sheet.operation.insert-hyper-link-toolbar`,handler(e){if(me(e))return!1;let n=e.get(t.ICommandService);return e.get(U).currentEditing?n.executeCommand(J.id):n.executeCommand(Y.id)}},Z=`SHEET_HYPER_LINK_UI_PLUGIN`,Q=class extends t.Disposable{registerPlainTextFilter(e){this._plainTextFilter.add(e)}removePlainTextFilter(e){this._plainTextFilter.delete(e)}_filterPlainText(e){return Array.from(this._plainTextFilter).every(t=>t(e))}constructor(e,t,n,r){super(),this._sheetClipboardService=e,this._hyperLinkModel=t,this._injector=n,this._resolverService=r,k(this,`_plainTextFilter`,new Set),k(this,`_copyInfo`,void 0),this._initCopyPaste(),this.disposeWithMe(()=>{this._plainTextFilter.clear()})}_initCopyPaste(){this._sheetClipboardService.addClipboardHook({id:Z,onBeforeCopy:(e,t,n)=>this._collect(e,t,n),onPasteCells:(e,t,n,i)=>{let{copyType:a=r.COPY_TYPE.COPY,pasteType:o}=i,{range:s}=e||{},{range:c,unitId:l,subUnitId:u}=t;return this._generateMutations(c,{copyType:a,pasteType:o,copyRange:s,unitId:l,subUnitId:u})},onPastePlainText:(e,n)=>{let i=this._filterPlainText(n);if(g(n)&&i){let{range:n,unitId:i,subUnitId:a}=e,{ranges:[o],mapFunc:s}=(0,r.virtualizeDiscreteRanges)([n]),c=[],l=[];return t.Range.foreach(o,(e,t)=>{let{row:n,col:r}=s(e,t),o=this._hyperLinkModel.getHyperLinkByLocation(i,a,n,r);o&&c.push({id:d.RemoveHyperLinkMutation.id,params:{unitId:i,subUnitId:a,id:o.id}}),o&&l.push({id:d.AddHyperLinkMutation.id,params:{unitId:i,subUnitId:a,link:o}})}),{redos:c,undos:l}}return{undos:[],redos:[]}},priority:99})}_collect(e,r,i){let a=new t.ObjectMatrix;this._copyInfo={unitId:e,subUnitId:r,matrix:a};let o=this._injector.invoke(t=>(0,n.rangeToDiscreteRange)(i,t,e,r));if(!o)return;let{rows:s,cols:c}=o;s.forEach((t,n)=>{c.forEach((i,o)=>{let s=this._hyperLinkModel.getHyperLinkByLocation(e,r,t,i);a.setValue(n,o,(s==null?void 0:s.id)??``)})})}_generateMutations(e,n){if(!this._copyInfo||!this._copyInfo||!this._copyInfo.matrix.getSizeOf()||!n.copyRange||[r.PREDEFINED_HOOK_NAME_PASTE.SPECIAL_PASTE_COL_WIDTH,r.PREDEFINED_HOOK_NAME_PASTE.SPECIAL_PASTE_VALUE,r.PREDEFINED_HOOK_NAME_PASTE.SPECIAL_PASTE_FORMAT,r.PREDEFINED_HOOK_NAME_PASTE.SPECIAL_PASTE_FORMULA].includes(n.pasteType))return{redos:[],undos:[]};let{unitId:i,subUnitId:a}=this._copyInfo,o=[],s=[],{ranges:[c,l],mapFunc:u}=(0,r.virtualizeDiscreteRanges)([n.copyRange,e]);return(0,r.getRepeatRange)(c,l,!0).forEach(({startRange:e})=>{var r;(r=this._copyInfo)==null||r.matrix.forValue((r,c,l)=>{let f=t.Rectangle.getPositionRange({startRow:r,endRow:r,startColumn:c,endColumn:c},e),p=this._hyperLinkModel.getHyperLink(i,a,l),{row:m,col:h}=u(f.startRow,f.startColumn),g=this._hyperLinkModel.getHyperLinkByLocation(n.unitId,n.subUnitId,m,h),_=(0,t.generateRandomId)();g&&o.push({id:d.RemoveHyperLinkMutation.id,params:{unitId:n.unitId,subUnitId:n.subUnitId,id:g.id}}),p&&(o.push({id:d.AddHyperLinkMutation.id,params:{unitId:n.unitId,subUnitId:n.subUnitId,link:{...p,id:_,row:m,column:h}}}),s.push({id:d.RemoveHyperLinkMutation.id,params:{unitId:n.unitId,subUnitId:n.subUnitId,id:_}})),g&&s.push({id:d.AddHyperLinkMutation.id,params:{unitId:n.unitId,subUnitId:n.subUnitId,link:g}})})}),{redos:o,undos:s}}};Q=C([S(0,r.ISheetClipboardService),S(1,(0,t.Inject)(d.HyperLinkModel)),S(2,(0,t.Inject)(t.Injector)),S(3,(0,t.Inject)(T))],Q);let he=(e,i=t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY)=>{var c;let l=e.get(t.IUniverInstanceService),u=(c=e.get(o.IRenderManagerService).getRenderUnitById(i))==null?void 0:c.with(a.DocSelectionRenderService);return u?u.textSelectionInner$.pipe((0,s.map)(()=>{let t=e.get(r.IEditorBridgeService).getEditCellState();if(!t)return!0;let i=(0,n.getSheetCommandTarget)(l,{unitId:t.unitId,subUnitId:t.sheetId});return!(i!=null&&i.worksheet)||G(e,i.worksheet,t.row,t.column)===1||K(e)})):(0,s.of)(!0)},ge=e=>{let i=e.get(t.IUniverInstanceService),a=e.has(r.IEditorBridgeService)?e.get(r.IEditorBridgeService):null;return((a==null?void 0:a.currentEditCellState$.pipe((0,s.map)(t=>{if(!t)return 1;let r=(0,n.getSheetCommandTarget)(i,{unitId:t.unitId,subUnitId:t.sheetId});return r?G(e,r.worksheet,t.row,t.column):1}),(0,s.switchMap)(n=>n===1?(0,s.of)(!0):(0,s.combineLatest)([a?a.visible$:(0,s.of)(null),i.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC)]).pipe((0,s.switchMap)(([r,i])=>r!=null&&r.visible?(i==null?void 0:i.getUnitId())===t.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY?(0,s.of)(!0):he(e,t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY):(0,s.of)(n!==0))))))??(0,s.of)(!0)).pipe((0,s.switchMap)(t=>t?(0,s.of)(!0):(0,r.getCurrentRangeDisable$)(e,{workbookTypes:[n.WorkbookEditablePermission],worksheetTypes:[n.WorksheetEditPermission,n.WorksheetSetCellValuePermission,n.WorksheetInsertHyperlinkPermission],rangeTypes:[n.RangeProtectionPermissionEditPoint]},!0)))},_e=e=>({commandId:Y.id,type:f.MenuItemType.BUTTON,title:`sheets-hyper-link-ui.menu.add`,icon:`LinkIcon`,id:Y.id,hidden$:(0,f.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_SHEET),disabled$:ge(e)}),ve=e=>({tooltip:`sheets-hyper-link-ui.form.addTitle`,commandId:X.id,type:f.MenuItemType.BUTTON,icon:`LinkIcon`,id:X.id,hidden$:(0,f.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_SHEET),disabled$:ge(e)}),ye={id:X.id,binding:f.KeyCode.K|f.MetaKeys.CTRL_COMMAND,preconditions:r.whenSheetEditorFocused},be={[f.RibbonInsertGroup.MEDIA]:{[X.id]:{order:1,gridLayout:{row:1,column:2,rowSpan:2,showLabel:!0},menuItemFactory:ve}},[f.ContextMenuPosition.MAIN_AREA]:{[f.ContextMenuGroup.OTHERS]:{order:1,[X.id]:{order:0,menuItemFactory:_e}}}};var xe=`@univerjs/sheets-hyper-link-ui`,Se=`1.0.0-beta.2`;let Ce=class extends t.Disposable{constructor(e,t){super(),this._autoFillService=e,this._hyperLinkModel=t,this._initAutoFill()}_initAutoFill(){let e=()=>({redos:[],undos:[]}),i=(e,i)=>{let{source:a,target:o,unitId:s,subUnitId:c}=e,l=(0,r.virtualizeDiscreteRanges)([a,o]),[u,f]=l.ranges,{mapFunc:p}=l,m={row:u.startRow,col:u.startColumn},h=n.AutoFillTools.getAutoFillRepeatRange(u,f),g=[],_=[];return h.forEach(e=>{let r=e.repeatStartCell,a=e.relativeRange,o={startRow:m.row,startColumn:m.col,endColumn:m.col,endRow:m.row},l={startRow:r.row,startColumn:r.col,endColumn:r.col,endRow:r.row};t.Range.foreach(a,(e,r)=>{let a=t.Rectangle.getPositionRange({startRow:e,startColumn:r,endColumn:r,endRow:e},o),{row:u,col:f}=p(a.startRow,a.startColumn),m=this._hyperLinkModel.getHyperLinkByLocation(s,c,u,f),h=t.Rectangle.getPositionRange({startRow:e,startColumn:r,endColumn:r,endRow:e},l),{row:v,col:y}=p(h.startRow,h.startColumn),b=(0,t.generateRandomId)(),x=this._hyperLinkModel.getHyperLinkByLocation(s,c,v,y);x&&g.push({id:d.RemoveHyperLinkMutation.id,params:{unitId:s,subUnitId:c,id:x.id}}),(n.AUTO_FILL_APPLY_TYPE.COPY===i||n.AUTO_FILL_APPLY_TYPE.SERIES===i)&&m&&(g.push({id:d.AddHyperLinkMutation.id,params:{unitId:s,subUnitId:c,link:{...m,id:b,row:v,column:y}}}),_.push({id:d.RemoveHyperLinkMutation.id,params:{unitId:s,subUnitId:c,id:b}})),x&&_.push({id:d.AddHyperLinkMutation.id,params:{unitId:s,subUnitId:c,link:x}})})}),{undos:_,redos:g}},a={id:Z,onFillData:(t,r,a)=>a===n.AUTO_FILL_APPLY_TYPE.COPY||a===n.AUTO_FILL_APPLY_TYPE.ONLY_FORMAT||a===n.AUTO_FILL_APPLY_TYPE.SERIES?i(t,a):e()};this.disposeWithMe(this._autoFillService.addHook(a))}};Ce=C([S(0,n.IAutoFillService),S(1,(0,t.Inject)(d.HyperLinkModel))],Ce);let we=class extends t.Disposable{constructor(e,t){super(),this._componentManager=e,this._iconManager=t,this._registerComponents(),this._registerIcons()}_registerComponents(){[[V.componentKey,V],[A.componentKey,A]].forEach(([e,t])=>{this._componentManager.register(e,t)})}_registerIcons(){this.disposeWithMe(this._iconManager.register({LinkIcon:L}))}};we=C([S(0,(0,t.Inject)(f.ComponentManager)),S(1,(0,t.Inject)(f.IconManager))],we);let Te=class extends t.Disposable{constructor(e,t,n){super(),this._localeService=e,this._commandService=t,this._sheetPermissionCheckController=n,this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(e=>{e.id===ye.id&&(this._sheetPermissionCheckController.permissionCheckWithRanges({workbookTypes:[n.WorkbookEditablePermission],rangeTypes:[n.RangeProtectionPermissionEditPoint],worksheetTypes:[n.WorksheetEditPermission,n.WorksheetSetCellValuePermission,n.WorksheetInsertHyperlinkPermission]})||this._sheetPermissionCheckController.blockExecuteWithoutPermission(this._localeService.t(`sheets-hyper-link-ui.permission.hyperLinkErr`)))}))}};Te=C([S(0,(0,t.Inject)(t.LocaleService)),S(1,t.ICommandService),S(2,(0,t.Inject)(n.SheetPermissionCheckController))],Te);let Ee=class extends t.Disposable{constructor(e,t,n,r,i,a,o,s,c){super(),this._hoverManagerService=e,this._sheetsHyperLinkPopupService=t,this._renderManagerService=n,this._permissionService=r,this._sheetPermissionCheckController=i,this._commandService=a,this._editorBridgeService=o,this._textSelectionManagerService=s,this._univerInstanceService=c,this._initHoverListener(),this._initCommandListener(),this._initHoverEditingListener(),this._initTextSelectionListener()}_getLinkPermission(e){let{unitId:r,subUnitId:i,row:a,col:o}=e,s=this._univerInstanceService.getUnit(r,t.UniverInstanceType.UNIVER_SHEET),c=s==null?void 0:s.getSheetBySheetId(i);if(!c)return{viewPermission:!1,editPermission:!1,copyPermission:!1};let l=this._sheetPermissionCheckController.permissionCheckWithRanges({workbookTypes:[n.WorkbookViewPermission],worksheetTypes:[n.WorksheetViewPermission],rangeTypes:[n.RangeProtectionPermissionViewPoint]},[{startRow:a,startColumn:o,endRow:a,endColumn:o}],r,i),u=this._sheetPermissionCheckController.permissionCheckWithRanges({workbookTypes:[n.WorkbookEditablePermission],worksheetTypes:[n.WorksheetEditPermission,n.WorksheetInsertHyperlinkPermission],rangeTypes:[n.RangeProtectionPermissionEditPoint]},[{startRow:a,startColumn:o,endRow:a,endColumn:o}],r,i),d=c.getCellRaw(a,o);d!=null&&d.f&&d.f.startsWith(`=HYPERLINK(`)&&(u=!1);let f=this._permissionService.composePermission([new n.WorkbookCopyPermission(r).id,new n.WorksheetCopyPermission(r,i).id]).every(e=>e.value);return{viewPermission:l,editPermission:u,copyPermission:f}}_initHoverListener(){this.disposeWithMe(this._hoverManagerService.currentRichText$.pipe((0,s.debounceTime)(200)).subscribe(e=>{var n,i,a;if(!e||((n=e.customRange)==null?void 0:n.rangeType)!==t.CustomRangeType.HYPERLINK){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}let{unitId:o,subUnitId:s,row:c,col:l}=e,u=this._renderManagerService.getRenderUnitById(o);if(!u)return;let d=this._univerInstanceService.getUnit(o,t.UniverInstanceType.UNIVER_SHEET),f=d==null?void 0:d.getSheetBySheetId(s);if(!f)return;if(!u.with(r.HoverRenderController).active){this._sheetsHyperLinkPopupService.hideCurrentPopup(`viewing`);return}let p=u==null||(i=u.with(r.SheetSkeletonManagerService).getSkeletonParam(s))==null?void 0:i.skeleton,m=l,h=c,g=h,_=m;p&&p.overflowCache.forValue((e,n,r)=>{t.Rectangle.contains(r,{startColumn:m,endColumn:m,startRow:h,endRow:h})&&(g=e,_=n)});let{viewPermission:v,editPermission:y,copyPermission:b}=this._getLinkPermission(e);if(!v){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}let x=f.getCellStyleOnly(g,_),S=d.getStyles().getStyleByCell(x),C=S==null||(a=S.tr)==null?void 0:a.a;if(!C&&!e.customRange){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}this._sheetsHyperLinkPopupService.showPopup({row:g,col:_,editPermission:y,copyPermission:b,customRange:e.customRange,customRangeRect:e.rect,type:`viewing`,unitId:o,subUnitId:s,showAll:!!C})}))}_initHoverEditingListener(){let e=null;this.disposeWithMe(this._editorBridgeService.currentEditCellState$.pipe((0,s.switchMap)(e=>this._editorBridgeService.visible$.pipe((0,s.map)(t=>({visible:t,state:e}))))).subscribe(({visible:n,state:i})=>{if(!i||i.editorUnitId!==t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY)return;if(!n.visible){e==null||e.unsubscribe(),this._sheetsHyperLinkPopupService.hideCurrentPopup(`editing`),this._sheetsHyperLinkPopupService.endEditing(`editing`);return}let{editorUnitId:o,unitId:c,sheetId:l,row:u,column:d}=i,f=this._renderManagerService.getRenderUnitById(o);if(!f)return;let{editPermission:p,viewPermission:m,copyPermission:h}=this._getLinkPermission({unitId:c,subUnitId:l,row:u,col:d}),g=f.with(a.DocEventManagerService);m&&(e==null||e.unsubscribe(),e=g.hoverCustomRanges$.pipe((0,s.debounceTime)(200)).subscribe(e=>{var n;let i=e.find(e=>e.range.rangeType===t.CustomRangeType.HYPERLINK);if(!i){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}let a=i.rects[i.rects.length-1];if(!((n=this._renderManagerService.getRenderUnitById(c))!=null&&(n=n.with(r.SheetSkeletonManagerService).getSkeletonParam(l))!=null&&n.skeleton)||!a)return;let o=f.engine.getCanvasElement().getBoundingClientRect();this._sheetsHyperLinkPopupService.showPopup({unitId:c,subUnitId:l,row:u,col:d,customRange:i.range,customRangeRect:{left:a.left+o.left,top:a.top+o.top,bottom:a.bottom+o.top,right:a.right+o.left},editPermission:p,copyPermission:h,type:`editing`})}))})),this.disposeWithMe(()=>{e==null||e.unsubscribe()})}_initTextSelectionListener(){this.disposeWithMe(this._textSelectionManagerService.textSelection$.subscribe(e=>{e&&e.unitId===t.DOCS_NORMAL_EDITOR_UNIT_ID_KEY&&this._sheetsHyperLinkPopupService.endEditing(`editing`)}))}_initCommandListener(){let e=[n.ClearSelectionContentCommand.id,n.ClearSelectionAllCommand.id,n.ClearSelectionFormatCommand.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{e.includes(t.id)&&this._sheetsHyperLinkPopupService.hideCurrentPopup()}))}};Ee=C([S(0,(0,t.Inject)(r.HoverManagerService)),S(1,(0,t.Inject)(U)),S(2,(0,t.Inject)(o.IRenderManagerService)),S(3,(0,t.Inject)(t.IPermissionService)),S(4,(0,t.Inject)(n.SheetPermissionCheckController)),S(5,t.ICommandService),S(6,r.IEditorBridgeService),S(7,(0,t.Inject)(i.DocSelectionManagerService)),S(8,t.IUniverInstanceService)],Ee);let De=class extends t.Disposable{constructor(e,t){super(),this._context=e,this._hyperLinkModel=t,this._initSkeletonChange()}_initSkeletonChange(){let e=()=>{var e;(e=this._context.mainComponent)==null||e.makeForceDirty()};this.disposeWithMe(this._hyperLinkModel.linkUpdate$.pipe((0,s.debounceTime)(16)).subscribe(()=>{e()}))}};De=C([S(1,(0,t.Inject)(d.HyperLinkModel))],De);let Oe=class extends t.Disposable{constructor(e,t,n){super(),this._commandService=e,this._menuManagerService=t,this._shortcutService=n,this._initCommands(),this._initMenus(),this._initShortCut()}_initCommands(){[q,J,Y,X].forEach(e=>{this._commandService.registerCommand(e)})}_initMenus(){this._menuManagerService.mergeMenu(be)}_initShortCut(){this._shortcutService.registerShortcut(ye)}};Oe=C([S(0,t.ICommandService),S(1,f.IMenuManagerService),S(2,(0,t.Inject)(f.IShortcutService))],Oe);let ke=class extends t.Disposable{constructor(e,t){super(),this._parserService=e,this._resolverService=t,this._handleInitUrl()}_handleInitUrl(){let e=location.hash;if(e){let t=this._parserService.parseHyperLink(e);this._resolverService.navigate(t)}}};ke=C([S(0,(0,t.Inject)(d.SheetsHyperLinkParserService)),S(1,(0,t.Inject)(T))],ke);let $=class extends t.Plugin{constructor(e=x,n,r){super(),this._config=e,this._injector=n,this._configService=r;let{menu:i,...a}=(0,t.merge)({},x,this._config);i&&this._configService.setConfig(`menu`,i,{merge:!0}),this._configService.setConfig(b,a)}onStarting(){this._injector.add([we]),this._injector.get(we),[[T],[U],[ee],[Ee],[Oe],[Ce],[Q],[Te],[ke]].forEach(e=>this._injector.add(e))}onReady(){this._injector.get(o.IRenderManagerService).registerRenderModule(t.UniverInstanceType.UNIVER_SHEET,[De]),this._injector.get(Ce),this._injector.get(Q),this._injector.get(Oe)}onRendered(){this._injector.get(Te),this._injector.get(ke),this._injector.get(Ee)}};k($,`pluginName`,Z),k($,`packageName`,xe),k($,`version`,Se),k($,`type`,t.UniverInstanceType.UNIVER_SHEET),$=C([(0,t.DependentOn)(i.UniverDocsPlugin,l.UniverFormulaEnginePlugin,o.UniverRenderEnginePlugin,n.UniverSheetsPlugin,a.UniverDocsUIPlugin,d.UniverSheetsHyperLinkPlugin,r.UniverSheetsUIPlugin),S(1,(0,t.Inject)(t.Injector)),S(2,t.IConfigService)],$),e.CloseHyperLinkPopupOperation=J,e.InsertHyperLinkOperation=Y,e.InsertLinkShortcut=ye,e.OpenHyperLinkEditPanelOperation=q,Object.defineProperty(e,"SheetsHyperLinkCopyPasteController",{enumerable:!0,get:function(){return Q}}),Object.defineProperty(e,"SheetsHyperLinkPopupService",{enumerable:!0,get:function(){return U}}),Object.defineProperty(e,"SheetsHyperLinkResolverService",{enumerable:!0,get:function(){return T}}),e.SheetsHyperLinkSidePanelService=ee,e.SheetsHyperLinkUIMenuSchema=be,Object.defineProperty(e,"UniverSheetsHyperLinkUIPlugin",{enumerable:!0,get:function(){return $}})});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@univerjs/sheets-hyper-link-ui",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.2",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Hyperlink editing UI for Univer Sheets.",
|
|
6
6
|
"author": "DreamNum Co., Ltd. <developer@univer.ai>",
|
|
@@ -68,19 +68,19 @@
|
|
|
68
68
|
"rxjs": ">=7.0.0"
|
|
69
69
|
},
|
|
70
70
|
"dependencies": {
|
|
71
|
-
"@univerjs/icons": "1.
|
|
72
|
-
"@univerjs/core": "1.0.0-beta.
|
|
73
|
-
"@univerjs/
|
|
74
|
-
"@univerjs/
|
|
75
|
-
"@univerjs/docs": "1.0.0-beta.
|
|
76
|
-
"@univerjs/engine-
|
|
77
|
-
"@univerjs/
|
|
78
|
-
"@univerjs/sheets": "1.0.0-beta.
|
|
79
|
-
"@univerjs/sheets-data-validation": "1.0.0-beta.
|
|
80
|
-
"@univerjs/
|
|
81
|
-
"@univerjs/sheets-hyper-link": "1.0.0-beta.
|
|
82
|
-
"@univerjs/sheets-ui": "1.0.0-beta.
|
|
83
|
-
"@univerjs/ui": "1.0.0-beta.
|
|
71
|
+
"@univerjs/icons": "1.38.0",
|
|
72
|
+
"@univerjs/core": "1.0.0-beta.2",
|
|
73
|
+
"@univerjs/docs": "1.0.0-beta.2",
|
|
74
|
+
"@univerjs/engine-formula": "1.0.0-beta.2",
|
|
75
|
+
"@univerjs/docs-ui": "1.0.0-beta.2",
|
|
76
|
+
"@univerjs/engine-render": "1.0.0-beta.2",
|
|
77
|
+
"@univerjs/sheets": "1.0.0-beta.2",
|
|
78
|
+
"@univerjs/sheets-formula-ui": "1.0.0-beta.2",
|
|
79
|
+
"@univerjs/sheets-data-validation": "1.0.0-beta.2",
|
|
80
|
+
"@univerjs/design": "1.0.0-beta.2",
|
|
81
|
+
"@univerjs/sheets-hyper-link": "1.0.0-beta.2",
|
|
82
|
+
"@univerjs/sheets-ui": "1.0.0-beta.2",
|
|
83
|
+
"@univerjs/ui": "1.0.0-beta.2"
|
|
84
84
|
},
|
|
85
85
|
"devDependencies": {
|
|
86
86
|
"postcss": "^8.5.25",
|
|
@@ -89,7 +89,7 @@
|
|
|
89
89
|
"tailwindcss": "3.4.18",
|
|
90
90
|
"typescript": "^6.0.3",
|
|
91
91
|
"vitest": "^4.1.10",
|
|
92
|
-
"@univerjs-infra/shared": "1.0.0-beta.
|
|
92
|
+
"@univerjs-infra/shared": "1.0.0-beta.2"
|
|
93
93
|
},
|
|
94
94
|
"scripts": {
|
|
95
95
|
"test": "vitest run",
|