@lonli-lokli/react-mosaic-component
Version:
A React Tiling Window Manager
118 lines (117 loc) • 3.38 kB
JavaScript
// libs/react-mosaic-component/src/lib/index.ts
import {
Mosaic,
MosaicWithoutDragDropContext
} from "./Mosaic.mjs";
import {
MosaicDragType
} from "./types.mjs";
import {
MosaicContext,
MosaicWindowContext
} from "./contextTypes.mjs";
import {
buildSpecFromUpdate,
createDragToUpdates,
createExpandUpdate,
createHideUpdate,
createRemoveUpdate,
updateTree
} from "./util/mosaicUpdates.mjs";
import {
createBalancedTreeFromLeaves,
Corner,
getAndAssertNodeAtPathExists,
getLeaves,
getOtherDirection,
getPathToCorner,
getNodeAtPath,
isTabsNode,
convertLegacyToNary,
isSplitNode,
getParentNode,
getParentPath
} from "./util/mosaicUtilities.mjs";
import { MosaicWindow } from "./MosaicWindow.mjs";
import { MosaicTabs } from "./MosaicTabs.mjs";
import {
createDefaultToolbarButton,
DefaultToolbarButton
} from "./buttons/MosaicButton.mjs";
import { MosaicZeroState } from "./MosaicZeroState.mjs";
import { Separator } from "./buttons/Separator.mjs";
import { ExpandButton } from "./buttons/ExpandButton.mjs";
import { ReplaceButton } from "./buttons/ReplaceButton.mjs";
import { SplitButton } from "./buttons/SplitButton.mjs";
import { RemoveButton } from "./buttons/RemoveButton.mjs";
import { AddTabButton } from "./buttons/AddTabButton.mjs";
import { TabSplitButton } from "./buttons/TabSplitButton.mjs";
import { TabRemoveButton } from "./buttons/TabRemoveButton.mjs";
import { TabExpandButton } from "./buttons/TabExpandButton.mjs";
import { DraggableTab } from "./DraggableTab.mjs";
import {
DEFAULT_PANEL_CONTROLS_IN_TABS,
DEFAULT_PANEL_CONTROLS_WITH_CREATION,
DEFAULT_PANEL_CONTROLS_WITHOUT_CREATION,
createDefaultTabsControls
} from "./buttons/defaultToolbarControls.mjs";
export {
AddTabButton,
Corner,
DEFAULT_PANEL_CONTROLS_IN_TABS as DEFAULT_CONTROLS_IN_TABS,
DEFAULT_PANEL_CONTROLS_WITHOUT_CREATION as DEFAULT_CONTROLS_WITHOUT_CREATION,
DEFAULT_PANEL_CONTROLS_WITH_CREATION as DEFAULT_CONTROLS_WITH_CREATION,
DefaultToolbarButton,
DraggableTab,
ExpandButton,
Mosaic,
MosaicContext,
MosaicDragType,
MosaicTabs,
MosaicWindow,
MosaicWindowContext,
MosaicWithoutDragDropContext,
MosaicZeroState,
RemoveButton,
ReplaceButton,
Separator,
SplitButton,
TabExpandButton,
TabRemoveButton,
TabSplitButton,
buildSpecFromUpdate,
convertLegacyToNary,
createBalancedTreeFromLeaves,
createDefaultTabsControls,
createDefaultToolbarButton,
createDragToUpdates,
createExpandUpdate,
createHideUpdate,
createRemoveUpdate,
getAndAssertNodeAtPathExists,
getLeaves,
getNodeAtPath,
getOtherDirection,
getParentNode,
getParentPath,
getPathToCorner,
isSplitNode,
isTabsNode,
updateTree
};
/**
* @license
* Copyright 2019 Kevin Verdieck, originally developed at Palantir Technologies, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/