xxxxxxxxxx
npm install -g vue-cli //make sure you have node and npm installed
vue init webpack <appname> // eg: vue init webpack myapp
cd <appname> // cd myapp
npm install
npm run dev //server will start in port 8080
xxxxxxxxxx
installing vue cli commands
npm install --global vue-cli is now
npm install -g @vue/cli
xxxxxxxxxx
add_action('graphql_register_types', function() {
register_graphql_scalar('JSON', [
'serialize' => function($value) {
return $value;
},
'parseValue' => function($value) {
return $value;
},
'parseLiteral' => function($ast) {
if ($ast instanceof \GraphQL\Language\AST\ObjectValueNode) {
$value = [];
foreach ($ast->fields as $field) {
$key = $field->name->value;
$val = ($field->value instanceof \GraphQL\Language\AST\ListValueNode)
? array_map(function ($v) {
return parseLiteralValue($v);
}, iterator_to_array($field->value->values))
: parseLiteralValue($field->value);
$value[$key] = $val;
}
return $value;
} elseif ($ast instanceof \GraphQL\Language\AST\ListValueNode) {
return array_map(fn($v) => parseLiteralValue($v), iterator_to_array($ast->values));
}
return parseLiteralValue($ast);
},
]);
});
// Helper function to parse literal values from AST nodes.
function parseLiteralValue($node) {
if ($node instanceof \GraphQL\Language\AST\ObjectValueNode) {
$result = [];
foreach ($node->fields as $field) {
$result[$field->name->value] = parseLiteralValue($field->value);
}
return $result;
}
return $node->value ?? null;
}
xxxxxxxxxx
add_action('graphql_register_types', function() {
register_graphql_scalar('JSON', [
'serialize' => function($value) {
return $value;
},
'parseValue' => function($value) {
return $value;
},
'parseLiteral' => function($ast) {
if ($ast instanceof \GraphQL\Language\AST\ObjectValueNode) {
$value = [];
foreach ($ast->fields as $field) {
$key = $field->name->value;
$val = ($field->value instanceof \GraphQL\Language\AST\ListValueNode)
? array_map(function ($v) {
return parseLiteralValue($v);
}, iterator_to_array($field->value->values))
: parseLiteralValue($field->value);
$value[$key] = $val;
}
return $value;
} elseif ($ast instanceof \GraphQL\Language\AST\ListValueNode) {
return array_map(fn($v) => parseLiteralValue($v), iterator_to_array($ast->values));
}
return parseLiteralValue($ast);
},
]);
});
// Helper function to parse literal values from AST nodes.
function parseLiteralValue($node) {
if ($node instanceof \GraphQL\Language\AST\ObjectValueNode) {
$result = [];
foreach ($node->fields as $field) {
$result[$field->name->value] = parseLiteralValue($field->value);
}
return $result;
}
return $node->value ?? null;
}