@teambit/component-compare 0.0.1

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.
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import { Section } from '@teambit/component';
3
+ import { ComponentCompareAspects } from '@teambit/component.ui.compare';
4
+
5
+ export class AspectsCompareSection implements Section {
6
+ constructor(private host: string) {}
7
+
8
+ navigationLink = {
9
+ href: 'aspects',
10
+ children: 'Aspects',
11
+ order: 5,
12
+ };
13
+
14
+ route = {
15
+ path: 'aspects/*',
16
+ element: <ComponentCompareAspects host={this.host} />,
17
+ };
18
+ }
@@ -0,0 +1,10 @@
1
+ .widgetMenuIcon {
2
+ display: flex;
3
+ justify-content: center;
4
+ align-items: center;
5
+
6
+ img {
7
+ height: 16px;
8
+ width: 16px;
9
+ }
10
+ }
@@ -0,0 +1,16 @@
1
+ import React, { HTMLAttributes } from 'react';
2
+ import classNames from 'classnames';
3
+ import { Tooltip } from '@teambit/design.ui.tooltip';
4
+ import styles from './component-compare-widget.module.scss';
5
+
6
+ export type MenuWidgetIconProps = {} & HTMLAttributes<HTMLDivElement>;
7
+
8
+ export function ComponentCompareMenuWidget({ className, ...rest }: MenuWidgetIconProps) {
9
+ return (
10
+ <Tooltip placement="bottom" offset={[0, 15]} content={'Compare'}>
11
+ <div {...rest} className={classNames(styles.widgetMenuIcon, className)}>
12
+ <img src={'https://static.bit.dev/bit-icons/compare.svg'} />
13
+ </div>
14
+ </Tooltip>
15
+ );
16
+ }
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ import { Section } from '@teambit/component';
3
+ import { ComponentCompareMenuWidget } from './component-compare-widget';
4
+ import { ComponentCompareUI } from './component-compare.ui.runtime';
5
+
6
+ export class ComponentCompareSection implements Section {
7
+ constructor(private componentCompare: ComponentCompareUI) {}
8
+
9
+ navigationLink = {
10
+ href: '~compare',
11
+ displayName: 'Compare',
12
+ children: <ComponentCompareMenuWidget />,
13
+ };
14
+
15
+ route = {
16
+ path: '~compare/*',
17
+ element: this.componentCompare.getComponentComparePage(),
18
+ };
19
+
20
+ order = 35;
21
+ }
@@ -0,0 +1,68 @@
1
+ import { NavLinkProps } from '@teambit/base-ui.routing.nav-link';
2
+ import ComponentAspect, { ComponentUI } from '@teambit/component';
3
+ import { ComponentCompare } from '@teambit/component.ui.compare';
4
+ import { Harmony, Slot, SlotRegistry } from '@teambit/harmony';
5
+ import { UIRuntime } from '@teambit/ui';
6
+ import { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';
7
+ import React from 'react';
8
+ import { RouteProps } from 'react-router-dom';
9
+ import { AspectsCompareSection } from './component-compare-aspects.section';
10
+ import { ComponentCompareAspect } from './component-compare.aspect';
11
+ import { ComponentCompareSection } from './component-compare.section';
12
+
13
+ export type ComponentCompareNav = {
14
+ props: NavLinkProps;
15
+ order: number;
16
+ };
17
+
18
+ export type ComponentCompareNavSlot = SlotRegistry<Array<ComponentCompareNav>>;
19
+ export class ComponentCompareUI {
20
+ constructor(private host: string, private navSlot: ComponentCompareNavSlot, private routeSlot: RouteSlot) {}
21
+
22
+ static runtime = UIRuntime;
23
+
24
+ static slots = [Slot.withType<ComponentCompareNavSlot>(), Slot.withType<RouteSlot>()];
25
+
26
+ static dependencies = [ComponentAspect];
27
+
28
+ getComponentComparePage = () => (
29
+ <ComponentCompare navSlot={this.navSlot} routeSlot={this.routeSlot} host={this.host} />
30
+ );
31
+
32
+ registerNavigation(route: ComponentCompareNav | Array<ComponentCompareNav>) {
33
+ if (Array.isArray(route)) {
34
+ this.navSlot.register(route);
35
+ } else {
36
+ this.navSlot.register([route]);
37
+ }
38
+ return this;
39
+ }
40
+
41
+ registerRoutes(routes: RouteProps[]) {
42
+ this.routeSlot.register(routes);
43
+ return this;
44
+ }
45
+
46
+ static async provider(
47
+ [componentUi]: [ComponentUI],
48
+ _,
49
+ [navSlot, routeSlot]: [ComponentCompareNavSlot, RouteSlot],
50
+ harmony: Harmony
51
+ ) {
52
+ const { config } = harmony;
53
+ const host = String(config.get('teambit.harmony/bit'));
54
+ const componentCompareUI = new ComponentCompareUI(host, navSlot, routeSlot);
55
+ const componentCompareSection = new ComponentCompareSection(componentCompareUI);
56
+ componentUi.registerRoute([componentCompareSection.route]);
57
+ componentUi.registerWidget(componentCompareSection.navigationLink, componentCompareSection.order);
58
+ const aspectCompareSection = new AspectsCompareSection(host);
59
+ componentCompareUI.registerNavigation({
60
+ props: aspectCompareSection.navigationLink,
61
+ order: aspectCompareSection.navigationLink.order,
62
+ });
63
+ componentCompareUI.registerRoutes([aspectCompareSection.route]);
64
+ return componentCompareUI;
65
+ }
66
+ }
67
+
68
+ ComponentCompareAspect.addRuntime(ComponentCompareUI);
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ import { Section } from '@teambit/component';
3
+ export declare class AspectsCompareSection implements Section {
4
+ private host;
5
+ constructor(host: string);
6
+ navigationLink: {
7
+ href: string;
8
+ children: string;
9
+ order: number;
10
+ };
11
+ route: {
12
+ path: string;
13
+ element: JSX.Element;
14
+ };
15
+ }
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.AspectsCompareSection = void 0;
9
+
10
+ function _defineProperty2() {
11
+ const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
+
13
+ _defineProperty2 = function () {
14
+ return data;
15
+ };
16
+
17
+ return data;
18
+ }
19
+
20
+ function _react() {
21
+ const data = _interopRequireDefault(require("react"));
22
+
23
+ _react = function () {
24
+ return data;
25
+ };
26
+
27
+ return data;
28
+ }
29
+
30
+ function _componentUi() {
31
+ const data = require("@teambit/component.ui.compare");
32
+
33
+ _componentUi = function () {
34
+ return data;
35
+ };
36
+
37
+ return data;
38
+ }
39
+
40
+ class AspectsCompareSection {
41
+ constructor(host) {
42
+ this.host = host;
43
+ (0, _defineProperty2().default)(this, "navigationLink", {
44
+ href: 'aspects',
45
+ children: 'Aspects',
46
+ order: 5
47
+ });
48
+ (0, _defineProperty2().default)(this, "route", {
49
+ path: 'aspects/*',
50
+ element: /*#__PURE__*/_react().default.createElement(_componentUi().ComponentCompareAspects, {
51
+ host: this.host
52
+ })
53
+ });
54
+ }
55
+
56
+ }
57
+
58
+ exports.AspectsCompareSection = AspectsCompareSection;
59
+
60
+ //# sourceMappingURL=component-compare-aspects.section.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AspectsCompareSection","constructor","host","href","children","order","path","element"],"sources":["component-compare-aspects.section.tsx"],"sourcesContent":["import React from 'react';\nimport { Section } from '@teambit/component';\nimport { ComponentCompareAspects } from '@teambit/component.ui.compare';\n\nexport class AspectsCompareSection implements Section {\n constructor(private host: string) {}\n\n navigationLink = {\n href: 'aspects',\n children: 'Aspects',\n order: 5,\n };\n\n route = {\n path: 'aspects/*',\n element: <ComponentCompareAspects host={this.host} />,\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,qBAAN,CAA+C;EACpDC,WAAW,CAASC,IAAT,EAAuB;IAAA,KAAdA,IAAc,GAAdA,IAAc;IAAA,wDAEjB;MACfC,IAAI,EAAE,SADS;MAEfC,QAAQ,EAAE,SAFK;MAGfC,KAAK,EAAE;IAHQ,CAFiB;IAAA,+CAQ1B;MACNC,IAAI,EAAE,WADA;MAENC,OAAO,eAAE,+BAAC,sCAAD;QAAyB,IAAI,EAAE,KAAKL;MAApC;IAFH,CAR0B;EAAE;;AADgB"}
@@ -0,0 +1,3 @@
1
+ import { HTMLAttributes } from 'react';
2
+ export declare type MenuWidgetIconProps = {} & HTMLAttributes<HTMLDivElement>;
3
+ export declare function ComponentCompareMenuWidget({ className, ...rest }: MenuWidgetIconProps): JSX.Element;
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.ComponentCompareMenuWidget = ComponentCompareMenuWidget;
9
+
10
+ function _extends2() {
11
+ const data = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
12
+
13
+ _extends2 = function () {
14
+ return data;
15
+ };
16
+
17
+ return data;
18
+ }
19
+
20
+ function _objectWithoutProperties2() {
21
+ const data = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
22
+
23
+ _objectWithoutProperties2 = function () {
24
+ return data;
25
+ };
26
+
27
+ return data;
28
+ }
29
+
30
+ function _react() {
31
+ const data = _interopRequireDefault(require("react"));
32
+
33
+ _react = function () {
34
+ return data;
35
+ };
36
+
37
+ return data;
38
+ }
39
+
40
+ function _classnames() {
41
+ const data = _interopRequireDefault(require("classnames"));
42
+
43
+ _classnames = function () {
44
+ return data;
45
+ };
46
+
47
+ return data;
48
+ }
49
+
50
+ function _designUi() {
51
+ const data = require("@teambit/design.ui.tooltip");
52
+
53
+ _designUi = function () {
54
+ return data;
55
+ };
56
+
57
+ return data;
58
+ }
59
+
60
+ function _componentCompareWidgetModule() {
61
+ const data = _interopRequireDefault(require("./component-compare-widget.module.scss"));
62
+
63
+ _componentCompareWidgetModule = function () {
64
+ return data;
65
+ };
66
+
67
+ return data;
68
+ }
69
+
70
+ function ComponentCompareMenuWidget(_ref) {
71
+ let {
72
+ className
73
+ } = _ref,
74
+ rest = (0, _objectWithoutProperties2().default)(_ref, ["className"]);
75
+ return /*#__PURE__*/_react().default.createElement(_designUi().Tooltip, {
76
+ placement: "bottom",
77
+ offset: [0, 15],
78
+ content: 'Compare'
79
+ }, /*#__PURE__*/_react().default.createElement("div", (0, _extends2().default)({}, rest, {
80
+ className: (0, _classnames().default)(_componentCompareWidgetModule().default.widgetMenuIcon, className)
81
+ }), /*#__PURE__*/_react().default.createElement("img", {
82
+ src: 'https://static.bit.dev/bit-icons/compare.svg'
83
+ })));
84
+ }
85
+
86
+ //# sourceMappingURL=component-compare-widget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ComponentCompareMenuWidget","className","rest","classNames","styles","widgetMenuIcon"],"sources":["component-compare-widget.tsx"],"sourcesContent":["import React, { HTMLAttributes } from 'react';\nimport classNames from 'classnames';\nimport { Tooltip } from '@teambit/design.ui.tooltip';\nimport styles from './component-compare-widget.module.scss';\n\nexport type MenuWidgetIconProps = {} & HTMLAttributes<HTMLDivElement>;\n\nexport function ComponentCompareMenuWidget({ className, ...rest }: MenuWidgetIconProps) {\n return (\n <Tooltip placement=\"bottom\" offset={[0, 15]} content={'Compare'}>\n <div {...rest} className={classNames(styles.widgetMenuIcon, className)}>\n <img src={'https://static.bit.dev/bit-icons/compare.svg'} />\n </div>\n </Tooltip>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAIO,SAASA,0BAAT,OAAiF;EAAA,IAA7C;IAAEC;EAAF,CAA6C;EAAA,IAA7BC,IAA6B;EACtF,oBACE,+BAAC,mBAAD;IAAS,SAAS,EAAC,QAAnB;IAA4B,MAAM,EAAE,CAAC,CAAD,EAAI,EAAJ,CAApC;IAA6C,OAAO,EAAE;EAAtD,gBACE,mEAASA,IAAT;IAAe,SAAS,EAAE,IAAAC,qBAAA,EAAWC,uCAAA,CAAOC,cAAlB,EAAkCJ,SAAlC;EAA1B,iBACE;IAAK,GAAG,EAAE;EAAV,EADF,CADF,CADF;AAOD"}
@@ -0,0 +1,10 @@
1
+ .widgetMenuIcon {
2
+ display: flex;
3
+ justify-content: center;
4
+ align-items: center;
5
+
6
+ img {
7
+ height: 16px;
8
+ width: 16px;
9
+ }
10
+ }
@@ -0,0 +1,2 @@
1
+ import { Aspect } from '@teambit/harmony';
2
+ export declare const ComponentCompareAspect: Aspect;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ComponentCompareAspect = void 0;
7
+
8
+ function _harmony() {
9
+ const data = require("@teambit/harmony");
10
+
11
+ _harmony = function () {
12
+ return data;
13
+ };
14
+
15
+ return data;
16
+ }
17
+
18
+ const ComponentCompareAspect = _harmony().Aspect.create({
19
+ id: 'teambit.component/component-compare'
20
+ });
21
+
22
+ exports.ComponentCompareAspect = ComponentCompareAspect;
23
+
24
+ //# sourceMappingURL=component-compare.aspect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ComponentCompareAspect","Aspect","create","id"],"sources":["component-compare.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const ComponentCompareAspect = Aspect.create({\n id: 'teambit.component/component-compare',\n});\n"],"mappings":";;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,sBAAsB,GAAGC,iBAAA,CAAOC,MAAP,CAAc;EAClDC,EAAE,EAAE;AAD8C,CAAd,CAA/B"}
@@ -0,0 +1,17 @@
1
+ /// <reference types="react" />
2
+ import { Section } from '@teambit/component';
3
+ import { ComponentCompareUI } from './component-compare.ui.runtime';
4
+ export declare class ComponentCompareSection implements Section {
5
+ private componentCompare;
6
+ constructor(componentCompare: ComponentCompareUI);
7
+ navigationLink: {
8
+ href: string;
9
+ displayName: string;
10
+ children: JSX.Element;
11
+ };
12
+ route: {
13
+ path: string;
14
+ element: JSX.Element;
15
+ };
16
+ order: number;
17
+ }
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.ComponentCompareSection = void 0;
9
+
10
+ function _defineProperty2() {
11
+ const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
+
13
+ _defineProperty2 = function () {
14
+ return data;
15
+ };
16
+
17
+ return data;
18
+ }
19
+
20
+ function _react() {
21
+ const data = _interopRequireDefault(require("react"));
22
+
23
+ _react = function () {
24
+ return data;
25
+ };
26
+
27
+ return data;
28
+ }
29
+
30
+ function _componentCompareWidget() {
31
+ const data = require("./component-compare-widget");
32
+
33
+ _componentCompareWidget = function () {
34
+ return data;
35
+ };
36
+
37
+ return data;
38
+ }
39
+
40
+ class ComponentCompareSection {
41
+ constructor(componentCompare) {
42
+ this.componentCompare = componentCompare;
43
+ (0, _defineProperty2().default)(this, "navigationLink", {
44
+ href: '~compare',
45
+ displayName: 'Compare',
46
+ children: /*#__PURE__*/_react().default.createElement(_componentCompareWidget().ComponentCompareMenuWidget, null)
47
+ });
48
+ (0, _defineProperty2().default)(this, "route", {
49
+ path: '~compare/*',
50
+ element: this.componentCompare.getComponentComparePage()
51
+ });
52
+ (0, _defineProperty2().default)(this, "order", 35);
53
+ }
54
+
55
+ }
56
+
57
+ exports.ComponentCompareSection = ComponentCompareSection;
58
+
59
+ //# sourceMappingURL=component-compare.section.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ComponentCompareSection","constructor","componentCompare","href","displayName","children","path","element","getComponentComparePage"],"sources":["component-compare.section.tsx"],"sourcesContent":["import React from 'react';\nimport { Section } from '@teambit/component';\nimport { ComponentCompareMenuWidget } from './component-compare-widget';\nimport { ComponentCompareUI } from './component-compare.ui.runtime';\n\nexport class ComponentCompareSection implements Section {\n constructor(private componentCompare: ComponentCompareUI) {}\n\n navigationLink = {\n href: '~compare',\n displayName: 'Compare',\n children: <ComponentCompareMenuWidget />,\n };\n\n route = {\n path: '~compare/*',\n element: this.componentCompare.getComponentComparePage(),\n };\n\n order = 35;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAGO,MAAMA,uBAAN,CAAiD;EACtDC,WAAW,CAASC,gBAAT,EAA+C;IAAA,KAAtCA,gBAAsC,GAAtCA,gBAAsC;IAAA,wDAEzC;MACfC,IAAI,EAAE,UADS;MAEfC,WAAW,EAAE,SAFE;MAGfC,QAAQ,eAAE,+BAAC,oDAAD;IAHK,CAFyC;IAAA,+CAQlD;MACNC,IAAI,EAAE,YADA;MAENC,OAAO,EAAE,KAAKL,gBAAL,CAAsBM,uBAAtB;IAFH,CARkD;IAAA,+CAalD,EAbkD;EAAE;;AADN"}
@@ -0,0 +1,24 @@
1
+ /// <reference types="react" />
2
+ import { NavLinkProps } from '@teambit/base-ui.routing.nav-link';
3
+ import { ComponentUI } from '@teambit/component';
4
+ import { Harmony, SlotRegistry } from '@teambit/harmony';
5
+ import { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';
6
+ import { RouteProps } from 'react-router-dom';
7
+ export declare type ComponentCompareNav = {
8
+ props: NavLinkProps;
9
+ order: number;
10
+ };
11
+ export declare type ComponentCompareNavSlot = SlotRegistry<Array<ComponentCompareNav>>;
12
+ export declare class ComponentCompareUI {
13
+ private host;
14
+ private navSlot;
15
+ private routeSlot;
16
+ constructor(host: string, navSlot: ComponentCompareNavSlot, routeSlot: RouteSlot);
17
+ static runtime: import("@teambit/harmony").RuntimeDefinition;
18
+ static slots: (((registerFn: () => string) => SlotRegistry<ComponentCompareNavSlot>) | ((registerFn: () => string) => SlotRegistry<RouteSlot>))[];
19
+ static dependencies: import("@teambit/harmony").Aspect[];
20
+ getComponentComparePage: () => JSX.Element;
21
+ registerNavigation(route: ComponentCompareNav | Array<ComponentCompareNav>): this;
22
+ registerRoutes(routes: RouteProps[]): this;
23
+ static provider([componentUi]: [ComponentUI], _: any, [navSlot, routeSlot]: [ComponentCompareNavSlot, RouteSlot], harmony: Harmony): Promise<ComponentCompareUI>;
24
+ }
@@ -0,0 +1,158 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ require("core-js/modules/es.array.iterator.js");
6
+
7
+ require("core-js/modules/es.promise.js");
8
+
9
+ Object.defineProperty(exports, "__esModule", {
10
+ value: true
11
+ });
12
+ exports.ComponentCompareUI = void 0;
13
+
14
+ function _defineProperty2() {
15
+ const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
+
17
+ _defineProperty2 = function () {
18
+ return data;
19
+ };
20
+
21
+ return data;
22
+ }
23
+
24
+ function _component() {
25
+ const data = _interopRequireDefault(require("@teambit/component"));
26
+
27
+ _component = function () {
28
+ return data;
29
+ };
30
+
31
+ return data;
32
+ }
33
+
34
+ function _componentUi() {
35
+ const data = require("@teambit/component.ui.compare");
36
+
37
+ _componentUi = function () {
38
+ return data;
39
+ };
40
+
41
+ return data;
42
+ }
43
+
44
+ function _harmony() {
45
+ const data = require("@teambit/harmony");
46
+
47
+ _harmony = function () {
48
+ return data;
49
+ };
50
+
51
+ return data;
52
+ }
53
+
54
+ function _ui() {
55
+ const data = require("@teambit/ui");
56
+
57
+ _ui = function () {
58
+ return data;
59
+ };
60
+
61
+ return data;
62
+ }
63
+
64
+ function _react() {
65
+ const data = _interopRequireDefault(require("react"));
66
+
67
+ _react = function () {
68
+ return data;
69
+ };
70
+
71
+ return data;
72
+ }
73
+
74
+ function _componentCompareAspects() {
75
+ const data = require("./component-compare-aspects.section");
76
+
77
+ _componentCompareAspects = function () {
78
+ return data;
79
+ };
80
+
81
+ return data;
82
+ }
83
+
84
+ function _componentCompare() {
85
+ const data = require("./component-compare.aspect");
86
+
87
+ _componentCompare = function () {
88
+ return data;
89
+ };
90
+
91
+ return data;
92
+ }
93
+
94
+ function _componentCompare2() {
95
+ const data = require("./component-compare.section");
96
+
97
+ _componentCompare2 = function () {
98
+ return data;
99
+ };
100
+
101
+ return data;
102
+ }
103
+
104
+ class ComponentCompareUI {
105
+ constructor(host, navSlot, routeSlot) {
106
+ this.host = host;
107
+ this.navSlot = navSlot;
108
+ this.routeSlot = routeSlot;
109
+ (0, _defineProperty2().default)(this, "getComponentComparePage", () => /*#__PURE__*/_react().default.createElement(_componentUi().ComponentCompare, {
110
+ navSlot: this.navSlot,
111
+ routeSlot: this.routeSlot,
112
+ host: this.host
113
+ }));
114
+ }
115
+
116
+ registerNavigation(route) {
117
+ if (Array.isArray(route)) {
118
+ this.navSlot.register(route);
119
+ } else {
120
+ this.navSlot.register([route]);
121
+ }
122
+
123
+ return this;
124
+ }
125
+
126
+ registerRoutes(routes) {
127
+ this.routeSlot.register(routes);
128
+ return this;
129
+ }
130
+
131
+ static async provider([componentUi], _, [navSlot, routeSlot], harmony) {
132
+ const {
133
+ config
134
+ } = harmony;
135
+ const host = String(config.get('teambit.harmony/bit'));
136
+ const componentCompareUI = new ComponentCompareUI(host, navSlot, routeSlot);
137
+ const componentCompareSection = new (_componentCompare2().ComponentCompareSection)(componentCompareUI);
138
+ componentUi.registerRoute([componentCompareSection.route]);
139
+ componentUi.registerWidget(componentCompareSection.navigationLink, componentCompareSection.order);
140
+ const aspectCompareSection = new (_componentCompareAspects().AspectsCompareSection)(host);
141
+ componentCompareUI.registerNavigation({
142
+ props: aspectCompareSection.navigationLink,
143
+ order: aspectCompareSection.navigationLink.order
144
+ });
145
+ componentCompareUI.registerRoutes([aspectCompareSection.route]);
146
+ return componentCompareUI;
147
+ }
148
+
149
+ }
150
+
151
+ exports.ComponentCompareUI = ComponentCompareUI;
152
+ (0, _defineProperty2().default)(ComponentCompareUI, "runtime", _ui().UIRuntime);
153
+ (0, _defineProperty2().default)(ComponentCompareUI, "slots", [_harmony().Slot.withType(), _harmony().Slot.withType()]);
154
+ (0, _defineProperty2().default)(ComponentCompareUI, "dependencies", [_component().default]);
155
+
156
+ _componentCompare().ComponentCompareAspect.addRuntime(ComponentCompareUI);
157
+
158
+ //# sourceMappingURL=component-compare.ui.runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ComponentCompareUI","constructor","host","navSlot","routeSlot","registerNavigation","route","Array","isArray","register","registerRoutes","routes","provider","componentUi","_","harmony","config","String","get","componentCompareUI","componentCompareSection","ComponentCompareSection","registerRoute","registerWidget","navigationLink","order","aspectCompareSection","AspectsCompareSection","props","UIRuntime","Slot","withType","ComponentAspect","ComponentCompareAspect","addRuntime"],"sources":["component-compare.ui.runtime.tsx"],"sourcesContent":["import { NavLinkProps } from '@teambit/base-ui.routing.nav-link';\nimport ComponentAspect, { ComponentUI } from '@teambit/component';\nimport { ComponentCompare } from '@teambit/component.ui.compare';\nimport { Harmony, Slot, SlotRegistry } from '@teambit/harmony';\nimport { UIRuntime } from '@teambit/ui';\nimport { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport React from 'react';\nimport { RouteProps } from 'react-router-dom';\nimport { AspectsCompareSection } from './component-compare-aspects.section';\nimport { ComponentCompareAspect } from './component-compare.aspect';\nimport { ComponentCompareSection } from './component-compare.section';\n\nexport type ComponentCompareNav = {\n props: NavLinkProps;\n order: number;\n};\n\nexport type ComponentCompareNavSlot = SlotRegistry<Array<ComponentCompareNav>>;\nexport class ComponentCompareUI {\n constructor(private host: string, private navSlot: ComponentCompareNavSlot, private routeSlot: RouteSlot) {}\n\n static runtime = UIRuntime;\n\n static slots = [Slot.withType<ComponentCompareNavSlot>(), Slot.withType<RouteSlot>()];\n\n static dependencies = [ComponentAspect];\n\n getComponentComparePage = () => (\n <ComponentCompare navSlot={this.navSlot} routeSlot={this.routeSlot} host={this.host} />\n );\n\n registerNavigation(route: ComponentCompareNav | Array<ComponentCompareNav>) {\n if (Array.isArray(route)) {\n this.navSlot.register(route);\n } else {\n this.navSlot.register([route]);\n }\n return this;\n }\n\n registerRoutes(routes: RouteProps[]) {\n this.routeSlot.register(routes);\n return this;\n }\n\n static async provider(\n [componentUi]: [ComponentUI],\n _,\n [navSlot, routeSlot]: [ComponentCompareNavSlot, RouteSlot],\n harmony: Harmony\n ) {\n const { config } = harmony;\n const host = String(config.get('teambit.harmony/bit'));\n const componentCompareUI = new ComponentCompareUI(host, navSlot, routeSlot);\n const componentCompareSection = new ComponentCompareSection(componentCompareUI);\n componentUi.registerRoute([componentCompareSection.route]);\n componentUi.registerWidget(componentCompareSection.navigationLink, componentCompareSection.order);\n const aspectCompareSection = new AspectsCompareSection(host);\n componentCompareUI.registerNavigation({\n props: aspectCompareSection.navigationLink,\n order: aspectCompareSection.navigationLink.order,\n });\n componentCompareUI.registerRoutes([aspectCompareSection.route]);\n return componentCompareUI;\n }\n}\n\nComponentCompareAspect.addRuntime(ComponentCompareUI);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAQO,MAAMA,kBAAN,CAAyB;EAC9BC,WAAW,CAASC,IAAT,EAA+BC,OAA/B,EAAyEC,SAAzE,EAA+F;IAAA,KAAtFF,IAAsF,GAAtFA,IAAsF;IAAA,KAAhEC,OAAgE,GAAhEA,OAAgE;IAAA,KAAtBC,SAAsB,GAAtBA,SAAsB;IAAA,iEAQhF,mBACxB,+BAAC,+BAAD;MAAkB,OAAO,EAAE,KAAKD,OAAhC;MAAyC,SAAS,EAAE,KAAKC,SAAzD;MAAoE,IAAI,EAAE,KAAKF;IAA/E,EATwG;EAAE;;EAY5GG,kBAAkB,CAACC,KAAD,EAA0D;IAC1E,IAAIC,KAAK,CAACC,OAAN,CAAcF,KAAd,CAAJ,EAA0B;MACxB,KAAKH,OAAL,CAAaM,QAAb,CAAsBH,KAAtB;IACD,CAFD,MAEO;MACL,KAAKH,OAAL,CAAaM,QAAb,CAAsB,CAACH,KAAD,CAAtB;IACD;;IACD,OAAO,IAAP;EACD;;EAEDI,cAAc,CAACC,MAAD,EAAuB;IACnC,KAAKP,SAAL,CAAeK,QAAf,CAAwBE,MAAxB;IACA,OAAO,IAAP;EACD;;EAEoB,aAARC,QAAQ,CACnB,CAACC,WAAD,CADmB,EAEnBC,CAFmB,EAGnB,CAACX,OAAD,EAAUC,SAAV,CAHmB,EAInBW,OAJmB,EAKnB;IACA,MAAM;MAAEC;IAAF,IAAaD,OAAnB;IACA,MAAMb,IAAI,GAAGe,MAAM,CAACD,MAAM,CAACE,GAAP,CAAW,qBAAX,CAAD,CAAnB;IACA,MAAMC,kBAAkB,GAAG,IAAInB,kBAAJ,CAAuBE,IAAvB,EAA6BC,OAA7B,EAAsCC,SAAtC,CAA3B;IACA,MAAMgB,uBAAuB,GAAG,KAAIC,4CAAJ,EAA4BF,kBAA5B,CAAhC;IACAN,WAAW,CAACS,aAAZ,CAA0B,CAACF,uBAAuB,CAACd,KAAzB,CAA1B;IACAO,WAAW,CAACU,cAAZ,CAA2BH,uBAAuB,CAACI,cAAnD,EAAmEJ,uBAAuB,CAACK,KAA3F;IACA,MAAMC,oBAAoB,GAAG,KAAIC,gDAAJ,EAA0BzB,IAA1B,CAA7B;IACAiB,kBAAkB,CAACd,kBAAnB,CAAsC;MACpCuB,KAAK,EAAEF,oBAAoB,CAACF,cADQ;MAEpCC,KAAK,EAAEC,oBAAoB,CAACF,cAArB,CAAoCC;IAFP,CAAtC;IAIAN,kBAAkB,CAACT,cAAnB,CAAkC,CAACgB,oBAAoB,CAACpB,KAAtB,CAAlC;IACA,OAAOa,kBAAP;EACD;;AA9C6B;;;gCAAnBnB,kB,aAGM6B,e;gCAHN7B,kB,WAKI,CAAC8B,eAAA,CAAKC,QAAL,EAAD,EAA2CD,eAAA,CAAKC,QAAL,EAA3C,C;gCALJ/B,kB,kBAOW,CAACgC,oBAAD,C;;AA0CxBC,0CAAA,CAAuBC,UAAvB,CAAkClC,kBAAlC"}
@@ -0,0 +1,5 @@
1
+ import { ComponentCompareAspect } from './component-compare.aspect';
2
+ export { ComponentCompareSection } from './component-compare.section';
3
+ export type { ComponentCompareUI, ComponentCompareNavSlot, ComponentCompareNav } from './component-compare.ui.runtime';
4
+ export { ComponentCompareAspect };
5
+ export default ComponentCompareAspect;
package/dist/index.js ADDED
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "ComponentCompareAspect", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _componentCompare().ComponentCompareAspect;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "ComponentCompareSection", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _componentCompare2().ComponentCompareSection;
16
+ }
17
+ });
18
+ exports.default = void 0;
19
+
20
+ function _componentCompare() {
21
+ const data = require("./component-compare.aspect");
22
+
23
+ _componentCompare = function () {
24
+ return data;
25
+ };
26
+
27
+ return data;
28
+ }
29
+
30
+ function _componentCompare2() {
31
+ const data = require("./component-compare.section");
32
+
33
+ _componentCompare2 = function () {
34
+ return data;
35
+ };
36
+
37
+ return data;
38
+ }
39
+
40
+ var _default = _componentCompare().ComponentCompareAspect;
41
+
42
+ exports.default = _default;
43
+
44
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ComponentCompareAspect"],"sources":["index.ts"],"sourcesContent":["import { ComponentCompareAspect } from './component-compare.aspect';\n\nexport { ComponentCompareSection } from './component-compare.section';\nexport type { ComponentCompareUI, ComponentCompareNavSlot, ComponentCompareNav } from './component-compare.ui.runtime';\nexport { ComponentCompareAspect };\nexport default ComponentCompareAspect;\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;eAGeA,0C"}
package/package.json ADDED
@@ -0,0 +1,88 @@
1
+ {
2
+ "name": "@teambit/component-compare",
3
+ "version": "0.0.1",
4
+ "main": "dist/index.js",
5
+ "componentId": {
6
+ "scope": "teambit.component",
7
+ "name": "component-compare",
8
+ "version": "0.0.1"
9
+ },
10
+ "dependencies": {
11
+ "classnames": "2.2.6",
12
+ "@babel/runtime": "7.12.18",
13
+ "core-js": "^3.0.0",
14
+ "@teambit/harmony": "0.3.3",
15
+ "@teambit/base-ui.routing.nav-link": "1.0.0",
16
+ "@teambit/component.ui.compare": "0.0.1",
17
+ "@teambit/component": "0.0.753",
18
+ "@teambit/design.ui.tooltip": "0.0.352",
19
+ "@teambit/ui-foundation.ui.react-router.slot-router": "0.0.490",
20
+ "@teambit/ui": "0.0.753"
21
+ },
22
+ "devDependencies": {
23
+ "@types/react": "^17.0.8",
24
+ "@types/classnames": "2.2.11",
25
+ "@types/mocha": "9.1.0",
26
+ "@types/testing-library__jest-dom": "5.9.5",
27
+ "@types/jest": "^26.0.0",
28
+ "@types/react-dom": "^17.0.5",
29
+ "@types/node": "12.20.4"
30
+ },
31
+ "peerDependencies": {
32
+ "react-router-dom": "^6.0.0",
33
+ "@teambit/legacy": "1.0.277",
34
+ "react-dom": "^16.8.0 || ^17.0.0",
35
+ "react": "^16.8.0 || ^17.0.0"
36
+ },
37
+ "license": "Apache-2.0",
38
+ "bit": {
39
+ "bindingPrefix": "@teambit",
40
+ "env": {},
41
+ "overrides": {
42
+ "dependencies": {
43
+ "@teambit/legacy": "-",
44
+ "@babel/runtime": "7.12.18",
45
+ "core-js": "^3.0.0",
46
+ "react-dom": "-",
47
+ "react": "-"
48
+ },
49
+ "devDependencies": {
50
+ "@teambit/legacy": "-",
51
+ "@types/mocha": "9.1.0",
52
+ "@types/testing-library__jest-dom": "5.9.5",
53
+ "@types/jest": "^26.0.0",
54
+ "@types/react-dom": "^17.0.5",
55
+ "@types/react": "^17.0.8",
56
+ "@types/node": "12.20.4",
57
+ "react-dom": "-",
58
+ "react": "-"
59
+ },
60
+ "peerDependencies": {
61
+ "@teambit/legacy": "1.0.277",
62
+ "react-dom": "^16.8.0 || ^17.0.0",
63
+ "react": "^16.8.0 || ^17.0.0"
64
+ }
65
+ }
66
+ },
67
+ "private": false,
68
+ "engines": {
69
+ "node": ">=12.22.0"
70
+ },
71
+ "repository": {
72
+ "type": "git",
73
+ "url": "https://github.com/teambit/bit"
74
+ },
75
+ "keywords": [
76
+ "bit",
77
+ "bit-aspect",
78
+ "components",
79
+ "collaboration",
80
+ "web",
81
+ "react",
82
+ "react-components",
83
+ "angular",
84
+ "angular-components",
85
+ "vue",
86
+ "vue-components"
87
+ ]
88
+ }
@@ -0,0 +1 @@
1
+
package/tsconfig.json ADDED
@@ -0,0 +1,40 @@
1
+ {
2
+ "compilerOptions": {
3
+ "lib": [
4
+ "es2019",
5
+ "DOM",
6
+ "ES6",
7
+ "DOM.Iterable",
8
+ "ScriptHost"
9
+ ],
10
+ "target": "es2015",
11
+ "module": "commonjs",
12
+ "jsx": "react",
13
+ "allowJs": true,
14
+ "composite": true,
15
+ "declaration": true,
16
+ "sourceMap": true,
17
+ "skipLibCheck": true,
18
+ "experimentalDecorators": true,
19
+ "outDir": "dist",
20
+ "moduleResolution": "node",
21
+ "esModuleInterop": true,
22
+ "rootDir": ".",
23
+ "resolveJsonModule": true,
24
+ "emitDeclarationOnly": true,
25
+ "emitDecoratorMetadata": true,
26
+ "allowSyntheticDefaultImports": true,
27
+ "strictPropertyInitialization": false,
28
+ "strict": true,
29
+ "noImplicitAny": false,
30
+ "preserveConstEnums": true
31
+ },
32
+ "exclude": [
33
+ "dist",
34
+ "package.json"
35
+ ],
36
+ "include": [
37
+ "**/*",
38
+ "**/*.json"
39
+ ]
40
+ }
@@ -0,0 +1,29 @@
1
+ declare module '*.png' {
2
+ const value: any;
3
+ export = value;
4
+ }
5
+ declare module '*.svg' {
6
+ import type { FunctionComponent, SVGProps } from 'react';
7
+
8
+ export const ReactComponent: FunctionComponent<SVGProps<SVGSVGElement> & { title?: string }>;
9
+ const src: string;
10
+ export default src;
11
+ }
12
+
13
+ // @TODO Gilad
14
+ declare module '*.jpg' {
15
+ const value: any;
16
+ export = value;
17
+ }
18
+ declare module '*.jpeg' {
19
+ const value: any;
20
+ export = value;
21
+ }
22
+ declare module '*.gif' {
23
+ const value: any;
24
+ export = value;
25
+ }
26
+ declare module '*.bmp' {
27
+ const value: any;
28
+ export = value;
29
+ }
@@ -0,0 +1,42 @@
1
+ declare module '*.module.css' {
2
+ const classes: { readonly [key: string]: string };
3
+ export default classes;
4
+ }
5
+ declare module '*.module.scss' {
6
+ const classes: { readonly [key: string]: string };
7
+ export default classes;
8
+ }
9
+ declare module '*.module.sass' {
10
+ const classes: { readonly [key: string]: string };
11
+ export default classes;
12
+ }
13
+
14
+ declare module '*.module.less' {
15
+ const classes: { readonly [key: string]: string };
16
+ export default classes;
17
+ }
18
+
19
+ declare module '*.less' {
20
+ const classes: { readonly [key: string]: string };
21
+ export default classes;
22
+ }
23
+
24
+ declare module '*.css' {
25
+ const classes: { readonly [key: string]: string };
26
+ export default classes;
27
+ }
28
+
29
+ declare module '*.sass' {
30
+ const classes: { readonly [key: string]: string };
31
+ export default classes;
32
+ }
33
+
34
+ declare module '*.scss' {
35
+ const classes: { readonly [key: string]: string };
36
+ export default classes;
37
+ }
38
+
39
+ declare module '*.mdx' {
40
+ const component: any;
41
+ export default component;
42
+ }