This repository was archived by the owner on Sep 3, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 4 files changed +19
-10
lines changed
stream-store/Viewer/HalViewer/components Expand file tree Collapse file tree 4 files changed +19
-10
lines changed Original file line number Diff line number Diff line change 6363 "react-remarkable" : " 1.1.3" ,
6464 "react-schema-form" : " 0.6.2" ,
6565 "rxjs" : " 5.4.3" ,
66- "uri-js" : " 4.2.2" ,
6766 "uri-template" : " 1.0.1" ,
6867 "uuid" : " 3.3.2"
6968 },
Original file line number Diff line number Diff line change @@ -7,7 +7,7 @@ import { connect, createState } from 'reactive';
77import { Observable } from 'rxjs' ;
88import rels from 'stream-store/rels' ;
99import themes from 'themes' ;
10- import { HalResource , NavigatableProps } from 'types' ;
10+ import { HalResource , HttpResponse , NavigatableProps } from 'types' ;
1111import uriTemplate from 'uri-template' ;
1212import { hal , http , reactJsonTheme } from 'utils' ;
1313
@@ -91,16 +91,26 @@ class JsonViewer extends PureComponent<
9191 ) ,
9292 ) ;
9393
94+ const streams = this . _getStreams ( responses ) ;
95+
9496 this . setState ( {
9597 loading : false ,
96- streams : Object . values (
97- responses . flatMap ( ( { body } ) =>
98- getStreamLinks ( hal . normalizeResource ( body as HalResource ) ) ,
99- ) ,
100- ) ,
98+ streams,
10199 } ) ;
102100 } ;
103101
102+ _getStreams = ( responses : HttpResponse [ ] ) =>
103+ Object . values (
104+ responses
105+ . flatMap ( ( { body } ) =>
106+ getStreamLinks ( hal . normalizeResource ( body as HalResource ) ) ,
107+ )
108+ . map ( ( { _links, ...resource } ) => ( {
109+ ...resource ,
110+ _links : hal . resolveLinks ( '../../' , _links ) ,
111+ } ) ) ,
112+ ) ;
113+
104114 _handlePotentialStreamIdClose = ( ) =>
105115 this . setState ( {
106116 open : false ,
Original file line number Diff line number Diff line change 11import { HalLink , HalLinks , HalResource } from 'types' ;
2- import { resolve } from 'uri-js ' ;
2+ import URL from 'url ' ;
33
44const resolveLinks = ( url : string , links : HalLinks ) : HalLinks =>
55 Object . keys ( links ) . reduce (
66 ( akk , rel ) => ( {
77 ...akk ,
88 [ rel ] : links [ rel ] . map ( ( { href, ...link } ) => ( {
99 ...link ,
10- href : resolve ( url , href || './' , { tolerant : true } ) ,
10+ href : URL . resolve ( url , href || './' ) ,
1111 rel,
1212 } ) ) ,
1313 } ) ,
Original file line number Diff line number Diff line change @@ -7740,7 +7740,7 @@ upper-case@^1.1.1:
77407740 version "1.1.3"
77417741 resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598"
77427742
7743- uri-js@4.2.2, uri-js@ ^4.2.2 :
7743+ uri-js@^4.2.2 :
77447744 version "4.2.2"
77457745 resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0"
77467746 dependencies :
You can’t perform that action at this time.
0 commit comments