argo-cd

Форк
0
64 строки · 2.6 Кб
1
import {DataLoader, Tooltip} from 'argo-ui';
2
import * as React from 'react';
3
import {Timestamp} from '../../../shared/components/timestamp';
4
import {services} from '../../../shared/services';
5

6
export const RevisionMetadataPanel = (props: {appName: string; appNamespace: string; type: string; revision: string}) => {
7
    if (props.type === 'helm') {
8
        return <React.Fragment />;
9
    }
10
    return (
11
        <DataLoader load={() => services.applications.revisionMetadata(props.appName, props.appNamespace, props.revision)} errorRenderer={() => <div />}>
12
            {m => (
13
                <Tooltip
14
                    popperOptions={{
15
                        modifiers: {
16
                            preventOverflow: {
17
                                enabled: false
18
                            },
19
                            hide: {
20
                                enabled: false
21
                            },
22
                            flip: {
23
                                enabled: false
24
                            }
25
                        }
26
                    }}
27
                    content={
28
                        <span>
29
                            {m.author && <React.Fragment>Authored by {m.author}</React.Fragment>}
30
                            <br />
31
                            {m.date && <Timestamp date={m.date} />}
32
                            <br />
33
                            {m.tags && (
34
                                <span>
35
                                    Tags: {m.tags}
36
                                    <br />
37
                                </span>
38
                            )}
39
                            {m.signatureInfo}
40
                            <br />
41
                            {m.message}
42
                        </span>
43
                    }
44
                    placement='bottom'
45
                    allowHTML={true}>
46
                    <div className='application-status-panel__item-name'>
47
                        {m.author && (
48
                            <div className='application-status-panel__item__row'>
49
                                <div>Author:</div>
50
                                <div>
51
                                    {m.author} - {m.signatureInfo}
52
                                </div>
53
                            </div>
54
                        )}
55
                        <div className='application-status-panel__item__row'>
56
                            <div>Comment:</div>
57
                            <div>{m.message?.split('\n')[0].slice(0, 64)}</div>
58
                        </div>
59
                    </div>
60
                </Tooltip>
61
            )}
62
        </DataLoader>
63
    );
64
};
65

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.