diff --git a/components/AndroidWidget/HelloWidget.jsx b/components/AndroidWidget/HelloWidget.jsx index af64fe1..12741ad 100644 --- a/components/AndroidWidget/HelloWidget.jsx +++ b/components/AndroidWidget/HelloWidget.jsx @@ -1,7 +1,7 @@ import React from "react"; import { FlexWidget, TextWidget } from "react-native-android-widget"; -export function HelloWidget() { +export function HelloWidget({ time, delayString }) { return ( - + > + + + + + + {delayString ? ( + delayString.map((d) => { + let data = d.split(" "); + return ( + + + + + + ); + }) + ) : ( + + 現在、5分以上の遅れはありません。 + + )} + ); } diff --git a/components/AndroidWidget/widget-task-handler.jsx b/components/AndroidWidget/widget-task-handler.jsx index e4c371a..f644228 100644 --- a/components/AndroidWidget/widget-task-handler.jsx +++ b/components/AndroidWidget/widget-task-handler.jsx @@ -1,34 +1,52 @@ import React from "react"; import { HelloWidget } from "./HelloWidget"; +import dayjs from "dayjs"; +import { ToastAndroid } from "react-native"; const nameToWidget = { // Hello will be the **name** with which we will reference our widget. - Hello: HelloWidget, + JR_shikoku_train_info: HelloWidget, }; export async function widgetTaskHandler(props) { const widgetInfo = props.widgetInfo; const Widget = nameToWidget[widgetInfo.widgetName]; - + const time = dayjs().format("HH:mm"); + ToastAndroid.show( + `Widget Action: ${props.widgetAction} ${time}`, + ToastAndroid.SHORT + ); + const delayString = await fetch( + "https://script.google.com/macros/s/AKfycbyKxch7z7l8e07LXulRHqxjVoIiB13kcgvoToLE-rqlxLmLSKdlmqz0FI1F2EuA7Zfg/exec" + ) + .then((response) => response.text()) + .then((data) => { + if (data !== "") { + return data.split("^"); + } + return null; + }); + ToastAndroid.show(`${delayString}`, ToastAndroid.SHORT); switch (props.widgetAction) { case "WIDGET_ADDED": - props.renderWidget(); - break; - case "WIDGET_UPDATE": - // Not needed for now - break; - + // Not needed for now + case "WIDGET_CLICK": + // Not needed for now case "WIDGET_RESIZED": // Not needed for now + props.renderWidget(); + + break; + + break; + break; case "WIDGET_DELETED": // Not needed for now break; - case "WIDGET_CLICK": - // Not needed for now break; default: