@teambit/code 1.0.536 → 1.0.538

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/code.section.tsx CHANGED
@@ -1,18 +1,26 @@
1
1
  import { Section } from '@teambit/component';
2
2
  import React from 'react';
3
3
  import { MenuWidgetIcon } from '@teambit/ui-foundation.ui.menu-widget-icon';
4
+ import { useWorkspaceMode } from '@teambit/workspace.ui.use-workspace-mode';
4
5
  import type { CodeUI } from './code.ui.runtime';
5
6
 
6
7
  export class CodeSection implements Section {
7
- constructor(private codeUI: CodeUI) {}
8
+ constructor(private codeUI: CodeUI, private pinned: boolean) { }
8
9
  route = {
9
10
  path: '~code/*',
10
11
  element: this.codeUI.getCodePage(),
11
12
  };
12
13
  navigationLink = {
13
14
  href: '~code',
14
- children: <MenuWidgetIcon icon="Code" tooltipContent="Code" />,
15
+ children: <CodeMenuWidget />,
15
16
  displayName: 'Code',
17
+ hideInMinimalMode: !this.pinned
16
18
  };
17
- order = 30;
19
+ order = this.pinned ? 0 : 30;
20
+ }
21
+
22
+ function CodeMenuWidget() {
23
+ const { isMinimal } = useWorkspaceMode();
24
+ if (!isMinimal) return null;
25
+ return <MenuWidgetIcon icon="Code" tooltipContent="Code" />;
18
26
  }
