Skip to content
This repository was archived by the owner on Sep 3, 2024. It is now read-only.

Commit e5a1c9f

Browse files
use uri templates
1 parent 6f69ac0 commit e5a1c9f

File tree

2 files changed

+22
-14
lines changed

2 files changed

+22
-14
lines changed

src/stream-store/rels.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ const rels = {
1111
append: 'streamStore:append',
1212
delete: 'streamStore:delete',
1313
find: 'streamStore:find',
14-
streamList: 'streamStore:stream-list',
14+
browse: 'streamStore:feed-browser',
1515
};
1616

1717
export default rels;

src/stream-store/views/StreamMessage.js

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import Inspector, {
1515
ObjectRootLabel,
1616
ObjectName,
1717
} from 'react-inspector';
18+
import uriTemplate from 'uri-template';
1819
import { Code } from '../../components/Icons';
1920
import {
2021
Table,
@@ -144,18 +145,24 @@ class StreamMessageJson extends PureComponent {
144145

145146
_handlePotentialStreamIdClick = async (
146147
{ currentTarget: anchorElement },
147-
value,
148+
p,
148149
) => {
149-
const { authorization } = this.props;
150+
const { authorization, links } = this.props;
150151

151152
this.setState({
152153
anchorElement,
153154
});
154155

156+
const template = uriTemplate.parse(
157+
decodeURI(links[rels.browse].href),
158+
);
159+
160+
const url = template.expand({ p, t: 'e' });
161+
155162
const responses = await Promise.all(
156-
[...new Set([value, String(value).replace('-', '')])].map(p =>
163+
[...new Set([p, String(p).replace('-', '')])].map(p =>
157164
http.get({
158-
url: `../../stream/browser?p=${p}&t=e`,
165+
url,
159166
headers: { authorization },
160167
}),
161168
),
@@ -235,16 +242,12 @@ class StreamMessageJson extends PureComponent {
235242
}
236243
}
237244

238-
const StreamMessageData = ({ payload, onNavigate }) => (
239-
<StreamMessageJson title={'Data'} json={payload} onNavigate={onNavigate} />
245+
const StreamMessageData = ({ payload, ...props }) => (
246+
<StreamMessageJson title={'Data'} json={payload} {...props} />
240247
);
241248

242-
const StreamMessageMetadata = ({ payload, onNavigate }) => (
243-
<StreamMessageJson
244-
title={'Metadata'}
245-
json={payload}
246-
onNavigate={onNavigate}
247-
/>
249+
const StreamMessageMetadata = ({ payload, ...props }) => (
250+
<StreamMessageJson title={'Metadata'} json={payload} {...props} />
248251
);
249252

250253
const StreamMessage = ({ message, links, onNavigate }) => (
@@ -261,10 +264,15 @@ const StreamMessage = ({ message, links, onNavigate }) => (
261264
/>
262265
</TableBody>
263266
</Table>
264-
<StreamMessageData payload={message.payload} onNavigate={onNavigate} />
267+
<StreamMessageData
268+
payload={message.payload}
269+
onNavigate={onNavigate}
270+
links={links}
271+
/>
265272
<StreamMessageMetadata
266273
payload={message.metadata}
267274
onNavigate={onNavigate}
275+
links={links}
268276
/>
269277
</section>
270278
);

0 commit comments

Comments
 (0)