@teambit/lanes 0.0.391 → 0.0.394
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/dist/lanes.ui.runtime.d.ts +2 -1
- package/dist/lanes.ui.runtime.js +98 -24
- package/dist/lanes.ui.runtime.js.map +1 -1
- package/lanes.ui.runtime.tsx +18 -26
- package/package-tar/teambit-lanes-0.0.394.tgz +0 -0
- package/package.json +23 -17
- package/{preview-1660707067764.js → preview-1660966145435.js} +2 -2
- package/package-tar/teambit-lanes-0.0.391.tgz +0 -0
@@ -3,12 +3,13 @@ import { RouteProps } from 'react-router-dom';
|
|
3
3
|
import { Harmony } from '@teambit/harmony';
|
4
4
|
import { UiUI } from '@teambit/ui';
|
5
5
|
import { NavigationSlot, RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';
|
6
|
-
import { LanesOrderedNavigationSlot, LaneOverviewLineSlot, LaneOverviewLine, LanesNavPlugin } from '@teambit/lanes.ui.lanes';
|
7
6
|
import { ScopeUI } from '@teambit/scope';
|
8
7
|
import { WorkspaceUI } from '@teambit/workspace';
|
9
8
|
import { ComponentUI } from '@teambit/component';
|
10
9
|
import { SidebarUI } from '@teambit/sidebar';
|
11
10
|
import { MenuWidget, MenuWidgetSlot } from '@teambit/ui-foundation.ui.menu';
|
11
|
+
import { LaneOverviewLine, LaneOverviewLineSlot } from '@teambit/lanes.ui.gallery';
|
12
|
+
import { LanesNavPlugin, LanesOrderedNavigationSlot } from '@teambit/lanes.ui.menus';
|
12
13
|
export declare class LanesUI {
|
13
14
|
private componentUi;
|
14
15
|
private routeSlot;
|
package/dist/lanes.ui.runtime.js
CHANGED
@@ -71,16 +71,6 @@ function _lanes() {
|
|
71
71
|
return data;
|
72
72
|
}
|
73
73
|
|
74
|
-
function _lanesUi() {
|
75
|
-
const data = require("@teambit/lanes.ui.lanes");
|
76
|
-
|
77
|
-
_lanesUi = function () {
|
78
|
-
return data;
|
79
|
-
};
|
80
|
-
|
81
|
-
return data;
|
82
|
-
}
|
83
|
-
|
84
74
|
function _designUiPages() {
|
85
75
|
const data = require("@teambit/design.ui.pages.not-found");
|
86
76
|
|
@@ -131,6 +121,76 @@ function _sidebar() {
|
|
131
121
|
return data;
|
132
122
|
}
|
133
123
|
|
124
|
+
function _lanesUi() {
|
125
|
+
const data = require("@teambit/lanes.ui.gallery");
|
126
|
+
|
127
|
+
_lanesUi = function () {
|
128
|
+
return data;
|
129
|
+
};
|
130
|
+
|
131
|
+
return data;
|
132
|
+
}
|
133
|
+
|
134
|
+
function _lanesUi2() {
|
135
|
+
const data = require("@teambit/lanes.ui.menus");
|
136
|
+
|
137
|
+
_lanesUi2 = function () {
|
138
|
+
return data;
|
139
|
+
};
|
140
|
+
|
141
|
+
return data;
|
142
|
+
}
|
143
|
+
|
144
|
+
function _lanesUi3() {
|
145
|
+
const data = require("@teambit/lanes.ui.models");
|
146
|
+
|
147
|
+
_lanesUi3 = function () {
|
148
|
+
return data;
|
149
|
+
};
|
150
|
+
|
151
|
+
return data;
|
152
|
+
}
|
153
|
+
|
154
|
+
function _lanesUi4() {
|
155
|
+
const data = require("@teambit/lanes.ui.readme");
|
156
|
+
|
157
|
+
_lanesUi4 = function () {
|
158
|
+
return data;
|
159
|
+
};
|
160
|
+
|
161
|
+
return data;
|
162
|
+
}
|
163
|
+
|
164
|
+
function _lanesHooks() {
|
165
|
+
const data = require("@teambit/lanes.hooks.use-lanes");
|
166
|
+
|
167
|
+
_lanesHooks = function () {
|
168
|
+
return data;
|
169
|
+
};
|
170
|
+
|
171
|
+
return data;
|
172
|
+
}
|
173
|
+
|
174
|
+
function _lanesUi5() {
|
175
|
+
const data = require("@teambit/lanes.ui.viewed-lane");
|
176
|
+
|
177
|
+
_lanesUi5 = function () {
|
178
|
+
return data;
|
179
|
+
};
|
180
|
+
|
181
|
+
return data;
|
182
|
+
}
|
183
|
+
|
184
|
+
function _lanesUi6() {
|
185
|
+
const data = require("@teambit/lanes.ui.drawer");
|
186
|
+
|
187
|
+
_lanesUi6 = function () {
|
188
|
+
return data;
|
189
|
+
};
|
190
|
+
|
191
|
+
return data;
|
192
|
+
}
|
193
|
+
|
134
194
|
class LanesUI {
|
135
195
|
constructor(componentUi, routeSlot, navSlot, menuWidgetSlot,
|
136
196
|
/**
|
@@ -150,7 +210,7 @@ class LanesUI {
|
|
150
210
|
(0, _defineProperty2().default)(this, "renderContext", ({
|
151
211
|
children
|
152
212
|
}) => {
|
153
|
-
return /*#__PURE__*/_react().default.createElement(
|
213
|
+
return /*#__PURE__*/_react().default.createElement(_lanesUi5().ViewedLaneFromUrl, null, children);
|
154
214
|
});
|
155
215
|
this.hostAspect = workspace || scope;
|
156
216
|
this.lanesHost = workspace ? 'workspace' : 'scope';
|
@@ -165,12 +225,12 @@ class LanesUI {
|
|
165
225
|
|
166
226
|
getLaneRoutes() {
|
167
227
|
return [{
|
168
|
-
path:
|
228
|
+
path: _lanesUi3().LanesModel.lanesPrefix,
|
169
229
|
children: /*#__PURE__*/_react().default.createElement(_react().default.Fragment, null, /*#__PURE__*/_react().default.createElement(_reactRouterDom().Route, {
|
170
|
-
path:
|
230
|
+
path: _lanesUi3().LanesModel.lanePath
|
171
231
|
}, /*#__PURE__*/_react().default.createElement(_reactRouterDom().Route, {
|
172
232
|
index: true,
|
173
|
-
element: /*#__PURE__*/_react().default.createElement(
|
233
|
+
element: /*#__PURE__*/_react().default.createElement(_lanesUi4().LaneReadmeOverview, {
|
174
234
|
host: this.host,
|
175
235
|
overviewSlot: this.overviewSlot,
|
176
236
|
routeSlot: this.routeSlot
|
@@ -201,9 +261,9 @@ class LanesUI {
|
|
201
261
|
|
202
262
|
getMenuRoutes() {
|
203
263
|
return [{
|
204
|
-
path:
|
264
|
+
path: _lanesUi3().LanesModel.lanesPrefix,
|
205
265
|
children: /*#__PURE__*/_react().default.createElement(_reactRouterDom().Route, {
|
206
|
-
path: `${
|
266
|
+
path: `${_lanesUi3().LanesModel.lanePath}/*`
|
207
267
|
}, /*#__PURE__*/_react().default.createElement(_reactRouterDom().Route, {
|
208
268
|
path: "*",
|
209
269
|
element: this.getLanesOverviewMenu()
|
@@ -215,7 +275,7 @@ class LanesUI {
|
|
215
275
|
}
|
216
276
|
|
217
277
|
getLanesOverviewMenu() {
|
218
|
-
return /*#__PURE__*/_react().default.createElement(
|
278
|
+
return /*#__PURE__*/_react().default.createElement(_lanesUi2().LanesOverviewMenu, {
|
219
279
|
navigationSlot: this.navSlot,
|
220
280
|
widgetSlot: this.menuWidgetSlot
|
221
281
|
});
|
@@ -234,10 +294,12 @@ class LanesUI {
|
|
234
294
|
},
|
235
295
|
order: 1,
|
236
296
|
hide: () => {
|
237
|
-
var
|
297
|
+
var _lanesModel$viewedLan;
|
238
298
|
|
239
|
-
const
|
240
|
-
|
299
|
+
const {
|
300
|
+
lanesModel
|
301
|
+
} = (0, _lanesHooks().useLanes)();
|
302
|
+
return !(lanesModel !== null && lanesModel !== void 0 && (_lanesModel$viewedLan = lanesModel.viewedLane) !== null && _lanesModel$viewedLan !== void 0 && _lanesModel$viewedLan.readmeComponent);
|
241
303
|
}
|
242
304
|
}, {
|
243
305
|
props: {
|
@@ -292,14 +354,26 @@ class LanesUI {
|
|
292
354
|
if (uiUi) uiUi.registerRenderHooks({
|
293
355
|
reactContext: lanesUi.renderContext
|
294
356
|
});
|
295
|
-
const drawer = new (
|
357
|
+
const drawer = new (_lanesUi6().LanesDrawer)({
|
296
358
|
showScope: lanesUi.lanesHost === 'workspace'
|
297
359
|
});
|
298
360
|
sidebarUi.registerDrawer(drawer);
|
299
361
|
lanesUi.registerRoutes();
|
300
|
-
lanesUi.registerMenuWidget(() =>
|
301
|
-
|
302
|
-
|
362
|
+
lanesUi.registerMenuWidget(() => {
|
363
|
+
const {
|
364
|
+
lanesModel
|
365
|
+
} = (0, _lanesHooks().useLanes)();
|
366
|
+
if (!(lanesModel !== null && lanesModel !== void 0 && lanesModel.viewedLane)) return null;
|
367
|
+
const {
|
368
|
+
viewedLane,
|
369
|
+
currentLane
|
370
|
+
} = lanesModel;
|
371
|
+
return /*#__PURE__*/_react().default.createElement(_lanesUi2().UseLaneMenu, {
|
372
|
+
host: lanesUi.lanesHost,
|
373
|
+
viewedLane: viewedLane,
|
374
|
+
currentLane: currentLane
|
375
|
+
});
|
376
|
+
});
|
303
377
|
return lanesUi;
|
304
378
|
}
|
305
379
|
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["LanesUI","constructor","componentUi","routeSlot","navSlot","menuWidgetSlot","overviewSlot","workspace","scope","children","hostAspect","lanesHost","host","WorkspaceAspect","id","ScopeAspect","registerHostAspectRoutes","registerRoutes","getLaneRoutes","registerMenuRoutes","getMenuRoutes","path","LanesModel","lanesPrefix","lanePath","getLaneGallery","getComponentUI","getLanesOverviewMenu","getMenu","registerMenuWidget","menuItems","register","registerLanesRoutes","registerNavigation","props","href","exact","order","hide","lanesContext","useLanesContext","viewedLane","readmeComponent","registerRoute","route","registerOverviewLine","lines","routes","provider","uiUi","workspaceUi","scopeUi","sidebarUi","_","harmony","config","String","get","lanesUi","registerRenderHooks","reactContext","renderContext","drawer","LanesDrawer","showScope","registerDrawer","UIAspect","ComponentAspect","SidebarAspect","UIRuntime","Slot","withType","LanesAspect","addRuntime"],"sources":["lanes.ui.runtime.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport { Route, RouteProps } from 'react-router-dom';\nimport { Slot, Harmony } from '@teambit/harmony';\nimport { UIRuntime, UiUI, UIAspect } from '@teambit/ui';\nimport { LanesAspect } from '@teambit/lanes';\nimport { NavigationSlot, RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport {\n LanesDrawer,\n LanesHost,\n LaneGallery,\n LanesOrderedNavigationSlot,\n LanesModel,\n LanesOverviewMenu,\n ViewedLaneFromUrl,\n LaneOverviewLineSlot,\n LaneOverviewLine,\n UseLaneMenu,\n useLanesContext,\n LanesNavPlugin,\n LaneReadmeOverview,\n} from '@teambit/lanes.ui.lanes';\nimport { NotFoundPage } from '@teambit/design.ui.pages.not-found';\nimport ScopeAspect, { ScopeUI } from '@teambit/scope';\nimport WorkspaceAspect, { WorkspaceUI } from '@teambit/workspace';\nimport ComponentAspect, { ComponentUI } from '@teambit/component';\nimport SidebarAspect, { SidebarUI } from '@teambit/sidebar';\nimport { MenuWidget, MenuWidgetSlot } from '@teambit/ui-foundation.ui.menu';\n\nexport class LanesUI {\n static dependencies = [UIAspect, ComponentAspect, WorkspaceAspect, ScopeAspect, SidebarAspect];\n static runtime = UIRuntime;\n static slots = [\n Slot.withType<RouteProps>(),\n Slot.withType<LaneOverviewLineSlot>(),\n Slot.withType<NavigationSlot>(),\n Slot.withType<MenuWidgetSlot>(),\n ];\n\n constructor(\n private componentUi: ComponentUI,\n private routeSlot: RouteSlot,\n private navSlot: LanesOrderedNavigationSlot,\n private menuWidgetSlot: MenuWidgetSlot,\n /**\n * overview line slot to add new lines beneath the overview section\n */\n private overviewSlot: LaneOverviewLineSlot,\n private workspace?: WorkspaceUI,\n private scope?: ScopeUI\n ) {\n this.hostAspect = workspace || scope;\n this.lanesHost = workspace ? 'workspace' : 'scope';\n this.host = workspace ? WorkspaceAspect.id : ScopeAspect.id;\n }\n\n private readonly lanesHost: LanesHost;\n private readonly hostAspect?: WorkspaceUI | ScopeUI;\n private readonly host: string;\n\n private registerHostAspectRoutes() {\n if (!this.hostAspect) return;\n this.hostAspect.registerRoutes(this.getLaneRoutes());\n this.hostAspect.registerMenuRoutes(this.getMenuRoutes());\n }\n\n getLaneRoutes() {\n return [\n {\n path: LanesModel.lanesPrefix,\n children: (\n <>\n <Route path={LanesModel.lanePath}>\n <Route\n index\n element={\n <LaneReadmeOverview host={this.host} overviewSlot={this.overviewSlot} routeSlot={this.routeSlot} />\n }\n />\n <Route\n path=\"~gallery\"\n element={this.getLaneGallery()}\n />\n <Route path=\"~component/*\" element={this.componentUi.getComponentUI(this.host)} />\n <Route path=\"*\" element={<NotFoundPage />} />\n </Route>\n <Route path=\"*\" element={<NotFoundPage />} />\n </>\n ),\n },\n ];\n }\n\n getLaneGallery() {\n return <LaneGallery routeSlot={this.routeSlot} overviewSlot={this.overviewSlot} host={this.lanesHost} />;\n }\n\n getMenuRoutes() {\n return [\n {\n path: LanesModel.lanesPrefix,\n children: (\n <Route path={`${LanesModel.lanePath}/*`}>\n <Route\n path=\"*\"\n element={this.getLanesOverviewMenu()}\n />\n <Route path=\"~component/*\" element={this.componentUi.getMenu(this.host)} />\n </Route>\n ),\n },\n ];\n }\n\n getLanesOverviewMenu() {\n return <LanesOverviewMenu navigationSlot={this.navSlot} widgetSlot={this.menuWidgetSlot} />;\n }\n\n registerMenuWidget(...menuItems: MenuWidget[]) {\n this.menuWidgetSlot.register(menuItems);\n }\n\n private registerLanesRoutes() {\n this.registerNavigation([\n {\n props: {\n href: '.',\n exact: true,\n children: 'README',\n },\n order: 1,\n hide: () => {\n const lanesContext = useLanesContext();\n return !lanesContext?.viewedLane?.readmeComponent;\n },\n },\n {\n props: {\n href: '~gallery',\n children: 'Gallery',\n exact: true,\n },\n order: 1,\n },\n ]);\n }\n\n private registerRoutes() {\n this.registerHostAspectRoutes();\n this.registerLanesRoutes();\n }\n\n private renderContext = ({ children }: { children: ReactNode }) => {\n return <ViewedLaneFromUrl>{children}</ViewedLaneFromUrl>;\n };\n\n registerRoute(route: RouteProps) {\n this.routeSlot.register(route);\n return this;\n }\n\n /**\n * register a new line beneath the lane overview section.\n */\n registerOverviewLine(...lines: LaneOverviewLine[]) {\n this.overviewSlot.register(lines);\n return this;\n }\n\n registerNavigation(routes: LanesNavPlugin[]) {\n this.navSlot.register(routes);\n }\n\n static async provider(\n [uiUi, componentUi, workspaceUi, scopeUi, sidebarUi]: [UiUI, ComponentUI, WorkspaceUI, ScopeUI, SidebarUI],\n _,\n [routeSlot, overviewSlot, navSlot, menuWidgetSlot]: [\n RouteSlot,\n LaneOverviewLineSlot,\n LanesOrderedNavigationSlot,\n MenuWidgetSlot\n ],\n harmony: Harmony\n ) {\n const { config } = harmony;\n const host = String(config.get('teambit.harmony/bit'));\n let workspace: WorkspaceUI | undefined;\n let scope: ScopeUI | undefined;\n if (host === WorkspaceAspect.id) {\n workspace = workspaceUi;\n }\n if (host === ScopeAspect.id) {\n scope = scopeUi;\n }\n const lanesUi = new LanesUI(componentUi, routeSlot, navSlot, overviewSlot, menuWidgetSlot, workspace, scope);\n if (uiUi) uiUi.registerRenderHooks({ reactContext: lanesUi.renderContext });\n const drawer = new LanesDrawer({ showScope: lanesUi.lanesHost === 'workspace' });\n sidebarUi.registerDrawer(drawer);\n lanesUi.registerRoutes();\n lanesUi.registerMenuWidget(() => <UseLaneMenu host={lanesUi.lanesHost} />);\n return lanesUi;\n }\n}\n\nexport default LanesUI;\n\nLanesAspect.addRuntime(LanesUI);\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["LanesUI","constructor","componentUi","routeSlot","navSlot","menuWidgetSlot","overviewSlot","workspace","scope","children","hostAspect","lanesHost","host","WorkspaceAspect","id","ScopeAspect","registerHostAspectRoutes","registerRoutes","getLaneRoutes","registerMenuRoutes","getMenuRoutes","path","LanesModel","lanesPrefix","lanePath","getLaneGallery","getComponentUI","getLanesOverviewMenu","getMenu","registerMenuWidget","menuItems","register","registerLanesRoutes","registerNavigation","props","href","exact","order","hide","lanesModel","useLanes","viewedLane","readmeComponent","registerRoute","route","registerOverviewLine","lines","routes","provider","uiUi","workspaceUi","scopeUi","sidebarUi","_","harmony","config","String","get","lanesUi","registerRenderHooks","reactContext","renderContext","drawer","LanesDrawer","showScope","registerDrawer","currentLane","UIAspect","ComponentAspect","SidebarAspect","UIRuntime","Slot","withType","LanesAspect","addRuntime"],"sources":["lanes.ui.runtime.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport { Route, RouteProps } from 'react-router-dom';\nimport { Slot, Harmony } from '@teambit/harmony';\nimport { UIRuntime, UiUI, UIAspect } from '@teambit/ui';\nimport { LanesAspect } from '@teambit/lanes';\nimport { NavigationSlot, RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport { NotFoundPage } from '@teambit/design.ui.pages.not-found';\nimport ScopeAspect, { ScopeUI } from '@teambit/scope';\nimport WorkspaceAspect, { WorkspaceUI } from '@teambit/workspace';\nimport ComponentAspect, { ComponentUI } from '@teambit/component';\nimport SidebarAspect, { SidebarUI } from '@teambit/sidebar';\nimport { MenuWidget, MenuWidgetSlot } from '@teambit/ui-foundation.ui.menu';\nimport { LaneGallery, LaneOverviewLine, LaneOverviewLineSlot } from '@teambit/lanes.ui.gallery';\nimport { LanesNavPlugin, LanesOrderedNavigationSlot, LanesOverviewMenu, UseLaneMenu } from '@teambit/lanes.ui.menus';\nimport { LanesHost, LanesModel } from '@teambit/lanes.ui.models';\nimport { LaneReadmeOverview } from '@teambit/lanes.ui.readme';\nimport { useLanes } from '@teambit/lanes.hooks.use-lanes';\nimport { ViewedLaneFromUrl } from '@teambit/lanes.ui.viewed-lane';\nimport { LanesDrawer } from '@teambit/lanes.ui.drawer';\n\nexport class LanesUI {\n static dependencies = [UIAspect, ComponentAspect, WorkspaceAspect, ScopeAspect, SidebarAspect];\n static runtime = UIRuntime;\n static slots = [\n Slot.withType<RouteProps>(),\n Slot.withType<LaneOverviewLineSlot>(),\n Slot.withType<NavigationSlot>(),\n Slot.withType<MenuWidgetSlot>(),\n ];\n\n constructor(\n private componentUi: ComponentUI,\n private routeSlot: RouteSlot,\n private navSlot: LanesOrderedNavigationSlot,\n private menuWidgetSlot: MenuWidgetSlot,\n /**\n * overview line slot to add new lines beneath the overview section\n */\n private overviewSlot: LaneOverviewLineSlot,\n private workspace?: WorkspaceUI,\n private scope?: ScopeUI\n ) {\n this.hostAspect = workspace || scope;\n this.lanesHost = workspace ? 'workspace' : 'scope';\n this.host = workspace ? WorkspaceAspect.id : ScopeAspect.id;\n }\n\n private readonly lanesHost: LanesHost;\n private readonly hostAspect?: WorkspaceUI | ScopeUI;\n private readonly host: string;\n\n private registerHostAspectRoutes() {\n if (!this.hostAspect) return;\n this.hostAspect.registerRoutes(this.getLaneRoutes());\n this.hostAspect.registerMenuRoutes(this.getMenuRoutes());\n }\n\n getLaneRoutes() {\n return [\n {\n path: LanesModel.lanesPrefix,\n children: (\n <>\n <Route path={LanesModel.lanePath}>\n <Route\n index\n element={\n <LaneReadmeOverview host={this.host} overviewSlot={this.overviewSlot} routeSlot={this.routeSlot} />\n }\n />\n <Route path=\"~gallery\" element={this.getLaneGallery()} />\n <Route path=\"~component/*\" element={this.componentUi.getComponentUI(this.host)} />\n <Route path=\"*\" element={<NotFoundPage />} />\n </Route>\n <Route path=\"*\" element={<NotFoundPage />} />\n </>\n ),\n },\n ];\n }\n\n getLaneGallery() {\n return <LaneGallery routeSlot={this.routeSlot} overviewSlot={this.overviewSlot} host={this.lanesHost} />;\n }\n\n getMenuRoutes() {\n return [\n {\n path: LanesModel.lanesPrefix,\n children: (\n <Route path={`${LanesModel.lanePath}/*`}>\n <Route path=\"*\" element={this.getLanesOverviewMenu()} />\n <Route path=\"~component/*\" element={this.componentUi.getMenu(this.host)} />\n </Route>\n ),\n },\n ];\n }\n\n getLanesOverviewMenu() {\n return <LanesOverviewMenu navigationSlot={this.navSlot} widgetSlot={this.menuWidgetSlot} />;\n }\n\n registerMenuWidget(...menuItems: MenuWidget[]) {\n this.menuWidgetSlot.register(menuItems);\n }\n\n private registerLanesRoutes() {\n this.registerNavigation([\n {\n props: {\n href: '.',\n exact: true,\n children: 'README',\n },\n order: 1,\n hide: () => {\n const { lanesModel } = useLanes();\n return !lanesModel?.viewedLane?.readmeComponent;\n },\n },\n {\n props: {\n href: '~gallery',\n children: 'Gallery',\n exact: true,\n },\n order: 1,\n },\n ]);\n }\n\n private registerRoutes() {\n this.registerHostAspectRoutes();\n this.registerLanesRoutes();\n }\n\n private renderContext = ({ children }: { children: ReactNode }) => {\n return <ViewedLaneFromUrl>{children}</ViewedLaneFromUrl>;\n };\n\n registerRoute(route: RouteProps) {\n this.routeSlot.register(route);\n return this;\n }\n\n /**\n * register a new line beneath the lane overview section.\n */\n registerOverviewLine(...lines: LaneOverviewLine[]) {\n this.overviewSlot.register(lines);\n return this;\n }\n\n registerNavigation(routes: LanesNavPlugin[]) {\n this.navSlot.register(routes);\n }\n\n static async provider(\n [uiUi, componentUi, workspaceUi, scopeUi, sidebarUi]: [UiUI, ComponentUI, WorkspaceUI, ScopeUI, SidebarUI],\n _,\n [routeSlot, overviewSlot, navSlot, menuWidgetSlot]: [\n RouteSlot,\n LaneOverviewLineSlot,\n LanesOrderedNavigationSlot,\n MenuWidgetSlot\n ],\n harmony: Harmony\n ) {\n const { config } = harmony;\n const host = String(config.get('teambit.harmony/bit'));\n let workspace: WorkspaceUI | undefined;\n let scope: ScopeUI | undefined;\n if (host === WorkspaceAspect.id) {\n workspace = workspaceUi;\n }\n if (host === ScopeAspect.id) {\n scope = scopeUi;\n }\n const lanesUi = new LanesUI(componentUi, routeSlot, navSlot, overviewSlot, menuWidgetSlot, workspace, scope);\n if (uiUi) uiUi.registerRenderHooks({ reactContext: lanesUi.renderContext });\n const drawer = new LanesDrawer({ showScope: lanesUi.lanesHost === 'workspace' });\n sidebarUi.registerDrawer(drawer);\n lanesUi.registerRoutes();\n lanesUi.registerMenuWidget(() => {\n const { lanesModel } = useLanes();\n if (!lanesModel?.viewedLane) return null;\n const { viewedLane, currentLane } = lanesModel;\n return <UseLaneMenu host={lanesUi.lanesHost} viewedLane={viewedLane} currentLane={currentLane} />;\n });\n\n return lanesUi;\n }\n}\n\nexport default LanesUI;\n\nLanesAspect.addRuntime(LanesUI);\n"],"mappings":"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"}
|
package/lanes.ui.runtime.tsx
CHANGED
@@ -4,27 +4,19 @@ import { Slot, Harmony } from '@teambit/harmony';
|
|
4
4
|
import { UIRuntime, UiUI, UIAspect } from '@teambit/ui';
|
5
5
|
import { LanesAspect } from '@teambit/lanes';
|
6
6
|
import { NavigationSlot, RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';
|
7
|
-
import {
|
8
|
-
LanesDrawer,
|
9
|
-
LanesHost,
|
10
|
-
LaneGallery,
|
11
|
-
LanesOrderedNavigationSlot,
|
12
|
-
LanesModel,
|
13
|
-
LanesOverviewMenu,
|
14
|
-
ViewedLaneFromUrl,
|
15
|
-
LaneOverviewLineSlot,
|
16
|
-
LaneOverviewLine,
|
17
|
-
UseLaneMenu,
|
18
|
-
useLanesContext,
|
19
|
-
LanesNavPlugin,
|
20
|
-
LaneReadmeOverview,
|
21
|
-
} from '@teambit/lanes.ui.lanes';
|
22
7
|
import { NotFoundPage } from '@teambit/design.ui.pages.not-found';
|
23
8
|
import ScopeAspect, { ScopeUI } from '@teambit/scope';
|
24
9
|
import WorkspaceAspect, { WorkspaceUI } from '@teambit/workspace';
|
25
10
|
import ComponentAspect, { ComponentUI } from '@teambit/component';
|
26
11
|
import SidebarAspect, { SidebarUI } from '@teambit/sidebar';
|
27
12
|
import { MenuWidget, MenuWidgetSlot } from '@teambit/ui-foundation.ui.menu';
|
13
|
+
import { LaneGallery, LaneOverviewLine, LaneOverviewLineSlot } from '@teambit/lanes.ui.gallery';
|
14
|
+
import { LanesNavPlugin, LanesOrderedNavigationSlot, LanesOverviewMenu, UseLaneMenu } from '@teambit/lanes.ui.menus';
|
15
|
+
import { LanesHost, LanesModel } from '@teambit/lanes.ui.models';
|
16
|
+
import { LaneReadmeOverview } from '@teambit/lanes.ui.readme';
|
17
|
+
import { useLanes } from '@teambit/lanes.hooks.use-lanes';
|
18
|
+
import { ViewedLaneFromUrl } from '@teambit/lanes.ui.viewed-lane';
|
19
|
+
import { LanesDrawer } from '@teambit/lanes.ui.drawer';
|
28
20
|
|
29
21
|
export class LanesUI {
|
30
22
|
static dependencies = [UIAspect, ComponentAspect, WorkspaceAspect, ScopeAspect, SidebarAspect];
|
@@ -76,10 +68,7 @@ export class LanesUI {
|
|
76
68
|
<LaneReadmeOverview host={this.host} overviewSlot={this.overviewSlot} routeSlot={this.routeSlot} />
|
77
69
|
}
|
78
70
|
/>
|
79
|
-
<Route
|
80
|
-
path="~gallery"
|
81
|
-
element={this.getLaneGallery()}
|
82
|
-
/>
|
71
|
+
<Route path="~gallery" element={this.getLaneGallery()} />
|
83
72
|
<Route path="~component/*" element={this.componentUi.getComponentUI(this.host)} />
|
84
73
|
<Route path="*" element={<NotFoundPage />} />
|
85
74
|
</Route>
|
@@ -100,10 +89,7 @@ export class LanesUI {
|
|
100
89
|
path: LanesModel.lanesPrefix,
|
101
90
|
children: (
|
102
91
|
<Route path={`${LanesModel.lanePath}/*`}>
|
103
|
-
<Route
|
104
|
-
path="*"
|
105
|
-
element={this.getLanesOverviewMenu()}
|
106
|
-
/>
|
92
|
+
<Route path="*" element={this.getLanesOverviewMenu()} />
|
107
93
|
<Route path="~component/*" element={this.componentUi.getMenu(this.host)} />
|
108
94
|
</Route>
|
109
95
|
),
|
@@ -129,8 +115,8 @@ export class LanesUI {
|
|
129
115
|
},
|
130
116
|
order: 1,
|
131
117
|
hide: () => {
|
132
|
-
const
|
133
|
-
return !
|
118
|
+
const { lanesModel } = useLanes();
|
119
|
+
return !lanesModel?.viewedLane?.readmeComponent;
|
134
120
|
},
|
135
121
|
},
|
136
122
|
{
|
@@ -196,7 +182,13 @@ export class LanesUI {
|
|
196
182
|
const drawer = new LanesDrawer({ showScope: lanesUi.lanesHost === 'workspace' });
|
197
183
|
sidebarUi.registerDrawer(drawer);
|
198
184
|
lanesUi.registerRoutes();
|
199
|
-
lanesUi.registerMenuWidget(() =>
|
185
|
+
lanesUi.registerMenuWidget(() => {
|
186
|
+
const { lanesModel } = useLanes();
|
187
|
+
if (!lanesModel?.viewedLane) return null;
|
188
|
+
const { viewedLane, currentLane } = lanesModel;
|
189
|
+
return <UseLaneMenu host={lanesUi.lanesHost} viewedLane={viewedLane} currentLane={currentLane} />;
|
190
|
+
});
|
191
|
+
|
200
192
|
return lanesUi;
|
201
193
|
}
|
202
194
|
}
|
Binary file
|
package/package.json
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"name": "@teambit/lanes",
|
3
|
-
"version": "0.0.
|
3
|
+
"version": "0.0.394",
|
4
4
|
"homepage": "https://bit.dev/teambit/lanes/lanes",
|
5
5
|
"main": "dist/index.js",
|
6
6
|
"componentId": {
|
7
7
|
"scope": "teambit.lanes",
|
8
8
|
"name": "lanes",
|
9
|
-
"version": "0.0.
|
9
|
+
"version": "0.0.394"
|
10
10
|
},
|
11
11
|
"dependencies": {
|
12
12
|
"chalk": "2.4.2",
|
@@ -18,23 +18,29 @@
|
|
18
18
|
"core-js": "^3.0.0",
|
19
19
|
"@teambit/harmony": "0.3.3",
|
20
20
|
"@teambit/bit-error": "0.0.394",
|
21
|
-
"@teambit/lane-id": "0.0.
|
22
|
-
"@teambit/cli": "0.0.
|
23
|
-
"@teambit/merging": "0.0.
|
24
|
-
"@teambit/scope": "0.0.
|
25
|
-
"@teambit/workspace": "0.0.
|
26
|
-
"@teambit/graphql": "0.0.
|
27
|
-
"@teambit/community": "0.0.
|
28
|
-
"@teambit/component": "0.0.
|
29
|
-
"@teambit/lanes.modules.diff": "0.0.
|
21
|
+
"@teambit/lane-id": "0.0.69",
|
22
|
+
"@teambit/cli": "0.0.550",
|
23
|
+
"@teambit/merging": "0.0.137",
|
24
|
+
"@teambit/scope": "0.0.822",
|
25
|
+
"@teambit/workspace": "0.0.822",
|
26
|
+
"@teambit/graphql": "0.0.822",
|
27
|
+
"@teambit/community": "0.0.98",
|
28
|
+
"@teambit/component": "0.0.822",
|
29
|
+
"@teambit/lanes.modules.diff": "0.0.179",
|
30
30
|
"@teambit/legacy-bit-id": "0.0.402",
|
31
|
-
"@teambit/logger": "0.0.
|
32
|
-
"@teambit/design.ui.pages.not-found": "0.0.
|
33
|
-
"@teambit/lanes.
|
34
|
-
"@teambit/
|
31
|
+
"@teambit/logger": "0.0.643",
|
32
|
+
"@teambit/design.ui.pages.not-found": "0.0.357",
|
33
|
+
"@teambit/lanes.hooks.use-lanes": "0.0.3",
|
34
|
+
"@teambit/lanes.ui.drawer": "0.0.3",
|
35
|
+
"@teambit/lanes.ui.gallery": "0.0.3",
|
36
|
+
"@teambit/lanes.ui.menus": "0.0.3",
|
37
|
+
"@teambit/lanes.ui.models": "0.0.3",
|
38
|
+
"@teambit/lanes.ui.readme": "0.0.3",
|
39
|
+
"@teambit/lanes.ui.viewed-lane": "0.0.3",
|
40
|
+
"@teambit/sidebar": "0.0.822",
|
35
41
|
"@teambit/ui-foundation.ui.menu": "0.0.487",
|
36
42
|
"@teambit/ui-foundation.ui.react-router.slot-router": "0.0.490",
|
37
|
-
"@teambit/ui": "0.0.
|
43
|
+
"@teambit/ui": "0.0.822",
|
38
44
|
"@teambit/component-id": "0.0.405"
|
39
45
|
},
|
40
46
|
"devDependencies": {
|
@@ -51,7 +57,7 @@
|
|
51
57
|
},
|
52
58
|
"peerDependencies": {
|
53
59
|
"react-router-dom": "^6.0.0",
|
54
|
-
"@teambit/legacy": "1.0.
|
60
|
+
"@teambit/legacy": "1.0.333",
|
55
61
|
"react-dom": "^16.8.0 || ^17.0.0",
|
56
62
|
"react": "^16.8.0 || ^17.0.0"
|
57
63
|
},
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.lanes_lanes@0.0.
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.lanes_lanes@0.0.
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.lanes_lanes@0.0.394/dist/lanes.composition.js';
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.lanes_lanes@0.0.394/dist/lanes.docs.mdx';
|
3
3
|
|
4
4
|
export const compositions = [compositions_0];
|
5
5
|
export const overview = [overview_0];
|
Binary file
|