@teambit/lanes 0.0.448 → 0.0.450
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 +12 -6
- package/dist/lanes.ui.runtime.js.map +1 -1
- package/lanes.ui.runtime.tsx +12 -6
- package/package-tar/teambit-lanes-0.0.450.tgz +0 -0
- package/package.json +23 -23
- package/{preview-1665459720186.js → preview-1665718844698.js} +2 -2
- package/package-tar/teambit-lanes-0.0.448.tgz +0 -0
@@ -46,8 +46,9 @@ export declare class LanesUI {
|
|
46
46
|
getLaneUrl: (laneId: LaneId, relative?: boolean) => string;
|
47
47
|
getLaneComponentUrl: (componentId: ComponentID, laneId: LaneId) => string;
|
48
48
|
}): void;
|
49
|
+
getLaneComponentIdFromUrl: () => ComponentID | undefined;
|
49
50
|
useComponentId: () => string | undefined;
|
50
|
-
useComponentFilters: (
|
51
|
+
useComponentFilters: () => {
|
51
52
|
log: {
|
52
53
|
logHead: string | undefined;
|
53
54
|
} | undefined;
|
package/dist/lanes.ui.runtime.js
CHANGED
@@ -211,19 +211,25 @@ class LanesUI {
|
|
211
211
|
(0, _defineProperty2().default)(this, "lanesHost", void 0);
|
212
212
|
(0, _defineProperty2().default)(this, "hostAspect", void 0);
|
213
213
|
(0, _defineProperty2().default)(this, "host", void 0);
|
214
|
-
(0, _defineProperty2().default)(this, "
|
214
|
+
(0, _defineProperty2().default)(this, "getLaneComponentIdFromUrl", () => {
|
215
215
|
const idFromLocation = (0, _component().useIdFromLocation)();
|
216
216
|
const {
|
217
217
|
lanesModel
|
218
218
|
} = (0, _lanesHooks().useLanes)();
|
219
219
|
const laneFromUrl = (0, _lanesHooks2().useViewedLaneFromUrl)();
|
220
|
-
const laneComponentId = idFromLocation && !(laneFromUrl !== null && laneFromUrl !== void 0 && laneFromUrl.isDefault()) ? lanesModel === null || lanesModel === void 0 ? void 0 : lanesModel.
|
221
|
-
return laneComponentId
|
220
|
+
const laneComponentId = idFromLocation && !(laneFromUrl !== null && laneFromUrl !== void 0 && laneFromUrl.isDefault()) ? lanesModel === null || lanesModel === void 0 ? void 0 : lanesModel.resolveComponentByFullName(idFromLocation, laneFromUrl) : undefined;
|
221
|
+
return laneComponentId;
|
222
|
+
});
|
223
|
+
(0, _defineProperty2().default)(this, "useComponentId", () => {
|
224
|
+
var _this$getLaneComponen;
|
225
|
+
|
226
|
+
return (_this$getLaneComponen = this.getLaneComponentIdFromUrl()) === null || _this$getLaneComponen === void 0 ? void 0 : _this$getLaneComponen.toString();
|
222
227
|
});
|
223
|
-
(0, _defineProperty2().default)(this, "useComponentFilters",
|
228
|
+
(0, _defineProperty2().default)(this, "useComponentFilters", () => {
|
229
|
+
const laneComponentId = this.getLaneComponentIdFromUrl();
|
224
230
|
return {
|
225
|
-
log:
|
226
|
-
logHead:
|
231
|
+
log: laneComponentId && {
|
232
|
+
logHead: laneComponentId.version
|
227
233
|
}
|
228
234
|
};
|
229
235
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["LanesUI","constructor","componentUi","routeSlot","navSlot","menuWidgetSlot","overviewSlot","workspace","scope","idFromLocation","useIdFromLocation","lanesModel","useLanes","laneFromUrl","useViewedLaneFromUrl","laneComponentId","isDefault","resolveComponent","undefined","toString","_componentId","log","logHead","version","children","hostAspect","lanesHost","host","WorkspaceAspect","id","ScopeAspect","registerHostAspectRoutes","registerRoutes","getLaneRoutes","registerMenuRoutes","getMenuRoutes","path","LanesModel","lanesPrefix","lanePath","getLaneOverview","getLaneComponent","overrideComputeLaneUrl","fn","prefix","getLaneComponentUrl","getLaneIdFromPathname","getLaneUrl","getComponentUI","componentId","useComponentId","useComponentFilters","getLaneComponentMenu","getMenu","getLanesOverviewMenu","registerMenuWidget","menuItems","register","registerLanesRoutes","registerNavigation","props","href","exact","order","getLanesSwitcher","LanesSwitcher","getLanesProvider","LanesProvider","getUseLanes","registerLanesDropdown","registerSidebarLink","component","Gallery","weight","registerRoute","route","registerOverviewLine","lines","routes","provider","uiUi","workspaceUi","scopeUi","_","harmony","config","String","get","lanesUi","registerRenderHooks","reactContext","renderContext","viewedLane","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, { ComponentID, ComponentUI, useIdFromLocation } from '@teambit/component';\nimport SidebarAspect, { SidebarUI } from '@teambit/sidebar';\nimport { MenuWidget, MenuWidgetSlot } from '@teambit/ui-foundation.ui.menu';\nimport { LaneOverview, LaneOverviewLine, LaneOverviewLineSlot } from '@teambit/lanes.ui.lane-overview';\nimport {\n LanesNavPlugin,\n LanesOrderedNavigationSlot,\n LanesOverviewMenu,\n} from '@teambit/lanes.ui.menus.lanes-overview-menu';\nimport { UseLaneMenu } from '@teambit/lanes.ui.menus.use-lanes-menu';\nimport { LanesHost, LanesModel } from '@teambit/lanes.ui.models.lanes-model';\nimport { LanesProvider, useLanes } from '@teambit/lanes.hooks.use-lanes';\nimport { LaneSwitcher } from '@teambit/lanes.ui.navigation.lane-switcher';\nimport { LaneId } from '@teambit/lane-id';\nimport { useViewedLaneFromUrl } from '@teambit/lanes.hooks.use-viewed-lane-from-url';\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 index element={this.getLaneOverview()} />\n <Route path=\"~component/*\" element={this.getLaneComponent()} />\n <Route path=\"*\" element={<NotFoundPage />} />\n </Route>\n <Route path=\"*\" element={<NotFoundPage />} />\n </>\n ),\n },\n ];\n }\n\n overrideComputeLaneUrl(\n fn: () => {\n prefix: string;\n path: string;\n getLaneIdFromPathname: (pathname: string) => LaneId | undefined;\n getLaneUrl: (laneId: LaneId, relative?: boolean) => string;\n getLaneComponentUrl: (componentId: ComponentID, laneId: LaneId) => string;\n }\n ) {\n const { prefix, path, getLaneComponentUrl, getLaneIdFromPathname, getLaneUrl } = fn();\n LanesModel.lanesPrefix = prefix;\n LanesModel.lanePath = path;\n LanesModel.getLaneComponentUrl = getLaneComponentUrl;\n LanesModel.getLaneUrl = getLaneUrl;\n LanesModel.getLaneIdFromPathname = getLaneIdFromPathname;\n }\n\n // getLaneReadme() {\n // return <LaneReadmeOverview host={this.host} overviewSlot={this.overviewSlot} routeSlot={this.routeSlot} />;\n // }\n\n useComponentId = () => {\n const idFromLocation = useIdFromLocation();\n const { lanesModel } = useLanes();\n const laneFromUrl = useViewedLaneFromUrl();\n const laneComponentId =\n idFromLocation && !laneFromUrl?.isDefault()\n ? lanesModel?.resolveComponent(idFromLocation, laneFromUrl)\n : undefined;\n return laneComponentId?.toString();\n };\n\n useComponentFilters = (_componentId?: ComponentID) => {\n return {\n log: _componentId && {\n logHead: _componentId.version,\n },\n };\n };\n\n getLaneComponent() {\n return this.componentUi.getComponentUI(this.host, {\n componentId: this.useComponentId,\n useComponentFilters: this.useComponentFilters,\n });\n }\n\n getLaneComponentMenu() {\n return this.componentUi.getMenu(this.host, {\n componentId: this.useComponentId,\n useComponentFilters: this.useComponentFilters,\n });\n }\n\n getLaneOverview() {\n return <LaneOverview 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.getLaneComponentMenu()} />\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: '.',\n exact: true,\n children: 'Overview',\n },\n order: 1,\n },\n ]);\n }\n\n private registerRoutes() {\n this.registerHostAspectRoutes();\n this.registerLanesRoutes();\n }\n\n getLanesSwitcher() {\n const LanesSwitcher = <LaneSwitcher groupByScope={this.lanesHost === 'workspace'} />;\n return LanesSwitcher;\n }\n\n getLanesProvider() {\n return LanesProvider;\n }\n\n getUseLanes() {\n return useLanes;\n }\n\n private registerLanesDropdown() {\n const LanesSwitcher = this.getLanesSwitcher();\n\n this.hostAspect?.registerSidebarLink({\n component: function Gallery() {\n return LanesSwitcher;\n },\n weight: 1000,\n });\n }\n\n private renderContext = ({ children }: { children: ReactNode }) => {\n return <LanesProvider>{children}</LanesProvider>;\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]: [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 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} viewedLaneId={viewedLane.id} currentLaneId={currentLane?.id} />;\n });\n lanesUi.registerLanesDropdown();\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","idFromLocation","useIdFromLocation","lanesModel","useLanes","laneFromUrl","useViewedLaneFromUrl","laneComponentId","isDefault","resolveComponentByFullName","undefined","getLaneComponentIdFromUrl","toString","log","logHead","version","children","hostAspect","lanesHost","host","WorkspaceAspect","id","ScopeAspect","registerHostAspectRoutes","registerRoutes","getLaneRoutes","registerMenuRoutes","getMenuRoutes","path","LanesModel","lanesPrefix","lanePath","getLaneOverview","getLaneComponent","overrideComputeLaneUrl","fn","prefix","getLaneComponentUrl","getLaneIdFromPathname","getLaneUrl","getComponentUI","componentId","useComponentId","useComponentFilters","getLaneComponentMenu","getMenu","getLanesOverviewMenu","registerMenuWidget","menuItems","register","registerLanesRoutes","registerNavigation","props","href","exact","order","getLanesSwitcher","LanesSwitcher","getLanesProvider","LanesProvider","getUseLanes","registerLanesDropdown","registerSidebarLink","component","Gallery","weight","registerRoute","route","registerOverviewLine","lines","routes","provider","uiUi","workspaceUi","scopeUi","_","harmony","config","String","get","lanesUi","registerRenderHooks","reactContext","renderContext","viewedLane","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, { ComponentID, ComponentUI, useIdFromLocation } from '@teambit/component';\nimport SidebarAspect, { SidebarUI } from '@teambit/sidebar';\nimport { MenuWidget, MenuWidgetSlot } from '@teambit/ui-foundation.ui.menu';\nimport { LaneOverview, LaneOverviewLine, LaneOverviewLineSlot } from '@teambit/lanes.ui.lane-overview';\nimport {\n LanesNavPlugin,\n LanesOrderedNavigationSlot,\n LanesOverviewMenu,\n} from '@teambit/lanes.ui.menus.lanes-overview-menu';\nimport { UseLaneMenu } from '@teambit/lanes.ui.menus.use-lanes-menu';\nimport { LanesHost, LanesModel } from '@teambit/lanes.ui.models.lanes-model';\nimport { LanesProvider, useLanes } from '@teambit/lanes.hooks.use-lanes';\nimport { LaneSwitcher } from '@teambit/lanes.ui.navigation.lane-switcher';\nimport { LaneId } from '@teambit/lane-id';\nimport { useViewedLaneFromUrl } from '@teambit/lanes.hooks.use-viewed-lane-from-url';\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 index element={this.getLaneOverview()} />\n <Route path=\"~component/*\" element={this.getLaneComponent()} />\n <Route path=\"*\" element={<NotFoundPage />} />\n </Route>\n <Route path=\"*\" element={<NotFoundPage />} />\n </>\n ),\n },\n ];\n }\n\n overrideComputeLaneUrl(\n fn: () => {\n prefix: string;\n path: string;\n getLaneIdFromPathname: (pathname: string) => LaneId | undefined;\n getLaneUrl: (laneId: LaneId, relative?: boolean) => string;\n getLaneComponentUrl: (componentId: ComponentID, laneId: LaneId) => string;\n }\n ) {\n const { prefix, path, getLaneComponentUrl, getLaneIdFromPathname, getLaneUrl } = fn();\n LanesModel.lanesPrefix = prefix;\n LanesModel.lanePath = path;\n LanesModel.getLaneComponentUrl = getLaneComponentUrl;\n LanesModel.getLaneUrl = getLaneUrl;\n LanesModel.getLaneIdFromPathname = getLaneIdFromPathname;\n }\n\n // getLaneReadme() {\n // return <LaneReadmeOverview host={this.host} overviewSlot={this.overviewSlot} routeSlot={this.routeSlot} />;\n // }\n\n getLaneComponentIdFromUrl = () => {\n const idFromLocation = useIdFromLocation();\n const { lanesModel } = useLanes();\n const laneFromUrl = useViewedLaneFromUrl();\n const laneComponentId =\n idFromLocation && !laneFromUrl?.isDefault()\n ? lanesModel?.resolveComponentByFullName(idFromLocation, laneFromUrl)\n : undefined;\n return laneComponentId;\n };\n\n useComponentId = () => {\n return this.getLaneComponentIdFromUrl()?.toString();\n };\n\n useComponentFilters = () => {\n const laneComponentId = this.getLaneComponentIdFromUrl();\n\n return {\n log: laneComponentId && {\n logHead: laneComponentId.version,\n },\n };\n };\n\n getLaneComponent() {\n return this.componentUi.getComponentUI(this.host, {\n componentId: this.useComponentId,\n useComponentFilters: this.useComponentFilters,\n });\n }\n\n getLaneComponentMenu() {\n return this.componentUi.getMenu(this.host, {\n componentId: this.useComponentId,\n useComponentFilters: this.useComponentFilters,\n });\n }\n\n getLaneOverview() {\n return <LaneOverview 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.getLaneComponentMenu()} />\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: '.',\n exact: true,\n children: 'Overview',\n },\n order: 1,\n },\n ]);\n }\n\n private registerRoutes() {\n this.registerHostAspectRoutes();\n this.registerLanesRoutes();\n }\n\n getLanesSwitcher() {\n const LanesSwitcher = <LaneSwitcher groupByScope={this.lanesHost === 'workspace'} />;\n return LanesSwitcher;\n }\n\n getLanesProvider() {\n return LanesProvider;\n }\n\n getUseLanes() {\n return useLanes;\n }\n\n private registerLanesDropdown() {\n const LanesSwitcher = this.getLanesSwitcher();\n\n this.hostAspect?.registerSidebarLink({\n component: function Gallery() {\n return LanesSwitcher;\n },\n weight: 1000,\n });\n }\n\n private renderContext = ({ children }: { children: ReactNode }) => {\n return <LanesProvider>{children}</LanesProvider>;\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]: [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 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} viewedLaneId={viewedLane.id} currentLaneId={currentLane?.id} />;\n });\n lanesUi.registerLanesDropdown();\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
@@ -99,21 +99,27 @@ export class LanesUI {
|
|
99
99
|
// return <LaneReadmeOverview host={this.host} overviewSlot={this.overviewSlot} routeSlot={this.routeSlot} />;
|
100
100
|
// }
|
101
101
|
|
102
|
-
|
102
|
+
getLaneComponentIdFromUrl = () => {
|
103
103
|
const idFromLocation = useIdFromLocation();
|
104
104
|
const { lanesModel } = useLanes();
|
105
105
|
const laneFromUrl = useViewedLaneFromUrl();
|
106
106
|
const laneComponentId =
|
107
107
|
idFromLocation && !laneFromUrl?.isDefault()
|
108
|
-
? lanesModel?.
|
108
|
+
? lanesModel?.resolveComponentByFullName(idFromLocation, laneFromUrl)
|
109
109
|
: undefined;
|
110
|
-
return laneComponentId
|
110
|
+
return laneComponentId;
|
111
111
|
};
|
112
112
|
|
113
|
-
|
113
|
+
useComponentId = () => {
|
114
|
+
return this.getLaneComponentIdFromUrl()?.toString();
|
115
|
+
};
|
116
|
+
|
117
|
+
useComponentFilters = () => {
|
118
|
+
const laneComponentId = this.getLaneComponentIdFromUrl();
|
119
|
+
|
114
120
|
return {
|
115
|
-
log:
|
116
|
-
logHead:
|
121
|
+
log: laneComponentId && {
|
122
|
+
logHead: laneComponentId.version,
|
117
123
|
},
|
118
124
|
};
|
119
125
|
};
|
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.450",
|
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.450"
|
10
10
|
},
|
11
11
|
"dependencies": {
|
12
12
|
"chalk": "2.4.2",
|
@@ -18,31 +18,31 @@
|
|
18
18
|
"core-js": "^3.0.0",
|
19
19
|
"@teambit/harmony": "0.3.3",
|
20
20
|
"@teambit/bit-error": "0.0.400",
|
21
|
-
"@teambit/lane-id": "0.0.
|
22
|
-
"@teambit/lanes.ui.models.lanes-model": "0.0.
|
23
|
-
"@teambit/cli": "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/export": "0.0.
|
30
|
-
"@teambit/importer": "0.0.
|
31
|
-
"@teambit/lanes.modules.diff": "0.0.
|
21
|
+
"@teambit/lane-id": "0.0.106",
|
22
|
+
"@teambit/lanes.ui.models.lanes-model": "0.0.10",
|
23
|
+
"@teambit/cli": "0.0.588",
|
24
|
+
"@teambit/scope": "0.0.878",
|
25
|
+
"@teambit/workspace": "0.0.878",
|
26
|
+
"@teambit/graphql": "0.0.878",
|
27
|
+
"@teambit/community": "0.0.136",
|
28
|
+
"@teambit/component": "0.0.878",
|
29
|
+
"@teambit/export": "0.0.878",
|
30
|
+
"@teambit/importer": "0.0.307",
|
31
|
+
"@teambit/lanes.modules.diff": "0.0.222",
|
32
32
|
"@teambit/legacy-bit-id": "0.0.414",
|
33
|
-
"@teambit/logger": "0.0.
|
34
|
-
"@teambit/merging": "0.0.
|
33
|
+
"@teambit/logger": "0.0.681",
|
34
|
+
"@teambit/merging": "0.0.193",
|
35
35
|
"@teambit/design.ui.pages.not-found": "0.0.363",
|
36
|
-
"@teambit/lanes.hooks.use-lanes": "0.0.
|
37
|
-
"@teambit/lanes.hooks.use-viewed-lane-from-url": "0.0.
|
38
|
-
"@teambit/lanes.ui.lane-overview": "0.0.
|
36
|
+
"@teambit/lanes.hooks.use-lanes": "0.0.48",
|
37
|
+
"@teambit/lanes.hooks.use-viewed-lane-from-url": "0.0.10",
|
38
|
+
"@teambit/lanes.ui.lane-overview": "0.0.10",
|
39
39
|
"@teambit/lanes.ui.menus.lanes-overview-menu": "0.0.1",
|
40
|
-
"@teambit/lanes.ui.menus.use-lanes-menu": "0.0.
|
41
|
-
"@teambit/lanes.ui.navigation.lane-switcher": "0.0.
|
42
|
-
"@teambit/sidebar": "0.0.
|
40
|
+
"@teambit/lanes.ui.menus.use-lanes-menu": "0.0.10",
|
41
|
+
"@teambit/lanes.ui.navigation.lane-switcher": "0.0.10",
|
42
|
+
"@teambit/sidebar": "0.0.878",
|
43
43
|
"@teambit/ui-foundation.ui.menu": "0.0.493",
|
44
44
|
"@teambit/ui-foundation.ui.react-router.slot-router": "0.0.496",
|
45
|
-
"@teambit/ui": "0.0.
|
45
|
+
"@teambit/ui": "0.0.878"
|
46
46
|
},
|
47
47
|
"devDependencies": {
|
48
48
|
"@types/react": "^17.0.8",
|
@@ -58,7 +58,7 @@
|
|
58
58
|
},
|
59
59
|
"peerDependencies": {
|
60
60
|
"react-router-dom": "^6.0.0",
|
61
|
-
"@teambit/legacy": "1.0.
|
61
|
+
"@teambit/legacy": "1.0.369",
|
62
62
|
"react-dom": "^16.8.0 || ^17.0.0",
|
63
63
|
"react": "^16.8.0 || ^17.0.0"
|
64
64
|
},
|
@@ -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.450/dist/lanes.composition.js';
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.lanes_lanes@0.0.450/dist/lanes.docs.mdx';
|
3
3
|
|
4
4
|
export const compositions = [compositions_0];
|
5
5
|
export const overview = [overview_0];
|
Binary file
|