Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

dockview

Package Overview
Dependencies
Maintainers
1
Versions
148
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dockview - npm Package Compare versions

Comparing version 0.0.0-experimental-dc50d4e-20231022 to 0.0.0-experimental-e3e87f4-20240117

4

dist/cjs/dockview/dockview.d.ts
import * as React from 'react';
import { DockviewDropEvent, DockviewDndOverlayEvent, DockviewPanelApi, DockviewApi } from 'dockview-core';
import { DockviewDropEvent, DockviewDndOverlayEvent, DockviewPanelApi, DockviewApi, DockviewPanelRenderer } from 'dockview-core';
import { IWatermarkPanelProps } from './reactWatermarkPart';

@@ -41,4 +41,6 @@ import { PanelCollection, PanelParameters } from '../types';

};
debug?: boolean;
defaultRenderer?: DockviewPanelRenderer;
}
export declare const DockviewReact: React.ForwardRefExoticComponent<IDockviewReactProps & React.RefAttributes<HTMLDivElement>>;
//# sourceMappingURL=dockview.d.ts.map

@@ -64,2 +64,3 @@ "use strict";

React.useEffect(function () {
var _a;
if (!domRef.current) {

@@ -93,3 +94,3 @@ return function () {

};
var frameworkTabComponents = props.tabComponents || {};
var frameworkTabComponents = (_a = props.tabComponents) !== null && _a !== void 0 ? _a : {};
if (props.defaultTabComponent) {

@@ -103,2 +104,3 @@ frameworkTabComponents[DEFAULT_REACT_TAB] =

frameworkComponents: props.components,
disableAutoResizing: props.disableAutoResizing,
frameworkTabComponents: frameworkTabComponents,

@@ -119,4 +121,6 @@ watermarkFrameworkComponent: props.watermarkComponent,

floatingGroupBounds: props.floatingGroupBounds,
defaultRenderer: props.defaultRenderer,
debug: props.debug,
});
var _a = domRef.current, clientWidth = _a.clientWidth, clientHeight = _a.clientHeight;
var _b = domRef.current, clientWidth = _b.clientWidth, clientHeight = _b.clientHeight;
dockview.layout(clientWidth, clientHeight);

@@ -195,6 +199,7 @@ if (props.onReady) {

React.useEffect(function () {
var _a;
if (!dockviewRef.current) {
return;
}
var frameworkTabComponents = props.tabComponents || {};
var frameworkTabComponents = (_a = props.tabComponents) !== null && _a !== void 0 ? _a : {};
if (props.defaultTabComponent) {

@@ -201,0 +206,0 @@ frameworkTabComponents[DEFAULT_REACT_TAB] =

@@ -35,7 +35,7 @@ "use strict";

ReactWatermarkPart.prototype.update = function (params) {
var _a, _b;
var _a, _b, _c;
if (this.parameters) {
this.parameters.params = params.params;
}
(_a = this.part) === null || _a === void 0 ? void 0 : _a.update({ params: ((_b = this.parameters) === null || _b === void 0 ? void 0 : _b.params) || {} });
(_a = this.part) === null || _a === void 0 ? void 0 : _a.update({ params: (_c = (_b = this.parameters) === null || _b === void 0 ? void 0 : _b.params) !== null && _c !== void 0 ? _c : {} });
};

@@ -42,0 +42,0 @@ ReactWatermarkPart.prototype.layout = function (_width, _height) {

@@ -53,2 +53,3 @@ "use strict";

React.useEffect(function () {
var _a;
if (!domRef.current) {

@@ -61,6 +62,7 @@ return function () {

parentElement: domRef.current,
disableAutoResizing: props.disableAutoResizing,
proportionalLayout: typeof props.proportionalLayout === 'boolean'
? props.proportionalLayout
: true,
orientation: props.orientation || dockview_core_1.Orientation.HORIZONTAL,
orientation: (_a = props.orientation) !== null && _a !== void 0 ? _a : dockview_core_1.Orientation.HORIZONTAL,
frameworkComponents: props.components,

@@ -78,3 +80,3 @@ frameworkComponentFactory: {

});
var _a = domRef.current, clientWidth = _a.clientWidth, clientHeight = _a.clientHeight;
var _b = domRef.current, clientWidth = _b.clientWidth, clientHeight = _b.clientHeight;
gridview.layout(clientWidth, clientHeight);

@@ -81,0 +83,0 @@ if (props.onReady) {

@@ -30,5 +30,5 @@ "use strict";

ReactGridPanelView.prototype.getComponent = function () {
var _a;
var _a, _b;
return new react_1.ReactPart(this.element, this.reactPortalStore, this.reactComponent, {
params: ((_a = this._params) === null || _a === void 0 ? void 0 : _a.params) || {},
params: (_b = (_a = this._params) === null || _a === void 0 ? void 0 : _a.params) !== null && _b !== void 0 ? _b : {},
api: this.api,

@@ -35,0 +35,0 @@ containerApi: new dockview_core_1.GridviewApi(this._params.accessor),

@@ -71,2 +71,3 @@ "use strict";

parentElement: domRef.current,
disableAutoResizing: props.disableAutoResizing,
frameworkComponents: props.components,

@@ -73,0 +74,0 @@ components: {},

@@ -34,4 +34,4 @@ import * as React from 'react';

export declare const usePortalsLifecycle: PortalLifecycleHook;
export declare function isReactElement(element: any | React.ReactElement): element is React.ReactElement;
export declare function isReactElement(element: unknown): element is React.ReactElement;
export {};
//# sourceMappingURL=react.d.ts.map

@@ -194,5 +194,5 @@ "use strict";

function isReactElement(element) {
return element === null || element === void 0 ? void 0 : element.type;
return !!(element === null || element === void 0 ? void 0 : element.type);
}
exports.isReactElement = isReactElement;
//# sourceMappingURL=react.js.map

@@ -53,5 +53,7 @@ "use strict";

React.useEffect(function () {
var _a;
var splitview = new dockview_core_1.SplitviewComponent({
parentElement: domRef.current,
orientation: props.orientation || dockview_core_1.Orientation.HORIZONTAL,
disableAutoResizing: props.disableAutoResizing,
orientation: (_a = props.orientation) !== null && _a !== void 0 ? _a : dockview_core_1.Orientation.HORIZONTAL,
frameworkComponents: props.components,

@@ -72,3 +74,3 @@ frameworkWrapper: {

});
var _a = domRef.current, clientWidth = _a.clientWidth, clientHeight = _a.clientHeight;
var _b = domRef.current, clientWidth = _b.clientWidth, clientHeight = _b.clientHeight;
splitview.layout(clientWidth, clientHeight);

@@ -75,0 +77,0 @@ if (props.onReady) {

@@ -30,5 +30,5 @@ "use strict";

ReactPanelView.prototype.getComponent = function () {
var _a;
var _a, _b;
return new react_1.ReactPart(this.element, this.reactPortalStore, this.reactComponent, {
params: ((_a = this._params) === null || _a === void 0 ? void 0 : _a.params) || {},
params: (_b = (_a = this._params) === null || _a === void 0 ? void 0 : _a.params) !== null && _b !== void 0 ? _b : {},
api: this.api,

@@ -35,0 +35,0 @@ containerApi: new dockview_core_1.SplitviewApi(this._params.accessor),

import * as React from 'react';
import { DockviewDropEvent, DockviewDndOverlayEvent, DockviewPanelApi, DockviewApi } from 'dockview-core';
import { DockviewDropEvent, DockviewDndOverlayEvent, DockviewPanelApi, DockviewApi, DockviewPanelRenderer } from 'dockview-core';
import { IWatermarkPanelProps } from './reactWatermarkPart';

@@ -41,4 +41,6 @@ import { PanelCollection, PanelParameters } from '../types';

};
debug?: boolean;
defaultRenderer?: DockviewPanelRenderer;
}
export declare const DockviewReact: React.ForwardRefExoticComponent<IDockviewReactProps & React.RefAttributes<HTMLDivElement>>;
//# sourceMappingURL=dockview.d.ts.map

@@ -22,2 +22,3 @@ import * as React from 'react';

React.useEffect(() => {
var _a;
if (!domRef.current) {

@@ -51,3 +52,3 @@ return () => {

};
const frameworkTabComponents = props.tabComponents || {};
const frameworkTabComponents = (_a = props.tabComponents) !== null && _a !== void 0 ? _a : {};
if (props.defaultTabComponent) {

@@ -61,2 +62,3 @@ frameworkTabComponents[DEFAULT_REACT_TAB] =

frameworkComponents: props.components,
disableAutoResizing: props.disableAutoResizing,
frameworkTabComponents,

@@ -77,2 +79,4 @@ watermarkFrameworkComponent: props.watermarkComponent,

floatingGroupBounds: props.floatingGroupBounds,
defaultRenderer: props.defaultRenderer,
debug: props.debug,
});

@@ -153,6 +157,7 @@ const { clientWidth, clientHeight } = domRef.current;

React.useEffect(() => {
var _a;
if (!dockviewRef.current) {
return;
}
const frameworkTabComponents = props.tabComponents || {};
const frameworkTabComponents = (_a = props.tabComponents) !== null && _a !== void 0 ? _a : {};
if (props.defaultTabComponent) {

@@ -159,0 +164,0 @@ frameworkTabComponents[DEFAULT_REACT_TAB] =

@@ -28,7 +28,7 @@ import { ReactPart } from '../react';

update(params) {
var _a, _b;
var _a, _b, _c;
if (this.parameters) {
this.parameters.params = params.params;
}
(_a = this.part) === null || _a === void 0 ? void 0 : _a.update({ params: ((_b = this.parameters) === null || _b === void 0 ? void 0 : _b.params) || {} });
(_a = this.part) === null || _a === void 0 ? void 0 : _a.update({ params: (_c = (_b = this.parameters) === null || _b === void 0 ? void 0 : _b.params) !== null && _c !== void 0 ? _c : {} });
}

@@ -35,0 +35,0 @@ layout(_width, _height) {

@@ -11,2 +11,3 @@ import * as React from 'react';

React.useEffect(() => {
var _a;
if (!domRef.current) {

@@ -19,6 +20,7 @@ return () => {

parentElement: domRef.current,
disableAutoResizing: props.disableAutoResizing,
proportionalLayout: typeof props.proportionalLayout === 'boolean'
? props.proportionalLayout
: true,
orientation: props.orientation || Orientation.HORIZONTAL,
orientation: (_a = props.orientation) !== null && _a !== void 0 ? _a : Orientation.HORIZONTAL,
frameworkComponents: props.components,

@@ -25,0 +27,0 @@ frameworkComponentFactory: {

@@ -10,5 +10,5 @@ import { GridviewApi, GridviewPanel, } from 'dockview-core';

getComponent() {
var _a;
var _a, _b;
return new ReactPart(this.element, this.reactPortalStore, this.reactComponent, {
params: ((_a = this._params) === null || _a === void 0 ? void 0 : _a.params) || {},
params: (_b = (_a = this._params) === null || _a === void 0 ? void 0 : _a.params) !== null && _b !== void 0 ? _b : {},
api: this.api,

@@ -15,0 +15,0 @@ containerApi: new GridviewApi(this._params.accessor),

@@ -16,2 +16,3 @@ import * as React from 'react';

parentElement: domRef.current,
disableAutoResizing: props.disableAutoResizing,
frameworkComponents: props.components,

@@ -18,0 +19,0 @@ components: {},

@@ -34,4 +34,4 @@ import * as React from 'react';

export declare const usePortalsLifecycle: PortalLifecycleHook;
export declare function isReactElement(element: any | React.ReactElement): element is React.ReactElement;
export declare function isReactElement(element: unknown): element is React.ReactElement;
export {};
//# sourceMappingURL=react.d.ts.map

@@ -126,4 +126,4 @@ import * as React from 'react';

export function isReactElement(element) {
return element === null || element === void 0 ? void 0 : element.type;
return !!(element === null || element === void 0 ? void 0 : element.type);
}
//# sourceMappingURL=react.js.map

@@ -11,5 +11,7 @@ import * as React from 'react';

React.useEffect(() => {
var _a;
const splitview = new SplitviewComponent({
parentElement: domRef.current,
orientation: props.orientation || Orientation.HORIZONTAL,
disableAutoResizing: props.disableAutoResizing,
orientation: (_a = props.orientation) !== null && _a !== void 0 ? _a : Orientation.HORIZONTAL,
frameworkComponents: props.components,

@@ -16,0 +18,0 @@ frameworkWrapper: {

@@ -10,5 +10,5 @@ import { SplitviewApi, SplitviewPanel, } from 'dockview-core';

getComponent() {
var _a;
var _a, _b;
return new ReactPart(this.element, this.reactPortalStore, this.reactComponent, {
params: ((_a = this._params) === null || _a === void 0 ? void 0 : _a.params) || {},
params: (_b = (_a = this._params) === null || _a === void 0 ? void 0 : _a.params) !== null && _b !== void 0 ? _b : {},
api: this.api,

@@ -15,0 +15,0 @@ containerApi: new SplitviewApi(this._params.accessor),

{
"name": "dockview",
"version": "0.0.0-experimental-dc50d4e-20231022",
"version": "0.0.0-experimental-e3e87f4-20240117",
"description": "Zero dependency layout manager supporting tabs, grids and splitviews with ReactJS support",
"main": "./dist/cjs/index.js",
"types": "./dist/cjs/index.d.ts",
"module": "./dist/esm/index.js",
"repository": {
"type": "git",
"url": "https://github.com/mathuo/dockview.git"
},
"bugs": {
"url": "https://github.com/mathuo/dockview/issues"
},
"homepage": "https://github.com/mathuo/dockview",
"scripts": {
"build:package": "npm run build:cjs && npm run build:esm && npm run build:css",
"build:cjs": "cross-env ../../node_modules/.bin/tsc --project ./tsconfig.json --extendedDiagnostics",
"build:css": "gulp sass",
"build:esm": "cross-env ../../node_modules/.bin/tsc --project ./tsconfig.esm.json --extendedDiagnostics",
"build:bundles": "rollup -c",
"build": "npm run build:package && npm run build:bundles",
"clean": "rimraf dist/ .build/ .rollup.cache/",
"docs": "typedoc",
"prepublishOnly": "npm run rebuild && npm run test",
"rebuild": "npm run clean && npm run build",
"test": "cross-env ../../node_modules/.bin/jest --selectProjects dockview",
"test:cov": "cross-env ../../node_modules/.bin/jest --selectProjects dockview --coverage"
},
"files": [
"dist",
"README.md"
],
"keywords": [

@@ -55,22 +26,35 @@ "splitview",

],
"homepage": "https://github.com/mathuo/dockview",
"bugs": {
"url": "https://github.com/mathuo/dockview/issues"
},
"repository": {
"type": "git",
"url": "https://github.com/mathuo/dockview.git"
},
"license": "MIT",
"author": "https://github.com/mathuo",
"license": "MIT",
"main": "./dist/cjs/index.js",
"module": "./dist/esm/index.js",
"types": "./dist/cjs/index.d.ts",
"files": [
"dist",
"README.md"
],
"scripts": {
"build": "npm run build:package && npm run build:bundles",
"build:bundles": "rollup -c",
"build:cjs": "cross-env ../../node_modules/.bin/tsc --project ./tsconfig.json --extendedDiagnostics",
"build:css": "gulp sass",
"build:esm": "cross-env ../../node_modules/.bin/tsc --project ./tsconfig.esm.json --extendedDiagnostics",
"build:package": "npm run build:cjs && npm run build:esm && npm run build:css",
"clean": "rimraf dist/ .build/ .rollup.cache/",
"prepublishOnly": "npm run rebuild && npm run test",
"rebuild": "npm run clean && npm run build",
"test": "cross-env ../../node_modules/.bin/jest --selectProjects dockview",
"test:cov": "cross-env ../../node_modules/.bin/jest --selectProjects dockview --coverage"
},
"dependencies": {
"dockview-core": "0.0.0-experimental-dc50d4e-20231022"
},
"devDependencies": {
"@rollup/plugin-node-resolve": "^15.0.1",
"@rollup/plugin-terser": "^0.4.0",
"@rollup/plugin-typescript": "^11.0.0",
"@testing-library/react": "^13.4.0",
"@types/react": "^18.0.28",
"@types/react-dom": "^18.0.11",
"cross-env": "^7.0.3",
"postcss": "^8.4.21",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"rimraf": "^4.1.2",
"rollup": "^3.15.0",
"rollup-plugin-postcss": "^4.0.2"
"dockview-core": "0.0.0-experimental-e3e87f4-20240117"
}
}

@@ -11,2 +11,3 @@ <div align="center">

[![npm version](https://badge.fury.io/js/dockview.svg)](https://www.npmjs.com/package/dockview)
[![npm](https://img.shields.io/npm/dm/dockview)](https://www.npmjs.com/package/dockview)
[![CI Build](https://github.com/mathuo/dockview/workflows/CI/badge.svg)](https://github.com/mathuo/dockview/actions?query=workflow%3ACI)

@@ -23,12 +24,16 @@ [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=mathuo_dockview&metric=coverage)](https://sonarcloud.io/summary/overall?id=mathuo_dockview)

- Simple splitviews, nested splitviews (i.e. gridviews) supporting full layout managment with
dockable and tabular views
- Extensive API support at the component level and view level
- Themable and customizable
- Serialization / deserialization support
- Tabular docking and Drag and Drop support
- Floating groups, customized header bars and tab
- Documentation and examples
- Serialization / deserialization with full layout management
- Support for split-views, grid-views and 'dockable' views
- Themeable and customizable
- Tab and Group docking / Drag n' Drop
- Popout Windows
- Floating Groups
- Extensive API
- Supports Shadow DOMs
- High test coverage
- Documentation website with live examples
- Transparent builds and Code Analysis
- Security at mind - verifed publishing and builds through GitHub Actions
Want to inspect the latest deployment? Go to https://unpkg.com/browse/dockview@latest/
Want to verify our builds? Go [here](https://www.npmjs.com/package/dockview#Provenance).

@@ -35,0 +40,0 @@ ## Quick start

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc