Skip to content

Commit af2b0fd

Browse files
committed
added api to test all types
1 parent 6d5285f commit af2b0fd

File tree

5 files changed

+87
-6
lines changed

5 files changed

+87
-6
lines changed

example/client/component/api-fetch.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,12 @@ pre {
151151
}
152152
</style><div id="cntr">
153153
<header>API Function: <button id="fetch">Execute 🗘</button></header>
154-
<input type="text" id="func" placeholder="Function Name" required />
154+
<datalist id="list">
155+
<option value="test">test</option>
156+
<option value="test.lol">lol</option>
157+
<option value="test.ping">ping</option>
158+
</datalist>
159+
<input list="list" type="text" id="func" placeholder="Function Name" required />
155160
<section id="para_cntr">
156161
<header>Parameters: <button id="add_para"><strong>+</strong></button></header>
157162
</section>

example/client/component/key-val.js

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,47 @@ input[type="text"], textarea {
5555
vertical-align: middle;
5656
padding: 0.25em;
5757
}
58-
</style><input type="text" name="key" id="key" placeholder="Parameter Name" required />
58+
</style><datalist id="list">
59+
<option value="bool">bool</option>
60+
<option value="email">email</option>
61+
<option value="flag">flag</option>
62+
<option value="float">float</option>
63+
<option value="hex">hex</option>
64+
<option value="int">int</option>
65+
<option value="ipv4">ipv4</option>
66+
<option value="ipv6">ipv6</option>
67+
<option value="json">json</option>
68+
<option value="json64">json64</option>
69+
<option value="mac">mac</option>
70+
<option value="mixed">mixed</option>
71+
<option value="number">number</option>
72+
<option value="string">string</option>
73+
<option value="string64">string64</option>
74+
<option value="timestamp">timestamp</option>
75+
<option value="unsigned">unsigned</option>
76+
<option value="url">url</option>
77+
<option value="url64">url64</option>
78+
// Nullables
79+
<option value="_bool">bool (nullable)</option>
80+
<option value="_email">email (nullable)</option>
81+
<option value="_flag">flag (nullable)</option>
82+
<option value="_float">float (nullable)</option>
83+
<option value="_hex">hex (nullable)</option>
84+
<option value="_int">int (nullable)</option>
85+
<option value="_ipv4">ipv4 (nullable)</option>
86+
<option value="_ipv6">ipv6 (nullable)</option>
87+
<option value="_json">json (nullable)</option>
88+
<option value="_json64">json64 (nullable)</option>
89+
<option value="_mac">mac (nullable)</option>
90+
<option value="_mixed">mixed (nullable)</option>
91+
<option value="_number">number (nullable)</option>
92+
<option value="_string">string (nullable)</option>
93+
<option value="_string64">string64 (nullable)</option>
94+
<option value="_timestamp">timestamp (nullable)</option>
95+
<option value="_unsigned">unsigned (nullable)</option>
96+
<option value="_url">url (nullable)</option>
97+
<option value="_url64">url64 (nullable)</option>
98+
</datalist><input list="list" type="text" name="key" id="key" placeholder="Parameter Name" required />
5999
<strong>:</strong>
60100
<textarea name="val" id="val" cols="30" rows="1" placeholder="Parameter Value; Must be a JSON value"></textarea>
61101
<input type="button" id="rem" value="🗙" />`;

example/server/function/@Index.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@
33
use Krishna\API\Func;
44

55
Func::set_definition(function(array $params, string $funcname) {
6+
\Krishna\API\Debugger::dump('Test', 'Testing debug message');
67
return 'This is default response';
78
});

example/server/function/Test/@Index.php

Lines changed: 39 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,47 @@
22
use Krishna\API\Func;
33

44
Func::set_signature([
5-
'?a' => 'int',
6-
'?b' => 'int|float',
7-
'?c' => 'url64|null'
5+
'?bool' => 'bool',
6+
'?email' => 'email',
7+
'?flag' => 'flag',
8+
'?float' => 'float',
9+
'?hex' => 'hex',
10+
'?int' => 'int',
11+
'?ipv4' => 'ipv4',
12+
'?ipv6' => 'ipv6',
13+
'?json' => 'json',
14+
'?json64' => 'json64',
15+
'?mac' => 'mac',
16+
'?mixed' => 'mixed',
17+
'?number' => 'number',
18+
'?string' => 'string',
19+
'?string64' => 'string64',
20+
'?timestamp' => 'timestamp',
21+
'?unsigned' => 'unsigned',
22+
'?url' => 'url',
23+
'?url64' => 'url64',
24+
// Nullables
25+
'?_bool' => 'bool|null',
26+
'?_email' => 'email|null',
27+
'?_flag' => 'flag|null',
28+
'?_float' => 'float|null',
29+
'?_hex' => 'hex|null',
30+
'?_int' => 'int|null',
31+
'?_ipv4' => 'ipv4|null',
32+
'?_ipv6' => 'ipv6|null',
33+
'?_json' => 'json|null',
34+
'?_json64' => 'json64|null',
35+
'?_mac' => 'mac|null',
36+
'?_mixed' => 'mixed|null',
37+
'?_number' => 'number|null',
38+
'?_string' => 'string|null',
39+
'?_string64' => 'string64|null',
40+
'?_timestamp' => 'timestamp|null',
41+
'?_unsigned' => 'unsigned|null',
42+
'?_url' => 'url|null',
43+
'?_url64' => 'url64|null',
844
]);
945

1046
Func::set_definition(function(array $params, string $function_name) {
11-
\Krishna\API\Debugger::dump('Test', 'Testing debug message');
1247
return $params;
1348
});

0 commit comments

Comments
 (0)