dockview 1.14.1 → 1.14.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * dockview
3
- * @version 1.14.1
3
+ * @version 1.14.2
4
4
  * @link https://github.com/mathuo/dockview
5
5
  * @license MIT
6
6
  */
@@ -6181,52 +6181,40 @@
6181
6181
  }
6182
6182
  constructor() {
6183
6183
  super();
6184
- //
6185
- this.params = {};
6186
6184
  this._element = document.createElement('div');
6187
6185
  this._element.className = 'dv-default-tab';
6188
- //
6189
6186
  this._content = document.createElement('div');
6190
6187
  this._content.className = 'dv-default-tab-content';
6191
6188
  this.action = document.createElement('div');
6192
6189
  this.action.className = 'dv-default-tab-action';
6193
6190
  this.action.appendChild(createCloseButton());
6194
- //
6195
6191
  this._element.appendChild(this._content);
6196
6192
  this._element.appendChild(this.action);
6197
- //
6198
6193
  this.addDisposables(addDisposableListener(this.action, 'mousedown', (ev) => {
6199
6194
  ev.preventDefault();
6200
6195
  }));
6201
6196
  this.render();
6202
6197
  }
6203
- update(event) {
6204
- this.params = Object.assign(Object.assign({}, this.params), event.params);
6205
- this.render();
6206
- }
6207
- focus() {
6208
- //noop
6209
- }
6210
6198
  init(params) {
6211
- this.params = params;
6212
- this._content.textContent = params.title;
6213
- addDisposableListener(this.action, 'click', (ev) => {
6214
- ev.preventDefault(); //
6215
- this.params.api.close();
6216
- });
6217
- }
6218
- onGroupChange(_group) {
6219
- this.render();
6220
- }
6221
- onPanelVisibleChange(_isPanelVisible) {
6199
+ this._title = params.title;
6200
+ this.addDisposables(params.api.onDidTitleChange((event) => {
6201
+ this._title = event.title;
6202
+ this.render();
6203
+ }), addDisposableListener(this.action, 'mousedown', (ev) => {
6204
+ ev.preventDefault();
6205
+ }), addDisposableListener(this.action, 'click', (ev) => {
6206
+ if (ev.defaultPrevented) {
6207
+ return;
6208
+ }
6209
+ ev.preventDefault();
6210
+ params.api.close();
6211
+ }));
6222
6212
  this.render();
6223
6213
  }
6224
- layout(_width, _height) {
6225
- // noop
6226
- }
6227
6214
  render() {
6228
- if (this._content.textContent !== this.params.title) {
6229
- this._content.textContent = this.params.title;
6215
+ var _a;
6216
+ if (this._content.textContent !== this._title) {
6217
+ this._content.textContent = (_a = this._title) !== null && _a !== void 0 ? _a : '';
6230
6218
  }
6231
6219
  }
6232
6220
  }
@@ -9859,8 +9847,21 @@
9859
9847
  const CloseButton = () => (React.createElement("svg", { height: "11", width: "11", viewBox: "0 0 28 28", "aria-hidden": 'false', focusable: false, className: "dockview-svg" },
9860
9848
  React.createElement("path", { d: "M2.1 27.3L0 25.2L11.55 13.65L0 2.1L2.1 0L13.65 11.55L25.2 0L27.3 2.1L15.75 13.65L27.3 25.2L25.2 27.3L13.65 15.75L2.1 27.3Z" })));
9861
9849
 
9850
+ function useTitle(api) {
9851
+ const [title, setTitle] = React.useState(api.title);
9852
+ React.useEffect(() => {
9853
+ const disposable = api.onDidTitleChange((event) => {
9854
+ setTitle(event.title);
9855
+ });
9856
+ return () => {
9857
+ disposable.dispose();
9858
+ };
9859
+ }, [api]);
9860
+ return title;
9861
+ }
9862
9862
  const DockviewDefaultTab = (_a) => {
9863
9863
  var { api, containerApi: _containerApi, params: _params, hideClose, closeActionOverride } = _a, rest = __rest(_a, ["api", "containerApi", "params", "hideClose", "closeActionOverride"]);
9864
+ const title = useTitle(api);
9864
9865
  const onClose = React.useCallback((event) => {
9865
9866
  event.preventDefault();
9866
9867
  if (closeActionOverride) {
@@ -9883,7 +9884,7 @@
9883
9884
  }
9884
9885
  }, [api, rest.onClick]);
9885
9886
  return (React.createElement("div", Object.assign({ "data-testid": "dockview-dv-default-tab" }, rest, { onClick: onClick, className: "dv-default-tab" }),
9886
- React.createElement("span", { className: "dv-default-tab-content" }, api.title),
9887
+ React.createElement("span", { className: "dv-default-tab-content" }, title),
9887
9888
  !hideClose && (React.createElement("div", { className: "dv-default-tab-action", onMouseDown: onMouseDown, onClick: onClose },
9888
9889
  React.createElement(CloseButton, null)))));
9889
9890
  };