@nu-art/bug-report-frontend 0.400.7

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,3 @@
1
+ export declare const ModulePack_Frontend_BugReport: (import("../modules/ModuleFE_BugReport.js").ModuleFE_BugReport_Class | import("../modules/ModuleFE_BugReportAdmin.js").ModuleFE_BugReportAdmin_Class)[];
2
+ export * from '../modules/ModuleFE_BugReport.js';
3
+ export * from '../modules/ModuleFE_BugReportAdmin.js';
@@ -0,0 +1,25 @@
1
+ /*
2
+ * Allow the user to file a bug report directly from your app
3
+ *
4
+ * Copyright (C) 2020 Adam van der Kruk aka TacB0sS
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+ import { ModuleFE_BugReport } from '../modules/ModuleFE_BugReport.js';
19
+ import { ModuleFE_BugReportAdmin } from '../modules/ModuleFE_BugReportAdmin.js';
20
+ export const ModulePack_Frontend_BugReport = [
21
+ ModuleFE_BugReport,
22
+ ModuleFE_BugReportAdmin
23
+ ];
24
+ export * from '../modules/ModuleFE_BugReport.js';
25
+ export * from '../modules/ModuleFE_BugReportAdmin.js';
package/index.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from './core/module-pack.js';
2
+ export * from './ui/AdminBR.js';
package/index.js ADDED
@@ -0,0 +1,20 @@
1
+ /*
2
+ * Permissions management system, define access level for each of
3
+ * your server apis, and restrict users by giving them access levels
4
+ *
5
+ * Copyright (C) 2020 Adam van der Kruk aka TacB0sS
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ */
19
+ export * from './core/module-pack.js';
20
+ export * from './ui/AdminBR.js';
@@ -0,0 +1,12 @@
1
+ import { Module } from '@nu-art/ts-common';
2
+ import { ApiDefCaller } from '@nu-art/thunderstorm-shared';
3
+ import { ApiStruct_BugReport } from '@nu-art/bug-report-shared/api';
4
+ export declare const RequestKey_BugReportApi = "BugReport";
5
+ export declare class ModuleFE_BugReport_Class extends Module {
6
+ private readonly reports;
7
+ readonly v1: ApiDefCaller<ApiStruct_BugReport>['v1'];
8
+ constructor();
9
+ protected init(): void;
10
+ private sendBugReportCallback;
11
+ }
12
+ export declare const ModuleFE_BugReport: ModuleFE_BugReport_Class;
@@ -0,0 +1,43 @@
1
+ /*
2
+ * Allow the user to file a bug report directly from your app
3
+ *
4
+ * Copyright (C) 2020 Adam van der Kruk aka TacB0sS
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+ import { addItemToArray, BeLogged, LogClient_MemBuffer, LogLevel, LogLevelOrdinal, Module } from '@nu-art/ts-common';
19
+ import { apiWithBody } from '@nu-art/thunderstorm-frontend/index';
20
+ import { ApiDef_BugReport } from '@nu-art/bug-report-shared/api';
21
+ export const RequestKey_BugReportApi = 'BugReport';
22
+ export class ModuleFE_BugReport_Class extends Module {
23
+ reports = [];
24
+ v1;
25
+ constructor() {
26
+ super();
27
+ addItemToArray(this.reports, new LogClient_MemBuffer('default'));
28
+ addItemToArray(this.reports, new LogClient_MemBuffer('info')
29
+ .setFilter(level => LogLevelOrdinal.indexOf(level) >= LogLevelOrdinal.indexOf(LogLevel.Info)));
30
+ this.v1 = {
31
+ sendBugReport: apiWithBody(ApiDef_BugReport.v1.sendBugReport, this.sendBugReportCallback),
32
+ };
33
+ }
34
+ init() {
35
+ this.reports.forEach(report => BeLogged.addClient(report));
36
+ }
37
+ sendBugReportCallback = async (response) => {
38
+ // const jiraTicket = response.find(ticket => ticket.platform === Platform_Jira);
39
+ // if(jiraTicket)
40
+ // Dialog_JiraOpened.show(jiraTicket.issueId)
41
+ };
42
+ }
43
+ export const ModuleFE_BugReport = new ModuleFE_BugReport_Class();
@@ -0,0 +1,13 @@
1
+ import { Module } from '@nu-art/ts-common';
2
+ import { ApiDefCaller } from '@nu-art/thunderstorm-shared';
3
+ import { ApiStruct_AdminBugReport, DB_BugReport, ReportLogFile } from '@nu-art/bug-report-shared/api';
4
+ export declare const RequestKey_GetLog = "GetLog";
5
+ export declare const RequestKey_PostPath = "PostPath";
6
+ export declare class ModuleFE_BugReportAdmin_Class extends Module {
7
+ readonly v1: ApiDefCaller<ApiStruct_AdminBugReport>['v1'];
8
+ constructor();
9
+ private logs;
10
+ downloadMultiLogs: (reports: ReportLogFile[]) => void;
11
+ getLogs: () => DB_BugReport[];
12
+ }
13
+ export declare const ModuleFE_BugReportAdmin: ModuleFE_BugReportAdmin_Class;
@@ -0,0 +1,60 @@
1
+ /*
2
+ * Allow the user to file a bug report directly from your app
3
+ *
4
+ * Copyright (C) 2020 Adam van der Kruk aka TacB0sS
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+ import { Module } from '@nu-art/ts-common';
19
+ import { apiWithBody, apiWithQuery } from '@nu-art/thunderstorm-frontend/index';
20
+ import { ApiDef_AdminBugReport } from '@nu-art/bug-report-shared/api';
21
+ export const RequestKey_GetLog = 'GetLog';
22
+ export const RequestKey_PostPath = 'PostPath';
23
+ export class ModuleFE_BugReportAdmin_Class extends Module {
24
+ v1;
25
+ constructor() {
26
+ super();
27
+ this.v1 = {
28
+ downloadLogs: apiWithBody(ApiDef_AdminBugReport.v1.downloadLogs),
29
+ retrieveLogs: apiWithQuery(ApiDef_AdminBugReport.v1.retrieveLogs),
30
+ };
31
+ }
32
+ logs = [];
33
+ // public retrieveLogs = () => {
34
+ // this.logInfo('getting logs from firestore...');
35
+ // ModuleFE_XHR
36
+ // .createRequest<ApiGetLog>(HttpMethod.GET, RequestKey_GetLog)
37
+ // .setRelativeUrl('v1/bug-reports/get-logs')
38
+ // .setOnError(`Error getting new message from backend`)
39
+ // .execute(async response => {
40
+ // this.logs = response;
41
+ // });
42
+ //
43
+ // this.logInfo('continue... will receive an event once request is completed..');
44
+ // };
45
+ // public downloadLogs = (path: string) => {
46
+ // this.logInfo('downloading the logs to the client..');
47
+ // const bodyObject: Paths = {path: path};
48
+ // ModuleFE_XHR
49
+ // .createRequest<ApiPostPath>(HttpMethod.POST, RequestKey_PostPath)
50
+ // .setBodyAsJson(bodyObject)
51
+ // .setRelativeUrl('v1/bug-reports/download-logs')
52
+ // .setOnError(`Error getting new message from backend`)
53
+ // .execute();
54
+ // };
55
+ downloadMultiLogs = (reports) => {
56
+ reports.forEach(report => this.v1.downloadLogs({ path: report.path }).execute());
57
+ };
58
+ getLogs = () => this.logs;
59
+ }
60
+ export const ModuleFE_BugReportAdmin = new ModuleFE_BugReportAdmin_Class();
package/package.json ADDED
@@ -0,0 +1,75 @@
1
+ {
2
+ "name": "@nu-art/bug-report-frontend",
3
+ "version": "0.400.7",
4
+ "description": "Bug Report Frontend",
5
+ "keywords": [
6
+ "TacB0sS",
7
+ "express",
8
+ "infra",
9
+ "bug-report",
10
+ "nu-art",
11
+ "thunderstorm",
12
+ "typescript"
13
+ ],
14
+ "homepage": "https://github.com/nu-art-js/bug-report",
15
+ "bugs": {
16
+ "url": "https://github.com/nu-art-js/bug-report/issues"
17
+ },
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "git+ssh://git@github.com:nu-art-js/bug-report.git"
21
+ },
22
+ "publishConfig": {
23
+ "directory": "dist",
24
+ "linkDirectory": true
25
+ },
26
+ "license": "Apache-2.0",
27
+ "author": "TacB0sS",
28
+ "scripts": {
29
+ "build": "tsc"
30
+ },
31
+ "dependencies": {
32
+ "@nu-art/bug-report-shared": "0.400.7",
33
+ "@nu-art/firebase-frontend": "0.400.7",
34
+ "@nu-art/firebase-shared": "0.400.7",
35
+ "@nu-art/jira-shared": "0.400.7",
36
+ "@nu-art/slack-frontend": "0.400.7",
37
+ "@nu-art/slack-shared": "0.400.7",
38
+ "@nu-art/thunderstorm-frontend": "0.400.7",
39
+ "@nu-art/thunderstorm-shared": "0.400.7",
40
+ "@nu-art/ts-common": "0.400.7",
41
+ "@nu-art/user-account-frontend": "0.400.7",
42
+ "@nu-art/user-account-shared": "0.400.7",
43
+ "express": "^4.18.2",
44
+ "firebase": "^11.9.0",
45
+ "firebase-admin": "13.4.0",
46
+ "jszip": "^3.3.0",
47
+ "moment": "^2.29.4",
48
+ "react": "^18.0.0",
49
+ "react-dom": "^18.0.0",
50
+ "react-router-dom": "^6.9.0",
51
+ "request": "^2.88.0"
52
+ },
53
+ "devDependencies": {
54
+ "@types/express": "^4.17.17",
55
+ "@types/file-saver": "^2.0.1",
56
+ "@types/history": "^4.7.2",
57
+ "@types/jszip": "^3.1.7",
58
+ "@types/react": "^18.0.0",
59
+ "@types/request": "^2.48.1"
60
+ },
61
+ "unitConfig": {
62
+ "type": "typescript-lib"
63
+ },
64
+ "type": "module",
65
+ "exports": {
66
+ ".": {
67
+ "types": "./index.d.ts",
68
+ "import": "./index.js"
69
+ },
70
+ "./*": {
71
+ "types": "./*.d.ts",
72
+ "import": "./*.js"
73
+ }
74
+ }
75
+ }
@@ -0,0 +1,8 @@
1
+ import { ComponentSync } from '@nu-art/thunderstorm-frontend/index';
2
+ import { OnRequestListener } from '@nu-art/thunderstorm-shared';
3
+ export declare class AdminBR extends ComponentSync implements OnRequestListener {
4
+ protected deriveStateFromProps(nextProps: any): any;
5
+ render(): import("react/jsx-runtime").JSX.Element;
6
+ private createRow;
7
+ __onRequestCompleted: (key: string, success: boolean) => void;
8
+ }
package/ui/AdminBR.js ADDED
@@ -0,0 +1,40 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /*
3
+ * Permissions management system, define access level for each of
4
+ * your server apis, and restrict users by giving them access levels
5
+ *
6
+ * Copyright (C) 2020 Adam van der Kruk aka TacB0sS
7
+ *
8
+ * Licensed under the Apache License, Version 2.0 (the "License");
9
+ * you may not use this file except in compliance with the License.
10
+ * You may obtain a copy of the License at
11
+ *
12
+ * http://www.apache.org/licenses/LICENSE-2.0
13
+ *
14
+ * Unless required by applicable law or agreed to in writing, software
15
+ * distributed under the License is distributed on an "AS IS" BASIS,
16
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
+ * See the License for the specific language governing permissions and
18
+ * limitations under the License.
19
+ */
20
+ import { ComponentSync, } from '@nu-art/thunderstorm-frontend/index';
21
+ import { __stringify } from '@nu-art/ts-common';
22
+ import { ModuleFE_BugReportAdmin, RequestKey_GetLog } from '../modules/ModuleFE_BugReportAdmin.js';
23
+ export class AdminBR extends ComponentSync {
24
+ deriveStateFromProps(nextProps) {
25
+ return { ...nextProps };
26
+ }
27
+ render() {
28
+ const logs = ModuleFE_BugReportAdmin.getLogs();
29
+ return (_jsxs("div", { children: [_jsx("button", { onClick: () => ModuleFE_BugReportAdmin.v1.retrieveLogs({}).execute(), children: "click to display logs" }), _jsx("div", { children: _jsx("table", { style: { width: '100%' }, children: logs.map(this.createRow) }) })] }));
30
+ }
31
+ createRow = (report) => _jsxs("tr", { children: [_jsx("td", { style: { padding: '15px', textAlign: 'left', border: '1px solid #ddd', fontSize: '15px' }, children: report.description }), _jsx("td", { style: { padding: '15px', textAlign: 'left', border: '1px solid #ddd', fontSize: '15px' }, children: report.reports[0].path }), _jsx("td", { style: { padding: '15px', textAlign: 'left', border: '1px solid #ddd', fontSize: '15px' }, children: __stringify(report.tickets) }), _jsx("td", { style: { padding: '15px', textAlign: 'left', border: '1px solid #ddd', fontSize: '15px' }, children: _jsx("button", { onClick: () => ModuleFE_BugReportAdmin.downloadMultiLogs(report.reports), children: "download" }) })] });
32
+ __onRequestCompleted = (key, success) => {
33
+ switch (key) {
34
+ default:
35
+ return;
36
+ case RequestKey_GetLog:
37
+ this.forceUpdate();
38
+ }
39
+ };
40
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,218 @@
1
+ export {};
2
+ // /*
3
+ // * Permissions management system, define access level for each of
4
+ // * your server apis, and restrict users by giving them access levels
5
+ // *
6
+ // * Copyright (C) 2020 Adam van der Kruk aka TacB0sS
7
+ // *
8
+ // * Licensed under the Apache License, Version 2.0 (the "License");
9
+ // * you may not use this file except in compliance with the License.
10
+ // * You may obtain a copy of the License at
11
+ // *
12
+ // * http://www.apache.org/licenses/LICENSE-2.0
13
+ // *
14
+ // * Unless required by applicable law or agreed to in writing, software
15
+ // * distributed under the License is distributed on an "AS IS" BASIS,
16
+ // * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
+ // * See the License for the specific language governing permissions and
18
+ // * limitations under the License.
19
+ // */
20
+ //
21
+ // import * as React from 'react';
22
+ // import {CSSProperties} from 'react';
23
+ // import {BugReportModule} from '../modules/BugReportModule.js';
24
+ // import {ModuleFE_Dialog, ModuleFE_Toaster, TS_Input, TS_TextArea} from '@nu-art/thunderstorm-frontend/index';
25
+ // import {generateHex} from '@nu-art/ts-common';
26
+ // import {Platform_Jira, Platform_Slack} from '@nu-art/bug-report-shared/api';
27
+ //
28
+ // type Props = {
29
+ // shared-components?: React.ReactNode
30
+ // }
31
+ // const style: React.CSSProperties = {
32
+ // cursor: 'pointer',
33
+ // display: 'flex',
34
+ // alignItems: 'center',
35
+ // justifyContent: 'center',
36
+ // position: 'fixed',
37
+ // width: '50px',
38
+ // height: '50px',
39
+ // bottom: '30px',
40
+ // right: '10px',
41
+ // backgroundColor: '#5b7bd6',
42
+ // color: 'white',
43
+ // borderRadius: '50%',
44
+ // borderColor: 'transparent'
45
+ // };
46
+ // type State = {
47
+ // error?: Error,
48
+ // errorInfo?: React.ErrorInfo
49
+ // description?: string
50
+ // subject?: string
51
+ // }
52
+ //
53
+ // export class BugReport
54
+ // extends React.Component<Props, State> {
55
+ //
56
+ // constructor(props: Props) {
57
+ // super(props);
58
+ // this.state = {};
59
+ // }
60
+ //
61
+ // componentDidCatch(error: Error, errorInfo: React.ErrorInfo) {
62
+ // BugReportModule.sendBugReport('Automatic submission', 'these logs were triggered by a UI failure', [Platform_Slack]);
63
+ // this.setState({
64
+ // error: error,
65
+ // errorInfo: errorInfo
66
+ // });
67
+ // }
68
+ //
69
+ // showAppConfirmationDialogExample = () => {
70
+ // const title = 'Bug Report';
71
+ //
72
+ // const onSubmit = () => {
73
+ // if (!this.state.subject)
74
+ // return ModuleFE_Toaster.toastError('you must first add a subject');
75
+ // if (!this.state.description)
76
+ // return ModuleFE_Toaster.toastError('you must first add a description');
77
+ // BugReportModule.sendBugReport(this.state.subject, this.state.description || '', [Platform_Jira]);
78
+ // this.setState({subject: undefined, description: undefined});
79
+ // ModuleFE_Dialog.close();
80
+ // };
81
+ //
82
+ // const content =
83
+ // <div className={'ll_v_c'}>
84
+ // <div style={{
85
+ // border: `1px solid darkslategray`,
86
+ // marginBottom: '5px',
87
+ // width: '91%',
88
+ // margin: '8px'
89
+ // }}>
90
+ // <TS_Input
91
+ // id={'bug-report-subject'}
92
+ // type={'text'}
93
+ // value={this.state.subject || ''}
94
+ // placeholder={'type bug name here'}
95
+ // name={generateHex(8)}
96
+ // onChange={(subject: string) => this.setState({subject})}
97
+ // />
98
+ // </div>
99
+ // <TS_TextArea
100
+ // id={'bug-report-description'}
101
+ // type="text"
102
+ // style={{height: '110px', margin: '8px', width: '100%', outline: 'none'}}
103
+ // value={this.state.description || ''}
104
+ // placeholder={'type bug description here'}
105
+ // onChange={(description: string) => this.setState({description})}/>
106
+ // </div>;
107
+ //
108
+ //
109
+ // // new Dialog_Builder(content)
110
+ // // .setTitle(title)
111
+ // // .addButton(DialogButton_Cancel(() => {
112
+ // // this.setState({description: undefined, subject: undefined});
113
+ // // ModuleFE_Dialog.close();
114
+ // // }))
115
+ // // .addButton(DialogButton_Submit(() => onSubmit(), 'Submit'))
116
+ // // .setOverlayColor('rgba(102, 255, 255, 0.4)')
117
+ // // .show();
118
+ // };
119
+ //
120
+ // render() {
121
+ // if (this.state.errorInfo) {
122
+ // return (
123
+ // <div>
124
+ // <h2>Something went wrong!!</h2>
125
+ // <details style={{whiteSpace: 'pre-wrap'}}>
126
+ // {this.state.error && this.state.error.toString()}
127
+ // <br/>
128
+ // {this.state.errorInfo.componentStack}
129
+ // </details>
130
+ // <button style={style} onClick={() => window.location.reload()}>reload!</button>
131
+ // </div>
132
+ // );
133
+ // }
134
+ //
135
+ // return (
136
+ // <>
137
+ // {this.props.children}
138
+ // <div
139
+ // onClick={this.showAppConfirmationDialogExample}>
140
+ // {this.props.shared-components ||
141
+ // <button style={style}>+</button>}
142
+ // </div>
143
+ // </>
144
+ // );
145
+ // }
146
+ // }
147
+ //
148
+ //
149
+ // //todo To remove:
150
+ //
151
+ // export class DialogButton_Builder
152
+ // extends StylableBuilder {
153
+ //
154
+ // content!: React.ReactNode;
155
+ // action!: () => void;
156
+ // associatedKeys: string[] = [];
157
+ //
158
+ //
159
+ // setContent(content: React.ReactNode) {
160
+ // this.content = content;
161
+ // return this;
162
+ // }
163
+ //
164
+ // setAction(action: () => void) {
165
+ // this.action = action;
166
+ // return this;
167
+ // }
168
+ //
169
+ // setAssociatedKeys(associatedKeys: string[]) {
170
+ // this.associatedKeys = associatedKeys;
171
+ // return this;
172
+ // }
173
+ //
174
+ // build(): DialogButtonModel {
175
+ // return {
176
+ // style: this.style,
177
+ // className: this.className,
178
+ // content: this.content,
179
+ // action: this.action,
180
+ // associatedKeys: this.associatedKeys,
181
+ // };
182
+ // }
183
+ // }
184
+ //
185
+ // export type DialogButtonModel = Stylable & {
186
+ // content: React.ReactNode;
187
+ // associatedKeys: string[];
188
+ // action: () => void;
189
+ // }
190
+ // const defaultButtonStyle: CSSProperties = {
191
+ // borderRadius: '4px',
192
+ // color: 'white',
193
+ // fontSize: '11px',
194
+ // letterSpacing: '-0.18px',
195
+ // outline: 'none',
196
+ // margin: '0px 6px',
197
+ // height: '23px',
198
+ // width: '68px'
199
+ // };
200
+ //
201
+ // const defaultSubmitStyle: CSSProperties = {
202
+ // backgroundColor: '#00b5ff'
203
+ // };
204
+ //
205
+ // const defaultCancelStyle: CSSProperties = {
206
+ // backgroundColor: '#d9d9d9'
207
+ // };
208
+ // export const DialogButton_Cancel = (onSubmit?: () => void, label?: React.ReactNode) =>
209
+ // new DialogButton_Builder()
210
+ // .setStyle({...defaultCancelStyle, ...defaultButtonStyle})
211
+ // .setContent(label || 'Cancel')
212
+ // .setAction(onSubmit || ModuleFE_Dialog.close);
213
+ //
214
+ // export const DialogButton_Submit = (onSubmit: () => void, label?: React.ReactNode) =>
215
+ // new DialogButton_Builder()
216
+ // .setStyle({...defaultSubmitStyle, ...defaultButtonStyle})
217
+ // .setContent(label || 'Submit')
218
+ // .setAction(onSubmit);
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,55 @@
1
+ export {};
2
+ // import {Dialog_Builder} from '@nu-art/thunderstorm-frontend/modules/dialog/ModuleFE_Dialog';
3
+ // import {ComponentSync} from '@nu-art/thunderstorm-frontend/core/ComponentSync';
4
+ // import * as React from 'react';
5
+ //
6
+ //
7
+ // type Props = {
8
+ // url: string
9
+ // }
10
+ //
11
+ // export class Dialog_JiraOpened
12
+ // extends ComponentSync<Props, {}> {
13
+ //
14
+ // protected deriveStateFromProps(nextProps: Props) {
15
+ // return {};
16
+ // }
17
+ //
18
+ // public static show(url: string) {
19
+ // new Dialog_Builder(<Dialog_JiraOpened url={url}/>)
20
+ // .setcloseOverlayOnClick(true)
21
+ // .show();
22
+ // }
23
+ //
24
+ // redirectToJira = () => {
25
+ // if (this.props.url)
26
+ // window.open(this.props.url);
27
+ // };
28
+ //
29
+ // render() {
30
+ // return <div className={'ll_v_s fill'} style={{width: 344}}>
31
+ // <div className={'ll_v_s'} style={{flex: 1, position: 'relative'}}>
32
+ // <div style={{textAlign: 'center', padding: '10px', fontSize: '16px', color: 'darkslategray'}}>Success</div>
33
+ // <div style={{textAlign: 'center', padding: '5px', fontSize: '14px', color: 'darkslategray'}}>Bug report submitted successfully</div>
34
+ // <div style={{position: 'relative', height: '40px'}}>
35
+ // <div
36
+ // className={'clickable ll_h_c'}
37
+ // style={{
38
+ // background: 'DeepSkyBlue',
39
+ // height: 32,
40
+ // paddingRight: 10,
41
+ // paddingLeft: 10,
42
+ // borderRadius: 16,
43
+ // fontSize: '14px',
44
+ // color: 'darkslategray',
45
+ // position: 'absolute',
46
+ // right: '35%'
47
+ // }}
48
+ // onClick={() => this.redirectToJira()}>
49
+ // Take me to jira
50
+ // </div>
51
+ // </div>
52
+ // </div>
53
+ // </div>;
54
+ // }
55
+ // }