Skip to content

Commit c7ff931

Browse files
committed
Add links to component view and genral ones
1 parent 721f96d commit c7ff931

3 files changed

Lines changed: 40 additions & 8 deletions

File tree

src/views/manage-components-packs/view/components/component-pack-manager.tsx

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,16 @@ import '../../../common/style/antd-overrides.css';
1818
import './component-pack-manager.css';
1919
import * as React from 'react';
2020
import { initialState, componentsReducer as componentsReducer } from '../state/reducer';
21-
import { ConfigProvider, theme, Row, Col, Button, Segmented } from 'antd';
21+
import { ConfigProvider, theme, Row, Col, Button, Segmented, Space } from 'antd';
2222
import { ComponentRowDataType, ComponentScope } from '../../data/component-tools';
2323
import { ComponentProps } from './component-props';
2424
import { filterTree } from '../helpers/components-packs-helpers';
2525
import { flatTree } from '../../data/component-tree';
2626
import { ComponentsView } from './components-view';
2727
import { PacksView } from './packs-view';
2828
import { useVSCodeTheme } from '../../../hooks/use-vscode-theme';
29+
import { CmsisCodicon } from '../../../common/components/cmsis-codicon';
30+
import { packURL } from '../../../../packs/pack-urls';
2931

3032
// Import the necessary components and types from Ant Design
3133

@@ -105,6 +107,8 @@ export const ComponentPackManager = (props: ComponentProps) => {
105107
messageHandler.push({ type: 'APPLY_COMPONENT_SET' });
106108
};
107109

110+
const packsUrl = packURL(undefined);
111+
108112
return (
109113
<React.StrictMode>
110114
<div className='components-packs-view-root'>
@@ -132,6 +136,20 @@ export const ComponentPackManager = (props: ComponentProps) => {
132136
options={[{ label: 'Components', value: 'components' }, { label: 'Software packs', value: 'packs' }]}
133137
value={activeView}
134138
onChange={onChangeActiveView} />
139+
<Space align='baseline'>
140+
<div> </div>
141+
<a
142+
title='View list of software packs'
143+
href={packsUrl}
144+
onClick={(event) => {
145+
event.preventDefault();
146+
event.stopPropagation();
147+
openFile(packsUrl, true);
148+
}}
149+
>
150+
<CmsisCodicon name='link-external' style={{ fontSize: '1em' }} />
151+
</a>
152+
</Space>
135153
</Col>
136154
<Col flex={'auto'}>
137155
<Segmented

src/views/manage-components-packs/view/components/packs-view.tsx

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -77,18 +77,17 @@ export const PacksView: React.FC<PacksProps> = ({ state, openFile, messageHandle
7777
const pack = parsePackId(record.packId);
7878
const packUrl = packURL(record.packId);
7979
const packTitle = (
80-
<span>
81-
{record.name}
82-
<a title='Open Pack URL' onClick={(e) => {
80+
<>
81+
{record.name}{' '}
82+
<a title='Open software pack overview' onClick={(e) => {
8383
e.preventDefault();
8484
e.stopPropagation();
8585
openFile(packUrl, true);
8686
}} href={packUrl}>
87-
<CmsisCodicon name='link-external' />
87+
<CmsisCodicon name='link-external' style={{ fontSize: '1em', display: 'inline' }} />
8888
</a>
89-
</span>
89+
</>
9090
);
91-
9291
const referencedFrom = [
9392
<div key='pack-name'>{packTitle}</div>,
9493
...(record.references?.map((ref, index) => {

src/views/manage-components-packs/view/components/table-renderers/render-name-cell.tsx

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ import { ComponentRowDataType } from '../../../data/component-tools';
1919
import { Tooltip } from 'antd';
2020
import { validationIds } from './render-warning-cell';
2121
import { EditFilled } from '@ant-design/icons';
22+
import { CmsisCodicon } from '../../../../common/components/cmsis-codicon';
23+
import { packURL } from '../../../../../packs/pack-urls';
2224

2325
/**
2426
* Renders the name cell with a tooltip that shows additional information about the component.
@@ -43,12 +45,25 @@ export const renderNameCell = (value: string, record: ComponentRowDataType, open
4345
: '';
4446

4547
const vids = validationIds(record, undefined, 'name-col');
48+
const packUrl = packURL(record.data.pack);
49+
const packTitle = (
50+
<>
51+
{record.data.pack}{' '}
52+
<a title='Open software pack overview' onClick={(e) => {
53+
e.preventDefault();
54+
e.stopPropagation();
55+
openFile(packUrl, true);
56+
}} href={packUrl}>
57+
<CmsisCodicon name='link-external' style={{ fontSize: '1em', display: 'inline' }} />
58+
</a>
59+
</>
60+
);
4661

4762
const tooltTipContent = (
4863
<div>
4964
<ul style={{ paddingLeft: '30px' }}>
5065
<li>{record.api ? 'API' : 'component'}: {record.data.id}</li>
51-
{record.data.pack && <li>from pack: {record.data.pack}</li>}
66+
{record.data.pack && <li>from pack: {packTitle} </li>}
5267
{allLeafs !== 0 && <li>selected: {selectedLeafs} of {allLeafs}</li>}
5368
{selectedCount > 0 && (<li>in: <a title='Edit File' onClick={() => openFile(record.aggregate.options?.layer || '', false, 'components:')} ><EditFilled /></a> ./{record.aggregate.options?.layer}</li>)}
5469
{vids.length > 0 && (

0 commit comments

Comments
 (0)