@@ -64,14 +64,15 @@ export class CodeUI {
64
64
  const { config } = harmony;
65
65
  const host = String(config.get('teambit.harmony/bit'));
66
66
  const ui = new CodeUI(host, fileIconSlot);
67
- const section = new CodeSection(ui);
68
-
67
+ const section = new CodeSection(ui, false);
68
+ const pinnedSection = new CodeSection(ui, true);
69
69
  // overrides the default tsx react icon with the typescript icon
70
70
  ui.registerEnvFileIcon([
71
71
  (fileName) => (isTsx.test(fileName) ? `${staticStorageUrl}/file-icons/file_type_typescript.svg` : undefined),
72
72
  ]);
73
73
  component.registerRoute([section.route]);
74
74
  component.registerWidget(section.navigationLink, section.order);
75
+ component.registerPinnedWidget(pinnedSection.navigationLink, pinnedSection.order);
75
76
  const codeCompare = new CodeCompareSection(ui);
76
77
  componentCompare.registerNavigation(codeCompare);
77
78
  componentCompare.registerRoutes([codeCompare.route]);
@@ -2,7 +2,8 @@ import { Section } from '@teambit/component';
2
2
  import type { CodeUI } from './code.ui.runtime';
3
3
  export declare class CodeSection implements Section {
4
4
  private codeUI;
5
- constructor(codeUI: CodeUI);
5
+ private pinned;
6
+ constructor(codeUI: CodeUI, pinned: boolean);
6
7
  route: {
7
8
  path: string;
8
9
  element: import("react/jsx-runtime").JSX.Element;
@@ -11,6 +12,7 @@ export declare class CodeSection implements Section {
11
12
  href: string;
12
13
  children: import("react/jsx-runtime").JSX.Element;
13
14
  displayName: string;
15
+ hideInMinimalMode: boolean;
14
16
  };
15
17
  order: number;
16
18
  }
@@ -18,28 +18,44 @@ function _uiFoundationUi() {
18
18
  };
19
19
  return data;
20
20
  }
21
+ function _workspaceUi() {
22
+ const data = require("@teambit/workspace.ui.use-workspace-mode");
23
+ _workspaceUi = function () {
24
+ return data;
25
+ };
26
+ return data;
27
+ }
21
28
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
29
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
23
30
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
24
31
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
25
32
  class CodeSection {
26
- constructor(codeUI) {
33
+ constructor(codeUI, pinned) {
27
34
  this.codeUI = codeUI;
35
+ this.pinned = pinned;
28
36
  _defineProperty(this, "route", {
29
37
  path: '~code/*',
30
38
  element: this.codeUI.getCodePage()
31
39
  });
32
40
  _defineProperty(this, "navigationLink", {
33
41
  href: '~code',
34
- children: /*#__PURE__*/_react().default.createElement(_uiFoundationUi().MenuWidgetIcon, {
35
- icon: "Code",
36
- tooltipContent: "Code"
37
- }),
38
- displayName: 'Code'
42
+ children: /*#__PURE__*/_react().default.createElement(CodeMenuWidget, null),
43
+ displayName: 'Code',
44
+ hideInMinimalMode: !this.pinned
39
45
  });
40
- _defineProperty(this, "order", 30);
46
+ _defineProperty(this, "order", this.pinned ? 0 : 30);
41
47
  }
42
48
  }
43
49
  exports.CodeSection = CodeSection;
50
+ function CodeMenuWidget() {
51
+ const {
52
+ isMinimal
53
+ } = (0, _workspaceUi().useWorkspaceMode)();
54
+ if (!isMinimal) return null;
55
+ return /*#__PURE__*/_react().default.createElement(_uiFoundationUi().MenuWidgetIcon, {
56
+ icon: "Code",
57
+ tooltipContent: "Code"
58
+ });
59
+ }
44
60
 
45
61
  //# sourceMappingURL=code.section.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireDefault","require","_uiFoundationUi","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","CodeSection","constructor","codeUI","path","element","getCodePage","href","children","createElement","MenuWidgetIcon","icon","tooltipContent","displayName","exports"],"sources":["code.section.tsx"],"sourcesContent":["import { Section } from '@teambit/component';\nimport React from 'react';\nimport { MenuWidgetIcon } from '@teambit/ui-foundation.ui.menu-widget-icon';\nimport type { CodeUI } from './code.ui.runtime';\n\nexport class CodeSection implements Section {\n constructor(private codeUI: CodeUI) {}\n route = {\n path: '~code/*',\n element: this.codeUI.getCodePage(),\n };\n navigationLink = {\n href: '~code',\n children: <MenuWidgetIcon icon=\"Code\" tooltipContent=\"Code\" />,\n displayName: 'Code',\n };\n order = 30;\n}\n"],"mappings":";;;;;;AACA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,gBAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,eAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA4E,SAAAC,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAGrE,MAAMgB,WAAW,CAAoB;EAC1CC,WAAWA,CAASC,MAAc,EAAE;IAAA,KAAhBA,MAAc,GAAdA,MAAc;IAAApB,eAAA,gBAC1B;MACNqB,IAAI,EAAE,SAAS;MACfC,OAAO,EAAE,IAAI,CAACF,MAAM,CAACG,WAAW,CAAC;IACnC,CAAC;IAAAvB,eAAA,yBACgB;MACfwB,IAAI,EAAE,OAAO;MACbC,QAAQ,eAAEjC,MAAA,GAAAO,OAAA,CAAA2B,aAAA,CAAC9B,eAAA,GAAA+B,cAAc;QAACC,IAAI,EAAC,MAAM;QAACC,cAAc,EAAC;MAAM,CAAE,CAAC;MAC9DC,WAAW,EAAE;IACf,CAAC;IAAA9B,eAAA,gBACO,EAAE;EAV2B;AAWvC;AAAC+B,OAAA,CAAAb,WAAA,GAAAA,WAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","data","_interopRequireDefault","require","_uiFoundationUi","_workspaceUi","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","CodeSection","constructor","codeUI","pinned","path","element","getCodePage","href","children","createElement","CodeMenuWidget","displayName","hideInMinimalMode","exports","isMinimal","useWorkspaceMode","MenuWidgetIcon","icon","tooltipContent"],"sources":["code.section.tsx"],"sourcesContent":["import { Section } from '@teambit/component';\nimport React from 'react';\nimport { MenuWidgetIcon } from '@teambit/ui-foundation.ui.menu-widget-icon';\nimport { useWorkspaceMode } from '@teambit/workspace.ui.use-workspace-mode';\nimport type { CodeUI } from './code.ui.runtime';\n\nexport class CodeSection implements Section {\n constructor(private codeUI: CodeUI, private pinned: boolean) { }\n route = {\n path: '~code/*',\n element: this.codeUI.getCodePage(),\n };\n navigationLink = {\n href: '~code',\n children: <CodeMenuWidget />,\n displayName: 'Code',\n hideInMinimalMode: !this.pinned\n };\n order = this.pinned ? 0 : 30;\n}\n\nfunction CodeMenuWidget() {\n const { isMinimal } = useWorkspaceMode();\n if (!isMinimal) return null;\n return <MenuWidgetIcon icon=\"Code\" tooltipContent=\"Code\" />;\n}\n"],"mappings":";;;;;;AACA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,gBAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,eAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,aAAA;EAAA,MAAAJ,IAAA,GAAAE,OAAA;EAAAE,YAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA4E,SAAAC,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAGrE,MAAMgB,WAAW,CAAoB;EAC1CC,WAAWA,CAASC,MAAc,EAAUC,MAAe,EAAE;IAAA,KAAzCD,MAAc,GAAdA,MAAc;IAAA,KAAUC,MAAe,GAAfA,MAAe;IAAArB,eAAA,gBACnD;MACNsB,IAAI,EAAE,SAAS;MACfC,OAAO,EAAE,IAAI,CAACH,MAAM,CAACI,WAAW,CAAC;IACnC,CAAC;IAAAxB,eAAA,yBACgB;MACfyB,IAAI,EAAE,OAAO;MACbC,QAAQ,eAAEnC,MAAA,GAAAQ,OAAA,CAAA4B,aAAA,CAACC,cAAc,MAAE,CAAC;MAC5BC,WAAW,EAAE,MAAM;MACnBC,iBAAiB,EAAE,CAAC,IAAI,CAACT;IAC3B,CAAC;IAAArB,eAAA,gBACO,IAAI,CAACqB,MAAM,GAAG,CAAC,GAAG,EAAE;EAXmC;AAYjE;AAACU,OAAA,CAAAb,WAAA,GAAAA,WAAA;AAED,SAASU,cAAcA,CAAA,EAAG;EACxB,MAAM;IAAEI;EAAU,CAAC,GAAG,IAAAC,+BAAgB,EAAC,CAAC;EACxC,IAAI,CAACD,SAAS,EAAE,OAAO,IAAI;EAC3B,oBAAOzC,MAAA,GAAAQ,OAAA,CAAA4B,aAAA,CAAChC,eAAA,GAAAuC,cAAc;IAACC,IAAI,EAAC,MAAM;IAACC,cAAc,EAAC;EAAM,CAAE,CAAC;AAC7D","ignoreList":[]}
@@ -130,12 +130,13 @@ class CodeUI {
130
130
  } = harmony;
131
131
  const host = String(config.get('teambit.harmony/bit'));
132
132
  const ui = new CodeUI(host, fileIconSlot);
133
- const section = new (_code2().CodeSection)(ui);
134
-
133
+ const section = new (_code2().CodeSection)(ui, false);
134
+ const pinnedSection = new (_code2().CodeSection)(ui, true);
135
135
  // overrides the default tsx react icon with the typescript icon
136
136
  ui.registerEnvFileIcon([fileName => isTsx.test(fileName) ? `${_baseUiConstants().staticStorageUrl}/file-icons/file_type_typescript.svg` : undefined]);
137
137
  component.registerRoute([section.route]);
138
138
  component.registerWidget(section.navigationLink, section.order);
139
+ component.registerPinnedWidget(pinnedSection.navigationLink, pinnedSection.order);
139
140
  const codeCompare = new (_codeUi4().CodeCompareSection)(ui);
140
141
  componentCompare.registerNavigation(codeCompare);
141
142
  componentCompare.registerRoutes([codeCompare.route]);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireDefault","require","_component","_ui","_codeUi","_harmony","_baseUiConstants","_codeUi2","_componentCompare","_codeUi3","_codeUi4","_code","_code2","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_defineProperty","_toPropertyKey","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","isTsx","CodeUI","constructor","host","fileIconSlot","props","createElement","CodePage","CodeCompareEditorProvider","CodeCompare","CodeEditorProvider","registerEnvFileIcon","icons","register","provider","component","componentCompare","_","harmony","config","get","ui","section","CodeSection","fileName","test","staticStorageUrl","undefined","registerRoute","route","registerWidget","navigationLink","order","codeCompare","CodeCompareSection","registerNavigation","registerRoutes","exports","ComponentAspect","ComponentCompareAspect","UIRuntime","Slot","withType","CodeAspect","addRuntime"],"sources":["code.ui.runtime.tsx"],"sourcesContent":["import React from 'react';\nimport { ComponentAspect, ComponentUI } from '@teambit/component';\nimport { UIRuntime } from '@teambit/ui';\nimport { CodeCompare, CodeCompareEditorProvider, type CodeCompareProps } from '@teambit/code.ui.code-compare';\nimport { Harmony, SlotRegistry, Slot } from '@teambit/harmony';\nimport type { FileIconMatch } from '@teambit/code.ui.utils.get-file-icon';\nimport { staticStorageUrl } from '@teambit/base-ui.constants.storage';\nimport { CodePage, CodePageProps } from '@teambit/code.ui.code-tab-page';\nimport { ComponentCompareUI, ComponentCompareAspect } from '@teambit/component-compare';\nimport { CodeEditorProvider } from '@teambit/code.ui.code-editor';\nimport { CodeCompareSection } from '@teambit/code.ui.code-compare-section';\nimport { CodeAspect } from './code.aspect';\nimport { CodeSection } from './code.section';\n\nconst isTsx = /\\.tsx$/;\n\nexport type FileIconSlot = SlotRegistry<FileIconMatch[]>;\n\n/**\n * Component code tab aspect. Presents the code tab page and allows to control the code tab and register specific icons for each file type.\n * @example CodeUI.registerEnvFileIcon([(fileName) => (/your-regexp/.test(fileName) ? 'your.icon.url' : undefined)])\n */\nexport class CodeUI {\n constructor(\n /**\n * register an icon for a specific file type. pass icon and a match method/regexp\n */\n private host: string,\n private fileIconSlot?: FileIconSlot\n ) {}\n\n getCodePage = (props?: Partial<CodePageProps>) => {\n return <CodePage {...(props || {})} fileIconSlot={this.fileIconSlot} host={this.host} />;\n };\n\n getCodeCompare = (props?: Partial<CodeCompareProps>) => {\n return (\n <CodeCompareEditorProvider>\n <CodeCompare {...(props || {})} fileIconSlot={this.fileIconSlot} />\n </CodeCompareEditorProvider>\n );\n };\n\n getCodeEditorProvider = () => CodeEditorProvider;\n getCodeDiffEditorProvider = () => CodeCompareEditorProvider;\n\n registerEnvFileIcon(icons: FileIconMatch[]) {\n this.fileIconSlot?.register(icons);\n return this;\n }\n\n static dependencies = [ComponentAspect, ComponentCompareAspect];\n\n static runtime = UIRuntime;\n\n static slots = [Slot.withType<string>()];\n\n static async provider(\n [component, componentCompare]: [ComponentUI, ComponentCompareUI],\n _,\n [fileIconSlot]: [FileIconSlot],\n harmony: Harmony\n ) {\n const { config } = harmony;\n const host = String(config.get('teambit.harmony/bit'));\n const ui = new CodeUI(host, fileIconSlot);\n const section = new CodeSection(ui);\n\n // overrides the default tsx react icon with the typescript icon\n ui.registerEnvFileIcon([\n (fileName) => (isTsx.test(fileName) ? `${staticStorageUrl}/file-icons/file_type_typescript.svg` : undefined),\n ]);\n component.registerRoute([section.route]);\n component.registerWidget(section.navigationLink, section.order);\n const codeCompare = new CodeCompareSection(ui);\n componentCompare.registerNavigation(codeCompare);\n componentCompare.registerRoutes([codeCompare.route]);\n return ui;\n }\n}\n\nCodeAspect.addRuntime(CodeUI);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","data","_interopRequireDefault","require","_component","_ui","_codeUi","_harmony","_baseUiConstants","_codeUi2","_componentCompare","_codeUi3","_codeUi4","_code","_code2","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_defineProperty","_toPropertyKey","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","isTsx","CodeUI","constructor","host","fileIconSlot","props","createElement","CodePage","CodeCompareEditorProvider","CodeCompare","CodeEditorProvider","registerEnvFileIcon","icons","register","provider","component","componentCompare","_","harmony","config","get","ui","section","CodeSection","pinnedSection","fileName","test","staticStorageUrl","undefined","registerRoute","route","registerWidget","navigationLink","order","registerPinnedWidget","codeCompare","CodeCompareSection","registerNavigation","registerRoutes","exports","ComponentAspect","ComponentCompareAspect","UIRuntime","Slot","withType","CodeAspect","addRuntime"],"sources":["code.ui.runtime.tsx"],"sourcesContent":["import React from 'react';\nimport { ComponentAspect, ComponentUI } from '@teambit/component';\nimport { UIRuntime } from '@teambit/ui';\nimport { CodeCompare, CodeCompareEditorProvider, type CodeCompareProps } from '@teambit/code.ui.code-compare';\nimport { Harmony, SlotRegistry, Slot } from '@teambit/harmony';\nimport type { FileIconMatch } from '@teambit/code.ui.utils.get-file-icon';\nimport { staticStorageUrl } from '@teambit/base-ui.constants.storage';\nimport { CodePage, CodePageProps } from '@teambit/code.ui.code-tab-page';\nimport { ComponentCompareUI, ComponentCompareAspect } from '@teambit/component-compare';\nimport { CodeEditorProvider } from '@teambit/code.ui.code-editor';\nimport { CodeCompareSection } from '@teambit/code.ui.code-compare-section';\nimport { CodeAspect } from './code.aspect';\nimport { CodeSection } from './code.section';\n\nconst isTsx = /\\.tsx$/;\n\nexport type FileIconSlot = SlotRegistry<FileIconMatch[]>;\n\n/**\n * Component code tab aspect. Presents the code tab page and allows to control the code tab and register specific icons for each file type.\n * @example CodeUI.registerEnvFileIcon([(fileName) => (/your-regexp/.test(fileName) ? 'your.icon.url' : undefined)])\n */\nexport class CodeUI {\n constructor(\n /**\n * register an icon for a specific file type. pass icon and a match method/regexp\n */\n private host: string,\n private fileIconSlot?: FileIconSlot\n ) {}\n\n getCodePage = (props?: Partial<CodePageProps>) => {\n return <CodePage {...(props || {})} fileIconSlot={this.fileIconSlot} host={this.host} />;\n };\n\n getCodeCompare = (props?: Partial<CodeCompareProps>) => {\n return (\n <CodeCompareEditorProvider>\n <CodeCompare {...(props || {})} fileIconSlot={this.fileIconSlot} />\n </CodeCompareEditorProvider>\n );\n };\n\n getCodeEditorProvider = () => CodeEditorProvider;\n getCodeDiffEditorProvider = () => CodeCompareEditorProvider;\n\n registerEnvFileIcon(icons: FileIconMatch[]) {\n this.fileIconSlot?.register(icons);\n return this;\n }\n\n static dependencies = [ComponentAspect, ComponentCompareAspect];\n\n static runtime = UIRuntime;\n\n static slots = [Slot.withType<string>()];\n\n static async provider(\n [component, componentCompare]: [ComponentUI, ComponentCompareUI],\n _,\n [fileIconSlot]: [FileIconSlot],\n harmony: Harmony\n ) {\n const { config } = harmony;\n const host = String(config.get('teambit.harmony/bit'));\n const ui = new CodeUI(host, fileIconSlot);\n const section = new CodeSection(ui, false);\n const pinnedSection = new CodeSection(ui, true);\n // overrides the default tsx react icon with the typescript icon\n ui.registerEnvFileIcon([\n (fileName) => (isTsx.test(fileName) ? `${staticStorageUrl}/file-icons/file_type_typescript.svg` : undefined),\n ]);\n component.registerRoute([section.route]);\n component.registerWidget(section.navigationLink, section.order);\n component.registerPinnedWidget(pinnedSection.navigationLink, pinnedSection.order);\n const codeCompare = new CodeCompareSection(ui);\n componentCompare.registerNavigation(codeCompare);\n componentCompare.registerRoutes([codeCompare.route]);\n return ui;\n }\n}\n\nCodeAspect.addRuntime(CodeUI);\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.component_code@1.0.536/dist/code.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.component_code@1.0.536/dist/code.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.component_code@1.0.538/dist/code.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.component_code@1.0.538/dist/code.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/code",
3
- "version": "1.0.536",
3
+ "version": "1.0.538",
4
4
  "homepage": "https://bit.cloud/teambit/component/code",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.component",
8
8
  "name": "code",
9
- "version": "1.0.536"
9
+ "version": "1.0.538"
10
10
  },
11
11
  "dependencies": {
12
12
  "@teambit/harmony": "0.4.6",
@@ -14,12 +14,13 @@
14
14
  "@teambit/base-ui.constants.storage": "1.0.0",
15
15
  "@teambit/code.ui.code-compare-section": "0.0.5",
16
16
  "@teambit/code.ui.utils.get-file-icon": "0.0.496",
17
- "@teambit/component": "1.0.536",
18
- "@teambit/code.ui.code-compare": "0.0.319",
17
+ "@teambit/component": "1.0.538",
18
+ "@teambit/workspace.ui.use-workspace-mode": "0.0.2",
19
+ "@teambit/code.ui.code-compare": "0.0.323",
19
20
  "@teambit/code.ui.code-editor": "0.0.13",
20
- "@teambit/code.ui.code-tab-page": "0.0.658",
21
- "@teambit/component-compare": "1.0.536",
22
- "@teambit/ui": "1.0.536"
21
+ "@teambit/code.ui.code-tab-page": "0.0.659",
22
+ "@teambit/component-compare": "1.0.538",
23
+ "@teambit/ui": "1.0.538"
23
24
  },
24
25
  "devDependencies": {
25
26
  "@types/mocha": "9.1.0",