@teambit/scope 0.0.1112 → 0.0.1114

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.
@@ -13,4 +13,5 @@ export declare type GetScopeOptions = {
13
13
  children: ReactNode;
14
14
  }>;
15
15
  overrideDrawers?: DrawerType[];
16
+ onSidebarToggle?: (callback: () => void) => void;
16
17
  };
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["get-scope-options.ts"],"sourcesContent":["import { DrawerType } from '@teambit/ui-foundation.ui.tree.drawer';\nimport { ComponentType, ReactNode } from 'react';\nimport { ScopeModel } from '.';\n\nexport type GetScopeOptions = {\n useScope?: () => { scope: ScopeModel | undefined };\n Corner?: ComponentType;\n paneClassName?: string;\n scopeClassName?: string;\n TargetScopeOverview?: ComponentType;\n PaneWrapper?: ComponentType<{ children: ReactNode }>;\n overrideDrawers?: DrawerType[];\n};\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["get-scope-options.ts"],"sourcesContent":["import { DrawerType } from '@teambit/ui-foundation.ui.tree.drawer';\nimport { ComponentType, ReactNode } from 'react';\nimport { ScopeModel } from '.';\n\nexport type GetScopeOptions = {\n useScope?: () => { scope: ScopeModel | undefined };\n Corner?: ComponentType;\n paneClassName?: string;\n scopeClassName?: string;\n TargetScopeOverview?: ComponentType;\n PaneWrapper?: ComponentType<{ children: ReactNode }>;\n overrideDrawers?: DrawerType[];\n onSidebarToggle?: (callback: () => void) => void;\n};\n"],"mappings":""}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.scope_scope@0.0.1112/dist/scope.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.scope_scope@0.0.1112/dist/scope.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.scope_scope@0.0.1114/dist/scope.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.scope_scope@0.0.1114/dist/scope.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -253,7 +253,7 @@ class ScopeUI {
253
253
  badgeSlot: this.scopeBadgeSlot,
254
254
  overviewLineSlot: this.overviewSlot,
255
255
  context: this.getContext(),
256
- onSidebarTogglerChange: this.setSidebarToggle,
256
+ onSidebarTogglerChange: options.onSidebarToggle || this.setSidebarToggle,
257
257
  cornerSlot: this.cornerSlot,
258
258
  paneClassName: options.paneClassName,
259
259
  PaneWrapper: options.PaneWrapper
@@ -1 +1 @@
1
- {"version":3,"names":["ScopeUI","constructor","routeSlot","componentUi","menuSlot","sidebar","sidebarSlot","commandBarUI","scopeBadgeSlot","menuWidgetSlot","sidebarItemSlot","menuItemSlot","cornerSlot","overviewSlot","contextSlot","drawerWidgetSlot","drawerComponentsFiltersSlot","routes","register","menuItems","componentTreeNodes","map","componentTreeNode","links","drawer","registerDrawer","filters","widgets","components","updateComponents","category","title","keyChar","handler","run","registerBadge","badges","getScope","options","TargetScopeOverview","scopeClassName","Corner","listSidebarLinks","overrideDrawers","useScope","getContext","setSidebarToggle","paneClassName","PaneWrapper","registerOverviewLine","lines","registerRoutes","applyMenuRoutes","registerMenuRoutes","path","routePath","element","getMenu","ScopeAspect","id","getScopeMenu","registerExplicitRoutes","getComponentUI","registerMenuWidget","registerCorner","corner","registerComponentUrl","func","componentUrlFunc","replaceOverview","replaceDescription","replaceMetadataSection","registerMetadataItem","replaceComponentGrid","registerMetadata","addContext","context","contexts","values","ComponentUrlFuncProvider","children","flatten","concat","registerDefaultDrawers","assumeScopeInUrl","overrideUseComponents","overrideUseLanes","getDefaultDrawer","scopeDrawer","treeWidgets","filtersSlot","uiRoot","setKeyBindHandler","addCommand","action","displayName","keybinding","sorted","sort","a","b","aWeight","weight","bWeight","compact","link","component","provider","ui","config","componentFiltersSlot","scopeUi","registerDrawerComponentFilters","DeprecateFilter","EnvsFilter","ShowMainFilter","registerDrawerWidgets","registerRoot","bind","registerMenuItem","useBoxAction","useBoxIcon","showGallery","registerSidebarLink","Gallery","UIAspect","ComponentAspect","SidebarAspect","CommandBarAspect","UIRuntime","Slot","withType","addRuntime"],"sources":["scope.ui.runtime.tsx"],"sourcesContent":["import type { ComponentUI, ComponentModel } from '@teambit/component';\nimport { compact, flatten } from 'lodash';\nimport { ComponentAspect } from '@teambit/component';\nimport { Slot, SlotRegistry } from '@teambit/harmony';\nimport { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport { SidebarAspect, SidebarUI, SidebarItem, SidebarItemSlot } from '@teambit/sidebar';\nimport { ComponentTreeNode } from '@teambit/component-tree';\nimport { UIAspect, UIRootUI as UIRoot, UIRuntime, UiUI } from '@teambit/ui';\nimport React, { ComponentType, ReactNode } from 'react';\nimport { MenuItemSlot, MenuItem } from '@teambit/ui-foundation.ui.main-dropdown';\nimport { RouteProps } from 'react-router-dom';\nimport { MenuWidget, MenuWidgetSlot } from '@teambit/ui-foundation.ui.menu';\nimport { MenuLinkItem } from '@teambit/design.ui.surfaces.menu.link-item';\nimport CommandBarAspect, { CommandBarUI, CommandHandler } from '@teambit/command-bar';\nimport { ScopeModel } from '@teambit/scope.models.scope-model';\nimport { DrawerType } from '@teambit/ui-foundation.ui.tree.drawer';\nimport { LanesModel } from '@teambit/lanes.ui.models.lanes-model';\nimport {\n DrawerWidgetSlot,\n FilterWidget,\n TreeToggleWidget,\n ComponentFiltersSlot,\n} from '@teambit/component.ui.component-drawer';\nimport { ComponentFilters } from '@teambit/component.ui.component-filters.component-filter-context';\nimport { DeprecateFilter } from '@teambit/component.ui.component-filters.deprecate-filter';\nimport { EnvsFilter } from '@teambit/component.ui.component-filters.env-filter';\nimport { ComponentUrlResolver, ComponentUrlProvider } from '@teambit/component.modules.component-url';\nimport { ShowMainFilter } from '@teambit/component.ui.component-filters.show-main-filter';\nimport { ScopeMenu, ScopeUseBox } from './ui/menu';\nimport { ScopeAspect } from './scope.aspect';\nimport { Scope } from './ui/scope';\nimport { scopeDrawer } from './scope.ui.drawer';\nimport { GetScopeOptions } from './get-scope-options';\n\nexport type ScopeBadge = ComponentType;\n\nexport type ScopeBadgeSlot = SlotRegistry<ScopeBadge[]>;\n\nexport type ContextSlot = SlotRegistry<ScopeContextType[]>;\n\nexport type ScopeContextType = ComponentType<{ scope: ScopeModel; children: ReactNode }>;\n\nexport type SidebarSlot = SlotRegistry<ComponentTreeNode>;\n\nexport type ScopeOverview = ComponentType;\n\nexport type ScopeOverviewSlot = SlotRegistry<ScopeOverview>;\n\nexport type Corner = ComponentType;\n\nexport type CornerSlot = SlotRegistry<Corner>;\n\nexport type OverviewLine = ComponentType;\n\nexport type OverviewLineSlot = SlotRegistry<OverviewLine[]>;\n\nexport type ScopeUIConfig = {\n showGallery: boolean;\n useBoxAction?: string;\n useBoxIcon?: string;\n};\n\nexport class ScopeUI {\n constructor(\n /**\n * route slot.\n */\n private routeSlot: RouteSlot,\n\n /**\n * component ui extension.\n */\n private componentUi: ComponentUI,\n /**\n * menu slot\n */\n private menuSlot: RouteSlot,\n\n private sidebar: SidebarUI,\n\n private sidebarSlot: SidebarSlot,\n\n private commandBarUI: CommandBarUI,\n\n private scopeBadgeSlot: ScopeBadgeSlot,\n\n private menuWidgetSlot: MenuWidgetSlot,\n\n /**\n * sidebar link slot\n */\n private sidebarItemSlot: SidebarItemSlot,\n\n /**\n * main dropdown item slot\n */\n private menuItemSlot: MenuItemSlot,\n\n /**\n * corner slot\n */\n private cornerSlot: CornerSlot,\n\n /**\n * overview line slot to add new lines beneath the overview section\n */\n private overviewSlot: OverviewLineSlot,\n\n /**\n * add a new context to ui\n */\n private contextSlot: ContextSlot,\n private drawerWidgetSlot: DrawerWidgetSlot,\n private drawerComponentsFiltersSlot: ComponentFiltersSlot\n ) {}\n\n private setSidebarToggle: (updated: CommandHandler) => void = () => {};\n\n /**\n * register a new badge into the scope overview.\n */\n registerBadge(...badges: ScopeBadge[]) {\n this.scopeBadgeSlot.register(badges);\n return this;\n }\n\n getScope(options: GetScopeOptions) {\n return (\n <Scope\n TargetScopeOverview={options.TargetScopeOverview}\n scopeClassName={options.scopeClassName}\n TargetCorner={options.Corner}\n routeSlot={this.routeSlot}\n menuSlot={this.menuSlot}\n sidebar={<this.sidebar.render items={this.listSidebarLinks()} overrideDrawerSlot={options.overrideDrawers} />}\n scopeUi={this}\n userUseScopeQuery={options.useScope}\n badgeSlot={this.scopeBadgeSlot}\n overviewLineSlot={this.overviewSlot}\n context={this.getContext()}\n onSidebarTogglerChange={this.setSidebarToggle}\n cornerSlot={this.cornerSlot}\n paneClassName={options.paneClassName}\n PaneWrapper={options.PaneWrapper}\n />\n );\n }\n\n /**\n * register a new line beneath the scope overview section.\n */\n registerOverviewLine(...lines: OverviewLine[]) {\n this.overviewSlot.register(lines);\n return this;\n }\n\n /**\n * register a route to the scope.\n */\n registerRoutes(routes: RouteProps[]) {\n this.routeSlot.register(routes);\n return this;\n }\n\n registerMenuRoutes = (routes: RouteProps[]) => {\n this.menuSlot.register(routes);\n return this;\n };\n\n private applyMenuRoutes() {\n this.registerMenuRoutes([\n {\n path: this.componentUi.routePath,\n element: this.componentUi.getMenu(ScopeAspect.id),\n },\n {\n path: '/',\n element: this.getScopeMenu(),\n },\n ]);\n }\n\n getScopeMenu() {\n return <ScopeMenu widgetSlot={this.menuWidgetSlot} menuItemSlot={this.menuItemSlot} />;\n }\n\n private registerExplicitRoutes() {\n this.applyMenuRoutes();\n this.registerRoutes([\n {\n path: this.componentUi.routePath,\n element: this.componentUi.getComponentUI(ScopeAspect.id),\n },\n ]);\n }\n\n registerMenuWidget(...menuItems: MenuWidget[]) {\n this.menuWidgetSlot.register(menuItems);\n }\n\n registerCorner(corner: Corner) {\n this.cornerSlot.register(corner);\n }\n\n private componentUrlFunc: ComponentUrlResolver | undefined;\n registerComponentUrl(func: ComponentUrlResolver) {\n this.componentUrlFunc = func;\n }\n\n /**\n * register a scope overview.\n */\n replaceOverview() {}\n\n /**\n * register description.\n */\n replaceDescription() {}\n\n /**\n * register metadata section.\n */\n replaceMetadataSection() {}\n\n /**\n * register a metadata item.\n */\n registerMetadataItem() {}\n\n replaceComponentGrid() {}\n\n /**\n * register metadata.\n */\n registerMetadata() {}\n\n /**\n * add a new context to the scope.\n */\n addContext(...context: ScopeContextType[]) {\n this.contextSlot.register(context);\n return this;\n }\n\n private getContext() {\n const contexts = this.contextSlot.values();\n // eslint-disable-next-line react/prop-types\n const ComponentUrlFuncProvider: ScopeContextType = ({ children }) => (\n <ComponentUrlProvider value={this.componentUrlFunc}>{children}</ComponentUrlProvider>\n );\n\n return flatten(contexts).concat(ComponentUrlFuncProvider);\n }\n\n registerMenuItem = (menuItems: MenuItem[]) => {\n this.menuItemSlot.register(menuItems);\n };\n\n /**\n * register a sidebar Widget for the scope\n */\n registerSidebarWidget = (componentTreeNodes: ComponentTreeNode[]) => {\n componentTreeNodes.map((componentTreeNode) => this.sidebarSlot.register(componentTreeNode));\n return this;\n };\n\n /**\n * register a sidebar link to the section above the drawers\n */\n registerSidebarLink = (...links: SidebarItem[]) => {\n this.sidebarItemSlot.register(links);\n };\n\n registerDrawers = (...drawer: DrawerType[]) => {\n this.sidebar.registerDrawer(...drawer);\n return this;\n };\n\n /**\n * register component filters\n */\n registerDrawerComponentFilters = (filters: ComponentFilters) => {\n this.drawerComponentsFiltersSlot.register(filters);\n };\n\n registerDrawerWidgets = (widgets: ReactNode[]) => {\n this.drawerWidgetSlot.register(widgets);\n };\n\n registerDefaultDrawers(\n assumeScopeInUrl = false,\n overrideUseComponents?: () => { components: ComponentModel[] },\n overrideUseLanes?: () => { lanesModel: LanesModel }\n ) {\n this.sidebar.registerDrawer(this.getDefaultDrawer(assumeScopeInUrl, overrideUseComponents, overrideUseLanes));\n }\n\n getDefaultDrawer(\n assumeScopeInUrl = false,\n overrideUseComponents?: () => { components: ComponentModel[] },\n overrideUseLanes?: () => { lanesModel: LanesModel }\n ) {\n return scopeDrawer({\n treeWidgets: this.sidebarSlot,\n filtersSlot: this.drawerComponentsFiltersSlot,\n drawerWidgetSlot: this.drawerWidgetSlot,\n assumeScopeInUrl,\n overrideUseComponents,\n overrideUseLanes,\n });\n }\n\n uiRoot(): UIRoot {\n this.registerDefaultDrawers();\n const [setKeyBindHandler] = this.commandBarUI.addCommand({\n id: 'sidebar.toggle', // TODO - extract to a component!\n action: () => {},\n displayName: 'Toggle component list',\n keybinding: 'alt+s',\n });\n this.setSidebarToggle = setKeyBindHandler;\n\n return {\n routes: [\n {\n path: '/*',\n element: (\n <Scope\n routeSlot={this.routeSlot}\n menuSlot={this.menuSlot}\n sidebar={<this.sidebar.render items={this.listSidebarLinks()} />}\n scopeUi={this}\n badgeSlot={this.scopeBadgeSlot}\n overviewLineSlot={this.overviewSlot}\n context={this.getContext()}\n onSidebarTogglerChange={this.setSidebarToggle}\n cornerSlot={this.cornerSlot}\n />\n ),\n },\n ],\n };\n }\n\n listSidebarLinks() {\n const links = flatten(this.sidebarItemSlot.values());\n const sorted = links.sort((a, b) => {\n const aWeight = a?.weight || 0;\n const bWeight = b?.weight || 0;\n return aWeight - bWeight;\n });\n\n return compact(\n sorted.map((link) => {\n return link.component;\n })\n );\n }\n\n /** registers available components */\n setComponents = (components: ComponentModel[]) => {\n this.componentUi.updateComponents(components);\n };\n\n private menuItems: MenuItem[] = [\n {\n category: 'general',\n title: 'Open command bar',\n keyChar: 'mod+k',\n handler: () => this.commandBarUI?.run('command-bar.open'),\n },\n {\n category: 'general',\n title: 'Toggle component list',\n keyChar: 'alt+s',\n handler: () => this.commandBarUI?.run('sidebar.toggle'),\n },\n ];\n\n static dependencies = [UIAspect, ComponentAspect, SidebarAspect, CommandBarAspect];\n static runtime = UIRuntime;\n static slots = [\n Slot.withType<RouteProps>(),\n Slot.withType<RouteProps>(),\n Slot.withType<ComponentTreeNode>(),\n Slot.withType<ScopeBadge>(),\n Slot.withType<ScopeOverview>(),\n Slot.withType<MenuWidget[]>(),\n Slot.withType<MenuItemSlot>(),\n Slot.withType<CornerSlot>(),\n Slot.withType<OverviewLineSlot>(),\n Slot.withType<SidebarItemSlot>(),\n Slot.withType<ContextSlot>(),\n Slot.withType<DrawerWidgetSlot>(),\n Slot.withType<ComponentFiltersSlot>(),\n ];\n\n static defaultConfig = {\n showGallery: true,\n };\n\n static async provider(\n [ui, componentUi, sidebar, commandBarUI]: [UiUI, ComponentUI, SidebarUI, CommandBarUI],\n config: ScopeUIConfig,\n [\n routeSlot,\n menuSlot,\n sidebarSlot,\n scopeBadgeSlot,\n menuWidgetSlot,\n menuItemSlot,\n sidebarItemSlot,\n cornerSlot,\n overviewSlot,\n contextSlot,\n drawerWidgetSlot,\n componentFiltersSlot,\n ]: [\n RouteSlot,\n RouteSlot,\n SidebarSlot,\n ScopeBadgeSlot,\n MenuWidgetSlot,\n MenuItemSlot,\n SidebarItemSlot,\n CornerSlot,\n OverviewLineSlot,\n ContextSlot,\n DrawerWidgetSlot,\n ComponentFiltersSlot\n ]\n ) {\n const scopeUi = new ScopeUI(\n routeSlot,\n componentUi,\n menuSlot,\n sidebar,\n sidebarSlot,\n commandBarUI,\n scopeBadgeSlot,\n menuWidgetSlot,\n sidebarItemSlot,\n menuItemSlot,\n cornerSlot,\n overviewSlot,\n contextSlot,\n drawerWidgetSlot,\n componentFiltersSlot\n );\n scopeUi.registerDrawerComponentFilters([DeprecateFilter, EnvsFilter, ShowMainFilter(false)]);\n scopeUi.registerDrawerWidgets([\n <FilterWidget key={'workspace-filter-widget'} />,\n <TreeToggleWidget key={'workspace-tree-toggle-widget'} />,\n ]);\n if (ui) ui.registerRoot(scopeUi.uiRoot.bind(scopeUi));\n scopeUi.registerMenuItem(scopeUi.menuItems);\n scopeUi.registerMenuWidget(() => <ScopeUseBox actionName={config.useBoxAction} actionIcon={config.useBoxIcon} />);\n if (config.showGallery)\n scopeUi.registerSidebarLink({\n component: function Gallery() {\n return (\n <MenuLinkItem exact href=\"/\" icon=\"comps\">\n Overview\n </MenuLinkItem>\n );\n },\n });\n if (ui) scopeUi.registerExplicitRoutes();\n\n return scopeUi;\n }\n}\n\nexport default ScopeUI;\n\nScopeAspect.addRuntime(ScopeUI);\n"],"mappings":"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"}
1
+ {"version":3,"names":["ScopeUI","constructor","routeSlot","componentUi","menuSlot","sidebar","sidebarSlot","commandBarUI","scopeBadgeSlot","menuWidgetSlot","sidebarItemSlot","menuItemSlot","cornerSlot","overviewSlot","contextSlot","drawerWidgetSlot","drawerComponentsFiltersSlot","routes","register","menuItems","componentTreeNodes","map","componentTreeNode","links","drawer","registerDrawer","filters","widgets","components","updateComponents","category","title","keyChar","handler","run","registerBadge","badges","getScope","options","TargetScopeOverview","scopeClassName","Corner","listSidebarLinks","overrideDrawers","useScope","getContext","onSidebarToggle","setSidebarToggle","paneClassName","PaneWrapper","registerOverviewLine","lines","registerRoutes","applyMenuRoutes","registerMenuRoutes","path","routePath","element","getMenu","ScopeAspect","id","getScopeMenu","registerExplicitRoutes","getComponentUI","registerMenuWidget","registerCorner","corner","registerComponentUrl","func","componentUrlFunc","replaceOverview","replaceDescription","replaceMetadataSection","registerMetadataItem","replaceComponentGrid","registerMetadata","addContext","context","contexts","values","ComponentUrlFuncProvider","children","flatten","concat","registerDefaultDrawers","assumeScopeInUrl","overrideUseComponents","overrideUseLanes","getDefaultDrawer","scopeDrawer","treeWidgets","filtersSlot","uiRoot","setKeyBindHandler","addCommand","action","displayName","keybinding","sorted","sort","a","b","aWeight","weight","bWeight","compact","link","component","provider","ui","config","componentFiltersSlot","scopeUi","registerDrawerComponentFilters","DeprecateFilter","EnvsFilter","ShowMainFilter","registerDrawerWidgets","registerRoot","bind","registerMenuItem","useBoxAction","useBoxIcon","showGallery","registerSidebarLink","Gallery","UIAspect","ComponentAspect","SidebarAspect","CommandBarAspect","UIRuntime","Slot","withType","addRuntime"],"sources":["scope.ui.runtime.tsx"],"sourcesContent":["import type { ComponentUI, ComponentModel } from '@teambit/component';\nimport { compact, flatten } from 'lodash';\nimport { ComponentAspect } from '@teambit/component';\nimport { Slot, SlotRegistry } from '@teambit/harmony';\nimport { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport { SidebarAspect, SidebarUI, SidebarItem, SidebarItemSlot } from '@teambit/sidebar';\nimport { ComponentTreeNode } from '@teambit/component-tree';\nimport { UIAspect, UIRootUI as UIRoot, UIRuntime, UiUI } from '@teambit/ui';\nimport React, { ComponentType, ReactNode } from 'react';\nimport { MenuItemSlot, MenuItem } from '@teambit/ui-foundation.ui.main-dropdown';\nimport { RouteProps } from 'react-router-dom';\nimport { MenuWidget, MenuWidgetSlot } from '@teambit/ui-foundation.ui.menu';\nimport { MenuLinkItem } from '@teambit/design.ui.surfaces.menu.link-item';\nimport CommandBarAspect, { CommandBarUI, CommandHandler } from '@teambit/command-bar';\nimport { ScopeModel } from '@teambit/scope.models.scope-model';\nimport { DrawerType } from '@teambit/ui-foundation.ui.tree.drawer';\nimport { LanesModel } from '@teambit/lanes.ui.models.lanes-model';\nimport {\n DrawerWidgetSlot,\n FilterWidget,\n TreeToggleWidget,\n ComponentFiltersSlot,\n} from '@teambit/component.ui.component-drawer';\nimport { ComponentFilters } from '@teambit/component.ui.component-filters.component-filter-context';\nimport { DeprecateFilter } from '@teambit/component.ui.component-filters.deprecate-filter';\nimport { EnvsFilter } from '@teambit/component.ui.component-filters.env-filter';\nimport { ComponentUrlResolver, ComponentUrlProvider } from '@teambit/component.modules.component-url';\nimport { ShowMainFilter } from '@teambit/component.ui.component-filters.show-main-filter';\nimport { ScopeMenu, ScopeUseBox } from './ui/menu';\nimport { ScopeAspect } from './scope.aspect';\nimport { Scope } from './ui/scope';\nimport { scopeDrawer } from './scope.ui.drawer';\nimport { GetScopeOptions } from './get-scope-options';\n\nexport type ScopeBadge = ComponentType;\n\nexport type ScopeBadgeSlot = SlotRegistry<ScopeBadge[]>;\n\nexport type ContextSlot = SlotRegistry<ScopeContextType[]>;\n\nexport type ScopeContextType = ComponentType<{ scope: ScopeModel; children: ReactNode }>;\n\nexport type SidebarSlot = SlotRegistry<ComponentTreeNode>;\n\nexport type ScopeOverview = ComponentType;\n\nexport type ScopeOverviewSlot = SlotRegistry<ScopeOverview>;\n\nexport type Corner = ComponentType;\n\nexport type CornerSlot = SlotRegistry<Corner>;\n\nexport type OverviewLine = ComponentType;\n\nexport type OverviewLineSlot = SlotRegistry<OverviewLine[]>;\n\nexport type ScopeUIConfig = {\n showGallery: boolean;\n useBoxAction?: string;\n useBoxIcon?: string;\n};\n\nexport class ScopeUI {\n constructor(\n /**\n * route slot.\n */\n private routeSlot: RouteSlot,\n\n /**\n * component ui extension.\n */\n private componentUi: ComponentUI,\n /**\n * menu slot\n */\n private menuSlot: RouteSlot,\n\n private sidebar: SidebarUI,\n\n private sidebarSlot: SidebarSlot,\n\n private commandBarUI: CommandBarUI,\n\n private scopeBadgeSlot: ScopeBadgeSlot,\n\n private menuWidgetSlot: MenuWidgetSlot,\n\n /**\n * sidebar link slot\n */\n private sidebarItemSlot: SidebarItemSlot,\n\n /**\n * main dropdown item slot\n */\n private menuItemSlot: MenuItemSlot,\n\n /**\n * corner slot\n */\n private cornerSlot: CornerSlot,\n\n /**\n * overview line slot to add new lines beneath the overview section\n */\n private overviewSlot: OverviewLineSlot,\n\n /**\n * add a new context to ui\n */\n private contextSlot: ContextSlot,\n private drawerWidgetSlot: DrawerWidgetSlot,\n private drawerComponentsFiltersSlot: ComponentFiltersSlot\n ) {}\n\n private setSidebarToggle: (updated: CommandHandler) => void = () => {};\n\n /**\n * register a new badge into the scope overview.\n */\n registerBadge(...badges: ScopeBadge[]) {\n this.scopeBadgeSlot.register(badges);\n return this;\n }\n\n getScope(options: GetScopeOptions) {\n return (\n <Scope\n TargetScopeOverview={options.TargetScopeOverview}\n scopeClassName={options.scopeClassName}\n TargetCorner={options.Corner}\n routeSlot={this.routeSlot}\n menuSlot={this.menuSlot}\n sidebar={<this.sidebar.render items={this.listSidebarLinks()} overrideDrawerSlot={options.overrideDrawers} />}\n scopeUi={this}\n userUseScopeQuery={options.useScope}\n badgeSlot={this.scopeBadgeSlot}\n overviewLineSlot={this.overviewSlot}\n context={this.getContext()}\n onSidebarTogglerChange={options.onSidebarToggle || this.setSidebarToggle}\n cornerSlot={this.cornerSlot}\n paneClassName={options.paneClassName}\n PaneWrapper={options.PaneWrapper}\n />\n );\n }\n\n /**\n * register a new line beneath the scope overview section.\n */\n registerOverviewLine(...lines: OverviewLine[]) {\n this.overviewSlot.register(lines);\n return this;\n }\n\n /**\n * register a route to the scope.\n */\n registerRoutes(routes: RouteProps[]) {\n this.routeSlot.register(routes);\n return this;\n }\n\n registerMenuRoutes = (routes: RouteProps[]) => {\n this.menuSlot.register(routes);\n return this;\n };\n\n private applyMenuRoutes() {\n this.registerMenuRoutes([\n {\n path: this.componentUi.routePath,\n element: this.componentUi.getMenu(ScopeAspect.id),\n },\n {\n path: '/',\n element: this.getScopeMenu(),\n },\n ]);\n }\n\n getScopeMenu() {\n return <ScopeMenu widgetSlot={this.menuWidgetSlot} menuItemSlot={this.menuItemSlot} />;\n }\n\n private registerExplicitRoutes() {\n this.applyMenuRoutes();\n this.registerRoutes([\n {\n path: this.componentUi.routePath,\n element: this.componentUi.getComponentUI(ScopeAspect.id),\n },\n ]);\n }\n\n registerMenuWidget(...menuItems: MenuWidget[]) {\n this.menuWidgetSlot.register(menuItems);\n }\n\n registerCorner(corner: Corner) {\n this.cornerSlot.register(corner);\n }\n\n private componentUrlFunc: ComponentUrlResolver | undefined;\n registerComponentUrl(func: ComponentUrlResolver) {\n this.componentUrlFunc = func;\n }\n\n /**\n * register a scope overview.\n */\n replaceOverview() {}\n\n /**\n * register description.\n */\n replaceDescription() {}\n\n /**\n * register metadata section.\n */\n replaceMetadataSection() {}\n\n /**\n * register a metadata item.\n */\n registerMetadataItem() {}\n\n replaceComponentGrid() {}\n\n /**\n * register metadata.\n */\n registerMetadata() {}\n\n /**\n * add a new context to the scope.\n */\n addContext(...context: ScopeContextType[]) {\n this.contextSlot.register(context);\n return this;\n }\n\n private getContext() {\n const contexts = this.contextSlot.values();\n // eslint-disable-next-line react/prop-types\n const ComponentUrlFuncProvider: ScopeContextType = ({ children }) => (\n <ComponentUrlProvider value={this.componentUrlFunc}>{children}</ComponentUrlProvider>\n );\n\n return flatten(contexts).concat(ComponentUrlFuncProvider);\n }\n\n registerMenuItem = (menuItems: MenuItem[]) => {\n this.menuItemSlot.register(menuItems);\n };\n\n /**\n * register a sidebar Widget for the scope\n */\n registerSidebarWidget = (componentTreeNodes: ComponentTreeNode[]) => {\n componentTreeNodes.map((componentTreeNode) => this.sidebarSlot.register(componentTreeNode));\n return this;\n };\n\n /**\n * register a sidebar link to the section above the drawers\n */\n registerSidebarLink = (...links: SidebarItem[]) => {\n this.sidebarItemSlot.register(links);\n };\n\n registerDrawers = (...drawer: DrawerType[]) => {\n this.sidebar.registerDrawer(...drawer);\n return this;\n };\n\n /**\n * register component filters\n */\n registerDrawerComponentFilters = (filters: ComponentFilters) => {\n this.drawerComponentsFiltersSlot.register(filters);\n };\n\n registerDrawerWidgets = (widgets: ReactNode[]) => {\n this.drawerWidgetSlot.register(widgets);\n };\n\n registerDefaultDrawers(\n assumeScopeInUrl = false,\n overrideUseComponents?: () => { components: ComponentModel[] },\n overrideUseLanes?: () => { lanesModel: LanesModel }\n ) {\n this.sidebar.registerDrawer(this.getDefaultDrawer(assumeScopeInUrl, overrideUseComponents, overrideUseLanes));\n }\n\n getDefaultDrawer(\n assumeScopeInUrl = false,\n overrideUseComponents?: () => { components: ComponentModel[] },\n overrideUseLanes?: () => { lanesModel: LanesModel }\n ) {\n return scopeDrawer({\n treeWidgets: this.sidebarSlot,\n filtersSlot: this.drawerComponentsFiltersSlot,\n drawerWidgetSlot: this.drawerWidgetSlot,\n assumeScopeInUrl,\n overrideUseComponents,\n overrideUseLanes,\n });\n }\n\n uiRoot(): UIRoot {\n this.registerDefaultDrawers();\n const [setKeyBindHandler] = this.commandBarUI.addCommand({\n id: 'sidebar.toggle', // TODO - extract to a component!\n action: () => {},\n displayName: 'Toggle component list',\n keybinding: 'alt+s',\n });\n this.setSidebarToggle = setKeyBindHandler;\n\n return {\n routes: [\n {\n path: '/*',\n element: (\n <Scope\n routeSlot={this.routeSlot}\n menuSlot={this.menuSlot}\n sidebar={<this.sidebar.render items={this.listSidebarLinks()} />}\n scopeUi={this}\n badgeSlot={this.scopeBadgeSlot}\n overviewLineSlot={this.overviewSlot}\n context={this.getContext()}\n onSidebarTogglerChange={this.setSidebarToggle}\n cornerSlot={this.cornerSlot}\n />\n ),\n },\n ],\n };\n }\n\n listSidebarLinks() {\n const links = flatten(this.sidebarItemSlot.values());\n const sorted = links.sort((a, b) => {\n const aWeight = a?.weight || 0;\n const bWeight = b?.weight || 0;\n return aWeight - bWeight;\n });\n\n return compact(\n sorted.map((link) => {\n return link.component;\n })\n );\n }\n\n /** registers available components */\n setComponents = (components: ComponentModel[]) => {\n this.componentUi.updateComponents(components);\n };\n\n private menuItems: MenuItem[] = [\n {\n category: 'general',\n title: 'Open command bar',\n keyChar: 'mod+k',\n handler: () => this.commandBarUI?.run('command-bar.open'),\n },\n {\n category: 'general',\n title: 'Toggle component list',\n keyChar: 'alt+s',\n handler: () => this.commandBarUI?.run('sidebar.toggle'),\n },\n ];\n\n static dependencies = [UIAspect, ComponentAspect, SidebarAspect, CommandBarAspect];\n static runtime = UIRuntime;\n static slots = [\n Slot.withType<RouteProps>(),\n Slot.withType<RouteProps>(),\n Slot.withType<ComponentTreeNode>(),\n Slot.withType<ScopeBadge>(),\n Slot.withType<ScopeOverview>(),\n Slot.withType<MenuWidget[]>(),\n Slot.withType<MenuItemSlot>(),\n Slot.withType<CornerSlot>(),\n Slot.withType<OverviewLineSlot>(),\n Slot.withType<SidebarItemSlot>(),\n Slot.withType<ContextSlot>(),\n Slot.withType<DrawerWidgetSlot>(),\n Slot.withType<ComponentFiltersSlot>(),\n ];\n\n static defaultConfig = {\n showGallery: true,\n };\n\n static async provider(\n [ui, componentUi, sidebar, commandBarUI]: [UiUI, ComponentUI, SidebarUI, CommandBarUI],\n config: ScopeUIConfig,\n [\n routeSlot,\n menuSlot,\n sidebarSlot,\n scopeBadgeSlot,\n menuWidgetSlot,\n menuItemSlot,\n sidebarItemSlot,\n cornerSlot,\n overviewSlot,\n contextSlot,\n drawerWidgetSlot,\n componentFiltersSlot,\n ]: [\n RouteSlot,\n RouteSlot,\n SidebarSlot,\n ScopeBadgeSlot,\n MenuWidgetSlot,\n MenuItemSlot,\n SidebarItemSlot,\n CornerSlot,\n OverviewLineSlot,\n ContextSlot,\n DrawerWidgetSlot,\n ComponentFiltersSlot\n ]\n ) {\n const scopeUi = new ScopeUI(\n routeSlot,\n componentUi,\n menuSlot,\n sidebar,\n sidebarSlot,\n commandBarUI,\n scopeBadgeSlot,\n menuWidgetSlot,\n sidebarItemSlot,\n menuItemSlot,\n cornerSlot,\n overviewSlot,\n contextSlot,\n drawerWidgetSlot,\n componentFiltersSlot\n );\n scopeUi.registerDrawerComponentFilters([DeprecateFilter, EnvsFilter, ShowMainFilter(false)]);\n scopeUi.registerDrawerWidgets([\n <FilterWidget key={'workspace-filter-widget'} />,\n <TreeToggleWidget key={'workspace-tree-toggle-widget'} />,\n ]);\n if (ui) ui.registerRoot(scopeUi.uiRoot.bind(scopeUi));\n scopeUi.registerMenuItem(scopeUi.menuItems);\n scopeUi.registerMenuWidget(() => <ScopeUseBox actionName={config.useBoxAction} actionIcon={config.useBoxIcon} />);\n if (config.showGallery)\n scopeUi.registerSidebarLink({\n component: function Gallery() {\n return (\n <MenuLinkItem exact href=\"/\" icon=\"comps\">\n Overview\n </MenuLinkItem>\n );\n },\n });\n if (ui) scopeUi.registerExplicitRoutes();\n\n return scopeUi;\n }\n}\n\nexport default ScopeUI;\n\nScopeAspect.addRuntime(ScopeUI);\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/scope",
3
- "version": "0.0.1112",
3
+ "version": "0.0.1114",
4
4
  "homepage": "https://bit.cloud/teambit/scope/scope",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.scope",
8
8
  "name": "scope",
9
- "version": "0.0.1112"
9
+ "version": "0.0.1114"
10
10
  },
11
11
  "dependencies": {
12
12
  "fs-extra": "10.0.0",
@@ -15,7 +15,7 @@
15
15
  "chalk": "2.4.2",
16
16
  "semver": "7.5.2",
17
17
  "graphql-tag": "2.12.1",
18
- "chokidar": "3.5.1",
18
+ "chokidar": "3.5.3",
19
19
  "multimatch": "5.0.0",
20
20
  "classnames": "2.2.6",
21
21
  "reset-css": "5.0.1",
@@ -32,44 +32,44 @@
32
32
  "@teambit/base-ui.utils.composer": "1.0.0",
33
33
  "@teambit/explorer.ui.gallery.component-grid": "0.0.496",
34
34
  "@teambit/ui-foundation.ui.tree.drawer": "0.0.512",
35
- "@teambit/scope.models.scope-model": "0.0.401",
36
- "@teambit/scope.ui.hooks.scope-context": "0.0.401",
37
- "@teambit/aspect-loader": "0.0.1112",
38
- "@teambit/cli": "0.0.744",
39
- "@teambit/compiler": "0.0.1112",
40
- "@teambit/component": "0.0.1112",
41
- "@teambit/envs": "0.0.1112",
42
- "@teambit/global-config": "0.0.746",
35
+ "@teambit/scope.models.scope-model": "0.0.403",
36
+ "@teambit/scope.ui.hooks.scope-context": "0.0.403",
37
+ "@teambit/aspect-loader": "0.0.1114",
38
+ "@teambit/cli": "0.0.746",
39
+ "@teambit/compiler": "0.0.1114",
40
+ "@teambit/component": "0.0.1114",
41
+ "@teambit/envs": "0.0.1114",
42
+ "@teambit/global-config": "0.0.748",
43
43
  "@teambit/harmony.modules.requireable-component": "0.0.491",
44
- "@teambit/isolator": "0.0.1112",
45
- "@teambit/logger": "0.0.837",
44
+ "@teambit/isolator": "0.0.1114",
45
+ "@teambit/logger": "0.0.839",
46
46
  "@teambit/bit-error": "0.0.402",
47
- "@teambit/builder": "0.0.1112",
48
- "@teambit/dependency-resolver": "0.0.1112",
49
- "@teambit/express": "0.0.842",
50
- "@teambit/graph": "0.0.1112",
51
- "@teambit/graphql": "0.0.1112",
52
- "@teambit/ui": "0.0.1112",
47
+ "@teambit/builder": "0.0.1114",
48
+ "@teambit/dependency-resolver": "0.0.1114",
49
+ "@teambit/express": "0.0.844",
50
+ "@teambit/graph": "0.0.1114",
51
+ "@teambit/graphql": "0.0.1114",
52
+ "@teambit/ui": "0.0.1114",
53
53
  "@teambit/workspace.modules.match-pattern": "0.0.498",
54
- "@teambit/component.ui.component-drawer": "0.0.303",
55
- "@teambit/lanes.hooks.use-lane-components": "0.0.206",
56
- "@teambit/lanes.hooks.use-lanes": "0.0.207",
57
- "@teambit/lanes.ui.models.lanes-model": "0.0.160",
58
- "@teambit/ui-foundation.ui.side-bar": "0.0.820",
59
- "@teambit/command-bar": "0.0.1112",
60
- "@teambit/component-tree": "0.0.900",
54
+ "@teambit/component.ui.component-drawer": "0.0.305",
55
+ "@teambit/lanes.hooks.use-lane-components": "0.0.208",
56
+ "@teambit/lanes.hooks.use-lanes": "0.0.209",
57
+ "@teambit/lanes.ui.models.lanes-model": "0.0.162",
58
+ "@teambit/ui-foundation.ui.side-bar": "0.0.822",
59
+ "@teambit/command-bar": "0.0.1114",
60
+ "@teambit/component-tree": "0.0.902",
61
61
  "@teambit/component.modules.component-url": "0.0.151",
62
- "@teambit/component.ui.component-filters.component-filter-context": "0.0.167",
63
- "@teambit/component.ui.component-filters.deprecate-filter": "0.0.167",
64
- "@teambit/component.ui.component-filters.env-filter": "0.0.173",
65
- "@teambit/component.ui.component-filters.show-main-filter": "0.0.160",
66
- "@teambit/sidebar": "0.0.1112",
62
+ "@teambit/component.ui.component-filters.component-filter-context": "0.0.169",
63
+ "@teambit/component.ui.component-filters.deprecate-filter": "0.0.169",
64
+ "@teambit/component.ui.component-filters.env-filter": "0.0.175",
65
+ "@teambit/component.ui.component-filters.show-main-filter": "0.0.162",
66
+ "@teambit/sidebar": "0.0.1114",
67
67
  "@teambit/ui-foundation.ui.main-dropdown": "0.0.497",
68
68
  "@teambit/ui-foundation.ui.menu": "0.0.497",
69
69
  "@teambit/ui-foundation.ui.react-router.slot-router": "0.0.501",
70
- "@teambit/lane-id": "0.0.260",
70
+ "@teambit/lane-id": "0.0.262",
71
71
  "@teambit/ui-foundation.ui.constants.z-indexes": "0.0.499",
72
- "@teambit/scope.ui.hooks.use-scope": "0.0.406",
72
+ "@teambit/scope.ui.hooks.use-scope": "0.0.408",
73
73
  "@teambit/ui-foundation.ui.buttons.collapser": "0.0.207",
74
74
  "@teambit/ui-foundation.ui.corner": "0.0.510",
75
75
  "@teambit/ui-foundation.ui.full-loader": "0.0.495",
@@ -97,7 +97,7 @@
97
97
  },
98
98
  "peerDependencies": {
99
99
  "react-router-dom": "^6.0.0",
100
- "@teambit/legacy": "1.0.524",
100
+ "@teambit/legacy": "1.0.526",
101
101
  "react": "^16.8.0 || ^17.0.0",
102
102
  "react-dom": "^16.8.0 || ^17.0.0"
103
103
  },
@@ -138,7 +138,7 @@ export class ScopeUI {
138
138
  badgeSlot={this.scopeBadgeSlot}
139
139
  overviewLineSlot={this.overviewSlot}
140
140
  context={this.getContext()}
141
- onSidebarTogglerChange={this.setSidebarToggle}
141
+ onSidebarTogglerChange={options.onSidebarToggle || this.setSidebarToggle}
142
142
  cornerSlot={this.cornerSlot}
143
143
  paneClassName={options.paneClassName}
144
144
  PaneWrapper={options.PaneWrapper}