@univerjs/sheets-hyper-link-ui 0.2.10 → 0.2.12
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 +2 -2
- package/lib/es/index.js +53 -50
- package/lib/types/{types/interfaces/i-config.d.ts → controllers/config.schema.d.ts} +3 -0
- package/lib/types/controllers/menu.d.ts +1 -3
- package/lib/types/controllers/menu.schema.d.ts +2 -0
- package/lib/types/controllers/ui.controller.d.ts +4 -7
- package/lib/types/index.d.ts +0 -1
- package/lib/types/plugin.d.ts +5 -4
- package/lib/types/services/resolver.service.d.ts +3 -4
- package/lib/umd/index.js +2 -2
- package/package.json +19 -21
package/lib/cjs/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const core=require("@univerjs/core"),sheetsHyperLink=require("@univerjs/sheets-hyper-link"),sheetsUi=require("@univerjs/sheets-ui"),rxjs=require("rxjs"),require$$0=require("react"),cs=require("clsx"),design=require("@univerjs/design"),ui=require("@univerjs/ui"),engineFormula=require("@univerjs/engine-formula"),sheets=require("@univerjs/sheets"),engineRender=require("@univerjs/engine-render"),
|
|
1
|
+
"use strict";var __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const core=require("@univerjs/core"),sheetsHyperLink=require("@univerjs/sheets-hyper-link"),sheetsUi=require("@univerjs/sheets-ui"),rxjs=require("rxjs"),require$$0=require("react"),cs=require("clsx"),design=require("@univerjs/design"),ui=require("@univerjs/ui"),engineFormula=require("@univerjs/engine-formula"),sheets=require("@univerjs/sheets"),engineRender=require("@univerjs/engine-render"),docs=require("@univerjs/docs");var LinkType=(LinkType2=>(LinkType2.link="link",LinkType2.range="range",LinkType2.sheet="gid",LinkType2.definedName="rangeid",LinkType2))(LinkType||{});const _SheetsHyperLinkSidePanelService=class _SheetsHyperLinkSidePanelService extends core.Disposable{constructor(){super(...arguments);__publicField(this,"_customHyperLinks",new Map)}isBuiltInLinkType(type){return!!LinkType[type]}getOptions(){return Array.from(this._customHyperLinks.values()).map(({option})=>option)}findCustomHyperLink(link){return Array.from(this._customHyperLinks.values()).find(item=>item.match(link))}registerCustomHyperLink(customHyperLink){this._customHyperLinks.set(customHyperLink.type,customHyperLink)}getCustomHyperLink(type){return this._customHyperLinks.get(type)}removeCustomHyperLink(type){const{_customHyperLinks}=this;_customHyperLinks.delete(type)}dispose(){super.dispose(),this._customHyperLinks.clear()}};__name(_SheetsHyperLinkSidePanelService,"SheetsHyperLinkSidePanelService");let SheetsHyperLinkSidePanelService=_SheetsHyperLinkSidePanelService;var jsxRuntime={exports:{}},reactJsxRuntime_production_min={};/**
|
|
2
2
|
* @license React
|
|
3
3
|
* react-jsx-runtime.production.min.js
|
|
4
4
|
*
|
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
*
|
|
7
7
|
* This source code is licensed under the MIT license found in the
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
|
-
*/var f=require$$0,k=Symbol.for("react.element"),l=Symbol.for("react.fragment"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};function q(c,a,g){var b,d={},e=null,h=null;g!==void 0&&(e=""+g),a.key!==void 0&&(e=""+a.key),a.ref!==void 0&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)d[b]===void 0&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}__name(q,"q");reactJsxRuntime_production_min.Fragment=l;reactJsxRuntime_production_min.jsx=q;reactJsxRuntime_production_min.jsxs=q;jsxRuntime.exports=reactJsxRuntime_production_min;var jsxRuntimeExports=jsxRuntime.exports,__assign=function(){return __assign=Object.assign||function(t){for(var s,i=1,n2=arguments.length;i<n2;i++){s=arguments[i];for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&(t[p2]=s[p2])}return t},__assign.apply(this,arguments)},__rest=function(s,e){var t={};for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&e.indexOf(p2)<0&&(t[p2]=s[p2]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p2=Object.getOwnPropertySymbols(s);i<p2.length;i++)e.indexOf(p2[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p2[i])&&(t[p2[i]]=s[p2[i]]);return t},IconBase=require$$0.forwardRef(function(props,ref){var icon=props.icon,id=props.id,className=props.className,extend=props.extend,restProps=__rest(props,["icon","id","className","extend"]),cls="univerjs-icon univerjs-icon-".concat(id," ").concat(className||"").trim(),idSuffix=require$$0.useRef("_".concat(generateShortUuid()));return render(icon,"".concat(id),{defIds:icon.defIds,idSuffix:idSuffix.current},__assign({ref,className:cls},restProps),extend)});function render(node,id,runtimeProps,rootProps,extend){return require$$0.createElement(node.tag,__assign(__assign({key:id},replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend)),rootProps),(replaceRuntimeIdsInDefs(node,runtimeProps).children||[]).map(function(child,index){return render(child,"".concat(id,"-").concat(node.tag,"-").concat(index),runtimeProps,void 0,extend)}))}__name(render,"render");function replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend){var attrs=__assign({},node.attrs);extend!=null&&extend.colorChannel1&&attrs.fill==="colorChannel1"&&(attrs.fill=extend.colorChannel1);var defIds=runtimeProps.defIds;return!defIds||defIds.length===0||(node.tag==="use"&&attrs["xlink:href"]&&(attrs["xlink:href"]=attrs["xlink:href"]+runtimeProps.idSuffix),Object.entries(attrs).forEach(function(_a14){var key=_a14[0],value=_a14[1];typeof value=="string"&&(attrs[key]=value.replace(/url\(#(.*)\)/,"url(#$1".concat(runtimeProps.idSuffix,")")))})),attrs}__name(replaceRuntimeIdsAndExtInAttrs,"replaceRuntimeIdsAndExtInAttrs");function replaceRuntimeIdsInDefs(node,runtimeProps){var _a14,defIds=runtimeProps.defIds;return!defIds||defIds.length===0?node:node.tag==="defs"&&(!((_a14=node.children)===null||_a14===void 0)&&_a14.length)?__assign(__assign({},node),{children:node.children.map(function(child){return typeof child.attrs.id=="string"&&defIds&&defIds.indexOf(child.attrs.id)>-1?__assign(__assign({},child),{attrs:__assign(__assign({},child.attrs),{id:child.attrs.id+runtimeProps.idSuffix})}):child})}):node}__name(replaceRuntimeIdsInDefs,"replaceRuntimeIdsInDefs");function generateShortUuid(){return Math.random().toString(36).substring(2,8)}__name(generateShortUuid,"generateShortUuid");IconBase.displayName="UniverIcon";var element$5={tag:"svg",attrs:{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"}}]},AllBorderSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"all-border-single",ref,icon:element$5}))});AllBorderSingle.displayName="AllBorderSingle";var element$4={tag:"svg",attrs:{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"}}]},CopySingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"copy-single",ref,icon:element$4}))});CopySingle.displayName="CopySingle";var element$3={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.9564 2.91332C4.91407 1.87102 3.22413 1.87101 2.18182 2.91333L2.18182 2.91333C1.13953 3.95567 1.13952 5.6456 2.18182 6.68791L8.27777 12.7838C9.72408 14.2302 12.069 14.2302 13.5154 12.7839L13.0911 12.3596L13.5154 12.7839C14.9617 11.3375 14.9617 8.99257 13.5154 7.54626L8.39476 2.42566C8.16044 2.19134 7.78054 2.19134 7.54623 2.42566C7.31191 2.65997 7.31191 3.03987 7.54623 3.27419L12.6668 8.39479L13.0911 7.97052L12.6668 8.39479C13.6445 9.37247 13.6445 10.9576 12.6668 11.9353L13.0399 12.3084L12.6668 11.9353C11.6891 12.913 10.104 12.913 9.1263 11.9353L3.03035 5.83938C2.45668 5.26571 2.45667 4.33556 3.03036 3.76184C3.60403 3.18818 4.53416 3.18817 5.10788 3.76185C5.10788 3.76186 5.10788 3.76186 5.10789 3.76186L11.2038 9.8578L11.601 9.46061L11.2038 9.8578C11.3735 10.0275 11.3735 10.3026 11.2038 10.4723L11.2038 10.4723C11.0341 10.642 10.759 10.642 10.5893 10.4723L5.46874 5.35171C5.23442 5.1174 4.85452 5.1174 4.62021 5.35171C4.38589 5.58602 4.38589 5.96592 4.62021 6.20024L9.74078 11.3208C10.3791 11.9591 11.414 11.9591 12.0523 11.3208C12.0523 11.3208 12.0523 11.3208 12.0523 11.3208M12.0523 11.3208C12.6907 10.6825 12.6906 9.64757 12.0523 9.00927L5.95641 2.91333L5.9564 2.91332",fillRule:"evenodd",clipRule:"evenodd"}}]},LinkSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"link-single",ref,icon:element$3}))});LinkSingle.displayName="LinkSingle";var element$2={tag:"svg",attrs:{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.76157 6.75249 4.52725 6.75249 4.14735 6.98681 3.91304L8.27535 2.62449C9.70209 1.19776 12.0153 1.19776 13.442 2.62449 14.8688 4.05123 14.8688 6.36442 13.442 7.79116L12.1535 9.0797C11.9192 9.31402 11.5393 9.31402 11.3049 9.0797 11.0706 8.84539 11.0706 8.46549 11.3049 8.23117L12.5935 6.94263C13.5516 5.98452 13.5516 4.43113 12.5935 3.47302zM3.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.05395 4.4606 6.81963 4.0807 6.81963 3.84639 7.05395L2.55784 8.34249C1.13111 9.76923 1.13111 12.0824 2.55784 13.5092 3.98458 14.9359 6.29777 14.9359 7.72451 13.5092L9.01305 12.2206C9.24737 11.9863 9.24737 11.6064 9.01305 11.3721 8.77874 11.1378 8.39884 11.1378 8.16452 11.3721L6.87598 12.6606C5.91787 13.6187 4.36448 13.6187 3.40637 12.6606zM3.5852 2.80332C3.35088 2.569 2.97098 2.569 2.73667 2.80332 2.50235 3.03763 2.50235 3.41753 2.73667 3.65185L12.4151 13.3302C12.6494 13.5646 13.0293 13.5646 13.2636 13.3302 13.4979 13.0959 13.4979 12.716 13.2636 12.4817L3.5852 2.80332z"}}]},UnlinkSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"unlink-single",ref,icon:element$2}))});UnlinkSingle.displayName="UnlinkSingle";var element$1={tag:"svg",attrs:{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"}}]},WriteSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"write-single",ref,icon:element$1}))});WriteSingle.displayName="WriteSingle";var element={tag:"svg",attrs:{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:"#fff",d:"M7.8088 10.2949L6.3764 12.403C6.26259 12.5705 6.03455 12.614 5.86705 12.5002C5.69955 12.3864 5.65603 12.1584 5.76984 11.9909L7.3655 9.64252L5.94042 7.54519C5.82661 7.37769 5.87013 7.14964 6.03763 7.03583C6.20512 6.92202 6.43317 6.96555 6.54698 7.13304L7.8088 8.9901L9.07062 7.13304C9.18443 6.96555 9.41248 6.92202 9.57997 7.03583C9.74747 7.14964 9.79099 7.37769 9.67718 7.54519L8.2521 9.64252L9.84776 11.9909C9.96157 12.1584 9.91805 12.3864 9.75055 12.5002C9.58305 12.614 9.35501 12.5705 9.2412 12.403L7.8088 10.2949Z",fillRule:"evenodd",clipRule:"evenodd"}}]},Xlsx=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"xlsx",ref,icon:element}))});Xlsx.displayName="Xlsx";var __defProp$b=Object.defineProperty,__getOwnPropDesc$b=Object.getOwnPropertyDescriptor,__decorateClass$b=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$b(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$b(target,key,result),result},"__decorateClass$b"),__decorateParam$b=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$b");function getContainRange(range,worksheet){const mergedCells=worksheet.getMergeData(),maxCol=worksheet.getMaxColumns()-1,maxRow=worksheet.getMaxRows()-1;if(maxCol<range.endColumn&&(range.endColumn=maxCol),maxRow<range.endRow&&(range.endRow=maxRow),range.rangeType===core.RANGE_TYPE.COLUMN||core.RANGE_TYPE.ROW)return range;const relativeCells=[];return mergedCells.forEach(cell=>{core.Rectangle.intersects(range,cell)&&relativeCells.push(cell)}),core.Rectangle.realUnion(range,...relativeCells)}__name(getContainRange,"getContainRange");var _a;exports.SheetsHyperLinkResolverService=(_a=class{constructor(_urlHandler,_univerInstanceService,_commandService,_definedNamesService,_messageService,_localeService){this._urlHandler=_urlHandler,this._univerInstanceService=_univerInstanceService,this._commandService=_commandService,this._definedNamesService=_definedNamesService,this._messageService=_messageService,this._localeService=_localeService}_getURLName(params){var _a14;const{gid,range,rangeid}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return null;const sheet=gid?workbook.getSheetBySheetId(gid):workbook.getActiveSheet(),sheetName=(_a14=sheet==null?void 0:sheet.getName())!=null?_a14:"";if(range){const rangeObj=engineFormula.deserializeRangeWithSheet(range).range;return core.isValidRange(rangeObj)&&range!==sheetsHyperLink.ERROR_RANGE?{type:"range",name:engineFormula.serializeRangeWithSheet(sheetName,rangeObj)}:{type:"range-error",name:this._localeService.t("hyperLink.message.refError")}}if(rangeid){const range2=this._definedNamesService.getValueById(workbook.getUnitId(),rangeid);return range2?{type:"defineName",name:range2.formulaOrRefString}:{type:"range-error",name:this._localeService.t("hyperLink.message.refError")}}if(gid){const worksheet=workbook.getSheetBySheetId(gid);return worksheet?{type:"sheet",name:worksheet.getName()}:{type:"sheet-error",name:this._localeService.t("hyperLink.message.refError")}}return null}navigateTo(params){const{gid,range,rangeid}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const unitId=workbook.getUnitId();if(rangeid&&this.navigateToDefineName(unitId,rangeid),!!gid){if(range){const rangeInfo=engineFormula.deserializeRangeWithSheet(range);core.isValidRange(rangeInfo.range)&&range!==sheetsHyperLink.ERROR_RANGE&&this.navigateToRange(unitId,gid,rangeInfo.range);return}this.navigateToSheetById(unitId,gid)}}parseHyperLink(urlStr){var _a14,_b,_c;if(urlStr!=null&&urlStr.startsWith("#")){const search=new URLSearchParams(urlStr.slice(1)),searchObj={gid:(_a14=search.get("gid"))!=null?_a14:"",range:(_b=search.get("range"))!=null?_b:"",rangeid:(_c=search.get("rangeid"))!=null?_c:""},urlInfo=this._getURLName(searchObj);return{type:(urlInfo==null?void 0:urlInfo.type)||"link",name:(urlInfo==null?void 0:urlInfo.name)||urlStr,url:urlStr,searchObj,handler:__name(()=>{this.navigateTo(searchObj)},"handler")}}else return{type:"outer",name:urlStr,url:urlStr,handler:__name(()=>{this.navigateToOtherWebsite(urlStr)},"handler")}}async navigateToRange(unitId,subUnitId,range){const worksheet=await this.navigateToSheetById(unitId,subUnitId);if(worksheet){const realRange=getContainRange(range,worksheet);await this._commandService.executeCommand(sheets.SetSelectionsOperation.id,{unitId,subUnitId,selections:[{range:realRange}]}),await this._commandService.executeCommand(sheetsUi.ScrollToRangeOperation.id,{range:realRange})}}async navigateToSheet(unitId,sheetName){const workbook=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return!1;const worksheet=workbook.getActiveSheet();if((worksheet==null?void 0:worksheet.getName())===sheetName)return!0;const targetSheet=workbook.getSheetBySheetName(sheetName);if(!targetSheet){this._messageService.show({content:this._localeService.t("hyperLink.message.noSheet"),type:design.MessageType.Error});return}const sheetId=targetSheet.getSheetId();return workbook.getHiddenWorksheets().indexOf(sheetId)>-1&&this._messageService.show({content:this._localeService.t("hyperLink.message.hiddenSheet"),type:design.MessageType.Error}),await this._commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId,subUnitId:sheetId})}async navigateToSheetById(unitId,subUnitId){const workbook=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return!1;const worksheet=workbook.getActiveSheet();if(!worksheet)return!1;if(worksheet.getSheetId()===subUnitId)return worksheet;const targetSheet=workbook.getSheetBySheetId(subUnitId);return targetSheet?workbook.getHiddenWorksheets().indexOf(subUnitId)>-1?(this._messageService.show({content:this._localeService.t("hyperLink.message.hiddenSheet"),type:design.MessageType.Error}),!1):await this._commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId,subUnitId})?targetSheet:!1:(this._messageService.show({content:this._localeService.t("hyperLink.message.noSheet"),type:design.MessageType.Error}),!1)}async navigateToDefineName(unitId,rangeid){return this._definedNamesService.focusRange(unitId,rangeid),!0}async navigateToOtherWebsite(url){var _a14;if((_a14=this._urlHandler)!=null&&_a14.navigateToOtherWebsite)return this._urlHandler.navigateToOtherWebsite(url);window.open(url,"_blank","noopener noreferrer")}},__name(_a,"SheetsHyperLinkResolverService"),_a);exports.SheetsHyperLinkResolverService=__decorateClass$b([__decorateParam$b(1,core.IUniverInstanceService),__decorateParam$b(2,core.ICommandService),__decorateParam$b(3,engineFormula.IDefinedNamesService),__decorateParam$b(4,ui.IMessageService),__decorateParam$b(5,core.Inject(core.LocaleService))],exports.SheetsHyperLinkResolverService);function isLegalLink(link){return core.Tools.isLegalUrl(link)}__name(isLegalLink,"isLegalLink");function hasProtocol(urlString){return/^[a-zA-Z]+:\/\//.test(urlString)}__name(hasProtocol,"hasProtocol");function isEmail(url){return/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/.test(url)}__name(isEmail,"isEmail");function serializeUrl(urlStr){if(isLegalLink(urlStr)){const transformedUrl=hasProtocol(urlStr)?urlStr:isEmail(urlStr)?`mailto://${urlStr}`:`http://${urlStr}`;let url;try{url=new URL(transformedUrl)}catch{return urlStr}return url.hostname===location.hostname&&url.port===location.port&&url.protocol===location.protocol&&url.pathname===location.pathname&&url.hash&&!url.search?url.hash:transformedUrl}return urlStr}__name(serializeUrl,"serializeUrl");function getCellValueOrigin(cell){if(cell===null)return"";if(cell!=null&&cell.p){const body=cell==null?void 0:cell.p.body;if(body==null)return"";const data=body.dataStream;return data.substring(data.length-2,data.length)===core.DEFAULT_EMPTY_DOCUMENT_VALUE?data.substring(0,data.length-2):data}return cell==null?void 0:cell.v}__name(getCellValueOrigin,"getCellValueOrigin");const AddHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.add-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),{unitId,subUnitId,link}=params,{redos,undos}=sheetInterceptorService.onCommandExecute({id:AddHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.AddHyperLinkMutation.id,params},undo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}};function getHyperLinkContent(link){const{row,column,id,...content}=link;return content}__name(getHyperLinkContent,"getHyperLinkContent");const UpdateHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.update-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id);if(!link)return!1;const{redos,undos}=sheetInterceptorService.onCommandExecute({id:UpdateHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.UpdateHyperLinkMutation.id,params},undo={id:sheetsHyperLink.UpdateHyperLinkMutation.id,params:{unitId,subUnitId,id,payload:getHyperLinkContent(link)}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}},cellLinkEditButtons="univer-cell-link-edit-buttons",styles$1={cellLinkEditButtons},CellLinkEdit=__name(()=>{var _a14;const[id,setId]=require$$0.useState(""),[display,setDisplay]=require$$0.useState(""),[type,setType]=require$$0.useState(LinkType.link),[payload,setPayload]=require$$0.useState(""),localeService=core.useDependency(core.LocaleService),definedNameService=core.useDependency(engineFormula.IDefinedNamesService),univerInstanceService=core.useDependency(core.IUniverInstanceService),popupService=core.useDependency(exports.SheetsHyperLinkPopupService),editing=ui.useObservable(popupService.currentEditing$),hyperLinkModel=core.useDependency(sheetsHyperLink.HyperLinkModel),resolverService=core.useDependency(exports.SheetsHyperLinkResolverService),commandService=core.useDependency(core.ICommandService),sidePanelService=core.useDependency(SheetsHyperLinkSidePanelService),sidePanelOptions=require$$0.useMemo(()=>sidePanelService.getOptions(),[sidePanelService]),customHyperLinkSidePanel=require$$0.useMemo(()=>{if(!sidePanelService.isBuiltInLinkType(type))return sidePanelService.getCustomHyperLink(type)},[sidePanelService,type]),[showError,setShowError]=require$$0.useState(!1),setByPayload=require$$0.useRef(!1);require$$0.useEffect(()=>{var _a15,_b,_c;if((editing==null?void 0:editing.row)!==void 0&&editing.column!==void 0){const link=hyperLinkModel.getHyperLinkByLocationSync(editing.unitId,editing.subUnitId,editing.row,editing.column);if(link){setId(link.id);const customLink=sidePanelService.findCustomHyperLink(link);if(customLink){const customLinkInfo=customLink.convert(link);setType(customLinkInfo.type),setPayload(customLinkInfo.payload),setDisplay(customLinkInfo.display);return}setDisplay(link.display);const linkInfo=resolverService.parseHyperLink(link.payload);if(linkInfo.type==="outer"){setType(LinkType.link),setPayload(linkInfo.url),linkInfo.url===link.display&&(setByPayload.current=!0);return}else{const params=linkInfo.searchObj;if(params.rangeid){setType(LinkType.definedName),setPayload(params.rangeid);return}if(params.range){const sheetName=params.gid&&(_c=(_b=(_a15=univerInstanceService.getUnit(editing.unitId))==null?void 0:_a15.getSheetBySheetId(params.gid))==null?void 0:_b.getName())!=null?_c:"";if(setType(LinkType.range),params.range===sheetsHyperLink.ERROR_RANGE)setPayload("");else{const payload2=engineFormula.serializeRangeWithSheet(sheetName,engineFormula.deserializeRangeWithSheet(params.range).range);setPayload(payload2),payload2===link.display&&(setByPayload.current=!0)}return}if(params.gid){setType(LinkType.sheet),setPayload(params.gid);return}}}const workbook2=univerInstanceService.getUnit(editing.unitId),worksheet=workbook2==null?void 0:workbook2.getSheetBySheetId(editing.subUnitId),cell=worksheet==null?void 0:worksheet.getCellRaw(editing.row,editing.column),cellValue=getCellValueOrigin(cell);setType(LinkType.link),setPayload(""),setDisplay((cellValue!=null?cellValue:"").toString()),setId("");return}setType(LinkType.link),setPayload(""),setDisplay(""),setId("")},[editing,hyperLinkModel,resolverService,univerInstanceService]);const payloadInitial=require$$0.useMemo(()=>payload,[type]),linkTypeOptions=[{label:localeService.t("hyperLink.form.link"),value:LinkType.link},{label:localeService.t("hyperLink.form.range"),value:LinkType.range},{label:localeService.t("hyperLink.form.worksheet"),value:LinkType.sheet},{label:localeService.t("hyperLink.form.definedName"),value:LinkType.definedName},...sidePanelOptions],workbook=univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const hiddens=workbook.getHiddenWorksheets(),sheetsOption=workbook.getSheets().map(sheet=>({label:sheet.getName(),value:sheet.getSheetId()})).filter(opt=>hiddens.indexOf(opt.value)===-1),definedNames=Object.values((_a14=definedNameService.getDefinedNameMap(workbook.getUnitId()))!=null?_a14:{}).map(value=>({label:value.name,value:value.id})),formatUrl=__name((type2,payload2)=>{if(type2===LinkType.link)return serializeUrl(payload2);if(type2===LinkType.range){const info=engineFormula.deserializeRangeWithSheet(payload2),worksheet=workbook.getSheetBySheetName(info.sheetName);if(worksheet)return`#gid=${worksheet.getSheetId()}&range=${engineFormula.serializeRange(info.range)}`}return`#${type2}=${payload2}`},"formatUrl"),handleRangeChange=ui.useEvent(newValue=>{var _a15;const range=newValue[0];if(!range||!core.isValidRange(range.range))return;range.sheetName||(range.sheetName=((_a15=workbook.getActiveSheet())==null?void 0:_a15.getName())||"");const newPayload=engineFormula.serializeRangeToRefString(range);setPayload(newPayload),newPayload&&(setByPayload.current||!display)&&(setDisplay(newPayload),setByPayload.current=!0)}),handleSubmit=__name(async()=>{if(editing&&(id?await commandService.executeCommand(UpdateHyperLinkCommand.id,{unitId:editing.unitId,subUnitId:editing.subUnitId,id,payload:{display,payload:formatUrl(type,payload)}}):await commandService.executeCommand(AddHyperLinkCommand.id,{unitId:editing.unitId,subUnitId:editing.subUnitId,link:{id:core.Tools.generateRandomId(),row:editing.row,column:editing.column,payload:formatUrl(type,payload),display}})),editing){await commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId:editing.unitId,subUnitId:editing.subUnitId});const GAP=1;await commandService.executeCommand(sheetsUi.ScrollToRangeOperation.id,{range:{startRow:Math.max(editing.row-GAP,0),endRow:editing.row+GAP,startColumn:Math.max(editing.column-GAP,0),endColumn:editing.column+GAP}})}commandService.executeCommand(CloseHyperLinkSidebarOperation.id)},"handleSubmit");return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("hyperLink.form.label"),error:showError&&!display?localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(design.Input,{value:display,onChange:__name(v=>{setDisplay(v),setByPayload.current=!1},"onChange"),placeholder:localeService.t("hyperLink.form.labelPlaceholder")})}),jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("hyperLink.form.type"),children:jsxRuntimeExports.jsx(design.Select,{options:linkTypeOptions,value:type,onChange:__name(newType=>{setType(newType),setPayload("")},"onChange")})}),type===LinkType.link&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError?payload?isLegalLink(payload)?"":localeService.t("hyperLink.form.linkError"):localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(design.Input,{value:payload,onChange:__name(newLink=>{setPayload(newLink),newLink&&(setByPayload.current||!display||display===payload)&&(setDisplay(newLink),setByPayload.current=!0)},"onChange"),placeholder:localeService.t("hyperLink.form.linkPlaceholder")})}),type===LinkType.range&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(ui.RangeSelector,{openForSheetUnitId:workbook.getUnitId(),id:core.createInternalEditorID("hyper-link-edit"),isSingleChoice:!0,value:payloadInitial,onChange:handleRangeChange})}),type===LinkType.sheet&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.selectError"):"",children:jsxRuntimeExports.jsx(design.Select,{options:sheetsOption,value:payload,onChange:__name(newPayload=>{var _a15,_b;setPayload(newPayload);const label=(_a15=sheetsOption.find(i=>i.value===newPayload))==null?void 0:_a15.label,oldLabel=(_b=sheetsOption.find(i=>i.value===payload))==null?void 0:_b.label;label&&(setByPayload.current||!display||display===oldLabel)&&(setDisplay(label),setByPayload.current=!0)},"onChange")})}),type===LinkType.definedName&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.selectError"):"",children:jsxRuntimeExports.jsx(design.Select,{options:definedNames,value:payload,onChange:__name(newValue=>{var _a15,_b;setPayload(newValue);const label=(_a15=definedNames.find(i=>i.value===newValue))==null?void 0:_a15.label,oldLabel=(_b=definedNames.find(i=>i.value===payload))==null?void 0:_b.label;label&&(setByPayload.current||!display||display===oldLabel)&&(setDisplay(label),setByPayload.current=!0)},"onChange")})}),(customHyperLinkSidePanel==null?void 0:customHyperLinkSidePanel.Form)&&jsxRuntimeExports.jsx(customHyperLinkSidePanel.Form,{linkId:id,payload,display,showError,setByPayload,setDisplay:__name(newLink=>{setDisplay(newLink),setByPayload.current=!0},"setDisplay"),setPayload}),jsxRuntimeExports.jsxs("div",{className:styles$1.cellLinkEditButtons,children:[jsxRuntimeExports.jsx(design.Button,{onClick:__name(()=>{editing&&commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId:editing.unitId,subUnitId:editing.subUnitId}),commandService.executeCommand(CloseHyperLinkSidebarOperation.id)},"onClick"),children:localeService.t("hyperLink.form.cancel")}),jsxRuntimeExports.jsx(design.Button,{type:"primary",style:{marginLeft:8},onClick:__name(async()=>{if(!display||!payload||type===LinkType.link&&!isLegalLink(payload)){setShowError(!0);return}handleSubmit()},"onClick"),children:localeService.t("hyperLink.form.ok")})]})]})},"CellLinkEdit");CellLinkEdit.componentKey="univer.sheet.cell-link-edit";const OpenHyperLinkSidebarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.open-hyper-link-sidebar",handler(accessor,params){if(!params)return!1;const{unitId,subUnitId,row,column}=params,hyperLinkModel=accessor.get(sheetsHyperLink.HyperLinkModel),sidebarService=accessor.get(ui.ISidebarService),popupService=accessor.get(exports.SheetsHyperLinkPopupService),currentLink=hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,column);return popupService.startEditing(params),sidebarService.open({header:{title:currentLink?"hyperLink.form.editTitle":"hyperLink.form.addTitle"},children:{label:CellLinkEdit.componentKey}}),!0}},CloseHyperLinkSidebarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.close-hyper-link-sidebar",handler(accessor){const sidebarService=accessor.get(ui.ISidebarService),popupService=accessor.get(exports.SheetsHyperLinkPopupService);return sidebarService.close(),popupService.endEditing(),!0}},InsertHyperLinkOperation={type:core.CommandType.OPERATION,id:"sheet.operation.insert-hyper-link",handler(accessor){const univerInstanceService=accessor.get(core.IUniverInstanceService),target=sheets.getSheetCommandTarget(univerInstanceService);if(!target)return!1;const commandService=accessor.get(core.ICommandService),selection=accessor.get(sheets.SheetsSelectionsService).getCurrentLastSelection();if(!selection)return!1;const row=selection.primary.startRow,column=selection.primary.startColumn;return commandService.executeCommand(OpenHyperLinkSidebarOperation.id,{unitId:target.unitId,subUnitId:target.subUnitId,row,column})}},InsertHyperLinkToolbarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.insert-hyper-link-toolbar",handler(accessor){const commandService=accessor.get(core.ICommandService);return accessor.get(exports.SheetsHyperLinkPopupService).currentEditing?commandService.executeCommand(CloseHyperLinkSidebarOperation.id):commandService.executeCommand(InsertHyperLinkOperation.id)}},RemoveHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.remove-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id),{redos,undos}=sheetInterceptorService.onCommandExecute({id:RemoveHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params},undo={id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}},CancelHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.cancel-hyper-link",async handler(accessor,params){if(!params)return!1;const commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id),redo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params},undo={id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}};return(await core.sequenceExecuteAsync([redo],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo],undoMutations:[undo],unitID:unitId}),!0):!1}},cellLink="univer-cell-link",cellLinkType="univer-cell-link-type",cellLinkContent="univer-cell-link-content",cellLinkContentError="univer-cell-link-content-error",cellLinkUrl="univer-cell-link-url",cellLinkOperations="univer-cell-link-operations",cellLinkOperation="univer-cell-link-operation",cellLinkOperationError="univer-cell-link-operation-error",styles={cellLink,cellLinkType,cellLinkContent,cellLinkContentError,cellLinkUrl,cellLinkOperations,cellLinkOperation,cellLinkOperationError},iconsMap={outer:jsxRuntimeExports.jsx(LinkSingle,{}),link:jsxRuntimeExports.jsx(LinkSingle,{}),sheet:jsxRuntimeExports.jsx(Xlsx,{}),range:jsxRuntimeExports.jsx(AllBorderSingle,{}),defineName:jsxRuntimeExports.jsx(AllBorderSingle,{}),"range-error":jsxRuntimeExports.jsx(AllBorderSingle,{}),"sheet-error":jsxRuntimeExports.jsx(Xlsx,{})},CellLinkPopup=__name(()=>{const popupService=core.useDependency(exports.SheetsHyperLinkPopupService),hyperLinkModel=core.useDependency(sheetsHyperLink.HyperLinkModel),commandService=core.useDependency(core.ICommandService),messageService=core.useDependency(ui.IMessageService),localeService=core.useDependency(core.LocaleService),[currentPopup,setCurrentPopup]=require$$0.useState(null),resolverService=core.useDependency(exports.SheetsHyperLinkResolverService);if(require$$0.useEffect(()=>{setCurrentPopup(popupService.currentPopup);const ob=popupService.currentPopup$.subscribe(popup=>{setCurrentPopup(popup)});return()=>{ob.unsubscribe()}},[popupService.currentPopup,popupService.currentPopup$]),!currentPopup)return null;const{unitId,subUnitId,id}=currentPopup,link=hyperLinkModel.getHyperLink(unitId,subUnitId,id);if(!link)return null;const linkObj=resolverService.parseHyperLink(link.payload),isError=linkObj.type.indexOf("error")>-1;return jsxRuntimeExports.jsxs("div",{className:styles.cellLink,onClick:__name(()=>popupService.hideCurrentPopup(),"onClick"),children:[jsxRuntimeExports.jsxs("div",{className:cs(styles.cellLinkContent,{[styles.cellLinkContentError]:isError}),onClick:linkObj.handler,children:[jsxRuntimeExports.jsx("div",{className:styles.cellLinkType,children:iconsMap[linkObj.type]}),jsxRuntimeExports.jsx(design.Tooltip,{showIfEllipsis:!0,title:linkObj.name,children:jsxRuntimeExports.jsx("span",{className:styles.cellLinkUrl,children:linkObj.name})})]}),jsxRuntimeExports.jsxs("div",{className:styles.cellLinkOperations,children:[currentPopup.copyPermission&&jsxRuntimeExports.jsx("div",{className:cs(styles.cellLinkOperation,{[styles.cellLinkOperationError]:isError}),onClick:__name(()=>{if(!isError){if(linkObj.type!=="outer"){const url=new URL(window.location.href);url.hash=linkObj.url.slice(1),navigator.clipboard.writeText(url.href)}else navigator.clipboard.writeText(linkObj.url);messageService.show({content:localeService.t("hyperLink.message.coped"),type:design.MessageType.Info})}},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.copy"),children:jsxRuntimeExports.jsx(CopySingle,{})})}),currentPopup.editPermission&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("div",{className:styles.cellLinkOperation,onClick:__name(()=>{commandService.executeCommand(OpenHyperLinkSidebarOperation.id,{unitId,subUnitId,row:link.row,column:link.column})},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.edit"),children:jsxRuntimeExports.jsx(WriteSingle,{})})}),jsxRuntimeExports.jsx("div",{className:styles.cellLinkOperation,onClick:__name(()=>{commandService.executeCommand(CancelHyperLinkCommand.id,{unitId,subUnitId,id:link.id})},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.cancel"),children:jsxRuntimeExports.jsx(UnlinkSingle,{})})})]})]})]})},"CellLinkPopup");CellLinkPopup.componentKey="univer.sheet.cell-link-popup";var __defProp$a=Object.defineProperty,__getOwnPropDesc$a=Object.getOwnPropertyDescriptor,__decorateClass$a=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$a(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$a(target,key,result),result},"__decorateClass$a"),__decorateParam$a=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$a");const isEqualLink=__name((a,b)=>a.unitId===b.unitId&&a.subUnitId===b.subUnitId&&a.row===b.row&&a.col===b.col,"isEqualLink");var _a2;exports.SheetsHyperLinkPopupService=(_a2=class extends core.Disposable{constructor(_hyperLinkModel,_sheetCanvasPopManagerService){super();__publicField(this,"_currentPopup",null);__publicField(this,"_currentPopup$",new rxjs.Subject);__publicField(this,"currentPopup$",this._currentPopup$.asObservable());__publicField(this,"_currentEditing$",new rxjs.BehaviorSubject(null));__publicField(this,"currentEditing$",this._currentEditing$.asObservable());this._hyperLinkModel=_hyperLinkModel,this._sheetCanvasPopManagerService=_sheetCanvasPopManagerService,this.disposeWithMe(()=>{this.hideCurrentPopup(),this.endEditing(),this._currentEditing$.complete(),this._currentPopup$.complete()})}get currentPopup(){return this._currentPopup}get currentEditing(){return this._currentEditing$.getValue()}showPopup(location2){if(this._currentPopup&&isEqualLink(location2,this._currentPopup))return;this.hideCurrentPopup();const{unitId,subUnitId,row,col}=location2,link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);if(!link)return;const disposable=this._sheetCanvasPopManagerService.attachPopupToCell(row,col,{componentKey:CellLinkPopup.componentKey,direction:"bottom",closeOnSelfTarget:!0,onClickOutside:__name(()=>{this.hideCurrentPopup()},"onClickOutside")});disposable&&(this._currentPopup={unitId,subUnitId,id:link.id,disposable,row,col,editPermission:!!location2.editPermission,copyPermission:!!location2.copyPermission},this._currentPopup$.next(this._currentPopup))}hideCurrentPopup(){var _a14;this._currentPopup&&((_a14=this._currentPopup.disposable)==null||_a14.dispose(),this._currentPopup=null,this._currentPopup$.next(null))}startEditing(link){this._currentEditing$.next(link)}endEditing(){this._currentEditing$.next(null)}},__name(_a2,"SheetsHyperLinkPopupService"),_a2);exports.SheetsHyperLinkPopupService=__decorateClass$a([__decorateParam$a(0,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$a(1,core.Inject(sheetsUi.SheetCanvasPopManagerService))],exports.SheetsHyperLinkPopupService);const SHEET_HYPER_LINK_UI_PLUGIN="SHEET_HYPER_LINK_UI_PLUGIN";var __defProp$9=Object.defineProperty,__getOwnPropDesc$9=Object.getOwnPropertyDescriptor,__decorateClass$9=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$9(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$9(target,key,result),result},"__decorateClass$9"),__decorateParam$9=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$9"),_a3;exports.SheetsHyperLinkCopyPasteController=(_a3=class extends core.Disposable{constructor(_sheetClipboardService,_hyperLinkModel,_injector,_resolverService){super();__publicField(this,"_plainTextFilter",new Set);__publicField(this,"_copyInfo");this._sheetClipboardService=_sheetClipboardService,this._hyperLinkModel=_hyperLinkModel,this._injector=_injector,this._resolverService=_resolverService,this._initCopyPaste(),this.disposeWithMe(()=>{this._plainTextFilter.clear()})}registerPlainTextFilter(filter){this._plainTextFilter.add(filter)}removePlainTextFilter(filter){this._plainTextFilter.delete(filter)}_filterPlainText(text){return Array.from(this._plainTextFilter).every(filter=>filter(text))}_initCopyPaste(){this._sheetClipboardService.addClipboardHook({id:SHEET_HYPER_LINK_UI_PLUGIN,onBeforeCopy:__name((unitId,subUnitId,range)=>this._collect(unitId,subUnitId,range),"onBeforeCopy"),onPasteCells:__name((pasteFrom,pasteTo,data,payload)=>{const{copyType=sheetsUi.COPY_TYPE.COPY,pasteType}=payload,{range:copyRange}=pasteFrom||{},{range:pastedRange,unitId,subUnitId}=pasteTo;return this._generateMutations(pastedRange,{copyType,pasteType,copyRange,unitId,subUnitId})},"onPasteCells"),onPastePlainText:__name((pasteTo,clipText)=>{const filterResult=this._filterPlainText(clipText);if(isLegalLink(clipText)&&filterResult){const text=serializeUrl(clipText),{range,unitId,subUnitId}=pasteTo,{ranges:[pasteToRange],mapFunc}=sheetsUi.virtualizeDiscreteRanges([range]),redos=[],undos=[];return core.Range.foreach(pasteToRange,(originRow,originCol)=>{const{row,col:column}=mapFunc(originRow,originCol),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,column);link&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}});const newId=core.Tools.generateRandomId();redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{id:newId,row,column,payload:text}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:newId}}),link&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}})}),{redos,undos}}return{undos:[],redos:[]}},"onPastePlainText"),priority:99})}_collect(unitId,subUnitId,range){const matrix=new core.ObjectMatrix;this._copyInfo={unitId,subUnitId,matrix};const discreteRange=this._injector.invoke(accessor=>sheetsUi.rangeToDiscreteRange(range,accessor,unitId,subUnitId));if(!discreteRange)return;const{rows,cols}=discreteRange;rows.forEach((row,rowIndex)=>{cols.forEach((col,colIndex)=>{var _a14;const link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);matrix.setValue(rowIndex,colIndex,(_a14=link==null?void 0:link.id)!=null?_a14:"")})})}_generateMutations(pastedRange,copyInfo){if(!this._copyInfo)return{redos:[],undos:[]};if(!this._copyInfo||!this._copyInfo.matrix.getSizeOf()||!copyInfo.copyRange)return{redos:[],undos:[]};if([sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_COL_WIDTH,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_VALUE,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMAT,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMULA].includes(copyInfo.pasteType))return{redos:[],undos:[]};const{unitId,subUnitId}=this._copyInfo,redos=[],undos=[],{ranges:[vCopyRange,vPastedRange],mapFunc}=sheetsUi.virtualizeDiscreteRanges([copyInfo.copyRange,pastedRange]);return sheetsUi.getRepeatRange(vCopyRange,vPastedRange,!0).forEach(({startRange})=>{var _a14;(_a14=this._copyInfo)==null||_a14.matrix.forValue((row,col,ruleId)=>{const range=core.Rectangle.getPositionRange({startRow:row,endRow:row,startColumn:col,endColumn:col},startRange),oldLink=this._hyperLinkModel.getHyperLink(unitId,subUnitId,ruleId),{row:startRow,col:startColumn}=mapFunc(range.startRow,range.startColumn),currentLink=this._hyperLinkModel.getHyperLinkByLocation(copyInfo.unitId,copyInfo.subUnitId,startRow,startColumn),id=core.Tools.generateRandomId();currentLink&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,id:currentLink.id}}),oldLink&&(redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,link:{...oldLink,id,row:startRow,column:startColumn}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,id}})),currentLink&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,link:currentLink}})})}),{redos,undos}}},__name(_a3,"SheetsHyperLinkCopyPasteController"),_a3);exports.SheetsHyperLinkCopyPasteController=__decorateClass$9([core.OnLifecycle(core.LifecycleStages.Ready,exports.SheetsHyperLinkCopyPasteController),__decorateParam$9(0,sheetsUi.ISheetClipboardService),__decorateParam$9(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$9(2,core.Inject(core.Injector)),__decorateParam$9(3,core.Inject(exports.SheetsHyperLinkResolverService))],exports.SheetsHyperLinkCopyPasteController);var __defProp$8=Object.defineProperty,__getOwnPropDesc$8=Object.getOwnPropertyDescriptor,__decorateClass$8=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$8(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$8(target,key,result),result},"__decorateClass$8"),__decorateParam$8=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$8"),_a4;let SheetsHyperLinkRemoveSheetController=(_a4=class extends core.Disposable{constructor(_sheetInterceptorService,_univerInstanceService,_hyperLinkModel){super(),this._sheetInterceptorService=_sheetInterceptorService,this._univerInstanceService=_univerInstanceService,this._hyperLinkModel=_hyperLinkModel,this._initSheetChange()}_initSheetChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(commandInfo=>{var _a14;if(commandInfo.id===sheets.RemoveSheetCommand.id){const params=commandInfo.params,workbook=params.unitId?this._univerInstanceService.getUnit(params.unitId):this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return{redos:[],undos:[]};const unitId=workbook.getUnitId(),subUnitId=params.subUnitId||((_a14=workbook.getActiveSheet())==null?void 0:_a14.getSheetId());if(!subUnitId)return{redos:[],undos:[]};const links=this._hyperLinkModel.getSubUnit(unitId,subUnitId),redos=links.map(link=>({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}})),undos=links.map(link=>({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}));return{redos,undos}}return{redos:[],undos:[]}},"getMutations")}))}},__name(_a4,"SheetsHyperLinkRemoveSheetController"),_a4);SheetsHyperLinkRemoveSheetController=__decorateClass$8([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkRemoveSheetController),__decorateParam$8(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$8(1,core.IUniverInstanceService),__decorateParam$8(2,core.Inject(sheetsHyperLink.HyperLinkModel))],SheetsHyperLinkRemoveSheetController);var __defProp$7=Object.defineProperty,__getOwnPropDesc$7=Object.getOwnPropertyDescriptor,__decorateClass$7=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$7(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$7(target,key,result),result},"__decorateClass$7"),__decorateParam$7=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$7"),_a5;let SheetsHyperLinkRenderController=(_a5=class extends core.Disposable{constructor(_context,_hyperLinkModel,_sheetSkeletonManagerService,_renderManagerService){super(),this._context=_context,this._hyperLinkModel=_hyperLinkModel,this._sheetSkeletonManagerService=_sheetSkeletonManagerService,this._renderManagerService=_renderManagerService,this._initSkeletonChange()}_initSkeletonChange(){const markSkeletonDirty=__name(()=>{var _a14;const workbook=this._context.unit,unitId=workbook.getUnitId(),subUnitId=(_a14=workbook.getActiveSheet())==null?void 0:_a14.getSheetId();if(!subUnitId){console.warn("No active sheet found");return}const skeleton=this._sheetSkeletonManagerService.getOrCreateSkeleton({sheetId:subUnitId}),currentRender=this._renderManagerService.getRenderById(unitId);skeleton==null||skeleton.makeDirty(!0),skeleton==null||skeleton.calculate(),currentRender&¤tRender.mainComponent.makeForceDirty()},"markSkeletonDirty");this.disposeWithMe(this._hyperLinkModel.linkUpdate$.pipe(rxjs.debounceTime(16)).subscribe(()=>{markSkeletonDirty()}))}},__name(_a5,"SheetsHyperLinkRenderController"),_a5);SheetsHyperLinkRenderController=__decorateClass$7([__decorateParam$7(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$7(2,core.Inject(sheetsUi.SheetSkeletonManagerService)),__decorateParam$7(3,engineRender.IRenderManagerService)],SheetsHyperLinkRenderController);var _a6;let SheetsHyperLinkRenderManagerController=(_a6=class extends core.Disposable{constructor(_sheetInterceptorService,_hyperLinkModel,_themeService){super(),this._sheetInterceptorService=_sheetInterceptorService,this._hyperLinkModel=_hyperLinkModel,this._themeService=_themeService,this._initViewModelIntercept()}_initViewModelIntercept(){this.disposeWithMe(this._sheetInterceptorService.intercept(sheets.INTERCEPTOR_POINT.CELL_CONTENT,{handler:__name((cell,pos,next)=>{const{row,col,unitId,subUnitId}=pos,link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col),styleSheet=this._themeService.getCurrentTheme();return next(link?{...cell,interceptorStyle:{ul:{s:core.BooleanNumber.TRUE},cl:{rgb:styleSheet.blue500}}}:cell)},"handler"),priority:100}))}},__name(_a6,"SheetsHyperLinkRenderManagerController"),_a6);SheetsHyperLinkRenderManagerController=__decorateClass$7([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkRenderManagerController),__decorateParam$7(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$7(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$7(2,core.Inject(core.ThemeService))],SheetsHyperLinkRenderManagerController);var __defProp$6=Object.defineProperty,__getOwnPropDesc$6=Object.getOwnPropertyDescriptor,__decorateClass$6=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$6(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$6(target,key,result),result},"__decorateClass$6"),__decorateParam$6=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$6"),_a7;let SheetHyperLinkSetRangeController=(_a7=class extends core.Disposable{constructor(_sheetInterceptorService,_injector,_hyperLinkModel,_selectionManagerService,_univerInstanceService,_editorBridgeService){super(),this._sheetInterceptorService=_sheetInterceptorService,this._injector=_injector,this._hyperLinkModel=_hyperLinkModel,this._selectionManagerService=_selectionManagerService,this._univerInstanceService=_univerInstanceService,this._editorBridgeService=_editorBridgeService,this._initCommandInterceptor()}_initCommandInterceptor(){this._initAddHyperLinkCommandInterceptor(),this._initSetRangeValuesCommandInterceptor(),this._initUpdateHyperLinkCommandInterceptor(),this._initClearSelectionCommandInterceptor(),this._initRichTextEditorInterceptor()}_getCurrentCell(unitId,subUnitId,row,col){var _a14,_b;return(_b=(_a14=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET))==null?void 0:_a14.getSheetBySheetId(subUnitId))==null?void 0:_b.getCell(row,col)}_initAddHyperLinkCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{var _a14;if(command.id===AddHyperLinkCommand.id){const params=command.params,{unitId,subUnitId,link}=params,currentCell=this._getCurrentCell(unitId,subUnitId,link.row,link.column),redoParams={unitId,subUnitId,cellValue:{[link.row]:{[link.column]:{v:link.display,p:null,t:(_a14=currentCell==null?void 0:currentCell.t)!=null?_a14:void 0}}}};return{redos:[{id:sheets.SetRangeValuesMutation.id,params:redoParams}],undos:[{id:sheets.SetRangeValuesMutation.id,params:sheets.SetRangeValuesUndoMutationFactory(this._injector,redoParams)}]}}return{redos:[],undos:[]}},"getMutations")}))}_initUpdateHyperLinkCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===UpdateHyperLinkCommand.id){const params=command.params,{unitId,subUnitId,id,payload}=params,current=this._hyperLinkModel.getHyperLink(unitId,subUnitId,id);if(current&¤t.display!==payload.display){const redoParams={unitId,subUnitId,cellValue:{[current.row]:{[current.column]:{v:payload.display,t:core.CellValueType.STRING,p:null}}}};return{redos:[{id:sheets.SetRangeValuesMutation.id,params:redoParams}],undos:[{id:sheets.SetRangeValuesMutation.id,params:sheets.SetRangeValuesUndoMutationFactory(this._injector,redoParams)}]}}}return{redos:[],undos:[]}},"getMutations")}))}_initSetRangeValuesCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===sheets.SetRangeValuesCommand.id){const params=command.params,{unitId,subUnitId}=params,redos=[],undos=[];return params.cellValue&&new core.ObjectMatrix(params.cellValue).forValue((row,col,cell)=>{var _a14,_b,_c,_d,_e,_f,_g;const cellValueRaw=(_c=cell==null?void 0:cell.v)!=null?_c:(_b=(_a14=cell==null?void 0:cell.p)==null?void 0:_a14.body)==null?void 0:_b.dataStream.slice(0,-2),cellValue=(cellValueRaw!=null?cellValueRaw:"").toString(),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);if(!link){if(isLegalLink(cellValue)||(_d=cell==null?void 0:cell.custom)!=null&&_d.__link_url){const url=(_f=(_e=cell==null?void 0:cell.custom)==null?void 0:_e.__link_url)!=null?_f:cellValue,id=core.Tools.generateRandomId();undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id}}),redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{id,row,column:col,display:cellValue,payload:serializeUrl(url)}}})}return}(cellValueRaw===""||((_g=cell==null?void 0:cell.custom)==null?void 0:_g.__link_url)==="")&&(redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}}),undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}))}),{undos,redos}}return{redos:[],undos:[]}},"getMutations")}))}_initClearSelectionCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===sheets.ClearSelectionContentCommand.id||command.id===sheets.ClearSelectionAllCommand.id||command.id===sheets.ClearSelectionFormatCommand.id){const redos=[],undos=[],selection=this._selectionManagerService.getCurrentLastSelection(),target=sheets.getSheetCommandTarget(this._univerInstanceService);if(selection&&target){const{unitId,subUnitId}=target;core.Range.foreach(selection.range,(row,col)=>{const link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);link&&(redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}}),undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}))})}return{redos,undos}}return{redos:[],undos:[]}},"getMutations")}))}_initRichTextEditorInterceptor(){this.disposeWithMe(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().AFTER_CELL_EDIT,{handler:__name((data,context,next)=>{var _a14,_b,_c,_d,_e,_f;if(data!=null&&data.p){const range=(_b=(_a14=data.p.body)==null?void 0:_a14.customRanges)==null?void 0:_b.find(i=>i.rangeType===core.CustomRangeType.HYPERLINK),resource=(_c=data.p.resources)==null?void 0:_c.find(i=>i.name===docsHyperLink.DOC_HYPER_LINK_PLUGIN);if(range&&resource){const rangeId=range.rangeId,url=(_f=(_e=(_d=JSON.parse(resource.data))==null?void 0:_d.links)==null?void 0:_e.find(i=>i.id===rangeId))==null?void 0:_f.payload;return next({...data,p:null,v:docs.getPlainTextFormDocument(data.p),t:core.CellValueType.STRING,custom:{__link_url:url}})}}return next(data)},"handler")}))}},__name(_a7,"SheetHyperLinkSetRangeController"),_a7);SheetHyperLinkSetRangeController=__decorateClass$6([core.OnLifecycle(core.LifecycleStages.Starting,SheetHyperLinkSetRangeController),__decorateParam$6(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$6(1,core.Inject(core.Injector)),__decorateParam$6(2,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$6(3,core.Inject(sheets.SheetsSelectionsService)),__decorateParam$6(4,core.IUniverInstanceService),__decorateParam$6(5,sheetsUi.IEditorBridgeService)],SheetHyperLinkSetRangeController);var __defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$5"),_a8;let SheetsHyperLinkPopupController=(_a8=class extends core.Disposable{constructor(_hoverManagerService,_sheetsHyperLinkPopupService,_renderManagerService,_permissionService,_sheetPermissionInterceptorBaseController,_commandService){super(),this._hoverManagerService=_hoverManagerService,this._sheetsHyperLinkPopupService=_sheetsHyperLinkPopupService,this._renderManagerService=_renderManagerService,this._permissionService=_permissionService,this._sheetPermissionInterceptorBaseController=_sheetPermissionInterceptorBaseController,this._commandService=_commandService,this._initHoverListener(),this._initCommandListener()}_initHoverListener(){this.disposeWithMe(this._hoverManagerService.currentCell$.pipe(rxjs.debounceTime(200)).subscribe(currentCell=>{var _a14,_b;if(!currentCell){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}const skeleton=(_b=(_a14=this._renderManagerService.getRenderById(currentCell.location.unitId))==null?void 0:_a14.with(sheetsUi.SheetSkeletonManagerService).getWorksheetSkeleton(currentCell.location.subUnitId))==null?void 0:_b.skeleton,currentCol=currentCell.location.col,currentRow=currentCell.location.row;let targetRow=currentRow,targetCol=currentCol;if(skeleton&&skeleton.overflowCache.forValue((row,col,value)=>{core.Rectangle.contains(value,{startColumn:currentCol,endColumn:currentCol,startRow:currentRow,endRow:currentRow})&&(targetRow=row,targetCol=col)}),!this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookViewPermission],worksheetTypes:[sheets.WorksheetViewPermission],rangeTypes:[sheets.RangeProtectionPermissionViewPoint]},[{startRow:currentRow,startColumn:currentCol,endRow:currentRow,endColumn:currentCol}])){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}const editPermission=this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]},[{startRow:currentRow,startColumn:currentCol,endRow:currentRow,endColumn:currentCol}]),unitId=currentCell.location.unitId,subUnitId=currentCell.location.subUnitId,copyPermission=this._permissionService.composePermission([new sheets.WorkbookCopyPermission(unitId).id,new sheets.WorksheetCopyPermission(unitId,subUnitId).id]).every(permission=>permission.value);this._sheetsHyperLinkPopupService.showPopup({...currentCell.location,row:targetRow,col:targetCol,editPermission,copyPermission})}))}_initCommandListener(){const HIDE_COMMAND_LIST=[sheets.ClearSelectionContentCommand.id,sheets.ClearSelectionAllCommand.id,sheets.ClearSelectionFormatCommand.id];this.disposeWithMe(this._commandService.onCommandExecuted(command=>{HIDE_COMMAND_LIST.includes(command.id)&&this._sheetsHyperLinkPopupService.hideCurrentPopup()}))}},__name(_a8,"SheetsHyperLinkPopupController"),_a8);SheetsHyperLinkPopupController=__decorateClass$5([core.OnLifecycle(core.LifecycleStages.Rendered,SheetsHyperLinkPopupController),__decorateParam$5(0,core.Inject(sheetsUi.HoverManagerService)),__decorateParam$5(1,core.Inject(exports.SheetsHyperLinkPopupService)),__decorateParam$5(2,core.Inject(engineRender.IRenderManagerService)),__decorateParam$5(3,core.Inject(core.IPermissionService)),__decorateParam$5(4,core.Inject(sheetsUi.SheetPermissionInterceptorBaseController)),__decorateParam$5(5,core.ICommandService)],SheetsHyperLinkPopupController);const insertLinkMenuFactory=__name(accessor=>({id:InsertHyperLinkOperation.id,type:ui.MenuItemType.BUTTON,positions:[ui.MenuPosition.CONTEXT_MENU],title:"hyperLink.menu.add",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),icon:"LinkSingle",disabled$:sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]})}),"insertLinkMenuFactory"),insertLinkMenuToolbarFactory=__name(accessor=>({tooltip:"hyperLink.form.addTitle",positions:ui.MenuPosition.TOOLBAR_START,group:ui.MenuGroup.TOOLBAR_OTHERS,id:InsertHyperLinkToolbarOperation.id,type:ui.MenuItemType.BUTTON,icon:"LinkSingle",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),disabled$:sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]})}),"insertLinkMenuToolbarFactory"),InsertLinkShortcut={id:InsertHyperLinkToolbarOperation.id,binding:ui.KeyCode.K|ui.MetaKeys.CTRL_COMMAND,preconditions:sheetsUi.whenSheetEditorFocused};var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$4"),_a9;let SheetsHyperLinkUIController=(_a9=class extends core.Disposable{constructor(_config,_componentManager,_commandService,_localeService,_menuService,_injector,_shortcutService){super(),this._config=_config,this._componentManager=_componentManager,this._commandService=_commandService,this._localeService=_localeService,this._menuService=_menuService,this._injector=_injector,this._shortcutService=_shortcutService,this._initComponents(),this._initCommands(),this._initMenus(),this._initShortCut()}_initComponents(){[[CellLinkPopup,CellLinkPopup.componentKey],[CellLinkEdit,CellLinkEdit.componentKey],[LinkSingle,"LinkSingle"]].forEach(([comp,key])=>{this._componentManager.register(key,comp)})}_initCommands(){[OpenHyperLinkSidebarOperation,CloseHyperLinkSidebarOperation,InsertHyperLinkOperation,InsertHyperLinkToolbarOperation,AddHyperLinkCommand,UpdateHyperLinkCommand,RemoveHyperLinkCommand,CancelHyperLinkCommand].forEach(command=>{this._commandService.registerCommand(command)})}_initMenus(){var _a14,_b,_c,_d;this._menuService.addMenuItem(insertLinkMenuFactory(this._injector),(_b=(_a14=this._config)==null?void 0:_a14.menu)!=null?_b:{}),this._menuService.addMenuItem(insertLinkMenuToolbarFactory(this._injector),(_d=(_c=this._config)==null?void 0:_c.menu)!=null?_d:{})}_initShortCut(){this._shortcutService.registerShortcut(InsertLinkShortcut)}},__name(_a9,"SheetsHyperLinkUIController"),_a9);SheetsHyperLinkUIController=__decorateClass$4([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkUIController),__decorateParam$4(1,core.Inject(ui.ComponentManager)),__decorateParam$4(2,core.ICommandService),__decorateParam$4(3,core.Inject(core.LocaleService)),__decorateParam$4(4,ui.IMenuService),__decorateParam$4(5,core.Inject(core.Injector)),__decorateParam$4(6,core.Inject(ui.IShortcutService))],SheetsHyperLinkUIController);var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$3"),_a10;let SheetsHyperLinkAutoFillController=(_a10=class extends core.Disposable{constructor(_autoFillService,_hyperLinkModel){super(),this._autoFillService=_autoFillService,this._hyperLinkModel=_hyperLinkModel,this._initAutoFill()}_initAutoFill(){const noopReturnFunc=__name(()=>({redos:[],undos:[]}),"noopReturnFunc"),generalApplyFunc=__name((location2,applyType)=>{const{source:sourceRange,target:targetRange,unitId,subUnitId}=location2,virtualRange=sheetsUi.virtualizeDiscreteRanges([sourceRange,targetRange]),[vSourceRange,vTargetRange]=virtualRange.ranges,{mapFunc}=virtualRange,sourceStartCell={row:vSourceRange.startRow,col:vSourceRange.startColumn},repeats=sheetsUi.getAutoFillRepeatRange(vSourceRange,vTargetRange),redos=[],undos=[];return repeats.forEach(repeat=>{const targetStartCell=repeat.repeatStartCell,relativeRange=repeat.relativeRange,sourceRange2={startRow:sourceStartCell.row,startColumn:sourceStartCell.col,endColumn:sourceStartCell.col,endRow:sourceStartCell.row},targetRange2={startRow:targetStartCell.row,startColumn:targetStartCell.col,endColumn:targetStartCell.col,endRow:targetStartCell.row};core.Range.foreach(relativeRange,(row,col)=>{const sourcePositionRange=core.Rectangle.getPositionRange({startRow:row,startColumn:col,endColumn:col,endRow:row},sourceRange2),{row:sourceRow,col:sourceCol}=mapFunc(sourcePositionRange.startRow,sourcePositionRange.startColumn),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,sourceRow,sourceCol),targetPositionRange=core.Rectangle.getPositionRange({startRow:row,startColumn:col,endColumn:col,endRow:row},targetRange2),{row:targetRow,col:targetCol}=mapFunc(targetPositionRange.startRow,targetPositionRange.startColumn),id=core.Tools.generateRandomId(),currentLink=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,targetRow,targetCol);currentLink&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:currentLink.id}}),(sheetsUi.APPLY_TYPE.COPY===applyType||sheetsUi.APPLY_TYPE.SERIES===applyType)&&link&&(redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{...link,id,row:targetRow,column:targetCol}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id}})),currentLink&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:currentLink}})})}),{undos,redos}},"generalApplyFunc"),hook={id:SHEET_HYPER_LINK_UI_PLUGIN,onFillData:__name((location2,direction,applyType)=>applyType===sheetsUi.APPLY_TYPE.COPY||applyType===sheetsUi.APPLY_TYPE.ONLY_FORMAT||applyType===sheetsUi.APPLY_TYPE.SERIES?generalApplyFunc(location2,applyType):noopReturnFunc(),"onFillData")};this.disposeWithMe(this._autoFillService.addHook(hook))}},__name(_a10,"SheetsHyperLinkAutoFillController"),_a10);SheetsHyperLinkAutoFillController=__decorateClass$3([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkAutoFillController),__decorateParam$3(0,sheetsUi.IAutoFillService),__decorateParam$3(1,core.Inject(sheetsHyperLink.HyperLinkModel))],SheetsHyperLinkAutoFillController);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$2"),_a11;let SheetHyperLinkUrlController=(_a11=class extends core.Disposable{constructor(_resolverService){super(),this._resolverService=_resolverService,this._handleInitUrl()}_handleInitUrl(){const hash=location.hash;hash&&this._resolverService.parseHyperLink(hash).handler()}},__name(_a11,"SheetHyperLinkUrlController"),_a11);SheetHyperLinkUrlController=__decorateClass$2([core.OnLifecycle(core.LifecycleStages.Rendered,SheetHyperLinkUrlController),__decorateParam$2(0,core.Inject(exports.SheetsHyperLinkResolverService))],SheetHyperLinkUrlController);var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$1"),_a12;let SheetsHyperLinkPermissionController=(_a12=class extends core.Disposable{constructor(_localeService,_commandService,_sheetPermissionInterceptorBaseController){super(),this._localeService=_localeService,this._commandService=_commandService,this._sheetPermissionInterceptorBaseController=_sheetPermissionInterceptorBaseController,this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(command=>{command.id===InsertLinkShortcut.id&&(this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookEditablePermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission]})||this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.hyperLinkErr")))}))}},__name(_a12,"SheetsHyperLinkPermissionController"),_a12);SheetsHyperLinkPermissionController=__decorateClass$1([core.OnLifecycle(core.LifecycleStages.Rendered,SheetsHyperLinkPermissionController),__decorateParam$1(0,core.Inject(core.LocaleService)),__decorateParam$1(1,core.ICommandService),__decorateParam$1(2,core.Inject(sheetsUi.SheetPermissionInterceptorBaseController))],SheetsHyperLinkPermissionController);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__defNormalProp2=__name((obj,key,value)=>key in obj?__defProp2(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,"__defNormalProp"),__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam"),__publicField2=__name((obj,key,value)=>__defNormalProp2(obj,typeof key!="symbol"?key+"":key,value),"__publicField"),_a13;exports.UniverSheetsHyperLinkUIPlugin=(_a13=class extends core.Plugin{constructor(_config,_injector,_renderManagerService){super(),this._config=_config,this._injector=_injector,this._renderManagerService=_renderManagerService}onStarting(){[[exports.SheetsHyperLinkResolverService,{useFactory:__name(()=>{var _a14;return this._injector.createInstance(exports.SheetsHyperLinkResolverService,(_a14=this._config)==null?void 0:_a14.urlHandler)},"useFactory")}],[exports.SheetsHyperLinkPopupService],[SheetsHyperLinkSidePanelService],[SheetsHyperLinkRemoveSheetController],[SheetsHyperLinkRenderManagerController],[SheetHyperLinkSetRangeController],[SheetsHyperLinkPopupController],[SheetsHyperLinkUIController,{useFactory:__name(()=>this._injector.createInstance(SheetsHyperLinkUIController,this._config),"useFactory")}],[SheetsHyperLinkAutoFillController],[exports.SheetsHyperLinkCopyPasteController],[SheetsHyperLinkPermissionController],[SheetHyperLinkUrlController]].forEach(dep=>this._injector.add(dep))}onReady(){[[SheetsHyperLinkRenderController]].forEach(d=>this._renderManagerService.registerRenderModule(core.UniverInstanceType.UNIVER_SHEET,d))}},__name(_a13,"UniverSheetsHyperLinkUIPlugin"),_a13);__publicField2(exports.UniverSheetsHyperLinkUIPlugin,"pluginName",SHEET_HYPER_LINK_UI_PLUGIN);__publicField2(exports.UniverSheetsHyperLinkUIPlugin,"type",core.UniverInstanceType.UNIVER_SHEET);exports.UniverSheetsHyperLinkUIPlugin=__decorateClass([core.DependentOn(sheetsHyperLink.UniverSheetsHyperLinkPlugin),__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,engineRender.IRenderManagerService)],exports.UniverSheetsHyperLinkUIPlugin);exports.AddHyperLinkCommand=AddHyperLinkCommand;exports.CancelHyperLinkCommand=CancelHyperLinkCommand;exports.CloseHyperLinkSidebarOperation=CloseHyperLinkSidebarOperation;exports.InsertHyperLinkOperation=InsertHyperLinkOperation;exports.InsertLinkShortcut=InsertLinkShortcut;exports.OpenHyperLinkSidebarOperation=OpenHyperLinkSidebarOperation;exports.RemoveHyperLinkCommand=RemoveHyperLinkCommand;exports.SheetsHyperLinkSidePanelService=SheetsHyperLinkSidePanelService;exports.UpdateHyperLinkCommand=UpdateHyperLinkCommand;
|
|
9
|
+
*/var f=require$$0,k=Symbol.for("react.element"),l=Symbol.for("react.fragment"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};function q(c,a,g){var b,d={},e=null,h=null;g!==void 0&&(e=""+g),a.key!==void 0&&(e=""+a.key),a.ref!==void 0&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)d[b]===void 0&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}__name(q,"q");reactJsxRuntime_production_min.Fragment=l;reactJsxRuntime_production_min.jsx=q;reactJsxRuntime_production_min.jsxs=q;jsxRuntime.exports=reactJsxRuntime_production_min;var jsxRuntimeExports=jsxRuntime.exports,__assign=function(){return __assign=Object.assign||function(t){for(var s,i=1,n2=arguments.length;i<n2;i++){s=arguments[i];for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&(t[p2]=s[p2])}return t},__assign.apply(this,arguments)},__rest=function(s,e){var t={};for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&e.indexOf(p2)<0&&(t[p2]=s[p2]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p2=Object.getOwnPropertySymbols(s);i<p2.length;i++)e.indexOf(p2[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p2[i])&&(t[p2[i]]=s[p2[i]]);return t},IconBase=require$$0.forwardRef(function(props,ref){var icon=props.icon,id=props.id,className=props.className,extend=props.extend,restProps=__rest(props,["icon","id","className","extend"]),cls="univerjs-icon univerjs-icon-".concat(id," ").concat(className||"").trim(),idSuffix=require$$0.useRef("_".concat(generateShortUuid()));return render(icon,"".concat(id),{defIds:icon.defIds,idSuffix:idSuffix.current},__assign({ref,className:cls},restProps),extend)});function render(node,id,runtimeProps,rootProps,extend){return require$$0.createElement(node.tag,__assign(__assign({key:id},replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend)),rootProps),(replaceRuntimeIdsInDefs(node,runtimeProps).children||[]).map(function(child,index){return render(child,"".concat(id,"-").concat(node.tag,"-").concat(index),runtimeProps,void 0,extend)}))}__name(render,"render");function replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend){var attrs=__assign({},node.attrs);extend!=null&&extend.colorChannel1&&attrs.fill==="colorChannel1"&&(attrs.fill=extend.colorChannel1);var defIds=runtimeProps.defIds;return!defIds||defIds.length===0||(node.tag==="use"&&attrs["xlink:href"]&&(attrs["xlink:href"]=attrs["xlink:href"]+runtimeProps.idSuffix),Object.entries(attrs).forEach(function(_a14){var key=_a14[0],value=_a14[1];typeof value=="string"&&(attrs[key]=value.replace(/url\(#(.*)\)/,"url(#$1".concat(runtimeProps.idSuffix,")")))})),attrs}__name(replaceRuntimeIdsAndExtInAttrs,"replaceRuntimeIdsAndExtInAttrs");function replaceRuntimeIdsInDefs(node,runtimeProps){var _a14,defIds=runtimeProps.defIds;return!defIds||defIds.length===0?node:node.tag==="defs"&&(!((_a14=node.children)===null||_a14===void 0)&&_a14.length)?__assign(__assign({},node),{children:node.children.map(function(child){return typeof child.attrs.id=="string"&&defIds&&defIds.indexOf(child.attrs.id)>-1?__assign(__assign({},child),{attrs:__assign(__assign({},child.attrs),{id:child.attrs.id+runtimeProps.idSuffix})}):child})}):node}__name(replaceRuntimeIdsInDefs,"replaceRuntimeIdsInDefs");function generateShortUuid(){return Math.random().toString(36).substring(2,8)}__name(generateShortUuid,"generateShortUuid");IconBase.displayName="UniverIcon";var element$5={tag:"svg",attrs:{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"}}]},AllBorderSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"all-border-single",ref,icon:element$5}))});AllBorderSingle.displayName="AllBorderSingle";var element$4={tag:"svg",attrs:{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"}}]},CopySingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"copy-single",ref,icon:element$4}))});CopySingle.displayName="CopySingle";var element$3={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.9564 2.91332C4.91407 1.87102 3.22413 1.87101 2.18182 2.91333L2.18182 2.91333C1.13953 3.95567 1.13952 5.6456 2.18182 6.68791L8.27777 12.7838C9.72408 14.2302 12.069 14.2302 13.5154 12.7839L13.0911 12.3596L13.5154 12.7839C14.9617 11.3375 14.9617 8.99257 13.5154 7.54626L8.39476 2.42566C8.16044 2.19134 7.78054 2.19134 7.54623 2.42566C7.31191 2.65997 7.31191 3.03987 7.54623 3.27419L12.6668 8.39479L13.0911 7.97052L12.6668 8.39479C13.6445 9.37247 13.6445 10.9576 12.6668 11.9353L13.0399 12.3084L12.6668 11.9353C11.6891 12.913 10.104 12.913 9.1263 11.9353L3.03035 5.83938C2.45668 5.26571 2.45667 4.33556 3.03036 3.76184C3.60403 3.18818 4.53416 3.18817 5.10788 3.76185C5.10788 3.76186 5.10788 3.76186 5.10789 3.76186L11.2038 9.8578L11.601 9.46061L11.2038 9.8578C11.3735 10.0275 11.3735 10.3026 11.2038 10.4723L11.2038 10.4723C11.0341 10.642 10.759 10.642 10.5893 10.4723L5.46874 5.35171C5.23442 5.1174 4.85452 5.1174 4.62021 5.35171C4.38589 5.58602 4.38589 5.96592 4.62021 6.20024L9.74078 11.3208C10.3791 11.9591 11.414 11.9591 12.0523 11.3208C12.0523 11.3208 12.0523 11.3208 12.0523 11.3208M12.0523 11.3208C12.6907 10.6825 12.6906 9.64757 12.0523 9.00927L5.95641 2.91333L5.9564 2.91332",fillRule:"evenodd",clipRule:"evenodd"}}]},LinkSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"link-single",ref,icon:element$3}))});LinkSingle.displayName="LinkSingle";var element$2={tag:"svg",attrs:{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.76157 6.75249 4.52725 6.75249 4.14735 6.98681 3.91304L8.27535 2.62449C9.70209 1.19776 12.0153 1.19776 13.442 2.62449 14.8688 4.05123 14.8688 6.36442 13.442 7.79116L12.1535 9.0797C11.9192 9.31402 11.5393 9.31402 11.3049 9.0797 11.0706 8.84539 11.0706 8.46549 11.3049 8.23117L12.5935 6.94263C13.5516 5.98452 13.5516 4.43113 12.5935 3.47302zM3.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.05395 4.4606 6.81963 4.0807 6.81963 3.84639 7.05395L2.55784 8.34249C1.13111 9.76923 1.13111 12.0824 2.55784 13.5092 3.98458 14.9359 6.29777 14.9359 7.72451 13.5092L9.01305 12.2206C9.24737 11.9863 9.24737 11.6064 9.01305 11.3721 8.77874 11.1378 8.39884 11.1378 8.16452 11.3721L6.87598 12.6606C5.91787 13.6187 4.36448 13.6187 3.40637 12.6606zM3.5852 2.80332C3.35088 2.569 2.97098 2.569 2.73667 2.80332 2.50235 3.03763 2.50235 3.41753 2.73667 3.65185L12.4151 13.3302C12.6494 13.5646 13.0293 13.5646 13.2636 13.3302 13.4979 13.0959 13.4979 12.716 13.2636 12.4817L3.5852 2.80332z"}}]},UnlinkSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"unlink-single",ref,icon:element$2}))});UnlinkSingle.displayName="UnlinkSingle";var element$1={tag:"svg",attrs:{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"}}]},WriteSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"write-single",ref,icon:element$1}))});WriteSingle.displayName="WriteSingle";var element={tag:"svg",attrs:{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:"#fff",d:"M7.8088 10.2949L6.3764 12.403C6.26259 12.5705 6.03455 12.614 5.86705 12.5002C5.69955 12.3864 5.65603 12.1584 5.76984 11.9909L7.3655 9.64252L5.94042 7.54519C5.82661 7.37769 5.87013 7.14964 6.03763 7.03583C6.20512 6.92202 6.43317 6.96555 6.54698 7.13304L7.8088 8.9901L9.07062 7.13304C9.18443 6.96555 9.41248 6.92202 9.57997 7.03583C9.74747 7.14964 9.79099 7.37769 9.67718 7.54519L8.2521 9.64252L9.84776 11.9909C9.96157 12.1584 9.91805 12.3864 9.75055 12.5002C9.58305 12.614 9.35501 12.5705 9.2412 12.403L7.8088 10.2949Z",fillRule:"evenodd",clipRule:"evenodd"}}]},Xlsx=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"xlsx",ref,icon:element}))});Xlsx.displayName="Xlsx";const PLUGIN_CONFIG_KEY="sheets-hyper-link-ui.config",defaultPluginConfig={};var __defProp$b=Object.defineProperty,__getOwnPropDesc$b=Object.getOwnPropertyDescriptor,__decorateClass$b=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$b(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$b(target,key,result),result},"__decorateClass$b"),__decorateParam$b=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$b");function getContainRange(range,worksheet){const mergedCells=worksheet.getMergeData(),maxCol=worksheet.getMaxColumns()-1,maxRow=worksheet.getMaxRows()-1;if(maxCol<range.endColumn&&(range.endColumn=maxCol),maxRow<range.endRow&&(range.endRow=maxRow),range.rangeType===core.RANGE_TYPE.COLUMN||core.RANGE_TYPE.ROW)return range;const relativeCells=[];return mergedCells.forEach(cell=>{core.Rectangle.intersects(range,cell)&&relativeCells.push(cell)}),core.Rectangle.realUnion(range,...relativeCells)}__name(getContainRange,"getContainRange");var _a;exports.SheetsHyperLinkResolverService=(_a=class{constructor(_univerInstanceService,_commandService,_definedNamesService,_messageService,_localeService,_configService){this._univerInstanceService=_univerInstanceService,this._commandService=_commandService,this._definedNamesService=_definedNamesService,this._messageService=_messageService,this._localeService=_localeService,this._configService=_configService}_getURLName(params){var _a14;const{gid,range,rangeid}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return null;const sheet=gid?workbook.getSheetBySheetId(gid):workbook.getActiveSheet(),sheetName=(_a14=sheet==null?void 0:sheet.getName())!=null?_a14:"";if(range){const rangeObj=engineFormula.deserializeRangeWithSheet(range).range;return core.isValidRange(rangeObj)&&range!==sheetsHyperLink.ERROR_RANGE?{type:"range",name:engineFormula.serializeRangeWithSheet(sheetName,rangeObj)}:{type:"range-error",name:this._localeService.t("hyperLink.message.refError")}}if(rangeid){const range2=this._definedNamesService.getValueById(workbook.getUnitId(),rangeid);return range2?{type:"defineName",name:range2.formulaOrRefString}:{type:"range-error",name:this._localeService.t("hyperLink.message.refError")}}if(gid){const worksheet=workbook.getSheetBySheetId(gid);return worksheet?{type:"sheet",name:worksheet.getName()}:{type:"sheet-error",name:this._localeService.t("hyperLink.message.refError")}}return null}navigateTo(params){const{gid,range,rangeid}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const unitId=workbook.getUnitId();if(rangeid&&this.navigateToDefineName(unitId,rangeid),!!gid){if(range){const rangeInfo=engineFormula.deserializeRangeWithSheet(range);core.isValidRange(rangeInfo.range)&&range!==sheetsHyperLink.ERROR_RANGE&&this.navigateToRange(unitId,gid,rangeInfo.range);return}this.navigateToSheetById(unitId,gid)}}parseHyperLink(urlStr){var _a14,_b,_c;if(urlStr!=null&&urlStr.startsWith("#")){const search=new URLSearchParams(urlStr.slice(1)),searchObj={gid:(_a14=search.get("gid"))!=null?_a14:"",range:(_b=search.get("range"))!=null?_b:"",rangeid:(_c=search.get("rangeid"))!=null?_c:""},urlInfo=this._getURLName(searchObj);return{type:(urlInfo==null?void 0:urlInfo.type)||"link",name:(urlInfo==null?void 0:urlInfo.name)||urlStr,url:urlStr,searchObj,handler:__name(()=>{this.navigateTo(searchObj)},"handler")}}else return{type:"outer",name:urlStr,url:urlStr,handler:__name(()=>{this.navigateToOtherWebsite(urlStr)},"handler")}}async navigateToRange(unitId,subUnitId,range){const worksheet=await this.navigateToSheetById(unitId,subUnitId);if(worksheet){const realRange=getContainRange(range,worksheet);await this._commandService.executeCommand(sheets.SetSelectionsOperation.id,{unitId,subUnitId,selections:[{range:realRange}]}),await this._commandService.executeCommand(sheetsUi.ScrollToRangeOperation.id,{range:realRange})}}async navigateToSheet(unitId,sheetName){const workbook=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return!1;const worksheet=workbook.getActiveSheet();if((worksheet==null?void 0:worksheet.getName())===sheetName)return!0;const targetSheet=workbook.getSheetBySheetName(sheetName);if(!targetSheet){this._messageService.show({content:this._localeService.t("hyperLink.message.noSheet"),type:design.MessageType.Error});return}const sheetId=targetSheet.getSheetId();return workbook.getHiddenWorksheets().indexOf(sheetId)>-1&&this._messageService.show({content:this._localeService.t("hyperLink.message.hiddenSheet"),type:design.MessageType.Error}),await this._commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId,subUnitId:sheetId})}async navigateToSheetById(unitId,subUnitId){const workbook=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return!1;const worksheet=workbook.getActiveSheet();if(!worksheet)return!1;if(worksheet.getSheetId()===subUnitId)return worksheet;const targetSheet=workbook.getSheetBySheetId(subUnitId);return targetSheet?workbook.getHiddenWorksheets().indexOf(subUnitId)>-1?(this._messageService.show({content:this._localeService.t("hyperLink.message.hiddenSheet"),type:design.MessageType.Error}),!1):await this._commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId,subUnitId})?targetSheet:!1:(this._messageService.show({content:this._localeService.t("hyperLink.message.noSheet"),type:design.MessageType.Error}),!1)}async navigateToDefineName(unitId,rangeid){return this._definedNamesService.focusRange(unitId,rangeid),!0}async navigateToOtherWebsite(url){var _a14;const config=this._configService.getConfig(PLUGIN_CONFIG_KEY);if((_a14=config==null?void 0:config.urlHandler)!=null&&_a14.navigateToOtherWebsite)return config.urlHandler.navigateToOtherWebsite(url);window.open(url,"_blank","noopener noreferrer")}},__name(_a,"SheetsHyperLinkResolverService"),_a);exports.SheetsHyperLinkResolverService=__decorateClass$b([__decorateParam$b(0,core.IUniverInstanceService),__decorateParam$b(1,core.ICommandService),__decorateParam$b(2,engineFormula.IDefinedNamesService),__decorateParam$b(3,ui.IMessageService),__decorateParam$b(4,core.Inject(core.LocaleService)),__decorateParam$b(5,core.IConfigService)],exports.SheetsHyperLinkResolverService);function isLegalLink(link){return core.Tools.isLegalUrl(link)}__name(isLegalLink,"isLegalLink");function hasProtocol(urlString){return/^[a-zA-Z]+:\/\//.test(urlString)}__name(hasProtocol,"hasProtocol");function isEmail(url){return/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/.test(url)}__name(isEmail,"isEmail");function serializeUrl(urlStr){if(isLegalLink(urlStr)){const transformedUrl=hasProtocol(urlStr)?urlStr:isEmail(urlStr)?`mailto://${urlStr}`:`http://${urlStr}`;let url;try{url=new URL(transformedUrl)}catch{return urlStr}return url.hostname===location.hostname&&url.port===location.port&&url.protocol===location.protocol&&url.pathname===location.pathname&&url.hash&&!url.search?url.hash:transformedUrl}return urlStr}__name(serializeUrl,"serializeUrl");function getCellValueOrigin(cell){if(cell===null)return"";if(cell!=null&&cell.p){const body=cell==null?void 0:cell.p.body;if(body==null)return"";const data=body.dataStream;return data.substring(data.length-2,data.length)===core.DEFAULT_EMPTY_DOCUMENT_VALUE?data.substring(0,data.length-2):data}return cell==null?void 0:cell.v}__name(getCellValueOrigin,"getCellValueOrigin");const AddHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.add-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),{unitId,subUnitId,link}=params,{redos,undos}=sheetInterceptorService.onCommandExecute({id:AddHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.AddHyperLinkMutation.id,params},undo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}};function getHyperLinkContent(link){const{row,column,id,...content}=link;return content}__name(getHyperLinkContent,"getHyperLinkContent");const UpdateHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.update-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id);if(!link)return!1;const{redos,undos}=sheetInterceptorService.onCommandExecute({id:UpdateHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.UpdateHyperLinkMutation.id,params},undo={id:sheetsHyperLink.UpdateHyperLinkMutation.id,params:{unitId,subUnitId,id,payload:getHyperLinkContent(link)}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}},cellLinkEditButtons="univer-cell-link-edit-buttons",styles$1={cellLinkEditButtons},CellLinkEdit=__name(()=>{var _a14;const[id,setId]=require$$0.useState(""),[display,setDisplay]=require$$0.useState(""),[type,setType]=require$$0.useState(LinkType.link),[payload,setPayload]=require$$0.useState(""),localeService=core.useDependency(core.LocaleService),definedNameService=core.useDependency(engineFormula.IDefinedNamesService),univerInstanceService=core.useDependency(core.IUniverInstanceService),popupService=core.useDependency(exports.SheetsHyperLinkPopupService),editing=ui.useObservable(popupService.currentEditing$),hyperLinkModel=core.useDependency(sheetsHyperLink.HyperLinkModel),resolverService=core.useDependency(exports.SheetsHyperLinkResolverService),commandService=core.useDependency(core.ICommandService),sidePanelService=core.useDependency(SheetsHyperLinkSidePanelService),sidePanelOptions=require$$0.useMemo(()=>sidePanelService.getOptions(),[sidePanelService]),customHyperLinkSidePanel=require$$0.useMemo(()=>{if(!sidePanelService.isBuiltInLinkType(type))return sidePanelService.getCustomHyperLink(type)},[sidePanelService,type]),[showError,setShowError]=require$$0.useState(!1),setByPayload=require$$0.useRef(!1);require$$0.useEffect(()=>{var _a15,_b,_c;if((editing==null?void 0:editing.row)!==void 0&&editing.column!==void 0){const link=hyperLinkModel.getHyperLinkByLocationSync(editing.unitId,editing.subUnitId,editing.row,editing.column);if(link){setId(link.id);const customLink=sidePanelService.findCustomHyperLink(link);if(customLink){const customLinkInfo=customLink.convert(link);setType(customLinkInfo.type),setPayload(customLinkInfo.payload),setDisplay(customLinkInfo.display);return}setDisplay(link.display);const linkInfo=resolverService.parseHyperLink(link.payload);if(linkInfo.type==="outer"){setType(LinkType.link),setPayload(linkInfo.url),linkInfo.url===link.display&&(setByPayload.current=!0);return}else{const params=linkInfo.searchObj;if(params.rangeid){setType(LinkType.definedName),setPayload(params.rangeid);return}if(params.range){const sheetName=params.gid&&(_c=(_b=(_a15=univerInstanceService.getUnit(editing.unitId))==null?void 0:_a15.getSheetBySheetId(params.gid))==null?void 0:_b.getName())!=null?_c:"";if(setType(LinkType.range),params.range===sheetsHyperLink.ERROR_RANGE)setPayload("");else{const payload2=engineFormula.serializeRangeWithSheet(sheetName,engineFormula.deserializeRangeWithSheet(params.range).range);setPayload(payload2),payload2===link.display&&(setByPayload.current=!0)}return}if(params.gid){setType(LinkType.sheet),setPayload(params.gid);return}}}const workbook2=univerInstanceService.getUnit(editing.unitId),worksheet=workbook2==null?void 0:workbook2.getSheetBySheetId(editing.subUnitId),cell=worksheet==null?void 0:worksheet.getCellRaw(editing.row,editing.column),cellValue=getCellValueOrigin(cell);setType(LinkType.link),setPayload(""),setDisplay((cellValue!=null?cellValue:"").toString()),setId("");return}setType(LinkType.link),setPayload(""),setDisplay(""),setId("")},[editing,hyperLinkModel,resolverService,univerInstanceService]);const payloadInitial=require$$0.useMemo(()=>payload,[type]),linkTypeOptions=[{label:localeService.t("hyperLink.form.link"),value:LinkType.link},{label:localeService.t("hyperLink.form.range"),value:LinkType.range},{label:localeService.t("hyperLink.form.worksheet"),value:LinkType.sheet},{label:localeService.t("hyperLink.form.definedName"),value:LinkType.definedName},...sidePanelOptions],workbook=univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const hiddens=workbook.getHiddenWorksheets(),sheetsOption=workbook.getSheets().map(sheet=>({label:sheet.getName(),value:sheet.getSheetId()})).filter(opt=>hiddens.indexOf(opt.value)===-1),definedNames=Object.values((_a14=definedNameService.getDefinedNameMap(workbook.getUnitId()))!=null?_a14:{}).map(value=>({label:value.name,value:value.id})),formatUrl=__name((type2,payload2)=>{if(type2===LinkType.link)return serializeUrl(payload2);if(type2===LinkType.range){const info=engineFormula.deserializeRangeWithSheet(payload2),worksheet=workbook.getSheetBySheetName(info.sheetName);if(worksheet)return`#gid=${worksheet.getSheetId()}&range=${engineFormula.serializeRange(info.range)}`}return`#${type2}=${payload2}`},"formatUrl"),handleRangeChange=ui.useEvent(newValue=>{var _a15;const range=newValue[0];if(!range||!core.isValidRange(range.range))return;range.sheetName||(range.sheetName=((_a15=workbook.getActiveSheet())==null?void 0:_a15.getName())||"");const newPayload=engineFormula.serializeRangeToRefString(range);setPayload(newPayload),newPayload&&(setByPayload.current||!display)&&(setDisplay(newPayload),setByPayload.current=!0)}),handleSubmit=__name(async()=>{if(editing&&(id?await commandService.executeCommand(UpdateHyperLinkCommand.id,{unitId:editing.unitId,subUnitId:editing.subUnitId,id,payload:{display,payload:formatUrl(type,payload)}}):await commandService.executeCommand(AddHyperLinkCommand.id,{unitId:editing.unitId,subUnitId:editing.subUnitId,link:{id:core.Tools.generateRandomId(),row:editing.row,column:editing.column,payload:formatUrl(type,payload),display}})),editing){await commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId:editing.unitId,subUnitId:editing.subUnitId});const GAP=1;await commandService.executeCommand(sheetsUi.ScrollToRangeOperation.id,{range:{startRow:Math.max(editing.row-GAP,0),endRow:editing.row+GAP,startColumn:Math.max(editing.column-GAP,0),endColumn:editing.column+GAP}})}commandService.executeCommand(CloseHyperLinkSidebarOperation.id)},"handleSubmit");return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("hyperLink.form.label"),error:showError&&!display?localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(design.Input,{value:display,onChange:__name(v=>{setDisplay(v),setByPayload.current=!1},"onChange"),placeholder:localeService.t("hyperLink.form.labelPlaceholder")})}),jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("hyperLink.form.type"),children:jsxRuntimeExports.jsx(design.Select,{options:linkTypeOptions,value:type,onChange:__name(newType=>{setType(newType),setPayload("")},"onChange")})}),type===LinkType.link&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError?payload?isLegalLink(payload)?"":localeService.t("hyperLink.form.linkError"):localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(design.Input,{value:payload,onChange:__name(newLink=>{setPayload(newLink),newLink&&(setByPayload.current||!display||display===payload)&&(setDisplay(newLink),setByPayload.current=!0)},"onChange"),placeholder:localeService.t("hyperLink.form.linkPlaceholder")})}),type===LinkType.range&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(ui.RangeSelector,{openForSheetUnitId:workbook.getUnitId(),id:core.createInternalEditorID("hyper-link-edit"),isSingleChoice:!0,value:payloadInitial,onChange:handleRangeChange})}),type===LinkType.sheet&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.selectError"):"",children:jsxRuntimeExports.jsx(design.Select,{options:sheetsOption,value:payload,onChange:__name(newPayload=>{var _a15,_b;setPayload(newPayload);const label=(_a15=sheetsOption.find(i=>i.value===newPayload))==null?void 0:_a15.label,oldLabel=(_b=sheetsOption.find(i=>i.value===payload))==null?void 0:_b.label;label&&(setByPayload.current||!display||display===oldLabel)&&(setDisplay(label),setByPayload.current=!0)},"onChange")})}),type===LinkType.definedName&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.selectError"):"",children:jsxRuntimeExports.jsx(design.Select,{options:definedNames,value:payload,onChange:__name(newValue=>{var _a15,_b;setPayload(newValue);const label=(_a15=definedNames.find(i=>i.value===newValue))==null?void 0:_a15.label,oldLabel=(_b=definedNames.find(i=>i.value===payload))==null?void 0:_b.label;label&&(setByPayload.current||!display||display===oldLabel)&&(setDisplay(label),setByPayload.current=!0)},"onChange")})}),(customHyperLinkSidePanel==null?void 0:customHyperLinkSidePanel.Form)&&jsxRuntimeExports.jsx(customHyperLinkSidePanel.Form,{linkId:id,payload,display,showError,setByPayload,setDisplay:__name(newLink=>{setDisplay(newLink),setByPayload.current=!0},"setDisplay"),setPayload}),jsxRuntimeExports.jsxs("div",{className:styles$1.cellLinkEditButtons,children:[jsxRuntimeExports.jsx(design.Button,{onClick:__name(()=>{editing&&commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId:editing.unitId,subUnitId:editing.subUnitId}),commandService.executeCommand(CloseHyperLinkSidebarOperation.id)},"onClick"),children:localeService.t("hyperLink.form.cancel")}),jsxRuntimeExports.jsx(design.Button,{type:"primary",style:{marginLeft:8},onClick:__name(async()=>{if(!display||!payload||type===LinkType.link&&!isLegalLink(payload)){setShowError(!0);return}handleSubmit()},"onClick"),children:localeService.t("hyperLink.form.ok")})]})]})},"CellLinkEdit");CellLinkEdit.componentKey="univer.sheet.cell-link-edit";const OpenHyperLinkSidebarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.open-hyper-link-sidebar",handler(accessor,params){if(!params)return!1;const{unitId,subUnitId,row,column}=params,hyperLinkModel=accessor.get(sheetsHyperLink.HyperLinkModel),sidebarService=accessor.get(ui.ISidebarService),popupService=accessor.get(exports.SheetsHyperLinkPopupService),currentLink=hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,column);return popupService.startEditing(params),sidebarService.open({header:{title:currentLink?"hyperLink.form.editTitle":"hyperLink.form.addTitle"},children:{label:CellLinkEdit.componentKey}}),!0}},CloseHyperLinkSidebarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.close-hyper-link-sidebar",handler(accessor){const sidebarService=accessor.get(ui.ISidebarService),popupService=accessor.get(exports.SheetsHyperLinkPopupService);return sidebarService.close(),popupService.endEditing(),!0}},InsertHyperLinkOperation={type:core.CommandType.OPERATION,id:"sheet.operation.insert-hyper-link",handler(accessor){const univerInstanceService=accessor.get(core.IUniverInstanceService),target=sheets.getSheetCommandTarget(univerInstanceService);if(!target)return!1;const commandService=accessor.get(core.ICommandService),selection=accessor.get(sheets.SheetsSelectionsService).getCurrentLastSelection();if(!selection)return!1;const row=selection.primary.startRow,column=selection.primary.startColumn;return commandService.executeCommand(OpenHyperLinkSidebarOperation.id,{unitId:target.unitId,subUnitId:target.subUnitId,row,column})}},InsertHyperLinkToolbarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.insert-hyper-link-toolbar",handler(accessor){const commandService=accessor.get(core.ICommandService);return accessor.get(exports.SheetsHyperLinkPopupService).currentEditing?commandService.executeCommand(CloseHyperLinkSidebarOperation.id):commandService.executeCommand(InsertHyperLinkOperation.id)}},RemoveHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.remove-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id),{redos,undos}=sheetInterceptorService.onCommandExecute({id:RemoveHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params},undo={id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}},CancelHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.cancel-hyper-link",async handler(accessor,params){if(!params)return!1;const commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id),redo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params},undo={id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}};return(await core.sequenceExecuteAsync([redo],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo],undoMutations:[undo],unitID:unitId}),!0):!1}},cellLink="univer-cell-link",cellLinkType="univer-cell-link-type",cellLinkContent="univer-cell-link-content",cellLinkContentError="univer-cell-link-content-error",cellLinkUrl="univer-cell-link-url",cellLinkOperations="univer-cell-link-operations",cellLinkOperation="univer-cell-link-operation",cellLinkOperationError="univer-cell-link-operation-error",styles={cellLink,cellLinkType,cellLinkContent,cellLinkContentError,cellLinkUrl,cellLinkOperations,cellLinkOperation,cellLinkOperationError},iconsMap={outer:jsxRuntimeExports.jsx(LinkSingle,{}),link:jsxRuntimeExports.jsx(LinkSingle,{}),sheet:jsxRuntimeExports.jsx(Xlsx,{}),range:jsxRuntimeExports.jsx(AllBorderSingle,{}),defineName:jsxRuntimeExports.jsx(AllBorderSingle,{}),"range-error":jsxRuntimeExports.jsx(AllBorderSingle,{}),"sheet-error":jsxRuntimeExports.jsx(Xlsx,{})},CellLinkPopup=__name(()=>{const popupService=core.useDependency(exports.SheetsHyperLinkPopupService),hyperLinkModel=core.useDependency(sheetsHyperLink.HyperLinkModel),commandService=core.useDependency(core.ICommandService),messageService=core.useDependency(ui.IMessageService),localeService=core.useDependency(core.LocaleService),[currentPopup,setCurrentPopup]=require$$0.useState(null),resolverService=core.useDependency(exports.SheetsHyperLinkResolverService);if(require$$0.useEffect(()=>{setCurrentPopup(popupService.currentPopup);const ob=popupService.currentPopup$.subscribe(popup=>{setCurrentPopup(popup)});return()=>{ob.unsubscribe()}},[popupService.currentPopup,popupService.currentPopup$]),!currentPopup)return null;const{unitId,subUnitId,id}=currentPopup,link=hyperLinkModel.getHyperLink(unitId,subUnitId,id);if(!link)return null;const linkObj=resolverService.parseHyperLink(link.payload),isError=linkObj.type.indexOf("error")>-1;return jsxRuntimeExports.jsxs("div",{className:styles.cellLink,onClick:__name(()=>popupService.hideCurrentPopup(),"onClick"),children:[jsxRuntimeExports.jsxs("div",{className:cs(styles.cellLinkContent,{[styles.cellLinkContentError]:isError}),onClick:linkObj.handler,children:[jsxRuntimeExports.jsx("div",{className:styles.cellLinkType,children:iconsMap[linkObj.type]}),jsxRuntimeExports.jsx(design.Tooltip,{showIfEllipsis:!0,title:linkObj.name,children:jsxRuntimeExports.jsx("span",{className:styles.cellLinkUrl,children:linkObj.name})})]}),jsxRuntimeExports.jsxs("div",{className:styles.cellLinkOperations,children:[currentPopup.copyPermission&&jsxRuntimeExports.jsx("div",{className:cs(styles.cellLinkOperation,{[styles.cellLinkOperationError]:isError}),onClick:__name(()=>{if(!isError){if(linkObj.type!=="outer"){const url=new URL(window.location.href);url.hash=linkObj.url.slice(1),navigator.clipboard.writeText(url.href)}else navigator.clipboard.writeText(linkObj.url);messageService.show({content:localeService.t("hyperLink.message.coped"),type:design.MessageType.Info})}},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.copy"),children:jsxRuntimeExports.jsx(CopySingle,{})})}),currentPopup.editPermission&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("div",{className:styles.cellLinkOperation,onClick:__name(()=>{commandService.executeCommand(OpenHyperLinkSidebarOperation.id,{unitId,subUnitId,row:link.row,column:link.column})},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.edit"),children:jsxRuntimeExports.jsx(WriteSingle,{})})}),jsxRuntimeExports.jsx("div",{className:styles.cellLinkOperation,onClick:__name(()=>{commandService.executeCommand(CancelHyperLinkCommand.id,{unitId,subUnitId,id:link.id})},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.cancel"),children:jsxRuntimeExports.jsx(UnlinkSingle,{})})})]})]})]})},"CellLinkPopup");CellLinkPopup.componentKey="univer.sheet.cell-link-popup";var __defProp$a=Object.defineProperty,__getOwnPropDesc$a=Object.getOwnPropertyDescriptor,__decorateClass$a=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$a(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$a(target,key,result),result},"__decorateClass$a"),__decorateParam$a=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$a");const isEqualLink=__name((a,b)=>a.unitId===b.unitId&&a.subUnitId===b.subUnitId&&a.row===b.row&&a.col===b.col,"isEqualLink");var _a2;exports.SheetsHyperLinkPopupService=(_a2=class extends core.Disposable{constructor(_hyperLinkModel,_sheetCanvasPopManagerService){super();__publicField(this,"_currentPopup",null);__publicField(this,"_currentPopup$",new rxjs.Subject);__publicField(this,"currentPopup$",this._currentPopup$.asObservable());__publicField(this,"_currentEditing$",new rxjs.BehaviorSubject(null));__publicField(this,"currentEditing$",this._currentEditing$.asObservable());this._hyperLinkModel=_hyperLinkModel,this._sheetCanvasPopManagerService=_sheetCanvasPopManagerService,this.disposeWithMe(()=>{this.hideCurrentPopup(),this.endEditing(),this._currentEditing$.complete(),this._currentPopup$.complete()})}get currentPopup(){return this._currentPopup}get currentEditing(){return this._currentEditing$.getValue()}showPopup(location2){if(this._currentPopup&&isEqualLink(location2,this._currentPopup))return;this.hideCurrentPopup();const{unitId,subUnitId,row,col}=location2,link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);if(!link)return;const disposable=this._sheetCanvasPopManagerService.attachPopupToCell(row,col,{componentKey:CellLinkPopup.componentKey,direction:"bottom",closeOnSelfTarget:!0,onClickOutside:__name(()=>{this.hideCurrentPopup()},"onClickOutside")});disposable&&(this._currentPopup={unitId,subUnitId,id:link.id,disposable,row,col,editPermission:!!location2.editPermission,copyPermission:!!location2.copyPermission},this._currentPopup$.next(this._currentPopup))}hideCurrentPopup(){var _a14;this._currentPopup&&((_a14=this._currentPopup.disposable)==null||_a14.dispose(),this._currentPopup=null,this._currentPopup$.next(null))}startEditing(link){this._currentEditing$.next(link)}endEditing(){this._currentEditing$.next(null)}},__name(_a2,"SheetsHyperLinkPopupService"),_a2);exports.SheetsHyperLinkPopupService=__decorateClass$a([__decorateParam$a(0,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$a(1,core.Inject(sheetsUi.SheetCanvasPopManagerService))],exports.SheetsHyperLinkPopupService);const SHEET_HYPER_LINK_UI_PLUGIN="SHEET_HYPER_LINK_UI_PLUGIN";var __defProp$9=Object.defineProperty,__getOwnPropDesc$9=Object.getOwnPropertyDescriptor,__decorateClass$9=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$9(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$9(target,key,result),result},"__decorateClass$9"),__decorateParam$9=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$9"),_a3;exports.SheetsHyperLinkCopyPasteController=(_a3=class extends core.Disposable{constructor(_sheetClipboardService,_hyperLinkModel,_injector,_resolverService){super();__publicField(this,"_plainTextFilter",new Set);__publicField(this,"_copyInfo");this._sheetClipboardService=_sheetClipboardService,this._hyperLinkModel=_hyperLinkModel,this._injector=_injector,this._resolverService=_resolverService,this._initCopyPaste(),this.disposeWithMe(()=>{this._plainTextFilter.clear()})}registerPlainTextFilter(filter){this._plainTextFilter.add(filter)}removePlainTextFilter(filter){this._plainTextFilter.delete(filter)}_filterPlainText(text){return Array.from(this._plainTextFilter).every(filter=>filter(text))}_initCopyPaste(){this._sheetClipboardService.addClipboardHook({id:SHEET_HYPER_LINK_UI_PLUGIN,onBeforeCopy:__name((unitId,subUnitId,range)=>this._collect(unitId,subUnitId,range),"onBeforeCopy"),onPasteCells:__name((pasteFrom,pasteTo,data,payload)=>{const{copyType=sheetsUi.COPY_TYPE.COPY,pasteType}=payload,{range:copyRange}=pasteFrom||{},{range:pastedRange,unitId,subUnitId}=pasteTo;return this._generateMutations(pastedRange,{copyType,pasteType,copyRange,unitId,subUnitId})},"onPasteCells"),onPastePlainText:__name((pasteTo,clipText)=>{const filterResult=this._filterPlainText(clipText);if(isLegalLink(clipText)&&filterResult){const text=serializeUrl(clipText),{range,unitId,subUnitId}=pasteTo,{ranges:[pasteToRange],mapFunc}=sheetsUi.virtualizeDiscreteRanges([range]),redos=[],undos=[];return core.Range.foreach(pasteToRange,(originRow,originCol)=>{const{row,col:column}=mapFunc(originRow,originCol),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,column);link&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}});const newId=core.Tools.generateRandomId();redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{id:newId,row,column,payload:text}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:newId}}),link&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}})}),{redos,undos}}return{undos:[],redos:[]}},"onPastePlainText"),priority:99})}_collect(unitId,subUnitId,range){const matrix=new core.ObjectMatrix;this._copyInfo={unitId,subUnitId,matrix};const discreteRange=this._injector.invoke(accessor=>sheetsUi.rangeToDiscreteRange(range,accessor,unitId,subUnitId));if(!discreteRange)return;const{rows,cols}=discreteRange;rows.forEach((row,rowIndex)=>{cols.forEach((col,colIndex)=>{var _a14;const link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);matrix.setValue(rowIndex,colIndex,(_a14=link==null?void 0:link.id)!=null?_a14:"")})})}_generateMutations(pastedRange,copyInfo){if(!this._copyInfo)return{redos:[],undos:[]};if(!this._copyInfo||!this._copyInfo.matrix.getSizeOf()||!copyInfo.copyRange)return{redos:[],undos:[]};if([sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_COL_WIDTH,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_VALUE,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMAT,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMULA].includes(copyInfo.pasteType))return{redos:[],undos:[]};const{unitId,subUnitId}=this._copyInfo,redos=[],undos=[],{ranges:[vCopyRange,vPastedRange],mapFunc}=sheetsUi.virtualizeDiscreteRanges([copyInfo.copyRange,pastedRange]);return sheetsUi.getRepeatRange(vCopyRange,vPastedRange,!0).forEach(({startRange})=>{var _a14;(_a14=this._copyInfo)==null||_a14.matrix.forValue((row,col,ruleId)=>{const range=core.Rectangle.getPositionRange({startRow:row,endRow:row,startColumn:col,endColumn:col},startRange),oldLink=this._hyperLinkModel.getHyperLink(unitId,subUnitId,ruleId),{row:startRow,col:startColumn}=mapFunc(range.startRow,range.startColumn),currentLink=this._hyperLinkModel.getHyperLinkByLocation(copyInfo.unitId,copyInfo.subUnitId,startRow,startColumn),id=core.Tools.generateRandomId();currentLink&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,id:currentLink.id}}),oldLink&&(redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,link:{...oldLink,id,row:startRow,column:startColumn}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,id}})),currentLink&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,link:currentLink}})})}),{redos,undos}}},__name(_a3,"SheetsHyperLinkCopyPasteController"),_a3);exports.SheetsHyperLinkCopyPasteController=__decorateClass$9([core.OnLifecycle(core.LifecycleStages.Ready,exports.SheetsHyperLinkCopyPasteController),__decorateParam$9(0,sheetsUi.ISheetClipboardService),__decorateParam$9(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$9(2,core.Inject(core.Injector)),__decorateParam$9(3,core.Inject(exports.SheetsHyperLinkResolverService))],exports.SheetsHyperLinkCopyPasteController);var __defProp$8=Object.defineProperty,__getOwnPropDesc$8=Object.getOwnPropertyDescriptor,__decorateClass$8=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$8(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$8(target,key,result),result},"__decorateClass$8"),__decorateParam$8=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$8"),_a4;let SheetsHyperLinkRemoveSheetController=(_a4=class extends core.Disposable{constructor(_sheetInterceptorService,_univerInstanceService,_hyperLinkModel){super(),this._sheetInterceptorService=_sheetInterceptorService,this._univerInstanceService=_univerInstanceService,this._hyperLinkModel=_hyperLinkModel,this._initSheetChange()}_initSheetChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(commandInfo=>{var _a14;if(commandInfo.id===sheets.RemoveSheetCommand.id){const params=commandInfo.params,workbook=params.unitId?this._univerInstanceService.getUnit(params.unitId):this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return{redos:[],undos:[]};const unitId=workbook.getUnitId(),subUnitId=params.subUnitId||((_a14=workbook.getActiveSheet())==null?void 0:_a14.getSheetId());if(!subUnitId)return{redos:[],undos:[]};const links=this._hyperLinkModel.getSubUnit(unitId,subUnitId),redos=links.map(link=>({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}})),undos=links.map(link=>({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}));return{redos,undos}}return{redos:[],undos:[]}},"getMutations")}))}},__name(_a4,"SheetsHyperLinkRemoveSheetController"),_a4);SheetsHyperLinkRemoveSheetController=__decorateClass$8([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkRemoveSheetController),__decorateParam$8(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$8(1,core.IUniverInstanceService),__decorateParam$8(2,core.Inject(sheetsHyperLink.HyperLinkModel))],SheetsHyperLinkRemoveSheetController);var __defProp$7=Object.defineProperty,__getOwnPropDesc$7=Object.getOwnPropertyDescriptor,__decorateClass$7=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$7(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$7(target,key,result),result},"__decorateClass$7"),__decorateParam$7=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$7"),_a5;let SheetsHyperLinkRenderController=(_a5=class extends core.Disposable{constructor(_context,_hyperLinkModel,_sheetSkeletonManagerService,_renderManagerService){super(),this._context=_context,this._hyperLinkModel=_hyperLinkModel,this._sheetSkeletonManagerService=_sheetSkeletonManagerService,this._renderManagerService=_renderManagerService,this._initSkeletonChange()}_initSkeletonChange(){const markSkeletonDirty=__name(()=>{var _a14;const workbook=this._context.unit,unitId=workbook.getUnitId(),subUnitId=(_a14=workbook.getActiveSheet())==null?void 0:_a14.getSheetId();if(!subUnitId){console.warn("No active sheet found");return}const skeleton=this._sheetSkeletonManagerService.getOrCreateSkeleton({sheetId:subUnitId}),currentRender=this._renderManagerService.getRenderById(unitId);skeleton==null||skeleton.makeDirty(!0),skeleton==null||skeleton.calculate(),currentRender&¤tRender.mainComponent.makeForceDirty()},"markSkeletonDirty");this.disposeWithMe(this._hyperLinkModel.linkUpdate$.pipe(rxjs.debounceTime(16)).subscribe(()=>{markSkeletonDirty()}))}},__name(_a5,"SheetsHyperLinkRenderController"),_a5);SheetsHyperLinkRenderController=__decorateClass$7([__decorateParam$7(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$7(2,core.Inject(sheetsUi.SheetSkeletonManagerService)),__decorateParam$7(3,engineRender.IRenderManagerService)],SheetsHyperLinkRenderController);var _a6;let SheetsHyperLinkRenderManagerController=(_a6=class extends core.Disposable{constructor(_sheetInterceptorService,_hyperLinkModel,_themeService){super(),this._sheetInterceptorService=_sheetInterceptorService,this._hyperLinkModel=_hyperLinkModel,this._themeService=_themeService,this._initViewModelIntercept()}_initViewModelIntercept(){this.disposeWithMe(this._sheetInterceptorService.intercept(sheets.INTERCEPTOR_POINT.CELL_CONTENT,{handler:__name((cell,pos,next)=>{const{row,col,unitId,subUnitId}=pos,link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col),styleSheet=this._themeService.getCurrentTheme();return next(link?{...cell,interceptorStyle:{ul:{s:core.BooleanNumber.TRUE},cl:{rgb:styleSheet.blue500}}}:cell)},"handler"),priority:100}))}},__name(_a6,"SheetsHyperLinkRenderManagerController"),_a6);SheetsHyperLinkRenderManagerController=__decorateClass$7([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkRenderManagerController),__decorateParam$7(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$7(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$7(2,core.Inject(core.ThemeService))],SheetsHyperLinkRenderManagerController);var __defProp$6=Object.defineProperty,__getOwnPropDesc$6=Object.getOwnPropertyDescriptor,__decorateClass$6=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$6(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$6(target,key,result),result},"__decorateClass$6"),__decorateParam$6=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$6"),_a7;let SheetHyperLinkSetRangeController=(_a7=class extends core.Disposable{constructor(_sheetInterceptorService,_injector,_hyperLinkModel,_selectionManagerService,_univerInstanceService,_editorBridgeService){super(),this._sheetInterceptorService=_sheetInterceptorService,this._injector=_injector,this._hyperLinkModel=_hyperLinkModel,this._selectionManagerService=_selectionManagerService,this._univerInstanceService=_univerInstanceService,this._editorBridgeService=_editorBridgeService,this._initCommandInterceptor()}_initCommandInterceptor(){this._initAddHyperLinkCommandInterceptor(),this._initSetRangeValuesCommandInterceptor(),this._initUpdateHyperLinkCommandInterceptor(),this._initClearSelectionCommandInterceptor(),this._initRichTextEditorInterceptor()}_getCurrentCell(unitId,subUnitId,row,col){var _a14,_b;return(_b=(_a14=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET))==null?void 0:_a14.getSheetBySheetId(subUnitId))==null?void 0:_b.getCell(row,col)}_initAddHyperLinkCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{var _a14;if(command.id===AddHyperLinkCommand.id){const params=command.params,{unitId,subUnitId,link}=params,currentCell=this._getCurrentCell(unitId,subUnitId,link.row,link.column),redoParams={unitId,subUnitId,cellValue:{[link.row]:{[link.column]:{v:link.display,p:null,t:(_a14=currentCell==null?void 0:currentCell.t)!=null?_a14:void 0}}}};return{redos:[{id:sheets.SetRangeValuesMutation.id,params:redoParams}],undos:[{id:sheets.SetRangeValuesMutation.id,params:sheets.SetRangeValuesUndoMutationFactory(this._injector,redoParams)}]}}return{redos:[],undos:[]}},"getMutations")}))}_initUpdateHyperLinkCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===UpdateHyperLinkCommand.id){const params=command.params,{unitId,subUnitId,id,payload}=params,current=this._hyperLinkModel.getHyperLink(unitId,subUnitId,id);if(current&¤t.display!==payload.display){const redoParams={unitId,subUnitId,cellValue:{[current.row]:{[current.column]:{v:payload.display,t:core.CellValueType.STRING,p:null}}}};return{redos:[{id:sheets.SetRangeValuesMutation.id,params:redoParams}],undos:[{id:sheets.SetRangeValuesMutation.id,params:sheets.SetRangeValuesUndoMutationFactory(this._injector,redoParams)}]}}}return{redos:[],undos:[]}},"getMutations")}))}_initSetRangeValuesCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===sheets.SetRangeValuesCommand.id){const params=command.params,{unitId,subUnitId}=params,redos=[],undos=[];return params.cellValue&&new core.ObjectMatrix(params.cellValue).forValue((row,col,cell)=>{var _a14,_b,_c,_d,_e,_f,_g;const cellValueRaw=(_c=cell==null?void 0:cell.v)!=null?_c:(_b=(_a14=cell==null?void 0:cell.p)==null?void 0:_a14.body)==null?void 0:_b.dataStream.slice(0,-2),cellValue=(cellValueRaw!=null?cellValueRaw:"").toString(),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);if(!link){if(isLegalLink(cellValue)||(_d=cell==null?void 0:cell.custom)!=null&&_d.__link_url){const url=(_f=(_e=cell==null?void 0:cell.custom)==null?void 0:_e.__link_url)!=null?_f:cellValue,id=core.Tools.generateRandomId();undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id}}),redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{id,row,column:col,display:cellValue,payload:serializeUrl(url)}}})}return}(cellValueRaw===""||((_g=cell==null?void 0:cell.custom)==null?void 0:_g.__link_url)==="")&&(redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}}),undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}))}),{undos,redos}}return{redos:[],undos:[]}},"getMutations")}))}_initClearSelectionCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===sheets.ClearSelectionContentCommand.id||command.id===sheets.ClearSelectionAllCommand.id||command.id===sheets.ClearSelectionFormatCommand.id){const redos=[],undos=[],selection=this._selectionManagerService.getCurrentLastSelection(),target=sheets.getSheetCommandTarget(this._univerInstanceService);if(selection&&target){const{unitId,subUnitId}=target;core.Range.foreach(selection.range,(row,col)=>{const link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);link&&(redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}}),undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}))})}return{redos,undos}}return{redos:[],undos:[]}},"getMutations")}))}_initRichTextEditorInterceptor(){this.disposeWithMe(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().AFTER_CELL_EDIT,{handler:__name((data,context,next)=>{var _a14,_b,_c;if(data!=null&&data.p){const range=(_b=(_a14=data.p.body)==null?void 0:_a14.customRanges)==null?void 0:_b.find(i=>i.rangeType===core.CustomRangeType.HYPERLINK);if(range){const url=(_c=range.properties)==null?void 0:_c.url;return next({...data,p:null,v:docs.getPlainTextFormDocument(data.p),t:core.CellValueType.STRING,custom:{__link_url:url}})}}return next(data)},"handler")}))}},__name(_a7,"SheetHyperLinkSetRangeController"),_a7);SheetHyperLinkSetRangeController=__decorateClass$6([core.OnLifecycle(core.LifecycleStages.Starting,SheetHyperLinkSetRangeController),__decorateParam$6(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$6(1,core.Inject(core.Injector)),__decorateParam$6(2,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$6(3,core.Inject(sheets.SheetsSelectionsService)),__decorateParam$6(4,core.IUniverInstanceService),__decorateParam$6(5,sheetsUi.IEditorBridgeService)],SheetHyperLinkSetRangeController);var __defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$5"),_a8;let SheetsHyperLinkPopupController=(_a8=class extends core.Disposable{constructor(_hoverManagerService,_sheetsHyperLinkPopupService,_renderManagerService,_permissionService,_sheetPermissionInterceptorBaseController,_commandService){super(),this._hoverManagerService=_hoverManagerService,this._sheetsHyperLinkPopupService=_sheetsHyperLinkPopupService,this._renderManagerService=_renderManagerService,this._permissionService=_permissionService,this._sheetPermissionInterceptorBaseController=_sheetPermissionInterceptorBaseController,this._commandService=_commandService,this._initHoverListener(),this._initCommandListener()}_initHoverListener(){this.disposeWithMe(this._hoverManagerService.currentCell$.pipe(rxjs.debounceTime(200)).subscribe(currentCell=>{var _a14,_b;if(!currentCell){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}const skeleton=(_b=(_a14=this._renderManagerService.getRenderById(currentCell.location.unitId))==null?void 0:_a14.with(sheetsUi.SheetSkeletonManagerService).getWorksheetSkeleton(currentCell.location.subUnitId))==null?void 0:_b.skeleton,currentCol=currentCell.location.col,currentRow=currentCell.location.row;let targetRow=currentRow,targetCol=currentCol;if(skeleton&&skeleton.overflowCache.forValue((row,col,value)=>{core.Rectangle.contains(value,{startColumn:currentCol,endColumn:currentCol,startRow:currentRow,endRow:currentRow})&&(targetRow=row,targetCol=col)}),!this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookViewPermission],worksheetTypes:[sheets.WorksheetViewPermission],rangeTypes:[sheets.RangeProtectionPermissionViewPoint]},[{startRow:currentRow,startColumn:currentCol,endRow:currentRow,endColumn:currentCol}])){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}const editPermission=this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]},[{startRow:currentRow,startColumn:currentCol,endRow:currentRow,endColumn:currentCol}]),unitId=currentCell.location.unitId,subUnitId=currentCell.location.subUnitId,copyPermission=this._permissionService.composePermission([new sheets.WorkbookCopyPermission(unitId).id,new sheets.WorksheetCopyPermission(unitId,subUnitId).id]).every(permission=>permission.value);this._sheetsHyperLinkPopupService.showPopup({...currentCell.location,row:targetRow,col:targetCol,editPermission,copyPermission})}))}_initCommandListener(){const HIDE_COMMAND_LIST=[sheets.ClearSelectionContentCommand.id,sheets.ClearSelectionAllCommand.id,sheets.ClearSelectionFormatCommand.id];this.disposeWithMe(this._commandService.onCommandExecuted(command=>{HIDE_COMMAND_LIST.includes(command.id)&&this._sheetsHyperLinkPopupService.hideCurrentPopup()}))}},__name(_a8,"SheetsHyperLinkPopupController"),_a8);SheetsHyperLinkPopupController=__decorateClass$5([core.OnLifecycle(core.LifecycleStages.Rendered,SheetsHyperLinkPopupController),__decorateParam$5(0,core.Inject(sheetsUi.HoverManagerService)),__decorateParam$5(1,core.Inject(exports.SheetsHyperLinkPopupService)),__decorateParam$5(2,core.Inject(engineRender.IRenderManagerService)),__decorateParam$5(3,core.Inject(core.IPermissionService)),__decorateParam$5(4,core.Inject(sheetsUi.SheetPermissionInterceptorBaseController)),__decorateParam$5(5,core.ICommandService)],SheetsHyperLinkPopupController);const insertLinkMenuFactory=__name(accessor=>({id:InsertHyperLinkOperation.id,type:ui.MenuItemType.BUTTON,title:"hyperLink.menu.add",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),icon:"LinkSingle",disabled$:sheetsUi.getObservableWithExclusiveRange$(accessor,sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]}))}),"insertLinkMenuFactory"),insertLinkMenuToolbarFactory=__name(accessor=>({tooltip:"hyperLink.form.addTitle",id:InsertHyperLinkToolbarOperation.id,type:ui.MenuItemType.BUTTON,icon:"LinkSingle",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),disabled$:sheetsUi.getObservableWithExclusiveRange$(accessor,sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]}))}),"insertLinkMenuToolbarFactory"),InsertLinkShortcut={id:InsertHyperLinkToolbarOperation.id,binding:ui.KeyCode.K|ui.MetaKeys.CTRL_COMMAND,preconditions:sheetsUi.whenSheetEditorFocused},menuSchema={[ui.RibbonStartGroup.OTHERS]:{[InsertHyperLinkToolbarOperation.id]:{order:2,menuItemFactory:insertLinkMenuToolbarFactory}},[ui.ContextMenuPosition.MAIN_AREA]:{[ui.ContextMenuGroup.OTHERS]:{order:1,[InsertHyperLinkToolbarOperation.id]:{order:0,menuItemFactory:insertLinkMenuFactory}}}};var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$4"),_a9;let SheetsHyperLinkUIController=(_a9=class extends core.Disposable{constructor(_componentManager,_commandService,_menuManagerService,_injector,_shortcutService){super(),this._componentManager=_componentManager,this._commandService=_commandService,this._menuManagerService=_menuManagerService,this._injector=_injector,this._shortcutService=_shortcutService,this._initComponents(),this._initCommands(),this._initMenus(),this._initShortCut()}_initComponents(){[[CellLinkPopup,CellLinkPopup.componentKey],[CellLinkEdit,CellLinkEdit.componentKey],[LinkSingle,"LinkSingle"]].forEach(([comp,key])=>{this._componentManager.register(key,comp)})}_initCommands(){[OpenHyperLinkSidebarOperation,CloseHyperLinkSidebarOperation,InsertHyperLinkOperation,InsertHyperLinkToolbarOperation,AddHyperLinkCommand,UpdateHyperLinkCommand,RemoveHyperLinkCommand,CancelHyperLinkCommand].forEach(command=>{this._commandService.registerCommand(command)})}_initMenus(){this._menuManagerService.mergeMenu(menuSchema)}_initShortCut(){this._shortcutService.registerShortcut(InsertLinkShortcut)}},__name(_a9,"SheetsHyperLinkUIController"),_a9);SheetsHyperLinkUIController=__decorateClass$4([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkUIController),__decorateParam$4(0,core.Inject(ui.ComponentManager)),__decorateParam$4(1,core.ICommandService),__decorateParam$4(2,ui.IMenuManagerService),__decorateParam$4(3,core.Inject(core.Injector)),__decorateParam$4(4,core.Inject(ui.IShortcutService))],SheetsHyperLinkUIController);var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$3"),_a10;let SheetsHyperLinkAutoFillController=(_a10=class extends core.Disposable{constructor(_autoFillService,_hyperLinkModel){super(),this._autoFillService=_autoFillService,this._hyperLinkModel=_hyperLinkModel,this._initAutoFill()}_initAutoFill(){const noopReturnFunc=__name(()=>({redos:[],undos:[]}),"noopReturnFunc"),generalApplyFunc=__name((location2,applyType)=>{const{source:sourceRange,target:targetRange,unitId,subUnitId}=location2,virtualRange=sheetsUi.virtualizeDiscreteRanges([sourceRange,targetRange]),[vSourceRange,vTargetRange]=virtualRange.ranges,{mapFunc}=virtualRange,sourceStartCell={row:vSourceRange.startRow,col:vSourceRange.startColumn},repeats=sheetsUi.getAutoFillRepeatRange(vSourceRange,vTargetRange),redos=[],undos=[];return repeats.forEach(repeat=>{const targetStartCell=repeat.repeatStartCell,relativeRange=repeat.relativeRange,sourceRange2={startRow:sourceStartCell.row,startColumn:sourceStartCell.col,endColumn:sourceStartCell.col,endRow:sourceStartCell.row},targetRange2={startRow:targetStartCell.row,startColumn:targetStartCell.col,endColumn:targetStartCell.col,endRow:targetStartCell.row};core.Range.foreach(relativeRange,(row,col)=>{const sourcePositionRange=core.Rectangle.getPositionRange({startRow:row,startColumn:col,endColumn:col,endRow:row},sourceRange2),{row:sourceRow,col:sourceCol}=mapFunc(sourcePositionRange.startRow,sourcePositionRange.startColumn),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,sourceRow,sourceCol),targetPositionRange=core.Rectangle.getPositionRange({startRow:row,startColumn:col,endColumn:col,endRow:row},targetRange2),{row:targetRow,col:targetCol}=mapFunc(targetPositionRange.startRow,targetPositionRange.startColumn),id=core.Tools.generateRandomId(),currentLink=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,targetRow,targetCol);currentLink&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:currentLink.id}}),(sheetsUi.APPLY_TYPE.COPY===applyType||sheetsUi.APPLY_TYPE.SERIES===applyType)&&link&&(redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{...link,id,row:targetRow,column:targetCol}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id}})),currentLink&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:currentLink}})})}),{undos,redos}},"generalApplyFunc"),hook={id:SHEET_HYPER_LINK_UI_PLUGIN,onFillData:__name((location2,direction,applyType)=>applyType===sheetsUi.APPLY_TYPE.COPY||applyType===sheetsUi.APPLY_TYPE.ONLY_FORMAT||applyType===sheetsUi.APPLY_TYPE.SERIES?generalApplyFunc(location2,applyType):noopReturnFunc(),"onFillData")};this.disposeWithMe(this._autoFillService.addHook(hook))}},__name(_a10,"SheetsHyperLinkAutoFillController"),_a10);SheetsHyperLinkAutoFillController=__decorateClass$3([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkAutoFillController),__decorateParam$3(0,sheetsUi.IAutoFillService),__decorateParam$3(1,core.Inject(sheetsHyperLink.HyperLinkModel))],SheetsHyperLinkAutoFillController);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$2"),_a11;let SheetHyperLinkUrlController=(_a11=class extends core.Disposable{constructor(_resolverService){super(),this._resolverService=_resolverService,this._handleInitUrl()}_handleInitUrl(){const hash=location.hash;hash&&this._resolverService.parseHyperLink(hash).handler()}},__name(_a11,"SheetHyperLinkUrlController"),_a11);SheetHyperLinkUrlController=__decorateClass$2([core.OnLifecycle(core.LifecycleStages.Rendered,SheetHyperLinkUrlController),__decorateParam$2(0,core.Inject(exports.SheetsHyperLinkResolverService))],SheetHyperLinkUrlController);var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$1"),_a12;let SheetsHyperLinkPermissionController=(_a12=class extends core.Disposable{constructor(_localeService,_commandService,_sheetPermissionInterceptorBaseController){super(),this._localeService=_localeService,this._commandService=_commandService,this._sheetPermissionInterceptorBaseController=_sheetPermissionInterceptorBaseController,this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(command=>{command.id===InsertLinkShortcut.id&&(this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookEditablePermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission]})||this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.hyperLinkErr")))}))}},__name(_a12,"SheetsHyperLinkPermissionController"),_a12);SheetsHyperLinkPermissionController=__decorateClass$1([core.OnLifecycle(core.LifecycleStages.Rendered,SheetsHyperLinkPermissionController),__decorateParam$1(0,core.Inject(core.LocaleService)),__decorateParam$1(1,core.ICommandService),__decorateParam$1(2,core.Inject(sheetsUi.SheetPermissionInterceptorBaseController))],SheetsHyperLinkPermissionController);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__defNormalProp2=__name((obj,key,value)=>key in obj?__defProp2(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,"__defNormalProp"),__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam"),__publicField2=__name((obj,key,value)=>__defNormalProp2(obj,typeof key!="symbol"?key+"":key,value),"__publicField"),_a13;exports.UniverSheetsHyperLinkUIPlugin=(_a13=class extends core.Plugin{constructor(_config=defaultPluginConfig,_injector,_renderManagerService,_configService){super(),this._config=_config,this._injector=_injector,this._renderManagerService=_renderManagerService,this._configService=_configService;const{menu,...rest}=this._config;menu&&this._configService.setConfig("menu",menu,{merge:!0}),this._configService.setConfig(PLUGIN_CONFIG_KEY,rest)}onStarting(){[[exports.SheetsHyperLinkResolverService],[exports.SheetsHyperLinkPopupService],[SheetsHyperLinkSidePanelService],[SheetsHyperLinkRemoveSheetController],[SheetsHyperLinkRenderManagerController],[SheetHyperLinkSetRangeController],[SheetsHyperLinkPopupController],[SheetsHyperLinkUIController],[SheetsHyperLinkAutoFillController],[exports.SheetsHyperLinkCopyPasteController],[SheetsHyperLinkPermissionController],[SheetHyperLinkUrlController]].forEach(dep=>this._injector.add(dep))}onReady(){[[SheetsHyperLinkRenderController]].forEach(d=>this._renderManagerService.registerRenderModule(core.UniverInstanceType.UNIVER_SHEET,d))}},__name(_a13,"UniverSheetsHyperLinkUIPlugin"),_a13);__publicField2(exports.UniverSheetsHyperLinkUIPlugin,"pluginName",SHEET_HYPER_LINK_UI_PLUGIN);__publicField2(exports.UniverSheetsHyperLinkUIPlugin,"type",core.UniverInstanceType.UNIVER_SHEET);exports.UniverSheetsHyperLinkUIPlugin=__decorateClass([core.DependentOn(sheetsHyperLink.UniverSheetsHyperLinkPlugin),__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,engineRender.IRenderManagerService),__decorateParam(3,core.IConfigService)],exports.UniverSheetsHyperLinkUIPlugin);exports.AddHyperLinkCommand=AddHyperLinkCommand;exports.CancelHyperLinkCommand=CancelHyperLinkCommand;exports.CloseHyperLinkSidebarOperation=CloseHyperLinkSidebarOperation;exports.InsertHyperLinkOperation=InsertHyperLinkOperation;exports.InsertLinkShortcut=InsertLinkShortcut;exports.OpenHyperLinkSidebarOperation=OpenHyperLinkSidebarOperation;exports.RemoveHyperLinkCommand=RemoveHyperLinkCommand;exports.SheetsHyperLinkSidePanelService=SheetsHyperLinkSidePanelService;exports.UpdateHyperLinkCommand=UpdateHyperLinkCommand;
|
package/lib/es/index.js
CHANGED
|
@@ -2,18 +2,17 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value;
|
|
3
3
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: !0 });
|
|
4
4
|
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key != "symbol" ? key + "" : key, value);
|
|
5
|
-
import { Disposable, UniverInstanceType, isValidRange, Inject, LocaleService, RANGE_TYPE, Rectangle, IUniverInstanceService, ICommandService, Tools, DEFAULT_EMPTY_DOCUMENT_VALUE, CommandType, IUndoRedoService, sequenceExecuteAsync, useDependency, createInternalEditorID, Range, ObjectMatrix, OnLifecycle, LifecycleStages, Injector, BooleanNumber, ThemeService, CellValueType, CustomRangeType, IPermissionService, Plugin, DependentOn } from "@univerjs/core";
|
|
5
|
+
import { Disposable, UniverInstanceType, isValidRange, Inject, LocaleService, RANGE_TYPE, Rectangle, IUniverInstanceService, ICommandService, IConfigService, Tools, DEFAULT_EMPTY_DOCUMENT_VALUE, CommandType, IUndoRedoService, sequenceExecuteAsync, useDependency, createInternalEditorID, Range, ObjectMatrix, OnLifecycle, LifecycleStages, Injector, BooleanNumber, ThemeService, CellValueType, CustomRangeType, IPermissionService, Plugin, DependentOn } from "@univerjs/core";
|
|
6
6
|
import { ERROR_RANGE, AddHyperLinkMutation, RemoveHyperLinkMutation, HyperLinkModel, UpdateHyperLinkMutation, UniverSheetsHyperLinkPlugin } from "@univerjs/sheets-hyper-link";
|
|
7
|
-
import { ScrollToRangeOperation, SheetCanvasPopManagerService, COPY_TYPE, virtualizeDiscreteRanges, rangeToDiscreteRange, PREDEFINED_HOOK_NAME, getRepeatRange, ISheetClipboardService, SheetSkeletonManagerService, IEditorBridgeService, HoverManagerService, SheetPermissionInterceptorBaseController, whenSheetEditorFocused, getCurrentRangeDisable$, APPLY_TYPE, IAutoFillService, getAutoFillRepeatRange } from "@univerjs/sheets-ui";
|
|
7
|
+
import { ScrollToRangeOperation, SheetCanvasPopManagerService, COPY_TYPE, virtualizeDiscreteRanges, rangeToDiscreteRange, PREDEFINED_HOOK_NAME, getRepeatRange, ISheetClipboardService, SheetSkeletonManagerService, IEditorBridgeService, HoverManagerService, SheetPermissionInterceptorBaseController, whenSheetEditorFocused, getObservableWithExclusiveRange$, getCurrentRangeDisable$, APPLY_TYPE, IAutoFillService, getAutoFillRepeatRange } from "@univerjs/sheets-ui";
|
|
8
8
|
import { Subject, BehaviorSubject, debounceTime } from "rxjs";
|
|
9
9
|
import require$$0, { forwardRef, useRef, createElement, useState, useMemo, useEffect } from "react";
|
|
10
10
|
import cs from "clsx";
|
|
11
11
|
import { MessageType, FormLayout, Input, Select, Button, Tooltip } from "@univerjs/design";
|
|
12
|
-
import { IMessageService, useObservable, useEvent, RangeSelector, ISidebarService, KeyCode, MetaKeys, MenuItemType,
|
|
12
|
+
import { IMessageService, useObservable, useEvent, RangeSelector, ISidebarService, KeyCode, MetaKeys, MenuItemType, getMenuHiddenObservable, RibbonStartGroup, ContextMenuPosition, ContextMenuGroup, ComponentManager, IShortcutService, IMenuManagerService } from "@univerjs/ui";
|
|
13
13
|
import { deserializeRangeWithSheet, serializeRangeWithSheet, IDefinedNamesService, serializeRangeToRefString, serializeRange } from "@univerjs/engine-formula";
|
|
14
14
|
import { SetSelectionsOperation, SetWorksheetActiveOperation, SheetInterceptorService, getSheetCommandTarget, SheetsSelectionsService, RemoveSheetCommand, INTERCEPTOR_POINT, SetRangeValuesMutation, SetRangeValuesUndoMutationFactory, SetRangeValuesCommand, ClearSelectionContentCommand, ClearSelectionAllCommand, ClearSelectionFormatCommand, WorkbookViewPermission, WorksheetViewPermission, RangeProtectionPermissionViewPoint, WorkbookEditablePermission, WorksheetEditPermission, WorksheetInsertHyperlinkPermission, RangeProtectionPermissionEditPoint, WorkbookCopyPermission, WorksheetCopyPermission, WorksheetSetCellValuePermission } from "@univerjs/sheets";
|
|
15
15
|
import { IRenderManagerService } from "@univerjs/engine-render";
|
|
16
|
-
import { DOC_HYPER_LINK_PLUGIN } from "@univerjs/docs-hyper-link";
|
|
17
16
|
import { getPlainTextFormDocument } from "@univerjs/docs";
|
|
18
17
|
var LinkType = /* @__PURE__ */ ((LinkType2) => (LinkType2.link = "link", LinkType2.range = "range", LinkType2.sheet = "gid", LinkType2.definedName = "rangeid", LinkType2))(LinkType || {});
|
|
19
18
|
const _SheetsHyperLinkSidePanelService = class _SheetsHyperLinkSidePanelService extends Disposable {
|
|
@@ -164,6 +163,7 @@ var element = { tag: "svg", attrs: { fill: "none", viewBox: "0 0 16 16", width:
|
|
|
164
163
|
}));
|
|
165
164
|
});
|
|
166
165
|
Xlsx.displayName = "Xlsx";
|
|
166
|
+
const PLUGIN_CONFIG_KEY = "sheets-hyper-link-ui.config", defaultPluginConfig = {};
|
|
167
167
|
var __defProp$b = Object.defineProperty, __getOwnPropDesc$b = Object.getOwnPropertyDescriptor, __decorateClass$b = /* @__PURE__ */ __name((decorators, target, key, kind) => {
|
|
168
168
|
for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$b(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
|
|
169
169
|
(decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
|
|
@@ -181,8 +181,8 @@ function getContainRange(range, worksheet) {
|
|
|
181
181
|
__name(getContainRange, "getContainRange");
|
|
182
182
|
var _a;
|
|
183
183
|
let SheetsHyperLinkResolverService = (_a = class {
|
|
184
|
-
constructor(
|
|
185
|
-
this.
|
|
184
|
+
constructor(_univerInstanceService, _commandService, _definedNamesService, _messageService, _localeService, _configService) {
|
|
185
|
+
this._univerInstanceService = _univerInstanceService, this._commandService = _commandService, this._definedNamesService = _definedNamesService, this._messageService = _messageService, this._localeService = _localeService, this._configService = _configService;
|
|
186
186
|
}
|
|
187
187
|
_getURLName(params) {
|
|
188
188
|
var _a14;
|
|
@@ -325,17 +325,19 @@ let SheetsHyperLinkResolverService = (_a = class {
|
|
|
325
325
|
}
|
|
326
326
|
async navigateToOtherWebsite(url) {
|
|
327
327
|
var _a14;
|
|
328
|
-
|
|
329
|
-
|
|
328
|
+
const config = this._configService.getConfig(PLUGIN_CONFIG_KEY);
|
|
329
|
+
if ((_a14 = config == null ? void 0 : config.urlHandler) != null && _a14.navigateToOtherWebsite)
|
|
330
|
+
return config.urlHandler.navigateToOtherWebsite(url);
|
|
330
331
|
window.open(url, "_blank", "noopener noreferrer");
|
|
331
332
|
}
|
|
332
333
|
}, __name(_a, "SheetsHyperLinkResolverService"), _a);
|
|
333
334
|
SheetsHyperLinkResolverService = __decorateClass$b([
|
|
334
|
-
__decorateParam$b(
|
|
335
|
-
__decorateParam$b(
|
|
336
|
-
__decorateParam$b(
|
|
337
|
-
__decorateParam$b(
|
|
338
|
-
__decorateParam$b(
|
|
335
|
+
__decorateParam$b(0, IUniverInstanceService),
|
|
336
|
+
__decorateParam$b(1, ICommandService),
|
|
337
|
+
__decorateParam$b(2, IDefinedNamesService),
|
|
338
|
+
__decorateParam$b(3, IMessageService),
|
|
339
|
+
__decorateParam$b(4, Inject(LocaleService)),
|
|
340
|
+
__decorateParam$b(5, IConfigService)
|
|
339
341
|
], SheetsHyperLinkResolverService);
|
|
340
342
|
function isLegalLink(link) {
|
|
341
343
|
return Tools.isLegalUrl(link);
|
|
@@ -1439,11 +1441,11 @@ let SheetHyperLinkSetRangeController = (_a7 = class extends Disposable {
|
|
|
1439
1441
|
this._editorBridgeService.interceptor.getInterceptPoints().AFTER_CELL_EDIT,
|
|
1440
1442
|
{
|
|
1441
1443
|
handler: /* @__PURE__ */ __name((data, context, next) => {
|
|
1442
|
-
var _a14, _b, _c
|
|
1444
|
+
var _a14, _b, _c;
|
|
1443
1445
|
if (data != null && data.p) {
|
|
1444
|
-
const range = (_b = (_a14 = data.p.body) == null ? void 0 : _a14.customRanges) == null ? void 0 : _b.find((i) => i.rangeType === CustomRangeType.HYPERLINK)
|
|
1445
|
-
if (range
|
|
1446
|
-
const
|
|
1446
|
+
const range = (_b = (_a14 = data.p.body) == null ? void 0 : _a14.customRanges) == null ? void 0 : _b.find((i) => i.rangeType === CustomRangeType.HYPERLINK);
|
|
1447
|
+
if (range) {
|
|
1448
|
+
const url = (_c = range.properties) == null ? void 0 : _c.url;
|
|
1447
1449
|
return next({
|
|
1448
1450
|
...data,
|
|
1449
1451
|
p: null,
|
|
@@ -1534,24 +1536,37 @@ SheetsHyperLinkPopupController = __decorateClass$5([
|
|
|
1534
1536
|
const insertLinkMenuFactory = /* @__PURE__ */ __name((accessor) => ({
|
|
1535
1537
|
id: InsertHyperLinkOperation.id,
|
|
1536
1538
|
type: MenuItemType.BUTTON,
|
|
1537
|
-
positions: [MenuPosition.CONTEXT_MENU],
|
|
1538
1539
|
title: "hyperLink.menu.add",
|
|
1539
1540
|
hidden$: getMenuHiddenObservable(accessor, UniverInstanceType.UNIVER_SHEET),
|
|
1540
1541
|
icon: "LinkSingle",
|
|
1541
|
-
disabled$: getCurrentRangeDisable$(accessor, { workbookTypes: [WorkbookEditablePermission], worksheetTypes: [WorksheetEditPermission, WorksheetSetCellValuePermission, WorksheetInsertHyperlinkPermission], rangeTypes: [RangeProtectionPermissionEditPoint] })
|
|
1542
|
+
disabled$: getObservableWithExclusiveRange$(accessor, getCurrentRangeDisable$(accessor, { workbookTypes: [WorkbookEditablePermission], worksheetTypes: [WorksheetEditPermission, WorksheetSetCellValuePermission, WorksheetInsertHyperlinkPermission], rangeTypes: [RangeProtectionPermissionEditPoint] }))
|
|
1542
1543
|
}), "insertLinkMenuFactory"), insertLinkMenuToolbarFactory = /* @__PURE__ */ __name((accessor) => ({
|
|
1543
1544
|
tooltip: "hyperLink.form.addTitle",
|
|
1544
|
-
positions: MenuPosition.TOOLBAR_START,
|
|
1545
|
-
group: MenuGroup.TOOLBAR_OTHERS,
|
|
1546
1545
|
id: InsertHyperLinkToolbarOperation.id,
|
|
1547
1546
|
type: MenuItemType.BUTTON,
|
|
1548
1547
|
icon: "LinkSingle",
|
|
1549
1548
|
hidden$: getMenuHiddenObservable(accessor, UniverInstanceType.UNIVER_SHEET),
|
|
1550
|
-
disabled$: getCurrentRangeDisable$(accessor, { workbookTypes: [WorkbookEditablePermission], worksheetTypes: [WorksheetEditPermission, WorksheetSetCellValuePermission, WorksheetInsertHyperlinkPermission], rangeTypes: [RangeProtectionPermissionEditPoint] })
|
|
1549
|
+
disabled$: getObservableWithExclusiveRange$(accessor, getCurrentRangeDisable$(accessor, { workbookTypes: [WorkbookEditablePermission], worksheetTypes: [WorksheetEditPermission, WorksheetSetCellValuePermission, WorksheetInsertHyperlinkPermission], rangeTypes: [RangeProtectionPermissionEditPoint] }))
|
|
1551
1550
|
}), "insertLinkMenuToolbarFactory"), InsertLinkShortcut = {
|
|
1552
1551
|
id: InsertHyperLinkToolbarOperation.id,
|
|
1553
1552
|
binding: KeyCode.K | MetaKeys.CTRL_COMMAND,
|
|
1554
1553
|
preconditions: whenSheetEditorFocused
|
|
1554
|
+
}, menuSchema = {
|
|
1555
|
+
[RibbonStartGroup.OTHERS]: {
|
|
1556
|
+
[InsertHyperLinkToolbarOperation.id]: {
|
|
1557
|
+
order: 2,
|
|
1558
|
+
menuItemFactory: insertLinkMenuToolbarFactory
|
|
1559
|
+
}
|
|
1560
|
+
},
|
|
1561
|
+
[ContextMenuPosition.MAIN_AREA]: {
|
|
1562
|
+
[ContextMenuGroup.OTHERS]: {
|
|
1563
|
+
order: 1,
|
|
1564
|
+
[InsertHyperLinkToolbarOperation.id]: {
|
|
1565
|
+
order: 0,
|
|
1566
|
+
menuItemFactory: insertLinkMenuFactory
|
|
1567
|
+
}
|
|
1568
|
+
}
|
|
1569
|
+
}
|
|
1555
1570
|
};
|
|
1556
1571
|
var __defProp$4 = Object.defineProperty, __getOwnPropDesc$4 = Object.getOwnPropertyDescriptor, __decorateClass$4 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
|
|
1557
1572
|
for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$4(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
|
|
@@ -1559,8 +1574,8 @@ var __defProp$4 = Object.defineProperty, __getOwnPropDesc$4 = Object.getOwnPrope
|
|
|
1559
1574
|
return kind && result && __defProp$4(target, key, result), result;
|
|
1560
1575
|
}, "__decorateClass$4"), __decorateParam$4 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$4"), _a9;
|
|
1561
1576
|
let SheetsHyperLinkUIController = (_a9 = class extends Disposable {
|
|
1562
|
-
constructor(
|
|
1563
|
-
super(), this.
|
|
1577
|
+
constructor(_componentManager, _commandService, _menuManagerService, _injector, _shortcutService) {
|
|
1578
|
+
super(), this._componentManager = _componentManager, this._commandService = _commandService, this._menuManagerService = _menuManagerService, this._injector = _injector, this._shortcutService = _shortcutService, this._initComponents(), this._initCommands(), this._initMenus(), this._initShortCut();
|
|
1564
1579
|
}
|
|
1565
1580
|
_initComponents() {
|
|
1566
1581
|
[
|
|
@@ -1586,8 +1601,7 @@ let SheetsHyperLinkUIController = (_a9 = class extends Disposable {
|
|
|
1586
1601
|
});
|
|
1587
1602
|
}
|
|
1588
1603
|
_initMenus() {
|
|
1589
|
-
|
|
1590
|
-
this._menuService.addMenuItem(insertLinkMenuFactory(this._injector), (_b = (_a14 = this._config) == null ? void 0 : _a14.menu) != null ? _b : {}), this._menuService.addMenuItem(insertLinkMenuToolbarFactory(this._injector), (_d = (_c = this._config) == null ? void 0 : _c.menu) != null ? _d : {});
|
|
1604
|
+
this._menuManagerService.mergeMenu(menuSchema);
|
|
1591
1605
|
}
|
|
1592
1606
|
_initShortCut() {
|
|
1593
1607
|
this._shortcutService.registerShortcut(InsertLinkShortcut);
|
|
@@ -1595,12 +1609,11 @@ let SheetsHyperLinkUIController = (_a9 = class extends Disposable {
|
|
|
1595
1609
|
}, __name(_a9, "SheetsHyperLinkUIController"), _a9);
|
|
1596
1610
|
SheetsHyperLinkUIController = __decorateClass$4([
|
|
1597
1611
|
OnLifecycle(LifecycleStages.Ready, SheetsHyperLinkUIController),
|
|
1598
|
-
__decorateParam$4(
|
|
1599
|
-
__decorateParam$4(
|
|
1600
|
-
__decorateParam$4(
|
|
1601
|
-
__decorateParam$4(
|
|
1602
|
-
__decorateParam$4(
|
|
1603
|
-
__decorateParam$4(6, Inject(IShortcutService))
|
|
1612
|
+
__decorateParam$4(0, Inject(ComponentManager)),
|
|
1613
|
+
__decorateParam$4(1, ICommandService),
|
|
1614
|
+
__decorateParam$4(2, IMenuManagerService),
|
|
1615
|
+
__decorateParam$4(3, Inject(Injector)),
|
|
1616
|
+
__decorateParam$4(4, Inject(IShortcutService))
|
|
1604
1617
|
], SheetsHyperLinkUIController);
|
|
1605
1618
|
var __defProp$3 = Object.defineProperty, __getOwnPropDesc$3 = Object.getOwnPropertyDescriptor, __decorateClass$3 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
|
|
1606
1619
|
for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$3(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
|
|
@@ -1750,32 +1763,21 @@ var __defProp2 = Object.defineProperty, __getOwnPropDesc = Object.getOwnProperty
|
|
|
1750
1763
|
return kind && result && __defProp2(target, key, result), result;
|
|
1751
1764
|
}, "__decorateClass"), __decorateParam = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam"), __publicField2 = /* @__PURE__ */ __name((obj, key, value) => __defNormalProp2(obj, typeof key != "symbol" ? key + "" : key, value), "__publicField"), _a13;
|
|
1752
1765
|
let UniverSheetsHyperLinkUIPlugin = (_a13 = class extends Plugin {
|
|
1753
|
-
constructor(_config, _injector, _renderManagerService) {
|
|
1754
|
-
super(), this._config = _config, this._injector = _injector, this._renderManagerService = _renderManagerService;
|
|
1766
|
+
constructor(_config = defaultPluginConfig, _injector, _renderManagerService, _configService) {
|
|
1767
|
+
super(), this._config = _config, this._injector = _injector, this._renderManagerService = _renderManagerService, this._configService = _configService;
|
|
1768
|
+
const { menu, ...rest } = this._config;
|
|
1769
|
+
menu && this._configService.setConfig("menu", menu, { merge: !0 }), this._configService.setConfig(PLUGIN_CONFIG_KEY, rest);
|
|
1755
1770
|
}
|
|
1756
1771
|
onStarting() {
|
|
1757
1772
|
[
|
|
1758
|
-
[
|
|
1759
|
-
SheetsHyperLinkResolverService,
|
|
1760
|
-
{
|
|
1761
|
-
useFactory: /* @__PURE__ */ __name(() => {
|
|
1762
|
-
var _a14;
|
|
1763
|
-
return this._injector.createInstance(SheetsHyperLinkResolverService, (_a14 = this._config) == null ? void 0 : _a14.urlHandler);
|
|
1764
|
-
}, "useFactory")
|
|
1765
|
-
}
|
|
1766
|
-
],
|
|
1773
|
+
[SheetsHyperLinkResolverService],
|
|
1767
1774
|
[SheetsHyperLinkPopupService],
|
|
1768
1775
|
[SheetsHyperLinkSidePanelService],
|
|
1769
1776
|
[SheetsHyperLinkRemoveSheetController],
|
|
1770
1777
|
[SheetsHyperLinkRenderManagerController],
|
|
1771
1778
|
[SheetHyperLinkSetRangeController],
|
|
1772
1779
|
[SheetsHyperLinkPopupController],
|
|
1773
|
-
[
|
|
1774
|
-
SheetsHyperLinkUIController,
|
|
1775
|
-
{
|
|
1776
|
-
useFactory: /* @__PURE__ */ __name(() => this._injector.createInstance(SheetsHyperLinkUIController, this._config), "useFactory")
|
|
1777
|
-
}
|
|
1778
|
-
],
|
|
1780
|
+
[SheetsHyperLinkUIController],
|
|
1779
1781
|
[SheetsHyperLinkAutoFillController],
|
|
1780
1782
|
[SheetsHyperLinkCopyPasteController],
|
|
1781
1783
|
[SheetsHyperLinkPermissionController],
|
|
@@ -1793,7 +1795,8 @@ __publicField2(UniverSheetsHyperLinkUIPlugin, "type", UniverInstanceType.UNIVER_
|
|
|
1793
1795
|
UniverSheetsHyperLinkUIPlugin = __decorateClass([
|
|
1794
1796
|
DependentOn(UniverSheetsHyperLinkPlugin),
|
|
1795
1797
|
__decorateParam(1, Inject(Injector)),
|
|
1796
|
-
__decorateParam(2, IRenderManagerService)
|
|
1798
|
+
__decorateParam(2, IRenderManagerService),
|
|
1799
|
+
__decorateParam(3, IConfigService)
|
|
1797
1800
|
], UniverSheetsHyperLinkUIPlugin);
|
|
1798
1801
|
export {
|
|
1799
1802
|
AddHyperLinkCommand,
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { MenuConfig } from '@univerjs/ui';
|
|
2
|
+
export declare const PLUGIN_CONFIG_KEY = "sheets-hyper-link-ui.config";
|
|
3
|
+
export declare const configSymbol: unique symbol;
|
|
2
4
|
export interface IUrlHandler {
|
|
3
5
|
navigateToOtherWebsite?: (url: string) => void;
|
|
4
6
|
}
|
|
@@ -6,3 +8,4 @@ export interface IUniverSheetsHyperLinkUIConfig {
|
|
|
6
8
|
menu?: MenuConfig;
|
|
7
9
|
urlHandler?: IUrlHandler;
|
|
8
10
|
}
|
|
11
|
+
export declare const defaultPluginConfig: IUniverSheetsHyperLinkUIConfig;
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import { IMenuItem, IShortcutItem,
|
|
1
|
+
import { IMenuItem, IShortcutItem, MenuItemType } from '@univerjs/ui';
|
|
2
2
|
import { IAccessor } from '@univerjs/core';
|
|
3
3
|
export declare const insertLinkMenuFactory: (accessor: IAccessor) => IMenuItem;
|
|
4
4
|
export declare const insertLinkMenuToolbarFactory: (accessor: IAccessor) => {
|
|
5
5
|
tooltip: string;
|
|
6
|
-
positions: MenuPosition;
|
|
7
|
-
group: MenuGroup;
|
|
8
6
|
id: string;
|
|
9
7
|
type: MenuItemType;
|
|
10
8
|
icon: string;
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ComponentManager,
|
|
3
|
-
import { IUniverSheetsHyperLinkUIConfig } from '../types/interfaces/i-config';
|
|
1
|
+
import { Disposable, ICommandService, Injector } from '@univerjs/core';
|
|
2
|
+
import { ComponentManager, IMenuManagerService, IShortcutService } from '@univerjs/ui';
|
|
4
3
|
export declare class SheetsHyperLinkUIController extends Disposable {
|
|
5
|
-
private _config;
|
|
6
4
|
private _componentManager;
|
|
7
5
|
private _commandService;
|
|
8
|
-
private
|
|
9
|
-
private _menuService;
|
|
6
|
+
private readonly _menuManagerService;
|
|
10
7
|
private _injector;
|
|
11
8
|
private _shortcutService;
|
|
12
|
-
constructor(
|
|
9
|
+
constructor(_componentManager: ComponentManager, _commandService: ICommandService, _menuManagerService: IMenuManagerService, _injector: Injector, _shortcutService: IShortcutService);
|
|
13
10
|
private _initComponents;
|
|
14
11
|
private _initCommands;
|
|
15
12
|
private _initMenus;
|
package/lib/types/index.d.ts
CHANGED
|
@@ -19,7 +19,6 @@ export { SheetsHyperLinkResolverService } from './services/resolver.service';
|
|
|
19
19
|
export { SheetsHyperLinkCopyPasteController } from './controllers/copy-paste.controller';
|
|
20
20
|
export { UniverSheetsHyperLinkUIPlugin } from './plugin';
|
|
21
21
|
export { InsertLinkShortcut } from './controllers/menu';
|
|
22
|
-
export type { IUrlHandler, IUniverSheetsHyperLinkUIConfig } from './types/interfaces/i-config';
|
|
23
22
|
export { OpenHyperLinkSidebarOperation, InsertHyperLinkOperation, CloseHyperLinkSidebarOperation, type IOpenHyperLinkSidebarOperationParams, } from './commands/operations/sidebar.operations';
|
|
24
23
|
export { AddHyperLinkCommand, type IAddHyperLinkCommandParams } from './commands/commands/add-hyper-link.command';
|
|
25
24
|
export { RemoveHyperLinkCommand, CancelHyperLinkCommand, type IRemoveHyperLinkCommandParams } from './commands/commands/remove-hyper-link.command';
|
package/lib/types/plugin.d.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IConfigService, Injector, Plugin, UniverInstanceType } from '@univerjs/core';
|
|
2
2
|
import { IRenderManagerService } from '@univerjs/engine-render';
|
|
3
|
-
import { IUniverSheetsHyperLinkUIConfig } from './
|
|
3
|
+
import { IUniverSheetsHyperLinkUIConfig } from './controllers/config.schema';
|
|
4
4
|
export declare class UniverSheetsHyperLinkUIPlugin extends Plugin {
|
|
5
|
-
private _config;
|
|
5
|
+
private readonly _config;
|
|
6
6
|
protected _injector: Injector;
|
|
7
7
|
private readonly _renderManagerService;
|
|
8
|
+
private readonly _configService;
|
|
8
9
|
static pluginName: string;
|
|
9
10
|
static type: UniverInstanceType;
|
|
10
|
-
constructor(_config:
|
|
11
|
+
constructor(_config: Partial<IUniverSheetsHyperLinkUIConfig>, _injector: Injector, _renderManagerService: IRenderManagerService, _configService: IConfigService);
|
|
11
12
|
onStarting(): void;
|
|
12
13
|
onReady(): void;
|
|
13
14
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { IRange,
|
|
1
|
+
import { IRange, Worksheet, ICommandService, IConfigService, IUniverInstanceService, LocaleService } from '@univerjs/core';
|
|
2
2
|
import { IDefinedNamesService } from '@univerjs/engine-formula';
|
|
3
3
|
import { IMessageService } from '@univerjs/ui';
|
|
4
|
-
import { IUrlHandler } from '../types/interfaces/i-config';
|
|
5
4
|
interface ISheetUrlParams {
|
|
6
5
|
gid?: string;
|
|
7
6
|
range?: string;
|
|
@@ -14,13 +13,13 @@ export interface IHyperLinkInfo<T extends string> {
|
|
|
14
13
|
handler: () => void;
|
|
15
14
|
}
|
|
16
15
|
export declare class SheetsHyperLinkResolverService {
|
|
17
|
-
private _urlHandler;
|
|
18
16
|
private _univerInstanceService;
|
|
19
17
|
private _commandService;
|
|
20
18
|
private _definedNamesService;
|
|
21
19
|
private _messageService;
|
|
22
20
|
private _localeService;
|
|
23
|
-
|
|
21
|
+
private _configService;
|
|
22
|
+
constructor(_univerInstanceService: IUniverInstanceService, _commandService: ICommandService, _definedNamesService: IDefinedNamesService, _messageService: IMessageService, _localeService: LocaleService, _configService: IConfigService);
|
|
24
23
|
private _getURLName;
|
|
25
24
|
navigateTo(params: ISheetUrlParams): void;
|
|
26
25
|
parseHyperLink(urlStr: string): {
|
package/lib/umd/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(global,factory){typeof exports=="object"&&typeof module<"u"?factory(exports,require("@univerjs/core"),require("@univerjs/sheets-hyper-link"),require("@univerjs/sheets-ui"),require("rxjs"),require("react"),require("clsx"),require("@univerjs/design"),require("@univerjs/ui"),require("@univerjs/engine-formula"),require("@univerjs/sheets"),require("@univerjs/engine-render"),require("@univerjs/docs
|
|
1
|
+
(function(global,factory){typeof exports=="object"&&typeof module<"u"?factory(exports,require("@univerjs/core"),require("@univerjs/sheets-hyper-link"),require("@univerjs/sheets-ui"),require("rxjs"),require("react"),require("clsx"),require("@univerjs/design"),require("@univerjs/ui"),require("@univerjs/engine-formula"),require("@univerjs/sheets"),require("@univerjs/engine-render"),require("@univerjs/docs")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/sheets-hyper-link","@univerjs/sheets-ui","rxjs","react","clsx","@univerjs/design","@univerjs/ui","@univerjs/engine-formula","@univerjs/sheets","@univerjs/engine-render","@univerjs/docs"],factory):(global=typeof globalThis<"u"?globalThis:global||self,factory(global.UniverSheetsHyperLinkUi={},global.UniverCore,global.UniverSheetsHyperLink,global.UniverSheetsUi,global.rxjs,global.React,global.clsx,global.UniverDesign,global.UniverUi,global.UniverEngineFormula,global.UniverSheets,global.UniverEngineRender,global.UniverDocs))})(this,function(exports2,core,sheetsHyperLink,sheetsUi,rxjs,require$$0,cs,design,ui,engineFormula,sheets,engineRender,docs){"use strict";var __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);var _a,_b,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l,_m;var LinkType=(LinkType2=>(LinkType2.link="link",LinkType2.range="range",LinkType2.sheet="gid",LinkType2.definedName="rangeid",LinkType2))(LinkType||{});const _SheetsHyperLinkSidePanelService=class _SheetsHyperLinkSidePanelService extends core.Disposable{constructor(){super(...arguments);__publicField(this,"_customHyperLinks",new Map)}isBuiltInLinkType(type){return!!LinkType[type]}getOptions(){return Array.from(this._customHyperLinks.values()).map(({option})=>option)}findCustomHyperLink(link){return Array.from(this._customHyperLinks.values()).find(item=>item.match(link))}registerCustomHyperLink(customHyperLink){this._customHyperLinks.set(customHyperLink.type,customHyperLink)}getCustomHyperLink(type){return this._customHyperLinks.get(type)}removeCustomHyperLink(type){const{_customHyperLinks}=this;_customHyperLinks.delete(type)}dispose(){super.dispose(),this._customHyperLinks.clear()}};__name(_SheetsHyperLinkSidePanelService,"SheetsHyperLinkSidePanelService");let SheetsHyperLinkSidePanelService=_SheetsHyperLinkSidePanelService;var jsxRuntime={exports:{}},reactJsxRuntime_production_min={};/**
|
|
2
2
|
* @license React
|
|
3
3
|
* react-jsx-runtime.production.min.js
|
|
4
4
|
*
|
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
*
|
|
7
7
|
* This source code is licensed under the MIT license found in the
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
|
-
*/var f=require$$0,k=Symbol.for("react.element"),l=Symbol.for("react.fragment"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};function q(c,a,g){var b,d={},e=null,h=null;g!==void 0&&(e=""+g),a.key!==void 0&&(e=""+a.key),a.ref!==void 0&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)d[b]===void 0&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}__name(q,"q"),reactJsxRuntime_production_min.Fragment=l,reactJsxRuntime_production_min.jsx=q,reactJsxRuntime_production_min.jsxs=q,jsxRuntime.exports=reactJsxRuntime_production_min;var jsxRuntimeExports=jsxRuntime.exports,__assign=function(){return __assign=Object.assign||function(t){for(var s,i=1,n2=arguments.length;i<n2;i++){s=arguments[i];for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&(t[p2]=s[p2])}return t},__assign.apply(this,arguments)},__rest=function(s,e){var t={};for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&e.indexOf(p2)<0&&(t[p2]=s[p2]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p2=Object.getOwnPropertySymbols(s);i<p2.length;i++)e.indexOf(p2[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p2[i])&&(t[p2[i]]=s[p2[i]]);return t},IconBase=require$$0.forwardRef(function(props,ref){var icon=props.icon,id=props.id,className=props.className,extend=props.extend,restProps=__rest(props,["icon","id","className","extend"]),cls="univerjs-icon univerjs-icon-".concat(id," ").concat(className||"").trim(),idSuffix=require$$0.useRef("_".concat(generateShortUuid()));return render(icon,"".concat(id),{defIds:icon.defIds,idSuffix:idSuffix.current},__assign({ref,className:cls},restProps),extend)});function render(node,id,runtimeProps,rootProps,extend){return require$$0.createElement(node.tag,__assign(__assign({key:id},replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend)),rootProps),(replaceRuntimeIdsInDefs(node,runtimeProps).children||[]).map(function(child,index){return render(child,"".concat(id,"-").concat(node.tag,"-").concat(index),runtimeProps,void 0,extend)}))}__name(render,"render");function replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend){var attrs=__assign({},node.attrs);extend!=null&&extend.colorChannel1&&attrs.fill==="colorChannel1"&&(attrs.fill=extend.colorChannel1);var defIds=runtimeProps.defIds;return!defIds||defIds.length===0||(node.tag==="use"&&attrs["xlink:href"]&&(attrs["xlink:href"]=attrs["xlink:href"]+runtimeProps.idSuffix),Object.entries(attrs).forEach(function(_a2){var key=_a2[0],value=_a2[1];typeof value=="string"&&(attrs[key]=value.replace(/url\(#(.*)\)/,"url(#$1".concat(runtimeProps.idSuffix,")")))})),attrs}__name(replaceRuntimeIdsAndExtInAttrs,"replaceRuntimeIdsAndExtInAttrs");function replaceRuntimeIdsInDefs(node,runtimeProps){var _a2,defIds=runtimeProps.defIds;return!defIds||defIds.length===0?node:node.tag==="defs"&&(!((_a2=node.children)===null||_a2===void 0)&&_a2.length)?__assign(__assign({},node),{children:node.children.map(function(child){return typeof child.attrs.id=="string"&&defIds&&defIds.indexOf(child.attrs.id)>-1?__assign(__assign({},child),{attrs:__assign(__assign({},child.attrs),{id:child.attrs.id+runtimeProps.idSuffix})}):child})}):node}__name(replaceRuntimeIdsInDefs,"replaceRuntimeIdsInDefs");function generateShortUuid(){return Math.random().toString(36).substring(2,8)}__name(generateShortUuid,"generateShortUuid"),IconBase.displayName="UniverIcon";var element$5={tag:"svg",attrs:{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"}}]},AllBorderSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"all-border-single",ref,icon:element$5}))});AllBorderSingle.displayName="AllBorderSingle";var element$4={tag:"svg",attrs:{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"}}]},CopySingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"copy-single",ref,icon:element$4}))});CopySingle.displayName="CopySingle";var element$3={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.9564 2.91332C4.91407 1.87102 3.22413 1.87101 2.18182 2.91333L2.18182 2.91333C1.13953 3.95567 1.13952 5.6456 2.18182 6.68791L8.27777 12.7838C9.72408 14.2302 12.069 14.2302 13.5154 12.7839L13.0911 12.3596L13.5154 12.7839C14.9617 11.3375 14.9617 8.99257 13.5154 7.54626L8.39476 2.42566C8.16044 2.19134 7.78054 2.19134 7.54623 2.42566C7.31191 2.65997 7.31191 3.03987 7.54623 3.27419L12.6668 8.39479L13.0911 7.97052L12.6668 8.39479C13.6445 9.37247 13.6445 10.9576 12.6668 11.9353L13.0399 12.3084L12.6668 11.9353C11.6891 12.913 10.104 12.913 9.1263 11.9353L3.03035 5.83938C2.45668 5.26571 2.45667 4.33556 3.03036 3.76184C3.60403 3.18818 4.53416 3.18817 5.10788 3.76185C5.10788 3.76186 5.10788 3.76186 5.10789 3.76186L11.2038 9.8578L11.601 9.46061L11.2038 9.8578C11.3735 10.0275 11.3735 10.3026 11.2038 10.4723L11.2038 10.4723C11.0341 10.642 10.759 10.642 10.5893 10.4723L5.46874 5.35171C5.23442 5.1174 4.85452 5.1174 4.62021 5.35171C4.38589 5.58602 4.38589 5.96592 4.62021 6.20024L9.74078 11.3208C10.3791 11.9591 11.414 11.9591 12.0523 11.3208C12.0523 11.3208 12.0523 11.3208 12.0523 11.3208M12.0523 11.3208C12.6907 10.6825 12.6906 9.64757 12.0523 9.00927L5.95641 2.91333L5.9564 2.91332",fillRule:"evenodd",clipRule:"evenodd"}}]},LinkSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"link-single",ref,icon:element$3}))});LinkSingle.displayName="LinkSingle";var element$2={tag:"svg",attrs:{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.76157 6.75249 4.52725 6.75249 4.14735 6.98681 3.91304L8.27535 2.62449C9.70209 1.19776 12.0153 1.19776 13.442 2.62449 14.8688 4.05123 14.8688 6.36442 13.442 7.79116L12.1535 9.0797C11.9192 9.31402 11.5393 9.31402 11.3049 9.0797 11.0706 8.84539 11.0706 8.46549 11.3049 8.23117L12.5935 6.94263C13.5516 5.98452 13.5516 4.43113 12.5935 3.47302zM3.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.05395 4.4606 6.81963 4.0807 6.81963 3.84639 7.05395L2.55784 8.34249C1.13111 9.76923 1.13111 12.0824 2.55784 13.5092 3.98458 14.9359 6.29777 14.9359 7.72451 13.5092L9.01305 12.2206C9.24737 11.9863 9.24737 11.6064 9.01305 11.3721 8.77874 11.1378 8.39884 11.1378 8.16452 11.3721L6.87598 12.6606C5.91787 13.6187 4.36448 13.6187 3.40637 12.6606zM3.5852 2.80332C3.35088 2.569 2.97098 2.569 2.73667 2.80332 2.50235 3.03763 2.50235 3.41753 2.73667 3.65185L12.4151 13.3302C12.6494 13.5646 13.0293 13.5646 13.2636 13.3302 13.4979 13.0959 13.4979 12.716 13.2636 12.4817L3.5852 2.80332z"}}]},UnlinkSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"unlink-single",ref,icon:element$2}))});UnlinkSingle.displayName="UnlinkSingle";var element$1={tag:"svg",attrs:{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"}}]},WriteSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"write-single",ref,icon:element$1}))});WriteSingle.displayName="WriteSingle";var element={tag:"svg",attrs:{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:"#fff",d:"M7.8088 10.2949L6.3764 12.403C6.26259 12.5705 6.03455 12.614 5.86705 12.5002C5.69955 12.3864 5.65603 12.1584 5.76984 11.9909L7.3655 9.64252L5.94042 7.54519C5.82661 7.37769 5.87013 7.14964 6.03763 7.03583C6.20512 6.92202 6.43317 6.96555 6.54698 7.13304L7.8088 8.9901L9.07062 7.13304C9.18443 6.96555 9.41248 6.92202 9.57997 7.03583C9.74747 7.14964 9.79099 7.37769 9.67718 7.54519L8.2521 9.64252L9.84776 11.9909C9.96157 12.1584 9.91805 12.3864 9.75055 12.5002C9.58305 12.614 9.35501 12.5705 9.2412 12.403L7.8088 10.2949Z",fillRule:"evenodd",clipRule:"evenodd"}}]},Xlsx=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"xlsx",ref,icon:element}))});Xlsx.displayName="Xlsx";var __defProp$b=Object.defineProperty,__getOwnPropDesc$b=Object.getOwnPropertyDescriptor,__decorateClass$b=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$b(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$b(target,key,result),result},"__decorateClass$b"),__decorateParam$b=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$b");function getContainRange(range,worksheet){const mergedCells=worksheet.getMergeData(),maxCol=worksheet.getMaxColumns()-1,maxRow=worksheet.getMaxRows()-1;if(maxCol<range.endColumn&&(range.endColumn=maxCol),maxRow<range.endRow&&(range.endRow=maxRow),range.rangeType===core.RANGE_TYPE.COLUMN||core.RANGE_TYPE.ROW)return range;const relativeCells=[];return mergedCells.forEach(cell=>{core.Rectangle.intersects(range,cell)&&relativeCells.push(cell)}),core.Rectangle.realUnion(range,...relativeCells)}__name(getContainRange,"getContainRange"),exports2.SheetsHyperLinkResolverService=(_a=class{constructor(_urlHandler,_univerInstanceService,_commandService,_definedNamesService,_messageService,_localeService){this._urlHandler=_urlHandler,this._univerInstanceService=_univerInstanceService,this._commandService=_commandService,this._definedNamesService=_definedNamesService,this._messageService=_messageService,this._localeService=_localeService}_getURLName(params){var _a2;const{gid,range,rangeid}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return null;const sheet=gid?workbook.getSheetBySheetId(gid):workbook.getActiveSheet(),sheetName=(_a2=sheet==null?void 0:sheet.getName())!=null?_a2:"";if(range){const rangeObj=engineFormula.deserializeRangeWithSheet(range).range;return core.isValidRange(rangeObj)&&range!==sheetsHyperLink.ERROR_RANGE?{type:"range",name:engineFormula.serializeRangeWithSheet(sheetName,rangeObj)}:{type:"range-error",name:this._localeService.t("hyperLink.message.refError")}}if(rangeid){const range2=this._definedNamesService.getValueById(workbook.getUnitId(),rangeid);return range2?{type:"defineName",name:range2.formulaOrRefString}:{type:"range-error",name:this._localeService.t("hyperLink.message.refError")}}if(gid){const worksheet=workbook.getSheetBySheetId(gid);return worksheet?{type:"sheet",name:worksheet.getName()}:{type:"sheet-error",name:this._localeService.t("hyperLink.message.refError")}}return null}navigateTo(params){const{gid,range,rangeid}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const unitId=workbook.getUnitId();if(rangeid&&this.navigateToDefineName(unitId,rangeid),!!gid){if(range){const rangeInfo=engineFormula.deserializeRangeWithSheet(range);core.isValidRange(rangeInfo.range)&&range!==sheetsHyperLink.ERROR_RANGE&&this.navigateToRange(unitId,gid,rangeInfo.range);return}this.navigateToSheetById(unitId,gid)}}parseHyperLink(urlStr){var _a2,_b2,_c2;if(urlStr!=null&&urlStr.startsWith("#")){const search=new URLSearchParams(urlStr.slice(1)),searchObj={gid:(_a2=search.get("gid"))!=null?_a2:"",range:(_b2=search.get("range"))!=null?_b2:"",rangeid:(_c2=search.get("rangeid"))!=null?_c2:""},urlInfo=this._getURLName(searchObj);return{type:(urlInfo==null?void 0:urlInfo.type)||"link",name:(urlInfo==null?void 0:urlInfo.name)||urlStr,url:urlStr,searchObj,handler:__name(()=>{this.navigateTo(searchObj)},"handler")}}else return{type:"outer",name:urlStr,url:urlStr,handler:__name(()=>{this.navigateToOtherWebsite(urlStr)},"handler")}}async navigateToRange(unitId,subUnitId,range){const worksheet=await this.navigateToSheetById(unitId,subUnitId);if(worksheet){const realRange=getContainRange(range,worksheet);await this._commandService.executeCommand(sheets.SetSelectionsOperation.id,{unitId,subUnitId,selections:[{range:realRange}]}),await this._commandService.executeCommand(sheetsUi.ScrollToRangeOperation.id,{range:realRange})}}async navigateToSheet(unitId,sheetName){const workbook=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return!1;const worksheet=workbook.getActiveSheet();if((worksheet==null?void 0:worksheet.getName())===sheetName)return!0;const targetSheet=workbook.getSheetBySheetName(sheetName);if(!targetSheet){this._messageService.show({content:this._localeService.t("hyperLink.message.noSheet"),type:design.MessageType.Error});return}const sheetId=targetSheet.getSheetId();return workbook.getHiddenWorksheets().indexOf(sheetId)>-1&&this._messageService.show({content:this._localeService.t("hyperLink.message.hiddenSheet"),type:design.MessageType.Error}),await this._commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId,subUnitId:sheetId})}async navigateToSheetById(unitId,subUnitId){const workbook=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return!1;const worksheet=workbook.getActiveSheet();if(!worksheet)return!1;if(worksheet.getSheetId()===subUnitId)return worksheet;const targetSheet=workbook.getSheetBySheetId(subUnitId);return targetSheet?workbook.getHiddenWorksheets().indexOf(subUnitId)>-1?(this._messageService.show({content:this._localeService.t("hyperLink.message.hiddenSheet"),type:design.MessageType.Error}),!1):await this._commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId,subUnitId})?targetSheet:!1:(this._messageService.show({content:this._localeService.t("hyperLink.message.noSheet"),type:design.MessageType.Error}),!1)}async navigateToDefineName(unitId,rangeid){return this._definedNamesService.focusRange(unitId,rangeid),!0}async navigateToOtherWebsite(url){var _a2;if((_a2=this._urlHandler)!=null&&_a2.navigateToOtherWebsite)return this._urlHandler.navigateToOtherWebsite(url);window.open(url,"_blank","noopener noreferrer")}},__name(_a,"SheetsHyperLinkResolverService"),_a),exports2.SheetsHyperLinkResolverService=__decorateClass$b([__decorateParam$b(1,core.IUniverInstanceService),__decorateParam$b(2,core.ICommandService),__decorateParam$b(3,engineFormula.IDefinedNamesService),__decorateParam$b(4,ui.IMessageService),__decorateParam$b(5,core.Inject(core.LocaleService))],exports2.SheetsHyperLinkResolverService);function isLegalLink(link){return core.Tools.isLegalUrl(link)}__name(isLegalLink,"isLegalLink");function hasProtocol(urlString){return/^[a-zA-Z]+:\/\//.test(urlString)}__name(hasProtocol,"hasProtocol");function isEmail(url){return/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/.test(url)}__name(isEmail,"isEmail");function serializeUrl(urlStr){if(isLegalLink(urlStr)){const transformedUrl=hasProtocol(urlStr)?urlStr:isEmail(urlStr)?`mailto://${urlStr}`:`http://${urlStr}`;let url;try{url=new URL(transformedUrl)}catch{return urlStr}return url.hostname===location.hostname&&url.port===location.port&&url.protocol===location.protocol&&url.pathname===location.pathname&&url.hash&&!url.search?url.hash:transformedUrl}return urlStr}__name(serializeUrl,"serializeUrl");function getCellValueOrigin(cell){if(cell===null)return"";if(cell!=null&&cell.p){const body=cell==null?void 0:cell.p.body;if(body==null)return"";const data=body.dataStream;return data.substring(data.length-2,data.length)===core.DEFAULT_EMPTY_DOCUMENT_VALUE?data.substring(0,data.length-2):data}return cell==null?void 0:cell.v}__name(getCellValueOrigin,"getCellValueOrigin");const AddHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.add-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),{unitId,subUnitId,link}=params,{redos,undos}=sheetInterceptorService.onCommandExecute({id:AddHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.AddHyperLinkMutation.id,params},undo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}};function getHyperLinkContent(link){const{row,column,id,...content}=link;return content}__name(getHyperLinkContent,"getHyperLinkContent");const UpdateHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.update-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id);if(!link)return!1;const{redos,undos}=sheetInterceptorService.onCommandExecute({id:UpdateHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.UpdateHyperLinkMutation.id,params},undo={id:sheetsHyperLink.UpdateHyperLinkMutation.id,params:{unitId,subUnitId,id,payload:getHyperLinkContent(link)}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}},styles$1={cellLinkEditButtons:"univer-cell-link-edit-buttons"},CellLinkEdit=__name(()=>{var _a2;const[id,setId]=require$$0.useState(""),[display,setDisplay]=require$$0.useState(""),[type,setType]=require$$0.useState(LinkType.link),[payload,setPayload]=require$$0.useState(""),localeService=core.useDependency(core.LocaleService),definedNameService=core.useDependency(engineFormula.IDefinedNamesService),univerInstanceService=core.useDependency(core.IUniverInstanceService),popupService=core.useDependency(exports2.SheetsHyperLinkPopupService),editing=ui.useObservable(popupService.currentEditing$),hyperLinkModel=core.useDependency(sheetsHyperLink.HyperLinkModel),resolverService=core.useDependency(exports2.SheetsHyperLinkResolverService),commandService=core.useDependency(core.ICommandService),sidePanelService=core.useDependency(SheetsHyperLinkSidePanelService),sidePanelOptions=require$$0.useMemo(()=>sidePanelService.getOptions(),[sidePanelService]),customHyperLinkSidePanel=require$$0.useMemo(()=>{if(!sidePanelService.isBuiltInLinkType(type))return sidePanelService.getCustomHyperLink(type)},[sidePanelService,type]),[showError,setShowError]=require$$0.useState(!1),setByPayload=require$$0.useRef(!1);require$$0.useEffect(()=>{var _a3,_b2,_c2;if((editing==null?void 0:editing.row)!==void 0&&editing.column!==void 0){const link=hyperLinkModel.getHyperLinkByLocationSync(editing.unitId,editing.subUnitId,editing.row,editing.column);if(link){setId(link.id);const customLink=sidePanelService.findCustomHyperLink(link);if(customLink){const customLinkInfo=customLink.convert(link);setType(customLinkInfo.type),setPayload(customLinkInfo.payload),setDisplay(customLinkInfo.display);return}setDisplay(link.display);const linkInfo=resolverService.parseHyperLink(link.payload);if(linkInfo.type==="outer"){setType(LinkType.link),setPayload(linkInfo.url),linkInfo.url===link.display&&(setByPayload.current=!0);return}else{const params=linkInfo.searchObj;if(params.rangeid){setType(LinkType.definedName),setPayload(params.rangeid);return}if(params.range){const sheetName=params.gid&&(_c2=(_b2=(_a3=univerInstanceService.getUnit(editing.unitId))==null?void 0:_a3.getSheetBySheetId(params.gid))==null?void 0:_b2.getName())!=null?_c2:"";if(setType(LinkType.range),params.range===sheetsHyperLink.ERROR_RANGE)setPayload("");else{const payload2=engineFormula.serializeRangeWithSheet(sheetName,engineFormula.deserializeRangeWithSheet(params.range).range);setPayload(payload2),payload2===link.display&&(setByPayload.current=!0)}return}if(params.gid){setType(LinkType.sheet),setPayload(params.gid);return}}}const workbook2=univerInstanceService.getUnit(editing.unitId),worksheet=workbook2==null?void 0:workbook2.getSheetBySheetId(editing.subUnitId),cell=worksheet==null?void 0:worksheet.getCellRaw(editing.row,editing.column),cellValue=getCellValueOrigin(cell);setType(LinkType.link),setPayload(""),setDisplay((cellValue!=null?cellValue:"").toString()),setId("");return}setType(LinkType.link),setPayload(""),setDisplay(""),setId("")},[editing,hyperLinkModel,resolverService,univerInstanceService]);const payloadInitial=require$$0.useMemo(()=>payload,[type]),linkTypeOptions=[{label:localeService.t("hyperLink.form.link"),value:LinkType.link},{label:localeService.t("hyperLink.form.range"),value:LinkType.range},{label:localeService.t("hyperLink.form.worksheet"),value:LinkType.sheet},{label:localeService.t("hyperLink.form.definedName"),value:LinkType.definedName},...sidePanelOptions],workbook=univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const hiddens=workbook.getHiddenWorksheets(),sheetsOption=workbook.getSheets().map(sheet=>({label:sheet.getName(),value:sheet.getSheetId()})).filter(opt=>hiddens.indexOf(opt.value)===-1),definedNames=Object.values((_a2=definedNameService.getDefinedNameMap(workbook.getUnitId()))!=null?_a2:{}).map(value=>({label:value.name,value:value.id})),formatUrl=__name((type2,payload2)=>{if(type2===LinkType.link)return serializeUrl(payload2);if(type2===LinkType.range){const info=engineFormula.deserializeRangeWithSheet(payload2),worksheet=workbook.getSheetBySheetName(info.sheetName);if(worksheet)return`#gid=${worksheet.getSheetId()}&range=${engineFormula.serializeRange(info.range)}`}return`#${type2}=${payload2}`},"formatUrl"),handleRangeChange=ui.useEvent(newValue=>{var _a3;const range=newValue[0];if(!range||!core.isValidRange(range.range))return;range.sheetName||(range.sheetName=((_a3=workbook.getActiveSheet())==null?void 0:_a3.getName())||"");const newPayload=engineFormula.serializeRangeToRefString(range);setPayload(newPayload),newPayload&&(setByPayload.current||!display)&&(setDisplay(newPayload),setByPayload.current=!0)}),handleSubmit=__name(async()=>{if(editing&&(id?await commandService.executeCommand(UpdateHyperLinkCommand.id,{unitId:editing.unitId,subUnitId:editing.subUnitId,id,payload:{display,payload:formatUrl(type,payload)}}):await commandService.executeCommand(AddHyperLinkCommand.id,{unitId:editing.unitId,subUnitId:editing.subUnitId,link:{id:core.Tools.generateRandomId(),row:editing.row,column:editing.column,payload:formatUrl(type,payload),display}})),editing){await commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId:editing.unitId,subUnitId:editing.subUnitId});const GAP=1;await commandService.executeCommand(sheetsUi.ScrollToRangeOperation.id,{range:{startRow:Math.max(editing.row-GAP,0),endRow:editing.row+GAP,startColumn:Math.max(editing.column-GAP,0),endColumn:editing.column+GAP}})}commandService.executeCommand(CloseHyperLinkSidebarOperation.id)},"handleSubmit");return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("hyperLink.form.label"),error:showError&&!display?localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(design.Input,{value:display,onChange:__name(v=>{setDisplay(v),setByPayload.current=!1},"onChange"),placeholder:localeService.t("hyperLink.form.labelPlaceholder")})}),jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("hyperLink.form.type"),children:jsxRuntimeExports.jsx(design.Select,{options:linkTypeOptions,value:type,onChange:__name(newType=>{setType(newType),setPayload("")},"onChange")})}),type===LinkType.link&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError?payload?isLegalLink(payload)?"":localeService.t("hyperLink.form.linkError"):localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(design.Input,{value:payload,onChange:__name(newLink=>{setPayload(newLink),newLink&&(setByPayload.current||!display||display===payload)&&(setDisplay(newLink),setByPayload.current=!0)},"onChange"),placeholder:localeService.t("hyperLink.form.linkPlaceholder")})}),type===LinkType.range&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(ui.RangeSelector,{openForSheetUnitId:workbook.getUnitId(),id:core.createInternalEditorID("hyper-link-edit"),isSingleChoice:!0,value:payloadInitial,onChange:handleRangeChange})}),type===LinkType.sheet&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.selectError"):"",children:jsxRuntimeExports.jsx(design.Select,{options:sheetsOption,value:payload,onChange:__name(newPayload=>{var _a3,_b2;setPayload(newPayload);const label=(_a3=sheetsOption.find(i=>i.value===newPayload))==null?void 0:_a3.label,oldLabel=(_b2=sheetsOption.find(i=>i.value===payload))==null?void 0:_b2.label;label&&(setByPayload.current||!display||display===oldLabel)&&(setDisplay(label),setByPayload.current=!0)},"onChange")})}),type===LinkType.definedName&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.selectError"):"",children:jsxRuntimeExports.jsx(design.Select,{options:definedNames,value:payload,onChange:__name(newValue=>{var _a3,_b2;setPayload(newValue);const label=(_a3=definedNames.find(i=>i.value===newValue))==null?void 0:_a3.label,oldLabel=(_b2=definedNames.find(i=>i.value===payload))==null?void 0:_b2.label;label&&(setByPayload.current||!display||display===oldLabel)&&(setDisplay(label),setByPayload.current=!0)},"onChange")})}),(customHyperLinkSidePanel==null?void 0:customHyperLinkSidePanel.Form)&&jsxRuntimeExports.jsx(customHyperLinkSidePanel.Form,{linkId:id,payload,display,showError,setByPayload,setDisplay:__name(newLink=>{setDisplay(newLink),setByPayload.current=!0},"setDisplay"),setPayload}),jsxRuntimeExports.jsxs("div",{className:styles$1.cellLinkEditButtons,children:[jsxRuntimeExports.jsx(design.Button,{onClick:__name(()=>{editing&&commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId:editing.unitId,subUnitId:editing.subUnitId}),commandService.executeCommand(CloseHyperLinkSidebarOperation.id)},"onClick"),children:localeService.t("hyperLink.form.cancel")}),jsxRuntimeExports.jsx(design.Button,{type:"primary",style:{marginLeft:8},onClick:__name(async()=>{if(!display||!payload||type===LinkType.link&&!isLegalLink(payload)){setShowError(!0);return}handleSubmit()},"onClick"),children:localeService.t("hyperLink.form.ok")})]})]})},"CellLinkEdit");CellLinkEdit.componentKey="univer.sheet.cell-link-edit";const OpenHyperLinkSidebarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.open-hyper-link-sidebar",handler(accessor,params){if(!params)return!1;const{unitId,subUnitId,row,column}=params,hyperLinkModel=accessor.get(sheetsHyperLink.HyperLinkModel),sidebarService=accessor.get(ui.ISidebarService),popupService=accessor.get(exports2.SheetsHyperLinkPopupService),currentLink=hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,column);return popupService.startEditing(params),sidebarService.open({header:{title:currentLink?"hyperLink.form.editTitle":"hyperLink.form.addTitle"},children:{label:CellLinkEdit.componentKey}}),!0}},CloseHyperLinkSidebarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.close-hyper-link-sidebar",handler(accessor){const sidebarService=accessor.get(ui.ISidebarService),popupService=accessor.get(exports2.SheetsHyperLinkPopupService);return sidebarService.close(),popupService.endEditing(),!0}},InsertHyperLinkOperation={type:core.CommandType.OPERATION,id:"sheet.operation.insert-hyper-link",handler(accessor){const univerInstanceService=accessor.get(core.IUniverInstanceService),target=sheets.getSheetCommandTarget(univerInstanceService);if(!target)return!1;const commandService=accessor.get(core.ICommandService),selection=accessor.get(sheets.SheetsSelectionsService).getCurrentLastSelection();if(!selection)return!1;const row=selection.primary.startRow,column=selection.primary.startColumn;return commandService.executeCommand(OpenHyperLinkSidebarOperation.id,{unitId:target.unitId,subUnitId:target.subUnitId,row,column})}},InsertHyperLinkToolbarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.insert-hyper-link-toolbar",handler(accessor){const commandService=accessor.get(core.ICommandService);return accessor.get(exports2.SheetsHyperLinkPopupService).currentEditing?commandService.executeCommand(CloseHyperLinkSidebarOperation.id):commandService.executeCommand(InsertHyperLinkOperation.id)}},RemoveHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.remove-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id),{redos,undos}=sheetInterceptorService.onCommandExecute({id:RemoveHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params},undo={id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}},CancelHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.cancel-hyper-link",async handler(accessor,params){if(!params)return!1;const commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id),redo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params},undo={id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}};return(await core.sequenceExecuteAsync([redo],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo],undoMutations:[undo],unitID:unitId}),!0):!1}},styles={cellLink:"univer-cell-link",cellLinkType:"univer-cell-link-type",cellLinkContent:"univer-cell-link-content",cellLinkContentError:"univer-cell-link-content-error",cellLinkUrl:"univer-cell-link-url",cellLinkOperations:"univer-cell-link-operations",cellLinkOperation:"univer-cell-link-operation",cellLinkOperationError:"univer-cell-link-operation-error"},iconsMap={outer:jsxRuntimeExports.jsx(LinkSingle,{}),link:jsxRuntimeExports.jsx(LinkSingle,{}),sheet:jsxRuntimeExports.jsx(Xlsx,{}),range:jsxRuntimeExports.jsx(AllBorderSingle,{}),defineName:jsxRuntimeExports.jsx(AllBorderSingle,{}),"range-error":jsxRuntimeExports.jsx(AllBorderSingle,{}),"sheet-error":jsxRuntimeExports.jsx(Xlsx,{})},CellLinkPopup=__name(()=>{const popupService=core.useDependency(exports2.SheetsHyperLinkPopupService),hyperLinkModel=core.useDependency(sheetsHyperLink.HyperLinkModel),commandService=core.useDependency(core.ICommandService),messageService=core.useDependency(ui.IMessageService),localeService=core.useDependency(core.LocaleService),[currentPopup,setCurrentPopup]=require$$0.useState(null),resolverService=core.useDependency(exports2.SheetsHyperLinkResolverService);if(require$$0.useEffect(()=>{setCurrentPopup(popupService.currentPopup);const ob=popupService.currentPopup$.subscribe(popup=>{setCurrentPopup(popup)});return()=>{ob.unsubscribe()}},[popupService.currentPopup,popupService.currentPopup$]),!currentPopup)return null;const{unitId,subUnitId,id}=currentPopup,link=hyperLinkModel.getHyperLink(unitId,subUnitId,id);if(!link)return null;const linkObj=resolverService.parseHyperLink(link.payload),isError=linkObj.type.indexOf("error")>-1;return jsxRuntimeExports.jsxs("div",{className:styles.cellLink,onClick:__name(()=>popupService.hideCurrentPopup(),"onClick"),children:[jsxRuntimeExports.jsxs("div",{className:cs(styles.cellLinkContent,{[styles.cellLinkContentError]:isError}),onClick:linkObj.handler,children:[jsxRuntimeExports.jsx("div",{className:styles.cellLinkType,children:iconsMap[linkObj.type]}),jsxRuntimeExports.jsx(design.Tooltip,{showIfEllipsis:!0,title:linkObj.name,children:jsxRuntimeExports.jsx("span",{className:styles.cellLinkUrl,children:linkObj.name})})]}),jsxRuntimeExports.jsxs("div",{className:styles.cellLinkOperations,children:[currentPopup.copyPermission&&jsxRuntimeExports.jsx("div",{className:cs(styles.cellLinkOperation,{[styles.cellLinkOperationError]:isError}),onClick:__name(()=>{if(!isError){if(linkObj.type!=="outer"){const url=new URL(window.location.href);url.hash=linkObj.url.slice(1),navigator.clipboard.writeText(url.href)}else navigator.clipboard.writeText(linkObj.url);messageService.show({content:localeService.t("hyperLink.message.coped"),type:design.MessageType.Info})}},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.copy"),children:jsxRuntimeExports.jsx(CopySingle,{})})}),currentPopup.editPermission&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("div",{className:styles.cellLinkOperation,onClick:__name(()=>{commandService.executeCommand(OpenHyperLinkSidebarOperation.id,{unitId,subUnitId,row:link.row,column:link.column})},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.edit"),children:jsxRuntimeExports.jsx(WriteSingle,{})})}),jsxRuntimeExports.jsx("div",{className:styles.cellLinkOperation,onClick:__name(()=>{commandService.executeCommand(CancelHyperLinkCommand.id,{unitId,subUnitId,id:link.id})},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.cancel"),children:jsxRuntimeExports.jsx(UnlinkSingle,{})})})]})]})]})},"CellLinkPopup");CellLinkPopup.componentKey="univer.sheet.cell-link-popup";var __defProp$a=Object.defineProperty,__getOwnPropDesc$a=Object.getOwnPropertyDescriptor,__decorateClass$a=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$a(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$a(target,key,result),result},"__decorateClass$a"),__decorateParam$a=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$a");const isEqualLink=__name((a,b)=>a.unitId===b.unitId&&a.subUnitId===b.subUnitId&&a.row===b.row&&a.col===b.col,"isEqualLink");exports2.SheetsHyperLinkPopupService=(_b=class extends core.Disposable{constructor(_hyperLinkModel,_sheetCanvasPopManagerService){super();__publicField(this,"_currentPopup",null);__publicField(this,"_currentPopup$",new rxjs.Subject);__publicField(this,"currentPopup$",this._currentPopup$.asObservable());__publicField(this,"_currentEditing$",new rxjs.BehaviorSubject(null));__publicField(this,"currentEditing$",this._currentEditing$.asObservable());this._hyperLinkModel=_hyperLinkModel,this._sheetCanvasPopManagerService=_sheetCanvasPopManagerService,this.disposeWithMe(()=>{this.hideCurrentPopup(),this.endEditing(),this._currentEditing$.complete(),this._currentPopup$.complete()})}get currentPopup(){return this._currentPopup}get currentEditing(){return this._currentEditing$.getValue()}showPopup(location2){if(this._currentPopup&&isEqualLink(location2,this._currentPopup))return;this.hideCurrentPopup();const{unitId,subUnitId,row,col}=location2,link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);if(!link)return;const disposable=this._sheetCanvasPopManagerService.attachPopupToCell(row,col,{componentKey:CellLinkPopup.componentKey,direction:"bottom",closeOnSelfTarget:!0,onClickOutside:__name(()=>{this.hideCurrentPopup()},"onClickOutside")});disposable&&(this._currentPopup={unitId,subUnitId,id:link.id,disposable,row,col,editPermission:!!location2.editPermission,copyPermission:!!location2.copyPermission},this._currentPopup$.next(this._currentPopup))}hideCurrentPopup(){var _a2;this._currentPopup&&((_a2=this._currentPopup.disposable)==null||_a2.dispose(),this._currentPopup=null,this._currentPopup$.next(null))}startEditing(link){this._currentEditing$.next(link)}endEditing(){this._currentEditing$.next(null)}},__name(_b,"SheetsHyperLinkPopupService"),_b),exports2.SheetsHyperLinkPopupService=__decorateClass$a([__decorateParam$a(0,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$a(1,core.Inject(sheetsUi.SheetCanvasPopManagerService))],exports2.SheetsHyperLinkPopupService);const SHEET_HYPER_LINK_UI_PLUGIN="SHEET_HYPER_LINK_UI_PLUGIN";var __defProp$9=Object.defineProperty,__getOwnPropDesc$9=Object.getOwnPropertyDescriptor,__decorateClass$9=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$9(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$9(target,key,result),result},"__decorateClass$9"),__decorateParam$9=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$9");exports2.SheetsHyperLinkCopyPasteController=(_c=class extends core.Disposable{constructor(_sheetClipboardService,_hyperLinkModel,_injector,_resolverService){super();__publicField(this,"_plainTextFilter",new Set);__publicField(this,"_copyInfo");this._sheetClipboardService=_sheetClipboardService,this._hyperLinkModel=_hyperLinkModel,this._injector=_injector,this._resolverService=_resolverService,this._initCopyPaste(),this.disposeWithMe(()=>{this._plainTextFilter.clear()})}registerPlainTextFilter(filter){this._plainTextFilter.add(filter)}removePlainTextFilter(filter){this._plainTextFilter.delete(filter)}_filterPlainText(text){return Array.from(this._plainTextFilter).every(filter=>filter(text))}_initCopyPaste(){this._sheetClipboardService.addClipboardHook({id:SHEET_HYPER_LINK_UI_PLUGIN,onBeforeCopy:__name((unitId,subUnitId,range)=>this._collect(unitId,subUnitId,range),"onBeforeCopy"),onPasteCells:__name((pasteFrom,pasteTo,data,payload)=>{const{copyType=sheetsUi.COPY_TYPE.COPY,pasteType}=payload,{range:copyRange}=pasteFrom||{},{range:pastedRange,unitId,subUnitId}=pasteTo;return this._generateMutations(pastedRange,{copyType,pasteType,copyRange,unitId,subUnitId})},"onPasteCells"),onPastePlainText:__name((pasteTo,clipText)=>{const filterResult=this._filterPlainText(clipText);if(isLegalLink(clipText)&&filterResult){const text=serializeUrl(clipText),{range,unitId,subUnitId}=pasteTo,{ranges:[pasteToRange],mapFunc}=sheetsUi.virtualizeDiscreteRanges([range]),redos=[],undos=[];return core.Range.foreach(pasteToRange,(originRow,originCol)=>{const{row,col:column}=mapFunc(originRow,originCol),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,column);link&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}});const newId=core.Tools.generateRandomId();redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{id:newId,row,column,payload:text}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:newId}}),link&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}})}),{redos,undos}}return{undos:[],redos:[]}},"onPastePlainText"),priority:99})}_collect(unitId,subUnitId,range){const matrix=new core.ObjectMatrix;this._copyInfo={unitId,subUnitId,matrix};const discreteRange=this._injector.invoke(accessor=>sheetsUi.rangeToDiscreteRange(range,accessor,unitId,subUnitId));if(!discreteRange)return;const{rows,cols}=discreteRange;rows.forEach((row,rowIndex)=>{cols.forEach((col,colIndex)=>{var _a2;const link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);matrix.setValue(rowIndex,colIndex,(_a2=link==null?void 0:link.id)!=null?_a2:"")})})}_generateMutations(pastedRange,copyInfo){if(!this._copyInfo)return{redos:[],undos:[]};if(!this._copyInfo||!this._copyInfo.matrix.getSizeOf()||!copyInfo.copyRange)return{redos:[],undos:[]};if([sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_COL_WIDTH,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_VALUE,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMAT,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMULA].includes(copyInfo.pasteType))return{redos:[],undos:[]};const{unitId,subUnitId}=this._copyInfo,redos=[],undos=[],{ranges:[vCopyRange,vPastedRange],mapFunc}=sheetsUi.virtualizeDiscreteRanges([copyInfo.copyRange,pastedRange]);return sheetsUi.getRepeatRange(vCopyRange,vPastedRange,!0).forEach(({startRange})=>{var _a2;(_a2=this._copyInfo)==null||_a2.matrix.forValue((row,col,ruleId)=>{const range=core.Rectangle.getPositionRange({startRow:row,endRow:row,startColumn:col,endColumn:col},startRange),oldLink=this._hyperLinkModel.getHyperLink(unitId,subUnitId,ruleId),{row:startRow,col:startColumn}=mapFunc(range.startRow,range.startColumn),currentLink=this._hyperLinkModel.getHyperLinkByLocation(copyInfo.unitId,copyInfo.subUnitId,startRow,startColumn),id=core.Tools.generateRandomId();currentLink&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,id:currentLink.id}}),oldLink&&(redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,link:{...oldLink,id,row:startRow,column:startColumn}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,id}})),currentLink&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,link:currentLink}})})}),{redos,undos}}},__name(_c,"SheetsHyperLinkCopyPasteController"),_c),exports2.SheetsHyperLinkCopyPasteController=__decorateClass$9([core.OnLifecycle(core.LifecycleStages.Ready,exports2.SheetsHyperLinkCopyPasteController),__decorateParam$9(0,sheetsUi.ISheetClipboardService),__decorateParam$9(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$9(2,core.Inject(core.Injector)),__decorateParam$9(3,core.Inject(exports2.SheetsHyperLinkResolverService))],exports2.SheetsHyperLinkCopyPasteController);var __defProp$8=Object.defineProperty,__getOwnPropDesc$8=Object.getOwnPropertyDescriptor,__decorateClass$8=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$8(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$8(target,key,result),result},"__decorateClass$8"),__decorateParam$8=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$8");let SheetsHyperLinkRemoveSheetController=(_d=class extends core.Disposable{constructor(_sheetInterceptorService,_univerInstanceService,_hyperLinkModel){super(),this._sheetInterceptorService=_sheetInterceptorService,this._univerInstanceService=_univerInstanceService,this._hyperLinkModel=_hyperLinkModel,this._initSheetChange()}_initSheetChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(commandInfo=>{var _a2;if(commandInfo.id===sheets.RemoveSheetCommand.id){const params=commandInfo.params,workbook=params.unitId?this._univerInstanceService.getUnit(params.unitId):this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return{redos:[],undos:[]};const unitId=workbook.getUnitId(),subUnitId=params.subUnitId||((_a2=workbook.getActiveSheet())==null?void 0:_a2.getSheetId());if(!subUnitId)return{redos:[],undos:[]};const links=this._hyperLinkModel.getSubUnit(unitId,subUnitId),redos=links.map(link=>({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}})),undos=links.map(link=>({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}));return{redos,undos}}return{redos:[],undos:[]}},"getMutations")}))}},__name(_d,"SheetsHyperLinkRemoveSheetController"),_d);SheetsHyperLinkRemoveSheetController=__decorateClass$8([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkRemoveSheetController),__decorateParam$8(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$8(1,core.IUniverInstanceService),__decorateParam$8(2,core.Inject(sheetsHyperLink.HyperLinkModel))],SheetsHyperLinkRemoveSheetController);var __defProp$7=Object.defineProperty,__getOwnPropDesc$7=Object.getOwnPropertyDescriptor,__decorateClass$7=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$7(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$7(target,key,result),result},"__decorateClass$7"),__decorateParam$7=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$7");let SheetsHyperLinkRenderController=(_e=class extends core.Disposable{constructor(_context,_hyperLinkModel,_sheetSkeletonManagerService,_renderManagerService){super(),this._context=_context,this._hyperLinkModel=_hyperLinkModel,this._sheetSkeletonManagerService=_sheetSkeletonManagerService,this._renderManagerService=_renderManagerService,this._initSkeletonChange()}_initSkeletonChange(){const markSkeletonDirty=__name(()=>{var _a2;const workbook=this._context.unit,unitId=workbook.getUnitId(),subUnitId=(_a2=workbook.getActiveSheet())==null?void 0:_a2.getSheetId();if(!subUnitId){console.warn("No active sheet found");return}const skeleton=this._sheetSkeletonManagerService.getOrCreateSkeleton({sheetId:subUnitId}),currentRender=this._renderManagerService.getRenderById(unitId);skeleton==null||skeleton.makeDirty(!0),skeleton==null||skeleton.calculate(),currentRender&¤tRender.mainComponent.makeForceDirty()},"markSkeletonDirty");this.disposeWithMe(this._hyperLinkModel.linkUpdate$.pipe(rxjs.debounceTime(16)).subscribe(()=>{markSkeletonDirty()}))}},__name(_e,"SheetsHyperLinkRenderController"),_e);SheetsHyperLinkRenderController=__decorateClass$7([__decorateParam$7(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$7(2,core.Inject(sheetsUi.SheetSkeletonManagerService)),__decorateParam$7(3,engineRender.IRenderManagerService)],SheetsHyperLinkRenderController);let SheetsHyperLinkRenderManagerController=(_f=class extends core.Disposable{constructor(_sheetInterceptorService,_hyperLinkModel,_themeService){super(),this._sheetInterceptorService=_sheetInterceptorService,this._hyperLinkModel=_hyperLinkModel,this._themeService=_themeService,this._initViewModelIntercept()}_initViewModelIntercept(){this.disposeWithMe(this._sheetInterceptorService.intercept(sheets.INTERCEPTOR_POINT.CELL_CONTENT,{handler:__name((cell,pos,next)=>{const{row,col,unitId,subUnitId}=pos,link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col),styleSheet=this._themeService.getCurrentTheme();return next(link?{...cell,interceptorStyle:{ul:{s:core.BooleanNumber.TRUE},cl:{rgb:styleSheet.blue500}}}:cell)},"handler"),priority:100}))}},__name(_f,"SheetsHyperLinkRenderManagerController"),_f);SheetsHyperLinkRenderManagerController=__decorateClass$7([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkRenderManagerController),__decorateParam$7(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$7(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$7(2,core.Inject(core.ThemeService))],SheetsHyperLinkRenderManagerController);var __defProp$6=Object.defineProperty,__getOwnPropDesc$6=Object.getOwnPropertyDescriptor,__decorateClass$6=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$6(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$6(target,key,result),result},"__decorateClass$6"),__decorateParam$6=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$6");let SheetHyperLinkSetRangeController=(_g=class extends core.Disposable{constructor(_sheetInterceptorService,_injector,_hyperLinkModel,_selectionManagerService,_univerInstanceService,_editorBridgeService){super(),this._sheetInterceptorService=_sheetInterceptorService,this._injector=_injector,this._hyperLinkModel=_hyperLinkModel,this._selectionManagerService=_selectionManagerService,this._univerInstanceService=_univerInstanceService,this._editorBridgeService=_editorBridgeService,this._initCommandInterceptor()}_initCommandInterceptor(){this._initAddHyperLinkCommandInterceptor(),this._initSetRangeValuesCommandInterceptor(),this._initUpdateHyperLinkCommandInterceptor(),this._initClearSelectionCommandInterceptor(),this._initRichTextEditorInterceptor()}_getCurrentCell(unitId,subUnitId,row,col){var _a2,_b2;return(_b2=(_a2=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET))==null?void 0:_a2.getSheetBySheetId(subUnitId))==null?void 0:_b2.getCell(row,col)}_initAddHyperLinkCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{var _a2;if(command.id===AddHyperLinkCommand.id){const params=command.params,{unitId,subUnitId,link}=params,currentCell=this._getCurrentCell(unitId,subUnitId,link.row,link.column),redoParams={unitId,subUnitId,cellValue:{[link.row]:{[link.column]:{v:link.display,p:null,t:(_a2=currentCell==null?void 0:currentCell.t)!=null?_a2:void 0}}}};return{redos:[{id:sheets.SetRangeValuesMutation.id,params:redoParams}],undos:[{id:sheets.SetRangeValuesMutation.id,params:sheets.SetRangeValuesUndoMutationFactory(this._injector,redoParams)}]}}return{redos:[],undos:[]}},"getMutations")}))}_initUpdateHyperLinkCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===UpdateHyperLinkCommand.id){const params=command.params,{unitId,subUnitId,id,payload}=params,current=this._hyperLinkModel.getHyperLink(unitId,subUnitId,id);if(current&¤t.display!==payload.display){const redoParams={unitId,subUnitId,cellValue:{[current.row]:{[current.column]:{v:payload.display,t:core.CellValueType.STRING,p:null}}}};return{redos:[{id:sheets.SetRangeValuesMutation.id,params:redoParams}],undos:[{id:sheets.SetRangeValuesMutation.id,params:sheets.SetRangeValuesUndoMutationFactory(this._injector,redoParams)}]}}}return{redos:[],undos:[]}},"getMutations")}))}_initSetRangeValuesCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===sheets.SetRangeValuesCommand.id){const params=command.params,{unitId,subUnitId}=params,redos=[],undos=[];return params.cellValue&&new core.ObjectMatrix(params.cellValue).forValue((row,col,cell)=>{var _a2,_b2,_c2,_d2,_e2,_f2,_g2;const cellValueRaw=(_c2=cell==null?void 0:cell.v)!=null?_c2:(_b2=(_a2=cell==null?void 0:cell.p)==null?void 0:_a2.body)==null?void 0:_b2.dataStream.slice(0,-2),cellValue=(cellValueRaw!=null?cellValueRaw:"").toString(),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);if(!link){if(isLegalLink(cellValue)||(_d2=cell==null?void 0:cell.custom)!=null&&_d2.__link_url){const url=(_f2=(_e2=cell==null?void 0:cell.custom)==null?void 0:_e2.__link_url)!=null?_f2:cellValue,id=core.Tools.generateRandomId();undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id}}),redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{id,row,column:col,display:cellValue,payload:serializeUrl(url)}}})}return}(cellValueRaw===""||((_g2=cell==null?void 0:cell.custom)==null?void 0:_g2.__link_url)==="")&&(redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}}),undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}))}),{undos,redos}}return{redos:[],undos:[]}},"getMutations")}))}_initClearSelectionCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===sheets.ClearSelectionContentCommand.id||command.id===sheets.ClearSelectionAllCommand.id||command.id===sheets.ClearSelectionFormatCommand.id){const redos=[],undos=[],selection=this._selectionManagerService.getCurrentLastSelection(),target=sheets.getSheetCommandTarget(this._univerInstanceService);if(selection&&target){const{unitId,subUnitId}=target;core.Range.foreach(selection.range,(row,col)=>{const link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);link&&(redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}}),undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}))})}return{redos,undos}}return{redos:[],undos:[]}},"getMutations")}))}_initRichTextEditorInterceptor(){this.disposeWithMe(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().AFTER_CELL_EDIT,{handler:__name((data,context,next)=>{var _a2,_b2,_c2,_d2,_e2,_f2;if(data!=null&&data.p){const range=(_b2=(_a2=data.p.body)==null?void 0:_a2.customRanges)==null?void 0:_b2.find(i=>i.rangeType===core.CustomRangeType.HYPERLINK),resource=(_c2=data.p.resources)==null?void 0:_c2.find(i=>i.name===docsHyperLink.DOC_HYPER_LINK_PLUGIN);if(range&&resource){const rangeId=range.rangeId,url=(_f2=(_e2=(_d2=JSON.parse(resource.data))==null?void 0:_d2.links)==null?void 0:_e2.find(i=>i.id===rangeId))==null?void 0:_f2.payload;return next({...data,p:null,v:docs.getPlainTextFormDocument(data.p),t:core.CellValueType.STRING,custom:{__link_url:url}})}}return next(data)},"handler")}))}},__name(_g,"SheetHyperLinkSetRangeController"),_g);SheetHyperLinkSetRangeController=__decorateClass$6([core.OnLifecycle(core.LifecycleStages.Starting,SheetHyperLinkSetRangeController),__decorateParam$6(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$6(1,core.Inject(core.Injector)),__decorateParam$6(2,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$6(3,core.Inject(sheets.SheetsSelectionsService)),__decorateParam$6(4,core.IUniverInstanceService),__decorateParam$6(5,sheetsUi.IEditorBridgeService)],SheetHyperLinkSetRangeController);var __defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$5");let SheetsHyperLinkPopupController=(_h=class extends core.Disposable{constructor(_hoverManagerService,_sheetsHyperLinkPopupService,_renderManagerService,_permissionService,_sheetPermissionInterceptorBaseController,_commandService){super(),this._hoverManagerService=_hoverManagerService,this._sheetsHyperLinkPopupService=_sheetsHyperLinkPopupService,this._renderManagerService=_renderManagerService,this._permissionService=_permissionService,this._sheetPermissionInterceptorBaseController=_sheetPermissionInterceptorBaseController,this._commandService=_commandService,this._initHoverListener(),this._initCommandListener()}_initHoverListener(){this.disposeWithMe(this._hoverManagerService.currentCell$.pipe(rxjs.debounceTime(200)).subscribe(currentCell=>{var _a2,_b2;if(!currentCell){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}const skeleton=(_b2=(_a2=this._renderManagerService.getRenderById(currentCell.location.unitId))==null?void 0:_a2.with(sheetsUi.SheetSkeletonManagerService).getWorksheetSkeleton(currentCell.location.subUnitId))==null?void 0:_b2.skeleton,currentCol=currentCell.location.col,currentRow=currentCell.location.row;let targetRow=currentRow,targetCol=currentCol;if(skeleton&&skeleton.overflowCache.forValue((row,col,value)=>{core.Rectangle.contains(value,{startColumn:currentCol,endColumn:currentCol,startRow:currentRow,endRow:currentRow})&&(targetRow=row,targetCol=col)}),!this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookViewPermission],worksheetTypes:[sheets.WorksheetViewPermission],rangeTypes:[sheets.RangeProtectionPermissionViewPoint]},[{startRow:currentRow,startColumn:currentCol,endRow:currentRow,endColumn:currentCol}])){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}const editPermission=this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]},[{startRow:currentRow,startColumn:currentCol,endRow:currentRow,endColumn:currentCol}]),unitId=currentCell.location.unitId,subUnitId=currentCell.location.subUnitId,copyPermission=this._permissionService.composePermission([new sheets.WorkbookCopyPermission(unitId).id,new sheets.WorksheetCopyPermission(unitId,subUnitId).id]).every(permission=>permission.value);this._sheetsHyperLinkPopupService.showPopup({...currentCell.location,row:targetRow,col:targetCol,editPermission,copyPermission})}))}_initCommandListener(){const HIDE_COMMAND_LIST=[sheets.ClearSelectionContentCommand.id,sheets.ClearSelectionAllCommand.id,sheets.ClearSelectionFormatCommand.id];this.disposeWithMe(this._commandService.onCommandExecuted(command=>{HIDE_COMMAND_LIST.includes(command.id)&&this._sheetsHyperLinkPopupService.hideCurrentPopup()}))}},__name(_h,"SheetsHyperLinkPopupController"),_h);SheetsHyperLinkPopupController=__decorateClass$5([core.OnLifecycle(core.LifecycleStages.Rendered,SheetsHyperLinkPopupController),__decorateParam$5(0,core.Inject(sheetsUi.HoverManagerService)),__decorateParam$5(1,core.Inject(exports2.SheetsHyperLinkPopupService)),__decorateParam$5(2,core.Inject(engineRender.IRenderManagerService)),__decorateParam$5(3,core.Inject(core.IPermissionService)),__decorateParam$5(4,core.Inject(sheetsUi.SheetPermissionInterceptorBaseController)),__decorateParam$5(5,core.ICommandService)],SheetsHyperLinkPopupController);const insertLinkMenuFactory=__name(accessor=>({id:InsertHyperLinkOperation.id,type:ui.MenuItemType.BUTTON,positions:[ui.MenuPosition.CONTEXT_MENU],title:"hyperLink.menu.add",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),icon:"LinkSingle",disabled$:sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]})}),"insertLinkMenuFactory"),insertLinkMenuToolbarFactory=__name(accessor=>({tooltip:"hyperLink.form.addTitle",positions:ui.MenuPosition.TOOLBAR_START,group:ui.MenuGroup.TOOLBAR_OTHERS,id:InsertHyperLinkToolbarOperation.id,type:ui.MenuItemType.BUTTON,icon:"LinkSingle",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),disabled$:sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]})}),"insertLinkMenuToolbarFactory"),InsertLinkShortcut={id:InsertHyperLinkToolbarOperation.id,binding:ui.KeyCode.K|ui.MetaKeys.CTRL_COMMAND,preconditions:sheetsUi.whenSheetEditorFocused};var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$4");let SheetsHyperLinkUIController=(_i=class extends core.Disposable{constructor(_config,_componentManager,_commandService,_localeService,_menuService,_injector,_shortcutService){super(),this._config=_config,this._componentManager=_componentManager,this._commandService=_commandService,this._localeService=_localeService,this._menuService=_menuService,this._injector=_injector,this._shortcutService=_shortcutService,this._initComponents(),this._initCommands(),this._initMenus(),this._initShortCut()}_initComponents(){[[CellLinkPopup,CellLinkPopup.componentKey],[CellLinkEdit,CellLinkEdit.componentKey],[LinkSingle,"LinkSingle"]].forEach(([comp,key])=>{this._componentManager.register(key,comp)})}_initCommands(){[OpenHyperLinkSidebarOperation,CloseHyperLinkSidebarOperation,InsertHyperLinkOperation,InsertHyperLinkToolbarOperation,AddHyperLinkCommand,UpdateHyperLinkCommand,RemoveHyperLinkCommand,CancelHyperLinkCommand].forEach(command=>{this._commandService.registerCommand(command)})}_initMenus(){var _a2,_b2,_c2,_d2;this._menuService.addMenuItem(insertLinkMenuFactory(this._injector),(_b2=(_a2=this._config)==null?void 0:_a2.menu)!=null?_b2:{}),this._menuService.addMenuItem(insertLinkMenuToolbarFactory(this._injector),(_d2=(_c2=this._config)==null?void 0:_c2.menu)!=null?_d2:{})}_initShortCut(){this._shortcutService.registerShortcut(InsertLinkShortcut)}},__name(_i,"SheetsHyperLinkUIController"),_i);SheetsHyperLinkUIController=__decorateClass$4([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkUIController),__decorateParam$4(1,core.Inject(ui.ComponentManager)),__decorateParam$4(2,core.ICommandService),__decorateParam$4(3,core.Inject(core.LocaleService)),__decorateParam$4(4,ui.IMenuService),__decorateParam$4(5,core.Inject(core.Injector)),__decorateParam$4(6,core.Inject(ui.IShortcutService))],SheetsHyperLinkUIController);var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$3");let SheetsHyperLinkAutoFillController=(_j=class extends core.Disposable{constructor(_autoFillService,_hyperLinkModel){super(),this._autoFillService=_autoFillService,this._hyperLinkModel=_hyperLinkModel,this._initAutoFill()}_initAutoFill(){const noopReturnFunc=__name(()=>({redos:[],undos:[]}),"noopReturnFunc"),generalApplyFunc=__name((location2,applyType)=>{const{source:sourceRange,target:targetRange,unitId,subUnitId}=location2,virtualRange=sheetsUi.virtualizeDiscreteRanges([sourceRange,targetRange]),[vSourceRange,vTargetRange]=virtualRange.ranges,{mapFunc}=virtualRange,sourceStartCell={row:vSourceRange.startRow,col:vSourceRange.startColumn},repeats=sheetsUi.getAutoFillRepeatRange(vSourceRange,vTargetRange),redos=[],undos=[];return repeats.forEach(repeat=>{const targetStartCell=repeat.repeatStartCell,relativeRange=repeat.relativeRange,sourceRange2={startRow:sourceStartCell.row,startColumn:sourceStartCell.col,endColumn:sourceStartCell.col,endRow:sourceStartCell.row},targetRange2={startRow:targetStartCell.row,startColumn:targetStartCell.col,endColumn:targetStartCell.col,endRow:targetStartCell.row};core.Range.foreach(relativeRange,(row,col)=>{const sourcePositionRange=core.Rectangle.getPositionRange({startRow:row,startColumn:col,endColumn:col,endRow:row},sourceRange2),{row:sourceRow,col:sourceCol}=mapFunc(sourcePositionRange.startRow,sourcePositionRange.startColumn),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,sourceRow,sourceCol),targetPositionRange=core.Rectangle.getPositionRange({startRow:row,startColumn:col,endColumn:col,endRow:row},targetRange2),{row:targetRow,col:targetCol}=mapFunc(targetPositionRange.startRow,targetPositionRange.startColumn),id=core.Tools.generateRandomId(),currentLink=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,targetRow,targetCol);currentLink&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:currentLink.id}}),(sheetsUi.APPLY_TYPE.COPY===applyType||sheetsUi.APPLY_TYPE.SERIES===applyType)&&link&&(redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{...link,id,row:targetRow,column:targetCol}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id}})),currentLink&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:currentLink}})})}),{undos,redos}},"generalApplyFunc"),hook={id:SHEET_HYPER_LINK_UI_PLUGIN,onFillData:__name((location2,direction,applyType)=>applyType===sheetsUi.APPLY_TYPE.COPY||applyType===sheetsUi.APPLY_TYPE.ONLY_FORMAT||applyType===sheetsUi.APPLY_TYPE.SERIES?generalApplyFunc(location2,applyType):noopReturnFunc(),"onFillData")};this.disposeWithMe(this._autoFillService.addHook(hook))}},__name(_j,"SheetsHyperLinkAutoFillController"),_j);SheetsHyperLinkAutoFillController=__decorateClass$3([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkAutoFillController),__decorateParam$3(0,sheetsUi.IAutoFillService),__decorateParam$3(1,core.Inject(sheetsHyperLink.HyperLinkModel))],SheetsHyperLinkAutoFillController);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$2");let SheetHyperLinkUrlController=(_k=class extends core.Disposable{constructor(_resolverService){super(),this._resolverService=_resolverService,this._handleInitUrl()}_handleInitUrl(){const hash=location.hash;hash&&this._resolverService.parseHyperLink(hash).handler()}},__name(_k,"SheetHyperLinkUrlController"),_k);SheetHyperLinkUrlController=__decorateClass$2([core.OnLifecycle(core.LifecycleStages.Rendered,SheetHyperLinkUrlController),__decorateParam$2(0,core.Inject(exports2.SheetsHyperLinkResolverService))],SheetHyperLinkUrlController);var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$1");let SheetsHyperLinkPermissionController=(_l=class extends core.Disposable{constructor(_localeService,_commandService,_sheetPermissionInterceptorBaseController){super(),this._localeService=_localeService,this._commandService=_commandService,this._sheetPermissionInterceptorBaseController=_sheetPermissionInterceptorBaseController,this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(command=>{command.id===InsertLinkShortcut.id&&(this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookEditablePermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission]})||this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.hyperLinkErr")))}))}},__name(_l,"SheetsHyperLinkPermissionController"),_l);SheetsHyperLinkPermissionController=__decorateClass$1([core.OnLifecycle(core.LifecycleStages.Rendered,SheetsHyperLinkPermissionController),__decorateParam$1(0,core.Inject(core.LocaleService)),__decorateParam$1(1,core.ICommandService),__decorateParam$1(2,core.Inject(sheetsUi.SheetPermissionInterceptorBaseController))],SheetsHyperLinkPermissionController);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__defNormalProp2=__name((obj,key,value)=>key in obj?__defProp2(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,"__defNormalProp"),__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam"),__publicField2=__name((obj,key,value)=>__defNormalProp2(obj,typeof key!="symbol"?key+"":key,value),"__publicField");exports2.UniverSheetsHyperLinkUIPlugin=(_m=class extends core.Plugin{constructor(_config,_injector,_renderManagerService){super(),this._config=_config,this._injector=_injector,this._renderManagerService=_renderManagerService}onStarting(){[[exports2.SheetsHyperLinkResolverService,{useFactory:__name(()=>{var _a2;return this._injector.createInstance(exports2.SheetsHyperLinkResolverService,(_a2=this._config)==null?void 0:_a2.urlHandler)},"useFactory")}],[exports2.SheetsHyperLinkPopupService],[SheetsHyperLinkSidePanelService],[SheetsHyperLinkRemoveSheetController],[SheetsHyperLinkRenderManagerController],[SheetHyperLinkSetRangeController],[SheetsHyperLinkPopupController],[SheetsHyperLinkUIController,{useFactory:__name(()=>this._injector.createInstance(SheetsHyperLinkUIController,this._config),"useFactory")}],[SheetsHyperLinkAutoFillController],[exports2.SheetsHyperLinkCopyPasteController],[SheetsHyperLinkPermissionController],[SheetHyperLinkUrlController]].forEach(dep=>this._injector.add(dep))}onReady(){[[SheetsHyperLinkRenderController]].forEach(d=>this._renderManagerService.registerRenderModule(core.UniverInstanceType.UNIVER_SHEET,d))}},__name(_m,"UniverSheetsHyperLinkUIPlugin"),_m),__publicField2(exports2.UniverSheetsHyperLinkUIPlugin,"pluginName",SHEET_HYPER_LINK_UI_PLUGIN),__publicField2(exports2.UniverSheetsHyperLinkUIPlugin,"type",core.UniverInstanceType.UNIVER_SHEET),exports2.UniverSheetsHyperLinkUIPlugin=__decorateClass([core.DependentOn(sheetsHyperLink.UniverSheetsHyperLinkPlugin),__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,engineRender.IRenderManagerService)],exports2.UniverSheetsHyperLinkUIPlugin),exports2.AddHyperLinkCommand=AddHyperLinkCommand,exports2.CancelHyperLinkCommand=CancelHyperLinkCommand,exports2.CloseHyperLinkSidebarOperation=CloseHyperLinkSidebarOperation,exports2.InsertHyperLinkOperation=InsertHyperLinkOperation,exports2.InsertLinkShortcut=InsertLinkShortcut,exports2.OpenHyperLinkSidebarOperation=OpenHyperLinkSidebarOperation,exports2.RemoveHyperLinkCommand=RemoveHyperLinkCommand,exports2.SheetsHyperLinkSidePanelService=SheetsHyperLinkSidePanelService,exports2.UpdateHyperLinkCommand=UpdateHyperLinkCommand,Object.defineProperty(exports2,Symbol.toStringTag,{value:"Module"})});
|
|
9
|
+
*/var f=require$$0,k=Symbol.for("react.element"),l=Symbol.for("react.fragment"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};function q(c,a,g){var b,d={},e=null,h=null;g!==void 0&&(e=""+g),a.key!==void 0&&(e=""+a.key),a.ref!==void 0&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)d[b]===void 0&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}__name(q,"q"),reactJsxRuntime_production_min.Fragment=l,reactJsxRuntime_production_min.jsx=q,reactJsxRuntime_production_min.jsxs=q,jsxRuntime.exports=reactJsxRuntime_production_min;var jsxRuntimeExports=jsxRuntime.exports,__assign=function(){return __assign=Object.assign||function(t){for(var s,i=1,n2=arguments.length;i<n2;i++){s=arguments[i];for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&(t[p2]=s[p2])}return t},__assign.apply(this,arguments)},__rest=function(s,e){var t={};for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&e.indexOf(p2)<0&&(t[p2]=s[p2]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p2=Object.getOwnPropertySymbols(s);i<p2.length;i++)e.indexOf(p2[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p2[i])&&(t[p2[i]]=s[p2[i]]);return t},IconBase=require$$0.forwardRef(function(props,ref){var icon=props.icon,id=props.id,className=props.className,extend=props.extend,restProps=__rest(props,["icon","id","className","extend"]),cls="univerjs-icon univerjs-icon-".concat(id," ").concat(className||"").trim(),idSuffix=require$$0.useRef("_".concat(generateShortUuid()));return render(icon,"".concat(id),{defIds:icon.defIds,idSuffix:idSuffix.current},__assign({ref,className:cls},restProps),extend)});function render(node,id,runtimeProps,rootProps,extend){return require$$0.createElement(node.tag,__assign(__assign({key:id},replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend)),rootProps),(replaceRuntimeIdsInDefs(node,runtimeProps).children||[]).map(function(child,index){return render(child,"".concat(id,"-").concat(node.tag,"-").concat(index),runtimeProps,void 0,extend)}))}__name(render,"render");function replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend){var attrs=__assign({},node.attrs);extend!=null&&extend.colorChannel1&&attrs.fill==="colorChannel1"&&(attrs.fill=extend.colorChannel1);var defIds=runtimeProps.defIds;return!defIds||defIds.length===0||(node.tag==="use"&&attrs["xlink:href"]&&(attrs["xlink:href"]=attrs["xlink:href"]+runtimeProps.idSuffix),Object.entries(attrs).forEach(function(_a2){var key=_a2[0],value=_a2[1];typeof value=="string"&&(attrs[key]=value.replace(/url\(#(.*)\)/,"url(#$1".concat(runtimeProps.idSuffix,")")))})),attrs}__name(replaceRuntimeIdsAndExtInAttrs,"replaceRuntimeIdsAndExtInAttrs");function replaceRuntimeIdsInDefs(node,runtimeProps){var _a2,defIds=runtimeProps.defIds;return!defIds||defIds.length===0?node:node.tag==="defs"&&(!((_a2=node.children)===null||_a2===void 0)&&_a2.length)?__assign(__assign({},node),{children:node.children.map(function(child){return typeof child.attrs.id=="string"&&defIds&&defIds.indexOf(child.attrs.id)>-1?__assign(__assign({},child),{attrs:__assign(__assign({},child.attrs),{id:child.attrs.id+runtimeProps.idSuffix})}):child})}):node}__name(replaceRuntimeIdsInDefs,"replaceRuntimeIdsInDefs");function generateShortUuid(){return Math.random().toString(36).substring(2,8)}__name(generateShortUuid,"generateShortUuid"),IconBase.displayName="UniverIcon";var element$5={tag:"svg",attrs:{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"}}]},AllBorderSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"all-border-single",ref,icon:element$5}))});AllBorderSingle.displayName="AllBorderSingle";var element$4={tag:"svg",attrs:{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"}}]},CopySingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"copy-single",ref,icon:element$4}))});CopySingle.displayName="CopySingle";var element$3={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.9564 2.91332C4.91407 1.87102 3.22413 1.87101 2.18182 2.91333L2.18182 2.91333C1.13953 3.95567 1.13952 5.6456 2.18182 6.68791L8.27777 12.7838C9.72408 14.2302 12.069 14.2302 13.5154 12.7839L13.0911 12.3596L13.5154 12.7839C14.9617 11.3375 14.9617 8.99257 13.5154 7.54626L8.39476 2.42566C8.16044 2.19134 7.78054 2.19134 7.54623 2.42566C7.31191 2.65997 7.31191 3.03987 7.54623 3.27419L12.6668 8.39479L13.0911 7.97052L12.6668 8.39479C13.6445 9.37247 13.6445 10.9576 12.6668 11.9353L13.0399 12.3084L12.6668 11.9353C11.6891 12.913 10.104 12.913 9.1263 11.9353L3.03035 5.83938C2.45668 5.26571 2.45667 4.33556 3.03036 3.76184C3.60403 3.18818 4.53416 3.18817 5.10788 3.76185C5.10788 3.76186 5.10788 3.76186 5.10789 3.76186L11.2038 9.8578L11.601 9.46061L11.2038 9.8578C11.3735 10.0275 11.3735 10.3026 11.2038 10.4723L11.2038 10.4723C11.0341 10.642 10.759 10.642 10.5893 10.4723L5.46874 5.35171C5.23442 5.1174 4.85452 5.1174 4.62021 5.35171C4.38589 5.58602 4.38589 5.96592 4.62021 6.20024L9.74078 11.3208C10.3791 11.9591 11.414 11.9591 12.0523 11.3208C12.0523 11.3208 12.0523 11.3208 12.0523 11.3208M12.0523 11.3208C12.6907 10.6825 12.6906 9.64757 12.0523 9.00927L5.95641 2.91333L5.9564 2.91332",fillRule:"evenodd",clipRule:"evenodd"}}]},LinkSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"link-single",ref,icon:element$3}))});LinkSingle.displayName="LinkSingle";var element$2={tag:"svg",attrs:{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.76157 6.75249 4.52725 6.75249 4.14735 6.98681 3.91304L8.27535 2.62449C9.70209 1.19776 12.0153 1.19776 13.442 2.62449 14.8688 4.05123 14.8688 6.36442 13.442 7.79116L12.1535 9.0797C11.9192 9.31402 11.5393 9.31402 11.3049 9.0797 11.0706 8.84539 11.0706 8.46549 11.3049 8.23117L12.5935 6.94263C13.5516 5.98452 13.5516 4.43113 12.5935 3.47302zM3.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.05395 4.4606 6.81963 4.0807 6.81963 3.84639 7.05395L2.55784 8.34249C1.13111 9.76923 1.13111 12.0824 2.55784 13.5092 3.98458 14.9359 6.29777 14.9359 7.72451 13.5092L9.01305 12.2206C9.24737 11.9863 9.24737 11.6064 9.01305 11.3721 8.77874 11.1378 8.39884 11.1378 8.16452 11.3721L6.87598 12.6606C5.91787 13.6187 4.36448 13.6187 3.40637 12.6606zM3.5852 2.80332C3.35088 2.569 2.97098 2.569 2.73667 2.80332 2.50235 3.03763 2.50235 3.41753 2.73667 3.65185L12.4151 13.3302C12.6494 13.5646 13.0293 13.5646 13.2636 13.3302 13.4979 13.0959 13.4979 12.716 13.2636 12.4817L3.5852 2.80332z"}}]},UnlinkSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"unlink-single",ref,icon:element$2}))});UnlinkSingle.displayName="UnlinkSingle";var element$1={tag:"svg",attrs:{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"}}]},WriteSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"write-single",ref,icon:element$1}))});WriteSingle.displayName="WriteSingle";var element={tag:"svg",attrs:{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:"#fff",d:"M7.8088 10.2949L6.3764 12.403C6.26259 12.5705 6.03455 12.614 5.86705 12.5002C5.69955 12.3864 5.65603 12.1584 5.76984 11.9909L7.3655 9.64252L5.94042 7.54519C5.82661 7.37769 5.87013 7.14964 6.03763 7.03583C6.20512 6.92202 6.43317 6.96555 6.54698 7.13304L7.8088 8.9901L9.07062 7.13304C9.18443 6.96555 9.41248 6.92202 9.57997 7.03583C9.74747 7.14964 9.79099 7.37769 9.67718 7.54519L8.2521 9.64252L9.84776 11.9909C9.96157 12.1584 9.91805 12.3864 9.75055 12.5002C9.58305 12.614 9.35501 12.5705 9.2412 12.403L7.8088 10.2949Z",fillRule:"evenodd",clipRule:"evenodd"}}]},Xlsx=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"xlsx",ref,icon:element}))});Xlsx.displayName="Xlsx";const PLUGIN_CONFIG_KEY="sheets-hyper-link-ui.config",defaultPluginConfig={};var __defProp$b=Object.defineProperty,__getOwnPropDesc$b=Object.getOwnPropertyDescriptor,__decorateClass$b=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$b(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$b(target,key,result),result},"__decorateClass$b"),__decorateParam$b=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$b");function getContainRange(range,worksheet){const mergedCells=worksheet.getMergeData(),maxCol=worksheet.getMaxColumns()-1,maxRow=worksheet.getMaxRows()-1;if(maxCol<range.endColumn&&(range.endColumn=maxCol),maxRow<range.endRow&&(range.endRow=maxRow),range.rangeType===core.RANGE_TYPE.COLUMN||core.RANGE_TYPE.ROW)return range;const relativeCells=[];return mergedCells.forEach(cell=>{core.Rectangle.intersects(range,cell)&&relativeCells.push(cell)}),core.Rectangle.realUnion(range,...relativeCells)}__name(getContainRange,"getContainRange"),exports2.SheetsHyperLinkResolverService=(_a=class{constructor(_univerInstanceService,_commandService,_definedNamesService,_messageService,_localeService,_configService){this._univerInstanceService=_univerInstanceService,this._commandService=_commandService,this._definedNamesService=_definedNamesService,this._messageService=_messageService,this._localeService=_localeService,this._configService=_configService}_getURLName(params){var _a2;const{gid,range,rangeid}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return null;const sheet=gid?workbook.getSheetBySheetId(gid):workbook.getActiveSheet(),sheetName=(_a2=sheet==null?void 0:sheet.getName())!=null?_a2:"";if(range){const rangeObj=engineFormula.deserializeRangeWithSheet(range).range;return core.isValidRange(rangeObj)&&range!==sheetsHyperLink.ERROR_RANGE?{type:"range",name:engineFormula.serializeRangeWithSheet(sheetName,rangeObj)}:{type:"range-error",name:this._localeService.t("hyperLink.message.refError")}}if(rangeid){const range2=this._definedNamesService.getValueById(workbook.getUnitId(),rangeid);return range2?{type:"defineName",name:range2.formulaOrRefString}:{type:"range-error",name:this._localeService.t("hyperLink.message.refError")}}if(gid){const worksheet=workbook.getSheetBySheetId(gid);return worksheet?{type:"sheet",name:worksheet.getName()}:{type:"sheet-error",name:this._localeService.t("hyperLink.message.refError")}}return null}navigateTo(params){const{gid,range,rangeid}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const unitId=workbook.getUnitId();if(rangeid&&this.navigateToDefineName(unitId,rangeid),!!gid){if(range){const rangeInfo=engineFormula.deserializeRangeWithSheet(range);core.isValidRange(rangeInfo.range)&&range!==sheetsHyperLink.ERROR_RANGE&&this.navigateToRange(unitId,gid,rangeInfo.range);return}this.navigateToSheetById(unitId,gid)}}parseHyperLink(urlStr){var _a2,_b2,_c2;if(urlStr!=null&&urlStr.startsWith("#")){const search=new URLSearchParams(urlStr.slice(1)),searchObj={gid:(_a2=search.get("gid"))!=null?_a2:"",range:(_b2=search.get("range"))!=null?_b2:"",rangeid:(_c2=search.get("rangeid"))!=null?_c2:""},urlInfo=this._getURLName(searchObj);return{type:(urlInfo==null?void 0:urlInfo.type)||"link",name:(urlInfo==null?void 0:urlInfo.name)||urlStr,url:urlStr,searchObj,handler:__name(()=>{this.navigateTo(searchObj)},"handler")}}else return{type:"outer",name:urlStr,url:urlStr,handler:__name(()=>{this.navigateToOtherWebsite(urlStr)},"handler")}}async navigateToRange(unitId,subUnitId,range){const worksheet=await this.navigateToSheetById(unitId,subUnitId);if(worksheet){const realRange=getContainRange(range,worksheet);await this._commandService.executeCommand(sheets.SetSelectionsOperation.id,{unitId,subUnitId,selections:[{range:realRange}]}),await this._commandService.executeCommand(sheetsUi.ScrollToRangeOperation.id,{range:realRange})}}async navigateToSheet(unitId,sheetName){const workbook=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return!1;const worksheet=workbook.getActiveSheet();if((worksheet==null?void 0:worksheet.getName())===sheetName)return!0;const targetSheet=workbook.getSheetBySheetName(sheetName);if(!targetSheet){this._messageService.show({content:this._localeService.t("hyperLink.message.noSheet"),type:design.MessageType.Error});return}const sheetId=targetSheet.getSheetId();return workbook.getHiddenWorksheets().indexOf(sheetId)>-1&&this._messageService.show({content:this._localeService.t("hyperLink.message.hiddenSheet"),type:design.MessageType.Error}),await this._commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId,subUnitId:sheetId})}async navigateToSheetById(unitId,subUnitId){const workbook=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return!1;const worksheet=workbook.getActiveSheet();if(!worksheet)return!1;if(worksheet.getSheetId()===subUnitId)return worksheet;const targetSheet=workbook.getSheetBySheetId(subUnitId);return targetSheet?workbook.getHiddenWorksheets().indexOf(subUnitId)>-1?(this._messageService.show({content:this._localeService.t("hyperLink.message.hiddenSheet"),type:design.MessageType.Error}),!1):await this._commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId,subUnitId})?targetSheet:!1:(this._messageService.show({content:this._localeService.t("hyperLink.message.noSheet"),type:design.MessageType.Error}),!1)}async navigateToDefineName(unitId,rangeid){return this._definedNamesService.focusRange(unitId,rangeid),!0}async navigateToOtherWebsite(url){var _a2;const config=this._configService.getConfig(PLUGIN_CONFIG_KEY);if((_a2=config==null?void 0:config.urlHandler)!=null&&_a2.navigateToOtherWebsite)return config.urlHandler.navigateToOtherWebsite(url);window.open(url,"_blank","noopener noreferrer")}},__name(_a,"SheetsHyperLinkResolverService"),_a),exports2.SheetsHyperLinkResolverService=__decorateClass$b([__decorateParam$b(0,core.IUniverInstanceService),__decorateParam$b(1,core.ICommandService),__decorateParam$b(2,engineFormula.IDefinedNamesService),__decorateParam$b(3,ui.IMessageService),__decorateParam$b(4,core.Inject(core.LocaleService)),__decorateParam$b(5,core.IConfigService)],exports2.SheetsHyperLinkResolverService);function isLegalLink(link){return core.Tools.isLegalUrl(link)}__name(isLegalLink,"isLegalLink");function hasProtocol(urlString){return/^[a-zA-Z]+:\/\//.test(urlString)}__name(hasProtocol,"hasProtocol");function isEmail(url){return/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/.test(url)}__name(isEmail,"isEmail");function serializeUrl(urlStr){if(isLegalLink(urlStr)){const transformedUrl=hasProtocol(urlStr)?urlStr:isEmail(urlStr)?`mailto://${urlStr}`:`http://${urlStr}`;let url;try{url=new URL(transformedUrl)}catch{return urlStr}return url.hostname===location.hostname&&url.port===location.port&&url.protocol===location.protocol&&url.pathname===location.pathname&&url.hash&&!url.search?url.hash:transformedUrl}return urlStr}__name(serializeUrl,"serializeUrl");function getCellValueOrigin(cell){if(cell===null)return"";if(cell!=null&&cell.p){const body=cell==null?void 0:cell.p.body;if(body==null)return"";const data=body.dataStream;return data.substring(data.length-2,data.length)===core.DEFAULT_EMPTY_DOCUMENT_VALUE?data.substring(0,data.length-2):data}return cell==null?void 0:cell.v}__name(getCellValueOrigin,"getCellValueOrigin");const AddHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.add-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),{unitId,subUnitId,link}=params,{redos,undos}=sheetInterceptorService.onCommandExecute({id:AddHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.AddHyperLinkMutation.id,params},undo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}};function getHyperLinkContent(link){const{row,column,id,...content}=link;return content}__name(getHyperLinkContent,"getHyperLinkContent");const UpdateHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.update-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id);if(!link)return!1;const{redos,undos}=sheetInterceptorService.onCommandExecute({id:UpdateHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.UpdateHyperLinkMutation.id,params},undo={id:sheetsHyperLink.UpdateHyperLinkMutation.id,params:{unitId,subUnitId,id,payload:getHyperLinkContent(link)}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}},styles$1={cellLinkEditButtons:"univer-cell-link-edit-buttons"},CellLinkEdit=__name(()=>{var _a2;const[id,setId]=require$$0.useState(""),[display,setDisplay]=require$$0.useState(""),[type,setType]=require$$0.useState(LinkType.link),[payload,setPayload]=require$$0.useState(""),localeService=core.useDependency(core.LocaleService),definedNameService=core.useDependency(engineFormula.IDefinedNamesService),univerInstanceService=core.useDependency(core.IUniverInstanceService),popupService=core.useDependency(exports2.SheetsHyperLinkPopupService),editing=ui.useObservable(popupService.currentEditing$),hyperLinkModel=core.useDependency(sheetsHyperLink.HyperLinkModel),resolverService=core.useDependency(exports2.SheetsHyperLinkResolverService),commandService=core.useDependency(core.ICommandService),sidePanelService=core.useDependency(SheetsHyperLinkSidePanelService),sidePanelOptions=require$$0.useMemo(()=>sidePanelService.getOptions(),[sidePanelService]),customHyperLinkSidePanel=require$$0.useMemo(()=>{if(!sidePanelService.isBuiltInLinkType(type))return sidePanelService.getCustomHyperLink(type)},[sidePanelService,type]),[showError,setShowError]=require$$0.useState(!1),setByPayload=require$$0.useRef(!1);require$$0.useEffect(()=>{var _a3,_b2,_c2;if((editing==null?void 0:editing.row)!==void 0&&editing.column!==void 0){const link=hyperLinkModel.getHyperLinkByLocationSync(editing.unitId,editing.subUnitId,editing.row,editing.column);if(link){setId(link.id);const customLink=sidePanelService.findCustomHyperLink(link);if(customLink){const customLinkInfo=customLink.convert(link);setType(customLinkInfo.type),setPayload(customLinkInfo.payload),setDisplay(customLinkInfo.display);return}setDisplay(link.display);const linkInfo=resolverService.parseHyperLink(link.payload);if(linkInfo.type==="outer"){setType(LinkType.link),setPayload(linkInfo.url),linkInfo.url===link.display&&(setByPayload.current=!0);return}else{const params=linkInfo.searchObj;if(params.rangeid){setType(LinkType.definedName),setPayload(params.rangeid);return}if(params.range){const sheetName=params.gid&&(_c2=(_b2=(_a3=univerInstanceService.getUnit(editing.unitId))==null?void 0:_a3.getSheetBySheetId(params.gid))==null?void 0:_b2.getName())!=null?_c2:"";if(setType(LinkType.range),params.range===sheetsHyperLink.ERROR_RANGE)setPayload("");else{const payload2=engineFormula.serializeRangeWithSheet(sheetName,engineFormula.deserializeRangeWithSheet(params.range).range);setPayload(payload2),payload2===link.display&&(setByPayload.current=!0)}return}if(params.gid){setType(LinkType.sheet),setPayload(params.gid);return}}}const workbook2=univerInstanceService.getUnit(editing.unitId),worksheet=workbook2==null?void 0:workbook2.getSheetBySheetId(editing.subUnitId),cell=worksheet==null?void 0:worksheet.getCellRaw(editing.row,editing.column),cellValue=getCellValueOrigin(cell);setType(LinkType.link),setPayload(""),setDisplay((cellValue!=null?cellValue:"").toString()),setId("");return}setType(LinkType.link),setPayload(""),setDisplay(""),setId("")},[editing,hyperLinkModel,resolverService,univerInstanceService]);const payloadInitial=require$$0.useMemo(()=>payload,[type]),linkTypeOptions=[{label:localeService.t("hyperLink.form.link"),value:LinkType.link},{label:localeService.t("hyperLink.form.range"),value:LinkType.range},{label:localeService.t("hyperLink.form.worksheet"),value:LinkType.sheet},{label:localeService.t("hyperLink.form.definedName"),value:LinkType.definedName},...sidePanelOptions],workbook=univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const hiddens=workbook.getHiddenWorksheets(),sheetsOption=workbook.getSheets().map(sheet=>({label:sheet.getName(),value:sheet.getSheetId()})).filter(opt=>hiddens.indexOf(opt.value)===-1),definedNames=Object.values((_a2=definedNameService.getDefinedNameMap(workbook.getUnitId()))!=null?_a2:{}).map(value=>({label:value.name,value:value.id})),formatUrl=__name((type2,payload2)=>{if(type2===LinkType.link)return serializeUrl(payload2);if(type2===LinkType.range){const info=engineFormula.deserializeRangeWithSheet(payload2),worksheet=workbook.getSheetBySheetName(info.sheetName);if(worksheet)return`#gid=${worksheet.getSheetId()}&range=${engineFormula.serializeRange(info.range)}`}return`#${type2}=${payload2}`},"formatUrl"),handleRangeChange=ui.useEvent(newValue=>{var _a3;const range=newValue[0];if(!range||!core.isValidRange(range.range))return;range.sheetName||(range.sheetName=((_a3=workbook.getActiveSheet())==null?void 0:_a3.getName())||"");const newPayload=engineFormula.serializeRangeToRefString(range);setPayload(newPayload),newPayload&&(setByPayload.current||!display)&&(setDisplay(newPayload),setByPayload.current=!0)}),handleSubmit=__name(async()=>{if(editing&&(id?await commandService.executeCommand(UpdateHyperLinkCommand.id,{unitId:editing.unitId,subUnitId:editing.subUnitId,id,payload:{display,payload:formatUrl(type,payload)}}):await commandService.executeCommand(AddHyperLinkCommand.id,{unitId:editing.unitId,subUnitId:editing.subUnitId,link:{id:core.Tools.generateRandomId(),row:editing.row,column:editing.column,payload:formatUrl(type,payload),display}})),editing){await commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId:editing.unitId,subUnitId:editing.subUnitId});const GAP=1;await commandService.executeCommand(sheetsUi.ScrollToRangeOperation.id,{range:{startRow:Math.max(editing.row-GAP,0),endRow:editing.row+GAP,startColumn:Math.max(editing.column-GAP,0),endColumn:editing.column+GAP}})}commandService.executeCommand(CloseHyperLinkSidebarOperation.id)},"handleSubmit");return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("hyperLink.form.label"),error:showError&&!display?localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(design.Input,{value:display,onChange:__name(v=>{setDisplay(v),setByPayload.current=!1},"onChange"),placeholder:localeService.t("hyperLink.form.labelPlaceholder")})}),jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("hyperLink.form.type"),children:jsxRuntimeExports.jsx(design.Select,{options:linkTypeOptions,value:type,onChange:__name(newType=>{setType(newType),setPayload("")},"onChange")})}),type===LinkType.link&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError?payload?isLegalLink(payload)?"":localeService.t("hyperLink.form.linkError"):localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(design.Input,{value:payload,onChange:__name(newLink=>{setPayload(newLink),newLink&&(setByPayload.current||!display||display===payload)&&(setDisplay(newLink),setByPayload.current=!0)},"onChange"),placeholder:localeService.t("hyperLink.form.linkPlaceholder")})}),type===LinkType.range&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.inputError"):"",children:jsxRuntimeExports.jsx(ui.RangeSelector,{openForSheetUnitId:workbook.getUnitId(),id:core.createInternalEditorID("hyper-link-edit"),isSingleChoice:!0,value:payloadInitial,onChange:handleRangeChange})}),type===LinkType.sheet&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.selectError"):"",children:jsxRuntimeExports.jsx(design.Select,{options:sheetsOption,value:payload,onChange:__name(newPayload=>{var _a3,_b2;setPayload(newPayload);const label=(_a3=sheetsOption.find(i=>i.value===newPayload))==null?void 0:_a3.label,oldLabel=(_b2=sheetsOption.find(i=>i.value===payload))==null?void 0:_b2.label;label&&(setByPayload.current||!display||display===oldLabel)&&(setDisplay(label),setByPayload.current=!0)},"onChange")})}),type===LinkType.definedName&&jsxRuntimeExports.jsx(design.FormLayout,{error:showError&&!payload?localeService.t("hyperLink.form.selectError"):"",children:jsxRuntimeExports.jsx(design.Select,{options:definedNames,value:payload,onChange:__name(newValue=>{var _a3,_b2;setPayload(newValue);const label=(_a3=definedNames.find(i=>i.value===newValue))==null?void 0:_a3.label,oldLabel=(_b2=definedNames.find(i=>i.value===payload))==null?void 0:_b2.label;label&&(setByPayload.current||!display||display===oldLabel)&&(setDisplay(label),setByPayload.current=!0)},"onChange")})}),(customHyperLinkSidePanel==null?void 0:customHyperLinkSidePanel.Form)&&jsxRuntimeExports.jsx(customHyperLinkSidePanel.Form,{linkId:id,payload,display,showError,setByPayload,setDisplay:__name(newLink=>{setDisplay(newLink),setByPayload.current=!0},"setDisplay"),setPayload}),jsxRuntimeExports.jsxs("div",{className:styles$1.cellLinkEditButtons,children:[jsxRuntimeExports.jsx(design.Button,{onClick:__name(()=>{editing&&commandService.executeCommand(sheets.SetWorksheetActiveOperation.id,{unitId:editing.unitId,subUnitId:editing.subUnitId}),commandService.executeCommand(CloseHyperLinkSidebarOperation.id)},"onClick"),children:localeService.t("hyperLink.form.cancel")}),jsxRuntimeExports.jsx(design.Button,{type:"primary",style:{marginLeft:8},onClick:__name(async()=>{if(!display||!payload||type===LinkType.link&&!isLegalLink(payload)){setShowError(!0);return}handleSubmit()},"onClick"),children:localeService.t("hyperLink.form.ok")})]})]})},"CellLinkEdit");CellLinkEdit.componentKey="univer.sheet.cell-link-edit";const OpenHyperLinkSidebarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.open-hyper-link-sidebar",handler(accessor,params){if(!params)return!1;const{unitId,subUnitId,row,column}=params,hyperLinkModel=accessor.get(sheetsHyperLink.HyperLinkModel),sidebarService=accessor.get(ui.ISidebarService),popupService=accessor.get(exports2.SheetsHyperLinkPopupService),currentLink=hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,column);return popupService.startEditing(params),sidebarService.open({header:{title:currentLink?"hyperLink.form.editTitle":"hyperLink.form.addTitle"},children:{label:CellLinkEdit.componentKey}}),!0}},CloseHyperLinkSidebarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.close-hyper-link-sidebar",handler(accessor){const sidebarService=accessor.get(ui.ISidebarService),popupService=accessor.get(exports2.SheetsHyperLinkPopupService);return sidebarService.close(),popupService.endEditing(),!0}},InsertHyperLinkOperation={type:core.CommandType.OPERATION,id:"sheet.operation.insert-hyper-link",handler(accessor){const univerInstanceService=accessor.get(core.IUniverInstanceService),target=sheets.getSheetCommandTarget(univerInstanceService);if(!target)return!1;const commandService=accessor.get(core.ICommandService),selection=accessor.get(sheets.SheetsSelectionsService).getCurrentLastSelection();if(!selection)return!1;const row=selection.primary.startRow,column=selection.primary.startColumn;return commandService.executeCommand(OpenHyperLinkSidebarOperation.id,{unitId:target.unitId,subUnitId:target.subUnitId,row,column})}},InsertHyperLinkToolbarOperation={type:core.CommandType.OPERATION,id:"sheet.operation.insert-hyper-link-toolbar",handler(accessor){const commandService=accessor.get(core.ICommandService);return accessor.get(exports2.SheetsHyperLinkPopupService).currentEditing?commandService.executeCommand(CloseHyperLinkSidebarOperation.id):commandService.executeCommand(InsertHyperLinkOperation.id)}},RemoveHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.remove-hyper-link",async handler(accessor,params){if(!params)return!1;const sheetInterceptorService=accessor.get(sheets.SheetInterceptorService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id),{redos,undos}=sheetInterceptorService.onCommandExecute({id:RemoveHyperLinkCommand.id,params}),redo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params},undo={id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}};return(await core.sequenceExecuteAsync([redo,...redos],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo,...redos],undoMutations:[undo,...undos],unitID:unitId}),!0):!1}},CancelHyperLinkCommand={type:core.CommandType.COMMAND,id:"sheets.command.cancel-hyper-link",async handler(accessor,params){if(!params)return!1;const commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),model=accessor.get(sheetsHyperLink.HyperLinkModel),{unitId,subUnitId,id}=params,link=model.getHyperLink(unitId,subUnitId,id),redo={id:sheetsHyperLink.RemoveHyperLinkMutation.id,params},undo={id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}};return(await core.sequenceExecuteAsync([redo],commandService)).result?(undoRedoService.pushUndoRedo({redoMutations:[redo],undoMutations:[undo],unitID:unitId}),!0):!1}},styles={cellLink:"univer-cell-link",cellLinkType:"univer-cell-link-type",cellLinkContent:"univer-cell-link-content",cellLinkContentError:"univer-cell-link-content-error",cellLinkUrl:"univer-cell-link-url",cellLinkOperations:"univer-cell-link-operations",cellLinkOperation:"univer-cell-link-operation",cellLinkOperationError:"univer-cell-link-operation-error"},iconsMap={outer:jsxRuntimeExports.jsx(LinkSingle,{}),link:jsxRuntimeExports.jsx(LinkSingle,{}),sheet:jsxRuntimeExports.jsx(Xlsx,{}),range:jsxRuntimeExports.jsx(AllBorderSingle,{}),defineName:jsxRuntimeExports.jsx(AllBorderSingle,{}),"range-error":jsxRuntimeExports.jsx(AllBorderSingle,{}),"sheet-error":jsxRuntimeExports.jsx(Xlsx,{})},CellLinkPopup=__name(()=>{const popupService=core.useDependency(exports2.SheetsHyperLinkPopupService),hyperLinkModel=core.useDependency(sheetsHyperLink.HyperLinkModel),commandService=core.useDependency(core.ICommandService),messageService=core.useDependency(ui.IMessageService),localeService=core.useDependency(core.LocaleService),[currentPopup,setCurrentPopup]=require$$0.useState(null),resolverService=core.useDependency(exports2.SheetsHyperLinkResolverService);if(require$$0.useEffect(()=>{setCurrentPopup(popupService.currentPopup);const ob=popupService.currentPopup$.subscribe(popup=>{setCurrentPopup(popup)});return()=>{ob.unsubscribe()}},[popupService.currentPopup,popupService.currentPopup$]),!currentPopup)return null;const{unitId,subUnitId,id}=currentPopup,link=hyperLinkModel.getHyperLink(unitId,subUnitId,id);if(!link)return null;const linkObj=resolverService.parseHyperLink(link.payload),isError=linkObj.type.indexOf("error")>-1;return jsxRuntimeExports.jsxs("div",{className:styles.cellLink,onClick:__name(()=>popupService.hideCurrentPopup(),"onClick"),children:[jsxRuntimeExports.jsxs("div",{className:cs(styles.cellLinkContent,{[styles.cellLinkContentError]:isError}),onClick:linkObj.handler,children:[jsxRuntimeExports.jsx("div",{className:styles.cellLinkType,children:iconsMap[linkObj.type]}),jsxRuntimeExports.jsx(design.Tooltip,{showIfEllipsis:!0,title:linkObj.name,children:jsxRuntimeExports.jsx("span",{className:styles.cellLinkUrl,children:linkObj.name})})]}),jsxRuntimeExports.jsxs("div",{className:styles.cellLinkOperations,children:[currentPopup.copyPermission&&jsxRuntimeExports.jsx("div",{className:cs(styles.cellLinkOperation,{[styles.cellLinkOperationError]:isError}),onClick:__name(()=>{if(!isError){if(linkObj.type!=="outer"){const url=new URL(window.location.href);url.hash=linkObj.url.slice(1),navigator.clipboard.writeText(url.href)}else navigator.clipboard.writeText(linkObj.url);messageService.show({content:localeService.t("hyperLink.message.coped"),type:design.MessageType.Info})}},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.copy"),children:jsxRuntimeExports.jsx(CopySingle,{})})}),currentPopup.editPermission&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("div",{className:styles.cellLinkOperation,onClick:__name(()=>{commandService.executeCommand(OpenHyperLinkSidebarOperation.id,{unitId,subUnitId,row:link.row,column:link.column})},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.edit"),children:jsxRuntimeExports.jsx(WriteSingle,{})})}),jsxRuntimeExports.jsx("div",{className:styles.cellLinkOperation,onClick:__name(()=>{commandService.executeCommand(CancelHyperLinkCommand.id,{unitId,subUnitId,id:link.id})},"onClick"),children:jsxRuntimeExports.jsx(design.Tooltip,{placement:"bottom",title:localeService.t("hyperLink.popup.cancel"),children:jsxRuntimeExports.jsx(UnlinkSingle,{})})})]})]})]})},"CellLinkPopup");CellLinkPopup.componentKey="univer.sheet.cell-link-popup";var __defProp$a=Object.defineProperty,__getOwnPropDesc$a=Object.getOwnPropertyDescriptor,__decorateClass$a=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$a(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$a(target,key,result),result},"__decorateClass$a"),__decorateParam$a=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$a");const isEqualLink=__name((a,b)=>a.unitId===b.unitId&&a.subUnitId===b.subUnitId&&a.row===b.row&&a.col===b.col,"isEqualLink");exports2.SheetsHyperLinkPopupService=(_b=class extends core.Disposable{constructor(_hyperLinkModel,_sheetCanvasPopManagerService){super();__publicField(this,"_currentPopup",null);__publicField(this,"_currentPopup$",new rxjs.Subject);__publicField(this,"currentPopup$",this._currentPopup$.asObservable());__publicField(this,"_currentEditing$",new rxjs.BehaviorSubject(null));__publicField(this,"currentEditing$",this._currentEditing$.asObservable());this._hyperLinkModel=_hyperLinkModel,this._sheetCanvasPopManagerService=_sheetCanvasPopManagerService,this.disposeWithMe(()=>{this.hideCurrentPopup(),this.endEditing(),this._currentEditing$.complete(),this._currentPopup$.complete()})}get currentPopup(){return this._currentPopup}get currentEditing(){return this._currentEditing$.getValue()}showPopup(location2){if(this._currentPopup&&isEqualLink(location2,this._currentPopup))return;this.hideCurrentPopup();const{unitId,subUnitId,row,col}=location2,link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);if(!link)return;const disposable=this._sheetCanvasPopManagerService.attachPopupToCell(row,col,{componentKey:CellLinkPopup.componentKey,direction:"bottom",closeOnSelfTarget:!0,onClickOutside:__name(()=>{this.hideCurrentPopup()},"onClickOutside")});disposable&&(this._currentPopup={unitId,subUnitId,id:link.id,disposable,row,col,editPermission:!!location2.editPermission,copyPermission:!!location2.copyPermission},this._currentPopup$.next(this._currentPopup))}hideCurrentPopup(){var _a2;this._currentPopup&&((_a2=this._currentPopup.disposable)==null||_a2.dispose(),this._currentPopup=null,this._currentPopup$.next(null))}startEditing(link){this._currentEditing$.next(link)}endEditing(){this._currentEditing$.next(null)}},__name(_b,"SheetsHyperLinkPopupService"),_b),exports2.SheetsHyperLinkPopupService=__decorateClass$a([__decorateParam$a(0,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$a(1,core.Inject(sheetsUi.SheetCanvasPopManagerService))],exports2.SheetsHyperLinkPopupService);const SHEET_HYPER_LINK_UI_PLUGIN="SHEET_HYPER_LINK_UI_PLUGIN";var __defProp$9=Object.defineProperty,__getOwnPropDesc$9=Object.getOwnPropertyDescriptor,__decorateClass$9=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$9(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$9(target,key,result),result},"__decorateClass$9"),__decorateParam$9=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$9");exports2.SheetsHyperLinkCopyPasteController=(_c=class extends core.Disposable{constructor(_sheetClipboardService,_hyperLinkModel,_injector,_resolverService){super();__publicField(this,"_plainTextFilter",new Set);__publicField(this,"_copyInfo");this._sheetClipboardService=_sheetClipboardService,this._hyperLinkModel=_hyperLinkModel,this._injector=_injector,this._resolverService=_resolverService,this._initCopyPaste(),this.disposeWithMe(()=>{this._plainTextFilter.clear()})}registerPlainTextFilter(filter){this._plainTextFilter.add(filter)}removePlainTextFilter(filter){this._plainTextFilter.delete(filter)}_filterPlainText(text){return Array.from(this._plainTextFilter).every(filter=>filter(text))}_initCopyPaste(){this._sheetClipboardService.addClipboardHook({id:SHEET_HYPER_LINK_UI_PLUGIN,onBeforeCopy:__name((unitId,subUnitId,range)=>this._collect(unitId,subUnitId,range),"onBeforeCopy"),onPasteCells:__name((pasteFrom,pasteTo,data,payload)=>{const{copyType=sheetsUi.COPY_TYPE.COPY,pasteType}=payload,{range:copyRange}=pasteFrom||{},{range:pastedRange,unitId,subUnitId}=pasteTo;return this._generateMutations(pastedRange,{copyType,pasteType,copyRange,unitId,subUnitId})},"onPasteCells"),onPastePlainText:__name((pasteTo,clipText)=>{const filterResult=this._filterPlainText(clipText);if(isLegalLink(clipText)&&filterResult){const text=serializeUrl(clipText),{range,unitId,subUnitId}=pasteTo,{ranges:[pasteToRange],mapFunc}=sheetsUi.virtualizeDiscreteRanges([range]),redos=[],undos=[];return core.Range.foreach(pasteToRange,(originRow,originCol)=>{const{row,col:column}=mapFunc(originRow,originCol),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,column);link&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}});const newId=core.Tools.generateRandomId();redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{id:newId,row,column,payload:text}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:newId}}),link&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}})}),{redos,undos}}return{undos:[],redos:[]}},"onPastePlainText"),priority:99})}_collect(unitId,subUnitId,range){const matrix=new core.ObjectMatrix;this._copyInfo={unitId,subUnitId,matrix};const discreteRange=this._injector.invoke(accessor=>sheetsUi.rangeToDiscreteRange(range,accessor,unitId,subUnitId));if(!discreteRange)return;const{rows,cols}=discreteRange;rows.forEach((row,rowIndex)=>{cols.forEach((col,colIndex)=>{var _a2;const link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);matrix.setValue(rowIndex,colIndex,(_a2=link==null?void 0:link.id)!=null?_a2:"")})})}_generateMutations(pastedRange,copyInfo){if(!this._copyInfo)return{redos:[],undos:[]};if(!this._copyInfo||!this._copyInfo.matrix.getSizeOf()||!copyInfo.copyRange)return{redos:[],undos:[]};if([sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_COL_WIDTH,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_VALUE,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMAT,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMULA].includes(copyInfo.pasteType))return{redos:[],undos:[]};const{unitId,subUnitId}=this._copyInfo,redos=[],undos=[],{ranges:[vCopyRange,vPastedRange],mapFunc}=sheetsUi.virtualizeDiscreteRanges([copyInfo.copyRange,pastedRange]);return sheetsUi.getRepeatRange(vCopyRange,vPastedRange,!0).forEach(({startRange})=>{var _a2;(_a2=this._copyInfo)==null||_a2.matrix.forValue((row,col,ruleId)=>{const range=core.Rectangle.getPositionRange({startRow:row,endRow:row,startColumn:col,endColumn:col},startRange),oldLink=this._hyperLinkModel.getHyperLink(unitId,subUnitId,ruleId),{row:startRow,col:startColumn}=mapFunc(range.startRow,range.startColumn),currentLink=this._hyperLinkModel.getHyperLinkByLocation(copyInfo.unitId,copyInfo.subUnitId,startRow,startColumn),id=core.Tools.generateRandomId();currentLink&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,id:currentLink.id}}),oldLink&&(redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,link:{...oldLink,id,row:startRow,column:startColumn}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,id}})),currentLink&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId:copyInfo.unitId,subUnitId:copyInfo.subUnitId,link:currentLink}})})}),{redos,undos}}},__name(_c,"SheetsHyperLinkCopyPasteController"),_c),exports2.SheetsHyperLinkCopyPasteController=__decorateClass$9([core.OnLifecycle(core.LifecycleStages.Ready,exports2.SheetsHyperLinkCopyPasteController),__decorateParam$9(0,sheetsUi.ISheetClipboardService),__decorateParam$9(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$9(2,core.Inject(core.Injector)),__decorateParam$9(3,core.Inject(exports2.SheetsHyperLinkResolverService))],exports2.SheetsHyperLinkCopyPasteController);var __defProp$8=Object.defineProperty,__getOwnPropDesc$8=Object.getOwnPropertyDescriptor,__decorateClass$8=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$8(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$8(target,key,result),result},"__decorateClass$8"),__decorateParam$8=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$8");let SheetsHyperLinkRemoveSheetController=(_d=class extends core.Disposable{constructor(_sheetInterceptorService,_univerInstanceService,_hyperLinkModel){super(),this._sheetInterceptorService=_sheetInterceptorService,this._univerInstanceService=_univerInstanceService,this._hyperLinkModel=_hyperLinkModel,this._initSheetChange()}_initSheetChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(commandInfo=>{var _a2;if(commandInfo.id===sheets.RemoveSheetCommand.id){const params=commandInfo.params,workbook=params.unitId?this._univerInstanceService.getUnit(params.unitId):this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return{redos:[],undos:[]};const unitId=workbook.getUnitId(),subUnitId=params.subUnitId||((_a2=workbook.getActiveSheet())==null?void 0:_a2.getSheetId());if(!subUnitId)return{redos:[],undos:[]};const links=this._hyperLinkModel.getSubUnit(unitId,subUnitId),redos=links.map(link=>({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}})),undos=links.map(link=>({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}));return{redos,undos}}return{redos:[],undos:[]}},"getMutations")}))}},__name(_d,"SheetsHyperLinkRemoveSheetController"),_d);SheetsHyperLinkRemoveSheetController=__decorateClass$8([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkRemoveSheetController),__decorateParam$8(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$8(1,core.IUniverInstanceService),__decorateParam$8(2,core.Inject(sheetsHyperLink.HyperLinkModel))],SheetsHyperLinkRemoveSheetController);var __defProp$7=Object.defineProperty,__getOwnPropDesc$7=Object.getOwnPropertyDescriptor,__decorateClass$7=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$7(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$7(target,key,result),result},"__decorateClass$7"),__decorateParam$7=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$7");let SheetsHyperLinkRenderController=(_e=class extends core.Disposable{constructor(_context,_hyperLinkModel,_sheetSkeletonManagerService,_renderManagerService){super(),this._context=_context,this._hyperLinkModel=_hyperLinkModel,this._sheetSkeletonManagerService=_sheetSkeletonManagerService,this._renderManagerService=_renderManagerService,this._initSkeletonChange()}_initSkeletonChange(){const markSkeletonDirty=__name(()=>{var _a2;const workbook=this._context.unit,unitId=workbook.getUnitId(),subUnitId=(_a2=workbook.getActiveSheet())==null?void 0:_a2.getSheetId();if(!subUnitId){console.warn("No active sheet found");return}const skeleton=this._sheetSkeletonManagerService.getOrCreateSkeleton({sheetId:subUnitId}),currentRender=this._renderManagerService.getRenderById(unitId);skeleton==null||skeleton.makeDirty(!0),skeleton==null||skeleton.calculate(),currentRender&¤tRender.mainComponent.makeForceDirty()},"markSkeletonDirty");this.disposeWithMe(this._hyperLinkModel.linkUpdate$.pipe(rxjs.debounceTime(16)).subscribe(()=>{markSkeletonDirty()}))}},__name(_e,"SheetsHyperLinkRenderController"),_e);SheetsHyperLinkRenderController=__decorateClass$7([__decorateParam$7(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$7(2,core.Inject(sheetsUi.SheetSkeletonManagerService)),__decorateParam$7(3,engineRender.IRenderManagerService)],SheetsHyperLinkRenderController);let SheetsHyperLinkRenderManagerController=(_f=class extends core.Disposable{constructor(_sheetInterceptorService,_hyperLinkModel,_themeService){super(),this._sheetInterceptorService=_sheetInterceptorService,this._hyperLinkModel=_hyperLinkModel,this._themeService=_themeService,this._initViewModelIntercept()}_initViewModelIntercept(){this.disposeWithMe(this._sheetInterceptorService.intercept(sheets.INTERCEPTOR_POINT.CELL_CONTENT,{handler:__name((cell,pos,next)=>{const{row,col,unitId,subUnitId}=pos,link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col),styleSheet=this._themeService.getCurrentTheme();return next(link?{...cell,interceptorStyle:{ul:{s:core.BooleanNumber.TRUE},cl:{rgb:styleSheet.blue500}}}:cell)},"handler"),priority:100}))}},__name(_f,"SheetsHyperLinkRenderManagerController"),_f);SheetsHyperLinkRenderManagerController=__decorateClass$7([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkRenderManagerController),__decorateParam$7(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$7(1,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$7(2,core.Inject(core.ThemeService))],SheetsHyperLinkRenderManagerController);var __defProp$6=Object.defineProperty,__getOwnPropDesc$6=Object.getOwnPropertyDescriptor,__decorateClass$6=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$6(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$6(target,key,result),result},"__decorateClass$6"),__decorateParam$6=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$6");let SheetHyperLinkSetRangeController=(_g=class extends core.Disposable{constructor(_sheetInterceptorService,_injector,_hyperLinkModel,_selectionManagerService,_univerInstanceService,_editorBridgeService){super(),this._sheetInterceptorService=_sheetInterceptorService,this._injector=_injector,this._hyperLinkModel=_hyperLinkModel,this._selectionManagerService=_selectionManagerService,this._univerInstanceService=_univerInstanceService,this._editorBridgeService=_editorBridgeService,this._initCommandInterceptor()}_initCommandInterceptor(){this._initAddHyperLinkCommandInterceptor(),this._initSetRangeValuesCommandInterceptor(),this._initUpdateHyperLinkCommandInterceptor(),this._initClearSelectionCommandInterceptor(),this._initRichTextEditorInterceptor()}_getCurrentCell(unitId,subUnitId,row,col){var _a2,_b2;return(_b2=(_a2=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET))==null?void 0:_a2.getSheetBySheetId(subUnitId))==null?void 0:_b2.getCell(row,col)}_initAddHyperLinkCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{var _a2;if(command.id===AddHyperLinkCommand.id){const params=command.params,{unitId,subUnitId,link}=params,currentCell=this._getCurrentCell(unitId,subUnitId,link.row,link.column),redoParams={unitId,subUnitId,cellValue:{[link.row]:{[link.column]:{v:link.display,p:null,t:(_a2=currentCell==null?void 0:currentCell.t)!=null?_a2:void 0}}}};return{redos:[{id:sheets.SetRangeValuesMutation.id,params:redoParams}],undos:[{id:sheets.SetRangeValuesMutation.id,params:sheets.SetRangeValuesUndoMutationFactory(this._injector,redoParams)}]}}return{redos:[],undos:[]}},"getMutations")}))}_initUpdateHyperLinkCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===UpdateHyperLinkCommand.id){const params=command.params,{unitId,subUnitId,id,payload}=params,current=this._hyperLinkModel.getHyperLink(unitId,subUnitId,id);if(current&¤t.display!==payload.display){const redoParams={unitId,subUnitId,cellValue:{[current.row]:{[current.column]:{v:payload.display,t:core.CellValueType.STRING,p:null}}}};return{redos:[{id:sheets.SetRangeValuesMutation.id,params:redoParams}],undos:[{id:sheets.SetRangeValuesMutation.id,params:sheets.SetRangeValuesUndoMutationFactory(this._injector,redoParams)}]}}}return{redos:[],undos:[]}},"getMutations")}))}_initSetRangeValuesCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===sheets.SetRangeValuesCommand.id){const params=command.params,{unitId,subUnitId}=params,redos=[],undos=[];return params.cellValue&&new core.ObjectMatrix(params.cellValue).forValue((row,col,cell)=>{var _a2,_b2,_c2,_d2,_e2,_f2,_g2;const cellValueRaw=(_c2=cell==null?void 0:cell.v)!=null?_c2:(_b2=(_a2=cell==null?void 0:cell.p)==null?void 0:_a2.body)==null?void 0:_b2.dataStream.slice(0,-2),cellValue=(cellValueRaw!=null?cellValueRaw:"").toString(),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);if(!link){if(isLegalLink(cellValue)||(_d2=cell==null?void 0:cell.custom)!=null&&_d2.__link_url){const url=(_f2=(_e2=cell==null?void 0:cell.custom)==null?void 0:_e2.__link_url)!=null?_f2:cellValue,id=core.Tools.generateRandomId();undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id}}),redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{id,row,column:col,display:cellValue,payload:serializeUrl(url)}}})}return}(cellValueRaw===""||((_g2=cell==null?void 0:cell.custom)==null?void 0:_g2.__link_url)==="")&&(redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}}),undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}))}),{undos,redos}}return{redos:[],undos:[]}},"getMutations")}))}_initClearSelectionCommandInterceptor(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>{if(command.id===sheets.ClearSelectionContentCommand.id||command.id===sheets.ClearSelectionAllCommand.id||command.id===sheets.ClearSelectionFormatCommand.id){const redos=[],undos=[],selection=this._selectionManagerService.getCurrentLastSelection(),target=sheets.getSheetCommandTarget(this._univerInstanceService);if(selection&&target){const{unitId,subUnitId}=target;core.Range.foreach(selection.range,(row,col)=>{const link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,row,col);link&&(redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:link.id}}),undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link}}))})}return{redos,undos}}return{redos:[],undos:[]}},"getMutations")}))}_initRichTextEditorInterceptor(){this.disposeWithMe(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().AFTER_CELL_EDIT,{handler:__name((data,context,next)=>{var _a2,_b2,_c2;if(data!=null&&data.p){const range=(_b2=(_a2=data.p.body)==null?void 0:_a2.customRanges)==null?void 0:_b2.find(i=>i.rangeType===core.CustomRangeType.HYPERLINK);if(range){const url=(_c2=range.properties)==null?void 0:_c2.url;return next({...data,p:null,v:docs.getPlainTextFormDocument(data.p),t:core.CellValueType.STRING,custom:{__link_url:url}})}}return next(data)},"handler")}))}},__name(_g,"SheetHyperLinkSetRangeController"),_g);SheetHyperLinkSetRangeController=__decorateClass$6([core.OnLifecycle(core.LifecycleStages.Starting,SheetHyperLinkSetRangeController),__decorateParam$6(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$6(1,core.Inject(core.Injector)),__decorateParam$6(2,core.Inject(sheetsHyperLink.HyperLinkModel)),__decorateParam$6(3,core.Inject(sheets.SheetsSelectionsService)),__decorateParam$6(4,core.IUniverInstanceService),__decorateParam$6(5,sheetsUi.IEditorBridgeService)],SheetHyperLinkSetRangeController);var __defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$5");let SheetsHyperLinkPopupController=(_h=class extends core.Disposable{constructor(_hoverManagerService,_sheetsHyperLinkPopupService,_renderManagerService,_permissionService,_sheetPermissionInterceptorBaseController,_commandService){super(),this._hoverManagerService=_hoverManagerService,this._sheetsHyperLinkPopupService=_sheetsHyperLinkPopupService,this._renderManagerService=_renderManagerService,this._permissionService=_permissionService,this._sheetPermissionInterceptorBaseController=_sheetPermissionInterceptorBaseController,this._commandService=_commandService,this._initHoverListener(),this._initCommandListener()}_initHoverListener(){this.disposeWithMe(this._hoverManagerService.currentCell$.pipe(rxjs.debounceTime(200)).subscribe(currentCell=>{var _a2,_b2;if(!currentCell){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}const skeleton=(_b2=(_a2=this._renderManagerService.getRenderById(currentCell.location.unitId))==null?void 0:_a2.with(sheetsUi.SheetSkeletonManagerService).getWorksheetSkeleton(currentCell.location.subUnitId))==null?void 0:_b2.skeleton,currentCol=currentCell.location.col,currentRow=currentCell.location.row;let targetRow=currentRow,targetCol=currentCol;if(skeleton&&skeleton.overflowCache.forValue((row,col,value)=>{core.Rectangle.contains(value,{startColumn:currentCol,endColumn:currentCol,startRow:currentRow,endRow:currentRow})&&(targetRow=row,targetCol=col)}),!this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookViewPermission],worksheetTypes:[sheets.WorksheetViewPermission],rangeTypes:[sheets.RangeProtectionPermissionViewPoint]},[{startRow:currentRow,startColumn:currentCol,endRow:currentRow,endColumn:currentCol}])){this._sheetsHyperLinkPopupService.hideCurrentPopup();return}const editPermission=this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]},[{startRow:currentRow,startColumn:currentCol,endRow:currentRow,endColumn:currentCol}]),unitId=currentCell.location.unitId,subUnitId=currentCell.location.subUnitId,copyPermission=this._permissionService.composePermission([new sheets.WorkbookCopyPermission(unitId).id,new sheets.WorksheetCopyPermission(unitId,subUnitId).id]).every(permission=>permission.value);this._sheetsHyperLinkPopupService.showPopup({...currentCell.location,row:targetRow,col:targetCol,editPermission,copyPermission})}))}_initCommandListener(){const HIDE_COMMAND_LIST=[sheets.ClearSelectionContentCommand.id,sheets.ClearSelectionAllCommand.id,sheets.ClearSelectionFormatCommand.id];this.disposeWithMe(this._commandService.onCommandExecuted(command=>{HIDE_COMMAND_LIST.includes(command.id)&&this._sheetsHyperLinkPopupService.hideCurrentPopup()}))}},__name(_h,"SheetsHyperLinkPopupController"),_h);SheetsHyperLinkPopupController=__decorateClass$5([core.OnLifecycle(core.LifecycleStages.Rendered,SheetsHyperLinkPopupController),__decorateParam$5(0,core.Inject(sheetsUi.HoverManagerService)),__decorateParam$5(1,core.Inject(exports2.SheetsHyperLinkPopupService)),__decorateParam$5(2,core.Inject(engineRender.IRenderManagerService)),__decorateParam$5(3,core.Inject(core.IPermissionService)),__decorateParam$5(4,core.Inject(sheetsUi.SheetPermissionInterceptorBaseController)),__decorateParam$5(5,core.ICommandService)],SheetsHyperLinkPopupController);const insertLinkMenuFactory=__name(accessor=>({id:InsertHyperLinkOperation.id,type:ui.MenuItemType.BUTTON,title:"hyperLink.menu.add",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),icon:"LinkSingle",disabled$:sheetsUi.getObservableWithExclusiveRange$(accessor,sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]}))}),"insertLinkMenuFactory"),insertLinkMenuToolbarFactory=__name(accessor=>({tooltip:"hyperLink.form.addTitle",id:InsertHyperLinkToolbarOperation.id,type:ui.MenuItemType.BUTTON,icon:"LinkSingle",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),disabled$:sheetsUi.getObservableWithExclusiveRange$(accessor,sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]}))}),"insertLinkMenuToolbarFactory"),InsertLinkShortcut={id:InsertHyperLinkToolbarOperation.id,binding:ui.KeyCode.K|ui.MetaKeys.CTRL_COMMAND,preconditions:sheetsUi.whenSheetEditorFocused},menuSchema={[ui.RibbonStartGroup.OTHERS]:{[InsertHyperLinkToolbarOperation.id]:{order:2,menuItemFactory:insertLinkMenuToolbarFactory}},[ui.ContextMenuPosition.MAIN_AREA]:{[ui.ContextMenuGroup.OTHERS]:{order:1,[InsertHyperLinkToolbarOperation.id]:{order:0,menuItemFactory:insertLinkMenuFactory}}}};var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$4");let SheetsHyperLinkUIController=(_i=class extends core.Disposable{constructor(_componentManager,_commandService,_menuManagerService,_injector,_shortcutService){super(),this._componentManager=_componentManager,this._commandService=_commandService,this._menuManagerService=_menuManagerService,this._injector=_injector,this._shortcutService=_shortcutService,this._initComponents(),this._initCommands(),this._initMenus(),this._initShortCut()}_initComponents(){[[CellLinkPopup,CellLinkPopup.componentKey],[CellLinkEdit,CellLinkEdit.componentKey],[LinkSingle,"LinkSingle"]].forEach(([comp,key])=>{this._componentManager.register(key,comp)})}_initCommands(){[OpenHyperLinkSidebarOperation,CloseHyperLinkSidebarOperation,InsertHyperLinkOperation,InsertHyperLinkToolbarOperation,AddHyperLinkCommand,UpdateHyperLinkCommand,RemoveHyperLinkCommand,CancelHyperLinkCommand].forEach(command=>{this._commandService.registerCommand(command)})}_initMenus(){this._menuManagerService.mergeMenu(menuSchema)}_initShortCut(){this._shortcutService.registerShortcut(InsertLinkShortcut)}},__name(_i,"SheetsHyperLinkUIController"),_i);SheetsHyperLinkUIController=__decorateClass$4([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkUIController),__decorateParam$4(0,core.Inject(ui.ComponentManager)),__decorateParam$4(1,core.ICommandService),__decorateParam$4(2,ui.IMenuManagerService),__decorateParam$4(3,core.Inject(core.Injector)),__decorateParam$4(4,core.Inject(ui.IShortcutService))],SheetsHyperLinkUIController);var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$3");let SheetsHyperLinkAutoFillController=(_j=class extends core.Disposable{constructor(_autoFillService,_hyperLinkModel){super(),this._autoFillService=_autoFillService,this._hyperLinkModel=_hyperLinkModel,this._initAutoFill()}_initAutoFill(){const noopReturnFunc=__name(()=>({redos:[],undos:[]}),"noopReturnFunc"),generalApplyFunc=__name((location2,applyType)=>{const{source:sourceRange,target:targetRange,unitId,subUnitId}=location2,virtualRange=sheetsUi.virtualizeDiscreteRanges([sourceRange,targetRange]),[vSourceRange,vTargetRange]=virtualRange.ranges,{mapFunc}=virtualRange,sourceStartCell={row:vSourceRange.startRow,col:vSourceRange.startColumn},repeats=sheetsUi.getAutoFillRepeatRange(vSourceRange,vTargetRange),redos=[],undos=[];return repeats.forEach(repeat=>{const targetStartCell=repeat.repeatStartCell,relativeRange=repeat.relativeRange,sourceRange2={startRow:sourceStartCell.row,startColumn:sourceStartCell.col,endColumn:sourceStartCell.col,endRow:sourceStartCell.row},targetRange2={startRow:targetStartCell.row,startColumn:targetStartCell.col,endColumn:targetStartCell.col,endRow:targetStartCell.row};core.Range.foreach(relativeRange,(row,col)=>{const sourcePositionRange=core.Rectangle.getPositionRange({startRow:row,startColumn:col,endColumn:col,endRow:row},sourceRange2),{row:sourceRow,col:sourceCol}=mapFunc(sourcePositionRange.startRow,sourcePositionRange.startColumn),link=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,sourceRow,sourceCol),targetPositionRange=core.Rectangle.getPositionRange({startRow:row,startColumn:col,endColumn:col,endRow:row},targetRange2),{row:targetRow,col:targetCol}=mapFunc(targetPositionRange.startRow,targetPositionRange.startColumn),id=core.Tools.generateRandomId(),currentLink=this._hyperLinkModel.getHyperLinkByLocation(unitId,subUnitId,targetRow,targetCol);currentLink&&redos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id:currentLink.id}}),(sheetsUi.APPLY_TYPE.COPY===applyType||sheetsUi.APPLY_TYPE.SERIES===applyType)&&link&&(redos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:{...link,id,row:targetRow,column:targetCol}}}),undos.push({id:sheetsHyperLink.RemoveHyperLinkMutation.id,params:{unitId,subUnitId,id}})),currentLink&&undos.push({id:sheetsHyperLink.AddHyperLinkMutation.id,params:{unitId,subUnitId,link:currentLink}})})}),{undos,redos}},"generalApplyFunc"),hook={id:SHEET_HYPER_LINK_UI_PLUGIN,onFillData:__name((location2,direction,applyType)=>applyType===sheetsUi.APPLY_TYPE.COPY||applyType===sheetsUi.APPLY_TYPE.ONLY_FORMAT||applyType===sheetsUi.APPLY_TYPE.SERIES?generalApplyFunc(location2,applyType):noopReturnFunc(),"onFillData")};this.disposeWithMe(this._autoFillService.addHook(hook))}},__name(_j,"SheetsHyperLinkAutoFillController"),_j);SheetsHyperLinkAutoFillController=__decorateClass$3([core.OnLifecycle(core.LifecycleStages.Ready,SheetsHyperLinkAutoFillController),__decorateParam$3(0,sheetsUi.IAutoFillService),__decorateParam$3(1,core.Inject(sheetsHyperLink.HyperLinkModel))],SheetsHyperLinkAutoFillController);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$2");let SheetHyperLinkUrlController=(_k=class extends core.Disposable{constructor(_resolverService){super(),this._resolverService=_resolverService,this._handleInitUrl()}_handleInitUrl(){const hash=location.hash;hash&&this._resolverService.parseHyperLink(hash).handler()}},__name(_k,"SheetHyperLinkUrlController"),_k);SheetHyperLinkUrlController=__decorateClass$2([core.OnLifecycle(core.LifecycleStages.Rendered,SheetHyperLinkUrlController),__decorateParam$2(0,core.Inject(exports2.SheetsHyperLinkResolverService))],SheetHyperLinkUrlController);var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$1");let SheetsHyperLinkPermissionController=(_l=class extends core.Disposable{constructor(_localeService,_commandService,_sheetPermissionInterceptorBaseController){super(),this._localeService=_localeService,this._commandService=_commandService,this._sheetPermissionInterceptorBaseController=_sheetPermissionInterceptorBaseController,this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(command=>{command.id===InsertLinkShortcut.id&&(this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookEditablePermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission,sheets.WorksheetInsertHyperlinkPermission]})||this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.hyperLinkErr")))}))}},__name(_l,"SheetsHyperLinkPermissionController"),_l);SheetsHyperLinkPermissionController=__decorateClass$1([core.OnLifecycle(core.LifecycleStages.Rendered,SheetsHyperLinkPermissionController),__decorateParam$1(0,core.Inject(core.LocaleService)),__decorateParam$1(1,core.ICommandService),__decorateParam$1(2,core.Inject(sheetsUi.SheetPermissionInterceptorBaseController))],SheetsHyperLinkPermissionController);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__defNormalProp2=__name((obj,key,value)=>key in obj?__defProp2(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,"__defNormalProp"),__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam"),__publicField2=__name((obj,key,value)=>__defNormalProp2(obj,typeof key!="symbol"?key+"":key,value),"__publicField");exports2.UniverSheetsHyperLinkUIPlugin=(_m=class extends core.Plugin{constructor(_config=defaultPluginConfig,_injector,_renderManagerService,_configService){super(),this._config=_config,this._injector=_injector,this._renderManagerService=_renderManagerService,this._configService=_configService;const{menu,...rest}=this._config;menu&&this._configService.setConfig("menu",menu,{merge:!0}),this._configService.setConfig(PLUGIN_CONFIG_KEY,rest)}onStarting(){[[exports2.SheetsHyperLinkResolverService],[exports2.SheetsHyperLinkPopupService],[SheetsHyperLinkSidePanelService],[SheetsHyperLinkRemoveSheetController],[SheetsHyperLinkRenderManagerController],[SheetHyperLinkSetRangeController],[SheetsHyperLinkPopupController],[SheetsHyperLinkUIController],[SheetsHyperLinkAutoFillController],[exports2.SheetsHyperLinkCopyPasteController],[SheetsHyperLinkPermissionController],[SheetHyperLinkUrlController]].forEach(dep=>this._injector.add(dep))}onReady(){[[SheetsHyperLinkRenderController]].forEach(d=>this._renderManagerService.registerRenderModule(core.UniverInstanceType.UNIVER_SHEET,d))}},__name(_m,"UniverSheetsHyperLinkUIPlugin"),_m),__publicField2(exports2.UniverSheetsHyperLinkUIPlugin,"pluginName",SHEET_HYPER_LINK_UI_PLUGIN),__publicField2(exports2.UniverSheetsHyperLinkUIPlugin,"type",core.UniverInstanceType.UNIVER_SHEET),exports2.UniverSheetsHyperLinkUIPlugin=__decorateClass([core.DependentOn(sheetsHyperLink.UniverSheetsHyperLinkPlugin),__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,engineRender.IRenderManagerService),__decorateParam(3,core.IConfigService)],exports2.UniverSheetsHyperLinkUIPlugin),exports2.AddHyperLinkCommand=AddHyperLinkCommand,exports2.CancelHyperLinkCommand=CancelHyperLinkCommand,exports2.CloseHyperLinkSidebarOperation=CloseHyperLinkSidebarOperation,exports2.InsertHyperLinkOperation=InsertHyperLinkOperation,exports2.InsertLinkShortcut=InsertLinkShortcut,exports2.OpenHyperLinkSidebarOperation=OpenHyperLinkSidebarOperation,exports2.RemoveHyperLinkCommand=RemoveHyperLinkCommand,exports2.SheetsHyperLinkSidePanelService=SheetsHyperLinkSidePanelService,exports2.UpdateHyperLinkCommand=UpdateHyperLinkCommand,Object.defineProperty(exports2,Symbol.toStringTag,{value:"Module"})});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@univerjs/sheets-hyper-link-ui",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.12",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "",
|
|
6
6
|
"author": "DreamNum <developer@univer.ai>",
|
|
@@ -53,20 +53,19 @@
|
|
|
53
53
|
"clsx": ">=2.0.0",
|
|
54
54
|
"react": "^16.9.0 || ^17.0.0 || ^18.0.0",
|
|
55
55
|
"rxjs": ">=7.0.0",
|
|
56
|
-
"@univerjs/
|
|
57
|
-
"@univerjs/
|
|
58
|
-
"@univerjs/
|
|
59
|
-
"@univerjs/engine-
|
|
60
|
-
"@univerjs/
|
|
61
|
-
"@univerjs/sheets": "0.2.
|
|
62
|
-
"@univerjs/
|
|
63
|
-
"@univerjs/sheets-ui": "0.2.
|
|
64
|
-
"@univerjs/
|
|
65
|
-
"@univerjs/ui": "0.2.10"
|
|
56
|
+
"@univerjs/core": "0.2.12",
|
|
57
|
+
"@univerjs/docs": "0.2.12",
|
|
58
|
+
"@univerjs/design": "0.2.12",
|
|
59
|
+
"@univerjs/engine-formula": "0.2.12",
|
|
60
|
+
"@univerjs/engine-render": "0.2.12",
|
|
61
|
+
"@univerjs/sheets": "0.2.12",
|
|
62
|
+
"@univerjs/sheets-hyper-link": "0.2.12",
|
|
63
|
+
"@univerjs/sheets-ui": "0.2.12",
|
|
64
|
+
"@univerjs/ui": "0.2.12"
|
|
66
65
|
},
|
|
67
66
|
"dependencies": {
|
|
68
67
|
"@univerjs/icons": "^0.1.77",
|
|
69
|
-
"@univerjs/sheets-hyper-link": "0.2.
|
|
68
|
+
"@univerjs/sheets-hyper-link": "0.2.12"
|
|
70
69
|
},
|
|
71
70
|
"devDependencies": {
|
|
72
71
|
"clsx": "^2.1.1",
|
|
@@ -74,15 +73,14 @@
|
|
|
74
73
|
"typescript": "^5.5.4",
|
|
75
74
|
"vite": "^5.4.2",
|
|
76
75
|
"vitest": "^2.0.5",
|
|
77
|
-
"@univerjs/
|
|
78
|
-
"@univerjs/
|
|
79
|
-
"@univerjs/
|
|
80
|
-
"@univerjs/
|
|
81
|
-
"@univerjs/
|
|
82
|
-
"@univerjs/
|
|
83
|
-
"@univerjs/
|
|
84
|
-
"@univerjs/
|
|
85
|
-
"@univerjs/ui": "0.2.10"
|
|
76
|
+
"@univerjs/core": "0.2.12",
|
|
77
|
+
"@univerjs/docs": "0.2.12",
|
|
78
|
+
"@univerjs/engine-formula": "0.2.12",
|
|
79
|
+
"@univerjs/engine-render": "0.2.12",
|
|
80
|
+
"@univerjs/sheets": "0.2.12",
|
|
81
|
+
"@univerjs/sheets-ui": "0.2.12",
|
|
82
|
+
"@univerjs/ui": "0.2.12",
|
|
83
|
+
"@univerjs/shared": "0.2.12"
|
|
86
84
|
},
|
|
87
85
|
"univerSpace": {
|
|
88
86
|
".": {
|