A full-screen extension target that renders when a `pos.draft-order-details.action.render` target calls for it
import React from 'react';
import {
Text,
Screen,
ScrollView,
Navigator,
reactExtension,
useApi,
} from '@shopify/ui-extensions-react/point-of-sale';
const Modal = () => {
const api = useApi<'pos.draft-order-details.action.render'>();
return (
<Navigator>
<Screen name="DraftOrderDetailsAction" title="Draft Order Details Action">
<ScrollView>
<Text>{`Order ID: ${api.draftOrder.id}`}</Text>
</ScrollView>
</Screen>
</Navigator>
);
};
export default reactExtension('pos.draft-order-details.action.render', () => (
<Modal />
));
import {
Navigator,
Screen,
ScrollView,
Text,
extension,
} from '@shopify/ui-extensions/point-of-sale';
export default extension(
'pos.draft-order-details.action.render',
(root, api) => {
const navigator = root.createComponent(Navigator);
const screen = root.createComponent(Screen, {
name: 'DraftOrderDetailsAction',
title: 'Draft Order Details Action',
});
const scrollView = root.createComponent(ScrollView);
const text = root.createComponent(Text);
text.append(`ID for current draft order screen: ${api.order.id}`);
scrollView.append(text);
screen.append(scrollView);
navigator.append(screen);
root.append(navigator);
},
);