@teambit/workspace 1.0.452 → 1.0.454

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,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.452/dist/workspace.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.452/dist/workspace.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.454/dist/workspace.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.454/dist/workspace.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -134,12 +134,11 @@ function Workspace({
134
134
  const {
135
135
  workspace
136
136
  } = (0, _useWorkspace().useWorkspace)(reactions);
137
- const {
138
- current
139
- } = (0, _baseReactThemes().useThemePicker)();
137
+ const theme = (0, _baseReactThemes().useThemePicker)();
138
+ const currentTheme = theme?.current;
140
139
  const [isSidebarOpen, handleSidebarToggle] = (0, _react().useReducer)(x => !x, true);
141
140
  const sidebarOpenness = isSidebarOpen ? _baseUiSurfacesSplitPane().Layout.row : _baseUiSurfacesSplitPane().Layout.right;
142
- const themeName = current?.themeName || 'light';
141
+ const themeName = currentTheme?.themeName || 'light';
143
142
  onSidebarTogglerChange(handleSidebarToggle);
144
143
  if (!workspace) {
145
144
  return /*#__PURE__*/_react().default.createElement("div", {
@@ -1 +1 @@
1
- {"version":3,"names":["require","_pluralize","data","_interopRequireDefault","_react","_interopRequireWildcard","_reactRouterDom","_uiFoundationUiNotifications","_uiFoundationUiReactRouter","_uiFoundationUi","_uiFoundationUiButtons","_baseUiSurfacesSplitPane","_baseReactThemes","_baseUiSurfacesSplitPane2","_uiFoundationUi2","_classnames","_useWorkspace","_workspaceOverview","_workspaceProvider","_workspaceModule","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Workspace","routeSlot","menuSlot","sidebar","workspaceUI","onSidebarTogglerChange","reactions","useComponentNotifications","workspace","useWorkspace","current","useThemePicker","isSidebarOpen","handleSidebarToggle","useReducer","x","sidebarOpenness","Layout","row","right","themeName","createElement","className","styles","emptyContainer","setComponents","components","WorkspaceProvider","workspaceWrapper","TopBar","classNames","topbar","Corner","corner","name","icon","menu","SplitPane","main","size","layout","Pane","closed","HoverSplitter","splitter","Collapser","isOpen","onMouseDown","stopPropagation","onClick","tooltipContent","SlotRouter","slot","Route","index","element","WorkspaceOverview","notifications","useNotifications","useMemo","onComponentAdded","comps","notificationId","log","pluralize","length","map","comp","id","toString","join","setTimeout","dismiss","onComponentRemoved","ids"],"sources":["workspace.tsx"],"sourcesContent":["import 'reset-css';\nimport pluralize from 'pluralize';\nimport React, { useReducer, useMemo } from 'react';\nimport { Route } from 'react-router-dom';\nimport type { ComponentModel } from '@teambit/component';\nimport type { ComponentID } from '@teambit/component-id';\nimport { useNotifications } from '@teambit/ui-foundation.ui.notifications.notification-context';\nimport { SlotRouter } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport type { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport { Corner } from '@teambit/ui-foundation.ui.corner';\nimport { Collapser } from '@teambit/ui-foundation.ui.buttons.collapser';\nimport { SplitPane, Pane, Layout } from '@teambit/base-ui.surfaces.split-pane.split-pane';\nimport { useThemePicker } from '@teambit/base-react.themes.theme-switcher';\nimport { HoverSplitter } from '@teambit/base-ui.surfaces.split-pane.hover-splitter';\nimport { TopBar } from '@teambit/ui-foundation.ui.top-bar';\nimport classNames from 'classnames';\n\nimport { useWorkspace } from './use-workspace';\nimport { WorkspaceOverview } from './workspace-overview';\nimport { WorkspaceProvider } from './workspace-provider';\nimport styles from './workspace.module.scss';\nimport { WorkspaceUI } from '../../workspace.ui.runtime';\n\nexport type WorkspaceProps = {\n routeSlot: RouteSlot;\n menuSlot: RouteSlot;\n sidebar: JSX.Element;\n workspaceUI: WorkspaceUI;\n onSidebarTogglerChange: (callback: () => void) => void;\n};\n\n/**\n * main workspace component.\n */\nexport function Workspace({ routeSlot, menuSlot, sidebar, workspaceUI, onSidebarTogglerChange }: WorkspaceProps) {\n const reactions = useComponentNotifications();\n const { workspace } = useWorkspace(reactions);\n const { current } = useThemePicker();\n const [isSidebarOpen, handleSidebarToggle] = useReducer((x) => !x, true);\n const sidebarOpenness = isSidebarOpen ? Layout.row : Layout.right;\n const themeName = current?.themeName || 'light';\n onSidebarTogglerChange(handleSidebarToggle);\n\n if (!workspace) {\n return <div className={styles.emptyContainer}></div>;\n }\n\n workspaceUI.setComponents(workspace.components);\n\n return (\n <WorkspaceProvider workspace={workspace}>\n <div className={styles.workspaceWrapper}>\n <TopBar\n className={classNames(styles.topbar, styles[themeName])}\n Corner={() => (\n <Corner\n className={classNames(styles.corner, styles[themeName])}\n name={workspace.name}\n icon={workspace.icon}\n />\n )}\n menu={menuSlot}\n />\n\n <SplitPane className={styles.main} size={246} layout={sidebarOpenness}>\n <Pane className={classNames(styles.sidebar, styles[themeName], !isSidebarOpen && styles.closed)}>\n {sidebar}\n </Pane>\n <HoverSplitter className={styles.splitter}>\n <Collapser\n isOpen={isSidebarOpen}\n onMouseDown={(e) => e.stopPropagation()} // avoid split-pane drag\n onClick={handleSidebarToggle}\n tooltipContent={`${isSidebarOpen ? 'Hide' : 'Show'} side panel`}\n />\n </HoverSplitter>\n <Pane>\n <SlotRouter slot={routeSlot}>\n <Route index element={<WorkspaceOverview />} />\n </SlotRouter>\n </Pane>\n </SplitPane>\n </div>\n </WorkspaceProvider>\n );\n}\nfunction useComponentNotifications() {\n const notifications = useNotifications();\n\n // memo not really needed, but for peace of mind\n return useMemo(\n () => ({\n onComponentAdded: (comps: ComponentModel[]) => {\n const notificationId = notifications.log(\n `added ${pluralize('component', comps.length)}: ${comps.map((comp) => comp.id.toString()).join(', ')}`\n );\n setTimeout(() => notifications.dismiss(notificationId), 12 * 1000);\n },\n\n onComponentRemoved: (ids: ComponentID[]) => {\n const notificationId = notifications.log(\n `removed ${pluralize('component', ids.length)} ${ids.map((id) => id.toString()).join(', ')}`\n );\n setTimeout(() => notifications.dismiss(notificationId), 12 * 1000);\n },\n }),\n [notifications]\n );\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["require","_pluralize","data","_interopRequireDefault","_react","_interopRequireWildcard","_reactRouterDom","_uiFoundationUiNotifications","_uiFoundationUiReactRouter","_uiFoundationUi","_uiFoundationUiButtons","_baseUiSurfacesSplitPane","_baseReactThemes","_baseUiSurfacesSplitPane2","_uiFoundationUi2","_classnames","_useWorkspace","_workspaceOverview","_workspaceProvider","_workspaceModule","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Workspace","routeSlot","menuSlot","sidebar","workspaceUI","onSidebarTogglerChange","reactions","useComponentNotifications","workspace","useWorkspace","theme","useThemePicker","currentTheme","current","isSidebarOpen","handleSidebarToggle","useReducer","x","sidebarOpenness","Layout","row","right","themeName","createElement","className","styles","emptyContainer","setComponents","components","WorkspaceProvider","workspaceWrapper","TopBar","classNames","topbar","Corner","corner","name","icon","menu","SplitPane","main","size","layout","Pane","closed","HoverSplitter","splitter","Collapser","isOpen","onMouseDown","stopPropagation","onClick","tooltipContent","SlotRouter","slot","Route","index","element","WorkspaceOverview","notifications","useNotifications","useMemo","onComponentAdded","comps","notificationId","log","pluralize","length","map","comp","id","toString","join","setTimeout","dismiss","onComponentRemoved","ids"],"sources":["workspace.tsx"],"sourcesContent":["import 'reset-css';\nimport pluralize from 'pluralize';\nimport React, { useReducer, useMemo } from 'react';\nimport { Route } from 'react-router-dom';\nimport type { ComponentModel } from '@teambit/component';\nimport type { ComponentID } from '@teambit/component-id';\nimport { useNotifications } from '@teambit/ui-foundation.ui.notifications.notification-context';\nimport { SlotRouter } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport type { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport { Corner } from '@teambit/ui-foundation.ui.corner';\nimport { Collapser } from '@teambit/ui-foundation.ui.buttons.collapser';\nimport { SplitPane, Pane, Layout } from '@teambit/base-ui.surfaces.split-pane.split-pane';\nimport { useThemePicker } from '@teambit/base-react.themes.theme-switcher';\nimport { HoverSplitter } from '@teambit/base-ui.surfaces.split-pane.hover-splitter';\nimport { TopBar } from '@teambit/ui-foundation.ui.top-bar';\nimport classNames from 'classnames';\n\nimport { useWorkspace } from './use-workspace';\nimport { WorkspaceOverview } from './workspace-overview';\nimport { WorkspaceProvider } from './workspace-provider';\nimport styles from './workspace.module.scss';\nimport { WorkspaceUI } from '../../workspace.ui.runtime';\n\nexport type WorkspaceProps = {\n routeSlot: RouteSlot;\n menuSlot: RouteSlot;\n sidebar: JSX.Element;\n workspaceUI: WorkspaceUI;\n onSidebarTogglerChange: (callback: () => void) => void;\n};\n\n/**\n * main workspace component.\n */\nexport function Workspace({ routeSlot, menuSlot, sidebar, workspaceUI, onSidebarTogglerChange }: WorkspaceProps) {\n const reactions = useComponentNotifications();\n const { workspace } = useWorkspace(reactions);\n const theme = useThemePicker();\n const currentTheme = theme?.current;\n const [isSidebarOpen, handleSidebarToggle] = useReducer((x) => !x, true);\n const sidebarOpenness = isSidebarOpen ? Layout.row : Layout.right;\n const themeName = currentTheme?.themeName || 'light';\n onSidebarTogglerChange(handleSidebarToggle);\n\n if (!workspace) {\n return <div className={styles.emptyContainer}></div>;\n }\n\n workspaceUI.setComponents(workspace.components);\n\n return (\n <WorkspaceProvider workspace={workspace}>\n <div className={styles.workspaceWrapper}>\n <TopBar\n className={classNames(styles.topbar, styles[themeName])}\n Corner={() => (\n <Corner\n className={classNames(styles.corner, styles[themeName])}\n name={workspace.name}\n icon={workspace.icon}\n />\n )}\n menu={menuSlot}\n />\n\n <SplitPane className={styles.main} size={246} layout={sidebarOpenness}>\n <Pane className={classNames(styles.sidebar, styles[themeName], !isSidebarOpen && styles.closed)}>\n {sidebar}\n </Pane>\n <HoverSplitter className={styles.splitter}>\n <Collapser\n isOpen={isSidebarOpen}\n onMouseDown={(e) => e.stopPropagation()} // avoid split-pane drag\n onClick={handleSidebarToggle}\n tooltipContent={`${isSidebarOpen ? 'Hide' : 'Show'} side panel`}\n />\n </HoverSplitter>\n <Pane>\n <SlotRouter slot={routeSlot}>\n <Route index element={<WorkspaceOverview />} />\n </SlotRouter>\n </Pane>\n </SplitPane>\n </div>\n </WorkspaceProvider>\n );\n}\nfunction useComponentNotifications() {\n const notifications = useNotifications();\n\n // memo not really needed, but for peace of mind\n return useMemo(\n () => ({\n onComponentAdded: (comps: ComponentModel[]) => {\n const notificationId = notifications.log(\n `added ${pluralize('component', comps.length)}: ${comps.map((comp) => comp.id.toString()).join(', ')}`\n );\n setTimeout(() => notifications.dismiss(notificationId), 12 * 1000);\n },\n\n onComponentRemoved: (ids: ComponentID[]) => {\n const notificationId = notifications.log(\n `removed ${pluralize('component', ids.length)} ${ids.map((id) => id.toString()).join(', ')}`\n );\n setTimeout(() => notifications.dismiss(notificationId), 12 * 1000);\n },\n }),\n [notifications]\n );\n}\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/workspace",
3
- "version": "1.0.452",
3
+ "version": "1.0.454",
4
4
  "homepage": "https://bit.cloud/teambit/workspace/workspace",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.workspace",
8
8
  "name": "workspace",
9
- "version": "1.0.452"
9
+ "version": "1.0.454"
10
10
  },
11
11
  "dependencies": {
12
12
  "lodash": "4.17.21",
@@ -51,32 +51,32 @@
51
51
  "@teambit/explorer.ui.gallery.component-grid": "0.0.496",
52
52
  "@teambit/scopes.scope-id": "0.0.7",
53
53
  "@teambit/workspace.ui.empty-workspace": "0.0.508",
54
- "@teambit/component": "1.0.452",
55
- "@teambit/dependency-resolver": "1.0.452",
56
- "@teambit/envs": "1.0.452",
54
+ "@teambit/component": "1.0.454",
55
+ "@teambit/dependency-resolver": "1.0.454",
56
+ "@teambit/envs": "1.0.454",
57
57
  "@teambit/legacy.bit-map": "0.0.46",
58
58
  "@teambit/toolbox.fs.last-modified": "0.0.1",
59
59
  "@teambit/toolbox.path.path": "0.0.4",
60
- "@teambit/logger": "0.0.1122",
61
- "@teambit/scope": "1.0.452",
62
- "@teambit/graph": "1.0.452",
63
- "@teambit/cli": "0.0.1029",
64
- "@teambit/isolator": "1.0.452",
65
- "@teambit/component-tree": "1.0.452",
60
+ "@teambit/logger": "0.0.1124",
61
+ "@teambit/scope": "1.0.454",
62
+ "@teambit/graph": "1.0.454",
63
+ "@teambit/cli": "0.0.1031",
64
+ "@teambit/isolator": "1.0.454",
65
+ "@teambit/component-tree": "1.0.454",
66
66
  "@teambit/harmony.modules.resolved-component": "0.0.498",
67
67
  "@teambit/legacy.utils": "0.0.6",
68
- "@teambit/watcher": "1.0.452",
69
- "@teambit/aspect-loader": "1.0.452",
70
- "@teambit/config": "0.0.1203",
71
- "@teambit/global-config": "0.0.1032",
68
+ "@teambit/watcher": "1.0.454",
69
+ "@teambit/aspect-loader": "1.0.454",
70
+ "@teambit/config": "0.0.1205",
71
+ "@teambit/global-config": "0.0.1034",
72
72
  "@teambit/harmony.modules.requireable-component": "0.0.498",
73
73
  "@teambit/toolbox.modules.module-resolver": "0.0.7",
74
74
  "@teambit/workspace.modules.node-modules-linker": "0.0.217",
75
- "@teambit/graphql": "1.0.452",
76
- "@teambit/bundler": "1.0.452",
77
- "@teambit/pubsub": "1.0.452",
78
- "@teambit/ui": "1.0.452",
79
- "@teambit/variants": "0.0.1296",
75
+ "@teambit/graphql": "1.0.454",
76
+ "@teambit/bundler": "1.0.454",
77
+ "@teambit/pubsub": "1.0.454",
78
+ "@teambit/ui": "1.0.454",
79
+ "@teambit/variants": "0.0.1298",
80
80
  "@teambit/component-issues": "0.0.151",
81
81
  "@teambit/component.sources": "0.0.42",
82
82
  "@teambit/harmony.modules.in-memory-cache": "0.0.2",
@@ -84,21 +84,21 @@
84
84
  "@teambit/legacy.scope-api": "0.0.45",
85
85
  "@teambit/toolbox.path.is-path-inside": "0.0.496",
86
86
  "@teambit/workspace.modules.match-pattern": "0.0.505",
87
- "@teambit/component.ui.component-drawer": "0.0.417",
87
+ "@teambit/component.ui.component-drawer": "0.0.418",
88
88
  "@teambit/lanes.hooks.use-lane-components": "0.0.269",
89
89
  "@teambit/lanes.hooks.use-lanes": "0.0.274",
90
- "@teambit/ui-foundation.ui.side-bar": "0.0.887",
91
- "@teambit/command-bar": "1.0.452",
90
+ "@teambit/ui-foundation.ui.side-bar": "0.0.888",
91
+ "@teambit/command-bar": "1.0.454",
92
92
  "@teambit/component.ui.component-filters.component-filter-context": "0.0.230",
93
93
  "@teambit/component.ui.component-filters.deprecate-filter": "0.0.228",
94
94
  "@teambit/component.ui.component-filters.env-filter": "0.0.240",
95
95
  "@teambit/component.ui.component-filters.show-main-filter": "0.0.221",
96
- "@teambit/sidebar": "1.0.452",
97
- "@teambit/ui-foundation.ui.react-router.slot-router": "0.0.511",
96
+ "@teambit/sidebar": "1.0.454",
97
+ "@teambit/ui-foundation.ui.react-router.slot-router": "0.0.512",
98
98
  "@teambit/harmony.modules.concurrency": "0.0.1",
99
99
  "@teambit/toolbox.promise.map-pool": "0.0.1",
100
100
  "@teambit/component-descriptor": "0.0.426",
101
- "@teambit/deprecation": "1.0.452",
101
+ "@teambit/deprecation": "1.0.454",
102
102
  "@teambit/ui-foundation.ui.buttons.collapser": "0.0.224",
103
103
  "@teambit/cloud.hooks.use-cloud-scopes": "0.0.3",
104
104
  "@teambit/design.ui.tooltip": "0.0.371",
@@ -35,10 +35,11 @@ export type WorkspaceProps = {
35
35
  export function Workspace({ routeSlot, menuSlot, sidebar, workspaceUI, onSidebarTogglerChange }: WorkspaceProps) {
36
36
  const reactions = useComponentNotifications();
37
37
  const { workspace } = useWorkspace(reactions);
38
- const { current } = useThemePicker();
38
+ const theme = useThemePicker();
39
+ const currentTheme = theme?.current;
39
40
  const [isSidebarOpen, handleSidebarToggle] = useReducer((x) => !x, true);
40
41
  const sidebarOpenness = isSidebarOpen ? Layout.row : Layout.right;
41
- const themeName = current?.themeName || 'light';
42
+ const themeName = currentTheme?.themeName || 'light';
42
43
  onSidebarTogglerChange(handleSidebarToggle);
43
44
 
44
45
  if (!workspace) {