@teambit/component 0.0.543 → 0.0.551
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ui/component-model/component-model.d.ts +4 -2
- package/dist/ui/component-model/component-model.js +7 -1
- package/dist/ui/component-model/component-model.js.map +1 -1
- package/dist/ui/menu/menu.js +3 -0
- package/dist/ui/menu/menu.js.map +1 -1
- package/dist/ui/use-component-query.js +1 -0
- package/dist/ui/use-component-query.js.map +1 -1
- package/package-tar/teambit-component-0.0.551.tgz +0 -0
- package/package.json +34 -34
- package/ui/component-model/component-model.ts +7 -0
- package/ui/menu/menu.tsx +4 -0
- package/ui/use-component-query.ts +1 -0
- package/package-tar/teambit-component-0.0.543.tgz +0 -0
|
@@ -11,6 +11,7 @@ export declare type ComponentModelProps = {
|
|
|
11
11
|
server?: ComponentServer;
|
|
12
12
|
displayName: string;
|
|
13
13
|
packageName: string;
|
|
14
|
+
elementsUrl?: string;
|
|
14
15
|
compositions?: CompositionProps[];
|
|
15
16
|
tags?: TagProps[];
|
|
16
17
|
issuesCount?: number;
|
|
@@ -33,15 +34,16 @@ export declare class ComponentModel {
|
|
|
33
34
|
readonly tags: TagMap;
|
|
34
35
|
readonly buildStatus?: string | undefined;
|
|
35
36
|
readonly issuesCount?: number | undefined;
|
|
37
|
+
readonly elementsUrl?: string | undefined;
|
|
36
38
|
readonly status?: any;
|
|
37
39
|
readonly deprecation?: DeprecationInfo | undefined;
|
|
38
40
|
readonly environment?: Descriptor | undefined;
|
|
39
41
|
readonly description: string;
|
|
40
42
|
readonly labels: string[];
|
|
41
43
|
readonly host?: string | undefined;
|
|
42
|
-
constructor(id: ComponentID, displayName: string, packageName: string, server: ComponentServer | undefined, compositions: Composition[], tags: TagMap, buildStatus?: string | undefined, issuesCount?: number | undefined, status?: any, deprecation?: DeprecationInfo | undefined, environment?: Descriptor | undefined, description?: string, labels?: string[], host?: string | undefined);
|
|
44
|
+
constructor(id: ComponentID, displayName: string, packageName: string, server: ComponentServer | undefined, compositions: Composition[], tags: TagMap, buildStatus?: string | undefined, issuesCount?: number | undefined, elementsUrl?: string | undefined, status?: any, deprecation?: DeprecationInfo | undefined, environment?: Descriptor | undefined, description?: string, labels?: string[], host?: string | undefined);
|
|
43
45
|
get version(): string;
|
|
44
|
-
static from({ id, server, displayName, compositions, packageName, tags, deprecation, buildStatus, env, status, issuesCount, description, labels, host, }: ComponentModelProps): ComponentModel;
|
|
46
|
+
static from({ id, server, displayName, compositions, packageName, elementsUrl, tags, deprecation, buildStatus, env, status, issuesCount, description, labels, host, }: ComponentModelProps): ComponentModel;
|
|
45
47
|
static fromArray(componentsProps: ComponentModelProps[]): ComponentModel[];
|
|
46
48
|
static empty(): ComponentModel;
|
|
47
49
|
}
|
|
@@ -81,6 +81,10 @@ class ComponentModel {
|
|
|
81
81
|
* issues of component.
|
|
82
82
|
*/
|
|
83
83
|
issuesCount,
|
|
84
|
+
/**
|
|
85
|
+
* elements url
|
|
86
|
+
*/
|
|
87
|
+
elementsUrl,
|
|
84
88
|
/**
|
|
85
89
|
* status of component.
|
|
86
90
|
*/
|
|
@@ -109,6 +113,7 @@ class ComponentModel {
|
|
|
109
113
|
this.tags = tags;
|
|
110
114
|
this.buildStatus = buildStatus;
|
|
111
115
|
this.issuesCount = issuesCount;
|
|
116
|
+
this.elementsUrl = elementsUrl;
|
|
112
117
|
this.status = status;
|
|
113
118
|
this.deprecation = deprecation;
|
|
114
119
|
this.environment = environment;
|
|
@@ -132,6 +137,7 @@ class ComponentModel {
|
|
|
132
137
|
displayName,
|
|
133
138
|
compositions = [],
|
|
134
139
|
packageName,
|
|
140
|
+
elementsUrl,
|
|
135
141
|
tags = [],
|
|
136
142
|
deprecation,
|
|
137
143
|
buildStatus,
|
|
@@ -142,7 +148,7 @@ class ComponentModel {
|
|
|
142
148
|
labels,
|
|
143
149
|
host
|
|
144
150
|
}) {
|
|
145
|
-
return new ComponentModel(_componentId().ComponentID.fromObject(id), displayName, packageName, server, _compositions().Composition.fromArray(compositions), _tagMap().TagMap.fromArray(tags.map(tag => _tag().Tag.fromObject(tag))), buildStatus, issuesCount, status, deprecation, env, description, labels, host);
|
|
151
|
+
return new ComponentModel(_componentId().ComponentID.fromObject(id), displayName, packageName, server, _compositions().Composition.fromArray(compositions), _tagMap().TagMap.fromArray(tags.map(tag => _tag().Tag.fromObject(tag))), buildStatus, issuesCount, elementsUrl, status, deprecation, env, description, labels, host);
|
|
146
152
|
}
|
|
147
153
|
|
|
148
154
|
static fromArray(componentsProps) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["component-model.ts"],"names":["ComponentModel","constructor","id","displayName","packageName","server","compositions","tags","buildStatus","issuesCount","status","deprecation","environment","description","labels","host","version","from","env","ComponentID","fromObject","Composition","fromArray","TagMap","map","tag","Tag","componentsProps","rawComponent","empty","name","scope","url"],"mappings":";;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAGA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;
|
|
1
|
+
{"version":3,"sources":["component-model.ts"],"names":["ComponentModel","constructor","id","displayName","packageName","server","compositions","tags","buildStatus","issuesCount","elementsUrl","status","deprecation","environment","description","labels","host","version","from","env","ComponentID","fromObject","Composition","fromArray","TagMap","map","tag","Tag","componentsProps","rawComponent","empty","name","scope","url"],"mappings":"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","sourcesContent":["import { Composition, CompositionProps } from '@teambit/compositions';\nimport { DeprecationInfo } from '@teambit/deprecation';\nimport { Descriptor } from '@teambit/envs';\nimport { ComponentID, ComponentIdObj } from '@teambit/component-id';\n\nimport { Tag } from '../../tag';\nimport { TagMap } from '../../tag-map';\nimport { TagProps } from '../../tag/tag';\n// import { Snap } from '../../snap';\n\n// ADDING MORE PROPERTIES HERE IS NOT ALLOWED!!! IF YOU NEED DATA PLEASE ADD A NEW\n// HOOK FROM YOUR ASPECT!!!\n// TODO: remove all properties from here to their rightful place in their aspects.\nexport type ComponentModelProps = {\n id: ComponentIdObj;\n description: string;\n buildStatus?: string;\n server?: ComponentServer;\n displayName: string;\n packageName: string; // pkg aspect\n elementsUrl?: string; // pkg aspect\n compositions?: CompositionProps[];\n tags?: TagProps[];\n issuesCount?: number; // component/issues aspect\n status?: any; // workspace aspect.\n deprecation?: DeprecationInfo; // deprecation aspect\n env?: Descriptor; // env aspect.\n labels?: string[];\n host?: string;\n};\n\nexport type ComponentServer = {\n env: string;\n url: string;\n};\n\nexport class ComponentModel {\n constructor(\n /**\n * id of the component\n */\n readonly id: ComponentID,\n\n /**\n * display name of the component.\n */\n readonly displayName: string,\n\n /**\n * package name of the component.\n */\n readonly packageName: string,\n\n /**\n * the component server.\n */\n readonly server: ComponentServer | undefined,\n\n /**\n * array of compositions\n */\n readonly compositions: Composition[],\n\n /**\n * tags of the component.\n */\n readonly tags: TagMap,\n\n /**\n * component build status\n */\n readonly buildStatus?: string,\n\n /**\n * issues of component.\n */\n readonly issuesCount?: number,\n /**\n * elements url\n */\n readonly elementsUrl?: string,\n /**\n * status of component.\n */\n readonly status?: any,\n\n /**\n * deprecation info of the component.\n */\n readonly deprecation?: DeprecationInfo,\n\n /**\n * env descriptor.\n */\n readonly environment?: Descriptor,\n\n /**\n * description of the component.\n */\n\n readonly description = '',\n\n readonly labels: string[] = [],\n\n /**\n * host of the component\n */\n readonly host?: string\n ) {}\n\n get version() {\n if (!this.id.version) return 'new';\n return this.id.version;\n }\n\n /**\n * create an instance of a component from a plain object.\n */\n static from({\n id,\n server,\n displayName,\n compositions = [],\n packageName,\n elementsUrl,\n tags = [],\n deprecation,\n buildStatus,\n env,\n status,\n issuesCount,\n description,\n labels,\n host,\n }: ComponentModelProps) {\n return new ComponentModel(\n ComponentID.fromObject(id),\n displayName,\n packageName,\n server,\n Composition.fromArray(compositions),\n TagMap.fromArray(tags.map((tag) => Tag.fromObject(tag))),\n buildStatus,\n issuesCount,\n elementsUrl,\n status,\n deprecation,\n env,\n description,\n labels,\n host\n );\n }\n\n static fromArray(componentsProps: ComponentModelProps[]) {\n return componentsProps.map((rawComponent) => ComponentModel.from(rawComponent));\n }\n\n static empty() {\n return new ComponentModel(\n ComponentID.fromObject({ name: 'root', scope: 'temp' }),\n '',\n '',\n { env: '', url: '' },\n [],\n TagMap.empty()\n );\n }\n}\n"]}
|
package/dist/ui/menu/menu.js
CHANGED
|
@@ -173,6 +173,8 @@ function VersionRelatedDropdowns({
|
|
|
173
173
|
}, [component.tags]) || [];
|
|
174
174
|
const isLatestVersion = (0, _react().useMemo)(() => component.version === versionList[0], [component.version]);
|
|
175
175
|
const packageVersion = (0, _react().useMemo)(() => isLatestVersion ? '' : `@${component.version}`, [component.version]);
|
|
176
|
+
const origin = typeof window !== undefined ? window.location.origin : undefined;
|
|
177
|
+
const finalElementsUrl = origin && component.elementsUrl ? `${origin}${component.elementsUrl}` : undefined;
|
|
176
178
|
return /*#__PURE__*/_react().default.createElement(_react().default.Fragment, null, versionList.length > 0 && /*#__PURE__*/_react().default.createElement(_uiFoundationUiUseBox().UseBoxDropdown, {
|
|
177
179
|
position: "bottom-end",
|
|
178
180
|
className: _menuModule().default.useBox,
|
|
@@ -182,6 +184,7 @@ function VersionRelatedDropdowns({
|
|
|
182
184
|
ignoreVersion: isLatestVersion
|
|
183
185
|
}),
|
|
184
186
|
packageName: `${component.packageName}${packageVersion}`,
|
|
187
|
+
elementsUrl: finalElementsUrl,
|
|
185
188
|
registryName: component.packageName.split('/')[0]
|
|
186
189
|
})
|
|
187
190
|
}), /*#__PURE__*/_react().default.createElement(_componentUi().VersionDropdown, {
|
package/dist/ui/menu/menu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["menu.tsx"],"names":["Menu","navigationSlot","widgetSlot","className","host","menuItemSlot","component","mainMenuItems","values","styles","topBar","leftSide","rightSide","widgets","VersionRelatedDropdowns","versionList","tags","toArray","map","tag","version","filter","x","undefined","reverse","isLatestVersion","packageVersion","length","useBox","id","name","toString","ignoreVersion","packageName","split"],"mappings":";;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;;;;;AAoBA;AACA;AACA;AACO,SAASA,IAAT,CAAc;AAAEC,EAAAA,cAAF;AAAkBC,EAAAA,UAAlB;AAA8BC,EAAAA,SAA9B;AAAyCC,EAAAA,IAAzC;AAA+CC,EAAAA;AAA/C,CAAd,EAAwF;AAC7F,QAAM;AAAEC,IAAAA;AAAF,MAAgB,kCAAaF,IAAb,CAAtB;AACA,QAAMG,aAAa,GAAG,sBAAQ,MAAM,uBAAQ,uBAAQF,YAAY,CAACG,MAAb,EAAR,CAAR,EAAwC,UAAxC,CAAd,EAAmE,CAACH,YAAD,CAAnE,CAAtB;AAEA,MAAI,CAACC,SAAL,EAAgB,oBAAO,+BAAC,wBAAD,OAAP;AAEhB,sBACE;AAAK,IAAA,SAAS,EAAE,2BAAWG,sBAAOC,MAAlB,EAA0BP,SAA1B;AAAhB,kBACE;AAAK,IAAA,SAAS,EAAEM,sBAAOE;AAAvB,kBACE,+BAAC,kBAAD;AAAS,IAAA,cAAc,EAAEV;AAAzB,IADF,CADF,eAIE;AAAK,IAAA,SAAS,EAAEQ,sBAAOG;AAAvB,kBACE;AAAK,IAAA,SAAS,EAAEH,sBAAOI;AAAvB,kBACE,+BAAC,kBAAD;AAAS,IAAA,cAAc,EAAEX;AAAzB,IADF,CADF,eAIE,+BAAC,uBAAD;AAAyB,IAAA,SAAS,EAAEI;AAApC,IAJF,eAKE,+BAAC,8BAAD;AAAc,IAAA,SAAS,EAAEC;AAAzB,IALF,CAJF,CADF;AAcD;;AAED,SAASO,uBAAT,CAAiC;AAAER,EAAAA;AAAF,CAAjC,EAA+E;AAC7E,QAAMS,WAAW,GACf,sBACE;AAAA;;AAAA,8BACET,SAAS,CAACU,IADZ,oDACE,gBACIC,OADJ,GAEGC,GAFH,CAEQC,GAAD;AAAA;;AAAA,aAASA,GAAT,aAASA,GAAT,uCAASA,GAAG,CAAEC,OAAd,iDAAS,aAAcA,OAAvB;AAAA,KAFP,EAGGC,MAHH,CAGWC,CAAD,IAAOA,CAAC,KAAKC,SAHvB,EAIGC,OAJH,EADF;AAAA,GADF,EAOE,CAAClB,SAAS,CAACU,IAAX,CAPF,KAQK,EATP;AAWA,QAAMS,eAAe,GAAG,sBAAQ,MAAMnB,SAAS,CAACc,OAAV,KAAsBL,WAAW,CAAC,CAAD,CAA/C,EAAoD,CAACT,SAAS,CAACc,OAAX,CAApD,CAAxB;AACA,QAAMM,cAAc,GAAG,sBAAQ,MAAOD,eAAe,GAAG,EAAH,GAAS,IAAGnB,SAAS,CAACc,OAAQ,EAA5D,EAAgE,CAACd,SAAS,CAACc,OAAX,CAAhE,CAAvB;AACA,sBACE,
|
|
1
|
+
{"version":3,"sources":["menu.tsx"],"names":["Menu","navigationSlot","widgetSlot","className","host","menuItemSlot","component","mainMenuItems","values","styles","topBar","leftSide","rightSide","widgets","VersionRelatedDropdowns","versionList","tags","toArray","map","tag","version","filter","x","undefined","reverse","isLatestVersion","packageVersion","origin","window","location","finalElementsUrl","elementsUrl","length","useBox","id","name","toString","ignoreVersion","packageName","split"],"mappings":"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","sourcesContent":["import { MainDropdown, MenuItemSlot } from '@teambit/ui-foundation.ui.main-dropdown';\nimport { VersionDropdown } from '@teambit/component.ui.version-dropdown';\nimport { FullLoader } from '@teambit/legacy/dist/to-eject/full-loader';\nimport { flatten, groupBy } from 'lodash';\nimport classnames from 'classnames';\nimport React, { useMemo } from 'react';\nimport { UseBoxDropdown } from '@teambit/ui-foundation.ui.use-box.dropdown';\nimport { Menu as UseBoxMenu } from '@teambit/ui-foundation.ui.use-box.menu';\nimport type { ComponentModel } from '../component-model';\nimport { useComponent } from '../use-component';\nimport { MenuNav } from './menu-nav';\nimport styles from './menu.module.scss';\nimport { OrderedNavigationSlot } from './nav-plugin';\n\nexport type MenuProps = {\n className?: string;\n /**\n * slot for top bar menu nav items\n */\n navigationSlot: OrderedNavigationSlot;\n /**\n * right side menu item slot\n */\n widgetSlot: OrderedNavigationSlot;\n host: string;\n /**\n * main dropdown item slot\n */\n menuItemSlot: MenuItemSlot;\n};\n\n/**\n * top bar menu.\n */\nexport function Menu({ navigationSlot, widgetSlot, className, host, menuItemSlot }: MenuProps) {\n const { component } = useComponent(host);\n const mainMenuItems = useMemo(() => groupBy(flatten(menuItemSlot.values()), 'category'), [menuItemSlot]);\n\n if (!component) return <FullLoader />;\n\n return (\n <div className={classnames(styles.topBar, className)}>\n <div className={styles.leftSide}>\n <MenuNav navigationSlot={navigationSlot} />\n </div>\n <div className={styles.rightSide}>\n <div className={styles.widgets}>\n <MenuNav navigationSlot={widgetSlot} />\n </div>\n <VersionRelatedDropdowns component={component} />\n <MainDropdown menuItems={mainMenuItems} />\n </div>\n </div>\n );\n}\n\nfunction VersionRelatedDropdowns({ component }: { component: ComponentModel }) {\n const versionList =\n useMemo(\n () =>\n component.tags\n ?.toArray()\n .map((tag) => tag?.version?.version)\n .filter((x) => x !== undefined)\n .reverse(),\n [component.tags]\n ) || [];\n\n const isLatestVersion = useMemo(() => component.version === versionList[0], [component.version]);\n const packageVersion = useMemo(() => (isLatestVersion ? '' : `@${component.version}`), [component.version]);\n const origin = typeof window !== undefined ? window.location.origin : undefined;\n const finalElementsUrl = origin && component.elementsUrl ? `${origin}${component.elementsUrl}` : undefined;\n\n return (\n <>\n {versionList.length > 0 && (\n <UseBoxDropdown\n position=\"bottom-end\"\n className={styles.useBox}\n Menu={() => (\n <UseBoxMenu\n componentName={component.id.name}\n componentId={component.id.toString({ ignoreVersion: isLatestVersion })}\n packageName={`${component.packageName}${packageVersion}`}\n elementsUrl={finalElementsUrl}\n registryName={component.packageName.split('/')[0]}\n />\n )}\n />\n )}\n <VersionDropdown versions={versionList} currentVersion={component.version} />\n </>\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["use-component-query.ts"],"names":["componentIdFields","componentFields","GET_COMPONENT","SUB_SUBSCRIPTION_ADDED","SUB_COMPONENT_CHANGED","SUB_COMPONENT_REMOVED","useComponentQuery","componentId","host","idRef","current","data","error","loading","subscribeToMore","variables","id","extensionId","unsubAddition","document","updateQuery","prev","subscriptionData","prevComponent","getHost","get","addedComponent","componentAdded","component","name","unsubChanges","updatedComponent","componentChanged","isUpdated","ComponentID","isEqualObj","unsubRemoval","removedIds","componentRemoved","componentIds","length","isRemoved","some","removedId","rawComponent","ComponentModel","from","undefined","ComponentError","message"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;;;;;AAEA,MAAMA,iBAAiB,GAAG,kBAAI;AAC9B;AACA;AACA;AACA;AACA;AACA,CANA;AAQA,MAAMC,eAAe,GAAG,kBAAI;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAID,iBAAkB;AACtB,
|
|
1
|
+
{"version":3,"sources":["use-component-query.ts"],"names":["componentIdFields","componentFields","GET_COMPONENT","SUB_SUBSCRIPTION_ADDED","SUB_COMPONENT_CHANGED","SUB_COMPONENT_REMOVED","useComponentQuery","componentId","host","idRef","current","data","error","loading","subscribeToMore","variables","id","extensionId","unsubAddition","document","updateQuery","prev","subscriptionData","prevComponent","getHost","get","addedComponent","componentAdded","component","name","unsubChanges","updatedComponent","componentChanged","isUpdated","ComponentID","isEqualObj","unsubRemoval","removedIds","componentRemoved","componentIds","length","isRemoved","some","removedId","rawComponent","ComponentModel","from","undefined","ComponentError","message"],"mappings":"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","sourcesContent":["import { useMemo, useEffect, useRef } from 'react';\nimport { gql } from '@apollo/client';\nimport { useDataQuery } from '@teambit/ui-foundation.ui.hooks.use-data-query';\nimport { ComponentID, ComponentIdObj } from '@teambit/component-id';\n\nimport { ComponentModel } from './component-model';\nimport { ComponentError } from './component-error';\n\nconst componentIdFields = gql`\n fragment componentIdFields on ComponentID {\n name\n version\n scope\n }\n`;\n\nconst componentFields = gql`\n fragment componentFields on Component {\n id {\n ...componentIdFields\n }\n packageName\n elementsUrl\n displayName\n server {\n env\n url\n }\n buildStatus\n compositions {\n identifier\n displayName\n }\n tags {\n version\n }\n env {\n id\n icon\n }\n }\n ${componentIdFields}\n`;\n\nconst GET_COMPONENT = gql`\n query Component($id: String!, $extensionId: String!) {\n getHost(id: $extensionId) {\n id # used for GQL caching\n get(id: $id) {\n ...componentFields\n }\n }\n }\n ${componentFields}\n`;\n\nconst SUB_SUBSCRIPTION_ADDED = gql`\n subscription OnComponentAdded {\n componentAdded {\n component {\n ...componentFields\n }\n }\n }\n ${componentFields}\n`;\n\nconst SUB_COMPONENT_CHANGED = gql`\n subscription OnComponentChanged {\n componentChanged {\n component {\n ...componentFields\n }\n }\n }\n ${componentFields}\n`;\n\nconst SUB_COMPONENT_REMOVED = gql`\n subscription OnComponentRemoved {\n componentRemoved {\n componentIds {\n ...componentIdFields\n }\n }\n }\n ${componentIdFields}\n`;\n\n/** provides data to component ui page, making sure both variables and return value are safely typed and memoized */\nexport function useComponentQuery(componentId: string, host: string) {\n const idRef = useRef(componentId);\n idRef.current = componentId;\n const { data, error, loading, subscribeToMore } = useDataQuery(GET_COMPONENT, {\n variables: { id: componentId, extensionId: host },\n });\n\n useEffect(() => {\n // @TODO @Kutner fix subscription for scope\n if (host !== 'teambit.workspace/workspace') {\n return () => {};\n }\n\n const unsubAddition = subscribeToMore({\n document: SUB_SUBSCRIPTION_ADDED,\n updateQuery: (prev, { subscriptionData }) => {\n const prevComponent = prev?.getHost?.get;\n const addedComponent = subscriptionData?.data?.componentAdded?.component;\n\n if (!addedComponent || prevComponent) return prev;\n\n if (idRef.current === addedComponent.id.name) {\n return {\n ...prev,\n getHost: {\n ...prev.getHost,\n get: addedComponent,\n },\n };\n }\n\n return prev;\n },\n });\n\n const unsubChanges = subscribeToMore({\n document: SUB_COMPONENT_CHANGED,\n updateQuery: (prev, { subscriptionData }) => {\n if (!subscriptionData.data) return prev;\n\n const prevComponent = prev?.getHost?.get;\n const updatedComponent = subscriptionData?.data?.componentChanged?.component;\n\n const isUpdated = updatedComponent && ComponentID.isEqualObj(prevComponent?.id, updatedComponent?.id);\n\n if (isUpdated) {\n return {\n ...prev,\n getHost: {\n ...prev.getHost,\n get: updatedComponent,\n },\n };\n }\n\n return prev;\n },\n });\n\n const unsubRemoval = subscribeToMore({\n document: SUB_COMPONENT_REMOVED,\n updateQuery: (prev, { subscriptionData }) => {\n if (!subscriptionData.data) return prev;\n\n const prevComponent = prev?.getHost?.get;\n const removedIds: ComponentIdObj[] | undefined = subscriptionData?.data?.componentRemoved?.componentIds;\n if (!prevComponent || !removedIds?.length) return prev;\n\n const isRemoved = removedIds.some((removedId) => ComponentID.isEqualObj(removedId, prevComponent.id));\n\n if (isRemoved) {\n return {\n ...prev,\n getHost: {\n ...prev.getHost,\n get: null,\n },\n };\n }\n\n return prev;\n },\n });\n\n return () => {\n unsubChanges();\n unsubAddition();\n unsubRemoval();\n };\n }, []);\n\n const rawComponent = data?.getHost?.get;\n\n return useMemo(() => {\n return {\n component: rawComponent ? ComponentModel.from({ ...rawComponent, host }) : undefined,\n // eslint-disable-next-line\n error: error\n ? new ComponentError(500, error.message)\n : !rawComponent && !loading\n ? new ComponentError(404)\n : undefined,\n };\n }, [rawComponent, host, error]);\n}\n"]}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/component",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.551",
|
|
4
4
|
"homepage": "https://bit.dev/teambit/component/component",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.component",
|
|
8
8
|
"name": "component",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.551"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"lodash": "4.17.21",
|
|
@@ -26,38 +26,38 @@
|
|
|
26
26
|
"@teambit/base-ui.routing.nav-link": "1.0.0",
|
|
27
27
|
"@teambit/documenter.ui.heading": "4.1.1",
|
|
28
28
|
"@teambit/documenter.ui.separator": "4.1.1",
|
|
29
|
-
"@teambit/component-id": "0.0.
|
|
30
|
-
"@teambit/ui-foundation.ui.menu-widget-icon": "0.0.
|
|
31
|
-
"@teambit/aspect-loader": "0.0.
|
|
32
|
-
"@teambit/legacy-bit-id": "0.0.
|
|
33
|
-
"@teambit/toolbox.string.capitalize": "0.0.
|
|
34
|
-
"@teambit/cli": "0.0.
|
|
35
|
-
"@teambit/config": "0.0.
|
|
36
|
-
"@teambit/express": "0.0.
|
|
37
|
-
"@teambit/graphql": "0.0.
|
|
38
|
-
"@teambit/bit-error": "0.0.
|
|
39
|
-
"@teambit/command-bar": "0.0.
|
|
40
|
-
"@teambit/preview": "0.0.
|
|
41
|
-
"@teambit/pubsub": "0.0.
|
|
42
|
-
"@teambit/ui-foundation.ui.is-browser": "0.0.
|
|
43
|
-
"@teambit/ui-foundation.ui.main-dropdown": "0.0.
|
|
44
|
-
"@teambit/ui-foundation.ui.react-router.slot-router": "0.0.
|
|
45
|
-
"@teambit/ui": "0.0.
|
|
46
|
-
"@teambit/component-issues": "0.0.
|
|
47
|
-
"@teambit/ui-foundation.ui.hooks.use-data-query": "0.0.
|
|
48
|
-
"@teambit/cli-table": "0.0.
|
|
49
|
-
"@teambit/ui-foundation.ui.react-router.use-query": "0.0.
|
|
29
|
+
"@teambit/component-id": "0.0.372",
|
|
30
|
+
"@teambit/ui-foundation.ui.menu-widget-icon": "0.0.461",
|
|
31
|
+
"@teambit/aspect-loader": "0.0.551",
|
|
32
|
+
"@teambit/legacy-bit-id": "0.0.371",
|
|
33
|
+
"@teambit/toolbox.string.capitalize": "0.0.456",
|
|
34
|
+
"@teambit/cli": "0.0.382",
|
|
35
|
+
"@teambit/config": "0.0.393",
|
|
36
|
+
"@teambit/express": "0.0.471",
|
|
37
|
+
"@teambit/graphql": "0.0.551",
|
|
38
|
+
"@teambit/bit-error": "0.0.368",
|
|
39
|
+
"@teambit/command-bar": "0.0.551",
|
|
40
|
+
"@teambit/preview": "0.0.551",
|
|
41
|
+
"@teambit/pubsub": "0.0.551",
|
|
42
|
+
"@teambit/ui-foundation.ui.is-browser": "0.0.459",
|
|
43
|
+
"@teambit/ui-foundation.ui.main-dropdown": "0.0.459",
|
|
44
|
+
"@teambit/ui-foundation.ui.react-router.slot-router": "0.0.461",
|
|
45
|
+
"@teambit/ui": "0.0.551",
|
|
46
|
+
"@teambit/component-issues": "0.0.17",
|
|
47
|
+
"@teambit/ui-foundation.ui.hooks.use-data-query": "0.0.460",
|
|
48
|
+
"@teambit/cli-table": "0.0.5",
|
|
49
|
+
"@teambit/ui-foundation.ui.react-router.use-query": "0.0.459",
|
|
50
50
|
"@teambit/design.ui.empty-box": "0.0.352",
|
|
51
|
-
"@teambit/harmony.ui.aspect-box": "0.0.
|
|
52
|
-
"@teambit/compositions": "0.0.543",
|
|
53
|
-
"@teambit/deprecation": "0.0.543",
|
|
54
|
-
"@teambit/envs": "0.0.543",
|
|
51
|
+
"@teambit/harmony.ui.aspect-box": "0.0.459",
|
|
55
52
|
"@teambit/design.ui.pages.not-found": "0.0.352",
|
|
56
53
|
"@teambit/design.ui.pages.server-error": "0.0.352",
|
|
57
|
-
"@teambit/
|
|
58
|
-
"@teambit/
|
|
59
|
-
"@teambit/
|
|
60
|
-
"@teambit/
|
|
54
|
+
"@teambit/compositions": "0.0.551",
|
|
55
|
+
"@teambit/deprecation": "0.0.551",
|
|
56
|
+
"@teambit/envs": "0.0.551",
|
|
57
|
+
"@teambit/component.ui.version-dropdown": "0.0.463",
|
|
58
|
+
"@teambit/ui-foundation.ui.use-box.dropdown": "0.0.80",
|
|
59
|
+
"@teambit/ui-foundation.ui.use-box.menu": "0.0.80",
|
|
60
|
+
"@teambit/ui-foundation.ui.react-router.extend-path": "0.0.459"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
|
63
63
|
"@types/lodash": "4.14.165",
|
|
@@ -72,11 +72,11 @@
|
|
|
72
72
|
"@types/jest": "^26.0.0",
|
|
73
73
|
"@types/react-dom": "^17.0.5",
|
|
74
74
|
"@types/node": "12.20.4",
|
|
75
|
-
"@teambit/component.aspect-docs.component": "0.0.
|
|
75
|
+
"@teambit/component.aspect-docs.component": "0.0.101"
|
|
76
76
|
},
|
|
77
77
|
"peerDependencies": {
|
|
78
78
|
"@apollo/client": "^3.0.0",
|
|
79
|
-
"@teambit/legacy": "1.0.
|
|
79
|
+
"@teambit/legacy": "1.0.169",
|
|
80
80
|
"react-dom": "^16.8.0 || ^17.0.0",
|
|
81
81
|
"react": "^16.8.0 || ^17.0.0"
|
|
82
82
|
},
|
|
@@ -104,7 +104,7 @@
|
|
|
104
104
|
"react": "-"
|
|
105
105
|
},
|
|
106
106
|
"peerDependencies": {
|
|
107
|
-
"@teambit/legacy": "1.0.
|
|
107
|
+
"@teambit/legacy": "1.0.169",
|
|
108
108
|
"react-dom": "^16.8.0 || ^17.0.0",
|
|
109
109
|
"react": "^16.8.0 || ^17.0.0"
|
|
110
110
|
}
|
|
@@ -18,6 +18,7 @@ export type ComponentModelProps = {
|
|
|
18
18
|
server?: ComponentServer;
|
|
19
19
|
displayName: string;
|
|
20
20
|
packageName: string; // pkg aspect
|
|
21
|
+
elementsUrl?: string; // pkg aspect
|
|
21
22
|
compositions?: CompositionProps[];
|
|
22
23
|
tags?: TagProps[];
|
|
23
24
|
issuesCount?: number; // component/issues aspect
|
|
@@ -74,6 +75,10 @@ export class ComponentModel {
|
|
|
74
75
|
* issues of component.
|
|
75
76
|
*/
|
|
76
77
|
readonly issuesCount?: number,
|
|
78
|
+
/**
|
|
79
|
+
* elements url
|
|
80
|
+
*/
|
|
81
|
+
readonly elementsUrl?: string,
|
|
77
82
|
/**
|
|
78
83
|
* status of component.
|
|
79
84
|
*/
|
|
@@ -117,6 +122,7 @@ export class ComponentModel {
|
|
|
117
122
|
displayName,
|
|
118
123
|
compositions = [],
|
|
119
124
|
packageName,
|
|
125
|
+
elementsUrl,
|
|
120
126
|
tags = [],
|
|
121
127
|
deprecation,
|
|
122
128
|
buildStatus,
|
|
@@ -136,6 +142,7 @@ export class ComponentModel {
|
|
|
136
142
|
TagMap.fromArray(tags.map((tag) => Tag.fromObject(tag))),
|
|
137
143
|
buildStatus,
|
|
138
144
|
issuesCount,
|
|
145
|
+
elementsUrl,
|
|
139
146
|
status,
|
|
140
147
|
deprecation,
|
|
141
148
|
env,
|
package/ui/menu/menu.tsx
CHANGED
|
@@ -68,6 +68,9 @@ function VersionRelatedDropdowns({ component }: { component: ComponentModel }) {
|
|
|
68
68
|
|
|
69
69
|
const isLatestVersion = useMemo(() => component.version === versionList[0], [component.version]);
|
|
70
70
|
const packageVersion = useMemo(() => (isLatestVersion ? '' : `@${component.version}`), [component.version]);
|
|
71
|
+
const origin = typeof window !== undefined ? window.location.origin : undefined;
|
|
72
|
+
const finalElementsUrl = origin && component.elementsUrl ? `${origin}${component.elementsUrl}` : undefined;
|
|
73
|
+
|
|
71
74
|
return (
|
|
72
75
|
<>
|
|
73
76
|
{versionList.length > 0 && (
|
|
@@ -79,6 +82,7 @@ function VersionRelatedDropdowns({ component }: { component: ComponentModel }) {
|
|
|
79
82
|
componentName={component.id.name}
|
|
80
83
|
componentId={component.id.toString({ ignoreVersion: isLatestVersion })}
|
|
81
84
|
packageName={`${component.packageName}${packageVersion}`}
|
|
85
|
+
elementsUrl={finalElementsUrl}
|
|
82
86
|
registryName={component.packageName.split('/')[0]}
|
|
83
87
|
/>
|
|
84
88
|
)}
|
|
Binary file
|