@univerjs/sheets-hyper-link 0.20.1 → 0.21.0-insiders.20260424-262d69f

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/facade.js CHANGED
@@ -1 +1,208 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require(`@univerjs/core`),t=require(`@univerjs/sheets-hyper-link`),n=require(`@univerjs/sheets/facade`),r=require(`@univerjs/core/facade`);function i(e,t){return function(n,r){t(n,r,e)}}function a(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let o=class{constructor(e,t){this._workbook=e,this._parserService=t}getRangeUrl(e){return this._parserService.buildHyperLink(this._workbook.getId(),e.getSheetId(),e.getRange()),this}};o=a([i(1,(0,e.Inject)(t.SheetsHyperLinkParserService))],o);var s=class extends n.FWorkbook{parseSheetHyperlink(e){return this._injector.get(t.SheetsHyperLinkParserService).parseHyperLink(e)}};n.FWorkbook.extend(s);var c=class extends n.FWorksheet{getUrl(){return this._injector.get(t.SheetsHyperLinkParserService).buildHyperLink(this._workbook.getUnitId(),this._worksheet.getSheetId())}};n.FWorksheet.extend(c);var l=class extends n.FRange{setHyperLink(n,r){let i={unitId:this.getUnitId(),subUnitId:this._worksheet.getSheetId(),link:{row:this._range.startRow,column:this._range.startColumn,payload:n,display:r,id:(0,e.generateRandomId)()}};return this._commandService.executeCommand(t.AddHyperLinkCommand.id,i)}getHyperLinks(){var t,n;let r=this._worksheet.getCellRaw(this._range.startRow,this._range.startColumn);return r!=null&&r.p?(t=(n=r.p.body)==null||(n=n.customRanges)==null?void 0:n.filter(t=>t.rangeType===e.CustomRangeType.HYPERLINK).map(t=>{var n,i,a,o;return{id:`${t.rangeId}`,startIndex:t.startIndex,endIndex:t.endIndex,url:(n=(i=t.properties)==null?void 0:i.url)==null?``:n,label:(a=(o=r.p)==null||(o=o.body)==null?void 0:o.dataStream.slice(t.startIndex,t.endIndex+1).replaceAll(e.DataStreamTreeTokenType.CUSTOM_RANGE_START,``).replaceAll(e.DataStreamTreeTokenType.CUSTOM_RANGE_END,``))==null?``:a}}))==null?[]:t:[]}updateHyperLink(e,n,r){let i={unitId:this.getUnitId(),subUnitId:this._worksheet.getSheetId(),row:this._range.startRow,column:this._range.startColumn,id:e,payload:{payload:n,display:r}};return this._commandService.executeCommand(t.UpdateHyperLinkCommand.id,i)}cancelHyperLink(e){let n={unitId:this.getUnitId(),subUnitId:this._worksheet.getSheetId(),row:this._range.startRow,column:this._range.startColumn,id:e};return this._commandService.syncExecuteCommand(t.CancelHyperLinkCommand.id,n)}getUrl(){return this._injector.get(t.SheetsHyperLinkParserService).buildHyperLink(this.getUnitId(),this.getSheetId(),this.getRange())}};n.FRange.extend(l);var u=class extends r.FEventName{get BeforeSheetLinkAdd(){return`BeforeSheetLinkAdd`}get BeforeSheetLinkCancel(){return`BeforeSheetLinkCancel`}get BeforeSheetLinkUpdate(){return`BeforeSheetLinkUpdate`}};r.FEventName.extend(u);var d=class extends r.FUniver{_initialize(n){let r=n.get(e.ICommandService);this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetLinkAdd,()=>r.beforeCommandExecuted(n=>{if(n.id!==t.AddHyperLinkCommand.id)return;let r=this.getCommandSheetTarget(n);if(!r)return;let i=n.params,a={workbook:r.workbook,worksheet:r.worksheet,row:i.link.row,col:i.link.column,link:i.link};if(this.fireEvent(this.Event.BeforeSheetLinkAdd,a),a.cancel)throw new e.CanceledError}))),this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetLinkUpdate,()=>r.beforeCommandExecuted(n=>{if(n.id!==t.UpdateHyperLinkCommand.id)return;let r=this.getCommandSheetTarget(n);if(!r)return;let i=n.params,a={workbook:r.workbook,worksheet:r.worksheet,row:i.row,column:i.column,id:i.id,payload:i.payload};if(this.fireEvent(this.Event.BeforeSheetLinkUpdate,a),a.cancel)throw new e.CanceledError}))),this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetLinkCancel,()=>r.beforeCommandExecuted(n=>{if(n.id!==t.CancelHyperLinkCommand.id)return;let r=this.getCommandSheetTarget(n);if(!r)return;let i=n.params,a={workbook:r.workbook,worksheet:r.worksheet,row:i.row,column:i.column,id:i.id};if(this.fireEvent(this.Event.BeforeSheetLinkCancel,a),a.cancel)throw new e.CanceledError})))}};r.FUniver.extend(d),exports.FWorkbookHyperlinkMixin=s;
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+ let _univerjs_core = require("@univerjs/core");
3
+ let _univerjs_sheets_hyper_link = require("@univerjs/sheets-hyper-link");
4
+ let _univerjs_sheets_facade = require("@univerjs/sheets/facade");
5
+ let _univerjs_core_facade = require("@univerjs/core/facade");
6
+
7
+ //#region \0@oxc-project+runtime@0.124.0/helpers/decorateParam.js
8
+ function __decorateParam(paramIndex, decorator) {
9
+ return function(target, key) {
10
+ decorator(target, key, paramIndex);
11
+ };
12
+ }
13
+
14
+ //#endregion
15
+ //#region \0@oxc-project+runtime@0.124.0/helpers/decorate.js
16
+ function __decorate(decorators, target, key, desc) {
17
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
18
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
20
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
21
+ }
22
+
23
+ //#endregion
24
+ //#region src/facade/f-workbook.ts
25
+ let SheetHyperLinkBuilder = class SheetHyperLinkBuilder {
26
+ constructor(_workbook, _parserService) {
27
+ this._workbook = _workbook;
28
+ this._parserService = _parserService;
29
+ }
30
+ getRangeUrl(range) {
31
+ this._parserService.buildHyperLink(this._workbook.getId(), range.getSheetId(), range.getRange());
32
+ return this;
33
+ }
34
+ };
35
+ SheetHyperLinkBuilder = __decorate([__decorateParam(1, (0, _univerjs_core.Inject)(_univerjs_sheets_hyper_link.SheetsHyperLinkParserService))], SheetHyperLinkBuilder);
36
+ var FWorkbookHyperlinkMixin = class extends _univerjs_sheets_facade.FWorkbook {
37
+ /**
38
+ * Parse the hyperlink string to get the hyperlink info.
39
+ * @param {string} hyperlink the hyperlink string
40
+ * @returns {ISheetHyperLinkInfo} the hyperlink info
41
+ */
42
+ parseSheetHyperlink(hyperlink) {
43
+ return this._injector.get(_univerjs_sheets_hyper_link.SheetsHyperLinkParserService).parseHyperLink(hyperlink);
44
+ }
45
+ };
46
+ _univerjs_sheets_facade.FWorkbook.extend(FWorkbookHyperlinkMixin);
47
+
48
+ //#endregion
49
+ //#region src/facade/f-worksheet.ts
50
+ /**
51
+ * Copyright 2023-present DreamNum Co., Ltd.
52
+ *
53
+ * Licensed under the Apache License, Version 2.0 (the "License");
54
+ * you may not use this file except in compliance with the License.
55
+ * You may obtain a copy of the License at
56
+ *
57
+ * http://www.apache.org/licenses/LICENSE-2.0
58
+ *
59
+ * Unless required by applicable law or agreed to in writing, software
60
+ * distributed under the License is distributed on an "AS IS" BASIS,
61
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
62
+ * See the License for the specific language governing permissions and
63
+ * limitations under the License.
64
+ */
65
+ var FWorksheetHyperlinkMixin = class extends _univerjs_sheets_facade.FWorksheet {
66
+ getUrl() {
67
+ return this._injector.get(_univerjs_sheets_hyper_link.SheetsHyperLinkParserService).buildHyperLink(this._workbook.getUnitId(), this._worksheet.getSheetId());
68
+ }
69
+ };
70
+ _univerjs_sheets_facade.FWorksheet.extend(FWorksheetHyperlinkMixin);
71
+
72
+ //#endregion
73
+ //#region src/facade/f-range.ts
74
+ var FRangeSheetsHyperlinkMixin = class extends _univerjs_sheets_facade.FRange {
75
+ setHyperLink(url, label) {
76
+ const params = {
77
+ unitId: this.getUnitId(),
78
+ subUnitId: this._worksheet.getSheetId(),
79
+ link: {
80
+ row: this._range.startRow,
81
+ column: this._range.startColumn,
82
+ payload: url,
83
+ display: label,
84
+ id: (0, _univerjs_core.generateRandomId)()
85
+ }
86
+ };
87
+ return this._commandService.executeCommand(_univerjs_sheets_hyper_link.AddHyperLinkCommand.id, params);
88
+ }
89
+ getHyperLinks() {
90
+ var _cellValue$p$body$cus, _cellValue$p$body;
91
+ const cellValue = this._worksheet.getCellRaw(this._range.startRow, this._range.startColumn);
92
+ if (!(cellValue === null || cellValue === void 0 ? void 0 : cellValue.p)) return [];
93
+ return (_cellValue$p$body$cus = (_cellValue$p$body = cellValue.p.body) === null || _cellValue$p$body === void 0 || (_cellValue$p$body = _cellValue$p$body.customRanges) === null || _cellValue$p$body === void 0 ? void 0 : _cellValue$p$body.filter((range) => range.rangeType === _univerjs_core.CustomRangeType.HYPERLINK).map((range) => {
94
+ var _range$properties$url, _range$properties, _cellValue$p$body$dat, _cellValue$p;
95
+ return {
96
+ id: `${range.rangeId}`,
97
+ startIndex: range.startIndex,
98
+ endIndex: range.endIndex,
99
+ url: (_range$properties$url = (_range$properties = range.properties) === null || _range$properties === void 0 ? void 0 : _range$properties.url) !== null && _range$properties$url !== void 0 ? _range$properties$url : "",
100
+ label: (_cellValue$p$body$dat = (_cellValue$p = cellValue.p) === null || _cellValue$p === void 0 || (_cellValue$p = _cellValue$p.body) === null || _cellValue$p === void 0 ? void 0 : _cellValue$p.dataStream.slice(range.startIndex, range.endIndex + 1).replaceAll(_univerjs_core.DataStreamTreeTokenType.CUSTOM_RANGE_START, "").replaceAll(_univerjs_core.DataStreamTreeTokenType.CUSTOM_RANGE_END, "")) !== null && _cellValue$p$body$dat !== void 0 ? _cellValue$p$body$dat : ""
101
+ };
102
+ })) !== null && _cellValue$p$body$cus !== void 0 ? _cellValue$p$body$cus : [];
103
+ }
104
+ updateHyperLink(id, url, label) {
105
+ const params = {
106
+ unitId: this.getUnitId(),
107
+ subUnitId: this._worksheet.getSheetId(),
108
+ row: this._range.startRow,
109
+ column: this._range.startColumn,
110
+ id,
111
+ payload: {
112
+ payload: url,
113
+ display: label
114
+ }
115
+ };
116
+ return this._commandService.executeCommand(_univerjs_sheets_hyper_link.UpdateHyperLinkCommand.id, params);
117
+ }
118
+ cancelHyperLink(id) {
119
+ const params = {
120
+ unitId: this.getUnitId(),
121
+ subUnitId: this._worksheet.getSheetId(),
122
+ row: this._range.startRow,
123
+ column: this._range.startColumn,
124
+ id
125
+ };
126
+ return this._commandService.syncExecuteCommand(_univerjs_sheets_hyper_link.CancelHyperLinkCommand.id, params);
127
+ }
128
+ getUrl() {
129
+ return this._injector.get(_univerjs_sheets_hyper_link.SheetsHyperLinkParserService).buildHyperLink(this.getUnitId(), this.getSheetId(), this.getRange());
130
+ }
131
+ };
132
+ _univerjs_sheets_facade.FRange.extend(FRangeSheetsHyperlinkMixin);
133
+
134
+ //#endregion
135
+ //#region src/facade/f-event.ts
136
+ var FSheetsHyperlinkEventNameMixin = class extends _univerjs_core_facade.FEventName {
137
+ get BeforeSheetLinkAdd() {
138
+ return "BeforeSheetLinkAdd";
139
+ }
140
+ get BeforeSheetLinkCancel() {
141
+ return "BeforeSheetLinkCancel";
142
+ }
143
+ get BeforeSheetLinkUpdate() {
144
+ return "BeforeSheetLinkUpdate";
145
+ }
146
+ };
147
+ _univerjs_core_facade.FEventName.extend(FSheetsHyperlinkEventNameMixin);
148
+
149
+ //#endregion
150
+ //#region src/facade/f-univer.ts
151
+ var FUniverSheetsHyperlinkMixin = class extends _univerjs_core_facade.FUniver {
152
+ /**
153
+ * @ignore
154
+ */
155
+ _initialize(injector) {
156
+ const commandService = injector.get(_univerjs_core.ICommandService);
157
+ this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetLinkAdd, () => commandService.beforeCommandExecuted((commandInfo) => {
158
+ if (commandInfo.id !== _univerjs_sheets_hyper_link.AddHyperLinkCommand.id) return;
159
+ const eventTarget = this.getCommandSheetTarget(commandInfo);
160
+ if (!eventTarget) return;
161
+ const params = commandInfo.params;
162
+ const eventParams = {
163
+ workbook: eventTarget.workbook,
164
+ worksheet: eventTarget.worksheet,
165
+ row: params.link.row,
166
+ col: params.link.column,
167
+ link: params.link
168
+ };
169
+ this.fireEvent(this.Event.BeforeSheetLinkAdd, eventParams);
170
+ if (eventParams.cancel) throw new _univerjs_core.CanceledError();
171
+ })));
172
+ this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetLinkUpdate, () => commandService.beforeCommandExecuted((commandInfo) => {
173
+ if (commandInfo.id !== _univerjs_sheets_hyper_link.UpdateHyperLinkCommand.id) return;
174
+ const eventTarget = this.getCommandSheetTarget(commandInfo);
175
+ if (!eventTarget) return;
176
+ const params = commandInfo.params;
177
+ const eventParams = {
178
+ workbook: eventTarget.workbook,
179
+ worksheet: eventTarget.worksheet,
180
+ row: params.row,
181
+ column: params.column,
182
+ id: params.id,
183
+ payload: params.payload
184
+ };
185
+ this.fireEvent(this.Event.BeforeSheetLinkUpdate, eventParams);
186
+ if (eventParams.cancel) throw new _univerjs_core.CanceledError();
187
+ })));
188
+ this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetLinkCancel, () => commandService.beforeCommandExecuted((commandInfo) => {
189
+ if (commandInfo.id !== _univerjs_sheets_hyper_link.CancelHyperLinkCommand.id) return;
190
+ const eventTarget = this.getCommandSheetTarget(commandInfo);
191
+ if (!eventTarget) return;
192
+ const params = commandInfo.params;
193
+ const eventParams = {
194
+ workbook: eventTarget.workbook,
195
+ worksheet: eventTarget.worksheet,
196
+ row: params.row,
197
+ column: params.column,
198
+ id: params.id
199
+ };
200
+ this.fireEvent(this.Event.BeforeSheetLinkCancel, eventParams);
201
+ if (eventParams.cancel) throw new _univerjs_core.CanceledError();
202
+ })));
203
+ }
204
+ };
205
+ _univerjs_core_facade.FUniver.extend(FUniverSheetsHyperlinkMixin);
206
+
207
+ //#endregion
208
+ exports.FWorkbookHyperlinkMixin = FWorkbookHyperlinkMixin;