Revize f30a7b90
Přidáno uživatelem Lukáš Vlček před téměř 3 roky(ů)
webapp/api/api.ts | ||
---|---|---|
101 | 101 |
* @memberof AnnotationInfo |
102 | 102 |
*/ |
103 | 103 |
'tagInstances'?: Array<TagInstanceInfo> | null; |
104 |
/** |
|
105 |
* |
|
106 |
* @type {Array<TagInstanceCSSInfo>} |
|
107 |
* @memberof AnnotationInfo |
|
108 |
*/ |
|
109 |
'cssInfo'?: Array<TagInstanceCSSInfo> | null; |
|
104 | 110 |
} |
105 | 111 |
/** |
106 | 112 |
* |
... | ... | |
138 | 144 |
* @memberof AnnotationInstanceAddRequest |
139 | 145 |
*/ |
140 | 146 |
'instanceId'?: string | null; |
147 |
/** |
|
148 |
* |
|
149 |
* @type {string} |
|
150 |
* @memberof AnnotationInstanceAddRequest |
|
151 |
*/ |
|
152 |
'selectedText'?: string | null; |
|
141 | 153 |
} |
142 | 154 |
/** |
143 | 155 |
* |
... | ... | |
432 | 444 |
*/ |
433 | 445 |
'documents'?: Array<DocumentAddInfo> | null; |
434 | 446 |
} |
447 |
/** |
|
448 |
* |
|
449 |
* @export |
|
450 |
* @interface DocumentAnnotationInfo |
|
451 |
*/ |
|
452 |
export interface DocumentAnnotationInfo { |
|
453 |
/** |
|
454 |
* |
|
455 |
* @type {string} |
|
456 |
* @memberof DocumentAnnotationInfo |
|
457 |
*/ |
|
458 |
'annotationId'?: string; |
|
459 |
/** |
|
460 |
* |
|
461 |
* @type {string} |
|
462 |
* @memberof DocumentAnnotationInfo |
|
463 |
*/ |
|
464 |
'userId'?: string; |
|
465 |
/** |
|
466 |
* |
|
467 |
* @type {string} |
|
468 |
* @memberof DocumentAnnotationInfo |
|
469 |
*/ |
|
470 |
'userFirstName'?: string | null; |
|
471 |
/** |
|
472 |
* |
|
473 |
* @type {string} |
|
474 |
* @memberof DocumentAnnotationInfo |
|
475 |
*/ |
|
476 |
'userSurname'?: string | null; |
|
477 |
/** |
|
478 |
* |
|
479 |
* @type {string} |
|
480 |
* @memberof DocumentAnnotationInfo |
|
481 |
*/ |
|
482 |
'username'?: string | null; |
|
483 |
} |
|
435 | 484 |
/** |
436 | 485 |
* |
437 | 486 |
* @export |
... | ... | |
468 | 517 |
* @memberof DocumentListInfo |
469 | 518 |
*/ |
470 | 519 |
'annotatingUsers'?: Array<DocumentUserInfo> | null; |
520 |
/** |
|
521 |
* |
|
522 |
* @type {boolean} |
|
523 |
* @memberof DocumentListInfo |
|
524 |
*/ |
|
525 |
'finalizedExists'?: boolean; |
|
526 |
/** |
|
527 |
* |
|
528 |
* @type {string} |
|
529 |
* @memberof DocumentListInfo |
|
530 |
*/ |
|
531 |
'finalizedAnnotationId'?: string | null; |
|
532 |
/** |
|
533 |
* |
|
534 |
* @type {EState} |
|
535 |
* @memberof DocumentListInfo |
|
536 |
*/ |
|
537 |
'finalizedState'?: EState; |
|
538 |
/** |
|
539 |
* |
|
540 |
* @type {Array<DocumentAnnotationInfo>} |
|
541 |
* @memberof DocumentListInfo |
|
542 |
*/ |
|
543 |
'finalAnnotations'?: Array<DocumentAnnotationInfo> | null; |
|
471 | 544 |
} |
472 | 545 |
/** |
473 | 546 |
* |
... | ... | |
988 | 1061 |
*/ |
989 | 1062 |
'subTags'?: Array<SubTagInfo> | null; |
990 | 1063 |
} |
1064 |
/** |
|
1065 |
* |
|
1066 |
* @export |
|
1067 |
* @interface TagInstanceCSSInfo |
|
1068 |
*/ |
|
1069 |
export interface TagInstanceCSSInfo { |
|
1070 |
/** |
|
1071 |
* |
|
1072 |
* @type {string} |
|
1073 |
* @memberof TagInstanceCSSInfo |
|
1074 |
*/ |
|
1075 |
'instanceId'?: string; |
|
1076 |
/** |
|
1077 |
* |
|
1078 |
* @type {string} |
|
1079 |
* @memberof TagInstanceCSSInfo |
|
1080 |
*/ |
|
1081 |
'color'?: string | null; |
|
1082 |
/** |
|
1083 |
* |
|
1084 |
* @type {number} |
|
1085 |
* @memberof TagInstanceCSSInfo |
|
1086 |
*/ |
|
1087 |
'padding'?: number; |
|
1088 |
} |
|
991 | 1089 |
/** |
992 | 1090 |
* |
993 | 1091 |
* @export |
... | ... | |
1066 | 1164 |
* @memberof TagInstanceInfo |
1067 | 1165 |
*/ |
1068 | 1166 |
'sentiment'?: ETagSentiment; |
1167 |
/** |
|
1168 |
* |
|
1169 |
* @type {string} |
|
1170 |
* @memberof TagInstanceInfo |
|
1171 |
*/ |
|
1172 |
'selectedText'?: string | null; |
|
1069 | 1173 |
} |
1070 | 1174 |
/** |
1071 | 1175 |
* |
webapp/pages/link.tsx | ||
---|---|---|
1 |
import 'antd/dist/antd.css'; |
|
2 |
import React, { useContext, useEffect } from 'react'; |
|
3 |
|
|
4 |
import { useRouter } from 'next/router'; |
|
5 |
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; |
|
6 |
import { faFileExport } from '@fortawesome/free-solid-svg-icons'; |
|
7 |
import { Button, Typography } from 'antd'; |
|
8 |
import styles from '../styles/Link.module.scss'; |
|
9 |
|
|
10 |
function LinkPage() { |
|
11 |
const router = useRouter(); |
|
12 |
let url = router.query.url; |
|
13 |
|
|
14 |
if (Array.isArray(url)) { |
|
15 |
url = url[0]; |
|
16 |
} |
|
17 |
if (!url) { |
|
18 |
return <div>Invalid request</div>; |
|
19 |
} |
|
20 |
|
|
21 |
return ( |
|
22 |
<div className={styles.page}> |
|
23 |
<div className={styles.container}> |
|
24 |
<div className={styles.header}>Tento odkaz vede mimo anotační službu</div> |
|
25 |
<p> |
|
26 |
Chystáte se odejít do neznámého a potenciálně nebezpečného prostředí: |
|
27 |
</p> |
|
28 |
<a href={url}>{url}</a> |
|
29 |
|
|
30 |
<Button onClick={router.back} className={styles.button}> |
|
31 |
Zpět |
|
32 |
</Button> |
|
33 |
</div> |
|
34 |
</div> |
|
35 |
); |
|
36 |
} |
|
37 |
|
|
38 |
export default LinkPage; |
webapp/styles/Link.module.scss | ||
---|---|---|
1 |
.page { |
|
2 |
display: flex; |
|
3 |
flex-direction: column; |
|
4 |
justify-content: center; |
|
5 |
align-items: center; |
|
6 |
align-content: center; |
|
7 |
height: 100vh; |
|
8 |
width: 100vw; |
|
9 |
} |
|
10 |
|
|
11 |
.container { |
|
12 |
display: flex; |
|
13 |
flex-direction: column; |
|
14 |
justify-content: stretch; |
|
15 |
width: 100%; |
|
16 |
max-width: 600px; |
|
17 |
background-color: whitesmoke; |
|
18 |
padding: 15px; |
|
19 |
border-radius: 10px; |
|
20 |
box-shadow: 5px 5px 5px #c9c9c9; |
|
21 |
|
|
22 |
text-align: left; |
|
23 |
|
|
24 |
.header { |
|
25 |
border-radius: 10px 10px 0 0; |
|
26 |
margin: -15px; |
|
27 |
margin-bottom: 10px; |
|
28 |
padding: 10px; |
|
29 |
background-color: gainsboro; |
|
30 |
font-size: large; |
|
31 |
font-weight: bold; |
|
32 |
} |
|
33 |
|
|
34 |
.button { |
|
35 |
margin-top: 30px; |
|
36 |
} |
|
37 |
} |
Také k dispozici: Unified diff
Annotation document links