godprotocol 1.1.32 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Datatypes/arr.js +559 -254
- package/Datatypes/bool.js +8 -5
- package/Datatypes/callable.js +1 -1
- package/Datatypes/cls.js +193 -24
- package/Datatypes/conf.js +2 -2
- package/Datatypes/err.js +25 -0
- package/Datatypes/func.js +89 -13
- package/Datatypes/functions/storage.js +572 -12
- package/Datatypes/functions/wallet.js +49 -0
- package/Datatypes/instance.js +87 -122
- package/Datatypes/num.js +192 -153
- package/Datatypes/str.js +188 -122
- package/Datatypes/twa.js +346 -71
- package/Datatypes/voi.js +9 -4
- package/Index.js +1 -1
- package/Instances/account.js +0 -0
- package/Instances/event.js +0 -0
- package/Instances/fold.js +103 -0
- package/Instances/folder_queries.js +46 -0
- package/Instances/response.js +31 -0
- package/Objects/Account.js +160 -110
- package/Objects/Blockweb.js +6 -11
- package/Objects/Callable.js +223 -188
- package/Objects/Chain.js +127 -142
- package/Objects/Datatypes.js +114 -588
- package/Objects/Manager.js +349 -39
- package/Objects/Oracle.js +283 -210
- package/Objects/Repository.js +12 -33
- package/Objects/Trinity.js +9 -7
- package/Objects/Utils.js +8 -8
- package/Objects/Virtual_machine.js +320 -320
- package/README.md +0 -0
- package/callables/functions/assert.js +10 -0
- package/callables/functions/display.js +2 -3
- package/callables/functions/env.js +5 -0
- package/callables/functions/event.js +14 -0
- package/callables/functions/exit.js +3 -2
- package/callables/functions/folder.js +15 -0
- package/callables/functions/get_uid.js +6 -0
- package/callables/functions/hash.js +7 -0
- package/callables/functions/import_.js +62 -0
- package/callables/functions/local.js +9 -0
- package/callables/functions/net.js +33 -18
- package/callables/functions/parse.js +35 -0
- package/callables/functions/query.js +12 -0
- package/callables/functions/render.js +9 -13
- package/callables/functions/servers.js +10 -0
- package/callables/functions/spawn.js +7 -0
- package/callables/functions/store.js +75 -0
- package/callables/functions/super_.js +24 -0
- package/callables/functions/typeof.js +32 -0
- package/callables/functions/wait.js +9 -0
- package/callables/register.js +193 -8
- package/html/create.js +110 -0
- package/html/index.js +114 -0
- package/html/load.js +165 -0
- package/html/parse.js +171 -0
- package/html/run.js +151 -0
- package/html/util.js +5 -0
- package/package.json +5 -3
- package/repos/fs.js +114 -0
- package/repos/github.js +73 -0
- package/repos/ram.js +47 -0
- package/utils/create_server.js +66 -26
- package/utils/hash.js +3 -2
- package/utils/ops.js +2 -0
- package/utils/oracle_handlers.js +7 -0
- package/utils/services.js +18 -51
- package/utils/socket_server.js +36 -0
- package/utils/vm_utils.js +241 -137
- package/callables/functions/assign.js +0 -6
package/Datatypes/str.js
CHANGED
|
@@ -1,138 +1,204 @@
|
|
|
1
|
-
import Storage from "./functions/storage";
|
|
1
|
+
import Storage from "./functions/storage.js";
|
|
2
2
|
|
|
3
3
|
class Str extends Storage {
|
|
4
|
-
constructor(config,
|
|
5
|
-
super(
|
|
4
|
+
constructor(config, account) {
|
|
5
|
+
super(account)
|
|
6
6
|
|
|
7
7
|
this.config = config
|
|
8
8
|
this.type = 'string'
|
|
9
|
+
|
|
10
|
+
this.methods = {
|
|
11
|
+
...this.methods,
|
|
12
|
+
|
|
13
|
+
'title': {args: [], ret: ['Titled', 'string']},
|
|
14
|
+
'upper': {args: [], ret: ['CAPS', 'string']},
|
|
15
|
+
'lower': {args: [], ret: ['lower', 'string']},
|
|
16
|
+
'len': {args: [], ret: ['str.length', 'number']},
|
|
17
|
+
'slice': {args: [['start', 'number'], ['end', 'number']], ret: ['substr', 'string']},
|
|
18
|
+
'concat': {args: [['other', 'string']], ret: ['concatenated_str', 'string']},
|
|
19
|
+
'includes': {args: [['other', 'string']], ret: ['yes', 'boolean']},
|
|
20
|
+
'is_empty': {args: [], ret: ['yes', 'boolean']},
|
|
21
|
+
'is_blank': {args: [], ret: ['yes', 'boolean']},
|
|
22
|
+
'is_numeric': {args: [], ret: ['yes', 'boolean']},
|
|
23
|
+
'endswith': {args: [['char', 'string']], ret: ['yes', 'boolean']},
|
|
24
|
+
'startswith': {args: [['char', 'string']], ret: ['yes', 'boolean']},
|
|
25
|
+
'padend': {args: [['length', 'number'], ['char', 'string']], ret: ['result', 'string']},
|
|
26
|
+
'padstart': {args: [['length', 'number'], ['char', 'string']], ret: ['result', 'string']},
|
|
27
|
+
'count': {args: [['char', 'string']], ret: ['result', 'number']},
|
|
28
|
+
'reverse': {args: [], ret: ['reversed_string', 'string']},
|
|
29
|
+
'repeat': {args: [['count', 'number']], ret: ['repeated', 'string']},
|
|
30
|
+
'replace': {args: [['searchterm', 'string'], ['replacement', 'string'], ['globally', 'boolean']], ret: ['result', 'string']},
|
|
31
|
+
'charcode': {args: [['code', 'string']], ret: ['result', 'array']},
|
|
32
|
+
'find': {args: [['char', 'string'], ['last', 'boolean']], ret: ['index', 'number']},
|
|
33
|
+
'index': {args: [['index', 'number']], ret: ['char', 'string']},
|
|
34
|
+
'split': {args: [['char', 'string']], ret: ['result', 'array']},
|
|
35
|
+
'trim': {args: [['type', 'number', '0:boundaries', '1:beginning', '2:end'], ['char', 'string']], ret: ['result', 'string']},
|
|
36
|
+
}
|
|
9
37
|
}
|
|
10
38
|
|
|
11
|
-
|
|
12
|
-
let result
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
default:
|
|
74
|
-
result = me.replace(new RegExp(`^${char_regx}+|${char_regx}+$`, 'g'), '');
|
|
75
|
-
}
|
|
76
|
-
break;
|
|
77
|
-
case 'length':
|
|
78
|
-
result = me.length;
|
|
79
|
-
break;
|
|
80
|
-
case 'is_empty':
|
|
81
|
-
result = !!me;
|
|
82
|
-
breakl
|
|
83
|
-
case 'is_blank':
|
|
84
|
-
result = !!me.trim()
|
|
85
|
-
break;
|
|
86
|
-
case 'is_numeric':
|
|
87
|
-
result = !!me && !isNaN(Number(me))
|
|
88
|
-
break;
|
|
89
|
-
case "endswith":
|
|
90
|
-
result = me.endsWith(await args[0].literal())
|
|
91
|
-
break;
|
|
92
|
-
case "startswith":
|
|
93
|
-
result = me.startsWith(await args[0].literal())
|
|
94
|
-
break;
|
|
95
|
-
case 'padend':
|
|
96
|
-
result = me.padEnd(await args[0].literal(), await args[1].literal())
|
|
97
|
-
break;
|
|
98
|
-
case 'padstart':
|
|
99
|
-
result = me.padStart(await args[0].literal(), await args[1].literal())
|
|
100
|
-
break;
|
|
101
|
-
case 'count':
|
|
102
|
-
other = await args[0].literal()
|
|
103
|
-
|
|
104
|
-
let count = 0;
|
|
105
|
-
let position = 0;
|
|
106
|
-
|
|
107
|
-
while ((position = me.indexOf(other, position)) !== -1) {
|
|
108
|
-
count++;
|
|
109
|
-
position += other.length;
|
|
110
|
-
}
|
|
111
|
-
result = count;
|
|
112
|
-
break;
|
|
113
|
-
case 'reverse':
|
|
114
|
-
result = me.split('').reverse().join('');
|
|
115
|
-
break
|
|
116
|
-
case 'repeat':
|
|
117
|
-
result = me.repeat(await args[0].literal())
|
|
39
|
+
title = async()=>{
|
|
40
|
+
let result = "";
|
|
41
|
+
this.value.split(' ').map(m=>{
|
|
42
|
+
result = `${result} ${m[0].toUpperCase()}${m.slice(1).toLowerCase()}`.trim()
|
|
43
|
+
})
|
|
44
|
+
return result
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
upper = ()=>{
|
|
48
|
+
return this.value.toUpperCase()
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
lower = ()=>{
|
|
52
|
+
return this.value.toLowerCase()
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
len = ()=> this.value.length
|
|
56
|
+
|
|
57
|
+
slice = async(start, args)=>{
|
|
58
|
+
let end
|
|
59
|
+
if(args.length > 1){
|
|
60
|
+
end = await args[1].literal()
|
|
61
|
+
}
|
|
62
|
+
return this.value.slice(start, end)
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
concat = (other)=>{
|
|
66
|
+
return `${this.value}${other}`
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
find = (other, args)=>{
|
|
70
|
+
let lst;
|
|
71
|
+
if (args.length>1){
|
|
72
|
+
lst = true;
|
|
73
|
+
}
|
|
74
|
+
return this.value[lst? 'lastIndexOf':'indexOf'](other)
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
includes = (other)=>this.value.includes(other)
|
|
78
|
+
|
|
79
|
+
index = other=>{
|
|
80
|
+
let result;
|
|
81
|
+
if (other < 0){
|
|
82
|
+
result = this.config.value.slice(other)[0]
|
|
83
|
+
}else result = this.config.value[other]
|
|
84
|
+
|
|
85
|
+
return result;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
trim = async (other, args)=>{
|
|
89
|
+
let char;
|
|
90
|
+
if (args.length > 1){
|
|
91
|
+
char = await args[1].literal()
|
|
92
|
+
}else char = ' '
|
|
93
|
+
|
|
94
|
+
let esc_regx_char = (char) => char.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
95
|
+
|
|
96
|
+
let char_regx = esc_regx_char(char), result;
|
|
97
|
+
|
|
98
|
+
switch (other) {
|
|
99
|
+
case 1:
|
|
100
|
+
result = this.value.replace(new RegExp(`^${char_regx}+`), '');
|
|
118
101
|
break
|
|
119
|
-
case
|
|
120
|
-
|
|
121
|
-
su = await args[0].literal(), rpl = await args[1].literal()
|
|
122
|
-
result = me.replace(su, rpl)
|
|
123
|
-
if (gl){
|
|
124
|
-
while(result.includes(su)) result = result.replace(su, rpl)
|
|
125
|
-
}
|
|
102
|
+
case 2:
|
|
103
|
+
result = this.value.replace(new RegExp(`${char_regx}+$`), '');
|
|
126
104
|
break
|
|
127
|
-
case
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
105
|
+
case 0:
|
|
106
|
+
default:
|
|
107
|
+
result = this.value.replace(new RegExp(`^${char_regx}+|${char_regx}+$`, 'g'), '');
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
return result
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
is_empty = ()=>{
|
|
114
|
+
return !!!this.value
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
is_blank = ()=>{
|
|
118
|
+
return !!!this.value.trim()
|
|
119
|
+
}
|
|
131
120
|
|
|
121
|
+
is_numeric = ()=>{
|
|
122
|
+
return !!this.value && !isNaN(Number(this.value))
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
endswith = other=>{
|
|
126
|
+
return this.value.endsWith(other)
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
startswith = other=>{
|
|
130
|
+
return this.value.startsWith(other)
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
padend = async (other, args)=>{
|
|
134
|
+
let char = await args[1].literal()
|
|
135
|
+
|
|
136
|
+
return this.value.padEnd(other, char)
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
padstart = async (other, args)=>{
|
|
140
|
+
let char = await args[1].literal()
|
|
141
|
+
|
|
142
|
+
return this.value.padStart(other, char)
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
count = (other)=>{
|
|
146
|
+
let count = 0;
|
|
147
|
+
let position = 0, result;
|
|
148
|
+
|
|
149
|
+
while ((position = this.value.indexOf(other, position)) !== -1) {
|
|
150
|
+
count++;
|
|
151
|
+
position += other.length;
|
|
132
152
|
}
|
|
153
|
+
result = count;
|
|
133
154
|
|
|
134
|
-
return result
|
|
155
|
+
return result
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
reverse = ()=>{
|
|
159
|
+
return this.value.split('').reverse().join('')
|
|
135
160
|
}
|
|
161
|
+
|
|
162
|
+
repeat = (count)=>{
|
|
163
|
+
return this.value.repeat(count)
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
replace = async(search_term, args)=>{
|
|
167
|
+
let globally = args[2], replacement = args[1] && await args[1].literal(), result;
|
|
168
|
+
|
|
169
|
+
result = this.value.replace(search_term, replacement)
|
|
170
|
+
if (globally){
|
|
171
|
+
while(result.includes(search_term)) result = result.replace(search_term, replacement)
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
return result
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
charcode = async(other)=>{
|
|
178
|
+
let code = other || "ascii", result;
|
|
179
|
+
let me = await this.literal()
|
|
180
|
+
if (code === "ascii") {
|
|
181
|
+
result = me.split("").map((char) => char.charCodeAt(0));
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
console.log(result, 'uh')
|
|
185
|
+
return result
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
split = async(other)=>{
|
|
189
|
+
let char = other || ''
|
|
190
|
+
let val = await this.literal();
|
|
191
|
+
|
|
192
|
+
let res = val.split(char)
|
|
193
|
+
console.log(res)
|
|
194
|
+
|
|
195
|
+
return res;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
literal = async()=>{
|
|
199
|
+
return this.config.value
|
|
200
|
+
}
|
|
201
|
+
|
|
136
202
|
}
|
|
137
203
|
|
|
138
204
|
export default Str;
|