Untitled
unknown
javascript
a year ago
3.6 kB
7
Indexable
export async function createAppMetaFields(admin, session, data) {
const metafields = JSON.stringify(data);
console.log("Metafields:", metafields);
/* Metafields:
"{\"name\":\"Config\",\"status\":\"saved\",\"condition\":\"total_price\",\"threshold\":99.99,
\"messageAboveThreshold\":\"\",\"messageBelowThreshold\":\"🤡🥳 ${100}\",\"displayPlatform\":\"both\",\"displayPages\":\"all\",\"displayProducts\":\"all\",\"displayButton
\":true,\"displayPosition\":\"top\",\"listProductsID\":[],\"selectedPagesID\":[],\"displayDateStart\":\"2021
-09-01T00:00:00Z\",\"displayDateEnd\":\"2021-09-30T23:59:59Z\",\"textColor\":\"#2E2A39\",\"specialTextColor\
":\"#2E2A39\",\"barBackgroundColor\":\"#E6F4A7\",\"buttonColor\":\"#2E2A39\",\"linkColor\":\"#2E2A39\",\"bor
derColor\":\"#2E2A39\",\"backgroundImage\":\"\",\"borderRadius\":8,\"borderWidth\":0,\"borderStyle\":\"0 0
black\",\"padding\":0,\"margin\":0,\"fontSize\":0,\"specialTextFontSize\":\"22\",\"textAlignment\":\"center\
",\"width\":100,\"height\":10}"
*/
const ownerID = await getOwnerID(admin, session);
const query = `
#graphql
mutation CreateAppDataMetafield($metafieldsSetInput: [MetafieldsSetInput!]!) {
metafieldsSet(metafields: $metafieldsSetInput) {
metafields {
id
namespace
key
value
}
userErrors {
field
message
}
}
}
`;
const variables = {
"metafieldsSetInput": [
{
"namespace": "test1",
"key": "test",
"type": "json",
"value": metafields,
"ownerId": ownerID
}
]
};
console.log("Variables:", variables);
/* Variables: {
15:40:32 │ remix │ metafieldsSetInput: [
15:40:32 │ remix │ {
15:40:32 │ remix │ namespace: 'config_fs_bar',
15:40:32 │ remix │ key: 'config_free_shipping_bar',
15:40:32 │ remix │ type: 'json',
15:40:32 │ remix │ value:
'"{\\"name\\":\\"Config\\",\\"status\\":\\"saved\\",\\"condition\\":\\"total_price\\",\\"thre
shold\\":99.99,\\"messageAboveThreshold\\":\\"\\",\\"messageBelowThreshold\\":\\"🤡🥳 ${100} \\",\\"displayPlatform\\":\\"both\\",\\"displayPages\\":\\"all\\",\\"displayProducts\\":\\
"all\\",\\"displayButton\\":true,\\"displayPosition\\":\\"top\\",\\"listProductsID\\":[],\\"selectedPagesID\
\":[],\\"displayDateStart\\":\\"2021-09-01T00:00:00Z\\",\\"displayDateEnd\\":\\"2021-09-30T23:59:59Z\\",\\"t
extColor\\":\\"#2E2A39\\",\\"specialTextColor\\":\\"#2E2A39\\",\\"barBackgroundColor\\":\\"#E6F4A7\\",\\"but
tonColor\\":\\"#2E2A39\\",\\"linkColor\\":\\"#2E2A39\\",\\"borderColor\\":\\"#2E2A39\\",\\"backgroundImage\\
":\\"\\",\\"borderRadius\\":8,\\"borderWidth\\":0,\\"borderStyle\\":\\"0 0
black\\",\\"padding\\":0,\\"margin\\":0,\\"fontSize\\":0,\\"specialTextFontSize\\":\\"22\\",\\"textAlignment
\\":\\"center\\",\\"width\\":100,\\"height\\":10}"',
15:40:32 │ remix │ ownerId: 'gid://shopify/AppInstallation/498838241496'
15:40:32 │ remix │ }
15:40:32 │ remix │ ]
15:40:32 │ remix │ }
15:40:32 │ remix │ LO
Error creating metafields: GraphqlQueryError: Variable
$metafieldsSetInput of type [MetafieldsSetInput!]! was provided invalid value
*/
try {
const response = await admin.graphql(query, variables);
return await response.json();
} catch (error) {
console.error("Error creating metafields:", error);
return { error: "Unable to create metafields", status: 500 };
}
}Editor is loading...
Leave a Comment